change the way product is created

This commit is contained in:
Manuel Raynaud
2014-03-13 09:56:11 +01:00
parent d8e1f24fda
commit e4ba7d8d11
13 changed files with 259 additions and 107 deletions

13
templates/backOffice/default/I18n/en_US.php Executable file → Normal file
View File

@@ -6,6 +6,9 @@ return array(
'(edit)' => '(edit)',
'<a href="http://en.wikipedia.org/wiki/ISO_639-1_language_matrix" target="_other">Check the list</a> of ISO 639-1 codes' => '<a href="http://en.wikipedia.org/wiki/ISO_639-1_language_matrix" target="_other">Check the list</a> of ISO 639-1 codes',
'<span id="number_of_generated_combinations">0</span> combinations' => '<span id="number_of_generated_combinations">0</span> combinations',
'<strong>Cannot translate all fields.</strong> According to your PHP configuration, forms cannot contains more than
%current_max_input_vars input fields, but at least %required_max_input_vars are required. Please change the value of max_input_vars in your PHP configuration
of change the translation file by hand.' => '<strong>Cannot translate all fields.</strong> According to your PHP configuration, forms cannot contains more than %current_max_input_vars input fields, but at least %required_max_input_vars are required. Please change the value of max_input_vars in your PHP configuration of change the translation file by hand.',
'<strong>Congratulations</strong>, all text is now translated !' => '<strong>Congratulations</strong>, all text is now translated !',
'<strong>Did not found any text to translate</strong>. It\'s probably normal. If not, please be sure to use Smarty\'s "intl" function in templates, or the Translator::trans() method in PHP files.' => '<strong>Did not found any text to translate</strong>. It\'s probably normal. If not, please be sure to use Smarty\'s "intl" function in templates, or the Translator::trans() method in PHP files.',
'A content could be attached to more than one folder. Select here the additional folders for this content.' => 'A content could be attached to more than one folder. Select here the additional folders for this content.',
@@ -70,7 +73,6 @@ return array(
'Back-office home' => 'Back-office home',
'Back-office templates' => 'Back-office templates',
'Back-office users' => 'Back-office users',
'Browse' => 'Browse',
'Browse files' => 'Browse files',
'Browse this category' => 'Browse this category',
'Browse this folder' => 'Browse this folder',
@@ -122,7 +124,6 @@ return array(
'Combination builder' => 'Combination builder',
'Combination reference' => 'Combination reference',
'Company' => 'Company',
'Condition type :' => 'Condition type :',
'Condition\'s category :' => 'Condition\'s category :',
'Conditions' => 'Conditions',
'Configuration' => 'Configuration',
@@ -142,7 +143,6 @@ return array(
'Country short description' => 'Country short description',
'Country title' => 'Country title',
'Coupon' => 'Coupon',
'Coupon : ' => 'Coupon : ',
'Coupon code' => 'Coupon code',
'Coupons' => 'Coupons',
'Coupons : ' => 'Coupons : ',
@@ -324,6 +324,7 @@ return array(
'EAN Code' => 'EAN Code',
'Ecotax is a tax wich add a defined amount (throug a product feature) to the product price.' => 'Ecotax is a tax wich add a defined amount (throug a product feature) to the product price.',
'Edit' => 'Edit',
'Edit %title' => 'Edit %title',
'Edit a country' => 'Edit a country',
'Edit a currency' => 'Edit a currency',
'Edit a customer' => 'Edit a customer',
@@ -424,6 +425,7 @@ return array(
'Enter here the product name in the default language (%title)' => 'Enter here the product name in the default language (%title)',
'Enter here the product price in the default currency (%title)' => 'Enter here the product price in the default currency (%title)',
'Enter here the product reference' => 'Enter here the product reference',
'Enter here the product tax price in the default currency (%title)' => 'Enter here the product tax price in the default currency (%title)',
'Enter here the product weight, in Kilogrammes' => 'Enter here the product weight, in Kilogrammes',
'Enter here the template name in the default language (%title)' => 'Enter here the template name in the default language (%title)',
'Enter here the value in the current edit language (%language_name)' => 'Enter here the value in the current edit language (%language_name)',
@@ -457,7 +459,6 @@ return array(
'Features' => 'Features',
'File' => 'File',
'File names' => 'File names',
'Files manager' => 'Files manager',
'First Name' => 'First Name',
'First name' => 'First name',
'First orders' => 'First orders',
@@ -524,7 +525,6 @@ return array(
'Latest version available' => 'Latest version available',
'Leave empty to keep current password' => 'Leave empty to keep current password',
'Lire la suite' => 'Lire la suite',
'List' => 'List',
'Loading Thelia lastest news...' => 'Loading Thelia lastest news...',
'Locale' => 'Locale',
'Log lines format' => 'Log lines format',
@@ -578,7 +578,6 @@ return array(
'Online' => 'Online',
'Online products' => 'Online products',
'Oops! An Error Occurred' => 'Oops! An Error Occurred',
'Or' => 'Or',
'Order #' => 'Order #',
'Order %ref' => 'Order %ref',
'Order n°' => 'Order n°',
@@ -644,6 +643,7 @@ return array(
'Product features' => 'Product features',
'Product price' => 'Product price',
'Product price including taxes' => 'Product price including taxes',
'Product tax price' => 'Product tax price',
'Product templates' => 'Product templates',
'Product title' => 'Product title',
'Product weight' => 'Product weight',
@@ -814,6 +814,7 @@ return array(
'Thelia support forum' => 'Thelia support forum',
'Thelia system variables' => 'Thelia system variables',
'Thelia, the open source e-commerce solution' => 'Thelia, the open source e-commerce solution',
'There is currently no active module here.' => 'There is currently no active module here.',
'There is no documents attached to this %type.' => 'There is no documents attached to this %type.',
'There is no images attached to this %type.' => 'There is no images attached to this %type.',
'They are some administrator which are linked to this administrator. Please edit/remove them before deleting this administrator.' => 'They are some administrator which are linked to this administrator. Please edit/remove them before deleting this administrator.',

14
templates/backOffice/default/I18n/fr_FR.php Executable file → Normal file
View File

@@ -6,6 +6,9 @@ return array(
'(edit)' => '(modification)',
'<a href="http://en.wikipedia.org/wiki/ISO_639-1_language_matrix" target="_other">Check the list</a> of ISO 639-1 codes' => '<a href="http://en.wikipedia.org/wiki/ISO_639-1_language_matrix" target="_other">Consulter la liste</a> des codes ISO 639-1',
'<span id="number_of_generated_combinations">0</span> combinations' => '<span id="number_of_generated_combinations">0</span> combinaisons',
'<strong>Cannot translate all fields.</strong> According to your PHP configuration, forms cannot contains more than
%current_max_input_vars input fields, but at least %required_max_input_vars are required. Please change the value of max_input_vars in your PHP configuration
of change the translation file by hand.' => '<strong>Cannot translate all fields.</strong> According to your PHP configuration, forms cannot contains more than %current_max_input_vars input fields, but at least %required_max_input_vars are required. Please change the value of max_input_vars in your PHP configuration of change the translation file by hand.',
'<strong>Congratulations</strong>, all text is now translated !' => '<strong>Félicitations</strong>, Toute la traduction a été effectué',
'<strong>Did not found any text to translate</strong>. It\'s probably normal. If not, please be sure to use Smarty\'s "intl" function in templates, or the Translator::trans() method in PHP files.' => '<streong>Aucun texte à traduire</strong>. C\'est probablement normal. Si ce n\'est pas le cas vérifiez que vous utilisez bien la fonction Smarty "intl" ou bien le translator Translator::trans dans un fichier php',
'A content could be attached to more than one folder. Select here the additional folders for this content.' => 'Un contenu peut être rattaché à plusieurs dossiers. Sélectionnez ici les dossiers dans lesquels ce contenu apparaîtra',
@@ -70,7 +73,6 @@ return array(
'Back-office home' => 'Accueil administration',
'Back-office templates' => 'templates Back-office',
'Back-office users' => 'Utilisateur du B.O',
'Browse' => 'Parcourir',
'Browse files' => 'Parcourir les fichiers',
'Browse this category' => 'Parcourir cette catégorie',
'Browse this folder' => 'Parcourir ce dossier',
@@ -122,7 +124,6 @@ return array(
'Combination builder' => 'générateur de combinaison',
'Combination reference' => 'Référence de la combinaison',
'Company' => 'Entreprise',
'Condition type :' => 'Type de condition',
'Condition\'s category :' => 'Rubrique de la condition',
'Conditions' => 'Conditions',
'Configuration' => 'Configuration',
@@ -142,7 +143,6 @@ return array(
'Country short description' => 'Courte description du pays',
'Country title' => 'Titre du pays',
'Coupon' => 'Code promo',
'Coupon : ' => 'Code promo :',
'Coupon code' => 'Code promo',
'Coupons' => 'Codes Promo',
'Coupons : ' => 'Codes promo : ',
@@ -324,6 +324,7 @@ return array(
'EAN Code' => 'Code EAN',
'Ecotax is a tax wich add a defined amount (throug a product feature) to the product price.' => 'L\'écotaxe est une taxe qui ajoute un montant défini (grâce à une caractéristique produit) au prix du produit.',
'Edit' => 'Editer',
'Edit %title' => 'Modifier %title',
'Edit a country' => 'Modifier un pays',
'Edit a currency' => 'Modifier une devise',
'Edit a customer' => 'Éditer un client',
@@ -420,9 +421,11 @@ return array(
'Enter here the feature name in the default language (%title)' => 'Renseigner le nom de la caractéristique dans la langue par défaut (%title)',
'Enter here the feature value as free text' => 'Indiquez ici la valeur de la caractéristique',
'Enter here the folder name in the default language (%title)' => 'Entrez ici le nom du dossier dans la langue par défaut (%title)',
'Enter here the mailing template purpose in the default language (%title)' => 'Renseigner l\'objet du mail dans la langue par défaut (%title)',
'Enter here the product name in the default language (%title)' => 'Entrez ici le nom du produit dans la langue par défaut (%title)',
'Enter here the product price in the default currency (%title)' => 'entrez ici le prix du produit dans la langue par défaut (%title)',
'Enter here the product reference' => 'Entrez ici la nouvelle référence produit',
'Enter here the product tax price in the default currency (%title)' => 'Renseignez le prox TTC dans la devise par défaut (%title)',
'Enter here the product weight, in Kilogrammes' => 'Entrez ici le poids du produit, en Kilogrammes',
'Enter here the template name in the default language (%title)' => 'Renseignez le nom du template dans la langue par défaut (%title)',
'Enter here the value in the current edit language (%language_name)' => 'Rensignez la valeur dans la langue d\'édition actuelle (%language_name)',
@@ -456,7 +459,6 @@ return array(
'Features' => 'Caractéristiques',
'File' => 'Fichier',
'File names' => 'Nom du fichier',
'Files manager' => 'Gestionnaire de fichiers',
'First Name' => 'Prénom',
'First name' => 'Prénom',
'First orders' => 'Premières commandes',
@@ -523,7 +525,6 @@ return array(
'Latest version available' => 'Dernière version disponible',
'Leave empty to keep current password' => 'Laisser ce champ vide pour ne pas modifier le mot de passe',
'Lire la suite' => 'Lire la suite',
'List' => 'Liste',
'Loading Thelia lastest news...' => 'Chargement des dernières information Thelia...',
'Locale' => 'Paramètre régional',
'Log lines format' => 'Format d\'une ligne de log',
@@ -577,7 +578,6 @@ return array(
'Online' => 'En ligne',
'Online products' => 'Produits en ligne',
'Oops! An Error Occurred' => 'Oops ! Une erreur est survenue',
'Or' => 'Ou',
'Order #' => 'Commande #',
'Order %ref' => 'Commande %ref',
'Order n°' => 'Commande n°',
@@ -643,6 +643,7 @@ return array(
'Product features' => 'Caractéristiques produit',
'Product price' => 'Prix du produit',
'Product price including taxes' => 'Prix du produit taxes incluses',
'Product tax price' => 'prix TTC',
'Product templates' => 'Template produit',
'Product title' => 'Titre du produit',
'Product weight' => 'Poids du produit',
@@ -812,6 +813,7 @@ return array(
'Thelia support forum' => 'Forum de Thelia',
'Thelia system variables' => 'Variables Thelia',
'Thelia, the open source e-commerce solution' => 'Thelia, la solution e-commerce libre',
'There is currently no active module here.' => 'Il n\'y a aucun module actif ici',
'There is no documents attached to this %type.' => 'Il n\'y a aucun document lié à ce %type.',
'There is no images attached to this %type.' => 'Il n\'y a pas d\'image liée à ce %type.',
'They are some administrator which are linked to this administrator. Please edit/remove them before deleting this administrator.' => 'Cet administrateur est lié avec un ou plusieurs autres administrateurs. Supprimez ou modifiez ces administrateurs d\'abord.',

View File

@@ -472,29 +472,7 @@
</div>
{/form_field}
{form_field form=$form field='price'}
<div class="form-group {if $error}has-error{/if}">
<label for="{$label_attr.for}" class="control-label">{$label} : </label>
{loop type="currency" name="default-currency" default_only="1" backend_context="1"}
<div class="row">
<div class="col-lg-4">
<div class="input-group">
<input type="text" id="{$label_attr.for}" required="required" name="{$name}" class="col-lg-2 form-control" value="{$value}" title="{$label}" placeholder="{intl l='Product price'}">
<span class="input-group-addon">{$SYMBOL}</span>
</div>
</div>
</div>
<div class="help-block">{intl l='Enter here the product price in the default currency (%title)' title=$NAME}</div>
{form_field form=$form field='currency'}
<input type="hidden" name="{$name}" value="{$ID}" />
{/form_field}
{/loop}
</div>
{/form_field}
{form_field form=$form field='tax_rule'}
<div class="form-group {if $error}has-error{/if}">
@@ -513,6 +491,49 @@
</div>
{/form_field}
{form_field form=$form field='price'}
<div class="form-group {if $error}has-error{/if}">
<label for="{$label_attr.for}" class="control-label">{$label} : </label>
{loop type="currency" name="default-currency" default_only="1" backend_context="1"}
<div class="row">
<div class="col-lg-4">
<div class="input-group">
<input type="text" id="{$label_attr.for}" required="required" name="{$name}" class="col-lg-2 form-control automatic_price_field" value="{$value}" title="{$label}" placeholder="{intl l='Product price'}" data-price-type="price-without-tax" data-rel-price="price_with_tax">
<span class="input-group-addon">{$SYMBOL}</span>
</div>
</div>
</div>
<div class="help-block">{intl l='Enter here the product price in the default currency (%title)' title=$NAME}</div>
{form_field form=$form field='currency'}
<input type="hidden" name="{$name}" value="{$ID}" />
{/form_field}
{/loop}
</div>
{/form_field}
{form_field form=$form field='tax_price'}
<div class="form-group {if $error}has-error{/if}">
<label for="{$label_attr.for}" class="control-label">{$label} : </label>
{loop type="currency" name="default-currency" default_only="1" backend_context="1"}
<div class="row">
<div class="col-lg-4">
<div class="input-group">
<input type="text" id="{$label_attr.for}" name="{$name}" class="col-lg-2 form-control automatic_price_field" value="{$value}" title="{$label}" placeholder="{intl l='Product tax price'}" data-price-type="price-with-tax" data-rel-price="price_without_tax">
<span class="input-group-addon">{$SYMBOL}</span>
</div>
</div>
</div>
<div class="help-block">{intl l='Enter here the product tax price in the default currency (%title)' title=$NAME}</div>
{/loop}
</div>
{/form_field}
{form_field form=$form field='weight'}
<div class="form-group {if $error}has-error{/if}">
<label for="{$label_attr.for}" class="control-label">{$label}: </label>
@@ -611,7 +632,9 @@
{javascripts file='assets/js/bootstrap-editable/bootstrap-editable.js'}
<script src="{$asset_url}"></script>
{/javascripts}
{javascripts file='assets/js/jquery.typewatch.js'}
<script src="{$asset_url}"></script>
{/javascripts}
<script>
$(function() {
@@ -713,6 +736,49 @@
location.href = url;
});
function update_price(price, price_type, dest_field_id) {
var tax_rule_id = $('#tax_rule_field').val();
if (tax_rule_id != "") {
var operation;
if (price_type.indexOf('with-tax') != -1)
operation = 'from_tax';
else if (price_type.indexOf('without-tax') != -1)
operation = 'to_tax';
else
operation = '';
$.ajax({
url : '{url path="/admin/product/calculate-raw-price"}',
data : {
price : price,
action : operation,
tax_rule : tax_rule_id
},
type : 'get',
dataType : 'json',
success : function(json) {
$('#' + dest_field_id).val(json.result);
},
error : function(jqXHR, textStatus, errorThrown) {
alert("{intl l='Failed to get prices. Please try again.'} (" +errorThrown+ ")");
}
});
}
}
// Automatic update of price fields: any change in the taxed (resp. untaxed) price
// will update the untaxed (resp. taxed) one
$('.automatic_price_field').typeWatch({
captureLength: 1,
wait : 300,
callback : function () {
update_price($(this).val(), $(this).data('price-type'), $(this).data('rel-price'));
}
});
});
</script>
{/block}

3
templates/frontOffice/default/I18n/en_US.php Executable file → Normal file
View File

@@ -7,6 +7,7 @@ return array(
'+ View All' => '+ View All',
'404' => '404',
'<strong>Sorry!</strong> We are not able to give you a delivery method for your order.' => '<strong>Sorry!</strong> We are not able to give you a delivery method for your order.',
'A problem occured' => 'A problem occured',
'A summary of your order email has been sent to the following address' => 'A summary of your order email has been sent to the following address',
'Account' => 'Account',
'Add a new address' => 'Add a new address',
@@ -129,6 +130,7 @@ return array(
'Placeholder phone' => 'Phone number',
'Placeholder zipcode' => 'NY 10011',
'Please enter your email address below.' => 'Please enter your email address below.',
'Please try again to order' => 'Please try again to order',
'Position' => 'Position',
'Previous' => 'Previous',
'Previous product' => 'Previous product',
@@ -150,6 +152,7 @@ return array(
'Questions ? See our F.A.Q.' => 'Questions ? See our F.A.Q.',
'RSS' => 'RSS',
'Rating' => 'Rating',
'Redirect to bank service' => 'Redirect to bank service',
'Ref.' => 'Ref.',
'Register' => 'Register',
'Register!' => 'Register!',

3
templates/frontOffice/default/I18n/fr_FR.php Executable file → Normal file
View File

@@ -7,6 +7,7 @@ return array(
'+ View All' => '+ Voir tout',
'404' => '404',
'<strong>Sorry!</strong> We are not able to give you a delivery method for your order.' => '<strong>Désolé !</strong>Nous ne pouvons pas trouver de mode de livraison pour votre commande.',
'A problem occured' => 'Un problème est survenu',
'A summary of your order email has been sent to the following address' => 'Un récapitulatif de commande vows a été envoyé par e-mail à l\'adresse suivante : ',
'Account' => 'Mon compte',
'Add a new address' => 'Ajouter une nouvelle adresse',
@@ -129,6 +130,7 @@ return array(
'Placeholder phone' => 'Téléphone',
'Placeholder zipcode' => 'Code postal',
'Please enter your email address below.' => 'Veuillez saisir votre adresse e-mail ci-dessous.',
'Please try again to order' => 'Merci de réessayer',
'Position' => 'Position',
'Previous' => 'Précédent',
'Previous product' => 'Produit précédent.',
@@ -145,6 +147,7 @@ return array(
'Questions ? See our F.A.Q.' => 'Questions ? Voir notre FAQ',
'RSS' => 'RSS',
'Rating' => 'Avis',
'Redirect to bank service' => 'Redirection vers le service bancaire',
'Ref.' => 'Ref.',
'Register' => 'S\'inscrire',
'Register!' => 'Enregistrez-vous !',