Changeset 45530 in spip-zone


Ignore:
Timestamp:
Mar 18, 2011, 9:28:37 AM (9 years ago)
Author:
marcimat@…
Message:

Une fonction step_install($prefixe, $redirect); qui installe un plugin et ses dépendances.

C'est très à l'arrache là : ça ne gère aucune erreur éventuelle !

Location:
_plugins_/step
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/step/inc/step.php

    r45373 r45530  
    380380// passe simplement un '[version;version]'
    381381function step_verifier_plugin_compatible_version_spip($version){
     382        static $versions = false;
     383        if ($versions === false) { $versions = array(); }
     384        if (isset($versions[$version])) { return $versions[$version]; }
    382385        $version_spip = $GLOBALS['spip_version_branche'].".".$GLOBALS['spip_version_code'];
    383         return plugin_version_compatible($version, $version_spip);
     386        return $versions[$version] = plugin_version_compatible($version, $version_spip);
    384387}
    385388
     
    665668        return $ids;
    666669}
     670
     671
     672
     673/* fonction (pas au point pour installer un plugin)
     674 *
     675 * @param $prefixe : prefixe du plugin
     676 *
     677 */
     678function step_install($prefixe, $redirect='') {
     679        if (!$redirect) {
     680                $redirect = generer_url_ecrire('step');
     681        }
     682
     683        $id = sql_getfetsel('id_plugin', 'spip_plugins', array(
     684                'prefixe=' . sql_quote('meta_concurrences'),
     685                'obsolete=' . sql_quote('non')
     686        ));
     687
     688        if ($id) {
     689
     690                include_spip('inc/step_decideur');
     691                $decideur = new Decideur;
     692                $decideur->verifier_dependances(array($id => "on"));
     693
     694                $_todo = array();
     695                foreach ($decideur->todo as $info) {
     696                        $_todo[$info['i']] = $info['todo'];
     697                }
     698
     699                // todo : erreurs ?
     700               
     701                include_spip('inc/step_actionneur');
     702                $actionneur = new Actionneur();
     703                $actionneur->ajouter_actions($_todo);
     704                $actionneur->sauver_actions();
     705
     706               
     707                include_spip('inc/headers');
     708
     709                $url = generer_action_auteur('step_install', '', $redirect);
     710                redirige_par_entete(str_replace('&','&', $url));
     711        }
     712}
     713 
    667714?>
  • _plugins_/step/plugin.xml

    r45498 r45530  
    1313        <licence>GPL</licence>
    1414        <lien></lien>
    15         <version>0.13.3</version>
     15        <version>0.14.0</version>
    1616        <version_base>0.5</version_base>
    1717        <install>base/step_install.php</install>
Note: See TracChangeset for help on using the changeset viewer.