function saveSettings($arrSettings) { global $_ARRAYLANG, $_CORELANG, $objDatabase; foreach ($arrSettings as $strName => $varValue) { switch ($strName) { case 'settingsNumEntries': $objSaveSettings = $objDatabase->Execute("TRUNCATE TABLE " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_num_entries"); foreach ($varValue as $intGroupId => $strNum) { $objSaveSettings = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_num_entries\n SET\n `group_id` = '" . intval($intGroupId) . "',\n `num_entries` = '" . contrexx_addslashes($strNum) . "'\n "); if ($objSaveSettings === false) { return false; } } break; case 'settingsNumCategories': $objSaveSettings = $objDatabase->Execute("TRUNCATE TABLE " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_num_categories"); foreach ($varValue as $intGroupId => $strNum) { $objSaveSettings = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_num_categories\n SET\n `group_id` = '" . intval($intGroupId) . "',\n `num_categories` = '" . contrexx_addslashes($strNum) . "'\n "); if ($objSaveSettings === false) { return false; } } break; case 'settingsNumLevels': $objSaveSettings = $objDatabase->Execute("TRUNCATE TABLE " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_num_levels"); foreach ($varValue as $intGroupId => $strNum) { $objSaveSettings = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_num_levels\n SET\n `group_id` = '" . intval($intGroupId) . "',\n `num_levels` = '" . contrexx_addslashes($strNum) . "'\n "); if ($objSaveSettings === false) { return false; } } break; case 'settingsActiveLanguages': $varValue = join(",", $varValue); default: $objSaveSettings = $objDatabase->Execute("\n UPDATE\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings\n SET\n `value`='" . contrexx_addslashes($varValue) . "'\n WHERE\n `name`='" . contrexx_addslashes($strName) . "'\n "); if ($objSaveSettings === false) { return false; } break; } } parent::getSettings(); parent::getCommunityGroups(); return true; }
function saveForm($arrData, $intFormId = null) { global $_ARRAYLANG, $_CORELANG, $objDatabase, $_LANGID; $intId = intval($intFormId); $strPicture = contrexx_addslashes(contrexx_strip_tags($arrData['formImage'])); $arrName = $arrData['formName']; $arrDescription = $arrData['formDescription']; $strCmd = strtolower(contrexx_addslashes(contrexx_strip_tags($arrData['formCmd']))); $intUseCategory = intval($arrData['formUseCategory']); $intUseLevel = isset($arrData['formUseLevel']) ? contrexx_input2int($arrData['formUseLevel']) : 0; $intUseReadyToConfirm = isset($arrData['formUseReadyToConfirm']) ? contrexx_input2int($arrData['formUseReadyToConfirm']) : 0; $intEntriesPerPage = isset($arrData['formEntriesPerPage']) ? contrexx_input2int($arrData['formEntriesPerPage']) : 0; if (empty($intId)) { //insert new form $objInsertAttributes = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_forms\n SET\n `order`='99',\n `picture`='" . $strPicture . "',\n `cmd`='" . $strCmd . "',\n `use_category`='" . $intUseCategory . "',\n `use_level`='" . $intUseLevel . "',\n `use_ready_to_confirm`='" . $intUseReadyToConfirm . "',\n `entries_per_page`='" . $intEntriesPerPage . "',\n `active`='0'\n "); if ($objInsertAttributes !== false) { $intId = $objDatabase->Insert_ID(); foreach ($this->arrFrontendLanguages as $key => $arrLang) { if (empty($arrName[0])) { $arrName[0] = ""; } $strName = $arrName[$arrLang['id']]; $strDescription = $arrDescription[$arrLang['id']]; if (empty($strName)) { $strName = $arrName[0]; } if (empty($strDescription)) { $strDescription = $arrDescription[0]; } $objInsertNames = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_form_names\n SET\n `lang_id`='" . intval($arrLang['id']) . "',\n `form_id`='" . intval($intId) . "',\n `form_name`='" . contrexx_raw2db(contrexx_input2raw($strName)) . "',\n `form_description`='" . contrexx_raw2db(contrexx_input2raw($strDescription)) . "'\n "); } $objCreateCatSelectors = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_order_rel_forms_selectors\n SET\n `selector_id`='9',\n `form_id`='" . intval($intId) . "',\n `selector_order`='0',\n `exp_search`='1'\n "); $objCreateLevelSelectors = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_order_rel_forms_selectors\n SET\n `selector_id`='10',\n `form_id`='" . intval($intId) . "',\n `selector_order`='1',\n `exp_search`='1'\n "); //permissions parent::getCommunityGroups(); foreach ($this->arrCommunityGroups as $intGroupId => $arrGroup) { $objInsertPerm = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_perm_group_forms\n SET\n `group_id`='" . intval($intGroupId) . "',\n `form_id`='" . intval($intId) . "',\n `status_group`='1'\n "); } if ($objInsertNames !== false && $objCreateCatSelectors !== false && $objCreateLevelSelectors !== false) { return true; } else { return false; } } else { return false; } } else { //update form $objUpdateAttributes = $objDatabase->Execute("\n UPDATE\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_forms\n SET\n `picture`='" . $strPicture . "',\n `cmd`='" . $strCmd . "',\n `use_category`='" . $intUseCategory . "',\n `use_level`='" . $intUseLevel . "',\n `use_ready_to_confirm`='" . $intUseReadyToConfirm . "',\n `entries_per_page`='" . $intEntriesPerPage . "'\n WHERE\n `id`='" . $intId . "'\n "); if ($objUpdateAttributes !== false) { //permissions $objDeletePerm = $objDatabase->Execute("DELETE FROM " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_perm_group_forms WHERE form_id='" . $intId . "'"); $settingsPermissionGroupForm = isset($arrData['settingsPermGroupForm'][$intId]) ? $arrData['settingsPermGroupForm'][$intId] : array(); foreach ($settingsPermissionGroupForm as $intGroupId => $intGroupStatus) { $objInsertPerm = $objDatabase->Execute("\n INSERT INTO\n " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_settings_perm_group_forms\n SET\n `group_id`='" . intval($intGroupId) . "',\n `form_id`='" . intval($intId) . "',\n `status_group`='" . intval($intGroupStatus) . "'\n "); } $objInsertNames = $this->updateFormLocale($arrName, $arrDescription, $intId); if ($objInsertNames !== false) { return true; } else { return false; } } else { return false; } } }