Commit f2f6f73a authored by Julien Muchembled's avatar Julien Muchembled

Sync with trunk@35094

git-svn-id: https://svn.erp5.org/repos/public/erp5/sandbox/amount_generator@35111 20353a03-c40f-0410-a6d1-a30d3c3de9de
parents 6b6195b3 7c2e64b5
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>action</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>action_type/object_action</string>
</tuple>
</value>
</item>
<item>
<key> <string>category</string> </key>
<value> <string>object_action</string> </value>
</item>
<item>
<key> <string>condition</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>icon</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>create_initial_balance_transaction</string> </value>
</item>
<item>
<key> <string>permissions</string> </key>
<value>
<tuple>
<string>View</string>
</tuple>
</value>
</item>
<item>
<key> <string>priority</string> </key>
<value> <float>1.0</float> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Create Initial Balance Transaction</string> </value>
</item>
<item>
<key> <string>visible</string> </key>
<value> <int>1</int> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<global name="Expression" module="Products.CMFCore.Expression"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>text</string> </key>
<value> <string>string:${object_url}//AccountingPeriod_viewCreateInitialBalanceTransactionDialog</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<tuple>
<global name="Expression" module="Products.CMFCore.Expression"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>text</string> </key>
<value> <string>python: object.Base_checkPermission(\'accounting_module\', \'Add portal content\')</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>action</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>action_type/object_action</string>
</tuple>
</value>
</item>
<item>
<key> <string>category</string> </key>
<value> <string>object_action</string> </value>
</item>
<item>
<key> <string>condition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>icon</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>add_accounting_transaction_line</string> </value>
</item>
<item>
<key> <string>permissions</string> </key>
<value>
<tuple>
<string>Add portal content</string>
</tuple>
</value>
</item>
<item>
<key> <string>priority</string> </key>
<value> <float>20.0</float> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Add Accounting Transaction Lines</string> </value>
</item>
<item>
<key> <string>visible</string> </key>
<value> <int>1</int> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<global name="Expression" module="Products.CMFCore.Expression"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>text</string> </key>
<value> <string>string:${object_url}/AccountingTransaction_viewAddAccountingTransactionLineDialog?portal_type=Balance+Transaction+Line</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -81,13 +81,14 @@ if organisation:\n
# else we lookup in parent organisations\n
if not bank_account_list:\n
group_value = organisation_value.getGroupValue(None)\n
uid_list = []\n
while group_value.getPortalType() != \'Base Category\':\n
uid_list.append(group_value.getUid())\n
group_value = group_value.getParentValue()\n
search_kw[\'parent_strict_group_uid\'] = uid_list\n
search_kw[\'parent_portal_type\'] = \'Organisation\'\n
bank_account_list = portal.portal_catalog(**search_kw)\n
if group_value is not None:\n
uid_list = []\n
while group_value.getPortalType() != \'Base Category\':\n
uid_list.append(group_value.getUid())\n
group_value = group_value.getParentValue()\n
search_kw[\'parent_strict_group_uid\'] = uid_list\n
search_kw[\'parent_portal_type\'] = \'Organisation\'\n
bank_account_list = portal.portal_catalog(**search_kw)\n
\n
else:\n
if section_category is None:\n
......
......@@ -53,13 +53,18 @@
</item>
<item>
<key> <string>_body</string> </key>
<value> <string>portal = context.getPortalObject()\n
event_type_list = portal.getPortalEventTypeList()\n
<value> <string>from Products.ERP5Type.Message import translateString\n
\n
kw[\'portal_type\'] = event_type_list\n
kw[\'follow_up_relative_url\'] = context.getRelativeUrl()\n
section = context\n
while section.getPortalType() != \'Organisation\':\n
section = context.getParentValue()\n
\n
return context.portal_catalog(**kw)\n
context.accounting_module.newContent(\n
portal_type=\'Balance Transaction\',\n
start_date=context.getStartDate(),\n
destination_section_value=section,\n
resource=section.getPriceCurrency()).Base_redirect(\'view\', keep_items=dict(\n
portal_status_message=translateString(\'Initial balance transaction created\')))\n
</string> </value>
</item>
<item>
......@@ -72,12 +77,6 @@ return context.portal_catalog(**kw)\n
<key> <string>_params</string> </key>
<value> <string>**kw</string> </value>
</item>
<item>
<key> <string>_proxy_roles</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>errors</string> </key>
<value>
......@@ -103,12 +102,12 @@ return context.portal_catalog(**kw)\n
<value>
<tuple>
<string>kw</string>
<string>_getattr_</string>
<string>Products.ERP5Type.Message</string>
<string>translateString</string>
<string>context</string>
<string>portal</string>
<string>event_type_list</string>
<string>_write_</string>
<string>_apply_</string>
<string>section</string>
<string>_getattr_</string>
<string>dict</string>
</tuple>
</value>
</item>
......@@ -125,7 +124,7 @@ return context.portal_catalog(**kw)\n
</item>
<item>
<key> <string>id</string> </key>
<value> <string>SupportRequest_getFollowUpEventList</string> </value>
<value> <string>AccountingPeriod_createInitialBalanceTransaction</string> </value>
</item>
<item>
<key> <string>warnings</string> </key>
......
......@@ -38,12 +38,18 @@
</item>
<item>
<key> <string>action</string> </key>
<value> <string>SupportRequest_viewSupportRequestAndEvent</string> </value>
<value> <string>AccountingPeriod_createInitialBalanceTransaction</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>edit_order</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>encoding</string> </key>
<value> <string>UTF-8</string> </value>
......@@ -71,9 +77,7 @@
<item>
<key> <string>bottom</string> </key>
<value>
<list>
<string>listbox</string>
</list>
<list/>
</value>
</item>
<item>
......@@ -92,9 +96,7 @@
<key> <string>left</string> </key>
<value>
<list>
<string>my_title</string>
<string>my_translated_simulation_state_title</string>
<string>my_resource_title</string>
<string>your_warning</string>
</list>
</value>
</item>
......@@ -109,7 +111,7 @@
</item>
<item>
<key> <string>id</string> </key>
<value> <string>copy_of_SupportRequest_viewSupportRequestAndEvent</string> </value>
<value> <string>AccountingPeriod_viewCreateInitialBalanceTransactionDialog</string> </value>
</item>
<item>
<key> <string>method</string> </key>
......@@ -117,11 +119,11 @@
</item>
<item>
<key> <string>name</string> </key>
<value> <string>ERP5Site_viewSupportRequestForExpressCustomerDialog</string> </value>
<value> <string>AccountingPeriod_viewCreateSecondaryPeriodDialog</string> </value>
</item>
<item>
<key> <string>pt</string> </key>
<value> <string>form_view</string> </value>
<value> <string>form_dialog</string> </value>
</item>
<item>
<key> <string>row_length</string> </key>
......@@ -133,7 +135,7 @@
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Post Reply</string> </value>
<value> <string>Create Initial Balance Transaction</string> </value>
</item>
<item>
<key> <string>unicode_mode</string> </key>
......@@ -143,6 +145,10 @@
<key> <string>update_action</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>update_action_title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
......
......@@ -11,7 +11,7 @@
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>my_description</string> </value>
<value> <string>your_warning</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
......@@ -133,7 +133,9 @@
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>description</string> </key>
......@@ -212,15 +214,15 @@
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
<value> <string>Creating a balance transaction is only required to set openning balances for the first period. Balance Transaction will be created automatically when closing accounting periods.</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>General description which may be printed out on official documents and read by suppliers and clients.</string> </value>
<value> <string></string> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <int>1</int> </value>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>enabled</string> </key>
......@@ -256,11 +258,11 @@
</item>
<item>
<key> <string>required</string> </key>
<value> <int>0</int> </value>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Description</string> </value>
<value> <string>Warning</string> </value>
</item>
<item>
<key> <string>unicode</string> </key>
......@@ -280,4 +282,20 @@
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: context.Base_translateString(field.get_orig_value(\'default\'))</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -74,6 +74,7 @@
<value>
<list>
<string>my_destination_section_title</string>
<string>my_destination_payment</string>
<string>my_destination_title</string>
<string>my_title</string>
<string>my_int_index</string>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>enabled</string>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_destination_payment</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>enabled</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>enabled</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_destination_payment</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>AccountingTransaction_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Third Party Bank Account</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: here.getDestinationSection() and here.getSourceValue(portal_type = \'Account\') is not None and here.getSourceValue(portal_type = \'Account\').isMemberOf(\'account_type/asset/cash\')</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -74,6 +74,7 @@
<value>
<list>
<string>my_source_section_title</string>
<string>my_source_payment</string>
<string>my_source_title</string>
<string>my_title</string>
<string>my_int_index</string>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>enabled</string>
<string>items</string>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_source_payment</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>enabled</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>items</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>enabled</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_source_payment</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>AccountingTransaction_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>items</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Third Party Bank Account</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: here.getSourceSection() and here.getDestinationValue(portal_type = \'Account\') is not None and here.getDestinationValue(portal_type = \'Account\').isMemberOf(\'account_type/asset/cash\')</string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: here.AccountingTransaction_getSourcePaymentItemList()</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -77,17 +77,17 @@ else:\n
delivery_list = \\\n
portal_selections.callSelectionFor(selection_name, context=context)\n
\n
\n
account_reference_cache = dict()\n
def getAccountReference(relative_url):\n
def getAccountReference(node):\n
try:\n
return account_reference_cache[relative_url]\n
return account_reference_cache[node]\n
except KeyError:\n
if relative_url:\n
reference = \\\n
portal.restrictedTraverse(relative_url).Account_getGapId()\n
if node is not None:\n
reference = node.Account_getGapId()\n
else:\n
reference = \'\'\n
account_reference_cache[relative_url] = reference\n
account_reference_cache[node] = reference\n
return reference\n
\n
def getTitle(document):\n
......@@ -95,6 +95,25 @@ def getTitle(document):\n
return document.getTitle()\n
return \'\'\n
\n
bank_account_title_cache = dict()\n
def getBankAccountTitle(bank_account):\n
try:\n
return bank_account_title_cache[bank_account]\n
except KeyError:\n
pass\n
\n
if bank_account is not None:\n
reference = bank_account.getReference()\n
title = bank_account.getTitle()\n
if reference and reference != title:\n
value = "%s - %s" % (reference, title)\n
else:\n
value = title\n
else:\n
value = \'\'\n
bank_account_title_cache[bank_account] = value\n
return value\n
\n
accounting_currency_reference_cache = dict()\n
def getAccountingCurrencyReference(section_relative_url):\n
try:\n
......@@ -117,18 +136,37 @@ for delivery in delivery_list:\n
for movement in delivery.getMovementList(portal_type=portal_type):\n
\n
if is_source:\n
node = movement.getSourceValue(portal_type=\'Account\')\n
node_title = \'\'\n
node_account_type_title = \'\'\n
node_financial_section_title = \'\'\n
if node is not None:\n
node_title = node.getTitle()\n
node_account_type_title = node.getAccountTypeTranslatedTitle()\n
node_financial_section_title = \\\n
node.getFinancialSectionTranslatedTitle()\n
\n
line_list.append(Object(\n
title=movement.hasTitle() and movement.getTitle() or\n
delivery.getTitle(),\n
int_index=movement.getIntIndex(),\n
string_index=movement.getStringIndex(),\n
parent_description=delivery.getDescription(),\n
parent_reference=delivery.getReference(),\n
specific_reference=delivery.getSourceReference(),\n
node_reference=getAccountReference(movement.getSource(portal_type=\'Account\')),\n
node_title=movement.getSourceTitle(),\n
node_reference=getAccountReference(node),\n
node_title=node_title,\n
node_account_type_title=node_account_type_title,\n
node_financial_section_title=node_financial_section_title,\n
section_title=movement.getSourceSectionTitle(),\n
payment_title=getBankAccountTitle(movement.getSourcePaymentValue()),\n
payment_mode=movement.getPaymentModeTranslatedTitle(),\n
mirror_section_title=movement.getDestinationSectionTitle(),\n
mirror_payment_title=getBankAccountTitle(movement.getDestinationPaymentValue()),\n
mirror_section_region_title=movement.getDestinationRegionTranslatedTitle(),\n
function_title=getTitle(movement.getSourceFunctionValue()),\n
project_title=getTitle(movement.getSourceProjectValue()),\n
product_line=movement.getProductLineTranslatedTitle(),\n
date=movement.getStartDate(),\n
debit=movement.getSourceInventoriatedTotalAssetDebit(),\n
credit=movement.getSourceInventoriatedTotalAssetCredit(),\n
......@@ -140,19 +178,39 @@ for delivery in delivery_list:\n
translated_portal_type=movement.getTranslatedPortalType(),\n
parent_translated_portal_type=delivery.getTranslatedPortalType(),\n
translated_simulation_state_title=movement.getTranslatedSimulationStateTitle(),))\n
\n
if delivery.portal_type == \'Internal Invoice Transaction\' or not is_source:\n
node = movement.getDestinationValue(portal_type=\'Account\')\n
node_title = \'\'\n
node_account_type_title = \'\'\n
node_financial_section_title = \'\'\n
if node is not None:\n
node_title = node.getTitle()\n
node_account_type_title = node.getAccountTypeTranslatedTitle()\n
node_financial_section_title = \\\n
node.getFinancialSectionTranslatedTitle()\n
\n
line_list.append(Object(\n
title=movement.hasTitle() and movement.getTitle() or\n
delivery.getTitle(),\n
int_index=movement.getIntIndex(),\n
string_index=movement.getStringIndex(),\n
parent_description=delivery.getDescription(),\n
parent_reference=delivery.getReference(),\n
specific_reference=delivery.getDestinationReference(),\n
node_reference=getAccountReference(movement.getDestination(portal_type=\'Account\')),\n
node_title=movement.getDestinationTitle(),\n
node_reference=getAccountReference(node),\n
node_title=node_title,\n
node_account_type_title=node_account_type_title,\n
node_financial_section_title=node_financial_section_title,\n
section_title=movement.getDestinationSectionTitle(),\n
payment_title=getBankAccountTitle(movement.getDestinationPaymentValue()),\n
payment_mode=movement.getPaymentModeTranslatedTitle(),\n
mirror_section_title=movement.getSourceSectionTitle(),\n
mirror_section_region_title=movement.getSourceRegionTranslatedTitle(),\n
mirror_payment_title=getBankAccountTitle(movement.getSourcePaymentValue()),\n
function_title=getTitle(movement.getDestinationFunctionValue()),\n
project_title=getTitle(movement.getDestinationProjectValue()),\n
product_line=movement.getProductLineTranslatedTitle(),\n
date=movement.getStopDate(),\n
debit=movement.getDestinationInventoriatedTotalAssetDebit(),\n
credit=movement.getDestinationInventoriatedTotalAssetCredit(),\n
......@@ -226,12 +284,19 @@ return line_list\n
<string>account_reference_cache</string>
<string>getAccountReference</string>
<string>getTitle</string>
<string>bank_account_title_cache</string>
<string>getBankAccountTitle</string>
<string>accounting_currency_reference_cache</string>
<string>getAccountingCurrencyReference</string>
<string>portal_type</string>
<string>delivery</string>
<string>is_source</string>
<string>movement</string>
<string>node</string>
<string>node_title</string>
<string>node_account_type_title</string>
<string>node_financial_section_title</string>
<string>None</string>
</tuple>
</value>
</item>
......
......@@ -86,6 +86,10 @@
<string>title</string>
<string>Title</string>
</tuple>
<tuple>
<string>int_index</string>
<string>Int Index</string>
</tuple>
<tuple>
<string>parent_description</string>
<string>Description</string>
......@@ -106,14 +110,38 @@
<string>node_title</string>
<string>Account Name</string>
</tuple>
<tuple>
<string>node_account_type_title</string>
<string>Account Type</string>
</tuple>
<tuple>
<string>node_financial_section_title</string>
<string>Financial Section</string>
</tuple>
<tuple>
<string>section_title</string>
<string>Section</string>
</tuple>
<tuple>
<string>payment_title</string>
<string>Section Bank Account</string>
</tuple>
<tuple>
<string>payment_mode</string>
<string>Payment Mode</string>
</tuple>
<tuple>
<string>mirror_section_title</string>
<string>Third Party</string>
</tuple>
<tuple>
<string>mirror_payment_title</string>
<string>Third Party Bank Account</string>
</tuple>
<tuple>
<string>mirror_section_region_title</string>
<string>Third Party Region</string>
</tuple>
<tuple>
<string>function_title</string>
<string>Function</string>
......@@ -122,6 +150,14 @@
<string>project_title</string>
<string>Project</string>
</tuple>
<tuple>
<string>product_line</string>
<string>Product Line</string>
</tuple>
<tuple>
<string>string_index</string>
<string>String Index</string>
</tuple>
<tuple>
<string>date</string>
<string>Operation Date</string>
......
......@@ -107,7 +107,7 @@
<value>
<list>
<string>my_start_date</string>
<string>my_description</string>
<string>my_comment</string>
<string>my_translated_portal_type</string>
<string>my_translated_simulation_state_title</string>
</list>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_comment</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_comment</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -269,11 +269,8 @@
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<tuple>
<string>Products.Formulator.TALESField</string>
<string>TALESMethod</string>
</tuple>
<none/>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
......@@ -288,18 +285,15 @@
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<tuple>
<tuple>
<string>Products.Formulator.TALESField</string>
<string>TALESMethod</string>
</tuple>
<none/>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>here/AccountModule_getBankAccountItemList</string> </value>
<value> <string>python: \'Purchase\' in context.getPortalType() and context.AccountingTransaction_getDestinationPaymentItemList() or context.AccountingTransaction_getSourcePaymentItemList()</string> </value>
</item>
</dictionary>
</pickle>
......
2010-05-05 Jérome
* Add an action to add create an initial balance transaction, from an accounting period.
2010-04-09 Jérome
* Add an action to add multiple accounting lines
......
INSTALL:
INSTALL:
to use erp5_accounting, you have to use a localized version to have a chart of account in the gap category (or create it manually) then you must specify in a user preference which Organisation and group is your current company and which accounting plan you want to use.
\ No newline at end of file
1194
\ No newline at end of file
1211
\ No newline at end of file
......@@ -5,6 +5,7 @@ Account | jump_active_accounting_pref
Account | jump_to_accounting
Account | transaction_list
Account | view
Accounting Period | create_initial_balance_transaction
Accounting Period | create_secondary_periods
Accounting Period | jump_related_balance_transaction
Accounting Period | view
......@@ -48,6 +49,7 @@ Accounting Transaction | profile_view
Accounting Transaction | source_asset
Accounting Transaction | view
Balance Transaction Line | view
Balance Transaction | add_accounting_transaction_line
Balance Transaction | destination_asset
Balance Transaction | view
Bank Account | jump_active_accounting_pref
......
......@@ -13,7 +13,24 @@
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Delete_objects_Permission</string> </key>
<value>
<tuple>
<string>Manager</string>
<string>Owner</string>
</tuple>
......@@ -32,7 +49,6 @@
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
......@@ -111,6 +127,14 @@
<key> <string>preferred_date_order</string> </key>
<value> <string>ymd</string> </value>
</item>
<item>
<key> <string>preferred_html_style_access_tab</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>preferred_html_style_acknowledgeable_message</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>preferred_html_style_contextual_help</string> </key>
<value> <int>0</int> </value>
......@@ -123,6 +147,10 @@
<key> <string>preferred_html_style_translator_mode</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>preferred_html_style_unsaved_form_warning</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>preferred_listbox_list_mode_line_count</string> </key>
<value> <int>10</int> </value>
......@@ -131,6 +159,16 @@
<key> <string>preferred_listbox_view_mode_line_count</string> </key>
<value> <int>20</int> </value>
</item>
<item>
<key> <string>preferred_max_user_inactivity_duration</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>preferred_medium_image_height</string> </key>
<value> <int>480</int> </value>
</item>
<item>
<key> <string>preferred_report_format</string> </key>
<value>
......@@ -158,25 +196,13 @@
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<tuple>
<string>BTrees.Length</string>
<string>Length</string>
</tuple>
<none/>
</tuple>
<global name="Length" module="BTrees.Length"/>
</pickle>
<pickle> <int>0</int> </pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<tuple>
<tuple>
<string>BTrees.OOBTree</string>
<string>OOBTree</string>
</tuple>
<none/>
</tuple>
<global name="OOBTree" module="BTrees._OOBTree"/>
</pickle>
<pickle>
<none/>
......@@ -184,13 +210,7 @@
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<tuple>
<tuple>
<string>BTrees.OOBTree</string>
<string>OOBTree</string>
</tuple>
<none/>
</tuple>
<global name="OOBTree" module="BTrees._OOBTree"/>
</pickle>
<pickle>
<none/>
......
156
\ No newline at end of file
157
\ No newline at end of file
......@@ -9,6 +9,33 @@
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_folders_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Copy_or_Move_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_count</string> </key>
<value>
......@@ -34,7 +61,9 @@
<item>
<key> <string>acquisition_base_category</string> </key>
<value>
<tuple/>
<tuple>
<string>parent</string>
</tuple>
</value>
</item>
<item>
......@@ -53,7 +82,7 @@
</item>
<item>
<key> <string>acquisition_portal_type</string> </key>
<value> <string>python: []</string> </value>
<value> <string>python: context.getPortalPaymentConditionTypeList() + context.getPortalMovementTypeList() + context.getPortalDeliveryTypeList()</string> </value>
</item>
<item>
<key> <string>acquisition_sync_value</string> </key>
......@@ -79,7 +108,9 @@
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
<value>
<none/>
</value>
</item>
<item>
<key> <string>fallback_base_category</string> </key>
......
......@@ -59,7 +59,7 @@
<key> <string>method_id</string> </key>
<value>
<list>
<string>_setFile,</string>
<string>_setFile</string>
<string>_setTextContent</string>
</list>
</value>
......
725
\ No newline at end of file
727
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_body</string> </key>
<value> <string encoding="cdata"><![CDATA[
if discussion_post_uid is not None:\n
# set title & text_content\n
discussion_post = getattr(context, discussion_post_uid)\n
author_dict = discussion_post.DiscussionPost_getAuthorDict()\n
title = \'Re: %s\' %discussion_post.getTitle()\n
text_content = \'<blockquote>From: %s<br/>%s</blockquote>\' %(author_dict[\'author_title\'],\n
discussion_post.getTextContent())\n
context.REQUEST.set(\'discussion_post_title\', title)\n
context.REQUEST.set(\'discussion_post_text_content\', text_content)\n
\n
return context.DiscussionThread_viewCreateNewDiscussionPostDialog()\n
]]></string> </value>
</item>
<item>
<key> <string>_code</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>discussion_post_uid=None</string> </value>
</item>
<item>
<key> <string>errors</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>func_code</string> </key>
<value>
<object>
<klass>
<global name="FuncCode" module="Shared.DC.Scripts.Signature"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>co_argcount</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>co_varnames</string> </key>
<value>
<tuple>
<string>discussion_post_uid</string>
<string>None</string>
<string>getattr</string>
<string>context</string>
<string>discussion_post</string>
<string>_getattr_</string>
<string>author_dict</string>
<string>title</string>
<string>_getitem_</string>
<string>text_content</string>
</tuple>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>func_defaults</string> </key>
<value>
<tuple>
<none/>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>DiscussionThread_redirectCreateNewDiscussionPost</string> </value>
</item>
<item>
<key> <string>warnings</string> </key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -12,7 +12,9 @@
<item>
<key> <string>delegated_list</string> </key>
<value>
<list/>
<list>
<string>enabled</string>
</list>
</value>
</item>
<item>
......@@ -72,6 +74,10 @@
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>enabled</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_description</string> </value>
......
......@@ -13,11 +13,10 @@
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>title</string>
<string>default</string>
<string>css_class</string>
<string>text_editor</string>
<string>default</string>
<string>editable</string>
<string>title</string>
</list>
</value>
</item>
......@@ -85,12 +84,6 @@
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>text_editor</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
......@@ -126,10 +119,6 @@
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
<item>
<key> <string>text_editor</string> </key>
<value> <string>fck_editor</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Body</string> </value>
......@@ -151,27 +140,7 @@
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
python: " >%s" % (context.portal_catalog.getObject(here.DiscussionThread_getSelectedPost()).text_content.replace("<br />", "<br /> \\>"))
]]></string> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python:(here.portal_preferences.getPreferredTextFormat() == \'text/html\' and here.portal_preferences.getPreferreTextEditor()) or \'text_area\'d</string> </value>
<value> <string>python: context.REQUEST.get(\'discussion_post_text_content\',\'\')</string> </value>
</item>
</dictionary>
</pickle>
......
......@@ -84,6 +84,10 @@
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
......@@ -136,7 +140,7 @@
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: " Re: %s" % (context.portal_catalog.getObject(here.DiscussionThread_getSelectedPost()).title)</string> </value>
<value> <string>python: context.REQUEST.get(\'discussion_post_title\',\'\')</string> </value>
</item>
</dictionary>
</pickle>
......
......@@ -92,7 +92,7 @@
<string>Title</string>
</tuple>
<tuple>
<string>validation_state</string>
<string>translated_validation_state_title</string>
<string>State</string>
</tuple>
</list>
......
......@@ -148,24 +148,28 @@
tal:content="author_signature"/>\n
<hr/>\n
</tal:block>\n
\n
<input type="hidden" \n
name="good_uid" \n
tal:attributes="value event_uid; id python: \'listbox_cb_%s\' % (event_uid)">\n
<button tal:condition="isUserAllowedToPost" \n
type="submit" \n
title="Reply" \n
name="DiscussionThread_viewCreateNewDiscussionPostDialog:method"\n
class="discussion-post-action-button"\n
tal:attributes="onClick python: \'getElementById(\\\'listbox_cb_%s\\\').checked = true\' % (event_object.getUid())">\n
Reply\n
tal:attributes="onClick python: \'redirectCreateCitedNewDiscussionPost(\\\'%s\\\')\' %event_id">\n
Cited Reply\n
</button>\n
<button tal:condition="isUserAllowedToPost" \n
type="submit" \n
title="Reply" \n
name="DiscussionThread_redirectCreateNewDiscussionPost:method"\n
class="discussion-post-action-button">\n
New Reply\n
</button>\n
\n
<tal:block tal:condition="python:real_context.portal_membership.checkPermission(\'Delete objects\', event_object)">\n
<button type="submit" \n
title="Delete" \n
name="DiscussionThread_deleteDiscussionPost:method"\n
class="discussion-post-action-button"\n
tal:attributes="onClick python: \'deleteDiscussionPost(\\\'%s\\\')\' %event.getId()">\n
tal:attributes="onClick python: \'deleteDiscussionPost(\\\'%s\\\')\' %event_id">\n
Delete\n
</button>\n
</tal:block>\n
......
......@@ -15,7 +15,7 @@
</item>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts72458028.86</string> </value>
<value> <string>ts72891835.3</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
......@@ -89,7 +89,7 @@ a.discussion-post-creator-title-link{\n
}\n
\n
div.discussion-post-body-container{\n
/*float: left;*/\n
float: left;\n
margin-left: 10px;\n
margin-top: 10px;\n
margin-bottom: 10px;\n
......@@ -105,11 +105,18 @@ div.discussion-post-author-signature-container{\n
}\n
\n
button.discussion-post-action-button{\n
border: dashed 1px #3D6474; \n
background-color: #eee; \n
/*border: dashed 1px #3D6474; \n
background-color: #eee;\n
*/\n
padding: 3px;\n
}\n
</string> </value>
\n
blockquote {\n
background-color:#E9E9E9 ;\n
border:1px solid #8CACBB;\n
margin:5px;\n
padding:10px 15px;\n
}</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
......@@ -117,7 +124,7 @@ button.discussion-post-action-button{\n
</item>
<item>
<key> <string>size</string> </key>
<value> <int>1333</int> </value>
<value> <int>1442</int> </value>
</item>
<item>
<key> <string>title</string> </key>
......
......@@ -15,7 +15,7 @@
</item>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts69330662.3</string> </value>
<value> <string>ts72889188.39</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
......@@ -35,7 +35,19 @@
\'name\': \'delete_discussion_post_id\', \n
\'type\':\'hidden\'}));\n
clickSaveButton(\'DiscussionThread_deleteDiscussionPost\');\n
}</string> </value>
}\n
\n
function redirectCreateCitedNewDiscussionPost(id){\n
/* this will add respective input box for reply post id (so multiple reply buttons can \n
safely coexist in one HTML page with one HTML form */\n
appendChildNodes(document.forms[0], \n
INPUT({\'value\':id, \n
\'name\': \'discussion_post_uid\', \n
\'type\':\'hidden\'}));\n
clickSaveButton(\'DiscussionThread_redirectCreateNewDiscussionPost\');\n
}\n
\n
</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
......@@ -43,7 +55,7 @@
</item>
<item>
<key> <string>size</string> </key>
<value> <long>435</long> </value>
<value> <int>893</int> </value>
</item>
<item>
<key> <string>title</string> </key>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_text</string> </key>
<value> <string encoding="cdata"><![CDATA[
<tal:block\n
xmlns:tal="http://xml.zope.org/namespaces/tal"\n
xmlns:metal="http://xml.zope.org/namespaces/metal"\n
xmlns:i18n="http://xml.zope.org/namespaces/i18n"\n
tal:define="newline_to_br python:modules[\'Products.PythonScripts.standard\'].newline_to_br;\n
html_quote python:modules[\'Products.PythonScripts.standard\'].html_quote;\n
field_id here/getId;\n
form_id python: here.getForm().id;\n
selection_name here/getSelectionName;\n
requested_selection_name here/getRequestedSelectionName;\n
selection_index here/getSelectionIndex;\n
selection here/getSelection;\n
portal_url_string here/getPortalUrlString;\n
real_context here/getContext;\n
context_url real_context/getUrl;\n
md5_string here/getMD5Checksum;\n
line_list here/query;\n
is_domain_tree_mode here/isDomainTreeMode;\n
is_report_tree_mode here/isReportTreeMode;\n
is_domain_tree_supported here/isDomainTreeSupported;\n
is_report_tree_supported here/isReportTreeSupported;\n
show_select_column here/showSelectColumn;\n
show_search_line here/showSearchLine;\n
">\n
<!-- ListBox starts here. -->\n
<input type="hidden" name="list_selection_name" value="default" tal:attributes="value selection_name" />\n
<input type="hidden" name="list_selection_name" value="default"\n
tal:attributes="value selection_name;\n
name string:${field_id}_list_selection_name" />\n
<input tal:condition="md5_string" type="hidden" name="md5_object_uid_list" value="checksum" tal:attributes="value md5_string" />\n
\n
<tal:block tal:define="expand python: 0">\n
<tal:block metal:define-macro="ListBoxContainer">\n
<tal:block tal:condition="expand">\n
<tal:block tal:condition="not: is_domain_tree_mode">\n
<tal:block metal:define-slot="ListBoxBody" />\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
\n
<tal:block tal:define="expand python: 1">\n
<tal:block metal:use-macro="template/macros/ListBoxContainer">\n
<tal:block metal:fill-slot="ListBoxBody">\n
<table style="boder:solid 1px #eee; background-color:#fff; margin:20px;">\n
<tr style="margin:5px; padding:5px; background-color:#ffffff; height:22px;">\n
<td style="margin-right:5px; padding:3px;width:35px; height:22px; background-color:#EFF6FF;">\n
<span style="font: bold 1.1em Helvetica, Arial, sans-serif;color:#3D748C;">statut</span>\n
</td>\n
<td style="width:320px; background-color:#EFF6FF;margin-right:5px; padding:3px">\n
<span style="font: bold 1.1em Helvetica, Arial, sans-serif;color:#3D748C;">Titre</span>\n
</td>\n
\n
<td style="width:45px; background-color:#EFF6FF;margin-right:5px; padding:3px">\n
<span style="font: bold 1.1em Helvetica, Arial, sans-serif;color:#3D748C;">Replys</span>\n
</td>\n
<td style="width:40px; background-color:#EFF6FF;margin-right:5px; padding:3px">\n
<span style="font: bold 1.1em Helvetica, Arial, sans-serif;color:#3D748C;">Views</span>\n
</td>\n
<td style="background-color:#EFF6FF; width:450px; height:17px; padding:3px">\n
<span style="font: bold 1.1em Helvetica, Arial, sans-serif;color:#3D748C;">infos</span>\n
</td>\n
\n
</tr>\n
<tal:block tal:repeat="line line_list">\n
<tal:block tal:condition="python: not line_list.index(line) % 2">\n
<tr style="margin:5px; padding:5px; background-color:#ffffff; height:22px;"\n
tal:define="event line/getBrain;">\n
<td style="margin-right:5px; padding:3px;width:35px; height:22px; background-color:#ddd;" tal:content="python: event.getValidationState()"></td>\n
<td style="width:320px; background-color:#ddd;margin-right:5px; padding:3px">\n
<a tal:attributes="href event/getId"><span tal:content="event/getTitle" style="font: bold 1.1em Helvetica, Arial, sans-serif;color:#333;"></span></a>\n
</td>\n
\n
<td style="width:45px; background-color:#ddd;margin-right:5px; padding:3px">\n
<span tal:content="python: len(event.objectIds())"></span>\n
</td>\n
<td style="width:40px; background-color:#ddd;margin-right:5px; padding:3px">\n
<span>todo</span>\n
</td>\n
<td style="background-color:#ddd; width:450px; height:17px; padding:3px">\n
by <span tal:content="python: event.owner_info().get(\'id\')"></span> on <span tal:replace="event/getCreationDate"></span>\n
</td>\n
</tr> \n
</tal:block>\n
<tal:block tal:condition="python: line_list.index(line) % 2">\n
<tr style="margin:5px; padding:5px; background-color:#ffffff; height:22px;"\n
tal:define="event line/getBrain;">\n
<td style="margin-right:5px; padding:3px;width:35px; height:22px; background-color:#eee;" tal:content="python: event.getValidationState()"></td>\n
<td style="width:320px; background-color:#eee;margin-right:5px; padding:3px">\n
<a tal:attributes="href event/getId"><span tal:content="event/getTitle" style="font: bold 1.1em Helvetica, Arial, sans-serif;color:#333;"></span></a>\n
</td>\n
\n
<td style="width:45px; background-color:#eee;margin-right:5px; padding:3px">\n
<span tal:content="python: len(event.objectIds())"></span>\n
</td>\n
<td style="width:40px; background-color:#eee;margin-right:5px; padding:3px">\n
<span>todo</span>\n
</td>\n
<td style="background-color:#eee; width:450px; height:17px; padding:3px">\n
by <span tal:content="python: event.owner_info().get(\'id\')"></span> on <span tal:replace="event/getCreationDate"></span>\n
</td>\n
</tr> \n
</tal:block>\n
</tal:block>\n
<tr><td>\n
<button type="submit" title="Post" name="DiscussionThread_viewNewPostDialog:method" style="background-color:#fff; margin:5px; border:solid 1px #DAE6F6">\n
<span>New Thread</span>\n
</button>\n
</td></tr>\n
</table>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
<!-- ListBox ends here. -->\n
\n
</tal:block>\n
]]></string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>expand</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>ListBox_asThreadStyleHTML_OLD</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
47
\ No newline at end of file
53
\ No newline at end of file
......@@ -37,7 +37,7 @@
</chain>
<chain>
<type>Text</type>
<workflow>document_interaction_workflow, document_publication_workflow, edit_workflow, local_permission_interaction_workflow, processing_status_workflow</workflow>
<workflow>cached_convertible_interaction_workflow, document_interaction_workflow, document_publication_workflow, edit_workflow, local_permission_interaction_workflow, processing_status_workflow</workflow>
</chain>
<chain>
<type>URL Crawler</type>
......@@ -47,4 +47,4 @@
<type>Web Page</type>
<workflow>-publication_workflow, document_interaction_workflow, document_publication_workflow, local_permission_interaction_workflow</workflow>
</chain>
</workflow_chain>
\ No newline at end of file
</workflow_chain>
1124
\ No newline at end of file
1125
......@@ -5,6 +5,7 @@
</portal_type>
<portal_type id="Invoice Simulation Rule">
<item>Category Divergence Tester</item>
<item>Mapped Property</item>
<item>Property Divergence Tester</item>
<item>Quantity Divergence Tester</item>
</portal_type>
......@@ -18,6 +19,7 @@
<portal_type id="Invoice Transaction Simulation Rule">
<item>Accounting Rule Cell</item>
<item>Category Divergence Tester</item>
<item>Mapped Property</item>
<item>Predicate</item>
<item>Property Divergence Tester</item>
<item>Quantity Divergence Tester</item>
......@@ -42,6 +44,7 @@
</portal_type>
<portal_type id="Trade Model Simulation Rule">
<item>Category Divergence Tester</item>
<item>Mapped Property</item>
<item>Property Divergence Tester</item>
<item>Quantity Divergence Tester</item>
</portal_type>
......
......@@ -49,11 +49,15 @@
</item>
<item>
<key> <string>init_script</string> </key>
<value> <string></string> </value>
<value>
<none/>
</value>
</item>
<item>
<key> <string>permission</string> </key>
<value> <string></string> </value>
<value>
<none/>
</value>
</item>
<item>
<key> <string>title</string> </key>
......
......@@ -51,11 +51,15 @@
</item>
<item>
<key> <string>init_script</string> </key>
<value> <string></string> </value>
<value>
<none/>
</value>
</item>
<item>
<key> <string>permission</string> </key>
<value> <string></string> </value>
<value>
<none/>
</value>
</item>
<item>
<key> <string>title</string> </key>
......
......@@ -42,7 +42,9 @@
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
<value>
<none/>
</value>
</item>
<item>
<key> <string>factory</string> </key>
......@@ -66,11 +68,15 @@
</item>
<item>
<key> <string>init_script</string> </key>
<value> <string></string> </value>
<value>
<none/>
</value>
</item>
<item>
<key> <string>permission</string> </key>
<value> <string></string> </value>
<value>
<none/>
</value>
</item>
<item>
<key> <string>title</string> </key>
......
2010-05-05 yo
* Allow several simulation rules to have Mapped Property.
2010-04-07 yusei
* Fix python scripts which ids were wrong.
......
355
\ No newline at end of file
356
\ No newline at end of file
Invoice Line | Invoice Cell
Invoice Line | Invoice Line
Invoice Simulation Rule | Category Divergence Tester
Invoice Simulation Rule | Mapped Property
Invoice Simulation Rule | Property Divergence Tester
Invoice Simulation Rule | Quantity Divergence Tester
Invoice Transaction Rule | Accounting Rule Cell
......@@ -10,6 +11,7 @@ Invoice Transaction Rule | Property Divergence Tester
Invoice Transaction Rule | Quantity Divergence Tester
Invoice Transaction Simulation Rule | Accounting Rule Cell
Invoice Transaction Simulation Rule | Category Divergence Tester
Invoice Transaction Simulation Rule | Mapped Property
Invoice Transaction Simulation Rule | Predicate
Invoice Transaction Simulation Rule | Property Divergence Tester
Invoice Transaction Simulation Rule | Quantity Divergence Tester
......@@ -26,5 +28,6 @@ Trade Model Rule | Category Divergence Tester
Trade Model Rule | Property Divergence Tester
Trade Model Rule | Quantity Divergence Tester
Trade Model Simulation Rule | Category Divergence Tester
Trade Model Simulation Rule | Mapped Property
Trade Model Simulation Rule | Property Divergence Tester
Trade Model Simulation Rule | Quantity Divergence Tester
\ No newline at end of file
......@@ -145,7 +145,7 @@ for line in kw.get(\'listbox\'):\n
movement_to_update = context\n
\n
if item not in movement_to_update.getAggregateValueList():\n
movement_to_update.setAggregateValueSet(\n
movement_to_update.setAggregateValueList(\n
movement_to_update.getAggregateValueList() + [item])\n
\n
\n
......
187
\ No newline at end of file
188
\ No newline at end of file
......@@ -52,10 +52,19 @@ body{\n
font-size:0.7em;\n
}\n
\n
/* ERP5 Discussion Thread support */\n
blockquote {\n
background-color:#E9E9E9;\n
border:1px solid #8CACBB;\n
margin:5px;\n
padding:10px 15px;\n
\n
}\n
\n
/* add here all css you want to use inside the fck_editor.\n
In a first step we decide to use no style, in this way, the user \n
writing documentation don\'t care about the style only the content. */
writing documentation don\'t care about the style only the content. */\n
]]></string> </value>
</item>
......
......@@ -55,7 +55,7 @@
\n
body {\n
\n
background: url(../km_img/bg.png) repeat-x #e9e9e9;\n
background: #e9e9e9;\n
\n
}\n
\n
......@@ -68,7 +68,7 @@ body {\n
\n
#header {\n
\n
\tcolor:#fff;\n
\tcolor:#a8a799;\n
\n
}\n
\n
......@@ -78,19 +78,7 @@ body {\n
\n
}\n
\n
#menu {\n
\n
\tbackground: url(../km_img/header.png) repeat-x #373737;\n
\tborder-bottom:1px solid #080808;\n
\n
}\n
\n
#wrapper_path {\n
\n
\tbackground: url(../km_img/bg.png) repeat-x #373737;\n
\tbackground-position: 0 -43px;\n
\n
}\n
\n
::selection {\n
\tbackground:#aaa;\n
......@@ -359,9 +347,9 @@ a:hover { color: #000; }\n
\n
#header a:link, #header a:active, #header a:visited {\n
\n
\tcolor:#fff;\n
\tcolor:#a8a799;\n
\tfont-weight:bold;\n
\n
\ttext-shadow: 0 1px 0 #fff;\n
}\n
\n
#header .meta div a:link, #header .meta div a:active, #header .meta div a:visited {\n
......@@ -567,10 +555,10 @@ button#input-save-view span.image {\n
/* ## form styling #################################### start # */\n
\n
.search_button {\n
\n
/*\n
\tbackground: url(../km_img/bt-qsearch.gif) no-repeat transparent;\n
\ttext-indent:-999999px;\n
\n
*/\n
}\n
\n
.search_button:hover {\n
......
......@@ -15,7 +15,7 @@
</item>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts72636776.07</string> </value>
<value> <string>ts72871051.16</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
......@@ -547,7 +547,23 @@ div.gadget-subsection ul{\n
padding: 0.5em;\n
}\n
\n
</string> </value>
/* Hide title in gadget list mode as it usually duplicates gadget title */\n
fieldset.gadget div.list_style a.title{\n
display: none;\n
}\n
\n
/* Decrease padding for gadgets\' text */\n
fieldset.gadget div.text{\n
padding: 3px!important;\n
}\n
\n
/* Gadget My Documents */\n
div.gadget-my-documents{\n
}\n
\n
/* Gadget Latest Documents */\n
div.gadget-latest-documents{\n
}</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
......@@ -555,7 +571,7 @@ div.gadget-subsection ul{\n
</item>
<item>
<key> <string>size</string> </key>
<value> <int>9442</int> </value>
<value> <int>9787</int> </value>
</item>
<item>
<key> <string>title</string> </key>
......
......@@ -221,7 +221,7 @@ fieldset.right {\n
\twidth:22.5%;\n
\tposition:relative;\n
margin-left: 19px;\n
padding-top: 15px;\n
padding-top: 10px;\n
\n
}\n
\n
......@@ -339,7 +339,7 @@ button, select, input {\n
\tfloat:left;\n
\twidth:100%;\n
\tmargin:0;\n
\tpadding:0;\n
\tpadding:10px 0 0 0;\n
\tz-index: 1;\n
\n
}\n
......@@ -389,7 +389,7 @@ button, select, input {\n
\tdisplay: block;\n
\tclear: both;\n
\twidth:100%;\n
padding: 10px 0;\n
padding: 5px 0;\n
\n
}\n
\n
......@@ -1038,7 +1038,9 @@ margin-top:11px;\n
\tpadding:0;\n
\twidth:20px;\n
\theight:20px;\n
\n
\tbackground: url(../km_img/bt-qsearch.gif) no-repeat transparent;\n
\tdisplay:block;\n
\ttext-indent:-999999px;\n
}\n
\n
#menu .navbar fieldset,\n
......@@ -1236,7 +1238,6 @@ button.bt-med span img {\n
\n
#km_left {\n
\n
padding-top: 15px;\n
float: left;\n
width:75%;\n
\n
......
......@@ -94,8 +94,9 @@
\n
#menu ul.nav li:hover a {\n
\n
background-color: #a8a799;\n
color:#fff;\n
background: url(../km_img/nav-hover.png) repeat-x transparent;\n
text-shadow: 0 1px 0 #7a7964;\n
\n
}\n
\n
......@@ -113,7 +114,6 @@
\n
#menu ul.nav li:hover ul li a {\n
\n
border-bottom: 1px solid #999999;\n
text-align:left;\n
display:block;\n
background:#818363;\n
......
......@@ -110,7 +110,7 @@
\n
}\n
\n
.document > .content .homebanner ul li {\n
.homebanner ul li {\n
\n
\tmargin:0;\n
\tpadding: 7px 10px 7px 30px;\n
......@@ -158,7 +158,7 @@
\n
}\n
\n
.document > .content .homebanner ul li {\n
.homebanner ul li {\n
\t\n
\tlist-style-image: none;\n
\tlist-style-type: none;\n
......
......@@ -16,6 +16,7 @@
<string>all_columns</string>
<string>columns</string>
<string>count_method</string>
<string>css_class</string>
<string>domain_root_list</string>
<string>domain_tree</string>
<string>editable_columns</string>
......@@ -149,6 +150,10 @@
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>css_class</string> </key>
<value> <string>hidden_label gadget-my-documents</string> </value>
</item>
<item>
<key> <string>domain_root_list</string> </key>
<value>
......
1355
\ No newline at end of file
1363
\ No newline at end of file
......@@ -59,7 +59,7 @@ params = selection.getParams()\n
readItemList = params.get(\'rss_read_item:list\', {})\n
readItemList[item]=\'\'\n
params[\'rss_read_item:list\'] = readItemList\n
portal_selection.setSelectionParamsFor(selection_name, {\'rss_read_item:list\':params[\'rss_read_item:list\']})\n
portal_selection.setSelectionParamsFor(selection_name, params)\n
</string> </value>
</item>
<item>
......@@ -106,7 +106,6 @@ portal_selection.setSelectionParamsFor(selection_name, {\'rss_read_item:list\':p
<string>params</string>
<string>readItemList</string>
<string>_write_</string>
<string>_getitem_</string>
</tuple>
</value>
</item>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<tuple>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_body</string> </key>
<value> <string>"""\n
Returns a random page in a given Web Section. This Gadget\n
renderer can be used asynchronously only for now. \n
\n
web_section_url -- a relative URL to the web section\n
(relative to portal or to site)\n
"""\n
import random\n
request = context.REQUEST\n
portal = context.getPortalObject()\n
\n
# Find the box if this gadget is asynchronous\n
# XXX-JPS: this could show that the script is \n
# not called on the appropriate context\n
# ie. the box. Discussion is needed here\n
# in order to make widgets and gadgets\n
# consistent (ie. develop once)\n
# --\n
# The biggest issue in current design\n
# is that all calls are made at the level\n
# of the site or at the level of the portal\n
# by passing a parameter to the object to\n
# edit. This is clearly againt object orientation\n
if box_relative_url:\n
box = portal.restrictedTraverse(box_relative_url)\n
\n
# Get the preferences (some casting of preferences would \n
# probably be a good thing here so that there is no need\n
# to cas them later)\n
preferences = box.KnowledgeBox_getDefaultPreferencesDict()\n
\n
if web_section_url is None:\n
web_section_url = preferences.get(\'web_section_url\', \'\') # XXX-JPS - Why do we have to do casting ? (used to be str()\n
\n
# Try to find the web site else use the portal\n
current_web_site = request.get(\'current_web_site\', None)\n
if current_web_site is None and parent_web_section_url is not None:\n
# XXX-JPS This shows inconsistent API between async and non async mode\n
# Some unification is needed\n
current_web_site = portal.restrictedTraverse(parent_web_section_url).getWebSiteValue()\n
if current_web_site is None:\n
current_web_site = portal\n
\n
# Try to find the real section\n
web_section = current_web_site.restrictedTraverse(web_section_url)\n
\n
# Select a random page in the web section\n
if web_section is not None:\n
web_page_list = web_section.getDocumentValueList()\n
web_page_len = len(web_page_list)\n
if web_page_len:\n
web_page_index = random.randint(0, web_page_len - 1)\n
return web_page_list[web_page_index].asStrippedHTML()\n
\n
return \'\' # Nothing to display\n
</string> </value>
</item>
<item>
<key> <string>_code</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>box=None, box_relative_url=None, is_gadget_mode=0, parent_web_section_url=None, editable_mode=None, web_section_url=None</string> </value>
</item>
<item>
<key> <string>errors</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>func_code</string> </key>
<value>
<object>
<klass>
<global name="FuncCode" module="Shared.DC.Scripts.Signature"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>co_argcount</string> </key>
<value> <int>6</int> </value>
</item>
<item>
<key> <string>co_varnames</string> </key>
<value>
<tuple>
<string>box</string>
<string>box_relative_url</string>
<string>is_gadget_mode</string>
<string>parent_web_section_url</string>
<string>editable_mode</string>
<string>web_section_url</string>
<string>random</string>
<string>_getattr_</string>
<string>context</string>
<string>request</string>
<string>portal</string>
<string>preferences</string>
<string>None</string>
<string>current_web_site</string>
<string>web_section</string>
<string>web_page_list</string>
<string>len</string>
<string>web_page_len</string>
<string>web_page_index</string>
<string>_getitem_</string>
</tuple>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>func_defaults</string> </key>
<value>
<tuple>
<none/>
<none/>
<int>0</int>
<none/>
<none/>
<none/>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>ERP5Site_viewRandomPageGadget</string> </value>
</item>
<item>
<key> <string>warnings</string> </key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -38,11 +38,17 @@
</item>
<item>
<key> <string>action</string> </key>
<value> <string>SupportRequest_viewSupportRequestAndEvent</string> </value>
<value> <string>Base_edit</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
<value> <string>Auto generated form</string> </value>
</item>
<item>
<key> <string>edit_order</string> </key>
<value>
<list/>
</value>
</item>
<item>
<key> <string>encoding</string> </key>
......@@ -71,15 +77,15 @@
<item>
<key> <string>bottom</string> </key>
<value>
<list>
<string>listbox</string>
</list>
<list/>
</value>
</item>
<item>
<key> <string>center</string> </key>
<value>
<list/>
<list>
<string>my_title</string>
</list>
</value>
</item>
<item>
......@@ -92,9 +98,7 @@
<key> <string>left</string> </key>
<value>
<list>
<string>my_title</string>
<string>my_translated_simulation_state_title</string>
<string>my_resource_title</string>
<string>my_web_section_url</string>
</list>
</value>
</item>
......@@ -109,7 +113,7 @@
</item>
<item>
<key> <string>id</string> </key>
<value> <string>SupportRequest_viewSupportRequestAndEvent</string> </value>
<value> <string>ERP5Site_viewRandomPageGadgetPreferenceDialog</string> </value>
</item>
<item>
<key> <string>method</string> </key>
......@@ -117,11 +121,11 @@
</item>
<item>
<key> <string>name</string> </key>
<value> <string>ERP5Site_viewSupportRequestForExpressCustomerDialog</string> </value>
<value> <string>Gadget_editERP5Person</string> </value>
</item>
<item>
<key> <string>pt</string> </key>
<value> <string>form_view</string> </value>
<value> <string>gadget_preference_form_view</string> </value>
</item>
<item>
<key> <string>row_length</string> </key>
......@@ -133,7 +137,7 @@
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Post Reply</string> </value>
<value> <string></string> </value>
</item>
<item>
<key> <string>unicode_mode</string> </key>
......
......@@ -121,7 +121,9 @@
</item>
<item>
<key> <string>default</string> </key>
<value> <string></string> </value>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>description</string> </key>
......@@ -208,11 +210,11 @@
</item>
<item>
<key> <string>display_width</string> </key>
<value> <int>40</int> </value>
<value> <int>20</int> </value>
</item>
<item>
<key> <string>editable</string> </key>
<value> <int>0</int> </value>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>enabled</string> </key>
......@@ -240,11 +242,11 @@
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Title</string> </value>
<value> <string>Gadget Title</string> </value>
</item>
<item>
<key> <string>truncate</string> </key>
<value> <int>1</int> </value>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>unicode</string> </key>
......@@ -260,4 +262,20 @@
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<tuple>
<global name="TALESMethod" module="Products.Formulator.TALESField"/>
<tuple/>
</tuple>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: context.hasTitle() and context.getTitle() or \'\'</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -11,7 +11,7 @@
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>my_title</string> </value>
<value> <string>my_web_section_url</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
......@@ -200,7 +200,7 @@
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
<value> <string>A relative or absolute path to the Web Section which pages should be displayed randomly. Usually, this is a hidden Web Section designed to display ads through appropriate predicate settings</string> </value>
</item>
<item>
<key> <string>display_maxwidth</string> </key>
......@@ -212,7 +212,7 @@
</item>
<item>
<key> <string>editable</string> </key>
<value> <int>0</int> </value>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>enabled</string> </key>
......@@ -240,11 +240,11 @@
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Title</string> </value>
<value> <string>Web Section URL</string> </value>
</item>
<item>
<key> <string>truncate</string> </key>
<value> <int>1</int> </value>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>unicode</string> </key>
......
510
\ No newline at end of file
511
\ No newline at end of file
......@@ -382,6 +382,9 @@ msgstr "Compte"
msgid "Account ${account_title} is not validated."
msgstr "Le compte ${account_title} n'est pas validé."
msgid "Account Code"
msgstr "N° de compte"
msgid "Account Module"
msgstr "Module des comptes"
......@@ -2791,6 +2794,9 @@ msgstr "Créer une page web par défaut"
msgid "Create Document"
msgstr "Créer un document"
msgid "Create Initial Balance Transaction"
msgstr "Créer la première écriture d'ouverture"
msgid "Create Module"
msgstr "Créer un module"
......@@ -2898,6 +2904,16 @@ msgstr "Permet de diviser une livraison en créant plusieurs envois."
msgid "Creating"
msgstr "Création en cours"
msgid ""
"Creating a balance transaction is only required to set openning balances for "
"the first period. Balance Transaction will be created automatically when "
"closing accounting periods."
msgstr ""
"La première écriture d'ouverture n'est nécessaire uniquement que pour "
"positionner les soldes initiaux de la première période. Pour les années "
"suivantes, les écritures de reprise des à nouveaux seront crées "
"automatiquement lors de la clôture des périodes comptables."
msgid "Creation Date"
msgstr "Date de création"
......
130
\ No newline at end of file
131
\ No newline at end of file
<registered_skin_selection>
<skin_folder_selection>
<skin_folder>erp5_ods_style</skin_folder>
<skin_selection>ODS</skin_selection>
</skin_folder_selection>
</registered_skin_selection>
\ No newline at end of file
......@@ -13,16 +13,6 @@
<key> <string>_local_properties</string> </key>
<value>
<tuple>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>business_template_registered_skin_selections</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>tokens</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
......@@ -42,14 +32,6 @@
<tuple/>
</value>
</item>
<item>
<key> <string>business_template_registered_skin_selections</string> </key>
<value>
<tuple>
<string>ODS</string>
</tuple>
</value>
</item>
<item>
<key> <string>business_template_skin_layer_priority</string> </key>
<value> <float>10.0</float> </value>
......
......@@ -109,7 +109,7 @@
<tal:block tal:condition="python: same_type(value, []) or same_type(value, ())">\n
<tal:block tal:repeat="item value">\n
<text:p tal:condition="not:item_list" tal:content="item"></text:p>\n
<text:p tal:condition="item_list" tal:content="python: [i[0] for i in item_list if i[1] == item][0]"></text:p>\n
<text:p tal:condition="item_list" tal:on-error="item" tal:content="python: [i[0] for i in item_list if i[1] == item][0]"></text:p>\n
</tal:block>\n
</tal:block>\n
<tal:block tal:condition="python: (not (same_type(value, []) or same_type(value, ()))) and value is not None">\n
......
......@@ -50,7 +50,7 @@
xmlns:metal=\'http://xml.zope.org/namespaces/metal\'\n
tal:attributes=\'dummy python:request.RESPONSE.setHeader("Content-Type", "text/html;; charset=utf-8")\'\n
office:version=\'1.0\'\n
tal:define="global frame_width python:25.8" metal:define-macro="master"\n
metal:define-macro="master"\n
i18n:domain="erp5_ui">\n
<tal:block metal:use-macro="here/style_macros/macros/style_macro"/>\n
<office:body>\n
......@@ -58,56 +58,21 @@
<table:table table:style-name=\'ta1\' table:print=\'false\' tal:attributes="table:name here/getTitle" i18n:attributes="table:name">\n
<tal:block metal:define-macro="form_layout"\n
tal:define="dummy python: request.set(\'here\', here);\n
global display_header display_header|python:True;\n
listbox form/listbox | nothing;">\n
<tal:block tal:condition="listbox">\n
<tal:block metal:use-macro="here/listbox_ods_macro/macros/listbox">\n
<tal:block metal:fill-slot="list_header">\n
<tal:block tal:repeat="column_item listboxline/getColumnItemList"> \n
<tal:block tal:define="column_property python: column_item[1]; column_id python: column_item[0]">\n
<table:table-column table:style-name=\'co2\' table:default-cell-style-name=\'report-column-title\'/>\n
</tal:block>\n
</tal:block>\n
<table:table-header-rows>\n
<table:table-row table:style-name=\'ro4\'>\n
<tal:block tal:condition="python: is_report_tree_mode">\n
<table:table-cell table:style-name=\'report-column-title\' table:number-columns-spanned=\'1\' office:value-type=\'string\' >\n
<tal:block tal:condition="listboxline/getSectionName">\n
<text:p tal:content="python: here.Localizer.erp5_ui.gettext(listboxline.getSectionName()).encode(\'utf-8\')"/>\n
</tal:block>\n
</table:table-cell>\n
</tal:block>\n
<tal:block tal:condition="listboxline/isTitleLine">\n
<tal:block tal:repeat="column_item listboxline/getColumnItemList">\n
<tal:block tal:define="column_property python: column_item[1]; column_id python: column_item[0]">\n
<tal:block tal:condition="python: column_property is not None" >\n
<table:table-cell table:number-rows-spanned=\'1\' table:style-name=\'report-column-title\' table:number-columns-spanned=\'1\' office:value-type=\'string\' >\n
<text:p i18n:translate="" i18n:domain="ui" tal:content="column_property">\n
</text:p>\n
</table:table-cell>\n
</tal:block>\n
<tal:block tal:condition="python: column_property is None">\n
<table:table-cell table:number-rows-spanned=\'1\' table:style-name=\'report-column-title\' table:number-colwithdrawnumns-spanned=\'1\' office:value-type=\'string\'>\n
<text:p tal:content="python: \'\'">\n
</text:p>\n
</table:table-cell>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</table:table-row>\n
</table:table-header-rows>\n
</tal:block>\n
<tal:block metal:fill-slot=\'table_bottom_line\'>\n
<tal:block metal:fill-slot=\'table_bottom_line\' \n
tal:define="global display_header python:False;">\n
<tal:block tal:replace="nothing"> don\'t write bottom line in case of this form_list, \'Page Format\' of OOo works instead of it.</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</table:table>\n
</office:spreadsheet>\n
</office:body>\n
</office:document-content>\n
</office:document-content>
]]></string> </value>
</item>
......
......@@ -62,9 +62,8 @@ dQEAAAAA</string> </value>
table:default-cell-style-name=\'report-column-title\'/>\n
\n
<!-- macro form_layout -->\n
<tal:block metal:define-macro="form_layout">\n
<tal:block metal:define-macro="form_layout" tal:define="display_header python:False">\n
<tal:block tal:define="global group_list python:form.get_groups()"/>\n
<!-- Use the user preferences -->\n
<tal:block tal:repeat="group python: [g for g in group_list if g not in (\'hidden\', )]">\n
<tal:block tal:define="field_list python: form.get_fields_in_group(group)">\n
<tal:block tal:condition="python: field_list not in [None, []]">\n
......
......@@ -47,7 +47,7 @@
<tal:block metal:use-macro="here/style_macros/macros/style_macro"/>\n
<office:scripts/>\n
\n
<office:body metal:define-macro="form_layout">\n
<office:body>\n
<office:spreadsheet>\n
\n
<tal:block metal:define-macro="listbox_line">\n
......@@ -55,47 +55,8 @@
<tal:block tal:condition="python: listbox_line_structure[\'line\'] is not None"\n
tal:define="listboxline python: listbox_line_structure[\'line\']">\n
\n
<tal:block metal:define-slot="for_form_list"\n
tal:condition="listboxline/isTitleLine">\n
<tal:block metal:define-slot="list_header">\n
<table:table-row table:style-name=\'ro4\'>\n
<tal:block tal:condition="python: is_report_tree_mode">\n
<table:table-cell table:style-name=\'report-column-title\'\n
table:number-columns-spanned=\'1\'\n
office:value-type=\'string\'>\n
<tal:block tal:condition="listboxline/getSectionName">\n
<text:p tal:content="listboxline/getSectionName"/>\n
</tal:block>\n
</table:table-cell>\n
<tal:block tal:repeat="empty_index python: xrange(0, max_section_depth-1)">\n
<table:table-cell table:style-name=\'report-column-title\'\n
table:number-columns-spanned=\'1\'\n
office:value-type=\'string\'>\n
</table:table-cell>\n
</tal:block>\n
</tal:block>\n
\n
<tal:block tal:condition="listboxline/isTitleLine">\n
<tal:block tal:repeat="column_item listboxline/getColumnItemList">\n
<tal:block tal:define="column_property python: column_item[1];\n
column_id python: column_item[0]">\n
<table:table-cell table:number-rows-spanned=\'1\' \n
table:style-name=\'report-column-title\'\n
table:number-columns-spanned=\'1\'\n
office:value-type=\'string\'>\n
<text:p i18n:translate="" i18n:domain="ui"\n
tal:content="python: column_property or \'\'">\n
</text:p>\n
</table:table-cell>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</table:table-row>\n
</tal:block>\n
</tal:block>\n
\n
<!-- title line itself is rendered in listbox_ods_macro --> \n
<tal:block tal:condition="not:listboxline/isTitleLine">\n
\n
<table:table-row>\n
<tal:block tal:condition="python: listboxline.isDataLine()">\n
<tal:block tal:repeat="empty_index python: xrange(0, max_section_depth)">\n
......
......@@ -65,13 +65,48 @@
max_section_depth python: max([x.getSectionDepth() for x in listboxline_list]) + int(is_report_tree_mode);\n
" i18n:domain="ui">\n
\n
<!-- Define a slot specific for form_list, because in list mode we want to use a \n
<table:table-header-rows> so that header is repeated on all pages, and we can\'t\n
do this in form_view, because only one table-header-rows is allowed in <table:table>.\n
-->\n
<tal:block metal:define-slot="for_form_list"\n
tal:condition="listboxline/isTitleLine">\n
<tal:block metal:define-slot="list_header">\n
<tal:block tal:condition="listboxline/isTitleLine">\n
\n
<tal:block tal:condition="display_header | nothing">\n
<tal:block tal:repeat="column_item listboxline/getColumnItemList">\n
<tal:block tal:define="column_property python: column_item[1]; column_id python: column_item[0]">\n
<table:table-column table:style-name=\'co2\'\n
table:default-cell-style-name=\'report-column-title\'/>\n
</tal:block>\n
</tal:block> \n
\n
<table:table-header-rows>\n
<table:table-row table:style-name=\'ro4\'>\n
<tal:block tal:condition="python: is_report_tree_mode">\n
<table:table-cell table:style-name=\'report-column-title\' table:number-columns-spanned=\'1\' office:value-type=\'string\' >\n
<tal:block tal:condition="listboxline/getSectionName">\n
<text:p tal:content="python: here.Localizer.erp5_ui.gettext(listboxline.getSectionName()).encode(\'utf-8\')"/>\n
</tal:block>\n
</table:table-cell>\n
</tal:block>\n
<tal:block tal:condition="listboxline/isTitleLine">\n
<tal:block tal:repeat="column_item listboxline/getColumnItemList">\n
<tal:block tal:define="column_property python: column_item[1]; column_id python: column_item[0]">\n
<tal:block tal:condition="python: column_property is not None" >\n
<table:table-cell table:number-rows-spanned=\'1\' table:style-name=\'report-column-title\' table:number-columns-spanned=\'1\' office:value-type=\'string\' >\n
<text:p i18n:translate="" i18n:domain="ui" tal:content="column_property">\n
</text:p>\n
</table:table-cell>\n
</tal:block>\n
<tal:block tal:condition="python: column_property is None">\n
<table:table-cell table:number-rows-spanned=\'1\' table:style-name=\'report-column-title\' table:number-colwithdrawnumns-spanned=\'1\' office:value-type=\'string\'>\n
<text:p tal:content="python: \'\'">\n
</text:p>\n
</table:table-cell>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</tal:block>\n
</table:table-row>\n
</table:table-header-rows>\n
</tal:block>\n
\n
<tal:block tal:condition="not:display_header">\n
<table:table-row table:style-name=\'ro4\'>\n
<tal:block tal:repeat="empty_index python: xrange(0, max_section_depth)">\n
<table:table-cell table:style-name=\'report-column-title\'\n
......@@ -92,7 +127,7 @@
</tal:block>\n
</tal:block>\n
</table:table-row>\n
</tal:block>\n
</tal:block> \n
</tal:block>\n
\n
<tal:block metal:use-macro="here/listbox_line_ods_macro/macros/listbox_line"/>\n
......
233
\ No newline at end of file
238
\ No newline at end of file
erp5_ods_style | ODS
\ No newline at end of file
<registered_skin_selection>
<skin_folder_selection>
<skin_folder>erp5_odt_style</skin_folder>
<skin_selection>ODT</skin_selection>
</skin_folder_selection>
</registered_skin_selection>
\ No newline at end of file
......@@ -13,16 +13,6 @@
<key> <string>_local_properties</string> </key>
<value>
<tuple>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>business_template_registered_skin_selections</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>tokens</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
......@@ -42,14 +32,6 @@
<tuple/>
</value>
</item>
<item>
<key> <string>business_template_registered_skin_selections</string> </key>
<value>
<tuple>
<string>ODT</string>
</tuple>
</value>
</item>
<item>
<key> <string>business_template_skin_layer_priority</string> </key>
<value> <float>10.0</float> </value>
......
91
\ No newline at end of file
102
\ No newline at end of file
erp5_odt_style | ODT
\ No newline at end of file
......@@ -122,7 +122,7 @@
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: here.getQuantityPrecisionFromResource(here.getInternalSupplyLinePriceCurrency())</string> </value>
<value> <string>here/getInternalSupplyLinePricePrecision</string> </value>
</item>
</dictionary>
</pickle>
......
......@@ -122,7 +122,7 @@
<dictionary>
<item>
<key> <string>_text</string> </key>
<value> <string>python: here.getQuantityPrecisionFromResource(here.getPurchaseSupplyLinePriceCurrency())</string> </value>
<value> <string>here/getPurchaseSupplyLinePricePrecision</string> </value>
</item>
</dictionary>
</pickle>
......
......@@ -106,6 +106,7 @@
<string>my_internal_supply_line_destination_title</string>
<string>my_internal_supply_line_destination_reference</string>
<string>my_internal_supply_line_base_price</string>
<string>my_internal_supply_line_base_unit_price</string>
<string>my_internal_supply_line_price_currency</string>
<string>my_internal_supply_line_source_account</string>
<string>my_internal_supply_line_priced_quantity</string>
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment