From 0048d09c1f94046336dc16fc8cb8b7345a44ffc8 Mon Sep 17 00:00:00 2001 From: Kazuhiko SHIOZAKI <kazuhiko@nexedi.com> Date: Wed, 21 Sep 2022 11:30:22 +0200 Subject: [PATCH] py2/py3: stop using deprecated has_key(). --- .../cloudooo_web/WebSite_logout.py | 2 +- .../Account_hashGapItemList.py | 4 +- .../ERP5Site_checkCatalogTable.py | 2 +- .../Resource_addToShoppingCart.py | 2 +- .../erp5_advanced_ecommerce/WebSite_logout.py | 2 +- ...stFieldPropertyDictListForAdvancedTrade.py | 2 +- .../ApparelFabricItem_fastInput.py | 6 +-- .../test.erp5.testApparelModel.py | 6 +-- .../erp5_archive/Archive_createInventory.py | 4 +- .../document.erp5.MovementGroup.py | 2 +- .../mixin.erp5.BuilderMixin.py | 2 +- ...erson_getPersonDetailedContributionList.py | 10 ++-- .../BudgetLine_hashVariationCategoryList.py | 2 +- .../Budget_hashVariationCategoryList.py | 2 +- .../Resource_addToShoppingCart.py | 2 +- .../WebSection_getProductList.py | 8 ++-- .../WebSite_getProductList.py | 2 +- .../document.erp5.BusinessConfiguration.py | 4 +- ...teDocumentAnalysisDocumentDecisionItems.py | 2 +- ...s_generateDocumentAnalysisDocumentItems.py | 2 +- ...is_generateDocumentAnalysisLexiconItems.py | 2 +- .../FastInput_generateObjectStructure.py | 2 +- ...stInput_generateTwoLevelObjectStructure.py | 4 +- .../TestCase_generateTestCaseActorList.py | 2 +- .../TestCase_generateTestCaseStepList.py | 2 +- .../UseCase_generateUseCaseActorList.py | 2 +- .../UseCase_generateUseCaseScenarioList.py | 4 +- .../Base_editContentTranslationMessage.py | 2 +- .../test.erp5.testCookieCrumbler.py | 4 +- .../test.erp5.testERP5Category.py | 32 ++++++------- .../test.erp5.testERP5Type.py | 2 +- .../Event_getAttachmentFastInputList.py | 2 +- .../Event_getPropertyDictFromContent.py | 2 +- .../portal_components/test.erp5.testCRM.py | 2 +- .../test.erp5.testCrmReports.py | 14 +++--- .../erp5_csv_core/Base_importCsvLine.py | 2 +- .../DiscussionThread_getContextPostList.py | 2 +- .../DiscussionThread_getContextThreadList.py | 2 +- .../erp5_dms/Base_assembleSearchString.py | 2 +- ...stionMessage_getPropertyDictFromContent.py | 2 +- .../erp5_dms/Document_hashBaseCategoryList.py | 2 +- .../CategoryTool_generateTranslationFile.py | 4 +- ...lossaryModule_getBusinessFieldFieldList.py | 2 +- ...saryModule_getBusinessFieldWorkflowList.py | 2 +- ...aryModule_getTermDictListFromPortalType.py | 2 +- ...ssaryModule_getTermDictListFromWorkflow.py | 2 +- .../BusinessTemplate_renameProxyField.py | 6 +-- .../ERP5Site_showAllUsedSelectionNames.py | 2 +- .../Base_callDialogMethod.py | 2 +- .../erp5_hal_json_style/Base_edit.py | 6 +-- .../ERP5Document_getHateoas.py | 4 +- .../test.erp5.testHalJsonStyle.py | 2 +- .../test.erp5.testImmobilisation.py | 2 +- .../ContributionTool_countMyContentList.py | 2 +- .../ContributionTool_getMyContentList.py | 2 +- ...ibutionTool_getPropertyDictFromFilename.py | 2 +- .../module.erp5.TestInvoiceMixin.py | 2 +- .../ItemModule_createDeliveryLine.py | 2 +- .../DeliveryLine_createItemList.py | 2 +- .../erp5_km/WebSite_getWorklistSettingsFor.py | 2 +- ...ite_getWebSectionPredicateMapAndUidList.py | 2 +- .../KnowledgeBox_baseEdit.py | 2 +- .../Base_getReportResultList.py | 2 +- .../erp5_ooo_import/Base_importFile.py | 4 +- .../document.erp5.PaypalService.py | 2 +- .../document.erp5.PaySheetTransaction.py | 2 +- ...etTransaction_createAllPaySheetLineList.py | 2 +- ...etTransaction_getEditableObjectLineList.py | 8 ++-- .../PaySheetTransaction_getMovementList.py | 8 ++-- ...ansaction_viewPaySheetTransactionAsText.py | 4 +- .../test.erp5.testPayroll.py | 8 ++-- .../Amount_hashVariationCategoryItemList.py | 2 +- .../Transformation_getReportSectionList.py | 2 +- ...dResource_hashVariationCategoryItemList.py | 2 +- .../erp5_project/ProjectLine_generateTasks.py | 2 +- .../Project_generateMonthDomain.py | 6 +-- .../Project_generateQuantityReport.py | 4 +- .../Project_getMonthlyObjectList.py | 2 +- .../Project_getMonthlyReportSectionList.py | 4 +- ...Project_getSourceProjectRelatedTaskList.py | 6 +-- ...t_getSourceProjectRelatedTaskReportList.py | 6 +-- .../Requirement_generateRequirements.py | 4 +- .../TaskReport_getSourceTaskReportList.py | 2 +- .../erp5_project/Task_isSimpleTask.py | 2 +- .../test.erp5.testProject.py | 8 ++-- .../test.erp5.testTaskReporting.py | 18 ++++---- ...test.erp5.testResearchItemSummaryReport.py | 6 +-- .../TestPageModule_createChapter.py | 2 +- .../TestPageModule_getPreviousChapterList.py | 2 +- .../test.erp5.testBPMCore.py | 2 +- .../document.erp5.SyncMLSubscription.py | 4 +- .../module.erp5.ERP5ShopOrderConduit.py | 46 +++++++++---------- .../document.erp5.WebServiceRequest.py | 4 +- .../module.erp5.TioSafeUtils.py | 8 ++-- ...egrationSite_setCategoryMappingLineList.py | 2 +- ...ationSite_updateCategoryMappingLineList.py | 4 +- .../OrderModule_getOrderStatList.py | 20 ++++---- .../OrderModule_processOrderStat.py | 10 ++-- .../test.erp5.testTradeReports.py | 26 +++++------ .../Zuite_generateFilename.py | 2 +- ...Zuite_viewZeleniumTestLauncherValidator.py | 6 +-- .../document.erp5.WebSite.py | 2 +- .../portal_skins/erp5_web/WebSite_logout.py | 2 +- .../erp5_web_renderjs_ui/WebSite_logout.py | 2 +- .../WebSiteModule_resetWebZuite.py | 14 +++--- product/ERP5Type/tests/Python3StyleTest.py | 2 + 106 files changed, 245 insertions(+), 243 deletions(-) diff --git a/bt5/cloudooo_web/SkinTemplateItem/portal_skins/cloudooo_web/WebSite_logout.py b/bt5/cloudooo_web/SkinTemplateItem/portal_skins/cloudooo_web/WebSite_logout.py index d2d718fd28..a6cf6de7e8 100644 --- a/bt5/cloudooo_web/SkinTemplateItem/portal_skins/cloudooo_web/WebSite_logout.py +++ b/bt5/cloudooo_web/SkinTemplateItem/portal_skins/cloudooo_web/WebSite_logout.py @@ -6,7 +6,7 @@ website = context.getWebSiteValue() REQUEST = context.REQUEST -if REQUEST.has_key('portal_skin'): +if 'portal_skin' in REQUEST: context.portal_skins.clearSkinCookie() #XXX get cookie name from key authentication plugin diff --git a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Account_hashGapItemList.py b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Account_hashGapItemList.py index d1dff4c774..3c63edb786 100644 --- a/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Account_hashGapItemList.py +++ b/bt5/erp5_accounting/SkinTemplateItem/portal_skins/erp5_accounting/Account_hashGapItemList.py @@ -20,7 +20,7 @@ def getSubFieldDict(): item_key = '/'.join(item_split[:split_depth]) # Create a new subfield if necessary - if not sub_field_dict.has_key(item_key): + if item_key not in sub_field_dict: # Create property dict (key are field parameters) sub_field_property_dict = default_sub_field_property_dict.copy() sub_field_property_dict['key'] = item_key @@ -57,7 +57,7 @@ for item_value in value_list: item_split = item_value.split('/') item_key = '/'.join(item_split[:split_depth]) - if not sub_field_dict.has_key(item_key): + if item_key not in sub_field_dict: # This can only happens if an accounting plan have been uninstalled sub_field_property_dict = default_sub_field_property_dict.copy() sub_field_property_dict['key'] = item_key diff --git a/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/ERP5Site_checkCatalogTable.py b/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/ERP5Site_checkCatalogTable.py index 93c177b2fe..5fc440da32 100644 --- a/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/ERP5Site_checkCatalogTable.py +++ b/bt5/erp5_administration/SkinTemplateItem/portal_skins/erp5_administration/ERP5Site_checkCatalogTable.py @@ -142,7 +142,7 @@ else: reference_dict = getattr(context, property_override_method_id)(instance=actual_object) do_reindex = False for attribute_id in attribute_id_list: - if not reference_dict.has_key(attribute_id): + if attribute_id not in reference_dict: reference_value = actual_object.getProperty(attribute_id) else: reference_value = reference_dict[attribute_id] diff --git a/bt5/erp5_advanced_ecommerce/SkinTemplateItem/portal_skins/erp5_advanced_ecommerce/Resource_addToShoppingCart.py b/bt5/erp5_advanced_ecommerce/SkinTemplateItem/portal_skins/erp5_advanced_ecommerce/Resource_addToShoppingCart.py index b2b3c6118e..64bfd45c24 100644 --- a/bt5/erp5_advanced_ecommerce/SkinTemplateItem/portal_skins/erp5_advanced_ecommerce/Resource_addToShoppingCart.py +++ b/bt5/erp5_advanced_ecommerce/SkinTemplateItem/portal_skins/erp5_advanced_ecommerce/Resource_addToShoppingCart.py @@ -29,7 +29,7 @@ if form_id is not None: # Make sure editors are pushed back as values into the REQUEST object for f in form.get_fields(): field_id = f.id - if request.has_key(field_id): + if field_id in request: value = request.get(field_id) if callable(value): value(request) diff --git a/bt5/erp5_advanced_ecommerce/SkinTemplateItem/portal_skins/erp5_advanced_ecommerce/WebSite_logout.py b/bt5/erp5_advanced_ecommerce/SkinTemplateItem/portal_skins/erp5_advanced_ecommerce/WebSite_logout.py index a722d5bf92..d947fe5dd8 100644 --- a/bt5/erp5_advanced_ecommerce/SkinTemplateItem/portal_skins/erp5_advanced_ecommerce/WebSite_logout.py +++ b/bt5/erp5_advanced_ecommerce/SkinTemplateItem/portal_skins/erp5_advanced_ecommerce/WebSite_logout.py @@ -3,7 +3,7 @@ """ website = context.getWebSiteValue() REQUEST = context.REQUEST -if REQUEST.has_key('portal_skin'): +if 'portal_skin' in REQUEST: context.portal_skins.clearSkinCookie() REQUEST.RESPONSE.expireCookie('__ac', path='/') REQUEST.RESPONSE.expireCookie('__ac_facebook_hash', path='/') diff --git a/bt5/erp5_advanced_trade/SkinTemplateItem/portal_skins/erp5_advanced_trade/Base_getMultiListFieldPropertyDictListForAdvancedTrade.py b/bt5/erp5_advanced_trade/SkinTemplateItem/portal_skins/erp5_advanced_trade/Base_getMultiListFieldPropertyDictListForAdvancedTrade.py index 7d1f736743..c0ad32f75c 100644 --- a/bt5/erp5_advanced_trade/SkinTemplateItem/portal_skins/erp5_advanced_trade/Base_getMultiListFieldPropertyDictListForAdvancedTrade.py +++ b/bt5/erp5_advanced_trade/SkinTemplateItem/portal_skins/erp5_advanced_trade/Base_getMultiListFieldPropertyDictListForAdvancedTrade.py @@ -10,7 +10,7 @@ for item in item_list: item_key = '/'.join(item_split[:split_depth]) base_category = item_split[0] # Create a new subfield if necessary - if not sub_field_dict.has_key(item_key): + if item_key not in sub_field_dict: # Create property dict (key are field parameters) sub_field_property_dict = default_sub_field_property_dict.copy() sub_field_property_dict['key'] = item_key diff --git a/bt5/erp5_apparel/SkinTemplateItem/portal_skins/erp5_apparel/ApparelFabricItem_fastInput.py b/bt5/erp5_apparel/SkinTemplateItem/portal_skins/erp5_apparel/ApparelFabricItem_fastInput.py index c30b96a260..4353e909d2 100644 --- a/bt5/erp5_apparel/SkinTemplateItem/portal_skins/erp5_apparel/ApparelFabricItem_fastInput.py +++ b/bt5/erp5_apparel/SkinTemplateItem/portal_skins/erp5_apparel/ApparelFabricItem_fastInput.py @@ -86,7 +86,7 @@ try: bath = '' for item in created_item_list: bath = str(item.grouping_reference) - if bath_dict.has_key(bath): + if bath in bath_dict: bath_dict[str(bath)].extend([item]) else: bath_dict[str(bath)] = [item] @@ -142,7 +142,7 @@ try: new_movement = context.portal_simulation.solveMovement(movement, None, 'SplitQuantity', additional_parameters={'aggregate_list':apparel_bath_list}, start_date=start_date, stop_date=stop_date, quantity=quantity) movement_list.append(new_movement[0].getRelativeUrl()) # update root movement if require - if bath_dict.has_key(movement_bath): + if movement_bath in bath_dict: items = bath_dict[movement_bath] quantity = 0 for item in items: @@ -181,7 +181,7 @@ try: if cell.getVariationText() == variation_text: # update aggregate list with items cell_aggregate_list = cell.getAggregateValueList() - if bath_dict.has_key(line_bath): + if line_bath in bath_dict: # new items on cell cell_item = bath_dict[line_bath] cell_aggregate_list.extend(cell_item) diff --git a/bt5/erp5_apparel/TestTemplateItem/portal_components/test.erp5.testApparelModel.py b/bt5/erp5_apparel/TestTemplateItem/portal_components/test.erp5.testApparelModel.py index da4171fccf..058acf7cfd 100644 --- a/bt5/erp5_apparel/TestTemplateItem/portal_components/test.erp5.testApparelModel.py +++ b/bt5/erp5_apparel/TestTemplateItem/portal_components/test.erp5.testApparelModel.py @@ -159,10 +159,10 @@ class TestApparelModel(ERP5TypeTestCase): self.assertEqual(elasthane.getProperty('quantity'), 0.12) # check indexes are present - self.assertTrue(apparel_model.index.has_key('composition')) + self.assertTrue('composition' in apparel_model.index) index = apparel_model.index['composition'][0] - self.assertTrue(index.has_key('composition/elasthane')) - self.assertTrue(index.has_key('composition/acrylique')) + self.assertTrue('composition/elasthane' in index) + self.assertTrue('composition/acrylique' in index) def test_checkCopyColourRangeVariation(self): ''' diff --git a/bt5/erp5_archive/SkinTemplateItem/portal_skins/erp5_archive/Archive_createInventory.py b/bt5/erp5_archive/SkinTemplateItem/portal_skins/erp5_archive/Archive_createInventory.py index fe68e47685..ba6ee54d70 100644 --- a/bt5/erp5_archive/SkinTemplateItem/portal_skins/erp5_archive/Archive_createInventory.py +++ b/bt5/erp5_archive/SkinTemplateItem/portal_skins/erp5_archive/Archive_createInventory.py @@ -26,7 +26,7 @@ node_inventory_dict = {} activate_kw = {"tag": tag} for inventory in node_inventory_list: # Do only one inventory per node - if not node_inventory_dict.has_key(inventory.node_relative_url): + if inventory.node_relative_url not in node_inventory_dict: inv = inventory_module.newContent(portal_type="Archive Inventory", destination=inventory.node_relative_url, @@ -99,7 +99,7 @@ for inv in node_inventory_dict.values(): payment_inventory_dict = {} for inventory in payment_inventory_list: # Do only one inventory per payment - if not payment_inventory_dict.has_key(inventory.payment_uid): + if inventory.payment_uid not in payment_inventory_dict: inv = inventory_module.newContent(portal_type="Archive Inventory", destination=inventory.node_relative_url, diff --git a/bt5/erp5_base/DocumentTemplateItem/portal_components/document.erp5.MovementGroup.py b/bt5/erp5_base/DocumentTemplateItem/portal_components/document.erp5.MovementGroup.py index c3b8ecc379..b005f1f29f 100644 --- a/bt5/erp5_base/DocumentTemplateItem/portal_components/document.erp5.MovementGroup.py +++ b/bt5/erp5_base/DocumentTemplateItem/portal_components/document.erp5.MovementGroup.py @@ -96,7 +96,7 @@ class MovementGroup(XMLObject): # XXX it can be wrong. we need a good way to get hash value, or # we should compare for all pairs. key = repr(property_dict) - if tmp_dict.has_key(key): + if key in tmp_dict: tmp_dict[key][0].append(movement) else: tmp_dict[key] = [[movement], property_dict] diff --git a/bt5/erp5_base/MixinTemplateItem/portal_components/mixin.erp5.BuilderMixin.py b/bt5/erp5_base/MixinTemplateItem/portal_components/mixin.erp5.BuilderMixin.py index 99480763f6..0b177181d0 100644 --- a/bt5/erp5_base/MixinTemplateItem/portal_components/mixin.erp5.BuilderMixin.py +++ b/bt5/erp5_base/MixinTemplateItem/portal_components/mixin.erp5.BuilderMixin.py @@ -254,7 +254,7 @@ class BuilderMixin(XMLObject, Amount, Predicate): delta = inventory_item.inventory - min_stock node_uid = inventory_item.node_uid # if node_uid is provided, we have to look at all provided nodes - if kw.has_key('node_uid'): + if 'node_uid' in kw: node_uid = kw['node_uid'] optimized_kw = {} if kw.get('group_by_variation', 1): diff --git a/bt5/erp5_base/SkinTemplateItem/portal_skins/erp5_base/Person_getPersonDetailedContributionList.py b/bt5/erp5_base/SkinTemplateItem/portal_skins/erp5_base/Person_getPersonDetailedContributionList.py index b513242939..55a4b2a02f 100644 --- a/bt5/erp5_base/SkinTemplateItem/portal_skins/erp5_base/Person_getPersonDetailedContributionList.py +++ b/bt5/erp5_base/SkinTemplateItem/portal_skins/erp5_base/Person_getPersonDetailedContributionList.py @@ -58,7 +58,7 @@ result_list = context.portal_catalog.countResults(select_dict={'date': 'DATE_FOR # build result dict per portal_type then period portal_type_count_dict = {} for result in result_list: - if portal_type_count_dict.has_key(result[2]): + if result[2] in portal_type_count_dict: portal_type_count_dict[result[2]][result[1]] = result[0] else: portal_type_count_dict[result[2]] = {result[1]:result[0]} @@ -68,7 +68,7 @@ line_list = [] append = line_list.append period_count_dict = {} for portal_type in portal_type_list: - if portal_type_count_dict.has_key(portal_type): + if portal_type in portal_type_count_dict: period_count = portal_type_count_dict[portal_type] obj = Object(uid="new_") obj["document_type"] = context.Base_translateString(portal_type) @@ -76,10 +76,10 @@ for portal_type in portal_type_list: continue line_counter = 0 for period in period_list: - if period_count.has_key(period): + if period in period_count: obj[period] = period_count[period] line_counter += period_count[period] - if period_count_dict.has_key(period): + if period in period_count_dict: period_count_dict[period] = period_count_dict[period] + period_count[period] else: period_count_dict[period] = period_count[period] @@ -99,7 +99,7 @@ obj = Object(uid="new_") obj["document_type"] = 'Total' line_counter = 0 for period in period_list: - if period_count_dict.has_key(period): + if period in period_count_dict: obj[period] = period_count_dict[period] line_counter += period_count_dict[period] else: diff --git a/bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/BudgetLine_hashVariationCategoryList.py b/bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/BudgetLine_hashVariationCategoryList.py index 752f05e731..37bc534047 100644 --- a/bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/BudgetLine_hashVariationCategoryList.py +++ b/bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/BudgetLine_hashVariationCategoryList.py @@ -43,7 +43,7 @@ for item in item_list: if item_key in line_level_variation_list: multi = False - if not sub_field_dict.has_key(item_key): + if item_key not in sub_field_dict: # Create property dict sub_field_property_dict = default_sub_field_property_dict.copy() sub_field_property_dict['key'] = item_key diff --git a/bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/Budget_hashVariationCategoryList.py b/bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/Budget_hashVariationCategoryList.py index ed3a277c55..ff91bb7994 100644 --- a/bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/Budget_hashVariationCategoryList.py +++ b/bt5/erp5_budget/SkinTemplateItem/portal_skins/erp5_budget/Budget_hashVariationCategoryList.py @@ -35,7 +35,7 @@ for item in item_list: base_category = item_split[0] multi = False # XXX or now budget level are only single value. - if not sub_field_dict.has_key(item_key): + if item_key not in sub_field_dict: # Create property dict sub_field_property_dict = default_sub_field_property_dict.copy() sub_field_property_dict['key'] = item_key diff --git a/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce/Resource_addToShoppingCart.py b/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce/Resource_addToShoppingCart.py index 0534c1a04c..554e450d2c 100644 --- a/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce/Resource_addToShoppingCart.py +++ b/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce/Resource_addToShoppingCart.py @@ -21,7 +21,7 @@ if form_id is not None: # Make sure editors are pushed back as values into the REQUEST object for f in form.get_fields(): field_id = f.id - if request.has_key(field_id): + if field_id in request: value = request.get(field_id) if callable(value): value(request) diff --git a/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce_widget_library/WebSection_getProductList.py b/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce_widget_library/WebSection_getProductList.py index 550e166539..4346896f81 100644 --- a/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce_widget_library/WebSection_getProductList.py +++ b/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce_widget_library/WebSection_getProductList.py @@ -3,16 +3,16 @@ current_web_section = context.REQUEST.get('current_web_section', context) product_list = [] -if not kw.has_key('portal_type'): +if 'portal_type' not in kw: kw['portal_type'] = 'Product' -if not kw.has_key('limit'): +if 'limit' not in kw: kw['limit'] = limit -if not kw.has_key('all_versions'): +if 'all_versions' not in kw: kw['all_versions'] = 1 -if not kw.has_key('all_languages'): +if 'all_languages' not in kw: kw['all_languages'] = 1 for key in ['limit','all_versions','all_languages']: diff --git a/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce_widget_library/WebSite_getProductList.py b/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce_widget_library/WebSite_getProductList.py index 1db68391d2..f1ecb0ad12 100644 --- a/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce_widget_library/WebSite_getProductList.py +++ b/bt5/erp5_commerce/SkinTemplateItem/portal_skins/erp5_commerce_widget_library/WebSite_getProductList.py @@ -5,7 +5,7 @@ from random import choice web_site = context.getWebSiteValue() or context.REQUEST.get('current_web_site') -if not kw.has_key('portal_type'): +if 'portal_type' not in kw: kw['portal_type'] = 'Product' # Getting all the products from all the visible Web Section. diff --git a/bt5/erp5_configurator/DocumentTemplateItem/portal_components/document.erp5.BusinessConfiguration.py b/bt5/erp5_configurator/DocumentTemplateItem/portal_components/document.erp5.BusinessConfiguration.py index e898c84ea9..de4ccfe2fa 100644 --- a/bt5/erp5_configurator/DocumentTemplateItem/portal_components/document.erp5.BusinessConfiguration.py +++ b/bt5/erp5_configurator/DocumentTemplateItem/portal_components/document.erp5.BusinessConfiguration.py @@ -74,7 +74,7 @@ def getWorkflowHistory(state, document, remove_undo=0, remove_not_displayed=0): else: result = [] for x in wh: - if x.has_key('undo') and x['undo'] == 1: + if 'undo' in x and x['undo'] == 1: result.pop() else: result.append(x.copy()) @@ -95,7 +95,7 @@ def _updateWorkflowHistory(workflow, document, status_dict): # Add an entry for the workflow in the history workflow_key = workflow.getReference() - if not document.workflow_history.has_key(workflow_key): + if workflow_key not in document.workflow_history: document.workflow_history[workflow_key] = () # Update history diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisDocumentDecisionItems.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisDocumentDecisionItems.py index c1fe3016e8..78a39f8463 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisDocumentDecisionItems.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisDocumentDecisionItems.py @@ -7,7 +7,7 @@ items = [] # get the user information for line in listbox: - if line.has_key('listbox_key') and line['item_title'] not in ('', None): + if 'listbox_key' in line and line['item_title'] not in ('', None): line_id = int(line['listbox_key']) item = {} item['id'] = line_id diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisDocumentItems.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisDocumentItems.py index 004a3350fd..06173507a1 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisDocumentItems.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisDocumentItems.py @@ -7,7 +7,7 @@ items = [] # get the user information for line in listbox: - if line.has_key('listbox_key') and line['item_title'] not in ('', None): + if 'listbox_key' in line and line['item_title'] not in ('', None): line_id = int(line['listbox_key']) item = {} item['id'] = line_id diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisLexiconItems.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisLexiconItems.py index 455594ef46..13f0213929 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisLexiconItems.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/DocumentAnalysis_generateDocumentAnalysisLexiconItems.py @@ -7,7 +7,7 @@ items = [] # get the user information for line in listbox: - if line.has_key('listbox_key') and line['item_title'] not in ('', None): + if 'listbox_key' in line and line['item_title'] not in ('', None): line_id = int(line['listbox_key']) item = {} item['id'] = line_id diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/FastInput_generateObjectStructure.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/FastInput_generateObjectStructure.py index 2ae60c9692..0d0f9f7774 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/FastInput_generateObjectStructure.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/FastInput_generateObjectStructure.py @@ -50,7 +50,7 @@ fast_input_lines = [] # get the fast input form datas for inputline in listbox: - if inputline.has_key('listbox_key'): + if 'listbox_key' in inputline: line = {} line['id'] = int(inputline['listbox_key']) for data_name in input_data_names: diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/FastInput_generateTwoLevelObjectStructure.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/FastInput_generateTwoLevelObjectStructure.py index e9ce7c87ee..61e292e413 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/FastInput_generateTwoLevelObjectStructure.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/FastInput_generateTwoLevelObjectStructure.py @@ -34,7 +34,7 @@ fast_input_lines = [] # get the fast input form datas for inputline in listbox: - if inputline.has_key('listbox_key'): + if 'listbox_key' in inputline: line = {} line['id'] = int(inputline['listbox_key']) for data_name in input_data_names: @@ -75,7 +75,7 @@ for line in fast_input_lines: new_1st_level_sub_items.append(new_2nd_level_item) if has_1st_level == True: - if structured_input_data.has_key(new_1st_level_key): + if new_1st_level_key in structured_input_data: new_1st_level_sub_items = structured_input_data[new_1st_level_key][1] + new_1st_level_sub_items else: structured_input_data[new_1st_level_key] = [None, None] diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/TestCase_generateTestCaseActorList.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/TestCase_generateTestCaseActorList.py index 5155116b82..f275b3c611 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/TestCase_generateTestCaseActorList.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/TestCase_generateTestCaseActorList.py @@ -14,7 +14,7 @@ except: # get the user information for line in listbox: - if line.has_key('listbox_key') and line['title'] not in ('', None): + if 'listbox_key' in line and line['title'] not in ('', None): line_id = int(line['listbox_key']) item = {} item['id'] = line_id diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/TestCase_generateTestCaseStepList.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/TestCase_generateTestCaseStepList.py index 9daa17f877..401fdd6d46 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/TestCase_generateTestCaseStepList.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/TestCase_generateTestCaseStepList.py @@ -14,7 +14,7 @@ except: #XXX # get the user information for line in listbox: - if line.has_key('listbox_key') and line['title'] not in ('', None): + if 'listbox_key' in line and line['title'] not in ('', None): line_id = int(line['listbox_key']) item = {} item['id'] = line_id diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/UseCase_generateUseCaseActorList.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/UseCase_generateUseCaseActorList.py index a8c94af761..2e0782b023 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/UseCase_generateUseCaseActorList.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/UseCase_generateUseCaseActorList.py @@ -14,7 +14,7 @@ except: # get the user information for line in listbox: - if line.has_key('listbox_key') and line['title'] not in ('', None): + if 'listbox_key' in line and line['title'] not in ('', None): line_id = int(line['listbox_key']) item = {} item['id'] = line_id diff --git a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/UseCase_generateUseCaseScenarioList.py b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/UseCase_generateUseCaseScenarioList.py index 99d3de9cfa..06bb4635b8 100644 --- a/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/UseCase_generateUseCaseScenarioList.py +++ b/bt5/erp5_consulting/SkinTemplateItem/portal_skins/erp5_consulting/UseCase_generateUseCaseScenarioList.py @@ -10,7 +10,7 @@ items = [] # get the user information for inputline in listbox: - if inputline.has_key('listbox_key'): + if 'listbox_key' in inputline: scenario = {} scenario['id'] = int(inputline['listbox_key']) scenario['title'] = inputline['scenario_title'] @@ -55,7 +55,7 @@ for item in items: new_1st_level_item.append(new_2nd_level_item) if has_1st_level == True: - if clean_input_lines.has_key(new_1st_level_key): + if new_1st_level_key in clean_input_lines: new_1st_level_item = clean_input_lines[new_1st_level_key] + new_1st_level_item clean_input_lines[new_1st_level_key] = new_1st_level_item diff --git a/bt5/erp5_content_translation/SkinTemplateItem/portal_skins/erp5_content_translation/Base_editContentTranslationMessage.py b/bt5/erp5_content_translation/SkinTemplateItem/portal_skins/erp5_content_translation/Base_editContentTranslationMessage.py index 34db40fc4e..a29be6b5df 100644 --- a/bt5/erp5_content_translation/SkinTemplateItem/portal_skins/erp5_content_translation/Base_editContentTranslationMessage.py +++ b/bt5/erp5_content_translation/SkinTemplateItem/portal_skins/erp5_content_translation/Base_editContentTranslationMessage.py @@ -36,7 +36,7 @@ except FormValidationError, validation_errors: # Make sure editors are pushed back as values into the REQUEST object for f in form.get_fields(): field_id = f.id - if request.has_key(field_id): + if field_id in request: value = request.get(field_id) if callable(value): value(request) diff --git a/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCookieCrumbler.py b/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCookieCrumbler.py index 9e8f66effe..0dc5d2794b 100644 --- a/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCookieCrumbler.py +++ b/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCookieCrumbler.py @@ -79,11 +79,11 @@ class ERP5CookieCrumblerTests (CookieCrumblerTests): self.req.cookies['__ac_password'] = long_pass self.req.traverse('/') - self.assert_(self.req.has_key('AUTHENTICATED_USER')) + self.assert_('AUTHENTICATED_USER' in self.req) self.assertEqual(self.req['AUTHENTICATED_USER'].getId(), 'abrahammmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm') resp = self.req.response - self.assert_(resp.cookies.has_key('__ac')) + self.assert_('__ac' in resp.cookies) self.credentials = base64.encodestring('%s:%s' % (long_name, long_pass)).replace('\012', '') self.assertEqual(resp.cookies['__ac']['value'], self.credentials) diff --git a/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Category.py b/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Category.py index 9b3b4c371f..49ccb586a6 100644 --- a/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Category.py +++ b/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Category.py @@ -70,16 +70,16 @@ class TestERP5Category(ERP5TypeTestCase): bc = self.base_cat if bc not in portal_categories.objectIds(): portal_categories.newContent(portal_type='Base Category', id=bc) - if not portal_categories[bc].has_key('1'): + if '1' not in portal_categories[bc]: portal_categories[bc].newContent(id='1', portal_type='Category') self.cat1 = portal_categories[bc]['1'] - if not self.cat1.has_key('1'): + if '1' not in self.cat1: self.cat1.newContent(id='1', portal_type='Category') self.deep_cat1 = self.cat1['1'] - if not portal_categories[bc].has_key('2'): + if '2' not in portal_categories[bc]: portal_categories[bc].newContent(id='2', portal_type='Category') self.cat2 = portal_categories[bc]['2'] - if not self.cat2.has_key('1'): + if '1' not in self.cat2: self.cat2.newContent(id='1', portal_type='Category') self.deep_cat2 = self.cat2['1'] @@ -90,35 +90,35 @@ class TestERP5Category(ERP5TypeTestCase): self.commit() organisation_module = self.getOrganisationModule() - if not organisation_module.has_key('1'): + if '1' not in organisation_module: organisation_module.newContent(id='1', portal_type='Organisation') self.organisation = organisation_module['1'] - if not self.organisation.has_key('1'): + if '1' not in self.organisation: self.organisation.newContent(id='1', portal_type='Telephone') self.telephone = self.organisation['1'] - if not organisation_module.has_key('2'): + if '2' not in organisation_module: organisation_module.newContent(id='2', portal_type='Organisation') self.organisation2 = organisation_module['2'] - if not self.organisation2.has_key('1'): + if '1' not in self.organisation2: self.organisation2.newContent(id='1', portal_type='Telephone') self.telephone2 = self.organisation2['1'] - if not person_module.has_key('1'): + if '1' not in person_module: person_module.newContent(id='1', portal_type = 'Person') self.person = person_module['1'] bc2 = self.base_cat2 if bc2 not in portal_categories.objectIds(): portal_categories.newContent(portal_type='Base Category', id=bc2) - if not portal_categories[bc2].has_key('1'): + if '1' not in portal_categories[bc2]: portal_categories[bc2].newContent(id='1', portal_type='Category') self.efg_l1 = portal_categories[bc2]['1'] - if not self.efg_l1.has_key('11'): + if '11' not in self.efg_l1: self.efg_l1.newContent(id='11', portal_type='Category') self.efg_l2 = self.efg_l1['11'] - if not self.efg_l2.has_key('111'): + if '111' not in self.efg_l2: self.efg_l2.newContent(id='111', portal_type='Category') self.efg_l3 = self.efg_l2['111'] - if not self.efg_l3.has_key('1111'): + if '1111' not in self.efg_l3: self.efg_l3.newContent(id='1111',portal_type='Category') self.efg_l4 = self.efg_l3['1111'] @@ -128,7 +128,7 @@ class TestERP5Category(ERP5TypeTestCase): content_type_set = set(module_type.getTypeAllowedContentTypeList()) content_type_set.add('Mapped Value') module_type._setTypeAllowedContentTypeList(tuple(content_type_set)) - if not organisation_module.has_key('predicate'): + if 'predicate' not in organisation_module: organisation_module.newContent(id='predicate', portal_type='Mapped Value') predicate = organisation_module['predicate'] predicate.setCriterion('quantity', identity=None, min=None, max=None) @@ -139,7 +139,7 @@ class TestERP5Category(ERP5TypeTestCase): def beforeTearDown(self): portal_categories = self.getCategoryTool() - if portal_categories[self.base_cat].has_key('3'): + if '3' in portal_categories[self.base_cat]: portal_categories[self.base_cat].manage_delObjects('3') self.commitAndTic() @@ -149,7 +149,7 @@ class TestERP5Category(ERP5TypeTestCase): self.commitAndTic() organisation_module = self.getOrganisationModule() - if organisation_module.has_key('new_id'): + if 'new_id' in organisation_module: organisation_module.manage_delObjects('new_id') self.commitAndTic() diff --git a/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Type.py b/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Type.py index f3b84cb1df..a5d68f1a60 100644 --- a/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Type.py +++ b/bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Type.py @@ -1758,7 +1758,7 @@ class TestERP5Type(PropertySheetTestCase, LogInterceptor): person_module = self.getPersonModule() person = person_module.newContent(portal_type='Person') self.assertFalse(person.hasTitle()) - self.assertFalse(person.__dict__.has_key('title')) + self.assertFalse('title' in person.__dict__) def test_24_relatedValueAccessor(self): """ diff --git a/bt5/erp5_crm/SkinTemplateItem/portal_skins/erp5_crm/Event_getAttachmentFastInputList.py b/bt5/erp5_crm/SkinTemplateItem/portal_skins/erp5_crm/Event_getAttachmentFastInputList.py index 24c3c5f28e..53152b997b 100644 --- a/bt5/erp5_crm/SkinTemplateItem/portal_skins/erp5_crm/Event_getAttachmentFastInputList.py +++ b/bt5/erp5_crm/SkinTemplateItem/portal_skins/erp5_crm/Event_getAttachmentFastInputList.py @@ -6,7 +6,7 @@ for attachment in context.getAttachmentInformationList(): # Attachments if attachment['uid'] not in ['part_1', 'part_0']: filename = context.getTitle() - if attachment.has_key("file_name"): + if "file_name" in attachment: filename=attachment["file_name"] pt = "File" temp_base_id = 'index_'.join([attachment["uid"], str(attachment["index"])]) diff --git a/bt5/erp5_crm/SkinTemplateItem/portal_skins/erp5_crm/Event_getPropertyDictFromContent.py b/bt5/erp5_crm/SkinTemplateItem/portal_skins/erp5_crm/Event_getPropertyDictFromContent.py index 1a86c075bf..515d7fce81 100644 --- a/bt5/erp5_crm/SkinTemplateItem/portal_skins/erp5_crm/Event_getPropertyDictFromContent.py +++ b/bt5/erp5_crm/SkinTemplateItem/portal_skins/erp5_crm/Event_getPropertyDictFromContent.py @@ -29,7 +29,7 @@ text_search_list = [] for text, prop_dict in context.getSearchableReferenceList(): if text: text_search_list.append(text) - if prop_dict.has_key('reference'): + if 'reference' in prop_dict: reference_search_list.append(prop_dict['reference']) # Search reference ticket or project diff --git a/bt5/erp5_crm/TestTemplateItem/portal_components/test.erp5.testCRM.py b/bt5/erp5_crm/TestTemplateItem/portal_components/test.erp5.testCRM.py index dffe7ac754..f8ebe0fd1e 100644 --- a/bt5/erp5_crm/TestTemplateItem/portal_components/test.erp5.testCRM.py +++ b/bt5/erp5_crm/TestTemplateItem/portal_components/test.erp5.testCRM.py @@ -2007,7 +2007,7 @@ class TestCRMMailSend(BaseTestCRM): method_id='MailMessage_sendByActivity') self.commit() message_list = [i for i in portal_activities.getMessageList() \ - if i.kw.has_key("event_relative_url")] + if "event_relative_url" in i.kw] try: # 5 recipients -> 5 activities self.assertEqual(5, len(message_list)) diff --git a/bt5/erp5_crm/TestTemplateItem/portal_components/test.erp5.testCrmReports.py b/bt5/erp5_crm/TestTemplateItem/portal_components/test.erp5.testCrmReports.py index 207197561e..43c7fa5039 100644 --- a/bt5/erp5_crm/TestTemplateItem/portal_components/test.erp5.testCrmReports.py +++ b/bt5/erp5_crm/TestTemplateItem/portal_components/test.erp5.testCrmReports.py @@ -193,44 +193,44 @@ class CrmTestCase(ERP5ReportTestCase): self.portal_categories = self.portal.portal_categories # create group category - if not self.portal_categories['group'].has_key('demo_group'): + if 'demo_group' not in self.portal_categories['group']: group=self.portal_categories.group group.newContent(portal_type='Category', title='demo_group', reference='demo_group', id='demo_group') # create users and organisations - if not self.person_module.has_key('Person_1'): + if 'Person_1' not in self.person_module: self.portal.person_module.newContent( portal_type='Person', reference='Person_1', title='Person_1', id='Person_1') - if not self.person_module.has_key('Person_2'): + if 'Person_2' not in self.person_module: self.portal.person_module.newContent( portal_type='Person', reference='Person_2', title='Person_2', id='Person_2') - if not self.person_module.has_key('Person_3'): + if 'Person_3' not in self.person_module: self.portal.person_module.newContent( portal_type='Person', reference='Person_3', title='Person_3', id='Person_3') - if not self.organisation_module.has_key('Organisation_1'): + if 'Organisation_1' not in self.organisation_module: self.portal.organisation_module.newContent( portal_type='Organisation', reference='Organisation_1', title='Organisation_1', id='Organisation_1') - if not self.organisation_module.has_key('Organisation_2'): + if 'Organisation_2' not in self.organisation_module: self.portal.organisation_module.newContent( portal_type='Organisation', reference='Organisation_2', title='Organisation_2', id='Organisation_2') - if not self.organisation_module.has_key('My_organisation'): + if 'My_organisation' not in self.organisation_module: self.portal.organisation_module.newContent( portal_type='Organisation', reference='My_organisation', diff --git a/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_core/Base_importCsvLine.py b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_core/Base_importCsvLine.py index d99ed9e0fd..47eabf6d3c 100644 --- a/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_core/Base_importCsvLine.py +++ b/bt5/erp5_csv_style/SkinTemplateItem/portal_skins/erp5_csv_core/Base_importCsvLine.py @@ -8,7 +8,7 @@ if object == None: # activity doesn't support security rights yet... for key in ['uid','id']: - if object_property_dict.has_key(key): + if key in object_property_dict: object_property_dict.pop(key) object.edit(**object_property_dict) diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getContextPostList.py b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getContextPostList.py index 75c147b6eb..6a4e4c7709 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getContextPostList.py +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getContextPostList.py @@ -12,7 +12,7 @@ else: if discussion == None: return [] -if kw.has_key("portal_type") == False: +if ("portal_type" in kw) == False: kw['portal_type'] = "Discussion Post" return discussion.searchFolder(**kw) diff --git a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getContextThreadList.py b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getContextThreadList.py index 610c6b0aa9..709e243300 100644 --- a/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getContextThreadList.py +++ b/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_getContextThreadList.py @@ -1,7 +1,7 @@ """This script returns the Discussion Thread list that is associated to this context. Need a proxy to work correctly with anonymous user""" -if not kw.has_key('portal_type'): +if 'portal_type' not in kw: kw["portal_type"] = "Discussion Thread" kw["follow_up_uid"] = context.getUid() diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Base_assembleSearchString.py b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Base_assembleSearchString.py index 18fcadadec..22b79a6d73 100644 --- a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Base_assembleSearchString.py +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Base_assembleSearchString.py @@ -104,7 +104,7 @@ if newest not in BOOLEAN_MARKER: search_mode = kw.get('search_mode', request.get('search_mode', None)) search_mode_map={'in_boolean_mode':'boolean', 'with_query_expansion':'expanded'} -if search_mode not in MARKER and search_mode_map.has_key(search_mode): +if search_mode not in MARKER and search_mode in search_mode_map: search_string += ' mode:%s' % search_mode_map[search_mode] return search_string diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/DocumentIngestionMessage_getPropertyDictFromContent.py b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/DocumentIngestionMessage_getPropertyDictFromContent.py index 277b26dd8b..d8ed861049 100644 --- a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/DocumentIngestionMessage_getPropertyDictFromContent.py +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/DocumentIngestionMessage_getPropertyDictFromContent.py @@ -27,7 +27,7 @@ reference_search_list = [] text_search_list = [] for text, prop_dict in context.getSearchableReferenceList(): if text: text_search_list.append(text) - if prop_dict.has_key('reference'): reference_search_list.append(prop_dict['reference']) + if 'reference' in prop_dict: reference_search_list.append(prop_dict['reference']) # Search reference ticket or project follow_up_type_list = context.getPortalProjectTypeList() + context.getPortalTicketTypeList() diff --git a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_hashBaseCategoryList.py b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_hashBaseCategoryList.py index 40bc65cc41..64126ec6ed 100644 --- a/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_hashBaseCategoryList.py +++ b/bt5/erp5_dms/SkinTemplateItem/portal_skins/erp5_dms/Document_hashBaseCategoryList.py @@ -31,7 +31,7 @@ default_sub_field_property_dict['field_type'] = 'ListField' default_sub_field_property_dict['size'] = 1 for base_category in item_list: - if not sub_field_dict.has_key(base_category): + if base_category not in sub_field_dict: basecatobject = context.portal_categories.resolveCategory(base_category) sub_field_property_dict = default_sub_field_property_dict.copy() sub_field_property_dict['key'] = base_category diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_forge/CategoryTool_generateTranslationFile.py b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_forge/CategoryTool_generateTranslationFile.py index af45d8645c..2c16074c36 100644 --- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_forge/CategoryTool_generateTranslationFile.py +++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_forge/CategoryTool_generateTranslationFile.py @@ -37,12 +37,12 @@ for category_list in category_list_mapping.values(): #Take only needed attributes for attribute in translated_attributes_list: #Test attribute exist - if category.has_key(attribute) and category.has_key(translation_prefix+attribute): + if attribute in category and translation_prefix+attribute in category: initial_value = category.get(attribute,'').strip().replace('"',"'") if initial_value != '': translate_value = category.get(translation_prefix+attribute,'').strip().replace('"',"'") if translate_value != '': - if translation_dict.has_key(initial_value): + if initial_value in translation_dict: #Test any duplicate translation ('car' can't be translated to 'voiture' and 'auto', #user should be choice 'voiture' or 'car') if translation_dict[initial_value] != translate_value: diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getBusinessFieldFieldList.py b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getBusinessFieldFieldList.py index 98d699b442..83c7f93bc7 100644 --- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getBusinessFieldFieldList.py +++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getBusinessFieldFieldList.py @@ -40,7 +40,7 @@ for business_field in business_field_list: term_list = get_term_list(business_field, reference) #if not term_list: # continue - if item_dict.has_key(field): + if field in item_dict: continue item_dict[field] = True diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getBusinessFieldWorkflowList.py b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getBusinessFieldWorkflowList.py index 847971a97f..57fa3d2070 100644 --- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getBusinessFieldWorkflowList.py +++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getBusinessFieldWorkflowList.py @@ -43,7 +43,7 @@ for business_field in business_field_list: term_list = get_term_list(business_field, reference) #if not term_list: # continue - if item_dict.has_key(wf_item): + if wf_item in item_dict: continue item_dict[wf_item] = True diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getTermDictListFromPortalType.py b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getTermDictListFromPortalType.py index 9f614332f7..9420cdddda 100644 --- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getTermDictListFromPortalType.py +++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getTermDictListFromPortalType.py @@ -36,7 +36,7 @@ for portal_type in portal_type_list: for x in remove_suffix_list: if property_id.endswith(x): property_id = property_id[:-len(x)] - if id_dict.has_key(property_id) or property_id in skip_id_list: + if property_id in id_dict or property_id in skip_id_list: continue result.append({'reference':property_id, 'language':language, diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getTermDictListFromWorkflow.py b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getTermDictListFromWorkflow.py index d375a51c41..7195616677 100644 --- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getTermDictListFromWorkflow.py +++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_glossary/GlossaryModule_getTermDictListFromWorkflow.py @@ -42,7 +42,7 @@ for business_field in template_list: term_list = get_term_list(business_field, reference) #if not term_list: # continue - if item_dict.has_key(wf_item): + if wf_item in item_dict: continue item_dict[wf_item] = True diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/BusinessTemplate_renameProxyField.py b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/BusinessTemplate_renameProxyField.py index e2769a8a66..57aa8d4200 100644 --- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/BusinessTemplate_renameProxyField.py +++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/BusinessTemplate_renameProxyField.py @@ -47,9 +47,9 @@ def iterate(document, skin_path): form_id = field.get_value('form_id') field_id = field.get_value('field_id') key = "%s.%s" % (form_id, field_id) - if to_rename_dict.has_key(key): + if key in to_rename_dict: field_path = "%s/%s/%s" % (skin_path, sub_object.id, field.id) - if selected_dict.has_key(field_path): + if field_path in selected_dict: unproxify_dict[field.id] = None proxify_dict[field.id] = to_rename_dict[key] next_preview_listbox.append( @@ -83,7 +83,7 @@ if update: extra_kw = {} for line in next_preview_listbox: line["preview_listbox_key"] = "%03i" % count - line["selected"] = selected_dict.has_key(line["hidden_field_path"]) or preview_listbox is None + line["selected"] = line["hidden_field_path"] in selected_dict or preview_listbox is None extra_kw["field_preview_listbox_hidden_field_path_new_%03i" % count] = line["hidden_field_path"] extra_kw["field_preview_listbox_selected_new_%03i" % count] = line["selected"] count += 1 diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/ERP5Site_showAllUsedSelectionNames.py b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/ERP5Site_showAllUsedSelectionNames.py index ef33ce7c65..875b908b6e 100644 --- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/ERP5Site_showAllUsedSelectionNames.py +++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_toolbox/ERP5Site_showAllUsedSelectionNames.py @@ -34,7 +34,7 @@ def callback(o,seldict): form_name = o.absolute_url() # TODO it could be done much better # assumes that name of form is unique enough form_name = form_name[form_name.rfind('/')+1:] - if seldict.has_key(field.get_value('selection_name')): + if field.get_value('selection_name') in seldict: old_list = seldict[field.get_value('selection_name')] if form_name not in old_list: old_list.append(form_name) diff --git a/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/Base_callDialogMethod.py b/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/Base_callDialogMethod.py index 8603b150b0..16d6935dc6 100644 --- a/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/Base_callDialogMethod.py +++ b/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/Base_callDialogMethod.py @@ -146,7 +146,7 @@ except FormValidationError as validation_errors: # Make sure editors are pushed back as values into the REQUEST object for f in form.get_fields(): field_id = f.id - if request.has_key(field_id): + if field_id in request: value = request.get(field_id) if callable(value): value(request) diff --git a/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/Base_edit.py b/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/Base_edit.py index 7c6492c9bd..071a252517 100644 --- a/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/Base_edit.py +++ b/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/Base_edit.py @@ -47,7 +47,7 @@ except FormValidationError as validation_errors: # Make sure editors are pushed back as values into the REQUEST object for f in form.get_fields(): field_id = f.id - if request.has_key(field_id): + if field_id in request: value = request.get(field_id) if callable(value): value(request) @@ -179,11 +179,11 @@ def editMatrixBox(matrixbox_field, matrixbox): return "Could not create cell %s" % str(cell_index_tuple) cell.edit(edit_order=edit_order, **gv) # First update globals which include the def. of property_list - if cell_value_dict.has_key('variated_property'): + if 'variated_property' in cell_value_dict: # For Variated Properties value = cell_value_dict['variated_property'] del cell_value_dict['variated_property'] - if gv.has_key('mapped_value_property_list'): + if 'mapped_value_property_list' in gv: # Change the property which is defined by the # first element of mapped_value_property_list # XXX Kato: What? Why? diff --git a/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/ERP5Document_getHateoas.py b/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/ERP5Document_getHateoas.py index 1790e60916..13e41f1ff5 100644 --- a/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/ERP5Document_getHateoas.py +++ b/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/ERP5Document_getHateoas.py @@ -1096,7 +1096,7 @@ def renderForm(traversed_document, form, response_dict, key_prefix=None, selecti selection_params=selection_params, request_field=not use_relation_form_page_template, form_relative_url=form_relative_url) - if field_errors.has_key(field.id): + if field.id in field_errors: response_dict[field.id]["error_text"] = field_errors[field.id].getMessage(Base_translateString) except AttributeError as error: # Do not crash if field configuration is wrong. @@ -2110,7 +2110,7 @@ def calculateHateoas(is_portal=None, is_site_root=None, traversed_document=None, value=default_field_value, key='field_%s_%s' % (editable_field.id, brain_uid)) # Include cell error text in case of form validation - if field_errors.has_key('%s_%s' % (editable_field.id, brain_uid)): + if '%s_%s' % (editable_field.id, brain_uid) in field_errors: contents_item[select]['field_gadget_param']["error_text"] = \ Base_translateString(field_errors['%s_%s' % (editable_field.id, brain_uid)].error_text) diff --git a/bt5/erp5_hal_json_style/TestTemplateItem/portal_components/test.erp5.testHalJsonStyle.py b/bt5/erp5_hal_json_style/TestTemplateItem/portal_components/test.erp5.testHalJsonStyle.py index 6c3b5222a9..2b55e0c999 100644 --- a/bt5/erp5_hal_json_style/TestTemplateItem/portal_components/test.erp5.testHalJsonStyle.py +++ b/bt5/erp5_hal_json_style/TestTemplateItem/portal_components/test.erp5.testHalJsonStyle.py @@ -941,7 +941,7 @@ class TestERP5Document_getHateoas_mode_traverse(ERP5HALJSONStyleSkinsMixin): 'form_view' ) - self.assertFalse(result_dict['_embedded']['_view'].has_key('_actions')) + self.assertFalse('_actions' in result_dict['_embedded']['_view']) @simulate('Base_getRequestUrl', '*args, **kwargs', diff --git a/bt5/erp5_immobilisation/TestTemplateItem/portal_components/test.erp5.testImmobilisation.py b/bt5/erp5_immobilisation/TestTemplateItem/portal_components/test.erp5.testImmobilisation.py index e5e46dd78f..009fed4b1c 100644 --- a/bt5/erp5_immobilisation/TestTemplateItem/portal_components/test.erp5.testImmobilisation.py +++ b/bt5/erp5_immobilisation/TestTemplateItem/portal_components/test.erp5.testImmobilisation.py @@ -1092,7 +1092,7 @@ class TestImmobilisationMixin(ERP5TypeTestCase): for key in e_period.keys(): e_value = e_period[key] #LOG('testing c_period %s "%s" value' % (e_period_cursor-1, key), 0, '') - self.assertTrue(c_period.has_key(key)) + self.assertTrue(key in c_period) c_value = c_period[key] is_float = 0 try: diff --git a/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_countMyContentList.py b/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_countMyContentList.py index ca35e98fa5..3888360b3a 100644 --- a/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_countMyContentList.py +++ b/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_countMyContentList.py @@ -12,7 +12,7 @@ if user is None: kw['owner'] = user kw['portal_type'] = context.getPortalMyDocumentTypeList() -if not kw.has_key('validation_state'): +if 'validation_state' not in kw: kw['validation_state'] = "!=embedded" return context.portal_catalog.countResults(**kw) diff --git a/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_getMyContentList.py b/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_getMyContentList.py index b0efe06aa6..939ad56cf7 100644 --- a/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_getMyContentList.py +++ b/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_getMyContentList.py @@ -12,7 +12,7 @@ if user is None: kw['portal_type'] = context.getPortalMyDocumentTypeList() kw['owner'] = user -if not kw.has_key('validation_state'): +if 'validation_state' not in kw: kw['validation_state'] = "!=embedded" return context.portal_catalog(**kw) diff --git a/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_getPropertyDictFromFilename.py b/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_getPropertyDictFromFilename.py index 1e245ec67e..5c8d8b173f 100644 --- a/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_getPropertyDictFromFilename.py +++ b/bt5/erp5_ingestion/SkinTemplateItem/portal_skins/erp5_ingestion/ContributionTool_getPropertyDictFromFilename.py @@ -13,7 +13,7 @@ Type-based. """ # convert language to lowercase -if property_dict.has_key('language'): +if 'language' in property_dict: property_dict['language'] = property_dict['language'].lower() language = property_dict.get('language', 'en') diff --git a/bt5/erp5_invoicing/ModuleComponentTemplateItem/portal_components/module.erp5.TestInvoiceMixin.py b/bt5/erp5_invoicing/ModuleComponentTemplateItem/portal_components/module.erp5.TestInvoiceMixin.py index a993e6583e..fa538ed792 100644 --- a/bt5/erp5_invoicing/ModuleComponentTemplateItem/portal_components/module.erp5.TestInvoiceMixin.py +++ b/bt5/erp5_invoicing/ModuleComponentTemplateItem/portal_components/module.erp5.TestInvoiceMixin.py @@ -167,7 +167,7 @@ class TestInvoiceMixin(TestPackingListMixin): 'product_line/apparel')) account_module = portal.account_module for account_id, account_gap, account_type in self.account_definition_list: - if not account_module.has_key(account_id): + if account_id not in account_module: account = account_module.newContent(account_id, gap=account_gap, account_type=account_type) account.validate() diff --git a/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item/ItemModule_createDeliveryLine.py b/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item/ItemModule_createDeliveryLine.py index 3b33438cb1..f8ee57d7a4 100644 --- a/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item/ItemModule_createDeliveryLine.py +++ b/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item/ItemModule_createDeliveryLine.py @@ -35,7 +35,7 @@ for ss in source_section_list: else: uid = 'UID' - if not pl_dict.has_key(uid): + if uid not in pl_dict: pl_dict[uid] = module.newContent(**pl_property_dict) pl_dict[uid].setSourceSectionValue(ss) diff --git a/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/DeliveryLine_createItemList.py b/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/DeliveryLine_createItemList.py index 22b242e3a9..0c028cd2d4 100644 --- a/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/DeliveryLine_createItemList.py +++ b/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/DeliveryLine_createItemList.py @@ -21,7 +21,7 @@ if dialog.has_field('your_item_extra_property_list'): for line in kw.get('listbox'): - if line.has_key('listbox_key'): + if 'listbox_key' in line: item_reference = line.get('reference') if item_reference: item = context.portal_catalog.getResultValue( diff --git a/bt5/erp5_km/SkinTemplateItem/portal_skins/erp5_km/WebSite_getWorklistSettingsFor.py b/bt5/erp5_km/SkinTemplateItem/portal_skins/erp5_km/WebSite_getWorklistSettingsFor.py index 90d8315ab8..e451ce4e63 100644 --- a/bt5/erp5_km/SkinTemplateItem/portal_skins/erp5_km/WebSite_getWorklistSettingsFor.py +++ b/bt5/erp5_km/SkinTemplateItem/portal_skins/erp5_km/WebSite_getWorklistSettingsFor.py @@ -21,7 +21,7 @@ kw = worklist.getIdentityCriterionDict() portal_type_list = workflow.getPortalTypeListForWorkflow() if not portal_type_list: return {} # If no portal type uses the workflow, ignore it -if not kw.has_key('portal_type'): +if 'portal_type' not in kw: # Set portal types which use the workflow kw['portal_type'] = portal_type_list diff --git a/bt5/erp5_km_sphinxse_full_text_search/SkinTemplateItem/portal_skins/erp5_km_sphinxse_full_text_search/WebSite_getWebSectionPredicateMapAndUidList.py b/bt5/erp5_km_sphinxse_full_text_search/SkinTemplateItem/portal_skins/erp5_km_sphinxse_full_text_search/WebSite_getWebSectionPredicateMapAndUidList.py index a6f2f12afd..53fd3dd82a 100644 --- a/bt5/erp5_km_sphinxse_full_text_search/SkinTemplateItem/portal_skins/erp5_km_sphinxse_full_text_search/WebSite_getWebSectionPredicateMapAndUidList.py +++ b/bt5/erp5_km_sphinxse_full_text_search/SkinTemplateItem/portal_skins/erp5_km_sphinxse_full_text_search/WebSite_getWebSectionPredicateMapAndUidList.py @@ -28,7 +28,7 @@ def getWebSectionPredicateValueList(): # remove leading 'follow_up' from category if category.startswith('follow_up/'): category = category.replace('follow_up/', '', 1) - if not category_map.has_key(category): + if category not in category_map: category_map[category] = [] category_map[category].append({'uid': section['uid'], 'relative_url':section['relative_url']}) # get base_categories we care for diff --git a/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgeBox_baseEdit.py b/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgeBox_baseEdit.py index b0e5d4350d..c5044959f3 100644 --- a/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgeBox_baseEdit.py +++ b/bt5/erp5_knowledge_pad/SkinTemplateItem/portal_skins/erp5_knowledge_pad/KnowledgeBox_baseEdit.py @@ -25,7 +25,7 @@ except FormValidationError, validation_errors: # Make sure editors are pushed back as values into the REQUEST object for f in form.get_fields(): field_id = f.id - if request.has_key(field_id): + if field_id in request: value = request.get(field_id) if callable(value): value(request) diff --git a/bt5/erp5_ooo_import/SkinTemplateItem/portal_skins/erp5_ooo_import/Base_getReportResultList.py b/bt5/erp5_ooo_import/SkinTemplateItem/portal_skins/erp5_ooo_import/Base_getReportResultList.py index 68f2bc1d37..0c83cb605c 100644 --- a/bt5/erp5_ooo_import/SkinTemplateItem/portal_skins/erp5_ooo_import/Base_getReportResultList.py +++ b/bt5/erp5_ooo_import/SkinTemplateItem/portal_skins/erp5_ooo_import/Base_getReportResultList.py @@ -7,7 +7,7 @@ result_listbox = [] # context.log(str(kw)) if active_process_path is None: - if kw.has_key('active_process') and kw['active_process'] not in ('', None): + if 'active_process' in kw and kw['active_process'] not in ('', None): active_process_path = kw['active_process'] #else: # if context.REQUEST.get('active_process', None) not in ('None', None): diff --git a/bt5/erp5_ooo_import/SkinTemplateItem/portal_skins/erp5_ooo_import/Base_importFile.py b/bt5/erp5_ooo_import/SkinTemplateItem/portal_skins/erp5_ooo_import/Base_importFile.py index 26746415aa..1beec5cbff 100644 --- a/bt5/erp5_ooo_import/SkinTemplateItem/portal_skins/erp5_ooo_import/Base_importFile.py +++ b/bt5/erp5_ooo_import/SkinTemplateItem/portal_skins/erp5_ooo_import/Base_importFile.py @@ -108,7 +108,7 @@ else: portal_type, property = portal_type_property.split('.', 1) - if not mapping.has_key(spreadsheet_name): + if spreadsheet_name not in mapping: mapping[spreadsheet_name] = (portal_type, {}) mapping[spreadsheet_name][1][column_name] = property @@ -147,7 +147,7 @@ else: imported_line_property_dict = {} for line_property_index in range(len(line)): - if column_mapping.has_key(line_property_index): + if line_property_index in column_mapping: property_value = line[line_property_index] if property_value: # Create a new property value diff --git a/bt5/erp5_paypal_secure_payment/DocumentTemplateItem/portal_components/document.erp5.PaypalService.py b/bt5/erp5_paypal_secure_payment/DocumentTemplateItem/portal_components/document.erp5.PaypalService.py index 8789d2ed4e..3b9c8def63 100644 --- a/bt5/erp5_paypal_secure_payment/DocumentTemplateItem/portal_components/document.erp5.PaypalService.py +++ b/bt5/erp5_paypal_secure_payment/DocumentTemplateItem/portal_components/document.erp5.PaypalService.py @@ -94,7 +94,7 @@ class PaypalService(XMLObject): param_dict = REQUEST.form LOG("PaypalService", DEBUG, param_dict) param_dict["cmd"] = "_notify-validate" - if param_dict.has_key("service"): + if "service" in param_dict: param_dict.pop("service") param_list = urlencode(param_dict) paypal_url = self.getLinkUrlString() diff --git a/bt5/erp5_payroll/DocumentTemplateItem/portal_components/document.erp5.PaySheetTransaction.py b/bt5/erp5_payroll/DocumentTemplateItem/portal_components/document.erp5.PaySheetTransaction.py index 754ef9b97f..6cc4057d5a 100644 --- a/bt5/erp5_payroll/DocumentTemplateItem/portal_components/document.erp5.PaySheetTransaction.py +++ b/bt5/erp5_payroll/DocumentTemplateItem/portal_components/document.erp5.PaySheetTransaction.py @@ -199,7 +199,7 @@ class PaySheetTransaction(Invoice): if movement.getTotalPrice() not in (0, None): # remove movement with 0 total_price trade_phase = movement.getTradePhase() - if not movement_list_trade_phase_dic.has_key(trade_phase): + if trade_phase not in movement_list_trade_phase_dic: movement_list_trade_phase_dic[trade_phase] = [] movement_list_trade_phase_dic[trade_phase].append(movement) for trade_phase in movement_list_trade_phase_dic.keys(): diff --git a/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_createAllPaySheetLineList.py b/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_createAllPaySheetLineList.py index d0522bd356..0c01316fd5 100644 --- a/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_createAllPaySheetLineList.py +++ b/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_createAllPaySheetLineList.py @@ -14,7 +14,7 @@ context.manage_delObjects(id_list) # create Pay Sheet Lines context.createPaySheetLineList(listbox=listbox) -if not(kw.has_key('skip_redirect') and kw['skip_redirect'] == True): +if not('skip_redirect' in kw and kw['skip_redirect'] == True): # Return to pay sheet default view from ZTUtils import make_query redirect_url = '%s/%s?%s' % (context.absolute_url(), 'view', make_query()) diff --git a/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getEditableObjectLineList.py b/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getEditableObjectLineList.py index 9ccdd90583..95bb19aa1b 100644 --- a/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getEditableObjectLineList.py +++ b/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getEditableObjectLineList.py @@ -80,10 +80,10 @@ for model_line in model_line_list: salary_range = 'no_slice' # check that another share on the same slice have not been already add - if not object_dict.has_key(salary_range): + if salary_range not in object_dict: salary_range_title = None salary_range_relative_url = None - if tuple_dict.has_key('salary_range'): + if 'salary_range' in tuple_dict: salary_range_title = tuple_dict['salary_range'] salary_range_relative_url = tuple_dict['salary_range_relative_url'] new_uid = "new_%s" % id_ @@ -108,7 +108,7 @@ for model_line in model_line_list: for object_key in model_line.getSalaryRangeList(): line_list.append(model_line.asContext(**object_dict[object_key])) - if object_dict.has_key('no_slice'): + if 'no_slice' in object_dict: line_list.append(model_line.asContext(**object_dict['no_slice'])) @@ -132,7 +132,7 @@ def sortByIntIndexDescending(x, y): sortByDefaultSortMethod = sortByIntIndexAscending -if kw.has_key('sort_on'): +if 'sort_on' in kw: sort_on = kw['sort_on'] if sort_on[0][0] == 'title' and sort_on[0][1]=='ascending': line_list.sort(sortByTitleAscending) diff --git a/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getMovementList.py b/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getMovementList.py index e82aaca840..22f0201728 100644 --- a/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getMovementList.py +++ b/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_getMovementList.py @@ -78,9 +78,9 @@ for paysheet_line in paysheet_line_list: salary_range_slice = cell.getSalaryRange() if salary_range_slice is None: salary_range_slice = 'no_slice' - if not object_dict.has_key(salary_range_slice): + if salary_range_slice not in object_dict: slice_title = None - if tuple_dict.has_key('salary_range'): + if 'salary_range' in tuple_dict: slice_title=tuple_dict['salary_range'] object_dict[salary_range_slice]={ 'slice':slice_title, @@ -117,7 +117,7 @@ for paysheet_line in paysheet_line_list: for object_key in paysheet_line.getSalaryRangeList(): line_list.append(paysheet_line.asContext(**object_dict[object_key])) - if object_dict.has_key('no_slice'): + if 'no_slice' in object_dict: line_list.append(paysheet_line.asContext(**object_dict['no_slice'])) @@ -137,7 +137,7 @@ def sortByIntIndexDescending(x, y): sortByDefaultSortMethod = sortByIntIndexAscending -if kw.has_key('sort_on'): +if 'sort_on' in kw: sort_on = kw['sort_on'] if sort_on[0][0] == 'title' and sort_on[0][1]=='ascending': line_list.sort(sortByTitleAscending) diff --git a/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsText.py b/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsText.py index e732b22f69..2d2ce4178d 100644 --- a/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsText.py +++ b/bt5/erp5_payroll/SkinTemplateItem/portal_skins/erp5_payroll/PaySheetTransaction_viewPaySheetTransactionAsText.py @@ -22,14 +22,14 @@ for line in line_dict_list: string_to_display.append(rightPad(line['title'], 40)) string_to_display.append(rightPad(line['base'], 16)) - if line.has_key('employer_quantity'): + if 'employer_quantity' in line: string_to_display.append(rightPad(str(line['employer_price']), 24)) string_to_display.append(rightPad(str(line['employer_quantity']), 24)) else: string_to_display.append(rightPad(' ', 24)) string_to_display.append(rightPad(' ', 24)) - if line.has_key('employee_quantity'): + if 'employee_quantity' in line: string_to_display.append(rightPad(str(line['employee_price']), 24)) string_to_display.append(rightPad(str(line['employee_quantity']), 24)) else: diff --git a/bt5/erp5_payroll/TestTemplateItem/portal_components/test.erp5.testPayroll.py b/bt5/erp5_payroll/TestTemplateItem/portal_components/test.erp5.testPayroll.py index a8444e2c4a..b7c925f1b1 100644 --- a/bt5/erp5_payroll/TestTemplateItem/portal_components/test.erp5.testPayroll.py +++ b/bt5/erp5_payroll/TestTemplateItem/portal_components/test.erp5.testPayroll.py @@ -1428,16 +1428,16 @@ class TestPayrollMixin(TestTradeModelLineMixin, ERP5ReportTestCase): self.assertEqual(len(model_reference_dict), 3) # there is 4 model but two # models have the same # reference. - self.assertEqual(model_reference_dict.has_key(model_employee_url), True) + self.assertEqual(model_employee_url in model_reference_dict, True) self.assertEqual(model_reference_dict[model_employee_url], ['over_time_duration']) - self.assertEqual(model_reference_dict.has_key(model_company_url), True) + self.assertEqual(model_company_url in model_reference_dict, True) self.assertEqual(model_reference_dict[model_company_url], ['worked_time_duration']) - self.assertEqual(model_reference_dict.has_key(model_company_alt_url), True) + self.assertEqual(model_company_alt_url in model_reference_dict, True) self.assertEqual(model_reference_dict[model_company_alt_url], ['social_insurance']) - self.assertNotEquals(model_reference_dict.has_key(model_country_url), True) + self.assertNotEquals(model_country_url in model_reference_dict, True) # check the object list : object_list = paysheet.getInheritedObjectValueList(portal_type_list=\ diff --git a/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/Amount_hashVariationCategoryItemList.py b/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/Amount_hashVariationCategoryItemList.py index ee7c962519..869a948787 100644 --- a/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/Amount_hashVariationCategoryItemList.py +++ b/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/Amount_hashVariationCategoryItemList.py @@ -14,7 +14,7 @@ for item in item_list: item_split = string.split(item_value, '/') item_key = string.join(item_split[:split_depth] , '/' ) base_category = item_split[0] - if not sub_field_dict.has_key(item_key): + if item_key not in sub_field_dict: # Create property dict sub_field_property_dict = default_sub_field_property_dict.copy() sub_field_property_dict['key'] = item_key diff --git a/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/Transformation_getReportSectionList.py b/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/Transformation_getReportSectionList.py index b147786f2f..de35d77544 100644 --- a/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/Transformation_getReportSectionList.py +++ b/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/Transformation_getReportSectionList.py @@ -14,7 +14,7 @@ result = [] variation_category_dict = {} for variation_category in reference_variation_category_list: base_category = variation_category.split('/',1)[0] - if variation_category_dict.has_key( base_category ): + if base_category in variation_category_dict: variation_category_dict[base_category].append( variation_category ) else: variation_category_dict[base_category] = [variation_category] diff --git a/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/TransformedResource_hashVariationCategoryItemList.py b/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/TransformedResource_hashVariationCategoryItemList.py index 4e0953bfd9..70e6e7484f 100644 --- a/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/TransformedResource_hashVariationCategoryItemList.py +++ b/bt5/erp5_pdm/SkinTemplateItem/portal_skins/erp5_pdm/TransformedResource_hashVariationCategoryItemList.py @@ -14,7 +14,7 @@ for item in item_list: item_split = string.split(item_value, '/') item_key = string.join(item_split[:split_depth] , '/' ) - if not sub_field_dict.has_key(item_key): + if item_key not in sub_field_dict: # Create property dict sub_field_property_dict = default_sub_field_property_dict.copy() sub_field_property_dict['key'] = item_key diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectLine_generateTasks.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectLine_generateTasks.py index 7e544d368e..01a9895158 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectLine_generateTasks.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/ProjectLine_generateTasks.py @@ -14,7 +14,7 @@ task_items = [] # get the user information for task in listbox: - if task.has_key('listbox_key'): + if 'listbox_key' in task: task_id = int(task['listbox_key']) task_dict = {} task_dict['id'] = task_id diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.py index 094a952dc8..3abb125bb3 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateMonthDomain.py @@ -54,7 +54,7 @@ else: project_to_display_dict = here.monthly_project_to_display_dict.get(string_index, {}) if depth == 1: category_list = [here.project_dict[x] for x in project_to_display_dict.keys() if - here.project_dict.has_key(x)] + x in here.project_dict] else: parent_category_list = parent.getMembershipCriterionCategoryList() category_list = [] @@ -63,12 +63,12 @@ else: # need to be displayed for this month for parent_category in parent_category_list: parent_category = '/'.join(parent_category.split('/')[1:]) - if project_to_display_dict.has_key(parent_category): + if parent_category in project_to_display_dict: parent_category_object = context.restrictedTraverse(parent_category) category_child_list = parent_category_object.contentValues(portal_type=project_line_portal_type) #category_list.append(parent_category_object) for category_child in category_child_list: - if project_to_display_dict.has_key(category_child.getRelativeUrl()): + if category_child.getRelativeUrl() in project_to_display_dict: category_list.append(category_child) diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateQuantityReport.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateQuantityReport.py index 2472340be9..b44e839a6c 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateQuantityReport.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_generateQuantityReport.py @@ -37,7 +37,7 @@ def getTotalQuantity(line,worker): for child in child_list: child_quantity = getTotalQuantity(child,worker) for key,value in child_quantity.items(): - if not quantity.has_key(key): + if key not in quantity: quantity[key] = 0 quantity[key] = quantity[key] + value else: @@ -73,7 +73,7 @@ for year,month in month_list: listbox_line['month'] = month for worker in worker_list: quantity = 0 - if worker_quantity[worker].has_key((year,month)): + if (year,month) in worker_quantity[worker]: quantity = worker_quantity[worker][(year,month)] worker_title = 'unknown' if worker is not None: diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.py index 9d87d71a04..1a9fc1268a 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyObjectList.py @@ -25,6 +25,6 @@ else: membership_criterion_category = membership_criterion_category_list[0] assert membership_criterion_category.startswith('source_project/') project_relative_url = membership_criterion_category[len('source_project/'):] - if returned_object.has_key(project_relative_url): + if project_relative_url in returned_object: result_list.append(returned_object[project_relative_url]) return result_list diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.py index 46c5c006ad..04d709d9a4 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getMonthlyReportSectionList.py @@ -127,7 +127,7 @@ for task_line in result_list: project_relative_url = project_dict['relative_url'] full_date_total_worker_quantity_dict[source_relative_url] = \ full_date_total_worker_quantity_dict.get(source_relative_url, 0) + quantity - if not full_date_total_object_dict.has_key(project_relative_url): + if project_relative_url not in full_date_total_object_dict: temp_object = temp_object_container.newContent(portal_type = 'Project Line', temp_object=1, string_index = full_date_string, @@ -153,7 +153,7 @@ for task_line in result_list: project_to_display_dict = monthly_project_to_display_dict.setdefault(string_index, {}) fillDictWithParentAndChildRelativeUrls(project_to_display_dict, project_relative_url) - if not quantity_dict.has_key(project_relative_url): + if project_relative_url not in quantity_dict: temp_object = temp_object_container.newContent(portal_type = 'Project Line', temp_object=1, string_index = string_index, diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getSourceProjectRelatedTaskList.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getSourceProjectRelatedTaskList.py index 076a0ca3cc..dc24e2cbec 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getSourceProjectRelatedTaskList.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getSourceProjectRelatedTaskList.py @@ -4,15 +4,15 @@ source_project_uid_list = [x.uid for x in context.portal_catalog( from Products.ZSQLCatalog.SQLCatalog import Query sql_kw = {} -if kw.has_key('from_date') and kw['from_date'] is not None: +if 'from_date' in kw and kw['from_date'] is not None: query_kw = {'delivery.start_date' : kw['from_date'], 'range' : 'min'} sql_kw['delivery.start_date'] = Query(**query_kw) -if kw.has_key('at_date') and kw['at_date'] is not None: +if 'at_date' in kw and kw['at_date'] is not None: query_kw = {'delivery.stop_date' : kw['at_date'], 'range' : 'ngt'} sql_kw['delivery.stop_date'] = Query(**query_kw) -if kw.has_key('simulation_state') and len(kw['simulation_state']) > 0 : +if 'simulation_state' in kw and len(kw['simulation_state']) > 0 : sql_kw['simulation_state'] = kw['simulation_state'] task_list = [x.getObject() for x in \ diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getSourceProjectRelatedTaskReportList.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getSourceProjectRelatedTaskReportList.py index 6dc456c23c..95595d432b 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getSourceProjectRelatedTaskReportList.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Project_getSourceProjectRelatedTaskReportList.py @@ -4,18 +4,18 @@ source_project_uid_list = [x.uid for x in context.portal_catalog( from Products.ZSQLCatalog.SQLCatalog import Query sql_kw = {} -if kw.has_key('from_date') and kw['from_date'] is not None: +if 'from_date' in kw and kw['from_date'] is not None: query_kw = {'delivery.start_date' : kw['from_date'], 'range' : 'min'} sql_kw['delivery.start_date'] = Query(**query_kw) -if kw.has_key('at_date') and kw['at_date'] is not None: +if 'at_date' in kw and kw['at_date'] is not None: query_kw = {'delivery.stop_date' : kw['at_date'], 'range' : 'ngt'} sql_kw['delivery.stop_date'] = Query(**query_kw) # Make sure to not include "confirmed tasks" in any case, because in # this case we must take task reports -if kw.has_key('simulation_state') and len(kw['simulation_state']) > 0 : +if 'simulation_state' in kw and len(kw['simulation_state']) > 0 : task_simulation_state = [x for x in kw['simulation_state'] if x != 'confirmed'] task_report_simulation_state = kw['simulation_state'] else: diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Requirement_generateRequirements.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Requirement_generateRequirements.py index 3a66aada71..fdc067954d 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Requirement_generateRequirements.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Requirement_generateRequirements.py @@ -26,7 +26,7 @@ requirements_items = [] # get the user information for requirement_line in listbox: - if requirement_line.has_key('listbox_key'): + if 'listbox_key' in requirement_line: requirement_line_id = int(requirement_line['listbox_key']) requirement = {} requirement['id'] = requirement_line_id @@ -76,7 +76,7 @@ for requirement_item in requirements_items: new_1st_level_requirement.append(new_2nd_level_feat) if has_1st_level_requirement: - if clean_requirements.has_key(new_1st_level_requirement_title): + if new_1st_level_requirement_title in clean_requirements: new_1st_level_requirement = clean_requirements[new_1st_level_requirement_title] + new_1st_level_requirement clean_requirements[new_1st_level_requirement_title] = new_1st_level_requirement clean_requirements_key_list.append(new_1st_level_requirement_title) diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/TaskReport_getSourceTaskReportList.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/TaskReport_getSourceTaskReportList.py index 69de4f58ba..565d490b47 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/TaskReport_getSourceTaskReportList.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/TaskReport_getSourceTaskReportList.py @@ -3,7 +3,7 @@ log('task_list','starting') task_module = context.getDefaultModule('Task Report') log('task_list','next1') task_list = [] -if not kw.has_key('parent_uid'): +if 'parent_uid' not in kw: kw['parent_uid'] = task_module.getUid() log('task_list','next2') log('context.getPath()',context.getPath()) diff --git a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Task_isSimpleTask.py b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Task_isSimpleTask.py index 46a5a15eb5..e8435c646f 100644 --- a/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Task_isSimpleTask.py +++ b/bt5/erp5_project/SkinTemplateItem/portal_skins/erp5_project/Task_isSimpleTask.py @@ -1,2 +1,2 @@ obj_len = len(context.objectValues(portal_type=("Task Line", "Task Report Line"))) -return (obj_len == 0) or ((obj_len == 1) and context.has_key('default_task_line')) +return (obj_len == 0) or ((obj_len == 1) and 'default_task_line' in context) diff --git a/bt5/erp5_project/TestTemplateItem/portal_components/test.erp5.testProject.py b/bt5/erp5_project/TestTemplateItem/portal_components/test.erp5.testProject.py index 1590b36adc..bbdc0c84a5 100644 --- a/bt5/erp5_project/TestTemplateItem/portal_components/test.erp5.testProject.py +++ b/bt5/erp5_project/TestTemplateItem/portal_components/test.erp5.testProject.py @@ -62,18 +62,18 @@ class TestProject(ERP5TypeTestCase): rule.validate() # create organisations - if not self.portal.organisation_module.has_key('Organisation_1'): + if 'Organisation_1' not in self.portal.organisation_module: self.portal.organisation_module.newContent( title='Organisation_1', id='Organisation_1') # create organisations - if not self.portal.organisation_module.has_key('Organisation_2'): + if 'Organisation_2' not in self.portal.organisation_module: self.portal.organisation_module.newContent( title='Organisation_2', id='Organisation_2') # create project - if not self.portal.project_module.has_key('Project_1'): + if 'Project_1' not in self.portal.project_module: self.portal.project_module.newContent( portal_type='Project', reference='Project_1', @@ -82,7 +82,7 @@ class TestProject(ERP5TypeTestCase): # Create resources module = self.portal.product_module - if not module.has_key('development'): + if 'development' not in module: module.newContent( portal_type='Product', id='development', diff --git a/bt5/erp5_project/TestTemplateItem/portal_components/test.erp5.testTaskReporting.py b/bt5/erp5_project/TestTemplateItem/portal_components/test.erp5.testTaskReporting.py index fd6d72e3fe..90a605e215 100644 --- a/bt5/erp5_project/TestTemplateItem/portal_components/test.erp5.testTaskReporting.py +++ b/bt5/erp5_project/TestTemplateItem/portal_components/test.erp5.testTaskReporting.py @@ -71,14 +71,14 @@ class TestTaskReportingMixin(ERP5ReportTestCase): rule.validate() # create organisations - if not self.portal.organisation_module.has_key('Organisation_1'): + if 'Organisation_1' not in self.portal.organisation_module: self.portal.organisation_module.newContent( portal_type='Organisation', reference='Organisation_1', title='Organisation_1', id='Organisation_1') - if not self.portal.organisation_module.has_key('Organisation_2'): + if 'Organisation_2' not in self.portal.organisation_module: self.portal.organisation_module.newContent( portal_type='Organisation', reference='Organisation_2', @@ -86,13 +86,13 @@ class TestTaskReportingMixin(ERP5ReportTestCase): id='Organisation_2') # create persons - if not self.portal.person_module.has_key('Person_1'): + if 'Person_1' not in self.portal.person_module: self.portal.person_module.newContent( portal_type='Person', reference='Person_1', title='Person_1', id='Person_1') - if not self.portal.person_module.has_key('Person_2'): + if 'Person_2' not in self.portal.person_module: self.portal.person_module.newContent( portal_type='Person', reference='Person_2', @@ -100,7 +100,7 @@ class TestTaskReportingMixin(ERP5ReportTestCase): id='Person_2') # create project - if not self.portal.project_module.has_key('Project_1'): + if 'Project_1' not in self.portal.project_module: project = self.portal.project_module.newContent( portal_type='Project', reference='Project_1', @@ -114,7 +114,7 @@ class TestTaskReportingMixin(ERP5ReportTestCase): project.newContent(portal_type='Project Line', id='Line_2', title='Line_2') - if not self.portal.project_module.has_key('Project_2'): + if 'Project_2' not in self.portal.project_module: project = self.portal.project_module.newContent( portal_type='Project', reference='Project_2', @@ -125,7 +125,7 @@ class TestTaskReportingMixin(ERP5ReportTestCase): # create unit categories for unit_id in ('day', 'hour',): - if not self.portal.portal_categories['quantity_unit'].has_key(unit_id): + if unit_id not in self.portal.portal_categories['quantity_unit']: self.portal.portal_categories.quantity_unit.newContent( portal_type='Category', title=unit_id.title(), @@ -134,7 +134,7 @@ class TestTaskReportingMixin(ERP5ReportTestCase): # Create resources module = self.portal.product_module - if not module.has_key('development'): + if 'development' not in module: module.newContent( portal_type='Product', id='development', @@ -142,7 +142,7 @@ class TestTaskReportingMixin(ERP5ReportTestCase): reference='ref 1', quantity_unit='day' ) - if not module.has_key('consulting'): + if 'consulting' not in module: module.newContent( portal_type='Product', id='consulting', diff --git a/bt5/erp5_research_item/TestTemplateItem/portal_components/test.erp5.testResearchItemSummaryReport.py b/bt5/erp5_research_item/TestTemplateItem/portal_components/test.erp5.testResearchItemSummaryReport.py index 63548bb0de..b4f1e188d1 100644 --- a/bt5/erp5_research_item/TestTemplateItem/portal_components/test.erp5.testResearchItemSummaryReport.py +++ b/bt5/erp5_research_item/TestTemplateItem/portal_components/test.erp5.testResearchItemSummaryReport.py @@ -42,16 +42,16 @@ class TestResearchItemSummaryReport(TestTaskReportingMixin): super(TestResearchItemSummaryReport, self).afterSetUp() ledger_base_category = self.portal.portal_categories.ledger for category_id in ("operation", "research"): - if not ledger_base_category.has_key(category_id): + if category_id not in ledger_base_category: ledger_base_category.newContent( portal_type='Category', title=category_id.title(), reference=category_id, id=category_id) # create items - if not self.portal.research_item_module.has_key('Item_1'): + if 'Item_1' not in self.portal.research_item_module: self.portal.research_item_module.newContent(title="Item_1", id="Item_1", portal_type="Research Item") - if not self.portal.research_item_module.has_key('Item_2'): + if 'Item_2' not in self.portal.research_item_module: self.portal.research_item_module.newContent(title="Item_2", id="Item_2", portal_type="Research Item") diff --git a/bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/TestPageModule_createChapter.py b/bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/TestPageModule_createChapter.py index 1ac6ed8450..26c5d7a84e 100644 --- a/bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/TestPageModule_createChapter.py +++ b/bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/TestPageModule_createChapter.py @@ -11,7 +11,7 @@ if image_caption in [None, ""]: image_caption = chapter_title session = context.ERP5Site_acquireRunMyDocsSession() -if session.has_key('listbox') and len(session['listbox']) > 0: +if 'listbox' in session and len(session['listbox']) > 0: listbox = session['listbox'] int_index = listbox[-1].int_index + 1 else: diff --git a/bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/TestPageModule_getPreviousChapterList.py b/bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/TestPageModule_getPreviousChapterList.py index 6f7be146eb..49bff62629 100644 --- a/bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/TestPageModule_getPreviousChapterList.py +++ b/bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/TestPageModule_getPreviousChapterList.py @@ -3,7 +3,7 @@ """ session = context.ERP5Site_acquireRunMyDocsSession() -if session.has_key('listbox'): +if 'listbox' in session: listbox = session['listbox'] else: listbox = [] diff --git a/bt5/erp5_simplified_invoicing/TestTemplateItem/portal_components/test.erp5.testBPMCore.py b/bt5/erp5_simplified_invoicing/TestTemplateItem/portal_components/test.erp5.testBPMCore.py index 8a02ce903d..df56fe3d03 100644 --- a/bt5/erp5_simplified_invoicing/TestTemplateItem/portal_components/test.erp5.testBPMCore.py +++ b/bt5/erp5_simplified_invoicing/TestTemplateItem/portal_components/test.erp5.testBPMCore.py @@ -444,7 +444,7 @@ class TestBPMImplementation(TestBPMDummyDeliveryMovementMixin): context_movement = self.createMovement() self.assertEqual(None, business_path.getSourceValue()) - self.assertFalse(business_path.getArrowCategoryDict(context=context_movement).has_key('source')) + self.assertFalse('source' in business_path.getArrowCategoryDict(context=context_movement)) def test_BusinessPathDynamicCategoryAccessProviderReplaceCategory(self): business_path = self.createTradeModelPath() diff --git a/bt5/erp5_syncml/DocumentTemplateItem/portal_components/document.erp5.SyncMLSubscription.py b/bt5/erp5_syncml/DocumentTemplateItem/portal_components/document.erp5.SyncMLSubscription.py index 5d05aa0d37..5ab04d8e61 100644 --- a/bt5/erp5_syncml/DocumentTemplateItem/portal_components/document.erp5.SyncMLSubscription.py +++ b/bt5/erp5_syncml/DocumentTemplateItem/portal_components/document.erp5.SyncMLSubscription.py @@ -112,7 +112,7 @@ class SyncMLSubscription(XMLObject): activate_kw : activity parameters to pass to activate call kw : any parameter getAndActivate can required if it calls itself """ - if kw.has_key("packet_size"): + if "packet_size" in kw: search_kw = dict(kw) packet_size = search_kw.pop('packet_size', 30) limit = packet_size * search_kw.pop('activity_count', 100) @@ -277,7 +277,7 @@ class SyncMLSubscription(XMLObject): syncml_logger.debug("--> calling getAndActivate packet size = %s, limit = %s", packet_size, limit) # We must know if we have a lower limit or not to propagate - if not kw.has_key("strict_min_gid"): + if "strict_min_gid" not in kw: first_call = True else: first_call = False diff --git a/bt5/erp5_syncml/ModuleComponentTemplateItem/portal_components/module.erp5.ERP5ShopOrderConduit.py b/bt5/erp5_syncml/ModuleComponentTemplateItem/portal_components/module.erp5.ERP5ShopOrderConduit.py index f31f4f1ca1..a737bdba01 100644 --- a/bt5/erp5_syncml/ModuleComponentTemplateItem/portal_components/module.erp5.ERP5ShopOrderConduit.py +++ b/bt5/erp5_syncml/ModuleComponentTemplateItem/portal_components/module.erp5.ERP5ShopOrderConduit.py @@ -292,7 +292,7 @@ class ERP5ShopOrderConduit(ERP5Conduit): * machin = getattr (object, methos) * machin() """ - if kw.has_key(key): + if key in kw: new_value = kw[key] if new_value != None: if isinstance(new_value, str): @@ -338,7 +338,7 @@ class ERP5ShopOrderConduit(ERP5Conduit): erp5_site_path = erp5_site.absolute_url(relative=1) # The object is a ShopOrder - if kw.has_key('country'): + if 'country' in kw: object.setStartDate(kw['target_start_date']) object.setStopDate(kw['target_stop_date']) # Find the organisation and the person folder @@ -379,7 +379,7 @@ class ERP5ShopOrderConduit(ERP5Conduit): previous_owner_type = 'o' # Organisation is more important than the person # This is a particular case where the user put # the name of an organisation in his own name - if not kw.has_key('organisation'): + if 'organisation' not in kw: kw['organisation'] = org_object.getId() #if len(previous_owner_type) == 0: # previous_owner_type = None @@ -387,11 +387,11 @@ class ERP5ShopOrderConduit(ERP5Conduit): # Try to know the type of the current storever customer owner_type = '' - if kw.has_key('name') and kw['name'] not in (None, ''): + if 'name' in kw and kw['name'] not in (None, ''): owner_type += 'p' - if kw.has_key('organisation') and kw['organisation'] not in (None, '', 'none'): + if 'organisation' in kw and kw['organisation'] not in (None, '', 'none'): owner_type += 'o' - if kw.has_key('eu_vat') and kw['eu_vat'] not in (None, '') and owner_type.find('o') == -1: + if 'eu_vat' in kw and kw['eu_vat'] not in (None, '') and owner_type.find('o') == -1: owner_type += 'o' if len(owner_type) == 0: owner_type = None @@ -511,11 +511,11 @@ class ERP5ShopOrderConduit(ERP5Conduit): # elif previous_address.strip().lower() != kw['address'].strip().lower(): # LOG('We have to make the fusion of previous address with the current one >>>>>>>', 0, '') - if kw.has_key('city') and kw['city']!=None: + if 'city' in kw and kw['city']!=None: person_object.setDefaultAddressCity(kw['city'].title()) - if kw.has_key('address') and kw['address'] != None: + if 'address' in kw and kw['address'] != None: person_object.setDefaultAddressStreetAddress(kw['address'].title()) - if kw.has_key('zipcode') and kw['zipcode']!=None: + if 'zipcode' in kw and kw['zipcode']!=None: person_object.setDefaultAddressZipCode(kw['zipcode']) # # TODO : set the person products interest (storever, etc) # Search the country in the region category @@ -525,15 +525,15 @@ class ERP5ShopOrderConduit(ERP5Conduit): person_object.setDefaultAddressRegion(region_path) # else: # # TODO : Ask the user to select an appropriate region - if kw.has_key('email') and kw['email'] != None: + if 'email' in kw and kw['email'] != None: person_object.setDefaultEmailText(kw['email']) - if kw.has_key('phone') and kw['phone'] != None: + if 'phone' in kw and kw['phone'] != None: person_object.setDefaultTelephoneText(kw['phone']) # # TODO : Don't work # person_object.setDefaultCareerRole("client") # Split the name to give at least a required LastName # Then the title will be automaticaly created by the Person object from this data - if kw.has_key('name') and kw['name'] != None: + if 'name' in kw and kw['name'] != None: splitted_name = kw['name'].strip().split(" ") person_object.setLastName((splitted_name[-1]).title()) if len(splitted_name) > 1: @@ -545,13 +545,13 @@ class ERP5ShopOrderConduit(ERP5Conduit): if owner_type.find('o') != -1 and previous_owner_type =='o': # # TODO : fix this # person_object.setSubordination("organisation/" + owner_id) - if kw.has_key('organisation') and kw['organisation'] != None: + if 'organisation' in kw and kw['organisation'] != None: org_object.setTitle(kw['organisation'].title()) org_object.setCorporateName(kw['organisation'].title()) - if kw.has_key('eu_vat') and kw['eu_vat'] != None: + if 'eu_vat' in kw and kw['eu_vat'] != None: org_object.setVatCode(kw['eu_vat']) # Test for debug - if (not (kw.has_key('organisation')) or (kw.has_key('organisation') and kw['organisation'] != None)) and (not (kw.has_key('eu_vat')) or (kw.has_key('eu_vat') and kw['eu_vat'] != None)): + if (not ('organisation' in kw) or ('organisation' in kw and kw['organisation'] != None)) and (not ('eu_vat' in kw) or ('eu_vat' in kw and kw['eu_vat'] != None)): LOG("AARRGG ! Big conflict detected : this organisation has no title or eu_vat. These properties are primary key to deduced that the storever member account was an organisation >>>>>>>>>>", 0, '') org_object.setRole("client") @@ -570,17 +570,17 @@ class ERP5ShopOrderConduit(ERP5Conduit): object.setDestination("organisation/" + owner_id) object.setDestinationSection("organisation/" + owner_id) # All information describe the organisation - if kw.has_key('organisation') and kw['organisation'] != None: + if 'organisation' in kw and kw['organisation'] != None: org_object.setTitle(kw['organisation'].title()) org_object.setCorporateName(kw['organisation'].title()) org_object.setRole("client") - if kw.has_key('eu_vat') and kw['eu_vat'] != None: + if 'eu_vat' in kw and kw['eu_vat'] != None: org_object.setVatCode(kw['eu_vat']) - if kw.has_key('address') and kw['address'] != None: + if 'address' in kw and kw['address'] != None: org_object.setDefaultAddressStreetAddress(kw['address'].title()) - if kw.has_key('city') and kw['city'] != None: + if 'city' in kw and kw['city'] != None: org_object.setDefaultAddressCity(kw['city'].title()) - if kw.has_key('zipcode') and kw['zipcode'] != None: + if 'zipcode' in kw and kw['zipcode'] != None: org_object.setDefaultAddressZipCode(kw['zipcode']) # Search the country in the region category if kw['country'] != None: @@ -589,13 +589,13 @@ class ERP5ShopOrderConduit(ERP5Conduit): org_object.setDefaultAddressRegion(region_path) # else: # # TODO : Ask the user to select an appropriate region - if kw.has_key('email') and kw['email'] != None: + if 'email' in kw and kw['email'] != None: org_object.setDefaultEmailText(kw['email']) - if kw.has_key('phone') and kw['phone'] != None: + if 'phone' in kw and kw['phone'] != None: org_object.setDefaultTelephoneText(kw['phone']) # Save the billing address in the description, because there is no dedicated place for it - if kw.has_key('billing_address') and len(kw['billing_address']) > 0: + if 'billing_address' in kw and len(kw['billing_address']) > 0: object.setDescription("Send the bill to : " + kw['billing_address']) # Set the Title because its required object.setTitle("Storever Order " + str(kw['order_id'])) diff --git a/bt5/erp5_tiosafe_core/DocumentTemplateItem/portal_components/document.erp5.WebServiceRequest.py b/bt5/erp5_tiosafe_core/DocumentTemplateItem/portal_components/document.erp5.WebServiceRequest.py index 70a8952aaf..e853ac05d7 100644 --- a/bt5/erp5_tiosafe_core/DocumentTemplateItem/portal_components/document.erp5.WebServiceRequest.py +++ b/bt5/erp5_tiosafe_core/DocumentTemplateItem/portal_components/document.erp5.WebServiceRequest.py @@ -111,11 +111,11 @@ class WebServiceRequest(XMLObject, ZopePageTemplate): if REQUEST is not None: return self.view() #LOG("_call__", 300, kw) - if kw.has_key("id"): + if "id" in kw: kw[self.getIDParameterName()] = str(kw.pop("id")) sub_id = None - if kw.has_key(self.getIDParameterName()) and ID_SEPARATOR in kw[self.getIDParameterName()]: + if self.getIDParameterName() in kw and ID_SEPARATOR in kw[self.getIDParameterName()]: kw[self.getIDParameterName()], sub_id = kw[self.getIDParameterName()].split(ID_SEPARATOR) object_list = [] diff --git a/bt5/erp5_tiosafe_core/ModuleComponentTemplateItem/portal_components/module.erp5.TioSafeUtils.py b/bt5/erp5_tiosafe_core/ModuleComponentTemplateItem/portal_components/module.erp5.TioSafeUtils.py index 1069c57312..0dbeabebb8 100644 --- a/bt5/erp5_tiosafe_core/ModuleComponentTemplateItem/portal_components/module.erp5.TioSafeUtils.py +++ b/bt5/erp5_tiosafe_core/ModuleComponentTemplateItem/portal_components/module.erp5.TioSafeUtils.py @@ -68,7 +68,7 @@ class NewEchoDictTarget: self.current_parser = subtag else: if self._current_object is not None and \ - not self._current_object.has_key(value): + value not in self._current_object: # Create default value self._current_object[value] = "" self._current_key = value @@ -102,7 +102,7 @@ class NewEchoDictTarget: def data(self, data): if self._current_key and len(data.strip()): # for the element browsed several time - if self._current_object.has_key(self._current_key): + if self._current_key in self._current_object: data = self._current_object[self._current_key] + data self._current_object[self._current_key] = data @@ -148,7 +148,7 @@ class EchoDictTarget: if root: self._current_object = {} if self._current_object is not None and \ - not self._current_object.has_key(value): + value not in self._current_object: self._current_object[value] = "" self._current_key = value else: @@ -171,7 +171,7 @@ class EchoDictTarget: def data(self, data): if self._current_key and len(data.strip()): # for the element browsed several time - if self._current_object.has_key(self._current_key): + if self._current_key in self._current_object: data = self._current_object[self._current_key] + data self._current_object[self._current_key] = data diff --git a/bt5/erp5_tiosafe_core/SkinTemplateItem/portal_skins/erp5_integration/IntegrationSite_setCategoryMappingLineList.py b/bt5/erp5_tiosafe_core/SkinTemplateItem/portal_skins/erp5_integration/IntegrationSite_setCategoryMappingLineList.py index 00bcafadac..398ac3dfa0 100644 --- a/bt5/erp5_tiosafe_core/SkinTemplateItem/portal_skins/erp5_integration/IntegrationSite_setCategoryMappingLineList.py +++ b/bt5/erp5_tiosafe_core/SkinTemplateItem/portal_skins/erp5_integration/IntegrationSite_setCategoryMappingLineList.py @@ -25,7 +25,7 @@ def createCategory(object_mapping=None, category=""): mapping_dict = {} destination_list = [] for line in listbox: - if line.has_key('listbox_key'): + if 'listbox_key' in line: line_id = line['listbox_key'] mapping_dict[line_id] = line if line["destination_reference_text"] != "": diff --git a/bt5/erp5_tiosafe_core/SkinTemplateItem/portal_skins/erp5_integration/IntegrationSite_updateCategoryMappingLineList.py b/bt5/erp5_tiosafe_core/SkinTemplateItem/portal_skins/erp5_integration/IntegrationSite_updateCategoryMappingLineList.py index 8537e9dbeb..080c2b7764 100644 --- a/bt5/erp5_tiosafe_core/SkinTemplateItem/portal_skins/erp5_integration/IntegrationSite_updateCategoryMappingLineList.py +++ b/bt5/erp5_tiosafe_core/SkinTemplateItem/portal_skins/erp5_integration/IntegrationSite_updateCategoryMappingLineList.py @@ -14,14 +14,14 @@ def getMappingChildUid(mapping): def resetListBox(listbox, uid_list): for line in listbox: - if line.has_key('listbox_key'): + if 'listbox_key' in line: line_id = line['listbox_key'] if line_id in uid_list: line['destination_reference'] = "" return listbox for line in listbox: - if line.has_key('listbox_key'): + if 'listbox_key' in line: line_id = line['listbox_key'] mapping_dict[line_id] = line if line["destination_reference_text"] != "": diff --git a/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/OrderModule_getOrderStatList.py b/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/OrderModule_getOrderStatList.py index 2650fdd985..9438179bd2 100644 --- a/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/OrderModule_getOrderStatList.py +++ b/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/OrderModule_getOrderStatList.py @@ -73,11 +73,11 @@ if len(client_dict): line_total_amount = 0 for period in period_list: # client -> period - if client_dict[client_title].has_key(period): + if period in client_dict[client_title]: obj['Amount %s' %(period)] = round(client_dict[client_title][period]['amount'], 2) line_total_amount += client_dict[client_title][period]['amount'] if report_group_by == "client": - if period_counter_dict.has_key('Amount %s' %(period)): + if 'Amount %s' %(period) in period_counter_dict: period_counter_dict['Amount %s' %(period)] = period_counter_dict['Amount %s' %(period)] + client_dict[client_title][period]['amount'] else: period_counter_dict['Amount %s' %(period)] = client_dict[client_title][period]['amount'] @@ -85,7 +85,7 @@ if len(client_dict): obj['Amount %s' %(period)] = 0 obj['total amount'] = round(line_total_amount, 2) if report_group_by == "client": - if period_counter_dict.has_key('total amount'): + if 'total amount' in period_counter_dict: period_counter_dict['total amount'] = period_counter_dict['total amount'] + line_total_amount else: period_counter_dict['total amount'] = line_total_amount @@ -94,7 +94,7 @@ if len(client_dict): if report_group_by == "both": product_lines_list = [] # one line per product - if product_dict.has_key(client_title): + if client_title in product_dict: line_product_dict = product_dict[client_title] for product_title in line_product_dict.keys(): obj = Object(uid="new_") @@ -102,7 +102,7 @@ if len(client_dict): line_total_amount = 0 line_total_quantity = 0 for period in period_list: - if line_product_dict[product_title].has_key(period): + if period in line_product_dict[product_title]: obj['Amount %s' %(period)] = round(line_product_dict[product_title][period]['amount'], 2) obj['Quantity %s' %(period)] = line_product_dict[product_title][period]['quantity'] obj['Quantity Unit %s' %(period)] = line_product_dict[product_title][period]['quantity_unit'] @@ -110,7 +110,7 @@ if len(client_dict): line_total_amount += line_product_dict[product_title][period]['amount'] line_total_quantity += line_product_dict[product_title][period]['quantity'] # counter for stat line - if period_counter_dict.has_key('Amount %s' %(period)): + if 'Amount %s' %(period) in period_counter_dict: period_counter_dict['Amount %s' %(period)] = period_counter_dict['Amount %s' %(period)] + \ line_product_dict[product_title][period]['amount'] else: @@ -124,7 +124,7 @@ if len(client_dict): obj['total quantity'] = line_total_quantity obj['total amount'] = round(line_total_amount, 2) # total for stat line - if period_counter_dict.has_key('total amount'): + if 'total amount' in period_counter_dict: period_counter_dict['total amount'] = period_counter_dict['total amount'] + line_total_amount else: period_counter_dict['total amount'] = line_total_amount @@ -142,7 +142,7 @@ else: line_total_amount = 0 line_total_quantity = 0 for period in period_list: - if product_dict[product_title].has_key(period): + if period in product_dict[product_title]: obj['Amount %s' %(period)] = round(product_dict[product_title][period]['amount'],2) obj['Quantity %s' %(period)] = product_dict[product_title][period]['quantity'] obj['Quantity Unit %s' %(period)] = product_dict[product_title][period]['quantity_unit'] @@ -150,7 +150,7 @@ else: line_total_amount += product_dict[product_title][period]['amount'] line_total_quantity += product_dict[product_title][period]['quantity'] # counter for stat line - if period_counter_dict.has_key('Amount %s' %(period)): + if 'Amount %s' %(period) in period_counter_dict: period_counter_dict['Amount %s' %(period)] = period_counter_dict['Amount %s' %(period)] + product_dict[product_title][period]['amount'] else: period_counter_dict['Amount %s' %(period)] = product_dict[product_title][period]['amount'] @@ -162,7 +162,7 @@ else: obj['total quantity'] = line_total_quantity obj['total amount'] = round(line_total_amount,2) # total for stat line - if period_counter_dict.has_key('total amount'): + if 'total amount' in period_counter_dict: period_counter_dict['total amount'] = period_counter_dict['total amount'] + line_total_amount else: period_counter_dict['total amount'] = line_total_amount diff --git a/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/OrderModule_processOrderStat.py b/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/OrderModule_processOrderStat.py index bff7931255..3fe693341b 100644 --- a/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/OrderModule_processOrderStat.py +++ b/bt5/erp5_trade/SkinTemplateItem/portal_skins/erp5_trade/OrderModule_processOrderStat.py @@ -35,13 +35,13 @@ for result in document_list: else: client_title = result['source_section_title'] # FIXME: if two clients have the same title, do we want to group ? - if not client_dict.has_key(client_title): + if client_title not in client_dict: client_dict[client_title] = {} - if client_dict[client_title].has_key(period): + if period in client_dict[client_title]: client_dict[client_title][period]['amount'] = client_dict[client_title][period]['amount'] + (total_price or 0) else: client_dict[client_title][period] = {'amount' : total_price or 0} - if not product_dict.has_key(client_title): + if client_title not in product_dict: line_dict = product_dict[client_title] = {} else: line_dict = product_dict[client_title] @@ -54,12 +54,12 @@ for result in document_list: for line in line_list: # FIXME: if two resources have the same title, do we want to group ? product_title = line.resource_title - if not line_dict.has_key(product_title): + if product_title not in line_dict: line_dict[product_title] = {period :{"amount" : line.total_price or 0, "quantity" : line.quantity or 0, "quantity_unit" : translate(line.strict_quantity_unit_title)}} else: - if not line_dict[product_title].has_key(period): + if period not in line_dict[product_title]: line_dict[product_title][period] = {"amount" : line.total_price or 0, "quantity" : line.quantity or 0, "quantity_unit" : translate(line.strict_quantity_unit_title)} diff --git a/bt5/erp5_trade/TestTemplateItem/portal_components/test.erp5.testTradeReports.py b/bt5/erp5_trade/TestTemplateItem/portal_components/test.erp5.testTradeReports.py index 0bb6b96289..2729eb07a1 100644 --- a/bt5/erp5_trade/TestTemplateItem/portal_components/test.erp5.testTradeReports.py +++ b/bt5/erp5_trade/TestTemplateItem/portal_components/test.erp5.testTradeReports.py @@ -78,7 +78,7 @@ class TestTradeReports(ERP5ReportTestCase): ('demo_site_A', 'DEMO-SITE-A'), ('demo_site_B', 'DEMO-SITE-B'), ): - if not self.portal_categories['site'].has_key(site_id): + if site_id not in self.portal_categories['site']: self.portal_categories.site.newContent( portal_type='Category', title=site_id, @@ -87,7 +87,7 @@ class TestTradeReports(ERP5ReportTestCase): id=site_id) # Colour categories for colour_id in ('colour1', 'colour2',): - if not self.portal_categories['colour'].has_key(colour_id): + if colour_id not in self.portal_categories['colour']: self.portal_categories.colour.newContent( portal_type='Category', title=colour_id, @@ -96,7 +96,7 @@ class TestTradeReports(ERP5ReportTestCase): # create group categories for group_id in ('g1', 'g2', 'g3'): - if not self.portal_categories['group'].has_key(group_id): + if group_id not in self.portal_categories['group']: self.portal_categories.group.newContent( portal_type='Category', title=group_id, @@ -105,7 +105,7 @@ class TestTradeReports(ERP5ReportTestCase): # create use categories for use_id in ('u1', 'u2'): - if not self.portal_categories['use'].has_key(use_id): + if use_id not in self.portal_categories['use']: self.portal_categories.use.newContent( portal_type='Category', title=use_id, @@ -113,7 +113,7 @@ class TestTradeReports(ERP5ReportTestCase): id=use_id) # currencies - if not self.portal.currency_module.has_key('EUR'): + if 'EUR' not in self.portal.currency_module: self.portal.currency_module.newContent( portal_type='Currency', id='EUR', @@ -122,7 +122,7 @@ class TestTradeReports(ERP5ReportTestCase): # product line for product_line in ('product_line_a','product_line_b'): - if not self.portal_categories.product_line.has_key(product_line): + if product_line not in self.portal_categories.product_line: self.portal_categories.product_line.newContent( portal_type='Category', title=product_line, @@ -131,7 +131,7 @@ class TestTradeReports(ERP5ReportTestCase): ) # create organisations (with no organisation member of g3) - if not self.organisation_module.has_key('Organisation_1'): + if 'Organisation_1' not in self.organisation_module: self.portal.organisation_module.newContent( portal_type='Organisation', reference='Organisation_1', @@ -145,7 +145,7 @@ class TestTradeReports(ERP5ReportTestCase): default_address_street_address='1 Organisation Street', default_address_zip_code='111', default_address_city='City', ) - if not self.organisation_module.has_key('Organisation_2'): + if 'Organisation_2' not in self.organisation_module: self.portal.organisation_module.newContent( portal_type='Organisation', reference='Organisation_2', @@ -154,7 +154,7 @@ class TestTradeReports(ERP5ReportTestCase): group='g2', site='demo_site_B') # no group no site - if not self.organisation_module.has_key('Organisation_3'): + if 'Organisation_3' not in self.organisation_module: self.portal.organisation_module.newContent( portal_type='Organisation', reference='Organisation_3', @@ -162,12 +162,12 @@ class TestTradeReports(ERP5ReportTestCase): id='Organisation_3',) # create unit categories - if not self.portal_categories.quantity_unit.has_key('mass'): + if 'mass' not in self.portal_categories.quantity_unit: self.portal_categories.quantity_unit.newContent( portal_type='Category', id='mass') for unit_id in ('kg', 'g',): - if not self.portal_categories.quantity_unit.mass.has_key(unit_id): + if unit_id not in self.portal_categories.quantity_unit.mass: self.portal_categories.quantity_unit.mass.newContent( portal_type='Category', title=unit_id.title(), @@ -175,7 +175,7 @@ class TestTradeReports(ERP5ReportTestCase): id=unit_id) # and corresponding unit conversion group - if not self.portal.quantity_unit_conversion_module.has_key('mass_conversion_group'): + if 'mass_conversion_group' not in self.portal.quantity_unit_conversion_module: self.portal.quantity_unit_conversion_module.newContent( portal_type='Quantity Unit Conversion Group', id='mass_conversion_group', @@ -216,7 +216,7 @@ class TestTradeReports(ERP5ReportTestCase): variation_base_category_list=['colour'], colour_list=['colour1', 'colour2'], ) - if not self.portal.service_module.has_key('service_a'): + if 'service_a' not in self.portal.service_module: self.portal.service_module.newContent( portal_type='Service', id='service_a', diff --git a/bt5/erp5_ui_test_core/SkinTemplateItem/portal_skins/erp5_ui_test_core/Zuite_generateFilename.py b/bt5/erp5_ui_test_core/SkinTemplateItem/portal_skins/erp5_ui_test_core/Zuite_generateFilename.py index 24c7c5e6e8..fb892346ad 100644 --- a/bt5/erp5_ui_test_core/SkinTemplateItem/portal_skins/erp5_ui_test_core/Zuite_generateFilename.py +++ b/bt5/erp5_ui_test_core/SkinTemplateItem/portal_skins/erp5_ui_test_core/Zuite_generateFilename.py @@ -8,7 +8,7 @@ if session_id is None or not session_id.startswith("erp5zuite"): request.RESPONSE.setCookie('erp5_session_id', session_id, expires=(now +expire_timeout_days).fCommon(), path='/') session = context.portal_sessions[session_id] -if not session.has_key('tempfolder') or session['tempfolder'] == '': +if 'tempfolder' not in session or session['tempfolder'] == '': session['tempfolder'] = context.Zuite_createTempFolder() + '/' return session['tempfolder'] + str(context.portal_ids.generateNewId(id_generator='zuite', id_group=context.getId(), default=1)) + '.png' diff --git a/bt5/erp5_ui_test_core/SkinTemplateItem/portal_skins/erp5_ui_test_core/Zuite_viewZeleniumTestLauncherValidator.py b/bt5/erp5_ui_test_core/SkinTemplateItem/portal_skins/erp5_ui_test_core/Zuite_viewZeleniumTestLauncherValidator.py index 635bdb7ae0..18ef18d55b 100644 --- a/bt5/erp5_ui_test_core/SkinTemplateItem/portal_skins/erp5_ui_test_core/Zuite_viewZeleniumTestLauncherValidator.py +++ b/bt5/erp5_ui_test_core/SkinTemplateItem/portal_skins/erp5_ui_test_core/Zuite_viewZeleniumTestLauncherValidator.py @@ -4,11 +4,11 @@ if web_page_context: no_web_page = False form_id = 'view' else: - no_web_page = not request.has_key('web_page') or request['web_page'] is None or not request['web_page'] + no_web_page = 'web_page' not in request or request['web_page'] is None or not request['web_page'] form_id = 'Zuite_viewRunZeleniumTestDialog' -no_reference = not request.has_key('web_page_reference') or request['web_page_reference'] is None or not request['web_page_reference'] -no_url = not request.has_key('url') or request['url'] is None or not request['url'] +no_reference = 'web_page_reference' not in request or request['web_page_reference'] is None or not request['web_page_reference'] +no_url = 'url' not in request or request['url'] is None or not request['url'] if no_web_page and no_url and no_reference: if validator: diff --git a/bt5/erp5_web/DocumentTemplateItem/portal_components/document.erp5.WebSite.py b/bt5/erp5_web/DocumentTemplateItem/portal_components/document.erp5.WebSite.py index 9feedcefcd..553853a200 100644 --- a/bt5/erp5_web/DocumentTemplateItem/portal_components/document.erp5.WebSite.py +++ b/bt5/erp5_web/DocumentTemplateItem/portal_components/document.erp5.WebSite.py @@ -171,7 +171,7 @@ class WebSite(WebSection): path = section.getPhysicalPath() for i in range(0, len(path)): sub_path = tuple(path[0:i]) - if section_dict.has_key(sub_path): + if sub_path in section_dict: del section_dict[sub_path] section_list = section_dict.values() diff --git a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/WebSite_logout.py b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/WebSite_logout.py index 0a81ff8479..9e35d78827 100644 --- a/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/WebSite_logout.py +++ b/bt5/erp5_web/SkinTemplateItem/portal_skins/erp5_web/WebSite_logout.py @@ -12,7 +12,7 @@ if username is not None: ) ) REQUEST = portal.REQUEST -if REQUEST.has_key('portal_skin'): +if 'portal_skin' in REQUEST: portal.portal_skins.clearSkinCookie() REQUEST.RESPONSE.expireCookie('__ac', path='/') diff --git a/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui/WebSite_logout.py b/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui/WebSite_logout.py index 5efe9a2019..78b7f9caa5 100644 --- a/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui/WebSite_logout.py +++ b/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui/WebSite_logout.py @@ -12,7 +12,7 @@ if username is not None: ) ) REQUEST = portal.REQUEST -if REQUEST.has_key('portal_skin'): +if 'portal_skin' in REQUEST: portal.portal_skins.clearSkinCookie() REQUEST.RESPONSE.expireCookie('__ac', path='/') diff --git a/bt5/erp5_web_ui_test/SkinTemplateItem/portal_skins/erp5_web_ui_test/WebSiteModule_resetWebZuite.py b/bt5/erp5_web_ui_test/SkinTemplateItem/portal_skins/erp5_web_ui_test/WebSiteModule_resetWebZuite.py index 570a75ffd9..a75a57b452 100644 --- a/bt5/erp5_web_ui_test/SkinTemplateItem/portal_skins/erp5_web_ui_test/WebSiteModule_resetWebZuite.py +++ b/bt5/erp5_web_ui_test/SkinTemplateItem/portal_skins/erp5_web_ui_test/WebSiteModule_resetWebZuite.py @@ -2,19 +2,19 @@ portal = context.getPortalObject() # Clean up the contents. -if portal.web_site_module.has_key('test_web_site'): +if 'test_web_site' in portal.web_site_module: portal.web_site_module.manage_delObjects('test_web_site') -if portal.web_site_module.has_key('web_site_test'): +if 'web_site_test' in portal.web_site_module: portal.web_site_module.manage_delObjects('web_site_test') -if portal.web_site_module.has_key('test_web_site_2'): +if 'test_web_site_2' in portal.web_site_module: portal.web_site_module.manage_delObjects('test_web_site_2') -if portal.web_site_module.has_key('test_web_site'): +if 'test_web_site' in portal.web_site_module: portal.web_site_module.manage_delObjects('test_web_site') -if portal.person_module.has_key('test_website_predicate'): +if 'test_website_predicate' in portal.person_module: portal.person_module.manage_delObjects('test_website_predicate') portal.web_page_module.manage_delObjects( @@ -22,7 +22,7 @@ portal.web_page_module.manage_delObjects( if x.getTitle().startswith('test_')]) # Create new users -if not portal.person_module.has_key('test_webmaster'): +if 'test_webmaster' not in portal.person_module: person = portal.person_module.newContent(id='test_webmaster', portal_type='Person') else: person = portal.person_module.test_webmaster @@ -47,6 +47,6 @@ if person.getValidationState() != 'validated': person.validate() # Create region category -if not portal.portal_categories.region.has_key('test_web_region'): +if 'test_web_region' not in portal.portal_categories.region: portal.portal_categories.region.newContent(id='test_web_region', portal_type='Category', title='test_web_region') return 'Reset Successfully.' diff --git a/product/ERP5Type/tests/Python3StyleTest.py b/product/ERP5Type/tests/Python3StyleTest.py index c19cc45812..5c0113c4c2 100644 --- a/product/ERP5Type/tests/Python3StyleTest.py +++ b/product/ERP5Type/tests/Python3StyleTest.py @@ -81,6 +81,8 @@ class Python3StyleTest(ERP5TypeTestCase): def test_importFixApplied(self): self._testFixer('import') + def test_hasKeyFixApplied(self): + self._testFixer('has_key') def test_suite(): suite = unittest.TestSuite() -- 2.30.9