Blame | Last modification | View Log | RSS feed
<?php//// Ce fichier ne sera execute qu'une foisif (defined("_INC_CHAMP_SQUEL")) return;define("_INC_CHAMP_SQUEL", "1");function init_champs_squel() {global $champs_valides;global $champs_traitement, $champs_pretraitement, $champs_posttraitement;global $rows_articles;global $rows_signatures;global $rows_syndication;global $rows_syndic_articles;global $rows_documents;global $rows_types_documents;global $rows_rubriques;global $rows_forums;global $rows_breves;global $rows_auteurs;global $rows_hierarchie;global $rows_mots;global $rows_groupes_mots;global $tables_relations;global $tables_code_contexte;global $tables_doublons;//// Construire un tableau des tables de relations//$tables_relations = '';$tables_relations['articles']['id_mot'] = 'spip_mots_articles';$tables_relations['articles']['id_auteur'] = 'spip_auteurs_articles';$tables_relations['articles']['id_document'] = 'spip_documents_articles';$tables_relations['auteurs']['id_article'] = 'spip_auteurs_articles';$tables_relations['breves']['id_mot'] = 'spip_mots_breves';$tables_relations['breves']['id_document'] = 'spip_documents_breves';$tables_relations['documents']['id_article'] = 'spip_documents_articles';$tables_relations['documents']['id_rubrique'] = 'spip_documents_rubriques';$tables_relations['documents']['id_breve'] = 'spip_documents_breves';$tables_relations['forums']['id_mot'] = 'spip_mots_forum';$tables_relations['mots']['id_article'] = 'spip_mots_articles';$tables_relations['mots']['id_breve'] = 'spip_mots_breves';$tables_relations['mots']['id_forum'] = 'spip_mots_forum';$tables_relations['mots']['id_rubrique'] = 'spip_mots_rubriques';$tables_relations['mots']['id_syndic'] = 'spip_mots_syndic';$tables_relations['groupes_mots']['id_groupe'] = 'spip_mots';$tables_relations['rubriques']['id_mot'] = 'spip_mots_rubriques';$tables_relations['rubriques']['id_document'] = 'spip_documents_rubriques';$tables_relations['syndication']['id_mot'] = 'spip_mots_syndic';//// Construire un tableau associatif des codes de champ utilisables//$c = array('NOM_SITE_SPIP', 'URL_SITE_SPIP', 'EMAIL_WEBMASTER','CHARSET', 'ID_ARTICLE', 'ID_RUBRIQUE', 'ID_BREVE', 'ID_FORUM','ID_PARENT', 'ID_SECTEUR', 'ID_DOCUMENT', 'ID_TYPE', 'ID_AUTEUR','ID_MOT', 'ID_SYNDIC_ARTICLE', 'ID_SYNDIC', 'ID_SIGNATURE','ID_GROUPE', 'ID_VIGNETTE', 'TITRE', 'SURTITRE', 'SOUSTITRE', 'DESCRIPTIF','CHAPO', 'TEXTE', 'PS', 'NOTES', 'INTRODUCTION', 'MESSAGE', 'DATE','DATE_REDAC', 'DATE_MODIF', 'DATE_NOUVEAUTES', 'INCLUS', 'LANG','LANG_LEFT', 'LANG_RIGHT', 'LANG_DIR', 'LESAUTEURS', 'EMAIL','NOM_SITE', 'LIEN_TITRE', 'URL_SITE', 'LIEN_URL', 'NOM', 'BIO','TYPE', 'PGP', 'FORMULAIRE_ECRIRE_AUTEUR', 'FORMULAIRE_FORUM','FORMULAIRE_SITE', 'PARAMETRES_FORUM', 'FORMULAIRE_RECHERCHE','RECHERCHE', 'FORMULAIRE_INSCRIPTION', 'FORMULAIRE_SIGNATURE','LOGO_MOT', 'LOGO_RUBRIQUE', 'LOGO_RUBRIQUE_NORMAL','LOGO_RUBRIQUE_SURVOL', 'LOGO_AUTEUR', 'LOGO_AUTEUR_NORMAL','LOGO_AUTEUR_SURVOL', 'LOGO_SITE', 'LOGO_BREVE','LOGO_BREVE_RUBRIQUE', 'LOGO_DOCUMENT', 'LOGO_ARTICLE','LOGO_ARTICLE_RUBRIQUE', 'LOGO_ARTICLE_NORMAL','LOGO_ARTICLE_SURVOL', 'URL_ARTICLE', 'URL_RUBRIQUE', 'URL_BREVE','URL_FORUM', 'URL_SYNDIC', 'URL_MOT', 'URL_DOCUMENT', 'URL_AUTEUR','EMBED_DOCUMENT', 'IP', 'VISITES', 'POPULARITE','POPULARITE_ABSOLUE', 'POPULARITE_MAX', 'POPULARITE_SITE', 'POINTS','COMPTEUR_BOUCLE', 'TOTAL_BOUCLE', 'PETITION', 'LARGEUR', 'HAUTEUR','TAILLE', 'EXTENSION', 'DEBUT_SURLIGNE', 'FIN_SURLIGNE','TYPE_DOCUMENT', 'EXTENSION_DOCUMENT', 'FORMULAIRE_ADMIN','LOGIN_PRIVE', 'LOGIN_PUBLIC', 'URL_LOGOUT', 'PUCE', 'EXTRA','EXPOSER', 'MENU_LANG', 'MENU_LANG_ECRIRE');reset($c);while (list(, $val) = each($c)) {unset($champs_traitement[$val]);unset($champs_pretraitement[$val]);unset($champs_posttraitement[$val]);$champs_valides[$val] = $val;}//// Construire un tableau associatif des pre-traitements de champs//// Textes utilisateur : ajouter la securite anti-script$c = array('NOM_SITE_SPIP', 'URL_SITE_SPIP', 'EMAIL_WEBMASTER', 'CHARSET','TITRE', 'SURTITRE', 'SOUSTITRE', 'DESCRIPTIF', 'CHAPO', 'TEXTE', 'PS','NOTES', 'INTRODUCTION', 'MESSAGE', 'LESAUTEURS', 'EMAIL', 'NOM_SITE','LIEN_TITRE', 'URL_SITE', 'LIEN_URL', 'NOM', 'IP', 'BIO','TYPE', 'PGP', 'RECHERCHE');reset($c);while (list(, $val) = each($c)) {$champs_pretraitement[$val][] = 'trim';$champs_posttraitement[$val][] = 'interdire_scripts';}$c = array('EXTRA');reset($c);while (list(, $val) = each($c)) {$champs_posttraitement[$val][] = 'interdire_scripts';}// Textes courts : ajouter le traitement typographique$c = array('NOM_SITE_SPIP', 'SURTITRE', 'TITRE', 'SOUSTITRE', 'NOM_SITE', 'LIEN_TITRE', 'NOM');reset($c);while (list(, $val) = each($c)) {$champs_traitement[$val][] = 'typo';}// Chapo : ne pas l'afficher si article virtuel$c = array('CHAPO');reset($c);while (list(, $val) = each($c)) {$champs_traitement[$val][] = 'nettoyer_chapo';}// Textes longs : ajouter le traitement typographique + mise en forme$c = array('DESCRIPTIF', 'CHAPO', 'TEXTE', 'PS', 'BIO', 'MESSAGE');reset($c);while (list(, $val) = each($c)) {$champs_traitement[$val][] = 'traiter_raccourcis';}// Dates : ajouter le vidage des dates egales a 00-00-0000$c = array('DATE', 'DATE_REDAC', 'DATE_MODIF', 'DATE_NOUVEAUTES');reset($c);while (list(, $val) = each($c)) {$champs_traitement[$val][] = 'vider_date';}// URL_SITE : vider les url == 'http://'$c = array('URL_SITE_SPIP', 'URL_SITE', 'LIEN_URL');reset($c);while (list(, $val) = each($c)) {$champs_traitement[$val][] = 'vider_url';}// URLs : remplacer les & par &$c = array('URL_SITE_SPIP', 'URL_SITE', 'LIEN_URL', 'PARAMETRES_FORUM','URL_ARTICLE', 'URL_RUBRIQUE', 'URL_BREVE', 'URL_FORUM', 'URL_SYNDIC','URL_MOT', 'URL_DOCUMENT');reset($c);while (list(, $val) = each($c)) {$champs_traitement[$val][] = 'htmlspecialchars';}//// Construire un tableau associatif des champs de chaque type// avec l'intitule de la colonne mysql correspondante//$rows_articles = array('ID_ARTICLE' => 'id_article','ID_RUBRIQUE' => 'id_rubrique','ID_SECTEUR' => 'id_secteur','SURTITRE' => 'surtitre','TITRE' => 'titre','SOUSTITRE' => 'soustitre','DESCRIPTIF' => 'descriptif','CHAPO' => 'chapo','TEXTE' => 'texte','PS' => 'ps','LANG' => 'lang','DATE' => 'date','DATE_REDAC' => 'date_redac','NOM_SITE' => 'nom_site','URL_SITE' => 'url_site','DATE_MODIF' => 'date_modif','VISITES' => 'visites','POINTS' => 'points');$rows_auteurs = array('ID_AUTEUR' => 'id_auteur','NOM' => 'nom','BIO' => 'bio','EMAIL' => 'email','NOM_SITE' => 'nom_site','URL_SITE' => 'url_site','PGP' => 'pgp','LANG' => 'lang','POINTS' => 'points');$rows_breves = array('ID_BREVE' => 'id_breve','ID_RUBRIQUE' => 'id_rubrique','ID_SECTEUR' => 'id_rubrique','DATE' => 'date_heure','TITRE' => 'titre','TEXTE' => 'texte','LANG' => 'lang','NOM_SITE' => 'lien_titre','URL_SITE' => 'lien_url','LIEN_TITRE' => 'lien_titre','LIEN_URL' => 'lien_url','POINTS' => 'points');$rows_forums = array('ID_FORUM' => 'id_forum','ID_PARENT' => 'id_parent','ID_BREVE' => 'id_breve','ID_RUBRIQUE' => 'id_rubrique','ID_ARTICLE' => 'id_article','TITRE' => 'titre','TEXTE' => 'texte','DATE' => 'date_heure','NOM' => 'auteur','EMAIL' => 'email_auteur','NOM_SITE' => 'nom_site','URL_SITE' => 'url_site','ID_AUTEUR' => 'id_auteur','IP' => 'ip');$rows_documents = array('ID_DOCUMENT' => 'id_document','ID_VIGNETTE' => 'id_vignette','ID_TYPE' => 'id_type','ID_ARTICLE' => 'id_article','TITRE' => 'titre','DESCRIPTIF' => 'descriptif','DATE' => 'date','LARGEUR' => 'largeur','HAUTEUR' => 'hauteur','TAILLE' => 'taille','TYPE_DOCUMENT' => 'type_document','EXTENSION_DOCUMENT' => 'extension_document');$rows_types_documents = array('ID_TYPE' => 'id_type','TITRE' => 'titre','DESCRIPTIF' => 'descriptif','EXTENSION' => 'extension');$rows_mots = array('ID_MOT' => 'id_mot','TYPE' => 'type','TITRE' => 'titre','DESCRIPTIF' => 'descriptif','TEXTE' => 'texte','POINTS' => 'points','ID_GROUPE' => 'id_groupe');$rows_groupes_mots = array('ID_GROUPE' => 'id_groupe','TITRE' => 'titre');$rows_rubriques = array('ID_RUBRIQUE' => 'id_rubrique','ID_PARENT' => 'id_parent','ID_SECTEUR' => 'id_secteur','TITRE' => 'titre','DESCRIPTIF' => 'descriptif','TEXTE' => 'texte','LANG' => 'lang','DATE' => 'date','POINTS' => 'points');$rows_hierarchie = $rows_rubriques;$rows_signatures = array('ID_SIGNATURE' => 'id_signature','ID_ARTICLE' => 'id_article','DATE' => 'date_time','NOM' => 'nom_email','EMAIL' => 'ad_email','NOM_SITE' => 'nom_site','URL_SITE' => 'url_site','MESSAGE' => 'message');$rows_syndication = array('ID_SYNDIC' => 'id_syndic','ID_RUBRIQUE' => 'id_rubrique','ID_SECTEUR' => 'id_secteur','NOM_SITE' => 'nom_site','URL_SITE' => 'url_site','URL_SYNDIC' => 'url_syndic','DESCRIPTIF' => 'descriptif','DATE' => 'date','POINTS' => 'points');$rows_syndic_articles = array('ID_SYNDIC_ARTICLE' => 'id_syndic_article','ID_SYNDIC' => 'id_syndic','TITRE' => 'titre','URL_ARTICLE' => 'url','DATE' => 'date','LESAUTEURS' => 'lesauteurs','DESCRIPTIF' => 'descriptif','NOM_SITE' => 'nom_site','URL_SITE' => 'url_site');$tables_code_contexte = array('articles' => '$contexte["id_article"] = $row["id_article"];$contexte["id_rubrique"] = $row["id_rubrique"];$contexte["id_secteur"] = $row["id_secteur"];$contexte["date"] = $row["date"];$contexte["date_redac"] = $row["date_redac"];$contexte["accepter_forum"] = $row["accepter_forum"];$contexte["id_trad"] = $row["id_trad"];','breves' => '$contexte["id_breve"] = $row["id_breve"];$contexte["id_rubrique"] = $row["id_rubrique"];$contexte["id_secteur"] = $row["id_rubrique"];$contexte["date"] = $row["date_heure"];','rubriques' => '$contexte["id_rubrique"] = $row["id_rubrique"];$contexte["id_parent"] = $row["id_parent"];$contexte["id_secteur"] = $row["id_secteur"];$contexte["date"] = $row["date"];','hierarchie' => '$contexte["id_rubrique"] = $row["id_rubrique"];$contexte["id_parent"] = $row["id_parent"];$contexte["id_secteur"] = $row["id_secteur"];$contexte["date"] = $row["date"];','documents' => '$contexte["id_document"] = $row["id_document"];$contexte["id_vignette"] = $row["id_vignette"];$contexte["id_type"] = $row["id_type"];','types_documents' => '$contexte["id_type"] = $row["id_type"];','forums' => '$contexte["id_forum"] = $row["id_forum"];$contexte["id_rubrique"] = $row["id_rubrique"];$contexte["id_article"] = $row["id_article"];$contexte["id_breve"] = $row["id_breve"];$contexte["id_syndic"] = $row["id_syndic"];$contexte["id_parent"] = $row["id_parent"];$contexte["id_auteur"] = $row["id_auteur"];$contexte["date"] = $row["date_heure"];','auteurs' => '$contexte["id_auteur"] = $row["id_auteur"];','signatures' => '$contexte["id_signature"] = $row["id_signature"];$contexte["date"] = $row["date_time"];','mots' => '$contexte["id_mot"] = $row["id_mot"];$contexte["type"] = $row["type"];$contexte["id_groupe"] = $row["id_groupe"];','groupes_mots' => '$contexte["id_groupe"] = $row["id_groupe"];','syndication' => '$contexte["id_syndic"] = $row["id_syndic"];$contexte["id_rubrique"] = $row["id_rubrique"];$contexte["id_secteur"] = $row["id_secteur"];$contexte["url_site"] = $row["url_site"];$contexte["date"] = $row["date"];','syndic_articles' => '$contexte["id_syndic"] = $row["id_syndic"];$contexte["id_syndic_article"] = $row["id_syndic_article"];$contexte["date"] = $row["date"];');$tables_doublons = array('articles' => "id_article",'auteurs' => "id_auteur",'breves' => "id_breve",'documents' => "id_document",'forums' => "id_forum",'groupes_mots' => "id_groupe",'hierarchie' => "id_rubrique",'mots' => "id_mot",'rubriques' => "id_rubrique",'signatures' => "id_signature",'syndication' => "id_syndic",'syndic_articles' => "syndic_articles",'types_documents' => "id_document");}init_champs_squel();?>