Samx Here
n1udSecurity


Server : Apache
System : Linux webd348.cluster026.gra.hosting.ovh.net 5.15.148-ovh-vps-grsec-zfs-classid #1 SMP Thu Feb 8 09:41:04 UTC 2024 x86_64
User : hednacluml ( 122243)
PHP Version : 8.3.9
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
Directory :  /home/hednacluml/info/plugins/auto/agenda/base/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/hednacluml/info/plugins/auto/agenda/base/agenda_evenements.php
<?php
/**
 * Plugin Agenda 4 pour Spip 3.0
 * Licence GPL 3
 *
 * 2006-2011
 * Auteurs : cf paquet.xml
 */

if (!defined('_ECRIRE_INC_VERSION')) {
	return;
}


/**
 * Interfaces du compilateur
 *
 * @param array $interface
 * @return array
 */
function agenda_declarer_tables_interfaces($interface) {
	// 'spip_' dans l'index de $tables_principales
	$interface['table_des_tables']['evenements']='evenements';

	$interface['table_des_traitements']['LIEU'][]= 'expanser_liens('._TRAITEMENT_TYPO.')';
	$interface['table_des_traitements']['ADRESSE'][]= _TRAITEMENT_RACCOURCIS;

	// permet d'utiliser les criteres racine, meme_parent, id_parent
	$interface['exceptions_des_tables']['evenements']['id_parent']='id_evenement_source';
	$interface['exceptions_des_tables']['evenements']['id_rubrique']=array('spip_articles', 'id_rubrique');

	return $interface;
}

/**
 * Tables auxiliaires de liens
 * @param array $tables_auxiliaires
 * @return array
 */
function agenda_declarer_tables_auxiliaires($tables_auxiliaires) {

	//-- Table des participants ----------------------
	$spip_evenements_participants = array(
		'id_evenement_participant' => 'BIGINT(21) NOT NULL AUTO_INCREMENT',
		'id_evenement'	=> "BIGINT (21) DEFAULT '0' NOT NULL",
		'id_auteur'	=> "BIGINT (21) DEFAULT '0' NOT NULL",
		'nom'	=> "text NOT NULL DEFAULT ''",
		'email'	=> "tinytext NOT NULL DEFAULT ''",
		'date' => "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL",
		'reponse' => "char(3) default '?' NOT NULL", // oui, non, ?
	);

	$spip_evenements_participants_key = array(
			'PRIMARY KEY'	=> 'id_evenement_participant',
			'KEY id_evenement'	=> 'id_evenement',
			'KEY id_auteur'	=> 'id_auteur');

	$tables_auxiliaires['spip_evenements_participants'] = array(
		'field' => &$spip_evenements_participants,
		'key' => &$spip_evenements_participants_key);

	return $tables_auxiliaires;
}

/**
 * Declarer la table objet evenement
 *
 * @param array $tables
 * @return array
 */
function agenda_declarer_tables_objets_sql($tables) {
	$tables['spip_evenements'] = array(
		'page'=>'evenement',
		'texte_retour' => 'icone_retour',
		'texte_objets' => 'agenda:info_evenements',
		'texte_objet' => 'agenda:info_evenement',
		'texte_modifier' => 'agenda:icone_modifier_evenement',
		'texte_creer' => 'agenda:titre_cadre_ajouter_evenement',
		'texte_logo_objet' => 'agenda:texte_logo_objet',
		'info_aucun_objet'=> 'agenda:info_aucun_evenement',
		'info_1_objet' => 'agenda:info_un_evenement',
		'info_nb_objets' => 'agenda:info_nombre_evenements',
		'titre' => 'titre, "" AS lang',
		'date' => 'date_debut',
		'principale' => 'oui',
		'champs_editables' => array('date_debut', 'date_fin', 'timezone_affiche', 'titre', 'descriptif','lieu', 'adresse', 'inscription', 'places', 'horaire', 'modif_synchro_source'),
		'field'=> array(
			'id_evenement'	=> 'bigint(21) NOT NULL',
			'id_article'	=> "bigint(21) DEFAULT '0' NOT NULL",
			'date_debut'	=> "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL",
			'date_fin'	=> "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL",
			'timezone_affiche' => "varchar(255) NOT NULL DEFAULT ''",
			'titre'	=> "text NOT NULL DEFAULT ''",
			'descriptif'	=> "text NOT NULL DEFAULT ''",
			'lieu'	=> "text NOT NULL DEFAULT ''",
			'adresse'	=> "text NOT NULL DEFAULT ''",
			'inscription' => 'tinyint(1) DEFAULT 0 NOT NULL',
			'places' => 'int(11) DEFAULT 0 NOT NULL',
			'horaire' => "varchar(3) DEFAULT 'oui' NOT NULL",
			'id_evenement_source'	=> 'bigint(21) NOT NULL',
			'modif_synchro_source'	=> 'tinyint(1) DEFAULT 1 NOT NULL',
			'statut'	=> "varchar(10) DEFAULT '0' NOT NULL",
			'maj'	=> 'TIMESTAMP',
			'date_creation'	=> "datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"
		),
		'key' => array(
			'PRIMARY KEY'	=> 'id_evenement',
			'KEY date_debut'	=> 'date_debut',
			'KEY date_fin'	=> 'date_fin',
			'KEY id_article'	=> 'id_article'
		),
		'join' => array(
			'id_evenement' => 'id_evenement',
			'id_article' => 'id_article'
		),
		'tables_jointures' => array(
			'articles',
			'evenements_participants',
		),
		'rechercher_champs' => array(
		  'titre' => 8, 'descriptif' => 5, 'lieu' => 5, 'adresse' => 3
		),
		'rechercher_jointures' => array(
			'document' => array('titre' => 2, 'descriptif' => 1)
		),
		'statut' => array(
			array(
				'champ' => 'statut',
				'publie' => 'publie',
				'previsu' => '!',
				'exception' => array('statut','tout')
			),
		),
		'statut_titres' => array(
			'prop'=>'agenda:info_evenement_propose',
			'publie'=>'agenda:info_evenement_publie',
			'poubelle'=>'agenda:info_evenement_supprime'
		),
		'statut_textes_instituer' => 	array(
			'prop' => 'texte_statut_propose_evaluation',
			'publie' => 'texte_statut_publie',
			'poubelle' => 'texte_statut_poubelle',
		),
		'texte_changer_statut' => 'agenda:texte_evenement_statut',
		'champs_versionnes' => array('id_article', 'titre', 'descriptif', 'lieu', 'adresse', 'date_debut', 'date_fin', 'horaire', 'timezone_affiche', 'inscription', 'places'),
		'parent' => array(
			'type' => 'article',
			'champ' => 'id_article',
		),
	);

	//-- Jointures ----------------------------------------------------
	$tables['spip_articles']['tables_jointures'][] = 'evenements';
	$tables['spip_auteurs']['tables_jointures'][] = 'evenements_participants';
	$tables['spip_rubriques']['field']['agenda'] = 'tinyint(1) DEFAULT 0 NOT NULL';
	$tables['spip_rubriques']['champs_editables'][] = 'agenda';
	$tables['spip_rubriques']['champs_versionnes'][] = 'agenda';

	return $tables;
}

SAMX