コード例 #1
0
ファイル: editer_article.php プロジェクト: nursit/SPIP
/**
 * Action d'édition d'un article dans la base de données dont
 * l'identifiant est donné en paramètre de cette fonction ou
 * en argument de l'action sécurisée
 *
 * Si aucun identifiant n'est donné, on crée alors un nouvel article,
 * à condition que la rubrique parente (id_rubrique) puisse être obtenue
 * (avec _request())
 * 
 * @link http://doc.spip.org/@action_editer_article_dist
 * 
 * @param null|int $arg
 *     Identifiant de l'article. En absence utilise l'argument
 *     de l'action sécurisée.
 * @return array
 *     Liste (identifiant de l'article, Texte d'erreur éventuel)
 */
function action_editer_article_dist($arg = null)
{
    include_spip('inc/autoriser');
    $err = "";
    if (is_null($arg)) {
        $securiser_action = charger_fonction('securiser_action', 'inc');
        $arg = $securiser_action();
    }
    // si id_article n'est pas un nombre, c'est une creation
    // mais on verifie qu'on a toutes les donnees qu'il faut.
    if (!($id_article = intval($arg))) {
        $id_parent = _request('id_parent');
        if (!$id_parent) {
            $err = _L("creation interdite d'un article sans rubrique");
        } elseif (!autoriser('creerarticledans', 'rubrique', $id_parent)) {
            $err = _T("info_creerdansrubrique_non_autorise");
        } else {
            $id_article = article_inserer($id_parent);
        }
    }
    // Enregistre l'envoi dans la BD
    if ($id_article > 0) {
        $err = article_modifier($id_article);
    }
    if ($err) {
        spip_log("echec editeur article: {$err}", _LOG_ERREUR);
    }
    return array($id_article, $err);
}
コード例 #2
0
ファイル: pagination_helper.php プロジェクト: asalce/wp-ci
function page_static_buttons()
{
    ?>
		<div class="static buttons">
			<input type="button" class="btnBack" value="<?php 
    _L('Go Back');
    ?>
" style="float:right;" disabled="disabled" />
			<input type="button" class="btnNext" value="<?php 
    _L('Next');
    ?>
 &raquo;" />
			<input type="submit" class="btnFinish" value="<?php 
    _L('Send');
    ?>
 &raquo;" />
			<a href="<?php 
    link_to('forms');
    ?>
"><?php 
    _L('Cancel');
    ?>
</a>
		</div>
	<?php 
}
コード例 #3
0
ファイル: 193_fonctions.php プロジェクト: rhertzog/lcs
function balise_FOREACH($p) {
	$_tableau = interprete_argument_balise(1,$p);
	$_tableau = str_replace("'", "", strtoupper($_tableau));
	$_tableau = sinon($_tableau, 'ENV');
	$f = 'balise_'.$_tableau;
	$balise = function_exists($f) ? $f : (function_exists($g = $f.'_dist') ? $g : '');

	if($balise) {
		$_modele = interprete_argument_balise(2,$p);
		$_modele = str_replace("'", "", strtolower($_modele));
		$__modele = 'foreach_'.strtolower($_tableau);
		$_modele = (!$_modele AND find_in_path('modeles/'.$__modele.'.html')) ?
			$__modele : 
			($_modele ? $_modele : 'foreach');

		$p->param = @array_shift(@array_shift($p->param));
		$p = $balise($p);
		$filtre = chercher_filtre('foreach');
		$p->code = $filtre . "(unserialize(" . $p->code . "), '" . $_modele . "')";
	}
	//On a pas trouve la balise correspondant au tableau a traiter
	else {
		erreur_squelette(
			_L(/*zbug*/'erreur #FOREACH: la balise #'.$_tableau.' n\'existe pas'),
			$p->id_boucle
		);
		$p->code = "''";
	}
	return $p;
}
コード例 #4
0
ファイル: ie6config.php プロジェクト: rhertzog/lcs
function configuration_ie6config()
{
	$iecompat = $GLOBALS['meta']["iecompat"];
	if (!$iecompat) $iecompat = "non";

	$res = _T("msiecompat:choix_explication");
	
	$res .= afficher_choix('iecompat', $iecompat,
		array('non' => _T("msiecompat:choix_non"),
			'ifixpng' => _L('iFixPng'),
			'IE7' => _L("IE7.js"),
			'IE7squish' => _L("IE7.js + ie7-squish.js"),
			'IE8' => _L('IE8.js'),
			'IE8squish' => _L('IE8.js + ie7-squish.js')
			/*,
			'IE9' => _L('IE9.js'),
			'IE9squish' => _L('IE9.js + ie7-squish.js')
			*/
		), 
		" <br /> ");
	
	
	$res = debut_cadre_trait_couleur(find_in_path("imgs/ie6-logo24.png"), true, "", _T("msiecompat:choix_titre"))
	. ajax_action_post('configurer', 'ie6config', 'configuration','',$res)
	. fin_cadre_trait_couleur(true);

	return ajax_action_greffe('configurer-ie6config', '', $res);

}
コード例 #5
0
ファイル: 403.php プロジェクト: xablen/Semaine14_SPIP_test
/**
 * Un exec d'acces interdit
 *
 * @param string $message
 */
function exec_403_dist($message = '')
{
    $exec = _request('exec');
    $titre = "exec_{$exec}";
    $navigation = "";
    $extra = "";
    if (!$message) {
        $message = _L("Vous n'avez pas le droit d'acc&eacute;der à la page <b>@exec@</b>.", array('exec' => _request('exec')));
    }
    $contenu = "<h1 class='grostitre'>" . _T('info_acces_interdit') . "</h1>" . $message;
    if (_request('var_zajax')) {
        include_spip('inc/actions');
        ajax_retour($contenu);
    } else {
        include_spip('inc/presentation');
        // alleger les inclusions avec un inc/presentation_mini
        $commencer_page = charger_fonction('commencer_page', 'inc');
        echo $commencer_page($titre);
        echo debut_gauche("403_{$exec}", true);
        echo recuperer_fond('prive/squelettes/navigation/dist', array());
        echo pipeline('affiche_gauche', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => ''));
        echo creer_colonne_droite("403", true);
        echo pipeline('affiche_droite', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => ''));
        echo debut_droite("403", true);
        echo pipeline('affiche_milieu', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => $contenu));
        echo fin_gauche(), fin_page();
    }
}
コード例 #6
0
function autorite_erreurs_version($void)
{
	$autorite_erreurs_version = array();
	if ($GLOBALS['spip_version_code'] < '1.9251') {
		$autorite_erreurs_version[] = _L('auteur modere forum');
		$autorite_erreurs_version[] = _L('auteur modere petition');
		$autorite_erreurs_version[] = _L('auteur modifie email');
		$autorite_erreurs_version[] = _L('redacteur voit stats');
		$autorite_erreurs_version[] = _L('redacteur modifie mots');
	}
	if ($GLOBALS['spip_version_code'] < '1.9252') {
		// autoriser(configurer)
		$autorite_erreurs_version[] = _L('configurer');
		// autoriser(detruire)
		$autorite_erreurs_version[] = _L('effacer la base');
	}
	if ($GLOBALS['spip_version_code'] < '1.9253') {
		$autorite_erreurs_version[] = _L('interdire la creation de rubriques');
	}
	if ($GLOBALS['spip_version_code'] < '1.9254') {
		// autoriser(sauvegarder)
		$autorite_erreurs_version[] = _L('faire des sauvegardes');
	}
	if ($GLOBALS['spip_version_code'] < '1.9258') {
		// define(_STATUT_AUTEUR_CREATION)
		$autorite_erreurs_version[] = _L('associer des rubriques aux auteurs');
		$autorite_erreurs_version[] = _L('ignorer la notion d\'administrateur restreint');
	}
	return join('</li><li>', $autorite_erreurs_version);
}
コード例 #7
0
ファイル: acces_restreint.php プロジェクト: rhertzog/lcs
function exec_acces_restreint(){
	if (!autoriser('administrer','zone',0)) {
		include_spip('inc/minipres');
		echo minipres();
		exit;
	}

	$commencer_page = charger_fonction('commencer_page','inc');
	echo $commencer_page(_T('accesrestreint:page_zones_acces'));
	
	echo gros_titre(_T('accesrestreint:titre_zones_acces'),'',false);
	echo debut_gauche("acces_restreint",true);
	
	echo debut_boite_info(true);
	echo propre(_T('accesrestreint:info_page'));	
	echo fin_boite_info(true);
	
	if (autoriser('webmestre')) {
		$res = icone_horizontale(_L('Configuration des acc&#232;s .htaccess'), generer_url_ecrire("acces_restreint_config"), "../"._DIR_PLUGIN_ACCESRESTREINT."/img_pack/zones-acces-24.gif", "cadenas-24.gif",false);
		echo bloc_des_raccourcis($res);
	}
	
	echo debut_droite("acces_restreint",true);
	echo recuperer_fond('prive/acces_restreint',$_GET);
	if (autoriser('modifier','zone'))
		echo "<div>".icone_inline(_T('accesrestreint:creer_zone'),
		  generer_url_ecrire("zones_edit","new=oui"),
		  _DIR_PLUGIN_ACCESRESTREINT."/img_pack/zones-acces-24.gif",
		  "creer.gif",'right')."</div>";

	echo fin_gauche(),fin_page();
}
コード例 #8
0
ファイル: encaisser_reglement.php プロジェクト: nursit/bank
function formulaires_encaisser_reglement_verifier_dist($id_transaction, $config)
{
    $erreurs = array();
    $autorisation_id = _request('autorisation_id');
    $max_len = 55 - strlen(autorisation_suffixe()) - 1;
    if (!$autorisation_id) {
        $erreurs['autorisation_id'] = _T('info_obligatoire');
    } elseif (strlen($autorisation_id) and $max_len > 0 and strlen($autorisation_id) > $max_len) {
        $erreurs['autorisation_id'] = _L($max_len . ' car. maximum') . ' (' . strlen($autorisation_id) . ')';
    }
    return $erreurs;
}
コード例 #9
0
function formulaires_rembourser_transaction_traiter_dist($id_transaction)
{
    $raison = _request('raison');
    $raison = "<hr />\n" . date('Y-m-d H:i:s') . ' REMBOURSEMENT ' . remboursement_prefixe() . " : " . $raison;
    $res = array();
    $rembourser_transaction = charger_fonction('rembourser_transaction', 'bank');
    if ($rembourser_transaction($id_transaction, array('message' => $raison))) {
        $res['message_ok'] = _L('Transaction remboursée');
    } else {
        $res['message_erreur'] = _L('Erreur Technique, remboursement impossible');
    }
    return $res;
}
コード例 #10
0
/**
 * editer une assurance (action apres creation/modif de assur)
 *
 * @return array
 */
function action_editer_adhassur_dist()
{
    $securiser_action = charger_fonction('securiser_action', 'inc');
    $arg = $securiser_action();
    // si id_assur n'est pas un nombre, c'est une creation
    // mais on verifie qu'on a toutes les donnees qu'il faut.
    if (!($id_assur = intval($arg))) {
        if (!($id_assur = adhclub_action_insert_adhassur())) {
            return array(false, _L('echec'));
        }
    }
    $err = action_adhassur_set($id_assur);
    return array($id_assur, $err);
}
コード例 #11
0
ファイル: base.php プロジェクト: vosaan/ankor.local
 /**
  * The function returns current controller link.
  * If passed link starts from / returns related to root controller.
  * 
  * @access protected
  * @param string $link The part of link.
  * @param bool $restoreGet If TRUE returns link with GET parameters.
  * @return string The link.
  */
 protected function getLink($link = '', $restoreGet = false)
 {
     $Controller = $this->getController();
     if (substr($link, 0, 1) == '/') {
         $Controller = Route::getController('/');
     }
     if ($link) {
         $link = '/' . ltrim($link, '/');
     }
     if ($restoreGet && count($_GET)) {
         $link .= strpos($link, '?') === false ? '?' : '&';
         $link .= http_build_query($_GET);
     }
     return rtrim(_L($Controller), '/') . $link;
 }
コード例 #12
0
function action_editer_candidature_dist()
{
    $securiser_action = charger_fonction('securiser_action', 'inc');
    $arg = $securiser_action();
    // si id_candidature n'est pas un nombre, c'est une creation
    // mais on verifie qu'on a toutes les donnees qu'il faut.
    if (!($id_candidature = intval($arg))) {
        $id_auteur = _request('id_auteur');
        if (!($id_candidature = stage_action_insert_candidature($id_auteur))) {
            return array(false, _L('echec'));
        }
    }
    $err = action_candidature_set($id_candidature);
    return array($id_candidature, $err);
}
コード例 #13
0
ファイル: editer_evenement.php プロジェクト: rhertzog/lcs
/**
 * Plugin Agenda pour Spip 2.0
 * Licence GPL
 *
 *
 */

function action_editer_evenement_dist(){

	$securiser_action = charger_fonction('securiser_action', 'inc');
	$arg = $securiser_action();

	// si id_article n'est pas un nombre, c'est une creation
	// mais on verifie qu'on a toutes les donnees qu'il faut.
	if (!$id_evenement = intval($arg)) {
		$id_parent = _request('id_parent');
		if (!$id_evenement = agenda_action_insert_evenement($id_parent))
			return array(false,_L('echec'));
	}

	$err = action_evenement_set($id_evenement);
	return array($id_evenement,$err);
}
コード例 #14
0
ファイル: convert_sql_utf8.php プロジェクト: rhertzog/lcs
function exec_convert_sql_utf8_dist() {
	include_spip('inc/minipres');
	include_spip('inc/charsets');
	$charset_spip = $GLOBALS['meta']['charset'];

	// Definir le titre de la page (et le nom du fichier admin)
	//$action = _T('utf8_convertir_votre_site');
	$action = _L("Conversion de la base en $charset_spip"); #volontairement non traduit (obsolete)

	// si meta deja la, c'est une reprise apres timeout.
	if ($GLOBALS['meta']['convert_sql_utf8']) {
		$base = charger_fonction('convert_sql_utf8', 'base');
		$base($action, true);
	} else {
		$charset_supporte = false;
		$utf8_supporte = false;	
		// verifier que mysql gere le charset courant pour effectuer les conversions 
		include_spip('base/abstract_sql');
		if ($c = sql_get_charset($charset_spip)){
			$sql_charset = $c['charset'];
			$sql_collation = $c['collation'];
			$charset_supporte = true;
		}
		if (!$charset_supporte) {
		  	$utf8_supporte = sql_get_charset('utf8');
			$res = _L("Le charset SPIP actuel $charset_spip n'est pas supporte par votre serveur MySQL<br/>");
			if ($utf8_supporte)
				$res .= _L("Votre serveur supporte utf-8, vous devriez convertir votre site en utf-8 avant de recommencer cette operation");
			echo minipres($action, $res);
		} else {

		$commentaire = "";
		//$commentaire = _T('utf8_convert_avertissement',
		//	array('orig' => $charset_orig,'charset' => 'utf-8'));
		$commentaire .=  "<small>"
		. http_img_pack('warning.gif', _T('info_avertissement'), "style='width: 48px; height: 48px; float: right;margin: 10px;'");
		$commentaire .= _T('utf8_convert_backup', array('charset' => 'utf-8'))
		."</small>";
		$commentaire .= '<br />'._T('utf8_convert_timeout');
		$commentaire .= "<hr />\n";

		$admin = charger_fonction('admin', 'inc');
		echo $admin('convert_sql_utf8', $action, $commentaire);
		}
	}
}
コード例 #15
0
/**
 * editer une cotisation (action apres creation/modif de cotisation)
 *
 * @return array
 */
function action_editer_adhcoti_dist()
{
    /*$debug1= "DEBUG plugin JR : action/editer_adhcoti.php - action_editer_adhcoti_dist - Pt02 - <br />";
    	echo "<br />", $debug1;
    	echo "FIN ", $debug1;
    	*/
    $securiser_action = charger_fonction('securiser_action', 'inc');
    $arg = $securiser_action();
    // si id_coti n'est pas un nombre, c'est une creation
    // mais on verifie qu'on a toutes les donnees qu'il faut.
    if (!($id_coti = intval($arg))) {
        if (!($id_coti = adhclub_action_insert_adhcoti())) {
            return array(false, _L('echec'));
        }
    }
    $err = action_adhcoti_set($id_coti);
    return array($id_coti, $err);
}
コード例 #16
0
ファイル: configurer_relayeur.php プロジェクト: spip/SPIP
function formulaires_configurer_relayeur_verifier_dist()
{
    $erreurs = array();
    $http_proxy = relayeur_saisie_ou_config(_request('http_proxy'), lire_config('http_proxy', ''));
    $http_noproxy = _request('http_noproxy');
    if ($http_proxy and !tester_url_absolue($http_proxy)) {
        $erreurs['http_proxy'] = _L('format_proxy_incorrect');
    }
    if (!isset($erreurs['http_proxy']) and _request('tester_proxy')) {
        if (!$http_proxy) {
            $erreurs['http_proxy'] = _T('info_obligatoire');
        } else {
            include_spip('inc/distant');
            $test_proxy = _request('test_proxy');
            $t = parse_url($test_proxy);
            if (!@$t['host']) {
                $erreurs['test_proxy'] = _T('info_adresse_non_indiquee');
            } else {
                include_spip('inc/texte');
                // pour aide, couper, lang
                $info = "";
                if (!need_proxy($t['host'], $http_proxy, $http_noproxy)) {
                    $info = "<strong>" . _T('page_pas_proxy') . "</strong><br />";
                }
                // il faut fausser le proxy actuel pour faire le test !
                $cur_http_proxy = $GLOBALS['meta']['http_proxy'];
                $cur_http_noproxy = $GLOBALS['meta']['http_noproxy'];
                $GLOBALS['meta']['http_proxy'] = $http_proxy;
                $GLOBALS['meta']['http_noproxy'] = $http_noproxy;
                $page = recuperer_page($test_proxy, true);
                $GLOBALS['meta']['http_proxy'] = $cur_http_proxy;
                $GLOBALS['meta']['http_noproxy'] = $cur_http_noproxy;
                if ($page) {
                    $erreurs['message_ok'] = _T('info_proxy_ok') . "<br />{$info}\n<tt>" . couper(entites_html($page), 300) . "</tt>";
                    $erreurs['message_erreur'] = '';
                } else {
                    $erreurs['message_erreur'] = $info . _T('info_impossible_lire_page', array('test_proxy' => "<tt>{$test_proxy}</tt>")) . " <b><tt>" . no_password_proxy_url($http_proxy) . "</tt></b>." . aider('confhttpproxy');
                }
            }
        }
    }
    return $erreurs;
}
コード例 #17
0
ファイル: editer_zone.php プロジェクト: rhertzog/lcs
/**
 * editer une zone (action apres creation/modif de zone)
 *
 * @return array
 */
function action_editer_zone_dist(){

	$securiser_action = charger_fonction('securiser_action', 'inc');
	$arg = $securiser_action();

	// si id_article n'est pas un nombre, c'est une creation 
	// mais on verifie qu'on a toutes les donnees qu'il faut.
	if (!$id_zone = intval($arg)) {
		if (!$id_zone = accesrestreint_action_insert_zone())
			return array(false,_L('echec'));
		// ajouter les droits a l'admin si demande, lors de la creation
		if (_request('droits_admin')){
			accesrestreint_revision_zone_objets_lies($id_zone,$GLOBALS['visiteur_session']['id_auteur'],'auteur');
		}
	}
	
	$err = action_zone_set($id_zone);
	return array($id_zone,$err);
}
コード例 #18
0
ファイル: convert_utf8.php プロジェクト: rhertzog/lcs
function exec_convert_utf8_dist() {
	include_spip('inc/minipres');
	include_spip('inc/charsets');

	// Definir le titre de la page (et le nom du fichier admin)
	$action = _T('utf8_convertir_votre_site');

	// si meta deja la, c'est une reprise apres timeout.
        if ($GLOBALS['meta']['convert_utf8'] AND $GLOBALS['meta']['admin']) {
                $admin = charger_fonction('admin', 'inc');
                echo $admin('convert_utf8', $action, '', true);
        } else {
		$charset_orig =	$GLOBALS['meta']['charset'];
		// tester si le charset d'origine est connu de spip
		if (!load_charset($charset_orig))
			convert_utf8_non($action,
					  _T('utf8_convert_erreur_orig', array('charset' => "<b>".$charset_orig."</b>")));

		// ne pas convertir si deja utf8 
		// ou si l'interface du serveur ne comprend rien
		else if (($charset_orig == 'utf-8'))
			convert_utf8_non($action,
					  _T('utf8_convert_erreur_deja',
					     array('charset' => $charset_orig)));
		else if(!sql_get_charset('utf-8'))
			convert_utf8_non($action,
					  _L('Votre version du serveur SQL ne gere pas les charset'));
		else {
		$commentaire = _T('utf8_convert_avertissement',
			array('orig' => $charset_orig,'charset' => 'utf-8'));
		$commentaire .=  "<small>"
		. http_img_pack('warning.gif', _T('info_avertissement'), "style='width: 48px; height: 48px; float: right;margin: 10px;'");
		$commentaire .= _T('utf8_convert_backup', array('charset' => 'utf-8'))
		."</small>";
		$commentaire .= '<br />'._T('utf8_convert_timeout');
		$commentaire .= "<hr />\n";

		$admin = charger_fonction('admin', 'inc');
		echo $admin('convert_utf8', $action, $commentaire);
		}
	}
}
コード例 #19
0
ファイル: snippets_pipeline.php プロジェクト: rhertzog/lcs
function snippets_affiche_droite($flux){
	include_spip('inc/snippets');
	$args = $flux['args'];
	$out = "";
	$retour = _DIR_RESTREINT_ABS . self();
	if ($args['exec']=='articles_tous') {
		$out.=boite_snippets(_L('Article'),'article-24.gif','articles','articles',"id_rubrique=0",$retour);
		$out.=boite_snippets(_L('Rubrique'),'rubrique-24.gif','rubriques','rubriques',"",$retour);
	}
	if ($args['exec']=='articles') {
		$out.=boite_snippets(_L('Article'),'article-24.gif','articles',$args['id_article'],"",$retour);
	}
	if ($args['exec']=='naviguer') {
		$out.=boite_snippets(_L('Article'),'article-24.gif','articles','articles',"id_rubrique=".$args['id_rubrique'],$retour);
		$out.=boite_snippets(_L('Rubrique'),'rubrique-24.gif','rubriques',$args['id_rubrique'],"id_rubrique=".$args['id_rubrique'],$retour);
		
	}
	$flux['data'].=$out;
	return $flux;
}
コード例 #20
0
 /**
  * Créer un objet de type L2_Spip_Plugin_Abstract.
  * 
  * @param   string $nom
  * @param   string $prefix
  * @param   string $repertoire
  * @return  L2_Spip_Plugin_Abstract
  * @access public
  * @static
  **/
 function creer($nom, $prefix = null, $repertoire = 'inc')
 {
     if (!$prefix) {
         include_spip('inc/minipres');
         echo minipres(_T('forum_titre_erreur'), _L('<code>L2_Spip_Plugin_Factory::creer(\'' . $nom . '\')</code> : Pr&eacute;fix non renseign&eacute;'));
         exit;
     }
     $nomFormate = str_replace(' ', '', ucwords(str_replace('_', ' ', $nom)));
     $prefixFormate = str_replace(' ', '', ucwords(str_replace('_', ' ', $prefix)));
     $className = $prefixFormate . '_' . $nomFormate;
     include_spip((string) $repertoire . '/' . $prefixFormate . '/' . $nomFormate . '.class');
     $obj = new StdClass();
     $obj->nom = $nom;
     $obj->prefix = $prefix;
     $obj->nomComplet = $prefix . '_' . $nom;
     $obj->nomCompletMinuscules = strtolower($obj->nomComplet);
     $obj->exec = _request('exec');
     $obj->action = _request('action');
     return new $className($obj);
 }
コード例 #21
0
ファイル: cart.php プロジェクト: vosaan/ankor.local
 /**
  * The shopping cart index handler.
  * 
  * @access public
  * @return string The HTML code.
  */
 public function index()
 {
     switch (Request::get('action')) {
         case 'put':
             return $this->put();
         case 'update':
             return $this->update();
         case 'shipping':
             return $this->shipping();
         case 'order':
             return $this->order();
         case 'custom':
             return $this->custom();
     }
     $Cart = Cart::getCart();
     if (!$Cart->hasItems()) {
         return $this->halt(':' . _L('Controller_Frontend'));
     }
     $this->getView()->set('Cart', $Cart);
     return $this->getView()->render();
 }
コード例 #22
0
ファイル: etape_4.php プロジェクト: rhertzog/lcs
function install_etape_4_dist()
{

	// creer le repertoire cache, qui sert partout !
	if(!@file_exists(_DIR_CACHE)) {
		$rep = preg_replace(','._DIR_TMP.',', '', _DIR_CACHE);
		$rep = sous_repertoire(_DIR_TMP, $rep, true,true);
	}


	echo install_debut_html('AUTO', ' onload="document.getElementById(\'suivant\').focus();return false;"');
	echo info_progression_etape(4,'etape_','install/');

	echo "<p>"
			._L('Les extensions ci-dessous sont charg&#233;es et activ&#233;es dans le r&#233;pertoire @extensions@.', array('extensions' => joli_repertoire(_DIR_EXTENSIONS)))
			."</p>";

	// installer les extensions
	include_spip('inc/plugin');
	$afficher = charger_fonction("afficher_liste",'plugins');
	echo $afficher(self(), liste_plugin_files(_DIR_EXTENSIONS),array(), _DIR_EXTENSIONS,'afficher_nom_plugin');

	installe_plugins();

	echo info_etape(_T('info_derniere_etape'),
			_T('info_utilisation_spip')
	);

	// mettre a jour si necessaire l'adresse du site
	// securite si on arrive plus a se loger
	include_spip('inc/config');
	$_POST['adresse_site'] = '';
	appliquer_modifs_config();

	// aller a la derniere etape qui clos l'install et redirige
	$suite =  "\n<input type='hidden' name='etape' value='fin' />"
	  . bouton_suivant(_T('login_espace_prive'));

	echo generer_form_ecrire('install', $suite);	echo install_fin_html();
}
コード例 #23
0
ファイル: configurer_langue.php プロジェクト: JLuc/SPIP
function formulaires_configurer_langue_traiter_dist()
{
    $res = array('editable' => true);
    if ($lang = _request('changer_langue_site')) {
        include_spip('inc/lang');
        // verif que la langue demandee est licite
        if (changer_langue($lang)) {
            ecrire_meta('langue_site', $lang);
            // le test a defait ca:
            utiliser_langue_visiteur();
            $res['message_ok'] = _T('config_info_enregistree');
            include_spip('inc/rubriques');
            calculer_langues_rubriques();
        }
        // le test a defait ca:
        utiliser_langue_visiteur();
    }
    if (!$res['message_ok']) {
        $res['message_erreur'] = _L('erreur');
    }
    return $res;
}
コード例 #24
0
ファイル: editer_adhniv.php プロジェクト: jean-remond/adhclub
/**
 * editer un niveau (action apres creation/modif de niveau)
 *
 * @return array
 */
function action_editer_adhniv_dist()
{
    $securiser_action = charger_fonction('securiser_action', 'inc');
    $arg = $securiser_action();
    // si id_niveau egal 'x', il n'y a pas eut de choix
    //if ('x' == $arg)
    //return array(false,_L(':adhsaison:selectionner_un_niveau:'));
    // si id_niveau n'est pas un nombre, c'est une creation
    // mais on verifie qu'on a toutes les donnees qu'il faut.
    if (!($id_niveau = intval($arg))) {
        //$id_niveau = adhclub_action_insert_adhniv();
        if (!($id_niveau = adhclub_action_insert_adhniv())) {
            return array(false, _L('echec'));
        }
        // ajouter les droits a l'admin si demande, lors de la creation
        if (_request('droits_admin')) {
            adhclub_revision_adhniv_objets_lies($id_niveau, $GLOBALS['visiteur_session']['id_auteur'], 'auteur');
        }
    }
    $err = action_adhniv_set($id_niveau);
    return array($id_niveau, $err);
}
コード例 #25
0
/**
 * Appelle toutes les fonctions de modification d'un objet
 * $err est un message d'erreur eventuelle
 *
 * @param string 'spip_reservation_credit_mouvement'
 * @param int $id
 * @param array|null $set
 * @return mixed|string
 */
function reservation_credit_modifier($id, $set = null)
{
    spip_log($ste, 'teste');
    $table_sql = 'spip_reservation_credits';
    $trouver_table = charger_fonction('trouver_table', 'base');
    $desc = $trouver_table($table_sql);
    if (!$desc or !isset($desc['field'])) {
        spip_log("Objet 'spip_reservation_credit_mouvement' inconnu dans objet_modifier", _LOG_ERREUR);
        return _L("Erreur objet 'spip_reservation_credit_mouvement' inconnu");
    }
    include_spip('inc/modifier');
    $champ_date = 'date_creation';
    $white = array_keys($desc['field']);
    // on ne traite pas la cle primaire par defaut, notamment car
    // sur une creation, id_x vaut 'oui', et serait enregistre en id_x=0 dans la base
    $white = array_diff($white, array($desc['key']['PRIMARY KEY']));
    if (isset($desc['champs_editables']) and is_array($desc['champs_editables'])) {
        $white = $desc['champs_editables'];
    }
    $c = collecter_requests($white, array($champ_date, 'statut', 'id_parent', 'id_secteur'), $set);
    $c['id_reservation_credit'] = $id_reservation_credit;
    // Si l'objet est publie, invalider les caches et demander sa reindexation
    if (objet_test_si_publie('reservation_credit', $id)) {
        $invalideur = "id='reservation_credit_mouvement/{$id}'";
        $indexation = true;
    } else {
        $invalideur = "";
        $indexation = false;
    }
    if ($err = objet_modifier_champs('reservation_credit', $id, array('nonvide' => '', 'invalideur' => $invalideur, 'indexation' => $indexation, 'date_modif' => isset($desc['field']['date_modif']) ? 'date_modif' : ''), $c)) {
        return $err;
    }
    // Modification de statut, changement de rubrique ?
    // FIXME: Ici lorsqu'un $set est passé, la fonction collecter_requests() retourne tout
    //         le tableau $set hors black liste, mais du coup on a possiblement des champs en trop.
    $c = collecter_requests(array($champ_date, 'statut', 'id_parent'), array(), $set);
    $err = objet_instituer('reservation_credit', $id, $c);
    return $err;
}
コード例 #26
0
ファイル: lister_objets.php プロジェクト: JLuc/SPIP
/**
 * Affichage des liste d'objets
 * 
 * Surcharge pour aiguiller vers la mise en squelettes des listes
 *
 * @deprecated Créer ou utiliser un squelette dans `prive/objets/liste/`
 *   pour la table en question et l'appeler avec une inclusion.
 * 
 * @param string $vue
 *     Nom de l'objet
 * @param array $contexte
 *     Contexte du squelette
 * @param bool $force
 *     Si `true` le titre est affiché même s'il n'y a aucun élément dans la liste.
 * @return string
 *     Code HTML de la liste
 */
function inc_lister_objets_dist($vue, $contexte = array(), $force = false)
{
    $res = "";
    // debug
    if (!is_array($contexte)) {
        return _L('$contexte doit etre un tableau dans inc/lister_objets');
    }
    $fond = "prive/objets/liste/{$vue}";
    if (!find_in_path($fond . "." . _EXTENSION_SQUELETTES)) {
        // traiter les cas particuliers
        include_spip('base/connect_sql');
        $vue = table_objet($vue);
        $fond = "prive/objets/liste/{$vue}";
        if (!find_in_path($fond . "." . _EXTENSION_SQUELETTES)) {
            return _L("vue {$vue} introuvable pour lister les objets");
        }
    }
    $contexte['sinon'] = $force ? $contexte['titre'] : '';
    $res = recuperer_fond($fond, $contexte, array('ajax' => true));
    if (_request('var_liste')) {
        echo var_export($contexte, true);
    }
    return $res;
}
コード例 #27
0
ファイル: filtres_ecrire.php プロジェクト: loorenzooo/aslfc
/**
 * Verifier la presence d'alertes pour les auteur
 *
 * http://doc.spip.org/@alertes_auteur
 *
 * @param int $id_auteur
 * @return string
 */
function alertes_auteur($id_auteur)
{
    $alertes = array();
    // si on n'est plus compatible avec php4 : le dire a tous ceux qui passent
    // dans l'espace prive
    if (version_compare(phpversion(), _PHP_MIN) == -1) {
        $alertes[] = _L('SPIP n&#233;cessite PHP&nbsp;@min@, votre version est @version@.', array('min' => _PHP_MIN, 'version' => phpversion()));
    }
    if (isset($GLOBALS['meta']['message_crash_tables']) and autoriser('detruire', null, null, $id_auteur)) {
        include_spip('genie/maintenance');
        if ($msg = message_crash_tables()) {
            $alertes[] = $msg;
        }
    }
    if (isset($GLOBALS['meta']['message_crash_plugins']) and $GLOBALS['meta']['message_crash_plugins'] and autoriser('configurer', '_plugins', null, $id_auteur) and is_array($msg = unserialize($GLOBALS['meta']['message_crash_plugins']))) {
        $msg = implode(', ', array_map('joli_repertoire', array_keys($msg)));
        $alertes[] = _T('plugins_erreur', array('plugins' => $msg));
    }
    $a = isset($GLOBALS['meta']['message_alertes_auteurs']) ? $GLOBALS['meta']['message_alertes_auteurs'] : '';
    if ($a and is_array($a = unserialize($a)) and count($a)) {
        $update = false;
        if (isset($a[$GLOBALS['visiteur_session']['statut']])) {
            $alertes = array_merge($alertes, $a[$GLOBALS['visiteur_session']['statut']]);
            unset($a[$GLOBALS['visiteur_session']['statut']]);
            $update = true;
        }
        if (isset($a[''])) {
            $alertes = array_merge($alertes, $a['']);
            unset($a['']);
            $update = true;
        }
        if ($update) {
            ecrire_meta("message_alertes_auteurs", serialize($a));
        }
    }
    if (isset($GLOBALS['meta']['plugin_erreur_activation']) and autoriser('configurer', '_plugins', null, $id_auteur)) {
        include_spip('inc/plugin');
        $alertes[] = plugin_donne_erreurs();
    }
    $alertes = pipeline('alertes_auteur', array('args' => array('id_auteur' => $id_auteur, 'exec' => _request('exec')), 'data' => $alertes));
    if ($alertes = array_filter($alertes)) {
        return "<div class='wrap-messages-alertes'><div class='messages-alertes'>" . join(' | ', $alertes) . "</div></div>";
    }
}
コード例 #28
0
ファイル: utils.php プロジェクト: phenix-factory/SPIP
/**
 * Fonction d'initialisation, appellée dans inc_version ou mes_options
 *
 * Elle définit les répertoires et fichiers non partageables
 * et indique dans $test_dirs ceux devant être accessibles en écriture
 * mais ne touche pas à cette variable si elle est déjà définie
 * afin que mes_options.php puisse en spécifier d'autres.
 *
 * Elle définit ensuite les noms des fichiers et les droits.
 * Puis simule un register_global=on sécurisé.
 *
 * @param string $pi Répertoire permanent inaccessible
 * @param string $pa Répertoire permanent accessible
 * @param string $ti Répertoire temporaire inaccessible
 * @param string $ta Répertoire temporaire accessible
 */
function spip_initialisation_core($pi = NULL, $pa = NULL, $ti = NULL, $ta = NULL)
{
    static $too_late = 0;
    if ($too_late++) {
        return;
    }
    // Declaration des repertoires
    // le nom du repertoire plugins/ activables/desactivables
    if (!defined('_DIR_PLUGINS')) {
        define('_DIR_PLUGINS', _DIR_RACINE . "plugins/");
    }
    // le nom du repertoire des extensions/ permanentes du core, toujours actives
    if (!defined('_DIR_PLUGINS_DIST')) {
        define('_DIR_PLUGINS_DIST', _DIR_RACINE . "plugins-dist/");
    }
    // le nom du repertoire des librairies
    if (!defined('_DIR_LIB')) {
        define('_DIR_LIB', _DIR_RACINE . "lib/");
    }
    if (!defined('_DIR_IMG')) {
        define('_DIR_IMG', $pa);
    }
    if (!defined('_DIR_LOGOS')) {
        define('_DIR_LOGOS', $pa);
    }
    if (!defined('_DIR_IMG_ICONES')) {
        define('_DIR_IMG_ICONES', _DIR_LOGOS . "icones/");
    }
    if (!defined('_DIR_DUMP')) {
        define('_DIR_DUMP', $ti . "dump/");
    }
    if (!defined('_DIR_SESSIONS')) {
        define('_DIR_SESSIONS', $ti . "sessions/");
    }
    if (!defined('_DIR_TRANSFERT')) {
        define('_DIR_TRANSFERT', $ti . "upload/");
    }
    if (!defined('_DIR_CACHE')) {
        define('_DIR_CACHE', $ti . "cache/");
    }
    if (!defined('_DIR_CACHE_XML')) {
        define('_DIR_CACHE_XML', _DIR_CACHE . "xml/");
    }
    if (!defined('_DIR_SKELS')) {
        define('_DIR_SKELS', _DIR_CACHE . "skel/");
    }
    if (!defined('_DIR_AIDE')) {
        define('_DIR_AIDE', _DIR_CACHE . "aide/");
    }
    if (!defined('_DIR_TMP')) {
        define('_DIR_TMP', $ti);
    }
    if (!defined('_DIR_VAR')) {
        define('_DIR_VAR', $ta);
    }
    if (!defined('_DIR_ETC')) {
        define('_DIR_ETC', $pi);
    }
    if (!defined('_DIR_CONNECT')) {
        define('_DIR_CONNECT', $pi);
    }
    if (!defined('_DIR_CHMOD')) {
        define('_DIR_CHMOD', $pi);
    }
    if (!isset($GLOBALS['test_dirs'])) {
        // Pas $pi car il est bon de le mettre hors ecriture apres intstall
        // il sera rajoute automatiquement si besoin a l'etape 2 de l'install
        $GLOBALS['test_dirs'] = array($pa, $ti, $ta);
    }
    // Declaration des fichiers
    if (!defined('_CACHE_PLUGINS_PATH')) {
        define('_CACHE_PLUGINS_PATH', _DIR_CACHE . "charger_plugins_chemins.php");
    }
    if (!defined('_CACHE_PLUGINS_OPT')) {
        define('_CACHE_PLUGINS_OPT', _DIR_CACHE . "charger_plugins_options.php");
    }
    if (!defined('_CACHE_PLUGINS_FCT')) {
        define('_CACHE_PLUGINS_FCT', _DIR_CACHE . "charger_plugins_fonctions.php");
    }
    if (!defined('_CACHE_PIPELINES')) {
        define('_CACHE_PIPELINES', _DIR_CACHE . "charger_pipelines.php");
    }
    if (!defined('_CACHE_CHEMIN')) {
        define('_CACHE_CHEMIN', _DIR_CACHE . "chemin.txt");
    }
    # attention .php obligatoire pour ecrire_fichier_securise
    if (!defined('_FILE_META')) {
        define('_FILE_META', $ti . 'meta_cache.php');
    }
    if (!defined('_DIR_LOG')) {
        define('_DIR_LOG', _DIR_TMP . 'log/');
    }
    if (!defined('_FILE_LOG')) {
        define('_FILE_LOG', 'spip');
    }
    if (!defined('_FILE_LOG_SUFFIX')) {
        define('_FILE_LOG_SUFFIX', '.log');
    }
    // Le fichier de connexion a la base de donnees
    // tient compte des anciennes versions (inc_connect...)
    if (!defined('_FILE_CONNECT_INS')) {
        define('_FILE_CONNECT_INS', 'connect');
    }
    if (!defined('_FILE_CONNECT')) {
        define('_FILE_CONNECT', @is_readable($f = _DIR_CONNECT . _FILE_CONNECT_INS . '.php') ? $f : (@is_readable($f = _DIR_RESTREINT . 'inc_connect.php') ? $f : false));
    }
    // Le fichier de reglages des droits
    if (!defined('_FILE_CHMOD_INS')) {
        define('_FILE_CHMOD_INS', 'chmod');
    }
    if (!defined('_FILE_CHMOD')) {
        define('_FILE_CHMOD', @is_readable($f = _DIR_CHMOD . _FILE_CHMOD_INS . '.php') ? $f : false);
    }
    if (!defined('_FILE_LDAP')) {
        define('_FILE_LDAP', 'ldap.php');
    }
    if (!defined('_FILE_TMP_SUFFIX')) {
        define('_FILE_TMP_SUFFIX', '.tmp.php');
    }
    if (!defined('_FILE_CONNECT_TMP')) {
        define('_FILE_CONNECT_TMP', _DIR_CONNECT . _FILE_CONNECT_INS . _FILE_TMP_SUFFIX);
    }
    if (!defined('_FILE_CHMOD_TMP')) {
        define('_FILE_CHMOD_TMP', _DIR_CHMOD . _FILE_CHMOD_INS . _FILE_TMP_SUFFIX);
    }
    // Definition des droits d'acces en ecriture
    if (!defined('_SPIP_CHMOD') and _FILE_CHMOD) {
        include_once _FILE_CHMOD;
    }
    // Se mefier des fichiers mal remplis!
    if (!defined('_SPIP_CHMOD')) {
        define('_SPIP_CHMOD', 0777);
    }
    if (!defined('_DEFAULT_CHARSET')) {
        /** Le charset par défaut lors de l'installation */
        define('_DEFAULT_CHARSET', 'utf-8');
    }
    if (!defined('_ROOT_PLUGINS')) {
        define('_ROOT_PLUGINS', _ROOT_RACINE . "plugins/");
    }
    if (!defined('_ROOT_PLUGINS_DIST')) {
        define('_ROOT_PLUGINS_DIST', _ROOT_RACINE . "plugins-dist/");
    }
    if (!defined('_ROOT_PLUGINS_SUPPL') && defined('_DIR_PLUGINS_SUPPL') && _DIR_PLUGINS_SUPPL) {
        define('_ROOT_PLUGINS_SUPPL', _ROOT_RACINE . str_replace(_DIR_RACINE, '', _DIR_PLUGINS_SUPPL));
    }
    // La taille des Log
    if (!defined('_MAX_LOG')) {
        define('_MAX_LOG', 100);
    }
    // Sommes-nous dans l'empire du Mal ?
    // (ou sous le signe du Pingouin, ascendant GNU ?)
    if (isset($_SERVER['SERVER_SOFTWARE']) and strpos($_SERVER['SERVER_SOFTWARE'], '(Win') !== false) {
        if (!defined('_OS_SERVEUR')) {
            define('_OS_SERVEUR', 'windows');
        }
        if (!defined('_SPIP_LOCK_MODE')) {
            define('_SPIP_LOCK_MODE', 1);
        }
        // utiliser le flock php
    } else {
        if (!defined('_OS_SERVEUR')) {
            define('_OS_SERVEUR', '');
        }
        if (!defined('_SPIP_LOCK_MODE')) {
            define('_SPIP_LOCK_MODE', 1);
        }
        // utiliser le flock php
        #if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',2); // utiliser le nfslock de spip mais link() est tres souvent interdite
    }
    // Langue par defaut
    if (!defined('_LANGUE_PAR_DEFAUT')) {
        define('_LANGUE_PAR_DEFAUT', 'fr');
    }
    //
    // Module de lecture/ecriture/suppression de fichiers utilisant flock()
    // (non surchargeable en l'etat ; attention si on utilise include_spip()
    // pour le rendre surchargeable, on va provoquer un reecriture
    // systematique du noyau ou une baisse de perfs => a etudier)
    include_once _ROOT_RESTREINT . 'inc/flock.php';
    // charger tout de suite le path et son cache
    load_path_cache();
    // *********** traiter les variables ************
    //
    // Securite
    //
    // Ne pas se faire manger par un bug php qui accepte ?GLOBALS[truc]=toto
    if (isset($_REQUEST['GLOBALS'])) {
        die;
    }
    // nettoyer les magic quotes \' et les caracteres nuls %00
    spip_desinfecte($_GET);
    spip_desinfecte($_POST);
    spip_desinfecte($_COOKIE);
    spip_desinfecte($_REQUEST);
    // Par ailleurs on ne veut pas de magic_quotes au cours de l'execution
    @set_magic_quotes_runtime(0);
    // Si les variables sont passees en global par le serveur,
    // il faut faire quelques verifications de base
    $avertir_register_globals = false;
    if (test_valeur_serveur(@ini_get('register_globals'))) {
        // ne pas desinfecter les globales en profondeur car elle contient aussi les
        // precedentes, qui seraient desinfectees 2 fois.
        spip_desinfecte($GLOBALS, false);
        if (include_spip('inc/php3')) {
            spip_register_globals(true);
        }
        $avertir_register_globals = true;
    }
    // appliquer le cookie_prefix
    if ($GLOBALS['cookie_prefix'] != 'spip') {
        include_spip('inc/cookie');
        recuperer_cookies_spip($GLOBALS['cookie_prefix']);
    }
    //
    // Capacites php (en fonction de la version)
    //
    $GLOBALS['flag_ob'] = function_exists("ob_start") && function_exists("ini_get") && !strstr(@ini_get('disable_functions'), 'ob_');
    $GLOBALS['flag_sapi_name'] = function_exists("php_sapi_name");
    $GLOBALS['flag_get_cfg_var'] = @get_cfg_var('error_reporting') != "";
    $GLOBALS['flag_upload'] = !$GLOBALS['flag_get_cfg_var'] || get_cfg_var('upload_max_filesize') > 0;
    // Compatibilite avec serveurs ne fournissant pas $REQUEST_URI
    if (isset($_SERVER['REQUEST_URI'])) {
        $GLOBALS['REQUEST_URI'] = $_SERVER['REQUEST_URI'];
    } else {
        $GLOBALS['REQUEST_URI'] = $_SERVER['PHP_SELF'];
        if (!empty($_SERVER['QUERY_STRING']) and !strpos($_SERVER['REQUEST_URI'], '?')) {
            $GLOBALS['REQUEST_URI'] .= '?' . $_SERVER['QUERY_STRING'];
        }
    }
    // Duree de validite de l'alea pour les cookies et ce qui s'ensuit.
    if (!defined('_RENOUVELLE_ALEA')) {
        define('_RENOUVELLE_ALEA', 12 * 3600);
    }
    // charger les meta si possible et renouveller l'alea au besoin
    // charge aussi effacer_meta et ecrire_meta
    $inc_meta = charger_fonction('meta', 'inc');
    $inc_meta();
    // on a pas pu le faire plus tot
    if ($avertir_register_globals) {
        avertir_auteurs("register_globals", _L("Probl&egrave;me de s&eacute;curit&eacute; : register_globals=on; dans php.ini &agrave; corriger."));
    }
    // nombre de repertoires depuis la racine
    // on compare a l'adresse de spip.php : $_SERVER["SCRIPT_NAME"]
    // ou a defaut celle donnee en meta ; (mais si celle-ci est fausse
    // le calcul est faux)
    if (!_DIR_RESTREINT) {
        $GLOBALS['profondeur_url'] = 1;
    } else {
        $uri = isset($_SERVER['REQUEST_URI']) ? explode('?', $_SERVER['REQUEST_URI']) : '';
        $uri_ref = $_SERVER["SCRIPT_NAME"];
        if (!$uri_ref or $ti !== _NOM_TEMPORAIRES_INACCESSIBLES) {
            if (isset($GLOBALS['meta']['adresse_site'])) {
                $uri_ref = parse_url($GLOBALS['meta']['adresse_site']);
                $uri_ref = $uri_ref['path'] . '/';
            } else {
                $uri_ref = "";
            }
        }
        if (!$uri or !$uri_ref) {
            $GLOBALS['profondeur_url'] = 0;
        } else {
            $GLOBALS['profondeur_url'] = max(0, substr_count($uri[0], '/') - substr_count($uri_ref, '/'));
        }
    }
    // s'il y a un cookie ou PHP_AUTH, initialiser visiteur_session
    if (_FILE_CONNECT) {
        if (verifier_visiteur() == '0minirezo' and !isset($_COOKIE['spip_admin'])) {
            clear_path_cache();
        }
    }
}
コード例 #29
0
ファイル: aiguiller.php プロジェクト: rhertzog/lcs
function traiter_appels_inclusions_ajax(){
	// traiter les appels de bloc ajax (ex: pagination)
	if ($v = _request('var_ajax')
	AND $v !== 'form'
	AND $args = _request('var_ajax_env')) {
		include_spip('inc/filtres');
		include_spip('inc/actions');
		if ($args = decoder_contexte_ajax($args)
		AND $fond = $args['fond']) {
			include_spip('public/assembler');
			$contexte = calculer_contexte();
			$contexte = array_merge($args, $contexte);
			$page = recuperer_fond($fond,$contexte,array('trim'=>false));
			$texte = $page;
			if ($ancre = _request('var_ajax_ancre')){
				// pas n'importe quoi quand meme dans la variable !
				$ancre = str_replace(array('<','"',"'"),array('&lt;','&quot;',''),$ancre);
				$texte = "<a href='#$ancre' name='ajax_ancre' style='display:none;'>anchor</a>".$texte;
			}
		}
		else {
			include_spip('inc/headers');
			http_status(403);
			$texte = _L('signature ajax bloc incorrecte');
		}
		ajax_retour($texte);
		return true; // on a fini le hit
	}
	return false;	
}
コード例 #30
0
ファイル: date.php プロジェクト: cepharum/txf
 public function validate($value, $property, model_editor $editor)
 {
     parent::validate($value, $property, $editor);
     if ($value !== null) {
         $ts = $this->parseStorageToDatetime($value);
         if ($this->notBefore instanceof \DateTime && $ts < $this->notBefore) {
             throw new \InvalidArgumentException(_L('Selected date is out of range.'));
         }
         if ($this->notAfter instanceof \DateTime && $ts > $this->notAfter) {
             throw new \InvalidArgumentException(_L('Selected date is out of range.'));
         }
     }
     return true;
 }