0) { $cn =Dossier::connect(); $g_parameter=new Own($cn); $g_user = new User($cn); $g_user->check(true); $g_user->check_dossier($gDossier, true); } else { // connect to repository $cn=new Database(); $g_user = new User($cn); $g_user->check(true); } $html = var_export($_REQUEST, true); set_language(); if ( LOGINPUT) { $file_loginput=fopen($_ENV['TMP'].'/scenario-'.$_SERVER['REQUEST_TIME'].'.php','a+'); fwrite ($file_loginput,""ajax_poste", "card"=>"ajax_card", "ledger"=>"ajax_ledger", "todo_list"=>"ajax_todo_list", "history"=>"ajax_history", "pcmn_update"=>"ajax_pcmn_update", "mod_doc"=>"ajax_mod_document", "input_per"=>"ajax_mod_periode", "save_per"=>"ajax_mod_periode", "mod_predf"=>"ajax_mod_predf_op", "save_predf"=>"ajax_save_predf_op", "search_action"=>"ajax_search_action", "display_profile"=>"ajax_get_profile", "det_menu"=>"ajax_get_menu_detail", "add_menu"=>"ajax_add_menu", "display_submenu"=>"ajax_display_submenu", "remove_submenu"=>"ajax_remove_submenu", "cardsearch"=>"ajax_boxcard_search", "saldo"=>"ajax_bank_saldo", "up_predef"=>"ajax_update_predef", "upd_receipt"=>"ajax_get_receipt", "up_pay_method"=>"ajax_update_payment", "openancsearch"=>"ajax_anc_search", "resultancsearch"=>"ajax_anc_search", "autoanc"=>"ajax_auto_anc_card", "create_menu"=>"ajax_create_menu", "modify_menu"=>"ajax_mod_menu", "mod_stock_repo"=>"ajax_mod_stock_repo", "view_mod_stock"=>"ajax_view_mod_stock", "fddetail"=>"ajax_fiche_def_detail", "vw_action"=>"ajax_view_action", "minrow"=>"ajax_min_row", "navigator"=>"ajax_navigator", "preference"=>"ajax_preference", "bookmark"=>"ajax_bookmark", "tag_detail"=>"ajax_tag_detail", "tag_save"=>"ajax_tag_save", "tag_list"=>"ajax_tag_list", "tag_add"=>"ajax_tag_add_action", "tag_remove"=>"ajax_tag_remove_action", "tag_choose"=>"ajax_tag_choose", "search_display_tag"=>"ajax_search_display_tag", "search_add_tag"=>"ajax_search_add_tag", "search_clear_tag"=>"ajax_search_clear_tag", "calendar_zoom"=>"ajax_calendar_zoom", "ledger_show"=>"ajax_ledger_show", //Show the available distribution keys for analytic "anc_key_choice"=>"ajax_anc_key_choice" , // Show the activities computed with the selected distribution key "anc_key_compute"=>"ajax_anc_key_compute" , //update an accounting (from CFGPCMN) "account_update"=>"ajax_account_update", //From admin, revoke the access to a folder from an user "folder_remove"=>"ajax_admin", //From admin, display a list of folder to which the user has no access "folder_display"=>"ajax_admin", // From admin, grant the access to a folder to an // user "folder_add"=>"ajax_admin", // From admin, display info and propose to drop the folder "folder_drop"=>"ajax_admin", // From admin, display the information of a folder you can // modify "folder_modify"=>"ajax_admin", // From admin, display info and propose to drop the template "modele_drop"=>"ajax_admin", // From admin, display the information of a template you can modify "modele_modify"=>"ajax_admin", // From dashboard, display detail about last operation "action_show"=>"ajax_gestion", // From dashboard, display form for a new event "action_add"=>"ajax_gestion", // Save a event given in the short form "action_save"=>"ajax_gestion" ) ; if (array_key_exists($op, $path)) { require NOALYSS_INCLUDE.'/ajax/'.$path[$op].".php"; return; } switch ($op) { case "remove_anc": if ($g_user->check_module('ANCODS') == 0) exit(); $cn->exec_sql("delete from operation_analytique where oa_group=$1", array($_GET['oa'])); break; case "rm_stock": if ($g_user->check_module('STOCK') == 0) exit(); require_once NOALYSS_INCLUDE.'/constant.security.php'; $cn->exec_sql('delete from stock_goods where sg_id=$1', array($s_id)); $html = escape_xml($s_id); header('Content-type: text/xml; charset=UTF-8'); printf('{"d_id":"%s"}', $s_id); exit(); break; //-------------------------------------------------- // get the last date of a ledger case 'lastdate': require_once NOALYSS_INCLUDE.'/class/class_acc_ledger_fin.php'; $ledger = new Acc_Ledger_Fin($cn, $_GET['p_jrn']); $html = $ledger->get_last_date(); $html = escape_xml($html); header('Content-type: text/xml; charset=UTF-8'); echo << e_date $html EOF; break; case 'bkname': require_once NOALYSS_INCLUDE.'/class/class_acc_ledger_fin.php'; $ledger = new Acc_Ledger_Fin($cn, $_GET['p_jrn']); $html = $ledger->get_bank_name(); $html = escape_xml($html); header('Content-type: text/xml; charset=UTF-8'); echo << bkname $html EOF; break; // display new calendar case 'cal': require_once NOALYSS_INCLUDE.'/class/class_calendar.php'; /* others report */ $cal = new Calendar(); $cal->set_periode($per); $notitle=HtmlInput::default_value_get("notitle", 0); $html = ""; $html = $cal->display($_GET['t'],$notitle); $html = escape_xml($html); header('Content-type: text/xml; charset=UTF-8'); echo << $html EOF; break; /* rem a cat of document */ case 'rem_cat_doc': require_once NOALYSS_INCLUDE.'/class/class_document_type.php'; // if user can not return error message $message=""; if ($g_user->check_action(PARCATDOC) == 0) { $html = "nok"; $message=_('Action non autorisée'); header('Content-type: text/xml; charset=UTF-8'); echo << $html $message EOF; return; } // remove the cat if no action $count_md = $cn->get_value('select count(*) from document_modele where md_type=$1', array($dt_id)); $count_a = $cn->get_value('select count(*) from action_gestion where ag_type=$1', array($dt_id)); if ($count_md != 0 || $count_a != 0) { $message=_('Des actions dépendent de cette catégorie'); $html = "nok"; header('Content-type: text/xml; charset=UTF-8'); echo << $html $message EOF; exit; } $cn->exec_sql('delete from document_type where dt_id=$1', array($dt_id)); $html = $dt_id; header('Content-type: text/xml; charset=UTF-8'); echo << $html $message EOF; return; break; case 'mod_cat_doc': require_once NOALYSS_INCLUDE.'/template/document_mod_change.php'; break; case 'dsp_tva': $cn = Dossier::connect(); $Res = $cn->exec_sql("select * from tva_rate order by tva_rate desc"); $Max = Database::num_row($Res); $r = ""; $r = HtmlInput::anchor_close('tva_select'); $r.=h2(_('Choisissez la TVA '),'class="title"'); $r.='
'; $r.=_('Filter')." ".HtmlInput::filter_table("tva_select_table",'0,1,2,3' , 1); $r.= ''; $r.=th(_('code')); $r.=th(_('Taux')); $r.=th(_('Symbole')); $r.=th(_('Explication')); for ($i = 0; $i < $Max; $i++) { $row = Database::fetch_array($Res, $i); if (!isset($compute)) { if (!isset($code)) { $script = "onclick=\"$('$ctl').value='" . $row['tva_id'] . "';removeDiv('tva_select');\""; } else { $script = "onclick=\"$('$ctl').value='" . $row['tva_id'] . "';set_value('$code','" . $row['tva_label'] . "');removeDiv('tva_select');\""; } } else { if (!isset($code)) { $script = "onclick=\"$('$ctl').value='" . $row['tva_id'] . "';removeDiv('tva_select');clean_tva('$compute');compute_ledger('$compute');\""; } else { $script = "onclick=\"$('$ctl').value='" . $row['tva_id'] . "';set_value('$code','" . $row['tva_label'] . "');removeDiv('tva_select');clean_tva('$compute');compute_ledger('$compute');\""; } } $set = ''; $class=($i%2 == 0)?' class="odd" ':' class="even" '; $r.=''; $r.=td($row['tva_id']); $r.=td($row['tva_rate']); $r.=td($row['tva_label']); $r.=td($row['tva_comment']); $r.=''; } $r.='
'; $r.='
'; $html = escape_xml($r); header('Content-type: text/xml; charset=UTF-8'); echo << $html $popup EOF; break; case 'label_tva': $cn =Dossier::connect(); if (isNumber($id) == 0) $value = _('tva inconnue'); else { $Res = $cn->get_array("select * from tva_rate where tva_id = $1", array($id)); if (count($Res) == 0) $value = _('tva inconnue'); else $value = $Res[0]['tva_label']; } header('Content-type: text/xml; charset=UTF-8'); echo << $code $value EOF; break; /** * display the lettering */ case 'dl': require_once NOALYSS_INCLUDE.'/class/class_lettering.php'; $exercice = $g_user->get_exercice(); if ($g_user->check_module("LETCARD") == 0 && $g_user->check_module("LETACC") == 0) exit(); $periode = new Periode($cn); list($first_per, $last_per) = $periode->get_limit($exercice); $ret = new IButton('return'); $ret->label = _('Retour'); $ret->javascript = "$('detail').hide();$('list').show();$('search').show();"; // retrieve info for the given j_id (date, amount,side and comment) $sql = "select j_date,to_char(j_date,'DD.MM.YYYY') as j_date_fmt,J_POSTE,j_qcode,jr_id, jr_comment,j_montant, j_debit,jr_internal from jrnx join jrn on (j_grpt=jr_grpt_id) where j_id=$1"; $arow = $cn->get_array($sql, array($j_id)); $row = $arow[0]; $r = ''; $r.='
' . _('Lettrage') . ''; $r.=_('Poste')." " . $row['j_poste'] . ' ' . $row['j_qcode'] . '
'; $detail = " " . $row['jr_internal'] . ""; $r.=_('Date').' : ' . $row['j_date_fmt'] . ' ref :' . $detail . '
'; $r.=h($row['jr_comment']) ." ". _("montant")." : " . ($row['j_montant']) . " " . (($row['j_debit'] == 't') ? 'D' : 'C'); $r.='
'; $r.='
'; $r.='
'; $r.='
'; // needed hidden var $r.=dossier::hidden(); if (isset($_REQUEST['ac'])) $r.=HtmlInput::hidden('ac', $_REQUEST['ac']); if (isset($_REQUEST['sa'])) $r.=HtmlInput::hidden('sa', $_REQUEST['sa']); if (isset($_REQUEST['acc'])) $r.=HtmlInput::hidden('acc', $_REQUEST['acc']); $r.=HtmlInput::hidden('j_id', $j_id); $r.=HtmlInput::hidden('op', $op); $r.=HtmlInput::hidden('ot', $ot); $r.=''; //min amount $line = td(_('Montant min. ')); $min = new INum('min_amount'); $min->value = (isset($min_amount)) ? $min_amount : $row['j_montant']; $min_amount = (isset($min_amount)) ? $min_amount : $row['j_montant']; $line.=td($min->input()); // max amount $line.=td(_('Montant max. ')); $max = new INum('max_amount'); $max->value = (isset($max_amount)) ? $max_amount : $row['j_montant']; $max_amount = (isset($max_amount)) ? $max_amount : $row['j_montant']; $line.=td($max->input()); $r.=tr($line); $date_error=""; // start date $start = new IDate('search_start'); /* check if date are valid */ if (isset($search_start) && isDate($search_start) == null) { ob_start(); alert(_('Date malformée')); $date_error = ob_get_contents(); ob_end_clean(); $search_start=$first_per->first_day(); } $start->value = (isset($search_start)) ? $search_start : $first_per->first_day(); $line = td('Date Debut') . td($start->input()); // end date $end = new IDate('search_end'); /* check if date are valid */ if (isset($search_end) && isDate($search_end) == null) { ob_start(); alert(_('Date malformée')); $date_error = ob_get_contents(); ob_end_clean(); $search_end=$last_per->last_day(); } $end->value = (isset($search_end)) ? $search_end : $last_per->last_day(); $line.=td(_('Date Fin')) . td($end->input()); $r.=tr($line); // Side $line = td(_('Debit / Credit')); $iside = new ISelect('side'); $iside->value = array( array('label' => _('Debit'), 'value' => 0), array('label' => _('Credit'), 'value' => 1), array('label' => _('Les 2'), 'value' => 3) ); /** * * if $side is not then * - if jl_id exist and is > 0 show by default all the operation (=3) * - if jl_id does not exist or is < 0 then show by default the opposite * side */ if (!isset($side)) { // find the jl_id of the j_id $jl_id = $cn->get_value('select comptaproc.get_letter_jnt($1)', array($j_id)); if ($jl_id == null) { // get the other side $iside->selected = (isset($side)) ? $side : (($row['j_debit'] == 't') ? 1 : 0); $side = (isset($side)) ? $side : (($row['j_debit'] == 't') ? 1 : 0); } else { // show everything $iside->selected = 3; $side = 3; } } else { $iside->selected = $side; } $r.=tr($line . td($iside->input())); $r.='
'; $r.='
'; $r.='
'; $r.=HtmlInput::submit('search', 'Rechercher'); $r.='
'; $r.='
'; $r.='
'; $form = '
'; $form.='
'; $form.=dossier::hidden(); if (isset($_REQUEST['p_action'])) $form.=HtmlInput::hidden('p_action', $_REQUEST['p_action']); if (isset($_REQUEST['sa'])) $form.=HtmlInput::hidden('sa', $_REQUEST['sa']); if (isset($_REQUEST['acc'])) $form.=HtmlInput::hidden('acc', $_REQUEST['acc']); if (isset($_REQUEST['sc'])) $form.=HtmlInput::hidden('sc', $_REQUEST['sc']); if (isset($_REQUEST['sb'])) $form.=HtmlInput::hidden('sb', $_REQUEST['sb']); if (isset($_REQUEST['f_id'])) $form.=HtmlInput::hidden('f_id', $_REQUEST['f_id']); // display a list of operation from the other side + box button if ($ot == 'account') { $obj = new Lettering_Account($cn, $row['j_poste']); if (isset($search_start)) $obj->start = $search_start; if (isset($search_end)) $obj->end = $search_end; if (isset($max_amount)) $obj->fil_amount_max = $max_amount; if (isset($min_amount)) $obj->fil_amount_min = $min_amount; if (isset($side)) $obj->fil_deb = $side; $form.=$obj->show_letter($j_id); } else if ($ot == 'card') { $obj = new Lettering_Card($cn, $row['j_qcode']); if (isset($search_start)) $obj->start = $search_start; if (isset($search_end)) $obj->end = $search_end; if (isset($max_amount)) $obj->fil_amount_max = $max_amount; if (isset($min_amount)) $obj->fil_amount_min = $min_amount; if (isset($side)) $obj->fil_deb = $side; $form.=$obj->show_letter($j_id); } else { $form.=_('Mauvais type objet'); } $form.=HtmlInput::submit('record', _('Sauver')) . $ret->input(); $form.='
'; $form.='
'; $html = $r . $form; $html.=$date_error; // echo $html;exit; $html = escape_xml($html); header('Content-type: text/xml; charset=UTF-8'); echo << detail $html EOF; break; case 'search_op': require_once NOALYSS_INCLUDE.'/search.inc.php'; break; case 'add_plugin': $me_code = new IText('me_code'); $me_file = new IText('me_file'); $me_menu = new IText('me_menu'); $me_description = new IText("me_description"); $me_parameter = new IText("me_parameter"); $new = true; require_once NOALYSS_INCLUDE.'/ajax/ajax_plugin_detail.php'; break; case 'mod_plugin': $m = $cn->get_array("select me_code,me_file,me_menu,me_description,me_parameter from menu_ref where me_code=$1", array($me_code)); if (empty($m)) { echo HtmlInput::title_box(_("Ce plugin n'existe pas "), $ctl); echo "

"._("Il y a une erreur, ce plugin n'existe pas"). "

"; exit; } $me_code = new IText('me_code', $m[0] ['me_code']); $me_file = new IText('me_file', $m[0] ['me_file']); $me_menu = new IText('me_menu', $m[0] ['me_menu']); $me_description = new IText("me_description", $m[0] ['me_description']); $me_parameter = new IText("me_parameter", $m[0] ['me_parameter']); $new = false; require_once NOALYSS_INCLUDE.'/ajax/ajax_plugin_detail.php'; break; case 'ledger_description': $ajrn=$cn->get_array('select jrn_def_name,jrn_def_description from jrn_def where jrn_def_id=$1',array($l)); if ( count($ajrn)==1) { echo '
'; echo '

'.$ajrn[0]['jrn_def_name'].'

'; if ( trim($ajrn[0]['jrn_def_description']) != "") { echo '

'.$ajrn[0]['jrn_def_description'].'

'; } echo '
'; } exit(); break; default: var_dump($_GET); }