[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Noalyss-commit] [noalyss] 59/107: #0001729: Preference : ne plus rechar
From: |
Dany De Bontridder |
Subject: |
[Noalyss-commit] [noalyss] 59/107: #0001729: Preference : ne plus recharger la page |
Date: |
Mon, 26 Aug 2019 10:31:58 -0400 (EDT) |
sparkyx pushed a commit to branch master
in repository noalyss.
commit 71c26d81be0b50e8e93c14e7d18f3e2b4df72c83
Author: Dany De Bontridder <address@hidden>
Date: Tue Jul 30 22:27:55 2019 +0200
#0001729: Preference : ne plus recharger la page
---
html/ajax_misc.php | 12 ++++--
html/do.php | 36 ----------------
html/js/scripts.js | 28 +++++++++++-
html/user_login.php | 23 ----------
include/ajax/ajax_preference.php | 93 +++++++++++++++++++++++++++++++++-------
include/lib/ac_common.php | 2 +-
6 files changed, 115 insertions(+), 79 deletions(-)
diff --git a/html/ajax_misc.php b/html/ajax_misc.php
index 39371f2..928713e 100644
--- a/html/ajax_misc.php
+++ b/html/ajax_misc.php
@@ -51,7 +51,7 @@ $http=new HttpInput();
mb_internal_encoding("UTF-8");
-$var = array('gDossier', 'op');
+$var = array( 'op');
$cont = 0;
/* check if mandatory parameters are given */
foreach ($var as $v)
@@ -62,8 +62,14 @@ foreach ($var as $v)
$cont = 1;
}
}
-if ($cont != 0)
- exit();
+
+// If not connected to a folder
+if ( ! isset($_REQUEST['gDossier'])) {
+ $gDossier=0;
+}
+
+if ($cont != 0) exit();
+
extract($_REQUEST, EXTR_SKIP );
if ( isset($div)) ajax_disconnected($div);
global $g_user, $cn, $g_parameter;
diff --git a/html/do.php b/html/do.php
index 715dcf8..fa90b49 100644
--- a/html/do.php
+++ b/html/do.php
@@ -68,42 +68,6 @@ if ( ! $cn->exist_table('version')) {
return;
}
-/*
- * Set the user preference
- */
-if ( isset ($_POST['set_preference'])) {
- //// Save value
- $style_user=$http->post("style_user","string","Classique");
- $lang=$http->post("lang","string","fr_FR.utf8");
- $p_size=$http->post("p_size","number",50);
- $pass_1=$http->post("pass_1","string","");
- $pass_2=$http->post("pass_2","string","");
- $p_email=$http->post("p_email","string","");
- $minirap=$http->post("minirap","number",0);
- $period=$http->post("period","number");
- $csv_fieldsep=$http->post("csv_fieldsep","number");
- $csv_decimal=$http->post("csv_decimal","number");
- $csv_encoding=$http->post("csv_encoding");
-
- 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->save_global_preference('csv_fieldsep', $csv_fieldsep);
- $g_user->save_global_preference('csv_decimal', $csv_decimal);
- $g_user->save_global_preference('csv_encoding', $csv_encoding);
-
- $g_user->set_mini_report($minirap);
- $_SESSION['g_theme']=$style_user;
- $_SESSION['g_pagesize']=$p_size;
- $_SESSION['g_lang']=$lang;
- $g_user->save_email($p_email);
-}
$style_user=$http->post("style_user","string",$_SESSION['g_theme']);
html_page_start($style_user);
diff --git a/html/js/scripts.js b/html/js/scripts.js
index ec64b84..140305d 100644
--- a/html/js/scripts.js
+++ b/html/js/scripts.js
@@ -3542,4 +3542,30 @@ function toggle_lock(p_domid)
}
-}
\ No newline at end of file
+}
+
+/***
+ * Update Preference, applied the new CSS
+ */
+function updatePreference()
+{
+ try {
+ waiting_box();
+ var param=$('preference_frm').serialize()+"&op=preference&action=save";
+
+ new Ajax.Request("ajax_misc.php",{
+ method:"post",
+ parameters:param,
+ onSuccess:function (req) {
+ var style=req.responseText.evalJSON();
+ $('pagestyle').setAttribute('href',style.style);
+ removeDiv('preference_div');
+ }
+ });
+ } catch (e)
+ {
+ smoke.alert(content[48] + e.message);
+ }
+ remove_waiting_box();
+
+}
diff --git a/html/user_login.php b/html/user_login.php
index d1f0376..cd40014 100644
--- a/html/user_login.php
+++ b/html/user_login.php
@@ -114,29 +114,6 @@ include_once NOALYSS_INCLUDE."/lib/user_menu.php";
$priv=($User->admin==1)?_("Administrateur"):_("Utilisateur");
load_all_script();
-if ( isset ($_POST['set_preference'])) {
- //// Save value
- $pass_1=$hi->post("pass_1","string", "");
- $pass_2=$hi->post("pass_2","string", "");
- $style_user=$hi->post("style_user","string", "");
- $lang=$hi->post("lang", "string","");
- $p_email=$hi->post("email","string", "");
- if (strlen(trim($pass_1)) != 0 && strlen(trim($pass_2)) != 0)
- {
- $User->save_password($pass_1,$pass_2);
-
- }
- if (trim($style_user) != "") {
- $User->save_global_preference('THEME',$style_user);
- $_SESSION['g_theme']=$style_user;
- }
- if (trim($lang) != "") {
- $User->save_global_preference('LANG', $lang);
- $_SESSION['g_lang']=$lang;
- }
- $User->load();
- $User->save_email($p_email);
-}
echo '<div class="welcome"> ';
/**
*
diff --git a/include/ajax/ajax_preference.php b/include/ajax/ajax_preference.php
index 07f62bf..02f0028 100644
--- a/include/ajax/ajax_preference.php
+++ b/include/ajax/ajax_preference.php
@@ -28,26 +28,24 @@ require_once NOALYSS_INCLUDE.'/lib/iperiod.class.php';
require_once NOALYSS_INCLUDE.'/class/acc_report.class.php';
require_once NOALYSS_INCLUDE.'/class/periode.class.php';
require_once NOALYSS_INCLUDE.'/class/exercice.class.php';
-echo HtmlInput::title_box(_('Préférence'), 'preference_div');
-echo '<DIV class="content">';
-echo '<p class="notice">';
-echo _("Si vous validez, la page sera rechargée et vous pourriez perdre ce que
vous faisiez");
-echo '</p>';
-//----------------------------------------------------------------------
-//
+require_once NOALYSS_INCLUDE.'/lib/http_input.class.php';
+
+
global $g_user;
$g_user=new User($cn);
$inside_dossier = false;
+$http=new HttpInput();
+$action=$http->post("action","string","display_form");
-if (isset($_REQUEST['gDossier']) && $_REQUEST['gDossier']<>0)
+if (isset($_REQUEST['gDossier']) && $http->request("gDossier","number",0) != 0
)
{
- $g_user->load_global_pref();
- $msg = "";
- $cn =Dossier::connect();
- $g_user->cn = $cn;
- $inside_dossier = true;
- $local_pref=$g_user->get_preference();
+ $g_user->load_global_pref();
+ $msg = "";
+ $cn =Dossier::connect();
+ $g_user->cn = $cn;
+ $inside_dossier = true;
+ $local_pref=$g_user->get_preference();
}
//////////////////////////////////////////////////////////////////////////
// Theme
@@ -62,11 +60,24 @@ if (isset($_REQUEST['gDossier']) &&
$_REQUEST['gDossier']<>0)
from theme
order by the_name");
$style->selected =$_SESSION['g_theme'];
+
+//----------------------------------------------------------------------------------------------
+// Display the form
+//----------------------------------------------------------------------------------------------
+if ( $action == 'display_form' )
+{
+ echo HtmlInput::title_box(_('Préférence'), 'preference_div');
+ echo '<DIV class="content">';
+ echo '<p class="notice">';
+ echo _("Après validation, recharger si vous changez la langue");
+ echo '</p>';
+ //----------------------------------------------------------------------
+ //
?>
<div class="content" >
- <FORM METHOD="POST">
+ <FORM METHOD="POST" onsubmit="updatePreference();return false;"
id="preference_frm">
<fieldset style="margin: 1%"><legend><?php echo _('Options
Générales')?></legend>
<table>
<tr>
@@ -272,3 +283,55 @@ if (isset($_REQUEST['gDossier']) &&
$_REQUEST['gDossier']<>0)
echo "</DIV>";
?>
+<?php
+}
+//---------------------------------------------------------------------------------------------------------------------
+// Save the form
+//---------------------------------------------------------------------------------------------------------------------
+if ($action == 'save')
+{
+ //// Save value
+ $style_user=$http->post("style_user","string","Classique");
+ $lang=$http->post("lang","string","fr_FR.utf8");
+ $p_size=$http->post("p_size","number",50);
+ $pass_1=$http->post("pass_1","string","");
+ $pass_2=$http->post("pass_2","string","");
+ $p_email=$http->post("p_email","string","");
+ $csv_fieldsep=$http->post("csv_fieldsep","number");
+ $csv_decimal=$http->post("csv_decimal","number");
+ $csv_encoding=$http->post("csv_encoding");
+
+ if (strlen(trim($pass_1)) != 0 && strlen(trim($pass_2)) != 0)
+ {
+ $g_user->save_password($pass_1,$pass_2);
+
+ }
+ if ( $inside_dossier)
+ {
+ $minirap=$http->post("minirap","number","0");
+ $period=$http->post("period","number");
+ $g_user->set_periode($period);
+ $g_user->set_mini_report($minirap);
+ }
+ $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->save_global_preference('csv_fieldsep', $csv_fieldsep);
+ $g_user->save_global_preference('csv_decimal', $csv_decimal);
+ $g_user->save_global_preference('csv_encoding', $csv_encoding);
+ $g_user->save_email($p_email);
+
+ $_SESSION['g_theme']=$style_user;
+ $_SESSION['g_pagesize']=$p_size;
+ $_SESSION['g_lang']=$lang;
+
+ // find the right CSS theme
+ $style= $repo->get_value("select the_filestyle from theme
+ where the_name=$1" ,[$style_user]);
+ if ($style == "")
+ {
+ $style = "style-classic7.css";
+ }
+ json_response(["style"=>$style]);
+
+}
\ No newline at end of file
diff --git a/include/lib/ac_common.php b/include/lib/ac_common.php
index 86d40f4..0b46cf6 100644
--- a/include/lib/ac_common.php
+++ b/include/lib/ac_common.php
@@ -337,7 +337,7 @@ function html_page_start($p_theme="", $p_script="",
$p_script2="")
<TITLE>$title</TITLE>
<link rel=\"icon\" type=\"image/ico\" href=\"favicon.ico\" />
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">
- <LINK REL=\"stylesheet\" type=\"text/css\"
href=\"".$style."?version=".SVNINFO."\" media=\"screen\"/>
+ <LINK id=\"pagestyle\" REL=\"stylesheet\" type=\"text/css\"
href=\"".$style."?version=".SVNINFO."\" media=\"screen\"/>
<link rel=\"stylesheet\" type=\"text/css\"
href=\"./style-print.css?version=".SVNINFO."\" media=\"print\"/>" .
$p_script2 . "
";
- [Noalyss-commit] [noalyss] 75/107: Task #0001731: Moyen de paiement, (continued)
- [Noalyss-commit] [noalyss] 75/107: Task #0001731: Moyen de paiement, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 81/107: Task #0001733: Impression moyen paiement, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 56/107: New function PDF_Core:is_fill add documentation, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 38/107: load_all must always return an array, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 67/107: SQL : add constraint for payment_method, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 44/107: fixup! fixup! Code cleaning : split database into database (for noalyss) and databasecore , with the functions, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 36/107: Bug : card cannot use a attribute of the type "card", reason : the query was wrong and there were a confusion between this->name and this->id in "get_js_attr()", Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 47/107: Improve doxygen, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 51/107: Code Cleaning split sendmail between sendmail_core (not related to noalyss) and sendmail which is used by noalyss, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 54/107: Merge branch 'dev7109', Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 59/107: #0001729: Preference : ne plus recharger la page,
Dany De Bontridder <=
- [Noalyss-commit] [noalyss] 85/107: Cosmetic : Icon_Trash in Todo_List, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 80/107: translation, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 82/107: DatabaseCore fix silent when not debug, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 72/107: Improve message progress bar + translation, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 94/107: Bug : Database::fetch_all returns an array or FALSE, because of pg_fetch_all, the version PHP7 cannot use anymore a boolean with count()., Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 63/107: remove background color, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 66/107: Code cleaning : rename table mod_payment to payment_method, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 53/107: Select_Box new Object, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 55/107: Merge branch 'master' of gitlab.noalyss.eu:noalyss/noalyss, Dany De Bontridder, 2019/08/26
- [Noalyss-commit] [noalyss] 57/107: PDF_Core : code cleaning, Dany De Bontridder, 2019/08/26