/* * Copyright (C) 2015 Dany De Bontridder * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /** * Display the forbidden folders if the request comes from a form * with an input text (id:database_filter_input) then this text is * used as a filter * @param {type} p_user : the user id * @returns nothing */ function folder_display(p_user) { /** * If form exist and there is something * */ var p_filter = ""; if ($('database_filter_input')) { console.log($('database_filter_input').value); p_filter = $('database_filter_input').value; } /* * Ajax request to display the folder */ new Ajax.Request('ajax_misc.php', { method: "get", parameters: {"p_user": p_user, "op": "folder_display", "p_filter": p_filter, 'gDossier': 0}, onSuccess: function (p_xml) { // table id = database_list var folder = {}; var create = false; if (!$('folder_list_div')) { folder = create_div({'id': 'folder_list_div', 'cssclass': "inner_box", 'style': 'width:90%,right:5%;top:100px'}); create = true; } folder = $('folder_list_div'); // Analyze XML answer var answer = p_xml.responseXML; var a = answer.getElementsByTagName('status'); var html = answer.getElementsByTagName('content'); if (a.length == 0) { var rec = req.responseText; alert_box('erreur :' + rec); } var content = getNodeText(html[0]); // fill up the div folder.innerHTML = unescape_xml(content); // show it folder.show(); $('database_filter_input').focus(); } }); } /** * Remove the grant for an user to the given database id * @param {integer} p_user use_id id of the user * @param {integer} p_dossier id of the database * @returns nothing */ function folder_remove(p_user,p_dossier ) { smoke.confirm ('Confirmer', function (e) { if (e ) { waiting_box(); new Ajax.Request('ajax_misc.php', { method: "get", parameters: {"p_user": p_user, 'p_dossier': p_dossier, "op": "folder_remove", 'gDossier': 0}, onSuccess: function (p_xml) { // table id = database_list new Effect.Opacity('row'+p_dossier, { from: 1.0, to: 0.0, duration: 0.2 }); remove_waiting_box(); } }); } else { return ; } }); } /** * Grant the access to a folder for a given user and add a row in the table * (id : database_list) * @param {integer} p_user use_id id of the user * @param {integer} p_dossier id of the database * @returns {undefined} */ function folder_add(p_user, p_dossier) { waiting_box(); new Ajax.Request('ajax_misc.php', { method: "get", parameters: {"p_user": p_user, 'p_dossier': p_dossier, "op": "folder_add", 'gDossier': 0}, onSuccess: function (p_xml) { // table id = database_list // Analyze XML answer var answer = p_xml.responseXML; var a = answer.getElementsByTagName('status'); var html = answer.getElementsByTagName('content'); if (a.length == 0) { var rec = req.responseText; alert_box('erreur :' + rec); } var content = getNodeText(html[0]); var nb = $('database_list').rows.length + 1; var row = new Element('tr', {'id': 'row' + p_dossier}); if (nb % 2 == 0) { row.addClassName('odd'); } else { row.addClassName('even'); } row.innerHTML = unescape_xml(content); $('database_list').appendChild(row); $('row_db_'+p_dossier).hide(); remove_waiting_box(); } }); } function display_admin_answer(p_dossier,p_action) { waiting_box(); new Ajax.Request ("ajax_misc.php",{ method:"get", parameters:{"p_dossier":p_dossier,"op":p_action,'gDossier':0}, onSuccess : function (p_xml) { try { var div_display="folder_admin_div"; var answer = p_xml.responseXML; var a = answer.getElementsByTagName('status'); var html = answer.getElementsByTagName('content'); if (a.length == 0) { var rec = req.responseText; alert_box('erreur :' + rec); } var folder; var create = false; if (!$(div_display)) { folder = create_div({'id': div_display, 'cssclass': "inner_box", style: 'width:90%;right:5%;top:100px'}); create = true; } folder=$(div_display); var content = getNodeText(html[0]); folder.innerHTML=unescape_xml(content); var pos=calcy(250); $(div_display).setStyle({top:pos+'px'}); folder.show(); remove_waiting_box(); } catch (e) { console.log(e.message); } } }); } function folder_drop(p_dossier) { display_admin_answer(p_dossier,'folder_drop'); } function folder_modify(p_dossier) { display_admin_answer(p_dossier,'folder_modify'); } function modele_modify(p_dossier) { display_admin_answer(p_dossier,'modele_modify'); } function modele_drop(p_dossier) { display_admin_answer(p_dossier,'modele_drop'); }