114 lines
2.9 KiB
PHP
114 lines
2.9 KiB
PHP
<?php
|
|
/*
|
|
* Smarty plugin
|
|
* -------------------------------------------------------------
|
|
* File: function.url.php
|
|
* Type: function
|
|
* Name: link
|
|
* Purpose: zwraca sformatowany url
|
|
* -------------------------------------------------------------
|
|
*/
|
|
|
|
function smarty_function_urlO($param, &$smarty)
|
|
{
|
|
|
|
// if (isset($params['_value'])) {//Stara wersja
|
|
//
|
|
// $return = explode(',', $params['_value']);
|
|
//
|
|
// $controller = array_shift($return);
|
|
// $model = array_shift($return);
|
|
//
|
|
// if (!empty($model)) {
|
|
// $return[] = $model;
|
|
// }
|
|
// $return[] = $controller;
|
|
//
|
|
// $return = implode(URL_DELIMITER, $return);
|
|
//
|
|
// return URL_MAIN . '/' .$return.APPLICATION_FILE_TYPE;
|
|
// }
|
|
//
|
|
// if (isset($params['_current']) && $params['_current']) {
|
|
//
|
|
// $fileName = pathinfo($_SERVER['REQUEST_URI']);
|
|
//
|
|
// $exp = explode(URL_DELIMITER, $fileName['filename']);
|
|
//
|
|
// if (!isset($fileName['extension']) || $fileName['extension'] != 'html') {
|
|
// $return = array('index' => 'index');
|
|
// } else {
|
|
// $size = sizeof($exp);
|
|
//
|
|
// if ($size == 1) {
|
|
// $return[$exp[0]] = 'index';
|
|
// } else {
|
|
// $return[$exp[$size - 2]] = $exp[$size - 1];
|
|
// }
|
|
// }
|
|
//
|
|
// $rout = Router::GetParam();
|
|
//
|
|
// if ($rout['param']) {
|
|
// $return = array_merge($return, array_reverse($rout['param']));
|
|
// }
|
|
//
|
|
// $current = array_merge($return, $params);
|
|
//
|
|
// $first_flag = false;
|
|
//
|
|
// unset($params['_current']);
|
|
// }
|
|
//
|
|
//
|
|
// $return = $params;
|
|
//
|
|
//
|
|
// $first_flag = true;
|
|
//
|
|
//
|
|
// $addr = array();
|
|
//
|
|
// if(isset($return[0]) && count(array_values($return))==1) {
|
|
// $addr = $return;
|
|
//
|
|
// } else {
|
|
//
|
|
// foreach ($return as $k => $v) {
|
|
// if (substr($k, 0, 1) == '_') {
|
|
// continue;
|
|
// }
|
|
//
|
|
// if ($first_flag && Router::$controllerMethodSeek==true) {
|
|
// $addr = array_merge(array($v . URL_DELIMITER . $k), $addr);
|
|
// $first_flag = false;
|
|
// } else {
|
|
// $addr = array_merge(array($k . URL_DELIMITER . $v), $addr);
|
|
// }
|
|
// }
|
|
// }
|
|
//
|
|
// //reakcja na ustawienia routera
|
|
// if(Router::$reverseRoute==true) {
|
|
// $addr=array_reverse($addr);
|
|
// }
|
|
//
|
|
// return URL_MAIN . '/' . implode(URL_DELIMITER, $addr) . APPLICATION_FILE_TYPE;
|
|
if(isset($param['label'])) {
|
|
$label = $param['label'];
|
|
} else {
|
|
$label = null;
|
|
}
|
|
|
|
if(isset($param['_BASE_URL_'])){
|
|
$baseUrl = $param['_BASE_URL_'];
|
|
unset($param['_BASE_URL_']);
|
|
return Router::GenerateUrl($label, $param,$baseUrl);
|
|
}
|
|
|
|
|
|
|
|
return Router::GenerateUrl($label, $param);
|
|
|
|
}
|
|
?>
|