final function newContent()
 {
     return AnwContentSettings::newContent($this);
 }
Example #2
0
 static function rebuildContentFromArray($oContentFieldsContainer, $amArray)
 {
     $oContent = new AnwContentSettings($oContentFieldsContainer);
     $oContent->loadContentFromArray($amArray);
     return $oContent;
 }
 final function rebuildContentFromXml($sDefaultValue)
 {
     return AnwContentSettings::rebuildContentFromXml($this, $sDefaultValue);
 }
 function initializeComponent()
 {
     //set default permissions
     // first, make sure that config is writable
     $sConfigFileOverride = $this->getConfigurableFileOverride();
     if (!is_writable($sConfigFileOverride)) {
         $sError = Anwi18n::g_err_need_write_file($sConfigFileOverride);
         throw new AnwComponentInitializeException($sError);
     }
     //find out which actions should be allowed by default to everyone
     list($asGrantActionGlobal, $asGrantActionPage) = self::getGrantAllUsersByDefaultActions();
     $oCfgContent = $this->getConfigurableContent();
     $oSubContentTabACL = $oCfgContent->getSubContent(self::CFG_ACLS);
     //read existing actionpage rules
     $aoSubContentsACLs = $oSubContentTabACL->getSubContents(AnwISettings_aclsconfigrule_acls::FIELD_RULES);
     $oContentFieldACLs = $oSubContentTabACL->getContentFieldsContainer()->getContentField(AnwISettings_aclsconfigrule_acls::FIELD_RULES);
     //create a new actionpage rule
     $aaSubContentValue = array(AnwISettings_aclsconfigrule_rule::FIELD_PERMISSION_USER => array(AnwISettings_aclsconfigrule_permission_user::FIELD_POLICY => AnwISettings_aclsconfigrule_permission_user::POLICY_ALL_USERS), AnwISettings_aclsconfigrule_rule::FIELD_PERMISSION_ACTIONGLOBAL => array(AnwISettings_aclsconfigrule_permission_actionglobal::FIELD_POLICY => AnwISettings_aclsconfigrule_permission_actionglobal::POLICY_SELECTED_ACTIONS, AnwISettings_aclsconfigrule_permission_actionglobal::FIELD_ACTIONS => $asGrantActionGlobal), AnwISettings_aclsconfigrule_rule::FIELD_PERMISSION_CONTENT => array(array(AnwISettings_aclsconfigrule_permission_content::FIELD_PERMISSION_ACTIONPAGE => array(AnwISettings_aclsconfigrule_permission_actionpage::FIELD_POLICY => AnwISettings_aclsconfigrule_permission_actionpage::POLICY_SELECTED_ACTIONS, AnwISettings_aclsconfigrule_permission_actionpage::FIELD_ACTIONS => $asGrantActionPage), AnwISettings_aclsconfigrule_permission_content::FIELD_CONTENTMATCH => array())));
     $oNewSubContentACLs = AnwContentSettings::rebuildContentFromArray($oContentFieldACLs, $aaSubContentValue);
     //add the actionpage rule
     $aoSubContentsACLs[] = $oNewSubContentACLs;
     $oSubContentTabACL->setSubContents(AnwISettings_aclsconfigrule_acls::FIELD_RULES, $aoSubContentsACLs);
     $oCfgContent->setSubContents(self::CFG_ACLS, array($oSubContentTabACL));
     //print $oCfgContent->toXmlString();
     //exit;
     //write config
     $oCfgContent->writeSettingsOverride();
     //reload configuration to update cache
     $this->doInit(true);
     //execution log
     $sInitializationLog = $this->t_contentfieldsettings("init_rules_intro_list");
     $sInitializationLog .= "<ul>";
     $sListActionGlobal = count($asGrantActionGlobal) > 0 ? implode(', ', $asGrantActionGlobal) : $this->t_contentfieldsettings("init_rules_action_none");
     $sListActionPage = count($asGrantActionPage) > 0 ? implode(', ', $asGrantActionPage) : $this->t_contentfieldsettings("init_rules_action_none");
     $sInitializationLog .= "<li>" . $this->t_contentfieldsettings("init_rules_actionglobal", array('actions' => $sListActionGlobal)) . "</li>";
     $sInitializationLog .= "<li>" . $this->t_contentfieldsettings("init_rules_actionpage", array('actions' => $sListActionPage)) . "</li>";
     $sInitializationLog .= "</ul>";
     return $sInitializationLog;
 }