• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP suivre_invalideur函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中suivre_invalideur函数的典型用法代码示例。如果您正苦于以下问题:PHP suivre_invalideur函数的具体用法?PHP suivre_invalideur怎么用?PHP suivre_invalideur使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了suivre_invalideur函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: action_instituer_forum_sujet_dist

function action_instituer_forum_sujet_dist()
{
    static $statuts_sujet = array('verrou_on' => 'verrouille', 'verrou_off' => 'verrouille', 'resolu_on' => 'resolu', 'resolu_off' => 'resolu');
    $securiser_action = charger_fonction('securiser_action', 'inc');
    $args = $securiser_action();
    list($objet, $id_forum, $action) = explode('/', $args);
    if (!$action or !array_key_exists($action, $statuts_sujet)) {
        return;
    }
    if ($id_forum = intval($id_forum)) {
        $titre = sql_getfetsel('titre', 'spip_forum', 'id_forum=' . sql_quote($id_forum));
        $pattern = '_' . $statuts_sujet[$action] . '_';
        // On supprime systematique le statut demande. Ainsi si l'action demandee est d'enlever un
        // statut c'est fait sinon on evite de rajouter le meme statut
        $titre_modifie = trim(preg_replace(",{$pattern},UimsS", '', $titre));
        // Si l'action demandee est de positionner un nouveau statut on le rajoute au titre
        if ($action == 'verrou_on' or $action == 'resolu_on') {
            $titre_modifie .= $pattern;
        }
        sql_updateq('spip_forum', array('titre' => $titre_modifie), 'id_forum =' . sql_quote($id_forum));
        // Invalider les pages comportant ce forum
        include_spip('inc/invalideur');
        suivre_invalideur("id='id_forum/{$id_forum}'");
    }
}
开发者ID:jazzman346,项目名称:CAC_Site,代码行数:25,代码来源:instituer_forum_sujet.php


示例2: formulaires_editer_mot_article_traiter_dist

function formulaires_editer_mot_article_traiter_dist($id_article = 'new', $id_groupe = '', $retour = '')
{
    $message = array('editable' => true, 'message_ok' => '');
    $id_mot_ancien = sql_getfetsel('mot.id_mot', 'spip_mots as mot left join spip_mots_liens as mots_liens ON (mot.id_mot=mots_liens.id_mot)', 'mots_liens.id_objet=' . intval($id_article) . ' AND mots_liens.objet = "article" AND mot.id_groupe=' . intval($id_groupe));
    include_spip('action/editer_liens');
    // si aucun mot selectionne on delie le mot de ce groupe
    if (!($id_mot = _request('id_mot'))) {
        objet_dissocier(array("mot" => $id_mot_ancien), array("article" => $id_article));
    } else {
        if ($id_mot_ancien != $id_mot) {
            // on delie l'ancien mot
            objet_dissocier(array("mot" => $id_mot_ancien), array("article" => $id_article));
            // on lie le nouveau
            objet_associer(array("mot" => $id_mot), array("article" => $id_article));
        }
    }
    // on invalide le cache
    include_spip('inc/invalideur');
    suivre_invalideur("id='id_article/{$id_article}'");
    if ($retour) {
        include_spip('inc/headers');
        $message .= redirige_formulaire($retour);
    }
    return $message;
}
开发者ID:BenFer,项目名称:geodiversite,代码行数:25,代码来源:editer_mot_article.php


示例3: formulaires_editer_balade_traiter_dist

function formulaires_editer_balade_traiter_dist($id_collection = 'new', $retour = '')
{
    $message = array();
    // récupérer le rang des articles de la balade et le mettre à jour
    $rangs = _request('rang');
    foreach ($rangs as $rang => $id_article) {
        $rang = $rang + 1;
        $ok = sql_updateq('spip_collections_liens', array('rang' => intval($rang)), "objet='article' AND id_objet = {$id_article}");
    }
    // éditer le gis associé
    if ($action_editer = charger_fonction("editer_gis", 'action', true)) {
        list($id, $err) = $action_editer(_request('id_gis'));
    }
    // ne pas polluer l'url de retour avec des paramètres inutiles
    set_request('id_gis');
    set_request('id_objet');
    // invalider le cache
    include_spip('inc/invalideur');
    suivre_invalideur("id='gis/{$id}");
    // rediriger sur l'url de retour passée en paramètre
    if ($retour) {
        include_spip('inc/headers');
        $message['redirect'] = redirige_formulaire($retour);
    }
    return $message;
}
开发者ID:BenFer,项目名称:geodiversite,代码行数:26,代码来源:editer_balade.php


示例4: action_supprimer_rubrique

function action_supprimer_rubrique($r)
{
	list(,,$id_rubrique) = $r;
	sql_delete("spip_rubriques", "id_rubrique=$id_rubrique");
	sql_delete("spip_mots_rubriques", "id_rubrique=$id_rubrique");
	// Les admin restreints qui n'administraient que cette rubrique
	// deviennent redacteurs
	// (il y a sans doute moyen de faire ca avec un having)

	$q = sql_select("id_auteur", "spip_auteurs_rubriques", "id_rubrique=$id_rubrique");

	while ($r = sql_fetch($q)) {
		$id_auteur = $r['id_auteur'];
		sql_delete("spip_auteurs_rubriques", "id_rubrique=$id_rubrique AND id_auteur=$id_auteur");
		$n = sql_countsel("spip_auteurs_rubriques", "id_auteur=$id_auteur");
		if (!$n)
			sql_updateq("spip_auteurs", array("statut" => '1comite'), "id_auteur=$id_auteur");
	}
	// menu_rubriques devra recalculer
	effacer_meta("date_calcul_rubriques");

	// Une rubrique supprimable n'avait pas le statut "publie"
	// donc rien de neuf pour la rubrique parente
	include_spip('inc/rubriques');
	calculer_langues_rubriques();

	// invalider les caches marques de cette rubrique
	include_spip('inc/invalideur');
	suivre_invalideur("id='id_rubrique/$id_rubrique'");
}
开发者ID:rhertzog,项目名称:lcs,代码行数:30,代码来源:supprimer.php


示例5: action_supprimer_rubrique_dist

/**
 * Effacer une rubrique
 *
 * http://doc.spip.org/@action_supprimer_dist
 *
 * @param null $id_rubrique
 * @return void
 */
function action_supprimer_rubrique_dist($id_rubrique = null)
{
    if (is_null($id_rubrique)) {
        $securiser_action = charger_fonction('securiser_action', 'inc');
        $id_rubrique = $securiser_action();
    }
    if (intval($id_rubrique)) {
        sql_delete("spip_rubriques", "id_rubrique=" . intval($id_rubrique));
        // Les admin restreints qui n'administraient que cette rubrique
        // deviennent redacteurs
        // (il y a sans doute moyen de faire ca avec un having)
        $q = sql_select("id_auteur", "spip_auteurs_liens", "objet='rubrique' AND id_objet=" . intval($id_rubrique));
        while ($r = sql_fetch($q)) {
            $id_auteur = $r['id_auteur'];
            // degrader avant de supprimer la restriction d'admin
            // section critique sur les droits
            $n = sql_countsel("spip_auteurs_liens", "objet='rubrique' AND id_objet!=" . intval($id_rubrique) . " AND id_auteur=" . intval($id_auteur));
            if (!$n) {
                include_spip('action/editer_auteur');
                auteurs_set($id_auteur, array("statut" => '1comite'));
            }
            sql_delete("spip_auteurs_liens", "objet='rubrique' AND id_objet=" . intval($id_rubrique) . " AND id_auteur=" . intval($id_auteur));
        }
        // menu_rubriques devra recalculer
        effacer_meta("date_calcul_rubriques");
        // Une rubrique supprimable n'avait pas le statut "publie"
        // donc rien de neuf pour la rubrique parente
        include_spip('inc/rubriques');
        calculer_langues_rubriques();
        // invalider les caches marques de cette rubrique
        include_spip('inc/invalideur');
        suivre_invalideur("id='rubrique/{$id_rubrique}'");
    }
}
开发者ID:nursit,项目名称:SPIP,代码行数:42,代码来源:supprimer_rubrique.php


示例6: formulaires_configurer_forums_participants_traiter_dist

function formulaires_configurer_forums_participants_traiter_dist()
{
    include_spip('inc/config');
    include_spip('inc/meta');
    $purger_skel = false;
    if ($accepter_forum = _request('forums_publics') and $accepter_forum != $GLOBALS['meta']["forums_publics"]) {
        $purger_skel = true;
        $accepter_forum = substr($accepter_forum, 0, 3);
    }
    // Appliquer les changements de moderation forum
    // forums_publics_appliquer : futur, saufnon, tous
    if (in_array($appliquer = _request('forums_publics_appliquer'), array('tous', 'saufnon'))) {
        $sauf = $appliquer == 'saufnon' ? "accepter_forum != 'non'" : '';
        sql_updateq('spip_articles', array('accepter_forum' => $accepter_forum), $sauf);
    }
    if ($accepter_forum == 'abo') {
        ecrire_meta('accepter_visiteurs', 'oui');
    }
    appliquer_modifs_config();
    if ($purger_skel) {
        include_spip('inc/invalideur');
        suivre_invalideur("forum/*");
    }
    return array('message_ok' => _T('config_info_enregistree'));
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:25,代码来源:configurer_forums_participants.php


示例7: action_instituer_langue_rubrique_dist

function action_instituer_langue_rubrique_dist() {

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

	list($id_rubrique, $id_parent) = preg_split('/\W/', $arg);

	if ($changer_lang
	AND $id_rubrique>0
	AND $GLOBALS['meta']['multi_rubriques'] == 'oui'
	AND ($GLOBALS['meta']['multi_secteurs'] == 'non' OR $id_parent == 0)) {
		if ($changer_lang != "herit")
			sql_updateq('spip_rubriques', array('lang'=>$changer_lang, 'langue_choisie'=>'oui'), "id_rubrique=$id_rubrique");
		else {
			if ($id_parent == 0)
				$langue_parent = $GLOBALS['meta']['langue_site'];
			else {
				$langue_parent = sql_getfetsel("lang", "spip_rubriques", "id_rubrique=$id_parent");
			}
			sql_updateq('spip_rubriques', array('lang'=>$langue_parent, 'langue_choisie'=>'non'), "id_rubrique=$id_rubrique");
		}
		include_spip('inc/rubriques');
		calculer_langues_rubriques();

		// invalider les caches marques de cette rubrique
		include_spip('inc/invalideur');
		suivre_invalideur("id='id_rubrique/$id_rubrique'");
	}
}
开发者ID:rhertzog,项目名称:lcs,代码行数:30,代码来源:instituer_langue_rubrique.php


示例8: instituer_un_forum

function instituer_un_forum($statut,$row){

	$id_forum = $row['id_forum'];
	$old = $row['statut'];
 // rien a faire si pas de changement de statut
 	if ($old==$statut)
		return;

	// changer le statut de toute l'arborescence dependant de ce message
	$id_messages = array($id_forum);
	while ($id_messages) {
		sql_updateq("spip_forum", array("statut" => $statut), sql_in("id_forum", $id_messages) ." AND statut = '$old'");

		$id_messages = array_map('reset',sql_allfetsel("id_forum", "spip_forum", sql_in("id_parent", $id_messages)));
	}

	// Notifier de la publication du message, s'il etait 'prop'
	if ($old=='prop' AND $statut=='publie') {
		if ($notifications = charger_fonction('notifications', 'inc')) {
			$notifications('forumvalide', $id_forum);
		}
	}

	// mettre a jour la date du thread
	// si publie, ou que tout le thread est prive,
	// mettre la date du thread a 'maintenant' (date de publi du message)
	// sinon prendre la date_heure du dernier message public
	// c'est imparfait dans le cas ou les crayons ont ete utilises pour modifier ce message entre temps
	// car la date_thread aurait cette derniere date alors que pas le message
	// mais c'est au mieux de ce que l'on peut faire quand on depublie un SPAM ou supprime un message
	if ($statut=='publie' OR $old=='publie') {
		if ($statut=='publie'
			OR !($date_thread = sql_getfetsel("date_heure", "spip_forum", "statut='publie' AND id_thread=".$row['id_thread'], "", "date_heure DESC","0,1"))){
			$date_thread = date('Y-m-d H:i:s');
		}
		sql_updateq("spip_forum", array("date_thread" => $date_thread), "id_thread=".$row['id_thread']);
	}

	// invalider les pages comportant ce forum
	include_spip('inc/invalideur');
	include_spip('inc/forum');
	$index_forum = calcul_index_forum($row['id_article'], $row['id_breve'], $row['id_rubrique'], $row['id_syndic']);
	suivre_invalideur("id='id_forum/$index_forum'");

	// Reindexation du thread (par exemple)
	pipeline('post_edition',
		array(
			'args' => array(
				'table' => 'spip_forum',
				'id_objet' => $id_forum,
				'action' => 'instituer',
			),
			'data' => null
		)
	);
}
开发者ID:rhertzog,项目名称:lcs,代码行数:56,代码来源:instituer_forum.php


示例9: formulaires_activer_forums_objet_traiter_dist

/**
 * Traiter
 *
 * @param int $id_objet
 * @param string $objet
 * @return array
 */
function formulaires_activer_forums_objet_traiter_dist($id_objet, $objet = 'article')
{
    include_spip('inc/autoriser');
    if ($objet == 'article' and autoriser('modererforum', $objet, $id_objet)) {
        $statut = _request('accepter_forum');
        include_spip('base/abstract_sql');
        sql_updateq("spip_articles", array("accepter_forum" => $statut), "id_article=" . intval($id_objet));
        if ($statut == 'abo') {
            ecrire_meta('accepter_visiteurs', 'oui');
        }
        include_spip('inc/invalideur');
        suivre_invalideur("id='{$objet}/{$id_objet}'");
    }
    return array('message_ok' => _T('config_info_enregistree'), 'editable' => true);
}
开发者ID:genma,项目名称:spip_ynh,代码行数:22,代码来源:activer_forums_objet.php


示例10: action_description_outil_post

function action_description_outil_post($index) {
	global $metas_vars;
	if(defined('_SPIP19300')) $connect_id_auteur = $GLOBALS['auteur_session']['id_auteur'];
		else global $connect_id_auteur;
cs_log("Debut : action_description_outil_post($index) - On modifie la(les) variable(s) dans la base");

	// on recupere dans le POST le nom des variables a modifier et le nom de l'outil correspondant
	$variables = unserialize(urldecode(corriger_caracteres(_request('variables'))));
	$outil = corriger_caracteres(_request('outil'));
//cs_log($variables, '$variables = ');
cs_log($metas_vars, 'metas_vars :');
	// besoin des outils pour l'autorisation de modifier les variables
	include_spip('cout_utils');
	include_spip('config_outils');
	global $outils, $cs_variables;
	// on traite chaque variable
	foreach($variables as $var) if(autoriser('configurer', 'variable', 0, NULL, array('nom'=>$var, 'outil'=>$outils[$outil]))) {
		// on recupere dans le POST la nouvelle valeur de la variable
		$final = corriger_caracteres(_request($var));
		if (in_array($var, $metas_vars['_nombres'])) $final = intval($final);
		spip_log("Outil du Couteau Suisse ($outil). Demande de modification sur une variable par l'auteur id=$connect_id_auteur : %$var% = $final");
		// et on modifie les metas !
		if(!isset($cs_variables[$var]['externe'])) $metas_vars[$var] = $final;
		if(isset($cs_variables[$var]['action'])) {
			$action = str_replace('%s', $final, $cs_variables[$var]['action']);
			spip_log("Outil du Couteau Suisse ($outil). Demande d'action sur cette variable : ".$action);
			eval($action);
		}
			
	} else 
		spip_log("Outil du Couteau Suisse n°$index. Modification interdite de la variable %$var% par l'auteur id=$connect_id_auteur !!");
//cs_log($metas_vars, " -- metas_vars = ");
	ecrire_meta('tweaks_variables', serialize($metas_vars));
	ecrire_metas();

cs_log(" -- donc, reinitialisation forcee !");
	// on reinitialise tout, au cas ou ...
	include_spip('inc/invalideur');
	suivre_invalideur("1"); # tout effacer
	purger_repertoire(_DIR_SKELS);
	purger_repertoire(_DIR_CACHE);
	include_spip('cout_utils');
	cs_initialisation(true);
cs_log(" FIN : action_description_outil_post(Array($index)) - Reinitialisation forcee terminee.");
}
开发者ID:rhertzog,项目名称:lcs,代码行数:45,代码来源:description_outil.php


示例11: formulaires_configurer_visiteurs_traiter_dist

function formulaires_configurer_visiteurs_traiter_dist()
{
    $res = array('editable' => true);
    // Modification du reglage accepter_inscriptions => vider le cache
    // (pour repercuter la modif sur le panneau de login)
    if ($i = _request('accepter_visiteurs') and $i != $GLOBALS['meta']['accepter_visiteurs']) {
        include_spip('inc/invalideur');
        suivre_invalideur("1");
        # tout effacer
    }
    foreach (array("accepter_visiteurs") as $m) {
        if (!is_null($v = _request($m))) {
            ecrire_meta($m, $v == 'oui' ? 'oui' : 'non');
        }
    }
    $res['message_ok'] = _T('config_info_enregistree');
    return $res;
}
开发者ID:nursit,项目名称:SPIP,代码行数:18,代码来源:configurer_visiteurs.php


示例12: action_crayons_dist

function action_crayons_dist()
{
    include_spip('action/crayons_store');
    $r = crayons_store();
    // soit exit, soit un redirect gere par SPIP
    if (trim($r['$erreur'])) {
        include_spip('inc/minipres');
        echo minipres($r['$erreur']);
        exit;
    }
    // S'il n'y a pas de redirect, on est mal : eviter toutefois la page blanche
    if (!_request('redirect')) {
        die('OK');
    }
    // Invalider le cache parce que bon... a priori on est dans une
    // interface qui va avoir besoin de refresh
    include_spip('inc/invalideur');
    suivre_invalideur('1');
}
开发者ID:RadioCanut,项目名称:site-radiocanut,代码行数:19,代码来源:crayons.php


示例13: action_editer_signatures_post

function action_editer_signatures_post($r)
{
	$id = $id_article = intval($r[1]);
	if ($r[2] == 'A')
	  $id = 0;
	else $id_article = 0;

	if ($id < 0){
		$id = 0 - $id;
		sql_updateq("spip_signatures", array("statut" => 'poubelle'), "id_signature=$id");

	} elseif ($id > 0){
		$row = sql_fetsel('*', 'spip_signatures', "id_signature=$id"); 
		if ($row['statut']=='poubelle')
			sql_updateq("spip_signatures", array("statut" => 'publie'), "id_signature=$id");
		else {
			include_spip('formulaires/signature');
			include_spip('inc/texte');
			
			$id_article = $row['id_article'];
			
			$url = generer_url_entite_absolue($id_article, 'article','','',true);
			if (signature_a_confirmer($id_article, $url, $row['nom_email'], $row['ad_email'], $row['nom_site'], $row['url_site'], $row['message'], $row['lang'], $row['statut']))
				sql_updateq("spip_signatures", array("date_time" => date('Y-m-d H:i:s')), "id_signature=$id");
			$id = 0;
		}
	} elseif ($id_article) {
		action_editer_signatures_relance($id_article);
	}

	// Invalider les pages ayant trait aux petitions
	if (!$id_article AND $id) {
		$id_article = sql_getfetsel("id_article", "spip_signatures", "id_signature=$id");
		if ($id_article) {
			include_spip('inc/invalideur');
			suivre_invalideur("id='varia/pet$id_article'");
		}
	}

	# cette requete devrait figurer dans l'optimisation
	sql_delete("spip_signatures", "NOT (statut='publie' OR statut='poubelle') AND date_time<DATE_SUB(NOW(),INTERVAL 10 DAY)");
}
开发者ID:rhertzog,项目名称:lcs,代码行数:42,代码来源:editer_signatures.php


示例14: formulaires_lier_album_traiter

function formulaires_lier_album_traiter($id_article)
{
    $id_collection = _request('pid_objet');
    include_spip('action/editer_liens');
    if (autoriser('lierobjet', 'collection', $id_collection)) {
        $rang = sql_countsel('spip_collections_liens', 'id_collection=' . intval($id_collection));
        $association = objet_associer(array('collection' => $id_collection), array('article' => $id_article), array('id_auteur' => $GLOBALS['visiteur_session']['id_auteur'] ? $GLOBALS['visiteur_session']['id_auteur'] : 0, 'rang' => $rang + 1));
    }
    if (!$association) {
        return $res['message_erreur'] = _T('collection:erreur_association_collection');
    } else {
        $organiser = charger_fonction('collection_organiser_rangs', 'inc');
        $organiser($id_collection);
        include_spip('inc/invalideur');
        suivre_invalideur('1');
    }
    $message['editable'] = true;
    $message['message_ok'] = '<script type="text/javascript">if (window.jQuery) ajaxReload("albums");</script>';
    return $message;
}
开发者ID:BenFer,项目名称:geodiversite,代码行数:20,代码来源:lier_album.php


示例15: action_zencoder_notification

/**
 * Fonction d'ajout des versions dans la file d'attente
 *
 * @param int $id_document l'id du document original
 * @param string $objet
 * @param int $id_objet
 */
function action_zencoder_notification()
{
    include_spip('inc/config');
    include_spip('inc/renseigner_document');
    $id_document = _request('id_document');
    $api_key = lire_config('zencoder/api_key');
    spip_log('notification start', 'zencoder');
    // Catch notification
    $notification = json_decode(trim(file_get_contents('php://input')), true);
    spip_log($notification, 'zencoder');
    // Check output/job state
    if ($notification['output']['state'] == 'finished') {
        spip_log('notification job finished', 'zencoder');
        $file = $notification['output']['url'];
        if ($file) {
            $ajouter_documents = charger_fonction('ajouter_documents', 'action');
            $copie_local = charger_fonction('copier_local', 'action');
            spip_log('notification job file' . $file, 'zencoder');
            set_request('joindre_distant', true);
            set_request('url', $file);
            include_spip('inc/joindre_document');
            $files = joindre_trouver_fichier_envoye();
            $nouveaux_doc = $ajouter_documents('new', $files, 'document', $id_document, 'conversion');
            $copie_local($nouveaux_doc[0]);
            /**
             * Invalidation du cache
             */
            include_spip('inc/invalideur');
            suivre_invalideur("0", true);
        }
    } elseif ($notification['output']['state'] == "cancelled") {
        spip_log('canceled' . print_r($notification), 'zencoder');
    } else {
        spip_log('error' . print_r($notification), 'zencoder');
    }
    return;
}
开发者ID:abelass,项目名称:zencoder,代码行数:44,代码来源:zencoder_notification.php


示例16: action_regler_moderation_dist

function action_regler_moderation_dist()
{
	include_spip('inc/autoriser');

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

	if (!preg_match(",^\W*(\d+)$,", $arg, $r)) {
		spip_log("action_regler_moderation_dist $arg pas compris");
		return;
	}

	$id_article = $r[1];
	if (!autoriser('modererforum', 'article', $id_article))
		return;

	$statut = _request('change_accepter_forum');
	sql_updateq("spip_articles", array("accepter_forum" => $statut), "id_article=". $id_article);
	if ($statut == 'abo') {
		ecrire_meta('accepter_visiteurs', 'oui');
	}
	include_spip('inc/invalideur');
	suivre_invalideur("id='id_forum/a$id_article'");
}
开发者ID:rhertzog,项目名称:lcs,代码行数:24,代码来源:regler_moderation.php


示例17: formulaires_upload_traiter_dist

function formulaires_upload_traiter_dist($objet, $id_objet, $fond_documents){
	$res = array('editable'=>' ', 'message_ok'=>'');

	$invalider = false;
	$type = objet_type($objet);
	$res['message_ok'] = "";
	$compteur=0;

	// titrer des documents ?
	if (is_array(_request('ref'))) {
		foreach (_request('ref') as $ref) {
		$ref = intval($ref);
			if ($titre = _request("titrer_$ref")) {
			if (formulaireupload_verifier_doc_liaison($ref,$id_objet,$type))
				sql_updateq('spip_documents', array('titre' => $titre) ,'id_document='.$ref);         
			}
		}     
	}

	// supprimer des documents ?   
	if (is_array(_request('supprimer'))) {
	foreach (_request('supprimer') as $supprimer) {
		if ($supprimer = intval($supprimer)) {
			include_spip('inc/autoriser');
		if (formulaireupload_verifier_doc_liaison($supprimer,$id_objet,$type)) {
			sql_delete('spip_documents_liens', 'id_document='.$supprimer);
				$supprimer_document = charger_fonction('supprimer_document','action');
				$supprimer_document($supprimer);
				$invalider = true;
				$compteur++; 			
			spip_log("supprimer document ($type)".$supprimer, 'upload');
		} 			
		}
  	}
	$res['message_ok'] .= _T("formupload:msg_doc_deleted",array("compteur"=>$compteur))."<br />";
	}

	// Ajouter un document (cf plugins-dist/medias)
	include_spip('inc/joindre_document');
	$files = joindre_trouver_fichier_envoye();

	if (is_array($files)) {     
	$compteur = 0; 

	// gestion des quotas ?
	$quota = intval(lire_config("formulaireupload/files_quota"));
	$quota_left = 100;
	if ($quota>0) {
			if ($res_nb_objet = sql_select('id_document', 'spip_documents_liens', array("objet = '$type'",'id_objet='.intval($id_objet))))
						$nb_objet = sql_count($res_nb_objet);
			$quota_left = $quota - $nb_objet;  
			if ($quota_left<1 OR $quota_left<count($files)) 
				$res['message_ok'] .=  _T("formupload:msg_doc_added_max",array("max"=>$quota))."<br />";

		// on reduit les fichiers proposés par le quota restant       
			array_splice($files, $quota_left); 
    }


	// upload des fichiers
	if ($quota_left>0) {
		$ajouter_documents = charger_fonction('ajouter_documents', 'action');
		$nouveaux_doc = $ajouter_documents($id_document,$files,$objet,$id_objet,'document');

		$compteur = count($nouveaux_doc);
	}
	/* A verifier:
		- securite : verifier les extenxions (si forcing)

	*/
		$invalider = true;
		if ($compteur>0)
		$res['message_ok'] .= _T("formupload:msg_doc_added",array("compteur"=>$compteur));
	}

	if ($invalider) {
		include_spip('inc/invalideur');
		suivre_invalideur("0",true);
		spip_log('invalider', 'upload');
	}

	return $res;
}
开发者ID:samszo,项目名称:open-edition,代码行数:83,代码来源:upload.php


示例18: rubrique_modifier

/**
 * Modifier une rubrique en base
 *
 * @param int $id_rubrique
 *     Identifiant de la rubrique modifiée
 * @param array|null $set
 *     Tableau qu'on peut proposer en lieu et place de _request()
 * @return bool|string
 *     - false  : Aucune modification, aucun champ n'est à modifier
 *     - chaîne vide : Vide si tout s'est bien passé
 *     - chaîne : Texte d'un message d'erreur
 */
function rubrique_modifier($id_rubrique, $set = null)
{
    include_spip('inc/autoriser');
    include_spip('inc/filtres');
    include_spip('inc/modifier');
    $c = collecter_requests(objet_info('rubrique', 'champs_editables'), array('id_parent', 'confirme_deplace'), $set);
    if ($err = objet_modifier_champs('rubrique', $id_rubrique, array('data' => $set, 'nonvide' => array('titre' => _T('titre_nouvelle_rubrique') . " " . _T('info_numero_abbreviation') . $id_rubrique)), $c)) {
        return $err;
    }
    $c = collecter_requests(array('id_parent', 'confirme_deplace'), array(), $set);
    // Deplacer la rubrique
    if (isset($c['id_parent'])) {
        $err = rubrique_instituer($id_rubrique, $c);
    }
    // invalider les caches marques de cette rubrique
    include_spip('inc/invalideur');
    suivre_invalideur("id='rubrique/{$id_rubrique}'");
    // et celui de menu_rubriques
    effacer_meta("date_calcul_rubriques");
    return $err;
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:33,代码来源:editer_rubrique.php


示例19: revision_meta

/**
 * Enregistre les modifications sur une configuration
 * suite à un crayon sur une meta
 *
 * La colonne est toujours 'valeur' pour ces données.
 * La donnée à enregistrer peut-être une sous partie de configuration.
 * Si c'est le cas, on gère l'enregistrement via ecrire_config.
 * 
 * @param string $a
 *   Nom ou clé de la meta (descriptif_site ou demo__truc pour demo/truc)
 * @param bool|array $c
 *   Liste des champs modifiés
 *   Ici, 'valeur' normalement.
 * @return void
**/
function revision_meta($a, $c = false)
{
    if (isset($c['valeur'])) {
        // Certaines cles de configuration sont echapées ici (cf #EDIT_CONFIG{demo/truc})
        $a = str_replace('__', '/', $a);
        spip_log("meta '{$a}' = '{$c['valeur']}'", 'crayons');
        // eviter de planter les vieux SPIP
        if (false === strpos($a, '/')) {
            ecrire_meta($a, $c['valeur']);
            // SPIP 3 ou Bonux 2 ou CFG
        } else {
            include_spip('inc/config');
            ecrire_config($a, $c['valeur']);
        }
        include_spip('inc/invalideur');
        suivre_invalideur('meta');
    }
}
开发者ID:RadioCanut,项目名称:site-radiocanut,代码行数:33,代码来源:crayons_store.php


示例20: supprimer_lien_document

/**
 * Supprimer un lien entre un document et un objet
 *
 * @param int $id_document
 * @param string $objet
 * @param int $id_objet
 * @param bool $supprime
 *   si true, le document est supprime si plus lie a aucun objet
 * @param bool $check
 *   si true, on verifie les documents references dans le texte de l'objet
 *   et on les associe si pas deja fait
 * @return bool
 */
function supprimer_lien_document($id_document, $objet, $id_objet, $supprime = false, $check = false)
{
    if (!($id_document = intval($id_document))) {
        return false;
    }
    // [TODO] le mettre en paramètre de la fonction ?
    $serveur = '';
    // D'abord on ne supprime pas, on dissocie
    include_spip('action/editer_liens');
    objet_dissocier(array('document' => $id_document), array($objet => $id_objet), array('role' => '*'));
    // Si c'est une vignette, l'eliminer du document auquel elle appartient
    // cas tordu peu probable
    sql_updateq("spip_documents", array('id_vignette' => 0), "id_vignette=" . $id_document);
    // verifier son statut apres une suppression de lien
    include_spip('action/editer_document');
    document_instituer($id_document);
    // Invalider les caches
    include_spip('inc/invalideur');
    suivre_invalideur("id='id_document/{$id_document}'");
    pipeline('post_edition', array('args' => array('operation' => 'delier_document', 'action' => 'delier_document', 'table' => 'spip_documents', 'id_objet' => $id_document, 'objet' => $objet, 'id' => $id_objet), 'data' => null));
    if ($check) {
        // si demande, on verifie que ses documents vus sont bien lies !
        $spip_table_objet = table_objet_sql($objet);
        $table_objet = table_objet($objet);
        $id_table_objet = id_table_objet($objet, $serveur);
        $champs = sql_fetsel('*', $spip_table_objet, addslashes($id_table_objet) . "=" . intval($id_objet));
        $marquer_doublons_doc = charger_fonction('marquer_doublons_doc', 'inc');
        $marquer_doublons_doc($champs, $id_objet, $objet, $id_table_objet, $table_objet, $spip_table_objet, '', $serveur);
    }
    // On supprime ensuite s'il est orphelin
    // et si demande
    // ici on ne bloque pas la suppression d'un document rattache a un autre
    if ($supprime and !sql_countsel('spip_documents_liens', "objet!='document' AND id_document=" . $id_document)) {
        $supprimer_document = charger_fonction('supprimer_document', 'action');
        return $supprimer_document($id_document);
    }
}
开发者ID:RadioCanut,项目名称:site-radiocanut,代码行数:50,代码来源:dissocier_document.php



注:本文中的suivre_invalideur函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP sum函数代码示例发布时间:2022-05-23
下一篇:
PHP suivi_ariane函数代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap