Ejemplo n.º 1
0
 /**
  * Returns the URL for an article
  *
  * @param  Table    $row
  * @param  boolean  $htmlspecialchars
  * @param  string   $type              'article', 'section' or 'category'
  * @return string                      URL
  */
 public static function getUrl($row, $htmlspecialchars = true, $type = 'article')
 {
     global $_CB_framework;
     /** @noinspection PhpIncludeInspection */
     require_once $_CB_framework->getCfg('absolute_path') . '/components/com_k2/helpers/route.php';
     $categorySlug = $row->get('category') . ($row->get('category_alias') ? ':' . $row->get('category_alias') : null);
     $articleSlug = $row->get('id') . ($row->get('alias') ? ':' . $row->get('alias') : null);
     switch ($type) {
         case 'section':
             /** @noinspection PhpUndefinedClassInspection */
             $url = K2HelperRoute::getCategoryRoute($row->get('parent'));
             break;
         case 'category':
             /** @noinspection PhpUndefinedClassInspection */
             $url = K2HelperRoute::getCategoryRoute($categorySlug);
             break;
         case 'article':
         default:
             /** @noinspection PhpUndefinedClassInspection */
             $url = K2HelperRoute::getItemRoute($articleSlug, $categorySlug);
             break;
     }
     if (!stristr($url, 'Itemid')) {
         $url = $_CB_framework->getCfg('live_site') . '/' . $url;
     } else {
         $url = JRoute::_($url, false);
     }
     if ($url) {
         if ($htmlspecialchars) {
             $url = htmlspecialchars($url);
         }
     }
     return $url;
 }
	/**
	 * @param Table $trigger
	 * @param Registry $params
	 */
	public static function usergroup( &$trigger, &$params )
	{
		$usergroupCount						=	substr_count( $trigger->get( 'params' ), 'usergroup_mode' );

		if ( $usergroupCount ) {
			$newParams						=	array();
			$newParams['usergroup']			=	array();

			$paramsMap						=	array(	'usergroup_mode' => 'mode', 'usergroup_parent' => 'parent', 'usergroup_title' => 'title',
														'usergroup_add' => 'add', 'usergroup_groups' => 'groups'
													);

			for ( $i = 0, $n = $usergroupCount; $i < $n; $i++ ) {
				if ( $i == 0 ) {
					$i						=	null;
				}

				$usergroup					=	array();

				foreach ( $paramsMap as $old => $new ) {
					$usergroup[$new]		=	$trigger->get( 'params' )->get( $old . $i, null, GetterInterface::RAW );
				}

				$newParams['usergroup'][]	=	$usergroup;
			}

			$params->load( $newParams );
		}
	}