// Improved Supply Order States
git-svn-id: http://dev.prestashop.com/svn/v1/branches/1.5.x@13027 b9a71923-0436-4b27-9f14-aed3839534dd
This commit is contained in:
@@ -19,7 +19,7 @@ fieldset{background-color:#EBEDF4; border:1px solid #CCCED7; color:#585A69; font
|
||||
legend{background:#EBEDF4;border:1px solid #CCCED7;font-weight:700;margin:0;padding:.2em .5em;text-align:left}
|
||||
input[type="text"],input[type="password"],input[type="file"],textarea {border:1px solid #ccc; background-color:#fff;}
|
||||
select { border:1px solid #ccc; font-size: 12px;}
|
||||
select[disabled="disabled"], input[disabled="disabled"],textarea[disabled="disabled"] {border: 1px solid #CCCCCC;color: #AAAAAA}
|
||||
select[disabled="disabled"], input[disabled="disabled"],textarea[disabled="disabled"], option[disabled="disabled"] {border: 1px solid #CCCCCC;color: #AAAAAA}
|
||||
.header_module{background:url('../img/header_module.png');padding-left: 0.5em;padding-top: 0.8em;height:20px;color: #812143;border:solid 1px #CCC;}
|
||||
.double_select select{width:300px;height:160px;}
|
||||
.double_select a{text-align:center;display:block;border:1px solid #aaa;text-decoration:none;background-color:#fafafa;color:#123456;margin:2px;padding:2px}
|
||||
|
||||
@@ -25,15 +25,38 @@
|
||||
*}
|
||||
{extends file="helper/form/form.tpl"}
|
||||
|
||||
{block name="other_fieldsets"}
|
||||
{block name="other_input"}
|
||||
|
||||
{if isset($supply_order) && $supply_order->id > 0 && isset($supply_order_states)}
|
||||
<input type="hidden" name="id_supply_order" id="id_supply_order" value="{$supply_order->id}">
|
||||
<label>{l s='Status of the order:'}</label>
|
||||
|
||||
<div class="margin-form">
|
||||
<select name="id_supply_order_state" id="id_supply_order_state">
|
||||
{foreach $supply_order_states as $state}
|
||||
<option value="{$state['id_supply_order_state']}" {if $state['allowed'] == 0} disabled="disabled" {/if}>{$state['name']}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
<p class="preference_description">
|
||||
{l s='Choose the new status of your order'}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="margin-form">
|
||||
<input type="submit" id="_form_submit_btn" value=" Save " name="submitChangestate" class="button" style="display: none; ">
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
{/block}
|
||||
|
||||
{block name="other_fieldset"}
|
||||
<br />
|
||||
|
||||
{if isset($supply_order_state) && $supply_order_state->editable == false && isset($supply_order)}
|
||||
<fieldset>
|
||||
<legend>
|
||||
<img src="../img/admin/pdf.gif" alt="{l s='Supply Order State'}">
|
||||
{l s='Print the supply order form'}
|
||||
<img src="../img/admin/pdf.gif" alt="{l s='Supply Order State'}">
|
||||
{l s='Print the supply order form'}
|
||||
</legend>
|
||||
<a href="pdf.php?id_supply_order={$supply_order->id}" target="_blank" title="Export as PDF">{l s='Click here to download the supply order form'}.</a>
|
||||
</fieldset>
|
||||
|
||||
@@ -142,4 +142,30 @@ class SupplyOrderStateCore extends ObjectModel
|
||||
|
||||
return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($query);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the list of supply order states
|
||||
*
|
||||
* @param array $ids Optional Do not include these ids in the result
|
||||
* @param int $id_lang Optional
|
||||
* @return array
|
||||
*/
|
||||
public static function getStates($ids = null, $id_lang = null)
|
||||
{
|
||||
if ($id_lang == null)
|
||||
$id_lang = Context::getContext()->language->id;
|
||||
|
||||
if ($ids && !is_array($ids))
|
||||
$ids = array();
|
||||
|
||||
$query = new DbQuery();
|
||||
$query->select('sl.name, s.id_supply_order_state');
|
||||
$query->from('supply_order_state', 's');
|
||||
$query->leftjoin('supply_order_state_lang', 'sl', 's.id_supply_order_state = sl.id_supply_order_state AND sl.id_lang='.(int)$id_lang);
|
||||
if ($ids)
|
||||
$query->where('s.id_supply_order_state NOT IN('.implode(',', array_map('intval', $ids)).')');
|
||||
|
||||
return Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($query);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -527,6 +527,25 @@ class AdminSupplyOrdersControllerCore extends AdminController
|
||||
|
||||
// given the current state, loads available states
|
||||
$states = SupplyOrderState::getSupplyOrderStates($supply_order->id_supply_order_state);
|
||||
|
||||
// gets the state that are not allowed
|
||||
$allowed_states = array();
|
||||
foreach ($states as &$state)
|
||||
{
|
||||
$allowed_states[] = $state['id_supply_order_state'];
|
||||
$state['allowed'] = 1;
|
||||
}
|
||||
$not_allowed_states = SupplyOrderState::getStates($allowed_states);
|
||||
|
||||
// generates the final list of states
|
||||
$index = count($allowed_states);
|
||||
foreach ($not_allowed_states as &$not_allowed_state)
|
||||
{
|
||||
$not_allowed_state['allowed'] = 0;
|
||||
$states[$index] = $not_allowed_state;
|
||||
++$index;
|
||||
}
|
||||
|
||||
// loads languages
|
||||
$this->getlanguages();
|
||||
|
||||
@@ -536,28 +555,6 @@ class AdminSupplyOrdersControllerCore extends AdminController
|
||||
'title' => $this->l('Supply Order Status'),
|
||||
'image' => '../img/admin/cms.gif'
|
||||
),
|
||||
'input' => array(
|
||||
array(
|
||||
'type' => 'hidden',
|
||||
'name' => 'id_supply_order',
|
||||
),
|
||||
array(
|
||||
'type' => 'select',
|
||||
'label' => $this->l('Status of the order:'),
|
||||
'name' => 'id_supply_order_state',
|
||||
'required' => false,
|
||||
'options' => array(
|
||||
'query' => $states,
|
||||
'id' => 'id_supply_order_state',
|
||||
'name' => 'name'
|
||||
),
|
||||
'desc' => $this->l('Choose the new status of your order')
|
||||
),
|
||||
),
|
||||
'submit' => array(
|
||||
'title' => $this->l(' Save '),
|
||||
'class' => 'button'
|
||||
)
|
||||
);
|
||||
|
||||
$this->displayInformation($this->l('Be careful when changing status. Some of them cannot be changed afterwards. (Canceled, for instance).'));
|
||||
@@ -573,10 +570,6 @@ class AdminSupplyOrdersControllerCore extends AdminController
|
||||
$helper->languages = $this->_languages;
|
||||
$helper->default_form_language = $this->default_form_language;
|
||||
$helper->allow_employee_form_lang = $this->allow_employee_form_lang;
|
||||
$helper->fields_value = array(
|
||||
'id_supply_order_state' => Tools::getValue('id_supplier', ''),
|
||||
'id_supply_order' => $id_supply_order,
|
||||
);
|
||||
|
||||
//$this->setHelperDisplay($helper);
|
||||
$helper->override_folder = 'supply_orders_change_state/';
|
||||
@@ -585,6 +578,7 @@ class AdminSupplyOrdersControllerCore extends AdminController
|
||||
$helper->tpl_vars['show_change_state_form'] = true;
|
||||
$helper->tpl_vars['supply_order_state'] = $supply_order_state;
|
||||
$helper->tpl_vars['supply_order'] = $supply_order;
|
||||
$helper->tpl_vars['supply_order_states'] = $states;
|
||||
|
||||
// generates the form to display
|
||||
$content = $helper->generateForm($this->fields_form);
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
<?xml version="1.0"?>
|
||||
<entity_supply_order_state>
|
||||
<supply_order_state id="supply_order_state_1">
|
||||
<name>Création in progress</name>
|
||||
<name>1 - Creation in progress</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_2">
|
||||
<name>Order validated</name>
|
||||
<name>2 - Order validated</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_3">
|
||||
<name>Pending receipt</name>
|
||||
<name>3 - Pending receipt</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_4">
|
||||
<name>Order received in part</name>
|
||||
<name>4 - Order received in part</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_5">
|
||||
<name>Order received completely</name>
|
||||
<name>5 - Order received completely</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_6">
|
||||
<name>order canceled</name>
|
||||
<name>6 - Order canceled</name>
|
||||
</supply_order_state>
|
||||
</entity_supply_order_state>
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
<?xml version="1.0"?>
|
||||
<entity_supply_order_state>
|
||||
<supply_order_state id="supply_order_state_1">
|
||||
<name>creation in progress</name>
|
||||
<name>1 - Creation in progress</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_2">
|
||||
<name>Order validated</name>
|
||||
<name>2 - Order validated</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_3">
|
||||
<name>Pending receipt</name>
|
||||
<name>3 - Pending receipt</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_4">
|
||||
<name>Order received in part</name>
|
||||
<name>4 - Order received in part</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_5">
|
||||
<name>Order received completely</name>
|
||||
<name>5 - Order received completely</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_6">
|
||||
<name>order canceled</name>
|
||||
<name>6 - Order canceled</name>
|
||||
</supply_order_state>
|
||||
</entity_supply_order_state>
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
<?xml version="1.0"?>
|
||||
<entity_supply_order_state>
|
||||
<supply_order_state id="supply_order_state_1">
|
||||
<name>Création in progress</name>
|
||||
<name>1 - Creation in progress</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_2">
|
||||
<name>Order validated</name>
|
||||
<name>2 - Order validated</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_3">
|
||||
<name>Pending receipt</name>
|
||||
<name>3 - Pending receipt</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_4">
|
||||
<name>Order received in part</name>
|
||||
<name>4 - Order received in part</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_5">
|
||||
<name>Order received completely</name>
|
||||
<name>5 - Order received completely</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_6">
|
||||
<name>order canceled</name>
|
||||
<name>6 - Order canceled</name>
|
||||
</supply_order_state>
|
||||
</entity_supply_order_state>
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
<?xml version="1.0"?>
|
||||
<entity_supply_order_state>
|
||||
<supply_order_state id="supply_order_state_1">
|
||||
<name>Création en cours</name>
|
||||
<name>1 - Création en cours</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_2">
|
||||
<name>Commande validée</name>
|
||||
<name>2 - Commande validée</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_3">
|
||||
<name>Attente de réception</name>
|
||||
<name>3 - En attente de réception</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_4">
|
||||
<name>Commande réceptionnée partiellement</name>
|
||||
<name>4 - Commande réceptionnée partiellement</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_5">
|
||||
<name>Commande réceptionnée totalement</name>
|
||||
<name>5 - Commande réceptionnée totalement</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_6">
|
||||
<name>Commande annulée</name>
|
||||
<name>6 - Commande annulée</name>
|
||||
</supply_order_state>
|
||||
</entity_supply_order_state>
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
<?xml version="1.0"?>
|
||||
<entity_supply_order_state>
|
||||
<supply_order_state id="supply_order_state_1">
|
||||
<name>Création in progress</name>
|
||||
<name>1 - Cretion in progress</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_2">
|
||||
<name>Order validated</name>
|
||||
<name>2 - Order validated</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_3">
|
||||
<name>Pending receipt</name>
|
||||
<name>3 - Pending receipt</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_4">
|
||||
<name>Order received in part</name>
|
||||
<name>4 - Order received in part</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_5">
|
||||
<name>Order received completely</name>
|
||||
<name>5 - Order received completely</name>
|
||||
</supply_order_state>
|
||||
<supply_order_state id="supply_order_state_6">
|
||||
<name>order canceled</name>
|
||||
<name>6 - Order canceled</name>
|
||||
</supply_order_state>
|
||||
</entity_supply_order_state>
|
||||
|
||||
Reference in New Issue
Block a user