From 0143881732e348d0f1c8aba7fb9544f9be32d185 Mon Sep 17 00:00:00 2001 From: blkmutt Date: Sat, 12 Apr 2014 18:49:18 -0400 Subject: [PATCH] Created 'other' option on payments page, showed and hid dropdown, accordingly. --- app/controllers/AccountController.php | 20 +++++++--- app/views/accounts/payments.blade.php | 56 +++++++++++++-------------- 2 files changed, 42 insertions(+), 34 deletions(-) diff --git a/app/controllers/AccountController.php b/app/controllers/AccountController.php index 25a9ca835968..f7b61df9bc98 100755 --- a/app/controllers/AccountController.php +++ b/app/controllers/AccountController.php @@ -229,16 +229,21 @@ class AccountController extends \BaseController { foreach($recommendedGateways as $recommendedGateway) { - $newRow = count($recommendedGatewayArray) + 1 == round(count($recommendedGateways) / 2); - $arrayItem = array( 'value' => $recommendedGateway->id, + 'other' => 'false', 'data-imageUrl' => $recommendedGateway->getLogoUrl(), - 'data-siteUrl' => $recommendedGateway->site_url, - 'data-newRow' => $newRow + 'data-siteUrl' => $recommendedGateway->site_url ); $recommendedGatewayArray[$recommendedGateway->name] = $arrayItem; } + $otherItem = array( + 'value' => 1000000, + 'other' => 'true', + 'data-imageUrl' => '', + 'data-siteUrl' => '' + ); + $recommendedGatewayArray['other'] = $otherItem; $data = [ 'account' => $account, @@ -247,6 +252,10 @@ class AccountController extends \BaseController { 'gateways' => Gateway::remember(DEFAULT_QUERY_CACHE) ->orderBy('name') ->get(), + 'dropdownGateways' => Gateway::remember(DEFAULT_QUERY_CACHE) + ->where('recommended', '=', '0') + ->orderBy('name') + ->get(), 'recommendedGateways' => $recommendedGatewayArray, ]; @@ -580,8 +589,9 @@ class AccountController extends \BaseController { private function savePayments() { $rules = array(); + $recommendedId = Input::get('recommendedGateway_id'); - if ($gatewayId = Input::get('gateway_id')) + if ($gatewayId = $recommendedId == 1000000 ? Input::get('gateway_id') : $recommendedId) { $gateway = Gateway::findOrFail($gatewayId); diff --git a/app/views/accounts/payments.blade.php b/app/views/accounts/payments.blade.php index 53ab0d38f3c5..15bc39fbb815 100755 --- a/app/views/accounts/payments.blade.php +++ b/app/views/accounts/payments.blade.php @@ -12,16 +12,10 @@ {{ Former::legend('Payment Gateway') }} {{Former::label('Lorem Ipsum goes here.')}} - -
- {{ Former::radios('recommendedGateway_id') - ->label('Recommended Gateways') - ->radios($recommendedGateways) - ->class('recommended-gateway')}} -
@if ($accountGateway) {{ Former::populateField('gateway_id', $accountGateway->gateway_id) }} + {{ Former::populateField('recommendedGateway_id', $accountGateway->gateway_id) }} @foreach ($accountGateway->fields as $field => $junk) @if (in_array($field, ['solutionType', 'landingPage', 'headerImageUrl', 'brandName'])) {{-- do nothing --}} @@ -30,10 +24,17 @@ @endif @endforeach @endif + +
+ {{ Former::radios('recommendedGateway_id') + ->label('Recommended Gateways') + ->radios($recommendedGateways) + ->class('recommended-gateway')}} +
{{ Former::select('gateway_id')->label('PayPal & Other Gateways')->addOption('', '') ->dataClass('gateway-dropdown') - ->fromQuery($gateways, 'name', 'id') + ->fromQuery($dropdownGateways, 'name', 'id') ->onchange('setFieldsShown()'); }} @foreach ($gateways as $gateway) @@ -63,16 +64,18 @@