[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpcompta-dev] r5384 - in phpcompta/trunk: html html/js include include
From: |
phpcompta-dev |
Subject: |
[Phpcompta-dev] r5384 - in phpcompta/trunk: html html/js include include/template sql |
Date: |
Sun, 15 Sep 2013 20:09:34 +0200 (CEST) |
Author: danydb
Date: 2013-09-15 20:09:33 +0200 (Sun, 15 Sep 2013)
New Revision: 5384
Added:
phpcompta/trunk/include/ajax_preference.php
Removed:
phpcompta/trunk/include/pref.inc.php
Modified:
phpcompta/trunk/html/ajax_misc.php
phpcompta/trunk/html/do.php
phpcompta/trunk/html/js/scripts.js
phpcompta/trunk/include/ac_common.php
phpcompta/trunk/include/class_user.php
phpcompta/trunk/include/template/module.php
phpcompta/trunk/sql/upgrade.sql
Log:
Preference are now in a internal windows
Modified: phpcompta/trunk/html/ajax_misc.php
===================================================================
--- phpcompta/trunk/html/ajax_misc.php 2013-09-15 17:30:15 UTC (rev 5383)
+++ phpcompta/trunk/html/ajax_misc.php 2013-09-15 18:09:33 UTC (rev 5384)
@@ -577,6 +577,9 @@
case 'navigator':
require_once 'ajax_navigator.php';
break;
+ case 'preference':
+ require_once 'ajax_preference.php';
+ break;
default:
var_dump($_GET);
}
Modified: phpcompta/trunk/html/do.php
===================================================================
--- phpcompta/trunk/html/do.php 2013-09-15 17:30:15 UTC (rev 5383)
+++ phpcompta/trunk/html/do.php 2013-09-15 18:09:33 UTC (rev 5384)
@@ -128,12 +128,37 @@
$module_selected = -1;
+/*
+ * Set the user preference
+ */
+if ( isset ($_POST['set_preference'])) {
+ //// Save value
+ extract($_POST);
+
+ if (strlen(trim($pass_1)) != 0 && strlen(trim($pass_2)) != 0)
+ {
+ $g_user->save_password($pass_1,$pass_2);
+
+ }
+ $g_user->set_periode($period);
+ $g_user->save_global_preference('THEME', $style_user);
+ $g_user->save_global_preference('LANG', $lang);
+ $g_user->save_global_preference('PAGESIZE', $p_size);
+ $g_user->set_mini_report($minirap);
+ $_SESSION['g_theme']=$style_user;
+ $_SESSION['g_pagesize']=$p_size;
+ $_SESSION['g_lang']=$lang;
+}
+
+/*
+ * if an action is requested
+ */
if (isset($_REQUEST['ac']))
{
- $_REQUEST['ac']= trim(strtoupper($_REQUEST['ac']));
+ $_REQUEST['ac']= trim(strtoupper($_REQUEST['ac']));
$all = explode('/', $_REQUEST['ac']);
$module_selected = $all[0];
- $g_user->audit();
+ $g_user->audit();
// Show module and highligt selected one
show_module($module_selected);
for ($i = 0; $i != count($all); $i++)
Modified: phpcompta/trunk/html/js/scripts.js
===================================================================
--- phpcompta/trunk/html/js/scripts.js 2013-09-15 17:30:15 UTC (rev 5383)
+++ phpcompta/trunk/html/js/scripts.js 2013-09-15 18:09:33 UTC (rev 5384)
@@ -299,9 +299,8 @@
address@hidden p_dossier the dossier where to search
address@hidden p_style style of the detail value are E for expert or S for
simple
*/
-function popup_recherche()
+function popup_recherche(p_dossier)
{
- p_dossier=$('gDossier').value;
var
w=window.open("recherche.php?gDossier="+p_dossier+"&ac=SEARCH",'','statusbar=no,scrollbars=yes,toolbar=no');
w.focus();
}
@@ -1800,11 +1799,10 @@
* Show the navigator in a internal window
* @returns {undefined}
*/
-function ask_navigator() {
+function ask_navigator(p_dossier) {
try {
waiting_box();
removeDiv('navi_div')
- var p_dossier=$('gDossier').value;
var queryString="gDossier="+p_dossier+"&op=navigator";
var action = new Ajax.Request(
"ajax_misc.php" ,
@@ -1832,4 +1830,39 @@
info_message(e.getMessage);
}
+}
+/**
+ * @brief Display an internal windows to set the user's preference
+ *
+ */
+function set_preference(p_dossier) {
+ try {
+ waiting_box();
+ removeDiv('preference_div')
+ var queryString="gDossier="+p_dossier+"&op=preference";
+ var action = new Ajax.Request(
+ "ajax_misc.php" ,
+ {
+ method:'get', parameters:queryString,
+ onFailure:ajax_misc_failure,
+ onSuccess:function(req){
+ remove_waiting_box();
+
add_div({id:'preference_div',style:'top:2em;left:20%;width:50%',cssclass:'inner_box'});
+
$('preference_div').innerHTML=req.responseText;
+ try
+ {
+
req.responseText.evalScripts();
+ }
+ catch(e)
+ {
+ alert("answer_box
Impossible executer script de la reponse\n"+e.message);
+ }
+
+ }
+ }
+ );
+ } catch (e) {
+ info_message(e.getMessage);
+ }
+
}
\ No newline at end of file
Modified: phpcompta/trunk/include/ac_common.php
===================================================================
--- phpcompta/trunk/include/ac_common.php 2013-09-15 17:30:15 UTC (rev
5383)
+++ phpcompta/trunk/include/ac_common.php 2013-09-15 18:09:33 UTC (rev
5384)
@@ -984,7 +984,8 @@
}
if ( $file[0]['me_javascript'] != '')
{
- echo create_script($file[0]['me_javascript']);
+ $js= str_replace('<DOSSIER>', dossier::id(),
$file[0]['me_javascript']);
+ echo create_script($js);
}
}
}
Copied: phpcompta/trunk/include/ajax_preference.php (from rev 5382,
phpcompta/trunk/include/pref.inc.php)
===================================================================
--- phpcompta/trunk/include/ajax_preference.php (rev 0)
+++ phpcompta/trunk/include/ajax_preference.php 2013-09-15 18:09:33 UTC (rev
5384)
@@ -0,0 +1,187 @@
+<?php
+/*
+ * This file is part of PhpCompta.
+ *
+ * PhpCompta 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.
+ *
+ * PhpCompta 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 PhpCompta; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+/* $Revision$ */
+// Copyright Author Dany De Bontridder address@hidden
+/**\file
+ * \brief this file is always included and then executed
+ * it permits to change the user preferences
+ * \see user_pref.php
+ */
+if ( ! defined ('ALLOWED') ) die('Appel direct ne sont pas permis');
+require_once('class_user.php');
+require_once("class_iselect.php");
+require_once("class_iperiod.php");
+require_once('class_acc_report.php');
+require_once('class_periode.php');
+echo HtmlInput::title_box(_('Préférence'), 'preference_div');
+echo '<DIV class="content">';
+//----------------------------------------------------------------------
+//
+global $g_user;
+
+$g_user=new User($cn);
+$inside_dossier = false;
+
+if (isset($_REQUEST['gDossier']))
+{
+ $g_user->load_global_pref();
+ $msg = "";
+ $cn = new Database($_REQUEST['gDossier']);
+ $g_user->cn = $cn;
+ $inside_dossier = true;
+ $local_pref=$g_user->get_preference();
+}
+//////////////////////////////////////////////////////////////////////////
+// Theme
+//////////////////////////////////////////////////////////////////////////
+
+ $repo = new Database();
+// charge tous les styles
+ $res = $repo->exec_sql("select the_name from theme
+ order by the_name");
+ $style = new ISelect('style_user');
+ $style->value = $repo->make_array("select the_name,the_name
+ from theme
+ order by the_name");
+ $style->selected =$_SESSION['g_theme'];
+ echo '<h2 class="info2">' . _('Changez vos préférences') . '</h2>';
+?>
+
+<div class="content" >
+
+ <FORM METHOD="POST">
+ <fieldset style="margin: 1%"><legend><?php echo _('Options
Générales')?></legend>
+ <table>
+ <tr><td>
+ Mot de passe :
+ </td>
+ <td><input type="password" value="" class="input_text"
name="pass_1" nohistory>
+ <input type="password" value="" class="input_text"
name="pass_2" nohistory>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <?php echo _('Thème');?>
+ </td>
+ <td>
+ <?php echo $style->input();?>
+ </td>
+ </tr>
+
+ <?php
+ if ($inside_dossier)
+ {
+ $l_user_per = $g_user->get_periode();
+ if ($l_user_per == "")
+ $l_user_per = $cn->get_value("select min(p_id) from
parm_periode where p_closed='f'");
+
+// if periode is closed then warns the users
+ $period = new Periode($cn, $l_user_per);
+
+ $period->p_id = $l_user_per;
+ $period->jrn_def_id = 0;
+ if ($period->is_closed($l_user_per) == 1)
+ {
+ $msg = _('Attention cette période est fermée, vous ne
pourrez rien modifier dans le module comptable');
+ $msg = '<h2 class="notice">' . $msg . '</h2>';
+ }
+
+ $period = new IPeriod("period");
+ $period->user = $g_user;
+ $period->cn = $cn;
+ $period->filter_year = false;
+ $period->value = $l_user_per;
+ $period->type = ALL;
+ $l_form_per = $period->input();
+ ?>
+ <tr><td><?php echo _('Période');?></td>
+ <td>
+ <?php printf(' %s ', $l_form_per);?>
+ </td>
+ <td> <?php echo $msg;?></td>
+ <tr>
+ <td><?php echo _('Taille des pages');?></td>
+ <td>
+ <SELECT NAME="p_size">
+ <option value="15">15
+ <option value="25">25
+ <option value="50">50
+ <option value="100">100
+ <option value="150">150
+ <option value="200">200
+ <option value="-1"><?php echo _('Illimité');?>
+ <?php
+ $label = ($_SESSION['g_pagesize'] == -1) ?
_('Illimité') : $_SESSION['g_pagesize'];
+ echo '<option value="' .
$_SESSION['g_pagesize'] . '" selected>' . $label;
+ ?>
+ </SELECT>
+
+ </td>
+ </tr>
+ <?php
+ }
+ ?>
+ </table>
+ </fieldset>
+ <?php
+ if ($inside_dossier)
+ {
+ /* Pref for welcome page */
+ echo '<fieldset style="margin: 1%">';
+ echo '<legend>' . _('Options pour la page d\'accueil') .
'</legend>';
+ echo _('Mini-Rapport : ');
+ $rapport = new Acc_Report($cn);
+ $aRapport = $rapport->make_array();
+ $aRapport[] = array("value" => 0, "label" => _('Aucun mini
rapport'));
+ $wRapport = new ISelect();
+ $wRapport->name = "minirap";
+ $wRapport->selected = $g_user->get_mini_report();
+ $wRapport->value = $aRapport;
+ echo $wRapport->input();
+ echo '<span class="notice">' . _('Le mini rapport est un rapport
qui s\'affiche sur votre page d\'accueil') . '</span>';
+ echo '</fieldset>';
+ }
+
+ echo '<fieldset style="margin: 1%">';
+ echo '<legend>' . _('Langue') . '</legend>';
+ echo _('Selectionnez votre langue');
+ $aLang = array(array(_('Français'), 'fr_FR.utf8'),
+ array(_('Anglais'), 'en_US.utf8'),
+ array(_('Néerlandais'), 'nl_NL.utf8'),
+ );
+ echo '<select name="lang" id="l">';
+ for ($i = 0; $i < count($aLang); $i++)
+ {
+ $sel = "";
+ if ($aLang[$i][1] == $_SESSION['g_lang'])
+ $sel = " selected ";
+ printf('<option value="%s" %s>%s</option>', $aLang[$i][1], $sel,
$aLang[$i][0]);
+ }
+ echo '</select>';
+ echo '</fieldset>';
+
+ echo '<p style="text-align:center">';
+ echo HtmlInput::button_close('preference_div');
+ echo HtmlInput::submit("set_preference", _("Valider"));
+ echo '</p>';
+ echo '</form>';
+
+ echo "</DIV>";
+ ?>
Modified: phpcompta/trunk/include/class_user.php
===================================================================
--- phpcompta/trunk/include/class_user.php 2013-09-15 17:30:15 UTC (rev
5383)
+++ phpcompta/trunk/include/class_user.php 2013-09-15 18:09:33 UTC (rev
5384)
@@ -1132,6 +1132,17 @@
return false;
return true;
}
+ function save_password($p_pass1, $p_pass2) {
+ if ($p_pass1 == $p_pass2) {
+ $repo = new Database();
+ $l_pass = md5($_POST['pass_1']);
+ $repo->exec_sql("update ac_users set use_pass=$1 where
use_login=$2", array($l_pass, $_SESSION['g_user']));
+ $_SESSION['g_pass'] = $_POST['pass_1'];
+ echo "<i>" . _('Mot de passe est modifiée') . "</i>";
+ } else {
+ alert(_("Les mots de passe ne correspondent pas. Mot de passe
inchangé"));
+ }
+ }
}
Deleted: phpcompta/trunk/include/pref.inc.php
===================================================================
--- phpcompta/trunk/include/pref.inc.php 2013-09-15 17:30:15 UTC (rev
5383)
+++ phpcompta/trunk/include/pref.inc.php 2013-09-15 18:09:33 UTC (rev
5384)
@@ -1,231 +0,0 @@
-<?php
-/*
- * This file is part of PhpCompta.
- *
- * PhpCompta 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.
- *
- * PhpCompta 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 PhpCompta; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-/* $Revision$ */
-// Copyright Author Dany De Bontridder address@hidden
-/**\file
- * \brief this file is always included and then executed
- * it permits to change the user preferences
- * \see user_pref.php
- */
-if ( ! defined ('ALLOWED') ) die('Appel direct ne sont pas permis');
-require_once('class_user.php');
-require_once("class_iselect.php");
-require_once("class_iperiod.php");
-require_once('class_acc_report.php');
-require_once('class_periode.php');
-echo '<DIV class="content">';
-//----------------------------------------------------------------------
-//
-global $g_user;
-
-$g_user=new User($cn);
-$inside_dossier = false;
-
-if (isset($_REQUEST['gDossier']))
-{
- $g_user->load_global_pref();
- $msg = "";
- $cn = new Database($_REQUEST['gDossier']);
- $g_user->cn = $cn;
- $inside_dossier = true;
- $local_pref=$g_user->get_preference();
-}
-//// Save value
-if (isset($_POST['val']))
-{
- extract($_POST);
-
- if (strlen(trim($pass_1)) != 0 && strlen(trim($pass_2)) != 0)
- {
- if ($pass_1 == $pass_2)
- {
- $repo = new Database();
- $l_pass = md5($_POST['pass_1']);
- $repo->exec_sql("update ac_users set use_pass=$1 where
use_login=$2", array($l_pass, $_SESSION['g_user']));
- $_SESSION['g_pass'] = $_POST['pass_1'];
- echo "<i>" . _('Mot de passe est modifiée') . "</i>";
- }
- else
- {
- alert(_("Les mots de passe ne correspondent pas. Mot de passe
inchangé"));
- }
- }
- if ($inside_dossier)
- {
- $g_user->set_periode($period);
- $g_user->save_global_preference('THEME', $style_user);
- $g_user->save_global_preference('LANG', $lang);
- $g_user->save_global_preference('PAGESIZE', $p_size);
- $g_user->set_mini_report($minirap);
- $_SESSION['g_theme']=$style_user;
- $_SESSION['g_pagesize']=$p_size;
- $_SESSION['g_lang']=$lang;
- }
-}
-
-//////////////////////////////////////////////////////////////////////////
-// Theme
-//////////////////////////////////////////////////////////////////////////
-
- $repo = new Database();
-// charge tous les styles
- $res = $repo->exec_sql("select the_name from theme
- order by the_name");
- $style = new ISelect('style_user');
- $style->value = $repo->make_array("select the_name,the_name
- from theme
- order by the_name");
- $style->selected =$_SESSION['g_theme'];
- echo '<h2 class="info2">' . _('Changez vos préférences') . '</h2>';
-?>
-
-<div class="content">
-
- <FORM METHOD="POST">
- <fieldset><legend><?php echo _('Options Générales')?></legend>
- <table>
- <tr><td>
- Mot de passe :
- </td>
- <td><input type="password" value="" class="input_type"
name="pass_1" nohistory>
- <input type="password" value="" class="input_type"
name="pass_2" nohistory>
- </td>
- </tr>
-
- <tr>
- <td>
- <?php echo _('Thème');?>
- </td>
- <td>
- <?php echo $style->input();?>
- </td>
- </tr>
-
- <?php
- if ($inside_dossier)
- {
- $l_user_per = $g_user->get_periode();
- if ($l_user_per == "")
- $l_user_per = $cn->get_value("select min(p_id) from
parm_periode where p_closed='f'");
-
-// if periode is closed then warns the users
- $period = new Periode($cn, $l_user_per);
-
- $period->p_id = $l_user_per;
- $period->jrn_def_id = 0;
- if ($period->is_closed($l_user_per) == 1)
- {
- $msg = _('Attention cette période est fermée, vous ne
pourrez rien modifier dans le module comptable');
- $msg = '<h2 class="notice">' . $msg . '</h2>';
- }
-
- $period = new IPeriod("period");
- $period->user = $g_user;
- $period->cn = $cn;
- $period->filter_year = false;
- $period->value = $l_user_per;
- $period->type = ALL;
- $l_form_per = $period->input();
- ?>
- <tr><td><?php echo _('Période');?></td>
- <td>
- <?php printf(' %s ', $l_form_per);?>
- </td>
- <td> <?php echo $msg;?></td>
- <tr>
- <td><?php echo _('Taille des pages');?></td>
- <td>
- <SELECT NAME="p_size">
- <option value="15">15
- <option value="25">25
- <option value="50">50
- <option value="100">100
- <option value="150">150
- <option value="200">200
- <option value="-1"><?php echo _('Illimité');?>
- <?php
- $label = ($_SESSION['g_pagesize'] == -1) ?
_('Illimité') : $_SESSION['g_pagesize'];
- echo '<option value="' .
$_SESSION['g_pagesize'] . '" selected>' . $label;
- ?>
- </SELECT>
-
- </td>
- </tr>
- <?php
- }
- ?>
- </table>
- </fieldset>
- <?php
- if ($inside_dossier)
- {
- /* Pref for welcome page */
- echo '<fieldset>';
- echo '<legend>' . _('Options pour la page d\'accueil') .
'</legend>';
- echo _('Mini-Rapport : ');
- $rapport = new Acc_Report($cn);
- $aRapport = $rapport->make_array();
- $aRapport[] = array("value" => 0, "label" => _('Aucun mini
rapport'));
- $wRapport = new ISelect();
- $wRapport->name = "minirap";
- $wRapport->selected = $g_user->get_mini_report();
- $wRapport->value = $aRapport;
- echo $wRapport->input();
- echo '<span class="notice">' . _('Le mini rapport est un rapport
qui s\'affiche sur votre page d\'accueil') . '</span>';
- echo '</fieldset>';
- }
-
- echo '<fieldset>';
- echo '<legend>' . _('Langue') . '</legend>';
- echo _('Selectionnez votre langue');
- $aLang = array(array(_('Français'), 'fr_FR.utf8'),
- array(_('Anglais'), 'en_US.utf8'),
- array(_('Néerlandais'), 'nl_NL.utf8'),
- );
- echo '<select name="lang" id="l">';
- for ($i = 0; $i < count($aLang); $i++)
- {
- $sel = "";
- if ($aLang[$i][1] == $_SESSION['g_lang'])
- $sel = " selected ";
- printf('<option value="%s" %s>%s</option>', $aLang[$i][1], $sel,
$aLang[$i][0]);
- }
- echo '</select>';
- echo '</fieldset>';
-
-
- echo HtmlInput::submit("val", _("Valider"));
- echo '</form>';
-
-
-
-
- if (!$inside_dossier)
- {
- echo HtmlInput::button_anchor(_('Retour'), 'user_login.php?');
- }
- else
- {
- echo HtmlInput::button_anchor(_('Retour'),
'do.php?'.Dossier::get());
-
- }
-
-
- echo "</DIV>";
- ?>
Modified: phpcompta/trunk/include/template/module.php
===================================================================
--- phpcompta/trunk/include/template/module.php 2013-09-15 17:30:15 UTC (rev
5383)
+++ phpcompta/trunk/include/template/module.php 2013-09-15 18:09:33 UTC (rev
5384)
@@ -73,7 +73,8 @@
elseif ($row['me_javascript'] != '')
{
$url="javascript:void(0)";
- $js=sprintf('
onclick="%s"',$row['me_javascript']);
+ $js_dossier=str_replace('<DOSSIER>',
Dossier::id(), $row['me_javascript']);
+ $js=sprintf(' onclick="%s"',$js_dossier);
}
else
{
Modified: phpcompta/trunk/sql/upgrade.sql
===================================================================
--- phpcompta/trunk/sql/upgrade.sql 2013-09-15 17:30:15 UTC (rev 5383)
+++ phpcompta/trunk/sql/upgrade.sql 2013-09-15 18:09:33 UTC (rev 5384)
@@ -87,7 +87,7 @@
insert into menu_ref(me_code,me_menu,me_file,
me_url,me_description,me_parameter,me_javascript,me_type,me_description_etendue)
values
-('NAVI','Navigateur','navigator.inc.php',null,'Menu simplifié pour retrouver
rapidement un menu',null,null,'ME','Le navigateur vous présente une liste de
menu auquel vous avez accès et vous permet d''accèder plus rapidement au menu
que vous souhaitez rapidement');
+('NAVI','Navigateur',null,null,'Menu simplifié pour retrouver rapidement un
menu',null,'ask_navigator(<DOSSIER>)','ME','Le navigateur vous présente une
liste de menu auquel vous avez accès et vous permet d''accèder plus rapidement
au menu que vous souhaitez rapidement');
insert into profile_menu (me_code,me_code_dep,p_id,p_order,
p_type_display,pm_default)
values
@@ -96,6 +96,7 @@
update menu_ref set me_menu='Impression Journaux' where me_code='PRINTJRN';
update menu_ref set me_description='Impression des journaux' where
me_code='PRINTJRN';
update menu_ref set me_description='Liste du Suivi' where me_code='FOLLOW';
+update menu_ref set me_javascript='popup_recherche(<DOSSIER>)' where
me_code='SEARCH';
/*
* Vue montrant toutes les possibilités
---
PhpCompta est un logiciel de comptabilité libre en ligne (full web)
Projet opensource http://www.phpcompta.eu
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpcompta-dev] r5384 - in phpcompta/trunk: html html/js include include/template sql,
phpcompta-dev <=