function getAdvancedModules($Itemid) { require_once JPATH_PLUGINS . DS . 'system' . DS . 'nonumberelements' . DS . 'helpers' . DS . 'parameters.php'; $parameters =& NNParameters::getParameters(); $db =& JFactory::getDBO(); $query = 'SELECT m.id, m.title, m.module, m.position, m.checked_out, m.access,' . ' am.params as adv_params,' . ' g.name AS groupname' . ' FROM #__modules AS m' . ' LEFT JOIN #__advancedmodules AS am ON am.moduleid = m.id' . ' LEFT JOIN #__groups AS g ON g.id = m.access' . ' WHERE m.published = 1' . ' AND m.client_id = 0' . ' GROUP BY m.id' . ' ORDER BY m.position, m.ordering, m.id'; $db->setQuery($query); if (null === ($modules = $db->loadObjectList('id'))) { JError::raiseWarning('SOME_ERROR_CODE', JText::_('AMM_ERROR_LOADING_MODULES') . $db->getErrorMsg()); return false; } require_once JPATH_PLUGINS . DS . 'system' . DS . 'nonumberelements' . DS . 'helpers' . DS . 'assignments.php'; $assignments = new NoNumberElementsAssignmentsHelper(); $assignments->_params->Itemid = $Itemid; $xmlfile = JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_advancedmodules' . DS . 'assignments.xml'; $ordered = array(); foreach ($modules as $id => $module) { $module->adv_params = $parameters->getParams($module->adv_params, $xmlfile); if ($module->adv_params->assignto_menuitems) { $params = null; $params->assignment = $module->adv_params->assignto_menuitems; $params->selection = $module->adv_params->assignto_menuitems_selection; $params->params = null; $params->params->inc_children = $module->adv_params->assignto_menuitems_inc_children; $params->params->inc_noItemid = $module->adv_params->assignto_menuitems_inc_noitemid; $assignments->initParams($params, 'MenuItem'); $pass = $assignments->passMenuItem($params->params, $params->selection, $params->assignment); if (!$pass) { continue; } } $ordered[] = $modules[$id]; } unset($modules); return $ordered; }
function plgSystemAdvancedModulesPrepareModuleList(&$modules) { $mainframe =& JFactory::getApplication(); $client = $mainframe->getClientId(); if ($client == 0) { $db =& JFactory::getDBO(); jimport('joomla.filesystem.file'); require_once JPATH_PLUGINS . DS . 'system' . DS . 'nonumberelements' . DS . 'helpers' . DS . 'parameters.php'; $parameters =& NNParameters::getParameters(); require_once JPATH_PLUGINS . DS . 'system' . DS . 'nonumberelements' . DS . 'helpers' . DS . 'assignments.php'; $assignments = new NoNumberElementsAssignmentsHelper(); $xmlfile_assignments = JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_advancedmodules' . DS . 'assignments.xml'; $config = plgSystemAdvancedModulesConfig(); // set params for all loaded modules first // and make it an associated array (array id = module id) $new_modules = array(); foreach ($modules as $id => $module) { if (!isset($module->adv_params)) { $modarray = get_object_vars($module); if (!array_key_exists('adv_params', $modarray)) { $modules[$id]->adv_params = 0; continue; } } if (strpos($module->adv_params, 'assignto_menuitems=') === false) { $module->adv_params = plgSystemAdvancedModulesUpdateParams($module->id, $module->adv_params); } $module->adv_params = $parameters->getParams($module->adv_params, $xmlfile_assignments); $new_modules[$module->id] = $module; } $modules = $new_modules; unset($new_modules); foreach ($modules as $id => $module) { if ($module->adv_params === 0) { continue; } $extraparams = array(); for ($i = 1; $i <= 5; $i++) { $var = 'extra' . $i; $extraparams[] = $var . '=' . (isset($module->adv_params->{$var}) ? $module->adv_params->{$var} : ''); } if (!empty($extraparams)) { $module->params = implode("\n", $extraparams) . "\n" . $module->params; } $module->reverse = 0; // Check if module should mirror another modules assignment settings if ($module->published && $config->show_mirror_module) { $count = 0; while ($count++ < 10 && $module->adv_params->mirror_module) { $mirror_moduleid = $module->adv_params->mirror_moduleid; $module->reverse = $module->adv_params->mirror_module == 2; $module->adv_params = null; if ($mirror_moduleid && $mirror_moduleid != $id) { if (isset($modules[$mirror_moduleid])) { $module->adv_params = $modules[$mirror_moduleid]->adv_params; } else { $query = 'SELECT params' . ' FROM #__advancedmodules' . ' WHERE moduleid = ' . (int) $mirror_moduleid . ' LIMIT 1'; $db->setQuery($query); $module->adv_params = $parameters->getParams($db->loadResult(), $xmlfile_assignments); } } } } if ($module->published) { $params = array(); if ($module->adv_params->assignto_menuitems) { $params['MenuItem'] = null; $params['MenuItem']->assignment = $module->adv_params->assignto_menuitems; $params['MenuItem']->selection = $module->adv_params->assignto_menuitems_selection; $params['MenuItem']->params = null; $params['MenuItem']->params->inc_children = $module->adv_params->assignto_menuitems_inc_children; $params['MenuItem']->params->inc_noItemid = $module->adv_params->assignto_menuitems_inc_noitemid; } if ($config->show_assignto_secscats && $module->adv_params->assignto_secscats) { $params['SecsCats'] = null; $params['SecsCats']->assignment = $module->adv_params->assignto_secscats; $params['SecsCats']->selection = $module->adv_params->assignto_secscats_selection; $params['SecsCats']->params = null; $incs = $module->adv_params->assignto_secscats_inc; if (!(strpos($incs, '|') === false)) { $incs = explode('|', $incs); } else { $incs = explode(',', $incs); } $params['SecsCats']->params->inc_sections = in_array('inc_secs', $incs); $params['SecsCats']->params->inc_categories = in_array('inc_cats', $incs); $params['SecsCats']->params->inc_articles = in_array('inc_arts', $incs); $params['SecsCats']->params->inc_others = in_array('inc_others', $incs); } if ($config->show_assignto_articles && $module->adv_params->assignto_articles) { $params['Articles'] = null; $params['Articles']->assignment = $module->adv_params->assignto_articles; $params['Articles']->selection = $module->adv_params->assignto_articles_selection; $params['Articles']->params = null; $params['Articles']->params->keywords = $module->adv_params->assignto_articles_keywords; } if ($config->show_assignto_k2cats && $module->adv_params->assignto_k2cats && JFile::exists(JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_k2' . DS . 'admin.k2.php')) { $params['Categories_K2'] = null; $params['Categories_K2']->assignment = $module->adv_params->assignto_k2cats; $params['Categories_K2']->selection = $module->adv_params->assignto_k2cats_selection; $params['Categories_K2']->params = null; $params['Categories_K2']->params->inc_children = $module->adv_params->assignto_k2cats_inc_children; $incs = $module->adv_params->assignto_k2cats_inc; if (!(strpos($incs, '|') === false)) { $incs = explode('|', $incs); } else { $incs = explode(',', $incs); } $params['Categories_K2']->params->inc_categories = in_array('inc_cats', $incs); $params['Categories_K2']->params->inc_items = in_array('inc_items', $incs); } if ($config->show_assignto_mrcats && $module->adv_params->assignto_mrcats && JFile::exists(JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_resource' . DS . 'resource.php')) { $params['Categories_MR'] = null; $params['Categories_MR']->assignment = $module->adv_params->assignto_mrcats; $params['Categories_MR']->selection = $module->adv_params->assignto_mrcats_selection; $params['Categories_MR']->params = null; $params['Categories_MR']->params->inc_children = $module->adv_params->assignto_mrcats_inc_children; $incs = $module->adv_params->assignto_mrcats_inc; if (!(strpos($incs, '|') === false)) { $incs = explode('|', $incs); } else { $incs = explode(',', $incs); } $params['Categories_MR']->params->inc_categories = in_array('inc_cats', $incs); $params['Categories_MR']->params->inc_items = in_array('inc_items', $incs); } if ($config->show_assignto_zoocats && $module->adv_params->assignto_zoocats && JFile::exists(JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_zoo' . DS . 'zoo.php')) { $params['Categories_ZOO'] = null; $params['Categories_ZOO']->assignment = $module->adv_params->assignto_zoocats; $params['Categories_ZOO']->selection = $module->adv_params->assignto_zoocats_selection; $params['Categories_ZOO']->params = null; $params['Categories_ZOO']->params->inc_children = $module->adv_params->assignto_zoocats_inc_children; $incs = $module->adv_params->assignto_zoocats_inc; if (!(strpos($incs, '|') === false)) { $incs = explode('|', $incs); } else { $incs = explode(',', $incs); } $params['Categories_ZOO']->params->inc_categories = in_array('inc_cats', $incs); $params['Categories_ZOO']->params->inc_items = in_array('inc_items', $incs); } if ($config->show_assignto_components && $module->adv_params->assignto_components) { $params['Components'] = null; $params['Components']->assignment = $module->adv_params->assignto_components; $params['Components']->selection = $module->adv_params->assignto_components_selection; } if ($config->show_assignto_urls && $module->adv_params->assignto_urls) { $params['URL'] = null; $params['URL']->assignment = $module->adv_params->assignto_urls; $configuration =& JFactory::getConfig(); if ($configuration->getValue('config.sef') == 1) { $params['URL']->selection = $module->adv_params->assignto_urls_selection_sef; } else { $params['URL']->selection = $module->adv_params->assignto_urls_selection; } $params['URL']->selection = str_replace('\\n', "\n", $params['URL']->selection); $params['URL']->selection = str_replace('\\|', '|', $params['URL']->selection); $params['URL']->selection = str_replace('[:REGEX_ENTER:]', '\\n', $params['URL']->selection); $params['URL']->selection = explode("\n", $params['URL']->selection); } if ($config->show_assignto_browsers && $module->adv_params->assignto_browsers) { $params['Browsers'] = null; $params['Browsers']->assignment = $module->adv_params->assignto_browsers; $params['Browsers']->params = null; $params['Browsers']->selection = $module->adv_params->assignto_browsers_selection; } if ($config->show_assignto_date && $module->adv_params->assignto_date) { $params['Date'] = null; $params['Date']->assignment = $module->adv_params->assignto_date; $params['Date']->params = null; $params['Date']->params->publish_up = $module->adv_params->assignto_date_publish_up; $params['Date']->params->publish_down = $module->adv_params->assignto_date_publish_down; } if ($config->show_assignto_date && $module->adv_params->assignto_seasons) { $params['Seasons'] = null; $params['Seasons']->assignment = $module->adv_params->assignto_seasons; $params['Seasons']->selection = $module->adv_params->assignto_seasons_selection; $params['Seasons']->params = null; $params['Seasons']->params->hemisphere = $module->adv_params->assignto_seasons_hemisphere; } if ($config->show_assignto_date && $module->adv_params->assignto_months) { $params['Months'] = null; $params['Months']->assignment = $module->adv_params->assignto_months; $params['Months']->selection = $module->adv_params->assignto_months_selection; } if ($config->show_assignto_date && $module->adv_params->assignto_days) { $params['Days'] = null; $params['Days']->assignment = $module->adv_params->assignto_days; $params['Days']->selection = $module->adv_params->assignto_days_selection; } if ($config->show_assignto_date && $module->adv_params->assignto_time) { $params['Time'] = null; $params['Time']->assignment = $module->adv_params->assignto_time; $params['Time']->params = null; $params['Time']->params->publish_up = $module->adv_params->assignto_time_publish_up; $params['Time']->params->publish_down = $module->adv_params->assignto_time_publish_down; } if ($config->show_assignto_usergrouplevels && $module->adv_params->assignto_usergrouplevels) { $params['UserGroupLevels'] = null; $params['UserGroupLevels']->assignment = $module->adv_params->assignto_usergrouplevels; $params['UserGroupLevels']->selection = $module->adv_params->assignto_usergrouplevels_selection; } if ($config->show_assignto_users && $module->adv_params->assignto_users) { $params['Users'] = null; $params['Users']->assignment = $module->adv_params->assignto_users; $params['Users']->selection = $module->adv_params->assignto_users_selection; } if ($config->show_assignto_languages && $module->adv_params->assignto_languages) { $params['Languages'] = null; $params['Languages']->assignment = $module->adv_params->assignto_languages; $params['Languages']->selection = $module->adv_params->assignto_languages_selection; } if ($config->show_assignto_templates && $module->adv_params->assignto_templates) { $params['Templates'] = null; $params['Templates']->assignment = $module->adv_params->assignto_templates; $params['Templates']->selection = $module->adv_params->assignto_templates_selection; } if ($config->show_assignto_php && $module->adv_params->assignto_php) { $params['PHP'] = null; $params['PHP']->assignment = $module->adv_params->assignto_php; $params['PHP']->selection = $module->adv_params->assignto_php_selection; } $pass = $assignments->passAll($params, $module->adv_params->match_method); if (!$pass) { $module->published = 0; } if ($module->reverse) { $module->published = $module->published ? 0 : 1; } } $modules[$id] = $module; } } }
function plgSystemAdvancedModulesPrepareModuleList(&$modules) { $mainframe =& JFactory::getApplication(); $client = $mainframe->getClientId(); if ($client == 0) { $db =& JFactory::getDBO(); jimport('joomla.filesystem.file'); require_once JPATH_PLUGINS . DS . 'system' . DS . 'nonumberelements' . DS . 'helpers' . DS . 'parameters.php'; $parameters =& NNParameters::getParameters(); require_once JPATH_PLUGINS . DS . 'system' . DS . 'nonumberelements' . DS . 'helpers' . DS . 'assignments.php'; $assignments = new NoNumberElementsAssignmentsHelper(); $xmlfile_assignments = JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_advancedmodules' . DS . 'assignments.xml'; $config = plgSystemAdvancedModulesConfig(); // set params for all loaded modules first // and make it an associated array (array id = module id) $new_modules = array(); require_once JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_advancedmodules' . DS . 'models' . DS . 'module.php'; $model = new AdvancedModulesModelModule(); foreach ($modules as $id => $module) { if (!isset($module->adv_params)) { $module->adv_params = ''; } $registry = new JRegistry(); if (strpos($module->adv_params, '"assignto_menuitems"') === false) { $module->adv_params = $model->initAssignments($module->id, $module, $module->adv_params); $registry->loadArray($module->adv_params); } else { $registry->loadString($module->adv_params); } $module->adv_params = $registry->toObject(); $module->adv_params = $parameters->getParams($module->adv_params, $xmlfile_assignments); $new_modules[$module->id] = $module; } $modules = $new_modules; unset($new_modules); foreach ($modules as $id => $module) { if ($module->adv_params === 0) { continue; } $extraparams = array(); for ($i = 1; $i <= 5; $i++) { $var = 'extra' . $i; $extraparams[$var] = isset($module->adv_params->{$var}) ? $module->adv_params->{$var} : ''; } if (!empty($extraparams)) { $registry = new JRegistry(); $registry->loadString($module->params); $module->params = $registry->toArray(); $module->params = array_merge($module->params, $extraparams); $registry = new JRegistry(); $registry->loadArray($module->params); $module->params = $registry->toString(); } $module->reverse = 0; // Check if module should mirror another modules assignment settings if ($module->published && $config->show_mirror_module) { $count = 0; while ($count++ < 10 && isset($module->adv_params->mirror_module) && $module->adv_params->mirror_module && isset($module->adv_params->mirror_moduleid) && $module->adv_params->mirror_moduleid) { $mirror_moduleid = $module->adv_params->mirror_moduleid; $module->reverse = $module->adv_params->mirror_module == 2; if ($mirror_moduleid) { if ($mirror_moduleid == $id) { $empty = new stdClass(); $module->adv_params = $parameters->getParams($empty, $xmlfile_assignments); } else { if (isset($modules[$mirror_moduleid])) { $module->adv_params = $modules[$mirror_moduleid]->adv_params; } else { $query = 'SELECT params' . ' FROM #__advancedmodules' . ' WHERE moduleid = ' . (int) $mirror_moduleid . ' LIMIT 1'; $db->setQuery($query); $registry = new JRegistry(); $registry->loadString($db->loadResult()); $module->adv_params = $parameters->getParams($registry->toObject(), $xmlfile_assignments); } } } } } if ($module->published) { $params = array(); if ($module->adv_params->assignto_menuitems) { $params['MenuItem'] = new stdClass(); $params['MenuItem']->assignment = $module->adv_params->assignto_menuitems; $params['MenuItem']->selection = $module->adv_params->assignto_menuitems_selection; $params['MenuItem']->params = new stdClass(); $params['MenuItem']->params->inc_children = $module->adv_params->assignto_menuitems_inc_children; $params['MenuItem']->params->inc_noItemid = $module->adv_params->assignto_menuitems_inc_noitemid; } if ($config->show_assignto_homepage && $module->adv_params->assignto_homepage) { $params['HomePage'] = new stdClass(); $params['HomePage']->assignment = $module->adv_params->assignto_homepage; } if ($config->show_assignto_content) { if ($module->adv_params->assignto_cats) { $params['Cats'] = new stdClass(); $params['Cats']->assignment = $module->adv_params->assignto_cats; $params['Cats']->selection = $module->adv_params->assignto_cats_selection; $params['Cats']->params = new stdClass(); $incs = $assignments->makeArray($module->adv_params->assignto_cats_inc); $params['Cats']->params->inc_categories = in_array('inc_cats', $incs); $params['Cats']->params->inc_articles = in_array('inc_arts', $incs); $params['Cats']->params->inc_others = in_array('inc_others', $incs); $params['Cats']->params->inc_children = $module->adv_params->assignto_cats_inc_children; } if ($module->adv_params->assignto_articles) { $params['Articles'] = new stdClass(); $params['Articles']->assignment = $module->adv_params->assignto_articles; $params['Articles']->selection = $module->adv_params->assignto_articles_selection; $params['Articles']->params = new stdClass(); $params['Articles']->params->keywords = $module->adv_params->assignto_articles_keywords; } } /* if ( $config->show_assignto_fc && JFile::exists( JPATH_ADMINISTRATOR.DS.'components'.DS.'com_flexicontent'.DS.'admin.flexicontent.php' ) ) { if ( $module->adv_params->assignto_fccats ) { $params['Categories_FC'] = new stdClass(); $params['Categories_FC']->assignment = $module->adv_params->assignto_fccats; $params['Categories_FC']->selection = $module->adv_params->assignto_fccats_selection; $params['Categories_FC']->params = new stdClass(); $params['Categories_FC']->params->inc_children = $module->adv_params->assignto_fccats_inc_children; $incs = $assignments->makeArray( $module->adv_params->assignto_fccats_inc ); $params['Categories_FC']->params->inc_categories = in_array( 'inc_cats', $incs ); $params['Categories_FC']->params->inc_items = in_array( 'inc_items', $incs ); } if ( $module->adv_params->assignto_fctags ) { $params['Tags_FC'] = new stdClass(); $params['Tags_FC']->assignment = $module->adv_params->assignto_fctags; $params['Tags_FC']->selection = $module->adv_params->assignto_fctags_selection; $params['Tags_FC']->params = new stdClass(); $incs = $assignments->makeArray( $module->adv_params->assignto_fctags_inc ); $params['Tags_FC']->params->inc_tags = in_array( 'inc_tags', $incs ); $params['Tags_FC']->params->inc_items = in_array( 'inc_items', $incs ); } if ( $module->adv_params->assignto_fctypes ) { $params['Types_FC'] = new stdClass(); $params['Types_FC']->assignment = $module->adv_params->assignto_fctypes; $params['Types_FC']->selection = $module->adv_params->assignto_fctypes_selection; $params['Types_FC']->params = new stdClass(); } if ( $module->adv_params->assignto_fcitems ) { $params['Items_FC'] = new stdClass(); $params['Items_FC']->assignment = $module->adv_params->assignto_fcitems; $params['Items_FC']->selection = $module->adv_params->assignto_fcitems_selection; } } if ( $config->show_assignto_k2 && JFile::exists( JPATH_ADMINISTRATOR.DS.'components'.DS.'com_k2'.DS.'admin.k2.php' ) ) { if ( $module->adv_params->assignto_k2cats ) { $params['Categories_K2'] = new stdClass(); $params['Categories_K2']->assignment = $module->adv_params->assignto_k2cats; $params['Categories_K2']->selection = $module->adv_params->assignto_k2cats_selection; $params['Categories_K2']->params = new stdClass(); $params['Categories_K2']->params->inc_children = $module->adv_params->assignto_k2cats_inc_children; $incs = $assignments->makeArray( $module->adv_params->assignto_k2cats_inc ); $params['Categories_K2']->params->inc_categories = in_array( 'inc_cats', $incs ); $params['Categories_K2']->params->inc_items = in_array( 'inc_items', $incs ); } if ( $module->adv_params->assignto_k2tags ) { $params['Tags_K2'] = new stdClass(); $params['Tags_K2']->assignment = $module->adv_params->assignto_k2tags; $params['Tags_K2']->selection = $module->adv_params->assignto_k2tags_selection; $params['Tags_K2']->params = new stdClass(); $incs = $assignments->makeArray( $module->adv_params->assignto_k2tags_inc ); $params['Tags_K2']->params->inc_tags = in_array( 'inc_tags', $incs ); $params['Tags_K2']->params->inc_items = in_array( 'inc_items', $incs ); } if ( $module->adv_params->assignto_k2items ) { $params['Items_K2'] = new stdClass(); $params['Items_K2']->assignment = $module->adv_params->assignto_k2items; $params['Items_K2']->selection = $module->adv_params->assignto_k2items_selection; } } if ( $config->show_assignto_mr && $module->adv_params->assignto_mrcats && JFile::exists( JPATH_ADMINISTRATOR.DS.'components'.DS.'com_resource'.DS.'resource.php' ) ) { $params['Categories_MR'] = new stdClass(); $params['Categories_MR']->assignment = $module->adv_params->assignto_mrcats; $params['Categories_MR']->selection = $module->adv_params->assignto_mrcats_selection; $params['Categories_MR']->params = new stdClass(); $params['Categories_MR']->params->inc_children = $module->adv_params->assignto_mrcats_inc_children; $incs = $assignments->makeArray( $module->adv_params->assignto_mrcats_inc ); $params['Categories_MR']->params->inc_categories = in_array( 'inc_cats', $incs ); $params['Categories_MR']->params->inc_items = in_array( 'inc_items', $incs ); } */ if ($config->show_assignto_zoo && $module->adv_params->assignto_zoocats && JFile::exists(JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_zoo' . DS . 'zoo.php')) { $params['Categories_ZOO'] = new stdClass(); $params['Categories_ZOO']->assignment = $module->adv_params->assignto_zoocats; $params['Categories_ZOO']->selection = $module->adv_params->assignto_zoocats_selection; $params['Categories_ZOO']->params = new stdClass(); $params['Categories_ZOO']->params->inc_children = $module->adv_params->assignto_zoocats_inc_children; $incs = $assignments->makeArray($module->adv_params->assignto_zoocats_inc); $params['Categories_ZOO']->params->inc_apps = in_array('inc_apps', $incs); $params['Categories_ZOO']->params->inc_categories = in_array('inc_cats', $incs); $params['Categories_ZOO']->params->inc_items = in_array('inc_items', $incs); } if ($config->show_assignto_components && $module->adv_params->assignto_components) { $params['Components'] = new stdClass(); $params['Components']->assignment = $module->adv_params->assignto_components; $params['Components']->selection = $module->adv_params->assignto_components_selection; } if ($config->show_assignto_urls && $module->adv_params->assignto_urls) { $params['URL'] = new stdClass(); $params['URL']->assignment = $module->adv_params->assignto_urls; $configuration =& JFactory::getConfig(); if ($config->use_sef == 1 || $config->use_sef == 2 && $configuration->getValue('config.sef') == 1) { $params['URL']->selection = $module->adv_params->assignto_urls_selection_sef; } else { $params['URL']->selection = $module->adv_params->assignto_urls_selection; } $params['URL']->selection = explode("\n", $params['URL']->selection); } if ($config->show_assignto_browsers && $module->adv_params->assignto_browsers) { $params['Browsers'] = new stdClass(); $params['Browsers']->assignment = $module->adv_params->assignto_browsers; $params['Browsers']->selection = $module->adv_params->assignto_browsers_selection; } if ($config->show_assignto_date) { if ($module->adv_params->assignto_date) { $params['Date'] = new stdClass(); $params['Date']->assignment = $module->adv_params->assignto_date; $params['Date']->params = new stdClass(); $params['Date']->params->publish_up = $module->adv_params->assignto_date_publish_up; $params['Date']->params->publish_down = $module->adv_params->assignto_date_publish_down; } if ($module->adv_params->assignto_seasons) { $params['Seasons'] = new stdClass(); $params['Seasons']->assignment = $module->adv_params->assignto_seasons; $params['Seasons']->selection = $module->adv_params->assignto_seasons_selection; $params['Seasons']->params = new stdClass(); $params['Seasons']->params->hemisphere = $module->adv_params->assignto_seasons_hemisphere; } if ($module->adv_params->assignto_months) { $params['Months'] = new stdClass(); $params['Months']->assignment = $module->adv_params->assignto_months; $params['Months']->selection = $module->adv_params->assignto_months_selection; } if ($module->adv_params->assignto_days) { $params['Days'] = new stdClass(); $params['Days']->assignment = $module->adv_params->assignto_days; $params['Days']->selection = $module->adv_params->assignto_days_selection; } if ($module->adv_params->assignto_time) { $params['Time'] = new stdClass(); $params['Time']->assignment = $module->adv_params->assignto_time; $params['Time']->params = new stdClass(); $params['Time']->params->publish_up = $module->adv_params->assignto_time_publish_up; $params['Time']->params->publish_down = $module->adv_params->assignto_time_publish_down; } } if ($config->show_assignto_usergrouplevels && $module->adv_params->assignto_usergrouplevels) { $params['UserGroupLevels'] = new stdClass(); $params['UserGroupLevels']->assignment = $module->adv_params->assignto_usergrouplevels; $params['UserGroupLevels']->selection = $module->adv_params->assignto_usergrouplevels_selection; } if ($config->show_assignto_users && $module->adv_params->assignto_users) { $params['Users'] = new stdClass(); $params['Users']->assignment = $module->adv_params->assignto_users; $params['Users']->selection = $module->adv_params->assignto_users_selection; } if ($config->show_assignto_languages && $module->adv_params->assignto_languages) { $params['Languages'] = new stdClass(); $params['Languages']->assignment = $module->adv_params->assignto_languages; $params['Languages']->selection = $module->adv_params->assignto_languages_selection; } if ($config->show_assignto_templates && $module->adv_params->assignto_templates) { $params['Templates'] = new stdClass(); $params['Templates']->assignment = $module->adv_params->assignto_templates; $params['Templates']->selection = $module->adv_params->assignto_templates_selection; } if ($config->show_assignto_php && $module->adv_params->assignto_php) { $params['PHP'] = new stdClass(); $params['PHP']->assignment = $module->adv_params->assignto_php; $params['PHP']->selection = $module->adv_params->assignto_php_selection; } $pass = $assignments->passAll($params, $module->adv_params->match_method); if (!$pass) { $module->published = 0; } if ($module->reverse) { $module->published = $module->published ? 0 : 1; } } $modules[$id] = $module; } } }