diff --git a/bt5/erp5_computer_immobilisation/SkinTemplateItem/portal_skins/erp5_computer_immobilisation/Computer_applyComputerModel.xml b/bt5/erp5_computer_immobilisation/SkinTemplateItem/portal_skins/erp5_computer_immobilisation/Computer_applyComputerModel.xml new file mode 100644 index 0000000000000000000000000000000000000000..2b7e8bb0ab859b1fe237f910dea8b8d80502b170 --- /dev/null +++ b/bt5/erp5_computer_immobilisation/SkinTemplateItem/portal_skins/erp5_computer_immobilisation/Computer_applyComputerModel.xml @@ -0,0 +1,112 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <global name="PythonScript" module="Products.PythonScripts.PythonScript"/> + </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>computer = context\n +Base_translateString = context.Base_translateString\n +computer_model_portal_type = \'Computer Model\'\n +\n +computer_model = computer.getSpecialiseValue(\n + portal_type=computer_model_portal_type)\n +\n +if computer_model is None:\n + message = Base_translateString(\'No Computer Model.\')\n + result = False\n +else :\n + category_list = [\n + \'allocation_scope\',\n + \'cpu_core\',\n + \'cpu_frequency\',\n + \'cpu_type\',\n + \'function\',\n + \'group\',\n + \'local_area_network_type\',\n + \'memory_size\',\n + \'memory_type\',\n + \'product_line\',\n + \'role\',\n + \'storage_capacity\',\n + \'storage_interface\',\n + \'storage_redundancy\'\n + ]\n +\n + new_category_dict = {}\n + for category in category_list:\n + if force or not computer.getPropertyList(category):\n + v = computer_model.getPropertyList(category)\n + if v:\n + new_category_dict[category] = v\n +\n + if new_category_dict:\n + computer.edit(**new_category_dict)\n + message = Base_translateString(\'Computer Model applied.\')\n + result = True\n + else:\n + message = Base_translateString(\'No changes applied.\')\n + result = False\n +\n +if not batch_mode:\n + return context.Base_redirect(form_id,\n + keep_items=dict(portal_status_message=message))\n +</string> </value> + </item> + <item> + <key> <string>_params</string> </key> + <value> <string>form_id=\'view\', batch_mode=0, force=0</string> </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>Computer_applyComputerModel</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_computer_immobilisation/bt/revision b/bt5/erp5_computer_immobilisation/bt/revision index 7d37386284a97324cbac474cb5ea5360d361d104..abc4eff6ac83026669840d289fce80cc9a42baaa 100644 --- a/bt5/erp5_computer_immobilisation/bt/revision +++ b/bt5/erp5_computer_immobilisation/bt/revision @@ -1 +1 @@ -45 \ No newline at end of file +46 \ No newline at end of file