diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..a38d4b1105e9139a0129c53d0a6b7bacec057b79 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.buildpath +.project +.settings diff --git a/app/code/community/OpenTools/Ordernumber/Block/Counters.php b/app/code/community/OpenTools/Ordernumber/Block/Counters.php new file mode 100644 index 0000000000000000000000000000000000000000..aca32e47fa1903ee422255460584fae37ad91dc1 --- /dev/null +++ b/app/code/community/OpenTools/Ordernumber/Block/Counters.php @@ -0,0 +1,242 @@ +<?php +class OpenTools_Ordernumber_Block_Counters extends Mage_Adminhtml_Block_System_Config_Form_Field +{ + protected $_addRowButtonHtml = array(); + protected $_addRowDeleteButtonHtml = array(); + protected $_editRowButtonHtml = array(); + protected $_removeRowButtonHtml = array(); + protected $_types = null; + + protected $_dbModel = null; + protected function _getModel() { + return Mage::getModel('opentools_ordernumber/ordernumber'); + } + public function getModel() { + if (is_null($this->_dbModel)) + $this->_dbModel = $this->_getModel(); + return $this->_dbModel; + } + + public function getNumberTypes() { + if (is_null($this->_types)) { + $this->_types = $this->getModel()->getNumberTypes(); + } + return $this->_types; + } + + function logitem($label, $item) { + Mage::Log($label . " " . get_class($item) . "\n", null, 'ordernumber.log'); + Mage::Log(is_array($item)?$item:$item->debug(), null, 'ordernumber.log'); + Mage::Log(get_class_methods(get_class($item)), null, 'ordernumber.log'); + } + + /** + * Returns html part of the setting + * + * @param Varien_Data_Form_Element_Abstract $element + * @return string + */ + public function render(Varien_Data_Form_Element_Abstract $element) + { + $this->setElement($element); + +$this->logitem("adminhtml/system_store: ", Mage::getSingleton('adminhtml/system_store')); +$this->logitem("adminhtml/system_store store values for form: ", Mage::getSingleton('adminhtml/system_store')->getStoreValuesForForm(true, true)); +$this->logitem("adminhtml/system_store website values for form: ", Mage::getSingleton('adminhtml/system_store')->getWebsiteValuesForForm(true, true)); +$this->logitem("adminhtml/system_store stores structure: ", Mage::getSingleton('adminhtml/system_store')->getStoresStructure(true)); +$html = ''; + $html .= '<table id="ordernumber_counters_template_table" style="display:none">'; + $html .= $this->_getRowHtmlNew(); + $html .= '</table>'; + + $html .= '<div class="grid"><table id="ordernumber_counters_table" class="data" style="width: 100%;">'; + $html .= $this->_getRowHeader(); + + $collection = $this->getModel()->getCollection(); + foreach ($collection as $counter) { + $html .= $this->_getRowHtml($counter); + } + + $html .= '</table></div>'; + + return '<tr id="row_' . $element->getHtmlId() . '"><td colspan="5">' . $html . '</td></tr>'; + } + + /** + * Retrieve html for the table header + * @return string + */ + protected function _getRowHeader() + { + $html = '<tr class="headings">'; + $html .= '<th>Counter Type</th>'; + $html .= '<th>Scope</th>'; + $html .= '<th>Counter Name</th>'; + $html .= '<th>Counter</th>'; + $html .= '<th>' . $this->_getAddRowButtonHtml('ordernumber_counters_table', + 'ordernumber_counters_template_table', $this->__('Add New Counter')) . '</th>'; + $html .= '</tr>'; + return $html; + } + + /** + * Retrieve html template for new counters + * + * @return string + */ + protected function _getRowHtmlNew() + { + $html = '<tr>'; + $html .= '<td>' . $this->_getNumberTypeSelect($this->getElement()->getName() . '[new_counter_type][]') . '</td>'; + // TODO: Turn the text input to a select box + $html .= '<td>' . $this->_getNumberScopeSelect($this->getElement()->getName() . '[new_counter_scope][]') . '</td>'; + $html .= '<td><input type="text" name="' . $this->getElement()->getName() . '[new_counter_name][]" /></td>'; + $html .= '<td><input class="counter_edit validate-not-negative-number input-text" type="text" name="' . $this->getElement()->getName() . '[new_counter_value][]" /></td>'; + $html .= '<td>' . $this->_getAddRowDeleteButtonHtml() . '</td>'; + $html .= '</tr>'; + return $html; + } + + protected function _getNumberTypeSelect($name, $id='', $current=null) + { + $options = array(); + foreach ($this->getNumberTypes() as $type=>$label) { + $options[] = array('value'=>$type, 'label'=>$label); + } + $html = $this->getLayout()->createBlock('core/html_select') + ->setName($name) + ->setValue($current) + ->setOptions($options) + ->setDisabled($this->_getDisabled) + ->toHtml(); + return $html; + } + + protected function _getNumberScopeSelect($name, $id='', $current=null) + { + // TODO: Create the tree similar to ./app/code/core/Mage/Adminhtml/Model/System/Store.php, + // but let the user select websites and groups, too. +// $options = Mage::getSingleton('adminhtml/system_store')->getStoresStructure(true); + $options = Mage::getSingleton('adminhtml/system_store')->getStoreValuesForForm(true, true); + $html = $this->getLayout()->createBlock('core/html_select') + ->setName($name) + ->setValue($current) + ->setOptions($options) + ->setDisabled($this->_getDisabled) + ->toHtml(); + return $html; + } + + /** + * Retrieve html template for setting + * + * @param int $rowIndex + * @return string + */ + protected function _getRowHtml($counter) + { + static $class='odd'; + + $html = '<tr class="'.$class.'">'; + $class = ($class=='odd')?'even':'odd'; + $types = $this->getNumberTypes(); + $html .= '<td class="ordernumber_type">'.$types[$counter->getNumberType()].'</td>'; + + $scopes = array(); + if ($counter->getWebsiteId()==0) { + $scopes[] = $this->__('Global'); + } else { + $scopes[] = $this->__('Website #').(int)$counter->getWebsiteId(); + } + if ($counter->getGroupId()!=0) { + $scopes[] = $this->__('Group #').(int)$counter->getGroupId(); + } + if ($counter->getStoreId()!=0) { + $scopes[] = $this->__('Store #').(int)$counter->getStoreId(); + } + $html .= '<td class="ordernumber_scope">' . implode('<br />', $scopes) . '</td>'; + $html .= '<td class="ordernumber_name">' . $counter->getNumberFormat() . '</td>'; + $html .= '<td class="ordernumber_counter">' . (int)$counter->getCount() . + '<input type="hidden" name="' . $this->getElement()->getName() . '[oldcounter][' . (int)$counter->getId() . ']" value="' . (int)$counter->getCount() . '" />' . + '<input style="display:none" class="counter_edit validate-not-negative-number input-text" name="' . $this->getElement()->getName() . '[counter][' . (int)$counter->getId() . ']" value="' . (int)$counter->getCount() . '" ' . $this->_getDisabled() . '/>' . + '</td>'; + + $html .= '<td>' . $this->_getEditRowButtonHtml() . $this->_getRemoveRowButtonHtml() . '</td>'; + $html .= '</tr>'; + + return $html; + } + + protected function _getDisabled() + { + return $this->getElement()->getDisabled() ? ' disabled' : ''; + } + + protected function _getValue($key) + { + return $this->getElement()->getData('value/' . $key); + } + + protected function _getSelected($key, $value) + { + return $this->getElement()->getData('value/' . $key) == $value ? 'selected="selected"' : ''; + } + + protected function _getAddRowDeleteButtonHtml($selector = 'tr', $title='Delete') + { + if (!$this->_addRowDeleteButtonHtml) { + $this->_addRowDeleteButtonHtml = $this->getLayout()->createBlock('adminhtml/widget_button') + ->setType('button') + ->setClass('delete v-middle ' . $this->_getDisabled()) + ->setLabel($this->__($title)) + ->setOnClick("Element.remove($(this).up('" . $selector . "'))") + ->setDisabled($this->_getDisabled()) + ->toHtml(); + } + return $this->_addRowDeleteButtonHtml; + } + + protected function _getAddRowButtonHtml($container, $template, $title='Add') + { + if (!isset($this->_addRowButtonHtml[$container])) { + $this->_addRowButtonHtml[$container] = $this->getLayout()->createBlock('adminhtml/widget_button') + ->setType('button') + ->setClass('add ' . $this->_getDisabled()) + ->setLabel($this->__($title)) + ->setOnClick("Element.insert($('" . $container . "'), {bottom: $('" . $template . "').innerHTML})") + ->setDisabled($this->_getDisabled()) + ->toHtml(); + } + return $this->_addRowButtonHtml[$container]; + } + + protected function _getEditRowButtonHtml($selector = 'tr', $title='Edit') + { + if (!$this->_editRowButtonHtml) { + $this->_editRowButtonHtml = $this->getLayout()->createBlock('adminhtml/widget_button') + ->setType('button') + ->setClass('edit v-middle ' . $this->_getDisabled()) + ->setLabel($this->__($title)) + ->setOnClick("Element.toggle(Element.select($(this).up('" . $selector . "'), 'input.counter_edit'))") + ->setDisabled($this->_getDisabled()) + ->toHtml(); + } + return $this->_editRowButtonHtml; + } + + protected function _getRemoveRowButtonHtml($selector = 'tr', $title = 'Delete') + { + if (!$this->_removeRowButtonHtml) { + $this->_removeRowButtonHtml = $this->getLayout()->createBlock('adminhtml/widget_button') + ->setType('button') + ->setClass('delete v-middle ' . $this->_getDisabled()) + ->setLabel($this->__($title)) + ->setOnClick("Element.remove($(this).up('" . $selector . "'))") + ->setDisabled($this->_getDisabled()) + ->toHtml(); + } + return $this->_removeRowButtonHtml; + } + + +} \ No newline at end of file diff --git a/app/code/community/OpenTools/Ordernumber/Block/Replacements.php b/app/code/community/OpenTools/Ordernumber/Block/Replacements.php new file mode 100644 index 0000000000000000000000000000000000000000..76636d52a8d84720a270085a37c138f3feeaebbf --- /dev/null +++ b/app/code/community/OpenTools/Ordernumber/Block/Replacements.php @@ -0,0 +1,125 @@ +<?php +class OpenTools_Ordernumber_Block_Replacements extends Mage_Adminhtml_Block_System_Config_Form_Field +{ + protected $_addRowButtonHtml = array(); + protected $_removeRowButtonHtml = array(); + + /** + * Returns html part of the setting + * + * @param Varien_Data_Form_Element_Abstract $element + * @return string + */ + public function render(Varien_Data_Form_Element_Abstract $element) + { + $this->setElement($element); + + $html = ''; + $html .= '<table id="ordernumber_replacements_template_table" style="display:none">'; + $html .= $this->_getRowTemplateHtml(); + $html .= '</table>'; + + $html .= '<table id="ordernumber_replacements_table">'; + $html .= $this->_getRowHeader(); + if ($this->_getValue('replacements')) { + foreach ($this->_getValue('replacements') as $i => $f) { + if ($i) { + $html .= $this->_getRowTemplateHtml($i); + } + } + } + $html .= '</table>'; + + return '<tr id="row_' . $element->getHtmlId() . '"><td colspan="5">' . $html . '</td></tr>'; + } + + /** + * Retrieve html for the table header + * @return string + */ + protected function _getRowHeader() + { + $html = '<tr>'; + $html .= '<th></th>'; + $html .= '<th>Variable</th>'; + $html .= '<th>Condition</th>'; + $html .= '<th>Value</th>'; + $html .= '<th>New Variable</th>'; + $html .= '<th>New Value</th>'; + $html .= '<th>' . $this->_getAddRowButtonHtml('ordernumber_replacements_table', + 'ordernumber_replacements_template_table', $this->__('Add New Replacement')) . '</th>'; + $html .= '</tr>'; + return $html; + } + + /** + * Retrieve html template for setting + * + * @param int $rowIndex + * @return string + */ + protected function _getRowTemplateHtml($rowIndex = 0) + { + $html = '<tr>'; + + $html .= '<td>If</td>'; + $html .= '<td><input style="width: 100px" name="' . $this->getElement()->getName() . '[variables][]" value="' . $this->_getValue('variables/' . $rowIndex) . '" ' . $this->_getDisabled() . '/></td>'; +// $html .= '<td>Condition</td>'; +// $html .= '<td>Value</td>'; +// $html .= '<td>New Variable</td>'; +// $html .= '<td>New Value</td>'; + +// $html .= '<div style="margin:5px 0 10px;">'; +// $html .= '<input style="width:100px;" name="' +// . $this->getElement()->getName() . '[addresses][]" value="' +// . $this->_getValue('addresses/' . $rowIndex) . '" ' . $this->_getDisabled() . '/> '; + + $html .= '<td>' . $this->_getRemoveRowButtonHtml() . '</td>'; + $html .= '</tr>'; + + return $html; + } + + protected function _getDisabled() + { + return $this->getElement()->getDisabled() ? ' disabled' : ''; + } + + protected function _getValue($key) + { + return $this->getElement()->getData('value/' . $key); + } + + protected function _getSelected($key, $value) + { + return $this->getElement()->getData('value/' . $key) == $value ? 'selected="selected"' : ''; + } + + protected function _getAddRowButtonHtml($container, $template, $title='Add') + { + if (!isset($this->_addRowButtonHtml[$container])) { + $this->_addRowButtonHtml[$container] = $this->getLayout()->createBlock('adminhtml/widget_button') + ->setType('button') + ->setClass('add ' . $this->_getDisabled()) + ->setLabel($this->__($title)) + ->setOnClick("Element.insert($('" . $container . "'), {bottom: $('" . $template . "').innerHTML})") + ->setDisabled($this->_getDisabled()) + ->toHtml(); + } + return $this->_addRowButtonHtml[$container]; + } + + protected function _getRemoveRowButtonHtml($selector = 'tr', $title = 'Delete') + { + if (!$this->_removeRowButtonHtml) { + $this->_removeRowButtonHtml = $this->getLayout()->createBlock('adminhtml/widget_button') + ->setType('button') + ->setClass('delete v-middle ' . $this->_getDisabled()) + ->setLabel($this->__($title)) + ->setOnClick("Element.remove($(this).up('" . $selector . "'))") + ->setDisabled($this->_getDisabled()) + ->toHtml(); + } + return $this->_removeRowButtonHtml; + } +} \ No newline at end of file diff --git a/app/code/community/OpenTools/Ordernumber/Model/Backend/Counters.php b/app/code/community/OpenTools/Ordernumber/Model/Backend/Counters.php new file mode 100644 index 0000000000000000000000000000000000000000..2ab8047d7d1fa5d8b54772cab68c0857ffe86881 --- /dev/null +++ b/app/code/community/OpenTools/Ordernumber/Model/Backend/Counters.php @@ -0,0 +1,15 @@ +<?php +class OpenTools_Ordernumber_Model_Backend_Counters extends Mage_Core_Model_Config_Data +{ + /** + * Instead of storing the counter values in the config (they are NOT config values), + * change the database and then clear the value: + */ + protected function _beforeSave() + { + if (is_array($this->getValue())) { + // TODO: Store new values in the database + // Compare with old values + } + } +} \ No newline at end of file diff --git a/app/code/community/OpenTools/Ordernumber/Model/Ordernumber.php b/app/code/community/OpenTools/Ordernumber/Model/Ordernumber.php index b2073cfb7307720eb3f02fa11446f62a42ad720d..9d303f3052292dd420a5671ff9ce886aab8b7db7 100644 --- a/app/code/community/OpenTools/Ordernumber/Model/Ordernumber.php +++ b/app/code/community/OpenTools/Ordernumber/Model/Ordernumber.php @@ -25,4 +25,16 @@ class OpenTools_Ordernumber_Model_Ordernumber extends Mage_Core_Model_Abstract $this->_hasDataChanges = false; return $this; } + public function getNumberTypes() + { + $helper = Mage::helper('ordernumber'); + $types = array( + 'order' => $helper->__('Order number'), + 'invoice' => $helper->__('Invoice'), + 'shipment' => $helper->__('Shipment'), + 'creditmemo' => $helper->__('Credit Memo'), + ); + return $types; + } + } \ No newline at end of file diff --git a/app/code/community/OpenTools/Ordernumber/Model/Source/Reset.php b/app/code/community/OpenTools/Ordernumber/Model/Source/Reset.php new file mode 100644 index 0000000000000000000000000000000000000000..1e31d878a2b1de940db2502e2108eb57a954fc31 --- /dev/null +++ b/app/code/community/OpenTools/Ordernumber/Model/Source/Reset.php @@ -0,0 +1,17 @@ +<?php +class OpenTools_Ordernumber_Model_Source_Reset +{ + public function toOptionArray() + { + $reset = array( + array('value' => '0', 'label' => 'One counter without reset'), + array('value' => '[year]', 'label' => 'New counter for each year'), + array('value' => '[year]-[month]', 'label' => 'New counter for each month'), + array('value' => '[year]-[month]-[day]', 'label' => 'New counter for each day'), + array('value' => '1', 'label' => 'Separate counter for each Format Value'), + array('value' => '-1', 'label' => 'Custom counter Name'), + ); + return $reset; + } + +} diff --git a/app/code/community/OpenTools/Ordernumber/Model/Source/Scope.php b/app/code/community/OpenTools/Ordernumber/Model/Source/Scope.php new file mode 100644 index 0000000000000000000000000000000000000000..db10aa744126cb2fbaee8ed5aa3e5b869860b4ef --- /dev/null +++ b/app/code/community/OpenTools/Ordernumber/Model/Source/Scope.php @@ -0,0 +1,15 @@ +<?php +class OpenTools_Ordernumber_Model_Source_Scope +{ + public function toOptionArray() + { + $scopes = array( + array('value' => '0', 'label' => Mage::helper('ordernumber')->__('Use all counters across all stores')), + array('value' => '1', 'label' => Mage::helper('ordernumber')->__('Separate counters for each Website')), + array('value' => '2', 'label' => Mage::helper('ordernumber')->__('Separate counters for each Store')), + array('value' => '3', 'label' => Mage::helper('ordernumber')->__('Separate counters for each Store View')), + ); + return $scopes; + } + +} \ No newline at end of file diff --git a/app/code/community/OpenTools/Ordernumber/etc/config.xml b/app/code/community/OpenTools/Ordernumber/etc/config.xml index 9af89a0b4649e766876886b651a476fbd5438c71..f6cb7fc74df87a5be32fc13f9a46c8c88511c8d6 100644 --- a/app/code/community/OpenTools/Ordernumber/etc/config.xml +++ b/app/code/community/OpenTools/Ordernumber/etc/config.xml @@ -10,7 +10,7 @@ </depends> </OpenTools_Ordernumber> </modules> - + <global> <models> <opentools_ordernumber> @@ -49,7 +49,12 @@ </connection> </opentools_ordernumber_read> </resources> - + <blocks> + <opentools_ordernumber> + <class>OpenTools_Ordernumber_Block</class> + </opentools_ordernumber> + </blocks> + <events> <sales_model_service_quote_submit_before> <observers> @@ -98,7 +103,7 @@ </sales_order_creditmemo_save_before> </events> </global> - + <adminhtml> <acl> <resources> @@ -119,7 +124,17 @@ </admin> </resources> </acl> + <translate> + <modules> + <opentools_ordernumber> + <files> + <default>OpenTools_Ordernumber.csv</default> + </files> + </opentools_ordernumber> + </modules> + </translate> </adminhtml> + </adminhtml> <default> <ordernumber> <settings> diff --git a/app/code/community/OpenTools/Ordernumber/etc/system.xml b/app/code/community/OpenTools/Ordernumber/etc/system.xml index 4bc6b596137e2eabc6a968351bc5510ae6f19bbf..94aab94da438f4e0bbeb70eca346c2d3a8e78512 100644 --- a/app/code/community/OpenTools/Ordernumber/etc/system.xml +++ b/app/code/community/OpenTools/Ordernumber/etc/system.xml @@ -39,26 +39,60 @@ <show_in_store>1</show_in_store> <depends><active>1</active></depends> </format> + <scope translate="label"> + <label>Scope of the counter</label> + <tooltip>Separate counters can be used per store or per website. Alternatively, all counters can be used accoss all stores simultaneously.</tooltip> + <frontend_type>select</frontend_type> + <source_model>opentools_ordernumber/source_scope</source_model> + <sort_order>50</sort_order> + <show_in_default>1</show_in_default> + <show_in_website>1</show_in_website> + <show_in_store>1</show_in_store> + <depends><active>1</active></depends> + </scope> + <reset translate="label"> + <label>Counter "Reset"</label> + <tooltip></tooltip> + <frontend_type>select</frontend_type> + <source_model>opentools_ordernumber/source_reset</source_model> + <sort_order>60</sort_order> + <show_in_default>1</show_in_default> + <show_in_website>1</show_in_website> + <show_in_store>1</show_in_store> + <depends><active>1</active></depends> + </reset> + <counterresetformat translate="label"> + <label>Format for counter names</label> + <comment>Whenever any variable in this format changes, a new counter is used.</comment> + <frontend_type>text</frontend_type> + <sort_order>61</sort_order> + <show_in_default>1</show_in_default> + <show_in_website>1</show_in_website> + <show_in_store>1</show_in_store> + <depends><active>1</active><reset>-1</reset></depends> + </counterresetformat> <digits translate="label"> <label>Number of digits for the counter</label> <tooltip>A # will be replaced by the counter, left-padded with 0s to have at least this many digits</tooltip> <frontend_type>text</frontend_type> <validate>validate-not-negative-number</validate> - <sort_order>3</sort_order> + <sort_order>100</sort_order> <show_in_default>1</show_in_default> <show_in_website>1</show_in_website> <show_in_store>1</show_in_store> <depends><active>1</active></depends> </digits> - <global translate="label"> - <label>Use a global counter with no reset</label> - <frontend_type>checkbox</frontend_type> - <sort_order>4</sort_order> + <increment translate="label"> + <label>Counter increment</label> + <tooltip>Increment for the counter so that your competitors cannot directly estimate your business figures.</tooltip> + <frontend_type>text</frontend_type> + <validate>validate-not-negative-number</validate> + <sort_order>105</sort_order> <show_in_default>1</show_in_default> <show_in_website>1</show_in_website> <show_in_store>1</show_in_store> <depends><active>1</active></depends> - </global> + </increment> </fields> </ordernumbers> @@ -209,6 +243,49 @@ </fields> </creditmemonumbers> + <replacements translate="label"> + <label>Variable Replacements</label> + <frontend_type>text</frontend_type> + <sort_order>100</sort_order> + <expanded>0</expanded> + <show_in_default>1</show_in_default> + <show_in_website>1</show_in_website> + <show_in_store>1</show_in_store> + <fields> + <replacements translate="label"> + <label>Variable replacements</label> + <frontend_model>opentools_ordernumber/replacements</frontend_model> + <backend_model>adminhtml/system_config_backend_serialized</backend_model> + <sort_order>2</sort_order> + <show_in_default>1</show_in_default> + <show_in_website>1</show_in_website> + <show_in_store>1</show_in_store> + </replacements> + </fields> + </replacements> + + <counters translate="label"> + <label>Current Counter Values</label> + <comment><![CDATA[All changes made to the counter values will be applied when you press save. Please be aware that in the meantime an order might have been created, so the counter might already be out of date!]]></comment> + <frontend_type>text</frontend_type> + <sort_order>200</sort_order> + <expanded>0</expanded> + <show_in_default>1</show_in_default> + <show_in_website>1</show_in_website> + <show_in_store>1</show_in_store> + <fields> + <counters translate="label"> + <label>Counter Values</label> + <frontend_model>opentools_ordernumber/counters</frontend_model> + <backend_model>opentools_ordernumber/backend_counters</backend_model> + <sort_order>1</sort_order> + <show_in_default>1</show_in_default> + <show_in_website>1</show_in_website> + <show_in_store>1</show_in_store> + <can_be_empty>1</can_be_empty> + </counters> + </fields> + </counters> </groups> </ordernumber> </sections> diff --git a/app/code/community/OpenTools/Ordernumber/sql/opentools_ordernumber_setup/install-0.1.0.php b/app/code/community/OpenTools/Ordernumber/sql/opentools_ordernumber_setup/install-0.1.0.php index 6f374f875f5fd61dcd09b4ddfca2a974709858e0..7f50ea19ef6b675c6714b94ca87d53894c65e7e4 100644 --- a/app/code/community/OpenTools/Ordernumber/sql/opentools_ordernumber_setup/install-0.1.0.php +++ b/app/code/community/OpenTools/Ordernumber/sql/opentools_ordernumber_setup/install-0.1.0.php @@ -19,6 +19,9 @@ $table = $installer->getConnection() 'primary' => true, ), 'Ordernumber id') ->addColumn('number_type', Varien_Db_Ddl_Table::TYPE_TEXT, 63, array('nullable'=> false), 'Number Type') + ->addColumn('website_id', Varien_Db_Ddl_Table::TYPE_SMALLINT,null, array('nullable'=> false, 'default'=>-1), 'Website ID') + ->addColumn('group_id', Varien_Db_Ddl_Table::TYPE_SMALLINT,null, array('nullable'=> false, 'default'=>-1), 'Group ID') + ->addColumn('store_id', Varien_Db_Ddl_Table::TYPE_SMALLINT,null, array('nullable'=> false, 'default'=>-1), 'Store ID') ->addColumn('number_format',Varien_Db_Ddl_Table::TYPE_TEXT, 255, array('nullable'=> true), 'Number Format') ->addColumn('count', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array('unsigned'=>true,'nullable'=>false), 'Counter') ->addIndex($installer->getIdxName( diff --git a/var/connect/OpenTools_Ordernumber.xml b/var/connect/OpenTools_Ordernumber.xml index e1990083c2e187d5322659a279e9c29e7f1677ea..caf4e5932266257355a804bf53eb9303521fe5aa 100644 --- a/var/connect/OpenTools_Ordernumber.xml +++ b/var/connect/OpenTools_Ordernumber.xml @@ -1,5 +1,5 @@ <_> - <form_key>1yggEOTnk5zBnKki</form_key> + <form_key>ZV49LPLMxTBr5Syu</form_key> <name>OpenTools_Ordernumber</name> <channel>community</channel> <version_ids> @@ -40,7 +40,7 @@ <max/> </max> <files> - <files> </files> + <files> </files> </files> </package> <extension>