Ajout du navigateur

This commit is contained in:
Dany De Bontridder 2013-09-13 22:56:44 +00:00
parent 6d2f0949ef
commit 74131d5970
3 changed files with 133 additions and 0 deletions

View file

@ -61,6 +61,8 @@ content[30]="Peut contenir une information telle que le message structuré sur l
content[31]="Peut contenir un numéro de bon de commande";
content[32]='<h3> Remarque : choix possibles </h3> <ul> <li> Détail opérations ne donne pas le même résultat si on regarde tous les journaux ou un journal de type ACH ou VEN</li> <li> Liste opérations ne donne pas le même résultat si on regarde tous les journaux ou un journal de type ACH ou VEN</li> <li> Journaux VEN ou ACH en mode "détail opérations" donne les détails des factures, y compris les montants, TVA et quantité par article</li> <li> Journaux VEN ou ACH en mode "liste opérations" donne pour chaque opération, le total de la TVA, ND, ...</li> </ul>';
content[33]='le type vaut :<ul> <li> ME pour Menu</li> <li> PR pour les impressions </li> <li> PL pour les plugins</li> <li> SP pour des valeurs spéciales</li> </ul>';
content[34]='Cliquez sur le code AD pour ouvrir le menu dans un nouvel onglet';
content[35]='Cliquez sur le chemin pour ouvrir le menu';
function showBulle(p_ctl){
d=document.getElementById('bulle');
d.innerHTML=content[p_ctl];

90
include/navigator.inc.php Normal file
View file

@ -0,0 +1,90 @@
<?php
/*
* This file is part of PhpCompta.
*
* PhpCompta is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* PhpCompta is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with PhpCompta; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
/* $Revision: 5380 $ */
// Copyright Author Dany De Bontridder dany@alchimerys.be
if ( ! defined ('ALLOWED')) die('Appel direct ne sont pas permis');
$sql="
select code, me_code,me_description,coalesce(me_description_etendue,me_description) as me_description_etendue,v1menu,v2menu,v3menu,p_type_display
from
v_menu_description
where user_name=$1
order by 2 ";
$a_menu=$cn->get_array($sql,array($_SESSION['g_user']));
?>
<div class="content">
<h1>Navigateur</h1>
<p>
Vous permet d'accèder rapidement au menu qui vous intéresse, utiliser le filtre pour trouver plus rapidement
</p>
<p style='margin-left: 5%'>
Filtre : <?php
echo HtmlInput::filter_table("navi_tb", "1", '1');
?>
</p>
<table id="navi_tb" class="sortable" style="width:90%;margin-left: 5%;border-spacing:0em 1.25em;border-collapse: separate">
<tr>
<th class='sorttable_sorted'>
Code AD
<?php echo HtmlInput::infobulle(34); ?>
<span id="sorttable_sortfwdind">&nbsp;&blacktriangledown;</span>
</th>
<th>
Chemin
<?php echo HtmlInput::infobulle(35); ?>
</th>
<th>
Description complète
</th>
</tr>
<?php
$nMax=count($a_menu);
$url="do.php?gDossier=".dossier::id();
for ($i=0;$i<$nMax;$i++):
?>
<tr>
<td>
<a class='mtitle' style='text-decoration: underline' href="<?php echo $url."&ac=".$a_menu[$i]['code']; ?>" target='_blank'>
<?php echo $a_menu[$i]['me_code']; ?>
</a>
</td>
<td>
<a class='mtitle' style='text-decoration: underline' href="<?php echo $url."&ac=".$a_menu[$i]['code']; ?>">
<?php
$path=$a_menu[$i]['v3menu'];
$path.=$a_menu[$i]['v2menu'];
$path.=$a_menu[$i]['v1menu'];
echo $path;
?>
</a>
</td>
<td>
<?php if ($a_menu[$i]['p_type_display'] == 'PL') echo '(Extension)';
echo $a_menu[$i]['me_description_etendue']; ?>
</td>
</tr>
<?php endfor; ?>
</table>
</div>

View file

@ -83,3 +83,44 @@ drop function add_parm_code();
update parm_code set p_value='67' where p_value='6740' and p_code='DNA';
alter table menu_ref add me_description_etendue text;
insert into menu_ref(me_code,me_menu,me_file, me_url,me_description,me_parameter,me_javascript,me_type,me_description_etendue)
values
('NAVI','Navigateur','navigator.inc.php',null,'Menu simplifié pour retrouver rapidement un menu',null,null,'ME','Le navigateur vous présente une liste de menu auquel vous avez accès et vous permet d''accèder plus rapidement au menu que vous souhaitez rapidement');
insert into profile_menu (me_code,me_code_dep,p_id,p_order, p_type_display,pm_default)
values
('NAVI',null,1,90,'M',0), ('NAVI',null,2,90,'M',0);
update menu_ref set me_menu='Impression Journaux' where me_code='PRINTJRN';
update menu_ref set me_description='Impression des journaux' where me_code='PRINTJRN';
update menu_ref set me_description='Liste du Suivi' where me_code='FOLLOW';
/*
* Vue montrant toutes les possibilités
*/
CREATE OR REPLACE VIEW v_menu_description AS
with t_menu as ( SELECT mr.me_menu,pm.me_code, pm.me_code_dep, pm.p_type_display, pu.user_name, mr.me_file, mr.me_javascript, mr.me_description,mr.me_description_etendue
FROM profile_menu pm
JOIN profile_user pu ON pu.p_id = pm.p_id
JOIN profile p ON p.p_id = pm.p_id
JOIN menu_ref mr USING (me_code))
select distinct coalesce(v3.me_code||'/','')||coalesce(v2.me_code,'')||
case when v2.me_code is null then coalesce(v1.me_code,'')
when v2.me_code is not null then
coalesce('/'||v1.me_code,'')
end as code
, v1.me_code
,v1.me_description,v1.me_description_etendue,v1.me_file,V1.USER_NAME,
'> '||v1.me_menu as v1menu,
case when coalesce(v3.me_menu,'') <> '' then ' > '||v2.me_menu else v2.me_menu end as v2menu,
v3.me_menu as v3menu,
v3.p_type_display
from t_menu as v1
left join t_menu as v2 on (v1.me_code_dep=v2.me_code)
left join t_menu as v3 on (v2.me_code_dep=v3.me_code)
where v1.p_type_display not in ('P') and (coalesce(v1.me_file,'') <>'' or coalesce(v1.me_javascript,'')<>'');
COMMENT ON VIEW v_menu_description
IS 'Description des menus';