/** * treat all params then return array of values treated or false if error * * @param array $post the posted datas * @param string $prefix the prefix for datas name * @return array, the treated datas * @access public */ function treatParams($post, $prefix) { global $moduleCodename; $parameters = $this->getSubFieldParameters(); //treat all parameters by parent method $params = parent::treatParams($post, $prefix); //if parameters are not correct, return if ($params === false) { return false; } //then retreat some parameters specific to this object $module = CMS_modulesCatalog::getByCodename($moduleCodename); foreach ($parameters as $aParameter) { $paramType = $aParameter['type']; switch ($paramType) { case 'emailsubject': $params[$aParameter['internalName']] = $module->convertDefinitionString($params[$aParameter['internalName']], false); break; case 'emailbody': if (isset($post[$prefix . 'emailBody']) && is_array($post[$prefix . 'emailBody'])) { //this case is used during module import : datas are already posted with the good format $params[$aParameter['internalName']] = array('type' => isset($post[$prefix . 'emailBody']['type']) ? $post[$prefix . 'emailBody']['type'] : '', 'pageID' => isset($post[$prefix . 'emailBody']['pageID']) ? $post[$prefix . 'emailBody']['pageID'] : '', 'html' => isset($post[$prefix . 'emailBody']['html']) ? $module->convertDefinitionString($post[$prefix . 'emailBody']['html'], false) : '', 'pageURL' => isset($post[$prefix . 'emailBody']['pageURL']) ? $module->convertDefinitionString($post[$prefix . 'emailBody']['pageURL'], false) : ''); } else { $bodyType = $bodyPageId = $bodyHTML = $bodyPageURL = ''; if (isset($post[$prefix . 'emailBody'])) { $bodyType = $post[$prefix . 'emailBody']; } if (isset($post[$prefix . 'emailBody_pageID'])) { $bodyPageId = (int) $post[$prefix . 'emailBody_pageID']; } if (isset($post[$prefix . 'emailBody_html'])) { $bodyHTML = $post[$prefix . 'emailBody_html']; } if (isset($post[$prefix . 'emailBody_pageURL'])) { $bodyPageURL = $post[$prefix . 'emailBody_pageURL']; } if (!$bodyType || $bodyType == 1 && !$bodyHTML || $bodyType == 2 && !$bodyPageId) { return false; } $params[$aParameter['internalName']] = array('type' => $bodyType, 'pageID' => $bodyPageId, 'html' => $module->convertDefinitionString($bodyHTML, false), 'pageURL' => $module->convertDefinitionString($bodyPageURL, false)); } break; } } return $params; }
/** * treat all params then return array of values treated or false if error * * @param array $post the posted datas * @param string $prefix the prefix for datas name * @return array, the treated datas * @access public */ function treatParams($post, $prefix) { $params = parent::treatParams($post, $prefix); //if isCurrentUser parameter is selected, then the two others parameters can't be checked if ($params['isCurrentUser']) { $params['isGroup'] = false; $params['multiUserGroup'] = false; } return $params; }
/** * treat all params then return array of values treated or false if error * * @param array $post the posted datas * @param string $prefix the prefix for datas name * @return array, the treated datas * @access public */ function treatParams($post, $prefix) { $params = parent::treatParams($post, $prefix); if (!sensitiveIO::isPositiveInteger($params['maxLength'])) { return false; } //data can't be greater than 255 if ($params['maxLength'] > 255) { return false; } return $params; }
/** * Treat fields parameters to import * * @param array $params The import parameters. * array( * create => false|true : create missing objects (default : true) * update => false|true : update existing objects (default : true) * files => false|true : use files from PATH_TMP_FS (default : true) * ) * @param CMS_language $cms_language The CMS_langage to use * @param array $idsRelation : Reference : The relations between import datas ids and real imported ids * @param string $infos : Reference : The import infos returned * @return array : the treated parameters * @access public */ function importParams($params, $cms_language, &$idsRelation, &$infos) { //here we need to convert categories ids used in parameters $params = parent::treatParams($params, ''); //then try to convert categories ids if needed if (isset($params['rootCategory']) && $params['rootCategory'] && isset($idsRelation['categories'][$params['rootCategory']])) { $params['rootCategory'] = $idsRelation['categories'][$params['rootCategory']]; } if (isset($params['defaultValue']) && $params['defaultValue'] && isset($idsRelation['categories'][$params['defaultValue']])) { $params['defaultValue'] = $idsRelation['categories'][$params['defaultValue']]; } return $params; }
/** * treat all params then return array of values treated or false if error * * @param array $post the posted datas * @param string $prefix the prefix for datas name * @return array, the treated datas * @access public */ function treatParams($post, $prefix) { $params = parent::treatParams($post, $prefix); if (isset($params['fileIcons']) && is_string($params['fileIcons'])) { $params['fileIcons'] = unserialize(base64_decode($params['fileIcons'])); } return $params; }