/** * get labels for object structure and functions * * @return array : the labels of object structure and functions * @access public */ function getLabelsStructure(&$language, $objectName = '') { $labels = array(); $labels['structure']['label'] = $language->getMessage(self::MESSAGE_OBJECT_COMMON_LABEL_DESCRIPTION, false, MOD_POLYMOD_CODENAME); $labels['structure']['fieldname'] = $language->getMessage(self::MESSAGE_OBJECT_COMMON_FIELDNAME_DESCRIPTION, array(io::htmlspecialchars($this->getFieldLabel($language))), MOD_POLYMOD_CODENAME); $labels['structure']['fieldID'] = $language->getMessage(self::MESSAGE_OBJECT_COMMON_FIELDID_DESCRIPTION, array($this->_field->getID()), MOD_POLYMOD_CODENAME); $labels['structure']['value'] = $language->getMessage(self::MESSAGE_OBJECT_COMMON_VALUE_DESCRIPTION, false, MOD_POLYMOD_CODENAME); $labels['structure']['required'] = $language->getMessage(self::MESSAGE_OBJECT_COMMON_REQUIRED_DESCRIPTION, false, MOD_POLYMOD_CODENAME); $labels['structure']['description'] = $language->getMessage(self::MESSAGE_OBJECT_COMMON_FIELD_DESC_DESCRIPTION, array(io::htmlspecialchars($this->getFieldDescription($language))), MOD_POLYMOD_CODENAME); return $labels; }
/** * get labels for object structure and functions * * @return array : the labels of object structure and functions * @access public */ function getLabelsStructure(&$language, $objectName) { $labels = array(); $object = new CMS_poly_object($this->_objectID); $labels['structure']['label'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_LABEL_DESCRIPTION, false, MOD_POLYMOD_CODENAME); $labels['structure']['fieldname'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_FIELDNAME_DESCRIPTION, array($this->getFieldLabel($language)), MOD_POLYMOD_CODENAME); $labels['structure']['fieldID'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_FIELDID_DESCRIPTION, array($this->_field->getID()), MOD_POLYMOD_CODENAME); $labels['structure']['required'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_REQUIRED_DESCRIPTION, false, MOD_POLYMOD_CODENAME); $labels['structure']['objectname'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_OBJECTNAME_DESCRIPTION, array($object->getFieldLabel($language)), MOD_POLYMOD_CODENAME); $labels['structure']['objectdescription'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_OBJECTDESC_DESCRIPTION, array($object->getFieldDesc($language)), MOD_POLYMOD_CODENAME); $labels['structure']['objecttype'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_OBJECTTYPE_DESCRIPTION, array($this->_objectID), MOD_POLYMOD_CODENAME); $labels['structure']['ids'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_IDS_DESCRIPTION, array($object->getFieldLabel($language)), MOD_POLYMOD_CODENAME); $labels['structure']['fields'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_FIELDS_DESCRIPTION, array($object->getFieldLabel($language)), MOD_POLYMOD_CODENAME); $labels['structure']['count'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_COUNT_DESCRIPTION, array($object->getFieldLabel($language)), MOD_POLYMOD_CODENAME); $labels['structure']['description'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_FIELD_DESC_DESCRIPTION, array(io::htmlspecialchars($this->getFieldDescription($language))), MOD_POLYMOD_CODENAME); $labels['function']['selectOptions'] = $language->getMessage(self::MESSAGE_MULTI_OBJECT_FUNCTION_SELECTOPTIONS_DESCRIPTION, array('{' . $objectName . '}'), MOD_POLYMOD_CODENAME); return $labels; }
/** * get an object value * * @param string $name : the name of the value to get * @param string $parameters (optional) : parameters for the value to get * @return mixed : the object values structure * @access public */ function getValue($name, $parameters = '') { global $cms_language; // @TODOV4 : Manage language into database ! $languages = array(); $languages['fr'] = array('January' => 'Janvier', 'February' => 'Février', 'March' => 'Mars', 'April' => 'Avril', 'May' => 'Mai', 'June' => 'Juin', 'July' => 'Juillet', 'August' => 'Août', 'September' => 'Septembre', 'October' => 'Octobre', 'November' => 'Novembre', 'December' => 'Décembre', 'Monday' => 'Lundi', 'Tuesday' => 'Mardi', 'Wednesday' => 'Mercredi', 'Thursday' => 'Jeudi', 'Friday' => 'Vendredi', 'Saturday' => 'Samedi', 'Sunday' => 'Dimanche', 'Jan' => 'Jan', 'Feb' => 'Fév', 'Mar' => 'Mar', 'Apr' => 'Avr', 'May' => 'Mai', 'Jun' => 'Jui', 'Jul' => 'Jui', 'Aug' => 'Aoû', 'Sep' => 'Sep', 'Oct' => 'Oct', 'Nov' => 'Nov', 'Dec' => 'Déc', 'Mon' => 'Lun', 'Tue' => 'Mar', 'Wed' => 'Mer', 'Thu' => 'Jeu', 'Fri' => 'Ven', 'Sat' => 'Sam', 'Sun' => 'Dim'); switch ($name) { case 'id': return (string) $this->_ID; break; case 'label': if ($parameters == 'js') { return sensitiveIO::sanitizeJSString($this->getLabel()); } else { return $this->getLabel(); } break; case 'objectname': return $this->getFieldLabel($cms_language); break; case 'objectdescription': return $this->getFieldDesc($cms_language); break; case 'objecttype': return $this->_objectID; break; case 'resource': if ($this->_objectResourceStatus == 1) { return parent::getID(); } return; break; case 'formatedDateStart': if ($this->_objectResourceStatus == 1) { $date = parent::getPublicationDateStart(); if (io::strtolower($parameters) == 'rss') { $date = date('r', $date->getTimeStamp()); } else { $date = date($parameters, $date->getTimeStamp()); if (is_object($cms_language) && isset($languages[$cms_language->getCode()])) { $date = str_replace(array_keys($languages[$cms_language->getCode()]), $languages[$cms_language->getCode()], $date); } } return io::htmlspecialchars($date); } break; case 'formatedDateEnd': if ($this->_objectResourceStatus == 1) { $date = parent::getPublicationDateEnd(); if (is_a($date, 'CMS_date')) { if (io::strtolower($parameters) == 'rss') { $date = date('r', $date->getTimeStamp()); } else { $date = date($parameters, $date->getTimeStamp()); if (is_object($cms_language) && isset($languages[$cms_language->getCode()])) { $date = str_replace(array_keys($languages[$cms_language->getCode()]), $languages[$cms_language->getCode()], $date); } } return io::htmlspecialchars($date); } } break; case 'dateStartNotNull': if ($this->_objectResourceStatus == 1) { $date = parent::getPublicationDateStart(); return !$date->isNull(); } break; case 'dateStartTimestamp': if ($this->_objectResourceStatus == 1) { $date = parent::getPublicationDateStart(); return $date->getTimestamp(); } break; case 'dateEndNotNull': if ($this->_objectResourceStatus == 1) { $date = parent::getPublicationDateEnd(); return !$date->isNull(); } break; case 'dateEndTimestamp': if ($this->_objectResourceStatus == 1) { $date = parent::getPublicationDateEnd(); return $date->getTimestamp(); } break; //field related values, may not exists ... //field related values, may not exists ... case 'fieldID': if (!is_a($this->_field, 'CMS_poly_object_field')) { $this->raiseError("Can't get 'fieldID' value for an object which is not a field of another object ..."); return ''; } return $this->_field->getID(); break; case 'description': if (!is_a($this->_field, 'CMS_poly_object_field')) { $this->raiseError("Can't get 'description' value for an object which is not a field of another object ..."); return ''; } return io::htmlspecialchars($this->_field->getFieldDescription($cms_language)); break; case 'required': if (!is_a($this->_field, 'CMS_poly_object_field')) { $this->raiseError("Can't get 'required' value for an object which is not a field of another object ..."); return false; } return $this->_field->getValue("required") ? true : false; break; case 'fieldname': if (!is_a($this->_field, 'CMS_poly_object_field')) { $this->raiseError("Can't get 'fieldname' value for an object which is not a field of another object ..."); return ''; } //get label of current field $fieldLabel = new CMS_object_i18nm($this->_field->getValue("labelID")); return $fieldLabel->getValue($cms_language->getCode()); break; default: $this->raiseError("Unknown value to get : " . $name); return false; break; } }