[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Noalyss-commit] [noalyss] 04/11: CCARD : rewriting interface, code clea
From: |
dwm |
Subject: |
[Noalyss-commit] [noalyss] 04/11: CCARD : rewriting interface, code cleanup |
Date: |
Thu, 8 Aug 2024 14:52:16 -0400 (EDT) |
sparkyx pushed a commit to branch unstable
in repository noalyss.
commit 3f0444a3be2cc5403a1be10749dd25559fc66420
Author: sparkyx <danydb@noalyss.eu>
AuthorDate: Fri Aug 2 16:27:32 2024 +0200
CCARD : rewriting interface, code cleanup
---
html/css/style-classic7.css | 10 +-
html/js/noalyss_script.js | 3244 ++++++++++----------
include/ajax/ajax_fiche_def_detail.php | 16 +-
include/cfgfiche.inc.php | 39 +-
include/class/fiche_def.class.php | 152 +-
include/lib/icon_action.class.php | 15 +-
.../{fiche_def_list.php => fiche_def-display.php} | 9 +-
include/template/fiche_def-input_detail-2.php | 126 +
.../fiche_def-input_detail.php} | 32 +-
include/template/fiche_def-input_new.php | 43 +
include/template/fiche_def_input.php | 71 +-
11 files changed, 1945 insertions(+), 1812 deletions(-)
diff --git a/html/css/style-classic7.css b/html/css/style-classic7.css
index 8a8578e33..f414de9d6 100644
--- a/html/css/style-classic7.css
+++ b/html/css/style-classic7.css
@@ -390,7 +390,7 @@ span.even {
display:block;
}
/* highlight table row */
-tr.odd {
+div.odd,tr.odd {
background-color: #DCE7F5;
/*! opacity: 50%; */
}
@@ -405,7 +405,7 @@ tr.odd > td,tr.even > td {
tr.highlight {
font-weight: bold;
}
-tr.even {
+div.even,tr.even {
/*! background-color: #F7F8FC; */
}
td.odd{
@@ -630,6 +630,12 @@ h1.legend, legend {
font-style: italic;
font-size: 19.2px;
font-size: 1.2rem;
+ border: navy;
+ border-width: 1px;
+ border-style: solid;
+ padding: 1rem;
+ width: 20rem;
+ border-radius: 5px;
}
fieldset fieldset legend {
color:#888;
diff --git a/html/js/noalyss_script.js b/html/js/noalyss_script.js
index 9dfd5697c..b448b4b64 100644
--- a/html/js/noalyss_script.js
+++ b/html/js/noalyss_script.js
@@ -25,46 +25,45 @@
*/
var ask_reload = 0;
// tag_choose Element which contains all the selected tags
-var tag_choose = '';
+var tag_choose = '';
var aDraggableElement = new Array();
// document.viewport depends of prototype.js
var viewport = document.viewport.getDimensions(); // Gets the viewport as an
object literal
var width = viewport.width; // Usable window width
var height = viewport.height;
- /**
+
+/**
* return undefined if nothing is found , otherwise return the DOM elemnt
* @param {type} p_name_dom
* @param {type} name_child
* @returns {undefined}
*/
-function in_child(p_element,name_child) {
- var element=p_element
- if ( typeof p_element !== "object" ) {
- element=document.getElementById(p_element);
-
+function in_child(p_element, name_child) {
+ var element = p_element
+ if (typeof p_element !== "object") {
+ element = document.getElementById(p_element);
+
}
- if ( ! element ) return undefined;
- for ( var e=0; e < element.childElementCount;e++) {
- if ( element.childNodes[e].id == name_child) {
+ if (!element) return undefined;
+ for (var e = 0; e < element.childElementCount; e++) {
+ if (element.childNodes[e].id == name_child) {
return element.childNodes[e];
}
}
}
+
/**
* callback function when we just need to update a hidden div with an info
* message
*/
-function infodiv(req, json)
-{
- try
- {
+function infodiv(req, json) {
+ try {
remove_waiting_box();
var answer = req.responseXML;
var a = answer.getElementsByTagName('ctl');
var html = answer.getElementsByTagName('code');
- if (a.length === 0)
- {
+ if (a.length === 0) {
var rec = req.responseText;
alert_box('erreur :' + rec);
}
@@ -73,27 +72,23 @@ function infodiv(req, json)
code_html = unescape_xml(code_html);
g(name_ctl + "info").innerHTML = code_html;
- } catch (e)
- {
+ } catch (e) {
alert_box("success_box" + e.message);
}
- try
- {
+ try {
code_html.evalScripts();
- } catch (e)
- {
+ } catch (e) {
alert_box(content[53] + "\n" + e.message);
}
}
+
/**
* delete a row from a table (tb) the input button send the this
* as second parameter
*/
-function deleteRow(tb, obj)
-{
- smoke.confirm(content[50], function (e)
- {
+function deleteRow(tb, obj) {
+ smoke.confirm(content[50], function (e) {
if (e) {
var td = obj.parentNode;
var tr = td.parentNode;
@@ -105,18 +100,18 @@ function deleteRow(tb, obj)
}
});
}
-function deleteRowRec(tb, obj)
-{
+
+function deleteRowRec(tb, obj) {
var tr = obj;
var lidx = tr.rowIndex;
g(tb).deleteRow(lidx);
}
+
/*!\brief remove trailing and heading space
* \param the string to modify
* \return string without heading and trailing space
*/
-function trim(s)
-{
+function trim(s) {
return s.replace(/^\s+/, '').replace(/\s+$/, '');
}
@@ -125,33 +120,27 @@ function trim(s)
* @param ID is a string
* @return the found object of undefined if not found
*/
-function g(ID)
-{
- if (document.getElementById)
- {
+function g(ID) {
+ if (document.getElementById) {
return this.document.getElementById(ID);
- } else if (document.all)
- {
+ } else if (document.all) {
return document.all[ID];
- } else
- {
+ } else {
return undefined;
}
}
+
/**
* enable the type of periode
*/
-function enable_type_periode()
-{
- if ($("type_periode").options[$("type_periode").selectedIndex].value == 0)
- {
+function enable_type_periode() {
+ if ($("type_periode").options[$("type_periode").selectedIndex].value == 0)
{
$('from_periode').enable();
$('to_periode').enable();
$('from_date').disable();
$('to_date').disable();
$('p_step').enable();
- } else
- {
+ } else {
$('from_periode').disable();
$('to_periode').disable();
$('from_date').enable();
@@ -164,8 +153,7 @@ function enable_type_periode()
* will reload the window but it is dangerous if we have submitted
* a form with POST
*/
-function refresh_window()
-{
+function refresh_window() {
window.location.reload();
}
@@ -174,41 +162,34 @@ function refresh_window()
* we receive a json object as parameter and the function returns the string
* with the format variable=value&var2=val2...
*/
-function encodeJSON(obj)
-{
- if (typeof obj != 'object')
- {
+function encodeJSON(obj) {
+ if (typeof obj != 'object') {
alert_box('encodeParameter obj n\'est pas un objet');
}
- try
- {
+ try {
var str = '';
var e = 0;
- for (var i in obj)
- {
- if (e !== 0)
- {
+ for (var i in obj) {
+ if (e !== 0) {
str += '&';
- } else
- {
+ } else {
e = 1;
}
str += i;
str += '=' + encodeURI(obj[i]);
}
return str;
- } catch (e)
- {
+ } catch (e) {
alert_box('encodeParameter ' + e.message);
return "";
}
}
-function hide(p_param)
-{
+
+function hide(p_param) {
g(p_param).style.display = 'none';
}
-function show(p_param)
-{
+
+function show(p_param) {
g(p_param).style.display = 'block';
}
@@ -217,23 +198,21 @@ function show(p_param)
*@param Field id of the control
*@param selectIt : the value selected in case of Field is a object select,
numeric
*/
-function SetFocus(Field, SelectIt)
-{
+function SetFocus(Field, SelectIt) {
var elem = g(Field);
- if (elem)
- {
+ if (elem) {
elem.focus();
}
return true;
}
+
/**
* set a DOM id with a value in the parent window (the caller),
@param p_ctl is the name of the control
@param p_value is the value to set in
@param p_add if we don't replace the current value but we add something
*/
-function set_inparent(p_ctl, p_value, p_add)
-{
+function set_inparent(p_ctl, p_value, p_add) {
self.opener.set_value(p_ctl, p_value, p_add);
}
@@ -244,77 +223,64 @@ function set_inparent(p_ctl, p_value, p_add)
@param p_value is the value to set in
@param p_add if we don't replace the current value but we add something
*/
-function set_value(p_ctl, p_value, p_add)
-{
- if (g(p_ctl))
- {
+function set_value(p_ctl, p_value, p_add) {
+ if (g(p_ctl)) {
var g_ctrl = g(p_ctl);
- if (p_add != undefined && p_add === 1)
- {
- if (g_ctrl.value)
- {
+ if (p_add != undefined && p_add === 1) {
+ if (g_ctrl.value) {
p_value = g_ctrl.value + ',' + p_value;
}
}
- if (g_ctrl.tagName === 'INPUT')
- {
+ if (g_ctrl.tagName === 'INPUT') {
g(p_ctl).value = p_value;
}
- if (g_ctrl.tagName === 'SPAN')
- {
+ if (g_ctrl.tagName === 'SPAN') {
g(p_ctl).innerHTML = p_value;
}
- if (g_ctrl.tagName === 'SELECT')
- {
+ if (g_ctrl.tagName === 'SELECT') {
g(p_ctl).value = p_value;
}
}
}
+
/**
* compute small math in numeric cells
* @param string value
- * @returns float
+ * @returns float
*/
-function compute_number(value)
-{
+function compute_number(value) {
var retval = 0;
-
+
var exp = new RegExp("^[0-9/*+-.()]+$", "g");
/*pour éviter un eval() mal intentionné*/
var res = exp.test(value);
- if (res)
- {
+ if (res) {
/*pour gérer un nombre non valide comme 5..36 ou 5.3.6
parce qu'il est possible d'entrer plusieurs
points dans le nombre et eval() lève une exception*/
- try
- {
+ try {
retval = eval(value);
- } catch (e)
- {
- return parseFloat(value);
+ } catch (e) {
+ return parseFloat(value);
}
/*pour gérer les divisions par 0*/
- if (retval == Infinity)
- {
+ if (retval == Infinity) {
return 0;
- } else
- {
+ } else {
return retval;
}
} else {
return 0;
}
}
+
/**
* format the number change comma to point
*@param HTML obj
*/
-function format_number(obj, p_prec)
-{
+function format_number(obj, p_prec) {
var precision = 2;
- if (p_prec === undefined)
- {
+ if (p_prec === undefined) {
precision = 2;
} else {
precision = p_prec;
@@ -323,12 +289,11 @@ function format_number(obj, p_prec)
value = value.replace(/ /g, '');
value = value.replace(/,/g, '.');
-
- value=compute_number(value);
-
+
+ value = compute_number(value);
+
value = parseFloat(value);
- if (isNaN(value))
- {
+ if (isNaN(value)) {
value = 0;
}
var arrondi = Math.pow(10, precision);
@@ -342,29 +307,29 @@ function format_number(obj, p_prec)
* Replace slash , space and minus by dot
* @param p_object DOM Element date to check
*/
-function format_date(p_object)
-{
- p_object.value=p_object.value.replace(/\//g,'.');
- p_object.value=p_object.value.replace(/-/g,'.');
- p_object.value=p_object.value.replace(/ /g,'.');
- p_object.value=p_object.value.replace(/\.\./g,'.');
+function format_date(p_object) {
+ p_object.value = p_object.value.replace(/\//g, '.');
+ p_object.value = p_object.value.replace(/-/g, '.');
+ p_object.value = p_object.value.replace(/ /g, '.');
+ p_object.value = p_object.value.replace(/\.\./g, '.');
var tmp_value = p_object.value;
- a_split=tmp_value.split('.');
- if (a_split[2] && a_split[2].match(/[0-9]{2}/) && a_split[2].length==2) {
- a_split[2]="20"+a_split[2];
- p_object.value=a_split[0]+"."+a_split[1]+"."+a_split[2];
+ a_split = tmp_value.split('.');
+ if (a_split[2] && a_split[2].match(/[0-9]{2}/) && a_split[2].length == 2) {
+ a_split[2] = "20" + a_split[2];
+ p_object.value = a_split[0] + "." + a_split[1] + "." + a_split[2];
}
- var nMonth=parseFloat(a_split[1])-1;
+ var nMonth = parseFloat(a_split[1]) - 1;
var ma_date = new Date(a_split[2], nMonth, a_split[0]);
- if(ma_date.getFullYear()==a_split[2] && ma_date.getMonth()==nMonth &&
ma_date.getDate() == a_split[0]){
+ if (ma_date.getFullYear() == a_split[2] && ma_date.getMonth() == nMonth &&
ma_date.getDate() == a_split[0]) {
return;
} else {
- new Effect.Highlight(p_object.id,{startcolor:"#ff0000"});
- p_object.value="";
+ new Effect.Highlight(p_object.id, {startcolor: "#ff0000"});
+ p_object.value = "";
}
-
-
+
+
}
+
/**
* check if the object is hidden or show and perform the opposite,
* show the hidden obj or hide the shown one. With display : flex,
@@ -372,29 +337,34 @@ function format_date(p_object)
* @param button id of the button
* @param rotate : if true with rotate the object of p_button otherwise
*/
-function toggleHideShow(p_obj, p_button,rotate)
-{
- var div_obj=g(p_obj);
+function toggleHideShow(p_obj, p_button, rotate) {
+ var div_obj = g(p_obj);
var stat = div_obj.style.display;
-
- var str = ( g(p_button))?g(p_button).value:"";
- if (stat === 'none')
- {
+ var str = (g(p_button)) ? g(p_button).value : "";
+
+ if (stat === 'none') {
// specific for the DIV id search_form
- if( div_obj.id=='search_form') { show(p_obj); } else { $(p_obj).show()}
+ if (div_obj.id == 'search_form') {
+ show(p_obj);
+ } else {
+ $(p_obj).show()
+ }
str = str.replace(/Afficher/, content[62]);
g(p_button).value = str;
- } else
- {
+ } else {
// specific for the DIV di search_form
- if(!div_obj.id=='search_form') { hide(p_obj); } else { $(p_obj).hide()}
+ if (!div_obj.id == 'search_form') {
+ hide(p_obj);
+ } else {
+ $(p_obj).hide()
+ }
str = str.replace(/Cacher/, content[63]);
g(p_button).value = str;
}
- if ( ! rotate ) return;
- if ( stat == "none") {
- g(p_button).addClassName ("icon-up-open-1")
+ if (!rotate) return;
+ if (stat == "none") {
+ g(p_button).addClassName("icon-up-open-1")
g(p_button).removeClassName(" icon-down-open-2")
} else {
g(p_button).removeClassName("icon-up-open-1")
@@ -403,22 +373,22 @@ function toggleHideShow(p_obj, p_button,rotate)
}
}
+
/**
* open popup with the search windows
*@param p_dossier the dossier where to search
*@param p_style style of the detail value are E for expert or S for simple
*/
-function popup_recherche(p_dossier)
-{
+function popup_recherche(p_dossier) {
var w = window.open("recherche.php?gDossier=" + p_dossier + "&ac=SEARCH",
'', 'statusbar=no,scrollbars=yes,toolbar=no');
w.focus();
}
+
/**
* replace the special characters (><'") by their HTML representation
*@return a string without the offending char.
*/
-function unescape_xml(code_html)
-{
+function unescape_xml(code_html) {
code_html = code_html.replace(/\</, '<');
code_html = code_html.replace(/\>/, '>');
code_html = code_html.replace(/\"/, '"');
@@ -426,41 +396,47 @@ function unescape_xml(code_html)
code_html = code_html.replace(/\&/, '&');
return code_html;
}
+
/**
* Firefox splits the XML into 4K chunk, so to retrieve everything we need
* to get the different parts thanks textContent
*@param xmlNode a node (result of var data =
=answer.getElementsByTagName('code'))
*@return all the content of the XML node
*/
-function getNodeText(xmlNode)
-{
+function getNodeText(xmlNode) {
if (!xmlNode)
return '';
- if (typeof (xmlNode.textContent) != "undefined")
- {
+ if (typeof (xmlNode.textContent) != "undefined") {
return xmlNode.textContent;
}
if (xmlNode.firstChild && xmlNode.firstChild.nodeValue)
return xmlNode.firstChild.nodeValue;
return "";
}
+
/**
* change the periode in the calendar of the dashboard
*@param object select
*/
-function change_month(obj)
-{
+function change_month(obj) {
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get',
- parameters: {gDossier: obj.gDossier, op: 'cal', "per":
obj.value, t: obj.type_display, notitle: obj.notitle},
- onFailure: ajax_misc_failure,
- onSuccess: success_misc
- }
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: {
+ gDossier: obj.gDossier,
+ op: 'cal',
+ "per": obj.value,
+ t: obj.type_display,
+ notitle: obj.notitle
+ },
+ onFailure: ajax_misc_failure,
+ onSuccess: success_misc
+ }
);
}
+
/**
* basic answer to ajax on success, it will fill the DOMID code with
* the code. In that case, you need to create the object before the
Ajax.Request
@@ -470,14 +446,11 @@ function change_month(obj)
*@param value is the html code, with it you fill the ctl element
*/
-function success_misc(req)
-{
- try
- {
+function success_misc(req) {
+ try {
var answer = req.responseXML;
var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
+ if (html.length === 0) {
var rec = req.responseText;
alert_box('erreur :' + rec);
}
@@ -485,82 +458,74 @@ function success_misc(req)
var code_html = getNodeText(nodeXml);
code_html = unescape_xml(code_html);
$("user_cal").innerHTML = code_html;
- } catch (e)
- {
+ } catch (e) {
alert_box(e.message);
}
- try
- {
+ try {
code_html.evalScripts();
- } catch (e)
- {
+ } catch (e) {
alert_box(content[53] + "\n" + e.message);
}
}
-function loading()
-{
- var str='<div class="loading_msg"></div>';
- str+='<div class="loading_msg"></div>';
- str+='<div class="loading_msg"></div>';
- str+='<div class="loading_msg"></div>';
- str+='<div class="loading_msg"></div>';
+
+function loading() {
+ var str = '<div class="loading_msg"></div>';
+ str += '<div class="loading_msg"></div>';
+ str += '<div class="loading_msg"></div>';
+ str += '<div class="loading_msg"></div>';
+ str += '<div class="loading_msg"></div>';
return str;
}
-function ajax_misc_failure()
-{
+function ajax_misc_failure() {
alert_box(content[53]);
}
+
/**
* remove a document_modele
*/
-function cat_doc_remove(p_dt_id, p_dossier)
-{
+function cat_doc_remove(p_dt_id, p_dossier) {
var queryString = "gDossier=" + p_dossier + "&op=rem_cat_doc" + "&dt_id="
+ p_dt_id;
var action = new Ajax.Request(
- "ajax_misc.php", {method: 'get',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req)
- {
- try
- {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('dtid');
- if (html.length === 0)
- {
- var rec = req.responseText;
- alert_box('erreur <br>' + rec);
- return;
- }
- var nodeXML = html[0];
- var row_id = getNodeText(nodeXML);
- if (row_id === 'nok')
- {
- var message_node =
answer.getElementsByTagName('message');
- var message_text = getNodeText(message_node[0]);
- alert_box('erreur <br>' + message_text);
- return;
- }
- $('row' + row_id).style.textDecoration =
"line-through";
- $('X' + row_id).style.display = 'none';
- $('M' + row_id).style.display = 'none';
- } catch (e)
- {
- alert_box(e.message);
+ "ajax_misc.php", {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ try {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('dtid');
+ if (html.length === 0) {
+ var rec = req.responseText;
+ alert_box('erreur <br>' + rec);
+ return;
+ }
+ var nodeXML = html[0];
+ var row_id = getNodeText(nodeXML);
+ if (row_id === 'nok') {
+ var message_node =
answer.getElementsByTagName('message');
+ var message_text = getNodeText(message_node[0]);
+ alert_box('erreur <br>' + message_text);
+ return;
}
+ $('row' + row_id).style.textDecoration = "line-through";
+ $('X' + row_id).style.display = 'none';
+ $('M' + row_id).style.display = 'none';
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
);
}
+
/**
* change a document_modele
*/
-function cat_doc_change(p_dt_id, p_dossier)
-{
+function cat_doc_change(p_dt_id, p_dossier) {
var queryString = "gDossier=" + p_dossier + "&op=mod_cat_doc" + "&dt_id="
+ p_dt_id;
var nTop = calcy(posY);
var nLeft = "200px";
@@ -569,17 +534,17 @@ function cat_doc_change(p_dt_id, p_dossier)
removeDiv('change_doc_div');
waiting_box();
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: 'change_doc_div', style: str_style, cssclass:
'inner_box', drag: "1"});
- $('change_doc_div').innerHTML = req.responseText;
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ add_div({id: 'change_doc_div', style: str_style, cssclass:
'inner_box', drag: "1"});
+ $('change_doc_div').innerHTML = req.responseText;
- }
}
+ }
);
}
@@ -588,10 +553,8 @@ function cat_doc_change(p_dt_id, p_dossier)
*@param obj with 4 attributes gdossier, ctl,popup
*@param p_function_callback callback function to be called after,
*/
-function popup_select_tva(obj,p_function_callback)
-{
- try
- {
+function popup_select_tva(obj, p_function_callback) {
+ try {
if ($('tva_select')) {
removeDiv('tva_select');
}
@@ -605,48 +568,50 @@ function popup_select_tva(obj,p_function_callback)
queryString += '&filter=' + obj.filter;
var action = new Ajax.Request(
- "ajax_misc.php",
- {method: 'get',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req)
- {
- try
- {
- var answer = req.responseXML;
- var popup = answer.getElementsByTagName('popup');
- if (popup.length === 0)
- {
- var rec = req.responseText;
- alert_box('erreur :' + rec);
- }
- var html = answer.getElementsByTagName('code');
-
- var name_ctl = popup[0].firstChild.nodeValue;
- var nodeXml = html[0];
- var code_html = getNodeText(nodeXml);
- code_html = unescape_xml(code_html);
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ try {
+ var answer = req.responseXML;
+ var popup = answer.getElementsByTagName('popup');
+ if (popup.length === 0) {
+ var rec = req.responseText;
+ alert_box('erreur :' + rec);
+ }
+ var html = answer.getElementsByTagName('code');
- var nTop = posY - 200;
- var nLeft = "15%";
- var str_style = "top:" + nTop + "px;left:" + nLeft
+ ";right:" + nLeft + ";width:55em;height:auto";
+ var name_ctl = popup[0].firstChild.nodeValue;
+ var nodeXml = html[0];
+ var code_html = getNodeText(nodeXml);
+ code_html = unescape_xml(code_html);
- var popup = {'id': 'tva_select', 'cssclass':
'inner_box', 'style': str_style, 'html': code_html, 'drag': false};
- add_div(popup);
- $('lk_tva_select_table').focus();
- sorttable.makeSortable($('tva_select_table'));
- if ( p_function_callback) {
- p_function_callback.call(null);
- }
- } catch (e)
- {
- alert_box("success_popup_select_tva " + e.message);
+ var nTop = posY - 200;
+ var nLeft = "15%";
+ var str_style = "top:" + nTop + "px;left:" + nLeft +
";right:" + nLeft + ";width:55em;height:auto";
+
+ var popup = {
+ 'id': 'tva_select',
+ 'cssclass': 'inner_box',
+ 'style': str_style,
+ 'html': code_html,
+ 'drag': false
+ };
+ add_div(popup);
+ $('lk_tva_select_table').focus();
+ sorttable.makeSortable($('tva_select_table'));
+ if (p_function_callback) {
+ p_function_callback.call(null);
}
+ } catch (e) {
+ alert_box("success_popup_select_tva " + e.message);
}
}
+ }
);
- } catch (e)
- {
+ } catch (e) {
alert_box("popup_select_tva " + e.message);
}
}
@@ -656,40 +621,36 @@ function popup_select_tva(obj,p_function_callback)
* display the popup with vat and explanation
*@param obj with 4 attributes gdossier, ctl,popup
*/
-function set_tva_label(obj)
-{
- try
- {
+function set_tva_label(obj) {
+ try {
var queryString = "gDossier=" + obj.gDossier + "&op=label_tva" +
"&id=" + obj.value;
if (obj.jcode)
queryString += '&code=' + obj.jcode;
var action = new Ajax.Request(
- "ajax_misc.php",
- {method: 'get',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: success_set_tva_label
- }
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: success_set_tva_label
+ }
);
- } catch (e)
- {
+ } catch (e) {
alert_box("set_tva_label " + e.message);
}
}
+
/**
* display the popup with vat and explanations
*@param string req answer from ajax
*/
-function success_set_tva_label(req)
-{
- try
- {
+function success_set_tva_label(req) {
+ try {
var answer = req.responseXML;
var code = answer.getElementsByTagName('code');
var value = answer.getElementsByTagName('value');
- if (code.length === 0)
- {
+ if (code.length === 0) {
var rec = req.responseText;
alert_box('erreur :' + rec);
}
@@ -697,8 +658,7 @@ function success_set_tva_label(req)
var label_code = code[0].firstChild.nodeValue;
var label_value = value[0].firstChild.nodeValue;
set_value(label_code, label_value);
- } catch (e)
- {
+ } catch (e) {
alert_box("success_set_tva_label " + e.message);
}
@@ -716,10 +676,8 @@ function success_set_tva_label(req)
* @returns html dom element
* @see add_div
*/
-function create_div(obj)
-{
- try
- {
+function create_div(obj) {
+ try {
var top = document;
var elt = null;
if (!$(obj.id)) {
@@ -727,27 +685,21 @@ function create_div(obj)
} else {
elt = $(obj.id);
}
- if (obj.id)
- {
+ if (obj.id) {
elt.setAttribute('id', obj.id);
}
- if (obj.style)
- {
- if (elt.style.setAttribute)
- { /* IE7 bug */
+ if (obj.style) {
+ if (elt.style.setAttribute) { /* IE7 bug */
elt.style.setAttribute('cssText', obj.style);
- } else
- { /* good Browser */
+ } else { /* good Browser */
elt.setAttribute('style', obj.style);
}
}
- if (obj.cssclass)
- {
+ if (obj.cssclass) {
elt.setAttribute('class', obj.cssclass); /* FF */
elt.setAttribute('className', obj.cssclass); /* IE */
}
- if (obj.html)
- {
+ if (obj.html) {
elt.innerHTML = obj.html;
}
@@ -757,22 +709,22 @@ function create_div(obj)
/* if ( obj.effect && obj.effect != 'none' ) {
Effect.Grow(obj.id,{direction:'top-right',duration:0.1}); }
else if ( ! obj.effect ){
Effect.Grow(obj.id,{direction:'top-right',duration:0.1}); }*/
- if (obj.drag)
- {
- aDraggableElement[obj.id] = new Draggable(obj.id, {starteffect:
function ()
- {
- new Effect.Highlight(obj.id, {scroll: window, queue:
'end'});
- }}
+ if (obj.drag) {
+ aDraggableElement[obj.id] = new Draggable(obj.id, {
+ starteffect: function () {
+ new Effect.Highlight(obj.id, {scroll: window, queue:
'end'});
+ }
+ }
);
}
return elt;
- } catch (e)
- {
+ } catch (e) {
error_message("create_div " + e.message);
}
}
+
/**
* add dynamically a object for AJAX
*@param obj.
@@ -783,51 +735,47 @@ function create_div(obj)
* - html is the content
* - drag is the div can be moved
*/
-function add_div(obj)
-{
+function add_div(obj) {
try {
var elt = create_div(obj);
/* elt.setStyle({visibility:'visible'}); */
elt.style.visibility = 'visible';
elt.show();
return elt;
- } catch (e)
- {
+ } catch (e) {
alert_box("add_div " + e.message);
}
}
+
/**
* remove a object created with add_div
* @param elt id of the elt
*/
-function removeDiv(elt)
-{
- if (g(elt))
- {
+function removeDiv(elt) {
+ if (g(elt)) {
document.body.removeChild(g(elt));
}
// if reloaded if asked the window will be reloaded when
// the box is closed
- if (ask_reload === 1)
- {
+ if (ask_reload === 1) {
// avoid POST window.location = window.location.href;
window.location.reload();
}
}
-function waiting_node()
-{
+
+function waiting_node() {
$('info_div').innerHTML = 'Un instant';
$('info_div').style.display = "block";
}
+
/**
*show a box while loading
*must be remove when ajax is successfull
* the id is wait_box
*/
-function waiting_box()
-{
+function waiting_box() {
var obj = {
- id: 'wait_box', html: loading()+'<p>' + content[65] + '</p>'
+ id: 'wait_box', html: loading() + '<p>' + content[65] + '</p>'
};
var y = fixed_position(10, 250)
obj.style = y + ";width:20%;margin-left:40%;";
@@ -839,6 +787,7 @@ function waiting_box()
}
+
/**
* call add_div to add a DIV and after call the ajax
* the queryString, the callback for function for success and error management
@@ -851,42 +800,37 @@ function waiting_box()
* - obj.fixed optional let you determine the position, otherwise works like
IPopup
*@see add_div IBox
*/
-function show_box(obj)
-{
+function show_box(obj) {
add_div(obj);
- if (!obj.fixed)
- {
+ if (!obj.fixed) {
g(obj.id).style.top = calcy(40) + "px";
show(obj.id);
- } else
- {
+ } else {
show(obj.id);
}
var action = new Ajax.Request(
- obj.callback,
- {
- method: 'GET',
- parameters: obj.qs,
- onFailure: eval(obj.js_error),
- onSuccess: eval(obj.js_success)
- });
+ obj.callback,
+ {
+ method: 'GET',
+ parameters: obj.qs,
+ onFailure: eval(obj.js_error),
+ onSuccess: eval(obj.js_success)
+ });
}
+
/**
* receive answer from ajax and just display it into the IBox
* XML must contains at least 2 fields : ctl is the ID of the IBOX and
* code is the HTML to put in it
*@see fill_box
*/
-function success_box(req, json)
-{
- try
- {
+function success_box(req, json) {
+ try {
var answer = req.responseXML;
var a = answer.getElementsByTagName('ctl');
var html = answer.getElementsByTagName('code');
- if (a.length === 0)
- {
+ if (a.length === 0) {
var rec = req.responseText;
alert_box(content[48] + rec);
}
@@ -899,30 +843,25 @@ function success_box(req, json)
if (name_ctl == 'popup')
g(name_ctl).style.width = 'auto';
- } catch (e)
- {
+ } catch (e) {
alert_box("success_box" + e.message);
}
- try
- {
+ try {
code_html.evalScripts();
- } catch (e)
- {
+ } catch (e) {
alert_box(content[53] + "\n" + e.message);
}
}
-function error_box()
-{
+function error_box() {
alert_box(content[53]);
}
+
/**
* show the ledger choice
*/
-function show_ledger_choice(json_obj)
-{
- try
- {
+function show_ledger_choice(json_obj) {
+ try {
waiting_box();
var i = 0;
var query = "gDossier=" + json_obj.dossier + '&type=' + json_obj.type
+ '&div=' + json_obj.div + '&op=ledger_show';
@@ -933,68 +872,71 @@ function show_ledger_choice(json_obj)
}
query = encodeURI(query);
var action = new Ajax.Request(
- "ajax_misc.php",
- {method: 'get',
- parameters: query,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, json) {
- try {
- if ( req.responseText === 'NOCONX') {
reconnect();return;}
- var obj = {
- id: json_obj.div + 'jrn_search',
- cssclass: 'inner_box',
- style:
';position:absolute;width:auto;z-index:20;margin-left:20%',
- drag: 1
- };
- //var y=calcy(posY);
- var y = posY;
-
- obj.style = "top:" + y + 'px;' + obj.style;
- /* if ( json_obj.class )
- {
- obj.cssclass=json_obj.class;
- }*/
- add_div(obj);
-
-
- var answer = req.responseXML;
- var a = answer.getElementsByTagName('ctl');
- var html = answer.getElementsByTagName('code');
- if (a.length === 0) {
- var rec = req.responseText;
- alert_box('erreur :' + rec);
- }
- var name_ctl = a[0].firstChild.nodeValue;
- var code_html = getNodeText(html[0]);
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: query,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, json) {
+ try {
+ if (req.responseText === 'NOCONX') {
+ reconnect();
+ return;
+ }
+ var obj = {
+ id: json_obj.div + 'jrn_search',
+ cssclass: 'inner_box',
+ style:
';position:absolute;width:auto;z-index:20;margin-left:20%',
+ drag: 1
+ };
+ //var y=calcy(posY);
+ var y = posY;
+
+ obj.style = "top:" + y + 'px;' + obj.style;
+ /* if ( json_obj.class )
+ {
+ obj.cssclass=json_obj.class;
+ }*/
+ add_div(obj);
- code_html = unescape_xml(code_html);
- remove_waiting_box();
- g(obj.id).innerHTML = code_html;
- } catch (e) {
- alert_box("show_ledger_callback" + e.message);
- }
- try {
- code_html.evalScripts();
- } catch (e) {
- alert_box(content[53] + "\n" + e.message);
+ var answer = req.responseXML;
+ var a = answer.getElementsByTagName('ctl');
+ var html = answer.getElementsByTagName('code');
+ if (a.length === 0) {
+ var rec = req.responseText;
+ alert_box('erreur :' + rec);
}
+ var name_ctl = a[0].firstChild.nodeValue;
+ var code_html = getNodeText(html[0]);
+
+ code_html = unescape_xml(code_html);
+ remove_waiting_box();
+ g(obj.id).innerHTML = code_html;
+ } catch (e) {
+ alert_box("show_ledger_callback" + e.message);
+ }
+ try {
+ code_html.evalScripts();
+ } catch (e) {
+ alert_box(content[53] + "\n" + e.message);
}
}
+
+ }
);
} catch (e) {
alert_box('show_ledger_choice' + e.message);
}
}
+
/**
* hide the ledger choice
*/
-function hide_ledger_choice(p_frm_search)
-{
- try
- {
+function hide_ledger_choice(p_frm_search) {
+ try {
var nb = $(p_frm_search).nb_jrn.value;
var div = "";
if ($(p_frm_search).div) {
@@ -1023,25 +965,25 @@ function hide_ledger_choice(p_frm_search)
}
}
+
/**
* show the cat of ledger choice
*/
-function show_cat_choice()
-{
+function show_cat_choice() {
g('div_cat').style.visibility = 'visible';
}
+
/**
* hide the cat of ledger choice
*/
-function hide_cat_choice()
-{
+function hide_cat_choice() {
g('div_cat').style.visibility = 'hidden';
}
+
/**
* add a row for the forecast item
*/
-function for_add_row(tableid)
-{
+function for_add_row(tableid) {
style = 'class="input_text"';
var mytable = g(tableid).tBodies[0];
var nNumberRow = mytable.rows.length;
@@ -1050,8 +992,7 @@ function for_add_row(tableid)
var nNumberCell = rowToCopy.cells.length;
var nb = g("nbrow");
var oNewRow = mytable.insertRow(nNumberRow);
- for (var e = 0; e < nNumberCell; e++)
- {
+ for (var e = 0; e < nNumberCell; e++) {
var newCell = oRow.insertCell(e);
var tt = rowToCopy.cells[e].innerHTML;
new_tt = tt.replace(/an_cat0/g, "an_cat" + nb.value);
@@ -1070,86 +1011,75 @@ function for_add_row(tableid)
$("an_cat_amount" + nb.value).value = "0";
nb.value++;
}
+
/**
* toggle all the checkbox in a given form
* @param form_id id of the form
*/
-function toggle_checkbox(form_id)
-{
+function toggle_checkbox(form_id) {
var form = g(form_id);
- for (var i = 0; i < form.length; i++)
- {
+ for (var i = 0; i < form.length; i++) {
var e = form.elements[i];
- if (e.type === 'checkbox')
- {
- if (e.checked === true)
- {
+ if (e.type === 'checkbox') {
+ if (e.checked === true) {
e.checked = false;
- } else
- {
+ } else {
e.checked = true;
}
}
}
}
+
/**
* select all the checkbox in a given form
* @param form_id id of the form
*/
-function select_checkbox(form_id)
-{
+function select_checkbox(form_id) {
var form = $(form_id);
- for (var i = 0; i < form.length; i++)
- {
+ for (var i = 0; i < form.length; i++) {
var e = form.elements[i];
- if (e.type === 'checkbox')
- {
+ if (e.type === 'checkbox') {
e.checked = true;
}
}
}
+
/**
- * select all the checkbox in a given form if the specific attribute
+ * select all the checkbox in a given form if the specific attribute
* has the given value
* @param form_id id of the form
* @param attribute name
* @param attribute value
*/
-function select_checkbox_attribute(form_id, p_attribute_name,
p_attribute_value)
-{
+function select_checkbox_attribute(form_id, p_attribute_name,
p_attribute_value) {
var form = $(form_id);
- for (var i = 0; i < form.length; i++)
- {
+ for (var i = 0; i < form.length; i++) {
var e = form.elements[i];
- if (e.type === 'checkbox' && e.getAttribute(p_attribute_name) ==
p_attribute_value)
- {
+ if (e.type === 'checkbox' && e.getAttribute(p_attribute_name) ==
p_attribute_value) {
e.checked = true;
}
}
}
+
/**
* unselect all the checkbox in a given form
* @param form_id id of the form
*/
-function unselect_checkbox(form_id)
-{
+function unselect_checkbox(form_id) {
var form = $(form_id);
- for (var i = 0; i < form.length; i++)
- {
+ for (var i = 0; i < form.length; i++) {
var e = form.elements[i];
- if (e.type === 'checkbox')
- {
+ if (e.type === 'checkbox') {
e.checked = false;
}
}
}
+
/**
* show the calculator
*/
-function show_calc()
-{
- if (g('calc1'))
- {
+function show_calc() {
+ if (g('calc1')) {
this.document.getElementById('inp').value = "";
this.document.getElementById('inp').focus();
return;
@@ -1163,48 +1093,52 @@ function show_calc()
shtml += '<form name="calc_line" method="GET" onSubmit="cal();return
false;" >' + content[68] + '<input class="input_text" type="text" id="inp"
name="calculator"> <input type="button" value="Efface" class="button"
onClick="Clean();return false;" > <input type="button" value="Efface
historique" class="button" onClick="CleanHistory();return false;" > <input
type="button" class="button" value="Fermer" onClick="removeDiv(\'calc1\')" >';
shtml += '</form><span class="highligth" style="display:block"
id="sub_total"> ' + content[67] + ' </span><span style="display:block"
id="listing"> </span>';
- var obj = {id: sid, html: shtml,
+ var obj = {
+ id: sid, html: shtml,
drag: false, style: 'z-index:98'
};
add_div(obj);
this.document.getElementById('inp').focus();
}
-function display_periode(p_dossier, p_id)
-{
- try
- {
+function display_periode(p_dossier, p_id) {
+
+ try {
var queryString = "gDossier=" + p_dossier + "&op=input_per" + "&p_id="
+ p_id;
- var popup = {'id': 'mod_periode', 'cssclass': 'inner_box', 'html':
loading(), 'style': 'width:30em', 'drag': true};
+ var popup = {
+ 'id': 'mod_periode',
+ 'cssclass': 'inner_box',
+ 'html': loading(),
+ 'style': 'width:30em',
+ 'drag': true
+ };
if (!$('mod_periode')) {
add_div(popup);
}
var action = new Ajax.Request(
- "ajax_misc.php",
- {method: 'get',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: success_display_periode
- }
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: success_display_periode
+ }
);
$('mod_periode').style.top = (posY - 70) + "px";
$('mod_periode').style.left = (posX - 70) + "px";
- } catch (e)
- {
+ } catch (e) {
alert_box("display_periode " + e.message);
}
}
-function success_display_periode(req)
-{
- try
- {
+
+function success_display_periode(req) {
+ try {
var answer = req.responseXML;
var html = answer.getElementsByTagName('data');
- if (html.length === 0)
- {
+ if (html.length === 0) {
var rec = req.responseText;
alert_box('erreur :' + rec);
}
@@ -1213,41 +1147,38 @@ function success_display_periode(req)
code_html = unescape_xml(code_html);
$('mod_periode').innerHTML = code_html;
- } catch (e)
- {
+ } catch (e) {
alert_box("success_display_periode".e.message);
}
- try
- {
+ try {
code_html.evalScripts();
- } catch (e)
- {
+ } catch (e) {
alert_box(content[53] + "\n" + e.message);
}
}
-function save_periode(obj)
-{
- try
- {
+
+function save_periode(obj) {
+ try {
var queryString = $(obj).serialize() + "&op=save_per";
var action = new Ajax.Request(
- "ajax_misc.php",
- {method: 'post',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: success_display_periode
- }
+ "ajax_misc.php",
+ {
+ method: 'post',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: success_display_periode
+ }
);
- } catch (e)
- {
+ } catch (e) {
alert_box("display_periode " + e.message);
}
return false;
}
+
/**
* basic answer to ajax on success, it will fill the ctl with
* the code. In that case, you need to create the object before the
Ajax.Request
@@ -1256,10 +1187,12 @@ function save_periode(obj)
*@param ctl is the ID of the object containing the html (div, button...)
*@param code is the html code, with it you fill the ctl element
*/
-function fill_box(req)
-{
+function fill_box(req) {
try {
- if (req.responseText=='NOCONX') { reconnect(); return;}
+ if (req.responseText == 'NOCONX') {
+ reconnect();
+ return;
+ }
remove_waiting_box();
var answer = req.responseXML;
@@ -1292,13 +1225,13 @@ function fill_box(req)
}
+
/**
*display a popin to let you modified a predefined operation
*@param dossier_id
*@param od_id from table op_predef
*/
-function mod_predf_op(dossier_id, od_id,p_ledger)
-{
+function mod_predf_op(dossier_id, od_id, p_ledger) {
var target = "mod_predf_op";
removeDiv(target);
var str_style = "top:10%;left:2%;width:96%";
@@ -1307,31 +1240,30 @@ function mod_predf_op(dossier_id, od_id,p_ledger)
add_div(div);
- var qs = "gDossier=" + dossier_id + '&op=mod_predf&id=' +
od_id+'&ledger_id='+p_ledger;
+ var qs = "gDossier=" + dossier_id + '&op=mod_predf&id=' + od_id +
'&ledger_id=' + p_ledger;
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: fill_box
- }
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: fill_box
+ }
);
}
-function save_predf_op(obj)
-{
+function save_predf_op(obj) {
waiting_box();
var querystring = $(obj).serialize() + '&op=save_predf';
// Create a ajax request to get all the person
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'post',
- parameters: querystring,
- onFailure: null,
- onSuccess: refresh_window
- }
+ {
+ method: 'post',
+ parameters: querystring,
+ onFailure: null,
+ onSuccess: refresh_window
+ }
);
return false;
@@ -1343,23 +1275,19 @@ function save_predf_op(obj)
* @param {type} dossier
* @param {type} ctl_concern
* @param {float or string} amount_id Amount or DOM Id of the element
containing the amount
- * @param {float} ledger
+ * @param {float} ledger
* @param {type} p_id_targetDom Element (div) where to display the search
result
* @param p_tiers id of the Tiers
* @returns {undefined}
*/
-function search_reconcile(dossier, ctl_concern, amount_id, ledger,
p_id_target, p_tiers)
-{
- if (amount_id === undefined)
- {
+function search_reconcile(dossier, ctl_concern, amount_id, ledger,
p_id_target, p_tiers) {
+ if (amount_id === undefined) {
amount_id = 0;
- } else if ($(amount_id))
- {
- if ($(amount_id).value)
- {
+ } else if ($(amount_id)) {
+ if ($(amount_id).value) {
amount_id = $(amount_id).value;
} else if
- ($(amount_id).innerHTML) {
+ ($(amount_id).innerHTML) {
amount_id = $(amount_id).innerHTML;
}
}
@@ -1379,7 +1307,8 @@ function search_reconcile(dossier, ctl_concern,
amount_id, ledger, p_id_target,
var hide_operation = $(ctl_concern).getAttribute("hide_operation");
var single_operation = $(ctl_concern).getAttribute("single_operation");
- var param_send = {gDossier: dossier,
+ var param_send = {
+ gDossier: dossier,
ctlc: ctl_concern,
op: 'search_op',
ac: 'JSSEARCH',
@@ -1388,31 +1317,31 @@ function search_reconcile(dossier, ctl_concern,
amount_id, ledger, p_id_target,
target: target,
tiers: tiers,
hide_operation: hide_operation,
- single_operation:single_operation
+ single_operation: single_operation
};
var qs = encodeJSON(param_send);
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- remove_waiting_box();
- var div = {id: target, cssclass: 'inner_box', style:
str_style, drag: 0};
- add_div(div);
- $(target).innerHTML = req.responseText;
- req.responseText.evalScripts();
- }
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ var div = {id: target, cssclass: 'inner_box', style:
str_style, drag: 0};
+ add_div(div);
+ $(target).innerHTML = req.responseText;
+ req.responseText.evalScripts();
}
+ }
);
}
+
/**
* search in a popin obj if the object form
*/
-function search_operation(obj)
-{
+function search_operation(obj) {
try {
var dossier = g('gDossier').value;
waiting_box();
@@ -1422,23 +1351,23 @@ function search_operation(obj)
}
var qs = Form.serialize('search_form_ajx') + "&op=search_op";
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- remove_waiting_box();
- $(target).innerHTML = req.responseText;
- req.responseText.evalScripts();
- }
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ $(target).innerHTML = req.responseText;
+ req.responseText.evalScripts();
}
+ }
);
- } catch (e)
- {
+ } catch (e) {
remove_waiting_box();
alert_box(e.message);
}
}
+
/**
* Update the field e_concerned, from class_iconcerned
* Value is the field where to put the quick-code but only if one checkbox has
been
@@ -1446,25 +1375,20 @@ function search_operation(obj)
* @param {type} obj
* @returns {undefined}
*/
-function set_reconcile(obj)
-{
+function set_reconcile(obj) {
- try
- {
+ try {
var ctlc = obj.elements['ctlc'];
var tiers = obj.elements['tiers'];
if (!obj.elements['target'])
return;
var target = obj.elements['target'].value;
var single_operation = obj.elements['single_operation'].value;
- for (var e = 0; e < obj.elements.length; e++)
- {
+ for (var e = 0; e < obj.elements.length; e++) {
var elmt = obj.elements[e];
- if (elmt.type === "checkbox")
- {
- if (elmt.checked === true)
- {
+ if (elmt.type === "checkbox") {
+ if (elmt.checked === true) {
var str_name = elmt.name;
var nValue = str_name.replace("jr_concerned", "");
if ($(ctlc.value).value != '') {
@@ -1475,50 +1399,50 @@ function set_reconcile(obj)
if (tiers && tiers.value != "") {
$(tiers.value).value = elmt.value;
/* set the name */
- new Ajax.Request("fid.php",{
- method:"get",
-
parameters:{gDossier:obj.elements['gDossier'].value,"FID":elmt.value},
- onSuccess:function(req){
+ new Ajax.Request("fid.php", {
+ method: "get",
+ parameters: {gDossier:
obj.elements['gDossier'].value, "FID": elmt.value},
+ onSuccess: function (req) {
// find the row number
//tiers.value = e_othern
- var tiers_card=new String(tiers.value);
- var num=tiers_card.replace("e_other","");
- var tiers_name_id="e_other"+"_name"+num;
+ var tiers_card = new String(tiers.value);
+ var num = tiers_card.replace("e_other",
"");
+ var tiers_name_id = "e_other" + "_name" +
num;
var answer = req.responseText.evalJSON();
- $(tiers_name_id).value=answer["name"];
+ $(tiers_name_id).value = answer["name"];
}
});
}
}
- if (single_operation==0) {
+ if (single_operation == 0) {
$(ctlc.value).value += nValue;
} else {
$(ctlc.value).value = nValue;
-
+
}
}
}
}
removeDiv(obj.elements['target'].value);
- } catch (e)
- {
+ } catch (e) {
alert_box(e.message)
}
}
-function remove_waiting_node()
-{
+
+function remove_waiting_node() {
$('info_div').innerHTML = "";
$('info_div').style.display = "none";
}
-function remove_waiting_box()
-{
+
+function remove_waiting_box() {
if ($('wait_box')) {
Effect.Fade('wait_box', {duration: 0.6});
}
remove_waiting_node();
}
+
/**
* Show all the detail of a profile : Menu, Management, Repository and
* let the user to modify it
@@ -1526,38 +1450,37 @@ function remove_waiting_box()
* @param {type} profile_id
* @returns {undefined}
*/
-function get_profile_detail(gDossier, profile_id)
-{
+function get_profile_detail(gDossier, profile_id) {
waiting_box();
var qs = "op=display_profile&gDossier=" + gDossier + "&p_id=" + profile_id
+ "&ctl=detail_profile";
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- remove_waiting_box();
- $('list_profile').hide();
- $('detail_profile').innerHTML = req.responseText;
- req.responseText.evalScripts();
- $('detail_profile').show();
- if (profile_id != "-1")
- profile_show('profile_gen_div');
- }
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ $('list_profile').hide();
+ $('detail_profile').innerHTML = req.responseText;
+ req.responseText.evalScripts();
+ $('detail_profile').show();
+ if (profile_id != "-1")
+ profile_show('profile_gen_div');
}
+ }
);
}
-function get_profile_detail_success_obsolete(xml)
-{
+
+function get_profile_detail_success_obsolete(xml) {
remove_waiting_box();
}
+
/**
* compute the string to position a div in a fixed way
* @return string
*/
-function fixed_position(p_sx, p_sy)
-{
+function fixed_position(p_sx, p_sy) {
var sx = p_sx;
var sy = calcy(p_sy);
@@ -1565,135 +1488,135 @@ function fixed_position(p_sx, p_sy)
return str_style;
}
+
/**
* compute Y even if the windows has scrolled down or up
*@return the correct Y position
*/
-function calcy(p_sy)
-{
+function calcy(p_sy) {
var sy = p_sy;
- if (window.pageYOffset)
- {
+ if (window.pageYOffset) {
sy = window.pageYOffset + p_sy;
- } else
- {
+ } else {
sy = document.documentElement.scrollTop + p_sy;
}
return sy;
}
+
/**
* display a box with the menu option
* @param {type} gdossier
* @param {type} pm_id
* @returns {undefined}
*/
-function mod_menu(gdossier, pm_id)
-{
+function mod_menu(gdossier, pm_id) {
waiting_box();
removeDiv('divdm' + pm_id);
var qs = "op=det_menu&gDossier=" + gdossier + "&pm_id=" + pm_id +
"&ctl=divdm" + pm_id;
var pos = fixed_position(50, 250);
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- add_div({id: "divdm" + pm_id, drag: 1, cssclass:
"inner_box", style: pos});
- $('divdm' + pm_id).innerHTML = req.responseText;
- } catch (e) {
- alert_box(e.message);
- }
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ add_div({id: "divdm" + pm_id, drag: 1, cssclass:
"inner_box", style: pos});
+ $('divdm' + pm_id).innerHTML = req.responseText;
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
);
}
+
/**
* Display the submenu of a menu or a module, used in setting the menu
- *
+ *
* @param {type} p_dossier
* @param {type} p_profile
* @param {type} p_dep
* @returns {undefined}
*/
-function display_sub_menu(p_dossier, p_profile, p_dep, p_level)
-{
+function display_sub_menu(p_dossier, p_profile, p_dep, p_level) {
waiting_box();
new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: {op: 'display_submenu',
- gDossier: p_dossier,
- dep: p_dep,
- p_profile: p_profile,
- p_level: p_level
- },
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- if ($('menu_table').rows.length > p_level) {
- $('menu_table').rows[1].remove();
- }
- $('sub' + p_dep).addClassName("selectedmenu");
- var new_row = document.createElement('TR');
- new_row.innerHTML = req.responseText;
- $('menu_table').appendChild(new_row);
- } catch (e) {
- alert_box(e.message);
+ {
+ method: 'get',
+ parameters: {
+ op: 'display_submenu',
+ gDossier: p_dossier,
+ dep: p_dep,
+ p_profile: p_profile,
+ p_level: p_level
+ },
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ if ($('menu_table').rows.length > p_level) {
+ $('menu_table').rows[1].remove();
}
+ $('sub' + p_dep).addClassName("selectedmenu");
+ var new_row = document.createElement('TR');
+ new_row.innerHTML = req.responseText;
+ $('menu_table').appendChild(new_row);
+ } catch (e) {
+ alert_box(e.message);
}
- })
+ }
+ })
}
+
/**
* in CFGPRO, ask to confirm before removing a submenu and its children
* @param {type} p_dossier
* @param {type} profile_menu_id
* @returns {undefined}
*/
-function remove_sub_menu(p_dossier, profile_menu_id)
-{
+function remove_sub_menu(p_dossier, profile_menu_id) {
confirm_box(null, content[47],
- function () {
- waiting_box();
- new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: {op: 'remove_submenu', gDossier:
p_dossier,
- p_profile_menu_id: profile_menu_id},
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- $('sub' + profile_menu_id).remove();
- if ($('menu_table').rows.length > 1) {
- $('menu_table').rows[1].remove();
- }
-
- } catch (e)
- {
- alert_box(e.message);
- }
+ function () {
+ waiting_box();
+ new Ajax.Request('ajax_misc.php',
+ {
+ method: 'get',
+ parameters: {
+ op: 'remove_submenu', gDossier: p_dossier,
+ p_profile_menu_id: profile_menu_id
+ },
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ $('sub' + profile_menu_id).remove();
+ if ($('menu_table').rows.length > 1) {
+ $('menu_table').rows[1].remove();
}
+
+ } catch (e) {
+ alert_box(e.message);
}
- )
- });
+ }
+ }
+ )
+ });
}
+
/**
* add a menu to a profile, propose only the available menu
- * @param obj json object
- * - dossier : ,
- * - p_id : profile id ,
- * - type : Type of menu are "pr" for Printing "me" for plain menu
+ * @param obj json object
+ * - dossier : ,
+ * - p_id : profile id ,
+ * - type : Type of menu are "pr" for Printing "me" for plain menu
* - p_level : level of menu (0 -> module,1-> top menu, 2->submenu)
* - dep : the parent menu id (pm_id)
- *
+ *
*/
-function add_menu(obj)
-{
+function add_menu(obj) {
var pdossier = obj.dossier;
var p_id = obj.p_id;
var p_type = obj.type;
@@ -1702,164 +1625,165 @@ function add_menu(obj)
removeDiv('divdm' + p_id);
var pos = fixed_position(250, 150) + ";width:50%;";
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: {op: 'add_menu',
- 'gDossier': pdossier,
- 'p_id': p_id,
- 'ctl': 'divdm' + p_id,
- 'type': p_type,
- 'dep': obj.dep,
- 'p_level': obj.p_level},
- onFailure: null,
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- add_div({id: "divdm" + p_id, drag: 1, "cssclass":
"inner_box", "style": pos});
- $('divdm' + p_id).innerHTML = req.responseText;
- } catch (e) {
- alert_box(e.message);
- }
+ {
+ method: 'get',
+ parameters: {
+ op: 'add_menu',
+ 'gDossier': pdossier,
+ 'p_id': p_id,
+ 'ctl': 'divdm' + p_id,
+ 'type': p_type,
+ 'dep': obj.dep,
+ 'p_level': obj.p_level
+ },
+ onFailure: null,
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ add_div({id: "divdm" + p_id, drag: 1, "cssclass":
"inner_box", "style": pos});
+ $('divdm' + p_id).innerHTML = req.responseText;
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
);
}
+
/**
* Display a box to enter data for adding a new plugin from
* the CFGMENU
* @param {type} p_dossier
* @returns {undefined}
*/
-function add_plugin(p_dossier)
-{
+function add_plugin(p_dossier) {
waiting_box();
removeDiv('divplugin');
var qs = "op=add_plugin&gDossier=" + p_dossier + "&ctl=divplugin";
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- var pos = fixed_position(250, 150) + ";width:30%";
- add_div({id: "divplugin", drag: 1, cssclass:
"inner_box", style: pos});
- $('divplugin').innerHTML = req.responseText;
- } catch (e) {
- alert_box(e.message);
- }
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ var pos = fixed_position(250, 150) + ";width:30%";
+ add_div({id: "divplugin", drag: 1, cssclass: "inner_box",
style: pos});
+ $('divplugin').innerHTML = req.responseText;
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
);
}
+
/**
* Modify a menu
* @param {type} p_dossier
* @param {type} me_code
* @returns {undefined}
*/
-function mod_plugin(p_dossier, me_code)
-{
+function mod_plugin(p_dossier, me_code) {
waiting_box();
removeDiv('divplugin');
var qs = "op=mod_plugin&gDossier=" + p_dossier + "&ctl=divplugin&me_code="
+ me_code;
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- var pos = fixed_position(250, 150) + ";width:30%";
- add_div({id: "divplugin", drag: 1, cssclass:
"inner_box", style: pos});
- $('divplugin').innerHTML = req.responseText;
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ var pos = fixed_position(250, 150) + ";width:30%";
+ add_div({id: "divplugin", drag: 1, cssclass: "inner_box",
style: pos});
+ $('divplugin').innerHTML = req.responseText;
- } catch (e) {
- alert_box(e.message);
- }
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
);
}
-function create_menu(p_dossier)
-{
+
+function create_menu(p_dossier) {
waiting_box();
removeDiv('divmenu');
var qs = "op=create_menu&gDossier=" + p_dossier + "&ctl=divmenu";
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- var pos = fixed_position(250, 150) + ";width:30%";
- add_div({
- id: "divmenu",
- drag: 1,
- cssclass: "inner_box",
- style: pos
- });
- $('divmenu').innerHTML = req.responseText;
- } catch (e) {
- alert_box(e.message);
- }
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ var pos = fixed_position(250, 150) + ";width:30%";
+ add_div({
+ id: "divmenu",
+ drag: 1,
+ cssclass: "inner_box",
+ style: pos
+ });
+ $('divmenu').innerHTML = req.responseText;
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
);
}
-function modify_menu(p_dossier, me_code)
-{
+
+function modify_menu(p_dossier, me_code) {
waiting_box();
removeDiv('divmenu');
var qs = "op=modify_menu&gDossier=" + p_dossier + "&ctl=divmenu&me_code="
+ me_code;
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- var pos = fixed_position(250, 150) + ";width:30%";
- add_div({
- id: "divmenu",
- drag: 1,
- cssclass: "inner_box",
- style: pos
- });
- $('divmenu').innerHTML = req.responseText;
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ var pos = fixed_position(250, 150) + ";width:30%";
+ add_div({
+ id: "divmenu",
+ drag: 1,
+ cssclass: "inner_box",
+ style: pos
+ });
+ $('divmenu').innerHTML = req.responseText;
- } catch (e) {
- alert_box(e.message);
- }
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
);
}
-function get_properties(obj)
-{
+
+function get_properties(obj) {
var a_array = [];
var s_type = "[" + typeof obj + "]";
- for (var m in obj)
- {
+ for (var m in obj) {
a_array.push(m);
}
alert_box(s_type + a_array.join(","));
}
+
/**
* add a line in the form for the report
* @param p_dossier dossier id to connect
*/
-function rapport_add_row(p_dossier)
-{
+function rapport_add_row(p_dossier) {
style = 'style="border: 1px solid blue;"';
var table = $("rap1");
var line = table.rows.length;
@@ -1882,13 +1806,12 @@ function rapport_add_row(p_dossier)
g('form' + line).value = '';
}
+
/**
* Search an action in an inner box
*/
-function search_action(dossier, ctl_concern)
-{
- try
- {
+function search_action(dossier, ctl_concern) {
+ try {
waiting_box();
var dossier = g('gDossier').value;
@@ -1899,7 +1822,8 @@ function search_action(dossier, ctl_concern)
var div = {id: target, cssclass: 'inner_box', style: str_style, html:
loading(), drag: 1};
- var target = {gDossier: dossier,
+ var target = {
+ gDossier: dossier,
ctlc: ctl_concern,
op: 'search_action',
ctl: target
@@ -1908,73 +1832,66 @@ function search_action(dossier, ctl_concern)
var qs = encodeJSON(target);
var action = new Ajax.Request('ajax_misc.php',
- {
- method: 'get',
- parameters: qs,
- onFailure: null,
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- add_div(div);
- $('search_action_div').innerHTML =
req.responseText;
- req.responseText.evalScripts();
- } catch (e) {
- alert_box(e.message);
- }
+ {
+ method: 'get',
+ parameters: qs,
+ onFailure: null,
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ add_div(div);
+ $('search_action_div').innerHTML = req.responseText;
+ req.responseText.evalScripts();
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
);
} catch (e) {
alert_box(e.message);
}
}
-function result_search_action(obj)
-{
- try
- {
+function result_search_action(obj) {
+ try {
var queryString = $(obj).serialize() + "&op=search_action";
var action = new Ajax.Request(
- "ajax_misc.php",
- {method: 'get',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req) {
- try {
- remove_waiting_box();
- $('search_action_div').innerHTML =
req.responseText;
- req.responseText.evalScripts();
- } catch (e) {
- alert_box(e.message);
- }
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ try {
+ remove_waiting_box();
+ $('search_action_div').innerHTML = req.responseText;
+ req.responseText.evalScripts();
+ } catch (e) {
+ alert_box(e.message);
}
}
+ }
)
- } catch (e)
- {
+ } catch (e) {
alert_box("display_periode " + e.message);
}
return false;
}
-function set_action_related(p_obj)
-{
+function set_action_related(p_obj) {
- try
- {
+ try {
var obj = $(p_obj);
var ctlc = obj.elements['ctlc'];
- for (var e = 0; e < obj.elements.length; e++)
- {
+ for (var e = 0; e < obj.elements.length; e++) {
var elmt = obj.elements[e];
- if (elmt.type === "checkbox")
- {
- if (elmt.checked === true)
- {
+ if (elmt.type === "checkbox") {
+ if (elmt.checked === true) {
var str_name = elmt.name;
var nValue = elmt.value;
if ($(ctlc.value).value != '') {
@@ -1986,19 +1903,18 @@ function set_action_related(p_obj)
}
removeDiv('search_action_div');
return false;
- } catch (e)
- {
+ } catch (e) {
alert_box(e.message);
return false;
}
}
+
/**
* Show a form to modify or add a new repository
- *@param p_dossier
+ *@param p_dossier
*@param r_id : repository id
*/
-function stock_repo_change(p_dossier, r_id)
-{
+function stock_repo_change(p_dossier, r_id) {
var queryString = "gDossier=" + p_dossier + "&op=mod_stock_repo" +
"&r_id=" + r_id;
var nTop = calcy(posY);
var nLeft = "10.1562%";
@@ -2007,21 +1923,21 @@ function stock_repo_change(p_dossier, r_id)
removeDiv('change_stock_repo_div');
waiting_box();
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: 'change_stock_repo_div', style: str_style,
cssclass: 'inner_box', drag: "1"});
- $('change_stock_repo_div').innerHTML = req.responseText;
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ add_div({id: 'change_stock_repo_div', style: str_style,
cssclass: 'inner_box', drag: "1"});
+ $('change_stock_repo_div').innerHTML = req.responseText;
- }
}
+ }
);
}
-function stock_inv_detail(p_dossier, p_id)
-{
+
+function stock_inv_detail(p_dossier, p_id) {
var queryString = "gDossier=" + p_dossier + "&op=view_mod_stock" +
"&c_id=" + p_id + "&ctl=view_mod_stock_div";
var nTop = calcy(posY);
var nLeft = "10%";
@@ -2030,23 +1946,22 @@ function stock_inv_detail(p_dossier, p_id)
removeDiv('view_mod_stock_div');
waiting_box();
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: 'view_mod_stock_div', style: str_style,
cssclass: 'inner_box', drag: "1"});
- $('view_mod_stock_div').innerHTML = req.responseText;
- req.responseText.evalScripts();
- }
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ add_div({id: 'view_mod_stock_div', style: str_style, cssclass:
'inner_box', drag: "1"});
+ $('view_mod_stock_div').innerHTML = req.responseText;
+ req.responseText.evalScripts();
}
+ }
);
}
-function show_fin_chdate(obj_id)
-{
- try
- {
+
+function show_fin_chdate(obj_id) {
+ try {
var ch = $(obj_id).options[$(obj_id).selectedIndex].value;
if (ch == 2) {
$('chdate_ext').hide();
@@ -2072,50 +1987,67 @@ function show_fin_chdate(obj_id)
alert_box(e.message);
}
}
+
/**
* tab menu for the profile parameter
*/
-function profile_show(p_div)
-{
+function profile_show(p_div) {
try {
- var div = ['profile_gen_div', 'profile_menu_div', 'profile_print_div',
'profile_gestion_div', 'profile_repo_div','profile_menu_mobile_div'];
+ var div = ['profile_gen_div', 'profile_menu_div', 'profile_print_div',
'profile_gestion_div', 'profile_repo_div', 'profile_menu_mobile_div'];
for (var r = 0; r < div.length; r++) {
$(div[r]).hide();
}
$(p_div).show();
- } catch (e)
- {
+ } catch (e) {
alert_box(e.message);
}
}
-function detail_category_show(p_div, p_dossier, p_id)
-{
+
+function detail_category_show(p_div, p_dossier, p_id) {
$(p_div).show();
waiting_box();
$('detail_category_div').innerHTML = "";
var queryString = "gDossier=" + p_dossier + "&id=" + p_id + "&op=fddetail";
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req) {
- remove_waiting_box();
- $('list_cat_div').hide();
- $('detail_category_div').innerHTML = req.responseText;
- $('detail_category_div').show();
- req.responseText.evalScripts();
- }
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ $('list_cat_div').hide();
+ $('detail_category_div').innerHTML = req.responseText;
+ $('detail_category_div').show();
+ req.responseText.evalScripts();
}
+ }
);
}
+
+/**
+ * check that the form is correct for a new category of card
+ */
+function check_new_category()
+{
+ if ( $('nom_mod_id').value.trim()=="") {
+ new Effect.Highlight('nom_mod_id',{startcolor:"#ff0000"});
+ smoke.alert('Nom catégorie obligatoire');
+ return false;
+ }
+ var TemplateCard= document.getElementsByName('FICHE_REF');
+ for (i = 0;i< TemplateCard.length;i++) {
+ if (TemplateCard[i].checked) return true;
+ }
+ new Effect.Highlight('template_category_ck',{startcolor:"#ff0000"});
+ smoke.alert('Choisissez une catégorie');
+ return false;
+}
/**
* check if the parameter is a valid a valid date or not, returns true if it
is valid otherwise
* false
* @param p_str_date the string of the date (format DD.MM.YYYY)
*/
-function check_date(p_str_date)
-{
+function check_date(p_str_date) {
var format = /^\d{2}\.\d{2}\.\d{4}$/;
if (!format.test(p_str_date)) {
return false;
@@ -2131,78 +2063,81 @@ function check_date(p_str_date)
}
}
+
/**
* get the string in the id and check if the date is valid
* @param p_id_date is the id of the element to check
* @return true if the date is valid
* @see check_date
*/
-function check_date_id(p_id_date)
-{
+function check_date_id(p_id_date) {
var str_date = $(p_id_date).value;
return check_date(str_date);
}
+
/**
*
* @param ag_id to view
* @param dossier is the folder
* @param modify : show the modify button values : 0 for no 1 for yes
*/
-function view_action(ag_id, dossier, modify)
-{
+function view_action(ag_id, dossier, modify) {
waiting_box();
layer++;
id = 'action' + layer;
querystring = 'gDossier=' + dossier + '&op=vw_action&ag_id=' + ag_id +
'&div=' + id + '&mod=' + modify;
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get',
- parameters: querystring,
- onFailure: error_box,
- onSuccess: function (req) {
- try {
- if (req.responseText === 'NOCONX') {
reconnect();return;}
- remove_waiting_box();
- var answer = req.responseXML;
- var ctl = answer.getElementsByTagName('ctl');
- if (ctl.length == 0) {
- throw 'ajax failed ctl view_action';
- }
- var ctl_txt = getNodeText(ctl[0]);
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = req.responseText;
- throw 'ajax failed html view_action';
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- var pos = fixed_position(0, 50) +
";width:90%;left:5%;";
- add_div({
- id: id,
- cssclass: "inner_box",
- style: pos
- });
- $(id).innerHTML = code_html;
- if (ctl_txt == 'ok') {
- // compute detail
- var detail=in_child(id,"follow_up_detail");
- if (detail) {
- compute_all_ledger();
- }
-
-
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: querystring,
+ onFailure: error_box,
+ onSuccess: function (req) {
+ try {
+ if (req.responseText === 'NOCONX') {
+ reconnect();
+ return;
+ }
+ remove_waiting_box();
+ var answer = req.responseXML;
+ var ctl = answer.getElementsByTagName('ctl');
+ if (ctl.length == 0) {
+ throw 'ajax failed ctl view_action';
+ }
+ var ctl_txt = getNodeText(ctl[0]);
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = req.responseText;
+ throw 'ajax failed html view_action';
+ }
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ var pos = fixed_position(0, 50) + ";width:90%;left:5%;";
+ add_div({
+ id: id,
+ cssclass: "inner_box",
+ style: pos
+ });
+ $(id).innerHTML = code_html;
+ if (ctl_txt == 'ok') {
+ // compute detail
+ var detail = in_child(id, "follow_up_detail");
+ if (detail) {
+ compute_all_ledger();
}
- code_html.evalScripts();
- } catch (e) {
- alert_box('view_action' + e.message);
+
+
}
+ code_html.evalScripts();
+ } catch (e) {
+ alert_box('view_action' + e.message);
}
}
+ }
);
}
+
/**
* filter quickly a table
* @param phrase : phrase to seach
@@ -2230,11 +2165,9 @@ function filter_table(phrase, _id, colnr, start_row) {
for (var r = start_row; r < table.rows.length; r++) {
var found = 0;
- for (var col = 0; col < aCol.length; col++)
- {
+ for (var col = 0; col < aCol.length; col++) {
var idx = aCol[col];
- if (table.rows[r].cells[idx])
- {
+ if (table.rows[r].cells[idx]) {
ele = table.rows[r].cells[idx].innerHTML.replace(/<[^>]+>/g,
"");
//var displayStyle = 'none';
if (ele.toLowerCase().indexOf(words) >= 0) {
@@ -2264,6 +2197,7 @@ function filter_table(phrase, _id, colnr, start_row) {
$('info_div').style.display = "none";
$('info_div').innerHTML = "";
}
+
/**
* filter quickly a list
* @param phrase : DOM id of the input text where we find the word to seach,
the searchable content use the className searchContent
@@ -2291,10 +2225,10 @@ function filter_list(phrase, _id) {
let e = 0;
for (e = 0; e < la_content.length; e++) {
- ele += la_content[e].innerText;
+ ele += la_content[e].innerText;
}
- console.debug (`ele = ${ele}`);
+ console.debug(`ele = ${ele}`);
if (ele.toLowerCase().indexOf(words) >= 0) {
tot_found++;
l_list.childNodes[r].style.display = 'block';
@@ -2317,7 +2251,7 @@ function filter_list(phrase, _id) {
}
/**
- * filter quickly a select
+ * filter quickly a select
* @param phrase : DOM id of the input text where we find the word to seach
* @param _id : id of the list
* @returns nothing
@@ -2339,7 +2273,7 @@ function filter_multiselect(phrase, _id) {
tot_found++;
l_list.options[r].style.display = 'block';
} else {
- l_list.options[r].style.display = 'none';
+ l_list.options[r].style.display = 'none';
}
$('info_div').style.display = "none";
$('info_div').innerHTML = "";
@@ -2354,12 +2288,12 @@ function filter_multiselect(phrase, _id) {
}
}
}
+
/**
- *
+ *
* Display the task late or for today in dashboard
*/
-function display_task(p_id)
-{
+function display_task(p_id) {
$(p_id).style.top = posY + 'px';
$(p_id).style.left = "10%";
@@ -2367,22 +2301,23 @@ function display_task(p_id)
$(p_id).style.display = 'block';
}
+
/**
- *
+ *
* Set a message in the info
*/
-function info_message(p_message)
-{
+function info_message(p_message) {
$('info_div').innerHTML = p_message;
$('info_div').style.display = "block";
}
+
/**
* hide the info box
*/
-function info_hide()
-{
+function info_hide() {
$('info_div').style.display = "none";
}
+
/**
* Show the navigator in a internal window
* @returns {undefined}
@@ -2393,34 +2328,33 @@ function ask_navigator(p_dossier) {
removeDiv('navi_div')
var queryString = "gDossier=" + p_dossier + "&op=navigator";
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: 'navi_div', style: 'top:2em;', cssclass:
'inner_box'});
- $('navi_div').innerHTML = req.responseText;
- try
- {
- req.responseText.evalScripts();
- sorttable.makeSortable($("navi_tb"));
- } catch (e)
- {
- alert_box("answer_box Impossible executer script
de la reponse\n" + e.message);
- }
-
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ add_div({id: 'navi_div', style: 'top:2em;', cssclass:
'inner_box'});
+ $('navi_div').innerHTML = req.responseText;
+ try {
+ req.responseText.evalScripts();
+ sorttable.makeSortable($("navi_tb"));
+ } catch (e) {
+ alert_box("answer_box Impossible executer script de la
reponse\n" + e.message);
}
+
}
+ }
);
} catch (e) {
info_message(e.message);
}
}
+
/**
* Display an internal windows to set the user's preference
- *
+ *
*/
function set_preference(p_dossier) {
try {
@@ -2428,34 +2362,36 @@ function set_preference(p_dossier) {
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();
- if (req.responseText === 'NOCONX') {
reconnect();return;}
- add_div({id: 'preference_div', drag: 1});
- $('preference_div').innerHTML = req.responseText;
- try
- {
- req.responseText.evalScripts();
- } catch (e)
- {
- alert_box("answer_box Impossible executer script
de la reponse\n" + e.message);
- }
-
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ if (req.responseText === 'NOCONX') {
+ reconnect();
+ return;
+ }
+ add_div({id: 'preference_div', drag: 1});
+ $('preference_div').innerHTML = req.responseText;
+ try {
+ req.responseText.evalScripts();
+ } catch (e) {
+ alert_box("answer_box Impossible executer script de la
reponse\n" + e.message);
}
+
}
+ }
);
} catch (e) {
info_message(e.message);
}
}
+
/**
* Display user's bookmark
- *
+ *
*/
function show_bookmark(p_dossier) {
try {
@@ -2465,30 +2401,29 @@ function show_bookmark(p_dossier) {
param = param.gsub('?', '');
var queryString = "gDossier=" + p_dossier + "&op=bookmark&" + param;
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: 'bookmark_div', cssclass: 'inner_box',
drag: 1});
- $('bookmark_div').innerHTML = req.responseText;
- try
- {
- req.responseText.evalScripts();
- } catch (e)
- {
- alert_box(content[53] + "\n" + e.message);
- }
-
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ add_div({id: 'bookmark_div', cssclass: 'inner_box', drag:
1});
+ $('bookmark_div').innerHTML = req.responseText;
+ try {
+ req.responseText.evalScripts();
+ } catch (e) {
+ alert_box(content[53] + "\n" + e.message);
}
+
}
+ }
);
} catch (e) {
info_message(e.message);
}
}
+
/**
* save the bookmark
*/
@@ -2497,31 +2432,30 @@ function save_bookmark() {
waiting_box();
var queryString = "op=bookmark&" + $("bookmark_frm").serialize();
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req) {
- remove_waiting_box();
- // removeDiv('bookmark_div');
- //
- $('bookmark_div').innerHTML = req.responseText;
- try
- {
- req.responseText.evalScripts();
- } catch (e)
- {
- alert_box(content[53] + "\n" + e.message);
- }
-
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ // removeDiv('bookmark_div');
+ //
+ $('bookmark_div').innerHTML = req.responseText;
+ try {
+ req.responseText.evalScripts();
+ } catch (e) {
+ alert_box(content[53] + "\n" + e.message);
}
+
}
+ }
);
} catch (e) {
info_message(e.message);
}
}
+
/**
* remove selected bookmark
*/
@@ -2530,101 +2464,95 @@ function remove_bookmark() {
waiting_box();
var queryString = "op=bookmark&" + $("bookmark_del_frm").serialize();
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req) {
- remove_waiting_box();
- $('bookmark_div').innerHTML = req.responseText;
- try
- {
- req.responseText.evalScripts();
- } catch (e)
- {
- alert_box(content[53] + "\n" + e.message);
- }
-
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ $('bookmark_div').innerHTML = req.responseText;
+ try {
+ req.responseText.evalScripts();
+ } catch (e) {
+ alert_box(content[53] + "\n" + e.message);
}
+
}
+ }
);
} catch (e) {
error_message(e.message);
}
}
+
/**
* display the error message into the div error_content_div (included into
error_div)
*@param message message to display
*@note there is no protection
*/
-function error_message(message)
-{
+function error_message(message) {
$('error_content_div').innerHTML = message;
$('error_div').style.visibility = 'visible';
}
+
/**
* show the detail of a tag and propose to save it
*/
-function show_tag(p_dossier, p_ac, p_tag_id, p_post)
-{
+function show_tag(p_dossier, p_ac, p_tag_id, p_post) {
try {
waiting_box();
var queryString = "op=tag_detail&tag=" + p_tag_id + "&gDossier=" +
p_dossier + "&ac=" + p_ac + '&form=' + p_post;
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = req.responseText;
- alert_box('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- remove_waiting_box();
- var posy = calcy(250);
- add_div({id: 'tag_div', cssclass: 'inner_box', drag:
0, style: "position:fixed;top:15%;"});
- $('tag_div').innerHTML = code_html;
- try
- {
- code_html.evalScripts();
- } catch (e)
- {
- alert_box(content[53] + "\n" + e.message);
- }
-
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = req.responseText;
+ alert_box('erreur :' + rec);
+ }
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ remove_waiting_box();
+ var posy = calcy(250);
+ add_div({id: 'tag_div', cssclass: 'inner_box', drag: 0,
style: "position:fixed;top:15%;"});
+ $('tag_div').innerHTML = code_html;
+ try {
+ code_html.evalScripts();
+ } catch (e) {
+ alert_box(content[53] + "\n" + e.message);
}
+
}
+ }
);
} catch (e) {
error_message(e.message);
}
}
-/**
+/**
* save the modified tag
*/
-function save_tag()
-{
+function save_tag() {
try {
waiting_box();
var queryString = "op=tag_save&" + $("tag_detail_frm").serialize();
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- remove_waiting_box();
- removeDiv('tag_div');
- }
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ remove_waiting_box();
+ removeDiv('tag_div');
}
+ }
);
} catch (e) {
error_message(e.message);
@@ -2633,44 +2561,44 @@ function save_tag()
return false;
}
+
/**
* Show a list of tag which can be added to the current followup document
* @param {type} p_dossier
* @param {type} ag_id
* @returns {undefined}
*/
-function action_tag_select(p_dossier, ag_id)
-{
+function action_tag_select(p_dossier, ag_id) {
try {
waiting_box();
var queryString = "ag_id=" + ag_id + "&op=tag_list&gDossier=" +
p_dossier;
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- var pos = fixed_position(35, 229);
- add_div({id: 'tag_div', style: pos, cssclass:
'inner_box tag', drag: 0});
-
- remove_waiting_box();
- $('tag_div').innerHTML = code_html;
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ var pos = fixed_position(35, 229);
+ add_div({id: 'tag_div', style: pos, cssclass: 'inner_box
tag', drag: 0});
+
+ remove_waiting_box();
+ $('tag_div').innerHTML = code_html;
}
+ }
);
} catch (e) {
error_message(e.message);
}
}
+
/**
* Add the current tag to the current ag_id
* @param {type} p_dossier
@@ -2678,68 +2606,65 @@ function action_tag_select(p_dossier, ag_id)
* @param p_isgroup g it is a group , t is a single tag
* @returns {undefined}
*/
-function action_tag_add(p_dossier, ag_id, t_id,p_isgroup)
-{
+function action_tag_add(p_dossier, ag_id, t_id, p_isgroup) {
try {
waiting_box();
- var queryString = "t_id=" + t_id + "&ag_id=" + ag_id +
"&op=tag_add&gDossier=" + p_dossier+"&isgroup="+p_isgroup;
+ var queryString = "t_id=" + t_id + "&ag_id=" + ag_id +
"&op=tag_add&gDossier=" + p_dossier + "&isgroup=" + p_isgroup;
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- remove_waiting_box();
- $('action_tag_td').innerHTML = code_html;
- removeDiv('tag_div');
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ remove_waiting_box();
+ $('action_tag_td').innerHTML = code_html;
+ removeDiv('tag_div');
}
+ }
);
} catch (e) {
error_message(e.message);
}
}
+
/**
* remove the current tag to the current ag_id
* @param {type} p_dossier
* @param {type} ag_id
* @returns {undefined}
*/
-function action_tag_remove(p_dossier, ag_id, t_id)
-{
+function action_tag_remove(p_dossier, ag_id, t_id) {
confirm_box(null, content[50], function () {
try {
waiting_box();
var queryString = "t_id=" + t_id + "&ag_id=" + ag_id +
"&op=tag_remove&gDossier=" + p_dossier;
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- remove_waiting_box();
- $('action_tag_td').innerHTML = code_html;
-
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ remove_waiting_box();
+ $('action_tag_td').innerHTML = code_html;
+
}
+ }
);
} catch (e) {
error_message(e.message);
@@ -2755,19 +2680,20 @@ function action_tag_remove(p_dossier, ag_id, t_id)
function activate_tag(p_dossier, p_tag_id) {
waiting_box();
new Ajax.Request("ajax_misc.php",
- {
- method: "get",
- parameters: {gDossier: p_dossier, op: 'tag_activate', t_id:
p_tag_id},
- onSuccess: function (req) {
- remove_waiting_box();
- var answer = req.responseText.evalJSON();
- var tagId = "tag_onoff" + p_tag_id;
- $(tagId).update(answer.code);
- $(tagId).setStyle(answer.style);
- remove_waiting_box();
- }
- })
+ {
+ method: "get",
+ parameters: {gDossier: p_dossier, op: 'tag_activate', t_id:
p_tag_id},
+ onSuccess: function (req) {
+ remove_waiting_box();
+ var answer = req.responseText.evalJSON();
+ var tagId = "tag_onoff" + p_tag_id;
+ $(tagId).update(answer.code);
+ $(tagId).setStyle(answer.style);
+ remove_waiting_box();
+ }
+ })
}
+
/**
* Display a div with available tags, this div can update the cell
* tag_choose_td
@@ -2775,52 +2701,50 @@ function activate_tag(p_dossier, p_tag_id) {
* @param {string} p_prefix is the prefix of the div
* @param {string} Calling object either Tag_Operation or Tag_Action
* @returns {undefined}
- *
+ *
*/
-function search_display_tag(p_dossier, p_prefix,p_object)
-{
+function search_display_tag(p_dossier, p_prefix, p_object) {
try {
waiting_box();
- var queryString = { op :
"search_display_tag",gDossier:p_dossier,pref:p_prefix,caller_obj:p_object};
+ var queryString = {op: "search_display_tag", gDossier: p_dossier,
pref: p_prefix, caller_obj: p_object};
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- remove_waiting_box();
- add_div({id: p_prefix + 'tag_div', style:
'left:10%;width:70%', cssclass: 'inner_box', drag: 1});
- $(p_prefix + 'tag_div').style.top = calcy(200)+"px"
- $(p_prefix + 'tag_div').style.left = 20+ "%";
- remove_waiting_box();
- $(p_prefix + 'tag_div').innerHTML = code_html;
- code_html.evalScripts();
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ remove_waiting_box();
+ add_div({id: p_prefix + 'tag_div', style:
'left:10%;width:70%', cssclass: 'inner_box', drag: 1});
+ $(p_prefix + 'tag_div').style.top = calcy(200) + "px"
+ $(p_prefix + 'tag_div').style.left = 20 + "%";
+ remove_waiting_box();
+ $(p_prefix + 'tag_div').innerHTML = code_html;
+ code_html.evalScripts();
}
+ }
);
} catch (e) {
error_message(e.message);
}
}
+
/**
* Add the selected tag (p_tag_id) to the cell of tag_choose_td in the search
screen
* in the search screen
* @param {type} p_dossier
* @param {type} p_tag_id
- * @param p_prefix is the prefix of the widget
+ * @param p_prefix is the prefix of the widget
* @param p_obj is either g for group of tag or t for a single tag
*/
-function search_add_tag(p_dossier, p_tag_id, p_prefix,p_obj)
-{
+function search_add_tag(p_dossier, p_tag_id, p_prefix, p_obj) {
try {
var clear_button = 0;
if (tag_choose === '' && p_prefix === 'search') {
@@ -2828,38 +2752,37 @@ function search_add_tag(p_dossier, p_tag_id,
p_prefix,p_obj)
clear_button = 1;
}
waiting_box();
- var queryString = "op=search_add_tag&gDossier=" + p_dossier + "&id=" +
p_tag_id + "&clear=" + clear_button + '&pref=' + p_prefix+"&obj="+p_obj;
+ var queryString = "op=search_add_tag&gDossier=" + p_dossier + "&id=" +
p_tag_id + "&clear=" + clear_button + '&pref=' + p_prefix + "&obj=" + p_obj;
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('html');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- remove_waiting_box();
- $(p_prefix + 'tag_choose_td').innerHTML = $(p_prefix +
'tag_choose_td').innerHTML + code_html;
- removeDiv(p_prefix + 'tag_div');
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('html');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ remove_waiting_box();
+ $(p_prefix + 'tag_choose_td').innerHTML = $(p_prefix +
'tag_choose_td').innerHTML + code_html;
+ removeDiv(p_prefix + 'tag_div');
}
+ }
);
} catch (e) {
error_message(e.message);
}
}
+
/**
* Clear the tags in the cell tag_choose_td of the search screen
* @returns {undefined}
*/
-function search_clear_tag(p_dossier, p_prefix)
-{
+function search_clear_tag(p_dossier, p_prefix) {
if (p_prefix != 'search') {
$(p_prefix + 'tag_choose_td').innerHTML = "";
return;
@@ -2867,54 +2790,53 @@ function search_clear_tag(p_dossier, p_prefix)
try {
var queryString = "op=search_clear_tag&gDossier=" + p_dossier +
"&pref=" + p_prefix;
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('html');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- $(p_prefix + 'tag_choose_td').innerHTML = code_html;
- tag_choose = "";
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('html');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ $(p_prefix + 'tag_choose_td').innerHTML = code_html;
+ tag_choose = "";
}
+ }
);
} catch (e) {
error_message(e.message);
}
}
-function action_show_checkbox()
-{
+
+function action_show_checkbox() {
var a = document.getElementsByName('ag_id_td');
for (var i = 0; i < a.length; i++) {
a[i].style.display = 'block';
}
}
-function action_hide_checkbox()
-{
+
+function action_hide_checkbox() {
var a = document.getElementsByName('ag_id_td');
for (var i = 0; i < a.length; i++) {
a[i].style.display = 'none';
}
}
+
/**
- *
+ *
* @param {type} obj
* object attribute : g
- * - Dossier dossier_id,
+ * - Dossier dossier_id,
* - invalue DOM Element where you can find the periode to zoom
* - outdiv ID of the target (DIV)
- *
+ *
*/
-function calendar_zoom(obj)
-{
+function calendar_zoom(obj) {
try {
waiting_box();
var per_periode = null;
@@ -2927,38 +2849,53 @@ function calendar_zoom(obj)
notitle = 1;
}
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get',
- parameters: {"notitle": notitle, "op": 'calendar_zoom',
'from': from, 'gDossier': obj.gDossier, 'in': per_periode, 'out': obj.outdiv,
'distype': obj.distype},
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- if (req.responseText === 'NOCONX') {
reconnect();return;}
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('html');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: {
+ "notitle": notitle,
+ "op": 'calendar_zoom',
+ 'from': from,
+ 'gDossier': obj.gDossier,
+ 'in': per_periode,
+ 'out': obj.outdiv,
+ 'distype': obj.distype
+ },
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ if (req.responseText === 'NOCONX') {
+ reconnect();
+ return;
+ }
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('html');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
+ }
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
- // if the target doesn't exist
- // then create it
- if (obj.outdiv === undefined) {
- obj.outdiv = 'calendar_zoom_div';
- }
- if ($(obj.outdiv) == undefined) {
- var str_style = 'top:10%;margin-left:2%;';
+ // if the target doesn't exist
+ // then create it
+ if (obj.outdiv === undefined) {
+ obj.outdiv = 'calendar_zoom_div';
+ }
+ if ($(obj.outdiv) == undefined) {
+ var str_style = 'top:10%;margin-left:2%;';
// var str_style = fixed_position(0, 120);
- add_div({id: obj.outdiv, style:
'margin-left:3%;width:94%;' + str_style, cssclass: "inner_box", drag: 0});
- }
- remove_waiting_box();
- $(obj.outdiv).innerHTML = code_html;
- $(obj.outdiv).show();
+ add_div({
+ id: obj.outdiv,
+ style: 'margin-left:3%;width:94%;' + str_style,
+ cssclass: "inner_box",
+ drag: 0
+ });
}
+ remove_waiting_box();
+ $(obj.outdiv).innerHTML = code_html;
+ $(obj.outdiv).show();
}
+ }
);
} catch (e) {
error_message('calendar_zoom ' + e.message);
@@ -2966,11 +2903,11 @@ function calendar_zoom(obj)
}
+
/**
* add a line in the form for the stock
*/
-function stock_add_row()
-{
+function stock_add_row() {
try {
style = 'class="input_text"';
var mytable = g("stock_tb").tBodies[0];
@@ -2979,8 +2916,7 @@ function stock_add_row()
var nCell = mytable.rows[1].cells.length;
var row = mytable.insertRow(line);
var nb = g("row");
- for (var e = 0; e < nCell; e++)
- {
+ for (var e = 0; e < nCell; e++) {
var newCell = row.insertCell(e);
if (mytable.rows[1].cells[e].hasClassName('num')) {
newCell.addClassName("num");
@@ -3007,32 +2943,38 @@ function stock_add_row()
}
}
-function show_description(p_id)
-{
+
+function show_description(p_id) {
$('print_desc' + p_id).hide();
$('input_desc' + p_id).show();
}
+
/**
* Display an empty card to fill , with the right card category
* @param pn_fiche_card_id : fiche_def.fd_id
* @param pn_dossier_id
*/
-function select_cat(pn_fiche_card_id, pn_dossier_id, ps_element_id)
-{
- dis_blank_card({"ctl": "div_new_card", "fd_id": pn_fiche_card_id, "op2":
"bc", "op": "card", gDossier: pn_dossier_id, "elementId": ps_element_id});
+function select_cat(pn_fiche_card_id, pn_dossier_id, ps_element_id) {
+ dis_blank_card({
+ "ctl": "div_new_card",
+ "fd_id": pn_fiche_card_id,
+ "op2": "bc",
+ "op": "card",
+ gDossier: pn_dossier_id,
+ "elementId": ps_element_id
+ });
removeDiv('select_card_div');
}
+
/**
* Show the DIV and hide the other, the array of possible DIV are
- * in a_tabs,
+ * in a_tabs,
* @param {array} a_tabs name of possible tabs
* @param {strng} p_display_tab tab to display
*/
-function show_tabs(a_tabs, p_display_tab)
-{
- try
- {
+function show_tabs(a_tabs, p_display_tab) {
+ try {
if (a_tabs.length == 0) {
console.error('a_tabs in empty');
throw ("a_tabs empty");
@@ -3048,12 +2990,12 @@ function show_tabs(a_tabs, p_display_tab)
}
}
+
/**
* Change the class of all the "LI" element of a UL or OL
* @param node of ul (this)
*/
-function unselect_other_tab(p_tab)
-{
+function unselect_other_tab(p_tab) {
try {
var other = p_tab.getElementsByTagName("li");
var i = 0;
@@ -3068,25 +3010,25 @@ function unselect_other_tab(p_tab)
alert_box('unselect_other_tab ' + e.message);
}
}
+
/**
* logout function call from ajax
* @see ajax_disconnected
* @returns {undefined}
*/
-function logout()
-{
+function logout() {
var tmp_place = window.location.href
var tmp_b = tmp_place.split('/')
var tmp_last = tmp_b.length - 1
var place_logout = tmp_place.replace(tmp_b[tmp_last], 'logout.php');
window.location.href = place_logout;
}
+
/**
* Create a div which can be used in a anchor
* @returns {undefined}
*/
-function create_anchor_up()
-{
+function create_anchor_up() {
if (document.getElementById('up_top'))
return;
@@ -3098,22 +3040,25 @@ function create_anchor_up()
parent.insertBefore(newElt, $('info_div'));
}
+
/**
* Initialize the window to show the button "UP" if the window is scrolled
* vertically
* @returns {undefined}
*/
-function init_scroll()
-{
- var up = new Element('div', {"class": "",
+function init_scroll() {
+ var up = new Element('div', {
+ "class": "",
"style": "padding:5px;left:auto;width:auto;height:
auto;display:none;position:fixed;bottom:30%;right:50px;text-align:center;font-size:20px",
id: "go_up"
});
up.innerHTML = '<a class="icon"
onclick="document.getElementById(\'go_up\').hide()"
style="float:right;font-size:70%"></a> <a class="icon" href="#up_top"
></a><a href="javascript:show_calc()" class="icon"></a>';
document.body.appendChild(up);
window.onscroll = function () {
- if ( document.getElementById("select_box_content") )
- {
document.getElementById("select_box_content").setStyle({display:"none"})};
+ if (document.getElementById("select_box_content")) {
+ document.getElementById("select_box_content").setStyle({display:
"none"})
+ }
+ ;
if (document.viewport.getScrollOffsets().top > 0) {
if ($('go_up').visible() == false) {
$('go_up').setOpacity(0.65);
@@ -3124,8 +3069,9 @@ function init_scroll()
$('go_up').hide();
}
}
-
+
}
+
/**
* Confirm a form thanks a modal dialog Box, it returns true if we agree
otherwise
* false
@@ -3139,14 +3085,12 @@ function init_scroll()
* @param p_waiting if true display a waiting box
* @returns true or false
*/
-function confirm_box(p_obj, p_message, p_callback_true,p_waiting)
-{
+function confirm_box(p_obj, p_message, p_callback_true, p_waiting) {
waiting_box();
- try {
+ try {
// Find id of the end
var name = "";
- if (p_obj != null)
- {
+ if (p_obj != null) {
if (typeof (p_obj) === "object") {
name = p_obj.id;
} else {
@@ -3155,18 +3099,18 @@ function confirm_box(p_obj, p_message,
p_callback_true,p_waiting)
}
// execute the callback function or submit the form
- if ( ! p_callback_true )
- {
+ if (!p_callback_true) {
smoke.confirm(p_message, function (e) {
if (e) {
- if (p_waiting){waiting_box();}
+ if (p_waiting) {
+ waiting_box();
+ }
$(name).submit();
}
});
} else {
- smoke.confirm(p_message, function (e)
- {
+ smoke.confirm(p_message, function (e) {
if (e) {
p_callback_true.apply();
}
@@ -3178,43 +3122,41 @@ function confirm_box(p_obj, p_message,
p_callback_true,p_waiting)
remove_waiting_box();
return false;
}
+
/**
* Alert box in CSS and HTML to replace the common javascript alert
* @param p_message message to display
* @returns void
*/
-function alert_box(p_message)
-{
+function alert_box(p_message) {
smoke.alert(p_message, undefined, {ok: 'ok', classname: "inner_box"});
}
/**
- * Colorize the rows of the table
+ * Colorize the rows of the table
* @param string p_table id of the table
*/
-function alternate_row_color(p_table)
-{
- var table_colored=$(p_table);
- if (! table_colored.tBodies[0] ) return;
+function alternate_row_color(p_table) {
+ var table_colored = $(p_table);
+ if (!table_colored.tBodies[0]) return;
var len = table_colored.tBodies[0].rows.length;
var i = 0;
var localClass = "";
for (i = 1; i < len; i++) {
localClass = (i % 2 == 0) ? "even" : "odd";
- if ( table_colored.tBodies[0].rows[i].hasClassName("odd"))
- {
+ if (table_colored.tBodies[0].rows[i].hasClassName("odd")) {
table_colored.tBodies[0].rows[i].removeClassName("odd");
}
- if (table_colored.tBodies[0].rows[i].hasClassName("even"))
- {
+ if (table_colored.tBodies[0].rows[i].hasClassName("even")) {
table_colored.tBodies[0].rows[i].removeClassName("even");
}
table_colored.tBodies[0].rows[i].addClassName(localClass);
}
}
+
/**
* Make an DOM element draggable or not
* @param object_id DOM id
@@ -3225,14 +3167,16 @@ function pin(object_id) {
aDraggableElement[object_id] = undefined;
$('pin_' + object_id).innerHTML = "";
} else {
- aDraggableElement[object_id] = new Draggable(object_id, {starteffect:
function ()
- {
- new Effect.Highlight(object_id, {scroll: window, queue:
'end'});
- }}
+ aDraggableElement[object_id] = new Draggable(object_id, {
+ starteffect: function () {
+ new Effect.Highlight(object_id, {scroll: window, queue:
'end'});
+ }
+ }
);
$('pin_' + object_id).innerHTML = "";
}
}
+
/**
* Show only the rows into the table (p_table_id) with the attribute
(p_attribute_name) and if this attribute
* has the value of (attribut_value)
@@ -3240,8 +3184,7 @@ function pin(object_id) {
* @param p_attribute_name the name of the attribute
* @param p_attribute_value the value of the attribute we want to show
*/
-function show_only_row(p_table_id, p_attribute_name, p_attribute_value)
-{
+function show_only_row(p_table_id, p_attribute_name, p_attribute_value) {
if (!$(p_table_id)) {
throw "Invalide table id"
}
@@ -3256,12 +3199,12 @@ function show_only_row(p_table_id, p_attribute_name,
p_attribute_value)
}
}
}
+
/**
- * Show all the rows into the table (p_table_id)
+ * Show all the rows into the table (p_table_id)
* @param p_table_id table id
*/
-function show_all_row(p_table_id)
-{
+function show_all_row(p_table_id) {
if (!$(p_table_id)) {
throw "Invalide table id"
}
@@ -3273,6 +3216,7 @@ function show_all_row(p_table_id)
}
}
+
/**
* @class
* Periode handling
@@ -3280,16 +3224,16 @@ function show_all_row(p_table_id)
* - id of the row of the periode row_per_(p_periode_id) , attribute
exercice =per_exercice,periode_id=p_id
* - (this.dialog)
* - id of the table with the rows : periode_tbl
- *
+ *
* Members :
* - periode_id the concerned Periode , 0 none
* - p_ledger : the id of ledger (jrn_def.jrn_def_id), 0 for global
* - pcallback : default ajax_misc.php (this.callback) with the parameter {
op:'periode',gDossier,[action:display,remove,save],p_id:p_periode_id}
- * - dossier
+ * - dossier
* - js_obj_name : name of the js object (this.js_obj_name)
- * - ajax_test : file to include for debugging
- * - dialog : id of the dialog box (update / add ) periode_box
- *
+ * - ajax_test : file to include for debugging
+ * - dialog : id of the dialog box (update / add ) periode_box
+ *
*/
var Periode = function (p_ledger) {
this.periode_id = 0;
@@ -3322,12 +3266,14 @@ var Periode = function (p_ledger) {
*/
this.remove = function (p_periode_id) {
- var js_param = {"gDossier": this.dossier,
+ var js_param = {
+ "gDossier": this.dossier,
"op": "periode",
"act": "remove",
"p_id": p_periode_id,
"ledger_id": 0,
- "js_var": this.js_obj_name};
+ "js_var": this.js_obj_name
+ };
if (this.ajax_test != "") {
js_param["TestAjaxFile"] = this.ajax_test;
}
@@ -3336,27 +3282,26 @@ var Periode = function (p_ledger) {
if (e) {
waiting_box();
new Ajax.Request(here.pcallback,
- {
- method: "POST",
- parameters: js_param,
- onSuccess: function (req) {
- var answer = req.responseText.evalJSON();
- remove_waiting_box();
- if (answer.status == "OK")
- {
- $("row_per_" + p_periode_id).remove();
- alternate_row_color("periode_tbl");
- } else {
- smoke.alert(answer.content);
- }
+ {
+ method: "POST",
+ parameters: js_param,
+ onSuccess: function (req) {
+ var answer = req.responseText.evalJSON();
+ remove_waiting_box();
+ if (answer.status == "OK") {
+ $("row_per_" + p_periode_id).remove();
+ alternate_row_color("periode_tbl");
+ } else {
+ smoke.alert(answer.content);
}
- });
+ }
+ });
}
});
};
/**
- * display a dialog box to update a periode, call save either display
+ * display a dialog box to update a periode, call save either display
* an error box or update the row.
* the name of variable is requested
* to build the right button , javascript in the html of answer
@@ -3367,28 +3312,35 @@ var Periode = function (p_ledger) {
smoke.alert("ERROR BOX_ADD")
}
- var js_param = {"gDossier": this.dossier,
+ var js_param = {
+ "gDossier": this.dossier,
"op": "periode",
"act": "show",
"p_id": p_periode_id,
"ledger_id": this.p_ledger,
- "js_var": this.js_obj_name};
+ "js_var": this.js_obj_name
+ };
if (this.ajax_test != "") {
js_param["TestAjaxFile"] = this.ajax_test;
}
var here = this;
new Ajax.Request(here.pcallback,
- {
- method: "POST",
- parameters: js_param,
- onSuccess: function (req) {
- remove_waiting_box();
- var json = req.responseText.evalJSON();
- var y = 100;
- add_div({"id": "mod_periode", "style":
"position:fixed;top:" + y + "px;width:50%", "cssclass": "inner_box", 'html':
"wait"});
- $('mod_periode').update(json.content);
- }
- });
+ {
+ method: "POST",
+ parameters: js_param,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ var json = req.responseText.evalJSON();
+ var y = 100;
+ add_div({
+ "id": "mod_periode",
+ "style": "position:fixed;top:" + y + "px;width:50%",
+ "cssclass": "inner_box",
+ 'html': "wait"
+ });
+ $('mod_periode').update(json.content);
+ }
+ });
};
/**
* close the periode, call ajax and receive a json object with the
attribute
@@ -3419,7 +3371,8 @@ var Periode = function (p_ledger) {
if (this.js_obj_name == "") {
smoke.alert("ERROR BOX_ADD")
}
- var js_param = {"gDossier": this.dossier,
+ var js_param = {
+ "gDossier": this.dossier,
"op": "periode",
"act": "close",
"ledger_id": this.p_ledger,
@@ -3432,32 +3385,32 @@ var Periode = function (p_ledger) {
var here = this;
waiting_box();
new Ajax.Request(here.pcallback,
- {
- method: "POST",
- parameters: js_param,
- onSuccess: function (req) {
- remove_waiting_box();
- var json = req.responseText.evalJSON();
- if (json.status == 'OK')
- {
- $('row_per_' + p_periode_id).update(json.content);
- new Effect.Highlight('row_per_' + p_periode_id,
{startcolor: '#FAD4D4', endcolor: '#F78082'});
- } else {
- smoke.alert(json.content);
- }
+ {
+ method: "POST",
+ parameters: js_param,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ var json = req.responseText.evalJSON();
+ if (json.status == 'OK') {
+ $('row_per_' + p_periode_id).update(json.content);
+ new Effect.Highlight('row_per_' + p_periode_id,
{startcolor: '#FAD4D4', endcolor: '#F78082'});
+ } else {
+ smoke.alert(json.content);
}
- });
+ }
+ });
};
/**
* reopen the periode
- * @parameter p_periode_id is the SQL id of parm_periode or the id of
+ * @parameter p_periode_id is the SQL id of parm_periode or the id of
* jrn_periode
*/
this.open_periode = function (p_periode_id) {
if (this.js_obj_name == "") {
smoke.alert("ERROR BOX_ADD")
}
- var js_param = {"gDossier": this.dossier,
+ var js_param = {
+ "gDossier": this.dossier,
"op": "periode",
"act": "reopen",
"ledger_id": this.p_ledger,
@@ -3472,21 +3425,23 @@ var Periode = function (p_ledger) {
if (e) {
waiting_box();
new Ajax.Request(here.pcallback,
- {
- method: "POST",
- parameters: js_param,
- onSuccess: function (req) {
- remove_waiting_box();
- var json = req.responseText.evalJSON();
- if (json.status == 'OK')
- {
- $('row_per_' +
p_periode_id).update(json.content);
- new Effect.Highlight('row_per_' +
p_periode_id, {startcolor: '#FAD4D4', endcolor: '#F78082'});
- } else {
- smoke.alert(json.content);
- }
+ {
+ method: "POST",
+ parameters: js_param,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ var json = req.responseText.evalJSON();
+ if (json.status == 'OK') {
+ $('row_per_' +
p_periode_id).update(json.content);
+ new Effect.Highlight('row_per_' +
p_periode_id, {
+ startcolor: '#FAD4D4',
+ endcolor: '#F78082'
+ });
+ } else {
+ smoke.alert(json.content);
}
- });
+ }
+ });
}
});
};
@@ -3512,7 +3467,10 @@ var Periode = function (p_ledger) {
if (answer.status == "OK") {
$('row_per_' +
js_param['periode_id']).update(answer.content);
removeDiv('mod_periode');
- new Effect.Highlight('row_per_' + js_param['periode_id'],
{startcolor: '#FAD4D4', endcolor: '#F78082'});
+ new Effect.Highlight('row_per_' + js_param['periode_id'], {
+ startcolor: '#FAD4D4',
+ endcolor: '#F78082'
+ });
} else {
smoke.alert(answer.content);
}
@@ -3522,7 +3480,7 @@ var Periode = function (p_ledger) {
};
/**
* Thanks the object DOMID sel_per_closed[] the selected periodes are
- * closed
+ * closed
* @see Periode._close
*/
this.close_selected = function () {
@@ -3537,26 +3495,27 @@ var Periode = function (p_ledger) {
}
}
if (count == 0) {
- smoke.signal("Sélectionner au moins une période", function () {},
{duration: 1500});
+ smoke.signal("Sélectionner au moins une période", function () {
+ }, {duration: 1500});
return;
}
smoke.confirm("Confirmer fermeture de " + count + " periode", function
(e) {
- if (e) {
- var a_selected = document.getElementsByName('sel_per_close[]');
- var i = 0;
- for (i = 0; i < a_selected.length; i++) {
- if (a_selected[i].checked == true) {
- // Close the selected periode
- here._close(a_selected[i].value);
+ if (e) {
+ var a_selected =
document.getElementsByName('sel_per_close[]');
+ var i = 0;
+ for (i = 0; i < a_selected.length; i++) {
+ if (a_selected[i].checked == true) {
+ // Close the selected periode
+ here._close(a_selected[i].value);
+ }
}
}
}
- }
);
};
/**
* Insert a periode into the list, always at the bottom !
- * DomId :
+ * DomId :
* # FORM id :insert_periode_frm
* # DIV id = periode_add
* # table id = periode_tbl
@@ -3621,12 +3580,11 @@ var progressBar = [];
var progressIdx = 0;
/**
- * Start the progress bar
+ * Start the progress bar
* @param {string} p_taskid id to monitor
* @param {int} p_message
*/
-function progress_bar_start(p_taskid, p_message)
-{
+function progress_bar_start(p_taskid, p_message) {
try {
progressIdx++;
// block the window
@@ -3638,7 +3596,11 @@ function progress_bar_start(p_taskid, p_message)
add_div({id: "blocking" + progressIdx, cssclass: "smoke-base
smoke-visible "});
- add_div({id: "message" + progressIdx, cssclass: "inner_box", style:
"z-index:1000;position:fixed;top:30%;width:40%;left:30%"});
+ add_div({
+ id: "message" + progressIdx,
+ cssclass: "inner_box",
+ style: "z-index:1000;position:fixed;top:30%;width:40%;left:30%"
+ });
$("message" + progressIdx).update('<h3>' + content[65] + '</h3>' +
message);
// Create a div
add_div({id: "progressDiv" + progressIdx, cssclass: "progressbar",
html: '<span id="progressValue">0</span>'});
@@ -3650,20 +3612,18 @@ function progress_bar_start(p_taskid, p_message)
}
/**
- * Check every second the status
+ * Check every second the status
* @param {integer} p_idx idx of progressbar
* @param {string} p_taskid id to monitor
*/
-function progress_bar_check(p_idx, p_taskid)
-{
+function progress_bar_check(p_idx, p_taskid) {
try {
new Ajax.Request("ajax_misc.php", {
parameters: {gDossier: 0, task_id: p_taskid, op: "progressBar"},
method: "get",
onSuccess: function (req) {
- try
- {
+ try {
var answer = req.responseText.evalJSON();
var progress_div = $("progressDiv" + progressIdx);
var a_child = progress_div.childNodes;
@@ -3707,13 +3667,16 @@ function progress_bar_check(p_idx, p_taskid)
* In the user's setting box, update the period list with the choosen exercice
* @param {int} p_dossier
*/
-function updatePeriodePreference(p_dossier)
-{
+function updatePeriodePreference(p_dossier) {
waiting_box();
var exercice = $('exercice_setting').value;
- new Ajax.Updater('setting_period', "ajax_misc.php", {method: "get",
parameters: {"op": "pref_exercice", "gDossier": p_dossier, "exercice":
exercice}});
+ new Ajax.Updater('setting_period', "ajax_misc.php", {
+ method: "get",
+ parameters: {"op": "pref_exercice", "gDossier": p_dossier, "exercice":
exercice}
+ });
remove_waiting_box();
}
+
/**
* Update the from and to periode list when changing the exercice
* @param {int} p_dossier
@@ -3722,29 +3685,36 @@ function updatePeriodePreference(p_dossier)
* @param {type} p_periode_to id of the ending periode
* @param {type} p_last possible value = 1 to show last date or 0 the first
*/
-function updatePeriode(p_dossier, p_exercice, p_periode_from, p_periode_to,
p_last)
-{
+function updatePeriode(p_dossier, p_exercice, p_periode_from, p_periode_to,
p_last) {
waiting_box();
var exercice = $(p_exercice).value;
- new Ajax.Updater(p_periode_from, "ajax_misc.php",
- { method: "get",
- parameters: {op: "periode_change", "gDossier": p_dossier,
"exercice": exercice,
- field: p_periode_from, "type": "from", "last": p_last}});
- if ( p_periode_to && p_last ) {
- new Ajax.Updater(p_periode_to, "ajax_misc.php",
- { method: "get",
- parameters: {op: "periode_change", "gDossier": p_dossier,
"exercice": exercice,
- field: p_periode_to, "type": "to", "last": p_last}});
+ new Ajax.Updater(p_periode_from, "ajax_misc.php",
+ {
+ method: "get",
+ parameters: {
+ op: "periode_change", "gDossier": p_dossier, "exercice":
exercice,
+ field: p_periode_from, "type": "from", "last": p_last
+ }
+ });
+ if (p_periode_to && p_last) {
+ new Ajax.Updater(p_periode_to, "ajax_misc.php",
+ {
+ method: "get",
+ parameters: {
+ op: "periode_change", "gDossier": p_dossier, "exercice":
exercice,
+ field: p_periode_to, "type": "to", "last": p_last
+ }
+ });
}
remove_waiting_box();
}
+
/**
- *
+ *
* @param {string} p_domid DOM id of the span containing the padlock icon
* @returns none
*/
-function toggle_lock(p_domid)
-{
+function toggle_lock(p_domid) {
var padlock = document.getElementById(p_domid);
if (padlock == null) {
console.error("domid invalid");
@@ -3762,27 +3732,26 @@ function toggle_lock(p_domid)
}
+
/**
- *
+ *
* @returns {undefined}
*/
-function show_ledger_fin_currency()
-{
- var ledger=$('p_jrn').value;
- var dossier=$('gDossier').value;
+function show_ledger_fin_currency() {
+ var ledger = $('p_jrn').value;
+ var dossier = $('gDossier').value;
// $('ledger_currency').
- var a=new Ajax.Updater("ledger_currency",
- "ajax_misc.php",
- {
- parameters:
{"op":"currencyCode","gDossier":dossier,"ledger":ledger}
- });
+ var a = new Ajax.Updater("ledger_currency",
+ "ajax_misc.php",
+ {
+ parameters: {"op": "currencyCode", "gDossier": dossier, "ledger":
ledger}
+ });
}
-/***
- * Update Preference, applied the new CSS
+/***
+ * Update Preference, applied the new CSS
*/
-function updatePreference()
-{
+function updatePreference() {
try {
waiting_box();
var param = $('preference_frm').serialize() +
"&op=preference&action=save";
@@ -3791,17 +3760,16 @@ function updatePreference()
method: "post",
parameters: param,
onSuccess: function (req) {
- var answer = req.responseText.evalJSON();
- // $('pagestyle').setAttribute('href', style.style);
- if ( answer['psw']=='NOK') {
+ var answer = req.responseText.evalJSON();
+ // $('pagestyle').setAttribute('href', style.style);
+ if (answer['psw'] == 'NOK') {
smoke.alert(answer['msg']);
} else {
removeDiv('preference_div');
}
}
});
- } catch (e)
- {
+ } catch (e) {
smoke.alert(content[48] + e.message);
}
remove_waiting_box();
@@ -3814,8 +3782,7 @@ function updatePreference()
* @param string p_value_domid : id of domElement containing 1 or 0
* @see param_jrn.php
*/
-function toggle_onoff(icon_domid, p_value_domid)
-{
+function toggle_onoff(icon_domid, p_value_domid) {
if ($(p_value_domid).value == 0) {
$(p_value_domid).value = 1;
$(icon_domid).innerHTML = '';
@@ -3826,14 +3793,14 @@ function toggle_onoff(icon_domid, p_value_domid)
$(icon_domid).style = 'color:red';
}
}
+
/**
* turn on or off , set an domElement to 1 or 0 and change the icon
* @param string icon_domid : id of the domElement which must be changed
* @param string p_value_domid : id of domElement containing 1 or 0
* @see param_jrn.php
*/
-function toggle_checkbox_onoff(icon_domid, p_value_domid)
-{
+function toggle_checkbox_onoff(icon_domid, p_value_domid) {
if ($(p_value_domid).value == 0) {
$(p_value_domid).value = 1;
@@ -3843,15 +3810,15 @@ function toggle_checkbox_onoff(icon_domid,
p_value_domid)
$(icon_domid).innerHTML = '';
}
}
+
/**
* in CFGLED show or hide the row depending if the warning is enable or not
- *
+ *
* @param {type} p_enable
* @param {type} p_row
* @returns {undefined}
*/
-function toggle_row_warning_enable(p_enable, p_row)
-{
+function toggle_row_warning_enable(p_enable, p_row) {
if ($(p_enable).value == 1) {
$(p_row).show();
} else {
@@ -3866,17 +3833,16 @@ function toggle_row_warning_enable(p_enable, p_row)
* @param p_json2 object 2 to merge
* @returns new json object
*/
-function json_concat(p_json1,p_json2)
-{
+function json_concat(p_json1, p_json2) {
- var result = {};
- for (var key in p_json1) {
- result[key] = p_json1[key];
- }
- for (var key in p_json2) {
- result[key] = p_json2[key];
- }
- return result;
+ var result = {};
+ for (var key in p_json1) {
+ result[key] = p_json1[key];
+ }
+ for (var key in p_json2) {
+ result[key] = p_json2[key];
+ }
+ return result;
}
@@ -3886,22 +3852,21 @@ function json_concat(p_json1,p_json2)
* @param string p_click is the DOM id of the checkbox you clicked
* @param string p_name is the name of all the checkbox to uncheck
*/
-function uncheck_other(p_click,p_name)
-{
- var aCheckbox=document.getElementsByName(p_name);
+function uncheck_other(p_click, p_name) {
+ var aCheckbox = document.getElementsByName(p_name);
if (aCheckbox.length == 0) return;
- var i=0;
- for (i=0;i<aCheckbox.length;i++) {
- aCheckbox[i].checked=false;
+ var i = 0;
+ for (i = 0; i < aCheckbox.length; i++) {
+ aCheckbox[i].checked = false;
}
- p_click.checked=true;
+ p_click.checked = true;
}
+
/**
* @class operation Tag Manage the tag with operations
* @returns {undefined}
*/
-var operation_tag = function (p_div)
-{
+var operation_tag = function (p_div) {
this.ctl = p_div;
/**
* Show a list of tag which can be added to the current followup document
@@ -3909,36 +3874,34 @@ var operation_tag = function (p_div)
* @param {type} jrn_id
* @returns {undefined}
*/
- this.select = function (p_dossier, p_jrn_id)
- {
+ this.select = function (p_dossier, p_jrn_id) {
try {
waiting_box();
- var queryString =
{jrn_id:p_jrn_id,op:"operation_tag_select",gDossier:p_dossier,ctl:this.ctl};
+ var queryString = {jrn_id: p_jrn_id, op: "operation_tag_select",
gDossier: p_dossier, ctl: this.ctl};
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- remove_waiting_box();
-
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- var pos = fixed_position(35, 229);
- add_div({id: 'tag_div', style: pos, cssclass:
'inner_box tag', drag: 0});
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ remove_waiting_box();
- remove_waiting_box();
- $('tag_div').innerHTML = code_html;
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ var pos = fixed_position(35, 229);
+ add_div({id: 'tag_div', style: pos, cssclass:
'inner_box tag', drag: 0});
+
+ remove_waiting_box();
+ $('tag_div').innerHTML = code_html;
}
+ }
);
} catch (e) {
error_message(e.message);
@@ -3952,33 +3915,33 @@ var operation_tag = function (p_div)
* @param p_isgroup g it is a group , t is a single tag
* @returns void
*/
- this.add = function (p_dossier, p_jrn_id, t_id, p_isgroup)
- {
+ this.add = function (p_dossier, p_jrn_id, t_id, p_isgroup) {
try {
waiting_box();
- var queryString =
{t_id:t_id,jrn_id:p_jrn_id,op:"operation_tag_add",
- gDossier:p_dossier,ctl:this.ctl,isgroup:p_isgroup};
- var ctl=this.ctl;
+ var queryString = {
+ t_id: t_id, jrn_id: p_jrn_id, op: "operation_tag_add",
+ gDossier: p_dossier, ctl: this.ctl, isgroup: p_isgroup
+ };
+ var ctl = this.ctl;
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get', parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- remove_waiting_box();
- $('operation_tag_td'+ctl).innerHTML = code_html;
- removeDiv('tag_div');
+ "ajax_misc.php",
+ {
+ method: 'get', parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ remove_waiting_box();
+ $('operation_tag_td' + ctl).innerHTML = code_html;
+ removeDiv('tag_div');
}
+ }
);
} catch (e) {
error_message(e.message);
@@ -3990,39 +3953,43 @@ var operation_tag = function (p_div)
* @param {int} ag_id
* @returns void
*/
- this.remove = function (p_dossier, p_jrn_id, t_id)
- {
- var ctl=this.ctl;
+ this.remove = function (p_dossier, p_jrn_id, t_id) {
+ var ctl = this.ctl;
confirm_box(null, content[50], function () {
try {
waiting_box();
- var queryString =
{t_id:t_id,jrn_id:p_jrn_id,op:"operation_tag_remove",gDossier:p_dossier,ctl:ctl};
+ var queryString = {
+ t_id: t_id,
+ jrn_id: p_jrn_id,
+ op: "operation_tag_remove",
+ gDossier: p_dossier,
+ ctl: ctl
+ };
var action = new Ajax.Request(
- "ajax_misc.php",
- {
- method: 'get',
- parameters: queryString,
- onFailure: ajax_misc_failure,
- onSuccess: function (req, j) {
- var answer = req.responseXML;
- var html = answer.getElementsByTagName('code');
- if (html.length === 0)
- {
- var rec = unescape_xml(req.responseText);
- error_message('erreur :' + rec);
- }
- var code_html = getNodeText(html[0]);
- code_html = unescape_xml(code_html);
- remove_waiting_box();
- $('operation_tag_td'+ctl).innerHTML =
code_html;
-
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req, j) {
+ var answer = req.responseXML;
+ var html = answer.getElementsByTagName('code');
+ if (html.length === 0) {
+ var rec = unescape_xml(req.responseText);
+ error_message('erreur :' + rec);
}
+ var code_html = getNodeText(html[0]);
+ code_html = unescape_xml(code_html);
+ remove_waiting_box();
+ $('operation_tag_td' + ctl).innerHTML = code_html;
+
}
+ }
);
- } catch (e) {
- error_message(e.message);
- }
- });
+ } catch (e) {
+ error_message(e.message);
+ }
+ });
};
};
@@ -4032,23 +3999,24 @@ var operation_tag = function (p_div)
* @param p_max_size MAX_FILE_SIZE constant (see config.inc.php or
constant.php)
* @returns true if the sum of filesize is greater than the limit
*/
-function check_file_size(p_object,p_max_size)
-{
- var sum_file=0;
- for(var i=0;i<p_object.elements.length;i++) {
- var a=p_object.elements[i];
+function check_file_size(p_object, p_max_size) {
+ var sum_file = 0;
+ for (var i = 0; i < p_object.elements.length; i++) {
+ var a = p_object.elements[i];
- if ( p_object.elements[i].getAttribute('type')=="file" )
- {
- for (let x = 0; x < p_object.elements[i].files.length ; x++) {
- if( p_object.elements[i].files[x]){
+ if (p_object.elements[i].getAttribute('type') == "file") {
+ for (let x = 0; x < p_object.elements[i].files.length; x++) {
+ if (p_object.elements[i].files[x]) {
- sum_file+=p_object.elements[i].files[x].size;
+ sum_file += p_object.elements[i].files[x].size;
}
}
}
}
- if ( sum_file > p_max_size) {alert_box(content[78]);return false;}
+ if (sum_file > p_max_size) {
+ alert_box(content[78]);
+ return false;
+ }
return true;
}
@@ -4059,82 +4027,86 @@ function check_file_size(p_object,p_max_size)
* @param p_info name of the waiting box
* @returns true if file size is less than the maximum
*/
-function check_receipt_size(p_max_size,p_info)
-{
- document.getElementById(p_info).style.display="inline";
-
- var f=document.getElementById("receipt_id");
- if ( f && f.files[0] && f.files[0].size > parseFloat(p_max_size)) {
- document.getElementById("receipt_info_id").innerHTML=content[78];
- document.getElementById(p_info).style.display="none";
+function check_receipt_size(p_max_size, p_info) {
+ document.getElementById(p_info).style.display = "inline";
+
+ var f = document.getElementById("receipt_id");
+ if (f && f.files[0] && f.files[0].size > parseFloat(p_max_size)) {
+ document.getElementById("receipt_info_id").innerHTML = content[78];
+ document.getElementById(p_info).style.display = "none";
return false;
}
- document.getElementById("receipt_info_id").innerHTML="";
+ document.getElementById("receipt_info_id").innerHTML = "";
document.getElementById("form_file").submit();
return true;
}
+
/**
* toggle size of a div : fullsize or normal
- *
+ *
*/
function full_size(p_div) {
- div_dom=document.getElementById(p_div);
- if ( ! div_dom ) return;
- if ( div_dom.hasClassName('fullsize')) {
-
div_dom.removeClassName('fullsize');$('size_'+p_div).innerHTML='';
+ div_dom = document.getElementById(p_div);
+ if (!div_dom) return;
+ if (div_dom.hasClassName('fullsize')) {
+ div_dom.removeClassName('fullsize');
+ $('size_' + p_div).innerHTML = '';
} else {
- div_dom.addClassName('fullsize');$('size_'+p_div).innerHTML='';
+ div_dom.addClassName('fullsize');
+ $('size_' + p_div).innerHTML = '';
}
-
+
}
/**
* download a document from an url
*/
-function download_document(p_url)
-{
+function download_document(p_url) {
waiting_box();
- document.location=p_url;
+ document.location = p_url;
remove_waiting_box();
}
+
/**
* download a document from a form
*/
-function download_document_form(p_form_id)
-{
+function download_document_form(p_form_id) {
waiting_box();
- var url="export.php?"+$(p_form_id).serialize();
- document.location=url;
- remove_waiting_box();
- return false;
+ var url = "export.php?" + $(p_form_id).serialize();
+ document.location = url;
+ remove_waiting_box();
+ return false;
}
+
/**
* Pause a javascript
*/
-function pausecomp(millis)
- {
- var date = new Date();
- var curDate = null;
- do { curDate = new Date(); }
- while(curDate-date < millis);
+function pausecomp(millis) {
+ var date = new Date();
+ var curDate = null;
+ do {
+ curDate = new Date();
+ }
+ while (curDate - date < millis);
}
+
/**
* propose to reconnect
* @returns {undefined}
*/
-function reconnect(){
+function reconnect() {
remove_waiting_box();
- new Ajax.Request('ajax_misc.php',{
- method:'get',
- parameters:{op:"disconnect"},
- onSuccess:function (req) {
- var pos="position:fixed;top:0px;width:95%;height:95%";
- var div= add_div({
- 'id':"reconnect_bx",
- cssclass:"inner_box",
- style:pos
- });
- div.innerHTML=req.responseText;
+ new Ajax.Request('ajax_misc.php', {
+ method: 'get',
+ parameters: {op: "disconnect"},
+ onSuccess: function (req) {
+ var pos = "position:fixed;top:0px;width:95%;height:95%";
+ var div = add_div({
+ 'id': "reconnect_bx",
+ cssclass: "inner_box",
+ style: pos
+ });
+ div.innerHTML = req.responseText;
}
});
}
@@ -4143,12 +4115,14 @@ function reconnect(){
* enlarge an INPUT TEXT
*
*/
-function enlarge_text(p_domid,p_size) {
+function enlarge_text(p_domid, p_size) {
try {
- var element= document.getElementById(p_domid);
- if ( !element) {console.error (`enlarge text doesn't exist
[${p_domid}]`)}
- var current_size=parseInt(element.getAttribute('size'));
- element.setAttribute('size',current_size+parseInt(p_size));
+ var element = document.getElementById(p_domid);
+ if (!element) {
+ console.error(`enlarge text doesn't exist [${p_domid}]`)
+ }
+ var current_size = parseInt(element.getAttribute('size'));
+ element.setAttribute('size', current_size + parseInt(p_size));
} catch (e) {
console.error(`enlarge text fails with ${p_domid} ${p_size} `);
console.error(e.message);
@@ -4161,44 +4135,42 @@ function enlarge_text(p_domid,p_size) {
* @brief display a box with the customer , supplier or event for today or late
* @param p_detail , what to do
*/
-function event_display_detail(p_dossier,p_detail) {
-
- try
- {
- // create div if not exists
- var dgbox="situation_detail_div";
- waiting_box();
-
- var
queryString={gDossier:p_dossier,op:'event_display_detail','what':p_detail};
- // call ajax and update content of the div
- var action = new Ajax.Request(
- "ajax_misc.php" ,
- {
- method:'get',
- parameters:queryString,
- onFailure:ajax_misc_failure,
- onSuccess:function(req){
- remove_waiting_box();
- if (req.responseText == 'NOCONX') {
- reconnect();
- return;
- }
- if ( ! document.getElementById(dgbox)) {
- var div_style="position:fixed;"+";top:30%";
-
add_div({id:dgbox,cssclass:'inner_box',html:loading(),style:div_style,drag:true});
+function event_display_detail(p_dossier, p_detail) {
- }
+ try {
+ // create div if not exists
+ var dgbox = "situation_detail_div";
+ waiting_box();
+
+ var queryString = {gDossier: p_dossier, op: 'event_display_detail',
'what': p_detail};
+ // call ajax and update content of the div
+ var action = new Ajax.Request(
+ "ajax_misc.php",
+ {
+ method: 'get',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ if (req.responseText == 'NOCONX') {
+ reconnect();
+ return;
+ }
+ if (!document.getElementById(dgbox)) {
+ var div_style = "position:fixed;" + ";top:30%";
+ add_div({id: dgbox, cssclass: 'inner_box', html:
loading(), style: div_style, drag: true});
+
+ }
-
$(dgbox).update(req.responseText)
+ $(dgbox).update(req.responseText)
- }
- }
- );
- event_display_main(p_dossier);
- }catch( e)
- {
- alert_box(e.message);
- }
+ }
+ }
+ );
+ event_display_main(p_dossier);
+ } catch (e) {
+ alert_box(e.message);
+ }
}
/**
@@ -4206,33 +4178,31 @@ function event_display_detail(p_dossier,p_detail) {
* @param p_dossier
*/
function event_display_main(p_dossier) {
- try
- {
- waiting_box();
- var dgbox="situation_div";
- var
queryString={gDossier:p_dossier,op:'event_display_detail','what':"main_display"};
- var action = new Ajax.Request(
- "ajax_misc.php" ,
- {
- method:'GET',
- parameters:queryString,
- onFailure:ajax_misc_failure,
- onSuccess:function(req){
- remove_waiting_box();
- if (req.responseText == 'NOCONX') {
- reconnect();
- return;
- }
-
- $(dgbox).update(req.responseText)
-
- }
- }
- );
- }catch( e)
- {
- alert_box(e.message);
- }
+ try {
+ waiting_box();
+ var dgbox = "situation_div";
+ var queryString = {gDossier: p_dossier, op: 'event_display_detail',
'what': "main_display"};
+ var action = new Ajax.Request(
+ "ajax_misc.php",
+ {
+ method: 'GET',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ if (req.responseText == 'NOCONX') {
+ reconnect();
+ return;
+ }
+
+ $(dgbox).update(req.responseText)
+
+ }
+ }
+ );
+ } catch (e) {
+ alert_box(e.message);
+ }
}
/**
@@ -4240,45 +4210,45 @@ function event_display_main(p_dossier) {
* @param p_pass_domid DOM ID of the INPUT element with the password
* @param p_result_domid DOM ID of the element to update
*/
-function check_password_strength(p_pass_domid,p_result_domid,details)
-{
- try
- {
- if ( $(p_pass_domid).value=="") {
$(p_result_domid).update("");return;}
- var queryString= {
- 'op':"password_chk"
- ,pass:$(p_pass_domid).value
- };
- var action = new Ajax.Request(
- "ajax_misc.php" ,
- {
- method:'GET',
- parameters:queryString,
- onFailure:ajax_misc_failure,
- onSuccess:function(req){
- remove_waiting_box();
- if (req.responseText == 'NOCONX') {
- return;
- }
- var answer=req.responseJSON;
- console.debug(answer);
- if (answer['password']=='nok') {
-
-
$(p_pass_domid).setStyle("background-color:red");
- if ( details) {
- $(p_result_domid).update(answer['msg'])
- }
- return;
- }
- $(p_pass_domid).setStyle("background-color:
lightgreen");
- $(p_result_domid).update("")
- }
- }
- );
- }catch( e)
- {
- alert_box(e.message);
- }
+function check_password_strength(p_pass_domid, p_result_domid, details) {
+ try {
+ if ($(p_pass_domid).value == "") {
+ $(p_result_domid).update("");
+ return;
+ }
+ var queryString = {
+ 'op': "password_chk"
+ , pass: $(p_pass_domid).value
+ };
+ var action = new Ajax.Request(
+ "ajax_misc.php",
+ {
+ method: 'GET',
+ parameters: queryString,
+ onFailure: ajax_misc_failure,
+ onSuccess: function (req) {
+ remove_waiting_box();
+ if (req.responseText == 'NOCONX') {
+ return;
+ }
+ var answer = req.responseJSON;
+ console.debug(answer);
+ if (answer['password'] == 'nok') {
+
+ $(p_pass_domid).setStyle("background-color:red");
+ if (details) {
+ $(p_result_domid).update(answer['msg'])
+ }
+ return;
+ }
+ $(p_pass_domid).setStyle("background-color: lightgreen");
+ $(p_result_domid).update("")
+ }
+ }
+ );
+ } catch (e) {
+ alert_box(e.message);
+ }
}
/**
diff --git a/include/ajax/ajax_fiche_def_detail.php
b/include/ajax/ajax_fiche_def_detail.php
index bebf233cb..891295ccc 100644
--- a/include/ajax/ajax_fiche_def_detail.php
+++ b/include/ajax/ajax_fiche_def_detail.php
@@ -28,19 +28,11 @@
if ( ! defined ('ALLOWED') ) die('Appel direct ne sont pas permis');
global $g_user;
-$g_user->can_request(FICCAT,0);
+if ( $g_user->check_action(FICCAT) == 0 && $g_user->check_module("CCARD") == 0
)
+ return;
+
$http=new HttpInput();
$id=$http->get("id","number");
$fd=new Fiche_Def($cn,$id);
-if ( $id > 0 )
-{
-
- echo $fd->input_detail();
- echo HtmlInput::button("retour_b", _("Retour à la liste"),
"onclick=\"$('detail_category_div').hide();$('list_cat_div').show()\"");
-}
-else
-{
- $fd->input_new();
-
-}
+$fd->input_new();
?>
diff --git a/include/cfgfiche.inc.php b/include/cfgfiche.inc.php
index 7e45027b6..da3468b4f 100644
--- a/include/cfgfiche.inc.php
+++ b/include/cfgfiche.inc.php
@@ -88,23 +88,21 @@ if ( $action == 'remove_cat' )
/*******************************************************************************************/
if ( isset ($_POST['change_name']))
{
- if (isset ($_REQUEST['label']) )
- {
- $fiche_def=new Fiche_Def($cn,$_REQUEST['fd_id']);
- $label=$http->request("label");
- $fiche_def->SaveLabel($label);
- if ( isset($_REQUEST['create']))
- {
- $fiche_def->set_autocreate(true);
- }
- else
- {
- $fiche_def->set_autocreate(false);
- }
- $fiche_def->save_class_base($http->request('class_base'));
- $fiche_def->save_description($http->request('fd_description'));
+ $fiche_def=new Fiche_Def($cn,$http->request('fd_id','number'));
+ $label=$http->request("nom_mod");
+ $fiche_def->SaveLabel($label);
+ if ( isset($_REQUEST['create']))
+ {
+ $fiche_def->set_autocreate(true);
+ }
+ else
+ {
+ $fiche_def->set_autocreate(false);
}
+ $fiche_def->save_class_base($http->request('class_base'));
+ $fiche_def->save_description($http->request('fd_description'));
+
echo $fiche_def->input_detail();
echo $retour;
return;
@@ -152,8 +150,15 @@ if ( isset($_POST['add_modele']))
alert(_('Doublon'));
}
}
+$fiche_def_id=$http->request("fd","number",0);
$fiche_def=new Fiche_def($cn);
+if ( $fiche_def_id != 0 ){
+ $fiche_def->id=$fiche_def_id;
+ $fiche_def->load();
+ echo $fiche_def->input_detail();
+} elseif ($fiche_def_id == 0)
+{
+ $fiche_def->display();
-$fiche_def->display();
-$dossier=Dossier::id();
+}
?>
diff --git a/include/class/fiche_def.class.php
b/include/class/fiche_def.class.php
index d48fd6767..9e4375a5c 100644
--- a/include/class/fiche_def.class.php
+++ b/include/class/fiche_def.class.php
@@ -56,19 +56,7 @@ class Fiche_Def
*/
function input ()
{
- $ref=$this->cn->get_array("select * from fiche_def_ref order by
frd_text");
- $iradio=new IRadio();
- /* the accounting item */
- $class_base=new IPoste('class_base');
- $class_base->set_attribute('ipopup','ipop_account');
- $class_base->set_attribute('account','class_base');
- $class_base->set_attribute('label','acc_label');
- $f_class_base=$class_base->input();
- $fd_description=new ITextarea('fd_description');
- $fd_description->width=80;
- $fd_description->heigh=4;
- $fd_description->style='class="itextarea"
style="margin-left:0px;vertical-align:text-top"';
- require_once NOALYSS_TEMPLATE.'/fiche_def_input.php';
+
return;
}
@@ -131,7 +119,7 @@ class Fiche_Def
$this->label=$row['fd_label'];
$this->class_base=$row['fd_class_base'];
$this->fiche_def=$row['frd_id'];
- $this->create_account=$row['fd_create_account'];
+ $this->create_account=($row['fd_create_account']=='f')?false:true;
$this->fd_description=$row['fd_description'];
}
/*!
@@ -196,7 +184,7 @@ frd_text , fd_description FROM fiche_def join fiche_def_ref
on (fiche_def.frd_id
$order
");
- require_once NOALYSS_TEMPLATE.'/fiche_def_list.php';
+ require_once NOALYSS_TEMPLATE.'/fiche_def-display.php';
}
/*!
* \brief Add a fiche category thanks the element from the array
@@ -220,7 +208,7 @@ $order
$http->set_array($array);
$p_nom_mod = $http->extract('nom_mod',"string","");
$p_fd_description = $http->extract('fd_description',"string", "");
- $p_class_base=$http->extract('class_base',"string", "");
+
$p_fiche_def= $http->extract('FICHE_REF',"string", "");
$p_create= $http->extract('create',"string", "off");
@@ -253,6 +241,12 @@ $order
alert (_('Catégorie existante'));
return 1;
}
+ $default_acc=$this->cn->get_value("select frd_class_base from
fiche_def_ref where frd_id=$1",[$p_fiche_def]);
+
+ // if the account is empty, takes the account of the template from
fiche_def_ref
+ $p_class_base=$http->extract('class_base',"string", "");
+
$p_class_base=(noalyss_trim($p_class_base)=='')?$default_acc:$p_class_base;
+
// Set the value of fiche_def.fd_create_account
// automatic creation for 'poste comptable'
if ( $p_create == "on" && noalyss_strlentrim($p_class_base) != 0)
@@ -457,41 +451,7 @@ $order
echo $bar;
}
- /*!\brief show input for the basic attribute : label, class_base,
create_account
- * use only when we want to update
- *
- *\return HTML string with the form
- */
- function input_base()
- {
- $r="";
- $r.=_('Label');
- $label=new IText('label',$this->label);
- $r.=$label->input();
- $r.='<br>';
- /* the accounting item */
- $class_base=new IPoste('class_base',$this->class_base);
- $class_base->set_attribute('ipopup','ipop_account');
- $class_base->set_attribute('account','class_base');
- $class_base->set_attribute('label','acc_label');
- $fd_description=new ITextarea('fd_description',$this->fd_description);
- $fd_description->width=80;
- $fd_description->heigh=4;
- $fd_description->style='class="itextarea"
style="margin-left:0px;vertical-align:text-top"';
-
- $r.=_('Poste Comptable de base').' : ';
- $r.=$class_base->input();
- $r.='<span id="acc_label"></span><br>';
- $r.='<br/>';
- $r.=" Description ".$fd_description->input();
- /* auto Create */
- $r.='<br/>';
- $ck=new ICheckBox('create');
- $ck->selected=($this->create_account=='f')?false:true;
- $r.=_('Chaque fiche aura automatiquement son propre poste comptable :
');
- $r.=$ck->input();
- return $r;
- }
+
/*!\brief Display all the attribut of the fiche_def
*\param $str give the action possible values are remove, empty
*/
@@ -607,6 +567,7 @@ $order
$Res=$this->cn->exec_sql($sql,array($t,$this->id));
+
}
/*!\brief Save the class base
* \param $p_label label
@@ -770,7 +731,8 @@ $order
}
return $array;
}
- /*!\brief count the number of fiche_def (category) which has the frd_id
(type of category)
+ /*!
+ * \brief count the number of fiche_def (category) which has the frd_id
(type of category)
*\param $p_frd_id is the frd_id in constant.php the FICHE_TYPE_
*\return the number of cat. of card of the given type
*\see constant.php
@@ -780,6 +742,11 @@ $order
$ret=$this->cn->count_sql("select fd_id from fiche_def where
frd_id=$1",array($p_frd_id));
return $ret;
}
+
+ /**
+ * @brief ask for detail
+ * @return string
+ */
function input_detail()
{
$r = "";
@@ -790,16 +757,32 @@ $order
$r.= '<H2 class="info">' . $this->id . " " . h($this->label) .
'</H2>';
$r.='<fieldset><legend>'._('Données générales').'</legend>';
- /* show the values label class_base and create account */
- $r.='<form method="post">';
- $r.=dossier::hidden();
- $r.=HtmlInput::hidden("fd_id", $this->id);
- $r.=HtmlInput::hidden("p_action", "fiche");
- $r.= $this->input_base();
- $r.='<hr>';
- $r.=HtmlInput::submit('change_name', _('Sauver'));
- $r.='</form>';
+ $nom_mod=$this->label;
+ /* the accounting item */
+ $class_base=new IPoste('class_base');
+ $class_base->set_attribute('ipopup','ipop_account');
+ $class_base->set_attribute('account','class_base');
+ $class_base->set_attribute('label','acc_label');
+ $class_base->value=$this->class_base;
+ $f_class_base=$class_base->input();
+ $fd_description=new ITextarea('fd_description');
+ $fd_description->width=80;
+ $fd_description->heigh=4;
+ $fd_description->style='class="itextarea form-control input_text"
style="margin-left:0px;vertical-align:text-top"';
+ $fd_description->value=$this->fd_description;
+ $r.='<form method="post">';
+ $r.=\HtmlInput::hidden('fd_id',$this->id);
+ ob_start();
+ require_once NOALYSS_TEMPLATE.'/fiche_def_input.php';
+ $r.=ob_get_contents();
+ ob_clean();
+ $r.=HtmlInput::submit('change_name', _('Sauver'));
+ $r.='</form>';
+
+ require NOALYSS_TEMPLATE.'/fiche_def-input_detail.php';
+
$r.='</fieldset>';
+ $r.='<hr>';
/* attributes */
$r.='<fieldset><legend>'._('Détails').'</legend>';
@@ -807,33 +790,46 @@ $order
$r.=dossier::hidden();
$r.=HtmlInput::hidden("fd_id", $this->id);
$r.=HtmlInput::hidden("action", "");
- $r.= $this->DisplayAttribut("remove");
- $r.= HtmlInput::submit('add_line_bt', _('Ajoutez cet élément'),
- 'onclick="$(\'action\').value=\'add_line\'"');
- $r.= HtmlInput::submit("save_line_bt", _("Sauvez"),
- 'onclick="$(\'action\').value=\'save_line\'"');
-
- $r.=HtmlInput::submit('remove_cat_bt', _('Effacer cette
catégorie'), 'onclick="$(\'action\').value=\'remove_cat\';return
confirm_box(\'input_detail_frm\',\'' . _('Vous confirmez ?') . '\')"');
- // if there is nothing to remove then hide the button
- if (strpos($r, "chk_remove") != 0)
- {
- $r.=HtmlInput::submit('remove_line_bt', _("Enleve les
éléments cochés"),
-
'onclick="$(\'action\').value=\'remove_line\';return
confirm_box(\'input_detail_frm\',\'' . _('Vous confirmez ?') . '\')"');
- }
+ // $r.= $this->DisplayAttribut("remove");
+ ob_start();
+ require NOALYSS_TEMPLATE."/fiche_def-input_detail-2.php";
+ $r.=ob_get_contents();
+ ob_clean();
+
$r.= "</form>";
- $r.=" <p class=\"notice\"> " . _("Attention : il n'y aura pas
de demande de confirmation pour enlever les
- attributs sélectionnés. Il ne sera pas
possible de revenir en arrière") . "</p>";
+
$r.='</fieldset>';
return $r;
}
+
+
+ /**
+ * @brief input for creating a new category
+ * @return void
+ */
function input_new()
{
$single=new Single_Record("dup");
- echo '<form method="post" style="display:inline">';
+ echo '<form method="post" style="display:inline"
onsubmit="return check_new_category()">';
echo $single->hidden();
echo HtmlInput::hidden("p_action","fiche");
echo dossier::hidden();
- echo $this->input(); // CreateCategory($cn,$search);
+ $ref=$this->cn->get_array("select * from fiche_def_ref order by
frd_text");
+ $iradio=new IRadio();
+ $nom_mod="";
+ /* the accounting item */
+ $class_base=new IPoste('class_base');
+ $class_base->set_attribute('ipopup','ipop_account');
+ $class_base->set_attribute('account','class_base');
+ $class_base->set_attribute('label','acc_label');
+ $f_class_base=$class_base->input();
+ $fd_description=new ITextarea('fd_description');
+ $fd_description->width=80;
+ $fd_description->heigh=4;
+ $fd_description->style='class="itextarea form-control input_text"
style="margin-left:0px;vertical-align:text-top"';
+ require_once NOALYSS_TEMPLATE.'/fiche_def_input.php';
+ require_once NOALYSS_TEMPLATE.'/fiche_def-input_new.php';
+
echo HtmlInput::submit("add_modele" ,_("Sauve"));
echo '</FORM>';
}
diff --git a/include/lib/icon_action.class.php
b/include/lib/icon_action.class.php
index 42fe5d19d..31f0f4277 100644
--- a/include/lib/icon_action.class.php
+++ b/include/lib/icon_action.class.php
@@ -72,7 +72,19 @@ class Icon_Action
$p_javascript, $id, $p_style);
return $r;
}
-
+ /**
+ *
+ * @param type $id
+ * @param type $p_javascript
+ * @param type $p_style
+ * @return type
+ */
+ static function icon_remove($id, $p_javascript, $p_style="")
+ {
+ $r=sprintf('<input class="smallbutton icon" onclick="%s" id="%s"
type="button" %s value="">',
+ $p_javascript, $id, $p_style);
+ return $r;
+ }
/**
*
* @param string $id
@@ -497,4 +509,5 @@ class Icon_Action
);
return $r;
}
+
}
diff --git a/include/template/fiche_def_list.php
b/include/template/fiche_def-display.php
similarity index 87%
rename from include/template/fiche_def_list.php
rename to include/template/fiche_def-display.php
index e57eedbb8..7532cf21f 100644
--- a/include/template/fiche_def_list.php
+++ b/include/template/fiche_def-display.php
@@ -50,13 +50,18 @@ $max=Database::num_row($res);
</tR>
<?php
$dossier=Dossier::id();
+$http=new HttpInput();
+$ac=$http->request("ac");
+
+
for ($i=0;$i<$max;$i++):
$class=($i%2==0)?' class="even" ':' class="odd" ';
$row=Database::fetch_array($res, $i);
+
$url=http_build_query(array("ac"=>$ac,"gDossier"=>$dossier,"fd"=>$row['fd_id']));
?>
<tr <?php echo $class?> >
<td>
- <?php echo HtmlInput::anchor(h($row['fd_label']),
"javascript:void(0)",
"onclick=\"detail_category_show('detail_category_div','".$dossier."','".$row['fd_id']."')\"")?>
+ <?php echo HtmlInput::anchor(h($row['fd_label']),
"do.php?".$url)?>
</td>
<td>
<?php echo h($row['fd_class_base'])?>
@@ -84,6 +89,6 @@ endfor;
echo HtmlInput::button("cat_fiche_def_add",_("Ajout d'une nouvelle
catégorie"),
"onclick=\"detail_category_show('detail_category_div','".$dossier."','-1')\"");
?>
</div>
-<div id="detail_category_div" style="display:none"">
+<div id="detail_category_div" style="display:none;margin-left:1rem">
</div>
\ No newline at end of file
diff --git a/include/template/fiche_def-input_detail-2.php
b/include/template/fiche_def-input_detail-2.php
new file mode 100644
index 000000000..e0239a310
--- /dev/null
+++ b/include/template/fiche_def-input_detail-2.php
@@ -0,0 +1,126 @@
+<?php
+/*
+ * This file is part of NOALYSS.
+ *
+ * NOALYSS 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.
+ *
+ * NOALYSS 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 NOALYSS; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+*/
+// Copyright Author Dany De Bontridder danydb@aevalys.eu 4/08/24
+/*!
+ * \file
+ * \brief manage attribut
+ */
+$cn = Dossier::connect();
+
+$existing_attribut = $cn->get_array('
+ select jnt_id,ad_id,ad_text,jnt_order
+ from attr_def
+ join jnt_fic_attr jfa using (ad_id )
+ where
+ fd_id=$1 order by jnt_order ', [$this->id]);
+
+$available_attribut = $cn->get_array('
+ select ad_id,ad_text,ad_default_order
+ from attr_def
+ where
+ ad_id not in (select ad_id from jnt_fic_attr jfa where
fd_id=$1) order by 2', [$this->id]);
+
+?>
+
+<div class="row">
+ <div class="col">
+ <h3>Attributs de la classe</h3>
+<div id="attribut_card">
+ <?php
+ $i = 0;
+ foreach ($existing_attribut
+
+ as $item):
+ $class = ($i % 2 == 0) ? 'even' : 'odd';
+ $i++;
+ ?>
+
+ <div id="attr_<?=$item['jnt_id']?>" style="cursor: move;" class="<?=
$class ?>" order="<?= $item['jnt_order'] ?>">
+
+
+ <?php
+ echo $item['ad_text'];
+ ?>
+ <div style="float:right">
+ <?=\Icon_Action::trash("0","")?>
+ </div>
+ </div>
+ <?php
+ endforeach;
+ ?>
+</div>
+ </div>
+ <div class=" col-2">
+ <h4> Ranger les attributs</h4>
+ <p>
+ Supprimer un attribut n'est pas réversible: les données de ces
attributs
+ seront définitivement perdus.
+ </p>
+ <!-- <input type="submit" class="button" value="Sauver les
attributs">-->
+ </div>
+
+<div class="col border-dark">
+ <h3>Attributs disponibles</h3>
+ <?php
+ echo HtmlInput::filter_table("avail_attribut_id", '0', '0');
+ ?>
+ <table id="avail_attribut_id" style="width: 90%">
+ <?php
+ $i = 0;
+ foreach ($available_attribut as $item):
+ $class = ($i % 2 == 0) ? 'even' : 'odd';
+ $i++;
+ ?>
+ <tr class="<?= $class ?>">
+ <td>
+ <?php
+ // ajout de l'attribut donc cette ligne disparait, et apparait
de l'autre cote + maj db
+ $js_add=sprintf("f")
+ ?>
+
+ <span class="icon" onclick="<?=$js_add?>">⇦</span>
+ </td>
+
+
+ <td>
+
+ <?php
+ echo $item['ad_text'];
+ ?>
+ </td>
+ <?php
+ endforeach;
+ ?>
+
+ </table>
+
+</div>
+
+</div>
+<div class="row">
+
+</div>
+<script>
+
+(function() {
+
+ Sortable.create('attribut_card',{tag:'div',onChange:function(e)
{console.debug(e)},onUpdate:function(e) { console.debug(e)}});
+
+})();
+</script>
diff --git a/include/ajax/ajax_fiche_def_detail.php
b/include/template/fiche_def-input_detail.php
similarity index 58%
copy from include/ajax/ajax_fiche_def_detail.php
copy to include/template/fiche_def-input_detail.php
index bebf233cb..e6bfda114 100644
--- a/include/ajax/ajax_fiche_def_detail.php
+++ b/include/template/fiche_def-input_detail.php
@@ -1,5 +1,4 @@
<?php
-
/*
* This file is part of NOALYSS.
*
@@ -16,31 +15,10 @@
* You should have received a copy of the GNU General Public License
* along with NOALYSS; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+*/
+// Copyright Author Dany De Bontridder danydb@aevalys.eu 2/08/24
+/*!
+ * \file
+ * \brief input card category detail
*/
-
-// Copyright Author Dany De Bontridder danydb@aevalys.eu
-
-/**
- * @file
- * @brief show detail of a fiche_def (category of card) + Attribut
- *
- */
-if ( ! defined ('ALLOWED') ) die('Appel direct ne sont pas permis');
-global $g_user;
-
-$g_user->can_request(FICCAT,0);
-$http=new HttpInput();
-$id=$http->get("id","number");
-$fd=new Fiche_Def($cn,$id);
-if ( $id > 0 )
-{
-
- echo $fd->input_detail();
- echo HtmlInput::button("retour_b", _("Retour à la liste"),
"onclick=\"$('detail_category_div').hide();$('list_cat_div').show()\"");
-}
-else
-{
- $fd->input_new();
-
-}
?>
diff --git a/include/template/fiche_def-input_new.php
b/include/template/fiche_def-input_new.php
new file mode 100644
index 000000000..f099258da
--- /dev/null
+++ b/include/template/fiche_def-input_new.php
@@ -0,0 +1,43 @@
+<?php
+/*
+ * This file is part of NOALYSS.
+ *
+ * NOALYSS 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.
+ *
+ * NOALYSS 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 NOALYSS; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+*/
+// Copyright Author Dany De Bontridder danydb@aevalys.eu 2/08/24
+/*!
+ * \file
+ * \brief for new category of cards, proposed the template on which the
category of card will be based
+ */
+?>
+<h3><?php echo _("Modèles de catégorie")?></h3>
+<p class="text-muted">
+ <?php echo _("Choisissez un modèle pour cette nouvelle catégorie de
fiche")?>
+</p>
+<ul id="template_category_ck">
+ <?php
+ if ( !empty ($ref) ) {
+ foreach ($ref as $i=>$v) { ?>
+ <li style="list-style-type: none">
+ <?php echo $iradio->input("FICHE_REF",$v['frd_id']);
+ echo $v['frd_text'];
+ if ( !empty ($v['frd_class_base']) != 0 )
+ echo "  <I>Class base = ".$v['frd_class_base']."</I>";
+
+ }?>
+ </li>
+ <?php }
+ ?>
+</UL>
diff --git a/include/template/fiche_def_input.php
b/include/template/fiche_def_input.php
index ceefb0c98..929f1f8e0 100644
--- a/include/template/fiche_def_input.php
+++ b/include/template/fiche_def_input.php
@@ -1,41 +1,40 @@
<?php
//This file is part of NOALYSS and is under GPL
//see licence.txt
-?><TABLE BORDER="0" CELLSPACING="0">
-<TR>
-<TD><?php echo _('Catégorie de fiche')?> </TD>
-<TD><INPUT TYPE="INPUT" class="input_text" NAME="nom_mod"></TD>
-</TR>
-<tr>
- <td style="vertical-align: text-top">
- Description
- </td>
- <td>
+/**
+ * @file
+ * @brief input detail of card category , variable to set
+ * - $nom_mod name of the category
+ * - $fd_description ITextarea for the description
+ * - $f_class_base base account
+ */
+?>
+<div class="content" style="margin-left: 2rem;">
+ <div class="form-group">
+ <label for="nom_mod"><?=_('Categorie de fiche')?></label>
+ <input id="nom_mod_id" type="text" class="input_text form-control"
style="width: 50rem" name="nom_mod" value="<?=$nom_mod?>">
+ </div>
+<div class="form-group">
+ <label for="fd_description"><?=_("Description")?></label>
<?php echo $fd_description->input(); ?>
- </td>
-</tr>
-<TR>
- <TD> <?php echo _('Classe de base')?> </TD>
-<TD><?php echo $f_class_base?> </TD>
-<td><span id="class_base_label"></span></td>
-</TR>
-<TR>
-<TD colspan='2'> <INPUT TYPE="CHECKBOX" NAME="create" CHECKED><?php echo
_("Création automatique du poste comptable uniquement s'il n'y a qu'un seul
poste")?></TD>
-</TR>
-</table>
-<h2><?php echo _("Modèles de catégorie")?></h2>
-<ul>
-<?php
- if ( !empty ($ref) ) {
- foreach ($ref as $i=>$v) { ?>
- <li style="list-style-type: none">
-<?php echo $iradio->input("FICHE_REF",$v['frd_id']);
- echo $v['frd_text'];
- if ( !empty ($v['frd_class_base']) != 0 )
- echo "  <I>Class base = ".$v['frd_class_base']."</I>";
+</div>
+ <div class="form-group">
+ <p class="text-muted">
+ <?php echo _("Choisissez poste comptable qui sera la base des
postes comptables pour les fiches de cette catégorie")?>
+ </p>
+
+ <label for="class_base"><?=_("Poste comptable de base")?></label>
+ <?php echo $f_class_base?>
+
+ </div>
+ <div class="form-group">
+ <INPUT TYPE="CHECKBOX" NAME="create" <?php if ($this->create_account)
echo 'CHECKED';?> ><?php echo _("Création automatique du poste comptable")?>
+ <p class="text-muted">
+ <?php echo _("Cochez cette case si chaque fiche de cette catégorie
doit avoir un poste comptable propre, il sera calculé automatiquement si vous
n'en donnez pas un. ")?>
+ </p>
+ <p class="text-muted">
+ <?php echo _("Si vous ne cochez pas et que le poste comptable de
base n'est pas vide alors toutes les fiches auront le poste comptable de base
comme poste comptable par défaut")?>
+ </p>
+ </div>
+</div>
- }?>
- </li>
- <?php }
-?>
-</UL>
\ No newline at end of file
- [Noalyss-commit] [noalyss] branch unstable updated (65dd4e31c -> 451b9cb7c), dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 03/11: GESTION : operation add receipt number, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 11/11: documentation, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 01/11: Documentation, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 07/11: CCARD : rewrite, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 04/11: CCARD : rewriting interface, code cleanup,
dwm <=
- [Noalyss-commit] [noalyss] 08/11: new function alternate_row_color_list, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 09/11: CCARD : remove category card with confirm, remove dead code, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 05/11: Javascript : documentation avec JSDOC, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 06/11: Cosmetic h1.legend, legend & fieldset, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 10/11: Fix : retrieve label from tva_code, dwm, 2024/08/08
- [Noalyss-commit] [noalyss] 02/11: Bug : fix create event from AGENDA, dwm, 2024/08/08