diff --git a/.gitattributes b/.gitattributes index 91e93c777bc67c4da2414486daf38315fe8af9a9..04d76643bf2799a10b26dc570060956783995626 100644 --- a/.gitattributes +++ b/.gitattributes @@ -101,6 +101,7 @@ lang/medias_tr.php -text lang/medias_vi.php -text lang/medias_wo.php -text lang/medias_zh.php -text +/medias_administrations.php -text /medias_autoriser.php -text /medias_fonctions.php -text /medias_pipelines.php -text @@ -124,7 +125,6 @@ modeles/text.html -text modeles/text_csv.html -text modeles/text_html.html -text modeles/video.html -text -/plugin.xml -text prive/objets/contenu/portfolio_document.html -text prive/objets/editer/colonne_document.html -text prive/objets/editer/document_popup.html -text diff --git a/_paquet-migration.sh b/_paquet-migration.sh deleted file mode 100644 index 27f067814d2519cc737445c463fa38bcf7e8d003..0000000000000000000000000000000000000000 --- a/_paquet-migration.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -### FICHIER DE DESCRIPTION DE LA MIGRATION VERS PAQUET.XML -### ------------------------------------------------------ -### - Date : 30-Jul-2011 15:01:37 -### - Fichier d'origine : ../plugins/auto/medias/plugin.xml -### - Contient les informations et les commandes SVN pour -### rendre effective la migration utilisant les fichiers produits. -### Pour se garder de toute erreur de manipulation -### les commandes sont en commentaire. -### ------------------------------------------------------ - -### Ajout du fichier paquet.xml au depot. -### On conserve le fichier plugin.xml tout le temps de la migration ! -# svn add paquet.xml - -### Ajout au depot des fichiers de langue donnant slogan et description du plugin. -### Attention la liste des langues provient des traductions (avec multi) -### de la description dans plugin.xml et non des modules de langue du plugin ! -# svn add lang/paquet-medias_fr.php - -### La disparition des balises options, fonctions et install au profit -### d'un nommage standard d'un fichier unique exige parfois de renommer -### les fichiers, voire de les fusionner. -### Si le code du plugin inclut explicitement ces fichiers -### il vous faudra les renommer dans les appels de include_spip ! -# svn mv base/medias.php medias_administrations.php diff --git a/base/medias.php b/base/medias.php index 18ddfac83f4fde59e1b3cd45dd01fd4ce905098e..6b22d115734fea97dc1e7e8a546e2dbefc10b8ed 100644 --- a/base/medias.php +++ b/base/medias.php @@ -227,108 +227,6 @@ function creer_base_types_doc($serveur='') { } -function medias_check_statuts($affiche = false){ - $trouver_table = charger_fonction('trouver_table','base'); - $desc = $trouver_table('documents'); - # securite, si jamais on arrive ici avant un upgrade de base - if (!isset($desc['field']['statut'])) - return; - - // utiliser sql_allfetsel pour clore la requete avant la mise a jour en base sur chaque doc (sqlite) - // iterer par groupe de 100 pour ne pas exploser sur les grosses bases - $docs = array_map('reset',sql_allfetsel('id_document','spip_documents',"statut='0'",'','',"0,100")); - while (count($docs)){ - include_spip('action/editer_document'); - foreach($docs as $id_document) - // mettre a jour le statut si necessaire - instituer_document($id_document); - if ($affiche) echo " ."; - $docs = array_map('reset',sql_allfetsel('id_document','spip_documents',"statut='0'",'','',"0,100")); - } -} - -function medias_upgrade($nom_meta_base_version,$version_cible){ - if (!isset($GLOBALS['meta'][$nom_meta_base_version])){ - $trouver_table = charger_fonction('trouver_table','base'); - if ($desc = $trouver_table('spip_documents') - AND !isset($desc['field']['statut'])) - ecrire_meta($nom_meta_base_version,'0.1.0'); - } - - $maj = array(); - $maj['create'] = array( - array('maj_tables',array('spip_documents','spip_documents_liens','spip_types_documents')), - array('creer_base_types_doc') - ); - $maj['0.2.0'] = array( - array('sql_alter',"TABLE spip_documents ADD statut varchar(10) DEFAULT '0' NOT NULL"), - ); - $maj['0.3.0'] = array( - array('sql_alter',"TABLE spip_documents ADD date_publication datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"), - ); - $maj['0.4.0'] = array( - // recalculer tous les statuts en tenant compte de la date de publi des articles... - array('medias_check_statuts',true), - ); - $maj['0.5.0'] = array( - array('sql_alter',"TABLE spip_documents ADD brise tinyint DEFAULT 0"), - ); - $maj['0.6.0'] = array( - array('sql_alter',"TABLE spip_types_documents ADD media varchar(10) DEFAULT 'file' NOT NULL"), - array('creer_base_types_doc'), - ); - $maj['0.7.0'] = array( - array('sql_alter',"TABLE spip_documents ADD credits varchar(255) DEFAULT '' NOT NULL"), - ); - $maj['0.10.0'] = array( - array('sql_alter',"TABLE spip_documents CHANGE fichier fichier TEXT NOT NULL DEFAULT ''"), - ); - $maj['0.11.0'] = array( - array('sql_alter',"TABLE spip_documents CHANGE mode mode varchar(10) DEFAULT 'document' NOT NULL"), - ); - $maj['0.11.0'] = array( - array('sql_alter',"TABLE spip_documents CHANGE mode mode varchar(10) DEFAULT 'document' NOT NULL"), - ); - $maj['0.12.0'] = array( - array('medias_maj_meta_documents'), - ); - $maj['0.14.0'] = array( - array('creer_base_types_doc'), - ); - include_spip('base/upgrade'); - maj_plugin($nom_meta_base_version, $version_cible, $maj); - - medias_check_statuts(); -} - -function medias_maj_meta_documents(){ - $config = array(); - if (isset($GLOBALS['meta']['documents_article']) AND $GLOBALS['meta']['documents_article']!=='non') - $config[] = 'spip_articles'; - if (isset($GLOBALS['meta']['documents_rubrique']) AND $GLOBALS['meta']['documents_rubrique']!=='non') - $config[] = 'spip_rubriques'; - ecrire_meta('documents_objets',implode(',',$config)); -} - -function medias_install($action,$prefix,$version_cible){ - $version_base = $GLOBALS[$prefix."_base_version"]; - switch ($action){ - case 'test': - # plus necessaire si pas de bug :p - # medias_check_statuts(); - return (isset($GLOBALS['meta'][$prefix."_base_version"]) - AND version_compare($GLOBALS['meta'][$prefix."_base_version"],$version_cible,">=")); - break; - case 'install': - medias_upgrade('medias_base_version',$version_cible); - break; - case 'uninstall': - # pas de deinstallation sur les documents pour le moment, trop dangereux - # medias_vider_tables(); - break; - } -} - /** * Optimiser la base de donnee en supprimant les liens orphelins diff --git a/medias_administrations.php b/medias_administrations.php new file mode 100644 index 0000000000000000000000000000000000000000..88d6edfef3fc38b410641674dc85de19210352a5 --- /dev/null +++ b/medias_administrations.php @@ -0,0 +1,128 @@ +<?php + +/***************************************************************************\ + * SPIP, Systeme de publication pour l'internet * + * * + * Copyright (c) 2001-2011 * + * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * + * * + * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * + * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * +\***************************************************************************/ + +/** + * verifier et maj le statut des documents + * @param bool $affiche + * @return + */ +function medias_check_statuts($affiche = false){ + $trouver_table = charger_fonction('trouver_table','base'); + $desc = $trouver_table('documents'); + # securite, si jamais on arrive ici avant un upgrade de base + if (!isset($desc['field']['statut'])) + return; + + // utiliser sql_allfetsel pour clore la requete avant la mise a jour en base sur chaque doc (sqlite) + // iterer par groupe de 100 pour ne pas exploser sur les grosses bases + $docs = array_map('reset',sql_allfetsel('id_document','spip_documents',"statut='0'",'','',"0,100")); + while (count($docs)){ + include_spip('action/editer_document'); + foreach($docs as $id_document) + // mettre a jour le statut si necessaire + instituer_document($id_document); + if ($affiche) echo " ."; + $docs = array_map('reset',sql_allfetsel('id_document','spip_documents',"statut='0'",'','',"0,100")); + } +} + +/** + * Mise a jour de la BDD + * @param string $nom_meta_base_version + * @param string $version_cible + */ +function medias_upgrade($nom_meta_base_version,$version_cible){ + if (!isset($GLOBALS['meta'][$nom_meta_base_version])){ + $trouver_table = charger_fonction('trouver_table','base'); + if ($desc = $trouver_table('spip_documents') + AND !isset($desc['field']['statut'])) + ecrire_meta($nom_meta_base_version,'0.1.0'); + } + + $maj = array(); + $maj['create'] = array( + array('maj_tables',array('spip_documents','spip_documents_liens','spip_types_documents')), + array('creer_base_types_doc') + ); + $maj['0.2.0'] = array( + array('sql_alter',"TABLE spip_documents ADD statut varchar(10) DEFAULT '0' NOT NULL"), + ); + $maj['0.3.0'] = array( + array('sql_alter',"TABLE spip_documents ADD date_publication datetime DEFAULT '0000-00-00 00:00:00' NOT NULL"), + ); + $maj['0.4.0'] = array( + // recalculer tous les statuts en tenant compte de la date de publi des articles... + array('medias_check_statuts',true), + ); + $maj['0.5.0'] = array( + array('sql_alter',"TABLE spip_documents ADD brise tinyint DEFAULT 0"), + ); + $maj['0.6.0'] = array( + array('sql_alter',"TABLE spip_types_documents ADD media varchar(10) DEFAULT 'file' NOT NULL"), + array('creer_base_types_doc'), + ); + $maj['0.7.0'] = array( + array('sql_alter',"TABLE spip_documents ADD credits varchar(255) DEFAULT '' NOT NULL"), + ); + $maj['0.10.0'] = array( + array('sql_alter',"TABLE spip_documents CHANGE fichier fichier TEXT NOT NULL DEFAULT ''"), + ); + $maj['0.11.0'] = array( + array('sql_alter',"TABLE spip_documents CHANGE mode mode varchar(10) DEFAULT 'document' NOT NULL"), + ); + $maj['0.11.0'] = array( + array('sql_alter',"TABLE spip_documents CHANGE mode mode varchar(10) DEFAULT 'document' NOT NULL"), + ); + $maj['0.12.0'] = array( + array('medias_maj_meta_documents'), + ); + $maj['0.14.0'] = array( + array('creer_base_types_doc'), + ); + include_spip('base/upgrade'); + maj_plugin($nom_meta_base_version, $version_cible, $maj); + + medias_check_statuts(); +} + +/** + * Maj des meta documents + */ +function medias_maj_meta_documents(){ + $config = array(); + if (isset($GLOBALS['meta']['documents_article']) AND $GLOBALS['meta']['documents_article']!=='non') + $config[] = 'spip_articles'; + if (isset($GLOBALS['meta']['documents_rubrique']) AND $GLOBALS['meta']['documents_rubrique']!=='non') + $config[] = 'spip_rubriques'; + ecrire_meta('documents_objets',implode(',',$config)); +} + +/* +function medias_install($action,$prefix,$version_cible){ + $version_base = $GLOBALS[$prefix."_base_version"]; + switch ($action){ + case 'test': + # plus necessaire si pas de bug :p + # medias_check_statuts(); + return (isset($GLOBALS['meta'][$prefix."_base_version"]) + AND version_compare($GLOBALS['meta'][$prefix."_base_version"],$version_cible,">=")); + break; + case 'install': + medias_upgrade('medias_base_version',$version_cible); + break; + case 'uninstall': + # pas de deinstallation sur les documents pour le moment, trop dangereux + # medias_vider_tables(); + break; + } +} +*/ \ No newline at end of file diff --git a/_paquet.xml b/paquet.xml similarity index 84% rename from _paquet.xml rename to paquet.xml index 4a21fa1a29fe7fc5808ca96c9f0fedc71169677d..b5f36c48de74d8c8a5cec752cf5ed354ecd0e710 100644 --- a/_paquet.xml +++ b/paquet.xml @@ -1,9 +1,9 @@ <paquet prefix="medias" categorie="multimedia" - version="2.1.0" + version="2.2.0" etat="test" - compatibilite="[3.0.0-dev;[" + compatibilite="[3.0.0-alpha2;[" logo="prive/themes/spip/images/portfolio-32.png" schema="0.14.0" > @@ -12,8 +12,7 @@ <!-- Gestion des medias dans SPIP --> <auteur>Collectif SPIP</auteur> - <auteur>Cedric Morin</auteur> - <credit>Romy Duhem-Verdiere pour la mediatheque</credit> + <credit>Cédric Morin, Romy Duhem-Verdière pour la médiathèque</credit> <traduire module="medias" reference="fr" gestionnaire="salvatore" /> @@ -36,7 +35,7 @@ <utilise nom="Z" compatibilite="[1.2.1;[" /> <utilise nom="mediabox" compatibilite="[0.5.0;[" /> - <menu nom="documents" titre="medias:documents" parent="bando_edition" icone="images/portfolio-16.png" action="mediatheque" /> + <menu nom="documents" titre="medias:info_documents" parent="bando_edition" icone="images/portfolio-16.png" action="mediatheque" /> <chemin path="squelettes" /> <chemin path="" /> diff --git a/plugin.xml b/plugin.xml deleted file mode 100644 index ceb242f78c78a8acfd8d5e808d0e6a412c9c4443..0000000000000000000000000000000000000000 --- a/plugin.xml +++ /dev/null @@ -1,80 +0,0 @@ -<plugin> - <nom>Medias</nom> - <auteur>Collectif SPIP, Cedric Morin & Romy Duhem-Verdiere pour la mediatheque</auteur> - <icon>prive/themes/spip/images/portfolio-32.png</icon> - <version>2.1.0</version> - <version_base>0.14.0</version_base> - <etat>test</etat> - <slogan>Gestion des medias dans SPIP</slogan> - <description>Gestion des medias de SPIP</description> - <install>base/medias.php</install> - <fonctions>medias_fonctions.php</fonctions> - <prefix>medias</prefix> - <pipeline> - <nom>declarer_tables_interfaces</nom> - <inclure>base/medias.php</inclure> - </pipeline> - <pipeline> - <nom>declarer_tables_principales</nom> - <inclure>base/medias.php</inclure> - </pipeline> - <pipeline> - <nom>declarer_tables_auxiliaires</nom> - <inclure>base/medias.php</inclure> - </pipeline> - <pipeline> - <nom>declarer_tables_objets_surnoms</nom> - <inclure>base/medias.php</inclure> - </pipeline> - <pipeline> - <nom>declarer_tables_objets_sql</nom> - <inclure>base/medias.php</inclure> - </pipeline> - <pipeline> - <nom>optimiser_base_disparus</nom> - <inclure>base/medias.php</inclure> - </pipeline> - <pipeline> - <nom>post_insertion</nom> - <inclure>medias_pipelines.php</inclure> - </pipeline> - <pipeline> - <nom>post_edition</nom> - <inclure>medias_pipelines.php</inclure> - </pipeline> - <pipeline> - <nom>affiche_gauche</nom> - <inclure>medias_pipelines.php</inclure> - </pipeline> - <pipeline> - <nom>afficher_complement_objet</nom> - <inclure>medias_pipelines.php</inclure> - </pipeline> - <pipeline> - <nom>objet_compte_enfants</nom> - <inclure>medias_pipelines.php</inclure> - </pipeline> - - - <pipeline> - <nom>autoriser</nom> - <inclure>medias_autoriser.php</inclure> - </pipeline> - <pipeline><nom>document_desc_actions</nom><action></action></pipeline> - <pipeline><nom>editer_document_actions</nom><action></action></pipeline> - <pipeline><nom>renseigner_document_distant</nom><action></action></pipeline> - - <bouton id='documents' parent='bando_edition'> - <titre>medias:documents</titre> - <icone>images/portfolio-16.png</icone> - <url>mediatheque</url> - </bouton> - - <chemin dir="" /> - <chemin dir="squelettes" /> - <necessite id="SPIP" version="[3.0.0-dev;]" /> - <utilise id="Z" version="[1.2.1;]" /> - <utilise id="mediabox" version="[0.5.0;]" /> - <categorie>multimedia</categorie> - <traduire gestionnaire="salvatore" module="medias" reference="fr" /> -</plugin>