public static function link($text, $options = array()) { $url = ""; $val = ""; $param = ""; $class = ""; $lang = ""; $linkParamString = ""; // link parameters foreach ($options['link'] as $key => $entry) { // filter url and var parameters switch ($key) { case 'url': if ($url = strtolower($entry)) { } else { return $text; } break; case 'lang': $lang = $entry; break; case 'val': $val = $entry; break; default: $linkParamString .= "{$key}='{$entry}' "; break; } } // get common parameters if (isset($options['param'])) { $param = $options['param']; } if (isset($options['class'])) { $class = $options['class']; } if (!$lang) { $lang = status::lang(); } // if no language use current //------------------------------------------------------------------------------ // create extern link if (link_is_extern($url)) { $path = $url; } else { $path = OLIVRoute::makeUrl($lang, $url) . "/"; if ($val) { $path .= $val . "/"; } } // insert clipboard if ($clipBoard = OLIVClipboard::_()) { $clipBoard = "?clipboard={$clipBoard} "; } // create parameter string $param = OLIVRoute::makeParam($param); // insert class if ($class) { $class = "class='{$class}'"; } // return href string return "<a {$class} href='{$path}{$clipBoard}' {$linkParamString} {$param}>{$text}</a>"; }