start integration default template
This commit is contained in:
3
templates/default_save/404.html
Normal file
3
templates/default_save/404.html
Normal file
@@ -0,0 +1,3 @@
|
||||
<h1>PAGE NOT FOUND</h1>
|
||||
|
||||
<a href="{navigate to="index"}">Back Home</a>
|
||||
99
templates/default_save/address.html
Normal file
99
templates/default_save/address.html
Normal file
@@ -0,0 +1,99 @@
|
||||
{check_auth context="front" roles="CUSTOMER" login_tpl="login"}
|
||||
{include file="includes/header.html"}
|
||||
{$page_title="{intl l='My Account'}"}
|
||||
|
||||
|
||||
{form name="thelia.address.create"}
|
||||
{if $form_error}<div class="alert alert-block alert-error">{$form_error_message}</div>{/if}
|
||||
{* We use {navigate to="index"} as form action to avoid mixing post and get data *}
|
||||
<form action="{url path="/address/create" }" method="post" {form_enctype form=$form}>
|
||||
{form_field form=$form field='success_url'}
|
||||
<input type="hidden" name="{$name}" value="{viewurl view="address_list"}" />
|
||||
{/form_field}
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field="label"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="title"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<select name="{$name}">
|
||||
{loop type="title" name="title1"}
|
||||
<option value="#ID">#LONG</option>
|
||||
{/loop}
|
||||
|
||||
</select>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="firstname"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="lastname"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="address1"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
{form_field form=$form field="zipcode"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="city"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="country"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<select name="{$name}">
|
||||
{loop type="country" name="country1"}
|
||||
<option value="#ID">#TITLE</option>
|
||||
{/loop}
|
||||
|
||||
</select>
|
||||
<br />
|
||||
{/form_field}
|
||||
{form_field form=$form field="phone"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
<input type="submit" value="submit">
|
||||
</form>
|
||||
{/form}
|
||||
|
||||
|
||||
{include file="includes/footer.html"}
|
||||
100
templates/default_save/address_edit.html
Normal file
100
templates/default_save/address_edit.html
Normal file
@@ -0,0 +1,100 @@
|
||||
{check_auth context="front" roles="CUSTOMER" login_tpl="login"}
|
||||
{include file="includes/header.html"}
|
||||
{$page_title="{intl l='My Account'}"}
|
||||
|
||||
|
||||
{form name="thelia.address.update"}
|
||||
{if $form_error}<div class="alert alert-block alert-error">{$form_error_message}</div>{/if}
|
||||
{* We use {navigate to="index"} as form action to avoid mixing post and get data *}
|
||||
<form action="{url path="/address/update" }" method="post" {form_enctype form=$form}>
|
||||
{form_field form=$form field='success_url'}
|
||||
<input type="hidden" name="{$name}" value="{viewurl view="address_list"}" />
|
||||
{/form_field}
|
||||
<input type="hidden" name="address_id" value="5" />
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field="label"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="title"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<select name="{$name}">
|
||||
{loop type="title" name="title1"}
|
||||
<option value="#ID">#LONG</option>
|
||||
{/loop}
|
||||
|
||||
</select>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="firstname"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="lastname"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="address1"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
{form_field form=$form field="zipcode"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="city"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="country"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<select name="{$name}">
|
||||
{loop type="country" name="country1"}
|
||||
<option value="#ID">#TITLE</option>
|
||||
{/loop}
|
||||
|
||||
</select>
|
||||
<br />
|
||||
{/form_field}
|
||||
{form_field form=$form field="phone"}
|
||||
{if $error}{$message}{/if}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<input type="text" name="{$name}" value="{$value}" {$attr}>
|
||||
<br />
|
||||
{/form_field}
|
||||
<input type="submit" value="submit">
|
||||
</form>
|
||||
{/form}
|
||||
|
||||
|
||||
{include file="includes/footer.html"}
|
||||
11
templates/default_save/address_list.html
Normal file
11
templates/default_save/address_list.html
Normal file
@@ -0,0 +1,11 @@
|
||||
{check_auth context="front" roles="CUSTOMER" login_tpl="login"}
|
||||
{include file="includes/header.html"}
|
||||
{$page_title="{intl l='My Account'}"}
|
||||
|
||||
<ul>
|
||||
{loop type="address" name="customer_list" customer="current"}
|
||||
<li>{#LABEL} - {#FIRSTNAME} {#LASTNAME} - <a href="{url path="/address/edit/{#ID}"}">edit</a></li>
|
||||
{/loop}
|
||||
</ul>
|
||||
|
||||
{include file="includes/footer.html"}
|
||||
1109
templates/default_save/assets/bootstrap/css/bootstrap-responsive.css
vendored
Executable file
1109
templates/default_save/assets/bootstrap/css/bootstrap-responsive.css
vendored
Executable file
File diff suppressed because it is too large
Load Diff
9
templates/default_save/assets/bootstrap/css/bootstrap-responsive.min.css
vendored
Executable file
9
templates/default_save/assets/bootstrap/css/bootstrap-responsive.min.css
vendored
Executable file
File diff suppressed because one or more lines are too long
6167
templates/default_save/assets/bootstrap/css/bootstrap.css
vendored
Executable file
6167
templates/default_save/assets/bootstrap/css/bootstrap.css
vendored
Executable file
File diff suppressed because it is too large
Load Diff
9
templates/default_save/assets/bootstrap/css/bootstrap.min.css
vendored
Executable file
9
templates/default_save/assets/bootstrap/css/bootstrap.min.css
vendored
Executable file
File diff suppressed because one or more lines are too long
BIN
templates/default_save/assets/bootstrap/img/glyphicons-halflings-white.png
Executable file
BIN
templates/default_save/assets/bootstrap/img/glyphicons-halflings-white.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 8.6 KiB |
BIN
templates/default_save/assets/bootstrap/img/glyphicons-halflings.png
Executable file
BIN
templates/default_save/assets/bootstrap/img/glyphicons-halflings.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
2280
templates/default_save/assets/bootstrap/js/bootstrap.js
vendored
Executable file
2280
templates/default_save/assets/bootstrap/js/bootstrap.js
vendored
Executable file
File diff suppressed because it is too large
Load Diff
6
templates/default_save/assets/bootstrap/js/bootstrap.min.js
vendored
Executable file
6
templates/default_save/assets/bootstrap/js/bootstrap.min.js
vendored
Executable file
File diff suppressed because one or more lines are too long
BIN
templates/default_save/assets/css/img/bg.jpg
Executable file
BIN
templates/default_save/assets/css/img/bg.jpg
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 26 KiB |
9
templates/default_save/assets/css/style.less
Executable file
9
templates/default_save/assets/css/style.less
Executable file
@@ -0,0 +1,9 @@
|
||||
body {
|
||||
font-size: 12px;
|
||||
font-family: Arial, helvetica, sans serif;
|
||||
background-image: url("../img/test-background.jpg");
|
||||
}
|
||||
|
||||
div {
|
||||
margin: 10px 0;
|
||||
}
|
||||
BIN
templates/default_save/assets/img/logo-thelia-34px.png
Executable file
BIN
templates/default_save/assets/img/logo-thelia-34px.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 5.4 KiB |
BIN
templates/default_save/assets/img/test-background.jpg
Executable file
BIN
templates/default_save/assets/img/test-background.jpg
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 59 KiB |
6
templates/default_save/assets/js/jquery.min.js
vendored
Executable file
6
templates/default_save/assets/js/jquery.min.js
vendored
Executable file
File diff suppressed because one or more lines are too long
50
templates/default_save/cart.html
Executable file
50
templates/default_save/cart.html
Executable file
@@ -0,0 +1,50 @@
|
||||
{include file="includes/header.html"}
|
||||
|
||||
<h1>{intl l='cart'}</h1>
|
||||
<ul>
|
||||
{loop name="cart" type="cart"}
|
||||
<li>Item {$LOOP_COUNT}/{$LOOP_TOTAL} : #ITEM_ID #TITLE - quantity : #QUANTITY</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
|
||||
{form name="thelia.cart.add" }
|
||||
{* We use {navigate to="index"} as form action to avoid mixing post and get data *}
|
||||
<form action="{url path="/cart/add" }" method="post" {form_enctype form=$form}>
|
||||
|
||||
{*
|
||||
The form error status and the form error messages are defined in Customer action,
|
||||
and passed back to the form plugin through the ParserContext.
|
||||
*}
|
||||
|
||||
{if #form_error}<div class="alert alert-error">#form_error_message</div>{/if}
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field="product"}
|
||||
{form_error form=$form field="product"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
<label for="{$label_attr.for}">{intl l="{$label}"}: </label><input id="{$label_attr.for}" type="text" name="{$name}" value="{$value}" {$attr} ><br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field='product_sale_elements_id'}
|
||||
{form_error form=$form field="product_sale_elements_id"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
<label>{intl l="product_sale_elements_id"}: </label><input type="text" name="{$name}" value="{$value}" {$attr}> <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field='quantity'}
|
||||
{form_error form=$form field="quantity"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
<label>{intl l="quantity"}: </label><input type="text" name="{$name}" value="{$value}" {$attr}> <br />
|
||||
{/form_field}
|
||||
|
||||
|
||||
|
||||
<button type="submit">{intl l='Login'}</button>
|
||||
</form>
|
||||
{/form}
|
||||
|
||||
{include file='includes/footer.html'}
|
||||
143
templates/default_save/category.html
Executable file
143
templates/default_save/category.html
Executable file
@@ -0,0 +1,143 @@
|
||||
<h1>Category page</h1>
|
||||
|
||||
<div style="border: solid 8px; margin: 0px; padding: 0px; width: 45%; float: left">
|
||||
|
||||
<h2>CATALOG</h2>
|
||||
|
||||
{loop name="category0" type="category" parent="0" order="manual"}
|
||||
<div style="border: solid 4px blue; padding: 20px; margin: 10px;">
|
||||
<h2>CATEGORY : #TITLE (#LOOP_COUNT / #LOOP_TOTAL)</h2>
|
||||
|
||||
{ifloop rel="prod_ass_cont"}
|
||||
<h5>Associated Content</h5>
|
||||
<ul>
|
||||
{loop name="prod_ass_cont" type="associated_content" category="#ID" order="associated_content"}
|
||||
<li>#TITLE</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
{elseloop rel="prod_ass_cont"}
|
||||
<h5>No associated content</h5>
|
||||
{/elseloop}
|
||||
|
||||
{loop name="product" type="product" category="#ID"}
|
||||
<div style="border: dashed 2px red; padding: 20px; margin: 10px;">
|
||||
<h3><a href="#URL">PRODUCT #ID : #REF (#LOOP_COUNT / #LOOP_TOTAL)</a></h3>
|
||||
<h4>#TITLE</h4>
|
||||
<p>#DESCRIPTION</p>
|
||||
|
||||
{ifloop rel="ft"}
|
||||
<h5>Features</h5>
|
||||
<ul>
|
||||
{assign var=current_product value=#ID}
|
||||
{loop name="ft" type="feature" order="manual" product="#ID"}
|
||||
<li>
|
||||
<strong>#TITLE</strong> :
|
||||
{loop name="ft_v" type="feature_value" product="{$current_product}" feature="#ID"}
|
||||
#TITLE / #PERSONAL_VALUE
|
||||
{/loop}
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
{elseloop rel="ft"}
|
||||
<h5>No feature</h5>
|
||||
{/elseloop}
|
||||
</div>
|
||||
{/loop}
|
||||
{loop name="catgory1" type="category" parent="#ID"}
|
||||
<div style="border: double 4px lightseagreen; padding: 20px; margin: 10px;">
|
||||
<h3>SUBCATEGORY : #TITLE (#LOOP_COUNT / #LOOP_TOTAL)</h3>
|
||||
|
||||
{ifloop rel="prod_ass_cont"}
|
||||
<h5>Associated Content</h5>
|
||||
<ul>
|
||||
{loop name="prod_ass_cont" type="associated_content" category="#ID" order="associated_content"}
|
||||
<li>#TITLE</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
{elseloop rel="prod_ass_cont"}
|
||||
<h5>No associated content</h5>
|
||||
{/elseloop}
|
||||
|
||||
{loop name="product" type="product" category="#ID"}
|
||||
|
||||
<div style="border: solid 1px green; padding: 20px; margin: 10px;">
|
||||
<h3><a href="#URL">PRODUCT #ID : #REF (#LOOP_COUNT / #LOOP_TOTAL)</a></h3>
|
||||
<h4>#TITLE</h4>
|
||||
<p>#DESCRIPTION</p>
|
||||
|
||||
{ifloop rel="ft"}
|
||||
<h5>Features</h5>
|
||||
<ul>
|
||||
{assign var=current_product value=#ID}
|
||||
{loop name="ft" type="feature" order="manual" product="#ID"}
|
||||
<li>
|
||||
<strong>#TITLE</strong> :
|
||||
{loop name="ft_v" type="feature_value" product="{$current_product}" feature="#ID"}
|
||||
#TITLE / #PERSONAL_VALUE
|
||||
{/loop}
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
{elseloop rel="ft"}
|
||||
<h5>No feature</h5>
|
||||
{/elseloop}
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
{/loop}
|
||||
|
||||
</div>
|
||||
|
||||
<div style="border: solid 8px; margin: 0px; padding: 0px; width: 45%; float: left">
|
||||
|
||||
<h2>ALL FEATURES AND THEIR AVAILABILITY</h2>
|
||||
|
||||
<ul>
|
||||
{loop name="ft" type="feature" order="manual"}
|
||||
<li>
|
||||
#TITLE
|
||||
<ul>
|
||||
{loop name="ftav" type="feature_availability" order="manual" feature="#ID"}
|
||||
<li>#TITLE</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
|
||||
<hr />
|
||||
|
||||
<h2>ALL ATTRIBUTES AND THEIR AVAILABILITY</h2>
|
||||
|
||||
<ul>
|
||||
{loop name="attr" type="attribute" order="manual"}
|
||||
<li>
|
||||
#TITLE
|
||||
<ul>
|
||||
{loop name="attrav" type="attribute_availability" order="manual" attribute="#ID"}
|
||||
<li>#TITLE</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
|
||||
<hr />
|
||||
|
||||
<h2>CURRENCIES</h2>
|
||||
|
||||
<ul>
|
||||
{loop name="cur" type="currency"}
|
||||
<li>
|
||||
#NAME (#SYMBOL)
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
165
templates/default_save/connexion.html
Executable file
165
templates/default_save/connexion.html
Executable file
@@ -0,0 +1,165 @@
|
||||
{include file="includes/header.html"}
|
||||
|
||||
{form name="thelia.customer.creation"}
|
||||
{* We use {navigate to="index"} as form action to avoid mixing post and get data *}
|
||||
<form action="{url path="/customer/create" }" method="post" {form_enctype form=$form}>
|
||||
{*
|
||||
The two fields below are not par of the form, they are here to defines
|
||||
the action to process, and the view to render once the form is submited
|
||||
*}
|
||||
|
||||
{*
|
||||
This field is common to all BaseForm instances (thus, this one), and defines
|
||||
the URL the customer is redirected to once the form has been successfully
|
||||
processed
|
||||
*}
|
||||
|
||||
{form_field form=$form field='success_url'}
|
||||
<input type="hidden" name="{$name}" value="{navigate to="return_to"}" /> {* the url the user is redirected to on login success *}
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field='auto_login'}
|
||||
<input type="hidden" name="{$name}" value="1" /> {* the customer will be loogged-in automatically *}
|
||||
{/form_field}
|
||||
|
||||
{*
|
||||
The form error status and the form error messages are defined in Customer action,
|
||||
and passed back to the form plugin through the ParserContext.
|
||||
*}
|
||||
|
||||
{if #form_error}<div class="alert alert-error">#form_error_message</div>{/if}
|
||||
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field="title"}
|
||||
{form_error form=$form field="title"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<select name="{$name}">
|
||||
<option value="1">M.</option>
|
||||
<option value="2">Mme.</option>
|
||||
|
||||
</select>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="firstname"}
|
||||
{form_error form=$form field="firstname"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr} > <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="lastname"}
|
||||
{form_error form=$form field="lastname"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr} > <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="address1"}
|
||||
{form_error form=$form field="address1"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr} > <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="address2"}
|
||||
{form_error form=$form field="address2"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr} > <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="address3"}
|
||||
{form_error form=$form field="address3"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr} > <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="zipcode"}
|
||||
{form_error form=$form field="zipcode"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr} > <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="city"}
|
||||
{form_error form=$form field="city"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr} > <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="country"}
|
||||
{form_error form=$form field="country"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
|
||||
<label> <span>{intl l="{$label}"} : </span></label>
|
||||
<select name="{$name}">
|
||||
<option value="1">France</option>
|
||||
<option value="2">Belgium</option>
|
||||
|
||||
</select>
|
||||
<br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="phone"}
|
||||
{form_error form=$form field="phone"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr}> <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="cellphone"}
|
||||
{form_error form=$form field="cellphone"}
|
||||
{$message}
|
||||
{/form_error}
|
||||
<label> <span>{intl l="{$label}"} : </span></label><input type="text" name="{$name}" value="{$value}" {$attr}> <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="email"}
|
||||
{form_error form=$form field="email"}
|
||||
{#message}
|
||||
{/form_error}
|
||||
<label><span>{intl l="{$label}"}</span></label><input type="email" name="{$name}" value="{$value}" {$attr} ><br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="email_confirm"}
|
||||
{form_error form=$form field="email_confirm"}
|
||||
{#message}
|
||||
{/form_error}
|
||||
<label><span>{intl l="{$label}"}</span></label><input type="email" name="{$name}" {$attr} ><br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="password"}
|
||||
{form_error form=$form field="password"}
|
||||
{#message}
|
||||
{/form_error}
|
||||
<label><span>{intl l="{$label}"}</span></label><input type="password" name="{$name}" {$attr} ><br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field="password_confirm"}
|
||||
{form_error form=$form field="password_confirm"}
|
||||
{#message}
|
||||
{/form_error}
|
||||
<label><span>{intl l="{$label}"}</span></label><input type="password" name="{$name}" {$attr} ><br />
|
||||
{/form_field}
|
||||
|
||||
<input type="submit" value="valider">
|
||||
</form>
|
||||
{/form}
|
||||
|
||||
{include file="includes/footer.html"}
|
||||
125
templates/default_save/customer.html
Executable file
125
templates/default_save/customer.html
Executable file
@@ -0,0 +1,125 @@
|
||||
<h1>CUSTOMER</h1>
|
||||
|
||||
<h2>Information</h2>
|
||||
|
||||
{loop name="customer" type="customer"}
|
||||
|
||||
<table border="1" cellspacing="0" cellpadding="5">
|
||||
<tr>
|
||||
<td>ID</td>
|
||||
<td>#ID</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Réference</td>
|
||||
<td>#REF</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Title</td>
|
||||
<td>
|
||||
{loop name="title" type="title" id="#TITLE"}
|
||||
#LONG (#SHORT)
|
||||
{/loop}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Firstname</td>
|
||||
<td>#FIRSTNAME</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Lastname</td>
|
||||
<td>#LASTNAME</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Email</td>
|
||||
<td>#EMAIL</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Is reseller</td>
|
||||
<td>#RESELLER</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Sponsor</td>
|
||||
<td>#SPONSOR</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Discount</td>
|
||||
<td>#DISCOUNT %</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
{/loop}
|
||||
|
||||
<h2>Addresses</h2>
|
||||
|
||||
{loop name="addresses" type="address"}
|
||||
|
||||
<table border="1" cellspacing="0" cellpadding="5">
|
||||
<tr>
|
||||
<td>ID</td>
|
||||
<td>#ID</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Name</td>
|
||||
<td>#NAME</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Title</td>
|
||||
<td>
|
||||
<ul>
|
||||
{assign var=current_title value=#TITLE}
|
||||
{loop name="title" type="title"}
|
||||
<li {if $current_title==#ID}style="background-color: yellow"{/if}>
|
||||
#LONG (#SHORT)
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Company</td>
|
||||
<td>#COMPANY</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Firstname</td>
|
||||
<td>#FIRSTNAME</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Lastname</td>
|
||||
<td>#LASTNAME</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Address</td>
|
||||
<td>#ADDRESS1<br/>#ADDRESS2<br/>#ADDRESS3</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Zipcode</td>
|
||||
<td>#ZIPCODE</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>City</td>
|
||||
<td>#CITY</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Country</td>
|
||||
<td>
|
||||
<select>
|
||||
{assign var=current_country value=#COUNTRY}
|
||||
{loop name="country" type="country"}
|
||||
<option {if $current_country==#ID}selected="selected"{/if}>
|
||||
#TITLE (#ID - #ISOCODE - #ISOALPHA2 - #ISOALPHA3)
|
||||
</option>
|
||||
{/loop}
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Phone</td>
|
||||
<td>#PHONE</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Cellphone</td>
|
||||
<td>#CELLPHONE</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
{/loop}
|
||||
5
templates/default_save/debug.html
Executable file
5
templates/default_save/debug.html
Executable file
@@ -0,0 +1,5 @@
|
||||
{*loop type="product" name="fsdq"}
|
||||
{format_date date=$CREATE_DATE}
|
||||
{/loop*}
|
||||
|
||||
::{product attr="createdAt" output="time" format='i'};;<br />
|
||||
15
templates/default_save/delivery_list.html
Normal file
15
templates/default_save/delivery_list.html
Normal file
@@ -0,0 +1,15 @@
|
||||
{include file="includes/header.html"}
|
||||
|
||||
<ul>
|
||||
{loop type="delivery" name="delivery.list"}
|
||||
<li>
|
||||
<ul>
|
||||
<li>id : {#ID}</li>
|
||||
<li>prix : {#PRICE}</li>
|
||||
<li>Choisir : <a href="{url path="/delivery/choose/{#ID}"}">Choisir</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
|
||||
{include file="includes/footer.html"}
|
||||
16
templates/default_save/folder.html
Executable file
16
templates/default_save/folder.html
Executable file
@@ -0,0 +1,16 @@
|
||||
{loop name="folder0" type="folder" parent="0" order="alpha_reverse"}
|
||||
<div style="border: solid 4px blue; padding: 20px; margin: 10px;">
|
||||
<h2>FOLDER : #TITLE</h2>
|
||||
{loop name="folder1" type="folder" parent="#ID"}
|
||||
<div style="border: double 4px lightseagreen; padding: 20px; margin: 10px;">
|
||||
<h3>SUBFOLDER : #TITLE (#LOOP_COUNT / #LOOP_TOTAL)</h3>
|
||||
{loop name="content" type="content" folder="#ID"}
|
||||
<div style="border: solid 1px green; padding: 20px; margin: 10px;">
|
||||
<h3>CONTENT : #TITLE</h3>
|
||||
<p>#DESCRIPTION</p>
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
{/loop}
|
||||
0
templates/default_save/i18n/en.php
Executable file
0
templates/default_save/i18n/en.php
Executable file
1
templates/default_save/i18n/fr.php
Executable file
1
templates/default_save/i18n/fr.php
Executable file
@@ -0,0 +1 @@
|
||||
<?php
|
||||
104
templates/default_save/images.html
Executable file
104
templates/default_save/images.html
Executable file
@@ -0,0 +1,104 @@
|
||||
{include file="includes/header.html"}
|
||||
|
||||
|
||||
<div>
|
||||
<h2>Category Images</h2>
|
||||
<ul>
|
||||
{loop type="category" name="jsvdfk"}
|
||||
<li><p>Category id #ID: #TITLE</p>
|
||||
<ul>
|
||||
<li>
|
||||
{loop type="image" name="image_test" category="#ID" width="200" height="100" resize_mode="borders"}
|
||||
<p>Processed file URL: #IMAGE_URL</p>
|
||||
<p>Original file URL: #ORIGINAL_IMAGE_URL</p>
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
|
||||
{loop type="image" name="image_test" category="#ID"}
|
||||
<p>Full size file URL: #IMAGE_URL</p>
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
|
||||
{loop type="image" name="image_test" source="category" source_id="#ID"}
|
||||
<p>source="category" source_id="x" argument style: Processed file URL: #IMAGE_URL</p>
|
||||
{/loop}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<div>
|
||||
<h2>Product Images</h2>
|
||||
<ul>
|
||||
{loop type="product" name="jsvdfk"}
|
||||
<li><p>Product id #ID: #TITLE</p>
|
||||
<ul>
|
||||
<li>
|
||||
{loop type="image" name="image_test" product="#ID" width="200" height="100" resize_mode="borders" effects="gamma:0.7" background_color="#cc8000"}
|
||||
<p>Processed file URL: #IMAGE_URL</p>
|
||||
<p>Original file URL: #ORIGINAL_IMAGE_URL</p>
|
||||
<p>Images:</p>
|
||||
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
{loop type="image" name="image_test" product="#ID" width="200" height="100" resize_mode="crop"}
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
{loop type="image" name="image_test" product="#ID" width="100" height="200" resize_mode="borders" background_color="#cc8000"}
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
{loop type="image" name="image_test" product="#ID" width="100" rotation="-20" background_color="#facabe"}
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
{loop type="image" name="image_test" product="#ID" width="200" height="100" resize_mode="borders" background_color="#facabe" effects="negative"}
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
</p>
|
||||
</li>
|
||||
</ul></li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2>Folder Images</h2>
|
||||
<ul>
|
||||
{loop type="folder" name="jsvdfk"}
|
||||
<li><p>Folder id #ID: #TITLE</p>
|
||||
<ul>
|
||||
<li>
|
||||
{loop type="image" name="image_test" folder="#ID" width="200" height="100" resize_mode="borders"}
|
||||
<p>Processed file URL: #IMAGE_URL</p>
|
||||
<p>Original file URL: #ORIGINAL_IMAGE_URL</p>
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2>Content Images</h2>
|
||||
<ul>
|
||||
{loop type="content" name="jsvdfk"}
|
||||
<li><p>Content id #ID: #TITLE</p>
|
||||
<ul>
|
||||
<li>
|
||||
{loop type="image" name="image_test" content="#ID" width="200" height="100" resize_mode="borders"}
|
||||
<p>Processed file URL: #IMAGE_URL</p>
|
||||
<p>Original file URL: #ORIGINAL_IMAGE_URL</p>
|
||||
<img src="#IMAGE_URL" />
|
||||
{/loop}
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
{include file="includes/footer.html"}
|
||||
12
templates/default_save/included.html
Executable file
12
templates/default_save/included.html
Executable file
@@ -0,0 +1,12 @@
|
||||
{loop name="included0" type="category" parent="0"}
|
||||
<h2>Out before - CATEGORY : #TITLE (#LOOP_COUNT / #LOOP_TOTAL)</h2>
|
||||
{loop name="category1" type="category" parent="#ID"}
|
||||
<h3>Inner - SUBCATEGORY : #TITLE (#LOOP_COUNT / #LOOP_TOTAL)</h3>
|
||||
{/loop}
|
||||
|
||||
{loop name="category2" type="category" parent="#ID"}
|
||||
<h3>Inner 2 - SUBCATEGORY : #TITLE (#LOOP_COUNT / #LOOP_TOTAL)</h3>
|
||||
{/loop}
|
||||
<h2>Out after - CATEGORY : #TITLE (#LOOP_COUNT / #LOOP_TOTAL)</h2>
|
||||
<hr />
|
||||
{/loop}
|
||||
18
templates/default_save/includes/footer.html
Executable file
18
templates/default_save/includes/footer.html
Executable file
@@ -0,0 +1,18 @@
|
||||
{* Include required JS files *}
|
||||
|
||||
{javascripts file='../assets/js/*'}
|
||||
<script src="{$asset_url}"></script>
|
||||
{/javascripts}
|
||||
|
||||
<script>
|
||||
$(function() {
|
||||
$('#jquery_block').html("Jquery is now loaded.").hover(function() {
|
||||
$(this).css('font-weight', 'bold');
|
||||
}, function() {
|
||||
$(this).css('font-weight', 'normal');
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{debugbar_render}
|
||||
</body>
|
||||
</html>
|
||||
26
templates/default_save/includes/header.html
Executable file
26
templates/default_save/includes/header.html
Executable file
@@ -0,0 +1,26 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>{$page_title|default:{intl l="Thelia II"}}</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
|
||||
{stylesheets file='../assets/css/*' filters='less,cssembed'}
|
||||
<link rel="stylesheet" href="{$asset_url}">
|
||||
{/stylesheets}
|
||||
{debugbar_renderHead}
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
{loop type="auth" name="customer_info_block" roles="CUSTOMER" context="front"}
|
||||
<p>Your are logged in as {customer attr="firstname"} {customer attr="lastname"} ! <a href="{url path='/customer/logout'}">Logout</a></p>
|
||||
{/loop}
|
||||
|
||||
{loop type="auth" name="admin_info_block" roles="ADMIN" context="admin"}
|
||||
<p>You are logged as administrator {admin attr="firstname"} {admin attr="lastname"}</p>
|
||||
{/loop}
|
||||
|
||||
{elseloop rel="customer_info_block"}
|
||||
You are not logged in. <a href="{viewurl view='login'}">Login now</a> or <a href="{viewurl view='connexion'}">create your account</a>
|
||||
{/elseloop}
|
||||
</div>
|
||||
<hr />
|
||||
151
templates/default_save/index.html
Executable file
151
templates/default_save/index.html
Executable file
@@ -0,0 +1,151 @@
|
||||
{include file="includes/header.html"}
|
||||
<div>
|
||||
|
||||
{loop type="auth" name="auth_test" context="front" roles="CUSTOMER"}
|
||||
|
||||
<p>Customer is authentified :-)</p>
|
||||
{/loop}
|
||||
|
||||
{elseloop rel="auth_test"}
|
||||
<p>Customer is not authentified :-(</p>
|
||||
{/elseloop}
|
||||
|
||||
An image from asset directory :
|
||||
{images file='assets/img/logo-thelia-34px.png'}<img src="{$asset_url}" alt="{intl l='Thelia, solution e-commerce libre'}" />{/images}
|
||||
</div>
|
||||
|
||||
<div>
|
||||
{intl l='An internationalized string'}
|
||||
</div>
|
||||
|
||||
|
||||
<div>
|
||||
jQuery data: <span id="jquery_block"></span>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p>Category loop example</p>
|
||||
<ul>
|
||||
{loop type="category" name="catloop1"}
|
||||
<li>{$LOOP_COUNT}/{$LOOP_TOTAL} : {$ID} {$TITLE}, children: {$NB_CHILD}
|
||||
{ifloop rel="inner1"}
|
||||
<ul>
|
||||
{loop type="category" name="inner1" parent="{$ID}"}
|
||||
<li>Sub cat {$ID} (parent is {$PARENT}): {$TITLE}</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div>
|
||||
<p>Conditional example #1</p>
|
||||
|
||||
{ifloop rel="catloop2"}
|
||||
Hey ! Loop catloop2 is not empty:
|
||||
<ul>
|
||||
{loop type="category" name="catloop2" parent="12"}
|
||||
<li>{$LOOP_COUNT}/{$LOOP_TOTAL} : {$ID} {$TITLE}</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
|
||||
{elseloop rel="catloop2"}
|
||||
<p>Loop catloop2 is empty</p>
|
||||
{/elseloop}
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p>Conditional example #2</p>
|
||||
|
||||
{ifloop rel="catloop3"}
|
||||
Loop catloop3 is not empty:
|
||||
<ul>
|
||||
{loop type="category" name="catloop3" parent="0"}
|
||||
<li>{$LOOP_COUNT}/{$LOOP_TOTAL} : {$ID} {$TITLE}</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
|
||||
{elseloop rel="catloop3"}
|
||||
<p>Loop catloop3 is empty</p>
|
||||
{/elseloop}
|
||||
|
||||
{elseloop rel="catloop2"}
|
||||
<p>... but catloop2 is still empty :-)</p>
|
||||
{/elseloop}
|
||||
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p>Traditional for loop</p>
|
||||
{for $index=5 to 12 step 1}
|
||||
Compteur = {$index}<br />
|
||||
{/for}
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div>
|
||||
<p>Some pagination</p>
|
||||
<p>PAGE 1</p>
|
||||
<ul>
|
||||
{loop type="category" name="catloopwithpagination1" limit="2" page="1"}
|
||||
<li>{$LOOP_COUNT}/{$LOOP_TOTAL} : {$ID} {$TITLE}</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
<p>PAGE 2</p>
|
||||
<ul>
|
||||
{loop type="category" name="catloopwithpagination2" limit="2" page="2"}
|
||||
<li>{$LOOP_COUNT}/{$LOOP_TOTAL} : {$ID} {$TITLE}</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
<p>PAGE 1000</p>
|
||||
<ul>
|
||||
|
||||
{loop type="category" name="catloopwithpagination1000" limit="2" page="1000"}
|
||||
<li>{$LOOP_COUNT}/{$LOOP_TOTAL} : {$ID} {$TITLE}</li>
|
||||
{/loop}
|
||||
|
||||
{elseloop rel="catloopwithpagination1000"}
|
||||
NO RESULTS
|
||||
{/elseloop}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p>Some pagination with page choice</p>
|
||||
{assign var=current_page value=2}
|
||||
<p>PAGE {$current_page} :</p>
|
||||
<ul>
|
||||
{loop type="category" name="catloopwithpaginationchoice" limit="2" page="{$current_page}"}
|
||||
<li>{$LOOP_COUNT}/{$LOOP_TOTAL} : {$ID} {$TITLE}</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
<p>page choice</p>
|
||||
{pageloop rel="catloopwithpaginationchoice"}
|
||||
{if ${PAGE} != {$current_page}}
|
||||
{if {$PAGE} > {$current_page}-10 AND {$PAGE} < {$current_page}+10}
|
||||
{$PAGE}
|
||||
{/if}
|
||||
{if {$PAGE} == {$current_page}-10 OR {$PAGE} == {$current_page}+10}
|
||||
...
|
||||
{/if}
|
||||
{if ({$PAGE} < {$current_page}-10 OR {$PAGE} > {$current_page}+10) AND ({$PAGE}%10 == 0 OR ${PAGE} == {$LAST} OR ${PAGE} == 1)}
|
||||
{$PAGE}
|
||||
{/if}
|
||||
{else}
|
||||
{ {$PAGE} }
|
||||
{/if}
|
||||
{if {$PAGE} != {$LAST}}
|
||||
-
|
||||
{/if}
|
||||
{/pageloop}
|
||||
</div>
|
||||
|
||||
{include file="includes/footer.html"}
|
||||
49
templates/default_save/login.html
Executable file
49
templates/default_save/login.html
Executable file
@@ -0,0 +1,49 @@
|
||||
{include file="includes/header.html"}
|
||||
|
||||
<h1>{intl l='Please login'}</h1>
|
||||
|
||||
{form name="thelia.customer.login" }
|
||||
|
||||
<form action="{url path='/customer/login'}" method="post" {form_enctype form=$form}>
|
||||
{*
|
||||
The field below are not par of the Login form, it defines view to render if the form cannot be validated
|
||||
*}
|
||||
<input type="hidden" name="view" value="login" /> {* the view to return to if the form cannot be validated *}
|
||||
|
||||
{*
|
||||
This field is common to all BaseForm instances (thus, this one), and defines
|
||||
the URL the customer is redirected to once the form has been successfully
|
||||
processed
|
||||
*}
|
||||
|
||||
{form_field form=$form field='success_url'}
|
||||
<input type="hidden" name="{$name}" value="{navigate to="return_to"}" /> {* the url the user is redirected to on login success *}
|
||||
{/form_field}
|
||||
|
||||
{*
|
||||
The form error status and the form error messages are defined in Customer action,
|
||||
and passed back to the form plugin through the ParserContext.
|
||||
*}
|
||||
|
||||
{if #form_error}<div class="alert alert-error">#form_error_message</div>{/if}
|
||||
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{form_field form=$form field="email"}
|
||||
{if #error}{#message}{/if}
|
||||
<label>{intl l="Your e-mail address"}: </label><input type="email" name="{$name}" {$attr} value="{$value}"><br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field='password'}
|
||||
<label>{intl l="Your password"}: </label><input type="password" name="{$name}" {$attr} value="{$value}"> <br />
|
||||
{/form_field}
|
||||
|
||||
{form_field form=$form field='remember_me'}
|
||||
<label class="checkbox"> <input type="checkbox" name="{$name}" value="{$value}" {$attr} {if $options.checked}checked="checked"{/if}/> {intl l='Remember me'}</label>
|
||||
{/form_field}
|
||||
|
||||
<button type="submit">{intl l='Login'}</button>
|
||||
</form>
|
||||
{/form}
|
||||
|
||||
{include file='includes/footer.html'}
|
||||
6
templates/default_save/myaccount.html
Executable file
6
templates/default_save/myaccount.html
Executable file
@@ -0,0 +1,6 @@
|
||||
{check_auth context="front" roles="CUSTOMER" login_tpl="login"}
|
||||
|
||||
{$page_title="{intl l='My Account'}"}
|
||||
|
||||
{include file="includes/header.html"}
|
||||
{include file="includes/footer.html"}
|
||||
94
templates/default_save/pagination.html
Executable file
94
templates/default_save/pagination.html
Executable file
@@ -0,0 +1,94 @@
|
||||
{assign var=category_current_page value={$smarty.get.category_page|default:1}}
|
||||
|
||||
<h1>Pagination</h1>
|
||||
|
||||
<h2>Categories</h2>
|
||||
|
||||
<div style="border: solid 1px; padding: 20px;">
|
||||
|
||||
{loop name="cat" type="category" page="{$category_current_page}" limit="2"}
|
||||
<h2>#LOOP_COUNT - #TITLE</h2>
|
||||
<h3>Products :</h3>
|
||||
|
||||
<div style="border: solid 1px; padding: 20px;">
|
||||
|
||||
{assign var=this_product_getter value="product_`$ID`_page"}
|
||||
|
||||
{assign var=product_current_page value={$smarty.get.$this_product_getter|default:1}}
|
||||
|
||||
<ul>
|
||||
{loop name="prod" type="product" category="#ID" page="{$product_current_page}" limit="2"}
|
||||
<li>
|
||||
#ID:#REF
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
|
||||
<p>#TITLE page choice</p>
|
||||
{pageloop rel="prod"}
|
||||
{if ${PAGE} != {$product_current_page}}
|
||||
<a href="index_dev.php?view=pagination&category_page={$category_current_page}&{$this_product_getter}=#PAGE">#PAGE</a>
|
||||
{else}
|
||||
{ #PAGE }
|
||||
{/if}
|
||||
{if {$PAGE} != {$LAST}}
|
||||
-
|
||||
{/if}
|
||||
{/pageloop}
|
||||
|
||||
{/loop}
|
||||
|
||||
</div>
|
||||
|
||||
<p>categories page choice</p>
|
||||
{pageloop rel="cat"}
|
||||
{if ${PAGE} != {$category_current_page}}
|
||||
<a href="index_dev.php?view=pagination&category_page=#PAGE">#PAGE</a>
|
||||
{else}
|
||||
{ #PAGE }
|
||||
{/if}
|
||||
{if {$PAGE} != {$LAST}}
|
||||
-
|
||||
{/if}
|
||||
{/pageloop}
|
||||
|
||||
<hr>
|
||||
Pagination before loop
|
||||
<hr>
|
||||
{assign var=product_current_page value={$smarty.get.$this_product_getter|default:1}}
|
||||
|
||||
{capture name="prod2"}
|
||||
{loop name="prod2" type="product" page="{$product_current_page}" limit="2"}
|
||||
<li>
|
||||
#ID:#REF
|
||||
</li>
|
||||
{/loop}
|
||||
{/capture}
|
||||
|
||||
{pageloop rel="prod2"}
|
||||
{if ${PAGE} != {$product_current_page}}
|
||||
<a href="index_dev.php?view=pagination&category_page={$category_current_page}&{$this_product_getter}=#PAGE">#PAGE</a>
|
||||
{else}
|
||||
{ #PAGE }
|
||||
{/if}
|
||||
{if {$PAGE} != {$LAST}}
|
||||
-
|
||||
{/if}
|
||||
{/pageloop}
|
||||
|
||||
{$smarty.capture.prod2}
|
||||
|
||||
{pageloop rel="prod2"}
|
||||
{if ${PAGE} != {$product_current_page}}
|
||||
<a href="index_dev.php?view=pagination&category_page={$category_current_page}&{$this_product_getter}=#PAGE">#PAGE</a>
|
||||
{else}
|
||||
{ #PAGE }
|
||||
{/if}
|
||||
{if {$PAGE} != {$LAST}}
|
||||
-
|
||||
{/if}
|
||||
{/pageloop}
|
||||
|
||||
|
||||
88
templates/default_save/product.html
Executable file
88
templates/default_save/product.html
Executable file
@@ -0,0 +1,88 @@
|
||||
Here you are : {navigate to="current"}<br />
|
||||
From : {navigate to="return_to"}<br />
|
||||
Index : {navigate to="index"}<br />
|
||||
|
||||
<h1>Product page</h1>
|
||||
|
||||
{ifloop rel="product"}
|
||||
|
||||
{loop type="product" name="product" current="true"}
|
||||
|
||||
<div style="border: dashed 2px red; padding: 20px; margin: 10px;">
|
||||
<h2>PRODUCT (#ID) : #REF</h2>
|
||||
<h3>#TITLE</h3>
|
||||
<p>#DESCRIPTION</p>
|
||||
|
||||
{ifloop rel="acc"}
|
||||
<h4>Accessories</h4>
|
||||
<ul>
|
||||
{loop name="acc" type="accessory" product="#ID" order="accessory"}
|
||||
<li><a href="#URL">#REF</a></li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
{elseloop rel="acc"}
|
||||
<h4>No accessory</h4>
|
||||
{/elseloop}
|
||||
|
||||
{ifloop rel="prod_ass_cont"}
|
||||
<h4>Associated Content</h4>
|
||||
<ul>
|
||||
{loop name="prod_ass_cont" type="associated_content" product="#ID" order="associated_content"}
|
||||
<li>#TITLE</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
{elseloop rel="prod_ass_cont"}
|
||||
<h4>No associated content</h4>
|
||||
{/elseloop}
|
||||
|
||||
{ifloop rel="ft"}
|
||||
<h4>Features</h4>
|
||||
<ul>
|
||||
{assign var=current_product value=#ID}
|
||||
{loop name="ft" type="feature" order="manual" product="#ID"}
|
||||
<li>
|
||||
<strong>#TITLE</strong> :
|
||||
{loop name="ft_v" type="feature_value" product="{$current_product}" feature="#ID"}
|
||||
#TITLE / #PERSONAL_VALUE
|
||||
{/loop}
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
{/ifloop}
|
||||
{elseloop rel="ft"}
|
||||
<h4>No feature</h4>
|
||||
{/elseloop}
|
||||
|
||||
<h4>Product sale elements</h4>
|
||||
|
||||
{assign var=current_product value=#ID}
|
||||
{loop name="pse" type="product_sale_elements" product="#ID"}
|
||||
<div style="border: solid 2px darkorange; padding: 5px; margin: 5px;">
|
||||
{loop name="combi" type="attribute_combination" product_sale_elements="#ID"}
|
||||
#ATTRIBUTE_TITLE = #ATTRIBUTE_AVAILABILITY_TITLE<br />
|
||||
{/loop}
|
||||
<br />#WEIGHT g
|
||||
<br /><strong>{if #IS_PROMO == 1} #PROMO_PRICE € (instead of #PRICE) {else} #PRICE € {/if}</strong>
|
||||
<br /><br />
|
||||
Add
|
||||
<select>
|
||||
{for $will=1 to #QUANTITY}
|
||||
<option>{$will}</option>
|
||||
{/for}
|
||||
</select>
|
||||
to my cart
|
||||
</ul>
|
||||
</div>
|
||||
{/loop}
|
||||
|
||||
</div>
|
||||
|
||||
{/loop}
|
||||
|
||||
{/ifloop}
|
||||
|
||||
{elseloop rel="product"}
|
||||
<h2>Produit introuvable !</h2>
|
||||
{/elseloop}
|
||||
11
templates/default_save/tester.html
Executable file
11
templates/default_save/tester.html
Executable file
@@ -0,0 +1,11 @@
|
||||
<ul>
|
||||
{loop name="car" type="category"}
|
||||
<li>
|
||||
<ul>
|
||||
{loop name="product" type="product" category="#ID"}
|
||||
<li>#REF</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
</li>
|
||||
{/loop}
|
||||
</ul>
|
||||
Reference in New Issue
Block a user