/** * show history of all the stock movement * @param $p_array usually contains $_GET */ function history($p_array) { $sql = $this->create_query_histo($p_array); require_once NOALYSS_INCLUDE . '/class_sort_table.php'; $p_url = HtmlInput::get_to_string(array("gDossier", "ac", "wcard", "wdate_start", "wdate_end", "wrepo", "wamount_start", "wamount_end", "wcode_stock", "wdirection")); $tb = new Sort_Table(); $tb->add("Date", $p_url, " order by real_date asc", "order by real_date desc", "da", "dd"); $tb->add("Code Stock", $p_url, " order by sg_code asc", "order by sg_code desc", "sa", "sd"); $tb->add("Dépôt", $p_url, " order by r_name asc", "order by r_name desc", "ra", "rd"); $tb->add("Fiche", $p_url, " order by 2 asc", "order by 2 desc", "fa", "fd"); $tb->add("Commentaire", $p_url, " order by coalesce(sg_comment,jr_comment) asc", "order by coalesce(sg_comment,jr_comment) desc", "ca", "cd"); $tb->add("Montant", $p_url, " order by j_montant asc", "order by j_montant desc", "ja", "jd"); $tb->add("Quantité", $p_url, " order by sg_quantity asc", "order by sg_quantity desc", "qa", "qd"); $tb->add("IN/OUT", $p_url, " order by (case when sg_type='c' then 'OUT' when sg_type='c' then 'IN' end ) asc", "order by (case when sg_type='c' then 'OUT' when sg_type='c' then 'IN' end ) desc", "ta", "td"); $order = isset($p_array['ord']) ? $p_array['ord'] : 'da'; $sql .= $tb->get_sql_order($order); $step = $_SESSION['g_pagesize']; $page = isset($_GET['offset']) ? $_GET['page'] : 1; $offset = isset($_GET['offset']) ? $_GET['offset'] : 0; $res = $this->cn->exec_sql($sql); $max_row = Database::num_row($res); $nav_bar = navigation_bar($offset, $max_row, 0, $page); if ($step != -1) { $res = $this->cn->exec_sql($sql . " , sg_id asc limit " . $step . " offset " . $offset); } $max_row = Database::num_row($res); $this->search_box_button(); $this->search_box($p_array); require_once NOALYSS_INCLUDE . '/template/stock_histo.php'; $this->export_stock_histo_form(); echo HtmlInput::print_window(); }
if (strlen(trim($post_name)) != 0) { $st = new Stock_Sql($cn); $st->from_array($_POST); $st->insert(); } } if (isset($_POST['mod_stock'])) { $post_name = HtmlInput::default_value_post('r_name', ""); if (strlen(trim($post_name)) != 0) { $st = new Stock_Sql($cn, $_POST['r_id']); $st->from_array($_POST); $st->update(); } } $tb = new Sort_Table(); $p_url = HtmlInput::get_to_string(array("ac", "gDossier")); $tb->add(_("Nom"), $p_url, " order by r_name asc", "order by r_name desc", "ona", "ond"); $tb->add(_("Adresse"), $p_url, " order by r_adress asc", "order by r_adress desc", "oaa", "oad"); $tb->add(_("Ville"), $p_url, " order by r_city asc", "order by r_city desc", "ova", "ovd"); $tb->add(_("Pays"), $p_url, " order by r_country asc", "order by r_country desc", "opa", "opd"); $tb->add(_("Téléphone"), $p_url, " order by r_phone asc", "order by r_phone desc", "opa", "opd"); $sql = "select * from stock_repository "; $ord = isset($_GET['ord']) ? $_GET['ord'] : "ona"; $order = $tb->get_sql_order($ord); $array = $cn->get_array($sql . " " . $order); ?> <div class="content"> <table class="result"> <tr> <th><?php
function Display() { $tab = new Sort_Table(); $url = HtmlInput::get_to_string(array('ac', 'gDossier')); $tab->add(_("Nom de fiche"), $url, "order by fd_label asc", "order by fd_label desc", "na", "nd"); $tab->add(_("Basé sur le poste comptable"), $url, "order by fd_class_base asc", "order by fd_class_base desc", "pa", "pd"); $tab->add(_("Calcul automatique du poste comptable"), $url, "order by fd_create_account asc", "order by fd_create_account desc", "ca", "cd"); $tab->add(_("Basé sur le modèle"), $url, "order by frd_text asc", "order by frd_text desc", "ma", "md"); $order = isset($_GET['ord']) ? $tab->get_sql_order($_GET["ord"]) : $tab->get_sql_order("na"); $res = $this->cn->exec_sql("SELECT fd_id, fd_class_base, fd_label, fd_create_account, fiche_def_ref.frd_id,\nfrd_text , fd_description FROM fiche_def join fiche_def_ref on (fiche_def.frd_id=fiche_def_ref.frd_id)\n{$order}\n"); require_once NOALYSS_INCLUDE . '/template/fiche_def_list.php'; }
* \brief module to manage the card (removing, listing, creating, modify attribut) */ if (!defined('ALLOWED')) { die('Appel direct ne sont pas permis'); } require_once NOALYSS_INCLUDE . '/ac_common.php'; require_once NOALYSS_INCLUDE . '/class_itext.php'; require_once NOALYSS_INCLUDE . '/class_ihidden.php'; require_once NOALYSS_INCLUDE . '/class_fiche.php'; require_once NOALYSS_INCLUDE . '/class_database.php'; require_once NOALYSS_INCLUDE . '/user_menu.php'; require_once NOALYSS_INCLUDE . '/class_dossier.php'; require_once NOALYSS_INCLUDE . '/class_sort_table.php'; require_once NOALYSS_INCLUDE . '/class_fiche_def.php'; require_once NOALYSS_INCLUDE . '/class_tool_uos.php'; $retour = HtmlInput::button_anchor("Retour à la liste", HtmlInput::get_to_string(array("gDossier", "ac"))); $action = HtmlInput::default_value_post('action', ''); /*******************************************************************************************/ // Add an attribut /*******************************************************************************************/ if ($action == 'add_line') { $fiche_def = new Fiche_Def($cn, $_REQUEST['fd_id']); $fiche_def->InsertAttribut($_REQUEST['ad_id']); echo $fiche_def->input_detail(); echo $retour; return; } /*******************************************************************************************/ // Remove an attribut /*******************************************************************************************/ if ($action == 'remove_line') {
/** * myList($p_base, $p_filter = "", $p_search = "") * Show list of action by default if sorted on date * @param $p_base base url with ac... * @param $p_filter filters on the document_type * @param $p_search must a valid sql command ( ex 'and ag_title like upper('%hjkh%')) * @return string containing html code */ function myList($p_base, $p_filter = "", $p_search = "") { // for the sort $url = HtmlInput::get_to_string(array("closed_action", "remind_date_end", "remind_date", "sag_ref", "only_internal", "state", "qcode", "ag_dest_query", "action_query", "tdoc", "date_start", "date_end", "hsstate", "searchtag")) . '&' . $p_base; $table = new Sort_Table(); $table->add('Date Doc.', $url, 'order by ag_timestamp asc', 'order by ag_timestamp desc', 'da', 'dd'); $table->add('Date Comm.', $url, 'order by last_comment', 'order by last_comment desc', 'dca', 'dcd'); $table->add('Date Limite', $url, 'order by ag_remind_date asc', 'order by ag_remind_date desc', 'ra', 'rd'); $table->add('Tag', $url, 'order by tags asc', 'order by tags desc', 'taa', 'tad'); $table->add('Réf.', $url, 'order by ag_ref asc', 'order by ag_ref desc', 'ra', 'rd'); $table->add('Groupe', $url, "order by coalesce((select p_name from profile where p_id=ag_dest),'Aucun groupe')", "order by coalesce((select p_name from profile where p_id=ag_dest),'Aucun groupe') desc", 'dea', 'ded'); $table->add('Dest/Exp', $url, 'order by name asc', 'order by name desc', 'ea', 'ed'); $table->add('Titre', $url, 'order by ag_title asc', 'order by ag_title desc', 'ta', 'td'); $ord = !isset($_GET['ord']) ? "dcd" : $_GET['ord']; $sort = $table->get_sql_order($ord); if (strlen(trim($p_filter)) != 0) { $p_filter_doc = " dt_id in ( {$p_filter} )"; } else { $p_filter_doc = " 1=1 "; } $sql = "\n select ag_id,to_char(ag_timestamp,'DD.MM.YYYY') as my_date,\n to_char(ag_remind_date,'DD.MM.YYYY') as my_remind,\n to_char(coalesce((select max(agc_date) from action_gestion_comment as agc where agc.ag_id=ag.ag_id),ag_timestamp),'DD.MM.YY') as str_last_comment,\n coalesce((select max(agc_date) from action_gestion_comment as agc where agc.ag_id=ag.ag_id),ag_timestamp) as last_comment,\n f_id_dest,\n s_value,\n ag_title,dt_value,ag_ref, ag_priority,ag_state,\n coalesce((select p_name from profile where p_id=ag_dest),'Aucun groupe') as dest,\n (select ad_value from fiche_Detail where f_id=ag.f_id_dest and ad_id=1) as name,\n array_to_string((select array_agg(t1.t_tag) from action_tags as a1 join tags as t1 on (a1.t_id=t1.t_id) where a1.ag_id=ag.ag_id ),',') as tags\n from action_gestion as ag\n join document_type on (ag_type=dt_id)\n join document_state on (ag_state=s_id)\n where {$p_filter_doc} {$p_search} {$sort}"; $max_line = $this->db->count_sql($sql); $step = $_SESSION['g_pagesize']; $page = isset($_GET['offset']) ? $_GET['page'] : 1; $offset = isset($_GET['offset']) ? Database::escape_string($_GET['offset']) : 0; if ($step != -1) { $limit = " LIMIT {$step} OFFSET {$offset} "; } else { $limit = ''; } $bar = navigation_bar($offset, $max_line, $step, $page); $Res = $this->db->exec_sql($sql . $limit); $a_row = Database::fetch_all($Res); $r = ""; $r .= '<p>' . $bar . '</p>'; $r .= '<table class="document">'; $r .= "<tr>"; $r .= '<th name="ag_id_td" style="display:none" >' . ICheckBox::toggle_checkbox('ag', 'list_ag_frm') . '</th>'; $r .= '<th>' . $table->get_header(0) . '</th>'; $r .= '<th>' . $table->get_header(1) . '</th>'; $r .= '<th>' . $table->get_header(2) . '</th>'; $r .= '<th>' . $table->get_header(3) . '</th>'; $r .= '<th>' . $table->get_header(4) . '</th>'; $r .= '<th>' . $table->get_header(5) . '</th>'; $r .= '<th>' . $table->get_header(6) . '</th>'; $r .= '<th>' . $table->get_header(7) . '</th>'; $r .= th('Priorité'); $r .= "</tr>"; // if there are no records return a message if (sizeof($a_row) == 0 or $a_row == false) { $r = '<div style="clear:both">'; $r .= '<hr>Aucun enregistrement trouvé'; $r .= "</div>"; return $r; } $today = date('d.m.Y'); $i = 0; $checkbox = new ICheckBox("mag_id[]"); //show the sub_action foreach ($a_row as $row) { $href = '<A class="document" HREF="do.php?' . $p_base . HtmlInput::get_to_string(array("closed_action", "remind_date_end", "remind_date", "sag_ref", "only_internal", "state", "gDossier", "qcode", "ag_dest_query", "action_query", "tdoc", "date_start", "date_end", "hsstate", "searchtag", "ac"), "&") . '&sa=detail&ag_id=' . $row['ag_id'] . '">'; $i++; $tr = $i % 2 == 0 ? 'even' : 'odd'; if ($row['ag_priority'] < 2) { $tr = 'priority1'; } $st = ''; if ($row['my_date'] == $today) { $st = ' style="font-weight:bold; border:2px solid orange;"'; } $date_remind = format_date($row['my_remind'], 'DD.MM.YYYY', 'YYYYMMDD'); $date_today = date('Ymd'); if ($date_remind != "" && $date_remind == $date_today && $row['ag_state'] != 1 && $row['ag_state'] != 3) { $st = ' style="font-weight:bold;background:orange"'; } if ($date_remind != "" && $date_remind < $date_today && $row['ag_state'] != 1 && $row['ag_state'] != 3) { $st = ' style="font-weight:bold;background:#FF0000;color:white;"'; } $r .= "<tr class=\"{$tr}\" {$st}>"; $checkbox->value = $row['ag_id']; $r .= '<td name="ag_id_td" style="display:none">' . $checkbox->input() . '</td>'; $r .= "<td>" . $href . smaller_date($row['my_date']) . '</a>' . "</td>"; $r .= "<td>" . $href . $row['str_last_comment'] . '</a>' . "</td>"; $r .= "<td>" . $href . smaller_date($row['my_remind']) . '</a>' . "</td>"; $r .= "<td>" . $href . h($row['tags']) . '</a>' . "</td>"; $r .= "<td>" . $href . $row['ag_ref'] . '</a>' . "</td>"; $r .= "<td>" . $href . h($row['dest']) . '</a>' . "</td>"; // Expediteur $fexp = new Fiche($this->db); $fexp->id = $row['f_id_dest']; $qcode_dest = $fexp->strAttribut(ATTR_DEF_QUICKCODE); $qexp = $qcode_dest == NOTFOUND ? "Interne" : $qcode_dest; $jsexp = sprintf("javascript:showfiche('%s')", $qexp); if ($qexp != 'Interne') { $r .= "<td>{$href}" . $qexp . " : " . $fexp->getName() . '</a></td>'; } else { $r .= "<td>{$href} Interne </a></td>"; } $ref = ""; $r .= '<td>' . $href . h($row['ag_title']) . "</A></td>"; /* * State */ switch ($row['ag_priority']) { case 1: $priority = 'Haute'; break; case 2: $priority = "Moyenne"; break; case 3: $priority = "Important"; break; } $r .= td($priority); $r .= "<td>" . $ref . "</td>"; $r .= "</tr>"; } $r .= "</table>"; $r .= '<p>' . $bar . '</p>'; return $r; }
static function test_me() { $cn = new Database(Dossier::id()); $order = " order by f_id desc "; $url = HtmlInput::get_to_string(array("gDossier", "test_select")); if (isset($_GET['sb'])) { $order = " order by f_id"; $img = "image/select1.gif"; } else { $url = $url . "&sb=as"; $img = "image/select2.gif"; } $sql = "select f_id,name,quick_code from vw_client {$order} limit 10"; echo $sql; echo Html_Table::sql2table($cn, array(array('name' => 'N° de fiche', 'style' => 'text-align:right', 'link' => $url, 'image' => $img), array('name' => 'Nom', 'style' => 'text-align:right'), array('name' => 'QuickCode')), $sql); }