コード例 #1
0
ファイル: init.php プロジェクト: NaszvadiG/activecollab_loc
/**
 * Assemble URL from string
 * 
 * This function will convert string in format ?route=name[&param=value...] to 
 * URL based on route and params. Route paremeter is required
 *
 * @param string $string
 * @return null
 */
function assemble_from_string($string)
{
    $params = parse_string(substr($string, 1));
    $route = array_var($params, 'route');
    if (empty($route)) {
        use_error('RouteNotDefinedError');
        return new RouteNotDefinedError($route);
    }
    // if
    unset($params['route']);
    return assemble_url($route, $params);
}
コード例 #2
0
/**
 * Smarty tag for [[ title ]].
 *
 * @param array $params
 * @param object $smarty
 */
function smarty_title($params, &$smarty)
{
    $vars = $smarty->get_template_vars();
    $title = parse_string($vars['title']);
    // If 'strip=1', we strip html tags from the title.
    if ($params['strip'] == 1) {
        $title = strip_tags($title);
    }
    return entifyAmpersand($title);
}
コード例 #3
0
 /**
  * Sets data that is common to every view
  */
 protected function _load_data()
 {
     $data = array();
     $data['app_title'] = $this->config->item('app_title', 'application');
     $data['page_title'] = $this->title;
     $data['title'] = parse_string($this->config->item('title_format', 'application'), array('app_title' => $this->config->item('app_title', 'application'), 'page_title' => $this->title));
     $data['meta'] = $this->meta;
     $data['css'] = $this->css;
     $data['js'] = $this->js;
     $data['uri_string'] = implode('-', $this->uri->rsegment_array());
     $data['is_homepage'] = $data['uri_string'] === 'application-index';
     $this->data = array_merge($data, $this->data);
 }
コード例 #4
0
 /**
  * Authenticate
  *
  * @param void
  * @return null
  */
 function authenticate()
 {
     $provider_class = AUTH_PROVIDER;
     use_auth_provider($provider_class);
     if (!class_exists($provider_class)) {
         use_error('ClassNotImplementedError');
         return new ClassNotImplementedError($provider_class);
     }
     // if
     $provider = new $provider_class();
     if (!instance_of($provider, 'AuthenticationProvider')) {
         return new InvalidInstanceError('provider', $provider, 'AuthenticationProvider');
     }
     // if
     $manager =& Authentication::instance($provider, false);
     $token = false;
     if (FORCE_QUERY_STRING) {
         if (ANGIE_QUERY_STRING) {
             $query_string_aprams = parse_string(ANGIE_QUERY_STRING);
             if (isset($query_string_aprams['token'])) {
                 $token = $query_string_aprams['token'];
             }
             // if
         }
         // if
     } else {
         $token = isset($_GET['token']) ? $_GET['token'] : false;
     }
     // if
     // Handle token based authentication
     if ($token !== false) {
         // Die if disabled or read-only with POST parameters
         if (API_STATUS == API_DISABLED || API_STATUS == API_READ_ONLY && count($_POST) > 0) {
             header('HTTP/1.1 403 Forbidden');
             print "<h1>HTTP/1.1 403 Forbidden</h1>\n";
             if (API_STATUS == API_DISABLED) {
                 print '<p>API is disabled</p>';
             } else {
                 print '<p>API is read-only</p>';
             }
             // if
             die;
         }
         // if
         // Get token and auth_id (old and new API key formats are supported)
         if (strpos($token, '-') !== false) {
             list($auth_id, $token) = explode('-', $token);
         } else {
             $auth_id = array_var($_GET, 'auth_id');
         }
         // if
         $user = null;
         if ($auth_id) {
             $user = Users::findById($auth_id);
         }
         // if
         if (instance_of($user, 'User') && $user->getToken() == $token) {
             $manager->provider->logUserIn($user, array('silent' => true));
             return true;
         } else {
             header('HTTP/1.1 403 Forbidden');
             print '<h1>HTTP/1.1 403 Forbidden</h1>';
             die;
         }
         // if
     }
     // if
     $manager->provider->initialize();
     return true;
 }
コード例 #5
0
ファイル: ct-parser.php プロジェクト: ChowZenki/ro2database
     case 5:
         $skillsdata['linhas'][$l][$i] = parse_int32($data, $lastlen);
         $lastlen += 4;
         break;
     case 6:
         $skillsdata['linhas'][$l][$i] = parse_int32($data, $lastlen);
         $lastlen += 4;
         break;
     case 7:
         $skillsdata['linhas'][$l][$i] = parse_hexcolor($data, $lastlen);
         $lastlen += 4;
         break;
     case 8:
         $slen = parse_int32($data, $lastlen) * 2;
         $lastlen += 4;
         $skillsdata['linhas'][$l][$i] = parse_string($data, $lastlen, $slen);
         $lastlen += $slen;
         break;
     case 9:
         $skillsdata['linhas'][$l][$i] = parse_int32($data, $lastlen);
         $lastlen += 4;
         break;
     case 11:
         $skillsdata['linhas'][$l][$i] = parse_int64($data, $lastlen);
         $lastlen += 8;
         break;
     case 12:
         $skillsdata['linhas'][$l][$i] = parse_int($data, $lastlen);
         $lastlen += 1;
         break;
 }
コード例 #6
0
function todo_update()
{
    global $_TODO_FILENAME, $txt;
    $texts = $txt['update'];
    //Si l'utilisateur a le droit de mettre à jour et d'ajouter
    if (is_allowed_to('update') && is_allowed_to('push')) {
        //Vérification des arguments
        if (isset($_POST['id']) && !empty($_POST['objective']) && isset($_POST['state'])) {
            //Index réel de l'objectif
            $index = $_POST['id'] - 1;
            //Récupération de la liste dans le bon ordre
            $arr = array_reverse(todo_list_get());
            //Vérification de l'existence de l'objectif
            if (count($arr) > $index && $index >= 0) {
                //Réécriture de l'entrée
                $state = $_POST['state'] == $txt['value_done'] ? $txt['todo_done'] : ($_POST['state'] == $txt['value_important'] ? $txt['todo_important'] : '');
                $arr[$index] = $state . parse_string($_POST['objective']) . strftime($texts['edit_time_format'], time());
                $f = fopen($_TODO_FILENAME, 'wb');
                fwrite($f, implode("\n", $arr) . "\n");
                fclose($f);
                //Information du succès
                log_write($texts['log'] . $index);
                show_title($texts['title']);
                begin_page($texts['head'], $texts['class']);
                echo $texts['message'];
                end_page();
                return;
            }
        }
        //En cas de non validation des conditions précédentes
        error_display($texts, false);
    } else {
        error_display($texts, true);
    }
}