From 943eacdf7576695f918295221063cb55fb761f32 Mon Sep 17 00:00:00 2001 From: Vincent Augagneur Date: Wed, 3 Jul 2013 16:10:23 +0200 Subject: [PATCH] //carrier wizard first step --- .../carrier_wizard/helpers/view/view.tpl | 69 +++------ classes/controller/AdminController.php | 2 +- .../admin/AdminCarrierWizardController.php | 133 ++++++++++++++++++ .../smartWizard/jquery.smartWizard.css | 2 +- js/jquery/plugins/smartWizard/loader.gif | Bin 0 -> 4782 bytes 5 files changed, 158 insertions(+), 48 deletions(-) create mode 100644 js/jquery/plugins/smartWizard/loader.gif diff --git a/admin-dev/themes/default/template/controllers/carrier_wizard/helpers/view/view.tpl b/admin-dev/themes/default/template/controllers/carrier_wizard/helpers/view/view.tpl index da6ea6abc..38a2dd573 100644 --- a/admin-dev/themes/default/template/controllers/carrier_wizard/helpers/view/view.tpl +++ b/admin-dev/themes/default/template/controllers/carrier_wizard/helpers/view/view.tpl @@ -24,57 +24,34 @@ *} {extends file="helpers/view/view.tpl"} - {block name="override_tpl"} - -
- -
-

Step 1 Content

- -
-
-

Step 2 Content

- -
-
-

Step 3 Title

- -
-
-

Step 4 Title

- -
+ + {foreach from=$wizard_contents.contents key=step_nbr item=content} +
+ {$content} +
+ {/foreach}
{/block} diff --git a/classes/controller/AdminController.php b/classes/controller/AdminController.php index 597e75371..a8a33ca7a 100644 --- a/classes/controller/AdminController.php +++ b/classes/controller/AdminController.php @@ -2290,7 +2290,7 @@ class AdminControllerCore extends Controller * @return array */ public function getFieldsValue($obj) - { + { foreach ($this->fields_form as $fieldset) if (isset($fieldset['form']['input'])) foreach ($fieldset['form']['input'] as $input) diff --git a/controllers/admin/AdminCarrierWizardController.php b/controllers/admin/AdminCarrierWizardController.php index 40fff6e86..7de2276a1 100644 --- a/controllers/admin/AdminCarrierWizardController.php +++ b/controllers/admin/AdminCarrierWizardController.php @@ -38,9 +38,142 @@ class AdminCarrierWizardControllerCore extends AdminController $this->addJqueryPlugin('smartWizard'); } + public function initWizard() + { + $this->wizard_steps = array( + 'name' => 'carrier_wizard', + 'steps' => array( + array( + 'title' => $this->l('General'), + 'desc' => $this->l('General'), + ), + array( + 'title' => $this->l('Where and how much ?'), + 'desc' => $this->l('Where and how much ?'), + ), + array( + 'title' => $this->l('What and to who ?'), + 'desc' => $this->l('What and to who ?'), + ), + array( + 'title' => $this->l('Resume'), + 'desc' => $this->l('Resume'), + ), + + )); + + /* $this->wizard_steps */ + + + + if (Shop::isFeatureActive()) + { + $multistore_step = array( + array( + 'title' => $this->l('MultiStore'), + 'desc' => $this->l('MultiStore'), + ) + ); + array_splice($this->wizard_steps['steps'], 1, 0, $multistore_step); + } + } + public function renderView() { + $this->initWizard(); + + + $this->tpl_view_vars = array( + 'wizard_steps' => $this->wizard_steps, + 'wizard_contents' => array( + 'contents' => array( + 0 => $this->renderStepOne(), + )), + 'labels' => array('next' => $this->l('Next'), 'previous' => $this->l('Previous'), 'finish' => $this->l('Finish')) + ); + return parent::renderView(); } + + public function renderStepOne() + { + $fields_form = array( + 'form' => array( + 'legend' => array( + 'title' => $this->l('Carriers:'), + 'image' => '../img/admin/delivery.gif' + ), + 'input' => array( + array( + 'type' => 'text', + 'label' => $this->l('Company:'), + 'name' => 'name', + 'size' => 25, + 'required' => true, + 'hint' => sprintf($this->l('Allowed characters: letters, spaces and %s'), '().-'), + 'desc' => array( + $this->l('Carrier name displayed during checkout'), + $this->l('For in-store pickup, enter 0 to replace the carrier name with your shop name.') + ) + ), + array( + 'type' => 'file', + 'label' => $this->l('Logo:'), + 'name' => 'logo', + 'desc' => $this->l('Upload a logo from your computer.').' (.gif, .jpg, .jpeg '.$this->l('or').' .png)' + ), + array( + 'type' => 'text', + 'label' => $this->l('Transit time:'), + 'name' => 'delay', + 'lang' => true, + 'required' => true, + 'size' => 41, + 'maxlength' => 128, + 'desc' => $this->l('Estimated delivery time will be displayed during checkout.') + ), + array( + 'type' => 'text', + 'label' => $this->l('Speed Grade:'), + 'name' => 'grade', + 'required' => false, + 'size' => 1, + 'desc' => $this->l('Enter "0" for a longest shipping delay, or "9" for the shortest shipping delay.') + ), + array( + 'type' => 'text', + 'label' => $this->l('URL:'), + 'name' => 'url', + 'size' => 40, + 'desc' => $this->l('Delivery tracking URL: Type \'@\' where the tracking number should appear. It will then be automatically replaced by the tracking number.') + ), + )), + ); + + $helper = new HelperForm(); + $carrier = new Carrier(1); + + $helper->default_form_language = 1; + $helper->allow_employee_form_lang = 1; + $this->fields_form = array(); + $helper->tpl_vars = array( + 'fields_value' => $this->getStep1FieldsValues($carrier), + 'languages' => $this->getLanguages(), + 'id_language' => 1 + ); + return $helper->generateForm(array('form' => $fields_form)); + } + + public function getStep1FieldsValues($carrier) + { + return array( + 'name' => $this->getFieldsValue($carrier, 'name'), + 'logo' => '', + 'delay' => $this->getFieldsValue($carrier, 'delay'), + 'grade' => $this->getFieldsValue($carrier, 'grade'), + 'url' => $this->getFieldsValue($carrier, 'url'), + ); + + } } \ No newline at end of file diff --git a/js/jquery/plugins/smartWizard/jquery.smartWizard.css b/js/jquery/plugins/smartWizard/jquery.smartWizard.css index 8c6e844a1..edff8408f 100755 --- a/js/jquery/plugins/smartWizard/jquery.smartWizard.css +++ b/js/jquery/plugins/smartWizard/jquery.smartWizard.css @@ -261,7 +261,7 @@ border: 1px solid #FFD700; font: bold 13px Verdana, Arial, Helvetica, sans-serif; color:#5A5655; - background: #FFF url(../images/loader.gif) no-repeat 5px; + background: #FFF url(loader.gif) no-repeat 5px; -moz-border-radius : 5px; -webkit-border-radius: 5px; z-index:998; diff --git a/js/jquery/plugins/smartWizard/loader.gif b/js/jquery/plugins/smartWizard/loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..7e717cdf9a61b88ba7b4d0777d513a3409b29117 GIT binary patch literal 4782 zcmZ|TdsI_bz6bD~lLz4>ArD^R0BI6JNCHG4iAFqVp5!5>AtaC@YCu4WXenCDFt#h4 zgpkmXLJAf-;2@%<$as-jhk85S2vpIsy3kr{dmTq9_S)8QsMpo8UA@yAXLWV%AJ_fo zUgxZ}&u9P6cdy?zn2MF_tJ6Rl_#S|tfBqQ&u)4Z>>(;HAnHdbjZr{E=GBV=#`)g}! zA3S)lxVU)v^5vD46_rZ$^Yiod_4P`na$sQK{{8!njg8l@ zUmqPE-MDe1PN!Q~Sa7*qHkC--+uerIor>E!Rk3U{sUM?vqX=-Zv=9_PZhK7Q{ z;MuchTUuIv`st_R$B*;*{759?^?JYh>Z?#FG&?(c`0(MbuC6m@&h+*52?PS6Q26lS z!*Dn}IXO8#K3-5zfFQ`k#KZ?5d~oyT&3pImjg5_6y?XW0qetI=|GnGomP(~87K=b2 zL_f2&wRL)Wn$2dnwY6QiaN&zDzIgoj@ws#7u3fu!OsOH37lLW?<5x^ zz`$`oB9gqrewwQ~W*VsYCg@8n+d?|FhgzLPcA5+Db(RT_^sSCHO!LNIJYVRAiRqXLg^Zm= z&oL8sz|u~~*G3~6SX;>?ccaks?)^HLX@F1j+D268sU|ufVMR0@RB>*cv1Nvgr?&y> zO6%28A}meal_Lp{!aRXfL>2SiF-HVk`upqxX)mQXG}WYD9lb)OISB&EsnM@V#|mlO zPp1}_5>o`*({RllIQxEGTn*cOw+qrz%|pb9N97koC7~+jNc(xL-H``|y%_`&v3#<% zYRVNkIm|l=tk$C!3h-3H%6>0y5mKYbw|LcubM+=!1Kg6|fz9G}zf3EfcDyv|KDjd$ zCj0^nJq`Ft9SgEU0hYoW+vwF0!We5850gEgrN@#>wL<_+sqAN^ryIbUyxr^xP*fR< zCM4}Hqcv@a4dH_rrLti?LYC`9dkU2vJjch2m%EP1`A)BpJYZ)uS)T1Ij?cBZF8QRy zdW&Umz*Uzkmj(n6-fPzB=lhGL7UyO=Q47aU{3CI>^vjDx*1GLRGvD2LQNT+5Y2j22 z5u=5BTC09=TNC3ANoo7-nWnIW#Y`7}O4eF*LZ^4&;k!NV6n&3?&w?&mIRRUa1p2fG zmq$3x2JT~CNJAfkRM?RP>ah+#TeUf#geTfd{Hu9K)LNFBjuy_^GJJr@K}F-ExXqp_ zDLOv_sUjE=0*gx#XTO^#djma389ASLI^5+?6{w*jq#gU1eA{yhe*gak#yefXKnuBm~VQENCmpM0BKsd}BMcf0#3 zvDCtcOU+4c@E`2d*j1Ho37_L6Wk>!9&%LkKjWcYkV z%c9Jhm{35c@UAP6dRz%%Ovoo-u#FJ}Yq*qQ;7DFq2Jm%t6+p{Oj5-st<*+kelnEtP z7KLbH2PT%U+hk9c=(avr`5rJ*v_7XRCsPcplFtt(3jmV6YxmYp15c@>z>7XQIX&(G zIbbJyryg>dZ?1cZuh7g!bVpw$bxff<#KC@W(rXkGpjww(3*&-x%px zE?HXR?IVOl9H?jCyVn~7NR74!O6E>uJ2<#TF)%)=QnNVj4HEx%nJGypP4$baWh{pE z#}if7D^{%W+ZPh)

1{L{2FTP3wkmUW`HJ!SAg(4HZ=`*h1Tgm*! zFBHwM_QW#Z%xR1$&HVFrz988q*Ng&>(qQ+M@N8BqOTtRZagAK=?NU^KGtvuDRAHP! zSJ3cz!`xeO&)?+E6pI3Ycs6Ztm3u^eG)CB?Y&;(+g>#U_%xPR_Fla(X-io|Th6dA{ z3(_Pl#LYI4^!{`qfZPP~3s$T(UjSmy#poZF-#L$Wv$8BTWLsXQ?xGfcxbensU-zeF z?K^;5IPooRM}5rDz>6aBrQmB)!m8+T^5qEuO#UvjFC)C7Hujyfj2$@hSJf|>OnM43 z%8nveP(uO8?p0`|9u5-5jO9bXK~O@NqJT7vamsZ7R`O`Tu&xL_0T6`(f_PS0bQd%s zHcUVKCk{IyL9bbtjmJz*iciMLw8NmH?6k+8x)IVjGCDbMX_TyM^{ zbw+%!=tl@F$c$qNz3wK%A{=M(z()p z(j(R}M#0h2eu1N4J<`0=)n4VPa*1Y78DY~VYo9p7_mQGIeb>SLkBCHqm>4%8T3N>F zOk&c2@f5X}QrF$;S1yZU=>in_LG@+5mOo}p;hCp-?T2#YZ7g#*Xb@(u3&$;gw{u=9 z&7E$_x9h)k7g@?5kKGPyF_@C}J+3vf`CFdYGBm}7vR;RAyV6FMh`|3w7NCMFckq#f zn1jeJR>sOvdY^+b#(>%l?{Y;u*zuz{&4E#VMbo#!U#ZDYp{AozY8opP zFp|6o#pDs{!WbRFdstK$BWZ=h7#^VkdL~s5#QBQggxHC|bP82QFH=xLCX*C%IGs9^ zv*K)d{z>3~g_pcWnOC-rl1F{xJ8?IK$2+NPX|KK| zpdVuuIUlRSu@W89lRAI2Mvn_?{7!X7XOA80aZZY2V<4nRdT_9GK|g2F*Dv1d_xn>1 z1rnD0*Y4>#S-Hsn3@m9DHfy&IiMDt?>VfiXl_fK-o~7ih-<+l5n&&7MHN3qw_P_Aw z38_9bFH+~G4aJLX_7&&q-4ZXu)0MWqt)U|>-Id_|`oEXYlXG`EaLP}E0w#yf|ECG-JDOW~@EFj)$a^NSYTdG0e`b&N*Yhv-Da_I*6%E@% z0lL^rLQEd9FpNoM{g@pI0vU%kjIs6oQObUpLO~}0q}Lni2*L)L6hnyakRJYn%tRBS zBr4^dXz!t4@H!wA9fZU;uzzC#6H->b;xnN}6ms}YPK6>rGw{WOZbN=P5}rUC=I1Wgvd+m5Hqx{h7!O5Jn_;x75N9AbcAYpkNh6Ku?x z;WBC#@Ey;?6{_Z?tGA(8lGb|K#q+az+XF#mb41gANag|yqIZ{*+{_m~D484~<{T=h zqmD0^zD=Bt$>m2Ynuq^ObcOTrI(&D%nnhL$6OJz4*P*SqZsm#?zoZBJ|6BV^fncXm z)*X=VfpP#1mJ)^@ruvUNi3?NbK{E^%Wkn>D$Jx%3kY^kv)!uAZyai=nlZ{5|)LN4$Az={VzY z{@9&h)uXtg8?$+(EI1}5{Yp)>&Z0GFydq{VqoXh`O&7uZog_%9u_`6^$enSC(;tdd z-X2I)#S!#IAegAF*fB|E^o^Bxsp40g2MhG`T?oc;Rv zxfuPQYl9J7gwUP1Z++27#@$c4nN-3yX6YO8zO-r3G~jae_^ywW`>h4**YO0%L5ktm z7@<7HoE|lIK-~e_c8A9V^<%I1Vy2hV2O*{a(Z#_6gIg%2IkWF~}9mHV@3x3Z{b_v}|CP_b*LQU%HQQdWhQ}=zN zY<+`k!_z4`vr#<`_llJw-EygbC@i+3d2QTwUIu>qv}(M=Zw|7ZtZhf))gKWg{;(@h zno%74lDA|g!2Ph35}Pe|>svm&{6ThEwXZL4o;&YWud6)G#pW(1NUY7S?taX#*H&CU z9l0|a1Bt-oZMJRdiZ52au+6CkDmaaYjI?o!FUd2=$H@rz3YJilgOID8%LjNvQ{ve$ YJ_r2e?1`D{TYj=~!G