Index: tensions/set_plugins/admin.tpl =================================================================== --- /extensions/set_plugins/admin.tpl (revision 11461) +++ (revision ) @@ -1,79 +1,0 @@ - -{footer_script } -{combine_script id="field_set" load="footer" path=$SET_PLUGINS_PATH|@cat:"js/field_set.js" require="jquery"} -{/footer_script} - -{foreach from=$list item=plugin_state}1 -{$list} -{/foreach} - -{if isset($liste_plugins)} -{foreach from=$plugin_states item=plugin_state} -{if $plugin_state==$state} -
-{/if} -{/foreach} - -{/if} - Index: /extensions/set_plugins/include/affiche.php =================================================================== --- /extensions/set_plugins/include/affiche.php (revision 11461) +++ /extensions/set_plugins/include/affiche.php (revision 11462) @@ -9,11 +9,17 @@ global $nb,$liste,$state,$list_visible,$add_plugins; if (isset($conf['set_plugins'])) $set_plugins_parametres = unserialize($conf['set_plugins']); - $nb=set_plugins_controler::set_var('nb','10'); - $liste = set_plugins_controler::set_var('list',array()); - $state=set_plugins_controler::set_var('state',"active"); - $list_visible=set_plugins_controler::set_var('list_visible',"on,on,on,on"); - $add_plugins=set_plugins_controler::set_var('add_plugins',""); + $nb=set_plugins::set_var('nb','10'); + + $liste = set_plugins::set_var('list',array()); + if (isset($liste[0]) && is_array($liste[0])) + $liste = array(); + $liste= array_unique($liste); + + $state=set_plugins::set_var('state',"active"); + $list_visible=set_plugins::set_var('list_visible',"on,on,on,on"); + $add_plugins=set_plugins::set_var('add_plugins',""); global $set; + if ( isset($_POST)) { $set="true"; @@ -22,5 +28,47 @@ } -if(isset($_POST)) +$dir=realpath('./local/plugins/set_plugins'); + if (!is_dir($dir)){ + $dir= realpath('./local/plugins'). "\\set_plugins"; + $umask = umask(0); + $mkd = @mkdir($dir, 0755, true ); + umask($umask); + if ($mkd==false){ + fatal_error( "$dir ".l10n('no write access')); + } + $file = $dir.'\\.htaccess'; + @file_put_contents( $file, 'allow from all' ); + } +$dir=realpath('./local/plugins/set_plugins'); +if(!isset($edited_file) || $edited_file=="") + $edited_file=$dir."/config.txt"; + $edited_file=str_replace("\\","/", $edited_file); + + if (isset($_POST['submit']) && $_POST['submit']==l10n('save_file')){ + if (file_exists($edited_file)){ + copy($edited_file, substr_replace($edited_file, '.bak', strrpos($edited_file , '.'), 0) ); + + + } + if ($file = @fopen($edited_file , "w")) { + $liste= array_unique($liste); + @fwrite($file , serialize($liste)); + @fclose($file); + $infos_message.=l10n("save config").set_plugins::memo_var($liste); + $infos_message.=set_plugins::memo_var($liste); + $infos_message.=set_plugins::memo_var($_POST); + unset($_POST['submit']); + } + + } + +///================================================================ +if (isset($_POST['restore'])){ + $content_file = file_get_contents(substr_replace($edited_file, '.bak', strrpos($edited_file , '.'), 0)); + $file =array(); + $liste= array_unique(unserialize($content_file)); + unset($_POST['restore']); +} + if(isset($_POST['add_plugins']) && $add_plugins!="" ){ @@ -37,10 +85,45 @@ if ( $set=="true"){ - set_plugins_controler::save_config(); + set_plugins::save_config(); unset($_POST['list_visible']); unset($_POST['nb']); } + + + + $plugins = new plugins(); + $plugins->sort_fs_plugins('name'); + //$plugins->get_incompatible_plugins(); + $redirect_url = get_root_url().'admin.php?page='.$_GET['page']; + $base_url = get_root_url().'admin.php?page='.$page['page']; + $action_url = $base_url.'&plugin='.'%s'.'&pwg_token='.get_pwg_token(); + //======================================================= - $template->assign( array( + if($liste) $liste_plugins = array_combine($liste,$liste); + else $liste_plugins =array(); +//========================================================== +$plugin_ids = array_intersect(array_keys($plugins->db_plugins_by_id), + array_keys($liste_plugins) + ); +$liste_tpl=array(); +foreach($plugins->fs_plugins as $plugin_id => $fs_plugin) { +//==== test si $plugin_id fait partie de $liste_plugins ============== + $key = array_search($plugin_id, $liste_plugins,false); + if ($key!== false){ + if(isset( $plugins->db_plugins_by_id[$plugin_id])){ + $tpl_plugin = array( + 'NAME' => $fs_plugin['name'], + 'U_ACTION' => sprintf($action_url, $plugin_id), + 'STATE' => $plugins->db_plugins_by_id[$plugin_id]['state'] + ); + $liste_tpl[$plugin_id]= $tpl_plugin ; + } + + } + +} +$template->assign( array( 'liste_plugins' => $liste_tpl)); + + $template->assign( array( 'PHPWG_VERSION' => PHPWG_VERSION , 'cl_plugins' => $cl_set_plugins_plugin , 'cl_version' => $cl_set_plugins_plugin['version'] , @@ -48,42 +131,17 @@ 'Version_pwg' => PHPWG_VERSION, 'SET_PLUGINS_PATH' => SET_PLUGINS_PATH, + 'SET_PLUGINS_PATH_ABS' => SET_PLUGINS_PATH_ABS, 'set' => $set , - 'nb' => $nb, + 'nb' => ($nb>0)?$nb:1, 'state' => $state , 'list_visible' => $list_visible, 'add_plugins' => $add_plugins, 'nb_list' => count($liste), - //'action' => '' + 'nb_plugins' => count($plugins->db_plugins_by_id) , + 'restore' => false , + 'edited_file' => $edited_file ) - ); - - $plugins = new plugins(); - $plugins->sort_fs_plugins('name'); - $plugins->get_incompatible_plugins(); - $redirect_url = get_root_url().'admin.php?page='.$_GET['page']; - $base_url = get_root_url().'admin.php?page='.$page['page']; - $action_url = $base_url.'&plugin='.'%s'.'&pwg_token='.get_pwg_token(); - //======================================================= - $liste_plugins = array(); - foreach($liste as $liste_id => $liste_plugin) { - $liste_plugins[]= $liste_plugin; - - } -//========================================================== -$liste_tpl=array(); -foreach($plugins->fs_plugins as $plugin_id => $fs_plugin) { -//==== test si $plugin_id fait partie de $liste_plugins ============== - $key = array_search($plugin_id, $liste_plugins,false); - if ($key!== false){ - $tpl_plugin = array( - 'NAME' => $fs_plugin['name'], - 'U_ACTION' => sprintf($action_url, $plugin_id), - 'STATE' => $plugins->db_plugins_by_id[$plugin_id]['state'] - ); - $liste_tpl[]= $tpl_plugin ; - } -} -$template->assign( array( 'liste_plugins' => $liste_tpl)); - + ); + ?> Index: /extensions/set_plugins/js/field_set.js =================================================================== --- /extensions/set_plugins/js/field_set.js (revision 11461) +++ /extensions/set_plugins/js/field_set.js (revision 11462) @@ -3,4 +3,20 @@ // jQuery("#form_set_plugins").submit(); } + + +jQuery().ready(function () { + jQuery('.cluetip').tipTip({ maxWidth:'600px' ,'delay': 0, 'fadeIn': 200, 'fadeOut': 200 }); + jQuery('.cluetip0').cluetip({ + width: 300, + splitTitle: '|' , + clickThrough: true + }); + + + + +}); + + @@ -34,4 +50,6 @@ liste = liste_visible.split(reg); reg = new RegExp("['off']", "g"); + h_min = jQuery("fieldset legend").height(); + h_min = 0; jQuery("fieldset").each( function (i) { @@ -48,5 +66,5 @@ liste[i] = "off"; - h_min = jQuery("#" + this.id + ' legend').height(); + jQuery(this).height(h_min + 0); @@ -129,4 +147,25 @@ } // fielset //==================================================================== + + jQuery("input").each( + function (i) { + jQuery(this).click(function (event) { + jQuery(this).css("color", "red"); + jQuery('#set').val("true"); + jQuery.ajax({ + type: "POST", + async: true, + data: { + set: "true" + } + , + success: function (data) { + // jQuery("#form_set_plugins").submit(); + + } + }); + }); // click + + }); //each jQuery(".pluginBox a").click(function (event) { var link = event.target.href; @@ -142,10 +181,10 @@ async: true, data: { add_plugins: query.plugin, - set: "true", - list_visible: val - } + set: "true", + list_visible: val + } , success: function (data) { - // jQuery("#form_set_plugins").submit(); + // jQuery("#form_set_plugins").submit(); } @@ -157,4 +196,4 @@ }); // load -}); //ready +}); //ready Index: /extensions/set_plugins/language/fr_FR/plugin.lang.php =================================================================== --- /extensions/set_plugins/language/fr_FR/plugin.lang.php (revision 11461) +++ /extensions/set_plugins/language/fr_FR/plugin.lang.php (revision 11462) @@ -1,6 +1,29 @@ Index: /extensions/set_plugins/main.inc.php =================================================================== --- /extensions/set_plugins/main.inc.php (revision 11461) +++ /extensions/set_plugins/main.inc.php (revision 11462) @@ -13,4 +13,11 @@ // Define the path to our plugin. define('SET_PLUGINS_PATH', PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/'); + +//$SET_PLUGINS_PATH_ABS = str_replace('\\','/',dirname(__FILE__) ); +if (!defined('SET_PLUGINS_PATH_ABS')) +define( + 'SET_PLUGINS_PATH_ABS', realpath(SET_PLUGINS_PATH)."\\" +); + load_language('plugin.lang', SET_PLUGINS_PATH); // Hook on to an event to show the administration page. @@ -20,12 +27,12 @@ include_once(SET_PLUGINS_PATH.'set_plugins_class.php'); -$set_plugins_controler = new set_plugins_controler(); +$set_plugins = new set_plugins(); $infos_message = ""; $erreur_message = ""; $infos_warning = ""; // Add an entry to the 'Plugins' menu. -add_event_handler('get_admin_plugin_menu_links', array(&$set_plugins_controler,'set_plugins_admin_menu') ); -add_event_handler('loc_end_admin', array(&$set_plugins_controler,'cl_affiche_messages_admin')); -add_event_handler('loc_end_page_header',array(&$set_plugins_controler,'set_plugins_add')); +add_event_handler('get_admin_plugin_menu_links', array(&$set_plugins,'set_plugins_admin_menu') ); +add_event_handler('loc_end_admin', array(&$set_plugins,'cl_affiche_messages_admin')); +add_event_handler('loc_end_page_header',array(&$set_plugins,'set_plugins_add')); //======================================================= Index: /extensions/set_plugins/maintain.inc.php =================================================================== --- /extensions/set_plugins/maintain.inc.php (revision 11461) +++ /extensions/set_plugins/maintain.inc.php (revision 11462) @@ -30,14 +30,15 @@ if ( !isset($conf['set_plugins']) ){ plugin_uninstall() ; - $my_para['nb']="5"; - $my_para['list']=array(); - $my_para['state']="---"; + + include_once(SET_PLUGINS_PATH.'set_plugins_class.php'); +$set_plugins = new set_plugins(); + +$nb=set_plugins::set_var('nb','10'); +$liste = set_plugins::set_var('list',array()); +$state=set_plugins::set_var('state',"active"); +$list_visible=set_plugins::set_var('list_visible',"on,on,on,on"); +$add_plugins=set_plugins::set_var('add_plugins',""); +set_plugins::save_config(); - $set_plugins_values= pwg_db_real_escape_string(serialize($my_para)); - // conf_update_param('set_plugins', pwg_db_real_escape_string(serialize($config))); - - $query = 'INSERT INTO '.CONFIG_TABLE.' (param, value, comment) - VALUES ("set_plugins", "'.$set_plugins_values.'" ,"Parametres du plugin set_plugins");'; - pwg_query($query); } } Index: /extensions/set_plugins/set_plugins_class.php =================================================================== --- /extensions/set_plugins/set_plugins_class.php (revision 11461) +++ /extensions/set_plugins/set_plugins_class.php (revision 11462) @@ -1,5 +1,5 @@ assign('infos', $page['infos']); + } + if (!isset($page['errors'])) $page['errors']=array(); if ($erreur_message != "") { array_push($page['errors'], $erreur_message); $erreur_message=""; - } + } + if (count($page['errors']) != 0){ + $template->assign('errors', $page['errors']); + } + + if (!isset($page['warnings'])) $page['warnings']=array(); if ($infos_warning!= "") { array_push($page['warnings'], $infos_warning); $infos_warning= ""; - } - if (count($page['errors']) != 0){ - $template->assign('errors', $page['errors']); - } - if (count($page['infos']) != 0){ - $template->assign('infos', $page['infos']); - } + } if (count($page['warnings']) != 0){ $template->assign('warnings', $page['warnings']); @@ -84,8 +89,8 @@ 'nb' =>$nb ); - // $infos_warning .="save_config" . set_plugins_controler::memo_var($conf['set_plugins'] ); + // $infos_warning .="save_config" . set_plugins::memo_var($conf['set_plugins'] ); $conf['set_plugins']= (serialize($config)); conf_update_param('set_plugins', $conf['set_plugins']); - + } @@ -101,5 +106,5 @@ } //=================================================================== - function Affiche_set_plugins(){ +function Affiche_set_plugins(){ include_once(SET_PLUGINS_PATH."include/constants.php"); include(SET_PLUGINS_PATH.'include/affiche.php'); @@ -165,10 +170,14 @@ } $nb=count($liste_plugins); - } + + } + + + if(isset($result) && $result==true){ $redirect_url = get_root_url().'admin.php?page='.$_GET['page']; //$infos_message .="-----> Mise à jour : " . $nb."