Exemplo n.º 1
0
function smarty_block_url($params, $content, $smarty, $repeat)
{
    $tpl_vars = $smarty->_tpl_vars;
    // only output on the closing tag
    if (!$repeat) {
        if (isset($content)) {
            $urlparams = array();
            $locale_code = $tpl_vars['locale_code'];
            $request_locale = $tpl_vars['request_locale'];
            if ($request_locale && $locale_code != $request_locale) {
                $urlparams['locale_code'] = strtolower($request_locale);
            } elseif (!is_null($locale_code) && Bolts_Translate::validateLocaleCode($locale_code)) {
                $urlparams['locale_code'] = strtolower($locale_code);
            }
            $url_filter = new Bolts_Url_Filter();
            return $url_filter->filter($content, $urlparams);
        }
    }
}
Exemplo n.º 2
0
 function setcookieAction()
 {
     // TODO maybe? - prevent people from viewing this page if localization is not enabled
     $request = new Bolts_Request($this->getRequest());
     if ($request->has("code") && $request->code != "") {
         $locale_code = $request->code;
         $time = Bolts_Registry::get('locale_cache_lifetime');
         if (Bolts_Translate::validateLocaleCode($locale_code)) {
             setcookie("locale_code", $locale_code, time() + $time, "/");
             if ($request->has("return_url")) {
                 $url_filter = new Bolts_Url_Filter();
                 header("Location: " . $url_filter->filter($request->return_url, array('locale_code' => $locale_code)));
             } else {
                 header("Location: /" . $locale_code);
             }
         }
     } else {
         $this->_redirect("/bolts/locale/choose/");
     }
 }
Exemplo n.º 3
0
 protected function _redirect($url, array $options = array(), $auto_add_locale = true)
 {
     if ($auto_add_locale) {
         $urlfilter_params = array('locale_code' => $this->locale_code);
     }
     $url_filter = new Bolts_Url_Filter();
     return parent::_redirect($url_filter->filter($url, $urlfilter_params), $options);
 }
Exemplo n.º 4
0
 protected function _getConfirmationUrl($email, $url = "/bolts/user/resetpassword/email/")
 {
     $salt = Bolts_Registry::get('salt');
     $url_filter = new Bolts_Url_Filter();
     $outstr = Bolts_Registry::get('site_url') . $url_filter->filter($url, array('locale_code' => $this->locale_code)) . urlencode($email);
     $outstr .= "/code/" . md5($email . $salt);
     return $outstr;
 }