From 1dfb0cac4ed8ca11c93d52e2fe7d869e08f47c54 Mon Sep 17 00:00:00 2001 From: a-schild Date: Tue, 7 Jul 2015 18:08:10 +0200 Subject: [PATCH 0001/1163] Allow filtering on date fields for supplier factures --- htdocs/fourn/facture/impayees.php | 44 +++++++++++++++++++++++++++++-- 1 file changed, 42 insertions(+), 2 deletions(-) diff --git a/htdocs/fourn/facture/impayees.php b/htdocs/fourn/facture/impayees.php index 83d4b830c5f..826393970b8 100644 --- a/htdocs/fourn/facture/impayees.php +++ b/htdocs/fourn/facture/impayees.php @@ -5,6 +5,7 @@ * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2012 Vinicius Nogueira * Copyright (C) 2012 Juanjo Menent + * Copyright (C) 2015 Andre Schild * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -56,6 +57,16 @@ $search_company = GETPOST('search_company','alpha'); $search_amount_no_tax = GETPOST('search_amount_no_tax','alpha'); $search_amount_all_tax = GETPOST('search_amount_all_tax','alpha'); +$op1month=GETPOST('op1month'); +$op1day=GETPOST('op1day'); +$op1year=GETPOST('op1year'); +$filter_op1=GETPOST('filter_op1'); + +$op2month=GETPOST('op2month'); +$op2day=GETPOST('op2day'); +$op2year=GETPOST('op2year'); +$filter_op2=GETPOST('filter_op2'); + $page = GETPOST("page",'int'); if ($page == -1) { $page = 0; } $offset = $conf->liste_limit * $page; @@ -71,6 +82,14 @@ if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both $search_company=""; $search_amount_no_tax=""; $search_amount_all_tax=""; + $op1month=""; + $op1day=""; + $op1year=""; + $filter_op1=""; + $op2month=""; + $op2day=""; + $op2year=""; + $filter_op2=""; } /* @@ -78,6 +97,7 @@ if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both */ $now=dol_now(); +$form=new Form($db); llxHeader('',$langs->trans("BillsSuppliersUnpaid")); @@ -101,6 +121,10 @@ if ($user->rights->fournisseur->facture->lire) $sql.= " WHERE f.entity = ".$conf->entity; $sql.= " AND f.fk_soc = s.rowid"; $sql.= " AND f.paye = 0 AND f.fk_statut = 1"; + $filter_date1=dol_mktime(0,0,0,$op1month,$op1day,$op1year); + if (! empty($filter_op1) && $filter_op1 != -1 && $filter_date1 != '') $sql.= " AND f.datef ".$filter_op1." '".$db->idate($filter_date1)."'"; + $filter_date2=dol_mktime(0,0,0,$op2month,$op2day,$op2year); + if (! empty($filter_op2) && $filter_op2 != -1 && $filter_date2 != '') $sql.= " AND f.date_lim_reglement ".$filter_op2." '".$db->idate($filter_date2)."'"; if ($option == 'late') $sql.=" AND f.date_lim_reglement < '".$db->idate(dol_now() - $conf->facture->fournisseur->warning_delay)."'"; if (! $user->rights->societe->client->voir && ! $socid) $sql .= " AND s.rowid = sc.fk_soc AND sc.fk_user = " .$user->id; if ($socid) $sql .= " AND s.rowid = ".$socid; @@ -168,6 +192,10 @@ if ($user->rights->fournisseur->facture->lire) if ($search_company) $param.='&search_company='.urlencode($search_company); if ($search_amount_no_tax) $param.='&search_amount_no_tax='.urlencode($search_amount_no_tax); if ($search_amount_all_tax) $param.='&search_amount_all_tax='.urlencode($search_amount_all_tax); + if (! empty($filter_op1) && $filter_op1 != -1) $param.='&filter_op1='.urlencode($filter_op1); + if ($filter_date1 != '') $param.='&op1day='.$op1day.'&op1month='.$op1month.'&op1year='.$op1year; + if (! empty($filter_op2) && $filter_op2 != -1) $param.='&filter_op2='.urlencode($filter_op2); + if ($filter_date2 != '') $param.='&op2day='.$op2day.'&op2month='.$op2month.'&op2year='.$op2year; $param.=($option?"&option=".$option:""); if (! empty($late)) $param.='&late='.urlencode($late); @@ -206,8 +234,20 @@ if ($user->rights->fournisseur->facture->lire) print ''; print ''; print ''; - print ' '; - print ' '; + print ''; + $arrayofoperators=array('<'=>'<','>'=>'>'); + print $form->selectarray('filter_op1',$arrayofoperators,$filter_op1,1); + print ' '; + $filter_date1=dol_mktime(0,0,0,$op1month,$op1day,$op1year); + print $form->select_date($filter_date1,'op1',0,0,1); + print ''; + print ''; + $arrayofoperators=array('<'=>'<','>'=>'>'); + print $form->selectarray('filter_op2',$arrayofoperators,$filter_op2,1); + print ' '; + $filter_date2=dol_mktime(0,0,0,$op2month,$op2day,$op2year); + print $form->select_date($filter_date2,'op2',0,0,1); + print ''; print ''; print ''; print ''; From 134f13c63f1f1f325c63f7ec3c1a6fb654b432b2 Mon Sep 17 00:00:00 2001 From: a-schild Date: Tue, 7 Jul 2015 18:17:22 +0200 Subject: [PATCH 0002/1163] Removed conflict code from merge/checkout --- htdocs/fourn/facture/paiement.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index 20cf8f250bd..ba3f82c78e0 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -424,8 +424,8 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie // Bouton Enregistrer if ($action != 'add_paiement') { - print '
'.$langs->trans("ClosePaidInvoicesAutomatically"); - print '
'; + print '

'.$langs->trans("ClosePaidInvoicesAutomatically"); + print '
'; } // Form to confirm payment @@ -545,7 +545,7 @@ if (empty($action)) print_liste_field_titre($langs->trans('Account'),$_SERVER["PHP_SELF"],'ba.label','',$paramlist,'',$sortfield,$sortorder); print_liste_field_titre($langs->trans('Amount'),$_SERVER["PHP_SELF"],'p.amount','',$paramlist,'align="right"',$sortfield,$sortorder); //print_liste_field_titre($langs->trans('Invoice'),$_SERVER["PHP_SELF"],'ref_supplier','',$paramlist,'',$sortfield,$sortorder); - print_liste_field_titre(''); + print ' '; print "\n"; // Lines for filters fields From 0fe39d4e4b16467db2d276e0e7901854c439bda3 Mon Sep 17 00:00:00 2001 From: a-schild Date: Tue, 7 Jul 2015 18:33:09 +0200 Subject: [PATCH 0003/1163] Show due date when creating payments, so user can select the bills to pay --- htdocs/fourn/facture/paiement.php | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index ba3f82c78e0..f82dd93904b 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -5,11 +5,9 @@ * Copyright (C) 2004 Christophe Combelles * Copyright (C) 2005 Marc Barilley / Ocebo * Copyright (C) 2005-2012 Regis Houssin -<<<<<<< HEAD * Copyright (C) 2014 Teddy Andreotti <125155@supinfo.com> -======= - * Copyright (C) 2015 Marcos García ->>>>>>> refs/remotes/origin/3.6 + * Copyright (C) 2015 Marcos García + * Copyright (C) 2015 Andre Schild * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -322,7 +320,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie /* * Autres factures impayees */ - $sql = 'SELECT f.rowid as facid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc, f.datef as df'; + $sql = 'SELECT f.rowid as facid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc, f.datef as df, date_lim_reglement as duedate'; $sql.= ', SUM(pf.amount) as am'; $sql.= ' FROM '.MAIN_DB_PREFIX.'facture_fourn as f'; $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'paiementfourn_facturefourn as pf ON pf.fk_facturefourn = f.rowid'; @@ -330,7 +328,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie $sql.= ' AND f.fk_soc = '.$object->socid; $sql.= ' AND f.paye = 0'; $sql.= ' AND f.fk_statut = 1'; // Statut=0 => non validee, Statut=2 => annulee - $sql.= ' GROUP BY f.rowid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc, f.datef'; + $sql.= ' GROUP BY f.rowid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc, f.datef, f.date_lim_reglement'; $resql = $db->query($sql); if ($resql) { @@ -356,6 +354,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print ''.$langs->trans('Ref').''; print ''.$langs->trans('RefSupplier').''; print ''.$langs->trans('Date').''; + print ''.$langs->trans('DateMaxPayment').''; print ''.$langs->trans('AmountTTC').''; print ''.$langs->trans('AlreadyPaid').''; print ''.$langs->trans('RemainderToPay').''; @@ -386,6 +385,15 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie { print '!!!'; } + if ($objp->duedate > 0 ) + { + print ''; + print dol_print_date($db->jdate($objp->duedate), 'day').''; + } + else + { + print '!!!'; + } print ''.price($objp->total_ttc).''; print ''.price($objp->am).''; print ''.price($objp->total_ttc - $objp->am).''; @@ -404,7 +412,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie { // Print total print ''; - print ''.$langs->trans('TotalTTC').':'; + print ''.$langs->trans('TotalTTC').':'; print ''.price($total_ttc).''; print ''.price($totalrecu).''; print ''.price($total_ttc - $totalrecu).''; From 2999d0b37a5ee28c51a8bee93c0175ba37d74a45 Mon Sep 17 00:00:00 2001 From: a-schild Date: Wed, 8 Jul 2015 08:58:30 +0200 Subject: [PATCH 0004/1163] Show due days in not payed supplier bills --- htdocs/fourn/facture/impayees.php | 32 +++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/htdocs/fourn/facture/impayees.php b/htdocs/fourn/facture/impayees.php index 826393970b8..b9fb072f437 100644 --- a/htdocs/fourn/facture/impayees.php +++ b/htdocs/fourn/facture/impayees.php @@ -56,6 +56,7 @@ $search_ref_supplier = GETPOST('search_ref_supplier','alpha'); $search_company = GETPOST('search_company','alpha'); $search_amount_no_tax = GETPOST('search_amount_no_tax','alpha'); $search_amount_all_tax = GETPOST('search_amount_all_tax','alpha'); +$search_duedays = GETPOST('search_duedays','alpha'); $op1month=GETPOST('op1month'); $op1day=GETPOST('op1day'); @@ -90,6 +91,7 @@ if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both $op2day=""; $op2year=""; $filter_op2=""; + $duedays=""; } /* @@ -111,6 +113,7 @@ if ($user->rights->fournisseur->facture->lire) $sql = "SELECT s.rowid as socid, s.nom as name,"; $sql.= " f.rowid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc,"; $sql.= " f.datef as df, f.date_lim_reglement as datelimite, "; + $sql.= " DATEDIFF(f.date_lim_reglement, NOW()) as duedays, "; $sql.= " f.paye as paye, f.rowid as facid, f.fk_statut"; $sql.= " ,sum(pf.amount) as am"; if (! $user->rights->societe->client->voir && ! $socid) $sql .= ", sc.fk_soc, sc.fk_user "; @@ -153,11 +156,16 @@ if ($user->rights->fournisseur->facture->lire) $sql .= " AND s.nom LIKE '%".$search_company."%'"; } + if ($search_duedays) + { + $sql .= " AND DATEDIFF(f.date_lim_reglement, NOW()) = '".$search_duedays."'"; + } + if ($search_amount_no_tax) { $sql .= " AND f.total_ht = '".$search_amount_no_tax."'"; } - + if ($search_amount_all_tax) { $sql .= " AND f.total_ttc = '".$search_amount_all_tax."'"; @@ -196,6 +204,7 @@ if ($user->rights->fournisseur->facture->lire) if ($filter_date1 != '') $param.='&op1day='.$op1day.'&op1month='.$op1month.'&op1year='.$op1year; if (! empty($filter_op2) && $filter_op2 != -1) $param.='&filter_op2='.urlencode($filter_op2); if ($filter_date2 != '') $param.='&op2day='.$op2day.'&op2month='.$op2month.'&op2year='.$op2year; + if ($search_duedays) $param.='&search_duedays='.urlencode($search_duedays); $param.=($option?"&option=".$option:""); if (! empty($late)) $param.='&late='.urlencode($late); @@ -221,6 +230,7 @@ if ($user->rights->fournisseur->facture->lire) print_liste_field_titre($langs->trans("RefSupplier"),$_SERVER["PHP_SELF"],"f.ref_supplier","",$param,"",$sortfield,$sortorder); print_liste_field_titre($langs->trans("Date"),$_SERVER["PHP_SELF"],"f.datef","",$param,'align="center"',$sortfield,$sortorder); print_liste_field_titre($langs->trans("DateDue"),$_SERVER["PHP_SELF"],"f.date_lim_reglement","",$param,'align="center"',$sortfield,$sortorder); + print_liste_field_titre($langs->trans("DueDays"),$_SERVER["PHP_SELF"],"duedays","",$param,'align="center"',$sortfield,$sortorder); print_liste_field_titre($langs->trans("Company"),$_SERVER["PHP_SELF"],"s.nom","",$param,"",$sortfield,$sortorder); print_liste_field_titre($langs->trans("AmountHT"),$_SERVER["PHP_SELF"],"f.total_ht","",$param,'align="right"',$sortfield,$sortorder); print_liste_field_titre($langs->trans("AmountTTC"),$_SERVER["PHP_SELF"],"f.total_ttc","",$param,'align="right"',$sortfield,$sortorder); @@ -248,6 +258,9 @@ if ($user->rights->fournisseur->facture->lire) $filter_date2=dol_mktime(0,0,0,$op2month,$op2day,$op2year); print $form->select_date($filter_date2,'op2',0,0,1); print ''; + print ''; + print ''; + print ''; print ''; print ''; print ''; @@ -274,6 +287,16 @@ if ($user->rights->fournisseur->facture->lire) print ""; $classname = "impayee"; + if ($objp->duedays <0) + { + $overdueclassstart=""; + $overdueclassend=""; + } + else + { + $overdueclassstart=""; + $overdueclassend=""; + } print ''; $facturestatic->id=$objp->facid; @@ -284,9 +307,10 @@ if ($user->rights->fournisseur->facture->lire) print ''.dol_trunc($objp->ref_supplier,12).''; print ''.dol_print_date($db->jdate($objp->df),'day')."\n"; - print ''.dol_print_date($db->jdate($objp->datelimite),'day'); + print ''.$overdueclassstart.dol_print_date($db->jdate($objp->datelimite),'day'); if ($objp->datelimite && $db->jdate($objp->datelimite) < ($now - $conf->facture->fournisseur->warning_delay) && ! $objp->paye && $objp->fk_statut == 1) print img_warning($langs->trans("Late")); - print "\n"; + print $overdueclassend."\n"; + print "".$overdueclassstart.$objp->duedays.$overdueclassend.""; print ''; $companystatic->id=$objp->socid; @@ -312,7 +336,7 @@ if ($user->rights->fournisseur->facture->lire) } print ''; - print "".$langs->trans("Total").": "; + print "".$langs->trans("Total").": "; print "".price($total_ht).""; print "".price($total_ttc).""; print "".price($total_paid).""; From 8353e1d462b309455ac6d3ad201c3d9f3ee27dde Mon Sep 17 00:00:00 2001 From: a-schild Date: Wed, 8 Jul 2015 09:18:04 +0200 Subject: [PATCH 0005/1163] Show due days in make payments --- htdocs/fourn/facture/paiement.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index f82dd93904b..35d1f9311e4 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -321,6 +321,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie * Autres factures impayees */ $sql = 'SELECT f.rowid as facid, f.ref, f.ref_supplier, f.total_ht, f.total_ttc, f.datef as df, date_lim_reglement as duedate'; + $sql.= ', DATEDIFF(f.date_lim_reglement, NOW()) as duedays'; $sql.= ', SUM(pf.amount) as am'; $sql.= ' FROM '.MAIN_DB_PREFIX.'facture_fourn as f'; $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'paiementfourn_facturefourn as pf ON pf.fk_facturefourn = f.rowid'; @@ -355,6 +356,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie print ''.$langs->trans('RefSupplier').''; print ''.$langs->trans('Date').''; print ''.$langs->trans('DateMaxPayment').''; + print ''.$langs->trans('DueDays').''; print ''.$langs->trans('AmountTTC').''; print ''.$langs->trans('AlreadyPaid').''; print ''.$langs->trans('RemainderToPay').''; @@ -394,6 +396,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie { print '!!!'; } + print ''.$objp->duedays.''; print ''.price($objp->total_ttc).''; print ''.price($objp->am).''; print ''.price($objp->total_ttc - $objp->am).''; @@ -412,7 +415,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie { // Print total print ''; - print ''.$langs->trans('TotalTTC').':'; + print ''.$langs->trans('TotalTTC').':'; print ''.price($total_ttc).''; print ''.price($totalrecu).''; print ''.price($total_ttc - $totalrecu).''; From 43897d913e248fd271dd277def9a570ae44b15ce Mon Sep 17 00:00:00 2001 From: a-schild Date: Wed, 8 Jul 2015 09:44:59 +0200 Subject: [PATCH 0006/1163] Corrected center to html5 css class instead of center tag --- htdocs/fourn/facture/paiement.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index 35d1f9311e4..09ea8fa23b6 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -435,8 +435,8 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie // Bouton Enregistrer if ($action != 'add_paiement') { - print '

'.$langs->trans("ClosePaidInvoicesAutomatically"); - print '
'; + print '
'.$langs->trans("ClosePaidInvoicesAutomatically"); + print '
'; } // Form to confirm payment From 64d4a08dc6dc46187b6372e1768be36881ada505 Mon Sep 17 00:00:00 2001 From: a-schild Date: Wed, 8 Jul 2015 09:58:51 +0200 Subject: [PATCH 0007/1163] Added translations, corrected title printing in the new way --- htdocs/fourn/facture/paiement.php | 2 +- htdocs/langs/de_DE/bills.lang | 1 + htdocs/langs/en_US/bills.lang | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php index 09ea8fa23b6..9a7f02eceda 100644 --- a/htdocs/fourn/facture/paiement.php +++ b/htdocs/fourn/facture/paiement.php @@ -556,7 +556,7 @@ if (empty($action)) print_liste_field_titre($langs->trans('Account'),$_SERVER["PHP_SELF"],'ba.label','',$paramlist,'',$sortfield,$sortorder); print_liste_field_titre($langs->trans('Amount'),$_SERVER["PHP_SELF"],'p.amount','',$paramlist,'align="right"',$sortfield,$sortorder); //print_liste_field_titre($langs->trans('Invoice'),$_SERVER["PHP_SELF"],'ref_supplier','',$paramlist,'',$sortfield,$sortorder); - print ' '; + print_liste_field_titre(''); print "\n"; // Lines for filters fields diff --git a/htdocs/langs/de_DE/bills.lang b/htdocs/langs/de_DE/bills.lang index 9b743010407..70223f85e4e 100644 --- a/htdocs/langs/de_DE/bills.lang +++ b/htdocs/langs/de_DE/bills.lang @@ -213,6 +213,7 @@ RelatedCommercialProposals=Verknüpfte Angebote MenuToValid=Zur Freigabe DateMaxPayment=Zahlungsziel DateEcheance=Zahlungsfrist (Limit) +DueDays=Tage bis fällig DateInvoice=Rechnungsdatum NoInvoice=Keine Rechnung ClassifyBill=Rechnung einordnen diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index 4f1512a431d..be3bc24b652 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -213,6 +213,7 @@ RelatedCommercialProposals=Related commercial proposals MenuToValid=To valid DateMaxPayment=Payment due before DateEcheance=Due date limit +DueDays=Due days DateInvoice=Invoice date NoInvoice=No invoice ClassifyBill=Classify invoice From d9a1be48cf8626fe48667bb66dc6de65521d3b28 Mon Sep 17 00:00:00 2001 From: "geoffrey.girard" Date: Wed, 1 Jun 2016 09:44:43 +0200 Subject: [PATCH 0008/1163] ADD : new link on weather board for proposals late this link sort on datep asc --- htdocs/comm/propal/class/propal.class.php | 1 + htdocs/index.php | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 56c3839dcb6..2d4fb0a1da0 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -2571,6 +2571,7 @@ class Propal extends CommonObject $response->warning_delay = $delay_warning/60/60/24; $response->label = $label; $response->url = DOL_URL_ROOT.'/comm/propal/list.php?viewstatut='.$statut; + $response->url_late = DOL_URL_ROOT.'/comm/propal/list.php?viewstatut='.$statut.'&sortfield=p.datep&sortorder=asc'; $response->img = img_object($langs->trans("Propals"),"propal"); // This assignment in condition is not a bug. It allows walking the results. diff --git a/htdocs/index.php b/htdocs/index.php index b28038e63c9..03de65e25e5 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -543,7 +543,7 @@ foreach($valid_dashboardlines as $board) //if ($board->nbtodolate > 0) //{ $textlate = $langs->trans("Late").' = '.$langs->trans("DateReference").' > '.$langs->trans("DateToday").' '.(ceil($board->warning_delay) >= 0 ? '+' : '').ceil($board->warning_delay).' '.$langs->trans("days"); - $boxwork.= ''; + $boxwork.= ''; $boxwork.= $board->nbtodolate; $boxwork.= ''; //} From c082505021aa6b007b25f8da55e93b9b690ba134 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sat, 23 Jul 2016 16:37:21 +0200 Subject: [PATCH 0009/1163] NEW Added product attributes feature --- htdocs/attributes/admin/admin.php | 65 ++ htdocs/attributes/admin/index.html | 0 htdocs/attributes/ajax/getCombinations.php | 50 ++ .../attributes/ajax/get_attribute_values.php | 61 ++ htdocs/attributes/ajax/index.html | 0 htdocs/attributes/ajax/orderAttribute.php | 53 ++ htdocs/attributes/card.php | 245 +++++++ .../class/ProductAttribute.class.php | 317 +++++++++ .../class/ProductAttributeValue.class.php | 221 ++++++ .../class/ProductCombination.class.php | 641 ++++++++++++++++++ .../ProductCombination2ValuePair.class.php | 151 +++++ htdocs/attributes/class/index.html | 0 htdocs/attributes/combinations.php | 641 ++++++++++++++++++ htdocs/attributes/create.php | 73 ++ htdocs/attributes/create_val.php | 102 +++ htdocs/attributes/generator.php | 393 +++++++++++ htdocs/attributes/index.html | 0 htdocs/attributes/lib/index.html | 0 .../attributes/lib/product_attributes.lib.php | 31 + htdocs/attributes/list.php | 140 ++++ htdocs/comm/propal/card.php | 28 +- htdocs/commande/card.php | 29 +- htdocs/compta/facture.php | 31 +- htdocs/contrat/card.php | 4 +- htdocs/core/class/html.form.class.php | 125 +++- htdocs/core/lib/functions2.lib.php | 29 +- htdocs/core/lib/product.lib.php | 19 +- htdocs/core/tpl/objectline_create.tpl.php | 47 +- htdocs/fourn/commande/card.php | 34 +- htdocs/fourn/facture/card.php | 33 +- .../install/mysql/migration/3.9.0-4.0.0.sql | 1 - .../install/mysql/migration/4.0.0-5.0.0.sql | 36 + ....key.sql => llx_product_attribute.key.sql} | 8 +- ...y_events.sql => llx_product_attribute.sql} | 20 +- .../llx_product_attribute_combination.sql | 28 + .../llx_product_attribute_combination2val.sql | 25 + .../llx_product_attribute_value.key.sql | 19 + .../tables/llx_product_attribute_value.sql | 26 + htdocs/langs/en_US/main.lang | 2 + htdocs/langs/en_US/products.lang | 38 +- htdocs/product/card.php | 18 +- htdocs/product/class/product.class.php | 30 + htdocs/product/list.php | 46 +- 43 files changed, 3763 insertions(+), 97 deletions(-) create mode 100644 htdocs/attributes/admin/admin.php create mode 100644 htdocs/attributes/admin/index.html create mode 100644 htdocs/attributes/ajax/getCombinations.php create mode 100644 htdocs/attributes/ajax/get_attribute_values.php create mode 100644 htdocs/attributes/ajax/index.html create mode 100644 htdocs/attributes/ajax/orderAttribute.php create mode 100644 htdocs/attributes/card.php create mode 100644 htdocs/attributes/class/ProductAttribute.class.php create mode 100644 htdocs/attributes/class/ProductAttributeValue.class.php create mode 100644 htdocs/attributes/class/ProductCombination.class.php create mode 100644 htdocs/attributes/class/ProductCombination2ValuePair.class.php create mode 100644 htdocs/attributes/class/index.html create mode 100644 htdocs/attributes/combinations.php create mode 100644 htdocs/attributes/create.php create mode 100644 htdocs/attributes/create_val.php create mode 100644 htdocs/attributes/generator.php create mode 100644 htdocs/attributes/index.html create mode 100644 htdocs/attributes/lib/index.html create mode 100644 htdocs/attributes/lib/product_attributes.lib.php create mode 100644 htdocs/attributes/list.php rename htdocs/install/mysql/tables/{llx_holiday_events.key.sql => llx_product_attribute.key.sql} (81%) rename htdocs/install/mysql/tables/{llx_holiday_events.sql => llx_product_attribute.sql} (70%) create mode 100644 htdocs/install/mysql/tables/llx_product_attribute_combination.sql create mode 100644 htdocs/install/mysql/tables/llx_product_attribute_combination2val.sql create mode 100644 htdocs/install/mysql/tables/llx_product_attribute_value.key.sql create mode 100644 htdocs/install/mysql/tables/llx_product_attribute_value.sql diff --git a/htdocs/attributes/admin/admin.php b/htdocs/attributes/admin/admin.php new file mode 100644 index 00000000000..eedacb086b3 --- /dev/null +++ b/htdocs/attributes/admin/admin.php @@ -0,0 +1,65 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +require '../../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php'; + +$langs->load("admin"); +$langs->load("products"); + +// Security check +if (! $user->admin || (empty($conf->product->enabled) && empty($conf->service->enabled))) + accessforbidden(); + +if ($_POST) { + + $value = GETPOST('PRODUIT_ATTRIBUTES_HIDECHILD'); + + if (dolibarr_set_const($db, 'PRODUIT_ATTRIBUTES_HIDECHILD', $value, 'chaine', 0, '', $conf->entity)) { + setEventMessage($langs->trans('RecordSaved')); + } else { + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + } + +} + +$title = $langs->trans('ModuleSetup').' '.$langs->trans('ProductAttributes'); +llxHeader('', $title); + +$linkback=''.$langs->trans("BackToModuleList").''; +print load_fiche_titre($title,$linkback,'title_setup'); + +dol_fiche_head(array(), 'general', $tab, 0, 'product'); + +print '
'; +print ''; +print ''; +print ''."\n"; +print ''."\n"; +print ''."\n"; +print ''; +print '
'.$langs->trans("Parameters").''.$langs->trans("Value").' 
'.$langs->trans('HideProductCombinations').''; +print $form->selectyesno("PRODUIT_ATTRIBUTES_HIDECHILD",$conf->global->PRODUIT_ATTRIBUTES_HIDECHILD,1).'
'; +print '
'; +print '
'; + +llxFooter(); + +$db->close(); + diff --git a/htdocs/attributes/admin/index.html b/htdocs/attributes/admin/index.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/htdocs/attributes/ajax/getCombinations.php b/htdocs/attributes/ajax/getCombinations.php new file mode 100644 index 00000000000..5ed3e959ea3 --- /dev/null +++ b/htdocs/attributes/ajax/getCombinations.php @@ -0,0 +1,50 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +define('NOTOKENRENEWAL','1'); +define('NOREQUIREMENU','1'); +define('NOREQUIREHTML','1'); +define('NOREQUIREAJAX','1'); +define('NOREQUIRESOC','1'); + +require '../../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; + +header('Content-Type: application/json'); + +$id = GETPOST('id'); + +if (!$id) { + print json_encode(array( + 'error' => 'ID not set' + )); + die; +} + +$product = new Product($db); + +if ($product->fetch($id) < 0) { + print json_encode(array( + 'error' => 'Product not found' + )); +} + +$prodcomb = new ProductCombination($db); + +echo json_encode($prodcomb->getUniqueAttributesAndValuesByFkProductParent($product->id)); diff --git a/htdocs/attributes/ajax/get_attribute_values.php b/htdocs/attributes/ajax/get_attribute_values.php new file mode 100644 index 00000000000..a08126d997a --- /dev/null +++ b/htdocs/attributes/ajax/get_attribute_values.php @@ -0,0 +1,61 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +define('NOTOKENRENEWAL','1'); +define('NOREQUIREMENU','1'); +define('NOREQUIREHTML','1'); +define('NOREQUIREAJAX','1'); +define('NOREQUIRESOC','1'); + +require '../../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttribute.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttributeValue.class.php'; + +header('Content-Type: application/json'); + +$id = GETPOST('id'); + +if (!$id) { + print json_encode(array( + 'error' => 'ID not set' + )); + die; +} + +$prodattr = new ProductAttribute($db); + +if ($prodattr->fetch($id) < 0) { + print json_encode(array( + 'error' => 'Attribute not found' + )); + die; +} + +$prodattrval = new ProductAttributeValue($db); + +$res = $prodattrval->fetchAllByProductAttribute($id); + +if ($res == -1) { + print json_encode(array( + 'error' => 'Internal error' + )); + die; +} + +print json_encode($res); \ No newline at end of file diff --git a/htdocs/attributes/ajax/index.html b/htdocs/attributes/ajax/index.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/htdocs/attributes/ajax/orderAttribute.php b/htdocs/attributes/ajax/orderAttribute.php new file mode 100644 index 00000000000..6c7eecc9453 --- /dev/null +++ b/htdocs/attributes/ajax/orderAttribute.php @@ -0,0 +1,53 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +if (! defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL','1'); // Disable token renewal +if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU','1'); +if (! defined('NOREQUIREHTML')) define('NOREQUIREHTML','1'); +if (! defined('NOREQUIREAJAX')) define('NOREQUIREAJAX','1'); +if (! defined('NOREQUIRESOC')) define('NOREQUIRESOC','1'); +if (! defined('NOREQUIRETRAN')) define('NOREQUIRETRAN','1'); +if (! defined('NOREQUIREHOOK')) define('NOREQUIREHOOK','1'); // Disable "main.inc.php" hooks + +require '../../main.inc.php'; + +/* + * View + */ + +top_httphead(); + +// Registering the location of boxes +if (isset($_POST['roworder'])) { + $roworder=GETPOST('roworder','alpha',2); + + dol_syslog("AjaxOrderAttribute roworder=".$roworder, LOG_DEBUG); + + $rowordertab = explode(',', $roworder); + + foreach ($rowordertab as $value) { + if (!empty($value)) { + $newrowordertab[] = $value; + } + } + + require DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttribute.class.php'; + + ProductAttribute::bulkUpdateOrder($db, $newrowordertab); +} + diff --git a/htdocs/attributes/card.php b/htdocs/attributes/card.php new file mode 100644 index 00000000000..3339a169c89 --- /dev/null +++ b/htdocs/attributes/card.php @@ -0,0 +1,245 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +require '../main.inc.php'; +require 'class/ProductAttribute.class.php'; +require 'class/ProductAttributeValue.class.php'; + +$id = GETPOST('id'); +$valueid = GETPOST('valueid'); +$action = GETPOST('action'); +$label = GETPOST('label'); +$ref = GETPOST('ref'); +$confirm = GETPOST('confirm'); + +$prodattr = new ProductAttribute($db); +$prodattrval = new ProductAttributeValue($db); + +if ($prodattr->fetch($id) < 1) { + dol_print_error($db, $langs->trans('ErrorRecordNotFound')); + die; +} + +if ($_POST) { + + if ($action == 'edit') { + + $prodattr->label = $label; + $prodattr->ref = $ref; + + if ($prodattr->update() < 1) { + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + } else { + setEventMessage($langs->trans('RecordSaved')); + header('Location: '.dol_buildpath('/attributes/card.php?id='.$id, 2)); + die; + } + } elseif ($action == 'edit_value') { + + if ($prodattrval->fetch($valueid) > 0) { + + $prodattrval->ref = $ref; + $prodattrval->value = GETPOST('value'); + + if ($prodattrval->update() > 0) { + setEventMessage($langs->trans('RecordSaved')); + } else { + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + } + } + + header('Location: '.dol_buildpath('/attributes/card.php?id='.$prodattr->id, 2)); + die; + } + +} + +if ($confirm == 'yes') { + if ($action == 'confirm_delete') { + + $db->begin(); + + $res = $prodattrval->deleteByFkAttribute($prodattr->id); + + if ($res < 1 || ($prodattr->delete() < 1)) { + $db->rollback(); + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + header('Location: '.dol_buildpath('/attributes/card.php?id='.$prodattr->id, 2)); + } else { + $db->commit(); + setEventMessage($langs->trans('RecordSaved')); + header('Location: '.dol_buildpath('/attributes/list.php', 2)); + } + + die; + } elseif ($action == 'confirm_deletevalue') { + + if ($prodattrval->fetch($valueid) > 0) { + + if ($prodattrval->delete() < 1) { + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + } else { + setEventMessage($langs->trans('RecordSaved')); + } + + header('Location: '.dol_buildpath('/attributes/card.php?id='.$prodattr->id, 2)); + die; + } + } +} + +$langs->load('products'); + +$title = $langs->trans('ProductAttributeName', dol_htmlentities($prodattr->label)); +$var = false; + +llxHeader('', $title); + +print_fiche_titre($title); + +dol_fiche_head(); + +if ($action == 'edit') { + print '
'; +} + +?> + + + + + + + + + + +
trans('Ref') ?> + ref.'">'; + } else { + print dol_htmlentities($prodattr->ref); + } ?> +
trans('Label') ?> + label.'">'; + } else { + print dol_htmlentities($prodattr->label); + } ?> +
+ + +
+ +
+formconfirm( + "card.php?id=".$prodattr->id, + $langs->trans('Delete'), + $langs->trans('ProductAttributeDeleteDialog'), + "confirm_delete", + '', + 0, + 1 + ); + } elseif ($action == 'delete_value') { + + if ($prodattrval->fetch($valueid) > 0) { + + $form = new Form($db); + + print $form->formconfirm( + "card.php?id=".$prodattr->id."&valueid=".$prodattrval->id, + $langs->trans('Delete'), + $langs->trans('ProductAttributeValueDeleteDialog', dol_htmlentities($prodattrval->value), dol_htmlentities($prodattrval->ref)), + "confirm_deletevalue", + '', + 0, + 1 + ); + } + } + + ?> + + + + +
+ + + + + + + + + + fetchAllByProductAttribute($prodattr->id) as $attrval): ?> + > + id)): ?> + + + + + + + + + + +
trans('Ref') ?>trans('Value') ?>
+ + trans('Cancel') ?> + ref) ?>value) ?> + + +
+ + +
+ + + + + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +class ProductAttribute +{ + /** + * Database handler + * @var DoliDB + */ + private $db; + + /** + * Id of the product attribute + * @var int + */ + public $id; + + /** + * Ref of the product attribute + * @var + */ + public $ref; + + /** + * Label of the product attribute + * @var string + */ + public $label; + + /** + * Order of attribute. + * Lower ones will be shown first and higher ones last + * @var int + */ + public $rang; + + public function __construct(DoliDB $db) + { + global $conf; + + $this->db = $db; + $this->entity = $conf->entity; + } + + /** + * Fetches the properties of a product attribute + * + * @param int $id Attribute id + * @return int <1 KO, >1 OK + */ + public function fetch($id) + { + if (!$id) { + return -1; + } + + require_once __DIR__.'/../lib/product_attributes.lib.php'; + + $sql = "SELECT rowid, ref, label, rang FROM ".MAIN_DB_PREFIX."product_attribute WHERE rowid = ".(int) $id." AND entity IN (".getProductEntities($this->db).")"; + + $query = $this->db->query($sql); + + if (!$this->db->num_rows($query)) { + return -1; + } + + $result = $this->db->fetch_object($query); + + $this->id = $result->rowid; + $this->ref = $result->ref; + $this->label = $result->label; + $this->rang = $result->rang; + + return 1; + } + + /** + * Returns an array of all product attributes + * + * @return ProductAttribute[] + */ + public function fetchAll() + { + require_once __DIR__.'/../lib/product_attributes.lib.php'; + + $return = array(); + + $sql = 'SELECT rowid, ref, label, rang FROM '.MAIN_DB_PREFIX."product_attribute WHERE entity IN (".getProductEntities($this->db).')'; + $sql .= $this->db->order('rang', 'asc'); + $query = $this->db->query($sql); + + while ($result = $this->db->fetch_object($query)) { + + $tmp = new ProductAttribute($this->db); + $tmp->id = $result->rowid; + $tmp->ref = $result->ref; + $tmp->label = $result->label; + $tmp->rang = $result->rang; + + $return[] = $tmp; + } + + return $return; + } + + /** + * Creates a product attribute + * + * @return int <0 KO, >0 OK + */ + public function create() + { + //Ref must be uppercase + $this->ref = strtoupper($this->ref); + + $sql = "INSERT INTO ".MAIN_DB_PREFIX."product_attribute (ref, label, entity, rang) + VALUES ('".$this->db->escape($this->ref)."', '".$this->db->escape($this->label)."', ".(int) $this->entity.", ".(int) $this->rang.")"; + $query = $this->db->query($sql); + + if ($query) { + $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'product_attribute'); + + return 1; + } + + return -1; + } + + /** + * Updates a product attribute + * + * @return int <0 KO, >0 OK + */ + public function update() + { + //Ref must be uppercase + $this->ref = strtoupper($this->ref); + + $sql = "UPDATE ".MAIN_DB_PREFIX."product_attribute SET ref = '".$this->db->escape($this->ref)."', label = '".$this->db->escape($this->label)."', rang = ".(int) $this->rang." WHERE rowid = ".(int) $this->id; + + if ($this->db->query($sql)) { + return 1; + } + + return -1; + } + + /** + * Deletes a product attribute + * + * @return int <0 KO, >0 OK + */ + public function delete() + { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."product_attribute WHERE rowid = ".(int) $this->id; + + if ($this->db->query($sql)) { + return 1; + } + + return -1; + } + + /** + * Returns the number of products that are using this attribute + * + * @return int + */ + public function countChildProducts() + { + require_once __DIR__.'/../lib/product_attributes.lib.php'; + + $sql = "SELECT COUNT(*) count FROM ".MAIN_DB_PREFIX."product_attribute_combination2val pac2v + LEFT JOIN ".MAIN_DB_PREFIX."product_attribute_combination pac ON pac2v.fk_prod_combination = pac.rowid WHERE pac2v.fk_prod_attr = ".(int) $this->id." AND pac.entity IN (".getProductEntities($this->db).")"; + + $query = $this->db->query($sql); + + $result = $this->db->fetch_object($query); + + return $result->count; + } + + /** + * Reorders the order of the attributes. + * This is an internal function used by moveLine function + * + * @return int <0 KO >0 OK + */ + protected function reorderLines() + { + $tmp_order = array(); + + $sql = 'SELECT rowid FROM '.MAIN_DB_PREFIX.'product_attribute WHERE rang = 0'; + $sql .= $this->db->order('rang, rowid', 'asc'); + + $query = $this->db->query($sql); + + if (!$query) { + return -1; + } + + while ($result = $this->db->fetch_object($query)) { + $tmp_order[] = $result->rowid; + } + + foreach ($tmp_order as $order => $rowid) { + $tmp = new ProductAttribute($this->db); + $tmp->fetch($rowid); + $tmp->rang = $order+1; + + if ($tmp->update() < 0) { + return -1; + } + } + + return 1; + } + + /** + * Internal function to handle moveUp and moveDown functions + * + * @param string $type up/down + * @return int <0 KO >0 OK + */ + private function moveLine($type) + { + if ($this->reorderLines() < 0) { + return -1; + } + + $this->db->begin(); + + if ($type == 'up') { + $newrang = $this->rang - 1; + } else { + $newrang = $this->rang + 1; + } + + $sql = 'UPDATE '.MAIN_DB_PREFIX.'product_attribute SET rang = '.$this->rang.' WHERE rang = '.$newrang; + + if (!$this->db->query($sql)) { + $this->db->rollback(); + return -1; + } + + $this->rang = $newrang; + + if ($this->update() < 0) { + $this->db->rollback(); + return -1; + } + + $this->db->commit(); + return 1; + } + + /** + * Shows this attribute before others + * + * @return int <0 KO >0 OK + */ + public function moveUp() + { + return $this->moveLine('up'); + } + + /** + * Shows this attribute after others + * + * @return int <0 KO >0 OK + */ + public function moveDown() + { + return $this->moveLine('down'); + } + + /** + * Updates the order of all attributes. Used by AJAX page for drag&drop + * + * @param DoliDB $db Database handler + * @param array $order Array with row id ordered in ascendent mode + * @return int <0 KO >0 OK + */ + public static function bulkUpdateOrder(DoliDB $db, array $order) + { + $tmp = new ProductAttribute($db); + + foreach ($order as $key => $attrid) { + if ($tmp->fetch($attrid) < 0) { + return -1; + } + + $tmp->rang = $key; + + if ($tmp->update() < 0) { + return -1; + } + } + + return 1; + } +} \ No newline at end of file diff --git a/htdocs/attributes/class/ProductAttributeValue.class.php b/htdocs/attributes/class/ProductAttributeValue.class.php new file mode 100644 index 00000000000..f500fb251c6 --- /dev/null +++ b/htdocs/attributes/class/ProductAttributeValue.class.php @@ -0,0 +1,221 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +class ProductAttributeValue +{ + /** + * Database handler + * @var DoliDB + */ + private $db; + + /** + * Attribute value id + * @var int + */ + public $id; + + /** + * Product attribute id + * @var int + */ + public $fk_product_attribute; + + /** + * Attribute value ref + * @var string + */ + public $ref; + + /** + * Attribute value value + * @var string + */ + public $value; + + public function __construct(DoliDB $db) + { + global $conf; + + $this->db = $db; + $this->entity = $conf->entity; + } + + /** + * Gets a product attribute value + * + * @param int $valueid Product attribute value id + * @return int <0 KO, >0 OK + */ + public function fetch($valueid) + { + require_once __DIR__.'/../lib/product_attributes.lib.php'; + + $sql = "SELECT rowid, fk_product_attribute, ref, value FROM ".MAIN_DB_PREFIX."product_attribute_value WHERE rowid = ".(int) $valueid." AND entity IN (".getProductEntities($this->db).")"; + + $query = $this->db->query($sql); + + if (!$query) { + return -1; + } + + if (!$this->db->num_rows($query)) { + return -1; + } + + $result = $this->db->fetch_object($query); + + $this->id = $result->rowid; + $this->fk_product_attribute = $result->fk_product_attribute; + $this->ref = $result->ref; + $this->value = $result->value; + + return 1; + } + + /** + * Returns all product attribute values of a product attribute + * + * @param int $prodattr_id Product attribute id + * @param bool $only_used Fetch only used attribute values + * @return ProductAttributeValue[] + */ + public function fetchAllByProductAttribute($prodattr_id, $only_used = false) + { + require_once __DIR__.'/../lib/product_attributes.lib.php'; + + $return = array(); + + $sql = 'SELECT '; + + if ($only_used) { + $sql .= 'DISTINCT '; + } + + $sql .= 'v.fk_product_attribute, v.rowid, v.ref, v.value FROM '.MAIN_DB_PREFIX.'product_attribute_value v '; + + if ($only_used) { + $sql .= 'LEFT JOIN '.MAIN_DB_PREFIX.'product_attribute_combination2val c2v ON c2v.fk_prod_attr_val = v.rowid '; + $sql .= 'LEFT JOIN '.MAIN_DB_PREFIX.'product_attribute_combination c ON c.rowid = c2v.fk_prod_combination '; + $sql .= 'LEFT JOIN '.MAIN_DB_PREFIX.'product p ON p.rowid = c.fk_product_child '; + } + + $sql .= 'WHERE v.fk_product_attribute = '.(int) $prodattr_id; + + if ($only_used) { + $sql .= ' AND c2v.rowid IS NOT NULL AND p.tosell = 1'; + } + + $query = $this->db->query($sql); + + while ($result = $this->db->fetch_object($query)) { + + $tmp = new ProductAttributeValue($this->db); + $tmp->fk_product_attribute = $result->fk_product_attribute; + $tmp->id = $result->rowid; + $tmp->ref = $result->ref; + $tmp->value = $result->value; + + $return[] = $tmp; + } + + return $return; + } + + /** + * Creates a value for a product attribute + * + * @return int <0 KO >0 OK + */ + public function create() + { + if (!$this->fk_product_attribute) { + return -1; + } + + //Ref must be uppercase + $this->ref = strtoupper($this->ref); + + $sql = "INSERT INTO ".MAIN_DB_PREFIX."product_attribute_value (fk_product_attribute, ref, value, entity) + VALUES ('".(int) $this->fk_product_attribute."', '".$this->db->escape($this->ref)."', + '".$this->db->escape($this->value)."', ".(int) $this->entity.")"; + + $query = $this->db->query($sql); + + if ($query) { + $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'product_attribute_value'); + return 1; + } + + return -1; + } + + /** + * Updates a product attribute value + * + * @return int + */ + public function update() + { + //Ref must be uppercase + $this->ref = strtoupper($this->ref); + + $sql = "UPDATE ".MAIN_DB_PREFIX."product_attribute_value + SET fk_product_attribute = '".(int) $this->fk_product_attribute."', ref = '".$this->db->escape($this->ref)."', + value = '".$this->db->escape($this->value)."' WHERE rowid = ".(int) $this->id; + + if ($this->db->query($sql)) { + return 1; + } + + return -1; + } + + /** + * Deletes a product attribute value + * + * @return int <0 KO, >0 OK + */ + public function delete() + { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."product_attribute_value WHERE rowid = ".(int) $this->id; + + if ($this->db->query($sql)) { + return 1; + } + + return -1; + } + + /** + * Deletes all product attribute values by a product attribute id + * + * @param int $fk_attribute Product attribute id + * @return int <0 KO, >0 OK + */ + public function deleteByFkAttribute($fk_attribute) + { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."product_attribute_value WHERE fk_product_attribute = ".(int) $fk_attribute; + + if ($this->db->query($sql)) { + return 1; + } + + return -1; + } +} \ No newline at end of file diff --git a/htdocs/attributes/class/ProductCombination.class.php b/htdocs/attributes/class/ProductCombination.class.php new file mode 100644 index 00000000000..6722f7f03fc --- /dev/null +++ b/htdocs/attributes/class/ProductCombination.class.php @@ -0,0 +1,641 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +class ProductCombination +{ + /** + * Database handler + * @var DoliDB + */ + private $db; + + /** + * Rowid of combination + * @var int + */ + public $id; + + /** + * Rowid of parent product + * @var int + */ + public $fk_product_parent; + + /** + * Rowid of child product + * @var int + */ + public $fk_product_child; + + /** + * Price variation + * @var float + */ + public $variation_price; + + /** + * Is the price variation a relative variation? + * @var bool + */ + public $variation_price_percentage = false; + + /** + * Weight variation + * @var float + */ + public $variation_weight; + + /** + * Combination entity + * @var int + */ + public $entity; + + public function __construct(DoliDB $db) + { + global $conf; + + $this->db = $db; + $this->entity = $conf->entity; + } + + /** + * Retrieves a combination by its rowid + * + * @param int $rowid Row id + * @return int <0 KO, >0 OK + */ + public function fetch($rowid) + { + require_once __DIR__.'/../lib/product_attributes.lib.php'; + + $sql = "SELECT rowid, fk_product_parent, fk_product_child, variation_price, variation_price_percentage, variation_weight FROM ".MAIN_DB_PREFIX."product_attribute_combination WHERE rowid = ".(int) $rowid." AND entity IN (".getProductEntities($this->db).")"; + + $query = $this->db->query($sql); + + if (!$query) { + return -1; + } + + if (!$this->db->num_rows($query)) { + return -1; + } + + $result = $this->db->fetch_object($query); + + $this->id = $result->rowid; + $this->fk_product_parent = $result->fk_product_parent; + $this->fk_product_child = $result->fk_product_child; + $this->variation_price = $result->variation_price; + $this->variation_price_percentage = $result->variation_price_percentage; + $this->variation_weight = $result->variation_weight; + + return 1; + } + + /** + * Retrieves a product combination by a child product row id + * + * @param int $fk_child Product row id + * @return int <0 KO, >0 OK + */ + public function fetchByFkProductChild($fk_child) + { + require_once __DIR__.'/../lib/product_attributes.lib.php'; + + $sql = "SELECT rowid, fk_product_parent, fk_product_child, variation_price, variation_price_percentage, variation_weight FROM ".MAIN_DB_PREFIX."product_attribute_combination WHERE fk_product_child = ".(int) $fk_child." AND entity IN (".getProductEntities($this->db).")"; + + $query = $this->db->query($sql); + + if (!$query) { + return -1; + } + + if (!$this->db->num_rows($query)) { + return -1; + } + + $result = $this->db->fetch_object($query); + + $this->id = $result->rowid; + $this->fk_product_parent = $result->fk_product_parent; + $this->fk_product_child = $result->fk_product_child; + $this->variation_price = $result->variation_price; + $this->variation_price_percentage = $result->variation_price_percentage; + $this->variation_weight = $result->variation_weight; + + return 1; + } + + /** + * Retrieves all product combinations by the product parent row id + * + * @param int $fk_product_parent Rowid of parent product + * @return int|ProductCombination[] <0 KO + */ + public function fetchAllByFkProductParent($fk_product_parent) + { + require_once __DIR__.'/../lib/product_attributes.lib.php'; + + $sql = "SELECT rowid, fk_product_parent, fk_product_child, variation_price, variation_price_percentage, variation_weight FROM ".MAIN_DB_PREFIX."product_attribute_combination WHERE fk_product_parent = ".(int) $fk_product_parent." AND entity IN (".getProductEntities($this->db).")"; + + $query = $this->db->query($sql); + + if (!$query) { + return -1; + } + + $return = array(); + + while ($result = $this->db->fetch_object($query)) { + + $tmp = new ProductCombination($this->db); + $tmp->id = $result->rowid; + $tmp->fk_product_parent = $result->fk_product_parent; + $tmp->fk_product_child = $result->fk_product_child; + $tmp->variation_price = $result->variation_price; + $tmp->variation_price_percentage = $result->variation_price_percentage; + $tmp->variation_weight = $result->variation_weight; + + $return[] = $tmp; + } + + return $return; + } + + /** + * Creates a product attribute combination + * + * @return int + */ + public function create() + { + $sql = "INSERT INTO ".MAIN_DB_PREFIX."product_attribute_combination + (fk_product_parent, fk_product_child, variation_price, variation_price_percentage, variation_weight, entity) + VALUES (".(int) $this->fk_product_parent.", ".(int) $this->fk_product_child.", + ".(float) $this->variation_price.", ".(int) $this->variation_price_percentage.", + ".(float) $this->variation_weight.", ".(int) $this->entity.")"; + + $query = $this->db->query($sql); + + if (!$query) { + return -1; + } + + $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'product_attribute_combination'); + + return 1; + } + + /** + * Updates a product combination + * + * @return int <0 KO, >0 OK + */ + public function update() + { + $sql = "UPDATE ".MAIN_DB_PREFIX."product_attribute_combination + SET fk_product_parent = ".(int) $this->fk_product_parent.", fk_product_child = ".(int) $this->fk_product_child.", + variation_price = ".(float) $this->variation_price.", variation_price_percentage = ".(int) $this->variation_price_percentage.", + variation_weight = ".(float) $this->variation_weight." WHERE rowid = ".(int) $this->id; + + $query = $this->db->query($sql); + + if (!$query) { + return -1; + } + + $parent = new Product($this->db); + $parent->fetch($this->fk_product_parent); + + $this->updateProperties($parent); + + return 1; + } + + /** + * Deletes a product combination + * + * @return int <0 KO >0 OK + */ + public function delete() + { + $this->db->begin(); + + $comb2val = new ProductCombination2ValuePair($this->db); + $comb2val->deleteByFkCombination($this->id); + + $sql = "DELETE FROM ".MAIN_DB_PREFIX."product_attribute_combination WHERE rowid = ".(int) $this->id; + + if ($this->db->query($sql)) { + $this->db->commit(); + return 1; + } + + $this->db->rollback(); + return -1; + } + + /** + * Deletes all product combinations of a parent product + * + * @param int $fk_product_parent Rowid of parent product + * @return int <0 KO >0 OK + */ + public function deleteByFkProductParent($fk_product_parent) + { + $this->db->begin(); + + foreach ($this->fetchAllByFkProductParent($fk_product_parent) as $prodcomb) { + + $prodstatic = new Product($this->db); + + $res = $prodstatic->fetch($prodcomb->fk_product_child); + + if ($res > 0) { + $res = $prodcomb->delete(); + } + + if ($res > 0 && !$prodstatic->isObjectUsed($prodstatic->id)) { + $res = $prodstatic->delete(); + } + + if ($res < 0) { + $this->db->rollback(); + return -1; + } + } + + $this->db->commit(); + return 1; + } + + /** + * Updates the weight of the child product. The price must be updated using Product::updatePrices + * + * @param Product $parent Parent product + * @return int >0 OK <0 KO + */ + public function updateProperties(Product $parent) + { + global $user, $conf; + + $this->db->begin(); + + $child = new Product($this->db); + $child->fetch($this->fk_product_child); + $child->price_autogen = $parent->price_autogen; + $child->weight = $parent->weight + $this->variation_weight; + $child->weight_units = $parent->weight_units; + + if ($child->update($child->id, $user) > 0) { + + $new_vat = $parent->tva_tx; + $new_npr = $parent->tva_npr; + + // MultiPrix + if (! empty($conf->global->PRODUIT_MULTIPRICES)) { + $new_type = $parent->multiprices_base_type[1]; + $new_min_price = $parent->multiprices_min[1]; + $new_psq = $parent->multiprices_recuperableonly[1]; + + if ($new_type == 'TTC') { + $new_price = $parent->multiprices_ttc[1]; + } else { + $new_price = $parent->multiprices[1]; + } + } else { + $new_type = $parent->price_base_type; + $new_min_price = $parent->price_min; + $new_psq = $parent->price_by_qty; + + if ($new_type == 'TTC') { + $new_price = $parent->price_ttc; + } else { + $new_price = $parent->price; + } + } + + if ($this->variation_price_percentage) { + $new_price *= 1 + ($this->variation_price/100); + } else { + $new_price += $this->variation_price; + } + + $child->updatePrice($new_price, $new_type, $user, $new_vat, $new_min_price, 1, $new_npr, $new_psq); + + $this->db->commit(); + + return 1; + } + + $this->db->rollback(); + return -1; + } + + /** + * Retrieves the combination that matches the given features. + * + * @param int $prodid Id of parent product + * @param array $features Format: [$attr] => $attr_val + * @return false|ProductCombination false if not found + */ + public function fetchByProductCombination2ValuePairs($prodid, array $features) + { + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination2ValuePair.class.php'; + + $actual_comp = array(); + + $prodcomb2val = new ProductCombination2ValuePair($this->db); + $prodcomb = new ProductCombination($this->db); + + foreach ($features as $attr => $attr_val) { + $actual_comp[$attr] = $attr_val; + } + + foreach ($prodcomb->fetchAllByFkProductParent($prodid) as $prc) { + + $values = array(); + + foreach ($prodcomb2val->fetchByFkCombination($prc->id) as $value) { + $values[$value->fk_prod_attr] = $value->fk_prod_attr_val; + } + + $check1 = count(array_diff_assoc($values, $actual_comp)); + $check2 = count(array_diff_assoc($actual_comp, $values)); + + if (!$check1 && !$check2) { + return $prc; + } + } + + return false; + } + + /** + * Retrieves all unique attributres for a parent product + * + * @param int $productid Product rowid + * @return ProductAttribute[] + */ + public function getUniqueAttributesAndValuesByFkProductParent($productid) + { + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttribute.class.php'; + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttributeValue.class.php'; + + $attributes = array(); + + //Attributes + $sql = "SELECT DISTINCT fk_prod_attr, a.rang +FROM ".MAIN_DB_PREFIX."product_attribute_combination2val c2v LEFT JOIN ".MAIN_DB_PREFIX."product_attribute_combination c + ON c2v.fk_prod_combination = c.rowid + LEFT JOIN ".MAIN_DB_PREFIX."product p ON p.rowid = c.fk_product_child + LEFT JOIN ".MAIN_DB_PREFIX."product_attribute a ON a.rowid = fk_prod_attr +WHERE c.fk_product_parent = ".(int) $productid." AND p.tosell = 1"; + + $sql .= $this->db->order('a.rang', 'asc'); + + $query = $this->db->query($sql); + + //Values + while ($result = $this->db->fetch_object($query)) { + $attr = new ProductAttribute($this->db); + $attr->fetch($result->fk_prod_attr); + + $tmp = new stdClass(); + $tmp->id = $attr->id; + $tmp->ref = $attr->ref; + $tmp->label = $attr->label; + $tmp->values = array(); + + $attrval = new ProductAttributeValue($this->db); + foreach ($res = $attrval->fetchAllByProductAttribute($attr->id, true) as $val) { + $tmp->values[] = $val; + } + + $attributes[] = $tmp; + } + + return $attributes; + } + + /** + * Creates a product combination. Check usages to find more about its use + * + * Format of $combinations array: + * array( + * 0 => array( + * attr => value, + * attr2 => value + * [...] + * ), + * [...] + * ) + * + * @param Product $product Parent product + * @param array $combinations Attribute and value combinations. + * @param array $variations Price and weight variations + * @param bool $price_var_percent Is the price variation a relative variation? + * @param bool|float $forced_pricevar If the price variation is forced + * @param bool|float $forced_weightvar If the weight variation is forced + * @return int <0 KO, >0 OK + */ + public static function createProductCombination(Product $product, array $combinations, array $variations, $price_var_percent = false, $forced_pricevar = false, $forced_weightvar = false) + { + global $db, $user; + + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttribute.class.php'; + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttributeValue.class.php'; + + $db->begin(); + + $newproduct = clone $product; + + //Final weight impact + $weight_impact = $forced_weightvar; + + if ($forced_weightvar === false) { + $weight_impact = 0; + } + + //Final price impact + $price_impact = $forced_pricevar; + + if ($forced_pricevar === false) { + $price_impact = 0; + } + + $newcomb = new ProductCombination($db); + $existingCombination = $newcomb->fetchByProductCombination2ValuePairs($product->id, $combinations); + + if ($existingCombination) { + $newcomb = $existingCombination; + } else { + $newcomb->fk_product_parent = $product->id; + + if ($newcomb->create() < 0) { + $db->rollback(); + return -1; + } + } + + $prodattr = new ProductAttribute($db); + $prodattrval = new ProductAttributeValue($db); + + foreach ($combinations as $currcombattr => $currcombval) { + + //This was checked earlier, so no need to double check + $prodattr->fetch($currcombattr); + $prodattrval->fetch($currcombval); + + //If there is an existing combination, there is no need to duplicate the valuepair + if (!$existingCombination) { + $tmp = new ProductCombination2ValuePair($db); + $tmp->fk_prod_attr = $currcombattr; + $tmp->fk_prod_attr_val = $currcombval; + $tmp->fk_prod_combination = $newcomb->id; + + if ($tmp->create() < 0) { + $db->rollback(); + return -1; + } + } + + if ($forced_weightvar === false) { + $weight_impact += (float) price2num($variations[$currcombattr][$currcombval]['weight']); + } + if ($forced_pricevar === false) { + $price_impact += (float) price2num($variations[$currcombattr][$currcombval]['price']); + } + + $newproduct->ref .= '_'.$prodattrval->ref; + + //The first one should not contain a linebreak + if ($newproduct->description) { + $newproduct->description .= '
'; + } + $newproduct->description .= ''.$prodattr->label.': '.$prodattrval->value; + } + + $newcomb->variation_price_percentage = $price_var_percent; + $newcomb->variation_price = $price_impact; + $newcomb->variation_weight = $weight_impact; + + $newproduct->weight += $weight_impact; + + //To avoid wrong information in price history log + $newproduct->price = 0; + $newproduct->price_ttc = 0; + $newproduct->price_min = 0; + $newproduct->price_min_ttc = 0; + + if ($newproduct->create($user) < 0) { + + //In case the error is not related with an already existing product + if ($newproduct->error != 'ErrorProductAlreadyExists') { + $db->rollback(); + return -1; + } + + /** + * If there is an existing combination, then we update the prices and weight + * Otherwise, we try adding a random number to the ref + */ + + if ($newcomb->fk_product_child) { + $res = $newproduct->fetch($existingCombination->fk_product_child); + } else { + $orig_prod_ref = $newproduct->ref; + $i = 1; + + do { + $newproduct->ref = $orig_prod_ref.$i; + $res = $newproduct->create($user); + + if ($newproduct->error != 'ErrorProductAlreadyExists') { + break; + } + + $i++; + } while ($res < 0); + } + + if ($res < 0) { + $db->rollback(); + return -1; + } + + $newproduct->weight += $weight_impact; + } + + $newcomb->fk_product_child = $newproduct->id; + + if ($newcomb->update() < 0) { + $db->rollback(); + return -1; + } + + $db->commit(); + return 1; + } + + /** + * Copies all product combinations from the origin product to the destination product + * + * @param int $origProductId Origin product id + * @param Product $destProduct Destination product + * @return int >0 OK <0 KO + */ + public function copyAll($origProductId, Product $destProduct) + { + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination2ValuePair.class.php'; + + //To prevent a loop + if ($origProductId == $destProduct->id) { + return -1; + } + + $prodcomb = new ProductCombination($this->db); + $prodcomb2val = new ProductCombination2ValuePair($this->db); + + //Retrieve all product combinations + $combinations = $prodcomb->fetchAllByFkProductParent($origProductId); + + foreach ($combinations as $combination) { + + $variations = array(); + + foreach ($prodcomb2val->fetchByFkCombination($combination->id) as $tmp_pc2v) { + $variations[$tmp_pc2v->fk_prod_attr] = $tmp_pc2v->fk_prod_attr_val; + } + + if (self::createProductCombination( + $destProduct, + $variations, + array(), + $combination->variation_price_percentage, + $combination->variation_price, + $combination->variation_weight + ) < 0) { + return -1; + } + } + + return 1; + } +} \ No newline at end of file diff --git a/htdocs/attributes/class/ProductCombination2ValuePair.class.php b/htdocs/attributes/class/ProductCombination2ValuePair.class.php new file mode 100644 index 00000000000..93521b86bbf --- /dev/null +++ b/htdocs/attributes/class/ProductCombination2ValuePair.class.php @@ -0,0 +1,151 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +class ProductCombination2ValuePair +{ + /** + * Database handler + * @var DoliDB + */ + private $db; + + /** + * Combination 2 value pair id + * @var int + */ + public $id; + + /** + * Product combination id + * @var int + */ + public $fk_prod_combination; + + /** + * Product attribute id + * @var int + */ + public $fk_prod_attr; + + /** + * Product attribute value id + * @var int + */ + public $fk_prod_attr_val; + + public function __construct(DoliDB $db) + { + $this->db = $db; + } + + /** + * Translates this class to a human-readable string + * + * @return string + */ + public function __toString() + { + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttributeValue.class.php'; + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttribute.class.php'; + + $prodattr = new ProductAttribute($this->db); + $prodattrval = new ProductAttributeValue($this->db); + + $prodattr->fetch($this->fk_prod_attr); + $prodattrval->fetch($this->fk_prod_attr_val); + + return $prodattr->label.': '.$prodattrval->value; + } + + /** + * Creates a product combination 2 value pair + * @return int <0 KO, >0 OK + */ + public function create() + { + $sql = "INSERT INTO ".MAIN_DB_PREFIX."product_attribute_combination2val + (fk_prod_combination, fk_prod_attr, fk_prod_attr_val) + VALUES(".(int) $this->fk_prod_combination.", ".(int) $this->fk_prod_attr.", ".(int) $this->fk_prod_attr_val.")"; + + $query = $this->db->query($sql); + + if ($query) { + $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX.'product_attribute_combination2val'); + + return 1; + } + + return -1; + } + + /** + * Retrieves a product combination 2 value pair from its rowid + * + * @param int $fk_combination Fk combination to search + * @return int|ProductCombination2ValuePair[] -1 if KO + */ + public function fetchByFkCombination($fk_combination) + { + $sql = "SELECT + c.rowid, + c2v.fk_prod_attr_val, + c2v.fk_prod_attr, + c2v.fk_prod_combination +FROM ".MAIN_DB_PREFIX."product_attribute c LEFT JOIN ".MAIN_DB_PREFIX."product_attribute_combination2val c2v ON c.rowid = c2v.fk_prod_attr +WHERE c2v.fk_prod_combination = ".(int) $fk_combination; + + $sql .= $this->db->order('c.rang', 'asc'); + + $query = $this->db->query($sql); + + if (!$query) { + return -1; + } + + $return = array(); + + while ($result = $this->db->fetch_object($query)) { + $tmp = new ProductCombination2ValuePair($this->db); + $tmp->fk_prod_attr_val = $result->fk_prod_attr_val; + $tmp->fk_prod_attr = $result->fk_prod_attr; + $tmp->fk_prod_combination = $result->fk_prod_combination; + $tmp->id = $result->rowid; + + $return[] = $tmp; + } + + return $return; + } + + /** + * Deletes a product combination 2 value pair + * + * @param int $fk_combination Rowid of the combination + * @return int >0 OK <0 KO + */ + public function deleteByFkCombination($fk_combination) + { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."product_attribute_combination2val WHERE fk_prod_combination = ".(int) $fk_combination; + + if ($this->db->query($sql)) { + return 1; + } + + return -1; + } +} \ No newline at end of file diff --git a/htdocs/attributes/class/index.html b/htdocs/attributes/class/index.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/htdocs/attributes/combinations.php b/htdocs/attributes/combinations.php new file mode 100644 index 00000000000..b8a758c2341 --- /dev/null +++ b/htdocs/attributes/combinations.php @@ -0,0 +1,641 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttribute.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttributeValue.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination2ValuePair.class.php'; + +$langs->load("products"); +$langs->load("other"); + +$var = false; +$id = GETPOST('id', 'int'); +$valueid = GETPOST('valueid', 'int'); +$ref = GETPOST('ref'); +$weight_impact = (float) GETPOST('weight_impact'); +$price_impact = (float) GETPOST('price_impact'); +$price_impact_percent = (bool) GETPOST('price_impact_percent'); +$form = new Form($db); +$action = GETPOST('action'); + +// Security check +$fieldvalue = (! empty($id) ? $id : $ref); +$fieldtype = (! empty($ref) ? 'ref' : 'rowid'); +$result=restrictedArea($user,'produit|service',$fieldvalue,'product&product','','',$fieldtype); + +$prodstatic = new Product($db); +$prodattr = new ProductAttribute($db); +$prodattr_val = new ProductAttributeValue($db); + +$product = new Product($db); + +$product->fetch($id); + +if (!$product->isProduct()) { + header('Location: '.dol_buildpath('/product/card.php?id='.$product->id, 2)); + die; +} + +$prodcomb = new ProductCombination($db); +$prodcomb2val = new ProductCombination2ValuePair($db); + +$productCombination2ValuePairs1 = array(); + +if ($_POST) { + + if ($action == 'add') { + + $features = GETPOST('features', 'array'); + + if (!$features) { + setEventMessage($langs->trans('ErrorFieldsRequired'), 'errors'); + } else { + $weight_impact = price2num($weight_impact); + $price_impact = price2num($price_impact); + $sanit_features = array(); + + //First, sanitize + foreach ($features as $feature) { + + $explode = explode(':', $feature); + + if ($prodattr->fetch($explode[0]) < 0) { + continue; + } + + if ($prodattr_val->fetch($explode[1]) < 0) { + continue; + } + + //Valuepair + $sanit_features[$explode[0]] = $explode[1]; + + $tmp = new ProductCombination2ValuePair($db); + $tmp->fk_prod_attr = $explode[0]; + $tmp->fk_prod_attr_val = $explode[1]; + + $productCombination2ValuePairs1[] = $tmp; + } + + $db->begin(); + + if (!$prodcomb->fetchByProductCombination2ValuePairs($id, $sanit_features)) { + if (ProductCombination::createProductCombination($product, $sanit_features, array(), $price_impact_percent, $price_impact, $weight_impact)) { + $db->commit(); + setEventMessage($langs->trans('RecordSaved')); + header('Location: '.dol_buildpath('/attributes/combinations.php?id='.$id, 2)); + die; + } else { + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + } + } else { + setEventMessage($langs->trans('ErrorRecordAlreadyExists'), 'errors'); + } + + $db->rollback(); + } + } elseif ($action == 'bulk_actions') { + + $prodarray = array_keys(GETPOST('select', 'array')); + $bulkaction = GETPOST('bulk_action'); + $error = 0; + + $prodstatic = new Product($db); + + $db->begin(); + + foreach ($prodarray as $prodid) { + + if ($prodstatic->fetch($prodid) < 0) { + continue; + } + + if ($bulkaction == 'on_sell') { + $prodstatic->status = 1; + $res = $prodstatic->update($prodstatic->id, $user); + } elseif ($bulkaction == 'on_buy') { + $prodstatic->status_buy = 1; + $res = $prodstatic->update($prodstatic->id, $user); + } elseif ($bulkaction == 'not_sell') { + $prodstatic->status = 0; + $res = $prodstatic->update($prodstatic->id, $user); + } elseif ($bulkaction == 'not_buy') { + $prodstatic->status_buy = 0; + $res = $prodstatic->update($prodstatic->id, $user); + } elseif ($bulkaction == 'delete') { + $res = $prodstatic->delete($prodstatic->id); + } else { + break; + } + + if ($res <= 0) { + $error++; + break; + } + } + + if ($error) { + $db->rollback(); + + if ($prodstatic->error) { + setEventMessage($langs->trans($prodstatic->error), 'errors'); + } else { + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + } + + } else { + $db->commit(); + setEventMessage($langs->trans('RecordSaved')); + } + + } else { + + if ($prodcomb->fetch($valueid) < 0) { + dol_print_error($db, $langs->trans('ErrorRecordNotFound')); + die; + } + + $prodcomb->variation_price_percentage = $price_impact_percent; + $prodcomb->variation_price = $price_impact; + $prodcomb->variation_weight = $weight_impact; + + if ($prodcomb->update() > 0) { + setEventMessage($langs->trans('RecordSaved')); + header('Location: '.dol_buildpath('/attributes/combinations.php?id='.$id, 2)); + die; + } else { + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + } + } +} + +$productCombinations = $prodcomb->fetchAllByFkProductParent($id); + +if ($action === 'confirm_deletecombination') { + + if ($prodcomb->fetch($valueid) > 0) { + + $db->begin(); + + if ($prodcomb->delete() > 0 && $prodstatic->fetch($prodcomb->fk_product_child) > 0 && $prodstatic->delete() > 0) { + $db->commit(); + setEventMessage($langs->trans('RecordSaved')); + header('Location: '.dol_buildpath('/attributes/combinations.php?id='.$product->id, 2)); + die; + } + + $db->rollback(); + setEventMessage($langs->trans('ProductCombinationAlreadyUsed'), 'errors'); + $action = ''; + } +} elseif ($action === 'edit') { + + if ($prodcomb->fetch($valueid) < 0) { + dol_print_error($db, $langs->trans('ErrorRecordNotFound')); + die; + } + + $weight_impact = $prodcomb->variation_weight; + $price_impact = $prodcomb->variation_price; + $price_impact_percent = $prodcomb->variation_price_percentage; + + $productCombination2ValuePairs1 = $prodcomb2val->fetchByFkCombination($valueid); +} elseif ($action === 'confirm_copycombination') { + + //Check destination product + $dest_product = GETPOST('dest_product'); + + if ($prodstatic->fetch('', $dest_product) > 0) { + + //To prevent from copying to the same product + if ($prodstatic->ref != $product->ref) { + if ($prodcomb->copyAll($product->id, $prodstatic) > 0) { + header('Location: '.dol_buildpath('/attributes/combinations.php?id='.$prodstatic->id, 2)); + die; + } else { + setEventMessage($langs->trans('ErrorCopyProductCombinations'), 'errors'); + } + } + + } else { + setEventMessage($langs->trans('ErrorDestinationProductNotFound'), 'errors'); + } + +} + +/* + * View + */ + +if (! empty($id) || ! empty($ref)) { + $object = new Product($db); + $result = $object->fetch($id, $ref); + + llxHeader("", "", $langs->trans("CardProduct".$object->type)); + + if ($result) { + $head = product_prepare_head($object); + $titre = $langs->trans("CardProduct".$object->type); + $picto = ($object->type == Product::TYPE_SERVICE ? 'service' : 'product'); + + dol_fiche_head($head, 'combinations', $titre, 0, $picto); + + print ''; + + // Reference + print ''; + print ''; + print ''; + + // Label + print ''; + + // Status (to sell) + print ''; + + // Status (to buy) + print ''; + + print '
'.$langs->trans("Ref").''; + print $form->showrefnav($object, 'id', '', 0); + print '
'.$langs->trans("Label").''.$object->label.'
'.$langs->trans("Status").' ('.$langs->trans("Sell").')'; + print $object->getLibStatut(2, 0); + print '
'.$langs->trans("Status").' ('.$langs->trans("Buy").')'; + print $object->getLibStatut(2, 1); + print '
'; + + dol_fiche_end(); + } + + if ($action == 'add' || ($action == 'edit')) { + + if ($action == 'add') { + $title = $langs->trans('NewProductCombination'); + } else { + $title = $langs->trans('EditProductCombination'); + } + + print_fiche_titre($title); + + if ($action == 'add') { + $prodattr_all = $prodattr->fetchAll(); + + if (!$selected) { + $selected = $prodattr_all[key($prodattr_all)]->id; + } + + $prodattr_alljson = array(); + + foreach ($prodattr_all as $each) { + $prodattr_alljson[$each->id] = $each; + } + + ?> + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +

+ + +
+ >
+ +
+
+ + + +
+fetch($valueid) > 0) { + $form = new Form($db); + $prodstatic->fetch($prodcomb->fk_product_child); + + print $form->formconfirm( + "combinations.php?id=".$id."&valueid=".$valueid, + $langs->trans('Delete'), + $langs->trans('ProductCombinationDeleteDialog', $prodstatic->getNomUrl(1)), + "confirm_deletecombination", + '', + 0, + 1 + ); + } + } elseif ($action === 'copy') { + + $form = new Form($db); + + print $form->formconfirm( + 'combinations.php?id='.$id, + $langs->trans('CloneCombinationsProduct'), + $langs->trans('ConfirmCloneProductCombinations'), + 'confirm_copycombination', + array( + array( + 'type' => 'text', + 'label' => $langs->trans('CloneDestinationReference'), + 'name' => 'dest_product' + ) + ), + 0, + 1 + ); + } + + $comb2val = new ProductCombination2ValuePair($db); + + if ($productCombinations): ?> + + + +
+ + + + +
+
+ + + + + + + + + + + + + + fetch($currcomb->fk_product_child); ?> + > + + + + + + + + + + +
+ + + + trans('Product') ?>trans('Combination') ?>trans('PriceImpact') ?>trans('WeightImpact') ?>trans('OnSell') ?>trans('OnBuy') ?>
getNomUrl(1) ?> + fetchByFkCombination($currcomb->id); + $iMax = count($productCombination2ValuePairs); + + for ($i = 0; $i < $iMax; $i++) { + echo dol_htmlentities($productCombination2ValuePairs[$i]); + + if ($i !== ($iMax - 1)) { + echo ', '; + } + } ?> + variation_price >= 0 ? '+' : '').price($currcomb->variation_price).($currcomb->variation_price_percentage ? ' %' : '') ?>variation_weight >= 0 ? '+' : '').price($currcomb->variation_weight).' '.measuring_units_string($prodstatic->weight_units, 'weight') ?>getLibStatut(2, 0) ?>getLibStatut(2, 1) ?> + + +
+ + +
+ + + '; + print ' '; + print ''; + + } +} + +llxFooter(); diff --git a/htdocs/attributes/create.php b/htdocs/attributes/create.php new file mode 100644 index 00000000000..5b68ed28907 --- /dev/null +++ b/htdocs/attributes/create.php @@ -0,0 +1,73 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +require '../main.inc.php'; +require 'class/ProductAttribute.class.php'; + +$ref = GETPOST('ref'); +$label = GETPOST('label'); + +if ($_POST) { + + if (empty($ref) || empty($label)) { + setEventMessage($langs->trans('ErrorFieldsRequired'), 'errors'); + } else { + + $prodattr = new ProductAttribute($db); + $prodattr->label = $label; + $prodattr->ref = $ref; + + if ($prodattr->create()) { + setEventMessage($langs->trans('RecordSaved')); + header('Location: '.dol_buildpath('/attributes/list.php', 2)); + } else { + setEventMessage($langs->trans('ErrorRecordAlreadyExists'), 'errors'); + } + } +} + +$langs->load('products'); + +$title = $langs->trans('NewProductAttribute'); + +llxHeader('', $title); + +print_fiche_titre($title); + +dol_fiche_head(); + +?> +
+ + + + + + + + + + +
+ +
'; + +llxFooter(); \ No newline at end of file diff --git a/htdocs/attributes/create_val.php b/htdocs/attributes/create_val.php new file mode 100644 index 00000000000..b25e24fa64a --- /dev/null +++ b/htdocs/attributes/create_val.php @@ -0,0 +1,102 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +require '../main.inc.php'; +require 'class/ProductAttribute.class.php'; +require 'class/ProductAttributeValue.class.php'; + +$id = GETPOST('id'); +$ref = GETPOST('ref'); +$value = GETPOST('value'); + +$prodattr = new ProductAttribute($db); +$prodattrval = new ProductAttributeValue($db); + +if ($prodattr->fetch($id) < 1) { + dol_print_error($db, $langs->trans('ErrorRecordNotFound')); + die; +} + +if ($_POST) { + + if (empty($ref) || empty($value)) { + setEventMessage($langs->trans('ErrorFieldsRequired'), 'errors'); + } else { + + $prodattrval->fk_product_attribute = $prodattr->id; + $prodattrval->ref = $ref; + $prodattrval->value = $value; + + if ($prodattrval->create() > 0) { + setEventMessage($langs->trans('RecordSaved')); + header('Location: '.dol_buildpath('/attributes/card.php?id='.$prodattr->id, 2)); + die; + } else { + setEventMessage($langs->trans('ErrorCreatingProductAttributeValue'), 'errors'); + } + } + +} + +$langs->load('products'); + +$title = $langs->trans('ProductAttributeName', dol_htmlentities($prodattr->label)); + +llxHeader('', $title); + +print_fiche_titre($title); + +dol_fiche_head(); + +?> + + + + + + + + +
trans('Ref') ?>ref) ?> +
trans('Label') ?>label) ?>
+ +trans('NewProductAttributeValue')); + +dol_fiche_head(); +?> +
+ + + + + + + + + +
+
'; + +llxFooter(); \ No newline at end of file diff --git a/htdocs/attributes/generator.php b/htdocs/attributes/generator.php new file mode 100644 index 00000000000..37f2175cc49 --- /dev/null +++ b/htdocs/attributes/generator.php @@ -0,0 +1,393 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttribute.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductAttributeValue.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; +require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination2ValuePair.class.php'; + +$langs->load("products"); +$langs->load('other'); + +$id = GETPOST('id', 'int'); +$ref = GETPOST('ref'); +$form = new Form($db); + +// Security check +$fieldvalue = (! empty($id) ? $id : $ref); +$fieldtype = (! empty($ref) ? 'ref' : 'rowid'); +$result=restrictedArea($user,'produit|service',$fieldvalue,'product&product','','',$fieldtype); + +$prodattr = new ProductAttribute($db); +$prodattrval = new ProductAttributeValue($db); +$product = new Product($db); + +$product->fetch($id); + +if (!$product->isProduct()) { + header('Location: '.dol_buildpath('/product/card.php?id='.$product->id, 2)); + die; +} + +/** + * Posible combinations. Format. + * attrval => array( + * valueid => array( + * price => '' + * weight => '' + * ) + * ) + */ +$combinations = GETPOST('combinations', 'array'); +$price_var_percent = (bool) GETPOST('price_var_percent'); +$donotremove = true; + +if ($_POST) { + + $donotremove = (bool) GETPOST('donotremove'); + + //We must check if all those given combinations actually exist + $sanitized_values = array(); + + foreach ($combinations as $attr => $val) { + if ($prodattr->fetch($attr) > 0) { + foreach ($val as $valueid => $content) { + if ($prodattrval->fetch($valueid) > 0) { + $sanitized_values[$attr][$valueid] = $content; + } + } + } + } + + if ($sanitized_values) { + + require DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; + + $adapted_values = array(); + + //Adapt the array to the cartesian function + foreach ($sanitized_values as $attr => $val) { + $adapted_values[$attr] = array_keys($val); + } + + $db->begin(); + + $combination = new ProductCombination($db); + + $delete_prev_comb_res = 1; + + if (!$donotremove) { + $delete_prev_comb_res = $combination->deleteByFkProductParent($id); + } + + //Current combinations will be deleted + if ($delete_prev_comb_res > 0) { + + $res = 1; + + foreach (cartesianArray($adapted_values) as $currcomb) { + + $res = ProductCombination::createProductCombination($product, $currcomb, $sanitized_values, $price_var_percent); + + if ($res < 0) { + break; + } + } + + if ($res > 0) { + $db->commit(); + setEventMessage($langs->trans('RecordSaved')); + header('Location: '.dol_buildpath('/attributes/combinations.php?id='.$id, 2)); + die; + } else { + setEventMessage($langs->trans('CoreErrorMessage'), 'errors'); + } + } else { + setEventMessage($langs->trans('ErrorDeletingGeneratedProducts'), 'errors'); + } + + $db->rollback(); + + } else { + setEventMessage($langs->trans('ErrorFieldsRequired'), 'errors'); + } +} + +/* + * View + */ + +if (! empty($id) || ! empty($ref)) { + $object = new Product($db); + $result = $object->fetch($id, $ref); + + llxHeader("", "", $langs->trans("CardProduct".$object->type)); + + if ($result) { + $head = product_prepare_head($object); + $titre = $langs->trans("CardProduct".$object->type); + $picto = ($object->type == Product::TYPE_SERVICE ? 'service' : 'product'); + + dol_fiche_head($head, 'combinations', $titre, 0, $picto); + + print ''; + + // Reference + print ''; + print ''; + print ''; + + // Label + print ''; + + // Status (to sell) + print ''; + + // Status (to buy) + print ''; + + print '
'.$langs->trans("Ref").''; + print $form->showrefnav($object, 'id', '', 0); + print '
'.$langs->trans("Label").''.$object->label.'
'.$langs->trans("Status").' ('.$langs->trans("Sell").')'; + print $object->getLibStatut(2, 0); + print '
'.$langs->trans("Status").' ('.$langs->trans("Buy").')'; + print $object->getLibStatut(2, 1); + print '
'; + + dol_fiche_end(); + } + + print_fiche_titre($langs->trans('ProductCombinationGenerator')); + + $dictionnary_attr = array(); + + foreach ($prodattr->fetchAll() as $attr) { + $dictionnary_attr[$attr->id] = $attr; + foreach ($prodattrval->fetchAllByProductAttribute($attr->id) as $attrval) { + $dictionnary_attr[$attr->id]->values[$attrval->id] = $attrval; + } + } + ?> + + + +
+ +
+ +
+ +

trans('TooMuchCombinationsWarning', $langs->trans('DoNotRemovePreviousCombinations')) ?>

+ > +
+ > + +
+
+ + trans('ProductCombinationGeneratorWarning') ?> +
+
+ +
+ +
+ +
+ +
+
+ + + +

+ + + +
+ +
+ + + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * Returns the entity of the products. + * @param DoliDB $db Database handler + * @return mixed + */ +function getProductEntities(DoliDB $db) +{ + require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; + + $product = new Product($db); + + return getEntity($product->element, 1); +} \ No newline at end of file diff --git a/htdocs/attributes/list.php b/htdocs/attributes/list.php new file mode 100644 index 00000000000..3c4cf945524 --- /dev/null +++ b/htdocs/attributes/list.php @@ -0,0 +1,140 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +require '../main.inc.php'; +require 'class/ProductAttribute.class.php'; + +$rowid = GETPOST('rowid'); +$action = GETPOST('action'); +$object = new ProductAttribute($db); + +if ($action == 'up') { + $object->fetch($rowid); + $object->moveUp(); + + header('Location: '.$_SERVER['PHP_SELF']); + die; +} elseif ($action == 'down') { + $object->fetch($rowid); + $object->moveDown(); + + header('Location: '.$_SERVER['PHP_SELF']); + die; +} + +$langs->load('products'); + +$var = false; +$title = $langs->trans($langs->trans('ProductAttributes')); + +$attributes = $object->fetchAll(); + +llxHeader('', $title); + +print_fiche_titre($title); + +$forcereloadpage=empty($conf->global->MAIN_FORCE_RELOAD_PAGE)?0:1; +?> + + + + + + + + + + $attribute): ?> + > + + + + + + + + +
trans('Ref') ?>trans('Label') ?>trans('NbProducts') ?>
ref) ?>label) ?>countChildProducts() ?> + + + + 0): ?> + + + + + +
+ +
+ + + * Copyright (C) 2013-2014 Florian Henry * Copyright (C) 2014 Ferran Marcet + * Copyright (C) 2016 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -48,6 +49,10 @@ if (! empty($conf->projet->enabled)) { require_once DOL_DOCUMENT_ROOT . '/core/class/html.formprojet.class.php'; } +if (!empty($conf->attributes->enabled)) { + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; +} + $langs->load('companies'); $langs->load('propal'); $langs->load('compta'); @@ -655,7 +660,8 @@ if (empty($reshook)) $predef=''; $product_desc=(GETPOST('dp_desc')?GETPOST('dp_desc'):''); $price_ht = GETPOST('price_ht'); - if (GETPOST('prod_entry_mode') == 'free') + $prod_entry_mode = GETPOST('prod_entry_mode'); + if ($prod_entry_mode == 'free') { $idprod=0; $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0); @@ -681,21 +687,35 @@ if (empty($reshook)) } } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && GETPOST('type') < 0) { + if ($prod_entry_mode == 'free' && empty($idprod) && GETPOST('type') < 0) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Type")), null, 'errors'); $error ++; } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && $price_ht == '') // Unit price can be 0 but not ''. Also price can be negative for proposal. + if ($prod_entry_mode == 'free' && empty($idprod) && $price_ht == '') // Unit price can be 0 but not ''. Also price can be negative for proposal. { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("UnitPriceHT")), null, 'errors'); $error ++; } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && empty($product_desc)) { + if ($prod_entry_mode == 'free' && empty($idprod) && empty($product_desc)) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Description")), null, 'errors'); $error ++; } + if (!$error && !empty($conf->attributes->enabled) && $prod_entry_mode != 'free') { + if ($combinations = GETPOST('combinations', 'array')) { + //Check if there is a product with the given combination + $prodcomb = new ProductCombination($db); + + if ($res = $prodcomb->fetchByProductCombination2ValuePairs($idprod, $combinations)) { + $idprod = $res->fk_product_child; + } else { + setEventMessage($langs->trans('ErrorProductCombinationNotFound'), 'errors'); + $error ++; + } + } + } + if (! $error && ($qty >= 0) && (! empty($product_desc) || ! empty($idprod))) { $pu_ht = 0; $pu_ttc = 0; diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index d91ee35fe3e..20def0175ba 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -7,7 +7,7 @@ * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2011-2016 Philippe Grand * Copyright (C) 2012-2013 Christophe Battarel - * Copyright (C) 2012 Marcos García + * Copyright (C) 2012-2016 Marcos García * Copyright (C) 2012 Cedric Salvador * Copyright (C) 2013 Florian Henry * Copyright (C) 2014 Ferran Marcet @@ -51,6 +51,10 @@ if (! empty($conf->projet->enabled)) { } require_once DOL_DOCUMENT_ROOT . '/core/class/doleditor.class.php'; +if (!empty($conf->attributes->enabled)) { + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; +} + $langs->load('orders'); $langs->load('sendings'); $langs->load('companies'); @@ -621,7 +625,8 @@ if (empty($reshook)) $predef=''; $product_desc=(GETPOST('dp_desc')?GETPOST('dp_desc'):''); $price_ht = GETPOST('price_ht'); - if (GETPOST('prod_entry_mode') == 'free') + $prod_entry_mode = GETPOST('prod_entry_mode'); + if ($prod_entry_mode == 'free') { $idprod=0; $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0); @@ -651,11 +656,11 @@ if (empty($reshook)) setEventMessages($langs->trans('ErrorBothFieldCantBeNegative', $langs->transnoentitiesnoconv('UnitPriceHT'), $langs->transnoentitiesnoconv('Qty')), null, 'errors'); $error++; } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && GETPOST('type') < 0) { + if ($prod_entry_mode == 'free' && empty($idprod) && GETPOST('type') < 0) { setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Type')), null, 'errors'); $error++; } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && (! ($price_ht >= 0) || $price_ht == '')) // Unit price can be 0 but not '' + if ($prod_entry_mode == 'free' && empty($idprod) && (! ($price_ht >= 0) || $price_ht == '')) // Unit price can be 0 but not '' { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("UnitPriceHT")), null, 'errors'); $error++; @@ -664,11 +669,25 @@ if (empty($reshook)) setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Qty')), null, 'errors'); $error++; } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && empty($product_desc)) { + if ($prod_entry_mode == 'free' && empty($idprod) && empty($product_desc)) { setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Description')), null, 'errors'); $error++; } + if (!$error && !empty($conf->attributes->enabled) && $prod_entry_mode != 'free') { + if ($combinations = GETPOST('combinations', 'array')) { + //Check if there is a product with the given combination + $prodcomb = new ProductCombination($db); + + if ($res = $prodcomb->fetchByProductCombination2ValuePairs($idprod, $combinations)) { + $idprod = $res->fk_product_child; + } else { + setEventMessage($langs->trans('ErrorProductCombinationNotFound'), 'errors'); + $error ++; + } + } + } + if (! $error && ($qty >= 0) && (! empty($product_desc) || ! empty($idprod))) { // Clean parameters $date_start=dol_mktime(GETPOST('date_start'.$predef.'hour'), GETPOST('date_start'.$predef.'min'), GETPOST('date_start'.$predef.'sec'), GETPOST('date_start'.$predef.'month'), GETPOST('date_start'.$predef.'day'), GETPOST('date_start'.$predef.'year')); diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index b2b39e375d7..be38e4b48f1 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -13,7 +13,7 @@ * Copyright (C) 2013-2014 Florian Henry * Copyright (C) 2013 Cédric Salvador * Copyright (C) 2014 Ferran Marcet - * Copyright (C) 2015 Marcos García + * Copyright (C) 2015-2016 Marcos García * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -56,6 +56,10 @@ if (! empty($conf->projet->enabled)) { } require_once DOL_DOCUMENT_ROOT . '/core/class/doleditor.class.php'; +if (!empty($conf->attributes->enabled)) { + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; +} + $langs->load('bills'); $langs->load('companies'); $langs->load('compta'); @@ -1322,7 +1326,8 @@ if (empty($reshook)) $predef=''; $product_desc=(GETPOST('dp_desc')?GETPOST('dp_desc'):''); $price_ht = GETPOST('price_ht'); - if (GETPOST('prod_entry_mode') == 'free') + $prod_entry_mode = GETPOST('prod_entry_mode'); + if ($prod_entry_mode == 'free') { $idprod=0; $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0); @@ -1352,11 +1357,11 @@ if (empty($reshook)) setEventMessages($langs->trans('ErrorBothFieldCantBeNegative', $langs->transnoentitiesnoconv('UnitPriceHT'), $langs->transnoentitiesnoconv('Qty')), null, 'errors'); $error ++; } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && GETPOST('type') < 0) { + if ($prod_entry_mode == 'free' && empty($idprod) && GETPOST('type') < 0) { setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Type')), null, 'errors'); $error ++; } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && (! ($price_ht >= 0) || $price_ht == '')) // Unit price can be 0 but not '' + if ($prod_entry_mode == 'free' && empty($idprod) && (! ($price_ht >= 0) || $price_ht == '')) // Unit price can be 0 but not '' { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("UnitPriceHT")), null, 'errors'); $error ++; @@ -1365,7 +1370,7 @@ if (empty($reshook)) setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Qty')), null, 'errors'); $error ++; } - if (GETPOST('prod_entry_mode') == 'free' && empty($idprod) && empty($product_desc)) { + if ($prod_entry_mode == 'free' && empty($idprod) && empty($product_desc)) { setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Description')), null, 'errors'); $error ++; } @@ -1374,7 +1379,23 @@ if (empty($reshook)) setEventMessages($langs->trans('ErrorQtyForCustomerInvoiceCantBeNegative'), null, 'errors'); $error ++; } + + if (!$error && !empty($conf->attributes->enabled) && $prod_entry_mode != 'free') { + if ($combinations = GETPOST('combinations', 'array')) { + //Check if there is a product with the given combination + $prodcomb = new ProductCombination($db); + + if ($res = $prodcomb->fetchByProductCombination2ValuePairs($idprod, $combinations)) { + $idprod = $res->fk_product_child; + } else { + setEventMessage($langs->trans('ErrorProductCombinationNotFound'), 'errors'); + $error ++; + } + } + } + if (! $error && ($qty >= 0) && (! empty($product_desc) || ! empty($idprod))) { + $ret = $object->fetch($id); if ($ret < 0) { dol_print_error($db, $object->error); diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php index 5a87d3b3d51..4a20f1b8f9e 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -7,7 +7,7 @@ * Copyright (C) 2013 Christophe Battarel * Copyright (C) 2013-2014 Florian Henry * Copyright (C) 2014-2016 Ferran Marcet - * Copyright (C) 2014 Marcos García + * Copyright (C) 2014-2016 Marcos García * Copyright (C) 2015 Jean-François Ferry * * This program is free software; you can redistribute it and/or modify @@ -471,7 +471,7 @@ if (empty($reshook)) unset($_POST["options_" . $key]); } } - + if (! $error) { // Clean parameters diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 61953629166..ba60aa5f2c5 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -12,7 +12,7 @@ * Copyright (C) 2010 Juanjo Menent * Copyright (C) 2010-2014 Philippe Grand * Copyright (C) 2011 Herve Prot - * Copyright (C) 2012-2014 Marcos García + * Copyright (C) 2012-2016 Marcos García * Copyright (C) 2012 Cedric Salvador * Copyright (C) 2012-2015 Raphaël Doursenaud * Copyright (C) 2014 Alexandre Spangaro @@ -1605,9 +1605,10 @@ class Form * @param int $hidelabel Hide label (0=no, 1=yes, 2=show search icon (before) and placeholder, 3 search icon after) * @param array $ajaxoptions Options for ajax_autocompleter * @param int $socid Thirdparty Id (to get also price dedicated to this customer) + * @param array $selected_combinations Selected combinations. Format: array([attrid] => attrval, [...]) * @return void */ - function select_produits($selected='', $htmlname='productid', $filtertype='', $limit=20, $price_level=0, $status=1, $finished=2, $selected_input_value='', $hidelabel=0, $ajaxoptions=array(), $socid=0) + function select_produits($selected='', $htmlname='productid', $filtertype='', $limit=20, $price_level=0, $status=1, $finished=2, $selected_input_value='', $hidelabel=0, $ajaxoptions=array(), $socid=0, $selected_combinations = array()) { global $langs,$conf; @@ -1632,6 +1633,80 @@ class Form $urloption.='&socid='.$socid; } print ajax_autocompleter($selected, $htmlname, DOL_URL_ROOT.'/product/ajax/products.php', $urloption, $conf->global->PRODUIT_USE_SEARCH_TO_SELECT, 0, $ajaxoptions); + + if (!empty($conf->attributes->enabled)) { + ?> + + trans("RefOrLabel").' : '; else if ($hidelabel > 1) { if (! empty($conf->global->MAIN_HTML5_PLACEHOLDER)) $placeholder=' placeholder="'.$langs->trans("RefOrLabel").'"'; @@ -1709,7 +1784,17 @@ class Form { $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_lang as pl ON pl.fk_product = p.rowid AND pl.lang='". $langs->getDefaultLang() ."'"; } + + if (!empty($conf->global->PRODUIT_ATTRIBUTES_HIDECHILD)) { + $sql .= " LEFT JOIN llx_product_attribute_combination pac ON pac.fk_product_child = p.rowid"; + } + $sql.= ' WHERE p.entity IN ('.getEntity('product', 1).')'; + + if (!empty($conf->global->PRODUIT_ATTRIBUTES_HIDECHILD)) { + $sql .= " AND pac.rowid IS NULL"; + } + if ($finished == 0) { $sql.= " AND p.finished = ".$finished; @@ -1881,7 +1966,7 @@ class Form $outlabel=$objp->label; $outdesc=$objp->description; $outbarcode=$objp->barcode; - + $outtype=$objp->fk_product_type; $outdurationvalue=$outtype == Product::TYPE_SERVICE?substr($objp->duration,0,dol_strlen($objp->duration)-1):''; $outdurationunit=$outtype == Product::TYPE_SERVICE?substr($objp->duration,-1):''; @@ -1898,13 +1983,13 @@ class Form $opt.= $objp->ref; if ($outbarcode) $opt.=' ('.$outbarcode.')'; $opt.=' - '.dol_trunc($label,$maxlengtharticle).' - '; - + $objRef = $objp->ref; if (! empty($filterkey) && $filterkey != '') $objRef=preg_replace('/('.preg_quote($filterkey).')/i','$1',$objRef,1); $outval.=$objRef; if ($outbarcode) $outval.=' ('.$outbarcode.')'; $outval.=' - '.dol_trunc($label,$maxlengtharticle).' - '; - + $found=0; // Multiprice @@ -2066,7 +2151,7 @@ class Form { global $langs,$conf; global $price_level, $status, $finished; - + $selected_input_value=''; if (! empty($conf->use_javascript_ajax) && ! empty($conf->global->PRODUIT_USE_SEARCH_TO_SELECT)) { @@ -3174,7 +3259,7 @@ class Form { dol_syslog(__METHOD__ . ': using numeric value for parameter type is deprecated. Use string code instead.', LOG_WARNING); } - + $cat = new Categorie($this->db); $cate_arbo = $cat->get_full_arbo($type,$excludeafterid); @@ -3837,7 +3922,7 @@ class Form function form_multicurrency_rate($page, $rate='', $htmlname='multicurrency_tx', $currency='') { global $langs, $mysoc, $conf; - + if ($htmlname != "none") { print '
'; @@ -4107,7 +4192,7 @@ class Form $out.= ''; } } - + } $out.= ''; @@ -4204,7 +4289,7 @@ class Form $defaulttx=preg_replace('/\s*\(.*\)/','',$defaulttx); } //var_dump($selectedrate.'-'.$defaulttx.'-'.$defaultnpr.'-'.$defaultcode); - + // Check parameters if (is_object($societe_vendeuse) && ! $societe_vendeuse->country_code) { @@ -4263,7 +4348,7 @@ class Form // Now we get list $num = $this->load_cache_vatrates($code_country); // If no vat defined, return -1 with message into this->error - + if ($num > 0) { // Definition du taux a pre-selectionner (si defaulttx non force et donc vaut -1 ou '') @@ -4304,7 +4389,7 @@ class Form $return.= '"'; if ($defaultcode) // If defaultcode is defined, we used it in priority to select combo option instead of using rate+npr flag { - if ($defaultcode == $rate['code']) $return.= ' selected'; + if ($defaultcode == $rate['code']) $return.= ' selected'; } elseif ($rate['txtva'] == $defaulttx && $rate['nprtva'] == $defaultnpr) { @@ -5036,7 +5121,7 @@ class Form /* var_dump($val); var_dump(array_key_exists('enabled', $val)); var_dump(!$val['enabled']);*/ - if (array_key_exists('enabled', $val) && isset($val['enabled']) && ! $val['enabled']) + if (array_key_exists('enabled', $val) && isset($val['enabled']) && ! $val['enabled']) { unset($array[$key]); // We don't want this field continue; @@ -5221,17 +5306,17 @@ class Form else if ($objecttype == 'subscription') { $tplpath = 'adherents'; } - + global $linkedObjectBlock; $linkedObjectBlock = $objects; if (empty($numoutput)) { $numoutput++; - + print '
'; print load_fiche_titre($langs->trans('RelatedObjects'), '', ''); - + print ''; print ''; @@ -5244,7 +5329,7 @@ class Form print ''; print ''; } - + // Output template part (modules that overwrite templates must declare this into descriptor) $dirtpls=array_merge($conf->modules_parts['tpl'],array('/'.$tplpath.'/tpl')); foreach($dirtpls as $reldir) @@ -5254,11 +5339,11 @@ class Form } } - if ($numoutput) + if ($numoutput) { print '
'; } - + return $num; } } @@ -5627,7 +5712,7 @@ class Form $ret.=''; if ($morehtmlright) $ret.='
'.$morehtmlright.'
'; - + if ($previous_ref || $next_ref || $morehtml) { $ret.=''; print '
'; diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index f3f03c65ac6..e87b00ee949 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -839,6 +839,17 @@ class Product extends CommonObject if (! $error) { + if ($conf->attributes->enabled) { + + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; + + $comb = new ProductCombination($this->db); + + foreach ($comb->fetchAllByFkProductParent($this->id) as $currcomb) { + $currcomb->updateProperties($this); + } + } + $this->db->commit(); return 1; } @@ -944,6 +955,25 @@ class Product extends CommonObject } } + if (!$error) { + + require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; + + //If it is a parent product, then we remove the association with child products + $prodcomb = new ProductCombination($this->db); + + if ($prodcomb->deleteByFkProductParent($id) < 0) { + $error++; + $this->errors[] = 'Error deleting combinations'; + } + + //We also check if it is a child product + if (!$error && ($prodcomb->fetchByFkProductChild($id) > 0) && ($prodcomb->delete() < 0)) { + $error++; + $this->errors[] = 'Error deleting child combination'; + } + } + // Delete product if (! $error) { diff --git a/htdocs/product/list.php b/htdocs/product/list.php index c95156b4393..29e2216c154 100644 --- a/htdocs/product/list.php +++ b/htdocs/product/list.php @@ -2,7 +2,7 @@ /* Copyright (C) 2001-2006 Rodolphe Quiedeville * Copyright (C) 2004-2016 Laurent Destailleur * Copyright (C) 2005-2012 Regis Houssin - * Copyright (C) 2012-2013 Marcos García + * Copyright (C) 2012-2016 Marcos García * Copyright (C) 2013-2016 Juanjo Menent * Copyright (C) 2013-2015 Raphaël Doursenaud * Copyright (C) 2013 Jean Heimburger @@ -50,7 +50,7 @@ $sref=GETPOST("sref"); $sbarcode=GETPOST("sbarcode"); $snom=GETPOST("snom"); $sall=GETPOST("sall"); -$type=GETPOST("type","int"); +$type= (int) GETPOST("type","int"); $search_sale = GETPOST("search_sale"); $search_categ = GETPOST("search_categ",'int'); $tosell = GETPOST("tosell", 'int'); @@ -62,6 +62,13 @@ $search_accountancy_code_sell = GETPOST("search_accountancy_code_sell",'alpha'); $search_accountancy_code_buy = GETPOST("search_accountancy_code_buy",'alpha'); $optioncss = GETPOST('optioncss','alpha'); +//Show/hide child products. Hidden by default +if (!$_POST) { + $search_hidechildproducts = 'on'; +} else { + $search_hidechildproducts = GETPOST('search_hidechildproducts'); +} + $limit = GETPOST("limit")?GETPOST("limit","int"):$conf->liste_limit; $sortfield = GETPOST("sortfield",'alpha'); $sortorder = GETPOST("sortorder",'alpha'); @@ -170,7 +177,7 @@ if (is_array($extrafields->attribute_label) && count($extrafields->attribute_lab } - + /* * Actions */ @@ -230,6 +237,9 @@ else $sql.= ' p.datec as date_creation, p.tms as date_update,'; //$sql.= ' pfp.ref_fourn as ref_supplier, '; $sql.= ' MIN(pfp.unitprice) as minsellprice'; + if (!empty($conf->attributes->enabled) && $search_hidechildproducts && ($type === 0)) { + $sql .= ', pac.rowid prod_comb_id'; + } // Add fields from extrafields foreach ($extrafields->attribute_label as $key => $val) $sql.=($extrafields->attribute_type[$key] != 'separate' ? ",ef.".$key.' as options_'.$key : ''); // Add fields from hooks @@ -242,6 +252,10 @@ else $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_fournisseur_price as pfp ON p.rowid = pfp.fk_product"; // multilang if (! empty($conf->global->MAIN_MULTILANGS)) $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_lang as pl ON pl.fk_product = p.rowid AND pl.lang = '".$langs->getDefaultLang() ."'"; + if (!empty($conf->attributes->enabled) && $search_hidechildproducts && ($type === 0)) { + $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."product_attribute_combination pac ON pac.fk_product_child = p.rowid"; + } + $sql.= ' WHERE p.entity IN ('.getEntity('product', 1).')'; if ($sall) $sql .= natural_search(array_keys($fieldstosearchall), $sall); // if the type is not 1, we show all products (type = 0,2,3) @@ -265,6 +279,12 @@ else if ($search_accountancy_code_sell) $sql.= natural_search('p.accountancy_code_sell', $search_accountancy_code_sell); if ($search_accountancy_code_sell) $sql.= natural_search('p.accountancy_code_buy', $search_accountancy_code_buy); // Add where from extra fields + + if (!empty($conf->attributes->enabled) && $search_hidechildproducts && ($type === 0)) { + $sql .= " AND pac.rowid IS NULL"; + } + + // Add where from extra fields foreach ($search_array_options as $key => $val) { $crit=$val; @@ -284,6 +304,9 @@ else $sql.= " GROUP BY p.rowid, p.ref, p.label, p.barcode, p.price, p.price_ttc, p.price_base_type,"; $sql.= " p.fk_product_type, p.duration, p.tosell, p.tobuy, p.seuil_stock_alerte, p.desiredstock,"; $sql.= ' p.datec, p.tms, p.entity, p.tobatch, p.accountancy_code_sell, p.accountancy_code_buy'; + if (!empty($conf->attributes->enabled) && $search_hidechildproducts && ($type === 0)) { + $sql .= ', pac.rowid'; + } // Add fields from extrafields foreach ($extrafields->attribute_label as $key => $val) $sql.=($extrafields->attribute_type[$key] != 'separate' ? ",ef.".$key : ''); // Add fields from hooks @@ -415,6 +438,15 @@ else $moreforfilter.=$htmlother->select_categories(Categorie::TYPE_PRODUCT,$search_categ,'search_categ',1); $moreforfilter.='
'; } + + //Show/hide child products. Hidden by default + if (!empty($conf->attributes->enabled) && $type === 0) { + $moreforfilter.='
'; + $moreforfilter.= ''; + $moreforfilter.= ' '; + $moreforfilter.='
'; + } + if ($moreforfilter) { print '
'; @@ -614,7 +646,7 @@ else $product_static->status_buy = $objp->tobuy; $product_static->status = $objp->tosell; $product_static->entity = $objp->entity; - + if (! empty($conf->stock->enabled) && $user->rights->stock->lire && $type != 1) // To optimize call of load_stock { if ($objp->fk_product_type != 1) // Not a service @@ -622,8 +654,8 @@ else $product_static->load_stock('nobatch'); // Load stock_reel + stock_warehouse. This also call load_virtual_stock() } } - - + + $var=!$var; print ''; @@ -752,7 +784,7 @@ else print ''; print yn($objp->tobatch); print ''; - } + } // Accountancy code sell if (! empty($arrayfields['p.accountancy_code_sell']['checked'])) print ''.$objp->accountancy_code_sell.''; // Accountancy code sell From 8ceb494569c5d30eecc8f8b13265ab08fa4029c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 25 Jul 2016 10:37:39 +0200 Subject: [PATCH 0010/1163] Added comments on classes to fix travis errors --- htdocs/attributes/class/ProductAttribute.class.php | 4 ++++ htdocs/attributes/class/ProductAttributeValue.class.php | 4 ++++ htdocs/attributes/class/ProductCombination.class.php | 4 ++++ .../attributes/class/ProductCombination2ValuePair.class.php | 4 ++++ 4 files changed, 16 insertions(+) diff --git a/htdocs/attributes/class/ProductAttribute.class.php b/htdocs/attributes/class/ProductAttribute.class.php index 1e0837fcb97..f563b03cd7e 100644 --- a/htdocs/attributes/class/ProductAttribute.class.php +++ b/htdocs/attributes/class/ProductAttribute.class.php @@ -16,6 +16,10 @@ * along with this program. If not, see . */ +/** + * Class ProductAttribute + * Used to represent a product attribute + */ class ProductAttribute { /** diff --git a/htdocs/attributes/class/ProductAttributeValue.class.php b/htdocs/attributes/class/ProductAttributeValue.class.php index f500fb251c6..41d1818ee63 100644 --- a/htdocs/attributes/class/ProductAttributeValue.class.php +++ b/htdocs/attributes/class/ProductAttributeValue.class.php @@ -16,6 +16,10 @@ * along with this program. If not, see . */ +/** + * Class ProductAttributeValue + * Used to represent a product attribute value + */ class ProductAttributeValue { /** diff --git a/htdocs/attributes/class/ProductCombination.class.php b/htdocs/attributes/class/ProductCombination.class.php index 6722f7f03fc..d5d7b6e81af 100644 --- a/htdocs/attributes/class/ProductCombination.class.php +++ b/htdocs/attributes/class/ProductCombination.class.php @@ -16,6 +16,10 @@ * along with this program. If not, see . */ +/** + * Class ProductCombination + * Used to represent a product combination + */ class ProductCombination { /** diff --git a/htdocs/attributes/class/ProductCombination2ValuePair.class.php b/htdocs/attributes/class/ProductCombination2ValuePair.class.php index 93521b86bbf..01bd0952d2d 100644 --- a/htdocs/attributes/class/ProductCombination2ValuePair.class.php +++ b/htdocs/attributes/class/ProductCombination2ValuePair.class.php @@ -16,6 +16,10 @@ * along with this program. If not, see . */ +/** + * Class ProductCombination2ValuePair + * Used to represent the relation between a product combination, a product attribute and a product attribute value + */ class ProductCombination2ValuePair { /** From 1c15cfa7229ee79e47405c670cbab111bb770c9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 6 Nov 2016 15:17:41 +0100 Subject: [PATCH 0011/1163] Adapted code to new changes --- htdocs/core/tpl/objectline_create.tpl.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/tpl/objectline_create.tpl.php b/htdocs/core/tpl/objectline_create.tpl.php index 4f0c1e4f479..5a82d1e8c26 100644 --- a/htdocs/core/tpl/objectline_create.tpl.php +++ b/htdocs/core/tpl/objectline_create.tpl.php @@ -185,7 +185,7 @@ else { if (empty($senderissupplier)) { - $form->select_produits(GETPOST('idprod'), 'idprod', $filtertype, $conf->product->limit_size, $buyer->price_level, 1, 2, '', 1, array(),$buyer->id, GETPOST('combinations', 'array')); + $form->select_produits(GETPOST('idprod'), 'idprod', $filtertype, $conf->product->limit_size, $buyer->price_level, 1, 2, '', 1, array(), $buyer->id, 1, 0, '', 0, GETPOST('combinations', 'array')); } else { From 081be37787e745c96f5806237a511766522d0bc7 Mon Sep 17 00:00:00 2001 From: moreauf Date: Mon, 14 Nov 2016 19:25:50 +0100 Subject: [PATCH 0012/1163] NEW: Add project and Hook to Loan BUG: Correct discard_closed parametters management in project --- htdocs/core/class/html.formprojet.class.php | 2 +- .../install/mysql/migration/4.0.0-5.0.0.sql | 2 +- htdocs/install/mysql/tables/llx_loan.sql | 3 +- htdocs/loan/card.php | 320 ++++++++++-------- htdocs/loan/class/loan.class.php | 9 +- htdocs/projet/ajax/projects.php | 3 +- 6 files changed, 198 insertions(+), 141 deletions(-) diff --git a/htdocs/core/class/html.formprojet.class.php b/htdocs/core/class/html.formprojet.class.php index 1112d34d13f..ddc26d0bb91 100644 --- a/htdocs/core/class/html.formprojet.class.php +++ b/htdocs/core/class/html.formprojet.class.php @@ -79,7 +79,7 @@ class FormProjets $project->fetch($selected); $selected_input_value=$project->ref; } - $urloption='socid='.$socid.'&htmlname='.$htmlname; + $urloption='socid='.$socid.'&htmlname='.$htmlname.'&discardclosed='.$discard_closed; $out.=ajax_autocompleter($selected, $htmlname, DOL_URL_ROOT.'/projet/ajax/projects.php', $urloption, $conf->global->PROJECT_USE_SEARCH_TO_SELECT, 0, array( // 'update' => array( // 'projectid' => 'id' diff --git a/htdocs/install/mysql/migration/4.0.0-5.0.0.sql b/htdocs/install/mysql/migration/4.0.0-5.0.0.sql index fb862457b45..76aa7d85928 100644 --- a/htdocs/install/mysql/migration/4.0.0-5.0.0.sql +++ b/htdocs/install/mysql/migration/4.0.0-5.0.0.sql @@ -221,4 +221,4 @@ drop table tmp_links_double; ALTER TABLE llx_links ADD UNIQUE INDEX uk_links (objectid,label); - +ALTER TABLE llx_loan ADD COLUMN fk_project integer DEFAULT NULL; diff --git a/htdocs/install/mysql/tables/llx_loan.sql b/htdocs/install/mysql/tables/llx_loan.sql index 6fd3c0d2099..64d1de5dc29 100644 --- a/htdocs/install/mysql/tables/llx_loan.sql +++ b/htdocs/install/mysql/tables/llx_loan.sql @@ -47,5 +47,6 @@ create table llx_loan fk_user_author integer DEFAULT NULL, fk_user_modif integer DEFAULT NULL, - active tinyint DEFAULT 1 NOT NULL + active tinyint DEFAULT 1 NOT NULL, + fk_project integer DEFAULT NULL )ENGINE=innodb; diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php index 0894447d485..b24f9c75253 100644 --- a/htdocs/loan/card.php +++ b/htdocs/loan/card.php @@ -28,6 +28,11 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/loan.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT.'/accountancy/class/html.formventilation.class.php'; +if (! empty($conf->projet->enabled)) +{ + require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; + require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php'; +} $langs->load("compta"); $langs->load("bills"); @@ -45,134 +50,143 @@ $result = restrictedArea($user, 'loan', $id, '',''); $object = new Loan($db); +$hookmanager->initHooks(array('loancard','globalcard')); + /* * Actions */ -// Classify paid -if ($action == 'confirm_paid' && $confirm == 'yes') -{ - $object->fetch($id); - $result = $object->set_paid($user); - if ($result > 0) - { - setEventMessages($langs->trans('LoanPaid'), null, 'mesgs'); - } - else - { - setEventMessages($loan->error, null, 'errors'); - } -} +$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks +if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors'); -// Delete loan -if ($action == 'confirm_delete' && $confirm == 'yes') +if (empty($reshook)) { - $object->fetch($id); - $result=$object->delete($user); - if ($result > 0) + // Classify paid + if ($action == 'confirm_paid' && $confirm == 'yes') { - setEventMessages($langs->trans('LoanDeleted'), null, 'mesgs'); - header("Location: index.php"); - exit; + $object->fetch($id); + $result = $object->set_paid($user); + if ($result > 0) + { + setEventMessages($langs->trans('LoanPaid'), null, 'mesgs'); + } + else + { + setEventMessages($loan->error, null, 'errors'); + } } - else - { - setEventMessages($loan->error, null, 'errors'); - } -} -// Add loan -if ($action == 'add' && $user->rights->loan->write) -{ - if (! $cancel) + // Delete loan + if ($action == 'confirm_delete' && $confirm == 'yes') { - $datestart=@dol_mktime(12,0,0, $_POST["startmonth"], $_POST["startday"], $_POST["startyear"]); - $dateend=@dol_mktime(12,0,0, $_POST["endmonth"], $_POST["endday"], $_POST["endyear"]); - - if (! $datestart) + $object->fetch($id); + $result=$object->delete($user); + if ($result > 0) { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("DateStart")), null, 'errors'); - $action = 'create'; - } - elseif (! $dateend) - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("DateEnd")), null, 'errors'); - $action = 'create'; - } - elseif (! $_POST["capital"]) - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("LoanCapital")), null, 'errors'); - $action = 'create'; + setEventMessages($langs->trans('LoanDeleted'), null, 'mesgs'); + header("Location: index.php"); + exit; } else { - $object->label = $_POST["label"]; - $object->fk_bank = $_POST["accountid"]; - $object->capital = $_POST["capital"]; - $object->datestart = $datestart; - $object->dateend = $dateend; - $object->nbterm = $_POST["nbterm"]; - $object->rate = $_POST["rate"]; - $object->note_private = GETPOST('note_private'); - $object->note_public = GETPOST('note_public'); + setEventMessages($loan->error, null, 'errors'); + } + } - $accountancy_account_capital = GETPOST('accountancy_account_capital'); - $accountancy_account_insurance = GETPOST('accountancy_account_insurance'); - $accountancy_account_interest = GETPOST('accountancy_account_interest'); + // Add loan + if ($action == 'add' && $user->rights->loan->write) + { + if (! $cancel) + { + $datestart=@dol_mktime(12,0,0, $_POST["startmonth"], $_POST["startday"], $_POST["startyear"]); + $dateend=@dol_mktime(12,0,0, $_POST["endmonth"], $_POST["endday"], $_POST["endyear"]); - if ($accountancy_account_capital <= 0) { $object->account_capital = ''; } else { $object->account_capital = $accountancy_account_capital; } - if ($accountancy_account_insurance <= 0) { $object->account_insurance = ''; } else { $object->account_insurance = $accountancy_account_insurance; } - if ($accountancy_account_interest <= 0) { $object->account_interest = ''; } else { $object->account_interest = $accountancy_account_interest; } - - $id=$object->create($user); - if ($id <= 0) + if (! $datestart) { - setEventMessages($object->error, $object->errors, 'errors'); + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("DateStart")), null, 'errors'); + $action = 'create'; + } + elseif (! $dateend) + { + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("DateEnd")), null, 'errors'); + $action = 'create'; + } + elseif (! $_POST["capital"]) + { + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("LoanCapital")), null, 'errors'); + $action = 'create'; + } + else + { + $object->label = $_POST["label"]; + $object->fk_bank = $_POST["accountid"]; + $object->capital = $_POST["capital"]; + $object->datestart = $datestart; + $object->dateend = $dateend; + $object->nbterm = $_POST["nbterm"]; + $object->rate = $_POST["rate"]; + $object->note_private = GETPOST('note_private'); + $object->note_public = GETPOST('note_public'); + $object->fk_project = GETPOST('fk_project'); + + $accountancy_account_capital = GETPOST('accountancy_account_capital'); + $accountancy_account_insurance = GETPOST('accountancy_account_insurance'); + $accountancy_account_interest = GETPOST('accountancy_account_interest'); + + if ($accountancy_account_capital <= 0) { $object->account_capital = ''; } else { $object->account_capital = $accountancy_account_capital; } + if ($accountancy_account_insurance <= 0) { $object->account_insurance = ''; } else { $object->account_insurance = $accountancy_account_insurance; } + if ($accountancy_account_interest <= 0) { $object->account_interest = ''; } else { $object->account_interest = $accountancy_account_interest; } + + $id=$object->create($user); + if ($id <= 0) + { + setEventMessages($object->error, $object->errors, 'errors'); + } } } - } - else - { - header("Location: index.php"); - exit(); - } -} - -// Update record -else if ($action == 'update' && $user->rights->loan->write) -{ - if (! $cancel) - { - $result = $object->fetch($id); - - if ($object->fetch($id)) + else { - $object->label = GETPOST("label"); - $object->datestart = dol_mktime(12, 0, 0, GETPOST('startmonth','int'), GETPOST('startday','int'), GETPOST('startyear','int')); - $object->dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); - $object->nbterm = GETPOST("nbterm"); - $object->rate = GETPOST("rate"); + header("Location: index.php"); + exit(); } + } - $result = $object->update($user); + // Update record + else if ($action == 'update' && $user->rights->loan->write) + { + if (! $cancel) + { + $result = $object->fetch($id); - if ($result > 0) - { - header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); - exit; - } - else - { - setEventMessages($object->error, $object->errors, 'errors'); - } - } - else - { - header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); - exit; - } + if ($object->fetch($id)) + { + $object->label = GETPOST("label"); + $object->datestart = dol_mktime(12, 0, 0, GETPOST('startmonth','int'), GETPOST('startday','int'), GETPOST('startyear','int')); + $object->dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); + $object->nbterm = GETPOST("nbterm"); + $object->rate = GETPOST("rate"); + $object->fk_project = GETPOST("fk_project"); + } + + $result = $object->update($user); + + if ($result > 0) + { + header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); + exit; + } + else + { + setEventMessages($object->error, $object->errors, 'errors'); + } + } + else + { + header("Location: " . $_SERVER["PHP_SELF"] . "?id=" . $id); + exit; + } + } } - /* * View */ @@ -240,6 +254,20 @@ if ($action == 'create') // Rate print ''.$langs->trans("Rate").' %'; + // Project + if (! empty($conf->projet->enabled)) + { + $formproject=new FormProjets($db); + + // Projet associe + $langs->load("projects"); + + print ''.$langs->trans("Project").''; + + $numproject=$formproject->select_projects(-1,GETPOST("fk_project"),'fk_project',16,0,1,1); + + print ''; + } // Note Private print ''; print ''.$langs->trans('NotePrivate').''; @@ -283,8 +311,8 @@ if ($action == 'create') print ''; print $formaccountancy->select_account($object->accountancy_account_interest, 'accountancy_account_interest', 1, '', 0, 1); print ''; - } - else // For external software + } + else // For external software { // Accountancy_account_capital print ''.$langs->trans("LoanAccountancyCapitalCode").''; @@ -300,11 +328,11 @@ if ($action == 'create') print ''.$langs->trans("LoanAccountancyInterestCode").''; print ''; print ''; - + print ''; } print ''; - + dol_fiche_end(); print '
     '; @@ -438,6 +466,23 @@ if ($id > 0) } print ''; + // projet + if (! empty($conf->projet->enabled)){ + print ''; + print $langs->trans("Project"); + print ''; + if ($action == 'edit') { + $formproject=new FormProjets($db); + $numproject=$formproject->select_projects(-1,$object->fk_project,'fk_project',16,0,1,1); + + } else { + $project=new Project($db); + $project->fetch($object->fk_project); + print $project->getNomUrl(1,'',1);; + } + print ''; + } + // Status print ''.$langs->trans("Status").''.$object->getLibStatut(4, $totalpaye).''; @@ -445,7 +490,7 @@ if ($id > 0) dol_fiche_end(); - + if ($action == 'edit') { print '
'; @@ -455,7 +500,7 @@ if ($id > 0) print '
'; print '

'; } - + print ''; print ''; } @@ -473,11 +473,11 @@ if ($id > 0) print ''; diff --git a/htdocs/loan/class/loan.class.php b/htdocs/loan/class/loan.class.php index 8ed6e682ce6..ac0062d3ed9 100644 --- a/htdocs/loan/class/loan.class.php +++ b/htdocs/loan/class/loan.class.php @@ -50,7 +50,7 @@ class Loan extends CommonObject var $fk_bank; var $fk_user_creat; var $fk_user_modif; - var $fk_project; + var $fk_projet; /** @@ -73,7 +73,7 @@ class Loan extends CommonObject function fetch($id) { $sql = "SELECT l.rowid, l.label, l.capital, l.datestart, l.dateend, l.nbterm, l.rate, l.note_private, l.note_public,"; - $sql.= " l.paid, l.accountancy_account_capital, l.accountancy_account_insurance, l.accountancy_account_interest,l.fk_project"; + $sql.= " l.paid, l.accountancy_account_capital, l.accountancy_account_insurance, l.accountancy_account_interest,l.fk_projet"; $sql.= " FROM ".MAIN_DB_PREFIX."loan as l"; $sql.= " WHERE l.rowid = ".$id; @@ -100,7 +100,7 @@ class Loan extends CommonObject $this->account_capital = $obj->accountancy_account_capital; $this->account_insurance = $obj->accountancy_account_insurance; $this->account_interest = $obj->accountancy_account_interest; - $this->fk_project = $obj->fk_project; + $this->fk_projet = $obj->fk_projet; $this->db->free($resql); return 1; @@ -128,7 +128,7 @@ class Loan extends CommonObject function create($user) { global $conf; - + $error=0; $now=dol_now(); @@ -143,7 +143,7 @@ class Loan extends CommonObject if (isset($this->fk_bank)) $this->fk_bank=trim($this->fk_bank); if (isset($this->fk_user_creat)) $this->fk_user_creat=trim($this->fk_user_creat); if (isset($this->fk_user_modif)) $this->fk_user_modif=trim($this->fk_user_modif); - if (isset($this->fk_project)) $this->fk_project=trim($this->fk_project); + if (isset($this->fk_projet)) $this->fk_projet=trim($this->fk_projet); // Check parameters if (! $newcapital > 0 || empty($this->datestart) || empty($this->dateend)) @@ -161,7 +161,7 @@ class Loan extends CommonObject $sql = "INSERT INTO ".MAIN_DB_PREFIX."loan (label, fk_bank, capital, datestart, dateend, nbterm, rate, note_private, note_public"; $sql.= " ,accountancy_account_capital, accountancy_account_insurance, accountancy_account_interest, entity"; - $sql.= " ,datec,fk_project,fk_user_author)"; + $sql.= " ,datec,fk_projet,fk_user_author)"; $sql.= " VALUES ('".$this->db->escape($this->label)."',"; $sql.= " '".$this->db->escape($this->fk_bank)."',"; $sql.= " '".price2num($newcapital)."',"; @@ -176,7 +176,7 @@ class Loan extends CommonObject $sql.= " '".$this->db->escape($this->account_interest)."',"; $sql.= " ".$conf->entity.","; $sql.= " '".$this->db->idate($now)."',"; - $sql.= " '".$this->fk_project."',"; + $sql.= " ".(empty($this->fk_projet)?'NULL':$this->fk_projet).","; $sql.= " ".$user->id; $sql.= ")"; @@ -284,7 +284,7 @@ class Loan extends CommonObject $sql.= " SET label='".$this->db->escape($this->label)."',"; $sql.= " datestart='".$this->db->idate($this->datestart)."',"; $sql.= " dateend='".$this->db->idate($this->dateend)."',"; - $sql.= " fk_project='".$this->db->escape($this->fk_project)."',"; + $sql.= " fk_projet=".(empty($this->fk_projet)?'NULL':$this->fk_projet).","; $sql.= " fk_user_modif = ".$user->id; $sql.= " WHERE rowid=".$this->id; @@ -348,7 +348,7 @@ class Loan extends CommonObject global $langs; $langs->load('customers'); $langs->load('bills'); - + if ($mode == 0) { if ($statut == 0) return $langs->trans("Unpaid"); diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php index 958f0b242a2..9abcc1d0771 100644 --- a/htdocs/projet/element.php +++ b/htdocs/projet/element.php @@ -47,6 +47,7 @@ if (! empty($conf->deplacement->enabled)) require_once DOL_DOCUMENT_ROOT.'/compt if (! empty($conf->expensereport->enabled)) require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; if (! empty($conf->agenda->enabled)) require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php'; if (! empty($conf->don->enabled)) require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php'; +if (! empty($conf->loan->enabled)) require_once DOL_DOCUMENT_ROOT.'/loan/class/loan.class.php'; $langs->load("projects"); $langs->load("companies"); @@ -58,6 +59,7 @@ if (! empty($conf->ficheinter->enabled)) $langs->load("interventions"); if (! empty($conf->deplacement->enabled)) $langs->load("trips"); if (! empty($conf->expensereport->enabled)) $langs->load("trips"); if (! empty($conf->don->enabled)) $langs->load("donations"); +if (! empty($conf->loan->enabled)) $langs->load("loan"); $id=GETPOST('id','int'); $ref=GETPOST('ref','alpha'); @@ -370,6 +372,19 @@ $listofreferent=array( 'buttonnew'=>'AddDonation', 'testnew'=>$user->rights->don->creer, 'test'=>$conf->don->enabled && $user->rights->don->lire), +'loan'=>array( + 'name'=>"Loan", + 'title'=>"ListLoanAssociatedProject", + 'class'=>'Loan', + 'margin'=>'add', + 'table'=>'Loan', + 'datefieldname'=>'datestart', + 'disableamount'=>0, + 'urlnew'=>DOL_URL_ROOT.'/loan/card.php?action=create&projectid='.$id.'&socid='.$socid, + 'lang'=>'loan', + 'buttonnew'=>'AddLoan', + 'testnew'=>$user->rights->loan->creer, + 'test'=>$conf->loan->enabled && $user->rights->loan->lire), 'agenda'=>array( 'name'=>"Agenda", 'title'=>"ListActionsAssociatedProject", @@ -397,9 +412,9 @@ $parameters=array('listofreferent'=>$listofreferent); $resHook = $hookmanager->executeHooks('completeListOfReferent',$parameters,$object,$action); if(!empty($hookmanager->resArray)) { - + $listofreferent = array_merge($listofreferent, $hookmanager->resArray); - + } if ($action=="addelement") @@ -490,7 +505,7 @@ foreach ($listofreferent as $key => $value) $element = new $classname($db); $elementarray = $object->get_element_list($key, $tablename, $datefieldname, $dates, $datee); - + if (count($elementarray)>0 && is_array($elementarray)) { $total_ht = 0; @@ -506,7 +521,7 @@ foreach ($listofreferent as $key => $value) $element->fetch($idofelement); if ($idofelementuser) $elementuser->fetch($idofelementuser); - // Special cases + // Special cases if ($tablename != 'expensereport_det' && method_exists($element, 'fetch_thirdparty')) $element->fetch_thirdparty(); if ($tablename == 'don') $total_ht_by_line=$element->amount; elseif ($tablename == 'projet_task') @@ -529,7 +544,7 @@ foreach ($listofreferent as $key => $value) { if (! empty($element->close_code) && $element->close_code == 'replaced') $qualifiedfortotal=false; // Replacement invoice, do not include into total } - + if ($qualifiedfortotal) $total_ht = $total_ht + $total_ht_by_line; if ($tablename == 'don') $total_ttc_by_line=$element->amount; @@ -795,7 +810,7 @@ foreach ($listofreferent as $key => $value) print ' - '.dol_trunc($element->label, 48); } else print $element->getNomUrl(1); - + $element_doc = $element->element; $filename=dol_sanitizeFileName($element->ref); $filedir=$conf->{$element_doc}->dir_output . '/' . dol_sanitizeFileName($element->ref); @@ -811,7 +826,7 @@ foreach ($listofreferent as $key => $value) } print '
'.$formfile->getDocumentsLink($element_doc, $filename, $filedir).'
'; - + // Show supplier ref if (! empty($element->ref_supplier)) print ' - '.$element->ref_supplier; // Show customer ref @@ -826,7 +841,7 @@ foreach ($listofreferent as $key => $value) elseif (! empty($element->status) || ! empty($element->statut) || ! empty($element->fk_status)) { if ($tablename=='don') $date = $element->datedon; - if ($tablename == 'commande_fournisseur' || $tablename == 'supplier_order') + if ($tablename == 'commande_fournisseur' || $tablename == 'supplier_order') { $date=($element->date_commande?$element->date_commande:$element->date_valid); } From ff734bb5d9379f5ca42b105783df5e0589a11a09 Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Wed, 16 Nov 2016 09:40:29 +0100 Subject: [PATCH 0014/1163] Fix travis --- htdocs/core/lib/functions.lib.php | 144 +++++++++++++++--------------- 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 677b619bd02..e535dd9f928 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -191,7 +191,7 @@ function getBrowserInfo($user_agent) elseif (preg_match('/opera(\/|\s)([\d\.]*)/i', $user_agent, $reg)) { $name='opera'; $version=$reg[2]; } elseif (preg_match('/(MSIE\s([0-9]+\.[0-9]))|.*(Trident\/[0-9]+.[0-9];\srv:([0-9]+\.[0-9]+))/i', $user_agent, $reg)) { $name='ie'; $version=end($reg); } // MS products at end elseif (preg_match('/l(i|y)n(x|ks)(\(|\/|\s)*([\d\.]+)/i', $user_agent, $reg)) { $name='lynxlinks'; $version=$reg[4]; } - + if ($tablet) { $layout = 'tablet'; } elseif ($phone) { @@ -256,14 +256,14 @@ function GETPOST($paramname,$check='',$method=0,$filter=NULL,$options=NULL) { $tmp=dol_getdate(dol_now(), true); $out = $tmp['mon']; - } + } elseif ($reg[1] == 'YEAR') { $tmp=dol_getdate(dol_now(), true); $out = $tmp['year']; } } - + switch ($check) { case 'int': @@ -387,15 +387,15 @@ function dol_buildpath($path, $type=0) if ($type == 1) $res = DOL_URL_ROOT.'/'.$path; // Standard value if ($type == 2) $res = DOL_MAIN_URL_ROOT.'/'.$path; // Standard value if ($type == 3) $res = DOL_URL_ROOT.'/'.$path; - + foreach ($conf->file->dol_document_root as $key => $dirroot) // ex: array(["main"]=>"/home/main/htdocs", ["alt0"]=>"/home/dirmod/htdocs", ...) { - if ($key == 'main') + if ($key == 'main') { if ($type == 3) { global $dolibarr_main_url_root; - + // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root)); $urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file @@ -422,12 +422,12 @@ function dol_buildpath($path, $type=0) if ($type == 3) { global $dolibarr_main_url_root; - + // Define $urlwithroot $urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root)); $urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file //$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current - + $res=(preg_match('/^http/i',$conf->file->dol_url_root[$key])?'':$urlwithroot).$conf->file->dol_url_root[$key].'/'.$path; // Test on start with http is for old conf syntax } break; @@ -693,13 +693,13 @@ function dol_syslog($message, $level = LOG_INFO, $ident = 0, $suffixinfilename=' throw new Exception('Incorrect log level'); } if ($level > $conf->global->SYSLOG_LEVEL) return; - + // If adding log inside HTML page is required if (! empty($_REQUEST['logtohtml']) && (! empty($conf->global->MAIN_ENABLE_LOG_TO_HTML) || ! empty($conf->global->MAIN_LOGTOHTML))) // MAIN_LOGTOHTML kept for backward compatibility { $conf->logbuffer[] = dol_print_date(time(),"%Y-%m-%d %H:%M:%S")." ".$message; } - + //TODO: Remove this. MAIN_ENABLE_LOG_INLINE_HTML should be deprecated and use a log handler dedicated to HTML output // If enable html log tag enabled and url parameter log defined, we show output log on HTML comments if (! empty($conf->global->MAIN_ENABLE_LOG_INLINE_HTML) && ! empty($_GET["log"])) @@ -708,7 +708,7 @@ function dol_syslog($message, $level = LOG_INFO, $ident = 0, $suffixinfilename=' print $message."\n"; print "Log end -->\n"; } - + $data = array( 'message' => $message, 'script' => (isset($_SERVER['PHP_SELF'])? basename($_SERVER['PHP_SELF'],'.php') : false), @@ -716,7 +716,7 @@ function dol_syslog($message, $level = LOG_INFO, $ident = 0, $suffixinfilename=' 'user' => ((is_object($user) && $user->id) ? $user->login : false), 'ip' => false ); - + if (! empty($_SERVER["REMOTE_ADDR"])) $data['ip'] = $_SERVER['REMOTE_ADDR']; // This is when PHP session is ran inside a web server but not inside a client request (example: init code of apache) else if (! empty($_SERVER['SERVER_ADDR'])) $data['ip'] = $_SERVER['SERVER_ADDR']; @@ -903,7 +903,7 @@ function dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $pi { $out = $hookmanager->resPrint; } - + return $out; } @@ -944,8 +944,8 @@ function dol_get_fiche_end($notab=0) * @param int $nodbprefix Do not include DB prefix to forge table name * @param string $morehtmlleft More html code to show before ref * @param string $morehtmlstatus More html code to show under navigation arrows - * @param string $morehtmlright More html code to show before navigation arrows * @param int $onlybanner Put this to 1, if the card will contains only a banner + * @param string $morehtmlright More html code to show before navigation arrows * @return void */ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='rowid', $fieldref='ref', $morehtmlref='', $moreparam='', $nodbprefix=0, $morehtmlleft='', $morehtmlstatus='', $onlybanner=0, $morehtmlright='') @@ -962,7 +962,7 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r if ($object->element == 'member') $modulepart='memberphoto'; if ($object->element == 'user') $modulepart='userphoto'; if ($object->element == 'product') $modulepart='product'; - + if ($object->element == 'product') { $width=80; $cssclass='photoref'; @@ -970,7 +970,7 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r $maxvisiblephotos=(isset($conf->global->PRODUCT_MAX_VISIBLE_PHOTO)?$conf->global->PRODUCT_MAX_VISIBLE_PHOTO:5); if ($conf->browser->phone) $maxvisiblephotos=1; if ($showimage) $morehtmlleft.='
'.$object->show_photos($conf->product->multidir_output[$object->entity],'small',$maxvisiblephotos,0,0,0,$width,0).'
'; - else + else { if (!empty($conf->global->PRODUCT_NODISPLAYIFNOPHOTO)) { $nophoto=''; @@ -980,14 +980,14 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r $nophoto='/public/theme/common/nophoto.png'; $morehtmlleft.='
No photo
'; } - + } } - else + else { - if ($showimage) + if ($showimage) { - if ($modulepart != 'unknown') + if ($modulepart != 'unknown') { $phototoshow = $form->showphoto($modulepart,$object,0,0,0,'photoref','small',1,0,$maxvisiblephotos); if ($phototoshow) @@ -1000,7 +1000,7 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r elseif ($conf->browser->layout != 'phone') // Show no photo link { $morehtmlleft.='
'; - if ($object->element == 'action') + if ($object->element == 'action') { $cssclass='photorefcenter'; $nophoto=img_picto('', 'title_agenda', '', false, 1); @@ -1019,7 +1019,7 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r if ($showbarcode) $morehtmlleft.='
'.$form->showbarcode($object).'
'; if ($object->element == 'societe' && ! empty($conf->use_javascript_ajax) && $user->rights->societe->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) { $morehtmlstatus.=ajax_object_onoff($object, 'status', 'status', 'InActivity', 'ActivityCeased'); - } + } elseif ($object->element == 'product') { //$morehtmlstatus.=$langs->trans("Status").' ('.$langs->trans("Sell").') '; @@ -1039,21 +1039,21 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r elseif ($object->element == 'facture' || $object->element == 'invoice' || $object->element == 'invoice_supplier') { $tmptxt=$object->getLibStatut(6, $object->totalpaye); - if (empty($tmptxt) || $tmptxt == $object->getLibStatut(3) || $conf->browser->layout=='phone') $tmptxt=$object->getLibStatut(5, $object->totalpaye); + if (empty($tmptxt) || $tmptxt == $object->getLibStatut(3) || $conf->browser->layout=='phone') $tmptxt=$object->getLibStatut(5, $object->totalpaye); $morehtmlstatus.=$tmptxt; } - elseif ($object->element == 'facturerec') + elseif ($object->element == 'facturerec') { $morehtmlstatus.=''; } else { // Generic case $tmptxt=$object->getLibStatut(6); - if (empty($tmptxt) || $tmptxt == $object->getLibStatut(3) || $conf->browser->layout=='phone') $tmptxt=$object->getLibStatut(5); + if (empty($tmptxt) || $tmptxt == $object->getLibStatut(3) || $conf->browser->layout=='phone') $tmptxt=$object->getLibStatut(5); $morehtmlstatus.=$tmptxt; } if (! empty($object->name_alias)) $morehtmlref.='
'.$object->name_alias.'
'; // For thirdparty if (! empty($object->label)) $morehtmlref.='
'.$object->label.'
'; // For product - if ($object->element != 'product') + if ($object->element != 'product') { $morehtmlref.='
'; $morehtmlref.=$object->getBannerAddress('refaddress',$object); @@ -1065,7 +1065,7 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r $morehtmlref.=$langs->trans("TechnicalID").': '.$object->id; $morehtmlref.='
'; } - + print '
'; print $form->showrefnav($object, $paramid, $morehtml, $shownav, $fieldid, $fieldref, $morehtmlref, $moreparam, $nodbprefix, $morehtmlleft, $morehtmlstatus, $morehtmlright); print '
'; @@ -1240,9 +1240,9 @@ function dol_print_date($time,$format='',$tzoutput='tzserver',$outputlangs='',$e $reduceformat=(! empty($conf->dol_optimize_smallscreen) && in_array($format,array('day','dayhour')))?1:0; $formatwithoutreduce = preg_replace('/reduceformat/','',$format); if ($formatwithoutreduce != $format) { $format = $formatwithoutreduce; $reduceformat=1; } // so format 'dayreduceformat' is processed like day - + // Change predefined format into computer format. If found translation in lang file we use it, otherwise we use default. - // TODO Add format daysmallyear and dayhoursmallyear + // TODO Add format daysmallyear and dayhoursmallyear if ($format == 'day') $format=($outputlangs->trans("FormatDateShort")!="FormatDateShort"?$outputlangs->trans("FormatDateShort"):$conf->format_date_short); else if ($format == 'hour') $format=($outputlangs->trans("FormatHourShort")!="FormatHourShort"?$outputlangs->trans("FormatHourShort"):$conf->format_hour_short); else if ($format == 'hourduration') $format=($outputlangs->trans("FormatHourShortDuration")!="FormatHourShortDuration"?$outputlangs->trans("FormatHourShortDuration"):$conf->format_hour_short_duration); @@ -1744,7 +1744,7 @@ function dol_print_phone($phone,$countrycode='',$cid=0,$socid=0,$addlink='',$sep $newphone=($separ!=''?'(':'').substr($newphone,0,3).($separ!=''?')':'').$separ.substr($newphone,3,3).($separ!=''?'-':'').substr($newphone,6,4); } } - + if (! empty($addlink)) // Link on phone number (+ link to add action if conf->global->AGENDA_ADDACTIONFORPHONE set) { if (! empty($conf->browser->phone) || (! empty($conf->clicktodial->enabled) && ! empty($conf->global->CLICKTODIAL_USE_TEL_LINK_ON_PHONE_NUMBERS))) // If phone or option for, we use link of phone @@ -1874,7 +1874,7 @@ function dol_user_country() * @param int $mode thirdparty|contact|member|other * @param int $id Id of object * @param int $noprint No output. Result is the function return - * @param string $charfornl Char to use instead of nl2br. '' means we use a standad nl2br. + * @param string $charfornl Char to use instead of nl2br. '' means we use a standad nl2br. * @return string|void Nothing if noprint is 0, formatted address if noprint is 1 * @see dol_format_address */ @@ -1895,7 +1895,7 @@ function dol_print_address($address, $htmlid, $mode, $id, $noprint=0, $charfornl { if (empty($charfornl)) $out.=nl2br($address); else $out.=preg_replace('/[\r\n]+/', $charfornl, $address); - + $showgmap=$showomap=0; // TODO Add a hook here @@ -2023,7 +2023,7 @@ function dol_print_graph($htmlid,$width,$height,$data,$showlegend=0,$type='pie', print '
'.$langs->trans("NotEnoughDataYet").'
'; return; } - + if (empty($conf->use_javascript_ajax)) return; $jsgraphlib='flot'; $datacolor=array(); @@ -2192,7 +2192,7 @@ function dol_trunc($string,$size=40,$trunc='right',$stringencoding='UTF-8',$nodo global $conf; if ($size==0 || ! empty($conf->global->MAIN_DISABLE_TRUNC)) return $string; - + if (empty($stringencoding)) $stringencoding='UTF-8'; // reduce for small screen if ($conf->dol_optimize_smallscreen==1 && $display==1) $size = round($size/3); @@ -3144,7 +3144,7 @@ function load_fiche_titre($titre, $morehtmlright='', $picto='title_generic.png', * @param string $options More parameters for links ('' by default, does not include sortfield neither sortorder) * @param string $sortfield Field to sort on ('' by default) * @param string $sortorder Order to sort ('' by default) - * @param string $center Strin gin the middle ('' by default). We often find here string $massaction comming from $form->selectMassAction() + * @param string $center Strin gin the middle ('' by default). We often find here string $massaction comming from $form->selectMassAction() * @param int $num Number of records found by select with limit+1 * @param int $totalnboflines Total number of records/lines for all pages (if known). Use a negative value to not show number. * @param string $picto Icon to use before title (should be a 32x32 transparent png file) @@ -3158,11 +3158,11 @@ function load_fiche_titre($titre, $morehtmlright='', $picto='title_generic.png', function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $center='', $num=-1, $totalnboflines=0, $picto='title_generic.png', $pictoisfullpath=0, $morehtml='', $morecss='', $limit=-1, $hideselectlimit=0) { global $conf,$langs; - + $savlimit = $limit; $savtotalnboflines = $totalnboflines; $totalnboflines=abs($totalnboflines); - + if ($picto == 'setup') $picto='title_setup.png'; if (($conf->browser->name == 'ie') && $picto=='title_generic.png') $picto='title.gif'; if ($limit < 0) $limit = $conf->liste_limit; @@ -3175,7 +3175,7 @@ function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $so $nextpage = 0; } //print 'totalnboflines='.$totalnboflines.'-savlimit='.$savlimit.'-limit='.$limit.'-num='.$num.'-nextpage='.$nextpage; - + print "\n"; print "\n"; print '
'; @@ -537,33 +582,38 @@ if ($id > 0) */ if ($action != 'edit') { - print '
'; + $reshook = $hookmanager->executeHooks('addMoreActionsButtons', $parameters, $object, $action); // Note that $action and $object may have been + // modified by hook + if (empty($reshook)) + { + print '
'; - // Edit - if ($user->rights->loan->write) - { - print ''.$langs->trans("Modify").''; + // Edit + if ($user->rights->loan->write) + { + print ''.$langs->trans("Modify").''; + } + + // Emit payment + if ($object->paid == 0 && ((price2num($object->capital) > 0 && round($staytopay) < 0) || (price2num($object->capital) > 0 && round($staytopay) > 0)) && $user->rights->loan->write) + { + print ''.$langs->trans("DoPayment").''; + } + + // Classify 'paid' + if ($object->paid == 0 && round($staytopay) <=0 && $user->rights->loan->write) + { + print ''.$langs->trans("ClassifyPaid").''; + } + + // Delete + if ($user->rights->loan->delete) + { + print ''.$langs->trans("Delete").''; + } + + print "
"; } - - // Emit payment - if ($object->paid == 0 && ((price2num($object->capital) > 0 && round($staytopay) < 0) || (price2num($object->capital) > 0 && round($staytopay) > 0)) && $user->rights->loan->write) - { - print ''.$langs->trans("DoPayment").''; - } - - // Classify 'paid' - if ($object->paid == 0 && round($staytopay) <=0 && $user->rights->loan->write) - { - print ''.$langs->trans("ClassifyPaid").''; - } - - // Delete - if ($user->rights->loan->delete) - { - print ''.$langs->trans("Delete").''; - } - - print "
"; } } else diff --git a/htdocs/loan/class/loan.class.php b/htdocs/loan/class/loan.class.php index 5c57764bf97..8ed6e682ce6 100644 --- a/htdocs/loan/class/loan.class.php +++ b/htdocs/loan/class/loan.class.php @@ -50,6 +50,7 @@ class Loan extends CommonObject var $fk_bank; var $fk_user_creat; var $fk_user_modif; + var $fk_project; /** @@ -72,7 +73,7 @@ class Loan extends CommonObject function fetch($id) { $sql = "SELECT l.rowid, l.label, l.capital, l.datestart, l.dateend, l.nbterm, l.rate, l.note_private, l.note_public,"; - $sql.= " l.paid, l.accountancy_account_capital, l.accountancy_account_insurance, l.accountancy_account_interest"; + $sql.= " l.paid, l.accountancy_account_capital, l.accountancy_account_insurance, l.accountancy_account_interest,l.fk_project"; $sql.= " FROM ".MAIN_DB_PREFIX."loan as l"; $sql.= " WHERE l.rowid = ".$id; @@ -99,6 +100,7 @@ class Loan extends CommonObject $this->account_capital = $obj->accountancy_account_capital; $this->account_insurance = $obj->accountancy_account_insurance; $this->account_interest = $obj->accountancy_account_interest; + $this->fk_project = $obj->fk_project; $this->db->free($resql); return 1; @@ -141,6 +143,7 @@ class Loan extends CommonObject if (isset($this->fk_bank)) $this->fk_bank=trim($this->fk_bank); if (isset($this->fk_user_creat)) $this->fk_user_creat=trim($this->fk_user_creat); if (isset($this->fk_user_modif)) $this->fk_user_modif=trim($this->fk_user_modif); + if (isset($this->fk_project)) $this->fk_project=trim($this->fk_project); // Check parameters if (! $newcapital > 0 || empty($this->datestart) || empty($this->dateend)) @@ -158,7 +161,7 @@ class Loan extends CommonObject $sql = "INSERT INTO ".MAIN_DB_PREFIX."loan (label, fk_bank, capital, datestart, dateend, nbterm, rate, note_private, note_public"; $sql.= " ,accountancy_account_capital, accountancy_account_insurance, accountancy_account_interest, entity"; - $sql.= " ,datec, fk_user_author)"; + $sql.= " ,datec,fk_project,fk_user_author)"; $sql.= " VALUES ('".$this->db->escape($this->label)."',"; $sql.= " '".$this->db->escape($this->fk_bank)."',"; $sql.= " '".price2num($newcapital)."',"; @@ -173,6 +176,7 @@ class Loan extends CommonObject $sql.= " '".$this->db->escape($this->account_interest)."',"; $sql.= " ".$conf->entity.","; $sql.= " '".$this->db->idate($now)."',"; + $sql.= " '".$this->fk_project."',"; $sql.= " ".$user->id; $sql.= ")"; @@ -280,6 +284,7 @@ class Loan extends CommonObject $sql.= " SET label='".$this->db->escape($this->label)."',"; $sql.= " datestart='".$this->db->idate($this->datestart)."',"; $sql.= " dateend='".$this->db->idate($this->dateend)."',"; + $sql.= " fk_project='".$this->db->escape($this->fk_project)."',"; $sql.= " fk_user_modif = ".$user->id; $sql.= " WHERE rowid=".$this->id; diff --git a/htdocs/projet/ajax/projects.php b/htdocs/projet/ajax/projects.php index 55a4597dc08..3140352bf60 100644 --- a/htdocs/projet/ajax/projects.php +++ b/htdocs/projet/ajax/projects.php @@ -37,6 +37,7 @@ $htmlname=GETPOST('htmlname','alpha'); $socid=GETPOST('socid','int'); $action=GETPOST('action', 'alpha'); $id=GETPOST('id', 'int'); +$discard_closed =GETPOST('discardclosed','int'); /* @@ -63,7 +64,7 @@ if (! GETPOST($htmlname) && ! GETPOST($idprod)) return; $searchkey=(GETPOST($idprod)?GETPOST($idprod):(GETPOST($htmlname)?GETPOST($htmlname):'')); $form = new FormProjets($db); -$arrayresult=$form->select_projects_list($socid, '', $htmlname, 0, 0, 1, 0, 0, 0, 1, $searchkey); +$arrayresult=$form->select_projects_list($socid, '', $htmlname, 0, 0, 1, $discard_closed, 0, 0, 1, $searchkey); $db->close(); From a251f0df51eec143a42e23de6133a4c66e60b0d3 Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Wed, 16 Nov 2016 09:38:13 +0100 Subject: [PATCH 0013/1163] Various fix on Loan and project link --- .../install/mysql/migration/4.0.0-5.0.0.sql | 2 +- htdocs/install/mysql/tables/llx_loan.sql | 2 +- htdocs/loan/card.php | 10 +++--- htdocs/loan/class/loan.class.php | 18 +++++------ htdocs/projet/element.php | 31 ++++++++++++++----- 5 files changed, 39 insertions(+), 24 deletions(-) diff --git a/htdocs/install/mysql/migration/4.0.0-5.0.0.sql b/htdocs/install/mysql/migration/4.0.0-5.0.0.sql index 42f7e8fd76c..5f5581a6d48 100644 --- a/htdocs/install/mysql/migration/4.0.0-5.0.0.sql +++ b/htdocs/install/mysql/migration/4.0.0-5.0.0.sql @@ -223,4 +223,4 @@ ALTER TABLE llx_links ADD UNIQUE INDEX uk_links (objectid,label); ALTER TABLE llx_c_actioncomm MODIFY COLUMN type varchar(50) DEFAULT 'system' NOT NULL; -ALTER TABLE llx_loan ADD COLUMN fk_project integer DEFAULT NULL; +ALTER TABLE llx_loan ADD COLUMN fk_projet integer DEFAULT NULL; diff --git a/htdocs/install/mysql/tables/llx_loan.sql b/htdocs/install/mysql/tables/llx_loan.sql index 64d1de5dc29..c6d8147fe47 100644 --- a/htdocs/install/mysql/tables/llx_loan.sql +++ b/htdocs/install/mysql/tables/llx_loan.sql @@ -48,5 +48,5 @@ create table llx_loan fk_user_author integer DEFAULT NULL, fk_user_modif integer DEFAULT NULL, active tinyint DEFAULT 1 NOT NULL, - fk_project integer DEFAULT NULL + fk_projet integer DEFAULT NULL )ENGINE=innodb; diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php index b24f9c75253..8d8c938f641 100644 --- a/htdocs/loan/card.php +++ b/htdocs/loan/card.php @@ -127,7 +127,7 @@ if (empty($reshook)) $object->rate = $_POST["rate"]; $object->note_private = GETPOST('note_private'); $object->note_public = GETPOST('note_public'); - $object->fk_project = GETPOST('fk_project'); + $object->fk_projet = GETPOST('fk_projet'); $accountancy_account_capital = GETPOST('accountancy_account_capital'); $accountancy_account_insurance = GETPOST('accountancy_account_insurance'); @@ -165,7 +165,7 @@ if (empty($reshook)) $object->dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); $object->nbterm = GETPOST("nbterm"); $object->rate = GETPOST("rate"); - $object->fk_project = GETPOST("fk_project"); + $object->fk_projet = GETPOST("fk_projet"); } $result = $object->update($user); @@ -264,7 +264,7 @@ if ($action == 'create') print '
'.$langs->trans("Project").''; - $numproject=$formproject->select_projects(-1,GETPOST("fk_project"),'fk_project',16,0,1,1); + $numproject=$formproject->select_projects(-1,GETPOST("fk_projet"),'fk_projet',16,0,1,1); print '
'; if ($action == 'edit') { $formproject=new FormProjets($db); - $numproject=$formproject->select_projects(-1,$object->fk_project,'fk_project',16,0,1,1); + $numproject=$formproject->select_projects(-1,$object->fk_projet,'fk_projet',16,0,1,1); } else { $project=new Project($db); - $project->fetch($object->fk_project); + $project->fetch($object->fk_projet); print $project->getNomUrl(1,'',1);; } print '
'; @@ -3276,7 +3276,7 @@ function print_fleche_navigation($page, $file, $options='', $nextpage=0, $betwee //$pagesizechoices.=',0:'.$langs->trans("All"); // Not yet supported //$pagesizechoices.=',2:2'; if (! empty($conf->global->MAIN_PAGESIZE_CHOICES)) $pagesizechoices=$conf->global->MAIN_PAGESIZE_CHOICES; - + print ''; } @@ -473,11 +473,11 @@ if ($id > 0) print ''; diff --git a/htdocs/loan/class/loan.class.php b/htdocs/loan/class/loan.class.php index ac0062d3ed9..bf6d67930ae 100644 --- a/htdocs/loan/class/loan.class.php +++ b/htdocs/loan/class/loan.class.php @@ -50,7 +50,7 @@ class Loan extends CommonObject var $fk_bank; var $fk_user_creat; var $fk_user_modif; - var $fk_projet; + var $fk_project; /** @@ -73,7 +73,7 @@ class Loan extends CommonObject function fetch($id) { $sql = "SELECT l.rowid, l.label, l.capital, l.datestart, l.dateend, l.nbterm, l.rate, l.note_private, l.note_public,"; - $sql.= " l.paid, l.accountancy_account_capital, l.accountancy_account_insurance, l.accountancy_account_interest,l.fk_projet"; + $sql.= " l.paid, l.accountancy_account_capital, l.accountancy_account_insurance, l.accountancy_account_interest,l.fk_project"; $sql.= " FROM ".MAIN_DB_PREFIX."loan as l"; $sql.= " WHERE l.rowid = ".$id; @@ -100,7 +100,7 @@ class Loan extends CommonObject $this->account_capital = $obj->accountancy_account_capital; $this->account_insurance = $obj->accountancy_account_insurance; $this->account_interest = $obj->accountancy_account_interest; - $this->fk_projet = $obj->fk_projet; + $this->fk_project = $obj->fk_project; $this->db->free($resql); return 1; @@ -143,7 +143,7 @@ class Loan extends CommonObject if (isset($this->fk_bank)) $this->fk_bank=trim($this->fk_bank); if (isset($this->fk_user_creat)) $this->fk_user_creat=trim($this->fk_user_creat); if (isset($this->fk_user_modif)) $this->fk_user_modif=trim($this->fk_user_modif); - if (isset($this->fk_projet)) $this->fk_projet=trim($this->fk_projet); + if (isset($this->fk_project)) $this->fk_project=trim($this->fk_project); // Check parameters if (! $newcapital > 0 || empty($this->datestart) || empty($this->dateend)) @@ -161,7 +161,7 @@ class Loan extends CommonObject $sql = "INSERT INTO ".MAIN_DB_PREFIX."loan (label, fk_bank, capital, datestart, dateend, nbterm, rate, note_private, note_public"; $sql.= " ,accountancy_account_capital, accountancy_account_insurance, accountancy_account_interest, entity"; - $sql.= " ,datec,fk_projet,fk_user_author)"; + $sql.= " ,datec,fk_project,fk_user_author)"; $sql.= " VALUES ('".$this->db->escape($this->label)."',"; $sql.= " '".$this->db->escape($this->fk_bank)."',"; $sql.= " '".price2num($newcapital)."',"; @@ -176,7 +176,7 @@ class Loan extends CommonObject $sql.= " '".$this->db->escape($this->account_interest)."',"; $sql.= " ".$conf->entity.","; $sql.= " '".$this->db->idate($now)."',"; - $sql.= " ".(empty($this->fk_projet)?'NULL':$this->fk_projet).","; + $sql.= " ".(empty($this->fk_project)?'NULL':$this->fk_project).","; $sql.= " ".$user->id; $sql.= ")"; @@ -284,7 +284,7 @@ class Loan extends CommonObject $sql.= " SET label='".$this->db->escape($this->label)."',"; $sql.= " datestart='".$this->db->idate($this->datestart)."',"; $sql.= " dateend='".$this->db->idate($this->dateend)."',"; - $sql.= " fk_projet=".(empty($this->fk_projet)?'NULL':$this->fk_projet).","; + $sql.= " fk_project=".(empty($this->fk_project)?'NULL':$this->fk_project).","; $sql.= " fk_user_modif = ".$user->id; $sql.= " WHERE rowid=".$this->id; From 71cff4032ccf99092b78b72ec599e43a96a3c3db Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Fri, 18 Nov 2016 16:26:12 +0100 Subject: [PATCH 0016/1163] NEW : option to copy into attachement files of events, files send by mail (with auto event creation) --- htdocs/core/actions_sendmails.inc.php | 1 + .../interface_50_modAgenda_ActionsAuto.class.php | 15 +++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/htdocs/core/actions_sendmails.inc.php b/htdocs/core/actions_sendmails.inc.php index 9ec3bfcb3b7..e9d65222d28 100644 --- a/htdocs/core/actions_sendmails.inc.php +++ b/htdocs/core/actions_sendmails.inc.php @@ -345,6 +345,7 @@ if (($action == 'send' || $action == 'relance') && ! $_POST['addfile'] && ! $_PO $object->trackid = $trackid; $object->fk_element = $object->id; $object->elementtype = $object->element; + $object->attachedfiles = $attachedfiles; // Call of triggers include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; diff --git a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php index bce6cd02eee..437dcea9e1c 100644 --- a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php +++ b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php @@ -856,6 +856,21 @@ class InterfaceActionsAuto extends DolibarrTriggers $ret=$actioncomm->create($user); // User creating action + if ($ret > 0 && $conf->global->MAIN_COPY_FILE_IN_EVENT_AUTO) + { + if (is_array($object->attachedfiles) && array_key_exists('paths',$object->attachedfiles) && count($object->attachedfiles['paths'])>0) { + foreach($object->attachedfiles['paths'] as $key=>$filespath) { + $srcfile = $filespath; + $destdir = $conf->agenda->dir_output . '/' . $ret; + $destfile = $destdir . '/' . $object->attachedfiles['names'][$key]; + if (dol_mkdir($destdir) >= 0) { + require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; + dol_copy($srcfile, $destfile); + } + } + } + } + unset($object->actionmsg); unset($object->actionmsg2); unset($object->actiontypecode); // When several action are called on same object, we must be sure to not reuse value of first action. if ($ret > 0) From 056b76a831930b5a1931f993879adbbdd96acf92 Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 10:34:22 +0000 Subject: [PATCH 0017/1163] Better Separator for Products/Services in Top Menu Easier to read when both modules are enabled --- htdocs/core/menus/standard/eldy.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 7b5e5d98d9d..67bc5674443 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -112,7 +112,7 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0,$mode $chaine.=$langs->trans("Products"); } if (! empty($conf->product->enabled) && ! empty($conf->service->enabled)) { - $chaine.="/"; + $chaine.=" | "; } if (! empty($conf->service->enabled)) { $chaine.=$langs->trans("Services"); From 86d195fa811daeb2c8082689598ed91e2e27dcaf Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 10:37:15 +0000 Subject: [PATCH 0018/1163] Add Unique Top Menu Translation Add unique top menu translation for products/services so it can be better translated separately from other words/links using the same text. --- htdocs/core/menus/standard/eldy.lib.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 67bc5674443..441bbd2da31 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -109,13 +109,13 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0,$mode $chaine=""; if (! empty($conf->product->enabled)) { - $chaine.=$langs->trans("Products"); + $chaine.=$langs->trans("TMenuProducts"); } if (! empty($conf->product->enabled) && ! empty($conf->service->enabled)) { $chaine.=" | "; } if (! empty($conf->service->enabled)) { - $chaine.=$langs->trans("Services"); + $chaine.=$langs->trans("TMenuServices"); } if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); From f96fd895e3c8bb1a4f8b768f871ee46c6fcebecd Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 10:40:45 +0000 Subject: [PATCH 0019/1163] Add Products/Services Menu Translation String Add the translation string into language file --- htdocs/langs/en_US/products.lang | 2 ++ 1 file changed, 2 insertions(+) diff --git a/htdocs/langs/en_US/products.lang b/htdocs/langs/en_US/products.lang index 27b64a4399d..7ce98277a73 100644 --- a/htdocs/langs/en_US/products.lang +++ b/htdocs/langs/en_US/products.lang @@ -5,6 +5,8 @@ ProductLabelTranslated=Translated product label ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card +TMenuProducts=PRODUCTS +TMenuServices=SERVICES Products=Products Services=Services Product=Product From 636fbb476c4eee92424bb3f9e55057bef30b13a0 Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 10:49:12 +0000 Subject: [PATCH 0020/1163] Add Unique Top Menu Translation Add unique top menu translation for Tools so it can be better translated separately from other words/links using the same text. --- htdocs/core/menus/standard/eldy.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 441bbd2da31..fe3b36860a9 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -259,7 +259,7 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0,$mode $idsel='tools'; if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); - if (empty($noout)) print_text_menu_entry($langs->trans("Tools"), $showmode, DOL_URL_ROOT.'/core/tools.php?mainmenu=tools&leftmenu=', $id, $idsel, $classname, $atarget); + if (empty($noout)) print_text_menu_entry($langs->trans("TMenuTools"), $showmode, DOL_URL_ROOT.'/core/tools.php?mainmenu=tools&leftmenu=', $id, $idsel, $classname, $atarget); if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/core/tools.php?mainmenu=tools&leftmenu=', $langs->trans("Tools"), 0, $showmode, $atarget, "tools", ''); } From 5c46095fa37b6ee559ebc6123f2e83449273a62f Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 10:52:30 +0000 Subject: [PATCH 0021/1163] Add Translation String for Tools Add translation string so it can be used independently for the top menu --- htdocs/langs/en_US/other.lang | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang index 1ea1f9da1db..69e0a808e62 100644 --- a/htdocs/langs/en_US/other.lang +++ b/htdocs/langs/en_US/other.lang @@ -2,6 +2,7 @@ SecurityCode=Security code NumberingShort=N° Tools=Tools +TMenuTools=TOOLS ToolsDesc=All miscellaneous tools not included in other menu entries are collected here.

All the tools can be reached in the left menu. Birthday=Birthday BirthdayDate=Birthday date From 9f2879515947574e8bb33517c41711a54c5793bc Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 11:29:35 +0000 Subject: [PATCH 0022/1163] Add Unique Top Menu Translation Add unique top menu translation for products/services so it can be better translated separately from other words/links using the same text. ** Requires re-enabling module --- htdocs/core/modules/modAgenda.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/modules/modAgenda.class.php b/htdocs/core/modules/modAgenda.class.php index 47e6fb43d5c..80cc63ac610 100644 --- a/htdocs/core/modules/modAgenda.class.php +++ b/htdocs/core/modules/modAgenda.class.php @@ -189,7 +189,7 @@ class modAgenda extends DolibarrModules // $r++; $this->menu[$r]=array('fk_menu'=>0, 'type'=>'top', - 'titre'=>'Agenda', + 'titre'=>'TMenuAgenda', 'mainmenu'=>'agenda', 'url'=>'/comm/action/index.php', 'langs'=>'agenda', From 6ebafe1a871405420882a8459b705d9cc41c25a7 Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 11:32:28 +0000 Subject: [PATCH 0023/1163] Add Translation String for Agenda Add translation string so it can be used independently for the top menu --- htdocs/langs/en_US/agenda.lang | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/langs/en_US/agenda.lang b/htdocs/langs/en_US/agenda.lang index b626d991615..48b1862d706 100644 --- a/htdocs/langs/en_US/agenda.lang +++ b/htdocs/langs/en_US/agenda.lang @@ -2,6 +2,7 @@ IdAgenda=ID event Actions=Events Agenda=Agenda +TMenuAgenda=AGENDA Agendas=Agendas LocalAgenda=Internal calendar ActionsOwnedBy=Event owned by From d5fe7b8b9c3d25ffab2c2815d17f4cb6df78fa16 Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 12:21:47 +0000 Subject: [PATCH 0024/1163] Add Search Tip for User Add a simple tip on the search strings which could be used by the end user when they are searching from the main search box. Tested strings are '*' and *|* This would be very useful to the end user and new users --- htdocs/langs/en_US/main.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index a3851b89339..4da744b2a75 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -775,7 +775,7 @@ SetRef=Set ref Select2ResultFoundUseArrows=Some results found. Use arrows to select. Select2NotFound=No result found Select2Enter=Enter -Select2MoreCharacter=or more character +Select2MoreCharacter=or more characters

SEARCH PARAMETERS:
[without spaces]

| OR
* SEARCH ALL
Select2MoreCharacters=or more characters Select2LoadingMoreResults=Loading more results... Select2SearchInProgress=Search in progress... From 5a8b844c49468c7cb2ece00ac0fcc654e6992c4a Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 22:41:08 +0000 Subject: [PATCH 0025/1163] Update other.lang --- htdocs/langs/en_US/other.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang index 69e0a808e62..253560454ec 100644 --- a/htdocs/langs/en_US/other.lang +++ b/htdocs/langs/en_US/other.lang @@ -2,7 +2,7 @@ SecurityCode=Security code NumberingShort=N° Tools=Tools -TMenuTools=TOOLS +TMenuTools=Tools ToolsDesc=All miscellaneous tools not included in other menu entries are collected here.

All the tools can be reached in the left menu. Birthday=Birthday BirthdayDate=Birthday date From 9bb60e8d2c2cb3c31356138973fa6a3ebf8afdee Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 22:41:35 +0000 Subject: [PATCH 0026/1163] Update agenda.lang --- htdocs/langs/en_US/agenda.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/agenda.lang b/htdocs/langs/en_US/agenda.lang index 48b1862d706..f378ec7afbc 100644 --- a/htdocs/langs/en_US/agenda.lang +++ b/htdocs/langs/en_US/agenda.lang @@ -2,7 +2,7 @@ IdAgenda=ID event Actions=Events Agenda=Agenda -TMenuAgenda=AGENDA +TMenuAgenda=Agenda Agendas=Agendas LocalAgenda=Internal calendar ActionsOwnedBy=Event owned by From 66693c52682e7ec8e93deaa48a0a7b17fca4c334 Mon Sep 17 00:00:00 2001 From: IJ Date: Sat, 19 Nov 2016 22:42:03 +0000 Subject: [PATCH 0027/1163] Update products.lang --- htdocs/langs/en_US/products.lang | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/langs/en_US/products.lang b/htdocs/langs/en_US/products.lang index 7ce98277a73..a228a9ef4df 100644 --- a/htdocs/langs/en_US/products.lang +++ b/htdocs/langs/en_US/products.lang @@ -5,8 +5,8 @@ ProductLabelTranslated=Translated product label ProductDescriptionTranslated=Translated product description ProductNoteTranslated=Translated product note ProductServiceCard=Products/Services card -TMenuProducts=PRODUCTS -TMenuServices=SERVICES +TMenuProducts=Products +TMenuServices=Services Products=Products Services=Services Product=Product From b631db1d6062032470403447daed0afb65d301f0 Mon Sep 17 00:00:00 2001 From: IJ Date: Tue, 22 Nov 2016 02:29:25 +0000 Subject: [PATCH 0028/1163] New: Add Hidden Options Quick Reference Link Add the dolibarr wiki link for quick reference from the page Setup>Other Setup --- htdocs/langs/en_US/admin.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index ca53bc971a9..c4dee6a5da1 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -982,7 +982,7 @@ TriggerAlwaysActive=Triggers in this file are always active, whatever are the ac TriggerActiveAsModuleActive=Triggers in this file are active as module %s is enabled. GeneratedPasswordDesc=Define here which rule you want to use to generate new password if you ask to have auto generated password DictionaryDesc=Insert all reference data. You can add your values to the default. -ConstDesc=This page allows you to edit all other parameters not available in previous pages. These are mostly reserved parameters for developers or advanced troubleshooting. +ConstDesc=This page allows you to edit all other parameters not available in previous pages. These are mostly reserved parameters for developers or advanced troubleshooting. For a list of options check here. MiscellaneousDesc=All other security related parameters are defined here. LimitsSetup=Limits/Precision setup LimitsDesc=You can define limits, precisions and optimisations used by Dolibarr here From 480b08bd0bd46519d4ca2cfaaf8cf0df4580d252 Mon Sep 17 00:00:00 2001 From: gauthier Date: Thu, 24 Nov 2016 15:48:04 +0100 Subject: [PATCH 0029/1163] NEW : convert exceiss received to reduc --- htdocs/comm/remx.php | 9 +++++ htdocs/compta/facture.php | 66 ++++++++++++++++++++++++++++------- htdocs/langs/en_US/bills.lang | 4 +-- 3 files changed, 64 insertions(+), 15 deletions(-) diff --git a/htdocs/comm/remx.php b/htdocs/comm/remx.php index e358b842d2d..372ee529b8b 100644 --- a/htdocs/comm/remx.php +++ b/htdocs/comm/remx.php @@ -369,6 +369,15 @@ if ($socid > 0) print preg_replace('/\(DEPOSIT\)/',$langs->trans("InvoiceDeposit"),$obj->description).' '.$facturestatic->getNomURl(1); print ''; } + elseif (preg_match('/\(EXCESS RECEIVED\)/',$obj->description)) + { + print '
'; + } else { print ''; print ''; print ''; @@ -3688,7 +3723,7 @@ else if ($id > 0 || ! empty($ref)) } // Reverse back money or convert to reduction - if ($object->type == Facture::TYPE_CREDIT_NOTE || $object->type == Facture::TYPE_DEPOSIT) { + if ($object->type == Facture::TYPE_CREDIT_NOTE || $object->type == Facture::TYPE_DEPOSIT || $object->type == Facture::TYPE_STANDARD) { // For credit note only if ($object->type == Facture::TYPE_CREDIT_NOTE && $object->statut == 1 && $object->paye == 0 && $user->rights->facture->paiement) { @@ -3702,6 +3737,11 @@ else if ($id > 0 || ! empty($ref)) } } + // For standard invoice with excess received + if ($object->type == Facture::TYPE_STANDARD && empty($object->paye) && ($object->total_ttc - $totalpaye - $totalcreditnotes - $totaldeposits) < 0 && $user->rights->facture->creer && empty($discount->id)) + { + print ''; + } // For credit note if ($object->type == Facture::TYPE_CREDIT_NOTE && $object->statut == 1 && $object->paye == 0 && $user->rights->facture->creer && $object->getSommePaiement() == 0) { print ''; diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index bfbe32b803e..fb27b364dcf 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -61,7 +61,7 @@ PaymentsBack=Payments back PaidBack=Paid back DeletePayment=Delete payment ConfirmDeletePayment=Are you sure you want to delete this payment ? -ConfirmConvertToReduc=Do you want to convert this credit note or deposit into an absolute discount ?
The amount will so be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. +ConfirmConvertToReduc=Do you want to convert this %s into an absolute discount ?
The amount will so be saved among all discounts and could be used as a discount for a current or a future invoice for this customer. SupplierPayments=Suppliers payments ReceivedPayments=Received payments ReceivedCustomersPayments=Payments received from customers @@ -386,7 +386,7 @@ ChequeDeposits=Checks deposits Cheques=Checks DepositId=Id deposit NbCheque=Number of checks -CreditNoteConvertedIntoDiscount=This credit note or deposit invoice has been converted into %s +CreditNoteConvertedIntoDiscount=This %s has been converted into %s UsBillingContactAsIncoiveRecipientIfExist=Use customer billing contact address instead of third party address as recipient for invoices ShowUnpaidAll=Show all unpaid invoices ShowUnpaidLateOnly=Show late unpaid invoices only From c433829d27420b7a51733c50109de522c29b6704 Mon Sep 17 00:00:00 2001 From: gauthier Date: Fri, 25 Nov 2016 11:04:42 +0100 Subject: [PATCH 0030/1163] NEW : interface --- htdocs/compta/facture.php | 6 +++--- htdocs/core/class/commonobject.class.php | 6 ++++++ htdocs/core/class/html.form.class.php | 3 ++- htdocs/core/lib/doc.lib.php | 6 ++++++ htdocs/core/lib/pdf.lib.php | 6 ++++++ htdocs/core/tpl/objectline_view.tpl.php | 7 +++++++ htdocs/langs/en_US/bills.lang | 2 ++ htdocs/societe/consumption.php | 7 +++++++ 8 files changed, 39 insertions(+), 4 deletions(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 8cafa015d92..8ef7f39e0b8 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -2591,8 +2591,8 @@ else if ($id > 0 || ! empty($ref)) $filterabsolutediscount = "fk_facture_source IS NULL"; // If we want deposit to be substracted to payments only and not to total of final invoice $filtercreditnote = "fk_facture_source IS NOT NULL"; // If we want deposit to be substracted to payments only and not to total of final invoice } else { - $filterabsolutediscount = "fk_facture_source IS NULL OR (fk_facture_source IS NOT NULL AND description LIKE '(DEPOSIT)%')"; - $filtercreditnote = "fk_facture_source IS NOT NULL AND description NOT LIKE '(DEPOSIT)%'"; + $filterabsolutediscount = "fk_facture_source IS NULL OR (fk_facture_source IS NOT NULL AND (description LIKE '(DEPOSIT)%' OR description LIKE '(EXCESS RECEIVED)%'))"; + $filtercreditnote = "fk_facture_source IS NOT NULL AND description NOT LIKE '(DEPOSIT)%' AND description NOT LIKE '(EXCESS RECEIVED)%'"; } $absolute_discount = $soc->getAvailableDiscounts('', $filterabsolutediscount); @@ -3740,7 +3740,7 @@ else if ($id > 0 || ! empty($ref)) // For standard invoice with excess received if ($object->type == Facture::TYPE_STANDARD && empty($object->paye) && ($object->total_ttc - $totalpaye - $totalcreditnotes - $totaldeposits) < 0 && $user->rights->facture->creer && empty($discount->id)) { - print ''; + print ''; } // For credit note if ($object->type == Facture::TYPE_CREDIT_NOTE && $object->statut == 1 && $object->paye == 0 && $user->rights->facture->creer && $object->getSommePaiement() == 0) { diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 3279d372a0e..eaf8166e141 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -3411,6 +3411,12 @@ abstract class CommonObject $discount->fetch($line->fk_remise_except); $this->tpl['description'] = $langs->transnoentities("DiscountFromDeposit",$discount->getNomUrl(0)); } + elseif ($line->desc == '(EXCESS RECEIVED)') + { + $discount=new DiscountAbsolute($this->db); + $discount->fetch($line->fk_remise_except); + $this->tpl['description'] = $langs->transnoentities("DiscountFromExcessReceived",$discount->getNomUrl(0)); + } else { $this->tpl['description'] = dol_trunc($line->desc,60); diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index c4273a779a9..fcd60169470 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -1130,6 +1130,7 @@ class Form $desc=dol_trunc($obj->description,40); if (preg_match('/\(CREDIT_NOTE\)/', $desc)) $desc=preg_replace('/\(CREDIT_NOTE\)/', $langs->trans("CreditNote"), $desc); if (preg_match('/\(DEPOSIT\)/', $desc)) $desc=preg_replace('/\(DEPOSIT\)/', $langs->trans("Deposit"), $desc); + if (preg_match('/\(EXCESS RECEIVED\)/', $desc)) $desc=preg_replace('/\(EXCESS RECEIVED\)/', $langs->trans("ExcessReceived"), $desc); $selectstring=''; if ($selected > 0 && $selected == $obj->rowid) $selectstring=' selected'; @@ -3762,7 +3763,7 @@ class Form } else { - if (! $filter || $filter=="fk_facture_source IS NULL OR (fk_facture_source IS NOT NULL AND description LIKE '(DEPOSIT)%')") print $langs->trans("CompanyHasAbsoluteDiscount",price($amount,0,$langs,0,0,-1,$conf->currency)).': '; + if (! $filter || $filter=="fk_facture_source IS NULL OR (fk_facture_source IS NOT NULL AND (description LIKE '(DEPOSIT)%' OR description LIKE '(EXCESS RECEIVED)%'))") print $langs->trans("CompanyHasAbsoluteDiscount",price($amount,0,$langs,0,0,-1,$conf->currency)).': '; else print $langs->trans("CompanyHasCreditNote",price($amount,0,$langs,0,0,-1,$conf->currency)).': '; } $newfilter='fk_facture IS NULL AND fk_facture_line IS NULL'; // Remises disponibles diff --git a/htdocs/core/lib/doc.lib.php b/htdocs/core/lib/doc.lib.php index 76337ec2763..99e576ad057 100644 --- a/htdocs/core/lib/doc.lib.php +++ b/htdocs/core/lib/doc.lib.php @@ -83,6 +83,12 @@ function doc_getlinedesc($line,$outputlangs,$hideref=0,$hidedesc=0,$issupplierli // Add date of deposit if (! empty($conf->global->INVOICE_ADD_DEPOSIT_DATE)) $libelleproduitservice.=' ('.dol_print_date($discount->datec,'day','',$outputlangs).')'; } + elseif ($desc == '(EXCESS RECEIVED)' && $line->fk_remise_except) + { + $discount=new DiscountAbsolute($db); + $discount->fetch($line->fk_remise_except); + $libelleproduitservice=$outputlangs->transnoentitiesnoconv("DiscountFromExcessReceived",$discount->ref_facture_source); + } else { if ($idprod) diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index 8b21fcdefe9..80f0727bdf4 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -1149,6 +1149,12 @@ function pdf_getlinedesc($object,$i,$outputlangs,$hideref=0,$hidedesc=0,$issuppl // Add date of deposit if (! empty($conf->global->INVOICE_ADD_DEPOSIT_DATE)) echo ' ('.dol_print_date($discount->datec,'day','',$outputlangs).')'; } + if ($desc == '(EXCESS RECEIVED)' && $object->lines[$i]->fk_remise_except) + { + $discount=new DiscountAbsolute($db); + $discount->fetch($object->lines[$i]->fk_remise_except); + $libelleproduitservice=$outputlangs->transnoentitiesnoconv("DiscountFromExcessReceived",$discount->ref_facture_source); + } else { if ($idprod) diff --git a/htdocs/core/tpl/objectline_view.tpl.php b/htdocs/core/tpl/objectline_view.tpl.php index 7162ac66cb9..30bf2eeb05c 100644 --- a/htdocs/core/tpl/objectline_view.tpl.php +++ b/htdocs/core/tpl/objectline_view.tpl.php @@ -61,6 +61,7 @@ if (empty($usemargins)) $usemargins=0; $txt=''; print img_object($langs->trans("ShowReduc"),'reduc').' '; if ($line->description == '(DEPOSIT)') $txt=$langs->trans("Deposit"); + elseif ($line->description == '(EXCESS RECEIVED)') $txt=$langs->trans("ExcessReceived"); //else $txt=$langs->trans("Discount"); print $txt; ?> @@ -82,6 +83,12 @@ if (empty($usemargins)) $usemargins=0; // Add date of deposit if (! empty($conf->global->INVOICE_ADD_DEPOSIT_DATE)) echo ' ('.dol_print_date($discount->datec).')'; } + elseif ($line->description == '(EXCESS RECEIVED)' && $objp->fk_remise_except > 0) + { + $discount=new DiscountAbsolute($this->db); + $discount->fetch($line->fk_remise_except); + echo ($txt?' - ':'').$langs->transnoentities("DiscountFromExcessReceived",$discount->getNomUrl(0)); + } else { echo ($txt?' - ':'').dol_htmlentitiesbr($line->description); diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index fb27b364dcf..5a3ab004308 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -99,6 +99,7 @@ SendRemindByMail=Send reminder by EMail DoPayment=Do payment DoPaymentBack=Do payment back ConvertToReduc=Convert into future discount +ConvertExcessReceivedToReduc=Convert excess received into future discount EnterPaymentReceivedFromCustomer=Enter payment received from customer EnterPaymentDueToCustomer=Make payment due to customer DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero @@ -255,6 +256,7 @@ Deposit=Deposit Deposits=Deposits DiscountFromCreditNote=Discount from credit note %s DiscountFromDeposit=Payments from deposit invoice %s +DiscountFromExcessReceived=Payments from excess received of invoice %s AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation CreditNoteDepositUse=Invoice must be validated to use this king of credits NewGlobalDiscount=New absolute discount diff --git a/htdocs/societe/consumption.php b/htdocs/societe/consumption.php index ea2cb899893..4bfbe99528a 100644 --- a/htdocs/societe/consumption.php +++ b/htdocs/societe/consumption.php @@ -461,6 +461,7 @@ if ($sql_select) $txt=''; print img_object($langs->trans("ShowReduc"),'reduc').' '; if ($objp->description == '(DEPOSIT)') $txt=$langs->trans("Deposit"); + elseif ($objp->description == '(EXCESS RECEIVED)') $txt=$langs->trans("ExcessReceived"); //else $txt=$langs->trans("Discount"); print $txt; ?> @@ -474,6 +475,12 @@ if ($sql_select) $discount->fetch($objp->fk_remise_except); echo ($txt?' - ':'').$langs->transnoentities("DiscountFromCreditNote",$discount->getNomUrl(0)); } + if ($objp->description == '(EXCESS RECEIVED)' && $objp->fk_remise_except > 0) + { + $discount=new DiscountAbsolute($db); + $discount->fetch($objp->fk_remise_except); + echo ($txt?' - ':'').$langs->transnoentities("DiscountFromExcessReceived",$discount->getNomUrl(0)); + } elseif ($objp->description == '(DEPOSIT)' && $objp->fk_remise_except > 0) { $discount=new DiscountAbsolute($db); From 792e12e6c50ae08db3421bce440ac94ac7146704 Mon Sep 17 00:00:00 2001 From: gauthier Date: Fri, 25 Nov 2016 11:09:15 +0100 Subject: [PATCH 0031/1163] FIX : interface --- htdocs/comm/remx.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/htdocs/comm/remx.php b/htdocs/comm/remx.php index 372ee529b8b..716018dbcca 100644 --- a/htdocs/comm/remx.php +++ b/htdocs/comm/remx.php @@ -537,6 +537,15 @@ if ($socid > 0) print preg_replace('/\(DEPOSIT\)/',$langs->trans("InvoiceDeposit"),$obj->description).' '.$facturestatic->getNomURl(1); print ''; } + elseif (preg_match('/\(EXCESS RECEIVED\)/',$obj->description)) + { + print ''; + } else { print ''; // Length - if (empty($conf->global->PRODUCT_DISABLE_LENGTH)) + if (empty($conf->global->PRODUCT_DISABLE_SIZE)) { print ''; + + print ''; + + print ''; + } if (empty($conf->global->PRODUCT_DISABLE_SURFACE)) { @@ -1324,13 +1344,23 @@ else print ' '; print $formproduct->select_measuring_units("weight_units", "weight", $object->weight_units); print ''; - if (empty($conf->global->PRODUCT_DISABLE_LENGTH)) + if (empty($conf->global->PRODUCT_DISABLE_SIZE)) { - // Length - print ''; + // Length + print ''; + + print ''; + + print ''; } if (empty($conf->global->PRODUCT_DISABLE_SURFACE)) { @@ -1634,7 +1664,7 @@ else print ' '; } print "\n"; - if (empty($conf->global->PRODUCT_DISABLE_LENGTH)) + if (empty($conf->global->PRODUCT_DISABLE_SIZE)) { // Length print '\n"; + + print '\n"; + + print '\n"; } if (empty($conf->global->PRODUCT_DISABLE_SURFACE)) { From b7af0461471fff0f9fe782f73bfd6b0e4e077c01 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Sun, 11 Dec 2016 01:53:33 +0100 Subject: [PATCH 0046/1163] Add automated compute --- htdocs/product/class/product.class.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 56b9fc527a6..695ab573805 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -640,6 +640,20 @@ class Product extends CommonObject $this->width_units = trim($this->width_units); $this->height = price2num($this->height); $this->height_units = trim($this->height_units); + // Automated compute surface and volume if not filled + if (empty($this->surface) && !empty($this->length) && !empty($this->width) + && $this->length_units == $this->with_units + ) { + $this->surface = $this->length * $this->width; + $this->surface_units = $this->width_units; + if (empty($this->volume) && !empty($this->height) + && $this->length_units == $this->height_units + ) { + $this->volume = $this->surface * $this->height; + $this->volume_units = $this->height_units; + } + } + $this->surface = price2num($this->surface); $this->surface_units = trim($this->surface_units); $this->volume = price2num($this->volume); From f5bffeb535b97bd5a62dda75037a4fcc58377b15 Mon Sep 17 00:00:00 2001 From: phf Date: Sun, 11 Dec 2016 16:30:01 +0100 Subject: [PATCH 0047/1163] New get multicurrency rate from document date (propal, order) --- htdocs/admin/multicurrency.php | 9 +++--- htdocs/comm/propal/class/propal.class.php | 2 +- htdocs/commande/class/commande.class.php | 10 +++--- .../class/multicurrency.class.php | 31 ++++++++++++++----- 4 files changed, 33 insertions(+), 19 deletions(-) diff --git a/htdocs/admin/multicurrency.php b/htdocs/admin/multicurrency.php index de3c2f3965a..f280b7c1735 100644 --- a/htdocs/admin/multicurrency.php +++ b/htdocs/admin/multicurrency.php @@ -183,20 +183,19 @@ print ''."\n"; print ''; print ''."\n"; -/* TODO uncomment when the functionality will integrated $var=!$var; print ''; -print ''; +print ''; print ''; print ''; -*/ + $var=!$var; print ''; diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index f10d82fdbfa..017a540e453 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -824,7 +824,7 @@ class Propal extends CommonObject if (empty($this->demand_reason_id)) $this->demand_reason_id=0; // Multicurrency - if (!empty($this->multicurrency_code)) list($this->fk_multicurrency,$this->multicurrency_tx) = MultiCurrency::getIdAndTxFromCode($this->db, $this->multicurrency_code); + if (!empty($this->multicurrency_code)) list($this->fk_multicurrency,$this->multicurrency_tx) = MultiCurrency::getIdAndTxFromCode($this->db, $this->multicurrency_code, $this->date); if (empty($this->fk_multicurrency)) { $this->multicurrency_code = $conf->currency; diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 1f75e6caf74..f8bf39721ab 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -704,9 +704,12 @@ class Commande extends CommonOrder // Clean parameters $this->brouillon = 1; // set command as draft - + + // $date_commande is deprecated + $date = ($this->date_commande ? $this->date_commande : $this->date); + // Multicurrency (test on $this->multicurrency_tx because we sould take the default rate only if not using origin rate) - if (!empty($this->multicurrency_code) && empty($this->multicurrency_tx)) list($this->fk_multicurrency,$this->multicurrency_tx) = MultiCurrency::getIdAndTxFromCode($this->db, $this->multicurrency_code); + if (!empty($this->multicurrency_code) && empty($this->multicurrency_tx)) list($this->fk_multicurrency,$this->multicurrency_tx) = MultiCurrency::getIdAndTxFromCode($this->db, $this->multicurrency_code, $date); else $this->fk_multicurrency = MultiCurrency::getIdFromCode($this->db, $this->multicurrency_code); if (empty($this->fk_multicurrency)) { @@ -745,9 +748,6 @@ class Commande extends CommonOrder return -1; } - // $date_commande is deprecated - $date = ($this->date_commande ? $this->date_commande : $this->date); - $now=dol_now(); $this->db->begin(); diff --git a/htdocs/multicurrency/class/multicurrency.class.php b/htdocs/multicurrency/class/multicurrency.class.php index 97d29e3885b..c42b4fc3796 100644 --- a/htdocs/multicurrency/class/multicurrency.class.php +++ b/htdocs/multicurrency/class/multicurrency.class.php @@ -508,22 +508,37 @@ class MultiCurrency extends CommonObject * * @param DoliDB $db object db * @param string $code code value search + * @param date $date_document date from document (propal, order, invoice, ...) * * @return array [0] => id currency * [1] => rate */ - public static function getIdAndTxFromCode(&$db, $code) + public static function getIdAndTxFromCode(&$db, $code, $date_document) { - $sql = 'SELECT m.rowid, mc.rate FROM '.MAIN_DB_PREFIX.'multicurrency m'; - $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'multicurrency_rate mc ON (m.rowid = mc.fk_multicurrency)'; - $sql.= ' WHERE m.code = \''.$db->escape($code).'\''; - $sql.= " AND m.entity IN (".getEntity('multicurrency', 1).")"; - $sql.= ' ORDER BY mc.date_sync DESC LIMIT 1'; + global $conf; + + $sql1 = 'SELECT m.rowid, mc.rate FROM '.MAIN_DB_PREFIX.'multicurrency m'; + $sql1.= ' LEFT JOIN '.MAIN_DB_PREFIX.'multicurrency_rate mc ON (m.rowid = mc.fk_multicurrency)'; + $sql1.= ' WHERE m.code = \''.$db->escape($code).'\''; + $sql1.= " AND m.entity IN (".getEntity('multicurrency', 1).")"; + $sql2= ''; + if (!empty($conf->global->MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE) && !empty($date_document)) $sql2.= ' AND DATE_FORMAT(mc.date_sync, "%Y-%m-%d") = "'.date('Y-m-d', $date_document).'"'; + $sql3.= ' ORDER BY mc.date_sync DESC LIMIT 1'; dol_syslog(__METHOD__,LOG_DEBUG); - $resql = $db->query($sql); + $resql = $db->query($sql1.$sql2.$sql3); + if ($resql && $obj = $db->fetch_object($resql)) return array($obj->rowid, $obj->rate); - else return array(0, 1); + else + { + if (!empty($conf->global->MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE)) + { + $resql = $db->query($sql1.$sql3); + if ($resql && $obj = $db->fetch_object($resql)) return array($obj->rowid, $obj->rate); + } + + return array(0, 1); + } } /** From 1db907e2afebb6403502ff3c0eb7eedb13f15b77 Mon Sep 17 00:00:00 2001 From: phf Date: Sun, 11 Dec 2016 21:15:24 +0100 Subject: [PATCH 0048/1163] Fix missing default value for new parameter --- htdocs/multicurrency/class/multicurrency.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/multicurrency/class/multicurrency.class.php b/htdocs/multicurrency/class/multicurrency.class.php index c42b4fc3796..b8ce1995b5a 100644 --- a/htdocs/multicurrency/class/multicurrency.class.php +++ b/htdocs/multicurrency/class/multicurrency.class.php @@ -513,7 +513,7 @@ class MultiCurrency extends CommonObject * @return array [0] => id currency * [1] => rate */ - public static function getIdAndTxFromCode(&$db, $code, $date_document) + public static function getIdAndTxFromCode(&$db, $code, $date_document='') { global $conf; From a7813c37a1dee3b5ba8d2e4da451e0f16e96f519 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Mon, 12 Dec 2016 12:36:00 +0100 Subject: [PATCH 0049/1163] init inventory integration --- htdocs/core/class/coreobject.class.php | 214 ++++++++++ htdocs/inventory/ajax/ajax.inventory.php | 50 +++ htdocs/inventory/class/inventory.class.php | 466 +++++++++++++++++++++ 3 files changed, 730 insertions(+) create mode 100644 htdocs/core/class/coreobject.class.php create mode 100644 htdocs/inventory/ajax/ajax.inventory.php create mode 100644 htdocs/inventory/class/inventory.class.php diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php new file mode 100644 index 00000000000..1cc68f38cb7 --- /dev/null +++ b/htdocs/core/class/coreobject.class.php @@ -0,0 +1,214 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \file htdocs/core/class/coreobject.inventory.php + * \ingroup core + * \brief File of class to manage all object. Might be replace or merge into commonobject + */ + +require_once DOL_DOCUMENT_ROOT.'/core/class/commonobject.class.php'; + +class CoreObject extends CommonObject { + + + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + function __construct(DoliDB &$db) { + + $this->db = &$db; + + $this->date_0 = '1001-01-01 00:00:00'; //TODO there is a solution for this ? + } + + private function init() { + + $this->id = 0; + $this->datec = time(); + $this->tms = time(); + + if(!empty($this->__fields)) { + foreach ($this->__fields as $field=>$info) { + + if($this->is_date($info)){ + $this->{$field} = time(); + } + elseif($this->is_array($info)){ + $this->{$field} = array(); + } + elseif($this->is_int($info)){ + $this->{$field} = (int)0; + } + elseif($this->is_float($info)) { + $this->{$field} = (double)0; + } + else{ + $this->{$field} = ''; + } + } + + $this->to_delete=false; + + return true; + } + else{ + return false; + } + + } + + + private function is_date(Array &$info){ + + if(is_array($info)) { + if(isset($info['type']) && $info['type']=='date') return true; + else return false; + } + else return false; + } + + private function is_array($info) { + + if(is_array($info)) { + if(isset($info['type']) && $info['type']=='array') return true; + else return false; + } + else return false; + } + + + private function is_null($info){ + if(is_array($info)) { + if(isset($info['type']) && $info['type']=='null') return true; + else return false; + } + else return false; + } + + private function is_int($info){ + + if(is_array($info)) { + if(isset($info['type']) && ($info['type']=='int' || $info['type']=='integer' )) return true; + else return false; + } + else return false; + } + private function _is_float($info){ + if(is_array($info)) { + if(isset($info['type']) && $info['type']=='float') return true; + else return false; + } else return false; + } + + private function _is_text($info){ + if(is_array($info)) { + if(isset($info['type']) && $info['type']=='text') return true; + else return false; + } else return false; + } + private function _is_index($info){ + if(is_array($info)) { + if(isset($info['index']) && $info['index']==true) return true; + else return false; + } else return false; + } + + private function set_save_query(){ + + $query=array( + 'rowid'=>$this->id + ,'datec'=>($this->id>0 ? $this->db->jdate($this->datec) : time()) + ,'tms'=>time() + ); + + foreach ($this->__fields as $field=>$info) { + + if($this->_is_date($info)){ + if(empty($this->{$field})){ + $query[$field] = $this->date_0; + } + else{ + $query[$field] = $this->db->jdate($this->{$field}); + } + } + else if($this->is_array($info)){ + $query[$field] = serialize($this->{$field}); + } + + else if($this->is_int($info)){ + $query[$field] = (int)price2num($this->{$field}); + } + + else if($this->_is_float($info)){ + $query[$field] = (double)price2num($this->{$field}); + } + + elseif($this->_is_null($info)) { + $query[$field] = (is_null($this->{$field}) || (empty($this->{$field}) && $this->{$field}!==0 && $this->{$field}!=='0')?null:$this->{$field}); + } + else{ + $query[$field] = $this->{$field}; + } + + } + + return $query; + } + + + public function fetch($id, $loadChild = true) { + + if(empty($id)) return false; + + $res = $db->query( 'SELECT '.$this->get_field_list().'datec,tms + FROM '.$this->table_element.' + WHERE rowid='.$id ); + if($obj = $db->fetch_object($res)) { + $this->rowid=$id; + + $this->set_vars_by_db($db); + + $this->datec=$this->db->idate($obj->datec); + $this->tms=$this->db->idate($obj->tms); + + if($loadChild) $this->loadChild($db); + + $this->run_trigger($db, 'load'); + + return $this->id; + } + else { + return false; + } + + } + public function update() { + + + + } + public function create() { + + + + } + + +} diff --git a/htdocs/inventory/ajax/ajax.inventory.php b/htdocs/inventory/ajax/ajax.inventory.php new file mode 100644 index 00000000000..34efecfab8f --- /dev/null +++ b/htdocs/inventory/ajax/ajax.inventory.php @@ -0,0 +1,50 @@ +rights->inventory->write) { echo -1; exit; } + + $fk_det_inventory = GETPOST('fk_det_inventory'); + + $det = new Inventorydet; + if( $det->load($PDOdb, $fk_det_inventory)) { + $det->qty_view+=GETPOST('qty'); + $det->save($PDOdb); + + echo $det->qty_view; + } + else { + echo -2; + } + + break; + + case 'pmp': + if (!$user->rights->inventory->write || !$user->rights->inventory->changePMP) { echo -1; exit; } + + $fk_det_inventory = GETPOST('fk_det_inventory'); + + $det = new Inventorydet; + if( $det->load($PDOdb, $fk_det_inventory)) { + $det->new_pmp=price2num(GETPOST('pmp')); + $det->save($PDOdb); + + echo $det->new_pmp; + } + else { + echo -2; + } + + break; + + } + diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php new file mode 100644 index 00000000000..808dd7933be --- /dev/null +++ b/htdocs/inventory/class/inventory.class.php @@ -0,0 +1,466 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \file htdocs/inventory/class/product.inventory.php + * \ingroup product + * \brief File of class to manage predefined products stock + */ + +require_once DOL_DOCUMENT_ROOT.'/core/class/coreobject.class.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; + +class Inventory extends CoreObject +{ + + public $element='inventory'; + public $table_element='inventory'; + public $fk_element='fk_inventory'; + protected $childtables=array('inventorydet'); // To test if we can delete object + protected $isnolinkedbythird = 1; // No field fk_soc + protected $ismultientitymanaged = 1; // 0=No test on entity, 1=Test with field entity, 2=Test with link by societe + + /** + * Warehouse Id + * @var int + */ + public $fk_warehouse; + /** + * Entity Id + * @var int + */ + public $entity; + + /** + * Status + * @var int + */ + public $status; + /** + * Inventory Date + * @var date + */ + public $date_inventory; + /** + * Inventory Title + * @var string + */ + public $title; + + private $__fields=array( + 'fk_warehouse'=>array('type'=>'integer','index'=>true) + ,'entity'=>array('type'=>'integer','index'=>true) + ,'status'=>array('type'=>'integer','index'=>true) + ,'date_inventory'=>array('type'=>'date') + ,'title'=>array('type'=>'string') + ); + + function __construct() + { + + parent::init(); + + $this->_init_vars(); + + $this->start(); + + $this->setChild('Inventorydet','fk_inventory'); + + $this->status = 0; + $this->entity = $conf->entity; + $this->errors = array(); + $this->amount = 0; + + } + + function sort_det() + { + usort($this->Inventorydet, array('Inventory', 'customSort')); + } + + function load(&$PDOdb, $id,$annexe = true) + { + + if(!$annexe) $this->withChild = false; + + $res = parent::load($PDOdb, $id); + $this->sort_det(); + + $this->amount = 0; + foreach($this->Inventorydet as &$det){ + $this->amount+=$det->qty_view * $det->pmp; + } + + return $res; + } + + + function customSort(&$objA, &$objB) + { + global $db; + + $r = strcmp(strtoupper(trim($objA->product->ref)), strtoupper(trim($objB->product->ref))); + + if ($r < 0) $r = -1; + elseif ($r > 0) $r = 1; + else $r = 0; + + return $r; + } + + function changePMP(&$PDOdb) { + + foreach ($this->Inventorydet as $k => &$Inventorydet) + { + + if($Inventorydet->new_pmp>0) { + $Inventorydet->pmp = $Inventorydet->new_pmp; + $Inventorydet->new_pmp = 0; + + $PDOdb->Execute("UPDATE ".MAIN_DB_PREFIX."product as p SET pmp = ".$Inventorydet->pmp." + WHERE rowid = ".$Inventorydet->fk_product ); + + if((float)DOL_VERSION<4.0) { + + $PDOdb->Execute("UPDATE ".MAIN_DB_PREFIX."product_stock SET pmp=".$Inventorydet->pmp." + WHERE fk_entrepot = ".$this->fk_warehouse." AND fk_product = ".$Inventorydet->fk_product) ; + + } + + } + } + + parent::save($PDOdb); + + } + + function save(&$PDOdb) + { + //si on valide l'inventaire on sauvegarde le stock à cette instant + if ($this->status) + { + $this->regulate($PDOdb); + } + + parent::save($PDOdb); + } + + function set_values($Tab) + { + global $db,$langs; + + if (isset($Tab['qty_to_add'])) + { + foreach ($Tab['qty_to_add'] as $k => $qty) + { + $qty = (float) price2num($qty); + + if ($qty < 0) + { + $this->errors[] = $langs->trans('inventoryErrorQtyAdd'); + return 0; + } + + $product = new Product($db); + $product->fetch($this->Inventorydet[$k]->fk_product); + + $this->Inventorydet[$k]->pmp = $product->pmp; + $this->Inventorydet[$k]->qty_view += $qty; + } + } + + return parent::set_values($Tab); + } + + function deleteAllLine(&$PDOdb) { + + foreach($this->Inventorydet as &$det) { + $det->to_delete = true; + } + + $this->save($PDOdb); + + $this->Inventorydet=array(); + + } + + function add_product(&$PDOdb, $fk_product, $fk_entrepot='') { + + $k = $this->addChild($PDOdb, 'Inventorydet'); + $det = &$this->Inventorydet[$k]; + + $det->fk_inventory = $this->getId(); + $det->fk_product = $fk_product; + $det->fk_warehouse = empty($fk_entrepot) ? $this->fk_warehouse : $fk_entrepot; + + $det->load_product(); + + $date = $this->get_date('date_inventory', 'Y-m-d'); + if(empty($date))$date = $this->get_date('date_cre', 'Y-m-d'); + $det->setStockDate($PDOdb, $date , $fk_entrepot); + + } + + function correct_stock($fk_product, $id_entrepot, $nbpiece, $movement, $label='', $price=0, $inventorycode='') + { + global $conf, $db, $langs, $user; + + /* duplication method product to add datem */ + if ($id_entrepot) + { + $db->begin(); + + require_once DOL_DOCUMENT_ROOT .'/product/stock/class/mouvementstock.class.php'; + + $op[0] = "+".trim($nbpiece); + $op[1] = "-".trim($nbpiece); + + $datem = empty($conf->global->INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT) ? dol_now() : $this->date_inventory; + + $movementstock=new MouvementStock($db); + $result=$movementstock->_create($user,$fk_product,$id_entrepot,$op[$movement],$movement,$price,$label,$inventorycode, $datem); + + if ($result >= 0) + { + $db->commit(); + return 1; + } + else + { + $this->error=$movementstock->error; + $this->errors=$movementstock->errors; + + $db->rollback(); + return -1; + } + } + } + + function regulate(&$PDOdb) + { + global $db,$user,$langs,$conf; + + if($conf->global->INVENTORY_DISABLE_VIRTUAL){ + $pdt_virtuel = false; + // Test si pdt virtuel est activé + if($conf->global->PRODUIT_SOUSPRODUITS) + { + $pdt_virtuel = true; + $conf->global->PRODUIT_SOUSPRODUITS = 0; + } + } + + foreach ($this->Inventorydet as $k => $Inventorydet) + { + $product = new Product($db); + $product->fetch($Inventorydet->fk_product); + + /* + * Ancien code qui était pourri et qui modifié la valeur du stock théorique si le parent était déstocké le même jour que l'enfant + * + * $product->load_stock(); + $Inventorydet->qty_stock = $product->stock_warehouse[$this->fk_warehouse]->real; + + if(date('Y-m-d', $this->date_inventory) < date('Y-m-d')) { + $TRes = $Inventorydet->getPmpStockFromDate($PDOdb, date('Y-m-d', $this->date_inventory), $this->fk_warehouse); + $Inventorydet->qty_stock = $TRes[1]; + } + */ + if ($Inventorydet->qty_view != $Inventorydet->qty_stock) + { + $Inventorydet->qty_regulated = $Inventorydet->qty_view - $Inventorydet->qty_stock; + $nbpiece = abs($Inventorydet->qty_regulated); + $movement = (int) ($Inventorydet->qty_view < $Inventorydet->qty_stock); // 0 = add ; 1 = remove + + $href = dol_buildpath('/inventory/inventory.php?id='.$this->getId().'&action=view', 1); + + if(empty($this->title)) + $this->correct_stock($product->id, $Inventorydet->fk_warehouse, $nbpiece, $movement, $langs->trans('inventoryMvtStock', $href, $this->getId())); + else + $this->correct_stock($product->id, $Inventorydet->fk_warehouse, $nbpiece, $movement, $langs->trans('inventoryMvtStockWithNomInventaire', $href, $this->title)); + } + } + + if($conf->global->INVENTORY_DISABLE_VIRTUAL){ + // Test si pdt virtuel était activé avant la régule + if($pdt_virtuel) $conf->global->PRODUIT_SOUSPRODUITS = 1; + } + + return 1; + } + + static function getLink($id) { + global $langs; + + $PDOdb=new TPDOdb; + + $i = new Inventory; + $i->load($PDOdb, $id, false); + + $title = !empty($i->title) ? $i->title : $langs->trans('inventoryTitle').' '.$i->getId(); + + return ''.img_picto('','object_list.png','',0).' '.$title.''; + + } +} + +class Inventorydet extends TObjetStd +{ + function __construct() + { + global $conf; + + $this->set_table(MAIN_DB_PREFIX.'inventorydet'); + $this->TChamps = array(); + $this->add_champs('fk_inventory,fk_warehouse,fk_product,entity', 'type=entier;'); + $this->add_champs('qty_view,qty_stock,qty_regulated,pmp,pa,new_pmp', 'type=float;'); + + $this->_init_vars(); + $this->start(); + + $this->entity = $conf->entity; + $this->errors = array(); + + $this->product = null; + + $this->current_pa = 0; + + } + + function load(&$PDOdb, $id) + { + global $conf; + + $res = parent::load($PDOdb, $id); + $this->load_product(); + $this->fetch_current_pa(); + + return $res; + } + + function fetch_current_pa() { + global $db,$conf; + + if(empty($conf->global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)) return false; + + if($this->pa>0){ + $this->current_pa = $this->pa; + } + else { + + dol_include_once('/fourn/class/fournisseur.product.class.php'); + $p= new ProductFournisseur($db); + $p->find_min_price_product_fournisseur($this->fk_product); + + if($p->fourn_qty>0) $this->current_pa = $p->fourn_price / $p->fourn_qty; + } + return true; + } + + function setStockDate(&$PDOdb, $date, $fk_warehouse) { + + list($pmp,$stock) = $this->getPmpStockFromDate($PDOdb, $date, $fk_warehouse); + + $this->qty_stock = $stock; + $this->pmp = $pmp; + + $last_pa = 0; + $sql = "SELECT price FROM ".MAIN_DB_PREFIX."stock_mouvement + WHERE fk_entrepot=".$fk_warehouse." + AND fk_product=".$this->fk_product." + AND (origintype='order_supplier' || origintype='invoice_supplier') + AND price>0 + AND datem<='".$date." 23:59:59' + ORDER BY datem DESC LIMIT 1"; + + $PDOdb->Execute($sql); + + if($obj = $PDOdb->Get_line()) { + $last_pa = $obj->price; + } + + $this->pa = $last_pa; + /* var_dump($fk_warehouse,$this->product->stock_warehouse,$this->pmp, $this->pa, $this->qty_stock); + exit;*/ + } + + function getPmpStockFromDate(&$PDOdb, $date, $fk_warehouse){ + + $res = $this->product->load_stock(); + + if($res>0) { + $stock = isset($this->product->stock_warehouse[$fk_warehouse]->real) ? $this->product->stock_warehouse[$fk_warehouse]->real : 0; + + if((float)DOL_VERSION<4.0) { + $pmp = isset($this->product->stock_warehouse[$fk_warehouse]->pmp) ? $this->product->stock_warehouse[$fk_warehouse]->pmp : 0; + } + else{ + $pmp = $this->product->pmp; + } + + } + + //On récupère tous les mouvements de stocks du produit entre aujourd'hui et la date de l'inventaire + $sql = "SELECT value, price + FROM ".MAIN_DB_PREFIX."stock_mouvement + WHERE fk_product = ".$this->product->id." + AND fk_entrepot = ".$fk_warehouse." + AND datem > '".date('Y-m-d 23:59:59',strtotime($date))."' + ORDER BY datem DESC"; + + //echo $sql.'
'; + $PDOdb->Execute($sql); + $TMouvementStock = $PDOdb->Get_All(); + $laststock = $stock; + $lastpmp = $pmp; + //Pour chacun des mouvements on recalcule le PMP et le stock physique + foreach($TMouvementStock as $mouvement){ + + //150 + //if($this->product->id==394) echo 'laststock = '.$stock.'
'; + + //9.33 + //if($this->product->id==394) echo 'lastpmp = '.$pmp.'
'; + $price = ($mouvement->price>0 && $mouvement->value>0) ? $mouvement->price : $lastpmp; + + $stock_value = $laststock * $lastpmp; + + $laststock -= $mouvement->value; + + $last_stock_value = $stock_value - ($mouvement->value * $price); + + $lastpmp = ($laststock != 0) ? $last_stock_value / $laststock : $lastpmp; + + + + } + + return array($lastpmp,$laststock); + } + + function load_product() + { + global $db; + + if($this->fk_product>0) { + $this->product = new Product($db); + $this->product->fetch($this->fk_product); + } + + } + +} From b8284447fd0149d574ded0dd073b4426376e248c Mon Sep 17 00:00:00 2001 From: jfefe Date: Mon, 12 Dec 2016 15:19:47 +0100 Subject: [PATCH 0050/1163] API can receive documents --- htdocs/api/class/api.class.php | 41 ++--- htdocs/api/class/api_documents.class.php | 143 ++++++++++++++++++ htdocs/api/index.php | 12 +- test/phpunit/RestAPIDocumentTest.php | 183 +++++++++++++++++++++++ 4 files changed, 354 insertions(+), 25 deletions(-) create mode 100644 htdocs/api/class/api_documents.class.php create mode 100644 test/phpunit/RestAPIDocumentTest.php diff --git a/htdocs/api/class/api.class.php b/htdocs/api/class/api.class.php index 5ffae225df1..ed97968e502 100644 --- a/htdocs/api/class/api.class.php +++ b/htdocs/api/class/api.class.php @@ -19,6 +19,7 @@ use Luracast\Restler\Restler; use Luracast\Restler\RestException; use Luracast\Restler\Defaults; +use Luracast\Restler\Format\UploadFormat; require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php'; @@ -47,14 +48,14 @@ class DolibarrApi function __construct($db, $cachedir='') { global $conf; - + if (empty($cachedir)) $cachedir = $conf->api->dir_temp; Defaults::$cacheDirectory = $cachedir; - + $this->db = $db; $production_mode = ( empty($conf->global->API_PRODUCTION_MODE) ? false : true ); $this->r = new Restler($production_mode); - + $this->r->setAPIVersion(1); } @@ -86,20 +87,20 @@ class DolibarrApi // Remove $db object property for object unset($object->db); - + // Remove linkedObjects. We should already have linkedObjectIds that avoid huge responses unset($object->linkedObjects); - + unset($object->lignes); // should be ->lines unset($object->oldline); - + unset($object->error); unset($object->errors); - + unset($object->ref_previous); unset($object->ref_next); unset($object->ref_int); - + unset($object->projet); // Should be fk_project unset($object->project); // Should be fk_project unset($object->author); // Should be fk_user_author @@ -111,18 +112,18 @@ class DolibarrApi unset($object->timespent_withhour); unset($object->timespent_fk_user); unset($object->timespent_note); - + unset($object->statuts); unset($object->statuts_short); unset($object->statuts_logo); unset($object->statuts_long); - + unset($object->element); unset($object->fk_element); unset($object->table_element); unset($object->table_element_line); unset($object->picto); - + // Remove the $oldcopy property because it is not supported by the JSON // encoder. The following error is generated when trying to serialize // it: "Error encoding/decoding JSON: Type is not supported" @@ -152,7 +153,7 @@ class DolibarrApi } } }*/ - + return $object; } @@ -187,12 +188,12 @@ class DolibarrApi return checkUserAccessToObject(DolibarrApiAccess::$user, $featuresarray,$resource_id,$dbtablename,$feature2,$dbt_keyfield,$dbt_select); } - + /** * Return if a $sqlfilters parameter is valid - * + * * @param string $sqlfilters sqlfilter string - * @return boolean True if valid, False if not valid + * @return boolean True if valid, False if not valid */ function _checkFilters($sqlfilters) { @@ -216,22 +217,22 @@ class DolibarrApi } return true; } - + /** * Function to forge a SQL criteria - * + * * @param array $matches Array of found string by regex search * @return string Forged criteria. Example: "t.field like 'abc%'" */ static function _forge_criteria_callback($matches) { global $db; - + //dol_syslog("Convert matches ".$matches[1]); if (empty($matches[1])) return ''; $tmp=explode(':',$matches[1]); if (count($tmp) < 3) return ''; - + $tmpescaped=$tmp[2]; if (preg_match('/^\'(.*)\'$/', $tmpescaped, $regbis)) { @@ -242,5 +243,5 @@ class DolibarrApi $tmpescaped = $db->escape($tmpescaped); } return $db->escape($tmp[0]).' '.strtoupper($db->escape($tmp[1]))." ".$tmpescaped; - } + } } diff --git a/htdocs/api/class/api_documents.class.php b/htdocs/api/class/api_documents.class.php new file mode 100644 index 00000000000..ca10b2befce --- /dev/null +++ b/htdocs/api/class/api_documents.class.php @@ -0,0 +1,143 @@ + + * Copyright (C) 2016 Laurent Destailleur + * Copyright (C) 2016 Jean-François Ferry + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +use Luracast\Restler\RestException; +use Luracast\Restler\Format\UploadFormat; + + +require_once DOL_DOCUMENT_ROOT.'/main.inc.php'; + +/** + * API class for receive files + * + * @access protected + * @class Documents {@requires user,external} + */ +class Documents extends DolibarrApi +{ + + /** + * @var array $DOCUMENT_FIELDS Mandatory fields, checked when create and update object + */ + static $DOCUMENT_FIELDS = array( + 'name', + 'modulepart', + 'file' + ); + + /** + * Constructor + */ + function __construct() + { + global $db; + $this->db = $db; + } + + /** + * Return a document + * + * @param string $module_part Module part for file + * @param string $filename File name + * + * @return array + * @throws RestException + * + */ + public function get($module_part, $filename) { + + } + + + /** + * Receive file + * + * @param array $request_data Request datas + * + * @return bool State of copy + * @throws RestException + */ + public function post($request_data) { + global $conf; + + require_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; + + if (!DolibarrApiAccess::$user->rights->ecm->upload) { + throw new RestException(401); + } + + // Suppression de la chaine de caractere ../ dans $original_file + $original_file = str_replace("../","/", $request_data['name']); + $refname = str_replace("../","/", $request_data['refname']); + + // find the subdirectory name as the reference + if (empty($request_data['refname'])) $refname=basename(dirname($original_file)."/"); + + // Security: + // On interdit les remontees de repertoire ainsi que les pipe dans + // les noms de fichiers. + if (preg_match('/\.\./',$original_file) || preg_match('/[<>|]/',$original_file)) + { + throw new RestException(401,'Refused to deliver file '.$original_file); + } + if (preg_match('/\.\./',$refname) || preg_match('/[<>|]/',$refname)) + { + throw new RestException(401,'Refused to deliver file '.$refname); + } + + $modulepart = $request_data['modulepart']; + + // Check mandatory fields + $result = $this->_validate_file($request_data); + + $upload_dir = DOL_DATA_ROOT . '/' .$modulepart.'/'.dol_sanitizeFileName($refname); + $destfile = $upload_dir . $original_file; + + if (!is_dir($upload_dir)) { + throw new RestException(401,'Directory not exists : '.$upload_dir); + } + + $file = $_FILES['file']; + $srcfile = $file['tmp_name']; + $res = dol_move($srcfile, $destfile, 0, 1); + + if (!$res) { + throw new RestException(500); + } + + return $res; + } + + /** + * Validate fields before create or update object + * + * @param array $data Array with data to verify + * @return array + * @throws RestException + */ + function _validate_file($data) { + $result = array(); + foreach (Documents::$DOCUMENT_FIELDS as $field) { + if (!isset($data[$field])) + throw new RestException(400, "$field field missing"); + $result[$field] = $data[$field]; + } + return $result; + } +} diff --git a/htdocs/api/index.php b/htdocs/api/index.php index 8ad60c4b340..5db8d7a78c9 100644 --- a/htdocs/api/index.php +++ b/htdocs/api/index.php @@ -56,16 +56,18 @@ if (empty($conf->global->MAIN_MODULE_API)) exit; } - $api = new DolibarrApi($db); // Enable the Restler API Explorer. // See https://github.com/Luracast/Restler-API-Explorer for more info. $api->r->addAPIClass('Luracast\\Restler\\Explorer'); -$api->r->setSupportedFormats('JsonFormat', 'XmlFormat'); +$api->r->setSupportedFormats('JsonFormat', 'XmlFormat', 'UploadFormat'); $api->r->addAuthenticationClass('DolibarrApiAccess',''); +// Define accepted mime types +UploadFormat::$allowedMimeTypes = array('image/jpeg', 'image/png', 'text/plain', 'application/octet-stream'); + $listofapis = array(); $modulesdir = dolGetModulesDirs(); @@ -86,7 +88,7 @@ foreach ($modulesdir as $dir) $module = strtolower($reg[1]); $moduledirforclass = $module; $moduleforperm = $module; - + if ($module == 'propale') { $moduledirforclass = 'comm/propal'; $moduleforperm='propal'; @@ -119,7 +121,7 @@ foreach ($modulesdir as $dir) $moduledirforclass = 'fourn'; } //dol_syslog("Found module file ".$file." - module=".$module." - moduledirforclass=".$moduledirforclass); - + // Defined if module is enabled $enabled=true; if (empty($conf->$moduleforperm->enabled)) $enabled=false; @@ -142,7 +144,7 @@ foreach ($modulesdir as $dir) while (($file_searched = readdir($handle_part))!==false) { if ($file_searched == 'api_access.class.php') continue; - + // Support of the deprecated API. if (is_readable($dir_part.$file_searched) && preg_match("/^api_deprecated_(.*)\.class\.php$/i",$file_searched,$reg)) { diff --git a/test/phpunit/RestAPIDocumentTest.php b/test/phpunit/RestAPIDocumentTest.php new file mode 100644 index 00000000000..ea0c218027f --- /dev/null +++ b/test/phpunit/RestAPIDocumentTest.php @@ -0,0 +1,183 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + * or see http://www.gnu.org/ + */ + +/** + * \file test/phpunit/RestAPIDocumentTest.php + * \ingroup test + * \brief PHPUnit test + * \remarks To run this script as CLI: phpunit filename.php. + */ +global $conf,$user,$langs,$db; +//define('TEST_DB_FORCE_TYPE','mysql'); // This is to force using mysql driver +//require_once 'PHPUnit/Autoload.php'; +require_once dirname(__FILE__).'/../../htdocs/master.inc.php'; +require_once dirname(__FILE__).'/../../htdocs/core/lib/date.lib.php'; +require_once dirname(__FILE__).'/../../htdocs/core/lib/geturl.lib.php'; + +if (empty($user->id)) { + echo "Load permissions for admin user nb 1\n"; + $user->fetch(1); + $user->getrights(); +} +$conf->global->MAIN_DISABLE_ALL_MAILS = 1; +$conf->global->MAIN_UMASK = '0666'; + +/** + * Class for PHPUnit tests. + * + * @backupGlobals disabled + * @backupStaticAttributes enabled + * @remarks backupGlobals must be disabled to have db,conf,user and lang not erased. + */ +class RestAPIDocumentTest extends PHPUnit_Framework_TestCase +{ + protected $savconf; + protected $savuser; + protected $savlangs; + protected $savdb; + protected $api_url; + protected $api_key; + + /** + * Constructor + * We save global variables into local variables. + * + * @return DateLibTest + */ + public function __construct() + { + //$this->sharedFixture + global $conf,$user,$langs,$db; + $this->savconf = $conf; + $this->savuser = $user; + $this->savlangs = $langs; + $this->savdb = $db; + + echo __METHOD__.' db->type='.$db->type.' user->id='.$user->id; + //print " - db ".$db->db; + echo "\n"; + } + + // Static methods + public static function setUpBeforeClass() + { + global $conf,$user,$langs,$db; + $db->begin(); // This is to have all actions inside a transaction even if test launched without suite. + + echo __METHOD__."\n"; + } + + // tear down after class + public static function tearDownAfterClass() + { + global $conf,$user,$langs,$db; + $db->rollback(); + + echo __METHOD__."\n"; + } + + /** + * Init phpunit tests. + */ + protected function setUp() + { + global $conf,$user,$langs,$db; + $conf = $this->savconf; + $user = $this->savuser; + $langs = $this->savlangs; + $db = $this->savdb; + + $this->api_url = DOL_MAIN_URL_ROOT.'/api/index.php'; + + $login = 'admin'; + $password = 'admin'; + $url = $this->api_url.'/login?login='.$login.'&password='.$password; + // Call the API login method to save api_key for this test class + $result = getURLContent($url, 'GET', '', 1, array()); + echo __METHOD__.' result = '.var_export($result, true)."\n"; + echo __METHOD__.' curl_error_no: '.$result['curl_error_no']."\n"; + $this->assertEquals($result['curl_error_no'], ''); + $object = json_decode($result['content'], true); + $this->assertNotNull($object, 'Parsing of json result must no be null'); + $this->assertEquals('200', $object['success']['code']); + + $this->api_key = $object['success']['token']; + echo __METHOD__." api_key: $this->api_key \n"; + + echo __METHOD__."\n"; + } + + /** + * End phpunit tests. + */ + protected function tearDown() + { + echo __METHOD__."\n"; + } + + /** + * testRestReceiveDocument. + * + * @return int + */ + public function testRestReceiveDocument() + { + global $conf,$user,$langs,$db; + + $url = $this->api_url.'/documents/?api_key='.$this->api_key; + + $fileName = 'img250x20.png'; + $filePath = dirname(__FILE__).'/'.$fileName; + $mimetype = mime_content_type($filePath); + // Init Curl file object + // See https://wiki.php.net/rfc/curl-file-upload + $cfile = curl_file_create($filePath, $mimetype); + + echo __METHOD__.' Request POST url='.$url."\n"; + + // Send to existant directory + $data = array( + 'modulepart' => 'facture', + 'file' => $cfile, + 'refname' => 'AV1303-0003', + 'name' => $fileName, // Name for destination + 'type' => $mimetype, ); + + $result = getURLContent($url, 'POST', $data, 1); + + echo __METHOD__.' Result for sending document: '.var_export($result, true)."\n"; + echo __METHOD__.' curl_error_no: '.$result['curl_error_no']."\n"; + $this->assertEquals($result['curl_error_no'], ''); + $this->assertEquals($result['content'], 'true'); + + // Send to unexistant directory + $data = array( + 'modulepart' => 'facture', + 'file' => $cfile, + 'name' => 'AV1303-0003STSEIUDEISRESIJLEU/'.$fileName, // Name for destination + 'type' => $mimetype, ); + + $result2 = getURLContent($url, 'POST', $data, 1); + echo __METHOD__.' Result for sending document: '.var_export($result2, true)."\n"; + echo __METHOD__.' curl_error_no: '.$result['curl_error_no']."\n"; + + $object = json_decode($result2['content'], true); + $this->assertNotNull($object, 'Parsing of json result must no be null'); + $this->assertEquals('401', $object['error']['code']); + } +} From bfb628dab603020eeddd975062497998a462a7c3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Dec 2016 15:37:39 +0100 Subject: [PATCH 0051/1163] Code comment --- htdocs/user/class/user.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index d917b53078a..976379ff5e5 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -2601,8 +2601,9 @@ class User extends CommonObject /** * Return list of all child users id in herarchy (all sublevels). + * Note: Calling this function also reste full list of users into $this->users. * - * @return array Array of user id lower than user. This overwrite this->users. + * @return array Array of user id lower than user (all levels under user). * @see get_children */ function getAllChildIds() From 51eb3726dcf2745b2c9c5e7c81cacbdbc7a20212 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 12 Dec 2016 15:41:31 +0100 Subject: [PATCH 0052/1163] Code comment --- htdocs/document.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/document.php b/htdocs/document.php index 52b1584e7af..02eb7193675 100644 --- a/htdocs/document.php +++ b/htdocs/document.php @@ -109,7 +109,7 @@ if (empty($modulepart)) accessforbidden('Bad value for parameter modulepart'); $check_access = dol_check_secure_access_document($modulepart,$original_file,$entity,$refname); $accessallowed = $check_access['accessallowed']; $sqlprotectagainstexternals = $check_access['sqlprotectagainstexternals']; -$original_file = $check_access['original_file']; +$original_file = $check_access['original_file']; // original_file is now a full path name // Basic protection (against external users only) if ($user->societe_id > 0) From cdfbed5d084215994320f82bd98315373e018034 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Mon, 12 Dec 2016 17:36:22 +0100 Subject: [PATCH 0053/1163] new listview --- htdocs/core/class/class.listview.php | 1216 ++++++++++++++++++++ htdocs/inventory/class/inventory.class.php | 64 +- 2 files changed, 1270 insertions(+), 10 deletions(-) create mode 100644 htdocs/core/class/class.listview.php diff --git a/htdocs/core/class/class.listview.php b/htdocs/core/class/class.listview.php new file mode 100644 index 00000000000..f37fc9a1628 --- /dev/null +++ b/htdocs/core/class/class.listview.php @@ -0,0 +1,1216 @@ + + + This program and all files within this directory and sub directory + 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 3 of the License, or any + later version. + + This program 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 this program. If not, see . + */ + +class Listview { + + function __construct( $id ) { + + $this->id = $id; + + $this->TTotalTmp=array(); + + $this->sql = ''; + + } + private function init(&$TParam) { + + global $conf, $langs; + + if(!isset($TParam['hide']))$TParam['hide']=array(); + if(!isset($TParam['link']))$TParam['link']=array(); + if(!isset($TParam['type']))$TParam['type']=array(); + if(!isset($TParam['orderby']['noOrder']))$TParam['orderby']['noOrder']=array(); + if(!isset($TParam['no-select'])) $TParam['no-select'] = 1; + + if(!isset($TParam['liste']))$TParam['liste']=array(); + $TParam['liste'] = array_merge(array( + 'messageNothing'=>"Il n'y a aucun élément à afficher." + ,'picto_precedent'=>'<' + ,'picto_suivant'=>'>' + ,'order_down'=>img_down() + ,'order_up'=>img_up() + ,'noheader'=>0 + ,'useBottomPagination'=>0 + ,'image'=>'' + ,'titre'=>'Liste' + ,'orderDown'=>'' + ,'orderUp'=>'' + ,'id'=>$this->id + ,'picto_search'=>img_picto('Search', 'search.png') + ,'head_search'=>'' + ,'export'=>array() + ,'view_type'=>'' + ),$TParam['liste']); + + if(empty($TParam['limit']))$TParam['limit']=array(); + if(!empty($_REQUEST['TListTBS'][$this->id]['page'])) $TParam['limit']['page'] = $_REQUEST['TListTBS'][$this->id]['page']; + + $TParam['limit']=array_merge(array('page'=>1, 'nbLine'=>$conf->liste_limit, 'global'=>0), $TParam['limit']); + + if(!empty($_REQUEST['TListTBS'][$this->id]['orderBy'])) { + $TParam['orderBy'] = $_REQUEST['TListTBS'][$this->id]['orderBy']; + } + + // print_r($TParam); + } + private function getSearchNull($key, &$TParam) { + return !empty($TParam['search'][$key]['allow_is_null']); + } + private function getSearchKey($key, &$TParam) { + + $TPrefixe=array(); + if(!empty($TParam['search'][$key]['table'])) { + if (!is_array($TParam['search'][$key]['table'])) $TParam['search'][$key]['table'] = array($TParam['search'][$key]['table']); + + foreach ($TParam['search'][$key]['table'] as $prefix_table) { + $TPrefixe[] = '`'.$prefix_table.'`.'; + } + } + + $TKey=array(); + if(!empty($TParam['search'][$key]['field'])) { + if (!is_array($TParam['search'][$key]['field'])) $TParam['search'][$key]['field'] = array($TParam['search'][$key]['field']); + + foreach ($TParam['search'][$key]['field'] as $i => $field) { + $prefixe = !empty($TPrefixe[$i]) ? $TPrefixe[$i] : $TPrefixe[0]; + $TKey[] = $prefixe.'`'. $field .'`'; + } + } else { + $TKey[] =$TPrefixe[0].'`'. strtr($key,';','*').'`'; + } + + return $TKey; + } + private function getSearchValue($value) { + $value = strtr(trim($value),';','*'); + + return $value; + } + + private function dateToSQLDate($date) { + + list($dd,$mm,$aaaa) = explode('/', substr($date,0,10)); + + $value = date('Y-m-d', mktime(0,0,0,$mm,$dd,$aaaa)); + + return $value; + } + + private function addSqlFromTypeDate(&$TSQLMore, &$value, $sKey, $sBindKey) + { + if(is_array($value)) + { + + unset($this->TBind[$sBindKey]); + // Si le type de "recherche" est "calendars" on a 2 champs de transmis, [début et fin] ou [que début] ou [que fin] => un BETWEEN Sql serait utile que dans le 1er cas + // donc l'utilisation des opérateur >= et <= permettent un fonctionnement générique + $TSQLDate=array(); + if(!empty($value['deb'])) + { + $valueDeb = $this->dateToSQLDate($value['deb']); + + if(isset($this->TBind[$sBindKey.'_start'])) // TODO can't use this in query case + { + $this->TBind[$sBindKey.'_start'] = $valueDeb; + } + + $TSQLDate[]=$sKey." >= '".$valueDeb." 00:00:00'" ; + + } + + if(!empty($value['fin'])) + { + $valueFin = $this->dateToSQLDate($value['fin']); + if(isset($this->TBind[$sBindKey.'_end'])) { // TODO can't use this in query case + $this->TBind[$sBindKey.'_end'] = $valueFin; + } + + $TSQLDate[]=$sKey." <= '".$valueFin." 23:59:59'" ; + + } + + if(!empty($TSQLDate)) $TSQLMore[] = implode(' AND ', $TSQLDate); + } + else + { + // Sinon je communique une date directement au format d/m/Y et la méthode du dessous reformat en Y-m-d + $value = $this->dateToSQLDate($value); + if(isset($this->TBind[$sBindKey])) + { + $this->TBind[$sBindKey] = $value; + } + else + { + // Le % en fin de chaine permet de trouver un resultat si le contenu est au format Y-m-d H:i:s et non en Y-m-d + $TSQLMore[]=$sKey." LIKE '".$value."%'" ; + } + } + } + + private function addSqlFromOther(&$TSQLMore, &$value, &$TParam, $sKey, $sBindKey, $key) + { + + $value = $this->getSearchValue($value); + + if(isset($TParam['operator'][$key])) + { + if($TParam['operator'][$key] == '<' || $TParam['operator'][$key] == '>' || $TParam['operator'][$key]=='=') + { + $TSQLMore[] = $sKey . ' ' . $TParam['operator'][$key] . ' "' . $value . '"'; + } + elseif ($TParam['operator'][$key]=='IN') + { + $TSQLMore[] = $sKey . ' ' . $TParam['operator'][$key] . ' (' . $value . ')'; + } + else + { + if(strpos($value,'%')===false) $value = '%'.$value.'%'; + $TSQLMore[]=$sKey." LIKE '".addslashes($value)."'" ; + } + } + else + { + if(strpos($value,'%')===false) $value = '%'.$value.'%'; + $TSQLMore[]=$sKey." LIKE '".addslashes($value)."'" ; + } + + + } + + private function search($sql,&$TParam) { + + if(!empty($_REQUEST['TListTBS'][$this->id]['search'])) { + $sqlGROUPBY=''; + if(strpos($sql,'GROUP BY')!==false) { //TODO regex + list($sql, $sqlGROUPBY) = explode('GROUP BY', $sql); + } + + if(strpos($sql,'WHERE ')===false)$sql.=' WHERE 1 '; //TODO regex + + foreach($_REQUEST['TListTBS'][$this->id]['search'] as $key=>$value) + { + $TsKey = $this->getSearchKey($key, $TParam); + $TsBindKey = $this->getTsBindKey($TsKey); + + //if (!empty($value)) var_dump($TsKey, $TsBindKey, '=================================='); + $TSQLMore = array(); + + $allow_is_null = $this->getSearchNull($key,$TParam); + $search_on_null = false; //TODO useless + + foreach ($TsKey as $i => &$sKey) + { + //if (!empty($value)) var_dump($sKey); + $sBindKey = $TsBindKey[$i]; + + if($allow_is_null && !empty($_REQUEST['TListTBS'][$this->id]['search_on_null'][$key])) + { + $this->TBind[$sBindKey.'_null'] = $sKey.' IS NULL '; + $TSQLMore[] = $sKey.' IS NULL '; + $search_on_null = true; + + if(isset($this->TBind[$sBindKey])) $this->TBind[$sBindKey]= ''; + $value = ''; + } + elseif($allow_is_null) + { + $this->TBind[$sBindKey.'_null'] =0; // $sKey.' IS NOT NULL '; + //$TSQLMore[] = $sKey.' IS NOT NULL '; + } + + if($value!='') { // pas empty car biensûr le statut = 0 existe dans de nombreux cas + + if(isset($TParam['type'][$key]) && ($TParam['type'][$key]==='date' || $TParam['type'][$key]==='datetime')) + { + $this->addSqlFromTypeDate($TSQLMore, $value, $sKey, $sBindKey); + } + else + { + $this->addSqlFromOther($TSQLMore, $value, $TParam, $sKey, $sBindKey, $key); + } + } + } + + if(!isset($this->TBind[$sBindKey]) && !empty($TSQLMore)) + { + $sql.=' AND ( '.implode(' OR ',$TSQLMore).' ) '; + } + + } + + if($sqlGROUPBY!='') $sql.=' GROUP BY '.$sqlGROUPBY; + + } + + + return $sql; + } + + private function getViewType(&$TParam) { + if(!empty($TParam['view_type'])) return $TParam['view_type']; + else if (is_string($TParam['type']))return $TParam['type'] ; + else return 'list'; + } + + public function render(&$db,$sql,$TParam=array(),$TBind=array()) { + $this->typeRender = 'sql'; + // print_r($TParam); + $TEntete=array(); + $TChamps=array(); + + $this->init($TParam); + + if(!empty($TBind)) $this->TBind = $TBind; + + $sql = $this->search($sql,$TParam); + $sql = $this->order_by($sql, $TParam); + + $this->parse_sql($db, $TEntete, $TChamps, $TParam, $sql); + + list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); + + $view_type = $this->getViewType($TParam); + + if($view_type == 'raw') { + return $this->renderRAW($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); + } + else if($view_type == 'chart') { + return $this->renderChart($TEntete, $TChamps,$TTotal, $TParam); + } + else { + return $this->renderList($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); + } + + + } + public function renderDataTableAjax(&$db,$sql,$TParam=array()) { + $this->renderDataTableSQL($db, $sql, $TParam); + } + public function renderDataTableSQL(&$db,$sql,$TParam=array()) { + $this->typeRender = 'dataTableAjax'; + // print_r($TParam); + $TEntete=array(); + $TChamps=array(); + + $this->init($TParam); + + $sql = $this->search($sql,$TParam); + $sql = $this->order_by($sql, $TParam); + + $this->parse_sql($db, $TEntete, $TChamps, $TParam, $sql); + list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); + + return $this->renderList($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); + + } + public function renderXML(&$db,$xmlString, $TParam=array()) { + $this->typeRender = 'xml'; + + $TEntete=array(); + $TChamps=array(); + + $this->init($TParam); + + $this->parse_xml($db, $TEntete, $TChamps, $TParam,$xmlString); + + list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); + + return $this->renderList($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); + + } + private function setSearch(&$TEntete, &$TParam) { + global $langs; + + if(empty($TParam['search'])) return array(); + + $TSearch=array(); + $form=new TFormCore; + $form->strict_string_compare = true; + + $nb_search_in_bar = 0; + + if(!empty($TParam['search'])) { + foreach($TEntete as $key=>$libelle) { // init + if(empty($TSearch[$key]))$TSearch[$key]=''; + } + } + foreach($TParam['search'] as $key=>$param_search) { + + + $value = isset($_REQUEST['TListTBS'][$this->id]['search'][$key]) ? $_REQUEST['TListTBS'][$this->id]['search'][$key] : ''; + + $typeRecherche = (is_array($param_search) && isset($param_search['recherche'])) ? $param_search['recherche'] : $param_search; + + if(is_array($typeRecherche)) { + $typeRecherche = array(''=>' ') + $typeRecherche; + $fsearch=$form->combo('','TListTBS['.$this->id.'][search]['.$key.']', $typeRecherche,$value,0,'',' listviewtbs="combo" init-value="'.$value.'" '); + } + else if($typeRecherche==='calendar') { + $fsearch=$form->calendrier('','TListTBS['.$this->id.'][search]['.$key.']',$value,10,10,' listviewtbs="calendar" '); + } + else if($typeRecherche==='calendars') { + $fsearch=$form->calendrier('','TListTBS['.$this->id.'][search]['.$key.'][deb]',isset($value['deb'])?$value['deb']:'',10,10,' listviewtbs="calendars" ') + .' '.$form->calendrier('','TListTBS['.$this->id.'][search]['.$key.'][fin]',isset($value['fin'])?$value['fin']:'',10,10,' listviewtbs="calendars" '); + } + else if(is_string($typeRecherche)) { + $fsearch=$TParam['search'][$key]; + } + else { + $fsearch=$form->texte('','TListTBS['.$this->id.'][search]['.$key.']',$value,15,255,' listviewtbs="input" '); + } + + if(!empty($param_search['allow_is_null'])) { + $valueNull = isset($_REQUEST['TListTBS'][$this->id]['search_on_null'][$key]) ? 1 : 0; + $fsearch.=' '.$form->checkbox1('', 'TListTBS['.$this->id.'][search_on_null]['.$key.']',1, $valueNull,' onclick=" if($(this).is(\':checked\')){ $(this).prev().val(\'\'); }" ').img_help(1, $langs->trans('SearchOnNUllValue')); + } + + + if(!empty($TEntete[$key]) || $this->getViewType($TParam) == 'chart') { + $TSearch[$key] = $fsearch; + $nb_search_in_bar++; + } + else { + + $libelle = !empty($TParam['title'][$key]) ? $TParam['title'][$key] : $key ; + $TParam['liste']['head_search'].='
'.$libelle.' '.$fsearch.'
'; + } + + } + + $search_button = ' '.$TParam['liste']['picto_search'].''; + + if(!empty($TParam['liste']['head_search'])) { + $TParam['liste']['head_search'].='
'.$langs->trans('Search').' '.$search_button.'
'; + } + + if($nb_search_in_bar>0) { + end($TSearch); + list($key,$v) = each($TSearch); + $TSearch[$key].=$search_button; + } + else{ + $TSearch=array(); + } + + return $TSearch; + } + + /* + * Function analysant et totalisant une colonne + * Supporté : sum, average + */ + private function get_total(&$TChamps, &$TParam) { + $TTotal=$TTotalGroup=array(); + + if(!empty($TParam['math']) && !empty($TChamps[0])) { + + foreach($TChamps[0] as $field=>$value) { + $TTotal[$field]=''; + $TTotalGroup[$field] = ''; + } + + foreach($TParam['math'] as $field=>$typeMath){ + + if(is_array($typeMath)) { + $targetField = $typeMath[1]; + $typeMath = $typeMath[0]; + } + else { + $targetField = $field; + } + + if($typeMath == 'groupsum') { + $TTotalGroup[$field] = array('target'=>$targetField, 'values'=> $this->TTotalTmp['@groupsum'][$targetField]); + + } + else if($typeMath=='average') { + $TTotal[$field]=array_sum($this->TTotalTmp[$targetField]) / count($this->TTotalTmp[$targetField]); + } + elseif($typeMath=='count') { + $TTotal[$field]=count($this->TTotalTmp[$targetField]); + } + else { + $TTotal[$field]=array_sum($this->TTotalTmp[$targetField]); + } + + } + + + } + + return array($TTotal,$TTotalGroup); + } + + private function getJS(&$TParam) { + $javaScript = ''; + + + if($this->typeRender=='dataTable') { + + $javaScript.=' + '; + + $TPagination=array(); + } + elseif($this->typeRender=='dataTableAjax') { + $javaScript.=' + '; + } + + return $javaScript; + } + + private function setExport(&$TParam,$TChamps,$TEntete) { + global $langs; + + $Tab=array(); + if(!empty($TParam['export'])) { + $token = GETPOST('token'); + if(empty($token)) $token = md5($this->id.time().rand(1,9999)); + + $_SESSION['token_list_'.$token] = gzdeflate( serialize( array( + 'title'=>$this->title + ,'sql'=>$this->sql + ,'TBind'=>$this->TBind + ,'TChamps'=>$TChamps + ,'TEntete'=>$TEntete + ) ) ); + + foreach($TParam['export'] as $mode_export) { + + $Tab[] = array( + 'label'=>$langs->trans('Export'.$mode_export) + ,'url'=>dol_buildpath('/abricot/downlist.php',1) + ,'mode'=>$mode_export + ,'token'=>$token + ,'session_name'=>session_name() + ); + + } + + } + + + return $Tab; + } + + private function renderChart(&$TEntete, &$TChamps,&$TTotal, &$TParam) { + + $TData = array(); + $header = ''; + $first = true; + + $TSearch = $this->setSearch($TEntete, $TParam); + $TExport= $this->setExport($TParam, $TChamps, $TEntete); + + if(empty($TParam['xaxis']) && !empty($TEntete)) { + $fieldXaxis = key($TEntete); + } + else { + $fieldXaxis = $TParam['xaxis']; + } + + $TValue=array(); $key = null; + foreach($TEntete as $field=>&$entete) { + if($field!=$fieldXaxis)$TValue[] = addslashes($entete['libelle']); + } + + $header='["'.addslashes( $TEntete[$fieldXaxis]['libelle'] ).'","'.implode('","', $TValue).'"]'; + //var_dump($fieldXaxis, $TChamps); + foreach($TChamps as &$row) { + $TValue=array(); + $key = null; + + foreach($row as $k=>$v) { + + if($k == $fieldXaxis) { + $key = $v; + } + else { + $TValue[] = (float)$v; + } + + } + + if(!is_null($key)) { + if(!isset($TData[$key])) $TData[$key] = $TValue; + else { + foreach($TData[$key] as $k=>$v) { + $TData[$key][$k]+=(float)$TValue[$k]; + } + + } + } + + + } + + $data = $header; + foreach($TData as $key=>$TValue) { + + $data .= ',[ "'.$key.'", '; + foreach($TValue as $v) { + $data.=(float)$v.','; + } + + $data.=' ]'; + } + + $height = empty($TParam['height']) ? 500 : $TParam['height']; + $curveType= empty($TParam['curveType']) ? 'none': $TParam['curveType']; // none or function + $pieHole = empty($TParam['pieHole']) ? 0: $TParam['pieHole']; // none or function + $hAxis = empty($TParam['hAxis']) ? array() : $TParam['hAxis']; // Array of params + $vAxis = empty($TParam['vAxis']) ? array() : $TParam['vAxis']; // Array of params + + // This feature is experimental and may change in future releases + $explorer = empty($TParam['explorer']) ? array() : $TParam['explorer']; // Note: The explorer only works with continuous axes (such as numbers or dates) + + $type = empty($TParam['chartType']) ? 'LineChart' : $TParam['chartType']; + + $html = ''; + + if(!empty($TSearch)) { + + $html.='
'.$langs->trans("Project").''; - $numproject=$formproject->select_projects(-1,GETPOST("fk_projet"),'fk_projet',16,0,1,1); + $numproject=$formproject->select_projects(-1,GETPOST("fk_project"),'fk_project',16,0,1,1); print '
'; if ($action == 'edit') { $formproject=new FormProjets($db); - $numproject=$formproject->select_projects(-1,$object->fk_projet,'fk_projet',16,0,1,1); + $numproject=$formproject->select_projects(-1,$object->fk_project,'fk_project',16,0,1,1); } else { $project=new Project($db); - $project->fetch($object->fk_projet); + $project->fetch($object->fk_project); print $project->getNomUrl(1,'',1);; } print '
'; + $facturestatic->id=$obj->fk_facture_source; + $facturestatic->ref=$obj->ref; + $facturestatic->type=$obj->type; + print preg_replace('/\(EXCESS RECEIVED\)/',$langs->trans("Invoice"),$obj->description).' '.$facturestatic->getNomURl(1); + print ''; diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 34ed1383e14..8cafa015d92 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -579,7 +579,7 @@ if (empty($reshook)) $canconvert=0; if ($object->type == Facture::TYPE_DEPOSIT && $object->paye == 1 && empty($discountcheck->id)) $canconvert=1; // we can convert deposit into discount if deposit is payed completely and not already converted (see real condition into condition used to show button converttoreduc) - if ($object->type == Facture::TYPE_CREDIT_NOTE && $object->paye == 0 && empty($discountcheck->id)) $canconvert=1; // we can convert credit note into discount if credit note is not payed back and not already converted and amount of payment is 0 (see real condition into condition used to show button converttoreduc) + if (($object->type == Facture::TYPE_CREDIT_NOTE || $object->type == Facture::TYPE_STANDARD) && $object->paye == 0 && empty($discountcheck->id)) $canconvert=1; // we can convert credit note into discount if credit note is not payed back and not already converted and amount of payment is 0 (see real condition into condition used to show button converttoreduc) if ($canconvert) { $db->begin(); @@ -596,13 +596,15 @@ if (empty($reshook)) $i ++; } } - +//var_dump($amount_ht, $amount_tva, $amount_ttc);exit; // Insert one discount by VAT rate category $discount = new DiscountAbsolute($db); if ($object->type == Facture::TYPE_CREDIT_NOTE) $discount->description = '(CREDIT_NOTE)'; elseif ($object->type == Facture::TYPE_DEPOSIT) $discount->description = '(DEPOSIT)'; + elseif ($object->type == Facture::TYPE_STANDARD) + $discount->description = '(EXCESS RECEIVED)'; else { setEventMessages($langs->trans('CantConvertToReducAnInvoiceOfThisType'), null, 'errors'); } @@ -611,13 +613,22 @@ if (empty($reshook)) $discount->fk_facture_source = $object->id; $error = 0; - - foreach ($amount_ht as $tva_tx => $xxx) - { - $discount->amount_ht = abs($amount_ht[$tva_tx]); - $discount->amount_tva = abs($amount_tva[$tva_tx]); - $discount->amount_ttc = abs($amount_ttc[$tva_tx]); - $discount->tva_tx = abs($tva_tx); + + if ($object->type == Facture::TYPE_STANDARD) { + + // If we're on a standard invoice, we have to get excess received to create it in TTC wuthout VAT + + $sql = 'SELECT SUM(pf.amount) as total_paiements + FROM llx_c_paiement as c, llx_paiement_facture as pf, llx_paiement as p + WHERE pf.fk_facture = 10 AND p.fk_paiement = c.id AND pf.fk_paiement = p.rowid ORDER BY p.datep, p.tms'; + + $resql = $db->query($sql); + $res = $db->fetch_object($resql); + $total_paiements = $res->total_paiements; + + $discount->amount_ht = $discount->amount_ttc = $total_paiements - $object->total_ttc; + $discount->amount_tva = 0; + $discount->tva_tx = 0; $result = $discount->create($user); if ($result < 0) @@ -625,8 +636,25 @@ if (empty($reshook)) $error++; break; } + + } else { + + foreach ($amount_ht as $tva_tx => $xxx) + { + $discount->amount_ht = abs($amount_ht[$tva_tx]); + $discount->amount_tva = abs($amount_tva[$tva_tx]); + $discount->amount_ttc = abs($amount_ttc[$tva_tx]); + $discount->tva_tx = abs($tva_tx); + + $result = $discount->create($user); + if ($result < 0) + { + $error++; + break; + } + } + } - if (empty($error)) { // Classe facture @@ -2587,7 +2615,10 @@ else if ($id > 0 || ! empty($ref)) // Confirmation de la conversion de l'avoir en reduc if ($action == 'converttoreduc') { - $text = $langs->trans('ConfirmConvertToReduc'); + if($object->type == 0) $type_fac = 'ExcessReceived'; + elseif($object->type == 2) $type_fac = 'CreditNote'; + elseif($object->type == 3) $type_fac = 'Deposit'; + $text = $langs->trans('ConfirmConvertToReduc', strtolower($langs->transnoentities($type_fac))); $formconfirm = $form->formconfirm($_SERVER['PHP_SELF'] . '?facid=' . $object->id, $langs->trans('ConvertToReduc'), $text, 'confirm_converttoreduc', '', "yes", 2); } @@ -2829,7 +2860,10 @@ else if ($id > 0 || ! empty($ref)) $discount = new DiscountAbsolute($db); $result = $discount->fetch(0, $object->id); if ($result > 0) { - $morehtmlref = ' (' . $langs->trans("CreditNoteConvertedIntoDiscount", $discount->getNomUrl(1, 'discount')) . ')'; + if($object->type == 0) $type_fac = 'ExcessReceived'; + elseif($object->type == 2) $type_fac = 'CreditNote'; + elseif($object->type == 3) $type_fac = 'Deposit'; + $morehtmlref = ' (' . $langs->trans("CreditNoteConvertedIntoDiscount", strtolower($langs->transnoentities($type_fac)), $discount->getNomUrl(1, 'discount')) . ')'; } if ($result < 0) { dol_print_error('', $discount->error); @@ -3205,6 +3239,7 @@ else if ($id > 0 || ! empty($ref)) print $langs->trans('RemainderToPay'); else print $langs->trans('ExcessReceived'); + print ' :' . price($resteapayeraffiche) . ' 
'; + $facturestatic->id=$obj->fk_facture_source; + $facturestatic->ref=$obj->ref; + $facturestatic->type=$obj->type; + print preg_replace('/\(EXCESS RECEIVED\)/',$langs->trans("Invoice"),$obj->description).' '.$facturestatic->getNomURl(1); + print ''; From 91be05932e4ef150e2d525c598fb503698c019fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Sun, 27 Nov 2016 21:50:27 +0100 Subject: [PATCH 0032/1163] Added missing modAttributes file --- htdocs/core/modules/modAttributes.class.php | 137 ++++++++++++++++++++ 1 file changed, 137 insertions(+) create mode 100644 htdocs/core/modules/modAttributes.class.php diff --git a/htdocs/core/modules/modAttributes.class.php b/htdocs/core/modules/modAttributes.class.php new file mode 100644 index 00000000000..a21ae756bf2 --- /dev/null +++ b/htdocs/core/modules/modAttributes.class.php @@ -0,0 +1,137 @@ + + * Copyright (C) 2004-2012 Laurent Destailleur + * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2016 Marcos García + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \defgroup produit Module product attributes + * \brief Module to manage product combinations based on product attributes + * \file htdocs/core/modules/modAttributes.class.php + * \ingroup produit + * \brief File to describe module to manage catalog of predefined products + */ +include_once DOL_DOCUMENT_ROOT .'/core/modules/DolibarrModules.class.php'; + + +/** + * Description and activation class for module Product attributes + */ +class modAttributes extends DolibarrModules +{ + /** + * Constructor. Define names, constants, directories, boxes, permissions + * + * @param DoliDB $db Database handler + */ + public function __construct($db) + { + global $langs,$conf; + + $this->db = $db; + + // Id for module (must be unique). + // Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id). + $this->numero = 610; + // Key text used to identify module (for permissions, menus, etc...) + $this->rights_class = 'attributes'; + + // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' + // It is used to group modules in module setup page + $this->family = "products"; + // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) + $this->name = preg_replace('/^mod/i','',get_class($this)); + // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) + $this->description = 'Allows creating product combinations based on product attributes'; + // Possible values for version are: 'development', 'experimental', 'dolibarr' or version + $this->version = 'dolibarr'; + // Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase) + $this->const_name = 'MAIN_MODULE_'.strtoupper($this->name); + // Where to store the module in setup page (0=common,1=interface,2=others,3=very specific) + $this->special = 0; + // Name of image file used for this module. + // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' + // If file is in module/img directory under name object_pictovalue.png, use this->picto='pictovalue@module' + $this->picto='product'; + + // Defined all module parts (triggers, login, substitutions, menus, css, etc...) + $this->module_parts = array(); + + // Data directories to create when module is enabled. + // Example: this->dirs = array("/mymodule/temp"); + $this->dirs = array(); + + // Config pages. Put here list of php page, stored into mymodule/admin directory, to use to setup module. + $this->config_page_url = array( + 'admin.php@attributes' + ); + + // Dependencies + $this->hidden = false; // A condition to hide module + $this->depends = array( + 'modProduct' + ); // List of modules id that must be enabled if this module is enabled + $this->requiredby = array(); // List of modules id to disable if this one is disabled + $this->conflictwith = array(); // List of modules id this module is in conflict with + $this->phpmin = array(5,0); // Minimum version of PHP required by module + $this->need_dolibarr_version = array(3,0); // Minimum version of Dolibarr required by module + $this->langfiles = array("products"); + + // Constants + $this->const = array(); + + // Array to add new pages in new tabs + $this->tabs = array( +// 'product:+combinations:Combinaciones:products:1:/attributes/combinations.php?id=__ID__' + ); + + // Dictionaries + if (! isset($conf->mymodule->enabled)) + { + $conf->mymodule=new stdClass(); + $conf->mymodule->enabled=0; + } + $this->dictionaries=array(); + + // Boxes + // Add here list of php file(s) stored in core/boxes that contains class to show a box. + $this->boxes = array(); // List of boxes + + // Permissions + $this->rights = array(); // Permission array used by this module + + // Main menu entries + $this->menu = array( + array( + 'fk_menu' => 'fk_mainmenu=products,fk_leftmenu=product', + 'type' => 'left', + 'titre' => $langs->trans('Attributes'), + 'mainmenu' => 'products', + 'leftmenu' => 'product', + 'url' => '/attributes/list.php', + 'langs' => 'products', + 'position' => 100, + 'enabled' => '$conf->product->enabled', + 'perms' => 1, + 'target' => '', + 'user' => 0 + ) + ); // List of menus to add + } +} + From 3f6f1ac86fb91b18995becbd58850c9759afac81 Mon Sep 17 00:00:00 2001 From: gauthier Date: Mon, 28 Nov 2016 17:12:17 +0100 Subject: [PATCH 0033/1163] fix : where fk_facture = object id --- htdocs/compta/facture.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 8ef7f39e0b8..bc36f16e9e4 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -620,7 +620,7 @@ if (empty($reshook)) $sql = 'SELECT SUM(pf.amount) as total_paiements FROM llx_c_paiement as c, llx_paiement_facture as pf, llx_paiement as p - WHERE pf.fk_facture = 10 AND p.fk_paiement = c.id AND pf.fk_paiement = p.rowid ORDER BY p.datep, p.tms'; + WHERE pf.fk_facture = '.$object->id.' AND p.fk_paiement = c.id AND pf.fk_paiement = p.rowid ORDER BY p.datep, p.tms'; $resql = $db->query($sql); $res = $db->fetch_object($resql); From d8aa572ad79fab306964a1a7e5e615368225cd84 Mon Sep 17 00:00:00 2001 From: gauthier Date: Mon, 28 Nov 2016 17:38:20 +0100 Subject: [PATCH 0034/1163] FIX : fetch discount desappeared in develop... --- htdocs/compta/facture.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 7e1baf5395f..a846fb15e00 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -3870,7 +3870,10 @@ else if ($id > 0 || ! empty($ref)) } } } - + + $discount = new DiscountAbsolute($db); + $result = $discount->fetch(0, $object->id); + // Reopen a standard paid invoice if ((($object->type == Facture::TYPE_STANDARD || $object->type == Facture::TYPE_REPLACEMENT) || ($object->type == Facture::TYPE_CREDIT_NOTE && empty($discount->id)) From c1652169f2f0554e6d4a9234af9f15e193a357ae Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Wed, 30 Nov 2016 16:09:59 +0100 Subject: [PATCH 0035/1163] NEW : Add in export thirdparty for user limit on view thirpdarty to sales team also to subsidiaries --- htdocs/core/modules/modSociete.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index 1943e3f7b20..6e55077b19d 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -281,7 +281,7 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_payment_term as payterm ON s.cond_reglement = payterm.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as paymode ON s.mode_reglement = paymode.id'; $this->export_sql_end[$r] .=' WHERE s.entity IN ('.getEntity('societe', 1).')'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND sc.fk_user = '.$user->id; + if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' OR sc.fk_user IN (SELECT rowid FROM '.MAIN_DB_PREFIX.'user where fk_user= '.$user->id.'))'; // Export list of contacts and attributes $r++; @@ -311,7 +311,7 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as co ON c.fk_pays = co.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'socpeople_extrafields as extra ON extra.fk_object = c.rowid'; $this->export_sql_end[$r] .=' WHERE c.entity IN ('.getEntity("societe", 1).')'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND sc.fk_user = '.$user->id; + if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' OR sc.fk_user IN (SELECT rowid FROM '.MAIN_DB_PREFIX.'user where fk_user= '.$user->id.'))'; // Imports From 7ab7149e64910ea7644c615b2d82e3420d8b5112 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Mon, 5 Dec 2016 11:03:12 +0100 Subject: [PATCH 0036/1163] just little indenting --- htdocs/core/lib/pdf.lib.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index 9d6201998db..23c2f5e9bf4 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -1234,11 +1234,14 @@ function pdf_getlinedesc($object,$i,$outputlangs,$hideref=0,$hidedesc=0,$issuppl { if ($issupplierline) { - //$ref_prodserv = $prodser->ref.($ref_supplier ? ' ('.$outputlangs->transnoentitiesnoconv("SupplierRef").' '.$ref_supplier.')' : ''); // Show local ref and supplier ref - if (! empty($conf->global->PDF_HIDE_PRODUCT_REF_IN_SUPPLIER_LINES)) $ref_prodserv =$ref_supplier; - else $ref_prodserv = $prodser->ref.($ref_supplier ? ' ('.$outputlangs->transnoentitiesnoconv("SupplierRef").' '.$ref_supplier.')' : ''); // Show local ref and supplier ref + //$ref_prodserv = $prodser->ref.($ref_supplier ? ' ('.$outputlangs->transnoentitiesnoconv("SupplierRef").' '.$ref_supplier.')' : ''); // Show local ref and supplier ref + if (! empty($conf->global->PDF_HIDE_PRODUCT_REF_IN_SUPPLIER_LINES)) + $ref_prodserv =$ref_supplier; + else + $ref_prodserv = $prodser->ref.($ref_supplier ? ' ('.$outputlangs->transnoentitiesnoconv("SupplierRef").' '.$ref_supplier.')' : ''); // Show local ref and supplier ref } - else $ref_prodserv = $prodser->ref; // Show local ref only + else + $ref_prodserv = $prodser->ref; // Show local ref only if (! empty($libelleproduitservice)) $ref_prodserv .= " - "; } From d86503cb66ab7920ee54d732ae36e3bd970a56d5 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Mon, 5 Dec 2016 11:09:47 +0100 Subject: [PATCH 0037/1163] additionnal feature on supplier ref display we have like this 3 mode of display supplier ref --- htdocs/core/lib/pdf.lib.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index 23c2f5e9bf4..ac08f4c25a4 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -1234,11 +1234,12 @@ function pdf_getlinedesc($object,$i,$outputlangs,$hideref=0,$hidedesc=0,$issuppl { if ($issupplierline) { - //$ref_prodserv = $prodser->ref.($ref_supplier ? ' ('.$outputlangs->transnoentitiesnoconv("SupplierRef").' '.$ref_supplier.')' : ''); // Show local ref and supplier ref - if (! empty($conf->global->PDF_HIDE_PRODUCT_REF_IN_SUPPLIER_LINES)) - $ref_prodserv =$ref_supplier; + if ($conf->global->PDF_HIDE_PRODUCT_REF_IN_SUPPLIER_LINES == 1) + $ref_prodserv = $ref_supplier; + elseif ($conf->global->PDF_HIDE_PRODUCT_REF_IN_SUPPLIER_LINES == 2) + $ref_prodserv = $ref_supplier. ' ('.$outputlangs->transnoentitiesnoconv("InternalRef").' '.$prodser->ref.')'; else - $ref_prodserv = $prodser->ref.($ref_supplier ? ' ('.$outputlangs->transnoentitiesnoconv("SupplierRef").' '.$ref_supplier.')' : ''); // Show local ref and supplier ref + $ref_prodserv = $prodser->ref.' ('.$outputlangs->transnoentitiesnoconv("SupplierRef").' '.$ref_supplier.')'; } else $ref_prodserv = $prodser->ref; // Show local ref only From 3396dfc7f60f31dc3660d7238638be043509354f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 8 Dec 2016 21:58:52 +0100 Subject: [PATCH 0038/1163] NEW Index upload files into database. --- dev/skeletons/build_class_from_table.php | 4 +- dev/skeletons/skeleton_class.class.php | 8 +- htdocs/core/lib/files.lib.php | 55 +- htdocs/ecm/class/ecmdirectory.class.php | 3 +- htdocs/ecm/class/ecmfiles.class.php | 764 ++++++++++++++++++ .../install/mysql/migration/5.0.0-6.0.0.sql | 29 + htdocs/install/mysql/tables/llx_ecm_files.sql | 3 +- 7 files changed, 854 insertions(+), 12 deletions(-) create mode 100644 htdocs/ecm/class/ecmfiles.class.php create mode 100644 htdocs/install/mysql/migration/5.0.0-6.0.0.sql diff --git a/dev/skeletons/build_class_from_table.php b/dev/skeletons/build_class_from_table.php index 62ad1188759..d9e30b23501 100755 --- a/dev/skeletons/build_class_from_table.php +++ b/dev/skeletons/build_class_from_table.php @@ -303,7 +303,7 @@ foreach($property as $key => $prop) $varprop.="\$this->db->escape(\$this->".$prop['field'].")"; $varprop.=".\"'\")"; } - elseif ($prop['field']=='fk_user_mod' || $prop['field']=='fk_user_author') + elseif ($prop['field']=='fk_user_mod' || $prop['field']=='fk_user_m' || $prop['field']=='fk_user_author') { $varprop.="'.\$user->id"; } @@ -367,7 +367,7 @@ foreach($property as $key => $prop) $varprop.=')."\'" : \'null\')'; } - elseif ($prop['field']=='fk_user_mod') { + elseif ($prop['field']=='fk_user_mod' || $prop['field']=='fk_user_m') { $varprop.="'.\$user->id"; } else diff --git a/dev/skeletons/skeleton_class.class.php b/dev/skeletons/skeleton_class.class.php index 4f725fa2dbe..1c9b8cb52bf 100644 --- a/dev/skeletons/skeleton_class.class.php +++ b/dev/skeletons/skeleton_class.class.php @@ -188,11 +188,13 @@ class Skeleton_Class extends CommonObject // Retrieve all extrafields for invoice // fetch optionals attributes and labels + /* require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; $extrafields=new ExtraFields($this->db); $extralabels=$extrafields->fetch_name_optionals_label($this->table_element,true); $this->fetch_optionals($this->id,$extralabels); - + */ + // $this->fetch_lines(); $this->db->free($resql); @@ -254,7 +256,7 @@ class Skeleton_Class extends CommonObject $sql .= ' ' . $this->db->plimit($limit + 1, $offset); } - $this->lines = array(); + //$this->lines = array(); $resql = $this->db->query($sql); if ($resql) { @@ -267,7 +269,7 @@ class Skeleton_Class extends CommonObject $line->prop1 = $obj->field1; $line->prop2 = $obj->field2; - $this->lines[$line->id] = $line; + //$this->lines[$line->id] = $line; //... } $this->db->free($resql); diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index f67f1a0daf4..68e3866f92e 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -743,7 +743,30 @@ function dol_delete_file($file,$disableglob=0,$nophperrors=0,$nohook=0,$object=n { if ($nophperrors) $ok=@unlink($filename); else $ok=unlink($filename); - if ($ok) dol_syslog("Removed file ".$filename, LOG_DEBUG); + if ($ok) + { + dol_syslog("Removed file ".$filename, LOG_DEBUG); + + // Delete entry into ecm database + $rel_filetodelete = preg_replace('/^'.preg_quote(DOL_DATA_ROOT,'/').'/', '', $filename); + if (! preg_match('/\/temp\//', $rel_filetodelete)) // If not a tmp file + { + $rel_filetodelete = preg_replace('/^\//', '', $rel_filetodelete); + + dol_syslog("Try to remove also entries in database for full relative path = ".$rel_filetodelete, LOG_DEBUG); + include DOL_DOCUMENT_ROOT.'/ecm/class/ecmfiles.class.php'; + $ecmfile=new EcmFiles($db); + $result = $ecmfile->fetch(0, '', $rel_filetodelete); + if ($result >= 0) + { + $result = $ecmfile->delete($user); + } + if ($result < 0) + { + setEventMessages($ecmfile->error, $ecmfile->errors, 'warnings'); + } + } + } else dol_syslog("Failed to remove file ".$filename, LOG_WARNING); // TODO Failure to remove can be because file was already removed or because of permission // If error because of not exists, we must can return true but we should return false if this is a permission problem @@ -1000,7 +1023,7 @@ function dol_init_file_process($pathtoscan='', $trackid='') * @param int $donotupdatesession 1=Do no edit _SESSION variable * @param string $varfiles _FILES var name * @param string $savingdocmask Mask to use to define output filename. For example 'XXXXX-__YYYYMMDD__-__file__' - * @param string $link Link to add + * @param string $link Link to add (to add a link instead of a file) * @param string $trackid Track id (used to prefix name of session vars to avoid conflict) * @return void */ @@ -1043,7 +1066,7 @@ function dol_add_file_process($upload_dir, $allowoverwrite=0, $donotupdatesessio $destpath = $info['dirname'].'/'.$info['filename'].'.'.strtolower($info['extension']); $info = pathinfo($destfile); $destfile = $info['filename'].'.'.strtolower($info['extension']); - + $resupload = dol_move_uploaded_file($TFile['tmp_name'][$i], $destpath, $allowoverwrite, 0, $TFile['error'][$i], 0, $varfiles); if (is_numeric($resupload) && $resupload > 0) { @@ -1057,6 +1080,30 @@ function dol_add_file_process($upload_dir, $allowoverwrite=0, $donotupdatesessio $formmail->trackid = $trackid; $formmail->add_attached_files($destpath, $destfile, $TFile['type'][$i]); } + else // Update table of files + { + $rel_dir = preg_replace('/^'.preg_quote(DOL_DATA_ROOT,'/').'/', '', $upload_dir); + if (! preg_match('/\/temp\//', $rel_dir)) // If not a tmp file + { + $rel_dir = preg_replace('/\/$/', '', $rel_dir); + $rel_dir = preg_replace('/^\//', '', $rel_dir); + + include DOL_DOCUMENT_ROOT.'/ecm/class/ecmfiles.class.php'; + $ecmfile=new EcmFiles($db); + $ecmfile->label = md5_file($destpath); + $ecmfile->filename = $destfile; + $ecmfile->filepath = $rel_dir; + $ecmfile->fullpath_orig = $TFile['name'][$i]; + $ecmfile->gen_or_uploaded = 'uploaded'; + $ecmfile->description = ''; // indexed content + $ecmfile->keyword = ''; // keyword content + $result = $ecmfile->create($user); + if ($result < 0) + { + setEventMessages($ecmfile->error, $ecmfile->errors, 'warnings'); + } + } + } if (image_format_supported($destpath) == 1) { // Create thumbs @@ -1145,7 +1192,7 @@ function dol_remove_file_process($filenb,$donotupdatesession=0,$donotdeletefile= { $pathtodelete=$listofpaths[$keytodelete]; $filetodelete=$listofnames[$keytodelete]; - if (empty($donotdeletefile)) $result = dol_delete_file($pathtodelete,1); + if (empty($donotdeletefile)) $result = dol_delete_file($pathtodelete,1); // The delete of ecm database is inside the function dol_delete_file else $result=0; if ($result >= 0) { diff --git a/htdocs/ecm/class/ecmdirectory.class.php b/htdocs/ecm/class/ecmdirectory.class.php index c16cfe62e7c..1644b58075e 100644 --- a/htdocs/ecm/class/ecmdirectory.class.php +++ b/htdocs/ecm/class/ecmdirectory.class.php @@ -23,8 +23,7 @@ */ /** - * \class EcmDirectory - * \brief Class to manage ECM directories + * Class to manage ECM directories */ class EcmDirectory // extends CommonObject { diff --git a/htdocs/ecm/class/ecmfiles.class.php b/htdocs/ecm/class/ecmfiles.class.php new file mode 100644 index 00000000000..0133bff2580 --- /dev/null +++ b/htdocs/ecm/class/ecmfiles.class.php @@ -0,0 +1,764 @@ + + * Copyright (C) 2014-2016 Juanjo Menent + * Copyright (C) 2015 Florian Henry + * Copyright (C) 2015 Raphaël Doursenaud + * Copyright (C) ---Put here your own copyright and developer email--- + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \file ecm/ecmfiles.class.php + * \ingroup ecm + * \brief Class to manage ECM Files (Create/Read/Update/Delete) + */ + +// Put here all includes required by your class file +require_once DOL_DOCUMENT_ROOT . '/core/class/commonobject.class.php'; +//require_once DOL_DOCUMENT_ROOT . '/societe/class/societe.class.php'; +//require_once DOL_DOCUMENT_ROOT . '/product/class/product.class.php'; + +/** + * Class to manage ECM files + */ +class EcmFiles //extends CommonObject +{ + /** + * @var string Id to identify managed objects + */ + public $element = 'ecmfiles'; + /** + * @var string Name of table without prefix where object is stored + */ + public $table_element = 'ecm_files'; + + /** + */ + public $label; + public $entity; + public $filename; + public $filepath; + public $fullpath_orig; + public $description; + public $keywords; + public $cover; + public $position; + public $gen_or_uploaded; + public $extraparams; + public $date_c = ''; + public $date_m = ''; + public $fk_user_c; + public $fk_user_m; + public $acl; + + /** + */ + + + /** + * Constructor + * + * @param DoliDb $db Database handler + */ + public function __construct(DoliDB $db) + { + $this->db = $db; + } + + /** + * Create object into database + * + * @param User $user User that creates + * @param bool $notrigger false=launch triggers after, true=disable triggers + * + * @return int <0 if KO, Id of created object if OK + */ + public function create(User $user, $notrigger = false) + { + global $conf; + + dol_syslog(__METHOD__, LOG_DEBUG); + + $error = 0; + + // Clean parameters + + if (isset($this->label)) { + $this->label = trim($this->label); + } + if (isset($this->entity)) { + $this->entity = trim($this->entity); + } + if (isset($this->filename)) { + $this->filename = trim($this->filename); + } + if (isset($this->filepath)) { + $this->filepath = trim($this->filepath); + } + if (isset($this->fullpath_orig)) { + $this->fullpath_orig = trim($this->fullpath_orig); + } + if (isset($this->description)) { + $this->description = trim($this->description); + } + if (isset($this->keywords)) { + $this->keywords = trim($this->keywords); + } + if (isset($this->cover)) { + $this->cover = trim($this->cover); + } + if (isset($this->gen_or_uploaded)) { + $this->gen_or_uploaded = trim($this->gen_or_uploaded); + } + if (isset($this->extraparams)) { + $this->extraparams = trim($this->extraparams); + } + if (isset($this->fk_user_c)) { + $this->fk_user_c = trim($this->fk_user_c); + } + if (isset($this->fk_user_m)) { + $this->fk_user_m = trim($this->fk_user_m); + } + if (isset($this->acl)) { + $this->acl = trim($this->acl); + } + if (empty($this->date_c)) $this->date_c = dol_now(); + + + // Check parameters + // Put here code to add control on parameters values + + // Insert request + $sql = 'INSERT INTO ' . MAIN_DB_PREFIX . $this->table_element . '('; + $sql.= 'label,'; + $sql.= 'entity,'; + $sql.= 'filename,'; + $sql.= 'filepath,'; + $sql.= 'fullpath_orig,'; + $sql.= 'description,'; + $sql.= 'keywords,'; + $sql.= 'cover,'; + $sql.= 'position,'; + $sql.= 'gen_or_uploaded,'; + $sql.= 'extraparams,'; + $sql.= 'date_c,'; + $sql.= 'date_m,'; + $sql.= 'fk_user_c,'; + $sql.= 'fk_user_m,'; + $sql.= 'acl'; + $sql .= ') VALUES ('; + $sql .= ' '.(! isset($this->label)?'NULL':"'".$this->db->escape($this->label)."'").','; + $sql .= ' '.(! isset($this->entity)?$conf->entity:$this->entity).','; + $sql .= ' '.(! isset($this->filename)?'NULL':"'".$this->db->escape($this->filename)."'").','; + $sql .= ' '.(! isset($this->filepath)?'NULL':"'".$this->db->escape($this->filepath)."'").','; + $sql .= ' '.(! isset($this->fullpath_orig)?'NULL':"'".$this->db->escape($this->fullpath_orig)."'").','; + $sql .= ' '.(! isset($this->description)?'NULL':"'".$this->db->escape($this->description)."'").','; + $sql .= ' '.(! isset($this->keywords)?'NULL':"'".$this->db->escape($this->keywords)."'").','; + $sql .= ' '.(! isset($this->cover)?'NULL':"'".$this->db->escape($this->cover)."'").','; + $sql .= ' '.(! isset($this->position)?'0':$this->db->escape($this->position)).','; + $sql .= ' '.(! isset($this->gen_or_uploaded)?'NULL':"'".$this->db->escape($this->gen_or_uploaded)."'").','; + $sql .= ' '.(! isset($this->extraparams)?'NULL':"'".$this->db->escape($this->extraparams)."'").','; + $sql .= ' '."'".$this->db->idate($this->date_c)."'".','; + $sql .= ' '.(! isset($this->date_m) || dol_strlen($this->date_m)==0?'NULL':"'".$this->db->idate($this->date_m)."'").','; + $sql .= ' '.(! isset($this->fk_user_c)?$user->id:$this->fk_user_c).','; + $sql .= ' '.(! isset($this->fk_user_m)?'NULL':$this->fk_user_m).','; + $sql .= ' '.(! isset($this->acl)?'NULL':"'".$this->db->escape($this->acl)."'"); + $sql .= ')'; + + $this->db->begin(); + + $resql = $this->db->query($sql); + if (!$resql) { + $error ++; + $this->errors[] = 'Error ' . $this->db->lasterror(); + dol_syslog(__METHOD__ . ' ' . implode(',', $this->errors), LOG_ERR); + } + + if (!$error) { + $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX . $this->table_element); + + if (!$notrigger) { + // Uncomment this and change MYOBJECT to your own tag if you + // want this action to call a trigger. + + //// Call triggers + //$result=$this->call_trigger('MYOBJECT_CREATE',$user); + //if ($result < 0) $error++; + //// End call triggers + } + } + + // Commit or rollback + if ($error) { + $this->db->rollback(); + + return - 1 * $error; + } else { + $this->db->commit(); + + return $this->id; + } + } + + /** + * Load object in memory from the database + * + * @param int $id Id object + * @param string $ref Ref = md5 = label + * @param string $fullpath Full path of file (relative path to document directory) + * @return int <0 if KO, 0 if not found, >0 if OK + */ + public function fetch($id, $ref = null, $fullpath = '') + { + dol_syslog(__METHOD__, LOG_DEBUG); + + $sql = 'SELECT'; + $sql .= ' t.rowid,'; + $sql .= " t.label,"; + $sql .= " t.entity,"; + $sql .= " t.filename,"; + $sql .= " t.filepath,"; + $sql .= " t.fullpath_orig,"; + $sql .= " t.description,"; + $sql .= " t.keywords,"; + $sql .= " t.cover,"; + $sql .= " t.position,"; + $sql .= " t.gen_or_uploaded,"; + $sql .= " t.extraparams,"; + $sql .= " t.date_c,"; + $sql .= " t.date_m,"; + $sql .= " t.fk_user_c,"; + $sql .= " t.fk_user_m,"; + $sql .= " t.acl"; + $sql .= ' FROM ' . MAIN_DB_PREFIX . $this->table_element . ' as t'; + $sql.= ' WHERE 1 = 1'; + if (! empty($conf->multicompany->enabled)) { + $sql .= " AND entity IN (" . getEntity("ecmfiles", 1) . ")"; + } + if ($fullpath) { + $sql .= " AND t.filepath = '" . $this->db->escape(dirname($fullpath)) . "' AND t.filename = '".$this->db->escape(basename($fullpath))."'"; + } + elseif (null !== $ref) { + $sql .= " AND t.label = '".$this->db->escape($ref)."'"; + } else { + $sql .= ' AND t.rowid = ' . $id; + } + + $resql = $this->db->query($sql); + if ($resql) { + $numrows = $this->db->num_rows($resql); + if ($numrows) { + $obj = $this->db->fetch_object($resql); + + $this->id = $obj->rowid; + + $this->label = $obj->label; + $this->entity = $obj->entity; + $this->filename = $obj->filename; + $this->filepath = $obj->filepath; + $this->fullpath_orig = $obj->fullpath_orig; + $this->description = $obj->description; + $this->keywords = $obj->keywords; + $this->cover = $obj->cover; + $this->position = $obj->position; + $this->gen_or_uploaded = $obj->gen_or_uploaded; + $this->extraparams = $obj->extraparams; + $this->date_c = $this->db->jdate($obj->date_c); + $this->date_m = $this->db->jdate($obj->date_m); + $this->fk_user_c = $obj->fk_user_c; + $this->fk_user_m = $obj->fk_user_m; + $this->acl = $obj->acl; + } + + // Retrieve all extrafields for invoice + // fetch optionals attributes and labels + /* + require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php'; + $extrafields=new ExtraFields($this->db); + $extralabels=$extrafields->fetch_name_optionals_label($this->table_element,true); + $this->fetch_optionals($this->id,$extralabels); + */ + // $this->fetch_lines(); + + $this->db->free($resql); + + if ($numrows) { + return 1; + } else { + return 0; + } + } else { + $this->errors[] = 'Error ' . $this->db->lasterror(); + dol_syslog(__METHOD__ . ' ' . implode(',', $this->errors), LOG_ERR); + + return - 1; + } + } + + /** + * Load object in memory from the database + * + * @param string $sortorder Sort Order + * @param string $sortfield Sort field + * @param int $limit offset limit + * @param int $offset offset limit + * @param array $filter filter array + * @param string $filtermode filter mode (AND or OR) + * + * @return int <0 if KO, >0 if OK + */ + public function fetchAll($sortorder='', $sortfield='', $limit=0, $offset=0, array $filter = array(), $filtermode='AND') + { + dol_syslog(__METHOD__, LOG_DEBUG); + + $sql = 'SELECT'; + $sql .= ' t.rowid,'; + $sql .= " t.label,"; + $sql .= " t.entity,"; + $sql .= " t.filename,"; + $sql .= " t.filepath,"; + $sql .= " t.fullpath_orig,"; + $sql .= " t.description,"; + $sql .= " t.keywords,"; + $sql .= " t.cover,"; + $sql .= " t.position,"; + $sql .= " t.gen_or_uploaded,"; + $sql .= " t.extraparams,"; + $sql .= " t.date_c,"; + $sql .= " t.date_m,"; + $sql .= " t.fk_user_c,"; + $sql .= " t.fk_user_m,"; + $sql .= " t.acl"; + $sql .= ' FROM ' . MAIN_DB_PREFIX . $this->table_element. ' as t'; + + // Manage filter + $sqlwhere = array(); + if (count($filter) > 0) { + foreach ($filter as $key => $value) { + $sqlwhere [] = $key . ' LIKE \'%' . $this->db->escape($value) . '%\''; + } + } + $sql.= ' WHERE 1 = 1'; + if (! empty($conf->multicompany->enabled)) { + $sql .= " AND entity IN (" . getEntity("ecmfiles", 1) . ")"; + } + if (count($sqlwhere) > 0) { + $sql .= ' AND ' . implode(' '.$filtermode.' ', $sqlwhere); + } + if (!empty($sortfield)) { + $sql .= $this->db->order($sortfield,$sortorder); + } + if (!empty($limit)) { + $sql .= ' ' . $this->db->plimit($limit + 1, $offset); + } + + $this->lines = array(); + + $resql = $this->db->query($sql); + if ($resql) { + $num = $this->db->num_rows($resql); + + while ($obj = $this->db->fetch_object($resql)) { + $line = new EcmfilesLine(); + + $line->id = $obj->rowid; + + $line->label = $obj->label; + $line->entity = $obj->entity; + $line->filename = $obj->filename; + $line->filepath = $obj->filepath; + $line->fullpath_orig = $obj->fullpath_orig; + $line->description = $obj->description; + $line->keywords = $obj->keywords; + $line->cover = $obj->cover; + $line->position = $obj->position; + $line->gen_or_uploaded = $obj->gen_or_uploaded; + $line->extraparams = $obj->extraparams; + $line->date_c = $this->db->jdate($obj->date_c); + $line->date_m = $this->db->jdate($obj->date_m); + $line->fk_user_c = $obj->fk_user_c; + $line->fk_user_m = $obj->fk_user_m; + $line->acl = $obj->acl; + } + $this->db->free($resql); + + return $num; + } else { + $this->errors[] = 'Error ' . $this->db->lasterror(); + dol_syslog(__METHOD__ . ' ' . implode(',', $this->errors), LOG_ERR); + + return - 1; + } + } + + /** + * Update object into database + * + * @param User $user User that modifies + * @param bool $notrigger false=launch triggers after, true=disable triggers + * + * @return int <0 if KO, >0 if OK + */ + public function update(User $user, $notrigger = false) + { + $error = 0; + + dol_syslog(__METHOD__, LOG_DEBUG); + + // Clean parameters + + if (isset($this->label)) { + $this->label = trim($this->label); + } + if (isset($this->entity)) { + $this->entity = trim($this->entity); + } + if (isset($this->filename)) { + $this->filename = trim($this->filename); + } + if (isset($this->filepath)) { + $this->filepath = trim($this->filepath); + } + if (isset($this->fullpath_orig)) { + $this->fullpath_orig = trim($this->fullpath_orig); + } + if (isset($this->description)) { + $this->description = trim($this->description); + } + if (isset($this->keywords)) { + $this->keywords = trim($this->keywords); + } + if (isset($this->cover)) { + $this->cover = trim($this->cover); + } + if (isset($this->gen_or_uploaded)) { + $this->gen_or_uploaded = trim($this->gen_or_uploaded); + } + if (isset($this->extraparams)) { + $this->extraparams = trim($this->extraparams); + } + if (isset($this->fk_user_c)) { + $this->fk_user_c = trim($this->fk_user_c); + } + if (isset($this->fk_user_m)) { + $this->fk_user_m = trim($this->fk_user_m); + } + if (isset($this->acl)) { + $this->acl = trim($this->acl); + } + + + + // Check parameters + // Put here code to add a control on parameters values + + // Update request + $sql = 'UPDATE ' . MAIN_DB_PREFIX . $this->table_element . ' SET'; + $sql .= ' label = '.(isset($this->label)?"'".$this->db->escape($this->label)."'":"null").','; + $sql .= ' entity = '.(isset($this->entity)?$this->entity:$conf->entity).','; + $sql .= ' filename = '.(isset($this->filename)?"'".$this->db->escape($this->filename)."'":"null").','; + $sql .= ' filepath = '.(isset($this->filepath)?"'".$this->db->escape($this->filepath)."'":"null").','; + $sql .= ' fullpath_orig = '.(isset($this->fullpath_orig)?"'".$this->db->escape($this->fullpath_orig)."'":"null").','; + $sql .= ' description = '.(isset($this->description)?"'".$this->db->escape($this->description)."'":"null").','; + $sql .= ' keywords = '.(isset($this->keywords)?"'".$this->db->escape($this->keywords)."'":"null").','; + $sql .= ' cover = '.(isset($this->cover)?"'".$this->db->escape($this->cover)."'":"null").','; + $sql .= ' position = '.(isset($this->position)?$this->db->escape($this->position):"0").','; + $sql .= ' gen_or_uploaded = '.(isset($this->gen_or_uploaded)?"'".$this->db->escape($this->gen_or_uploaded)."'":"null").','; + $sql .= ' extraparams = '.(isset($this->extraparams)?"'".$this->db->escape($this->extraparams)."'":"null").','; + $sql .= ' date_c = '.(! isset($this->date_c) || dol_strlen($this->date_c) != 0 ? "'".$this->db->idate($this->date_c)."'" : 'null').','; + $sql .= ' date_m = '.(! isset($this->date_m) || dol_strlen($this->date_m) != 0 ? "'".$this->db->idate($this->date_m)."'" : 'null').','; + $sql .= ' fk_user_c = '.(isset($this->fk_user_c)?$this->fk_user_c:"null").','; + $sql .= ' fk_user_m = '.(isset($this->fk_user_m)?$this->fk_user_m:"null").','; + $sql .= ' acl = '.(isset($this->acl)?"'".$this->db->escape($this->acl)."'":"null"); + $sql .= ' WHERE rowid=' . $this->id; + + $this->db->begin(); + + $resql = $this->db->query($sql); + if (!$resql) { + $error ++; + $this->errors[] = 'Error ' . $this->db->lasterror(); + dol_syslog(__METHOD__ . ' ' . implode(',', $this->errors), LOG_ERR); + } + + if (!$error && !$notrigger) { + // Uncomment this and change MYOBJECT to your own tag if you + // want this action calls a trigger. + + //// Call triggers + //$result=$this->call_trigger('MYOBJECT_MODIFY',$user); + //if ($result < 0) { $error++; //Do also what you must do to rollback action if trigger fail} + //// End call triggers + } + + // Commit or rollback + if ($error) { + $this->db->rollback(); + + return - 1 * $error; + } else { + $this->db->commit(); + + return 1; + } + } + + /** + * Delete object in database + * + * @param User $user User that deletes + * @param bool $notrigger false=launch triggers after, true=disable triggers + * + * @return int <0 if KO, >0 if OK + */ + public function delete(User $user, $notrigger = false) + { + dol_syslog(__METHOD__, LOG_DEBUG); + + $error = 0; + + $this->db->begin(); + + if (!$error) { + if (!$notrigger) { + // Uncomment this and change MYOBJECT to your own tag if you + // want this action calls a trigger. + + //// Call triggers + //$result=$this->call_trigger('MYOBJECT_DELETE',$user); + //if ($result < 0) { $error++; //Do also what you must do to rollback action if trigger fail} + //// End call triggers + } + } + + // If you need to delete child tables to, you can insert them here + + if (!$error) { + $sql = 'DELETE FROM ' . MAIN_DB_PREFIX . $this->table_element; + $sql .= ' WHERE rowid=' . $this->id; + + $resql = $this->db->query($sql); + if (!$resql) { + $error ++; + $this->errors[] = 'Error ' . $this->db->lasterror(); + dol_syslog(__METHOD__ . ' ' . implode(',', $this->errors), LOG_ERR); + } + } + + // Commit or rollback + if ($error) { + $this->db->rollback(); + + return - 1 * $error; + } else { + $this->db->commit(); + + return 1; + } + } + + /** + * Load an object from its id and create a new one in database + * + * @param int $fromid Id of object to clone + * + * @return int New id of clone + */ + public function createFromClone($fromid) + { + dol_syslog(__METHOD__, LOG_DEBUG); + + global $user; + $error = 0; + $object = new Ecmfiles($this->db); + + $this->db->begin(); + + // Load source object + $object->fetch($fromid); + // Reset object + $object->id = 0; + + // Clear fields + // ... + + // Create clone + $result = $object->create($user); + + // Other options + if ($result < 0) { + $error ++; + $this->errors = $object->errors; + dol_syslog(__METHOD__ . ' ' . implode(',', $this->errors), LOG_ERR); + } + + // End + if (!$error) { + $this->db->commit(); + + return $object->id; + } else { + $this->db->rollback(); + + return - 1; + } + } + + /** + * Return a link to the object card (with optionaly the picto) + * + * @param int $withpicto Include picto in link (0=No picto, 1=Include picto into link, 2=Only picto) + * @param string $option On what the link point to + * @param int $notooltip 1=Disable tooltip + * @param int $maxlen Max length of visible user name + * @param string $morecss Add more css on link + * @return string String with URL + */ + function getNomUrl($withpicto=0, $option='', $notooltip=0, $maxlen=24, $morecss='') + { + global $db, $conf, $langs; + global $dolibarr_main_authentication, $dolibarr_main_demo; + global $menumanager; + + if (! empty($conf->dol_no_mouse_hover)) $notooltip=1; // Force disable tooltips + + $result = ''; + $companylink = ''; + + $label = '' . $langs->trans("MyModule") . ''; + $label.= '
'; + $label.= '' . $langs->trans('Ref') . ': ' . $this->ref; + + $url = DOL_URL_ROOT.'/ecm/'.$this->table_name.'_card.php?id='.$this->id; + + $linkclose=''; + if (empty($notooltip)) + { + if (! empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) + { + $label=$langs->trans("ShowProject"); + $linkclose.=' alt="'.dol_escape_htmltag($label, 1).'"'; + } + $linkclose.=' title="'.dol_escape_htmltag($label, 1).'"'; + $linkclose.=' class="classfortooltip'.($morecss?' '.$morecss:'').'"'; + } + else $linkclose = ($morecss?' class="'.$morecss.'"':''); + + $linkstart = ''; + $linkend=''; + + if ($withpicto) + { + $result.=($linkstart.img_object(($notooltip?'':$label), 'label', ($notooltip?'':'class="classfortooltip"')).$linkend); + if ($withpicto != 2) $result.=' '; + } + $result.= $linkstart . $this->ref . $linkend; + return $result; + } + + /** + * Retourne le libelle du status d'un user (actif, inactif) + * + * @param int $mode 0=libelle long, 1=libelle court, 2=Picto + Libelle court, 3=Picto, 4=Picto + Libelle long, 5=Libelle court + Picto + * @return string Label of status + */ + function getLibStatut($mode=0) + { + return $this->LibStatut($this->status,$mode); + } + + /** + * Return the status + * + * @param int $status Id status + * @param int $mode 0=long label, 1=short label, 2=Picto + short label, 3=Picto, 4=Picto + long label, 5=Short label + Picto, 5=Long label + Picto + * @return string Label of status + */ + static function LibStatut($status,$mode=0) + { + global $langs; + + if ($mode == 0) + { + $prefix=''; + if ($status == 1) return $langs->trans('Enabled'); + if ($status == 0) return $langs->trans('Disabled'); + } + if ($mode == 1) + { + if ($status == 1) return $langs->trans('Enabled'); + if ($status == 0) return $langs->trans('Disabled'); + } + if ($mode == 2) + { + if ($status == 1) return img_picto($langs->trans('Enabled'),'statut4').' '.$langs->trans('Enabled'); + if ($status == 0) return img_picto($langs->trans('Disabled'),'statut5').' '.$langs->trans('Disabled'); + } + if ($mode == 3) + { + if ($status == 1) return img_picto($langs->trans('Enabled'),'statut4'); + if ($status == 0) return img_picto($langs->trans('Disabled'),'statut5'); + } + if ($mode == 4) + { + if ($status == 1) return img_picto($langs->trans('Enabled'),'statut4').' '.$langs->trans('Enabled'); + if ($status == 0) return img_picto($langs->trans('Disabled'),'statut5').' '.$langs->trans('Disabled'); + } + if ($mode == 5) + { + if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'),'statut4'); + if ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'),'statut5'); + } + if ($mode == 6) + { + if ($status == 1) return $langs->trans('Enabled').' '.img_picto($langs->trans('Enabled'),'statut4'); + if ($status == 0) return $langs->trans('Disabled').' '.img_picto($langs->trans('Disabled'),'statut5'); + } + } + + + /** + * Initialise object with example values + * Id must be 0 if object instance is a specimen + * + * @return void + */ + public function initAsSpecimen() + { + global $conf,$user; + + $this->id = 0; + + $this->label = '0a1b2c3e4f59999999'; + $this->entity = '1'; + $this->filename = 'myspecimenfilefile.pdf'; + $this->filepath = '/aaa/bbb'; + $this->fullpath_orig = 'c:/file on my disk.pdf'; + $this->description = 'This is a long description of file'; + $this->keywords = 'key1,key2'; + $this->cover = '1'; + $this->position = '5'; + $this->gen_or_uploaded = 'uploaded'; + $this->extraparams = ''; + $this->date_c = (dol_now() - 3600 * 24 * 10); + $this->date_m = ''; + $this->fk_user_c = $user->id; + $this->fk_user_m = ''; + $this->acl = ''; + } + +} + diff --git a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql new file mode 100644 index 00000000000..9c6aefdec6d --- /dev/null +++ b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql @@ -0,0 +1,29 @@ +-- +-- Be carefull to requests order. +-- This file must be loaded by calling /install/index.php page +-- when current version is 5.0.0 or higher. +-- +-- To rename a table: ALTER TABLE llx_table RENAME TO llx_table_new; +-- To add a column: ALTER TABLE llx_table ADD COLUMN newcol varchar(60) NOT NULL DEFAULT '0' AFTER existingcol; +-- To rename a column: ALTER TABLE llx_table CHANGE COLUMN oldname newname varchar(60); +-- To drop a column: ALTER TABLE llx_table DROP COLUMN oldname; +-- To change type of field: ALTER TABLE llx_table MODIFY COLUMN name varchar(60); +-- To drop a foreign key: ALTER TABLE llx_table DROP FOREIGN KEY fk_name; +-- To drop an index: -- VMYSQL4.0 DROP INDEX nomindex on llx_table +-- To drop an index: -- VPGSQL8.0 DROP INDEX nomindex +-- To restrict request to Mysql version x.y minimum use -- VMYSQLx.y +-- To restrict request to Pgsql version x.y minimum use -- VPGSQLx.y +-- To make pk to be auto increment (mysql): -- VMYSQL4.3 ALTER TABLE llx_c_shipment_mode CHANGE COLUMN rowid rowid INTEGER NOT NULL AUTO_INCREMENT; +-- To make pk to be auto increment (postgres): -- VPGSQL8.2 NOT POSSIBLE. MUST DELETE/CREATE TABLE +-- To set a field as NULL: -- VMYSQL4.3 ALTER TABLE llx_table MODIFY COLUMN name varchar(60) NULL; +-- To set a field as NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name DROP NOT NULL; +-- To set a field as NOT NULL: -- VMYSQL4.3 ALTER TABLE llx_table MODIFY COLUMN name varchar(60) NOT NULL; +-- To set a field as NOT NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name SET NOT NULL; +-- To set a field as default NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name SET DEFAULT NULL; +-- Note: fields with type BLOB/TEXT can't have default value. +-- -- VPGSQL8.2 DELETE FROM llx_usergroup_user WHERE fk_user NOT IN (SELECT rowid from llx_user); +-- -- VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup); + + +ALTER TABLE llx_ecm_files CHANGE COLUMN fullpath filepath varchar(750); +ALTER TABLE llx_ecm_files ADD COLUMN position integer; diff --git a/htdocs/install/mysql/tables/llx_ecm_files.sql b/htdocs/install/mysql/tables/llx_ecm_files.sql index 8310c160384..7a30066c2b2 100644 --- a/htdocs/install/mysql/tables/llx_ecm_files.sql +++ b/htdocs/install/mysql/tables/llx_ecm_files.sql @@ -21,12 +21,13 @@ CREATE TABLE llx_ecm_files rowid integer AUTO_INCREMENT PRIMARY KEY, label varchar(64) NOT NULL, entity integer DEFAULT 1 NOT NULL, -- multi company id + filepath varchar(750) NOT NULL, -- relative to dolibarr document dir. example module/def filename varchar(255) NOT NULL, -- file name only without any directory - fullpath varchar(750) NOT NULL, -- relative to dolibarr document dir. example abc/def/myfile fullpath_orig varchar(750), -- full path of original filename, when file is uploaded from a local computer description text, keywords text, -- list of keywords, separated with comma cover text, -- is this file a file to use for a cover + position integer, -- position of file among others gen_or_uploaded varchar(12), -- 'generated' or 'uploaded' extraparams varchar(255), -- for stocking other parameters with json format date_c datetime, From 1e39805945334723dcf00a910b47e77ca20df42d Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Fri, 9 Dec 2016 16:14:43 +0100 Subject: [PATCH 0039/1163] integrate Eldy remarks --- htdocs/core/modules/modSociete.class.php | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index 6e55077b19d..2de744801f0 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -281,7 +281,11 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_payment_term as payterm ON s.cond_reglement = payterm.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as paymode ON s.mode_reglement = paymode.id'; $this->export_sql_end[$r] .=' WHERE s.entity IN ('.getEntity('societe', 1).')'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' OR sc.fk_user IN (SELECT rowid FROM '.MAIN_DB_PREFIX.'user where fk_user= '.$user->id.'))'; + if(!$user->rights->societe->client->voir) { + $subordinatesids = $user->getAllChildIds(); + var_dump($subordinatesids); + $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '.count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).'))' : ''; + } // Export list of contacts and attributes $r++; @@ -311,7 +315,10 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as co ON c.fk_pays = co.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'socpeople_extrafields as extra ON extra.fk_object = c.rowid'; $this->export_sql_end[$r] .=' WHERE c.entity IN ('.getEntity("societe", 1).')'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' OR sc.fk_user IN (SELECT rowid FROM '.MAIN_DB_PREFIX.'user where fk_user= '.$user->id.'))'; + if(!$user->rights->societe->client->voir) { + $subordinatesids = $user->getAllChildIds(); + $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '.count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).'))' : ''; + } // Imports From a797c45e3bf954e9f5ce528c089e1e1504be2b0c Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Fri, 9 Dec 2016 16:28:06 +0100 Subject: [PATCH 0040/1163] sdf --- htdocs/core/modules/modSociete.class.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index 2de744801f0..f0ea5370c6c 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -283,7 +283,6 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' WHERE s.entity IN ('.getEntity('societe', 1).')'; if(!$user->rights->societe->client->voir) { $subordinatesids = $user->getAllChildIds(); - var_dump($subordinatesids); $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '.count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).'))' : ''; } From ef721bebc60933940c2ef0f00fa3dd398518e55f Mon Sep 17 00:00:00 2001 From: gauthier Date: Fri, 9 Dec 2016 17:48:03 +0100 Subject: [PATCH 0041/1163] FIX : break with no iteration --- htdocs/compta/facture.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index a846fb15e00..b5008801645 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -657,7 +657,6 @@ if (empty($reshook)) if ($result < 0) { $error++; - break; } } else { From cbfb7df05ea22762ad1c4c9407f579c5a807a671 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Sat, 10 Dec 2016 12:23:02 +0100 Subject: [PATCH 0042/1163] Add send contract by mail --- htdocs/contrat/card.php | 189 ++++++++++++++++++++++++++++++++++------ 1 file changed, 164 insertions(+), 25 deletions(-) diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php index 7ef9924ac00..51a61d911b3 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -919,7 +919,19 @@ if (empty($reshook)) else setEventMessages($langs->trans("ErrorFailToDeleteFile", GETPOST('file')), null, 'errors'); } } - + + /* + * Send mail + */ + + // Actions to send emails + $actiontypecode='AC_CONT'; + $trigger_name='CONTRACT_SENTBYMAIL'; + $paramname='id'; + $mode='emailfromcontract'; + $trackid='cont'.$object->id; + include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php'; + if (! empty($conf->global->MAIN_DISABLE_CONTACTS_TAB) && $user->rights->contrat->creer) { if ($action == 'addcontact') @@ -2026,37 +2038,164 @@ else print ""; } + // Select mail models is same action as presend + if (GETPOST('modelselected')) { + $action = 'presend'; + } - print '
'; + if ($action != 'presend') + { + print '
'; - /* - * Documents generes - */ - $filename = dol_sanitizeFileName($object->ref); - $filedir = $conf->contrat->dir_output . "/" . dol_sanitizeFileName($object->ref); - $urlsource = $_SERVER["PHP_SELF"] . "?id=" . $object->id; - $genallowed = $user->rights->contrat->creer; - $delallowed = $user->rights->contrat->supprimer; + /* + * Documents generes + */ + $filename = dol_sanitizeFileName($object->ref); + $filedir = $conf->contrat->dir_output . "/" . dol_sanitizeFileName($object->ref); + $urlsource = $_SERVER["PHP_SELF"] . "?id=" . $object->id; + $genallowed = $user->rights->contrat->creer; + $delallowed = $user->rights->contrat->supprimer; - $var = true; + $var = true; - print $formfile->showdocuments('contract', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', 0, '', $soc->default_lang); - - - // Show links to link elements - $linktoelem = $form->showLinkToObjectBlock($object, null, array('contrat')); - $somethingshown = $form->showLinkedObjectBlock($object, $linktoelem); + print $formfile->showdocuments('contract', $filename, $filedir, $urlsource, $genallowed, $delallowed, $object->modelpdf, 1, 0, 0, 28, 0, '', 0, '', $soc->default_lang); - print '
'; + // Show links to link elements + $linktoelem = $form->showLinkToObjectBlock($object, null, array('contrat')); + $somethingshown = $form->showLinkedObjectBlock($object, $linktoelem); + + + print '
'; + + // List of actions on element + include_once DOL_DOCUMENT_ROOT . '/core/class/html.formactions.class.php'; + $formactions = new FormActions($db); + $somethingshown = $formactions->showactions($object, 'contract', $socid); + + + print '
'; + } + + /* + * Action presend + */ + if ($action == 'presend') + { + $object->fetch_projet(); + + $ref = dol_sanitizeFileName($object->ref); + include_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; + $fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); + $file = $fileparams['fullname']; + + // Define output language + $outputlangs = $langs; + $newlang = ''; + if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id'])) + $newlang = $_REQUEST['lang_id']; + if ($conf->global->MAIN_MULTILANGS && empty($newlang)) + $newlang = $object->thirdparty->default_lang; + + if (!empty($newlang)) + { + $outputlangs = new Translate('', $conf); + $outputlangs->setDefaultLang($newlang); + $outputlangs->load('commercial'); + } + + // Build document if it not exists + if (! $file || ! is_readable($file)) { + $result = $object->generateDocument(GETPOST('model') ? GETPOST('model') : $object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); + if ($result <= 0) { + dol_print_error($db, $object->error, $object->errors); + exit(); + } + $fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); + $file = $fileparams['fullname']; + } + + print '
'; + print '
'; + print load_fiche_titre($langs->trans('SendOrderByMail')); + + dol_fiche_head(''); + + // Cree l'objet formulaire mail + include_once DOL_DOCUMENT_ROOT . '/core/class/html.formmail.class.php'; + $formmail = new FormMail($db); + $formmail->param['langsmodels']=(empty($newlang)?$langs->defaultlang:$newlang); + $formmail->fromtype = (GETPOST('fromtype')?GETPOST('fromtype'):(!empty($conf->global->MAIN_MAIL_DEFAULT_FROMTYPE)?$conf->global->MAIN_MAIL_DEFAULT_FROMTYPE:'user')); + + if($formmail->fromtype === 'user'){ + $formmail->fromid = $user->id; + + } + $formmail->trackid='ord'.$object->id; + if (! empty($conf->global->MAIN_EMAIL_ADD_TRACK_ID) && ($conf->global->MAIN_EMAIL_ADD_TRACK_ID & 2)) // If bit 2 is set + { + include DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; + $formmail->frommail=dolAddEmailTrackId($formmail->frommail, 'ord'.$object->id); + } + $formmail->withfrom = 1; + $liste = array(); + foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key => $value) + $liste [$key] = $value; + $formmail->withto = GETPOST('sendto') ? GETPOST('sendto') : $liste; + $formmail->withtocc = $liste; + $formmail->withtoccc = $conf->global->MAIN_EMAIL_USECCC; + if (empty($object->ref_client)) { + $formmail->withtopic = $outputlangs->trans('SendOrderRef', '__ORDERREF__'); + } else if (! empty($object->ref_client)) { + $formmail->withtopic = $outputlangs->trans('SendOrderRef', '__ORDERREF__ (__REFCLIENT__)'); + } + $formmail->withfile = 2; + $formmail->withbody = 1; + $formmail->withdeliveryreceipt = 1; + $formmail->withcancel = 1; + // Tableau des substitutions + $formmail->setSubstitFromObject($object); + $formmail->substit ['__ORDERREF__'] = $object->ref; + + $custcontact = ''; + $contactarr = array(); + $contactarr = $object->liste_contact(- 1, 'external'); + + if (is_array($contactarr) && count($contactarr) > 0) + { + foreach ($contactarr as $contact) + { + if ($contact['libelle'] == $langs->trans('TypeContact_commande_external_CUSTOMER')) { // TODO Use code and not label + $contactstatic = new Contact($db); + $contactstatic->fetch($contact ['id']); + $custcontact = $contactstatic->getFullName($langs, 1); + } + } + + if (! empty($custcontact)) { + $formmail->substit['__CONTACTCIVNAME__'] = $custcontact; + } + } + + // Tableau des parametres complementaires + $formmail->param['action'] = 'send'; + $formmail->param['models'] = 'order_send'; + $formmail->param['models_id']=GETPOST('modelmailselected','int'); + $formmail->param['orderid'] = $object->id; + $formmail->param['returnurl'] = $_SERVER["PHP_SELF"] . '?id=' . $object->id; + + // Init list of files + if (GETPOST("mode") == 'init') { + $formmail->clear_attached_files(); + $formmail->add_attached_files($file, basename($file), dol_mimetype($file)); + } + + // Show form + print $formmail->get_form(); + + dol_fiche_end(); + } - // List of actions on element - include_once DOL_DOCUMENT_ROOT . '/core/class/html.formactions.class.php'; - $formactions = new FormActions($db); - $somethingshown = $formactions->showactions($object, 'contract', $socid); - - - print '
'; } } From ba8deb29c9b97bd79e7ab56c90305075ed51e9e4 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Sat, 10 Dec 2016 12:28:52 +0100 Subject: [PATCH 0043/1163] Update card.php --- htdocs/contrat/card.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php index 51a61d911b3..e59f8c95ed2 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -2086,7 +2086,7 @@ else $ref = dol_sanitizeFileName($object->ref); include_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; - $fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); + $fileparams = dol_most_recent_file($conf->contrat->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); $file = $fileparams['fullname']; // Define output language From 7c7626e445e1845577e2f3925415bbac786ff34e Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Sat, 10 Dec 2016 13:19:33 +0100 Subject: [PATCH 0044/1163] allow to change height and width --- htdocs/product/class/product.class.php | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 3df1393628a..56b9fc527a6 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -636,6 +636,10 @@ class Product extends CommonObject $this->weight_units = trim($this->weight_units); $this->length = price2num($this->length); $this->length_units = trim($this->length_units); + $this->width = price2num($this->width); + $this->width_units = trim($this->width_units); + $this->height = price2num($this->height); + $this->height_units = trim($this->height_units); $this->surface = price2num($this->surface); $this->surface_units = trim($this->surface_units); $this->volume = price2num($this->volume); @@ -750,6 +754,10 @@ class Product extends CommonObject $sql.= ", weight_units = " . ($this->weight_units!='' ? "'".$this->weight_units."'": 'null'); $sql.= ", length = " . ($this->length!='' ? "'".$this->length."'" : 'null'); $sql.= ", length_units = " . ($this->length_units!='' ? "'".$this->length_units."'" : 'null'); + $sql.= ", width= " . ($this->width!='' ? "'".$this->width."'" : 'null'); + $sql.= ", width_units = " . ($this->width_units!='' ? "'".$this->width_units."'" : 'null'); + $sql.= ", height = " . ($this->height!='' ? "'".$this->height."'" : 'null'); + $sql.= ", height_units = " . ($this->height_units!='' ? "'".$this->height_units."'" : 'null'); $sql.= ", surface = " . ($this->surface!='' ? "'".$this->surface."'" : 'null'); $sql.= ", surface_units = " . ($this->surface_units!='' ? "'".$this->surface_units."'" : 'null'); $sql.= ", volume = " . ($this->volume!='' ? "'".$this->volume."'" : 'null'); @@ -1671,8 +1679,9 @@ class Product extends CommonObject $sql = "SELECT rowid, ref, ref_ext, label, description, url, note as note_private, customcode, fk_country, price, price_ttc,"; $sql.= " price_min, price_min_ttc, price_base_type, cost_price, default_vat_code, tva_tx, recuperableonly as tva_npr, localtax1_tx, localtax2_tx, localtax1_type, localtax2_type, tosell,"; - $sql.= " tobuy, fk_product_type, duration, seuil_stock_alerte, canvas,"; - $sql.= " weight, weight_units, length, length_units, surface, surface_units, volume, volume_units, barcode, fk_barcode_type, finished,"; + $sql.= " tobuy, fk_product_type, duration, seuil_stock_alerte, canvas, weight, weight_units,"; + $sql.= " length, length_units, width, width_units, height, height_units,"; + $sql.= " surface, surface_units, volume, volume_units, barcode, fk_barcode_type, finished,"; $sql.= " accountancy_code_buy, accountancy_code_sell, stock, pmp,"; $sql.= " datec, tms, import_key, entity, desiredstock, tobatch, fk_unit,"; $sql.= " fk_price_expression, price_autogen"; @@ -1734,6 +1743,11 @@ class Product extends CommonObject $this->weight_units = $obj->weight_units; $this->length = $obj->length; $this->length_units = $obj->length_units; + $this->width = $obj->width; + $this->width_units = $obj->width_units; + $this->height = $obj->height; + $this->height_units = $obj->height_units; + $this->surface = $obj->surface; $this->surface_units = $obj->surface_units; $this->volume = $obj->volume; From 300c91fd7fc8495a6d6b8b419373938078930b99 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Sat, 10 Dec 2016 13:25:33 +0100 Subject: [PATCH 0045/1163] Update card.php --- htdocs/product/card.php | 64 +++++++++++++++++++++++++++++++++++------ 1 file changed, 55 insertions(+), 9 deletions(-) diff --git a/htdocs/product/card.php b/htdocs/product/card.php index 122e80b2e69..eca254eb93e 100644 --- a/htdocs/product/card.php +++ b/htdocs/product/card.php @@ -283,7 +283,11 @@ if (empty($reshook)) $object->weight_units = GETPOST('weight_units'); $object->length = GETPOST('size'); $object->length_units = GETPOST('size_units'); - $object->surface = GETPOST('surface'); + $object->width = GETPOST('sizewidth'); + $object->width_units = GETPOST('sizewidth_units'); + $object->height = GETPOST('sizeheight'); + $object->height_units = GETPOST('sizeheight_units'); + $object->surface = GETPOST('surface'); $object->surface_units = GETPOST('surface_units'); $object->volume = GETPOST('volume'); $object->volume_units = GETPOST('volume_units'); @@ -380,6 +384,11 @@ if (empty($reshook)) $object->weight_units = GETPOST('weight_units'); $object->length = GETPOST('size'); $object->length_units = GETPOST('size_units'); + $object->width = GETPOST('sizewidth'); + $object->width_units = GETPOST('sizewidth_units'); + $object->height = GETPOST('sizeheight'); + $object->height_units = GETPOST('sizeheight_units'); + $object->surface = GETPOST('surface'); $object->surface_units = GETPOST('surface_units'); $object->volume = GETPOST('volume'); @@ -1010,12 +1019,23 @@ else print $formproduct->select_measuring_units("weight_units","weight"); print '
'.$langs->trans("Length").''; print ''; print $formproduct->select_measuring_units("size_units","size"); print '
'.$langs->trans("Width").''; + print ''; + print $formproduct->select_measuring_units("sizewidth_units","size"); + print '
'.$langs->trans("Height").''; + print ''; + print $formproduct->select_measuring_units("sizeheight_units","size"); + print '
'.$langs->trans("Length").''; - print ' '; - print $formproduct->select_measuring_units("size_units", "size", $object->length_units); - print '
'.$langs->trans("Length").''; + print ' '; + print $formproduct->select_measuring_units("size_units", "size", $object->length_units); + print '
'.$langs->trans("Width").''; + print ' '; + print $formproduct->select_measuring_units("sizewidth_units","size", $object->width_units); + print '
'.$langs->trans("Height").''; + print ' '; + print $formproduct->select_measuring_units("sizeheight_units","size", $object->height_units); + print '
'.$langs->trans("Length").''; @@ -1647,6 +1677,22 @@ else print ' '; } print "
'.$langs->trans("Width").''; + if ($object->width != '') { + print $object->width." ".measuring_units_string($object->width_units,"size"); + } + else + print ' '; + print "
'.$langs->trans("Height").''; + if ($object->height != '') { + print $object->height." ".measuring_units_string($object->height_units,"size"); + } + else + print ' '; + print "
'.$langs->trans("Parameters").' '.$langs->trans("Value").'
'.$langs->transnoentitiesnoconv("multicurrency_useRateOnInvoiceDate").''.$langs->transnoentitiesnoconv("multicurrency_useRateOnDocumentDate").' '; print '
'; print ''; -print ''; -print $form->selectyesno("MULTICURRENCY_USE_RATE_ON_INVOICE_DATE",$conf->global->MULTICURRENCY_USE_RATE_ON_INVOICE_DATE,1); +print ''; +print $form->selectyesno("MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE",$conf->global->MULTICURRENCY_USE_RATE_ON_DOCUMENT_DATE,1); print ''; print '
'; print '
'; + foreach($TSearch as $field=>$input) { + if(!empty($input)) { + $label = !empty($TParam['title'][$field]) ? $TParam['title'][$field] : $field; + $html.=''; + } + } + + $html.=''; + + } + $javaScript = $this->getJS($TParam); + + $html.=' + +
+ '.$javaScript; + + return $html; + } + + private function addTotalGroup($TChamps,$TTotalGroup) { + global $langs; + + $Tab=array(); + + $proto_total_line = array(); + + $tagbase = $old_tagbase = null; + + $addGroupLine = false; + + foreach($TChamps as $k=>&$line) { + + if(empty($proto_total_line)) { + foreach($line as $field=>$value) { + $proto_total_line[$field] = ''; + } + $group_line = $proto_total_line; + } + + $addGroupLine = false; + + $tagbase = ''; + foreach($line as $field=>$value) { + + if(!empty($TTotalGroup[$field])) { + $tagbase.=$value.'|'; + $group_line[$field] = '
'.(empty($value) ? $langs->trans('Empty') : $value ).' :
'; + $group_line[$TTotalGroup[$field]['target']] = '
'.price($TTotalGroup[$field]['values'][$value]).'
'; + $addGroupLine = true; + } + + } + + if(!is_null($old_tagbase) && $old_tagbase!=$tagbase && $addGroupLine) { + // var_dump(array($k,$tagbase,$old_tagbase,$empty_line)); + $Tab[] = $previous_group_line; + } + + $old_tagbase = $tagbase; + $previous_group_line = $group_line; + $group_line = $proto_total_line; + + $Tab[] = $line; + + + + } + if($addGroupLine) { + $Tab[] = $previous_group_line; + } + + + return $Tab; + } + + private function renderRAW(&$TEntete, &$TChamps, &$TTotal,&$TTotalGroup, &$TParam) { + $TSearch = $this->setSearch($TEntete, $TParam); + $TExport=$this->setExport($TParam, $TChamps, $TEntete); + $TChamps = $this->addTotalGroup($TChamps,$TTotalGroup); + + return array( + 'entete'=>$TEntete + ,'champs'=>$TChamps + ,'recherche'=>$TSearch + ,'total'=>$TTotal + ,'export'=>$TExport + ,'haveExport'=>count($TExport) + , 'id'=>$this->id + , 'nb_columns'=>count($TEntete) + ,'totalNB'=>count($TChamps) + , 'nbSearch'=>count($TSearch) + , 'haveTotal'=>(int)!empty($TTotal) + , 'havePage'=>(int)!empty($TPagination) + ); + } + + private function renderList(&$TEntete, &$TChamps, &$TTotal,&$TTotalGroup, &$TParam) { + $TBS = new TTemplateTBS; + + $javaScript = $this->getJS($TParam); + + if($this->typeRender!='dataTableAjax') { + $TPagination=array( + 'pagination'=>array('pageSize'=>$TParam['limit']['nbLine'], 'pageNum'=>$TParam['limit']['page'], 'blockName'=>'champs', 'totalNB'=>count($TChamps)) + ); + } + else { + $TPagination=array(); + } + + $TSearch = $this->setSearch($TEntete, $TParam); + $TExport=$this->setExport($TParam, $TChamps, $TEntete); + $TChamps = $this->addTotalGroup($TChamps,$TTotalGroup); + + return $TBS->render($this->template + , array( + 'entete'=>$TEntete + ,'champs'=>$TChamps + ,'recherche'=>$TSearch + ,'total'=>$TTotal + ,'export'=>$TExport + ) + , array( + 'liste'=>array_merge(array('haveExport'=>count($TExport), 'id'=>$this->id, 'nb_columns'=>count($TEntete) ,'totalNB'=>count($TChamps), 'nbSearch'=>count($TSearch), 'haveTotal'=>(int)!empty($TTotal), 'havePage'=>(int)!empty($TPagination) ), $TParam['liste']) + ) + , $TPagination + , array() + ) + .$javaScript; + } + public function renderDatatable(&$db, $TField, $TParam) { + $this->typeRender = 'dataTable'; + // on conserve db pour le traitement ultérieur des subQuery + $TEntete=array(); + $TChamps=array(); + + //$TParam['limit']['nbLine'] = 99999; + + $this->init($TParam); + + $this->parse_array($TEntete, $TChamps, $TParam,$TField); + list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); + return $this->renderList($TEntete, $TChamps, $TTotal,$TTotalGroup,$TParam); + + } + public function renderArray(&$db,$TField, $TParam=array()) { + $this->typeRender = 'array'; + // on conserve db pour le traitement ultérieur des subQuery + $TEntete=array(); + $TChamps=array(); + + $this->init($TParam); + + $this->parse_array($TEntete, $TChamps, $TParam,$TField); + list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); + + $view_type = $this->getViewType($TParam); + + if($view_type == 'raw') { + return $this->renderRAW($TEntete, $TChamps,$TTotal, $TParam); + } + if($view_type == 'chart') { + return $this->renderChart($TEntete, $TChamps,$TTotal, $TParam); + } + else { + return $this->renderList($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); + } + } + + private function order_by($sql, &$TParam) { + $first = true; + // print_r($TParam['orderBy']); + if(!empty($TParam['orderBy'])) { + + if(strpos($sql,'LIMIT ')!==false) { + list($sql, $sqlLIMIT) = explode('LIMIT ', $sql); + } + + $sql.=' ORDER BY '; + foreach($TParam['orderBy'] as $field=>$order) { + if(!$first) $sql.=','; + + if($order=='DESC')$TParam['liste']['orderDown'] = $field; + else $TParam['liste']['orderUp'] = $field; + + if(strpos($field,'.')===false) $sql.='`'.$field.'` '.$order; + else $sql.=$field.' '.$order; + + $first=false; + } + + if(!empty($sqlLIMIT))$sql.=' LIMIT '.$sqlLIMIT; + + } + + return $sql; + } + private function parse_xml(&$db, &$TEntete, &$TChamps, &$TParam, $xmlString) { + $xml = simplexml_load_string($xmlString); + $this->THideFlip = array_flip($TParam['hide']); + + $first=true; + foreach($xml->{$TParam['node']['main']}->{$TParam['node']['object']} as $node) { + if($first) { + $this->init_entete($TEntete, $TParam, $node); + $first=false; + } + + $this->set_line($TChamps, $TParam, $node); + } + + } + private function parse_array(&$TEntete, &$TChamps, &$TParam, $TField) { + $first=true; + + $this->THideFlip = array_flip($TParam['hide']); + $this->TTotalTmp=array(); + + if(empty($TField)) return false; + + foreach($TField as $row) { + if($first) { + $this->init_entete($TEntete, $TParam, $row); + $first=false; + } + + $this->set_line($TChamps, $TParam, $row); + } + + } + + private function init_entete(&$TEntete, &$TParam, $currentLine) { + + $TField=$TFieldVisibility=array(); + + foreach ($currentLine as $field => $value) { + $TField[$field]=true; + } + + global $user; + + $contextpage=md5($_SERVER['PHP_SELF']); + if((float)DOL_VERSION>=4.0 && empty($TParam['no-select'])) { + + dol_include_once('/core/class/html.form.class.php'); + + global $db,$conf,$user; + $form=new Form($db); + + $selectedfields = GETPOST('TListTBS_'.$this->id.'_selectedfields'); + + if(!empty($selectedfields)) { + include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; + $tabparam['MAIN_SELECTEDFIELDS_'.$contextpage]=$selectedfields; + $result=dol_set_user_param($db, $conf, $user, $tabparam); + } + + $tmpvar='MAIN_SELECTEDFIELDS_'.$contextpage; + if (! empty($user->conf->$tmpvar)) { + $tmparray=explode(',', $user->conf->$tmpvar); + $TParam['hide']=array(); + foreach($TField as $field=>$dummy) + { + $libelle = isset($TParam['title'][$field]) ? $TParam['title'][$field] : $field; + + if(!in_array($field,$tmparray)) { + $TParam['hide'][] = $field; + $visible = 0; + } + else{ + $visible = 1; + } + + $TFieldVisibility[$field]=array( + 'label'=>$libelle + ,'checked'=>$visible + ); + + + } + } + else{ + foreach($TField as $field=>$dummy) + { + $libelle = isset($TParam['title'][$field]) ? $TParam['title'][$field] : $field; + $visible = (!in_array($field,$TParam['hide'])) ? 1 : 0; + $TFieldVisibility[$field]=array( + 'label'=>$libelle + ,'checked'=>$visible + ); + } + } + + $selectedfields=$form->multiSelectArrayWithCheckbox('TListTBS_'.$this->id.'_selectedfields', $TFieldVisibility, $contextpage); // This also change content of $arrayfields_0 + + } + + foreach ($currentLine as $field => $value) { + $libelle = isset($TParam['title'][$field]) ? $TParam['title'][$field] : $field; + $visible = (!in_array($field,$TParam['hide'])) ? 1 : 0; + + if($visible) { + $lastfield = $field; + $TEntete[$field] = array( + 'libelle'=>$libelle + ,'order'=>((in_array($field, $TParam['orderby']['noOrder']) || $this->typeRender != 'sql') ? 0 : 1) + ,'width'=>(!empty($TParam['size']['width'][$field]) ? $TParam['size']['width'][$field] : 'auto') + ,'text-align'=>(!empty($TParam['position']['text-align'][$field]) ? $TParam['position']['text-align'][$field] : 'auto') + ,'more'=>'' + ); + + } + } + + if(!empty($selectedfields) && !empty($lastfield)) { + $TEntete[$lastfield]['more']='
'.$selectedfields.'
'; + } + + + /*if(!empty($TParam['search']) && !empty($TEntete)) { + $TEntete['actions']=array('libelle'=>'', 'order'=>0); + }*/ + + } + + private function in_view(&$TParam, $line_number) { + global $conf; +// var_dump($_REQUEST['get-all-for-export']); + if(!empty($_REQUEST['get-all-for-export'])) return true; // doit être dans la vue + + $page_number = !empty($TParam['limit']['page']) ? $TParam['limit']['page'] : 1; + $line_per_page = !empty($TParam['limit']['nbLine']) ? $TParam['limit']['nbLine'] : $conf->liste_limit; + + $start = ($page_number-1) * $line_per_page; + $end = ($page_number* $line_per_page) -1; + + if($line_number>=$start && $line_number<=$end) return true; + else return false; + } + + private function set_line(&$TChamps, &$TParam, $currentLine) { + + global $conf; + + $line_number = count($TChamps); + + if($this->in_view($TParam,$line_number)) { + + $row=array(); $trans = array(); + foreach($currentLine as $field=>$value) { + + if(is_object($value)) { + if(get_class($value)=='stdClass') {$value=print_r($value, true);} + else $value=(string)$value; + } + + if(isset($TParam['subQuery'][$field])) { + $dbSub = new TPDOdb; //TODO finish it + $dbSub->Execute( strtr($TParam['subQuery'][$field], array_merge( $trans, array('@val@'=>$value) )) ); + $subResult = ''; + while($dbSub->Get_line()) { + $subResult.= implode(', ',$dbSub->currentLine).'
'; + } + $value=$subResult; + $dbSub->close(); + } + + $trans['@'.$field.'@'] = $value; + + if(!empty($TParam['math'][$field])) { + $float_value = (double)strip_tags($value); + $this->TTotalTmp[$field][] = $float_value; + } + + if(!in_array($field,$TParam['hide'])) { + $row[$field]=$value; + + if(isset($TParam['eval'][$field]) && in_array($field,array_keys($row))) { + $strToEval = 'return '.strtr( $TParam['eval'][$field] , array_merge( $trans, array('@val@'=>$row[$field]) )).';'; + $row[$field] = eval($strToEval); + } + + if(isset($TParam['type'][$field]) && !isset($TParam['eval'][$field])) { + if($TParam['type'][$field]=='date' + || $TParam['type'][$field]=='datetime' ) { + + if($row[$field] != '0000-00-00 00:00:00' && $row[$field] != '1000-01-01 00:00:00' && $row[$field] != '0000-00-00' && !empty($row[$field])) { + if($TParam['type'][$field]=='datetime')$row[$field] = dol_print_date(strtotime($row[$field]),'dayhoursec'); + else $row[$field] = dol_print_date(strtotime($row[$field]),'day'); + } else { + $row[$field] = ''; + } + } + if($TParam['type'][$field]=='hour') { $row[$field] = date('H:i', strtotime($row[$field])); } + if($TParam['type'][$field]=='money') { $row[$field] = '
'.price($row[$field],0,'',1,-1,2).'
'; } + if($TParam['type'][$field]=='number') { $row[$field] = '
'.price($row[$field]).'
'; } + if($TParam['type'][$field]=='integer') { $row[$field] = '
'.(int)$row[$field].'
'; } + } + + if(isset($TParam['link'][$field])) { + if(empty($row[$field]) && $row[$field]!==0 && $row[$field]!=='0')$row[$field]='(vide)'; + $row[$field]= strtr( $TParam['link'][$field], array_merge( $trans, array('@val@'=>$row[$field]) )) ; + } + + if(isset($TParam['translate'][$field])) { + if(isset($TParam['translate'][$field][''])) unset($TParam['translate'][$field]['']); + $row[$field] = strtr( $row[$field] , $TParam['translate'][$field]); + } + + + } + + + } + } + else{ + $row=array(); + + foreach($currentLine as $field=>&$value) { + if(!isset($this->THideFlip[$field])) { + if(isset($TParam['math'][$field]) && !empty($TParam['math'][$field])) { + $float_value = (double)strip_tags($value); + $this->TTotalTmp[$field][] = $float_value; + } + + $row[$field] = $value; + } + } + } + + if(!empty($TParam['math'][$field])) { + foreach($row as $field=>$value) { + if(!empty($TParam['math'][$field]) && is_array($TParam['math'][$field])) { + $toField = $TParam['math'][$field][1]; + $float_value = (double)strip_tags($row[$toField]); + $this->TTotalTmp['@groupsum'][$toField][ $row[$field] ] +=$float_value; + + } + } + } + $TChamps[] = $row; + } + + private function getBind(&$TParam) { + + $TBind = array(); + foreach($this->TBind as $k=>$v) { + if(!empty($TParam['operator'][$k]) && $TParam['operator'][$k] == 'IN') { + + if($v==='')$TBind[$k] =array("'0'"); + else $TBind[$k] =explode(',', $v); + + } + else{ + $TBind[$k] = $v; + } + + } + + return $TBind; + } + + private function getSQL(&$PDOdb,$sql,&$TParam) { + global $user,$conf; + + $sql=strtr($sql,array( + '@current_user@'=>$user->id + )); + + //AA oui c'est moche mais le bindParam ne prends pas en compte les tableaux pour le IN ce qui est super pénalisant. En attendant de refaire mieux ou d'un coup de main + $TBind = $this->getBind($TParam); + + $sql = preg_replace_callback('/(:[a-z])\w+/i',function($matches) use($TBind,$PDOdb) { + $field = substr($matches[0],1); + if(isset($TBind[$field]) || is_null($TBind[$field]) ) { + + if(is_array($TBind[$field])) { + $r = ''; + foreach($TBind[$field] as $v ){ + if(!empty($r))$r.=','; + $r.=$PDOdb->quote($v); + } + + return $r; + + } + else if(strpos($TBind[$field],' IS NULL') === false) { + return $PDOdb->quote($TBind[$field]); + } + else { + return $TBind[$field]; + } + } + else { + return 'errorBindingField '.$field; + } + + }, $sql); + + + return $sql; + } + + private function limitSQL($sql,&$TParam) { + + if(!empty($TParam['limit']['global']) && strpos($sql,'LIMIT ')===false ) { + + $sql.=' LIMIT '.(int)$TParam['limit']['global']; + + } + + return $sql; + } + + private function parse_sql(&$PDOdb, &$TEntete, &$TChamps,&$TParam, $sql, $TBind=array()) { + + //$sql.=' LIMIT '.($TParam['limit']['page']*$TParam['limit']['nbLine']).','.$TParam['limit']['nbLine']; + $sql = $this->limitSQL($sql, $TParam); + + $this->TTotalTmp=array(); + + $this->sql = $this->getSQL($PDOdb,$sql,$TParam); + $this->THideFlip = array_flip($TParam['hide']); + + $res = $PDOdb->Execute($this->sql); + $first=true; + while($currentLine = $PDOdb->Get_line()) { + if($first) { + $this->init_entete($TEntete, $TParam, $currentLine); + $first = false; + } + + $this->set_line($TChamps, $TParam, $currentLine); + + } + +//pre($TChamps);exit; + + } +} diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index 808dd7933be..60a8dde8652 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -69,9 +69,11 @@ class Inventory extends CoreObject ,'title'=>array('type'=>'string') ); - function __construct() + function __construct(&$db) { + $this->db = &$db; + parent::init(); $this->_init_vars(); @@ -316,22 +318,64 @@ class Inventory extends CoreObject return ''.img_picto('','object_list.png','',0).' '.$title.''; } + + static function getSQL($type) { + global $conf; + + if($type=='All') { + + $sql="SELECT i.rowid, e.label, i.date_inventory, i.fk_warehouse, i.date_cre, i.date_maj, i.status + FROM ".MAIN_DB_PREFIX."inventory i + LEFT JOIN ".MAIN_DB_PREFIX."entrepot e ON (e.rowid = i.fk_warehouse) + WHERE i.entity=".(int) $conf->entity; + + } + + return $sql; + } + } -class Inventorydet extends TObjetStd +class Inventorydet extends CoreObject { - function __construct() + public $element='inventorydet'; + public $table_element='inventorydet'; + protected $isnolinkedbythird = 1; // No field fk_soc + protected $ismultientitymanaged = 0; // 0=No test on entity, 1=Test with field entity, 2=Test with link by societe + + public $fk_inventory; + public $fk_warehouse; + public $fk_product; + public $entity; + public $qty_view; + public $qty_stock; + public $qty_regulated; + public $pmp; + public $pa; + public $new_pmp; + + private $__fields=array( + 'fk_inventory'=>array('type'=>'int') + ,'fk_warehouse'=>array('type'=>'int') + ,'fk_product'=>array('type'=>'int') + ,'entity'=>array('type'=>'int') + ,'qty_view'=>array('type'=>'float') + ,'qty_stock'=>array('type'=>'float') + ,'qty_regulated'=>array('type'=>'float') + ,'pmp'=>array('type'=>'float') + ,'pa'=>array('type'=>'float') + ,'new_pmp'=>array('type'=>'float') + ); + + + function __construct(&$db) { global $conf; - $this->set_table(MAIN_DB_PREFIX.'inventorydet'); - $this->TChamps = array(); - $this->add_champs('fk_inventory,fk_warehouse,fk_product,entity', 'type=entier;'); - $this->add_champs('qty_view,qty_stock,qty_regulated,pmp,pa,new_pmp', 'type=float;'); - - $this->_init_vars(); - $this->start(); + $this->db = &$db; + parent::init(); + $this->entity = $conf->entity; $this->errors = array(); From dfb9ae234cfe3b156cedba54e72c36d8e88e19ea Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Mon, 12 Dec 2016 19:03:02 +0100 Subject: [PATCH 0054/1163] debug --- htdocs/core/class/coreobject.class.php | 23 +- ...{class.listview.php => listview.class.php} | 520 +++--------------- htdocs/core/js/listview.js | 143 +++++ htdocs/inventory/class/inventory.class.php | 81 ++- 4 files changed, 266 insertions(+), 501 deletions(-) rename htdocs/core/class/{class.listview.php => listview.class.php} (61%) create mode 100644 htdocs/core/js/listview.js diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index 1cc68f38cb7..7d784073412 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -25,7 +25,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commonobject.class.php'; class CoreObject extends CommonObject { - + protected $__fields=array(); /** * Constructor * @@ -38,7 +38,7 @@ class CoreObject extends CommonObject { $this->date_0 = '1001-01-01 00:00:00'; //TODO there is a solution for this ? } - private function init() { + protected function init() { $this->id = 0; $this->datec = time(); @@ -110,20 +110,20 @@ class CoreObject extends CommonObject { } else return false; } - private function _is_float($info){ + private function is_float($info){ if(is_array($info)) { if(isset($info['type']) && $info['type']=='float') return true; else return false; } else return false; } - private function _is_text($info){ + private function is_text($info){ if(is_array($info)) { if(isset($info['type']) && $info['type']=='text') return true; else return false; } else return false; } - private function _is_index($info){ + private function is_index($info){ if(is_array($info)) { if(isset($info['index']) && $info['index']==true) return true; else return false; @@ -172,14 +172,23 @@ class CoreObject extends CommonObject { return $query; } + private function get_field_list(){ + + $keys = array_keys($this->__fields); + + return implode(',', $keys); + } public function fetch($id, $loadChild = true) { if(empty($id)) return false; - $res = $db->query( 'SELECT '.$this->get_field_list().'datec,tms + $sql = 'SELECT '.$this->get_field_list().',datec,tms FROM '.$this->table_element.' - WHERE rowid='.$id ); + WHERE rowid='.$id; + + $res = $this->db->query( $sql ); + var_dump($sql); if($obj = $db->fetch_object($res)) { $this->rowid=$id; diff --git a/htdocs/core/class/class.listview.php b/htdocs/core/class/listview.class.php similarity index 61% rename from htdocs/core/class/class.listview.php rename to htdocs/core/class/listview.class.php index f37fc9a1628..0cedad18855 100644 --- a/htdocs/core/class/class.listview.php +++ b/htdocs/core/class/listview.class.php @@ -20,7 +20,9 @@ class Listview { - function __construct( $id ) { + function __construct(&$db, $id ) { + + $this->db = &$db; $this->id = $id; @@ -263,79 +265,25 @@ class Listview { return $sql; } - private function getViewType(&$TParam) { - if(!empty($TParam['view_type'])) return $TParam['view_type']; - else if (is_string($TParam['type']))return $TParam['type'] ; - else return 'list'; + public function render($sql,$TParam=array()) { + + $THeader=array(); + $TField=array(); + + $this->init($TParam); + + $sql = $this->search($sql,$TParam); + $sql = $this->order_by($sql, $TParam); + + $this->parse_sql($THeader, $TField, $TParam, $sql); + + list($TTotal, $TTotalGroup)=$this->get_total($TField, $TParam); + + return $this->renderList($THeader, $TField,$TTotal,$TTotalGroup, $TParam); + } - public function render(&$db,$sql,$TParam=array(),$TBind=array()) { - $this->typeRender = 'sql'; - // print_r($TParam); - $TEntete=array(); - $TChamps=array(); - - $this->init($TParam); - - if(!empty($TBind)) $this->TBind = $TBind; - - $sql = $this->search($sql,$TParam); - $sql = $this->order_by($sql, $TParam); - - $this->parse_sql($db, $TEntete, $TChamps, $TParam, $sql); - - list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); - - $view_type = $this->getViewType($TParam); - - if($view_type == 'raw') { - return $this->renderRAW($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); - } - else if($view_type == 'chart') { - return $this->renderChart($TEntete, $TChamps,$TTotal, $TParam); - } - else { - return $this->renderList($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); - } - - - } - public function renderDataTableAjax(&$db,$sql,$TParam=array()) { - $this->renderDataTableSQL($db, $sql, $TParam); - } - public function renderDataTableSQL(&$db,$sql,$TParam=array()) { - $this->typeRender = 'dataTableAjax'; - // print_r($TParam); - $TEntete=array(); - $TChamps=array(); - - $this->init($TParam); - - $sql = $this->search($sql,$TParam); - $sql = $this->order_by($sql, $TParam); - - $this->parse_sql($db, $TEntete, $TChamps, $TParam, $sql); - list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); - - return $this->renderList($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); - - } - public function renderXML(&$db,$xmlString, $TParam=array()) { - $this->typeRender = 'xml'; - - $TEntete=array(); - $TChamps=array(); - - $this->init($TParam); - - $this->parse_xml($db, $TEntete, $TChamps, $TParam,$xmlString); - - list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); - - return $this->renderList($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); - - } - private function setSearch(&$TEntete, &$TParam) { + private function setSearch(&$THeader, &$TParam) { global $langs; if(empty($TParam['search'])) return array(); @@ -347,7 +295,7 @@ class Listview { $nb_search_in_bar = 0; if(!empty($TParam['search'])) { - foreach($TEntete as $key=>$libelle) { // init + foreach($THeader as $key=>$libelle) { // init if(empty($TSearch[$key]))$TSearch[$key]=''; } } @@ -382,7 +330,7 @@ class Listview { } - if(!empty($TEntete[$key]) || $this->getViewType($TParam) == 'chart') { + if(!empty($THeader[$key]) || $this->getViewType($TParam) == 'chart') { $TSearch[$key] = $fsearch; $nb_search_in_bar++; } @@ -416,12 +364,12 @@ class Listview { * Function analysant et totalisant une colonne * Supporté : sum, average */ - private function get_total(&$TChamps, &$TParam) { + private function get_total(&$TField, &$TParam) { $TTotal=$TTotalGroup=array(); - if(!empty($TParam['math']) && !empty($TChamps[0])) { + if(!empty($TParam['math']) && !empty($TField[0])) { - foreach($TChamps[0] as $field=>$value) { + foreach($TField[0] as $field=>$value) { $TTotal[$field]=''; $TTotalGroup[$field] = ''; } @@ -460,80 +408,16 @@ class Listview { private function getJS(&$TParam) { $javaScript = ''; - - if($this->typeRender=='dataTable') { - - $javaScript.=' - '; - - $TPagination=array(); - } - elseif($this->typeRender=='dataTableAjax') { - $javaScript.=' - '; - } - return $javaScript; } - private function setExport(&$TParam,$TChamps,$TEntete) { + private function setExport(&$TParam,$TField,$THeader) { global $langs; $Tab=array(); @@ -545,8 +429,8 @@ class Listview { 'title'=>$this->title ,'sql'=>$this->sql ,'TBind'=>$this->TBind - ,'TChamps'=>$TChamps - ,'TEntete'=>$TEntete + ,'TChamps'=>$TField + ,'TEntete'=>$THeader ) ) ); foreach($TParam['export'] as $mode_export) { @@ -567,133 +451,7 @@ class Listview { return $Tab; } - private function renderChart(&$TEntete, &$TChamps,&$TTotal, &$TParam) { - - $TData = array(); - $header = ''; - $first = true; - - $TSearch = $this->setSearch($TEntete, $TParam); - $TExport= $this->setExport($TParam, $TChamps, $TEntete); - - if(empty($TParam['xaxis']) && !empty($TEntete)) { - $fieldXaxis = key($TEntete); - } - else { - $fieldXaxis = $TParam['xaxis']; - } - - $TValue=array(); $key = null; - foreach($TEntete as $field=>&$entete) { - if($field!=$fieldXaxis)$TValue[] = addslashes($entete['libelle']); - } - - $header='["'.addslashes( $TEntete[$fieldXaxis]['libelle'] ).'","'.implode('","', $TValue).'"]'; - //var_dump($fieldXaxis, $TChamps); - foreach($TChamps as &$row) { - $TValue=array(); - $key = null; - - foreach($row as $k=>$v) { - - if($k == $fieldXaxis) { - $key = $v; - } - else { - $TValue[] = (float)$v; - } - - } - - if(!is_null($key)) { - if(!isset($TData[$key])) $TData[$key] = $TValue; - else { - foreach($TData[$key] as $k=>$v) { - $TData[$key][$k]+=(float)$TValue[$k]; - } - - } - } - - - } - - $data = $header; - foreach($TData as $key=>$TValue) { - - $data .= ',[ "'.$key.'", '; - foreach($TValue as $v) { - $data.=(float)$v.','; - } - - $data.=' ]'; - } - - $height = empty($TParam['height']) ? 500 : $TParam['height']; - $curveType= empty($TParam['curveType']) ? 'none': $TParam['curveType']; // none or function - $pieHole = empty($TParam['pieHole']) ? 0: $TParam['pieHole']; // none or function - $hAxis = empty($TParam['hAxis']) ? array() : $TParam['hAxis']; // Array of params - $vAxis = empty($TParam['vAxis']) ? array() : $TParam['vAxis']; // Array of params - - // This feature is experimental and may change in future releases - $explorer = empty($TParam['explorer']) ? array() : $TParam['explorer']; // Note: The explorer only works with continuous axes (such as numbers or dates) - - $type = empty($TParam['chartType']) ? 'LineChart' : $TParam['chartType']; - - $html = ''; - - if(!empty($TSearch)) { - - $html.=''; - foreach($TSearch as $field=>$input) { - if(!empty($input)) { - $label = !empty($TParam['title'][$field]) ? $TParam['title'][$field] : $field; - $html.=''; - } - } - - $html.=''; - - } - $javaScript = $this->getJS($TParam); - - $html.=' - -
- '.$javaScript; - - return $html; - } - - private function addTotalGroup($TChamps,$TTotalGroup) { + private function addTotalGroup($TField,$TTotalGroup) { global $langs; $Tab=array(); @@ -704,7 +462,7 @@ class Listview { $addGroupLine = false; - foreach($TChamps as $k=>&$line) { + foreach($TField as $k=>&$line) { if(empty($proto_total_line)) { foreach($line as $field=>$value) { @@ -748,99 +506,50 @@ class Listview { return $Tab; } - - private function renderRAW(&$TEntete, &$TChamps, &$TTotal,&$TTotalGroup, &$TParam) { - $TSearch = $this->setSearch($TEntete, $TParam); - $TExport=$this->setExport($TParam, $TChamps, $TEntete); - $TChamps = $this->addTotalGroup($TChamps,$TTotalGroup); - - return array( - 'entete'=>$TEntete - ,'champs'=>$TChamps - ,'recherche'=>$TSearch - ,'total'=>$TTotal - ,'export'=>$TExport - ,'haveExport'=>count($TExport) - , 'id'=>$this->id - , 'nb_columns'=>count($TEntete) - ,'totalNB'=>count($TChamps) - , 'nbSearch'=>count($TSearch) - , 'haveTotal'=>(int)!empty($TTotal) - , 'havePage'=>(int)!empty($TPagination) - ); - } - private function renderList(&$TEntete, &$TChamps, &$TTotal,&$TTotalGroup, &$TParam) { - $TBS = new TTemplateTBS; - + private function renderList(&$THeader, &$TField, &$TTotal,&$TTotalGroup, &$TParam) { + $javaScript = $this->getJS($TParam); - if($this->typeRender!='dataTableAjax') { - $TPagination=array( - 'pagination'=>array('pageSize'=>$TParam['limit']['nbLine'], 'pageNum'=>$TParam['limit']['page'], 'blockName'=>'champs', 'totalNB'=>count($TChamps)) - ); - } - else { - $TPagination=array(); - } + $TPagination=array( + 'pagination'=>array('pageSize'=>$TParam['limit']['nbLine'], 'pageNum'=>$TParam['limit']['page'], 'blockName'=>'champs', 'totalNB'=>count($TField)) + ); - $TSearch = $this->setSearch($TEntete, $TParam); - $TExport=$this->setExport($TParam, $TChamps, $TEntete); - $TChamps = $this->addTotalGroup($TChamps,$TTotalGroup); + $TSearch = $this->setSearch($THeader, $TParam); + $TExport=$this->setExport($TParam, $TField, $THeader); + $TField = $this->addTotalGroup($TField,$TTotalGroup); - return $TBS->render($this->template - , array( - 'entete'=>$TEntete - ,'champs'=>$TChamps + var_dump( + array( + 'entete'=>$THeader + ,'champs'=>$TField ,'recherche'=>$TSearch ,'total'=>$TTotal ,'export'=>$TExport ) , array( - 'liste'=>array_merge(array('haveExport'=>count($TExport), 'id'=>$this->id, 'nb_columns'=>count($TEntete) ,'totalNB'=>count($TChamps), 'nbSearch'=>count($TSearch), 'haveTotal'=>(int)!empty($TTotal), 'havePage'=>(int)!empty($TPagination) ), $TParam['liste']) + 'liste'=>array_merge(array('haveExport'=>count($TExport), 'id'=>$this->id, 'nb_columns'=>count($THeader) ,'totalNB'=>count($TField), 'nbSearch'=>count($TSearch), 'haveTotal'=>(int)!empty($TTotal), 'havePage'=>(int)!empty($TPagination) ), $TParam['liste']) ) , $TPagination - , array() - ) - .$javaScript; - } - public function renderDatatable(&$db, $TField, $TParam) { - $this->typeRender = 'dataTable'; - // on conserve db pour le traitement ultérieur des subQuery - $TEntete=array(); - $TChamps=array(); - - //$TParam['limit']['nbLine'] = 99999; - - $this->init($TParam); - - $this->parse_array($TEntete, $TChamps, $TParam,$TField); - list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); - return $this->renderList($TEntete, $TChamps, $TTotal,$TTotalGroup,$TParam); - + + ); + + $javaScript; } + public function renderArray(&$db,$TField, $TParam=array()) { $this->typeRender = 'array'; // on conserve db pour le traitement ultérieur des subQuery - $TEntete=array(); - $TChamps=array(); + $THeader=array(); + $TField=array(); $this->init($TParam); - $this->parse_array($TEntete, $TChamps, $TParam,$TField); - list($TTotal, $TTotalGroup)=$this->get_total($TChamps, $TParam); + $this->parse_array($THeader, $TField, $TParam,$TField); + list($TTotal, $TTotalGroup)=$this->get_total($TField, $TParam); - $view_type = $this->getViewType($TParam); + $this->renderList($THeader, $TField,$TTotal,$TTotalGroup, $TParam); - if($view_type == 'raw') { - return $this->renderRAW($TEntete, $TChamps,$TTotal, $TParam); - } - if($view_type == 'chart') { - return $this->renderChart($TEntete, $TChamps,$TTotal, $TParam); - } - else { - return $this->renderList($TEntete, $TChamps,$TTotal,$TTotalGroup, $TParam); - } } private function order_by($sql, &$TParam) { @@ -848,7 +557,7 @@ class Listview { // print_r($TParam['orderBy']); if(!empty($TParam['orderBy'])) { - if(strpos($sql,'LIMIT ')!==false) { + if(strpos($sql,'LIMIT ')!==false) { //TODO regex list($sql, $sqlLIMIT) = explode('LIMIT ', $sql); } @@ -871,22 +580,8 @@ class Listview { return $sql; } - private function parse_xml(&$db, &$TEntete, &$TChamps, &$TParam, $xmlString) { - $xml = simplexml_load_string($xmlString); - $this->THideFlip = array_flip($TParam['hide']); - - $first=true; - foreach($xml->{$TParam['node']['main']}->{$TParam['node']['object']} as $node) { - if($first) { - $this->init_entete($TEntete, $TParam, $node); - $first=false; - } - - $this->set_line($TChamps, $TParam, $node); - } - - } - private function parse_array(&$TEntete, &$TChamps, &$TParam, $TField) { + + private function parse_array(&$THeader, &$TField, &$TParam, $TField) { $first=true; $this->THideFlip = array_flip($TParam['hide']); @@ -896,16 +591,16 @@ class Listview { foreach($TField as $row) { if($first) { - $this->init_entete($TEntete, $TParam, $row); + $this->init_entete($THeader, $TParam, $row); $first=false; } - $this->set_line($TChamps, $TParam, $row); + $this->set_line($TField, $TParam, $row); } } - private function init_entete(&$TEntete, &$TParam, $currentLine) { + private function init_entete(&$THeader, &$TParam, $currentLine) { $TField=$TFieldVisibility=array(); @@ -977,7 +672,7 @@ class Listview { if($visible) { $lastfield = $field; - $TEntete[$field] = array( + $THeader[$field] = array( 'libelle'=>$libelle ,'order'=>((in_array($field, $TParam['orderby']['noOrder']) || $this->typeRender != 'sql') ? 0 : 1) ,'width'=>(!empty($TParam['size']['width'][$field]) ? $TParam['size']['width'][$field] : 'auto') @@ -989,19 +684,15 @@ class Listview { } if(!empty($selectedfields) && !empty($lastfield)) { - $TEntete[$lastfield]['more']='
'.$selectedfields.'
'; + $THeader[$lastfield]['more']='
'.$selectedfields.'
'; } - /*if(!empty($TParam['search']) && !empty($TEntete)) { - $TEntete['actions']=array('libelle'=>'', 'order'=>0); - }*/ - } private function in_view(&$TParam, $line_number) { global $conf; -// var_dump($_REQUEST['get-all-for-export']); + if(!empty($_REQUEST['get-all-for-export'])) return true; // doit être dans la vue $page_number = !empty($TParam['limit']['page']) ? $TParam['limit']['page'] : 1; @@ -1014,11 +705,11 @@ class Listview { else return false; } - private function set_line(&$TChamps, &$TParam, $currentLine) { + private function set_line(&$TField, &$TParam, $currentLine) { global $conf; - $line_number = count($TChamps); + $line_number = count($TField); if($this->in_view($TParam,$line_number)) { @@ -1114,67 +805,7 @@ class Listview { } } } - $TChamps[] = $row; - } - - private function getBind(&$TParam) { - - $TBind = array(); - foreach($this->TBind as $k=>$v) { - if(!empty($TParam['operator'][$k]) && $TParam['operator'][$k] == 'IN') { - - if($v==='')$TBind[$k] =array("'0'"); - else $TBind[$k] =explode(',', $v); - - } - else{ - $TBind[$k] = $v; - } - - } - - return $TBind; - } - - private function getSQL(&$PDOdb,$sql,&$TParam) { - global $user,$conf; - - $sql=strtr($sql,array( - '@current_user@'=>$user->id - )); - - //AA oui c'est moche mais le bindParam ne prends pas en compte les tableaux pour le IN ce qui est super pénalisant. En attendant de refaire mieux ou d'un coup de main - $TBind = $this->getBind($TParam); - - $sql = preg_replace_callback('/(:[a-z])\w+/i',function($matches) use($TBind,$PDOdb) { - $field = substr($matches[0],1); - if(isset($TBind[$field]) || is_null($TBind[$field]) ) { - - if(is_array($TBind[$field])) { - $r = ''; - foreach($TBind[$field] as $v ){ - if(!empty($r))$r.=','; - $r.=$PDOdb->quote($v); - } - - return $r; - - } - else if(strpos($TBind[$field],' IS NULL') === false) { - return $PDOdb->quote($TBind[$field]); - } - else { - return $TBind[$field]; - } - } - else { - return 'errorBindingField '.$field; - } - - }, $sql); - - - return $sql; + $TField[] = $row; } private function limitSQL($sql,&$TParam) { @@ -1188,29 +819,26 @@ class Listview { return $sql; } - private function parse_sql(&$PDOdb, &$TEntete, &$TChamps,&$TParam, $sql, $TBind=array()) { + private function parse_sql( &$THeader, &$TField,&$TParam, $sql) { + global $db; - //$sql.=' LIMIT '.($TParam['limit']['page']*$TParam['limit']['nbLine']).','.$TParam['limit']['nbLine']; - $sql = $this->limitSQL($sql, $TParam); + $this->sql = $this->limitSQL($sql, $TParam); $this->TTotalTmp=array(); - $this->sql = $this->getSQL($PDOdb,$sql,$TParam); $this->THideFlip = array_flip($TParam['hide']); - $res = $PDOdb->Execute($this->sql); + $res = $db->query($this->sql); $first=true; - while($currentLine = $PDOdb->Get_line()) { + while($currentLine = $db->fetch_object($res)) { if($first) { - $this->init_entete($TEntete, $TParam, $currentLine); + $this->init_entete($THeader, $TParam, $currentLine); $first = false; } - $this->set_line($TChamps, $TParam, $currentLine); + $this->set_line($TField, $TParam, $currentLine); } -//pre($TChamps);exit; - } } diff --git a/htdocs/core/js/listview.js b/htdocs/core/js/listview.js new file mode 100644 index 00000000000..1157c2ef4b8 --- /dev/null +++ b/htdocs/core/js/listview.js @@ -0,0 +1,143 @@ +var TListTBS_include = true; + +function TListTBS_OrderDown(idListe, column) { + var base_url = document.location.href; + + base_url = TListTBS_recup_form_param(idListe,base_url); + base_url = TListTBS_removeParam(base_url,'TListTBS['+encodeURIComponent(idListe)+'][orderBy]'); + + base_url = TListTBS_removeParam(base_url,'get-all-for-export'); + + document.location.href=TListTBS_modifyUrl(base_url,"TListTBS["+encodeURIComponent(idListe)+"][orderBy]["+encodeURIComponent(column)+"]","DESC"); +} +function TListTBS_OrderUp(idListe, column) { + + var base_url = document.location.href; + + base_url = TListTBS_recup_form_param(idListe,base_url); + base_url = TListTBS_removeParam(base_url,'TListTBS['+encodeURIComponent(idListe)+'][orderBy]'); + + base_url = TListTBS_removeParam(base_url,'get-all-for-export'); + + document.location.href=TListTBS_modifyUrl(base_url,"TListTBS["+encodeURIComponent(idListe)+"][orderBy]["+encodeURIComponent(column)+"]","ASC"); +} +function TListTBS_modifyUrl(strURL,paramName,paramNewValue){ + if (strURL.indexOf(paramName+'=')!=-1){ + + var strFirstPart=strURL.substring(0,strURL.indexOf(paramName+'=',0))+paramName+'='; + var strLastPart=""; + if (strURL.indexOf('&',strFirstPart.length-1)>0) + strLastPart=strURL.substring(strURL.indexOf('&',strFirstPart.length-1),strURL.length); + strURL=strFirstPart+paramNewValue+strLastPart; + } + else{ + if (strURL.search('=')!=-1) // permet de verifier s'il y a dej� des param�tres dans l'URL + strURL+='&'+paramName+'='+paramNewValue; + else + strURL+='?'+paramName+'='+paramNewValue; + } + + return strURL; +} +function TListTBS_removeParam(strURL, paramMask) { + var cpt=0; + var url = ''; + + while(strURL.indexOf(paramMask)!=-1 && cpt++ <50){ + var strFirstPart= strURL.substring(0,strURL.indexOf(paramMask)-1); + + var strLastPart=''; + if (strURL.indexOf('&',strFirstPart.length+1)>0) { + strLastPart = strURL.substring(strURL.indexOf('&',strFirstPart.length+1),strURL.length); + } + + url = strFirstPart+strLastPart; + + } + + if(url=='')url = strURL; + + return url; +} + +function TListTBS_recup_form_param(idListe,base_url) { + + $('#'+idListe+' tr.barre-recherche [listviewtbs],#'+idListe+' tr.barre-recherche-head input,#'+idListe+' tr.barre-recherche-head select,#'+idListe+' div.tabsAction input[listviewtbs]').each(function(i,item) { + if($(item).attr("name")) { + base_url = TListTBS_modifyUrl(base_url, $(item).attr("name") , $(item).val()); + } + + }); + + return base_url; +} + +function TListTBS_GoToPage(idListe,pageNumber){ + + var base_url = document.location.href; + + base_url = TListTBS_recup_form_param(idListe,base_url); + base_url =TListTBS_modifyUrl(base_url,"TListTBS["+encodeURIComponent(idListe)+"][page]",pageNumber); + + base_url = TListTBS_removeParam(base_url,'get-all-for-export'); + + document.location.href=base_url; +} +function TListTBS_submitSearch(obj) { + + $(obj).closest('form').submit(); + //console.log($(obj).closest('form')); +} +function TListTBS_launch_downloadAs(mode,url,token,session_name) { + $('#listTBSdAS_export_form').remove(); + + $form = $('
'); + $form.append(''); + $form.append(''); + $form.append(''); + + $('body').append($form); + + $('#listTBSdAS_export_form').submit(); + +} + +function TListTBS_downloadAs(obj, mode,url,token,session_name) { + + $form = $(obj).closest('form'); + $div = $form.find('div.tabsAction'); + $div.append(''); + $div.append(''); + $div.append(''); + $div.append(''); + $div.append(''); + + TListTBS_submitSearch(obj); +} + +$(document).ready(function() { + $('tr.barre-recherche input').keypress(function(e) { + if(e.which == 13) { + + var id_list = $(this).closest('table').attr('id'); + + $('#'+id_list+' .list-search-link').click(); + + } + }); + + var $_GET = {}; + + document.location.search.replace(/\??(?:([^=]+)=([^&]*)&?)/g, function () { + function decode(s) { + return decodeURIComponent(s.split("+").join(" ")); + } + + $_GET[decode(arguments[1])] = decode(arguments[2]); + }); + + if(typeof $_GET["get-all-for-export"] != "undefined") { + TListTBS_launch_downloadAs($_GET["mode"],$_GET["url"],$_GET["token"],$_GET["session_name"]); + } + +}); diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index 60a8dde8652..f158ab260cf 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -61,7 +61,7 @@ class Inventory extends CoreObject */ public $title; - private $__fields=array( + protected $__fields=array( 'fk_warehouse'=>array('type'=>'integer','index'=>true) ,'entity'=>array('type'=>'integer','index'=>true) ,'status'=>array('type'=>'integer','index'=>true) @@ -69,20 +69,14 @@ class Inventory extends CoreObject ,'title'=>array('type'=>'string') ); - function __construct(&$db) + function __construct(DoliDB &$db) { $this->db = &$db; parent::init(); - $this->_init_vars(); - - $this->start(); - - $this->setChild('Inventorydet','fk_inventory'); - - $this->status = 0; + $this->status = 0; $this->entity = $conf->entity; $this->errors = array(); $this->amount = 0; @@ -94,12 +88,12 @@ class Inventory extends CoreObject usort($this->Inventorydet, array('Inventory', 'customSort')); } - function load(&$PDOdb, $id,$annexe = true) + function fetch($id,$annexe = true) { if(!$annexe) $this->withChild = false; - $res = parent::load($PDOdb, $id); + $res = parent::fetch($id); $this->sort_det(); $this->amount = 0; @@ -124,7 +118,7 @@ class Inventory extends CoreObject return $r; } - function changePMP(&$PDOdb) { + function changePMP() { foreach ($this->Inventorydet as $k => &$Inventorydet) { @@ -133,16 +127,9 @@ class Inventory extends CoreObject $Inventorydet->pmp = $Inventorydet->new_pmp; $Inventorydet->new_pmp = 0; - $PDOdb->Execute("UPDATE ".MAIN_DB_PREFIX."product as p SET pmp = ".$Inventorydet->pmp." + $db->query("UPDATE ".MAIN_DB_PREFIX."product as p SET pmp = ".$Inventorydet->pmp." WHERE rowid = ".$Inventorydet->fk_product ); - if((float)DOL_VERSION<4.0) { - - $PDOdb->Execute("UPDATE ".MAIN_DB_PREFIX."product_stock SET pmp=".$Inventorydet->pmp." - WHERE fk_entrepot = ".$this->fk_warehouse." AND fk_product = ".$Inventorydet->fk_product) ; - - } - } } @@ -150,15 +137,15 @@ class Inventory extends CoreObject } - function save(&$PDOdb) + function update() { //si on valide l'inventaire on sauvegarde le stock à cette instant if ($this->status) { - $this->regulate($PDOdb); + $this->regulate(); } - parent::save($PDOdb); + parent::update(); } function set_values($Tab) @@ -188,24 +175,24 @@ class Inventory extends CoreObject return parent::set_values($Tab); } - function deleteAllLine(&$PDOdb) { + function deleteAllLine() { foreach($this->Inventorydet as &$det) { $det->to_delete = true; } - $this->save($PDOdb); + $this->update(); $this->Inventorydet=array(); } - function add_product(&$PDOdb, $fk_product, $fk_entrepot='') { + function add_product($fk_product, $fk_entrepot='') { - $k = $this->addChild($PDOdb, 'Inventorydet'); + $k = $this->addChild('Inventorydet'); $det = &$this->Inventorydet[$k]; - $det->fk_inventory = $this->getId(); + $det->fk_inventory = $this->id; $det->fk_product = $fk_product; $det->fk_warehouse = empty($fk_entrepot) ? $this->fk_warehouse : $fk_entrepot; @@ -213,16 +200,16 @@ class Inventory extends CoreObject $date = $this->get_date('date_inventory', 'Y-m-d'); if(empty($date))$date = $this->get_date('date_cre', 'Y-m-d'); - $det->setStockDate($PDOdb, $date , $fk_entrepot); + $det->setStockDate( $date , $fk_entrepot); } - function correct_stock($fk_product, $id_entrepot, $nbpiece, $movement, $label='', $price=0, $inventorycode='') + function correct_stock($fk_product, $fk_warehouse, $nbpiece, $movement, $label='', $price=0, $inventorycode='') { global $conf, $db, $langs, $user; /* duplication method product to add datem */ - if ($id_entrepot) + if ($fk_warehouse) { $db->begin(); @@ -234,7 +221,7 @@ class Inventory extends CoreObject $datem = empty($conf->global->INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT) ? dol_now() : $this->date_inventory; $movementstock=new MouvementStock($db); - $result=$movementstock->_create($user,$fk_product,$id_entrepot,$op[$movement],$movement,$price,$label,$inventorycode, $datem); + $result=$movementstock->_create($user,$fk_product,$fk_warehouse,$op[$movement],$movement,$price,$label,$inventorycode, $datem); if ($result >= 0) { @@ -252,7 +239,7 @@ class Inventory extends CoreObject } } - function regulate(&$PDOdb) + function regulate() { global $db,$user,$langs,$conf; @@ -288,10 +275,10 @@ class Inventory extends CoreObject $nbpiece = abs($Inventorydet->qty_regulated); $movement = (int) ($Inventorydet->qty_view < $Inventorydet->qty_stock); // 0 = add ; 1 = remove - $href = dol_buildpath('/inventory/inventory.php?id='.$this->getId().'&action=view', 1); + $href = dol_buildpath('/inventory/inventory.php?id='.$this->id.'&action=view', 1); if(empty($this->title)) - $this->correct_stock($product->id, $Inventorydet->fk_warehouse, $nbpiece, $movement, $langs->trans('inventoryMvtStock', $href, $this->getId())); + $this->correct_stock($product->id, $Inventorydet->fk_warehouse, $nbpiece, $movement, $langs->trans('inventoryMvtStock', $href, $this->id)); else $this->correct_stock($product->id, $Inventorydet->fk_warehouse, $nbpiece, $movement, $langs->trans('inventoryMvtStockWithNomInventaire', $href, $this->title)); } @@ -306,16 +293,14 @@ class Inventory extends CoreObject } static function getLink($id) { - global $langs; + global $langs,$db; - $PDOdb=new TPDOdb; + $i = new Inventory($db); + $i->fetch($id, false); - $i = new Inventory; - $i->load($PDOdb, $id, false); + $title = !empty($i->title) ? $i->title : $langs->trans('inventoryTitle').' '.$i->id; - $title = !empty($i->title) ? $i->title : $langs->trans('inventoryTitle').' '.$i->getId(); - - return ''.img_picto('','object_list.png','',0).' '.$title.''; + return ''.img_picto('','object_list.png','',0).' '.$title.''; } @@ -354,7 +339,7 @@ class Inventorydet extends CoreObject public $pa; public $new_pmp; - private $__fields=array( + protected $__fields=array( 'fk_inventory'=>array('type'=>'int') ,'fk_warehouse'=>array('type'=>'int') ,'fk_product'=>array('type'=>'int') @@ -385,11 +370,11 @@ class Inventorydet extends CoreObject } - function load(&$PDOdb, $id) + function fetch($id) { global $conf; - $res = parent::load($PDOdb, $id); + $res = parent::fetch($id); $this->load_product(); $this->fetch_current_pa(); @@ -431,9 +416,9 @@ class Inventorydet extends CoreObject AND datem<='".$date." 23:59:59' ORDER BY datem DESC LIMIT 1"; - $PDOdb->Execute($sql); + $res = $db->query($sql); - if($obj = $PDOdb->Get_line()) { + if($obj = $db->fetch_object($res)) { $last_pa = $obj->price; } @@ -467,7 +452,7 @@ class Inventorydet extends CoreObject ORDER BY datem DESC"; //echo $sql.'
'; - $PDOdb->Execute($sql); + $db->query($sql); $TMouvementStock = $PDOdb->Get_All(); $laststock = $stock; $lastpmp = $pmp; From e1a5a90f0a72bcdd5562d76978460043d16a6b00 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Dec 2016 00:15:21 +0100 Subject: [PATCH 0055/1163] NEW Uploaded files are indexed into database --- htdocs/core/class/html.formfile.class.php | 79 +++++++++++---- htdocs/core/lib/files.lib.php | 98 +++++++++++++++++-- .../tpl/document_actions_post_headers.tpl.php | 5 +- htdocs/ecm/class/ecmfiles.class.php | 17 +++- .../install/mysql/migration/5.0.0-6.0.0.sql | 1 + .../mysql/tables/llx_ecm_files.key.sql | 4 +- htdocs/install/mysql/tables/llx_ecm_files.sql | 6 +- 7 files changed, 173 insertions(+), 37 deletions(-) diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 60ed409fc7f..b33ea772aa8 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -863,7 +863,7 @@ class FormFile * @param string $modulepart Value for modulepart used by download or viewimage wrapper * @param string $param Parameters on sort links (param must start with &, example &aaa=bbb&ccc=ddd) * @param int $forcedownload Force to open dialog box "Save As" when clicking on file - * @param string $relativepath Relative path of docs (autodefined if not provided) + * @param string $relativepath Relative path of docs (autodefined if not provided), relative to module. * @param int $permonobject Permission on object (so permission to delete or crop document) * @param int $useinecm Change output for use in ecm module * @param string $textifempty Text to show if filearray is empty ('NoFileFound' if not defined) @@ -871,23 +871,40 @@ class FormFile * @param string $title Title before list * @param string $url Full url to use for click links ('' = autodetect) * @param int $showrelpart 0=Show only filename (default), 1=Show first level 1 dir - * @param int $permtoeditline Permission to edit document line (-1 is deprecated) + * @param int $permtoeditline Permission to edit document line (You msut provide a value, -1 is deprecated and must not be used any more) * @return int <0 if KO, nb of files shown if OK + * @return string $upload_dir Full path directory so we can know dir relative to MAIN_DATA_ROOT. */ - function list_of_documents($filearray,$object,$modulepart,$param='',$forcedownload=0,$relativepath='',$permonobject=1,$useinecm=0,$textifempty='',$maxlength=0,$title='',$url='', $showrelpart=0, $permtoeditline=-1) + function list_of_documents($filearray,$object,$modulepart,$param='',$forcedownload=0,$relativepath='',$permonobject=1,$useinecm=0,$textifempty='',$maxlength=0,$title='',$url='', $showrelpart=0, $permtoeditline=-1,$upload_dir='') { global $user, $conf, $langs, $hookmanager; global $bc; global $sortfield, $sortorder, $maxheightmini; + // Define relative path used to store the file + if (empty($relativepath)) + { + $relativepath=(! empty($object->ref)?dol_sanitizeFileName($object->ref):'').'/'; + if ($object->element == 'invoice_supplier') $relativepath=get_exdir($object->id,2,0,0,$object,'invoice_supplier').$relativepath; // TODO Call using a defined value for $relativepath + if ($object->element == 'project_task') $relativepath='Call_not_supported_._Call_function_using_a_defined_relative_path_.'; + } + // For backward compatiblity, we detect file is stored into an old path + if (! empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO) && $file['level1name'] == 'photos') + { + $relativepath=preg_replace('/^.*\/produit\//','',$file['path']).'/'; + } + // Defined relative dir to DOL_DATA_ROOT + $rel_dir = preg_replace('/^'.preg_quote(DOL_DATA_ROOT,'/').'/', '', $upload_dir); + $rel_dir = preg_replace('/^[\\/]/','',$rel_dir); + $hookmanager->initHooks(array('formfile')); - $parameters=array( 'filearray' => $filearray, 'modulepart'=> $modulepart, 'param' => $param, 'forcedownload' => $forcedownload, - 'relativepath' => $relativepath, + 'relativepath' => $relativepath, // relative filename to module dir + 'reldir' => $rel_dir, // relative dirname to DOL_DATA_ROOT 'permtodelete' => $permonobject, 'useinecm' => $useinecm, 'textifempty' => $textifempty, @@ -942,10 +959,42 @@ class FormFile print_liste_field_titre(''); print "\n"; + // Get list of files stored into database for same directory + $filearrayindatabase = dol_dir_list_in_database($rel_dir, '', null, 'name', SORT_ASC); + + //var_dump($filearray); + //var_dump($filearrayindatabase); + + // Complete filearray with properties found into $filearrayindatabase + foreach($filearray as $key => $val) + { + $found=0; + // Search if it exists into $filearrayindatabase + foreach($filearrayindatabase as $key2 => $val2) + { + if ($filearrayindatabase[$key2]['name'] == $filearray[$key]['name']) + { + $filearray[$key]['position']=$filearrayindatabase[$key2]['position']; + $filearray[$key]['cover']=$filearrayindatabase[$key2]['cover']; + $filearray[$key]['acl']=$filearrayindatabase[$key2]['acl']; + $found=1; + break; + } + } + if (! $found) + { + $filearray[$key]['position']=999999; // File not indexed are at end. So if we add a file, it will not replace existing in position + $filearray[$key]['cover']=0; + $filearray[$key]['acl']=''; + } + } + + $filearray=dol_sort_array($filearray, 'position'); + //var_dump($filearray); + $nboffiles=count($filearray); - if ($nboffiles > 0) include_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php'; - + $var=true; foreach($filearray as $key => $file) // filearray must be only files here { @@ -953,23 +1002,13 @@ class FormFile && $file['name'] != '..' && ! preg_match('/\.meta$/i',$file['name'])) { - // Define relative path used to store the file - if (empty($relativepath)) - { - $relativepath=(! empty($object->ref)?dol_sanitizeFileName($object->ref):'').'/'; - if ($object->element == 'invoice_supplier') $relativepath=get_exdir($object->id,2,0,0,$object,'invoice_supplier').$relativepath; // TODO Call using a defined value for $relativepath - if ($object->element == 'project_task') $relativepath='Call_not_supported_._Call_function_using_a_defined_relative_path_.'; - } - // For backward compatiblity, we detect file is stored into an old path - if (! empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO) && $file['level1name'] == 'photos') - { - $relativepath=preg_replace('/^.*\/produit\//','',$file['path']).'/'; - } $var=!$var; $editline=0; - print ''."\n"; + print ''."\n"; + // Do we have entry into database ? + print ''."\n"; print ''; print ''; diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index cc22f44ec48..059448b35dc 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -41,7 +41,7 @@ function dol_basename($pathfile) * Scan a directory and return a list of files/directories. * Content for string is UTF8 and dir separator is "/". * - * @param string $path Starting path from which to search + * @param string $path Starting path from which to search. This is a full path. * @param string $types Can be "directories", "files", or "all" * @param int $recursive Determines whether subdirectories are searched * @param string $filter Regex filter to restrict list. This regex value must be escaped for '/', since this char is used for preg_match function @@ -50,7 +50,8 @@ function dol_basename($pathfile) * @param string $sortorder Sort order (SORT_ASC, SORT_DESC) * @param int $mode 0=Return array minimum keys loaded (faster), 1=Force all keys like date and size to be loaded (slower), 2=Force load of date only, 3=Force load of size only * @param int $nohook Disable all hooks - * @return array Array of array('name'=>'xxx','fullname'=>'/abc/xxx','date'=>'yyy','size'=>99,'type'=>'dir|file') + * @return array Array of array('name'=>'xxx','fullname'=>'/abc/xxx','date'=>'yyy','size'=>99,'type'=>'dir|file',...) + * @see dol_dir_list_indatabase */ function dol_dir_list($path, $types="all", $recursive=0, $filter="", $excludefilter="", $sortcriteria="name", $sortorder=SORT_ASC, $mode=0, $nohook=false) { @@ -205,6 +206,82 @@ function dol_dir_list($path, $types="all", $recursive=0, $filter="", $excludefil } +/** + * Scan a directory and return a list of files/directories. + * Content for string is UTF8 and dir separator is "/". + * + * @param string $path Starting path from which to search + * @param string $filter Regex filter to restrict list. This regex value must be escaped for '/', since this char is used for preg_match function + * @param array|null $excludefilter Array of Regex for exclude filter (example: array('(\.meta|_preview\.png)$','^\.')) + * @param string $sortcriteria Sort criteria ("","fullname","name","date","size") + * @param string $sortorder Sort order (SORT_ASC, SORT_DESC) + * @param int $mode 0=Return array minimum keys loaded (faster), 1=Force all keys like description + * @return array Array of array('name'=>'xxx','fullname'=>'/abc/xxx','type'=>'dir|file',...) + * @see dol_dir_list + */ +function dol_dir_list_in_database($path, $filter="", $excludefilter=null, $sortcriteria="name", $sortorder=SORT_ASC, $mode=0) +{ + global $conf, $db; + + $sql=" SELECT label, entity, filename, filepath, fullpath_orig, keywords, cover, gen_or_uploaded, extraparams, date_c, date_m, fk_user_c, fk_user_m, acl, position"; + if ($mode) $sql.=", description"; + $sql.=" FROM ".MAIN_DB_PREFIX."ecm_files"; + $sql.=" WHERE filepath = '".$db->escape($path)."'"; + $sql.=" AND entity = ".$conf->entity; + + $resql = $db->query($sql); + if ($resql) + { + $file_list=array(); + $num = $db->num_rows($resql); + $i = 0; + while ($i < $num) + { + $obj = $db->fetch_object($resql); + if ($obj) + { + preg_match('/([^\/]+)\/[^\/]+$/',DOL_DATA_ROOT.'/'.$obj->filepath.'/'.$obj->filename,$reg); + $level1name=(isset($reg[1])?$reg[1]:''); + $file_list[] = array( + "name" => $obj->filename, + "path" => DOL_DATA_ROOT.'/'.$obj->filepath, + "level1name" => $level1name, + "fullname" => DOL_DATA_ROOT.'/'.$obj->filepath.'/'.$obj->filename, + "fullpath_orig" => $obj->fullpath_orig, + "date_c" => $db->jdate($obj->date_c), + "date_m" => $db->jdate($obj->date_m), + "type" => 'file', + "keywords" => $obj->keywords, + "cover" => $obj->cover, + "position" => (int) $obj->position, + "acl" => $obj->acl + ); + } + $i++; + } + + // Obtain a list of columns + if (! empty($sortcriteria)) + { + $myarray=array(); + foreach ($file_list as $key => $row) + { + $myarray[$key] = (isset($row[$sortcriteria])?$row[$sortcriteria]:''); + } + // Sort the data + if ($sortorder) array_multisort($myarray, $sortorder, $file_list); + } + + return $file_list; + } + else + { + dol_print_error($db); + return array(); + } +} + + /** * Fast compare of 2 files identified by their properties ->name, ->date and ->size * @@ -751,7 +828,7 @@ function dol_delete_file($file,$disableglob=0,$nophperrors=0,$nohook=0,$object=n $rel_filetodelete = preg_replace('/^'.preg_quote(DOL_DATA_ROOT,'/').'/', '', $filename); if (! preg_match('/\/temp\//', $rel_filetodelete)) // If not a tmp file { - $rel_filetodelete = preg_replace('/^\//', '', $rel_filetodelete); + $rel_filetodelete = preg_replace('/^[\\/]/', '', $rel_filetodelete); dol_syslog("Try to remove also entries in database for full relative path = ".$rel_filetodelete, LOG_DEBUG); include DOL_DOCUMENT_ROOT.'/ecm/class/ecmfiles.class.php'; @@ -1083,10 +1160,10 @@ function dol_add_file_process($upload_dir, $allowoverwrite=0, $donotupdatesessio else // Update table of files { $rel_dir = preg_replace('/^'.preg_quote(DOL_DATA_ROOT,'/').'/', '', $upload_dir); - if (! preg_match('/\/temp\//', $rel_dir)) // If not a tmp file + if (! preg_match('/[\\/]temp[\\/]/', $rel_dir)) // If not a tmp file { - $rel_dir = preg_replace('/\/$/', '', $rel_dir); - $rel_dir = preg_replace('/^\//', '', $rel_dir); + $rel_dir = preg_replace('/[\\/]$/', '', $rel_dir); + $rel_dir = preg_replace('/^[\\/]/', '', $rel_dir); include DOL_DOCUMENT_ROOT.'/ecm/class/ecmfiles.class.php'; $ecmfile=new EcmFiles($db); @@ -1384,11 +1461,11 @@ function dol_most_recent_file($dir,$regexfilter='',$excludefilter=array('(\.meta * Security check when accessing to a document (used by document.php, viewimage.php and webservices) * * @param string $modulepart Module of document ('module', 'module_user_temp', 'module_user' or 'module_temp') - * @param string $original_file Relative path with filename + * @param string $original_file Relative path with filename, relative to modulepart. * @param string $entity Restrict onto entity * @param User $fuser User object (forced) * @param string $refname Ref of object to check permission for external users (autodetect if not provided) - * @return mixed Array with access information : accessallowed & sqlprotectagainstexternals & original_file (as full path name) + * @return mixed Array with access information : 'accessallowed' & 'sqlprotectagainstexternals' & 'original_file' (as a full path name) */ function dol_check_secure_access_document($modulepart,$original_file,$entity,$fuser='',$refname='') { @@ -1682,7 +1759,7 @@ function dol_check_secure_access_document($modulepart,$original_file,$entity,$fu $accessallowed=1; } $original_file=$conf->projet->dir_output.'/'.$original_file; - $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."projet WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; + $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."projet WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('project', 1).")"; } else if ($modulepart == 'project_task') { @@ -1691,7 +1768,7 @@ function dol_check_secure_access_document($modulepart,$original_file,$entity,$fu $accessallowed=1; } $original_file=$conf->projet->dir_output.'/'.$original_file; - $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."projet WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; + $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."projet WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('project', 1).")"; } // Wrapping for interventions else if ($modulepart == 'fichinter') @@ -1806,6 +1883,7 @@ function dol_check_secure_access_document($modulepart,$original_file,$entity,$fu $accessallowed=1; } $original_file=$conf->contrat->dir_output.'/'.$original_file; + $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."contrat WHERE ref='".$db->escape($refname)."' AND entity IN (".getEntity('contract', 1).")"; } // Wrapping pour les dons diff --git a/htdocs/core/tpl/document_actions_post_headers.tpl.php b/htdocs/core/tpl/document_actions_post_headers.tpl.php index 83d38793072..546cec91142 100644 --- a/htdocs/core/tpl/document_actions_post_headers.tpl.php +++ b/htdocs/core/tpl/document_actions_post_headers.tpl.php @@ -79,7 +79,7 @@ $formfile->list_of_documents( $modulepart, $param, 0, - $relativepathwithnofile, // relative path with no file. For example "moduledir/0/1" + $relativepathwithnofile, // relative path with no file. For example "0/1" $permission, 0, '', @@ -87,7 +87,8 @@ $formfile->list_of_documents( '', '', 0, - $permtoedit + $permtoedit, + $upload_dir ); print "
"; diff --git a/htdocs/ecm/class/ecmfiles.class.php b/htdocs/ecm/class/ecmfiles.class.php index 0133bff2580..0e1885fa62f 100644 --- a/htdocs/ecm/class/ecmfiles.class.php +++ b/htdocs/ecm/class/ecmfiles.class.php @@ -136,6 +136,21 @@ class EcmFiles //extends CommonObject } if (empty($this->date_c)) $this->date_c = dol_now(); + $maxposition=0; + if (empty($this->position)) // Get max used + { + $sql = "SELECT MAX(position) as maxposition FROM " . MAIN_DB_PREFIX . $this->table_element; + $sql.= " WHERE filepath ='".$this->filepath."'"; + + $resql = $this->db->query($sql); + if ($resql) + { + $obj = $this->db->fetch_object($resql); + $maxposition = (int) $obj->maxposition; + } + else dol_print_error($this->db); + } + $maxposition=$maxposition+1; // Check parameters // Put here code to add control on parameters values @@ -167,7 +182,7 @@ class EcmFiles //extends CommonObject $sql .= ' '.(! isset($this->description)?'NULL':"'".$this->db->escape($this->description)."'").','; $sql .= ' '.(! isset($this->keywords)?'NULL':"'".$this->db->escape($this->keywords)."'").','; $sql .= ' '.(! isset($this->cover)?'NULL':"'".$this->db->escape($this->cover)."'").','; - $sql .= ' '.(! isset($this->position)?'0':$this->db->escape($this->position)).','; + $sql .= ' '.$maxposition.','; $sql .= ' '.(! isset($this->gen_or_uploaded)?'NULL':"'".$this->db->escape($this->gen_or_uploaded)."'").','; $sql .= ' '.(! isset($this->extraparams)?'NULL':"'".$this->db->escape($this->extraparams)."'").','; $sql .= ' '."'".$this->db->idate($this->date_c)."'".','; diff --git a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql index 9c6aefdec6d..73d209b0cdc 100644 --- a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql +++ b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql @@ -27,3 +27,4 @@ ALTER TABLE llx_ecm_files CHANGE COLUMN fullpath filepath varchar(750); ALTER TABLE llx_ecm_files ADD COLUMN position integer; +ALTER TABLE llx_ecm_files CHANGE COLUMN keyword keyword varchar(750); diff --git a/htdocs/install/mysql/tables/llx_ecm_files.key.sql b/htdocs/install/mysql/tables/llx_ecm_files.key.sql index 9b1f4fcf164..2b8b1348ba3 100644 --- a/htdocs/install/mysql/tables/llx_ecm_files.key.sql +++ b/htdocs/install/mysql/tables/llx_ecm_files.key.sql @@ -17,5 +17,7 @@ -- ============================================================================ -ALTER TABLE llx_ecm_files ADD UNIQUE INDEX uk_ecm_files (label, entity); +ALTER TABLE llx_ecm_files ADD UNIQUE INDEX uk_ecm_files (label, entity); -- label is a md5 --ALTER TABLE llx_ecm_files ADD UNIQUE INDEX uk_ecm_files_fullpath(fullpath); Disabled, mysql limits size of index + + diff --git a/htdocs/install/mysql/tables/llx_ecm_files.sql b/htdocs/install/mysql/tables/llx_ecm_files.sql index 7a30066c2b2..45157cdf959 100644 --- a/htdocs/install/mysql/tables/llx_ecm_files.sql +++ b/htdocs/install/mysql/tables/llx_ecm_files.sql @@ -19,13 +19,13 @@ CREATE TABLE llx_ecm_files ( rowid integer AUTO_INCREMENT PRIMARY KEY, - label varchar(64) NOT NULL, + label varchar(64) NOT NULL, -- label contains a md5 entity integer DEFAULT 1 NOT NULL, -- multi company id - filepath varchar(750) NOT NULL, -- relative to dolibarr document dir. example module/def + filepath varchar(750) NOT NULL, -- relative to dolibarr document dir. Example module/def filename varchar(255) NOT NULL, -- file name only without any directory fullpath_orig varchar(750), -- full path of original filename, when file is uploaded from a local computer description text, - keywords text, -- list of keywords, separated with comma + keywords varchar(750), -- list of keywords, separated with comma. Must be limited to most important keywords. cover text, -- is this file a file to use for a cover position integer, -- position of file among others gen_or_uploaded varchar(12), -- 'generated' or 'uploaded' From 902169cb665a2a925a92294407908a034a27eb84 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 13 Dec 2016 00:40:12 +0100 Subject: [PATCH 0056/1163] Can sort on position on list of documents --- htdocs/core/class/html.formfile.class.php | 98 +++++++++++-------- .../tpl/document_actions_post_headers.tpl.php | 4 +- 2 files changed, 58 insertions(+), 44 deletions(-) diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index b33ea772aa8..46eeb7eaf51 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -856,26 +856,28 @@ class FormFile /** - * Show list of documents in a directory + * Show list of documents in $filearray (may be they are all in same directory but may not) * - * @param array $filearray Array of files loaded by dol_dir_list('files') function before calling this - * @param Object $object Object on which document is linked to - * @param string $modulepart Value for modulepart used by download or viewimage wrapper + * @param array $filearray Array of files loaded by dol_dir_list('files') function before calling this. + * @param Object $object Object on which document is linked to. + * @param string $modulepart Value for modulepart used by download or viewimage wrapper. * @param string $param Parameters on sort links (param must start with &, example &aaa=bbb&ccc=ddd) - * @param int $forcedownload Force to open dialog box "Save As" when clicking on file - * @param string $relativepath Relative path of docs (autodefined if not provided), relative to module. + * @param int $forcedownload Force to open dialog box "Save As" when clicking on file. + * @param string $relativepath Relative path of docs (autodefined if not provided), relative to module dir, not to MAIN_DATA_ROOT. * @param int $permonobject Permission on object (so permission to delete or crop document) * @param int $useinecm Change output for use in ecm module * @param string $textifempty Text to show if filearray is empty ('NoFileFound' if not defined) - * @param int $maxlength Maximum length of file name shown + * @param int $maxlength Maximum length of file name shown. * @param string $title Title before list * @param string $url Full url to use for click links ('' = autodetect) * @param int $showrelpart 0=Show only filename (default), 1=Show first level 1 dir - * @param int $permtoeditline Permission to edit document line (You msut provide a value, -1 is deprecated and must not be used any more) + * @param int $permtoeditline Permission to edit document line (You must provide a value, -1 is deprecated and must not be used any more) + * @param string $upload_dir Full path directory so we can know dir relative to MAIN_DATA_ROOT. Fill this if you want to complete file data with database indexes. + * @param string $sortfield Sort field ('name', 'size', 'position', ...) + * @param string $sortorder Sort order ('ASC' or 'DESC') * @return int <0 if KO, nb of files shown if OK - * @return string $upload_dir Full path directory so we can know dir relative to MAIN_DATA_ROOT. */ - function list_of_documents($filearray,$object,$modulepart,$param='',$forcedownload=0,$relativepath='',$permonobject=1,$useinecm=0,$textifempty='',$maxlength=0,$title='',$url='', $showrelpart=0, $permtoeditline=-1,$upload_dir='') + function list_of_documents($filearray,$object,$modulepart,$param='',$forcedownload=0,$relativepath='',$permonobject=1,$useinecm=0,$textifempty='',$maxlength=0,$title='',$url='', $showrelpart=0, $permtoeditline=-1,$upload_dir='',$sortfield='',$sortorder='ASC') { global $user, $conf, $langs, $hookmanager; global $bc; @@ -894,9 +896,13 @@ class FormFile $relativepath=preg_replace('/^.*\/produit\//','',$file['path']).'/'; } // Defined relative dir to DOL_DATA_ROOT - $rel_dir = preg_replace('/^'.preg_quote(DOL_DATA_ROOT,'/').'/', '', $upload_dir); - $rel_dir = preg_replace('/^[\\/]/','',$rel_dir); - + $relativedir = ''; + if ($upload_dir) + { + $relativedir = preg_replace('/^'.preg_quote(DOL_DATA_ROOT,'/').'/', '', $upload_dir); + $relativedir = preg_replace('/^[\\/]/','',$relativedir); + } + $hookmanager->initHooks(array('formfile')); $parameters=array( 'filearray' => $filearray, @@ -904,7 +910,7 @@ class FormFile 'param' => $param, 'forcedownload' => $forcedownload, 'relativepath' => $relativepath, // relative filename to module dir - 'reldir' => $rel_dir, // relative dirname to DOL_DATA_ROOT + 'relativedir' => $relativedir, // relative dirname to DOL_DATA_ROOT 'permtodelete' => $permonobject, 'useinecm' => $useinecm, 'textifempty' => $textifempty, @@ -960,37 +966,43 @@ class FormFile print "\n"; // Get list of files stored into database for same directory - $filearrayindatabase = dol_dir_list_in_database($rel_dir, '', null, 'name', SORT_ASC); - - //var_dump($filearray); - //var_dump($filearrayindatabase); - - // Complete filearray with properties found into $filearrayindatabase - foreach($filearray as $key => $val) + if ($relativedir) { - $found=0; - // Search if it exists into $filearrayindatabase - foreach($filearrayindatabase as $key2 => $val2) - { - if ($filearrayindatabase[$key2]['name'] == $filearray[$key]['name']) - { - $filearray[$key]['position']=$filearrayindatabase[$key2]['position']; - $filearray[$key]['cover']=$filearrayindatabase[$key2]['cover']; - $filearray[$key]['acl']=$filearrayindatabase[$key2]['acl']; - $found=1; - break; - } - } - if (! $found) - { - $filearray[$key]['position']=999999; // File not indexed are at end. So if we add a file, it will not replace existing in position - $filearray[$key]['cover']=0; - $filearray[$key]['acl']=''; - } + $filearrayindatabase = dol_dir_list_in_database($relativedir, '', null, 'name', SORT_ASC); + + //var_dump($filearray); + //var_dump($filearrayindatabase); + + // Complete filearray with properties found into $filearrayindatabase + foreach($filearray as $key => $val) + { + $found=0; + // Search if it exists into $filearrayindatabase + foreach($filearrayindatabase as $key2 => $val2) + { + if ($filearrayindatabase[$key2]['name'] == $filearray[$key]['name']) + { + $filearray[$key]['position']=$filearrayindatabase[$key2]['position']; + $filearray[$key]['cover']=$filearrayindatabase[$key2]['cover']; + $filearray[$key]['acl']=$filearrayindatabase[$key2]['acl']; + $found=1; + break; + } + } + if (! $found) + { + $filearray[$key]['position']=999999; // File not indexed are at end. So if we add a file, it will not replace existing in position + $filearray[$key]['cover']=0; + $filearray[$key]['acl']=''; + } + } + + if ($sortfield && $sortorder) + { + $filearray=dol_sort_array($filearray, $sortfield, $sortorder); + } + //var_dump($filearray); } - - $filearray=dol_sort_array($filearray, 'position'); - //var_dump($filearray); $nboffiles=count($filearray); if ($nboffiles > 0) include_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php'; diff --git a/htdocs/core/tpl/document_actions_post_headers.tpl.php b/htdocs/core/tpl/document_actions_post_headers.tpl.php index 546cec91142..a28f46f58f2 100644 --- a/htdocs/core/tpl/document_actions_post_headers.tpl.php +++ b/htdocs/core/tpl/document_actions_post_headers.tpl.php @@ -88,7 +88,9 @@ $formfile->list_of_documents( '', 0, $permtoedit, - $upload_dir + $upload_dir, + $sortfield, + $sortorder ); print "
"; From baf1acb4fdb861bf8923f9dfc65adae22befd088 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Tue, 13 Dec 2016 09:17:43 +0100 Subject: [PATCH 0057/1163] debug --- htdocs/core/class/coreobject.class.php | 80 +++++++++++++++++++--- htdocs/core/class/listview.class.php | 28 +++++--- htdocs/inventory/class/inventory.class.php | 17 +++-- 3 files changed, 101 insertions(+), 24 deletions(-) diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index 7d784073412..dc52fdd9bf5 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -25,6 +25,8 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commonobject.class.php'; class CoreObject extends CommonObject { + public $db; + protected $__fields=array(); /** * Constructor @@ -33,8 +35,6 @@ class CoreObject extends CommonObject { */ function __construct(DoliDB &$db) { - $this->db = &$db; - $this->date_0 = '1001-01-01 00:00:00'; //TODO there is a solution for this ? } @@ -179,27 +179,55 @@ class CoreObject extends CommonObject { return implode(',', $keys); } + private function set_vars_by_db(&$obj){ + + foreach ($this->__fields as $field=>$info) { + if($this->is_date($info)){ + if($obj->{$field} === '0000-00-00 00:00:00' || $obj->{$field} === '1000-01-01 00:00:00')$this->{$field} = 0; + else $this->{$field} = strtotime($obj->{$field}); + } + elseif($this->is_array($info)){ + $this->{$field} = @unserialize($obj->{$field}); + //HACK POUR LES DONNES NON UTF8 + if($this->{$field}===FALSE)@unserialize(utf8_decode($obj->{$field})); + } + elseif($this->is_int($info)){ + $this->{$field} = (int)$obj->{$field}; + } + elseif($this->is_float($info)){ + $this->{$field} = (double)$obj->{$field}; + } + elseif($this->is_null($info)){ + $val = $obj->{$field}; + // zero is not null + $this->{$field} = (is_null($val) || (empty($val) && $val!==0 && $val!=='0')?null:$val); + } + else{ + $this->{$field} = $obj->{$field}; + } + + } + } + public function fetch($id, $loadChild = true) { if(empty($id)) return false; $sql = 'SELECT '.$this->get_field_list().',datec,tms - FROM '.$this->table_element.' + FROM '.MAIN_DB_PREFIX.$this->table_element.' WHERE rowid='.$id; - + var_dump($sql); $res = $this->db->query( $sql ); - var_dump($sql); - if($obj = $db->fetch_object($res)) { + + if($obj = $this->db->fetch_object($res)) { $this->rowid=$id; - $this->set_vars_by_db($db); + $this->set_vars_by_db($obj); $this->datec=$this->db->idate($obj->datec); $this->tms=$this->db->idate($obj->tms); - if($loadChild) $this->loadChild($db); - - $this->run_trigger($db, 'load'); + if($loadChild) $this->fetchChild(); return $this->id; } @@ -208,6 +236,38 @@ class CoreObject extends CommonObject { } } + + public function fetchChild() { + if($this->withChild && !empty($this->childtables) && !empty($this->fk_element)) { + + foreach($this->childtables as &$childTable) { + + $className = ucfirst($childTable); + + $this->{$className}=array(); + + $sql = " SELECT rowid FROM ".MAIN_DB_PREFIX.$childTable." WHERE ".$this->fk_element."=".$this->rowid; + $res = $this->db->query($sql); + if($res) { + + while($obj = $db->fetch_object($res)) { + + $o=new $className($this->db); + $o->fetch($obj->rowid); + + $this->{$className}[] = $o; + + } + + } + + } + + } + + } + + public function update() { diff --git a/htdocs/core/class/listview.class.php b/htdocs/core/class/listview.class.php index 0cedad18855..8df337b699c 100644 --- a/htdocs/core/class/listview.class.php +++ b/htdocs/core/class/listview.class.php @@ -820,7 +820,6 @@ class Listview { } private function parse_sql( &$THeader, &$TField,&$TParam, $sql) { - global $db; $this->sql = $this->limitSQL($sql, $TParam); @@ -828,17 +827,26 @@ class Listview { $this->THideFlip = array_flip($TParam['hide']); - $res = $db->query($this->sql); - $first=true; - while($currentLine = $db->fetch_object($res)) { - if($first) { - $this->init_entete($THeader, $TParam, $currentLine); - $first = false; + $res = $this->db->query($this->sql); + if($res!==false) { + + dol_syslog(get_class($this)."::parse_sql id=".$this->id." sql=".$this->sql, LOG_DEBUG); + + $first=true; + while($currentLine = $this->db->fetch_object($res)) { + if($first) { + $this->init_entete($THeader, $TParam, $currentLine); + $first = false; + } + + $this->set_line($TField, $TParam, $currentLine); + } - $this->set_line($TField, $TParam, $currentLine); - } - + else { + dol_syslog(get_class($this)."::parse_sql id=".$this->id." sql=".$this->sql, LOG_ERR); + } + } } diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index f158ab260cf..d092a876ad2 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -69,6 +69,8 @@ class Inventory extends CoreObject ,'title'=>array('type'=>'string') ); + public $db; + function __construct(DoliDB &$db) { @@ -292,15 +294,22 @@ class Inventory extends CoreObject return 1; } + public function getNomUrl($picto = 1) { + global $langs; + + $title = !empty($this->title) ? $this->title : $langs->trans('inventoryTitle').' '.$this->id; + + return ''.($picto ? img_picto('','object_list.png','',0).' ' : '').$title.''; + + } + static function getLink($id) { global $langs,$db; $i = new Inventory($db); $i->fetch($id, false); - $title = !empty($i->title) ? $i->title : $langs->trans('inventoryTitle').' '.$i->id; - - return ''.img_picto('','object_list.png','',0).' '.$title.''; + return $i->getNomUrl(); } @@ -309,7 +318,7 @@ class Inventory extends CoreObject if($type=='All') { - $sql="SELECT i.rowid, e.label, i.date_inventory, i.fk_warehouse, i.date_cre, i.date_maj, i.status + $sql="SELECT i.rowid, e.label, i.date_inventory, i.fk_warehouse, i.datec, i.tms, i.status FROM ".MAIN_DB_PREFIX."inventory i LEFT JOIN ".MAIN_DB_PREFIX."entrepot e ON (e.rowid = i.fk_warehouse) WHERE i.entity=".(int) $conf->entity; From efc22a4cd8b8dc4b6ea9c6be07c37eba0466def6 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Tue, 13 Dec 2016 09:49:59 +0100 Subject: [PATCH 0058/1163] include default list conception --- htdocs/core/class/coreobject.class.php | 7 +- htdocs/core/class/listview.class.php | 159 +++++++++++++-------- htdocs/inventory/class/inventory.class.php | 11 +- 3 files changed, 113 insertions(+), 64 deletions(-) diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index dc52fdd9bf5..96cbbb89a88 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -27,6 +27,8 @@ class CoreObject extends CommonObject { public $db; + public $withChild = true; + protected $__fields=array(); /** * Constructor @@ -216,7 +218,7 @@ class CoreObject extends CommonObject { $sql = 'SELECT '.$this->get_field_list().',datec,tms FROM '.MAIN_DB_PREFIX.$this->table_element.' WHERE rowid='.$id; - var_dump($sql); + $res = $this->db->query( $sql ); if($obj = $this->db->fetch_object($res)) { @@ -238,8 +240,8 @@ class CoreObject extends CommonObject { } public function fetchChild() { - if($this->withChild && !empty($this->childtables) && !empty($this->fk_element)) { + if($this->withChild && !empty($this->childtables) && !empty($this->fk_element)) { foreach($this->childtables as &$childTable) { $className = ucfirst($childTable); @@ -248,6 +250,7 @@ class CoreObject extends CommonObject { $sql = " SELECT rowid FROM ".MAIN_DB_PREFIX.$childTable." WHERE ".$this->fk_element."=".$this->rowid; $res = $this->db->query($sql); + if($res) { while($obj = $db->fetch_object($res)) { diff --git a/htdocs/core/class/listview.class.php b/htdocs/core/class/listview.class.php index 8df337b699c..db66f9f15a3 100644 --- a/htdocs/core/class/listview.class.php +++ b/htdocs/core/class/listview.class.php @@ -41,33 +41,30 @@ class Listview { if(!isset($TParam['orderby']['noOrder']))$TParam['orderby']['noOrder']=array(); if(!isset($TParam['no-select'])) $TParam['no-select'] = 1; - if(!isset($TParam['liste']))$TParam['liste']=array(); - $TParam['liste'] = array_merge(array( - 'messageNothing'=>"Il n'y a aucun élément à afficher." - ,'picto_precedent'=>'<' - ,'picto_suivant'=>'>' - ,'order_down'=>img_down() - ,'order_up'=>img_up() + if(!isset($TParam['list']))$TParam['list']=array(); + $TParam['list'] = array_merge(array( + 'messageNothing'=>$langs->trans('ListMessageNothingToShow') ,'noheader'=>0 ,'useBottomPagination'=>0 ,'image'=>'' - ,'titre'=>'Liste' + ,'title'=>$langs->trans('List') ,'orderDown'=>'' ,'orderUp'=>'' ,'id'=>$this->id - ,'picto_search'=>img_picto('Search', 'search.png') ,'head_search'=>'' ,'export'=>array() - ,'view_type'=>'' - ),$TParam['liste']); + ,'view_type'=>'' //TODO to include graph or kanban instead of list + ),$TParam['list']); + + $POSTList = GETPOST('Listview'); if(empty($TParam['limit']))$TParam['limit']=array(); - if(!empty($_REQUEST['TListTBS'][$this->id]['page'])) $TParam['limit']['page'] = $_REQUEST['TListTBS'][$this->id]['page']; + if(!empty($POSTList[$this->id]['page'])) $TParam['limit']['page'] = $POSTList[$this->id]['page']; $TParam['limit']=array_merge(array('page'=>1, 'nbLine'=>$conf->liste_limit, 'global'=>0), $TParam['limit']); - if(!empty($_REQUEST['TListTBS'][$this->id]['orderBy'])) { - $TParam['orderBy'] = $_REQUEST['TListTBS'][$this->id]['orderBy']; + if(!empty($POSTList[$this->id]['orderBy'])) { + $TParam['orderBy'] = $POSTList[$this->id]['orderBy']; } // print_r($TParam); @@ -124,9 +121,9 @@ class Listview { // Si le type de "recherche" est "calendars" on a 2 champs de transmis, [début et fin] ou [que début] ou [que fin] => un BETWEEN Sql serait utile que dans le 1er cas // donc l'utilisation des opérateur >= et <= permettent un fonctionnement générique $TSQLDate=array(); - if(!empty($value['deb'])) + if(!empty($value['start'])) { - $valueDeb = $this->dateToSQLDate($value['deb']); + $valueDeb = $this->dateToSQLDate($value['start']); if(isset($this->TBind[$sBindKey.'_start'])) // TODO can't use this in query case { @@ -137,9 +134,9 @@ class Listview { } - if(!empty($value['fin'])) + if(!empty($value['end'])) { - $valueFin = $this->dateToSQLDate($value['fin']); + $valueFin = $this->dateToSQLDate($value['end']); if(isset($this->TBind[$sBindKey.'_end'])) { // TODO can't use this in query case $this->TBind[$sBindKey.'_end'] = $valueFin; } @@ -198,7 +195,7 @@ class Listview { private function search($sql,&$TParam) { - if(!empty($_REQUEST['TListTBS'][$this->id]['search'])) { + if(!empty($_REQUEST['Listview'][$this->id]['search'])) { $sqlGROUPBY=''; if(strpos($sql,'GROUP BY')!==false) { //TODO regex list($sql, $sqlGROUPBY) = explode('GROUP BY', $sql); @@ -206,7 +203,7 @@ class Listview { if(strpos($sql,'WHERE ')===false)$sql.=' WHERE 1 '; //TODO regex - foreach($_REQUEST['TListTBS'][$this->id]['search'] as $key=>$value) + foreach($_REQUEST['Listview'][$this->id]['search'] as $key=>$value) { $TsKey = $this->getSearchKey($key, $TParam); $TsBindKey = $this->getTsBindKey($TsKey); @@ -222,7 +219,7 @@ class Listview { //if (!empty($value)) var_dump($sKey); $sBindKey = $TsBindKey[$i]; - if($allow_is_null && !empty($_REQUEST['TListTBS'][$this->id]['search_on_null'][$key])) + if($allow_is_null && !empty($_REQUEST['Listview'][$this->id]['search_on_null'][$key])) { $this->TBind[$sBindKey.'_null'] = $sKey.' IS NULL '; $TSQLMore[] = $sKey.' IS NULL '; @@ -302,31 +299,31 @@ class Listview { foreach($TParam['search'] as $key=>$param_search) { - $value = isset($_REQUEST['TListTBS'][$this->id]['search'][$key]) ? $_REQUEST['TListTBS'][$this->id]['search'][$key] : ''; + $value = isset($_REQUEST['Listview'][$this->id]['search'][$key]) ? $_REQUEST['Listview'][$this->id]['search'][$key] : ''; $typeRecherche = (is_array($param_search) && isset($param_search['recherche'])) ? $param_search['recherche'] : $param_search; if(is_array($typeRecherche)) { $typeRecherche = array(''=>' ') + $typeRecherche; - $fsearch=$form->combo('','TListTBS['.$this->id.'][search]['.$key.']', $typeRecherche,$value,0,'',' listviewtbs="combo" init-value="'.$value.'" '); + $fsearch=$form->combo('','Listview['.$this->id.'][search]['.$key.']', $typeRecherche,$value,0,'',' listviewtbs="combo" init-value="'.$value.'" '); } else if($typeRecherche==='calendar') { - $fsearch=$form->calendrier('','TListTBS['.$this->id.'][search]['.$key.']',$value,10,10,' listviewtbs="calendar" '); + $fsearch=$form->calendrier('','Listview['.$this->id.'][search]['.$key.']',$value,10,10,' listviewtbs="calendar" '); } else if($typeRecherche==='calendars') { - $fsearch=$form->calendrier('','TListTBS['.$this->id.'][search]['.$key.'][deb]',isset($value['deb'])?$value['deb']:'',10,10,' listviewtbs="calendars" ') - .' '.$form->calendrier('','TListTBS['.$this->id.'][search]['.$key.'][fin]',isset($value['fin'])?$value['fin']:'',10,10,' listviewtbs="calendars" '); + $fsearch=$form->calendrier('','Listview['.$this->id.'][search]['.$key.'][start]',isset($value['start'])?$value['start']:'',10,10,' listviewtbs="calendars" ') + .' '.$form->calendrier('','Listview['.$this->id.'][search]['.$key.'][end]',isset($value['end'])?$value['end']:'',10,10,' listviewtbs="calendars" '); } else if(is_string($typeRecherche)) { $fsearch=$TParam['search'][$key]; } else { - $fsearch=$form->texte('','TListTBS['.$this->id.'][search]['.$key.']',$value,15,255,' listviewtbs="input" '); + $fsearch=$form->texte('','Listview['.$this->id.'][search]['.$key.']',$value,15,255,' listviewtbs="input" '); } if(!empty($param_search['allow_is_null'])) { - $valueNull = isset($_REQUEST['TListTBS'][$this->id]['search_on_null'][$key]) ? 1 : 0; - $fsearch.=' '.$form->checkbox1('', 'TListTBS['.$this->id.'][search_on_null]['.$key.']',1, $valueNull,' onclick=" if($(this).is(\':checked\')){ $(this).prev().val(\'\'); }" ').img_help(1, $langs->trans('SearchOnNUllValue')); + $valueNull = isset($_REQUEST['Listview'][$this->id]['search_on_null'][$key]) ? 1 : 0; + $fsearch.=' '.$form->checkbox1('', 'Listview['.$this->id.'][search_on_null]['.$key.']',1, $valueNull,' onclick=" if($(this).is(\':checked\')){ $(this).prev().val(\'\'); }" ').img_help(1, $langs->trans('SearchOnNUllValue')); } @@ -342,7 +339,7 @@ class Listview { } - $search_button = ' '.$TParam['liste']['picto_search'].''; + $search_button = ' '.$TParam['liste']['picto_search'].''; if(!empty($TParam['liste']['head_search'])) { $TParam['liste']['head_search'].='
'.$langs->trans('Search').' '.$search_button.'
'; @@ -519,22 +516,77 @@ class Listview { $TExport=$this->setExport($TParam, $TField, $THeader); $TField = $this->addTotalGroup($TField,$TTotalGroup); - var_dump( - array( - 'entete'=>$THeader - ,'champs'=>$TField - ,'recherche'=>$TSearch - ,'total'=>$TTotal - ,'export'=>$TExport - ) - , array( - 'liste'=>array_merge(array('haveExport'=>count($TExport), 'id'=>$this->id, 'nb_columns'=>count($THeader) ,'totalNB'=>count($TField), 'nbSearch'=>count($TSearch), 'haveTotal'=>(int)!empty($TTotal), 'havePage'=>(int)!empty($TPagination) ), $TParam['liste']) - ) - , $TPagination - - ); + $out = $javaScript; - $javaScript; + $out.=load_fiche_titre($TParam['list']['title']); + print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, count($TField), 'title_products.png', 0, '', '', $limit); + /* + $out.=' + + [onshow;block=begin; when [liste.noheader]==0] + + + [onshow;block=end] + + +
+ [liste.image;magnet=img; strconv=no] +
[liste.titre; strconv=no]
+ +
+ + + + + + + + + + + [onshow;block=tr;when [liste.nbSearch]+-0] + + + + + + + + + + + + + + + + + [onshow;block=tr; when [liste.haveTotal]+-0 ] + + + + +
[liste.head_search;strconv=no;magnet=tr]
[entete.libelle;block=th;strconv=no] + [onshow;block=span; when [entete.order]==1][liste.order_down;strconv=no][liste.order_up;strconv=no] + [entete.more;strconv=no;] +
[recherche.val;block=td;strconv=no]
[champs_sub1.val;block=td; strconv=no]
[champs_sub1.val;block=td; strconv=no]
[total.val;block=td;strconv=no;frm=0 000,00]
+ +
+ [onshow;block=div; when [liste.haveExport]+-0 ] + [export.label;block=a;] +
+

+ [liste.messageNothing;strconv=no] [onshow; block=p; when [liste.totalNB]==0] +

';*/ } public function renderArray(&$db,$TField, $TParam=array()) { @@ -611,14 +663,14 @@ class Listview { global $user; $contextpage=md5($_SERVER['PHP_SELF']); - if((float)DOL_VERSION>=4.0 && empty($TParam['no-select'])) { + if(empty($TParam['no-select'])) { dol_include_once('/core/class/html.form.class.php'); global $db,$conf,$user; $form=new Form($db); - $selectedfields = GETPOST('TListTBS_'.$this->id.'_selectedfields'); + $selectedfields = GETPOST('Listview'.$this->id.'_selectedfields'); if(!empty($selectedfields)) { include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; @@ -662,7 +714,7 @@ class Listview { } } - $selectedfields=$form->multiSelectArrayWithCheckbox('TListTBS_'.$this->id.'_selectedfields', $TFieldVisibility, $contextpage); // This also change content of $arrayfields_0 + $selectedfields=$form->multiSelectArrayWithCheckbox('Listview'.$this->id.'_selectedfields', $TFieldVisibility, $contextpage); // This also change content of $arrayfields_0 } @@ -721,17 +773,6 @@ class Listview { else $value=(string)$value; } - if(isset($TParam['subQuery'][$field])) { - $dbSub = new TPDOdb; //TODO finish it - $dbSub->Execute( strtr($TParam['subQuery'][$field], array_merge( $trans, array('@val@'=>$value) )) ); - $subResult = ''; - while($dbSub->Get_line()) { - $subResult.= implode(', ',$dbSub->currentLine).'
'; - } - $value=$subResult; - $dbSub->close(); - } - $trans['@'.$field.'@'] = $value; if(!empty($TParam['math'][$field])) { diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index d092a876ad2..59ad70cec4e 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -87,7 +87,8 @@ class Inventory extends CoreObject function sort_det() { - usort($this->Inventorydet, array('Inventory', 'customSort')); + + if(!empty($this->Inventorydet)) usort($this->Inventorydet, array('Inventory', 'customSort')); } function fetch($id,$annexe = true) @@ -99,8 +100,12 @@ class Inventory extends CoreObject $this->sort_det(); $this->amount = 0; - foreach($this->Inventorydet as &$det){ - $this->amount+=$det->qty_view * $det->pmp; + + if(!empty($this->Inventorydet )) { + foreach($this->Inventorydet as &$det){ + $this->amount+=$det->qty_view * $det->pmp; + } + } return $res; From a99ac7fb6b0098b1ff2193d28e0aca3ba40b6cc9 Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Tue, 13 Dec 2016 16:52:49 +0100 Subject: [PATCH 0059/1163] taking account @eldy remarks --- htdocs/core/modules/modSociete.class.php | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index 7984ed7f6a1..af4da616ce9 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -282,8 +282,12 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as paymode ON s.mode_reglement = paymode.id'; $this->export_sql_end[$r] .=' WHERE s.entity IN ('.getEntity('societe', 1).')'; if(!$user->rights->societe->client->voir) { - $subordinatesids = $user->getAllChildIds(); - $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '.count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).'))' : ''; + $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '; + if ($conf->global->SOCIETE_EXPORT_SUBORDINATES_CHILDS) { + $subordinatesids = $user->getAllChildIds(); + $this->export_sql_end[$r] .=count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).')' : ''; + } + $this->export_sql_end[$r] .=')'; } // Export list of contacts and attributes @@ -315,8 +319,12 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'socpeople_extrafields as extra ON extra.fk_object = c.rowid'; $this->export_sql_end[$r] .=' WHERE c.entity IN ('.getEntity("societe", 1).')'; if(!$user->rights->societe->client->voir) { - $subordinatesids = $user->getAllChildIds(); - $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '.count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).'))' : ''; + $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '; + if ($conf->global->SOCIETE_EXPORT_SUBORDINATES_CHILDS) { + $subordinatesids = $user->getAllChildIds(); + $this->export_sql_end[$r] .=count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).')' : ''; + } + $this->export_sql_end[$r] .=')'; } From a636d27ccbfc1e5ea59862af1d7e909b382ffff7 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Wed, 14 Dec 2016 14:34:12 +0100 Subject: [PATCH 0060/1163] Div --- htdocs/core/class/coreobject.class.php | 22 +- htdocs/core/class/listview.class.php | 144 ++-- htdocs/core/lib/functions.lib.php | 114 ++- htdocs/inventory/class/inventory.class.php | 24 +- htdocs/inventory/img/inventory.png | Bin 0 -> 1802 bytes htdocs/inventory/inventory.php | 797 +++++++++++++++++++++ htdocs/inventory/lib/inventory.lib.php | 245 +++++++ htdocs/inventory/tpl/inventory.tpl.php | 211 ++++++ 8 files changed, 1433 insertions(+), 124 deletions(-) create mode 100644 htdocs/inventory/img/inventory.png create mode 100644 htdocs/inventory/inventory.php create mode 100644 htdocs/inventory/lib/inventory.lib.php create mode 100644 htdocs/inventory/tpl/inventory.tpl.php diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index 96cbbb89a88..b7e4b2770e3 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -1,5 +1,7 @@ +/* EXPERIMENTAL + * + * Copyright (C) 2016 ATM Consulting * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -220,9 +222,8 @@ class CoreObject extends CommonObject { WHERE rowid='.$id; $res = $this->db->query( $sql ); - if($obj = $this->db->fetch_object($res)) { - $this->rowid=$id; + $this->id=$id; $this->set_vars_by_db($obj); @@ -248,12 +249,12 @@ class CoreObject extends CommonObject { $this->{$className}=array(); - $sql = " SELECT rowid FROM ".MAIN_DB_PREFIX.$childTable." WHERE ".$this->fk_element."=".$this->rowid; + $sql = " SELECT rowid FROM ".MAIN_DB_PREFIX.$childTable." WHERE ".$this->fk_element."=".$this->id; $res = $this->db->query($sql); if($res) { - - while($obj = $db->fetch_object($res)) { + $Tab=array(); + while($obj = $this->db->fetch_object($res)) { $o=new $className($this->db); $o->fetch($obj->rowid); @@ -282,5 +283,14 @@ class CoreObject extends CommonObject { } + public function get_date($field,$format='') { + if(empty($this->{$field})) return ''; + elseif($this->{$field}<=strtotime('1000-01-01 00:00:00')) return ''; + else { + return dol_print_date($this->{$field}, $format); + } + + } + } diff --git a/htdocs/core/class/listview.class.php b/htdocs/core/class/listview.class.php index db66f9f15a3..e94a648ec27 100644 --- a/htdocs/core/class/listview.class.php +++ b/htdocs/core/class/listview.class.php @@ -1,7 +1,8 @@ + Copyright (C) 2016 ATM Consulting This program and all files within this directory and sub directory is free software: you can redistribute it and/or modify it under @@ -505,88 +506,91 @@ class Listview { } private function renderList(&$THeader, &$TField, &$TTotal,&$TTotalGroup, &$TParam) { - + $javaScript = $this->getJS($TParam); - $TPagination=array( + /*$TPagination=array( 'pagination'=>array('pageSize'=>$TParam['limit']['nbLine'], 'pageNum'=>$TParam['limit']['page'], 'blockName'=>'champs', 'totalNB'=>count($TField)) - ); + );*/ $TSearch = $this->setSearch($THeader, $TParam); $TExport=$this->setExport($TParam, $TField, $THeader); $TField = $this->addTotalGroup($TField,$TTotalGroup); $out = $javaScript; + $out.=load_fiche_titre($texte, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $TParam['limit']['page'], count($TField), 'title_products.png', 0, '', '', $limit); + $out.=' + '; - $out.=load_fiche_titre($TParam['list']['title']); - print_barre_liste($texte, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, count($TField), 'title_products.png', 0, '', '', $limit); - /* - $out.='
- - [onshow;block=begin; when [liste.noheader]==0] - - - [onshow;block=end] - - -
- [liste.image;magnet=img; strconv=no] -
[liste.titre; strconv=no]
- -
+ if(!empty($TParam['liste']['head_search'])) { + $out.=' + '.$TParam['liste']['head_search'].' + '; + } + + $out.=''; - - - - - - - - + foreach($THeader as $head) { + $out.=''; + } + + $out.=''; + + if(!empty($TParam['liste']['nbSearch'])) { + $out.=' + + '; + } - [onshow;block=tr;when [liste.nbSearch]+-0] - - - - - - - - - - - - - - - - - [onshow;block=tr; when [liste.haveTotal]+-0 ] - - - - -
[liste.head_search;strconv=no;magnet=tr]
[entete.libelle;block=th;strconv=no] - [onshow;block=span; when [entete.order]==1][liste.order_down;strconv=no][liste.order_up;strconv=no] - [entete.more;strconv=no;] -
'.$head['libelle']; + + if($head['order']) $out.='[onshow;block=span; when [entete.order]==1]'.img_down().' + '.img_up().''; + + $out.=$head['more']; + $out.='
'.img_search().'
[recherche.val;block=td;strconv=no]
[champs_sub1.val;block=td; strconv=no]
[champs_sub1.val;block=td; strconv=no]
[total.val;block=td;strconv=no;frm=0 000,00]
+ $out.=''; -
- [onshow;block=div; when [liste.haveExport]+-0 ] - [export.label;block=a;] -
-

- [liste.messageNothing;strconv=no] [onshow; block=p; when [liste.totalNB]==0] -

';*/ + $class='pair'; + + if(empty($TField)) { + $out.=' + '.$TParam['liste']['messageNothing'].''; + + } + else{ + + foreach($TField as $fields) { //TODO pagination limit + + $class = ($class=='pair') ? 'impair' : 'pair'; + $out.=' '; + + foreach($fields as $field=>$value) { + $out.=''.$value.''; + } + + $out.=''; + + } + + $out.=''; + + if(!empty($TParam['liste']['haveTotal'])) { + $out.=' + '; + + foreach($TTotal as $field=>$total) { + $out.=''.price($total).''; + } + + $out.=''; + } + + } + + + $out.=''; + + return $out; } public function renderArray(&$db,$TField, $TParam=array()) { diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 082177b5cbc..c4b21e4ee82 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -3157,7 +3157,7 @@ function load_fiche_titre($titre, $morehtmlright='', $picto='title_generic.png', } /** - * Print a title with navigation controls for pagination + * return a title with navigation controls for pagination * * @param string $titre Title to show (required) * @param int $page Numero of page to show in navigation links (required) @@ -3176,7 +3176,7 @@ function load_fiche_titre($titre, $morehtmlright='', $picto='title_generic.png', * @param int $hideselectlimit Force to hide select limit * @return void */ -function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $center='', $num=-1, $totalnboflines=-1, $picto='title_generic.png', $pictoisfullpath=0, $morehtml='', $morecss='', $limit=-1, $hideselectlimit=0) +function load_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $center='', $num=-1, $totalnboflines=-1, $picto='title_generic.png', $pictoisfullpath=0, $morehtml='', $morecss='', $limit=-1, $hideselectlimit=0) { global $conf,$langs; @@ -3196,27 +3196,26 @@ function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $so $nextpage = 0; } //print 'totalnboflines='.$totalnboflines.'-savlimit='.$savlimit.'-limit='.$limit.'-num='.$num.'-nextpage='.$nextpage; - - print "\n"; - print "\n"; - print ''; + $out = "\n"; + $out.= "\n"; + $out.='
'; // Left - //if ($picto && $titre) print ''; - print ''; + //if ($picto && $titre) $out.=''; + $out.=''; // Center if ($center) { - print ''; + $out.=''; } // Right - print ''; + $out.=load_fleche_navigation($page, $file, $options, $nextpage, $pagelist, $morehtml, $savlimit, $totalnboflines, $hideselectlimit); // output the div and ul for previous/last completed with page numbers into $pagelist + $out.=''; - print '
'.img_picto('', $picto, 'id="pictotitle"', $pictoisfullpath).''; - if ($picto && $titre) print img_picto('', $picto, 'class="hideonsmartphone valignmiddle" id="pictotitle"', $pictoisfullpath); - print '
'.$titre; - if (!empty($titre) && $savtotalnboflines >= 0) print ' ('.$totalnboflines.')'; - print '
'.img_picto('', $picto, 'id="pictotitle"', $pictoisfullpath).''; + if ($picto && $titre) $out.=img_picto('', $picto, 'class="hideonsmartphone valignmiddle" id="pictotitle"', $pictoisfullpath); + $out.='
'.$titre; + if (!empty($titre) && $savtotalnboflines >= 0) $out.=' ('.$totalnboflines.')'; + $out.='
'.$center.''.$center.''; + $out.=''; if ($sortfield) $options .= "&sortfield=".$sortfield; if ($sortorder) $options .= "&sortorder=".$sortorder; // Show navigation bar @@ -3265,15 +3264,39 @@ function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $so $pagelist.= 'dol_use_jmobile != 4)?' class="pagination"':'').'>dol_use_jmobile != 4)?'class="active"':'data-role="button"').'>'.($page+1).""; } } - print_fleche_navigation($page, $file, $options, $nextpage, $pagelist, $morehtml, $savlimit, $totalnboflines, $hideselectlimit); // output the div and ul for previous/last completed with page numbers into $pagelist - print '
'."\n"; - print "\n\n"; + $out.=''."\n"; + $out.="\n\n"; +} +/** + * Print a title with navigation controls for pagination + * + * @param string $titre Title to show (required) + * @param int $page Numero of page to show in navigation links (required) + * @param string $file Url of page (required) + * @param string $options More parameters for links ('' by default, does not include sortfield neither sortorder) + * @param string $sortfield Field to sort on ('' by default) + * @param string $sortorder Order to sort ('' by default) + * @param string $center String in the middle ('' by default). We often find here string $massaction comming from $form->selectMassAction() + * @param int $num Number of records found by select with limit+1 + * @param int $totalnboflines Total number of records/lines for all pages (if known). Use a negative value to not show number. + * @param string $picto Icon to use before title (should be a 32x32 transparent png file) + * @param int $pictoisfullpath 1=Icon name is a full absolute url of image + * @param string $morehtml More html to show + * @param string $morecss More css to the table + * @param int $limit Max number of lines (-1 = use default, 0 = no limit, > 0 = limit). + * @param int $hideselectlimit Force to hide select limit + * @return void + */ +function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $center='', $num=-1, $totalnboflines=-1, $picto='title_generic.png', $pictoisfullpath=0, $morehtml='', $morecss='', $limit=-1, $hideselectlimit=0) +{ + echo load_barre_liste($titre, $page, $file, $options, $sortfield, $sortorder, $center, $num, $totalnboflines, $picto, $pictoisfullpath, $morehtml, $morecss, $limit, $hideselectlimit); } /** - * Function to show navigation arrows into lists + * Function to return navigation arrows into lists * * @param int $page Number of page * @param string $file Page URL (in most cases provided with $_SERVER["PHP_SELF"]) @@ -3286,11 +3309,11 @@ function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $so * @param int $hideselectlimit Force to hide select limit * @return void */ -function print_fleche_navigation($page, $file, $options='', $nextpage=0, $betweenarrows='', $afterarrows='', $limit=-1, $totalnboflines=0, $hideselectlimit=0) +function load_fleche_navigation($page, $file, $options='', $nextpage=0, $betweenarrows='', $afterarrows='', $limit=-1, $totalnboflines=0, $hideselectlimit=0) { global $conf, $langs; - print ''."\n"; +} +/** + * Function to show navigation arrows into lists + * + * @param int $page Number of page + * @param string $file Page URL (in most cases provided with $_SERVER["PHP_SELF"]) + * @param string $options Other url paramaters to propagate ("" by default, may include sortfield and sortorder) + * @param integer $nextpage Do we show a next page button + * @param string $betweenarrows HTML content to show between arrows. MUST contains '
  • ' tags or '
  • '. + * @param string $afterarrows HTML content to show after arrows. Must NOT contains '
  • ' tags. + * @param int $limit Max nb of record to show (-1 = no combo with limit, 0 = no limit, > 0 = limit) + * @param int $totalnboflines Total number of records/lines for all pages (if known) + * @param int $hideselectlimit Force to hide select limit + * @return void + */ +function print_fleche_navigation($page, $file, $options='', $nextpage=0, $betweenarrows='', $afterarrows='', $limit=-1, $totalnboflines=0, $hideselectlimit=0) +{ + echo load_fleche_navigation($page, $file, $options, $nextpage, $betweenarrows, $afterarrows, $limit, $totalnboflines, $hideselectlimit); } - /** * Return a string with VAT rate label formated for view output diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index 59ad70cec4e..2a485d24a0a 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -97,17 +97,20 @@ class Inventory extends CoreObject if(!$annexe) $this->withChild = false; $res = parent::fetch($id); - $this->sort_det(); - $this->amount = 0; - - if(!empty($this->Inventorydet )) { - foreach($this->Inventorydet as &$det){ - $this->amount+=$det->qty_view * $det->pmp; - } + if($res>0) { + $this->sort_det(); + $this->amount = 0; + + if(!empty($this->Inventorydet )) { + foreach($this->Inventorydet as &$det){ + $this->amount+=$det->qty_view * $det->pmp; + } + + } } - + return $res; } @@ -312,9 +315,8 @@ class Inventory extends CoreObject global $langs,$db; $i = new Inventory($db); - $i->fetch($id, false); - - return $i->getNomUrl(); + if($i->fetch($id, false)>0) return $i->getNomUrl(); + else return $langs->trans('InventoryUnableToFetchObject'); } diff --git a/htdocs/inventory/img/inventory.png b/htdocs/inventory/img/inventory.png new file mode 100644 index 0000000000000000000000000000000000000000..e54ad0eef7d76b373e8769153f9039a75681ab3b GIT binary patch literal 1802 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 literal 0 HcmV?d00001 diff --git a/htdocs/inventory/inventory.php b/htdocs/inventory/inventory.php new file mode 100644 index 00000000000..d46f05059b4 --- /dev/null +++ b/htdocs/inventory/inventory.php @@ -0,0 +1,797 @@ + + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \file htdocs/inventory/inventory.php + * \ingroup product + * \brief File of class to manage inventory + */ + +require_once '../main.inc.php'; + +ini_set('memory_limit', '512M'); + +require_once DOL_DOCUMENT_ROOT.'/core/class/listview.class.php'; +require_once DOL_DOCUMENT_ROOT.'/inventory/class/inventory.class.php'; +require_once DOL_DOCUMENT_ROOT.'/inventory/lib/inventory.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/ajax.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +include_once DOL_DOCUMENT_ROOT.'/product/stock/class/entrepot.class.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php'; + +set_time_limit(0); + +if(!$user->rights->inventory->read) accessforbidden(); + +$langs->load("inventory"); + +_action(); + +function _action() +{ + global $user, $db, $conf, $langs; + + /******************************************************************* + * ACTIONS + * + * Put here all code to do according to value of "action" parameter + ********************************************************************/ + + $action=GETPOST('action'); + + switch($action) { + case 'list': + _list(); + + break; + + case 'create': + if (!$user->rights->inventory->create) accessforbidden(); + + $inventory = new Inventory($db); + + _fiche_warehouse($user, $db, $conf, $langs, $inventory); + + break; + + case 'confirmCreate': + if (!$user->rights->inventory->create) accessforbidden(); + + + $inventory = new Inventory($db); + $inventory->set_values($_REQUEST); + + $fk_inventory = $inventory->save(); + $fk_category = (int)GETPOST('fk_category'); + $fk_supplier = (int)GETPOST('fk_supplier'); + $fk_warehouse = (int)GETPOST('fk_warehouse'); + $only_prods_in_stock = (int)GETPOST('OnlyProdsInStock'); + + $e = new Entrepot($db); + $e->fetch($fk_warehouse); + $TChildWarehouses = array($fk_warehouse); + if(method_exists($e, 'get_children_warehouses')) $e->get_children_warehouses($fk_warehouse, $TChildWarehouses); + + $sql = 'SELECT ps.fk_product, ps.fk_entrepot + FROM '.MAIN_DB_PREFIX.'product_stock ps + INNER JOIN '.MAIN_DB_PREFIX.'product p ON (p.rowid = ps.fk_product) + LEFT JOIN '.MAIN_DB_PREFIX.'categorie_product cp ON (cp.fk_product = p.rowid) + LEFT JOIN '.MAIN_DB_PREFIX.'product_fournisseur_price pfp ON (pfp.fk_product = p.rowid) + WHERE ps.fk_entrepot IN ('.implode(', ', $TChildWarehouses).')'; + + if($fk_category>0) $sql.= " AND cp.fk_categorie=".$fk_category; + if($fk_supplier>0) $sql.= " AND pfp.fk_soc=".$fk_supplier; + if($only_prods_in_stock>0) $sql.= ' AND ps.reel > 0'; + + $sql.=' GROUP BY ps.fk_product, ps.fk_entrepot + ORDER BY p.ref ASC,p.label ASC'; + + + $Tab = $PDOdb->ExecuteAsArray($sql); + + foreach($Tab as &$row) { + + $inventory->add_product($PDOdb, $row->fk_product, $row->fk_entrepot); + } + + $inventory->save($PDOdb); + + header('Location: '.dol_buildpath('inventory/inventory.php?id='.$inventory->getId().'&action=edit', 1)); + + case 'edit': + if (!$user->rights->inventory->write) accessforbidden(); + + + $id = __get('id', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, __get('action', 'edit', 'string')); + + break; + + case 'save': + if (!$user->rights->inventory->write) accessforbidden(); + + + $id = __get('id', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + $inventory->set_values($_REQUEST); + + if ($inventory->errors) + { + setEventMessage($inventory->errors, 'errors'); + _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'edit'); + } + else + { + $inventory->save($PDOdb); + header('Location: '.dol_buildpath('inventory/inventory.php?id='.$inventory->getId().'&action=view', 1)); + } + + break; + + case 'regulate': + + $id = __get('id', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + if($inventory->status == 0) { + $inventory->status = 1; + $inventory->save($PDOdb); + + _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'view'); + + + } + else { + _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'view'); + } + + break; + + case 'changePMP': + + $id = __get('id', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + $inventory->changePMP($PDOdb); + + _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'view'); + + break; + + case 'add_line': + if (!$user->rights->inventory->write) accessforbidden(); + + + $id = __get('id', 0, 'int'); + $fk_warehouse = __get('fk_warehouse', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + $type = (!empty($conf->use_javascript_ajax) && !empty($conf->global->PRODUIT_USE_SEARCH_TO_SELECT) ? 'string' : 'int'); //AA heu ? + + $fk_product = __get('fk_product', 0, $type); + + if ($fk_product) + { + $product = new Product($db); + $product->fetch($fk_product); // ! ref TODO vérifier quand même + if($product->type != 0) { + setEventMessage($langs->trans('ThisIsNotAProduct'),'errors'); + } + else{ + + //Check product not already exists + $alreadyExists = false; + foreach ($inventory->Inventorydet as $invdet) + { + if ($invdet->fk_product == $product->id + && $invdet->fk_warehouse == $fk_warehouse) + { + $alreadyExists = true; + break; + } + } + + if (!$alreadyExists) + { + $inventory->add_product($PDOdb, $product->id, $fk_warehouse); + + } + else + { + setEventMessage($langs->trans('inventoryWarningProductAlreadyExists'), 'warnings'); + } + + } + + $inventory->save($PDOdb); + $inventory->sort_det(); + } + + _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'edit'); + + break; + + case 'delete_line': + if (!$user->rights->inventory->write) accessforbidden(); + + + //Cette action devrais se faire uniquement si le status de l'inventaire est à 0 mais aucune vérif + $rowid = __get('rowid', 0, 'int'); + $Inventorydet = new Inventory($db); + $Inventorydet->load($PDOdb, $rowid); + $Inventorydet->delete($PDOdb); + + $id = __get('id', 0, 'int'); + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'edit'); + + break; + case 'flush': + if (!$user->rights->inventory->create) accessforbidden(); + + + $id = __get('id', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + $inventory->deleteAllLine($PDOdb); + + setEventMessage('Inventaire vidé'); + + _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'edit'); + + + break; + case 'delete': + if (!$user->rights->inventory->create) accessforbidden(); + + + $id = __get('id', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + $inventory->delete($PDOdb); + + header('Location: '.dol_buildpath('/inventory/inventory.php', 1)); + exit; + //_list(); + + case 'printDoc': + + $id = __get('id', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + generateODT($PDOdb, $db, $conf, $langs, $inventory); + break; + + case 'exportCSV': + + $id = __get('id', 0, 'int'); + + $inventory = new Inventory($db); + $inventory->load($PDOdb, $id); + + exportCSV($inventory); + + exit; + break; + + default: + if (!$user->rights->inventory->write) accessforbidden(); + + $id = GETPOST('id'); + + $inventory = new Inventory($db); + $inventory->fetch($id); + + _card($inventory, $action ); + + + break; + } + +} + +function _list() +{ + + global $db, $conf, $langs, $user; + + llxHeader('',$langs->trans('inventoryListTitle'),'',''); + + $inventory = new Inventory($db); + $l = new ListView($db,'listInventory'); + + $THide = array('label'); + + echo $l->render(Inventory::getSQL('All'), array( + 'limit'=>array( + 'nbLine'=>'30' + ) + ,'subQuery'=>array() + ,'link'=>array( + 'fk_warehouse'=>''.img_picto('','object_stock.png','',0).' @label@' + ) + ,'translate'=>array() + ,'hide'=>$THide + ,'type'=>array( + 'date_cre'=>'date' + ,'date_maj'=>'datetime' + ,'date_inventory'=>'date' + ) + ,'liste'=>array( + 'titre'=>$langs->trans('inventoryListTitle') + ,'image'=>img_picto('','title.png', '', 0) + ,'picto_precedent'=>img_picto('','back.png', '', 0) + ,'picto_suivant'=>img_picto('','next.png', '', 0) + ,'noheader'=> (int)isset($_REQUEST['fk_soc']) | (int)isset($_REQUEST['fk_product']) + ,'messageNothing'=>$langs->trans('inventoryListEmpty') + ,'picto_search'=>img_picto('','search.png', '', 0) + ) + ,'title'=>array( + 'rowid'=>$langs->trans('Title') + ,'fk_warehouse'=>$langs->trans('Warehouse') + ,'date_inventory'=>$langs->trans('InventoryDate') + ,'datec'=>$langs->trans('DateCreation') + ,'tms'=>$langs->trans('DateUpdate') + ,'status'=>$langs->trans('Status') + ) + ,'eval'=>array( + 'status' => '(@val@ ? img_picto("'.$langs->trans("inventoryValidate").'", "statut4") : img_picto("'.$langs->trans("inventoryDraft").'", "statut3"))' + ,'rowid'=>'Inventory::getLink(@val@)' + + ) + )); + + + if ($user->rights->inventory->create) + { + print '
    '; + print ''.$langs->trans('inventoryCreate').''; + print '
    '; + } + + llxFooter(''); +} + +function _fiche_warehouse(&$PDOdb, &$user, &$db, &$conf, $langs, $inventory) +{ + dol_include_once('/categories/class/categorie.class.php'); + + llxHeader('',$langs->trans('inventorySelectWarehouse'),'',''); + print dol_get_fiche_head(inventoryPrepareHead($inventory)); + + $form=new TFormCore('inventory.php', 'confirmCreate'); + print $form->hidden('action', 'confirmCreate'); + $form->Set_typeaff('edit'); + + $formproduct = new FormProduct($db); + $formDoli = new Form($db); + + ?> + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    trans('Title') ?>texte('', 'title', '',50,255) ?>
    trans('Date') ?>calendrier('', 'date_inventory',time()) ?>
    trans('inventorySelectWarehouse') ?>selectWarehouses('', 'fk_warehouse') ?>
    trans('SelectCategory') ?>select_all_categories(0,'', 'fk_category') ?>
    trans('SelectFournisseur') ?>select_thirdparty('','fk_supplier','s.fournisseur = 1') ?>
    trans('OnlyProdsInStock') ?>
    + '; + print ''; + print '
    '; + + print $form->end_form(); + llxFooter(''); +} + +function _card(&$inventory, $mode='edit') +{ + global $langs, $conf, $db, $user; + + llxHeader('',$langs->trans('inventoryEdit'),'',''); + + $warehouse = new Entrepot($db); + $warehouse->fetch($inventory->fk_warehouse); + + print dol_get_fiche_head(inventoryPrepareHead($inventory, $langs->trans('inventoryOfWarehouse', $warehouse->libelle), '&action='.$mode)); + + $lines = array(); + _card_line($inventory, $lines, $form); + + print ''.$langs->trans('inventoryOnDate')." ".$inventory->get_date('date_inventory').'

    '; + + $inventoryTPL = array( + 'id'=> $inventory->id + ,'date_cre' => $inventory->get_date('date_cre', 'd/m/Y') + ,'date_maj' => $inventory->get_date('date_maj', 'd/m/Y H:i') + ,'fk_warehouse' => $inventory->fk_warehouse + ,'status' => $inventory->status + ,'entity' => $inventory->entity + ,'amount' => price( round($inventory->amount,2) ) + ,'amount_actual'=>price (round($inventory->amount_actual,2)) + + ); + + $can_validate = !empty($user->rights->inventory->validate); + $view_url = dol_buildpath('/inventory/inventory.php', 1); + + $view = array( + 'mode' => $mode + ,'url' => dol_buildpath('/inventory/inventory.php', 1) + ,'can_validate' => (int) $user->rights->inventory->validate + ,'is_already_validate' => (int) $inventory->status + ,'token'=>$_SESSION['newtoken'] + ); + + include './tpl/inventory.tpl.php'; + + llxFooter(''); +} + + +function _card_line(&$inventory, &$lines, &$form) +{ + global $db; + $inventory->amount_actual = 0; + + $TCacheEntrepot = array(); + + foreach ($inventory->Inventorydet as $k => $Inventorydet) + { + + $product = & $Inventorydet->product; + $stock = $Inventorydet->qty_stock; + + $pmp = $Inventorydet->pmp; + $pmp_actual = $pmp * $stock; + $inventory->amount_actual+=$pmp_actual; + + $last_pa = $Inventorydet->pa; + $current_pa = $Inventorydet->current_pa; + + $e = new Entrepot($db); + if(!empty($TCacheEntrepot[$Inventorydet->fk_warehouse])) $e = $TCacheEntrepot[$Inventorydet->fk_warehouse]; + elseif($e->fetch($Inventorydet->fk_warehouse) > 0) $TCacheEntrepot[$e->id] = $e; + + $lines[]=array( + 'produit' => $product->getNomUrl(1).' - '.$product->label + ,'entrepot'=>$e->getNomUrl(1) + ,'barcode' => $product->barcode + /*,'qty' => $form->texte('', 'qty_to_add['.$k.']', (isset($_REQUEST['qty_to_add'][$k]) ? $_REQUEST['qty_to_add'][$k] : 0), 8, 0, "style='text-align:center;'") + .($form->type_aff!='view' ? ''.img_picto('Ajouter', 'plus16@inventory').'' : '') + ,'qty_view' => $Inventorydet->qty_view ? $Inventorydet->qty_view : 0 + ,'qty_stock' => $stock + ,'qty_regulated' => $Inventorydet->qty_regulated ? $Inventorydet->qty_regulated : 0 + ,'action' => $user->rights->inventory->write ? ''.img_picto($langs->trans('inventoryDeleteLine'), 'delete').'' : '' + ,'pmp_stock'=>round($pmp_actual,2) + ,'pmp_actual'=> round($pmp * $Inventorydet->qty_view,2) + ,'pmp_new'=>(!empty($user->rights->inventory->changePMP) ? $form->texte('', 'new_pmp['.$k.']',$Inventorydet->new_pmp, 8, 0, "style='text-align:right;'") + .($form->type_aff!='view' ? ''.img_picto($langs->trans('Save'), 'bt-save.png@inventory').'' : '') : '' ) + */,'pa_stock'=>round($last_pa * $stock,2) + ,'pa_actual'=>round($last_pa * $Inventorydet->qty_view,2) + ,'current_pa_stock'=>round($current_pa * $stock,2) + ,'current_pa_actual'=>round($current_pa * $Inventorydet->qty_view,2) + + ,'k'=>$k + ,'id'=>$Inventorydet->id + + ); + } + +} + +function exportCSV(&$inventory) { + global $conf; + + header('Content-Type: application/octet-stream'); + header('Content-disposition: attachment; filename=inventory-'. $inventory->getId().'-'.date('Ymd-His').'.csv'); + header('Pragma: no-cache'); + header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0'); + header('Expires: 0'); + + echo 'Ref;Label;barcode;qty theorique;PMP;dernier PA;'; + if(!empty($conf->global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)) echo 'PA courant;'; + echo 'qty réelle;PMP;dernier PA;'; + if(!empty($conf->global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)) echo 'PA courant;'; + echo 'qty regulée;'."\r\n"; + + foreach ($inventory->Inventorydet as $k => $Inventorydet) + { + $product = & $Inventorydet->product; + $stock = $Inventorydet->qty_stock; + + $pmp = $Inventorydet->pmp; + $pmp_actual = $pmp * $stock; + $inventory->amount_actual+=$pmp_actual; + + $last_pa = $Inventorydet->pa; + $current_pa = $Inventorydet->current_pa; + + if(!empty($conf->global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)) { + $row=array( + 'produit' => $product->ref + ,'label'=>$product->label + ,'barcode' => $product->barcode + ,'qty_stock' => $stock + ,'pmp_stock'=>round($pmp_actual,2) + ,'pa_stock'=>round($last_pa * $stock,2) + ,'current_pa_stock'=>round($current_pa * $stock,2) + ,'qty_view' => $Inventorydet->qty_view ? $Inventorydet->qty_view : 0 + ,'pmp_actual'=>round($pmp * $Inventorydet->qty_view,2) + ,'pa_actual'=>round($last_pa * $Inventorydet->qty_view,2) + ,'current_pa_actual'=>round($current_pa * $Inventorydet->qty_view,2) + ,'qty_regulated' => $Inventorydet->qty_regulated ? $Inventorydet->qty_regulated : 0 + + ); + + } + else{ + $row=array( + 'produit' => $product->ref + ,'label'=>$product->label + ,'barcode' => $product->barcode + ,'qty_stock' => $stock + ,'pmp_stock'=>round($pmp_actual,2) + ,'pa_stock'=>round($last_pa * $stock,2) + ,'qty_view' => $Inventorydet->qty_view ? $Inventorydet->qty_view : 0 + ,'pmp_actual'=>round($pmp * $Inventorydet->qty_view,2) + ,'pa_actual'=>round($last_pa * $Inventorydet->qty_view,2) + + ,'qty_regulated' => $Inventorydet->qty_regulated ? $Inventorydet->qty_regulated : 0 + + ); + + } + + + echo '"'.implode('";"', $row).'"'."\r\n"; + + } + + exit; +} + +function generateODT(&$PDOdb, &$db, &$conf, &$langs, &$inventory) +{ + $TBS=new TTemplateTBS(); + + $InventoryPrint = array(); // Tableau envoyé à la fonction render contenant les informations concernant l'inventaire + + foreach($inventory->Inventorydet as $k => $v) + { + $prod = new Product($db); + $prod->fetch($v->fk_product); + //$prod->fetch_optionals($prod->id); + + $InventoryPrint[] = array( + 'product' => $prod->ref.' - '.$prod->label + , 'qty_view' => $v->qty_view + ); + } + + $warehouse = new Entrepot($db); + $warehouse->fetch($inventory->fk_warehouse); + + $dirName = 'INVENTORY'.$inventory->getId().'('.date("d_m_Y").')'; + $dir = DOL_DATA_ROOT.'/inventory/'.$dirName.'/'; + + @mkdir($dir, 0777, true); + + $template = "templateINVENTORY.odt"; + //$template = "templateOF.doc"; + + $file_gen = $TBS->render(dol_buildpath('inventory/exempleTemplate/'.$template) + ,array( + 'InventoryPrint'=>$InventoryPrint + ) + ,array( + 'date_cre'=>$inventory->get_date('date_cre', 'd/m/Y') + ,'date_maj'=>$inventory->get_date('date_maj', 'd/m/Y H:i') + ,'date_inv'=>$inventory->get_date('date_inventory', 'd/m/Y') + ,'numero'=>empty($inventory->title) ? 'Inventaire n°'.$inventory->getId() : $inventory->title + ,'warehouse'=>$warehouse->libelle + ,'status'=>($inventory->status ? $langs->transnoentitiesnoconv('inventoryValidate') : $langs->transnoentitiesnoconv('inventoryDraft')) + ,'logo'=>DOL_DATA_ROOT."/mycompany/logos/".MAIN_INFO_SOCIETE_LOGO + ) + ,array() + ,array( + 'outFile'=>$dir.$inventory->getId().".odt" + ,"convertToPDF"=>(!empty($conf->global->INVENTORY_GEN_PDF) ? true : false) + ,'charset'=>OPENTBS_ALREADY_UTF8 + + ) + + ); + + header("Location: ".DOL_URL_ROOT."/document.php?modulepart=inventory&entity=".$conf->entity."&file=".$dirName."/".$inventory->getId(). (!empty($conf->global->INVENTORY_GEN_PDF) ? '.pdf' : '.odt') ); + + /* + $size = filesize("./" . basename($file_gen)); + header("Content-Type: application/force-download; name=\"" . basename($file_gen) . "\""); + header("Content-Transfer-Encoding: binary"); + header("Content-Length: $size"); + header("Content-Disposition: attachment; filename=\"" . basename($file_gen) . "\""); + header("Expires: 0"); + header("Cache-Control: no-cache, must-revalidate"); + header("Pragma: no-cache"); + + readfile($file_gen); + */ + + //header("Location: ".DOL_URL_ROOT."/document.php?modulepart=asset&entity=1&file=".$dirName."/".$assetOf->numero.".doc"); + +} +function _footerList($view,$total_pmp,$total_pmp_actual,$total_pa,$total_pa_actual, $total_current_pa,$total_current_pa_actual) { + global $conf,$user,$langs; + + + if ($view['can_validate'] == 1) { ?> + +   + barcode->enabled)) { ?> +   + + + + global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ + echo ''.price($total_current_pa).''; + } + ?> +   + + rights->inventory->changePMP)) { + echo ' '; + } + ?> + + global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ + echo ''.price($total_current_pa_actual).''; + } + ?> + +   + +   + + + + +   Produit + Entrepôt + barcode->enabled)) { ?> + Code-barre + + + Quantité théorique + global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ + echo 'Valeur théorique'; + } + else { + echo 'Valeur théorique'; + } + + ?> + + + Quantité réelle + + + global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)) $colspan++; + if(!empty($conf->global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)) $colspan++; + + echo 'Valeur réelle'; + + ?> + + Quantité régulée + + + # + + + + + +   + PMP + Dernier PA + global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ + echo 'PA courant'; + } + + ?> +   + PMP + rights->inventory->changePMP)) { + echo ''.$langs->trans('ColumnNewPMP').''; + } + ?> + Dernier PA + global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ + echo 'PA courant'; + } + + ?> +   + +   + + + + * Copyright (C) 2015 ATM Consulting + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \file lib/inventory.lib.php + * \ingroup inventory + * \brief This file is an example module library + * Put some comments here + */ + +function inventoryAdminPrepareHead() +{ + global $langs, $conf; + + $langs->load("inventory@inventory"); + + $h = 0; + $head = array(); + + $head[$h][0] = dol_buildpath("/inventory/admin/inventory_setup.php", 1); + $head[$h][1] = $langs->trans("Parameters"); + $head[$h][2] = 'settings'; + $h++; + $head[$h][0] = dol_buildpath("/inventory/admin/inventory_about.php", 1); + $head[$h][1] = $langs->trans("About"); + $head[$h][2] = 'about'; + $h++; + + // Show more tabs from modules + // Entries must be declared in modules descriptor with line + //$this->tabs = array( + // 'entity:+tabname:Title:@inventory:/inventory/mypage.php?id=__ID__' + //); // to add new tab + //$this->tabs = array( + // 'entity:-tabname:Title:@inventory:/inventory/mypage.php?id=__ID__' + //); // to remove a tab + complete_head_from_modules($conf, $langs, $object, $head, $h, 'inventory'); + + return $head; +} + +function inventoryPrepareHead(&$inventory, $title='Inventaire', $get='') +{ + return array( + array(dol_buildpath('/inventory/inventory.php?id='.$inventory->id.$get, 1), $title,'inventaire') + ); +} + + + +function inventorySelectProducts(&$inventory) +{ + global $conf,$db; + + $except_product_id = array(); + + foreach ($inventory->Inventorydet as $Inventorydet) + { + $except_product_id[] = $Inventorydet->fk_product; + } + + ob_start(); + $form = new Form($db); + $form->select_produits(-1, 'fk_product'); + + // Il nous faut impérativement une liste custom car il ne faut que les entrepôts de la famille de celui qu'on inventorie + $TChildWarehouses = array($inventory->fk_warehouse); + $e = new Entrepot($db); + $e->fetch($inventory->fk_warehouse); + if(method_exists($e, 'get_children_warehouses')) $e->get_children_warehouses($e->id, $TChildWarehouses); + + $Tab = array(); + $sql = 'SELECT rowid, label + FROM '.MAIN_DB_PREFIX.'entrepot WHERE rowid IN('.implode(', ', $TChildWarehouses).')'; + if(method_exists($e, 'get_children_warehouses')) $sql.= ' ORDER BY fk_parent'; + $resql = $db->query($sql); + while($res = $db->fetch_object($resql)) { + $Tab[$res->rowid] = $res->label; + } + print '   '; + print 'Entrepôt : '.$form::selectarray('fk_warehouse', $Tab); + + $select_html = ob_get_clean(); + + return $select_html; +} + +function ajaxAutocompleter($selected, $htmlname, $url, $urloption='', $minLength=2, $autoselect=0, $ajaxoptions=array()) +{ + if (empty($minLength)) $minLength=1; + + $script = ''; + + $script.= ''; + + return $script; +} diff --git a/htdocs/inventory/tpl/inventory.tpl.php b/htdocs/inventory/tpl/inventory.tpl.php new file mode 100644 index 00000000000..d7022245f5b --- /dev/null +++ b/htdocs/inventory/tpl/inventory.tpl.php @@ -0,0 +1,211 @@ + + +status != 1) { ?> + trans('AddInventoryProduct'); ?> : +
    + + + + + + +
    + + +
    + + +
    Cet inventaire est validé
    + + + + + + + $row) { + + $total_pmp+=$row['pmp_stock']; + $total_pa+=$row['pa_stock']; + $total_pmp_actual+=$row['pmp_actual']; + $total_pa_actual+=$row['pa_actual']; + + if($i%20 === 0) + { + _headerList($view); + } // Fin IF principal + ?> + + + + barcode->enabled)) { ?> + + + + + + + global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ + echo ''; + $total_current_pa+=$row['current_pa_stock']; + } + + ?> + + + + + rights->inventory->changePMP)) { + echo ''; + } + ?> + + global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ + echo ''; + $total_current_pa_actual+=$row['current_pa_actual']; + } + + ?> + + + + + + + + + + + + +
      '.price($row['current_pa_stock']).'   + + '.$row['pmp_new'].''.price($row['current_pa_actual']).'
    + + +
    + + trans('Print') ?> + trans('ExportCSV') ?> + trans('Modify') ?> + rights->inventory->changePMP)) { + echo ''.$langs->trans('ApplyPMP').''; + } + + if ($can_validate == 1) { ?> + Réguler le stock + + + + + + + Vider +     + Supprimer + +
    + + + + +
    +

    Date de création : get_date('datec') ?> +
    Dernière mise à jour : get_date('tms') ?>

    + + + From 565bcf233276535280c86a16f287df1eae7963a5 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Wed, 14 Dec 2016 16:11:37 +0100 Subject: [PATCH 0061/1163] debug fetch method --- htdocs/core/class/coreobject.class.php | 76 +++++++++-- htdocs/inventory/class/inventory.class.php | 58 ++++----- htdocs/inventory/inventory.php | 145 ++++++--------------- htdocs/inventory/tpl/inventory.tpl.php | 12 +- 4 files changed, 137 insertions(+), 154 deletions(-) diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index b7e4b2770e3..f5e5b0e79a1 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -78,14 +78,20 @@ class CoreObject extends CommonObject { } + private function checkFieldType($field, $type) { + + if( isset($this->__fields[$field]) && method_exists($this, 'is_'.$type)) { + return $this->{'is_'.$type}($this->__fields[$field]); + } + else return false; + + } private function is_date(Array &$info){ - if(is_array($info)) { - if(isset($info['type']) && $info['type']=='date') return true; - else return false; - } + if(isset($info['type']) && $info['type']=='date') return true; else return false; + } private function is_array($info) { @@ -239,7 +245,25 @@ class CoreObject extends CommonObject { } } + public function addChild($tabName, $id='', $key='id', $try_to_load = false) { + if(!empty($id)) { + foreach($this->{$tabName} as $k=>&$object) { + if($object->{$key} === $id) return $k; + } + } + + $k = count($this->{$tabName}); + + $className = ucfirst($tabName); + $this->{$tabName}[$k] = new $className($this->db); + if($id>0 && $key==='id' && $try_to_load) { + $this->{$tabName}[$k]->fetch($id); + } + + + return $k; + } public function fetchChild() { if($this->withChild && !empty($this->childtables) && !empty($this->fk_element)) { @@ -272,13 +296,13 @@ class CoreObject extends CommonObject { } - public function update() { - + public function update(User &$user) { + if(empty($this->id )) return $this->create($user); } - public function create() { - + public function create(User &$user) { + if($this->id>0) return $this->update($user); } @@ -287,10 +311,46 @@ class CoreObject extends CommonObject { if(empty($this->{$field})) return ''; elseif($this->{$field}<=strtotime('1000-01-01 00:00:00')) return ''; else { + return dol_print_date($this->{$field}, $format); } } + public function set_date($field,$date){ + + if(empty($date)) { + $this->{$field} = 0; + } + else { + require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; + + $this->{$field} = dol_stringtotime($date); + } + + return $this->{$field}; + } + + public function set_values(&$Tab) { + foreach ($Tab as $key=>$value) { + + if($this->checkFieldType($key,'date')) { + $this->set_date($key, $value); + } + else if( $this->checkFieldType($key,'array')){ + $this->{$key} = $value; + } + else if( $this->checkFieldType($key,'float') ) { + $this->{$key} = (double)price2num($value); + } + else if( $this->checkFieldType($key,'int') ) { + $this->{$key} = (int)price2num($value); + } + else { + $this->{$key} = @stripslashes($value); + } + + } + } } diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index 2a485d24a0a..f2ff6484c64 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -147,15 +147,16 @@ class Inventory extends CoreObject } - function update() + function update(User &$user) { + //si on valide l'inventaire on sauvegarde le stock à cette instant if ($this->status) { $this->regulate(); } - parent::update(); + parent::update($user); } function set_values($Tab) @@ -209,7 +210,7 @@ class Inventory extends CoreObject $det->load_product(); $date = $this->get_date('date_inventory', 'Y-m-d'); - if(empty($date))$date = $this->get_date('date_cre', 'Y-m-d'); + if(empty($date))$date = $this->get_date('datec', 'Y-m-d'); $det->setStockDate( $date , $fk_entrepot); } @@ -416,9 +417,9 @@ class Inventorydet extends CoreObject return true; } - function setStockDate(&$PDOdb, $date, $fk_warehouse) { + function setStockDate($date, $fk_warehouse) { - list($pmp,$stock) = $this->getPmpStockFromDate($PDOdb, $date, $fk_warehouse); + list($pmp,$stock) = $this->getPmpStockFromDate($date, $fk_warehouse); $this->qty_stock = $stock; $this->pmp = $pmp; @@ -432,18 +433,17 @@ class Inventorydet extends CoreObject AND datem<='".$date." 23:59:59' ORDER BY datem DESC LIMIT 1"; - $res = $db->query($sql); + $res = $this->db->query($sql); - if($obj = $db->fetch_object($res)) { + if($res && $obj = $this->db->fetch_object($res)) { $last_pa = $obj->price; } $this->pa = $last_pa; - /* var_dump($fk_warehouse,$this->product->stock_warehouse,$this->pmp, $this->pa, $this->qty_stock); - exit;*/ + } - function getPmpStockFromDate(&$PDOdb, $date, $fk_warehouse){ + function getPmpStockFromDate( $date, $fk_warehouse){ $res = $this->product->load_stock(); @@ -459,7 +459,7 @@ class Inventorydet extends CoreObject } - //On récupère tous les mouvements de stocks du produit entre aujourd'hui et la date de l'inventaire + //All Stock mouvement between now and inventory date $sql = "SELECT value, price FROM ".MAIN_DB_PREFIX."stock_mouvement WHERE fk_product = ".$this->product->id." @@ -467,31 +467,25 @@ class Inventorydet extends CoreObject AND datem > '".date('Y-m-d 23:59:59',strtotime($date))."' ORDER BY datem DESC"; - //echo $sql.'
    '; - $db->query($sql); - $TMouvementStock = $PDOdb->Get_All(); + + $res = $this->db->query($sql); + $laststock = $stock; $lastpmp = $pmp; - //Pour chacun des mouvements on recalcule le PMP et le stock physique - foreach($TMouvementStock as $mouvement){ - - //150 - //if($this->product->id==394) echo 'laststock = '.$stock.'
    '; - - //9.33 - //if($this->product->id==394) echo 'lastpmp = '.$pmp.'
    '; - $price = ($mouvement->price>0 && $mouvement->value>0) ? $mouvement->price : $lastpmp; + + if($res) { + while($mouvement = $this->db->fetch_object($res)) { + $price = ($mouvement->price>0 && $mouvement->value>0) ? $mouvement->price : $lastpmp; - $stock_value = $laststock * $lastpmp; + $stock_value = $laststock * $lastpmp; + + $laststock -= $mouvement->value; + + $last_stock_value = $stock_value - ($mouvement->value * $price); + + $lastpmp = ($laststock != 0) ? $last_stock_value / $laststock : $lastpmp; + } - $laststock -= $mouvement->value; - - $last_stock_value = $stock_value - ($mouvement->value * $price); - - $lastpmp = ($laststock != 0) ? $last_stock_value / $laststock : $lastpmp; - - - } return array($lastpmp,$laststock); diff --git a/htdocs/inventory/inventory.php b/htdocs/inventory/inventory.php index d46f05059b4..4e70ee1b4cc 100644 --- a/htdocs/inventory/inventory.php +++ b/htdocs/inventory/inventory.php @@ -66,18 +66,17 @@ function _action() $inventory = new Inventory($db); - _fiche_warehouse($user, $db, $conf, $langs, $inventory); + _card_warehouse( $inventory); break; case 'confirmCreate': if (!$user->rights->inventory->create) accessforbidden(); - - + $inventory = new Inventory($db); - $inventory->set_values($_REQUEST); + $inventory->set_values($_POST); - $fk_inventory = $inventory->save(); + $fk_inventory = $inventory->create($user); $fk_category = (int)GETPOST('fk_category'); $fk_supplier = (int)GETPOST('fk_supplier'); $fk_warehouse = (int)GETPOST('fk_warehouse'); @@ -86,7 +85,7 @@ function _action() $e = new Entrepot($db); $e->fetch($fk_warehouse); $TChildWarehouses = array($fk_warehouse); - if(method_exists($e, 'get_children_warehouses')) $e->get_children_warehouses($fk_warehouse, $TChildWarehouses); + $e->get_children_warehouses($fk_warehouse, $TChildWarehouses); $sql = 'SELECT ps.fk_product, ps.fk_entrepot FROM '.MAIN_DB_PREFIX.'product_stock ps @@ -103,27 +102,27 @@ function _action() ORDER BY p.ref ASC,p.label ASC'; - $Tab = $PDOdb->ExecuteAsArray($sql); - - foreach($Tab as &$row) { - - $inventory->add_product($PDOdb, $row->fk_product, $row->fk_entrepot); + $res = $db->query($sql); + if($res) { + while($obj = $db->fetch_object($res)){ + + $inventory->add_product($obj->fk_product, $obj->fk_entrepot); + } } - $inventory->save($PDOdb); + $inventory->update($user); + + header('Location: '.dol_buildpath('inventory/inventory.php?id='.$inventory->id.'&action=edit', 1)); + break; - header('Location: '.dol_buildpath('inventory/inventory.php?id='.$inventory->getId().'&action=edit', 1)); - case 'edit': if (!$user->rights->inventory->write) accessforbidden(); - $id = __get('id', 0, 'int'); - $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch(GETPOST('id')); - _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, __get('action', 'edit', 'string')); + _card($inventory, GETPOST('action')); break; @@ -389,29 +388,29 @@ function _list() llxFooter(''); } -function _fiche_warehouse(&$PDOdb, &$user, &$db, &$conf, $langs, $inventory) +function _card_warehouse(&$inventory) { + global $langs,$conf,$db, $user, $form; + dol_include_once('/categories/class/categorie.class.php'); llxHeader('',$langs->trans('inventorySelectWarehouse'),'',''); print dol_get_fiche_head(inventoryPrepareHead($inventory)); - $form=new TFormCore('inventory.php', 'confirmCreate'); - print $form->hidden('action', 'confirmCreate'); - $form->Set_typeaff('edit'); + echo '
    '; + echo ''; $formproduct = new FormProduct($db); - $formDoli = new Form($db); ?> - + - + @@ -421,11 +420,11 @@ function _fiche_warehouse(&$PDOdb, &$user, &$db, &$conf, $langs, $inventory) - + - + @@ -439,7 +438,8 @@ function _fiche_warehouse(&$PDOdb, &$user, &$db, &$conf, $langs, $inventory) print ''; print ''; - print $form->end_form(); + echo ''; + llxFooter(''); } @@ -455,7 +455,7 @@ function _card(&$inventory, $mode='edit') print dol_get_fiche_head(inventoryPrepareHead($inventory, $langs->trans('inventoryOfWarehouse', $warehouse->libelle), '&action='.$mode)); $lines = array(); - _card_line($inventory, $lines, $form); + _card_line($inventory, $lines, $mode); print ''.$langs->trans('inventoryOnDate')." ".$inventory->get_date('date_inventory').'

    '; @@ -488,7 +488,7 @@ function _card(&$inventory, $mode='edit') } -function _card_line(&$inventory, &$lines, &$form) +function _card_line(&$inventory, &$lines, $mode) { global $db; $inventory->amount_actual = 0; @@ -512,21 +512,23 @@ function _card_line(&$inventory, &$lines, &$form) if(!empty($TCacheEntrepot[$Inventorydet->fk_warehouse])) $e = $TCacheEntrepot[$Inventorydet->fk_warehouse]; elseif($e->fetch($Inventorydet->fk_warehouse) > 0) $TCacheEntrepot[$e->id] = $e; + $qty = (float)GETPOST('qty_to_add')[$k]; + $lines[]=array( 'produit' => $product->getNomUrl(1).' - '.$product->label ,'entrepot'=>$e->getNomUrl(1) ,'barcode' => $product->barcode - /*,'qty' => $form->texte('', 'qty_to_add['.$k.']', (isset($_REQUEST['qty_to_add'][$k]) ? $_REQUEST['qty_to_add'][$k] : 0), 8, 0, "style='text-align:center;'") - .($form->type_aff!='view' ? ''.img_picto('Ajouter', 'plus16@inventory').'' : '') + ,'qty' =>($mode == 'edit' ? '' : $qty ) + .($mode =='edit' ? ''.img_picto($langs->trans('Add'), 'plus16@inventory').'' : '') ,'qty_view' => $Inventorydet->qty_view ? $Inventorydet->qty_view : 0 ,'qty_stock' => $stock ,'qty_regulated' => $Inventorydet->qty_regulated ? $Inventorydet->qty_regulated : 0 - ,'action' => $user->rights->inventory->write ? ''.img_picto($langs->trans('inventoryDeleteLine'), 'delete').'' : '' + ,'action' => ($user->rights->inventory->write ? ''.img_picto($langs->trans('inventoryDeleteLine'), 'delete').'' : '') ,'pmp_stock'=>round($pmp_actual,2) ,'pmp_actual'=> round($pmp * $Inventorydet->qty_view,2) - ,'pmp_new'=>(!empty($user->rights->inventory->changePMP) ? $form->texte('', 'new_pmp['.$k.']',$Inventorydet->new_pmp, 8, 0, "style='text-align:right;'") - .($form->type_aff!='view' ? ''.img_picto($langs->trans('Save'), 'bt-save.png@inventory').'' : '') : '' ) - */,'pa_stock'=>round($last_pa * $stock,2) + ,'pmp_new'=>(!empty($user->rights->inventory->changePMP) ? '' + .($mode =='edit' ? ''.img_picto($langs->trans('Save'), 'bt-save.png@inventory').'' : '') : '') + ,'pa_stock'=>round($last_pa * $stock,2) ,'pa_actual'=>round($last_pa * $Inventorydet->qty_view,2) ,'current_pa_stock'=>round($current_pa * $stock,2) ,'current_pa_actual'=>round($current_pa * $Inventorydet->qty_view,2) @@ -610,80 +612,9 @@ function exportCSV(&$inventory) { exit; } -function generateODT(&$PDOdb, &$db, &$conf, &$langs, &$inventory) -{ - $TBS=new TTemplateTBS(); - - $InventoryPrint = array(); // Tableau envoyé à la fonction render contenant les informations concernant l'inventaire - - foreach($inventory->Inventorydet as $k => $v) - { - $prod = new Product($db); - $prod->fetch($v->fk_product); - //$prod->fetch_optionals($prod->id); - - $InventoryPrint[] = array( - 'product' => $prod->ref.' - '.$prod->label - , 'qty_view' => $v->qty_view - ); - } - - $warehouse = new Entrepot($db); - $warehouse->fetch($inventory->fk_warehouse); - - $dirName = 'INVENTORY'.$inventory->getId().'('.date("d_m_Y").')'; - $dir = DOL_DATA_ROOT.'/inventory/'.$dirName.'/'; - - @mkdir($dir, 0777, true); - - $template = "templateINVENTORY.odt"; - //$template = "templateOF.doc"; - - $file_gen = $TBS->render(dol_buildpath('inventory/exempleTemplate/'.$template) - ,array( - 'InventoryPrint'=>$InventoryPrint - ) - ,array( - 'date_cre'=>$inventory->get_date('date_cre', 'd/m/Y') - ,'date_maj'=>$inventory->get_date('date_maj', 'd/m/Y H:i') - ,'date_inv'=>$inventory->get_date('date_inventory', 'd/m/Y') - ,'numero'=>empty($inventory->title) ? 'Inventaire n°'.$inventory->getId() : $inventory->title - ,'warehouse'=>$warehouse->libelle - ,'status'=>($inventory->status ? $langs->transnoentitiesnoconv('inventoryValidate') : $langs->transnoentitiesnoconv('inventoryDraft')) - ,'logo'=>DOL_DATA_ROOT."/mycompany/logos/".MAIN_INFO_SOCIETE_LOGO - ) - ,array() - ,array( - 'outFile'=>$dir.$inventory->getId().".odt" - ,"convertToPDF"=>(!empty($conf->global->INVENTORY_GEN_PDF) ? true : false) - ,'charset'=>OPENTBS_ALREADY_UTF8 - - ) - - ); - - header("Location: ".DOL_URL_ROOT."/document.php?modulepart=inventory&entity=".$conf->entity."&file=".$dirName."/".$inventory->getId(). (!empty($conf->global->INVENTORY_GEN_PDF) ? '.pdf' : '.odt') ); - - /* - $size = filesize("./" . basename($file_gen)); - header("Content-Type: application/force-download; name=\"" . basename($file_gen) . "\""); - header("Content-Transfer-Encoding: binary"); - header("Content-Length: $size"); - header("Content-Disposition: attachment; filename=\"" . basename($file_gen) . "\""); - header("Expires: 0"); - header("Cache-Control: no-cache, must-revalidate"); - header("Pragma: no-cache"); - - readfile($file_gen); - */ - - //header("Location: ".DOL_URL_ROOT."/document.php?modulepart=asset&entity=1&file=".$dirName."/".$assetOf->numero.".doc"); - -} function _footerList($view,$total_pmp,$total_pmp_actual,$total_pa,$total_pa_actual, $total_current_pa,$total_current_pa_actual) { global $conf,$user,$langs; - if ($view['can_validate'] == 1) { ?> diff --git a/htdocs/inventory/tpl/inventory.tpl.php b/htdocs/inventory/tpl/inventory.tpl.php index d7022245f5b..8a3bfd0f2a6 100644 --- a/htdocs/inventory/tpl/inventory.tpl.php +++ b/htdocs/inventory/tpl/inventory.tpl.php @@ -154,9 +154,9 @@ - - - @@ -168,18 +168,17 @@
    - trans('Print') ?> trans('ExportCSV') ?> trans('Modify') ?> rights->inventory->changePMP)) { - echo ''.$langs->trans('ApplyPMP').''; } if ($can_validate == 1) { ?> - Réguler le stock + Réguler le stock @@ -196,7 +195,6 @@
    - trans('Print') ?> trans('ExportCSV') ?> trans('Delete') ?> From a463759ba3b88cdcc97a263c2cd6e42d5944aaf7 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Wed, 14 Dec 2016 16:54:05 +0100 Subject: [PATCH 0062/1163] init query builder into db --- htdocs/core/class/coreobject.class.php | 98 +++++++++++++++++++++- htdocs/core/db/DoliDB.class.php | 108 +++++++++++++++++++++++++ 2 files changed, 203 insertions(+), 3 deletions(-) diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index f5e5b0e79a1..8f55a5bf458 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -150,7 +150,7 @@ class CoreObject extends CommonObject { foreach ($this->__fields as $field=>$info) { - if($this->_is_date($info)){ + if($this->is_date($info)){ if(empty($this->{$field})){ $query[$field] = $this->date_0; } @@ -166,11 +166,11 @@ class CoreObject extends CommonObject { $query[$field] = (int)price2num($this->{$field}); } - else if($this->_is_float($info)){ + else if($this->is_float($info)){ $query[$field] = (double)price2num($this->{$field}); } - elseif($this->_is_null($info)) { + elseif($this->is_null($info)) { $query[$field] = (is_null($this->{$field}) || (empty($this->{$field}) && $this->{$field}!==0 && $this->{$field}!=='0')?null:$this->{$field}); } else{ @@ -264,6 +264,20 @@ class CoreObject extends CommonObject { return $k; } + + public function removeChild($tabName, $id, $key='id') { + foreach($this->{$tabName} as &$object) { + + if($object->{$key} == $id) { + $object->to_delete = true; + return true; + } + + + } + return false; + } + public function fetchChild() { if($this->withChild && !empty($this->childtables) && !empty($this->fk_element)) { @@ -295,18 +309,96 @@ class CoreObject extends CommonObject { } + public function saveChild(User &$user) { + if($this->withChild && !empty($this->childtables) && !empty($this->fk_element)) { + foreach($this->childtables as &$childTable) { + + $className = ucfirst($childTable); + + foreach($this->{$className} as $i => &$object) { + + $object->{$this->fk_element} = $this->id; + + $object->update($user); + if($this->unsetChildDeleted && isset($object->to_delete) && $object->to_delete==true) unset($this->{$className}[$i]); + } + + } + } + } public function update(User &$user) { if(empty($this->id )) return $this->create($user); + if(isset($this->to_delete) && $this->to_delete==true) { + $this->delete(); + } + else { + + $query = array(); + + $query['id']=$this->id; + if(!isset($this->no_dt_maj))$query['tms'] = date('Y-m-d H:i:s'); + $this->set_save_query($query); + + $this->db->update($this->table_element,$query,array('id')); + + $this->id = $this->db->last_insert_id($this->table_element); + + $result = $this->call_trigger(strtoupper($this->element). '_UPDATE', $user); + + $this->saveChild($user); + + } + return $this->id; + } public function create(User &$user) { if($this->id>0) return $this->update($user); + $query = array(); + $query['datec'] = date("Y-m-d H:i:s",$this->datec); + if(!isset($this->no_dt_maj))$query['tms'] = date('Y-m-d H:i:s'); + $this->set_save_query($query); + + $this->db->insert($this->table_element,$query); + + $this->id = $this->db->last_insert_id($this->table_element); + + $result = $this->call_trigger(strtoupper($this->element). '_CREATE', $user); + + $this->saveChild($user); + + + return $this->id; } + public function delete(){ + if($this->id>0){ + $this->call_trigger(strtoupper($this->element). '_DELETE', $user); + $this->db->delete($this->table_element,array('id'=>$this->id),array(0=>'id')); + + if($this->withChild) { + foreach($this->childtables as &$childTable) { + + $className = ucfirst($childTable); + foreach($this->{$className} as &$object) { + + $object->delete(); + + } + + } + } + + + + } + + + } public function get_date($field,$format='') { if(empty($this->{$field})) return ''; elseif($this->{$field}<=strtotime('1000-01-01 00:00:00')) return ''; diff --git a/htdocs/core/db/DoliDB.class.php b/htdocs/core/db/DoliDB.class.php index c63227e1601..395f6009169 100644 --- a/htdocs/core/db/DoliDB.class.php +++ b/htdocs/core/db/DoliDB.class.php @@ -288,5 +288,113 @@ abstract class DoliDB implements Database { return $this->lastqueryerror; } + + /** + * Generate and execute Update SQL commande + * + * @param string $table table to update + * @param array $values array of values to update + * @param int|string|array $key key of value to select row to update + * @return bool|result false or boolean + */ + function update($table,$values,$key){ + + foreach ($value as $k => $v) { + if(is_string($v)) $v=stripslashes($v); + + if (is_array($key)){ + $i=array_search($k , $key ); + if ( $i !== false) { + $where[] = $key[$i]."=" . $this->escape( $v ) ; + continue; + } + } else { + if ( $k == $key) { + $where[] = "$k=" .$this->escape( $v ) ; + continue; + } + } + + if(is_null($v)) $val = 'NULL'; + else if(is_int($v) || is_double($v)) $val=$v; + else $val = $this->escape( $v ); + + $tmp[] = "$k=$val"; + } + $sql = sprintf( "UPDATE $table SET %s WHERE %s" , implode( ",", $tmp ) , implode(" AND ",$where) ); + + $res = $this->query( $sql ); + + if($res===false) { + //error + return false; + } + + return true; + } + + /** + * Generate and execute Insert SQL commande + * + * @param string $table table to update + * @param array $values array of values to update + * @return bool|result false or boolean + */ + function insert($table,$values){ + + foreach ($values as $k => $v) { + + $fields[] = $k; + if(is_null($v)){ + $values[] = 'NULL'; + }else{ + $v=stripslashes($v); + $values[] =$this->escape( $v ); + } + } + $sql = sprintf( 'INSERT INTO '.$table.' ( %s ) values( %s ) ', implode( ",", $fields ) , implode( ",", $values ) ); + + $res = $this->query($sql); + + if($res===false) { + + return false; + } + + return true; + } + + /** + * Generate and execute Delete SQL commande + * + * @param string $table table for the delete + * @param array $values array of values to delete + * @param int|string|array $key key of value to select row to update + * @return bool|result false or boolean + */ + function delete($table,$values,$key){ + foreach ($values as $k => $v) { + if(is_string($v)) $v=stripslashes($v); + + if (is_array($key)){ + $i=array_search($k , $key ); + if ( $i !== false) { + $where[] = $key[$i]."=" . $this->escape( $v ) ; + continue; + } + } else { + if ( $k == $key) { + $where[] = "$k=" .$this->escape( $v ) ; + continue; + } + } + + } + + $sql = sprintf( 'DELETE FROM '.$table.' WHERE '.implode(" AND ",$where)); + + return $this->query( $sql ); + } + } From 703b8708e3702b21cf4027e2ad0d5c071298dfab Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Thu, 15 Dec 2016 10:39:59 +0100 Subject: [PATCH 0063/1163] fix create --- htdocs/core/class/coreobject.class.php | 66 +++-- htdocs/core/db/DoliDB.class.php | 55 ++-- htdocs/core/modules/modinventory.class.php | 329 +++++++++++++++++++++ htdocs/inventory/class/inventory.class.php | 4 +- htdocs/inventory/img/bt-save.png | Bin 0 -> 493 bytes htdocs/inventory/inventory.php | 5 +- 6 files changed, 401 insertions(+), 58 deletions(-) create mode 100644 htdocs/core/modules/modinventory.class.php create mode 100644 htdocs/inventory/img/bt-save.png diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index 8f55a5bf458..7613a556092 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -31,7 +31,14 @@ class CoreObject extends CommonObject { public $withChild = true; - protected $__fields=array(); + public $no_update_tms = false; + + public $date_0 = '1001-01-01 00:00:00'; //TODO there is a solution for this ? + + /* + * @var Array $_fields Fields to synchronize with Database + */ + protected $__fields=array(); /** * Constructor * @@ -39,7 +46,7 @@ class CoreObject extends CommonObject { */ function __construct(DoliDB &$db) { - $this->date_0 = '1001-01-01 00:00:00'; //TODO there is a solution for this ? + } protected function init() { @@ -142,11 +149,7 @@ class CoreObject extends CommonObject { private function set_save_query(){ - $query=array( - 'rowid'=>$this->id - ,'datec'=>($this->id>0 ? $this->db->jdate($this->datec) : time()) - ,'tms'=>time() - ); + $query=array(); foreach ($this->__fields as $field=>$info) { @@ -315,20 +318,21 @@ class CoreObject extends CommonObject { foreach($this->childtables as &$childTable) { $className = ucfirst($childTable); - - foreach($this->{$className} as $i => &$object) { - - $object->{$this->fk_element} = $this->id; - - $object->update($user); - if($this->unsetChildDeleted && isset($object->to_delete) && $object->to_delete==true) unset($this->{$className}[$i]); + if(!empty($this->{$className})) { + foreach($this->{$className} as $i => &$object) { + + $object->{$this->fk_element} = $this->id; + + $object->update($user); + if($this->unsetChildDeleted && isset($object->to_delete) && $object->to_delete==true) unset($this->{$className}[$i]); + } } } } } public function update(User &$user) { - if(empty($this->id )) return $this->create($user); + if(empty($this->id )) return $this->create($user); // To test, with that, no need to test on high level object, the core decide it, update just needed if(isset($this->to_delete) && $this->to_delete==true) { $this->delete(); @@ -337,10 +341,10 @@ class CoreObject extends CommonObject { $query = array(); + $query = $this->set_save_query(); $query['id']=$this->id; - if(!isset($this->no_dt_maj))$query['tms'] = date('Y-m-d H:i:s'); - $this->set_save_query($query); - + if(empty($this->no_update_tms))$query['tms'] = date('Y-m-d H:i:s'); + $this->db->update($this->table_element,$query,array('id')); $this->id = $this->db->last_insert_id($this->table_element); @@ -358,21 +362,25 @@ class CoreObject extends CommonObject { if($this->id>0) return $this->update($user); $query = array(); + $query = $this->set_save_query(); $query['datec'] = date("Y-m-d H:i:s",$this->datec); - if(!isset($this->no_dt_maj))$query['tms'] = date('Y-m-d H:i:s'); - $this->set_save_query($query); - - $this->db->insert($this->table_element,$query); - - $this->id = $this->db->last_insert_id($this->table_element); + if(empty($this->no_update_tms))$query['tms'] = date('Y-m-d H:i:s'); - $result = $this->call_trigger(strtoupper($this->element). '_CREATE', $user); - - $this->saveChild($user); + $res = $this->db->insert($this->table_element,$query); + if($res) { + $this->id = $this->db->last_insert_id($this->table_element); + + $result = $this->call_trigger(strtoupper($this->element). '_CREATE', $user); + + $this->saveChild($user); + + return $this->id; + } + else{ + return false; + } - return $this->id; - } public function delete(){ if($this->id>0){ diff --git a/htdocs/core/db/DoliDB.class.php b/htdocs/core/db/DoliDB.class.php index 395f6009169..85766c31949 100644 --- a/htdocs/core/db/DoliDB.class.php +++ b/htdocs/core/db/DoliDB.class.php @@ -288,6 +288,19 @@ abstract class DoliDB implements Database { return $this->lastqueryerror; } + /* + * Add quote to field value if necessary + * + * @param string|int $value value to protect + * @return string|int + */ + function quote($value) { + + if(is_null($value)) return 'NULL'; + else if(is_numeric($value)) return $value; + else return "'".$this->escape( $value )."'"; + + } /** * Generate and execute Update SQL commande @@ -297,31 +310,27 @@ abstract class DoliDB implements Database * @param int|string|array $key key of value to select row to update * @return bool|result false or boolean */ - function update($table,$values,$key){ + function update($table,$fields,$key){ - foreach ($value as $k => $v) { + foreach ($fields as $k => $v) { if(is_string($v)) $v=stripslashes($v); if (is_array($key)){ $i=array_search($k , $key ); if ( $i !== false) { - $where[] = $key[$i]."=" . $this->escape( $v ) ; + $where[] = $key[$i].'=' . $this->quote( $v ) ; continue; } } else { if ( $k == $key) { - $where[] = "$k=" .$this->escape( $v ) ; + $where[] = $k.'=' .$this->quote( $v ) ; continue; } } - if(is_null($v)) $val = 'NULL'; - else if(is_int($v) || is_double($v)) $val=$v; - else $val = $this->escape( $v ); - - $tmp[] = "$k=$val"; + $tmp[] = $k.'='.$this->quote($val); } - $sql = sprintf( "UPDATE $table SET %s WHERE %s" , implode( ",", $tmp ) , implode(" AND ",$where) ); + $sql = sprintf( 'UPDATE '.MAIN_DB_PREFIX.$table.' SET %s WHERE %s' , implode( ',', $tmp ) , implode(' AND ',$where) ); $res = $this->query( $sql ); @@ -340,22 +349,18 @@ abstract class DoliDB implements Database * @param array $values array of values to update * @return bool|result false or boolean */ - function insert($table,$values){ + function insert($table,$fields){ - foreach ($values as $k => $v) { + foreach ($fields as $k => $v) { - $fields[] = $k; - if(is_null($v)){ - $values[] = 'NULL'; - }else{ - $v=stripslashes($v); - $values[] =$this->escape( $v ); - } + $keys[] = $k; + $values[] = $this->quote($v); + } - $sql = sprintf( 'INSERT INTO '.$table.' ( %s ) values( %s ) ', implode( ",", $fields ) , implode( ",", $values ) ); - - $res = $this->query($sql); + $sql = sprintf( 'INSERT INTO '.MAIN_DB_PREFIX.$table.' ( %s ) values( %s ) ', implode( ",", $keys ) , implode( ",", $values ) ); + + $res = $this->query($sql); if($res===false) { return false; @@ -372,8 +377,8 @@ abstract class DoliDB implements Database * @param int|string|array $key key of value to select row to update * @return bool|result false or boolean */ - function delete($table,$values,$key){ - foreach ($values as $k => $v) { + function delete($table,$fields,$key){ + foreach ($fields as $k => $v) { if(is_string($v)) $v=stripslashes($v); if (is_array($key)){ @@ -391,7 +396,7 @@ abstract class DoliDB implements Database } - $sql = sprintf( 'DELETE FROM '.$table.' WHERE '.implode(" AND ",$where)); + $sql = sprintf( 'DELETE FROM '.MAIN_DB_PREFIX.$table.' WHERE '.implode(' AND ',$where)); return $this->query( $sql ); } diff --git a/htdocs/core/modules/modinventory.class.php b/htdocs/core/modules/modinventory.class.php new file mode 100644 index 00000000000..10fb1cc477e --- /dev/null +++ b/htdocs/core/modules/modinventory.class.php @@ -0,0 +1,329 @@ + + * Copyright (C) 2004-2012 Laurent Destailleur + * Copyright (C) 2005-2012 Regis Houssin + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \defgroup inventory Module inventory + * \brief Example of a module descriptor. + * Such a file must be copied into htdocs/inventory/core/modules directory. + * \file htdocs/inventory/core/modules/modinventory.class.php + * \ingroup inventory + * \brief Description and activation file for module inventory + */ +include_once DOL_DOCUMENT_ROOT .'/core/modules/DolibarrModules.class.php'; + + +/** + * Description and activation class for module inventory + */ +class modinventory extends DolibarrModules +{ + /** + * Constructor. Define names, constants, directories, boxes, permissions + * + * @param DoliDB $db Database handler + */ + function __construct($db) + { + global $langs,$conf; + + $this->db = $db; + + // Id for module (must be unique). + // Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id). + $this->numero = 104420; // 104000 to 104999 for ATM CONSULTING + // Key text used to identify module (for permissions, menus, etc...) + $this->rights_class = 'inventory'; + + // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' + // It is used to group modules in module setup page + $this->family = "products"; + // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) + $this->name = preg_replace('/^mod/i','',get_class($this)); + // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) + $this->description = "Description of module inventory"; + // Possible values for version are: 'development', 'experimental', 'dolibarr' or version + $this->version = 'dolibarr'; + // Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase) + $this->const_name = 'MAIN_MODULE_'.strtoupper($this->name); + // Where to store the module in setup page (0=common,1=interface,2=others,3=very specific) + $this->special = 0; + // Name of image file used for this module. + // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' + // If file is in module/img directory under name object_pictovalue.png, use this->picto='pictovalue@module' + $this->picto='inventory@inventory'; + + // Defined all module parts (triggers, login, substitutions, menus, css, etc...) + // for default path (eg: /inventory/core/xxxxx) (0=disable, 1=enable) + // for specific path of parts (eg: /inventory/core/modules/barcode) + // for specific css file (eg: /inventory/css/inventory.css.php) + //$this->module_parts = array( + // 'triggers' => 0, // Set this to 1 if module has its own trigger directory (core/triggers) + // 'login' => 0, // Set this to 1 if module has its own login method directory (core/login) + // 'substitutions' => 0, // Set this to 1 if module has its own substitution function file (core/substitutions) + // 'menus' => 0, // Set this to 1 if module has its own menus handler directory (core/menus) + // 'theme' => 0, // Set this to 1 if module has its own theme directory (theme) + // 'tpl' => 0, // Set this to 1 if module overwrite template dir (core/tpl) + // 'barcode' => 0, // Set this to 1 if module has its own barcode directory (core/modules/barcode) + // 'models' => 0, // Set this to 1 if module has its own models directory (core/modules/xxx) + // 'css' => array('/inventory/css/inventory.css.php'), // Set this to relative path of css file if module has its own css file + // 'js' => array('/inventory/js/inventory.js'), // Set this to relative path of js file if module must load a js on all pages + // 'hooks' => array('hookcontext1','hookcontext2') // Set here all hooks context managed by module + // 'dir' => array('output' => 'othermodulename'), // To force the default directories names + // 'workflow' => array('WORKFLOW_MODULE1_YOURACTIONTYPE_MODULE2'=>array('enabled'=>'! empty($conf->module1->enabled) && ! empty($conf->module2->enabled)', 'picto'=>'yourpicto@inventory')) // Set here all workflow context managed by module + // ); + $this->module_parts = array(); + + // Data directories to create when module is enabled. + // Example: this->dirs = array("/inventory/temp"); + $this->dirs = array(); + + // Config pages. Put here list of php page, stored into inventory/admin directory, to use to setup module. + $this->config_page_url = array("inventory_setup.php@inventory"); + + // Dependencies + $this->hidden = false; // A condition to hide module + $this->depends = array('modStock'); // List of modules id that must be enabled if this module is enabled + $this->requiredby = array(); // List of modules id to disable if this one is disabled + $this->conflictwith = array(); // List of modules id this module is in conflict with + $this->phpmin = array(5,0); // Minimum version of PHP required by module + $this->need_dolibarr_version = array(3,0); // Minimum version of Dolibarr required by module + $this->langfiles = array("inventory@inventory"); + + // Constants + // List of particular constants to add when module is enabled (key, 'chaine', value, desc, visible, 'current' or 'allentities', deleteonunactive) + // Example: $this->const=array(0=>array('MYMODULE_MYNEWCONST1','chaine','myvalue','This is a constant to add',1), + // 1=>array('MYMODULE_MYNEWCONST2','chaine','myvalue','This is another constant to add',0, 'current', 1) + // ); + $this->const = array(); + + // Array to add new pages in new tabs + // Example: $this->tabs = array('objecttype:+tabname1:Title1:mylangfile@inventory:$user->rights->inventory->read:/inventory/mynewtab1.php?id=__ID__', // To add a new tab identified by code tabname1 + // 'objecttype:+tabname2:Title2:mylangfile@inventory:$user->rights->othermodule->read:/inventory/mynewtab2.php?id=__ID__', // To add another new tab identified by code tabname2 + // 'objecttype:-tabname:NU:conditiontoremove'); // To remove an existing tab identified by code tabname + // where objecttype can be + // 'categories_x' to add a tab in category view (replace 'x' by type of category (0=product, 1=supplier, 2=customer, 3=member) + // 'contact' to add a tab in contact view + // 'contract' to add a tab in contract view + // 'group' to add a tab in group view + // 'intervention' to add a tab in intervention view + // 'invoice' to add a tab in customer invoice view + // 'invoice_supplier' to add a tab in supplier invoice view + // 'member' to add a tab in fundation member view + // 'opensurveypoll' to add a tab in opensurvey poll view + // 'order' to add a tab in customer order view + // 'order_supplier' to add a tab in supplier order view + // 'payment' to add a tab in payment view + // 'payment_supplier' to add a tab in supplier payment view + // 'product' to add a tab in product view + // 'propal' to add a tab in propal view + // 'project' to add a tab in project view + // 'stock' to add a tab in stock view + // 'thirdparty' to add a tab in third party view + // 'user' to add a tab in user view + $this->tabs = array(); + + // Dictionaries + if (! isset($conf->inventory->enabled)) + { + $conf->inventory=new stdClass(); + $conf->inventory->enabled=0; + } + $this->dictionaries=array(); + /* Example: + if (! isset($conf->inventory->enabled)) $conf->inventory->enabled=0; // This is to avoid warnings + $this->dictionaries=array( + 'langs'=>'mylangfile@inventory', + 'tabname'=>array(MAIN_DB_PREFIX."table1",MAIN_DB_PREFIX."table2",MAIN_DB_PREFIX."table3"), // List of tables we want to see into dictonnary editor + 'tablib'=>array("Table1","Table2","Table3"), // Label of tables + 'tabsql'=>array('SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table1 as f','SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table2 as f','SELECT f.rowid as rowid, f.code, f.label, f.active FROM '.MAIN_DB_PREFIX.'table3 as f'), // Request to select fields + 'tabsqlsort'=>array("label ASC","label ASC","label ASC"), // Sort order + 'tabfield'=>array("code,label","code,label","code,label"), // List of fields (result of select to show dictionary) + 'tabfieldvalue'=>array("code,label","code,label","code,label"), // List of fields (list of fields to edit a record) + 'tabfieldinsert'=>array("code,label","code,label","code,label"), // List of fields (list of fields for insert) + 'tabrowid'=>array("rowid","rowid","rowid"), // Name of columns with primary key (try to always name it 'rowid') + 'tabcond'=>array($conf->inventory->enabled,$conf->inventory->enabled,$conf->inventory->enabled) // Condition to show each dictionary + ); + */ + + // Boxes + // Add here list of php file(s) stored in core/boxes that contains class to show a box. + $this->boxes = array(); // List of boxes + // Example: + //$this->boxes=array(array(0=>array('file'=>'myboxa.php','note'=>'','enabledbydefaulton'=>'Home'),1=>array('file'=>'myboxb.php','note'=>''),2=>array('file'=>'myboxc.php','note'=>''));); + + $langs->load('inventory@inventory'); + + // Permissions + $this->rights = array(); // Permission array used by this module + $r=0; + + // Add here list of permission defined by an id, a label, a boolean and two constant strings. + // Example: + // $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + // $this->rights[$r][1] = 'Permision label'; // Permission label + // $this->rights[$r][3] = 1; // Permission by default for new user (0/1) + // $this->rights[$r][4] = 'level1'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) + // $this->rights[$r][5] = 'level2'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) + // $r++; + + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'inventoryReadPermission'; // Permission label + $this->rights[$r][3] = 1; // Permission by default for new user (0/1) + $this->rights[$r][4] = 'read'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) + $r++; + + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'inventoryCreatePermission'; // Permission label + $this->rights[$r][3] = 0; // Permission by default for new user (0/1) + $this->rights[$r][4] = 'create'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) + $r++; + + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'inventoryWritePermission'; // Permission label + $this->rights[$r][3] = 0; // Permission by default for new user (0/1) + $this->rights[$r][4] = 'write'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) + $r++; + + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'inventoryValidatePermission'; // Permission label + $this->rights[$r][3] = 0; // Permission by default for new user (0/1) + $this->rights[$r][4] = 'validate'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) + $r++; + + $this->rights[$r][0] = $this->numero + $r; // Permission id (must not be already used) + $this->rights[$r][1] = 'inventoryChangePMPPermission'; // Permission label + $this->rights[$r][3] = 0; // Permission by default for new user (0/1) + $this->rights[$r][4] = 'changePMP'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2) + $r++; + + // Main menu entries + $this->menu = array(); // List of menus to add + $r=0; + + // Add here entries to declare new menus + // + // Example to declare a new Top Menu entry and its Left menu entry: + // $this->menu[$r]=array( 'fk_menu'=>0, // Put 0 if this is a top menu + // 'type'=>'top', // This is a Top menu entry + // 'titre'=>'inventory top menu', + // 'mainmenu'=>'inventory', + // 'leftmenu'=>'inventory', + // 'url'=>'/inventory/pagetop.php', + // 'langs'=>'mylangfile@inventory', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + // 'position'=>100, + // 'enabled'=>'$conf->inventory->enabled', // Define condition to show or hide menu entry. Use '$conf->inventory->enabled' if entry must be visible if module is enabled. + // 'perms'=>'1', // Use 'perms'=>'$user->rights->inventory->level1->level2' if you want your menu with a permission rules + // 'target'=>'', + // 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both + // $r++; + // + // Example to declare a Left Menu entry into an existing Top menu entry: + // $this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=xxx', // Use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode + // 'type'=>'left', // This is a Left menu entry + // 'titre'=>'inventory left menu', + // 'mainmenu'=>'xxx', + // 'leftmenu'=>'inventory', + // 'url'=>'/inventory/pagelevel2.php', + // 'langs'=>'mylangfile@inventory', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + // 'position'=>100, + // 'enabled'=>'$conf->inventory->enabled', // Define condition to show or hide menu entry. Use '$conf->inventory->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected. + // 'perms'=>'1', // Use 'perms'=>'$user->rights->inventory->level1->level2' if you want your menu with a permission rules + // 'target'=>'', + // 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both + // $r++; + $this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=products,fk_leftmenu=stock', // Put 0 if this is a top menu + 'type'=>'left', // This is a Top menu entry + 'titre'=>'Liste des inventaires', + 'mainmenu'=>'inventory', + 'leftmenu'=>'inventory', + 'url'=>'/inventory/inventory.php?action=list', + 'langs'=>'inventory@inventory', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>100, + 'enabled'=>'$conf->inventory->enabled', // Define condition to show or hide menu entry. Use '$conf->inventory->enabled' if entry must be visible if module is enabled. + 'perms'=>'$user->rights->inventory->read', // Use 'perms'=>'$user->rights->inventory->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both + $r++; + + $this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=products,fk_leftmenu=stock', // Put 0 if this is a top menu + 'type'=>'left', // This is a Top menu entry + 'titre'=>'Nouvel inventaire', + 'mainmenu'=>'inventory', + 'leftmenu'=>'inventory', + 'url'=>'/inventory/inventory.php?action=create', + 'langs'=>'inventory@inventory', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'position'=>100, + 'enabled'=>'$conf->inventory->enabled', // Define condition to show or hide menu entry. Use '$conf->inventory->enabled' if entry must be visible if module is enabled. + 'perms'=>'$user->rights->inventory->create', // Use 'perms'=>'$user->rights->inventory->level1->level2' if you want your menu with a permission rules + 'target'=>'', + 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both + $r++; + + // Exports + $r=1; + + // Example: + // $this->export_code[$r]=$this->rights_class.'_'.$r; + // $this->export_label[$r]='CustomersInvoicesAndInvoiceLines'; // Translation key (used only if key ExportDataset_xxx_z not found) + // $this->export_enabled[$r]='1'; // Condition to show export in list (ie: '$user->id==3'). Set to 1 to always show when module is enabled. + // $this->export_permission[$r]=array(array("facture","facture","export")); + // $this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','s.fk_pays'=>'Country','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note'=>"InvoiceNote",'fd.rowid'=>'LineId','fd.description'=>"LineDescription",'fd.price'=>"LineUnitPrice",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.total_ht'=>"LineTotalHT",'fd.total_tva'=>"LineTotalTVA",'fd.total_ttc'=>"LineTotalTTC",'fd.date_start'=>"DateStart",'fd.date_end'=>"DateEnd",'fd.fk_product'=>'ProductId','p.ref'=>'ProductRef'); + // $this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','s.fk_pays'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.code_compta'=>'company','s.code_compta_fournisseur'=>'company','f.rowid'=>"invoice",'f.facnumber'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.total'=>"invoice",'f.total_ttc'=>"invoice",'f.tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note'=>"invoice",'fd.rowid'=>'invoice_line','fd.description'=>"invoice_line",'fd.price'=>"invoice_line",'fd.total_ht'=>"invoice_line",'fd.total_tva'=>"invoice_line",'fd.total_ttc'=>"invoice_line",'fd.tva_tx'=>"invoice_line",'fd.qty'=>"invoice_line",'fd.date_start'=>"invoice_line",'fd.date_end'=>"invoice_line",'fd.fk_product'=>'product','p.ref'=>'product'); + // $this->export_sql_start[$r]='SELECT DISTINCT '; + // $this->export_sql_end[$r] =' FROM ('.MAIN_DB_PREFIX.'facture as f, '.MAIN_DB_PREFIX.'facturedet as fd, '.MAIN_DB_PREFIX.'societe as s)'; + // $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)'; + // $this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_facture'; + // $this->export_sql_order[$r] .=' ORDER BY s.nom'; + // $r++; + } + + /** + * Function called when module is enabled. + * The init function add constants, boxes, permissions and menus (defined in constructor) into Dolibarr database. + * It also creates data directories + * + * @param string $options Options when enabling module ('', 'noboxes') + * @return int 1 if OK, 0 if KO + */ + function init($options='') + { + $sql = array(); + define('INC_FROM_DOLIBARR', true); + dol_include_once('/inventory/config.php'); + dol_include_once("/inventory/script/create-maj-base.php"); + + return $this->_init($sql, $options); + } + + /** + * Function called when module is disabled. + * Remove from database constants, boxes and permissions from Dolibarr database. + * Data directories are not deleted + * + * @param string $options Options when enabling module ('', 'noboxes') + * @return int 1 if OK, 0 if KO + */ + function remove($options='') + { + $sql = array(); + + return $this->_remove($sql, $options); + } + +} diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index f2ff6484c64..76ed46c4aa8 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -159,7 +159,7 @@ class Inventory extends CoreObject parent::update($user); } - function set_values($Tab) + function set_values(&$Tab) { global $db,$langs; @@ -183,7 +183,7 @@ class Inventory extends CoreObject } } - return parent::set_values($Tab); + parent::set_values($Tab); } function deleteAllLine() { diff --git a/htdocs/inventory/img/bt-save.png b/htdocs/inventory/img/bt-save.png new file mode 100644 index 0000000000000000000000000000000000000000..f20d292ca91805ab875cbb48391cba2e94e3f194 GIT binary patch literal 493 zcmV;DB6!8NR z1gjKw5($c?FkoS2VIkVsX<-$VG!`O)SSTs9h<{)au@C}cZ*M*ziUuSX&F#!aXZG$i zF&9m6;4!yzJ8$32ENkWSdHAnIZeIpIwANtTHV_dIA}9tb14(>v14}z6zFdUW+_4$A*W93~2-T2sq_LIMs7|t<;^mkZ8tnBIC^H<%a2WSO j#)$U$lt^ynQ-A>gD&Upv=pk<>00000NkvXXu0mjflc~?j literal 0 HcmV?d00001 diff --git a/htdocs/inventory/inventory.php b/htdocs/inventory/inventory.php index 4e70ee1b4cc..1d9ec174257 100644 --- a/htdocs/inventory/inventory.php +++ b/htdocs/inventory/inventory.php @@ -77,6 +77,7 @@ function _action() $inventory->set_values($_POST); $fk_inventory = $inventory->create($user); + $fk_category = (int)GETPOST('fk_category'); $fk_supplier = (int)GETPOST('fk_supplier'); $fk_warehouse = (int)GETPOST('fk_warehouse'); @@ -490,7 +491,7 @@ function _card(&$inventory, $mode='edit') function _card_line(&$inventory, &$lines, $mode) { - global $db; + global $db,$langs,$user,$conf; $inventory->amount_actual = 0; $TCacheEntrepot = array(); @@ -523,7 +524,7 @@ function _card_line(&$inventory, &$lines, $mode) ,'qty_view' => $Inventorydet->qty_view ? $Inventorydet->qty_view : 0 ,'qty_stock' => $stock ,'qty_regulated' => $Inventorydet->qty_regulated ? $Inventorydet->qty_regulated : 0 - ,'action' => ($user->rights->inventory->write ? ''.img_picto($langs->trans('inventoryDeleteLine'), 'delete').'' : '') + ,'action' => ($user->rights->inventory->write ? ''.img_picto($langs->trans('inventoryDeleteLine'), 'delete').'' : '') ,'pmp_stock'=>round($pmp_actual,2) ,'pmp_actual'=> round($pmp * $Inventorydet->qty_view,2) ,'pmp_new'=>(!empty($user->rights->inventory->changePMP) ? '' From 81b01cd05529218ac7dda3a7ad7c55b1fca6d268 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Thu, 15 Dec 2016 11:23:13 +0100 Subject: [PATCH 0064/1163] fix --- htdocs/core/class/coreobject.class.php | 21 +-- htdocs/core/db/DoliDB.class.php | 26 ++-- htdocs/inventory/admin/inventory_setup.php | 168 +++++++++++++++++++++ htdocs/inventory/ajax/ajax.inventory.php | 19 +-- htdocs/inventory/img/plus.png | Bin 0 -> 1299 bytes htdocs/inventory/img/plus16.png | Bin 0 -> 665 bytes htdocs/inventory/inventory.php | 68 ++++----- htdocs/inventory/tpl/inventory.tpl.php | 6 +- 8 files changed, 239 insertions(+), 69 deletions(-) create mode 100644 htdocs/inventory/admin/inventory_setup.php create mode 100644 htdocs/inventory/img/plus.png create mode 100644 htdocs/inventory/img/plus16.png diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index 7613a556092..75706403069 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -342,10 +342,10 @@ class CoreObject extends CommonObject { $query = array(); $query = $this->set_save_query(); - $query['id']=$this->id; + $query['rowid']=$this->id; if(empty($this->no_update_tms))$query['tms'] = date('Y-m-d H:i:s'); - $this->db->update($this->table_element,$query,array('id')); + $this->db->update($this->table_element,$query,array('rowid')); $this->id = $this->db->last_insert_id($this->table_element); @@ -382,19 +382,22 @@ class CoreObject extends CommonObject { } } - public function delete(){ + public function delete(User &$user){ if($this->id>0){ $this->call_trigger(strtoupper($this->element). '_DELETE', $user); - $this->db->delete($this->table_element,array('id'=>$this->id),array(0=>'id')); - if($this->withChild) { + $this->db->delete($this->table_element,array('rowid'=>$this->id),array('rowid')); + + if($this->withChild && !empty($this->childtables)) { foreach($this->childtables as &$childTable) { $className = ucfirst($childTable); - foreach($this->{$className} as &$object) { - - $object->delete(); - + if(!empty($this->{$className})) { + foreach($this->{$className} as &$object) { + + $object->delete($user); + + } } } diff --git a/htdocs/core/db/DoliDB.class.php b/htdocs/core/db/DoliDB.class.php index 85766c31949..da0717e665b 100644 --- a/htdocs/core/db/DoliDB.class.php +++ b/htdocs/core/db/DoliDB.class.php @@ -313,7 +313,6 @@ abstract class DoliDB implements Database function update($table,$fields,$key){ foreach ($fields as $k => $v) { - if(is_string($v)) $v=stripslashes($v); if (is_array($key)){ $i=array_search($k , $key ); @@ -328,10 +327,9 @@ abstract class DoliDB implements Database } } - $tmp[] = $k.'='.$this->quote($val); + $tmp[] = $k.'='.$this->quote($v); } - $sql = sprintf( 'UPDATE '.MAIN_DB_PREFIX.$table.' SET %s WHERE %s' , implode( ',', $tmp ) , implode(' AND ',$where) ); - + $sql = 'UPDATE '.MAIN_DB_PREFIX.$table.' SET '.implode( ',', $tmp ).' WHERE ' . implode(' AND ',$where) ; $res = $this->query( $sql ); if($res===false) { @@ -358,7 +356,9 @@ abstract class DoliDB implements Database } - $sql = sprintf( 'INSERT INTO '.MAIN_DB_PREFIX.$table.' ( %s ) values( %s ) ', implode( ",", $keys ) , implode( ",", $values ) ); + $sql = 'INSERT INTO '.MAIN_DB_PREFIX.$table.' + ( '.implode( ",", $keys ).' ) + VALUES ( '.implode( ",", $values ).' ) '; $res = $this->query($sql); if($res===false) { @@ -379,26 +379,30 @@ abstract class DoliDB implements Database */ function delete($table,$fields,$key){ foreach ($fields as $k => $v) { - if(is_string($v)) $v=stripslashes($v); - if (is_array($key)){ $i=array_search($k , $key ); if ( $i !== false) { - $where[] = $key[$i]."=" . $this->escape( $v ) ; + $where[] = $key[$i].'=' . $this->quote( $v ) ; continue; } } else { if ( $k == $key) { - $where[] = "$k=" .$this->escape( $v ) ; + $where[] = $k.'='.$this->quote( $v ) ; continue; } } } - $sql = sprintf( 'DELETE FROM '.MAIN_DB_PREFIX.$table.' WHERE '.implode(' AND ',$where)); + $sql = 'DELETE FROM '.MAIN_DB_PREFIX.$table.' WHERE '.implode(' AND ',$where); - return $this->query( $sql ); + $res = $this->query( $sql ); + if($res===false) { + return false; + } + + return true; + } } diff --git a/htdocs/inventory/admin/inventory_setup.php b/htdocs/inventory/admin/inventory_setup.php new file mode 100644 index 00000000000..f55bc092517 --- /dev/null +++ b/htdocs/inventory/admin/inventory_setup.php @@ -0,0 +1,168 @@ + + * Copyright (C) 2015 ATM Consulting + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \file admin/inventory.php + * \ingroup inventory + * \brief This file is an example module setup page + * Put some comments here + */ +// Dolibarr environment +$res = @include("../../main.inc.php"); // From htdocs directory +if (! $res) { + $res = @include("../../../main.inc.php"); // From "custom" directory +} + +// Libraries +require_once DOL_DOCUMENT_ROOT . "/core/lib/admin.lib.php"; +require_once '../lib/inventory.lib.php'; + +// Translations +$langs->load("inventory@inventory"); + +// Access control +if (! $user->admin) { + accessforbidden(); +} + +// Parameters +$action = GETPOST('action', 'alpha'); + +/* + * Actions + */ +if (preg_match('/set_(.*)/',$action,$reg)) +{ + $code=$reg[1]; + if (dolibarr_set_const($db, $code, GETPOST($code), 'chaine', 0, '', $conf->entity) > 0) + { + header("Location: ".$_SERVER["PHP_SELF"]); + exit; + } + else + { + dol_print_error($db); + } +} + +if (preg_match('/del_(.*)/',$action,$reg)) +{ + $code=$reg[1]; + if (dolibarr_del_const($db, $code, 0) > 0) + { + Header("Location: ".$_SERVER["PHP_SELF"]); + exit; + } + else + { + dol_print_error($db); + } +} + +/* + * View + */ +$page_name = "inventorySetup"; +llxHeader('', $langs->trans($page_name)); + +// Subheader +$linkback = '' + . $langs->trans("BackToModuleList") . ''; +print_fiche_titre($langs->trans($page_name), $linkback); + +// Configuration header +$head = inventoryAdminPrepareHead(); +dol_fiche_head( + $head, + 'settings', + $langs->trans("Module104420Name"), + 0, + "inventory@inventory" +); + +// Setup page goes here +$form=new Form($db); +$var=false; +print '
    trans('Title') ?>texte('', 'title', '',50,255) ?>
    trans('Date') ?>calendrier('', 'date_inventory',time()) ?>select_date(time(),'date_inventory'); ?>
    trans('SelectCategory') ?>select_all_categories(0,'', 'fk_category') ?>select_all_categories(0,'', 'fk_category') ?>
    trans('SelectFournisseur') ?>select_thirdparty('','fk_supplier','s.fournisseur = 1') ?>select_thirdparty('','fk_supplier','s.fournisseur = 1') ?>
    trans('OnlyProdsInStock') ?>
     
    '; +print ''; +print ''."\n"; +print ''; +print ''."\n"; + + +// Example with a yes / no select +$var=!$var; +print ''; +print ''; +print ''; +print ''; + +// Example with a yes / no select +$var=!$var; +print ''; +print ''; +print ''; +print ''; + +// Example with a yes / no select +$var=!$var; +print ''; +print ''; +print ''; +print ''; + +// Example with a yes / no select +$var=!$var; +print ''; +print ''; +print ''; +print ''; + +print '
    '.$langs->trans("Parameters").' '.$langs->trans("Value").'
    '.$langs->trans("INVENTORY_GEN_PDF").' '; +print '
    '; +print ''; +print ''; +print $form->selectyesno("INVENTORY_GEN_PDF",$conf->global->INVENTORY_GEN_PDF,1); +print ''; +print '
    '; +print '
    '.$langs->trans("INVENTORY_DISABLE_VIRTUAL").' '; +print '
    '; +print ''; +print ''; +print $form->selectyesno("INVENTORY_DISABLE_VIRTUAL",$conf->global->INVENTORY_DISABLE_VIRTUAL,1); +print ''; +print '
    '; +print '
    '.$langs->trans("INVENTORY_USE_MIN_PA_IF_NO_LAST_PA").' '; +print '
    '; +print ''; +print ''; +print $form->selectyesno("INVENTORY_USE_MIN_PA_IF_NO_LAST_PA",$conf->global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA,1); +print ''; +print '
    '; +print '
    '.$langs->trans("INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT").' '; +print '
    '; +print ''; +print ''; +print $form->selectyesno("INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT",$conf->global->INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT,1); +print ''; +print '
    '; +print '
    '; + +llxFooter(); + +$db->close(); \ No newline at end of file diff --git a/htdocs/inventory/ajax/ajax.inventory.php b/htdocs/inventory/ajax/ajax.inventory.php index 34efecfab8f..f2f5ef54903 100644 --- a/htdocs/inventory/ajax/ajax.inventory.php +++ b/htdocs/inventory/ajax/ajax.inventory.php @@ -1,24 +1,21 @@ rights->inventory->write) { echo -1; exit; } $fk_det_inventory = GETPOST('fk_det_inventory'); - $det = new Inventorydet; - if( $det->load($PDOdb, $fk_det_inventory)) { + $det = new Inventorydet($db); + if( $det->fetch( $fk_det_inventory)) { $det->qty_view+=GETPOST('qty'); - $det->save($PDOdb); + $det->update($user); echo $det->qty_view; } @@ -33,10 +30,10 @@ $fk_det_inventory = GETPOST('fk_det_inventory'); - $det = new Inventorydet; - if( $det->load($PDOdb, $fk_det_inventory)) { + $det = new Inventorydet($db); + if( $det->fetch( $fk_det_inventory)) { $det->new_pmp=price2num(GETPOST('pmp')); - $det->save($PDOdb); + $det->update($user); echo $det->new_pmp; } diff --git a/htdocs/inventory/img/plus.png b/htdocs/inventory/img/plus.png new file mode 100644 index 0000000000000000000000000000000000000000..b7072a96960e30374c5d4f6a5e9bfc374e7a532a GIT binary patch literal 1299 zcmV+u1?>8XP)?02y>e zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{00etUL_t(o!?l;qYaC@9$3Hun z-R>r7NwP^cY02AGDU_xVmNpiZDhL+DlP!XX2QLa1CD6aXqaGA`Q1IZ{Lr;QO>Ol{R zp2WMMHcbebDalT=vzd8bJ!ED(nQqc;n|$G6W}auB-}m?a%oI2Pqobn$Jb3URohsGq z^^t0|Is^<^Yb(YWwAO7YWe^0x*4o~|lP4?HYW4b=GiSc2)oMt& zOQw`UDb=}`Qlhm+2+>&!g24E`zZ3+)w{aYcxw$!3R#wnjAFM#FR%2shgHxwYU0PgR zyg5ET-Y66b8FGzMa*qP}d!-b{7=#eCTCG3V*VjLeqUfI|dSHBf9MAJOckbMk3l}cj zs#GfddkHjJ?>-A5&|2>y*IIYHk&fiu*!TUnTdmd|$8j*mbU6F63WQGFf=qov)N=~VxqFRxcK|%=;%V$eR($vA@F_w zmJp(4j3FsQ3k>#G`mbuUyEk1k#&nd>S`$Ul-_2(8)wDv~YPFgwaASCQcp+;^-a08I zJ3BiBL9lf1-o5)-@0CiWsp;wItLd|~mMDq{!;mP7I!ak<7l03dZvfn+QH;#a&VFu; z=^DqpLXP9O`D}Jw*G*l$y}eDd*?g?zGWZ(!4p1&YqtRFz7#Q4B$Jr3%vpk!{DU?!p zp2yD4PS^DuO288Er2~}5#>U=AJ6bl=(~+G^70E*gK^TU;kf(Sbz&(5RY_+eiZ?2p5 zLI|QLVz=e)mQ)ftIJk1TgKEN~K|?)EMwsBiY*8`oZ(OPm9H3(OQeO79oU< zqR8taa21%!DPn-HfOor{FTjLrtsODOIN9V&6%ay%zVCZITBH&s@@Vh#{xM+Kl~SI_ zHjJzS#+U-nkNspgK*deFS{j0UH#=&$g+d`vN_9#pOKyy@hrqF)3mTQhJW#Od4%Sd%2Vn&-1PU*Sc)3 z19x+CQ^3DZ;hAk<-C12--IPM!)mo!6r{3Dy8dA!m4F5W?>KJ38`Lm>YJc;Q)VwFGe zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{00IF?L_t(I%YBf)Yg17i#Xm23 zFPK1Dy0mf1E9sDe1d2mr5Hg8_7!f0Mh@0T9ga1V9(A9sSgE-YX3I4#X2pz;BSuD}m z)YeCH-@WhNyq7wd7oH*QfdgOoo^$wqk3|9-8yoEG>`<%K8ihik7KYKH)&WYXqh7D~ zx!rE>uB@!k>2xL@D;co9zFsYrN_%s2a|^!jqm-IZYmMi5zmJcPZ}>b5A}Ne zQKeFO17v;QM@os5^1qNMigLDXKd~(9n^Nj4K)Tgxk$J`r&9adTWgNVF5IoO)rzl%xkR)f*?Nk#s2>OGXU3hw=Bzg zdU|?_5P~R*0FHoyU9DE{JB~B&`#xH0;*cN+ocO(Nx9fyq$P|`4-O8V$HrVPhm;cF^_T#SL_on- zN}Z=tsmbX{jLnzAR!aR!rBaxoK?t!3YylbI1Mq6BYXbH03rh+APu!w=uUsylyRLf< zB)OdsZcpuE-T|OkES@-yGrinQ1Z>VQcL7*lUdFcV>oWvr!1poFX6)Cd`*?7{nX`EJ zqEgp@-X+FE;9AmPT@Z8&xCvaHv<;ttchkbZ0%0!T4SB2a00000NkvXXu0mjfN$Dr+ literal 0 HcmV?d00001 diff --git a/htdocs/inventory/inventory.php b/htdocs/inventory/inventory.php index 1d9ec174257..ccda1b37c0e 100644 --- a/htdocs/inventory/inventory.php +++ b/htdocs/inventory/inventory.php @@ -131,7 +131,7 @@ function _action() if (!$user->rights->inventory->write) accessforbidden(); - $id = __get('id', 0, 'int'); + $id = GETPOST('id'); $inventory = new Inventory($db); $inventory->load($PDOdb, $id); @@ -153,7 +153,7 @@ function _action() case 'regulate': - $id = __get('id', 0, 'int'); + $id = GETPOST('id'); $inventory = new Inventory($db); $inventory->load($PDOdb, $id); @@ -174,10 +174,10 @@ function _action() case 'changePMP': - $id = __get('id', 0, 'int'); + $id = GETPOST('id'); $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch( $id ); $inventory->changePMP($PDOdb); @@ -188,12 +188,11 @@ function _action() case 'add_line': if (!$user->rights->inventory->write) accessforbidden(); - - $id = __get('id', 0, 'int'); - $fk_warehouse = __get('fk_warehouse', 0, 'int'); + $id = GETPOST('id'); + $fk_warehouse = GETPOST('fk_warehouse'); $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch( $id ); $type = (!empty($conf->use_javascript_ajax) && !empty($conf->global->PRODUIT_USE_SEARCH_TO_SELECT) ? 'string' : 'int'); //AA heu ? @@ -245,16 +244,17 @@ function _action() //Cette action devrais se faire uniquement si le status de l'inventaire est à 0 mais aucune vérif - $rowid = __get('rowid', 0, 'int'); - $Inventorydet = new Inventory($db); - $Inventorydet->load($PDOdb, $rowid); - $Inventorydet->delete($PDOdb); - - $id = __get('id', 0, 'int'); + $rowid = GETPOST('rowid'); + $Inventorydet = new Inventorydet($db); + if($Inventorydet->fetch($rowid)>0) { + $Inventorydet->delete($user); + setEventMessage("ProductDeletedFromInventory"); + } + $id = GETPOST('id'); $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch( $id); - _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'edit'); + _card($inventory, 'edit'); break; case 'flush': @@ -519,16 +519,14 @@ function _card_line(&$inventory, &$lines, $mode) 'produit' => $product->getNomUrl(1).' - '.$product->label ,'entrepot'=>$e->getNomUrl(1) ,'barcode' => $product->barcode - ,'qty' =>($mode == 'edit' ? '' : $qty ) - .($mode =='edit' ? ''.img_picto($langs->trans('Add'), 'plus16@inventory').'' : '') + ,'qty' =>($mode == 'edit' ? ' '.img_picto($langs->trans('Add'), 'plus16@inventory').'' : '' ) ,'qty_view' => $Inventorydet->qty_view ? $Inventorydet->qty_view : 0 ,'qty_stock' => $stock ,'qty_regulated' => $Inventorydet->qty_regulated ? $Inventorydet->qty_regulated : 0 ,'action' => ($user->rights->inventory->write ? ''.img_picto($langs->trans('inventoryDeleteLine'), 'delete').'' : '') ,'pmp_stock'=>round($pmp_actual,2) ,'pmp_actual'=> round($pmp * $Inventorydet->qty_view,2) - ,'pmp_new'=>(!empty($user->rights->inventory->changePMP) ? '' - .($mode =='edit' ? ''.img_picto($langs->trans('Save'), 'bt-save.png@inventory').'' : '') : '') + ,'pmp_new'=>(!empty($user->rights->inventory->changePMP && $mode =='edit') ? ' '.img_picto($langs->trans('Save'), 'bt-save.png@inventory').'' : price($Inventorydet->new_pmp)) ,'pa_stock'=>round($last_pa * $stock,2) ,'pa_actual'=>round($last_pa * $Inventorydet->qty_view,2) ,'current_pa_stock'=>round($current_pa * $stock,2) @@ -656,24 +654,24 @@ function _headerList($view) { ?>   Produit - Entrepôt + trans('Warehouse'); ?> barcode->enabled)) { ?> - Code-barre + trans('Barcode'); ?> - Quantité théorique + trans('TheoricalQty'); ?> global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ - echo 'Valeur théorique'; + echo ''.$langs->trans('TheoricalValue').''; } else { - echo 'Valeur théorique'; + echo ''.$langs->trans('TheoricalValue').''; } ?> - Quantité réelle + trans('RealQty'); ?> global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)) $colspan++; if(!empty($conf->global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)) $colspan++; - echo 'Valeur réelle'; + echo ''.$langs->trans('RealValue').''; ?> - Quantité régulée + trans('RegulatedQty'); ?> # - +   - PMP - Dernier PA + trans('PMP'); ?> + trans('LastPA'); ?> global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ - echo 'PA courant'; + echo ''.$langs->trans('CurrentPA').''; } ?>   - PMP + trans('PMP'); ?> rights->inventory->changePMP)) { echo ''.$langs->trans('ColumnNewPMP').''; } ?> - Dernier PA + trans('LastPA'); ?> global->INVENTORY_USE_MIN_PA_IF_NO_LAST_PA)){ - echo 'PA courant'; + echo ''.$langs->trans('CurrentPA').''; } ?> diff --git a/htdocs/inventory/tpl/inventory.tpl.php b/htdocs/inventory/tpl/inventory.tpl.php index 8a3bfd0f2a6..c3c1347446b 100644 --- a/htdocs/inventory/tpl/inventory.tpl.php +++ b/htdocs/inventory/tpl/inventory.tpl.php @@ -8,7 +8,7 @@ $('#a_save_qty_'+k).hide(); $.ajax({ - url:"script/interface.php" + url:"ajax/ajax.inventory.php" ,data:{ 'fk_det_inventory' : fk_det_inventory ,'qty': qty @@ -37,7 +37,7 @@ $('#a_save_new_pmp_'+k).hide(); $.ajax({ - url:"script/interface.php" + url:"ajax/ajax.inventory.php" ,data:{ 'fk_det_inventory' : fk_det_inventory ,'pmp': pmp @@ -137,7 +137,7 @@ rights->inventory->changePMP)) { - echo ''.$row['pmp_new'].''; + echo ''.$row['pmp_new'].''; } ?> From 9f6f87465503e57e757b46b4de0c783a510f17b8 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Thu, 15 Dec 2016 12:33:26 +0100 Subject: [PATCH 0065/1163] fix --- htdocs/core/class/coreobject.class.php | 4 +- htdocs/core/db/DoliDB.class.php | 2 +- htdocs/inventory/class/inventory.class.php | 55 ++++++++++++---- htdocs/inventory/inventory.php | 73 ++++++---------------- 4 files changed, 64 insertions(+), 70 deletions(-) diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index 75706403069..50b59761b1d 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -158,7 +158,7 @@ class CoreObject extends CommonObject { $query[$field] = $this->date_0; } else{ - $query[$field] = $this->db->jdate($this->{$field}); + $query[$field] = $this->db->idate($this->{$field}); } } else if($this->is_array($info)){ @@ -427,7 +427,6 @@ class CoreObject extends CommonObject { } else { require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'; - $this->{$field} = dol_stringtotime($date); } @@ -435,6 +434,7 @@ class CoreObject extends CommonObject { } public function set_values(&$Tab) { + foreach ($Tab as $key=>$value) { if($this->checkFieldType($key,'date')) { diff --git a/htdocs/core/db/DoliDB.class.php b/htdocs/core/db/DoliDB.class.php index da0717e665b..230572050b5 100644 --- a/htdocs/core/db/DoliDB.class.php +++ b/htdocs/core/db/DoliDB.class.php @@ -355,7 +355,7 @@ abstract class DoliDB implements Database $values[] = $this->quote($v); } - + $sql = 'INSERT INTO '.MAIN_DB_PREFIX.$table.' ( '.implode( ",", $keys ).' ) VALUES ( '.implode( ",", $values ).' ) '; diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index 76ed46c4aa8..b02d601854d 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -71,8 +71,9 @@ class Inventory extends CoreObject public $db; - function __construct(DoliDB &$db) + public function __construct(DoliDB &$db) { + global $conf; $this->db = &$db; @@ -85,13 +86,13 @@ class Inventory extends CoreObject } - function sort_det() + private function sort_det() { if(!empty($this->Inventorydet)) usort($this->Inventorydet, array('Inventory', 'customSort')); } - function fetch($id,$annexe = true) + public function fetch($id,$annexe = true) { if(!$annexe) $this->withChild = false; @@ -115,7 +116,7 @@ class Inventory extends CoreObject } - function customSort(&$objA, &$objB) + private function customSort(&$objA, &$objB) { global $db; @@ -128,7 +129,7 @@ class Inventory extends CoreObject return $r; } - function changePMP() { + public function changePMP() { foreach ($this->Inventorydet as $k => &$Inventorydet) { @@ -147,7 +148,7 @@ class Inventory extends CoreObject } - function update(User &$user) + public function update(User &$user) { //si on valide l'inventaire on sauvegarde le stock à cette instant @@ -159,7 +160,7 @@ class Inventory extends CoreObject parent::update($user); } - function set_values(&$Tab) + public function set_values(&$Tab) { global $db,$langs; @@ -186,19 +187,19 @@ class Inventory extends CoreObject parent::set_values($Tab); } - function deleteAllLine() { + public function deleteAllLine(User &$user) { foreach($this->Inventorydet as &$det) { $det->to_delete = true; } - $this->update(); + $this->update($user); $this->Inventorydet=array(); } - function add_product($fk_product, $fk_entrepot='') { + public function add_product($fk_product, $fk_entrepot='') { $k = $this->addChild('Inventorydet'); $det = &$this->Inventorydet[$k]; @@ -215,7 +216,7 @@ class Inventory extends CoreObject } - function correct_stock($fk_product, $fk_warehouse, $nbpiece, $movement, $label='', $price=0, $inventorycode='') + public function correct_stock($fk_product, $fk_warehouse, $nbpiece, $movement, $label='', $price=0, $inventorycode='') { global $conf, $db, $langs, $user; @@ -250,7 +251,7 @@ class Inventory extends CoreObject } } - function regulate() + public function regulate() { global $db,$user,$langs,$conf; @@ -312,6 +313,36 @@ class Inventory extends CoreObject } + public function add_products_for($fk_warehouse,$fk_category=0,$fk_supplier=0,$only_prods_in_stock=0) { + $e = new Entrepot($this->db); + $e->fetch($fk_warehouse); + $TChildWarehouses = array($fk_warehouse); + $e->get_children_warehouses($fk_warehouse, $TChildWarehouses); + + $sql = 'SELECT ps.fk_product, ps.fk_entrepot + FROM '.MAIN_DB_PREFIX.'product_stock ps + INNER JOIN '.MAIN_DB_PREFIX.'product p ON (p.rowid = ps.fk_product) + LEFT JOIN '.MAIN_DB_PREFIX.'categorie_product cp ON (cp.fk_product = p.rowid) + LEFT JOIN '.MAIN_DB_PREFIX.'product_fournisseur_price pfp ON (pfp.fk_product = p.rowid) + WHERE ps.fk_entrepot IN ('.implode(', ', $TChildWarehouses).')'; + + if($fk_category>0) $sql.= " AND cp.fk_categorie=".$fk_category; + if($fk_supplier>0) $sql.= " AND pfp.fk_soc=".$fk_supplier; + if(!empty($only_prods_in_stock)) $sql.= ' AND ps.reel > 0'; + + $sql.=' GROUP BY ps.fk_product, ps.fk_entrepot + ORDER BY p.ref ASC,p.label ASC'; + + $res = $this->db->query($sql); + if($res) { + while($obj = $this->db->fetch_object($res)){ + $this->add_product($obj->fk_product, $obj->fk_entrepot); + } + } + + + } + static function getLink($id) { global $langs,$db; diff --git a/htdocs/inventory/inventory.php b/htdocs/inventory/inventory.php index ccda1b37c0e..b03627d326a 100644 --- a/htdocs/inventory/inventory.php +++ b/htdocs/inventory/inventory.php @@ -83,34 +83,7 @@ function _action() $fk_warehouse = (int)GETPOST('fk_warehouse'); $only_prods_in_stock = (int)GETPOST('OnlyProdsInStock'); - $e = new Entrepot($db); - $e->fetch($fk_warehouse); - $TChildWarehouses = array($fk_warehouse); - $e->get_children_warehouses($fk_warehouse, $TChildWarehouses); - - $sql = 'SELECT ps.fk_product, ps.fk_entrepot - FROM '.MAIN_DB_PREFIX.'product_stock ps - INNER JOIN '.MAIN_DB_PREFIX.'product p ON (p.rowid = ps.fk_product) - LEFT JOIN '.MAIN_DB_PREFIX.'categorie_product cp ON (cp.fk_product = p.rowid) - LEFT JOIN '.MAIN_DB_PREFIX.'product_fournisseur_price pfp ON (pfp.fk_product = p.rowid) - WHERE ps.fk_entrepot IN ('.implode(', ', $TChildWarehouses).')'; - - if($fk_category>0) $sql.= " AND cp.fk_categorie=".$fk_category; - if($fk_supplier>0) $sql.= " AND pfp.fk_soc=".$fk_supplier; - if($only_prods_in_stock>0) $sql.= ' AND ps.reel > 0'; - - $sql.=' GROUP BY ps.fk_product, ps.fk_entrepot - ORDER BY p.ref ASC,p.label ASC'; - - - $res = $db->query($sql); - if($res) { - while($obj = $db->fetch_object($res)){ - - $inventory->add_product($obj->fk_product, $obj->fk_entrepot); - } - } - + $inventory->add_products_for($fk_warehouse,$fk_category,$fk_supplier,$only_prods_in_stock); $inventory->update($user); header('Location: '.dol_buildpath('inventory/inventory.php?id='.$inventory->id.'&action=edit', 1)); @@ -134,14 +107,14 @@ function _action() $id = GETPOST('id'); $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch($id); $inventory->set_values($_REQUEST); if ($inventory->errors) { setEventMessage($inventory->errors, 'errors'); - _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'edit'); + _card( $inventory, 'edit'); } else { @@ -156,18 +129,18 @@ function _action() $id = GETPOST('id'); $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch($id); if($inventory->status == 0) { $inventory->status = 1; - $inventory->save($PDOdb); + $inventory->update($user); - _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'view'); + _card( $inventory, 'view'); } else { - _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'view'); + _card( $inventory, 'view'); } break; @@ -181,7 +154,7 @@ function _action() $inventory->changePMP($PDOdb); - _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'view'); + _card( $inventory, 'view'); break; @@ -235,7 +208,7 @@ function _action() $inventory->sort_det(); } - _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'edit'); + _card( $inventory, 'edit'); break; @@ -261,16 +234,16 @@ function _action() if (!$user->rights->inventory->create) accessforbidden(); - $id = __get('id', 0, 'int'); + $id = GETPOST('id'); $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch($id); $inventory->deleteAllLine($PDOdb); setEventMessage('Inventaire vidé'); - _fiche($PDOdb, $user, $db, $conf, $langs, $inventory, 'edit'); + _card( $inventory, 'edit'); break; @@ -278,33 +251,23 @@ function _action() if (!$user->rights->inventory->create) accessforbidden(); - $id = __get('id', 0, 'int'); + $id = GETPOST('id'); $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch($id); - $inventory->delete($PDOdb); + $inventory->delete($user); header('Location: '.dol_buildpath('/inventory/inventory.php', 1)); exit; //_list(); - case 'printDoc': - - $id = __get('id', 0, 'int'); - - $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); - - generateODT($PDOdb, $db, $conf, $langs, $inventory); - break; - case 'exportCSV': - $id = __get('id', 0, 'int'); + $id = GETPOST('id'); $inventory = new Inventory($db); - $inventory->load($PDOdb, $id); + $inventory->fetch($id); exportCSV($inventory); @@ -453,7 +416,7 @@ function _card(&$inventory, $mode='edit') $warehouse = new Entrepot($db); $warehouse->fetch($inventory->fk_warehouse); - print dol_get_fiche_head(inventoryPrepareHead($inventory, $langs->trans('inventoryOfWarehouse', $warehouse->libelle), '&action='.$mode)); + print dol_get_fiche_head(inventoryPrepareHead($inventory, $langs->trans('inventoryOfWarehouse', $warehouse->libelle), empty($mode) ? '': '&action='.$mode)); $lines = array(); _card_line($inventory, $lines, $mode); From 7a6fcc744ac8134c5844050956bbe31cd868abac Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Thu, 15 Dec 2016 11:36:42 -0300 Subject: [PATCH 0066/1163] Improve composer installing instructions Add a new section describing how to install composer to manage dependecies, and make a clean install directly from console. --- README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/README.md b/README.md index dddf387cab9..2d5bf7a3cc0 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,16 @@ Other licenses apply for some included dependencies. See [COPYRIGHT](https://git Releases can be downloaded from [official website](https://www.dolibarr.org/). +### Install from composer +If you do not already have Composer installed, you may do so by following the instructions at getcomposer.org. On Linux and Mac OS X, you'll run the following commands: + +curl -sS https://getcomposer.org/installer | php +mv composer.phar /usr/local/bin/composer + +On Windows, you'll download and run https://getcomposer.org/Composer-Setup.exe + +composer create-project dolibarr/dolibarr erp + ### Simple setup If you have low technical skills and you're looking to install Dolibarr ERP/CRM in few clicks, you can use one of the packaged versions: From 1596760d21211d562717467d5043e96d9eda3245 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Thu, 15 Dec 2016 17:02:20 +0100 Subject: [PATCH 0067/1163] fix regulate / apply new PMP / add or remove line --- htdocs/core/class/coreobject.class.php | 24 +++- htdocs/inventory/class/inventory.class.php | 47 ++++---- htdocs/inventory/inventory.php | 129 ++++++++++++++------- htdocs/inventory/tpl/inventory.tpl.php | 26 ++--- 4 files changed, 142 insertions(+), 84 deletions(-) diff --git a/htdocs/core/class/coreobject.class.php b/htdocs/core/class/coreobject.class.php index 50b59761b1d..2022844d6fe 100644 --- a/htdocs/core/class/coreobject.class.php +++ b/htdocs/core/class/coreobject.class.php @@ -35,6 +35,7 @@ class CoreObject extends CommonObject { public $date_0 = '1001-01-01 00:00:00'; //TODO there is a solution for this ? + public $error = ''; /* * @var Array $_fields Fields to synchronize with Database */ @@ -244,6 +245,8 @@ class CoreObject extends CommonObject { return $this->id; } else { + $this->error = $this->db->lasterror(); + return false; } @@ -335,7 +338,7 @@ class CoreObject extends CommonObject { if(empty($this->id )) return $this->create($user); // To test, with that, no need to test on high level object, the core decide it, update just needed if(isset($this->to_delete) && $this->to_delete==true) { - $this->delete(); + $this->delete($user); } else { @@ -345,13 +348,21 @@ class CoreObject extends CommonObject { $query['rowid']=$this->id; if(empty($this->no_update_tms))$query['tms'] = date('Y-m-d H:i:s'); - $this->db->update($this->table_element,$query,array('rowid')); + $res = $this->db->update($this->table_element,$query,array('rowid')); - $this->id = $this->db->last_insert_id($this->table_element); + if($res) { + + $result = $this->call_trigger(strtoupper($this->element). '_UPDATE', $user); - $result = $this->call_trigger(strtoupper($this->element). '_UPDATE', $user); + $this->saveChild($user); + + return true; + } + else{ + $this->error = $this->db->lasterror(); - $this->saveChild($user); + return false; + } } return $this->id; @@ -378,6 +389,9 @@ class CoreObject extends CommonObject { return $this->id; } else{ + + $this->error = $this->db->lasterror(); + return false; } diff --git a/htdocs/inventory/class/inventory.class.php b/htdocs/inventory/class/inventory.class.php index b02d601854d..b39445807e9 100644 --- a/htdocs/inventory/class/inventory.class.php +++ b/htdocs/inventory/class/inventory.class.php @@ -86,7 +86,7 @@ class Inventory extends CoreObject } - private function sort_det() + public function sort_det() { if(!empty($this->Inventorydet)) usort($this->Inventorydet, array('Inventory', 'customSort')); @@ -129,22 +129,23 @@ class Inventory extends CoreObject return $r; } - public function changePMP() { - - foreach ($this->Inventorydet as $k => &$Inventorydet) - { - - if($Inventorydet->new_pmp>0) { - $Inventorydet->pmp = $Inventorydet->new_pmp; - $Inventorydet->new_pmp = 0; - - $db->query("UPDATE ".MAIN_DB_PREFIX."product as p SET pmp = ".$Inventorydet->pmp." - WHERE rowid = ".$Inventorydet->fk_product ); + public function changePMP(User &$user) { + if(!empty($this->Inventorydet)) { + foreach ($this->Inventorydet as $k => &$Inventorydet) + { + if($Inventorydet->new_pmp>0) { + $Inventorydet->pmp = $Inventorydet->new_pmp; + $Inventorydet->new_pmp = 0; + + $this->db->query("UPDATE ".MAIN_DB_PREFIX."product as p SET pmp = ".$Inventorydet->pmp." + WHERE rowid = ".$Inventorydet->fk_product ); + + } } } - parent::save($PDOdb); + return parent::update($user); } @@ -214,6 +215,7 @@ class Inventory extends CoreObject if(empty($date))$date = $this->get_date('datec', 'Y-m-d'); $det->setStockDate( $date , $fk_entrepot); + return true; } public function correct_stock($fk_product, $fk_warehouse, $nbpiece, $movement, $label='', $price=0, $inventorycode='') @@ -233,6 +235,9 @@ class Inventory extends CoreObject $datem = empty($conf->global->INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT) ? dol_now() : $this->date_inventory; $movementstock=new MouvementStock($db); + $movementstock->origin = new stdClass(); + $movementstock->origin->element = 'inventory'; + $movementstock->origin->id = $this->id; $result=$movementstock->_create($user,$fk_product,$fk_warehouse,$op[$movement],$movement,$price,$label,$inventorycode, $datem); if ($result >= 0) @@ -289,10 +294,7 @@ class Inventory extends CoreObject $href = dol_buildpath('/inventory/inventory.php?id='.$this->id.'&action=view', 1); - if(empty($this->title)) - $this->correct_stock($product->id, $Inventorydet->fk_warehouse, $nbpiece, $movement, $langs->trans('inventoryMvtStock', $href, $this->id)); - else - $this->correct_stock($product->id, $Inventorydet->fk_warehouse, $nbpiece, $movement, $langs->trans('inventoryMvtStockWithNomInventaire', $href, $this->title)); + $this->correct_stock($product->id, $Inventorydet->fk_warehouse, $nbpiece, $movement, $langs->trans('inventoryMvtStock')); } } @@ -304,12 +306,15 @@ class Inventory extends CoreObject return 1; } - public function getNomUrl($picto = 1) { + public function getTitle() { global $langs; - $title = !empty($this->title) ? $this->title : $langs->trans('inventoryTitle').' '.$this->id; - - return ''.($picto ? img_picto('','object_list.png','',0).' ' : '').$title.''; + return !empty($this->title) ? $this->title : $langs->trans('inventoryTitle').' '.$this->id; + } + + public function getNomUrl($picto = 1) { + + return ''.($picto ? img_picto('','object_list.png','',0).' ' : '').$this->getTitle().''; } diff --git a/htdocs/inventory/inventory.php b/htdocs/inventory/inventory.php index b03627d326a..5a87eb94ceb 100644 --- a/htdocs/inventory/inventory.php +++ b/htdocs/inventory/inventory.php @@ -77,16 +77,25 @@ function _action() $inventory->set_values($_POST); $fk_inventory = $inventory->create($user); - - $fk_category = (int)GETPOST('fk_category'); - $fk_supplier = (int)GETPOST('fk_supplier'); - $fk_warehouse = (int)GETPOST('fk_warehouse'); - $only_prods_in_stock = (int)GETPOST('OnlyProdsInStock'); + if($fk_inventory>0) { + + $fk_category = (int)GETPOST('fk_category'); + $fk_supplier = (int)GETPOST('fk_supplier'); + $fk_warehouse = (int)GETPOST('fk_warehouse'); + $only_prods_in_stock = (int)GETPOST('OnlyProdsInStock'); + + $inventory->add_products_for($fk_warehouse,$fk_category,$fk_supplier,$only_prods_in_stock); + $inventory->update($user); + + header('Location: '.dol_buildpath('/inventory/inventory.php?id='.$inventory->id.'&action=edit', 1)); + + } + else{ + + setEventMessage($inventory->error,'errors'); + header('Location: '.dol_buildpath('/inventory/inventory.php?action=create', 1)); + } - $inventory->add_products_for($fk_warehouse,$fk_category,$fk_supplier,$only_prods_in_stock); - $inventory->update($user); - - header('Location: '.dol_buildpath('inventory/inventory.php?id='.$inventory->id.'&action=edit', 1)); break; case 'edit': @@ -118,14 +127,14 @@ function _action() } else { - $inventory->save($PDOdb); + $inventory->udpate($user); header('Location: '.dol_buildpath('inventory/inventory.php?id='.$inventory->getId().'&action=view', 1)); } break; - case 'regulate': - + case 'confirm_regulate': + if (!$user->rights->inventory->write) accessforbidden(); $id = GETPOST('id'); $inventory = new Inventory($db); @@ -145,14 +154,14 @@ function _action() break; - case 'changePMP': + case 'confirm_changePMP': $id = GETPOST('id'); $inventory = new Inventory($db); $inventory->fetch( $id ); - $inventory->changePMP($PDOdb); + $inventory->changePMP($user); _card( $inventory, 'view'); @@ -167,35 +176,33 @@ function _action() $inventory = new Inventory($db); $inventory->fetch( $id ); - $type = (!empty($conf->use_javascript_ajax) && !empty($conf->global->PRODUIT_USE_SEARCH_TO_SELECT) ? 'string' : 'int'); //AA heu ? - - $fk_product = __get('fk_product', 0, $type); - - if ($fk_product) + $fk_product = GETPOST('fk_product'); + if ($fk_product>0) { $product = new Product($db); - $product->fetch($fk_product); // ! ref TODO vérifier quand même - if($product->type != 0) { + if($product->fetch($fk_product)<=0 || $product->type != 0) { setEventMessage($langs->trans('ThisIsNotAProduct'),'errors'); } else{ //Check product not already exists $alreadyExists = false; - foreach ($inventory->Inventorydet as $invdet) - { - if ($invdet->fk_product == $product->id - && $invdet->fk_warehouse == $fk_warehouse) + if(!empty($inventory->Inventorydet)) { + foreach ($inventory->Inventorydet as $invdet) { - $alreadyExists = true; - break; + if ($invdet->fk_product == $product->id + && $invdet->fk_warehouse == $fk_warehouse) + { + $alreadyExists = true; + break; + } } } - if (!$alreadyExists) { - $inventory->add_product($PDOdb, $product->id, $fk_warehouse); - + if($inventory->add_product($product->id, $fk_warehouse)) { + setEventMessage($langs->trans('ProductAdded')); + } } else { @@ -204,7 +211,7 @@ function _action() } - $inventory->save($PDOdb); + $inventory->update($user); $inventory->sort_det(); } @@ -212,7 +219,7 @@ function _action() break; - case 'delete_line': + case 'confirm_delete_line': if (!$user->rights->inventory->write) accessforbidden(); @@ -230,7 +237,7 @@ function _action() _card($inventory, 'edit'); break; - case 'flush': + case 'confirm_flush': if (!$user->rights->inventory->create) accessforbidden(); @@ -239,15 +246,15 @@ function _action() $inventory = new Inventory($db); $inventory->fetch($id); - $inventory->deleteAllLine($PDOdb); + $inventory->deleteAllLine($user); - setEventMessage('Inventaire vidé'); + setEventMessage($langs->trans('InventoryFlushed')); _card( $inventory, 'edit'); break; - case 'delete': + case 'confirm_delete': if (!$user->rights->inventory->create) accessforbidden(); @@ -258,7 +265,9 @@ function _action() $inventory->delete($user); - header('Location: '.dol_buildpath('/inventory/inventory.php', 1)); + setEventMessage($langs->trans('InventoryDeleted')); + + header('Location: '.dol_buildpath('/inventory/inventory.php?action=list', 1)); exit; //_list(); @@ -407,19 +416,53 @@ function _card_warehouse(&$inventory) llxFooter(''); } -function _card(&$inventory, $mode='edit') +function _card(&$inventory, $action='edit') { - global $langs, $conf, $db, $user; + global $langs, $conf, $db, $user,$form; llxHeader('',$langs->trans('inventoryEdit'),'',''); + if($action == 'changePMP') { + + print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$inventory->id,$langs->trans('ApplyNewPMP') + ,$langs->trans('ConfirmApplyNewPMP',$inventory->getTitle()),'confirm_changePMP' + ,array(),'no',1); + + } + else if($action == 'flush') { + + print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$inventory->id,$langs->trans('FlushInventory') + ,$langs->trans('ConfirmFlushInventory',$inventory->getTitle()),'confirm_flush' + ,array(),'no',1); + + } + else if($action == 'delete') { + + print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$inventory->id,$langs->trans('Delete') + ,$langs->trans('ConfirmDelete',$inventory->getTitle()),'confirm_delete' + ,array(),'no',1); + + } + else if($action == 'delete_line') { + print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$inventory->id.'&rowid='.GETPOST('rowid'),$langs->trans('DeleteLine') + ,$langs->trans('ConfirmDeleteLine',$inventory->getTitle()),'confirm_delete_line' + ,array(),'no',1); + + } + else if($action == 'regulate') { + print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$inventory->id,$langs->trans('RegulateStock') + ,$langs->trans('ConfirmRegulateStock',$inventory->getTitle()),'confirm_regulate' + ,array(),'no',1); + + } + $warehouse = new Entrepot($db); $warehouse->fetch($inventory->fk_warehouse); - print dol_get_fiche_head(inventoryPrepareHead($inventory, $langs->trans('inventoryOfWarehouse', $warehouse->libelle), empty($mode) ? '': '&action='.$mode)); + print dol_get_fiche_head(inventoryPrepareHead($inventory, $langs->trans('inventoryOfWarehouse', $warehouse->libelle), empty($action) ? '': '&action='.$action)); $lines = array(); - _card_line($inventory, $lines, $mode); + _card_line($inventory, $lines, $action); print ''.$langs->trans('inventoryOnDate')." ".$inventory->get_date('date_inventory').'

    '; @@ -439,7 +482,7 @@ function _card(&$inventory, $mode='edit') $view_url = dol_buildpath('/inventory/inventory.php', 1); $view = array( - 'mode' => $mode + 'mode' => $action ,'url' => dol_buildpath('/inventory/inventory.php', 1) ,'can_validate' => (int) $user->rights->inventory->validate ,'is_already_validate' => (int) $inventory->status @@ -486,7 +529,7 @@ function _card_line(&$inventory, &$lines, $mode) ,'qty_view' => $Inventorydet->qty_view ? $Inventorydet->qty_view : 0 ,'qty_stock' => $stock ,'qty_regulated' => $Inventorydet->qty_regulated ? $Inventorydet->qty_regulated : 0 - ,'action' => ($user->rights->inventory->write ? ''.img_picto($langs->trans('inventoryDeleteLine'), 'delete').'' : '') + ,'action' => ($user->rights->inventory->write && $mode=='edit' ? ''.img_picto($langs->trans('inventoryDeleteLine'), 'delete').'' : '') ,'pmp_stock'=>round($pmp_actual,2) ,'pmp_actual'=> round($pmp * $Inventorydet->qty_view,2) ,'pmp_new'=>(!empty($user->rights->inventory->changePMP && $mode =='edit') ? ' '.img_picto($langs->trans('Save'), 'bt-save.png@inventory').'' : price($Inventorydet->new_pmp)) diff --git a/htdocs/inventory/tpl/inventory.tpl.php b/htdocs/inventory/tpl/inventory.tpl.php index c3c1347446b..d707ec581b1 100644 --- a/htdocs/inventory/tpl/inventory.tpl.php +++ b/htdocs/inventory/tpl/inventory.tpl.php @@ -159,44 +159,40 @@ } _footerList($view,$total_pmp,$total_pmp_actual,$total_pa,$total_pa_actual, $total_current_pa,$total_current_pa_actual); - ?> - - + ?> - + status != 1) { ?>
    - + trans('ExportCSV') ?> trans('Modify') ?> rights->inventory->changePMP)) { - echo ''.$langs->trans('ApplyPMP').''; + echo ''.$langs->trans('ApplyPMP').''; } if ($can_validate == 1) { ?> - Réguler le stock + trans('RegulateStock') ?> - - + + - Vider + trans('Flush'); ?>     - Supprimer + trans('Delete') ?>
    - + status == 1) { ?> From b7a6a71dff921c7bca72fcca7c964fd7b2c0b7a5 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Thu, 15 Dec 2016 17:20:46 +0100 Subject: [PATCH 0068/1163] move file to core --- .../inventory.php} | 26 +-- ...ntory.class.php => modInventory.class.php} | 4 +- htdocs/inventory/lib/inventory.lib.php | 161 +----------------- 3 files changed, 15 insertions(+), 176 deletions(-) rename htdocs/{inventory/admin/inventory_setup.php => admin/inventory.php} (84%) rename htdocs/core/modules/{modinventory.class.php => modInventory.class.php} (99%) diff --git a/htdocs/inventory/admin/inventory_setup.php b/htdocs/admin/inventory.php similarity index 84% rename from htdocs/inventory/admin/inventory_setup.php rename to htdocs/admin/inventory.php index f55bc092517..2548494fc79 100644 --- a/htdocs/inventory/admin/inventory_setup.php +++ b/htdocs/admin/inventory.php @@ -23,17 +23,16 @@ * Put some comments here */ // Dolibarr environment -$res = @include("../../main.inc.php"); // From htdocs directory -if (! $res) { - $res = @include("../../../main.inc.php"); // From "custom" directory -} +require '../main.inc.php'; + // Libraries require_once DOL_DOCUMENT_ROOT . "/core/lib/admin.lib.php"; -require_once '../lib/inventory.lib.php'; +require_once DOL_DOCUMENT_ROOT .'/inventory/lib/inventory.lib.php'; // Translations -$langs->load("inventory@inventory"); +$langs->load("stock"); +$langs->load("inventory"); // Access control if (! $user->admin) { @@ -104,21 +103,6 @@ print ''.$langs->trans("Parameters").''."\n"; print ' '; print ''.$langs->trans("Value").''."\n"; - -// Example with a yes / no select -$var=!$var; -print ''; -print ''.$langs->trans("INVENTORY_GEN_PDF").''; -print ' '; -print ''; -print '
    '; -print ''; -print ''; -print $form->selectyesno("INVENTORY_GEN_PDF",$conf->global->INVENTORY_GEN_PDF,1); -print ''; -print '
    '; -print ''; - // Example with a yes / no select $var=!$var; print ''; diff --git a/htdocs/core/modules/modinventory.class.php b/htdocs/core/modules/modInventory.class.php similarity index 99% rename from htdocs/core/modules/modinventory.class.php rename to htdocs/core/modules/modInventory.class.php index 10fb1cc477e..31170375752 100644 --- a/htdocs/core/modules/modinventory.class.php +++ b/htdocs/core/modules/modInventory.class.php @@ -94,7 +94,7 @@ class modinventory extends DolibarrModules $this->dirs = array(); // Config pages. Put here list of php page, stored into inventory/admin directory, to use to setup module. - $this->config_page_url = array("inventory_setup.php@inventory"); + $this->config_page_url = array("inventory.php"); // Dependencies $this->hidden = false; // A condition to hide module @@ -103,7 +103,7 @@ class modinventory extends DolibarrModules $this->conflictwith = array(); // List of modules id this module is in conflict with $this->phpmin = array(5,0); // Minimum version of PHP required by module $this->need_dolibarr_version = array(3,0); // Minimum version of Dolibarr required by module - $this->langfiles = array("inventory@inventory"); + $this->langfiles = array("inventory"); // Constants // List of particular constants to add when module is enabled (key, 'chaine', value, desc, visible, 'current' or 'allentities', deleteonunactive) diff --git a/htdocs/inventory/lib/inventory.lib.php b/htdocs/inventory/lib/inventory.lib.php index fd60d631a58..3cbf03a67c7 100644 --- a/htdocs/inventory/lib/inventory.lib.php +++ b/htdocs/inventory/lib/inventory.lib.php @@ -32,14 +32,11 @@ function inventoryAdminPrepareHead() $h = 0; $head = array(); - $head[$h][0] = dol_buildpath("/inventory/admin/inventory_setup.php", 1); + $head[$h][0] = dol_buildpath("/admin/inventory.php", 1); $head[$h][1] = $langs->trans("Parameters"); $head[$h][2] = 'settings'; $h++; - $head[$h][0] = dol_buildpath("/inventory/admin/inventory_about.php", 1); - $head[$h][1] = $langs->trans("About"); - $head[$h][2] = 'about'; - $h++; + // Show more tabs from modules // Entries must be declared in modules descriptor with line @@ -54,10 +51,12 @@ function inventoryAdminPrepareHead() return $head; } -function inventoryPrepareHead(&$inventory, $title='Inventaire', $get='') +function inventoryPrepareHead(&$inventory, $title='Inventory', $get='') { + global $langs; + return array( - array(dol_buildpath('/inventory/inventory.php?id='.$inventory->id.$get, 1), $title,'inventaire') + array(dol_buildpath('/inventory/inventory.php?id='.$inventory->id.$get, 1), $langs->trans($title),'inventory') ); } @@ -65,7 +64,7 @@ function inventoryPrepareHead(&$inventory, $title='Inventaire', $get='') function inventorySelectProducts(&$inventory) { - global $conf,$db; + global $conf,$db,$langs; $except_product_id = array(); @@ -78,7 +77,6 @@ function inventorySelectProducts(&$inventory) $form = new Form($db); $form->select_produits(-1, 'fk_product'); - // Il nous faut impérativement une liste custom car il ne faut que les entrepôts de la famille de celui qu'on inventorie $TChildWarehouses = array($inventory->fk_warehouse); $e = new Entrepot($db); $e->fetch($inventory->fk_warehouse); @@ -93,153 +91,10 @@ function inventorySelectProducts(&$inventory) $Tab[$res->rowid] = $res->label; } print '   '; - print 'Entrepôt : '.$form::selectarray('fk_warehouse', $Tab); + print $langs->trans('Warehouse').' : '.$form::selectarray('fk_warehouse', $Tab); $select_html = ob_get_clean(); return $select_html; } -function ajaxAutocompleter($selected, $htmlname, $url, $urloption='', $minLength=2, $autoselect=0, $ajaxoptions=array()) -{ - if (empty($minLength)) $minLength=1; - - $script = ''; - - $script.= ''; - - return $script; -} From e65ae08e5cbf926a16ee75c655dc50fe4e955ac0 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Thu, 15 Dec 2016 17:42:14 +0100 Subject: [PATCH 0069/1163] langs --- htdocs/inventory/inventory.php | 7 ++--- htdocs/langs/en_US/inventory.lang | 52 +++++++++++++++++++++++++++++++ htdocs/langs/fr_FR/inventory.lang | 50 +++++++++++++++++++++++++++++ 3 files changed, 104 insertions(+), 5 deletions(-) create mode 100644 htdocs/langs/en_US/inventory.lang create mode 100644 htdocs/langs/fr_FR/inventory.lang diff --git a/htdocs/inventory/inventory.php b/htdocs/inventory/inventory.php index 5a87eb94ceb..d0ca303c239 100644 --- a/htdocs/inventory/inventory.php +++ b/htdocs/inventory/inventory.php @@ -23,8 +23,6 @@ require_once '../main.inc.php'; -ini_set('memory_limit', '512M'); - require_once DOL_DOCUMENT_ROOT.'/core/class/listview.class.php'; require_once DOL_DOCUMENT_ROOT.'/inventory/class/inventory.class.php'; require_once DOL_DOCUMENT_ROOT.'/inventory/lib/inventory.lib.php'; @@ -35,12 +33,11 @@ require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; include_once DOL_DOCUMENT_ROOT.'/product/stock/class/entrepot.class.php'; require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php'; -set_time_limit(0); +$langs->load("stock"); +$langs->load("inventory"); if(!$user->rights->inventory->read) accessforbidden(); -$langs->load("inventory"); - _action(); function _action() diff --git a/htdocs/langs/en_US/inventory.lang b/htdocs/langs/en_US/inventory.lang new file mode 100644 index 00000000000..ba947f09d77 --- /dev/null +++ b/htdocs/langs/en_US/inventory.lang @@ -0,0 +1,52 @@ +# Dolibarr language file - Source file is en_US - inventory + +Module104420Name = Inventory +Module104420Desc = Create and manage your inventory + +inventorySetup = Inventory Setup + +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory + +inventoryTitle=Inventory +inventoryListTitle=List +inventoryListEmpty=No inventory in progress + +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse : %s +inventoryErrorQtyAdd=Error : one quantity is leaser than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Supplier filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Allow to not destock child product from a kit on inventory +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT=Stock mouvment have date of inventory +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action ? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock \ No newline at end of file diff --git a/htdocs/langs/fr_FR/inventory.lang b/htdocs/langs/fr_FR/inventory.lang new file mode 100644 index 00000000000..85fdf3112dc --- /dev/null +++ b/htdocs/langs/fr_FR/inventory.lang @@ -0,0 +1,50 @@ +Module104420Name = Inventory +Module104420Desc = Create and manage your inventory + +inventorySetup = Inventory Setup + +inventoryCreatePermission=Create new inventory +inventoryReadPermission=View inventories +inventoryWritePermission=Update inventories +inventoryValidatePermission=Validate inventory + +inventoryTitle=Inventory +inventoryListTitle=List +inventoryListEmpty=No inventory in progress + +inventoryCreateDelete=Create/Delete inventory +inventoryCreate=Create new +inventoryEdit=Edit +inventoryValidate=Validated +inventoryDraft=Running +inventorySelectWarehouse=Warehouse choice +inventoryConfirmCreate=Create +inventoryOfWarehouse=Inventory for warehouse : %s +inventoryErrorQtyAdd=Error : one quantity is leaser than zero +inventoryMvtStock=By inventory +inventoryWarningProductAlreadyExists=This product is already into list +SelectCategory=Category filter +SelectFournisseur=Supplier filter +inventoryOnDate=Inventory +INVENTORY_DISABLE_VIRTUAL=Allow to not destock child product from a kit on inventory +INVENTORY_USE_MIN_PA_IF_NO_LAST_PA=Use the buy price if no last buy price can be found +INVENTORY_USE_INVENTORY_DATE_FROM_DATEMVT=Stock mouvment have date of inventory +inventoryChangePMPPermission=Allow to change PMP value for a product +ColumnNewPMP=New unit PMP +OnlyProdsInStock=Do not add product without stock +TheoricalQty=Theorique qty +TheoricalValue=Theorique qty +LastPA=Last BP +CurrentPA=Curent BP +RealQty=Real Qty +RealValue=Real Value +RegulatedQty=Regulated Qty +AddInventoryProduct=Add product to inventory +AddProduct=Add +ApplyPMP=Apply PMP +FlushInventory=Flush inventory +ConfirmFlushInventory=Do you confirm this action ? +InventoryFlushed=Inventory flushed +ExitEditMode=Exit edition +inventoryDeleteLine=Delete line +RegulateStock=Regulate Stock \ No newline at end of file From e91c2c6e77fd1f5a33eba12124ffbd1599e930cd Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Fri, 16 Dec 2016 03:56:48 -0300 Subject: [PATCH 0070/1163] Code refactoring. Improve folder structure. For better project implementation. Most hosting server have a default folder public or public_html insted of htdocs, htdocs is a exclusive folder for apache web server, for example is no the same folder in NGINX. --- {htdocs => public}/.gitignore | 0 {htdocs => public}/accountancy/admin/account.php | 0 .../accountancy/admin/accountmodel.php | 0 {htdocs => public}/accountancy/admin/card.php | 0 {htdocs => public}/accountancy/admin/categories.php | 0 .../accountancy/admin/defaultaccounts.php | 0 {htdocs => public}/accountancy/admin/export.php | 0 {htdocs => public}/accountancy/admin/fiscalyear.php | 0 .../accountancy/admin/fiscalyear_card.php | 0 .../accountancy/admin/fiscalyear_info.php | 0 .../accountancy/admin/importaccounts.php | 0 {htdocs => public}/accountancy/admin/index.html | 0 {htdocs => public}/accountancy/admin/index.php | 0 {htdocs => public}/accountancy/admin/journal.php | 0 .../accountancy/admin/productaccount.php | 0 .../accountancy/bookkeeping/balance.php | 0 .../accountancy/bookkeeping/balancebymonth.php | 0 {htdocs => public}/accountancy/bookkeeping/card.php | 0 .../accountancy/bookkeeping/index.html | 0 {htdocs => public}/accountancy/bookkeeping/list.php | 0 .../accountancy/bookkeeping/listbyaccount.php | 0 .../accountancy/bookkeeping/listbyyear.php | 0 .../accountancy/class/accountancycategory.class.php | 0 .../accountancy/class/accountancyexport.class.php | 0 .../accountancy/class/accountancysystem.class.php | 0 .../accountancy/class/accountingaccount.class.php | 0 .../accountancy/class/bookkeeping.class.php | 0 .../class/html.formventilation.class.php | 0 {htdocs => public}/accountancy/class/index.html | 0 {htdocs => public}/accountancy/customer/card.php | 0 {htdocs => public}/accountancy/customer/index.html | 0 {htdocs => public}/accountancy/customer/index.php | 0 {htdocs => public}/accountancy/customer/lines.php | 0 {htdocs => public}/accountancy/customer/list.php | 0 .../accountancy/expensereport/card.php | 0 .../accountancy/expensereport/index.html | 0 .../accountancy/expensereport/index.php | 0 .../accountancy/expensereport/lines.php | 0 .../accountancy/expensereport/list.php | 0 {htdocs => public}/accountancy/index.html | 0 {htdocs => public}/accountancy/index.php | 0 .../accountancy/journal/bankjournal.php | 0 .../accountancy/journal/expensereportsjournal.php | 0 {htdocs => public}/accountancy/journal/index.html | 0 .../accountancy/journal/purchasesjournal.php | 0 .../accountancy/journal/sellsjournal.php | 0 {htdocs => public}/accountancy/report/index.html | 0 {htdocs => public}/accountancy/report/result.php | 0 {htdocs => public}/accountancy/supplier/card.php | 0 {htdocs => public}/accountancy/supplier/index.html | 0 {htdocs => public}/accountancy/supplier/index.php | 0 {htdocs => public}/accountancy/supplier/lines.php | 0 {htdocs => public}/accountancy/supplier/list.php | 0 .../accountancy/tpl/export_journal.tpl.php | 0 {htdocs => public}/accountancy/tpl/index.html | 0 {htdocs => public}/adherents/admin/adherent.php | 0 .../adherents/admin/adherent_extrafields.php | 0 .../adherents/admin/adherent_type_extrafields.php | 0 {htdocs => public}/adherents/admin/index.html | 0 {htdocs => public}/adherents/admin/public.php | 0 {htdocs => public}/adherents/agenda.php | 0 .../canvas/actions_adherentcard_common.class.php | 0 .../default/actions_adherentcard_default.class.php | 0 .../adherents/canvas/default/index.html | 0 .../canvas/default/tpl/adherentcard_create.tpl.php | 0 .../canvas/default/tpl/adherentcard_edit.tpl.php | 0 .../canvas/default/tpl/adherentcard_view.tpl.php | 0 .../adherents/canvas/default/tpl/index.html | 0 {htdocs => public}/adherents/canvas/index.html | 0 {htdocs => public}/adherents/card.php | 0 {htdocs => public}/adherents/cartes/carte.php | 0 {htdocs => public}/adherents/cartes/index.html | 0 .../adherents/class/adherent.class.php | 0 .../adherents/class/adherent_type.class.php | 0 .../adherents/class/adherentstats.class.php | 0 .../adherents/class/api_members.class.php | 0 .../adherents/class/api_subscriptions.class.php | 0 {htdocs => public}/adherents/class/index.html | 0 .../adherents/class/subscription.class.php | 0 {htdocs => public}/adherents/document.php | 0 {htdocs => public}/adherents/htpasswd.php | 0 {htdocs => public}/adherents/index.php | 0 {htdocs => public}/adherents/ldap.php | 0 {htdocs => public}/adherents/list.php | 0 {htdocs => public}/adherents/note.php | 0 {htdocs => public}/adherents/stats/byproperties.php | 0 {htdocs => public}/adherents/stats/geo.php | 0 {htdocs => public}/adherents/stats/index.html | 0 {htdocs => public}/adherents/stats/index.php | 0 {htdocs => public}/adherents/subscription.php | 0 {htdocs => public}/adherents/subscription/card.php | 0 .../adherents/subscription/index.html | 0 {htdocs => public}/adherents/subscription/info.php | 0 {htdocs => public}/adherents/subscription/list.php | 0 {htdocs => public}/adherents/tpl/index.html | 0 .../adherents/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/adherents/type.php | 0 {htdocs => public}/admin/agenda.php | 0 {htdocs => public}/admin/agenda_extrafields.php | 0 {htdocs => public}/admin/agenda_extsites.php | 0 {htdocs => public}/admin/agenda_other.php | 0 {htdocs => public}/admin/agenda_xcal.php | 0 {htdocs => public}/admin/bank.php | 0 {htdocs => public}/admin/bank_extrafields.php | 0 {htdocs => public}/admin/barcode.php | 0 {htdocs => public}/admin/boxes.php | 0 {htdocs => public}/admin/chequereceipts.php | 0 {htdocs => public}/admin/clicktodial.php | 0 {htdocs => public}/admin/commande.php | 0 {htdocs => public}/admin/company.php | 0 {htdocs => public}/admin/compta.php | 0 {htdocs => public}/admin/confexped.php | 0 {htdocs => public}/admin/const.php | 0 {htdocs => public}/admin/contract.php | 0 {htdocs => public}/admin/delais.php | 0 {htdocs => public}/admin/dict.php | 0 {htdocs => public}/admin/ecm.php | 0 {htdocs => public}/admin/events.php | 0 {htdocs => public}/admin/expedition.php | 0 {htdocs => public}/admin/expedition_extrafields.php | 0 .../admin/expeditiondet_extrafields.php | 0 {htdocs => public}/admin/expensereport.php | 0 .../admin/expensereport_extrafields.php | 0 {htdocs => public}/admin/external_rss.php | 0 {htdocs => public}/admin/facture.php | 0 {htdocs => public}/admin/fckeditor.php | 0 {htdocs => public}/admin/fichinter.php | 0 {htdocs => public}/admin/geoipmaxmind.php | 0 {htdocs => public}/admin/ihm.php | 0 {htdocs => public}/admin/index.php | 0 {htdocs => public}/admin/ldap.php | 0 {htdocs => public}/admin/ldap_contacts.php | 0 {htdocs => public}/admin/ldap_groups.php | 0 {htdocs => public}/admin/ldap_members.php | 0 {htdocs => public}/admin/ldap_users.php | 0 {htdocs => public}/admin/limits.php | 0 {htdocs => public}/admin/livraison.php | 0 {htdocs => public}/admin/livraison_extrafields.php | 0 .../admin/livraisondet_extrafields.php | 0 {htdocs => public}/admin/loan.php | 0 {htdocs => public}/admin/mailing.php | 0 {htdocs => public}/admin/mailman.php | 0 {htdocs => public}/admin/mails.php | 0 {htdocs => public}/admin/menus.php | 0 {htdocs => public}/admin/menus/edit.php | 0 {htdocs => public}/admin/menus/index.php | 0 {htdocs => public}/admin/menus/other.php | 0 {htdocs => public}/admin/modules.php | 0 {htdocs => public}/admin/multicurrency.php | 0 {htdocs => public}/admin/notification.php | 0 {htdocs => public}/admin/oauth.php | 0 {htdocs => public}/admin/oauthlogintokens.php | 0 {htdocs => public}/admin/order_extrafields.php | 0 {htdocs => public}/admin/orderdet_extrafields.php | 0 {htdocs => public}/admin/payment.php | 0 {htdocs => public}/admin/pdf.php | 0 {htdocs => public}/admin/perms.php | 0 {htdocs => public}/admin/prelevement.php | 0 {htdocs => public}/admin/propal.php | 0 {htdocs => public}/admin/proxy.php | 0 {htdocs => public}/admin/receiptprinter.php | 0 {htdocs => public}/admin/resource.php | 0 {htdocs => public}/admin/resource_extrafields.php | 0 {htdocs => public}/admin/salaries.php | 0 {htdocs => public}/admin/security.php | 0 {htdocs => public}/admin/security_file.php | 0 {htdocs => public}/admin/security_other.php | 0 {htdocs => public}/admin/sms.php | 0 {htdocs => public}/admin/spip.php | 0 {htdocs => public}/admin/stock.php | 0 {htdocs => public}/admin/supplier_invoice.php | 0 {htdocs => public}/admin/supplier_order.php | 0 {htdocs => public}/admin/supplier_payment.php | 0 {htdocs => public}/admin/supplier_proposal.php | 0 .../admin/supplierinvoice_extrafields.php | 0 .../admin/supplierinvoicedet_extrafields.php | 0 .../admin/supplierorder_extrafields.php | 0 .../admin/supplierorderdet_extrafields.php | 0 {htdocs => public}/admin/syslog.php | 0 {htdocs => public}/admin/system/about.php | 0 {htdocs => public}/admin/system/browser.php | 0 {htdocs => public}/admin/system/constall.php | 0 {htdocs => public}/admin/system/database-tables.php | 0 {htdocs => public}/admin/system/database.php | 0 {htdocs => public}/admin/system/dbtable.php | 0 {htdocs => public}/admin/system/dolibarr.php | 0 {htdocs => public}/admin/system/filecheck.php | 0 {htdocs => public}/admin/system/index.php | 0 {htdocs => public}/admin/system/modules.php | 0 {htdocs => public}/admin/system/os.php | 0 {htdocs => public}/admin/system/perf.php | 0 {htdocs => public}/admin/system/phpinfo.php | 0 {htdocs => public}/admin/system/web.php | 0 {htdocs => public}/admin/system/xcache.php | 0 {htdocs => public}/admin/system/xdebug.php | 0 {htdocs => public}/admin/taxes.php | 0 {htdocs => public}/admin/tools/dolibarr_export.php | 0 {htdocs => public}/admin/tools/dolibarr_import.php | 0 {htdocs => public}/admin/tools/eaccelerator.php | 0 {htdocs => public}/admin/tools/export.php | 0 {htdocs => public}/admin/tools/index.php | 0 {htdocs => public}/admin/tools/listevents.php | 0 {htdocs => public}/admin/tools/listsessions.php | 0 {htdocs => public}/admin/tools/purge.php | 0 {htdocs => public}/admin/tools/update.php | 0 {htdocs => public}/admin/translation.php | 0 {htdocs => public}/admin/triggers.php | 0 {htdocs => public}/admin/user.php | 0 {htdocs => public}/admin/websites.php | 0 {htdocs => public}/admin/workflow.php | 0 {htdocs => public}/api/README.md | 0 {htdocs => public}/api/admin/explorer.php | 0 {htdocs => public}/api/admin/index.php | 0 {htdocs => public}/api/class/api.class.php | 0 {htdocs => public}/api/class/api_access.class.php | 0 .../api/class/api_dictionnarycountries.class.php | 0 .../api/class/api_dictionnarytowns.class.php | 0 {htdocs => public}/api/class/api_login.class.php | 0 {htdocs => public}/api/class/api_status.class.php | 0 {htdocs => public}/api/class/index.html | 0 {htdocs => public}/api/index.php | 0 {htdocs => public}/asterisk/cidlookup.php | 0 {htdocs => public}/asterisk/index.html | 0 {htdocs => public}/asterisk/wrapper.php | 0 {htdocs => public}/barcode/codeinit.php | 0 {htdocs => public}/barcode/index.html | 0 {htdocs => public}/barcode/printsheet.php | 0 {htdocs => public}/bookmarks/admin/bookmark.php | 0 {htdocs => public}/bookmarks/admin/index.html | 0 {htdocs => public}/bookmarks/bookmarks.lib.php | 0 {htdocs => public}/bookmarks/card.php | 0 .../bookmarks/class/bookmark.class.php | 0 {htdocs => public}/bookmarks/class/index.html | 0 {htdocs => public}/bookmarks/index.html | 0 {htdocs => public}/bookmarks/list.php | 0 {htdocs => public}/cache.manifest | 0 {htdocs => public}/cashdesk/admin/cashdesk.php | 0 {htdocs => public}/cashdesk/admin/index.html | 0 {htdocs => public}/cashdesk/affContenu.php | 0 {htdocs => public}/cashdesk/affIndex.php | 0 {htdocs => public}/cashdesk/affPied.php | 0 {htdocs => public}/cashdesk/class/Auth.class.php | 0 .../cashdesk/class/Facturation.class.php | 0 {htdocs => public}/cashdesk/class/index.html | 0 {htdocs => public}/cashdesk/css/index.html | 0 {htdocs => public}/cashdesk/css/style.css | 0 {htdocs => public}/cashdesk/deconnexion.php | 0 {htdocs => public}/cashdesk/facturation.php | 0 {htdocs => public}/cashdesk/facturation_dhtml.php | 0 {htdocs => public}/cashdesk/facturation_verif.php | 0 {htdocs => public}/cashdesk/img/basket_delete.png | Bin .../cashdesk/img/bg_conteneur_droite.png | Bin .../cashdesk/img/bg_conteneur_gauche.png | Bin {htdocs => public}/cashdesk/img/bg_entete.png | Bin {htdocs => public}/cashdesk/img/bg_pied.png | Bin {htdocs => public}/cashdesk/img/calendrier.png | Bin {htdocs => public}/cashdesk/img/decrypted.png | Bin {htdocs => public}/cashdesk/img/gescom.png | Bin {htdocs => public}/cashdesk/img/index.html | 0 {htdocs => public}/cashdesk/img/lock.png | Bin {htdocs => public}/cashdesk/img/login.png | Bin {htdocs => public}/cashdesk/img/new.png | Bin .../cashdesk/include/environnement.php | 0 {htdocs => public}/cashdesk/include/index.html | 0 {htdocs => public}/cashdesk/include/keypad.php | 0 {htdocs => public}/cashdesk/index.php | 0 {htdocs => public}/cashdesk/index_verif.php | 0 {htdocs => public}/cashdesk/javascript/dhtml.js | 0 .../cashdesk/javascript/facturation1.js | 0 {htdocs => public}/cashdesk/javascript/index.html | 0 {htdocs => public}/cashdesk/javascript/keypad.js | 0 .../cashdesk/tpl/facturation1.tpl.php | 0 {htdocs => public}/cashdesk/tpl/index.html | 0 .../cashdesk/tpl/liste_articles.tpl.php | 0 {htdocs => public}/cashdesk/tpl/menu.tpl.php | 0 {htdocs => public}/cashdesk/tpl/ticket.tpl.php | 0 {htdocs => public}/cashdesk/tpl/validation1.tpl.php | 0 {htdocs => public}/cashdesk/tpl/validation2.tpl.php | 0 {htdocs => public}/cashdesk/validation.php | 0 {htdocs => public}/cashdesk/validation_ok.php | 0 {htdocs => public}/cashdesk/validation_ticket.php | 0 {htdocs => public}/cashdesk/validation_verif.php | 0 {htdocs => public}/categories/admin/categorie.php | 0 .../categories/admin/categorie_extrafields.php | 0 {htdocs => public}/categories/admin/index.html | 0 {htdocs => public}/categories/card.php | 0 .../categories/class/api_categories.class.php | 0 .../class/api_deprecated_category.class.php | 0 .../categories/class/categorie.class.php | 0 {htdocs => public}/categories/class/index.html | 0 {htdocs => public}/categories/edit.php | 0 {htdocs => public}/categories/index.php | 0 {htdocs => public}/categories/photos.php | 0 {htdocs => public}/categories/traduction.php | 0 {htdocs => public}/categories/viewcat.php | 0 {htdocs => public}/comm/action/card.php | 0 .../comm/action/class/actioncomm.class.php | 0 .../comm/action/class/api_agendaevents.class.php | 0 .../comm/action/class/cactioncomm.class.php | 0 {htdocs => public}/comm/action/class/ical.class.php | 0 {htdocs => public}/comm/action/class/index.html | 0 {htdocs => public}/comm/action/document.php | 0 {htdocs => public}/comm/action/index.php | 0 {htdocs => public}/comm/action/info.php | 0 {htdocs => public}/comm/action/listactions.php | 0 {htdocs => public}/comm/action/pertype.php | 0 {htdocs => public}/comm/action/peruser.php | 0 {htdocs => public}/comm/action/rapport/index.php | 0 {htdocs => public}/comm/address.php | 0 {htdocs => public}/comm/admin/index.html | 0 .../comm/admin/propal_extrafields.php | 0 .../comm/admin/propaldet_extrafields.php | 0 {htdocs => public}/comm/card.php | 0 {htdocs => public}/comm/contact.php | 0 {htdocs => public}/comm/index.php | 0 .../comm/mailing/advtargetemailing.php | 0 {htdocs => public}/comm/mailing/card.php | 0 {htdocs => public}/comm/mailing/cibles.php | 0 .../comm/mailing/class/advtargetemailing.class.php | 0 .../class/html.formadvtargetemailing.class.php | 0 {htdocs => public}/comm/mailing/class/index.html | 0 .../comm/mailing/class/mailing.class.php | 0 {htdocs => public}/comm/mailing/index.php | 0 {htdocs => public}/comm/mailing/info.php | 0 {htdocs => public}/comm/mailing/list.php | 0 {htdocs => public}/comm/multiprix.php | 0 {htdocs => public}/comm/propal/apercu.php | 0 {htdocs => public}/comm/propal/card.php | 0 .../comm/propal/class/api_proposals.class.php | 0 {htdocs => public}/comm/propal/class/index.html | 0 .../comm/propal/class/propal.class.php | 0 .../comm/propal/class/propalestats.class.php | 0 {htdocs => public}/comm/propal/contact.php | 0 {htdocs => public}/comm/propal/document.php | 0 {htdocs => public}/comm/propal/index.php | 0 {htdocs => public}/comm/propal/info.php | 0 {htdocs => public}/comm/propal/list.php | 0 {htdocs => public}/comm/propal/note.php | 0 {htdocs => public}/comm/propal/stats/index.php | 0 {htdocs => public}/comm/propal/tpl/index.html | 0 .../comm/propal/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/comm/prospect/index.php | 0 {htdocs => public}/comm/prospect/recap-prospect.php | 0 {htdocs => public}/comm/recap-client.php | 0 {htdocs => public}/comm/remise.php | 0 {htdocs => public}/comm/remx.php | 0 {htdocs => public}/commande/apercu.php | 0 {htdocs => public}/commande/card.php | 0 .../class/api_deprecated_commande.class.php | 0 .../commande/class/api_orders.class.php | 0 .../commande/class/commande.class.php | 0 .../commande/class/commandestats.class.php | 0 {htdocs => public}/commande/class/index.html | 0 {htdocs => public}/commande/contact.php | 0 {htdocs => public}/commande/customer.php | 0 {htdocs => public}/commande/document.php | 0 {htdocs => public}/commande/index.php | 0 {htdocs => public}/commande/info.php | 0 {htdocs => public}/commande/list.php | 0 {htdocs => public}/commande/note.php | 0 {htdocs => public}/commande/orderstoinvoice.php | 0 {htdocs => public}/commande/stats/index.php | 0 {htdocs => public}/commande/tpl/index.html | 0 .../commande/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/compta/ajaxpayment.php | 0 {htdocs => public}/compta/bank/annuel.php | 0 {htdocs => public}/compta/bank/bankentries.php | 0 {htdocs => public}/compta/bank/bilan.php | 0 {htdocs => public}/compta/bank/budget.php | 0 {htdocs => public}/compta/bank/card.php | 0 {htdocs => public}/compta/bank/categ.php | 0 .../compta/bank/class/account.class.php | 0 .../compta/bank/class/api_bankaccounts.class.php | 0 .../compta/bank/class/bankcateg.class.php | 0 {htdocs => public}/compta/bank/class/index.html | 0 {htdocs => public}/compta/bank/document.php | 0 {htdocs => public}/compta/bank/graph.php | 0 {htdocs => public}/compta/bank/index.php | 0 {htdocs => public}/compta/bank/info.php | 0 {htdocs => public}/compta/bank/ligne.php | 0 {htdocs => public}/compta/bank/releve.php | 0 {htdocs => public}/compta/bank/transfer.php | 0 {htdocs => public}/compta/bank/treso.php | 0 {htdocs => public}/compta/charges/index.php | 0 {htdocs => public}/compta/clients.php | 0 {htdocs => public}/compta/deplacement/card.php | 0 .../compta/deplacement/class/deplacement.class.php | 0 .../deplacement/class/deplacementstats.class.php | 0 .../compta/deplacement/class/index.html | 0 {htdocs => public}/compta/deplacement/document.php | 0 {htdocs => public}/compta/deplacement/index.php | 0 {htdocs => public}/compta/deplacement/info.php | 0 {htdocs => public}/compta/deplacement/list.php | 0 .../compta/deplacement/stats/index.php | 0 {htdocs => public}/compta/facture.php | 0 .../facture/admin/facture_cust_extrafields.php | 0 .../facture/admin/facturedet_cust_extrafields.php | 0 {htdocs => public}/compta/facture/admin/index.html | 0 {htdocs => public}/compta/facture/apercu.php | 0 .../facture/class/api_deprecated_invoice.class.php | 0 .../compta/facture/class/api_invoices.class.php | 0 .../compta/facture/class/facture-rec.class.php | 0 .../compta/facture/class/facture.class.php | 0 .../compta/facture/class/facturestats.class.php | 0 {htdocs => public}/compta/facture/class/index.html | 0 .../compta/facture/class/paymentterm.class.php | 0 {htdocs => public}/compta/facture/contact.php | 0 {htdocs => public}/compta/facture/document.php | 0 {htdocs => public}/compta/facture/fiche-rec.php | 0 {htdocs => public}/compta/facture/index.html | 0 {htdocs => public}/compta/facture/info.php | 0 {htdocs => public}/compta/facture/list.php | 0 {htdocs => public}/compta/facture/note.php | 0 {htdocs => public}/compta/facture/prelevement.php | 0 {htdocs => public}/compta/facture/stats/index.php | 0 {htdocs => public}/compta/facture/tpl/index.html | 0 .../compta/facture/tpl/linkedobjectblock.tpl.php | 0 .../facture/tpl/linkedobjectblockForRec.tpl.php | 0 {htdocs => public}/compta/index.php | 0 {htdocs => public}/compta/journal/index.html | 0 .../compta/journal/purchasesjournal.php | 0 {htdocs => public}/compta/journal/sellsjournal.php | 0 {htdocs => public}/compta/localtax/card.php | 0 {htdocs => public}/compta/localtax/class/index.html | 0 .../compta/localtax/class/localtax.class.php | 0 {htdocs => public}/compta/localtax/clients.php | 0 {htdocs => public}/compta/localtax/index.php | 0 .../compta/localtax/quadri_detail.php | 0 {htdocs => public}/compta/localtax/reglement.php | 0 {htdocs => public}/compta/paiement.php | 0 {htdocs => public}/compta/paiement/avalider.php | 0 {htdocs => public}/compta/paiement/card.php | 0 {htdocs => public}/compta/paiement/cheque/card.php | 0 .../compta/paiement/cheque/class/index.html | 0 .../paiement/cheque/class/remisecheque.class.php | 0 {htdocs => public}/compta/paiement/cheque/index.php | 0 {htdocs => public}/compta/paiement/cheque/list.php | 0 .../compta/paiement/class/cpaiement.class.php | 0 {htdocs => public}/compta/paiement/class/index.html | 0 .../compta/paiement/class/paiement.class.php | 0 {htdocs => public}/compta/paiement/index.php | 0 {htdocs => public}/compta/paiement/info.php | 0 {htdocs => public}/compta/paiement/list.php | 0 {htdocs => public}/compta/paiement/rapport.php | 0 {htdocs => public}/compta/paiement_charge.php | 0 {htdocs => public}/compta/payment_sc/card.php | 0 {htdocs => public}/compta/payment_sc/index.html | 0 {htdocs => public}/compta/prelevement/bons.php | 0 {htdocs => public}/compta/prelevement/card.php | 0 .../prelevement/class/bonprelevement.class.php | 0 .../compta/prelevement/class/index.html | 0 .../prelevement/class/ligneprelevement.class.php | 0 .../prelevement/class/rejetprelevement.class.php | 0 {htdocs => public}/compta/prelevement/create.php | 0 {htdocs => public}/compta/prelevement/demandes.php | 0 {htdocs => public}/compta/prelevement/factures.php | 0 .../compta/prelevement/fiche-rejet.php | 0 .../compta/prelevement/fiche-stat.php | 0 {htdocs => public}/compta/prelevement/index.php | 0 {htdocs => public}/compta/prelevement/ligne.php | 0 {htdocs => public}/compta/prelevement/list.php | 0 {htdocs => public}/compta/prelevement/rejets.php | 0 {htdocs => public}/compta/prelevement/stats.php | 0 {htdocs => public}/compta/recap-compta.php | 0 {htdocs => public}/compta/resultat/clientfourn.php | 0 {htdocs => public}/compta/resultat/index.php | 0 {htdocs => public}/compta/salaries/card.php | 0 {htdocs => public}/compta/salaries/class/index.html | 0 .../compta/salaries/class/paymentsalary.class.php | 0 {htdocs => public}/compta/salaries/document.php | 0 {htdocs => public}/compta/salaries/index.php | 0 {htdocs => public}/compta/salaries/info.php | 0 {htdocs => public}/compta/sociales/card.php | 0 .../compta/sociales/class/cchargesociales.class.php | 0 .../compta/sociales/class/chargesociales.class.php | 0 {htdocs => public}/compta/sociales/class/index.html | 0 .../class/paymentsocialcontribution.class.php | 0 {htdocs => public}/compta/sociales/document.php | 0 {htdocs => public}/compta/sociales/index.php | 0 {htdocs => public}/compta/sociales/info.php | 0 {htdocs => public}/compta/sociales/payments.php | 0 {htdocs => public}/compta/stats/cabyprodserv.php | 0 {htdocs => public}/compta/stats/cabyuser.php | 0 {htdocs => public}/compta/stats/casoc.php | 0 {htdocs => public}/compta/stats/index.php | 0 {htdocs => public}/compta/tva/card.php | 0 {htdocs => public}/compta/tva/class/index.html | 0 {htdocs => public}/compta/tva/class/tva.class.php | 0 {htdocs => public}/compta/tva/clients.php | 0 {htdocs => public}/compta/tva/index.php | 0 {htdocs => public}/compta/tva/info.php | 0 {htdocs => public}/compta/tva/quadri.php | 0 {htdocs => public}/compta/tva/quadri_detail.php | 0 {htdocs => public}/compta/tva/quarter_report.php | 0 {htdocs => public}/compta/tva/reglement.php | 0 {htdocs => public}/conf/.gitignore | 0 {htdocs => public}/conf/.htaccess | 0 {htdocs => public}/conf/conf.php.example | 0 {htdocs => public}/conf/index.html | 0 .../canvas/actions_contactcard_common.class.php | 0 .../default/actions_contactcard_default.class.php | 0 .../contact/canvas/default/index.html | 0 .../canvas/default/tpl/contactcard_create.tpl.php | 0 .../canvas/default/tpl/contactcard_edit.tpl.php | 0 .../canvas/default/tpl/contactcard_view.tpl.php | 0 .../contact/canvas/default/tpl/index.html | 0 {htdocs => public}/contact/canvas/index.html | 0 {htdocs => public}/contact/card.php | 0 {htdocs => public}/contact/class/contact.class.php | 0 {htdocs => public}/contact/class/index.html | 0 {htdocs => public}/contact/document.php | 0 {htdocs => public}/contact/index.html | 0 {htdocs => public}/contact/info.php | 0 {htdocs => public}/contact/ldap.php | 0 {htdocs => public}/contact/list.php | 0 {htdocs => public}/contact/note.php | 0 {htdocs => public}/contact/perso.php | 0 {htdocs => public}/contact/vcard.php | 0 .../contrat/admin/contract_extrafields.php | 0 .../contrat/admin/contractdet_extrafields.php | 0 {htdocs => public}/contrat/admin/index.html | 0 {htdocs => public}/contrat/card.php | 0 {htdocs => public}/contrat/class/contrat.class.php | 0 {htdocs => public}/contrat/class/index.html | 0 {htdocs => public}/contrat/contact.php | 0 {htdocs => public}/contrat/document.php | 0 {htdocs => public}/contrat/index.php | 0 {htdocs => public}/contrat/info.php | 0 {htdocs => public}/contrat/list.php | 0 {htdocs => public}/contrat/note.php | 0 {htdocs => public}/contrat/services.php | 0 {htdocs => public}/contrat/tpl/index.html | 0 .../contrat/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/core/actions_builddoc.inc.php | 0 .../core/actions_changeselectedfields.inc.php | 0 {htdocs => public}/core/actions_dellink.inc.php | 0 {htdocs => public}/core/actions_extrafields.inc.php | 0 {htdocs => public}/core/actions_fetchobject.inc.php | 0 {htdocs => public}/core/actions_lineupdown.inc.php | 0 {htdocs => public}/core/actions_linkedfiles.inc.php | 0 {htdocs => public}/core/actions_massactions.inc.php | 0 {htdocs => public}/core/actions_printing.inc.php | 0 {htdocs => public}/core/actions_sendmails.inc.php | 0 {htdocs => public}/core/actions_setnotes.inc.php | 0 {htdocs => public}/core/ajax/ajaxdirpreview.php | 0 {htdocs => public}/core/ajax/ajaxdirtree.php | 0 {htdocs => public}/core/ajax/bankconciliate.php | 0 {htdocs => public}/core/ajax/box.php | 0 {htdocs => public}/core/ajax/constantonoff.php | 0 {htdocs => public}/core/ajax/contacts.php | 0 {htdocs => public}/core/ajax/extraparams.php | 0 {htdocs => public}/core/ajax/fileupload.php | 0 {htdocs => public}/core/ajax/index.html | 0 {htdocs => public}/core/ajax/loadinplace.php | 0 {htdocs => public}/core/ajax/objectonoff.php | 0 {htdocs => public}/core/ajax/price.php | 0 {htdocs => public}/core/ajax/row.php | 0 {htdocs => public}/core/ajax/saveinplace.php | 0 {htdocs => public}/core/ajax/security.php | 0 {htdocs => public}/core/ajax/selectsearchbox.php | 0 {htdocs => public}/core/ajax/vatrates.php | 0 {htdocs => public}/core/ajax/ziptown.php | 0 {htdocs => public}/core/antispamimage.php | 0 {htdocs => public}/core/boxes/box_actions.php | 0 {htdocs => public}/core/boxes/box_activity.php | 0 {htdocs => public}/core/boxes/box_bookmarks.php | 0 {htdocs => public}/core/boxes/box_clients.php | 0 {htdocs => public}/core/boxes/box_commandes.php | 0 {htdocs => public}/core/boxes/box_comptes.php | 0 {htdocs => public}/core/boxes/box_contacts.php | 0 {htdocs => public}/core/boxes/box_contracts.php | 0 {htdocs => public}/core/boxes/box_external_rss.php | 0 {htdocs => public}/core/boxes/box_factures.php | 0 .../core/boxes/box_factures_fourn.php | 0 .../core/boxes/box_factures_fourn_imp.php | 0 {htdocs => public}/core/boxes/box_factures_imp.php | 0 {htdocs => public}/core/boxes/box_ficheinter.php | 0 {htdocs => public}/core/boxes/box_fournisseurs.php | 0 {htdocs => public}/core/boxes/box_goodcustomers.php | 0 .../core/boxes/box_graph_invoices_permonth.php | 0 .../boxes/box_graph_invoices_supplier_permonth.php | 0 .../core/boxes/box_graph_orders_permonth.php | 0 .../boxes/box_graph_orders_supplier_permonth.php | 0 .../core/boxes/box_graph_product_distribution.php | 0 .../core/boxes/box_graph_propales_permonth.php | 0 {htdocs => public}/core/boxes/box_members.php | 0 {htdocs => public}/core/boxes/box_produits.php | 0 .../core/boxes/box_produits_alerte_stock.php | 0 {htdocs => public}/core/boxes/box_project.php | 0 {htdocs => public}/core/boxes/box_propales.php | 0 {htdocs => public}/core/boxes/box_prospect.php | 0 .../core/boxes/box_services_contracts.php | 0 .../core/boxes/box_services_expired.php | 0 .../core/boxes/box_supplier_orders.php | 0 {htdocs => public}/core/boxes/box_task.php | 0 {htdocs => public}/core/boxes/index.html | 0 {htdocs => public}/core/boxes/modules_boxes.php | 0 {htdocs => public}/core/class/CMailFile.class.php | 0 {htdocs => public}/core/class/CSMSFile.class.php | 0 {htdocs => public}/core/class/antivir.class.php | 0 {htdocs => public}/core/class/canvas.class.php | 0 {htdocs => public}/core/class/ccountry.class.php | 0 .../core/class/commondocgenerator.class.php | 0 .../core/class/commoninvoice.class.php | 0 .../core/class/commonobject.class.php | 0 .../core/class/commonobjectline.class.php | 0 {htdocs => public}/core/class/commonorder.class.php | 0 .../core/class/commonstickergenerator.class.php | 0 {htdocs => public}/core/class/conf.class.php | 0 {htdocs => public}/core/class/cookie.class.php | 0 {htdocs => public}/core/class/cstate.class.php | 0 {htdocs => public}/core/class/ctypent.class.php | 0 {htdocs => public}/core/class/discount.class.php | 0 {htdocs => public}/core/class/doleditor.class.php | 0 .../core/class/dolexception.class.php | 0 {htdocs => public}/core/class/dolgeoip.class.php | 0 {htdocs => public}/core/class/dolgraph.class.php | 0 {htdocs => public}/core/class/dolprintipp.class.php | 0 .../core/class/dolreceiptprinter.class.php | 0 {htdocs => public}/core/class/events.class.php | 0 {htdocs => public}/core/class/extrafields.class.php | 0 {htdocs => public}/core/class/fileupload.class.php | 0 {htdocs => public}/core/class/fiscalyear.class.php | 0 .../core/class/genericobject.class.php | 0 {htdocs => public}/core/class/google.class.php | 0 {htdocs => public}/core/class/hookmanager.class.php | 0 {htdocs => public}/core/class/html.form.class.php | 0 .../core/class/html.formaccounting.class.php | 0 .../core/class/html.formactions.class.php | 0 .../core/class/html.formadmin.class.php | 0 .../core/class/html.formbank.class.php | 0 .../core/class/html.formbarcode.class.php | 0 .../core/class/html.formcompany.class.php | 0 .../core/class/html.formcontract.class.php | 0 .../core/class/html.formcron.class.php | 0 .../core/class/html.formfile.class.php | 0 .../core/class/html.formintervention.class.php | 0 .../core/class/html.formmail.class.php | 0 .../core/class/html.formmailing.class.php | 0 .../core/class/html.formmargin.class.php | 0 .../core/class/html.formorder.class.php | 0 .../core/class/html.formother.class.php | 0 .../core/class/html.formprojet.class.php | 0 .../core/class/html.formpropal.class.php | 0 .../core/class/html.formsms.class.php | 0 .../core/class/html.formsocialcontrib.class.php | 0 {htdocs => public}/core/class/index.html | 0 {htdocs => public}/core/class/infobox.class.php | 0 {htdocs => public}/core/class/interfaces.class.php | 0 {htdocs => public}/core/class/ldap.class.php | 0 {htdocs => public}/core/class/link.class.php | 0 {htdocs => public}/core/class/menu.class.php | 0 {htdocs => public}/core/class/menubase.class.php | 0 {htdocs => public}/core/class/notify.class.php | 0 {htdocs => public}/core/class/openid.class.php | 0 {htdocs => public}/core/class/rssparser.class.php | 0 {htdocs => public}/core/class/smtps.class.php | 0 {htdocs => public}/core/class/stats.class.php | 0 {htdocs => public}/core/class/translate.class.php | 0 {htdocs => public}/core/class/utils.class.php | 0 {htdocs => public}/core/class/vcard.class.php | 0 .../core/class/workboardresponse.class.php | 0 {htdocs => public}/core/datepicker.php | 0 {htdocs => public}/core/db/Database.interface.php | 0 {htdocs => public}/core/db/DoliDB.class.php | 0 {htdocs => public}/core/db/index.html | 0 {htdocs => public}/core/db/mssql.class.php | 0 {htdocs => public}/core/db/mysqli.class.php | 0 {htdocs => public}/core/db/pgsql.class.php | 0 {htdocs => public}/core/db/sqlite3.class.php | 0 {htdocs => public}/core/doxygen.php | 0 {htdocs => public}/core/extrafieldsinexport.inc.php | 0 .../core/filemanagerdol/browser/default/browser.css | 0 .../core/filemanagerdol/browser/default/browser.php | 0 .../browser/default/frmactualfolder.php | 0 .../browser/default/frmcreatefolder.php | 0 .../filemanagerdol/browser/default/frmfolders.php | 0 .../browser/default/frmresourceslist.php | 0 .../filemanagerdol/browser/default/frmupload.php | 0 .../browser/default/images/Folder.gif | Bin .../browser/default/images/FolderUp.gif | Bin .../browser/default/images/icons/32/ai.gif | Bin .../browser/default/images/icons/32/avi.gif | Bin .../browser/default/images/icons/32/bmp.gif | Bin .../browser/default/images/icons/32/cs.gif | Bin .../default/images/icons/32/default.icon.gif | Bin .../browser/default/images/icons/32/dll.gif | Bin .../browser/default/images/icons/32/doc.gif | Bin .../browser/default/images/icons/32/exe.gif | Bin .../browser/default/images/icons/32/fla.gif | Bin .../browser/default/images/icons/32/gif.gif | Bin .../browser/default/images/icons/32/htm.gif | Bin .../browser/default/images/icons/32/html.gif | Bin .../browser/default/images/icons/32/index.html | 0 .../browser/default/images/icons/32/jpg.gif | Bin .../browser/default/images/icons/32/js.gif | Bin .../browser/default/images/icons/32/mdb.gif | Bin .../browser/default/images/icons/32/mp3.gif | Bin .../browser/default/images/icons/32/pdf.gif | Bin .../browser/default/images/icons/32/png.gif | Bin .../browser/default/images/icons/32/ppt.gif | Bin .../browser/default/images/icons/32/rdp.gif | Bin .../browser/default/images/icons/32/swf.gif | Bin .../browser/default/images/icons/32/swt.gif | Bin .../browser/default/images/icons/32/txt.gif | Bin .../browser/default/images/icons/32/vsd.gif | Bin .../browser/default/images/icons/32/xls.gif | Bin .../browser/default/images/icons/32/xml.gif | Bin .../browser/default/images/icons/32/zip.gif | Bin .../browser/default/images/icons/ai.gif | Bin .../browser/default/images/icons/avi.gif | Bin .../browser/default/images/icons/bmp.gif | Bin .../browser/default/images/icons/cs.gif | Bin .../browser/default/images/icons/default.icon.gif | Bin .../browser/default/images/icons/dll.gif | Bin .../browser/default/images/icons/doc.gif | Bin .../browser/default/images/icons/exe.gif | Bin .../browser/default/images/icons/fla.gif | Bin .../browser/default/images/icons/gif.gif | Bin .../browser/default/images/icons/htm.gif | Bin .../browser/default/images/icons/html.gif | Bin .../browser/default/images/icons/index.html | 0 .../browser/default/images/icons/jpg.gif | Bin .../browser/default/images/icons/js.gif | Bin .../browser/default/images/icons/mdb.gif | Bin .../browser/default/images/icons/mp3.gif | Bin .../browser/default/images/icons/pdf.gif | Bin .../browser/default/images/icons/png.gif | Bin .../browser/default/images/icons/ppt.gif | Bin .../browser/default/images/icons/rdp.gif | Bin .../browser/default/images/icons/swf.gif | Bin .../browser/default/images/icons/swt.gif | Bin .../browser/default/images/icons/txt.gif | Bin .../browser/default/images/icons/vsd.gif | Bin .../browser/default/images/icons/xls.gif | Bin .../browser/default/images/icons/xml.gif | Bin .../browser/default/images/icons/zip.gif | Bin .../browser/default/images/index.html | 0 .../core/filemanagerdol/browser/default/index.html | 0 .../filemanagerdol/browser/default/js/common.js | 0 .../filemanagerdol/browser/default/js/fckxml.js | 0 .../filemanagerdol/browser/default/js/index.html | 0 .../core/filemanagerdol/browser/default/spacer.gif | Bin .../core/filemanagerdol/browser/index.html | 0 .../core/filemanagerdol/connectors/index.html | 0 .../core/filemanagerdol/connectors/php/basexml.php | 0 .../core/filemanagerdol/connectors/php/commands.php | 0 .../core/filemanagerdol/connectors/php/config.php | 0 .../filemanagerdol/connectors/php/connector.php | 0 .../core/filemanagerdol/connectors/php/index.html | 0 .../core/filemanagerdol/connectors/php/io.php | 0 .../core/filemanagerdol/connectors/php/upload.php | 0 .../core/filemanagerdol/connectors/php/util.php | 0 {htdocs => public}/core/filemanagerdol/index.html | 0 {htdocs => public}/core/get_menudiv.php | 0 {htdocs => public}/core/index.html | 0 {htdocs => public}/core/js/blockUI.js | 0 {htdocs => public}/core/js/datepicker.js.php | 0 {htdocs => public}/core/js/dst.js | 0 {htdocs => public}/core/js/editinplace.js | 0 {htdocs => public}/core/js/index.html | 0 {htdocs => public}/core/js/jnotify.js | 0 {htdocs => public}/core/js/lib_batch.js | 0 {htdocs => public}/core/js/lib_head.js.php | 0 {htdocs => public}/core/js/lib_photosresize.js | 0 {htdocs => public}/core/js/lib_rare.js | 0 {htdocs => public}/core/js/select2_locale.js.php | 0 {htdocs => public}/core/js/timepicker.js.php | 0 {htdocs => public}/core/js/timesheet.js | 0 {htdocs => public}/core/lib/accounting.lib.php | 0 {htdocs => public}/core/lib/admin.lib.php | 0 {htdocs => public}/core/lib/agenda.lib.php | 0 {htdocs => public}/core/lib/ajax.lib.php | 0 {htdocs => public}/core/lib/bank.lib.php | 0 {htdocs => public}/core/lib/barcode.lib.php | 0 {htdocs => public}/core/lib/categories.lib.php | 0 {htdocs => public}/core/lib/company.lib.php | 0 {htdocs => public}/core/lib/contact.lib.php | 0 {htdocs => public}/core/lib/contract.lib.php | 0 {htdocs => public}/core/lib/cron.lib.php | 0 {htdocs => public}/core/lib/date.lib.php | 0 {htdocs => public}/core/lib/doc.lib.php | 0 {htdocs => public}/core/lib/doleditor.lib.php | 0 {htdocs => public}/core/lib/donation.lib.php | 0 {htdocs => public}/core/lib/ecm.lib.php | 0 {htdocs => public}/core/lib/emailing.lib.php | 0 {htdocs => public}/core/lib/expedition.lib.php | 0 {htdocs => public}/core/lib/expensereport.lib.php | 0 {htdocs => public}/core/lib/fichinter.lib.php | 0 {htdocs => public}/core/lib/files.lib.php | 0 {htdocs => public}/core/lib/fiscalyear.lib.php | 0 {htdocs => public}/core/lib/format_cards.lib.php | 0 {htdocs => public}/core/lib/fourn.lib.php | 0 {htdocs => public}/core/lib/functions.lib.php | 0 {htdocs => public}/core/lib/functions2.lib.php | 0 {htdocs => public}/core/lib/functions_ch.lib.php | 0 .../core/lib/functionsnumtoword.lib.php | 0 {htdocs => public}/core/lib/geturl.lib.php | 0 {htdocs => public}/core/lib/holiday.lib.php | 0 {htdocs => public}/core/lib/hrm.lib.php | 0 {htdocs => public}/core/lib/images.lib.php | 0 {htdocs => public}/core/lib/import.lib.php | 0 {htdocs => public}/core/lib/index.html | 0 {htdocs => public}/core/lib/invoice.lib.php | 0 {htdocs => public}/core/lib/invoice2.lib.php | 0 {htdocs => public}/core/lib/json.lib.php | 0 {htdocs => public}/core/lib/ldap.lib.php | 0 {htdocs => public}/core/lib/loan.lib.php | 0 {htdocs => public}/core/lib/mailmanspip.lib.php | 0 {htdocs => public}/core/lib/member.lib.php | 0 {htdocs => public}/core/lib/memory.lib.php | 0 {htdocs => public}/core/lib/multicurrency.lib.php | 0 {htdocs => public}/core/lib/oauth.lib.php | 0 {htdocs => public}/core/lib/order.lib.php | 0 {htdocs => public}/core/lib/payments.lib.php | 0 {htdocs => public}/core/lib/pdf.lib.php | 0 {htdocs => public}/core/lib/prelevement.lib.php | 0 {htdocs => public}/core/lib/price.lib.php | 0 {htdocs => public}/core/lib/product.lib.php | 0 {htdocs => public}/core/lib/project.lib.php | 0 {htdocs => public}/core/lib/propal.lib.php | 0 {htdocs => public}/core/lib/receiptprinter.lib.php | 0 {htdocs => public}/core/lib/report.lib.php | 0 {htdocs => public}/core/lib/resource.lib.php | 0 {htdocs => public}/core/lib/salaries.lib.php | 0 {htdocs => public}/core/lib/security.lib.php | 0 {htdocs => public}/core/lib/security2.lib.php | 0 {htdocs => public}/core/lib/sendings.lib.php | 0 {htdocs => public}/core/lib/stock.lib.php | 0 .../core/lib/supplier_proposal.lib.php | 0 {htdocs => public}/core/lib/tax.lib.php | 0 {htdocs => public}/core/lib/treeview.lib.php | 0 {htdocs => public}/core/lib/trip.lib.php | 0 {htdocs => public}/core/lib/usergroups.lib.php | 0 {htdocs => public}/core/lib/vat.lib.php | 0 {htdocs => public}/core/lib/ws.lib.php | 0 {htdocs => public}/core/lib/xcal.lib.php | 0 {htdocs => public}/core/login/README.txt | 0 .../core/login/functions_dolibarr.php | 0 {htdocs => public}/core/login/functions_empty.php | 0 .../core/login/functions_forceuser.php | 0 {htdocs => public}/core/login/functions_http.php | 0 {htdocs => public}/core/login/functions_ldap.php | 0 {htdocs => public}/core/login/functions_openid.php | 0 {htdocs => public}/core/login/index.html | 0 {htdocs => public}/core/menus/index.html | 0 {htdocs => public}/core/menus/init_menu_auguria.sql | 0 .../core/menus/standard/auguria.lib.php | 0 .../core/menus/standard/auguria_menu.php | 0 {htdocs => public}/core/menus/standard/eldy.lib.php | 0 .../core/menus/standard/eldy_menu.php | 0 {htdocs => public}/core/menus/standard/empty.php | 0 {htdocs => public}/core/menus/standard/index.html | 0 .../core/modules/DolibarrModules.class.php | 0 {htdocs => public}/core/modules/action/index.html | 0 .../core/modules/action/modules_action.php | 0 .../core/modules/action/rapport.pdf.php | 0 .../core/modules/bank/doc/pdf_ban.modules.php | 0 .../modules/bank/doc/pdf_sepamandate.modules.php | 0 .../core/modules/bank/modules_bank.php | 0 .../core/modules/barcode/doc/index.html | 0 .../core/modules/barcode/doc/phpbarcode.modules.php | 0 .../modules/barcode/doc/tcpdfbarcode.modules.php | 0 {htdocs => public}/core/modules/barcode/index.html | 0 .../barcode/mod_barcode_product_standard.php | 0 .../core/modules/barcode/modules_barcode.class.php | 0 .../core/modules/cheque/doc/index.html | 0 .../core/modules/cheque/doc/pdf_blochet.class.php | 0 {htdocs => public}/core/modules/cheque/index.html | 0 .../core/modules/cheque/mod_chequereceipt_mint.php | 0 .../core/modules/cheque/mod_chequereceipt_thyme.php | 0 .../core/modules/cheque/modules_chequereceipts.php | 0 .../commande/doc/doc_generic_order_odt.modules.php | 0 .../core/modules/commande/doc/index.html | 0 .../modules/commande/doc/pdf_einstein.modules.php | 0 .../modules/commande/doc/pdf_proforma.modules.php | 0 {htdocs => public}/core/modules/commande/index.html | 0 .../core/modules/commande/mod_commande_marbre.php | 0 .../core/modules/commande/mod_commande_saphir.php | 0 .../core/modules/commande/modules_commande.php | 0 .../core/modules/contract/doc/index.html | 0 .../modules/contract/doc/pdf_strato.modules.php | 0 {htdocs => public}/core/modules/contract/index.html | 0 .../core/modules/contract/mod_contract_magre.php | 0 .../core/modules/contract/mod_contract_olive.php | 0 .../core/modules/contract/mod_contract_serpis.php | 0 .../core/modules/contract/modules_contract.php | 0 .../core/modules/dons/html_cerfafr.html | 0 .../core/modules/dons/html_cerfafr.modules.php | 0 {htdocs => public}/core/modules/dons/index.html | 0 .../core/modules/dons/modules_don.php | 0 .../doc/doc_generic_shipment_odt.modules.php | 0 .../core/modules/expedition/doc/index.html | 0 .../modules/expedition/doc/pdf_merou.modules.php | 0 .../modules/expedition/doc/pdf_rouget.modules.php | 0 .../core/modules/expedition/index.html | 0 .../modules/expedition/mod_expedition_ribera.php | 0 .../modules/expedition/mod_expedition_safor.php | 0 .../core/modules/expedition/modules_expedition.php | 0 .../expensereport/doc/pdf_standard.modules.php | 0 .../modules/expensereport/modules_expensereport.php | 0 .../core/modules/export/export_csv.modules.php | 0 .../core/modules/export/export_excel.modules.php | 0 .../modules/export/export_excel2007.modules.php | 0 .../core/modules/export/export_tsv.modules.php | 0 {htdocs => public}/core/modules/export/index.html | 0 .../core/modules/export/modules_export.php | 0 .../facture/doc/doc_generic_invoice_odt.modules.php | 0 .../core/modules/facture/doc/index.html | 0 .../core/modules/facture/doc/pdf_crabe.modules.php | 0 {htdocs => public}/core/modules/facture/index.html | 0 .../core/modules/facture/mod_facture_mars.php | 0 .../core/modules/facture/mod_facture_mercure.php | 0 .../core/modules/facture/mod_facture_terre.php | 0 .../core/modules/facture/modules_facture.php | 0 .../core/modules/fichinter/doc/index.html | 0 .../modules/fichinter/doc/pdf_soleil.modules.php | 0 .../core/modules/fichinter/index.html | 0 .../core/modules/fichinter/mod_arctic.php | 0 .../core/modules/fichinter/mod_pacific.php | 0 .../core/modules/fichinter/modules_fichinter.php | 0 .../core/modules/import/import_csv.modules.php | 0 .../core/modules/import/import_xlsx.modules.php | 0 {htdocs => public}/core/modules/import/index.html | 0 .../core/modules/import/modules_import.php | 0 {htdocs => public}/core/modules/index.html | 0 .../core/modules/livraison/doc/index.html | 0 .../modules/livraison/doc/pdf_typhon.modules.php | 0 .../core/modules/livraison/index.html | 0 .../core/modules/livraison/mod_livraison_jade.php | 0 .../core/modules/livraison/mod_livraison_saphir.php | 0 .../core/modules/livraison/modules_livraison.php | 0 {htdocs => public}/core/modules/mailings/README | 0 .../modules/mailings/advthirdparties.modules.php | 0 .../core/modules/mailings/contacts1.modules.php | 0 .../core/modules/mailings/contacts2.modules.php | 0 .../core/modules/mailings/contacts3.modules.php | 0 .../core/modules/mailings/contacts4.modules.php | 0 .../core/modules/mailings/example.modules.php | 0 .../core/modules/mailings/fraise.modules.php | 0 .../core/modules/mailings/framboise.modules.php | 0 {htdocs => public}/core/modules/mailings/index.html | 0 .../core/modules/mailings/modules_mailings.php | 0 .../core/modules/mailings/pomme.modules.php | 0 .../core/modules/mailings/thirdparties.modules.php | 0 .../thirdparties_services_expired.modules.php | 0 .../core/modules/mailings/xinputfile.modules.php | 0 .../core/modules/mailings/xinputuser.modules.php | 0 .../core/modules/member/doc/index.html | 0 .../core/modules/member/doc/pdf_standard.class.php | 0 {htdocs => public}/core/modules/member/index.html | 0 .../core/modules/member/modules_cards.php | 0 .../core/modules/modAccounting.class.php | 0 .../core/modules/modAdherent.class.php | 0 {htdocs => public}/core/modules/modAgenda.class.php | 0 {htdocs => public}/core/modules/modApi.class.php | 0 {htdocs => public}/core/modules/modBanque.class.php | 0 .../core/modules/modBarcode.class.php | 0 .../core/modules/modBookmark.class.php | 0 .../core/modules/modCashDesk.class.php | 0 .../core/modules/modCategorie.class.php | 0 .../core/modules/modClickToDial.class.php | 0 .../core/modules/modCommande.class.php | 0 .../core/modules/modComptabilite.class.php | 0 .../core/modules/modContrat.class.php | 0 {htdocs => public}/core/modules/modCron.class.php | 0 .../core/modules/modDeplacement.class.php | 0 .../core/modules/modDocumentGeneration.class.php | 0 {htdocs => public}/core/modules/modDon.class.php | 0 .../core/modules/modDynamicPrices.class.php | 0 {htdocs => public}/core/modules/modECM.class.php | 0 .../core/modules/modExpedition.class.php | 0 .../core/modules/modExpenseReport.class.php | 0 {htdocs => public}/core/modules/modExport.class.php | 0 .../core/modules/modExternalRss.class.php | 0 .../core/modules/modExternalSite.class.php | 0 {htdocs => public}/core/modules/modFTP.class.php | 0 .../core/modules/modFacture.class.php | 0 .../core/modules/modFckeditor.class.php | 0 .../core/modules/modFicheinter.class.php | 0 .../core/modules/modFournisseur.class.php | 0 .../core/modules/modGeoIPMaxmind.class.php | 0 .../core/modules/modGravatar.class.php | 0 {htdocs => public}/core/modules/modHRM.class.php | 0 .../core/modules/modHoliday.class.php | 0 {htdocs => public}/core/modules/modImport.class.php | 0 .../core/modules/modIncoterm.class.php | 0 {htdocs => public}/core/modules/modLabel.class.php | 0 {htdocs => public}/core/modules/modLdap.class.php | 0 {htdocs => public}/core/modules/modLoan.class.php | 0 .../core/modules/modMailing.class.php | 0 .../core/modules/modMailmanSpip.class.php | 0 {htdocs => public}/core/modules/modMargin.class.php | 0 .../core/modules/modMultiCurrency.class.php | 0 .../core/modules/modNotification.class.php | 0 {htdocs => public}/core/modules/modOauth.class.php | 0 .../core/modules/modOpenSurvey.class.php | 0 {htdocs => public}/core/modules/modPaybox.class.php | 0 {htdocs => public}/core/modules/modPaypal.class.php | 0 .../core/modules/modPrelevement.class.php | 0 .../core/modules/modPrinting.class.php | 0 .../core/modules/modProduct.class.php | 0 .../core/modules/modProductBatch.class.php | 0 {htdocs => public}/core/modules/modProjet.class.php | 0 .../core/modules/modPropale.class.php | 0 .../core/modules/modReceiptPrinter.class.php | 0 .../core/modules/modResource.class.php | 0 .../core/modules/modSalaries.class.php | 0 .../core/modules/modService.class.php | 0 {htdocs => public}/core/modules/modSkype.class.php | 0 .../core/modules/modSociete.class.php | 0 {htdocs => public}/core/modules/modStock.class.php | 0 .../core/modules/modSupplierProposal.class.php | 0 {htdocs => public}/core/modules/modSyslog.class.php | 0 {htdocs => public}/core/modules/modTax.class.php | 0 {htdocs => public}/core/modules/modUser.class.php | 0 .../core/modules/modWebServices.class.php | 0 .../core/modules/modWebServicesClient.class.php | 0 .../core/modules/modWebsites.class.php | 0 .../core/modules/modWorkflow.class.php | 0 .../core/modules/oauth/google_oauthcallback.php | 0 {htdocs => public}/core/modules/oauth/index.html | 0 .../core/modules/payment/mod_payment_ant.php | 0 .../core/modules/payment/mod_payment_cicada.php | 0 .../core/modules/payment/modules_payment.php | 0 {htdocs => public}/core/modules/printing/index.html | 0 .../core/modules/printing/modules_printing.php | 0 .../core/modules/printing/printgcp.modules.php | 0 .../core/modules/printing/printipp.modules.php | 0 .../core/modules/printsheet/doc/index.html | 0 .../printsheet/doc/pdf_standardlabel.class.php | 0 .../modules/printsheet/doc/pdf_tcpdflabel.class.php | 0 .../core/modules/printsheet/index.html | 0 .../core/modules/printsheet/modules_labels.php | 0 {htdocs => public}/core/modules/product/index.html | 0 .../modules/product/mod_codeproduct_elephant.php | 0 .../modules/product/mod_codeproduct_leopard.php | 0 .../core/modules/product/modules_product.class.php | 0 .../core/modules/product/modules_product.php | 0 .../project/doc/doc_generic_project_odt.modules.php | 0 .../core/modules/project/doc/index.html | 0 .../modules/project/doc/pdf_baleine.modules.php | 0 .../core/modules/project/doc/pdf_beluga.modules.php | 0 {htdocs => public}/core/modules/project/index.html | 0 .../core/modules/project/mod_project_simple.php | 0 .../core/modules/project/mod_project_universal.php | 0 .../core/modules/project/modules_project.php | 0 .../task/doc/doc_generic_task_odt.modules.php | 0 .../core/modules/project/task/doc/index.html | 0 .../core/modules/project/task/index.html | 0 .../core/modules/project/task/mod_task_simple.php | 0 .../modules/project/task/mod_task_universal.php | 0 .../core/modules/project/task/modules_task.php | 0 .../doc/doc_generic_proposal_odt.modules.php | 0 .../core/modules/propale/doc/index.html | 0 .../core/modules/propale/doc/pdf_azur.modules.php | 0 {htdocs => public}/core/modules/propale/index.html | 0 .../core/modules/propale/mod_propale_marbre.php | 0 .../core/modules/propale/mod_propale_saphir.php | 0 .../core/modules/propale/modules_propale.php | 0 {htdocs => public}/core/modules/rapport/index.html | 0 .../core/modules/rapport/pdf_paiement.class.php | 0 .../core/modules/security/generate/README | 0 .../core/modules/security/generate/index.html | 0 .../security/generate/modGeneratePassNone.class.php | 0 .../generate/modGeneratePassPerso.class.php | 0 .../generate/modGeneratePassStandard.class.php | 0 .../security/generate/modules_genpassword.php | 0 {htdocs => public}/core/modules/security/index.html | 0 .../modules/societe/doc/doc_generic_odt.modules.php | 0 .../core/modules/societe/doc/index.html | 0 {htdocs => public}/core/modules/societe/index.html | 0 .../modules/societe/mod_codeclient_elephant.php | 0 .../core/modules/societe/mod_codeclient_leopard.php | 0 .../core/modules/societe/mod_codeclient_monkey.php | 0 .../modules/societe/mod_codecompta_aquarium.php | 0 .../core/modules/societe/mod_codecompta_panicum.php | 0 .../core/modules/societe/modules_societe.class.php | 0 .../core/modules/supplier_invoice/index.html | 0 .../mod_facture_fournisseur_cactus.php | 0 .../mod_facture_fournisseur_tulip.php | 0 .../supplier_invoice/modules_facturefournisseur.php | 0 .../core/modules/supplier_invoice/pdf/index.html | 0 .../supplier_invoice/pdf/pdf_canelle.modules.php | 0 .../core/modules/supplier_order/index.html | 0 .../mod_commande_fournisseur_muguet.php | 0 .../mod_commande_fournisseur_orchidee.php | 0 .../supplier_order/modules_commandefournisseur.php | 0 .../core/modules/supplier_order/pdf/index.html | 0 .../supplier_order/pdf/pdf_muscadet.modules.php | 0 .../mod_supplier_payment_brodator.php | 0 .../mod_supplier_payment_bronan.php | 0 .../supplier_payment/modules_supplier_payment.php | 0 .../doc_generic_supplier_proposal_odt.modules.php | 0 .../core/modules/supplier_proposal/doc/index.html | 0 .../supplier_proposal/doc/pdf_aurore.modules.php | 0 .../core/modules/supplier_proposal/index.html | 0 .../mod_supplier_proposal_marbre.php | 0 .../mod_supplier_proposal_saphir.php | 0 .../supplier_proposal/modules_supplier_proposal.php | 0 {htdocs => public}/core/modules/syslog/index.html | 0 .../core/modules/syslog/logHandler.php | 0 .../core/modules/syslog/logHandlerInterface.php | 0 .../core/modules/syslog/mod_syslog_chromephp.php | 0 .../core/modules/syslog/mod_syslog_file.php | 0 .../core/modules/syslog/mod_syslog_firephp.php | 0 .../core/modules/syslog/mod_syslog_syslog.php | 0 {htdocs => public}/core/photos_resize.php | 0 {htdocs => public}/core/search.php | 0 {htdocs => public}/core/search_page.php | 0 {htdocs => public}/core/tools.php | 0 {htdocs => public}/core/tpl/README | 0 .../core/tpl/admin_extrafields_add.tpl.php | 0 .../core/tpl/admin_extrafields_edit.tpl.php | 0 .../core/tpl/admin_extrafields_view.tpl.php | 0 .../core/tpl/ajax/fileupload_main.tpl.php | 0 .../core/tpl/ajax/fileupload_view.tpl.php | 0 {htdocs => public}/core/tpl/ajax/index.html | 0 {htdocs => public}/core/tpl/ajaxrow.tpl.php | 0 {htdocs => public}/core/tpl/bloc_showhide.tpl.php | 0 {htdocs => public}/core/tpl/contacts.tpl.php | 0 .../core/tpl/document_actions_post_headers.tpl.php | 0 {htdocs => public}/core/tpl/error.tpl.php | 0 .../core/tpl/extrafields_view.tpl.php | 0 {htdocs => public}/core/tpl/footer.tpl.php | 0 {htdocs => public}/core/tpl/header.tpl.php | 0 {htdocs => public}/core/tpl/index.html | 0 {htdocs => public}/core/tpl/login.tpl.php | 0 {htdocs => public}/core/tpl/notes.tpl.php | 0 .../core/tpl/objectline_create.tpl.php | 0 {htdocs => public}/core/tpl/objectline_edit.tpl.php | 0 {htdocs => public}/core/tpl/objectline_view.tpl.php | 0 .../core/tpl/originproductline.tpl.php | 0 .../core/tpl/passwordforgotten.tpl.php | 0 {htdocs => public}/core/tpl/resource_add.tpl.php | 0 {htdocs => public}/core/tpl/resource_view.tpl.php | 0 {htdocs => public}/core/triggers/README | 0 {htdocs => public}/core/triggers/README-FR | 0 .../core/triggers/dolibarrtriggers.class.php | 0 {htdocs => public}/core/triggers/index.html | 0 .../triggers/interface_20_all_Logevents.class.php | 0 .../interface_20_modPaypal_PaypalWorkflow.class.php | 0 ...terface_20_modWorkflow_WorkflowManager.class.php | 0 .../interface_50_modAgenda_ActionsAuto.class.php | 0 .../interface_50_modLdap_Ldapsynchro.class.php | 0 ...e_50_modMailmanspip_Mailmanspipsynchro.class.php | 0 ...erface_50_modNotification_Notification.class.php | 0 .../triggers/interface_90_all_Demo.class.php-NORUN | 0 {htdocs => public}/cron/admin/cron.php | 0 {htdocs => public}/cron/admin/index.html | 0 {htdocs => public}/cron/card.php | 0 {htdocs => public}/cron/class/cronjob.class.php | 0 {htdocs => public}/cron/class/index.html | 0 {htdocs => public}/cron/index.html | 0 {htdocs => public}/cron/info.php | 0 {htdocs => public}/cron/list.php | 0 {htdocs => public}/custom/.gitignore | 0 {htdocs => public}/custom/README.md | 0 {htdocs => public}/custom/index.html | 0 {htdocs => public}/document.php | 0 {htdocs => public}/don/admin/donation.php | 0 .../don/admin/donation_extrafields.php | 0 {htdocs => public}/don/admin/index.html | 0 {htdocs => public}/don/card.php | 0 {htdocs => public}/don/class/don.class.php | 0 {htdocs => public}/don/class/donstats.class.php | 0 {htdocs => public}/don/class/index.html | 0 .../don/class/paymentdonation.class.php | 0 {htdocs => public}/don/document.php | 0 {htdocs => public}/don/index.html | 0 {htdocs => public}/don/index.php | 0 {htdocs => public}/don/info.php | 0 {htdocs => public}/don/list.php | 0 {htdocs => public}/don/note.php | 0 {htdocs => public}/don/payment/card.php | 0 {htdocs => public}/don/payment/index.html | 0 {htdocs => public}/don/payment/payment.php | 0 {htdocs => public}/don/stats/index.php | 0 {htdocs => public}/ecm/ajax/ecmdatabase.php | 0 {htdocs => public}/ecm/ajax/index.html | 0 {htdocs => public}/ecm/class/ecmdirectory.class.php | 0 {htdocs => public}/ecm/class/htmlecm.form.class.php | 0 {htdocs => public}/ecm/class/index.html | 0 {htdocs => public}/ecm/docdir.php | 0 {htdocs => public}/ecm/docfile.php | 0 {htdocs => public}/ecm/docmine.php | 0 {htdocs => public}/ecm/docother.php | 0 {htdocs => public}/ecm/index.php | 0 {htdocs => public}/ecm/index_auto.php | 0 {htdocs => public}/ecm/search.php | 0 .../ecm/tpl/enablefiletreeajax.tpl.php | 0 {htdocs => public}/ecm/tpl/index.html | 0 {htdocs => public}/expedition/card.php | 0 .../expedition/class/expedition.class.php | 0 .../expedition/class/expeditionbatch.class.php | 0 .../expedition/class/expeditionstats.class.php | 0 {htdocs => public}/expedition/class/index.html | 0 {htdocs => public}/expedition/contact.php | 0 {htdocs => public}/expedition/index.php | 0 {htdocs => public}/expedition/list.php | 0 {htdocs => public}/expedition/note.php | 0 {htdocs => public}/expedition/shipment.php | 0 {htdocs => public}/expedition/stats/index.php | 0 {htdocs => public}/expedition/stats/month.php | 0 {htdocs => public}/expedition/tpl/index.html | 0 .../expedition/tpl/linkedobjectblock.tpl.php | 0 .../expensereport/ajax/ajaxprojet.php | 0 {htdocs => public}/expensereport/ajax/index.html | 0 {htdocs => public}/expensereport/card.php | 0 .../class/api_expensereports.class.php | 0 .../expensereport/class/expensereport.class.php | 0 .../class/expensereportstats.class.php | 0 {htdocs => public}/expensereport/class/index.html | 0 .../class/paymentexpensereport.class.php | 0 {htdocs => public}/expensereport/document.php | 0 {htdocs => public}/expensereport/export_csv.php | 0 {htdocs => public}/expensereport/index.html | 0 {htdocs => public}/expensereport/index.php | 0 {htdocs => public}/expensereport/info.php | 0 {htdocs => public}/expensereport/list.php | 0 {htdocs => public}/expensereport/note.php | 0 {htdocs => public}/expensereport/payment/card.php | 0 {htdocs => public}/expensereport/payment/index.html | 0 .../expensereport/payment/payment.php | 0 {htdocs => public}/expensereport/stats/index.html | 0 {htdocs => public}/expensereport/stats/index.php | 0 {htdocs => public}/expensereport/synchro_compta.php | 0 {htdocs => public}/expensereport/tpl/index.html | 0 .../expensereport/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/exports/class/export.class.php | 0 {htdocs => public}/exports/class/index.html | 0 {htdocs => public}/exports/export.php | 0 {htdocs => public}/exports/index.php | 0 .../externalsite/admin/externalsite.php | 0 {htdocs => public}/externalsite/admin/index.html | 0 {htdocs => public}/externalsite/frames.php | 0 {htdocs => public}/externalsite/frametop.php | 0 {htdocs => public}/externalsite/index.html | 0 {htdocs => public}/favicon.ico | Bin .../fichinter/admin/fichinter_extrafields.php | 0 .../fichinter/admin/fichinterdet_extrafields.php | 0 {htdocs => public}/fichinter/admin/index.html | 0 {htdocs => public}/fichinter/apercu.php | 0 {htdocs => public}/fichinter/card.php | 0 .../fichinter/class/fichinter.class.php | 0 .../fichinter/class/fichinterstats.class.php | 0 {htdocs => public}/fichinter/class/index.html | 0 {htdocs => public}/fichinter/contact.php | 0 {htdocs => public}/fichinter/document.php | 0 {htdocs => public}/fichinter/index.html | 0 {htdocs => public}/fichinter/index.php | 0 {htdocs => public}/fichinter/info.php | 0 {htdocs => public}/fichinter/list.php | 0 {htdocs => public}/fichinter/note.php | 0 {htdocs => public}/fichinter/stats/index.php | 0 {htdocs => public}/fichinter/tpl/index.html | 0 .../fichinter/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/filefunc.inc.php | 0 {htdocs => public}/fourn/ajax/getSupplierPrices.php | 0 {htdocs => public}/fourn/ajax/index.html | 0 {htdocs => public}/fourn/card.php | 0 .../fourn/class/api_supplier_invoices.class.php | 0 .../fourn/class/fournisseur.class.php | 0 .../fourn/class/fournisseur.commande.class.php | 0 .../class/fournisseur.commande.dispatch.class.php | 0 .../fourn/class/fournisseur.facture.class.php | 0 .../fourn/class/fournisseur.product.class.php | 0 {htdocs => public}/fourn/class/index.html | 0 .../fourn/class/paiementfourn.class.php | 0 {htdocs => public}/fourn/commande/card.php | 0 {htdocs => public}/fourn/commande/contact.php | 0 {htdocs => public}/fourn/commande/dispatch.php | 0 {htdocs => public}/fourn/commande/document.php | 0 {htdocs => public}/fourn/commande/index.php | 0 {htdocs => public}/fourn/commande/info.php | 0 {htdocs => public}/fourn/commande/list.php | 0 {htdocs => public}/fourn/commande/note.php | 0 .../fourn/commande/orderstoinvoice.php | 0 {htdocs => public}/fourn/commande/tpl/index.html | 0 .../fourn/commande/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/fourn/contact.php | 0 {htdocs => public}/fourn/facture/card.php | 0 {htdocs => public}/fourn/facture/contact.php | 0 {htdocs => public}/fourn/facture/document.php | 0 {htdocs => public}/fourn/facture/impayees.php | 0 {htdocs => public}/fourn/facture/index.html | 0 {htdocs => public}/fourn/facture/info.php | 0 {htdocs => public}/fourn/facture/list.php | 0 {htdocs => public}/fourn/facture/note.php | 0 {htdocs => public}/fourn/facture/paiement.php | 0 {htdocs => public}/fourn/facture/tpl/index.html | 0 .../fourn/facture/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/fourn/index.php | 0 {htdocs => public}/fourn/js/lib_dispatch.js | 0 {htdocs => public}/fourn/paiement/card.php | 0 {htdocs => public}/fourn/paiement/index.html | 0 {htdocs => public}/fourn/paiement/info.php | 0 {htdocs => public}/fourn/product/list.php | 0 {htdocs => public}/fourn/recap-fourn.php | 0 {htdocs => public}/ftp/admin/ftpclient.php | 0 {htdocs => public}/ftp/admin/index.html | 0 {htdocs => public}/ftp/index.php | 0 {htdocs => public}/holiday/card.php | 0 {htdocs => public}/holiday/class/holiday.class.php | 0 {htdocs => public}/holiday/class/index.html | 0 {htdocs => public}/holiday/common.inc.php | 0 {htdocs => public}/holiday/define_holiday.php | 0 {htdocs => public}/holiday/document.php | 0 {htdocs => public}/holiday/img/add.png | Bin {htdocs => public}/holiday/img/conges.png | Bin {htdocs => public}/holiday/img/delete.png | Bin {htdocs => public}/holiday/img/edit.png | Bin {htdocs => public}/holiday/img/index.html | 0 {htdocs => public}/holiday/index.html | 0 {htdocs => public}/holiday/list.php | 0 {htdocs => public}/holiday/view_log.php | 0 .../hrm/admin/admin_establishment.php | 0 {htdocs => public}/hrm/admin/admin_hrm.php | 0 {htdocs => public}/hrm/admin/index.html | 0 .../hrm/class/establishment.class.php | 0 {htdocs => public}/hrm/class/index.html | 0 {htdocs => public}/hrm/establishment/card.php | 0 {htdocs => public}/hrm/establishment/index.html | 0 {htdocs => public}/hrm/establishment/info.php | 0 {htdocs => public}/hrm/index.html | 0 {htdocs => public}/hrm/index.php | 0 {htdocs => public}/imports/class/import.class.php | 0 {htdocs => public}/imports/class/index.html | 0 {htdocs => public}/imports/emptyexample.php | 0 {htdocs => public}/imports/import.php | 0 {htdocs => public}/imports/index.php | 0 .../includes/OAuth/Common/AutoLoader.php | 0 .../includes/OAuth/Common/Consumer/Credentials.php | 0 .../OAuth/Common/Consumer/CredentialsInterface.php | 0 .../includes/OAuth/Common/Exception/Exception.php | 0 .../OAuth/Common/Http/Client/AbstractClient.php | 0 .../OAuth/Common/Http/Client/ClientInterface.php | 0 .../OAuth/Common/Http/Client/CurlClient.php | 0 .../OAuth/Common/Http/Client/StreamClient.php | 0 .../Http/Exception/TokenResponseException.php | 0 .../includes/OAuth/Common/Http/Uri/Uri.php | 0 .../includes/OAuth/Common/Http/Uri/UriFactory.php | 0 .../OAuth/Common/Http/Uri/UriFactoryInterface.php | 0 .../includes/OAuth/Common/Http/Uri/UriInterface.php | 0 .../OAuth/Common/Service/AbstractService.php | 0 .../OAuth/Common/Service/ServiceInterface.php | 0 .../includes/OAuth/Common/Storage/DoliStorage.php | 0 .../AuthorizationStateNotFoundException.php | 0 .../Common/Storage/Exception/StorageException.php | 0 .../Storage/Exception/TokenNotFoundException.php | 0 .../includes/OAuth/Common/Storage/Memory.php | 0 .../includes/OAuth/Common/Storage/Redis.php | 0 .../includes/OAuth/Common/Storage/Session.php | 0 .../OAuth/Common/Storage/SymfonySession.php | 0 .../OAuth/Common/Storage/TokenStorageInterface.php | 0 .../includes/OAuth/Common/Token/AbstractToken.php | 0 .../Token/Exception/ExpiredTokenException.php | 0 .../includes/OAuth/Common/Token/TokenInterface.php | 0 .../OAuth/OAuth1/Service/AbstractService.php | 0 .../includes/OAuth/OAuth1/Service/BitBucket.php | 0 .../includes/OAuth/OAuth1/Service/Etsy.php | 0 .../includes/OAuth/OAuth1/Service/FitBit.php | 0 .../includes/OAuth/OAuth1/Service/FiveHundredPx.php | 0 .../includes/OAuth/OAuth1/Service/Flickr.php | 0 .../includes/OAuth/OAuth1/Service/QuickBooks.php | 0 .../includes/OAuth/OAuth1/Service/Redmine.php | 0 .../includes/OAuth/OAuth1/Service/ScoopIt.php | 0 .../OAuth/OAuth1/Service/ServiceInterface.php | 0 .../includes/OAuth/OAuth1/Service/Tumblr.php | 0 .../includes/OAuth/OAuth1/Service/Twitter.php | 0 .../includes/OAuth/OAuth1/Service/Xing.php | 0 .../includes/OAuth/OAuth1/Service/Yahoo.php | 0 .../Exception/UnsupportedHashAlgorithmException.php | 0 .../includes/OAuth/OAuth1/Signature/Signature.php | 0 .../OAuth/OAuth1/Signature/SignatureInterface.php | 0 .../includes/OAuth/OAuth1/Token/StdOAuth1Token.php | 0 .../includes/OAuth/OAuth1/Token/TokenInterface.php | 0 .../OAuth/OAuth2/Service/AbstractService.php | 0 .../includes/OAuth/OAuth2/Service/Amazon.php | 0 .../includes/OAuth/OAuth2/Service/Bitly.php | 0 .../includes/OAuth/OAuth2/Service/Bitrix24.php | 0 .../includes/OAuth/OAuth2/Service/Box.php | 0 .../includes/OAuth/OAuth2/Service/Buffer.php | 0 .../includes/OAuth/OAuth2/Service/Dailymotion.php | 0 .../includes/OAuth/OAuth2/Service/Delicious.php | 0 .../includes/OAuth/OAuth2/Service/DeviantArt.php | 0 .../includes/OAuth/OAuth2/Service/Dropbox.php | 0 .../includes/OAuth/OAuth2/Service/EveOnline.php | 0 .../Exception/InvalidAccessTypeException.php | 0 .../InvalidAuthorizationStateException.php | 0 .../Service/Exception/InvalidScopeException.php | 0 .../Exception/MissingRefreshTokenException.php | 0 .../includes/OAuth/OAuth2/Service/Facebook.php | 0 .../includes/OAuth/OAuth2/Service/Foursquare.php | 0 .../includes/OAuth/OAuth2/Service/GitHub.php | 0 .../includes/OAuth/OAuth2/Service/Google.php | 0 .../includes/OAuth/OAuth2/Service/Harvest.php | 0 .../includes/OAuth/OAuth2/Service/Heroku.php | 0 .../includes/OAuth/OAuth2/Service/Hubic.php | 0 .../includes/OAuth/OAuth2/Service/Instagram.php | 0 .../includes/OAuth/OAuth2/Service/JawboneUP.php | 0 .../includes/OAuth/OAuth2/Service/Linkedin.php | 0 .../includes/OAuth/OAuth2/Service/Mailchimp.php | 0 .../includes/OAuth/OAuth2/Service/Microsoft.php | 0 .../includes/OAuth/OAuth2/Service/Nest.php | 0 .../includes/OAuth/OAuth2/Service/Netatmo.php | 0 .../OAuth/OAuth2/Service/ParrotFlowerPower.php | 0 .../includes/OAuth/OAuth2/Service/Paypal.php | 0 .../includes/OAuth/OAuth2/Service/Pocket.php | 0 .../includes/OAuth/OAuth2/Service/Reddit.php | 0 .../includes/OAuth/OAuth2/Service/RunKeeper.php | 0 .../includes/OAuth/OAuth2/Service/Salesforce.php | 0 .../OAuth/OAuth2/Service/ServiceInterface.php | 0 .../includes/OAuth/OAuth2/Service/SoundCloud.php | 0 .../includes/OAuth/OAuth2/Service/Spotify.php | 0 .../includes/OAuth/OAuth2/Service/Strava.php | 0 .../includes/OAuth/OAuth2/Service/Ustream.php | 0 .../includes/OAuth/OAuth2/Service/Vimeo.php | 0 .../includes/OAuth/OAuth2/Service/Vkontakte.php | 0 .../includes/OAuth/OAuth2/Service/Yahoo.php | 0 .../includes/OAuth/OAuth2/Service/Yammer.php | 0 .../includes/OAuth/OAuth2/Token/StdOAuth2Token.php | 0 .../includes/OAuth/OAuth2/Token/TokenInterface.php | 0 .../includes/OAuth/ServiceFactory.php | 0 {htdocs => public}/includes/OAuth/bootstrap.php | 0 .../includes/adodbtime/adodb-time.inc.php | 0 {htdocs => public}/includes/adodbtime/index.html | 0 .../includes/ccampbell/chromephp/ChromePhp.php | 0 .../includes/ccampbell/chromephp/README.md | 0 .../includes/ccampbell/chromephp/composer.json | 0 .../includes/ckeditor/ckeditor/CHANGES.md | 0 .../includes/ckeditor/ckeditor/LICENSE.md | 0 .../includes/ckeditor/ckeditor/README.md | 0 .../includes/ckeditor/ckeditor/adapters/jquery.js | 0 .../includes/ckeditor/ckeditor/bower.json | 0 .../includes/ckeditor/ckeditor/build-config.js | 0 .../includes/ckeditor/ckeditor/ckeditor.js | 0 .../includes/ckeditor/ckeditor/composer.json | 0 .../includes/ckeditor/ckeditor/config.js | 0 .../includes/ckeditor/ckeditor/contents.css | 0 .../includes/ckeditor/ckeditor/lang/af.js | 0 .../includes/ckeditor/ckeditor/lang/ar.js | 0 .../includes/ckeditor/ckeditor/lang/bg.js | 0 .../includes/ckeditor/ckeditor/lang/bn.js | 0 .../includes/ckeditor/ckeditor/lang/bs.js | 0 .../includes/ckeditor/ckeditor/lang/ca.js | 0 .../includes/ckeditor/ckeditor/lang/cs.js | 0 .../includes/ckeditor/ckeditor/lang/cy.js | 0 .../includes/ckeditor/ckeditor/lang/da.js | 0 .../includes/ckeditor/ckeditor/lang/de-ch.js | 0 .../includes/ckeditor/ckeditor/lang/de.js | 0 .../includes/ckeditor/ckeditor/lang/el.js | 0 .../includes/ckeditor/ckeditor/lang/en-au.js | 0 .../includes/ckeditor/ckeditor/lang/en-ca.js | 0 .../includes/ckeditor/ckeditor/lang/en-gb.js | 0 .../includes/ckeditor/ckeditor/lang/en.js | 0 .../includes/ckeditor/ckeditor/lang/eo.js | 0 .../includes/ckeditor/ckeditor/lang/es.js | 0 .../includes/ckeditor/ckeditor/lang/et.js | 0 .../includes/ckeditor/ckeditor/lang/eu.js | 0 .../includes/ckeditor/ckeditor/lang/fa.js | 0 .../includes/ckeditor/ckeditor/lang/fi.js | 0 .../includes/ckeditor/ckeditor/lang/fo.js | 0 .../includes/ckeditor/ckeditor/lang/fr-ca.js | 0 .../includes/ckeditor/ckeditor/lang/fr.js | 0 .../includes/ckeditor/ckeditor/lang/gl.js | 0 .../includes/ckeditor/ckeditor/lang/gu.js | 0 .../includes/ckeditor/ckeditor/lang/he.js | 0 .../includes/ckeditor/ckeditor/lang/hi.js | 0 .../includes/ckeditor/ckeditor/lang/hr.js | 0 .../includes/ckeditor/ckeditor/lang/hu.js | 0 .../includes/ckeditor/ckeditor/lang/id.js | 0 .../includes/ckeditor/ckeditor/lang/is.js | 0 .../includes/ckeditor/ckeditor/lang/it.js | 0 .../includes/ckeditor/ckeditor/lang/ja.js | 0 .../includes/ckeditor/ckeditor/lang/ka.js | 0 .../includes/ckeditor/ckeditor/lang/km.js | 0 .../includes/ckeditor/ckeditor/lang/ko.js | 0 .../includes/ckeditor/ckeditor/lang/ku.js | 0 .../includes/ckeditor/ckeditor/lang/lt.js | 0 .../includes/ckeditor/ckeditor/lang/lv.js | 0 .../includes/ckeditor/ckeditor/lang/mk.js | 0 .../includes/ckeditor/ckeditor/lang/mn.js | 0 .../includes/ckeditor/ckeditor/lang/ms.js | 0 .../includes/ckeditor/ckeditor/lang/nb.js | 0 .../includes/ckeditor/ckeditor/lang/nl.js | 0 .../includes/ckeditor/ckeditor/lang/no.js | 0 .../includes/ckeditor/ckeditor/lang/pl.js | 0 .../includes/ckeditor/ckeditor/lang/pt-br.js | 0 .../includes/ckeditor/ckeditor/lang/pt.js | 0 .../includes/ckeditor/ckeditor/lang/ro.js | 0 .../includes/ckeditor/ckeditor/lang/ru.js | 0 .../includes/ckeditor/ckeditor/lang/si.js | 0 .../includes/ckeditor/ckeditor/lang/sk.js | 0 .../includes/ckeditor/ckeditor/lang/sl.js | 0 .../includes/ckeditor/ckeditor/lang/sq.js | 0 .../includes/ckeditor/ckeditor/lang/sr-latn.js | 0 .../includes/ckeditor/ckeditor/lang/sr.js | 0 .../includes/ckeditor/ckeditor/lang/sv.js | 0 .../includes/ckeditor/ckeditor/lang/th.js | 0 .../includes/ckeditor/ckeditor/lang/tr.js | 0 .../includes/ckeditor/ckeditor/lang/tt.js | 0 .../includes/ckeditor/ckeditor/lang/ug.js | 0 .../includes/ckeditor/ckeditor/lang/uk.js | 0 .../includes/ckeditor/ckeditor/lang/vi.js | 0 .../includes/ckeditor/ckeditor/lang/zh-cn.js | 0 .../includes/ckeditor/ckeditor/lang/zh.js | 0 .../includes/ckeditor/ckeditor/package.json | 0 .../ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js | 0 .../a11yhelp/dialogs/lang/_translationstatus.txt | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/af.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/ar.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/bg.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/ca.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/cs.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/cy.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/da.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/de.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/el.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/en.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/eo.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/es.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/et.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/eu.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/fa.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/fi.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/fo.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/fr.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/gl.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/gu.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/he.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/hi.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/hr.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/hu.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/id.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/it.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/ja.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/km.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/ko.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/ku.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/lt.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/lv.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/mk.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/mn.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/nb.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/nl.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/no.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/pl.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/pt.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/ro.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/ru.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/si.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/sk.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/sl.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/sq.js | 0 .../plugins/a11yhelp/dialogs/lang/sr-latn.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/sr.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/sv.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/th.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/tr.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/tt.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/ug.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/uk.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/vi.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js | 0 .../ckeditor/plugins/a11yhelp/dialogs/lang/zh.js | 0 .../ckeditor/plugins/about/dialogs/about.js | 0 .../plugins/about/dialogs/hidpi/logo_ckeditor.png | Bin .../plugins/about/dialogs/logo_ckeditor.png | Bin .../ckeditor/plugins/clipboard/dialogs/paste.js | 0 .../plugins/colordialog/dialogs/colordialog.css | 0 .../plugins/colordialog/dialogs/colordialog.js | 0 .../ckeditor/plugins/dialog/dialogDefinition.js | 0 .../ckeditor/ckeditor/plugins/div/dialogs/div.js | 0 .../ckeditor/ckeditor/plugins/find/dialogs/find.js | 0 .../ckeditor/plugins/flash/dialogs/flash.js | 0 .../ckeditor/plugins/flash/images/placeholder.png | Bin .../ckeditor/plugins/forms/dialogs/button.js | 0 .../ckeditor/plugins/forms/dialogs/checkbox.js | 0 .../ckeditor/ckeditor/plugins/forms/dialogs/form.js | 0 .../ckeditor/plugins/forms/dialogs/hiddenfield.js | 0 .../ckeditor/plugins/forms/dialogs/radio.js | 0 .../ckeditor/plugins/forms/dialogs/select.js | 0 .../ckeditor/plugins/forms/dialogs/textarea.js | 0 .../ckeditor/plugins/forms/dialogs/textfield.js | 0 .../ckeditor/plugins/forms/images/hiddenfield.gif | Bin .../includes/ckeditor/ckeditor/plugins/icons.png | Bin .../ckeditor/ckeditor/plugins/icons_hidpi.png | Bin .../ckeditor/plugins/iframe/dialogs/iframe.js | 0 .../ckeditor/plugins/iframe/images/placeholder.png | Bin .../ckeditor/plugins/image/dialogs/image.js | 0 .../ckeditor/plugins/image/images/noimage.png | Bin .../ckeditor/plugins/link/dialogs/anchor.js | 0 .../ckeditor/ckeditor/plugins/link/dialogs/link.js | 0 .../ckeditor/plugins/link/images/anchor.png | Bin .../ckeditor/plugins/link/images/hidpi/anchor.png | Bin .../ckeditor/plugins/liststyle/dialogs/liststyle.js | 0 .../plugins/magicline/images/hidpi/icon-rtl.png | Bin .../plugins/magicline/images/hidpi/icon.png | Bin .../ckeditor/plugins/magicline/images/icon-rtl.png | Bin .../ckeditor/plugins/magicline/images/icon.png | Bin .../ckeditor/plugins/pagebreak/images/pagebreak.gif | Bin .../plugins/pastefromword/filter/default.js | 0 .../ckeditor/ckeditor/plugins/preview/preview.html | 0 .../ckeditor/ckeditor/plugins/scayt/CHANGELOG.md | 0 .../ckeditor/ckeditor/plugins/scayt/LICENSE.md | 0 .../ckeditor/ckeditor/plugins/scayt/README.md | 0 .../ckeditor/plugins/scayt/dialogs/options.js | 0 .../ckeditor/plugins/scayt/dialogs/toolbar.css | 0 .../plugins/showblocks/images/block_address.png | Bin .../plugins/showblocks/images/block_blockquote.png | Bin .../plugins/showblocks/images/block_div.png | Bin .../ckeditor/plugins/showblocks/images/block_h1.png | Bin .../ckeditor/plugins/showblocks/images/block_h2.png | Bin .../ckeditor/plugins/showblocks/images/block_h3.png | Bin .../ckeditor/plugins/showblocks/images/block_h4.png | Bin .../ckeditor/plugins/showblocks/images/block_h5.png | Bin .../ckeditor/plugins/showblocks/images/block_h6.png | Bin .../ckeditor/plugins/showblocks/images/block_p.png | Bin .../plugins/showblocks/images/block_pre.png | Bin .../ckeditor/plugins/smiley/dialogs/smiley.js | 0 .../ckeditor/plugins/smiley/images/angel_smile.gif | Bin .../ckeditor/plugins/smiley/images/angel_smile.png | Bin .../ckeditor/plugins/smiley/images/angry_smile.gif | Bin .../ckeditor/plugins/smiley/images/angry_smile.png | Bin .../ckeditor/plugins/smiley/images/broken_heart.gif | Bin .../ckeditor/plugins/smiley/images/broken_heart.png | Bin .../plugins/smiley/images/confused_smile.gif | Bin .../plugins/smiley/images/confused_smile.png | Bin .../ckeditor/plugins/smiley/images/cry_smile.gif | Bin .../ckeditor/plugins/smiley/images/cry_smile.png | Bin .../ckeditor/plugins/smiley/images/devil_smile.gif | Bin .../ckeditor/plugins/smiley/images/devil_smile.png | Bin .../plugins/smiley/images/embaressed_smile.gif | Bin .../plugins/smiley/images/embarrassed_smile.gif | Bin .../plugins/smiley/images/embarrassed_smile.png | Bin .../ckeditor/plugins/smiley/images/envelope.gif | Bin .../ckeditor/plugins/smiley/images/envelope.png | Bin .../ckeditor/plugins/smiley/images/heart.gif | Bin .../ckeditor/plugins/smiley/images/heart.png | Bin .../ckeditor/plugins/smiley/images/kiss.gif | Bin .../ckeditor/plugins/smiley/images/kiss.png | Bin .../ckeditor/plugins/smiley/images/lightbulb.gif | Bin .../ckeditor/plugins/smiley/images/lightbulb.png | Bin .../ckeditor/plugins/smiley/images/omg_smile.gif | Bin .../ckeditor/plugins/smiley/images/omg_smile.png | Bin .../plugins/smiley/images/regular_smile.gif | Bin .../plugins/smiley/images/regular_smile.png | Bin .../ckeditor/plugins/smiley/images/sad_smile.gif | Bin .../ckeditor/plugins/smiley/images/sad_smile.png | Bin .../ckeditor/plugins/smiley/images/shades_smile.gif | Bin .../ckeditor/plugins/smiley/images/shades_smile.png | Bin .../ckeditor/plugins/smiley/images/teeth_smile.gif | Bin .../ckeditor/plugins/smiley/images/teeth_smile.png | Bin .../ckeditor/plugins/smiley/images/thumbs_down.gif | Bin .../ckeditor/plugins/smiley/images/thumbs_down.png | Bin .../ckeditor/plugins/smiley/images/thumbs_up.gif | Bin .../ckeditor/plugins/smiley/images/thumbs_up.png | Bin .../ckeditor/plugins/smiley/images/tongue_smile.gif | Bin .../ckeditor/plugins/smiley/images/tongue_smile.png | Bin .../ckeditor/plugins/smiley/images/tounge_smile.gif | Bin .../smiley/images/whatchutalkingabout_smile.gif | Bin .../smiley/images/whatchutalkingabout_smile.png | Bin .../ckeditor/plugins/smiley/images/wink_smile.gif | Bin .../ckeditor/plugins/smiley/images/wink_smile.png | Bin .../specialchar/dialogs/lang/_translationstatus.txt | 0 .../ckeditor/plugins/specialchar/dialogs/lang/af.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/ar.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/bg.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/ca.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/cs.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/cy.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/da.js | 0 .../plugins/specialchar/dialogs/lang/de-ch.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/de.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/el.js | 0 .../plugins/specialchar/dialogs/lang/en-gb.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/en.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/eo.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/es.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/et.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/eu.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/fa.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/fi.js | 0 .../plugins/specialchar/dialogs/lang/fr-ca.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/fr.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/gl.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/he.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/hr.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/hu.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/id.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/it.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/ja.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/km.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/ko.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/ku.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/lt.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/lv.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/nb.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/nl.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/no.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/pl.js | 0 .../plugins/specialchar/dialogs/lang/pt-br.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/pt.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/ru.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/si.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/sk.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/sl.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/sq.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/sv.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/th.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/tr.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/tt.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/ug.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/uk.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/vi.js | 0 .../plugins/specialchar/dialogs/lang/zh-cn.js | 0 .../ckeditor/plugins/specialchar/dialogs/lang/zh.js | 0 .../plugins/specialchar/dialogs/specialchar.js | 0 .../ckeditor/plugins/table/dialogs/table.js | 0 .../plugins/tabletools/dialogs/tableCell.js | 0 .../plugins/templates/dialogs/templates.css | 0 .../ckeditor/plugins/templates/dialogs/templates.js | 0 .../ckeditor/plugins/templates/templates/default.js | 0 .../templates/templates/images/template1.gif | Bin .../templates/templates/images/template2.gif | Bin .../templates/templates/images/template3.gif | Bin .../ckeditor/ckeditor/plugins/wsc/LICENSE.md | 0 .../ckeditor/ckeditor/plugins/wsc/README.md | 0 .../ckeditor/plugins/wsc/dialogs/ciframe.html | 0 .../ckeditor/plugins/wsc/dialogs/tmpFrameset.html | 0 .../ckeditor/ckeditor/plugins/wsc/dialogs/wsc.css | 0 .../ckeditor/ckeditor/plugins/wsc/dialogs/wsc.js | 0 .../ckeditor/ckeditor/plugins/wsc/dialogs/wsc_ie.js | 0 .../ckeditor/ckeditor/samples/css/samples.css | 0 .../ckeditor/ckeditor/samples/img/github-top.png | Bin .../ckeditor/ckeditor/samples/img/header-bg.png | Bin .../ckeditor/samples/img/header-separator.png | Bin .../includes/ckeditor/ckeditor/samples/img/logo.png | Bin .../ckeditor/samples/img/navigation-tip.png | Bin .../includes/ckeditor/ckeditor/samples/index.html | 0 .../includes/ckeditor/ckeditor/samples/js/sample.js | 0 .../includes/ckeditor/ckeditor/samples/js/sf.js | 0 .../ckeditor/ckeditor/samples/old/ajax.html | 0 .../includes/ckeditor/ckeditor/samples/old/api.html | 0 .../ckeditor/ckeditor/samples/old/appendto.html | 0 .../ckeditor/samples/old/assets/inlineall/logo.png | Bin .../samples/old/assets/outputxhtml/outputxhtml.css | 0 .../ckeditor/samples/old/assets/posteddata.php | 0 .../ckeditor/ckeditor/samples/old/assets/sample.jpg | Bin .../samples/old/assets/uilanguages/languages.js | 0 .../ckeditor/samples/old/datafiltering.html | 0 .../ckeditor/samples/old/dialog/assets/my_dialog.js | 0 .../ckeditor/samples/old/dialog/dialog.html | 0 .../ckeditor/ckeditor/samples/old/divreplace.html | 0 .../ckeditor/samples/old/enterkey/enterkey.html | 0 .../assets/outputforflash/outputforflash.fla | Bin .../assets/outputforflash/outputforflash.swf | Bin .../htmlwriter/assets/outputforflash/swfobject.js | 0 .../samples/old/htmlwriter/outputforflash.html | 0 .../ckeditor/samples/old/htmlwriter/outputhtml.html | 0 .../ckeditor/ckeditor/samples/old/index.html | 0 .../ckeditor/ckeditor/samples/old/inlineall.html | 0 .../ckeditor/ckeditor/samples/old/inlinebycode.html | 0 .../ckeditor/samples/old/inlinetextarea.html | 0 .../ckeditor/ckeditor/samples/old/jquery.html | 0 .../ckeditor/samples/old/magicline/magicline.html | 0 .../ckeditor/ckeditor/samples/old/readonly.html | 0 .../ckeditor/samples/old/replacebyclass.html | 0 .../ckeditor/samples/old/replacebycode.html | 0 .../ckeditor/ckeditor/samples/old/sample.css | 0 .../ckeditor/ckeditor/samples/old/sample.js | 0 .../ckeditor/samples/old/sample_posteddata.php | 0 .../ckeditor/ckeditor/samples/old/tabindex.html | 0 .../ckeditor/samples/old/toolbar/toolbar.html | 0 .../ckeditor/ckeditor/samples/old/uicolor.html | 0 .../ckeditor/ckeditor/samples/old/uilanguages.html | 0 .../ckeditor/samples/old/wysiwygarea/fullpage.html | 0 .../ckeditor/ckeditor/samples/old/xhtmlstyle.html | 0 .../samples/toolbarconfigurator/css/fontello.css | 0 .../samples/toolbarconfigurator/font/LICENSE.txt | 0 .../samples/toolbarconfigurator/font/config.json | 0 .../samples/toolbarconfigurator/font/fontello.eot | Bin .../samples/toolbarconfigurator/font/fontello.svg | 0 .../samples/toolbarconfigurator/font/fontello.ttf | Bin .../samples/toolbarconfigurator/font/fontello.woff | Bin .../ckeditor/samples/toolbarconfigurator/index.html | 0 .../js/abstracttoolbarmodifier.js | 0 .../toolbarconfigurator/js/fulltoolbareditor.js | 0 .../toolbarconfigurator/js/toolbarmodifier.js | 0 .../toolbarconfigurator/js/toolbartextmodifier.js | 0 .../toolbarconfigurator/lib/codemirror/LICENSE | 0 .../lib/codemirror/codemirror.css | 0 .../lib/codemirror/codemirror.js | 0 .../lib/codemirror/javascript.js | 0 .../toolbarconfigurator/lib/codemirror/neo.css | 0 .../lib/codemirror/show-hint.css | 0 .../toolbarconfigurator/lib/codemirror/show-hint.js | 0 .../ckeditor/ckeditor/skins/moono/dialog.css | 0 .../ckeditor/ckeditor/skins/moono/dialog_ie.css | 0 .../ckeditor/ckeditor/skins/moono/dialog_ie7.css | 0 .../ckeditor/ckeditor/skins/moono/dialog_ie8.css | 0 .../ckeditor/skins/moono/dialog_iequirks.css | 0 .../ckeditor/ckeditor/skins/moono/editor.css | 0 .../ckeditor/ckeditor/skins/moono/editor_gecko.css | 0 .../ckeditor/ckeditor/skins/moono/editor_ie.css | 0 .../ckeditor/ckeditor/skins/moono/editor_ie7.css | 0 .../ckeditor/ckeditor/skins/moono/editor_ie8.css | 0 .../ckeditor/skins/moono/editor_iequirks.css | 0 .../ckeditor/ckeditor/skins/moono/icons.png | Bin .../ckeditor/ckeditor/skins/moono/icons_hidpi.png | Bin .../ckeditor/ckeditor/skins/moono/images/arrow.png | Bin .../ckeditor/ckeditor/skins/moono/images/close.png | Bin .../ckeditor/skins/moono/images/hidpi/close.png | Bin .../ckeditor/skins/moono/images/hidpi/lock-open.png | Bin .../ckeditor/skins/moono/images/hidpi/lock.png | Bin .../ckeditor/skins/moono/images/hidpi/refresh.png | Bin .../ckeditor/skins/moono/images/lock-open.png | Bin .../ckeditor/ckeditor/skins/moono/images/lock.png | Bin .../ckeditor/skins/moono/images/refresh.png | Bin .../ckeditor/skins/moono/images/spinner.gif | Bin .../ckeditor/ckeditor/skins/moono/readme.md | 0 .../includes/ckeditor/ckeditor/styles.js | 0 {htdocs => public}/includes/evalmath/README.md | 0 .../includes/evalmath/evalmath.class.php | 0 {htdocs => public}/includes/fonts/Aerial.ttf | Bin {htdocs => public}/includes/fonts/AerialBd.ttf | Bin {htdocs => public}/includes/fonts/AerialBdIt.ttf | Bin {htdocs => public}/includes/fonts/AerialIt.ttf | Bin {htdocs => public}/includes/fonts/CHANGELOG.TXT | 0 {htdocs => public}/includes/fonts/COPYRIGHT.TXT | 0 {htdocs => public}/includes/fpdfi/README.txt | 0 .../includes/fpdfi/filters/FilterASCII85.php | 0 .../includes/fpdfi/filters/FilterASCII85_FPDI.php | 0 .../includes/fpdfi/filters/FilterASCIIHexDecode.php | 0 .../includes/fpdfi/filters/FilterLZW.php | 0 .../includes/fpdfi/filters/FilterLZW_FPDI.php | 0 {htdocs => public}/includes/fpdfi/fpdf_tpl.php | 0 {htdocs => public}/includes/fpdfi/fpdi.php | 0 {htdocs => public}/includes/fpdfi/fpdi_bridge.php | 0 .../includes/fpdfi/fpdi_pdf_parser.php | 0 {htdocs => public}/includes/fpdfi/pdf_context.php | 0 {htdocs => public}/includes/fpdfi/pdf_parser.php | 0 {htdocs => public}/includes/geoip/README.txt | 0 {htdocs => public}/includes/geoip/geoip.inc | 0 {htdocs => public}/includes/geoip/geoipcity.inc | 0 .../includes/geoip/geoipregionvars.php | 0 {htdocs => public}/includes/geoip/sample.php | 0 {htdocs => public}/includes/geoip/sample_city.php | 0 .../includes/geoip/sample_distributed.php | 0 .../includes/geoip/sample_netspeed.php | 0 {htdocs => public}/includes/geoip/sample_org.php | 0 {htdocs => public}/includes/geoip/sample_region.php | 0 {htdocs => public}/includes/index.html | 0 .../redmond/images/ui-bg_flat_0_aaaaaa_40x100.png | Bin .../redmond/images/ui-bg_flat_55_fbec88_40x100.png | Bin .../redmond/images/ui-bg_glass_75_d0e5f5_1x400.png | Bin .../redmond/images/ui-bg_glass_85_dfeffc_1x400.png | Bin .../redmond/images/ui-bg_glass_95_fef1ec_1x400.png | Bin .../images/ui-bg_gloss-wave_55_5c9ccc_500x100.png | Bin .../images/ui-bg_inset-hard_100_f5f8f9_1x100.png | Bin .../images/ui-bg_inset-hard_100_fcfdfd_1x100.png | Bin .../css/redmond/images/ui-icons_217bc0_256x240.png | Bin .../css/redmond/images/ui-icons_2e83ff_256x240.png | Bin .../css/redmond/images/ui-icons_469bdd_256x240.png | Bin .../css/redmond/images/ui-icons_6da8d5_256x240.png | Bin .../css/redmond/images/ui-icons_cd0a0a_256x240.png | Bin .../css/redmond/images/ui-icons_d8e7f3_256x240.png | Bin .../css/redmond/images/ui-icons_f9bd01_256x240.png | Bin .../includes/jquery/css/redmond/jquery-ui.css | 0 .../includes/jquery/css/redmond/jquery-ui.min.css | 0 .../includes/jquery/css/redmond/theme.css | 0 .../images/ui-bg_flat_0_aaaaaa_40x100.png | Bin .../images/ui-bg_flat_75_ffffff_40x100.png | Bin .../images/ui-bg_glass_55_fbf9ee_1x400.png | Bin .../images/ui-bg_glass_65_ffffff_1x400.png | Bin .../images/ui-bg_glass_75_dadada_1x400.png | Bin .../images/ui-bg_glass_75_e6e6e6_1x400.png | Bin .../images/ui-bg_glass_95_fef1ec_1x400.png | Bin .../images/ui-bg_highlight-soft_75_cccccc_1x100.png | Bin .../smoothness/images/ui-icons_222222_256x240.png | Bin .../smoothness/images/ui-icons_2e83ff_256x240.png | Bin .../smoothness/images/ui-icons_454545_256x240.png | Bin .../smoothness/images/ui-icons_888888_256x240.png | Bin .../smoothness/images/ui-icons_cd0a0a_256x240.png | Bin .../includes/jquery/css/smoothness/jquery-ui.css | 0 .../jquery/css/smoothness/jquery-ui.min.css | 0 .../includes/jquery/css/smoothness/theme.css | 0 .../ui-bg_diagonals-thick_18_b81900_40x40.png | Bin .../ui-bg_diagonals-thick_20_666666_40x40.png | Bin .../images/ui-bg_flat_10_000000_40x100.png | Bin .../images/ui-bg_glass_100_f6f6f6_1x400.png | Bin .../images/ui-bg_glass_100_fdf5ce_1x400.png | Bin .../images/ui-bg_glass_65_ffffff_1x400.png | Bin .../images/ui-bg_gloss-wave_35_f6a828_500x100.png | Bin .../ui-bg_highlight-soft_100_eeeeee_1x100.png | Bin .../images/ui-bg_highlight-soft_75_ffe45c_1x100.png | Bin .../ui-lightness/images/ui-icons_222222_256x240.png | Bin .../ui-lightness/images/ui-icons_228ef1_256x240.png | Bin .../ui-lightness/images/ui-icons_ef8c08_256x240.png | Bin .../ui-lightness/images/ui-icons_ffd27a_256x240.png | Bin .../ui-lightness/images/ui-icons_ffffff_256x240.png | Bin .../includes/jquery/css/ui-lightness/jquery-ui.css | 0 .../jquery/css/ui-lightness/jquery-ui.min.css | 0 .../includes/jquery/css/ui-lightness/theme.css | 0 {htdocs => public}/includes/jquery/js/jquery-ui.js | 0 .../includes/jquery/js/jquery-ui.min.js | 0 {htdocs => public}/includes/jquery/js/jquery.js | 0 {htdocs => public}/includes/jquery/js/jquery.min.js | 0 .../jquery/plugins/blockUI/jquery.blockUI.js | 0 .../plugins/colorpicker/jquery.colorpicker.css | 0 .../plugins/colorpicker/jquery.colorpicker.js | 0 .../includes/jquery/plugins/fileupload/README.md | 0 .../plugins/fileupload/css/jquery.fileupload-ui.css | 0 .../jquery/plugins/fileupload/img/loading.gif | Bin .../jquery/plugins/fileupload/img/progressbar.gif | Bin .../js/cors/jquery.postmessage-transport.js | 0 .../fileupload/js/cors/jquery.xdr-transport.js | 0 .../plugins/fileupload/js/jquery.fileupload-fp.js | 0 .../plugins/fileupload/js/jquery.fileupload-jui.js | 0 .../plugins/fileupload/js/jquery.fileupload-ui.js | 0 .../plugins/fileupload/js/jquery.fileupload.js | 0 .../fileupload/js/jquery.iframe-transport.js | 0 .../includes/jquery/plugins/fileupload/js/locale.js | 0 .../includes/jquery/plugins/fileupload/js/main.js | 0 .../fileupload/js/vendor/jquery.ui.widget.js | 0 .../includes/jquery/plugins/flot/API.md | 0 .../includes/jquery/plugins/flot/CONTRIBUTING.md | 0 .../includes/jquery/plugins/flot/FAQ.md | 0 .../includes/jquery/plugins/flot/LICENSE.txt | 0 .../includes/jquery/plugins/flot/Makefile | 0 .../includes/jquery/plugins/flot/NEWS.md | 0 .../includes/jquery/plugins/flot/PLUGINS.md | 0 .../includes/jquery/plugins/flot/README.md | 0 .../includes/jquery/plugins/flot/excanvas.js | 0 .../includes/jquery/plugins/flot/excanvas.min.js | 0 .../jquery/plugins/flot/jquery.colorhelpers.js | 0 .../jquery/plugins/flot/jquery.colorhelpers.min.js | 0 .../jquery/plugins/flot/jquery.flot.canvas.js | 0 .../jquery/plugins/flot/jquery.flot.canvas.min.js | 0 .../jquery/plugins/flot/jquery.flot.categories.js | 0 .../plugins/flot/jquery.flot.categories.min.js | 0 .../jquery/plugins/flot/jquery.flot.crosshair.js | 0 .../plugins/flot/jquery.flot.crosshair.min.js | 0 .../jquery/plugins/flot/jquery.flot.errorbars.js | 0 .../plugins/flot/jquery.flot.errorbars.min.js | 0 .../jquery/plugins/flot/jquery.flot.fillbetween.js | 0 .../plugins/flot/jquery.flot.fillbetween.min.js | 0 .../jquery/plugins/flot/jquery.flot.image.js | 0 .../jquery/plugins/flot/jquery.flot.image.min.js | 0 .../includes/jquery/plugins/flot/jquery.flot.js | 0 .../includes/jquery/plugins/flot/jquery.flot.min.js | 0 .../jquery/plugins/flot/jquery.flot.navigate.js | 0 .../jquery/plugins/flot/jquery.flot.navigate.min.js | 0 .../includes/jquery/plugins/flot/jquery.flot.pie.js | 0 .../jquery/plugins/flot/jquery.flot.pie.min.js | 0 .../jquery/plugins/flot/jquery.flot.resize.js | 0 .../jquery/plugins/flot/jquery.flot.resize.min.js | 0 .../jquery/plugins/flot/jquery.flot.selection.js | 0 .../plugins/flot/jquery.flot.selection.min.js | 0 .../jquery/plugins/flot/jquery.flot.stack.js | 0 .../jquery/plugins/flot/jquery.flot.stack.min.js | 0 .../jquery/plugins/flot/jquery.flot.symbol.js | 0 .../jquery/plugins/flot/jquery.flot.symbol.min.js | 0 .../jquery/plugins/flot/jquery.flot.threshold.js | 0 .../plugins/flot/jquery.flot.threshold.min.js | 0 .../jquery/plugins/flot/jquery.flot.time.js | 0 .../jquery/plugins/flot/jquery.flot.time.min.js | 0 .../includes/jquery/plugins/jcrop/css/Jcrop.gif | Bin .../jquery/plugins/jcrop/css/jquery.Jcrop.css | 0 .../includes/jquery/plugins/jcrop/index.html | 0 .../jquery/plugins/jcrop/js/jquery.Jcrop.js | 0 .../jquery/plugins/jcrop/js/jquery.Jcrop.min.js | 0 .../plugins/jeditable/jquery.jeditable.ckeditor.js | 0 .../jquery/plugins/jeditable/jquery.jeditable.js | 0 .../plugins/jeditable/jquery.jeditable.min.js | 0 .../jeditable/jquery.jeditable.ui-autocomplete.js | 0 .../jeditable/jquery.jeditable.ui-datepicker.js | 0 .../plugins/jnotify/jquery.jnotify-alt.min.css | 0 .../jquery/plugins/jnotify/jquery.jnotify.css | 0 .../jquery/plugins/jnotify/jquery.jnotify.js | 0 .../jquery/plugins/jnotify/jquery.jnotify.min.css | 0 .../jquery/plugins/jnotify/jquery.jnotify.min.js | 0 .../includes/jquery/plugins/jpicker/ChangeLog.txt | 0 .../includes/jquery/plugins/jpicker/Example.html | 0 .../includes/jquery/plugins/jpicker/ReadMe.txt | 0 .../jquery/plugins/jpicker/css/jPicker-1.1.6.css | 0 .../plugins/jpicker/css/jPicker-1.1.6.min.css | 0 .../jquery/plugins/jpicker/images/AlphaBar.png | Bin .../includes/jquery/plugins/jpicker/images/Bars.png | Bin .../includes/jquery/plugins/jpicker/images/Maps.png | Bin .../jquery/plugins/jpicker/images/NoColor.png | Bin .../jquery/plugins/jpicker/images/bar-opacity.png | Bin .../jquery/plugins/jpicker/images/map-opacity.png | Bin .../jquery/plugins/jpicker/images/mappoint.gif | Bin .../jquery/plugins/jpicker/images/picker.gif | Bin .../plugins/jpicker/images/preview-opacity.png | Bin .../jquery/plugins/jpicker/images/rangearrows.gif | Bin .../includes/jquery/plugins/jpicker/jPicker.css | 0 .../jquery/plugins/jpicker/jpicker-1.1.6.js | 0 .../jquery/plugins/jpicker/jpicker-1.1.6.min.js | 0 .../plugins/jqueryFileTree/images/application.png | Bin .../jquery/plugins/jqueryFileTree/images/code.png | Bin .../jquery/plugins/jqueryFileTree/images/css.png | Bin .../jquery/plugins/jqueryFileTree/images/db.png | Bin .../plugins/jqueryFileTree/images/directory.png | Bin .../jquery/plugins/jqueryFileTree/images/doc.png | Bin .../jquery/plugins/jqueryFileTree/images/file.png | Bin .../jquery/plugins/jqueryFileTree/images/film.png | Bin .../jquery/plugins/jqueryFileTree/images/flash.png | Bin .../plugins/jqueryFileTree/images/folder_open.png | Bin .../jquery/plugins/jqueryFileTree/images/html.png | Bin .../jquery/plugins/jqueryFileTree/images/java.png | Bin .../jquery/plugins/jqueryFileTree/images/linux.png | Bin .../jquery/plugins/jqueryFileTree/images/music.png | Bin .../jquery/plugins/jqueryFileTree/images/pdf.png | Bin .../jquery/plugins/jqueryFileTree/images/php.png | Bin .../plugins/jqueryFileTree/images/picture.png | Bin .../jquery/plugins/jqueryFileTree/images/ppt.png | Bin .../jquery/plugins/jqueryFileTree/images/psd.png | Bin .../jquery/plugins/jqueryFileTree/images/ruby.png | Bin .../jquery/plugins/jqueryFileTree/images/script.png | Bin .../plugins/jqueryFileTree/images/spinner.gif | Bin .../jquery/plugins/jqueryFileTree/images/txt.png | Bin .../jquery/plugins/jqueryFileTree/images/xls.png | Bin .../jquery/plugins/jqueryFileTree/images/zip.png | Bin .../plugins/jqueryFileTree/jqueryFileTree.css | 0 .../jquery/plugins/jqueryFileTree/jqueryFileTree.js | 0 .../jquery/plugins/jquerytreeview/changelog.md | 0 .../plugins/jquerytreeview/images/ajax-loader.gif | Bin .../jquery/plugins/jquerytreeview/images/file.gif | Bin .../plugins/jquerytreeview/images/folder-closed.gif | Bin .../jquery/plugins/jquerytreeview/images/folder.gif | Bin .../jquery/plugins/jquerytreeview/images/minus.gif | Bin .../jquery/plugins/jquerytreeview/images/plus.gif | Bin .../jquerytreeview/images/treeview-black-line.gif | Bin .../jquerytreeview/images/treeview-black.gif | Bin .../jquerytreeview/images/treeview-default-line.gif | Bin .../jquerytreeview/images/treeview-default.gif | Bin .../images/treeview-famfamfam-line.gif | Bin .../jquerytreeview/images/treeview-famfamfam.gif | Bin .../jquerytreeview/images/treeview-gray-line.gif | Bin .../plugins/jquerytreeview/images/treeview-gray.gif | Bin .../jquerytreeview/images/treeview-red-line.gif | Bin .../plugins/jquerytreeview/images/treeview-red.gif | Bin .../plugins/jquerytreeview/jquery.treeview.async.js | 0 .../plugins/jquerytreeview/jquery.treeview.css | 0 .../plugins/jquerytreeview/jquery.treeview.edit.js | 0 .../plugins/jquerytreeview/jquery.treeview.js | 0 .../jquerytreeview/jquery.treeview.sortable.js | 0 .../plugins/jquerytreeview/lib/jquery.cookie.js | 0 .../jquery/plugins/jquerytreeview/readme.md | 0 .../jquery/plugins/jquerytreeview/screenshot.png | Bin .../includes/jquery/plugins/layout/jquery.layout.js | 0 .../jquery/plugins/layout/jquery.layout.min.js | 0 .../jquery/plugins/mobile/images/ajax-loader.gif | Bin .../jquery/plugins/mobile/images/icons-18-black.png | Bin .../jquery/plugins/mobile/images/icons-18-white.png | Bin .../jquery/plugins/mobile/images/icons-36-black.png | Bin .../jquery/plugins/mobile/images/icons-36-white.png | Bin .../jquery/plugins/mobile/jquery.mobile-latest.css | 0 .../jquery/plugins/mobile/jquery.mobile-latest.js | 0 .../plugins/mobile/jquery.mobile-latest.min.css | 0 .../plugins/mobile/jquery.mobile-latest.min.js | 0 .../jquery/plugins/multiselect/MIT-LICENSE.txt | 0 .../plugins/multiselect/css/ui.multiselect.css | 0 .../jquery/plugins/multiselect/js/ui.multiselect.js | 0 .../includes/jquery/plugins/select2/.gitignore | 0 .../includes/jquery/plugins/select2/CONTRIBUTING.md | 0 .../includes/jquery/plugins/select2/LICENSE | 0 .../includes/jquery/plugins/select2/README.md | 0 .../includes/jquery/plugins/select2/bower.json | 0 .../includes/jquery/plugins/select2/component.json | 0 .../includes/jquery/plugins/select2/composer.json | 0 .../includes/jquery/plugins/select2/package.json | 0 .../includes/jquery/plugins/select2/release.sh | 0 .../jquery/plugins/select2/select2-bootstrap.css | 0 .../jquery/plugins/select2/select2-spinner.gif | Bin .../includes/jquery/plugins/select2/select2.css | 0 .../jquery/plugins/select2/select2.jquery.json | 0 .../includes/jquery/plugins/select2/select2.js | 0 .../includes/jquery/plugins/select2/select2.min.js | 0 .../includes/jquery/plugins/select2/select2.png | Bin .../jquery/plugins/select2/select2_locale_ar.js | 0 .../jquery/plugins/select2/select2_locale_az.js | 0 .../jquery/plugins/select2/select2_locale_bg.js | 0 .../jquery/plugins/select2/select2_locale_ca.js | 0 .../jquery/plugins/select2/select2_locale_cs.js | 0 .../jquery/plugins/select2/select2_locale_da.js | 0 .../jquery/plugins/select2/select2_locale_de.js | 0 .../jquery/plugins/select2/select2_locale_el.js | 0 .../plugins/select2/select2_locale_en.js.template | 0 .../jquery/plugins/select2/select2_locale_es.js | 0 .../jquery/plugins/select2/select2_locale_et.js | 0 .../jquery/plugins/select2/select2_locale_eu.js | 0 .../jquery/plugins/select2/select2_locale_fa.js | 0 .../jquery/plugins/select2/select2_locale_fi.js | 0 .../jquery/plugins/select2/select2_locale_fr.js | 0 .../jquery/plugins/select2/select2_locale_gl.js | 0 .../jquery/plugins/select2/select2_locale_he.js | 0 .../jquery/plugins/select2/select2_locale_hr.js | 0 .../jquery/plugins/select2/select2_locale_hu.js | 0 .../jquery/plugins/select2/select2_locale_id.js | 0 .../jquery/plugins/select2/select2_locale_is.js | 0 .../jquery/plugins/select2/select2_locale_it.js | 0 .../jquery/plugins/select2/select2_locale_ja.js | 0 .../jquery/plugins/select2/select2_locale_ka.js | 0 .../jquery/plugins/select2/select2_locale_ko.js | 0 .../jquery/plugins/select2/select2_locale_lt.js | 0 .../jquery/plugins/select2/select2_locale_lv.js | 0 .../jquery/plugins/select2/select2_locale_mk.js | 0 .../jquery/plugins/select2/select2_locale_ms.js | 0 .../jquery/plugins/select2/select2_locale_nb.js | 0 .../jquery/plugins/select2/select2_locale_nl.js | 0 .../jquery/plugins/select2/select2_locale_pl.js | 0 .../jquery/plugins/select2/select2_locale_pt-BR.js | 0 .../jquery/plugins/select2/select2_locale_pt-PT.js | 0 .../jquery/plugins/select2/select2_locale_ro.js | 0 .../jquery/plugins/select2/select2_locale_rs.js | 0 .../jquery/plugins/select2/select2_locale_ru.js | 0 .../jquery/plugins/select2/select2_locale_sk.js | 0 .../jquery/plugins/select2/select2_locale_sv.js | 0 .../jquery/plugins/select2/select2_locale_th.js | 0 .../jquery/plugins/select2/select2_locale_tr.js | 0 .../jquery/plugins/select2/select2_locale_ug-CN.js | 0 .../jquery/plugins/select2/select2_locale_uk.js | 0 .../jquery/plugins/select2/select2_locale_vi.js | 0 .../jquery/plugins/select2/select2_locale_zh-CN.js | 0 .../jquery/plugins/select2/select2_locale_zh-TW.js | 0 .../includes/jquery/plugins/select2/select2x2.png | Bin .../includes/jquery/plugins/tablednd/README.txt | 0 .../jquery/plugins/tablednd/jquery.tablednd.0.6.js | 0 .../plugins/tablednd/jquery.tablednd.0.6.min.js | 0 .../timepicker/jquery-ui-timepicker-addon.css | 0 .../timepicker/jquery-ui-timepicker-addon.js | 0 .../includes/jquery/plugins/tiptip/jquery.tipTip.js | 0 .../jquery/plugins/tiptip/jquery.tipTip.min.js | 0 .../includes/jquery/plugins/tiptip/tipTip.css | 0 {htdocs => public}/includes/jsgantt/index.htm | 0 {htdocs => public}/includes/jsgantt/jsgantt.css | 0 {htdocs => public}/includes/jsgantt/jsgantt.js | 0 {htdocs => public}/includes/jsgantt/jsgantt.min.js | 0 .../includes/jsgantt/jsgantt_Minutes.html | 0 .../includes/jsgantt/jsgantt_exExternalXML.html | 0 {htdocs => public}/includes/jsgantt/project.xml | 0 {htdocs => public}/includes/jstz/jstz.js | 0 {htdocs => public}/includes/jstz/jstz.min.js | 0 .../includes/mike42/escpos-php/.gitignore | 0 .../includes/mike42/escpos-php/Escpos.php | 0 .../includes/mike42/escpos-php/LICENSE.md | 0 .../includes/mike42/escpos-php/README.md | 0 .../includes/mike42/escpos-php/composer.json | 0 .../includes/mike42/escpos-php/composer.lock | 0 .../includes/mike42/escpos-php/doc/Makefile | 0 .../includes/mike42/escpos-php/doc/escpos.conf | 0 .../includes/mike42/escpos-php/example/README.md | 0 .../includes/mike42/escpos-php/example/barcode.php | 0 .../mike42/escpos-php/example/bit-image.php | 0 .../example/character-encodings-with-images.php | 0 .../escpos-php/example/character-encodings.php | 0 .../mike42/escpos-php/example/character-tables.php | 0 .../includes/mike42/escpos-php/example/demo.php | 0 .../includes/mike42/escpos-php/example/graphics.php | 0 .../mike42/escpos-php/example/interface/README.md | 0 .../escpos-php/example/interface/ethernet.php | 0 .../escpos-php/example/interface/linux-usb.php | 0 .../mike42/escpos-php/example/interface/smb.php | 0 .../escpos-php/example/interface/windows-lpt.php | 0 .../escpos-php/example/interface/windows-usb.php | 0 .../mike42/escpos-php/example/print-from-html.php | 0 .../mike42/escpos-php/example/print-from-pdf.php | 0 .../includes/mike42/escpos-php/example/qr-code.php | 0 .../mike42/escpos-php/example/receipt-with-logo.php | 0 .../resources/character-encoding-test-strings.inc | 0 .../escpos-php/example/resources/document.odt | Bin .../escpos-php/example/resources/document.pdf | Bin .../mike42/escpos-php/example/resources/document.z | Bin .../example/resources/escpos-php-small.png | Bin .../escpos-php/example/resources/escpos-php.png | Bin .../mike42/escpos-php/example/resources/tux.png | Bin .../example/specific/29-latvian-star-tup592.php | 0 .../specific/32-german-tm-t20-ii-custom-command.php | 0 .../example/specific/33-spanish-seypos-prp-300.php | 0 .../example/specific/39-currency-symbols.php | 0 .../specific/44-pound-symbol-star-tsp650.php | 0 .../escpos-php/example/specific/50-P-822D-greek.php | 0 .../example/specific/54-gfx-sidebyside.php | 0 .../example/specific/6-arabic-epos-tep-220m.php | 0 .../mike42/escpos-php/example/specific/README.md | 0 .../mike42/escpos-php/example/text-size.php | 0 .../escpos-php/src/AbstractCapabilityProfile.php | 0 .../includes/mike42/escpos-php/src/CodePage.php | 0 .../escpos-php/src/DefaultCapabilityProfile.php | 0 .../mike42/escpos-php/src/DummyPrintConnector.php | 0 .../escpos-php/src/EposTepCapabilityProfile.php | 0 .../includes/mike42/escpos-php/src/EscposImage.php | 0 .../mike42/escpos-php/src/EscposPrintBuffer.php | 0 .../mike42/escpos-php/src/FilePrintConnector.php | 0 .../mike42/escpos-php/src/ImagePrintBuffer.php | 0 .../mike42/escpos-php/src/NetworkPrintConnector.php | 0 .../escpos-php/src/P822DCapabilityProfile.php | 0 .../includes/mike42/escpos-php/src/PrintBuffer.php | 0 .../mike42/escpos-php/src/PrintConnector.php | 0 .../escpos-php/src/SimpleCapabilityProfile.php | 0 .../mike42/escpos-php/src/StarCapabilityProfile.php | 0 .../mike42/escpos-php/src/WindowsPrintConnector.php | 0 .../Characters-DefaultCapabilityProfile.ser.gz | Bin .../cache/Characters-SimpleCapabilityProfile.ser.gz | Bin .../cache/Characters-StarCapabilityProfile.ser.gz | Bin .../includes/mike42/escpos-php/test/bootstrap.php | 0 .../escpos-php/test/integration/ExampleTest.php | 0 .../test/integration/resources/output/barcode.bin | Bin .../test/integration/resources/output/bit-image.bin | Bin .../resources/output/character-encodings.bin | Bin .../resources/output/character-tables.bin | Bin .../test/integration/resources/output/demo.bin | Bin .../test/integration/resources/output/graphics.bin | Bin .../test/integration/resources/output/interface.bin | 0 .../resources/output/print-from-pdf.bin.z | Bin .../test/integration/resources/output/qr-code.bin | Bin .../resources/output/receipt-with-logo.bin | Bin .../test/integration/resources/output/text-size.bin | Bin .../includes/mike42/escpos-php/test/phpunit.xml | 0 .../test/unit/AbstractCapabilityProfileTest.php | 0 .../mike42/escpos-php/test/unit/EscposImageTest.php | 0 .../escpos-php/test/unit/EscposPrintBufferTest.php | 0 .../mike42/escpos-php/test/unit/EscposTest.php | 0 .../test/unit/WindowsPrintConnectorTest.php | 0 .../test/unit/resources/black_transparent.gif | Bin .../test/unit/resources/black_transparent.png | Bin .../escpos-php/test/unit/resources/black_white.bmp | Bin .../escpos-php/test/unit/resources/black_white.gif | Bin .../escpos-php/test/unit/resources/black_white.jpg | Bin .../escpos-php/test/unit/resources/black_white.png | Bin .../escpos-php/test/unit/resources/canvas_black.bmp | Bin .../escpos-php/test/unit/resources/canvas_black.gif | Bin .../escpos-php/test/unit/resources/canvas_black.jpg | Bin .../escpos-php/test/unit/resources/canvas_black.png | Bin .../escpos-php/test/unit/resources/canvas_white.bmp | Bin .../escpos-php/test/unit/resources/canvas_white.gif | Bin .../escpos-php/test/unit/resources/canvas_white.jpg | Bin .../escpos-php/test/unit/resources/canvas_white.png | Bin .../mike42/escpos-php/test/unit/resources/demo.php | 0 .../mike42/escpos-php/test/unit/resources/doc.pdf | Bin .../mobiledetect/mobiledetectlib/.gitignore | 0 .../includes/mobiledetect/mobiledetectlib/.php_cs | 0 .../mobiledetect/mobiledetectlib/.travis.yml | 0 .../mobiledetect/mobiledetectlib/LICENSE.txt | 0 .../mobiledetect/mobiledetectlib/Mobile_Detect.json | 0 .../mobiledetect/mobiledetectlib/Mobile_Detect.php | 0 .../includes/mobiledetect/mobiledetectlib/README.md | 0 .../mobiledetect/mobiledetectlib/composer.json | 0 .../mobiledetect/mobiledetectlib/examples/demo.php | 0 .../mobiledetectlib/examples/session_example.php | 0 .../mobiledetect/mobiledetectlib/examples/test.php | 0 .../mobiledetectlib/export/exportToJSON.php | 0 .../namespaced/Detection/MobileDetect.php | 0 .../mobiledetectlib/tests/BasicsTest.php | 0 .../mobiledetectlib/tests/UA_List.inc.php | 0 .../mobiledetectlib/tests/UA_List.pending.txt | 0 .../mobiledetectlib/tests/UserAgentTest.php | 0 .../mobiledetectlib/tests/VendorsTest_tmp.php | 0 .../mobiledetectlib/tests/bootstrap.php | 0 .../mobiledetect/mobiledetectlib/tests/phpunit.xml | 0 .../tests/providers/vendors/Acer.php | 0 .../tests/providers/vendors/Alcatel.php | 0 .../tests/providers/vendors/Allview.php | 0 .../tests/providers/vendors/Amazon.php | 0 .../tests/providers/vendors/Apple.php | 0 .../tests/providers/vendors/Archos.php | 0 .../tests/providers/vendors/Asus.php | 0 .../tests/providers/vendors/Blackberry.php | 0 .../tests/providers/vendors/Dell.php | 0 .../tests/providers/vendors/Google.php | 0 .../mobiledetectlib/tests/providers/vendors/HP.php | 0 .../mobiledetectlib/tests/providers/vendors/HTC.php | 0 .../tests/providers/vendors/Huawei.php | 0 .../mobiledetectlib/tests/providers/vendors/LG.php | 0 .../tests/providers/vendors/Lava.php | 0 .../tests/providers/vendors/Leader.php | 0 .../tests/providers/vendors/Lenovo.php | 0 .../mobiledetectlib/tests/providers/vendors/Mi.php | 0 .../tests/providers/vendors/Microsoft.php | 0 .../tests/providers/vendors/Motorola.php | 0 .../tests/providers/vendors/Nokia.php | 0 .../tests/providers/vendors/Onda.php | 0 .../tests/providers/vendors/Others.php | 0 .../tests/providers/vendors/Prestigio.php | 0 .../tests/providers/vendors/Samsung.php | 0 .../tests/providers/vendors/Sony.php | 0 .../tests/providers/vendors/SpecialCases.php | 0 .../tests/providers/vendors/Vodafone.php | 0 .../mobiledetectlib/tests/providers/vendors/ZTE.php | 0 .../mobiledetect/mobiledetectlib/tests/ualist.json | 0 .../includes/nusoap/lib/Mail/mime.php | 0 .../includes/nusoap/lib/Mail/mimePart.php | 0 {htdocs => public}/includes/nusoap/lib/changelog | 0 .../includes/nusoap/lib/class.nusoap_base.php | 0 .../includes/nusoap/lib/class.soap_fault.php | 0 .../includes/nusoap/lib/class.soap_parser.php | 0 .../includes/nusoap/lib/class.soap_server.php | 0 .../nusoap/lib/class.soap_transport_http.php | 0 .../includes/nusoap/lib/class.soap_val.php | 0 .../includes/nusoap/lib/class.soapclient.php | 0 .../includes/nusoap/lib/class.wsdl.php | 0 .../includes/nusoap/lib/class.wsdlcache.php | 0 .../includes/nusoap/lib/class.xmlschema.php | 0 {htdocs => public}/includes/nusoap/lib/nusoap.php | 0 .../includes/nusoap/lib/nusoapmime.php | 0 {htdocs => public}/includes/odtphp/Segment.php | 0 .../includes/odtphp/SegmentIterator.php | 0 {htdocs => public}/includes/odtphp/odf.php | 0 .../includes/odtphp/zip/PclZipProxy.php | 0 .../includes/odtphp/zip/PhpZipProxy.php | 0 .../includes/odtphp/zip/ZipInterface.php | 0 .../includes/odtphp/zip/pclzip/gnu-lgpl.txt | 0 .../includes/odtphp/zip/pclzip/pclzip.lib.php | 0 .../includes/odtphp/zip/pclzip/readme.txt | 0 {htdocs => public}/includes/php-iban/.gitignore | 0 {htdocs => public}/includes/php-iban/LICENSE | 0 .../includes/php-iban/mistranscriptions.txt | 0 {htdocs => public}/includes/php-iban/oophp-iban.php | 0 {htdocs => public}/includes/php-iban/php-iban.php | 0 {htdocs => public}/includes/php-iban/registry.txt | 0 .../includes/phpoffice/phpexcel/.gitattributes | 0 .../includes/phpoffice/phpexcel/.gitignore | 0 .../includes/phpoffice/phpexcel/.travis.yml | 0 .../phpoffice/phpexcel/Classes/PHPExcel.php | 0 .../phpexcel/Classes/PHPExcel/Autoloader.php | 0 .../Classes/PHPExcel/CachedObjectStorage/APC.php | 0 .../PHPExcel/CachedObjectStorage/CacheBase.php | 0 .../PHPExcel/CachedObjectStorage/DiscISAM.php | 0 .../Classes/PHPExcel/CachedObjectStorage/ICache.php | 0 .../PHPExcel/CachedObjectStorage/Igbinary.php | 0 .../PHPExcel/CachedObjectStorage/Memcache.php | 0 .../Classes/PHPExcel/CachedObjectStorage/Memory.php | 0 .../PHPExcel/CachedObjectStorage/MemoryGZip.php | 0 .../CachedObjectStorage/MemorySerialized.php | 0 .../PHPExcel/CachedObjectStorage/PHPTemp.php | 0 .../Classes/PHPExcel/CachedObjectStorage/SQLite.php | 0 .../PHPExcel/CachedObjectStorage/SQLite3.php | 0 .../PHPExcel/CachedObjectStorage/Wincache.php | 0 .../Classes/PHPExcel/CachedObjectStorageFactory.php | 0 .../PHPExcel/CalcEngine/CyclicReferenceStack.php | 0 .../phpexcel/Classes/PHPExcel/CalcEngine/Logger.php | 0 .../phpexcel/Classes/PHPExcel/Calculation.php | 0 .../Classes/PHPExcel/Calculation/Database.php | 0 .../Classes/PHPExcel/Calculation/DateTime.php | 0 .../Classes/PHPExcel/Calculation/Engineering.php | 0 .../Classes/PHPExcel/Calculation/Exception.php | 0 .../PHPExcel/Calculation/ExceptionHandler.php | 0 .../Classes/PHPExcel/Calculation/Financial.php | 0 .../Classes/PHPExcel/Calculation/FormulaParser.php | 0 .../Classes/PHPExcel/Calculation/FormulaToken.php | 0 .../Classes/PHPExcel/Calculation/Function.php | 0 .../Classes/PHPExcel/Calculation/Functions.php | 0 .../Classes/PHPExcel/Calculation/Logical.php | 0 .../Classes/PHPExcel/Calculation/LookupRef.php | 0 .../Classes/PHPExcel/Calculation/MathTrig.php | 0 .../Classes/PHPExcel/Calculation/Statistical.php | 0 .../Classes/PHPExcel/Calculation/TextData.php | 0 .../Classes/PHPExcel/Calculation/Token/Stack.php | 0 .../Classes/PHPExcel/Calculation/functionlist.txt | 0 .../phpoffice/phpexcel/Classes/PHPExcel/Cell.php | 0 .../Classes/PHPExcel/Cell/AdvancedValueBinder.php | 0 .../phpexcel/Classes/PHPExcel/Cell/DataType.php | 0 .../Classes/PHPExcel/Cell/DataValidation.php | 0 .../Classes/PHPExcel/Cell/DefaultValueBinder.php | 0 .../phpexcel/Classes/PHPExcel/Cell/Hyperlink.php | 0 .../phpexcel/Classes/PHPExcel/Cell/IValueBinder.php | 0 .../phpoffice/phpexcel/Classes/PHPExcel/Chart.php | 0 .../phpexcel/Classes/PHPExcel/Chart/Axis.php | 0 .../phpexcel/Classes/PHPExcel/Chart/DataSeries.php | 0 .../Classes/PHPExcel/Chart/DataSeriesValues.php | 0 .../phpexcel/Classes/PHPExcel/Chart/Exception.php | 0 .../phpexcel/Classes/PHPExcel/Chart/GridLines.php | 0 .../phpexcel/Classes/PHPExcel/Chart/Layout.php | 0 .../phpexcel/Classes/PHPExcel/Chart/Legend.php | 0 .../phpexcel/Classes/PHPExcel/Chart/PlotArea.php | 0 .../phpexcel/Classes/PHPExcel/Chart/Properties.php | 0 .../Chart/Renderer/PHP Charting Libraries.txt | 0 .../Classes/PHPExcel/Chart/Renderer/jpgraph.php | 0 .../phpexcel/Classes/PHPExcel/Chart/Title.php | 0 .../phpoffice/phpexcel/Classes/PHPExcel/Comment.php | 0 .../Classes/PHPExcel/DocumentProperties.php | 0 .../phpexcel/Classes/PHPExcel/DocumentSecurity.php | 0 .../phpexcel/Classes/PHPExcel/Exception.php | 0 .../phpexcel/Classes/PHPExcel/HashTable.php | 0 .../phpexcel/Classes/PHPExcel/Helper/HTML.php | 0 .../phpexcel/Classes/PHPExcel/IComparable.php | 0 .../phpexcel/Classes/PHPExcel/IOFactory.php | 0 .../phpexcel/Classes/PHPExcel/NamedRange.php | 0 .../phpexcel/Classes/PHPExcel/Reader/Abstract.php | 0 .../phpexcel/Classes/PHPExcel/Reader/CSV.php | 0 .../Classes/PHPExcel/Reader/DefaultReadFilter.php | 0 .../Classes/PHPExcel/Reader/Excel2003XML.php | 0 .../phpexcel/Classes/PHPExcel/Reader/Excel2007.php | 0 .../Classes/PHPExcel/Reader/Excel2007/Chart.php | 0 .../Classes/PHPExcel/Reader/Excel2007/Theme.php | 0 .../phpexcel/Classes/PHPExcel/Reader/Excel5.php | 0 .../Classes/PHPExcel/Reader/Excel5/Escher.php | 0 .../phpexcel/Classes/PHPExcel/Reader/Excel5/MD5.php | 0 .../phpexcel/Classes/PHPExcel/Reader/Excel5/RC4.php | 0 .../phpexcel/Classes/PHPExcel/Reader/Exception.php | 0 .../phpexcel/Classes/PHPExcel/Reader/Gnumeric.php | 0 .../phpexcel/Classes/PHPExcel/Reader/HTML.php | 0 .../Classes/PHPExcel/Reader/IReadFilter.php | 0 .../phpexcel/Classes/PHPExcel/Reader/IReader.php | 0 .../phpexcel/Classes/PHPExcel/Reader/OOCalc.php | 0 .../phpexcel/Classes/PHPExcel/Reader/SYLK.php | 0 .../phpexcel/Classes/PHPExcel/ReferenceHelper.php | 0 .../phpexcel/Classes/PHPExcel/RichText.php | 0 .../Classes/PHPExcel/RichText/ITextElement.php | 0 .../phpexcel/Classes/PHPExcel/RichText/Run.php | 0 .../Classes/PHPExcel/RichText/TextElement.php | 0 .../phpexcel/Classes/PHPExcel/Settings.php | 0 .../phpexcel/Classes/PHPExcel/Shared/CodePage.php | 0 .../phpexcel/Classes/PHPExcel/Shared/Date.php | 0 .../phpexcel/Classes/PHPExcel/Shared/Drawing.php | 0 .../phpexcel/Classes/PHPExcel/Shared/Escher.php | 0 .../Classes/PHPExcel/Shared/Escher/DgContainer.php | 0 .../Shared/Escher/DgContainer/SpgrContainer.php | 0 .../DgContainer/SpgrContainer/SpContainer.php | 0 .../Classes/PHPExcel/Shared/Escher/DggContainer.php | 0 .../Shared/Escher/DggContainer/BstoreContainer.php | 0 .../Escher/DggContainer/BstoreContainer/BSE.php | 0 .../DggContainer/BstoreContainer/BSE/Blip.php | 0 .../phpexcel/Classes/PHPExcel/Shared/Excel5.php | 0 .../phpexcel/Classes/PHPExcel/Shared/File.php | 0 .../phpexcel/Classes/PHPExcel/Shared/Font.php | 0 .../Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT | 0 .../PHPExcel/Shared/JAMA/CholeskyDecomposition.php | 0 .../Shared/JAMA/EigenvalueDecomposition.php | 0 .../PHPExcel/Shared/JAMA/LUDecomposition.php | 0 .../Classes/PHPExcel/Shared/JAMA/Matrix.php | 0 .../PHPExcel/Shared/JAMA/QRDecomposition.php | 0 .../Shared/JAMA/SingularValueDecomposition.php | 0 .../Classes/PHPExcel/Shared/JAMA/utils/Error.php | 0 .../Classes/PHPExcel/Shared/JAMA/utils/Maths.php | 0 .../phpexcel/Classes/PHPExcel/Shared/OLE.php | 0 .../PHPExcel/Shared/OLE/ChainedBlockStream.php | 0 .../phpexcel/Classes/PHPExcel/Shared/OLE/PPS.php | 0 .../Classes/PHPExcel/Shared/OLE/PPS/File.php | 0 .../Classes/PHPExcel/Shared/OLE/PPS/Root.php | 0 .../phpexcel/Classes/PHPExcel/Shared/OLERead.php | 0 .../Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt | 0 .../Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php | 0 .../Classes/PHPExcel/Shared/PCLZip/readme.txt | 0 .../Classes/PHPExcel/Shared/PasswordHasher.php | 0 .../phpexcel/Classes/PHPExcel/Shared/String.php | 0 .../phpexcel/Classes/PHPExcel/Shared/TimeZone.php | 0 .../phpexcel/Classes/PHPExcel/Shared/XMLWriter.php | 0 .../phpexcel/Classes/PHPExcel/Shared/ZipArchive.php | 0 .../Classes/PHPExcel/Shared/ZipStreamWrapper.php | 0 .../Classes/PHPExcel/Shared/trend/bestFitClass.php | 0 .../Shared/trend/exponentialBestFitClass.php | 0 .../PHPExcel/Shared/trend/linearBestFitClass.php | 0 .../Shared/trend/logarithmicBestFitClass.php | 0 .../Shared/trend/polynomialBestFitClass.php | 0 .../PHPExcel/Shared/trend/powerBestFitClass.php | 0 .../Classes/PHPExcel/Shared/trend/trendClass.php | 0 .../phpoffice/phpexcel/Classes/PHPExcel/Style.php | 0 .../phpexcel/Classes/PHPExcel/Style/Alignment.php | 0 .../phpexcel/Classes/PHPExcel/Style/Border.php | 0 .../phpexcel/Classes/PHPExcel/Style/Borders.php | 0 .../phpexcel/Classes/PHPExcel/Style/Color.php | 0 .../phpexcel/Classes/PHPExcel/Style/Conditional.php | 0 .../phpexcel/Classes/PHPExcel/Style/Fill.php | 0 .../phpexcel/Classes/PHPExcel/Style/Font.php | 0 .../Classes/PHPExcel/Style/NumberFormat.php | 0 .../phpexcel/Classes/PHPExcel/Style/Protection.php | 0 .../phpexcel/Classes/PHPExcel/Style/Supervisor.php | 0 .../phpexcel/Classes/PHPExcel/Worksheet.php | 0 .../Classes/PHPExcel/Worksheet/AutoFilter.php | 0 .../PHPExcel/Worksheet/AutoFilter/Column.php | 0 .../PHPExcel/Worksheet/AutoFilter/Column/Rule.php | 0 .../Classes/PHPExcel/Worksheet/BaseDrawing.php | 0 .../Classes/PHPExcel/Worksheet/CellIterator.php | 0 .../phpexcel/Classes/PHPExcel/Worksheet/Column.php | 0 .../PHPExcel/Worksheet/ColumnCellIterator.php | 0 .../Classes/PHPExcel/Worksheet/ColumnDimension.php | 0 .../Classes/PHPExcel/Worksheet/ColumnIterator.php | 0 .../phpexcel/Classes/PHPExcel/Worksheet/Drawing.php | 0 .../Classes/PHPExcel/Worksheet/Drawing/Shadow.php | 0 .../Classes/PHPExcel/Worksheet/HeaderFooter.php | 0 .../PHPExcel/Worksheet/HeaderFooterDrawing.php | 0 .../Classes/PHPExcel/Worksheet/MemoryDrawing.php | 0 .../Classes/PHPExcel/Worksheet/PageMargins.php | 0 .../Classes/PHPExcel/Worksheet/PageSetup.php | 0 .../Classes/PHPExcel/Worksheet/Protection.php | 0 .../phpexcel/Classes/PHPExcel/Worksheet/Row.php | 0 .../Classes/PHPExcel/Worksheet/RowCellIterator.php | 0 .../Classes/PHPExcel/Worksheet/RowDimension.php | 0 .../Classes/PHPExcel/Worksheet/RowIterator.php | 0 .../Classes/PHPExcel/Worksheet/SheetView.php | 0 .../phpexcel/Classes/PHPExcel/WorksheetIterator.php | 0 .../phpexcel/Classes/PHPExcel/Writer/Abstract.php | 0 .../phpexcel/Classes/PHPExcel/Writer/CSV.php | 0 .../phpexcel/Classes/PHPExcel/Writer/Excel2007.php | 0 .../Classes/PHPExcel/Writer/Excel2007/Chart.php | 0 .../Classes/PHPExcel/Writer/Excel2007/Comments.php | 0 .../PHPExcel/Writer/Excel2007/ContentTypes.php | 0 .../Classes/PHPExcel/Writer/Excel2007/DocProps.php | 0 .../Classes/PHPExcel/Writer/Excel2007/Drawing.php | 0 .../Classes/PHPExcel/Writer/Excel2007/Rels.php | 0 .../PHPExcel/Writer/Excel2007/RelsRibbon.php | 0 .../Classes/PHPExcel/Writer/Excel2007/RelsVBA.php | 0 .../PHPExcel/Writer/Excel2007/StringTable.php | 0 .../Classes/PHPExcel/Writer/Excel2007/Style.php | 0 .../Classes/PHPExcel/Writer/Excel2007/Theme.php | 0 .../Classes/PHPExcel/Writer/Excel2007/Workbook.php | 0 .../Classes/PHPExcel/Writer/Excel2007/Worksheet.php | 0 .../PHPExcel/Writer/Excel2007/WriterPart.php | 0 .../phpexcel/Classes/PHPExcel/Writer/Excel5.php | 0 .../Classes/PHPExcel/Writer/Excel5/BIFFwriter.php | 0 .../Classes/PHPExcel/Writer/Excel5/Escher.php | 0 .../Classes/PHPExcel/Writer/Excel5/Font.php | 0 .../Classes/PHPExcel/Writer/Excel5/Parser.php | 0 .../Classes/PHPExcel/Writer/Excel5/Workbook.php | 0 .../Classes/PHPExcel/Writer/Excel5/Worksheet.php | 0 .../phpexcel/Classes/PHPExcel/Writer/Excel5/Xf.php | 0 .../phpexcel/Classes/PHPExcel/Writer/Exception.php | 0 .../phpexcel/Classes/PHPExcel/Writer/HTML.php | 0 .../phpexcel/Classes/PHPExcel/Writer/IWriter.php | 0 .../Classes/PHPExcel/Writer/OpenDocument.php | 0 .../PHPExcel/Writer/OpenDocument/Cell/Comment.php | 0 .../PHPExcel/Writer/OpenDocument/Content.php | 0 .../Classes/PHPExcel/Writer/OpenDocument/Meta.php | 0 .../PHPExcel/Writer/OpenDocument/MetaInf.php | 0 .../PHPExcel/Writer/OpenDocument/Mimetype.php | 0 .../PHPExcel/Writer/OpenDocument/Settings.php | 0 .../Classes/PHPExcel/Writer/OpenDocument/Styles.php | 0 .../PHPExcel/Writer/OpenDocument/Thumbnails.php | 0 .../PHPExcel/Writer/OpenDocument/WriterPart.php | 0 .../phpexcel/Classes/PHPExcel/Writer/PDF.php | 0 .../phpexcel/Classes/PHPExcel/Writer/PDF/Core.php | 0 .../phpexcel/Classes/PHPExcel/Writer/PDF/DomPDF.php | 0 .../phpexcel/Classes/PHPExcel/Writer/PDF/mPDF.php | 0 .../phpexcel/Classes/PHPExcel/Writer/PDF/tcPDF.php | 0 .../phpexcel/Classes/PHPExcel/locale/bg/config | 0 .../phpexcel/Classes/PHPExcel/locale/cs/config | 0 .../phpexcel/Classes/PHPExcel/locale/cs/functions | 0 .../phpexcel/Classes/PHPExcel/locale/da/config | 0 .../phpexcel/Classes/PHPExcel/locale/da/functions | 0 .../phpexcel/Classes/PHPExcel/locale/de/config | 0 .../phpexcel/Classes/PHPExcel/locale/de/functions | 0 .../phpexcel/Classes/PHPExcel/locale/en/uk/config | 0 .../phpexcel/Classes/PHPExcel/locale/es/config | 0 .../phpexcel/Classes/PHPExcel/locale/es/functions | 0 .../phpexcel/Classes/PHPExcel/locale/fi/config | 0 .../phpexcel/Classes/PHPExcel/locale/fi/functions | 0 .../phpexcel/Classes/PHPExcel/locale/fr/config | 0 .../phpexcel/Classes/PHPExcel/locale/fr/functions | 0 .../phpexcel/Classes/PHPExcel/locale/hu/config | 0 .../phpexcel/Classes/PHPExcel/locale/hu/functions | 0 .../phpexcel/Classes/PHPExcel/locale/it/config | 0 .../phpexcel/Classes/PHPExcel/locale/it/functions | 0 .../phpexcel/Classes/PHPExcel/locale/nl/config | 0 .../phpexcel/Classes/PHPExcel/locale/nl/functions | 0 .../phpexcel/Classes/PHPExcel/locale/no/config | 0 .../phpexcel/Classes/PHPExcel/locale/no/functions | 0 .../phpexcel/Classes/PHPExcel/locale/pl/config | 0 .../phpexcel/Classes/PHPExcel/locale/pl/functions | 0 .../phpexcel/Classes/PHPExcel/locale/pt/br/config | 0 .../Classes/PHPExcel/locale/pt/br/functions | 0 .../phpexcel/Classes/PHPExcel/locale/pt/config | 0 .../phpexcel/Classes/PHPExcel/locale/pt/functions | 0 .../phpexcel/Classes/PHPExcel/locale/ru/config | 0 .../phpexcel/Classes/PHPExcel/locale/ru/functions | 0 .../phpexcel/Classes/PHPExcel/locale/sv/config | 0 .../phpexcel/Classes/PHPExcel/locale/sv/functions | 0 .../phpexcel/Classes/PHPExcel/locale/tr/config | 0 .../phpexcel/Classes/PHPExcel/locale/tr/functions | 0 .../includes/phpoffice/phpexcel/changelog.txt | 0 .../includes/phpoffice/phpexcel/composer.json | 0 .../includes/phpoffice/phpexcel/install.txt | 0 .../includes/phpoffice/phpexcel/license.md | 0 {htdocs => public}/includes/printipp/BasicIPP.php | 0 .../includes/printipp/CupsPrintIPP.php | 0 .../includes/printipp/ExtendedPrintIPP.php | 0 {htdocs => public}/includes/printipp/PrintIPP.php | 0 {htdocs => public}/includes/printipp/http_class.php | 0 .../restler/framework/Luracast/Restler/ApcCache.php | 0 .../framework/Luracast/Restler/AutoLoader.php | 0 .../framework/Luracast/Restler/CommentParser.php | 0 .../restler/framework/Luracast/Restler/Compose.php | 0 .../Luracast/Restler/Data/ApiMethodInfo.php | 0 .../restler/framework/Luracast/Restler/Data/Arr.php | 0 .../framework/Luracast/Restler/Data/Invalid.php | 0 .../framework/Luracast/Restler/Data/Object.php | 0 .../framework/Luracast/Restler/Data/Text.php | 0 .../Luracast/Restler/Data/ValidationInfo.php | 0 .../framework/Luracast/Restler/Data/Validator.php | 0 .../framework/Luracast/Restler/Data/ValueObject.php | 0 .../framework/Luracast/Restler/Data/iValidate.php | 0 .../Luracast/Restler/Data/iValueObject.php | 0 .../restler/framework/Luracast/Restler/Defaults.php | 0 .../framework/Luracast/Restler/EventDispatcher.php | 0 .../restler/framework/Luracast/Restler/Explorer.php | 0 .../framework/Luracast/Restler/ExplorerInfo.php | 0 .../framework/Luracast/Restler/Filter/RateLimit.php | 0 .../restler/framework/Luracast/Restler/Flash.php | 0 .../framework/Luracast/Restler/Format/AmfFormat.php | 0 .../framework/Luracast/Restler/Format/CsvFormat.php | 0 .../Luracast/Restler/Format/DependentFormat.php | 0 .../Restler/Format/DependentMultiFormat.php | 0 .../framework/Luracast/Restler/Format/Format.php | 0 .../Luracast/Restler/Format/HtmlFormat.php | 0 .../framework/Luracast/Restler/Format/JsFormat.php | 0 .../Luracast/Restler/Format/JsonFormat.php | 0 .../Luracast/Restler/Format/MultiFormat.php | 0 .../Luracast/Restler/Format/PlistFormat.php | 0 .../framework/Luracast/Restler/Format/TsvFormat.php | 0 .../Luracast/Restler/Format/UploadFormat.php | 0 .../Luracast/Restler/Format/UrlEncodedFormat.php | 0 .../framework/Luracast/Restler/Format/XmlFormat.php | 0 .../Luracast/Restler/Format/YamlFormat.php | 0 .../Luracast/Restler/Format/iDecodeStream.php | 0 .../framework/Luracast/Restler/Format/iFormat.php | 0 .../Luracast/Restler/HumanReadableCache.php | 0 .../Luracast/Restler/InvalidAuthCredentials.php | 0 .../framework/Luracast/Restler/MemcacheCache.php | 0 .../framework/Luracast/Restler/PassThrough.php | 0 .../restler/framework/Luracast/Restler/README.md | 0 .../restler/framework/Luracast/Restler/Redirect.php | 0 .../framework/Luracast/Restler/Resources.php | 0 .../framework/Luracast/Restler/RestException.php | 0 .../restler/framework/Luracast/Restler/Restler.php | 0 .../restler/framework/Luracast/Restler/Routes.php | 0 .../restler/framework/Luracast/Restler/Scope.php | 0 .../restler/framework/Luracast/Restler/UI/Emmet.php | 0 .../framework/Luracast/Restler/UI/FormStyles.php | 0 .../restler/framework/Luracast/Restler/UI/Forms.php | 0 .../restler/framework/Luracast/Restler/UI/Nav.php | 0 .../restler/framework/Luracast/Restler/UI/Tags.php | 0 .../restler/framework/Luracast/Restler/User.php | 0 .../restler/framework/Luracast/Restler/Util.php | 0 .../Restler/compatibility/iAuthenticate.php | 0 .../Luracast/Restler/compatibility/restler1.php | 0 .../Luracast/Restler/compatibility/restler2.php | 0 .../framework/Luracast/Restler/composer.json | 0 .../Luracast/Restler/explorer/css/reset.css | 0 .../Luracast/Restler/explorer/css/screen.css | 0 .../Restler/explorer/images/explorer_icons.png | Bin .../Luracast/Restler/explorer/images/logo_small.png | Bin .../Luracast/Restler/explorer/images/throbber.gif | Bin .../framework/Luracast/Restler/explorer/index.html | 0 .../Luracast/Restler/explorer/lib/backbone-min.js | 0 .../Restler/explorer/lib/handlebars-1.0.0.js | 0 .../Restler/explorer/lib/highlight.7.3.pack.js | 0 .../Restler/explorer/lib/jquery-1.8.0.min.js | 0 .../Restler/explorer/lib/jquery.ba-bbq.min.js | 0 .../Restler/explorer/lib/jquery.slideto.min.js | 0 .../Restler/explorer/lib/jquery.wiggle.min.js | 0 .../Luracast/Restler/explorer/lib/shred.bundle.js | 0 .../Luracast/Restler/explorer/lib/shred/content.js | 0 .../Luracast/Restler/explorer/lib/swagger-oauth.js | 0 .../Luracast/Restler/explorer/lib/swagger.js | 0 .../Luracast/Restler/explorer/lib/underscore-min.js | 0 .../framework/Luracast/Restler/explorer/o2c.html | 0 .../Luracast/Restler/explorer/swagger-ui.js | 0 .../Luracast/Restler/explorer/swagger-ui.min.js | 0 .../framework/Luracast/Restler/iAuthenticate.php | 0 .../restler/framework/Luracast/Restler/iCache.php | 0 .../restler/framework/Luracast/Restler/iCompose.php | 0 .../restler/framework/Luracast/Restler/iFilter.php | 0 .../framework/Luracast/Restler/iIdentifyUser.php | 0 .../Luracast/Restler/iProvideMultiVersionApi.php | 0 .../Luracast/Restler/iUseAuthentication.php | 0 .../framework/Luracast/Restler/views/debug.css | 0 .../framework/Luracast/Restler/views/debug.php | 0 .../includes/swiftmailer/lib/classes/Swift.php | 0 .../swiftmailer/lib/classes/Swift/Attachment.php | 0 .../ByteStream/AbstractFilterableInputStream.php | 0 .../classes/Swift/ByteStream/ArrayByteStream.php | 0 .../lib/classes/Swift/ByteStream/FileByteStream.php | 0 .../Swift/ByteStream/TemporaryFileByteStream.php | 0 .../lib/classes/Swift/CharacterReader.php | 0 .../CharacterReader/GenericFixedWidthReader.php | 0 .../classes/Swift/CharacterReader/UsAsciiReader.php | 0 .../classes/Swift/CharacterReader/Utf8Reader.php | 0 .../lib/classes/Swift/CharacterReaderFactory.php | 0 .../SimpleCharacterReaderFactory.php | 0 .../lib/classes/Swift/CharacterStream.php | 0 .../Swift/CharacterStream/ArrayCharacterStream.php | 0 .../Swift/CharacterStream/NgCharacterStream.php | 0 .../lib/classes/Swift/ConfigurableSpool.php | 0 .../lib/classes/Swift/DependencyContainer.php | 0 .../lib/classes/Swift/DependencyException.php | 0 .../swiftmailer/lib/classes/Swift/EmbeddedFile.php | 0 .../swiftmailer/lib/classes/Swift/Encoder.php | 0 .../lib/classes/Swift/Encoder/Base64Encoder.php | 0 .../lib/classes/Swift/Encoder/QpEncoder.php | 0 .../lib/classes/Swift/Encoder/Rfc2231Encoder.php | 0 .../swiftmailer/lib/classes/Swift/Encoding.php | 0 .../lib/classes/Swift/Events/CommandEvent.php | 0 .../lib/classes/Swift/Events/CommandListener.php | 0 .../swiftmailer/lib/classes/Swift/Events/Event.php | 0 .../lib/classes/Swift/Events/EventDispatcher.php | 0 .../lib/classes/Swift/Events/EventListener.php | 0 .../lib/classes/Swift/Events/EventObject.php | 0 .../lib/classes/Swift/Events/ResponseEvent.php | 0 .../lib/classes/Swift/Events/ResponseListener.php | 0 .../lib/classes/Swift/Events/SendEvent.php | 0 .../lib/classes/Swift/Events/SendListener.php | 0 .../classes/Swift/Events/SimpleEventDispatcher.php | 0 .../classes/Swift/Events/TransportChangeEvent.php | 0 .../Swift/Events/TransportChangeListener.php | 0 .../Swift/Events/TransportExceptionEvent.php | 0 .../Swift/Events/TransportExceptionListener.php | 0 .../lib/classes/Swift/FailoverTransport.php | 0 .../swiftmailer/lib/classes/Swift/FileSpool.php | 0 .../swiftmailer/lib/classes/Swift/FileStream.php | 0 .../swiftmailer/lib/classes/Swift/Filterable.php | 0 .../swiftmailer/lib/classes/Swift/Image.php | 0 .../lib/classes/Swift/InputByteStream.php | 0 .../swiftmailer/lib/classes/Swift/IoException.php | 0 .../swiftmailer/lib/classes/Swift/KeyCache.php | 0 .../lib/classes/Swift/KeyCache/ArrayKeyCache.php | 0 .../lib/classes/Swift/KeyCache/DiskKeyCache.php | 0 .../classes/Swift/KeyCache/KeyCacheInputStream.php | 0 .../lib/classes/Swift/KeyCache/NullKeyCache.php | 0 .../Swift/KeyCache/SimpleKeyCacheInputStream.php | 0 .../lib/classes/Swift/LoadBalancedTransport.php | 0 .../swiftmailer/lib/classes/Swift/MailTransport.php | 0 .../swiftmailer/lib/classes/Swift/Mailer.php | 0 .../classes/Swift/Mailer/ArrayRecipientIterator.php | 0 .../lib/classes/Swift/Mailer/RecipientIterator.php | 0 .../swiftmailer/lib/classes/Swift/MemorySpool.php | 0 .../swiftmailer/lib/classes/Swift/Message.php | 0 .../lib/classes/Swift/Mime/Attachment.php | 0 .../lib/classes/Swift/Mime/CharsetObserver.php | 0 .../lib/classes/Swift/Mime/ContentEncoder.php | 0 .../Mime/ContentEncoder/Base64ContentEncoder.php | 0 .../Mime/ContentEncoder/NativeQpContentEncoder.php | 0 .../Mime/ContentEncoder/PlainContentEncoder.php | 0 .../Swift/Mime/ContentEncoder/QpContentEncoder.php | 0 .../Mime/ContentEncoder/QpContentEncoderProxy.php | 0 .../Swift/Mime/ContentEncoder/RawContentEncoder.php | 0 .../lib/classes/Swift/Mime/EmbeddedFile.php | 0 .../lib/classes/Swift/Mime/EncodingObserver.php | 0 .../swiftmailer/lib/classes/Swift/Mime/Grammar.php | 0 .../swiftmailer/lib/classes/Swift/Mime/Header.php | 0 .../lib/classes/Swift/Mime/HeaderEncoder.php | 0 .../Mime/HeaderEncoder/Base64HeaderEncoder.php | 0 .../Swift/Mime/HeaderEncoder/QpHeaderEncoder.php | 0 .../lib/classes/Swift/Mime/HeaderFactory.php | 0 .../lib/classes/Swift/Mime/HeaderSet.php | 0 .../classes/Swift/Mime/Headers/AbstractHeader.php | 0 .../lib/classes/Swift/Mime/Headers/DateHeader.php | 0 .../Swift/Mime/Headers/IdentificationHeader.php | 0 .../classes/Swift/Mime/Headers/MailboxHeader.php | 0 .../classes/Swift/Mime/Headers/OpenDKIMHeader.php | 0 .../Swift/Mime/Headers/ParameterizedHeader.php | 0 .../lib/classes/Swift/Mime/Headers/PathHeader.php | 0 .../Swift/Mime/Headers/UnstructuredHeader.php | 0 .../swiftmailer/lib/classes/Swift/Mime/Message.php | 0 .../lib/classes/Swift/Mime/MimeEntity.php | 0 .../swiftmailer/lib/classes/Swift/Mime/MimePart.php | 0 .../lib/classes/Swift/Mime/ParameterizedHeader.php | 0 .../lib/classes/Swift/Mime/SimpleHeaderFactory.php | 0 .../lib/classes/Swift/Mime/SimpleHeaderSet.php | 0 .../lib/classes/Swift/Mime/SimpleMessage.php | 0 .../lib/classes/Swift/Mime/SimpleMimeEntity.php | 0 .../swiftmailer/lib/classes/Swift/MimePart.php | 0 .../swiftmailer/lib/classes/Swift/NullTransport.php | 0 .../lib/classes/Swift/OutputByteStream.php | 0 .../lib/classes/Swift/Plugins/AntiFloodPlugin.php | 0 .../Swift/Plugins/BandwidthMonitorPlugin.php | 0 .../Swift/Plugins/Decorator/Replacements.php | 0 .../lib/classes/Swift/Plugins/DecoratorPlugin.php | 0 .../lib/classes/Swift/Plugins/ImpersonatePlugin.php | 0 .../lib/classes/Swift/Plugins/Logger.php | 0 .../lib/classes/Swift/Plugins/LoggerPlugin.php | 0 .../classes/Swift/Plugins/Loggers/ArrayLogger.php | 0 .../classes/Swift/Plugins/Loggers/EchoLogger.php | 0 .../lib/classes/Swift/Plugins/MessageLogger.php | 0 .../classes/Swift/Plugins/Pop/Pop3Connection.php | 0 .../lib/classes/Swift/Plugins/Pop/Pop3Exception.php | 0 .../classes/Swift/Plugins/PopBeforeSmtpPlugin.php | 0 .../lib/classes/Swift/Plugins/RedirectingPlugin.php | 0 .../lib/classes/Swift/Plugins/Reporter.php | 0 .../lib/classes/Swift/Plugins/ReporterPlugin.php | 0 .../classes/Swift/Plugins/Reporters/HitReporter.php | 0 .../Swift/Plugins/Reporters/HtmlReporter.php | 0 .../lib/classes/Swift/Plugins/Sleeper.php | 0 .../lib/classes/Swift/Plugins/ThrottlerPlugin.php | 0 .../swiftmailer/lib/classes/Swift/Plugins/Timer.php | 0 .../swiftmailer/lib/classes/Swift/Preferences.php | 0 .../lib/classes/Swift/ReplacementFilterFactory.php | 0 .../lib/classes/Swift/RfcComplianceException.php | 0 .../lib/classes/Swift/SendmailTransport.php | 0 .../swiftmailer/lib/classes/Swift/SignedMessage.php | 0 .../swiftmailer/lib/classes/Swift/Signer.php | 0 .../lib/classes/Swift/Signers/BodySigner.php | 0 .../lib/classes/Swift/Signers/DKIMSigner.php | 0 .../lib/classes/Swift/Signers/DomainKeySigner.php | 0 .../lib/classes/Swift/Signers/HeaderSigner.php | 0 .../lib/classes/Swift/Signers/OpenDKIMSigner.php | 0 .../lib/classes/Swift/Signers/SMimeSigner.php | 0 .../swiftmailer/lib/classes/Swift/SmtpTransport.php | 0 .../swiftmailer/lib/classes/Swift/Spool.php | 0 .../lib/classes/Swift/SpoolTransport.php | 0 .../swiftmailer/lib/classes/Swift/StreamFilter.php | 0 .../StreamFilters/ByteArrayReplacementFilter.php | 0 .../Swift/StreamFilters/StringReplacementFilter.php | 0 .../StringReplacementFilterFactory.php | 0 .../lib/classes/Swift/SwiftException.php | 0 .../swiftmailer/lib/classes/Swift/Transport.php | 0 .../Swift/Transport/AbstractSmtpTransport.php | 0 .../Transport/Esmtp/Auth/CramMd5Authenticator.php | 0 .../Transport/Esmtp/Auth/LoginAuthenticator.php | 0 .../Transport/Esmtp/Auth/NTLMAuthenticator.php | 0 .../Transport/Esmtp/Auth/PlainAuthenticator.php | 0 .../Transport/Esmtp/Auth/XOAuth2Authenticator.php | 0 .../classes/Swift/Transport/Esmtp/AuthHandler.php | 0 .../classes/Swift/Transport/Esmtp/Authenticator.php | 0 .../lib/classes/Swift/Transport/EsmtpHandler.php | 0 .../lib/classes/Swift/Transport/EsmtpTransport.php | 0 .../classes/Swift/Transport/FailoverTransport.php | 0 .../lib/classes/Swift/Transport/IoBuffer.php | 0 .../Swift/Transport/LoadBalancedTransport.php | 0 .../lib/classes/Swift/Transport/MailInvoker.php | 0 .../lib/classes/Swift/Transport/MailTransport.php | 0 .../lib/classes/Swift/Transport/NullTransport.php | 0 .../classes/Swift/Transport/SendmailTransport.php | 0 .../classes/Swift/Transport/SimpleMailInvoker.php | 0 .../lib/classes/Swift/Transport/SmtpAgent.php | 0 .../lib/classes/Swift/Transport/SpoolTransport.php | 0 .../lib/classes/Swift/Transport/StreamBuffer.php | 0 .../lib/classes/Swift/TransportException.php | 0 .../swiftmailer/lib/classes/Swift/Validate.php | 0 .../swiftmailer/lib/dependency_maps/cache_deps.php | 0 .../lib/dependency_maps/message_deps.php | 0 .../swiftmailer/lib/dependency_maps/mime_deps.php | 0 .../lib/dependency_maps/transport_deps.php | 0 .../includes/swiftmailer/lib/mime_types.php | 0 .../includes/swiftmailer/lib/preferences.php | 0 .../includes/swiftmailer/lib/swift_init.php | 0 .../includes/swiftmailer/lib/swift_required.php | 0 .../swiftmailer/lib/swift_required_pear.php | 0 .../lib/swiftmailer_generate_mimes_config.php | 0 {htdocs => public}/includes/tcpdi/fpdf_tpl.php | 0 {htdocs => public}/includes/tcpdi/tcpdi.php | 0 {htdocs => public}/includes/tcpdi/tcpdi_parser.php | 0 .../includes/tecnickcom/tcpdf/CHANGELOG.TXT | 0 .../includes/tecnickcom/tcpdf/LICENSE.TXT | 0 .../includes/tecnickcom/tcpdf/README.TXT | 0 .../includes/tecnickcom/tcpdf/composer.json | 0 .../tecnickcom/tcpdf/config/tcpdf_config.php | 0 .../tecnickcom/tcpdf/fonts/ae_fonts_2.0/COPYING | 0 .../tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog | 0 .../tcpdf/fonts/ae_fonts_2.0/ChangeLog.9745.BAK | 0 .../tecnickcom/tcpdf/fonts/ae_fonts_2.0/README | 0 .../tecnickcom/tcpdf/fonts/aealarabiya.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/aealarabiya.php | 0 .../includes/tecnickcom/tcpdf/fonts/aealarabiya.z | Bin .../includes/tecnickcom/tcpdf/fonts/aefurat.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/aefurat.php | 0 .../includes/tecnickcom/tcpdf/fonts/aefurat.z | Bin .../includes/tecnickcom/tcpdf/fonts/cid0cs.php | 0 .../includes/tecnickcom/tcpdf/fonts/cid0ct.php | 0 .../includes/tecnickcom/tcpdf/fonts/cid0jp.php | 0 .../includes/tecnickcom/tcpdf/fonts/cid0kr.php | 0 .../includes/tecnickcom/tcpdf/fonts/courier.php | 0 .../includes/tecnickcom/tcpdf/fonts/courierb.php | 0 .../includes/tecnickcom/tcpdf/fonts/courierbi.php | 0 .../includes/tecnickcom/tcpdf/fonts/courieri.php | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.33/AUTHORS | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.33/BUGS | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.33/LICENSE | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.33/NEWS | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.33/README | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.33/langcover.txt | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.33/status.txt | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.33/unicover.txt | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.34/AUTHORS | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.34/BUGS | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.34/LICENSE | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.34/NEWS | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.34/README | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.34/langcover.txt | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.34/status.txt | 0 .../tcpdf/fonts/dejavu-fonts-ttf-2.34/unicover.txt | 0 .../tecnickcom/tcpdf/fonts/dejavusans.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/dejavusans.php | 0 .../includes/tecnickcom/tcpdf/fonts/dejavusans.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansb.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/dejavusansb.php | 0 .../includes/tecnickcom/tcpdf/fonts/dejavusansb.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansbi.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansbi.php | 0 .../includes/tecnickcom/tcpdf/fonts/dejavusansbi.z | Bin .../tcpdf/fonts/dejavusanscondensed.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusanscondensed.php | 0 .../tecnickcom/tcpdf/fonts/dejavusanscondensed.z | Bin .../tcpdf/fonts/dejavusanscondensedb.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusanscondensedb.php | 0 .../tecnickcom/tcpdf/fonts/dejavusanscondensedb.z | Bin .../tcpdf/fonts/dejavusanscondensedbi.ctg.z | Bin .../tcpdf/fonts/dejavusanscondensedbi.php | 0 .../tecnickcom/tcpdf/fonts/dejavusanscondensedbi.z | Bin .../tcpdf/fonts/dejavusanscondensedi.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusanscondensedi.php | 0 .../tecnickcom/tcpdf/fonts/dejavusanscondensedi.z | Bin .../tcpdf/fonts/dejavusansextralight.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansextralight.php | 0 .../tecnickcom/tcpdf/fonts/dejavusansextralight.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansi.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/dejavusansi.php | 0 .../includes/tecnickcom/tcpdf/fonts/dejavusansi.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansmono.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansmono.php | 0 .../tecnickcom/tcpdf/fonts/dejavusansmono.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansmonob.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansmonob.php | 0 .../tecnickcom/tcpdf/fonts/dejavusansmonob.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansmonobi.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansmonobi.php | 0 .../tecnickcom/tcpdf/fonts/dejavusansmonobi.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansmonoi.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavusansmonoi.php | 0 .../tecnickcom/tcpdf/fonts/dejavusansmonoi.z | Bin .../tecnickcom/tcpdf/fonts/dejavuserif.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/dejavuserif.php | 0 .../includes/tecnickcom/tcpdf/fonts/dejavuserif.z | Bin .../tecnickcom/tcpdf/fonts/dejavuserifb.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavuserifb.php | 0 .../includes/tecnickcom/tcpdf/fonts/dejavuserifb.z | Bin .../tecnickcom/tcpdf/fonts/dejavuserifbi.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavuserifbi.php | 0 .../includes/tecnickcom/tcpdf/fonts/dejavuserifbi.z | Bin .../tcpdf/fonts/dejavuserifcondensed.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavuserifcondensed.php | 0 .../tecnickcom/tcpdf/fonts/dejavuserifcondensed.z | Bin .../tcpdf/fonts/dejavuserifcondensedb.ctg.z | Bin .../tcpdf/fonts/dejavuserifcondensedb.php | 0 .../tecnickcom/tcpdf/fonts/dejavuserifcondensedb.z | Bin .../tcpdf/fonts/dejavuserifcondensedbi.ctg.z | Bin .../tcpdf/fonts/dejavuserifcondensedbi.php | 0 .../tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.z | Bin .../tcpdf/fonts/dejavuserifcondensedi.ctg.z | Bin .../tcpdf/fonts/dejavuserifcondensedi.php | 0 .../tecnickcom/tcpdf/fonts/dejavuserifcondensedi.z | Bin .../tecnickcom/tcpdf/fonts/dejavuserifi.ctg.z | Bin .../tecnickcom/tcpdf/fonts/dejavuserifi.php | 0 .../includes/tecnickcom/tcpdf/fonts/dejavuserifi.z | Bin .../tcpdf/fonts/freefont-20100919/AUTHORS | 0 .../tcpdf/fonts/freefont-20100919/COPYING | 0 .../tcpdf/fonts/freefont-20100919/CREDITS | 0 .../tcpdf/fonts/freefont-20100919/ChangeLog | 0 .../tcpdf/fonts/freefont-20100919/INSTALL | 0 .../tecnickcom/tcpdf/fonts/freefont-20100919/README | 0 .../tcpdf/fonts/freefont-20120503/AUTHORS | 0 .../tcpdf/fonts/freefont-20120503/COPYING | 0 .../tcpdf/fonts/freefont-20120503/CREDITS | 0 .../tcpdf/fonts/freefont-20120503/ChangeLog | 0 .../fonts/freefont-20120503/ChangeLog.10070.BAK | 0 .../tcpdf/fonts/freefont-20120503/INSTALL | 0 .../tecnickcom/tcpdf/fonts/freefont-20120503/README | 0 .../tcpdf/fonts/freefont-20120503/TROUBLESHOOTING | 0 .../tecnickcom/tcpdf/fonts/freefont-20120503/USAGE | 0 .../includes/tecnickcom/tcpdf/fonts/freemono.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freemono.php | 0 .../includes/tecnickcom/tcpdf/fonts/freemono.z | Bin .../includes/tecnickcom/tcpdf/fonts/freemonob.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freemonob.php | 0 .../includes/tecnickcom/tcpdf/fonts/freemonob.z | Bin .../tecnickcom/tcpdf/fonts/freemonobi.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freemonobi.php | 0 .../includes/tecnickcom/tcpdf/fonts/freemonobi.z | Bin .../includes/tecnickcom/tcpdf/fonts/freemonoi.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freemonoi.php | 0 .../includes/tecnickcom/tcpdf/fonts/freemonoi.z | Bin .../includes/tecnickcom/tcpdf/fonts/freesans.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freesans.php | 0 .../includes/tecnickcom/tcpdf/fonts/freesans.z | Bin .../includes/tecnickcom/tcpdf/fonts/freesansb.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freesansb.php | 0 .../includes/tecnickcom/tcpdf/fonts/freesansb.z | Bin .../tecnickcom/tcpdf/fonts/freesansbi.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freesansbi.php | 0 .../includes/tecnickcom/tcpdf/fonts/freesansbi.z | Bin .../includes/tecnickcom/tcpdf/fonts/freesansi.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freesansi.php | 0 .../includes/tecnickcom/tcpdf/fonts/freesansi.z | Bin .../includes/tecnickcom/tcpdf/fonts/freeserif.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freeserif.php | 0 .../includes/tecnickcom/tcpdf/fonts/freeserif.z | Bin .../tecnickcom/tcpdf/fonts/freeserifb.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freeserifb.php | 0 .../includes/tecnickcom/tcpdf/fonts/freeserifb.z | Bin .../tecnickcom/tcpdf/fonts/freeserifbi.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freeserifbi.php | 0 .../includes/tecnickcom/tcpdf/fonts/freeserifbi.z | Bin .../tecnickcom/tcpdf/fonts/freeserifi.ctg.z | Bin .../includes/tecnickcom/tcpdf/fonts/freeserifi.php | 0 .../includes/tecnickcom/tcpdf/fonts/freeserifi.z | Bin .../includes/tecnickcom/tcpdf/fonts/helvetica.php | 0 .../includes/tecnickcom/tcpdf/fonts/helveticab.php | 0 .../includes/tecnickcom/tcpdf/fonts/helveticabi.php | 0 .../includes/tecnickcom/tcpdf/fonts/helveticai.php | 0 .../tecnickcom/tcpdf/fonts/hysmyeongjostdmedium.php | 0 .../tecnickcom/tcpdf/fonts/kozgopromedium.php | 0 .../tecnickcom/tcpdf/fonts/kozminproregular.php | 0 .../tecnickcom/tcpdf/fonts/msungstdlight.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfacourier.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfacourier.z | Bin .../tecnickcom/tcpdf/fonts/pdfacourierb.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfacourierb.z | Bin .../tecnickcom/tcpdf/fonts/pdfacourierbi.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfacourierbi.z | Bin .../tecnickcom/tcpdf/fonts/pdfacourieri.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfacourieri.z | Bin .../tecnickcom/tcpdf/fonts/pdfahelvetica.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfahelvetica.z | Bin .../tecnickcom/tcpdf/fonts/pdfahelveticab.php | 0 .../tecnickcom/tcpdf/fonts/pdfahelveticab.z | Bin .../tecnickcom/tcpdf/fonts/pdfahelveticabi.php | 0 .../tecnickcom/tcpdf/fonts/pdfahelveticabi.z | Bin .../tecnickcom/tcpdf/fonts/pdfahelveticai.php | 0 .../tecnickcom/tcpdf/fonts/pdfahelveticai.z | Bin .../includes/tecnickcom/tcpdf/fonts/pdfasymbol.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfasymbol.z | Bin .../includes/tecnickcom/tcpdf/fonts/pdfatimes.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfatimes.z | Bin .../includes/tecnickcom/tcpdf/fonts/pdfatimesb.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfatimesb.z | Bin .../includes/tecnickcom/tcpdf/fonts/pdfatimesbi.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfatimesbi.z | Bin .../includes/tecnickcom/tcpdf/fonts/pdfatimesi.php | 0 .../includes/tecnickcom/tcpdf/fonts/pdfatimesi.z | Bin .../tecnickcom/tcpdf/fonts/pdfazapfdingbats.php | 0 .../tecnickcom/tcpdf/fonts/pdfazapfdingbats.z | Bin .../tecnickcom/tcpdf/fonts/stsongstdlight.php | 0 .../includes/tecnickcom/tcpdf/fonts/symbol.php | 0 .../includes/tecnickcom/tcpdf/fonts/times.php | 0 .../includes/tecnickcom/tcpdf/fonts/timesb.php | 0 .../includes/tecnickcom/tcpdf/fonts/timesbi.php | 0 .../includes/tecnickcom/tcpdf/fonts/timesi.php | 0 .../tecnickcom/tcpdf/fonts/uni2cid_ac15.php | 0 .../tecnickcom/tcpdf/fonts/uni2cid_ag15.php | 0 .../tecnickcom/tcpdf/fonts/uni2cid_aj16.php | 0 .../tecnickcom/tcpdf/fonts/uni2cid_ak12.php | 0 .../tecnickcom/tcpdf/fonts/zapfdingbats.php | 0 .../tcpdf/include/barcodes/datamatrix.php | 0 .../tecnickcom/tcpdf/include/barcodes/pdf417.php | 0 .../tecnickcom/tcpdf/include/barcodes/qrcode.php | 0 .../includes/tecnickcom/tcpdf/include/sRGB.icc | Bin .../tecnickcom/tcpdf/include/tcpdf_colors.php | 0 .../tecnickcom/tcpdf/include/tcpdf_filters.php | 0 .../tecnickcom/tcpdf/include/tcpdf_font_data.php | 0 .../tecnickcom/tcpdf/include/tcpdf_fonts.php | 0 .../tecnickcom/tcpdf/include/tcpdf_images.php | 0 .../tecnickcom/tcpdf/include/tcpdf_static.php | 0 .../includes/tecnickcom/tcpdf/tcpdf.php | 0 .../includes/tecnickcom/tcpdf/tcpdf_autoconfig.php | 0 .../includes/tecnickcom/tcpdf/tcpdf_barcodes_1d.php | 0 .../includes/tecnickcom/tcpdf/tcpdf_barcodes_2d.php | 0 .../includes/tecnickcom/tcpdf/tcpdf_import.php | 0 .../includes/tecnickcom/tcpdf/tcpdf_parser.php | 0 {htdocs => public}/index.php | 0 {htdocs => public}/install/.gitignore | 0 {htdocs => public}/install/check.php | 0 {htdocs => public}/install/default.css | 0 {htdocs => public}/install/doctemplates/README | 0 {htdocs => public}/install/doctemplates/index.html | 0 .../install/doctemplates/invoices/index.html | 0 .../doctemplates/invoices/template_invoice.odt | Bin .../install/doctemplates/orders/index.html | 0 .../install/doctemplates/orders/template_order.odt | Bin .../install/doctemplates/projects/index.html | 0 .../doctemplates/projects/template_project.odt | Bin .../install/doctemplates/proposals/index.html | 0 .../doctemplates/proposals/template_proposal.odt | Bin .../install/doctemplates/shipment/index.html | 0 .../doctemplates/shipment/template_shipment.odt | Bin .../doctemplates/supplier_proposal/index.html | 0 .../template_supplier_proposal.odt | Bin .../install/doctemplates/tasks/index.html | 0 .../doctemplates/tasks/template_task_summary.odt | Bin .../install/doctemplates/thirdparties/index.html | 0 .../thirdparties/template_thirdparty.ods | Bin .../thirdparties/template_thirdparty.odt | Bin {htdocs => public}/install/fileconf.php | 0 {htdocs => public}/install/inc.php | 0 {htdocs => public}/install/index.php | 0 .../install/install.forced.sample.php | 0 {htdocs => public}/install/lib/index.html | 0 {htdocs => public}/install/lib/repair.lib.php | 0 {htdocs => public}/install/mssql/README | 0 .../install/mssql/functions/index.html | 0 {htdocs => public}/install/mssql/index.html | 0 {htdocs => public}/install/mysql/README | 0 {htdocs => public}/install/mysql/data/index.html | 0 .../install/mysql/data/llx_00_c_country.sql | 0 .../install/mysql/data/llx_10_c_regions.sql | 0 .../install/mysql/data/llx_20_c_departements.sql | 0 .../install/mysql/data/llx_accounting.sql | 0 .../install/mysql/data/llx_accounting_category.sql | 0 .../install/mysql/data/llx_c_action_trigger.sql | 0 .../install/mysql/data/llx_c_actioncomm.sql | 0 .../install/mysql/data/llx_c_availability.sql | 0 .../install/mysql/data/llx_c_chargesociales.sql | 0 .../install/mysql/data/llx_c_civilite.sql | 0 .../install/mysql/data/llx_c_currencies.sql | 0 .../install/mysql/data/llx_c_ecotaxe.sql | 0 .../install/mysql/data/llx_c_effectif.sql | 0 .../install/mysql/data/llx_c_format_cards.sql | 0 .../install/mysql/data/llx_c_forme_juridique.sql | 0 .../install/mysql/data/llx_c_holiday_type.sql | 0 .../install/mysql/data/llx_c_hrm_department.sql | 0 .../install/mysql/data/llx_c_hrm_function.sql | 0 .../install/mysql/data/llx_c_incoterms.sql | 0 .../install/mysql/data/llx_c_input_method.sql | 0 .../install/mysql/data/llx_c_input_reason.sql | 0 .../install/mysql/data/llx_c_lead_status.sql | 0 .../install/mysql/data/llx_c_paiement.sql | 0 .../install/mysql/data/llx_c_paper_format.sql | 0 .../install/mysql/data/llx_c_payment_term.sql | 0 .../install/mysql/data/llx_c_propalst.sql | 0 .../install/mysql/data/llx_c_prospectlevel.sql | 0 .../install/mysql/data/llx_c_revenuestamp.sql | 0 .../install/mysql/data/llx_c_shipment_mode.sql | 0 .../install/mysql/data/llx_c_stcomm.sql | 0 {htdocs => public}/install/mysql/data/llx_c_tva.sql | 0 .../install/mysql/data/llx_c_type_contact.sql | 0 .../install/mysql/data/llx_c_type_fees.sql | 0 .../install/mysql/data/llx_c_type_resource.sql | 0 .../install/mysql/data/llx_c_typent.sql | 0 .../install/mysql/data/llx_c_units.sql | 0 {htdocs => public}/install/mysql/data/llx_const.sql | 0 .../install/mysql/data/llx_holiday_config.sql | 0 .../install/mysql/functions/functions.sql | 0 .../install/mysql/functions/index.html | 0 {htdocs => public}/install/mysql/index.html | 0 .../install/mysql/migration/3.0.0-3.1.0.sql | 0 .../install/mysql/migration/3.1.0-3.2.0.sql | 0 .../install/mysql/migration/3.2.0-3.3.0.sql | 0 .../install/mysql/migration/3.3.0-3.4.0.sql | 0 .../install/mysql/migration/3.4.0-3.5.0.sql | 0 .../install/mysql/migration/3.5.0-3.6.0.sql | 0 .../install/mysql/migration/3.6.0-3.7.0.sql | 0 .../install/mysql/migration/3.7.0-3.8.0.sql | 0 .../install/mysql/migration/3.8.0-3.9.0.sql | 0 .../install/mysql/migration/3.9.0-4.0.0.sql | 0 .../install/mysql/migration/4.0.0-5.0.0.sql | 0 .../install/mysql/migration/index.html | 0 .../install/mysql/migration/repair.sql | 0 {htdocs => public}/install/mysql/tables/index.html | 0 .../mysql/tables/llx_accounting_account.key.sql | 0 .../install/mysql/tables/llx_accounting_account.sql | 0 .../mysql/tables/llx_accounting_bookkeeping.key.sql | 0 .../mysql/tables/llx_accounting_bookkeeping.sql | 0 .../mysql/tables/llx_accounting_fiscalyear.sql | 0 .../mysql/tables/llx_accounting_journal.key.sql | 0 .../install/mysql/tables/llx_accounting_journal.sql | 0 .../mysql/tables/llx_accounting_system.key.sql | 0 .../install/mysql/tables/llx_accounting_system.sql | 0 .../install/mysql/tables/llx_actioncomm.key.sql | 0 .../install/mysql/tables/llx_actioncomm.sql | 0 .../mysql/tables/llx_actioncomm_extrafields.key.sql | 0 .../mysql/tables/llx_actioncomm_extrafields.sql | 0 .../mysql/tables/llx_actioncomm_resources.key.sql | 0 .../mysql/tables/llx_actioncomm_resources.sql | 0 .../install/mysql/tables/llx_adherent.key.sql | 0 .../install/mysql/tables/llx_adherent.sql | 0 .../mysql/tables/llx_adherent_extrafields.key.sql | 0 .../mysql/tables/llx_adherent_extrafields.sql | 0 .../install/mysql/tables/llx_adherent_type.key.sql | 0 .../install/mysql/tables/llx_adherent_type.sql | 0 .../tables/llx_adherent_type_extrafields.key.sql | 0 .../mysql/tables/llx_adherent_type_extrafields.sql | 0 .../mysql/tables/llx_advtargetemailing.key.sql | 0 .../install/mysql/tables/llx_advtargetemailing.sql | 0 .../install/mysql/tables/llx_bank.key.sql | 0 .../install/mysql/tables/llx_bank.sql | 0 .../install/mysql/tables/llx_bank_account.key.sql | 0 .../install/mysql/tables/llx_bank_account.sql | 0 .../tables/llx_bank_account_extrafields.key.sql | 0 .../mysql/tables/llx_bank_account_extrafields.sql | 0 .../install/mysql/tables/llx_bank_categ.sql | 0 .../install/mysql/tables/llx_bank_class.key.sql | 0 .../install/mysql/tables/llx_bank_class.sql | 0 .../install/mysql/tables/llx_bank_url.key.sql | 0 .../install/mysql/tables/llx_bank_url.sql | 0 .../install/mysql/tables/llx_bookmark.key.sql | 0 .../install/mysql/tables/llx_bookmark.sql | 0 .../mysql/tables/llx_bordereau_cheque.key.sql | 0 .../install/mysql/tables/llx_bordereau_cheque.sql | 0 .../install/mysql/tables/llx_boxes.key.sql | 0 .../install/mysql/tables/llx_boxes.sql | 0 .../install/mysql/tables/llx_boxes_def.key.sql | 0 .../install/mysql/tables/llx_boxes_def.sql | 0 .../install/mysql/tables/llx_budget.sql | 0 .../install/mysql/tables/llx_budget_lines.key.sql | 0 .../install/mysql/tables/llx_budget_lines.sql | 0 .../mysql/tables/llx_c_accounting_category.key.sql | 0 .../mysql/tables/llx_c_accounting_category.sql | 0 .../mysql/tables/llx_c_action_trigger.key.sql | 0 .../install/mysql/tables/llx_c_action_trigger.sql | 0 .../install/mysql/tables/llx_c_actioncomm.key.sql | 0 .../install/mysql/tables/llx_c_actioncomm.sql | 0 .../install/mysql/tables/llx_c_availability.key.sql | 0 .../install/mysql/tables/llx_c_availability.sql | 0 .../install/mysql/tables/llx_c_barcode_type.key.sql | 0 .../install/mysql/tables/llx_c_barcode_type.sql | 0 .../install/mysql/tables/llx_c_chargesociales.sql | 0 .../install/mysql/tables/llx_c_civility.key.sql | 0 .../install/mysql/tables/llx_c_civility.sql | 0 .../install/mysql/tables/llx_c_country.key.sql | 0 .../install/mysql/tables/llx_c_country.sql | 0 .../install/mysql/tables/llx_c_currencies.key.sql | 0 .../install/mysql/tables/llx_c_currencies.sql | 0 .../install/mysql/tables/llx_c_departements.key.sql | 0 .../install/mysql/tables/llx_c_departements.sql | 0 .../install/mysql/tables/llx_c_ecotaxe.key.sql | 0 .../install/mysql/tables/llx_c_ecotaxe.sql | 0 .../install/mysql/tables/llx_c_effectif.key.sql | 0 .../install/mysql/tables/llx_c_effectif.sql | 0 .../mysql/tables/llx_c_email_templates.key.sql | 0 .../install/mysql/tables/llx_c_email_templates.sql | 0 .../install/mysql/tables/llx_c_field_list.sql | 0 .../install/mysql/tables/llx_c_format_cards.sql | 0 .../mysql/tables/llx_c_forme_juridique.key.sql | 0 .../install/mysql/tables/llx_c_forme_juridique.sql | 0 .../mysql/tables/llx_c_holiday_types.key.sql | 0 .../install/mysql/tables/llx_c_holiday_types.sql | 0 .../install/mysql/tables/llx_c_hrm_department.sql | 0 .../install/mysql/tables/llx_c_hrm_function.sql | 0 .../install/mysql/tables/llx_c_incoterms.key.sql | 0 .../install/mysql/tables/llx_c_incoterms.sql | 0 .../install/mysql/tables/llx_c_input_method.key.sql | 0 .../install/mysql/tables/llx_c_input_method.sql | 0 .../install/mysql/tables/llx_c_input_reason.key.sql | 0 .../install/mysql/tables/llx_c_input_reason.sql | 0 .../install/mysql/tables/llx_c_lead_status.key.sql | 0 .../install/mysql/tables/llx_c_lead_status.sql | 0 .../install/mysql/tables/llx_c_paiement.key.sql | 0 .../install/mysql/tables/llx_c_paiement.sql | 0 .../install/mysql/tables/llx_c_paper_format.sql | 0 .../install/mysql/tables/llx_c_payment_term.sql | 0 .../install/mysql/tables/llx_c_price_expression.sql | 0 .../mysql/tables/llx_c_price_global_variable.sql | 0 .../tables/llx_c_price_global_variable_updater.sql | 0 .../install/mysql/tables/llx_c_propalst.key.sql | 0 .../install/mysql/tables/llx_c_propalst.sql | 0 .../install/mysql/tables/llx_c_prospectlevel.sql | 0 .../install/mysql/tables/llx_c_regions.key.sql | 0 .../install/mysql/tables/llx_c_regions.sql | 0 .../install/mysql/tables/llx_c_revenuestamp.sql | 0 .../mysql/tables/llx_c_shipment_mode.key.sql | 0 .../install/mysql/tables/llx_c_shipment_mode.sql | 0 .../install/mysql/tables/llx_c_stcomm.key.sql | 0 .../install/mysql/tables/llx_c_stcomm.sql | 0 .../install/mysql/tables/llx_c_tva.key.sql | 0 .../install/mysql/tables/llx_c_tva.sql | 0 .../install/mysql/tables/llx_c_type_contact.key.sql | 0 .../install/mysql/tables/llx_c_type_contact.sql | 0 .../install/mysql/tables/llx_c_type_fees.key.sql | 0 .../install/mysql/tables/llx_c_type_fees.sql | 0 .../mysql/tables/llx_c_type_resource.key.sql | 0 .../install/mysql/tables/llx_c_type_resource.sql | 0 .../install/mysql/tables/llx_c_typent.key.sql | 0 .../install/mysql/tables/llx_c_typent.sql | 0 .../install/mysql/tables/llx_c_units.key.sql | 0 .../install/mysql/tables/llx_c_units.sql | 0 .../install/mysql/tables/llx_c_ziptown.key.sql | 0 .../install/mysql/tables/llx_c_ziptown.sql | 0 .../install/mysql/tables/llx_categorie.key.sql | 0 .../install/mysql/tables/llx_categorie.sql | 0 .../mysql/tables/llx_categorie_account.key.sql | 0 .../install/mysql/tables/llx_categorie_account.sql | 0 .../mysql/tables/llx_categorie_contact.key.sql | 0 .../install/mysql/tables/llx_categorie_contact.sql | 0 .../mysql/tables/llx_categorie_fournisseur.key.sql | 0 .../mysql/tables/llx_categorie_fournisseur.sql | 0 .../install/mysql/tables/llx_categorie_lang.key.sql | 0 .../install/mysql/tables/llx_categorie_lang.sql | 0 .../mysql/tables/llx_categorie_member.key.sql | 0 .../install/mysql/tables/llx_categorie_member.sql | 0 .../mysql/tables/llx_categorie_product.key.sql | 0 .../install/mysql/tables/llx_categorie_product.sql | 0 .../mysql/tables/llx_categorie_project.key.sql | 0 .../install/mysql/tables/llx_categorie_project.sql | 0 .../mysql/tables/llx_categorie_societe.key.sql | 0 .../install/mysql/tables/llx_categorie_societe.sql | 0 .../install/mysql/tables/llx_categorie_user.key.sql | 0 .../install/mysql/tables/llx_categorie_user.sql | 0 .../mysql/tables/llx_categories_extrafields.key.sql | 0 .../mysql/tables/llx_categories_extrafields.sql | 0 .../install/mysql/tables/llx_chargesociales.sql | 0 .../install/mysql/tables/llx_commande.key.sql | 0 .../install/mysql/tables/llx_commande.sql | 0 .../mysql/tables/llx_commande_extrafields.key.sql | 0 .../mysql/tables/llx_commande_extrafields.sql | 0 .../mysql/tables/llx_commande_fournisseur.key.sql | 0 .../mysql/tables/llx_commande_fournisseur.sql | 0 .../llx_commande_fournisseur_dispatch.key.sql | 0 .../tables/llx_commande_fournisseur_dispatch.sql | 0 .../llx_commande_fournisseur_extrafields.key.sql | 0 .../tables/llx_commande_fournisseur_extrafields.sql | 0 .../mysql/tables/llx_commande_fournisseur_log.sql | 0 .../tables/llx_commande_fournisseurdet.key.sql | 0 .../mysql/tables/llx_commande_fournisseurdet.sql | 0 .../llx_commande_fournisseurdet_extrafields.key.sql | 0 .../llx_commande_fournisseurdet_extrafields.sql | 0 .../install/mysql/tables/llx_commandedet.key.sql | 0 .../install/mysql/tables/llx_commandedet.sql | 0 .../tables/llx_commandedet_extrafields.key.sql | 0 .../mysql/tables/llx_commandedet_extrafields.sql | 0 .../install/mysql/tables/llx_const.key.sql | 0 .../install/mysql/tables/llx_const.sql | 0 .../install/mysql/tables/llx_contrat.key.sql | 0 .../install/mysql/tables/llx_contrat.sql | 0 .../mysql/tables/llx_contrat_extrafields.key.sql | 0 .../mysql/tables/llx_contrat_extrafields.sql | 0 .../install/mysql/tables/llx_contratdet.key.sql | 0 .../install/mysql/tables/llx_contratdet.sql | 0 .../mysql/tables/llx_contratdet_extrafields.key.sql | 0 .../mysql/tables/llx_contratdet_extrafields.sql | 0 .../install/mysql/tables/llx_contratdet_log.key.sql | 0 .../install/mysql/tables/llx_contratdet_log.sql | 0 .../install/mysql/tables/llx_cronjob.key.sql | 0 .../install/mysql/tables/llx_cronjob.sql | 0 .../install/mysql/tables/llx_deplacement.sql | 0 .../install/mysql/tables/llx_document_model.key.sql | 0 .../install/mysql/tables/llx_document_model.sql | 0 {htdocs => public}/install/mysql/tables/llx_don.sql | 0 .../mysql/tables/llx_don_extrafields.key.sql | 0 .../install/mysql/tables/llx_don_extrafields.sql | 0 .../mysql/tables/llx_ecm_directories.key.sql | 0 .../install/mysql/tables/llx_ecm_directories.sql | 0 .../install/mysql/tables/llx_ecm_files.key.sql | 0 .../install/mysql/tables/llx_ecm_files.sql | 0 .../mysql/tables/llx_element_contact.key.sql | 0 .../install/mysql/tables/llx_element_contact.sql | 0 .../mysql/tables/llx_element_element.key.sql | 0 .../install/mysql/tables/llx_element_element.sql | 0 .../mysql/tables/llx_element_resources.key.sql | 0 .../install/mysql/tables/llx_element_resources.sql | 0 .../install/mysql/tables/llx_element_tag.key.sql | 0 .../install/mysql/tables/llx_element_tag.sql | 0 .../install/mysql/tables/llx_entrepot.key.sql | 0 .../install/mysql/tables/llx_entrepot.sql | 0 .../install/mysql/tables/llx_establishment.sql | 0 .../install/mysql/tables/llx_event_element.sql | 0 .../install/mysql/tables/llx_events.key.sql | 0 .../install/mysql/tables/llx_events.sql | 0 .../install/mysql/tables/llx_expedition.key.sql | 0 .../install/mysql/tables/llx_expedition.sql | 0 .../mysql/tables/llx_expedition_extrafields.key.sql | 0 .../mysql/tables/llx_expedition_extrafields.sql | 0 .../install/mysql/tables/llx_expeditiondet.key.sql | 0 .../install/mysql/tables/llx_expeditiondet.sql | 0 .../mysql/tables/llx_expeditiondet_batch.key.sql | 0 .../mysql/tables/llx_expeditiondet_batch.sql | 0 .../tables/llx_expeditiondet_extrafields.key.sql | 0 .../mysql/tables/llx_expeditiondet_extrafields.sql | 0 .../install/mysql/tables/llx_expensereport.key.sql | 0 .../install/mysql/tables/llx_expensereport.sql | 0 .../install/mysql/tables/llx_expensereport_det.sql | 0 .../tables/llx_expensereport_extrafields.key.sql | 0 .../mysql/tables/llx_expensereport_extrafields.sql | 0 .../install/mysql/tables/llx_export_compta.sql | 0 .../install/mysql/tables/llx_export_model.key.sql | 0 .../install/mysql/tables/llx_export_model.sql | 0 .../install/mysql/tables/llx_extrafields.key.sql | 0 .../install/mysql/tables/llx_extrafields.sql | 0 .../install/mysql/tables/llx_facture.key.sql | 0 .../install/mysql/tables/llx_facture.sql | 0 .../mysql/tables/llx_facture_extrafields.key.sql | 0 .../mysql/tables/llx_facture_extrafields.sql | 0 .../install/mysql/tables/llx_facture_fourn.key.sql | 0 .../install/mysql/tables/llx_facture_fourn.sql | 0 .../mysql/tables/llx_facture_fourn_det.key.sql | 0 .../install/mysql/tables/llx_facture_fourn_det.sql | 0 .../llx_facture_fourn_det_extrafields.key.sql | 0 .../tables/llx_facture_fourn_det_extrafields.sql | 0 .../tables/llx_facture_fourn_extrafields.key.sql | 0 .../mysql/tables/llx_facture_fourn_extrafields.sql | 0 .../install/mysql/tables/llx_facture_rec.key.sql | 0 .../install/mysql/tables/llx_facture_rec.sql | 0 .../install/mysql/tables/llx_facturedet.key.sql | 0 .../install/mysql/tables/llx_facturedet.sql | 0 .../mysql/tables/llx_facturedet_extrafields.key.sql | 0 .../mysql/tables/llx_facturedet_extrafields.sql | 0 .../install/mysql/tables/llx_facturedet_rec.key.sql | 0 .../install/mysql/tables/llx_facturedet_rec.sql | 0 .../install/mysql/tables/llx_fichinter.key.sql | 0 .../install/mysql/tables/llx_fichinter.sql | 0 .../mysql/tables/llx_fichinter_extrafields.key.sql | 0 .../mysql/tables/llx_fichinter_extrafields.sql | 0 .../install/mysql/tables/llx_fichinterdet.key.sql | 0 .../install/mysql/tables/llx_fichinterdet.sql | 0 .../tables/llx_fichinterdet_extrafields.key.sql | 0 .../mysql/tables/llx_fichinterdet_extrafields.sql | 0 .../install/mysql/tables/llx_holiday.key.sql | 0 .../install/mysql/tables/llx_holiday.sql | 0 .../install/mysql/tables/llx_holiday_config.sql | 0 .../install/mysql/tables/llx_holiday_logs.sql | 0 .../install/mysql/tables/llx_holiday_users.sql | 0 .../install/mysql/tables/llx_import_model.key.sql | 0 .../install/mysql/tables/llx_import_model.sql | 0 .../install/mysql/tables/llx_links.key.sql | 0 .../install/mysql/tables/llx_links.sql | 0 .../install/mysql/tables/llx_livraison.key.sql | 0 .../install/mysql/tables/llx_livraison.sql | 0 .../mysql/tables/llx_livraison_extrafields.key.sql | 0 .../mysql/tables/llx_livraison_extrafields.sql | 0 .../install/mysql/tables/llx_livraisondet.key.sql | 0 .../install/mysql/tables/llx_livraisondet.sql | 0 .../tables/llx_livraisondet_extrafields.key.sql | 0 .../mysql/tables/llx_livraisondet_extrafields.sql | 0 .../install/mysql/tables/llx_loan.sql | 0 .../install/mysql/tables/llx_localtax.sql | 0 .../install/mysql/tables/llx_mailing.sql | 0 .../install/mysql/tables/llx_mailing_cibles.key.sql | 0 .../install/mysql/tables/llx_mailing_cibles.sql | 0 .../install/mysql/tables/llx_menu.key.sql | 0 .../install/mysql/tables/llx_menu.sql | 0 .../install/mysql/tables/llx_multicurrency.sql | 0 .../install/mysql/tables/llx_multicurrency_rate.sql | 0 .../install/mysql/tables/llx_notify.sql | 0 .../install/mysql/tables/llx_notify_def.sql | 0 .../install/mysql/tables/llx_oauth_state.sql | 0 .../install/mysql/tables/llx_oauth_token.sql | 0 .../mysql/tables/llx_opensurvey_comments.key.sql | 0 .../mysql/tables/llx_opensurvey_comments.sql | 0 .../mysql/tables/llx_opensurvey_formquestions.sql | 0 .../mysql/tables/llx_opensurvey_sondage.key.sql | 0 .../install/mysql/tables/llx_opensurvey_sondage.sql | 0 .../tables/llx_opensurvey_user_formanswers.sql | 0 .../mysql/tables/llx_opensurvey_user_studs.key.sql | 0 .../mysql/tables/llx_opensurvey_user_studs.sql | 0 .../mysql/tables/llx_overwrite_trans.key.sql | 0 .../install/mysql/tables/llx_overwrite_trans.sql | 0 .../install/mysql/tables/llx_paiement.sql | 0 .../mysql/tables/llx_paiement_facture.key.sql | 0 .../install/mysql/tables/llx_paiement_facture.sql | 0 .../install/mysql/tables/llx_paiementcharge.sql | 0 .../install/mysql/tables/llx_paiementfourn.sql | 0 .../tables/llx_paiementfourn_facturefourn.key.sql | 0 .../mysql/tables/llx_paiementfourn_facturefourn.sql | 0 .../install/mysql/tables/llx_payment_donation.sql | 0 .../mysql/tables/llx_payment_expensereport.sql | 0 .../install/mysql/tables/llx_payment_loan.sql | 0 .../install/mysql/tables/llx_payment_salary.key.sql | 0 .../install/mysql/tables/llx_payment_salary.sql | 0 .../mysql/tables/llx_prelevement_bons.key.sql | 0 .../install/mysql/tables/llx_prelevement_bons.sql | 0 .../mysql/tables/llx_prelevement_facture.key.sql | 0 .../mysql/tables/llx_prelevement_facture.sql | 0 .../tables/llx_prelevement_facture_demande.sql | 0 .../mysql/tables/llx_prelevement_lignes.key.sql | 0 .../install/mysql/tables/llx_prelevement_lignes.sql | 0 .../install/mysql/tables/llx_prelevement_rejet.sql | 0 .../install/mysql/tables/llx_printing.sql | 0 .../install/mysql/tables/llx_product.key.sql | 0 .../install/mysql/tables/llx_product.sql | 0 .../mysql/tables/llx_product_association.key.sql | 0 .../mysql/tables/llx_product_association.sql | 0 .../install/mysql/tables/llx_product_batch.key.sql | 0 .../install/mysql/tables/llx_product_batch.sql | 0 .../mysql/tables/llx_product_customer_price.key.sql | 0 .../mysql/tables/llx_product_customer_price.sql | 0 .../mysql/tables/llx_product_customer_price_log.sql | 0 .../mysql/tables/llx_product_extrafields.key.sql | 0 .../mysql/tables/llx_product_extrafields.sql | 0 .../tables/llx_product_fournisseur_price.key.sql | 0 .../mysql/tables/llx_product_fournisseur_price.sql | 0 .../tables/llx_product_fournisseur_price_log.sql | 0 .../install/mysql/tables/llx_product_lang.key.sql | 0 .../install/mysql/tables/llx_product_lang.sql | 0 .../install/mysql/tables/llx_product_lot.key.sql | 0 .../install/mysql/tables/llx_product_lot.sql | 0 .../tables/llx_product_lot_extrafields.key.sql | 0 .../mysql/tables/llx_product_lot_extrafields.sql | 0 .../install/mysql/tables/llx_product_price.key.sql | 0 .../install/mysql/tables/llx_product_price.sql | 0 .../mysql/tables/llx_product_price_by_qty.key.sql | 0 .../mysql/tables/llx_product_price_by_qty.sql | 0 .../mysql/tables/llx_product_pricerules.key.sql | 0 .../install/mysql/tables/llx_product_pricerules.sql | 0 .../install/mysql/tables/llx_product_stock.key.sql | 0 .../install/mysql/tables/llx_product_stock.sql | 0 .../mysql/tables/llx_product_stock_entrepot.sql | 0 .../install/mysql/tables/llx_projet.key.sql | 0 .../install/mysql/tables/llx_projet.sql | 0 .../mysql/tables/llx_projet_extrafields.key.sql | 0 .../install/mysql/tables/llx_projet_extrafields.sql | 0 .../install/mysql/tables/llx_projet_task.key.sql | 0 .../install/mysql/tables/llx_projet_task.sql | 0 .../tables/llx_projet_task_extrafields.key.sql | 0 .../mysql/tables/llx_projet_task_extrafields.sql | 0 .../mysql/tables/llx_projet_task_time.key.sql | 0 .../install/mysql/tables/llx_projet_task_time.sql | 0 .../install/mysql/tables/llx_propal.key.sql | 0 .../install/mysql/tables/llx_propal.sql | 0 .../mysql/tables/llx_propal_extrafields.key.sql | 0 .../install/mysql/tables/llx_propal_extrafields.sql | 0 .../mysql/tables/llx_propal_merge_pdf_product.sql | 0 .../install/mysql/tables/llx_propaldet.key.sql | 0 .../install/mysql/tables/llx_propaldet.sql | 0 .../mysql/tables/llx_propaldet_extrafields.key.sql | 0 .../mysql/tables/llx_propaldet_extrafields.sql | 0 .../install/mysql/tables/llx_resource.key.sql | 0 .../install/mysql/tables/llx_resource.sql | 0 .../mysql/tables/llx_resource_extrafields.key.sql | 0 .../mysql/tables/llx_resource_extrafields.sql | 0 .../install/mysql/tables/llx_rights_def.key.sql | 0 .../install/mysql/tables/llx_rights_def.sql | 0 .../install/mysql/tables/llx_societe.key.sql | 0 .../install/mysql/tables/llx_societe.sql | 0 .../install/mysql/tables/llx_societe_address.sql | 0 .../mysql/tables/llx_societe_commerciaux.key.sql | 0 .../mysql/tables/llx_societe_commerciaux.sql | 0 .../mysql/tables/llx_societe_extrafields.key.sql | 0 .../mysql/tables/llx_societe_extrafields.sql | 0 .../install/mysql/tables/llx_societe_log.sql | 0 .../install/mysql/tables/llx_societe_prices.sql | 0 .../install/mysql/tables/llx_societe_remise.sql | 0 .../mysql/tables/llx_societe_remise_except.key.sql | 0 .../mysql/tables/llx_societe_remise_except.sql | 0 .../install/mysql/tables/llx_societe_rib.key.sql | 0 .../install/mysql/tables/llx_societe_rib.sql | 0 .../install/mysql/tables/llx_socpeople.key.sql | 0 .../install/mysql/tables/llx_socpeople.sql | 0 .../mysql/tables/llx_socpeople_extrafields.key.sql | 0 .../mysql/tables/llx_socpeople_extrafields.sql | 0 .../mysql/tables/llx_stock_mouvement.key.sql | 0 .../install/mysql/tables/llx_stock_mouvement.sql | 0 .../install/mysql/tables/llx_subscription.key.sql | 0 .../install/mysql/tables/llx_subscription.sql | 0 .../install/mysql/tables/llx_supplier_proposal.sql | 0 .../tables/llx_supplier_proposal_extrafields.sql | 0 .../mysql/tables/llx_supplier_proposaldet.sql | 0 .../tables/llx_supplier_proposaldet_extrafields.sql | 0 {htdocs => public}/install/mysql/tables/llx_tva.sql | 0 .../install/mysql/tables/llx_user.key.sql | 0 .../install/mysql/tables/llx_user.sql | 0 .../install/mysql/tables/llx_user_alert.sql | 0 .../install/mysql/tables/llx_user_clicktodial.sql | 0 .../mysql/tables/llx_user_employment.key.sql | 0 .../install/mysql/tables/llx_user_employment.sql | 0 .../mysql/tables/llx_user_extrafields.key.sql | 0 .../install/mysql/tables/llx_user_extrafields.sql | 0 .../install/mysql/tables/llx_user_param.key.sql | 0 .../install/mysql/tables/llx_user_param.sql | 0 .../install/mysql/tables/llx_user_rib.sql | 0 .../install/mysql/tables/llx_user_rights.key.sql | 0 .../install/mysql/tables/llx_user_rights.sql | 0 .../install/mysql/tables/llx_usergroup.key.sql | 0 .../install/mysql/tables/llx_usergroup.sql | 0 .../mysql/tables/llx_usergroup_extrafields.key.sql | 0 .../mysql/tables/llx_usergroup_extrafields.sql | 0 .../mysql/tables/llx_usergroup_rights.key.sql | 0 .../install/mysql/tables/llx_usergroup_rights.sql | 0 .../install/mysql/tables/llx_usergroup_user.key.sql | 0 .../install/mysql/tables/llx_usergroup_user.sql | 0 .../install/mysql/tables/llx_website.key.sql | 0 .../install/mysql/tables/llx_website.sql | 0 .../install/mysql/tables/llx_website_pages.key.sql | 0 .../install/mysql/tables/llx_website_pages.sql | 0 {htdocs => public}/install/pgsql/README | 0 .../install/pgsql/functions/functions.sql | 0 .../install/pgsql/functions/index.html | 0 {htdocs => public}/install/pgsql/index.html | 0 {htdocs => public}/install/phpinfo.php | 0 {htdocs => public}/install/repair.php | 0 {htdocs => public}/install/robots.txt | 0 .../install/sqlite3/functions/functions.sql | 0 {htdocs => public}/install/sqlite3/index.html | 0 {htdocs => public}/install/step1.php | 0 {htdocs => public}/install/step2.php | 0 {htdocs => public}/install/step4.php | 0 {htdocs => public}/install/step5.php | 0 {htdocs => public}/install/upgrade.php | 0 {htdocs => public}/install/upgrade2.php | 0 {htdocs => public}/langs/HOWTO-Translation.txt | 0 {htdocs => public}/langs/ar_SA/accountancy.lang | 0 {htdocs => public}/langs/ar_SA/admin.lang | 0 {htdocs => public}/langs/ar_SA/agenda.lang | 0 {htdocs => public}/langs/ar_SA/banks.lang | 0 {htdocs => public}/langs/ar_SA/bills.lang | 0 {htdocs => public}/langs/ar_SA/bookmarks.lang | 0 {htdocs => public}/langs/ar_SA/boxes.lang | 0 {htdocs => public}/langs/ar_SA/cashdesk.lang | 0 {htdocs => public}/langs/ar_SA/categories.lang | 0 {htdocs => public}/langs/ar_SA/commercial.lang | 0 {htdocs => public}/langs/ar_SA/companies.lang | 0 {htdocs => public}/langs/ar_SA/compta.lang | 0 {htdocs => public}/langs/ar_SA/contracts.lang | 0 {htdocs => public}/langs/ar_SA/cron.lang | 0 {htdocs => public}/langs/ar_SA/deliveries.lang | 0 {htdocs => public}/langs/ar_SA/dict.lang | 0 {htdocs => public}/langs/ar_SA/donations.lang | 0 {htdocs => public}/langs/ar_SA/ecm.lang | 0 {htdocs => public}/langs/ar_SA/errors.lang | 0 {htdocs => public}/langs/ar_SA/exports.lang | 0 {htdocs => public}/langs/ar_SA/externalsite.lang | 0 {htdocs => public}/langs/ar_SA/ftp.lang | 0 {htdocs => public}/langs/ar_SA/help.lang | 0 {htdocs => public}/langs/ar_SA/holiday.lang | 0 {htdocs => public}/langs/ar_SA/hrm.lang | 0 {htdocs => public}/langs/ar_SA/incoterm.lang | 0 {htdocs => public}/langs/ar_SA/install.lang | 0 {htdocs => public}/langs/ar_SA/interventions.lang | 0 {htdocs => public}/langs/ar_SA/languages.lang | 0 {htdocs => public}/langs/ar_SA/ldap.lang | 0 {htdocs => public}/langs/ar_SA/link.lang | 0 {htdocs => public}/langs/ar_SA/loan.lang | 0 {htdocs => public}/langs/ar_SA/mailmanspip.lang | 0 {htdocs => public}/langs/ar_SA/mails.lang | 0 {htdocs => public}/langs/ar_SA/main.lang | 0 {htdocs => public}/langs/ar_SA/margins.lang | 0 {htdocs => public}/langs/ar_SA/members.lang | 0 {htdocs => public}/langs/ar_SA/oauth.lang | 0 {htdocs => public}/langs/ar_SA/opensurvey.lang | 0 {htdocs => public}/langs/ar_SA/orders.lang | 0 {htdocs => public}/langs/ar_SA/other.lang | 0 {htdocs => public}/langs/ar_SA/paybox.lang | 0 {htdocs => public}/langs/ar_SA/paypal.lang | 0 {htdocs => public}/langs/ar_SA/printing.lang | 0 {htdocs => public}/langs/ar_SA/productbatch.lang | 0 {htdocs => public}/langs/ar_SA/products.lang | 0 {htdocs => public}/langs/ar_SA/projects.lang | 0 {htdocs => public}/langs/ar_SA/propal.lang | 0 {htdocs => public}/langs/ar_SA/receiptprinter.lang | 0 {htdocs => public}/langs/ar_SA/resource.lang | 0 {htdocs => public}/langs/ar_SA/salaries.lang | 0 {htdocs => public}/langs/ar_SA/sendings.lang | 0 {htdocs => public}/langs/ar_SA/sms.lang | 0 {htdocs => public}/langs/ar_SA/stocks.lang | 0 .../langs/ar_SA/supplier_proposal.lang | 0 {htdocs => public}/langs/ar_SA/suppliers.lang | 0 {htdocs => public}/langs/ar_SA/trips.lang | 0 {htdocs => public}/langs/ar_SA/users.lang | 0 {htdocs => public}/langs/ar_SA/website.lang | 0 {htdocs => public}/langs/ar_SA/withdrawals.lang | 0 {htdocs => public}/langs/ar_SA/workflow.lang | 0 {htdocs => public}/langs/bg_BG/accountancy.lang | 0 {htdocs => public}/langs/bg_BG/admin.lang | 0 {htdocs => public}/langs/bg_BG/agenda.lang | 0 {htdocs => public}/langs/bg_BG/banks.lang | 0 {htdocs => public}/langs/bg_BG/bills.lang | 0 {htdocs => public}/langs/bg_BG/bookmarks.lang | 0 {htdocs => public}/langs/bg_BG/boxes.lang | 0 {htdocs => public}/langs/bg_BG/cashdesk.lang | 0 {htdocs => public}/langs/bg_BG/categories.lang | 0 {htdocs => public}/langs/bg_BG/commercial.lang | 0 {htdocs => public}/langs/bg_BG/companies.lang | 0 {htdocs => public}/langs/bg_BG/compta.lang | 0 {htdocs => public}/langs/bg_BG/contracts.lang | 0 {htdocs => public}/langs/bg_BG/cron.lang | 0 {htdocs => public}/langs/bg_BG/deliveries.lang | 0 {htdocs => public}/langs/bg_BG/dict.lang | 0 {htdocs => public}/langs/bg_BG/donations.lang | 0 {htdocs => public}/langs/bg_BG/ecm.lang | 0 {htdocs => public}/langs/bg_BG/errors.lang | 0 {htdocs => public}/langs/bg_BG/exports.lang | 0 {htdocs => public}/langs/bg_BG/externalsite.lang | 0 {htdocs => public}/langs/bg_BG/ftp.lang | 0 {htdocs => public}/langs/bg_BG/help.lang | 0 {htdocs => public}/langs/bg_BG/holiday.lang | 0 {htdocs => public}/langs/bg_BG/hrm.lang | 0 {htdocs => public}/langs/bg_BG/incoterm.lang | 0 {htdocs => public}/langs/bg_BG/install.lang | 0 {htdocs => public}/langs/bg_BG/interventions.lang | 0 {htdocs => public}/langs/bg_BG/languages.lang | 0 {htdocs => public}/langs/bg_BG/ldap.lang | 0 {htdocs => public}/langs/bg_BG/link.lang | 0 {htdocs => public}/langs/bg_BG/loan.lang | 0 {htdocs => public}/langs/bg_BG/mailmanspip.lang | 0 {htdocs => public}/langs/bg_BG/mails.lang | 0 {htdocs => public}/langs/bg_BG/main.lang | 0 {htdocs => public}/langs/bg_BG/margins.lang | 0 {htdocs => public}/langs/bg_BG/members.lang | 0 {htdocs => public}/langs/bg_BG/oauth.lang | 0 {htdocs => public}/langs/bg_BG/opensurvey.lang | 0 {htdocs => public}/langs/bg_BG/orders.lang | 0 {htdocs => public}/langs/bg_BG/other.lang | 0 {htdocs => public}/langs/bg_BG/paybox.lang | 0 {htdocs => public}/langs/bg_BG/paypal.lang | 0 {htdocs => public}/langs/bg_BG/printing.lang | 0 {htdocs => public}/langs/bg_BG/productbatch.lang | 0 {htdocs => public}/langs/bg_BG/products.lang | 0 {htdocs => public}/langs/bg_BG/projects.lang | 0 {htdocs => public}/langs/bg_BG/propal.lang | 0 {htdocs => public}/langs/bg_BG/receiptprinter.lang | 0 {htdocs => public}/langs/bg_BG/resource.lang | 0 {htdocs => public}/langs/bg_BG/salaries.lang | 0 {htdocs => public}/langs/bg_BG/sendings.lang | 0 {htdocs => public}/langs/bg_BG/sms.lang | 0 {htdocs => public}/langs/bg_BG/stocks.lang | 0 .../langs/bg_BG/supplier_proposal.lang | 0 {htdocs => public}/langs/bg_BG/suppliers.lang | 0 {htdocs => public}/langs/bg_BG/trips.lang | 0 {htdocs => public}/langs/bg_BG/users.lang | 0 {htdocs => public}/langs/bg_BG/website.lang | 0 {htdocs => public}/langs/bg_BG/withdrawals.lang | 0 {htdocs => public}/langs/bg_BG/workflow.lang | 0 {htdocs => public}/langs/bn_BD/accountancy.lang | 0 {htdocs => public}/langs/bn_BD/admin.lang | 0 {htdocs => public}/langs/bn_BD/agenda.lang | 0 {htdocs => public}/langs/bn_BD/banks.lang | 0 {htdocs => public}/langs/bn_BD/bills.lang | 0 {htdocs => public}/langs/bn_BD/bookmarks.lang | 0 {htdocs => public}/langs/bn_BD/boxes.lang | 0 {htdocs => public}/langs/bn_BD/cashdesk.lang | 0 {htdocs => public}/langs/bn_BD/categories.lang | 0 {htdocs => public}/langs/bn_BD/commercial.lang | 0 {htdocs => public}/langs/bn_BD/companies.lang | 0 {htdocs => public}/langs/bn_BD/compta.lang | 0 {htdocs => public}/langs/bn_BD/contracts.lang | 0 {htdocs => public}/langs/bn_BD/cron.lang | 0 {htdocs => public}/langs/bn_BD/deliveries.lang | 0 {htdocs => public}/langs/bn_BD/dict.lang | 0 {htdocs => public}/langs/bn_BD/donations.lang | 0 {htdocs => public}/langs/bn_BD/ecm.lang | 0 {htdocs => public}/langs/bn_BD/errors.lang | 0 {htdocs => public}/langs/bn_BD/exports.lang | 0 {htdocs => public}/langs/bn_BD/externalsite.lang | 0 {htdocs => public}/langs/bn_BD/ftp.lang | 0 {htdocs => public}/langs/bn_BD/help.lang | 0 {htdocs => public}/langs/bn_BD/holiday.lang | 0 {htdocs => public}/langs/bn_BD/hrm.lang | 0 {htdocs => public}/langs/bn_BD/incoterm.lang | 0 {htdocs => public}/langs/bn_BD/install.lang | 0 {htdocs => public}/langs/bn_BD/interventions.lang | 0 {htdocs => public}/langs/bn_BD/languages.lang | 0 {htdocs => public}/langs/bn_BD/ldap.lang | 0 {htdocs => public}/langs/bn_BD/link.lang | 0 {htdocs => public}/langs/bn_BD/loan.lang | 0 {htdocs => public}/langs/bn_BD/mailmanspip.lang | 0 {htdocs => public}/langs/bn_BD/mails.lang | 0 {htdocs => public}/langs/bn_BD/main.lang | 0 {htdocs => public}/langs/bn_BD/margins.lang | 0 {htdocs => public}/langs/bn_BD/members.lang | 0 {htdocs => public}/langs/bn_BD/oauth.lang | 0 {htdocs => public}/langs/bn_BD/opensurvey.lang | 0 {htdocs => public}/langs/bn_BD/orders.lang | 0 {htdocs => public}/langs/bn_BD/other.lang | 0 {htdocs => public}/langs/bn_BD/paybox.lang | 0 {htdocs => public}/langs/bn_BD/paypal.lang | 0 {htdocs => public}/langs/bn_BD/printing.lang | 0 {htdocs => public}/langs/bn_BD/productbatch.lang | 0 {htdocs => public}/langs/bn_BD/products.lang | 0 {htdocs => public}/langs/bn_BD/projects.lang | 0 {htdocs => public}/langs/bn_BD/propal.lang | 0 {htdocs => public}/langs/bn_BD/receiptprinter.lang | 0 {htdocs => public}/langs/bn_BD/resource.lang | 0 {htdocs => public}/langs/bn_BD/salaries.lang | 0 {htdocs => public}/langs/bn_BD/sendings.lang | 0 {htdocs => public}/langs/bn_BD/sms.lang | 0 {htdocs => public}/langs/bn_BD/stocks.lang | 0 .../langs/bn_BD/supplier_proposal.lang | 0 {htdocs => public}/langs/bn_BD/suppliers.lang | 0 {htdocs => public}/langs/bn_BD/trips.lang | 0 {htdocs => public}/langs/bn_BD/users.lang | 0 {htdocs => public}/langs/bn_BD/website.lang | 0 {htdocs => public}/langs/bn_BD/withdrawals.lang | 0 {htdocs => public}/langs/bn_BD/workflow.lang | 0 {htdocs => public}/langs/bs_BA/accountancy.lang | 0 {htdocs => public}/langs/bs_BA/admin.lang | 0 {htdocs => public}/langs/bs_BA/agenda.lang | 0 {htdocs => public}/langs/bs_BA/banks.lang | 0 {htdocs => public}/langs/bs_BA/bills.lang | 0 {htdocs => public}/langs/bs_BA/bookmarks.lang | 0 {htdocs => public}/langs/bs_BA/boxes.lang | 0 {htdocs => public}/langs/bs_BA/cashdesk.lang | 0 {htdocs => public}/langs/bs_BA/categories.lang | 0 {htdocs => public}/langs/bs_BA/commercial.lang | 0 {htdocs => public}/langs/bs_BA/companies.lang | 0 {htdocs => public}/langs/bs_BA/compta.lang | 0 {htdocs => public}/langs/bs_BA/contracts.lang | 0 {htdocs => public}/langs/bs_BA/cron.lang | 0 {htdocs => public}/langs/bs_BA/deliveries.lang | 0 {htdocs => public}/langs/bs_BA/dict.lang | 0 {htdocs => public}/langs/bs_BA/donations.lang | 0 {htdocs => public}/langs/bs_BA/ecm.lang | 0 {htdocs => public}/langs/bs_BA/errors.lang | 0 {htdocs => public}/langs/bs_BA/exports.lang | 0 {htdocs => public}/langs/bs_BA/externalsite.lang | 0 {htdocs => public}/langs/bs_BA/ftp.lang | 0 {htdocs => public}/langs/bs_BA/help.lang | 0 {htdocs => public}/langs/bs_BA/holiday.lang | 0 {htdocs => public}/langs/bs_BA/hrm.lang | 0 {htdocs => public}/langs/bs_BA/incoterm.lang | 0 {htdocs => public}/langs/bs_BA/install.lang | 0 {htdocs => public}/langs/bs_BA/interventions.lang | 0 {htdocs => public}/langs/bs_BA/languages.lang | 0 {htdocs => public}/langs/bs_BA/ldap.lang | 0 {htdocs => public}/langs/bs_BA/link.lang | 0 {htdocs => public}/langs/bs_BA/loan.lang | 0 {htdocs => public}/langs/bs_BA/mailmanspip.lang | 0 {htdocs => public}/langs/bs_BA/mails.lang | 0 {htdocs => public}/langs/bs_BA/main.lang | 0 {htdocs => public}/langs/bs_BA/margins.lang | 0 {htdocs => public}/langs/bs_BA/members.lang | 0 {htdocs => public}/langs/bs_BA/oauth.lang | 0 {htdocs => public}/langs/bs_BA/opensurvey.lang | 0 {htdocs => public}/langs/bs_BA/orders.lang | 0 {htdocs => public}/langs/bs_BA/other.lang | 0 {htdocs => public}/langs/bs_BA/paybox.lang | 0 {htdocs => public}/langs/bs_BA/paypal.lang | 0 {htdocs => public}/langs/bs_BA/printing.lang | 0 {htdocs => public}/langs/bs_BA/productbatch.lang | 0 {htdocs => public}/langs/bs_BA/products.lang | 0 {htdocs => public}/langs/bs_BA/projects.lang | 0 {htdocs => public}/langs/bs_BA/propal.lang | 0 {htdocs => public}/langs/bs_BA/receiptprinter.lang | 0 {htdocs => public}/langs/bs_BA/resource.lang | 0 {htdocs => public}/langs/bs_BA/salaries.lang | 0 {htdocs => public}/langs/bs_BA/sendings.lang | 0 {htdocs => public}/langs/bs_BA/sms.lang | 0 {htdocs => public}/langs/bs_BA/stocks.lang | 0 .../langs/bs_BA/supplier_proposal.lang | 0 {htdocs => public}/langs/bs_BA/suppliers.lang | 0 {htdocs => public}/langs/bs_BA/trips.lang | 0 {htdocs => public}/langs/bs_BA/users.lang | 0 {htdocs => public}/langs/bs_BA/website.lang | 0 {htdocs => public}/langs/bs_BA/withdrawals.lang | 0 {htdocs => public}/langs/bs_BA/workflow.lang | 0 {htdocs => public}/langs/ca_ES/accountancy.lang | 0 {htdocs => public}/langs/ca_ES/admin.lang | 0 {htdocs => public}/langs/ca_ES/agenda.lang | 0 {htdocs => public}/langs/ca_ES/banks.lang | 0 {htdocs => public}/langs/ca_ES/bills.lang | 0 {htdocs => public}/langs/ca_ES/bookmarks.lang | 0 {htdocs => public}/langs/ca_ES/boxes.lang | 0 {htdocs => public}/langs/ca_ES/cashdesk.lang | 0 {htdocs => public}/langs/ca_ES/categories.lang | 0 {htdocs => public}/langs/ca_ES/commercial.lang | 0 {htdocs => public}/langs/ca_ES/companies.lang | 0 {htdocs => public}/langs/ca_ES/compta.lang | 0 {htdocs => public}/langs/ca_ES/contracts.lang | 0 {htdocs => public}/langs/ca_ES/cron.lang | 0 {htdocs => public}/langs/ca_ES/deliveries.lang | 0 {htdocs => public}/langs/ca_ES/dict.lang | 0 {htdocs => public}/langs/ca_ES/donations.lang | 0 {htdocs => public}/langs/ca_ES/ecm.lang | 0 {htdocs => public}/langs/ca_ES/errors.lang | 0 {htdocs => public}/langs/ca_ES/exports.lang | 0 {htdocs => public}/langs/ca_ES/externalsite.lang | 0 {htdocs => public}/langs/ca_ES/ftp.lang | 0 {htdocs => public}/langs/ca_ES/help.lang | 0 {htdocs => public}/langs/ca_ES/holiday.lang | 0 {htdocs => public}/langs/ca_ES/hrm.lang | 0 {htdocs => public}/langs/ca_ES/incoterm.lang | 0 {htdocs => public}/langs/ca_ES/install.lang | 0 {htdocs => public}/langs/ca_ES/interventions.lang | 0 {htdocs => public}/langs/ca_ES/languages.lang | 0 {htdocs => public}/langs/ca_ES/ldap.lang | 0 {htdocs => public}/langs/ca_ES/link.lang | 0 {htdocs => public}/langs/ca_ES/loan.lang | 0 {htdocs => public}/langs/ca_ES/mailmanspip.lang | 0 {htdocs => public}/langs/ca_ES/mails.lang | 0 {htdocs => public}/langs/ca_ES/main.lang | 0 {htdocs => public}/langs/ca_ES/margins.lang | 0 {htdocs => public}/langs/ca_ES/members.lang | 0 {htdocs => public}/langs/ca_ES/oauth.lang | 0 {htdocs => public}/langs/ca_ES/opensurvey.lang | 0 {htdocs => public}/langs/ca_ES/orders.lang | 0 {htdocs => public}/langs/ca_ES/other.lang | 0 {htdocs => public}/langs/ca_ES/paybox.lang | 0 {htdocs => public}/langs/ca_ES/paypal.lang | 0 {htdocs => public}/langs/ca_ES/printing.lang | 0 {htdocs => public}/langs/ca_ES/productbatch.lang | 0 {htdocs => public}/langs/ca_ES/products.lang | 0 {htdocs => public}/langs/ca_ES/projects.lang | 0 {htdocs => public}/langs/ca_ES/propal.lang | 0 {htdocs => public}/langs/ca_ES/receiptprinter.lang | 0 {htdocs => public}/langs/ca_ES/resource.lang | 0 {htdocs => public}/langs/ca_ES/salaries.lang | 0 {htdocs => public}/langs/ca_ES/sendings.lang | 0 {htdocs => public}/langs/ca_ES/sms.lang | 0 {htdocs => public}/langs/ca_ES/stocks.lang | 0 .../langs/ca_ES/supplier_proposal.lang | 0 {htdocs => public}/langs/ca_ES/suppliers.lang | 0 {htdocs => public}/langs/ca_ES/trips.lang | 0 {htdocs => public}/langs/ca_ES/users.lang | 0 {htdocs => public}/langs/ca_ES/website.lang | 0 {htdocs => public}/langs/ca_ES/withdrawals.lang | 0 {htdocs => public}/langs/ca_ES/workflow.lang | 0 {htdocs => public}/langs/cs_CZ/accountancy.lang | 0 {htdocs => public}/langs/cs_CZ/admin.lang | 0 {htdocs => public}/langs/cs_CZ/agenda.lang | 0 {htdocs => public}/langs/cs_CZ/banks.lang | 0 {htdocs => public}/langs/cs_CZ/bills.lang | 0 {htdocs => public}/langs/cs_CZ/bookmarks.lang | 0 {htdocs => public}/langs/cs_CZ/boxes.lang | 0 {htdocs => public}/langs/cs_CZ/cashdesk.lang | 0 {htdocs => public}/langs/cs_CZ/categories.lang | 0 {htdocs => public}/langs/cs_CZ/commercial.lang | 0 {htdocs => public}/langs/cs_CZ/companies.lang | 0 {htdocs => public}/langs/cs_CZ/compta.lang | 0 {htdocs => public}/langs/cs_CZ/contracts.lang | 0 {htdocs => public}/langs/cs_CZ/cron.lang | 0 {htdocs => public}/langs/cs_CZ/deliveries.lang | 0 {htdocs => public}/langs/cs_CZ/dict.lang | 0 {htdocs => public}/langs/cs_CZ/donations.lang | 0 {htdocs => public}/langs/cs_CZ/ecm.lang | 0 {htdocs => public}/langs/cs_CZ/errors.lang | 0 {htdocs => public}/langs/cs_CZ/exports.lang | 0 {htdocs => public}/langs/cs_CZ/externalsite.lang | 0 {htdocs => public}/langs/cs_CZ/ftp.lang | 0 {htdocs => public}/langs/cs_CZ/help.lang | 0 {htdocs => public}/langs/cs_CZ/holiday.lang | 0 {htdocs => public}/langs/cs_CZ/hrm.lang | 0 {htdocs => public}/langs/cs_CZ/incoterm.lang | 0 {htdocs => public}/langs/cs_CZ/install.lang | 0 {htdocs => public}/langs/cs_CZ/interventions.lang | 0 {htdocs => public}/langs/cs_CZ/languages.lang | 0 {htdocs => public}/langs/cs_CZ/ldap.lang | 0 {htdocs => public}/langs/cs_CZ/link.lang | 0 {htdocs => public}/langs/cs_CZ/loan.lang | 0 {htdocs => public}/langs/cs_CZ/mailmanspip.lang | 0 {htdocs => public}/langs/cs_CZ/mails.lang | 0 {htdocs => public}/langs/cs_CZ/main.lang | 0 {htdocs => public}/langs/cs_CZ/margins.lang | 0 {htdocs => public}/langs/cs_CZ/members.lang | 0 {htdocs => public}/langs/cs_CZ/oauth.lang | 0 {htdocs => public}/langs/cs_CZ/opensurvey.lang | 0 {htdocs => public}/langs/cs_CZ/orders.lang | 0 {htdocs => public}/langs/cs_CZ/other.lang | 0 {htdocs => public}/langs/cs_CZ/paybox.lang | 0 {htdocs => public}/langs/cs_CZ/paypal.lang | 0 {htdocs => public}/langs/cs_CZ/printing.lang | 0 {htdocs => public}/langs/cs_CZ/productbatch.lang | 0 {htdocs => public}/langs/cs_CZ/products.lang | 0 {htdocs => public}/langs/cs_CZ/projects.lang | 0 {htdocs => public}/langs/cs_CZ/propal.lang | 0 {htdocs => public}/langs/cs_CZ/receiptprinter.lang | 0 {htdocs => public}/langs/cs_CZ/resource.lang | 0 {htdocs => public}/langs/cs_CZ/salaries.lang | 0 {htdocs => public}/langs/cs_CZ/sendings.lang | 0 {htdocs => public}/langs/cs_CZ/sms.lang | 0 {htdocs => public}/langs/cs_CZ/stocks.lang | 0 .../langs/cs_CZ/supplier_proposal.lang | 0 {htdocs => public}/langs/cs_CZ/suppliers.lang | 0 {htdocs => public}/langs/cs_CZ/trips.lang | 0 {htdocs => public}/langs/cs_CZ/users.lang | 0 {htdocs => public}/langs/cs_CZ/website.lang | 0 {htdocs => public}/langs/cs_CZ/withdrawals.lang | 0 {htdocs => public}/langs/cs_CZ/workflow.lang | 0 {htdocs => public}/langs/da_DK/accountancy.lang | 0 {htdocs => public}/langs/da_DK/admin.lang | 0 {htdocs => public}/langs/da_DK/agenda.lang | 0 {htdocs => public}/langs/da_DK/banks.lang | 0 {htdocs => public}/langs/da_DK/bills.lang | 0 {htdocs => public}/langs/da_DK/bookmarks.lang | 0 {htdocs => public}/langs/da_DK/boxes.lang | 0 {htdocs => public}/langs/da_DK/cashdesk.lang | 0 {htdocs => public}/langs/da_DK/categories.lang | 0 {htdocs => public}/langs/da_DK/commercial.lang | 0 {htdocs => public}/langs/da_DK/companies.lang | 0 {htdocs => public}/langs/da_DK/compta.lang | 0 {htdocs => public}/langs/da_DK/contracts.lang | 0 {htdocs => public}/langs/da_DK/cron.lang | 0 {htdocs => public}/langs/da_DK/deliveries.lang | 0 {htdocs => public}/langs/da_DK/dict.lang | 0 {htdocs => public}/langs/da_DK/donations.lang | 0 {htdocs => public}/langs/da_DK/ecm.lang | 0 {htdocs => public}/langs/da_DK/errors.lang | 0 {htdocs => public}/langs/da_DK/exports.lang | 0 {htdocs => public}/langs/da_DK/externalsite.lang | 0 {htdocs => public}/langs/da_DK/ftp.lang | 0 {htdocs => public}/langs/da_DK/help.lang | 0 {htdocs => public}/langs/da_DK/holiday.lang | 0 {htdocs => public}/langs/da_DK/hrm.lang | 0 {htdocs => public}/langs/da_DK/incoterm.lang | 0 {htdocs => public}/langs/da_DK/install.lang | 0 {htdocs => public}/langs/da_DK/interventions.lang | 0 {htdocs => public}/langs/da_DK/languages.lang | 0 {htdocs => public}/langs/da_DK/ldap.lang | 0 {htdocs => public}/langs/da_DK/link.lang | 0 {htdocs => public}/langs/da_DK/loan.lang | 0 {htdocs => public}/langs/da_DK/mailmanspip.lang | 0 {htdocs => public}/langs/da_DK/mails.lang | 0 {htdocs => public}/langs/da_DK/main.lang | 0 {htdocs => public}/langs/da_DK/margins.lang | 0 {htdocs => public}/langs/da_DK/members.lang | 0 {htdocs => public}/langs/da_DK/oauth.lang | 0 {htdocs => public}/langs/da_DK/opensurvey.lang | 0 {htdocs => public}/langs/da_DK/orders.lang | 0 {htdocs => public}/langs/da_DK/other.lang | 0 {htdocs => public}/langs/da_DK/paybox.lang | 0 {htdocs => public}/langs/da_DK/paypal.lang | 0 {htdocs => public}/langs/da_DK/printing.lang | 0 {htdocs => public}/langs/da_DK/productbatch.lang | 0 {htdocs => public}/langs/da_DK/products.lang | 0 {htdocs => public}/langs/da_DK/projects.lang | 0 {htdocs => public}/langs/da_DK/propal.lang | 0 {htdocs => public}/langs/da_DK/receiptprinter.lang | 0 {htdocs => public}/langs/da_DK/resource.lang | 0 {htdocs => public}/langs/da_DK/salaries.lang | 0 {htdocs => public}/langs/da_DK/sendings.lang | 0 {htdocs => public}/langs/da_DK/sms.lang | 0 {htdocs => public}/langs/da_DK/stocks.lang | 0 .../langs/da_DK/supplier_proposal.lang | 0 {htdocs => public}/langs/da_DK/suppliers.lang | 0 {htdocs => public}/langs/da_DK/trips.lang | 0 {htdocs => public}/langs/da_DK/users.lang | 0 {htdocs => public}/langs/da_DK/website.lang | 0 {htdocs => public}/langs/da_DK/withdrawals.lang | 0 {htdocs => public}/langs/da_DK/workflow.lang | 0 {htdocs => public}/langs/de_AT/accountancy.lang | 0 {htdocs => public}/langs/de_AT/admin.lang | 0 {htdocs => public}/langs/de_AT/agenda.lang | 0 {htdocs => public}/langs/de_AT/banks.lang | 0 {htdocs => public}/langs/de_AT/bills.lang | 0 {htdocs => public}/langs/de_AT/bookmarks.lang | 0 {htdocs => public}/langs/de_AT/boxes.lang | 0 {htdocs => public}/langs/de_AT/cashdesk.lang | 0 {htdocs => public}/langs/de_AT/categories.lang | 0 {htdocs => public}/langs/de_AT/commercial.lang | 0 {htdocs => public}/langs/de_AT/companies.lang | 0 {htdocs => public}/langs/de_AT/compta.lang | 0 {htdocs => public}/langs/de_AT/contracts.lang | 0 {htdocs => public}/langs/de_AT/cron.lang | 0 {htdocs => public}/langs/de_AT/deliveries.lang | 0 {htdocs => public}/langs/de_AT/dict.lang | 0 {htdocs => public}/langs/de_AT/donations.lang | 0 {htdocs => public}/langs/de_AT/ecm.lang | 0 {htdocs => public}/langs/de_AT/errors.lang | 0 {htdocs => public}/langs/de_AT/exports.lang | 0 {htdocs => public}/langs/de_AT/externalsite.lang | 0 {htdocs => public}/langs/de_AT/ftp.lang | 0 {htdocs => public}/langs/de_AT/help.lang | 0 {htdocs => public}/langs/de_AT/holiday.lang | 0 {htdocs => public}/langs/de_AT/hrm.lang | 0 {htdocs => public}/langs/de_AT/incoterm.lang | 0 {htdocs => public}/langs/de_AT/install.lang | 0 {htdocs => public}/langs/de_AT/interventions.lang | 0 {htdocs => public}/langs/de_AT/languages.lang | 0 {htdocs => public}/langs/de_AT/ldap.lang | 0 {htdocs => public}/langs/de_AT/link.lang | 0 {htdocs => public}/langs/de_AT/loan.lang | 0 {htdocs => public}/langs/de_AT/mailmanspip.lang | 0 {htdocs => public}/langs/de_AT/mails.lang | 0 {htdocs => public}/langs/de_AT/main.lang | 0 {htdocs => public}/langs/de_AT/margins.lang | 0 {htdocs => public}/langs/de_AT/members.lang | 0 {htdocs => public}/langs/de_AT/oauth.lang | 0 {htdocs => public}/langs/de_AT/opensurvey.lang | 0 {htdocs => public}/langs/de_AT/orders.lang | 0 {htdocs => public}/langs/de_AT/other.lang | 0 {htdocs => public}/langs/de_AT/paybox.lang | 0 {htdocs => public}/langs/de_AT/paypal.lang | 0 {htdocs => public}/langs/de_AT/printing.lang | 0 {htdocs => public}/langs/de_AT/productbatch.lang | 0 {htdocs => public}/langs/de_AT/products.lang | 0 {htdocs => public}/langs/de_AT/projects.lang | 0 {htdocs => public}/langs/de_AT/propal.lang | 0 {htdocs => public}/langs/de_AT/receiptprinter.lang | 0 {htdocs => public}/langs/de_AT/resource.lang | 0 {htdocs => public}/langs/de_AT/salaries.lang | 0 {htdocs => public}/langs/de_AT/sendings.lang | 0 {htdocs => public}/langs/de_AT/sms.lang | 0 {htdocs => public}/langs/de_AT/stocks.lang | 0 .../langs/de_AT/supplier_proposal.lang | 0 {htdocs => public}/langs/de_AT/suppliers.lang | 0 {htdocs => public}/langs/de_AT/trips.lang | 0 {htdocs => public}/langs/de_AT/users.lang | 0 {htdocs => public}/langs/de_AT/website.lang | 0 {htdocs => public}/langs/de_AT/withdrawals.lang | 0 {htdocs => public}/langs/de_AT/workflow.lang | 0 {htdocs => public}/langs/de_CH/accountancy.lang | 0 {htdocs => public}/langs/de_CH/admin.lang | 0 {htdocs => public}/langs/de_CH/agenda.lang | 0 {htdocs => public}/langs/de_CH/banks.lang | 0 {htdocs => public}/langs/de_CH/bills.lang | 0 {htdocs => public}/langs/de_CH/bookmarks.lang | 0 {htdocs => public}/langs/de_CH/boxes.lang | 0 {htdocs => public}/langs/de_CH/cashdesk.lang | 0 {htdocs => public}/langs/de_CH/categories.lang | 0 {htdocs => public}/langs/de_CH/commercial.lang | 0 {htdocs => public}/langs/de_CH/companies.lang | 0 {htdocs => public}/langs/de_CH/compta.lang | 0 {htdocs => public}/langs/de_CH/contracts.lang | 0 {htdocs => public}/langs/de_CH/cron.lang | 0 {htdocs => public}/langs/de_CH/deliveries.lang | 0 {htdocs => public}/langs/de_CH/dict.lang | 0 {htdocs => public}/langs/de_CH/donations.lang | 0 {htdocs => public}/langs/de_CH/ecm.lang | 0 {htdocs => public}/langs/de_CH/errors.lang | 0 {htdocs => public}/langs/de_CH/exports.lang | 0 {htdocs => public}/langs/de_CH/externalsite.lang | 0 {htdocs => public}/langs/de_CH/ftp.lang | 0 {htdocs => public}/langs/de_CH/help.lang | 0 {htdocs => public}/langs/de_CH/holiday.lang | 0 {htdocs => public}/langs/de_CH/hrm.lang | 0 {htdocs => public}/langs/de_CH/incoterm.lang | 0 {htdocs => public}/langs/de_CH/install.lang | 0 {htdocs => public}/langs/de_CH/interventions.lang | 0 {htdocs => public}/langs/de_CH/languages.lang | 0 {htdocs => public}/langs/de_CH/ldap.lang | 0 {htdocs => public}/langs/de_CH/link.lang | 0 {htdocs => public}/langs/de_CH/loan.lang | 0 {htdocs => public}/langs/de_CH/mailmanspip.lang | 0 {htdocs => public}/langs/de_CH/mails.lang | 0 {htdocs => public}/langs/de_CH/main.lang | 0 {htdocs => public}/langs/de_CH/margins.lang | 0 {htdocs => public}/langs/de_CH/members.lang | 0 {htdocs => public}/langs/de_CH/oauth.lang | 0 {htdocs => public}/langs/de_CH/opensurvey.lang | 0 {htdocs => public}/langs/de_CH/orders.lang | 0 {htdocs => public}/langs/de_CH/other.lang | 0 {htdocs => public}/langs/de_CH/paybox.lang | 0 {htdocs => public}/langs/de_CH/paypal.lang | 0 {htdocs => public}/langs/de_CH/printing.lang | 0 {htdocs => public}/langs/de_CH/productbatch.lang | 0 {htdocs => public}/langs/de_CH/products.lang | 0 {htdocs => public}/langs/de_CH/projects.lang | 0 {htdocs => public}/langs/de_CH/propal.lang | 0 {htdocs => public}/langs/de_CH/receiptprinter.lang | 0 {htdocs => public}/langs/de_CH/resource.lang | 0 {htdocs => public}/langs/de_CH/salaries.lang | 0 {htdocs => public}/langs/de_CH/sendings.lang | 0 {htdocs => public}/langs/de_CH/sms.lang | 0 {htdocs => public}/langs/de_CH/stocks.lang | 0 .../langs/de_CH/supplier_proposal.lang | 0 {htdocs => public}/langs/de_CH/suppliers.lang | 0 {htdocs => public}/langs/de_CH/trips.lang | 0 {htdocs => public}/langs/de_CH/users.lang | 0 {htdocs => public}/langs/de_CH/website.lang | 0 {htdocs => public}/langs/de_CH/withdrawals.lang | 0 {htdocs => public}/langs/de_CH/workflow.lang | 0 {htdocs => public}/langs/de_DE/accountancy.lang | 0 {htdocs => public}/langs/de_DE/admin.lang | 0 {htdocs => public}/langs/de_DE/agenda.lang | 0 {htdocs => public}/langs/de_DE/banks.lang | 0 {htdocs => public}/langs/de_DE/bills.lang | 0 {htdocs => public}/langs/de_DE/bookmarks.lang | 0 {htdocs => public}/langs/de_DE/boxes.lang | 0 {htdocs => public}/langs/de_DE/cashdesk.lang | 0 {htdocs => public}/langs/de_DE/categories.lang | 0 {htdocs => public}/langs/de_DE/commercial.lang | 0 {htdocs => public}/langs/de_DE/companies.lang | 0 {htdocs => public}/langs/de_DE/compta.lang | 0 {htdocs => public}/langs/de_DE/contracts.lang | 0 {htdocs => public}/langs/de_DE/cron.lang | 0 {htdocs => public}/langs/de_DE/deliveries.lang | 0 {htdocs => public}/langs/de_DE/dict.lang | 0 {htdocs => public}/langs/de_DE/donations.lang | 0 {htdocs => public}/langs/de_DE/ecm.lang | 0 {htdocs => public}/langs/de_DE/errors.lang | 0 {htdocs => public}/langs/de_DE/exports.lang | 0 {htdocs => public}/langs/de_DE/externalsite.lang | 0 {htdocs => public}/langs/de_DE/ftp.lang | 0 {htdocs => public}/langs/de_DE/help.lang | 0 {htdocs => public}/langs/de_DE/holiday.lang | 0 {htdocs => public}/langs/de_DE/hrm.lang | 0 {htdocs => public}/langs/de_DE/incoterm.lang | 0 {htdocs => public}/langs/de_DE/install.lang | 0 {htdocs => public}/langs/de_DE/interventions.lang | 0 {htdocs => public}/langs/de_DE/languages.lang | 0 {htdocs => public}/langs/de_DE/ldap.lang | 0 {htdocs => public}/langs/de_DE/link.lang | 0 {htdocs => public}/langs/de_DE/loan.lang | 0 {htdocs => public}/langs/de_DE/mailmanspip.lang | 0 {htdocs => public}/langs/de_DE/mails.lang | 0 {htdocs => public}/langs/de_DE/main.lang | 0 {htdocs => public}/langs/de_DE/margins.lang | 0 {htdocs => public}/langs/de_DE/members.lang | 0 {htdocs => public}/langs/de_DE/oauth.lang | 0 {htdocs => public}/langs/de_DE/opensurvey.lang | 0 {htdocs => public}/langs/de_DE/orders.lang | 0 {htdocs => public}/langs/de_DE/other.lang | 0 {htdocs => public}/langs/de_DE/paybox.lang | 0 {htdocs => public}/langs/de_DE/paypal.lang | 0 {htdocs => public}/langs/de_DE/printing.lang | 0 {htdocs => public}/langs/de_DE/productbatch.lang | 0 {htdocs => public}/langs/de_DE/products.lang | 0 {htdocs => public}/langs/de_DE/projects.lang | 0 {htdocs => public}/langs/de_DE/propal.lang | 0 {htdocs => public}/langs/de_DE/receiptprinter.lang | 0 {htdocs => public}/langs/de_DE/resource.lang | 0 {htdocs => public}/langs/de_DE/salaries.lang | 0 {htdocs => public}/langs/de_DE/sendings.lang | 0 {htdocs => public}/langs/de_DE/sms.lang | 0 {htdocs => public}/langs/de_DE/stocks.lang | 0 .../langs/de_DE/supplier_proposal.lang | 0 {htdocs => public}/langs/de_DE/suppliers.lang | 0 {htdocs => public}/langs/de_DE/trips.lang | 0 {htdocs => public}/langs/de_DE/users.lang | 0 {htdocs => public}/langs/de_DE/website.lang | 0 {htdocs => public}/langs/de_DE/withdrawals.lang | 0 {htdocs => public}/langs/de_DE/workflow.lang | 0 {htdocs => public}/langs/el_GR/accountancy.lang | 0 {htdocs => public}/langs/el_GR/admin.lang | 0 {htdocs => public}/langs/el_GR/agenda.lang | 0 {htdocs => public}/langs/el_GR/banks.lang | 0 {htdocs => public}/langs/el_GR/bills.lang | 0 {htdocs => public}/langs/el_GR/bookmarks.lang | 0 {htdocs => public}/langs/el_GR/boxes.lang | 0 {htdocs => public}/langs/el_GR/cashdesk.lang | 0 {htdocs => public}/langs/el_GR/categories.lang | 0 {htdocs => public}/langs/el_GR/commercial.lang | 0 {htdocs => public}/langs/el_GR/commissions.lang | 0 {htdocs => public}/langs/el_GR/companies.lang | 0 {htdocs => public}/langs/el_GR/compta.lang | 0 {htdocs => public}/langs/el_GR/contracts.lang | 0 {htdocs => public}/langs/el_GR/cron.lang | 0 {htdocs => public}/langs/el_GR/deliveries.lang | 0 {htdocs => public}/langs/el_GR/dict.lang | 0 {htdocs => public}/langs/el_GR/donations.lang | 0 {htdocs => public}/langs/el_GR/ecm.lang | 0 {htdocs => public}/langs/el_GR/errors.lang | 0 {htdocs => public}/langs/el_GR/exports.lang | 0 {htdocs => public}/langs/el_GR/externalsite.lang | 0 {htdocs => public}/langs/el_GR/ftp.lang | 0 {htdocs => public}/langs/el_GR/help.lang | 0 {htdocs => public}/langs/el_GR/holiday.lang | 0 {htdocs => public}/langs/el_GR/hrm.lang | 0 {htdocs => public}/langs/el_GR/incoterm.lang | 0 {htdocs => public}/langs/el_GR/install.lang | 0 {htdocs => public}/langs/el_GR/interventions.lang | 0 {htdocs => public}/langs/el_GR/languages.lang | 0 {htdocs => public}/langs/el_GR/ldap.lang | 0 {htdocs => public}/langs/el_GR/link.lang | 0 {htdocs => public}/langs/el_GR/loan.lang | 0 {htdocs => public}/langs/el_GR/mailmanspip.lang | 0 {htdocs => public}/langs/el_GR/mails.lang | 0 {htdocs => public}/langs/el_GR/main.lang | 0 {htdocs => public}/langs/el_GR/margins.lang | 0 {htdocs => public}/langs/el_GR/members.lang | 0 {htdocs => public}/langs/el_GR/oauth.lang | 0 {htdocs => public}/langs/el_GR/opensurvey.lang | 0 {htdocs => public}/langs/el_GR/orders.lang | 0 {htdocs => public}/langs/el_GR/other.lang | 0 {htdocs => public}/langs/el_GR/paybox.lang | 0 {htdocs => public}/langs/el_GR/paypal.lang | 0 {htdocs => public}/langs/el_GR/printing.lang | 0 {htdocs => public}/langs/el_GR/productbatch.lang | 0 {htdocs => public}/langs/el_GR/products.lang | 0 {htdocs => public}/langs/el_GR/projects.lang | 0 {htdocs => public}/langs/el_GR/propal.lang | 0 {htdocs => public}/langs/el_GR/receiptprinter.lang | 0 {htdocs => public}/langs/el_GR/resource.lang | 0 {htdocs => public}/langs/el_GR/salaries.lang | 0 {htdocs => public}/langs/el_GR/sendings.lang | 0 {htdocs => public}/langs/el_GR/sms.lang | 0 {htdocs => public}/langs/el_GR/stocks.lang | 0 .../langs/el_GR/supplier_proposal.lang | 0 {htdocs => public}/langs/el_GR/suppliers.lang | 0 {htdocs => public}/langs/el_GR/trips.lang | 0 {htdocs => public}/langs/el_GR/users.lang | 0 {htdocs => public}/langs/el_GR/website.lang | 0 {htdocs => public}/langs/el_GR/withdrawals.lang | 0 {htdocs => public}/langs/el_GR/workflow.lang | 0 {htdocs => public}/langs/en_AU/accountancy.lang | 0 {htdocs => public}/langs/en_AU/admin.lang | 0 {htdocs => public}/langs/en_AU/agenda.lang | 0 {htdocs => public}/langs/en_AU/banks.lang | 0 {htdocs => public}/langs/en_AU/bills.lang | 0 {htdocs => public}/langs/en_AU/bookmarks.lang | 0 {htdocs => public}/langs/en_AU/boxes.lang | 0 {htdocs => public}/langs/en_AU/cashdesk.lang | 0 {htdocs => public}/langs/en_AU/categories.lang | 0 {htdocs => public}/langs/en_AU/commercial.lang | 0 {htdocs => public}/langs/en_AU/companies.lang | 0 {htdocs => public}/langs/en_AU/compta.lang | 0 {htdocs => public}/langs/en_AU/contracts.lang | 0 {htdocs => public}/langs/en_AU/cron.lang | 0 {htdocs => public}/langs/en_AU/deliveries.lang | 0 {htdocs => public}/langs/en_AU/dict.lang | 0 {htdocs => public}/langs/en_AU/donations.lang | 0 {htdocs => public}/langs/en_AU/ecm.lang | 0 {htdocs => public}/langs/en_AU/errors.lang | 0 {htdocs => public}/langs/en_AU/exports.lang | 0 {htdocs => public}/langs/en_AU/externalsite.lang | 0 {htdocs => public}/langs/en_AU/ftp.lang | 0 {htdocs => public}/langs/en_AU/help.lang | 0 {htdocs => public}/langs/en_AU/holiday.lang | 0 {htdocs => public}/langs/en_AU/hrm.lang | 0 {htdocs => public}/langs/en_AU/incoterm.lang | 0 {htdocs => public}/langs/en_AU/install.lang | 0 {htdocs => public}/langs/en_AU/interventions.lang | 0 {htdocs => public}/langs/en_AU/languages.lang | 0 {htdocs => public}/langs/en_AU/ldap.lang | 0 {htdocs => public}/langs/en_AU/link.lang | 0 {htdocs => public}/langs/en_AU/loan.lang | 0 {htdocs => public}/langs/en_AU/mailmanspip.lang | 0 {htdocs => public}/langs/en_AU/mails.lang | 0 {htdocs => public}/langs/en_AU/main.lang | 0 {htdocs => public}/langs/en_AU/margins.lang | 0 {htdocs => public}/langs/en_AU/members.lang | 0 {htdocs => public}/langs/en_AU/oauth.lang | 0 {htdocs => public}/langs/en_AU/opensurvey.lang | 0 {htdocs => public}/langs/en_AU/orders.lang | 0 {htdocs => public}/langs/en_AU/other.lang | 0 {htdocs => public}/langs/en_AU/paybox.lang | 0 {htdocs => public}/langs/en_AU/paypal.lang | 0 {htdocs => public}/langs/en_AU/printing.lang | 0 {htdocs => public}/langs/en_AU/productbatch.lang | 0 {htdocs => public}/langs/en_AU/products.lang | 0 {htdocs => public}/langs/en_AU/projects.lang | 0 {htdocs => public}/langs/en_AU/propal.lang | 0 {htdocs => public}/langs/en_AU/receiptprinter.lang | 0 {htdocs => public}/langs/en_AU/resource.lang | 0 {htdocs => public}/langs/en_AU/salaries.lang | 0 {htdocs => public}/langs/en_AU/sendings.lang | 0 {htdocs => public}/langs/en_AU/sms.lang | 0 {htdocs => public}/langs/en_AU/stocks.lang | 0 .../langs/en_AU/supplier_proposal.lang | 0 {htdocs => public}/langs/en_AU/suppliers.lang | 0 {htdocs => public}/langs/en_AU/trips.lang | 0 {htdocs => public}/langs/en_AU/users.lang | 0 {htdocs => public}/langs/en_AU/website.lang | 0 {htdocs => public}/langs/en_AU/withdrawals.lang | 0 {htdocs => public}/langs/en_AU/workflow.lang | 0 {htdocs => public}/langs/en_CA/accountancy.lang | 0 {htdocs => public}/langs/en_CA/admin.lang | 0 {htdocs => public}/langs/en_CA/agenda.lang | 0 {htdocs => public}/langs/en_CA/banks.lang | 0 {htdocs => public}/langs/en_CA/bills.lang | 0 {htdocs => public}/langs/en_CA/bookmarks.lang | 0 {htdocs => public}/langs/en_CA/boxes.lang | 0 {htdocs => public}/langs/en_CA/cashdesk.lang | 0 {htdocs => public}/langs/en_CA/categories.lang | 0 {htdocs => public}/langs/en_CA/commercial.lang | 0 {htdocs => public}/langs/en_CA/companies.lang | 0 {htdocs => public}/langs/en_CA/compta.lang | 0 {htdocs => public}/langs/en_CA/contracts.lang | 0 {htdocs => public}/langs/en_CA/cron.lang | 0 {htdocs => public}/langs/en_CA/deliveries.lang | 0 {htdocs => public}/langs/en_CA/dict.lang | 0 {htdocs => public}/langs/en_CA/donations.lang | 0 {htdocs => public}/langs/en_CA/ecm.lang | 0 {htdocs => public}/langs/en_CA/errors.lang | 0 {htdocs => public}/langs/en_CA/exports.lang | 0 {htdocs => public}/langs/en_CA/externalsite.lang | 0 {htdocs => public}/langs/en_CA/ftp.lang | 0 {htdocs => public}/langs/en_CA/help.lang | 0 {htdocs => public}/langs/en_CA/holiday.lang | 0 {htdocs => public}/langs/en_CA/hrm.lang | 0 {htdocs => public}/langs/en_CA/incoterm.lang | 0 {htdocs => public}/langs/en_CA/install.lang | 0 {htdocs => public}/langs/en_CA/interventions.lang | 0 {htdocs => public}/langs/en_CA/languages.lang | 0 {htdocs => public}/langs/en_CA/ldap.lang | 0 {htdocs => public}/langs/en_CA/link.lang | 0 {htdocs => public}/langs/en_CA/loan.lang | 0 {htdocs => public}/langs/en_CA/mailmanspip.lang | 0 {htdocs => public}/langs/en_CA/mails.lang | 0 {htdocs => public}/langs/en_CA/main.lang | 0 {htdocs => public}/langs/en_CA/margins.lang | 0 {htdocs => public}/langs/en_CA/members.lang | 0 {htdocs => public}/langs/en_CA/oauth.lang | 0 {htdocs => public}/langs/en_CA/opensurvey.lang | 0 {htdocs => public}/langs/en_CA/orders.lang | 0 {htdocs => public}/langs/en_CA/other.lang | 0 {htdocs => public}/langs/en_CA/paybox.lang | 0 {htdocs => public}/langs/en_CA/paypal.lang | 0 {htdocs => public}/langs/en_CA/printing.lang | 0 {htdocs => public}/langs/en_CA/productbatch.lang | 0 {htdocs => public}/langs/en_CA/products.lang | 0 {htdocs => public}/langs/en_CA/projects.lang | 0 {htdocs => public}/langs/en_CA/propal.lang | 0 {htdocs => public}/langs/en_CA/receiptprinter.lang | 0 {htdocs => public}/langs/en_CA/resource.lang | 0 {htdocs => public}/langs/en_CA/salaries.lang | 0 {htdocs => public}/langs/en_CA/sendings.lang | 0 {htdocs => public}/langs/en_CA/sms.lang | 0 {htdocs => public}/langs/en_CA/stocks.lang | 0 .../langs/en_CA/supplier_proposal.lang | 0 {htdocs => public}/langs/en_CA/suppliers.lang | 0 {htdocs => public}/langs/en_CA/trips.lang | 0 {htdocs => public}/langs/en_CA/users.lang | 0 {htdocs => public}/langs/en_CA/website.lang | 0 {htdocs => public}/langs/en_CA/withdrawals.lang | 0 {htdocs => public}/langs/en_CA/workflow.lang | 0 {htdocs => public}/langs/en_GB/accountancy.lang | 0 {htdocs => public}/langs/en_GB/admin.lang | 0 {htdocs => public}/langs/en_GB/agenda.lang | 0 {htdocs => public}/langs/en_GB/banks.lang | 0 {htdocs => public}/langs/en_GB/bills.lang | 0 {htdocs => public}/langs/en_GB/bookmarks.lang | 0 {htdocs => public}/langs/en_GB/boxes.lang | 0 {htdocs => public}/langs/en_GB/cashdesk.lang | 0 {htdocs => public}/langs/en_GB/categories.lang | 0 {htdocs => public}/langs/en_GB/commercial.lang | 0 {htdocs => public}/langs/en_GB/companies.lang | 0 {htdocs => public}/langs/en_GB/compta.lang | 0 {htdocs => public}/langs/en_GB/contracts.lang | 0 {htdocs => public}/langs/en_GB/cron.lang | 0 {htdocs => public}/langs/en_GB/deliveries.lang | 0 {htdocs => public}/langs/en_GB/dict.lang | 0 {htdocs => public}/langs/en_GB/donations.lang | 0 {htdocs => public}/langs/en_GB/ecm.lang | 0 {htdocs => public}/langs/en_GB/errors.lang | 0 {htdocs => public}/langs/en_GB/exports.lang | 0 {htdocs => public}/langs/en_GB/externalsite.lang | 0 {htdocs => public}/langs/en_GB/ftp.lang | 0 {htdocs => public}/langs/en_GB/help.lang | 0 {htdocs => public}/langs/en_GB/holiday.lang | 0 {htdocs => public}/langs/en_GB/hrm.lang | 0 {htdocs => public}/langs/en_GB/incoterm.lang | 0 {htdocs => public}/langs/en_GB/install.lang | 0 {htdocs => public}/langs/en_GB/interventions.lang | 0 {htdocs => public}/langs/en_GB/languages.lang | 0 {htdocs => public}/langs/en_GB/ldap.lang | 0 {htdocs => public}/langs/en_GB/link.lang | 0 {htdocs => public}/langs/en_GB/loan.lang | 0 {htdocs => public}/langs/en_GB/mailmanspip.lang | 0 {htdocs => public}/langs/en_GB/mails.lang | 0 {htdocs => public}/langs/en_GB/main.lang | 0 {htdocs => public}/langs/en_GB/margins.lang | 0 {htdocs => public}/langs/en_GB/members.lang | 0 {htdocs => public}/langs/en_GB/oauth.lang | 0 {htdocs => public}/langs/en_GB/opensurvey.lang | 0 {htdocs => public}/langs/en_GB/orders.lang | 0 {htdocs => public}/langs/en_GB/other.lang | 0 {htdocs => public}/langs/en_GB/paybox.lang | 0 {htdocs => public}/langs/en_GB/paypal.lang | 0 {htdocs => public}/langs/en_GB/printing.lang | 0 {htdocs => public}/langs/en_GB/productbatch.lang | 0 {htdocs => public}/langs/en_GB/products.lang | 0 {htdocs => public}/langs/en_GB/projects.lang | 0 {htdocs => public}/langs/en_GB/propal.lang | 0 {htdocs => public}/langs/en_GB/receiptprinter.lang | 0 {htdocs => public}/langs/en_GB/resource.lang | 0 {htdocs => public}/langs/en_GB/salaries.lang | 0 {htdocs => public}/langs/en_GB/sendings.lang | 0 {htdocs => public}/langs/en_GB/sms.lang | 0 {htdocs => public}/langs/en_GB/stocks.lang | 0 .../langs/en_GB/supplier_proposal.lang | 0 {htdocs => public}/langs/en_GB/suppliers.lang | 0 {htdocs => public}/langs/en_GB/trips.lang | 0 {htdocs => public}/langs/en_GB/users.lang | 0 {htdocs => public}/langs/en_GB/website.lang | 0 {htdocs => public}/langs/en_GB/withdrawals.lang | 0 {htdocs => public}/langs/en_GB/workflow.lang | 0 {htdocs => public}/langs/en_IN/accountancy.lang | 0 {htdocs => public}/langs/en_IN/admin.lang | 0 {htdocs => public}/langs/en_IN/agenda.lang | 0 {htdocs => public}/langs/en_IN/banks.lang | 0 {htdocs => public}/langs/en_IN/bills.lang | 0 {htdocs => public}/langs/en_IN/bookmarks.lang | 0 {htdocs => public}/langs/en_IN/boxes.lang | 0 {htdocs => public}/langs/en_IN/cashdesk.lang | 0 {htdocs => public}/langs/en_IN/categories.lang | 0 {htdocs => public}/langs/en_IN/commercial.lang | 0 {htdocs => public}/langs/en_IN/companies.lang | 0 {htdocs => public}/langs/en_IN/compta.lang | 0 {htdocs => public}/langs/en_IN/contracts.lang | 0 {htdocs => public}/langs/en_IN/cron.lang | 0 {htdocs => public}/langs/en_IN/deliveries.lang | 0 {htdocs => public}/langs/en_IN/dict.lang | 0 {htdocs => public}/langs/en_IN/donations.lang | 0 {htdocs => public}/langs/en_IN/ecm.lang | 0 {htdocs => public}/langs/en_IN/errors.lang | 0 {htdocs => public}/langs/en_IN/exports.lang | 0 {htdocs => public}/langs/en_IN/externalsite.lang | 0 {htdocs => public}/langs/en_IN/ftp.lang | 0 {htdocs => public}/langs/en_IN/help.lang | 0 {htdocs => public}/langs/en_IN/holiday.lang | 0 {htdocs => public}/langs/en_IN/hrm.lang | 0 {htdocs => public}/langs/en_IN/incoterm.lang | 0 {htdocs => public}/langs/en_IN/install.lang | 0 {htdocs => public}/langs/en_IN/interventions.lang | 0 {htdocs => public}/langs/en_IN/languages.lang | 0 {htdocs => public}/langs/en_IN/ldap.lang | 0 {htdocs => public}/langs/en_IN/link.lang | 0 {htdocs => public}/langs/en_IN/loan.lang | 0 {htdocs => public}/langs/en_IN/mailmanspip.lang | 0 {htdocs => public}/langs/en_IN/mails.lang | 0 {htdocs => public}/langs/en_IN/main.lang | 0 {htdocs => public}/langs/en_IN/margins.lang | 0 {htdocs => public}/langs/en_IN/members.lang | 0 {htdocs => public}/langs/en_IN/oauth.lang | 0 {htdocs => public}/langs/en_IN/opensurvey.lang | 0 {htdocs => public}/langs/en_IN/orders.lang | 0 {htdocs => public}/langs/en_IN/other.lang | 0 {htdocs => public}/langs/en_IN/paybox.lang | 0 {htdocs => public}/langs/en_IN/paypal.lang | 0 {htdocs => public}/langs/en_IN/printing.lang | 0 {htdocs => public}/langs/en_IN/productbatch.lang | 0 {htdocs => public}/langs/en_IN/products.lang | 0 {htdocs => public}/langs/en_IN/projects.lang | 0 {htdocs => public}/langs/en_IN/propal.lang | 0 {htdocs => public}/langs/en_IN/receiptprinter.lang | 0 {htdocs => public}/langs/en_IN/resource.lang | 0 {htdocs => public}/langs/en_IN/salaries.lang | 0 {htdocs => public}/langs/en_IN/sendings.lang | 0 {htdocs => public}/langs/en_IN/sms.lang | 0 {htdocs => public}/langs/en_IN/stocks.lang | 0 .../langs/en_IN/supplier_proposal.lang | 0 {htdocs => public}/langs/en_IN/suppliers.lang | 0 {htdocs => public}/langs/en_IN/trips.lang | 0 {htdocs => public}/langs/en_IN/users.lang | 0 {htdocs => public}/langs/en_IN/website.lang | 0 {htdocs => public}/langs/en_IN/withdrawals.lang | 0 {htdocs => public}/langs/en_IN/workflow.lang | 0 {htdocs => public}/langs/en_NZ/companies.lang | 0 {htdocs => public}/langs/en_NZ/compta.lang | 0 {htdocs => public}/langs/en_NZ/main.lang | 0 {htdocs => public}/langs/en_SA/main.lang | 0 {htdocs => public}/langs/en_SA/propal.lang | 0 {htdocs => public}/langs/en_US/accountancy.lang | 0 {htdocs => public}/langs/en_US/admin.lang | 0 {htdocs => public}/langs/en_US/agenda.lang | 0 {htdocs => public}/langs/en_US/banks.lang | 0 {htdocs => public}/langs/en_US/bills.lang | 0 {htdocs => public}/langs/en_US/bookmarks.lang | 0 {htdocs => public}/langs/en_US/boxes.lang | 0 {htdocs => public}/langs/en_US/cashdesk.lang | 0 {htdocs => public}/langs/en_US/categories.lang | 0 {htdocs => public}/langs/en_US/commercial.lang | 0 {htdocs => public}/langs/en_US/companies.lang | 0 {htdocs => public}/langs/en_US/compta.lang | 0 {htdocs => public}/langs/en_US/contracts.lang | 0 {htdocs => public}/langs/en_US/cron.lang | 0 {htdocs => public}/langs/en_US/deliveries.lang | 0 {htdocs => public}/langs/en_US/dict.lang | 0 {htdocs => public}/langs/en_US/donations.lang | 0 {htdocs => public}/langs/en_US/ecm.lang | 0 {htdocs => public}/langs/en_US/errors.lang | 0 {htdocs => public}/langs/en_US/exports.lang | 0 {htdocs => public}/langs/en_US/externalsite.lang | 0 {htdocs => public}/langs/en_US/ftp.lang | 0 {htdocs => public}/langs/en_US/help.lang | 0 {htdocs => public}/langs/en_US/holiday.lang | 0 {htdocs => public}/langs/en_US/hrm.lang | 0 {htdocs => public}/langs/en_US/incoterm.lang | 0 {htdocs => public}/langs/en_US/install.lang | 0 {htdocs => public}/langs/en_US/interventions.lang | 0 {htdocs => public}/langs/en_US/languages.lang | 0 {htdocs => public}/langs/en_US/ldap.lang | 0 {htdocs => public}/langs/en_US/link.lang | 0 {htdocs => public}/langs/en_US/loan.lang | 0 {htdocs => public}/langs/en_US/mailmanspip.lang | 0 {htdocs => public}/langs/en_US/mails.lang | 0 {htdocs => public}/langs/en_US/main.lang | 0 {htdocs => public}/langs/en_US/margins.lang | 0 {htdocs => public}/langs/en_US/members.lang | 0 {htdocs => public}/langs/en_US/multicurrency.lang | 0 {htdocs => public}/langs/en_US/oauth.lang | 0 {htdocs => public}/langs/en_US/opensurvey.lang | 0 {htdocs => public}/langs/en_US/orders.lang | 0 {htdocs => public}/langs/en_US/other.lang | 0 {htdocs => public}/langs/en_US/paybox.lang | 0 {htdocs => public}/langs/en_US/paypal.lang | 0 {htdocs => public}/langs/en_US/printing.lang | 0 {htdocs => public}/langs/en_US/productbatch.lang | 0 {htdocs => public}/langs/en_US/products.lang | 0 {htdocs => public}/langs/en_US/projects.lang | 0 {htdocs => public}/langs/en_US/propal.lang | 0 {htdocs => public}/langs/en_US/receiptprinter.lang | 0 {htdocs => public}/langs/en_US/resource.lang | 0 {htdocs => public}/langs/en_US/salaries.lang | 0 {htdocs => public}/langs/en_US/sendings.lang | 0 {htdocs => public}/langs/en_US/sms.lang | 0 {htdocs => public}/langs/en_US/stocks.lang | 0 .../langs/en_US/supplier_proposal.lang | 0 {htdocs => public}/langs/en_US/suppliers.lang | 0 {htdocs => public}/langs/en_US/trips.lang | 0 {htdocs => public}/langs/en_US/users.lang | 0 {htdocs => public}/langs/en_US/website.lang | 0 {htdocs => public}/langs/en_US/withdrawals.lang | 0 {htdocs => public}/langs/en_US/workflow.lang | 0 {htdocs => public}/langs/en_ZA/main.lang | 0 {htdocs => public}/langs/es_AR/accountancy.lang | 0 {htdocs => public}/langs/es_AR/admin.lang | 0 {htdocs => public}/langs/es_AR/agenda.lang | 0 {htdocs => public}/langs/es_AR/banks.lang | 0 {htdocs => public}/langs/es_AR/bills.lang | 0 {htdocs => public}/langs/es_AR/bookmarks.lang | 0 {htdocs => public}/langs/es_AR/boxes.lang | 0 {htdocs => public}/langs/es_AR/cashdesk.lang | 0 {htdocs => public}/langs/es_AR/categories.lang | 0 {htdocs => public}/langs/es_AR/commercial.lang | 0 {htdocs => public}/langs/es_AR/companies.lang | 0 {htdocs => public}/langs/es_AR/compta.lang | 0 {htdocs => public}/langs/es_AR/contracts.lang | 0 {htdocs => public}/langs/es_AR/cron.lang | 0 {htdocs => public}/langs/es_AR/deliveries.lang | 0 {htdocs => public}/langs/es_AR/dict.lang | 0 {htdocs => public}/langs/es_AR/donations.lang | 0 {htdocs => public}/langs/es_AR/ecm.lang | 0 {htdocs => public}/langs/es_AR/errors.lang | 0 {htdocs => public}/langs/es_AR/exports.lang | 0 {htdocs => public}/langs/es_AR/externalsite.lang | 0 {htdocs => public}/langs/es_AR/ftp.lang | 0 {htdocs => public}/langs/es_AR/help.lang | 0 {htdocs => public}/langs/es_AR/holiday.lang | 0 {htdocs => public}/langs/es_AR/hrm.lang | 0 {htdocs => public}/langs/es_AR/incoterm.lang | 0 {htdocs => public}/langs/es_AR/install.lang | 0 {htdocs => public}/langs/es_AR/interventions.lang | 0 {htdocs => public}/langs/es_AR/languages.lang | 0 {htdocs => public}/langs/es_AR/ldap.lang | 0 {htdocs => public}/langs/es_AR/link.lang | 0 {htdocs => public}/langs/es_AR/loan.lang | 0 {htdocs => public}/langs/es_AR/mailmanspip.lang | 0 {htdocs => public}/langs/es_AR/mails.lang | 0 {htdocs => public}/langs/es_AR/main.lang | 0 {htdocs => public}/langs/es_AR/margins.lang | 0 {htdocs => public}/langs/es_AR/members.lang | 0 {htdocs => public}/langs/es_AR/oauth.lang | 0 {htdocs => public}/langs/es_AR/opensurvey.lang | 0 {htdocs => public}/langs/es_AR/orders.lang | 0 {htdocs => public}/langs/es_AR/other.lang | 0 {htdocs => public}/langs/es_AR/paybox.lang | 0 {htdocs => public}/langs/es_AR/paypal.lang | 0 {htdocs => public}/langs/es_AR/printing.lang | 0 {htdocs => public}/langs/es_AR/productbatch.lang | 0 {htdocs => public}/langs/es_AR/products.lang | 0 {htdocs => public}/langs/es_AR/projects.lang | 0 {htdocs => public}/langs/es_AR/propal.lang | 0 {htdocs => public}/langs/es_AR/receiptprinter.lang | 0 {htdocs => public}/langs/es_AR/resource.lang | 0 {htdocs => public}/langs/es_AR/salaries.lang | 0 {htdocs => public}/langs/es_AR/sendings.lang | 0 {htdocs => public}/langs/es_AR/sms.lang | 0 {htdocs => public}/langs/es_AR/stocks.lang | 0 .../langs/es_AR/supplier_proposal.lang | 0 {htdocs => public}/langs/es_AR/suppliers.lang | 0 {htdocs => public}/langs/es_AR/trips.lang | 0 {htdocs => public}/langs/es_AR/users.lang | 0 {htdocs => public}/langs/es_AR/website.lang | 0 {htdocs => public}/langs/es_AR/withdrawals.lang | 0 {htdocs => public}/langs/es_AR/workflow.lang | 0 {htdocs => public}/langs/es_BO/accountancy.lang | 0 {htdocs => public}/langs/es_BO/admin.lang | 0 {htdocs => public}/langs/es_BO/agenda.lang | 0 {htdocs => public}/langs/es_BO/banks.lang | 0 {htdocs => public}/langs/es_BO/bills.lang | 0 {htdocs => public}/langs/es_BO/bookmarks.lang | 0 {htdocs => public}/langs/es_BO/boxes.lang | 0 {htdocs => public}/langs/es_BO/cashdesk.lang | 0 {htdocs => public}/langs/es_BO/categories.lang | 0 {htdocs => public}/langs/es_BO/commercial.lang | 0 {htdocs => public}/langs/es_BO/companies.lang | 0 {htdocs => public}/langs/es_BO/compta.lang | 0 {htdocs => public}/langs/es_BO/contracts.lang | 0 {htdocs => public}/langs/es_BO/cron.lang | 0 {htdocs => public}/langs/es_BO/deliveries.lang | 0 {htdocs => public}/langs/es_BO/dict.lang | 0 {htdocs => public}/langs/es_BO/donations.lang | 0 {htdocs => public}/langs/es_BO/ecm.lang | 0 {htdocs => public}/langs/es_BO/errors.lang | 0 {htdocs => public}/langs/es_BO/exports.lang | 0 {htdocs => public}/langs/es_BO/externalsite.lang | 0 {htdocs => public}/langs/es_BO/ftp.lang | 0 {htdocs => public}/langs/es_BO/help.lang | 0 {htdocs => public}/langs/es_BO/holiday.lang | 0 {htdocs => public}/langs/es_BO/hrm.lang | 0 {htdocs => public}/langs/es_BO/incoterm.lang | 0 {htdocs => public}/langs/es_BO/install.lang | 0 {htdocs => public}/langs/es_BO/interventions.lang | 0 {htdocs => public}/langs/es_BO/languages.lang | 0 {htdocs => public}/langs/es_BO/ldap.lang | 0 {htdocs => public}/langs/es_BO/link.lang | 0 {htdocs => public}/langs/es_BO/loan.lang | 0 {htdocs => public}/langs/es_BO/mailmanspip.lang | 0 {htdocs => public}/langs/es_BO/mails.lang | 0 {htdocs => public}/langs/es_BO/main.lang | 0 {htdocs => public}/langs/es_BO/margins.lang | 0 {htdocs => public}/langs/es_BO/members.lang | 0 {htdocs => public}/langs/es_BO/oauth.lang | 0 {htdocs => public}/langs/es_BO/opensurvey.lang | 0 {htdocs => public}/langs/es_BO/orders.lang | 0 {htdocs => public}/langs/es_BO/other.lang | 0 {htdocs => public}/langs/es_BO/paybox.lang | 0 {htdocs => public}/langs/es_BO/paypal.lang | 0 {htdocs => public}/langs/es_BO/printing.lang | 0 {htdocs => public}/langs/es_BO/productbatch.lang | 0 {htdocs => public}/langs/es_BO/products.lang | 0 {htdocs => public}/langs/es_BO/projects.lang | 0 {htdocs => public}/langs/es_BO/propal.lang | 0 {htdocs => public}/langs/es_BO/receiptprinter.lang | 0 {htdocs => public}/langs/es_BO/resource.lang | 0 {htdocs => public}/langs/es_BO/salaries.lang | 0 {htdocs => public}/langs/es_BO/sendings.lang | 0 {htdocs => public}/langs/es_BO/sms.lang | 0 {htdocs => public}/langs/es_BO/stocks.lang | 0 .../langs/es_BO/supplier_proposal.lang | 0 {htdocs => public}/langs/es_BO/suppliers.lang | 0 {htdocs => public}/langs/es_BO/trips.lang | 0 {htdocs => public}/langs/es_BO/users.lang | 0 {htdocs => public}/langs/es_BO/website.lang | 0 {htdocs => public}/langs/es_BO/withdrawals.lang | 0 {htdocs => public}/langs/es_BO/workflow.lang | 0 {htdocs => public}/langs/es_CL/accountancy.lang | 0 {htdocs => public}/langs/es_CL/admin.lang | 0 {htdocs => public}/langs/es_CL/agenda.lang | 0 {htdocs => public}/langs/es_CL/banks.lang | 0 {htdocs => public}/langs/es_CL/bills.lang | 0 {htdocs => public}/langs/es_CL/bookmarks.lang | 0 {htdocs => public}/langs/es_CL/boxes.lang | 0 {htdocs => public}/langs/es_CL/cashdesk.lang | 0 {htdocs => public}/langs/es_CL/categories.lang | 0 {htdocs => public}/langs/es_CL/commercial.lang | 0 {htdocs => public}/langs/es_CL/companies.lang | 0 {htdocs => public}/langs/es_CL/compta.lang | 0 {htdocs => public}/langs/es_CL/contracts.lang | 0 {htdocs => public}/langs/es_CL/cron.lang | 0 {htdocs => public}/langs/es_CL/deliveries.lang | 0 {htdocs => public}/langs/es_CL/dict.lang | 0 {htdocs => public}/langs/es_CL/donations.lang | 0 {htdocs => public}/langs/es_CL/ecm.lang | 0 {htdocs => public}/langs/es_CL/errors.lang | 0 {htdocs => public}/langs/es_CL/exports.lang | 0 {htdocs => public}/langs/es_CL/externalsite.lang | 0 {htdocs => public}/langs/es_CL/ftp.lang | 0 {htdocs => public}/langs/es_CL/help.lang | 0 {htdocs => public}/langs/es_CL/holiday.lang | 0 {htdocs => public}/langs/es_CL/hrm.lang | 0 {htdocs => public}/langs/es_CL/incoterm.lang | 0 {htdocs => public}/langs/es_CL/install.lang | 0 {htdocs => public}/langs/es_CL/interventions.lang | 0 {htdocs => public}/langs/es_CL/languages.lang | 0 {htdocs => public}/langs/es_CL/ldap.lang | 0 {htdocs => public}/langs/es_CL/link.lang | 0 {htdocs => public}/langs/es_CL/loan.lang | 0 {htdocs => public}/langs/es_CL/mailmanspip.lang | 0 {htdocs => public}/langs/es_CL/mails.lang | 0 {htdocs => public}/langs/es_CL/main.lang | 0 {htdocs => public}/langs/es_CL/margins.lang | 0 {htdocs => public}/langs/es_CL/members.lang | 0 {htdocs => public}/langs/es_CL/oauth.lang | 0 {htdocs => public}/langs/es_CL/opensurvey.lang | 0 {htdocs => public}/langs/es_CL/orders.lang | 0 {htdocs => public}/langs/es_CL/other.lang | 0 {htdocs => public}/langs/es_CL/paybox.lang | 0 {htdocs => public}/langs/es_CL/paypal.lang | 0 {htdocs => public}/langs/es_CL/printing.lang | 0 {htdocs => public}/langs/es_CL/productbatch.lang | 0 {htdocs => public}/langs/es_CL/products.lang | 0 {htdocs => public}/langs/es_CL/projects.lang | 0 {htdocs => public}/langs/es_CL/propal.lang | 0 {htdocs => public}/langs/es_CL/receiptprinter.lang | 0 {htdocs => public}/langs/es_CL/resource.lang | 0 {htdocs => public}/langs/es_CL/salaries.lang | 0 {htdocs => public}/langs/es_CL/sendings.lang | 0 {htdocs => public}/langs/es_CL/sms.lang | 0 {htdocs => public}/langs/es_CL/stocks.lang | 0 .../langs/es_CL/supplier_proposal.lang | 0 {htdocs => public}/langs/es_CL/suppliers.lang | 0 {htdocs => public}/langs/es_CL/trips.lang | 0 {htdocs => public}/langs/es_CL/users.lang | 0 {htdocs => public}/langs/es_CL/website.lang | 0 {htdocs => public}/langs/es_CL/withdrawals.lang | 0 {htdocs => public}/langs/es_CL/workflow.lang | 0 {htdocs => public}/langs/es_CO/accountancy.lang | 0 {htdocs => public}/langs/es_CO/admin.lang | 0 {htdocs => public}/langs/es_CO/agenda.lang | 0 {htdocs => public}/langs/es_CO/banks.lang | 0 {htdocs => public}/langs/es_CO/bills.lang | 0 {htdocs => public}/langs/es_CO/bookmarks.lang | 0 {htdocs => public}/langs/es_CO/boxes.lang | 0 {htdocs => public}/langs/es_CO/cashdesk.lang | 0 {htdocs => public}/langs/es_CO/categories.lang | 0 {htdocs => public}/langs/es_CO/commercial.lang | 0 {htdocs => public}/langs/es_CO/companies.lang | 0 {htdocs => public}/langs/es_CO/compta.lang | 0 {htdocs => public}/langs/es_CO/contracts.lang | 0 {htdocs => public}/langs/es_CO/cron.lang | 0 {htdocs => public}/langs/es_CO/deliveries.lang | 0 {htdocs => public}/langs/es_CO/dict.lang | 0 {htdocs => public}/langs/es_CO/donations.lang | 0 {htdocs => public}/langs/es_CO/ecm.lang | 0 {htdocs => public}/langs/es_CO/errors.lang | 0 {htdocs => public}/langs/es_CO/exports.lang | 0 {htdocs => public}/langs/es_CO/externalsite.lang | 0 {htdocs => public}/langs/es_CO/ftp.lang | 0 {htdocs => public}/langs/es_CO/help.lang | 0 {htdocs => public}/langs/es_CO/holiday.lang | 0 {htdocs => public}/langs/es_CO/hrm.lang | 0 {htdocs => public}/langs/es_CO/incoterm.lang | 0 {htdocs => public}/langs/es_CO/install.lang | 0 {htdocs => public}/langs/es_CO/interventions.lang | 0 {htdocs => public}/langs/es_CO/languages.lang | 0 {htdocs => public}/langs/es_CO/ldap.lang | 0 {htdocs => public}/langs/es_CO/link.lang | 0 {htdocs => public}/langs/es_CO/loan.lang | 0 {htdocs => public}/langs/es_CO/mailmanspip.lang | 0 {htdocs => public}/langs/es_CO/mails.lang | 0 {htdocs => public}/langs/es_CO/main.lang | 0 {htdocs => public}/langs/es_CO/margins.lang | 0 {htdocs => public}/langs/es_CO/members.lang | 0 {htdocs => public}/langs/es_CO/oauth.lang | 0 {htdocs => public}/langs/es_CO/opensurvey.lang | 0 {htdocs => public}/langs/es_CO/orders.lang | 0 {htdocs => public}/langs/es_CO/other.lang | 0 {htdocs => public}/langs/es_CO/paybox.lang | 0 {htdocs => public}/langs/es_CO/paypal.lang | 0 {htdocs => public}/langs/es_CO/printing.lang | 0 {htdocs => public}/langs/es_CO/productbatch.lang | 0 {htdocs => public}/langs/es_CO/products.lang | 0 {htdocs => public}/langs/es_CO/projects.lang | 0 {htdocs => public}/langs/es_CO/propal.lang | 0 {htdocs => public}/langs/es_CO/receiptprinter.lang | 0 {htdocs => public}/langs/es_CO/resource.lang | 0 {htdocs => public}/langs/es_CO/salaries.lang | 0 {htdocs => public}/langs/es_CO/sendings.lang | 0 {htdocs => public}/langs/es_CO/sms.lang | 0 {htdocs => public}/langs/es_CO/stocks.lang | 0 .../langs/es_CO/supplier_proposal.lang | 0 {htdocs => public}/langs/es_CO/suppliers.lang | 0 {htdocs => public}/langs/es_CO/trips.lang | 0 {htdocs => public}/langs/es_CO/users.lang | 0 {htdocs => public}/langs/es_CO/website.lang | 0 {htdocs => public}/langs/es_CO/withdrawals.lang | 0 {htdocs => public}/langs/es_CO/workflow.lang | 0 {htdocs => public}/langs/es_DO/accountancy.lang | 0 {htdocs => public}/langs/es_DO/admin.lang | 0 {htdocs => public}/langs/es_DO/agenda.lang | 0 {htdocs => public}/langs/es_DO/banks.lang | 0 {htdocs => public}/langs/es_DO/bills.lang | 0 {htdocs => public}/langs/es_DO/bookmarks.lang | 0 {htdocs => public}/langs/es_DO/boxes.lang | 0 {htdocs => public}/langs/es_DO/cashdesk.lang | 0 {htdocs => public}/langs/es_DO/categories.lang | 0 {htdocs => public}/langs/es_DO/commercial.lang | 0 {htdocs => public}/langs/es_DO/companies.lang | 0 {htdocs => public}/langs/es_DO/compta.lang | 0 {htdocs => public}/langs/es_DO/contracts.lang | 0 {htdocs => public}/langs/es_DO/cron.lang | 0 {htdocs => public}/langs/es_DO/deliveries.lang | 0 {htdocs => public}/langs/es_DO/dict.lang | 0 {htdocs => public}/langs/es_DO/donations.lang | 0 {htdocs => public}/langs/es_DO/ecm.lang | 0 {htdocs => public}/langs/es_DO/errors.lang | 0 {htdocs => public}/langs/es_DO/exports.lang | 0 {htdocs => public}/langs/es_DO/externalsite.lang | 0 {htdocs => public}/langs/es_DO/ftp.lang | 0 {htdocs => public}/langs/es_DO/help.lang | 0 {htdocs => public}/langs/es_DO/holiday.lang | 0 {htdocs => public}/langs/es_DO/hrm.lang | 0 {htdocs => public}/langs/es_DO/incoterm.lang | 0 {htdocs => public}/langs/es_DO/install.lang | 0 {htdocs => public}/langs/es_DO/interventions.lang | 0 {htdocs => public}/langs/es_DO/languages.lang | 0 {htdocs => public}/langs/es_DO/ldap.lang | 0 {htdocs => public}/langs/es_DO/link.lang | 0 {htdocs => public}/langs/es_DO/loan.lang | 0 {htdocs => public}/langs/es_DO/mailmanspip.lang | 0 {htdocs => public}/langs/es_DO/mails.lang | 0 {htdocs => public}/langs/es_DO/main.lang | 0 {htdocs => public}/langs/es_DO/margins.lang | 0 {htdocs => public}/langs/es_DO/members.lang | 0 {htdocs => public}/langs/es_DO/oauth.lang | 0 {htdocs => public}/langs/es_DO/opensurvey.lang | 0 {htdocs => public}/langs/es_DO/orders.lang | 0 {htdocs => public}/langs/es_DO/other.lang | 0 {htdocs => public}/langs/es_DO/paybox.lang | 0 {htdocs => public}/langs/es_DO/paypal.lang | 0 {htdocs => public}/langs/es_DO/printing.lang | 0 {htdocs => public}/langs/es_DO/productbatch.lang | 0 {htdocs => public}/langs/es_DO/products.lang | 0 {htdocs => public}/langs/es_DO/projects.lang | 0 {htdocs => public}/langs/es_DO/propal.lang | 0 {htdocs => public}/langs/es_DO/receiptprinter.lang | 0 {htdocs => public}/langs/es_DO/resource.lang | 0 {htdocs => public}/langs/es_DO/salaries.lang | 0 {htdocs => public}/langs/es_DO/sendings.lang | 0 {htdocs => public}/langs/es_DO/sms.lang | 0 {htdocs => public}/langs/es_DO/stocks.lang | 0 .../langs/es_DO/supplier_proposal.lang | 0 {htdocs => public}/langs/es_DO/suppliers.lang | 0 {htdocs => public}/langs/es_DO/trips.lang | 0 {htdocs => public}/langs/es_DO/users.lang | 0 {htdocs => public}/langs/es_DO/website.lang | 0 {htdocs => public}/langs/es_DO/withdrawals.lang | 0 {htdocs => public}/langs/es_DO/workflow.lang | 0 {htdocs => public}/langs/es_EC/accountancy.lang | 0 {htdocs => public}/langs/es_EC/admin.lang | 0 {htdocs => public}/langs/es_EC/agenda.lang | 0 {htdocs => public}/langs/es_EC/banks.lang | 0 {htdocs => public}/langs/es_EC/bills.lang | 0 {htdocs => public}/langs/es_EC/bookmarks.lang | 0 {htdocs => public}/langs/es_EC/boxes.lang | 0 {htdocs => public}/langs/es_EC/cashdesk.lang | 0 {htdocs => public}/langs/es_EC/categories.lang | 0 {htdocs => public}/langs/es_EC/commercial.lang | 0 {htdocs => public}/langs/es_EC/companies.lang | 0 {htdocs => public}/langs/es_EC/compta.lang | 0 {htdocs => public}/langs/es_EC/contracts.lang | 0 {htdocs => public}/langs/es_EC/cron.lang | 0 {htdocs => public}/langs/es_EC/deliveries.lang | 0 {htdocs => public}/langs/es_EC/dict.lang | 0 {htdocs => public}/langs/es_EC/donations.lang | 0 {htdocs => public}/langs/es_EC/ecm.lang | 0 {htdocs => public}/langs/es_EC/errors.lang | 0 {htdocs => public}/langs/es_EC/exports.lang | 0 {htdocs => public}/langs/es_EC/externalsite.lang | 0 {htdocs => public}/langs/es_EC/ftp.lang | 0 {htdocs => public}/langs/es_EC/help.lang | 0 {htdocs => public}/langs/es_EC/holiday.lang | 0 {htdocs => public}/langs/es_EC/hrm.lang | 0 {htdocs => public}/langs/es_EC/incoterm.lang | 0 {htdocs => public}/langs/es_EC/install.lang | 0 {htdocs => public}/langs/es_EC/interventions.lang | 0 {htdocs => public}/langs/es_EC/languages.lang | 0 {htdocs => public}/langs/es_EC/ldap.lang | 0 {htdocs => public}/langs/es_EC/link.lang | 0 {htdocs => public}/langs/es_EC/loan.lang | 0 {htdocs => public}/langs/es_EC/mailmanspip.lang | 0 {htdocs => public}/langs/es_EC/mails.lang | 0 {htdocs => public}/langs/es_EC/main.lang | 0 {htdocs => public}/langs/es_EC/margins.lang | 0 {htdocs => public}/langs/es_EC/members.lang | 0 {htdocs => public}/langs/es_EC/oauth.lang | 0 {htdocs => public}/langs/es_EC/opensurvey.lang | 0 {htdocs => public}/langs/es_EC/orders.lang | 0 {htdocs => public}/langs/es_EC/other.lang | 0 {htdocs => public}/langs/es_EC/paybox.lang | 0 {htdocs => public}/langs/es_EC/paypal.lang | 0 {htdocs => public}/langs/es_EC/printing.lang | 0 {htdocs => public}/langs/es_EC/productbatch.lang | 0 {htdocs => public}/langs/es_EC/products.lang | 0 {htdocs => public}/langs/es_EC/projects.lang | 0 {htdocs => public}/langs/es_EC/propal.lang | 0 {htdocs => public}/langs/es_EC/receiptprinter.lang | 0 {htdocs => public}/langs/es_EC/resource.lang | 0 {htdocs => public}/langs/es_EC/salaries.lang | 0 {htdocs => public}/langs/es_EC/sendings.lang | 0 {htdocs => public}/langs/es_EC/sms.lang | 0 {htdocs => public}/langs/es_EC/stocks.lang | 0 .../langs/es_EC/supplier_proposal.lang | 0 {htdocs => public}/langs/es_EC/suppliers.lang | 0 {htdocs => public}/langs/es_EC/trips.lang | 0 {htdocs => public}/langs/es_EC/users.lang | 0 {htdocs => public}/langs/es_EC/website.lang | 0 {htdocs => public}/langs/es_EC/withdrawals.lang | 0 {htdocs => public}/langs/es_EC/workflow.lang | 0 {htdocs => public}/langs/es_ES/accountancy.lang | 0 {htdocs => public}/langs/es_ES/admin.lang | 0 {htdocs => public}/langs/es_ES/agenda.lang | 0 {htdocs => public}/langs/es_ES/banks.lang | 0 {htdocs => public}/langs/es_ES/bills.lang | 0 {htdocs => public}/langs/es_ES/bookmarks.lang | 0 {htdocs => public}/langs/es_ES/boxes.lang | 0 {htdocs => public}/langs/es_ES/cashdesk.lang | 0 {htdocs => public}/langs/es_ES/categories.lang | 0 {htdocs => public}/langs/es_ES/commercial.lang | 0 {htdocs => public}/langs/es_ES/companies.lang | 0 {htdocs => public}/langs/es_ES/compta.lang | 0 {htdocs => public}/langs/es_ES/contracts.lang | 0 {htdocs => public}/langs/es_ES/cron.lang | 0 {htdocs => public}/langs/es_ES/deliveries.lang | 0 {htdocs => public}/langs/es_ES/dict.lang | 0 {htdocs => public}/langs/es_ES/donations.lang | 0 {htdocs => public}/langs/es_ES/ecm.lang | 0 {htdocs => public}/langs/es_ES/errors.lang | 0 {htdocs => public}/langs/es_ES/exports.lang | 0 {htdocs => public}/langs/es_ES/externalsite.lang | 0 {htdocs => public}/langs/es_ES/ftp.lang | 0 {htdocs => public}/langs/es_ES/help.lang | 0 {htdocs => public}/langs/es_ES/holiday.lang | 0 {htdocs => public}/langs/es_ES/hrm.lang | 0 {htdocs => public}/langs/es_ES/incoterm.lang | 0 {htdocs => public}/langs/es_ES/install.lang | 0 {htdocs => public}/langs/es_ES/interventions.lang | 0 {htdocs => public}/langs/es_ES/languages.lang | 0 {htdocs => public}/langs/es_ES/ldap.lang | 0 {htdocs => public}/langs/es_ES/link.lang | 0 {htdocs => public}/langs/es_ES/loan.lang | 0 {htdocs => public}/langs/es_ES/mailmanspip.lang | 0 {htdocs => public}/langs/es_ES/mails.lang | 0 {htdocs => public}/langs/es_ES/main.lang | 0 {htdocs => public}/langs/es_ES/margins.lang | 0 {htdocs => public}/langs/es_ES/members.lang | 0 {htdocs => public}/langs/es_ES/oauth.lang | 0 {htdocs => public}/langs/es_ES/opensurvey.lang | 0 {htdocs => public}/langs/es_ES/orders.lang | 0 {htdocs => public}/langs/es_ES/other.lang | 0 {htdocs => public}/langs/es_ES/paybox.lang | 0 {htdocs => public}/langs/es_ES/paypal.lang | 0 {htdocs => public}/langs/es_ES/printing.lang | 0 {htdocs => public}/langs/es_ES/productbatch.lang | 0 {htdocs => public}/langs/es_ES/products.lang | 0 {htdocs => public}/langs/es_ES/projects.lang | 0 {htdocs => public}/langs/es_ES/propal.lang | 0 {htdocs => public}/langs/es_ES/receiptprinter.lang | 0 {htdocs => public}/langs/es_ES/resource.lang | 0 {htdocs => public}/langs/es_ES/salaries.lang | 0 {htdocs => public}/langs/es_ES/sendings.lang | 0 {htdocs => public}/langs/es_ES/sms.lang | 0 {htdocs => public}/langs/es_ES/stocks.lang | 0 .../langs/es_ES/supplier_proposal.lang | 0 {htdocs => public}/langs/es_ES/suppliers.lang | 0 {htdocs => public}/langs/es_ES/trips.lang | 0 {htdocs => public}/langs/es_ES/users.lang | 0 {htdocs => public}/langs/es_ES/website.lang | 0 {htdocs => public}/langs/es_ES/withdrawals.lang | 0 {htdocs => public}/langs/es_ES/workflow.lang | 0 {htdocs => public}/langs/es_HN/admin.lang | 0 {htdocs => public}/langs/es_HN/bills.lang | 0 {htdocs => public}/langs/es_HN/companies.lang | 0 {htdocs => public}/langs/es_HN/compta.lang | 0 {htdocs => public}/langs/es_HN/main.lang | 0 {htdocs => public}/langs/es_HN/propal.lang | 0 {htdocs => public}/langs/es_MX/accountancy.lang | 0 {htdocs => public}/langs/es_MX/admin.lang | 0 {htdocs => public}/langs/es_MX/agenda.lang | 0 {htdocs => public}/langs/es_MX/banks.lang | 0 {htdocs => public}/langs/es_MX/bills.lang | 0 {htdocs => public}/langs/es_MX/bookmarks.lang | 0 {htdocs => public}/langs/es_MX/boxes.lang | 0 {htdocs => public}/langs/es_MX/cashdesk.lang | 0 {htdocs => public}/langs/es_MX/categories.lang | 0 {htdocs => public}/langs/es_MX/commercial.lang | 0 {htdocs => public}/langs/es_MX/companies.lang | 0 {htdocs => public}/langs/es_MX/compta.lang | 0 {htdocs => public}/langs/es_MX/contracts.lang | 0 {htdocs => public}/langs/es_MX/cron.lang | 0 {htdocs => public}/langs/es_MX/deliveries.lang | 0 {htdocs => public}/langs/es_MX/dict.lang | 0 {htdocs => public}/langs/es_MX/donations.lang | 0 {htdocs => public}/langs/es_MX/ecm.lang | 0 {htdocs => public}/langs/es_MX/errors.lang | 0 {htdocs => public}/langs/es_MX/exports.lang | 0 {htdocs => public}/langs/es_MX/externalsite.lang | 0 {htdocs => public}/langs/es_MX/ftp.lang | 0 {htdocs => public}/langs/es_MX/help.lang | 0 {htdocs => public}/langs/es_MX/holiday.lang | 0 {htdocs => public}/langs/es_MX/hrm.lang | 0 {htdocs => public}/langs/es_MX/incoterm.lang | 0 {htdocs => public}/langs/es_MX/install.lang | 0 {htdocs => public}/langs/es_MX/interventions.lang | 0 {htdocs => public}/langs/es_MX/languages.lang | 0 {htdocs => public}/langs/es_MX/ldap.lang | 0 {htdocs => public}/langs/es_MX/link.lang | 0 {htdocs => public}/langs/es_MX/loan.lang | 0 {htdocs => public}/langs/es_MX/mailmanspip.lang | 0 {htdocs => public}/langs/es_MX/mails.lang | 0 {htdocs => public}/langs/es_MX/main.lang | 0 {htdocs => public}/langs/es_MX/margins.lang | 0 {htdocs => public}/langs/es_MX/members.lang | 0 {htdocs => public}/langs/es_MX/oauth.lang | 0 {htdocs => public}/langs/es_MX/opensurvey.lang | 0 {htdocs => public}/langs/es_MX/orders.lang | 0 {htdocs => public}/langs/es_MX/other.lang | 0 {htdocs => public}/langs/es_MX/paybox.lang | 0 {htdocs => public}/langs/es_MX/paypal.lang | 0 {htdocs => public}/langs/es_MX/printing.lang | 0 {htdocs => public}/langs/es_MX/productbatch.lang | 0 {htdocs => public}/langs/es_MX/products.lang | 0 {htdocs => public}/langs/es_MX/projects.lang | 0 {htdocs => public}/langs/es_MX/propal.lang | 0 {htdocs => public}/langs/es_MX/receiptprinter.lang | 0 {htdocs => public}/langs/es_MX/resource.lang | 0 {htdocs => public}/langs/es_MX/salaries.lang | 0 {htdocs => public}/langs/es_MX/sendings.lang | 0 {htdocs => public}/langs/es_MX/sms.lang | 0 {htdocs => public}/langs/es_MX/stocks.lang | 0 .../langs/es_MX/supplier_proposal.lang | 0 {htdocs => public}/langs/es_MX/suppliers.lang | 0 {htdocs => public}/langs/es_MX/trips.lang | 0 {htdocs => public}/langs/es_MX/users.lang | 0 {htdocs => public}/langs/es_MX/website.lang | 0 {htdocs => public}/langs/es_MX/withdrawals.lang | 0 {htdocs => public}/langs/es_MX/workflow.lang | 0 {htdocs => public}/langs/es_PA/accountancy.lang | 0 {htdocs => public}/langs/es_PA/admin.lang | 0 {htdocs => public}/langs/es_PA/agenda.lang | 0 {htdocs => public}/langs/es_PA/banks.lang | 0 {htdocs => public}/langs/es_PA/bills.lang | 0 {htdocs => public}/langs/es_PA/bookmarks.lang | 0 {htdocs => public}/langs/es_PA/boxes.lang | 0 {htdocs => public}/langs/es_PA/cashdesk.lang | 0 {htdocs => public}/langs/es_PA/categories.lang | 0 {htdocs => public}/langs/es_PA/commercial.lang | 0 {htdocs => public}/langs/es_PA/companies.lang | 0 {htdocs => public}/langs/es_PA/compta.lang | 0 {htdocs => public}/langs/es_PA/contracts.lang | 0 {htdocs => public}/langs/es_PA/cron.lang | 0 {htdocs => public}/langs/es_PA/deliveries.lang | 0 {htdocs => public}/langs/es_PA/dict.lang | 0 {htdocs => public}/langs/es_PA/donations.lang | 0 {htdocs => public}/langs/es_PA/ecm.lang | 0 {htdocs => public}/langs/es_PA/errors.lang | 0 {htdocs => public}/langs/es_PA/exports.lang | 0 {htdocs => public}/langs/es_PA/externalsite.lang | 0 {htdocs => public}/langs/es_PA/ftp.lang | 0 {htdocs => public}/langs/es_PA/help.lang | 0 {htdocs => public}/langs/es_PA/holiday.lang | 0 {htdocs => public}/langs/es_PA/hrm.lang | 0 {htdocs => public}/langs/es_PA/incoterm.lang | 0 {htdocs => public}/langs/es_PA/install.lang | 0 {htdocs => public}/langs/es_PA/interventions.lang | 0 {htdocs => public}/langs/es_PA/languages.lang | 0 {htdocs => public}/langs/es_PA/ldap.lang | 0 {htdocs => public}/langs/es_PA/link.lang | 0 {htdocs => public}/langs/es_PA/loan.lang | 0 {htdocs => public}/langs/es_PA/mailmanspip.lang | 0 {htdocs => public}/langs/es_PA/mails.lang | 0 {htdocs => public}/langs/es_PA/main.lang | 0 {htdocs => public}/langs/es_PA/margins.lang | 0 {htdocs => public}/langs/es_PA/members.lang | 0 {htdocs => public}/langs/es_PA/oauth.lang | 0 {htdocs => public}/langs/es_PA/opensurvey.lang | 0 {htdocs => public}/langs/es_PA/orders.lang | 0 {htdocs => public}/langs/es_PA/other.lang | 0 {htdocs => public}/langs/es_PA/paybox.lang | 0 {htdocs => public}/langs/es_PA/paypal.lang | 0 {htdocs => public}/langs/es_PA/printing.lang | 0 {htdocs => public}/langs/es_PA/productbatch.lang | 0 {htdocs => public}/langs/es_PA/products.lang | 0 {htdocs => public}/langs/es_PA/projects.lang | 0 {htdocs => public}/langs/es_PA/propal.lang | 0 {htdocs => public}/langs/es_PA/receiptprinter.lang | 0 {htdocs => public}/langs/es_PA/resource.lang | 0 {htdocs => public}/langs/es_PA/salaries.lang | 0 {htdocs => public}/langs/es_PA/sendings.lang | 0 {htdocs => public}/langs/es_PA/sms.lang | 0 {htdocs => public}/langs/es_PA/stocks.lang | 0 .../langs/es_PA/supplier_proposal.lang | 0 {htdocs => public}/langs/es_PA/suppliers.lang | 0 {htdocs => public}/langs/es_PA/trips.lang | 0 {htdocs => public}/langs/es_PA/users.lang | 0 {htdocs => public}/langs/es_PA/website.lang | 0 {htdocs => public}/langs/es_PA/withdrawals.lang | 0 {htdocs => public}/langs/es_PA/workflow.lang | 0 {htdocs => public}/langs/es_PE/accountancy.lang | 0 {htdocs => public}/langs/es_PE/admin.lang | 0 {htdocs => public}/langs/es_PE/agenda.lang | 0 {htdocs => public}/langs/es_PE/banks.lang | 0 {htdocs => public}/langs/es_PE/bills.lang | 0 {htdocs => public}/langs/es_PE/bookmarks.lang | 0 {htdocs => public}/langs/es_PE/boxes.lang | 0 {htdocs => public}/langs/es_PE/cashdesk.lang | 0 {htdocs => public}/langs/es_PE/categories.lang | 0 {htdocs => public}/langs/es_PE/commercial.lang | 0 {htdocs => public}/langs/es_PE/companies.lang | 0 {htdocs => public}/langs/es_PE/compta.lang | 0 {htdocs => public}/langs/es_PE/contracts.lang | 0 {htdocs => public}/langs/es_PE/cron.lang | 0 {htdocs => public}/langs/es_PE/deliveries.lang | 0 {htdocs => public}/langs/es_PE/dict.lang | 0 {htdocs => public}/langs/es_PE/donations.lang | 0 {htdocs => public}/langs/es_PE/ecm.lang | 0 {htdocs => public}/langs/es_PE/errors.lang | 0 {htdocs => public}/langs/es_PE/exports.lang | 0 {htdocs => public}/langs/es_PE/externalsite.lang | 0 {htdocs => public}/langs/es_PE/ftp.lang | 0 {htdocs => public}/langs/es_PE/help.lang | 0 {htdocs => public}/langs/es_PE/holiday.lang | 0 {htdocs => public}/langs/es_PE/hrm.lang | 0 {htdocs => public}/langs/es_PE/incoterm.lang | 0 {htdocs => public}/langs/es_PE/install.lang | 0 {htdocs => public}/langs/es_PE/interventions.lang | 0 {htdocs => public}/langs/es_PE/languages.lang | 0 {htdocs => public}/langs/es_PE/ldap.lang | 0 {htdocs => public}/langs/es_PE/link.lang | 0 {htdocs => public}/langs/es_PE/loan.lang | 0 {htdocs => public}/langs/es_PE/mailmanspip.lang | 0 {htdocs => public}/langs/es_PE/mails.lang | 0 {htdocs => public}/langs/es_PE/main.lang | 0 {htdocs => public}/langs/es_PE/margins.lang | 0 {htdocs => public}/langs/es_PE/members.lang | 0 {htdocs => public}/langs/es_PE/oauth.lang | 0 {htdocs => public}/langs/es_PE/opensurvey.lang | 0 {htdocs => public}/langs/es_PE/orders.lang | 0 {htdocs => public}/langs/es_PE/other.lang | 0 {htdocs => public}/langs/es_PE/paybox.lang | 0 {htdocs => public}/langs/es_PE/paypal.lang | 0 {htdocs => public}/langs/es_PE/printing.lang | 0 {htdocs => public}/langs/es_PE/productbatch.lang | 0 {htdocs => public}/langs/es_PE/products.lang | 0 {htdocs => public}/langs/es_PE/projects.lang | 0 {htdocs => public}/langs/es_PE/propal.lang | 0 {htdocs => public}/langs/es_PE/receiptprinter.lang | 0 {htdocs => public}/langs/es_PE/resource.lang | 0 {htdocs => public}/langs/es_PE/salaries.lang | 0 {htdocs => public}/langs/es_PE/sendings.lang | 0 {htdocs => public}/langs/es_PE/sms.lang | 0 {htdocs => public}/langs/es_PE/stocks.lang | 0 .../langs/es_PE/supplier_proposal.lang | 0 {htdocs => public}/langs/es_PE/suppliers.lang | 0 {htdocs => public}/langs/es_PE/trips.lang | 0 {htdocs => public}/langs/es_PE/users.lang | 0 {htdocs => public}/langs/es_PE/website.lang | 0 {htdocs => public}/langs/es_PE/withdrawals.lang | 0 {htdocs => public}/langs/es_PE/workflow.lang | 0 {htdocs => public}/langs/es_PR/admin.lang | 0 {htdocs => public}/langs/es_PR/bills.lang | 0 {htdocs => public}/langs/es_PR/companies.lang | 0 {htdocs => public}/langs/es_PR/compta.lang | 0 {htdocs => public}/langs/es_PR/main.lang | 0 {htdocs => public}/langs/es_PR/propal.lang | 0 {htdocs => public}/langs/es_PY/accountancy.lang | 0 {htdocs => public}/langs/es_PY/admin.lang | 0 {htdocs => public}/langs/es_PY/agenda.lang | 0 {htdocs => public}/langs/es_PY/banks.lang | 0 {htdocs => public}/langs/es_PY/bills.lang | 0 {htdocs => public}/langs/es_PY/bookmarks.lang | 0 {htdocs => public}/langs/es_PY/boxes.lang | 0 {htdocs => public}/langs/es_PY/cashdesk.lang | 0 {htdocs => public}/langs/es_PY/categories.lang | 0 {htdocs => public}/langs/es_PY/commercial.lang | 0 {htdocs => public}/langs/es_PY/companies.lang | 0 {htdocs => public}/langs/es_PY/compta.lang | 0 {htdocs => public}/langs/es_PY/contracts.lang | 0 {htdocs => public}/langs/es_PY/cron.lang | 0 {htdocs => public}/langs/es_PY/deliveries.lang | 0 {htdocs => public}/langs/es_PY/dict.lang | 0 {htdocs => public}/langs/es_PY/donations.lang | 0 {htdocs => public}/langs/es_PY/ecm.lang | 0 {htdocs => public}/langs/es_PY/errors.lang | 0 {htdocs => public}/langs/es_PY/exports.lang | 0 {htdocs => public}/langs/es_PY/externalsite.lang | 0 {htdocs => public}/langs/es_PY/ftp.lang | 0 {htdocs => public}/langs/es_PY/help.lang | 0 {htdocs => public}/langs/es_PY/holiday.lang | 0 {htdocs => public}/langs/es_PY/hrm.lang | 0 {htdocs => public}/langs/es_PY/incoterm.lang | 0 {htdocs => public}/langs/es_PY/install.lang | 0 {htdocs => public}/langs/es_PY/interventions.lang | 0 {htdocs => public}/langs/es_PY/languages.lang | 0 {htdocs => public}/langs/es_PY/ldap.lang | 0 {htdocs => public}/langs/es_PY/link.lang | 0 {htdocs => public}/langs/es_PY/loan.lang | 0 {htdocs => public}/langs/es_PY/mailmanspip.lang | 0 {htdocs => public}/langs/es_PY/mails.lang | 0 {htdocs => public}/langs/es_PY/main.lang | 0 {htdocs => public}/langs/es_PY/margins.lang | 0 {htdocs => public}/langs/es_PY/members.lang | 0 {htdocs => public}/langs/es_PY/oauth.lang | 0 {htdocs => public}/langs/es_PY/opensurvey.lang | 0 {htdocs => public}/langs/es_PY/orders.lang | 0 {htdocs => public}/langs/es_PY/other.lang | 0 {htdocs => public}/langs/es_PY/paybox.lang | 0 {htdocs => public}/langs/es_PY/paypal.lang | 0 {htdocs => public}/langs/es_PY/printing.lang | 0 {htdocs => public}/langs/es_PY/productbatch.lang | 0 {htdocs => public}/langs/es_PY/products.lang | 0 {htdocs => public}/langs/es_PY/projects.lang | 0 {htdocs => public}/langs/es_PY/propal.lang | 0 {htdocs => public}/langs/es_PY/receiptprinter.lang | 0 {htdocs => public}/langs/es_PY/resource.lang | 0 {htdocs => public}/langs/es_PY/salaries.lang | 0 {htdocs => public}/langs/es_PY/sendings.lang | 0 {htdocs => public}/langs/es_PY/sms.lang | 0 {htdocs => public}/langs/es_PY/stocks.lang | 0 .../langs/es_PY/supplier_proposal.lang | 0 {htdocs => public}/langs/es_PY/suppliers.lang | 0 {htdocs => public}/langs/es_PY/trips.lang | 0 {htdocs => public}/langs/es_PY/users.lang | 0 {htdocs => public}/langs/es_PY/website.lang | 0 {htdocs => public}/langs/es_PY/withdrawals.lang | 0 {htdocs => public}/langs/es_PY/workflow.lang | 0 {htdocs => public}/langs/es_VE/accountancy.lang | 0 {htdocs => public}/langs/es_VE/admin.lang | 0 {htdocs => public}/langs/es_VE/agenda.lang | 0 {htdocs => public}/langs/es_VE/banks.lang | 0 {htdocs => public}/langs/es_VE/bills.lang | 0 {htdocs => public}/langs/es_VE/bookmarks.lang | 0 {htdocs => public}/langs/es_VE/boxes.lang | 0 {htdocs => public}/langs/es_VE/cashdesk.lang | 0 {htdocs => public}/langs/es_VE/categories.lang | 0 {htdocs => public}/langs/es_VE/commercial.lang | 0 {htdocs => public}/langs/es_VE/companies.lang | 0 {htdocs => public}/langs/es_VE/compta.lang | 0 {htdocs => public}/langs/es_VE/contracts.lang | 0 {htdocs => public}/langs/es_VE/cron.lang | 0 {htdocs => public}/langs/es_VE/deliveries.lang | 0 {htdocs => public}/langs/es_VE/dict.lang | 0 {htdocs => public}/langs/es_VE/donations.lang | 0 {htdocs => public}/langs/es_VE/ecm.lang | 0 {htdocs => public}/langs/es_VE/errors.lang | 0 {htdocs => public}/langs/es_VE/exports.lang | 0 {htdocs => public}/langs/es_VE/externalsite.lang | 0 {htdocs => public}/langs/es_VE/ftp.lang | 0 {htdocs => public}/langs/es_VE/help.lang | 0 {htdocs => public}/langs/es_VE/holiday.lang | 0 {htdocs => public}/langs/es_VE/hrm.lang | 0 {htdocs => public}/langs/es_VE/incoterm.lang | 0 {htdocs => public}/langs/es_VE/install.lang | 0 {htdocs => public}/langs/es_VE/interventions.lang | 0 {htdocs => public}/langs/es_VE/languages.lang | 0 {htdocs => public}/langs/es_VE/ldap.lang | 0 {htdocs => public}/langs/es_VE/link.lang | 0 {htdocs => public}/langs/es_VE/loan.lang | 0 {htdocs => public}/langs/es_VE/mailmanspip.lang | 0 {htdocs => public}/langs/es_VE/mails.lang | 0 {htdocs => public}/langs/es_VE/main.lang | 0 {htdocs => public}/langs/es_VE/margins.lang | 0 {htdocs => public}/langs/es_VE/members.lang | 0 {htdocs => public}/langs/es_VE/oauth.lang | 0 {htdocs => public}/langs/es_VE/opensurvey.lang | 0 {htdocs => public}/langs/es_VE/orders.lang | 0 {htdocs => public}/langs/es_VE/other.lang | 0 {htdocs => public}/langs/es_VE/paybox.lang | 0 {htdocs => public}/langs/es_VE/paypal.lang | 0 {htdocs => public}/langs/es_VE/printing.lang | 0 {htdocs => public}/langs/es_VE/productbatch.lang | 0 {htdocs => public}/langs/es_VE/products.lang | 0 {htdocs => public}/langs/es_VE/projects.lang | 0 {htdocs => public}/langs/es_VE/propal.lang | 0 {htdocs => public}/langs/es_VE/receiptprinter.lang | 0 {htdocs => public}/langs/es_VE/resource.lang | 0 {htdocs => public}/langs/es_VE/salaries.lang | 0 {htdocs => public}/langs/es_VE/sendings.lang | 0 {htdocs => public}/langs/es_VE/sms.lang | 0 {htdocs => public}/langs/es_VE/stocks.lang | 0 .../langs/es_VE/supplier_proposal.lang | 0 {htdocs => public}/langs/es_VE/suppliers.lang | 0 {htdocs => public}/langs/es_VE/trips.lang | 0 {htdocs => public}/langs/es_VE/users.lang | 0 {htdocs => public}/langs/es_VE/website.lang | 0 {htdocs => public}/langs/es_VE/withdrawals.lang | 0 {htdocs => public}/langs/es_VE/workflow.lang | 0 {htdocs => public}/langs/et_EE/accountancy.lang | 0 {htdocs => public}/langs/et_EE/admin.lang | 0 {htdocs => public}/langs/et_EE/agenda.lang | 0 {htdocs => public}/langs/et_EE/banks.lang | 0 {htdocs => public}/langs/et_EE/bills.lang | 0 {htdocs => public}/langs/et_EE/bookmarks.lang | 0 {htdocs => public}/langs/et_EE/boxes.lang | 0 {htdocs => public}/langs/et_EE/cashdesk.lang | 0 {htdocs => public}/langs/et_EE/categories.lang | 0 {htdocs => public}/langs/et_EE/commercial.lang | 0 {htdocs => public}/langs/et_EE/companies.lang | 0 {htdocs => public}/langs/et_EE/compta.lang | 0 {htdocs => public}/langs/et_EE/contracts.lang | 0 {htdocs => public}/langs/et_EE/cron.lang | 0 {htdocs => public}/langs/et_EE/deliveries.lang | 0 {htdocs => public}/langs/et_EE/dict.lang | 0 {htdocs => public}/langs/et_EE/donations.lang | 0 {htdocs => public}/langs/et_EE/ecm.lang | 0 {htdocs => public}/langs/et_EE/errors.lang | 0 {htdocs => public}/langs/et_EE/exports.lang | 0 {htdocs => public}/langs/et_EE/externalsite.lang | 0 {htdocs => public}/langs/et_EE/ftp.lang | 0 {htdocs => public}/langs/et_EE/help.lang | 0 {htdocs => public}/langs/et_EE/holiday.lang | 0 {htdocs => public}/langs/et_EE/hrm.lang | 0 {htdocs => public}/langs/et_EE/incoterm.lang | 0 {htdocs => public}/langs/et_EE/install.lang | 0 {htdocs => public}/langs/et_EE/interventions.lang | 0 {htdocs => public}/langs/et_EE/languages.lang | 0 {htdocs => public}/langs/et_EE/ldap.lang | 0 {htdocs => public}/langs/et_EE/link.lang | 0 {htdocs => public}/langs/et_EE/loan.lang | 0 {htdocs => public}/langs/et_EE/mailmanspip.lang | 0 {htdocs => public}/langs/et_EE/mails.lang | 0 {htdocs => public}/langs/et_EE/main.lang | 0 {htdocs => public}/langs/et_EE/margins.lang | 0 {htdocs => public}/langs/et_EE/members.lang | 0 {htdocs => public}/langs/et_EE/oauth.lang | 0 {htdocs => public}/langs/et_EE/opensurvey.lang | 0 {htdocs => public}/langs/et_EE/orders.lang | 0 {htdocs => public}/langs/et_EE/other.lang | 0 {htdocs => public}/langs/et_EE/paybox.lang | 0 {htdocs => public}/langs/et_EE/paypal.lang | 0 {htdocs => public}/langs/et_EE/printing.lang | 0 {htdocs => public}/langs/et_EE/productbatch.lang | 0 {htdocs => public}/langs/et_EE/products.lang | 0 {htdocs => public}/langs/et_EE/projects.lang | 0 {htdocs => public}/langs/et_EE/propal.lang | 0 {htdocs => public}/langs/et_EE/receiptprinter.lang | 0 {htdocs => public}/langs/et_EE/resource.lang | 0 {htdocs => public}/langs/et_EE/salaries.lang | 0 {htdocs => public}/langs/et_EE/sendings.lang | 0 {htdocs => public}/langs/et_EE/sms.lang | 0 {htdocs => public}/langs/et_EE/stocks.lang | 0 .../langs/et_EE/supplier_proposal.lang | 0 {htdocs => public}/langs/et_EE/suppliers.lang | 0 {htdocs => public}/langs/et_EE/trips.lang | 0 {htdocs => public}/langs/et_EE/users.lang | 0 {htdocs => public}/langs/et_EE/website.lang | 0 {htdocs => public}/langs/et_EE/withdrawals.lang | 0 {htdocs => public}/langs/et_EE/workflow.lang | 0 {htdocs => public}/langs/eu_ES/accountancy.lang | 0 {htdocs => public}/langs/eu_ES/admin.lang | 0 {htdocs => public}/langs/eu_ES/agenda.lang | 0 {htdocs => public}/langs/eu_ES/banks.lang | 0 {htdocs => public}/langs/eu_ES/bills.lang | 0 {htdocs => public}/langs/eu_ES/bookmarks.lang | 0 {htdocs => public}/langs/eu_ES/boxes.lang | 0 {htdocs => public}/langs/eu_ES/cashdesk.lang | 0 {htdocs => public}/langs/eu_ES/categories.lang | 0 {htdocs => public}/langs/eu_ES/commercial.lang | 0 {htdocs => public}/langs/eu_ES/companies.lang | 0 {htdocs => public}/langs/eu_ES/compta.lang | 0 {htdocs => public}/langs/eu_ES/contracts.lang | 0 {htdocs => public}/langs/eu_ES/cron.lang | 0 {htdocs => public}/langs/eu_ES/deliveries.lang | 0 {htdocs => public}/langs/eu_ES/dict.lang | 0 {htdocs => public}/langs/eu_ES/donations.lang | 0 {htdocs => public}/langs/eu_ES/ecm.lang | 0 {htdocs => public}/langs/eu_ES/errors.lang | 0 {htdocs => public}/langs/eu_ES/expensereports.lang | 0 {htdocs => public}/langs/eu_ES/exports.lang | 0 {htdocs => public}/langs/eu_ES/externalsite.lang | 0 {htdocs => public}/langs/eu_ES/ftp.lang | 0 {htdocs => public}/langs/eu_ES/help.lang | 0 {htdocs => public}/langs/eu_ES/holiday.lang | 0 {htdocs => public}/langs/eu_ES/hrm.lang | 0 {htdocs => public}/langs/eu_ES/incoterm.lang | 0 {htdocs => public}/langs/eu_ES/install.lang | 0 {htdocs => public}/langs/eu_ES/interventions.lang | 0 {htdocs => public}/langs/eu_ES/languages.lang | 0 {htdocs => public}/langs/eu_ES/ldap.lang | 0 {htdocs => public}/langs/eu_ES/link.lang | 0 {htdocs => public}/langs/eu_ES/loan.lang | 0 {htdocs => public}/langs/eu_ES/mailmanspip.lang | 0 {htdocs => public}/langs/eu_ES/mails.lang | 0 {htdocs => public}/langs/eu_ES/main.lang | 0 {htdocs => public}/langs/eu_ES/margins.lang | 0 {htdocs => public}/langs/eu_ES/members.lang | 0 {htdocs => public}/langs/eu_ES/oauth.lang | 0 {htdocs => public}/langs/eu_ES/opensurvey.lang | 0 {htdocs => public}/langs/eu_ES/orders.lang | 0 {htdocs => public}/langs/eu_ES/other.lang | 0 {htdocs => public}/langs/eu_ES/paybox.lang | 0 {htdocs => public}/langs/eu_ES/paypal.lang | 0 {htdocs => public}/langs/eu_ES/printing.lang | 0 {htdocs => public}/langs/eu_ES/productbatch.lang | 0 {htdocs => public}/langs/eu_ES/products.lang | 0 {htdocs => public}/langs/eu_ES/projects.lang | 0 {htdocs => public}/langs/eu_ES/propal.lang | 0 {htdocs => public}/langs/eu_ES/receiptprinter.lang | 0 {htdocs => public}/langs/eu_ES/resource.lang | 0 {htdocs => public}/langs/eu_ES/salaries.lang | 0 {htdocs => public}/langs/eu_ES/sendings.lang | 0 {htdocs => public}/langs/eu_ES/sms.lang | 0 {htdocs => public}/langs/eu_ES/stocks.lang | 0 .../langs/eu_ES/supplier_proposal.lang | 0 {htdocs => public}/langs/eu_ES/suppliers.lang | 0 {htdocs => public}/langs/eu_ES/trips.lang | 0 {htdocs => public}/langs/eu_ES/users.lang | 0 {htdocs => public}/langs/eu_ES/website.lang | 0 {htdocs => public}/langs/eu_ES/withdrawals.lang | 0 {htdocs => public}/langs/eu_ES/workflow.lang | 0 {htdocs => public}/langs/fa_IR/accountancy.lang | 0 {htdocs => public}/langs/fa_IR/admin.lang | 0 {htdocs => public}/langs/fa_IR/agenda.lang | 0 {htdocs => public}/langs/fa_IR/banks.lang | 0 {htdocs => public}/langs/fa_IR/bills.lang | 0 {htdocs => public}/langs/fa_IR/bookmarks.lang | 0 {htdocs => public}/langs/fa_IR/boxes.lang | 0 {htdocs => public}/langs/fa_IR/cashdesk.lang | 0 {htdocs => public}/langs/fa_IR/categories.lang | 0 {htdocs => public}/langs/fa_IR/commercial.lang | 0 {htdocs => public}/langs/fa_IR/companies.lang | 0 {htdocs => public}/langs/fa_IR/compta.lang | 0 {htdocs => public}/langs/fa_IR/contracts.lang | 0 {htdocs => public}/langs/fa_IR/cron.lang | 0 {htdocs => public}/langs/fa_IR/deliveries.lang | 0 {htdocs => public}/langs/fa_IR/dict.lang | 0 {htdocs => public}/langs/fa_IR/domains.lang | 0 {htdocs => public}/langs/fa_IR/donations.lang | 0 {htdocs => public}/langs/fa_IR/ecm.lang | 0 {htdocs => public}/langs/fa_IR/errors.lang | 0 {htdocs => public}/langs/fa_IR/exports.lang | 0 {htdocs => public}/langs/fa_IR/externalsite.lang | 0 {htdocs => public}/langs/fa_IR/ftp.lang | 0 {htdocs => public}/langs/fa_IR/help.lang | 0 {htdocs => public}/langs/fa_IR/holiday.lang | 0 {htdocs => public}/langs/fa_IR/hrm.lang | 0 {htdocs => public}/langs/fa_IR/incoterm.lang | 0 {htdocs => public}/langs/fa_IR/install.lang | 0 {htdocs => public}/langs/fa_IR/interventions.lang | 0 {htdocs => public}/langs/fa_IR/languages.lang | 0 {htdocs => public}/langs/fa_IR/ldap.lang | 0 {htdocs => public}/langs/fa_IR/link.lang | 0 {htdocs => public}/langs/fa_IR/loan.lang | 0 {htdocs => public}/langs/fa_IR/mailmanspip.lang | 0 {htdocs => public}/langs/fa_IR/mails.lang | 0 {htdocs => public}/langs/fa_IR/main.lang | 0 {htdocs => public}/langs/fa_IR/margins.lang | 0 {htdocs => public}/langs/fa_IR/members.lang | 0 {htdocs => public}/langs/fa_IR/oauth.lang | 0 {htdocs => public}/langs/fa_IR/opensurvey.lang | 0 {htdocs => public}/langs/fa_IR/orders.lang | 0 {htdocs => public}/langs/fa_IR/other.lang | 0 {htdocs => public}/langs/fa_IR/paybox.lang | 0 {htdocs => public}/langs/fa_IR/paypal.lang | 0 {htdocs => public}/langs/fa_IR/printing.lang | 0 {htdocs => public}/langs/fa_IR/productbatch.lang | 0 {htdocs => public}/langs/fa_IR/products.lang | 0 {htdocs => public}/langs/fa_IR/projects.lang | 0 {htdocs => public}/langs/fa_IR/propal.lang | 0 {htdocs => public}/langs/fa_IR/receiptprinter.lang | 0 {htdocs => public}/langs/fa_IR/resource.lang | 0 {htdocs => public}/langs/fa_IR/salaries.lang | 0 {htdocs => public}/langs/fa_IR/sendings.lang | 0 {htdocs => public}/langs/fa_IR/sms.lang | 0 {htdocs => public}/langs/fa_IR/stocks.lang | 0 .../langs/fa_IR/supplier_proposal.lang | 0 {htdocs => public}/langs/fa_IR/suppliers.lang | 0 {htdocs => public}/langs/fa_IR/trips.lang | 0 {htdocs => public}/langs/fa_IR/users.lang | 0 {htdocs => public}/langs/fa_IR/website.lang | 0 {htdocs => public}/langs/fa_IR/withdrawals.lang | 0 {htdocs => public}/langs/fa_IR/workflow.lang | 0 {htdocs => public}/langs/fi_FI/accountancy.lang | 0 {htdocs => public}/langs/fi_FI/admin.lang | 0 {htdocs => public}/langs/fi_FI/agenda.lang | 0 {htdocs => public}/langs/fi_FI/banks.lang | 0 {htdocs => public}/langs/fi_FI/bills.lang | 0 {htdocs => public}/langs/fi_FI/bookmarks.lang | 0 {htdocs => public}/langs/fi_FI/boxes.lang | 0 {htdocs => public}/langs/fi_FI/cashdesk.lang | 0 {htdocs => public}/langs/fi_FI/categories.lang | 0 {htdocs => public}/langs/fi_FI/commercial.lang | 0 {htdocs => public}/langs/fi_FI/companies.lang | 0 {htdocs => public}/langs/fi_FI/compta.lang | 0 {htdocs => public}/langs/fi_FI/contracts.lang | 0 {htdocs => public}/langs/fi_FI/cron.lang | 0 {htdocs => public}/langs/fi_FI/deliveries.lang | 0 {htdocs => public}/langs/fi_FI/dict.lang | 0 {htdocs => public}/langs/fi_FI/donations.lang | 0 {htdocs => public}/langs/fi_FI/ecm.lang | 0 {htdocs => public}/langs/fi_FI/errors.lang | 0 {htdocs => public}/langs/fi_FI/exports.lang | 0 {htdocs => public}/langs/fi_FI/externalsite.lang | 0 {htdocs => public}/langs/fi_FI/ftp.lang | 0 {htdocs => public}/langs/fi_FI/help.lang | 0 {htdocs => public}/langs/fi_FI/holiday.lang | 0 {htdocs => public}/langs/fi_FI/hrm.lang | 0 {htdocs => public}/langs/fi_FI/incoterm.lang | 0 {htdocs => public}/langs/fi_FI/install.lang | 0 {htdocs => public}/langs/fi_FI/interventions.lang | 0 {htdocs => public}/langs/fi_FI/languages.lang | 0 {htdocs => public}/langs/fi_FI/ldap.lang | 0 {htdocs => public}/langs/fi_FI/link.lang | 0 {htdocs => public}/langs/fi_FI/loan.lang | 0 {htdocs => public}/langs/fi_FI/mailmanspip.lang | 0 {htdocs => public}/langs/fi_FI/mails.lang | 0 {htdocs => public}/langs/fi_FI/main.lang | 0 {htdocs => public}/langs/fi_FI/margins.lang | 0 {htdocs => public}/langs/fi_FI/members.lang | 0 {htdocs => public}/langs/fi_FI/oauth.lang | 0 {htdocs => public}/langs/fi_FI/opensurvey.lang | 0 {htdocs => public}/langs/fi_FI/orders.lang | 0 {htdocs => public}/langs/fi_FI/other.lang | 0 {htdocs => public}/langs/fi_FI/paybox.lang | 0 {htdocs => public}/langs/fi_FI/paypal.lang | 0 {htdocs => public}/langs/fi_FI/printing.lang | 0 {htdocs => public}/langs/fi_FI/productbatch.lang | 0 {htdocs => public}/langs/fi_FI/products.lang | 0 {htdocs => public}/langs/fi_FI/projects.lang | 0 {htdocs => public}/langs/fi_FI/propal.lang | 0 {htdocs => public}/langs/fi_FI/receiptprinter.lang | 0 {htdocs => public}/langs/fi_FI/resource.lang | 0 {htdocs => public}/langs/fi_FI/salaries.lang | 0 {htdocs => public}/langs/fi_FI/sendings.lang | 0 {htdocs => public}/langs/fi_FI/sms.lang | 0 {htdocs => public}/langs/fi_FI/stocks.lang | 0 .../langs/fi_FI/supplier_proposal.lang | 0 {htdocs => public}/langs/fi_FI/suppliers.lang | 0 {htdocs => public}/langs/fi_FI/trips.lang | 0 {htdocs => public}/langs/fi_FI/users.lang | 0 {htdocs => public}/langs/fi_FI/website.lang | 0 {htdocs => public}/langs/fi_FI/withdrawals.lang | 0 {htdocs => public}/langs/fi_FI/workflow.lang | 0 {htdocs => public}/langs/fr_BE/accountancy.lang | 0 {htdocs => public}/langs/fr_BE/admin.lang | 0 {htdocs => public}/langs/fr_BE/agenda.lang | 0 {htdocs => public}/langs/fr_BE/banks.lang | 0 {htdocs => public}/langs/fr_BE/bills.lang | 0 {htdocs => public}/langs/fr_BE/bookmarks.lang | 0 {htdocs => public}/langs/fr_BE/boxes.lang | 0 {htdocs => public}/langs/fr_BE/cashdesk.lang | 0 {htdocs => public}/langs/fr_BE/categories.lang | 0 {htdocs => public}/langs/fr_BE/commercial.lang | 0 {htdocs => public}/langs/fr_BE/companies.lang | 0 {htdocs => public}/langs/fr_BE/compta.lang | 0 {htdocs => public}/langs/fr_BE/contracts.lang | 0 {htdocs => public}/langs/fr_BE/cron.lang | 0 {htdocs => public}/langs/fr_BE/deliveries.lang | 0 {htdocs => public}/langs/fr_BE/dict.lang | 0 {htdocs => public}/langs/fr_BE/donations.lang | 0 {htdocs => public}/langs/fr_BE/ecm.lang | 0 {htdocs => public}/langs/fr_BE/errors.lang | 0 {htdocs => public}/langs/fr_BE/exports.lang | 0 {htdocs => public}/langs/fr_BE/externalsite.lang | 0 {htdocs => public}/langs/fr_BE/ftp.lang | 0 {htdocs => public}/langs/fr_BE/help.lang | 0 {htdocs => public}/langs/fr_BE/holiday.lang | 0 {htdocs => public}/langs/fr_BE/hrm.lang | 0 {htdocs => public}/langs/fr_BE/incoterm.lang | 0 {htdocs => public}/langs/fr_BE/install.lang | 0 {htdocs => public}/langs/fr_BE/interventions.lang | 0 {htdocs => public}/langs/fr_BE/languages.lang | 0 {htdocs => public}/langs/fr_BE/ldap.lang | 0 {htdocs => public}/langs/fr_BE/link.lang | 0 {htdocs => public}/langs/fr_BE/loan.lang | 0 {htdocs => public}/langs/fr_BE/mailmanspip.lang | 0 {htdocs => public}/langs/fr_BE/mails.lang | 0 {htdocs => public}/langs/fr_BE/main.lang | 0 {htdocs => public}/langs/fr_BE/margins.lang | 0 {htdocs => public}/langs/fr_BE/members.lang | 0 {htdocs => public}/langs/fr_BE/oauth.lang | 0 {htdocs => public}/langs/fr_BE/opensurvey.lang | 0 {htdocs => public}/langs/fr_BE/orders.lang | 0 {htdocs => public}/langs/fr_BE/other.lang | 0 {htdocs => public}/langs/fr_BE/paybox.lang | 0 {htdocs => public}/langs/fr_BE/paypal.lang | 0 {htdocs => public}/langs/fr_BE/printing.lang | 0 {htdocs => public}/langs/fr_BE/productbatch.lang | 0 {htdocs => public}/langs/fr_BE/products.lang | 0 {htdocs => public}/langs/fr_BE/projects.lang | 0 {htdocs => public}/langs/fr_BE/propal.lang | 0 {htdocs => public}/langs/fr_BE/receiptprinter.lang | 0 {htdocs => public}/langs/fr_BE/resource.lang | 0 {htdocs => public}/langs/fr_BE/salaries.lang | 0 {htdocs => public}/langs/fr_BE/sendings.lang | 0 {htdocs => public}/langs/fr_BE/sms.lang | 0 {htdocs => public}/langs/fr_BE/stocks.lang | 0 .../langs/fr_BE/supplier_proposal.lang | 0 {htdocs => public}/langs/fr_BE/suppliers.lang | 0 {htdocs => public}/langs/fr_BE/trips.lang | 0 {htdocs => public}/langs/fr_BE/users.lang | 0 {htdocs => public}/langs/fr_BE/website.lang | 0 {htdocs => public}/langs/fr_BE/withdrawals.lang | 0 {htdocs => public}/langs/fr_BE/workflow.lang | 0 {htdocs => public}/langs/fr_CA/accountancy.lang | 0 {htdocs => public}/langs/fr_CA/admin.lang | 0 {htdocs => public}/langs/fr_CA/agenda.lang | 0 {htdocs => public}/langs/fr_CA/banks.lang | 0 {htdocs => public}/langs/fr_CA/bills.lang | 0 {htdocs => public}/langs/fr_CA/bookmarks.lang | 0 {htdocs => public}/langs/fr_CA/boxes.lang | 0 {htdocs => public}/langs/fr_CA/cashdesk.lang | 0 {htdocs => public}/langs/fr_CA/categories.lang | 0 {htdocs => public}/langs/fr_CA/commercial.lang | 0 {htdocs => public}/langs/fr_CA/companies.lang | 0 {htdocs => public}/langs/fr_CA/compta.lang | 0 {htdocs => public}/langs/fr_CA/contracts.lang | 0 {htdocs => public}/langs/fr_CA/cron.lang | 0 {htdocs => public}/langs/fr_CA/deliveries.lang | 0 {htdocs => public}/langs/fr_CA/dict.lang | 0 {htdocs => public}/langs/fr_CA/donations.lang | 0 {htdocs => public}/langs/fr_CA/ecm.lang | 0 {htdocs => public}/langs/fr_CA/errors.lang | 0 {htdocs => public}/langs/fr_CA/exports.lang | 0 {htdocs => public}/langs/fr_CA/externalsite.lang | 0 {htdocs => public}/langs/fr_CA/ftp.lang | 0 {htdocs => public}/langs/fr_CA/help.lang | 0 {htdocs => public}/langs/fr_CA/holiday.lang | 0 {htdocs => public}/langs/fr_CA/hrm.lang | 0 {htdocs => public}/langs/fr_CA/incoterm.lang | 0 {htdocs => public}/langs/fr_CA/install.lang | 0 {htdocs => public}/langs/fr_CA/interventions.lang | 0 {htdocs => public}/langs/fr_CA/languages.lang | 0 {htdocs => public}/langs/fr_CA/ldap.lang | 0 {htdocs => public}/langs/fr_CA/link.lang | 0 {htdocs => public}/langs/fr_CA/loan.lang | 0 {htdocs => public}/langs/fr_CA/mailmanspip.lang | 0 {htdocs => public}/langs/fr_CA/mails.lang | 0 {htdocs => public}/langs/fr_CA/main.lang | 0 {htdocs => public}/langs/fr_CA/margins.lang | 0 {htdocs => public}/langs/fr_CA/members.lang | 0 {htdocs => public}/langs/fr_CA/oauth.lang | 0 {htdocs => public}/langs/fr_CA/opensurvey.lang | 0 {htdocs => public}/langs/fr_CA/orders.lang | 0 {htdocs => public}/langs/fr_CA/other.lang | 0 {htdocs => public}/langs/fr_CA/paybox.lang | 0 {htdocs => public}/langs/fr_CA/paypal.lang | 0 {htdocs => public}/langs/fr_CA/printing.lang | 0 {htdocs => public}/langs/fr_CA/productbatch.lang | 0 {htdocs => public}/langs/fr_CA/products.lang | 0 {htdocs => public}/langs/fr_CA/projects.lang | 0 {htdocs => public}/langs/fr_CA/propal.lang | 0 {htdocs => public}/langs/fr_CA/receiptprinter.lang | 0 {htdocs => public}/langs/fr_CA/resource.lang | 0 {htdocs => public}/langs/fr_CA/salaries.lang | 0 {htdocs => public}/langs/fr_CA/sendings.lang | 0 {htdocs => public}/langs/fr_CA/sms.lang | 0 {htdocs => public}/langs/fr_CA/stocks.lang | 0 .../langs/fr_CA/supplier_proposal.lang | 0 {htdocs => public}/langs/fr_CA/suppliers.lang | 0 {htdocs => public}/langs/fr_CA/trips.lang | 0 {htdocs => public}/langs/fr_CA/users.lang | 0 {htdocs => public}/langs/fr_CA/website.lang | 0 {htdocs => public}/langs/fr_CA/withdrawals.lang | 0 {htdocs => public}/langs/fr_CA/workflow.lang | 0 {htdocs => public}/langs/fr_CH/accountancy.lang | 0 {htdocs => public}/langs/fr_CH/admin.lang | 0 {htdocs => public}/langs/fr_CH/agenda.lang | 0 {htdocs => public}/langs/fr_CH/banks.lang | 0 {htdocs => public}/langs/fr_CH/bills.lang | 0 {htdocs => public}/langs/fr_CH/bookmarks.lang | 0 {htdocs => public}/langs/fr_CH/boxes.lang | 0 {htdocs => public}/langs/fr_CH/cashdesk.lang | 0 {htdocs => public}/langs/fr_CH/categories.lang | 0 {htdocs => public}/langs/fr_CH/commercial.lang | 0 {htdocs => public}/langs/fr_CH/companies.lang | 0 {htdocs => public}/langs/fr_CH/compta.lang | 0 {htdocs => public}/langs/fr_CH/contracts.lang | 0 {htdocs => public}/langs/fr_CH/cron.lang | 0 {htdocs => public}/langs/fr_CH/deliveries.lang | 0 {htdocs => public}/langs/fr_CH/dict.lang | 0 {htdocs => public}/langs/fr_CH/donations.lang | 0 {htdocs => public}/langs/fr_CH/ecm.lang | 0 {htdocs => public}/langs/fr_CH/errors.lang | 0 {htdocs => public}/langs/fr_CH/exports.lang | 0 {htdocs => public}/langs/fr_CH/externalsite.lang | 0 {htdocs => public}/langs/fr_CH/ftp.lang | 0 {htdocs => public}/langs/fr_CH/help.lang | 0 {htdocs => public}/langs/fr_CH/holiday.lang | 0 {htdocs => public}/langs/fr_CH/hrm.lang | 0 {htdocs => public}/langs/fr_CH/incoterm.lang | 0 {htdocs => public}/langs/fr_CH/install.lang | 0 {htdocs => public}/langs/fr_CH/interventions.lang | 0 {htdocs => public}/langs/fr_CH/languages.lang | 0 {htdocs => public}/langs/fr_CH/ldap.lang | 0 {htdocs => public}/langs/fr_CH/link.lang | 0 {htdocs => public}/langs/fr_CH/loan.lang | 0 {htdocs => public}/langs/fr_CH/mailmanspip.lang | 0 {htdocs => public}/langs/fr_CH/mails.lang | 0 {htdocs => public}/langs/fr_CH/main.lang | 0 {htdocs => public}/langs/fr_CH/margins.lang | 0 {htdocs => public}/langs/fr_CH/members.lang | 0 {htdocs => public}/langs/fr_CH/oauth.lang | 0 {htdocs => public}/langs/fr_CH/opensurvey.lang | 0 {htdocs => public}/langs/fr_CH/orders.lang | 0 {htdocs => public}/langs/fr_CH/other.lang | 0 {htdocs => public}/langs/fr_CH/paybox.lang | 0 {htdocs => public}/langs/fr_CH/paypal.lang | 0 {htdocs => public}/langs/fr_CH/printing.lang | 0 {htdocs => public}/langs/fr_CH/productbatch.lang | 0 {htdocs => public}/langs/fr_CH/products.lang | 0 {htdocs => public}/langs/fr_CH/projects.lang | 0 {htdocs => public}/langs/fr_CH/propal.lang | 0 {htdocs => public}/langs/fr_CH/receiptprinter.lang | 0 {htdocs => public}/langs/fr_CH/resource.lang | 0 {htdocs => public}/langs/fr_CH/salaries.lang | 0 {htdocs => public}/langs/fr_CH/sendings.lang | 0 {htdocs => public}/langs/fr_CH/sms.lang | 0 {htdocs => public}/langs/fr_CH/stocks.lang | 0 .../langs/fr_CH/supplier_proposal.lang | 0 {htdocs => public}/langs/fr_CH/suppliers.lang | 0 {htdocs => public}/langs/fr_CH/trips.lang | 0 {htdocs => public}/langs/fr_CH/users.lang | 0 {htdocs => public}/langs/fr_CH/website.lang | 0 {htdocs => public}/langs/fr_CH/withdrawals.lang | 0 {htdocs => public}/langs/fr_CH/workflow.lang | 0 {htdocs => public}/langs/fr_FR/accountancy.lang | 0 {htdocs => public}/langs/fr_FR/admin.lang | 0 {htdocs => public}/langs/fr_FR/agenda.lang | 0 {htdocs => public}/langs/fr_FR/banks.lang | 0 {htdocs => public}/langs/fr_FR/bills.lang | 0 {htdocs => public}/langs/fr_FR/bookmarks.lang | 0 {htdocs => public}/langs/fr_FR/boxes.lang | 0 {htdocs => public}/langs/fr_FR/cashdesk.lang | 0 {htdocs => public}/langs/fr_FR/categories.lang | 0 {htdocs => public}/langs/fr_FR/commercial.lang | 0 {htdocs => public}/langs/fr_FR/companies.lang | 0 {htdocs => public}/langs/fr_FR/compta.lang | 0 {htdocs => public}/langs/fr_FR/contracts.lang | 0 {htdocs => public}/langs/fr_FR/cron.lang | 0 {htdocs => public}/langs/fr_FR/deliveries.lang | 0 {htdocs => public}/langs/fr_FR/dict.lang | 0 {htdocs => public}/langs/fr_FR/donations.lang | 0 {htdocs => public}/langs/fr_FR/ecm.lang | 0 {htdocs => public}/langs/fr_FR/errors.lang | 0 {htdocs => public}/langs/fr_FR/expensereports.lang | 0 {htdocs => public}/langs/fr_FR/exports.lang | 0 {htdocs => public}/langs/fr_FR/externalsite.lang | 0 {htdocs => public}/langs/fr_FR/ftp.lang | 0 {htdocs => public}/langs/fr_FR/help.lang | 0 {htdocs => public}/langs/fr_FR/holiday.lang | 0 {htdocs => public}/langs/fr_FR/hrm.lang | 0 {htdocs => public}/langs/fr_FR/incoterm.lang | 0 {htdocs => public}/langs/fr_FR/install.lang | 0 {htdocs => public}/langs/fr_FR/interventions.lang | 0 {htdocs => public}/langs/fr_FR/languages.lang | 0 {htdocs => public}/langs/fr_FR/ldap.lang | 0 {htdocs => public}/langs/fr_FR/link.lang | 0 {htdocs => public}/langs/fr_FR/loan.lang | 0 {htdocs => public}/langs/fr_FR/mailmanspip.lang | 0 {htdocs => public}/langs/fr_FR/mails.lang | 0 {htdocs => public}/langs/fr_FR/main.lang | 0 {htdocs => public}/langs/fr_FR/margins.lang | 0 {htdocs => public}/langs/fr_FR/members.lang | 0 {htdocs => public}/langs/fr_FR/oauth.lang | 0 {htdocs => public}/langs/fr_FR/opensurvey.lang | 0 {htdocs => public}/langs/fr_FR/orders.lang | 0 {htdocs => public}/langs/fr_FR/other.lang | 0 {htdocs => public}/langs/fr_FR/paybox.lang | 0 {htdocs => public}/langs/fr_FR/paypal.lang | 0 {htdocs => public}/langs/fr_FR/printing.lang | 0 {htdocs => public}/langs/fr_FR/productbatch.lang | 0 {htdocs => public}/langs/fr_FR/products.lang | 0 {htdocs => public}/langs/fr_FR/projects.lang | 0 {htdocs => public}/langs/fr_FR/propal.lang | 0 {htdocs => public}/langs/fr_FR/receiptprinter.lang | 0 {htdocs => public}/langs/fr_FR/resource.lang | 0 {htdocs => public}/langs/fr_FR/salaries.lang | 0 {htdocs => public}/langs/fr_FR/sendings.lang | 0 {htdocs => public}/langs/fr_FR/sms.lang | 0 {htdocs => public}/langs/fr_FR/stocks.lang | 0 .../langs/fr_FR/supplier_proposal.lang | 0 {htdocs => public}/langs/fr_FR/suppliers.lang | 0 {htdocs => public}/langs/fr_FR/trips.lang | 0 {htdocs => public}/langs/fr_FR/users.lang | 0 {htdocs => public}/langs/fr_FR/website.lang | 0 {htdocs => public}/langs/fr_FR/withdrawals.lang | 0 {htdocs => public}/langs/fr_FR/workflow.lang | 0 {htdocs => public}/langs/fr_NC/admin.lang | 0 {htdocs => public}/langs/fr_NC/companies.lang | 0 {htdocs => public}/langs/fr_NC/compta.lang | 0 {htdocs => public}/langs/fr_NC/main.lang | 0 {htdocs => public}/langs/he_IL/accountancy.lang | 0 {htdocs => public}/langs/he_IL/admin.lang | 0 {htdocs => public}/langs/he_IL/agenda.lang | 0 {htdocs => public}/langs/he_IL/banks.lang | 0 {htdocs => public}/langs/he_IL/bills.lang | 0 {htdocs => public}/langs/he_IL/bookmarks.lang | 0 {htdocs => public}/langs/he_IL/boxes.lang | 0 {htdocs => public}/langs/he_IL/cashdesk.lang | 0 {htdocs => public}/langs/he_IL/categories.lang | 0 {htdocs => public}/langs/he_IL/commercial.lang | 0 {htdocs => public}/langs/he_IL/companies.lang | 0 {htdocs => public}/langs/he_IL/compta.lang | 0 {htdocs => public}/langs/he_IL/contracts.lang | 0 {htdocs => public}/langs/he_IL/cron.lang | 0 {htdocs => public}/langs/he_IL/deliveries.lang | 0 {htdocs => public}/langs/he_IL/dict.lang | 0 {htdocs => public}/langs/he_IL/donations.lang | 0 {htdocs => public}/langs/he_IL/ecm.lang | 0 {htdocs => public}/langs/he_IL/errors.lang | 0 {htdocs => public}/langs/he_IL/exports.lang | 0 {htdocs => public}/langs/he_IL/externalsite.lang | 0 {htdocs => public}/langs/he_IL/ftp.lang | 0 {htdocs => public}/langs/he_IL/help.lang | 0 {htdocs => public}/langs/he_IL/holiday.lang | 0 {htdocs => public}/langs/he_IL/hrm.lang | 0 {htdocs => public}/langs/he_IL/incoterm.lang | 0 {htdocs => public}/langs/he_IL/install.lang | 0 {htdocs => public}/langs/he_IL/interventions.lang | 0 {htdocs => public}/langs/he_IL/languages.lang | 0 {htdocs => public}/langs/he_IL/ldap.lang | 0 {htdocs => public}/langs/he_IL/link.lang | 0 {htdocs => public}/langs/he_IL/loan.lang | 0 {htdocs => public}/langs/he_IL/mailmanspip.lang | 0 {htdocs => public}/langs/he_IL/mails.lang | 0 {htdocs => public}/langs/he_IL/main.lang | 0 {htdocs => public}/langs/he_IL/margins.lang | 0 {htdocs => public}/langs/he_IL/members.lang | 0 {htdocs => public}/langs/he_IL/oauth.lang | 0 {htdocs => public}/langs/he_IL/opensurvey.lang | 0 {htdocs => public}/langs/he_IL/orders.lang | 0 {htdocs => public}/langs/he_IL/other.lang | 0 {htdocs => public}/langs/he_IL/paybox.lang | 0 {htdocs => public}/langs/he_IL/paypal.lang | 0 {htdocs => public}/langs/he_IL/printing.lang | 0 {htdocs => public}/langs/he_IL/productbatch.lang | 0 {htdocs => public}/langs/he_IL/products.lang | 0 {htdocs => public}/langs/he_IL/projects.lang | 0 {htdocs => public}/langs/he_IL/propal.lang | 0 {htdocs => public}/langs/he_IL/receiptprinter.lang | 0 {htdocs => public}/langs/he_IL/resource.lang | 0 {htdocs => public}/langs/he_IL/salaries.lang | 0 {htdocs => public}/langs/he_IL/sendings.lang | 0 {htdocs => public}/langs/he_IL/sms.lang | 0 {htdocs => public}/langs/he_IL/stocks.lang | 0 .../langs/he_IL/supplier_proposal.lang | 0 {htdocs => public}/langs/he_IL/suppliers.lang | 0 {htdocs => public}/langs/he_IL/trips.lang | 0 {htdocs => public}/langs/he_IL/users.lang | 0 {htdocs => public}/langs/he_IL/website.lang | 0 {htdocs => public}/langs/he_IL/withdrawals.lang | 0 {htdocs => public}/langs/he_IL/workflow.lang | 0 {htdocs => public}/langs/hr_HR/accountancy.lang | 0 {htdocs => public}/langs/hr_HR/admin.lang | 0 {htdocs => public}/langs/hr_HR/agenda.lang | 0 {htdocs => public}/langs/hr_HR/banks.lang | 0 {htdocs => public}/langs/hr_HR/bills.lang | 0 {htdocs => public}/langs/hr_HR/bookmarks.lang | 0 {htdocs => public}/langs/hr_HR/boxes.lang | 0 {htdocs => public}/langs/hr_HR/cashdesk.lang | 0 {htdocs => public}/langs/hr_HR/categories.lang | 0 {htdocs => public}/langs/hr_HR/commercial.lang | 0 {htdocs => public}/langs/hr_HR/companies.lang | 0 {htdocs => public}/langs/hr_HR/compta.lang | 0 {htdocs => public}/langs/hr_HR/contracts.lang | 0 {htdocs => public}/langs/hr_HR/cron.lang | 0 {htdocs => public}/langs/hr_HR/deliveries.lang | 0 {htdocs => public}/langs/hr_HR/dict.lang | 0 {htdocs => public}/langs/hr_HR/donations.lang | 0 {htdocs => public}/langs/hr_HR/ecm.lang | 0 {htdocs => public}/langs/hr_HR/errors.lang | 0 {htdocs => public}/langs/hr_HR/exports.lang | 0 {htdocs => public}/langs/hr_HR/externalsite.lang | 0 {htdocs => public}/langs/hr_HR/ftp.lang | 0 {htdocs => public}/langs/hr_HR/help.lang | 0 {htdocs => public}/langs/hr_HR/holiday.lang | 0 {htdocs => public}/langs/hr_HR/hrm.lang | 0 {htdocs => public}/langs/hr_HR/incoterm.lang | 0 {htdocs => public}/langs/hr_HR/install.lang | 0 {htdocs => public}/langs/hr_HR/interventions.lang | 0 {htdocs => public}/langs/hr_HR/languages.lang | 0 {htdocs => public}/langs/hr_HR/ldap.lang | 0 {htdocs => public}/langs/hr_HR/link.lang | 0 {htdocs => public}/langs/hr_HR/loan.lang | 0 {htdocs => public}/langs/hr_HR/mailmanspip.lang | 0 {htdocs => public}/langs/hr_HR/mails.lang | 0 {htdocs => public}/langs/hr_HR/main.lang | 0 {htdocs => public}/langs/hr_HR/margins.lang | 0 {htdocs => public}/langs/hr_HR/members.lang | 0 {htdocs => public}/langs/hr_HR/oauth.lang | 0 {htdocs => public}/langs/hr_HR/opensurvey.lang | 0 {htdocs => public}/langs/hr_HR/orders.lang | 0 {htdocs => public}/langs/hr_HR/other.lang | 0 {htdocs => public}/langs/hr_HR/paybox.lang | 0 {htdocs => public}/langs/hr_HR/paypal.lang | 0 {htdocs => public}/langs/hr_HR/printing.lang | 0 {htdocs => public}/langs/hr_HR/productbatch.lang | 0 {htdocs => public}/langs/hr_HR/products.lang | 0 {htdocs => public}/langs/hr_HR/projects.lang | 0 {htdocs => public}/langs/hr_HR/propal.lang | 0 {htdocs => public}/langs/hr_HR/receiptprinter.lang | 0 {htdocs => public}/langs/hr_HR/resource.lang | 0 {htdocs => public}/langs/hr_HR/salaries.lang | 0 {htdocs => public}/langs/hr_HR/sendings.lang | 0 {htdocs => public}/langs/hr_HR/sms.lang | 0 {htdocs => public}/langs/hr_HR/stocks.lang | 0 .../langs/hr_HR/supplier_proposal.lang | 0 {htdocs => public}/langs/hr_HR/suppliers.lang | 0 {htdocs => public}/langs/hr_HR/trips.lang | 0 {htdocs => public}/langs/hr_HR/users.lang | 0 {htdocs => public}/langs/hr_HR/website.lang | 0 {htdocs => public}/langs/hr_HR/withdrawals.lang | 0 {htdocs => public}/langs/hr_HR/workflow.lang | 0 {htdocs => public}/langs/hu_HU/accountancy.lang | 0 {htdocs => public}/langs/hu_HU/admin.lang | 0 {htdocs => public}/langs/hu_HU/agenda.lang | 0 {htdocs => public}/langs/hu_HU/banks.lang | 0 {htdocs => public}/langs/hu_HU/bills.lang | 0 {htdocs => public}/langs/hu_HU/bookmarks.lang | 0 {htdocs => public}/langs/hu_HU/boxes.lang | 0 {htdocs => public}/langs/hu_HU/cashdesk.lang | 0 {htdocs => public}/langs/hu_HU/categories.lang | 0 {htdocs => public}/langs/hu_HU/commercial.lang | 0 {htdocs => public}/langs/hu_HU/companies.lang | 0 {htdocs => public}/langs/hu_HU/compta.lang | 0 {htdocs => public}/langs/hu_HU/contracts.lang | 0 {htdocs => public}/langs/hu_HU/cron.lang | 0 {htdocs => public}/langs/hu_HU/deliveries.lang | 0 {htdocs => public}/langs/hu_HU/dict.lang | 0 {htdocs => public}/langs/hu_HU/donations.lang | 0 {htdocs => public}/langs/hu_HU/ecm.lang | 0 {htdocs => public}/langs/hu_HU/errors.lang | 0 {htdocs => public}/langs/hu_HU/exports.lang | 0 {htdocs => public}/langs/hu_HU/externalsite.lang | 0 {htdocs => public}/langs/hu_HU/ftp.lang | 0 {htdocs => public}/langs/hu_HU/help.lang | 0 {htdocs => public}/langs/hu_HU/holiday.lang | 0 {htdocs => public}/langs/hu_HU/hrm.lang | 0 {htdocs => public}/langs/hu_HU/incoterm.lang | 0 {htdocs => public}/langs/hu_HU/install.lang | 0 {htdocs => public}/langs/hu_HU/interventions.lang | 0 {htdocs => public}/langs/hu_HU/languages.lang | 0 {htdocs => public}/langs/hu_HU/ldap.lang | 0 {htdocs => public}/langs/hu_HU/link.lang | 0 {htdocs => public}/langs/hu_HU/loan.lang | 0 {htdocs => public}/langs/hu_HU/mailmanspip.lang | 0 {htdocs => public}/langs/hu_HU/mails.lang | 0 {htdocs => public}/langs/hu_HU/main.lang | 0 {htdocs => public}/langs/hu_HU/margins.lang | 0 {htdocs => public}/langs/hu_HU/members.lang | 0 {htdocs => public}/langs/hu_HU/oauth.lang | 0 {htdocs => public}/langs/hu_HU/opensurvey.lang | 0 {htdocs => public}/langs/hu_HU/orders.lang | 0 {htdocs => public}/langs/hu_HU/other.lang | 0 {htdocs => public}/langs/hu_HU/paybox.lang | 0 {htdocs => public}/langs/hu_HU/paypal.lang | 0 {htdocs => public}/langs/hu_HU/printing.lang | 0 {htdocs => public}/langs/hu_HU/productbatch.lang | 0 {htdocs => public}/langs/hu_HU/products.lang | 0 {htdocs => public}/langs/hu_HU/projects.lang | 0 {htdocs => public}/langs/hu_HU/propal.lang | 0 {htdocs => public}/langs/hu_HU/receiptprinter.lang | 0 {htdocs => public}/langs/hu_HU/resource.lang | 0 {htdocs => public}/langs/hu_HU/salaries.lang | 0 {htdocs => public}/langs/hu_HU/sendings.lang | 0 {htdocs => public}/langs/hu_HU/sms.lang | 0 {htdocs => public}/langs/hu_HU/stocks.lang | 0 .../langs/hu_HU/supplier_proposal.lang | 0 {htdocs => public}/langs/hu_HU/suppliers.lang | 0 {htdocs => public}/langs/hu_HU/trips.lang | 0 {htdocs => public}/langs/hu_HU/users.lang | 0 {htdocs => public}/langs/hu_HU/website.lang | 0 {htdocs => public}/langs/hu_HU/withdrawals.lang | 0 {htdocs => public}/langs/hu_HU/workflow.lang | 0 {htdocs => public}/langs/id_ID/accountancy.lang | 0 {htdocs => public}/langs/id_ID/admin.lang | 0 {htdocs => public}/langs/id_ID/agenda.lang | 0 {htdocs => public}/langs/id_ID/banks.lang | 0 {htdocs => public}/langs/id_ID/bills.lang | 0 {htdocs => public}/langs/id_ID/bookmarks.lang | 0 {htdocs => public}/langs/id_ID/boxes.lang | 0 {htdocs => public}/langs/id_ID/cashdesk.lang | 0 {htdocs => public}/langs/id_ID/categories.lang | 0 {htdocs => public}/langs/id_ID/commercial.lang | 0 {htdocs => public}/langs/id_ID/companies.lang | 0 {htdocs => public}/langs/id_ID/compta.lang | 0 {htdocs => public}/langs/id_ID/contracts.lang | 0 {htdocs => public}/langs/id_ID/cron.lang | 0 {htdocs => public}/langs/id_ID/deliveries.lang | 0 {htdocs => public}/langs/id_ID/dict.lang | 0 {htdocs => public}/langs/id_ID/donations.lang | 0 {htdocs => public}/langs/id_ID/ecm.lang | 0 {htdocs => public}/langs/id_ID/errors.lang | 0 {htdocs => public}/langs/id_ID/exports.lang | 0 {htdocs => public}/langs/id_ID/externalsite.lang | 0 {htdocs => public}/langs/id_ID/ftp.lang | 0 {htdocs => public}/langs/id_ID/help.lang | 0 {htdocs => public}/langs/id_ID/holiday.lang | 0 {htdocs => public}/langs/id_ID/hrm.lang | 0 {htdocs => public}/langs/id_ID/incoterm.lang | 0 {htdocs => public}/langs/id_ID/install.lang | 0 {htdocs => public}/langs/id_ID/interventions.lang | 0 {htdocs => public}/langs/id_ID/languages.lang | 0 {htdocs => public}/langs/id_ID/ldap.lang | 0 {htdocs => public}/langs/id_ID/link.lang | 0 {htdocs => public}/langs/id_ID/loan.lang | 0 {htdocs => public}/langs/id_ID/mailmanspip.lang | 0 {htdocs => public}/langs/id_ID/mails.lang | 0 {htdocs => public}/langs/id_ID/main.lang | 0 {htdocs => public}/langs/id_ID/margins.lang | 0 {htdocs => public}/langs/id_ID/members.lang | 0 {htdocs => public}/langs/id_ID/oauth.lang | 0 {htdocs => public}/langs/id_ID/opensurvey.lang | 0 {htdocs => public}/langs/id_ID/orders.lang | 0 {htdocs => public}/langs/id_ID/other.lang | 0 {htdocs => public}/langs/id_ID/paybox.lang | 0 {htdocs => public}/langs/id_ID/paypal.lang | 0 {htdocs => public}/langs/id_ID/printing.lang | 0 {htdocs => public}/langs/id_ID/productbatch.lang | 0 {htdocs => public}/langs/id_ID/products.lang | 0 {htdocs => public}/langs/id_ID/projects.lang | 0 {htdocs => public}/langs/id_ID/propal.lang | 0 {htdocs => public}/langs/id_ID/receiptprinter.lang | 0 {htdocs => public}/langs/id_ID/resource.lang | 0 {htdocs => public}/langs/id_ID/salaries.lang | 0 {htdocs => public}/langs/id_ID/sendings.lang | 0 {htdocs => public}/langs/id_ID/sms.lang | 0 {htdocs => public}/langs/id_ID/stocks.lang | 0 .../langs/id_ID/supplier_proposal.lang | 0 {htdocs => public}/langs/id_ID/suppliers.lang | 0 {htdocs => public}/langs/id_ID/trips.lang | 0 {htdocs => public}/langs/id_ID/users.lang | 0 {htdocs => public}/langs/id_ID/website.lang | 0 {htdocs => public}/langs/id_ID/withdrawals.lang | 0 {htdocs => public}/langs/id_ID/workflow.lang | 0 {htdocs => public}/langs/is_IS/accountancy.lang | 0 {htdocs => public}/langs/is_IS/admin.lang | 0 {htdocs => public}/langs/is_IS/agenda.lang | 0 {htdocs => public}/langs/is_IS/banks.lang | 0 {htdocs => public}/langs/is_IS/bills.lang | 0 {htdocs => public}/langs/is_IS/bookmarks.lang | 0 {htdocs => public}/langs/is_IS/boxes.lang | 0 {htdocs => public}/langs/is_IS/cashdesk.lang | 0 {htdocs => public}/langs/is_IS/categories.lang | 0 {htdocs => public}/langs/is_IS/commercial.lang | 0 {htdocs => public}/langs/is_IS/companies.lang | 0 {htdocs => public}/langs/is_IS/compta.lang | 0 {htdocs => public}/langs/is_IS/contracts.lang | 0 {htdocs => public}/langs/is_IS/cron.lang | 0 {htdocs => public}/langs/is_IS/deliveries.lang | 0 {htdocs => public}/langs/is_IS/dict.lang | 0 {htdocs => public}/langs/is_IS/donations.lang | 0 {htdocs => public}/langs/is_IS/ecm.lang | 0 {htdocs => public}/langs/is_IS/errors.lang | 0 {htdocs => public}/langs/is_IS/exports.lang | 0 {htdocs => public}/langs/is_IS/externalsite.lang | 0 {htdocs => public}/langs/is_IS/ftp.lang | 0 {htdocs => public}/langs/is_IS/help.lang | 0 {htdocs => public}/langs/is_IS/holiday.lang | 0 {htdocs => public}/langs/is_IS/hrm.lang | 0 {htdocs => public}/langs/is_IS/incoterm.lang | 0 {htdocs => public}/langs/is_IS/install.lang | 0 {htdocs => public}/langs/is_IS/interventions.lang | 0 {htdocs => public}/langs/is_IS/languages.lang | 0 {htdocs => public}/langs/is_IS/ldap.lang | 0 {htdocs => public}/langs/is_IS/link.lang | 0 {htdocs => public}/langs/is_IS/loan.lang | 0 {htdocs => public}/langs/is_IS/mailmanspip.lang | 0 {htdocs => public}/langs/is_IS/mails.lang | 0 {htdocs => public}/langs/is_IS/main.lang | 0 {htdocs => public}/langs/is_IS/margins.lang | 0 {htdocs => public}/langs/is_IS/members.lang | 0 {htdocs => public}/langs/is_IS/oauth.lang | 0 {htdocs => public}/langs/is_IS/opensurvey.lang | 0 {htdocs => public}/langs/is_IS/orders.lang | 0 {htdocs => public}/langs/is_IS/other.lang | 0 {htdocs => public}/langs/is_IS/paybox.lang | 0 {htdocs => public}/langs/is_IS/paypal.lang | 0 {htdocs => public}/langs/is_IS/printing.lang | 0 {htdocs => public}/langs/is_IS/productbatch.lang | 0 {htdocs => public}/langs/is_IS/products.lang | 0 {htdocs => public}/langs/is_IS/projects.lang | 0 {htdocs => public}/langs/is_IS/propal.lang | 0 {htdocs => public}/langs/is_IS/receiptprinter.lang | 0 {htdocs => public}/langs/is_IS/resource.lang | 0 {htdocs => public}/langs/is_IS/salaries.lang | 0 {htdocs => public}/langs/is_IS/sendings.lang | 0 {htdocs => public}/langs/is_IS/sms.lang | 0 {htdocs => public}/langs/is_IS/stocks.lang | 0 .../langs/is_IS/supplier_proposal.lang | 0 {htdocs => public}/langs/is_IS/suppliers.lang | 0 {htdocs => public}/langs/is_IS/trips.lang | 0 {htdocs => public}/langs/is_IS/users.lang | 0 {htdocs => public}/langs/is_IS/website.lang | 0 {htdocs => public}/langs/is_IS/withdrawals.lang | 0 {htdocs => public}/langs/is_IS/workflow.lang | 0 {htdocs => public}/langs/it_IT/accountancy.lang | 0 {htdocs => public}/langs/it_IT/admin.lang | 0 {htdocs => public}/langs/it_IT/agenda.lang | 0 {htdocs => public}/langs/it_IT/banks.lang | 0 {htdocs => public}/langs/it_IT/bills.lang | 0 {htdocs => public}/langs/it_IT/bookmarks.lang | 0 {htdocs => public}/langs/it_IT/boxes.lang | 0 {htdocs => public}/langs/it_IT/cashdesk.lang | 0 {htdocs => public}/langs/it_IT/categories.lang | 0 {htdocs => public}/langs/it_IT/commercial.lang | 0 {htdocs => public}/langs/it_IT/companies.lang | 0 {htdocs => public}/langs/it_IT/compta.lang | 0 {htdocs => public}/langs/it_IT/contracts.lang | 0 {htdocs => public}/langs/it_IT/cron.lang | 0 {htdocs => public}/langs/it_IT/deliveries.lang | 0 {htdocs => public}/langs/it_IT/dict.lang | 0 {htdocs => public}/langs/it_IT/donations.lang | 0 {htdocs => public}/langs/it_IT/ecm.lang | 0 {htdocs => public}/langs/it_IT/errors.lang | 0 {htdocs => public}/langs/it_IT/exports.lang | 0 {htdocs => public}/langs/it_IT/externalsite.lang | 0 {htdocs => public}/langs/it_IT/ftp.lang | 0 {htdocs => public}/langs/it_IT/google.lang | 0 {htdocs => public}/langs/it_IT/help.lang | 0 {htdocs => public}/langs/it_IT/holiday.lang | 0 {htdocs => public}/langs/it_IT/hrm.lang | 0 {htdocs => public}/langs/it_IT/incoterm.lang | 0 {htdocs => public}/langs/it_IT/install.lang | 0 {htdocs => public}/langs/it_IT/interventions.lang | 0 {htdocs => public}/langs/it_IT/languages.lang | 0 {htdocs => public}/langs/it_IT/ldap.lang | 0 {htdocs => public}/langs/it_IT/link.lang | 0 {htdocs => public}/langs/it_IT/loan.lang | 0 {htdocs => public}/langs/it_IT/mailmanspip.lang | 0 {htdocs => public}/langs/it_IT/mails.lang | 0 {htdocs => public}/langs/it_IT/main.lang | 0 {htdocs => public}/langs/it_IT/margins.lang | 0 {htdocs => public}/langs/it_IT/members.lang | 0 {htdocs => public}/langs/it_IT/oauth.lang | 0 {htdocs => public}/langs/it_IT/opensurvey.lang | 0 {htdocs => public}/langs/it_IT/orders.lang | 0 {htdocs => public}/langs/it_IT/other.lang | 0 {htdocs => public}/langs/it_IT/paybox.lang | 0 {htdocs => public}/langs/it_IT/paypal.lang | 0 {htdocs => public}/langs/it_IT/printing.lang | 0 {htdocs => public}/langs/it_IT/productbatch.lang | 0 {htdocs => public}/langs/it_IT/products.lang | 0 {htdocs => public}/langs/it_IT/projects.lang | 0 {htdocs => public}/langs/it_IT/propal.lang | 0 {htdocs => public}/langs/it_IT/receiptprinter.lang | 0 {htdocs => public}/langs/it_IT/resource.lang | 0 {htdocs => public}/langs/it_IT/salaries.lang | 0 {htdocs => public}/langs/it_IT/sendings.lang | 0 {htdocs => public}/langs/it_IT/sms.lang | 0 {htdocs => public}/langs/it_IT/stocks.lang | 0 .../langs/it_IT/supplier_proposal.lang | 0 {htdocs => public}/langs/it_IT/suppliers.lang | 0 {htdocs => public}/langs/it_IT/trips.lang | 0 {htdocs => public}/langs/it_IT/users.lang | 0 {htdocs => public}/langs/it_IT/website.lang | 0 {htdocs => public}/langs/it_IT/withdrawals.lang | 0 {htdocs => public}/langs/it_IT/workflow.lang | 0 {htdocs => public}/langs/ja_JP/accountancy.lang | 0 {htdocs => public}/langs/ja_JP/admin.lang | 0 {htdocs => public}/langs/ja_JP/agenda.lang | 0 {htdocs => public}/langs/ja_JP/banks.lang | 0 {htdocs => public}/langs/ja_JP/bills.lang | 0 {htdocs => public}/langs/ja_JP/bookmarks.lang | 0 {htdocs => public}/langs/ja_JP/boxes.lang | 0 {htdocs => public}/langs/ja_JP/cashdesk.lang | 0 {htdocs => public}/langs/ja_JP/categories.lang | 0 {htdocs => public}/langs/ja_JP/commercial.lang | 0 {htdocs => public}/langs/ja_JP/companies.lang | 0 {htdocs => public}/langs/ja_JP/compta.lang | 0 {htdocs => public}/langs/ja_JP/contracts.lang | 0 {htdocs => public}/langs/ja_JP/cron.lang | 0 {htdocs => public}/langs/ja_JP/deliveries.lang | 0 {htdocs => public}/langs/ja_JP/dict.lang | 0 {htdocs => public}/langs/ja_JP/donations.lang | 0 {htdocs => public}/langs/ja_JP/ecm.lang | 0 {htdocs => public}/langs/ja_JP/errors.lang | 0 {htdocs => public}/langs/ja_JP/exports.lang | 0 {htdocs => public}/langs/ja_JP/externalsite.lang | 0 {htdocs => public}/langs/ja_JP/ftp.lang | 0 {htdocs => public}/langs/ja_JP/help.lang | 0 {htdocs => public}/langs/ja_JP/holiday.lang | 0 {htdocs => public}/langs/ja_JP/hrm.lang | 0 {htdocs => public}/langs/ja_JP/incoterm.lang | 0 {htdocs => public}/langs/ja_JP/install.lang | 0 {htdocs => public}/langs/ja_JP/interventions.lang | 0 {htdocs => public}/langs/ja_JP/languages.lang | 0 {htdocs => public}/langs/ja_JP/ldap.lang | 0 {htdocs => public}/langs/ja_JP/link.lang | 0 {htdocs => public}/langs/ja_JP/loan.lang | 0 {htdocs => public}/langs/ja_JP/mailmanspip.lang | 0 {htdocs => public}/langs/ja_JP/mails.lang | 0 {htdocs => public}/langs/ja_JP/main.lang | 0 {htdocs => public}/langs/ja_JP/margins.lang | 0 {htdocs => public}/langs/ja_JP/members.lang | 0 {htdocs => public}/langs/ja_JP/oauth.lang | 0 {htdocs => public}/langs/ja_JP/opensurvey.lang | 0 {htdocs => public}/langs/ja_JP/orders.lang | 0 {htdocs => public}/langs/ja_JP/other.lang | 0 {htdocs => public}/langs/ja_JP/paybox.lang | 0 {htdocs => public}/langs/ja_JP/paypal.lang | 0 {htdocs => public}/langs/ja_JP/printing.lang | 0 {htdocs => public}/langs/ja_JP/productbatch.lang | 0 {htdocs => public}/langs/ja_JP/products.lang | 0 {htdocs => public}/langs/ja_JP/projects.lang | 0 {htdocs => public}/langs/ja_JP/propal.lang | 0 {htdocs => public}/langs/ja_JP/receiptprinter.lang | 0 {htdocs => public}/langs/ja_JP/resource.lang | 0 {htdocs => public}/langs/ja_JP/salaries.lang | 0 {htdocs => public}/langs/ja_JP/sendings.lang | 0 {htdocs => public}/langs/ja_JP/sms.lang | 0 {htdocs => public}/langs/ja_JP/stocks.lang | 0 .../langs/ja_JP/supplier_proposal.lang | 0 {htdocs => public}/langs/ja_JP/suppliers.lang | 0 {htdocs => public}/langs/ja_JP/trips.lang | 0 {htdocs => public}/langs/ja_JP/users.lang | 0 {htdocs => public}/langs/ja_JP/website.lang | 0 {htdocs => public}/langs/ja_JP/withdrawals.lang | 0 {htdocs => public}/langs/ja_JP/workflow.lang | 0 {htdocs => public}/langs/ka_GE/accountancy.lang | 0 {htdocs => public}/langs/ka_GE/admin.lang | 0 {htdocs => public}/langs/ka_GE/agenda.lang | 0 {htdocs => public}/langs/ka_GE/banks.lang | 0 {htdocs => public}/langs/ka_GE/bills.lang | 0 {htdocs => public}/langs/ka_GE/bookmarks.lang | 0 {htdocs => public}/langs/ka_GE/boxes.lang | 0 {htdocs => public}/langs/ka_GE/cashdesk.lang | 0 {htdocs => public}/langs/ka_GE/categories.lang | 0 {htdocs => public}/langs/ka_GE/commercial.lang | 0 {htdocs => public}/langs/ka_GE/companies.lang | 0 {htdocs => public}/langs/ka_GE/compta.lang | 0 {htdocs => public}/langs/ka_GE/contracts.lang | 0 {htdocs => public}/langs/ka_GE/cron.lang | 0 {htdocs => public}/langs/ka_GE/deliveries.lang | 0 {htdocs => public}/langs/ka_GE/dict.lang | 0 {htdocs => public}/langs/ka_GE/donations.lang | 0 {htdocs => public}/langs/ka_GE/ecm.lang | 0 {htdocs => public}/langs/ka_GE/errors.lang | 0 {htdocs => public}/langs/ka_GE/exports.lang | 0 {htdocs => public}/langs/ka_GE/externalsite.lang | 0 {htdocs => public}/langs/ka_GE/ftp.lang | 0 {htdocs => public}/langs/ka_GE/help.lang | 0 {htdocs => public}/langs/ka_GE/holiday.lang | 0 {htdocs => public}/langs/ka_GE/hrm.lang | 0 {htdocs => public}/langs/ka_GE/incoterm.lang | 0 {htdocs => public}/langs/ka_GE/install.lang | 0 {htdocs => public}/langs/ka_GE/interventions.lang | 0 {htdocs => public}/langs/ka_GE/languages.lang | 0 {htdocs => public}/langs/ka_GE/ldap.lang | 0 {htdocs => public}/langs/ka_GE/link.lang | 0 {htdocs => public}/langs/ka_GE/loan.lang | 0 {htdocs => public}/langs/ka_GE/mailmanspip.lang | 0 {htdocs => public}/langs/ka_GE/mails.lang | 0 {htdocs => public}/langs/ka_GE/main.lang | 0 {htdocs => public}/langs/ka_GE/margins.lang | 0 {htdocs => public}/langs/ka_GE/members.lang | 0 {htdocs => public}/langs/ka_GE/oauth.lang | 0 {htdocs => public}/langs/ka_GE/opensurvey.lang | 0 {htdocs => public}/langs/ka_GE/orders.lang | 0 {htdocs => public}/langs/ka_GE/other.lang | 0 {htdocs => public}/langs/ka_GE/paybox.lang | 0 {htdocs => public}/langs/ka_GE/paypal.lang | 0 {htdocs => public}/langs/ka_GE/printing.lang | 0 {htdocs => public}/langs/ka_GE/productbatch.lang | 0 {htdocs => public}/langs/ka_GE/products.lang | 0 {htdocs => public}/langs/ka_GE/projects.lang | 0 {htdocs => public}/langs/ka_GE/propal.lang | 0 {htdocs => public}/langs/ka_GE/receiptprinter.lang | 0 {htdocs => public}/langs/ka_GE/resource.lang | 0 {htdocs => public}/langs/ka_GE/salaries.lang | 0 {htdocs => public}/langs/ka_GE/sendings.lang | 0 {htdocs => public}/langs/ka_GE/sms.lang | 0 {htdocs => public}/langs/ka_GE/stocks.lang | 0 .../langs/ka_GE/supplier_proposal.lang | 0 {htdocs => public}/langs/ka_GE/suppliers.lang | 0 {htdocs => public}/langs/ka_GE/trips.lang | 0 {htdocs => public}/langs/ka_GE/users.lang | 0 {htdocs => public}/langs/ka_GE/website.lang | 0 {htdocs => public}/langs/ka_GE/withdrawals.lang | 0 {htdocs => public}/langs/ka_GE/workflow.lang | 0 {htdocs => public}/langs/km_KH/accountancy.lang | 0 {htdocs => public}/langs/km_KH/admin.lang | 0 {htdocs => public}/langs/km_KH/agenda.lang | 0 {htdocs => public}/langs/km_KH/banks.lang | 0 {htdocs => public}/langs/km_KH/bills.lang | 0 {htdocs => public}/langs/km_KH/bookmarks.lang | 0 {htdocs => public}/langs/km_KH/boxes.lang | 0 {htdocs => public}/langs/km_KH/cashdesk.lang | 0 {htdocs => public}/langs/km_KH/categories.lang | 0 {htdocs => public}/langs/km_KH/commercial.lang | 0 {htdocs => public}/langs/km_KH/companies.lang | 0 {htdocs => public}/langs/km_KH/compta.lang | 0 {htdocs => public}/langs/km_KH/contracts.lang | 0 {htdocs => public}/langs/km_KH/cron.lang | 0 {htdocs => public}/langs/km_KH/deliveries.lang | 0 {htdocs => public}/langs/km_KH/dict.lang | 0 {htdocs => public}/langs/km_KH/donations.lang | 0 {htdocs => public}/langs/km_KH/ecm.lang | 0 {htdocs => public}/langs/km_KH/errors.lang | 0 {htdocs => public}/langs/km_KH/exports.lang | 0 {htdocs => public}/langs/km_KH/externalsite.lang | 0 {htdocs => public}/langs/km_KH/ftp.lang | 0 {htdocs => public}/langs/km_KH/help.lang | 0 {htdocs => public}/langs/km_KH/holiday.lang | 0 {htdocs => public}/langs/km_KH/hrm.lang | 0 {htdocs => public}/langs/km_KH/incoterm.lang | 0 {htdocs => public}/langs/km_KH/install.lang | 0 {htdocs => public}/langs/km_KH/interventions.lang | 0 {htdocs => public}/langs/km_KH/languages.lang | 0 {htdocs => public}/langs/km_KH/ldap.lang | 0 {htdocs => public}/langs/km_KH/link.lang | 0 {htdocs => public}/langs/km_KH/loan.lang | 0 {htdocs => public}/langs/km_KH/mailmanspip.lang | 0 {htdocs => public}/langs/km_KH/mails.lang | 0 {htdocs => public}/langs/km_KH/main.lang | 0 {htdocs => public}/langs/km_KH/margins.lang | 0 {htdocs => public}/langs/km_KH/members.lang | 0 {htdocs => public}/langs/km_KH/oauth.lang | 0 {htdocs => public}/langs/km_KH/opensurvey.lang | 0 {htdocs => public}/langs/km_KH/orders.lang | 0 {htdocs => public}/langs/km_KH/other.lang | 0 {htdocs => public}/langs/km_KH/paybox.lang | 0 {htdocs => public}/langs/km_KH/paypal.lang | 0 {htdocs => public}/langs/km_KH/printing.lang | 0 {htdocs => public}/langs/km_KH/productbatch.lang | 0 {htdocs => public}/langs/km_KH/products.lang | 0 {htdocs => public}/langs/km_KH/projects.lang | 0 {htdocs => public}/langs/km_KH/propal.lang | 0 {htdocs => public}/langs/km_KH/receiptprinter.lang | 0 {htdocs => public}/langs/km_KH/resource.lang | 0 {htdocs => public}/langs/km_KH/salaries.lang | 0 {htdocs => public}/langs/km_KH/sendings.lang | 0 {htdocs => public}/langs/km_KH/sms.lang | 0 {htdocs => public}/langs/km_KH/stocks.lang | 0 .../langs/km_KH/supplier_proposal.lang | 0 {htdocs => public}/langs/km_KH/suppliers.lang | 0 {htdocs => public}/langs/km_KH/trips.lang | 0 {htdocs => public}/langs/km_KH/users.lang | 0 {htdocs => public}/langs/km_KH/website.lang | 0 {htdocs => public}/langs/km_KH/withdrawals.lang | 0 {htdocs => public}/langs/km_KH/workflow.lang | 0 {htdocs => public}/langs/kn_IN/accountancy.lang | 0 {htdocs => public}/langs/kn_IN/admin.lang | 0 {htdocs => public}/langs/kn_IN/agenda.lang | 0 {htdocs => public}/langs/kn_IN/banks.lang | 0 {htdocs => public}/langs/kn_IN/bills.lang | 0 {htdocs => public}/langs/kn_IN/bookmarks.lang | 0 {htdocs => public}/langs/kn_IN/boxes.lang | 0 {htdocs => public}/langs/kn_IN/cashdesk.lang | 0 {htdocs => public}/langs/kn_IN/categories.lang | 0 {htdocs => public}/langs/kn_IN/commercial.lang | 0 {htdocs => public}/langs/kn_IN/companies.lang | 0 {htdocs => public}/langs/kn_IN/compta.lang | 0 {htdocs => public}/langs/kn_IN/contracts.lang | 0 {htdocs => public}/langs/kn_IN/cron.lang | 0 {htdocs => public}/langs/kn_IN/deliveries.lang | 0 {htdocs => public}/langs/kn_IN/dict.lang | 0 {htdocs => public}/langs/kn_IN/donations.lang | 0 {htdocs => public}/langs/kn_IN/ecm.lang | 0 {htdocs => public}/langs/kn_IN/errors.lang | 0 {htdocs => public}/langs/kn_IN/exports.lang | 0 {htdocs => public}/langs/kn_IN/externalsite.lang | 0 {htdocs => public}/langs/kn_IN/ftp.lang | 0 {htdocs => public}/langs/kn_IN/help.lang | 0 {htdocs => public}/langs/kn_IN/holiday.lang | 0 {htdocs => public}/langs/kn_IN/hrm.lang | 0 {htdocs => public}/langs/kn_IN/incoterm.lang | 0 {htdocs => public}/langs/kn_IN/install.lang | 0 {htdocs => public}/langs/kn_IN/interventions.lang | 0 {htdocs => public}/langs/kn_IN/languages.lang | 0 {htdocs => public}/langs/kn_IN/ldap.lang | 0 {htdocs => public}/langs/kn_IN/link.lang | 0 {htdocs => public}/langs/kn_IN/loan.lang | 0 {htdocs => public}/langs/kn_IN/mailmanspip.lang | 0 {htdocs => public}/langs/kn_IN/mails.lang | 0 {htdocs => public}/langs/kn_IN/main.lang | 0 {htdocs => public}/langs/kn_IN/margins.lang | 0 {htdocs => public}/langs/kn_IN/members.lang | 0 {htdocs => public}/langs/kn_IN/oauth.lang | 0 {htdocs => public}/langs/kn_IN/opensurvey.lang | 0 {htdocs => public}/langs/kn_IN/orders.lang | 0 {htdocs => public}/langs/kn_IN/other.lang | 0 {htdocs => public}/langs/kn_IN/paybox.lang | 0 {htdocs => public}/langs/kn_IN/paypal.lang | 0 {htdocs => public}/langs/kn_IN/printing.lang | 0 {htdocs => public}/langs/kn_IN/productbatch.lang | 0 {htdocs => public}/langs/kn_IN/products.lang | 0 {htdocs => public}/langs/kn_IN/projects.lang | 0 {htdocs => public}/langs/kn_IN/propal.lang | 0 {htdocs => public}/langs/kn_IN/receiptprinter.lang | 0 {htdocs => public}/langs/kn_IN/resource.lang | 0 {htdocs => public}/langs/kn_IN/salaries.lang | 0 {htdocs => public}/langs/kn_IN/sendings.lang | 0 {htdocs => public}/langs/kn_IN/sms.lang | 0 {htdocs => public}/langs/kn_IN/stocks.lang | 0 .../langs/kn_IN/supplier_proposal.lang | 0 {htdocs => public}/langs/kn_IN/suppliers.lang | 0 {htdocs => public}/langs/kn_IN/trips.lang | 0 {htdocs => public}/langs/kn_IN/users.lang | 0 {htdocs => public}/langs/kn_IN/website.lang | 0 {htdocs => public}/langs/kn_IN/withdrawals.lang | 0 {htdocs => public}/langs/kn_IN/workflow.lang | 0 {htdocs => public}/langs/ko_KR/accountancy.lang | 0 {htdocs => public}/langs/ko_KR/admin.lang | 0 {htdocs => public}/langs/ko_KR/agenda.lang | 0 {htdocs => public}/langs/ko_KR/banks.lang | 0 {htdocs => public}/langs/ko_KR/bills.lang | 0 {htdocs => public}/langs/ko_KR/bookmarks.lang | 0 {htdocs => public}/langs/ko_KR/boxes.lang | 0 {htdocs => public}/langs/ko_KR/cashdesk.lang | 0 {htdocs => public}/langs/ko_KR/categories.lang | 0 {htdocs => public}/langs/ko_KR/commercial.lang | 0 {htdocs => public}/langs/ko_KR/companies.lang | 0 {htdocs => public}/langs/ko_KR/compta.lang | 0 {htdocs => public}/langs/ko_KR/contracts.lang | 0 {htdocs => public}/langs/ko_KR/cron.lang | 0 {htdocs => public}/langs/ko_KR/deliveries.lang | 0 {htdocs => public}/langs/ko_KR/dict.lang | 0 {htdocs => public}/langs/ko_KR/donations.lang | 0 {htdocs => public}/langs/ko_KR/ecm.lang | 0 {htdocs => public}/langs/ko_KR/errors.lang | 0 {htdocs => public}/langs/ko_KR/exports.lang | 0 {htdocs => public}/langs/ko_KR/externalsite.lang | 0 {htdocs => public}/langs/ko_KR/ftp.lang | 0 {htdocs => public}/langs/ko_KR/help.lang | 0 {htdocs => public}/langs/ko_KR/holiday.lang | 0 {htdocs => public}/langs/ko_KR/hrm.lang | 0 {htdocs => public}/langs/ko_KR/incoterm.lang | 0 {htdocs => public}/langs/ko_KR/install.lang | 0 {htdocs => public}/langs/ko_KR/interventions.lang | 0 {htdocs => public}/langs/ko_KR/languages.lang | 0 {htdocs => public}/langs/ko_KR/ldap.lang | 0 {htdocs => public}/langs/ko_KR/link.lang | 0 {htdocs => public}/langs/ko_KR/loan.lang | 0 {htdocs => public}/langs/ko_KR/mailmanspip.lang | 0 {htdocs => public}/langs/ko_KR/mails.lang | 0 {htdocs => public}/langs/ko_KR/main.lang | 0 {htdocs => public}/langs/ko_KR/margins.lang | 0 {htdocs => public}/langs/ko_KR/members.lang | 0 {htdocs => public}/langs/ko_KR/oauth.lang | 0 {htdocs => public}/langs/ko_KR/opensurvey.lang | 0 {htdocs => public}/langs/ko_KR/orders.lang | 0 {htdocs => public}/langs/ko_KR/other.lang | 0 {htdocs => public}/langs/ko_KR/paybox.lang | 0 {htdocs => public}/langs/ko_KR/paypal.lang | 0 {htdocs => public}/langs/ko_KR/printing.lang | 0 {htdocs => public}/langs/ko_KR/productbatch.lang | 0 {htdocs => public}/langs/ko_KR/products.lang | 0 {htdocs => public}/langs/ko_KR/projects.lang | 0 {htdocs => public}/langs/ko_KR/propal.lang | 0 {htdocs => public}/langs/ko_KR/receiptprinter.lang | 0 {htdocs => public}/langs/ko_KR/resource.lang | 0 {htdocs => public}/langs/ko_KR/salaries.lang | 0 {htdocs => public}/langs/ko_KR/sendings.lang | 0 {htdocs => public}/langs/ko_KR/sms.lang | 0 {htdocs => public}/langs/ko_KR/stocks.lang | 0 .../langs/ko_KR/supplier_proposal.lang | 0 {htdocs => public}/langs/ko_KR/suppliers.lang | 0 {htdocs => public}/langs/ko_KR/trips.lang | 0 {htdocs => public}/langs/ko_KR/users.lang | 0 {htdocs => public}/langs/ko_KR/website.lang | 0 {htdocs => public}/langs/ko_KR/withdrawals.lang | 0 {htdocs => public}/langs/ko_KR/workflow.lang | 0 {htdocs => public}/langs/lo_LA/accountancy.lang | 0 {htdocs => public}/langs/lo_LA/admin.lang | 0 {htdocs => public}/langs/lo_LA/agenda.lang | 0 {htdocs => public}/langs/lo_LA/banks.lang | 0 {htdocs => public}/langs/lo_LA/bills.lang | 0 {htdocs => public}/langs/lo_LA/bookmarks.lang | 0 {htdocs => public}/langs/lo_LA/boxes.lang | 0 {htdocs => public}/langs/lo_LA/cashdesk.lang | 0 {htdocs => public}/langs/lo_LA/categories.lang | 0 {htdocs => public}/langs/lo_LA/commercial.lang | 0 {htdocs => public}/langs/lo_LA/companies.lang | 0 {htdocs => public}/langs/lo_LA/compta.lang | 0 {htdocs => public}/langs/lo_LA/contracts.lang | 0 {htdocs => public}/langs/lo_LA/cron.lang | 0 {htdocs => public}/langs/lo_LA/deliveries.lang | 0 {htdocs => public}/langs/lo_LA/dict.lang | 0 {htdocs => public}/langs/lo_LA/donations.lang | 0 {htdocs => public}/langs/lo_LA/ecm.lang | 0 {htdocs => public}/langs/lo_LA/errors.lang | 0 {htdocs => public}/langs/lo_LA/exports.lang | 0 {htdocs => public}/langs/lo_LA/externalsite.lang | 0 {htdocs => public}/langs/lo_LA/ftp.lang | 0 {htdocs => public}/langs/lo_LA/help.lang | 0 {htdocs => public}/langs/lo_LA/holiday.lang | 0 {htdocs => public}/langs/lo_LA/hrm.lang | 0 {htdocs => public}/langs/lo_LA/incoterm.lang | 0 {htdocs => public}/langs/lo_LA/install.lang | 0 {htdocs => public}/langs/lo_LA/interventions.lang | 0 {htdocs => public}/langs/lo_LA/languages.lang | 0 {htdocs => public}/langs/lo_LA/ldap.lang | 0 {htdocs => public}/langs/lo_LA/link.lang | 0 {htdocs => public}/langs/lo_LA/loan.lang | 0 {htdocs => public}/langs/lo_LA/mailmanspip.lang | 0 {htdocs => public}/langs/lo_LA/mails.lang | 0 {htdocs => public}/langs/lo_LA/main.lang | 0 {htdocs => public}/langs/lo_LA/margins.lang | 0 {htdocs => public}/langs/lo_LA/members.lang | 0 {htdocs => public}/langs/lo_LA/oauth.lang | 0 {htdocs => public}/langs/lo_LA/opensurvey.lang | 0 {htdocs => public}/langs/lo_LA/orders.lang | 0 {htdocs => public}/langs/lo_LA/other.lang | 0 {htdocs => public}/langs/lo_LA/paybox.lang | 0 {htdocs => public}/langs/lo_LA/paypal.lang | 0 {htdocs => public}/langs/lo_LA/printing.lang | 0 {htdocs => public}/langs/lo_LA/productbatch.lang | 0 {htdocs => public}/langs/lo_LA/products.lang | 0 {htdocs => public}/langs/lo_LA/projects.lang | 0 {htdocs => public}/langs/lo_LA/propal.lang | 0 {htdocs => public}/langs/lo_LA/receiptprinter.lang | 0 {htdocs => public}/langs/lo_LA/resource.lang | 0 {htdocs => public}/langs/lo_LA/salaries.lang | 0 {htdocs => public}/langs/lo_LA/sendings.lang | 0 {htdocs => public}/langs/lo_LA/sms.lang | 0 {htdocs => public}/langs/lo_LA/stocks.lang | 0 .../langs/lo_LA/supplier_proposal.lang | 0 {htdocs => public}/langs/lo_LA/suppliers.lang | 0 {htdocs => public}/langs/lo_LA/trips.lang | 0 {htdocs => public}/langs/lo_LA/users.lang | 0 {htdocs => public}/langs/lo_LA/website.lang | 0 {htdocs => public}/langs/lo_LA/withdrawals.lang | 0 {htdocs => public}/langs/lo_LA/workflow.lang | 0 {htdocs => public}/langs/lt_LT/accountancy.lang | 0 {htdocs => public}/langs/lt_LT/admin.lang | 0 {htdocs => public}/langs/lt_LT/agenda.lang | 0 {htdocs => public}/langs/lt_LT/banks.lang | 0 {htdocs => public}/langs/lt_LT/bills.lang | 0 {htdocs => public}/langs/lt_LT/bookmarks.lang | 0 {htdocs => public}/langs/lt_LT/boxes.lang | 0 {htdocs => public}/langs/lt_LT/cashdesk.lang | 0 {htdocs => public}/langs/lt_LT/categories.lang | 0 {htdocs => public}/langs/lt_LT/commercial.lang | 0 {htdocs => public}/langs/lt_LT/companies.lang | 0 {htdocs => public}/langs/lt_LT/compta.lang | 0 {htdocs => public}/langs/lt_LT/contracts.lang | 0 {htdocs => public}/langs/lt_LT/cron.lang | 0 {htdocs => public}/langs/lt_LT/deliveries.lang | 0 {htdocs => public}/langs/lt_LT/dict.lang | 0 {htdocs => public}/langs/lt_LT/donations.lang | 0 {htdocs => public}/langs/lt_LT/ecm.lang | 0 {htdocs => public}/langs/lt_LT/errors.lang | 0 {htdocs => public}/langs/lt_LT/exports.lang | 0 {htdocs => public}/langs/lt_LT/externalsite.lang | 0 {htdocs => public}/langs/lt_LT/ftp.lang | 0 {htdocs => public}/langs/lt_LT/help.lang | 0 {htdocs => public}/langs/lt_LT/holiday.lang | 0 {htdocs => public}/langs/lt_LT/hrm.lang | 0 {htdocs => public}/langs/lt_LT/incoterm.lang | 0 {htdocs => public}/langs/lt_LT/install.lang | 0 {htdocs => public}/langs/lt_LT/interventions.lang | 0 {htdocs => public}/langs/lt_LT/languages.lang | 0 {htdocs => public}/langs/lt_LT/ldap.lang | 0 {htdocs => public}/langs/lt_LT/link.lang | 0 {htdocs => public}/langs/lt_LT/loan.lang | 0 {htdocs => public}/langs/lt_LT/mailmanspip.lang | 0 {htdocs => public}/langs/lt_LT/mails.lang | 0 {htdocs => public}/langs/lt_LT/main.lang | 0 {htdocs => public}/langs/lt_LT/margins.lang | 0 {htdocs => public}/langs/lt_LT/members.lang | 0 {htdocs => public}/langs/lt_LT/oauth.lang | 0 {htdocs => public}/langs/lt_LT/opensurvey.lang | 0 {htdocs => public}/langs/lt_LT/orders.lang | 0 {htdocs => public}/langs/lt_LT/other.lang | 0 {htdocs => public}/langs/lt_LT/paybox.lang | 0 {htdocs => public}/langs/lt_LT/paypal.lang | 0 {htdocs => public}/langs/lt_LT/printing.lang | 0 {htdocs => public}/langs/lt_LT/productbatch.lang | 0 {htdocs => public}/langs/lt_LT/products.lang | 0 {htdocs => public}/langs/lt_LT/projects.lang | 0 {htdocs => public}/langs/lt_LT/propal.lang | 0 {htdocs => public}/langs/lt_LT/receiptprinter.lang | 0 {htdocs => public}/langs/lt_LT/resource.lang | 0 {htdocs => public}/langs/lt_LT/salaries.lang | 0 {htdocs => public}/langs/lt_LT/sendings.lang | 0 {htdocs => public}/langs/lt_LT/sms.lang | 0 {htdocs => public}/langs/lt_LT/stocks.lang | 0 .../langs/lt_LT/supplier_proposal.lang | 0 {htdocs => public}/langs/lt_LT/suppliers.lang | 0 {htdocs => public}/langs/lt_LT/trips.lang | 0 {htdocs => public}/langs/lt_LT/users.lang | 0 {htdocs => public}/langs/lt_LT/website.lang | 0 {htdocs => public}/langs/lt_LT/withdrawals.lang | 0 {htdocs => public}/langs/lt_LT/workflow.lang | 0 {htdocs => public}/langs/lv_LV/accountancy.lang | 0 {htdocs => public}/langs/lv_LV/admin.lang | 0 {htdocs => public}/langs/lv_LV/agenda.lang | 0 {htdocs => public}/langs/lv_LV/banks.lang | 0 {htdocs => public}/langs/lv_LV/bills.lang | 0 {htdocs => public}/langs/lv_LV/bookmarks.lang | 0 {htdocs => public}/langs/lv_LV/boxes.lang | 0 {htdocs => public}/langs/lv_LV/cashdesk.lang | 0 {htdocs => public}/langs/lv_LV/categories.lang | 0 {htdocs => public}/langs/lv_LV/commercial.lang | 0 {htdocs => public}/langs/lv_LV/companies.lang | 0 {htdocs => public}/langs/lv_LV/compta.lang | 0 {htdocs => public}/langs/lv_LV/contracts.lang | 0 {htdocs => public}/langs/lv_LV/cron.lang | 0 {htdocs => public}/langs/lv_LV/deliveries.lang | 0 {htdocs => public}/langs/lv_LV/dict.lang | 0 {htdocs => public}/langs/lv_LV/donations.lang | 0 {htdocs => public}/langs/lv_LV/ecm.lang | 0 {htdocs => public}/langs/lv_LV/errors.lang | 0 {htdocs => public}/langs/lv_LV/exports.lang | 0 {htdocs => public}/langs/lv_LV/externalsite.lang | 0 {htdocs => public}/langs/lv_LV/ftp.lang | 0 {htdocs => public}/langs/lv_LV/help.lang | 0 {htdocs => public}/langs/lv_LV/holiday.lang | 0 {htdocs => public}/langs/lv_LV/hrm.lang | 0 {htdocs => public}/langs/lv_LV/incoterm.lang | 0 {htdocs => public}/langs/lv_LV/install.lang | 0 {htdocs => public}/langs/lv_LV/interventions.lang | 0 {htdocs => public}/langs/lv_LV/languages.lang | 0 {htdocs => public}/langs/lv_LV/ldap.lang | 0 {htdocs => public}/langs/lv_LV/link.lang | 0 {htdocs => public}/langs/lv_LV/loan.lang | 0 {htdocs => public}/langs/lv_LV/mailmanspip.lang | 0 {htdocs => public}/langs/lv_LV/mails.lang | 0 {htdocs => public}/langs/lv_LV/main.lang | 0 {htdocs => public}/langs/lv_LV/margins.lang | 0 {htdocs => public}/langs/lv_LV/members.lang | 0 {htdocs => public}/langs/lv_LV/oauth.lang | 0 {htdocs => public}/langs/lv_LV/opensurvey.lang | 0 {htdocs => public}/langs/lv_LV/orders.lang | 0 {htdocs => public}/langs/lv_LV/other.lang | 0 {htdocs => public}/langs/lv_LV/paybox.lang | 0 {htdocs => public}/langs/lv_LV/paypal.lang | 0 {htdocs => public}/langs/lv_LV/printing.lang | 0 {htdocs => public}/langs/lv_LV/productbatch.lang | 0 {htdocs => public}/langs/lv_LV/products.lang | 0 {htdocs => public}/langs/lv_LV/projects.lang | 0 {htdocs => public}/langs/lv_LV/propal.lang | 0 {htdocs => public}/langs/lv_LV/receiptprinter.lang | 0 {htdocs => public}/langs/lv_LV/resource.lang | 0 {htdocs => public}/langs/lv_LV/salaries.lang | 0 {htdocs => public}/langs/lv_LV/sendings.lang | 0 {htdocs => public}/langs/lv_LV/sms.lang | 0 {htdocs => public}/langs/lv_LV/stocks.lang | 0 .../langs/lv_LV/supplier_proposal.lang | 0 {htdocs => public}/langs/lv_LV/suppliers.lang | 0 {htdocs => public}/langs/lv_LV/trips.lang | 0 {htdocs => public}/langs/lv_LV/users.lang | 0 {htdocs => public}/langs/lv_LV/website.lang | 0 {htdocs => public}/langs/lv_LV/withdrawals.lang | 0 {htdocs => public}/langs/lv_LV/workflow.lang | 0 {htdocs => public}/langs/mk_MK/accountancy.lang | 0 {htdocs => public}/langs/mk_MK/admin.lang | 0 {htdocs => public}/langs/mk_MK/agenda.lang | 0 {htdocs => public}/langs/mk_MK/banks.lang | 0 {htdocs => public}/langs/mk_MK/bills.lang | 0 {htdocs => public}/langs/mk_MK/bookmarks.lang | 0 {htdocs => public}/langs/mk_MK/boxes.lang | 0 {htdocs => public}/langs/mk_MK/cashdesk.lang | 0 {htdocs => public}/langs/mk_MK/categories.lang | 0 {htdocs => public}/langs/mk_MK/commercial.lang | 0 {htdocs => public}/langs/mk_MK/companies.lang | 0 {htdocs => public}/langs/mk_MK/compta.lang | 0 {htdocs => public}/langs/mk_MK/contracts.lang | 0 {htdocs => public}/langs/mk_MK/cron.lang | 0 {htdocs => public}/langs/mk_MK/deliveries.lang | 0 {htdocs => public}/langs/mk_MK/dict.lang | 0 {htdocs => public}/langs/mk_MK/donations.lang | 0 {htdocs => public}/langs/mk_MK/ecm.lang | 0 {htdocs => public}/langs/mk_MK/errors.lang | 0 {htdocs => public}/langs/mk_MK/exports.lang | 0 {htdocs => public}/langs/mk_MK/externalsite.lang | 0 {htdocs => public}/langs/mk_MK/ftp.lang | 0 {htdocs => public}/langs/mk_MK/help.lang | 0 {htdocs => public}/langs/mk_MK/holiday.lang | 0 {htdocs => public}/langs/mk_MK/hrm.lang | 0 {htdocs => public}/langs/mk_MK/incoterm.lang | 0 {htdocs => public}/langs/mk_MK/install.lang | 0 {htdocs => public}/langs/mk_MK/interventions.lang | 0 {htdocs => public}/langs/mk_MK/languages.lang | 0 {htdocs => public}/langs/mk_MK/ldap.lang | 0 {htdocs => public}/langs/mk_MK/link.lang | 0 {htdocs => public}/langs/mk_MK/loan.lang | 0 {htdocs => public}/langs/mk_MK/mailmanspip.lang | 0 {htdocs => public}/langs/mk_MK/mails.lang | 0 {htdocs => public}/langs/mk_MK/main.lang | 0 {htdocs => public}/langs/mk_MK/margins.lang | 0 {htdocs => public}/langs/mk_MK/members.lang | 0 {htdocs => public}/langs/mk_MK/oauth.lang | 0 {htdocs => public}/langs/mk_MK/opensurvey.lang | 0 {htdocs => public}/langs/mk_MK/orders.lang | 0 {htdocs => public}/langs/mk_MK/other.lang | 0 {htdocs => public}/langs/mk_MK/paybox.lang | 0 {htdocs => public}/langs/mk_MK/paypal.lang | 0 {htdocs => public}/langs/mk_MK/printing.lang | 0 {htdocs => public}/langs/mk_MK/productbatch.lang | 0 {htdocs => public}/langs/mk_MK/products.lang | 0 {htdocs => public}/langs/mk_MK/projects.lang | 0 {htdocs => public}/langs/mk_MK/propal.lang | 0 {htdocs => public}/langs/mk_MK/receiptprinter.lang | 0 {htdocs => public}/langs/mk_MK/resource.lang | 0 {htdocs => public}/langs/mk_MK/salaries.lang | 0 {htdocs => public}/langs/mk_MK/sendings.lang | 0 {htdocs => public}/langs/mk_MK/sms.lang | 0 {htdocs => public}/langs/mk_MK/stocks.lang | 0 .../langs/mk_MK/supplier_proposal.lang | 0 {htdocs => public}/langs/mk_MK/suppliers.lang | 0 {htdocs => public}/langs/mk_MK/trips.lang | 0 {htdocs => public}/langs/mk_MK/users.lang | 0 {htdocs => public}/langs/mk_MK/website.lang | 0 {htdocs => public}/langs/mk_MK/withdrawals.lang | 0 {htdocs => public}/langs/mk_MK/workflow.lang | 0 {htdocs => public}/langs/mn_MN/accountancy.lang | 0 {htdocs => public}/langs/mn_MN/admin.lang | 0 {htdocs => public}/langs/mn_MN/agenda.lang | 0 {htdocs => public}/langs/mn_MN/banks.lang | 0 {htdocs => public}/langs/mn_MN/bills.lang | 0 {htdocs => public}/langs/mn_MN/bookmarks.lang | 0 {htdocs => public}/langs/mn_MN/boxes.lang | 0 {htdocs => public}/langs/mn_MN/cashdesk.lang | 0 {htdocs => public}/langs/mn_MN/categories.lang | 0 {htdocs => public}/langs/mn_MN/commercial.lang | 0 {htdocs => public}/langs/mn_MN/companies.lang | 0 {htdocs => public}/langs/mn_MN/compta.lang | 0 {htdocs => public}/langs/mn_MN/contracts.lang | 0 {htdocs => public}/langs/mn_MN/cron.lang | 0 {htdocs => public}/langs/mn_MN/deliveries.lang | 0 {htdocs => public}/langs/mn_MN/dict.lang | 0 {htdocs => public}/langs/mn_MN/donations.lang | 0 {htdocs => public}/langs/mn_MN/ecm.lang | 0 {htdocs => public}/langs/mn_MN/errors.lang | 0 {htdocs => public}/langs/mn_MN/exports.lang | 0 {htdocs => public}/langs/mn_MN/externalsite.lang | 0 {htdocs => public}/langs/mn_MN/ftp.lang | 0 {htdocs => public}/langs/mn_MN/help.lang | 0 {htdocs => public}/langs/mn_MN/holiday.lang | 0 {htdocs => public}/langs/mn_MN/hrm.lang | 0 {htdocs => public}/langs/mn_MN/incoterm.lang | 0 {htdocs => public}/langs/mn_MN/install.lang | 0 {htdocs => public}/langs/mn_MN/interventions.lang | 0 {htdocs => public}/langs/mn_MN/languages.lang | 0 {htdocs => public}/langs/mn_MN/ldap.lang | 0 {htdocs => public}/langs/mn_MN/link.lang | 0 {htdocs => public}/langs/mn_MN/loan.lang | 0 {htdocs => public}/langs/mn_MN/mailmanspip.lang | 0 {htdocs => public}/langs/mn_MN/mails.lang | 0 {htdocs => public}/langs/mn_MN/main.lang | 0 {htdocs => public}/langs/mn_MN/margins.lang | 0 {htdocs => public}/langs/mn_MN/members.lang | 0 {htdocs => public}/langs/mn_MN/oauth.lang | 0 {htdocs => public}/langs/mn_MN/opensurvey.lang | 0 {htdocs => public}/langs/mn_MN/orders.lang | 0 {htdocs => public}/langs/mn_MN/other.lang | 0 {htdocs => public}/langs/mn_MN/paybox.lang | 0 {htdocs => public}/langs/mn_MN/paypal.lang | 0 {htdocs => public}/langs/mn_MN/printing.lang | 0 {htdocs => public}/langs/mn_MN/productbatch.lang | 0 {htdocs => public}/langs/mn_MN/products.lang | 0 {htdocs => public}/langs/mn_MN/projects.lang | 0 {htdocs => public}/langs/mn_MN/propal.lang | 0 {htdocs => public}/langs/mn_MN/receiptprinter.lang | 0 {htdocs => public}/langs/mn_MN/resource.lang | 0 {htdocs => public}/langs/mn_MN/salaries.lang | 0 {htdocs => public}/langs/mn_MN/sendings.lang | 0 {htdocs => public}/langs/mn_MN/sms.lang | 0 {htdocs => public}/langs/mn_MN/stocks.lang | 0 .../langs/mn_MN/supplier_proposal.lang | 0 {htdocs => public}/langs/mn_MN/suppliers.lang | 0 {htdocs => public}/langs/mn_MN/trips.lang | 0 {htdocs => public}/langs/mn_MN/users.lang | 0 {htdocs => public}/langs/mn_MN/website.lang | 0 {htdocs => public}/langs/mn_MN/withdrawals.lang | 0 {htdocs => public}/langs/mn_MN/workflow.lang | 0 {htdocs => public}/langs/nb_NO/accountancy.lang | 0 {htdocs => public}/langs/nb_NO/admin.lang | 0 {htdocs => public}/langs/nb_NO/agenda.lang | 0 {htdocs => public}/langs/nb_NO/banks.lang | 0 {htdocs => public}/langs/nb_NO/bills.lang | 0 {htdocs => public}/langs/nb_NO/bookmarks.lang | 0 {htdocs => public}/langs/nb_NO/boxes.lang | 0 {htdocs => public}/langs/nb_NO/cashdesk.lang | 0 {htdocs => public}/langs/nb_NO/categories.lang | 0 {htdocs => public}/langs/nb_NO/commercial.lang | 0 {htdocs => public}/langs/nb_NO/companies.lang | 0 {htdocs => public}/langs/nb_NO/compta.lang | 0 {htdocs => public}/langs/nb_NO/contracts.lang | 0 {htdocs => public}/langs/nb_NO/cron.lang | 0 {htdocs => public}/langs/nb_NO/deliveries.lang | 0 {htdocs => public}/langs/nb_NO/dict.lang | 0 {htdocs => public}/langs/nb_NO/donations.lang | 0 {htdocs => public}/langs/nb_NO/ecm.lang | 0 {htdocs => public}/langs/nb_NO/errors.lang | 0 {htdocs => public}/langs/nb_NO/exports.lang | 0 {htdocs => public}/langs/nb_NO/externalsite.lang | 0 {htdocs => public}/langs/nb_NO/ftp.lang | 0 {htdocs => public}/langs/nb_NO/help.lang | 0 {htdocs => public}/langs/nb_NO/holiday.lang | 0 {htdocs => public}/langs/nb_NO/hrm.lang | 0 {htdocs => public}/langs/nb_NO/incoterm.lang | 0 {htdocs => public}/langs/nb_NO/install.lang | 0 {htdocs => public}/langs/nb_NO/interventions.lang | 0 {htdocs => public}/langs/nb_NO/languages.lang | 0 {htdocs => public}/langs/nb_NO/ldap.lang | 0 {htdocs => public}/langs/nb_NO/link.lang | 0 {htdocs => public}/langs/nb_NO/loan.lang | 0 {htdocs => public}/langs/nb_NO/mailmanspip.lang | 0 {htdocs => public}/langs/nb_NO/mails.lang | 0 {htdocs => public}/langs/nb_NO/main.lang | 0 {htdocs => public}/langs/nb_NO/margins.lang | 0 {htdocs => public}/langs/nb_NO/members.lang | 0 {htdocs => public}/langs/nb_NO/oauth.lang | 0 {htdocs => public}/langs/nb_NO/opensurvey.lang | 0 {htdocs => public}/langs/nb_NO/orders.lang | 0 {htdocs => public}/langs/nb_NO/other.lang | 0 {htdocs => public}/langs/nb_NO/paybox.lang | 0 {htdocs => public}/langs/nb_NO/paypal.lang | 0 {htdocs => public}/langs/nb_NO/printing.lang | 0 {htdocs => public}/langs/nb_NO/productbatch.lang | 0 {htdocs => public}/langs/nb_NO/products.lang | 0 {htdocs => public}/langs/nb_NO/projects.lang | 0 {htdocs => public}/langs/nb_NO/propal.lang | 0 {htdocs => public}/langs/nb_NO/receiptprinter.lang | 0 {htdocs => public}/langs/nb_NO/resource.lang | 0 {htdocs => public}/langs/nb_NO/salaries.lang | 0 {htdocs => public}/langs/nb_NO/sendings.lang | 0 {htdocs => public}/langs/nb_NO/sms.lang | 0 {htdocs => public}/langs/nb_NO/stocks.lang | 0 .../langs/nb_NO/supplier_proposal.lang | 0 {htdocs => public}/langs/nb_NO/suppliers.lang | 0 {htdocs => public}/langs/nb_NO/trips.lang | 0 {htdocs => public}/langs/nb_NO/users.lang | 0 {htdocs => public}/langs/nb_NO/website.lang | 0 {htdocs => public}/langs/nb_NO/withdrawals.lang | 0 {htdocs => public}/langs/nb_NO/workflow.lang | 0 {htdocs => public}/langs/nl_BE/accountancy.lang | 0 {htdocs => public}/langs/nl_BE/admin.lang | 0 {htdocs => public}/langs/nl_BE/agenda.lang | 0 {htdocs => public}/langs/nl_BE/banks.lang | 0 {htdocs => public}/langs/nl_BE/bills.lang | 0 {htdocs => public}/langs/nl_BE/bookmarks.lang | 0 {htdocs => public}/langs/nl_BE/boxes.lang | 0 {htdocs => public}/langs/nl_BE/cashdesk.lang | 0 {htdocs => public}/langs/nl_BE/categories.lang | 0 {htdocs => public}/langs/nl_BE/commercial.lang | 0 {htdocs => public}/langs/nl_BE/companies.lang | 0 {htdocs => public}/langs/nl_BE/compta.lang | 0 {htdocs => public}/langs/nl_BE/contracts.lang | 0 {htdocs => public}/langs/nl_BE/cron.lang | 0 {htdocs => public}/langs/nl_BE/deliveries.lang | 0 {htdocs => public}/langs/nl_BE/dict.lang | 0 {htdocs => public}/langs/nl_BE/donations.lang | 0 {htdocs => public}/langs/nl_BE/ecm.lang | 0 {htdocs => public}/langs/nl_BE/errors.lang | 0 {htdocs => public}/langs/nl_BE/exports.lang | 0 {htdocs => public}/langs/nl_BE/externalsite.lang | 0 {htdocs => public}/langs/nl_BE/ftp.lang | 0 {htdocs => public}/langs/nl_BE/help.lang | 0 {htdocs => public}/langs/nl_BE/holiday.lang | 0 {htdocs => public}/langs/nl_BE/hrm.lang | 0 {htdocs => public}/langs/nl_BE/incoterm.lang | 0 {htdocs => public}/langs/nl_BE/install.lang | 0 {htdocs => public}/langs/nl_BE/interventions.lang | 0 {htdocs => public}/langs/nl_BE/languages.lang | 0 {htdocs => public}/langs/nl_BE/ldap.lang | 0 {htdocs => public}/langs/nl_BE/link.lang | 0 {htdocs => public}/langs/nl_BE/loan.lang | 0 {htdocs => public}/langs/nl_BE/mailmanspip.lang | 0 {htdocs => public}/langs/nl_BE/mails.lang | 0 {htdocs => public}/langs/nl_BE/main.lang | 0 {htdocs => public}/langs/nl_BE/margins.lang | 0 {htdocs => public}/langs/nl_BE/members.lang | 0 {htdocs => public}/langs/nl_BE/oauth.lang | 0 {htdocs => public}/langs/nl_BE/opensurvey.lang | 0 {htdocs => public}/langs/nl_BE/orders.lang | 0 {htdocs => public}/langs/nl_BE/other.lang | 0 {htdocs => public}/langs/nl_BE/paybox.lang | 0 {htdocs => public}/langs/nl_BE/paypal.lang | 0 {htdocs => public}/langs/nl_BE/printing.lang | 0 {htdocs => public}/langs/nl_BE/productbatch.lang | 0 {htdocs => public}/langs/nl_BE/products.lang | 0 {htdocs => public}/langs/nl_BE/projects.lang | 0 {htdocs => public}/langs/nl_BE/propal.lang | 0 {htdocs => public}/langs/nl_BE/receiptprinter.lang | 0 {htdocs => public}/langs/nl_BE/resource.lang | 0 {htdocs => public}/langs/nl_BE/salaries.lang | 0 {htdocs => public}/langs/nl_BE/sendings.lang | 0 {htdocs => public}/langs/nl_BE/sms.lang | 0 {htdocs => public}/langs/nl_BE/stocks.lang | 0 .../langs/nl_BE/supplier_proposal.lang | 0 {htdocs => public}/langs/nl_BE/suppliers.lang | 0 {htdocs => public}/langs/nl_BE/trips.lang | 0 {htdocs => public}/langs/nl_BE/users.lang | 0 {htdocs => public}/langs/nl_BE/website.lang | 0 {htdocs => public}/langs/nl_BE/withdrawals.lang | 0 {htdocs => public}/langs/nl_BE/workflow.lang | 0 {htdocs => public}/langs/nl_NL/accountancy.lang | 0 {htdocs => public}/langs/nl_NL/admin.lang | 0 {htdocs => public}/langs/nl_NL/agenda.lang | 0 {htdocs => public}/langs/nl_NL/banks.lang | 0 {htdocs => public}/langs/nl_NL/bills.lang | 0 {htdocs => public}/langs/nl_NL/bookmarks.lang | 0 {htdocs => public}/langs/nl_NL/boxes.lang | 0 {htdocs => public}/langs/nl_NL/cashdesk.lang | 0 {htdocs => public}/langs/nl_NL/categories.lang | 0 {htdocs => public}/langs/nl_NL/commercial.lang | 0 {htdocs => public}/langs/nl_NL/companies.lang | 0 {htdocs => public}/langs/nl_NL/compta.lang | 0 {htdocs => public}/langs/nl_NL/contracts.lang | 0 {htdocs => public}/langs/nl_NL/cron.lang | 0 {htdocs => public}/langs/nl_NL/deliveries.lang | 0 {htdocs => public}/langs/nl_NL/dict.lang | 0 {htdocs => public}/langs/nl_NL/donations.lang | 0 {htdocs => public}/langs/nl_NL/ecm.lang | 0 {htdocs => public}/langs/nl_NL/errors.lang | 0 {htdocs => public}/langs/nl_NL/exports.lang | 0 {htdocs => public}/langs/nl_NL/externalsite.lang | 0 {htdocs => public}/langs/nl_NL/ftp.lang | 0 {htdocs => public}/langs/nl_NL/help.lang | 0 {htdocs => public}/langs/nl_NL/holiday.lang | 0 {htdocs => public}/langs/nl_NL/hrm.lang | 0 {htdocs => public}/langs/nl_NL/incoterm.lang | 0 {htdocs => public}/langs/nl_NL/install.lang | 0 {htdocs => public}/langs/nl_NL/interventions.lang | 0 {htdocs => public}/langs/nl_NL/languages.lang | 0 {htdocs => public}/langs/nl_NL/ldap.lang | 0 {htdocs => public}/langs/nl_NL/link.lang | 0 {htdocs => public}/langs/nl_NL/loan.lang | 0 {htdocs => public}/langs/nl_NL/mailmanspip.lang | 0 {htdocs => public}/langs/nl_NL/mails.lang | 0 {htdocs => public}/langs/nl_NL/main.lang | 0 {htdocs => public}/langs/nl_NL/margins.lang | 0 {htdocs => public}/langs/nl_NL/members.lang | 0 {htdocs => public}/langs/nl_NL/oauth.lang | 0 {htdocs => public}/langs/nl_NL/opensurvey.lang | 0 {htdocs => public}/langs/nl_NL/orders.lang | 0 {htdocs => public}/langs/nl_NL/other.lang | 0 {htdocs => public}/langs/nl_NL/paybox.lang | 0 {htdocs => public}/langs/nl_NL/paypal.lang | 0 {htdocs => public}/langs/nl_NL/printing.lang | 0 {htdocs => public}/langs/nl_NL/productbatch.lang | 0 {htdocs => public}/langs/nl_NL/products.lang | 0 {htdocs => public}/langs/nl_NL/projects.lang | 0 {htdocs => public}/langs/nl_NL/propal.lang | 0 {htdocs => public}/langs/nl_NL/receiptprinter.lang | 0 {htdocs => public}/langs/nl_NL/resource.lang | 0 {htdocs => public}/langs/nl_NL/salaries.lang | 0 {htdocs => public}/langs/nl_NL/sendings.lang | 0 {htdocs => public}/langs/nl_NL/sms.lang | 0 {htdocs => public}/langs/nl_NL/stocks.lang | 0 .../langs/nl_NL/supplier_proposal.lang | 0 {htdocs => public}/langs/nl_NL/suppliers.lang | 0 {htdocs => public}/langs/nl_NL/trips.lang | 0 {htdocs => public}/langs/nl_NL/users.lang | 0 {htdocs => public}/langs/nl_NL/website.lang | 0 {htdocs => public}/langs/nl_NL/withdrawals.lang | 0 {htdocs => public}/langs/nl_NL/workflow.lang | 0 {htdocs => public}/langs/pl_PL/accountancy.lang | 0 {htdocs => public}/langs/pl_PL/admin.lang | 0 {htdocs => public}/langs/pl_PL/agenda.lang | 0 {htdocs => public}/langs/pl_PL/banks.lang | 0 {htdocs => public}/langs/pl_PL/bills.lang | 0 {htdocs => public}/langs/pl_PL/bookmarks.lang | 0 {htdocs => public}/langs/pl_PL/boxes.lang | 0 {htdocs => public}/langs/pl_PL/cashdesk.lang | 0 {htdocs => public}/langs/pl_PL/categories.lang | 0 {htdocs => public}/langs/pl_PL/commercial.lang | 0 {htdocs => public}/langs/pl_PL/companies.lang | 0 {htdocs => public}/langs/pl_PL/compta.lang | 0 {htdocs => public}/langs/pl_PL/contracts.lang | 0 {htdocs => public}/langs/pl_PL/cron.lang | 0 {htdocs => public}/langs/pl_PL/deliveries.lang | 0 {htdocs => public}/langs/pl_PL/dict.lang | 0 {htdocs => public}/langs/pl_PL/donations.lang | 0 {htdocs => public}/langs/pl_PL/ecm.lang | 0 {htdocs => public}/langs/pl_PL/errors.lang | 0 {htdocs => public}/langs/pl_PL/exports.lang | 0 {htdocs => public}/langs/pl_PL/externalsite.lang | 0 {htdocs => public}/langs/pl_PL/ftp.lang | 0 {htdocs => public}/langs/pl_PL/help.lang | 0 {htdocs => public}/langs/pl_PL/holiday.lang | 0 {htdocs => public}/langs/pl_PL/hrm.lang | 0 {htdocs => public}/langs/pl_PL/incoterm.lang | 0 {htdocs => public}/langs/pl_PL/install.lang | 0 {htdocs => public}/langs/pl_PL/interventions.lang | 0 {htdocs => public}/langs/pl_PL/languages.lang | 0 {htdocs => public}/langs/pl_PL/ldap.lang | 0 {htdocs => public}/langs/pl_PL/link.lang | 0 {htdocs => public}/langs/pl_PL/loan.lang | 0 {htdocs => public}/langs/pl_PL/mailmanspip.lang | 0 {htdocs => public}/langs/pl_PL/mails.lang | 0 {htdocs => public}/langs/pl_PL/main.lang | 0 {htdocs => public}/langs/pl_PL/margins.lang | 0 {htdocs => public}/langs/pl_PL/members.lang | 0 {htdocs => public}/langs/pl_PL/oauth.lang | 0 {htdocs => public}/langs/pl_PL/opensurvey.lang | 0 {htdocs => public}/langs/pl_PL/orders.lang | 0 {htdocs => public}/langs/pl_PL/other.lang | 0 {htdocs => public}/langs/pl_PL/paybox.lang | 0 {htdocs => public}/langs/pl_PL/paypal.lang | 0 {htdocs => public}/langs/pl_PL/printing.lang | 0 {htdocs => public}/langs/pl_PL/productbatch.lang | 0 {htdocs => public}/langs/pl_PL/products.lang | 0 {htdocs => public}/langs/pl_PL/projects.lang | 0 {htdocs => public}/langs/pl_PL/propal.lang | 0 {htdocs => public}/langs/pl_PL/receiptprinter.lang | 0 {htdocs => public}/langs/pl_PL/resource.lang | 0 {htdocs => public}/langs/pl_PL/salaries.lang | 0 {htdocs => public}/langs/pl_PL/sendings.lang | 0 {htdocs => public}/langs/pl_PL/sms.lang | 0 {htdocs => public}/langs/pl_PL/stocks.lang | 0 .../langs/pl_PL/supplier_proposal.lang | 0 {htdocs => public}/langs/pl_PL/suppliers.lang | 0 {htdocs => public}/langs/pl_PL/trips.lang | 0 {htdocs => public}/langs/pl_PL/users.lang | 0 {htdocs => public}/langs/pl_PL/website.lang | 0 {htdocs => public}/langs/pl_PL/withdrawals.lang | 0 {htdocs => public}/langs/pl_PL/workflow.lang | 0 {htdocs => public}/langs/pt_BR/accountancy.lang | 0 {htdocs => public}/langs/pt_BR/admin.lang | 0 {htdocs => public}/langs/pt_BR/agenda.lang | 0 {htdocs => public}/langs/pt_BR/banks.lang | 0 {htdocs => public}/langs/pt_BR/bills.lang | 0 {htdocs => public}/langs/pt_BR/bookmarks.lang | 0 {htdocs => public}/langs/pt_BR/boxes.lang | 0 {htdocs => public}/langs/pt_BR/cashdesk.lang | 0 {htdocs => public}/langs/pt_BR/categories.lang | 0 {htdocs => public}/langs/pt_BR/commercial.lang | 0 {htdocs => public}/langs/pt_BR/companies.lang | 0 {htdocs => public}/langs/pt_BR/compta.lang | 0 {htdocs => public}/langs/pt_BR/contracts.lang | 0 {htdocs => public}/langs/pt_BR/cron.lang | 0 {htdocs => public}/langs/pt_BR/deliveries.lang | 0 {htdocs => public}/langs/pt_BR/dict.lang | 0 {htdocs => public}/langs/pt_BR/donations.lang | 0 {htdocs => public}/langs/pt_BR/ecm.lang | 0 {htdocs => public}/langs/pt_BR/errors.lang | 0 {htdocs => public}/langs/pt_BR/exports.lang | 0 {htdocs => public}/langs/pt_BR/externalsite.lang | 0 {htdocs => public}/langs/pt_BR/ftp.lang | 0 {htdocs => public}/langs/pt_BR/help.lang | 0 {htdocs => public}/langs/pt_BR/holiday.lang | 0 {htdocs => public}/langs/pt_BR/hrm.lang | 0 {htdocs => public}/langs/pt_BR/incoterm.lang | 0 {htdocs => public}/langs/pt_BR/install.lang | 0 {htdocs => public}/langs/pt_BR/interventions.lang | 0 {htdocs => public}/langs/pt_BR/languages.lang | 0 {htdocs => public}/langs/pt_BR/ldap.lang | 0 {htdocs => public}/langs/pt_BR/link.lang | 0 {htdocs => public}/langs/pt_BR/loan.lang | 0 {htdocs => public}/langs/pt_BR/mailmanspip.lang | 0 {htdocs => public}/langs/pt_BR/mails.lang | 0 {htdocs => public}/langs/pt_BR/main.lang | 0 {htdocs => public}/langs/pt_BR/margins.lang | 0 {htdocs => public}/langs/pt_BR/members.lang | 0 {htdocs => public}/langs/pt_BR/oauth.lang | 0 {htdocs => public}/langs/pt_BR/opensurvey.lang | 0 {htdocs => public}/langs/pt_BR/orders.lang | 0 {htdocs => public}/langs/pt_BR/other.lang | 0 {htdocs => public}/langs/pt_BR/paybox.lang | 0 {htdocs => public}/langs/pt_BR/paypal.lang | 0 {htdocs => public}/langs/pt_BR/printing.lang | 0 {htdocs => public}/langs/pt_BR/productbatch.lang | 0 {htdocs => public}/langs/pt_BR/products.lang | 0 {htdocs => public}/langs/pt_BR/projects.lang | 0 {htdocs => public}/langs/pt_BR/propal.lang | 0 {htdocs => public}/langs/pt_BR/receiptprinter.lang | 0 {htdocs => public}/langs/pt_BR/resource.lang | 0 {htdocs => public}/langs/pt_BR/salaries.lang | 0 {htdocs => public}/langs/pt_BR/sendings.lang | 0 {htdocs => public}/langs/pt_BR/sms.lang | 0 {htdocs => public}/langs/pt_BR/stocks.lang | 0 .../langs/pt_BR/supplier_proposal.lang | 0 {htdocs => public}/langs/pt_BR/suppliers.lang | 0 {htdocs => public}/langs/pt_BR/trips.lang | 0 {htdocs => public}/langs/pt_BR/users.lang | 0 {htdocs => public}/langs/pt_BR/website.lang | 0 {htdocs => public}/langs/pt_BR/withdrawals.lang | 0 {htdocs => public}/langs/pt_BR/workflow.lang | 0 {htdocs => public}/langs/pt_PT/accountancy.lang | 0 {htdocs => public}/langs/pt_PT/admin.lang | 0 {htdocs => public}/langs/pt_PT/agenda.lang | 0 {htdocs => public}/langs/pt_PT/banks.lang | 0 {htdocs => public}/langs/pt_PT/bills.lang | 0 {htdocs => public}/langs/pt_PT/bookmarks.lang | 0 {htdocs => public}/langs/pt_PT/boxes.lang | 0 {htdocs => public}/langs/pt_PT/cashdesk.lang | 0 {htdocs => public}/langs/pt_PT/categories.lang | 0 {htdocs => public}/langs/pt_PT/commercial.lang | 0 {htdocs => public}/langs/pt_PT/companies.lang | 0 {htdocs => public}/langs/pt_PT/compta.lang | 0 {htdocs => public}/langs/pt_PT/contracts.lang | 0 {htdocs => public}/langs/pt_PT/cron.lang | 0 {htdocs => public}/langs/pt_PT/deliveries.lang | 0 {htdocs => public}/langs/pt_PT/dict.lang | 0 {htdocs => public}/langs/pt_PT/donations.lang | 0 {htdocs => public}/langs/pt_PT/ecm.lang | 0 {htdocs => public}/langs/pt_PT/errors.lang | 0 {htdocs => public}/langs/pt_PT/exports.lang | 0 {htdocs => public}/langs/pt_PT/externalsite.lang | 0 {htdocs => public}/langs/pt_PT/ftp.lang | 0 {htdocs => public}/langs/pt_PT/help.lang | 0 {htdocs => public}/langs/pt_PT/holiday.lang | 0 {htdocs => public}/langs/pt_PT/hrm.lang | 0 {htdocs => public}/langs/pt_PT/incoterm.lang | 0 {htdocs => public}/langs/pt_PT/install.lang | 0 {htdocs => public}/langs/pt_PT/interventions.lang | 0 {htdocs => public}/langs/pt_PT/languages.lang | 0 {htdocs => public}/langs/pt_PT/ldap.lang | 0 {htdocs => public}/langs/pt_PT/link.lang | 0 {htdocs => public}/langs/pt_PT/loan.lang | 0 {htdocs => public}/langs/pt_PT/mailmanspip.lang | 0 {htdocs => public}/langs/pt_PT/mails.lang | 0 {htdocs => public}/langs/pt_PT/main.lang | 0 {htdocs => public}/langs/pt_PT/margins.lang | 0 {htdocs => public}/langs/pt_PT/members.lang | 0 {htdocs => public}/langs/pt_PT/oauth.lang | 0 {htdocs => public}/langs/pt_PT/opensurvey.lang | 0 {htdocs => public}/langs/pt_PT/orders.lang | 0 {htdocs => public}/langs/pt_PT/other.lang | 0 {htdocs => public}/langs/pt_PT/paybox.lang | 0 {htdocs => public}/langs/pt_PT/paypal.lang | 0 {htdocs => public}/langs/pt_PT/printing.lang | 0 {htdocs => public}/langs/pt_PT/productbatch.lang | 0 {htdocs => public}/langs/pt_PT/products.lang | 0 {htdocs => public}/langs/pt_PT/projects.lang | 0 {htdocs => public}/langs/pt_PT/propal.lang | 0 {htdocs => public}/langs/pt_PT/receiptprinter.lang | 0 {htdocs => public}/langs/pt_PT/resource.lang | 0 {htdocs => public}/langs/pt_PT/salaries.lang | 0 {htdocs => public}/langs/pt_PT/sendings.lang | 0 {htdocs => public}/langs/pt_PT/sms.lang | 0 {htdocs => public}/langs/pt_PT/stocks.lang | 0 .../langs/pt_PT/supplier_proposal.lang | 0 {htdocs => public}/langs/pt_PT/suppliers.lang | 0 {htdocs => public}/langs/pt_PT/trips.lang | 0 {htdocs => public}/langs/pt_PT/users.lang | 0 {htdocs => public}/langs/pt_PT/website.lang | 0 {htdocs => public}/langs/pt_PT/withdrawals.lang | 0 {htdocs => public}/langs/pt_PT/workflow.lang | 0 {htdocs => public}/langs/ro_RO/accountancy.lang | 0 {htdocs => public}/langs/ro_RO/admin.lang | 0 {htdocs => public}/langs/ro_RO/agenda.lang | 0 {htdocs => public}/langs/ro_RO/banks.lang | 0 {htdocs => public}/langs/ro_RO/bills.lang | 0 {htdocs => public}/langs/ro_RO/bookmarks.lang | 0 {htdocs => public}/langs/ro_RO/boxes.lang | 0 {htdocs => public}/langs/ro_RO/cashdesk.lang | 0 {htdocs => public}/langs/ro_RO/categories.lang | 0 {htdocs => public}/langs/ro_RO/commercial.lang | 0 {htdocs => public}/langs/ro_RO/companies.lang | 0 {htdocs => public}/langs/ro_RO/compta.lang | 0 {htdocs => public}/langs/ro_RO/contracts.lang | 0 {htdocs => public}/langs/ro_RO/cron.lang | 0 {htdocs => public}/langs/ro_RO/deliveries.lang | 0 {htdocs => public}/langs/ro_RO/dict.lang | 0 {htdocs => public}/langs/ro_RO/donations.lang | 0 {htdocs => public}/langs/ro_RO/ecm.lang | 0 {htdocs => public}/langs/ro_RO/errors.lang | 0 {htdocs => public}/langs/ro_RO/exports.lang | 0 {htdocs => public}/langs/ro_RO/externalsite.lang | 0 {htdocs => public}/langs/ro_RO/ftp.lang | 0 {htdocs => public}/langs/ro_RO/help.lang | 0 {htdocs => public}/langs/ro_RO/holiday.lang | 0 {htdocs => public}/langs/ro_RO/hrm.lang | 0 {htdocs => public}/langs/ro_RO/incoterm.lang | 0 {htdocs => public}/langs/ro_RO/install.lang | 0 {htdocs => public}/langs/ro_RO/interventions.lang | 0 {htdocs => public}/langs/ro_RO/languages.lang | 0 {htdocs => public}/langs/ro_RO/ldap.lang | 0 {htdocs => public}/langs/ro_RO/link.lang | 0 {htdocs => public}/langs/ro_RO/loan.lang | 0 {htdocs => public}/langs/ro_RO/mailmanspip.lang | 0 {htdocs => public}/langs/ro_RO/mails.lang | 0 {htdocs => public}/langs/ro_RO/main.lang | 0 {htdocs => public}/langs/ro_RO/margins.lang | 0 {htdocs => public}/langs/ro_RO/members.lang | 0 {htdocs => public}/langs/ro_RO/oauth.lang | 0 {htdocs => public}/langs/ro_RO/opensurvey.lang | 0 {htdocs => public}/langs/ro_RO/orders.lang | 0 {htdocs => public}/langs/ro_RO/other.lang | 0 {htdocs => public}/langs/ro_RO/paybox.lang | 0 {htdocs => public}/langs/ro_RO/paypal.lang | 0 {htdocs => public}/langs/ro_RO/printing.lang | 0 {htdocs => public}/langs/ro_RO/productbatch.lang | 0 {htdocs => public}/langs/ro_RO/products.lang | 0 {htdocs => public}/langs/ro_RO/projects.lang | 0 {htdocs => public}/langs/ro_RO/propal.lang | 0 {htdocs => public}/langs/ro_RO/receiptprinter.lang | 0 {htdocs => public}/langs/ro_RO/resource.lang | 0 {htdocs => public}/langs/ro_RO/salaries.lang | 0 {htdocs => public}/langs/ro_RO/sendings.lang | 0 {htdocs => public}/langs/ro_RO/sms.lang | 0 {htdocs => public}/langs/ro_RO/stocks.lang | 0 .../langs/ro_RO/supplier_proposal.lang | 0 {htdocs => public}/langs/ro_RO/suppliers.lang | 0 {htdocs => public}/langs/ro_RO/trips.lang | 0 {htdocs => public}/langs/ro_RO/users.lang | 0 {htdocs => public}/langs/ro_RO/website.lang | 0 {htdocs => public}/langs/ro_RO/withdrawals.lang | 0 {htdocs => public}/langs/ro_RO/workflow.lang | 0 {htdocs => public}/langs/ru_RU/accountancy.lang | 0 {htdocs => public}/langs/ru_RU/admin.lang | 0 {htdocs => public}/langs/ru_RU/agenda.lang | 0 {htdocs => public}/langs/ru_RU/banks.lang | 0 {htdocs => public}/langs/ru_RU/bills.lang | 0 {htdocs => public}/langs/ru_RU/bookmarks.lang | 0 {htdocs => public}/langs/ru_RU/boxes.lang | 0 {htdocs => public}/langs/ru_RU/cashdesk.lang | 0 {htdocs => public}/langs/ru_RU/categories.lang | 0 {htdocs => public}/langs/ru_RU/commercial.lang | 0 {htdocs => public}/langs/ru_RU/companies.lang | 0 {htdocs => public}/langs/ru_RU/compta.lang | 0 {htdocs => public}/langs/ru_RU/contracts.lang | 0 {htdocs => public}/langs/ru_RU/cron.lang | 0 {htdocs => public}/langs/ru_RU/deliveries.lang | 0 {htdocs => public}/langs/ru_RU/dict.lang | 0 {htdocs => public}/langs/ru_RU/donations.lang | 0 {htdocs => public}/langs/ru_RU/ecm.lang | 0 {htdocs => public}/langs/ru_RU/errors.lang | 0 {htdocs => public}/langs/ru_RU/exports.lang | 0 {htdocs => public}/langs/ru_RU/externalsite.lang | 0 {htdocs => public}/langs/ru_RU/ftp.lang | 0 {htdocs => public}/langs/ru_RU/help.lang | 0 {htdocs => public}/langs/ru_RU/holiday.lang | 0 {htdocs => public}/langs/ru_RU/hrm.lang | 0 {htdocs => public}/langs/ru_RU/incoterm.lang | 0 {htdocs => public}/langs/ru_RU/install.lang | 0 {htdocs => public}/langs/ru_RU/interventions.lang | 0 {htdocs => public}/langs/ru_RU/languages.lang | 0 {htdocs => public}/langs/ru_RU/ldap.lang | 0 {htdocs => public}/langs/ru_RU/link.lang | 0 {htdocs => public}/langs/ru_RU/loan.lang | 0 {htdocs => public}/langs/ru_RU/mailmanspip.lang | 0 {htdocs => public}/langs/ru_RU/mails.lang | 0 {htdocs => public}/langs/ru_RU/main.lang | 0 {htdocs => public}/langs/ru_RU/margins.lang | 0 {htdocs => public}/langs/ru_RU/members.lang | 0 {htdocs => public}/langs/ru_RU/oauth.lang | 0 {htdocs => public}/langs/ru_RU/opensurvey.lang | 0 {htdocs => public}/langs/ru_RU/orders.lang | 0 {htdocs => public}/langs/ru_RU/other.lang | 0 {htdocs => public}/langs/ru_RU/paybox.lang | 0 {htdocs => public}/langs/ru_RU/paypal.lang | 0 {htdocs => public}/langs/ru_RU/printing.lang | 0 {htdocs => public}/langs/ru_RU/productbatch.lang | 0 {htdocs => public}/langs/ru_RU/products.lang | 0 {htdocs => public}/langs/ru_RU/projects.lang | 0 {htdocs => public}/langs/ru_RU/propal.lang | 0 {htdocs => public}/langs/ru_RU/receiptprinter.lang | 0 {htdocs => public}/langs/ru_RU/resource.lang | 0 {htdocs => public}/langs/ru_RU/salaries.lang | 0 {htdocs => public}/langs/ru_RU/sendings.lang | 0 {htdocs => public}/langs/ru_RU/sms.lang | 0 {htdocs => public}/langs/ru_RU/stocks.lang | 0 .../langs/ru_RU/supplier_proposal.lang | 0 {htdocs => public}/langs/ru_RU/suppliers.lang | 0 {htdocs => public}/langs/ru_RU/trips.lang | 0 {htdocs => public}/langs/ru_RU/users.lang | 0 {htdocs => public}/langs/ru_RU/website.lang | 0 {htdocs => public}/langs/ru_RU/withdrawals.lang | 0 {htdocs => public}/langs/ru_RU/workflow.lang | 0 {htdocs => public}/langs/ru_UA/banks.lang | 0 {htdocs => public}/langs/ru_UA/bookmarks.lang | 0 {htdocs => public}/langs/ru_UA/compta.lang | 0 {htdocs => public}/langs/ru_UA/contracts.lang | 0 {htdocs => public}/langs/ru_UA/dict.lang | 0 {htdocs => public}/langs/ru_UA/ecm.lang | 0 {htdocs => public}/langs/ru_UA/errors.lang | 0 {htdocs => public}/langs/ru_UA/ftp.lang | 0 {htdocs => public}/langs/ru_UA/install.lang | 0 {htdocs => public}/langs/ru_UA/interventions.lang | 0 {htdocs => public}/langs/ru_UA/mails.lang | 0 {htdocs => public}/langs/ru_UA/main.lang | 0 {htdocs => public}/langs/ru_UA/other.lang | 0 {htdocs => public}/langs/ru_UA/paybox.lang | 0 {htdocs => public}/langs/ru_UA/paypal.lang | 0 {htdocs => public}/langs/sk_SK/accountancy.lang | 0 {htdocs => public}/langs/sk_SK/admin.lang | 0 {htdocs => public}/langs/sk_SK/agenda.lang | 0 {htdocs => public}/langs/sk_SK/banks.lang | 0 {htdocs => public}/langs/sk_SK/bills.lang | 0 {htdocs => public}/langs/sk_SK/bookmarks.lang | 0 {htdocs => public}/langs/sk_SK/boxes.lang | 0 {htdocs => public}/langs/sk_SK/cashdesk.lang | 0 {htdocs => public}/langs/sk_SK/categories.lang | 0 {htdocs => public}/langs/sk_SK/commercial.lang | 0 {htdocs => public}/langs/sk_SK/companies.lang | 0 {htdocs => public}/langs/sk_SK/compta.lang | 0 {htdocs => public}/langs/sk_SK/contracts.lang | 0 {htdocs => public}/langs/sk_SK/cron.lang | 0 {htdocs => public}/langs/sk_SK/deliveries.lang | 0 {htdocs => public}/langs/sk_SK/dict.lang | 0 {htdocs => public}/langs/sk_SK/donations.lang | 0 {htdocs => public}/langs/sk_SK/ecm.lang | 0 {htdocs => public}/langs/sk_SK/errors.lang | 0 {htdocs => public}/langs/sk_SK/exports.lang | 0 {htdocs => public}/langs/sk_SK/externalsite.lang | 0 {htdocs => public}/langs/sk_SK/ftp.lang | 0 {htdocs => public}/langs/sk_SK/help.lang | 0 {htdocs => public}/langs/sk_SK/holiday.lang | 0 {htdocs => public}/langs/sk_SK/hrm.lang | 0 {htdocs => public}/langs/sk_SK/incoterm.lang | 0 {htdocs => public}/langs/sk_SK/install.lang | 0 {htdocs => public}/langs/sk_SK/interventions.lang | 0 {htdocs => public}/langs/sk_SK/languages.lang | 0 {htdocs => public}/langs/sk_SK/ldap.lang | 0 {htdocs => public}/langs/sk_SK/link.lang | 0 {htdocs => public}/langs/sk_SK/loan.lang | 0 {htdocs => public}/langs/sk_SK/mailmanspip.lang | 0 {htdocs => public}/langs/sk_SK/mails.lang | 0 {htdocs => public}/langs/sk_SK/main.lang | 0 {htdocs => public}/langs/sk_SK/margins.lang | 0 {htdocs => public}/langs/sk_SK/members.lang | 0 {htdocs => public}/langs/sk_SK/oauth.lang | 0 {htdocs => public}/langs/sk_SK/opensurvey.lang | 0 {htdocs => public}/langs/sk_SK/orders.lang | 0 {htdocs => public}/langs/sk_SK/other.lang | 0 {htdocs => public}/langs/sk_SK/paybox.lang | 0 {htdocs => public}/langs/sk_SK/paypal.lang | 0 {htdocs => public}/langs/sk_SK/printing.lang | 0 {htdocs => public}/langs/sk_SK/productbatch.lang | 0 {htdocs => public}/langs/sk_SK/products.lang | 0 {htdocs => public}/langs/sk_SK/projects.lang | 0 {htdocs => public}/langs/sk_SK/propal.lang | 0 {htdocs => public}/langs/sk_SK/receiptprinter.lang | 0 {htdocs => public}/langs/sk_SK/resource.lang | 0 {htdocs => public}/langs/sk_SK/salaries.lang | 0 {htdocs => public}/langs/sk_SK/sendings.lang | 0 {htdocs => public}/langs/sk_SK/sms.lang | 0 {htdocs => public}/langs/sk_SK/stocks.lang | 0 .../langs/sk_SK/supplier_proposal.lang | 0 {htdocs => public}/langs/sk_SK/suppliers.lang | 0 {htdocs => public}/langs/sk_SK/trips.lang | 0 {htdocs => public}/langs/sk_SK/users.lang | 0 {htdocs => public}/langs/sk_SK/website.lang | 0 {htdocs => public}/langs/sk_SK/withdrawals.lang | 0 {htdocs => public}/langs/sk_SK/workflow.lang | 0 {htdocs => public}/langs/sl_SI/accountancy.lang | 0 {htdocs => public}/langs/sl_SI/admin.lang | 0 {htdocs => public}/langs/sl_SI/agenda.lang | 0 {htdocs => public}/langs/sl_SI/banks.lang | 0 {htdocs => public}/langs/sl_SI/bills.lang | 0 {htdocs => public}/langs/sl_SI/bookmarks.lang | 0 {htdocs => public}/langs/sl_SI/boxes.lang | 0 {htdocs => public}/langs/sl_SI/cashdesk.lang | 0 {htdocs => public}/langs/sl_SI/categories.lang | 0 {htdocs => public}/langs/sl_SI/commercial.lang | 0 {htdocs => public}/langs/sl_SI/companies.lang | 0 {htdocs => public}/langs/sl_SI/compta.lang | 0 {htdocs => public}/langs/sl_SI/contracts.lang | 0 {htdocs => public}/langs/sl_SI/cron.lang | 0 {htdocs => public}/langs/sl_SI/deliveries.lang | 0 {htdocs => public}/langs/sl_SI/dict.lang | 0 {htdocs => public}/langs/sl_SI/donations.lang | 0 {htdocs => public}/langs/sl_SI/ecm.lang | 0 {htdocs => public}/langs/sl_SI/errors.lang | 0 {htdocs => public}/langs/sl_SI/exports.lang | 0 {htdocs => public}/langs/sl_SI/externalsite.lang | 0 {htdocs => public}/langs/sl_SI/ftp.lang | 0 {htdocs => public}/langs/sl_SI/help.lang | 0 {htdocs => public}/langs/sl_SI/holiday.lang | 0 {htdocs => public}/langs/sl_SI/hrm.lang | 0 {htdocs => public}/langs/sl_SI/incoterm.lang | 0 {htdocs => public}/langs/sl_SI/install.lang | 0 {htdocs => public}/langs/sl_SI/interventions.lang | 0 {htdocs => public}/langs/sl_SI/languages.lang | 0 {htdocs => public}/langs/sl_SI/ldap.lang | 0 {htdocs => public}/langs/sl_SI/link.lang | 0 {htdocs => public}/langs/sl_SI/loan.lang | 0 {htdocs => public}/langs/sl_SI/mailmanspip.lang | 0 {htdocs => public}/langs/sl_SI/mails.lang | 0 {htdocs => public}/langs/sl_SI/main.lang | 0 {htdocs => public}/langs/sl_SI/margins.lang | 0 {htdocs => public}/langs/sl_SI/members.lang | 0 {htdocs => public}/langs/sl_SI/oauth.lang | 0 {htdocs => public}/langs/sl_SI/opensurvey.lang | 0 {htdocs => public}/langs/sl_SI/orders.lang | 0 {htdocs => public}/langs/sl_SI/other.lang | 0 {htdocs => public}/langs/sl_SI/paybox.lang | 0 {htdocs => public}/langs/sl_SI/paypal.lang | 0 {htdocs => public}/langs/sl_SI/printing.lang | 0 {htdocs => public}/langs/sl_SI/productbatch.lang | 0 {htdocs => public}/langs/sl_SI/products.lang | 0 {htdocs => public}/langs/sl_SI/projects.lang | 0 {htdocs => public}/langs/sl_SI/propal.lang | 0 {htdocs => public}/langs/sl_SI/receiptprinter.lang | 0 {htdocs => public}/langs/sl_SI/resource.lang | 0 {htdocs => public}/langs/sl_SI/salaries.lang | 0 {htdocs => public}/langs/sl_SI/sendings.lang | 0 {htdocs => public}/langs/sl_SI/sms.lang | 0 {htdocs => public}/langs/sl_SI/stocks.lang | 0 .../langs/sl_SI/supplier_proposal.lang | 0 {htdocs => public}/langs/sl_SI/suppliers.lang | 0 {htdocs => public}/langs/sl_SI/trips.lang | 0 {htdocs => public}/langs/sl_SI/users.lang | 0 {htdocs => public}/langs/sl_SI/website.lang | 0 {htdocs => public}/langs/sl_SI/withdrawals.lang | 0 {htdocs => public}/langs/sl_SI/workflow.lang | 0 {htdocs => public}/langs/sq_AL/accountancy.lang | 0 {htdocs => public}/langs/sq_AL/admin.lang | 0 {htdocs => public}/langs/sq_AL/agenda.lang | 0 {htdocs => public}/langs/sq_AL/banks.lang | 0 {htdocs => public}/langs/sq_AL/bills.lang | 0 {htdocs => public}/langs/sq_AL/bookmarks.lang | 0 {htdocs => public}/langs/sq_AL/boxes.lang | 0 {htdocs => public}/langs/sq_AL/cashdesk.lang | 0 {htdocs => public}/langs/sq_AL/categories.lang | 0 {htdocs => public}/langs/sq_AL/commercial.lang | 0 {htdocs => public}/langs/sq_AL/companies.lang | 0 {htdocs => public}/langs/sq_AL/compta.lang | 0 {htdocs => public}/langs/sq_AL/contracts.lang | 0 {htdocs => public}/langs/sq_AL/cron.lang | 0 {htdocs => public}/langs/sq_AL/deliveries.lang | 0 {htdocs => public}/langs/sq_AL/dict.lang | 0 {htdocs => public}/langs/sq_AL/donations.lang | 0 {htdocs => public}/langs/sq_AL/ecm.lang | 0 {htdocs => public}/langs/sq_AL/errors.lang | 0 {htdocs => public}/langs/sq_AL/exports.lang | 0 {htdocs => public}/langs/sq_AL/externalsite.lang | 0 {htdocs => public}/langs/sq_AL/ftp.lang | 0 {htdocs => public}/langs/sq_AL/help.lang | 0 {htdocs => public}/langs/sq_AL/holiday.lang | 0 {htdocs => public}/langs/sq_AL/hrm.lang | 0 {htdocs => public}/langs/sq_AL/incoterm.lang | 0 {htdocs => public}/langs/sq_AL/install.lang | 0 {htdocs => public}/langs/sq_AL/interventions.lang | 0 {htdocs => public}/langs/sq_AL/languages.lang | 0 {htdocs => public}/langs/sq_AL/ldap.lang | 0 {htdocs => public}/langs/sq_AL/link.lang | 0 {htdocs => public}/langs/sq_AL/loan.lang | 0 {htdocs => public}/langs/sq_AL/mailmanspip.lang | 0 {htdocs => public}/langs/sq_AL/mails.lang | 0 {htdocs => public}/langs/sq_AL/main.lang | 0 {htdocs => public}/langs/sq_AL/margins.lang | 0 {htdocs => public}/langs/sq_AL/members.lang | 0 {htdocs => public}/langs/sq_AL/oauth.lang | 0 {htdocs => public}/langs/sq_AL/opensurvey.lang | 0 {htdocs => public}/langs/sq_AL/orders.lang | 0 {htdocs => public}/langs/sq_AL/other.lang | 0 {htdocs => public}/langs/sq_AL/paybox.lang | 0 {htdocs => public}/langs/sq_AL/paypal.lang | 0 {htdocs => public}/langs/sq_AL/printing.lang | 0 {htdocs => public}/langs/sq_AL/productbatch.lang | 0 {htdocs => public}/langs/sq_AL/products.lang | 0 {htdocs => public}/langs/sq_AL/projects.lang | 0 {htdocs => public}/langs/sq_AL/propal.lang | 0 {htdocs => public}/langs/sq_AL/receiptprinter.lang | 0 {htdocs => public}/langs/sq_AL/resource.lang | 0 {htdocs => public}/langs/sq_AL/salaries.lang | 0 {htdocs => public}/langs/sq_AL/sendings.lang | 0 {htdocs => public}/langs/sq_AL/sms.lang | 0 {htdocs => public}/langs/sq_AL/stocks.lang | 0 .../langs/sq_AL/supplier_proposal.lang | 0 {htdocs => public}/langs/sq_AL/suppliers.lang | 0 {htdocs => public}/langs/sq_AL/trips.lang | 0 {htdocs => public}/langs/sq_AL/users.lang | 0 {htdocs => public}/langs/sq_AL/website.lang | 0 {htdocs => public}/langs/sq_AL/withdrawals.lang | 0 {htdocs => public}/langs/sq_AL/workflow.lang | 0 {htdocs => public}/langs/sr_RS/accountancy.lang | 0 {htdocs => public}/langs/sr_RS/admin.lang | 0 {htdocs => public}/langs/sr_RS/agenda.lang | 0 {htdocs => public}/langs/sr_RS/banks.lang | 0 {htdocs => public}/langs/sr_RS/bills.lang | 0 {htdocs => public}/langs/sr_RS/bookmarks.lang | 0 {htdocs => public}/langs/sr_RS/boxes.lang | 0 {htdocs => public}/langs/sr_RS/cashdesk.lang | 0 {htdocs => public}/langs/sr_RS/categories.lang | 0 {htdocs => public}/langs/sr_RS/commercial.lang | 0 {htdocs => public}/langs/sr_RS/companies.lang | 0 {htdocs => public}/langs/sr_RS/compta.lang | 0 {htdocs => public}/langs/sr_RS/contracts.lang | 0 {htdocs => public}/langs/sr_RS/cron.lang | 0 {htdocs => public}/langs/sr_RS/deliveries.lang | 0 {htdocs => public}/langs/sr_RS/dict.lang | 0 {htdocs => public}/langs/sr_RS/donations.lang | 0 {htdocs => public}/langs/sr_RS/ecm.lang | 0 {htdocs => public}/langs/sr_RS/errors.lang | 0 {htdocs => public}/langs/sr_RS/exports.lang | 0 {htdocs => public}/langs/sr_RS/externalsite.lang | 0 {htdocs => public}/langs/sr_RS/ftp.lang | 0 {htdocs => public}/langs/sr_RS/help.lang | 0 {htdocs => public}/langs/sr_RS/holiday.lang | 0 {htdocs => public}/langs/sr_RS/incoterm.lang | 0 {htdocs => public}/langs/sr_RS/install.lang | 0 {htdocs => public}/langs/sr_RS/interventions.lang | 0 {htdocs => public}/langs/sr_RS/languages.lang | 0 {htdocs => public}/langs/sr_RS/ldap.lang | 0 {htdocs => public}/langs/sr_RS/link.lang | 0 {htdocs => public}/langs/sr_RS/loan.lang | 0 {htdocs => public}/langs/sr_RS/mailmanspip.lang | 0 {htdocs => public}/langs/sr_RS/mails.lang | 0 {htdocs => public}/langs/sr_RS/main.lang | 0 {htdocs => public}/langs/sr_RS/margins.lang | 0 {htdocs => public}/langs/sr_RS/members.lang | 0 {htdocs => public}/langs/sr_RS/opensurvey.lang | 0 {htdocs => public}/langs/sr_RS/orders.lang | 0 {htdocs => public}/langs/sr_RS/other.lang | 0 {htdocs => public}/langs/sr_RS/paybox.lang | 0 {htdocs => public}/langs/sr_RS/paypal.lang | 0 {htdocs => public}/langs/sr_RS/printing.lang | 0 {htdocs => public}/langs/sr_RS/productbatch.lang | 0 {htdocs => public}/langs/sr_RS/products.lang | 0 {htdocs => public}/langs/sr_RS/projects.lang | 0 {htdocs => public}/langs/sr_RS/propal.lang | 0 {htdocs => public}/langs/sr_RS/resource.lang | 0 {htdocs => public}/langs/sr_RS/salaries.lang | 0 {htdocs => public}/langs/sr_RS/sendings.lang | 0 {htdocs => public}/langs/sr_RS/sms.lang | 0 {htdocs => public}/langs/sr_RS/stocks.lang | 0 {htdocs => public}/langs/sr_RS/suppliers.lang | 0 {htdocs => public}/langs/sr_RS/trips.lang | 0 {htdocs => public}/langs/sr_RS/users.lang | 0 {htdocs => public}/langs/sr_RS/withdrawals.lang | 0 {htdocs => public}/langs/sr_RS/workflow.lang | 0 {htdocs => public}/langs/sv_SE/accountancy.lang | 0 {htdocs => public}/langs/sv_SE/admin.lang | 0 {htdocs => public}/langs/sv_SE/agenda.lang | 0 {htdocs => public}/langs/sv_SE/banks.lang | 0 {htdocs => public}/langs/sv_SE/bills.lang | 0 {htdocs => public}/langs/sv_SE/bookmarks.lang | 0 {htdocs => public}/langs/sv_SE/boxes.lang | 0 {htdocs => public}/langs/sv_SE/cashdesk.lang | 0 {htdocs => public}/langs/sv_SE/categories.lang | 0 {htdocs => public}/langs/sv_SE/commercial.lang | 0 {htdocs => public}/langs/sv_SE/companies.lang | 0 {htdocs => public}/langs/sv_SE/compta.lang | 0 {htdocs => public}/langs/sv_SE/contracts.lang | 0 {htdocs => public}/langs/sv_SE/cron.lang | 0 {htdocs => public}/langs/sv_SE/deliveries.lang | 0 {htdocs => public}/langs/sv_SE/dict.lang | 0 {htdocs => public}/langs/sv_SE/donations.lang | 0 {htdocs => public}/langs/sv_SE/ecm.lang | 0 {htdocs => public}/langs/sv_SE/errors.lang | 0 {htdocs => public}/langs/sv_SE/exports.lang | 0 {htdocs => public}/langs/sv_SE/externalsite.lang | 0 {htdocs => public}/langs/sv_SE/ftp.lang | 0 {htdocs => public}/langs/sv_SE/help.lang | 0 {htdocs => public}/langs/sv_SE/holiday.lang | 0 {htdocs => public}/langs/sv_SE/hrm.lang | 0 {htdocs => public}/langs/sv_SE/incoterm.lang | 0 {htdocs => public}/langs/sv_SE/install.lang | 0 {htdocs => public}/langs/sv_SE/interventions.lang | 0 {htdocs => public}/langs/sv_SE/languages.lang | 0 {htdocs => public}/langs/sv_SE/ldap.lang | 0 {htdocs => public}/langs/sv_SE/link.lang | 0 {htdocs => public}/langs/sv_SE/loan.lang | 0 {htdocs => public}/langs/sv_SE/mailmanspip.lang | 0 {htdocs => public}/langs/sv_SE/mails.lang | 0 {htdocs => public}/langs/sv_SE/main.lang | 0 {htdocs => public}/langs/sv_SE/margins.lang | 0 {htdocs => public}/langs/sv_SE/members.lang | 0 {htdocs => public}/langs/sv_SE/oauth.lang | 0 {htdocs => public}/langs/sv_SE/opensurvey.lang | 0 {htdocs => public}/langs/sv_SE/orders.lang | 0 {htdocs => public}/langs/sv_SE/other.lang | 0 {htdocs => public}/langs/sv_SE/paybox.lang | 0 {htdocs => public}/langs/sv_SE/paypal.lang | 0 {htdocs => public}/langs/sv_SE/printing.lang | 0 {htdocs => public}/langs/sv_SE/productbatch.lang | 0 {htdocs => public}/langs/sv_SE/products.lang | 0 {htdocs => public}/langs/sv_SE/projects.lang | 0 {htdocs => public}/langs/sv_SE/propal.lang | 0 {htdocs => public}/langs/sv_SE/receiptprinter.lang | 0 {htdocs => public}/langs/sv_SE/resource.lang | 0 {htdocs => public}/langs/sv_SE/salaries.lang | 0 {htdocs => public}/langs/sv_SE/sendings.lang | 0 {htdocs => public}/langs/sv_SE/sms.lang | 0 {htdocs => public}/langs/sv_SE/stocks.lang | 0 .../langs/sv_SE/supplier_proposal.lang | 0 {htdocs => public}/langs/sv_SE/suppliers.lang | 0 {htdocs => public}/langs/sv_SE/trips.lang | 0 {htdocs => public}/langs/sv_SE/users.lang | 0 {htdocs => public}/langs/sv_SE/website.lang | 0 {htdocs => public}/langs/sv_SE/withdrawals.lang | 0 {htdocs => public}/langs/sv_SE/workflow.lang | 0 {htdocs => public}/langs/sw_SW/accountancy.lang | 0 {htdocs => public}/langs/sw_SW/admin.lang | 0 {htdocs => public}/langs/sw_SW/agenda.lang | 0 {htdocs => public}/langs/sw_SW/banks.lang | 0 {htdocs => public}/langs/sw_SW/bills.lang | 0 {htdocs => public}/langs/sw_SW/bookmarks.lang | 0 {htdocs => public}/langs/sw_SW/boxes.lang | 0 {htdocs => public}/langs/sw_SW/cashdesk.lang | 0 {htdocs => public}/langs/sw_SW/categories.lang | 0 {htdocs => public}/langs/sw_SW/commercial.lang | 0 {htdocs => public}/langs/sw_SW/companies.lang | 0 {htdocs => public}/langs/sw_SW/compta.lang | 0 {htdocs => public}/langs/sw_SW/contracts.lang | 0 {htdocs => public}/langs/sw_SW/cron.lang | 0 {htdocs => public}/langs/sw_SW/deliveries.lang | 0 {htdocs => public}/langs/sw_SW/dict.lang | 0 {htdocs => public}/langs/sw_SW/donations.lang | 0 {htdocs => public}/langs/sw_SW/ecm.lang | 0 {htdocs => public}/langs/sw_SW/errors.lang | 0 {htdocs => public}/langs/sw_SW/exports.lang | 0 {htdocs => public}/langs/sw_SW/externalsite.lang | 0 {htdocs => public}/langs/sw_SW/ftp.lang | 0 {htdocs => public}/langs/sw_SW/help.lang | 0 {htdocs => public}/langs/sw_SW/holiday.lang | 0 {htdocs => public}/langs/sw_SW/incoterm.lang | 0 {htdocs => public}/langs/sw_SW/install.lang | 0 {htdocs => public}/langs/sw_SW/interventions.lang | 0 {htdocs => public}/langs/sw_SW/languages.lang | 0 {htdocs => public}/langs/sw_SW/ldap.lang | 0 {htdocs => public}/langs/sw_SW/link.lang | 0 {htdocs => public}/langs/sw_SW/loan.lang | 0 {htdocs => public}/langs/sw_SW/mailmanspip.lang | 0 {htdocs => public}/langs/sw_SW/mails.lang | 0 {htdocs => public}/langs/sw_SW/main.lang | 0 {htdocs => public}/langs/sw_SW/margins.lang | 0 {htdocs => public}/langs/sw_SW/members.lang | 0 {htdocs => public}/langs/sw_SW/opensurvey.lang | 0 {htdocs => public}/langs/sw_SW/orders.lang | 0 {htdocs => public}/langs/sw_SW/other.lang | 0 {htdocs => public}/langs/sw_SW/paybox.lang | 0 {htdocs => public}/langs/sw_SW/paypal.lang | 0 {htdocs => public}/langs/sw_SW/printing.lang | 0 {htdocs => public}/langs/sw_SW/productbatch.lang | 0 {htdocs => public}/langs/sw_SW/products.lang | 0 {htdocs => public}/langs/sw_SW/projects.lang | 0 {htdocs => public}/langs/sw_SW/propal.lang | 0 {htdocs => public}/langs/sw_SW/resource.lang | 0 {htdocs => public}/langs/sw_SW/salaries.lang | 0 {htdocs => public}/langs/sw_SW/sendings.lang | 0 {htdocs => public}/langs/sw_SW/sms.lang | 0 {htdocs => public}/langs/sw_SW/stocks.lang | 0 {htdocs => public}/langs/sw_SW/suppliers.lang | 0 {htdocs => public}/langs/sw_SW/trips.lang | 0 {htdocs => public}/langs/sw_SW/users.lang | 0 {htdocs => public}/langs/sw_SW/withdrawals.lang | 0 {htdocs => public}/langs/sw_SW/workflow.lang | 0 {htdocs => public}/langs/th_TH/accountancy.lang | 0 {htdocs => public}/langs/th_TH/admin.lang | 0 {htdocs => public}/langs/th_TH/agenda.lang | 0 {htdocs => public}/langs/th_TH/banks.lang | 0 {htdocs => public}/langs/th_TH/bills.lang | 0 {htdocs => public}/langs/th_TH/bookmarks.lang | 0 {htdocs => public}/langs/th_TH/boxes.lang | 0 {htdocs => public}/langs/th_TH/cashdesk.lang | 0 {htdocs => public}/langs/th_TH/categories.lang | 0 {htdocs => public}/langs/th_TH/commercial.lang | 0 {htdocs => public}/langs/th_TH/companies.lang | 0 {htdocs => public}/langs/th_TH/compta.lang | 0 {htdocs => public}/langs/th_TH/contracts.lang | 0 {htdocs => public}/langs/th_TH/cron.lang | 0 {htdocs => public}/langs/th_TH/deliveries.lang | 0 {htdocs => public}/langs/th_TH/dict.lang | 0 {htdocs => public}/langs/th_TH/donations.lang | 0 {htdocs => public}/langs/th_TH/ecm.lang | 0 {htdocs => public}/langs/th_TH/errors.lang | 0 {htdocs => public}/langs/th_TH/exports.lang | 0 {htdocs => public}/langs/th_TH/externalsite.lang | 0 {htdocs => public}/langs/th_TH/ftp.lang | 0 {htdocs => public}/langs/th_TH/help.lang | 0 {htdocs => public}/langs/th_TH/holiday.lang | 0 {htdocs => public}/langs/th_TH/hrm.lang | 0 {htdocs => public}/langs/th_TH/incoterm.lang | 0 {htdocs => public}/langs/th_TH/install.lang | 0 {htdocs => public}/langs/th_TH/interventions.lang | 0 {htdocs => public}/langs/th_TH/languages.lang | 0 {htdocs => public}/langs/th_TH/ldap.lang | 0 {htdocs => public}/langs/th_TH/link.lang | 0 {htdocs => public}/langs/th_TH/loan.lang | 0 {htdocs => public}/langs/th_TH/mailmanspip.lang | 0 {htdocs => public}/langs/th_TH/mails.lang | 0 {htdocs => public}/langs/th_TH/main.lang | 0 {htdocs => public}/langs/th_TH/margins.lang | 0 {htdocs => public}/langs/th_TH/members.lang | 0 {htdocs => public}/langs/th_TH/oauth.lang | 0 {htdocs => public}/langs/th_TH/opensurvey.lang | 0 {htdocs => public}/langs/th_TH/orders.lang | 0 {htdocs => public}/langs/th_TH/other.lang | 0 {htdocs => public}/langs/th_TH/paybox.lang | 0 {htdocs => public}/langs/th_TH/paypal.lang | 0 {htdocs => public}/langs/th_TH/printing.lang | 0 {htdocs => public}/langs/th_TH/productbatch.lang | 0 {htdocs => public}/langs/th_TH/products.lang | 0 {htdocs => public}/langs/th_TH/projects.lang | 0 {htdocs => public}/langs/th_TH/propal.lang | 0 {htdocs => public}/langs/th_TH/receiptprinter.lang | 0 {htdocs => public}/langs/th_TH/resource.lang | 0 {htdocs => public}/langs/th_TH/salaries.lang | 0 {htdocs => public}/langs/th_TH/sendings.lang | 0 {htdocs => public}/langs/th_TH/sms.lang | 0 {htdocs => public}/langs/th_TH/stocks.lang | 0 .../langs/th_TH/supplier_proposal.lang | 0 {htdocs => public}/langs/th_TH/suppliers.lang | 0 {htdocs => public}/langs/th_TH/trips.lang | 0 {htdocs => public}/langs/th_TH/users.lang | 0 {htdocs => public}/langs/th_TH/website.lang | 0 {htdocs => public}/langs/th_TH/withdrawals.lang | 0 {htdocs => public}/langs/th_TH/workflow.lang | 0 {htdocs => public}/langs/tr_TR/accountancy.lang | 0 {htdocs => public}/langs/tr_TR/admin.lang | 0 {htdocs => public}/langs/tr_TR/agenda.lang | 0 {htdocs => public}/langs/tr_TR/banks.lang | 0 {htdocs => public}/langs/tr_TR/bills.lang | 0 {htdocs => public}/langs/tr_TR/bookmarks.lang | 0 {htdocs => public}/langs/tr_TR/boxes.lang | 0 {htdocs => public}/langs/tr_TR/cashdesk.lang | 0 {htdocs => public}/langs/tr_TR/categories.lang | 0 {htdocs => public}/langs/tr_TR/commercial.lang | 0 {htdocs => public}/langs/tr_TR/commissions.lang | 0 {htdocs => public}/langs/tr_TR/companies.lang | 0 {htdocs => public}/langs/tr_TR/compta.lang | 0 {htdocs => public}/langs/tr_TR/contracts.lang | 0 {htdocs => public}/langs/tr_TR/cron.lang | 0 {htdocs => public}/langs/tr_TR/deliveries.lang | 0 {htdocs => public}/langs/tr_TR/dict.lang | 0 {htdocs => public}/langs/tr_TR/donations.lang | 0 {htdocs => public}/langs/tr_TR/ecm.lang | 0 {htdocs => public}/langs/tr_TR/errors.lang | 0 {htdocs => public}/langs/tr_TR/exports.lang | 0 {htdocs => public}/langs/tr_TR/externalsite.lang | 0 {htdocs => public}/langs/tr_TR/ftp.lang | 0 {htdocs => public}/langs/tr_TR/help.lang | 0 {htdocs => public}/langs/tr_TR/holiday.lang | 0 {htdocs => public}/langs/tr_TR/hrm.lang | 0 {htdocs => public}/langs/tr_TR/incoterm.lang | 0 {htdocs => public}/langs/tr_TR/install.lang | 0 {htdocs => public}/langs/tr_TR/interventions.lang | 0 {htdocs => public}/langs/tr_TR/languages.lang | 0 {htdocs => public}/langs/tr_TR/ldap.lang | 0 {htdocs => public}/langs/tr_TR/link.lang | 0 {htdocs => public}/langs/tr_TR/loan.lang | 0 {htdocs => public}/langs/tr_TR/mailmanspip.lang | 0 {htdocs => public}/langs/tr_TR/mails.lang | 0 {htdocs => public}/langs/tr_TR/main.lang | 0 {htdocs => public}/langs/tr_TR/margins.lang | 0 {htdocs => public}/langs/tr_TR/members.lang | 0 {htdocs => public}/langs/tr_TR/oauth.lang | 0 {htdocs => public}/langs/tr_TR/opensurvey.lang | 0 {htdocs => public}/langs/tr_TR/orders.lang | 0 {htdocs => public}/langs/tr_TR/other.lang | 0 {htdocs => public}/langs/tr_TR/paybox.lang | 0 {htdocs => public}/langs/tr_TR/paypal.lang | 0 {htdocs => public}/langs/tr_TR/printing.lang | 0 {htdocs => public}/langs/tr_TR/productbatch.lang | 0 {htdocs => public}/langs/tr_TR/products.lang | 0 {htdocs => public}/langs/tr_TR/projects.lang | 0 {htdocs => public}/langs/tr_TR/propal.lang | 0 {htdocs => public}/langs/tr_TR/receiptprinter.lang | 0 {htdocs => public}/langs/tr_TR/resource.lang | 0 {htdocs => public}/langs/tr_TR/salaries.lang | 0 {htdocs => public}/langs/tr_TR/sendings.lang | 0 {htdocs => public}/langs/tr_TR/sms.lang | 0 {htdocs => public}/langs/tr_TR/stocks.lang | 0 .../langs/tr_TR/supplier_proposal.lang | 0 {htdocs => public}/langs/tr_TR/suppliers.lang | 0 {htdocs => public}/langs/tr_TR/trips.lang | 0 {htdocs => public}/langs/tr_TR/users.lang | 0 {htdocs => public}/langs/tr_TR/website.lang | 0 {htdocs => public}/langs/tr_TR/withdrawals.lang | 0 {htdocs => public}/langs/tr_TR/workflow.lang | 0 {htdocs => public}/langs/uk_UA/accountancy.lang | 0 {htdocs => public}/langs/uk_UA/admin.lang | 0 {htdocs => public}/langs/uk_UA/agenda.lang | 0 {htdocs => public}/langs/uk_UA/banks.lang | 0 {htdocs => public}/langs/uk_UA/bills.lang | 0 {htdocs => public}/langs/uk_UA/bookmarks.lang | 0 {htdocs => public}/langs/uk_UA/boxes.lang | 0 {htdocs => public}/langs/uk_UA/cashdesk.lang | 0 {htdocs => public}/langs/uk_UA/categories.lang | 0 {htdocs => public}/langs/uk_UA/commercial.lang | 0 {htdocs => public}/langs/uk_UA/companies.lang | 0 {htdocs => public}/langs/uk_UA/compta.lang | 0 {htdocs => public}/langs/uk_UA/contracts.lang | 0 {htdocs => public}/langs/uk_UA/cron.lang | 0 {htdocs => public}/langs/uk_UA/deliveries.lang | 0 {htdocs => public}/langs/uk_UA/dict.lang | 0 {htdocs => public}/langs/uk_UA/donations.lang | 0 {htdocs => public}/langs/uk_UA/ecm.lang | 0 {htdocs => public}/langs/uk_UA/errors.lang | 0 {htdocs => public}/langs/uk_UA/exports.lang | 0 {htdocs => public}/langs/uk_UA/externalsite.lang | 0 {htdocs => public}/langs/uk_UA/ftp.lang | 0 {htdocs => public}/langs/uk_UA/help.lang | 0 {htdocs => public}/langs/uk_UA/holiday.lang | 0 {htdocs => public}/langs/uk_UA/hrm.lang | 0 {htdocs => public}/langs/uk_UA/incoterm.lang | 0 {htdocs => public}/langs/uk_UA/install.lang | 0 {htdocs => public}/langs/uk_UA/interventions.lang | 0 {htdocs => public}/langs/uk_UA/languages.lang | 0 {htdocs => public}/langs/uk_UA/ldap.lang | 0 {htdocs => public}/langs/uk_UA/link.lang | 0 {htdocs => public}/langs/uk_UA/loan.lang | 0 {htdocs => public}/langs/uk_UA/mailmanspip.lang | 0 {htdocs => public}/langs/uk_UA/mails.lang | 0 {htdocs => public}/langs/uk_UA/main.lang | 0 {htdocs => public}/langs/uk_UA/margins.lang | 0 {htdocs => public}/langs/uk_UA/members.lang | 0 {htdocs => public}/langs/uk_UA/oauth.lang | 0 {htdocs => public}/langs/uk_UA/opensurvey.lang | 0 {htdocs => public}/langs/uk_UA/orders.lang | 0 {htdocs => public}/langs/uk_UA/other.lang | 0 {htdocs => public}/langs/uk_UA/paybox.lang | 0 {htdocs => public}/langs/uk_UA/paypal.lang | 0 {htdocs => public}/langs/uk_UA/printing.lang | 0 {htdocs => public}/langs/uk_UA/productbatch.lang | 0 {htdocs => public}/langs/uk_UA/products.lang | 0 {htdocs => public}/langs/uk_UA/projects.lang | 0 {htdocs => public}/langs/uk_UA/propal.lang | 0 {htdocs => public}/langs/uk_UA/receiptprinter.lang | 0 {htdocs => public}/langs/uk_UA/resource.lang | 0 {htdocs => public}/langs/uk_UA/salaries.lang | 0 {htdocs => public}/langs/uk_UA/sendings.lang | 0 {htdocs => public}/langs/uk_UA/sms.lang | 0 {htdocs => public}/langs/uk_UA/stocks.lang | 0 .../langs/uk_UA/supplier_proposal.lang | 0 {htdocs => public}/langs/uk_UA/suppliers.lang | 0 {htdocs => public}/langs/uk_UA/trips.lang | 0 {htdocs => public}/langs/uk_UA/users.lang | 0 {htdocs => public}/langs/uk_UA/website.lang | 0 {htdocs => public}/langs/uk_UA/withdrawals.lang | 0 {htdocs => public}/langs/uk_UA/workflow.lang | 0 {htdocs => public}/langs/uz_UZ/accountancy.lang | 0 {htdocs => public}/langs/uz_UZ/admin.lang | 0 {htdocs => public}/langs/uz_UZ/agenda.lang | 0 {htdocs => public}/langs/uz_UZ/banks.lang | 0 {htdocs => public}/langs/uz_UZ/bills.lang | 0 {htdocs => public}/langs/uz_UZ/bookmarks.lang | 0 {htdocs => public}/langs/uz_UZ/boxes.lang | 0 {htdocs => public}/langs/uz_UZ/cashdesk.lang | 0 {htdocs => public}/langs/uz_UZ/categories.lang | 0 {htdocs => public}/langs/uz_UZ/commercial.lang | 0 {htdocs => public}/langs/uz_UZ/companies.lang | 0 {htdocs => public}/langs/uz_UZ/compta.lang | 0 {htdocs => public}/langs/uz_UZ/contracts.lang | 0 {htdocs => public}/langs/uz_UZ/cron.lang | 0 {htdocs => public}/langs/uz_UZ/deliveries.lang | 0 {htdocs => public}/langs/uz_UZ/dict.lang | 0 {htdocs => public}/langs/uz_UZ/donations.lang | 0 {htdocs => public}/langs/uz_UZ/ecm.lang | 0 {htdocs => public}/langs/uz_UZ/errors.lang | 0 {htdocs => public}/langs/uz_UZ/exports.lang | 0 {htdocs => public}/langs/uz_UZ/externalsite.lang | 0 {htdocs => public}/langs/uz_UZ/ftp.lang | 0 {htdocs => public}/langs/uz_UZ/help.lang | 0 {htdocs => public}/langs/uz_UZ/holiday.lang | 0 {htdocs => public}/langs/uz_UZ/incoterm.lang | 0 {htdocs => public}/langs/uz_UZ/install.lang | 0 {htdocs => public}/langs/uz_UZ/interventions.lang | 0 {htdocs => public}/langs/uz_UZ/languages.lang | 0 {htdocs => public}/langs/uz_UZ/ldap.lang | 0 {htdocs => public}/langs/uz_UZ/link.lang | 0 {htdocs => public}/langs/uz_UZ/loan.lang | 0 {htdocs => public}/langs/uz_UZ/mailmanspip.lang | 0 {htdocs => public}/langs/uz_UZ/mails.lang | 0 {htdocs => public}/langs/uz_UZ/main.lang | 0 {htdocs => public}/langs/uz_UZ/margins.lang | 0 {htdocs => public}/langs/uz_UZ/members.lang | 0 {htdocs => public}/langs/uz_UZ/opensurvey.lang | 0 {htdocs => public}/langs/uz_UZ/orders.lang | 0 {htdocs => public}/langs/uz_UZ/other.lang | 0 {htdocs => public}/langs/uz_UZ/paybox.lang | 0 {htdocs => public}/langs/uz_UZ/paypal.lang | 0 {htdocs => public}/langs/uz_UZ/printing.lang | 0 {htdocs => public}/langs/uz_UZ/productbatch.lang | 0 {htdocs => public}/langs/uz_UZ/products.lang | 0 {htdocs => public}/langs/uz_UZ/projects.lang | 0 {htdocs => public}/langs/uz_UZ/propal.lang | 0 {htdocs => public}/langs/uz_UZ/resource.lang | 0 {htdocs => public}/langs/uz_UZ/salaries.lang | 0 {htdocs => public}/langs/uz_UZ/sendings.lang | 0 {htdocs => public}/langs/uz_UZ/sms.lang | 0 {htdocs => public}/langs/uz_UZ/stocks.lang | 0 {htdocs => public}/langs/uz_UZ/suppliers.lang | 0 {htdocs => public}/langs/uz_UZ/trips.lang | 0 {htdocs => public}/langs/uz_UZ/users.lang | 0 {htdocs => public}/langs/uz_UZ/withdrawals.lang | 0 {htdocs => public}/langs/uz_UZ/workflow.lang | 0 {htdocs => public}/langs/vi_VN/accountancy.lang | 0 {htdocs => public}/langs/vi_VN/admin.lang | 0 {htdocs => public}/langs/vi_VN/agenda.lang | 0 {htdocs => public}/langs/vi_VN/banks.lang | 0 {htdocs => public}/langs/vi_VN/bills.lang | 0 {htdocs => public}/langs/vi_VN/bookmarks.lang | 0 {htdocs => public}/langs/vi_VN/boxes.lang | 0 {htdocs => public}/langs/vi_VN/cashdesk.lang | 0 {htdocs => public}/langs/vi_VN/categories.lang | 0 {htdocs => public}/langs/vi_VN/commercial.lang | 0 {htdocs => public}/langs/vi_VN/companies.lang | 0 {htdocs => public}/langs/vi_VN/compta.lang | 0 {htdocs => public}/langs/vi_VN/contracts.lang | 0 {htdocs => public}/langs/vi_VN/cron.lang | 0 {htdocs => public}/langs/vi_VN/deliveries.lang | 0 {htdocs => public}/langs/vi_VN/dict.lang | 0 {htdocs => public}/langs/vi_VN/donations.lang | 0 {htdocs => public}/langs/vi_VN/ecm.lang | 0 {htdocs => public}/langs/vi_VN/errors.lang | 0 {htdocs => public}/langs/vi_VN/exports.lang | 0 {htdocs => public}/langs/vi_VN/externalsite.lang | 0 {htdocs => public}/langs/vi_VN/ftp.lang | 0 {htdocs => public}/langs/vi_VN/help.lang | 0 {htdocs => public}/langs/vi_VN/holiday.lang | 0 {htdocs => public}/langs/vi_VN/hrm.lang | 0 {htdocs => public}/langs/vi_VN/incoterm.lang | 0 {htdocs => public}/langs/vi_VN/install.lang | 0 {htdocs => public}/langs/vi_VN/interventions.lang | 0 {htdocs => public}/langs/vi_VN/languages.lang | 0 {htdocs => public}/langs/vi_VN/ldap.lang | 0 {htdocs => public}/langs/vi_VN/link.lang | 0 {htdocs => public}/langs/vi_VN/loan.lang | 0 {htdocs => public}/langs/vi_VN/mailmanspip.lang | 0 {htdocs => public}/langs/vi_VN/mails.lang | 0 {htdocs => public}/langs/vi_VN/main.lang | 0 {htdocs => public}/langs/vi_VN/margins.lang | 0 {htdocs => public}/langs/vi_VN/members.lang | 0 {htdocs => public}/langs/vi_VN/oauth.lang | 0 {htdocs => public}/langs/vi_VN/opensurvey.lang | 0 {htdocs => public}/langs/vi_VN/orders.lang | 0 {htdocs => public}/langs/vi_VN/other.lang | 0 {htdocs => public}/langs/vi_VN/paybox.lang | 0 {htdocs => public}/langs/vi_VN/paypal.lang | 0 {htdocs => public}/langs/vi_VN/printing.lang | 0 {htdocs => public}/langs/vi_VN/productbatch.lang | 0 {htdocs => public}/langs/vi_VN/products.lang | 0 {htdocs => public}/langs/vi_VN/projects.lang | 0 {htdocs => public}/langs/vi_VN/propal.lang | 0 {htdocs => public}/langs/vi_VN/receiptprinter.lang | 0 {htdocs => public}/langs/vi_VN/resource.lang | 0 {htdocs => public}/langs/vi_VN/salaries.lang | 0 {htdocs => public}/langs/vi_VN/sendings.lang | 0 {htdocs => public}/langs/vi_VN/sms.lang | 0 {htdocs => public}/langs/vi_VN/stocks.lang | 0 .../langs/vi_VN/supplier_proposal.lang | 0 {htdocs => public}/langs/vi_VN/suppliers.lang | 0 {htdocs => public}/langs/vi_VN/trips.lang | 0 {htdocs => public}/langs/vi_VN/users.lang | 0 {htdocs => public}/langs/vi_VN/website.lang | 0 {htdocs => public}/langs/vi_VN/withdrawals.lang | 0 {htdocs => public}/langs/vi_VN/workflow.lang | 0 {htdocs => public}/langs/zh_CN/accountancy.lang | 0 {htdocs => public}/langs/zh_CN/admin.lang | 0 {htdocs => public}/langs/zh_CN/agenda.lang | 0 {htdocs => public}/langs/zh_CN/banks.lang | 0 {htdocs => public}/langs/zh_CN/bills.lang | 0 {htdocs => public}/langs/zh_CN/bookmarks.lang | 0 {htdocs => public}/langs/zh_CN/boxes.lang | 0 {htdocs => public}/langs/zh_CN/cashdesk.lang | 0 {htdocs => public}/langs/zh_CN/categories.lang | 0 {htdocs => public}/langs/zh_CN/commercial.lang | 0 {htdocs => public}/langs/zh_CN/companies.lang | 0 {htdocs => public}/langs/zh_CN/compta.lang | 0 {htdocs => public}/langs/zh_CN/contracts.lang | 0 {htdocs => public}/langs/zh_CN/cron.lang | 0 {htdocs => public}/langs/zh_CN/deliveries.lang | 0 {htdocs => public}/langs/zh_CN/dict.lang | 0 {htdocs => public}/langs/zh_CN/donations.lang | 0 {htdocs => public}/langs/zh_CN/ecm.lang | 0 {htdocs => public}/langs/zh_CN/errors.lang | 0 {htdocs => public}/langs/zh_CN/exports.lang | 0 {htdocs => public}/langs/zh_CN/externalsite.lang | 0 {htdocs => public}/langs/zh_CN/ftp.lang | 0 {htdocs => public}/langs/zh_CN/help.lang | 0 {htdocs => public}/langs/zh_CN/holiday.lang | 0 {htdocs => public}/langs/zh_CN/hrm.lang | 0 {htdocs => public}/langs/zh_CN/incoterm.lang | 0 {htdocs => public}/langs/zh_CN/install.lang | 0 {htdocs => public}/langs/zh_CN/interventions.lang | 0 {htdocs => public}/langs/zh_CN/languages.lang | 0 {htdocs => public}/langs/zh_CN/ldap.lang | 0 {htdocs => public}/langs/zh_CN/link.lang | 0 {htdocs => public}/langs/zh_CN/loan.lang | 0 {htdocs => public}/langs/zh_CN/mailmanspip.lang | 0 {htdocs => public}/langs/zh_CN/mails.lang | 0 {htdocs => public}/langs/zh_CN/main.lang | 0 {htdocs => public}/langs/zh_CN/margins.lang | 0 {htdocs => public}/langs/zh_CN/members.lang | 0 {htdocs => public}/langs/zh_CN/oauth.lang | 0 {htdocs => public}/langs/zh_CN/opensurvey.lang | 0 {htdocs => public}/langs/zh_CN/orders.lang | 0 {htdocs => public}/langs/zh_CN/other.lang | 0 {htdocs => public}/langs/zh_CN/paybox.lang | 0 {htdocs => public}/langs/zh_CN/paypal.lang | 0 {htdocs => public}/langs/zh_CN/printing.lang | 0 {htdocs => public}/langs/zh_CN/productbatch.lang | 0 {htdocs => public}/langs/zh_CN/products.lang | 0 {htdocs => public}/langs/zh_CN/projects.lang | 0 {htdocs => public}/langs/zh_CN/propal.lang | 0 {htdocs => public}/langs/zh_CN/receiptprinter.lang | 0 {htdocs => public}/langs/zh_CN/resource.lang | 0 {htdocs => public}/langs/zh_CN/salaries.lang | 0 {htdocs => public}/langs/zh_CN/sendings.lang | 0 {htdocs => public}/langs/zh_CN/sms.lang | 0 {htdocs => public}/langs/zh_CN/stocks.lang | 0 .../langs/zh_CN/supplier_proposal.lang | 0 {htdocs => public}/langs/zh_CN/suppliers.lang | 0 {htdocs => public}/langs/zh_CN/trips.lang | 0 {htdocs => public}/langs/zh_CN/users.lang | 0 {htdocs => public}/langs/zh_CN/website.lang | 0 {htdocs => public}/langs/zh_CN/withdrawals.lang | 0 {htdocs => public}/langs/zh_CN/workflow.lang | 0 {htdocs => public}/langs/zh_TW/accountancy.lang | 0 {htdocs => public}/langs/zh_TW/admin.lang | 0 {htdocs => public}/langs/zh_TW/agenda.lang | 0 {htdocs => public}/langs/zh_TW/banks.lang | 0 {htdocs => public}/langs/zh_TW/bills.lang | 0 {htdocs => public}/langs/zh_TW/bookmarks.lang | 0 {htdocs => public}/langs/zh_TW/boxes.lang | 0 {htdocs => public}/langs/zh_TW/cashdesk.lang | 0 {htdocs => public}/langs/zh_TW/categories.lang | 0 {htdocs => public}/langs/zh_TW/commercial.lang | 0 {htdocs => public}/langs/zh_TW/companies.lang | 0 {htdocs => public}/langs/zh_TW/compta.lang | 0 {htdocs => public}/langs/zh_TW/contracts.lang | 0 {htdocs => public}/langs/zh_TW/cron.lang | 0 {htdocs => public}/langs/zh_TW/deliveries.lang | 0 {htdocs => public}/langs/zh_TW/dict.lang | 0 {htdocs => public}/langs/zh_TW/donations.lang | 0 {htdocs => public}/langs/zh_TW/ecm.lang | 0 {htdocs => public}/langs/zh_TW/errors.lang | 0 {htdocs => public}/langs/zh_TW/exports.lang | 0 {htdocs => public}/langs/zh_TW/externalsite.lang | 0 {htdocs => public}/langs/zh_TW/ftp.lang | 0 {htdocs => public}/langs/zh_TW/help.lang | 0 {htdocs => public}/langs/zh_TW/holiday.lang | 0 {htdocs => public}/langs/zh_TW/hrm.lang | 0 {htdocs => public}/langs/zh_TW/incoterm.lang | 0 {htdocs => public}/langs/zh_TW/install.lang | 0 {htdocs => public}/langs/zh_TW/interventions.lang | 0 {htdocs => public}/langs/zh_TW/languages.lang | 0 {htdocs => public}/langs/zh_TW/ldap.lang | 0 {htdocs => public}/langs/zh_TW/link.lang | 0 {htdocs => public}/langs/zh_TW/loan.lang | 0 {htdocs => public}/langs/zh_TW/mailmanspip.lang | 0 {htdocs => public}/langs/zh_TW/mails.lang | 0 {htdocs => public}/langs/zh_TW/main.lang | 0 {htdocs => public}/langs/zh_TW/margins.lang | 0 {htdocs => public}/langs/zh_TW/members.lang | 0 {htdocs => public}/langs/zh_TW/oauth.lang | 0 {htdocs => public}/langs/zh_TW/opensurvey.lang | 0 {htdocs => public}/langs/zh_TW/orders.lang | 0 {htdocs => public}/langs/zh_TW/other.lang | 0 {htdocs => public}/langs/zh_TW/paybox.lang | 0 {htdocs => public}/langs/zh_TW/paypal.lang | 0 {htdocs => public}/langs/zh_TW/printing.lang | 0 {htdocs => public}/langs/zh_TW/productbatch.lang | 0 {htdocs => public}/langs/zh_TW/products.lang | 0 {htdocs => public}/langs/zh_TW/projects.lang | 0 {htdocs => public}/langs/zh_TW/propal.lang | 0 {htdocs => public}/langs/zh_TW/receiptprinter.lang | 0 {htdocs => public}/langs/zh_TW/resource.lang | 0 {htdocs => public}/langs/zh_TW/salaries.lang | 0 {htdocs => public}/langs/zh_TW/sendings.lang | 0 {htdocs => public}/langs/zh_TW/sms.lang | 0 {htdocs => public}/langs/zh_TW/stocks.lang | 0 .../langs/zh_TW/supplier_proposal.lang | 0 {htdocs => public}/langs/zh_TW/suppliers.lang | 0 {htdocs => public}/langs/zh_TW/trips.lang | 0 {htdocs => public}/langs/zh_TW/users.lang | 0 {htdocs => public}/langs/zh_TW/website.lang | 0 {htdocs => public}/langs/zh_TW/withdrawals.lang | 0 {htdocs => public}/langs/zh_TW/workflow.lang | 0 {htdocs => public}/livraison/card.php | 0 {htdocs => public}/livraison/class/index.html | 0 .../livraison/class/livraison.class.php | 0 {htdocs => public}/livraison/index.html | 0 {htdocs => public}/loan/calc.php | 0 {htdocs => public}/loan/card.php | 0 {htdocs => public}/loan/class/index.html | 0 {htdocs => public}/loan/class/loan.class.php | 0 {htdocs => public}/loan/class/paymentloan.class.php | 0 {htdocs => public}/loan/document.php | 0 {htdocs => public}/loan/index.html | 0 {htdocs => public}/loan/index.php | 0 {htdocs => public}/loan/info.php | 0 {htdocs => public}/loan/note.php | 0 {htdocs => public}/loan/payment/card.php | 0 {htdocs => public}/loan/payment/index.html | 0 {htdocs => public}/loan/payment/payment.php | 0 {htdocs => public}/mailmanspip/class/index.html | 0 .../mailmanspip/class/mailmanspip.class.php | 0 {htdocs => public}/mailmanspip/index.html | 0 {htdocs => public}/main.inc.php | 0 {htdocs => public}/margin/admin/index.html | 0 {htdocs => public}/margin/admin/margin.php | 0 {htdocs => public}/margin/agentMargins.php | 0 {htdocs => public}/margin/checkMargins.php | 0 {htdocs => public}/margin/customerMargins.php | 0 {htdocs => public}/margin/index.php | 0 {htdocs => public}/margin/lib/index.html | 0 {htdocs => public}/margin/lib/margins.lib.php | 0 {htdocs => public}/margin/productMargins.php | 0 {htdocs => public}/margin/tabs/index.html | 0 {htdocs => public}/margin/tabs/productMargins.php | 0 .../margin/tabs/thirdpartyMargins.php | 0 {htdocs => public}/master.inc.php | 0 .../multicurrency/class/multicurrency.class.php | 0 {htdocs => public}/opensurvey/card.php | 0 {htdocs => public}/opensurvey/class/index.html | 0 .../opensurvey/class/opensurveysondage.class.php | 0 {htdocs => public}/opensurvey/css/index.html | 0 {htdocs => public}/opensurvey/css/style.css | 0 {htdocs => public}/opensurvey/exportcsv.php | 0 {htdocs => public}/opensurvey/fonctions.php | 0 {htdocs => public}/opensurvey/img/accept-24.png | Bin {htdocs => public}/opensurvey/img/accept.png | Bin {htdocs => public}/opensurvey/img/add-16.png | Bin {htdocs => public}/opensurvey/img/add-24.png | Bin {htdocs => public}/opensurvey/img/calendar-32.png | Bin {htdocs => public}/opensurvey/img/chart-32.png | Bin {htdocs => public}/opensurvey/img/date.png | Bin {htdocs => public}/opensurvey/img/fforward.png | Bin {htdocs => public}/opensurvey/img/index.html | 0 {htdocs => public}/opensurvey/img/medaille.png | Bin {htdocs => public}/opensurvey/img/next.png | Bin .../opensurvey/img/object_opensurvey.png | Bin {htdocs => public}/opensurvey/img/opensurvey.png | Bin {htdocs => public}/opensurvey/img/previous.png | Bin {htdocs => public}/opensurvey/img/rewind.png | Bin {htdocs => public}/opensurvey/img/sondage2.png | Bin {htdocs => public}/opensurvey/index.php | 0 {htdocs => public}/opensurvey/list.php | 0 {htdocs => public}/opensurvey/results.php | 0 .../opensurvey/wizard/choix_autre.php | 0 {htdocs => public}/opensurvey/wizard/choix_date.php | 0 .../opensurvey/wizard/create_survey.php | 0 {htdocs => public}/opensurvey/wizard/index.php | 0 {htdocs => public}/paybox/admin/index.html | 0 {htdocs => public}/paybox/admin/paybox.php | 0 {htdocs => public}/paybox/img/index.html | 0 {htdocs => public}/paybox/img/object_paybox.png | Bin {htdocs => public}/paybox/index.html | 0 {htdocs => public}/paybox/lib/index.html | 0 {htdocs => public}/paybox/lib/paybox.lib.php | 0 {htdocs => public}/paypal/admin/index.html | 0 {htdocs => public}/paypal/admin/paypal.php | 0 {htdocs => public}/paypal/img/index.html | 0 {htdocs => public}/paypal/img/object_paypal.png | Bin {htdocs => public}/paypal/index.html | 0 {htdocs => public}/paypal/lib/index.html | 0 {htdocs => public}/paypal/lib/paypal.lib.php | 0 .../paypal/lib/paypalfunctions.lib.php | 0 {htdocs => public}/printing/admin/index.html | 0 {htdocs => public}/printing/admin/printing.php | 0 {htdocs => public}/printing/index.php | 0 {htdocs => public}/printing/lib/index.html | 0 {htdocs => public}/printing/lib/printing.lib.php | 0 {htdocs => public}/product/admin/dynamic_prices.php | 0 {htdocs => public}/product/admin/index.html | 0 {htdocs => public}/product/admin/price_rules.php | 0 {htdocs => public}/product/admin/product.php | 0 .../product/admin/product_extrafields.php | 0 .../product/admin/product_lot_extrafields.php | 0 {htdocs => public}/product/admin/product_tools.php | 0 {htdocs => public}/product/ajax/index.html | 0 {htdocs => public}/product/ajax/products.php | 0 {htdocs => public}/product/canvas/index.html | 0 .../canvas/product/actions_card_product.class.php | 0 .../product/canvas/product/index.html | 0 .../product/canvas/product/tpl/card_create.tpl.php | 0 .../product/canvas/product/tpl/card_edit.tpl.php | 0 .../product/canvas/product/tpl/card_view.tpl.php | 0 .../product/canvas/product/tpl/index.html | 0 .../product/canvas/product/tpl/list.tpl.php | 0 .../canvas/service/actions_card_service.class.php | 0 .../product/canvas/service/index.html | 0 .../product/canvas/service/tpl/card_create.tpl.php | 0 .../product/canvas/service/tpl/card_edit.tpl.php | 0 .../product/canvas/service/tpl/card_view.tpl.php | 0 .../product/canvas/service/tpl/index.html | 0 .../product/canvas/service/tpl/list.tpl.php | 0 {htdocs => public}/product/card.php | 0 .../product/class/api_deprecated_product.class.php | 0 .../product/class/api_products.class.php | 0 .../product/class/html.formproduct.class.php | 0 {htdocs => public}/product/class/index.html | 0 {htdocs => public}/product/class/product.class.php | 0 .../product/class/productbatch.class.php | 0 .../product/class/productcustomerprice.class.php | 0 .../product/class/propalmergepdfproduct.class.php | 0 {htdocs => public}/product/class/service.class.php | 0 {htdocs => public}/product/composition/card.php | 0 {htdocs => public}/product/composition/index.html | 0 {htdocs => public}/product/document.php | 0 .../dynamic_price/class/price_expression.class.php | 0 .../class/price_global_variable.class.php | 0 .../class/price_global_variable_updater.class.php | 0 .../dynamic_price/class/price_parser.class.php | 0 {htdocs => public}/product/dynamic_price/editor.php | 0 {htdocs => public}/product/fournisseurs.php | 0 {htdocs => public}/product/index.php | 0 {htdocs => public}/product/info.php | 0 {htdocs => public}/product/list.php | 0 {htdocs => public}/product/note.php | 0 {htdocs => public}/product/popuprop.php | 0 {htdocs => public}/product/price.php | 0 {htdocs => public}/product/reassort.php | 0 {htdocs => public}/product/reassortlot.php | 0 {htdocs => public}/product/stats/card.php | 0 {htdocs => public}/product/stats/commande.php | 0 .../product/stats/commande_fournisseur.php | 0 {htdocs => public}/product/stats/contrat.php | 0 {htdocs => public}/product/stats/facture.php | 0 .../product/stats/facture_fournisseur.php | 0 {htdocs => public}/product/stats/index.html | 0 {htdocs => public}/product/stats/propal.php | 0 {htdocs => public}/product/stock/card.php | 0 .../stock/class/api_stockmovements.class.php | 0 .../product/stock/class/api_warehouses.class.php | 0 .../product/stock/class/entrepot.class.php | 0 {htdocs => public}/product/stock/class/index.html | 0 .../product/stock/class/mouvementstock.class.php | 0 .../product/stock/class/productlot.class.php | 0 .../stock/class/productstockentrepot.class.php | 0 {htdocs => public}/product/stock/fiche-valo.php | 0 {htdocs => public}/product/stock/img/index.html | 0 {htdocs => public}/product/stock/img/no.png | Bin {htdocs => public}/product/stock/img/yes.png | Bin {htdocs => public}/product/stock/index.php | 0 {htdocs => public}/product/stock/info.php | 0 {htdocs => public}/product/stock/lib/index.html | 0 .../product/stock/lib/replenishment.lib.php | 0 {htdocs => public}/product/stock/list.php | 0 {htdocs => public}/product/stock/massstockmove.php | 0 {htdocs => public}/product/stock/mouvement.php | 0 {htdocs => public}/product/stock/product.php | 0 .../product/stock/productlot_card.php | 0 .../product/stock/productlot_list.php | 0 {htdocs => public}/product/stock/replenish.php | 0 .../product/stock/replenishorders.php | 0 .../product/stock/tpl/stockcorrection.tpl.php | 0 .../product/stock/tpl/stocktransfer.tpl.php | 0 {htdocs => public}/product/stock/valo.php | 0 {htdocs => public}/product/traduction.php | 0 {htdocs => public}/projet/activity/index.php | 0 {htdocs => public}/projet/activity/perday.php | 0 {htdocs => public}/projet/activity/perweek.php | 0 {htdocs => public}/projet/admin/index.html | 0 {htdocs => public}/projet/admin/project.php | 0 .../projet/admin/project_extrafields.php | 0 .../projet/admin/project_task_extrafields.php | 0 {htdocs => public}/projet/ajax/projects.php | 0 {htdocs => public}/projet/card.php | 0 .../projet/class/api_projects.class.php | 0 {htdocs => public}/projet/class/api_tasks.class.php | 0 {htdocs => public}/projet/class/index.html | 0 {htdocs => public}/projet/class/project.class.php | 0 .../projet/class/projectstats.class.php | 0 {htdocs => public}/projet/class/task.class.php | 0 {htdocs => public}/projet/contact.php | 0 {htdocs => public}/projet/document.php | 0 {htdocs => public}/projet/element.php | 0 {htdocs => public}/projet/ganttchart.inc.php | 0 {htdocs => public}/projet/ganttview.php | 0 .../projet/graph_opportunities.inc.php | 0 {htdocs => public}/projet/index.php | 0 {htdocs => public}/projet/info.php | 0 {htdocs => public}/projet/jsgantt_language.js.php | 0 {htdocs => public}/projet/list.php | 0 {htdocs => public}/projet/note.php | 0 {htdocs => public}/projet/stats/index.php | 0 {htdocs => public}/projet/tasks.php | 0 {htdocs => public}/projet/tasks/contact.php | 0 {htdocs => public}/projet/tasks/document.php | 0 {htdocs => public}/projet/tasks/list.php | 0 {htdocs => public}/projet/tasks/note.php | 0 {htdocs => public}/projet/tasks/task.php | 0 {htdocs => public}/projet/tasks/time.php | 0 {htdocs => public}/public/agenda/agendaexport.php | 0 {htdocs => public}/public/agenda/index.php | 0 {htdocs => public}/public/cron/cron_run_jobs.php | 0 {htdocs => public}/public/cron/index.html | 0 .../public/demo/dolibarr_screenshot2.png | Bin .../public/demo/dolibarr_screenshot6.png | Bin .../public/demo/dolibarr_screenshot8.png | Bin .../public/demo/dolibarr_screenshot9.png | Bin {htdocs => public}/public/demo/index.php | 0 .../public/donations/donateurs_code.php | 0 {htdocs => public}/public/donations/index.php | 0 {htdocs => public}/public/emailing/index.html | 0 {htdocs => public}/public/emailing/mailing-read.php | 0 .../public/emailing/mailing-unsubscribe.php | 0 {htdocs => public}/public/error-401.php | 0 {htdocs => public}/public/error-404.php | 0 {htdocs => public}/public/index.php | 0 {htdocs => public}/public/members/index.php | 0 {htdocs => public}/public/members/new.php | 0 {htdocs => public}/public/members/public_card.php | 0 {htdocs => public}/public/members/public_list.php | 0 {htdocs => public}/public/notice.php | 0 {htdocs => public}/public/opensurvey/index.html | 0 {htdocs => public}/public/opensurvey/studs.php | 0 {htdocs => public}/public/paybox/index.php | 0 {htdocs => public}/public/paybox/newpayment.php | 0 {htdocs => public}/public/paybox/paymentko.php | 0 {htdocs => public}/public/paybox/paymentok.php | 0 {htdocs => public}/public/paypal/index.php | 0 {htdocs => public}/public/paypal/newpayment.php | 0 {htdocs => public}/public/paypal/paymentko.php | 0 {htdocs => public}/public/paypal/paymentok.php | 0 {htdocs => public}/public/test/test_arrays.php | 0 {htdocs => public}/public/test/test_forms.php | 0 {htdocs => public}/public/theme/common/index.php | 0 {htdocs => public}/public/theme/common/nophoto.png | Bin .../public/theme/common/user_anonymous.png | Bin {htdocs => public}/public/theme/common/user_man.png | Bin .../public/theme/common/user_woman.png | Bin {htdocs => public}/public/theme/index.php | 0 {htdocs => public}/public/websites/index.php | 0 {htdocs => public}/public/websites/styles.css.php | 0 {htdocs => public}/resource/add.php | 0 {htdocs => public}/resource/card.php | 0 .../resource/class/dolresource.class.php | 0 .../resource/class/html.formresource.class.php | 0 {htdocs => public}/resource/class/index.html | 0 {htdocs => public}/resource/contact.php | 0 {htdocs => public}/resource/document.php | 0 {htdocs => public}/resource/element_resource.php | 0 {htdocs => public}/resource/index.html | 0 {htdocs => public}/resource/list.php | 0 {htdocs => public}/resource/note.php | 0 {htdocs => public}/robots.txt | 0 .../societe/admin/contact_extrafields.php | 0 {htdocs => public}/societe/admin/societe.php | 0 .../societe/admin/societe_extrafields.php | 0 {htdocs => public}/societe/agenda.php | 0 {htdocs => public}/societe/ajax/company.php | 0 {htdocs => public}/societe/ajax/index.html | 0 {htdocs => public}/societe/ajaxcompanies.php | 0 {htdocs => public}/societe/ajaxcountries.php | 0 {htdocs => public}/societe/canvas/README | 0 .../societe/canvas/actions_card_common.class.php | 0 .../canvas/company/actions_card_company.class.php | 0 .../societe/canvas/company/index.html | 0 .../societe/canvas/company/tpl/card_create.tpl.php | 0 .../societe/canvas/company/tpl/card_edit.tpl.php | 0 .../societe/canvas/company/tpl/card_view.tpl.php | 0 .../societe/canvas/company/tpl/index.html | 0 {htdocs => public}/societe/canvas/index.html | 0 .../individual/actions_card_individual.class.php | 0 .../societe/canvas/individual/index.html | 0 .../canvas/individual/tpl/card_create.tpl.php | 0 .../societe/canvas/individual/tpl/card_edit.tpl.php | 0 .../societe/canvas/individual/tpl/card_view.tpl.php | 0 .../societe/canvas/individual/tpl/index.html | 0 .../societe/checkvat/checkVatPopup.php | 0 .../societe/checkvat/checkVatService.xml | 0 {htdocs => public}/societe/checkvat/index.html | 0 {htdocs => public}/societe/class/address.class.php | 0 .../societe/class/api_contacts.class.php | 0 .../societe/class/api_deprecated_contact.class.php | 0 .../class/api_deprecated_thirdparty.class.php | 0 .../societe/class/api_thirdparties.class.php | 0 {htdocs => public}/societe/class/client.class.php | 0 .../societe/class/companybankaccount.class.php | 0 {htdocs => public}/societe/class/index.html | 0 {htdocs => public}/societe/class/societe.class.php | 0 {htdocs => public}/societe/commerciaux.php | 0 {htdocs => public}/societe/consumption.php | 0 {htdocs => public}/societe/document.php | 0 {htdocs => public}/societe/index.php | 0 {htdocs => public}/societe/list.php | 0 {htdocs => public}/societe/note.php | 0 {htdocs => public}/societe/notify/card.php | 0 {htdocs => public}/societe/notify/index.php | 0 {htdocs => public}/societe/price.php | 0 {htdocs => public}/societe/project.php | 0 {htdocs => public}/societe/rib.php | 0 {htdocs => public}/societe/soc.php | 0 {htdocs => public}/societe/societecontact.php | 0 {htdocs => public}/societe/tpl/index.html | 0 .../societe/tpl/linesalesrepresentative.tpl.php | 0 .../admin/supplier_proposal_extrafields.php | 0 .../admin/supplier_proposaldet_extrafields.php | 0 {htdocs => public}/supplier_proposal/card.php | 0 .../supplier_proposal/class/index.html | 0 .../class/supplier_proposal.class.php | 0 {htdocs => public}/supplier_proposal/document.php | 0 {htdocs => public}/supplier_proposal/index.php | 0 {htdocs => public}/supplier_proposal/info.php | 0 {htdocs => public}/supplier_proposal/list.php | 0 {htdocs => public}/supplier_proposal/note.php | 0 {htdocs => public}/supplier_proposal/tpl/index.html | 0 .../supplier_proposal/tpl/linkedobjectblock.tpl.php | 0 {htdocs => public}/support/background.png | Bin {htdocs => public}/support/default.css | 0 {htdocs => public}/support/helpcenter.png | Bin {htdocs => public}/support/inc.php | 0 {htdocs => public}/support/index.php | 0 {htdocs => public}/support/internet.png | Bin {htdocs => public}/support/mail.png | Bin {htdocs => public}/support/online.php | 0 {htdocs => public}/support/pagemaster.png | Bin {htdocs => public}/support/redstar.png | Bin {htdocs => public}/support/star.png | Bin {htdocs => public}/support/who.png | Bin {htdocs => public}/theme/.gitignore | 0 {htdocs => public}/theme/common/colorpicker.png | Bin .../theme/common/devices/audio-card.png | Bin .../theme/common/devices/audio-headset.png | Bin .../theme/common/devices/audio-input-line.png | Bin .../theme/common/devices/audio-input-microphone.png | Bin {htdocs => public}/theme/common/devices/battery.png | Bin .../theme/common/devices/camera-photo.png | Bin .../theme/common/devices/camera-web.png | Bin .../theme/common/devices/computer-laptop.png | Bin .../theme/common/devices/computer.png | Bin {htdocs => public}/theme/common/devices/cpu.png | Bin .../theme/common/devices/drive-harddisk.png | Bin .../theme/common/devices/drive-optical.png | Bin .../devices/drive-removable-media-usb-pendrive.png | Bin .../common/devices/drive-removable-media-usb.png | Bin .../theme/common/devices/drive-removable-media.png | Bin {htdocs => public}/theme/common/devices/index.html | 0 .../theme/common/devices/input-gaming.png | Bin .../theme/common/devices/input-keyboard.png | Bin .../theme/common/devices/input-mouse.png | Bin .../theme/common/devices/input-tablet.png | Bin .../common/devices/media-flash-memory-stick.png | Bin .../theme/common/devices/media-flash-sd-mmc.png | Bin .../common/devices/media-flash-smart-media.png | Bin .../theme/common/devices/media-flash.png | Bin .../theme/common/devices/media-floppy.png | Bin .../theme/common/devices/media-optical-audio.png | Bin .../theme/common/devices/media-optical-blu-ray.png | Bin .../theme/common/devices/media-optical-data.png | Bin .../common/devices/media-optical-dvd-video.png | Bin .../theme/common/devices/media-optical-dvd.png | Bin .../theme/common/devices/media-optical-mixed-cd.png | Bin .../common/devices/media-optical-recordable.png | Bin .../theme/common/devices/media-optical-video.png | Bin .../theme/common/devices/media-optical.png | Bin .../theme/common/devices/media-tape.png | Bin {htdocs => public}/theme/common/devices/modem.png | Bin .../common/devices/multimedia-player-apple-ipod.png | Bin .../theme/common/devices/multimedia-player.png | Bin .../theme/common/devices/network-wired.png | Bin .../devices/network-wireless-connected-00.png | Bin .../devices/network-wireless-connected-100.png | Bin .../devices/network-wireless-connected-25.png | Bin .../devices/network-wireless-connected-50.png | Bin .../devices/network-wireless-connected-75.png | Bin .../devices/network-wireless-disconnected.png | Bin .../theme/common/devices/network-wireless.png | Bin {htdocs => public}/theme/common/devices/pda.png | Bin .../common/devices/phone-openmoko-freerunner.png | Bin {htdocs => public}/theme/common/devices/phone.png | Bin .../theme/common/devices/printer-laser.png | Bin {htdocs => public}/theme/common/devices/printer.png | Bin {htdocs => public}/theme/common/devices/scanner.png | Bin .../theme/common/devices/video-display.png | Bin .../theme/common/devices/video-projector.png | Bin .../theme/common/devices/video-television.png | Bin {htdocs => public}/theme/common/dolibarr_box.png | Bin .../theme/common/dolibarr_logo_bw.png | Bin {htdocs => public}/theme/common/dolistore.jpg | Bin .../theme/common/emotes/face-angel.png | Bin .../theme/common/emotes/face-embarrassed.png | Bin .../theme/common/emotes/face-kiss.png | Bin .../theme/common/emotes/face-laugh.png | Bin .../theme/common/emotes/face-plain.png | Bin .../theme/common/emotes/face-raspberry.png | Bin {htdocs => public}/theme/common/emotes/face-sad.png | Bin .../theme/common/emotes/face-smile-big.png | Bin .../theme/common/emotes/face-smile.png | Bin .../theme/common/emotes/face-surprise.png | Bin .../theme/common/emotes/face-uncertain.png | Bin .../theme/common/emotes/face-wink.png | Bin {htdocs => public}/theme/common/emotes/index.html | 0 {htdocs => public}/theme/common/flags/ad.png | Bin {htdocs => public}/theme/common/flags/ae.png | Bin {htdocs => public}/theme/common/flags/af.png | Bin {htdocs => public}/theme/common/flags/ag.png | Bin {htdocs => public}/theme/common/flags/ai.png | Bin {htdocs => public}/theme/common/flags/al.png | Bin {htdocs => public}/theme/common/flags/am.png | Bin {htdocs => public}/theme/common/flags/an.png | Bin {htdocs => public}/theme/common/flags/ao.png | Bin {htdocs => public}/theme/common/flags/ar.png | Bin {htdocs => public}/theme/common/flags/as.png | Bin {htdocs => public}/theme/common/flags/at.png | Bin {htdocs => public}/theme/common/flags/au.png | Bin {htdocs => public}/theme/common/flags/aw.png | Bin {htdocs => public}/theme/common/flags/ax.png | Bin {htdocs => public}/theme/common/flags/az.png | Bin {htdocs => public}/theme/common/flags/ba.png | Bin {htdocs => public}/theme/common/flags/bb.png | Bin {htdocs => public}/theme/common/flags/bd.png | Bin {htdocs => public}/theme/common/flags/be.png | Bin {htdocs => public}/theme/common/flags/bf.png | Bin {htdocs => public}/theme/common/flags/bg.png | Bin {htdocs => public}/theme/common/flags/bh.png | Bin {htdocs => public}/theme/common/flags/bi.png | Bin {htdocs => public}/theme/common/flags/bj.png | Bin {htdocs => public}/theme/common/flags/bm.png | Bin {htdocs => public}/theme/common/flags/bn.png | Bin {htdocs => public}/theme/common/flags/bo.png | Bin {htdocs => public}/theme/common/flags/br.png | Bin {htdocs => public}/theme/common/flags/bs.png | Bin {htdocs => public}/theme/common/flags/bt.png | Bin {htdocs => public}/theme/common/flags/bv.png | Bin {htdocs => public}/theme/common/flags/bw.png | Bin {htdocs => public}/theme/common/flags/by.png | Bin {htdocs => public}/theme/common/flags/bz.png | Bin {htdocs => public}/theme/common/flags/ca.png | Bin {htdocs => public}/theme/common/flags/catalonia.png | Bin {htdocs => public}/theme/common/flags/cc.png | Bin {htdocs => public}/theme/common/flags/cd.png | Bin {htdocs => public}/theme/common/flags/cf.png | Bin {htdocs => public}/theme/common/flags/cg.png | Bin {htdocs => public}/theme/common/flags/ch.png | Bin {htdocs => public}/theme/common/flags/ci.png | Bin {htdocs => public}/theme/common/flags/ck.png | Bin {htdocs => public}/theme/common/flags/cl.png | Bin {htdocs => public}/theme/common/flags/cm.png | Bin {htdocs => public}/theme/common/flags/cn.png | Bin {htdocs => public}/theme/common/flags/co.png | Bin {htdocs => public}/theme/common/flags/cr.png | Bin {htdocs => public}/theme/common/flags/cs.png | Bin {htdocs => public}/theme/common/flags/cu.png | Bin {htdocs => public}/theme/common/flags/cv.png | Bin {htdocs => public}/theme/common/flags/cx.png | Bin {htdocs => public}/theme/common/flags/cy.png | Bin {htdocs => public}/theme/common/flags/cz.png | Bin {htdocs => public}/theme/common/flags/de.png | Bin {htdocs => public}/theme/common/flags/dj.png | Bin {htdocs => public}/theme/common/flags/dk.png | Bin {htdocs => public}/theme/common/flags/dm.png | Bin {htdocs => public}/theme/common/flags/do.png | Bin {htdocs => public}/theme/common/flags/dz.png | Bin {htdocs => public}/theme/common/flags/ec.png | Bin {htdocs => public}/theme/common/flags/ee.png | Bin {htdocs => public}/theme/common/flags/eg.png | Bin {htdocs => public}/theme/common/flags/eh.png | Bin {htdocs => public}/theme/common/flags/en.png | Bin {htdocs => public}/theme/common/flags/england.png | Bin {htdocs => public}/theme/common/flags/er.png | Bin {htdocs => public}/theme/common/flags/es.png | Bin {htdocs => public}/theme/common/flags/et.png | Bin {htdocs => public}/theme/common/flags/eu.png | Bin {htdocs => public}/theme/common/flags/fam.png | Bin {htdocs => public}/theme/common/flags/fi.png | Bin {htdocs => public}/theme/common/flags/fj.png | Bin {htdocs => public}/theme/common/flags/fk.png | Bin {htdocs => public}/theme/common/flags/fm.png | Bin {htdocs => public}/theme/common/flags/fo.png | Bin {htdocs => public}/theme/common/flags/fr.png | Bin {htdocs => public}/theme/common/flags/ga.png | Bin {htdocs => public}/theme/common/flags/gb.png | Bin {htdocs => public}/theme/common/flags/gd.png | Bin {htdocs => public}/theme/common/flags/ge.png | Bin {htdocs => public}/theme/common/flags/gf.png | Bin {htdocs => public}/theme/common/flags/gg.png | Bin {htdocs => public}/theme/common/flags/gh.png | Bin {htdocs => public}/theme/common/flags/gi.png | Bin {htdocs => public}/theme/common/flags/gl.png | Bin {htdocs => public}/theme/common/flags/gm.png | Bin {htdocs => public}/theme/common/flags/gn.png | Bin {htdocs => public}/theme/common/flags/gp.png | Bin {htdocs => public}/theme/common/flags/gq.png | Bin {htdocs => public}/theme/common/flags/gr.png | Bin {htdocs => public}/theme/common/flags/gs.png | Bin {htdocs => public}/theme/common/flags/gt.png | Bin {htdocs => public}/theme/common/flags/gu.png | Bin {htdocs => public}/theme/common/flags/gw.png | Bin {htdocs => public}/theme/common/flags/gy.png | Bin {htdocs => public}/theme/common/flags/hk.png | Bin {htdocs => public}/theme/common/flags/hm.png | Bin {htdocs => public}/theme/common/flags/hn.png | Bin {htdocs => public}/theme/common/flags/hr.png | Bin {htdocs => public}/theme/common/flags/ht.png | Bin {htdocs => public}/theme/common/flags/hu.png | Bin {htdocs => public}/theme/common/flags/id.png | Bin {htdocs => public}/theme/common/flags/ie.png | Bin {htdocs => public}/theme/common/flags/il.png | Bin {htdocs => public}/theme/common/flags/in.png | Bin {htdocs => public}/theme/common/flags/index.html | 0 {htdocs => public}/theme/common/flags/int.png | Bin {htdocs => public}/theme/common/flags/io.png | Bin {htdocs => public}/theme/common/flags/iq.png | Bin {htdocs => public}/theme/common/flags/ir.png | Bin {htdocs => public}/theme/common/flags/is.png | Bin {htdocs => public}/theme/common/flags/it.png | Bin {htdocs => public}/theme/common/flags/jm.png | Bin {htdocs => public}/theme/common/flags/jo.png | Bin {htdocs => public}/theme/common/flags/jp.png | Bin {htdocs => public}/theme/common/flags/ke.png | Bin {htdocs => public}/theme/common/flags/kg.png | Bin {htdocs => public}/theme/common/flags/kh.png | Bin {htdocs => public}/theme/common/flags/ki.png | Bin {htdocs => public}/theme/common/flags/km.png | Bin {htdocs => public}/theme/common/flags/kn.png | Bin {htdocs => public}/theme/common/flags/kp.png | Bin {htdocs => public}/theme/common/flags/kr.png | Bin {htdocs => public}/theme/common/flags/kw.png | Bin {htdocs => public}/theme/common/flags/ky.png | Bin {htdocs => public}/theme/common/flags/kz.png | Bin {htdocs => public}/theme/common/flags/la.png | Bin {htdocs => public}/theme/common/flags/lb.png | Bin {htdocs => public}/theme/common/flags/lc.png | Bin {htdocs => public}/theme/common/flags/li.png | Bin {htdocs => public}/theme/common/flags/lk.png | Bin {htdocs => public}/theme/common/flags/lr.png | Bin {htdocs => public}/theme/common/flags/ls.png | Bin {htdocs => public}/theme/common/flags/lt.png | Bin {htdocs => public}/theme/common/flags/lu.png | Bin {htdocs => public}/theme/common/flags/lv.png | Bin {htdocs => public}/theme/common/flags/ly.png | Bin {htdocs => public}/theme/common/flags/ma.png | Bin {htdocs => public}/theme/common/flags/mc.png | Bin {htdocs => public}/theme/common/flags/md.png | Bin {htdocs => public}/theme/common/flags/me.png | Bin {htdocs => public}/theme/common/flags/mg.png | Bin {htdocs => public}/theme/common/flags/mh.png | Bin {htdocs => public}/theme/common/flags/mk.png | Bin {htdocs => public}/theme/common/flags/ml.png | Bin {htdocs => public}/theme/common/flags/mm.png | Bin {htdocs => public}/theme/common/flags/mn.png | Bin {htdocs => public}/theme/common/flags/mo.png | Bin {htdocs => public}/theme/common/flags/mp.png | Bin {htdocs => public}/theme/common/flags/mq.png | Bin {htdocs => public}/theme/common/flags/mr.png | Bin {htdocs => public}/theme/common/flags/ms.png | Bin {htdocs => public}/theme/common/flags/mt.png | Bin {htdocs => public}/theme/common/flags/mu.png | Bin {htdocs => public}/theme/common/flags/mv.png | Bin {htdocs => public}/theme/common/flags/mw.png | Bin {htdocs => public}/theme/common/flags/mx.png | Bin {htdocs => public}/theme/common/flags/my.png | Bin {htdocs => public}/theme/common/flags/mz.png | Bin {htdocs => public}/theme/common/flags/na.png | Bin {htdocs => public}/theme/common/flags/nc.png | Bin {htdocs => public}/theme/common/flags/ne.png | Bin {htdocs => public}/theme/common/flags/nf.png | Bin {htdocs => public}/theme/common/flags/ng.png | Bin {htdocs => public}/theme/common/flags/ni.png | Bin {htdocs => public}/theme/common/flags/nl.png | Bin {htdocs => public}/theme/common/flags/no.png | Bin {htdocs => public}/theme/common/flags/np.png | Bin {htdocs => public}/theme/common/flags/nr.png | Bin {htdocs => public}/theme/common/flags/nu.png | Bin {htdocs => public}/theme/common/flags/nz.png | Bin {htdocs => public}/theme/common/flags/om.png | Bin {htdocs => public}/theme/common/flags/pa.png | Bin {htdocs => public}/theme/common/flags/pe.png | Bin {htdocs => public}/theme/common/flags/pf.png | Bin {htdocs => public}/theme/common/flags/pg.png | Bin {htdocs => public}/theme/common/flags/ph.png | Bin {htdocs => public}/theme/common/flags/pk.png | Bin {htdocs => public}/theme/common/flags/pl.png | Bin {htdocs => public}/theme/common/flags/pm.png | Bin {htdocs => public}/theme/common/flags/pn.png | Bin {htdocs => public}/theme/common/flags/pr.png | Bin {htdocs => public}/theme/common/flags/ps.png | Bin {htdocs => public}/theme/common/flags/pt.png | Bin {htdocs => public}/theme/common/flags/pw.png | Bin {htdocs => public}/theme/common/flags/py.png | Bin {htdocs => public}/theme/common/flags/qa.png | Bin {htdocs => public}/theme/common/flags/re.png | Bin {htdocs => public}/theme/common/flags/ro.png | Bin {htdocs => public}/theme/common/flags/rs.png | Bin {htdocs => public}/theme/common/flags/ru.png | Bin {htdocs => public}/theme/common/flags/rw.png | Bin {htdocs => public}/theme/common/flags/sa.png | Bin {htdocs => public}/theme/common/flags/sb.png | Bin {htdocs => public}/theme/common/flags/sc.png | Bin {htdocs => public}/theme/common/flags/scotland.png | Bin {htdocs => public}/theme/common/flags/sd.png | Bin {htdocs => public}/theme/common/flags/se.png | Bin {htdocs => public}/theme/common/flags/sg.png | Bin {htdocs => public}/theme/common/flags/sh.png | Bin {htdocs => public}/theme/common/flags/si.png | Bin {htdocs => public}/theme/common/flags/sj.png | Bin {htdocs => public}/theme/common/flags/sk.png | Bin {htdocs => public}/theme/common/flags/sl.png | Bin {htdocs => public}/theme/common/flags/sm.png | Bin {htdocs => public}/theme/common/flags/sn.png | Bin {htdocs => public}/theme/common/flags/so.png | Bin {htdocs => public}/theme/common/flags/sr.png | Bin {htdocs => public}/theme/common/flags/st.png | Bin {htdocs => public}/theme/common/flags/sv.png | Bin {htdocs => public}/theme/common/flags/sy.png | Bin {htdocs => public}/theme/common/flags/sz.png | Bin {htdocs => public}/theme/common/flags/tc.png | Bin {htdocs => public}/theme/common/flags/td.png | Bin {htdocs => public}/theme/common/flags/tf.png | Bin {htdocs => public}/theme/common/flags/tg.png | Bin {htdocs => public}/theme/common/flags/th.png | Bin {htdocs => public}/theme/common/flags/tj.png | Bin {htdocs => public}/theme/common/flags/tk.png | Bin {htdocs => public}/theme/common/flags/tl.png | Bin {htdocs => public}/theme/common/flags/tm.png | Bin {htdocs => public}/theme/common/flags/tn.png | Bin {htdocs => public}/theme/common/flags/to.png | Bin {htdocs => public}/theme/common/flags/tr.png | Bin {htdocs => public}/theme/common/flags/trans.png | Bin {htdocs => public}/theme/common/flags/tt.png | Bin {htdocs => public}/theme/common/flags/tv.png | Bin {htdocs => public}/theme/common/flags/tw.png | Bin {htdocs => public}/theme/common/flags/tz.png | Bin {htdocs => public}/theme/common/flags/ua.png | Bin {htdocs => public}/theme/common/flags/ug.png | Bin {htdocs => public}/theme/common/flags/uk.png | Bin {htdocs => public}/theme/common/flags/um.png | Bin {htdocs => public}/theme/common/flags/us.png | Bin {htdocs => public}/theme/common/flags/uy.png | Bin {htdocs => public}/theme/common/flags/uz.png | Bin {htdocs => public}/theme/common/flags/va.png | Bin {htdocs => public}/theme/common/flags/vc.png | Bin {htdocs => public}/theme/common/flags/ve.png | Bin {htdocs => public}/theme/common/flags/vg.png | Bin {htdocs => public}/theme/common/flags/vi.png | Bin {htdocs => public}/theme/common/flags/vn.png | Bin {htdocs => public}/theme/common/flags/vu.png | Bin {htdocs => public}/theme/common/flags/wales.png | Bin {htdocs => public}/theme/common/flags/wf.png | Bin {htdocs => public}/theme/common/flags/ws.png | Bin {htdocs => public}/theme/common/flags/ye.png | Bin {htdocs => public}/theme/common/flags/yt.png | Bin {htdocs => public}/theme/common/flags/za.png | Bin {htdocs => public}/theme/common/flags/zm.png | Bin {htdocs => public}/theme/common/flags/zw.png | Bin {htdocs => public}/theme/common/folder-new.png | Bin {htdocs => public}/theme/common/gmap.png | Bin {htdocs => public}/theme/common/help.png | Bin {htdocs => public}/theme/common/ical.gif | Bin {htdocs => public}/theme/common/index.html | 0 {htdocs => public}/theme/common/information.png | Bin {htdocs => public}/theme/common/logo_cerfa.png | Bin {htdocs => public}/theme/common/mime/archive.png | Bin {htdocs => public}/theme/common/mime/audio.png | Bin {htdocs => public}/theme/common/mime/css.png | Bin {htdocs => public}/theme/common/mime/doc.png | Bin {htdocs => public}/theme/common/mime/dotnet.png | Bin {htdocs => public}/theme/common/mime/encrypt.png | Bin {htdocs => public}/theme/common/mime/error.png | Bin {htdocs => public}/theme/common/mime/flash.png | Bin {htdocs => public}/theme/common/mime/glasses.png | Bin {htdocs => public}/theme/common/mime/html.png | Bin {htdocs => public}/theme/common/mime/image.png | Bin {htdocs => public}/theme/common/mime/index.html | 0 {htdocs => public}/theme/common/mime/jnlp.png | Bin {htdocs => public}/theme/common/mime/jscript.png | Bin {htdocs => public}/theme/common/mime/library.png | Bin {htdocs => public}/theme/common/mime/lit.png | Bin {htdocs => public}/theme/common/mime/mdb.png | Bin .../theme/common/mime/notavailable.png | Bin {htdocs => public}/theme/common/mime/ooffice.png | Bin {htdocs => public}/theme/common/mime/other.png | Bin {htdocs => public}/theme/common/mime/page.png | Bin {htdocs => public}/theme/common/mime/pdf.png | Bin {htdocs => public}/theme/common/mime/php.png | Bin {htdocs => public}/theme/common/mime/pl.png | Bin {htdocs => public}/theme/common/mime/ppt.png | Bin {htdocs => public}/theme/common/mime/readme.txt | 0 {htdocs => public}/theme/common/mime/rss.png | Bin {htdocs => public}/theme/common/mime/script.png | Bin {htdocs => public}/theme/common/mime/svg.png | Bin {htdocs => public}/theme/common/mime/text.png | Bin {htdocs => public}/theme/common/mime/ttf.png | Bin {htdocs => public}/theme/common/mime/unknown.png | Bin {htdocs => public}/theme/common/mime/video.png | Bin {htdocs => public}/theme/common/mime/xls.png | Bin {htdocs => public}/theme/common/paypal.png | Bin {htdocs => public}/theme/common/redstar.png | Bin {htdocs => public}/theme/common/rss.gif | Bin .../theme/common/skype_callbutton.png | Bin .../theme/common/skype_chatbutton.png | Bin {htdocs => public}/theme/common/star.png | Bin .../theme/common/transform-crop-and-resize.png | Bin {htdocs => public}/theme/common/transparent.png | Bin {htdocs => public}/theme/common/treemenu/base.gif | Bin {htdocs => public}/theme/common/treemenu/branch.gif | Bin .../theme/common/treemenu/branchbottom.gif | Bin .../theme/common/treemenu/branchtop.gif | Bin .../theme/common/treemenu/folder-expanded.gif | Bin {htdocs => public}/theme/common/treemenu/folder.gif | Bin .../theme/common/treemenu/folder2-expanded.png | Bin .../theme/common/treemenu/folder2.png | Bin .../theme/common/treemenu/imgfolder.gif | Bin {htdocs => public}/theme/common/treemenu/index.html | 0 {htdocs => public}/theme/common/treemenu/line.gif | Bin .../theme/common/treemenu/linebottom.gif | Bin {htdocs => public}/theme/common/treemenu/minus.gif | Bin .../theme/common/treemenu/minusbottom.gif | Bin .../theme/common/treemenu/minustop.gif | Bin .../theme/common/treemenu/minustop2.gif | Bin .../theme/common/treemenu/minustop3.gif | Bin {htdocs => public}/theme/common/treemenu/page.gif | Bin {htdocs => public}/theme/common/treemenu/plus.gif | Bin .../theme/common/treemenu/plusbottom.gif | Bin .../theme/common/treemenu/plustop.gif | Bin .../theme/common/treemenu/plustop2.gif | Bin .../theme/common/treemenu/plustop3.gif | Bin {htdocs => public}/theme/common/treemenu/trash.gif | Bin {htdocs => public}/theme/common/vcal.gif | Bin {htdocs => public}/theme/common/view-refresh.png | Bin {htdocs => public}/theme/dolibarr.png | Bin {htdocs => public}/theme/dolibarr_logo.png | Bin .../theme/dolibarr_preferred_partner_int.png | Bin {htdocs => public}/theme/doliforge_logo.png | Bin {htdocs => public}/theme/dolistore_logo.png | Bin {htdocs => public}/theme/eldy/.gitignore | 0 {htdocs => public}/theme/eldy/AUTHOR | 0 {htdocs => public}/theme/eldy/ckeditor/config.js | 0 {htdocs => public}/theme/eldy/ckeditor/index.html | 0 {htdocs => public}/theme/eldy/graph-color.php | 0 {htdocs => public}/theme/eldy/img/1downarrow.png | Bin .../theme/eldy/img/1downarrow_selected.png | Bin {htdocs => public}/theme/eldy/img/1leftarrow.png | Bin .../theme/eldy/img/1leftarrow_selected.png | Bin {htdocs => public}/theme/eldy/img/1rightarrow.png | Bin .../theme/eldy/img/1rightarrow_selected.png | Bin {htdocs => public}/theme/eldy/img/1uparrow.png | Bin .../theme/eldy/img/1uparrow_selected.png | Bin {htdocs => public}/theme/eldy/img/addfile.png | Bin {htdocs => public}/theme/eldy/img/background.png | Bin .../theme/eldy/img/bg-bas-rubrique.png | Bin {htdocs => public}/theme/eldy/img/bg-rubrique.png | Bin .../theme/eldy/img/bg-titre-rubrique.png | Bin {htdocs => public}/theme/eldy/img/button_bg.png | Bin {htdocs => public}/theme/eldy/img/button_edit.png | Bin {htdocs => public}/theme/eldy/img/calc.png | Bin {htdocs => public}/theme/eldy/img/calendar.png | Bin {htdocs => public}/theme/eldy/img/call.png | Bin {htdocs => public}/theme/eldy/img/call_out.png | Bin {htdocs => public}/theme/eldy/img/close.png | Bin {htdocs => public}/theme/eldy/img/close_title.png | Bin {htdocs => public}/theme/eldy/img/credit_card.png | Bin {htdocs => public}/theme/eldy/img/delete.png | Bin {htdocs => public}/theme/eldy/img/detail.png | Bin {htdocs => public}/theme/eldy/img/disable.png | Bin {htdocs => public}/theme/eldy/img/edit.png | Bin {htdocs => public}/theme/eldy/img/edit_add.png | Bin {htdocs => public}/theme/eldy/img/edit_remove.png | Bin {htdocs => public}/theme/eldy/img/editdelete.png | Bin {htdocs => public}/theme/eldy/img/error.png | Bin {htdocs => public}/theme/eldy/img/external.png | Bin {htdocs => public}/theme/eldy/img/favicon.ico | Bin {htdocs => public}/theme/eldy/img/file.png | Bin {htdocs => public}/theme/eldy/img/filenew.png | Bin {htdocs => public}/theme/eldy/img/filter.png | Bin {htdocs => public}/theme/eldy/img/folder-open.png | Bin {htdocs => public}/theme/eldy/img/folder.png | Bin {htdocs => public}/theme/eldy/img/gradient.gif | Bin {htdocs => public}/theme/eldy/img/grip.png | Bin {htdocs => public}/theme/eldy/img/grip_title.png | Bin {htdocs => public}/theme/eldy/img/headbg.jpg | Bin {htdocs => public}/theme/eldy/img/headbg2.jpg | Bin {htdocs => public}/theme/eldy/img/help.png | Bin {htdocs => public}/theme/eldy/img/helpdoc.png | Bin {htdocs => public}/theme/eldy/img/helpdoc_top.png | Bin {htdocs => public}/theme/eldy/img/high.png | Bin {htdocs => public}/theme/eldy/img/history.png | Bin {htdocs => public}/theme/eldy/img/index.html | 0 {htdocs => public}/theme/eldy/img/info.png | Bin {htdocs => public}/theme/eldy/img/info_black.png | Bin {htdocs => public}/theme/eldy/img/list.png | Bin {htdocs => public}/theme/eldy/img/liste_titre.png | Bin {htdocs => public}/theme/eldy/img/liste_titre2.png | Bin {htdocs => public}/theme/eldy/img/listlight.png | Bin {htdocs => public}/theme/eldy/img/lock.png | Bin .../theme/eldy/img/login_background.png | Bin {htdocs => public}/theme/eldy/img/logo_setup.svg | 0 {htdocs => public}/theme/eldy/img/logout.png | Bin {htdocs => public}/theme/eldy/img/logout_top.png | Bin {htdocs => public}/theme/eldy/img/menus/README.md | 0 {htdocs => public}/theme/eldy/img/menus/agenda.png | Bin .../theme/eldy/img/menus/agenda_over.png | Bin {htdocs => public}/theme/eldy/img/menus/bank.png | Bin .../theme/eldy/img/menus/bank_over.png | Bin {htdocs => public}/theme/eldy/img/menus/chart.png | Bin .../theme/eldy/img/menus/commercial.png | Bin .../theme/eldy/img/menus/commercial_over.png | Bin {htdocs => public}/theme/eldy/img/menus/company.png | Bin .../theme/eldy/img/menus/company_over.png | Bin {htdocs => public}/theme/eldy/img/menus/ecm.png | Bin .../theme/eldy/img/menus/ecm_over.png | Bin .../theme/eldy/img/menus/externalsite.png | Bin .../theme/eldy/img/menus/externalsite_over.png | Bin {htdocs => public}/theme/eldy/img/menus/ftp.png | Bin .../theme/eldy/img/menus/ftp_over.png | Bin .../theme/eldy/img/menus/generic1.png | Bin .../theme/eldy/img/menus/generic1_over.png | Bin .../theme/eldy/img/menus/generic2.png | Bin .../theme/eldy/img/menus/generic2_over.png | Bin .../theme/eldy/img/menus/generic3.png | Bin .../theme/eldy/img/menus/generic3_over.png | Bin .../theme/eldy/img/menus/generic4.png | Bin .../theme/eldy/img/menus/generic4_over.png | Bin {htdocs => public}/theme/eldy/img/menus/globe.png | Bin .../theme/eldy/img/menus/globe_over.png | Bin {htdocs => public}/theme/eldy/img/menus/holiday.png | Bin {htdocs => public}/theme/eldy/img/menus/home.png | Bin .../theme/eldy/img/menus/home_over.png | Bin {htdocs => public}/theme/eldy/img/menus/index.html | 0 {htdocs => public}/theme/eldy/img/menus/mail.png | Bin .../theme/eldy/img/menus/mail_over.png | Bin {htdocs => public}/theme/eldy/img/menus/members.png | Bin .../theme/eldy/img/menus/members_over.png | Bin {htdocs => public}/theme/eldy/img/menus/menu.png | Bin {htdocs => public}/theme/eldy/img/menus/money.png | Bin .../theme/eldy/img/menus/money_over.png | Bin .../theme/eldy/img/menus/pointofsale.png | Bin .../theme/eldy/img/menus/pointofsale_over.png | Bin .../theme/eldy/img/menus/products.png | Bin .../theme/eldy/img/menus/products_over.png | Bin {htdocs => public}/theme/eldy/img/menus/project.png | Bin .../theme/eldy/img/menus/project_over.png | Bin {htdocs => public}/theme/eldy/img/menus/shop.png | Bin .../theme/eldy/img/menus/shop_over.png | Bin {htdocs => public}/theme/eldy/img/menus/tools.png | Bin .../theme/eldy/img/menus/tools_over.png | Bin .../theme/eldy/img/menus_black/agenda.png | Bin .../theme/eldy/img/menus_black/agenda_over.png | Bin .../theme/eldy/img/menus_black/bank.png | Bin .../theme/eldy/img/menus_black/bank_over.png | Bin .../theme/eldy/img/menus_black/commercial.png | Bin .../theme/eldy/img/menus_black/commercial_over.png | Bin .../theme/eldy/img/menus_black/company.png | Bin .../theme/eldy/img/menus_black/company_over.png | Bin .../theme/eldy/img/menus_black/ecm.png | Bin .../theme/eldy/img/menus_black/ecm_over.png | Bin .../theme/eldy/img/menus_black/externalsite.png | Bin .../eldy/img/menus_black/externalsite_over.png | Bin .../theme/eldy/img/menus_black/ftp.png | Bin .../theme/eldy/img/menus_black/ftp_over.png | Bin .../theme/eldy/img/menus_black/generic1.png | Bin .../theme/eldy/img/menus_black/generic1_over.png | Bin .../theme/eldy/img/menus_black/generic2.png | Bin .../theme/eldy/img/menus_black/generic2_over.png | Bin .../theme/eldy/img/menus_black/generic3.png | Bin .../theme/eldy/img/menus_black/generic3_over.png | Bin .../theme/eldy/img/menus_black/generic4.png | Bin .../theme/eldy/img/menus_black/generic4_over.png | Bin .../theme/eldy/img/menus_black/globe.png | Bin .../theme/eldy/img/menus_black/globe_over.png | Bin .../theme/eldy/img/menus_black/holiday.png | Bin .../theme/eldy/img/menus_black/home.png | Bin .../theme/eldy/img/menus_black/home_over.png | Bin .../theme/eldy/img/menus_black/mail.png | Bin .../theme/eldy/img/menus_black/mail_over.png | Bin .../theme/eldy/img/menus_black/members.png | Bin .../theme/eldy/img/menus_black/members_over.png | Bin .../theme/eldy/img/menus_black/menu.png | Bin .../theme/eldy/img/menus_black/money.png | Bin .../theme/eldy/img/menus_black/money_over.png | Bin .../theme/eldy/img/menus_black/pointofsale.png | Bin .../theme/eldy/img/menus_black/pointofsale_over.png | Bin .../theme/eldy/img/menus_black/products.png | Bin .../theme/eldy/img/menus_black/products_over.png | Bin .../theme/eldy/img/menus_black/project.png | Bin .../theme/eldy/img/menus_black/project_over.png | Bin .../theme/eldy/img/menus_black/shop.png | Bin .../theme/eldy/img/menus_black/shop_over.png | Bin .../theme/eldy/img/menus_black/tools.png | Bin .../theme/eldy/img/menus_black/tools_over.png | Bin {htdocs => public}/theme/eldy/img/menutab-r.png | Bin {htdocs => public}/theme/eldy/img/nav-overlay.png | Bin {htdocs => public}/theme/eldy/img/nav-overlay3.png | Bin {htdocs => public}/theme/eldy/img/next.png | Bin {htdocs => public}/theme/eldy/img/nographyet.svg | 0 .../theme/eldy/img/object_account.png | Bin .../theme/eldy/img/object_accounting.png | Bin {htdocs => public}/theme/eldy/img/object_action.png | Bin .../theme/eldy/img/object_address.png | Bin .../theme/eldy/img/object_barcode.png | Bin {htdocs => public}/theme/eldy/img/object_bill.png | Bin {htdocs => public}/theme/eldy/img/object_billa.png | Bin {htdocs => public}/theme/eldy/img/object_billd.png | Bin {htdocs => public}/theme/eldy/img/object_billr.png | Bin {htdocs => public}/theme/eldy/img/object_book.png | Bin .../theme/eldy/img/object_bookmark.png | Bin .../theme/eldy/img/object_building.png | Bin .../theme/eldy/img/object_calendar.png | Bin .../theme/eldy/img/object_calendarday.png | Bin .../theme/eldy/img/object_calendargantt.png | Bin .../theme/eldy/img/object_calendarpertype.png | Bin .../theme/eldy/img/object_calendarperuser.png | Bin .../theme/eldy/img/object_calendarweek.png | Bin .../theme/eldy/img/object_category-expanded.png | Bin .../theme/eldy/img/object_category.png | Bin .../theme/eldy/img/object_commercial.png | Bin .../theme/eldy/img/object_company.png | Bin .../theme/eldy/img/object_contact.png | Bin .../theme/eldy/img/object_contract.png | Bin {htdocs => public}/theme/eldy/img/object_cron.png | Bin {htdocs => public}/theme/eldy/img/object_dir.png | Bin {htdocs => public}/theme/eldy/img/object_email.png | Bin {htdocs => public}/theme/eldy/img/object_energy.png | Bin .../theme/eldy/img/object_generic.png | Bin {htdocs => public}/theme/eldy/img/object_globe.png | Bin .../theme/eldy/img/object_gravatar.png | Bin {htdocs => public}/theme/eldy/img/object_group.png | Bin .../theme/eldy/img/object_holiday.png | Bin .../theme/eldy/img/object_intervention.png | Bin .../theme/eldy/img/object_invoice.png | Bin {htdocs => public}/theme/eldy/img/object_label.png | Bin {htdocs => public}/theme/eldy/img/object_list.png | Bin {htdocs => public}/theme/eldy/img/object_margin.png | Bin .../theme/eldy/img/object_multicurrency.png | Bin .../theme/eldy/img/object_opensurvey.png | Bin {htdocs => public}/theme/eldy/img/object_order.png | Bin .../theme/eldy/img/object_payment.png | Bin .../theme/eldy/img/object_phoning.png | Bin .../theme/eldy/img/object_phoning_fax.png | Bin .../theme/eldy/img/object_printer.png | Bin .../theme/eldy/img/object_product.png | Bin .../theme/eldy/img/object_project.png | Bin .../theme/eldy/img/object_projectpub.png | Bin .../theme/eldy/img/object_projecttask.png | Bin {htdocs => public}/theme/eldy/img/object_propal.png | Bin {htdocs => public}/theme/eldy/img/object_reduc.png | Bin .../theme/eldy/img/object_resource.png | Bin {htdocs => public}/theme/eldy/img/object_rss.png | Bin .../theme/eldy/img/object_sending.png | Bin .../theme/eldy/img/object_service.png | Bin {htdocs => public}/theme/eldy/img/object_skype.png | Bin {htdocs => public}/theme/eldy/img/object_stock.png | Bin .../theme/eldy/img/object_supplier_proposal.png | Bin {htdocs => public}/theme/eldy/img/object_task.png | Bin .../theme/eldy/img/object_task_time.png | Bin {htdocs => public}/theme/eldy/img/object_tax.png | Bin .../theme/eldy/img/object_technic.png | Bin {htdocs => public}/theme/eldy/img/object_trip.png | Bin {htdocs => public}/theme/eldy/img/object_user.png | Bin {htdocs => public}/theme/eldy/img/off.png | Bin {htdocs => public}/theme/eldy/img/on.png | Bin {htdocs => public}/theme/eldy/img/pdf2.png | Bin {htdocs => public}/theme/eldy/img/pdf3.png | Bin {htdocs => public}/theme/eldy/img/play.png | Bin {htdocs => public}/theme/eldy/img/playdisabled.png | Bin {htdocs => public}/theme/eldy/img/preview.png | Bin {htdocs => public}/theme/eldy/img/preview_ext.png | Bin {htdocs => public}/theme/eldy/img/previous.png | Bin {htdocs => public}/theme/eldy/img/printer.png | Bin {htdocs => public}/theme/eldy/img/printer_top.png | Bin {htdocs => public}/theme/eldy/img/puce.png | Bin {htdocs => public}/theme/eldy/img/recent.png | Bin {htdocs => public}/theme/eldy/img/redstar.png | Bin {htdocs => public}/theme/eldy/img/refresh.png | Bin {htdocs => public}/theme/eldy/img/reload.png | Bin {htdocs => public}/theme/eldy/img/rightarrow.png | Bin {htdocs => public}/theme/eldy/img/search.png | Bin {htdocs => public}/theme/eldy/img/searchclear.png | Bin {htdocs => public}/theme/eldy/img/setup.png | Bin {htdocs => public}/theme/eldy/img/sort_asc.png | Bin .../theme/eldy/img/sort_asc_disabled.png | Bin {htdocs => public}/theme/eldy/img/sort_desc.png | Bin .../theme/eldy/img/sort_desc_disabled.png | Bin {htdocs => public}/theme/eldy/img/split.png | Bin {htdocs => public}/theme/eldy/img/star.png | Bin {htdocs => public}/theme/eldy/img/stats.png | Bin {htdocs => public}/theme/eldy/img/statut0.png | Bin {htdocs => public}/theme/eldy/img/statut0_40x40.png | Bin {htdocs => public}/theme/eldy/img/statut1.png | Bin {htdocs => public}/theme/eldy/img/statut1_40x40.png | Bin {htdocs => public}/theme/eldy/img/statut3.png | Bin {htdocs => public}/theme/eldy/img/statut3_40x40.png | Bin {htdocs => public}/theme/eldy/img/statut4.png | Bin {htdocs => public}/theme/eldy/img/statut4_40x40.png | Bin {htdocs => public}/theme/eldy/img/statut5.png | Bin {htdocs => public}/theme/eldy/img/statut5_40x40.png | Bin {htdocs => public}/theme/eldy/img/statut6.png | Bin {htdocs => public}/theme/eldy/img/statut6_40x40.png | Bin {htdocs => public}/theme/eldy/img/statut7.png | Bin {htdocs => public}/theme/eldy/img/statut7_40x40.png | Bin {htdocs => public}/theme/eldy/img/statut8.png | Bin {htdocs => public}/theme/eldy/img/statut8_40x40.png | Bin {htdocs => public}/theme/eldy/img/statut9.png | Bin {htdocs => public}/theme/eldy/img/statut9_40x40.png | Bin {htdocs => public}/theme/eldy/img/stcomm-1.png | Bin {htdocs => public}/theme/eldy/img/stcomm0.png | Bin {htdocs => public}/theme/eldy/img/stcomm1.png | Bin {htdocs => public}/theme/eldy/img/stcomm2.png | Bin {htdocs => public}/theme/eldy/img/stcomm3.png | Bin {htdocs => public}/theme/eldy/img/stcomm4.png | Bin {htdocs => public}/theme/eldy/img/switch_off.png | Bin {htdocs => public}/theme/eldy/img/switch_on.png | Bin .../theme/eldy/img/tab_background.png | Bin {htdocs => public}/theme/eldy/img/tick.png | Bin {htdocs => public}/theme/eldy/img/title.gif | Bin {htdocs => public}/theme/eldy/img/title.png | Bin .../theme/eldy/img/title_accountancy.png | Bin {htdocs => public}/theme/eldy/img/title_agenda.png | Bin {htdocs => public}/theme/eldy/img/title_bank.png | Bin .../theme/eldy/img/title_commercial.png | Bin .../theme/eldy/img/title_companies.png | Bin {htdocs => public}/theme/eldy/img/title_generic.png | Bin {htdocs => public}/theme/eldy/img/title_home.png | Bin {htdocs => public}/theme/eldy/img/title_hrm.png | Bin .../theme/eldy/img/title_products.png | Bin {htdocs => public}/theme/eldy/img/title_project.png | Bin {htdocs => public}/theme/eldy/img/title_setup.png | Bin {htdocs => public}/theme/eldy/img/tmenu.jpg | Bin {htdocs => public}/theme/eldy/img/tmenu2.jpg | Bin {htdocs => public}/theme/eldy/img/tmenu3.jpg | Bin {htdocs => public}/theme/eldy/img/tmenu_inverse.jpg | Bin {htdocs => public}/theme/eldy/img/unlock.png | Bin {htdocs => public}/theme/eldy/img/uparrow.png | Bin {htdocs => public}/theme/eldy/img/upload.png | Bin {htdocs => public}/theme/eldy/img/vcard.png | Bin {htdocs => public}/theme/eldy/img/view.png | Bin {htdocs => public}/theme/eldy/img/warning.png | Bin .../theme/eldy/img/weather/index.html | 0 .../theme/eldy/img/weather/weather-clear-night.png | Bin .../theme/eldy/img/weather/weather-clear.png | Bin .../theme/eldy/img/weather/weather-clouds-night.png | Bin .../theme/eldy/img/weather/weather-clouds.png | Bin .../eldy/img/weather/weather-few-clouds-night.png | Bin .../theme/eldy/img/weather/weather-few-clouds.png | Bin .../eldy/img/weather/weather-freezing-rain.png | Bin .../theme/eldy/img/weather/weather-hail.png | Bin .../theme/eldy/img/weather/weather-many-clouds.png | Bin .../theme/eldy/img/weather/weather-mist.png | Bin .../theme/eldy/img/weather/weather-showers-day.png | Bin .../eldy/img/weather/weather-showers-night.png | Bin .../img/weather/weather-showers-scattered-day.png | Bin .../img/weather/weather-showers-scattered-night.png | Bin .../eldy/img/weather/weather-showers-scattered.png | Bin .../theme/eldy/img/weather/weather-showers.png | Bin .../theme/eldy/img/weather/weather-snow-rain.png | Bin .../eldy/img/weather/weather-snow-scattered-day.png | Bin .../img/weather/weather-snow-scattered-night.png | Bin .../eldy/img/weather/weather-snow-scattered.png | Bin .../theme/eldy/img/weather/weather-snow.png | Bin .../theme/eldy/img/weather/weather-storm-day.png | Bin .../theme/eldy/img/weather/weather-storm-night.png | Bin .../theme/eldy/img/weather/weather-storm.png | Bin {htdocs => public}/theme/eldy/img/working.gif | Bin {htdocs => public}/theme/eldy/img/working2.gif | Bin {htdocs => public}/theme/eldy/index.html | 0 {htdocs => public}/theme/eldy/style.css.php | 0 {htdocs => public}/theme/eldy/thumb.png | Bin {htdocs => public}/theme/eldy/tpl/README | 0 {htdocs => public}/theme/eldy/tpl/index.html | 0 {htdocs => public}/theme/index.html | 0 {htdocs => public}/theme/login_background.png | Bin {htdocs => public}/theme/login_logo.png | Bin {htdocs => public}/theme/md/.gitignore | 0 {htdocs => public}/theme/md/AUTHOR | 0 {htdocs => public}/theme/md/ckeditor/config.js | 0 {htdocs => public}/theme/md/ckeditor/index.html | 0 {htdocs => public}/theme/md/graph-color.php | 0 {htdocs => public}/theme/md/img/1downarrow.png | Bin .../theme/md/img/1downarrow_selected.png | Bin {htdocs => public}/theme/md/img/1leftarrow.png | Bin .../theme/md/img/1leftarrow_selected.png | Bin {htdocs => public}/theme/md/img/1rightarrow.png | Bin .../theme/md/img/1rightarrow_selected.png | Bin {htdocs => public}/theme/md/img/1uparrow.png | Bin .../theme/md/img/1uparrow_selected.png | Bin {htdocs => public}/theme/md/img/addfile.png | Bin {htdocs => public}/theme/md/img/background.png | Bin {htdocs => public}/theme/md/img/bg-bas-rubrique.png | Bin {htdocs => public}/theme/md/img/bg-rubrique.png | Bin .../theme/md/img/bg-titre-rubrique.png | Bin {htdocs => public}/theme/md/img/button_bg.png | Bin {htdocs => public}/theme/md/img/button_edit.png | Bin {htdocs => public}/theme/md/img/calc.png | Bin {htdocs => public}/theme/md/img/calendar.png | Bin {htdocs => public}/theme/md/img/call.png | Bin {htdocs => public}/theme/md/img/call_out.png | Bin {htdocs => public}/theme/md/img/close.png | Bin {htdocs => public}/theme/md/img/close_title.png | Bin {htdocs => public}/theme/md/img/credit_card.png | Bin {htdocs => public}/theme/md/img/delete.png | Bin {htdocs => public}/theme/md/img/detail.png | Bin {htdocs => public}/theme/md/img/disable.png | Bin {htdocs => public}/theme/md/img/edit.png | Bin {htdocs => public}/theme/md/img/edit_add.png | Bin {htdocs => public}/theme/md/img/edit_remove.png | Bin {htdocs => public}/theme/md/img/editdelete.png | Bin {htdocs => public}/theme/md/img/error.png | Bin {htdocs => public}/theme/md/img/external.png | Bin {htdocs => public}/theme/md/img/favicon.ico | Bin {htdocs => public}/theme/md/img/file.png | Bin {htdocs => public}/theme/md/img/filenew.png | Bin {htdocs => public}/theme/md/img/filter.png | Bin {htdocs => public}/theme/md/img/folder-open.png | Bin {htdocs => public}/theme/md/img/folder.png | Bin {htdocs => public}/theme/md/img/gradient.gif | Bin {htdocs => public}/theme/md/img/grip.png | Bin {htdocs => public}/theme/md/img/grip_title.png | Bin {htdocs => public}/theme/md/img/headbg.jpg | Bin {htdocs => public}/theme/md/img/headbg2.jpg | Bin {htdocs => public}/theme/md/img/help.png | Bin {htdocs => public}/theme/md/img/helpdoc.png | Bin {htdocs => public}/theme/md/img/helpdoc_top.png | Bin {htdocs => public}/theme/md/img/high.png | Bin {htdocs => public}/theme/md/img/history.png | Bin {htdocs => public}/theme/md/img/index.html | 0 {htdocs => public}/theme/md/img/info.png | Bin {htdocs => public}/theme/md/img/info_black.png | Bin {htdocs => public}/theme/md/img/list.png | Bin {htdocs => public}/theme/md/img/liste_titre.png | Bin {htdocs => public}/theme/md/img/liste_titre2.png | Bin {htdocs => public}/theme/md/img/listlight.png | Bin {htdocs => public}/theme/md/img/lock.png | Bin .../theme/md/img/login_background.png | Bin {htdocs => public}/theme/md/img/logo_setup.svg | 0 {htdocs => public}/theme/md/img/logout.png | Bin {htdocs => public}/theme/md/img/logout_top.png | Bin {htdocs => public}/theme/md/img/menu.png | Bin {htdocs => public}/theme/md/img/menus/agenda.png | Bin {htdocs => public}/theme/md/img/menus/bank.png | Bin {htdocs => public}/theme/md/img/menus/cart.png | Bin {htdocs => public}/theme/md/img/menus/chart.png | Bin .../theme/md/img/menus/commercial.png | Bin {htdocs => public}/theme/md/img/menus/company.png | Bin {htdocs => public}/theme/md/img/menus/ecm.png | Bin .../theme/md/img/menus/externalsite.png | Bin {htdocs => public}/theme/md/img/menus/ftp.png | Bin {htdocs => public}/theme/md/img/menus/generic1.png | Bin {htdocs => public}/theme/md/img/menus/generic2.png | Bin {htdocs => public}/theme/md/img/menus/generic3.png | Bin {htdocs => public}/theme/md/img/menus/generic4.png | Bin {htdocs => public}/theme/md/img/menus/globe.png | Bin {htdocs => public}/theme/md/img/menus/graph.png | Bin {htdocs => public}/theme/md/img/menus/holiday.png | Bin {htdocs => public}/theme/md/img/menus/home.png | Bin {htdocs => public}/theme/md/img/menus/index.html | 0 {htdocs => public}/theme/md/img/menus/mail.png | Bin {htdocs => public}/theme/md/img/menus/members.png | Bin {htdocs => public}/theme/md/img/menus/menu.png | Bin {htdocs => public}/theme/md/img/menus/money.png | Bin .../theme/md/img/menus/pointofsale.png | Bin {htdocs => public}/theme/md/img/menus/products.png | Bin {htdocs => public}/theme/md/img/menus/project.png | Bin {htdocs => public}/theme/md/img/menus/shop.png | Bin {htdocs => public}/theme/md/img/menus/tools.png | Bin {htdocs => public}/theme/md/img/menutab-r.png | Bin {htdocs => public}/theme/md/img/nav-overlay.png | Bin {htdocs => public}/theme/md/img/nav-overlay3.png | Bin {htdocs => public}/theme/md/img/next.png | Bin {htdocs => public}/theme/md/img/nographyet.svg | 0 {htdocs => public}/theme/md/img/object_account.png | Bin .../theme/md/img/object_accounting.png | Bin {htdocs => public}/theme/md/img/object_action.png | Bin {htdocs => public}/theme/md/img/object_address.png | Bin {htdocs => public}/theme/md/img/object_barcode.png | Bin {htdocs => public}/theme/md/img/object_bill.png | Bin {htdocs => public}/theme/md/img/object_billa.png | Bin {htdocs => public}/theme/md/img/object_billd.png | Bin {htdocs => public}/theme/md/img/object_billr.png | Bin {htdocs => public}/theme/md/img/object_book.png | Bin {htdocs => public}/theme/md/img/object_bookmark.png | Bin {htdocs => public}/theme/md/img/object_building.png | Bin {htdocs => public}/theme/md/img/object_calendar.png | Bin .../theme/md/img/object_calendarday.png | Bin .../theme/md/img/object_calendargantt.png | Bin .../theme/md/img/object_calendarpertype.png | Bin .../theme/md/img/object_calendarperuser.png | Bin .../theme/md/img/object_calendarweek.png | Bin .../theme/md/img/object_category-expanded.png | Bin {htdocs => public}/theme/md/img/object_category.png | Bin .../theme/md/img/object_commercial.png | Bin {htdocs => public}/theme/md/img/object_company.png | Bin {htdocs => public}/theme/md/img/object_contact.png | Bin {htdocs => public}/theme/md/img/object_contract.png | Bin {htdocs => public}/theme/md/img/object_cron.png | Bin {htdocs => public}/theme/md/img/object_dir.png | Bin {htdocs => public}/theme/md/img/object_email.png | Bin {htdocs => public}/theme/md/img/object_energy.png | Bin {htdocs => public}/theme/md/img/object_generic.png | Bin {htdocs => public}/theme/md/img/object_globe.png | Bin {htdocs => public}/theme/md/img/object_gravatar.png | Bin {htdocs => public}/theme/md/img/object_group.png | Bin {htdocs => public}/theme/md/img/object_holiday.png | Bin .../theme/md/img/object_intervention.png | Bin {htdocs => public}/theme/md/img/object_invoice.png | Bin {htdocs => public}/theme/md/img/object_label.png | Bin {htdocs => public}/theme/md/img/object_list.png | Bin {htdocs => public}/theme/md/img/object_margin.png | Bin .../theme/md/img/object_opensurvey.png | Bin {htdocs => public}/theme/md/img/object_order.png | Bin {htdocs => public}/theme/md/img/object_payment.png | Bin {htdocs => public}/theme/md/img/object_phoning.png | Bin .../theme/md/img/object_phoning_fax.png | Bin {htdocs => public}/theme/md/img/object_printer.png | Bin {htdocs => public}/theme/md/img/object_product.png | Bin {htdocs => public}/theme/md/img/object_project.png | Bin .../theme/md/img/object_projectpub.png | Bin .../theme/md/img/object_projecttask.png | Bin {htdocs => public}/theme/md/img/object_propal.png | Bin {htdocs => public}/theme/md/img/object_reduc.png | Bin {htdocs => public}/theme/md/img/object_resource.png | Bin {htdocs => public}/theme/md/img/object_rss.png | Bin {htdocs => public}/theme/md/img/object_sending.png | Bin {htdocs => public}/theme/md/img/object_service.png | Bin {htdocs => public}/theme/md/img/object_skype.png | Bin {htdocs => public}/theme/md/img/object_stock.png | Bin .../theme/md/img/object_supplier_proposal.png | Bin {htdocs => public}/theme/md/img/object_task.png | Bin .../theme/md/img/object_task_time.png | Bin {htdocs => public}/theme/md/img/object_tax.png | Bin {htdocs => public}/theme/md/img/object_technic.png | Bin {htdocs => public}/theme/md/img/object_trip.png | Bin {htdocs => public}/theme/md/img/object_user.png | Bin {htdocs => public}/theme/md/img/off.png | Bin {htdocs => public}/theme/md/img/on.png | Bin {htdocs => public}/theme/md/img/pdf2.png | Bin {htdocs => public}/theme/md/img/pdf3.png | Bin {htdocs => public}/theme/md/img/play.png | Bin {htdocs => public}/theme/md/img/playdisabled.png | Bin {htdocs => public}/theme/md/img/preview.png | Bin {htdocs => public}/theme/md/img/preview_ext.png | Bin {htdocs => public}/theme/md/img/previous.png | Bin {htdocs => public}/theme/md/img/printer.png | Bin {htdocs => public}/theme/md/img/printer_top.png | Bin {htdocs => public}/theme/md/img/puce.png | Bin {htdocs => public}/theme/md/img/recent.png | Bin {htdocs => public}/theme/md/img/redstar.png | Bin {htdocs => public}/theme/md/img/refresh.png | Bin {htdocs => public}/theme/md/img/reload.png | Bin {htdocs => public}/theme/md/img/rightarrow.png | Bin {htdocs => public}/theme/md/img/search.png | Bin {htdocs => public}/theme/md/img/searchclear.png | Bin {htdocs => public}/theme/md/img/setup.png | Bin {htdocs => public}/theme/md/img/sort_asc.png | Bin .../theme/md/img/sort_asc_disabled.png | Bin {htdocs => public}/theme/md/img/sort_desc.png | Bin .../theme/md/img/sort_desc_disabled.png | Bin {htdocs => public}/theme/md/img/split.png | Bin {htdocs => public}/theme/md/img/star.png | Bin {htdocs => public}/theme/md/img/stats.png | Bin {htdocs => public}/theme/md/img/statut0.png | Bin {htdocs => public}/theme/md/img/statut0_40x40.png | Bin {htdocs => public}/theme/md/img/statut1.png | Bin {htdocs => public}/theme/md/img/statut1_40x40.png | Bin {htdocs => public}/theme/md/img/statut3.png | Bin {htdocs => public}/theme/md/img/statut3_40x40.png | Bin {htdocs => public}/theme/md/img/statut4.png | Bin {htdocs => public}/theme/md/img/statut4_40x40.png | Bin {htdocs => public}/theme/md/img/statut5.png | Bin {htdocs => public}/theme/md/img/statut5_40x40.png | Bin {htdocs => public}/theme/md/img/statut6.png | Bin {htdocs => public}/theme/md/img/statut6_40x40.png | Bin {htdocs => public}/theme/md/img/statut7.png | Bin {htdocs => public}/theme/md/img/statut7_40x40.png | Bin {htdocs => public}/theme/md/img/statut8.png | Bin {htdocs => public}/theme/md/img/statut8_40x40.png | Bin {htdocs => public}/theme/md/img/statut9.png | Bin {htdocs => public}/theme/md/img/statut9_40x40.png | Bin {htdocs => public}/theme/md/img/stcomm-1.png | Bin {htdocs => public}/theme/md/img/stcomm0.png | Bin {htdocs => public}/theme/md/img/stcomm1.png | Bin {htdocs => public}/theme/md/img/stcomm2.png | Bin {htdocs => public}/theme/md/img/stcomm3.png | Bin {htdocs => public}/theme/md/img/stcomm4.png | Bin {htdocs => public}/theme/md/img/switch_off.png | Bin {htdocs => public}/theme/md/img/switch_off_old.png | Bin {htdocs => public}/theme/md/img/switch_on.png | Bin {htdocs => public}/theme/md/img/switch_on_old.png | Bin {htdocs => public}/theme/md/img/tab_background.png | Bin {htdocs => public}/theme/md/img/tick.png | Bin {htdocs => public}/theme/md/img/title.gif | Bin {htdocs => public}/theme/md/img/title.png | Bin .../theme/md/img/title_accountancy.png | Bin {htdocs => public}/theme/md/img/title_agenda.png | Bin {htdocs => public}/theme/md/img/title_bank.png | Bin .../theme/md/img/title_commercial.png | Bin {htdocs => public}/theme/md/img/title_companies.png | Bin {htdocs => public}/theme/md/img/title_generic.png | Bin {htdocs => public}/theme/md/img/title_home.png | Bin {htdocs => public}/theme/md/img/title_hrm.png | Bin {htdocs => public}/theme/md/img/title_products.png | Bin {htdocs => public}/theme/md/img/title_project.png | Bin {htdocs => public}/theme/md/img/title_setup.png | Bin {htdocs => public}/theme/md/img/tmenu.jpg | Bin {htdocs => public}/theme/md/img/tmenu2.jpg | Bin {htdocs => public}/theme/md/img/tmenu3.jpg | Bin {htdocs => public}/theme/md/img/tmenu_inverse.jpg | Bin {htdocs => public}/theme/md/img/unlock.png | Bin {htdocs => public}/theme/md/img/uparrow.png | Bin {htdocs => public}/theme/md/img/upload.png | Bin {htdocs => public}/theme/md/img/vcard.png | Bin {htdocs => public}/theme/md/img/view.png | Bin {htdocs => public}/theme/md/img/warning.png | Bin {htdocs => public}/theme/md/img/weather/index.html | 0 .../theme/md/img/weather/weather-clear-night.png | Bin .../theme/md/img/weather/weather-clear.png | Bin .../theme/md/img/weather/weather-clouds-night.png | Bin .../theme/md/img/weather/weather-clouds.png | Bin .../md/img/weather/weather-few-clouds-night.png | Bin .../theme/md/img/weather/weather-few-clouds.png | Bin .../theme/md/img/weather/weather-freezing-rain.png | Bin .../theme/md/img/weather/weather-hail.png | Bin .../theme/md/img/weather/weather-many-clouds.png | Bin .../theme/md/img/weather/weather-mist.png | Bin .../theme/md/img/weather/weather-showers-day.png | Bin .../theme/md/img/weather/weather-showers-night.png | Bin .../img/weather/weather-showers-scattered-day.png | Bin .../img/weather/weather-showers-scattered-night.png | Bin .../md/img/weather/weather-showers-scattered.png | Bin .../theme/md/img/weather/weather-showers.png | Bin .../theme/md/img/weather/weather-snow-rain.png | Bin .../md/img/weather/weather-snow-scattered-day.png | Bin .../md/img/weather/weather-snow-scattered-night.png | Bin .../theme/md/img/weather/weather-snow-scattered.png | Bin .../theme/md/img/weather/weather-snow.png | Bin .../theme/md/img/weather/weather-storm-day.png | Bin .../theme/md/img/weather/weather-storm-night.png | Bin .../theme/md/img/weather/weather-storm.png | Bin {htdocs => public}/theme/md/img/working.gif | Bin {htdocs => public}/theme/md/img/working2.gif | Bin {htdocs => public}/theme/md/index.html | 0 {htdocs => public}/theme/md/style.css.php | 0 {htdocs => public}/theme/md/thumb.png | Bin {htdocs => public}/theme/md/tpl/README | 0 {htdocs => public}/theme/md/tpl/index.html | 0 {htdocs => public}/user/admin/group_extrafields.php | 0 {htdocs => public}/user/admin/index.html | 0 {htdocs => public}/user/admin/user_extrafields.php | 0 {htdocs => public}/user/agenda_extsites.php | 0 {htdocs => public}/user/bank.php | 0 {htdocs => public}/user/card.php | 0 .../user/class/api_deprecated_user.class.php | 0 {htdocs => public}/user/class/api_users.class.php | 0 {htdocs => public}/user/class/index.html | 0 {htdocs => public}/user/class/user.class.php | 0 .../user/class/userbankaccount.class.php | 0 {htdocs => public}/user/class/usergroup.class.php | 0 {htdocs => public}/user/clicktodial.php | 0 {htdocs => public}/user/document.php | 0 {htdocs => public}/user/group/card.php | 0 {htdocs => public}/user/group/index.php | 0 {htdocs => public}/user/group/ldap.php | 0 {htdocs => public}/user/group/perms.php | 0 {htdocs => public}/user/hierarchy.php | 0 {htdocs => public}/user/home.php | 0 {htdocs => public}/user/index.php | 0 {htdocs => public}/user/info.php | 0 {htdocs => public}/user/ldap.php | 0 {htdocs => public}/user/logout.php | 0 {htdocs => public}/user/note.php | 0 {htdocs => public}/user/notify/card.php | 0 {htdocs => public}/user/param_ihm.php | 0 {htdocs => public}/user/passwordforgotten.php | 0 {htdocs => public}/user/perms.php | 0 {htdocs => public}/viewimage.php | 0 {htdocs => public}/webservices/README.md | 0 {htdocs => public}/webservices/admin/index.php | 0 .../webservices/demo_wsclient_actioncomm.php-NORUN | 0 .../webservices/demo_wsclient_category.php-NORUN | 0 .../webservices/demo_wsclient_invoice.php-NORUN | 0 .../webservices/demo_wsclient_order.php-NORUN | 0 .../webservices/demo_wsclient_other.php-NORUN | 0 .../demo_wsclient_productorservice.php-NORUN | 0 .../webservices/demo_wsclient_project.php-NORUN | 0 .../webservices/demo_wsclient_thirdparty.php-NORUN | 0 {htdocs => public}/webservices/index.php | 0 .../webservices/server_actioncomm.php | 0 {htdocs => public}/webservices/server_category.php | 0 {htdocs => public}/webservices/server_contact.php | 0 {htdocs => public}/webservices/server_invoice.php | 0 {htdocs => public}/webservices/server_order.php | 0 {htdocs => public}/webservices/server_other.php | 0 .../webservices/server_productorservice.php | 0 {htdocs => public}/webservices/server_project.php | 0 .../webservices/server_supplier_invoice.php | 0 .../webservices/server_thirdparty.php | 0 {htdocs => public}/webservices/server_user.php | 0 {htdocs => public}/websites/class/website.class.php | 0 .../websites/class/websitepage.class.php | 0 {htdocs => public}/websites/frametop.php | 0 {htdocs => public}/websites/index.html | 0 {htdocs => public}/websites/index.php | 0 9472 files changed, 0 insertions(+), 0 deletions(-) rename {htdocs => public}/.gitignore (100%) rename {htdocs => public}/accountancy/admin/account.php (100%) rename {htdocs => public}/accountancy/admin/accountmodel.php (100%) rename {htdocs => public}/accountancy/admin/card.php (100%) rename {htdocs => public}/accountancy/admin/categories.php (100%) rename {htdocs => public}/accountancy/admin/defaultaccounts.php (100%) rename {htdocs => public}/accountancy/admin/export.php (100%) rename {htdocs => public}/accountancy/admin/fiscalyear.php (100%) rename {htdocs => public}/accountancy/admin/fiscalyear_card.php (100%) rename {htdocs => public}/accountancy/admin/fiscalyear_info.php (100%) rename {htdocs => public}/accountancy/admin/importaccounts.php (100%) rename {htdocs => public}/accountancy/admin/index.html (100%) rename {htdocs => public}/accountancy/admin/index.php (100%) rename {htdocs => public}/accountancy/admin/journal.php (100%) rename {htdocs => public}/accountancy/admin/productaccount.php (100%) rename {htdocs => public}/accountancy/bookkeeping/balance.php (100%) rename {htdocs => public}/accountancy/bookkeeping/balancebymonth.php (100%) rename {htdocs => public}/accountancy/bookkeeping/card.php (100%) rename {htdocs => public}/accountancy/bookkeeping/index.html (100%) rename {htdocs => public}/accountancy/bookkeeping/list.php (100%) rename {htdocs => public}/accountancy/bookkeeping/listbyaccount.php (100%) rename {htdocs => public}/accountancy/bookkeeping/listbyyear.php (100%) rename {htdocs => public}/accountancy/class/accountancycategory.class.php (100%) rename {htdocs => public}/accountancy/class/accountancyexport.class.php (100%) rename {htdocs => public}/accountancy/class/accountancysystem.class.php (100%) rename {htdocs => public}/accountancy/class/accountingaccount.class.php (100%) rename {htdocs => public}/accountancy/class/bookkeeping.class.php (100%) rename {htdocs => public}/accountancy/class/html.formventilation.class.php (100%) rename {htdocs => public}/accountancy/class/index.html (100%) rename {htdocs => public}/accountancy/customer/card.php (100%) rename {htdocs => public}/accountancy/customer/index.html (100%) rename {htdocs => public}/accountancy/customer/index.php (100%) rename {htdocs => public}/accountancy/customer/lines.php (100%) rename {htdocs => public}/accountancy/customer/list.php (100%) rename {htdocs => public}/accountancy/expensereport/card.php (100%) rename {htdocs => public}/accountancy/expensereport/index.html (100%) rename {htdocs => public}/accountancy/expensereport/index.php (100%) rename {htdocs => public}/accountancy/expensereport/lines.php (100%) rename {htdocs => public}/accountancy/expensereport/list.php (100%) rename {htdocs => public}/accountancy/index.html (100%) rename {htdocs => public}/accountancy/index.php (100%) rename {htdocs => public}/accountancy/journal/bankjournal.php (100%) rename {htdocs => public}/accountancy/journal/expensereportsjournal.php (100%) rename {htdocs => public}/accountancy/journal/index.html (100%) rename {htdocs => public}/accountancy/journal/purchasesjournal.php (100%) rename {htdocs => public}/accountancy/journal/sellsjournal.php (100%) rename {htdocs => public}/accountancy/report/index.html (100%) rename {htdocs => public}/accountancy/report/result.php (100%) rename {htdocs => public}/accountancy/supplier/card.php (100%) rename {htdocs => public}/accountancy/supplier/index.html (100%) rename {htdocs => public}/accountancy/supplier/index.php (100%) rename {htdocs => public}/accountancy/supplier/lines.php (100%) rename {htdocs => public}/accountancy/supplier/list.php (100%) rename {htdocs => public}/accountancy/tpl/export_journal.tpl.php (100%) rename {htdocs => public}/accountancy/tpl/index.html (100%) rename {htdocs => public}/adherents/admin/adherent.php (100%) rename {htdocs => public}/adherents/admin/adherent_extrafields.php (100%) rename {htdocs => public}/adherents/admin/adherent_type_extrafields.php (100%) rename {htdocs => public}/adherents/admin/index.html (100%) rename {htdocs => public}/adherents/admin/public.php (100%) rename {htdocs => public}/adherents/agenda.php (100%) rename {htdocs => public}/adherents/canvas/actions_adherentcard_common.class.php (100%) rename {htdocs => public}/adherents/canvas/default/actions_adherentcard_default.class.php (100%) rename {htdocs => public}/adherents/canvas/default/index.html (100%) rename {htdocs => public}/adherents/canvas/default/tpl/adherentcard_create.tpl.php (100%) rename {htdocs => public}/adherents/canvas/default/tpl/adherentcard_edit.tpl.php (100%) rename {htdocs => public}/adherents/canvas/default/tpl/adherentcard_view.tpl.php (100%) rename {htdocs => public}/adherents/canvas/default/tpl/index.html (100%) rename {htdocs => public}/adherents/canvas/index.html (100%) rename {htdocs => public}/adherents/card.php (100%) rename {htdocs => public}/adherents/cartes/carte.php (100%) rename {htdocs => public}/adherents/cartes/index.html (100%) rename {htdocs => public}/adherents/class/adherent.class.php (100%) rename {htdocs => public}/adherents/class/adherent_type.class.php (100%) rename {htdocs => public}/adherents/class/adherentstats.class.php (100%) rename {htdocs => public}/adherents/class/api_members.class.php (100%) rename {htdocs => public}/adherents/class/api_subscriptions.class.php (100%) rename {htdocs => public}/adherents/class/index.html (100%) rename {htdocs => public}/adherents/class/subscription.class.php (100%) rename {htdocs => public}/adherents/document.php (100%) rename {htdocs => public}/adherents/htpasswd.php (100%) rename {htdocs => public}/adherents/index.php (100%) rename {htdocs => public}/adherents/ldap.php (100%) rename {htdocs => public}/adherents/list.php (100%) rename {htdocs => public}/adherents/note.php (100%) rename {htdocs => public}/adherents/stats/byproperties.php (100%) rename {htdocs => public}/adherents/stats/geo.php (100%) rename {htdocs => public}/adherents/stats/index.html (100%) rename {htdocs => public}/adherents/stats/index.php (100%) rename {htdocs => public}/adherents/subscription.php (100%) rename {htdocs => public}/adherents/subscription/card.php (100%) rename {htdocs => public}/adherents/subscription/index.html (100%) rename {htdocs => public}/adherents/subscription/info.php (100%) rename {htdocs => public}/adherents/subscription/list.php (100%) rename {htdocs => public}/adherents/tpl/index.html (100%) rename {htdocs => public}/adherents/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/adherents/type.php (100%) rename {htdocs => public}/admin/agenda.php (100%) rename {htdocs => public}/admin/agenda_extrafields.php (100%) rename {htdocs => public}/admin/agenda_extsites.php (100%) rename {htdocs => public}/admin/agenda_other.php (100%) rename {htdocs => public}/admin/agenda_xcal.php (100%) rename {htdocs => public}/admin/bank.php (100%) rename {htdocs => public}/admin/bank_extrafields.php (100%) rename {htdocs => public}/admin/barcode.php (100%) rename {htdocs => public}/admin/boxes.php (100%) rename {htdocs => public}/admin/chequereceipts.php (100%) rename {htdocs => public}/admin/clicktodial.php (100%) rename {htdocs => public}/admin/commande.php (100%) rename {htdocs => public}/admin/company.php (100%) rename {htdocs => public}/admin/compta.php (100%) rename {htdocs => public}/admin/confexped.php (100%) rename {htdocs => public}/admin/const.php (100%) rename {htdocs => public}/admin/contract.php (100%) rename {htdocs => public}/admin/delais.php (100%) rename {htdocs => public}/admin/dict.php (100%) rename {htdocs => public}/admin/ecm.php (100%) rename {htdocs => public}/admin/events.php (100%) rename {htdocs => public}/admin/expedition.php (100%) rename {htdocs => public}/admin/expedition_extrafields.php (100%) rename {htdocs => public}/admin/expeditiondet_extrafields.php (100%) rename {htdocs => public}/admin/expensereport.php (100%) rename {htdocs => public}/admin/expensereport_extrafields.php (100%) rename {htdocs => public}/admin/external_rss.php (100%) rename {htdocs => public}/admin/facture.php (100%) rename {htdocs => public}/admin/fckeditor.php (100%) rename {htdocs => public}/admin/fichinter.php (100%) rename {htdocs => public}/admin/geoipmaxmind.php (100%) rename {htdocs => public}/admin/ihm.php (100%) rename {htdocs => public}/admin/index.php (100%) rename {htdocs => public}/admin/ldap.php (100%) rename {htdocs => public}/admin/ldap_contacts.php (100%) rename {htdocs => public}/admin/ldap_groups.php (100%) rename {htdocs => public}/admin/ldap_members.php (100%) rename {htdocs => public}/admin/ldap_users.php (100%) rename {htdocs => public}/admin/limits.php (100%) rename {htdocs => public}/admin/livraison.php (100%) rename {htdocs => public}/admin/livraison_extrafields.php (100%) rename {htdocs => public}/admin/livraisondet_extrafields.php (100%) rename {htdocs => public}/admin/loan.php (100%) rename {htdocs => public}/admin/mailing.php (100%) rename {htdocs => public}/admin/mailman.php (100%) rename {htdocs => public}/admin/mails.php (100%) rename {htdocs => public}/admin/menus.php (100%) rename {htdocs => public}/admin/menus/edit.php (100%) rename {htdocs => public}/admin/menus/index.php (100%) rename {htdocs => public}/admin/menus/other.php (100%) rename {htdocs => public}/admin/modules.php (100%) rename {htdocs => public}/admin/multicurrency.php (100%) rename {htdocs => public}/admin/notification.php (100%) rename {htdocs => public}/admin/oauth.php (100%) rename {htdocs => public}/admin/oauthlogintokens.php (100%) rename {htdocs => public}/admin/order_extrafields.php (100%) rename {htdocs => public}/admin/orderdet_extrafields.php (100%) rename {htdocs => public}/admin/payment.php (100%) rename {htdocs => public}/admin/pdf.php (100%) rename {htdocs => public}/admin/perms.php (100%) rename {htdocs => public}/admin/prelevement.php (100%) rename {htdocs => public}/admin/propal.php (100%) rename {htdocs => public}/admin/proxy.php (100%) rename {htdocs => public}/admin/receiptprinter.php (100%) rename {htdocs => public}/admin/resource.php (100%) rename {htdocs => public}/admin/resource_extrafields.php (100%) rename {htdocs => public}/admin/salaries.php (100%) rename {htdocs => public}/admin/security.php (100%) rename {htdocs => public}/admin/security_file.php (100%) rename {htdocs => public}/admin/security_other.php (100%) rename {htdocs => public}/admin/sms.php (100%) rename {htdocs => public}/admin/spip.php (100%) rename {htdocs => public}/admin/stock.php (100%) rename {htdocs => public}/admin/supplier_invoice.php (100%) rename {htdocs => public}/admin/supplier_order.php (100%) rename {htdocs => public}/admin/supplier_payment.php (100%) rename {htdocs => public}/admin/supplier_proposal.php (100%) rename {htdocs => public}/admin/supplierinvoice_extrafields.php (100%) rename {htdocs => public}/admin/supplierinvoicedet_extrafields.php (100%) rename {htdocs => public}/admin/supplierorder_extrafields.php (100%) rename {htdocs => public}/admin/supplierorderdet_extrafields.php (100%) rename {htdocs => public}/admin/syslog.php (100%) rename {htdocs => public}/admin/system/about.php (100%) rename {htdocs => public}/admin/system/browser.php (100%) rename {htdocs => public}/admin/system/constall.php (100%) rename {htdocs => public}/admin/system/database-tables.php (100%) rename {htdocs => public}/admin/system/database.php (100%) rename {htdocs => public}/admin/system/dbtable.php (100%) rename {htdocs => public}/admin/system/dolibarr.php (100%) rename {htdocs => public}/admin/system/filecheck.php (100%) rename {htdocs => public}/admin/system/index.php (100%) rename {htdocs => public}/admin/system/modules.php (100%) rename {htdocs => public}/admin/system/os.php (100%) rename {htdocs => public}/admin/system/perf.php (100%) rename {htdocs => public}/admin/system/phpinfo.php (100%) rename {htdocs => public}/admin/system/web.php (100%) rename {htdocs => public}/admin/system/xcache.php (100%) rename {htdocs => public}/admin/system/xdebug.php (100%) rename {htdocs => public}/admin/taxes.php (100%) rename {htdocs => public}/admin/tools/dolibarr_export.php (100%) rename {htdocs => public}/admin/tools/dolibarr_import.php (100%) rename {htdocs => public}/admin/tools/eaccelerator.php (100%) rename {htdocs => public}/admin/tools/export.php (100%) rename {htdocs => public}/admin/tools/index.php (100%) rename {htdocs => public}/admin/tools/listevents.php (100%) rename {htdocs => public}/admin/tools/listsessions.php (100%) rename {htdocs => public}/admin/tools/purge.php (100%) rename {htdocs => public}/admin/tools/update.php (100%) rename {htdocs => public}/admin/translation.php (100%) rename {htdocs => public}/admin/triggers.php (100%) rename {htdocs => public}/admin/user.php (100%) rename {htdocs => public}/admin/websites.php (100%) rename {htdocs => public}/admin/workflow.php (100%) rename {htdocs => public}/api/README.md (100%) rename {htdocs => public}/api/admin/explorer.php (100%) rename {htdocs => public}/api/admin/index.php (100%) rename {htdocs => public}/api/class/api.class.php (100%) rename {htdocs => public}/api/class/api_access.class.php (100%) rename {htdocs => public}/api/class/api_dictionnarycountries.class.php (100%) rename {htdocs => public}/api/class/api_dictionnarytowns.class.php (100%) rename {htdocs => public}/api/class/api_login.class.php (100%) rename {htdocs => public}/api/class/api_status.class.php (100%) rename {htdocs => public}/api/class/index.html (100%) rename {htdocs => public}/api/index.php (100%) rename {htdocs => public}/asterisk/cidlookup.php (100%) rename {htdocs => public}/asterisk/index.html (100%) rename {htdocs => public}/asterisk/wrapper.php (100%) rename {htdocs => public}/barcode/codeinit.php (100%) rename {htdocs => public}/barcode/index.html (100%) rename {htdocs => public}/barcode/printsheet.php (100%) rename {htdocs => public}/bookmarks/admin/bookmark.php (100%) rename {htdocs => public}/bookmarks/admin/index.html (100%) rename {htdocs => public}/bookmarks/bookmarks.lib.php (100%) rename {htdocs => public}/bookmarks/card.php (100%) rename {htdocs => public}/bookmarks/class/bookmark.class.php (100%) rename {htdocs => public}/bookmarks/class/index.html (100%) rename {htdocs => public}/bookmarks/index.html (100%) rename {htdocs => public}/bookmarks/list.php (100%) rename {htdocs => public}/cache.manifest (100%) rename {htdocs => public}/cashdesk/admin/cashdesk.php (100%) rename {htdocs => public}/cashdesk/admin/index.html (100%) rename {htdocs => public}/cashdesk/affContenu.php (100%) rename {htdocs => public}/cashdesk/affIndex.php (100%) rename {htdocs => public}/cashdesk/affPied.php (100%) rename {htdocs => public}/cashdesk/class/Auth.class.php (100%) rename {htdocs => public}/cashdesk/class/Facturation.class.php (100%) rename {htdocs => public}/cashdesk/class/index.html (100%) rename {htdocs => public}/cashdesk/css/index.html (100%) rename {htdocs => public}/cashdesk/css/style.css (100%) rename {htdocs => public}/cashdesk/deconnexion.php (100%) rename {htdocs => public}/cashdesk/facturation.php (100%) rename {htdocs => public}/cashdesk/facturation_dhtml.php (100%) rename {htdocs => public}/cashdesk/facturation_verif.php (100%) rename {htdocs => public}/cashdesk/img/basket_delete.png (100%) rename {htdocs => public}/cashdesk/img/bg_conteneur_droite.png (100%) rename {htdocs => public}/cashdesk/img/bg_conteneur_gauche.png (100%) rename {htdocs => public}/cashdesk/img/bg_entete.png (100%) rename {htdocs => public}/cashdesk/img/bg_pied.png (100%) rename {htdocs => public}/cashdesk/img/calendrier.png (100%) rename {htdocs => public}/cashdesk/img/decrypted.png (100%) rename {htdocs => public}/cashdesk/img/gescom.png (100%) rename {htdocs => public}/cashdesk/img/index.html (100%) rename {htdocs => public}/cashdesk/img/lock.png (100%) rename {htdocs => public}/cashdesk/img/login.png (100%) rename {htdocs => public}/cashdesk/img/new.png (100%) rename {htdocs => public}/cashdesk/include/environnement.php (100%) rename {htdocs => public}/cashdesk/include/index.html (100%) rename {htdocs => public}/cashdesk/include/keypad.php (100%) rename {htdocs => public}/cashdesk/index.php (100%) rename {htdocs => public}/cashdesk/index_verif.php (100%) rename {htdocs => public}/cashdesk/javascript/dhtml.js (100%) rename {htdocs => public}/cashdesk/javascript/facturation1.js (100%) rename {htdocs => public}/cashdesk/javascript/index.html (100%) rename {htdocs => public}/cashdesk/javascript/keypad.js (100%) rename {htdocs => public}/cashdesk/tpl/facturation1.tpl.php (100%) rename {htdocs => public}/cashdesk/tpl/index.html (100%) rename {htdocs => public}/cashdesk/tpl/liste_articles.tpl.php (100%) rename {htdocs => public}/cashdesk/tpl/menu.tpl.php (100%) rename {htdocs => public}/cashdesk/tpl/ticket.tpl.php (100%) rename {htdocs => public}/cashdesk/tpl/validation1.tpl.php (100%) rename {htdocs => public}/cashdesk/tpl/validation2.tpl.php (100%) rename {htdocs => public}/cashdesk/validation.php (100%) rename {htdocs => public}/cashdesk/validation_ok.php (100%) rename {htdocs => public}/cashdesk/validation_ticket.php (100%) rename {htdocs => public}/cashdesk/validation_verif.php (100%) rename {htdocs => public}/categories/admin/categorie.php (100%) rename {htdocs => public}/categories/admin/categorie_extrafields.php (100%) rename {htdocs => public}/categories/admin/index.html (100%) rename {htdocs => public}/categories/card.php (100%) rename {htdocs => public}/categories/class/api_categories.class.php (100%) rename {htdocs => public}/categories/class/api_deprecated_category.class.php (100%) rename {htdocs => public}/categories/class/categorie.class.php (100%) rename {htdocs => public}/categories/class/index.html (100%) rename {htdocs => public}/categories/edit.php (100%) rename {htdocs => public}/categories/index.php (100%) rename {htdocs => public}/categories/photos.php (100%) rename {htdocs => public}/categories/traduction.php (100%) rename {htdocs => public}/categories/viewcat.php (100%) rename {htdocs => public}/comm/action/card.php (100%) rename {htdocs => public}/comm/action/class/actioncomm.class.php (100%) rename {htdocs => public}/comm/action/class/api_agendaevents.class.php (100%) rename {htdocs => public}/comm/action/class/cactioncomm.class.php (100%) rename {htdocs => public}/comm/action/class/ical.class.php (100%) rename {htdocs => public}/comm/action/class/index.html (100%) rename {htdocs => public}/comm/action/document.php (100%) rename {htdocs => public}/comm/action/index.php (100%) rename {htdocs => public}/comm/action/info.php (100%) rename {htdocs => public}/comm/action/listactions.php (100%) rename {htdocs => public}/comm/action/pertype.php (100%) rename {htdocs => public}/comm/action/peruser.php (100%) rename {htdocs => public}/comm/action/rapport/index.php (100%) rename {htdocs => public}/comm/address.php (100%) rename {htdocs => public}/comm/admin/index.html (100%) rename {htdocs => public}/comm/admin/propal_extrafields.php (100%) rename {htdocs => public}/comm/admin/propaldet_extrafields.php (100%) rename {htdocs => public}/comm/card.php (100%) rename {htdocs => public}/comm/contact.php (100%) rename {htdocs => public}/comm/index.php (100%) rename {htdocs => public}/comm/mailing/advtargetemailing.php (100%) rename {htdocs => public}/comm/mailing/card.php (100%) rename {htdocs => public}/comm/mailing/cibles.php (100%) rename {htdocs => public}/comm/mailing/class/advtargetemailing.class.php (100%) rename {htdocs => public}/comm/mailing/class/html.formadvtargetemailing.class.php (100%) rename {htdocs => public}/comm/mailing/class/index.html (100%) rename {htdocs => public}/comm/mailing/class/mailing.class.php (100%) rename {htdocs => public}/comm/mailing/index.php (100%) rename {htdocs => public}/comm/mailing/info.php (100%) rename {htdocs => public}/comm/mailing/list.php (100%) rename {htdocs => public}/comm/multiprix.php (100%) rename {htdocs => public}/comm/propal/apercu.php (100%) rename {htdocs => public}/comm/propal/card.php (100%) rename {htdocs => public}/comm/propal/class/api_proposals.class.php (100%) rename {htdocs => public}/comm/propal/class/index.html (100%) rename {htdocs => public}/comm/propal/class/propal.class.php (100%) rename {htdocs => public}/comm/propal/class/propalestats.class.php (100%) rename {htdocs => public}/comm/propal/contact.php (100%) rename {htdocs => public}/comm/propal/document.php (100%) rename {htdocs => public}/comm/propal/index.php (100%) rename {htdocs => public}/comm/propal/info.php (100%) rename {htdocs => public}/comm/propal/list.php (100%) rename {htdocs => public}/comm/propal/note.php (100%) rename {htdocs => public}/comm/propal/stats/index.php (100%) rename {htdocs => public}/comm/propal/tpl/index.html (100%) rename {htdocs => public}/comm/propal/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/comm/prospect/index.php (100%) rename {htdocs => public}/comm/prospect/recap-prospect.php (100%) rename {htdocs => public}/comm/recap-client.php (100%) rename {htdocs => public}/comm/remise.php (100%) rename {htdocs => public}/comm/remx.php (100%) rename {htdocs => public}/commande/apercu.php (100%) rename {htdocs => public}/commande/card.php (100%) rename {htdocs => public}/commande/class/api_deprecated_commande.class.php (100%) rename {htdocs => public}/commande/class/api_orders.class.php (100%) rename {htdocs => public}/commande/class/commande.class.php (100%) rename {htdocs => public}/commande/class/commandestats.class.php (100%) rename {htdocs => public}/commande/class/index.html (100%) rename {htdocs => public}/commande/contact.php (100%) rename {htdocs => public}/commande/customer.php (100%) rename {htdocs => public}/commande/document.php (100%) rename {htdocs => public}/commande/index.php (100%) rename {htdocs => public}/commande/info.php (100%) rename {htdocs => public}/commande/list.php (100%) rename {htdocs => public}/commande/note.php (100%) rename {htdocs => public}/commande/orderstoinvoice.php (100%) rename {htdocs => public}/commande/stats/index.php (100%) rename {htdocs => public}/commande/tpl/index.html (100%) rename {htdocs => public}/commande/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/compta/ajaxpayment.php (100%) rename {htdocs => public}/compta/bank/annuel.php (100%) rename {htdocs => public}/compta/bank/bankentries.php (100%) rename {htdocs => public}/compta/bank/bilan.php (100%) rename {htdocs => public}/compta/bank/budget.php (100%) rename {htdocs => public}/compta/bank/card.php (100%) rename {htdocs => public}/compta/bank/categ.php (100%) rename {htdocs => public}/compta/bank/class/account.class.php (100%) rename {htdocs => public}/compta/bank/class/api_bankaccounts.class.php (100%) rename {htdocs => public}/compta/bank/class/bankcateg.class.php (100%) rename {htdocs => public}/compta/bank/class/index.html (100%) rename {htdocs => public}/compta/bank/document.php (100%) rename {htdocs => public}/compta/bank/graph.php (100%) rename {htdocs => public}/compta/bank/index.php (100%) rename {htdocs => public}/compta/bank/info.php (100%) rename {htdocs => public}/compta/bank/ligne.php (100%) rename {htdocs => public}/compta/bank/releve.php (100%) rename {htdocs => public}/compta/bank/transfer.php (100%) rename {htdocs => public}/compta/bank/treso.php (100%) rename {htdocs => public}/compta/charges/index.php (100%) rename {htdocs => public}/compta/clients.php (100%) rename {htdocs => public}/compta/deplacement/card.php (100%) rename {htdocs => public}/compta/deplacement/class/deplacement.class.php (100%) rename {htdocs => public}/compta/deplacement/class/deplacementstats.class.php (100%) rename {htdocs => public}/compta/deplacement/class/index.html (100%) rename {htdocs => public}/compta/deplacement/document.php (100%) rename {htdocs => public}/compta/deplacement/index.php (100%) rename {htdocs => public}/compta/deplacement/info.php (100%) rename {htdocs => public}/compta/deplacement/list.php (100%) rename {htdocs => public}/compta/deplacement/stats/index.php (100%) rename {htdocs => public}/compta/facture.php (100%) rename {htdocs => public}/compta/facture/admin/facture_cust_extrafields.php (100%) rename {htdocs => public}/compta/facture/admin/facturedet_cust_extrafields.php (100%) rename {htdocs => public}/compta/facture/admin/index.html (100%) rename {htdocs => public}/compta/facture/apercu.php (100%) rename {htdocs => public}/compta/facture/class/api_deprecated_invoice.class.php (100%) rename {htdocs => public}/compta/facture/class/api_invoices.class.php (100%) rename {htdocs => public}/compta/facture/class/facture-rec.class.php (100%) rename {htdocs => public}/compta/facture/class/facture.class.php (100%) rename {htdocs => public}/compta/facture/class/facturestats.class.php (100%) rename {htdocs => public}/compta/facture/class/index.html (100%) rename {htdocs => public}/compta/facture/class/paymentterm.class.php (100%) rename {htdocs => public}/compta/facture/contact.php (100%) rename {htdocs => public}/compta/facture/document.php (100%) rename {htdocs => public}/compta/facture/fiche-rec.php (100%) rename {htdocs => public}/compta/facture/index.html (100%) rename {htdocs => public}/compta/facture/info.php (100%) rename {htdocs => public}/compta/facture/list.php (100%) rename {htdocs => public}/compta/facture/note.php (100%) rename {htdocs => public}/compta/facture/prelevement.php (100%) rename {htdocs => public}/compta/facture/stats/index.php (100%) rename {htdocs => public}/compta/facture/tpl/index.html (100%) rename {htdocs => public}/compta/facture/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/compta/facture/tpl/linkedobjectblockForRec.tpl.php (100%) rename {htdocs => public}/compta/index.php (100%) rename {htdocs => public}/compta/journal/index.html (100%) rename {htdocs => public}/compta/journal/purchasesjournal.php (100%) rename {htdocs => public}/compta/journal/sellsjournal.php (100%) rename {htdocs => public}/compta/localtax/card.php (100%) rename {htdocs => public}/compta/localtax/class/index.html (100%) rename {htdocs => public}/compta/localtax/class/localtax.class.php (100%) rename {htdocs => public}/compta/localtax/clients.php (100%) rename {htdocs => public}/compta/localtax/index.php (100%) rename {htdocs => public}/compta/localtax/quadri_detail.php (100%) rename {htdocs => public}/compta/localtax/reglement.php (100%) rename {htdocs => public}/compta/paiement.php (100%) rename {htdocs => public}/compta/paiement/avalider.php (100%) rename {htdocs => public}/compta/paiement/card.php (100%) rename {htdocs => public}/compta/paiement/cheque/card.php (100%) rename {htdocs => public}/compta/paiement/cheque/class/index.html (100%) rename {htdocs => public}/compta/paiement/cheque/class/remisecheque.class.php (100%) rename {htdocs => public}/compta/paiement/cheque/index.php (100%) rename {htdocs => public}/compta/paiement/cheque/list.php (100%) rename {htdocs => public}/compta/paiement/class/cpaiement.class.php (100%) rename {htdocs => public}/compta/paiement/class/index.html (100%) rename {htdocs => public}/compta/paiement/class/paiement.class.php (100%) rename {htdocs => public}/compta/paiement/index.php (100%) rename {htdocs => public}/compta/paiement/info.php (100%) rename {htdocs => public}/compta/paiement/list.php (100%) rename {htdocs => public}/compta/paiement/rapport.php (100%) rename {htdocs => public}/compta/paiement_charge.php (100%) rename {htdocs => public}/compta/payment_sc/card.php (100%) rename {htdocs => public}/compta/payment_sc/index.html (100%) rename {htdocs => public}/compta/prelevement/bons.php (100%) rename {htdocs => public}/compta/prelevement/card.php (100%) rename {htdocs => public}/compta/prelevement/class/bonprelevement.class.php (100%) rename {htdocs => public}/compta/prelevement/class/index.html (100%) rename {htdocs => public}/compta/prelevement/class/ligneprelevement.class.php (100%) rename {htdocs => public}/compta/prelevement/class/rejetprelevement.class.php (100%) rename {htdocs => public}/compta/prelevement/create.php (100%) rename {htdocs => public}/compta/prelevement/demandes.php (100%) rename {htdocs => public}/compta/prelevement/factures.php (100%) rename {htdocs => public}/compta/prelevement/fiche-rejet.php (100%) rename {htdocs => public}/compta/prelevement/fiche-stat.php (100%) rename {htdocs => public}/compta/prelevement/index.php (100%) rename {htdocs => public}/compta/prelevement/ligne.php (100%) rename {htdocs => public}/compta/prelevement/list.php (100%) rename {htdocs => public}/compta/prelevement/rejets.php (100%) rename {htdocs => public}/compta/prelevement/stats.php (100%) rename {htdocs => public}/compta/recap-compta.php (100%) rename {htdocs => public}/compta/resultat/clientfourn.php (100%) rename {htdocs => public}/compta/resultat/index.php (100%) rename {htdocs => public}/compta/salaries/card.php (100%) rename {htdocs => public}/compta/salaries/class/index.html (100%) rename {htdocs => public}/compta/salaries/class/paymentsalary.class.php (100%) rename {htdocs => public}/compta/salaries/document.php (100%) rename {htdocs => public}/compta/salaries/index.php (100%) rename {htdocs => public}/compta/salaries/info.php (100%) rename {htdocs => public}/compta/sociales/card.php (100%) rename {htdocs => public}/compta/sociales/class/cchargesociales.class.php (100%) rename {htdocs => public}/compta/sociales/class/chargesociales.class.php (100%) rename {htdocs => public}/compta/sociales/class/index.html (100%) rename {htdocs => public}/compta/sociales/class/paymentsocialcontribution.class.php (100%) rename {htdocs => public}/compta/sociales/document.php (100%) rename {htdocs => public}/compta/sociales/index.php (100%) rename {htdocs => public}/compta/sociales/info.php (100%) rename {htdocs => public}/compta/sociales/payments.php (100%) rename {htdocs => public}/compta/stats/cabyprodserv.php (100%) rename {htdocs => public}/compta/stats/cabyuser.php (100%) rename {htdocs => public}/compta/stats/casoc.php (100%) rename {htdocs => public}/compta/stats/index.php (100%) rename {htdocs => public}/compta/tva/card.php (100%) rename {htdocs => public}/compta/tva/class/index.html (100%) rename {htdocs => public}/compta/tva/class/tva.class.php (100%) rename {htdocs => public}/compta/tva/clients.php (100%) rename {htdocs => public}/compta/tva/index.php (100%) rename {htdocs => public}/compta/tva/info.php (100%) rename {htdocs => public}/compta/tva/quadri.php (100%) rename {htdocs => public}/compta/tva/quadri_detail.php (100%) rename {htdocs => public}/compta/tva/quarter_report.php (100%) rename {htdocs => public}/compta/tva/reglement.php (100%) rename {htdocs => public}/conf/.gitignore (100%) rename {htdocs => public}/conf/.htaccess (100%) rename {htdocs => public}/conf/conf.php.example (100%) rename {htdocs => public}/conf/index.html (100%) rename {htdocs => public}/contact/canvas/actions_contactcard_common.class.php (100%) rename {htdocs => public}/contact/canvas/default/actions_contactcard_default.class.php (100%) rename {htdocs => public}/contact/canvas/default/index.html (100%) rename {htdocs => public}/contact/canvas/default/tpl/contactcard_create.tpl.php (100%) rename {htdocs => public}/contact/canvas/default/tpl/contactcard_edit.tpl.php (100%) rename {htdocs => public}/contact/canvas/default/tpl/contactcard_view.tpl.php (100%) rename {htdocs => public}/contact/canvas/default/tpl/index.html (100%) rename {htdocs => public}/contact/canvas/index.html (100%) rename {htdocs => public}/contact/card.php (100%) rename {htdocs => public}/contact/class/contact.class.php (100%) rename {htdocs => public}/contact/class/index.html (100%) rename {htdocs => public}/contact/document.php (100%) rename {htdocs => public}/contact/index.html (100%) rename {htdocs => public}/contact/info.php (100%) rename {htdocs => public}/contact/ldap.php (100%) rename {htdocs => public}/contact/list.php (100%) rename {htdocs => public}/contact/note.php (100%) rename {htdocs => public}/contact/perso.php (100%) rename {htdocs => public}/contact/vcard.php (100%) rename {htdocs => public}/contrat/admin/contract_extrafields.php (100%) rename {htdocs => public}/contrat/admin/contractdet_extrafields.php (100%) rename {htdocs => public}/contrat/admin/index.html (100%) rename {htdocs => public}/contrat/card.php (100%) rename {htdocs => public}/contrat/class/contrat.class.php (100%) rename {htdocs => public}/contrat/class/index.html (100%) rename {htdocs => public}/contrat/contact.php (100%) rename {htdocs => public}/contrat/document.php (100%) rename {htdocs => public}/contrat/index.php (100%) rename {htdocs => public}/contrat/info.php (100%) rename {htdocs => public}/contrat/list.php (100%) rename {htdocs => public}/contrat/note.php (100%) rename {htdocs => public}/contrat/services.php (100%) rename {htdocs => public}/contrat/tpl/index.html (100%) rename {htdocs => public}/contrat/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/core/actions_builddoc.inc.php (100%) rename {htdocs => public}/core/actions_changeselectedfields.inc.php (100%) rename {htdocs => public}/core/actions_dellink.inc.php (100%) rename {htdocs => public}/core/actions_extrafields.inc.php (100%) rename {htdocs => public}/core/actions_fetchobject.inc.php (100%) rename {htdocs => public}/core/actions_lineupdown.inc.php (100%) rename {htdocs => public}/core/actions_linkedfiles.inc.php (100%) rename {htdocs => public}/core/actions_massactions.inc.php (100%) rename {htdocs => public}/core/actions_printing.inc.php (100%) rename {htdocs => public}/core/actions_sendmails.inc.php (100%) rename {htdocs => public}/core/actions_setnotes.inc.php (100%) rename {htdocs => public}/core/ajax/ajaxdirpreview.php (100%) rename {htdocs => public}/core/ajax/ajaxdirtree.php (100%) rename {htdocs => public}/core/ajax/bankconciliate.php (100%) rename {htdocs => public}/core/ajax/box.php (100%) rename {htdocs => public}/core/ajax/constantonoff.php (100%) rename {htdocs => public}/core/ajax/contacts.php (100%) rename {htdocs => public}/core/ajax/extraparams.php (100%) rename {htdocs => public}/core/ajax/fileupload.php (100%) rename {htdocs => public}/core/ajax/index.html (100%) rename {htdocs => public}/core/ajax/loadinplace.php (100%) rename {htdocs => public}/core/ajax/objectonoff.php (100%) rename {htdocs => public}/core/ajax/price.php (100%) rename {htdocs => public}/core/ajax/row.php (100%) rename {htdocs => public}/core/ajax/saveinplace.php (100%) rename {htdocs => public}/core/ajax/security.php (100%) rename {htdocs => public}/core/ajax/selectsearchbox.php (100%) rename {htdocs => public}/core/ajax/vatrates.php (100%) rename {htdocs => public}/core/ajax/ziptown.php (100%) rename {htdocs => public}/core/antispamimage.php (100%) rename {htdocs => public}/core/boxes/box_actions.php (100%) rename {htdocs => public}/core/boxes/box_activity.php (100%) rename {htdocs => public}/core/boxes/box_bookmarks.php (100%) rename {htdocs => public}/core/boxes/box_clients.php (100%) rename {htdocs => public}/core/boxes/box_commandes.php (100%) rename {htdocs => public}/core/boxes/box_comptes.php (100%) rename {htdocs => public}/core/boxes/box_contacts.php (100%) rename {htdocs => public}/core/boxes/box_contracts.php (100%) rename {htdocs => public}/core/boxes/box_external_rss.php (100%) rename {htdocs => public}/core/boxes/box_factures.php (100%) rename {htdocs => public}/core/boxes/box_factures_fourn.php (100%) rename {htdocs => public}/core/boxes/box_factures_fourn_imp.php (100%) rename {htdocs => public}/core/boxes/box_factures_imp.php (100%) rename {htdocs => public}/core/boxes/box_ficheinter.php (100%) rename {htdocs => public}/core/boxes/box_fournisseurs.php (100%) rename {htdocs => public}/core/boxes/box_goodcustomers.php (100%) rename {htdocs => public}/core/boxes/box_graph_invoices_permonth.php (100%) rename {htdocs => public}/core/boxes/box_graph_invoices_supplier_permonth.php (100%) rename {htdocs => public}/core/boxes/box_graph_orders_permonth.php (100%) rename {htdocs => public}/core/boxes/box_graph_orders_supplier_permonth.php (100%) rename {htdocs => public}/core/boxes/box_graph_product_distribution.php (100%) rename {htdocs => public}/core/boxes/box_graph_propales_permonth.php (100%) rename {htdocs => public}/core/boxes/box_members.php (100%) rename {htdocs => public}/core/boxes/box_produits.php (100%) rename {htdocs => public}/core/boxes/box_produits_alerte_stock.php (100%) rename {htdocs => public}/core/boxes/box_project.php (100%) rename {htdocs => public}/core/boxes/box_propales.php (100%) rename {htdocs => public}/core/boxes/box_prospect.php (100%) rename {htdocs => public}/core/boxes/box_services_contracts.php (100%) rename {htdocs => public}/core/boxes/box_services_expired.php (100%) rename {htdocs => public}/core/boxes/box_supplier_orders.php (100%) rename {htdocs => public}/core/boxes/box_task.php (100%) rename {htdocs => public}/core/boxes/index.html (100%) rename {htdocs => public}/core/boxes/modules_boxes.php (100%) rename {htdocs => public}/core/class/CMailFile.class.php (100%) rename {htdocs => public}/core/class/CSMSFile.class.php (100%) rename {htdocs => public}/core/class/antivir.class.php (100%) rename {htdocs => public}/core/class/canvas.class.php (100%) rename {htdocs => public}/core/class/ccountry.class.php (100%) rename {htdocs => public}/core/class/commondocgenerator.class.php (100%) rename {htdocs => public}/core/class/commoninvoice.class.php (100%) rename {htdocs => public}/core/class/commonobject.class.php (100%) rename {htdocs => public}/core/class/commonobjectline.class.php (100%) rename {htdocs => public}/core/class/commonorder.class.php (100%) rename {htdocs => public}/core/class/commonstickergenerator.class.php (100%) rename {htdocs => public}/core/class/conf.class.php (100%) rename {htdocs => public}/core/class/cookie.class.php (100%) rename {htdocs => public}/core/class/cstate.class.php (100%) rename {htdocs => public}/core/class/ctypent.class.php (100%) rename {htdocs => public}/core/class/discount.class.php (100%) rename {htdocs => public}/core/class/doleditor.class.php (100%) rename {htdocs => public}/core/class/dolexception.class.php (100%) rename {htdocs => public}/core/class/dolgeoip.class.php (100%) rename {htdocs => public}/core/class/dolgraph.class.php (100%) rename {htdocs => public}/core/class/dolprintipp.class.php (100%) rename {htdocs => public}/core/class/dolreceiptprinter.class.php (100%) rename {htdocs => public}/core/class/events.class.php (100%) rename {htdocs => public}/core/class/extrafields.class.php (100%) rename {htdocs => public}/core/class/fileupload.class.php (100%) rename {htdocs => public}/core/class/fiscalyear.class.php (100%) rename {htdocs => public}/core/class/genericobject.class.php (100%) rename {htdocs => public}/core/class/google.class.php (100%) rename {htdocs => public}/core/class/hookmanager.class.php (100%) rename {htdocs => public}/core/class/html.form.class.php (100%) rename {htdocs => public}/core/class/html.formaccounting.class.php (100%) rename {htdocs => public}/core/class/html.formactions.class.php (100%) rename {htdocs => public}/core/class/html.formadmin.class.php (100%) rename {htdocs => public}/core/class/html.formbank.class.php (100%) rename {htdocs => public}/core/class/html.formbarcode.class.php (100%) rename {htdocs => public}/core/class/html.formcompany.class.php (100%) rename {htdocs => public}/core/class/html.formcontract.class.php (100%) rename {htdocs => public}/core/class/html.formcron.class.php (100%) rename {htdocs => public}/core/class/html.formfile.class.php (100%) rename {htdocs => public}/core/class/html.formintervention.class.php (100%) rename {htdocs => public}/core/class/html.formmail.class.php (100%) rename {htdocs => public}/core/class/html.formmailing.class.php (100%) rename {htdocs => public}/core/class/html.formmargin.class.php (100%) rename {htdocs => public}/core/class/html.formorder.class.php (100%) rename {htdocs => public}/core/class/html.formother.class.php (100%) rename {htdocs => public}/core/class/html.formprojet.class.php (100%) rename {htdocs => public}/core/class/html.formpropal.class.php (100%) rename {htdocs => public}/core/class/html.formsms.class.php (100%) rename {htdocs => public}/core/class/html.formsocialcontrib.class.php (100%) rename {htdocs => public}/core/class/index.html (100%) rename {htdocs => public}/core/class/infobox.class.php (100%) rename {htdocs => public}/core/class/interfaces.class.php (100%) rename {htdocs => public}/core/class/ldap.class.php (100%) rename {htdocs => public}/core/class/link.class.php (100%) rename {htdocs => public}/core/class/menu.class.php (100%) rename {htdocs => public}/core/class/menubase.class.php (100%) rename {htdocs => public}/core/class/notify.class.php (100%) rename {htdocs => public}/core/class/openid.class.php (100%) rename {htdocs => public}/core/class/rssparser.class.php (100%) rename {htdocs => public}/core/class/smtps.class.php (100%) rename {htdocs => public}/core/class/stats.class.php (100%) rename {htdocs => public}/core/class/translate.class.php (100%) rename {htdocs => public}/core/class/utils.class.php (100%) rename {htdocs => public}/core/class/vcard.class.php (100%) rename {htdocs => public}/core/class/workboardresponse.class.php (100%) rename {htdocs => public}/core/datepicker.php (100%) rename {htdocs => public}/core/db/Database.interface.php (100%) rename {htdocs => public}/core/db/DoliDB.class.php (100%) rename {htdocs => public}/core/db/index.html (100%) rename {htdocs => public}/core/db/mssql.class.php (100%) rename {htdocs => public}/core/db/mysqli.class.php (100%) rename {htdocs => public}/core/db/pgsql.class.php (100%) rename {htdocs => public}/core/db/sqlite3.class.php (100%) rename {htdocs => public}/core/doxygen.php (100%) rename {htdocs => public}/core/extrafieldsinexport.inc.php (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/browser.css (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/browser.php (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/frmactualfolder.php (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/frmcreatefolder.php (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/frmfolders.php (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/frmresourceslist.php (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/frmupload.php (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/Folder.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/FolderUp.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/ai.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/avi.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/bmp.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/cs.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/default.icon.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/dll.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/doc.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/exe.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/fla.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/gif.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/htm.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/html.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/index.html (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/jpg.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/js.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/mdb.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/mp3.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/pdf.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/png.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/ppt.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/rdp.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/swf.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/swt.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/txt.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/vsd.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/xls.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/xml.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/32/zip.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/ai.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/avi.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/bmp.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/cs.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/default.icon.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/dll.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/doc.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/exe.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/fla.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/gif.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/htm.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/html.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/index.html (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/jpg.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/js.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/mdb.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/mp3.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/pdf.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/png.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/ppt.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/rdp.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/swf.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/swt.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/txt.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/vsd.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/xls.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/xml.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/icons/zip.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/images/index.html (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/index.html (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/js/common.js (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/js/fckxml.js (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/js/index.html (100%) rename {htdocs => public}/core/filemanagerdol/browser/default/spacer.gif (100%) rename {htdocs => public}/core/filemanagerdol/browser/index.html (100%) rename {htdocs => public}/core/filemanagerdol/connectors/index.html (100%) rename {htdocs => public}/core/filemanagerdol/connectors/php/basexml.php (100%) rename {htdocs => public}/core/filemanagerdol/connectors/php/commands.php (100%) rename {htdocs => public}/core/filemanagerdol/connectors/php/config.php (100%) rename {htdocs => public}/core/filemanagerdol/connectors/php/connector.php (100%) rename {htdocs => public}/core/filemanagerdol/connectors/php/index.html (100%) rename {htdocs => public}/core/filemanagerdol/connectors/php/io.php (100%) rename {htdocs => public}/core/filemanagerdol/connectors/php/upload.php (100%) rename {htdocs => public}/core/filemanagerdol/connectors/php/util.php (100%) rename {htdocs => public}/core/filemanagerdol/index.html (100%) rename {htdocs => public}/core/get_menudiv.php (100%) rename {htdocs => public}/core/index.html (100%) rename {htdocs => public}/core/js/blockUI.js (100%) rename {htdocs => public}/core/js/datepicker.js.php (100%) rename {htdocs => public}/core/js/dst.js (100%) rename {htdocs => public}/core/js/editinplace.js (100%) rename {htdocs => public}/core/js/index.html (100%) rename {htdocs => public}/core/js/jnotify.js (100%) rename {htdocs => public}/core/js/lib_batch.js (100%) rename {htdocs => public}/core/js/lib_head.js.php (100%) rename {htdocs => public}/core/js/lib_photosresize.js (100%) rename {htdocs => public}/core/js/lib_rare.js (100%) rename {htdocs => public}/core/js/select2_locale.js.php (100%) rename {htdocs => public}/core/js/timepicker.js.php (100%) rename {htdocs => public}/core/js/timesheet.js (100%) rename {htdocs => public}/core/lib/accounting.lib.php (100%) rename {htdocs => public}/core/lib/admin.lib.php (100%) rename {htdocs => public}/core/lib/agenda.lib.php (100%) rename {htdocs => public}/core/lib/ajax.lib.php (100%) rename {htdocs => public}/core/lib/bank.lib.php (100%) rename {htdocs => public}/core/lib/barcode.lib.php (100%) rename {htdocs => public}/core/lib/categories.lib.php (100%) rename {htdocs => public}/core/lib/company.lib.php (100%) rename {htdocs => public}/core/lib/contact.lib.php (100%) rename {htdocs => public}/core/lib/contract.lib.php (100%) rename {htdocs => public}/core/lib/cron.lib.php (100%) rename {htdocs => public}/core/lib/date.lib.php (100%) rename {htdocs => public}/core/lib/doc.lib.php (100%) rename {htdocs => public}/core/lib/doleditor.lib.php (100%) rename {htdocs => public}/core/lib/donation.lib.php (100%) rename {htdocs => public}/core/lib/ecm.lib.php (100%) rename {htdocs => public}/core/lib/emailing.lib.php (100%) rename {htdocs => public}/core/lib/expedition.lib.php (100%) rename {htdocs => public}/core/lib/expensereport.lib.php (100%) rename {htdocs => public}/core/lib/fichinter.lib.php (100%) rename {htdocs => public}/core/lib/files.lib.php (100%) rename {htdocs => public}/core/lib/fiscalyear.lib.php (100%) rename {htdocs => public}/core/lib/format_cards.lib.php (100%) rename {htdocs => public}/core/lib/fourn.lib.php (100%) rename {htdocs => public}/core/lib/functions.lib.php (100%) rename {htdocs => public}/core/lib/functions2.lib.php (100%) rename {htdocs => public}/core/lib/functions_ch.lib.php (100%) rename {htdocs => public}/core/lib/functionsnumtoword.lib.php (100%) rename {htdocs => public}/core/lib/geturl.lib.php (100%) rename {htdocs => public}/core/lib/holiday.lib.php (100%) rename {htdocs => public}/core/lib/hrm.lib.php (100%) rename {htdocs => public}/core/lib/images.lib.php (100%) rename {htdocs => public}/core/lib/import.lib.php (100%) rename {htdocs => public}/core/lib/index.html (100%) rename {htdocs => public}/core/lib/invoice.lib.php (100%) rename {htdocs => public}/core/lib/invoice2.lib.php (100%) rename {htdocs => public}/core/lib/json.lib.php (100%) rename {htdocs => public}/core/lib/ldap.lib.php (100%) rename {htdocs => public}/core/lib/loan.lib.php (100%) rename {htdocs => public}/core/lib/mailmanspip.lib.php (100%) rename {htdocs => public}/core/lib/member.lib.php (100%) rename {htdocs => public}/core/lib/memory.lib.php (100%) rename {htdocs => public}/core/lib/multicurrency.lib.php (100%) rename {htdocs => public}/core/lib/oauth.lib.php (100%) rename {htdocs => public}/core/lib/order.lib.php (100%) rename {htdocs => public}/core/lib/payments.lib.php (100%) rename {htdocs => public}/core/lib/pdf.lib.php (100%) rename {htdocs => public}/core/lib/prelevement.lib.php (100%) rename {htdocs => public}/core/lib/price.lib.php (100%) rename {htdocs => public}/core/lib/product.lib.php (100%) rename {htdocs => public}/core/lib/project.lib.php (100%) rename {htdocs => public}/core/lib/propal.lib.php (100%) rename {htdocs => public}/core/lib/receiptprinter.lib.php (100%) rename {htdocs => public}/core/lib/report.lib.php (100%) rename {htdocs => public}/core/lib/resource.lib.php (100%) rename {htdocs => public}/core/lib/salaries.lib.php (100%) rename {htdocs => public}/core/lib/security.lib.php (100%) rename {htdocs => public}/core/lib/security2.lib.php (100%) rename {htdocs => public}/core/lib/sendings.lib.php (100%) rename {htdocs => public}/core/lib/stock.lib.php (100%) rename {htdocs => public}/core/lib/supplier_proposal.lib.php (100%) rename {htdocs => public}/core/lib/tax.lib.php (100%) rename {htdocs => public}/core/lib/treeview.lib.php (100%) rename {htdocs => public}/core/lib/trip.lib.php (100%) rename {htdocs => public}/core/lib/usergroups.lib.php (100%) rename {htdocs => public}/core/lib/vat.lib.php (100%) rename {htdocs => public}/core/lib/ws.lib.php (100%) rename {htdocs => public}/core/lib/xcal.lib.php (100%) rename {htdocs => public}/core/login/README.txt (100%) rename {htdocs => public}/core/login/functions_dolibarr.php (100%) rename {htdocs => public}/core/login/functions_empty.php (100%) rename {htdocs => public}/core/login/functions_forceuser.php (100%) rename {htdocs => public}/core/login/functions_http.php (100%) rename {htdocs => public}/core/login/functions_ldap.php (100%) rename {htdocs => public}/core/login/functions_openid.php (100%) rename {htdocs => public}/core/login/index.html (100%) rename {htdocs => public}/core/menus/index.html (100%) rename {htdocs => public}/core/menus/init_menu_auguria.sql (100%) rename {htdocs => public}/core/menus/standard/auguria.lib.php (100%) rename {htdocs => public}/core/menus/standard/auguria_menu.php (100%) rename {htdocs => public}/core/menus/standard/eldy.lib.php (100%) rename {htdocs => public}/core/menus/standard/eldy_menu.php (100%) rename {htdocs => public}/core/menus/standard/empty.php (100%) rename {htdocs => public}/core/menus/standard/index.html (100%) rename {htdocs => public}/core/modules/DolibarrModules.class.php (100%) rename {htdocs => public}/core/modules/action/index.html (100%) rename {htdocs => public}/core/modules/action/modules_action.php (100%) rename {htdocs => public}/core/modules/action/rapport.pdf.php (100%) rename {htdocs => public}/core/modules/bank/doc/pdf_ban.modules.php (100%) rename {htdocs => public}/core/modules/bank/doc/pdf_sepamandate.modules.php (100%) rename {htdocs => public}/core/modules/bank/modules_bank.php (100%) rename {htdocs => public}/core/modules/barcode/doc/index.html (100%) rename {htdocs => public}/core/modules/barcode/doc/phpbarcode.modules.php (100%) rename {htdocs => public}/core/modules/barcode/doc/tcpdfbarcode.modules.php (100%) rename {htdocs => public}/core/modules/barcode/index.html (100%) rename {htdocs => public}/core/modules/barcode/mod_barcode_product_standard.php (100%) rename {htdocs => public}/core/modules/barcode/modules_barcode.class.php (100%) rename {htdocs => public}/core/modules/cheque/doc/index.html (100%) rename {htdocs => public}/core/modules/cheque/doc/pdf_blochet.class.php (100%) rename {htdocs => public}/core/modules/cheque/index.html (100%) rename {htdocs => public}/core/modules/cheque/mod_chequereceipt_mint.php (100%) rename {htdocs => public}/core/modules/cheque/mod_chequereceipt_thyme.php (100%) rename {htdocs => public}/core/modules/cheque/modules_chequereceipts.php (100%) rename {htdocs => public}/core/modules/commande/doc/doc_generic_order_odt.modules.php (100%) rename {htdocs => public}/core/modules/commande/doc/index.html (100%) rename {htdocs => public}/core/modules/commande/doc/pdf_einstein.modules.php (100%) rename {htdocs => public}/core/modules/commande/doc/pdf_proforma.modules.php (100%) rename {htdocs => public}/core/modules/commande/index.html (100%) rename {htdocs => public}/core/modules/commande/mod_commande_marbre.php (100%) rename {htdocs => public}/core/modules/commande/mod_commande_saphir.php (100%) rename {htdocs => public}/core/modules/commande/modules_commande.php (100%) rename {htdocs => public}/core/modules/contract/doc/index.html (100%) rename {htdocs => public}/core/modules/contract/doc/pdf_strato.modules.php (100%) rename {htdocs => public}/core/modules/contract/index.html (100%) rename {htdocs => public}/core/modules/contract/mod_contract_magre.php (100%) rename {htdocs => public}/core/modules/contract/mod_contract_olive.php (100%) rename {htdocs => public}/core/modules/contract/mod_contract_serpis.php (100%) rename {htdocs => public}/core/modules/contract/modules_contract.php (100%) rename {htdocs => public}/core/modules/dons/html_cerfafr.html (100%) rename {htdocs => public}/core/modules/dons/html_cerfafr.modules.php (100%) rename {htdocs => public}/core/modules/dons/index.html (100%) rename {htdocs => public}/core/modules/dons/modules_don.php (100%) rename {htdocs => public}/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php (100%) rename {htdocs => public}/core/modules/expedition/doc/index.html (100%) rename {htdocs => public}/core/modules/expedition/doc/pdf_merou.modules.php (100%) rename {htdocs => public}/core/modules/expedition/doc/pdf_rouget.modules.php (100%) rename {htdocs => public}/core/modules/expedition/index.html (100%) rename {htdocs => public}/core/modules/expedition/mod_expedition_ribera.php (100%) rename {htdocs => public}/core/modules/expedition/mod_expedition_safor.php (100%) rename {htdocs => public}/core/modules/expedition/modules_expedition.php (100%) rename {htdocs => public}/core/modules/expensereport/doc/pdf_standard.modules.php (100%) rename {htdocs => public}/core/modules/expensereport/modules_expensereport.php (100%) rename {htdocs => public}/core/modules/export/export_csv.modules.php (100%) rename {htdocs => public}/core/modules/export/export_excel.modules.php (100%) rename {htdocs => public}/core/modules/export/export_excel2007.modules.php (100%) rename {htdocs => public}/core/modules/export/export_tsv.modules.php (100%) rename {htdocs => public}/core/modules/export/index.html (100%) rename {htdocs => public}/core/modules/export/modules_export.php (100%) rename {htdocs => public}/core/modules/facture/doc/doc_generic_invoice_odt.modules.php (100%) rename {htdocs => public}/core/modules/facture/doc/index.html (100%) rename {htdocs => public}/core/modules/facture/doc/pdf_crabe.modules.php (100%) rename {htdocs => public}/core/modules/facture/index.html (100%) rename {htdocs => public}/core/modules/facture/mod_facture_mars.php (100%) rename {htdocs => public}/core/modules/facture/mod_facture_mercure.php (100%) rename {htdocs => public}/core/modules/facture/mod_facture_terre.php (100%) rename {htdocs => public}/core/modules/facture/modules_facture.php (100%) rename {htdocs => public}/core/modules/fichinter/doc/index.html (100%) rename {htdocs => public}/core/modules/fichinter/doc/pdf_soleil.modules.php (100%) rename {htdocs => public}/core/modules/fichinter/index.html (100%) rename {htdocs => public}/core/modules/fichinter/mod_arctic.php (100%) rename {htdocs => public}/core/modules/fichinter/mod_pacific.php (100%) rename {htdocs => public}/core/modules/fichinter/modules_fichinter.php (100%) rename {htdocs => public}/core/modules/import/import_csv.modules.php (100%) rename {htdocs => public}/core/modules/import/import_xlsx.modules.php (100%) rename {htdocs => public}/core/modules/import/index.html (100%) rename {htdocs => public}/core/modules/import/modules_import.php (100%) rename {htdocs => public}/core/modules/index.html (100%) rename {htdocs => public}/core/modules/livraison/doc/index.html (100%) rename {htdocs => public}/core/modules/livraison/doc/pdf_typhon.modules.php (100%) rename {htdocs => public}/core/modules/livraison/index.html (100%) rename {htdocs => public}/core/modules/livraison/mod_livraison_jade.php (100%) rename {htdocs => public}/core/modules/livraison/mod_livraison_saphir.php (100%) rename {htdocs => public}/core/modules/livraison/modules_livraison.php (100%) rename {htdocs => public}/core/modules/mailings/README (100%) rename {htdocs => public}/core/modules/mailings/advthirdparties.modules.php (100%) rename {htdocs => public}/core/modules/mailings/contacts1.modules.php (100%) rename {htdocs => public}/core/modules/mailings/contacts2.modules.php (100%) rename {htdocs => public}/core/modules/mailings/contacts3.modules.php (100%) rename {htdocs => public}/core/modules/mailings/contacts4.modules.php (100%) rename {htdocs => public}/core/modules/mailings/example.modules.php (100%) rename {htdocs => public}/core/modules/mailings/fraise.modules.php (100%) rename {htdocs => public}/core/modules/mailings/framboise.modules.php (100%) rename {htdocs => public}/core/modules/mailings/index.html (100%) rename {htdocs => public}/core/modules/mailings/modules_mailings.php (100%) rename {htdocs => public}/core/modules/mailings/pomme.modules.php (100%) rename {htdocs => public}/core/modules/mailings/thirdparties.modules.php (100%) rename {htdocs => public}/core/modules/mailings/thirdparties_services_expired.modules.php (100%) rename {htdocs => public}/core/modules/mailings/xinputfile.modules.php (100%) rename {htdocs => public}/core/modules/mailings/xinputuser.modules.php (100%) rename {htdocs => public}/core/modules/member/doc/index.html (100%) rename {htdocs => public}/core/modules/member/doc/pdf_standard.class.php (100%) rename {htdocs => public}/core/modules/member/index.html (100%) rename {htdocs => public}/core/modules/member/modules_cards.php (100%) rename {htdocs => public}/core/modules/modAccounting.class.php (100%) rename {htdocs => public}/core/modules/modAdherent.class.php (100%) rename {htdocs => public}/core/modules/modAgenda.class.php (100%) rename {htdocs => public}/core/modules/modApi.class.php (100%) rename {htdocs => public}/core/modules/modBanque.class.php (100%) rename {htdocs => public}/core/modules/modBarcode.class.php (100%) rename {htdocs => public}/core/modules/modBookmark.class.php (100%) rename {htdocs => public}/core/modules/modCashDesk.class.php (100%) rename {htdocs => public}/core/modules/modCategorie.class.php (100%) rename {htdocs => public}/core/modules/modClickToDial.class.php (100%) rename {htdocs => public}/core/modules/modCommande.class.php (100%) rename {htdocs => public}/core/modules/modComptabilite.class.php (100%) rename {htdocs => public}/core/modules/modContrat.class.php (100%) rename {htdocs => public}/core/modules/modCron.class.php (100%) rename {htdocs => public}/core/modules/modDeplacement.class.php (100%) rename {htdocs => public}/core/modules/modDocumentGeneration.class.php (100%) rename {htdocs => public}/core/modules/modDon.class.php (100%) rename {htdocs => public}/core/modules/modDynamicPrices.class.php (100%) rename {htdocs => public}/core/modules/modECM.class.php (100%) rename {htdocs => public}/core/modules/modExpedition.class.php (100%) rename {htdocs => public}/core/modules/modExpenseReport.class.php (100%) rename {htdocs => public}/core/modules/modExport.class.php (100%) rename {htdocs => public}/core/modules/modExternalRss.class.php (100%) rename {htdocs => public}/core/modules/modExternalSite.class.php (100%) rename {htdocs => public}/core/modules/modFTP.class.php (100%) rename {htdocs => public}/core/modules/modFacture.class.php (100%) rename {htdocs => public}/core/modules/modFckeditor.class.php (100%) rename {htdocs => public}/core/modules/modFicheinter.class.php (100%) rename {htdocs => public}/core/modules/modFournisseur.class.php (100%) rename {htdocs => public}/core/modules/modGeoIPMaxmind.class.php (100%) rename {htdocs => public}/core/modules/modGravatar.class.php (100%) rename {htdocs => public}/core/modules/modHRM.class.php (100%) rename {htdocs => public}/core/modules/modHoliday.class.php (100%) rename {htdocs => public}/core/modules/modImport.class.php (100%) rename {htdocs => public}/core/modules/modIncoterm.class.php (100%) rename {htdocs => public}/core/modules/modLabel.class.php (100%) rename {htdocs => public}/core/modules/modLdap.class.php (100%) rename {htdocs => public}/core/modules/modLoan.class.php (100%) rename {htdocs => public}/core/modules/modMailing.class.php (100%) rename {htdocs => public}/core/modules/modMailmanSpip.class.php (100%) rename {htdocs => public}/core/modules/modMargin.class.php (100%) rename {htdocs => public}/core/modules/modMultiCurrency.class.php (100%) rename {htdocs => public}/core/modules/modNotification.class.php (100%) rename {htdocs => public}/core/modules/modOauth.class.php (100%) rename {htdocs => public}/core/modules/modOpenSurvey.class.php (100%) rename {htdocs => public}/core/modules/modPaybox.class.php (100%) rename {htdocs => public}/core/modules/modPaypal.class.php (100%) rename {htdocs => public}/core/modules/modPrelevement.class.php (100%) rename {htdocs => public}/core/modules/modPrinting.class.php (100%) rename {htdocs => public}/core/modules/modProduct.class.php (100%) rename {htdocs => public}/core/modules/modProductBatch.class.php (100%) rename {htdocs => public}/core/modules/modProjet.class.php (100%) rename {htdocs => public}/core/modules/modPropale.class.php (100%) rename {htdocs => public}/core/modules/modReceiptPrinter.class.php (100%) rename {htdocs => public}/core/modules/modResource.class.php (100%) rename {htdocs => public}/core/modules/modSalaries.class.php (100%) rename {htdocs => public}/core/modules/modService.class.php (100%) rename {htdocs => public}/core/modules/modSkype.class.php (100%) rename {htdocs => public}/core/modules/modSociete.class.php (100%) rename {htdocs => public}/core/modules/modStock.class.php (100%) rename {htdocs => public}/core/modules/modSupplierProposal.class.php (100%) rename {htdocs => public}/core/modules/modSyslog.class.php (100%) rename {htdocs => public}/core/modules/modTax.class.php (100%) rename {htdocs => public}/core/modules/modUser.class.php (100%) rename {htdocs => public}/core/modules/modWebServices.class.php (100%) rename {htdocs => public}/core/modules/modWebServicesClient.class.php (100%) rename {htdocs => public}/core/modules/modWebsites.class.php (100%) rename {htdocs => public}/core/modules/modWorkflow.class.php (100%) rename {htdocs => public}/core/modules/oauth/google_oauthcallback.php (100%) rename {htdocs => public}/core/modules/oauth/index.html (100%) rename {htdocs => public}/core/modules/payment/mod_payment_ant.php (100%) rename {htdocs => public}/core/modules/payment/mod_payment_cicada.php (100%) rename {htdocs => public}/core/modules/payment/modules_payment.php (100%) rename {htdocs => public}/core/modules/printing/index.html (100%) rename {htdocs => public}/core/modules/printing/modules_printing.php (100%) rename {htdocs => public}/core/modules/printing/printgcp.modules.php (100%) rename {htdocs => public}/core/modules/printing/printipp.modules.php (100%) rename {htdocs => public}/core/modules/printsheet/doc/index.html (100%) rename {htdocs => public}/core/modules/printsheet/doc/pdf_standardlabel.class.php (100%) rename {htdocs => public}/core/modules/printsheet/doc/pdf_tcpdflabel.class.php (100%) rename {htdocs => public}/core/modules/printsheet/index.html (100%) rename {htdocs => public}/core/modules/printsheet/modules_labels.php (100%) rename {htdocs => public}/core/modules/product/index.html (100%) rename {htdocs => public}/core/modules/product/mod_codeproduct_elephant.php (100%) rename {htdocs => public}/core/modules/product/mod_codeproduct_leopard.php (100%) rename {htdocs => public}/core/modules/product/modules_product.class.php (100%) rename {htdocs => public}/core/modules/product/modules_product.php (100%) rename {htdocs => public}/core/modules/project/doc/doc_generic_project_odt.modules.php (100%) rename {htdocs => public}/core/modules/project/doc/index.html (100%) rename {htdocs => public}/core/modules/project/doc/pdf_baleine.modules.php (100%) rename {htdocs => public}/core/modules/project/doc/pdf_beluga.modules.php (100%) rename {htdocs => public}/core/modules/project/index.html (100%) rename {htdocs => public}/core/modules/project/mod_project_simple.php (100%) rename {htdocs => public}/core/modules/project/mod_project_universal.php (100%) rename {htdocs => public}/core/modules/project/modules_project.php (100%) rename {htdocs => public}/core/modules/project/task/doc/doc_generic_task_odt.modules.php (100%) rename {htdocs => public}/core/modules/project/task/doc/index.html (100%) rename {htdocs => public}/core/modules/project/task/index.html (100%) rename {htdocs => public}/core/modules/project/task/mod_task_simple.php (100%) rename {htdocs => public}/core/modules/project/task/mod_task_universal.php (100%) rename {htdocs => public}/core/modules/project/task/modules_task.php (100%) rename {htdocs => public}/core/modules/propale/doc/doc_generic_proposal_odt.modules.php (100%) rename {htdocs => public}/core/modules/propale/doc/index.html (100%) rename {htdocs => public}/core/modules/propale/doc/pdf_azur.modules.php (100%) rename {htdocs => public}/core/modules/propale/index.html (100%) rename {htdocs => public}/core/modules/propale/mod_propale_marbre.php (100%) rename {htdocs => public}/core/modules/propale/mod_propale_saphir.php (100%) rename {htdocs => public}/core/modules/propale/modules_propale.php (100%) rename {htdocs => public}/core/modules/rapport/index.html (100%) rename {htdocs => public}/core/modules/rapport/pdf_paiement.class.php (100%) rename {htdocs => public}/core/modules/security/generate/README (100%) rename {htdocs => public}/core/modules/security/generate/index.html (100%) rename {htdocs => public}/core/modules/security/generate/modGeneratePassNone.class.php (100%) rename {htdocs => public}/core/modules/security/generate/modGeneratePassPerso.class.php (100%) rename {htdocs => public}/core/modules/security/generate/modGeneratePassStandard.class.php (100%) rename {htdocs => public}/core/modules/security/generate/modules_genpassword.php (100%) rename {htdocs => public}/core/modules/security/index.html (100%) rename {htdocs => public}/core/modules/societe/doc/doc_generic_odt.modules.php (100%) rename {htdocs => public}/core/modules/societe/doc/index.html (100%) rename {htdocs => public}/core/modules/societe/index.html (100%) rename {htdocs => public}/core/modules/societe/mod_codeclient_elephant.php (100%) rename {htdocs => public}/core/modules/societe/mod_codeclient_leopard.php (100%) rename {htdocs => public}/core/modules/societe/mod_codeclient_monkey.php (100%) rename {htdocs => public}/core/modules/societe/mod_codecompta_aquarium.php (100%) rename {htdocs => public}/core/modules/societe/mod_codecompta_panicum.php (100%) rename {htdocs => public}/core/modules/societe/modules_societe.class.php (100%) rename {htdocs => public}/core/modules/supplier_invoice/index.html (100%) rename {htdocs => public}/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php (100%) rename {htdocs => public}/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php (100%) rename {htdocs => public}/core/modules/supplier_invoice/modules_facturefournisseur.php (100%) rename {htdocs => public}/core/modules/supplier_invoice/pdf/index.html (100%) rename {htdocs => public}/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php (100%) rename {htdocs => public}/core/modules/supplier_order/index.html (100%) rename {htdocs => public}/core/modules/supplier_order/mod_commande_fournisseur_muguet.php (100%) rename {htdocs => public}/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php (100%) rename {htdocs => public}/core/modules/supplier_order/modules_commandefournisseur.php (100%) rename {htdocs => public}/core/modules/supplier_order/pdf/index.html (100%) rename {htdocs => public}/core/modules/supplier_order/pdf/pdf_muscadet.modules.php (100%) rename {htdocs => public}/core/modules/supplier_payment/mod_supplier_payment_brodator.php (100%) rename {htdocs => public}/core/modules/supplier_payment/mod_supplier_payment_bronan.php (100%) rename {htdocs => public}/core/modules/supplier_payment/modules_supplier_payment.php (100%) rename {htdocs => public}/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php (100%) rename {htdocs => public}/core/modules/supplier_proposal/doc/index.html (100%) rename {htdocs => public}/core/modules/supplier_proposal/doc/pdf_aurore.modules.php (100%) rename {htdocs => public}/core/modules/supplier_proposal/index.html (100%) rename {htdocs => public}/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php (100%) rename {htdocs => public}/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php (100%) rename {htdocs => public}/core/modules/supplier_proposal/modules_supplier_proposal.php (100%) rename {htdocs => public}/core/modules/syslog/index.html (100%) rename {htdocs => public}/core/modules/syslog/logHandler.php (100%) rename {htdocs => public}/core/modules/syslog/logHandlerInterface.php (100%) rename {htdocs => public}/core/modules/syslog/mod_syslog_chromephp.php (100%) rename {htdocs => public}/core/modules/syslog/mod_syslog_file.php (100%) rename {htdocs => public}/core/modules/syslog/mod_syslog_firephp.php (100%) rename {htdocs => public}/core/modules/syslog/mod_syslog_syslog.php (100%) rename {htdocs => public}/core/photos_resize.php (100%) rename {htdocs => public}/core/search.php (100%) rename {htdocs => public}/core/search_page.php (100%) rename {htdocs => public}/core/tools.php (100%) rename {htdocs => public}/core/tpl/README (100%) rename {htdocs => public}/core/tpl/admin_extrafields_add.tpl.php (100%) rename {htdocs => public}/core/tpl/admin_extrafields_edit.tpl.php (100%) rename {htdocs => public}/core/tpl/admin_extrafields_view.tpl.php (100%) rename {htdocs => public}/core/tpl/ajax/fileupload_main.tpl.php (100%) rename {htdocs => public}/core/tpl/ajax/fileupload_view.tpl.php (100%) rename {htdocs => public}/core/tpl/ajax/index.html (100%) rename {htdocs => public}/core/tpl/ajaxrow.tpl.php (100%) rename {htdocs => public}/core/tpl/bloc_showhide.tpl.php (100%) rename {htdocs => public}/core/tpl/contacts.tpl.php (100%) rename {htdocs => public}/core/tpl/document_actions_post_headers.tpl.php (100%) rename {htdocs => public}/core/tpl/error.tpl.php (100%) rename {htdocs => public}/core/tpl/extrafields_view.tpl.php (100%) rename {htdocs => public}/core/tpl/footer.tpl.php (100%) rename {htdocs => public}/core/tpl/header.tpl.php (100%) rename {htdocs => public}/core/tpl/index.html (100%) rename {htdocs => public}/core/tpl/login.tpl.php (100%) rename {htdocs => public}/core/tpl/notes.tpl.php (100%) rename {htdocs => public}/core/tpl/objectline_create.tpl.php (100%) rename {htdocs => public}/core/tpl/objectline_edit.tpl.php (100%) rename {htdocs => public}/core/tpl/objectline_view.tpl.php (100%) rename {htdocs => public}/core/tpl/originproductline.tpl.php (100%) rename {htdocs => public}/core/tpl/passwordforgotten.tpl.php (100%) rename {htdocs => public}/core/tpl/resource_add.tpl.php (100%) rename {htdocs => public}/core/tpl/resource_view.tpl.php (100%) rename {htdocs => public}/core/triggers/README (100%) rename {htdocs => public}/core/triggers/README-FR (100%) rename {htdocs => public}/core/triggers/dolibarrtriggers.class.php (100%) rename {htdocs => public}/core/triggers/index.html (100%) rename {htdocs => public}/core/triggers/interface_20_all_Logevents.class.php (100%) rename {htdocs => public}/core/triggers/interface_20_modPaypal_PaypalWorkflow.class.php (100%) rename {htdocs => public}/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php (100%) rename {htdocs => public}/core/triggers/interface_50_modAgenda_ActionsAuto.class.php (100%) rename {htdocs => public}/core/triggers/interface_50_modLdap_Ldapsynchro.class.php (100%) rename {htdocs => public}/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php (100%) rename {htdocs => public}/core/triggers/interface_50_modNotification_Notification.class.php (100%) rename {htdocs => public}/core/triggers/interface_90_all_Demo.class.php-NORUN (100%) rename {htdocs => public}/cron/admin/cron.php (100%) rename {htdocs => public}/cron/admin/index.html (100%) rename {htdocs => public}/cron/card.php (100%) rename {htdocs => public}/cron/class/cronjob.class.php (100%) rename {htdocs => public}/cron/class/index.html (100%) rename {htdocs => public}/cron/index.html (100%) rename {htdocs => public}/cron/info.php (100%) rename {htdocs => public}/cron/list.php (100%) rename {htdocs => public}/custom/.gitignore (100%) rename {htdocs => public}/custom/README.md (100%) rename {htdocs => public}/custom/index.html (100%) rename {htdocs => public}/document.php (100%) rename {htdocs => public}/don/admin/donation.php (100%) rename {htdocs => public}/don/admin/donation_extrafields.php (100%) rename {htdocs => public}/don/admin/index.html (100%) rename {htdocs => public}/don/card.php (100%) rename {htdocs => public}/don/class/don.class.php (100%) rename {htdocs => public}/don/class/donstats.class.php (100%) rename {htdocs => public}/don/class/index.html (100%) rename {htdocs => public}/don/class/paymentdonation.class.php (100%) rename {htdocs => public}/don/document.php (100%) rename {htdocs => public}/don/index.html (100%) rename {htdocs => public}/don/index.php (100%) rename {htdocs => public}/don/info.php (100%) rename {htdocs => public}/don/list.php (100%) rename {htdocs => public}/don/note.php (100%) rename {htdocs => public}/don/payment/card.php (100%) rename {htdocs => public}/don/payment/index.html (100%) rename {htdocs => public}/don/payment/payment.php (100%) rename {htdocs => public}/don/stats/index.php (100%) rename {htdocs => public}/ecm/ajax/ecmdatabase.php (100%) rename {htdocs => public}/ecm/ajax/index.html (100%) rename {htdocs => public}/ecm/class/ecmdirectory.class.php (100%) rename {htdocs => public}/ecm/class/htmlecm.form.class.php (100%) rename {htdocs => public}/ecm/class/index.html (100%) rename {htdocs => public}/ecm/docdir.php (100%) rename {htdocs => public}/ecm/docfile.php (100%) rename {htdocs => public}/ecm/docmine.php (100%) rename {htdocs => public}/ecm/docother.php (100%) rename {htdocs => public}/ecm/index.php (100%) rename {htdocs => public}/ecm/index_auto.php (100%) rename {htdocs => public}/ecm/search.php (100%) rename {htdocs => public}/ecm/tpl/enablefiletreeajax.tpl.php (100%) rename {htdocs => public}/ecm/tpl/index.html (100%) rename {htdocs => public}/expedition/card.php (100%) rename {htdocs => public}/expedition/class/expedition.class.php (100%) rename {htdocs => public}/expedition/class/expeditionbatch.class.php (100%) rename {htdocs => public}/expedition/class/expeditionstats.class.php (100%) rename {htdocs => public}/expedition/class/index.html (100%) rename {htdocs => public}/expedition/contact.php (100%) rename {htdocs => public}/expedition/index.php (100%) rename {htdocs => public}/expedition/list.php (100%) rename {htdocs => public}/expedition/note.php (100%) rename {htdocs => public}/expedition/shipment.php (100%) rename {htdocs => public}/expedition/stats/index.php (100%) rename {htdocs => public}/expedition/stats/month.php (100%) rename {htdocs => public}/expedition/tpl/index.html (100%) rename {htdocs => public}/expedition/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/expensereport/ajax/ajaxprojet.php (100%) rename {htdocs => public}/expensereport/ajax/index.html (100%) rename {htdocs => public}/expensereport/card.php (100%) rename {htdocs => public}/expensereport/class/api_expensereports.class.php (100%) rename {htdocs => public}/expensereport/class/expensereport.class.php (100%) rename {htdocs => public}/expensereport/class/expensereportstats.class.php (100%) rename {htdocs => public}/expensereport/class/index.html (100%) rename {htdocs => public}/expensereport/class/paymentexpensereport.class.php (100%) rename {htdocs => public}/expensereport/document.php (100%) rename {htdocs => public}/expensereport/export_csv.php (100%) rename {htdocs => public}/expensereport/index.html (100%) rename {htdocs => public}/expensereport/index.php (100%) rename {htdocs => public}/expensereport/info.php (100%) rename {htdocs => public}/expensereport/list.php (100%) rename {htdocs => public}/expensereport/note.php (100%) rename {htdocs => public}/expensereport/payment/card.php (100%) rename {htdocs => public}/expensereport/payment/index.html (100%) rename {htdocs => public}/expensereport/payment/payment.php (100%) rename {htdocs => public}/expensereport/stats/index.html (100%) rename {htdocs => public}/expensereport/stats/index.php (100%) rename {htdocs => public}/expensereport/synchro_compta.php (100%) rename {htdocs => public}/expensereport/tpl/index.html (100%) rename {htdocs => public}/expensereport/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/exports/class/export.class.php (100%) rename {htdocs => public}/exports/class/index.html (100%) rename {htdocs => public}/exports/export.php (100%) rename {htdocs => public}/exports/index.php (100%) rename {htdocs => public}/externalsite/admin/externalsite.php (100%) rename {htdocs => public}/externalsite/admin/index.html (100%) rename {htdocs => public}/externalsite/frames.php (100%) rename {htdocs => public}/externalsite/frametop.php (100%) rename {htdocs => public}/externalsite/index.html (100%) rename {htdocs => public}/favicon.ico (100%) rename {htdocs => public}/fichinter/admin/fichinter_extrafields.php (100%) rename {htdocs => public}/fichinter/admin/fichinterdet_extrafields.php (100%) rename {htdocs => public}/fichinter/admin/index.html (100%) rename {htdocs => public}/fichinter/apercu.php (100%) rename {htdocs => public}/fichinter/card.php (100%) rename {htdocs => public}/fichinter/class/fichinter.class.php (100%) rename {htdocs => public}/fichinter/class/fichinterstats.class.php (100%) rename {htdocs => public}/fichinter/class/index.html (100%) rename {htdocs => public}/fichinter/contact.php (100%) rename {htdocs => public}/fichinter/document.php (100%) rename {htdocs => public}/fichinter/index.html (100%) rename {htdocs => public}/fichinter/index.php (100%) rename {htdocs => public}/fichinter/info.php (100%) rename {htdocs => public}/fichinter/list.php (100%) rename {htdocs => public}/fichinter/note.php (100%) rename {htdocs => public}/fichinter/stats/index.php (100%) rename {htdocs => public}/fichinter/tpl/index.html (100%) rename {htdocs => public}/fichinter/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/filefunc.inc.php (100%) rename {htdocs => public}/fourn/ajax/getSupplierPrices.php (100%) rename {htdocs => public}/fourn/ajax/index.html (100%) rename {htdocs => public}/fourn/card.php (100%) rename {htdocs => public}/fourn/class/api_supplier_invoices.class.php (100%) rename {htdocs => public}/fourn/class/fournisseur.class.php (100%) rename {htdocs => public}/fourn/class/fournisseur.commande.class.php (100%) rename {htdocs => public}/fourn/class/fournisseur.commande.dispatch.class.php (100%) rename {htdocs => public}/fourn/class/fournisseur.facture.class.php (100%) rename {htdocs => public}/fourn/class/fournisseur.product.class.php (100%) rename {htdocs => public}/fourn/class/index.html (100%) rename {htdocs => public}/fourn/class/paiementfourn.class.php (100%) rename {htdocs => public}/fourn/commande/card.php (100%) rename {htdocs => public}/fourn/commande/contact.php (100%) rename {htdocs => public}/fourn/commande/dispatch.php (100%) rename {htdocs => public}/fourn/commande/document.php (100%) rename {htdocs => public}/fourn/commande/index.php (100%) rename {htdocs => public}/fourn/commande/info.php (100%) rename {htdocs => public}/fourn/commande/list.php (100%) rename {htdocs => public}/fourn/commande/note.php (100%) rename {htdocs => public}/fourn/commande/orderstoinvoice.php (100%) rename {htdocs => public}/fourn/commande/tpl/index.html (100%) rename {htdocs => public}/fourn/commande/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/fourn/contact.php (100%) rename {htdocs => public}/fourn/facture/card.php (100%) rename {htdocs => public}/fourn/facture/contact.php (100%) rename {htdocs => public}/fourn/facture/document.php (100%) rename {htdocs => public}/fourn/facture/impayees.php (100%) rename {htdocs => public}/fourn/facture/index.html (100%) rename {htdocs => public}/fourn/facture/info.php (100%) rename {htdocs => public}/fourn/facture/list.php (100%) rename {htdocs => public}/fourn/facture/note.php (100%) rename {htdocs => public}/fourn/facture/paiement.php (100%) rename {htdocs => public}/fourn/facture/tpl/index.html (100%) rename {htdocs => public}/fourn/facture/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/fourn/index.php (100%) rename {htdocs => public}/fourn/js/lib_dispatch.js (100%) rename {htdocs => public}/fourn/paiement/card.php (100%) rename {htdocs => public}/fourn/paiement/index.html (100%) rename {htdocs => public}/fourn/paiement/info.php (100%) rename {htdocs => public}/fourn/product/list.php (100%) rename {htdocs => public}/fourn/recap-fourn.php (100%) rename {htdocs => public}/ftp/admin/ftpclient.php (100%) rename {htdocs => public}/ftp/admin/index.html (100%) rename {htdocs => public}/ftp/index.php (100%) rename {htdocs => public}/holiday/card.php (100%) rename {htdocs => public}/holiday/class/holiday.class.php (100%) rename {htdocs => public}/holiday/class/index.html (100%) rename {htdocs => public}/holiday/common.inc.php (100%) rename {htdocs => public}/holiday/define_holiday.php (100%) rename {htdocs => public}/holiday/document.php (100%) rename {htdocs => public}/holiday/img/add.png (100%) rename {htdocs => public}/holiday/img/conges.png (100%) rename {htdocs => public}/holiday/img/delete.png (100%) rename {htdocs => public}/holiday/img/edit.png (100%) rename {htdocs => public}/holiday/img/index.html (100%) rename {htdocs => public}/holiday/index.html (100%) rename {htdocs => public}/holiday/list.php (100%) rename {htdocs => public}/holiday/view_log.php (100%) rename {htdocs => public}/hrm/admin/admin_establishment.php (100%) rename {htdocs => public}/hrm/admin/admin_hrm.php (100%) rename {htdocs => public}/hrm/admin/index.html (100%) rename {htdocs => public}/hrm/class/establishment.class.php (100%) rename {htdocs => public}/hrm/class/index.html (100%) rename {htdocs => public}/hrm/establishment/card.php (100%) rename {htdocs => public}/hrm/establishment/index.html (100%) rename {htdocs => public}/hrm/establishment/info.php (100%) rename {htdocs => public}/hrm/index.html (100%) rename {htdocs => public}/hrm/index.php (100%) rename {htdocs => public}/imports/class/import.class.php (100%) rename {htdocs => public}/imports/class/index.html (100%) rename {htdocs => public}/imports/emptyexample.php (100%) rename {htdocs => public}/imports/import.php (100%) rename {htdocs => public}/imports/index.php (100%) rename {htdocs => public}/includes/OAuth/Common/AutoLoader.php (100%) rename {htdocs => public}/includes/OAuth/Common/Consumer/Credentials.php (100%) rename {htdocs => public}/includes/OAuth/Common/Consumer/CredentialsInterface.php (100%) rename {htdocs => public}/includes/OAuth/Common/Exception/Exception.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Client/AbstractClient.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Client/ClientInterface.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Client/CurlClient.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Client/StreamClient.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Exception/TokenResponseException.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Uri/Uri.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Uri/UriFactory.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Uri/UriFactoryInterface.php (100%) rename {htdocs => public}/includes/OAuth/Common/Http/Uri/UriInterface.php (100%) rename {htdocs => public}/includes/OAuth/Common/Service/AbstractService.php (100%) rename {htdocs => public}/includes/OAuth/Common/Service/ServiceInterface.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/DoliStorage.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/Exception/AuthorizationStateNotFoundException.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/Exception/StorageException.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/Exception/TokenNotFoundException.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/Memory.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/Redis.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/Session.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/SymfonySession.php (100%) rename {htdocs => public}/includes/OAuth/Common/Storage/TokenStorageInterface.php (100%) rename {htdocs => public}/includes/OAuth/Common/Token/AbstractToken.php (100%) rename {htdocs => public}/includes/OAuth/Common/Token/Exception/ExpiredTokenException.php (100%) rename {htdocs => public}/includes/OAuth/Common/Token/TokenInterface.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/AbstractService.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/BitBucket.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/Etsy.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/FitBit.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/FiveHundredPx.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/Flickr.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/QuickBooks.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/Redmine.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/ScoopIt.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/ServiceInterface.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/Tumblr.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/Twitter.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/Xing.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Service/Yahoo.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Signature/Exception/UnsupportedHashAlgorithmException.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Signature/Signature.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Signature/SignatureInterface.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Token/StdOAuth1Token.php (100%) rename {htdocs => public}/includes/OAuth/OAuth1/Token/TokenInterface.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/AbstractService.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Amazon.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Bitly.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Bitrix24.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Box.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Buffer.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Dailymotion.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Delicious.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/DeviantArt.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Dropbox.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/EveOnline.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Exception/InvalidAccessTypeException.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Exception/InvalidAuthorizationStateException.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Exception/InvalidScopeException.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Exception/MissingRefreshTokenException.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Facebook.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Foursquare.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/GitHub.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Google.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Harvest.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Heroku.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Hubic.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Instagram.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/JawboneUP.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Linkedin.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Mailchimp.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Microsoft.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Nest.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Netatmo.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/ParrotFlowerPower.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Paypal.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Pocket.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Reddit.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/RunKeeper.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Salesforce.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/ServiceInterface.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/SoundCloud.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Spotify.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Strava.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Ustream.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Vimeo.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Vkontakte.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Yahoo.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Service/Yammer.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Token/StdOAuth2Token.php (100%) rename {htdocs => public}/includes/OAuth/OAuth2/Token/TokenInterface.php (100%) rename {htdocs => public}/includes/OAuth/ServiceFactory.php (100%) rename {htdocs => public}/includes/OAuth/bootstrap.php (100%) rename {htdocs => public}/includes/adodbtime/adodb-time.inc.php (100%) rename {htdocs => public}/includes/adodbtime/index.html (100%) rename {htdocs => public}/includes/ccampbell/chromephp/ChromePhp.php (100%) rename {htdocs => public}/includes/ccampbell/chromephp/README.md (100%) rename {htdocs => public}/includes/ccampbell/chromephp/composer.json (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/CHANGES.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/LICENSE.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/README.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/adapters/jquery.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/bower.json (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/build-config.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/ckeditor.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/composer.json (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/config.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/contents.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/af.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ar.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/bg.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/bn.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/bs.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ca.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/cs.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/cy.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/da.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/de-ch.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/de.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/el.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/en-au.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/en-ca.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/en-gb.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/en.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/eo.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/es.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/et.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/eu.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/fa.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/fi.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/fo.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/fr-ca.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/fr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/gl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/gu.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/he.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/hi.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/hr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/hu.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/id.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/is.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/it.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ja.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ka.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/km.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ko.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ku.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/lt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/lv.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/mk.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/mn.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ms.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/nb.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/nl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/no.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/pl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/pt-br.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/pt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ro.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ru.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/si.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/sk.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/sl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/sq.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/sr-latn.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/sr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/sv.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/th.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/tr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/tt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/ug.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/uk.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/vi.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/zh-cn.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/lang/zh.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/package.json (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/af.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/da.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/el.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/es.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/et.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/he.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/id.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/it.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/km.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/no.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/si.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/th.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/about/dialogs/about.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/about/dialogs/logo_ckeditor.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/clipboard/dialogs/paste.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/dialog/dialogDefinition.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/div/dialogs/div.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/find/dialogs/find.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/flash/dialogs/flash.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/flash/images/placeholder.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/dialogs/button.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/dialogs/checkbox.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/dialogs/form.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/dialogs/hiddenfield.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/dialogs/radio.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/dialogs/select.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/dialogs/textarea.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/dialogs/textfield.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/forms/images/hiddenfield.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/icons.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/icons_hidpi.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/iframe/dialogs/iframe.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/iframe/images/placeholder.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/image/dialogs/image.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/image/images/noimage.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/link/dialogs/anchor.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/link/dialogs/link.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/link/images/anchor.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/link/images/hidpi/anchor.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/liststyle/dialogs/liststyle.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/magicline/images/icon-rtl.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/magicline/images/icon.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/pagebreak/images/pagebreak.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/pastefromword/filter/default.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/preview/preview.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/scayt/CHANGELOG.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/scayt/LICENSE.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/scayt/README.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/scayt/dialogs/options.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/scayt/dialogs/toolbar.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_address.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_div.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h3.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h4.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h6.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_p.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/dialogs/smiley.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/embaressed_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/heart.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/heart.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/tounge_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/af.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ar.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/bg.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ca.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cs.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cy.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/da.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/el.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eo.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/es.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/et.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eu.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fa.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fi.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/gl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/he.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hu.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/id.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/it.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ja.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/km.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ko.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ku.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lv.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nb.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/no.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ru.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/si.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sk.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sl.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sq.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sv.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/th.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tr.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tt.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ug.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/uk.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/vi.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/specialchar.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/table/dialogs/table.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/templates/templates/default.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/templates/templates/images/template2.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/templates/templates/images/template3.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/wsc/LICENSE.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/wsc/README.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/wsc/dialogs/ciframe.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/wsc/dialogs/tmpFrameset.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc_ie.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/css/samples.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/img/github-top.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/img/header-bg.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/img/header-separator.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/img/logo.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/img/navigation-tip.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/index.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/js/sample.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/js/sf.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/ajax.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/api.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/appendto.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/assets/inlineall/logo.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/assets/posteddata.php (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/assets/sample.jpg (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/assets/uilanguages/languages.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/datafiltering.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/dialog/assets/my_dialog.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/dialog/dialog.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/divreplace.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/enterkey/enterkey.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputforflash.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputhtml.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/index.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/inlineall.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/inlinebycode.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/inlinetextarea.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/jquery.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/magicline/magicline.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/readonly.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/replacebyclass.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/replacebycode.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/sample.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/sample.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/sample_posteddata.php (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/tabindex.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/toolbar/toolbar.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/uicolor.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/uilanguages.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/wysiwygarea/fullpage.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/old/xhtmlstyle.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/css/fontello.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/config.json (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.eot (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.svg (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.ttf (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.woff (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/index.html (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/dialog.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/dialog_ie.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/dialog_ie7.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/dialog_ie8.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/dialog_iequirks.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/editor.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/editor_gecko.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/editor_ie.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/editor_ie7.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/editor_ie8.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/editor_iequirks.css (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/icons.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/icons_hidpi.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/arrow.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/close.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/hidpi/close.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock-open.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/hidpi/refresh.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/lock-open.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/lock.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/refresh.png (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/images/spinner.gif (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/skins/moono/readme.md (100%) rename {htdocs => public}/includes/ckeditor/ckeditor/styles.js (100%) rename {htdocs => public}/includes/evalmath/README.md (100%) rename {htdocs => public}/includes/evalmath/evalmath.class.php (100%) rename {htdocs => public}/includes/fonts/Aerial.ttf (100%) rename {htdocs => public}/includes/fonts/AerialBd.ttf (100%) rename {htdocs => public}/includes/fonts/AerialBdIt.ttf (100%) rename {htdocs => public}/includes/fonts/AerialIt.ttf (100%) rename {htdocs => public}/includes/fonts/CHANGELOG.TXT (100%) rename {htdocs => public}/includes/fonts/COPYRIGHT.TXT (100%) rename {htdocs => public}/includes/fpdfi/README.txt (100%) rename {htdocs => public}/includes/fpdfi/filters/FilterASCII85.php (100%) rename {htdocs => public}/includes/fpdfi/filters/FilterASCII85_FPDI.php (100%) rename {htdocs => public}/includes/fpdfi/filters/FilterASCIIHexDecode.php (100%) rename {htdocs => public}/includes/fpdfi/filters/FilterLZW.php (100%) rename {htdocs => public}/includes/fpdfi/filters/FilterLZW_FPDI.php (100%) rename {htdocs => public}/includes/fpdfi/fpdf_tpl.php (100%) rename {htdocs => public}/includes/fpdfi/fpdi.php (100%) rename {htdocs => public}/includes/fpdfi/fpdi_bridge.php (100%) rename {htdocs => public}/includes/fpdfi/fpdi_pdf_parser.php (100%) rename {htdocs => public}/includes/fpdfi/pdf_context.php (100%) rename {htdocs => public}/includes/fpdfi/pdf_parser.php (100%) rename {htdocs => public}/includes/geoip/README.txt (100%) rename {htdocs => public}/includes/geoip/geoip.inc (100%) rename {htdocs => public}/includes/geoip/geoipcity.inc (100%) rename {htdocs => public}/includes/geoip/geoipregionvars.php (100%) rename {htdocs => public}/includes/geoip/sample.php (100%) rename {htdocs => public}/includes/geoip/sample_city.php (100%) rename {htdocs => public}/includes/geoip/sample_distributed.php (100%) rename {htdocs => public}/includes/geoip/sample_netspeed.php (100%) rename {htdocs => public}/includes/geoip/sample_org.php (100%) rename {htdocs => public}/includes/geoip/sample_region.php (100%) rename {htdocs => public}/includes/index.html (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-icons_217bc0_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-icons_2e83ff_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-icons_469bdd_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-icons_6da8d5_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-icons_cd0a0a_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-icons_d8e7f3_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/images/ui-icons_f9bd01_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/redmond/jquery-ui.css (100%) rename {htdocs => public}/includes/jquery/css/redmond/jquery-ui.min.css (100%) rename {htdocs => public}/includes/jquery/css/redmond/theme.css (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-icons_222222_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-icons_2e83ff_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-icons_454545_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-icons_888888_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/images/ui-icons_cd0a0a_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/smoothness/jquery-ui.css (100%) rename {htdocs => public}/includes/jquery/css/smoothness/jquery-ui.min.css (100%) rename {htdocs => public}/includes/jquery/css/smoothness/theme.css (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/jquery-ui.css (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/jquery-ui.min.css (100%) rename {htdocs => public}/includes/jquery/css/ui-lightness/theme.css (100%) rename {htdocs => public}/includes/jquery/js/jquery-ui.js (100%) rename {htdocs => public}/includes/jquery/js/jquery-ui.min.js (100%) rename {htdocs => public}/includes/jquery/js/jquery.js (100%) rename {htdocs => public}/includes/jquery/js/jquery.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/blockUI/jquery.blockUI.js (100%) rename {htdocs => public}/includes/jquery/plugins/colorpicker/jquery.colorpicker.css (100%) rename {htdocs => public}/includes/jquery/plugins/colorpicker/jquery.colorpicker.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/README.md (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/css/jquery.fileupload-ui.css (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/img/loading.gif (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/img/progressbar.gif (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/cors/jquery.postmessage-transport.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/cors/jquery.xdr-transport.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/jquery.fileupload-fp.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/jquery.fileupload-jui.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/jquery.fileupload-ui.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/jquery.fileupload.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/jquery.iframe-transport.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/locale.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/main.js (100%) rename {htdocs => public}/includes/jquery/plugins/fileupload/js/vendor/jquery.ui.widget.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/API.md (100%) rename {htdocs => public}/includes/jquery/plugins/flot/CONTRIBUTING.md (100%) rename {htdocs => public}/includes/jquery/plugins/flot/FAQ.md (100%) rename {htdocs => public}/includes/jquery/plugins/flot/LICENSE.txt (100%) rename {htdocs => public}/includes/jquery/plugins/flot/Makefile (100%) rename {htdocs => public}/includes/jquery/plugins/flot/NEWS.md (100%) rename {htdocs => public}/includes/jquery/plugins/flot/PLUGINS.md (100%) rename {htdocs => public}/includes/jquery/plugins/flot/README.md (100%) rename {htdocs => public}/includes/jquery/plugins/flot/excanvas.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/excanvas.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.colorhelpers.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.colorhelpers.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.canvas.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.canvas.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.categories.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.categories.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.crosshair.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.crosshair.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.errorbars.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.errorbars.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.fillbetween.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.fillbetween.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.image.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.image.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.navigate.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.navigate.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.pie.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.pie.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.resize.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.resize.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.selection.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.selection.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.stack.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.stack.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.symbol.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.symbol.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.threshold.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.threshold.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.time.js (100%) rename {htdocs => public}/includes/jquery/plugins/flot/jquery.flot.time.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/jcrop/css/Jcrop.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jcrop/css/jquery.Jcrop.css (100%) rename {htdocs => public}/includes/jquery/plugins/jcrop/index.html (100%) rename {htdocs => public}/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js (100%) rename {htdocs => public}/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/jeditable/jquery.jeditable.ckeditor.js (100%) rename {htdocs => public}/includes/jquery/plugins/jeditable/jquery.jeditable.js (100%) rename {htdocs => public}/includes/jquery/plugins/jeditable/jquery.jeditable.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/jeditable/jquery.jeditable.ui-autocomplete.js (100%) rename {htdocs => public}/includes/jquery/plugins/jeditable/jquery.jeditable.ui-datepicker.js (100%) rename {htdocs => public}/includes/jquery/plugins/jnotify/jquery.jnotify-alt.min.css (100%) rename {htdocs => public}/includes/jquery/plugins/jnotify/jquery.jnotify.css (100%) rename {htdocs => public}/includes/jquery/plugins/jnotify/jquery.jnotify.js (100%) rename {htdocs => public}/includes/jquery/plugins/jnotify/jquery.jnotify.min.css (100%) rename {htdocs => public}/includes/jquery/plugins/jnotify/jquery.jnotify.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/ChangeLog.txt (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/Example.html (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/ReadMe.txt (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.css (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.min.css (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/AlphaBar.png (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/Bars.png (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/Maps.png (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/NoColor.png (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/bar-opacity.png (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/map-opacity.png (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/mappoint.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/picker.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/preview-opacity.png (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/images/rangearrows.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/jPicker.css (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/jpicker-1.1.6.js (100%) rename {htdocs => public}/includes/jquery/plugins/jpicker/jpicker-1.1.6.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/application.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/code.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/css.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/db.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/directory.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/doc.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/file.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/film.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/flash.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/folder_open.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/html.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/java.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/linux.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/music.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/pdf.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/php.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/picture.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/ppt.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/psd.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/ruby.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/script.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/spinner.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/txt.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/xls.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/images/zip.png (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.css (100%) rename {htdocs => public}/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.js (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/changelog.md (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/ajax-loader.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/file.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/folder-closed.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/folder.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/minus.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/plus.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-black-line.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-black.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-default-line.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-default.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam-line.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-gray-line.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-gray.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-red-line.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/images/treeview-red.gif (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/jquery.treeview.async.js (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/jquery.treeview.css (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/jquery.treeview.edit.js (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/jquery.treeview.js (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/jquery.treeview.sortable.js (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/lib/jquery.cookie.js (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/readme.md (100%) rename {htdocs => public}/includes/jquery/plugins/jquerytreeview/screenshot.png (100%) rename {htdocs => public}/includes/jquery/plugins/layout/jquery.layout.js (100%) rename {htdocs => public}/includes/jquery/plugins/layout/jquery.layout.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/images/ajax-loader.gif (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/images/icons-18-black.png (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/images/icons-18-white.png (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/images/icons-36-black.png (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/images/icons-36-white.png (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/jquery.mobile-latest.css (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/jquery.mobile-latest.js (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/jquery.mobile-latest.min.css (100%) rename {htdocs => public}/includes/jquery/plugins/mobile/jquery.mobile-latest.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/multiselect/MIT-LICENSE.txt (100%) rename {htdocs => public}/includes/jquery/plugins/multiselect/css/ui.multiselect.css (100%) rename {htdocs => public}/includes/jquery/plugins/multiselect/js/ui.multiselect.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/.gitignore (100%) rename {htdocs => public}/includes/jquery/plugins/select2/CONTRIBUTING.md (100%) rename {htdocs => public}/includes/jquery/plugins/select2/LICENSE (100%) rename {htdocs => public}/includes/jquery/plugins/select2/README.md (100%) rename {htdocs => public}/includes/jquery/plugins/select2/bower.json (100%) rename {htdocs => public}/includes/jquery/plugins/select2/component.json (100%) rename {htdocs => public}/includes/jquery/plugins/select2/composer.json (100%) rename {htdocs => public}/includes/jquery/plugins/select2/package.json (100%) rename {htdocs => public}/includes/jquery/plugins/select2/release.sh (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2-bootstrap.css (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2-spinner.gif (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2.css (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2.jquery.json (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2.png (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ar.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_az.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_bg.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ca.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_cs.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_da.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_de.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_el.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_en.js.template (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_es.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_et.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_eu.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_fa.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_fi.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_fr.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_gl.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_he.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_hr.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_hu.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_id.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_is.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_it.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ja.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ka.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ko.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_lt.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_lv.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_mk.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ms.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_nb.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_nl.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_pl.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_pt-BR.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_pt-PT.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ro.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_rs.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ru.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_sk.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_sv.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_th.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_tr.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_ug-CN.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_uk.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_vi.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_zh-CN.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2_locale_zh-TW.js (100%) rename {htdocs => public}/includes/jquery/plugins/select2/select2x2.png (100%) rename {htdocs => public}/includes/jquery/plugins/tablednd/README.txt (100%) rename {htdocs => public}/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.js (100%) rename {htdocs => public}/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.css (100%) rename {htdocs => public}/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.js (100%) rename {htdocs => public}/includes/jquery/plugins/tiptip/jquery.tipTip.js (100%) rename {htdocs => public}/includes/jquery/plugins/tiptip/jquery.tipTip.min.js (100%) rename {htdocs => public}/includes/jquery/plugins/tiptip/tipTip.css (100%) rename {htdocs => public}/includes/jsgantt/index.htm (100%) rename {htdocs => public}/includes/jsgantt/jsgantt.css (100%) rename {htdocs => public}/includes/jsgantt/jsgantt.js (100%) rename {htdocs => public}/includes/jsgantt/jsgantt.min.js (100%) rename {htdocs => public}/includes/jsgantt/jsgantt_Minutes.html (100%) rename {htdocs => public}/includes/jsgantt/jsgantt_exExternalXML.html (100%) rename {htdocs => public}/includes/jsgantt/project.xml (100%) rename {htdocs => public}/includes/jstz/jstz.js (100%) rename {htdocs => public}/includes/jstz/jstz.min.js (100%) rename {htdocs => public}/includes/mike42/escpos-php/.gitignore (100%) rename {htdocs => public}/includes/mike42/escpos-php/Escpos.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/LICENSE.md (100%) rename {htdocs => public}/includes/mike42/escpos-php/README.md (100%) rename {htdocs => public}/includes/mike42/escpos-php/composer.json (100%) rename {htdocs => public}/includes/mike42/escpos-php/composer.lock (100%) rename {htdocs => public}/includes/mike42/escpos-php/doc/Makefile (100%) rename {htdocs => public}/includes/mike42/escpos-php/doc/escpos.conf (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/README.md (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/barcode.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/bit-image.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/character-encodings-with-images.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/character-encodings.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/character-tables.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/demo.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/graphics.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/interface/README.md (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/interface/ethernet.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/interface/linux-usb.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/interface/smb.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/interface/windows-lpt.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/interface/windows-usb.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/print-from-html.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/print-from-pdf.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/qr-code.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/receipt-with-logo.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/resources/character-encoding-test-strings.inc (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/resources/document.odt (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/resources/document.pdf (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/resources/document.z (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/resources/escpos-php-small.png (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/resources/escpos-php.png (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/resources/tux.png (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/29-latvian-star-tup592.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/32-german-tm-t20-ii-custom-command.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/33-spanish-seypos-prp-300.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/39-currency-symbols.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/44-pound-symbol-star-tsp650.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/50-P-822D-greek.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/54-gfx-sidebyside.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/6-arabic-epos-tep-220m.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/specific/README.md (100%) rename {htdocs => public}/includes/mike42/escpos-php/example/text-size.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/AbstractCapabilityProfile.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/CodePage.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/DefaultCapabilityProfile.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/DummyPrintConnector.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/EposTepCapabilityProfile.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/EscposImage.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/EscposPrintBuffer.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/FilePrintConnector.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/ImagePrintBuffer.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/NetworkPrintConnector.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/P822DCapabilityProfile.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/PrintBuffer.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/PrintConnector.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/SimpleCapabilityProfile.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/StarCapabilityProfile.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/WindowsPrintConnector.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/cache/Characters-DefaultCapabilityProfile.ser.gz (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/cache/Characters-SimpleCapabilityProfile.ser.gz (100%) rename {htdocs => public}/includes/mike42/escpos-php/src/cache/Characters-StarCapabilityProfile.ser.gz (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/bootstrap.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/ExampleTest.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/barcode.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/bit-image.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/character-encodings.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/character-tables.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/demo.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/graphics.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/interface.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/print-from-pdf.bin.z (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/qr-code.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/receipt-with-logo.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/integration/resources/output/text-size.bin (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/phpunit.xml (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/AbstractCapabilityProfileTest.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/EscposImageTest.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/EscposPrintBufferTest.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/EscposTest.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/WindowsPrintConnectorTest.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/black_transparent.gif (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/black_transparent.png (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/black_white.bmp (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/black_white.gif (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/black_white.jpg (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/black_white.png (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/canvas_black.bmp (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/canvas_black.gif (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/canvas_black.jpg (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/canvas_black.png (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/canvas_white.bmp (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/canvas_white.gif (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/canvas_white.jpg (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/canvas_white.png (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/demo.php (100%) rename {htdocs => public}/includes/mike42/escpos-php/test/unit/resources/doc.pdf (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/.gitignore (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/.php_cs (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/.travis.yml (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/LICENSE.txt (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/Mobile_Detect.json (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/Mobile_Detect.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/README.md (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/composer.json (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/examples/demo.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/examples/session_example.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/examples/test.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/export/exportToJSON.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/namespaced/Detection/MobileDetect.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/BasicsTest.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/UA_List.inc.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/UA_List.pending.txt (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/UserAgentTest.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/VendorsTest_tmp.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/bootstrap.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/phpunit.xml (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Acer.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Alcatel.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Allview.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Amazon.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Apple.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Archos.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Asus.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Blackberry.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Dell.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Google.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HP.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HTC.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Huawei.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/LG.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lava.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Leader.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lenovo.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Mi.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Microsoft.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Motorola.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Nokia.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Onda.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Others.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Prestigio.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Samsung.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Sony.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/SpecialCases.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Vodafone.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/ZTE.php (100%) rename {htdocs => public}/includes/mobiledetect/mobiledetectlib/tests/ualist.json (100%) rename {htdocs => public}/includes/nusoap/lib/Mail/mime.php (100%) rename {htdocs => public}/includes/nusoap/lib/Mail/mimePart.php (100%) rename {htdocs => public}/includes/nusoap/lib/changelog (100%) rename {htdocs => public}/includes/nusoap/lib/class.nusoap_base.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.soap_fault.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.soap_parser.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.soap_server.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.soap_transport_http.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.soap_val.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.soapclient.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.wsdl.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.wsdlcache.php (100%) rename {htdocs => public}/includes/nusoap/lib/class.xmlschema.php (100%) rename {htdocs => public}/includes/nusoap/lib/nusoap.php (100%) rename {htdocs => public}/includes/nusoap/lib/nusoapmime.php (100%) rename {htdocs => public}/includes/odtphp/Segment.php (100%) rename {htdocs => public}/includes/odtphp/SegmentIterator.php (100%) rename {htdocs => public}/includes/odtphp/odf.php (100%) rename {htdocs => public}/includes/odtphp/zip/PclZipProxy.php (100%) rename {htdocs => public}/includes/odtphp/zip/PhpZipProxy.php (100%) rename {htdocs => public}/includes/odtphp/zip/ZipInterface.php (100%) rename {htdocs => public}/includes/odtphp/zip/pclzip/gnu-lgpl.txt (100%) rename {htdocs => public}/includes/odtphp/zip/pclzip/pclzip.lib.php (100%) rename {htdocs => public}/includes/odtphp/zip/pclzip/readme.txt (100%) rename {htdocs => public}/includes/php-iban/.gitignore (100%) rename {htdocs => public}/includes/php-iban/LICENSE (100%) rename {htdocs => public}/includes/php-iban/mistranscriptions.txt (100%) rename {htdocs => public}/includes/php-iban/oophp-iban.php (100%) rename {htdocs => public}/includes/php-iban/php-iban.php (100%) rename {htdocs => public}/includes/php-iban/registry.txt (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/.gitattributes (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/.gitignore (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/.travis.yml (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Autoloader.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/APC.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/CacheBase.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/ICache.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Igbinary.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memcache.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memory.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite3.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Wincache.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorageFactory.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/CyclicReferenceStack.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/Logger.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Database.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/DateTime.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Engineering.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Exception.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/ExceptionHandler.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Financial.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaParser.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaToken.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Function.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Functions.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Logical.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/LookupRef.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/MathTrig.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Statistical.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/TextData.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Token/Stack.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/functionlist.txt (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/AdvancedValueBinder.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataType.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataValidation.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DefaultValueBinder.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/Hyperlink.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/IValueBinder.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Axis.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeries.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeriesValues.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Exception.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/GridLines.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Layout.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Legend.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/PlotArea.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Properties.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/jpgraph.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Title.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Comment.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentProperties.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentSecurity.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Exception.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/HashTable.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Helper/HTML.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/IComparable.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/IOFactory.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/NamedRange.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Abstract.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/CSV.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/DefaultReadFilter.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2003XML.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Chart.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Theme.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/Escher.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/MD5.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/RC4.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Exception.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Gnumeric.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/HTML.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReadFilter.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReader.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/OOCalc.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/SYLK.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/ReferenceHelper.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/ITextElement.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/Run.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/TextElement.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Settings.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/CodePage.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Date.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Drawing.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Excel5.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/File.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Font.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/Matrix.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Error.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Maths.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/File.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/Root.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLERead.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/readme.txt (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PasswordHasher.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/String.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/TimeZone.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/XMLWriter.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipStreamWrapper.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/bestFitClass.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/linearBestFitClass.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/powerBestFitClass.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/trendClass.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Alignment.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Border.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Borders.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Color.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Conditional.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Fill.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Font.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/NumberFormat.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Protection.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Supervisor.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/BaseDrawing.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/CellIterator.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Column.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnCellIterator.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnDimension.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnIterator.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing/Shadow.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooter.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/MemoryDrawing.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageMargins.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageSetup.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Protection.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Row.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowCellIterator.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowDimension.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowIterator.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/SheetView.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/WorksheetIterator.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Abstract.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/CSV.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Chart.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Comments.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/DocProps.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Drawing.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Rels.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsRibbon.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsVBA.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/StringTable.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Style.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Theme.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Workbook.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/WriterPart.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Escher.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Font.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Parser.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Workbook.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Worksheet.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Xf.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Exception.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/HTML.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/IWriter.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Cell/Comment.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Content.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Meta.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/MetaInf.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Mimetype.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Settings.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Styles.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Thumbnails.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/WriterPart.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/Core.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/DomPDF.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/mPDF.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/tcPDF.php (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/bg/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/en/uk/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/config (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/functions (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/changelog.txt (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/composer.json (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/install.txt (100%) rename {htdocs => public}/includes/phpoffice/phpexcel/license.md (100%) rename {htdocs => public}/includes/printipp/BasicIPP.php (100%) rename {htdocs => public}/includes/printipp/CupsPrintIPP.php (100%) rename {htdocs => public}/includes/printipp/ExtendedPrintIPP.php (100%) rename {htdocs => public}/includes/printipp/PrintIPP.php (100%) rename {htdocs => public}/includes/printipp/http_class.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/ApcCache.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/AutoLoader.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/CommentParser.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Compose.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/ApiMethodInfo.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/Arr.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/Invalid.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/Object.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/Text.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/ValidationInfo.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/Validator.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/ValueObject.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/iValidate.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Data/iValueObject.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Defaults.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/EventDispatcher.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Explorer.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/ExplorerInfo.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Filter/RateLimit.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Flash.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/AmfFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/CsvFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/DependentFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/DependentMultiFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/Format.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/HtmlFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/JsFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/JsonFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/MultiFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/PlistFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/TsvFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/UploadFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/UrlEncodedFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/XmlFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/YamlFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/iDecodeStream.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Format/iFormat.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/HumanReadableCache.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/InvalidAuthCredentials.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/MemcacheCache.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/PassThrough.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/README.md (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Redirect.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Resources.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/RestException.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Restler.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Routes.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Scope.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/UI/Emmet.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/UI/FormStyles.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/UI/Forms.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/UI/Nav.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/UI/Tags.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/User.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/Util.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/compatibility/iAuthenticate.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/compatibility/restler1.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/compatibility/restler2.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/composer.json (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/css/reset.css (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/css/screen.css (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/images/explorer_icons.png (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/images/logo_small.png (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/images/throbber.gif (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/index.html (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/backbone-min.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/handlebars-1.0.0.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/highlight.7.3.pack.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/jquery-1.8.0.min.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.ba-bbq.min.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.slideto.min.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.wiggle.min.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/shred.bundle.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/shred/content.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/swagger-oauth.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/swagger.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/lib/underscore-min.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/o2c.html (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.min.js (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/iAuthenticate.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/iCache.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/iCompose.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/iFilter.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/iIdentifyUser.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/iProvideMultiVersionApi.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/iUseAuthentication.php (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/views/debug.css (100%) rename {htdocs => public}/includes/restler/framework/Luracast/Restler/views/debug.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Attachment.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/ByteStream/AbstractFilterableInputStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/ByteStream/ArrayByteStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/ByteStream/FileByteStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/ByteStream/TemporaryFileByteStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterReader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterReader/GenericFixedWidthReader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterReader/UsAsciiReader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterReader/Utf8Reader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory/SimpleCharacterReaderFactory.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterStream/ArrayCharacterStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/CharacterStream/NgCharacterStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/ConfigurableSpool.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/DependencyContainer.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/DependencyException.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/EmbeddedFile.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Encoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Encoder/Base64Encoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Encoder/QpEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Encoder/Rfc2231Encoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Encoding.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/CommandEvent.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/CommandListener.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/Event.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/EventDispatcher.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/EventListener.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/EventObject.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/ResponseEvent.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/ResponseListener.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/SendEvent.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/SendListener.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/SimpleEventDispatcher.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeEvent.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeListener.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionEvent.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionListener.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/FailoverTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/FileSpool.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/FileStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Filterable.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Image.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/InputByteStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/IoException.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/KeyCache.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/KeyCache/ArrayKeyCache.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/KeyCache/DiskKeyCache.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/KeyCache/KeyCacheInputStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/KeyCache/NullKeyCache.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/KeyCache/SimpleKeyCacheInputStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/LoadBalancedTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/MailTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mailer.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mailer/ArrayRecipientIterator.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mailer/RecipientIterator.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/MemorySpool.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Message.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Attachment.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/CharsetObserver.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/Base64ContentEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/NativeQpContentEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/PlainContentEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoderProxy.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/RawContentEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/EmbeddedFile.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/EncodingObserver.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Grammar.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Header.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/Base64HeaderEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/QpHeaderEncoder.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/HeaderFactory.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/HeaderSet.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Headers/AbstractHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Headers/DateHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Headers/IdentificationHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Headers/OpenDKIMHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Headers/ParameterizedHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Headers/PathHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Headers/UnstructuredHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/Message.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/MimeEntity.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/MimePart.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/ParameterizedHeader.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderFactory.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderSet.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMessage.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMimeEntity.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/MimePart.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/NullTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/OutputByteStream.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/AntiFloodPlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/BandwidthMonitorPlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Decorator/Replacements.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/DecoratorPlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/ImpersonatePlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Logger.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/LoggerPlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/ArrayLogger.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/EchoLogger.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/MessageLogger.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Connection.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Exception.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/PopBeforeSmtpPlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/RedirectingPlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Reporter.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/ReporterPlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HtmlReporter.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Sleeper.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/ThrottlerPlugin.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Plugins/Timer.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Preferences.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/ReplacementFilterFactory.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/RfcComplianceException.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/SendmailTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/SignedMessage.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Signer.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Signers/BodySigner.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Signers/DKIMSigner.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Signers/DomainKeySigner.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Signers/HeaderSigner.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Signers/OpenDKIMSigner.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Signers/SMimeSigner.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/SmtpTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Spool.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/SpoolTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/StreamFilter.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/StreamFilters/ByteArrayReplacementFilter.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilter.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilterFactory.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/SwiftException.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/CramMd5Authenticator.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/LoginAuthenticator.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/NTLMAuthenticator.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/PlainAuthenticator.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/XOAuth2Authenticator.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/AuthHandler.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Authenticator.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpHandler.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/FailoverTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/IoBuffer.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/LoadBalancedTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/MailInvoker.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/MailTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/NullTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/SendmailTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/SimpleMailInvoker.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/SmtpAgent.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/SpoolTransport.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/TransportException.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/classes/Swift/Validate.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/dependency_maps/cache_deps.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/dependency_maps/message_deps.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/dependency_maps/mime_deps.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/dependency_maps/transport_deps.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/mime_types.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/preferences.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/swift_init.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/swift_required.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/swift_required_pear.php (100%) rename {htdocs => public}/includes/swiftmailer/lib/swiftmailer_generate_mimes_config.php (100%) rename {htdocs => public}/includes/tcpdi/fpdf_tpl.php (100%) rename {htdocs => public}/includes/tcpdi/tcpdi.php (100%) rename {htdocs => public}/includes/tcpdi/tcpdi_parser.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/CHANGELOG.TXT (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/LICENSE.TXT (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/README.TXT (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/composer.json (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/config/tcpdf_config.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/COPYING (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog.9745.BAK (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/README (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/aealarabiya.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/aealarabiya.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/aealarabiya.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/aefurat.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/aefurat.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/aefurat.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/cid0cs.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/cid0ct.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/cid0jp.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/cid0kr.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/courier.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/courierb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/courierbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/courieri.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/AUTHORS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/BUGS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/LICENSE (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/NEWS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/README (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/langcover.txt (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/status.txt (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/unicover.txt (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/AUTHORS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/BUGS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/LICENSE (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/NEWS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/README (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/langcover.txt (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/status.txt (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/unicover.txt (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusans.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusans.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusans.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansb.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansb.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansbi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansbi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmono.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmono.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmono.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserif.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserif.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserif.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifb.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifb.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/dejavuserifi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20100919/AUTHORS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20100919/COPYING (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20100919/CREDITS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20100919/ChangeLog (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20100919/INSTALL (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20100919/README (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/AUTHORS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/COPYING (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/CREDITS (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog.10070.BAK (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/INSTALL (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/README (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freefont-20120503/USAGE (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemono.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemono.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemono.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonob.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonob.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonob.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonobi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonobi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonobi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonoi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonoi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freemonoi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesans.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesans.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesans.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansb.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansb.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansbi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansbi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freesansi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserif.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserif.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserif.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifb.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifb.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifbi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifbi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifi.ctg.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/freeserifi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/helvetica.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/helveticab.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/helveticabi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/helveticai.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/hysmyeongjostdmedium.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/kozgopromedium.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/kozminproregular.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/msungstdlight.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfacourier.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfacourier.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfacourierb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfacourierb.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfacourieri.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfacourieri.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfasymbol.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfasymbol.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfatimes.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfatimes.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfatimesb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfatimesb.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfatimesi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfatimesi.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.z (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/stsongstdlight.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/symbol.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/times.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/timesb.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/timesbi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/timesi.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/uni2cid_ac15.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/uni2cid_ag15.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/uni2cid_aj16.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/uni2cid_ak12.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/fonts/zapfdingbats.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/barcodes/datamatrix.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/barcodes/pdf417.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/barcodes/qrcode.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/sRGB.icc (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/tcpdf_colors.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/tcpdf_filters.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/tcpdf_font_data.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/tcpdf_fonts.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/tcpdf_images.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/include/tcpdf_static.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/tcpdf.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/tcpdf_autoconfig.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/tcpdf_barcodes_1d.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/tcpdf_barcodes_2d.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/tcpdf_import.php (100%) rename {htdocs => public}/includes/tecnickcom/tcpdf/tcpdf_parser.php (100%) rename {htdocs => public}/index.php (100%) rename {htdocs => public}/install/.gitignore (100%) rename {htdocs => public}/install/check.php (100%) rename {htdocs => public}/install/default.css (100%) rename {htdocs => public}/install/doctemplates/README (100%) rename {htdocs => public}/install/doctemplates/index.html (100%) rename {htdocs => public}/install/doctemplates/invoices/index.html (100%) rename {htdocs => public}/install/doctemplates/invoices/template_invoice.odt (100%) rename {htdocs => public}/install/doctemplates/orders/index.html (100%) rename {htdocs => public}/install/doctemplates/orders/template_order.odt (100%) rename {htdocs => public}/install/doctemplates/projects/index.html (100%) rename {htdocs => public}/install/doctemplates/projects/template_project.odt (100%) rename {htdocs => public}/install/doctemplates/proposals/index.html (100%) rename {htdocs => public}/install/doctemplates/proposals/template_proposal.odt (100%) rename {htdocs => public}/install/doctemplates/shipment/index.html (100%) rename {htdocs => public}/install/doctemplates/shipment/template_shipment.odt (100%) rename {htdocs => public}/install/doctemplates/supplier_proposal/index.html (100%) rename {htdocs => public}/install/doctemplates/supplier_proposal/template_supplier_proposal.odt (100%) rename {htdocs => public}/install/doctemplates/tasks/index.html (100%) rename {htdocs => public}/install/doctemplates/tasks/template_task_summary.odt (100%) rename {htdocs => public}/install/doctemplates/thirdparties/index.html (100%) rename {htdocs => public}/install/doctemplates/thirdparties/template_thirdparty.ods (100%) rename {htdocs => public}/install/doctemplates/thirdparties/template_thirdparty.odt (100%) rename {htdocs => public}/install/fileconf.php (100%) rename {htdocs => public}/install/inc.php (100%) rename {htdocs => public}/install/index.php (100%) rename {htdocs => public}/install/install.forced.sample.php (100%) rename {htdocs => public}/install/lib/index.html (100%) rename {htdocs => public}/install/lib/repair.lib.php (100%) rename {htdocs => public}/install/mssql/README (100%) rename {htdocs => public}/install/mssql/functions/index.html (100%) rename {htdocs => public}/install/mssql/index.html (100%) rename {htdocs => public}/install/mysql/README (100%) rename {htdocs => public}/install/mysql/data/index.html (100%) rename {htdocs => public}/install/mysql/data/llx_00_c_country.sql (100%) rename {htdocs => public}/install/mysql/data/llx_10_c_regions.sql (100%) rename {htdocs => public}/install/mysql/data/llx_20_c_departements.sql (100%) rename {htdocs => public}/install/mysql/data/llx_accounting.sql (100%) rename {htdocs => public}/install/mysql/data/llx_accounting_category.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_action_trigger.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_actioncomm.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_availability.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_chargesociales.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_civilite.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_currencies.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_ecotaxe.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_effectif.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_format_cards.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_forme_juridique.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_holiday_type.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_hrm_department.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_hrm_function.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_incoterms.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_input_method.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_input_reason.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_lead_status.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_paiement.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_paper_format.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_payment_term.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_propalst.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_prospectlevel.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_revenuestamp.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_shipment_mode.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_stcomm.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_tva.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_type_contact.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_type_fees.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_type_resource.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_typent.sql (100%) rename {htdocs => public}/install/mysql/data/llx_c_units.sql (100%) rename {htdocs => public}/install/mysql/data/llx_const.sql (100%) rename {htdocs => public}/install/mysql/data/llx_holiday_config.sql (100%) rename {htdocs => public}/install/mysql/functions/functions.sql (100%) rename {htdocs => public}/install/mysql/functions/index.html (100%) rename {htdocs => public}/install/mysql/index.html (100%) rename {htdocs => public}/install/mysql/migration/3.0.0-3.1.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.1.0-3.2.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.2.0-3.3.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.3.0-3.4.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.4.0-3.5.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.5.0-3.6.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.6.0-3.7.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.7.0-3.8.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.8.0-3.9.0.sql (100%) rename {htdocs => public}/install/mysql/migration/3.9.0-4.0.0.sql (100%) rename {htdocs => public}/install/mysql/migration/4.0.0-5.0.0.sql (100%) rename {htdocs => public}/install/mysql/migration/index.html (100%) rename {htdocs => public}/install/mysql/migration/repair.sql (100%) rename {htdocs => public}/install/mysql/tables/index.html (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_account.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_account.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_bookkeeping.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_bookkeeping.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_fiscalyear.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_journal.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_journal.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_system.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_accounting_system.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_actioncomm.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_actioncomm.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_actioncomm_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_actioncomm_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_actioncomm_resources.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_actioncomm_resources.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_adherent.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_adherent.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_adherent_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_adherent_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_adherent_type.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_adherent_type.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_adherent_type_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_adherent_type_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_advtargetemailing.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_advtargetemailing.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_account.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_account.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_account_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_account_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_categ.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_class.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_class.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_url.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bank_url.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bookmark.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bookmark.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bordereau_cheque.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_bordereau_cheque.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_boxes.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_boxes.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_boxes_def.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_boxes_def.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_budget.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_budget_lines.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_budget_lines.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_accounting_category.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_accounting_category.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_action_trigger.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_action_trigger.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_actioncomm.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_actioncomm.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_availability.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_availability.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_barcode_type.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_barcode_type.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_chargesociales.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_civility.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_civility.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_country.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_country.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_currencies.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_currencies.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_departements.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_departements.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_ecotaxe.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_ecotaxe.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_effectif.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_effectif.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_email_templates.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_email_templates.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_field_list.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_format_cards.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_forme_juridique.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_forme_juridique.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_holiday_types.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_holiday_types.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_hrm_department.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_hrm_function.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_incoterms.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_incoterms.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_input_method.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_input_method.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_input_reason.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_input_reason.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_lead_status.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_lead_status.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_paiement.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_paiement.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_paper_format.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_payment_term.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_price_expression.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_price_global_variable.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_price_global_variable_updater.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_propalst.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_propalst.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_prospectlevel.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_regions.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_regions.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_revenuestamp.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_shipment_mode.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_shipment_mode.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_stcomm.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_stcomm.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_tva.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_tva.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_type_contact.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_type_contact.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_type_fees.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_type_fees.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_type_resource.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_type_resource.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_typent.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_typent.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_units.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_units.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_ziptown.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_c_ziptown.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_account.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_account.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_contact.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_contact.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_fournisseur.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_fournisseur.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_lang.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_lang.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_member.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_member.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_product.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_product.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_project.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_project.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_societe.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_societe.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_user.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categorie_user.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categories_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_categories_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_chargesociales.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseur.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseur.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseur_dispatch.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseur_dispatch.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseur_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseur_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseur_log.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseurdet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseurdet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseurdet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commandedet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commandedet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commandedet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_commandedet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_const.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_const.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contrat.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contrat.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contrat_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contrat_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contratdet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contratdet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contratdet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contratdet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contratdet_log.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_contratdet_log.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_cronjob.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_cronjob.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_deplacement.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_document_model.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_document_model.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_don.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_don_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_don_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_ecm_directories.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_ecm_directories.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_ecm_files.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_ecm_files.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_element_contact.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_element_contact.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_element_element.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_element_element.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_element_resources.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_element_resources.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_element_tag.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_element_tag.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_entrepot.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_entrepot.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_establishment.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_event_element.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_events.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_events.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expedition.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expedition.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expedition_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expedition_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expeditiondet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expeditiondet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expeditiondet_batch.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expeditiondet_batch.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expeditiondet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expeditiondet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expensereport.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expensereport.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expensereport_det.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expensereport_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_expensereport_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_export_compta.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_export_model.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_export_model.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_fourn.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_fourn.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_fourn_det.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_fourn_det.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_fourn_det_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_fourn_det_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_fourn_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_fourn_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_rec.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facture_rec.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facturedet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facturedet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facturedet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facturedet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facturedet_rec.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_facturedet_rec.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_fichinter.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_fichinter.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_fichinter_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_fichinter_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_fichinterdet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_fichinterdet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_fichinterdet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_fichinterdet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_holiday.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_holiday.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_holiday_config.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_holiday_logs.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_holiday_users.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_import_model.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_import_model.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_links.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_links.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_livraison.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_livraison.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_livraison_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_livraison_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_livraisondet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_livraisondet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_livraisondet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_livraisondet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_loan.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_localtax.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_mailing.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_mailing_cibles.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_mailing_cibles.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_menu.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_menu.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_multicurrency.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_multicurrency_rate.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_notify.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_notify_def.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_oauth_state.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_oauth_token.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_opensurvey_comments.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_opensurvey_comments.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_opensurvey_formquestions.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_opensurvey_sondage.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_opensurvey_sondage.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_opensurvey_user_formanswers.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_opensurvey_user_studs.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_opensurvey_user_studs.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_overwrite_trans.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_overwrite_trans.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_paiement.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_paiement_facture.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_paiement_facture.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_paiementcharge.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_paiementfourn.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_paiementfourn_facturefourn.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_paiementfourn_facturefourn.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_payment_donation.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_payment_expensereport.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_payment_loan.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_payment_salary.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_payment_salary.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_prelevement_bons.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_prelevement_bons.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_prelevement_facture.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_prelevement_facture.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_prelevement_facture_demande.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_prelevement_lignes.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_prelevement_lignes.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_prelevement_rejet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_printing.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_association.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_association.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_batch.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_batch.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_customer_price.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_customer_price.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_customer_price_log.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_fournisseur_price.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_fournisseur_price.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_fournisseur_price_log.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_lang.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_lang.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_lot.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_lot.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_lot_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_lot_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_price.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_price.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_price_by_qty.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_price_by_qty.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_pricerules.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_pricerules.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_stock.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_stock.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_product_stock_entrepot.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet_task.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet_task.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet_task_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet_task_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet_task_time.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_projet_task_time.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propal.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propal.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propal_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propal_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propal_merge_pdf_product.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propaldet.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propaldet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propaldet_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_propaldet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_resource.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_resource.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_resource_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_resource_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_rights_def.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_rights_def.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_address.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_commerciaux.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_commerciaux.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_log.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_prices.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_remise.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_remise_except.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_remise_except.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_rib.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_societe_rib.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_socpeople.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_socpeople.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_socpeople_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_socpeople_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_stock_mouvement.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_stock_mouvement.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_subscription.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_subscription.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_supplier_proposal.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_supplier_proposal_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_supplier_proposaldet.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_supplier_proposaldet_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_tva.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_alert.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_clicktodial.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_employment.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_employment.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_param.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_param.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_rib.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_rights.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_user_rights.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_usergroup.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_usergroup.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_usergroup_extrafields.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_usergroup_extrafields.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_usergroup_rights.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_usergroup_rights.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_usergroup_user.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_usergroup_user.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_website.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_website.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_website_pages.key.sql (100%) rename {htdocs => public}/install/mysql/tables/llx_website_pages.sql (100%) rename {htdocs => public}/install/pgsql/README (100%) rename {htdocs => public}/install/pgsql/functions/functions.sql (100%) rename {htdocs => public}/install/pgsql/functions/index.html (100%) rename {htdocs => public}/install/pgsql/index.html (100%) rename {htdocs => public}/install/phpinfo.php (100%) rename {htdocs => public}/install/repair.php (100%) rename {htdocs => public}/install/robots.txt (100%) rename {htdocs => public}/install/sqlite3/functions/functions.sql (100%) rename {htdocs => public}/install/sqlite3/index.html (100%) rename {htdocs => public}/install/step1.php (100%) rename {htdocs => public}/install/step2.php (100%) rename {htdocs => public}/install/step4.php (100%) rename {htdocs => public}/install/step5.php (100%) rename {htdocs => public}/install/upgrade.php (100%) rename {htdocs => public}/install/upgrade2.php (100%) rename {htdocs => public}/langs/HOWTO-Translation.txt (100%) rename {htdocs => public}/langs/ar_SA/accountancy.lang (100%) rename {htdocs => public}/langs/ar_SA/admin.lang (100%) rename {htdocs => public}/langs/ar_SA/agenda.lang (100%) rename {htdocs => public}/langs/ar_SA/banks.lang (100%) rename {htdocs => public}/langs/ar_SA/bills.lang (100%) rename {htdocs => public}/langs/ar_SA/bookmarks.lang (100%) rename {htdocs => public}/langs/ar_SA/boxes.lang (100%) rename {htdocs => public}/langs/ar_SA/cashdesk.lang (100%) rename {htdocs => public}/langs/ar_SA/categories.lang (100%) rename {htdocs => public}/langs/ar_SA/commercial.lang (100%) rename {htdocs => public}/langs/ar_SA/companies.lang (100%) rename {htdocs => public}/langs/ar_SA/compta.lang (100%) rename {htdocs => public}/langs/ar_SA/contracts.lang (100%) rename {htdocs => public}/langs/ar_SA/cron.lang (100%) rename {htdocs => public}/langs/ar_SA/deliveries.lang (100%) rename {htdocs => public}/langs/ar_SA/dict.lang (100%) rename {htdocs => public}/langs/ar_SA/donations.lang (100%) rename {htdocs => public}/langs/ar_SA/ecm.lang (100%) rename {htdocs => public}/langs/ar_SA/errors.lang (100%) rename {htdocs => public}/langs/ar_SA/exports.lang (100%) rename {htdocs => public}/langs/ar_SA/externalsite.lang (100%) rename {htdocs => public}/langs/ar_SA/ftp.lang (100%) rename {htdocs => public}/langs/ar_SA/help.lang (100%) rename {htdocs => public}/langs/ar_SA/holiday.lang (100%) rename {htdocs => public}/langs/ar_SA/hrm.lang (100%) rename {htdocs => public}/langs/ar_SA/incoterm.lang (100%) rename {htdocs => public}/langs/ar_SA/install.lang (100%) rename {htdocs => public}/langs/ar_SA/interventions.lang (100%) rename {htdocs => public}/langs/ar_SA/languages.lang (100%) rename {htdocs => public}/langs/ar_SA/ldap.lang (100%) rename {htdocs => public}/langs/ar_SA/link.lang (100%) rename {htdocs => public}/langs/ar_SA/loan.lang (100%) rename {htdocs => public}/langs/ar_SA/mailmanspip.lang (100%) rename {htdocs => public}/langs/ar_SA/mails.lang (100%) rename {htdocs => public}/langs/ar_SA/main.lang (100%) rename {htdocs => public}/langs/ar_SA/margins.lang (100%) rename {htdocs => public}/langs/ar_SA/members.lang (100%) rename {htdocs => public}/langs/ar_SA/oauth.lang (100%) rename {htdocs => public}/langs/ar_SA/opensurvey.lang (100%) rename {htdocs => public}/langs/ar_SA/orders.lang (100%) rename {htdocs => public}/langs/ar_SA/other.lang (100%) rename {htdocs => public}/langs/ar_SA/paybox.lang (100%) rename {htdocs => public}/langs/ar_SA/paypal.lang (100%) rename {htdocs => public}/langs/ar_SA/printing.lang (100%) rename {htdocs => public}/langs/ar_SA/productbatch.lang (100%) rename {htdocs => public}/langs/ar_SA/products.lang (100%) rename {htdocs => public}/langs/ar_SA/projects.lang (100%) rename {htdocs => public}/langs/ar_SA/propal.lang (100%) rename {htdocs => public}/langs/ar_SA/receiptprinter.lang (100%) rename {htdocs => public}/langs/ar_SA/resource.lang (100%) rename {htdocs => public}/langs/ar_SA/salaries.lang (100%) rename {htdocs => public}/langs/ar_SA/sendings.lang (100%) rename {htdocs => public}/langs/ar_SA/sms.lang (100%) rename {htdocs => public}/langs/ar_SA/stocks.lang (100%) rename {htdocs => public}/langs/ar_SA/supplier_proposal.lang (100%) rename {htdocs => public}/langs/ar_SA/suppliers.lang (100%) rename {htdocs => public}/langs/ar_SA/trips.lang (100%) rename {htdocs => public}/langs/ar_SA/users.lang (100%) rename {htdocs => public}/langs/ar_SA/website.lang (100%) rename {htdocs => public}/langs/ar_SA/withdrawals.lang (100%) rename {htdocs => public}/langs/ar_SA/workflow.lang (100%) rename {htdocs => public}/langs/bg_BG/accountancy.lang (100%) rename {htdocs => public}/langs/bg_BG/admin.lang (100%) rename {htdocs => public}/langs/bg_BG/agenda.lang (100%) rename {htdocs => public}/langs/bg_BG/banks.lang (100%) rename {htdocs => public}/langs/bg_BG/bills.lang (100%) rename {htdocs => public}/langs/bg_BG/bookmarks.lang (100%) rename {htdocs => public}/langs/bg_BG/boxes.lang (100%) rename {htdocs => public}/langs/bg_BG/cashdesk.lang (100%) rename {htdocs => public}/langs/bg_BG/categories.lang (100%) rename {htdocs => public}/langs/bg_BG/commercial.lang (100%) rename {htdocs => public}/langs/bg_BG/companies.lang (100%) rename {htdocs => public}/langs/bg_BG/compta.lang (100%) rename {htdocs => public}/langs/bg_BG/contracts.lang (100%) rename {htdocs => public}/langs/bg_BG/cron.lang (100%) rename {htdocs => public}/langs/bg_BG/deliveries.lang (100%) rename {htdocs => public}/langs/bg_BG/dict.lang (100%) rename {htdocs => public}/langs/bg_BG/donations.lang (100%) rename {htdocs => public}/langs/bg_BG/ecm.lang (100%) rename {htdocs => public}/langs/bg_BG/errors.lang (100%) rename {htdocs => public}/langs/bg_BG/exports.lang (100%) rename {htdocs => public}/langs/bg_BG/externalsite.lang (100%) rename {htdocs => public}/langs/bg_BG/ftp.lang (100%) rename {htdocs => public}/langs/bg_BG/help.lang (100%) rename {htdocs => public}/langs/bg_BG/holiday.lang (100%) rename {htdocs => public}/langs/bg_BG/hrm.lang (100%) rename {htdocs => public}/langs/bg_BG/incoterm.lang (100%) rename {htdocs => public}/langs/bg_BG/install.lang (100%) rename {htdocs => public}/langs/bg_BG/interventions.lang (100%) rename {htdocs => public}/langs/bg_BG/languages.lang (100%) rename {htdocs => public}/langs/bg_BG/ldap.lang (100%) rename {htdocs => public}/langs/bg_BG/link.lang (100%) rename {htdocs => public}/langs/bg_BG/loan.lang (100%) rename {htdocs => public}/langs/bg_BG/mailmanspip.lang (100%) rename {htdocs => public}/langs/bg_BG/mails.lang (100%) rename {htdocs => public}/langs/bg_BG/main.lang (100%) rename {htdocs => public}/langs/bg_BG/margins.lang (100%) rename {htdocs => public}/langs/bg_BG/members.lang (100%) rename {htdocs => public}/langs/bg_BG/oauth.lang (100%) rename {htdocs => public}/langs/bg_BG/opensurvey.lang (100%) rename {htdocs => public}/langs/bg_BG/orders.lang (100%) rename {htdocs => public}/langs/bg_BG/other.lang (100%) rename {htdocs => public}/langs/bg_BG/paybox.lang (100%) rename {htdocs => public}/langs/bg_BG/paypal.lang (100%) rename {htdocs => public}/langs/bg_BG/printing.lang (100%) rename {htdocs => public}/langs/bg_BG/productbatch.lang (100%) rename {htdocs => public}/langs/bg_BG/products.lang (100%) rename {htdocs => public}/langs/bg_BG/projects.lang (100%) rename {htdocs => public}/langs/bg_BG/propal.lang (100%) rename {htdocs => public}/langs/bg_BG/receiptprinter.lang (100%) rename {htdocs => public}/langs/bg_BG/resource.lang (100%) rename {htdocs => public}/langs/bg_BG/salaries.lang (100%) rename {htdocs => public}/langs/bg_BG/sendings.lang (100%) rename {htdocs => public}/langs/bg_BG/sms.lang (100%) rename {htdocs => public}/langs/bg_BG/stocks.lang (100%) rename {htdocs => public}/langs/bg_BG/supplier_proposal.lang (100%) rename {htdocs => public}/langs/bg_BG/suppliers.lang (100%) rename {htdocs => public}/langs/bg_BG/trips.lang (100%) rename {htdocs => public}/langs/bg_BG/users.lang (100%) rename {htdocs => public}/langs/bg_BG/website.lang (100%) rename {htdocs => public}/langs/bg_BG/withdrawals.lang (100%) rename {htdocs => public}/langs/bg_BG/workflow.lang (100%) rename {htdocs => public}/langs/bn_BD/accountancy.lang (100%) rename {htdocs => public}/langs/bn_BD/admin.lang (100%) rename {htdocs => public}/langs/bn_BD/agenda.lang (100%) rename {htdocs => public}/langs/bn_BD/banks.lang (100%) rename {htdocs => public}/langs/bn_BD/bills.lang (100%) rename {htdocs => public}/langs/bn_BD/bookmarks.lang (100%) rename {htdocs => public}/langs/bn_BD/boxes.lang (100%) rename {htdocs => public}/langs/bn_BD/cashdesk.lang (100%) rename {htdocs => public}/langs/bn_BD/categories.lang (100%) rename {htdocs => public}/langs/bn_BD/commercial.lang (100%) rename {htdocs => public}/langs/bn_BD/companies.lang (100%) rename {htdocs => public}/langs/bn_BD/compta.lang (100%) rename {htdocs => public}/langs/bn_BD/contracts.lang (100%) rename {htdocs => public}/langs/bn_BD/cron.lang (100%) rename {htdocs => public}/langs/bn_BD/deliveries.lang (100%) rename {htdocs => public}/langs/bn_BD/dict.lang (100%) rename {htdocs => public}/langs/bn_BD/donations.lang (100%) rename {htdocs => public}/langs/bn_BD/ecm.lang (100%) rename {htdocs => public}/langs/bn_BD/errors.lang (100%) rename {htdocs => public}/langs/bn_BD/exports.lang (100%) rename {htdocs => public}/langs/bn_BD/externalsite.lang (100%) rename {htdocs => public}/langs/bn_BD/ftp.lang (100%) rename {htdocs => public}/langs/bn_BD/help.lang (100%) rename {htdocs => public}/langs/bn_BD/holiday.lang (100%) rename {htdocs => public}/langs/bn_BD/hrm.lang (100%) rename {htdocs => public}/langs/bn_BD/incoterm.lang (100%) rename {htdocs => public}/langs/bn_BD/install.lang (100%) rename {htdocs => public}/langs/bn_BD/interventions.lang (100%) rename {htdocs => public}/langs/bn_BD/languages.lang (100%) rename {htdocs => public}/langs/bn_BD/ldap.lang (100%) rename {htdocs => public}/langs/bn_BD/link.lang (100%) rename {htdocs => public}/langs/bn_BD/loan.lang (100%) rename {htdocs => public}/langs/bn_BD/mailmanspip.lang (100%) rename {htdocs => public}/langs/bn_BD/mails.lang (100%) rename {htdocs => public}/langs/bn_BD/main.lang (100%) rename {htdocs => public}/langs/bn_BD/margins.lang (100%) rename {htdocs => public}/langs/bn_BD/members.lang (100%) rename {htdocs => public}/langs/bn_BD/oauth.lang (100%) rename {htdocs => public}/langs/bn_BD/opensurvey.lang (100%) rename {htdocs => public}/langs/bn_BD/orders.lang (100%) rename {htdocs => public}/langs/bn_BD/other.lang (100%) rename {htdocs => public}/langs/bn_BD/paybox.lang (100%) rename {htdocs => public}/langs/bn_BD/paypal.lang (100%) rename {htdocs => public}/langs/bn_BD/printing.lang (100%) rename {htdocs => public}/langs/bn_BD/productbatch.lang (100%) rename {htdocs => public}/langs/bn_BD/products.lang (100%) rename {htdocs => public}/langs/bn_BD/projects.lang (100%) rename {htdocs => public}/langs/bn_BD/propal.lang (100%) rename {htdocs => public}/langs/bn_BD/receiptprinter.lang (100%) rename {htdocs => public}/langs/bn_BD/resource.lang (100%) rename {htdocs => public}/langs/bn_BD/salaries.lang (100%) rename {htdocs => public}/langs/bn_BD/sendings.lang (100%) rename {htdocs => public}/langs/bn_BD/sms.lang (100%) rename {htdocs => public}/langs/bn_BD/stocks.lang (100%) rename {htdocs => public}/langs/bn_BD/supplier_proposal.lang (100%) rename {htdocs => public}/langs/bn_BD/suppliers.lang (100%) rename {htdocs => public}/langs/bn_BD/trips.lang (100%) rename {htdocs => public}/langs/bn_BD/users.lang (100%) rename {htdocs => public}/langs/bn_BD/website.lang (100%) rename {htdocs => public}/langs/bn_BD/withdrawals.lang (100%) rename {htdocs => public}/langs/bn_BD/workflow.lang (100%) rename {htdocs => public}/langs/bs_BA/accountancy.lang (100%) rename {htdocs => public}/langs/bs_BA/admin.lang (100%) rename {htdocs => public}/langs/bs_BA/agenda.lang (100%) rename {htdocs => public}/langs/bs_BA/banks.lang (100%) rename {htdocs => public}/langs/bs_BA/bills.lang (100%) rename {htdocs => public}/langs/bs_BA/bookmarks.lang (100%) rename {htdocs => public}/langs/bs_BA/boxes.lang (100%) rename {htdocs => public}/langs/bs_BA/cashdesk.lang (100%) rename {htdocs => public}/langs/bs_BA/categories.lang (100%) rename {htdocs => public}/langs/bs_BA/commercial.lang (100%) rename {htdocs => public}/langs/bs_BA/companies.lang (100%) rename {htdocs => public}/langs/bs_BA/compta.lang (100%) rename {htdocs => public}/langs/bs_BA/contracts.lang (100%) rename {htdocs => public}/langs/bs_BA/cron.lang (100%) rename {htdocs => public}/langs/bs_BA/deliveries.lang (100%) rename {htdocs => public}/langs/bs_BA/dict.lang (100%) rename {htdocs => public}/langs/bs_BA/donations.lang (100%) rename {htdocs => public}/langs/bs_BA/ecm.lang (100%) rename {htdocs => public}/langs/bs_BA/errors.lang (100%) rename {htdocs => public}/langs/bs_BA/exports.lang (100%) rename {htdocs => public}/langs/bs_BA/externalsite.lang (100%) rename {htdocs => public}/langs/bs_BA/ftp.lang (100%) rename {htdocs => public}/langs/bs_BA/help.lang (100%) rename {htdocs => public}/langs/bs_BA/holiday.lang (100%) rename {htdocs => public}/langs/bs_BA/hrm.lang (100%) rename {htdocs => public}/langs/bs_BA/incoterm.lang (100%) rename {htdocs => public}/langs/bs_BA/install.lang (100%) rename {htdocs => public}/langs/bs_BA/interventions.lang (100%) rename {htdocs => public}/langs/bs_BA/languages.lang (100%) rename {htdocs => public}/langs/bs_BA/ldap.lang (100%) rename {htdocs => public}/langs/bs_BA/link.lang (100%) rename {htdocs => public}/langs/bs_BA/loan.lang (100%) rename {htdocs => public}/langs/bs_BA/mailmanspip.lang (100%) rename {htdocs => public}/langs/bs_BA/mails.lang (100%) rename {htdocs => public}/langs/bs_BA/main.lang (100%) rename {htdocs => public}/langs/bs_BA/margins.lang (100%) rename {htdocs => public}/langs/bs_BA/members.lang (100%) rename {htdocs => public}/langs/bs_BA/oauth.lang (100%) rename {htdocs => public}/langs/bs_BA/opensurvey.lang (100%) rename {htdocs => public}/langs/bs_BA/orders.lang (100%) rename {htdocs => public}/langs/bs_BA/other.lang (100%) rename {htdocs => public}/langs/bs_BA/paybox.lang (100%) rename {htdocs => public}/langs/bs_BA/paypal.lang (100%) rename {htdocs => public}/langs/bs_BA/printing.lang (100%) rename {htdocs => public}/langs/bs_BA/productbatch.lang (100%) rename {htdocs => public}/langs/bs_BA/products.lang (100%) rename {htdocs => public}/langs/bs_BA/projects.lang (100%) rename {htdocs => public}/langs/bs_BA/propal.lang (100%) rename {htdocs => public}/langs/bs_BA/receiptprinter.lang (100%) rename {htdocs => public}/langs/bs_BA/resource.lang (100%) rename {htdocs => public}/langs/bs_BA/salaries.lang (100%) rename {htdocs => public}/langs/bs_BA/sendings.lang (100%) rename {htdocs => public}/langs/bs_BA/sms.lang (100%) rename {htdocs => public}/langs/bs_BA/stocks.lang (100%) rename {htdocs => public}/langs/bs_BA/supplier_proposal.lang (100%) rename {htdocs => public}/langs/bs_BA/suppliers.lang (100%) rename {htdocs => public}/langs/bs_BA/trips.lang (100%) rename {htdocs => public}/langs/bs_BA/users.lang (100%) rename {htdocs => public}/langs/bs_BA/website.lang (100%) rename {htdocs => public}/langs/bs_BA/withdrawals.lang (100%) rename {htdocs => public}/langs/bs_BA/workflow.lang (100%) rename {htdocs => public}/langs/ca_ES/accountancy.lang (100%) rename {htdocs => public}/langs/ca_ES/admin.lang (100%) rename {htdocs => public}/langs/ca_ES/agenda.lang (100%) rename {htdocs => public}/langs/ca_ES/banks.lang (100%) rename {htdocs => public}/langs/ca_ES/bills.lang (100%) rename {htdocs => public}/langs/ca_ES/bookmarks.lang (100%) rename {htdocs => public}/langs/ca_ES/boxes.lang (100%) rename {htdocs => public}/langs/ca_ES/cashdesk.lang (100%) rename {htdocs => public}/langs/ca_ES/categories.lang (100%) rename {htdocs => public}/langs/ca_ES/commercial.lang (100%) rename {htdocs => public}/langs/ca_ES/companies.lang (100%) rename {htdocs => public}/langs/ca_ES/compta.lang (100%) rename {htdocs => public}/langs/ca_ES/contracts.lang (100%) rename {htdocs => public}/langs/ca_ES/cron.lang (100%) rename {htdocs => public}/langs/ca_ES/deliveries.lang (100%) rename {htdocs => public}/langs/ca_ES/dict.lang (100%) rename {htdocs => public}/langs/ca_ES/donations.lang (100%) rename {htdocs => public}/langs/ca_ES/ecm.lang (100%) rename {htdocs => public}/langs/ca_ES/errors.lang (100%) rename {htdocs => public}/langs/ca_ES/exports.lang (100%) rename {htdocs => public}/langs/ca_ES/externalsite.lang (100%) rename {htdocs => public}/langs/ca_ES/ftp.lang (100%) rename {htdocs => public}/langs/ca_ES/help.lang (100%) rename {htdocs => public}/langs/ca_ES/holiday.lang (100%) rename {htdocs => public}/langs/ca_ES/hrm.lang (100%) rename {htdocs => public}/langs/ca_ES/incoterm.lang (100%) rename {htdocs => public}/langs/ca_ES/install.lang (100%) rename {htdocs => public}/langs/ca_ES/interventions.lang (100%) rename {htdocs => public}/langs/ca_ES/languages.lang (100%) rename {htdocs => public}/langs/ca_ES/ldap.lang (100%) rename {htdocs => public}/langs/ca_ES/link.lang (100%) rename {htdocs => public}/langs/ca_ES/loan.lang (100%) rename {htdocs => public}/langs/ca_ES/mailmanspip.lang (100%) rename {htdocs => public}/langs/ca_ES/mails.lang (100%) rename {htdocs => public}/langs/ca_ES/main.lang (100%) rename {htdocs => public}/langs/ca_ES/margins.lang (100%) rename {htdocs => public}/langs/ca_ES/members.lang (100%) rename {htdocs => public}/langs/ca_ES/oauth.lang (100%) rename {htdocs => public}/langs/ca_ES/opensurvey.lang (100%) rename {htdocs => public}/langs/ca_ES/orders.lang (100%) rename {htdocs => public}/langs/ca_ES/other.lang (100%) rename {htdocs => public}/langs/ca_ES/paybox.lang (100%) rename {htdocs => public}/langs/ca_ES/paypal.lang (100%) rename {htdocs => public}/langs/ca_ES/printing.lang (100%) rename {htdocs => public}/langs/ca_ES/productbatch.lang (100%) rename {htdocs => public}/langs/ca_ES/products.lang (100%) rename {htdocs => public}/langs/ca_ES/projects.lang (100%) rename {htdocs => public}/langs/ca_ES/propal.lang (100%) rename {htdocs => public}/langs/ca_ES/receiptprinter.lang (100%) rename {htdocs => public}/langs/ca_ES/resource.lang (100%) rename {htdocs => public}/langs/ca_ES/salaries.lang (100%) rename {htdocs => public}/langs/ca_ES/sendings.lang (100%) rename {htdocs => public}/langs/ca_ES/sms.lang (100%) rename {htdocs => public}/langs/ca_ES/stocks.lang (100%) rename {htdocs => public}/langs/ca_ES/supplier_proposal.lang (100%) rename {htdocs => public}/langs/ca_ES/suppliers.lang (100%) rename {htdocs => public}/langs/ca_ES/trips.lang (100%) rename {htdocs => public}/langs/ca_ES/users.lang (100%) rename {htdocs => public}/langs/ca_ES/website.lang (100%) rename {htdocs => public}/langs/ca_ES/withdrawals.lang (100%) rename {htdocs => public}/langs/ca_ES/workflow.lang (100%) rename {htdocs => public}/langs/cs_CZ/accountancy.lang (100%) rename {htdocs => public}/langs/cs_CZ/admin.lang (100%) rename {htdocs => public}/langs/cs_CZ/agenda.lang (100%) rename {htdocs => public}/langs/cs_CZ/banks.lang (100%) rename {htdocs => public}/langs/cs_CZ/bills.lang (100%) rename {htdocs => public}/langs/cs_CZ/bookmarks.lang (100%) rename {htdocs => public}/langs/cs_CZ/boxes.lang (100%) rename {htdocs => public}/langs/cs_CZ/cashdesk.lang (100%) rename {htdocs => public}/langs/cs_CZ/categories.lang (100%) rename {htdocs => public}/langs/cs_CZ/commercial.lang (100%) rename {htdocs => public}/langs/cs_CZ/companies.lang (100%) rename {htdocs => public}/langs/cs_CZ/compta.lang (100%) rename {htdocs => public}/langs/cs_CZ/contracts.lang (100%) rename {htdocs => public}/langs/cs_CZ/cron.lang (100%) rename {htdocs => public}/langs/cs_CZ/deliveries.lang (100%) rename {htdocs => public}/langs/cs_CZ/dict.lang (100%) rename {htdocs => public}/langs/cs_CZ/donations.lang (100%) rename {htdocs => public}/langs/cs_CZ/ecm.lang (100%) rename {htdocs => public}/langs/cs_CZ/errors.lang (100%) rename {htdocs => public}/langs/cs_CZ/exports.lang (100%) rename {htdocs => public}/langs/cs_CZ/externalsite.lang (100%) rename {htdocs => public}/langs/cs_CZ/ftp.lang (100%) rename {htdocs => public}/langs/cs_CZ/help.lang (100%) rename {htdocs => public}/langs/cs_CZ/holiday.lang (100%) rename {htdocs => public}/langs/cs_CZ/hrm.lang (100%) rename {htdocs => public}/langs/cs_CZ/incoterm.lang (100%) rename {htdocs => public}/langs/cs_CZ/install.lang (100%) rename {htdocs => public}/langs/cs_CZ/interventions.lang (100%) rename {htdocs => public}/langs/cs_CZ/languages.lang (100%) rename {htdocs => public}/langs/cs_CZ/ldap.lang (100%) rename {htdocs => public}/langs/cs_CZ/link.lang (100%) rename {htdocs => public}/langs/cs_CZ/loan.lang (100%) rename {htdocs => public}/langs/cs_CZ/mailmanspip.lang (100%) rename {htdocs => public}/langs/cs_CZ/mails.lang (100%) rename {htdocs => public}/langs/cs_CZ/main.lang (100%) rename {htdocs => public}/langs/cs_CZ/margins.lang (100%) rename {htdocs => public}/langs/cs_CZ/members.lang (100%) rename {htdocs => public}/langs/cs_CZ/oauth.lang (100%) rename {htdocs => public}/langs/cs_CZ/opensurvey.lang (100%) rename {htdocs => public}/langs/cs_CZ/orders.lang (100%) rename {htdocs => public}/langs/cs_CZ/other.lang (100%) rename {htdocs => public}/langs/cs_CZ/paybox.lang (100%) rename {htdocs => public}/langs/cs_CZ/paypal.lang (100%) rename {htdocs => public}/langs/cs_CZ/printing.lang (100%) rename {htdocs => public}/langs/cs_CZ/productbatch.lang (100%) rename {htdocs => public}/langs/cs_CZ/products.lang (100%) rename {htdocs => public}/langs/cs_CZ/projects.lang (100%) rename {htdocs => public}/langs/cs_CZ/propal.lang (100%) rename {htdocs => public}/langs/cs_CZ/receiptprinter.lang (100%) rename {htdocs => public}/langs/cs_CZ/resource.lang (100%) rename {htdocs => public}/langs/cs_CZ/salaries.lang (100%) rename {htdocs => public}/langs/cs_CZ/sendings.lang (100%) rename {htdocs => public}/langs/cs_CZ/sms.lang (100%) rename {htdocs => public}/langs/cs_CZ/stocks.lang (100%) rename {htdocs => public}/langs/cs_CZ/supplier_proposal.lang (100%) rename {htdocs => public}/langs/cs_CZ/suppliers.lang (100%) rename {htdocs => public}/langs/cs_CZ/trips.lang (100%) rename {htdocs => public}/langs/cs_CZ/users.lang (100%) rename {htdocs => public}/langs/cs_CZ/website.lang (100%) rename {htdocs => public}/langs/cs_CZ/withdrawals.lang (100%) rename {htdocs => public}/langs/cs_CZ/workflow.lang (100%) rename {htdocs => public}/langs/da_DK/accountancy.lang (100%) rename {htdocs => public}/langs/da_DK/admin.lang (100%) rename {htdocs => public}/langs/da_DK/agenda.lang (100%) rename {htdocs => public}/langs/da_DK/banks.lang (100%) rename {htdocs => public}/langs/da_DK/bills.lang (100%) rename {htdocs => public}/langs/da_DK/bookmarks.lang (100%) rename {htdocs => public}/langs/da_DK/boxes.lang (100%) rename {htdocs => public}/langs/da_DK/cashdesk.lang (100%) rename {htdocs => public}/langs/da_DK/categories.lang (100%) rename {htdocs => public}/langs/da_DK/commercial.lang (100%) rename {htdocs => public}/langs/da_DK/companies.lang (100%) rename {htdocs => public}/langs/da_DK/compta.lang (100%) rename {htdocs => public}/langs/da_DK/contracts.lang (100%) rename {htdocs => public}/langs/da_DK/cron.lang (100%) rename {htdocs => public}/langs/da_DK/deliveries.lang (100%) rename {htdocs => public}/langs/da_DK/dict.lang (100%) rename {htdocs => public}/langs/da_DK/donations.lang (100%) rename {htdocs => public}/langs/da_DK/ecm.lang (100%) rename {htdocs => public}/langs/da_DK/errors.lang (100%) rename {htdocs => public}/langs/da_DK/exports.lang (100%) rename {htdocs => public}/langs/da_DK/externalsite.lang (100%) rename {htdocs => public}/langs/da_DK/ftp.lang (100%) rename {htdocs => public}/langs/da_DK/help.lang (100%) rename {htdocs => public}/langs/da_DK/holiday.lang (100%) rename {htdocs => public}/langs/da_DK/hrm.lang (100%) rename {htdocs => public}/langs/da_DK/incoterm.lang (100%) rename {htdocs => public}/langs/da_DK/install.lang (100%) rename {htdocs => public}/langs/da_DK/interventions.lang (100%) rename {htdocs => public}/langs/da_DK/languages.lang (100%) rename {htdocs => public}/langs/da_DK/ldap.lang (100%) rename {htdocs => public}/langs/da_DK/link.lang (100%) rename {htdocs => public}/langs/da_DK/loan.lang (100%) rename {htdocs => public}/langs/da_DK/mailmanspip.lang (100%) rename {htdocs => public}/langs/da_DK/mails.lang (100%) rename {htdocs => public}/langs/da_DK/main.lang (100%) rename {htdocs => public}/langs/da_DK/margins.lang (100%) rename {htdocs => public}/langs/da_DK/members.lang (100%) rename {htdocs => public}/langs/da_DK/oauth.lang (100%) rename {htdocs => public}/langs/da_DK/opensurvey.lang (100%) rename {htdocs => public}/langs/da_DK/orders.lang (100%) rename {htdocs => public}/langs/da_DK/other.lang (100%) rename {htdocs => public}/langs/da_DK/paybox.lang (100%) rename {htdocs => public}/langs/da_DK/paypal.lang (100%) rename {htdocs => public}/langs/da_DK/printing.lang (100%) rename {htdocs => public}/langs/da_DK/productbatch.lang (100%) rename {htdocs => public}/langs/da_DK/products.lang (100%) rename {htdocs => public}/langs/da_DK/projects.lang (100%) rename {htdocs => public}/langs/da_DK/propal.lang (100%) rename {htdocs => public}/langs/da_DK/receiptprinter.lang (100%) rename {htdocs => public}/langs/da_DK/resource.lang (100%) rename {htdocs => public}/langs/da_DK/salaries.lang (100%) rename {htdocs => public}/langs/da_DK/sendings.lang (100%) rename {htdocs => public}/langs/da_DK/sms.lang (100%) rename {htdocs => public}/langs/da_DK/stocks.lang (100%) rename {htdocs => public}/langs/da_DK/supplier_proposal.lang (100%) rename {htdocs => public}/langs/da_DK/suppliers.lang (100%) rename {htdocs => public}/langs/da_DK/trips.lang (100%) rename {htdocs => public}/langs/da_DK/users.lang (100%) rename {htdocs => public}/langs/da_DK/website.lang (100%) rename {htdocs => public}/langs/da_DK/withdrawals.lang (100%) rename {htdocs => public}/langs/da_DK/workflow.lang (100%) rename {htdocs => public}/langs/de_AT/accountancy.lang (100%) rename {htdocs => public}/langs/de_AT/admin.lang (100%) rename {htdocs => public}/langs/de_AT/agenda.lang (100%) rename {htdocs => public}/langs/de_AT/banks.lang (100%) rename {htdocs => public}/langs/de_AT/bills.lang (100%) rename {htdocs => public}/langs/de_AT/bookmarks.lang (100%) rename {htdocs => public}/langs/de_AT/boxes.lang (100%) rename {htdocs => public}/langs/de_AT/cashdesk.lang (100%) rename {htdocs => public}/langs/de_AT/categories.lang (100%) rename {htdocs => public}/langs/de_AT/commercial.lang (100%) rename {htdocs => public}/langs/de_AT/companies.lang (100%) rename {htdocs => public}/langs/de_AT/compta.lang (100%) rename {htdocs => public}/langs/de_AT/contracts.lang (100%) rename {htdocs => public}/langs/de_AT/cron.lang (100%) rename {htdocs => public}/langs/de_AT/deliveries.lang (100%) rename {htdocs => public}/langs/de_AT/dict.lang (100%) rename {htdocs => public}/langs/de_AT/donations.lang (100%) rename {htdocs => public}/langs/de_AT/ecm.lang (100%) rename {htdocs => public}/langs/de_AT/errors.lang (100%) rename {htdocs => public}/langs/de_AT/exports.lang (100%) rename {htdocs => public}/langs/de_AT/externalsite.lang (100%) rename {htdocs => public}/langs/de_AT/ftp.lang (100%) rename {htdocs => public}/langs/de_AT/help.lang (100%) rename {htdocs => public}/langs/de_AT/holiday.lang (100%) rename {htdocs => public}/langs/de_AT/hrm.lang (100%) rename {htdocs => public}/langs/de_AT/incoterm.lang (100%) rename {htdocs => public}/langs/de_AT/install.lang (100%) rename {htdocs => public}/langs/de_AT/interventions.lang (100%) rename {htdocs => public}/langs/de_AT/languages.lang (100%) rename {htdocs => public}/langs/de_AT/ldap.lang (100%) rename {htdocs => public}/langs/de_AT/link.lang (100%) rename {htdocs => public}/langs/de_AT/loan.lang (100%) rename {htdocs => public}/langs/de_AT/mailmanspip.lang (100%) rename {htdocs => public}/langs/de_AT/mails.lang (100%) rename {htdocs => public}/langs/de_AT/main.lang (100%) rename {htdocs => public}/langs/de_AT/margins.lang (100%) rename {htdocs => public}/langs/de_AT/members.lang (100%) rename {htdocs => public}/langs/de_AT/oauth.lang (100%) rename {htdocs => public}/langs/de_AT/opensurvey.lang (100%) rename {htdocs => public}/langs/de_AT/orders.lang (100%) rename {htdocs => public}/langs/de_AT/other.lang (100%) rename {htdocs => public}/langs/de_AT/paybox.lang (100%) rename {htdocs => public}/langs/de_AT/paypal.lang (100%) rename {htdocs => public}/langs/de_AT/printing.lang (100%) rename {htdocs => public}/langs/de_AT/productbatch.lang (100%) rename {htdocs => public}/langs/de_AT/products.lang (100%) rename {htdocs => public}/langs/de_AT/projects.lang (100%) rename {htdocs => public}/langs/de_AT/propal.lang (100%) rename {htdocs => public}/langs/de_AT/receiptprinter.lang (100%) rename {htdocs => public}/langs/de_AT/resource.lang (100%) rename {htdocs => public}/langs/de_AT/salaries.lang (100%) rename {htdocs => public}/langs/de_AT/sendings.lang (100%) rename {htdocs => public}/langs/de_AT/sms.lang (100%) rename {htdocs => public}/langs/de_AT/stocks.lang (100%) rename {htdocs => public}/langs/de_AT/supplier_proposal.lang (100%) rename {htdocs => public}/langs/de_AT/suppliers.lang (100%) rename {htdocs => public}/langs/de_AT/trips.lang (100%) rename {htdocs => public}/langs/de_AT/users.lang (100%) rename {htdocs => public}/langs/de_AT/website.lang (100%) rename {htdocs => public}/langs/de_AT/withdrawals.lang (100%) rename {htdocs => public}/langs/de_AT/workflow.lang (100%) rename {htdocs => public}/langs/de_CH/accountancy.lang (100%) rename {htdocs => public}/langs/de_CH/admin.lang (100%) rename {htdocs => public}/langs/de_CH/agenda.lang (100%) rename {htdocs => public}/langs/de_CH/banks.lang (100%) rename {htdocs => public}/langs/de_CH/bills.lang (100%) rename {htdocs => public}/langs/de_CH/bookmarks.lang (100%) rename {htdocs => public}/langs/de_CH/boxes.lang (100%) rename {htdocs => public}/langs/de_CH/cashdesk.lang (100%) rename {htdocs => public}/langs/de_CH/categories.lang (100%) rename {htdocs => public}/langs/de_CH/commercial.lang (100%) rename {htdocs => public}/langs/de_CH/companies.lang (100%) rename {htdocs => public}/langs/de_CH/compta.lang (100%) rename {htdocs => public}/langs/de_CH/contracts.lang (100%) rename {htdocs => public}/langs/de_CH/cron.lang (100%) rename {htdocs => public}/langs/de_CH/deliveries.lang (100%) rename {htdocs => public}/langs/de_CH/dict.lang (100%) rename {htdocs => public}/langs/de_CH/donations.lang (100%) rename {htdocs => public}/langs/de_CH/ecm.lang (100%) rename {htdocs => public}/langs/de_CH/errors.lang (100%) rename {htdocs => public}/langs/de_CH/exports.lang (100%) rename {htdocs => public}/langs/de_CH/externalsite.lang (100%) rename {htdocs => public}/langs/de_CH/ftp.lang (100%) rename {htdocs => public}/langs/de_CH/help.lang (100%) rename {htdocs => public}/langs/de_CH/holiday.lang (100%) rename {htdocs => public}/langs/de_CH/hrm.lang (100%) rename {htdocs => public}/langs/de_CH/incoterm.lang (100%) rename {htdocs => public}/langs/de_CH/install.lang (100%) rename {htdocs => public}/langs/de_CH/interventions.lang (100%) rename {htdocs => public}/langs/de_CH/languages.lang (100%) rename {htdocs => public}/langs/de_CH/ldap.lang (100%) rename {htdocs => public}/langs/de_CH/link.lang (100%) rename {htdocs => public}/langs/de_CH/loan.lang (100%) rename {htdocs => public}/langs/de_CH/mailmanspip.lang (100%) rename {htdocs => public}/langs/de_CH/mails.lang (100%) rename {htdocs => public}/langs/de_CH/main.lang (100%) rename {htdocs => public}/langs/de_CH/margins.lang (100%) rename {htdocs => public}/langs/de_CH/members.lang (100%) rename {htdocs => public}/langs/de_CH/oauth.lang (100%) rename {htdocs => public}/langs/de_CH/opensurvey.lang (100%) rename {htdocs => public}/langs/de_CH/orders.lang (100%) rename {htdocs => public}/langs/de_CH/other.lang (100%) rename {htdocs => public}/langs/de_CH/paybox.lang (100%) rename {htdocs => public}/langs/de_CH/paypal.lang (100%) rename {htdocs => public}/langs/de_CH/printing.lang (100%) rename {htdocs => public}/langs/de_CH/productbatch.lang (100%) rename {htdocs => public}/langs/de_CH/products.lang (100%) rename {htdocs => public}/langs/de_CH/projects.lang (100%) rename {htdocs => public}/langs/de_CH/propal.lang (100%) rename {htdocs => public}/langs/de_CH/receiptprinter.lang (100%) rename {htdocs => public}/langs/de_CH/resource.lang (100%) rename {htdocs => public}/langs/de_CH/salaries.lang (100%) rename {htdocs => public}/langs/de_CH/sendings.lang (100%) rename {htdocs => public}/langs/de_CH/sms.lang (100%) rename {htdocs => public}/langs/de_CH/stocks.lang (100%) rename {htdocs => public}/langs/de_CH/supplier_proposal.lang (100%) rename {htdocs => public}/langs/de_CH/suppliers.lang (100%) rename {htdocs => public}/langs/de_CH/trips.lang (100%) rename {htdocs => public}/langs/de_CH/users.lang (100%) rename {htdocs => public}/langs/de_CH/website.lang (100%) rename {htdocs => public}/langs/de_CH/withdrawals.lang (100%) rename {htdocs => public}/langs/de_CH/workflow.lang (100%) rename {htdocs => public}/langs/de_DE/accountancy.lang (100%) rename {htdocs => public}/langs/de_DE/admin.lang (100%) rename {htdocs => public}/langs/de_DE/agenda.lang (100%) rename {htdocs => public}/langs/de_DE/banks.lang (100%) rename {htdocs => public}/langs/de_DE/bills.lang (100%) rename {htdocs => public}/langs/de_DE/bookmarks.lang (100%) rename {htdocs => public}/langs/de_DE/boxes.lang (100%) rename {htdocs => public}/langs/de_DE/cashdesk.lang (100%) rename {htdocs => public}/langs/de_DE/categories.lang (100%) rename {htdocs => public}/langs/de_DE/commercial.lang (100%) rename {htdocs => public}/langs/de_DE/companies.lang (100%) rename {htdocs => public}/langs/de_DE/compta.lang (100%) rename {htdocs => public}/langs/de_DE/contracts.lang (100%) rename {htdocs => public}/langs/de_DE/cron.lang (100%) rename {htdocs => public}/langs/de_DE/deliveries.lang (100%) rename {htdocs => public}/langs/de_DE/dict.lang (100%) rename {htdocs => public}/langs/de_DE/donations.lang (100%) rename {htdocs => public}/langs/de_DE/ecm.lang (100%) rename {htdocs => public}/langs/de_DE/errors.lang (100%) rename {htdocs => public}/langs/de_DE/exports.lang (100%) rename {htdocs => public}/langs/de_DE/externalsite.lang (100%) rename {htdocs => public}/langs/de_DE/ftp.lang (100%) rename {htdocs => public}/langs/de_DE/help.lang (100%) rename {htdocs => public}/langs/de_DE/holiday.lang (100%) rename {htdocs => public}/langs/de_DE/hrm.lang (100%) rename {htdocs => public}/langs/de_DE/incoterm.lang (100%) rename {htdocs => public}/langs/de_DE/install.lang (100%) rename {htdocs => public}/langs/de_DE/interventions.lang (100%) rename {htdocs => public}/langs/de_DE/languages.lang (100%) rename {htdocs => public}/langs/de_DE/ldap.lang (100%) rename {htdocs => public}/langs/de_DE/link.lang (100%) rename {htdocs => public}/langs/de_DE/loan.lang (100%) rename {htdocs => public}/langs/de_DE/mailmanspip.lang (100%) rename {htdocs => public}/langs/de_DE/mails.lang (100%) rename {htdocs => public}/langs/de_DE/main.lang (100%) rename {htdocs => public}/langs/de_DE/margins.lang (100%) rename {htdocs => public}/langs/de_DE/members.lang (100%) rename {htdocs => public}/langs/de_DE/oauth.lang (100%) rename {htdocs => public}/langs/de_DE/opensurvey.lang (100%) rename {htdocs => public}/langs/de_DE/orders.lang (100%) rename {htdocs => public}/langs/de_DE/other.lang (100%) rename {htdocs => public}/langs/de_DE/paybox.lang (100%) rename {htdocs => public}/langs/de_DE/paypal.lang (100%) rename {htdocs => public}/langs/de_DE/printing.lang (100%) rename {htdocs => public}/langs/de_DE/productbatch.lang (100%) rename {htdocs => public}/langs/de_DE/products.lang (100%) rename {htdocs => public}/langs/de_DE/projects.lang (100%) rename {htdocs => public}/langs/de_DE/propal.lang (100%) rename {htdocs => public}/langs/de_DE/receiptprinter.lang (100%) rename {htdocs => public}/langs/de_DE/resource.lang (100%) rename {htdocs => public}/langs/de_DE/salaries.lang (100%) rename {htdocs => public}/langs/de_DE/sendings.lang (100%) rename {htdocs => public}/langs/de_DE/sms.lang (100%) rename {htdocs => public}/langs/de_DE/stocks.lang (100%) rename {htdocs => public}/langs/de_DE/supplier_proposal.lang (100%) rename {htdocs => public}/langs/de_DE/suppliers.lang (100%) rename {htdocs => public}/langs/de_DE/trips.lang (100%) rename {htdocs => public}/langs/de_DE/users.lang (100%) rename {htdocs => public}/langs/de_DE/website.lang (100%) rename {htdocs => public}/langs/de_DE/withdrawals.lang (100%) rename {htdocs => public}/langs/de_DE/workflow.lang (100%) rename {htdocs => public}/langs/el_GR/accountancy.lang (100%) rename {htdocs => public}/langs/el_GR/admin.lang (100%) rename {htdocs => public}/langs/el_GR/agenda.lang (100%) rename {htdocs => public}/langs/el_GR/banks.lang (100%) rename {htdocs => public}/langs/el_GR/bills.lang (100%) rename {htdocs => public}/langs/el_GR/bookmarks.lang (100%) rename {htdocs => public}/langs/el_GR/boxes.lang (100%) rename {htdocs => public}/langs/el_GR/cashdesk.lang (100%) rename {htdocs => public}/langs/el_GR/categories.lang (100%) rename {htdocs => public}/langs/el_GR/commercial.lang (100%) rename {htdocs => public}/langs/el_GR/commissions.lang (100%) rename {htdocs => public}/langs/el_GR/companies.lang (100%) rename {htdocs => public}/langs/el_GR/compta.lang (100%) rename {htdocs => public}/langs/el_GR/contracts.lang (100%) rename {htdocs => public}/langs/el_GR/cron.lang (100%) rename {htdocs => public}/langs/el_GR/deliveries.lang (100%) rename {htdocs => public}/langs/el_GR/dict.lang (100%) rename {htdocs => public}/langs/el_GR/donations.lang (100%) rename {htdocs => public}/langs/el_GR/ecm.lang (100%) rename {htdocs => public}/langs/el_GR/errors.lang (100%) rename {htdocs => public}/langs/el_GR/exports.lang (100%) rename {htdocs => public}/langs/el_GR/externalsite.lang (100%) rename {htdocs => public}/langs/el_GR/ftp.lang (100%) rename {htdocs => public}/langs/el_GR/help.lang (100%) rename {htdocs => public}/langs/el_GR/holiday.lang (100%) rename {htdocs => public}/langs/el_GR/hrm.lang (100%) rename {htdocs => public}/langs/el_GR/incoterm.lang (100%) rename {htdocs => public}/langs/el_GR/install.lang (100%) rename {htdocs => public}/langs/el_GR/interventions.lang (100%) rename {htdocs => public}/langs/el_GR/languages.lang (100%) rename {htdocs => public}/langs/el_GR/ldap.lang (100%) rename {htdocs => public}/langs/el_GR/link.lang (100%) rename {htdocs => public}/langs/el_GR/loan.lang (100%) rename {htdocs => public}/langs/el_GR/mailmanspip.lang (100%) rename {htdocs => public}/langs/el_GR/mails.lang (100%) rename {htdocs => public}/langs/el_GR/main.lang (100%) rename {htdocs => public}/langs/el_GR/margins.lang (100%) rename {htdocs => public}/langs/el_GR/members.lang (100%) rename {htdocs => public}/langs/el_GR/oauth.lang (100%) rename {htdocs => public}/langs/el_GR/opensurvey.lang (100%) rename {htdocs => public}/langs/el_GR/orders.lang (100%) rename {htdocs => public}/langs/el_GR/other.lang (100%) rename {htdocs => public}/langs/el_GR/paybox.lang (100%) rename {htdocs => public}/langs/el_GR/paypal.lang (100%) rename {htdocs => public}/langs/el_GR/printing.lang (100%) rename {htdocs => public}/langs/el_GR/productbatch.lang (100%) rename {htdocs => public}/langs/el_GR/products.lang (100%) rename {htdocs => public}/langs/el_GR/projects.lang (100%) rename {htdocs => public}/langs/el_GR/propal.lang (100%) rename {htdocs => public}/langs/el_GR/receiptprinter.lang (100%) rename {htdocs => public}/langs/el_GR/resource.lang (100%) rename {htdocs => public}/langs/el_GR/salaries.lang (100%) rename {htdocs => public}/langs/el_GR/sendings.lang (100%) rename {htdocs => public}/langs/el_GR/sms.lang (100%) rename {htdocs => public}/langs/el_GR/stocks.lang (100%) rename {htdocs => public}/langs/el_GR/supplier_proposal.lang (100%) rename {htdocs => public}/langs/el_GR/suppliers.lang (100%) rename {htdocs => public}/langs/el_GR/trips.lang (100%) rename {htdocs => public}/langs/el_GR/users.lang (100%) rename {htdocs => public}/langs/el_GR/website.lang (100%) rename {htdocs => public}/langs/el_GR/withdrawals.lang (100%) rename {htdocs => public}/langs/el_GR/workflow.lang (100%) rename {htdocs => public}/langs/en_AU/accountancy.lang (100%) rename {htdocs => public}/langs/en_AU/admin.lang (100%) rename {htdocs => public}/langs/en_AU/agenda.lang (100%) rename {htdocs => public}/langs/en_AU/banks.lang (100%) rename {htdocs => public}/langs/en_AU/bills.lang (100%) rename {htdocs => public}/langs/en_AU/bookmarks.lang (100%) rename {htdocs => public}/langs/en_AU/boxes.lang (100%) rename {htdocs => public}/langs/en_AU/cashdesk.lang (100%) rename {htdocs => public}/langs/en_AU/categories.lang (100%) rename {htdocs => public}/langs/en_AU/commercial.lang (100%) rename {htdocs => public}/langs/en_AU/companies.lang (100%) rename {htdocs => public}/langs/en_AU/compta.lang (100%) rename {htdocs => public}/langs/en_AU/contracts.lang (100%) rename {htdocs => public}/langs/en_AU/cron.lang (100%) rename {htdocs => public}/langs/en_AU/deliveries.lang (100%) rename {htdocs => public}/langs/en_AU/dict.lang (100%) rename {htdocs => public}/langs/en_AU/donations.lang (100%) rename {htdocs => public}/langs/en_AU/ecm.lang (100%) rename {htdocs => public}/langs/en_AU/errors.lang (100%) rename {htdocs => public}/langs/en_AU/exports.lang (100%) rename {htdocs => public}/langs/en_AU/externalsite.lang (100%) rename {htdocs => public}/langs/en_AU/ftp.lang (100%) rename {htdocs => public}/langs/en_AU/help.lang (100%) rename {htdocs => public}/langs/en_AU/holiday.lang (100%) rename {htdocs => public}/langs/en_AU/hrm.lang (100%) rename {htdocs => public}/langs/en_AU/incoterm.lang (100%) rename {htdocs => public}/langs/en_AU/install.lang (100%) rename {htdocs => public}/langs/en_AU/interventions.lang (100%) rename {htdocs => public}/langs/en_AU/languages.lang (100%) rename {htdocs => public}/langs/en_AU/ldap.lang (100%) rename {htdocs => public}/langs/en_AU/link.lang (100%) rename {htdocs => public}/langs/en_AU/loan.lang (100%) rename {htdocs => public}/langs/en_AU/mailmanspip.lang (100%) rename {htdocs => public}/langs/en_AU/mails.lang (100%) rename {htdocs => public}/langs/en_AU/main.lang (100%) rename {htdocs => public}/langs/en_AU/margins.lang (100%) rename {htdocs => public}/langs/en_AU/members.lang (100%) rename {htdocs => public}/langs/en_AU/oauth.lang (100%) rename {htdocs => public}/langs/en_AU/opensurvey.lang (100%) rename {htdocs => public}/langs/en_AU/orders.lang (100%) rename {htdocs => public}/langs/en_AU/other.lang (100%) rename {htdocs => public}/langs/en_AU/paybox.lang (100%) rename {htdocs => public}/langs/en_AU/paypal.lang (100%) rename {htdocs => public}/langs/en_AU/printing.lang (100%) rename {htdocs => public}/langs/en_AU/productbatch.lang (100%) rename {htdocs => public}/langs/en_AU/products.lang (100%) rename {htdocs => public}/langs/en_AU/projects.lang (100%) rename {htdocs => public}/langs/en_AU/propal.lang (100%) rename {htdocs => public}/langs/en_AU/receiptprinter.lang (100%) rename {htdocs => public}/langs/en_AU/resource.lang (100%) rename {htdocs => public}/langs/en_AU/salaries.lang (100%) rename {htdocs => public}/langs/en_AU/sendings.lang (100%) rename {htdocs => public}/langs/en_AU/sms.lang (100%) rename {htdocs => public}/langs/en_AU/stocks.lang (100%) rename {htdocs => public}/langs/en_AU/supplier_proposal.lang (100%) rename {htdocs => public}/langs/en_AU/suppliers.lang (100%) rename {htdocs => public}/langs/en_AU/trips.lang (100%) rename {htdocs => public}/langs/en_AU/users.lang (100%) rename {htdocs => public}/langs/en_AU/website.lang (100%) rename {htdocs => public}/langs/en_AU/withdrawals.lang (100%) rename {htdocs => public}/langs/en_AU/workflow.lang (100%) rename {htdocs => public}/langs/en_CA/accountancy.lang (100%) rename {htdocs => public}/langs/en_CA/admin.lang (100%) rename {htdocs => public}/langs/en_CA/agenda.lang (100%) rename {htdocs => public}/langs/en_CA/banks.lang (100%) rename {htdocs => public}/langs/en_CA/bills.lang (100%) rename {htdocs => public}/langs/en_CA/bookmarks.lang (100%) rename {htdocs => public}/langs/en_CA/boxes.lang (100%) rename {htdocs => public}/langs/en_CA/cashdesk.lang (100%) rename {htdocs => public}/langs/en_CA/categories.lang (100%) rename {htdocs => public}/langs/en_CA/commercial.lang (100%) rename {htdocs => public}/langs/en_CA/companies.lang (100%) rename {htdocs => public}/langs/en_CA/compta.lang (100%) rename {htdocs => public}/langs/en_CA/contracts.lang (100%) rename {htdocs => public}/langs/en_CA/cron.lang (100%) rename {htdocs => public}/langs/en_CA/deliveries.lang (100%) rename {htdocs => public}/langs/en_CA/dict.lang (100%) rename {htdocs => public}/langs/en_CA/donations.lang (100%) rename {htdocs => public}/langs/en_CA/ecm.lang (100%) rename {htdocs => public}/langs/en_CA/errors.lang (100%) rename {htdocs => public}/langs/en_CA/exports.lang (100%) rename {htdocs => public}/langs/en_CA/externalsite.lang (100%) rename {htdocs => public}/langs/en_CA/ftp.lang (100%) rename {htdocs => public}/langs/en_CA/help.lang (100%) rename {htdocs => public}/langs/en_CA/holiday.lang (100%) rename {htdocs => public}/langs/en_CA/hrm.lang (100%) rename {htdocs => public}/langs/en_CA/incoterm.lang (100%) rename {htdocs => public}/langs/en_CA/install.lang (100%) rename {htdocs => public}/langs/en_CA/interventions.lang (100%) rename {htdocs => public}/langs/en_CA/languages.lang (100%) rename {htdocs => public}/langs/en_CA/ldap.lang (100%) rename {htdocs => public}/langs/en_CA/link.lang (100%) rename {htdocs => public}/langs/en_CA/loan.lang (100%) rename {htdocs => public}/langs/en_CA/mailmanspip.lang (100%) rename {htdocs => public}/langs/en_CA/mails.lang (100%) rename {htdocs => public}/langs/en_CA/main.lang (100%) rename {htdocs => public}/langs/en_CA/margins.lang (100%) rename {htdocs => public}/langs/en_CA/members.lang (100%) rename {htdocs => public}/langs/en_CA/oauth.lang (100%) rename {htdocs => public}/langs/en_CA/opensurvey.lang (100%) rename {htdocs => public}/langs/en_CA/orders.lang (100%) rename {htdocs => public}/langs/en_CA/other.lang (100%) rename {htdocs => public}/langs/en_CA/paybox.lang (100%) rename {htdocs => public}/langs/en_CA/paypal.lang (100%) rename {htdocs => public}/langs/en_CA/printing.lang (100%) rename {htdocs => public}/langs/en_CA/productbatch.lang (100%) rename {htdocs => public}/langs/en_CA/products.lang (100%) rename {htdocs => public}/langs/en_CA/projects.lang (100%) rename {htdocs => public}/langs/en_CA/propal.lang (100%) rename {htdocs => public}/langs/en_CA/receiptprinter.lang (100%) rename {htdocs => public}/langs/en_CA/resource.lang (100%) rename {htdocs => public}/langs/en_CA/salaries.lang (100%) rename {htdocs => public}/langs/en_CA/sendings.lang (100%) rename {htdocs => public}/langs/en_CA/sms.lang (100%) rename {htdocs => public}/langs/en_CA/stocks.lang (100%) rename {htdocs => public}/langs/en_CA/supplier_proposal.lang (100%) rename {htdocs => public}/langs/en_CA/suppliers.lang (100%) rename {htdocs => public}/langs/en_CA/trips.lang (100%) rename {htdocs => public}/langs/en_CA/users.lang (100%) rename {htdocs => public}/langs/en_CA/website.lang (100%) rename {htdocs => public}/langs/en_CA/withdrawals.lang (100%) rename {htdocs => public}/langs/en_CA/workflow.lang (100%) rename {htdocs => public}/langs/en_GB/accountancy.lang (100%) rename {htdocs => public}/langs/en_GB/admin.lang (100%) rename {htdocs => public}/langs/en_GB/agenda.lang (100%) rename {htdocs => public}/langs/en_GB/banks.lang (100%) rename {htdocs => public}/langs/en_GB/bills.lang (100%) rename {htdocs => public}/langs/en_GB/bookmarks.lang (100%) rename {htdocs => public}/langs/en_GB/boxes.lang (100%) rename {htdocs => public}/langs/en_GB/cashdesk.lang (100%) rename {htdocs => public}/langs/en_GB/categories.lang (100%) rename {htdocs => public}/langs/en_GB/commercial.lang (100%) rename {htdocs => public}/langs/en_GB/companies.lang (100%) rename {htdocs => public}/langs/en_GB/compta.lang (100%) rename {htdocs => public}/langs/en_GB/contracts.lang (100%) rename {htdocs => public}/langs/en_GB/cron.lang (100%) rename {htdocs => public}/langs/en_GB/deliveries.lang (100%) rename {htdocs => public}/langs/en_GB/dict.lang (100%) rename {htdocs => public}/langs/en_GB/donations.lang (100%) rename {htdocs => public}/langs/en_GB/ecm.lang (100%) rename {htdocs => public}/langs/en_GB/errors.lang (100%) rename {htdocs => public}/langs/en_GB/exports.lang (100%) rename {htdocs => public}/langs/en_GB/externalsite.lang (100%) rename {htdocs => public}/langs/en_GB/ftp.lang (100%) rename {htdocs => public}/langs/en_GB/help.lang (100%) rename {htdocs => public}/langs/en_GB/holiday.lang (100%) rename {htdocs => public}/langs/en_GB/hrm.lang (100%) rename {htdocs => public}/langs/en_GB/incoterm.lang (100%) rename {htdocs => public}/langs/en_GB/install.lang (100%) rename {htdocs => public}/langs/en_GB/interventions.lang (100%) rename {htdocs => public}/langs/en_GB/languages.lang (100%) rename {htdocs => public}/langs/en_GB/ldap.lang (100%) rename {htdocs => public}/langs/en_GB/link.lang (100%) rename {htdocs => public}/langs/en_GB/loan.lang (100%) rename {htdocs => public}/langs/en_GB/mailmanspip.lang (100%) rename {htdocs => public}/langs/en_GB/mails.lang (100%) rename {htdocs => public}/langs/en_GB/main.lang (100%) rename {htdocs => public}/langs/en_GB/margins.lang (100%) rename {htdocs => public}/langs/en_GB/members.lang (100%) rename {htdocs => public}/langs/en_GB/oauth.lang (100%) rename {htdocs => public}/langs/en_GB/opensurvey.lang (100%) rename {htdocs => public}/langs/en_GB/orders.lang (100%) rename {htdocs => public}/langs/en_GB/other.lang (100%) rename {htdocs => public}/langs/en_GB/paybox.lang (100%) rename {htdocs => public}/langs/en_GB/paypal.lang (100%) rename {htdocs => public}/langs/en_GB/printing.lang (100%) rename {htdocs => public}/langs/en_GB/productbatch.lang (100%) rename {htdocs => public}/langs/en_GB/products.lang (100%) rename {htdocs => public}/langs/en_GB/projects.lang (100%) rename {htdocs => public}/langs/en_GB/propal.lang (100%) rename {htdocs => public}/langs/en_GB/receiptprinter.lang (100%) rename {htdocs => public}/langs/en_GB/resource.lang (100%) rename {htdocs => public}/langs/en_GB/salaries.lang (100%) rename {htdocs => public}/langs/en_GB/sendings.lang (100%) rename {htdocs => public}/langs/en_GB/sms.lang (100%) rename {htdocs => public}/langs/en_GB/stocks.lang (100%) rename {htdocs => public}/langs/en_GB/supplier_proposal.lang (100%) rename {htdocs => public}/langs/en_GB/suppliers.lang (100%) rename {htdocs => public}/langs/en_GB/trips.lang (100%) rename {htdocs => public}/langs/en_GB/users.lang (100%) rename {htdocs => public}/langs/en_GB/website.lang (100%) rename {htdocs => public}/langs/en_GB/withdrawals.lang (100%) rename {htdocs => public}/langs/en_GB/workflow.lang (100%) rename {htdocs => public}/langs/en_IN/accountancy.lang (100%) rename {htdocs => public}/langs/en_IN/admin.lang (100%) rename {htdocs => public}/langs/en_IN/agenda.lang (100%) rename {htdocs => public}/langs/en_IN/banks.lang (100%) rename {htdocs => public}/langs/en_IN/bills.lang (100%) rename {htdocs => public}/langs/en_IN/bookmarks.lang (100%) rename {htdocs => public}/langs/en_IN/boxes.lang (100%) rename {htdocs => public}/langs/en_IN/cashdesk.lang (100%) rename {htdocs => public}/langs/en_IN/categories.lang (100%) rename {htdocs => public}/langs/en_IN/commercial.lang (100%) rename {htdocs => public}/langs/en_IN/companies.lang (100%) rename {htdocs => public}/langs/en_IN/compta.lang (100%) rename {htdocs => public}/langs/en_IN/contracts.lang (100%) rename {htdocs => public}/langs/en_IN/cron.lang (100%) rename {htdocs => public}/langs/en_IN/deliveries.lang (100%) rename {htdocs => public}/langs/en_IN/dict.lang (100%) rename {htdocs => public}/langs/en_IN/donations.lang (100%) rename {htdocs => public}/langs/en_IN/ecm.lang (100%) rename {htdocs => public}/langs/en_IN/errors.lang (100%) rename {htdocs => public}/langs/en_IN/exports.lang (100%) rename {htdocs => public}/langs/en_IN/externalsite.lang (100%) rename {htdocs => public}/langs/en_IN/ftp.lang (100%) rename {htdocs => public}/langs/en_IN/help.lang (100%) rename {htdocs => public}/langs/en_IN/holiday.lang (100%) rename {htdocs => public}/langs/en_IN/hrm.lang (100%) rename {htdocs => public}/langs/en_IN/incoterm.lang (100%) rename {htdocs => public}/langs/en_IN/install.lang (100%) rename {htdocs => public}/langs/en_IN/interventions.lang (100%) rename {htdocs => public}/langs/en_IN/languages.lang (100%) rename {htdocs => public}/langs/en_IN/ldap.lang (100%) rename {htdocs => public}/langs/en_IN/link.lang (100%) rename {htdocs => public}/langs/en_IN/loan.lang (100%) rename {htdocs => public}/langs/en_IN/mailmanspip.lang (100%) rename {htdocs => public}/langs/en_IN/mails.lang (100%) rename {htdocs => public}/langs/en_IN/main.lang (100%) rename {htdocs => public}/langs/en_IN/margins.lang (100%) rename {htdocs => public}/langs/en_IN/members.lang (100%) rename {htdocs => public}/langs/en_IN/oauth.lang (100%) rename {htdocs => public}/langs/en_IN/opensurvey.lang (100%) rename {htdocs => public}/langs/en_IN/orders.lang (100%) rename {htdocs => public}/langs/en_IN/other.lang (100%) rename {htdocs => public}/langs/en_IN/paybox.lang (100%) rename {htdocs => public}/langs/en_IN/paypal.lang (100%) rename {htdocs => public}/langs/en_IN/printing.lang (100%) rename {htdocs => public}/langs/en_IN/productbatch.lang (100%) rename {htdocs => public}/langs/en_IN/products.lang (100%) rename {htdocs => public}/langs/en_IN/projects.lang (100%) rename {htdocs => public}/langs/en_IN/propal.lang (100%) rename {htdocs => public}/langs/en_IN/receiptprinter.lang (100%) rename {htdocs => public}/langs/en_IN/resource.lang (100%) rename {htdocs => public}/langs/en_IN/salaries.lang (100%) rename {htdocs => public}/langs/en_IN/sendings.lang (100%) rename {htdocs => public}/langs/en_IN/sms.lang (100%) rename {htdocs => public}/langs/en_IN/stocks.lang (100%) rename {htdocs => public}/langs/en_IN/supplier_proposal.lang (100%) rename {htdocs => public}/langs/en_IN/suppliers.lang (100%) rename {htdocs => public}/langs/en_IN/trips.lang (100%) rename {htdocs => public}/langs/en_IN/users.lang (100%) rename {htdocs => public}/langs/en_IN/website.lang (100%) rename {htdocs => public}/langs/en_IN/withdrawals.lang (100%) rename {htdocs => public}/langs/en_IN/workflow.lang (100%) rename {htdocs => public}/langs/en_NZ/companies.lang (100%) rename {htdocs => public}/langs/en_NZ/compta.lang (100%) rename {htdocs => public}/langs/en_NZ/main.lang (100%) rename {htdocs => public}/langs/en_SA/main.lang (100%) rename {htdocs => public}/langs/en_SA/propal.lang (100%) rename {htdocs => public}/langs/en_US/accountancy.lang (100%) rename {htdocs => public}/langs/en_US/admin.lang (100%) rename {htdocs => public}/langs/en_US/agenda.lang (100%) rename {htdocs => public}/langs/en_US/banks.lang (100%) rename {htdocs => public}/langs/en_US/bills.lang (100%) rename {htdocs => public}/langs/en_US/bookmarks.lang (100%) rename {htdocs => public}/langs/en_US/boxes.lang (100%) rename {htdocs => public}/langs/en_US/cashdesk.lang (100%) rename {htdocs => public}/langs/en_US/categories.lang (100%) rename {htdocs => public}/langs/en_US/commercial.lang (100%) rename {htdocs => public}/langs/en_US/companies.lang (100%) rename {htdocs => public}/langs/en_US/compta.lang (100%) rename {htdocs => public}/langs/en_US/contracts.lang (100%) rename {htdocs => public}/langs/en_US/cron.lang (100%) rename {htdocs => public}/langs/en_US/deliveries.lang (100%) rename {htdocs => public}/langs/en_US/dict.lang (100%) rename {htdocs => public}/langs/en_US/donations.lang (100%) rename {htdocs => public}/langs/en_US/ecm.lang (100%) rename {htdocs => public}/langs/en_US/errors.lang (100%) rename {htdocs => public}/langs/en_US/exports.lang (100%) rename {htdocs => public}/langs/en_US/externalsite.lang (100%) rename {htdocs => public}/langs/en_US/ftp.lang (100%) rename {htdocs => public}/langs/en_US/help.lang (100%) rename {htdocs => public}/langs/en_US/holiday.lang (100%) rename {htdocs => public}/langs/en_US/hrm.lang (100%) rename {htdocs => public}/langs/en_US/incoterm.lang (100%) rename {htdocs => public}/langs/en_US/install.lang (100%) rename {htdocs => public}/langs/en_US/interventions.lang (100%) rename {htdocs => public}/langs/en_US/languages.lang (100%) rename {htdocs => public}/langs/en_US/ldap.lang (100%) rename {htdocs => public}/langs/en_US/link.lang (100%) rename {htdocs => public}/langs/en_US/loan.lang (100%) rename {htdocs => public}/langs/en_US/mailmanspip.lang (100%) rename {htdocs => public}/langs/en_US/mails.lang (100%) rename {htdocs => public}/langs/en_US/main.lang (100%) rename {htdocs => public}/langs/en_US/margins.lang (100%) rename {htdocs => public}/langs/en_US/members.lang (100%) rename {htdocs => public}/langs/en_US/multicurrency.lang (100%) rename {htdocs => public}/langs/en_US/oauth.lang (100%) rename {htdocs => public}/langs/en_US/opensurvey.lang (100%) rename {htdocs => public}/langs/en_US/orders.lang (100%) rename {htdocs => public}/langs/en_US/other.lang (100%) rename {htdocs => public}/langs/en_US/paybox.lang (100%) rename {htdocs => public}/langs/en_US/paypal.lang (100%) rename {htdocs => public}/langs/en_US/printing.lang (100%) rename {htdocs => public}/langs/en_US/productbatch.lang (100%) rename {htdocs => public}/langs/en_US/products.lang (100%) rename {htdocs => public}/langs/en_US/projects.lang (100%) rename {htdocs => public}/langs/en_US/propal.lang (100%) rename {htdocs => public}/langs/en_US/receiptprinter.lang (100%) rename {htdocs => public}/langs/en_US/resource.lang (100%) rename {htdocs => public}/langs/en_US/salaries.lang (100%) rename {htdocs => public}/langs/en_US/sendings.lang (100%) rename {htdocs => public}/langs/en_US/sms.lang (100%) rename {htdocs => public}/langs/en_US/stocks.lang (100%) rename {htdocs => public}/langs/en_US/supplier_proposal.lang (100%) rename {htdocs => public}/langs/en_US/suppliers.lang (100%) rename {htdocs => public}/langs/en_US/trips.lang (100%) rename {htdocs => public}/langs/en_US/users.lang (100%) rename {htdocs => public}/langs/en_US/website.lang (100%) rename {htdocs => public}/langs/en_US/withdrawals.lang (100%) rename {htdocs => public}/langs/en_US/workflow.lang (100%) rename {htdocs => public}/langs/en_ZA/main.lang (100%) rename {htdocs => public}/langs/es_AR/accountancy.lang (100%) rename {htdocs => public}/langs/es_AR/admin.lang (100%) rename {htdocs => public}/langs/es_AR/agenda.lang (100%) rename {htdocs => public}/langs/es_AR/banks.lang (100%) rename {htdocs => public}/langs/es_AR/bills.lang (100%) rename {htdocs => public}/langs/es_AR/bookmarks.lang (100%) rename {htdocs => public}/langs/es_AR/boxes.lang (100%) rename {htdocs => public}/langs/es_AR/cashdesk.lang (100%) rename {htdocs => public}/langs/es_AR/categories.lang (100%) rename {htdocs => public}/langs/es_AR/commercial.lang (100%) rename {htdocs => public}/langs/es_AR/companies.lang (100%) rename {htdocs => public}/langs/es_AR/compta.lang (100%) rename {htdocs => public}/langs/es_AR/contracts.lang (100%) rename {htdocs => public}/langs/es_AR/cron.lang (100%) rename {htdocs => public}/langs/es_AR/deliveries.lang (100%) rename {htdocs => public}/langs/es_AR/dict.lang (100%) rename {htdocs => public}/langs/es_AR/donations.lang (100%) rename {htdocs => public}/langs/es_AR/ecm.lang (100%) rename {htdocs => public}/langs/es_AR/errors.lang (100%) rename {htdocs => public}/langs/es_AR/exports.lang (100%) rename {htdocs => public}/langs/es_AR/externalsite.lang (100%) rename {htdocs => public}/langs/es_AR/ftp.lang (100%) rename {htdocs => public}/langs/es_AR/help.lang (100%) rename {htdocs => public}/langs/es_AR/holiday.lang (100%) rename {htdocs => public}/langs/es_AR/hrm.lang (100%) rename {htdocs => public}/langs/es_AR/incoterm.lang (100%) rename {htdocs => public}/langs/es_AR/install.lang (100%) rename {htdocs => public}/langs/es_AR/interventions.lang (100%) rename {htdocs => public}/langs/es_AR/languages.lang (100%) rename {htdocs => public}/langs/es_AR/ldap.lang (100%) rename {htdocs => public}/langs/es_AR/link.lang (100%) rename {htdocs => public}/langs/es_AR/loan.lang (100%) rename {htdocs => public}/langs/es_AR/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_AR/mails.lang (100%) rename {htdocs => public}/langs/es_AR/main.lang (100%) rename {htdocs => public}/langs/es_AR/margins.lang (100%) rename {htdocs => public}/langs/es_AR/members.lang (100%) rename {htdocs => public}/langs/es_AR/oauth.lang (100%) rename {htdocs => public}/langs/es_AR/opensurvey.lang (100%) rename {htdocs => public}/langs/es_AR/orders.lang (100%) rename {htdocs => public}/langs/es_AR/other.lang (100%) rename {htdocs => public}/langs/es_AR/paybox.lang (100%) rename {htdocs => public}/langs/es_AR/paypal.lang (100%) rename {htdocs => public}/langs/es_AR/printing.lang (100%) rename {htdocs => public}/langs/es_AR/productbatch.lang (100%) rename {htdocs => public}/langs/es_AR/products.lang (100%) rename {htdocs => public}/langs/es_AR/projects.lang (100%) rename {htdocs => public}/langs/es_AR/propal.lang (100%) rename {htdocs => public}/langs/es_AR/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_AR/resource.lang (100%) rename {htdocs => public}/langs/es_AR/salaries.lang (100%) rename {htdocs => public}/langs/es_AR/sendings.lang (100%) rename {htdocs => public}/langs/es_AR/sms.lang (100%) rename {htdocs => public}/langs/es_AR/stocks.lang (100%) rename {htdocs => public}/langs/es_AR/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_AR/suppliers.lang (100%) rename {htdocs => public}/langs/es_AR/trips.lang (100%) rename {htdocs => public}/langs/es_AR/users.lang (100%) rename {htdocs => public}/langs/es_AR/website.lang (100%) rename {htdocs => public}/langs/es_AR/withdrawals.lang (100%) rename {htdocs => public}/langs/es_AR/workflow.lang (100%) rename {htdocs => public}/langs/es_BO/accountancy.lang (100%) rename {htdocs => public}/langs/es_BO/admin.lang (100%) rename {htdocs => public}/langs/es_BO/agenda.lang (100%) rename {htdocs => public}/langs/es_BO/banks.lang (100%) rename {htdocs => public}/langs/es_BO/bills.lang (100%) rename {htdocs => public}/langs/es_BO/bookmarks.lang (100%) rename {htdocs => public}/langs/es_BO/boxes.lang (100%) rename {htdocs => public}/langs/es_BO/cashdesk.lang (100%) rename {htdocs => public}/langs/es_BO/categories.lang (100%) rename {htdocs => public}/langs/es_BO/commercial.lang (100%) rename {htdocs => public}/langs/es_BO/companies.lang (100%) rename {htdocs => public}/langs/es_BO/compta.lang (100%) rename {htdocs => public}/langs/es_BO/contracts.lang (100%) rename {htdocs => public}/langs/es_BO/cron.lang (100%) rename {htdocs => public}/langs/es_BO/deliveries.lang (100%) rename {htdocs => public}/langs/es_BO/dict.lang (100%) rename {htdocs => public}/langs/es_BO/donations.lang (100%) rename {htdocs => public}/langs/es_BO/ecm.lang (100%) rename {htdocs => public}/langs/es_BO/errors.lang (100%) rename {htdocs => public}/langs/es_BO/exports.lang (100%) rename {htdocs => public}/langs/es_BO/externalsite.lang (100%) rename {htdocs => public}/langs/es_BO/ftp.lang (100%) rename {htdocs => public}/langs/es_BO/help.lang (100%) rename {htdocs => public}/langs/es_BO/holiday.lang (100%) rename {htdocs => public}/langs/es_BO/hrm.lang (100%) rename {htdocs => public}/langs/es_BO/incoterm.lang (100%) rename {htdocs => public}/langs/es_BO/install.lang (100%) rename {htdocs => public}/langs/es_BO/interventions.lang (100%) rename {htdocs => public}/langs/es_BO/languages.lang (100%) rename {htdocs => public}/langs/es_BO/ldap.lang (100%) rename {htdocs => public}/langs/es_BO/link.lang (100%) rename {htdocs => public}/langs/es_BO/loan.lang (100%) rename {htdocs => public}/langs/es_BO/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_BO/mails.lang (100%) rename {htdocs => public}/langs/es_BO/main.lang (100%) rename {htdocs => public}/langs/es_BO/margins.lang (100%) rename {htdocs => public}/langs/es_BO/members.lang (100%) rename {htdocs => public}/langs/es_BO/oauth.lang (100%) rename {htdocs => public}/langs/es_BO/opensurvey.lang (100%) rename {htdocs => public}/langs/es_BO/orders.lang (100%) rename {htdocs => public}/langs/es_BO/other.lang (100%) rename {htdocs => public}/langs/es_BO/paybox.lang (100%) rename {htdocs => public}/langs/es_BO/paypal.lang (100%) rename {htdocs => public}/langs/es_BO/printing.lang (100%) rename {htdocs => public}/langs/es_BO/productbatch.lang (100%) rename {htdocs => public}/langs/es_BO/products.lang (100%) rename {htdocs => public}/langs/es_BO/projects.lang (100%) rename {htdocs => public}/langs/es_BO/propal.lang (100%) rename {htdocs => public}/langs/es_BO/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_BO/resource.lang (100%) rename {htdocs => public}/langs/es_BO/salaries.lang (100%) rename {htdocs => public}/langs/es_BO/sendings.lang (100%) rename {htdocs => public}/langs/es_BO/sms.lang (100%) rename {htdocs => public}/langs/es_BO/stocks.lang (100%) rename {htdocs => public}/langs/es_BO/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_BO/suppliers.lang (100%) rename {htdocs => public}/langs/es_BO/trips.lang (100%) rename {htdocs => public}/langs/es_BO/users.lang (100%) rename {htdocs => public}/langs/es_BO/website.lang (100%) rename {htdocs => public}/langs/es_BO/withdrawals.lang (100%) rename {htdocs => public}/langs/es_BO/workflow.lang (100%) rename {htdocs => public}/langs/es_CL/accountancy.lang (100%) rename {htdocs => public}/langs/es_CL/admin.lang (100%) rename {htdocs => public}/langs/es_CL/agenda.lang (100%) rename {htdocs => public}/langs/es_CL/banks.lang (100%) rename {htdocs => public}/langs/es_CL/bills.lang (100%) rename {htdocs => public}/langs/es_CL/bookmarks.lang (100%) rename {htdocs => public}/langs/es_CL/boxes.lang (100%) rename {htdocs => public}/langs/es_CL/cashdesk.lang (100%) rename {htdocs => public}/langs/es_CL/categories.lang (100%) rename {htdocs => public}/langs/es_CL/commercial.lang (100%) rename {htdocs => public}/langs/es_CL/companies.lang (100%) rename {htdocs => public}/langs/es_CL/compta.lang (100%) rename {htdocs => public}/langs/es_CL/contracts.lang (100%) rename {htdocs => public}/langs/es_CL/cron.lang (100%) rename {htdocs => public}/langs/es_CL/deliveries.lang (100%) rename {htdocs => public}/langs/es_CL/dict.lang (100%) rename {htdocs => public}/langs/es_CL/donations.lang (100%) rename {htdocs => public}/langs/es_CL/ecm.lang (100%) rename {htdocs => public}/langs/es_CL/errors.lang (100%) rename {htdocs => public}/langs/es_CL/exports.lang (100%) rename {htdocs => public}/langs/es_CL/externalsite.lang (100%) rename {htdocs => public}/langs/es_CL/ftp.lang (100%) rename {htdocs => public}/langs/es_CL/help.lang (100%) rename {htdocs => public}/langs/es_CL/holiday.lang (100%) rename {htdocs => public}/langs/es_CL/hrm.lang (100%) rename {htdocs => public}/langs/es_CL/incoterm.lang (100%) rename {htdocs => public}/langs/es_CL/install.lang (100%) rename {htdocs => public}/langs/es_CL/interventions.lang (100%) rename {htdocs => public}/langs/es_CL/languages.lang (100%) rename {htdocs => public}/langs/es_CL/ldap.lang (100%) rename {htdocs => public}/langs/es_CL/link.lang (100%) rename {htdocs => public}/langs/es_CL/loan.lang (100%) rename {htdocs => public}/langs/es_CL/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_CL/mails.lang (100%) rename {htdocs => public}/langs/es_CL/main.lang (100%) rename {htdocs => public}/langs/es_CL/margins.lang (100%) rename {htdocs => public}/langs/es_CL/members.lang (100%) rename {htdocs => public}/langs/es_CL/oauth.lang (100%) rename {htdocs => public}/langs/es_CL/opensurvey.lang (100%) rename {htdocs => public}/langs/es_CL/orders.lang (100%) rename {htdocs => public}/langs/es_CL/other.lang (100%) rename {htdocs => public}/langs/es_CL/paybox.lang (100%) rename {htdocs => public}/langs/es_CL/paypal.lang (100%) rename {htdocs => public}/langs/es_CL/printing.lang (100%) rename {htdocs => public}/langs/es_CL/productbatch.lang (100%) rename {htdocs => public}/langs/es_CL/products.lang (100%) rename {htdocs => public}/langs/es_CL/projects.lang (100%) rename {htdocs => public}/langs/es_CL/propal.lang (100%) rename {htdocs => public}/langs/es_CL/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_CL/resource.lang (100%) rename {htdocs => public}/langs/es_CL/salaries.lang (100%) rename {htdocs => public}/langs/es_CL/sendings.lang (100%) rename {htdocs => public}/langs/es_CL/sms.lang (100%) rename {htdocs => public}/langs/es_CL/stocks.lang (100%) rename {htdocs => public}/langs/es_CL/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_CL/suppliers.lang (100%) rename {htdocs => public}/langs/es_CL/trips.lang (100%) rename {htdocs => public}/langs/es_CL/users.lang (100%) rename {htdocs => public}/langs/es_CL/website.lang (100%) rename {htdocs => public}/langs/es_CL/withdrawals.lang (100%) rename {htdocs => public}/langs/es_CL/workflow.lang (100%) rename {htdocs => public}/langs/es_CO/accountancy.lang (100%) rename {htdocs => public}/langs/es_CO/admin.lang (100%) rename {htdocs => public}/langs/es_CO/agenda.lang (100%) rename {htdocs => public}/langs/es_CO/banks.lang (100%) rename {htdocs => public}/langs/es_CO/bills.lang (100%) rename {htdocs => public}/langs/es_CO/bookmarks.lang (100%) rename {htdocs => public}/langs/es_CO/boxes.lang (100%) rename {htdocs => public}/langs/es_CO/cashdesk.lang (100%) rename {htdocs => public}/langs/es_CO/categories.lang (100%) rename {htdocs => public}/langs/es_CO/commercial.lang (100%) rename {htdocs => public}/langs/es_CO/companies.lang (100%) rename {htdocs => public}/langs/es_CO/compta.lang (100%) rename {htdocs => public}/langs/es_CO/contracts.lang (100%) rename {htdocs => public}/langs/es_CO/cron.lang (100%) rename {htdocs => public}/langs/es_CO/deliveries.lang (100%) rename {htdocs => public}/langs/es_CO/dict.lang (100%) rename {htdocs => public}/langs/es_CO/donations.lang (100%) rename {htdocs => public}/langs/es_CO/ecm.lang (100%) rename {htdocs => public}/langs/es_CO/errors.lang (100%) rename {htdocs => public}/langs/es_CO/exports.lang (100%) rename {htdocs => public}/langs/es_CO/externalsite.lang (100%) rename {htdocs => public}/langs/es_CO/ftp.lang (100%) rename {htdocs => public}/langs/es_CO/help.lang (100%) rename {htdocs => public}/langs/es_CO/holiday.lang (100%) rename {htdocs => public}/langs/es_CO/hrm.lang (100%) rename {htdocs => public}/langs/es_CO/incoterm.lang (100%) rename {htdocs => public}/langs/es_CO/install.lang (100%) rename {htdocs => public}/langs/es_CO/interventions.lang (100%) rename {htdocs => public}/langs/es_CO/languages.lang (100%) rename {htdocs => public}/langs/es_CO/ldap.lang (100%) rename {htdocs => public}/langs/es_CO/link.lang (100%) rename {htdocs => public}/langs/es_CO/loan.lang (100%) rename {htdocs => public}/langs/es_CO/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_CO/mails.lang (100%) rename {htdocs => public}/langs/es_CO/main.lang (100%) rename {htdocs => public}/langs/es_CO/margins.lang (100%) rename {htdocs => public}/langs/es_CO/members.lang (100%) rename {htdocs => public}/langs/es_CO/oauth.lang (100%) rename {htdocs => public}/langs/es_CO/opensurvey.lang (100%) rename {htdocs => public}/langs/es_CO/orders.lang (100%) rename {htdocs => public}/langs/es_CO/other.lang (100%) rename {htdocs => public}/langs/es_CO/paybox.lang (100%) rename {htdocs => public}/langs/es_CO/paypal.lang (100%) rename {htdocs => public}/langs/es_CO/printing.lang (100%) rename {htdocs => public}/langs/es_CO/productbatch.lang (100%) rename {htdocs => public}/langs/es_CO/products.lang (100%) rename {htdocs => public}/langs/es_CO/projects.lang (100%) rename {htdocs => public}/langs/es_CO/propal.lang (100%) rename {htdocs => public}/langs/es_CO/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_CO/resource.lang (100%) rename {htdocs => public}/langs/es_CO/salaries.lang (100%) rename {htdocs => public}/langs/es_CO/sendings.lang (100%) rename {htdocs => public}/langs/es_CO/sms.lang (100%) rename {htdocs => public}/langs/es_CO/stocks.lang (100%) rename {htdocs => public}/langs/es_CO/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_CO/suppliers.lang (100%) rename {htdocs => public}/langs/es_CO/trips.lang (100%) rename {htdocs => public}/langs/es_CO/users.lang (100%) rename {htdocs => public}/langs/es_CO/website.lang (100%) rename {htdocs => public}/langs/es_CO/withdrawals.lang (100%) rename {htdocs => public}/langs/es_CO/workflow.lang (100%) rename {htdocs => public}/langs/es_DO/accountancy.lang (100%) rename {htdocs => public}/langs/es_DO/admin.lang (100%) rename {htdocs => public}/langs/es_DO/agenda.lang (100%) rename {htdocs => public}/langs/es_DO/banks.lang (100%) rename {htdocs => public}/langs/es_DO/bills.lang (100%) rename {htdocs => public}/langs/es_DO/bookmarks.lang (100%) rename {htdocs => public}/langs/es_DO/boxes.lang (100%) rename {htdocs => public}/langs/es_DO/cashdesk.lang (100%) rename {htdocs => public}/langs/es_DO/categories.lang (100%) rename {htdocs => public}/langs/es_DO/commercial.lang (100%) rename {htdocs => public}/langs/es_DO/companies.lang (100%) rename {htdocs => public}/langs/es_DO/compta.lang (100%) rename {htdocs => public}/langs/es_DO/contracts.lang (100%) rename {htdocs => public}/langs/es_DO/cron.lang (100%) rename {htdocs => public}/langs/es_DO/deliveries.lang (100%) rename {htdocs => public}/langs/es_DO/dict.lang (100%) rename {htdocs => public}/langs/es_DO/donations.lang (100%) rename {htdocs => public}/langs/es_DO/ecm.lang (100%) rename {htdocs => public}/langs/es_DO/errors.lang (100%) rename {htdocs => public}/langs/es_DO/exports.lang (100%) rename {htdocs => public}/langs/es_DO/externalsite.lang (100%) rename {htdocs => public}/langs/es_DO/ftp.lang (100%) rename {htdocs => public}/langs/es_DO/help.lang (100%) rename {htdocs => public}/langs/es_DO/holiday.lang (100%) rename {htdocs => public}/langs/es_DO/hrm.lang (100%) rename {htdocs => public}/langs/es_DO/incoterm.lang (100%) rename {htdocs => public}/langs/es_DO/install.lang (100%) rename {htdocs => public}/langs/es_DO/interventions.lang (100%) rename {htdocs => public}/langs/es_DO/languages.lang (100%) rename {htdocs => public}/langs/es_DO/ldap.lang (100%) rename {htdocs => public}/langs/es_DO/link.lang (100%) rename {htdocs => public}/langs/es_DO/loan.lang (100%) rename {htdocs => public}/langs/es_DO/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_DO/mails.lang (100%) rename {htdocs => public}/langs/es_DO/main.lang (100%) rename {htdocs => public}/langs/es_DO/margins.lang (100%) rename {htdocs => public}/langs/es_DO/members.lang (100%) rename {htdocs => public}/langs/es_DO/oauth.lang (100%) rename {htdocs => public}/langs/es_DO/opensurvey.lang (100%) rename {htdocs => public}/langs/es_DO/orders.lang (100%) rename {htdocs => public}/langs/es_DO/other.lang (100%) rename {htdocs => public}/langs/es_DO/paybox.lang (100%) rename {htdocs => public}/langs/es_DO/paypal.lang (100%) rename {htdocs => public}/langs/es_DO/printing.lang (100%) rename {htdocs => public}/langs/es_DO/productbatch.lang (100%) rename {htdocs => public}/langs/es_DO/products.lang (100%) rename {htdocs => public}/langs/es_DO/projects.lang (100%) rename {htdocs => public}/langs/es_DO/propal.lang (100%) rename {htdocs => public}/langs/es_DO/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_DO/resource.lang (100%) rename {htdocs => public}/langs/es_DO/salaries.lang (100%) rename {htdocs => public}/langs/es_DO/sendings.lang (100%) rename {htdocs => public}/langs/es_DO/sms.lang (100%) rename {htdocs => public}/langs/es_DO/stocks.lang (100%) rename {htdocs => public}/langs/es_DO/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_DO/suppliers.lang (100%) rename {htdocs => public}/langs/es_DO/trips.lang (100%) rename {htdocs => public}/langs/es_DO/users.lang (100%) rename {htdocs => public}/langs/es_DO/website.lang (100%) rename {htdocs => public}/langs/es_DO/withdrawals.lang (100%) rename {htdocs => public}/langs/es_DO/workflow.lang (100%) rename {htdocs => public}/langs/es_EC/accountancy.lang (100%) rename {htdocs => public}/langs/es_EC/admin.lang (100%) rename {htdocs => public}/langs/es_EC/agenda.lang (100%) rename {htdocs => public}/langs/es_EC/banks.lang (100%) rename {htdocs => public}/langs/es_EC/bills.lang (100%) rename {htdocs => public}/langs/es_EC/bookmarks.lang (100%) rename {htdocs => public}/langs/es_EC/boxes.lang (100%) rename {htdocs => public}/langs/es_EC/cashdesk.lang (100%) rename {htdocs => public}/langs/es_EC/categories.lang (100%) rename {htdocs => public}/langs/es_EC/commercial.lang (100%) rename {htdocs => public}/langs/es_EC/companies.lang (100%) rename {htdocs => public}/langs/es_EC/compta.lang (100%) rename {htdocs => public}/langs/es_EC/contracts.lang (100%) rename {htdocs => public}/langs/es_EC/cron.lang (100%) rename {htdocs => public}/langs/es_EC/deliveries.lang (100%) rename {htdocs => public}/langs/es_EC/dict.lang (100%) rename {htdocs => public}/langs/es_EC/donations.lang (100%) rename {htdocs => public}/langs/es_EC/ecm.lang (100%) rename {htdocs => public}/langs/es_EC/errors.lang (100%) rename {htdocs => public}/langs/es_EC/exports.lang (100%) rename {htdocs => public}/langs/es_EC/externalsite.lang (100%) rename {htdocs => public}/langs/es_EC/ftp.lang (100%) rename {htdocs => public}/langs/es_EC/help.lang (100%) rename {htdocs => public}/langs/es_EC/holiday.lang (100%) rename {htdocs => public}/langs/es_EC/hrm.lang (100%) rename {htdocs => public}/langs/es_EC/incoterm.lang (100%) rename {htdocs => public}/langs/es_EC/install.lang (100%) rename {htdocs => public}/langs/es_EC/interventions.lang (100%) rename {htdocs => public}/langs/es_EC/languages.lang (100%) rename {htdocs => public}/langs/es_EC/ldap.lang (100%) rename {htdocs => public}/langs/es_EC/link.lang (100%) rename {htdocs => public}/langs/es_EC/loan.lang (100%) rename {htdocs => public}/langs/es_EC/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_EC/mails.lang (100%) rename {htdocs => public}/langs/es_EC/main.lang (100%) rename {htdocs => public}/langs/es_EC/margins.lang (100%) rename {htdocs => public}/langs/es_EC/members.lang (100%) rename {htdocs => public}/langs/es_EC/oauth.lang (100%) rename {htdocs => public}/langs/es_EC/opensurvey.lang (100%) rename {htdocs => public}/langs/es_EC/orders.lang (100%) rename {htdocs => public}/langs/es_EC/other.lang (100%) rename {htdocs => public}/langs/es_EC/paybox.lang (100%) rename {htdocs => public}/langs/es_EC/paypal.lang (100%) rename {htdocs => public}/langs/es_EC/printing.lang (100%) rename {htdocs => public}/langs/es_EC/productbatch.lang (100%) rename {htdocs => public}/langs/es_EC/products.lang (100%) rename {htdocs => public}/langs/es_EC/projects.lang (100%) rename {htdocs => public}/langs/es_EC/propal.lang (100%) rename {htdocs => public}/langs/es_EC/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_EC/resource.lang (100%) rename {htdocs => public}/langs/es_EC/salaries.lang (100%) rename {htdocs => public}/langs/es_EC/sendings.lang (100%) rename {htdocs => public}/langs/es_EC/sms.lang (100%) rename {htdocs => public}/langs/es_EC/stocks.lang (100%) rename {htdocs => public}/langs/es_EC/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_EC/suppliers.lang (100%) rename {htdocs => public}/langs/es_EC/trips.lang (100%) rename {htdocs => public}/langs/es_EC/users.lang (100%) rename {htdocs => public}/langs/es_EC/website.lang (100%) rename {htdocs => public}/langs/es_EC/withdrawals.lang (100%) rename {htdocs => public}/langs/es_EC/workflow.lang (100%) rename {htdocs => public}/langs/es_ES/accountancy.lang (100%) rename {htdocs => public}/langs/es_ES/admin.lang (100%) rename {htdocs => public}/langs/es_ES/agenda.lang (100%) rename {htdocs => public}/langs/es_ES/banks.lang (100%) rename {htdocs => public}/langs/es_ES/bills.lang (100%) rename {htdocs => public}/langs/es_ES/bookmarks.lang (100%) rename {htdocs => public}/langs/es_ES/boxes.lang (100%) rename {htdocs => public}/langs/es_ES/cashdesk.lang (100%) rename {htdocs => public}/langs/es_ES/categories.lang (100%) rename {htdocs => public}/langs/es_ES/commercial.lang (100%) rename {htdocs => public}/langs/es_ES/companies.lang (100%) rename {htdocs => public}/langs/es_ES/compta.lang (100%) rename {htdocs => public}/langs/es_ES/contracts.lang (100%) rename {htdocs => public}/langs/es_ES/cron.lang (100%) rename {htdocs => public}/langs/es_ES/deliveries.lang (100%) rename {htdocs => public}/langs/es_ES/dict.lang (100%) rename {htdocs => public}/langs/es_ES/donations.lang (100%) rename {htdocs => public}/langs/es_ES/ecm.lang (100%) rename {htdocs => public}/langs/es_ES/errors.lang (100%) rename {htdocs => public}/langs/es_ES/exports.lang (100%) rename {htdocs => public}/langs/es_ES/externalsite.lang (100%) rename {htdocs => public}/langs/es_ES/ftp.lang (100%) rename {htdocs => public}/langs/es_ES/help.lang (100%) rename {htdocs => public}/langs/es_ES/holiday.lang (100%) rename {htdocs => public}/langs/es_ES/hrm.lang (100%) rename {htdocs => public}/langs/es_ES/incoterm.lang (100%) rename {htdocs => public}/langs/es_ES/install.lang (100%) rename {htdocs => public}/langs/es_ES/interventions.lang (100%) rename {htdocs => public}/langs/es_ES/languages.lang (100%) rename {htdocs => public}/langs/es_ES/ldap.lang (100%) rename {htdocs => public}/langs/es_ES/link.lang (100%) rename {htdocs => public}/langs/es_ES/loan.lang (100%) rename {htdocs => public}/langs/es_ES/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_ES/mails.lang (100%) rename {htdocs => public}/langs/es_ES/main.lang (100%) rename {htdocs => public}/langs/es_ES/margins.lang (100%) rename {htdocs => public}/langs/es_ES/members.lang (100%) rename {htdocs => public}/langs/es_ES/oauth.lang (100%) rename {htdocs => public}/langs/es_ES/opensurvey.lang (100%) rename {htdocs => public}/langs/es_ES/orders.lang (100%) rename {htdocs => public}/langs/es_ES/other.lang (100%) rename {htdocs => public}/langs/es_ES/paybox.lang (100%) rename {htdocs => public}/langs/es_ES/paypal.lang (100%) rename {htdocs => public}/langs/es_ES/printing.lang (100%) rename {htdocs => public}/langs/es_ES/productbatch.lang (100%) rename {htdocs => public}/langs/es_ES/products.lang (100%) rename {htdocs => public}/langs/es_ES/projects.lang (100%) rename {htdocs => public}/langs/es_ES/propal.lang (100%) rename {htdocs => public}/langs/es_ES/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_ES/resource.lang (100%) rename {htdocs => public}/langs/es_ES/salaries.lang (100%) rename {htdocs => public}/langs/es_ES/sendings.lang (100%) rename {htdocs => public}/langs/es_ES/sms.lang (100%) rename {htdocs => public}/langs/es_ES/stocks.lang (100%) rename {htdocs => public}/langs/es_ES/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_ES/suppliers.lang (100%) rename {htdocs => public}/langs/es_ES/trips.lang (100%) rename {htdocs => public}/langs/es_ES/users.lang (100%) rename {htdocs => public}/langs/es_ES/website.lang (100%) rename {htdocs => public}/langs/es_ES/withdrawals.lang (100%) rename {htdocs => public}/langs/es_ES/workflow.lang (100%) rename {htdocs => public}/langs/es_HN/admin.lang (100%) rename {htdocs => public}/langs/es_HN/bills.lang (100%) rename {htdocs => public}/langs/es_HN/companies.lang (100%) rename {htdocs => public}/langs/es_HN/compta.lang (100%) rename {htdocs => public}/langs/es_HN/main.lang (100%) rename {htdocs => public}/langs/es_HN/propal.lang (100%) rename {htdocs => public}/langs/es_MX/accountancy.lang (100%) rename {htdocs => public}/langs/es_MX/admin.lang (100%) rename {htdocs => public}/langs/es_MX/agenda.lang (100%) rename {htdocs => public}/langs/es_MX/banks.lang (100%) rename {htdocs => public}/langs/es_MX/bills.lang (100%) rename {htdocs => public}/langs/es_MX/bookmarks.lang (100%) rename {htdocs => public}/langs/es_MX/boxes.lang (100%) rename {htdocs => public}/langs/es_MX/cashdesk.lang (100%) rename {htdocs => public}/langs/es_MX/categories.lang (100%) rename {htdocs => public}/langs/es_MX/commercial.lang (100%) rename {htdocs => public}/langs/es_MX/companies.lang (100%) rename {htdocs => public}/langs/es_MX/compta.lang (100%) rename {htdocs => public}/langs/es_MX/contracts.lang (100%) rename {htdocs => public}/langs/es_MX/cron.lang (100%) rename {htdocs => public}/langs/es_MX/deliveries.lang (100%) rename {htdocs => public}/langs/es_MX/dict.lang (100%) rename {htdocs => public}/langs/es_MX/donations.lang (100%) rename {htdocs => public}/langs/es_MX/ecm.lang (100%) rename {htdocs => public}/langs/es_MX/errors.lang (100%) rename {htdocs => public}/langs/es_MX/exports.lang (100%) rename {htdocs => public}/langs/es_MX/externalsite.lang (100%) rename {htdocs => public}/langs/es_MX/ftp.lang (100%) rename {htdocs => public}/langs/es_MX/help.lang (100%) rename {htdocs => public}/langs/es_MX/holiday.lang (100%) rename {htdocs => public}/langs/es_MX/hrm.lang (100%) rename {htdocs => public}/langs/es_MX/incoterm.lang (100%) rename {htdocs => public}/langs/es_MX/install.lang (100%) rename {htdocs => public}/langs/es_MX/interventions.lang (100%) rename {htdocs => public}/langs/es_MX/languages.lang (100%) rename {htdocs => public}/langs/es_MX/ldap.lang (100%) rename {htdocs => public}/langs/es_MX/link.lang (100%) rename {htdocs => public}/langs/es_MX/loan.lang (100%) rename {htdocs => public}/langs/es_MX/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_MX/mails.lang (100%) rename {htdocs => public}/langs/es_MX/main.lang (100%) rename {htdocs => public}/langs/es_MX/margins.lang (100%) rename {htdocs => public}/langs/es_MX/members.lang (100%) rename {htdocs => public}/langs/es_MX/oauth.lang (100%) rename {htdocs => public}/langs/es_MX/opensurvey.lang (100%) rename {htdocs => public}/langs/es_MX/orders.lang (100%) rename {htdocs => public}/langs/es_MX/other.lang (100%) rename {htdocs => public}/langs/es_MX/paybox.lang (100%) rename {htdocs => public}/langs/es_MX/paypal.lang (100%) rename {htdocs => public}/langs/es_MX/printing.lang (100%) rename {htdocs => public}/langs/es_MX/productbatch.lang (100%) rename {htdocs => public}/langs/es_MX/products.lang (100%) rename {htdocs => public}/langs/es_MX/projects.lang (100%) rename {htdocs => public}/langs/es_MX/propal.lang (100%) rename {htdocs => public}/langs/es_MX/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_MX/resource.lang (100%) rename {htdocs => public}/langs/es_MX/salaries.lang (100%) rename {htdocs => public}/langs/es_MX/sendings.lang (100%) rename {htdocs => public}/langs/es_MX/sms.lang (100%) rename {htdocs => public}/langs/es_MX/stocks.lang (100%) rename {htdocs => public}/langs/es_MX/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_MX/suppliers.lang (100%) rename {htdocs => public}/langs/es_MX/trips.lang (100%) rename {htdocs => public}/langs/es_MX/users.lang (100%) rename {htdocs => public}/langs/es_MX/website.lang (100%) rename {htdocs => public}/langs/es_MX/withdrawals.lang (100%) rename {htdocs => public}/langs/es_MX/workflow.lang (100%) rename {htdocs => public}/langs/es_PA/accountancy.lang (100%) rename {htdocs => public}/langs/es_PA/admin.lang (100%) rename {htdocs => public}/langs/es_PA/agenda.lang (100%) rename {htdocs => public}/langs/es_PA/banks.lang (100%) rename {htdocs => public}/langs/es_PA/bills.lang (100%) rename {htdocs => public}/langs/es_PA/bookmarks.lang (100%) rename {htdocs => public}/langs/es_PA/boxes.lang (100%) rename {htdocs => public}/langs/es_PA/cashdesk.lang (100%) rename {htdocs => public}/langs/es_PA/categories.lang (100%) rename {htdocs => public}/langs/es_PA/commercial.lang (100%) rename {htdocs => public}/langs/es_PA/companies.lang (100%) rename {htdocs => public}/langs/es_PA/compta.lang (100%) rename {htdocs => public}/langs/es_PA/contracts.lang (100%) rename {htdocs => public}/langs/es_PA/cron.lang (100%) rename {htdocs => public}/langs/es_PA/deliveries.lang (100%) rename {htdocs => public}/langs/es_PA/dict.lang (100%) rename {htdocs => public}/langs/es_PA/donations.lang (100%) rename {htdocs => public}/langs/es_PA/ecm.lang (100%) rename {htdocs => public}/langs/es_PA/errors.lang (100%) rename {htdocs => public}/langs/es_PA/exports.lang (100%) rename {htdocs => public}/langs/es_PA/externalsite.lang (100%) rename {htdocs => public}/langs/es_PA/ftp.lang (100%) rename {htdocs => public}/langs/es_PA/help.lang (100%) rename {htdocs => public}/langs/es_PA/holiday.lang (100%) rename {htdocs => public}/langs/es_PA/hrm.lang (100%) rename {htdocs => public}/langs/es_PA/incoterm.lang (100%) rename {htdocs => public}/langs/es_PA/install.lang (100%) rename {htdocs => public}/langs/es_PA/interventions.lang (100%) rename {htdocs => public}/langs/es_PA/languages.lang (100%) rename {htdocs => public}/langs/es_PA/ldap.lang (100%) rename {htdocs => public}/langs/es_PA/link.lang (100%) rename {htdocs => public}/langs/es_PA/loan.lang (100%) rename {htdocs => public}/langs/es_PA/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_PA/mails.lang (100%) rename {htdocs => public}/langs/es_PA/main.lang (100%) rename {htdocs => public}/langs/es_PA/margins.lang (100%) rename {htdocs => public}/langs/es_PA/members.lang (100%) rename {htdocs => public}/langs/es_PA/oauth.lang (100%) rename {htdocs => public}/langs/es_PA/opensurvey.lang (100%) rename {htdocs => public}/langs/es_PA/orders.lang (100%) rename {htdocs => public}/langs/es_PA/other.lang (100%) rename {htdocs => public}/langs/es_PA/paybox.lang (100%) rename {htdocs => public}/langs/es_PA/paypal.lang (100%) rename {htdocs => public}/langs/es_PA/printing.lang (100%) rename {htdocs => public}/langs/es_PA/productbatch.lang (100%) rename {htdocs => public}/langs/es_PA/products.lang (100%) rename {htdocs => public}/langs/es_PA/projects.lang (100%) rename {htdocs => public}/langs/es_PA/propal.lang (100%) rename {htdocs => public}/langs/es_PA/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_PA/resource.lang (100%) rename {htdocs => public}/langs/es_PA/salaries.lang (100%) rename {htdocs => public}/langs/es_PA/sendings.lang (100%) rename {htdocs => public}/langs/es_PA/sms.lang (100%) rename {htdocs => public}/langs/es_PA/stocks.lang (100%) rename {htdocs => public}/langs/es_PA/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_PA/suppliers.lang (100%) rename {htdocs => public}/langs/es_PA/trips.lang (100%) rename {htdocs => public}/langs/es_PA/users.lang (100%) rename {htdocs => public}/langs/es_PA/website.lang (100%) rename {htdocs => public}/langs/es_PA/withdrawals.lang (100%) rename {htdocs => public}/langs/es_PA/workflow.lang (100%) rename {htdocs => public}/langs/es_PE/accountancy.lang (100%) rename {htdocs => public}/langs/es_PE/admin.lang (100%) rename {htdocs => public}/langs/es_PE/agenda.lang (100%) rename {htdocs => public}/langs/es_PE/banks.lang (100%) rename {htdocs => public}/langs/es_PE/bills.lang (100%) rename {htdocs => public}/langs/es_PE/bookmarks.lang (100%) rename {htdocs => public}/langs/es_PE/boxes.lang (100%) rename {htdocs => public}/langs/es_PE/cashdesk.lang (100%) rename {htdocs => public}/langs/es_PE/categories.lang (100%) rename {htdocs => public}/langs/es_PE/commercial.lang (100%) rename {htdocs => public}/langs/es_PE/companies.lang (100%) rename {htdocs => public}/langs/es_PE/compta.lang (100%) rename {htdocs => public}/langs/es_PE/contracts.lang (100%) rename {htdocs => public}/langs/es_PE/cron.lang (100%) rename {htdocs => public}/langs/es_PE/deliveries.lang (100%) rename {htdocs => public}/langs/es_PE/dict.lang (100%) rename {htdocs => public}/langs/es_PE/donations.lang (100%) rename {htdocs => public}/langs/es_PE/ecm.lang (100%) rename {htdocs => public}/langs/es_PE/errors.lang (100%) rename {htdocs => public}/langs/es_PE/exports.lang (100%) rename {htdocs => public}/langs/es_PE/externalsite.lang (100%) rename {htdocs => public}/langs/es_PE/ftp.lang (100%) rename {htdocs => public}/langs/es_PE/help.lang (100%) rename {htdocs => public}/langs/es_PE/holiday.lang (100%) rename {htdocs => public}/langs/es_PE/hrm.lang (100%) rename {htdocs => public}/langs/es_PE/incoterm.lang (100%) rename {htdocs => public}/langs/es_PE/install.lang (100%) rename {htdocs => public}/langs/es_PE/interventions.lang (100%) rename {htdocs => public}/langs/es_PE/languages.lang (100%) rename {htdocs => public}/langs/es_PE/ldap.lang (100%) rename {htdocs => public}/langs/es_PE/link.lang (100%) rename {htdocs => public}/langs/es_PE/loan.lang (100%) rename {htdocs => public}/langs/es_PE/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_PE/mails.lang (100%) rename {htdocs => public}/langs/es_PE/main.lang (100%) rename {htdocs => public}/langs/es_PE/margins.lang (100%) rename {htdocs => public}/langs/es_PE/members.lang (100%) rename {htdocs => public}/langs/es_PE/oauth.lang (100%) rename {htdocs => public}/langs/es_PE/opensurvey.lang (100%) rename {htdocs => public}/langs/es_PE/orders.lang (100%) rename {htdocs => public}/langs/es_PE/other.lang (100%) rename {htdocs => public}/langs/es_PE/paybox.lang (100%) rename {htdocs => public}/langs/es_PE/paypal.lang (100%) rename {htdocs => public}/langs/es_PE/printing.lang (100%) rename {htdocs => public}/langs/es_PE/productbatch.lang (100%) rename {htdocs => public}/langs/es_PE/products.lang (100%) rename {htdocs => public}/langs/es_PE/projects.lang (100%) rename {htdocs => public}/langs/es_PE/propal.lang (100%) rename {htdocs => public}/langs/es_PE/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_PE/resource.lang (100%) rename {htdocs => public}/langs/es_PE/salaries.lang (100%) rename {htdocs => public}/langs/es_PE/sendings.lang (100%) rename {htdocs => public}/langs/es_PE/sms.lang (100%) rename {htdocs => public}/langs/es_PE/stocks.lang (100%) rename {htdocs => public}/langs/es_PE/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_PE/suppliers.lang (100%) rename {htdocs => public}/langs/es_PE/trips.lang (100%) rename {htdocs => public}/langs/es_PE/users.lang (100%) rename {htdocs => public}/langs/es_PE/website.lang (100%) rename {htdocs => public}/langs/es_PE/withdrawals.lang (100%) rename {htdocs => public}/langs/es_PE/workflow.lang (100%) rename {htdocs => public}/langs/es_PR/admin.lang (100%) rename {htdocs => public}/langs/es_PR/bills.lang (100%) rename {htdocs => public}/langs/es_PR/companies.lang (100%) rename {htdocs => public}/langs/es_PR/compta.lang (100%) rename {htdocs => public}/langs/es_PR/main.lang (100%) rename {htdocs => public}/langs/es_PR/propal.lang (100%) rename {htdocs => public}/langs/es_PY/accountancy.lang (100%) rename {htdocs => public}/langs/es_PY/admin.lang (100%) rename {htdocs => public}/langs/es_PY/agenda.lang (100%) rename {htdocs => public}/langs/es_PY/banks.lang (100%) rename {htdocs => public}/langs/es_PY/bills.lang (100%) rename {htdocs => public}/langs/es_PY/bookmarks.lang (100%) rename {htdocs => public}/langs/es_PY/boxes.lang (100%) rename {htdocs => public}/langs/es_PY/cashdesk.lang (100%) rename {htdocs => public}/langs/es_PY/categories.lang (100%) rename {htdocs => public}/langs/es_PY/commercial.lang (100%) rename {htdocs => public}/langs/es_PY/companies.lang (100%) rename {htdocs => public}/langs/es_PY/compta.lang (100%) rename {htdocs => public}/langs/es_PY/contracts.lang (100%) rename {htdocs => public}/langs/es_PY/cron.lang (100%) rename {htdocs => public}/langs/es_PY/deliveries.lang (100%) rename {htdocs => public}/langs/es_PY/dict.lang (100%) rename {htdocs => public}/langs/es_PY/donations.lang (100%) rename {htdocs => public}/langs/es_PY/ecm.lang (100%) rename {htdocs => public}/langs/es_PY/errors.lang (100%) rename {htdocs => public}/langs/es_PY/exports.lang (100%) rename {htdocs => public}/langs/es_PY/externalsite.lang (100%) rename {htdocs => public}/langs/es_PY/ftp.lang (100%) rename {htdocs => public}/langs/es_PY/help.lang (100%) rename {htdocs => public}/langs/es_PY/holiday.lang (100%) rename {htdocs => public}/langs/es_PY/hrm.lang (100%) rename {htdocs => public}/langs/es_PY/incoterm.lang (100%) rename {htdocs => public}/langs/es_PY/install.lang (100%) rename {htdocs => public}/langs/es_PY/interventions.lang (100%) rename {htdocs => public}/langs/es_PY/languages.lang (100%) rename {htdocs => public}/langs/es_PY/ldap.lang (100%) rename {htdocs => public}/langs/es_PY/link.lang (100%) rename {htdocs => public}/langs/es_PY/loan.lang (100%) rename {htdocs => public}/langs/es_PY/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_PY/mails.lang (100%) rename {htdocs => public}/langs/es_PY/main.lang (100%) rename {htdocs => public}/langs/es_PY/margins.lang (100%) rename {htdocs => public}/langs/es_PY/members.lang (100%) rename {htdocs => public}/langs/es_PY/oauth.lang (100%) rename {htdocs => public}/langs/es_PY/opensurvey.lang (100%) rename {htdocs => public}/langs/es_PY/orders.lang (100%) rename {htdocs => public}/langs/es_PY/other.lang (100%) rename {htdocs => public}/langs/es_PY/paybox.lang (100%) rename {htdocs => public}/langs/es_PY/paypal.lang (100%) rename {htdocs => public}/langs/es_PY/printing.lang (100%) rename {htdocs => public}/langs/es_PY/productbatch.lang (100%) rename {htdocs => public}/langs/es_PY/products.lang (100%) rename {htdocs => public}/langs/es_PY/projects.lang (100%) rename {htdocs => public}/langs/es_PY/propal.lang (100%) rename {htdocs => public}/langs/es_PY/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_PY/resource.lang (100%) rename {htdocs => public}/langs/es_PY/salaries.lang (100%) rename {htdocs => public}/langs/es_PY/sendings.lang (100%) rename {htdocs => public}/langs/es_PY/sms.lang (100%) rename {htdocs => public}/langs/es_PY/stocks.lang (100%) rename {htdocs => public}/langs/es_PY/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_PY/suppliers.lang (100%) rename {htdocs => public}/langs/es_PY/trips.lang (100%) rename {htdocs => public}/langs/es_PY/users.lang (100%) rename {htdocs => public}/langs/es_PY/website.lang (100%) rename {htdocs => public}/langs/es_PY/withdrawals.lang (100%) rename {htdocs => public}/langs/es_PY/workflow.lang (100%) rename {htdocs => public}/langs/es_VE/accountancy.lang (100%) rename {htdocs => public}/langs/es_VE/admin.lang (100%) rename {htdocs => public}/langs/es_VE/agenda.lang (100%) rename {htdocs => public}/langs/es_VE/banks.lang (100%) rename {htdocs => public}/langs/es_VE/bills.lang (100%) rename {htdocs => public}/langs/es_VE/bookmarks.lang (100%) rename {htdocs => public}/langs/es_VE/boxes.lang (100%) rename {htdocs => public}/langs/es_VE/cashdesk.lang (100%) rename {htdocs => public}/langs/es_VE/categories.lang (100%) rename {htdocs => public}/langs/es_VE/commercial.lang (100%) rename {htdocs => public}/langs/es_VE/companies.lang (100%) rename {htdocs => public}/langs/es_VE/compta.lang (100%) rename {htdocs => public}/langs/es_VE/contracts.lang (100%) rename {htdocs => public}/langs/es_VE/cron.lang (100%) rename {htdocs => public}/langs/es_VE/deliveries.lang (100%) rename {htdocs => public}/langs/es_VE/dict.lang (100%) rename {htdocs => public}/langs/es_VE/donations.lang (100%) rename {htdocs => public}/langs/es_VE/ecm.lang (100%) rename {htdocs => public}/langs/es_VE/errors.lang (100%) rename {htdocs => public}/langs/es_VE/exports.lang (100%) rename {htdocs => public}/langs/es_VE/externalsite.lang (100%) rename {htdocs => public}/langs/es_VE/ftp.lang (100%) rename {htdocs => public}/langs/es_VE/help.lang (100%) rename {htdocs => public}/langs/es_VE/holiday.lang (100%) rename {htdocs => public}/langs/es_VE/hrm.lang (100%) rename {htdocs => public}/langs/es_VE/incoterm.lang (100%) rename {htdocs => public}/langs/es_VE/install.lang (100%) rename {htdocs => public}/langs/es_VE/interventions.lang (100%) rename {htdocs => public}/langs/es_VE/languages.lang (100%) rename {htdocs => public}/langs/es_VE/ldap.lang (100%) rename {htdocs => public}/langs/es_VE/link.lang (100%) rename {htdocs => public}/langs/es_VE/loan.lang (100%) rename {htdocs => public}/langs/es_VE/mailmanspip.lang (100%) rename {htdocs => public}/langs/es_VE/mails.lang (100%) rename {htdocs => public}/langs/es_VE/main.lang (100%) rename {htdocs => public}/langs/es_VE/margins.lang (100%) rename {htdocs => public}/langs/es_VE/members.lang (100%) rename {htdocs => public}/langs/es_VE/oauth.lang (100%) rename {htdocs => public}/langs/es_VE/opensurvey.lang (100%) rename {htdocs => public}/langs/es_VE/orders.lang (100%) rename {htdocs => public}/langs/es_VE/other.lang (100%) rename {htdocs => public}/langs/es_VE/paybox.lang (100%) rename {htdocs => public}/langs/es_VE/paypal.lang (100%) rename {htdocs => public}/langs/es_VE/printing.lang (100%) rename {htdocs => public}/langs/es_VE/productbatch.lang (100%) rename {htdocs => public}/langs/es_VE/products.lang (100%) rename {htdocs => public}/langs/es_VE/projects.lang (100%) rename {htdocs => public}/langs/es_VE/propal.lang (100%) rename {htdocs => public}/langs/es_VE/receiptprinter.lang (100%) rename {htdocs => public}/langs/es_VE/resource.lang (100%) rename {htdocs => public}/langs/es_VE/salaries.lang (100%) rename {htdocs => public}/langs/es_VE/sendings.lang (100%) rename {htdocs => public}/langs/es_VE/sms.lang (100%) rename {htdocs => public}/langs/es_VE/stocks.lang (100%) rename {htdocs => public}/langs/es_VE/supplier_proposal.lang (100%) rename {htdocs => public}/langs/es_VE/suppliers.lang (100%) rename {htdocs => public}/langs/es_VE/trips.lang (100%) rename {htdocs => public}/langs/es_VE/users.lang (100%) rename {htdocs => public}/langs/es_VE/website.lang (100%) rename {htdocs => public}/langs/es_VE/withdrawals.lang (100%) rename {htdocs => public}/langs/es_VE/workflow.lang (100%) rename {htdocs => public}/langs/et_EE/accountancy.lang (100%) rename {htdocs => public}/langs/et_EE/admin.lang (100%) rename {htdocs => public}/langs/et_EE/agenda.lang (100%) rename {htdocs => public}/langs/et_EE/banks.lang (100%) rename {htdocs => public}/langs/et_EE/bills.lang (100%) rename {htdocs => public}/langs/et_EE/bookmarks.lang (100%) rename {htdocs => public}/langs/et_EE/boxes.lang (100%) rename {htdocs => public}/langs/et_EE/cashdesk.lang (100%) rename {htdocs => public}/langs/et_EE/categories.lang (100%) rename {htdocs => public}/langs/et_EE/commercial.lang (100%) rename {htdocs => public}/langs/et_EE/companies.lang (100%) rename {htdocs => public}/langs/et_EE/compta.lang (100%) rename {htdocs => public}/langs/et_EE/contracts.lang (100%) rename {htdocs => public}/langs/et_EE/cron.lang (100%) rename {htdocs => public}/langs/et_EE/deliveries.lang (100%) rename {htdocs => public}/langs/et_EE/dict.lang (100%) rename {htdocs => public}/langs/et_EE/donations.lang (100%) rename {htdocs => public}/langs/et_EE/ecm.lang (100%) rename {htdocs => public}/langs/et_EE/errors.lang (100%) rename {htdocs => public}/langs/et_EE/exports.lang (100%) rename {htdocs => public}/langs/et_EE/externalsite.lang (100%) rename {htdocs => public}/langs/et_EE/ftp.lang (100%) rename {htdocs => public}/langs/et_EE/help.lang (100%) rename {htdocs => public}/langs/et_EE/holiday.lang (100%) rename {htdocs => public}/langs/et_EE/hrm.lang (100%) rename {htdocs => public}/langs/et_EE/incoterm.lang (100%) rename {htdocs => public}/langs/et_EE/install.lang (100%) rename {htdocs => public}/langs/et_EE/interventions.lang (100%) rename {htdocs => public}/langs/et_EE/languages.lang (100%) rename {htdocs => public}/langs/et_EE/ldap.lang (100%) rename {htdocs => public}/langs/et_EE/link.lang (100%) rename {htdocs => public}/langs/et_EE/loan.lang (100%) rename {htdocs => public}/langs/et_EE/mailmanspip.lang (100%) rename {htdocs => public}/langs/et_EE/mails.lang (100%) rename {htdocs => public}/langs/et_EE/main.lang (100%) rename {htdocs => public}/langs/et_EE/margins.lang (100%) rename {htdocs => public}/langs/et_EE/members.lang (100%) rename {htdocs => public}/langs/et_EE/oauth.lang (100%) rename {htdocs => public}/langs/et_EE/opensurvey.lang (100%) rename {htdocs => public}/langs/et_EE/orders.lang (100%) rename {htdocs => public}/langs/et_EE/other.lang (100%) rename {htdocs => public}/langs/et_EE/paybox.lang (100%) rename {htdocs => public}/langs/et_EE/paypal.lang (100%) rename {htdocs => public}/langs/et_EE/printing.lang (100%) rename {htdocs => public}/langs/et_EE/productbatch.lang (100%) rename {htdocs => public}/langs/et_EE/products.lang (100%) rename {htdocs => public}/langs/et_EE/projects.lang (100%) rename {htdocs => public}/langs/et_EE/propal.lang (100%) rename {htdocs => public}/langs/et_EE/receiptprinter.lang (100%) rename {htdocs => public}/langs/et_EE/resource.lang (100%) rename {htdocs => public}/langs/et_EE/salaries.lang (100%) rename {htdocs => public}/langs/et_EE/sendings.lang (100%) rename {htdocs => public}/langs/et_EE/sms.lang (100%) rename {htdocs => public}/langs/et_EE/stocks.lang (100%) rename {htdocs => public}/langs/et_EE/supplier_proposal.lang (100%) rename {htdocs => public}/langs/et_EE/suppliers.lang (100%) rename {htdocs => public}/langs/et_EE/trips.lang (100%) rename {htdocs => public}/langs/et_EE/users.lang (100%) rename {htdocs => public}/langs/et_EE/website.lang (100%) rename {htdocs => public}/langs/et_EE/withdrawals.lang (100%) rename {htdocs => public}/langs/et_EE/workflow.lang (100%) rename {htdocs => public}/langs/eu_ES/accountancy.lang (100%) rename {htdocs => public}/langs/eu_ES/admin.lang (100%) rename {htdocs => public}/langs/eu_ES/agenda.lang (100%) rename {htdocs => public}/langs/eu_ES/banks.lang (100%) rename {htdocs => public}/langs/eu_ES/bills.lang (100%) rename {htdocs => public}/langs/eu_ES/bookmarks.lang (100%) rename {htdocs => public}/langs/eu_ES/boxes.lang (100%) rename {htdocs => public}/langs/eu_ES/cashdesk.lang (100%) rename {htdocs => public}/langs/eu_ES/categories.lang (100%) rename {htdocs => public}/langs/eu_ES/commercial.lang (100%) rename {htdocs => public}/langs/eu_ES/companies.lang (100%) rename {htdocs => public}/langs/eu_ES/compta.lang (100%) rename {htdocs => public}/langs/eu_ES/contracts.lang (100%) rename {htdocs => public}/langs/eu_ES/cron.lang (100%) rename {htdocs => public}/langs/eu_ES/deliveries.lang (100%) rename {htdocs => public}/langs/eu_ES/dict.lang (100%) rename {htdocs => public}/langs/eu_ES/donations.lang (100%) rename {htdocs => public}/langs/eu_ES/ecm.lang (100%) rename {htdocs => public}/langs/eu_ES/errors.lang (100%) rename {htdocs => public}/langs/eu_ES/expensereports.lang (100%) rename {htdocs => public}/langs/eu_ES/exports.lang (100%) rename {htdocs => public}/langs/eu_ES/externalsite.lang (100%) rename {htdocs => public}/langs/eu_ES/ftp.lang (100%) rename {htdocs => public}/langs/eu_ES/help.lang (100%) rename {htdocs => public}/langs/eu_ES/holiday.lang (100%) rename {htdocs => public}/langs/eu_ES/hrm.lang (100%) rename {htdocs => public}/langs/eu_ES/incoterm.lang (100%) rename {htdocs => public}/langs/eu_ES/install.lang (100%) rename {htdocs => public}/langs/eu_ES/interventions.lang (100%) rename {htdocs => public}/langs/eu_ES/languages.lang (100%) rename {htdocs => public}/langs/eu_ES/ldap.lang (100%) rename {htdocs => public}/langs/eu_ES/link.lang (100%) rename {htdocs => public}/langs/eu_ES/loan.lang (100%) rename {htdocs => public}/langs/eu_ES/mailmanspip.lang (100%) rename {htdocs => public}/langs/eu_ES/mails.lang (100%) rename {htdocs => public}/langs/eu_ES/main.lang (100%) rename {htdocs => public}/langs/eu_ES/margins.lang (100%) rename {htdocs => public}/langs/eu_ES/members.lang (100%) rename {htdocs => public}/langs/eu_ES/oauth.lang (100%) rename {htdocs => public}/langs/eu_ES/opensurvey.lang (100%) rename {htdocs => public}/langs/eu_ES/orders.lang (100%) rename {htdocs => public}/langs/eu_ES/other.lang (100%) rename {htdocs => public}/langs/eu_ES/paybox.lang (100%) rename {htdocs => public}/langs/eu_ES/paypal.lang (100%) rename {htdocs => public}/langs/eu_ES/printing.lang (100%) rename {htdocs => public}/langs/eu_ES/productbatch.lang (100%) rename {htdocs => public}/langs/eu_ES/products.lang (100%) rename {htdocs => public}/langs/eu_ES/projects.lang (100%) rename {htdocs => public}/langs/eu_ES/propal.lang (100%) rename {htdocs => public}/langs/eu_ES/receiptprinter.lang (100%) rename {htdocs => public}/langs/eu_ES/resource.lang (100%) rename {htdocs => public}/langs/eu_ES/salaries.lang (100%) rename {htdocs => public}/langs/eu_ES/sendings.lang (100%) rename {htdocs => public}/langs/eu_ES/sms.lang (100%) rename {htdocs => public}/langs/eu_ES/stocks.lang (100%) rename {htdocs => public}/langs/eu_ES/supplier_proposal.lang (100%) rename {htdocs => public}/langs/eu_ES/suppliers.lang (100%) rename {htdocs => public}/langs/eu_ES/trips.lang (100%) rename {htdocs => public}/langs/eu_ES/users.lang (100%) rename {htdocs => public}/langs/eu_ES/website.lang (100%) rename {htdocs => public}/langs/eu_ES/withdrawals.lang (100%) rename {htdocs => public}/langs/eu_ES/workflow.lang (100%) rename {htdocs => public}/langs/fa_IR/accountancy.lang (100%) rename {htdocs => public}/langs/fa_IR/admin.lang (100%) rename {htdocs => public}/langs/fa_IR/agenda.lang (100%) rename {htdocs => public}/langs/fa_IR/banks.lang (100%) rename {htdocs => public}/langs/fa_IR/bills.lang (100%) rename {htdocs => public}/langs/fa_IR/bookmarks.lang (100%) rename {htdocs => public}/langs/fa_IR/boxes.lang (100%) rename {htdocs => public}/langs/fa_IR/cashdesk.lang (100%) rename {htdocs => public}/langs/fa_IR/categories.lang (100%) rename {htdocs => public}/langs/fa_IR/commercial.lang (100%) rename {htdocs => public}/langs/fa_IR/companies.lang (100%) rename {htdocs => public}/langs/fa_IR/compta.lang (100%) rename {htdocs => public}/langs/fa_IR/contracts.lang (100%) rename {htdocs => public}/langs/fa_IR/cron.lang (100%) rename {htdocs => public}/langs/fa_IR/deliveries.lang (100%) rename {htdocs => public}/langs/fa_IR/dict.lang (100%) rename {htdocs => public}/langs/fa_IR/domains.lang (100%) rename {htdocs => public}/langs/fa_IR/donations.lang (100%) rename {htdocs => public}/langs/fa_IR/ecm.lang (100%) rename {htdocs => public}/langs/fa_IR/errors.lang (100%) rename {htdocs => public}/langs/fa_IR/exports.lang (100%) rename {htdocs => public}/langs/fa_IR/externalsite.lang (100%) rename {htdocs => public}/langs/fa_IR/ftp.lang (100%) rename {htdocs => public}/langs/fa_IR/help.lang (100%) rename {htdocs => public}/langs/fa_IR/holiday.lang (100%) rename {htdocs => public}/langs/fa_IR/hrm.lang (100%) rename {htdocs => public}/langs/fa_IR/incoterm.lang (100%) rename {htdocs => public}/langs/fa_IR/install.lang (100%) rename {htdocs => public}/langs/fa_IR/interventions.lang (100%) rename {htdocs => public}/langs/fa_IR/languages.lang (100%) rename {htdocs => public}/langs/fa_IR/ldap.lang (100%) rename {htdocs => public}/langs/fa_IR/link.lang (100%) rename {htdocs => public}/langs/fa_IR/loan.lang (100%) rename {htdocs => public}/langs/fa_IR/mailmanspip.lang (100%) rename {htdocs => public}/langs/fa_IR/mails.lang (100%) rename {htdocs => public}/langs/fa_IR/main.lang (100%) rename {htdocs => public}/langs/fa_IR/margins.lang (100%) rename {htdocs => public}/langs/fa_IR/members.lang (100%) rename {htdocs => public}/langs/fa_IR/oauth.lang (100%) rename {htdocs => public}/langs/fa_IR/opensurvey.lang (100%) rename {htdocs => public}/langs/fa_IR/orders.lang (100%) rename {htdocs => public}/langs/fa_IR/other.lang (100%) rename {htdocs => public}/langs/fa_IR/paybox.lang (100%) rename {htdocs => public}/langs/fa_IR/paypal.lang (100%) rename {htdocs => public}/langs/fa_IR/printing.lang (100%) rename {htdocs => public}/langs/fa_IR/productbatch.lang (100%) rename {htdocs => public}/langs/fa_IR/products.lang (100%) rename {htdocs => public}/langs/fa_IR/projects.lang (100%) rename {htdocs => public}/langs/fa_IR/propal.lang (100%) rename {htdocs => public}/langs/fa_IR/receiptprinter.lang (100%) rename {htdocs => public}/langs/fa_IR/resource.lang (100%) rename {htdocs => public}/langs/fa_IR/salaries.lang (100%) rename {htdocs => public}/langs/fa_IR/sendings.lang (100%) rename {htdocs => public}/langs/fa_IR/sms.lang (100%) rename {htdocs => public}/langs/fa_IR/stocks.lang (100%) rename {htdocs => public}/langs/fa_IR/supplier_proposal.lang (100%) rename {htdocs => public}/langs/fa_IR/suppliers.lang (100%) rename {htdocs => public}/langs/fa_IR/trips.lang (100%) rename {htdocs => public}/langs/fa_IR/users.lang (100%) rename {htdocs => public}/langs/fa_IR/website.lang (100%) rename {htdocs => public}/langs/fa_IR/withdrawals.lang (100%) rename {htdocs => public}/langs/fa_IR/workflow.lang (100%) rename {htdocs => public}/langs/fi_FI/accountancy.lang (100%) rename {htdocs => public}/langs/fi_FI/admin.lang (100%) rename {htdocs => public}/langs/fi_FI/agenda.lang (100%) rename {htdocs => public}/langs/fi_FI/banks.lang (100%) rename {htdocs => public}/langs/fi_FI/bills.lang (100%) rename {htdocs => public}/langs/fi_FI/bookmarks.lang (100%) rename {htdocs => public}/langs/fi_FI/boxes.lang (100%) rename {htdocs => public}/langs/fi_FI/cashdesk.lang (100%) rename {htdocs => public}/langs/fi_FI/categories.lang (100%) rename {htdocs => public}/langs/fi_FI/commercial.lang (100%) rename {htdocs => public}/langs/fi_FI/companies.lang (100%) rename {htdocs => public}/langs/fi_FI/compta.lang (100%) rename {htdocs => public}/langs/fi_FI/contracts.lang (100%) rename {htdocs => public}/langs/fi_FI/cron.lang (100%) rename {htdocs => public}/langs/fi_FI/deliveries.lang (100%) rename {htdocs => public}/langs/fi_FI/dict.lang (100%) rename {htdocs => public}/langs/fi_FI/donations.lang (100%) rename {htdocs => public}/langs/fi_FI/ecm.lang (100%) rename {htdocs => public}/langs/fi_FI/errors.lang (100%) rename {htdocs => public}/langs/fi_FI/exports.lang (100%) rename {htdocs => public}/langs/fi_FI/externalsite.lang (100%) rename {htdocs => public}/langs/fi_FI/ftp.lang (100%) rename {htdocs => public}/langs/fi_FI/help.lang (100%) rename {htdocs => public}/langs/fi_FI/holiday.lang (100%) rename {htdocs => public}/langs/fi_FI/hrm.lang (100%) rename {htdocs => public}/langs/fi_FI/incoterm.lang (100%) rename {htdocs => public}/langs/fi_FI/install.lang (100%) rename {htdocs => public}/langs/fi_FI/interventions.lang (100%) rename {htdocs => public}/langs/fi_FI/languages.lang (100%) rename {htdocs => public}/langs/fi_FI/ldap.lang (100%) rename {htdocs => public}/langs/fi_FI/link.lang (100%) rename {htdocs => public}/langs/fi_FI/loan.lang (100%) rename {htdocs => public}/langs/fi_FI/mailmanspip.lang (100%) rename {htdocs => public}/langs/fi_FI/mails.lang (100%) rename {htdocs => public}/langs/fi_FI/main.lang (100%) rename {htdocs => public}/langs/fi_FI/margins.lang (100%) rename {htdocs => public}/langs/fi_FI/members.lang (100%) rename {htdocs => public}/langs/fi_FI/oauth.lang (100%) rename {htdocs => public}/langs/fi_FI/opensurvey.lang (100%) rename {htdocs => public}/langs/fi_FI/orders.lang (100%) rename {htdocs => public}/langs/fi_FI/other.lang (100%) rename {htdocs => public}/langs/fi_FI/paybox.lang (100%) rename {htdocs => public}/langs/fi_FI/paypal.lang (100%) rename {htdocs => public}/langs/fi_FI/printing.lang (100%) rename {htdocs => public}/langs/fi_FI/productbatch.lang (100%) rename {htdocs => public}/langs/fi_FI/products.lang (100%) rename {htdocs => public}/langs/fi_FI/projects.lang (100%) rename {htdocs => public}/langs/fi_FI/propal.lang (100%) rename {htdocs => public}/langs/fi_FI/receiptprinter.lang (100%) rename {htdocs => public}/langs/fi_FI/resource.lang (100%) rename {htdocs => public}/langs/fi_FI/salaries.lang (100%) rename {htdocs => public}/langs/fi_FI/sendings.lang (100%) rename {htdocs => public}/langs/fi_FI/sms.lang (100%) rename {htdocs => public}/langs/fi_FI/stocks.lang (100%) rename {htdocs => public}/langs/fi_FI/supplier_proposal.lang (100%) rename {htdocs => public}/langs/fi_FI/suppliers.lang (100%) rename {htdocs => public}/langs/fi_FI/trips.lang (100%) rename {htdocs => public}/langs/fi_FI/users.lang (100%) rename {htdocs => public}/langs/fi_FI/website.lang (100%) rename {htdocs => public}/langs/fi_FI/withdrawals.lang (100%) rename {htdocs => public}/langs/fi_FI/workflow.lang (100%) rename {htdocs => public}/langs/fr_BE/accountancy.lang (100%) rename {htdocs => public}/langs/fr_BE/admin.lang (100%) rename {htdocs => public}/langs/fr_BE/agenda.lang (100%) rename {htdocs => public}/langs/fr_BE/banks.lang (100%) rename {htdocs => public}/langs/fr_BE/bills.lang (100%) rename {htdocs => public}/langs/fr_BE/bookmarks.lang (100%) rename {htdocs => public}/langs/fr_BE/boxes.lang (100%) rename {htdocs => public}/langs/fr_BE/cashdesk.lang (100%) rename {htdocs => public}/langs/fr_BE/categories.lang (100%) rename {htdocs => public}/langs/fr_BE/commercial.lang (100%) rename {htdocs => public}/langs/fr_BE/companies.lang (100%) rename {htdocs => public}/langs/fr_BE/compta.lang (100%) rename {htdocs => public}/langs/fr_BE/contracts.lang (100%) rename {htdocs => public}/langs/fr_BE/cron.lang (100%) rename {htdocs => public}/langs/fr_BE/deliveries.lang (100%) rename {htdocs => public}/langs/fr_BE/dict.lang (100%) rename {htdocs => public}/langs/fr_BE/donations.lang (100%) rename {htdocs => public}/langs/fr_BE/ecm.lang (100%) rename {htdocs => public}/langs/fr_BE/errors.lang (100%) rename {htdocs => public}/langs/fr_BE/exports.lang (100%) rename {htdocs => public}/langs/fr_BE/externalsite.lang (100%) rename {htdocs => public}/langs/fr_BE/ftp.lang (100%) rename {htdocs => public}/langs/fr_BE/help.lang (100%) rename {htdocs => public}/langs/fr_BE/holiday.lang (100%) rename {htdocs => public}/langs/fr_BE/hrm.lang (100%) rename {htdocs => public}/langs/fr_BE/incoterm.lang (100%) rename {htdocs => public}/langs/fr_BE/install.lang (100%) rename {htdocs => public}/langs/fr_BE/interventions.lang (100%) rename {htdocs => public}/langs/fr_BE/languages.lang (100%) rename {htdocs => public}/langs/fr_BE/ldap.lang (100%) rename {htdocs => public}/langs/fr_BE/link.lang (100%) rename {htdocs => public}/langs/fr_BE/loan.lang (100%) rename {htdocs => public}/langs/fr_BE/mailmanspip.lang (100%) rename {htdocs => public}/langs/fr_BE/mails.lang (100%) rename {htdocs => public}/langs/fr_BE/main.lang (100%) rename {htdocs => public}/langs/fr_BE/margins.lang (100%) rename {htdocs => public}/langs/fr_BE/members.lang (100%) rename {htdocs => public}/langs/fr_BE/oauth.lang (100%) rename {htdocs => public}/langs/fr_BE/opensurvey.lang (100%) rename {htdocs => public}/langs/fr_BE/orders.lang (100%) rename {htdocs => public}/langs/fr_BE/other.lang (100%) rename {htdocs => public}/langs/fr_BE/paybox.lang (100%) rename {htdocs => public}/langs/fr_BE/paypal.lang (100%) rename {htdocs => public}/langs/fr_BE/printing.lang (100%) rename {htdocs => public}/langs/fr_BE/productbatch.lang (100%) rename {htdocs => public}/langs/fr_BE/products.lang (100%) rename {htdocs => public}/langs/fr_BE/projects.lang (100%) rename {htdocs => public}/langs/fr_BE/propal.lang (100%) rename {htdocs => public}/langs/fr_BE/receiptprinter.lang (100%) rename {htdocs => public}/langs/fr_BE/resource.lang (100%) rename {htdocs => public}/langs/fr_BE/salaries.lang (100%) rename {htdocs => public}/langs/fr_BE/sendings.lang (100%) rename {htdocs => public}/langs/fr_BE/sms.lang (100%) rename {htdocs => public}/langs/fr_BE/stocks.lang (100%) rename {htdocs => public}/langs/fr_BE/supplier_proposal.lang (100%) rename {htdocs => public}/langs/fr_BE/suppliers.lang (100%) rename {htdocs => public}/langs/fr_BE/trips.lang (100%) rename {htdocs => public}/langs/fr_BE/users.lang (100%) rename {htdocs => public}/langs/fr_BE/website.lang (100%) rename {htdocs => public}/langs/fr_BE/withdrawals.lang (100%) rename {htdocs => public}/langs/fr_BE/workflow.lang (100%) rename {htdocs => public}/langs/fr_CA/accountancy.lang (100%) rename {htdocs => public}/langs/fr_CA/admin.lang (100%) rename {htdocs => public}/langs/fr_CA/agenda.lang (100%) rename {htdocs => public}/langs/fr_CA/banks.lang (100%) rename {htdocs => public}/langs/fr_CA/bills.lang (100%) rename {htdocs => public}/langs/fr_CA/bookmarks.lang (100%) rename {htdocs => public}/langs/fr_CA/boxes.lang (100%) rename {htdocs => public}/langs/fr_CA/cashdesk.lang (100%) rename {htdocs => public}/langs/fr_CA/categories.lang (100%) rename {htdocs => public}/langs/fr_CA/commercial.lang (100%) rename {htdocs => public}/langs/fr_CA/companies.lang (100%) rename {htdocs => public}/langs/fr_CA/compta.lang (100%) rename {htdocs => public}/langs/fr_CA/contracts.lang (100%) rename {htdocs => public}/langs/fr_CA/cron.lang (100%) rename {htdocs => public}/langs/fr_CA/deliveries.lang (100%) rename {htdocs => public}/langs/fr_CA/dict.lang (100%) rename {htdocs => public}/langs/fr_CA/donations.lang (100%) rename {htdocs => public}/langs/fr_CA/ecm.lang (100%) rename {htdocs => public}/langs/fr_CA/errors.lang (100%) rename {htdocs => public}/langs/fr_CA/exports.lang (100%) rename {htdocs => public}/langs/fr_CA/externalsite.lang (100%) rename {htdocs => public}/langs/fr_CA/ftp.lang (100%) rename {htdocs => public}/langs/fr_CA/help.lang (100%) rename {htdocs => public}/langs/fr_CA/holiday.lang (100%) rename {htdocs => public}/langs/fr_CA/hrm.lang (100%) rename {htdocs => public}/langs/fr_CA/incoterm.lang (100%) rename {htdocs => public}/langs/fr_CA/install.lang (100%) rename {htdocs => public}/langs/fr_CA/interventions.lang (100%) rename {htdocs => public}/langs/fr_CA/languages.lang (100%) rename {htdocs => public}/langs/fr_CA/ldap.lang (100%) rename {htdocs => public}/langs/fr_CA/link.lang (100%) rename {htdocs => public}/langs/fr_CA/loan.lang (100%) rename {htdocs => public}/langs/fr_CA/mailmanspip.lang (100%) rename {htdocs => public}/langs/fr_CA/mails.lang (100%) rename {htdocs => public}/langs/fr_CA/main.lang (100%) rename {htdocs => public}/langs/fr_CA/margins.lang (100%) rename {htdocs => public}/langs/fr_CA/members.lang (100%) rename {htdocs => public}/langs/fr_CA/oauth.lang (100%) rename {htdocs => public}/langs/fr_CA/opensurvey.lang (100%) rename {htdocs => public}/langs/fr_CA/orders.lang (100%) rename {htdocs => public}/langs/fr_CA/other.lang (100%) rename {htdocs => public}/langs/fr_CA/paybox.lang (100%) rename {htdocs => public}/langs/fr_CA/paypal.lang (100%) rename {htdocs => public}/langs/fr_CA/printing.lang (100%) rename {htdocs => public}/langs/fr_CA/productbatch.lang (100%) rename {htdocs => public}/langs/fr_CA/products.lang (100%) rename {htdocs => public}/langs/fr_CA/projects.lang (100%) rename {htdocs => public}/langs/fr_CA/propal.lang (100%) rename {htdocs => public}/langs/fr_CA/receiptprinter.lang (100%) rename {htdocs => public}/langs/fr_CA/resource.lang (100%) rename {htdocs => public}/langs/fr_CA/salaries.lang (100%) rename {htdocs => public}/langs/fr_CA/sendings.lang (100%) rename {htdocs => public}/langs/fr_CA/sms.lang (100%) rename {htdocs => public}/langs/fr_CA/stocks.lang (100%) rename {htdocs => public}/langs/fr_CA/supplier_proposal.lang (100%) rename {htdocs => public}/langs/fr_CA/suppliers.lang (100%) rename {htdocs => public}/langs/fr_CA/trips.lang (100%) rename {htdocs => public}/langs/fr_CA/users.lang (100%) rename {htdocs => public}/langs/fr_CA/website.lang (100%) rename {htdocs => public}/langs/fr_CA/withdrawals.lang (100%) rename {htdocs => public}/langs/fr_CA/workflow.lang (100%) rename {htdocs => public}/langs/fr_CH/accountancy.lang (100%) rename {htdocs => public}/langs/fr_CH/admin.lang (100%) rename {htdocs => public}/langs/fr_CH/agenda.lang (100%) rename {htdocs => public}/langs/fr_CH/banks.lang (100%) rename {htdocs => public}/langs/fr_CH/bills.lang (100%) rename {htdocs => public}/langs/fr_CH/bookmarks.lang (100%) rename {htdocs => public}/langs/fr_CH/boxes.lang (100%) rename {htdocs => public}/langs/fr_CH/cashdesk.lang (100%) rename {htdocs => public}/langs/fr_CH/categories.lang (100%) rename {htdocs => public}/langs/fr_CH/commercial.lang (100%) rename {htdocs => public}/langs/fr_CH/companies.lang (100%) rename {htdocs => public}/langs/fr_CH/compta.lang (100%) rename {htdocs => public}/langs/fr_CH/contracts.lang (100%) rename {htdocs => public}/langs/fr_CH/cron.lang (100%) rename {htdocs => public}/langs/fr_CH/deliveries.lang (100%) rename {htdocs => public}/langs/fr_CH/dict.lang (100%) rename {htdocs => public}/langs/fr_CH/donations.lang (100%) rename {htdocs => public}/langs/fr_CH/ecm.lang (100%) rename {htdocs => public}/langs/fr_CH/errors.lang (100%) rename {htdocs => public}/langs/fr_CH/exports.lang (100%) rename {htdocs => public}/langs/fr_CH/externalsite.lang (100%) rename {htdocs => public}/langs/fr_CH/ftp.lang (100%) rename {htdocs => public}/langs/fr_CH/help.lang (100%) rename {htdocs => public}/langs/fr_CH/holiday.lang (100%) rename {htdocs => public}/langs/fr_CH/hrm.lang (100%) rename {htdocs => public}/langs/fr_CH/incoterm.lang (100%) rename {htdocs => public}/langs/fr_CH/install.lang (100%) rename {htdocs => public}/langs/fr_CH/interventions.lang (100%) rename {htdocs => public}/langs/fr_CH/languages.lang (100%) rename {htdocs => public}/langs/fr_CH/ldap.lang (100%) rename {htdocs => public}/langs/fr_CH/link.lang (100%) rename {htdocs => public}/langs/fr_CH/loan.lang (100%) rename {htdocs => public}/langs/fr_CH/mailmanspip.lang (100%) rename {htdocs => public}/langs/fr_CH/mails.lang (100%) rename {htdocs => public}/langs/fr_CH/main.lang (100%) rename {htdocs => public}/langs/fr_CH/margins.lang (100%) rename {htdocs => public}/langs/fr_CH/members.lang (100%) rename {htdocs => public}/langs/fr_CH/oauth.lang (100%) rename {htdocs => public}/langs/fr_CH/opensurvey.lang (100%) rename {htdocs => public}/langs/fr_CH/orders.lang (100%) rename {htdocs => public}/langs/fr_CH/other.lang (100%) rename {htdocs => public}/langs/fr_CH/paybox.lang (100%) rename {htdocs => public}/langs/fr_CH/paypal.lang (100%) rename {htdocs => public}/langs/fr_CH/printing.lang (100%) rename {htdocs => public}/langs/fr_CH/productbatch.lang (100%) rename {htdocs => public}/langs/fr_CH/products.lang (100%) rename {htdocs => public}/langs/fr_CH/projects.lang (100%) rename {htdocs => public}/langs/fr_CH/propal.lang (100%) rename {htdocs => public}/langs/fr_CH/receiptprinter.lang (100%) rename {htdocs => public}/langs/fr_CH/resource.lang (100%) rename {htdocs => public}/langs/fr_CH/salaries.lang (100%) rename {htdocs => public}/langs/fr_CH/sendings.lang (100%) rename {htdocs => public}/langs/fr_CH/sms.lang (100%) rename {htdocs => public}/langs/fr_CH/stocks.lang (100%) rename {htdocs => public}/langs/fr_CH/supplier_proposal.lang (100%) rename {htdocs => public}/langs/fr_CH/suppliers.lang (100%) rename {htdocs => public}/langs/fr_CH/trips.lang (100%) rename {htdocs => public}/langs/fr_CH/users.lang (100%) rename {htdocs => public}/langs/fr_CH/website.lang (100%) rename {htdocs => public}/langs/fr_CH/withdrawals.lang (100%) rename {htdocs => public}/langs/fr_CH/workflow.lang (100%) rename {htdocs => public}/langs/fr_FR/accountancy.lang (100%) rename {htdocs => public}/langs/fr_FR/admin.lang (100%) rename {htdocs => public}/langs/fr_FR/agenda.lang (100%) rename {htdocs => public}/langs/fr_FR/banks.lang (100%) rename {htdocs => public}/langs/fr_FR/bills.lang (100%) rename {htdocs => public}/langs/fr_FR/bookmarks.lang (100%) rename {htdocs => public}/langs/fr_FR/boxes.lang (100%) rename {htdocs => public}/langs/fr_FR/cashdesk.lang (100%) rename {htdocs => public}/langs/fr_FR/categories.lang (100%) rename {htdocs => public}/langs/fr_FR/commercial.lang (100%) rename {htdocs => public}/langs/fr_FR/companies.lang (100%) rename {htdocs => public}/langs/fr_FR/compta.lang (100%) rename {htdocs => public}/langs/fr_FR/contracts.lang (100%) rename {htdocs => public}/langs/fr_FR/cron.lang (100%) rename {htdocs => public}/langs/fr_FR/deliveries.lang (100%) rename {htdocs => public}/langs/fr_FR/dict.lang (100%) rename {htdocs => public}/langs/fr_FR/donations.lang (100%) rename {htdocs => public}/langs/fr_FR/ecm.lang (100%) rename {htdocs => public}/langs/fr_FR/errors.lang (100%) rename {htdocs => public}/langs/fr_FR/expensereports.lang (100%) rename {htdocs => public}/langs/fr_FR/exports.lang (100%) rename {htdocs => public}/langs/fr_FR/externalsite.lang (100%) rename {htdocs => public}/langs/fr_FR/ftp.lang (100%) rename {htdocs => public}/langs/fr_FR/help.lang (100%) rename {htdocs => public}/langs/fr_FR/holiday.lang (100%) rename {htdocs => public}/langs/fr_FR/hrm.lang (100%) rename {htdocs => public}/langs/fr_FR/incoterm.lang (100%) rename {htdocs => public}/langs/fr_FR/install.lang (100%) rename {htdocs => public}/langs/fr_FR/interventions.lang (100%) rename {htdocs => public}/langs/fr_FR/languages.lang (100%) rename {htdocs => public}/langs/fr_FR/ldap.lang (100%) rename {htdocs => public}/langs/fr_FR/link.lang (100%) rename {htdocs => public}/langs/fr_FR/loan.lang (100%) rename {htdocs => public}/langs/fr_FR/mailmanspip.lang (100%) rename {htdocs => public}/langs/fr_FR/mails.lang (100%) rename {htdocs => public}/langs/fr_FR/main.lang (100%) rename {htdocs => public}/langs/fr_FR/margins.lang (100%) rename {htdocs => public}/langs/fr_FR/members.lang (100%) rename {htdocs => public}/langs/fr_FR/oauth.lang (100%) rename {htdocs => public}/langs/fr_FR/opensurvey.lang (100%) rename {htdocs => public}/langs/fr_FR/orders.lang (100%) rename {htdocs => public}/langs/fr_FR/other.lang (100%) rename {htdocs => public}/langs/fr_FR/paybox.lang (100%) rename {htdocs => public}/langs/fr_FR/paypal.lang (100%) rename {htdocs => public}/langs/fr_FR/printing.lang (100%) rename {htdocs => public}/langs/fr_FR/productbatch.lang (100%) rename {htdocs => public}/langs/fr_FR/products.lang (100%) rename {htdocs => public}/langs/fr_FR/projects.lang (100%) rename {htdocs => public}/langs/fr_FR/propal.lang (100%) rename {htdocs => public}/langs/fr_FR/receiptprinter.lang (100%) rename {htdocs => public}/langs/fr_FR/resource.lang (100%) rename {htdocs => public}/langs/fr_FR/salaries.lang (100%) rename {htdocs => public}/langs/fr_FR/sendings.lang (100%) rename {htdocs => public}/langs/fr_FR/sms.lang (100%) rename {htdocs => public}/langs/fr_FR/stocks.lang (100%) rename {htdocs => public}/langs/fr_FR/supplier_proposal.lang (100%) rename {htdocs => public}/langs/fr_FR/suppliers.lang (100%) rename {htdocs => public}/langs/fr_FR/trips.lang (100%) rename {htdocs => public}/langs/fr_FR/users.lang (100%) rename {htdocs => public}/langs/fr_FR/website.lang (100%) rename {htdocs => public}/langs/fr_FR/withdrawals.lang (100%) rename {htdocs => public}/langs/fr_FR/workflow.lang (100%) rename {htdocs => public}/langs/fr_NC/admin.lang (100%) rename {htdocs => public}/langs/fr_NC/companies.lang (100%) rename {htdocs => public}/langs/fr_NC/compta.lang (100%) rename {htdocs => public}/langs/fr_NC/main.lang (100%) rename {htdocs => public}/langs/he_IL/accountancy.lang (100%) rename {htdocs => public}/langs/he_IL/admin.lang (100%) rename {htdocs => public}/langs/he_IL/agenda.lang (100%) rename {htdocs => public}/langs/he_IL/banks.lang (100%) rename {htdocs => public}/langs/he_IL/bills.lang (100%) rename {htdocs => public}/langs/he_IL/bookmarks.lang (100%) rename {htdocs => public}/langs/he_IL/boxes.lang (100%) rename {htdocs => public}/langs/he_IL/cashdesk.lang (100%) rename {htdocs => public}/langs/he_IL/categories.lang (100%) rename {htdocs => public}/langs/he_IL/commercial.lang (100%) rename {htdocs => public}/langs/he_IL/companies.lang (100%) rename {htdocs => public}/langs/he_IL/compta.lang (100%) rename {htdocs => public}/langs/he_IL/contracts.lang (100%) rename {htdocs => public}/langs/he_IL/cron.lang (100%) rename {htdocs => public}/langs/he_IL/deliveries.lang (100%) rename {htdocs => public}/langs/he_IL/dict.lang (100%) rename {htdocs => public}/langs/he_IL/donations.lang (100%) rename {htdocs => public}/langs/he_IL/ecm.lang (100%) rename {htdocs => public}/langs/he_IL/errors.lang (100%) rename {htdocs => public}/langs/he_IL/exports.lang (100%) rename {htdocs => public}/langs/he_IL/externalsite.lang (100%) rename {htdocs => public}/langs/he_IL/ftp.lang (100%) rename {htdocs => public}/langs/he_IL/help.lang (100%) rename {htdocs => public}/langs/he_IL/holiday.lang (100%) rename {htdocs => public}/langs/he_IL/hrm.lang (100%) rename {htdocs => public}/langs/he_IL/incoterm.lang (100%) rename {htdocs => public}/langs/he_IL/install.lang (100%) rename {htdocs => public}/langs/he_IL/interventions.lang (100%) rename {htdocs => public}/langs/he_IL/languages.lang (100%) rename {htdocs => public}/langs/he_IL/ldap.lang (100%) rename {htdocs => public}/langs/he_IL/link.lang (100%) rename {htdocs => public}/langs/he_IL/loan.lang (100%) rename {htdocs => public}/langs/he_IL/mailmanspip.lang (100%) rename {htdocs => public}/langs/he_IL/mails.lang (100%) rename {htdocs => public}/langs/he_IL/main.lang (100%) rename {htdocs => public}/langs/he_IL/margins.lang (100%) rename {htdocs => public}/langs/he_IL/members.lang (100%) rename {htdocs => public}/langs/he_IL/oauth.lang (100%) rename {htdocs => public}/langs/he_IL/opensurvey.lang (100%) rename {htdocs => public}/langs/he_IL/orders.lang (100%) rename {htdocs => public}/langs/he_IL/other.lang (100%) rename {htdocs => public}/langs/he_IL/paybox.lang (100%) rename {htdocs => public}/langs/he_IL/paypal.lang (100%) rename {htdocs => public}/langs/he_IL/printing.lang (100%) rename {htdocs => public}/langs/he_IL/productbatch.lang (100%) rename {htdocs => public}/langs/he_IL/products.lang (100%) rename {htdocs => public}/langs/he_IL/projects.lang (100%) rename {htdocs => public}/langs/he_IL/propal.lang (100%) rename {htdocs => public}/langs/he_IL/receiptprinter.lang (100%) rename {htdocs => public}/langs/he_IL/resource.lang (100%) rename {htdocs => public}/langs/he_IL/salaries.lang (100%) rename {htdocs => public}/langs/he_IL/sendings.lang (100%) rename {htdocs => public}/langs/he_IL/sms.lang (100%) rename {htdocs => public}/langs/he_IL/stocks.lang (100%) rename {htdocs => public}/langs/he_IL/supplier_proposal.lang (100%) rename {htdocs => public}/langs/he_IL/suppliers.lang (100%) rename {htdocs => public}/langs/he_IL/trips.lang (100%) rename {htdocs => public}/langs/he_IL/users.lang (100%) rename {htdocs => public}/langs/he_IL/website.lang (100%) rename {htdocs => public}/langs/he_IL/withdrawals.lang (100%) rename {htdocs => public}/langs/he_IL/workflow.lang (100%) rename {htdocs => public}/langs/hr_HR/accountancy.lang (100%) rename {htdocs => public}/langs/hr_HR/admin.lang (100%) rename {htdocs => public}/langs/hr_HR/agenda.lang (100%) rename {htdocs => public}/langs/hr_HR/banks.lang (100%) rename {htdocs => public}/langs/hr_HR/bills.lang (100%) rename {htdocs => public}/langs/hr_HR/bookmarks.lang (100%) rename {htdocs => public}/langs/hr_HR/boxes.lang (100%) rename {htdocs => public}/langs/hr_HR/cashdesk.lang (100%) rename {htdocs => public}/langs/hr_HR/categories.lang (100%) rename {htdocs => public}/langs/hr_HR/commercial.lang (100%) rename {htdocs => public}/langs/hr_HR/companies.lang (100%) rename {htdocs => public}/langs/hr_HR/compta.lang (100%) rename {htdocs => public}/langs/hr_HR/contracts.lang (100%) rename {htdocs => public}/langs/hr_HR/cron.lang (100%) rename {htdocs => public}/langs/hr_HR/deliveries.lang (100%) rename {htdocs => public}/langs/hr_HR/dict.lang (100%) rename {htdocs => public}/langs/hr_HR/donations.lang (100%) rename {htdocs => public}/langs/hr_HR/ecm.lang (100%) rename {htdocs => public}/langs/hr_HR/errors.lang (100%) rename {htdocs => public}/langs/hr_HR/exports.lang (100%) rename {htdocs => public}/langs/hr_HR/externalsite.lang (100%) rename {htdocs => public}/langs/hr_HR/ftp.lang (100%) rename {htdocs => public}/langs/hr_HR/help.lang (100%) rename {htdocs => public}/langs/hr_HR/holiday.lang (100%) rename {htdocs => public}/langs/hr_HR/hrm.lang (100%) rename {htdocs => public}/langs/hr_HR/incoterm.lang (100%) rename {htdocs => public}/langs/hr_HR/install.lang (100%) rename {htdocs => public}/langs/hr_HR/interventions.lang (100%) rename {htdocs => public}/langs/hr_HR/languages.lang (100%) rename {htdocs => public}/langs/hr_HR/ldap.lang (100%) rename {htdocs => public}/langs/hr_HR/link.lang (100%) rename {htdocs => public}/langs/hr_HR/loan.lang (100%) rename {htdocs => public}/langs/hr_HR/mailmanspip.lang (100%) rename {htdocs => public}/langs/hr_HR/mails.lang (100%) rename {htdocs => public}/langs/hr_HR/main.lang (100%) rename {htdocs => public}/langs/hr_HR/margins.lang (100%) rename {htdocs => public}/langs/hr_HR/members.lang (100%) rename {htdocs => public}/langs/hr_HR/oauth.lang (100%) rename {htdocs => public}/langs/hr_HR/opensurvey.lang (100%) rename {htdocs => public}/langs/hr_HR/orders.lang (100%) rename {htdocs => public}/langs/hr_HR/other.lang (100%) rename {htdocs => public}/langs/hr_HR/paybox.lang (100%) rename {htdocs => public}/langs/hr_HR/paypal.lang (100%) rename {htdocs => public}/langs/hr_HR/printing.lang (100%) rename {htdocs => public}/langs/hr_HR/productbatch.lang (100%) rename {htdocs => public}/langs/hr_HR/products.lang (100%) rename {htdocs => public}/langs/hr_HR/projects.lang (100%) rename {htdocs => public}/langs/hr_HR/propal.lang (100%) rename {htdocs => public}/langs/hr_HR/receiptprinter.lang (100%) rename {htdocs => public}/langs/hr_HR/resource.lang (100%) rename {htdocs => public}/langs/hr_HR/salaries.lang (100%) rename {htdocs => public}/langs/hr_HR/sendings.lang (100%) rename {htdocs => public}/langs/hr_HR/sms.lang (100%) rename {htdocs => public}/langs/hr_HR/stocks.lang (100%) rename {htdocs => public}/langs/hr_HR/supplier_proposal.lang (100%) rename {htdocs => public}/langs/hr_HR/suppliers.lang (100%) rename {htdocs => public}/langs/hr_HR/trips.lang (100%) rename {htdocs => public}/langs/hr_HR/users.lang (100%) rename {htdocs => public}/langs/hr_HR/website.lang (100%) rename {htdocs => public}/langs/hr_HR/withdrawals.lang (100%) rename {htdocs => public}/langs/hr_HR/workflow.lang (100%) rename {htdocs => public}/langs/hu_HU/accountancy.lang (100%) rename {htdocs => public}/langs/hu_HU/admin.lang (100%) rename {htdocs => public}/langs/hu_HU/agenda.lang (100%) rename {htdocs => public}/langs/hu_HU/banks.lang (100%) rename {htdocs => public}/langs/hu_HU/bills.lang (100%) rename {htdocs => public}/langs/hu_HU/bookmarks.lang (100%) rename {htdocs => public}/langs/hu_HU/boxes.lang (100%) rename {htdocs => public}/langs/hu_HU/cashdesk.lang (100%) rename {htdocs => public}/langs/hu_HU/categories.lang (100%) rename {htdocs => public}/langs/hu_HU/commercial.lang (100%) rename {htdocs => public}/langs/hu_HU/companies.lang (100%) rename {htdocs => public}/langs/hu_HU/compta.lang (100%) rename {htdocs => public}/langs/hu_HU/contracts.lang (100%) rename {htdocs => public}/langs/hu_HU/cron.lang (100%) rename {htdocs => public}/langs/hu_HU/deliveries.lang (100%) rename {htdocs => public}/langs/hu_HU/dict.lang (100%) rename {htdocs => public}/langs/hu_HU/donations.lang (100%) rename {htdocs => public}/langs/hu_HU/ecm.lang (100%) rename {htdocs => public}/langs/hu_HU/errors.lang (100%) rename {htdocs => public}/langs/hu_HU/exports.lang (100%) rename {htdocs => public}/langs/hu_HU/externalsite.lang (100%) rename {htdocs => public}/langs/hu_HU/ftp.lang (100%) rename {htdocs => public}/langs/hu_HU/help.lang (100%) rename {htdocs => public}/langs/hu_HU/holiday.lang (100%) rename {htdocs => public}/langs/hu_HU/hrm.lang (100%) rename {htdocs => public}/langs/hu_HU/incoterm.lang (100%) rename {htdocs => public}/langs/hu_HU/install.lang (100%) rename {htdocs => public}/langs/hu_HU/interventions.lang (100%) rename {htdocs => public}/langs/hu_HU/languages.lang (100%) rename {htdocs => public}/langs/hu_HU/ldap.lang (100%) rename {htdocs => public}/langs/hu_HU/link.lang (100%) rename {htdocs => public}/langs/hu_HU/loan.lang (100%) rename {htdocs => public}/langs/hu_HU/mailmanspip.lang (100%) rename {htdocs => public}/langs/hu_HU/mails.lang (100%) rename {htdocs => public}/langs/hu_HU/main.lang (100%) rename {htdocs => public}/langs/hu_HU/margins.lang (100%) rename {htdocs => public}/langs/hu_HU/members.lang (100%) rename {htdocs => public}/langs/hu_HU/oauth.lang (100%) rename {htdocs => public}/langs/hu_HU/opensurvey.lang (100%) rename {htdocs => public}/langs/hu_HU/orders.lang (100%) rename {htdocs => public}/langs/hu_HU/other.lang (100%) rename {htdocs => public}/langs/hu_HU/paybox.lang (100%) rename {htdocs => public}/langs/hu_HU/paypal.lang (100%) rename {htdocs => public}/langs/hu_HU/printing.lang (100%) rename {htdocs => public}/langs/hu_HU/productbatch.lang (100%) rename {htdocs => public}/langs/hu_HU/products.lang (100%) rename {htdocs => public}/langs/hu_HU/projects.lang (100%) rename {htdocs => public}/langs/hu_HU/propal.lang (100%) rename {htdocs => public}/langs/hu_HU/receiptprinter.lang (100%) rename {htdocs => public}/langs/hu_HU/resource.lang (100%) rename {htdocs => public}/langs/hu_HU/salaries.lang (100%) rename {htdocs => public}/langs/hu_HU/sendings.lang (100%) rename {htdocs => public}/langs/hu_HU/sms.lang (100%) rename {htdocs => public}/langs/hu_HU/stocks.lang (100%) rename {htdocs => public}/langs/hu_HU/supplier_proposal.lang (100%) rename {htdocs => public}/langs/hu_HU/suppliers.lang (100%) rename {htdocs => public}/langs/hu_HU/trips.lang (100%) rename {htdocs => public}/langs/hu_HU/users.lang (100%) rename {htdocs => public}/langs/hu_HU/website.lang (100%) rename {htdocs => public}/langs/hu_HU/withdrawals.lang (100%) rename {htdocs => public}/langs/hu_HU/workflow.lang (100%) rename {htdocs => public}/langs/id_ID/accountancy.lang (100%) rename {htdocs => public}/langs/id_ID/admin.lang (100%) rename {htdocs => public}/langs/id_ID/agenda.lang (100%) rename {htdocs => public}/langs/id_ID/banks.lang (100%) rename {htdocs => public}/langs/id_ID/bills.lang (100%) rename {htdocs => public}/langs/id_ID/bookmarks.lang (100%) rename {htdocs => public}/langs/id_ID/boxes.lang (100%) rename {htdocs => public}/langs/id_ID/cashdesk.lang (100%) rename {htdocs => public}/langs/id_ID/categories.lang (100%) rename {htdocs => public}/langs/id_ID/commercial.lang (100%) rename {htdocs => public}/langs/id_ID/companies.lang (100%) rename {htdocs => public}/langs/id_ID/compta.lang (100%) rename {htdocs => public}/langs/id_ID/contracts.lang (100%) rename {htdocs => public}/langs/id_ID/cron.lang (100%) rename {htdocs => public}/langs/id_ID/deliveries.lang (100%) rename {htdocs => public}/langs/id_ID/dict.lang (100%) rename {htdocs => public}/langs/id_ID/donations.lang (100%) rename {htdocs => public}/langs/id_ID/ecm.lang (100%) rename {htdocs => public}/langs/id_ID/errors.lang (100%) rename {htdocs => public}/langs/id_ID/exports.lang (100%) rename {htdocs => public}/langs/id_ID/externalsite.lang (100%) rename {htdocs => public}/langs/id_ID/ftp.lang (100%) rename {htdocs => public}/langs/id_ID/help.lang (100%) rename {htdocs => public}/langs/id_ID/holiday.lang (100%) rename {htdocs => public}/langs/id_ID/hrm.lang (100%) rename {htdocs => public}/langs/id_ID/incoterm.lang (100%) rename {htdocs => public}/langs/id_ID/install.lang (100%) rename {htdocs => public}/langs/id_ID/interventions.lang (100%) rename {htdocs => public}/langs/id_ID/languages.lang (100%) rename {htdocs => public}/langs/id_ID/ldap.lang (100%) rename {htdocs => public}/langs/id_ID/link.lang (100%) rename {htdocs => public}/langs/id_ID/loan.lang (100%) rename {htdocs => public}/langs/id_ID/mailmanspip.lang (100%) rename {htdocs => public}/langs/id_ID/mails.lang (100%) rename {htdocs => public}/langs/id_ID/main.lang (100%) rename {htdocs => public}/langs/id_ID/margins.lang (100%) rename {htdocs => public}/langs/id_ID/members.lang (100%) rename {htdocs => public}/langs/id_ID/oauth.lang (100%) rename {htdocs => public}/langs/id_ID/opensurvey.lang (100%) rename {htdocs => public}/langs/id_ID/orders.lang (100%) rename {htdocs => public}/langs/id_ID/other.lang (100%) rename {htdocs => public}/langs/id_ID/paybox.lang (100%) rename {htdocs => public}/langs/id_ID/paypal.lang (100%) rename {htdocs => public}/langs/id_ID/printing.lang (100%) rename {htdocs => public}/langs/id_ID/productbatch.lang (100%) rename {htdocs => public}/langs/id_ID/products.lang (100%) rename {htdocs => public}/langs/id_ID/projects.lang (100%) rename {htdocs => public}/langs/id_ID/propal.lang (100%) rename {htdocs => public}/langs/id_ID/receiptprinter.lang (100%) rename {htdocs => public}/langs/id_ID/resource.lang (100%) rename {htdocs => public}/langs/id_ID/salaries.lang (100%) rename {htdocs => public}/langs/id_ID/sendings.lang (100%) rename {htdocs => public}/langs/id_ID/sms.lang (100%) rename {htdocs => public}/langs/id_ID/stocks.lang (100%) rename {htdocs => public}/langs/id_ID/supplier_proposal.lang (100%) rename {htdocs => public}/langs/id_ID/suppliers.lang (100%) rename {htdocs => public}/langs/id_ID/trips.lang (100%) rename {htdocs => public}/langs/id_ID/users.lang (100%) rename {htdocs => public}/langs/id_ID/website.lang (100%) rename {htdocs => public}/langs/id_ID/withdrawals.lang (100%) rename {htdocs => public}/langs/id_ID/workflow.lang (100%) rename {htdocs => public}/langs/is_IS/accountancy.lang (100%) rename {htdocs => public}/langs/is_IS/admin.lang (100%) rename {htdocs => public}/langs/is_IS/agenda.lang (100%) rename {htdocs => public}/langs/is_IS/banks.lang (100%) rename {htdocs => public}/langs/is_IS/bills.lang (100%) rename {htdocs => public}/langs/is_IS/bookmarks.lang (100%) rename {htdocs => public}/langs/is_IS/boxes.lang (100%) rename {htdocs => public}/langs/is_IS/cashdesk.lang (100%) rename {htdocs => public}/langs/is_IS/categories.lang (100%) rename {htdocs => public}/langs/is_IS/commercial.lang (100%) rename {htdocs => public}/langs/is_IS/companies.lang (100%) rename {htdocs => public}/langs/is_IS/compta.lang (100%) rename {htdocs => public}/langs/is_IS/contracts.lang (100%) rename {htdocs => public}/langs/is_IS/cron.lang (100%) rename {htdocs => public}/langs/is_IS/deliveries.lang (100%) rename {htdocs => public}/langs/is_IS/dict.lang (100%) rename {htdocs => public}/langs/is_IS/donations.lang (100%) rename {htdocs => public}/langs/is_IS/ecm.lang (100%) rename {htdocs => public}/langs/is_IS/errors.lang (100%) rename {htdocs => public}/langs/is_IS/exports.lang (100%) rename {htdocs => public}/langs/is_IS/externalsite.lang (100%) rename {htdocs => public}/langs/is_IS/ftp.lang (100%) rename {htdocs => public}/langs/is_IS/help.lang (100%) rename {htdocs => public}/langs/is_IS/holiday.lang (100%) rename {htdocs => public}/langs/is_IS/hrm.lang (100%) rename {htdocs => public}/langs/is_IS/incoterm.lang (100%) rename {htdocs => public}/langs/is_IS/install.lang (100%) rename {htdocs => public}/langs/is_IS/interventions.lang (100%) rename {htdocs => public}/langs/is_IS/languages.lang (100%) rename {htdocs => public}/langs/is_IS/ldap.lang (100%) rename {htdocs => public}/langs/is_IS/link.lang (100%) rename {htdocs => public}/langs/is_IS/loan.lang (100%) rename {htdocs => public}/langs/is_IS/mailmanspip.lang (100%) rename {htdocs => public}/langs/is_IS/mails.lang (100%) rename {htdocs => public}/langs/is_IS/main.lang (100%) rename {htdocs => public}/langs/is_IS/margins.lang (100%) rename {htdocs => public}/langs/is_IS/members.lang (100%) rename {htdocs => public}/langs/is_IS/oauth.lang (100%) rename {htdocs => public}/langs/is_IS/opensurvey.lang (100%) rename {htdocs => public}/langs/is_IS/orders.lang (100%) rename {htdocs => public}/langs/is_IS/other.lang (100%) rename {htdocs => public}/langs/is_IS/paybox.lang (100%) rename {htdocs => public}/langs/is_IS/paypal.lang (100%) rename {htdocs => public}/langs/is_IS/printing.lang (100%) rename {htdocs => public}/langs/is_IS/productbatch.lang (100%) rename {htdocs => public}/langs/is_IS/products.lang (100%) rename {htdocs => public}/langs/is_IS/projects.lang (100%) rename {htdocs => public}/langs/is_IS/propal.lang (100%) rename {htdocs => public}/langs/is_IS/receiptprinter.lang (100%) rename {htdocs => public}/langs/is_IS/resource.lang (100%) rename {htdocs => public}/langs/is_IS/salaries.lang (100%) rename {htdocs => public}/langs/is_IS/sendings.lang (100%) rename {htdocs => public}/langs/is_IS/sms.lang (100%) rename {htdocs => public}/langs/is_IS/stocks.lang (100%) rename {htdocs => public}/langs/is_IS/supplier_proposal.lang (100%) rename {htdocs => public}/langs/is_IS/suppliers.lang (100%) rename {htdocs => public}/langs/is_IS/trips.lang (100%) rename {htdocs => public}/langs/is_IS/users.lang (100%) rename {htdocs => public}/langs/is_IS/website.lang (100%) rename {htdocs => public}/langs/is_IS/withdrawals.lang (100%) rename {htdocs => public}/langs/is_IS/workflow.lang (100%) rename {htdocs => public}/langs/it_IT/accountancy.lang (100%) rename {htdocs => public}/langs/it_IT/admin.lang (100%) rename {htdocs => public}/langs/it_IT/agenda.lang (100%) rename {htdocs => public}/langs/it_IT/banks.lang (100%) rename {htdocs => public}/langs/it_IT/bills.lang (100%) rename {htdocs => public}/langs/it_IT/bookmarks.lang (100%) rename {htdocs => public}/langs/it_IT/boxes.lang (100%) rename {htdocs => public}/langs/it_IT/cashdesk.lang (100%) rename {htdocs => public}/langs/it_IT/categories.lang (100%) rename {htdocs => public}/langs/it_IT/commercial.lang (100%) rename {htdocs => public}/langs/it_IT/companies.lang (100%) rename {htdocs => public}/langs/it_IT/compta.lang (100%) rename {htdocs => public}/langs/it_IT/contracts.lang (100%) rename {htdocs => public}/langs/it_IT/cron.lang (100%) rename {htdocs => public}/langs/it_IT/deliveries.lang (100%) rename {htdocs => public}/langs/it_IT/dict.lang (100%) rename {htdocs => public}/langs/it_IT/donations.lang (100%) rename {htdocs => public}/langs/it_IT/ecm.lang (100%) rename {htdocs => public}/langs/it_IT/errors.lang (100%) rename {htdocs => public}/langs/it_IT/exports.lang (100%) rename {htdocs => public}/langs/it_IT/externalsite.lang (100%) rename {htdocs => public}/langs/it_IT/ftp.lang (100%) rename {htdocs => public}/langs/it_IT/google.lang (100%) rename {htdocs => public}/langs/it_IT/help.lang (100%) rename {htdocs => public}/langs/it_IT/holiday.lang (100%) rename {htdocs => public}/langs/it_IT/hrm.lang (100%) rename {htdocs => public}/langs/it_IT/incoterm.lang (100%) rename {htdocs => public}/langs/it_IT/install.lang (100%) rename {htdocs => public}/langs/it_IT/interventions.lang (100%) rename {htdocs => public}/langs/it_IT/languages.lang (100%) rename {htdocs => public}/langs/it_IT/ldap.lang (100%) rename {htdocs => public}/langs/it_IT/link.lang (100%) rename {htdocs => public}/langs/it_IT/loan.lang (100%) rename {htdocs => public}/langs/it_IT/mailmanspip.lang (100%) rename {htdocs => public}/langs/it_IT/mails.lang (100%) rename {htdocs => public}/langs/it_IT/main.lang (100%) rename {htdocs => public}/langs/it_IT/margins.lang (100%) rename {htdocs => public}/langs/it_IT/members.lang (100%) rename {htdocs => public}/langs/it_IT/oauth.lang (100%) rename {htdocs => public}/langs/it_IT/opensurvey.lang (100%) rename {htdocs => public}/langs/it_IT/orders.lang (100%) rename {htdocs => public}/langs/it_IT/other.lang (100%) rename {htdocs => public}/langs/it_IT/paybox.lang (100%) rename {htdocs => public}/langs/it_IT/paypal.lang (100%) rename {htdocs => public}/langs/it_IT/printing.lang (100%) rename {htdocs => public}/langs/it_IT/productbatch.lang (100%) rename {htdocs => public}/langs/it_IT/products.lang (100%) rename {htdocs => public}/langs/it_IT/projects.lang (100%) rename {htdocs => public}/langs/it_IT/propal.lang (100%) rename {htdocs => public}/langs/it_IT/receiptprinter.lang (100%) rename {htdocs => public}/langs/it_IT/resource.lang (100%) rename {htdocs => public}/langs/it_IT/salaries.lang (100%) rename {htdocs => public}/langs/it_IT/sendings.lang (100%) rename {htdocs => public}/langs/it_IT/sms.lang (100%) rename {htdocs => public}/langs/it_IT/stocks.lang (100%) rename {htdocs => public}/langs/it_IT/supplier_proposal.lang (100%) rename {htdocs => public}/langs/it_IT/suppliers.lang (100%) rename {htdocs => public}/langs/it_IT/trips.lang (100%) rename {htdocs => public}/langs/it_IT/users.lang (100%) rename {htdocs => public}/langs/it_IT/website.lang (100%) rename {htdocs => public}/langs/it_IT/withdrawals.lang (100%) rename {htdocs => public}/langs/it_IT/workflow.lang (100%) rename {htdocs => public}/langs/ja_JP/accountancy.lang (100%) rename {htdocs => public}/langs/ja_JP/admin.lang (100%) rename {htdocs => public}/langs/ja_JP/agenda.lang (100%) rename {htdocs => public}/langs/ja_JP/banks.lang (100%) rename {htdocs => public}/langs/ja_JP/bills.lang (100%) rename {htdocs => public}/langs/ja_JP/bookmarks.lang (100%) rename {htdocs => public}/langs/ja_JP/boxes.lang (100%) rename {htdocs => public}/langs/ja_JP/cashdesk.lang (100%) rename {htdocs => public}/langs/ja_JP/categories.lang (100%) rename {htdocs => public}/langs/ja_JP/commercial.lang (100%) rename {htdocs => public}/langs/ja_JP/companies.lang (100%) rename {htdocs => public}/langs/ja_JP/compta.lang (100%) rename {htdocs => public}/langs/ja_JP/contracts.lang (100%) rename {htdocs => public}/langs/ja_JP/cron.lang (100%) rename {htdocs => public}/langs/ja_JP/deliveries.lang (100%) rename {htdocs => public}/langs/ja_JP/dict.lang (100%) rename {htdocs => public}/langs/ja_JP/donations.lang (100%) rename {htdocs => public}/langs/ja_JP/ecm.lang (100%) rename {htdocs => public}/langs/ja_JP/errors.lang (100%) rename {htdocs => public}/langs/ja_JP/exports.lang (100%) rename {htdocs => public}/langs/ja_JP/externalsite.lang (100%) rename {htdocs => public}/langs/ja_JP/ftp.lang (100%) rename {htdocs => public}/langs/ja_JP/help.lang (100%) rename {htdocs => public}/langs/ja_JP/holiday.lang (100%) rename {htdocs => public}/langs/ja_JP/hrm.lang (100%) rename {htdocs => public}/langs/ja_JP/incoterm.lang (100%) rename {htdocs => public}/langs/ja_JP/install.lang (100%) rename {htdocs => public}/langs/ja_JP/interventions.lang (100%) rename {htdocs => public}/langs/ja_JP/languages.lang (100%) rename {htdocs => public}/langs/ja_JP/ldap.lang (100%) rename {htdocs => public}/langs/ja_JP/link.lang (100%) rename {htdocs => public}/langs/ja_JP/loan.lang (100%) rename {htdocs => public}/langs/ja_JP/mailmanspip.lang (100%) rename {htdocs => public}/langs/ja_JP/mails.lang (100%) rename {htdocs => public}/langs/ja_JP/main.lang (100%) rename {htdocs => public}/langs/ja_JP/margins.lang (100%) rename {htdocs => public}/langs/ja_JP/members.lang (100%) rename {htdocs => public}/langs/ja_JP/oauth.lang (100%) rename {htdocs => public}/langs/ja_JP/opensurvey.lang (100%) rename {htdocs => public}/langs/ja_JP/orders.lang (100%) rename {htdocs => public}/langs/ja_JP/other.lang (100%) rename {htdocs => public}/langs/ja_JP/paybox.lang (100%) rename {htdocs => public}/langs/ja_JP/paypal.lang (100%) rename {htdocs => public}/langs/ja_JP/printing.lang (100%) rename {htdocs => public}/langs/ja_JP/productbatch.lang (100%) rename {htdocs => public}/langs/ja_JP/products.lang (100%) rename {htdocs => public}/langs/ja_JP/projects.lang (100%) rename {htdocs => public}/langs/ja_JP/propal.lang (100%) rename {htdocs => public}/langs/ja_JP/receiptprinter.lang (100%) rename {htdocs => public}/langs/ja_JP/resource.lang (100%) rename {htdocs => public}/langs/ja_JP/salaries.lang (100%) rename {htdocs => public}/langs/ja_JP/sendings.lang (100%) rename {htdocs => public}/langs/ja_JP/sms.lang (100%) rename {htdocs => public}/langs/ja_JP/stocks.lang (100%) rename {htdocs => public}/langs/ja_JP/supplier_proposal.lang (100%) rename {htdocs => public}/langs/ja_JP/suppliers.lang (100%) rename {htdocs => public}/langs/ja_JP/trips.lang (100%) rename {htdocs => public}/langs/ja_JP/users.lang (100%) rename {htdocs => public}/langs/ja_JP/website.lang (100%) rename {htdocs => public}/langs/ja_JP/withdrawals.lang (100%) rename {htdocs => public}/langs/ja_JP/workflow.lang (100%) rename {htdocs => public}/langs/ka_GE/accountancy.lang (100%) rename {htdocs => public}/langs/ka_GE/admin.lang (100%) rename {htdocs => public}/langs/ka_GE/agenda.lang (100%) rename {htdocs => public}/langs/ka_GE/banks.lang (100%) rename {htdocs => public}/langs/ka_GE/bills.lang (100%) rename {htdocs => public}/langs/ka_GE/bookmarks.lang (100%) rename {htdocs => public}/langs/ka_GE/boxes.lang (100%) rename {htdocs => public}/langs/ka_GE/cashdesk.lang (100%) rename {htdocs => public}/langs/ka_GE/categories.lang (100%) rename {htdocs => public}/langs/ka_GE/commercial.lang (100%) rename {htdocs => public}/langs/ka_GE/companies.lang (100%) rename {htdocs => public}/langs/ka_GE/compta.lang (100%) rename {htdocs => public}/langs/ka_GE/contracts.lang (100%) rename {htdocs => public}/langs/ka_GE/cron.lang (100%) rename {htdocs => public}/langs/ka_GE/deliveries.lang (100%) rename {htdocs => public}/langs/ka_GE/dict.lang (100%) rename {htdocs => public}/langs/ka_GE/donations.lang (100%) rename {htdocs => public}/langs/ka_GE/ecm.lang (100%) rename {htdocs => public}/langs/ka_GE/errors.lang (100%) rename {htdocs => public}/langs/ka_GE/exports.lang (100%) rename {htdocs => public}/langs/ka_GE/externalsite.lang (100%) rename {htdocs => public}/langs/ka_GE/ftp.lang (100%) rename {htdocs => public}/langs/ka_GE/help.lang (100%) rename {htdocs => public}/langs/ka_GE/holiday.lang (100%) rename {htdocs => public}/langs/ka_GE/hrm.lang (100%) rename {htdocs => public}/langs/ka_GE/incoterm.lang (100%) rename {htdocs => public}/langs/ka_GE/install.lang (100%) rename {htdocs => public}/langs/ka_GE/interventions.lang (100%) rename {htdocs => public}/langs/ka_GE/languages.lang (100%) rename {htdocs => public}/langs/ka_GE/ldap.lang (100%) rename {htdocs => public}/langs/ka_GE/link.lang (100%) rename {htdocs => public}/langs/ka_GE/loan.lang (100%) rename {htdocs => public}/langs/ka_GE/mailmanspip.lang (100%) rename {htdocs => public}/langs/ka_GE/mails.lang (100%) rename {htdocs => public}/langs/ka_GE/main.lang (100%) rename {htdocs => public}/langs/ka_GE/margins.lang (100%) rename {htdocs => public}/langs/ka_GE/members.lang (100%) rename {htdocs => public}/langs/ka_GE/oauth.lang (100%) rename {htdocs => public}/langs/ka_GE/opensurvey.lang (100%) rename {htdocs => public}/langs/ka_GE/orders.lang (100%) rename {htdocs => public}/langs/ka_GE/other.lang (100%) rename {htdocs => public}/langs/ka_GE/paybox.lang (100%) rename {htdocs => public}/langs/ka_GE/paypal.lang (100%) rename {htdocs => public}/langs/ka_GE/printing.lang (100%) rename {htdocs => public}/langs/ka_GE/productbatch.lang (100%) rename {htdocs => public}/langs/ka_GE/products.lang (100%) rename {htdocs => public}/langs/ka_GE/projects.lang (100%) rename {htdocs => public}/langs/ka_GE/propal.lang (100%) rename {htdocs => public}/langs/ka_GE/receiptprinter.lang (100%) rename {htdocs => public}/langs/ka_GE/resource.lang (100%) rename {htdocs => public}/langs/ka_GE/salaries.lang (100%) rename {htdocs => public}/langs/ka_GE/sendings.lang (100%) rename {htdocs => public}/langs/ka_GE/sms.lang (100%) rename {htdocs => public}/langs/ka_GE/stocks.lang (100%) rename {htdocs => public}/langs/ka_GE/supplier_proposal.lang (100%) rename {htdocs => public}/langs/ka_GE/suppliers.lang (100%) rename {htdocs => public}/langs/ka_GE/trips.lang (100%) rename {htdocs => public}/langs/ka_GE/users.lang (100%) rename {htdocs => public}/langs/ka_GE/website.lang (100%) rename {htdocs => public}/langs/ka_GE/withdrawals.lang (100%) rename {htdocs => public}/langs/ka_GE/workflow.lang (100%) rename {htdocs => public}/langs/km_KH/accountancy.lang (100%) rename {htdocs => public}/langs/km_KH/admin.lang (100%) rename {htdocs => public}/langs/km_KH/agenda.lang (100%) rename {htdocs => public}/langs/km_KH/banks.lang (100%) rename {htdocs => public}/langs/km_KH/bills.lang (100%) rename {htdocs => public}/langs/km_KH/bookmarks.lang (100%) rename {htdocs => public}/langs/km_KH/boxes.lang (100%) rename {htdocs => public}/langs/km_KH/cashdesk.lang (100%) rename {htdocs => public}/langs/km_KH/categories.lang (100%) rename {htdocs => public}/langs/km_KH/commercial.lang (100%) rename {htdocs => public}/langs/km_KH/companies.lang (100%) rename {htdocs => public}/langs/km_KH/compta.lang (100%) rename {htdocs => public}/langs/km_KH/contracts.lang (100%) rename {htdocs => public}/langs/km_KH/cron.lang (100%) rename {htdocs => public}/langs/km_KH/deliveries.lang (100%) rename {htdocs => public}/langs/km_KH/dict.lang (100%) rename {htdocs => public}/langs/km_KH/donations.lang (100%) rename {htdocs => public}/langs/km_KH/ecm.lang (100%) rename {htdocs => public}/langs/km_KH/errors.lang (100%) rename {htdocs => public}/langs/km_KH/exports.lang (100%) rename {htdocs => public}/langs/km_KH/externalsite.lang (100%) rename {htdocs => public}/langs/km_KH/ftp.lang (100%) rename {htdocs => public}/langs/km_KH/help.lang (100%) rename {htdocs => public}/langs/km_KH/holiday.lang (100%) rename {htdocs => public}/langs/km_KH/hrm.lang (100%) rename {htdocs => public}/langs/km_KH/incoterm.lang (100%) rename {htdocs => public}/langs/km_KH/install.lang (100%) rename {htdocs => public}/langs/km_KH/interventions.lang (100%) rename {htdocs => public}/langs/km_KH/languages.lang (100%) rename {htdocs => public}/langs/km_KH/ldap.lang (100%) rename {htdocs => public}/langs/km_KH/link.lang (100%) rename {htdocs => public}/langs/km_KH/loan.lang (100%) rename {htdocs => public}/langs/km_KH/mailmanspip.lang (100%) rename {htdocs => public}/langs/km_KH/mails.lang (100%) rename {htdocs => public}/langs/km_KH/main.lang (100%) rename {htdocs => public}/langs/km_KH/margins.lang (100%) rename {htdocs => public}/langs/km_KH/members.lang (100%) rename {htdocs => public}/langs/km_KH/oauth.lang (100%) rename {htdocs => public}/langs/km_KH/opensurvey.lang (100%) rename {htdocs => public}/langs/km_KH/orders.lang (100%) rename {htdocs => public}/langs/km_KH/other.lang (100%) rename {htdocs => public}/langs/km_KH/paybox.lang (100%) rename {htdocs => public}/langs/km_KH/paypal.lang (100%) rename {htdocs => public}/langs/km_KH/printing.lang (100%) rename {htdocs => public}/langs/km_KH/productbatch.lang (100%) rename {htdocs => public}/langs/km_KH/products.lang (100%) rename {htdocs => public}/langs/km_KH/projects.lang (100%) rename {htdocs => public}/langs/km_KH/propal.lang (100%) rename {htdocs => public}/langs/km_KH/receiptprinter.lang (100%) rename {htdocs => public}/langs/km_KH/resource.lang (100%) rename {htdocs => public}/langs/km_KH/salaries.lang (100%) rename {htdocs => public}/langs/km_KH/sendings.lang (100%) rename {htdocs => public}/langs/km_KH/sms.lang (100%) rename {htdocs => public}/langs/km_KH/stocks.lang (100%) rename {htdocs => public}/langs/km_KH/supplier_proposal.lang (100%) rename {htdocs => public}/langs/km_KH/suppliers.lang (100%) rename {htdocs => public}/langs/km_KH/trips.lang (100%) rename {htdocs => public}/langs/km_KH/users.lang (100%) rename {htdocs => public}/langs/km_KH/website.lang (100%) rename {htdocs => public}/langs/km_KH/withdrawals.lang (100%) rename {htdocs => public}/langs/km_KH/workflow.lang (100%) rename {htdocs => public}/langs/kn_IN/accountancy.lang (100%) rename {htdocs => public}/langs/kn_IN/admin.lang (100%) rename {htdocs => public}/langs/kn_IN/agenda.lang (100%) rename {htdocs => public}/langs/kn_IN/banks.lang (100%) rename {htdocs => public}/langs/kn_IN/bills.lang (100%) rename {htdocs => public}/langs/kn_IN/bookmarks.lang (100%) rename {htdocs => public}/langs/kn_IN/boxes.lang (100%) rename {htdocs => public}/langs/kn_IN/cashdesk.lang (100%) rename {htdocs => public}/langs/kn_IN/categories.lang (100%) rename {htdocs => public}/langs/kn_IN/commercial.lang (100%) rename {htdocs => public}/langs/kn_IN/companies.lang (100%) rename {htdocs => public}/langs/kn_IN/compta.lang (100%) rename {htdocs => public}/langs/kn_IN/contracts.lang (100%) rename {htdocs => public}/langs/kn_IN/cron.lang (100%) rename {htdocs => public}/langs/kn_IN/deliveries.lang (100%) rename {htdocs => public}/langs/kn_IN/dict.lang (100%) rename {htdocs => public}/langs/kn_IN/donations.lang (100%) rename {htdocs => public}/langs/kn_IN/ecm.lang (100%) rename {htdocs => public}/langs/kn_IN/errors.lang (100%) rename {htdocs => public}/langs/kn_IN/exports.lang (100%) rename {htdocs => public}/langs/kn_IN/externalsite.lang (100%) rename {htdocs => public}/langs/kn_IN/ftp.lang (100%) rename {htdocs => public}/langs/kn_IN/help.lang (100%) rename {htdocs => public}/langs/kn_IN/holiday.lang (100%) rename {htdocs => public}/langs/kn_IN/hrm.lang (100%) rename {htdocs => public}/langs/kn_IN/incoterm.lang (100%) rename {htdocs => public}/langs/kn_IN/install.lang (100%) rename {htdocs => public}/langs/kn_IN/interventions.lang (100%) rename {htdocs => public}/langs/kn_IN/languages.lang (100%) rename {htdocs => public}/langs/kn_IN/ldap.lang (100%) rename {htdocs => public}/langs/kn_IN/link.lang (100%) rename {htdocs => public}/langs/kn_IN/loan.lang (100%) rename {htdocs => public}/langs/kn_IN/mailmanspip.lang (100%) rename {htdocs => public}/langs/kn_IN/mails.lang (100%) rename {htdocs => public}/langs/kn_IN/main.lang (100%) rename {htdocs => public}/langs/kn_IN/margins.lang (100%) rename {htdocs => public}/langs/kn_IN/members.lang (100%) rename {htdocs => public}/langs/kn_IN/oauth.lang (100%) rename {htdocs => public}/langs/kn_IN/opensurvey.lang (100%) rename {htdocs => public}/langs/kn_IN/orders.lang (100%) rename {htdocs => public}/langs/kn_IN/other.lang (100%) rename {htdocs => public}/langs/kn_IN/paybox.lang (100%) rename {htdocs => public}/langs/kn_IN/paypal.lang (100%) rename {htdocs => public}/langs/kn_IN/printing.lang (100%) rename {htdocs => public}/langs/kn_IN/productbatch.lang (100%) rename {htdocs => public}/langs/kn_IN/products.lang (100%) rename {htdocs => public}/langs/kn_IN/projects.lang (100%) rename {htdocs => public}/langs/kn_IN/propal.lang (100%) rename {htdocs => public}/langs/kn_IN/receiptprinter.lang (100%) rename {htdocs => public}/langs/kn_IN/resource.lang (100%) rename {htdocs => public}/langs/kn_IN/salaries.lang (100%) rename {htdocs => public}/langs/kn_IN/sendings.lang (100%) rename {htdocs => public}/langs/kn_IN/sms.lang (100%) rename {htdocs => public}/langs/kn_IN/stocks.lang (100%) rename {htdocs => public}/langs/kn_IN/supplier_proposal.lang (100%) rename {htdocs => public}/langs/kn_IN/suppliers.lang (100%) rename {htdocs => public}/langs/kn_IN/trips.lang (100%) rename {htdocs => public}/langs/kn_IN/users.lang (100%) rename {htdocs => public}/langs/kn_IN/website.lang (100%) rename {htdocs => public}/langs/kn_IN/withdrawals.lang (100%) rename {htdocs => public}/langs/kn_IN/workflow.lang (100%) rename {htdocs => public}/langs/ko_KR/accountancy.lang (100%) rename {htdocs => public}/langs/ko_KR/admin.lang (100%) rename {htdocs => public}/langs/ko_KR/agenda.lang (100%) rename {htdocs => public}/langs/ko_KR/banks.lang (100%) rename {htdocs => public}/langs/ko_KR/bills.lang (100%) rename {htdocs => public}/langs/ko_KR/bookmarks.lang (100%) rename {htdocs => public}/langs/ko_KR/boxes.lang (100%) rename {htdocs => public}/langs/ko_KR/cashdesk.lang (100%) rename {htdocs => public}/langs/ko_KR/categories.lang (100%) rename {htdocs => public}/langs/ko_KR/commercial.lang (100%) rename {htdocs => public}/langs/ko_KR/companies.lang (100%) rename {htdocs => public}/langs/ko_KR/compta.lang (100%) rename {htdocs => public}/langs/ko_KR/contracts.lang (100%) rename {htdocs => public}/langs/ko_KR/cron.lang (100%) rename {htdocs => public}/langs/ko_KR/deliveries.lang (100%) rename {htdocs => public}/langs/ko_KR/dict.lang (100%) rename {htdocs => public}/langs/ko_KR/donations.lang (100%) rename {htdocs => public}/langs/ko_KR/ecm.lang (100%) rename {htdocs => public}/langs/ko_KR/errors.lang (100%) rename {htdocs => public}/langs/ko_KR/exports.lang (100%) rename {htdocs => public}/langs/ko_KR/externalsite.lang (100%) rename {htdocs => public}/langs/ko_KR/ftp.lang (100%) rename {htdocs => public}/langs/ko_KR/help.lang (100%) rename {htdocs => public}/langs/ko_KR/holiday.lang (100%) rename {htdocs => public}/langs/ko_KR/hrm.lang (100%) rename {htdocs => public}/langs/ko_KR/incoterm.lang (100%) rename {htdocs => public}/langs/ko_KR/install.lang (100%) rename {htdocs => public}/langs/ko_KR/interventions.lang (100%) rename {htdocs => public}/langs/ko_KR/languages.lang (100%) rename {htdocs => public}/langs/ko_KR/ldap.lang (100%) rename {htdocs => public}/langs/ko_KR/link.lang (100%) rename {htdocs => public}/langs/ko_KR/loan.lang (100%) rename {htdocs => public}/langs/ko_KR/mailmanspip.lang (100%) rename {htdocs => public}/langs/ko_KR/mails.lang (100%) rename {htdocs => public}/langs/ko_KR/main.lang (100%) rename {htdocs => public}/langs/ko_KR/margins.lang (100%) rename {htdocs => public}/langs/ko_KR/members.lang (100%) rename {htdocs => public}/langs/ko_KR/oauth.lang (100%) rename {htdocs => public}/langs/ko_KR/opensurvey.lang (100%) rename {htdocs => public}/langs/ko_KR/orders.lang (100%) rename {htdocs => public}/langs/ko_KR/other.lang (100%) rename {htdocs => public}/langs/ko_KR/paybox.lang (100%) rename {htdocs => public}/langs/ko_KR/paypal.lang (100%) rename {htdocs => public}/langs/ko_KR/printing.lang (100%) rename {htdocs => public}/langs/ko_KR/productbatch.lang (100%) rename {htdocs => public}/langs/ko_KR/products.lang (100%) rename {htdocs => public}/langs/ko_KR/projects.lang (100%) rename {htdocs => public}/langs/ko_KR/propal.lang (100%) rename {htdocs => public}/langs/ko_KR/receiptprinter.lang (100%) rename {htdocs => public}/langs/ko_KR/resource.lang (100%) rename {htdocs => public}/langs/ko_KR/salaries.lang (100%) rename {htdocs => public}/langs/ko_KR/sendings.lang (100%) rename {htdocs => public}/langs/ko_KR/sms.lang (100%) rename {htdocs => public}/langs/ko_KR/stocks.lang (100%) rename {htdocs => public}/langs/ko_KR/supplier_proposal.lang (100%) rename {htdocs => public}/langs/ko_KR/suppliers.lang (100%) rename {htdocs => public}/langs/ko_KR/trips.lang (100%) rename {htdocs => public}/langs/ko_KR/users.lang (100%) rename {htdocs => public}/langs/ko_KR/website.lang (100%) rename {htdocs => public}/langs/ko_KR/withdrawals.lang (100%) rename {htdocs => public}/langs/ko_KR/workflow.lang (100%) rename {htdocs => public}/langs/lo_LA/accountancy.lang (100%) rename {htdocs => public}/langs/lo_LA/admin.lang (100%) rename {htdocs => public}/langs/lo_LA/agenda.lang (100%) rename {htdocs => public}/langs/lo_LA/banks.lang (100%) rename {htdocs => public}/langs/lo_LA/bills.lang (100%) rename {htdocs => public}/langs/lo_LA/bookmarks.lang (100%) rename {htdocs => public}/langs/lo_LA/boxes.lang (100%) rename {htdocs => public}/langs/lo_LA/cashdesk.lang (100%) rename {htdocs => public}/langs/lo_LA/categories.lang (100%) rename {htdocs => public}/langs/lo_LA/commercial.lang (100%) rename {htdocs => public}/langs/lo_LA/companies.lang (100%) rename {htdocs => public}/langs/lo_LA/compta.lang (100%) rename {htdocs => public}/langs/lo_LA/contracts.lang (100%) rename {htdocs => public}/langs/lo_LA/cron.lang (100%) rename {htdocs => public}/langs/lo_LA/deliveries.lang (100%) rename {htdocs => public}/langs/lo_LA/dict.lang (100%) rename {htdocs => public}/langs/lo_LA/donations.lang (100%) rename {htdocs => public}/langs/lo_LA/ecm.lang (100%) rename {htdocs => public}/langs/lo_LA/errors.lang (100%) rename {htdocs => public}/langs/lo_LA/exports.lang (100%) rename {htdocs => public}/langs/lo_LA/externalsite.lang (100%) rename {htdocs => public}/langs/lo_LA/ftp.lang (100%) rename {htdocs => public}/langs/lo_LA/help.lang (100%) rename {htdocs => public}/langs/lo_LA/holiday.lang (100%) rename {htdocs => public}/langs/lo_LA/hrm.lang (100%) rename {htdocs => public}/langs/lo_LA/incoterm.lang (100%) rename {htdocs => public}/langs/lo_LA/install.lang (100%) rename {htdocs => public}/langs/lo_LA/interventions.lang (100%) rename {htdocs => public}/langs/lo_LA/languages.lang (100%) rename {htdocs => public}/langs/lo_LA/ldap.lang (100%) rename {htdocs => public}/langs/lo_LA/link.lang (100%) rename {htdocs => public}/langs/lo_LA/loan.lang (100%) rename {htdocs => public}/langs/lo_LA/mailmanspip.lang (100%) rename {htdocs => public}/langs/lo_LA/mails.lang (100%) rename {htdocs => public}/langs/lo_LA/main.lang (100%) rename {htdocs => public}/langs/lo_LA/margins.lang (100%) rename {htdocs => public}/langs/lo_LA/members.lang (100%) rename {htdocs => public}/langs/lo_LA/oauth.lang (100%) rename {htdocs => public}/langs/lo_LA/opensurvey.lang (100%) rename {htdocs => public}/langs/lo_LA/orders.lang (100%) rename {htdocs => public}/langs/lo_LA/other.lang (100%) rename {htdocs => public}/langs/lo_LA/paybox.lang (100%) rename {htdocs => public}/langs/lo_LA/paypal.lang (100%) rename {htdocs => public}/langs/lo_LA/printing.lang (100%) rename {htdocs => public}/langs/lo_LA/productbatch.lang (100%) rename {htdocs => public}/langs/lo_LA/products.lang (100%) rename {htdocs => public}/langs/lo_LA/projects.lang (100%) rename {htdocs => public}/langs/lo_LA/propal.lang (100%) rename {htdocs => public}/langs/lo_LA/receiptprinter.lang (100%) rename {htdocs => public}/langs/lo_LA/resource.lang (100%) rename {htdocs => public}/langs/lo_LA/salaries.lang (100%) rename {htdocs => public}/langs/lo_LA/sendings.lang (100%) rename {htdocs => public}/langs/lo_LA/sms.lang (100%) rename {htdocs => public}/langs/lo_LA/stocks.lang (100%) rename {htdocs => public}/langs/lo_LA/supplier_proposal.lang (100%) rename {htdocs => public}/langs/lo_LA/suppliers.lang (100%) rename {htdocs => public}/langs/lo_LA/trips.lang (100%) rename {htdocs => public}/langs/lo_LA/users.lang (100%) rename {htdocs => public}/langs/lo_LA/website.lang (100%) rename {htdocs => public}/langs/lo_LA/withdrawals.lang (100%) rename {htdocs => public}/langs/lo_LA/workflow.lang (100%) rename {htdocs => public}/langs/lt_LT/accountancy.lang (100%) rename {htdocs => public}/langs/lt_LT/admin.lang (100%) rename {htdocs => public}/langs/lt_LT/agenda.lang (100%) rename {htdocs => public}/langs/lt_LT/banks.lang (100%) rename {htdocs => public}/langs/lt_LT/bills.lang (100%) rename {htdocs => public}/langs/lt_LT/bookmarks.lang (100%) rename {htdocs => public}/langs/lt_LT/boxes.lang (100%) rename {htdocs => public}/langs/lt_LT/cashdesk.lang (100%) rename {htdocs => public}/langs/lt_LT/categories.lang (100%) rename {htdocs => public}/langs/lt_LT/commercial.lang (100%) rename {htdocs => public}/langs/lt_LT/companies.lang (100%) rename {htdocs => public}/langs/lt_LT/compta.lang (100%) rename {htdocs => public}/langs/lt_LT/contracts.lang (100%) rename {htdocs => public}/langs/lt_LT/cron.lang (100%) rename {htdocs => public}/langs/lt_LT/deliveries.lang (100%) rename {htdocs => public}/langs/lt_LT/dict.lang (100%) rename {htdocs => public}/langs/lt_LT/donations.lang (100%) rename {htdocs => public}/langs/lt_LT/ecm.lang (100%) rename {htdocs => public}/langs/lt_LT/errors.lang (100%) rename {htdocs => public}/langs/lt_LT/exports.lang (100%) rename {htdocs => public}/langs/lt_LT/externalsite.lang (100%) rename {htdocs => public}/langs/lt_LT/ftp.lang (100%) rename {htdocs => public}/langs/lt_LT/help.lang (100%) rename {htdocs => public}/langs/lt_LT/holiday.lang (100%) rename {htdocs => public}/langs/lt_LT/hrm.lang (100%) rename {htdocs => public}/langs/lt_LT/incoterm.lang (100%) rename {htdocs => public}/langs/lt_LT/install.lang (100%) rename {htdocs => public}/langs/lt_LT/interventions.lang (100%) rename {htdocs => public}/langs/lt_LT/languages.lang (100%) rename {htdocs => public}/langs/lt_LT/ldap.lang (100%) rename {htdocs => public}/langs/lt_LT/link.lang (100%) rename {htdocs => public}/langs/lt_LT/loan.lang (100%) rename {htdocs => public}/langs/lt_LT/mailmanspip.lang (100%) rename {htdocs => public}/langs/lt_LT/mails.lang (100%) rename {htdocs => public}/langs/lt_LT/main.lang (100%) rename {htdocs => public}/langs/lt_LT/margins.lang (100%) rename {htdocs => public}/langs/lt_LT/members.lang (100%) rename {htdocs => public}/langs/lt_LT/oauth.lang (100%) rename {htdocs => public}/langs/lt_LT/opensurvey.lang (100%) rename {htdocs => public}/langs/lt_LT/orders.lang (100%) rename {htdocs => public}/langs/lt_LT/other.lang (100%) rename {htdocs => public}/langs/lt_LT/paybox.lang (100%) rename {htdocs => public}/langs/lt_LT/paypal.lang (100%) rename {htdocs => public}/langs/lt_LT/printing.lang (100%) rename {htdocs => public}/langs/lt_LT/productbatch.lang (100%) rename {htdocs => public}/langs/lt_LT/products.lang (100%) rename {htdocs => public}/langs/lt_LT/projects.lang (100%) rename {htdocs => public}/langs/lt_LT/propal.lang (100%) rename {htdocs => public}/langs/lt_LT/receiptprinter.lang (100%) rename {htdocs => public}/langs/lt_LT/resource.lang (100%) rename {htdocs => public}/langs/lt_LT/salaries.lang (100%) rename {htdocs => public}/langs/lt_LT/sendings.lang (100%) rename {htdocs => public}/langs/lt_LT/sms.lang (100%) rename {htdocs => public}/langs/lt_LT/stocks.lang (100%) rename {htdocs => public}/langs/lt_LT/supplier_proposal.lang (100%) rename {htdocs => public}/langs/lt_LT/suppliers.lang (100%) rename {htdocs => public}/langs/lt_LT/trips.lang (100%) rename {htdocs => public}/langs/lt_LT/users.lang (100%) rename {htdocs => public}/langs/lt_LT/website.lang (100%) rename {htdocs => public}/langs/lt_LT/withdrawals.lang (100%) rename {htdocs => public}/langs/lt_LT/workflow.lang (100%) rename {htdocs => public}/langs/lv_LV/accountancy.lang (100%) rename {htdocs => public}/langs/lv_LV/admin.lang (100%) rename {htdocs => public}/langs/lv_LV/agenda.lang (100%) rename {htdocs => public}/langs/lv_LV/banks.lang (100%) rename {htdocs => public}/langs/lv_LV/bills.lang (100%) rename {htdocs => public}/langs/lv_LV/bookmarks.lang (100%) rename {htdocs => public}/langs/lv_LV/boxes.lang (100%) rename {htdocs => public}/langs/lv_LV/cashdesk.lang (100%) rename {htdocs => public}/langs/lv_LV/categories.lang (100%) rename {htdocs => public}/langs/lv_LV/commercial.lang (100%) rename {htdocs => public}/langs/lv_LV/companies.lang (100%) rename {htdocs => public}/langs/lv_LV/compta.lang (100%) rename {htdocs => public}/langs/lv_LV/contracts.lang (100%) rename {htdocs => public}/langs/lv_LV/cron.lang (100%) rename {htdocs => public}/langs/lv_LV/deliveries.lang (100%) rename {htdocs => public}/langs/lv_LV/dict.lang (100%) rename {htdocs => public}/langs/lv_LV/donations.lang (100%) rename {htdocs => public}/langs/lv_LV/ecm.lang (100%) rename {htdocs => public}/langs/lv_LV/errors.lang (100%) rename {htdocs => public}/langs/lv_LV/exports.lang (100%) rename {htdocs => public}/langs/lv_LV/externalsite.lang (100%) rename {htdocs => public}/langs/lv_LV/ftp.lang (100%) rename {htdocs => public}/langs/lv_LV/help.lang (100%) rename {htdocs => public}/langs/lv_LV/holiday.lang (100%) rename {htdocs => public}/langs/lv_LV/hrm.lang (100%) rename {htdocs => public}/langs/lv_LV/incoterm.lang (100%) rename {htdocs => public}/langs/lv_LV/install.lang (100%) rename {htdocs => public}/langs/lv_LV/interventions.lang (100%) rename {htdocs => public}/langs/lv_LV/languages.lang (100%) rename {htdocs => public}/langs/lv_LV/ldap.lang (100%) rename {htdocs => public}/langs/lv_LV/link.lang (100%) rename {htdocs => public}/langs/lv_LV/loan.lang (100%) rename {htdocs => public}/langs/lv_LV/mailmanspip.lang (100%) rename {htdocs => public}/langs/lv_LV/mails.lang (100%) rename {htdocs => public}/langs/lv_LV/main.lang (100%) rename {htdocs => public}/langs/lv_LV/margins.lang (100%) rename {htdocs => public}/langs/lv_LV/members.lang (100%) rename {htdocs => public}/langs/lv_LV/oauth.lang (100%) rename {htdocs => public}/langs/lv_LV/opensurvey.lang (100%) rename {htdocs => public}/langs/lv_LV/orders.lang (100%) rename {htdocs => public}/langs/lv_LV/other.lang (100%) rename {htdocs => public}/langs/lv_LV/paybox.lang (100%) rename {htdocs => public}/langs/lv_LV/paypal.lang (100%) rename {htdocs => public}/langs/lv_LV/printing.lang (100%) rename {htdocs => public}/langs/lv_LV/productbatch.lang (100%) rename {htdocs => public}/langs/lv_LV/products.lang (100%) rename {htdocs => public}/langs/lv_LV/projects.lang (100%) rename {htdocs => public}/langs/lv_LV/propal.lang (100%) rename {htdocs => public}/langs/lv_LV/receiptprinter.lang (100%) rename {htdocs => public}/langs/lv_LV/resource.lang (100%) rename {htdocs => public}/langs/lv_LV/salaries.lang (100%) rename {htdocs => public}/langs/lv_LV/sendings.lang (100%) rename {htdocs => public}/langs/lv_LV/sms.lang (100%) rename {htdocs => public}/langs/lv_LV/stocks.lang (100%) rename {htdocs => public}/langs/lv_LV/supplier_proposal.lang (100%) rename {htdocs => public}/langs/lv_LV/suppliers.lang (100%) rename {htdocs => public}/langs/lv_LV/trips.lang (100%) rename {htdocs => public}/langs/lv_LV/users.lang (100%) rename {htdocs => public}/langs/lv_LV/website.lang (100%) rename {htdocs => public}/langs/lv_LV/withdrawals.lang (100%) rename {htdocs => public}/langs/lv_LV/workflow.lang (100%) rename {htdocs => public}/langs/mk_MK/accountancy.lang (100%) rename {htdocs => public}/langs/mk_MK/admin.lang (100%) rename {htdocs => public}/langs/mk_MK/agenda.lang (100%) rename {htdocs => public}/langs/mk_MK/banks.lang (100%) rename {htdocs => public}/langs/mk_MK/bills.lang (100%) rename {htdocs => public}/langs/mk_MK/bookmarks.lang (100%) rename {htdocs => public}/langs/mk_MK/boxes.lang (100%) rename {htdocs => public}/langs/mk_MK/cashdesk.lang (100%) rename {htdocs => public}/langs/mk_MK/categories.lang (100%) rename {htdocs => public}/langs/mk_MK/commercial.lang (100%) rename {htdocs => public}/langs/mk_MK/companies.lang (100%) rename {htdocs => public}/langs/mk_MK/compta.lang (100%) rename {htdocs => public}/langs/mk_MK/contracts.lang (100%) rename {htdocs => public}/langs/mk_MK/cron.lang (100%) rename {htdocs => public}/langs/mk_MK/deliveries.lang (100%) rename {htdocs => public}/langs/mk_MK/dict.lang (100%) rename {htdocs => public}/langs/mk_MK/donations.lang (100%) rename {htdocs => public}/langs/mk_MK/ecm.lang (100%) rename {htdocs => public}/langs/mk_MK/errors.lang (100%) rename {htdocs => public}/langs/mk_MK/exports.lang (100%) rename {htdocs => public}/langs/mk_MK/externalsite.lang (100%) rename {htdocs => public}/langs/mk_MK/ftp.lang (100%) rename {htdocs => public}/langs/mk_MK/help.lang (100%) rename {htdocs => public}/langs/mk_MK/holiday.lang (100%) rename {htdocs => public}/langs/mk_MK/hrm.lang (100%) rename {htdocs => public}/langs/mk_MK/incoterm.lang (100%) rename {htdocs => public}/langs/mk_MK/install.lang (100%) rename {htdocs => public}/langs/mk_MK/interventions.lang (100%) rename {htdocs => public}/langs/mk_MK/languages.lang (100%) rename {htdocs => public}/langs/mk_MK/ldap.lang (100%) rename {htdocs => public}/langs/mk_MK/link.lang (100%) rename {htdocs => public}/langs/mk_MK/loan.lang (100%) rename {htdocs => public}/langs/mk_MK/mailmanspip.lang (100%) rename {htdocs => public}/langs/mk_MK/mails.lang (100%) rename {htdocs => public}/langs/mk_MK/main.lang (100%) rename {htdocs => public}/langs/mk_MK/margins.lang (100%) rename {htdocs => public}/langs/mk_MK/members.lang (100%) rename {htdocs => public}/langs/mk_MK/oauth.lang (100%) rename {htdocs => public}/langs/mk_MK/opensurvey.lang (100%) rename {htdocs => public}/langs/mk_MK/orders.lang (100%) rename {htdocs => public}/langs/mk_MK/other.lang (100%) rename {htdocs => public}/langs/mk_MK/paybox.lang (100%) rename {htdocs => public}/langs/mk_MK/paypal.lang (100%) rename {htdocs => public}/langs/mk_MK/printing.lang (100%) rename {htdocs => public}/langs/mk_MK/productbatch.lang (100%) rename {htdocs => public}/langs/mk_MK/products.lang (100%) rename {htdocs => public}/langs/mk_MK/projects.lang (100%) rename {htdocs => public}/langs/mk_MK/propal.lang (100%) rename {htdocs => public}/langs/mk_MK/receiptprinter.lang (100%) rename {htdocs => public}/langs/mk_MK/resource.lang (100%) rename {htdocs => public}/langs/mk_MK/salaries.lang (100%) rename {htdocs => public}/langs/mk_MK/sendings.lang (100%) rename {htdocs => public}/langs/mk_MK/sms.lang (100%) rename {htdocs => public}/langs/mk_MK/stocks.lang (100%) rename {htdocs => public}/langs/mk_MK/supplier_proposal.lang (100%) rename {htdocs => public}/langs/mk_MK/suppliers.lang (100%) rename {htdocs => public}/langs/mk_MK/trips.lang (100%) rename {htdocs => public}/langs/mk_MK/users.lang (100%) rename {htdocs => public}/langs/mk_MK/website.lang (100%) rename {htdocs => public}/langs/mk_MK/withdrawals.lang (100%) rename {htdocs => public}/langs/mk_MK/workflow.lang (100%) rename {htdocs => public}/langs/mn_MN/accountancy.lang (100%) rename {htdocs => public}/langs/mn_MN/admin.lang (100%) rename {htdocs => public}/langs/mn_MN/agenda.lang (100%) rename {htdocs => public}/langs/mn_MN/banks.lang (100%) rename {htdocs => public}/langs/mn_MN/bills.lang (100%) rename {htdocs => public}/langs/mn_MN/bookmarks.lang (100%) rename {htdocs => public}/langs/mn_MN/boxes.lang (100%) rename {htdocs => public}/langs/mn_MN/cashdesk.lang (100%) rename {htdocs => public}/langs/mn_MN/categories.lang (100%) rename {htdocs => public}/langs/mn_MN/commercial.lang (100%) rename {htdocs => public}/langs/mn_MN/companies.lang (100%) rename {htdocs => public}/langs/mn_MN/compta.lang (100%) rename {htdocs => public}/langs/mn_MN/contracts.lang (100%) rename {htdocs => public}/langs/mn_MN/cron.lang (100%) rename {htdocs => public}/langs/mn_MN/deliveries.lang (100%) rename {htdocs => public}/langs/mn_MN/dict.lang (100%) rename {htdocs => public}/langs/mn_MN/donations.lang (100%) rename {htdocs => public}/langs/mn_MN/ecm.lang (100%) rename {htdocs => public}/langs/mn_MN/errors.lang (100%) rename {htdocs => public}/langs/mn_MN/exports.lang (100%) rename {htdocs => public}/langs/mn_MN/externalsite.lang (100%) rename {htdocs => public}/langs/mn_MN/ftp.lang (100%) rename {htdocs => public}/langs/mn_MN/help.lang (100%) rename {htdocs => public}/langs/mn_MN/holiday.lang (100%) rename {htdocs => public}/langs/mn_MN/hrm.lang (100%) rename {htdocs => public}/langs/mn_MN/incoterm.lang (100%) rename {htdocs => public}/langs/mn_MN/install.lang (100%) rename {htdocs => public}/langs/mn_MN/interventions.lang (100%) rename {htdocs => public}/langs/mn_MN/languages.lang (100%) rename {htdocs => public}/langs/mn_MN/ldap.lang (100%) rename {htdocs => public}/langs/mn_MN/link.lang (100%) rename {htdocs => public}/langs/mn_MN/loan.lang (100%) rename {htdocs => public}/langs/mn_MN/mailmanspip.lang (100%) rename {htdocs => public}/langs/mn_MN/mails.lang (100%) rename {htdocs => public}/langs/mn_MN/main.lang (100%) rename {htdocs => public}/langs/mn_MN/margins.lang (100%) rename {htdocs => public}/langs/mn_MN/members.lang (100%) rename {htdocs => public}/langs/mn_MN/oauth.lang (100%) rename {htdocs => public}/langs/mn_MN/opensurvey.lang (100%) rename {htdocs => public}/langs/mn_MN/orders.lang (100%) rename {htdocs => public}/langs/mn_MN/other.lang (100%) rename {htdocs => public}/langs/mn_MN/paybox.lang (100%) rename {htdocs => public}/langs/mn_MN/paypal.lang (100%) rename {htdocs => public}/langs/mn_MN/printing.lang (100%) rename {htdocs => public}/langs/mn_MN/productbatch.lang (100%) rename {htdocs => public}/langs/mn_MN/products.lang (100%) rename {htdocs => public}/langs/mn_MN/projects.lang (100%) rename {htdocs => public}/langs/mn_MN/propal.lang (100%) rename {htdocs => public}/langs/mn_MN/receiptprinter.lang (100%) rename {htdocs => public}/langs/mn_MN/resource.lang (100%) rename {htdocs => public}/langs/mn_MN/salaries.lang (100%) rename {htdocs => public}/langs/mn_MN/sendings.lang (100%) rename {htdocs => public}/langs/mn_MN/sms.lang (100%) rename {htdocs => public}/langs/mn_MN/stocks.lang (100%) rename {htdocs => public}/langs/mn_MN/supplier_proposal.lang (100%) rename {htdocs => public}/langs/mn_MN/suppliers.lang (100%) rename {htdocs => public}/langs/mn_MN/trips.lang (100%) rename {htdocs => public}/langs/mn_MN/users.lang (100%) rename {htdocs => public}/langs/mn_MN/website.lang (100%) rename {htdocs => public}/langs/mn_MN/withdrawals.lang (100%) rename {htdocs => public}/langs/mn_MN/workflow.lang (100%) rename {htdocs => public}/langs/nb_NO/accountancy.lang (100%) rename {htdocs => public}/langs/nb_NO/admin.lang (100%) rename {htdocs => public}/langs/nb_NO/agenda.lang (100%) rename {htdocs => public}/langs/nb_NO/banks.lang (100%) rename {htdocs => public}/langs/nb_NO/bills.lang (100%) rename {htdocs => public}/langs/nb_NO/bookmarks.lang (100%) rename {htdocs => public}/langs/nb_NO/boxes.lang (100%) rename {htdocs => public}/langs/nb_NO/cashdesk.lang (100%) rename {htdocs => public}/langs/nb_NO/categories.lang (100%) rename {htdocs => public}/langs/nb_NO/commercial.lang (100%) rename {htdocs => public}/langs/nb_NO/companies.lang (100%) rename {htdocs => public}/langs/nb_NO/compta.lang (100%) rename {htdocs => public}/langs/nb_NO/contracts.lang (100%) rename {htdocs => public}/langs/nb_NO/cron.lang (100%) rename {htdocs => public}/langs/nb_NO/deliveries.lang (100%) rename {htdocs => public}/langs/nb_NO/dict.lang (100%) rename {htdocs => public}/langs/nb_NO/donations.lang (100%) rename {htdocs => public}/langs/nb_NO/ecm.lang (100%) rename {htdocs => public}/langs/nb_NO/errors.lang (100%) rename {htdocs => public}/langs/nb_NO/exports.lang (100%) rename {htdocs => public}/langs/nb_NO/externalsite.lang (100%) rename {htdocs => public}/langs/nb_NO/ftp.lang (100%) rename {htdocs => public}/langs/nb_NO/help.lang (100%) rename {htdocs => public}/langs/nb_NO/holiday.lang (100%) rename {htdocs => public}/langs/nb_NO/hrm.lang (100%) rename {htdocs => public}/langs/nb_NO/incoterm.lang (100%) rename {htdocs => public}/langs/nb_NO/install.lang (100%) rename {htdocs => public}/langs/nb_NO/interventions.lang (100%) rename {htdocs => public}/langs/nb_NO/languages.lang (100%) rename {htdocs => public}/langs/nb_NO/ldap.lang (100%) rename {htdocs => public}/langs/nb_NO/link.lang (100%) rename {htdocs => public}/langs/nb_NO/loan.lang (100%) rename {htdocs => public}/langs/nb_NO/mailmanspip.lang (100%) rename {htdocs => public}/langs/nb_NO/mails.lang (100%) rename {htdocs => public}/langs/nb_NO/main.lang (100%) rename {htdocs => public}/langs/nb_NO/margins.lang (100%) rename {htdocs => public}/langs/nb_NO/members.lang (100%) rename {htdocs => public}/langs/nb_NO/oauth.lang (100%) rename {htdocs => public}/langs/nb_NO/opensurvey.lang (100%) rename {htdocs => public}/langs/nb_NO/orders.lang (100%) rename {htdocs => public}/langs/nb_NO/other.lang (100%) rename {htdocs => public}/langs/nb_NO/paybox.lang (100%) rename {htdocs => public}/langs/nb_NO/paypal.lang (100%) rename {htdocs => public}/langs/nb_NO/printing.lang (100%) rename {htdocs => public}/langs/nb_NO/productbatch.lang (100%) rename {htdocs => public}/langs/nb_NO/products.lang (100%) rename {htdocs => public}/langs/nb_NO/projects.lang (100%) rename {htdocs => public}/langs/nb_NO/propal.lang (100%) rename {htdocs => public}/langs/nb_NO/receiptprinter.lang (100%) rename {htdocs => public}/langs/nb_NO/resource.lang (100%) rename {htdocs => public}/langs/nb_NO/salaries.lang (100%) rename {htdocs => public}/langs/nb_NO/sendings.lang (100%) rename {htdocs => public}/langs/nb_NO/sms.lang (100%) rename {htdocs => public}/langs/nb_NO/stocks.lang (100%) rename {htdocs => public}/langs/nb_NO/supplier_proposal.lang (100%) rename {htdocs => public}/langs/nb_NO/suppliers.lang (100%) rename {htdocs => public}/langs/nb_NO/trips.lang (100%) rename {htdocs => public}/langs/nb_NO/users.lang (100%) rename {htdocs => public}/langs/nb_NO/website.lang (100%) rename {htdocs => public}/langs/nb_NO/withdrawals.lang (100%) rename {htdocs => public}/langs/nb_NO/workflow.lang (100%) rename {htdocs => public}/langs/nl_BE/accountancy.lang (100%) rename {htdocs => public}/langs/nl_BE/admin.lang (100%) rename {htdocs => public}/langs/nl_BE/agenda.lang (100%) rename {htdocs => public}/langs/nl_BE/banks.lang (100%) rename {htdocs => public}/langs/nl_BE/bills.lang (100%) rename {htdocs => public}/langs/nl_BE/bookmarks.lang (100%) rename {htdocs => public}/langs/nl_BE/boxes.lang (100%) rename {htdocs => public}/langs/nl_BE/cashdesk.lang (100%) rename {htdocs => public}/langs/nl_BE/categories.lang (100%) rename {htdocs => public}/langs/nl_BE/commercial.lang (100%) rename {htdocs => public}/langs/nl_BE/companies.lang (100%) rename {htdocs => public}/langs/nl_BE/compta.lang (100%) rename {htdocs => public}/langs/nl_BE/contracts.lang (100%) rename {htdocs => public}/langs/nl_BE/cron.lang (100%) rename {htdocs => public}/langs/nl_BE/deliveries.lang (100%) rename {htdocs => public}/langs/nl_BE/dict.lang (100%) rename {htdocs => public}/langs/nl_BE/donations.lang (100%) rename {htdocs => public}/langs/nl_BE/ecm.lang (100%) rename {htdocs => public}/langs/nl_BE/errors.lang (100%) rename {htdocs => public}/langs/nl_BE/exports.lang (100%) rename {htdocs => public}/langs/nl_BE/externalsite.lang (100%) rename {htdocs => public}/langs/nl_BE/ftp.lang (100%) rename {htdocs => public}/langs/nl_BE/help.lang (100%) rename {htdocs => public}/langs/nl_BE/holiday.lang (100%) rename {htdocs => public}/langs/nl_BE/hrm.lang (100%) rename {htdocs => public}/langs/nl_BE/incoterm.lang (100%) rename {htdocs => public}/langs/nl_BE/install.lang (100%) rename {htdocs => public}/langs/nl_BE/interventions.lang (100%) rename {htdocs => public}/langs/nl_BE/languages.lang (100%) rename {htdocs => public}/langs/nl_BE/ldap.lang (100%) rename {htdocs => public}/langs/nl_BE/link.lang (100%) rename {htdocs => public}/langs/nl_BE/loan.lang (100%) rename {htdocs => public}/langs/nl_BE/mailmanspip.lang (100%) rename {htdocs => public}/langs/nl_BE/mails.lang (100%) rename {htdocs => public}/langs/nl_BE/main.lang (100%) rename {htdocs => public}/langs/nl_BE/margins.lang (100%) rename {htdocs => public}/langs/nl_BE/members.lang (100%) rename {htdocs => public}/langs/nl_BE/oauth.lang (100%) rename {htdocs => public}/langs/nl_BE/opensurvey.lang (100%) rename {htdocs => public}/langs/nl_BE/orders.lang (100%) rename {htdocs => public}/langs/nl_BE/other.lang (100%) rename {htdocs => public}/langs/nl_BE/paybox.lang (100%) rename {htdocs => public}/langs/nl_BE/paypal.lang (100%) rename {htdocs => public}/langs/nl_BE/printing.lang (100%) rename {htdocs => public}/langs/nl_BE/productbatch.lang (100%) rename {htdocs => public}/langs/nl_BE/products.lang (100%) rename {htdocs => public}/langs/nl_BE/projects.lang (100%) rename {htdocs => public}/langs/nl_BE/propal.lang (100%) rename {htdocs => public}/langs/nl_BE/receiptprinter.lang (100%) rename {htdocs => public}/langs/nl_BE/resource.lang (100%) rename {htdocs => public}/langs/nl_BE/salaries.lang (100%) rename {htdocs => public}/langs/nl_BE/sendings.lang (100%) rename {htdocs => public}/langs/nl_BE/sms.lang (100%) rename {htdocs => public}/langs/nl_BE/stocks.lang (100%) rename {htdocs => public}/langs/nl_BE/supplier_proposal.lang (100%) rename {htdocs => public}/langs/nl_BE/suppliers.lang (100%) rename {htdocs => public}/langs/nl_BE/trips.lang (100%) rename {htdocs => public}/langs/nl_BE/users.lang (100%) rename {htdocs => public}/langs/nl_BE/website.lang (100%) rename {htdocs => public}/langs/nl_BE/withdrawals.lang (100%) rename {htdocs => public}/langs/nl_BE/workflow.lang (100%) rename {htdocs => public}/langs/nl_NL/accountancy.lang (100%) rename {htdocs => public}/langs/nl_NL/admin.lang (100%) rename {htdocs => public}/langs/nl_NL/agenda.lang (100%) rename {htdocs => public}/langs/nl_NL/banks.lang (100%) rename {htdocs => public}/langs/nl_NL/bills.lang (100%) rename {htdocs => public}/langs/nl_NL/bookmarks.lang (100%) rename {htdocs => public}/langs/nl_NL/boxes.lang (100%) rename {htdocs => public}/langs/nl_NL/cashdesk.lang (100%) rename {htdocs => public}/langs/nl_NL/categories.lang (100%) rename {htdocs => public}/langs/nl_NL/commercial.lang (100%) rename {htdocs => public}/langs/nl_NL/companies.lang (100%) rename {htdocs => public}/langs/nl_NL/compta.lang (100%) rename {htdocs => public}/langs/nl_NL/contracts.lang (100%) rename {htdocs => public}/langs/nl_NL/cron.lang (100%) rename {htdocs => public}/langs/nl_NL/deliveries.lang (100%) rename {htdocs => public}/langs/nl_NL/dict.lang (100%) rename {htdocs => public}/langs/nl_NL/donations.lang (100%) rename {htdocs => public}/langs/nl_NL/ecm.lang (100%) rename {htdocs => public}/langs/nl_NL/errors.lang (100%) rename {htdocs => public}/langs/nl_NL/exports.lang (100%) rename {htdocs => public}/langs/nl_NL/externalsite.lang (100%) rename {htdocs => public}/langs/nl_NL/ftp.lang (100%) rename {htdocs => public}/langs/nl_NL/help.lang (100%) rename {htdocs => public}/langs/nl_NL/holiday.lang (100%) rename {htdocs => public}/langs/nl_NL/hrm.lang (100%) rename {htdocs => public}/langs/nl_NL/incoterm.lang (100%) rename {htdocs => public}/langs/nl_NL/install.lang (100%) rename {htdocs => public}/langs/nl_NL/interventions.lang (100%) rename {htdocs => public}/langs/nl_NL/languages.lang (100%) rename {htdocs => public}/langs/nl_NL/ldap.lang (100%) rename {htdocs => public}/langs/nl_NL/link.lang (100%) rename {htdocs => public}/langs/nl_NL/loan.lang (100%) rename {htdocs => public}/langs/nl_NL/mailmanspip.lang (100%) rename {htdocs => public}/langs/nl_NL/mails.lang (100%) rename {htdocs => public}/langs/nl_NL/main.lang (100%) rename {htdocs => public}/langs/nl_NL/margins.lang (100%) rename {htdocs => public}/langs/nl_NL/members.lang (100%) rename {htdocs => public}/langs/nl_NL/oauth.lang (100%) rename {htdocs => public}/langs/nl_NL/opensurvey.lang (100%) rename {htdocs => public}/langs/nl_NL/orders.lang (100%) rename {htdocs => public}/langs/nl_NL/other.lang (100%) rename {htdocs => public}/langs/nl_NL/paybox.lang (100%) rename {htdocs => public}/langs/nl_NL/paypal.lang (100%) rename {htdocs => public}/langs/nl_NL/printing.lang (100%) rename {htdocs => public}/langs/nl_NL/productbatch.lang (100%) rename {htdocs => public}/langs/nl_NL/products.lang (100%) rename {htdocs => public}/langs/nl_NL/projects.lang (100%) rename {htdocs => public}/langs/nl_NL/propal.lang (100%) rename {htdocs => public}/langs/nl_NL/receiptprinter.lang (100%) rename {htdocs => public}/langs/nl_NL/resource.lang (100%) rename {htdocs => public}/langs/nl_NL/salaries.lang (100%) rename {htdocs => public}/langs/nl_NL/sendings.lang (100%) rename {htdocs => public}/langs/nl_NL/sms.lang (100%) rename {htdocs => public}/langs/nl_NL/stocks.lang (100%) rename {htdocs => public}/langs/nl_NL/supplier_proposal.lang (100%) rename {htdocs => public}/langs/nl_NL/suppliers.lang (100%) rename {htdocs => public}/langs/nl_NL/trips.lang (100%) rename {htdocs => public}/langs/nl_NL/users.lang (100%) rename {htdocs => public}/langs/nl_NL/website.lang (100%) rename {htdocs => public}/langs/nl_NL/withdrawals.lang (100%) rename {htdocs => public}/langs/nl_NL/workflow.lang (100%) rename {htdocs => public}/langs/pl_PL/accountancy.lang (100%) rename {htdocs => public}/langs/pl_PL/admin.lang (100%) rename {htdocs => public}/langs/pl_PL/agenda.lang (100%) rename {htdocs => public}/langs/pl_PL/banks.lang (100%) rename {htdocs => public}/langs/pl_PL/bills.lang (100%) rename {htdocs => public}/langs/pl_PL/bookmarks.lang (100%) rename {htdocs => public}/langs/pl_PL/boxes.lang (100%) rename {htdocs => public}/langs/pl_PL/cashdesk.lang (100%) rename {htdocs => public}/langs/pl_PL/categories.lang (100%) rename {htdocs => public}/langs/pl_PL/commercial.lang (100%) rename {htdocs => public}/langs/pl_PL/companies.lang (100%) rename {htdocs => public}/langs/pl_PL/compta.lang (100%) rename {htdocs => public}/langs/pl_PL/contracts.lang (100%) rename {htdocs => public}/langs/pl_PL/cron.lang (100%) rename {htdocs => public}/langs/pl_PL/deliveries.lang (100%) rename {htdocs => public}/langs/pl_PL/dict.lang (100%) rename {htdocs => public}/langs/pl_PL/donations.lang (100%) rename {htdocs => public}/langs/pl_PL/ecm.lang (100%) rename {htdocs => public}/langs/pl_PL/errors.lang (100%) rename {htdocs => public}/langs/pl_PL/exports.lang (100%) rename {htdocs => public}/langs/pl_PL/externalsite.lang (100%) rename {htdocs => public}/langs/pl_PL/ftp.lang (100%) rename {htdocs => public}/langs/pl_PL/help.lang (100%) rename {htdocs => public}/langs/pl_PL/holiday.lang (100%) rename {htdocs => public}/langs/pl_PL/hrm.lang (100%) rename {htdocs => public}/langs/pl_PL/incoterm.lang (100%) rename {htdocs => public}/langs/pl_PL/install.lang (100%) rename {htdocs => public}/langs/pl_PL/interventions.lang (100%) rename {htdocs => public}/langs/pl_PL/languages.lang (100%) rename {htdocs => public}/langs/pl_PL/ldap.lang (100%) rename {htdocs => public}/langs/pl_PL/link.lang (100%) rename {htdocs => public}/langs/pl_PL/loan.lang (100%) rename {htdocs => public}/langs/pl_PL/mailmanspip.lang (100%) rename {htdocs => public}/langs/pl_PL/mails.lang (100%) rename {htdocs => public}/langs/pl_PL/main.lang (100%) rename {htdocs => public}/langs/pl_PL/margins.lang (100%) rename {htdocs => public}/langs/pl_PL/members.lang (100%) rename {htdocs => public}/langs/pl_PL/oauth.lang (100%) rename {htdocs => public}/langs/pl_PL/opensurvey.lang (100%) rename {htdocs => public}/langs/pl_PL/orders.lang (100%) rename {htdocs => public}/langs/pl_PL/other.lang (100%) rename {htdocs => public}/langs/pl_PL/paybox.lang (100%) rename {htdocs => public}/langs/pl_PL/paypal.lang (100%) rename {htdocs => public}/langs/pl_PL/printing.lang (100%) rename {htdocs => public}/langs/pl_PL/productbatch.lang (100%) rename {htdocs => public}/langs/pl_PL/products.lang (100%) rename {htdocs => public}/langs/pl_PL/projects.lang (100%) rename {htdocs => public}/langs/pl_PL/propal.lang (100%) rename {htdocs => public}/langs/pl_PL/receiptprinter.lang (100%) rename {htdocs => public}/langs/pl_PL/resource.lang (100%) rename {htdocs => public}/langs/pl_PL/salaries.lang (100%) rename {htdocs => public}/langs/pl_PL/sendings.lang (100%) rename {htdocs => public}/langs/pl_PL/sms.lang (100%) rename {htdocs => public}/langs/pl_PL/stocks.lang (100%) rename {htdocs => public}/langs/pl_PL/supplier_proposal.lang (100%) rename {htdocs => public}/langs/pl_PL/suppliers.lang (100%) rename {htdocs => public}/langs/pl_PL/trips.lang (100%) rename {htdocs => public}/langs/pl_PL/users.lang (100%) rename {htdocs => public}/langs/pl_PL/website.lang (100%) rename {htdocs => public}/langs/pl_PL/withdrawals.lang (100%) rename {htdocs => public}/langs/pl_PL/workflow.lang (100%) rename {htdocs => public}/langs/pt_BR/accountancy.lang (100%) rename {htdocs => public}/langs/pt_BR/admin.lang (100%) rename {htdocs => public}/langs/pt_BR/agenda.lang (100%) rename {htdocs => public}/langs/pt_BR/banks.lang (100%) rename {htdocs => public}/langs/pt_BR/bills.lang (100%) rename {htdocs => public}/langs/pt_BR/bookmarks.lang (100%) rename {htdocs => public}/langs/pt_BR/boxes.lang (100%) rename {htdocs => public}/langs/pt_BR/cashdesk.lang (100%) rename {htdocs => public}/langs/pt_BR/categories.lang (100%) rename {htdocs => public}/langs/pt_BR/commercial.lang (100%) rename {htdocs => public}/langs/pt_BR/companies.lang (100%) rename {htdocs => public}/langs/pt_BR/compta.lang (100%) rename {htdocs => public}/langs/pt_BR/contracts.lang (100%) rename {htdocs => public}/langs/pt_BR/cron.lang (100%) rename {htdocs => public}/langs/pt_BR/deliveries.lang (100%) rename {htdocs => public}/langs/pt_BR/dict.lang (100%) rename {htdocs => public}/langs/pt_BR/donations.lang (100%) rename {htdocs => public}/langs/pt_BR/ecm.lang (100%) rename {htdocs => public}/langs/pt_BR/errors.lang (100%) rename {htdocs => public}/langs/pt_BR/exports.lang (100%) rename {htdocs => public}/langs/pt_BR/externalsite.lang (100%) rename {htdocs => public}/langs/pt_BR/ftp.lang (100%) rename {htdocs => public}/langs/pt_BR/help.lang (100%) rename {htdocs => public}/langs/pt_BR/holiday.lang (100%) rename {htdocs => public}/langs/pt_BR/hrm.lang (100%) rename {htdocs => public}/langs/pt_BR/incoterm.lang (100%) rename {htdocs => public}/langs/pt_BR/install.lang (100%) rename {htdocs => public}/langs/pt_BR/interventions.lang (100%) rename {htdocs => public}/langs/pt_BR/languages.lang (100%) rename {htdocs => public}/langs/pt_BR/ldap.lang (100%) rename {htdocs => public}/langs/pt_BR/link.lang (100%) rename {htdocs => public}/langs/pt_BR/loan.lang (100%) rename {htdocs => public}/langs/pt_BR/mailmanspip.lang (100%) rename {htdocs => public}/langs/pt_BR/mails.lang (100%) rename {htdocs => public}/langs/pt_BR/main.lang (100%) rename {htdocs => public}/langs/pt_BR/margins.lang (100%) rename {htdocs => public}/langs/pt_BR/members.lang (100%) rename {htdocs => public}/langs/pt_BR/oauth.lang (100%) rename {htdocs => public}/langs/pt_BR/opensurvey.lang (100%) rename {htdocs => public}/langs/pt_BR/orders.lang (100%) rename {htdocs => public}/langs/pt_BR/other.lang (100%) rename {htdocs => public}/langs/pt_BR/paybox.lang (100%) rename {htdocs => public}/langs/pt_BR/paypal.lang (100%) rename {htdocs => public}/langs/pt_BR/printing.lang (100%) rename {htdocs => public}/langs/pt_BR/productbatch.lang (100%) rename {htdocs => public}/langs/pt_BR/products.lang (100%) rename {htdocs => public}/langs/pt_BR/projects.lang (100%) rename {htdocs => public}/langs/pt_BR/propal.lang (100%) rename {htdocs => public}/langs/pt_BR/receiptprinter.lang (100%) rename {htdocs => public}/langs/pt_BR/resource.lang (100%) rename {htdocs => public}/langs/pt_BR/salaries.lang (100%) rename {htdocs => public}/langs/pt_BR/sendings.lang (100%) rename {htdocs => public}/langs/pt_BR/sms.lang (100%) rename {htdocs => public}/langs/pt_BR/stocks.lang (100%) rename {htdocs => public}/langs/pt_BR/supplier_proposal.lang (100%) rename {htdocs => public}/langs/pt_BR/suppliers.lang (100%) rename {htdocs => public}/langs/pt_BR/trips.lang (100%) rename {htdocs => public}/langs/pt_BR/users.lang (100%) rename {htdocs => public}/langs/pt_BR/website.lang (100%) rename {htdocs => public}/langs/pt_BR/withdrawals.lang (100%) rename {htdocs => public}/langs/pt_BR/workflow.lang (100%) rename {htdocs => public}/langs/pt_PT/accountancy.lang (100%) rename {htdocs => public}/langs/pt_PT/admin.lang (100%) rename {htdocs => public}/langs/pt_PT/agenda.lang (100%) rename {htdocs => public}/langs/pt_PT/banks.lang (100%) rename {htdocs => public}/langs/pt_PT/bills.lang (100%) rename {htdocs => public}/langs/pt_PT/bookmarks.lang (100%) rename {htdocs => public}/langs/pt_PT/boxes.lang (100%) rename {htdocs => public}/langs/pt_PT/cashdesk.lang (100%) rename {htdocs => public}/langs/pt_PT/categories.lang (100%) rename {htdocs => public}/langs/pt_PT/commercial.lang (100%) rename {htdocs => public}/langs/pt_PT/companies.lang (100%) rename {htdocs => public}/langs/pt_PT/compta.lang (100%) rename {htdocs => public}/langs/pt_PT/contracts.lang (100%) rename {htdocs => public}/langs/pt_PT/cron.lang (100%) rename {htdocs => public}/langs/pt_PT/deliveries.lang (100%) rename {htdocs => public}/langs/pt_PT/dict.lang (100%) rename {htdocs => public}/langs/pt_PT/donations.lang (100%) rename {htdocs => public}/langs/pt_PT/ecm.lang (100%) rename {htdocs => public}/langs/pt_PT/errors.lang (100%) rename {htdocs => public}/langs/pt_PT/exports.lang (100%) rename {htdocs => public}/langs/pt_PT/externalsite.lang (100%) rename {htdocs => public}/langs/pt_PT/ftp.lang (100%) rename {htdocs => public}/langs/pt_PT/help.lang (100%) rename {htdocs => public}/langs/pt_PT/holiday.lang (100%) rename {htdocs => public}/langs/pt_PT/hrm.lang (100%) rename {htdocs => public}/langs/pt_PT/incoterm.lang (100%) rename {htdocs => public}/langs/pt_PT/install.lang (100%) rename {htdocs => public}/langs/pt_PT/interventions.lang (100%) rename {htdocs => public}/langs/pt_PT/languages.lang (100%) rename {htdocs => public}/langs/pt_PT/ldap.lang (100%) rename {htdocs => public}/langs/pt_PT/link.lang (100%) rename {htdocs => public}/langs/pt_PT/loan.lang (100%) rename {htdocs => public}/langs/pt_PT/mailmanspip.lang (100%) rename {htdocs => public}/langs/pt_PT/mails.lang (100%) rename {htdocs => public}/langs/pt_PT/main.lang (100%) rename {htdocs => public}/langs/pt_PT/margins.lang (100%) rename {htdocs => public}/langs/pt_PT/members.lang (100%) rename {htdocs => public}/langs/pt_PT/oauth.lang (100%) rename {htdocs => public}/langs/pt_PT/opensurvey.lang (100%) rename {htdocs => public}/langs/pt_PT/orders.lang (100%) rename {htdocs => public}/langs/pt_PT/other.lang (100%) rename {htdocs => public}/langs/pt_PT/paybox.lang (100%) rename {htdocs => public}/langs/pt_PT/paypal.lang (100%) rename {htdocs => public}/langs/pt_PT/printing.lang (100%) rename {htdocs => public}/langs/pt_PT/productbatch.lang (100%) rename {htdocs => public}/langs/pt_PT/products.lang (100%) rename {htdocs => public}/langs/pt_PT/projects.lang (100%) rename {htdocs => public}/langs/pt_PT/propal.lang (100%) rename {htdocs => public}/langs/pt_PT/receiptprinter.lang (100%) rename {htdocs => public}/langs/pt_PT/resource.lang (100%) rename {htdocs => public}/langs/pt_PT/salaries.lang (100%) rename {htdocs => public}/langs/pt_PT/sendings.lang (100%) rename {htdocs => public}/langs/pt_PT/sms.lang (100%) rename {htdocs => public}/langs/pt_PT/stocks.lang (100%) rename {htdocs => public}/langs/pt_PT/supplier_proposal.lang (100%) rename {htdocs => public}/langs/pt_PT/suppliers.lang (100%) rename {htdocs => public}/langs/pt_PT/trips.lang (100%) rename {htdocs => public}/langs/pt_PT/users.lang (100%) rename {htdocs => public}/langs/pt_PT/website.lang (100%) rename {htdocs => public}/langs/pt_PT/withdrawals.lang (100%) rename {htdocs => public}/langs/pt_PT/workflow.lang (100%) rename {htdocs => public}/langs/ro_RO/accountancy.lang (100%) rename {htdocs => public}/langs/ro_RO/admin.lang (100%) rename {htdocs => public}/langs/ro_RO/agenda.lang (100%) rename {htdocs => public}/langs/ro_RO/banks.lang (100%) rename {htdocs => public}/langs/ro_RO/bills.lang (100%) rename {htdocs => public}/langs/ro_RO/bookmarks.lang (100%) rename {htdocs => public}/langs/ro_RO/boxes.lang (100%) rename {htdocs => public}/langs/ro_RO/cashdesk.lang (100%) rename {htdocs => public}/langs/ro_RO/categories.lang (100%) rename {htdocs => public}/langs/ro_RO/commercial.lang (100%) rename {htdocs => public}/langs/ro_RO/companies.lang (100%) rename {htdocs => public}/langs/ro_RO/compta.lang (100%) rename {htdocs => public}/langs/ro_RO/contracts.lang (100%) rename {htdocs => public}/langs/ro_RO/cron.lang (100%) rename {htdocs => public}/langs/ro_RO/deliveries.lang (100%) rename {htdocs => public}/langs/ro_RO/dict.lang (100%) rename {htdocs => public}/langs/ro_RO/donations.lang (100%) rename {htdocs => public}/langs/ro_RO/ecm.lang (100%) rename {htdocs => public}/langs/ro_RO/errors.lang (100%) rename {htdocs => public}/langs/ro_RO/exports.lang (100%) rename {htdocs => public}/langs/ro_RO/externalsite.lang (100%) rename {htdocs => public}/langs/ro_RO/ftp.lang (100%) rename {htdocs => public}/langs/ro_RO/help.lang (100%) rename {htdocs => public}/langs/ro_RO/holiday.lang (100%) rename {htdocs => public}/langs/ro_RO/hrm.lang (100%) rename {htdocs => public}/langs/ro_RO/incoterm.lang (100%) rename {htdocs => public}/langs/ro_RO/install.lang (100%) rename {htdocs => public}/langs/ro_RO/interventions.lang (100%) rename {htdocs => public}/langs/ro_RO/languages.lang (100%) rename {htdocs => public}/langs/ro_RO/ldap.lang (100%) rename {htdocs => public}/langs/ro_RO/link.lang (100%) rename {htdocs => public}/langs/ro_RO/loan.lang (100%) rename {htdocs => public}/langs/ro_RO/mailmanspip.lang (100%) rename {htdocs => public}/langs/ro_RO/mails.lang (100%) rename {htdocs => public}/langs/ro_RO/main.lang (100%) rename {htdocs => public}/langs/ro_RO/margins.lang (100%) rename {htdocs => public}/langs/ro_RO/members.lang (100%) rename {htdocs => public}/langs/ro_RO/oauth.lang (100%) rename {htdocs => public}/langs/ro_RO/opensurvey.lang (100%) rename {htdocs => public}/langs/ro_RO/orders.lang (100%) rename {htdocs => public}/langs/ro_RO/other.lang (100%) rename {htdocs => public}/langs/ro_RO/paybox.lang (100%) rename {htdocs => public}/langs/ro_RO/paypal.lang (100%) rename {htdocs => public}/langs/ro_RO/printing.lang (100%) rename {htdocs => public}/langs/ro_RO/productbatch.lang (100%) rename {htdocs => public}/langs/ro_RO/products.lang (100%) rename {htdocs => public}/langs/ro_RO/projects.lang (100%) rename {htdocs => public}/langs/ro_RO/propal.lang (100%) rename {htdocs => public}/langs/ro_RO/receiptprinter.lang (100%) rename {htdocs => public}/langs/ro_RO/resource.lang (100%) rename {htdocs => public}/langs/ro_RO/salaries.lang (100%) rename {htdocs => public}/langs/ro_RO/sendings.lang (100%) rename {htdocs => public}/langs/ro_RO/sms.lang (100%) rename {htdocs => public}/langs/ro_RO/stocks.lang (100%) rename {htdocs => public}/langs/ro_RO/supplier_proposal.lang (100%) rename {htdocs => public}/langs/ro_RO/suppliers.lang (100%) rename {htdocs => public}/langs/ro_RO/trips.lang (100%) rename {htdocs => public}/langs/ro_RO/users.lang (100%) rename {htdocs => public}/langs/ro_RO/website.lang (100%) rename {htdocs => public}/langs/ro_RO/withdrawals.lang (100%) rename {htdocs => public}/langs/ro_RO/workflow.lang (100%) rename {htdocs => public}/langs/ru_RU/accountancy.lang (100%) rename {htdocs => public}/langs/ru_RU/admin.lang (100%) rename {htdocs => public}/langs/ru_RU/agenda.lang (100%) rename {htdocs => public}/langs/ru_RU/banks.lang (100%) rename {htdocs => public}/langs/ru_RU/bills.lang (100%) rename {htdocs => public}/langs/ru_RU/bookmarks.lang (100%) rename {htdocs => public}/langs/ru_RU/boxes.lang (100%) rename {htdocs => public}/langs/ru_RU/cashdesk.lang (100%) rename {htdocs => public}/langs/ru_RU/categories.lang (100%) rename {htdocs => public}/langs/ru_RU/commercial.lang (100%) rename {htdocs => public}/langs/ru_RU/companies.lang (100%) rename {htdocs => public}/langs/ru_RU/compta.lang (100%) rename {htdocs => public}/langs/ru_RU/contracts.lang (100%) rename {htdocs => public}/langs/ru_RU/cron.lang (100%) rename {htdocs => public}/langs/ru_RU/deliveries.lang (100%) rename {htdocs => public}/langs/ru_RU/dict.lang (100%) rename {htdocs => public}/langs/ru_RU/donations.lang (100%) rename {htdocs => public}/langs/ru_RU/ecm.lang (100%) rename {htdocs => public}/langs/ru_RU/errors.lang (100%) rename {htdocs => public}/langs/ru_RU/exports.lang (100%) rename {htdocs => public}/langs/ru_RU/externalsite.lang (100%) rename {htdocs => public}/langs/ru_RU/ftp.lang (100%) rename {htdocs => public}/langs/ru_RU/help.lang (100%) rename {htdocs => public}/langs/ru_RU/holiday.lang (100%) rename {htdocs => public}/langs/ru_RU/hrm.lang (100%) rename {htdocs => public}/langs/ru_RU/incoterm.lang (100%) rename {htdocs => public}/langs/ru_RU/install.lang (100%) rename {htdocs => public}/langs/ru_RU/interventions.lang (100%) rename {htdocs => public}/langs/ru_RU/languages.lang (100%) rename {htdocs => public}/langs/ru_RU/ldap.lang (100%) rename {htdocs => public}/langs/ru_RU/link.lang (100%) rename {htdocs => public}/langs/ru_RU/loan.lang (100%) rename {htdocs => public}/langs/ru_RU/mailmanspip.lang (100%) rename {htdocs => public}/langs/ru_RU/mails.lang (100%) rename {htdocs => public}/langs/ru_RU/main.lang (100%) rename {htdocs => public}/langs/ru_RU/margins.lang (100%) rename {htdocs => public}/langs/ru_RU/members.lang (100%) rename {htdocs => public}/langs/ru_RU/oauth.lang (100%) rename {htdocs => public}/langs/ru_RU/opensurvey.lang (100%) rename {htdocs => public}/langs/ru_RU/orders.lang (100%) rename {htdocs => public}/langs/ru_RU/other.lang (100%) rename {htdocs => public}/langs/ru_RU/paybox.lang (100%) rename {htdocs => public}/langs/ru_RU/paypal.lang (100%) rename {htdocs => public}/langs/ru_RU/printing.lang (100%) rename {htdocs => public}/langs/ru_RU/productbatch.lang (100%) rename {htdocs => public}/langs/ru_RU/products.lang (100%) rename {htdocs => public}/langs/ru_RU/projects.lang (100%) rename {htdocs => public}/langs/ru_RU/propal.lang (100%) rename {htdocs => public}/langs/ru_RU/receiptprinter.lang (100%) rename {htdocs => public}/langs/ru_RU/resource.lang (100%) rename {htdocs => public}/langs/ru_RU/salaries.lang (100%) rename {htdocs => public}/langs/ru_RU/sendings.lang (100%) rename {htdocs => public}/langs/ru_RU/sms.lang (100%) rename {htdocs => public}/langs/ru_RU/stocks.lang (100%) rename {htdocs => public}/langs/ru_RU/supplier_proposal.lang (100%) rename {htdocs => public}/langs/ru_RU/suppliers.lang (100%) rename {htdocs => public}/langs/ru_RU/trips.lang (100%) rename {htdocs => public}/langs/ru_RU/users.lang (100%) rename {htdocs => public}/langs/ru_RU/website.lang (100%) rename {htdocs => public}/langs/ru_RU/withdrawals.lang (100%) rename {htdocs => public}/langs/ru_RU/workflow.lang (100%) rename {htdocs => public}/langs/ru_UA/banks.lang (100%) rename {htdocs => public}/langs/ru_UA/bookmarks.lang (100%) rename {htdocs => public}/langs/ru_UA/compta.lang (100%) rename {htdocs => public}/langs/ru_UA/contracts.lang (100%) rename {htdocs => public}/langs/ru_UA/dict.lang (100%) rename {htdocs => public}/langs/ru_UA/ecm.lang (100%) rename {htdocs => public}/langs/ru_UA/errors.lang (100%) rename {htdocs => public}/langs/ru_UA/ftp.lang (100%) rename {htdocs => public}/langs/ru_UA/install.lang (100%) rename {htdocs => public}/langs/ru_UA/interventions.lang (100%) rename {htdocs => public}/langs/ru_UA/mails.lang (100%) rename {htdocs => public}/langs/ru_UA/main.lang (100%) rename {htdocs => public}/langs/ru_UA/other.lang (100%) rename {htdocs => public}/langs/ru_UA/paybox.lang (100%) rename {htdocs => public}/langs/ru_UA/paypal.lang (100%) rename {htdocs => public}/langs/sk_SK/accountancy.lang (100%) rename {htdocs => public}/langs/sk_SK/admin.lang (100%) rename {htdocs => public}/langs/sk_SK/agenda.lang (100%) rename {htdocs => public}/langs/sk_SK/banks.lang (100%) rename {htdocs => public}/langs/sk_SK/bills.lang (100%) rename {htdocs => public}/langs/sk_SK/bookmarks.lang (100%) rename {htdocs => public}/langs/sk_SK/boxes.lang (100%) rename {htdocs => public}/langs/sk_SK/cashdesk.lang (100%) rename {htdocs => public}/langs/sk_SK/categories.lang (100%) rename {htdocs => public}/langs/sk_SK/commercial.lang (100%) rename {htdocs => public}/langs/sk_SK/companies.lang (100%) rename {htdocs => public}/langs/sk_SK/compta.lang (100%) rename {htdocs => public}/langs/sk_SK/contracts.lang (100%) rename {htdocs => public}/langs/sk_SK/cron.lang (100%) rename {htdocs => public}/langs/sk_SK/deliveries.lang (100%) rename {htdocs => public}/langs/sk_SK/dict.lang (100%) rename {htdocs => public}/langs/sk_SK/donations.lang (100%) rename {htdocs => public}/langs/sk_SK/ecm.lang (100%) rename {htdocs => public}/langs/sk_SK/errors.lang (100%) rename {htdocs => public}/langs/sk_SK/exports.lang (100%) rename {htdocs => public}/langs/sk_SK/externalsite.lang (100%) rename {htdocs => public}/langs/sk_SK/ftp.lang (100%) rename {htdocs => public}/langs/sk_SK/help.lang (100%) rename {htdocs => public}/langs/sk_SK/holiday.lang (100%) rename {htdocs => public}/langs/sk_SK/hrm.lang (100%) rename {htdocs => public}/langs/sk_SK/incoterm.lang (100%) rename {htdocs => public}/langs/sk_SK/install.lang (100%) rename {htdocs => public}/langs/sk_SK/interventions.lang (100%) rename {htdocs => public}/langs/sk_SK/languages.lang (100%) rename {htdocs => public}/langs/sk_SK/ldap.lang (100%) rename {htdocs => public}/langs/sk_SK/link.lang (100%) rename {htdocs => public}/langs/sk_SK/loan.lang (100%) rename {htdocs => public}/langs/sk_SK/mailmanspip.lang (100%) rename {htdocs => public}/langs/sk_SK/mails.lang (100%) rename {htdocs => public}/langs/sk_SK/main.lang (100%) rename {htdocs => public}/langs/sk_SK/margins.lang (100%) rename {htdocs => public}/langs/sk_SK/members.lang (100%) rename {htdocs => public}/langs/sk_SK/oauth.lang (100%) rename {htdocs => public}/langs/sk_SK/opensurvey.lang (100%) rename {htdocs => public}/langs/sk_SK/orders.lang (100%) rename {htdocs => public}/langs/sk_SK/other.lang (100%) rename {htdocs => public}/langs/sk_SK/paybox.lang (100%) rename {htdocs => public}/langs/sk_SK/paypal.lang (100%) rename {htdocs => public}/langs/sk_SK/printing.lang (100%) rename {htdocs => public}/langs/sk_SK/productbatch.lang (100%) rename {htdocs => public}/langs/sk_SK/products.lang (100%) rename {htdocs => public}/langs/sk_SK/projects.lang (100%) rename {htdocs => public}/langs/sk_SK/propal.lang (100%) rename {htdocs => public}/langs/sk_SK/receiptprinter.lang (100%) rename {htdocs => public}/langs/sk_SK/resource.lang (100%) rename {htdocs => public}/langs/sk_SK/salaries.lang (100%) rename {htdocs => public}/langs/sk_SK/sendings.lang (100%) rename {htdocs => public}/langs/sk_SK/sms.lang (100%) rename {htdocs => public}/langs/sk_SK/stocks.lang (100%) rename {htdocs => public}/langs/sk_SK/supplier_proposal.lang (100%) rename {htdocs => public}/langs/sk_SK/suppliers.lang (100%) rename {htdocs => public}/langs/sk_SK/trips.lang (100%) rename {htdocs => public}/langs/sk_SK/users.lang (100%) rename {htdocs => public}/langs/sk_SK/website.lang (100%) rename {htdocs => public}/langs/sk_SK/withdrawals.lang (100%) rename {htdocs => public}/langs/sk_SK/workflow.lang (100%) rename {htdocs => public}/langs/sl_SI/accountancy.lang (100%) rename {htdocs => public}/langs/sl_SI/admin.lang (100%) rename {htdocs => public}/langs/sl_SI/agenda.lang (100%) rename {htdocs => public}/langs/sl_SI/banks.lang (100%) rename {htdocs => public}/langs/sl_SI/bills.lang (100%) rename {htdocs => public}/langs/sl_SI/bookmarks.lang (100%) rename {htdocs => public}/langs/sl_SI/boxes.lang (100%) rename {htdocs => public}/langs/sl_SI/cashdesk.lang (100%) rename {htdocs => public}/langs/sl_SI/categories.lang (100%) rename {htdocs => public}/langs/sl_SI/commercial.lang (100%) rename {htdocs => public}/langs/sl_SI/companies.lang (100%) rename {htdocs => public}/langs/sl_SI/compta.lang (100%) rename {htdocs => public}/langs/sl_SI/contracts.lang (100%) rename {htdocs => public}/langs/sl_SI/cron.lang (100%) rename {htdocs => public}/langs/sl_SI/deliveries.lang (100%) rename {htdocs => public}/langs/sl_SI/dict.lang (100%) rename {htdocs => public}/langs/sl_SI/donations.lang (100%) rename {htdocs => public}/langs/sl_SI/ecm.lang (100%) rename {htdocs => public}/langs/sl_SI/errors.lang (100%) rename {htdocs => public}/langs/sl_SI/exports.lang (100%) rename {htdocs => public}/langs/sl_SI/externalsite.lang (100%) rename {htdocs => public}/langs/sl_SI/ftp.lang (100%) rename {htdocs => public}/langs/sl_SI/help.lang (100%) rename {htdocs => public}/langs/sl_SI/holiday.lang (100%) rename {htdocs => public}/langs/sl_SI/hrm.lang (100%) rename {htdocs => public}/langs/sl_SI/incoterm.lang (100%) rename {htdocs => public}/langs/sl_SI/install.lang (100%) rename {htdocs => public}/langs/sl_SI/interventions.lang (100%) rename {htdocs => public}/langs/sl_SI/languages.lang (100%) rename {htdocs => public}/langs/sl_SI/ldap.lang (100%) rename {htdocs => public}/langs/sl_SI/link.lang (100%) rename {htdocs => public}/langs/sl_SI/loan.lang (100%) rename {htdocs => public}/langs/sl_SI/mailmanspip.lang (100%) rename {htdocs => public}/langs/sl_SI/mails.lang (100%) rename {htdocs => public}/langs/sl_SI/main.lang (100%) rename {htdocs => public}/langs/sl_SI/margins.lang (100%) rename {htdocs => public}/langs/sl_SI/members.lang (100%) rename {htdocs => public}/langs/sl_SI/oauth.lang (100%) rename {htdocs => public}/langs/sl_SI/opensurvey.lang (100%) rename {htdocs => public}/langs/sl_SI/orders.lang (100%) rename {htdocs => public}/langs/sl_SI/other.lang (100%) rename {htdocs => public}/langs/sl_SI/paybox.lang (100%) rename {htdocs => public}/langs/sl_SI/paypal.lang (100%) rename {htdocs => public}/langs/sl_SI/printing.lang (100%) rename {htdocs => public}/langs/sl_SI/productbatch.lang (100%) rename {htdocs => public}/langs/sl_SI/products.lang (100%) rename {htdocs => public}/langs/sl_SI/projects.lang (100%) rename {htdocs => public}/langs/sl_SI/propal.lang (100%) rename {htdocs => public}/langs/sl_SI/receiptprinter.lang (100%) rename {htdocs => public}/langs/sl_SI/resource.lang (100%) rename {htdocs => public}/langs/sl_SI/salaries.lang (100%) rename {htdocs => public}/langs/sl_SI/sendings.lang (100%) rename {htdocs => public}/langs/sl_SI/sms.lang (100%) rename {htdocs => public}/langs/sl_SI/stocks.lang (100%) rename {htdocs => public}/langs/sl_SI/supplier_proposal.lang (100%) rename {htdocs => public}/langs/sl_SI/suppliers.lang (100%) rename {htdocs => public}/langs/sl_SI/trips.lang (100%) rename {htdocs => public}/langs/sl_SI/users.lang (100%) rename {htdocs => public}/langs/sl_SI/website.lang (100%) rename {htdocs => public}/langs/sl_SI/withdrawals.lang (100%) rename {htdocs => public}/langs/sl_SI/workflow.lang (100%) rename {htdocs => public}/langs/sq_AL/accountancy.lang (100%) rename {htdocs => public}/langs/sq_AL/admin.lang (100%) rename {htdocs => public}/langs/sq_AL/agenda.lang (100%) rename {htdocs => public}/langs/sq_AL/banks.lang (100%) rename {htdocs => public}/langs/sq_AL/bills.lang (100%) rename {htdocs => public}/langs/sq_AL/bookmarks.lang (100%) rename {htdocs => public}/langs/sq_AL/boxes.lang (100%) rename {htdocs => public}/langs/sq_AL/cashdesk.lang (100%) rename {htdocs => public}/langs/sq_AL/categories.lang (100%) rename {htdocs => public}/langs/sq_AL/commercial.lang (100%) rename {htdocs => public}/langs/sq_AL/companies.lang (100%) rename {htdocs => public}/langs/sq_AL/compta.lang (100%) rename {htdocs => public}/langs/sq_AL/contracts.lang (100%) rename {htdocs => public}/langs/sq_AL/cron.lang (100%) rename {htdocs => public}/langs/sq_AL/deliveries.lang (100%) rename {htdocs => public}/langs/sq_AL/dict.lang (100%) rename {htdocs => public}/langs/sq_AL/donations.lang (100%) rename {htdocs => public}/langs/sq_AL/ecm.lang (100%) rename {htdocs => public}/langs/sq_AL/errors.lang (100%) rename {htdocs => public}/langs/sq_AL/exports.lang (100%) rename {htdocs => public}/langs/sq_AL/externalsite.lang (100%) rename {htdocs => public}/langs/sq_AL/ftp.lang (100%) rename {htdocs => public}/langs/sq_AL/help.lang (100%) rename {htdocs => public}/langs/sq_AL/holiday.lang (100%) rename {htdocs => public}/langs/sq_AL/hrm.lang (100%) rename {htdocs => public}/langs/sq_AL/incoterm.lang (100%) rename {htdocs => public}/langs/sq_AL/install.lang (100%) rename {htdocs => public}/langs/sq_AL/interventions.lang (100%) rename {htdocs => public}/langs/sq_AL/languages.lang (100%) rename {htdocs => public}/langs/sq_AL/ldap.lang (100%) rename {htdocs => public}/langs/sq_AL/link.lang (100%) rename {htdocs => public}/langs/sq_AL/loan.lang (100%) rename {htdocs => public}/langs/sq_AL/mailmanspip.lang (100%) rename {htdocs => public}/langs/sq_AL/mails.lang (100%) rename {htdocs => public}/langs/sq_AL/main.lang (100%) rename {htdocs => public}/langs/sq_AL/margins.lang (100%) rename {htdocs => public}/langs/sq_AL/members.lang (100%) rename {htdocs => public}/langs/sq_AL/oauth.lang (100%) rename {htdocs => public}/langs/sq_AL/opensurvey.lang (100%) rename {htdocs => public}/langs/sq_AL/orders.lang (100%) rename {htdocs => public}/langs/sq_AL/other.lang (100%) rename {htdocs => public}/langs/sq_AL/paybox.lang (100%) rename {htdocs => public}/langs/sq_AL/paypal.lang (100%) rename {htdocs => public}/langs/sq_AL/printing.lang (100%) rename {htdocs => public}/langs/sq_AL/productbatch.lang (100%) rename {htdocs => public}/langs/sq_AL/products.lang (100%) rename {htdocs => public}/langs/sq_AL/projects.lang (100%) rename {htdocs => public}/langs/sq_AL/propal.lang (100%) rename {htdocs => public}/langs/sq_AL/receiptprinter.lang (100%) rename {htdocs => public}/langs/sq_AL/resource.lang (100%) rename {htdocs => public}/langs/sq_AL/salaries.lang (100%) rename {htdocs => public}/langs/sq_AL/sendings.lang (100%) rename {htdocs => public}/langs/sq_AL/sms.lang (100%) rename {htdocs => public}/langs/sq_AL/stocks.lang (100%) rename {htdocs => public}/langs/sq_AL/supplier_proposal.lang (100%) rename {htdocs => public}/langs/sq_AL/suppliers.lang (100%) rename {htdocs => public}/langs/sq_AL/trips.lang (100%) rename {htdocs => public}/langs/sq_AL/users.lang (100%) rename {htdocs => public}/langs/sq_AL/website.lang (100%) rename {htdocs => public}/langs/sq_AL/withdrawals.lang (100%) rename {htdocs => public}/langs/sq_AL/workflow.lang (100%) rename {htdocs => public}/langs/sr_RS/accountancy.lang (100%) rename {htdocs => public}/langs/sr_RS/admin.lang (100%) rename {htdocs => public}/langs/sr_RS/agenda.lang (100%) rename {htdocs => public}/langs/sr_RS/banks.lang (100%) rename {htdocs => public}/langs/sr_RS/bills.lang (100%) rename {htdocs => public}/langs/sr_RS/bookmarks.lang (100%) rename {htdocs => public}/langs/sr_RS/boxes.lang (100%) rename {htdocs => public}/langs/sr_RS/cashdesk.lang (100%) rename {htdocs => public}/langs/sr_RS/categories.lang (100%) rename {htdocs => public}/langs/sr_RS/commercial.lang (100%) rename {htdocs => public}/langs/sr_RS/companies.lang (100%) rename {htdocs => public}/langs/sr_RS/compta.lang (100%) rename {htdocs => public}/langs/sr_RS/contracts.lang (100%) rename {htdocs => public}/langs/sr_RS/cron.lang (100%) rename {htdocs => public}/langs/sr_RS/deliveries.lang (100%) rename {htdocs => public}/langs/sr_RS/dict.lang (100%) rename {htdocs => public}/langs/sr_RS/donations.lang (100%) rename {htdocs => public}/langs/sr_RS/ecm.lang (100%) rename {htdocs => public}/langs/sr_RS/errors.lang (100%) rename {htdocs => public}/langs/sr_RS/exports.lang (100%) rename {htdocs => public}/langs/sr_RS/externalsite.lang (100%) rename {htdocs => public}/langs/sr_RS/ftp.lang (100%) rename {htdocs => public}/langs/sr_RS/help.lang (100%) rename {htdocs => public}/langs/sr_RS/holiday.lang (100%) rename {htdocs => public}/langs/sr_RS/incoterm.lang (100%) rename {htdocs => public}/langs/sr_RS/install.lang (100%) rename {htdocs => public}/langs/sr_RS/interventions.lang (100%) rename {htdocs => public}/langs/sr_RS/languages.lang (100%) rename {htdocs => public}/langs/sr_RS/ldap.lang (100%) rename {htdocs => public}/langs/sr_RS/link.lang (100%) rename {htdocs => public}/langs/sr_RS/loan.lang (100%) rename {htdocs => public}/langs/sr_RS/mailmanspip.lang (100%) rename {htdocs => public}/langs/sr_RS/mails.lang (100%) rename {htdocs => public}/langs/sr_RS/main.lang (100%) rename {htdocs => public}/langs/sr_RS/margins.lang (100%) rename {htdocs => public}/langs/sr_RS/members.lang (100%) rename {htdocs => public}/langs/sr_RS/opensurvey.lang (100%) rename {htdocs => public}/langs/sr_RS/orders.lang (100%) rename {htdocs => public}/langs/sr_RS/other.lang (100%) rename {htdocs => public}/langs/sr_RS/paybox.lang (100%) rename {htdocs => public}/langs/sr_RS/paypal.lang (100%) rename {htdocs => public}/langs/sr_RS/printing.lang (100%) rename {htdocs => public}/langs/sr_RS/productbatch.lang (100%) rename {htdocs => public}/langs/sr_RS/products.lang (100%) rename {htdocs => public}/langs/sr_RS/projects.lang (100%) rename {htdocs => public}/langs/sr_RS/propal.lang (100%) rename {htdocs => public}/langs/sr_RS/resource.lang (100%) rename {htdocs => public}/langs/sr_RS/salaries.lang (100%) rename {htdocs => public}/langs/sr_RS/sendings.lang (100%) rename {htdocs => public}/langs/sr_RS/sms.lang (100%) rename {htdocs => public}/langs/sr_RS/stocks.lang (100%) rename {htdocs => public}/langs/sr_RS/suppliers.lang (100%) rename {htdocs => public}/langs/sr_RS/trips.lang (100%) rename {htdocs => public}/langs/sr_RS/users.lang (100%) rename {htdocs => public}/langs/sr_RS/withdrawals.lang (100%) rename {htdocs => public}/langs/sr_RS/workflow.lang (100%) rename {htdocs => public}/langs/sv_SE/accountancy.lang (100%) rename {htdocs => public}/langs/sv_SE/admin.lang (100%) rename {htdocs => public}/langs/sv_SE/agenda.lang (100%) rename {htdocs => public}/langs/sv_SE/banks.lang (100%) rename {htdocs => public}/langs/sv_SE/bills.lang (100%) rename {htdocs => public}/langs/sv_SE/bookmarks.lang (100%) rename {htdocs => public}/langs/sv_SE/boxes.lang (100%) rename {htdocs => public}/langs/sv_SE/cashdesk.lang (100%) rename {htdocs => public}/langs/sv_SE/categories.lang (100%) rename {htdocs => public}/langs/sv_SE/commercial.lang (100%) rename {htdocs => public}/langs/sv_SE/companies.lang (100%) rename {htdocs => public}/langs/sv_SE/compta.lang (100%) rename {htdocs => public}/langs/sv_SE/contracts.lang (100%) rename {htdocs => public}/langs/sv_SE/cron.lang (100%) rename {htdocs => public}/langs/sv_SE/deliveries.lang (100%) rename {htdocs => public}/langs/sv_SE/dict.lang (100%) rename {htdocs => public}/langs/sv_SE/donations.lang (100%) rename {htdocs => public}/langs/sv_SE/ecm.lang (100%) rename {htdocs => public}/langs/sv_SE/errors.lang (100%) rename {htdocs => public}/langs/sv_SE/exports.lang (100%) rename {htdocs => public}/langs/sv_SE/externalsite.lang (100%) rename {htdocs => public}/langs/sv_SE/ftp.lang (100%) rename {htdocs => public}/langs/sv_SE/help.lang (100%) rename {htdocs => public}/langs/sv_SE/holiday.lang (100%) rename {htdocs => public}/langs/sv_SE/hrm.lang (100%) rename {htdocs => public}/langs/sv_SE/incoterm.lang (100%) rename {htdocs => public}/langs/sv_SE/install.lang (100%) rename {htdocs => public}/langs/sv_SE/interventions.lang (100%) rename {htdocs => public}/langs/sv_SE/languages.lang (100%) rename {htdocs => public}/langs/sv_SE/ldap.lang (100%) rename {htdocs => public}/langs/sv_SE/link.lang (100%) rename {htdocs => public}/langs/sv_SE/loan.lang (100%) rename {htdocs => public}/langs/sv_SE/mailmanspip.lang (100%) rename {htdocs => public}/langs/sv_SE/mails.lang (100%) rename {htdocs => public}/langs/sv_SE/main.lang (100%) rename {htdocs => public}/langs/sv_SE/margins.lang (100%) rename {htdocs => public}/langs/sv_SE/members.lang (100%) rename {htdocs => public}/langs/sv_SE/oauth.lang (100%) rename {htdocs => public}/langs/sv_SE/opensurvey.lang (100%) rename {htdocs => public}/langs/sv_SE/orders.lang (100%) rename {htdocs => public}/langs/sv_SE/other.lang (100%) rename {htdocs => public}/langs/sv_SE/paybox.lang (100%) rename {htdocs => public}/langs/sv_SE/paypal.lang (100%) rename {htdocs => public}/langs/sv_SE/printing.lang (100%) rename {htdocs => public}/langs/sv_SE/productbatch.lang (100%) rename {htdocs => public}/langs/sv_SE/products.lang (100%) rename {htdocs => public}/langs/sv_SE/projects.lang (100%) rename {htdocs => public}/langs/sv_SE/propal.lang (100%) rename {htdocs => public}/langs/sv_SE/receiptprinter.lang (100%) rename {htdocs => public}/langs/sv_SE/resource.lang (100%) rename {htdocs => public}/langs/sv_SE/salaries.lang (100%) rename {htdocs => public}/langs/sv_SE/sendings.lang (100%) rename {htdocs => public}/langs/sv_SE/sms.lang (100%) rename {htdocs => public}/langs/sv_SE/stocks.lang (100%) rename {htdocs => public}/langs/sv_SE/supplier_proposal.lang (100%) rename {htdocs => public}/langs/sv_SE/suppliers.lang (100%) rename {htdocs => public}/langs/sv_SE/trips.lang (100%) rename {htdocs => public}/langs/sv_SE/users.lang (100%) rename {htdocs => public}/langs/sv_SE/website.lang (100%) rename {htdocs => public}/langs/sv_SE/withdrawals.lang (100%) rename {htdocs => public}/langs/sv_SE/workflow.lang (100%) rename {htdocs => public}/langs/sw_SW/accountancy.lang (100%) rename {htdocs => public}/langs/sw_SW/admin.lang (100%) rename {htdocs => public}/langs/sw_SW/agenda.lang (100%) rename {htdocs => public}/langs/sw_SW/banks.lang (100%) rename {htdocs => public}/langs/sw_SW/bills.lang (100%) rename {htdocs => public}/langs/sw_SW/bookmarks.lang (100%) rename {htdocs => public}/langs/sw_SW/boxes.lang (100%) rename {htdocs => public}/langs/sw_SW/cashdesk.lang (100%) rename {htdocs => public}/langs/sw_SW/categories.lang (100%) rename {htdocs => public}/langs/sw_SW/commercial.lang (100%) rename {htdocs => public}/langs/sw_SW/companies.lang (100%) rename {htdocs => public}/langs/sw_SW/compta.lang (100%) rename {htdocs => public}/langs/sw_SW/contracts.lang (100%) rename {htdocs => public}/langs/sw_SW/cron.lang (100%) rename {htdocs => public}/langs/sw_SW/deliveries.lang (100%) rename {htdocs => public}/langs/sw_SW/dict.lang (100%) rename {htdocs => public}/langs/sw_SW/donations.lang (100%) rename {htdocs => public}/langs/sw_SW/ecm.lang (100%) rename {htdocs => public}/langs/sw_SW/errors.lang (100%) rename {htdocs => public}/langs/sw_SW/exports.lang (100%) rename {htdocs => public}/langs/sw_SW/externalsite.lang (100%) rename {htdocs => public}/langs/sw_SW/ftp.lang (100%) rename {htdocs => public}/langs/sw_SW/help.lang (100%) rename {htdocs => public}/langs/sw_SW/holiday.lang (100%) rename {htdocs => public}/langs/sw_SW/incoterm.lang (100%) rename {htdocs => public}/langs/sw_SW/install.lang (100%) rename {htdocs => public}/langs/sw_SW/interventions.lang (100%) rename {htdocs => public}/langs/sw_SW/languages.lang (100%) rename {htdocs => public}/langs/sw_SW/ldap.lang (100%) rename {htdocs => public}/langs/sw_SW/link.lang (100%) rename {htdocs => public}/langs/sw_SW/loan.lang (100%) rename {htdocs => public}/langs/sw_SW/mailmanspip.lang (100%) rename {htdocs => public}/langs/sw_SW/mails.lang (100%) rename {htdocs => public}/langs/sw_SW/main.lang (100%) rename {htdocs => public}/langs/sw_SW/margins.lang (100%) rename {htdocs => public}/langs/sw_SW/members.lang (100%) rename {htdocs => public}/langs/sw_SW/opensurvey.lang (100%) rename {htdocs => public}/langs/sw_SW/orders.lang (100%) rename {htdocs => public}/langs/sw_SW/other.lang (100%) rename {htdocs => public}/langs/sw_SW/paybox.lang (100%) rename {htdocs => public}/langs/sw_SW/paypal.lang (100%) rename {htdocs => public}/langs/sw_SW/printing.lang (100%) rename {htdocs => public}/langs/sw_SW/productbatch.lang (100%) rename {htdocs => public}/langs/sw_SW/products.lang (100%) rename {htdocs => public}/langs/sw_SW/projects.lang (100%) rename {htdocs => public}/langs/sw_SW/propal.lang (100%) rename {htdocs => public}/langs/sw_SW/resource.lang (100%) rename {htdocs => public}/langs/sw_SW/salaries.lang (100%) rename {htdocs => public}/langs/sw_SW/sendings.lang (100%) rename {htdocs => public}/langs/sw_SW/sms.lang (100%) rename {htdocs => public}/langs/sw_SW/stocks.lang (100%) rename {htdocs => public}/langs/sw_SW/suppliers.lang (100%) rename {htdocs => public}/langs/sw_SW/trips.lang (100%) rename {htdocs => public}/langs/sw_SW/users.lang (100%) rename {htdocs => public}/langs/sw_SW/withdrawals.lang (100%) rename {htdocs => public}/langs/sw_SW/workflow.lang (100%) rename {htdocs => public}/langs/th_TH/accountancy.lang (100%) rename {htdocs => public}/langs/th_TH/admin.lang (100%) rename {htdocs => public}/langs/th_TH/agenda.lang (100%) rename {htdocs => public}/langs/th_TH/banks.lang (100%) rename {htdocs => public}/langs/th_TH/bills.lang (100%) rename {htdocs => public}/langs/th_TH/bookmarks.lang (100%) rename {htdocs => public}/langs/th_TH/boxes.lang (100%) rename {htdocs => public}/langs/th_TH/cashdesk.lang (100%) rename {htdocs => public}/langs/th_TH/categories.lang (100%) rename {htdocs => public}/langs/th_TH/commercial.lang (100%) rename {htdocs => public}/langs/th_TH/companies.lang (100%) rename {htdocs => public}/langs/th_TH/compta.lang (100%) rename {htdocs => public}/langs/th_TH/contracts.lang (100%) rename {htdocs => public}/langs/th_TH/cron.lang (100%) rename {htdocs => public}/langs/th_TH/deliveries.lang (100%) rename {htdocs => public}/langs/th_TH/dict.lang (100%) rename {htdocs => public}/langs/th_TH/donations.lang (100%) rename {htdocs => public}/langs/th_TH/ecm.lang (100%) rename {htdocs => public}/langs/th_TH/errors.lang (100%) rename {htdocs => public}/langs/th_TH/exports.lang (100%) rename {htdocs => public}/langs/th_TH/externalsite.lang (100%) rename {htdocs => public}/langs/th_TH/ftp.lang (100%) rename {htdocs => public}/langs/th_TH/help.lang (100%) rename {htdocs => public}/langs/th_TH/holiday.lang (100%) rename {htdocs => public}/langs/th_TH/hrm.lang (100%) rename {htdocs => public}/langs/th_TH/incoterm.lang (100%) rename {htdocs => public}/langs/th_TH/install.lang (100%) rename {htdocs => public}/langs/th_TH/interventions.lang (100%) rename {htdocs => public}/langs/th_TH/languages.lang (100%) rename {htdocs => public}/langs/th_TH/ldap.lang (100%) rename {htdocs => public}/langs/th_TH/link.lang (100%) rename {htdocs => public}/langs/th_TH/loan.lang (100%) rename {htdocs => public}/langs/th_TH/mailmanspip.lang (100%) rename {htdocs => public}/langs/th_TH/mails.lang (100%) rename {htdocs => public}/langs/th_TH/main.lang (100%) rename {htdocs => public}/langs/th_TH/margins.lang (100%) rename {htdocs => public}/langs/th_TH/members.lang (100%) rename {htdocs => public}/langs/th_TH/oauth.lang (100%) rename {htdocs => public}/langs/th_TH/opensurvey.lang (100%) rename {htdocs => public}/langs/th_TH/orders.lang (100%) rename {htdocs => public}/langs/th_TH/other.lang (100%) rename {htdocs => public}/langs/th_TH/paybox.lang (100%) rename {htdocs => public}/langs/th_TH/paypal.lang (100%) rename {htdocs => public}/langs/th_TH/printing.lang (100%) rename {htdocs => public}/langs/th_TH/productbatch.lang (100%) rename {htdocs => public}/langs/th_TH/products.lang (100%) rename {htdocs => public}/langs/th_TH/projects.lang (100%) rename {htdocs => public}/langs/th_TH/propal.lang (100%) rename {htdocs => public}/langs/th_TH/receiptprinter.lang (100%) rename {htdocs => public}/langs/th_TH/resource.lang (100%) rename {htdocs => public}/langs/th_TH/salaries.lang (100%) rename {htdocs => public}/langs/th_TH/sendings.lang (100%) rename {htdocs => public}/langs/th_TH/sms.lang (100%) rename {htdocs => public}/langs/th_TH/stocks.lang (100%) rename {htdocs => public}/langs/th_TH/supplier_proposal.lang (100%) rename {htdocs => public}/langs/th_TH/suppliers.lang (100%) rename {htdocs => public}/langs/th_TH/trips.lang (100%) rename {htdocs => public}/langs/th_TH/users.lang (100%) rename {htdocs => public}/langs/th_TH/website.lang (100%) rename {htdocs => public}/langs/th_TH/withdrawals.lang (100%) rename {htdocs => public}/langs/th_TH/workflow.lang (100%) rename {htdocs => public}/langs/tr_TR/accountancy.lang (100%) rename {htdocs => public}/langs/tr_TR/admin.lang (100%) rename {htdocs => public}/langs/tr_TR/agenda.lang (100%) rename {htdocs => public}/langs/tr_TR/banks.lang (100%) rename {htdocs => public}/langs/tr_TR/bills.lang (100%) rename {htdocs => public}/langs/tr_TR/bookmarks.lang (100%) rename {htdocs => public}/langs/tr_TR/boxes.lang (100%) rename {htdocs => public}/langs/tr_TR/cashdesk.lang (100%) rename {htdocs => public}/langs/tr_TR/categories.lang (100%) rename {htdocs => public}/langs/tr_TR/commercial.lang (100%) rename {htdocs => public}/langs/tr_TR/commissions.lang (100%) rename {htdocs => public}/langs/tr_TR/companies.lang (100%) rename {htdocs => public}/langs/tr_TR/compta.lang (100%) rename {htdocs => public}/langs/tr_TR/contracts.lang (100%) rename {htdocs => public}/langs/tr_TR/cron.lang (100%) rename {htdocs => public}/langs/tr_TR/deliveries.lang (100%) rename {htdocs => public}/langs/tr_TR/dict.lang (100%) rename {htdocs => public}/langs/tr_TR/donations.lang (100%) rename {htdocs => public}/langs/tr_TR/ecm.lang (100%) rename {htdocs => public}/langs/tr_TR/errors.lang (100%) rename {htdocs => public}/langs/tr_TR/exports.lang (100%) rename {htdocs => public}/langs/tr_TR/externalsite.lang (100%) rename {htdocs => public}/langs/tr_TR/ftp.lang (100%) rename {htdocs => public}/langs/tr_TR/help.lang (100%) rename {htdocs => public}/langs/tr_TR/holiday.lang (100%) rename {htdocs => public}/langs/tr_TR/hrm.lang (100%) rename {htdocs => public}/langs/tr_TR/incoterm.lang (100%) rename {htdocs => public}/langs/tr_TR/install.lang (100%) rename {htdocs => public}/langs/tr_TR/interventions.lang (100%) rename {htdocs => public}/langs/tr_TR/languages.lang (100%) rename {htdocs => public}/langs/tr_TR/ldap.lang (100%) rename {htdocs => public}/langs/tr_TR/link.lang (100%) rename {htdocs => public}/langs/tr_TR/loan.lang (100%) rename {htdocs => public}/langs/tr_TR/mailmanspip.lang (100%) rename {htdocs => public}/langs/tr_TR/mails.lang (100%) rename {htdocs => public}/langs/tr_TR/main.lang (100%) rename {htdocs => public}/langs/tr_TR/margins.lang (100%) rename {htdocs => public}/langs/tr_TR/members.lang (100%) rename {htdocs => public}/langs/tr_TR/oauth.lang (100%) rename {htdocs => public}/langs/tr_TR/opensurvey.lang (100%) rename {htdocs => public}/langs/tr_TR/orders.lang (100%) rename {htdocs => public}/langs/tr_TR/other.lang (100%) rename {htdocs => public}/langs/tr_TR/paybox.lang (100%) rename {htdocs => public}/langs/tr_TR/paypal.lang (100%) rename {htdocs => public}/langs/tr_TR/printing.lang (100%) rename {htdocs => public}/langs/tr_TR/productbatch.lang (100%) rename {htdocs => public}/langs/tr_TR/products.lang (100%) rename {htdocs => public}/langs/tr_TR/projects.lang (100%) rename {htdocs => public}/langs/tr_TR/propal.lang (100%) rename {htdocs => public}/langs/tr_TR/receiptprinter.lang (100%) rename {htdocs => public}/langs/tr_TR/resource.lang (100%) rename {htdocs => public}/langs/tr_TR/salaries.lang (100%) rename {htdocs => public}/langs/tr_TR/sendings.lang (100%) rename {htdocs => public}/langs/tr_TR/sms.lang (100%) rename {htdocs => public}/langs/tr_TR/stocks.lang (100%) rename {htdocs => public}/langs/tr_TR/supplier_proposal.lang (100%) rename {htdocs => public}/langs/tr_TR/suppliers.lang (100%) rename {htdocs => public}/langs/tr_TR/trips.lang (100%) rename {htdocs => public}/langs/tr_TR/users.lang (100%) rename {htdocs => public}/langs/tr_TR/website.lang (100%) rename {htdocs => public}/langs/tr_TR/withdrawals.lang (100%) rename {htdocs => public}/langs/tr_TR/workflow.lang (100%) rename {htdocs => public}/langs/uk_UA/accountancy.lang (100%) rename {htdocs => public}/langs/uk_UA/admin.lang (100%) rename {htdocs => public}/langs/uk_UA/agenda.lang (100%) rename {htdocs => public}/langs/uk_UA/banks.lang (100%) rename {htdocs => public}/langs/uk_UA/bills.lang (100%) rename {htdocs => public}/langs/uk_UA/bookmarks.lang (100%) rename {htdocs => public}/langs/uk_UA/boxes.lang (100%) rename {htdocs => public}/langs/uk_UA/cashdesk.lang (100%) rename {htdocs => public}/langs/uk_UA/categories.lang (100%) rename {htdocs => public}/langs/uk_UA/commercial.lang (100%) rename {htdocs => public}/langs/uk_UA/companies.lang (100%) rename {htdocs => public}/langs/uk_UA/compta.lang (100%) rename {htdocs => public}/langs/uk_UA/contracts.lang (100%) rename {htdocs => public}/langs/uk_UA/cron.lang (100%) rename {htdocs => public}/langs/uk_UA/deliveries.lang (100%) rename {htdocs => public}/langs/uk_UA/dict.lang (100%) rename {htdocs => public}/langs/uk_UA/donations.lang (100%) rename {htdocs => public}/langs/uk_UA/ecm.lang (100%) rename {htdocs => public}/langs/uk_UA/errors.lang (100%) rename {htdocs => public}/langs/uk_UA/exports.lang (100%) rename {htdocs => public}/langs/uk_UA/externalsite.lang (100%) rename {htdocs => public}/langs/uk_UA/ftp.lang (100%) rename {htdocs => public}/langs/uk_UA/help.lang (100%) rename {htdocs => public}/langs/uk_UA/holiday.lang (100%) rename {htdocs => public}/langs/uk_UA/hrm.lang (100%) rename {htdocs => public}/langs/uk_UA/incoterm.lang (100%) rename {htdocs => public}/langs/uk_UA/install.lang (100%) rename {htdocs => public}/langs/uk_UA/interventions.lang (100%) rename {htdocs => public}/langs/uk_UA/languages.lang (100%) rename {htdocs => public}/langs/uk_UA/ldap.lang (100%) rename {htdocs => public}/langs/uk_UA/link.lang (100%) rename {htdocs => public}/langs/uk_UA/loan.lang (100%) rename {htdocs => public}/langs/uk_UA/mailmanspip.lang (100%) rename {htdocs => public}/langs/uk_UA/mails.lang (100%) rename {htdocs => public}/langs/uk_UA/main.lang (100%) rename {htdocs => public}/langs/uk_UA/margins.lang (100%) rename {htdocs => public}/langs/uk_UA/members.lang (100%) rename {htdocs => public}/langs/uk_UA/oauth.lang (100%) rename {htdocs => public}/langs/uk_UA/opensurvey.lang (100%) rename {htdocs => public}/langs/uk_UA/orders.lang (100%) rename {htdocs => public}/langs/uk_UA/other.lang (100%) rename {htdocs => public}/langs/uk_UA/paybox.lang (100%) rename {htdocs => public}/langs/uk_UA/paypal.lang (100%) rename {htdocs => public}/langs/uk_UA/printing.lang (100%) rename {htdocs => public}/langs/uk_UA/productbatch.lang (100%) rename {htdocs => public}/langs/uk_UA/products.lang (100%) rename {htdocs => public}/langs/uk_UA/projects.lang (100%) rename {htdocs => public}/langs/uk_UA/propal.lang (100%) rename {htdocs => public}/langs/uk_UA/receiptprinter.lang (100%) rename {htdocs => public}/langs/uk_UA/resource.lang (100%) rename {htdocs => public}/langs/uk_UA/salaries.lang (100%) rename {htdocs => public}/langs/uk_UA/sendings.lang (100%) rename {htdocs => public}/langs/uk_UA/sms.lang (100%) rename {htdocs => public}/langs/uk_UA/stocks.lang (100%) rename {htdocs => public}/langs/uk_UA/supplier_proposal.lang (100%) rename {htdocs => public}/langs/uk_UA/suppliers.lang (100%) rename {htdocs => public}/langs/uk_UA/trips.lang (100%) rename {htdocs => public}/langs/uk_UA/users.lang (100%) rename {htdocs => public}/langs/uk_UA/website.lang (100%) rename {htdocs => public}/langs/uk_UA/withdrawals.lang (100%) rename {htdocs => public}/langs/uk_UA/workflow.lang (100%) rename {htdocs => public}/langs/uz_UZ/accountancy.lang (100%) rename {htdocs => public}/langs/uz_UZ/admin.lang (100%) rename {htdocs => public}/langs/uz_UZ/agenda.lang (100%) rename {htdocs => public}/langs/uz_UZ/banks.lang (100%) rename {htdocs => public}/langs/uz_UZ/bills.lang (100%) rename {htdocs => public}/langs/uz_UZ/bookmarks.lang (100%) rename {htdocs => public}/langs/uz_UZ/boxes.lang (100%) rename {htdocs => public}/langs/uz_UZ/cashdesk.lang (100%) rename {htdocs => public}/langs/uz_UZ/categories.lang (100%) rename {htdocs => public}/langs/uz_UZ/commercial.lang (100%) rename {htdocs => public}/langs/uz_UZ/companies.lang (100%) rename {htdocs => public}/langs/uz_UZ/compta.lang (100%) rename {htdocs => public}/langs/uz_UZ/contracts.lang (100%) rename {htdocs => public}/langs/uz_UZ/cron.lang (100%) rename {htdocs => public}/langs/uz_UZ/deliveries.lang (100%) rename {htdocs => public}/langs/uz_UZ/dict.lang (100%) rename {htdocs => public}/langs/uz_UZ/donations.lang (100%) rename {htdocs => public}/langs/uz_UZ/ecm.lang (100%) rename {htdocs => public}/langs/uz_UZ/errors.lang (100%) rename {htdocs => public}/langs/uz_UZ/exports.lang (100%) rename {htdocs => public}/langs/uz_UZ/externalsite.lang (100%) rename {htdocs => public}/langs/uz_UZ/ftp.lang (100%) rename {htdocs => public}/langs/uz_UZ/help.lang (100%) rename {htdocs => public}/langs/uz_UZ/holiday.lang (100%) rename {htdocs => public}/langs/uz_UZ/incoterm.lang (100%) rename {htdocs => public}/langs/uz_UZ/install.lang (100%) rename {htdocs => public}/langs/uz_UZ/interventions.lang (100%) rename {htdocs => public}/langs/uz_UZ/languages.lang (100%) rename {htdocs => public}/langs/uz_UZ/ldap.lang (100%) rename {htdocs => public}/langs/uz_UZ/link.lang (100%) rename {htdocs => public}/langs/uz_UZ/loan.lang (100%) rename {htdocs => public}/langs/uz_UZ/mailmanspip.lang (100%) rename {htdocs => public}/langs/uz_UZ/mails.lang (100%) rename {htdocs => public}/langs/uz_UZ/main.lang (100%) rename {htdocs => public}/langs/uz_UZ/margins.lang (100%) rename {htdocs => public}/langs/uz_UZ/members.lang (100%) rename {htdocs => public}/langs/uz_UZ/opensurvey.lang (100%) rename {htdocs => public}/langs/uz_UZ/orders.lang (100%) rename {htdocs => public}/langs/uz_UZ/other.lang (100%) rename {htdocs => public}/langs/uz_UZ/paybox.lang (100%) rename {htdocs => public}/langs/uz_UZ/paypal.lang (100%) rename {htdocs => public}/langs/uz_UZ/printing.lang (100%) rename {htdocs => public}/langs/uz_UZ/productbatch.lang (100%) rename {htdocs => public}/langs/uz_UZ/products.lang (100%) rename {htdocs => public}/langs/uz_UZ/projects.lang (100%) rename {htdocs => public}/langs/uz_UZ/propal.lang (100%) rename {htdocs => public}/langs/uz_UZ/resource.lang (100%) rename {htdocs => public}/langs/uz_UZ/salaries.lang (100%) rename {htdocs => public}/langs/uz_UZ/sendings.lang (100%) rename {htdocs => public}/langs/uz_UZ/sms.lang (100%) rename {htdocs => public}/langs/uz_UZ/stocks.lang (100%) rename {htdocs => public}/langs/uz_UZ/suppliers.lang (100%) rename {htdocs => public}/langs/uz_UZ/trips.lang (100%) rename {htdocs => public}/langs/uz_UZ/users.lang (100%) rename {htdocs => public}/langs/uz_UZ/withdrawals.lang (100%) rename {htdocs => public}/langs/uz_UZ/workflow.lang (100%) rename {htdocs => public}/langs/vi_VN/accountancy.lang (100%) rename {htdocs => public}/langs/vi_VN/admin.lang (100%) rename {htdocs => public}/langs/vi_VN/agenda.lang (100%) rename {htdocs => public}/langs/vi_VN/banks.lang (100%) rename {htdocs => public}/langs/vi_VN/bills.lang (100%) rename {htdocs => public}/langs/vi_VN/bookmarks.lang (100%) rename {htdocs => public}/langs/vi_VN/boxes.lang (100%) rename {htdocs => public}/langs/vi_VN/cashdesk.lang (100%) rename {htdocs => public}/langs/vi_VN/categories.lang (100%) rename {htdocs => public}/langs/vi_VN/commercial.lang (100%) rename {htdocs => public}/langs/vi_VN/companies.lang (100%) rename {htdocs => public}/langs/vi_VN/compta.lang (100%) rename {htdocs => public}/langs/vi_VN/contracts.lang (100%) rename {htdocs => public}/langs/vi_VN/cron.lang (100%) rename {htdocs => public}/langs/vi_VN/deliveries.lang (100%) rename {htdocs => public}/langs/vi_VN/dict.lang (100%) rename {htdocs => public}/langs/vi_VN/donations.lang (100%) rename {htdocs => public}/langs/vi_VN/ecm.lang (100%) rename {htdocs => public}/langs/vi_VN/errors.lang (100%) rename {htdocs => public}/langs/vi_VN/exports.lang (100%) rename {htdocs => public}/langs/vi_VN/externalsite.lang (100%) rename {htdocs => public}/langs/vi_VN/ftp.lang (100%) rename {htdocs => public}/langs/vi_VN/help.lang (100%) rename {htdocs => public}/langs/vi_VN/holiday.lang (100%) rename {htdocs => public}/langs/vi_VN/hrm.lang (100%) rename {htdocs => public}/langs/vi_VN/incoterm.lang (100%) rename {htdocs => public}/langs/vi_VN/install.lang (100%) rename {htdocs => public}/langs/vi_VN/interventions.lang (100%) rename {htdocs => public}/langs/vi_VN/languages.lang (100%) rename {htdocs => public}/langs/vi_VN/ldap.lang (100%) rename {htdocs => public}/langs/vi_VN/link.lang (100%) rename {htdocs => public}/langs/vi_VN/loan.lang (100%) rename {htdocs => public}/langs/vi_VN/mailmanspip.lang (100%) rename {htdocs => public}/langs/vi_VN/mails.lang (100%) rename {htdocs => public}/langs/vi_VN/main.lang (100%) rename {htdocs => public}/langs/vi_VN/margins.lang (100%) rename {htdocs => public}/langs/vi_VN/members.lang (100%) rename {htdocs => public}/langs/vi_VN/oauth.lang (100%) rename {htdocs => public}/langs/vi_VN/opensurvey.lang (100%) rename {htdocs => public}/langs/vi_VN/orders.lang (100%) rename {htdocs => public}/langs/vi_VN/other.lang (100%) rename {htdocs => public}/langs/vi_VN/paybox.lang (100%) rename {htdocs => public}/langs/vi_VN/paypal.lang (100%) rename {htdocs => public}/langs/vi_VN/printing.lang (100%) rename {htdocs => public}/langs/vi_VN/productbatch.lang (100%) rename {htdocs => public}/langs/vi_VN/products.lang (100%) rename {htdocs => public}/langs/vi_VN/projects.lang (100%) rename {htdocs => public}/langs/vi_VN/propal.lang (100%) rename {htdocs => public}/langs/vi_VN/receiptprinter.lang (100%) rename {htdocs => public}/langs/vi_VN/resource.lang (100%) rename {htdocs => public}/langs/vi_VN/salaries.lang (100%) rename {htdocs => public}/langs/vi_VN/sendings.lang (100%) rename {htdocs => public}/langs/vi_VN/sms.lang (100%) rename {htdocs => public}/langs/vi_VN/stocks.lang (100%) rename {htdocs => public}/langs/vi_VN/supplier_proposal.lang (100%) rename {htdocs => public}/langs/vi_VN/suppliers.lang (100%) rename {htdocs => public}/langs/vi_VN/trips.lang (100%) rename {htdocs => public}/langs/vi_VN/users.lang (100%) rename {htdocs => public}/langs/vi_VN/website.lang (100%) rename {htdocs => public}/langs/vi_VN/withdrawals.lang (100%) rename {htdocs => public}/langs/vi_VN/workflow.lang (100%) rename {htdocs => public}/langs/zh_CN/accountancy.lang (100%) rename {htdocs => public}/langs/zh_CN/admin.lang (100%) rename {htdocs => public}/langs/zh_CN/agenda.lang (100%) rename {htdocs => public}/langs/zh_CN/banks.lang (100%) rename {htdocs => public}/langs/zh_CN/bills.lang (100%) rename {htdocs => public}/langs/zh_CN/bookmarks.lang (100%) rename {htdocs => public}/langs/zh_CN/boxes.lang (100%) rename {htdocs => public}/langs/zh_CN/cashdesk.lang (100%) rename {htdocs => public}/langs/zh_CN/categories.lang (100%) rename {htdocs => public}/langs/zh_CN/commercial.lang (100%) rename {htdocs => public}/langs/zh_CN/companies.lang (100%) rename {htdocs => public}/langs/zh_CN/compta.lang (100%) rename {htdocs => public}/langs/zh_CN/contracts.lang (100%) rename {htdocs => public}/langs/zh_CN/cron.lang (100%) rename {htdocs => public}/langs/zh_CN/deliveries.lang (100%) rename {htdocs => public}/langs/zh_CN/dict.lang (100%) rename {htdocs => public}/langs/zh_CN/donations.lang (100%) rename {htdocs => public}/langs/zh_CN/ecm.lang (100%) rename {htdocs => public}/langs/zh_CN/errors.lang (100%) rename {htdocs => public}/langs/zh_CN/exports.lang (100%) rename {htdocs => public}/langs/zh_CN/externalsite.lang (100%) rename {htdocs => public}/langs/zh_CN/ftp.lang (100%) rename {htdocs => public}/langs/zh_CN/help.lang (100%) rename {htdocs => public}/langs/zh_CN/holiday.lang (100%) rename {htdocs => public}/langs/zh_CN/hrm.lang (100%) rename {htdocs => public}/langs/zh_CN/incoterm.lang (100%) rename {htdocs => public}/langs/zh_CN/install.lang (100%) rename {htdocs => public}/langs/zh_CN/interventions.lang (100%) rename {htdocs => public}/langs/zh_CN/languages.lang (100%) rename {htdocs => public}/langs/zh_CN/ldap.lang (100%) rename {htdocs => public}/langs/zh_CN/link.lang (100%) rename {htdocs => public}/langs/zh_CN/loan.lang (100%) rename {htdocs => public}/langs/zh_CN/mailmanspip.lang (100%) rename {htdocs => public}/langs/zh_CN/mails.lang (100%) rename {htdocs => public}/langs/zh_CN/main.lang (100%) rename {htdocs => public}/langs/zh_CN/margins.lang (100%) rename {htdocs => public}/langs/zh_CN/members.lang (100%) rename {htdocs => public}/langs/zh_CN/oauth.lang (100%) rename {htdocs => public}/langs/zh_CN/opensurvey.lang (100%) rename {htdocs => public}/langs/zh_CN/orders.lang (100%) rename {htdocs => public}/langs/zh_CN/other.lang (100%) rename {htdocs => public}/langs/zh_CN/paybox.lang (100%) rename {htdocs => public}/langs/zh_CN/paypal.lang (100%) rename {htdocs => public}/langs/zh_CN/printing.lang (100%) rename {htdocs => public}/langs/zh_CN/productbatch.lang (100%) rename {htdocs => public}/langs/zh_CN/products.lang (100%) rename {htdocs => public}/langs/zh_CN/projects.lang (100%) rename {htdocs => public}/langs/zh_CN/propal.lang (100%) rename {htdocs => public}/langs/zh_CN/receiptprinter.lang (100%) rename {htdocs => public}/langs/zh_CN/resource.lang (100%) rename {htdocs => public}/langs/zh_CN/salaries.lang (100%) rename {htdocs => public}/langs/zh_CN/sendings.lang (100%) rename {htdocs => public}/langs/zh_CN/sms.lang (100%) rename {htdocs => public}/langs/zh_CN/stocks.lang (100%) rename {htdocs => public}/langs/zh_CN/supplier_proposal.lang (100%) rename {htdocs => public}/langs/zh_CN/suppliers.lang (100%) rename {htdocs => public}/langs/zh_CN/trips.lang (100%) rename {htdocs => public}/langs/zh_CN/users.lang (100%) rename {htdocs => public}/langs/zh_CN/website.lang (100%) rename {htdocs => public}/langs/zh_CN/withdrawals.lang (100%) rename {htdocs => public}/langs/zh_CN/workflow.lang (100%) rename {htdocs => public}/langs/zh_TW/accountancy.lang (100%) rename {htdocs => public}/langs/zh_TW/admin.lang (100%) rename {htdocs => public}/langs/zh_TW/agenda.lang (100%) rename {htdocs => public}/langs/zh_TW/banks.lang (100%) rename {htdocs => public}/langs/zh_TW/bills.lang (100%) rename {htdocs => public}/langs/zh_TW/bookmarks.lang (100%) rename {htdocs => public}/langs/zh_TW/boxes.lang (100%) rename {htdocs => public}/langs/zh_TW/cashdesk.lang (100%) rename {htdocs => public}/langs/zh_TW/categories.lang (100%) rename {htdocs => public}/langs/zh_TW/commercial.lang (100%) rename {htdocs => public}/langs/zh_TW/companies.lang (100%) rename {htdocs => public}/langs/zh_TW/compta.lang (100%) rename {htdocs => public}/langs/zh_TW/contracts.lang (100%) rename {htdocs => public}/langs/zh_TW/cron.lang (100%) rename {htdocs => public}/langs/zh_TW/deliveries.lang (100%) rename {htdocs => public}/langs/zh_TW/dict.lang (100%) rename {htdocs => public}/langs/zh_TW/donations.lang (100%) rename {htdocs => public}/langs/zh_TW/ecm.lang (100%) rename {htdocs => public}/langs/zh_TW/errors.lang (100%) rename {htdocs => public}/langs/zh_TW/exports.lang (100%) rename {htdocs => public}/langs/zh_TW/externalsite.lang (100%) rename {htdocs => public}/langs/zh_TW/ftp.lang (100%) rename {htdocs => public}/langs/zh_TW/help.lang (100%) rename {htdocs => public}/langs/zh_TW/holiday.lang (100%) rename {htdocs => public}/langs/zh_TW/hrm.lang (100%) rename {htdocs => public}/langs/zh_TW/incoterm.lang (100%) rename {htdocs => public}/langs/zh_TW/install.lang (100%) rename {htdocs => public}/langs/zh_TW/interventions.lang (100%) rename {htdocs => public}/langs/zh_TW/languages.lang (100%) rename {htdocs => public}/langs/zh_TW/ldap.lang (100%) rename {htdocs => public}/langs/zh_TW/link.lang (100%) rename {htdocs => public}/langs/zh_TW/loan.lang (100%) rename {htdocs => public}/langs/zh_TW/mailmanspip.lang (100%) rename {htdocs => public}/langs/zh_TW/mails.lang (100%) rename {htdocs => public}/langs/zh_TW/main.lang (100%) rename {htdocs => public}/langs/zh_TW/margins.lang (100%) rename {htdocs => public}/langs/zh_TW/members.lang (100%) rename {htdocs => public}/langs/zh_TW/oauth.lang (100%) rename {htdocs => public}/langs/zh_TW/opensurvey.lang (100%) rename {htdocs => public}/langs/zh_TW/orders.lang (100%) rename {htdocs => public}/langs/zh_TW/other.lang (100%) rename {htdocs => public}/langs/zh_TW/paybox.lang (100%) rename {htdocs => public}/langs/zh_TW/paypal.lang (100%) rename {htdocs => public}/langs/zh_TW/printing.lang (100%) rename {htdocs => public}/langs/zh_TW/productbatch.lang (100%) rename {htdocs => public}/langs/zh_TW/products.lang (100%) rename {htdocs => public}/langs/zh_TW/projects.lang (100%) rename {htdocs => public}/langs/zh_TW/propal.lang (100%) rename {htdocs => public}/langs/zh_TW/receiptprinter.lang (100%) rename {htdocs => public}/langs/zh_TW/resource.lang (100%) rename {htdocs => public}/langs/zh_TW/salaries.lang (100%) rename {htdocs => public}/langs/zh_TW/sendings.lang (100%) rename {htdocs => public}/langs/zh_TW/sms.lang (100%) rename {htdocs => public}/langs/zh_TW/stocks.lang (100%) rename {htdocs => public}/langs/zh_TW/supplier_proposal.lang (100%) rename {htdocs => public}/langs/zh_TW/suppliers.lang (100%) rename {htdocs => public}/langs/zh_TW/trips.lang (100%) rename {htdocs => public}/langs/zh_TW/users.lang (100%) rename {htdocs => public}/langs/zh_TW/website.lang (100%) rename {htdocs => public}/langs/zh_TW/withdrawals.lang (100%) rename {htdocs => public}/langs/zh_TW/workflow.lang (100%) rename {htdocs => public}/livraison/card.php (100%) rename {htdocs => public}/livraison/class/index.html (100%) rename {htdocs => public}/livraison/class/livraison.class.php (100%) rename {htdocs => public}/livraison/index.html (100%) rename {htdocs => public}/loan/calc.php (100%) rename {htdocs => public}/loan/card.php (100%) rename {htdocs => public}/loan/class/index.html (100%) rename {htdocs => public}/loan/class/loan.class.php (100%) rename {htdocs => public}/loan/class/paymentloan.class.php (100%) rename {htdocs => public}/loan/document.php (100%) rename {htdocs => public}/loan/index.html (100%) rename {htdocs => public}/loan/index.php (100%) rename {htdocs => public}/loan/info.php (100%) rename {htdocs => public}/loan/note.php (100%) rename {htdocs => public}/loan/payment/card.php (100%) rename {htdocs => public}/loan/payment/index.html (100%) rename {htdocs => public}/loan/payment/payment.php (100%) rename {htdocs => public}/mailmanspip/class/index.html (100%) rename {htdocs => public}/mailmanspip/class/mailmanspip.class.php (100%) rename {htdocs => public}/mailmanspip/index.html (100%) rename {htdocs => public}/main.inc.php (100%) rename {htdocs => public}/margin/admin/index.html (100%) rename {htdocs => public}/margin/admin/margin.php (100%) rename {htdocs => public}/margin/agentMargins.php (100%) rename {htdocs => public}/margin/checkMargins.php (100%) rename {htdocs => public}/margin/customerMargins.php (100%) rename {htdocs => public}/margin/index.php (100%) rename {htdocs => public}/margin/lib/index.html (100%) rename {htdocs => public}/margin/lib/margins.lib.php (100%) rename {htdocs => public}/margin/productMargins.php (100%) rename {htdocs => public}/margin/tabs/index.html (100%) rename {htdocs => public}/margin/tabs/productMargins.php (100%) rename {htdocs => public}/margin/tabs/thirdpartyMargins.php (100%) rename {htdocs => public}/master.inc.php (100%) rename {htdocs => public}/multicurrency/class/multicurrency.class.php (100%) rename {htdocs => public}/opensurvey/card.php (100%) rename {htdocs => public}/opensurvey/class/index.html (100%) rename {htdocs => public}/opensurvey/class/opensurveysondage.class.php (100%) rename {htdocs => public}/opensurvey/css/index.html (100%) rename {htdocs => public}/opensurvey/css/style.css (100%) rename {htdocs => public}/opensurvey/exportcsv.php (100%) rename {htdocs => public}/opensurvey/fonctions.php (100%) rename {htdocs => public}/opensurvey/img/accept-24.png (100%) rename {htdocs => public}/opensurvey/img/accept.png (100%) rename {htdocs => public}/opensurvey/img/add-16.png (100%) rename {htdocs => public}/opensurvey/img/add-24.png (100%) rename {htdocs => public}/opensurvey/img/calendar-32.png (100%) rename {htdocs => public}/opensurvey/img/chart-32.png (100%) rename {htdocs => public}/opensurvey/img/date.png (100%) rename {htdocs => public}/opensurvey/img/fforward.png (100%) rename {htdocs => public}/opensurvey/img/index.html (100%) rename {htdocs => public}/opensurvey/img/medaille.png (100%) rename {htdocs => public}/opensurvey/img/next.png (100%) rename {htdocs => public}/opensurvey/img/object_opensurvey.png (100%) rename {htdocs => public}/opensurvey/img/opensurvey.png (100%) rename {htdocs => public}/opensurvey/img/previous.png (100%) rename {htdocs => public}/opensurvey/img/rewind.png (100%) rename {htdocs => public}/opensurvey/img/sondage2.png (100%) rename {htdocs => public}/opensurvey/index.php (100%) rename {htdocs => public}/opensurvey/list.php (100%) rename {htdocs => public}/opensurvey/results.php (100%) rename {htdocs => public}/opensurvey/wizard/choix_autre.php (100%) rename {htdocs => public}/opensurvey/wizard/choix_date.php (100%) rename {htdocs => public}/opensurvey/wizard/create_survey.php (100%) rename {htdocs => public}/opensurvey/wizard/index.php (100%) rename {htdocs => public}/paybox/admin/index.html (100%) rename {htdocs => public}/paybox/admin/paybox.php (100%) rename {htdocs => public}/paybox/img/index.html (100%) rename {htdocs => public}/paybox/img/object_paybox.png (100%) rename {htdocs => public}/paybox/index.html (100%) rename {htdocs => public}/paybox/lib/index.html (100%) rename {htdocs => public}/paybox/lib/paybox.lib.php (100%) rename {htdocs => public}/paypal/admin/index.html (100%) rename {htdocs => public}/paypal/admin/paypal.php (100%) rename {htdocs => public}/paypal/img/index.html (100%) rename {htdocs => public}/paypal/img/object_paypal.png (100%) rename {htdocs => public}/paypal/index.html (100%) rename {htdocs => public}/paypal/lib/index.html (100%) rename {htdocs => public}/paypal/lib/paypal.lib.php (100%) rename {htdocs => public}/paypal/lib/paypalfunctions.lib.php (100%) rename {htdocs => public}/printing/admin/index.html (100%) rename {htdocs => public}/printing/admin/printing.php (100%) rename {htdocs => public}/printing/index.php (100%) rename {htdocs => public}/printing/lib/index.html (100%) rename {htdocs => public}/printing/lib/printing.lib.php (100%) rename {htdocs => public}/product/admin/dynamic_prices.php (100%) rename {htdocs => public}/product/admin/index.html (100%) rename {htdocs => public}/product/admin/price_rules.php (100%) rename {htdocs => public}/product/admin/product.php (100%) rename {htdocs => public}/product/admin/product_extrafields.php (100%) rename {htdocs => public}/product/admin/product_lot_extrafields.php (100%) rename {htdocs => public}/product/admin/product_tools.php (100%) rename {htdocs => public}/product/ajax/index.html (100%) rename {htdocs => public}/product/ajax/products.php (100%) rename {htdocs => public}/product/canvas/index.html (100%) rename {htdocs => public}/product/canvas/product/actions_card_product.class.php (100%) rename {htdocs => public}/product/canvas/product/index.html (100%) rename {htdocs => public}/product/canvas/product/tpl/card_create.tpl.php (100%) rename {htdocs => public}/product/canvas/product/tpl/card_edit.tpl.php (100%) rename {htdocs => public}/product/canvas/product/tpl/card_view.tpl.php (100%) rename {htdocs => public}/product/canvas/product/tpl/index.html (100%) rename {htdocs => public}/product/canvas/product/tpl/list.tpl.php (100%) rename {htdocs => public}/product/canvas/service/actions_card_service.class.php (100%) rename {htdocs => public}/product/canvas/service/index.html (100%) rename {htdocs => public}/product/canvas/service/tpl/card_create.tpl.php (100%) rename {htdocs => public}/product/canvas/service/tpl/card_edit.tpl.php (100%) rename {htdocs => public}/product/canvas/service/tpl/card_view.tpl.php (100%) rename {htdocs => public}/product/canvas/service/tpl/index.html (100%) rename {htdocs => public}/product/canvas/service/tpl/list.tpl.php (100%) rename {htdocs => public}/product/card.php (100%) rename {htdocs => public}/product/class/api_deprecated_product.class.php (100%) rename {htdocs => public}/product/class/api_products.class.php (100%) rename {htdocs => public}/product/class/html.formproduct.class.php (100%) rename {htdocs => public}/product/class/index.html (100%) rename {htdocs => public}/product/class/product.class.php (100%) rename {htdocs => public}/product/class/productbatch.class.php (100%) rename {htdocs => public}/product/class/productcustomerprice.class.php (100%) rename {htdocs => public}/product/class/propalmergepdfproduct.class.php (100%) rename {htdocs => public}/product/class/service.class.php (100%) rename {htdocs => public}/product/composition/card.php (100%) rename {htdocs => public}/product/composition/index.html (100%) rename {htdocs => public}/product/document.php (100%) rename {htdocs => public}/product/dynamic_price/class/price_expression.class.php (100%) rename {htdocs => public}/product/dynamic_price/class/price_global_variable.class.php (100%) rename {htdocs => public}/product/dynamic_price/class/price_global_variable_updater.class.php (100%) rename {htdocs => public}/product/dynamic_price/class/price_parser.class.php (100%) rename {htdocs => public}/product/dynamic_price/editor.php (100%) rename {htdocs => public}/product/fournisseurs.php (100%) rename {htdocs => public}/product/index.php (100%) rename {htdocs => public}/product/info.php (100%) rename {htdocs => public}/product/list.php (100%) rename {htdocs => public}/product/note.php (100%) rename {htdocs => public}/product/popuprop.php (100%) rename {htdocs => public}/product/price.php (100%) rename {htdocs => public}/product/reassort.php (100%) rename {htdocs => public}/product/reassortlot.php (100%) rename {htdocs => public}/product/stats/card.php (100%) rename {htdocs => public}/product/stats/commande.php (100%) rename {htdocs => public}/product/stats/commande_fournisseur.php (100%) rename {htdocs => public}/product/stats/contrat.php (100%) rename {htdocs => public}/product/stats/facture.php (100%) rename {htdocs => public}/product/stats/facture_fournisseur.php (100%) rename {htdocs => public}/product/stats/index.html (100%) rename {htdocs => public}/product/stats/propal.php (100%) rename {htdocs => public}/product/stock/card.php (100%) rename {htdocs => public}/product/stock/class/api_stockmovements.class.php (100%) rename {htdocs => public}/product/stock/class/api_warehouses.class.php (100%) rename {htdocs => public}/product/stock/class/entrepot.class.php (100%) rename {htdocs => public}/product/stock/class/index.html (100%) rename {htdocs => public}/product/stock/class/mouvementstock.class.php (100%) rename {htdocs => public}/product/stock/class/productlot.class.php (100%) rename {htdocs => public}/product/stock/class/productstockentrepot.class.php (100%) rename {htdocs => public}/product/stock/fiche-valo.php (100%) rename {htdocs => public}/product/stock/img/index.html (100%) rename {htdocs => public}/product/stock/img/no.png (100%) rename {htdocs => public}/product/stock/img/yes.png (100%) rename {htdocs => public}/product/stock/index.php (100%) rename {htdocs => public}/product/stock/info.php (100%) rename {htdocs => public}/product/stock/lib/index.html (100%) rename {htdocs => public}/product/stock/lib/replenishment.lib.php (100%) rename {htdocs => public}/product/stock/list.php (100%) rename {htdocs => public}/product/stock/massstockmove.php (100%) rename {htdocs => public}/product/stock/mouvement.php (100%) rename {htdocs => public}/product/stock/product.php (100%) rename {htdocs => public}/product/stock/productlot_card.php (100%) rename {htdocs => public}/product/stock/productlot_list.php (100%) rename {htdocs => public}/product/stock/replenish.php (100%) rename {htdocs => public}/product/stock/replenishorders.php (100%) rename {htdocs => public}/product/stock/tpl/stockcorrection.tpl.php (100%) rename {htdocs => public}/product/stock/tpl/stocktransfer.tpl.php (100%) rename {htdocs => public}/product/stock/valo.php (100%) rename {htdocs => public}/product/traduction.php (100%) rename {htdocs => public}/projet/activity/index.php (100%) rename {htdocs => public}/projet/activity/perday.php (100%) rename {htdocs => public}/projet/activity/perweek.php (100%) rename {htdocs => public}/projet/admin/index.html (100%) rename {htdocs => public}/projet/admin/project.php (100%) rename {htdocs => public}/projet/admin/project_extrafields.php (100%) rename {htdocs => public}/projet/admin/project_task_extrafields.php (100%) rename {htdocs => public}/projet/ajax/projects.php (100%) rename {htdocs => public}/projet/card.php (100%) rename {htdocs => public}/projet/class/api_projects.class.php (100%) rename {htdocs => public}/projet/class/api_tasks.class.php (100%) rename {htdocs => public}/projet/class/index.html (100%) rename {htdocs => public}/projet/class/project.class.php (100%) rename {htdocs => public}/projet/class/projectstats.class.php (100%) rename {htdocs => public}/projet/class/task.class.php (100%) rename {htdocs => public}/projet/contact.php (100%) rename {htdocs => public}/projet/document.php (100%) rename {htdocs => public}/projet/element.php (100%) rename {htdocs => public}/projet/ganttchart.inc.php (100%) rename {htdocs => public}/projet/ganttview.php (100%) rename {htdocs => public}/projet/graph_opportunities.inc.php (100%) rename {htdocs => public}/projet/index.php (100%) rename {htdocs => public}/projet/info.php (100%) rename {htdocs => public}/projet/jsgantt_language.js.php (100%) rename {htdocs => public}/projet/list.php (100%) rename {htdocs => public}/projet/note.php (100%) rename {htdocs => public}/projet/stats/index.php (100%) rename {htdocs => public}/projet/tasks.php (100%) rename {htdocs => public}/projet/tasks/contact.php (100%) rename {htdocs => public}/projet/tasks/document.php (100%) rename {htdocs => public}/projet/tasks/list.php (100%) rename {htdocs => public}/projet/tasks/note.php (100%) rename {htdocs => public}/projet/tasks/task.php (100%) rename {htdocs => public}/projet/tasks/time.php (100%) rename {htdocs => public}/public/agenda/agendaexport.php (100%) rename {htdocs => public}/public/agenda/index.php (100%) rename {htdocs => public}/public/cron/cron_run_jobs.php (100%) rename {htdocs => public}/public/cron/index.html (100%) rename {htdocs => public}/public/demo/dolibarr_screenshot2.png (100%) rename {htdocs => public}/public/demo/dolibarr_screenshot6.png (100%) rename {htdocs => public}/public/demo/dolibarr_screenshot8.png (100%) rename {htdocs => public}/public/demo/dolibarr_screenshot9.png (100%) rename {htdocs => public}/public/demo/index.php (100%) rename {htdocs => public}/public/donations/donateurs_code.php (100%) rename {htdocs => public}/public/donations/index.php (100%) rename {htdocs => public}/public/emailing/index.html (100%) rename {htdocs => public}/public/emailing/mailing-read.php (100%) rename {htdocs => public}/public/emailing/mailing-unsubscribe.php (100%) rename {htdocs => public}/public/error-401.php (100%) rename {htdocs => public}/public/error-404.php (100%) rename {htdocs => public}/public/index.php (100%) rename {htdocs => public}/public/members/index.php (100%) rename {htdocs => public}/public/members/new.php (100%) rename {htdocs => public}/public/members/public_card.php (100%) rename {htdocs => public}/public/members/public_list.php (100%) rename {htdocs => public}/public/notice.php (100%) rename {htdocs => public}/public/opensurvey/index.html (100%) rename {htdocs => public}/public/opensurvey/studs.php (100%) rename {htdocs => public}/public/paybox/index.php (100%) rename {htdocs => public}/public/paybox/newpayment.php (100%) rename {htdocs => public}/public/paybox/paymentko.php (100%) rename {htdocs => public}/public/paybox/paymentok.php (100%) rename {htdocs => public}/public/paypal/index.php (100%) rename {htdocs => public}/public/paypal/newpayment.php (100%) rename {htdocs => public}/public/paypal/paymentko.php (100%) rename {htdocs => public}/public/paypal/paymentok.php (100%) rename {htdocs => public}/public/test/test_arrays.php (100%) rename {htdocs => public}/public/test/test_forms.php (100%) rename {htdocs => public}/public/theme/common/index.php (100%) rename {htdocs => public}/public/theme/common/nophoto.png (100%) rename {htdocs => public}/public/theme/common/user_anonymous.png (100%) rename {htdocs => public}/public/theme/common/user_man.png (100%) rename {htdocs => public}/public/theme/common/user_woman.png (100%) rename {htdocs => public}/public/theme/index.php (100%) rename {htdocs => public}/public/websites/index.php (100%) rename {htdocs => public}/public/websites/styles.css.php (100%) rename {htdocs => public}/resource/add.php (100%) rename {htdocs => public}/resource/card.php (100%) rename {htdocs => public}/resource/class/dolresource.class.php (100%) rename {htdocs => public}/resource/class/html.formresource.class.php (100%) rename {htdocs => public}/resource/class/index.html (100%) rename {htdocs => public}/resource/contact.php (100%) rename {htdocs => public}/resource/document.php (100%) rename {htdocs => public}/resource/element_resource.php (100%) rename {htdocs => public}/resource/index.html (100%) rename {htdocs => public}/resource/list.php (100%) rename {htdocs => public}/resource/note.php (100%) rename {htdocs => public}/robots.txt (100%) rename {htdocs => public}/societe/admin/contact_extrafields.php (100%) rename {htdocs => public}/societe/admin/societe.php (100%) rename {htdocs => public}/societe/admin/societe_extrafields.php (100%) rename {htdocs => public}/societe/agenda.php (100%) rename {htdocs => public}/societe/ajax/company.php (100%) rename {htdocs => public}/societe/ajax/index.html (100%) rename {htdocs => public}/societe/ajaxcompanies.php (100%) rename {htdocs => public}/societe/ajaxcountries.php (100%) rename {htdocs => public}/societe/canvas/README (100%) rename {htdocs => public}/societe/canvas/actions_card_common.class.php (100%) rename {htdocs => public}/societe/canvas/company/actions_card_company.class.php (100%) rename {htdocs => public}/societe/canvas/company/index.html (100%) rename {htdocs => public}/societe/canvas/company/tpl/card_create.tpl.php (100%) rename {htdocs => public}/societe/canvas/company/tpl/card_edit.tpl.php (100%) rename {htdocs => public}/societe/canvas/company/tpl/card_view.tpl.php (100%) rename {htdocs => public}/societe/canvas/company/tpl/index.html (100%) rename {htdocs => public}/societe/canvas/index.html (100%) rename {htdocs => public}/societe/canvas/individual/actions_card_individual.class.php (100%) rename {htdocs => public}/societe/canvas/individual/index.html (100%) rename {htdocs => public}/societe/canvas/individual/tpl/card_create.tpl.php (100%) rename {htdocs => public}/societe/canvas/individual/tpl/card_edit.tpl.php (100%) rename {htdocs => public}/societe/canvas/individual/tpl/card_view.tpl.php (100%) rename {htdocs => public}/societe/canvas/individual/tpl/index.html (100%) rename {htdocs => public}/societe/checkvat/checkVatPopup.php (100%) rename {htdocs => public}/societe/checkvat/checkVatService.xml (100%) rename {htdocs => public}/societe/checkvat/index.html (100%) rename {htdocs => public}/societe/class/address.class.php (100%) rename {htdocs => public}/societe/class/api_contacts.class.php (100%) rename {htdocs => public}/societe/class/api_deprecated_contact.class.php (100%) rename {htdocs => public}/societe/class/api_deprecated_thirdparty.class.php (100%) rename {htdocs => public}/societe/class/api_thirdparties.class.php (100%) rename {htdocs => public}/societe/class/client.class.php (100%) rename {htdocs => public}/societe/class/companybankaccount.class.php (100%) rename {htdocs => public}/societe/class/index.html (100%) rename {htdocs => public}/societe/class/societe.class.php (100%) rename {htdocs => public}/societe/commerciaux.php (100%) rename {htdocs => public}/societe/consumption.php (100%) rename {htdocs => public}/societe/document.php (100%) rename {htdocs => public}/societe/index.php (100%) rename {htdocs => public}/societe/list.php (100%) rename {htdocs => public}/societe/note.php (100%) rename {htdocs => public}/societe/notify/card.php (100%) rename {htdocs => public}/societe/notify/index.php (100%) rename {htdocs => public}/societe/price.php (100%) rename {htdocs => public}/societe/project.php (100%) rename {htdocs => public}/societe/rib.php (100%) rename {htdocs => public}/societe/soc.php (100%) rename {htdocs => public}/societe/societecontact.php (100%) rename {htdocs => public}/societe/tpl/index.html (100%) rename {htdocs => public}/societe/tpl/linesalesrepresentative.tpl.php (100%) rename {htdocs => public}/supplier_proposal/admin/supplier_proposal_extrafields.php (100%) rename {htdocs => public}/supplier_proposal/admin/supplier_proposaldet_extrafields.php (100%) rename {htdocs => public}/supplier_proposal/card.php (100%) rename {htdocs => public}/supplier_proposal/class/index.html (100%) rename {htdocs => public}/supplier_proposal/class/supplier_proposal.class.php (100%) rename {htdocs => public}/supplier_proposal/document.php (100%) rename {htdocs => public}/supplier_proposal/index.php (100%) rename {htdocs => public}/supplier_proposal/info.php (100%) rename {htdocs => public}/supplier_proposal/list.php (100%) rename {htdocs => public}/supplier_proposal/note.php (100%) rename {htdocs => public}/supplier_proposal/tpl/index.html (100%) rename {htdocs => public}/supplier_proposal/tpl/linkedobjectblock.tpl.php (100%) rename {htdocs => public}/support/background.png (100%) rename {htdocs => public}/support/default.css (100%) rename {htdocs => public}/support/helpcenter.png (100%) rename {htdocs => public}/support/inc.php (100%) rename {htdocs => public}/support/index.php (100%) rename {htdocs => public}/support/internet.png (100%) rename {htdocs => public}/support/mail.png (100%) rename {htdocs => public}/support/online.php (100%) rename {htdocs => public}/support/pagemaster.png (100%) rename {htdocs => public}/support/redstar.png (100%) rename {htdocs => public}/support/star.png (100%) rename {htdocs => public}/support/who.png (100%) rename {htdocs => public}/theme/.gitignore (100%) rename {htdocs => public}/theme/common/colorpicker.png (100%) rename {htdocs => public}/theme/common/devices/audio-card.png (100%) rename {htdocs => public}/theme/common/devices/audio-headset.png (100%) rename {htdocs => public}/theme/common/devices/audio-input-line.png (100%) rename {htdocs => public}/theme/common/devices/audio-input-microphone.png (100%) rename {htdocs => public}/theme/common/devices/battery.png (100%) rename {htdocs => public}/theme/common/devices/camera-photo.png (100%) rename {htdocs => public}/theme/common/devices/camera-web.png (100%) rename {htdocs => public}/theme/common/devices/computer-laptop.png (100%) rename {htdocs => public}/theme/common/devices/computer.png (100%) rename {htdocs => public}/theme/common/devices/cpu.png (100%) rename {htdocs => public}/theme/common/devices/drive-harddisk.png (100%) rename {htdocs => public}/theme/common/devices/drive-optical.png (100%) rename {htdocs => public}/theme/common/devices/drive-removable-media-usb-pendrive.png (100%) rename {htdocs => public}/theme/common/devices/drive-removable-media-usb.png (100%) rename {htdocs => public}/theme/common/devices/drive-removable-media.png (100%) rename {htdocs => public}/theme/common/devices/index.html (100%) rename {htdocs => public}/theme/common/devices/input-gaming.png (100%) rename {htdocs => public}/theme/common/devices/input-keyboard.png (100%) rename {htdocs => public}/theme/common/devices/input-mouse.png (100%) rename {htdocs => public}/theme/common/devices/input-tablet.png (100%) rename {htdocs => public}/theme/common/devices/media-flash-memory-stick.png (100%) rename {htdocs => public}/theme/common/devices/media-flash-sd-mmc.png (100%) rename {htdocs => public}/theme/common/devices/media-flash-smart-media.png (100%) rename {htdocs => public}/theme/common/devices/media-flash.png (100%) rename {htdocs => public}/theme/common/devices/media-floppy.png (100%) rename {htdocs => public}/theme/common/devices/media-optical-audio.png (100%) rename {htdocs => public}/theme/common/devices/media-optical-blu-ray.png (100%) rename {htdocs => public}/theme/common/devices/media-optical-data.png (100%) rename {htdocs => public}/theme/common/devices/media-optical-dvd-video.png (100%) rename {htdocs => public}/theme/common/devices/media-optical-dvd.png (100%) rename {htdocs => public}/theme/common/devices/media-optical-mixed-cd.png (100%) rename {htdocs => public}/theme/common/devices/media-optical-recordable.png (100%) rename {htdocs => public}/theme/common/devices/media-optical-video.png (100%) rename {htdocs => public}/theme/common/devices/media-optical.png (100%) rename {htdocs => public}/theme/common/devices/media-tape.png (100%) rename {htdocs => public}/theme/common/devices/modem.png (100%) rename {htdocs => public}/theme/common/devices/multimedia-player-apple-ipod.png (100%) rename {htdocs => public}/theme/common/devices/multimedia-player.png (100%) rename {htdocs => public}/theme/common/devices/network-wired.png (100%) rename {htdocs => public}/theme/common/devices/network-wireless-connected-00.png (100%) rename {htdocs => public}/theme/common/devices/network-wireless-connected-100.png (100%) rename {htdocs => public}/theme/common/devices/network-wireless-connected-25.png (100%) rename {htdocs => public}/theme/common/devices/network-wireless-connected-50.png (100%) rename {htdocs => public}/theme/common/devices/network-wireless-connected-75.png (100%) rename {htdocs => public}/theme/common/devices/network-wireless-disconnected.png (100%) rename {htdocs => public}/theme/common/devices/network-wireless.png (100%) rename {htdocs => public}/theme/common/devices/pda.png (100%) rename {htdocs => public}/theme/common/devices/phone-openmoko-freerunner.png (100%) rename {htdocs => public}/theme/common/devices/phone.png (100%) rename {htdocs => public}/theme/common/devices/printer-laser.png (100%) rename {htdocs => public}/theme/common/devices/printer.png (100%) rename {htdocs => public}/theme/common/devices/scanner.png (100%) rename {htdocs => public}/theme/common/devices/video-display.png (100%) rename {htdocs => public}/theme/common/devices/video-projector.png (100%) rename {htdocs => public}/theme/common/devices/video-television.png (100%) rename {htdocs => public}/theme/common/dolibarr_box.png (100%) rename {htdocs => public}/theme/common/dolibarr_logo_bw.png (100%) rename {htdocs => public}/theme/common/dolistore.jpg (100%) rename {htdocs => public}/theme/common/emotes/face-angel.png (100%) rename {htdocs => public}/theme/common/emotes/face-embarrassed.png (100%) rename {htdocs => public}/theme/common/emotes/face-kiss.png (100%) rename {htdocs => public}/theme/common/emotes/face-laugh.png (100%) rename {htdocs => public}/theme/common/emotes/face-plain.png (100%) rename {htdocs => public}/theme/common/emotes/face-raspberry.png (100%) rename {htdocs => public}/theme/common/emotes/face-sad.png (100%) rename {htdocs => public}/theme/common/emotes/face-smile-big.png (100%) rename {htdocs => public}/theme/common/emotes/face-smile.png (100%) rename {htdocs => public}/theme/common/emotes/face-surprise.png (100%) rename {htdocs => public}/theme/common/emotes/face-uncertain.png (100%) rename {htdocs => public}/theme/common/emotes/face-wink.png (100%) rename {htdocs => public}/theme/common/emotes/index.html (100%) rename {htdocs => public}/theme/common/flags/ad.png (100%) rename {htdocs => public}/theme/common/flags/ae.png (100%) rename {htdocs => public}/theme/common/flags/af.png (100%) rename {htdocs => public}/theme/common/flags/ag.png (100%) rename {htdocs => public}/theme/common/flags/ai.png (100%) rename {htdocs => public}/theme/common/flags/al.png (100%) rename {htdocs => public}/theme/common/flags/am.png (100%) rename {htdocs => public}/theme/common/flags/an.png (100%) rename {htdocs => public}/theme/common/flags/ao.png (100%) rename {htdocs => public}/theme/common/flags/ar.png (100%) rename {htdocs => public}/theme/common/flags/as.png (100%) rename {htdocs => public}/theme/common/flags/at.png (100%) rename {htdocs => public}/theme/common/flags/au.png (100%) rename {htdocs => public}/theme/common/flags/aw.png (100%) rename {htdocs => public}/theme/common/flags/ax.png (100%) rename {htdocs => public}/theme/common/flags/az.png (100%) rename {htdocs => public}/theme/common/flags/ba.png (100%) rename {htdocs => public}/theme/common/flags/bb.png (100%) rename {htdocs => public}/theme/common/flags/bd.png (100%) rename {htdocs => public}/theme/common/flags/be.png (100%) rename {htdocs => public}/theme/common/flags/bf.png (100%) rename {htdocs => public}/theme/common/flags/bg.png (100%) rename {htdocs => public}/theme/common/flags/bh.png (100%) rename {htdocs => public}/theme/common/flags/bi.png (100%) rename {htdocs => public}/theme/common/flags/bj.png (100%) rename {htdocs => public}/theme/common/flags/bm.png (100%) rename {htdocs => public}/theme/common/flags/bn.png (100%) rename {htdocs => public}/theme/common/flags/bo.png (100%) rename {htdocs => public}/theme/common/flags/br.png (100%) rename {htdocs => public}/theme/common/flags/bs.png (100%) rename {htdocs => public}/theme/common/flags/bt.png (100%) rename {htdocs => public}/theme/common/flags/bv.png (100%) rename {htdocs => public}/theme/common/flags/bw.png (100%) rename {htdocs => public}/theme/common/flags/by.png (100%) rename {htdocs => public}/theme/common/flags/bz.png (100%) rename {htdocs => public}/theme/common/flags/ca.png (100%) rename {htdocs => public}/theme/common/flags/catalonia.png (100%) rename {htdocs => public}/theme/common/flags/cc.png (100%) rename {htdocs => public}/theme/common/flags/cd.png (100%) rename {htdocs => public}/theme/common/flags/cf.png (100%) rename {htdocs => public}/theme/common/flags/cg.png (100%) rename {htdocs => public}/theme/common/flags/ch.png (100%) rename {htdocs => public}/theme/common/flags/ci.png (100%) rename {htdocs => public}/theme/common/flags/ck.png (100%) rename {htdocs => public}/theme/common/flags/cl.png (100%) rename {htdocs => public}/theme/common/flags/cm.png (100%) rename {htdocs => public}/theme/common/flags/cn.png (100%) rename {htdocs => public}/theme/common/flags/co.png (100%) rename {htdocs => public}/theme/common/flags/cr.png (100%) rename {htdocs => public}/theme/common/flags/cs.png (100%) rename {htdocs => public}/theme/common/flags/cu.png (100%) rename {htdocs => public}/theme/common/flags/cv.png (100%) rename {htdocs => public}/theme/common/flags/cx.png (100%) rename {htdocs => public}/theme/common/flags/cy.png (100%) rename {htdocs => public}/theme/common/flags/cz.png (100%) rename {htdocs => public}/theme/common/flags/de.png (100%) rename {htdocs => public}/theme/common/flags/dj.png (100%) rename {htdocs => public}/theme/common/flags/dk.png (100%) rename {htdocs => public}/theme/common/flags/dm.png (100%) rename {htdocs => public}/theme/common/flags/do.png (100%) rename {htdocs => public}/theme/common/flags/dz.png (100%) rename {htdocs => public}/theme/common/flags/ec.png (100%) rename {htdocs => public}/theme/common/flags/ee.png (100%) rename {htdocs => public}/theme/common/flags/eg.png (100%) rename {htdocs => public}/theme/common/flags/eh.png (100%) rename {htdocs => public}/theme/common/flags/en.png (100%) rename {htdocs => public}/theme/common/flags/england.png (100%) rename {htdocs => public}/theme/common/flags/er.png (100%) rename {htdocs => public}/theme/common/flags/es.png (100%) rename {htdocs => public}/theme/common/flags/et.png (100%) rename {htdocs => public}/theme/common/flags/eu.png (100%) rename {htdocs => public}/theme/common/flags/fam.png (100%) rename {htdocs => public}/theme/common/flags/fi.png (100%) rename {htdocs => public}/theme/common/flags/fj.png (100%) rename {htdocs => public}/theme/common/flags/fk.png (100%) rename {htdocs => public}/theme/common/flags/fm.png (100%) rename {htdocs => public}/theme/common/flags/fo.png (100%) rename {htdocs => public}/theme/common/flags/fr.png (100%) rename {htdocs => public}/theme/common/flags/ga.png (100%) rename {htdocs => public}/theme/common/flags/gb.png (100%) rename {htdocs => public}/theme/common/flags/gd.png (100%) rename {htdocs => public}/theme/common/flags/ge.png (100%) rename {htdocs => public}/theme/common/flags/gf.png (100%) rename {htdocs => public}/theme/common/flags/gg.png (100%) rename {htdocs => public}/theme/common/flags/gh.png (100%) rename {htdocs => public}/theme/common/flags/gi.png (100%) rename {htdocs => public}/theme/common/flags/gl.png (100%) rename {htdocs => public}/theme/common/flags/gm.png (100%) rename {htdocs => public}/theme/common/flags/gn.png (100%) rename {htdocs => public}/theme/common/flags/gp.png (100%) rename {htdocs => public}/theme/common/flags/gq.png (100%) rename {htdocs => public}/theme/common/flags/gr.png (100%) rename {htdocs => public}/theme/common/flags/gs.png (100%) rename {htdocs => public}/theme/common/flags/gt.png (100%) rename {htdocs => public}/theme/common/flags/gu.png (100%) rename {htdocs => public}/theme/common/flags/gw.png (100%) rename {htdocs => public}/theme/common/flags/gy.png (100%) rename {htdocs => public}/theme/common/flags/hk.png (100%) rename {htdocs => public}/theme/common/flags/hm.png (100%) rename {htdocs => public}/theme/common/flags/hn.png (100%) rename {htdocs => public}/theme/common/flags/hr.png (100%) rename {htdocs => public}/theme/common/flags/ht.png (100%) rename {htdocs => public}/theme/common/flags/hu.png (100%) rename {htdocs => public}/theme/common/flags/id.png (100%) rename {htdocs => public}/theme/common/flags/ie.png (100%) rename {htdocs => public}/theme/common/flags/il.png (100%) rename {htdocs => public}/theme/common/flags/in.png (100%) rename {htdocs => public}/theme/common/flags/index.html (100%) rename {htdocs => public}/theme/common/flags/int.png (100%) rename {htdocs => public}/theme/common/flags/io.png (100%) rename {htdocs => public}/theme/common/flags/iq.png (100%) rename {htdocs => public}/theme/common/flags/ir.png (100%) rename {htdocs => public}/theme/common/flags/is.png (100%) rename {htdocs => public}/theme/common/flags/it.png (100%) rename {htdocs => public}/theme/common/flags/jm.png (100%) rename {htdocs => public}/theme/common/flags/jo.png (100%) rename {htdocs => public}/theme/common/flags/jp.png (100%) rename {htdocs => public}/theme/common/flags/ke.png (100%) rename {htdocs => public}/theme/common/flags/kg.png (100%) rename {htdocs => public}/theme/common/flags/kh.png (100%) rename {htdocs => public}/theme/common/flags/ki.png (100%) rename {htdocs => public}/theme/common/flags/km.png (100%) rename {htdocs => public}/theme/common/flags/kn.png (100%) rename {htdocs => public}/theme/common/flags/kp.png (100%) rename {htdocs => public}/theme/common/flags/kr.png (100%) rename {htdocs => public}/theme/common/flags/kw.png (100%) rename {htdocs => public}/theme/common/flags/ky.png (100%) rename {htdocs => public}/theme/common/flags/kz.png (100%) rename {htdocs => public}/theme/common/flags/la.png (100%) rename {htdocs => public}/theme/common/flags/lb.png (100%) rename {htdocs => public}/theme/common/flags/lc.png (100%) rename {htdocs => public}/theme/common/flags/li.png (100%) rename {htdocs => public}/theme/common/flags/lk.png (100%) rename {htdocs => public}/theme/common/flags/lr.png (100%) rename {htdocs => public}/theme/common/flags/ls.png (100%) rename {htdocs => public}/theme/common/flags/lt.png (100%) rename {htdocs => public}/theme/common/flags/lu.png (100%) rename {htdocs => public}/theme/common/flags/lv.png (100%) rename {htdocs => public}/theme/common/flags/ly.png (100%) rename {htdocs => public}/theme/common/flags/ma.png (100%) rename {htdocs => public}/theme/common/flags/mc.png (100%) rename {htdocs => public}/theme/common/flags/md.png (100%) rename {htdocs => public}/theme/common/flags/me.png (100%) rename {htdocs => public}/theme/common/flags/mg.png (100%) rename {htdocs => public}/theme/common/flags/mh.png (100%) rename {htdocs => public}/theme/common/flags/mk.png (100%) rename {htdocs => public}/theme/common/flags/ml.png (100%) rename {htdocs => public}/theme/common/flags/mm.png (100%) rename {htdocs => public}/theme/common/flags/mn.png (100%) rename {htdocs => public}/theme/common/flags/mo.png (100%) rename {htdocs => public}/theme/common/flags/mp.png (100%) rename {htdocs => public}/theme/common/flags/mq.png (100%) rename {htdocs => public}/theme/common/flags/mr.png (100%) rename {htdocs => public}/theme/common/flags/ms.png (100%) rename {htdocs => public}/theme/common/flags/mt.png (100%) rename {htdocs => public}/theme/common/flags/mu.png (100%) rename {htdocs => public}/theme/common/flags/mv.png (100%) rename {htdocs => public}/theme/common/flags/mw.png (100%) rename {htdocs => public}/theme/common/flags/mx.png (100%) rename {htdocs => public}/theme/common/flags/my.png (100%) rename {htdocs => public}/theme/common/flags/mz.png (100%) rename {htdocs => public}/theme/common/flags/na.png (100%) rename {htdocs => public}/theme/common/flags/nc.png (100%) rename {htdocs => public}/theme/common/flags/ne.png (100%) rename {htdocs => public}/theme/common/flags/nf.png (100%) rename {htdocs => public}/theme/common/flags/ng.png (100%) rename {htdocs => public}/theme/common/flags/ni.png (100%) rename {htdocs => public}/theme/common/flags/nl.png (100%) rename {htdocs => public}/theme/common/flags/no.png (100%) rename {htdocs => public}/theme/common/flags/np.png (100%) rename {htdocs => public}/theme/common/flags/nr.png (100%) rename {htdocs => public}/theme/common/flags/nu.png (100%) rename {htdocs => public}/theme/common/flags/nz.png (100%) rename {htdocs => public}/theme/common/flags/om.png (100%) rename {htdocs => public}/theme/common/flags/pa.png (100%) rename {htdocs => public}/theme/common/flags/pe.png (100%) rename {htdocs => public}/theme/common/flags/pf.png (100%) rename {htdocs => public}/theme/common/flags/pg.png (100%) rename {htdocs => public}/theme/common/flags/ph.png (100%) rename {htdocs => public}/theme/common/flags/pk.png (100%) rename {htdocs => public}/theme/common/flags/pl.png (100%) rename {htdocs => public}/theme/common/flags/pm.png (100%) rename {htdocs => public}/theme/common/flags/pn.png (100%) rename {htdocs => public}/theme/common/flags/pr.png (100%) rename {htdocs => public}/theme/common/flags/ps.png (100%) rename {htdocs => public}/theme/common/flags/pt.png (100%) rename {htdocs => public}/theme/common/flags/pw.png (100%) rename {htdocs => public}/theme/common/flags/py.png (100%) rename {htdocs => public}/theme/common/flags/qa.png (100%) rename {htdocs => public}/theme/common/flags/re.png (100%) rename {htdocs => public}/theme/common/flags/ro.png (100%) rename {htdocs => public}/theme/common/flags/rs.png (100%) rename {htdocs => public}/theme/common/flags/ru.png (100%) rename {htdocs => public}/theme/common/flags/rw.png (100%) rename {htdocs => public}/theme/common/flags/sa.png (100%) rename {htdocs => public}/theme/common/flags/sb.png (100%) rename {htdocs => public}/theme/common/flags/sc.png (100%) rename {htdocs => public}/theme/common/flags/scotland.png (100%) rename {htdocs => public}/theme/common/flags/sd.png (100%) rename {htdocs => public}/theme/common/flags/se.png (100%) rename {htdocs => public}/theme/common/flags/sg.png (100%) rename {htdocs => public}/theme/common/flags/sh.png (100%) rename {htdocs => public}/theme/common/flags/si.png (100%) rename {htdocs => public}/theme/common/flags/sj.png (100%) rename {htdocs => public}/theme/common/flags/sk.png (100%) rename {htdocs => public}/theme/common/flags/sl.png (100%) rename {htdocs => public}/theme/common/flags/sm.png (100%) rename {htdocs => public}/theme/common/flags/sn.png (100%) rename {htdocs => public}/theme/common/flags/so.png (100%) rename {htdocs => public}/theme/common/flags/sr.png (100%) rename {htdocs => public}/theme/common/flags/st.png (100%) rename {htdocs => public}/theme/common/flags/sv.png (100%) rename {htdocs => public}/theme/common/flags/sy.png (100%) rename {htdocs => public}/theme/common/flags/sz.png (100%) rename {htdocs => public}/theme/common/flags/tc.png (100%) rename {htdocs => public}/theme/common/flags/td.png (100%) rename {htdocs => public}/theme/common/flags/tf.png (100%) rename {htdocs => public}/theme/common/flags/tg.png (100%) rename {htdocs => public}/theme/common/flags/th.png (100%) rename {htdocs => public}/theme/common/flags/tj.png (100%) rename {htdocs => public}/theme/common/flags/tk.png (100%) rename {htdocs => public}/theme/common/flags/tl.png (100%) rename {htdocs => public}/theme/common/flags/tm.png (100%) rename {htdocs => public}/theme/common/flags/tn.png (100%) rename {htdocs => public}/theme/common/flags/to.png (100%) rename {htdocs => public}/theme/common/flags/tr.png (100%) rename {htdocs => public}/theme/common/flags/trans.png (100%) rename {htdocs => public}/theme/common/flags/tt.png (100%) rename {htdocs => public}/theme/common/flags/tv.png (100%) rename {htdocs => public}/theme/common/flags/tw.png (100%) rename {htdocs => public}/theme/common/flags/tz.png (100%) rename {htdocs => public}/theme/common/flags/ua.png (100%) rename {htdocs => public}/theme/common/flags/ug.png (100%) rename {htdocs => public}/theme/common/flags/uk.png (100%) rename {htdocs => public}/theme/common/flags/um.png (100%) rename {htdocs => public}/theme/common/flags/us.png (100%) rename {htdocs => public}/theme/common/flags/uy.png (100%) rename {htdocs => public}/theme/common/flags/uz.png (100%) rename {htdocs => public}/theme/common/flags/va.png (100%) rename {htdocs => public}/theme/common/flags/vc.png (100%) rename {htdocs => public}/theme/common/flags/ve.png (100%) rename {htdocs => public}/theme/common/flags/vg.png (100%) rename {htdocs => public}/theme/common/flags/vi.png (100%) rename {htdocs => public}/theme/common/flags/vn.png (100%) rename {htdocs => public}/theme/common/flags/vu.png (100%) rename {htdocs => public}/theme/common/flags/wales.png (100%) rename {htdocs => public}/theme/common/flags/wf.png (100%) rename {htdocs => public}/theme/common/flags/ws.png (100%) rename {htdocs => public}/theme/common/flags/ye.png (100%) rename {htdocs => public}/theme/common/flags/yt.png (100%) rename {htdocs => public}/theme/common/flags/za.png (100%) rename {htdocs => public}/theme/common/flags/zm.png (100%) rename {htdocs => public}/theme/common/flags/zw.png (100%) rename {htdocs => public}/theme/common/folder-new.png (100%) rename {htdocs => public}/theme/common/gmap.png (100%) rename {htdocs => public}/theme/common/help.png (100%) rename {htdocs => public}/theme/common/ical.gif (100%) rename {htdocs => public}/theme/common/index.html (100%) rename {htdocs => public}/theme/common/information.png (100%) rename {htdocs => public}/theme/common/logo_cerfa.png (100%) rename {htdocs => public}/theme/common/mime/archive.png (100%) rename {htdocs => public}/theme/common/mime/audio.png (100%) rename {htdocs => public}/theme/common/mime/css.png (100%) rename {htdocs => public}/theme/common/mime/doc.png (100%) rename {htdocs => public}/theme/common/mime/dotnet.png (100%) rename {htdocs => public}/theme/common/mime/encrypt.png (100%) rename {htdocs => public}/theme/common/mime/error.png (100%) rename {htdocs => public}/theme/common/mime/flash.png (100%) rename {htdocs => public}/theme/common/mime/glasses.png (100%) rename {htdocs => public}/theme/common/mime/html.png (100%) rename {htdocs => public}/theme/common/mime/image.png (100%) rename {htdocs => public}/theme/common/mime/index.html (100%) rename {htdocs => public}/theme/common/mime/jnlp.png (100%) rename {htdocs => public}/theme/common/mime/jscript.png (100%) rename {htdocs => public}/theme/common/mime/library.png (100%) rename {htdocs => public}/theme/common/mime/lit.png (100%) rename {htdocs => public}/theme/common/mime/mdb.png (100%) rename {htdocs => public}/theme/common/mime/notavailable.png (100%) rename {htdocs => public}/theme/common/mime/ooffice.png (100%) rename {htdocs => public}/theme/common/mime/other.png (100%) rename {htdocs => public}/theme/common/mime/page.png (100%) rename {htdocs => public}/theme/common/mime/pdf.png (100%) rename {htdocs => public}/theme/common/mime/php.png (100%) rename {htdocs => public}/theme/common/mime/pl.png (100%) rename {htdocs => public}/theme/common/mime/ppt.png (100%) rename {htdocs => public}/theme/common/mime/readme.txt (100%) rename {htdocs => public}/theme/common/mime/rss.png (100%) rename {htdocs => public}/theme/common/mime/script.png (100%) rename {htdocs => public}/theme/common/mime/svg.png (100%) rename {htdocs => public}/theme/common/mime/text.png (100%) rename {htdocs => public}/theme/common/mime/ttf.png (100%) rename {htdocs => public}/theme/common/mime/unknown.png (100%) rename {htdocs => public}/theme/common/mime/video.png (100%) rename {htdocs => public}/theme/common/mime/xls.png (100%) rename {htdocs => public}/theme/common/paypal.png (100%) rename {htdocs => public}/theme/common/redstar.png (100%) rename {htdocs => public}/theme/common/rss.gif (100%) rename {htdocs => public}/theme/common/skype_callbutton.png (100%) rename {htdocs => public}/theme/common/skype_chatbutton.png (100%) rename {htdocs => public}/theme/common/star.png (100%) rename {htdocs => public}/theme/common/transform-crop-and-resize.png (100%) rename {htdocs => public}/theme/common/transparent.png (100%) rename {htdocs => public}/theme/common/treemenu/base.gif (100%) rename {htdocs => public}/theme/common/treemenu/branch.gif (100%) rename {htdocs => public}/theme/common/treemenu/branchbottom.gif (100%) rename {htdocs => public}/theme/common/treemenu/branchtop.gif (100%) rename {htdocs => public}/theme/common/treemenu/folder-expanded.gif (100%) rename {htdocs => public}/theme/common/treemenu/folder.gif (100%) rename {htdocs => public}/theme/common/treemenu/folder2-expanded.png (100%) rename {htdocs => public}/theme/common/treemenu/folder2.png (100%) rename {htdocs => public}/theme/common/treemenu/imgfolder.gif (100%) rename {htdocs => public}/theme/common/treemenu/index.html (100%) rename {htdocs => public}/theme/common/treemenu/line.gif (100%) rename {htdocs => public}/theme/common/treemenu/linebottom.gif (100%) rename {htdocs => public}/theme/common/treemenu/minus.gif (100%) rename {htdocs => public}/theme/common/treemenu/minusbottom.gif (100%) rename {htdocs => public}/theme/common/treemenu/minustop.gif (100%) rename {htdocs => public}/theme/common/treemenu/minustop2.gif (100%) rename {htdocs => public}/theme/common/treemenu/minustop3.gif (100%) rename {htdocs => public}/theme/common/treemenu/page.gif (100%) rename {htdocs => public}/theme/common/treemenu/plus.gif (100%) rename {htdocs => public}/theme/common/treemenu/plusbottom.gif (100%) rename {htdocs => public}/theme/common/treemenu/plustop.gif (100%) rename {htdocs => public}/theme/common/treemenu/plustop2.gif (100%) rename {htdocs => public}/theme/common/treemenu/plustop3.gif (100%) rename {htdocs => public}/theme/common/treemenu/trash.gif (100%) rename {htdocs => public}/theme/common/vcal.gif (100%) rename {htdocs => public}/theme/common/view-refresh.png (100%) rename {htdocs => public}/theme/dolibarr.png (100%) rename {htdocs => public}/theme/dolibarr_logo.png (100%) rename {htdocs => public}/theme/dolibarr_preferred_partner_int.png (100%) rename {htdocs => public}/theme/doliforge_logo.png (100%) rename {htdocs => public}/theme/dolistore_logo.png (100%) rename {htdocs => public}/theme/eldy/.gitignore (100%) rename {htdocs => public}/theme/eldy/AUTHOR (100%) rename {htdocs => public}/theme/eldy/ckeditor/config.js (100%) rename {htdocs => public}/theme/eldy/ckeditor/index.html (100%) rename {htdocs => public}/theme/eldy/graph-color.php (100%) rename {htdocs => public}/theme/eldy/img/1downarrow.png (100%) rename {htdocs => public}/theme/eldy/img/1downarrow_selected.png (100%) rename {htdocs => public}/theme/eldy/img/1leftarrow.png (100%) rename {htdocs => public}/theme/eldy/img/1leftarrow_selected.png (100%) rename {htdocs => public}/theme/eldy/img/1rightarrow.png (100%) rename {htdocs => public}/theme/eldy/img/1rightarrow_selected.png (100%) rename {htdocs => public}/theme/eldy/img/1uparrow.png (100%) rename {htdocs => public}/theme/eldy/img/1uparrow_selected.png (100%) rename {htdocs => public}/theme/eldy/img/addfile.png (100%) rename {htdocs => public}/theme/eldy/img/background.png (100%) rename {htdocs => public}/theme/eldy/img/bg-bas-rubrique.png (100%) rename {htdocs => public}/theme/eldy/img/bg-rubrique.png (100%) rename {htdocs => public}/theme/eldy/img/bg-titre-rubrique.png (100%) rename {htdocs => public}/theme/eldy/img/button_bg.png (100%) rename {htdocs => public}/theme/eldy/img/button_edit.png (100%) rename {htdocs => public}/theme/eldy/img/calc.png (100%) rename {htdocs => public}/theme/eldy/img/calendar.png (100%) rename {htdocs => public}/theme/eldy/img/call.png (100%) rename {htdocs => public}/theme/eldy/img/call_out.png (100%) rename {htdocs => public}/theme/eldy/img/close.png (100%) rename {htdocs => public}/theme/eldy/img/close_title.png (100%) rename {htdocs => public}/theme/eldy/img/credit_card.png (100%) rename {htdocs => public}/theme/eldy/img/delete.png (100%) rename {htdocs => public}/theme/eldy/img/detail.png (100%) rename {htdocs => public}/theme/eldy/img/disable.png (100%) rename {htdocs => public}/theme/eldy/img/edit.png (100%) rename {htdocs => public}/theme/eldy/img/edit_add.png (100%) rename {htdocs => public}/theme/eldy/img/edit_remove.png (100%) rename {htdocs => public}/theme/eldy/img/editdelete.png (100%) rename {htdocs => public}/theme/eldy/img/error.png (100%) rename {htdocs => public}/theme/eldy/img/external.png (100%) rename {htdocs => public}/theme/eldy/img/favicon.ico (100%) rename {htdocs => public}/theme/eldy/img/file.png (100%) rename {htdocs => public}/theme/eldy/img/filenew.png (100%) rename {htdocs => public}/theme/eldy/img/filter.png (100%) rename {htdocs => public}/theme/eldy/img/folder-open.png (100%) rename {htdocs => public}/theme/eldy/img/folder.png (100%) rename {htdocs => public}/theme/eldy/img/gradient.gif (100%) rename {htdocs => public}/theme/eldy/img/grip.png (100%) rename {htdocs => public}/theme/eldy/img/grip_title.png (100%) rename {htdocs => public}/theme/eldy/img/headbg.jpg (100%) rename {htdocs => public}/theme/eldy/img/headbg2.jpg (100%) rename {htdocs => public}/theme/eldy/img/help.png (100%) rename {htdocs => public}/theme/eldy/img/helpdoc.png (100%) rename {htdocs => public}/theme/eldy/img/helpdoc_top.png (100%) rename {htdocs => public}/theme/eldy/img/high.png (100%) rename {htdocs => public}/theme/eldy/img/history.png (100%) rename {htdocs => public}/theme/eldy/img/index.html (100%) rename {htdocs => public}/theme/eldy/img/info.png (100%) rename {htdocs => public}/theme/eldy/img/info_black.png (100%) rename {htdocs => public}/theme/eldy/img/list.png (100%) rename {htdocs => public}/theme/eldy/img/liste_titre.png (100%) rename {htdocs => public}/theme/eldy/img/liste_titre2.png (100%) rename {htdocs => public}/theme/eldy/img/listlight.png (100%) rename {htdocs => public}/theme/eldy/img/lock.png (100%) rename {htdocs => public}/theme/eldy/img/login_background.png (100%) rename {htdocs => public}/theme/eldy/img/logo_setup.svg (100%) rename {htdocs => public}/theme/eldy/img/logout.png (100%) rename {htdocs => public}/theme/eldy/img/logout_top.png (100%) rename {htdocs => public}/theme/eldy/img/menus/README.md (100%) rename {htdocs => public}/theme/eldy/img/menus/agenda.png (100%) rename {htdocs => public}/theme/eldy/img/menus/agenda_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/bank.png (100%) rename {htdocs => public}/theme/eldy/img/menus/bank_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/chart.png (100%) rename {htdocs => public}/theme/eldy/img/menus/commercial.png (100%) rename {htdocs => public}/theme/eldy/img/menus/commercial_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/company.png (100%) rename {htdocs => public}/theme/eldy/img/menus/company_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/ecm.png (100%) rename {htdocs => public}/theme/eldy/img/menus/ecm_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/externalsite.png (100%) rename {htdocs => public}/theme/eldy/img/menus/externalsite_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/ftp.png (100%) rename {htdocs => public}/theme/eldy/img/menus/ftp_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/generic1.png (100%) rename {htdocs => public}/theme/eldy/img/menus/generic1_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/generic2.png (100%) rename {htdocs => public}/theme/eldy/img/menus/generic2_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/generic3.png (100%) rename {htdocs => public}/theme/eldy/img/menus/generic3_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/generic4.png (100%) rename {htdocs => public}/theme/eldy/img/menus/generic4_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/globe.png (100%) rename {htdocs => public}/theme/eldy/img/menus/globe_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/holiday.png (100%) rename {htdocs => public}/theme/eldy/img/menus/home.png (100%) rename {htdocs => public}/theme/eldy/img/menus/home_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/index.html (100%) rename {htdocs => public}/theme/eldy/img/menus/mail.png (100%) rename {htdocs => public}/theme/eldy/img/menus/mail_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/members.png (100%) rename {htdocs => public}/theme/eldy/img/menus/members_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/menu.png (100%) rename {htdocs => public}/theme/eldy/img/menus/money.png (100%) rename {htdocs => public}/theme/eldy/img/menus/money_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/pointofsale.png (100%) rename {htdocs => public}/theme/eldy/img/menus/pointofsale_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/products.png (100%) rename {htdocs => public}/theme/eldy/img/menus/products_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/project.png (100%) rename {htdocs => public}/theme/eldy/img/menus/project_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/shop.png (100%) rename {htdocs => public}/theme/eldy/img/menus/shop_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus/tools.png (100%) rename {htdocs => public}/theme/eldy/img/menus/tools_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/agenda.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/agenda_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/bank.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/bank_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/commercial.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/commercial_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/company.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/company_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/ecm.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/ecm_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/externalsite.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/externalsite_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/ftp.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/ftp_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/generic1.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/generic1_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/generic2.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/generic2_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/generic3.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/generic3_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/generic4.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/generic4_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/globe.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/globe_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/holiday.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/home.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/home_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/mail.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/mail_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/members.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/members_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/menu.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/money.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/money_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/pointofsale.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/pointofsale_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/products.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/products_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/project.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/project_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/shop.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/shop_over.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/tools.png (100%) rename {htdocs => public}/theme/eldy/img/menus_black/tools_over.png (100%) rename {htdocs => public}/theme/eldy/img/menutab-r.png (100%) rename {htdocs => public}/theme/eldy/img/nav-overlay.png (100%) rename {htdocs => public}/theme/eldy/img/nav-overlay3.png (100%) rename {htdocs => public}/theme/eldy/img/next.png (100%) rename {htdocs => public}/theme/eldy/img/nographyet.svg (100%) rename {htdocs => public}/theme/eldy/img/object_account.png (100%) rename {htdocs => public}/theme/eldy/img/object_accounting.png (100%) rename {htdocs => public}/theme/eldy/img/object_action.png (100%) rename {htdocs => public}/theme/eldy/img/object_address.png (100%) rename {htdocs => public}/theme/eldy/img/object_barcode.png (100%) rename {htdocs => public}/theme/eldy/img/object_bill.png (100%) rename {htdocs => public}/theme/eldy/img/object_billa.png (100%) rename {htdocs => public}/theme/eldy/img/object_billd.png (100%) rename {htdocs => public}/theme/eldy/img/object_billr.png (100%) rename {htdocs => public}/theme/eldy/img/object_book.png (100%) rename {htdocs => public}/theme/eldy/img/object_bookmark.png (100%) rename {htdocs => public}/theme/eldy/img/object_building.png (100%) rename {htdocs => public}/theme/eldy/img/object_calendar.png (100%) rename {htdocs => public}/theme/eldy/img/object_calendarday.png (100%) rename {htdocs => public}/theme/eldy/img/object_calendargantt.png (100%) rename {htdocs => public}/theme/eldy/img/object_calendarpertype.png (100%) rename {htdocs => public}/theme/eldy/img/object_calendarperuser.png (100%) rename {htdocs => public}/theme/eldy/img/object_calendarweek.png (100%) rename {htdocs => public}/theme/eldy/img/object_category-expanded.png (100%) rename {htdocs => public}/theme/eldy/img/object_category.png (100%) rename {htdocs => public}/theme/eldy/img/object_commercial.png (100%) rename {htdocs => public}/theme/eldy/img/object_company.png (100%) rename {htdocs => public}/theme/eldy/img/object_contact.png (100%) rename {htdocs => public}/theme/eldy/img/object_contract.png (100%) rename {htdocs => public}/theme/eldy/img/object_cron.png (100%) rename {htdocs => public}/theme/eldy/img/object_dir.png (100%) rename {htdocs => public}/theme/eldy/img/object_email.png (100%) rename {htdocs => public}/theme/eldy/img/object_energy.png (100%) rename {htdocs => public}/theme/eldy/img/object_generic.png (100%) rename {htdocs => public}/theme/eldy/img/object_globe.png (100%) rename {htdocs => public}/theme/eldy/img/object_gravatar.png (100%) rename {htdocs => public}/theme/eldy/img/object_group.png (100%) rename {htdocs => public}/theme/eldy/img/object_holiday.png (100%) rename {htdocs => public}/theme/eldy/img/object_intervention.png (100%) rename {htdocs => public}/theme/eldy/img/object_invoice.png (100%) rename {htdocs => public}/theme/eldy/img/object_label.png (100%) rename {htdocs => public}/theme/eldy/img/object_list.png (100%) rename {htdocs => public}/theme/eldy/img/object_margin.png (100%) rename {htdocs => public}/theme/eldy/img/object_multicurrency.png (100%) rename {htdocs => public}/theme/eldy/img/object_opensurvey.png (100%) rename {htdocs => public}/theme/eldy/img/object_order.png (100%) rename {htdocs => public}/theme/eldy/img/object_payment.png (100%) rename {htdocs => public}/theme/eldy/img/object_phoning.png (100%) rename {htdocs => public}/theme/eldy/img/object_phoning_fax.png (100%) rename {htdocs => public}/theme/eldy/img/object_printer.png (100%) rename {htdocs => public}/theme/eldy/img/object_product.png (100%) rename {htdocs => public}/theme/eldy/img/object_project.png (100%) rename {htdocs => public}/theme/eldy/img/object_projectpub.png (100%) rename {htdocs => public}/theme/eldy/img/object_projecttask.png (100%) rename {htdocs => public}/theme/eldy/img/object_propal.png (100%) rename {htdocs => public}/theme/eldy/img/object_reduc.png (100%) rename {htdocs => public}/theme/eldy/img/object_resource.png (100%) rename {htdocs => public}/theme/eldy/img/object_rss.png (100%) rename {htdocs => public}/theme/eldy/img/object_sending.png (100%) rename {htdocs => public}/theme/eldy/img/object_service.png (100%) rename {htdocs => public}/theme/eldy/img/object_skype.png (100%) rename {htdocs => public}/theme/eldy/img/object_stock.png (100%) rename {htdocs => public}/theme/eldy/img/object_supplier_proposal.png (100%) rename {htdocs => public}/theme/eldy/img/object_task.png (100%) rename {htdocs => public}/theme/eldy/img/object_task_time.png (100%) rename {htdocs => public}/theme/eldy/img/object_tax.png (100%) rename {htdocs => public}/theme/eldy/img/object_technic.png (100%) rename {htdocs => public}/theme/eldy/img/object_trip.png (100%) rename {htdocs => public}/theme/eldy/img/object_user.png (100%) rename {htdocs => public}/theme/eldy/img/off.png (100%) rename {htdocs => public}/theme/eldy/img/on.png (100%) rename {htdocs => public}/theme/eldy/img/pdf2.png (100%) rename {htdocs => public}/theme/eldy/img/pdf3.png (100%) rename {htdocs => public}/theme/eldy/img/play.png (100%) rename {htdocs => public}/theme/eldy/img/playdisabled.png (100%) rename {htdocs => public}/theme/eldy/img/preview.png (100%) rename {htdocs => public}/theme/eldy/img/preview_ext.png (100%) rename {htdocs => public}/theme/eldy/img/previous.png (100%) rename {htdocs => public}/theme/eldy/img/printer.png (100%) rename {htdocs => public}/theme/eldy/img/printer_top.png (100%) rename {htdocs => public}/theme/eldy/img/puce.png (100%) rename {htdocs => public}/theme/eldy/img/recent.png (100%) rename {htdocs => public}/theme/eldy/img/redstar.png (100%) rename {htdocs => public}/theme/eldy/img/refresh.png (100%) rename {htdocs => public}/theme/eldy/img/reload.png (100%) rename {htdocs => public}/theme/eldy/img/rightarrow.png (100%) rename {htdocs => public}/theme/eldy/img/search.png (100%) rename {htdocs => public}/theme/eldy/img/searchclear.png (100%) rename {htdocs => public}/theme/eldy/img/setup.png (100%) rename {htdocs => public}/theme/eldy/img/sort_asc.png (100%) rename {htdocs => public}/theme/eldy/img/sort_asc_disabled.png (100%) rename {htdocs => public}/theme/eldy/img/sort_desc.png (100%) rename {htdocs => public}/theme/eldy/img/sort_desc_disabled.png (100%) rename {htdocs => public}/theme/eldy/img/split.png (100%) rename {htdocs => public}/theme/eldy/img/star.png (100%) rename {htdocs => public}/theme/eldy/img/stats.png (100%) rename {htdocs => public}/theme/eldy/img/statut0.png (100%) rename {htdocs => public}/theme/eldy/img/statut0_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/statut1.png (100%) rename {htdocs => public}/theme/eldy/img/statut1_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/statut3.png (100%) rename {htdocs => public}/theme/eldy/img/statut3_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/statut4.png (100%) rename {htdocs => public}/theme/eldy/img/statut4_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/statut5.png (100%) rename {htdocs => public}/theme/eldy/img/statut5_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/statut6.png (100%) rename {htdocs => public}/theme/eldy/img/statut6_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/statut7.png (100%) rename {htdocs => public}/theme/eldy/img/statut7_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/statut8.png (100%) rename {htdocs => public}/theme/eldy/img/statut8_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/statut9.png (100%) rename {htdocs => public}/theme/eldy/img/statut9_40x40.png (100%) rename {htdocs => public}/theme/eldy/img/stcomm-1.png (100%) rename {htdocs => public}/theme/eldy/img/stcomm0.png (100%) rename {htdocs => public}/theme/eldy/img/stcomm1.png (100%) rename {htdocs => public}/theme/eldy/img/stcomm2.png (100%) rename {htdocs => public}/theme/eldy/img/stcomm3.png (100%) rename {htdocs => public}/theme/eldy/img/stcomm4.png (100%) rename {htdocs => public}/theme/eldy/img/switch_off.png (100%) rename {htdocs => public}/theme/eldy/img/switch_on.png (100%) rename {htdocs => public}/theme/eldy/img/tab_background.png (100%) rename {htdocs => public}/theme/eldy/img/tick.png (100%) rename {htdocs => public}/theme/eldy/img/title.gif (100%) rename {htdocs => public}/theme/eldy/img/title.png (100%) rename {htdocs => public}/theme/eldy/img/title_accountancy.png (100%) rename {htdocs => public}/theme/eldy/img/title_agenda.png (100%) rename {htdocs => public}/theme/eldy/img/title_bank.png (100%) rename {htdocs => public}/theme/eldy/img/title_commercial.png (100%) rename {htdocs => public}/theme/eldy/img/title_companies.png (100%) rename {htdocs => public}/theme/eldy/img/title_generic.png (100%) rename {htdocs => public}/theme/eldy/img/title_home.png (100%) rename {htdocs => public}/theme/eldy/img/title_hrm.png (100%) rename {htdocs => public}/theme/eldy/img/title_products.png (100%) rename {htdocs => public}/theme/eldy/img/title_project.png (100%) rename {htdocs => public}/theme/eldy/img/title_setup.png (100%) rename {htdocs => public}/theme/eldy/img/tmenu.jpg (100%) rename {htdocs => public}/theme/eldy/img/tmenu2.jpg (100%) rename {htdocs => public}/theme/eldy/img/tmenu3.jpg (100%) rename {htdocs => public}/theme/eldy/img/tmenu_inverse.jpg (100%) rename {htdocs => public}/theme/eldy/img/unlock.png (100%) rename {htdocs => public}/theme/eldy/img/uparrow.png (100%) rename {htdocs => public}/theme/eldy/img/upload.png (100%) rename {htdocs => public}/theme/eldy/img/vcard.png (100%) rename {htdocs => public}/theme/eldy/img/view.png (100%) rename {htdocs => public}/theme/eldy/img/warning.png (100%) rename {htdocs => public}/theme/eldy/img/weather/index.html (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-clear-night.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-clear.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-clouds-night.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-clouds.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-few-clouds-night.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-few-clouds.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-freezing-rain.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-hail.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-many-clouds.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-mist.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-showers-day.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-showers-night.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-showers-scattered-day.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-showers-scattered-night.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-showers-scattered.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-showers.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-snow-rain.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-snow-scattered-day.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-snow-scattered-night.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-snow-scattered.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-snow.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-storm-day.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-storm-night.png (100%) rename {htdocs => public}/theme/eldy/img/weather/weather-storm.png (100%) rename {htdocs => public}/theme/eldy/img/working.gif (100%) rename {htdocs => public}/theme/eldy/img/working2.gif (100%) rename {htdocs => public}/theme/eldy/index.html (100%) rename {htdocs => public}/theme/eldy/style.css.php (100%) rename {htdocs => public}/theme/eldy/thumb.png (100%) rename {htdocs => public}/theme/eldy/tpl/README (100%) rename {htdocs => public}/theme/eldy/tpl/index.html (100%) rename {htdocs => public}/theme/index.html (100%) rename {htdocs => public}/theme/login_background.png (100%) rename {htdocs => public}/theme/login_logo.png (100%) rename {htdocs => public}/theme/md/.gitignore (100%) rename {htdocs => public}/theme/md/AUTHOR (100%) rename {htdocs => public}/theme/md/ckeditor/config.js (100%) rename {htdocs => public}/theme/md/ckeditor/index.html (100%) rename {htdocs => public}/theme/md/graph-color.php (100%) rename {htdocs => public}/theme/md/img/1downarrow.png (100%) rename {htdocs => public}/theme/md/img/1downarrow_selected.png (100%) rename {htdocs => public}/theme/md/img/1leftarrow.png (100%) rename {htdocs => public}/theme/md/img/1leftarrow_selected.png (100%) rename {htdocs => public}/theme/md/img/1rightarrow.png (100%) rename {htdocs => public}/theme/md/img/1rightarrow_selected.png (100%) rename {htdocs => public}/theme/md/img/1uparrow.png (100%) rename {htdocs => public}/theme/md/img/1uparrow_selected.png (100%) rename {htdocs => public}/theme/md/img/addfile.png (100%) rename {htdocs => public}/theme/md/img/background.png (100%) rename {htdocs => public}/theme/md/img/bg-bas-rubrique.png (100%) rename {htdocs => public}/theme/md/img/bg-rubrique.png (100%) rename {htdocs => public}/theme/md/img/bg-titre-rubrique.png (100%) rename {htdocs => public}/theme/md/img/button_bg.png (100%) rename {htdocs => public}/theme/md/img/button_edit.png (100%) rename {htdocs => public}/theme/md/img/calc.png (100%) rename {htdocs => public}/theme/md/img/calendar.png (100%) rename {htdocs => public}/theme/md/img/call.png (100%) rename {htdocs => public}/theme/md/img/call_out.png (100%) rename {htdocs => public}/theme/md/img/close.png (100%) rename {htdocs => public}/theme/md/img/close_title.png (100%) rename {htdocs => public}/theme/md/img/credit_card.png (100%) rename {htdocs => public}/theme/md/img/delete.png (100%) rename {htdocs => public}/theme/md/img/detail.png (100%) rename {htdocs => public}/theme/md/img/disable.png (100%) rename {htdocs => public}/theme/md/img/edit.png (100%) rename {htdocs => public}/theme/md/img/edit_add.png (100%) rename {htdocs => public}/theme/md/img/edit_remove.png (100%) rename {htdocs => public}/theme/md/img/editdelete.png (100%) rename {htdocs => public}/theme/md/img/error.png (100%) rename {htdocs => public}/theme/md/img/external.png (100%) rename {htdocs => public}/theme/md/img/favicon.ico (100%) rename {htdocs => public}/theme/md/img/file.png (100%) rename {htdocs => public}/theme/md/img/filenew.png (100%) rename {htdocs => public}/theme/md/img/filter.png (100%) rename {htdocs => public}/theme/md/img/folder-open.png (100%) rename {htdocs => public}/theme/md/img/folder.png (100%) rename {htdocs => public}/theme/md/img/gradient.gif (100%) rename {htdocs => public}/theme/md/img/grip.png (100%) rename {htdocs => public}/theme/md/img/grip_title.png (100%) rename {htdocs => public}/theme/md/img/headbg.jpg (100%) rename {htdocs => public}/theme/md/img/headbg2.jpg (100%) rename {htdocs => public}/theme/md/img/help.png (100%) rename {htdocs => public}/theme/md/img/helpdoc.png (100%) rename {htdocs => public}/theme/md/img/helpdoc_top.png (100%) rename {htdocs => public}/theme/md/img/high.png (100%) rename {htdocs => public}/theme/md/img/history.png (100%) rename {htdocs => public}/theme/md/img/index.html (100%) rename {htdocs => public}/theme/md/img/info.png (100%) rename {htdocs => public}/theme/md/img/info_black.png (100%) rename {htdocs => public}/theme/md/img/list.png (100%) rename {htdocs => public}/theme/md/img/liste_titre.png (100%) rename {htdocs => public}/theme/md/img/liste_titre2.png (100%) rename {htdocs => public}/theme/md/img/listlight.png (100%) rename {htdocs => public}/theme/md/img/lock.png (100%) rename {htdocs => public}/theme/md/img/login_background.png (100%) rename {htdocs => public}/theme/md/img/logo_setup.svg (100%) rename {htdocs => public}/theme/md/img/logout.png (100%) rename {htdocs => public}/theme/md/img/logout_top.png (100%) rename {htdocs => public}/theme/md/img/menu.png (100%) rename {htdocs => public}/theme/md/img/menus/agenda.png (100%) rename {htdocs => public}/theme/md/img/menus/bank.png (100%) rename {htdocs => public}/theme/md/img/menus/cart.png (100%) rename {htdocs => public}/theme/md/img/menus/chart.png (100%) rename {htdocs => public}/theme/md/img/menus/commercial.png (100%) rename {htdocs => public}/theme/md/img/menus/company.png (100%) rename {htdocs => public}/theme/md/img/menus/ecm.png (100%) rename {htdocs => public}/theme/md/img/menus/externalsite.png (100%) rename {htdocs => public}/theme/md/img/menus/ftp.png (100%) rename {htdocs => public}/theme/md/img/menus/generic1.png (100%) rename {htdocs => public}/theme/md/img/menus/generic2.png (100%) rename {htdocs => public}/theme/md/img/menus/generic3.png (100%) rename {htdocs => public}/theme/md/img/menus/generic4.png (100%) rename {htdocs => public}/theme/md/img/menus/globe.png (100%) rename {htdocs => public}/theme/md/img/menus/graph.png (100%) rename {htdocs => public}/theme/md/img/menus/holiday.png (100%) rename {htdocs => public}/theme/md/img/menus/home.png (100%) rename {htdocs => public}/theme/md/img/menus/index.html (100%) rename {htdocs => public}/theme/md/img/menus/mail.png (100%) rename {htdocs => public}/theme/md/img/menus/members.png (100%) rename {htdocs => public}/theme/md/img/menus/menu.png (100%) rename {htdocs => public}/theme/md/img/menus/money.png (100%) rename {htdocs => public}/theme/md/img/menus/pointofsale.png (100%) rename {htdocs => public}/theme/md/img/menus/products.png (100%) rename {htdocs => public}/theme/md/img/menus/project.png (100%) rename {htdocs => public}/theme/md/img/menus/shop.png (100%) rename {htdocs => public}/theme/md/img/menus/tools.png (100%) rename {htdocs => public}/theme/md/img/menutab-r.png (100%) rename {htdocs => public}/theme/md/img/nav-overlay.png (100%) rename {htdocs => public}/theme/md/img/nav-overlay3.png (100%) rename {htdocs => public}/theme/md/img/next.png (100%) rename {htdocs => public}/theme/md/img/nographyet.svg (100%) rename {htdocs => public}/theme/md/img/object_account.png (100%) rename {htdocs => public}/theme/md/img/object_accounting.png (100%) rename {htdocs => public}/theme/md/img/object_action.png (100%) rename {htdocs => public}/theme/md/img/object_address.png (100%) rename {htdocs => public}/theme/md/img/object_barcode.png (100%) rename {htdocs => public}/theme/md/img/object_bill.png (100%) rename {htdocs => public}/theme/md/img/object_billa.png (100%) rename {htdocs => public}/theme/md/img/object_billd.png (100%) rename {htdocs => public}/theme/md/img/object_billr.png (100%) rename {htdocs => public}/theme/md/img/object_book.png (100%) rename {htdocs => public}/theme/md/img/object_bookmark.png (100%) rename {htdocs => public}/theme/md/img/object_building.png (100%) rename {htdocs => public}/theme/md/img/object_calendar.png (100%) rename {htdocs => public}/theme/md/img/object_calendarday.png (100%) rename {htdocs => public}/theme/md/img/object_calendargantt.png (100%) rename {htdocs => public}/theme/md/img/object_calendarpertype.png (100%) rename {htdocs => public}/theme/md/img/object_calendarperuser.png (100%) rename {htdocs => public}/theme/md/img/object_calendarweek.png (100%) rename {htdocs => public}/theme/md/img/object_category-expanded.png (100%) rename {htdocs => public}/theme/md/img/object_category.png (100%) rename {htdocs => public}/theme/md/img/object_commercial.png (100%) rename {htdocs => public}/theme/md/img/object_company.png (100%) rename {htdocs => public}/theme/md/img/object_contact.png (100%) rename {htdocs => public}/theme/md/img/object_contract.png (100%) rename {htdocs => public}/theme/md/img/object_cron.png (100%) rename {htdocs => public}/theme/md/img/object_dir.png (100%) rename {htdocs => public}/theme/md/img/object_email.png (100%) rename {htdocs => public}/theme/md/img/object_energy.png (100%) rename {htdocs => public}/theme/md/img/object_generic.png (100%) rename {htdocs => public}/theme/md/img/object_globe.png (100%) rename {htdocs => public}/theme/md/img/object_gravatar.png (100%) rename {htdocs => public}/theme/md/img/object_group.png (100%) rename {htdocs => public}/theme/md/img/object_holiday.png (100%) rename {htdocs => public}/theme/md/img/object_intervention.png (100%) rename {htdocs => public}/theme/md/img/object_invoice.png (100%) rename {htdocs => public}/theme/md/img/object_label.png (100%) rename {htdocs => public}/theme/md/img/object_list.png (100%) rename {htdocs => public}/theme/md/img/object_margin.png (100%) rename {htdocs => public}/theme/md/img/object_opensurvey.png (100%) rename {htdocs => public}/theme/md/img/object_order.png (100%) rename {htdocs => public}/theme/md/img/object_payment.png (100%) rename {htdocs => public}/theme/md/img/object_phoning.png (100%) rename {htdocs => public}/theme/md/img/object_phoning_fax.png (100%) rename {htdocs => public}/theme/md/img/object_printer.png (100%) rename {htdocs => public}/theme/md/img/object_product.png (100%) rename {htdocs => public}/theme/md/img/object_project.png (100%) rename {htdocs => public}/theme/md/img/object_projectpub.png (100%) rename {htdocs => public}/theme/md/img/object_projecttask.png (100%) rename {htdocs => public}/theme/md/img/object_propal.png (100%) rename {htdocs => public}/theme/md/img/object_reduc.png (100%) rename {htdocs => public}/theme/md/img/object_resource.png (100%) rename {htdocs => public}/theme/md/img/object_rss.png (100%) rename {htdocs => public}/theme/md/img/object_sending.png (100%) rename {htdocs => public}/theme/md/img/object_service.png (100%) rename {htdocs => public}/theme/md/img/object_skype.png (100%) rename {htdocs => public}/theme/md/img/object_stock.png (100%) rename {htdocs => public}/theme/md/img/object_supplier_proposal.png (100%) rename {htdocs => public}/theme/md/img/object_task.png (100%) rename {htdocs => public}/theme/md/img/object_task_time.png (100%) rename {htdocs => public}/theme/md/img/object_tax.png (100%) rename {htdocs => public}/theme/md/img/object_technic.png (100%) rename {htdocs => public}/theme/md/img/object_trip.png (100%) rename {htdocs => public}/theme/md/img/object_user.png (100%) rename {htdocs => public}/theme/md/img/off.png (100%) rename {htdocs => public}/theme/md/img/on.png (100%) rename {htdocs => public}/theme/md/img/pdf2.png (100%) rename {htdocs => public}/theme/md/img/pdf3.png (100%) rename {htdocs => public}/theme/md/img/play.png (100%) rename {htdocs => public}/theme/md/img/playdisabled.png (100%) rename {htdocs => public}/theme/md/img/preview.png (100%) rename {htdocs => public}/theme/md/img/preview_ext.png (100%) rename {htdocs => public}/theme/md/img/previous.png (100%) rename {htdocs => public}/theme/md/img/printer.png (100%) rename {htdocs => public}/theme/md/img/printer_top.png (100%) rename {htdocs => public}/theme/md/img/puce.png (100%) rename {htdocs => public}/theme/md/img/recent.png (100%) rename {htdocs => public}/theme/md/img/redstar.png (100%) rename {htdocs => public}/theme/md/img/refresh.png (100%) rename {htdocs => public}/theme/md/img/reload.png (100%) rename {htdocs => public}/theme/md/img/rightarrow.png (100%) rename {htdocs => public}/theme/md/img/search.png (100%) rename {htdocs => public}/theme/md/img/searchclear.png (100%) rename {htdocs => public}/theme/md/img/setup.png (100%) rename {htdocs => public}/theme/md/img/sort_asc.png (100%) rename {htdocs => public}/theme/md/img/sort_asc_disabled.png (100%) rename {htdocs => public}/theme/md/img/sort_desc.png (100%) rename {htdocs => public}/theme/md/img/sort_desc_disabled.png (100%) rename {htdocs => public}/theme/md/img/split.png (100%) rename {htdocs => public}/theme/md/img/star.png (100%) rename {htdocs => public}/theme/md/img/stats.png (100%) rename {htdocs => public}/theme/md/img/statut0.png (100%) rename {htdocs => public}/theme/md/img/statut0_40x40.png (100%) rename {htdocs => public}/theme/md/img/statut1.png (100%) rename {htdocs => public}/theme/md/img/statut1_40x40.png (100%) rename {htdocs => public}/theme/md/img/statut3.png (100%) rename {htdocs => public}/theme/md/img/statut3_40x40.png (100%) rename {htdocs => public}/theme/md/img/statut4.png (100%) rename {htdocs => public}/theme/md/img/statut4_40x40.png (100%) rename {htdocs => public}/theme/md/img/statut5.png (100%) rename {htdocs => public}/theme/md/img/statut5_40x40.png (100%) rename {htdocs => public}/theme/md/img/statut6.png (100%) rename {htdocs => public}/theme/md/img/statut6_40x40.png (100%) rename {htdocs => public}/theme/md/img/statut7.png (100%) rename {htdocs => public}/theme/md/img/statut7_40x40.png (100%) rename {htdocs => public}/theme/md/img/statut8.png (100%) rename {htdocs => public}/theme/md/img/statut8_40x40.png (100%) rename {htdocs => public}/theme/md/img/statut9.png (100%) rename {htdocs => public}/theme/md/img/statut9_40x40.png (100%) rename {htdocs => public}/theme/md/img/stcomm-1.png (100%) rename {htdocs => public}/theme/md/img/stcomm0.png (100%) rename {htdocs => public}/theme/md/img/stcomm1.png (100%) rename {htdocs => public}/theme/md/img/stcomm2.png (100%) rename {htdocs => public}/theme/md/img/stcomm3.png (100%) rename {htdocs => public}/theme/md/img/stcomm4.png (100%) rename {htdocs => public}/theme/md/img/switch_off.png (100%) rename {htdocs => public}/theme/md/img/switch_off_old.png (100%) rename {htdocs => public}/theme/md/img/switch_on.png (100%) rename {htdocs => public}/theme/md/img/switch_on_old.png (100%) rename {htdocs => public}/theme/md/img/tab_background.png (100%) rename {htdocs => public}/theme/md/img/tick.png (100%) rename {htdocs => public}/theme/md/img/title.gif (100%) rename {htdocs => public}/theme/md/img/title.png (100%) rename {htdocs => public}/theme/md/img/title_accountancy.png (100%) rename {htdocs => public}/theme/md/img/title_agenda.png (100%) rename {htdocs => public}/theme/md/img/title_bank.png (100%) rename {htdocs => public}/theme/md/img/title_commercial.png (100%) rename {htdocs => public}/theme/md/img/title_companies.png (100%) rename {htdocs => public}/theme/md/img/title_generic.png (100%) rename {htdocs => public}/theme/md/img/title_home.png (100%) rename {htdocs => public}/theme/md/img/title_hrm.png (100%) rename {htdocs => public}/theme/md/img/title_products.png (100%) rename {htdocs => public}/theme/md/img/title_project.png (100%) rename {htdocs => public}/theme/md/img/title_setup.png (100%) rename {htdocs => public}/theme/md/img/tmenu.jpg (100%) rename {htdocs => public}/theme/md/img/tmenu2.jpg (100%) rename {htdocs => public}/theme/md/img/tmenu3.jpg (100%) rename {htdocs => public}/theme/md/img/tmenu_inverse.jpg (100%) rename {htdocs => public}/theme/md/img/unlock.png (100%) rename {htdocs => public}/theme/md/img/uparrow.png (100%) rename {htdocs => public}/theme/md/img/upload.png (100%) rename {htdocs => public}/theme/md/img/vcard.png (100%) rename {htdocs => public}/theme/md/img/view.png (100%) rename {htdocs => public}/theme/md/img/warning.png (100%) rename {htdocs => public}/theme/md/img/weather/index.html (100%) rename {htdocs => public}/theme/md/img/weather/weather-clear-night.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-clear.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-clouds-night.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-clouds.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-few-clouds-night.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-few-clouds.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-freezing-rain.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-hail.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-many-clouds.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-mist.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-showers-day.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-showers-night.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-showers-scattered-day.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-showers-scattered-night.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-showers-scattered.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-showers.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-snow-rain.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-snow-scattered-day.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-snow-scattered-night.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-snow-scattered.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-snow.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-storm-day.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-storm-night.png (100%) rename {htdocs => public}/theme/md/img/weather/weather-storm.png (100%) rename {htdocs => public}/theme/md/img/working.gif (100%) rename {htdocs => public}/theme/md/img/working2.gif (100%) rename {htdocs => public}/theme/md/index.html (100%) rename {htdocs => public}/theme/md/style.css.php (100%) rename {htdocs => public}/theme/md/thumb.png (100%) rename {htdocs => public}/theme/md/tpl/README (100%) rename {htdocs => public}/theme/md/tpl/index.html (100%) rename {htdocs => public}/user/admin/group_extrafields.php (100%) rename {htdocs => public}/user/admin/index.html (100%) rename {htdocs => public}/user/admin/user_extrafields.php (100%) rename {htdocs => public}/user/agenda_extsites.php (100%) rename {htdocs => public}/user/bank.php (100%) rename {htdocs => public}/user/card.php (100%) rename {htdocs => public}/user/class/api_deprecated_user.class.php (100%) rename {htdocs => public}/user/class/api_users.class.php (100%) rename {htdocs => public}/user/class/index.html (100%) rename {htdocs => public}/user/class/user.class.php (100%) rename {htdocs => public}/user/class/userbankaccount.class.php (100%) rename {htdocs => public}/user/class/usergroup.class.php (100%) rename {htdocs => public}/user/clicktodial.php (100%) rename {htdocs => public}/user/document.php (100%) rename {htdocs => public}/user/group/card.php (100%) rename {htdocs => public}/user/group/index.php (100%) rename {htdocs => public}/user/group/ldap.php (100%) rename {htdocs => public}/user/group/perms.php (100%) rename {htdocs => public}/user/hierarchy.php (100%) rename {htdocs => public}/user/home.php (100%) rename {htdocs => public}/user/index.php (100%) rename {htdocs => public}/user/info.php (100%) rename {htdocs => public}/user/ldap.php (100%) rename {htdocs => public}/user/logout.php (100%) rename {htdocs => public}/user/note.php (100%) rename {htdocs => public}/user/notify/card.php (100%) rename {htdocs => public}/user/param_ihm.php (100%) rename {htdocs => public}/user/passwordforgotten.php (100%) rename {htdocs => public}/user/perms.php (100%) rename {htdocs => public}/viewimage.php (100%) rename {htdocs => public}/webservices/README.md (100%) rename {htdocs => public}/webservices/admin/index.php (100%) rename {htdocs => public}/webservices/demo_wsclient_actioncomm.php-NORUN (100%) rename {htdocs => public}/webservices/demo_wsclient_category.php-NORUN (100%) rename {htdocs => public}/webservices/demo_wsclient_invoice.php-NORUN (100%) rename {htdocs => public}/webservices/demo_wsclient_order.php-NORUN (100%) rename {htdocs => public}/webservices/demo_wsclient_other.php-NORUN (100%) rename {htdocs => public}/webservices/demo_wsclient_productorservice.php-NORUN (100%) rename {htdocs => public}/webservices/demo_wsclient_project.php-NORUN (100%) rename {htdocs => public}/webservices/demo_wsclient_thirdparty.php-NORUN (100%) rename {htdocs => public}/webservices/index.php (100%) rename {htdocs => public}/webservices/server_actioncomm.php (100%) rename {htdocs => public}/webservices/server_category.php (100%) rename {htdocs => public}/webservices/server_contact.php (100%) rename {htdocs => public}/webservices/server_invoice.php (100%) rename {htdocs => public}/webservices/server_order.php (100%) rename {htdocs => public}/webservices/server_other.php (100%) rename {htdocs => public}/webservices/server_productorservice.php (100%) rename {htdocs => public}/webservices/server_project.php (100%) rename {htdocs => public}/webservices/server_supplier_invoice.php (100%) rename {htdocs => public}/webservices/server_thirdparty.php (100%) rename {htdocs => public}/webservices/server_user.php (100%) rename {htdocs => public}/websites/class/website.class.php (100%) rename {htdocs => public}/websites/class/websitepage.class.php (100%) rename {htdocs => public}/websites/frametop.php (100%) rename {htdocs => public}/websites/index.html (100%) rename {htdocs => public}/websites/index.php (100%) diff --git a/htdocs/.gitignore b/public/.gitignore similarity index 100% rename from htdocs/.gitignore rename to public/.gitignore diff --git a/htdocs/accountancy/admin/account.php b/public/accountancy/admin/account.php similarity index 100% rename from htdocs/accountancy/admin/account.php rename to public/accountancy/admin/account.php diff --git a/htdocs/accountancy/admin/accountmodel.php b/public/accountancy/admin/accountmodel.php similarity index 100% rename from htdocs/accountancy/admin/accountmodel.php rename to public/accountancy/admin/accountmodel.php diff --git a/htdocs/accountancy/admin/card.php b/public/accountancy/admin/card.php similarity index 100% rename from htdocs/accountancy/admin/card.php rename to public/accountancy/admin/card.php diff --git a/htdocs/accountancy/admin/categories.php b/public/accountancy/admin/categories.php similarity index 100% rename from htdocs/accountancy/admin/categories.php rename to public/accountancy/admin/categories.php diff --git a/htdocs/accountancy/admin/defaultaccounts.php b/public/accountancy/admin/defaultaccounts.php similarity index 100% rename from htdocs/accountancy/admin/defaultaccounts.php rename to public/accountancy/admin/defaultaccounts.php diff --git a/htdocs/accountancy/admin/export.php b/public/accountancy/admin/export.php similarity index 100% rename from htdocs/accountancy/admin/export.php rename to public/accountancy/admin/export.php diff --git a/htdocs/accountancy/admin/fiscalyear.php b/public/accountancy/admin/fiscalyear.php similarity index 100% rename from htdocs/accountancy/admin/fiscalyear.php rename to public/accountancy/admin/fiscalyear.php diff --git a/htdocs/accountancy/admin/fiscalyear_card.php b/public/accountancy/admin/fiscalyear_card.php similarity index 100% rename from htdocs/accountancy/admin/fiscalyear_card.php rename to public/accountancy/admin/fiscalyear_card.php diff --git a/htdocs/accountancy/admin/fiscalyear_info.php b/public/accountancy/admin/fiscalyear_info.php similarity index 100% rename from htdocs/accountancy/admin/fiscalyear_info.php rename to public/accountancy/admin/fiscalyear_info.php diff --git a/htdocs/accountancy/admin/importaccounts.php b/public/accountancy/admin/importaccounts.php similarity index 100% rename from htdocs/accountancy/admin/importaccounts.php rename to public/accountancy/admin/importaccounts.php diff --git a/htdocs/accountancy/admin/index.html b/public/accountancy/admin/index.html similarity index 100% rename from htdocs/accountancy/admin/index.html rename to public/accountancy/admin/index.html diff --git a/htdocs/accountancy/admin/index.php b/public/accountancy/admin/index.php similarity index 100% rename from htdocs/accountancy/admin/index.php rename to public/accountancy/admin/index.php diff --git a/htdocs/accountancy/admin/journal.php b/public/accountancy/admin/journal.php similarity index 100% rename from htdocs/accountancy/admin/journal.php rename to public/accountancy/admin/journal.php diff --git a/htdocs/accountancy/admin/productaccount.php b/public/accountancy/admin/productaccount.php similarity index 100% rename from htdocs/accountancy/admin/productaccount.php rename to public/accountancy/admin/productaccount.php diff --git a/htdocs/accountancy/bookkeeping/balance.php b/public/accountancy/bookkeeping/balance.php similarity index 100% rename from htdocs/accountancy/bookkeeping/balance.php rename to public/accountancy/bookkeeping/balance.php diff --git a/htdocs/accountancy/bookkeeping/balancebymonth.php b/public/accountancy/bookkeeping/balancebymonth.php similarity index 100% rename from htdocs/accountancy/bookkeeping/balancebymonth.php rename to public/accountancy/bookkeeping/balancebymonth.php diff --git a/htdocs/accountancy/bookkeeping/card.php b/public/accountancy/bookkeeping/card.php similarity index 100% rename from htdocs/accountancy/bookkeeping/card.php rename to public/accountancy/bookkeeping/card.php diff --git a/htdocs/accountancy/bookkeeping/index.html b/public/accountancy/bookkeeping/index.html similarity index 100% rename from htdocs/accountancy/bookkeeping/index.html rename to public/accountancy/bookkeeping/index.html diff --git a/htdocs/accountancy/bookkeeping/list.php b/public/accountancy/bookkeeping/list.php similarity index 100% rename from htdocs/accountancy/bookkeeping/list.php rename to public/accountancy/bookkeeping/list.php diff --git a/htdocs/accountancy/bookkeeping/listbyaccount.php b/public/accountancy/bookkeeping/listbyaccount.php similarity index 100% rename from htdocs/accountancy/bookkeeping/listbyaccount.php rename to public/accountancy/bookkeeping/listbyaccount.php diff --git a/htdocs/accountancy/bookkeeping/listbyyear.php b/public/accountancy/bookkeeping/listbyyear.php similarity index 100% rename from htdocs/accountancy/bookkeeping/listbyyear.php rename to public/accountancy/bookkeeping/listbyyear.php diff --git a/htdocs/accountancy/class/accountancycategory.class.php b/public/accountancy/class/accountancycategory.class.php similarity index 100% rename from htdocs/accountancy/class/accountancycategory.class.php rename to public/accountancy/class/accountancycategory.class.php diff --git a/htdocs/accountancy/class/accountancyexport.class.php b/public/accountancy/class/accountancyexport.class.php similarity index 100% rename from htdocs/accountancy/class/accountancyexport.class.php rename to public/accountancy/class/accountancyexport.class.php diff --git a/htdocs/accountancy/class/accountancysystem.class.php b/public/accountancy/class/accountancysystem.class.php similarity index 100% rename from htdocs/accountancy/class/accountancysystem.class.php rename to public/accountancy/class/accountancysystem.class.php diff --git a/htdocs/accountancy/class/accountingaccount.class.php b/public/accountancy/class/accountingaccount.class.php similarity index 100% rename from htdocs/accountancy/class/accountingaccount.class.php rename to public/accountancy/class/accountingaccount.class.php diff --git a/htdocs/accountancy/class/bookkeeping.class.php b/public/accountancy/class/bookkeeping.class.php similarity index 100% rename from htdocs/accountancy/class/bookkeeping.class.php rename to public/accountancy/class/bookkeeping.class.php diff --git a/htdocs/accountancy/class/html.formventilation.class.php b/public/accountancy/class/html.formventilation.class.php similarity index 100% rename from htdocs/accountancy/class/html.formventilation.class.php rename to public/accountancy/class/html.formventilation.class.php diff --git a/htdocs/accountancy/class/index.html b/public/accountancy/class/index.html similarity index 100% rename from htdocs/accountancy/class/index.html rename to public/accountancy/class/index.html diff --git a/htdocs/accountancy/customer/card.php b/public/accountancy/customer/card.php similarity index 100% rename from htdocs/accountancy/customer/card.php rename to public/accountancy/customer/card.php diff --git a/htdocs/accountancy/customer/index.html b/public/accountancy/customer/index.html similarity index 100% rename from htdocs/accountancy/customer/index.html rename to public/accountancy/customer/index.html diff --git a/htdocs/accountancy/customer/index.php b/public/accountancy/customer/index.php similarity index 100% rename from htdocs/accountancy/customer/index.php rename to public/accountancy/customer/index.php diff --git a/htdocs/accountancy/customer/lines.php b/public/accountancy/customer/lines.php similarity index 100% rename from htdocs/accountancy/customer/lines.php rename to public/accountancy/customer/lines.php diff --git a/htdocs/accountancy/customer/list.php b/public/accountancy/customer/list.php similarity index 100% rename from htdocs/accountancy/customer/list.php rename to public/accountancy/customer/list.php diff --git a/htdocs/accountancy/expensereport/card.php b/public/accountancy/expensereport/card.php similarity index 100% rename from htdocs/accountancy/expensereport/card.php rename to public/accountancy/expensereport/card.php diff --git a/htdocs/accountancy/expensereport/index.html b/public/accountancy/expensereport/index.html similarity index 100% rename from htdocs/accountancy/expensereport/index.html rename to public/accountancy/expensereport/index.html diff --git a/htdocs/accountancy/expensereport/index.php b/public/accountancy/expensereport/index.php similarity index 100% rename from htdocs/accountancy/expensereport/index.php rename to public/accountancy/expensereport/index.php diff --git a/htdocs/accountancy/expensereport/lines.php b/public/accountancy/expensereport/lines.php similarity index 100% rename from htdocs/accountancy/expensereport/lines.php rename to public/accountancy/expensereport/lines.php diff --git a/htdocs/accountancy/expensereport/list.php b/public/accountancy/expensereport/list.php similarity index 100% rename from htdocs/accountancy/expensereport/list.php rename to public/accountancy/expensereport/list.php diff --git a/htdocs/accountancy/index.html b/public/accountancy/index.html similarity index 100% rename from htdocs/accountancy/index.html rename to public/accountancy/index.html diff --git a/htdocs/accountancy/index.php b/public/accountancy/index.php similarity index 100% rename from htdocs/accountancy/index.php rename to public/accountancy/index.php diff --git a/htdocs/accountancy/journal/bankjournal.php b/public/accountancy/journal/bankjournal.php similarity index 100% rename from htdocs/accountancy/journal/bankjournal.php rename to public/accountancy/journal/bankjournal.php diff --git a/htdocs/accountancy/journal/expensereportsjournal.php b/public/accountancy/journal/expensereportsjournal.php similarity index 100% rename from htdocs/accountancy/journal/expensereportsjournal.php rename to public/accountancy/journal/expensereportsjournal.php diff --git a/htdocs/accountancy/journal/index.html b/public/accountancy/journal/index.html similarity index 100% rename from htdocs/accountancy/journal/index.html rename to public/accountancy/journal/index.html diff --git a/htdocs/accountancy/journal/purchasesjournal.php b/public/accountancy/journal/purchasesjournal.php similarity index 100% rename from htdocs/accountancy/journal/purchasesjournal.php rename to public/accountancy/journal/purchasesjournal.php diff --git a/htdocs/accountancy/journal/sellsjournal.php b/public/accountancy/journal/sellsjournal.php similarity index 100% rename from htdocs/accountancy/journal/sellsjournal.php rename to public/accountancy/journal/sellsjournal.php diff --git a/htdocs/accountancy/report/index.html b/public/accountancy/report/index.html similarity index 100% rename from htdocs/accountancy/report/index.html rename to public/accountancy/report/index.html diff --git a/htdocs/accountancy/report/result.php b/public/accountancy/report/result.php similarity index 100% rename from htdocs/accountancy/report/result.php rename to public/accountancy/report/result.php diff --git a/htdocs/accountancy/supplier/card.php b/public/accountancy/supplier/card.php similarity index 100% rename from htdocs/accountancy/supplier/card.php rename to public/accountancy/supplier/card.php diff --git a/htdocs/accountancy/supplier/index.html b/public/accountancy/supplier/index.html similarity index 100% rename from htdocs/accountancy/supplier/index.html rename to public/accountancy/supplier/index.html diff --git a/htdocs/accountancy/supplier/index.php b/public/accountancy/supplier/index.php similarity index 100% rename from htdocs/accountancy/supplier/index.php rename to public/accountancy/supplier/index.php diff --git a/htdocs/accountancy/supplier/lines.php b/public/accountancy/supplier/lines.php similarity index 100% rename from htdocs/accountancy/supplier/lines.php rename to public/accountancy/supplier/lines.php diff --git a/htdocs/accountancy/supplier/list.php b/public/accountancy/supplier/list.php similarity index 100% rename from htdocs/accountancy/supplier/list.php rename to public/accountancy/supplier/list.php diff --git a/htdocs/accountancy/tpl/export_journal.tpl.php b/public/accountancy/tpl/export_journal.tpl.php similarity index 100% rename from htdocs/accountancy/tpl/export_journal.tpl.php rename to public/accountancy/tpl/export_journal.tpl.php diff --git a/htdocs/accountancy/tpl/index.html b/public/accountancy/tpl/index.html similarity index 100% rename from htdocs/accountancy/tpl/index.html rename to public/accountancy/tpl/index.html diff --git a/htdocs/adherents/admin/adherent.php b/public/adherents/admin/adherent.php similarity index 100% rename from htdocs/adherents/admin/adherent.php rename to public/adherents/admin/adherent.php diff --git a/htdocs/adherents/admin/adherent_extrafields.php b/public/adherents/admin/adherent_extrafields.php similarity index 100% rename from htdocs/adherents/admin/adherent_extrafields.php rename to public/adherents/admin/adherent_extrafields.php diff --git a/htdocs/adherents/admin/adherent_type_extrafields.php b/public/adherents/admin/adherent_type_extrafields.php similarity index 100% rename from htdocs/adherents/admin/adherent_type_extrafields.php rename to public/adherents/admin/adherent_type_extrafields.php diff --git a/htdocs/adherents/admin/index.html b/public/adherents/admin/index.html similarity index 100% rename from htdocs/adherents/admin/index.html rename to public/adherents/admin/index.html diff --git a/htdocs/adherents/admin/public.php b/public/adherents/admin/public.php similarity index 100% rename from htdocs/adherents/admin/public.php rename to public/adherents/admin/public.php diff --git a/htdocs/adherents/agenda.php b/public/adherents/agenda.php similarity index 100% rename from htdocs/adherents/agenda.php rename to public/adherents/agenda.php diff --git a/htdocs/adherents/canvas/actions_adherentcard_common.class.php b/public/adherents/canvas/actions_adherentcard_common.class.php similarity index 100% rename from htdocs/adherents/canvas/actions_adherentcard_common.class.php rename to public/adherents/canvas/actions_adherentcard_common.class.php diff --git a/htdocs/adherents/canvas/default/actions_adherentcard_default.class.php b/public/adherents/canvas/default/actions_adherentcard_default.class.php similarity index 100% rename from htdocs/adherents/canvas/default/actions_adherentcard_default.class.php rename to public/adherents/canvas/default/actions_adherentcard_default.class.php diff --git a/htdocs/adherents/canvas/default/index.html b/public/adherents/canvas/default/index.html similarity index 100% rename from htdocs/adherents/canvas/default/index.html rename to public/adherents/canvas/default/index.html diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php b/public/adherents/canvas/default/tpl/adherentcard_create.tpl.php similarity index 100% rename from htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php rename to public/adherents/canvas/default/tpl/adherentcard_create.tpl.php diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php b/public/adherents/canvas/default/tpl/adherentcard_edit.tpl.php similarity index 100% rename from htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php rename to public/adherents/canvas/default/tpl/adherentcard_edit.tpl.php diff --git a/htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php b/public/adherents/canvas/default/tpl/adherentcard_view.tpl.php similarity index 100% rename from htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php rename to public/adherents/canvas/default/tpl/adherentcard_view.tpl.php diff --git a/htdocs/adherents/canvas/default/tpl/index.html b/public/adherents/canvas/default/tpl/index.html similarity index 100% rename from htdocs/adherents/canvas/default/tpl/index.html rename to public/adherents/canvas/default/tpl/index.html diff --git a/htdocs/adherents/canvas/index.html b/public/adherents/canvas/index.html similarity index 100% rename from htdocs/adherents/canvas/index.html rename to public/adherents/canvas/index.html diff --git a/htdocs/adherents/card.php b/public/adherents/card.php similarity index 100% rename from htdocs/adherents/card.php rename to public/adherents/card.php diff --git a/htdocs/adherents/cartes/carte.php b/public/adherents/cartes/carte.php similarity index 100% rename from htdocs/adherents/cartes/carte.php rename to public/adherents/cartes/carte.php diff --git a/htdocs/adherents/cartes/index.html b/public/adherents/cartes/index.html similarity index 100% rename from htdocs/adherents/cartes/index.html rename to public/adherents/cartes/index.html diff --git a/htdocs/adherents/class/adherent.class.php b/public/adherents/class/adherent.class.php similarity index 100% rename from htdocs/adherents/class/adherent.class.php rename to public/adherents/class/adherent.class.php diff --git a/htdocs/adherents/class/adherent_type.class.php b/public/adherents/class/adherent_type.class.php similarity index 100% rename from htdocs/adherents/class/adherent_type.class.php rename to public/adherents/class/adherent_type.class.php diff --git a/htdocs/adherents/class/adherentstats.class.php b/public/adherents/class/adherentstats.class.php similarity index 100% rename from htdocs/adherents/class/adherentstats.class.php rename to public/adherents/class/adherentstats.class.php diff --git a/htdocs/adherents/class/api_members.class.php b/public/adherents/class/api_members.class.php similarity index 100% rename from htdocs/adherents/class/api_members.class.php rename to public/adherents/class/api_members.class.php diff --git a/htdocs/adherents/class/api_subscriptions.class.php b/public/adherents/class/api_subscriptions.class.php similarity index 100% rename from htdocs/adherents/class/api_subscriptions.class.php rename to public/adherents/class/api_subscriptions.class.php diff --git a/htdocs/adherents/class/index.html b/public/adherents/class/index.html similarity index 100% rename from htdocs/adherents/class/index.html rename to public/adherents/class/index.html diff --git a/htdocs/adherents/class/subscription.class.php b/public/adherents/class/subscription.class.php similarity index 100% rename from htdocs/adherents/class/subscription.class.php rename to public/adherents/class/subscription.class.php diff --git a/htdocs/adherents/document.php b/public/adherents/document.php similarity index 100% rename from htdocs/adherents/document.php rename to public/adherents/document.php diff --git a/htdocs/adherents/htpasswd.php b/public/adherents/htpasswd.php similarity index 100% rename from htdocs/adherents/htpasswd.php rename to public/adherents/htpasswd.php diff --git a/htdocs/adherents/index.php b/public/adherents/index.php similarity index 100% rename from htdocs/adherents/index.php rename to public/adherents/index.php diff --git a/htdocs/adherents/ldap.php b/public/adherents/ldap.php similarity index 100% rename from htdocs/adherents/ldap.php rename to public/adherents/ldap.php diff --git a/htdocs/adherents/list.php b/public/adherents/list.php similarity index 100% rename from htdocs/adherents/list.php rename to public/adherents/list.php diff --git a/htdocs/adherents/note.php b/public/adherents/note.php similarity index 100% rename from htdocs/adherents/note.php rename to public/adherents/note.php diff --git a/htdocs/adherents/stats/byproperties.php b/public/adherents/stats/byproperties.php similarity index 100% rename from htdocs/adherents/stats/byproperties.php rename to public/adherents/stats/byproperties.php diff --git a/htdocs/adherents/stats/geo.php b/public/adherents/stats/geo.php similarity index 100% rename from htdocs/adherents/stats/geo.php rename to public/adherents/stats/geo.php diff --git a/htdocs/adherents/stats/index.html b/public/adherents/stats/index.html similarity index 100% rename from htdocs/adherents/stats/index.html rename to public/adherents/stats/index.html diff --git a/htdocs/adherents/stats/index.php b/public/adherents/stats/index.php similarity index 100% rename from htdocs/adherents/stats/index.php rename to public/adherents/stats/index.php diff --git a/htdocs/adherents/subscription.php b/public/adherents/subscription.php similarity index 100% rename from htdocs/adherents/subscription.php rename to public/adherents/subscription.php diff --git a/htdocs/adherents/subscription/card.php b/public/adherents/subscription/card.php similarity index 100% rename from htdocs/adherents/subscription/card.php rename to public/adherents/subscription/card.php diff --git a/htdocs/adherents/subscription/index.html b/public/adherents/subscription/index.html similarity index 100% rename from htdocs/adherents/subscription/index.html rename to public/adherents/subscription/index.html diff --git a/htdocs/adherents/subscription/info.php b/public/adherents/subscription/info.php similarity index 100% rename from htdocs/adherents/subscription/info.php rename to public/adherents/subscription/info.php diff --git a/htdocs/adherents/subscription/list.php b/public/adherents/subscription/list.php similarity index 100% rename from htdocs/adherents/subscription/list.php rename to public/adherents/subscription/list.php diff --git a/htdocs/adherents/tpl/index.html b/public/adherents/tpl/index.html similarity index 100% rename from htdocs/adherents/tpl/index.html rename to public/adherents/tpl/index.html diff --git a/htdocs/adherents/tpl/linkedobjectblock.tpl.php b/public/adherents/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/adherents/tpl/linkedobjectblock.tpl.php rename to public/adherents/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/adherents/type.php b/public/adherents/type.php similarity index 100% rename from htdocs/adherents/type.php rename to public/adherents/type.php diff --git a/htdocs/admin/agenda.php b/public/admin/agenda.php similarity index 100% rename from htdocs/admin/agenda.php rename to public/admin/agenda.php diff --git a/htdocs/admin/agenda_extrafields.php b/public/admin/agenda_extrafields.php similarity index 100% rename from htdocs/admin/agenda_extrafields.php rename to public/admin/agenda_extrafields.php diff --git a/htdocs/admin/agenda_extsites.php b/public/admin/agenda_extsites.php similarity index 100% rename from htdocs/admin/agenda_extsites.php rename to public/admin/agenda_extsites.php diff --git a/htdocs/admin/agenda_other.php b/public/admin/agenda_other.php similarity index 100% rename from htdocs/admin/agenda_other.php rename to public/admin/agenda_other.php diff --git a/htdocs/admin/agenda_xcal.php b/public/admin/agenda_xcal.php similarity index 100% rename from htdocs/admin/agenda_xcal.php rename to public/admin/agenda_xcal.php diff --git a/htdocs/admin/bank.php b/public/admin/bank.php similarity index 100% rename from htdocs/admin/bank.php rename to public/admin/bank.php diff --git a/htdocs/admin/bank_extrafields.php b/public/admin/bank_extrafields.php similarity index 100% rename from htdocs/admin/bank_extrafields.php rename to public/admin/bank_extrafields.php diff --git a/htdocs/admin/barcode.php b/public/admin/barcode.php similarity index 100% rename from htdocs/admin/barcode.php rename to public/admin/barcode.php diff --git a/htdocs/admin/boxes.php b/public/admin/boxes.php similarity index 100% rename from htdocs/admin/boxes.php rename to public/admin/boxes.php diff --git a/htdocs/admin/chequereceipts.php b/public/admin/chequereceipts.php similarity index 100% rename from htdocs/admin/chequereceipts.php rename to public/admin/chequereceipts.php diff --git a/htdocs/admin/clicktodial.php b/public/admin/clicktodial.php similarity index 100% rename from htdocs/admin/clicktodial.php rename to public/admin/clicktodial.php diff --git a/htdocs/admin/commande.php b/public/admin/commande.php similarity index 100% rename from htdocs/admin/commande.php rename to public/admin/commande.php diff --git a/htdocs/admin/company.php b/public/admin/company.php similarity index 100% rename from htdocs/admin/company.php rename to public/admin/company.php diff --git a/htdocs/admin/compta.php b/public/admin/compta.php similarity index 100% rename from htdocs/admin/compta.php rename to public/admin/compta.php diff --git a/htdocs/admin/confexped.php b/public/admin/confexped.php similarity index 100% rename from htdocs/admin/confexped.php rename to public/admin/confexped.php diff --git a/htdocs/admin/const.php b/public/admin/const.php similarity index 100% rename from htdocs/admin/const.php rename to public/admin/const.php diff --git a/htdocs/admin/contract.php b/public/admin/contract.php similarity index 100% rename from htdocs/admin/contract.php rename to public/admin/contract.php diff --git a/htdocs/admin/delais.php b/public/admin/delais.php similarity index 100% rename from htdocs/admin/delais.php rename to public/admin/delais.php diff --git a/htdocs/admin/dict.php b/public/admin/dict.php similarity index 100% rename from htdocs/admin/dict.php rename to public/admin/dict.php diff --git a/htdocs/admin/ecm.php b/public/admin/ecm.php similarity index 100% rename from htdocs/admin/ecm.php rename to public/admin/ecm.php diff --git a/htdocs/admin/events.php b/public/admin/events.php similarity index 100% rename from htdocs/admin/events.php rename to public/admin/events.php diff --git a/htdocs/admin/expedition.php b/public/admin/expedition.php similarity index 100% rename from htdocs/admin/expedition.php rename to public/admin/expedition.php diff --git a/htdocs/admin/expedition_extrafields.php b/public/admin/expedition_extrafields.php similarity index 100% rename from htdocs/admin/expedition_extrafields.php rename to public/admin/expedition_extrafields.php diff --git a/htdocs/admin/expeditiondet_extrafields.php b/public/admin/expeditiondet_extrafields.php similarity index 100% rename from htdocs/admin/expeditiondet_extrafields.php rename to public/admin/expeditiondet_extrafields.php diff --git a/htdocs/admin/expensereport.php b/public/admin/expensereport.php similarity index 100% rename from htdocs/admin/expensereport.php rename to public/admin/expensereport.php diff --git a/htdocs/admin/expensereport_extrafields.php b/public/admin/expensereport_extrafields.php similarity index 100% rename from htdocs/admin/expensereport_extrafields.php rename to public/admin/expensereport_extrafields.php diff --git a/htdocs/admin/external_rss.php b/public/admin/external_rss.php similarity index 100% rename from htdocs/admin/external_rss.php rename to public/admin/external_rss.php diff --git a/htdocs/admin/facture.php b/public/admin/facture.php similarity index 100% rename from htdocs/admin/facture.php rename to public/admin/facture.php diff --git a/htdocs/admin/fckeditor.php b/public/admin/fckeditor.php similarity index 100% rename from htdocs/admin/fckeditor.php rename to public/admin/fckeditor.php diff --git a/htdocs/admin/fichinter.php b/public/admin/fichinter.php similarity index 100% rename from htdocs/admin/fichinter.php rename to public/admin/fichinter.php diff --git a/htdocs/admin/geoipmaxmind.php b/public/admin/geoipmaxmind.php similarity index 100% rename from htdocs/admin/geoipmaxmind.php rename to public/admin/geoipmaxmind.php diff --git a/htdocs/admin/ihm.php b/public/admin/ihm.php similarity index 100% rename from htdocs/admin/ihm.php rename to public/admin/ihm.php diff --git a/htdocs/admin/index.php b/public/admin/index.php similarity index 100% rename from htdocs/admin/index.php rename to public/admin/index.php diff --git a/htdocs/admin/ldap.php b/public/admin/ldap.php similarity index 100% rename from htdocs/admin/ldap.php rename to public/admin/ldap.php diff --git a/htdocs/admin/ldap_contacts.php b/public/admin/ldap_contacts.php similarity index 100% rename from htdocs/admin/ldap_contacts.php rename to public/admin/ldap_contacts.php diff --git a/htdocs/admin/ldap_groups.php b/public/admin/ldap_groups.php similarity index 100% rename from htdocs/admin/ldap_groups.php rename to public/admin/ldap_groups.php diff --git a/htdocs/admin/ldap_members.php b/public/admin/ldap_members.php similarity index 100% rename from htdocs/admin/ldap_members.php rename to public/admin/ldap_members.php diff --git a/htdocs/admin/ldap_users.php b/public/admin/ldap_users.php similarity index 100% rename from htdocs/admin/ldap_users.php rename to public/admin/ldap_users.php diff --git a/htdocs/admin/limits.php b/public/admin/limits.php similarity index 100% rename from htdocs/admin/limits.php rename to public/admin/limits.php diff --git a/htdocs/admin/livraison.php b/public/admin/livraison.php similarity index 100% rename from htdocs/admin/livraison.php rename to public/admin/livraison.php diff --git a/htdocs/admin/livraison_extrafields.php b/public/admin/livraison_extrafields.php similarity index 100% rename from htdocs/admin/livraison_extrafields.php rename to public/admin/livraison_extrafields.php diff --git a/htdocs/admin/livraisondet_extrafields.php b/public/admin/livraisondet_extrafields.php similarity index 100% rename from htdocs/admin/livraisondet_extrafields.php rename to public/admin/livraisondet_extrafields.php diff --git a/htdocs/admin/loan.php b/public/admin/loan.php similarity index 100% rename from htdocs/admin/loan.php rename to public/admin/loan.php diff --git a/htdocs/admin/mailing.php b/public/admin/mailing.php similarity index 100% rename from htdocs/admin/mailing.php rename to public/admin/mailing.php diff --git a/htdocs/admin/mailman.php b/public/admin/mailman.php similarity index 100% rename from htdocs/admin/mailman.php rename to public/admin/mailman.php diff --git a/htdocs/admin/mails.php b/public/admin/mails.php similarity index 100% rename from htdocs/admin/mails.php rename to public/admin/mails.php diff --git a/htdocs/admin/menus.php b/public/admin/menus.php similarity index 100% rename from htdocs/admin/menus.php rename to public/admin/menus.php diff --git a/htdocs/admin/menus/edit.php b/public/admin/menus/edit.php similarity index 100% rename from htdocs/admin/menus/edit.php rename to public/admin/menus/edit.php diff --git a/htdocs/admin/menus/index.php b/public/admin/menus/index.php similarity index 100% rename from htdocs/admin/menus/index.php rename to public/admin/menus/index.php diff --git a/htdocs/admin/menus/other.php b/public/admin/menus/other.php similarity index 100% rename from htdocs/admin/menus/other.php rename to public/admin/menus/other.php diff --git a/htdocs/admin/modules.php b/public/admin/modules.php similarity index 100% rename from htdocs/admin/modules.php rename to public/admin/modules.php diff --git a/htdocs/admin/multicurrency.php b/public/admin/multicurrency.php similarity index 100% rename from htdocs/admin/multicurrency.php rename to public/admin/multicurrency.php diff --git a/htdocs/admin/notification.php b/public/admin/notification.php similarity index 100% rename from htdocs/admin/notification.php rename to public/admin/notification.php diff --git a/htdocs/admin/oauth.php b/public/admin/oauth.php similarity index 100% rename from htdocs/admin/oauth.php rename to public/admin/oauth.php diff --git a/htdocs/admin/oauthlogintokens.php b/public/admin/oauthlogintokens.php similarity index 100% rename from htdocs/admin/oauthlogintokens.php rename to public/admin/oauthlogintokens.php diff --git a/htdocs/admin/order_extrafields.php b/public/admin/order_extrafields.php similarity index 100% rename from htdocs/admin/order_extrafields.php rename to public/admin/order_extrafields.php diff --git a/htdocs/admin/orderdet_extrafields.php b/public/admin/orderdet_extrafields.php similarity index 100% rename from htdocs/admin/orderdet_extrafields.php rename to public/admin/orderdet_extrafields.php diff --git a/htdocs/admin/payment.php b/public/admin/payment.php similarity index 100% rename from htdocs/admin/payment.php rename to public/admin/payment.php diff --git a/htdocs/admin/pdf.php b/public/admin/pdf.php similarity index 100% rename from htdocs/admin/pdf.php rename to public/admin/pdf.php diff --git a/htdocs/admin/perms.php b/public/admin/perms.php similarity index 100% rename from htdocs/admin/perms.php rename to public/admin/perms.php diff --git a/htdocs/admin/prelevement.php b/public/admin/prelevement.php similarity index 100% rename from htdocs/admin/prelevement.php rename to public/admin/prelevement.php diff --git a/htdocs/admin/propal.php b/public/admin/propal.php similarity index 100% rename from htdocs/admin/propal.php rename to public/admin/propal.php diff --git a/htdocs/admin/proxy.php b/public/admin/proxy.php similarity index 100% rename from htdocs/admin/proxy.php rename to public/admin/proxy.php diff --git a/htdocs/admin/receiptprinter.php b/public/admin/receiptprinter.php similarity index 100% rename from htdocs/admin/receiptprinter.php rename to public/admin/receiptprinter.php diff --git a/htdocs/admin/resource.php b/public/admin/resource.php similarity index 100% rename from htdocs/admin/resource.php rename to public/admin/resource.php diff --git a/htdocs/admin/resource_extrafields.php b/public/admin/resource_extrafields.php similarity index 100% rename from htdocs/admin/resource_extrafields.php rename to public/admin/resource_extrafields.php diff --git a/htdocs/admin/salaries.php b/public/admin/salaries.php similarity index 100% rename from htdocs/admin/salaries.php rename to public/admin/salaries.php diff --git a/htdocs/admin/security.php b/public/admin/security.php similarity index 100% rename from htdocs/admin/security.php rename to public/admin/security.php diff --git a/htdocs/admin/security_file.php b/public/admin/security_file.php similarity index 100% rename from htdocs/admin/security_file.php rename to public/admin/security_file.php diff --git a/htdocs/admin/security_other.php b/public/admin/security_other.php similarity index 100% rename from htdocs/admin/security_other.php rename to public/admin/security_other.php diff --git a/htdocs/admin/sms.php b/public/admin/sms.php similarity index 100% rename from htdocs/admin/sms.php rename to public/admin/sms.php diff --git a/htdocs/admin/spip.php b/public/admin/spip.php similarity index 100% rename from htdocs/admin/spip.php rename to public/admin/spip.php diff --git a/htdocs/admin/stock.php b/public/admin/stock.php similarity index 100% rename from htdocs/admin/stock.php rename to public/admin/stock.php diff --git a/htdocs/admin/supplier_invoice.php b/public/admin/supplier_invoice.php similarity index 100% rename from htdocs/admin/supplier_invoice.php rename to public/admin/supplier_invoice.php diff --git a/htdocs/admin/supplier_order.php b/public/admin/supplier_order.php similarity index 100% rename from htdocs/admin/supplier_order.php rename to public/admin/supplier_order.php diff --git a/htdocs/admin/supplier_payment.php b/public/admin/supplier_payment.php similarity index 100% rename from htdocs/admin/supplier_payment.php rename to public/admin/supplier_payment.php diff --git a/htdocs/admin/supplier_proposal.php b/public/admin/supplier_proposal.php similarity index 100% rename from htdocs/admin/supplier_proposal.php rename to public/admin/supplier_proposal.php diff --git a/htdocs/admin/supplierinvoice_extrafields.php b/public/admin/supplierinvoice_extrafields.php similarity index 100% rename from htdocs/admin/supplierinvoice_extrafields.php rename to public/admin/supplierinvoice_extrafields.php diff --git a/htdocs/admin/supplierinvoicedet_extrafields.php b/public/admin/supplierinvoicedet_extrafields.php similarity index 100% rename from htdocs/admin/supplierinvoicedet_extrafields.php rename to public/admin/supplierinvoicedet_extrafields.php diff --git a/htdocs/admin/supplierorder_extrafields.php b/public/admin/supplierorder_extrafields.php similarity index 100% rename from htdocs/admin/supplierorder_extrafields.php rename to public/admin/supplierorder_extrafields.php diff --git a/htdocs/admin/supplierorderdet_extrafields.php b/public/admin/supplierorderdet_extrafields.php similarity index 100% rename from htdocs/admin/supplierorderdet_extrafields.php rename to public/admin/supplierorderdet_extrafields.php diff --git a/htdocs/admin/syslog.php b/public/admin/syslog.php similarity index 100% rename from htdocs/admin/syslog.php rename to public/admin/syslog.php diff --git a/htdocs/admin/system/about.php b/public/admin/system/about.php similarity index 100% rename from htdocs/admin/system/about.php rename to public/admin/system/about.php diff --git a/htdocs/admin/system/browser.php b/public/admin/system/browser.php similarity index 100% rename from htdocs/admin/system/browser.php rename to public/admin/system/browser.php diff --git a/htdocs/admin/system/constall.php b/public/admin/system/constall.php similarity index 100% rename from htdocs/admin/system/constall.php rename to public/admin/system/constall.php diff --git a/htdocs/admin/system/database-tables.php b/public/admin/system/database-tables.php similarity index 100% rename from htdocs/admin/system/database-tables.php rename to public/admin/system/database-tables.php diff --git a/htdocs/admin/system/database.php b/public/admin/system/database.php similarity index 100% rename from htdocs/admin/system/database.php rename to public/admin/system/database.php diff --git a/htdocs/admin/system/dbtable.php b/public/admin/system/dbtable.php similarity index 100% rename from htdocs/admin/system/dbtable.php rename to public/admin/system/dbtable.php diff --git a/htdocs/admin/system/dolibarr.php b/public/admin/system/dolibarr.php similarity index 100% rename from htdocs/admin/system/dolibarr.php rename to public/admin/system/dolibarr.php diff --git a/htdocs/admin/system/filecheck.php b/public/admin/system/filecheck.php similarity index 100% rename from htdocs/admin/system/filecheck.php rename to public/admin/system/filecheck.php diff --git a/htdocs/admin/system/index.php b/public/admin/system/index.php similarity index 100% rename from htdocs/admin/system/index.php rename to public/admin/system/index.php diff --git a/htdocs/admin/system/modules.php b/public/admin/system/modules.php similarity index 100% rename from htdocs/admin/system/modules.php rename to public/admin/system/modules.php diff --git a/htdocs/admin/system/os.php b/public/admin/system/os.php similarity index 100% rename from htdocs/admin/system/os.php rename to public/admin/system/os.php diff --git a/htdocs/admin/system/perf.php b/public/admin/system/perf.php similarity index 100% rename from htdocs/admin/system/perf.php rename to public/admin/system/perf.php diff --git a/htdocs/admin/system/phpinfo.php b/public/admin/system/phpinfo.php similarity index 100% rename from htdocs/admin/system/phpinfo.php rename to public/admin/system/phpinfo.php diff --git a/htdocs/admin/system/web.php b/public/admin/system/web.php similarity index 100% rename from htdocs/admin/system/web.php rename to public/admin/system/web.php diff --git a/htdocs/admin/system/xcache.php b/public/admin/system/xcache.php similarity index 100% rename from htdocs/admin/system/xcache.php rename to public/admin/system/xcache.php diff --git a/htdocs/admin/system/xdebug.php b/public/admin/system/xdebug.php similarity index 100% rename from htdocs/admin/system/xdebug.php rename to public/admin/system/xdebug.php diff --git a/htdocs/admin/taxes.php b/public/admin/taxes.php similarity index 100% rename from htdocs/admin/taxes.php rename to public/admin/taxes.php diff --git a/htdocs/admin/tools/dolibarr_export.php b/public/admin/tools/dolibarr_export.php similarity index 100% rename from htdocs/admin/tools/dolibarr_export.php rename to public/admin/tools/dolibarr_export.php diff --git a/htdocs/admin/tools/dolibarr_import.php b/public/admin/tools/dolibarr_import.php similarity index 100% rename from htdocs/admin/tools/dolibarr_import.php rename to public/admin/tools/dolibarr_import.php diff --git a/htdocs/admin/tools/eaccelerator.php b/public/admin/tools/eaccelerator.php similarity index 100% rename from htdocs/admin/tools/eaccelerator.php rename to public/admin/tools/eaccelerator.php diff --git a/htdocs/admin/tools/export.php b/public/admin/tools/export.php similarity index 100% rename from htdocs/admin/tools/export.php rename to public/admin/tools/export.php diff --git a/htdocs/admin/tools/index.php b/public/admin/tools/index.php similarity index 100% rename from htdocs/admin/tools/index.php rename to public/admin/tools/index.php diff --git a/htdocs/admin/tools/listevents.php b/public/admin/tools/listevents.php similarity index 100% rename from htdocs/admin/tools/listevents.php rename to public/admin/tools/listevents.php diff --git a/htdocs/admin/tools/listsessions.php b/public/admin/tools/listsessions.php similarity index 100% rename from htdocs/admin/tools/listsessions.php rename to public/admin/tools/listsessions.php diff --git a/htdocs/admin/tools/purge.php b/public/admin/tools/purge.php similarity index 100% rename from htdocs/admin/tools/purge.php rename to public/admin/tools/purge.php diff --git a/htdocs/admin/tools/update.php b/public/admin/tools/update.php similarity index 100% rename from htdocs/admin/tools/update.php rename to public/admin/tools/update.php diff --git a/htdocs/admin/translation.php b/public/admin/translation.php similarity index 100% rename from htdocs/admin/translation.php rename to public/admin/translation.php diff --git a/htdocs/admin/triggers.php b/public/admin/triggers.php similarity index 100% rename from htdocs/admin/triggers.php rename to public/admin/triggers.php diff --git a/htdocs/admin/user.php b/public/admin/user.php similarity index 100% rename from htdocs/admin/user.php rename to public/admin/user.php diff --git a/htdocs/admin/websites.php b/public/admin/websites.php similarity index 100% rename from htdocs/admin/websites.php rename to public/admin/websites.php diff --git a/htdocs/admin/workflow.php b/public/admin/workflow.php similarity index 100% rename from htdocs/admin/workflow.php rename to public/admin/workflow.php diff --git a/htdocs/api/README.md b/public/api/README.md similarity index 100% rename from htdocs/api/README.md rename to public/api/README.md diff --git a/htdocs/api/admin/explorer.php b/public/api/admin/explorer.php similarity index 100% rename from htdocs/api/admin/explorer.php rename to public/api/admin/explorer.php diff --git a/htdocs/api/admin/index.php b/public/api/admin/index.php similarity index 100% rename from htdocs/api/admin/index.php rename to public/api/admin/index.php diff --git a/htdocs/api/class/api.class.php b/public/api/class/api.class.php similarity index 100% rename from htdocs/api/class/api.class.php rename to public/api/class/api.class.php diff --git a/htdocs/api/class/api_access.class.php b/public/api/class/api_access.class.php similarity index 100% rename from htdocs/api/class/api_access.class.php rename to public/api/class/api_access.class.php diff --git a/htdocs/api/class/api_dictionnarycountries.class.php b/public/api/class/api_dictionnarycountries.class.php similarity index 100% rename from htdocs/api/class/api_dictionnarycountries.class.php rename to public/api/class/api_dictionnarycountries.class.php diff --git a/htdocs/api/class/api_dictionnarytowns.class.php b/public/api/class/api_dictionnarytowns.class.php similarity index 100% rename from htdocs/api/class/api_dictionnarytowns.class.php rename to public/api/class/api_dictionnarytowns.class.php diff --git a/htdocs/api/class/api_login.class.php b/public/api/class/api_login.class.php similarity index 100% rename from htdocs/api/class/api_login.class.php rename to public/api/class/api_login.class.php diff --git a/htdocs/api/class/api_status.class.php b/public/api/class/api_status.class.php similarity index 100% rename from htdocs/api/class/api_status.class.php rename to public/api/class/api_status.class.php diff --git a/htdocs/api/class/index.html b/public/api/class/index.html similarity index 100% rename from htdocs/api/class/index.html rename to public/api/class/index.html diff --git a/htdocs/api/index.php b/public/api/index.php similarity index 100% rename from htdocs/api/index.php rename to public/api/index.php diff --git a/htdocs/asterisk/cidlookup.php b/public/asterisk/cidlookup.php similarity index 100% rename from htdocs/asterisk/cidlookup.php rename to public/asterisk/cidlookup.php diff --git a/htdocs/asterisk/index.html b/public/asterisk/index.html similarity index 100% rename from htdocs/asterisk/index.html rename to public/asterisk/index.html diff --git a/htdocs/asterisk/wrapper.php b/public/asterisk/wrapper.php similarity index 100% rename from htdocs/asterisk/wrapper.php rename to public/asterisk/wrapper.php diff --git a/htdocs/barcode/codeinit.php b/public/barcode/codeinit.php similarity index 100% rename from htdocs/barcode/codeinit.php rename to public/barcode/codeinit.php diff --git a/htdocs/barcode/index.html b/public/barcode/index.html similarity index 100% rename from htdocs/barcode/index.html rename to public/barcode/index.html diff --git a/htdocs/barcode/printsheet.php b/public/barcode/printsheet.php similarity index 100% rename from htdocs/barcode/printsheet.php rename to public/barcode/printsheet.php diff --git a/htdocs/bookmarks/admin/bookmark.php b/public/bookmarks/admin/bookmark.php similarity index 100% rename from htdocs/bookmarks/admin/bookmark.php rename to public/bookmarks/admin/bookmark.php diff --git a/htdocs/bookmarks/admin/index.html b/public/bookmarks/admin/index.html similarity index 100% rename from htdocs/bookmarks/admin/index.html rename to public/bookmarks/admin/index.html diff --git a/htdocs/bookmarks/bookmarks.lib.php b/public/bookmarks/bookmarks.lib.php similarity index 100% rename from htdocs/bookmarks/bookmarks.lib.php rename to public/bookmarks/bookmarks.lib.php diff --git a/htdocs/bookmarks/card.php b/public/bookmarks/card.php similarity index 100% rename from htdocs/bookmarks/card.php rename to public/bookmarks/card.php diff --git a/htdocs/bookmarks/class/bookmark.class.php b/public/bookmarks/class/bookmark.class.php similarity index 100% rename from htdocs/bookmarks/class/bookmark.class.php rename to public/bookmarks/class/bookmark.class.php diff --git a/htdocs/bookmarks/class/index.html b/public/bookmarks/class/index.html similarity index 100% rename from htdocs/bookmarks/class/index.html rename to public/bookmarks/class/index.html diff --git a/htdocs/bookmarks/index.html b/public/bookmarks/index.html similarity index 100% rename from htdocs/bookmarks/index.html rename to public/bookmarks/index.html diff --git a/htdocs/bookmarks/list.php b/public/bookmarks/list.php similarity index 100% rename from htdocs/bookmarks/list.php rename to public/bookmarks/list.php diff --git a/htdocs/cache.manifest b/public/cache.manifest similarity index 100% rename from htdocs/cache.manifest rename to public/cache.manifest diff --git a/htdocs/cashdesk/admin/cashdesk.php b/public/cashdesk/admin/cashdesk.php similarity index 100% rename from htdocs/cashdesk/admin/cashdesk.php rename to public/cashdesk/admin/cashdesk.php diff --git a/htdocs/cashdesk/admin/index.html b/public/cashdesk/admin/index.html similarity index 100% rename from htdocs/cashdesk/admin/index.html rename to public/cashdesk/admin/index.html diff --git a/htdocs/cashdesk/affContenu.php b/public/cashdesk/affContenu.php similarity index 100% rename from htdocs/cashdesk/affContenu.php rename to public/cashdesk/affContenu.php diff --git a/htdocs/cashdesk/affIndex.php b/public/cashdesk/affIndex.php similarity index 100% rename from htdocs/cashdesk/affIndex.php rename to public/cashdesk/affIndex.php diff --git a/htdocs/cashdesk/affPied.php b/public/cashdesk/affPied.php similarity index 100% rename from htdocs/cashdesk/affPied.php rename to public/cashdesk/affPied.php diff --git a/htdocs/cashdesk/class/Auth.class.php b/public/cashdesk/class/Auth.class.php similarity index 100% rename from htdocs/cashdesk/class/Auth.class.php rename to public/cashdesk/class/Auth.class.php diff --git a/htdocs/cashdesk/class/Facturation.class.php b/public/cashdesk/class/Facturation.class.php similarity index 100% rename from htdocs/cashdesk/class/Facturation.class.php rename to public/cashdesk/class/Facturation.class.php diff --git a/htdocs/cashdesk/class/index.html b/public/cashdesk/class/index.html similarity index 100% rename from htdocs/cashdesk/class/index.html rename to public/cashdesk/class/index.html diff --git a/htdocs/cashdesk/css/index.html b/public/cashdesk/css/index.html similarity index 100% rename from htdocs/cashdesk/css/index.html rename to public/cashdesk/css/index.html diff --git a/htdocs/cashdesk/css/style.css b/public/cashdesk/css/style.css similarity index 100% rename from htdocs/cashdesk/css/style.css rename to public/cashdesk/css/style.css diff --git a/htdocs/cashdesk/deconnexion.php b/public/cashdesk/deconnexion.php similarity index 100% rename from htdocs/cashdesk/deconnexion.php rename to public/cashdesk/deconnexion.php diff --git a/htdocs/cashdesk/facturation.php b/public/cashdesk/facturation.php similarity index 100% rename from htdocs/cashdesk/facturation.php rename to public/cashdesk/facturation.php diff --git a/htdocs/cashdesk/facturation_dhtml.php b/public/cashdesk/facturation_dhtml.php similarity index 100% rename from htdocs/cashdesk/facturation_dhtml.php rename to public/cashdesk/facturation_dhtml.php diff --git a/htdocs/cashdesk/facturation_verif.php b/public/cashdesk/facturation_verif.php similarity index 100% rename from htdocs/cashdesk/facturation_verif.php rename to public/cashdesk/facturation_verif.php diff --git a/htdocs/cashdesk/img/basket_delete.png b/public/cashdesk/img/basket_delete.png similarity index 100% rename from htdocs/cashdesk/img/basket_delete.png rename to public/cashdesk/img/basket_delete.png diff --git a/htdocs/cashdesk/img/bg_conteneur_droite.png b/public/cashdesk/img/bg_conteneur_droite.png similarity index 100% rename from htdocs/cashdesk/img/bg_conteneur_droite.png rename to public/cashdesk/img/bg_conteneur_droite.png diff --git a/htdocs/cashdesk/img/bg_conteneur_gauche.png b/public/cashdesk/img/bg_conteneur_gauche.png similarity index 100% rename from htdocs/cashdesk/img/bg_conteneur_gauche.png rename to public/cashdesk/img/bg_conteneur_gauche.png diff --git a/htdocs/cashdesk/img/bg_entete.png b/public/cashdesk/img/bg_entete.png similarity index 100% rename from htdocs/cashdesk/img/bg_entete.png rename to public/cashdesk/img/bg_entete.png diff --git a/htdocs/cashdesk/img/bg_pied.png b/public/cashdesk/img/bg_pied.png similarity index 100% rename from htdocs/cashdesk/img/bg_pied.png rename to public/cashdesk/img/bg_pied.png diff --git a/htdocs/cashdesk/img/calendrier.png b/public/cashdesk/img/calendrier.png similarity index 100% rename from htdocs/cashdesk/img/calendrier.png rename to public/cashdesk/img/calendrier.png diff --git a/htdocs/cashdesk/img/decrypted.png b/public/cashdesk/img/decrypted.png similarity index 100% rename from htdocs/cashdesk/img/decrypted.png rename to public/cashdesk/img/decrypted.png diff --git a/htdocs/cashdesk/img/gescom.png b/public/cashdesk/img/gescom.png similarity index 100% rename from htdocs/cashdesk/img/gescom.png rename to public/cashdesk/img/gescom.png diff --git a/htdocs/cashdesk/img/index.html b/public/cashdesk/img/index.html similarity index 100% rename from htdocs/cashdesk/img/index.html rename to public/cashdesk/img/index.html diff --git a/htdocs/cashdesk/img/lock.png b/public/cashdesk/img/lock.png similarity index 100% rename from htdocs/cashdesk/img/lock.png rename to public/cashdesk/img/lock.png diff --git a/htdocs/cashdesk/img/login.png b/public/cashdesk/img/login.png similarity index 100% rename from htdocs/cashdesk/img/login.png rename to public/cashdesk/img/login.png diff --git a/htdocs/cashdesk/img/new.png b/public/cashdesk/img/new.png similarity index 100% rename from htdocs/cashdesk/img/new.png rename to public/cashdesk/img/new.png diff --git a/htdocs/cashdesk/include/environnement.php b/public/cashdesk/include/environnement.php similarity index 100% rename from htdocs/cashdesk/include/environnement.php rename to public/cashdesk/include/environnement.php diff --git a/htdocs/cashdesk/include/index.html b/public/cashdesk/include/index.html similarity index 100% rename from htdocs/cashdesk/include/index.html rename to public/cashdesk/include/index.html diff --git a/htdocs/cashdesk/include/keypad.php b/public/cashdesk/include/keypad.php similarity index 100% rename from htdocs/cashdesk/include/keypad.php rename to public/cashdesk/include/keypad.php diff --git a/htdocs/cashdesk/index.php b/public/cashdesk/index.php similarity index 100% rename from htdocs/cashdesk/index.php rename to public/cashdesk/index.php diff --git a/htdocs/cashdesk/index_verif.php b/public/cashdesk/index_verif.php similarity index 100% rename from htdocs/cashdesk/index_verif.php rename to public/cashdesk/index_verif.php diff --git a/htdocs/cashdesk/javascript/dhtml.js b/public/cashdesk/javascript/dhtml.js similarity index 100% rename from htdocs/cashdesk/javascript/dhtml.js rename to public/cashdesk/javascript/dhtml.js diff --git a/htdocs/cashdesk/javascript/facturation1.js b/public/cashdesk/javascript/facturation1.js similarity index 100% rename from htdocs/cashdesk/javascript/facturation1.js rename to public/cashdesk/javascript/facturation1.js diff --git a/htdocs/cashdesk/javascript/index.html b/public/cashdesk/javascript/index.html similarity index 100% rename from htdocs/cashdesk/javascript/index.html rename to public/cashdesk/javascript/index.html diff --git a/htdocs/cashdesk/javascript/keypad.js b/public/cashdesk/javascript/keypad.js similarity index 100% rename from htdocs/cashdesk/javascript/keypad.js rename to public/cashdesk/javascript/keypad.js diff --git a/htdocs/cashdesk/tpl/facturation1.tpl.php b/public/cashdesk/tpl/facturation1.tpl.php similarity index 100% rename from htdocs/cashdesk/tpl/facturation1.tpl.php rename to public/cashdesk/tpl/facturation1.tpl.php diff --git a/htdocs/cashdesk/tpl/index.html b/public/cashdesk/tpl/index.html similarity index 100% rename from htdocs/cashdesk/tpl/index.html rename to public/cashdesk/tpl/index.html diff --git a/htdocs/cashdesk/tpl/liste_articles.tpl.php b/public/cashdesk/tpl/liste_articles.tpl.php similarity index 100% rename from htdocs/cashdesk/tpl/liste_articles.tpl.php rename to public/cashdesk/tpl/liste_articles.tpl.php diff --git a/htdocs/cashdesk/tpl/menu.tpl.php b/public/cashdesk/tpl/menu.tpl.php similarity index 100% rename from htdocs/cashdesk/tpl/menu.tpl.php rename to public/cashdesk/tpl/menu.tpl.php diff --git a/htdocs/cashdesk/tpl/ticket.tpl.php b/public/cashdesk/tpl/ticket.tpl.php similarity index 100% rename from htdocs/cashdesk/tpl/ticket.tpl.php rename to public/cashdesk/tpl/ticket.tpl.php diff --git a/htdocs/cashdesk/tpl/validation1.tpl.php b/public/cashdesk/tpl/validation1.tpl.php similarity index 100% rename from htdocs/cashdesk/tpl/validation1.tpl.php rename to public/cashdesk/tpl/validation1.tpl.php diff --git a/htdocs/cashdesk/tpl/validation2.tpl.php b/public/cashdesk/tpl/validation2.tpl.php similarity index 100% rename from htdocs/cashdesk/tpl/validation2.tpl.php rename to public/cashdesk/tpl/validation2.tpl.php diff --git a/htdocs/cashdesk/validation.php b/public/cashdesk/validation.php similarity index 100% rename from htdocs/cashdesk/validation.php rename to public/cashdesk/validation.php diff --git a/htdocs/cashdesk/validation_ok.php b/public/cashdesk/validation_ok.php similarity index 100% rename from htdocs/cashdesk/validation_ok.php rename to public/cashdesk/validation_ok.php diff --git a/htdocs/cashdesk/validation_ticket.php b/public/cashdesk/validation_ticket.php similarity index 100% rename from htdocs/cashdesk/validation_ticket.php rename to public/cashdesk/validation_ticket.php diff --git a/htdocs/cashdesk/validation_verif.php b/public/cashdesk/validation_verif.php similarity index 100% rename from htdocs/cashdesk/validation_verif.php rename to public/cashdesk/validation_verif.php diff --git a/htdocs/categories/admin/categorie.php b/public/categories/admin/categorie.php similarity index 100% rename from htdocs/categories/admin/categorie.php rename to public/categories/admin/categorie.php diff --git a/htdocs/categories/admin/categorie_extrafields.php b/public/categories/admin/categorie_extrafields.php similarity index 100% rename from htdocs/categories/admin/categorie_extrafields.php rename to public/categories/admin/categorie_extrafields.php diff --git a/htdocs/categories/admin/index.html b/public/categories/admin/index.html similarity index 100% rename from htdocs/categories/admin/index.html rename to public/categories/admin/index.html diff --git a/htdocs/categories/card.php b/public/categories/card.php similarity index 100% rename from htdocs/categories/card.php rename to public/categories/card.php diff --git a/htdocs/categories/class/api_categories.class.php b/public/categories/class/api_categories.class.php similarity index 100% rename from htdocs/categories/class/api_categories.class.php rename to public/categories/class/api_categories.class.php diff --git a/htdocs/categories/class/api_deprecated_category.class.php b/public/categories/class/api_deprecated_category.class.php similarity index 100% rename from htdocs/categories/class/api_deprecated_category.class.php rename to public/categories/class/api_deprecated_category.class.php diff --git a/htdocs/categories/class/categorie.class.php b/public/categories/class/categorie.class.php similarity index 100% rename from htdocs/categories/class/categorie.class.php rename to public/categories/class/categorie.class.php diff --git a/htdocs/categories/class/index.html b/public/categories/class/index.html similarity index 100% rename from htdocs/categories/class/index.html rename to public/categories/class/index.html diff --git a/htdocs/categories/edit.php b/public/categories/edit.php similarity index 100% rename from htdocs/categories/edit.php rename to public/categories/edit.php diff --git a/htdocs/categories/index.php b/public/categories/index.php similarity index 100% rename from htdocs/categories/index.php rename to public/categories/index.php diff --git a/htdocs/categories/photos.php b/public/categories/photos.php similarity index 100% rename from htdocs/categories/photos.php rename to public/categories/photos.php diff --git a/htdocs/categories/traduction.php b/public/categories/traduction.php similarity index 100% rename from htdocs/categories/traduction.php rename to public/categories/traduction.php diff --git a/htdocs/categories/viewcat.php b/public/categories/viewcat.php similarity index 100% rename from htdocs/categories/viewcat.php rename to public/categories/viewcat.php diff --git a/htdocs/comm/action/card.php b/public/comm/action/card.php similarity index 100% rename from htdocs/comm/action/card.php rename to public/comm/action/card.php diff --git a/htdocs/comm/action/class/actioncomm.class.php b/public/comm/action/class/actioncomm.class.php similarity index 100% rename from htdocs/comm/action/class/actioncomm.class.php rename to public/comm/action/class/actioncomm.class.php diff --git a/htdocs/comm/action/class/api_agendaevents.class.php b/public/comm/action/class/api_agendaevents.class.php similarity index 100% rename from htdocs/comm/action/class/api_agendaevents.class.php rename to public/comm/action/class/api_agendaevents.class.php diff --git a/htdocs/comm/action/class/cactioncomm.class.php b/public/comm/action/class/cactioncomm.class.php similarity index 100% rename from htdocs/comm/action/class/cactioncomm.class.php rename to public/comm/action/class/cactioncomm.class.php diff --git a/htdocs/comm/action/class/ical.class.php b/public/comm/action/class/ical.class.php similarity index 100% rename from htdocs/comm/action/class/ical.class.php rename to public/comm/action/class/ical.class.php diff --git a/htdocs/comm/action/class/index.html b/public/comm/action/class/index.html similarity index 100% rename from htdocs/comm/action/class/index.html rename to public/comm/action/class/index.html diff --git a/htdocs/comm/action/document.php b/public/comm/action/document.php similarity index 100% rename from htdocs/comm/action/document.php rename to public/comm/action/document.php diff --git a/htdocs/comm/action/index.php b/public/comm/action/index.php similarity index 100% rename from htdocs/comm/action/index.php rename to public/comm/action/index.php diff --git a/htdocs/comm/action/info.php b/public/comm/action/info.php similarity index 100% rename from htdocs/comm/action/info.php rename to public/comm/action/info.php diff --git a/htdocs/comm/action/listactions.php b/public/comm/action/listactions.php similarity index 100% rename from htdocs/comm/action/listactions.php rename to public/comm/action/listactions.php diff --git a/htdocs/comm/action/pertype.php b/public/comm/action/pertype.php similarity index 100% rename from htdocs/comm/action/pertype.php rename to public/comm/action/pertype.php diff --git a/htdocs/comm/action/peruser.php b/public/comm/action/peruser.php similarity index 100% rename from htdocs/comm/action/peruser.php rename to public/comm/action/peruser.php diff --git a/htdocs/comm/action/rapport/index.php b/public/comm/action/rapport/index.php similarity index 100% rename from htdocs/comm/action/rapport/index.php rename to public/comm/action/rapport/index.php diff --git a/htdocs/comm/address.php b/public/comm/address.php similarity index 100% rename from htdocs/comm/address.php rename to public/comm/address.php diff --git a/htdocs/comm/admin/index.html b/public/comm/admin/index.html similarity index 100% rename from htdocs/comm/admin/index.html rename to public/comm/admin/index.html diff --git a/htdocs/comm/admin/propal_extrafields.php b/public/comm/admin/propal_extrafields.php similarity index 100% rename from htdocs/comm/admin/propal_extrafields.php rename to public/comm/admin/propal_extrafields.php diff --git a/htdocs/comm/admin/propaldet_extrafields.php b/public/comm/admin/propaldet_extrafields.php similarity index 100% rename from htdocs/comm/admin/propaldet_extrafields.php rename to public/comm/admin/propaldet_extrafields.php diff --git a/htdocs/comm/card.php b/public/comm/card.php similarity index 100% rename from htdocs/comm/card.php rename to public/comm/card.php diff --git a/htdocs/comm/contact.php b/public/comm/contact.php similarity index 100% rename from htdocs/comm/contact.php rename to public/comm/contact.php diff --git a/htdocs/comm/index.php b/public/comm/index.php similarity index 100% rename from htdocs/comm/index.php rename to public/comm/index.php diff --git a/htdocs/comm/mailing/advtargetemailing.php b/public/comm/mailing/advtargetemailing.php similarity index 100% rename from htdocs/comm/mailing/advtargetemailing.php rename to public/comm/mailing/advtargetemailing.php diff --git a/htdocs/comm/mailing/card.php b/public/comm/mailing/card.php similarity index 100% rename from htdocs/comm/mailing/card.php rename to public/comm/mailing/card.php diff --git a/htdocs/comm/mailing/cibles.php b/public/comm/mailing/cibles.php similarity index 100% rename from htdocs/comm/mailing/cibles.php rename to public/comm/mailing/cibles.php diff --git a/htdocs/comm/mailing/class/advtargetemailing.class.php b/public/comm/mailing/class/advtargetemailing.class.php similarity index 100% rename from htdocs/comm/mailing/class/advtargetemailing.class.php rename to public/comm/mailing/class/advtargetemailing.class.php diff --git a/htdocs/comm/mailing/class/html.formadvtargetemailing.class.php b/public/comm/mailing/class/html.formadvtargetemailing.class.php similarity index 100% rename from htdocs/comm/mailing/class/html.formadvtargetemailing.class.php rename to public/comm/mailing/class/html.formadvtargetemailing.class.php diff --git a/htdocs/comm/mailing/class/index.html b/public/comm/mailing/class/index.html similarity index 100% rename from htdocs/comm/mailing/class/index.html rename to public/comm/mailing/class/index.html diff --git a/htdocs/comm/mailing/class/mailing.class.php b/public/comm/mailing/class/mailing.class.php similarity index 100% rename from htdocs/comm/mailing/class/mailing.class.php rename to public/comm/mailing/class/mailing.class.php diff --git a/htdocs/comm/mailing/index.php b/public/comm/mailing/index.php similarity index 100% rename from htdocs/comm/mailing/index.php rename to public/comm/mailing/index.php diff --git a/htdocs/comm/mailing/info.php b/public/comm/mailing/info.php similarity index 100% rename from htdocs/comm/mailing/info.php rename to public/comm/mailing/info.php diff --git a/htdocs/comm/mailing/list.php b/public/comm/mailing/list.php similarity index 100% rename from htdocs/comm/mailing/list.php rename to public/comm/mailing/list.php diff --git a/htdocs/comm/multiprix.php b/public/comm/multiprix.php similarity index 100% rename from htdocs/comm/multiprix.php rename to public/comm/multiprix.php diff --git a/htdocs/comm/propal/apercu.php b/public/comm/propal/apercu.php similarity index 100% rename from htdocs/comm/propal/apercu.php rename to public/comm/propal/apercu.php diff --git a/htdocs/comm/propal/card.php b/public/comm/propal/card.php similarity index 100% rename from htdocs/comm/propal/card.php rename to public/comm/propal/card.php diff --git a/htdocs/comm/propal/class/api_proposals.class.php b/public/comm/propal/class/api_proposals.class.php similarity index 100% rename from htdocs/comm/propal/class/api_proposals.class.php rename to public/comm/propal/class/api_proposals.class.php diff --git a/htdocs/comm/propal/class/index.html b/public/comm/propal/class/index.html similarity index 100% rename from htdocs/comm/propal/class/index.html rename to public/comm/propal/class/index.html diff --git a/htdocs/comm/propal/class/propal.class.php b/public/comm/propal/class/propal.class.php similarity index 100% rename from htdocs/comm/propal/class/propal.class.php rename to public/comm/propal/class/propal.class.php diff --git a/htdocs/comm/propal/class/propalestats.class.php b/public/comm/propal/class/propalestats.class.php similarity index 100% rename from htdocs/comm/propal/class/propalestats.class.php rename to public/comm/propal/class/propalestats.class.php diff --git a/htdocs/comm/propal/contact.php b/public/comm/propal/contact.php similarity index 100% rename from htdocs/comm/propal/contact.php rename to public/comm/propal/contact.php diff --git a/htdocs/comm/propal/document.php b/public/comm/propal/document.php similarity index 100% rename from htdocs/comm/propal/document.php rename to public/comm/propal/document.php diff --git a/htdocs/comm/propal/index.php b/public/comm/propal/index.php similarity index 100% rename from htdocs/comm/propal/index.php rename to public/comm/propal/index.php diff --git a/htdocs/comm/propal/info.php b/public/comm/propal/info.php similarity index 100% rename from htdocs/comm/propal/info.php rename to public/comm/propal/info.php diff --git a/htdocs/comm/propal/list.php b/public/comm/propal/list.php similarity index 100% rename from htdocs/comm/propal/list.php rename to public/comm/propal/list.php diff --git a/htdocs/comm/propal/note.php b/public/comm/propal/note.php similarity index 100% rename from htdocs/comm/propal/note.php rename to public/comm/propal/note.php diff --git a/htdocs/comm/propal/stats/index.php b/public/comm/propal/stats/index.php similarity index 100% rename from htdocs/comm/propal/stats/index.php rename to public/comm/propal/stats/index.php diff --git a/htdocs/comm/propal/tpl/index.html b/public/comm/propal/tpl/index.html similarity index 100% rename from htdocs/comm/propal/tpl/index.html rename to public/comm/propal/tpl/index.html diff --git a/htdocs/comm/propal/tpl/linkedobjectblock.tpl.php b/public/comm/propal/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/comm/propal/tpl/linkedobjectblock.tpl.php rename to public/comm/propal/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/comm/prospect/index.php b/public/comm/prospect/index.php similarity index 100% rename from htdocs/comm/prospect/index.php rename to public/comm/prospect/index.php diff --git a/htdocs/comm/prospect/recap-prospect.php b/public/comm/prospect/recap-prospect.php similarity index 100% rename from htdocs/comm/prospect/recap-prospect.php rename to public/comm/prospect/recap-prospect.php diff --git a/htdocs/comm/recap-client.php b/public/comm/recap-client.php similarity index 100% rename from htdocs/comm/recap-client.php rename to public/comm/recap-client.php diff --git a/htdocs/comm/remise.php b/public/comm/remise.php similarity index 100% rename from htdocs/comm/remise.php rename to public/comm/remise.php diff --git a/htdocs/comm/remx.php b/public/comm/remx.php similarity index 100% rename from htdocs/comm/remx.php rename to public/comm/remx.php diff --git a/htdocs/commande/apercu.php b/public/commande/apercu.php similarity index 100% rename from htdocs/commande/apercu.php rename to public/commande/apercu.php diff --git a/htdocs/commande/card.php b/public/commande/card.php similarity index 100% rename from htdocs/commande/card.php rename to public/commande/card.php diff --git a/htdocs/commande/class/api_deprecated_commande.class.php b/public/commande/class/api_deprecated_commande.class.php similarity index 100% rename from htdocs/commande/class/api_deprecated_commande.class.php rename to public/commande/class/api_deprecated_commande.class.php diff --git a/htdocs/commande/class/api_orders.class.php b/public/commande/class/api_orders.class.php similarity index 100% rename from htdocs/commande/class/api_orders.class.php rename to public/commande/class/api_orders.class.php diff --git a/htdocs/commande/class/commande.class.php b/public/commande/class/commande.class.php similarity index 100% rename from htdocs/commande/class/commande.class.php rename to public/commande/class/commande.class.php diff --git a/htdocs/commande/class/commandestats.class.php b/public/commande/class/commandestats.class.php similarity index 100% rename from htdocs/commande/class/commandestats.class.php rename to public/commande/class/commandestats.class.php diff --git a/htdocs/commande/class/index.html b/public/commande/class/index.html similarity index 100% rename from htdocs/commande/class/index.html rename to public/commande/class/index.html diff --git a/htdocs/commande/contact.php b/public/commande/contact.php similarity index 100% rename from htdocs/commande/contact.php rename to public/commande/contact.php diff --git a/htdocs/commande/customer.php b/public/commande/customer.php similarity index 100% rename from htdocs/commande/customer.php rename to public/commande/customer.php diff --git a/htdocs/commande/document.php b/public/commande/document.php similarity index 100% rename from htdocs/commande/document.php rename to public/commande/document.php diff --git a/htdocs/commande/index.php b/public/commande/index.php similarity index 100% rename from htdocs/commande/index.php rename to public/commande/index.php diff --git a/htdocs/commande/info.php b/public/commande/info.php similarity index 100% rename from htdocs/commande/info.php rename to public/commande/info.php diff --git a/htdocs/commande/list.php b/public/commande/list.php similarity index 100% rename from htdocs/commande/list.php rename to public/commande/list.php diff --git a/htdocs/commande/note.php b/public/commande/note.php similarity index 100% rename from htdocs/commande/note.php rename to public/commande/note.php diff --git a/htdocs/commande/orderstoinvoice.php b/public/commande/orderstoinvoice.php similarity index 100% rename from htdocs/commande/orderstoinvoice.php rename to public/commande/orderstoinvoice.php diff --git a/htdocs/commande/stats/index.php b/public/commande/stats/index.php similarity index 100% rename from htdocs/commande/stats/index.php rename to public/commande/stats/index.php diff --git a/htdocs/commande/tpl/index.html b/public/commande/tpl/index.html similarity index 100% rename from htdocs/commande/tpl/index.html rename to public/commande/tpl/index.html diff --git a/htdocs/commande/tpl/linkedobjectblock.tpl.php b/public/commande/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/commande/tpl/linkedobjectblock.tpl.php rename to public/commande/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/compta/ajaxpayment.php b/public/compta/ajaxpayment.php similarity index 100% rename from htdocs/compta/ajaxpayment.php rename to public/compta/ajaxpayment.php diff --git a/htdocs/compta/bank/annuel.php b/public/compta/bank/annuel.php similarity index 100% rename from htdocs/compta/bank/annuel.php rename to public/compta/bank/annuel.php diff --git a/htdocs/compta/bank/bankentries.php b/public/compta/bank/bankentries.php similarity index 100% rename from htdocs/compta/bank/bankentries.php rename to public/compta/bank/bankentries.php diff --git a/htdocs/compta/bank/bilan.php b/public/compta/bank/bilan.php similarity index 100% rename from htdocs/compta/bank/bilan.php rename to public/compta/bank/bilan.php diff --git a/htdocs/compta/bank/budget.php b/public/compta/bank/budget.php similarity index 100% rename from htdocs/compta/bank/budget.php rename to public/compta/bank/budget.php diff --git a/htdocs/compta/bank/card.php b/public/compta/bank/card.php similarity index 100% rename from htdocs/compta/bank/card.php rename to public/compta/bank/card.php diff --git a/htdocs/compta/bank/categ.php b/public/compta/bank/categ.php similarity index 100% rename from htdocs/compta/bank/categ.php rename to public/compta/bank/categ.php diff --git a/htdocs/compta/bank/class/account.class.php b/public/compta/bank/class/account.class.php similarity index 100% rename from htdocs/compta/bank/class/account.class.php rename to public/compta/bank/class/account.class.php diff --git a/htdocs/compta/bank/class/api_bankaccounts.class.php b/public/compta/bank/class/api_bankaccounts.class.php similarity index 100% rename from htdocs/compta/bank/class/api_bankaccounts.class.php rename to public/compta/bank/class/api_bankaccounts.class.php diff --git a/htdocs/compta/bank/class/bankcateg.class.php b/public/compta/bank/class/bankcateg.class.php similarity index 100% rename from htdocs/compta/bank/class/bankcateg.class.php rename to public/compta/bank/class/bankcateg.class.php diff --git a/htdocs/compta/bank/class/index.html b/public/compta/bank/class/index.html similarity index 100% rename from htdocs/compta/bank/class/index.html rename to public/compta/bank/class/index.html diff --git a/htdocs/compta/bank/document.php b/public/compta/bank/document.php similarity index 100% rename from htdocs/compta/bank/document.php rename to public/compta/bank/document.php diff --git a/htdocs/compta/bank/graph.php b/public/compta/bank/graph.php similarity index 100% rename from htdocs/compta/bank/graph.php rename to public/compta/bank/graph.php diff --git a/htdocs/compta/bank/index.php b/public/compta/bank/index.php similarity index 100% rename from htdocs/compta/bank/index.php rename to public/compta/bank/index.php diff --git a/htdocs/compta/bank/info.php b/public/compta/bank/info.php similarity index 100% rename from htdocs/compta/bank/info.php rename to public/compta/bank/info.php diff --git a/htdocs/compta/bank/ligne.php b/public/compta/bank/ligne.php similarity index 100% rename from htdocs/compta/bank/ligne.php rename to public/compta/bank/ligne.php diff --git a/htdocs/compta/bank/releve.php b/public/compta/bank/releve.php similarity index 100% rename from htdocs/compta/bank/releve.php rename to public/compta/bank/releve.php diff --git a/htdocs/compta/bank/transfer.php b/public/compta/bank/transfer.php similarity index 100% rename from htdocs/compta/bank/transfer.php rename to public/compta/bank/transfer.php diff --git a/htdocs/compta/bank/treso.php b/public/compta/bank/treso.php similarity index 100% rename from htdocs/compta/bank/treso.php rename to public/compta/bank/treso.php diff --git a/htdocs/compta/charges/index.php b/public/compta/charges/index.php similarity index 100% rename from htdocs/compta/charges/index.php rename to public/compta/charges/index.php diff --git a/htdocs/compta/clients.php b/public/compta/clients.php similarity index 100% rename from htdocs/compta/clients.php rename to public/compta/clients.php diff --git a/htdocs/compta/deplacement/card.php b/public/compta/deplacement/card.php similarity index 100% rename from htdocs/compta/deplacement/card.php rename to public/compta/deplacement/card.php diff --git a/htdocs/compta/deplacement/class/deplacement.class.php b/public/compta/deplacement/class/deplacement.class.php similarity index 100% rename from htdocs/compta/deplacement/class/deplacement.class.php rename to public/compta/deplacement/class/deplacement.class.php diff --git a/htdocs/compta/deplacement/class/deplacementstats.class.php b/public/compta/deplacement/class/deplacementstats.class.php similarity index 100% rename from htdocs/compta/deplacement/class/deplacementstats.class.php rename to public/compta/deplacement/class/deplacementstats.class.php diff --git a/htdocs/compta/deplacement/class/index.html b/public/compta/deplacement/class/index.html similarity index 100% rename from htdocs/compta/deplacement/class/index.html rename to public/compta/deplacement/class/index.html diff --git a/htdocs/compta/deplacement/document.php b/public/compta/deplacement/document.php similarity index 100% rename from htdocs/compta/deplacement/document.php rename to public/compta/deplacement/document.php diff --git a/htdocs/compta/deplacement/index.php b/public/compta/deplacement/index.php similarity index 100% rename from htdocs/compta/deplacement/index.php rename to public/compta/deplacement/index.php diff --git a/htdocs/compta/deplacement/info.php b/public/compta/deplacement/info.php similarity index 100% rename from htdocs/compta/deplacement/info.php rename to public/compta/deplacement/info.php diff --git a/htdocs/compta/deplacement/list.php b/public/compta/deplacement/list.php similarity index 100% rename from htdocs/compta/deplacement/list.php rename to public/compta/deplacement/list.php diff --git a/htdocs/compta/deplacement/stats/index.php b/public/compta/deplacement/stats/index.php similarity index 100% rename from htdocs/compta/deplacement/stats/index.php rename to public/compta/deplacement/stats/index.php diff --git a/htdocs/compta/facture.php b/public/compta/facture.php similarity index 100% rename from htdocs/compta/facture.php rename to public/compta/facture.php diff --git a/htdocs/compta/facture/admin/facture_cust_extrafields.php b/public/compta/facture/admin/facture_cust_extrafields.php similarity index 100% rename from htdocs/compta/facture/admin/facture_cust_extrafields.php rename to public/compta/facture/admin/facture_cust_extrafields.php diff --git a/htdocs/compta/facture/admin/facturedet_cust_extrafields.php b/public/compta/facture/admin/facturedet_cust_extrafields.php similarity index 100% rename from htdocs/compta/facture/admin/facturedet_cust_extrafields.php rename to public/compta/facture/admin/facturedet_cust_extrafields.php diff --git a/htdocs/compta/facture/admin/index.html b/public/compta/facture/admin/index.html similarity index 100% rename from htdocs/compta/facture/admin/index.html rename to public/compta/facture/admin/index.html diff --git a/htdocs/compta/facture/apercu.php b/public/compta/facture/apercu.php similarity index 100% rename from htdocs/compta/facture/apercu.php rename to public/compta/facture/apercu.php diff --git a/htdocs/compta/facture/class/api_deprecated_invoice.class.php b/public/compta/facture/class/api_deprecated_invoice.class.php similarity index 100% rename from htdocs/compta/facture/class/api_deprecated_invoice.class.php rename to public/compta/facture/class/api_deprecated_invoice.class.php diff --git a/htdocs/compta/facture/class/api_invoices.class.php b/public/compta/facture/class/api_invoices.class.php similarity index 100% rename from htdocs/compta/facture/class/api_invoices.class.php rename to public/compta/facture/class/api_invoices.class.php diff --git a/htdocs/compta/facture/class/facture-rec.class.php b/public/compta/facture/class/facture-rec.class.php similarity index 100% rename from htdocs/compta/facture/class/facture-rec.class.php rename to public/compta/facture/class/facture-rec.class.php diff --git a/htdocs/compta/facture/class/facture.class.php b/public/compta/facture/class/facture.class.php similarity index 100% rename from htdocs/compta/facture/class/facture.class.php rename to public/compta/facture/class/facture.class.php diff --git a/htdocs/compta/facture/class/facturestats.class.php b/public/compta/facture/class/facturestats.class.php similarity index 100% rename from htdocs/compta/facture/class/facturestats.class.php rename to public/compta/facture/class/facturestats.class.php diff --git a/htdocs/compta/facture/class/index.html b/public/compta/facture/class/index.html similarity index 100% rename from htdocs/compta/facture/class/index.html rename to public/compta/facture/class/index.html diff --git a/htdocs/compta/facture/class/paymentterm.class.php b/public/compta/facture/class/paymentterm.class.php similarity index 100% rename from htdocs/compta/facture/class/paymentterm.class.php rename to public/compta/facture/class/paymentterm.class.php diff --git a/htdocs/compta/facture/contact.php b/public/compta/facture/contact.php similarity index 100% rename from htdocs/compta/facture/contact.php rename to public/compta/facture/contact.php diff --git a/htdocs/compta/facture/document.php b/public/compta/facture/document.php similarity index 100% rename from htdocs/compta/facture/document.php rename to public/compta/facture/document.php diff --git a/htdocs/compta/facture/fiche-rec.php b/public/compta/facture/fiche-rec.php similarity index 100% rename from htdocs/compta/facture/fiche-rec.php rename to public/compta/facture/fiche-rec.php diff --git a/htdocs/compta/facture/index.html b/public/compta/facture/index.html similarity index 100% rename from htdocs/compta/facture/index.html rename to public/compta/facture/index.html diff --git a/htdocs/compta/facture/info.php b/public/compta/facture/info.php similarity index 100% rename from htdocs/compta/facture/info.php rename to public/compta/facture/info.php diff --git a/htdocs/compta/facture/list.php b/public/compta/facture/list.php similarity index 100% rename from htdocs/compta/facture/list.php rename to public/compta/facture/list.php diff --git a/htdocs/compta/facture/note.php b/public/compta/facture/note.php similarity index 100% rename from htdocs/compta/facture/note.php rename to public/compta/facture/note.php diff --git a/htdocs/compta/facture/prelevement.php b/public/compta/facture/prelevement.php similarity index 100% rename from htdocs/compta/facture/prelevement.php rename to public/compta/facture/prelevement.php diff --git a/htdocs/compta/facture/stats/index.php b/public/compta/facture/stats/index.php similarity index 100% rename from htdocs/compta/facture/stats/index.php rename to public/compta/facture/stats/index.php diff --git a/htdocs/compta/facture/tpl/index.html b/public/compta/facture/tpl/index.html similarity index 100% rename from htdocs/compta/facture/tpl/index.html rename to public/compta/facture/tpl/index.html diff --git a/htdocs/compta/facture/tpl/linkedobjectblock.tpl.php b/public/compta/facture/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/compta/facture/tpl/linkedobjectblock.tpl.php rename to public/compta/facture/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/compta/facture/tpl/linkedobjectblockForRec.tpl.php b/public/compta/facture/tpl/linkedobjectblockForRec.tpl.php similarity index 100% rename from htdocs/compta/facture/tpl/linkedobjectblockForRec.tpl.php rename to public/compta/facture/tpl/linkedobjectblockForRec.tpl.php diff --git a/htdocs/compta/index.php b/public/compta/index.php similarity index 100% rename from htdocs/compta/index.php rename to public/compta/index.php diff --git a/htdocs/compta/journal/index.html b/public/compta/journal/index.html similarity index 100% rename from htdocs/compta/journal/index.html rename to public/compta/journal/index.html diff --git a/htdocs/compta/journal/purchasesjournal.php b/public/compta/journal/purchasesjournal.php similarity index 100% rename from htdocs/compta/journal/purchasesjournal.php rename to public/compta/journal/purchasesjournal.php diff --git a/htdocs/compta/journal/sellsjournal.php b/public/compta/journal/sellsjournal.php similarity index 100% rename from htdocs/compta/journal/sellsjournal.php rename to public/compta/journal/sellsjournal.php diff --git a/htdocs/compta/localtax/card.php b/public/compta/localtax/card.php similarity index 100% rename from htdocs/compta/localtax/card.php rename to public/compta/localtax/card.php diff --git a/htdocs/compta/localtax/class/index.html b/public/compta/localtax/class/index.html similarity index 100% rename from htdocs/compta/localtax/class/index.html rename to public/compta/localtax/class/index.html diff --git a/htdocs/compta/localtax/class/localtax.class.php b/public/compta/localtax/class/localtax.class.php similarity index 100% rename from htdocs/compta/localtax/class/localtax.class.php rename to public/compta/localtax/class/localtax.class.php diff --git a/htdocs/compta/localtax/clients.php b/public/compta/localtax/clients.php similarity index 100% rename from htdocs/compta/localtax/clients.php rename to public/compta/localtax/clients.php diff --git a/htdocs/compta/localtax/index.php b/public/compta/localtax/index.php similarity index 100% rename from htdocs/compta/localtax/index.php rename to public/compta/localtax/index.php diff --git a/htdocs/compta/localtax/quadri_detail.php b/public/compta/localtax/quadri_detail.php similarity index 100% rename from htdocs/compta/localtax/quadri_detail.php rename to public/compta/localtax/quadri_detail.php diff --git a/htdocs/compta/localtax/reglement.php b/public/compta/localtax/reglement.php similarity index 100% rename from htdocs/compta/localtax/reglement.php rename to public/compta/localtax/reglement.php diff --git a/htdocs/compta/paiement.php b/public/compta/paiement.php similarity index 100% rename from htdocs/compta/paiement.php rename to public/compta/paiement.php diff --git a/htdocs/compta/paiement/avalider.php b/public/compta/paiement/avalider.php similarity index 100% rename from htdocs/compta/paiement/avalider.php rename to public/compta/paiement/avalider.php diff --git a/htdocs/compta/paiement/card.php b/public/compta/paiement/card.php similarity index 100% rename from htdocs/compta/paiement/card.php rename to public/compta/paiement/card.php diff --git a/htdocs/compta/paiement/cheque/card.php b/public/compta/paiement/cheque/card.php similarity index 100% rename from htdocs/compta/paiement/cheque/card.php rename to public/compta/paiement/cheque/card.php diff --git a/htdocs/compta/paiement/cheque/class/index.html b/public/compta/paiement/cheque/class/index.html similarity index 100% rename from htdocs/compta/paiement/cheque/class/index.html rename to public/compta/paiement/cheque/class/index.html diff --git a/htdocs/compta/paiement/cheque/class/remisecheque.class.php b/public/compta/paiement/cheque/class/remisecheque.class.php similarity index 100% rename from htdocs/compta/paiement/cheque/class/remisecheque.class.php rename to public/compta/paiement/cheque/class/remisecheque.class.php diff --git a/htdocs/compta/paiement/cheque/index.php b/public/compta/paiement/cheque/index.php similarity index 100% rename from htdocs/compta/paiement/cheque/index.php rename to public/compta/paiement/cheque/index.php diff --git a/htdocs/compta/paiement/cheque/list.php b/public/compta/paiement/cheque/list.php similarity index 100% rename from htdocs/compta/paiement/cheque/list.php rename to public/compta/paiement/cheque/list.php diff --git a/htdocs/compta/paiement/class/cpaiement.class.php b/public/compta/paiement/class/cpaiement.class.php similarity index 100% rename from htdocs/compta/paiement/class/cpaiement.class.php rename to public/compta/paiement/class/cpaiement.class.php diff --git a/htdocs/compta/paiement/class/index.html b/public/compta/paiement/class/index.html similarity index 100% rename from htdocs/compta/paiement/class/index.html rename to public/compta/paiement/class/index.html diff --git a/htdocs/compta/paiement/class/paiement.class.php b/public/compta/paiement/class/paiement.class.php similarity index 100% rename from htdocs/compta/paiement/class/paiement.class.php rename to public/compta/paiement/class/paiement.class.php diff --git a/htdocs/compta/paiement/index.php b/public/compta/paiement/index.php similarity index 100% rename from htdocs/compta/paiement/index.php rename to public/compta/paiement/index.php diff --git a/htdocs/compta/paiement/info.php b/public/compta/paiement/info.php similarity index 100% rename from htdocs/compta/paiement/info.php rename to public/compta/paiement/info.php diff --git a/htdocs/compta/paiement/list.php b/public/compta/paiement/list.php similarity index 100% rename from htdocs/compta/paiement/list.php rename to public/compta/paiement/list.php diff --git a/htdocs/compta/paiement/rapport.php b/public/compta/paiement/rapport.php similarity index 100% rename from htdocs/compta/paiement/rapport.php rename to public/compta/paiement/rapport.php diff --git a/htdocs/compta/paiement_charge.php b/public/compta/paiement_charge.php similarity index 100% rename from htdocs/compta/paiement_charge.php rename to public/compta/paiement_charge.php diff --git a/htdocs/compta/payment_sc/card.php b/public/compta/payment_sc/card.php similarity index 100% rename from htdocs/compta/payment_sc/card.php rename to public/compta/payment_sc/card.php diff --git a/htdocs/compta/payment_sc/index.html b/public/compta/payment_sc/index.html similarity index 100% rename from htdocs/compta/payment_sc/index.html rename to public/compta/payment_sc/index.html diff --git a/htdocs/compta/prelevement/bons.php b/public/compta/prelevement/bons.php similarity index 100% rename from htdocs/compta/prelevement/bons.php rename to public/compta/prelevement/bons.php diff --git a/htdocs/compta/prelevement/card.php b/public/compta/prelevement/card.php similarity index 100% rename from htdocs/compta/prelevement/card.php rename to public/compta/prelevement/card.php diff --git a/htdocs/compta/prelevement/class/bonprelevement.class.php b/public/compta/prelevement/class/bonprelevement.class.php similarity index 100% rename from htdocs/compta/prelevement/class/bonprelevement.class.php rename to public/compta/prelevement/class/bonprelevement.class.php diff --git a/htdocs/compta/prelevement/class/index.html b/public/compta/prelevement/class/index.html similarity index 100% rename from htdocs/compta/prelevement/class/index.html rename to public/compta/prelevement/class/index.html diff --git a/htdocs/compta/prelevement/class/ligneprelevement.class.php b/public/compta/prelevement/class/ligneprelevement.class.php similarity index 100% rename from htdocs/compta/prelevement/class/ligneprelevement.class.php rename to public/compta/prelevement/class/ligneprelevement.class.php diff --git a/htdocs/compta/prelevement/class/rejetprelevement.class.php b/public/compta/prelevement/class/rejetprelevement.class.php similarity index 100% rename from htdocs/compta/prelevement/class/rejetprelevement.class.php rename to public/compta/prelevement/class/rejetprelevement.class.php diff --git a/htdocs/compta/prelevement/create.php b/public/compta/prelevement/create.php similarity index 100% rename from htdocs/compta/prelevement/create.php rename to public/compta/prelevement/create.php diff --git a/htdocs/compta/prelevement/demandes.php b/public/compta/prelevement/demandes.php similarity index 100% rename from htdocs/compta/prelevement/demandes.php rename to public/compta/prelevement/demandes.php diff --git a/htdocs/compta/prelevement/factures.php b/public/compta/prelevement/factures.php similarity index 100% rename from htdocs/compta/prelevement/factures.php rename to public/compta/prelevement/factures.php diff --git a/htdocs/compta/prelevement/fiche-rejet.php b/public/compta/prelevement/fiche-rejet.php similarity index 100% rename from htdocs/compta/prelevement/fiche-rejet.php rename to public/compta/prelevement/fiche-rejet.php diff --git a/htdocs/compta/prelevement/fiche-stat.php b/public/compta/prelevement/fiche-stat.php similarity index 100% rename from htdocs/compta/prelevement/fiche-stat.php rename to public/compta/prelevement/fiche-stat.php diff --git a/htdocs/compta/prelevement/index.php b/public/compta/prelevement/index.php similarity index 100% rename from htdocs/compta/prelevement/index.php rename to public/compta/prelevement/index.php diff --git a/htdocs/compta/prelevement/ligne.php b/public/compta/prelevement/ligne.php similarity index 100% rename from htdocs/compta/prelevement/ligne.php rename to public/compta/prelevement/ligne.php diff --git a/htdocs/compta/prelevement/list.php b/public/compta/prelevement/list.php similarity index 100% rename from htdocs/compta/prelevement/list.php rename to public/compta/prelevement/list.php diff --git a/htdocs/compta/prelevement/rejets.php b/public/compta/prelevement/rejets.php similarity index 100% rename from htdocs/compta/prelevement/rejets.php rename to public/compta/prelevement/rejets.php diff --git a/htdocs/compta/prelevement/stats.php b/public/compta/prelevement/stats.php similarity index 100% rename from htdocs/compta/prelevement/stats.php rename to public/compta/prelevement/stats.php diff --git a/htdocs/compta/recap-compta.php b/public/compta/recap-compta.php similarity index 100% rename from htdocs/compta/recap-compta.php rename to public/compta/recap-compta.php diff --git a/htdocs/compta/resultat/clientfourn.php b/public/compta/resultat/clientfourn.php similarity index 100% rename from htdocs/compta/resultat/clientfourn.php rename to public/compta/resultat/clientfourn.php diff --git a/htdocs/compta/resultat/index.php b/public/compta/resultat/index.php similarity index 100% rename from htdocs/compta/resultat/index.php rename to public/compta/resultat/index.php diff --git a/htdocs/compta/salaries/card.php b/public/compta/salaries/card.php similarity index 100% rename from htdocs/compta/salaries/card.php rename to public/compta/salaries/card.php diff --git a/htdocs/compta/salaries/class/index.html b/public/compta/salaries/class/index.html similarity index 100% rename from htdocs/compta/salaries/class/index.html rename to public/compta/salaries/class/index.html diff --git a/htdocs/compta/salaries/class/paymentsalary.class.php b/public/compta/salaries/class/paymentsalary.class.php similarity index 100% rename from htdocs/compta/salaries/class/paymentsalary.class.php rename to public/compta/salaries/class/paymentsalary.class.php diff --git a/htdocs/compta/salaries/document.php b/public/compta/salaries/document.php similarity index 100% rename from htdocs/compta/salaries/document.php rename to public/compta/salaries/document.php diff --git a/htdocs/compta/salaries/index.php b/public/compta/salaries/index.php similarity index 100% rename from htdocs/compta/salaries/index.php rename to public/compta/salaries/index.php diff --git a/htdocs/compta/salaries/info.php b/public/compta/salaries/info.php similarity index 100% rename from htdocs/compta/salaries/info.php rename to public/compta/salaries/info.php diff --git a/htdocs/compta/sociales/card.php b/public/compta/sociales/card.php similarity index 100% rename from htdocs/compta/sociales/card.php rename to public/compta/sociales/card.php diff --git a/htdocs/compta/sociales/class/cchargesociales.class.php b/public/compta/sociales/class/cchargesociales.class.php similarity index 100% rename from htdocs/compta/sociales/class/cchargesociales.class.php rename to public/compta/sociales/class/cchargesociales.class.php diff --git a/htdocs/compta/sociales/class/chargesociales.class.php b/public/compta/sociales/class/chargesociales.class.php similarity index 100% rename from htdocs/compta/sociales/class/chargesociales.class.php rename to public/compta/sociales/class/chargesociales.class.php diff --git a/htdocs/compta/sociales/class/index.html b/public/compta/sociales/class/index.html similarity index 100% rename from htdocs/compta/sociales/class/index.html rename to public/compta/sociales/class/index.html diff --git a/htdocs/compta/sociales/class/paymentsocialcontribution.class.php b/public/compta/sociales/class/paymentsocialcontribution.class.php similarity index 100% rename from htdocs/compta/sociales/class/paymentsocialcontribution.class.php rename to public/compta/sociales/class/paymentsocialcontribution.class.php diff --git a/htdocs/compta/sociales/document.php b/public/compta/sociales/document.php similarity index 100% rename from htdocs/compta/sociales/document.php rename to public/compta/sociales/document.php diff --git a/htdocs/compta/sociales/index.php b/public/compta/sociales/index.php similarity index 100% rename from htdocs/compta/sociales/index.php rename to public/compta/sociales/index.php diff --git a/htdocs/compta/sociales/info.php b/public/compta/sociales/info.php similarity index 100% rename from htdocs/compta/sociales/info.php rename to public/compta/sociales/info.php diff --git a/htdocs/compta/sociales/payments.php b/public/compta/sociales/payments.php similarity index 100% rename from htdocs/compta/sociales/payments.php rename to public/compta/sociales/payments.php diff --git a/htdocs/compta/stats/cabyprodserv.php b/public/compta/stats/cabyprodserv.php similarity index 100% rename from htdocs/compta/stats/cabyprodserv.php rename to public/compta/stats/cabyprodserv.php diff --git a/htdocs/compta/stats/cabyuser.php b/public/compta/stats/cabyuser.php similarity index 100% rename from htdocs/compta/stats/cabyuser.php rename to public/compta/stats/cabyuser.php diff --git a/htdocs/compta/stats/casoc.php b/public/compta/stats/casoc.php similarity index 100% rename from htdocs/compta/stats/casoc.php rename to public/compta/stats/casoc.php diff --git a/htdocs/compta/stats/index.php b/public/compta/stats/index.php similarity index 100% rename from htdocs/compta/stats/index.php rename to public/compta/stats/index.php diff --git a/htdocs/compta/tva/card.php b/public/compta/tva/card.php similarity index 100% rename from htdocs/compta/tva/card.php rename to public/compta/tva/card.php diff --git a/htdocs/compta/tva/class/index.html b/public/compta/tva/class/index.html similarity index 100% rename from htdocs/compta/tva/class/index.html rename to public/compta/tva/class/index.html diff --git a/htdocs/compta/tva/class/tva.class.php b/public/compta/tva/class/tva.class.php similarity index 100% rename from htdocs/compta/tva/class/tva.class.php rename to public/compta/tva/class/tva.class.php diff --git a/htdocs/compta/tva/clients.php b/public/compta/tva/clients.php similarity index 100% rename from htdocs/compta/tva/clients.php rename to public/compta/tva/clients.php diff --git a/htdocs/compta/tva/index.php b/public/compta/tva/index.php similarity index 100% rename from htdocs/compta/tva/index.php rename to public/compta/tva/index.php diff --git a/htdocs/compta/tva/info.php b/public/compta/tva/info.php similarity index 100% rename from htdocs/compta/tva/info.php rename to public/compta/tva/info.php diff --git a/htdocs/compta/tva/quadri.php b/public/compta/tva/quadri.php similarity index 100% rename from htdocs/compta/tva/quadri.php rename to public/compta/tva/quadri.php diff --git a/htdocs/compta/tva/quadri_detail.php b/public/compta/tva/quadri_detail.php similarity index 100% rename from htdocs/compta/tva/quadri_detail.php rename to public/compta/tva/quadri_detail.php diff --git a/htdocs/compta/tva/quarter_report.php b/public/compta/tva/quarter_report.php similarity index 100% rename from htdocs/compta/tva/quarter_report.php rename to public/compta/tva/quarter_report.php diff --git a/htdocs/compta/tva/reglement.php b/public/compta/tva/reglement.php similarity index 100% rename from htdocs/compta/tva/reglement.php rename to public/compta/tva/reglement.php diff --git a/htdocs/conf/.gitignore b/public/conf/.gitignore similarity index 100% rename from htdocs/conf/.gitignore rename to public/conf/.gitignore diff --git a/htdocs/conf/.htaccess b/public/conf/.htaccess similarity index 100% rename from htdocs/conf/.htaccess rename to public/conf/.htaccess diff --git a/htdocs/conf/conf.php.example b/public/conf/conf.php.example similarity index 100% rename from htdocs/conf/conf.php.example rename to public/conf/conf.php.example diff --git a/htdocs/conf/index.html b/public/conf/index.html similarity index 100% rename from htdocs/conf/index.html rename to public/conf/index.html diff --git a/htdocs/contact/canvas/actions_contactcard_common.class.php b/public/contact/canvas/actions_contactcard_common.class.php similarity index 100% rename from htdocs/contact/canvas/actions_contactcard_common.class.php rename to public/contact/canvas/actions_contactcard_common.class.php diff --git a/htdocs/contact/canvas/default/actions_contactcard_default.class.php b/public/contact/canvas/default/actions_contactcard_default.class.php similarity index 100% rename from htdocs/contact/canvas/default/actions_contactcard_default.class.php rename to public/contact/canvas/default/actions_contactcard_default.class.php diff --git a/htdocs/contact/canvas/default/index.html b/public/contact/canvas/default/index.html similarity index 100% rename from htdocs/contact/canvas/default/index.html rename to public/contact/canvas/default/index.html diff --git a/htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php b/public/contact/canvas/default/tpl/contactcard_create.tpl.php similarity index 100% rename from htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php rename to public/contact/canvas/default/tpl/contactcard_create.tpl.php diff --git a/htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php b/public/contact/canvas/default/tpl/contactcard_edit.tpl.php similarity index 100% rename from htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php rename to public/contact/canvas/default/tpl/contactcard_edit.tpl.php diff --git a/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php b/public/contact/canvas/default/tpl/contactcard_view.tpl.php similarity index 100% rename from htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php rename to public/contact/canvas/default/tpl/contactcard_view.tpl.php diff --git a/htdocs/contact/canvas/default/tpl/index.html b/public/contact/canvas/default/tpl/index.html similarity index 100% rename from htdocs/contact/canvas/default/tpl/index.html rename to public/contact/canvas/default/tpl/index.html diff --git a/htdocs/contact/canvas/index.html b/public/contact/canvas/index.html similarity index 100% rename from htdocs/contact/canvas/index.html rename to public/contact/canvas/index.html diff --git a/htdocs/contact/card.php b/public/contact/card.php similarity index 100% rename from htdocs/contact/card.php rename to public/contact/card.php diff --git a/htdocs/contact/class/contact.class.php b/public/contact/class/contact.class.php similarity index 100% rename from htdocs/contact/class/contact.class.php rename to public/contact/class/contact.class.php diff --git a/htdocs/contact/class/index.html b/public/contact/class/index.html similarity index 100% rename from htdocs/contact/class/index.html rename to public/contact/class/index.html diff --git a/htdocs/contact/document.php b/public/contact/document.php similarity index 100% rename from htdocs/contact/document.php rename to public/contact/document.php diff --git a/htdocs/contact/index.html b/public/contact/index.html similarity index 100% rename from htdocs/contact/index.html rename to public/contact/index.html diff --git a/htdocs/contact/info.php b/public/contact/info.php similarity index 100% rename from htdocs/contact/info.php rename to public/contact/info.php diff --git a/htdocs/contact/ldap.php b/public/contact/ldap.php similarity index 100% rename from htdocs/contact/ldap.php rename to public/contact/ldap.php diff --git a/htdocs/contact/list.php b/public/contact/list.php similarity index 100% rename from htdocs/contact/list.php rename to public/contact/list.php diff --git a/htdocs/contact/note.php b/public/contact/note.php similarity index 100% rename from htdocs/contact/note.php rename to public/contact/note.php diff --git a/htdocs/contact/perso.php b/public/contact/perso.php similarity index 100% rename from htdocs/contact/perso.php rename to public/contact/perso.php diff --git a/htdocs/contact/vcard.php b/public/contact/vcard.php similarity index 100% rename from htdocs/contact/vcard.php rename to public/contact/vcard.php diff --git a/htdocs/contrat/admin/contract_extrafields.php b/public/contrat/admin/contract_extrafields.php similarity index 100% rename from htdocs/contrat/admin/contract_extrafields.php rename to public/contrat/admin/contract_extrafields.php diff --git a/htdocs/contrat/admin/contractdet_extrafields.php b/public/contrat/admin/contractdet_extrafields.php similarity index 100% rename from htdocs/contrat/admin/contractdet_extrafields.php rename to public/contrat/admin/contractdet_extrafields.php diff --git a/htdocs/contrat/admin/index.html b/public/contrat/admin/index.html similarity index 100% rename from htdocs/contrat/admin/index.html rename to public/contrat/admin/index.html diff --git a/htdocs/contrat/card.php b/public/contrat/card.php similarity index 100% rename from htdocs/contrat/card.php rename to public/contrat/card.php diff --git a/htdocs/contrat/class/contrat.class.php b/public/contrat/class/contrat.class.php similarity index 100% rename from htdocs/contrat/class/contrat.class.php rename to public/contrat/class/contrat.class.php diff --git a/htdocs/contrat/class/index.html b/public/contrat/class/index.html similarity index 100% rename from htdocs/contrat/class/index.html rename to public/contrat/class/index.html diff --git a/htdocs/contrat/contact.php b/public/contrat/contact.php similarity index 100% rename from htdocs/contrat/contact.php rename to public/contrat/contact.php diff --git a/htdocs/contrat/document.php b/public/contrat/document.php similarity index 100% rename from htdocs/contrat/document.php rename to public/contrat/document.php diff --git a/htdocs/contrat/index.php b/public/contrat/index.php similarity index 100% rename from htdocs/contrat/index.php rename to public/contrat/index.php diff --git a/htdocs/contrat/info.php b/public/contrat/info.php similarity index 100% rename from htdocs/contrat/info.php rename to public/contrat/info.php diff --git a/htdocs/contrat/list.php b/public/contrat/list.php similarity index 100% rename from htdocs/contrat/list.php rename to public/contrat/list.php diff --git a/htdocs/contrat/note.php b/public/contrat/note.php similarity index 100% rename from htdocs/contrat/note.php rename to public/contrat/note.php diff --git a/htdocs/contrat/services.php b/public/contrat/services.php similarity index 100% rename from htdocs/contrat/services.php rename to public/contrat/services.php diff --git a/htdocs/contrat/tpl/index.html b/public/contrat/tpl/index.html similarity index 100% rename from htdocs/contrat/tpl/index.html rename to public/contrat/tpl/index.html diff --git a/htdocs/contrat/tpl/linkedobjectblock.tpl.php b/public/contrat/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/contrat/tpl/linkedobjectblock.tpl.php rename to public/contrat/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/core/actions_builddoc.inc.php b/public/core/actions_builddoc.inc.php similarity index 100% rename from htdocs/core/actions_builddoc.inc.php rename to public/core/actions_builddoc.inc.php diff --git a/htdocs/core/actions_changeselectedfields.inc.php b/public/core/actions_changeselectedfields.inc.php similarity index 100% rename from htdocs/core/actions_changeselectedfields.inc.php rename to public/core/actions_changeselectedfields.inc.php diff --git a/htdocs/core/actions_dellink.inc.php b/public/core/actions_dellink.inc.php similarity index 100% rename from htdocs/core/actions_dellink.inc.php rename to public/core/actions_dellink.inc.php diff --git a/htdocs/core/actions_extrafields.inc.php b/public/core/actions_extrafields.inc.php similarity index 100% rename from htdocs/core/actions_extrafields.inc.php rename to public/core/actions_extrafields.inc.php diff --git a/htdocs/core/actions_fetchobject.inc.php b/public/core/actions_fetchobject.inc.php similarity index 100% rename from htdocs/core/actions_fetchobject.inc.php rename to public/core/actions_fetchobject.inc.php diff --git a/htdocs/core/actions_lineupdown.inc.php b/public/core/actions_lineupdown.inc.php similarity index 100% rename from htdocs/core/actions_lineupdown.inc.php rename to public/core/actions_lineupdown.inc.php diff --git a/htdocs/core/actions_linkedfiles.inc.php b/public/core/actions_linkedfiles.inc.php similarity index 100% rename from htdocs/core/actions_linkedfiles.inc.php rename to public/core/actions_linkedfiles.inc.php diff --git a/htdocs/core/actions_massactions.inc.php b/public/core/actions_massactions.inc.php similarity index 100% rename from htdocs/core/actions_massactions.inc.php rename to public/core/actions_massactions.inc.php diff --git a/htdocs/core/actions_printing.inc.php b/public/core/actions_printing.inc.php similarity index 100% rename from htdocs/core/actions_printing.inc.php rename to public/core/actions_printing.inc.php diff --git a/htdocs/core/actions_sendmails.inc.php b/public/core/actions_sendmails.inc.php similarity index 100% rename from htdocs/core/actions_sendmails.inc.php rename to public/core/actions_sendmails.inc.php diff --git a/htdocs/core/actions_setnotes.inc.php b/public/core/actions_setnotes.inc.php similarity index 100% rename from htdocs/core/actions_setnotes.inc.php rename to public/core/actions_setnotes.inc.php diff --git a/htdocs/core/ajax/ajaxdirpreview.php b/public/core/ajax/ajaxdirpreview.php similarity index 100% rename from htdocs/core/ajax/ajaxdirpreview.php rename to public/core/ajax/ajaxdirpreview.php diff --git a/htdocs/core/ajax/ajaxdirtree.php b/public/core/ajax/ajaxdirtree.php similarity index 100% rename from htdocs/core/ajax/ajaxdirtree.php rename to public/core/ajax/ajaxdirtree.php diff --git a/htdocs/core/ajax/bankconciliate.php b/public/core/ajax/bankconciliate.php similarity index 100% rename from htdocs/core/ajax/bankconciliate.php rename to public/core/ajax/bankconciliate.php diff --git a/htdocs/core/ajax/box.php b/public/core/ajax/box.php similarity index 100% rename from htdocs/core/ajax/box.php rename to public/core/ajax/box.php diff --git a/htdocs/core/ajax/constantonoff.php b/public/core/ajax/constantonoff.php similarity index 100% rename from htdocs/core/ajax/constantonoff.php rename to public/core/ajax/constantonoff.php diff --git a/htdocs/core/ajax/contacts.php b/public/core/ajax/contacts.php similarity index 100% rename from htdocs/core/ajax/contacts.php rename to public/core/ajax/contacts.php diff --git a/htdocs/core/ajax/extraparams.php b/public/core/ajax/extraparams.php similarity index 100% rename from htdocs/core/ajax/extraparams.php rename to public/core/ajax/extraparams.php diff --git a/htdocs/core/ajax/fileupload.php b/public/core/ajax/fileupload.php similarity index 100% rename from htdocs/core/ajax/fileupload.php rename to public/core/ajax/fileupload.php diff --git a/htdocs/core/ajax/index.html b/public/core/ajax/index.html similarity index 100% rename from htdocs/core/ajax/index.html rename to public/core/ajax/index.html diff --git a/htdocs/core/ajax/loadinplace.php b/public/core/ajax/loadinplace.php similarity index 100% rename from htdocs/core/ajax/loadinplace.php rename to public/core/ajax/loadinplace.php diff --git a/htdocs/core/ajax/objectonoff.php b/public/core/ajax/objectonoff.php similarity index 100% rename from htdocs/core/ajax/objectonoff.php rename to public/core/ajax/objectonoff.php diff --git a/htdocs/core/ajax/price.php b/public/core/ajax/price.php similarity index 100% rename from htdocs/core/ajax/price.php rename to public/core/ajax/price.php diff --git a/htdocs/core/ajax/row.php b/public/core/ajax/row.php similarity index 100% rename from htdocs/core/ajax/row.php rename to public/core/ajax/row.php diff --git a/htdocs/core/ajax/saveinplace.php b/public/core/ajax/saveinplace.php similarity index 100% rename from htdocs/core/ajax/saveinplace.php rename to public/core/ajax/saveinplace.php diff --git a/htdocs/core/ajax/security.php b/public/core/ajax/security.php similarity index 100% rename from htdocs/core/ajax/security.php rename to public/core/ajax/security.php diff --git a/htdocs/core/ajax/selectsearchbox.php b/public/core/ajax/selectsearchbox.php similarity index 100% rename from htdocs/core/ajax/selectsearchbox.php rename to public/core/ajax/selectsearchbox.php diff --git a/htdocs/core/ajax/vatrates.php b/public/core/ajax/vatrates.php similarity index 100% rename from htdocs/core/ajax/vatrates.php rename to public/core/ajax/vatrates.php diff --git a/htdocs/core/ajax/ziptown.php b/public/core/ajax/ziptown.php similarity index 100% rename from htdocs/core/ajax/ziptown.php rename to public/core/ajax/ziptown.php diff --git a/htdocs/core/antispamimage.php b/public/core/antispamimage.php similarity index 100% rename from htdocs/core/antispamimage.php rename to public/core/antispamimage.php diff --git a/htdocs/core/boxes/box_actions.php b/public/core/boxes/box_actions.php similarity index 100% rename from htdocs/core/boxes/box_actions.php rename to public/core/boxes/box_actions.php diff --git a/htdocs/core/boxes/box_activity.php b/public/core/boxes/box_activity.php similarity index 100% rename from htdocs/core/boxes/box_activity.php rename to public/core/boxes/box_activity.php diff --git a/htdocs/core/boxes/box_bookmarks.php b/public/core/boxes/box_bookmarks.php similarity index 100% rename from htdocs/core/boxes/box_bookmarks.php rename to public/core/boxes/box_bookmarks.php diff --git a/htdocs/core/boxes/box_clients.php b/public/core/boxes/box_clients.php similarity index 100% rename from htdocs/core/boxes/box_clients.php rename to public/core/boxes/box_clients.php diff --git a/htdocs/core/boxes/box_commandes.php b/public/core/boxes/box_commandes.php similarity index 100% rename from htdocs/core/boxes/box_commandes.php rename to public/core/boxes/box_commandes.php diff --git a/htdocs/core/boxes/box_comptes.php b/public/core/boxes/box_comptes.php similarity index 100% rename from htdocs/core/boxes/box_comptes.php rename to public/core/boxes/box_comptes.php diff --git a/htdocs/core/boxes/box_contacts.php b/public/core/boxes/box_contacts.php similarity index 100% rename from htdocs/core/boxes/box_contacts.php rename to public/core/boxes/box_contacts.php diff --git a/htdocs/core/boxes/box_contracts.php b/public/core/boxes/box_contracts.php similarity index 100% rename from htdocs/core/boxes/box_contracts.php rename to public/core/boxes/box_contracts.php diff --git a/htdocs/core/boxes/box_external_rss.php b/public/core/boxes/box_external_rss.php similarity index 100% rename from htdocs/core/boxes/box_external_rss.php rename to public/core/boxes/box_external_rss.php diff --git a/htdocs/core/boxes/box_factures.php b/public/core/boxes/box_factures.php similarity index 100% rename from htdocs/core/boxes/box_factures.php rename to public/core/boxes/box_factures.php diff --git a/htdocs/core/boxes/box_factures_fourn.php b/public/core/boxes/box_factures_fourn.php similarity index 100% rename from htdocs/core/boxes/box_factures_fourn.php rename to public/core/boxes/box_factures_fourn.php diff --git a/htdocs/core/boxes/box_factures_fourn_imp.php b/public/core/boxes/box_factures_fourn_imp.php similarity index 100% rename from htdocs/core/boxes/box_factures_fourn_imp.php rename to public/core/boxes/box_factures_fourn_imp.php diff --git a/htdocs/core/boxes/box_factures_imp.php b/public/core/boxes/box_factures_imp.php similarity index 100% rename from htdocs/core/boxes/box_factures_imp.php rename to public/core/boxes/box_factures_imp.php diff --git a/htdocs/core/boxes/box_ficheinter.php b/public/core/boxes/box_ficheinter.php similarity index 100% rename from htdocs/core/boxes/box_ficheinter.php rename to public/core/boxes/box_ficheinter.php diff --git a/htdocs/core/boxes/box_fournisseurs.php b/public/core/boxes/box_fournisseurs.php similarity index 100% rename from htdocs/core/boxes/box_fournisseurs.php rename to public/core/boxes/box_fournisseurs.php diff --git a/htdocs/core/boxes/box_goodcustomers.php b/public/core/boxes/box_goodcustomers.php similarity index 100% rename from htdocs/core/boxes/box_goodcustomers.php rename to public/core/boxes/box_goodcustomers.php diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/public/core/boxes/box_graph_invoices_permonth.php similarity index 100% rename from htdocs/core/boxes/box_graph_invoices_permonth.php rename to public/core/boxes/box_graph_invoices_permonth.php diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/public/core/boxes/box_graph_invoices_supplier_permonth.php similarity index 100% rename from htdocs/core/boxes/box_graph_invoices_supplier_permonth.php rename to public/core/boxes/box_graph_invoices_supplier_permonth.php diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/public/core/boxes/box_graph_orders_permonth.php similarity index 100% rename from htdocs/core/boxes/box_graph_orders_permonth.php rename to public/core/boxes/box_graph_orders_permonth.php diff --git a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php b/public/core/boxes/box_graph_orders_supplier_permonth.php similarity index 100% rename from htdocs/core/boxes/box_graph_orders_supplier_permonth.php rename to public/core/boxes/box_graph_orders_supplier_permonth.php diff --git a/htdocs/core/boxes/box_graph_product_distribution.php b/public/core/boxes/box_graph_product_distribution.php similarity index 100% rename from htdocs/core/boxes/box_graph_product_distribution.php rename to public/core/boxes/box_graph_product_distribution.php diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/public/core/boxes/box_graph_propales_permonth.php similarity index 100% rename from htdocs/core/boxes/box_graph_propales_permonth.php rename to public/core/boxes/box_graph_propales_permonth.php diff --git a/htdocs/core/boxes/box_members.php b/public/core/boxes/box_members.php similarity index 100% rename from htdocs/core/boxes/box_members.php rename to public/core/boxes/box_members.php diff --git a/htdocs/core/boxes/box_produits.php b/public/core/boxes/box_produits.php similarity index 100% rename from htdocs/core/boxes/box_produits.php rename to public/core/boxes/box_produits.php diff --git a/htdocs/core/boxes/box_produits_alerte_stock.php b/public/core/boxes/box_produits_alerte_stock.php similarity index 100% rename from htdocs/core/boxes/box_produits_alerte_stock.php rename to public/core/boxes/box_produits_alerte_stock.php diff --git a/htdocs/core/boxes/box_project.php b/public/core/boxes/box_project.php similarity index 100% rename from htdocs/core/boxes/box_project.php rename to public/core/boxes/box_project.php diff --git a/htdocs/core/boxes/box_propales.php b/public/core/boxes/box_propales.php similarity index 100% rename from htdocs/core/boxes/box_propales.php rename to public/core/boxes/box_propales.php diff --git a/htdocs/core/boxes/box_prospect.php b/public/core/boxes/box_prospect.php similarity index 100% rename from htdocs/core/boxes/box_prospect.php rename to public/core/boxes/box_prospect.php diff --git a/htdocs/core/boxes/box_services_contracts.php b/public/core/boxes/box_services_contracts.php similarity index 100% rename from htdocs/core/boxes/box_services_contracts.php rename to public/core/boxes/box_services_contracts.php diff --git a/htdocs/core/boxes/box_services_expired.php b/public/core/boxes/box_services_expired.php similarity index 100% rename from htdocs/core/boxes/box_services_expired.php rename to public/core/boxes/box_services_expired.php diff --git a/htdocs/core/boxes/box_supplier_orders.php b/public/core/boxes/box_supplier_orders.php similarity index 100% rename from htdocs/core/boxes/box_supplier_orders.php rename to public/core/boxes/box_supplier_orders.php diff --git a/htdocs/core/boxes/box_task.php b/public/core/boxes/box_task.php similarity index 100% rename from htdocs/core/boxes/box_task.php rename to public/core/boxes/box_task.php diff --git a/htdocs/core/boxes/index.html b/public/core/boxes/index.html similarity index 100% rename from htdocs/core/boxes/index.html rename to public/core/boxes/index.html diff --git a/htdocs/core/boxes/modules_boxes.php b/public/core/boxes/modules_boxes.php similarity index 100% rename from htdocs/core/boxes/modules_boxes.php rename to public/core/boxes/modules_boxes.php diff --git a/htdocs/core/class/CMailFile.class.php b/public/core/class/CMailFile.class.php similarity index 100% rename from htdocs/core/class/CMailFile.class.php rename to public/core/class/CMailFile.class.php diff --git a/htdocs/core/class/CSMSFile.class.php b/public/core/class/CSMSFile.class.php similarity index 100% rename from htdocs/core/class/CSMSFile.class.php rename to public/core/class/CSMSFile.class.php diff --git a/htdocs/core/class/antivir.class.php b/public/core/class/antivir.class.php similarity index 100% rename from htdocs/core/class/antivir.class.php rename to public/core/class/antivir.class.php diff --git a/htdocs/core/class/canvas.class.php b/public/core/class/canvas.class.php similarity index 100% rename from htdocs/core/class/canvas.class.php rename to public/core/class/canvas.class.php diff --git a/htdocs/core/class/ccountry.class.php b/public/core/class/ccountry.class.php similarity index 100% rename from htdocs/core/class/ccountry.class.php rename to public/core/class/ccountry.class.php diff --git a/htdocs/core/class/commondocgenerator.class.php b/public/core/class/commondocgenerator.class.php similarity index 100% rename from htdocs/core/class/commondocgenerator.class.php rename to public/core/class/commondocgenerator.class.php diff --git a/htdocs/core/class/commoninvoice.class.php b/public/core/class/commoninvoice.class.php similarity index 100% rename from htdocs/core/class/commoninvoice.class.php rename to public/core/class/commoninvoice.class.php diff --git a/htdocs/core/class/commonobject.class.php b/public/core/class/commonobject.class.php similarity index 100% rename from htdocs/core/class/commonobject.class.php rename to public/core/class/commonobject.class.php diff --git a/htdocs/core/class/commonobjectline.class.php b/public/core/class/commonobjectline.class.php similarity index 100% rename from htdocs/core/class/commonobjectline.class.php rename to public/core/class/commonobjectline.class.php diff --git a/htdocs/core/class/commonorder.class.php b/public/core/class/commonorder.class.php similarity index 100% rename from htdocs/core/class/commonorder.class.php rename to public/core/class/commonorder.class.php diff --git a/htdocs/core/class/commonstickergenerator.class.php b/public/core/class/commonstickergenerator.class.php similarity index 100% rename from htdocs/core/class/commonstickergenerator.class.php rename to public/core/class/commonstickergenerator.class.php diff --git a/htdocs/core/class/conf.class.php b/public/core/class/conf.class.php similarity index 100% rename from htdocs/core/class/conf.class.php rename to public/core/class/conf.class.php diff --git a/htdocs/core/class/cookie.class.php b/public/core/class/cookie.class.php similarity index 100% rename from htdocs/core/class/cookie.class.php rename to public/core/class/cookie.class.php diff --git a/htdocs/core/class/cstate.class.php b/public/core/class/cstate.class.php similarity index 100% rename from htdocs/core/class/cstate.class.php rename to public/core/class/cstate.class.php diff --git a/htdocs/core/class/ctypent.class.php b/public/core/class/ctypent.class.php similarity index 100% rename from htdocs/core/class/ctypent.class.php rename to public/core/class/ctypent.class.php diff --git a/htdocs/core/class/discount.class.php b/public/core/class/discount.class.php similarity index 100% rename from htdocs/core/class/discount.class.php rename to public/core/class/discount.class.php diff --git a/htdocs/core/class/doleditor.class.php b/public/core/class/doleditor.class.php similarity index 100% rename from htdocs/core/class/doleditor.class.php rename to public/core/class/doleditor.class.php diff --git a/htdocs/core/class/dolexception.class.php b/public/core/class/dolexception.class.php similarity index 100% rename from htdocs/core/class/dolexception.class.php rename to public/core/class/dolexception.class.php diff --git a/htdocs/core/class/dolgeoip.class.php b/public/core/class/dolgeoip.class.php similarity index 100% rename from htdocs/core/class/dolgeoip.class.php rename to public/core/class/dolgeoip.class.php diff --git a/htdocs/core/class/dolgraph.class.php b/public/core/class/dolgraph.class.php similarity index 100% rename from htdocs/core/class/dolgraph.class.php rename to public/core/class/dolgraph.class.php diff --git a/htdocs/core/class/dolprintipp.class.php b/public/core/class/dolprintipp.class.php similarity index 100% rename from htdocs/core/class/dolprintipp.class.php rename to public/core/class/dolprintipp.class.php diff --git a/htdocs/core/class/dolreceiptprinter.class.php b/public/core/class/dolreceiptprinter.class.php similarity index 100% rename from htdocs/core/class/dolreceiptprinter.class.php rename to public/core/class/dolreceiptprinter.class.php diff --git a/htdocs/core/class/events.class.php b/public/core/class/events.class.php similarity index 100% rename from htdocs/core/class/events.class.php rename to public/core/class/events.class.php diff --git a/htdocs/core/class/extrafields.class.php b/public/core/class/extrafields.class.php similarity index 100% rename from htdocs/core/class/extrafields.class.php rename to public/core/class/extrafields.class.php diff --git a/htdocs/core/class/fileupload.class.php b/public/core/class/fileupload.class.php similarity index 100% rename from htdocs/core/class/fileupload.class.php rename to public/core/class/fileupload.class.php diff --git a/htdocs/core/class/fiscalyear.class.php b/public/core/class/fiscalyear.class.php similarity index 100% rename from htdocs/core/class/fiscalyear.class.php rename to public/core/class/fiscalyear.class.php diff --git a/htdocs/core/class/genericobject.class.php b/public/core/class/genericobject.class.php similarity index 100% rename from htdocs/core/class/genericobject.class.php rename to public/core/class/genericobject.class.php diff --git a/htdocs/core/class/google.class.php b/public/core/class/google.class.php similarity index 100% rename from htdocs/core/class/google.class.php rename to public/core/class/google.class.php diff --git a/htdocs/core/class/hookmanager.class.php b/public/core/class/hookmanager.class.php similarity index 100% rename from htdocs/core/class/hookmanager.class.php rename to public/core/class/hookmanager.class.php diff --git a/htdocs/core/class/html.form.class.php b/public/core/class/html.form.class.php similarity index 100% rename from htdocs/core/class/html.form.class.php rename to public/core/class/html.form.class.php diff --git a/htdocs/core/class/html.formaccounting.class.php b/public/core/class/html.formaccounting.class.php similarity index 100% rename from htdocs/core/class/html.formaccounting.class.php rename to public/core/class/html.formaccounting.class.php diff --git a/htdocs/core/class/html.formactions.class.php b/public/core/class/html.formactions.class.php similarity index 100% rename from htdocs/core/class/html.formactions.class.php rename to public/core/class/html.formactions.class.php diff --git a/htdocs/core/class/html.formadmin.class.php b/public/core/class/html.formadmin.class.php similarity index 100% rename from htdocs/core/class/html.formadmin.class.php rename to public/core/class/html.formadmin.class.php diff --git a/htdocs/core/class/html.formbank.class.php b/public/core/class/html.formbank.class.php similarity index 100% rename from htdocs/core/class/html.formbank.class.php rename to public/core/class/html.formbank.class.php diff --git a/htdocs/core/class/html.formbarcode.class.php b/public/core/class/html.formbarcode.class.php similarity index 100% rename from htdocs/core/class/html.formbarcode.class.php rename to public/core/class/html.formbarcode.class.php diff --git a/htdocs/core/class/html.formcompany.class.php b/public/core/class/html.formcompany.class.php similarity index 100% rename from htdocs/core/class/html.formcompany.class.php rename to public/core/class/html.formcompany.class.php diff --git a/htdocs/core/class/html.formcontract.class.php b/public/core/class/html.formcontract.class.php similarity index 100% rename from htdocs/core/class/html.formcontract.class.php rename to public/core/class/html.formcontract.class.php diff --git a/htdocs/core/class/html.formcron.class.php b/public/core/class/html.formcron.class.php similarity index 100% rename from htdocs/core/class/html.formcron.class.php rename to public/core/class/html.formcron.class.php diff --git a/htdocs/core/class/html.formfile.class.php b/public/core/class/html.formfile.class.php similarity index 100% rename from htdocs/core/class/html.formfile.class.php rename to public/core/class/html.formfile.class.php diff --git a/htdocs/core/class/html.formintervention.class.php b/public/core/class/html.formintervention.class.php similarity index 100% rename from htdocs/core/class/html.formintervention.class.php rename to public/core/class/html.formintervention.class.php diff --git a/htdocs/core/class/html.formmail.class.php b/public/core/class/html.formmail.class.php similarity index 100% rename from htdocs/core/class/html.formmail.class.php rename to public/core/class/html.formmail.class.php diff --git a/htdocs/core/class/html.formmailing.class.php b/public/core/class/html.formmailing.class.php similarity index 100% rename from htdocs/core/class/html.formmailing.class.php rename to public/core/class/html.formmailing.class.php diff --git a/htdocs/core/class/html.formmargin.class.php b/public/core/class/html.formmargin.class.php similarity index 100% rename from htdocs/core/class/html.formmargin.class.php rename to public/core/class/html.formmargin.class.php diff --git a/htdocs/core/class/html.formorder.class.php b/public/core/class/html.formorder.class.php similarity index 100% rename from htdocs/core/class/html.formorder.class.php rename to public/core/class/html.formorder.class.php diff --git a/htdocs/core/class/html.formother.class.php b/public/core/class/html.formother.class.php similarity index 100% rename from htdocs/core/class/html.formother.class.php rename to public/core/class/html.formother.class.php diff --git a/htdocs/core/class/html.formprojet.class.php b/public/core/class/html.formprojet.class.php similarity index 100% rename from htdocs/core/class/html.formprojet.class.php rename to public/core/class/html.formprojet.class.php diff --git a/htdocs/core/class/html.formpropal.class.php b/public/core/class/html.formpropal.class.php similarity index 100% rename from htdocs/core/class/html.formpropal.class.php rename to public/core/class/html.formpropal.class.php diff --git a/htdocs/core/class/html.formsms.class.php b/public/core/class/html.formsms.class.php similarity index 100% rename from htdocs/core/class/html.formsms.class.php rename to public/core/class/html.formsms.class.php diff --git a/htdocs/core/class/html.formsocialcontrib.class.php b/public/core/class/html.formsocialcontrib.class.php similarity index 100% rename from htdocs/core/class/html.formsocialcontrib.class.php rename to public/core/class/html.formsocialcontrib.class.php diff --git a/htdocs/core/class/index.html b/public/core/class/index.html similarity index 100% rename from htdocs/core/class/index.html rename to public/core/class/index.html diff --git a/htdocs/core/class/infobox.class.php b/public/core/class/infobox.class.php similarity index 100% rename from htdocs/core/class/infobox.class.php rename to public/core/class/infobox.class.php diff --git a/htdocs/core/class/interfaces.class.php b/public/core/class/interfaces.class.php similarity index 100% rename from htdocs/core/class/interfaces.class.php rename to public/core/class/interfaces.class.php diff --git a/htdocs/core/class/ldap.class.php b/public/core/class/ldap.class.php similarity index 100% rename from htdocs/core/class/ldap.class.php rename to public/core/class/ldap.class.php diff --git a/htdocs/core/class/link.class.php b/public/core/class/link.class.php similarity index 100% rename from htdocs/core/class/link.class.php rename to public/core/class/link.class.php diff --git a/htdocs/core/class/menu.class.php b/public/core/class/menu.class.php similarity index 100% rename from htdocs/core/class/menu.class.php rename to public/core/class/menu.class.php diff --git a/htdocs/core/class/menubase.class.php b/public/core/class/menubase.class.php similarity index 100% rename from htdocs/core/class/menubase.class.php rename to public/core/class/menubase.class.php diff --git a/htdocs/core/class/notify.class.php b/public/core/class/notify.class.php similarity index 100% rename from htdocs/core/class/notify.class.php rename to public/core/class/notify.class.php diff --git a/htdocs/core/class/openid.class.php b/public/core/class/openid.class.php similarity index 100% rename from htdocs/core/class/openid.class.php rename to public/core/class/openid.class.php diff --git a/htdocs/core/class/rssparser.class.php b/public/core/class/rssparser.class.php similarity index 100% rename from htdocs/core/class/rssparser.class.php rename to public/core/class/rssparser.class.php diff --git a/htdocs/core/class/smtps.class.php b/public/core/class/smtps.class.php similarity index 100% rename from htdocs/core/class/smtps.class.php rename to public/core/class/smtps.class.php diff --git a/htdocs/core/class/stats.class.php b/public/core/class/stats.class.php similarity index 100% rename from htdocs/core/class/stats.class.php rename to public/core/class/stats.class.php diff --git a/htdocs/core/class/translate.class.php b/public/core/class/translate.class.php similarity index 100% rename from htdocs/core/class/translate.class.php rename to public/core/class/translate.class.php diff --git a/htdocs/core/class/utils.class.php b/public/core/class/utils.class.php similarity index 100% rename from htdocs/core/class/utils.class.php rename to public/core/class/utils.class.php diff --git a/htdocs/core/class/vcard.class.php b/public/core/class/vcard.class.php similarity index 100% rename from htdocs/core/class/vcard.class.php rename to public/core/class/vcard.class.php diff --git a/htdocs/core/class/workboardresponse.class.php b/public/core/class/workboardresponse.class.php similarity index 100% rename from htdocs/core/class/workboardresponse.class.php rename to public/core/class/workboardresponse.class.php diff --git a/htdocs/core/datepicker.php b/public/core/datepicker.php similarity index 100% rename from htdocs/core/datepicker.php rename to public/core/datepicker.php diff --git a/htdocs/core/db/Database.interface.php b/public/core/db/Database.interface.php similarity index 100% rename from htdocs/core/db/Database.interface.php rename to public/core/db/Database.interface.php diff --git a/htdocs/core/db/DoliDB.class.php b/public/core/db/DoliDB.class.php similarity index 100% rename from htdocs/core/db/DoliDB.class.php rename to public/core/db/DoliDB.class.php diff --git a/htdocs/core/db/index.html b/public/core/db/index.html similarity index 100% rename from htdocs/core/db/index.html rename to public/core/db/index.html diff --git a/htdocs/core/db/mssql.class.php b/public/core/db/mssql.class.php similarity index 100% rename from htdocs/core/db/mssql.class.php rename to public/core/db/mssql.class.php diff --git a/htdocs/core/db/mysqli.class.php b/public/core/db/mysqli.class.php similarity index 100% rename from htdocs/core/db/mysqli.class.php rename to public/core/db/mysqli.class.php diff --git a/htdocs/core/db/pgsql.class.php b/public/core/db/pgsql.class.php similarity index 100% rename from htdocs/core/db/pgsql.class.php rename to public/core/db/pgsql.class.php diff --git a/htdocs/core/db/sqlite3.class.php b/public/core/db/sqlite3.class.php similarity index 100% rename from htdocs/core/db/sqlite3.class.php rename to public/core/db/sqlite3.class.php diff --git a/htdocs/core/doxygen.php b/public/core/doxygen.php similarity index 100% rename from htdocs/core/doxygen.php rename to public/core/doxygen.php diff --git a/htdocs/core/extrafieldsinexport.inc.php b/public/core/extrafieldsinexport.inc.php similarity index 100% rename from htdocs/core/extrafieldsinexport.inc.php rename to public/core/extrafieldsinexport.inc.php diff --git a/htdocs/core/filemanagerdol/browser/default/browser.css b/public/core/filemanagerdol/browser/default/browser.css similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/browser.css rename to public/core/filemanagerdol/browser/default/browser.css diff --git a/htdocs/core/filemanagerdol/browser/default/browser.php b/public/core/filemanagerdol/browser/default/browser.php similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/browser.php rename to public/core/filemanagerdol/browser/default/browser.php diff --git a/htdocs/core/filemanagerdol/browser/default/frmactualfolder.php b/public/core/filemanagerdol/browser/default/frmactualfolder.php similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/frmactualfolder.php rename to public/core/filemanagerdol/browser/default/frmactualfolder.php diff --git a/htdocs/core/filemanagerdol/browser/default/frmcreatefolder.php b/public/core/filemanagerdol/browser/default/frmcreatefolder.php similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/frmcreatefolder.php rename to public/core/filemanagerdol/browser/default/frmcreatefolder.php diff --git a/htdocs/core/filemanagerdol/browser/default/frmfolders.php b/public/core/filemanagerdol/browser/default/frmfolders.php similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/frmfolders.php rename to public/core/filemanagerdol/browser/default/frmfolders.php diff --git a/htdocs/core/filemanagerdol/browser/default/frmresourceslist.php b/public/core/filemanagerdol/browser/default/frmresourceslist.php similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/frmresourceslist.php rename to public/core/filemanagerdol/browser/default/frmresourceslist.php diff --git a/htdocs/core/filemanagerdol/browser/default/frmupload.php b/public/core/filemanagerdol/browser/default/frmupload.php similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/frmupload.php rename to public/core/filemanagerdol/browser/default/frmupload.php diff --git a/htdocs/core/filemanagerdol/browser/default/images/Folder.gif b/public/core/filemanagerdol/browser/default/images/Folder.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/Folder.gif rename to public/core/filemanagerdol/browser/default/images/Folder.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/FolderUp.gif b/public/core/filemanagerdol/browser/default/images/FolderUp.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/FolderUp.gif rename to public/core/filemanagerdol/browser/default/images/FolderUp.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/ai.gif b/public/core/filemanagerdol/browser/default/images/icons/32/ai.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/ai.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/ai.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/avi.gif b/public/core/filemanagerdol/browser/default/images/icons/32/avi.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/avi.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/avi.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/bmp.gif b/public/core/filemanagerdol/browser/default/images/icons/32/bmp.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/bmp.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/bmp.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/cs.gif b/public/core/filemanagerdol/browser/default/images/icons/32/cs.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/cs.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/cs.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/default.icon.gif b/public/core/filemanagerdol/browser/default/images/icons/32/default.icon.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/default.icon.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/default.icon.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/dll.gif b/public/core/filemanagerdol/browser/default/images/icons/32/dll.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/dll.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/dll.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/doc.gif b/public/core/filemanagerdol/browser/default/images/icons/32/doc.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/doc.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/doc.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/exe.gif b/public/core/filemanagerdol/browser/default/images/icons/32/exe.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/exe.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/exe.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/fla.gif b/public/core/filemanagerdol/browser/default/images/icons/32/fla.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/fla.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/fla.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/gif.gif b/public/core/filemanagerdol/browser/default/images/icons/32/gif.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/gif.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/gif.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/htm.gif b/public/core/filemanagerdol/browser/default/images/icons/32/htm.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/htm.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/htm.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/html.gif b/public/core/filemanagerdol/browser/default/images/icons/32/html.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/html.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/html.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/index.html b/public/core/filemanagerdol/browser/default/images/icons/32/index.html similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/index.html rename to public/core/filemanagerdol/browser/default/images/icons/32/index.html diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/jpg.gif b/public/core/filemanagerdol/browser/default/images/icons/32/jpg.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/jpg.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/jpg.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/js.gif b/public/core/filemanagerdol/browser/default/images/icons/32/js.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/js.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/js.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/mdb.gif b/public/core/filemanagerdol/browser/default/images/icons/32/mdb.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/mdb.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/mdb.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/mp3.gif b/public/core/filemanagerdol/browser/default/images/icons/32/mp3.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/mp3.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/mp3.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/pdf.gif b/public/core/filemanagerdol/browser/default/images/icons/32/pdf.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/pdf.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/pdf.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/png.gif b/public/core/filemanagerdol/browser/default/images/icons/32/png.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/png.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/png.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/ppt.gif b/public/core/filemanagerdol/browser/default/images/icons/32/ppt.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/ppt.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/ppt.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/rdp.gif b/public/core/filemanagerdol/browser/default/images/icons/32/rdp.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/rdp.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/rdp.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/swf.gif b/public/core/filemanagerdol/browser/default/images/icons/32/swf.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/swf.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/swf.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/swt.gif b/public/core/filemanagerdol/browser/default/images/icons/32/swt.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/swt.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/swt.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/txt.gif b/public/core/filemanagerdol/browser/default/images/icons/32/txt.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/txt.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/txt.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/vsd.gif b/public/core/filemanagerdol/browser/default/images/icons/32/vsd.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/vsd.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/vsd.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/xls.gif b/public/core/filemanagerdol/browser/default/images/icons/32/xls.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/xls.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/xls.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/xml.gif b/public/core/filemanagerdol/browser/default/images/icons/32/xml.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/xml.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/xml.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/32/zip.gif b/public/core/filemanagerdol/browser/default/images/icons/32/zip.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/32/zip.gif rename to public/core/filemanagerdol/browser/default/images/icons/32/zip.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/ai.gif b/public/core/filemanagerdol/browser/default/images/icons/ai.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/ai.gif rename to public/core/filemanagerdol/browser/default/images/icons/ai.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/avi.gif b/public/core/filemanagerdol/browser/default/images/icons/avi.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/avi.gif rename to public/core/filemanagerdol/browser/default/images/icons/avi.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/bmp.gif b/public/core/filemanagerdol/browser/default/images/icons/bmp.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/bmp.gif rename to public/core/filemanagerdol/browser/default/images/icons/bmp.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/cs.gif b/public/core/filemanagerdol/browser/default/images/icons/cs.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/cs.gif rename to public/core/filemanagerdol/browser/default/images/icons/cs.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/default.icon.gif b/public/core/filemanagerdol/browser/default/images/icons/default.icon.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/default.icon.gif rename to public/core/filemanagerdol/browser/default/images/icons/default.icon.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/dll.gif b/public/core/filemanagerdol/browser/default/images/icons/dll.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/dll.gif rename to public/core/filemanagerdol/browser/default/images/icons/dll.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/doc.gif b/public/core/filemanagerdol/browser/default/images/icons/doc.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/doc.gif rename to public/core/filemanagerdol/browser/default/images/icons/doc.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/exe.gif b/public/core/filemanagerdol/browser/default/images/icons/exe.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/exe.gif rename to public/core/filemanagerdol/browser/default/images/icons/exe.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/fla.gif b/public/core/filemanagerdol/browser/default/images/icons/fla.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/fla.gif rename to public/core/filemanagerdol/browser/default/images/icons/fla.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/gif.gif b/public/core/filemanagerdol/browser/default/images/icons/gif.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/gif.gif rename to public/core/filemanagerdol/browser/default/images/icons/gif.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/htm.gif b/public/core/filemanagerdol/browser/default/images/icons/htm.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/htm.gif rename to public/core/filemanagerdol/browser/default/images/icons/htm.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/html.gif b/public/core/filemanagerdol/browser/default/images/icons/html.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/html.gif rename to public/core/filemanagerdol/browser/default/images/icons/html.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/index.html b/public/core/filemanagerdol/browser/default/images/icons/index.html similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/index.html rename to public/core/filemanagerdol/browser/default/images/icons/index.html diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/jpg.gif b/public/core/filemanagerdol/browser/default/images/icons/jpg.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/jpg.gif rename to public/core/filemanagerdol/browser/default/images/icons/jpg.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/js.gif b/public/core/filemanagerdol/browser/default/images/icons/js.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/js.gif rename to public/core/filemanagerdol/browser/default/images/icons/js.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/mdb.gif b/public/core/filemanagerdol/browser/default/images/icons/mdb.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/mdb.gif rename to public/core/filemanagerdol/browser/default/images/icons/mdb.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/mp3.gif b/public/core/filemanagerdol/browser/default/images/icons/mp3.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/mp3.gif rename to public/core/filemanagerdol/browser/default/images/icons/mp3.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/pdf.gif b/public/core/filemanagerdol/browser/default/images/icons/pdf.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/pdf.gif rename to public/core/filemanagerdol/browser/default/images/icons/pdf.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/png.gif b/public/core/filemanagerdol/browser/default/images/icons/png.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/png.gif rename to public/core/filemanagerdol/browser/default/images/icons/png.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/ppt.gif b/public/core/filemanagerdol/browser/default/images/icons/ppt.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/ppt.gif rename to public/core/filemanagerdol/browser/default/images/icons/ppt.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/rdp.gif b/public/core/filemanagerdol/browser/default/images/icons/rdp.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/rdp.gif rename to public/core/filemanagerdol/browser/default/images/icons/rdp.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/swf.gif b/public/core/filemanagerdol/browser/default/images/icons/swf.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/swf.gif rename to public/core/filemanagerdol/browser/default/images/icons/swf.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/swt.gif b/public/core/filemanagerdol/browser/default/images/icons/swt.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/swt.gif rename to public/core/filemanagerdol/browser/default/images/icons/swt.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/txt.gif b/public/core/filemanagerdol/browser/default/images/icons/txt.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/txt.gif rename to public/core/filemanagerdol/browser/default/images/icons/txt.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/vsd.gif b/public/core/filemanagerdol/browser/default/images/icons/vsd.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/vsd.gif rename to public/core/filemanagerdol/browser/default/images/icons/vsd.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/xls.gif b/public/core/filemanagerdol/browser/default/images/icons/xls.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/xls.gif rename to public/core/filemanagerdol/browser/default/images/icons/xls.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/xml.gif b/public/core/filemanagerdol/browser/default/images/icons/xml.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/xml.gif rename to public/core/filemanagerdol/browser/default/images/icons/xml.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/icons/zip.gif b/public/core/filemanagerdol/browser/default/images/icons/zip.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/icons/zip.gif rename to public/core/filemanagerdol/browser/default/images/icons/zip.gif diff --git a/htdocs/core/filemanagerdol/browser/default/images/index.html b/public/core/filemanagerdol/browser/default/images/index.html similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/images/index.html rename to public/core/filemanagerdol/browser/default/images/index.html diff --git a/htdocs/core/filemanagerdol/browser/default/index.html b/public/core/filemanagerdol/browser/default/index.html similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/index.html rename to public/core/filemanagerdol/browser/default/index.html diff --git a/htdocs/core/filemanagerdol/browser/default/js/common.js b/public/core/filemanagerdol/browser/default/js/common.js similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/js/common.js rename to public/core/filemanagerdol/browser/default/js/common.js diff --git a/htdocs/core/filemanagerdol/browser/default/js/fckxml.js b/public/core/filemanagerdol/browser/default/js/fckxml.js similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/js/fckxml.js rename to public/core/filemanagerdol/browser/default/js/fckxml.js diff --git a/htdocs/core/filemanagerdol/browser/default/js/index.html b/public/core/filemanagerdol/browser/default/js/index.html similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/js/index.html rename to public/core/filemanagerdol/browser/default/js/index.html diff --git a/htdocs/core/filemanagerdol/browser/default/spacer.gif b/public/core/filemanagerdol/browser/default/spacer.gif similarity index 100% rename from htdocs/core/filemanagerdol/browser/default/spacer.gif rename to public/core/filemanagerdol/browser/default/spacer.gif diff --git a/htdocs/core/filemanagerdol/browser/index.html b/public/core/filemanagerdol/browser/index.html similarity index 100% rename from htdocs/core/filemanagerdol/browser/index.html rename to public/core/filemanagerdol/browser/index.html diff --git a/htdocs/core/filemanagerdol/connectors/index.html b/public/core/filemanagerdol/connectors/index.html similarity index 100% rename from htdocs/core/filemanagerdol/connectors/index.html rename to public/core/filemanagerdol/connectors/index.html diff --git a/htdocs/core/filemanagerdol/connectors/php/basexml.php b/public/core/filemanagerdol/connectors/php/basexml.php similarity index 100% rename from htdocs/core/filemanagerdol/connectors/php/basexml.php rename to public/core/filemanagerdol/connectors/php/basexml.php diff --git a/htdocs/core/filemanagerdol/connectors/php/commands.php b/public/core/filemanagerdol/connectors/php/commands.php similarity index 100% rename from htdocs/core/filemanagerdol/connectors/php/commands.php rename to public/core/filemanagerdol/connectors/php/commands.php diff --git a/htdocs/core/filemanagerdol/connectors/php/config.php b/public/core/filemanagerdol/connectors/php/config.php similarity index 100% rename from htdocs/core/filemanagerdol/connectors/php/config.php rename to public/core/filemanagerdol/connectors/php/config.php diff --git a/htdocs/core/filemanagerdol/connectors/php/connector.php b/public/core/filemanagerdol/connectors/php/connector.php similarity index 100% rename from htdocs/core/filemanagerdol/connectors/php/connector.php rename to public/core/filemanagerdol/connectors/php/connector.php diff --git a/htdocs/core/filemanagerdol/connectors/php/index.html b/public/core/filemanagerdol/connectors/php/index.html similarity index 100% rename from htdocs/core/filemanagerdol/connectors/php/index.html rename to public/core/filemanagerdol/connectors/php/index.html diff --git a/htdocs/core/filemanagerdol/connectors/php/io.php b/public/core/filemanagerdol/connectors/php/io.php similarity index 100% rename from htdocs/core/filemanagerdol/connectors/php/io.php rename to public/core/filemanagerdol/connectors/php/io.php diff --git a/htdocs/core/filemanagerdol/connectors/php/upload.php b/public/core/filemanagerdol/connectors/php/upload.php similarity index 100% rename from htdocs/core/filemanagerdol/connectors/php/upload.php rename to public/core/filemanagerdol/connectors/php/upload.php diff --git a/htdocs/core/filemanagerdol/connectors/php/util.php b/public/core/filemanagerdol/connectors/php/util.php similarity index 100% rename from htdocs/core/filemanagerdol/connectors/php/util.php rename to public/core/filemanagerdol/connectors/php/util.php diff --git a/htdocs/core/filemanagerdol/index.html b/public/core/filemanagerdol/index.html similarity index 100% rename from htdocs/core/filemanagerdol/index.html rename to public/core/filemanagerdol/index.html diff --git a/htdocs/core/get_menudiv.php b/public/core/get_menudiv.php similarity index 100% rename from htdocs/core/get_menudiv.php rename to public/core/get_menudiv.php diff --git a/htdocs/core/index.html b/public/core/index.html similarity index 100% rename from htdocs/core/index.html rename to public/core/index.html diff --git a/htdocs/core/js/blockUI.js b/public/core/js/blockUI.js similarity index 100% rename from htdocs/core/js/blockUI.js rename to public/core/js/blockUI.js diff --git a/htdocs/core/js/datepicker.js.php b/public/core/js/datepicker.js.php similarity index 100% rename from htdocs/core/js/datepicker.js.php rename to public/core/js/datepicker.js.php diff --git a/htdocs/core/js/dst.js b/public/core/js/dst.js similarity index 100% rename from htdocs/core/js/dst.js rename to public/core/js/dst.js diff --git a/htdocs/core/js/editinplace.js b/public/core/js/editinplace.js similarity index 100% rename from htdocs/core/js/editinplace.js rename to public/core/js/editinplace.js diff --git a/htdocs/core/js/index.html b/public/core/js/index.html similarity index 100% rename from htdocs/core/js/index.html rename to public/core/js/index.html diff --git a/htdocs/core/js/jnotify.js b/public/core/js/jnotify.js similarity index 100% rename from htdocs/core/js/jnotify.js rename to public/core/js/jnotify.js diff --git a/htdocs/core/js/lib_batch.js b/public/core/js/lib_batch.js similarity index 100% rename from htdocs/core/js/lib_batch.js rename to public/core/js/lib_batch.js diff --git a/htdocs/core/js/lib_head.js.php b/public/core/js/lib_head.js.php similarity index 100% rename from htdocs/core/js/lib_head.js.php rename to public/core/js/lib_head.js.php diff --git a/htdocs/core/js/lib_photosresize.js b/public/core/js/lib_photosresize.js similarity index 100% rename from htdocs/core/js/lib_photosresize.js rename to public/core/js/lib_photosresize.js diff --git a/htdocs/core/js/lib_rare.js b/public/core/js/lib_rare.js similarity index 100% rename from htdocs/core/js/lib_rare.js rename to public/core/js/lib_rare.js diff --git a/htdocs/core/js/select2_locale.js.php b/public/core/js/select2_locale.js.php similarity index 100% rename from htdocs/core/js/select2_locale.js.php rename to public/core/js/select2_locale.js.php diff --git a/htdocs/core/js/timepicker.js.php b/public/core/js/timepicker.js.php similarity index 100% rename from htdocs/core/js/timepicker.js.php rename to public/core/js/timepicker.js.php diff --git a/htdocs/core/js/timesheet.js b/public/core/js/timesheet.js similarity index 100% rename from htdocs/core/js/timesheet.js rename to public/core/js/timesheet.js diff --git a/htdocs/core/lib/accounting.lib.php b/public/core/lib/accounting.lib.php similarity index 100% rename from htdocs/core/lib/accounting.lib.php rename to public/core/lib/accounting.lib.php diff --git a/htdocs/core/lib/admin.lib.php b/public/core/lib/admin.lib.php similarity index 100% rename from htdocs/core/lib/admin.lib.php rename to public/core/lib/admin.lib.php diff --git a/htdocs/core/lib/agenda.lib.php b/public/core/lib/agenda.lib.php similarity index 100% rename from htdocs/core/lib/agenda.lib.php rename to public/core/lib/agenda.lib.php diff --git a/htdocs/core/lib/ajax.lib.php b/public/core/lib/ajax.lib.php similarity index 100% rename from htdocs/core/lib/ajax.lib.php rename to public/core/lib/ajax.lib.php diff --git a/htdocs/core/lib/bank.lib.php b/public/core/lib/bank.lib.php similarity index 100% rename from htdocs/core/lib/bank.lib.php rename to public/core/lib/bank.lib.php diff --git a/htdocs/core/lib/barcode.lib.php b/public/core/lib/barcode.lib.php similarity index 100% rename from htdocs/core/lib/barcode.lib.php rename to public/core/lib/barcode.lib.php diff --git a/htdocs/core/lib/categories.lib.php b/public/core/lib/categories.lib.php similarity index 100% rename from htdocs/core/lib/categories.lib.php rename to public/core/lib/categories.lib.php diff --git a/htdocs/core/lib/company.lib.php b/public/core/lib/company.lib.php similarity index 100% rename from htdocs/core/lib/company.lib.php rename to public/core/lib/company.lib.php diff --git a/htdocs/core/lib/contact.lib.php b/public/core/lib/contact.lib.php similarity index 100% rename from htdocs/core/lib/contact.lib.php rename to public/core/lib/contact.lib.php diff --git a/htdocs/core/lib/contract.lib.php b/public/core/lib/contract.lib.php similarity index 100% rename from htdocs/core/lib/contract.lib.php rename to public/core/lib/contract.lib.php diff --git a/htdocs/core/lib/cron.lib.php b/public/core/lib/cron.lib.php similarity index 100% rename from htdocs/core/lib/cron.lib.php rename to public/core/lib/cron.lib.php diff --git a/htdocs/core/lib/date.lib.php b/public/core/lib/date.lib.php similarity index 100% rename from htdocs/core/lib/date.lib.php rename to public/core/lib/date.lib.php diff --git a/htdocs/core/lib/doc.lib.php b/public/core/lib/doc.lib.php similarity index 100% rename from htdocs/core/lib/doc.lib.php rename to public/core/lib/doc.lib.php diff --git a/htdocs/core/lib/doleditor.lib.php b/public/core/lib/doleditor.lib.php similarity index 100% rename from htdocs/core/lib/doleditor.lib.php rename to public/core/lib/doleditor.lib.php diff --git a/htdocs/core/lib/donation.lib.php b/public/core/lib/donation.lib.php similarity index 100% rename from htdocs/core/lib/donation.lib.php rename to public/core/lib/donation.lib.php diff --git a/htdocs/core/lib/ecm.lib.php b/public/core/lib/ecm.lib.php similarity index 100% rename from htdocs/core/lib/ecm.lib.php rename to public/core/lib/ecm.lib.php diff --git a/htdocs/core/lib/emailing.lib.php b/public/core/lib/emailing.lib.php similarity index 100% rename from htdocs/core/lib/emailing.lib.php rename to public/core/lib/emailing.lib.php diff --git a/htdocs/core/lib/expedition.lib.php b/public/core/lib/expedition.lib.php similarity index 100% rename from htdocs/core/lib/expedition.lib.php rename to public/core/lib/expedition.lib.php diff --git a/htdocs/core/lib/expensereport.lib.php b/public/core/lib/expensereport.lib.php similarity index 100% rename from htdocs/core/lib/expensereport.lib.php rename to public/core/lib/expensereport.lib.php diff --git a/htdocs/core/lib/fichinter.lib.php b/public/core/lib/fichinter.lib.php similarity index 100% rename from htdocs/core/lib/fichinter.lib.php rename to public/core/lib/fichinter.lib.php diff --git a/htdocs/core/lib/files.lib.php b/public/core/lib/files.lib.php similarity index 100% rename from htdocs/core/lib/files.lib.php rename to public/core/lib/files.lib.php diff --git a/htdocs/core/lib/fiscalyear.lib.php b/public/core/lib/fiscalyear.lib.php similarity index 100% rename from htdocs/core/lib/fiscalyear.lib.php rename to public/core/lib/fiscalyear.lib.php diff --git a/htdocs/core/lib/format_cards.lib.php b/public/core/lib/format_cards.lib.php similarity index 100% rename from htdocs/core/lib/format_cards.lib.php rename to public/core/lib/format_cards.lib.php diff --git a/htdocs/core/lib/fourn.lib.php b/public/core/lib/fourn.lib.php similarity index 100% rename from htdocs/core/lib/fourn.lib.php rename to public/core/lib/fourn.lib.php diff --git a/htdocs/core/lib/functions.lib.php b/public/core/lib/functions.lib.php similarity index 100% rename from htdocs/core/lib/functions.lib.php rename to public/core/lib/functions.lib.php diff --git a/htdocs/core/lib/functions2.lib.php b/public/core/lib/functions2.lib.php similarity index 100% rename from htdocs/core/lib/functions2.lib.php rename to public/core/lib/functions2.lib.php diff --git a/htdocs/core/lib/functions_ch.lib.php b/public/core/lib/functions_ch.lib.php similarity index 100% rename from htdocs/core/lib/functions_ch.lib.php rename to public/core/lib/functions_ch.lib.php diff --git a/htdocs/core/lib/functionsnumtoword.lib.php b/public/core/lib/functionsnumtoword.lib.php similarity index 100% rename from htdocs/core/lib/functionsnumtoword.lib.php rename to public/core/lib/functionsnumtoword.lib.php diff --git a/htdocs/core/lib/geturl.lib.php b/public/core/lib/geturl.lib.php similarity index 100% rename from htdocs/core/lib/geturl.lib.php rename to public/core/lib/geturl.lib.php diff --git a/htdocs/core/lib/holiday.lib.php b/public/core/lib/holiday.lib.php similarity index 100% rename from htdocs/core/lib/holiday.lib.php rename to public/core/lib/holiday.lib.php diff --git a/htdocs/core/lib/hrm.lib.php b/public/core/lib/hrm.lib.php similarity index 100% rename from htdocs/core/lib/hrm.lib.php rename to public/core/lib/hrm.lib.php diff --git a/htdocs/core/lib/images.lib.php b/public/core/lib/images.lib.php similarity index 100% rename from htdocs/core/lib/images.lib.php rename to public/core/lib/images.lib.php diff --git a/htdocs/core/lib/import.lib.php b/public/core/lib/import.lib.php similarity index 100% rename from htdocs/core/lib/import.lib.php rename to public/core/lib/import.lib.php diff --git a/htdocs/core/lib/index.html b/public/core/lib/index.html similarity index 100% rename from htdocs/core/lib/index.html rename to public/core/lib/index.html diff --git a/htdocs/core/lib/invoice.lib.php b/public/core/lib/invoice.lib.php similarity index 100% rename from htdocs/core/lib/invoice.lib.php rename to public/core/lib/invoice.lib.php diff --git a/htdocs/core/lib/invoice2.lib.php b/public/core/lib/invoice2.lib.php similarity index 100% rename from htdocs/core/lib/invoice2.lib.php rename to public/core/lib/invoice2.lib.php diff --git a/htdocs/core/lib/json.lib.php b/public/core/lib/json.lib.php similarity index 100% rename from htdocs/core/lib/json.lib.php rename to public/core/lib/json.lib.php diff --git a/htdocs/core/lib/ldap.lib.php b/public/core/lib/ldap.lib.php similarity index 100% rename from htdocs/core/lib/ldap.lib.php rename to public/core/lib/ldap.lib.php diff --git a/htdocs/core/lib/loan.lib.php b/public/core/lib/loan.lib.php similarity index 100% rename from htdocs/core/lib/loan.lib.php rename to public/core/lib/loan.lib.php diff --git a/htdocs/core/lib/mailmanspip.lib.php b/public/core/lib/mailmanspip.lib.php similarity index 100% rename from htdocs/core/lib/mailmanspip.lib.php rename to public/core/lib/mailmanspip.lib.php diff --git a/htdocs/core/lib/member.lib.php b/public/core/lib/member.lib.php similarity index 100% rename from htdocs/core/lib/member.lib.php rename to public/core/lib/member.lib.php diff --git a/htdocs/core/lib/memory.lib.php b/public/core/lib/memory.lib.php similarity index 100% rename from htdocs/core/lib/memory.lib.php rename to public/core/lib/memory.lib.php diff --git a/htdocs/core/lib/multicurrency.lib.php b/public/core/lib/multicurrency.lib.php similarity index 100% rename from htdocs/core/lib/multicurrency.lib.php rename to public/core/lib/multicurrency.lib.php diff --git a/htdocs/core/lib/oauth.lib.php b/public/core/lib/oauth.lib.php similarity index 100% rename from htdocs/core/lib/oauth.lib.php rename to public/core/lib/oauth.lib.php diff --git a/htdocs/core/lib/order.lib.php b/public/core/lib/order.lib.php similarity index 100% rename from htdocs/core/lib/order.lib.php rename to public/core/lib/order.lib.php diff --git a/htdocs/core/lib/payments.lib.php b/public/core/lib/payments.lib.php similarity index 100% rename from htdocs/core/lib/payments.lib.php rename to public/core/lib/payments.lib.php diff --git a/htdocs/core/lib/pdf.lib.php b/public/core/lib/pdf.lib.php similarity index 100% rename from htdocs/core/lib/pdf.lib.php rename to public/core/lib/pdf.lib.php diff --git a/htdocs/core/lib/prelevement.lib.php b/public/core/lib/prelevement.lib.php similarity index 100% rename from htdocs/core/lib/prelevement.lib.php rename to public/core/lib/prelevement.lib.php diff --git a/htdocs/core/lib/price.lib.php b/public/core/lib/price.lib.php similarity index 100% rename from htdocs/core/lib/price.lib.php rename to public/core/lib/price.lib.php diff --git a/htdocs/core/lib/product.lib.php b/public/core/lib/product.lib.php similarity index 100% rename from htdocs/core/lib/product.lib.php rename to public/core/lib/product.lib.php diff --git a/htdocs/core/lib/project.lib.php b/public/core/lib/project.lib.php similarity index 100% rename from htdocs/core/lib/project.lib.php rename to public/core/lib/project.lib.php diff --git a/htdocs/core/lib/propal.lib.php b/public/core/lib/propal.lib.php similarity index 100% rename from htdocs/core/lib/propal.lib.php rename to public/core/lib/propal.lib.php diff --git a/htdocs/core/lib/receiptprinter.lib.php b/public/core/lib/receiptprinter.lib.php similarity index 100% rename from htdocs/core/lib/receiptprinter.lib.php rename to public/core/lib/receiptprinter.lib.php diff --git a/htdocs/core/lib/report.lib.php b/public/core/lib/report.lib.php similarity index 100% rename from htdocs/core/lib/report.lib.php rename to public/core/lib/report.lib.php diff --git a/htdocs/core/lib/resource.lib.php b/public/core/lib/resource.lib.php similarity index 100% rename from htdocs/core/lib/resource.lib.php rename to public/core/lib/resource.lib.php diff --git a/htdocs/core/lib/salaries.lib.php b/public/core/lib/salaries.lib.php similarity index 100% rename from htdocs/core/lib/salaries.lib.php rename to public/core/lib/salaries.lib.php diff --git a/htdocs/core/lib/security.lib.php b/public/core/lib/security.lib.php similarity index 100% rename from htdocs/core/lib/security.lib.php rename to public/core/lib/security.lib.php diff --git a/htdocs/core/lib/security2.lib.php b/public/core/lib/security2.lib.php similarity index 100% rename from htdocs/core/lib/security2.lib.php rename to public/core/lib/security2.lib.php diff --git a/htdocs/core/lib/sendings.lib.php b/public/core/lib/sendings.lib.php similarity index 100% rename from htdocs/core/lib/sendings.lib.php rename to public/core/lib/sendings.lib.php diff --git a/htdocs/core/lib/stock.lib.php b/public/core/lib/stock.lib.php similarity index 100% rename from htdocs/core/lib/stock.lib.php rename to public/core/lib/stock.lib.php diff --git a/htdocs/core/lib/supplier_proposal.lib.php b/public/core/lib/supplier_proposal.lib.php similarity index 100% rename from htdocs/core/lib/supplier_proposal.lib.php rename to public/core/lib/supplier_proposal.lib.php diff --git a/htdocs/core/lib/tax.lib.php b/public/core/lib/tax.lib.php similarity index 100% rename from htdocs/core/lib/tax.lib.php rename to public/core/lib/tax.lib.php diff --git a/htdocs/core/lib/treeview.lib.php b/public/core/lib/treeview.lib.php similarity index 100% rename from htdocs/core/lib/treeview.lib.php rename to public/core/lib/treeview.lib.php diff --git a/htdocs/core/lib/trip.lib.php b/public/core/lib/trip.lib.php similarity index 100% rename from htdocs/core/lib/trip.lib.php rename to public/core/lib/trip.lib.php diff --git a/htdocs/core/lib/usergroups.lib.php b/public/core/lib/usergroups.lib.php similarity index 100% rename from htdocs/core/lib/usergroups.lib.php rename to public/core/lib/usergroups.lib.php diff --git a/htdocs/core/lib/vat.lib.php b/public/core/lib/vat.lib.php similarity index 100% rename from htdocs/core/lib/vat.lib.php rename to public/core/lib/vat.lib.php diff --git a/htdocs/core/lib/ws.lib.php b/public/core/lib/ws.lib.php similarity index 100% rename from htdocs/core/lib/ws.lib.php rename to public/core/lib/ws.lib.php diff --git a/htdocs/core/lib/xcal.lib.php b/public/core/lib/xcal.lib.php similarity index 100% rename from htdocs/core/lib/xcal.lib.php rename to public/core/lib/xcal.lib.php diff --git a/htdocs/core/login/README.txt b/public/core/login/README.txt similarity index 100% rename from htdocs/core/login/README.txt rename to public/core/login/README.txt diff --git a/htdocs/core/login/functions_dolibarr.php b/public/core/login/functions_dolibarr.php similarity index 100% rename from htdocs/core/login/functions_dolibarr.php rename to public/core/login/functions_dolibarr.php diff --git a/htdocs/core/login/functions_empty.php b/public/core/login/functions_empty.php similarity index 100% rename from htdocs/core/login/functions_empty.php rename to public/core/login/functions_empty.php diff --git a/htdocs/core/login/functions_forceuser.php b/public/core/login/functions_forceuser.php similarity index 100% rename from htdocs/core/login/functions_forceuser.php rename to public/core/login/functions_forceuser.php diff --git a/htdocs/core/login/functions_http.php b/public/core/login/functions_http.php similarity index 100% rename from htdocs/core/login/functions_http.php rename to public/core/login/functions_http.php diff --git a/htdocs/core/login/functions_ldap.php b/public/core/login/functions_ldap.php similarity index 100% rename from htdocs/core/login/functions_ldap.php rename to public/core/login/functions_ldap.php diff --git a/htdocs/core/login/functions_openid.php b/public/core/login/functions_openid.php similarity index 100% rename from htdocs/core/login/functions_openid.php rename to public/core/login/functions_openid.php diff --git a/htdocs/core/login/index.html b/public/core/login/index.html similarity index 100% rename from htdocs/core/login/index.html rename to public/core/login/index.html diff --git a/htdocs/core/menus/index.html b/public/core/menus/index.html similarity index 100% rename from htdocs/core/menus/index.html rename to public/core/menus/index.html diff --git a/htdocs/core/menus/init_menu_auguria.sql b/public/core/menus/init_menu_auguria.sql similarity index 100% rename from htdocs/core/menus/init_menu_auguria.sql rename to public/core/menus/init_menu_auguria.sql diff --git a/htdocs/core/menus/standard/auguria.lib.php b/public/core/menus/standard/auguria.lib.php similarity index 100% rename from htdocs/core/menus/standard/auguria.lib.php rename to public/core/menus/standard/auguria.lib.php diff --git a/htdocs/core/menus/standard/auguria_menu.php b/public/core/menus/standard/auguria_menu.php similarity index 100% rename from htdocs/core/menus/standard/auguria_menu.php rename to public/core/menus/standard/auguria_menu.php diff --git a/htdocs/core/menus/standard/eldy.lib.php b/public/core/menus/standard/eldy.lib.php similarity index 100% rename from htdocs/core/menus/standard/eldy.lib.php rename to public/core/menus/standard/eldy.lib.php diff --git a/htdocs/core/menus/standard/eldy_menu.php b/public/core/menus/standard/eldy_menu.php similarity index 100% rename from htdocs/core/menus/standard/eldy_menu.php rename to public/core/menus/standard/eldy_menu.php diff --git a/htdocs/core/menus/standard/empty.php b/public/core/menus/standard/empty.php similarity index 100% rename from htdocs/core/menus/standard/empty.php rename to public/core/menus/standard/empty.php diff --git a/htdocs/core/menus/standard/index.html b/public/core/menus/standard/index.html similarity index 100% rename from htdocs/core/menus/standard/index.html rename to public/core/menus/standard/index.html diff --git a/htdocs/core/modules/DolibarrModules.class.php b/public/core/modules/DolibarrModules.class.php similarity index 100% rename from htdocs/core/modules/DolibarrModules.class.php rename to public/core/modules/DolibarrModules.class.php diff --git a/htdocs/core/modules/action/index.html b/public/core/modules/action/index.html similarity index 100% rename from htdocs/core/modules/action/index.html rename to public/core/modules/action/index.html diff --git a/htdocs/core/modules/action/modules_action.php b/public/core/modules/action/modules_action.php similarity index 100% rename from htdocs/core/modules/action/modules_action.php rename to public/core/modules/action/modules_action.php diff --git a/htdocs/core/modules/action/rapport.pdf.php b/public/core/modules/action/rapport.pdf.php similarity index 100% rename from htdocs/core/modules/action/rapport.pdf.php rename to public/core/modules/action/rapport.pdf.php diff --git a/htdocs/core/modules/bank/doc/pdf_ban.modules.php b/public/core/modules/bank/doc/pdf_ban.modules.php similarity index 100% rename from htdocs/core/modules/bank/doc/pdf_ban.modules.php rename to public/core/modules/bank/doc/pdf_ban.modules.php diff --git a/htdocs/core/modules/bank/doc/pdf_sepamandate.modules.php b/public/core/modules/bank/doc/pdf_sepamandate.modules.php similarity index 100% rename from htdocs/core/modules/bank/doc/pdf_sepamandate.modules.php rename to public/core/modules/bank/doc/pdf_sepamandate.modules.php diff --git a/htdocs/core/modules/bank/modules_bank.php b/public/core/modules/bank/modules_bank.php similarity index 100% rename from htdocs/core/modules/bank/modules_bank.php rename to public/core/modules/bank/modules_bank.php diff --git a/htdocs/core/modules/barcode/doc/index.html b/public/core/modules/barcode/doc/index.html similarity index 100% rename from htdocs/core/modules/barcode/doc/index.html rename to public/core/modules/barcode/doc/index.html diff --git a/htdocs/core/modules/barcode/doc/phpbarcode.modules.php b/public/core/modules/barcode/doc/phpbarcode.modules.php similarity index 100% rename from htdocs/core/modules/barcode/doc/phpbarcode.modules.php rename to public/core/modules/barcode/doc/phpbarcode.modules.php diff --git a/htdocs/core/modules/barcode/doc/tcpdfbarcode.modules.php b/public/core/modules/barcode/doc/tcpdfbarcode.modules.php similarity index 100% rename from htdocs/core/modules/barcode/doc/tcpdfbarcode.modules.php rename to public/core/modules/barcode/doc/tcpdfbarcode.modules.php diff --git a/htdocs/core/modules/barcode/index.html b/public/core/modules/barcode/index.html similarity index 100% rename from htdocs/core/modules/barcode/index.html rename to public/core/modules/barcode/index.html diff --git a/htdocs/core/modules/barcode/mod_barcode_product_standard.php b/public/core/modules/barcode/mod_barcode_product_standard.php similarity index 100% rename from htdocs/core/modules/barcode/mod_barcode_product_standard.php rename to public/core/modules/barcode/mod_barcode_product_standard.php diff --git a/htdocs/core/modules/barcode/modules_barcode.class.php b/public/core/modules/barcode/modules_barcode.class.php similarity index 100% rename from htdocs/core/modules/barcode/modules_barcode.class.php rename to public/core/modules/barcode/modules_barcode.class.php diff --git a/htdocs/core/modules/cheque/doc/index.html b/public/core/modules/cheque/doc/index.html similarity index 100% rename from htdocs/core/modules/cheque/doc/index.html rename to public/core/modules/cheque/doc/index.html diff --git a/htdocs/core/modules/cheque/doc/pdf_blochet.class.php b/public/core/modules/cheque/doc/pdf_blochet.class.php similarity index 100% rename from htdocs/core/modules/cheque/doc/pdf_blochet.class.php rename to public/core/modules/cheque/doc/pdf_blochet.class.php diff --git a/htdocs/core/modules/cheque/index.html b/public/core/modules/cheque/index.html similarity index 100% rename from htdocs/core/modules/cheque/index.html rename to public/core/modules/cheque/index.html diff --git a/htdocs/core/modules/cheque/mod_chequereceipt_mint.php b/public/core/modules/cheque/mod_chequereceipt_mint.php similarity index 100% rename from htdocs/core/modules/cheque/mod_chequereceipt_mint.php rename to public/core/modules/cheque/mod_chequereceipt_mint.php diff --git a/htdocs/core/modules/cheque/mod_chequereceipt_thyme.php b/public/core/modules/cheque/mod_chequereceipt_thyme.php similarity index 100% rename from htdocs/core/modules/cheque/mod_chequereceipt_thyme.php rename to public/core/modules/cheque/mod_chequereceipt_thyme.php diff --git a/htdocs/core/modules/cheque/modules_chequereceipts.php b/public/core/modules/cheque/modules_chequereceipts.php similarity index 100% rename from htdocs/core/modules/cheque/modules_chequereceipts.php rename to public/core/modules/cheque/modules_chequereceipts.php diff --git a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php b/public/core/modules/commande/doc/doc_generic_order_odt.modules.php similarity index 100% rename from htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php rename to public/core/modules/commande/doc/doc_generic_order_odt.modules.php diff --git a/htdocs/core/modules/commande/doc/index.html b/public/core/modules/commande/doc/index.html similarity index 100% rename from htdocs/core/modules/commande/doc/index.html rename to public/core/modules/commande/doc/index.html diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/public/core/modules/commande/doc/pdf_einstein.modules.php similarity index 100% rename from htdocs/core/modules/commande/doc/pdf_einstein.modules.php rename to public/core/modules/commande/doc/pdf_einstein.modules.php diff --git a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php b/public/core/modules/commande/doc/pdf_proforma.modules.php similarity index 100% rename from htdocs/core/modules/commande/doc/pdf_proforma.modules.php rename to public/core/modules/commande/doc/pdf_proforma.modules.php diff --git a/htdocs/core/modules/commande/index.html b/public/core/modules/commande/index.html similarity index 100% rename from htdocs/core/modules/commande/index.html rename to public/core/modules/commande/index.html diff --git a/htdocs/core/modules/commande/mod_commande_marbre.php b/public/core/modules/commande/mod_commande_marbre.php similarity index 100% rename from htdocs/core/modules/commande/mod_commande_marbre.php rename to public/core/modules/commande/mod_commande_marbre.php diff --git a/htdocs/core/modules/commande/mod_commande_saphir.php b/public/core/modules/commande/mod_commande_saphir.php similarity index 100% rename from htdocs/core/modules/commande/mod_commande_saphir.php rename to public/core/modules/commande/mod_commande_saphir.php diff --git a/htdocs/core/modules/commande/modules_commande.php b/public/core/modules/commande/modules_commande.php similarity index 100% rename from htdocs/core/modules/commande/modules_commande.php rename to public/core/modules/commande/modules_commande.php diff --git a/htdocs/core/modules/contract/doc/index.html b/public/core/modules/contract/doc/index.html similarity index 100% rename from htdocs/core/modules/contract/doc/index.html rename to public/core/modules/contract/doc/index.html diff --git a/htdocs/core/modules/contract/doc/pdf_strato.modules.php b/public/core/modules/contract/doc/pdf_strato.modules.php similarity index 100% rename from htdocs/core/modules/contract/doc/pdf_strato.modules.php rename to public/core/modules/contract/doc/pdf_strato.modules.php diff --git a/htdocs/core/modules/contract/index.html b/public/core/modules/contract/index.html similarity index 100% rename from htdocs/core/modules/contract/index.html rename to public/core/modules/contract/index.html diff --git a/htdocs/core/modules/contract/mod_contract_magre.php b/public/core/modules/contract/mod_contract_magre.php similarity index 100% rename from htdocs/core/modules/contract/mod_contract_magre.php rename to public/core/modules/contract/mod_contract_magre.php diff --git a/htdocs/core/modules/contract/mod_contract_olive.php b/public/core/modules/contract/mod_contract_olive.php similarity index 100% rename from htdocs/core/modules/contract/mod_contract_olive.php rename to public/core/modules/contract/mod_contract_olive.php diff --git a/htdocs/core/modules/contract/mod_contract_serpis.php b/public/core/modules/contract/mod_contract_serpis.php similarity index 100% rename from htdocs/core/modules/contract/mod_contract_serpis.php rename to public/core/modules/contract/mod_contract_serpis.php diff --git a/htdocs/core/modules/contract/modules_contract.php b/public/core/modules/contract/modules_contract.php similarity index 100% rename from htdocs/core/modules/contract/modules_contract.php rename to public/core/modules/contract/modules_contract.php diff --git a/htdocs/core/modules/dons/html_cerfafr.html b/public/core/modules/dons/html_cerfafr.html similarity index 100% rename from htdocs/core/modules/dons/html_cerfafr.html rename to public/core/modules/dons/html_cerfafr.html diff --git a/htdocs/core/modules/dons/html_cerfafr.modules.php b/public/core/modules/dons/html_cerfafr.modules.php similarity index 100% rename from htdocs/core/modules/dons/html_cerfafr.modules.php rename to public/core/modules/dons/html_cerfafr.modules.php diff --git a/htdocs/core/modules/dons/index.html b/public/core/modules/dons/index.html similarity index 100% rename from htdocs/core/modules/dons/index.html rename to public/core/modules/dons/index.html diff --git a/htdocs/core/modules/dons/modules_don.php b/public/core/modules/dons/modules_don.php similarity index 100% rename from htdocs/core/modules/dons/modules_don.php rename to public/core/modules/dons/modules_don.php diff --git a/htdocs/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php b/public/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php similarity index 100% rename from htdocs/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php rename to public/core/modules/expedition/doc/doc_generic_shipment_odt.modules.php diff --git a/htdocs/core/modules/expedition/doc/index.html b/public/core/modules/expedition/doc/index.html similarity index 100% rename from htdocs/core/modules/expedition/doc/index.html rename to public/core/modules/expedition/doc/index.html diff --git a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php b/public/core/modules/expedition/doc/pdf_merou.modules.php similarity index 100% rename from htdocs/core/modules/expedition/doc/pdf_merou.modules.php rename to public/core/modules/expedition/doc/pdf_merou.modules.php diff --git a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php b/public/core/modules/expedition/doc/pdf_rouget.modules.php similarity index 100% rename from htdocs/core/modules/expedition/doc/pdf_rouget.modules.php rename to public/core/modules/expedition/doc/pdf_rouget.modules.php diff --git a/htdocs/core/modules/expedition/index.html b/public/core/modules/expedition/index.html similarity index 100% rename from htdocs/core/modules/expedition/index.html rename to public/core/modules/expedition/index.html diff --git a/htdocs/core/modules/expedition/mod_expedition_ribera.php b/public/core/modules/expedition/mod_expedition_ribera.php similarity index 100% rename from htdocs/core/modules/expedition/mod_expedition_ribera.php rename to public/core/modules/expedition/mod_expedition_ribera.php diff --git a/htdocs/core/modules/expedition/mod_expedition_safor.php b/public/core/modules/expedition/mod_expedition_safor.php similarity index 100% rename from htdocs/core/modules/expedition/mod_expedition_safor.php rename to public/core/modules/expedition/mod_expedition_safor.php diff --git a/htdocs/core/modules/expedition/modules_expedition.php b/public/core/modules/expedition/modules_expedition.php similarity index 100% rename from htdocs/core/modules/expedition/modules_expedition.php rename to public/core/modules/expedition/modules_expedition.php diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/public/core/modules/expensereport/doc/pdf_standard.modules.php similarity index 100% rename from htdocs/core/modules/expensereport/doc/pdf_standard.modules.php rename to public/core/modules/expensereport/doc/pdf_standard.modules.php diff --git a/htdocs/core/modules/expensereport/modules_expensereport.php b/public/core/modules/expensereport/modules_expensereport.php similarity index 100% rename from htdocs/core/modules/expensereport/modules_expensereport.php rename to public/core/modules/expensereport/modules_expensereport.php diff --git a/htdocs/core/modules/export/export_csv.modules.php b/public/core/modules/export/export_csv.modules.php similarity index 100% rename from htdocs/core/modules/export/export_csv.modules.php rename to public/core/modules/export/export_csv.modules.php diff --git a/htdocs/core/modules/export/export_excel.modules.php b/public/core/modules/export/export_excel.modules.php similarity index 100% rename from htdocs/core/modules/export/export_excel.modules.php rename to public/core/modules/export/export_excel.modules.php diff --git a/htdocs/core/modules/export/export_excel2007.modules.php b/public/core/modules/export/export_excel2007.modules.php similarity index 100% rename from htdocs/core/modules/export/export_excel2007.modules.php rename to public/core/modules/export/export_excel2007.modules.php diff --git a/htdocs/core/modules/export/export_tsv.modules.php b/public/core/modules/export/export_tsv.modules.php similarity index 100% rename from htdocs/core/modules/export/export_tsv.modules.php rename to public/core/modules/export/export_tsv.modules.php diff --git a/htdocs/core/modules/export/index.html b/public/core/modules/export/index.html similarity index 100% rename from htdocs/core/modules/export/index.html rename to public/core/modules/export/index.html diff --git a/htdocs/core/modules/export/modules_export.php b/public/core/modules/export/modules_export.php similarity index 100% rename from htdocs/core/modules/export/modules_export.php rename to public/core/modules/export/modules_export.php diff --git a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php b/public/core/modules/facture/doc/doc_generic_invoice_odt.modules.php similarity index 100% rename from htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php rename to public/core/modules/facture/doc/doc_generic_invoice_odt.modules.php diff --git a/htdocs/core/modules/facture/doc/index.html b/public/core/modules/facture/doc/index.html similarity index 100% rename from htdocs/core/modules/facture/doc/index.html rename to public/core/modules/facture/doc/index.html diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/public/core/modules/facture/doc/pdf_crabe.modules.php similarity index 100% rename from htdocs/core/modules/facture/doc/pdf_crabe.modules.php rename to public/core/modules/facture/doc/pdf_crabe.modules.php diff --git a/htdocs/core/modules/facture/index.html b/public/core/modules/facture/index.html similarity index 100% rename from htdocs/core/modules/facture/index.html rename to public/core/modules/facture/index.html diff --git a/htdocs/core/modules/facture/mod_facture_mars.php b/public/core/modules/facture/mod_facture_mars.php similarity index 100% rename from htdocs/core/modules/facture/mod_facture_mars.php rename to public/core/modules/facture/mod_facture_mars.php diff --git a/htdocs/core/modules/facture/mod_facture_mercure.php b/public/core/modules/facture/mod_facture_mercure.php similarity index 100% rename from htdocs/core/modules/facture/mod_facture_mercure.php rename to public/core/modules/facture/mod_facture_mercure.php diff --git a/htdocs/core/modules/facture/mod_facture_terre.php b/public/core/modules/facture/mod_facture_terre.php similarity index 100% rename from htdocs/core/modules/facture/mod_facture_terre.php rename to public/core/modules/facture/mod_facture_terre.php diff --git a/htdocs/core/modules/facture/modules_facture.php b/public/core/modules/facture/modules_facture.php similarity index 100% rename from htdocs/core/modules/facture/modules_facture.php rename to public/core/modules/facture/modules_facture.php diff --git a/htdocs/core/modules/fichinter/doc/index.html b/public/core/modules/fichinter/doc/index.html similarity index 100% rename from htdocs/core/modules/fichinter/doc/index.html rename to public/core/modules/fichinter/doc/index.html diff --git a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php b/public/core/modules/fichinter/doc/pdf_soleil.modules.php similarity index 100% rename from htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php rename to public/core/modules/fichinter/doc/pdf_soleil.modules.php diff --git a/htdocs/core/modules/fichinter/index.html b/public/core/modules/fichinter/index.html similarity index 100% rename from htdocs/core/modules/fichinter/index.html rename to public/core/modules/fichinter/index.html diff --git a/htdocs/core/modules/fichinter/mod_arctic.php b/public/core/modules/fichinter/mod_arctic.php similarity index 100% rename from htdocs/core/modules/fichinter/mod_arctic.php rename to public/core/modules/fichinter/mod_arctic.php diff --git a/htdocs/core/modules/fichinter/mod_pacific.php b/public/core/modules/fichinter/mod_pacific.php similarity index 100% rename from htdocs/core/modules/fichinter/mod_pacific.php rename to public/core/modules/fichinter/mod_pacific.php diff --git a/htdocs/core/modules/fichinter/modules_fichinter.php b/public/core/modules/fichinter/modules_fichinter.php similarity index 100% rename from htdocs/core/modules/fichinter/modules_fichinter.php rename to public/core/modules/fichinter/modules_fichinter.php diff --git a/htdocs/core/modules/import/import_csv.modules.php b/public/core/modules/import/import_csv.modules.php similarity index 100% rename from htdocs/core/modules/import/import_csv.modules.php rename to public/core/modules/import/import_csv.modules.php diff --git a/htdocs/core/modules/import/import_xlsx.modules.php b/public/core/modules/import/import_xlsx.modules.php similarity index 100% rename from htdocs/core/modules/import/import_xlsx.modules.php rename to public/core/modules/import/import_xlsx.modules.php diff --git a/htdocs/core/modules/import/index.html b/public/core/modules/import/index.html similarity index 100% rename from htdocs/core/modules/import/index.html rename to public/core/modules/import/index.html diff --git a/htdocs/core/modules/import/modules_import.php b/public/core/modules/import/modules_import.php similarity index 100% rename from htdocs/core/modules/import/modules_import.php rename to public/core/modules/import/modules_import.php diff --git a/htdocs/core/modules/index.html b/public/core/modules/index.html similarity index 100% rename from htdocs/core/modules/index.html rename to public/core/modules/index.html diff --git a/htdocs/core/modules/livraison/doc/index.html b/public/core/modules/livraison/doc/index.html similarity index 100% rename from htdocs/core/modules/livraison/doc/index.html rename to public/core/modules/livraison/doc/index.html diff --git a/htdocs/core/modules/livraison/doc/pdf_typhon.modules.php b/public/core/modules/livraison/doc/pdf_typhon.modules.php similarity index 100% rename from htdocs/core/modules/livraison/doc/pdf_typhon.modules.php rename to public/core/modules/livraison/doc/pdf_typhon.modules.php diff --git a/htdocs/core/modules/livraison/index.html b/public/core/modules/livraison/index.html similarity index 100% rename from htdocs/core/modules/livraison/index.html rename to public/core/modules/livraison/index.html diff --git a/htdocs/core/modules/livraison/mod_livraison_jade.php b/public/core/modules/livraison/mod_livraison_jade.php similarity index 100% rename from htdocs/core/modules/livraison/mod_livraison_jade.php rename to public/core/modules/livraison/mod_livraison_jade.php diff --git a/htdocs/core/modules/livraison/mod_livraison_saphir.php b/public/core/modules/livraison/mod_livraison_saphir.php similarity index 100% rename from htdocs/core/modules/livraison/mod_livraison_saphir.php rename to public/core/modules/livraison/mod_livraison_saphir.php diff --git a/htdocs/core/modules/livraison/modules_livraison.php b/public/core/modules/livraison/modules_livraison.php similarity index 100% rename from htdocs/core/modules/livraison/modules_livraison.php rename to public/core/modules/livraison/modules_livraison.php diff --git a/htdocs/core/modules/mailings/README b/public/core/modules/mailings/README similarity index 100% rename from htdocs/core/modules/mailings/README rename to public/core/modules/mailings/README diff --git a/htdocs/core/modules/mailings/advthirdparties.modules.php b/public/core/modules/mailings/advthirdparties.modules.php similarity index 100% rename from htdocs/core/modules/mailings/advthirdparties.modules.php rename to public/core/modules/mailings/advthirdparties.modules.php diff --git a/htdocs/core/modules/mailings/contacts1.modules.php b/public/core/modules/mailings/contacts1.modules.php similarity index 100% rename from htdocs/core/modules/mailings/contacts1.modules.php rename to public/core/modules/mailings/contacts1.modules.php diff --git a/htdocs/core/modules/mailings/contacts2.modules.php b/public/core/modules/mailings/contacts2.modules.php similarity index 100% rename from htdocs/core/modules/mailings/contacts2.modules.php rename to public/core/modules/mailings/contacts2.modules.php diff --git a/htdocs/core/modules/mailings/contacts3.modules.php b/public/core/modules/mailings/contacts3.modules.php similarity index 100% rename from htdocs/core/modules/mailings/contacts3.modules.php rename to public/core/modules/mailings/contacts3.modules.php diff --git a/htdocs/core/modules/mailings/contacts4.modules.php b/public/core/modules/mailings/contacts4.modules.php similarity index 100% rename from htdocs/core/modules/mailings/contacts4.modules.php rename to public/core/modules/mailings/contacts4.modules.php diff --git a/htdocs/core/modules/mailings/example.modules.php b/public/core/modules/mailings/example.modules.php similarity index 100% rename from htdocs/core/modules/mailings/example.modules.php rename to public/core/modules/mailings/example.modules.php diff --git a/htdocs/core/modules/mailings/fraise.modules.php b/public/core/modules/mailings/fraise.modules.php similarity index 100% rename from htdocs/core/modules/mailings/fraise.modules.php rename to public/core/modules/mailings/fraise.modules.php diff --git a/htdocs/core/modules/mailings/framboise.modules.php b/public/core/modules/mailings/framboise.modules.php similarity index 100% rename from htdocs/core/modules/mailings/framboise.modules.php rename to public/core/modules/mailings/framboise.modules.php diff --git a/htdocs/core/modules/mailings/index.html b/public/core/modules/mailings/index.html similarity index 100% rename from htdocs/core/modules/mailings/index.html rename to public/core/modules/mailings/index.html diff --git a/htdocs/core/modules/mailings/modules_mailings.php b/public/core/modules/mailings/modules_mailings.php similarity index 100% rename from htdocs/core/modules/mailings/modules_mailings.php rename to public/core/modules/mailings/modules_mailings.php diff --git a/htdocs/core/modules/mailings/pomme.modules.php b/public/core/modules/mailings/pomme.modules.php similarity index 100% rename from htdocs/core/modules/mailings/pomme.modules.php rename to public/core/modules/mailings/pomme.modules.php diff --git a/htdocs/core/modules/mailings/thirdparties.modules.php b/public/core/modules/mailings/thirdparties.modules.php similarity index 100% rename from htdocs/core/modules/mailings/thirdparties.modules.php rename to public/core/modules/mailings/thirdparties.modules.php diff --git a/htdocs/core/modules/mailings/thirdparties_services_expired.modules.php b/public/core/modules/mailings/thirdparties_services_expired.modules.php similarity index 100% rename from htdocs/core/modules/mailings/thirdparties_services_expired.modules.php rename to public/core/modules/mailings/thirdparties_services_expired.modules.php diff --git a/htdocs/core/modules/mailings/xinputfile.modules.php b/public/core/modules/mailings/xinputfile.modules.php similarity index 100% rename from htdocs/core/modules/mailings/xinputfile.modules.php rename to public/core/modules/mailings/xinputfile.modules.php diff --git a/htdocs/core/modules/mailings/xinputuser.modules.php b/public/core/modules/mailings/xinputuser.modules.php similarity index 100% rename from htdocs/core/modules/mailings/xinputuser.modules.php rename to public/core/modules/mailings/xinputuser.modules.php diff --git a/htdocs/core/modules/member/doc/index.html b/public/core/modules/member/doc/index.html similarity index 100% rename from htdocs/core/modules/member/doc/index.html rename to public/core/modules/member/doc/index.html diff --git a/htdocs/core/modules/member/doc/pdf_standard.class.php b/public/core/modules/member/doc/pdf_standard.class.php similarity index 100% rename from htdocs/core/modules/member/doc/pdf_standard.class.php rename to public/core/modules/member/doc/pdf_standard.class.php diff --git a/htdocs/core/modules/member/index.html b/public/core/modules/member/index.html similarity index 100% rename from htdocs/core/modules/member/index.html rename to public/core/modules/member/index.html diff --git a/htdocs/core/modules/member/modules_cards.php b/public/core/modules/member/modules_cards.php similarity index 100% rename from htdocs/core/modules/member/modules_cards.php rename to public/core/modules/member/modules_cards.php diff --git a/htdocs/core/modules/modAccounting.class.php b/public/core/modules/modAccounting.class.php similarity index 100% rename from htdocs/core/modules/modAccounting.class.php rename to public/core/modules/modAccounting.class.php diff --git a/htdocs/core/modules/modAdherent.class.php b/public/core/modules/modAdherent.class.php similarity index 100% rename from htdocs/core/modules/modAdherent.class.php rename to public/core/modules/modAdherent.class.php diff --git a/htdocs/core/modules/modAgenda.class.php b/public/core/modules/modAgenda.class.php similarity index 100% rename from htdocs/core/modules/modAgenda.class.php rename to public/core/modules/modAgenda.class.php diff --git a/htdocs/core/modules/modApi.class.php b/public/core/modules/modApi.class.php similarity index 100% rename from htdocs/core/modules/modApi.class.php rename to public/core/modules/modApi.class.php diff --git a/htdocs/core/modules/modBanque.class.php b/public/core/modules/modBanque.class.php similarity index 100% rename from htdocs/core/modules/modBanque.class.php rename to public/core/modules/modBanque.class.php diff --git a/htdocs/core/modules/modBarcode.class.php b/public/core/modules/modBarcode.class.php similarity index 100% rename from htdocs/core/modules/modBarcode.class.php rename to public/core/modules/modBarcode.class.php diff --git a/htdocs/core/modules/modBookmark.class.php b/public/core/modules/modBookmark.class.php similarity index 100% rename from htdocs/core/modules/modBookmark.class.php rename to public/core/modules/modBookmark.class.php diff --git a/htdocs/core/modules/modCashDesk.class.php b/public/core/modules/modCashDesk.class.php similarity index 100% rename from htdocs/core/modules/modCashDesk.class.php rename to public/core/modules/modCashDesk.class.php diff --git a/htdocs/core/modules/modCategorie.class.php b/public/core/modules/modCategorie.class.php similarity index 100% rename from htdocs/core/modules/modCategorie.class.php rename to public/core/modules/modCategorie.class.php diff --git a/htdocs/core/modules/modClickToDial.class.php b/public/core/modules/modClickToDial.class.php similarity index 100% rename from htdocs/core/modules/modClickToDial.class.php rename to public/core/modules/modClickToDial.class.php diff --git a/htdocs/core/modules/modCommande.class.php b/public/core/modules/modCommande.class.php similarity index 100% rename from htdocs/core/modules/modCommande.class.php rename to public/core/modules/modCommande.class.php diff --git a/htdocs/core/modules/modComptabilite.class.php b/public/core/modules/modComptabilite.class.php similarity index 100% rename from htdocs/core/modules/modComptabilite.class.php rename to public/core/modules/modComptabilite.class.php diff --git a/htdocs/core/modules/modContrat.class.php b/public/core/modules/modContrat.class.php similarity index 100% rename from htdocs/core/modules/modContrat.class.php rename to public/core/modules/modContrat.class.php diff --git a/htdocs/core/modules/modCron.class.php b/public/core/modules/modCron.class.php similarity index 100% rename from htdocs/core/modules/modCron.class.php rename to public/core/modules/modCron.class.php diff --git a/htdocs/core/modules/modDeplacement.class.php b/public/core/modules/modDeplacement.class.php similarity index 100% rename from htdocs/core/modules/modDeplacement.class.php rename to public/core/modules/modDeplacement.class.php diff --git a/htdocs/core/modules/modDocumentGeneration.class.php b/public/core/modules/modDocumentGeneration.class.php similarity index 100% rename from htdocs/core/modules/modDocumentGeneration.class.php rename to public/core/modules/modDocumentGeneration.class.php diff --git a/htdocs/core/modules/modDon.class.php b/public/core/modules/modDon.class.php similarity index 100% rename from htdocs/core/modules/modDon.class.php rename to public/core/modules/modDon.class.php diff --git a/htdocs/core/modules/modDynamicPrices.class.php b/public/core/modules/modDynamicPrices.class.php similarity index 100% rename from htdocs/core/modules/modDynamicPrices.class.php rename to public/core/modules/modDynamicPrices.class.php diff --git a/htdocs/core/modules/modECM.class.php b/public/core/modules/modECM.class.php similarity index 100% rename from htdocs/core/modules/modECM.class.php rename to public/core/modules/modECM.class.php diff --git a/htdocs/core/modules/modExpedition.class.php b/public/core/modules/modExpedition.class.php similarity index 100% rename from htdocs/core/modules/modExpedition.class.php rename to public/core/modules/modExpedition.class.php diff --git a/htdocs/core/modules/modExpenseReport.class.php b/public/core/modules/modExpenseReport.class.php similarity index 100% rename from htdocs/core/modules/modExpenseReport.class.php rename to public/core/modules/modExpenseReport.class.php diff --git a/htdocs/core/modules/modExport.class.php b/public/core/modules/modExport.class.php similarity index 100% rename from htdocs/core/modules/modExport.class.php rename to public/core/modules/modExport.class.php diff --git a/htdocs/core/modules/modExternalRss.class.php b/public/core/modules/modExternalRss.class.php similarity index 100% rename from htdocs/core/modules/modExternalRss.class.php rename to public/core/modules/modExternalRss.class.php diff --git a/htdocs/core/modules/modExternalSite.class.php b/public/core/modules/modExternalSite.class.php similarity index 100% rename from htdocs/core/modules/modExternalSite.class.php rename to public/core/modules/modExternalSite.class.php diff --git a/htdocs/core/modules/modFTP.class.php b/public/core/modules/modFTP.class.php similarity index 100% rename from htdocs/core/modules/modFTP.class.php rename to public/core/modules/modFTP.class.php diff --git a/htdocs/core/modules/modFacture.class.php b/public/core/modules/modFacture.class.php similarity index 100% rename from htdocs/core/modules/modFacture.class.php rename to public/core/modules/modFacture.class.php diff --git a/htdocs/core/modules/modFckeditor.class.php b/public/core/modules/modFckeditor.class.php similarity index 100% rename from htdocs/core/modules/modFckeditor.class.php rename to public/core/modules/modFckeditor.class.php diff --git a/htdocs/core/modules/modFicheinter.class.php b/public/core/modules/modFicheinter.class.php similarity index 100% rename from htdocs/core/modules/modFicheinter.class.php rename to public/core/modules/modFicheinter.class.php diff --git a/htdocs/core/modules/modFournisseur.class.php b/public/core/modules/modFournisseur.class.php similarity index 100% rename from htdocs/core/modules/modFournisseur.class.php rename to public/core/modules/modFournisseur.class.php diff --git a/htdocs/core/modules/modGeoIPMaxmind.class.php b/public/core/modules/modGeoIPMaxmind.class.php similarity index 100% rename from htdocs/core/modules/modGeoIPMaxmind.class.php rename to public/core/modules/modGeoIPMaxmind.class.php diff --git a/htdocs/core/modules/modGravatar.class.php b/public/core/modules/modGravatar.class.php similarity index 100% rename from htdocs/core/modules/modGravatar.class.php rename to public/core/modules/modGravatar.class.php diff --git a/htdocs/core/modules/modHRM.class.php b/public/core/modules/modHRM.class.php similarity index 100% rename from htdocs/core/modules/modHRM.class.php rename to public/core/modules/modHRM.class.php diff --git a/htdocs/core/modules/modHoliday.class.php b/public/core/modules/modHoliday.class.php similarity index 100% rename from htdocs/core/modules/modHoliday.class.php rename to public/core/modules/modHoliday.class.php diff --git a/htdocs/core/modules/modImport.class.php b/public/core/modules/modImport.class.php similarity index 100% rename from htdocs/core/modules/modImport.class.php rename to public/core/modules/modImport.class.php diff --git a/htdocs/core/modules/modIncoterm.class.php b/public/core/modules/modIncoterm.class.php similarity index 100% rename from htdocs/core/modules/modIncoterm.class.php rename to public/core/modules/modIncoterm.class.php diff --git a/htdocs/core/modules/modLabel.class.php b/public/core/modules/modLabel.class.php similarity index 100% rename from htdocs/core/modules/modLabel.class.php rename to public/core/modules/modLabel.class.php diff --git a/htdocs/core/modules/modLdap.class.php b/public/core/modules/modLdap.class.php similarity index 100% rename from htdocs/core/modules/modLdap.class.php rename to public/core/modules/modLdap.class.php diff --git a/htdocs/core/modules/modLoan.class.php b/public/core/modules/modLoan.class.php similarity index 100% rename from htdocs/core/modules/modLoan.class.php rename to public/core/modules/modLoan.class.php diff --git a/htdocs/core/modules/modMailing.class.php b/public/core/modules/modMailing.class.php similarity index 100% rename from htdocs/core/modules/modMailing.class.php rename to public/core/modules/modMailing.class.php diff --git a/htdocs/core/modules/modMailmanSpip.class.php b/public/core/modules/modMailmanSpip.class.php similarity index 100% rename from htdocs/core/modules/modMailmanSpip.class.php rename to public/core/modules/modMailmanSpip.class.php diff --git a/htdocs/core/modules/modMargin.class.php b/public/core/modules/modMargin.class.php similarity index 100% rename from htdocs/core/modules/modMargin.class.php rename to public/core/modules/modMargin.class.php diff --git a/htdocs/core/modules/modMultiCurrency.class.php b/public/core/modules/modMultiCurrency.class.php similarity index 100% rename from htdocs/core/modules/modMultiCurrency.class.php rename to public/core/modules/modMultiCurrency.class.php diff --git a/htdocs/core/modules/modNotification.class.php b/public/core/modules/modNotification.class.php similarity index 100% rename from htdocs/core/modules/modNotification.class.php rename to public/core/modules/modNotification.class.php diff --git a/htdocs/core/modules/modOauth.class.php b/public/core/modules/modOauth.class.php similarity index 100% rename from htdocs/core/modules/modOauth.class.php rename to public/core/modules/modOauth.class.php diff --git a/htdocs/core/modules/modOpenSurvey.class.php b/public/core/modules/modOpenSurvey.class.php similarity index 100% rename from htdocs/core/modules/modOpenSurvey.class.php rename to public/core/modules/modOpenSurvey.class.php diff --git a/htdocs/core/modules/modPaybox.class.php b/public/core/modules/modPaybox.class.php similarity index 100% rename from htdocs/core/modules/modPaybox.class.php rename to public/core/modules/modPaybox.class.php diff --git a/htdocs/core/modules/modPaypal.class.php b/public/core/modules/modPaypal.class.php similarity index 100% rename from htdocs/core/modules/modPaypal.class.php rename to public/core/modules/modPaypal.class.php diff --git a/htdocs/core/modules/modPrelevement.class.php b/public/core/modules/modPrelevement.class.php similarity index 100% rename from htdocs/core/modules/modPrelevement.class.php rename to public/core/modules/modPrelevement.class.php diff --git a/htdocs/core/modules/modPrinting.class.php b/public/core/modules/modPrinting.class.php similarity index 100% rename from htdocs/core/modules/modPrinting.class.php rename to public/core/modules/modPrinting.class.php diff --git a/htdocs/core/modules/modProduct.class.php b/public/core/modules/modProduct.class.php similarity index 100% rename from htdocs/core/modules/modProduct.class.php rename to public/core/modules/modProduct.class.php diff --git a/htdocs/core/modules/modProductBatch.class.php b/public/core/modules/modProductBatch.class.php similarity index 100% rename from htdocs/core/modules/modProductBatch.class.php rename to public/core/modules/modProductBatch.class.php diff --git a/htdocs/core/modules/modProjet.class.php b/public/core/modules/modProjet.class.php similarity index 100% rename from htdocs/core/modules/modProjet.class.php rename to public/core/modules/modProjet.class.php diff --git a/htdocs/core/modules/modPropale.class.php b/public/core/modules/modPropale.class.php similarity index 100% rename from htdocs/core/modules/modPropale.class.php rename to public/core/modules/modPropale.class.php diff --git a/htdocs/core/modules/modReceiptPrinter.class.php b/public/core/modules/modReceiptPrinter.class.php similarity index 100% rename from htdocs/core/modules/modReceiptPrinter.class.php rename to public/core/modules/modReceiptPrinter.class.php diff --git a/htdocs/core/modules/modResource.class.php b/public/core/modules/modResource.class.php similarity index 100% rename from htdocs/core/modules/modResource.class.php rename to public/core/modules/modResource.class.php diff --git a/htdocs/core/modules/modSalaries.class.php b/public/core/modules/modSalaries.class.php similarity index 100% rename from htdocs/core/modules/modSalaries.class.php rename to public/core/modules/modSalaries.class.php diff --git a/htdocs/core/modules/modService.class.php b/public/core/modules/modService.class.php similarity index 100% rename from htdocs/core/modules/modService.class.php rename to public/core/modules/modService.class.php diff --git a/htdocs/core/modules/modSkype.class.php b/public/core/modules/modSkype.class.php similarity index 100% rename from htdocs/core/modules/modSkype.class.php rename to public/core/modules/modSkype.class.php diff --git a/htdocs/core/modules/modSociete.class.php b/public/core/modules/modSociete.class.php similarity index 100% rename from htdocs/core/modules/modSociete.class.php rename to public/core/modules/modSociete.class.php diff --git a/htdocs/core/modules/modStock.class.php b/public/core/modules/modStock.class.php similarity index 100% rename from htdocs/core/modules/modStock.class.php rename to public/core/modules/modStock.class.php diff --git a/htdocs/core/modules/modSupplierProposal.class.php b/public/core/modules/modSupplierProposal.class.php similarity index 100% rename from htdocs/core/modules/modSupplierProposal.class.php rename to public/core/modules/modSupplierProposal.class.php diff --git a/htdocs/core/modules/modSyslog.class.php b/public/core/modules/modSyslog.class.php similarity index 100% rename from htdocs/core/modules/modSyslog.class.php rename to public/core/modules/modSyslog.class.php diff --git a/htdocs/core/modules/modTax.class.php b/public/core/modules/modTax.class.php similarity index 100% rename from htdocs/core/modules/modTax.class.php rename to public/core/modules/modTax.class.php diff --git a/htdocs/core/modules/modUser.class.php b/public/core/modules/modUser.class.php similarity index 100% rename from htdocs/core/modules/modUser.class.php rename to public/core/modules/modUser.class.php diff --git a/htdocs/core/modules/modWebServices.class.php b/public/core/modules/modWebServices.class.php similarity index 100% rename from htdocs/core/modules/modWebServices.class.php rename to public/core/modules/modWebServices.class.php diff --git a/htdocs/core/modules/modWebServicesClient.class.php b/public/core/modules/modWebServicesClient.class.php similarity index 100% rename from htdocs/core/modules/modWebServicesClient.class.php rename to public/core/modules/modWebServicesClient.class.php diff --git a/htdocs/core/modules/modWebsites.class.php b/public/core/modules/modWebsites.class.php similarity index 100% rename from htdocs/core/modules/modWebsites.class.php rename to public/core/modules/modWebsites.class.php diff --git a/htdocs/core/modules/modWorkflow.class.php b/public/core/modules/modWorkflow.class.php similarity index 100% rename from htdocs/core/modules/modWorkflow.class.php rename to public/core/modules/modWorkflow.class.php diff --git a/htdocs/core/modules/oauth/google_oauthcallback.php b/public/core/modules/oauth/google_oauthcallback.php similarity index 100% rename from htdocs/core/modules/oauth/google_oauthcallback.php rename to public/core/modules/oauth/google_oauthcallback.php diff --git a/htdocs/core/modules/oauth/index.html b/public/core/modules/oauth/index.html similarity index 100% rename from htdocs/core/modules/oauth/index.html rename to public/core/modules/oauth/index.html diff --git a/htdocs/core/modules/payment/mod_payment_ant.php b/public/core/modules/payment/mod_payment_ant.php similarity index 100% rename from htdocs/core/modules/payment/mod_payment_ant.php rename to public/core/modules/payment/mod_payment_ant.php diff --git a/htdocs/core/modules/payment/mod_payment_cicada.php b/public/core/modules/payment/mod_payment_cicada.php similarity index 100% rename from htdocs/core/modules/payment/mod_payment_cicada.php rename to public/core/modules/payment/mod_payment_cicada.php diff --git a/htdocs/core/modules/payment/modules_payment.php b/public/core/modules/payment/modules_payment.php similarity index 100% rename from htdocs/core/modules/payment/modules_payment.php rename to public/core/modules/payment/modules_payment.php diff --git a/htdocs/core/modules/printing/index.html b/public/core/modules/printing/index.html similarity index 100% rename from htdocs/core/modules/printing/index.html rename to public/core/modules/printing/index.html diff --git a/htdocs/core/modules/printing/modules_printing.php b/public/core/modules/printing/modules_printing.php similarity index 100% rename from htdocs/core/modules/printing/modules_printing.php rename to public/core/modules/printing/modules_printing.php diff --git a/htdocs/core/modules/printing/printgcp.modules.php b/public/core/modules/printing/printgcp.modules.php similarity index 100% rename from htdocs/core/modules/printing/printgcp.modules.php rename to public/core/modules/printing/printgcp.modules.php diff --git a/htdocs/core/modules/printing/printipp.modules.php b/public/core/modules/printing/printipp.modules.php similarity index 100% rename from htdocs/core/modules/printing/printipp.modules.php rename to public/core/modules/printing/printipp.modules.php diff --git a/htdocs/core/modules/printsheet/doc/index.html b/public/core/modules/printsheet/doc/index.html similarity index 100% rename from htdocs/core/modules/printsheet/doc/index.html rename to public/core/modules/printsheet/doc/index.html diff --git a/htdocs/core/modules/printsheet/doc/pdf_standardlabel.class.php b/public/core/modules/printsheet/doc/pdf_standardlabel.class.php similarity index 100% rename from htdocs/core/modules/printsheet/doc/pdf_standardlabel.class.php rename to public/core/modules/printsheet/doc/pdf_standardlabel.class.php diff --git a/htdocs/core/modules/printsheet/doc/pdf_tcpdflabel.class.php b/public/core/modules/printsheet/doc/pdf_tcpdflabel.class.php similarity index 100% rename from htdocs/core/modules/printsheet/doc/pdf_tcpdflabel.class.php rename to public/core/modules/printsheet/doc/pdf_tcpdflabel.class.php diff --git a/htdocs/core/modules/printsheet/index.html b/public/core/modules/printsheet/index.html similarity index 100% rename from htdocs/core/modules/printsheet/index.html rename to public/core/modules/printsheet/index.html diff --git a/htdocs/core/modules/printsheet/modules_labels.php b/public/core/modules/printsheet/modules_labels.php similarity index 100% rename from htdocs/core/modules/printsheet/modules_labels.php rename to public/core/modules/printsheet/modules_labels.php diff --git a/htdocs/core/modules/product/index.html b/public/core/modules/product/index.html similarity index 100% rename from htdocs/core/modules/product/index.html rename to public/core/modules/product/index.html diff --git a/htdocs/core/modules/product/mod_codeproduct_elephant.php b/public/core/modules/product/mod_codeproduct_elephant.php similarity index 100% rename from htdocs/core/modules/product/mod_codeproduct_elephant.php rename to public/core/modules/product/mod_codeproduct_elephant.php diff --git a/htdocs/core/modules/product/mod_codeproduct_leopard.php b/public/core/modules/product/mod_codeproduct_leopard.php similarity index 100% rename from htdocs/core/modules/product/mod_codeproduct_leopard.php rename to public/core/modules/product/mod_codeproduct_leopard.php diff --git a/htdocs/core/modules/product/modules_product.class.php b/public/core/modules/product/modules_product.class.php similarity index 100% rename from htdocs/core/modules/product/modules_product.class.php rename to public/core/modules/product/modules_product.class.php diff --git a/htdocs/core/modules/product/modules_product.php b/public/core/modules/product/modules_product.php similarity index 100% rename from htdocs/core/modules/product/modules_product.php rename to public/core/modules/product/modules_product.php diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/public/core/modules/project/doc/doc_generic_project_odt.modules.php similarity index 100% rename from htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php rename to public/core/modules/project/doc/doc_generic_project_odt.modules.php diff --git a/htdocs/core/modules/project/doc/index.html b/public/core/modules/project/doc/index.html similarity index 100% rename from htdocs/core/modules/project/doc/index.html rename to public/core/modules/project/doc/index.html diff --git a/htdocs/core/modules/project/doc/pdf_baleine.modules.php b/public/core/modules/project/doc/pdf_baleine.modules.php similarity index 100% rename from htdocs/core/modules/project/doc/pdf_baleine.modules.php rename to public/core/modules/project/doc/pdf_baleine.modules.php diff --git a/htdocs/core/modules/project/doc/pdf_beluga.modules.php b/public/core/modules/project/doc/pdf_beluga.modules.php similarity index 100% rename from htdocs/core/modules/project/doc/pdf_beluga.modules.php rename to public/core/modules/project/doc/pdf_beluga.modules.php diff --git a/htdocs/core/modules/project/index.html b/public/core/modules/project/index.html similarity index 100% rename from htdocs/core/modules/project/index.html rename to public/core/modules/project/index.html diff --git a/htdocs/core/modules/project/mod_project_simple.php b/public/core/modules/project/mod_project_simple.php similarity index 100% rename from htdocs/core/modules/project/mod_project_simple.php rename to public/core/modules/project/mod_project_simple.php diff --git a/htdocs/core/modules/project/mod_project_universal.php b/public/core/modules/project/mod_project_universal.php similarity index 100% rename from htdocs/core/modules/project/mod_project_universal.php rename to public/core/modules/project/mod_project_universal.php diff --git a/htdocs/core/modules/project/modules_project.php b/public/core/modules/project/modules_project.php similarity index 100% rename from htdocs/core/modules/project/modules_project.php rename to public/core/modules/project/modules_project.php diff --git a/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php b/public/core/modules/project/task/doc/doc_generic_task_odt.modules.php similarity index 100% rename from htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php rename to public/core/modules/project/task/doc/doc_generic_task_odt.modules.php diff --git a/htdocs/core/modules/project/task/doc/index.html b/public/core/modules/project/task/doc/index.html similarity index 100% rename from htdocs/core/modules/project/task/doc/index.html rename to public/core/modules/project/task/doc/index.html diff --git a/htdocs/core/modules/project/task/index.html b/public/core/modules/project/task/index.html similarity index 100% rename from htdocs/core/modules/project/task/index.html rename to public/core/modules/project/task/index.html diff --git a/htdocs/core/modules/project/task/mod_task_simple.php b/public/core/modules/project/task/mod_task_simple.php similarity index 100% rename from htdocs/core/modules/project/task/mod_task_simple.php rename to public/core/modules/project/task/mod_task_simple.php diff --git a/htdocs/core/modules/project/task/mod_task_universal.php b/public/core/modules/project/task/mod_task_universal.php similarity index 100% rename from htdocs/core/modules/project/task/mod_task_universal.php rename to public/core/modules/project/task/mod_task_universal.php diff --git a/htdocs/core/modules/project/task/modules_task.php b/public/core/modules/project/task/modules_task.php similarity index 100% rename from htdocs/core/modules/project/task/modules_task.php rename to public/core/modules/project/task/modules_task.php diff --git a/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php b/public/core/modules/propale/doc/doc_generic_proposal_odt.modules.php similarity index 100% rename from htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php rename to public/core/modules/propale/doc/doc_generic_proposal_odt.modules.php diff --git a/htdocs/core/modules/propale/doc/index.html b/public/core/modules/propale/doc/index.html similarity index 100% rename from htdocs/core/modules/propale/doc/index.html rename to public/core/modules/propale/doc/index.html diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/public/core/modules/propale/doc/pdf_azur.modules.php similarity index 100% rename from htdocs/core/modules/propale/doc/pdf_azur.modules.php rename to public/core/modules/propale/doc/pdf_azur.modules.php diff --git a/htdocs/core/modules/propale/index.html b/public/core/modules/propale/index.html similarity index 100% rename from htdocs/core/modules/propale/index.html rename to public/core/modules/propale/index.html diff --git a/htdocs/core/modules/propale/mod_propale_marbre.php b/public/core/modules/propale/mod_propale_marbre.php similarity index 100% rename from htdocs/core/modules/propale/mod_propale_marbre.php rename to public/core/modules/propale/mod_propale_marbre.php diff --git a/htdocs/core/modules/propale/mod_propale_saphir.php b/public/core/modules/propale/mod_propale_saphir.php similarity index 100% rename from htdocs/core/modules/propale/mod_propale_saphir.php rename to public/core/modules/propale/mod_propale_saphir.php diff --git a/htdocs/core/modules/propale/modules_propale.php b/public/core/modules/propale/modules_propale.php similarity index 100% rename from htdocs/core/modules/propale/modules_propale.php rename to public/core/modules/propale/modules_propale.php diff --git a/htdocs/core/modules/rapport/index.html b/public/core/modules/rapport/index.html similarity index 100% rename from htdocs/core/modules/rapport/index.html rename to public/core/modules/rapport/index.html diff --git a/htdocs/core/modules/rapport/pdf_paiement.class.php b/public/core/modules/rapport/pdf_paiement.class.php similarity index 100% rename from htdocs/core/modules/rapport/pdf_paiement.class.php rename to public/core/modules/rapport/pdf_paiement.class.php diff --git a/htdocs/core/modules/security/generate/README b/public/core/modules/security/generate/README similarity index 100% rename from htdocs/core/modules/security/generate/README rename to public/core/modules/security/generate/README diff --git a/htdocs/core/modules/security/generate/index.html b/public/core/modules/security/generate/index.html similarity index 100% rename from htdocs/core/modules/security/generate/index.html rename to public/core/modules/security/generate/index.html diff --git a/htdocs/core/modules/security/generate/modGeneratePassNone.class.php b/public/core/modules/security/generate/modGeneratePassNone.class.php similarity index 100% rename from htdocs/core/modules/security/generate/modGeneratePassNone.class.php rename to public/core/modules/security/generate/modGeneratePassNone.class.php diff --git a/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php b/public/core/modules/security/generate/modGeneratePassPerso.class.php similarity index 100% rename from htdocs/core/modules/security/generate/modGeneratePassPerso.class.php rename to public/core/modules/security/generate/modGeneratePassPerso.class.php diff --git a/htdocs/core/modules/security/generate/modGeneratePassStandard.class.php b/public/core/modules/security/generate/modGeneratePassStandard.class.php similarity index 100% rename from htdocs/core/modules/security/generate/modGeneratePassStandard.class.php rename to public/core/modules/security/generate/modGeneratePassStandard.class.php diff --git a/htdocs/core/modules/security/generate/modules_genpassword.php b/public/core/modules/security/generate/modules_genpassword.php similarity index 100% rename from htdocs/core/modules/security/generate/modules_genpassword.php rename to public/core/modules/security/generate/modules_genpassword.php diff --git a/htdocs/core/modules/security/index.html b/public/core/modules/security/index.html similarity index 100% rename from htdocs/core/modules/security/index.html rename to public/core/modules/security/index.html diff --git a/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php b/public/core/modules/societe/doc/doc_generic_odt.modules.php similarity index 100% rename from htdocs/core/modules/societe/doc/doc_generic_odt.modules.php rename to public/core/modules/societe/doc/doc_generic_odt.modules.php diff --git a/htdocs/core/modules/societe/doc/index.html b/public/core/modules/societe/doc/index.html similarity index 100% rename from htdocs/core/modules/societe/doc/index.html rename to public/core/modules/societe/doc/index.html diff --git a/htdocs/core/modules/societe/index.html b/public/core/modules/societe/index.html similarity index 100% rename from htdocs/core/modules/societe/index.html rename to public/core/modules/societe/index.html diff --git a/htdocs/core/modules/societe/mod_codeclient_elephant.php b/public/core/modules/societe/mod_codeclient_elephant.php similarity index 100% rename from htdocs/core/modules/societe/mod_codeclient_elephant.php rename to public/core/modules/societe/mod_codeclient_elephant.php diff --git a/htdocs/core/modules/societe/mod_codeclient_leopard.php b/public/core/modules/societe/mod_codeclient_leopard.php similarity index 100% rename from htdocs/core/modules/societe/mod_codeclient_leopard.php rename to public/core/modules/societe/mod_codeclient_leopard.php diff --git a/htdocs/core/modules/societe/mod_codeclient_monkey.php b/public/core/modules/societe/mod_codeclient_monkey.php similarity index 100% rename from htdocs/core/modules/societe/mod_codeclient_monkey.php rename to public/core/modules/societe/mod_codeclient_monkey.php diff --git a/htdocs/core/modules/societe/mod_codecompta_aquarium.php b/public/core/modules/societe/mod_codecompta_aquarium.php similarity index 100% rename from htdocs/core/modules/societe/mod_codecompta_aquarium.php rename to public/core/modules/societe/mod_codecompta_aquarium.php diff --git a/htdocs/core/modules/societe/mod_codecompta_panicum.php b/public/core/modules/societe/mod_codecompta_panicum.php similarity index 100% rename from htdocs/core/modules/societe/mod_codecompta_panicum.php rename to public/core/modules/societe/mod_codecompta_panicum.php diff --git a/htdocs/core/modules/societe/modules_societe.class.php b/public/core/modules/societe/modules_societe.class.php similarity index 100% rename from htdocs/core/modules/societe/modules_societe.class.php rename to public/core/modules/societe/modules_societe.class.php diff --git a/htdocs/core/modules/supplier_invoice/index.html b/public/core/modules/supplier_invoice/index.html similarity index 100% rename from htdocs/core/modules/supplier_invoice/index.html rename to public/core/modules/supplier_invoice/index.html diff --git a/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php b/public/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php similarity index 100% rename from htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php rename to public/core/modules/supplier_invoice/mod_facture_fournisseur_cactus.php diff --git a/htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php b/public/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php similarity index 100% rename from htdocs/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php rename to public/core/modules/supplier_invoice/mod_facture_fournisseur_tulip.php diff --git a/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php b/public/core/modules/supplier_invoice/modules_facturefournisseur.php similarity index 100% rename from htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php rename to public/core/modules/supplier_invoice/modules_facturefournisseur.php diff --git a/htdocs/core/modules/supplier_invoice/pdf/index.html b/public/core/modules/supplier_invoice/pdf/index.html similarity index 100% rename from htdocs/core/modules/supplier_invoice/pdf/index.html rename to public/core/modules/supplier_invoice/pdf/index.html diff --git a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php b/public/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php similarity index 100% rename from htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php rename to public/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php diff --git a/htdocs/core/modules/supplier_order/index.html b/public/core/modules/supplier_order/index.html similarity index 100% rename from htdocs/core/modules/supplier_order/index.html rename to public/core/modules/supplier_order/index.html diff --git a/htdocs/core/modules/supplier_order/mod_commande_fournisseur_muguet.php b/public/core/modules/supplier_order/mod_commande_fournisseur_muguet.php similarity index 100% rename from htdocs/core/modules/supplier_order/mod_commande_fournisseur_muguet.php rename to public/core/modules/supplier_order/mod_commande_fournisseur_muguet.php diff --git a/htdocs/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php b/public/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php similarity index 100% rename from htdocs/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php rename to public/core/modules/supplier_order/mod_commande_fournisseur_orchidee.php diff --git a/htdocs/core/modules/supplier_order/modules_commandefournisseur.php b/public/core/modules/supplier_order/modules_commandefournisseur.php similarity index 100% rename from htdocs/core/modules/supplier_order/modules_commandefournisseur.php rename to public/core/modules/supplier_order/modules_commandefournisseur.php diff --git a/htdocs/core/modules/supplier_order/pdf/index.html b/public/core/modules/supplier_order/pdf/index.html similarity index 100% rename from htdocs/core/modules/supplier_order/pdf/index.html rename to public/core/modules/supplier_order/pdf/index.html diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php b/public/core/modules/supplier_order/pdf/pdf_muscadet.modules.php similarity index 100% rename from htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php rename to public/core/modules/supplier_order/pdf/pdf_muscadet.modules.php diff --git a/htdocs/core/modules/supplier_payment/mod_supplier_payment_brodator.php b/public/core/modules/supplier_payment/mod_supplier_payment_brodator.php similarity index 100% rename from htdocs/core/modules/supplier_payment/mod_supplier_payment_brodator.php rename to public/core/modules/supplier_payment/mod_supplier_payment_brodator.php diff --git a/htdocs/core/modules/supplier_payment/mod_supplier_payment_bronan.php b/public/core/modules/supplier_payment/mod_supplier_payment_bronan.php similarity index 100% rename from htdocs/core/modules/supplier_payment/mod_supplier_payment_bronan.php rename to public/core/modules/supplier_payment/mod_supplier_payment_bronan.php diff --git a/htdocs/core/modules/supplier_payment/modules_supplier_payment.php b/public/core/modules/supplier_payment/modules_supplier_payment.php similarity index 100% rename from htdocs/core/modules/supplier_payment/modules_supplier_payment.php rename to public/core/modules/supplier_payment/modules_supplier_payment.php diff --git a/htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php b/public/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php similarity index 100% rename from htdocs/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php rename to public/core/modules/supplier_proposal/doc/doc_generic_supplier_proposal_odt.modules.php diff --git a/htdocs/core/modules/supplier_proposal/doc/index.html b/public/core/modules/supplier_proposal/doc/index.html similarity index 100% rename from htdocs/core/modules/supplier_proposal/doc/index.html rename to public/core/modules/supplier_proposal/doc/index.html diff --git a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php b/public/core/modules/supplier_proposal/doc/pdf_aurore.modules.php similarity index 100% rename from htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php rename to public/core/modules/supplier_proposal/doc/pdf_aurore.modules.php diff --git a/htdocs/core/modules/supplier_proposal/index.html b/public/core/modules/supplier_proposal/index.html similarity index 100% rename from htdocs/core/modules/supplier_proposal/index.html rename to public/core/modules/supplier_proposal/index.html diff --git a/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php b/public/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php similarity index 100% rename from htdocs/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php rename to public/core/modules/supplier_proposal/mod_supplier_proposal_marbre.php diff --git a/htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php b/public/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php similarity index 100% rename from htdocs/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php rename to public/core/modules/supplier_proposal/mod_supplier_proposal_saphir.php diff --git a/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php b/public/core/modules/supplier_proposal/modules_supplier_proposal.php similarity index 100% rename from htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php rename to public/core/modules/supplier_proposal/modules_supplier_proposal.php diff --git a/htdocs/core/modules/syslog/index.html b/public/core/modules/syslog/index.html similarity index 100% rename from htdocs/core/modules/syslog/index.html rename to public/core/modules/syslog/index.html diff --git a/htdocs/core/modules/syslog/logHandler.php b/public/core/modules/syslog/logHandler.php similarity index 100% rename from htdocs/core/modules/syslog/logHandler.php rename to public/core/modules/syslog/logHandler.php diff --git a/htdocs/core/modules/syslog/logHandlerInterface.php b/public/core/modules/syslog/logHandlerInterface.php similarity index 100% rename from htdocs/core/modules/syslog/logHandlerInterface.php rename to public/core/modules/syslog/logHandlerInterface.php diff --git a/htdocs/core/modules/syslog/mod_syslog_chromephp.php b/public/core/modules/syslog/mod_syslog_chromephp.php similarity index 100% rename from htdocs/core/modules/syslog/mod_syslog_chromephp.php rename to public/core/modules/syslog/mod_syslog_chromephp.php diff --git a/htdocs/core/modules/syslog/mod_syslog_file.php b/public/core/modules/syslog/mod_syslog_file.php similarity index 100% rename from htdocs/core/modules/syslog/mod_syslog_file.php rename to public/core/modules/syslog/mod_syslog_file.php diff --git a/htdocs/core/modules/syslog/mod_syslog_firephp.php b/public/core/modules/syslog/mod_syslog_firephp.php similarity index 100% rename from htdocs/core/modules/syslog/mod_syslog_firephp.php rename to public/core/modules/syslog/mod_syslog_firephp.php diff --git a/htdocs/core/modules/syslog/mod_syslog_syslog.php b/public/core/modules/syslog/mod_syslog_syslog.php similarity index 100% rename from htdocs/core/modules/syslog/mod_syslog_syslog.php rename to public/core/modules/syslog/mod_syslog_syslog.php diff --git a/htdocs/core/photos_resize.php b/public/core/photos_resize.php similarity index 100% rename from htdocs/core/photos_resize.php rename to public/core/photos_resize.php diff --git a/htdocs/core/search.php b/public/core/search.php similarity index 100% rename from htdocs/core/search.php rename to public/core/search.php diff --git a/htdocs/core/search_page.php b/public/core/search_page.php similarity index 100% rename from htdocs/core/search_page.php rename to public/core/search_page.php diff --git a/htdocs/core/tools.php b/public/core/tools.php similarity index 100% rename from htdocs/core/tools.php rename to public/core/tools.php diff --git a/htdocs/core/tpl/README b/public/core/tpl/README similarity index 100% rename from htdocs/core/tpl/README rename to public/core/tpl/README diff --git a/htdocs/core/tpl/admin_extrafields_add.tpl.php b/public/core/tpl/admin_extrafields_add.tpl.php similarity index 100% rename from htdocs/core/tpl/admin_extrafields_add.tpl.php rename to public/core/tpl/admin_extrafields_add.tpl.php diff --git a/htdocs/core/tpl/admin_extrafields_edit.tpl.php b/public/core/tpl/admin_extrafields_edit.tpl.php similarity index 100% rename from htdocs/core/tpl/admin_extrafields_edit.tpl.php rename to public/core/tpl/admin_extrafields_edit.tpl.php diff --git a/htdocs/core/tpl/admin_extrafields_view.tpl.php b/public/core/tpl/admin_extrafields_view.tpl.php similarity index 100% rename from htdocs/core/tpl/admin_extrafields_view.tpl.php rename to public/core/tpl/admin_extrafields_view.tpl.php diff --git a/htdocs/core/tpl/ajax/fileupload_main.tpl.php b/public/core/tpl/ajax/fileupload_main.tpl.php similarity index 100% rename from htdocs/core/tpl/ajax/fileupload_main.tpl.php rename to public/core/tpl/ajax/fileupload_main.tpl.php diff --git a/htdocs/core/tpl/ajax/fileupload_view.tpl.php b/public/core/tpl/ajax/fileupload_view.tpl.php similarity index 100% rename from htdocs/core/tpl/ajax/fileupload_view.tpl.php rename to public/core/tpl/ajax/fileupload_view.tpl.php diff --git a/htdocs/core/tpl/ajax/index.html b/public/core/tpl/ajax/index.html similarity index 100% rename from htdocs/core/tpl/ajax/index.html rename to public/core/tpl/ajax/index.html diff --git a/htdocs/core/tpl/ajaxrow.tpl.php b/public/core/tpl/ajaxrow.tpl.php similarity index 100% rename from htdocs/core/tpl/ajaxrow.tpl.php rename to public/core/tpl/ajaxrow.tpl.php diff --git a/htdocs/core/tpl/bloc_showhide.tpl.php b/public/core/tpl/bloc_showhide.tpl.php similarity index 100% rename from htdocs/core/tpl/bloc_showhide.tpl.php rename to public/core/tpl/bloc_showhide.tpl.php diff --git a/htdocs/core/tpl/contacts.tpl.php b/public/core/tpl/contacts.tpl.php similarity index 100% rename from htdocs/core/tpl/contacts.tpl.php rename to public/core/tpl/contacts.tpl.php diff --git a/htdocs/core/tpl/document_actions_post_headers.tpl.php b/public/core/tpl/document_actions_post_headers.tpl.php similarity index 100% rename from htdocs/core/tpl/document_actions_post_headers.tpl.php rename to public/core/tpl/document_actions_post_headers.tpl.php diff --git a/htdocs/core/tpl/error.tpl.php b/public/core/tpl/error.tpl.php similarity index 100% rename from htdocs/core/tpl/error.tpl.php rename to public/core/tpl/error.tpl.php diff --git a/htdocs/core/tpl/extrafields_view.tpl.php b/public/core/tpl/extrafields_view.tpl.php similarity index 100% rename from htdocs/core/tpl/extrafields_view.tpl.php rename to public/core/tpl/extrafields_view.tpl.php diff --git a/htdocs/core/tpl/footer.tpl.php b/public/core/tpl/footer.tpl.php similarity index 100% rename from htdocs/core/tpl/footer.tpl.php rename to public/core/tpl/footer.tpl.php diff --git a/htdocs/core/tpl/header.tpl.php b/public/core/tpl/header.tpl.php similarity index 100% rename from htdocs/core/tpl/header.tpl.php rename to public/core/tpl/header.tpl.php diff --git a/htdocs/core/tpl/index.html b/public/core/tpl/index.html similarity index 100% rename from htdocs/core/tpl/index.html rename to public/core/tpl/index.html diff --git a/htdocs/core/tpl/login.tpl.php b/public/core/tpl/login.tpl.php similarity index 100% rename from htdocs/core/tpl/login.tpl.php rename to public/core/tpl/login.tpl.php diff --git a/htdocs/core/tpl/notes.tpl.php b/public/core/tpl/notes.tpl.php similarity index 100% rename from htdocs/core/tpl/notes.tpl.php rename to public/core/tpl/notes.tpl.php diff --git a/htdocs/core/tpl/objectline_create.tpl.php b/public/core/tpl/objectline_create.tpl.php similarity index 100% rename from htdocs/core/tpl/objectline_create.tpl.php rename to public/core/tpl/objectline_create.tpl.php diff --git a/htdocs/core/tpl/objectline_edit.tpl.php b/public/core/tpl/objectline_edit.tpl.php similarity index 100% rename from htdocs/core/tpl/objectline_edit.tpl.php rename to public/core/tpl/objectline_edit.tpl.php diff --git a/htdocs/core/tpl/objectline_view.tpl.php b/public/core/tpl/objectline_view.tpl.php similarity index 100% rename from htdocs/core/tpl/objectline_view.tpl.php rename to public/core/tpl/objectline_view.tpl.php diff --git a/htdocs/core/tpl/originproductline.tpl.php b/public/core/tpl/originproductline.tpl.php similarity index 100% rename from htdocs/core/tpl/originproductline.tpl.php rename to public/core/tpl/originproductline.tpl.php diff --git a/htdocs/core/tpl/passwordforgotten.tpl.php b/public/core/tpl/passwordforgotten.tpl.php similarity index 100% rename from htdocs/core/tpl/passwordforgotten.tpl.php rename to public/core/tpl/passwordforgotten.tpl.php diff --git a/htdocs/core/tpl/resource_add.tpl.php b/public/core/tpl/resource_add.tpl.php similarity index 100% rename from htdocs/core/tpl/resource_add.tpl.php rename to public/core/tpl/resource_add.tpl.php diff --git a/htdocs/core/tpl/resource_view.tpl.php b/public/core/tpl/resource_view.tpl.php similarity index 100% rename from htdocs/core/tpl/resource_view.tpl.php rename to public/core/tpl/resource_view.tpl.php diff --git a/htdocs/core/triggers/README b/public/core/triggers/README similarity index 100% rename from htdocs/core/triggers/README rename to public/core/triggers/README diff --git a/htdocs/core/triggers/README-FR b/public/core/triggers/README-FR similarity index 100% rename from htdocs/core/triggers/README-FR rename to public/core/triggers/README-FR diff --git a/htdocs/core/triggers/dolibarrtriggers.class.php b/public/core/triggers/dolibarrtriggers.class.php similarity index 100% rename from htdocs/core/triggers/dolibarrtriggers.class.php rename to public/core/triggers/dolibarrtriggers.class.php diff --git a/htdocs/core/triggers/index.html b/public/core/triggers/index.html similarity index 100% rename from htdocs/core/triggers/index.html rename to public/core/triggers/index.html diff --git a/htdocs/core/triggers/interface_20_all_Logevents.class.php b/public/core/triggers/interface_20_all_Logevents.class.php similarity index 100% rename from htdocs/core/triggers/interface_20_all_Logevents.class.php rename to public/core/triggers/interface_20_all_Logevents.class.php diff --git a/htdocs/core/triggers/interface_20_modPaypal_PaypalWorkflow.class.php b/public/core/triggers/interface_20_modPaypal_PaypalWorkflow.class.php similarity index 100% rename from htdocs/core/triggers/interface_20_modPaypal_PaypalWorkflow.class.php rename to public/core/triggers/interface_20_modPaypal_PaypalWorkflow.class.php diff --git a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php b/public/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php similarity index 100% rename from htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php rename to public/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php diff --git a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php b/public/core/triggers/interface_50_modAgenda_ActionsAuto.class.php similarity index 100% rename from htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php rename to public/core/triggers/interface_50_modAgenda_ActionsAuto.class.php diff --git a/htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php b/public/core/triggers/interface_50_modLdap_Ldapsynchro.class.php similarity index 100% rename from htdocs/core/triggers/interface_50_modLdap_Ldapsynchro.class.php rename to public/core/triggers/interface_50_modLdap_Ldapsynchro.class.php diff --git a/htdocs/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php b/public/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php similarity index 100% rename from htdocs/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php rename to public/core/triggers/interface_50_modMailmanspip_Mailmanspipsynchro.class.php diff --git a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php b/public/core/triggers/interface_50_modNotification_Notification.class.php similarity index 100% rename from htdocs/core/triggers/interface_50_modNotification_Notification.class.php rename to public/core/triggers/interface_50_modNotification_Notification.class.php diff --git a/htdocs/core/triggers/interface_90_all_Demo.class.php-NORUN b/public/core/triggers/interface_90_all_Demo.class.php-NORUN similarity index 100% rename from htdocs/core/triggers/interface_90_all_Demo.class.php-NORUN rename to public/core/triggers/interface_90_all_Demo.class.php-NORUN diff --git a/htdocs/cron/admin/cron.php b/public/cron/admin/cron.php similarity index 100% rename from htdocs/cron/admin/cron.php rename to public/cron/admin/cron.php diff --git a/htdocs/cron/admin/index.html b/public/cron/admin/index.html similarity index 100% rename from htdocs/cron/admin/index.html rename to public/cron/admin/index.html diff --git a/htdocs/cron/card.php b/public/cron/card.php similarity index 100% rename from htdocs/cron/card.php rename to public/cron/card.php diff --git a/htdocs/cron/class/cronjob.class.php b/public/cron/class/cronjob.class.php similarity index 100% rename from htdocs/cron/class/cronjob.class.php rename to public/cron/class/cronjob.class.php diff --git a/htdocs/cron/class/index.html b/public/cron/class/index.html similarity index 100% rename from htdocs/cron/class/index.html rename to public/cron/class/index.html diff --git a/htdocs/cron/index.html b/public/cron/index.html similarity index 100% rename from htdocs/cron/index.html rename to public/cron/index.html diff --git a/htdocs/cron/info.php b/public/cron/info.php similarity index 100% rename from htdocs/cron/info.php rename to public/cron/info.php diff --git a/htdocs/cron/list.php b/public/cron/list.php similarity index 100% rename from htdocs/cron/list.php rename to public/cron/list.php diff --git a/htdocs/custom/.gitignore b/public/custom/.gitignore similarity index 100% rename from htdocs/custom/.gitignore rename to public/custom/.gitignore diff --git a/htdocs/custom/README.md b/public/custom/README.md similarity index 100% rename from htdocs/custom/README.md rename to public/custom/README.md diff --git a/htdocs/custom/index.html b/public/custom/index.html similarity index 100% rename from htdocs/custom/index.html rename to public/custom/index.html diff --git a/htdocs/document.php b/public/document.php similarity index 100% rename from htdocs/document.php rename to public/document.php diff --git a/htdocs/don/admin/donation.php b/public/don/admin/donation.php similarity index 100% rename from htdocs/don/admin/donation.php rename to public/don/admin/donation.php diff --git a/htdocs/don/admin/donation_extrafields.php b/public/don/admin/donation_extrafields.php similarity index 100% rename from htdocs/don/admin/donation_extrafields.php rename to public/don/admin/donation_extrafields.php diff --git a/htdocs/don/admin/index.html b/public/don/admin/index.html similarity index 100% rename from htdocs/don/admin/index.html rename to public/don/admin/index.html diff --git a/htdocs/don/card.php b/public/don/card.php similarity index 100% rename from htdocs/don/card.php rename to public/don/card.php diff --git a/htdocs/don/class/don.class.php b/public/don/class/don.class.php similarity index 100% rename from htdocs/don/class/don.class.php rename to public/don/class/don.class.php diff --git a/htdocs/don/class/donstats.class.php b/public/don/class/donstats.class.php similarity index 100% rename from htdocs/don/class/donstats.class.php rename to public/don/class/donstats.class.php diff --git a/htdocs/don/class/index.html b/public/don/class/index.html similarity index 100% rename from htdocs/don/class/index.html rename to public/don/class/index.html diff --git a/htdocs/don/class/paymentdonation.class.php b/public/don/class/paymentdonation.class.php similarity index 100% rename from htdocs/don/class/paymentdonation.class.php rename to public/don/class/paymentdonation.class.php diff --git a/htdocs/don/document.php b/public/don/document.php similarity index 100% rename from htdocs/don/document.php rename to public/don/document.php diff --git a/htdocs/don/index.html b/public/don/index.html similarity index 100% rename from htdocs/don/index.html rename to public/don/index.html diff --git a/htdocs/don/index.php b/public/don/index.php similarity index 100% rename from htdocs/don/index.php rename to public/don/index.php diff --git a/htdocs/don/info.php b/public/don/info.php similarity index 100% rename from htdocs/don/info.php rename to public/don/info.php diff --git a/htdocs/don/list.php b/public/don/list.php similarity index 100% rename from htdocs/don/list.php rename to public/don/list.php diff --git a/htdocs/don/note.php b/public/don/note.php similarity index 100% rename from htdocs/don/note.php rename to public/don/note.php diff --git a/htdocs/don/payment/card.php b/public/don/payment/card.php similarity index 100% rename from htdocs/don/payment/card.php rename to public/don/payment/card.php diff --git a/htdocs/don/payment/index.html b/public/don/payment/index.html similarity index 100% rename from htdocs/don/payment/index.html rename to public/don/payment/index.html diff --git a/htdocs/don/payment/payment.php b/public/don/payment/payment.php similarity index 100% rename from htdocs/don/payment/payment.php rename to public/don/payment/payment.php diff --git a/htdocs/don/stats/index.php b/public/don/stats/index.php similarity index 100% rename from htdocs/don/stats/index.php rename to public/don/stats/index.php diff --git a/htdocs/ecm/ajax/ecmdatabase.php b/public/ecm/ajax/ecmdatabase.php similarity index 100% rename from htdocs/ecm/ajax/ecmdatabase.php rename to public/ecm/ajax/ecmdatabase.php diff --git a/htdocs/ecm/ajax/index.html b/public/ecm/ajax/index.html similarity index 100% rename from htdocs/ecm/ajax/index.html rename to public/ecm/ajax/index.html diff --git a/htdocs/ecm/class/ecmdirectory.class.php b/public/ecm/class/ecmdirectory.class.php similarity index 100% rename from htdocs/ecm/class/ecmdirectory.class.php rename to public/ecm/class/ecmdirectory.class.php diff --git a/htdocs/ecm/class/htmlecm.form.class.php b/public/ecm/class/htmlecm.form.class.php similarity index 100% rename from htdocs/ecm/class/htmlecm.form.class.php rename to public/ecm/class/htmlecm.form.class.php diff --git a/htdocs/ecm/class/index.html b/public/ecm/class/index.html similarity index 100% rename from htdocs/ecm/class/index.html rename to public/ecm/class/index.html diff --git a/htdocs/ecm/docdir.php b/public/ecm/docdir.php similarity index 100% rename from htdocs/ecm/docdir.php rename to public/ecm/docdir.php diff --git a/htdocs/ecm/docfile.php b/public/ecm/docfile.php similarity index 100% rename from htdocs/ecm/docfile.php rename to public/ecm/docfile.php diff --git a/htdocs/ecm/docmine.php b/public/ecm/docmine.php similarity index 100% rename from htdocs/ecm/docmine.php rename to public/ecm/docmine.php diff --git a/htdocs/ecm/docother.php b/public/ecm/docother.php similarity index 100% rename from htdocs/ecm/docother.php rename to public/ecm/docother.php diff --git a/htdocs/ecm/index.php b/public/ecm/index.php similarity index 100% rename from htdocs/ecm/index.php rename to public/ecm/index.php diff --git a/htdocs/ecm/index_auto.php b/public/ecm/index_auto.php similarity index 100% rename from htdocs/ecm/index_auto.php rename to public/ecm/index_auto.php diff --git a/htdocs/ecm/search.php b/public/ecm/search.php similarity index 100% rename from htdocs/ecm/search.php rename to public/ecm/search.php diff --git a/htdocs/ecm/tpl/enablefiletreeajax.tpl.php b/public/ecm/tpl/enablefiletreeajax.tpl.php similarity index 100% rename from htdocs/ecm/tpl/enablefiletreeajax.tpl.php rename to public/ecm/tpl/enablefiletreeajax.tpl.php diff --git a/htdocs/ecm/tpl/index.html b/public/ecm/tpl/index.html similarity index 100% rename from htdocs/ecm/tpl/index.html rename to public/ecm/tpl/index.html diff --git a/htdocs/expedition/card.php b/public/expedition/card.php similarity index 100% rename from htdocs/expedition/card.php rename to public/expedition/card.php diff --git a/htdocs/expedition/class/expedition.class.php b/public/expedition/class/expedition.class.php similarity index 100% rename from htdocs/expedition/class/expedition.class.php rename to public/expedition/class/expedition.class.php diff --git a/htdocs/expedition/class/expeditionbatch.class.php b/public/expedition/class/expeditionbatch.class.php similarity index 100% rename from htdocs/expedition/class/expeditionbatch.class.php rename to public/expedition/class/expeditionbatch.class.php diff --git a/htdocs/expedition/class/expeditionstats.class.php b/public/expedition/class/expeditionstats.class.php similarity index 100% rename from htdocs/expedition/class/expeditionstats.class.php rename to public/expedition/class/expeditionstats.class.php diff --git a/htdocs/expedition/class/index.html b/public/expedition/class/index.html similarity index 100% rename from htdocs/expedition/class/index.html rename to public/expedition/class/index.html diff --git a/htdocs/expedition/contact.php b/public/expedition/contact.php similarity index 100% rename from htdocs/expedition/contact.php rename to public/expedition/contact.php diff --git a/htdocs/expedition/index.php b/public/expedition/index.php similarity index 100% rename from htdocs/expedition/index.php rename to public/expedition/index.php diff --git a/htdocs/expedition/list.php b/public/expedition/list.php similarity index 100% rename from htdocs/expedition/list.php rename to public/expedition/list.php diff --git a/htdocs/expedition/note.php b/public/expedition/note.php similarity index 100% rename from htdocs/expedition/note.php rename to public/expedition/note.php diff --git a/htdocs/expedition/shipment.php b/public/expedition/shipment.php similarity index 100% rename from htdocs/expedition/shipment.php rename to public/expedition/shipment.php diff --git a/htdocs/expedition/stats/index.php b/public/expedition/stats/index.php similarity index 100% rename from htdocs/expedition/stats/index.php rename to public/expedition/stats/index.php diff --git a/htdocs/expedition/stats/month.php b/public/expedition/stats/month.php similarity index 100% rename from htdocs/expedition/stats/month.php rename to public/expedition/stats/month.php diff --git a/htdocs/expedition/tpl/index.html b/public/expedition/tpl/index.html similarity index 100% rename from htdocs/expedition/tpl/index.html rename to public/expedition/tpl/index.html diff --git a/htdocs/expedition/tpl/linkedobjectblock.tpl.php b/public/expedition/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/expedition/tpl/linkedobjectblock.tpl.php rename to public/expedition/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/expensereport/ajax/ajaxprojet.php b/public/expensereport/ajax/ajaxprojet.php similarity index 100% rename from htdocs/expensereport/ajax/ajaxprojet.php rename to public/expensereport/ajax/ajaxprojet.php diff --git a/htdocs/expensereport/ajax/index.html b/public/expensereport/ajax/index.html similarity index 100% rename from htdocs/expensereport/ajax/index.html rename to public/expensereport/ajax/index.html diff --git a/htdocs/expensereport/card.php b/public/expensereport/card.php similarity index 100% rename from htdocs/expensereport/card.php rename to public/expensereport/card.php diff --git a/htdocs/expensereport/class/api_expensereports.class.php b/public/expensereport/class/api_expensereports.class.php similarity index 100% rename from htdocs/expensereport/class/api_expensereports.class.php rename to public/expensereport/class/api_expensereports.class.php diff --git a/htdocs/expensereport/class/expensereport.class.php b/public/expensereport/class/expensereport.class.php similarity index 100% rename from htdocs/expensereport/class/expensereport.class.php rename to public/expensereport/class/expensereport.class.php diff --git a/htdocs/expensereport/class/expensereportstats.class.php b/public/expensereport/class/expensereportstats.class.php similarity index 100% rename from htdocs/expensereport/class/expensereportstats.class.php rename to public/expensereport/class/expensereportstats.class.php diff --git a/htdocs/expensereport/class/index.html b/public/expensereport/class/index.html similarity index 100% rename from htdocs/expensereport/class/index.html rename to public/expensereport/class/index.html diff --git a/htdocs/expensereport/class/paymentexpensereport.class.php b/public/expensereport/class/paymentexpensereport.class.php similarity index 100% rename from htdocs/expensereport/class/paymentexpensereport.class.php rename to public/expensereport/class/paymentexpensereport.class.php diff --git a/htdocs/expensereport/document.php b/public/expensereport/document.php similarity index 100% rename from htdocs/expensereport/document.php rename to public/expensereport/document.php diff --git a/htdocs/expensereport/export_csv.php b/public/expensereport/export_csv.php similarity index 100% rename from htdocs/expensereport/export_csv.php rename to public/expensereport/export_csv.php diff --git a/htdocs/expensereport/index.html b/public/expensereport/index.html similarity index 100% rename from htdocs/expensereport/index.html rename to public/expensereport/index.html diff --git a/htdocs/expensereport/index.php b/public/expensereport/index.php similarity index 100% rename from htdocs/expensereport/index.php rename to public/expensereport/index.php diff --git a/htdocs/expensereport/info.php b/public/expensereport/info.php similarity index 100% rename from htdocs/expensereport/info.php rename to public/expensereport/info.php diff --git a/htdocs/expensereport/list.php b/public/expensereport/list.php similarity index 100% rename from htdocs/expensereport/list.php rename to public/expensereport/list.php diff --git a/htdocs/expensereport/note.php b/public/expensereport/note.php similarity index 100% rename from htdocs/expensereport/note.php rename to public/expensereport/note.php diff --git a/htdocs/expensereport/payment/card.php b/public/expensereport/payment/card.php similarity index 100% rename from htdocs/expensereport/payment/card.php rename to public/expensereport/payment/card.php diff --git a/htdocs/expensereport/payment/index.html b/public/expensereport/payment/index.html similarity index 100% rename from htdocs/expensereport/payment/index.html rename to public/expensereport/payment/index.html diff --git a/htdocs/expensereport/payment/payment.php b/public/expensereport/payment/payment.php similarity index 100% rename from htdocs/expensereport/payment/payment.php rename to public/expensereport/payment/payment.php diff --git a/htdocs/expensereport/stats/index.html b/public/expensereport/stats/index.html similarity index 100% rename from htdocs/expensereport/stats/index.html rename to public/expensereport/stats/index.html diff --git a/htdocs/expensereport/stats/index.php b/public/expensereport/stats/index.php similarity index 100% rename from htdocs/expensereport/stats/index.php rename to public/expensereport/stats/index.php diff --git a/htdocs/expensereport/synchro_compta.php b/public/expensereport/synchro_compta.php similarity index 100% rename from htdocs/expensereport/synchro_compta.php rename to public/expensereport/synchro_compta.php diff --git a/htdocs/expensereport/tpl/index.html b/public/expensereport/tpl/index.html similarity index 100% rename from htdocs/expensereport/tpl/index.html rename to public/expensereport/tpl/index.html diff --git a/htdocs/expensereport/tpl/linkedobjectblock.tpl.php b/public/expensereport/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/expensereport/tpl/linkedobjectblock.tpl.php rename to public/expensereport/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/exports/class/export.class.php b/public/exports/class/export.class.php similarity index 100% rename from htdocs/exports/class/export.class.php rename to public/exports/class/export.class.php diff --git a/htdocs/exports/class/index.html b/public/exports/class/index.html similarity index 100% rename from htdocs/exports/class/index.html rename to public/exports/class/index.html diff --git a/htdocs/exports/export.php b/public/exports/export.php similarity index 100% rename from htdocs/exports/export.php rename to public/exports/export.php diff --git a/htdocs/exports/index.php b/public/exports/index.php similarity index 100% rename from htdocs/exports/index.php rename to public/exports/index.php diff --git a/htdocs/externalsite/admin/externalsite.php b/public/externalsite/admin/externalsite.php similarity index 100% rename from htdocs/externalsite/admin/externalsite.php rename to public/externalsite/admin/externalsite.php diff --git a/htdocs/externalsite/admin/index.html b/public/externalsite/admin/index.html similarity index 100% rename from htdocs/externalsite/admin/index.html rename to public/externalsite/admin/index.html diff --git a/htdocs/externalsite/frames.php b/public/externalsite/frames.php similarity index 100% rename from htdocs/externalsite/frames.php rename to public/externalsite/frames.php diff --git a/htdocs/externalsite/frametop.php b/public/externalsite/frametop.php similarity index 100% rename from htdocs/externalsite/frametop.php rename to public/externalsite/frametop.php diff --git a/htdocs/externalsite/index.html b/public/externalsite/index.html similarity index 100% rename from htdocs/externalsite/index.html rename to public/externalsite/index.html diff --git a/htdocs/favicon.ico b/public/favicon.ico similarity index 100% rename from htdocs/favicon.ico rename to public/favicon.ico diff --git a/htdocs/fichinter/admin/fichinter_extrafields.php b/public/fichinter/admin/fichinter_extrafields.php similarity index 100% rename from htdocs/fichinter/admin/fichinter_extrafields.php rename to public/fichinter/admin/fichinter_extrafields.php diff --git a/htdocs/fichinter/admin/fichinterdet_extrafields.php b/public/fichinter/admin/fichinterdet_extrafields.php similarity index 100% rename from htdocs/fichinter/admin/fichinterdet_extrafields.php rename to public/fichinter/admin/fichinterdet_extrafields.php diff --git a/htdocs/fichinter/admin/index.html b/public/fichinter/admin/index.html similarity index 100% rename from htdocs/fichinter/admin/index.html rename to public/fichinter/admin/index.html diff --git a/htdocs/fichinter/apercu.php b/public/fichinter/apercu.php similarity index 100% rename from htdocs/fichinter/apercu.php rename to public/fichinter/apercu.php diff --git a/htdocs/fichinter/card.php b/public/fichinter/card.php similarity index 100% rename from htdocs/fichinter/card.php rename to public/fichinter/card.php diff --git a/htdocs/fichinter/class/fichinter.class.php b/public/fichinter/class/fichinter.class.php similarity index 100% rename from htdocs/fichinter/class/fichinter.class.php rename to public/fichinter/class/fichinter.class.php diff --git a/htdocs/fichinter/class/fichinterstats.class.php b/public/fichinter/class/fichinterstats.class.php similarity index 100% rename from htdocs/fichinter/class/fichinterstats.class.php rename to public/fichinter/class/fichinterstats.class.php diff --git a/htdocs/fichinter/class/index.html b/public/fichinter/class/index.html similarity index 100% rename from htdocs/fichinter/class/index.html rename to public/fichinter/class/index.html diff --git a/htdocs/fichinter/contact.php b/public/fichinter/contact.php similarity index 100% rename from htdocs/fichinter/contact.php rename to public/fichinter/contact.php diff --git a/htdocs/fichinter/document.php b/public/fichinter/document.php similarity index 100% rename from htdocs/fichinter/document.php rename to public/fichinter/document.php diff --git a/htdocs/fichinter/index.html b/public/fichinter/index.html similarity index 100% rename from htdocs/fichinter/index.html rename to public/fichinter/index.html diff --git a/htdocs/fichinter/index.php b/public/fichinter/index.php similarity index 100% rename from htdocs/fichinter/index.php rename to public/fichinter/index.php diff --git a/htdocs/fichinter/info.php b/public/fichinter/info.php similarity index 100% rename from htdocs/fichinter/info.php rename to public/fichinter/info.php diff --git a/htdocs/fichinter/list.php b/public/fichinter/list.php similarity index 100% rename from htdocs/fichinter/list.php rename to public/fichinter/list.php diff --git a/htdocs/fichinter/note.php b/public/fichinter/note.php similarity index 100% rename from htdocs/fichinter/note.php rename to public/fichinter/note.php diff --git a/htdocs/fichinter/stats/index.php b/public/fichinter/stats/index.php similarity index 100% rename from htdocs/fichinter/stats/index.php rename to public/fichinter/stats/index.php diff --git a/htdocs/fichinter/tpl/index.html b/public/fichinter/tpl/index.html similarity index 100% rename from htdocs/fichinter/tpl/index.html rename to public/fichinter/tpl/index.html diff --git a/htdocs/fichinter/tpl/linkedobjectblock.tpl.php b/public/fichinter/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/fichinter/tpl/linkedobjectblock.tpl.php rename to public/fichinter/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/filefunc.inc.php b/public/filefunc.inc.php similarity index 100% rename from htdocs/filefunc.inc.php rename to public/filefunc.inc.php diff --git a/htdocs/fourn/ajax/getSupplierPrices.php b/public/fourn/ajax/getSupplierPrices.php similarity index 100% rename from htdocs/fourn/ajax/getSupplierPrices.php rename to public/fourn/ajax/getSupplierPrices.php diff --git a/htdocs/fourn/ajax/index.html b/public/fourn/ajax/index.html similarity index 100% rename from htdocs/fourn/ajax/index.html rename to public/fourn/ajax/index.html diff --git a/htdocs/fourn/card.php b/public/fourn/card.php similarity index 100% rename from htdocs/fourn/card.php rename to public/fourn/card.php diff --git a/htdocs/fourn/class/api_supplier_invoices.class.php b/public/fourn/class/api_supplier_invoices.class.php similarity index 100% rename from htdocs/fourn/class/api_supplier_invoices.class.php rename to public/fourn/class/api_supplier_invoices.class.php diff --git a/htdocs/fourn/class/fournisseur.class.php b/public/fourn/class/fournisseur.class.php similarity index 100% rename from htdocs/fourn/class/fournisseur.class.php rename to public/fourn/class/fournisseur.class.php diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/public/fourn/class/fournisseur.commande.class.php similarity index 100% rename from htdocs/fourn/class/fournisseur.commande.class.php rename to public/fourn/class/fournisseur.commande.class.php diff --git a/htdocs/fourn/class/fournisseur.commande.dispatch.class.php b/public/fourn/class/fournisseur.commande.dispatch.class.php similarity index 100% rename from htdocs/fourn/class/fournisseur.commande.dispatch.class.php rename to public/fourn/class/fournisseur.commande.dispatch.class.php diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/public/fourn/class/fournisseur.facture.class.php similarity index 100% rename from htdocs/fourn/class/fournisseur.facture.class.php rename to public/fourn/class/fournisseur.facture.class.php diff --git a/htdocs/fourn/class/fournisseur.product.class.php b/public/fourn/class/fournisseur.product.class.php similarity index 100% rename from htdocs/fourn/class/fournisseur.product.class.php rename to public/fourn/class/fournisseur.product.class.php diff --git a/htdocs/fourn/class/index.html b/public/fourn/class/index.html similarity index 100% rename from htdocs/fourn/class/index.html rename to public/fourn/class/index.html diff --git a/htdocs/fourn/class/paiementfourn.class.php b/public/fourn/class/paiementfourn.class.php similarity index 100% rename from htdocs/fourn/class/paiementfourn.class.php rename to public/fourn/class/paiementfourn.class.php diff --git a/htdocs/fourn/commande/card.php b/public/fourn/commande/card.php similarity index 100% rename from htdocs/fourn/commande/card.php rename to public/fourn/commande/card.php diff --git a/htdocs/fourn/commande/contact.php b/public/fourn/commande/contact.php similarity index 100% rename from htdocs/fourn/commande/contact.php rename to public/fourn/commande/contact.php diff --git a/htdocs/fourn/commande/dispatch.php b/public/fourn/commande/dispatch.php similarity index 100% rename from htdocs/fourn/commande/dispatch.php rename to public/fourn/commande/dispatch.php diff --git a/htdocs/fourn/commande/document.php b/public/fourn/commande/document.php similarity index 100% rename from htdocs/fourn/commande/document.php rename to public/fourn/commande/document.php diff --git a/htdocs/fourn/commande/index.php b/public/fourn/commande/index.php similarity index 100% rename from htdocs/fourn/commande/index.php rename to public/fourn/commande/index.php diff --git a/htdocs/fourn/commande/info.php b/public/fourn/commande/info.php similarity index 100% rename from htdocs/fourn/commande/info.php rename to public/fourn/commande/info.php diff --git a/htdocs/fourn/commande/list.php b/public/fourn/commande/list.php similarity index 100% rename from htdocs/fourn/commande/list.php rename to public/fourn/commande/list.php diff --git a/htdocs/fourn/commande/note.php b/public/fourn/commande/note.php similarity index 100% rename from htdocs/fourn/commande/note.php rename to public/fourn/commande/note.php diff --git a/htdocs/fourn/commande/orderstoinvoice.php b/public/fourn/commande/orderstoinvoice.php similarity index 100% rename from htdocs/fourn/commande/orderstoinvoice.php rename to public/fourn/commande/orderstoinvoice.php diff --git a/htdocs/fourn/commande/tpl/index.html b/public/fourn/commande/tpl/index.html similarity index 100% rename from htdocs/fourn/commande/tpl/index.html rename to public/fourn/commande/tpl/index.html diff --git a/htdocs/fourn/commande/tpl/linkedobjectblock.tpl.php b/public/fourn/commande/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/fourn/commande/tpl/linkedobjectblock.tpl.php rename to public/fourn/commande/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/fourn/contact.php b/public/fourn/contact.php similarity index 100% rename from htdocs/fourn/contact.php rename to public/fourn/contact.php diff --git a/htdocs/fourn/facture/card.php b/public/fourn/facture/card.php similarity index 100% rename from htdocs/fourn/facture/card.php rename to public/fourn/facture/card.php diff --git a/htdocs/fourn/facture/contact.php b/public/fourn/facture/contact.php similarity index 100% rename from htdocs/fourn/facture/contact.php rename to public/fourn/facture/contact.php diff --git a/htdocs/fourn/facture/document.php b/public/fourn/facture/document.php similarity index 100% rename from htdocs/fourn/facture/document.php rename to public/fourn/facture/document.php diff --git a/htdocs/fourn/facture/impayees.php b/public/fourn/facture/impayees.php similarity index 100% rename from htdocs/fourn/facture/impayees.php rename to public/fourn/facture/impayees.php diff --git a/htdocs/fourn/facture/index.html b/public/fourn/facture/index.html similarity index 100% rename from htdocs/fourn/facture/index.html rename to public/fourn/facture/index.html diff --git a/htdocs/fourn/facture/info.php b/public/fourn/facture/info.php similarity index 100% rename from htdocs/fourn/facture/info.php rename to public/fourn/facture/info.php diff --git a/htdocs/fourn/facture/list.php b/public/fourn/facture/list.php similarity index 100% rename from htdocs/fourn/facture/list.php rename to public/fourn/facture/list.php diff --git a/htdocs/fourn/facture/note.php b/public/fourn/facture/note.php similarity index 100% rename from htdocs/fourn/facture/note.php rename to public/fourn/facture/note.php diff --git a/htdocs/fourn/facture/paiement.php b/public/fourn/facture/paiement.php similarity index 100% rename from htdocs/fourn/facture/paiement.php rename to public/fourn/facture/paiement.php diff --git a/htdocs/fourn/facture/tpl/index.html b/public/fourn/facture/tpl/index.html similarity index 100% rename from htdocs/fourn/facture/tpl/index.html rename to public/fourn/facture/tpl/index.html diff --git a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php b/public/fourn/facture/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php rename to public/fourn/facture/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/fourn/index.php b/public/fourn/index.php similarity index 100% rename from htdocs/fourn/index.php rename to public/fourn/index.php diff --git a/htdocs/fourn/js/lib_dispatch.js b/public/fourn/js/lib_dispatch.js similarity index 100% rename from htdocs/fourn/js/lib_dispatch.js rename to public/fourn/js/lib_dispatch.js diff --git a/htdocs/fourn/paiement/card.php b/public/fourn/paiement/card.php similarity index 100% rename from htdocs/fourn/paiement/card.php rename to public/fourn/paiement/card.php diff --git a/htdocs/fourn/paiement/index.html b/public/fourn/paiement/index.html similarity index 100% rename from htdocs/fourn/paiement/index.html rename to public/fourn/paiement/index.html diff --git a/htdocs/fourn/paiement/info.php b/public/fourn/paiement/info.php similarity index 100% rename from htdocs/fourn/paiement/info.php rename to public/fourn/paiement/info.php diff --git a/htdocs/fourn/product/list.php b/public/fourn/product/list.php similarity index 100% rename from htdocs/fourn/product/list.php rename to public/fourn/product/list.php diff --git a/htdocs/fourn/recap-fourn.php b/public/fourn/recap-fourn.php similarity index 100% rename from htdocs/fourn/recap-fourn.php rename to public/fourn/recap-fourn.php diff --git a/htdocs/ftp/admin/ftpclient.php b/public/ftp/admin/ftpclient.php similarity index 100% rename from htdocs/ftp/admin/ftpclient.php rename to public/ftp/admin/ftpclient.php diff --git a/htdocs/ftp/admin/index.html b/public/ftp/admin/index.html similarity index 100% rename from htdocs/ftp/admin/index.html rename to public/ftp/admin/index.html diff --git a/htdocs/ftp/index.php b/public/ftp/index.php similarity index 100% rename from htdocs/ftp/index.php rename to public/ftp/index.php diff --git a/htdocs/holiday/card.php b/public/holiday/card.php similarity index 100% rename from htdocs/holiday/card.php rename to public/holiday/card.php diff --git a/htdocs/holiday/class/holiday.class.php b/public/holiday/class/holiday.class.php similarity index 100% rename from htdocs/holiday/class/holiday.class.php rename to public/holiday/class/holiday.class.php diff --git a/htdocs/holiday/class/index.html b/public/holiday/class/index.html similarity index 100% rename from htdocs/holiday/class/index.html rename to public/holiday/class/index.html diff --git a/htdocs/holiday/common.inc.php b/public/holiday/common.inc.php similarity index 100% rename from htdocs/holiday/common.inc.php rename to public/holiday/common.inc.php diff --git a/htdocs/holiday/define_holiday.php b/public/holiday/define_holiday.php similarity index 100% rename from htdocs/holiday/define_holiday.php rename to public/holiday/define_holiday.php diff --git a/htdocs/holiday/document.php b/public/holiday/document.php similarity index 100% rename from htdocs/holiday/document.php rename to public/holiday/document.php diff --git a/htdocs/holiday/img/add.png b/public/holiday/img/add.png similarity index 100% rename from htdocs/holiday/img/add.png rename to public/holiday/img/add.png diff --git a/htdocs/holiday/img/conges.png b/public/holiday/img/conges.png similarity index 100% rename from htdocs/holiday/img/conges.png rename to public/holiday/img/conges.png diff --git a/htdocs/holiday/img/delete.png b/public/holiday/img/delete.png similarity index 100% rename from htdocs/holiday/img/delete.png rename to public/holiday/img/delete.png diff --git a/htdocs/holiday/img/edit.png b/public/holiday/img/edit.png similarity index 100% rename from htdocs/holiday/img/edit.png rename to public/holiday/img/edit.png diff --git a/htdocs/holiday/img/index.html b/public/holiday/img/index.html similarity index 100% rename from htdocs/holiday/img/index.html rename to public/holiday/img/index.html diff --git a/htdocs/holiday/index.html b/public/holiday/index.html similarity index 100% rename from htdocs/holiday/index.html rename to public/holiday/index.html diff --git a/htdocs/holiday/list.php b/public/holiday/list.php similarity index 100% rename from htdocs/holiday/list.php rename to public/holiday/list.php diff --git a/htdocs/holiday/view_log.php b/public/holiday/view_log.php similarity index 100% rename from htdocs/holiday/view_log.php rename to public/holiday/view_log.php diff --git a/htdocs/hrm/admin/admin_establishment.php b/public/hrm/admin/admin_establishment.php similarity index 100% rename from htdocs/hrm/admin/admin_establishment.php rename to public/hrm/admin/admin_establishment.php diff --git a/htdocs/hrm/admin/admin_hrm.php b/public/hrm/admin/admin_hrm.php similarity index 100% rename from htdocs/hrm/admin/admin_hrm.php rename to public/hrm/admin/admin_hrm.php diff --git a/htdocs/hrm/admin/index.html b/public/hrm/admin/index.html similarity index 100% rename from htdocs/hrm/admin/index.html rename to public/hrm/admin/index.html diff --git a/htdocs/hrm/class/establishment.class.php b/public/hrm/class/establishment.class.php similarity index 100% rename from htdocs/hrm/class/establishment.class.php rename to public/hrm/class/establishment.class.php diff --git a/htdocs/hrm/class/index.html b/public/hrm/class/index.html similarity index 100% rename from htdocs/hrm/class/index.html rename to public/hrm/class/index.html diff --git a/htdocs/hrm/establishment/card.php b/public/hrm/establishment/card.php similarity index 100% rename from htdocs/hrm/establishment/card.php rename to public/hrm/establishment/card.php diff --git a/htdocs/hrm/establishment/index.html b/public/hrm/establishment/index.html similarity index 100% rename from htdocs/hrm/establishment/index.html rename to public/hrm/establishment/index.html diff --git a/htdocs/hrm/establishment/info.php b/public/hrm/establishment/info.php similarity index 100% rename from htdocs/hrm/establishment/info.php rename to public/hrm/establishment/info.php diff --git a/htdocs/hrm/index.html b/public/hrm/index.html similarity index 100% rename from htdocs/hrm/index.html rename to public/hrm/index.html diff --git a/htdocs/hrm/index.php b/public/hrm/index.php similarity index 100% rename from htdocs/hrm/index.php rename to public/hrm/index.php diff --git a/htdocs/imports/class/import.class.php b/public/imports/class/import.class.php similarity index 100% rename from htdocs/imports/class/import.class.php rename to public/imports/class/import.class.php diff --git a/htdocs/imports/class/index.html b/public/imports/class/index.html similarity index 100% rename from htdocs/imports/class/index.html rename to public/imports/class/index.html diff --git a/htdocs/imports/emptyexample.php b/public/imports/emptyexample.php similarity index 100% rename from htdocs/imports/emptyexample.php rename to public/imports/emptyexample.php diff --git a/htdocs/imports/import.php b/public/imports/import.php similarity index 100% rename from htdocs/imports/import.php rename to public/imports/import.php diff --git a/htdocs/imports/index.php b/public/imports/index.php similarity index 100% rename from htdocs/imports/index.php rename to public/imports/index.php diff --git a/htdocs/includes/OAuth/Common/AutoLoader.php b/public/includes/OAuth/Common/AutoLoader.php similarity index 100% rename from htdocs/includes/OAuth/Common/AutoLoader.php rename to public/includes/OAuth/Common/AutoLoader.php diff --git a/htdocs/includes/OAuth/Common/Consumer/Credentials.php b/public/includes/OAuth/Common/Consumer/Credentials.php similarity index 100% rename from htdocs/includes/OAuth/Common/Consumer/Credentials.php rename to public/includes/OAuth/Common/Consumer/Credentials.php diff --git a/htdocs/includes/OAuth/Common/Consumer/CredentialsInterface.php b/public/includes/OAuth/Common/Consumer/CredentialsInterface.php similarity index 100% rename from htdocs/includes/OAuth/Common/Consumer/CredentialsInterface.php rename to public/includes/OAuth/Common/Consumer/CredentialsInterface.php diff --git a/htdocs/includes/OAuth/Common/Exception/Exception.php b/public/includes/OAuth/Common/Exception/Exception.php similarity index 100% rename from htdocs/includes/OAuth/Common/Exception/Exception.php rename to public/includes/OAuth/Common/Exception/Exception.php diff --git a/htdocs/includes/OAuth/Common/Http/Client/AbstractClient.php b/public/includes/OAuth/Common/Http/Client/AbstractClient.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Client/AbstractClient.php rename to public/includes/OAuth/Common/Http/Client/AbstractClient.php diff --git a/htdocs/includes/OAuth/Common/Http/Client/ClientInterface.php b/public/includes/OAuth/Common/Http/Client/ClientInterface.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Client/ClientInterface.php rename to public/includes/OAuth/Common/Http/Client/ClientInterface.php diff --git a/htdocs/includes/OAuth/Common/Http/Client/CurlClient.php b/public/includes/OAuth/Common/Http/Client/CurlClient.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Client/CurlClient.php rename to public/includes/OAuth/Common/Http/Client/CurlClient.php diff --git a/htdocs/includes/OAuth/Common/Http/Client/StreamClient.php b/public/includes/OAuth/Common/Http/Client/StreamClient.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Client/StreamClient.php rename to public/includes/OAuth/Common/Http/Client/StreamClient.php diff --git a/htdocs/includes/OAuth/Common/Http/Exception/TokenResponseException.php b/public/includes/OAuth/Common/Http/Exception/TokenResponseException.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Exception/TokenResponseException.php rename to public/includes/OAuth/Common/Http/Exception/TokenResponseException.php diff --git a/htdocs/includes/OAuth/Common/Http/Uri/Uri.php b/public/includes/OAuth/Common/Http/Uri/Uri.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Uri/Uri.php rename to public/includes/OAuth/Common/Http/Uri/Uri.php diff --git a/htdocs/includes/OAuth/Common/Http/Uri/UriFactory.php b/public/includes/OAuth/Common/Http/Uri/UriFactory.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Uri/UriFactory.php rename to public/includes/OAuth/Common/Http/Uri/UriFactory.php diff --git a/htdocs/includes/OAuth/Common/Http/Uri/UriFactoryInterface.php b/public/includes/OAuth/Common/Http/Uri/UriFactoryInterface.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Uri/UriFactoryInterface.php rename to public/includes/OAuth/Common/Http/Uri/UriFactoryInterface.php diff --git a/htdocs/includes/OAuth/Common/Http/Uri/UriInterface.php b/public/includes/OAuth/Common/Http/Uri/UriInterface.php similarity index 100% rename from htdocs/includes/OAuth/Common/Http/Uri/UriInterface.php rename to public/includes/OAuth/Common/Http/Uri/UriInterface.php diff --git a/htdocs/includes/OAuth/Common/Service/AbstractService.php b/public/includes/OAuth/Common/Service/AbstractService.php similarity index 100% rename from htdocs/includes/OAuth/Common/Service/AbstractService.php rename to public/includes/OAuth/Common/Service/AbstractService.php diff --git a/htdocs/includes/OAuth/Common/Service/ServiceInterface.php b/public/includes/OAuth/Common/Service/ServiceInterface.php similarity index 100% rename from htdocs/includes/OAuth/Common/Service/ServiceInterface.php rename to public/includes/OAuth/Common/Service/ServiceInterface.php diff --git a/htdocs/includes/OAuth/Common/Storage/DoliStorage.php b/public/includes/OAuth/Common/Storage/DoliStorage.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/DoliStorage.php rename to public/includes/OAuth/Common/Storage/DoliStorage.php diff --git a/htdocs/includes/OAuth/Common/Storage/Exception/AuthorizationStateNotFoundException.php b/public/includes/OAuth/Common/Storage/Exception/AuthorizationStateNotFoundException.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/Exception/AuthorizationStateNotFoundException.php rename to public/includes/OAuth/Common/Storage/Exception/AuthorizationStateNotFoundException.php diff --git a/htdocs/includes/OAuth/Common/Storage/Exception/StorageException.php b/public/includes/OAuth/Common/Storage/Exception/StorageException.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/Exception/StorageException.php rename to public/includes/OAuth/Common/Storage/Exception/StorageException.php diff --git a/htdocs/includes/OAuth/Common/Storage/Exception/TokenNotFoundException.php b/public/includes/OAuth/Common/Storage/Exception/TokenNotFoundException.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/Exception/TokenNotFoundException.php rename to public/includes/OAuth/Common/Storage/Exception/TokenNotFoundException.php diff --git a/htdocs/includes/OAuth/Common/Storage/Memory.php b/public/includes/OAuth/Common/Storage/Memory.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/Memory.php rename to public/includes/OAuth/Common/Storage/Memory.php diff --git a/htdocs/includes/OAuth/Common/Storage/Redis.php b/public/includes/OAuth/Common/Storage/Redis.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/Redis.php rename to public/includes/OAuth/Common/Storage/Redis.php diff --git a/htdocs/includes/OAuth/Common/Storage/Session.php b/public/includes/OAuth/Common/Storage/Session.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/Session.php rename to public/includes/OAuth/Common/Storage/Session.php diff --git a/htdocs/includes/OAuth/Common/Storage/SymfonySession.php b/public/includes/OAuth/Common/Storage/SymfonySession.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/SymfonySession.php rename to public/includes/OAuth/Common/Storage/SymfonySession.php diff --git a/htdocs/includes/OAuth/Common/Storage/TokenStorageInterface.php b/public/includes/OAuth/Common/Storage/TokenStorageInterface.php similarity index 100% rename from htdocs/includes/OAuth/Common/Storage/TokenStorageInterface.php rename to public/includes/OAuth/Common/Storage/TokenStorageInterface.php diff --git a/htdocs/includes/OAuth/Common/Token/AbstractToken.php b/public/includes/OAuth/Common/Token/AbstractToken.php similarity index 100% rename from htdocs/includes/OAuth/Common/Token/AbstractToken.php rename to public/includes/OAuth/Common/Token/AbstractToken.php diff --git a/htdocs/includes/OAuth/Common/Token/Exception/ExpiredTokenException.php b/public/includes/OAuth/Common/Token/Exception/ExpiredTokenException.php similarity index 100% rename from htdocs/includes/OAuth/Common/Token/Exception/ExpiredTokenException.php rename to public/includes/OAuth/Common/Token/Exception/ExpiredTokenException.php diff --git a/htdocs/includes/OAuth/Common/Token/TokenInterface.php b/public/includes/OAuth/Common/Token/TokenInterface.php similarity index 100% rename from htdocs/includes/OAuth/Common/Token/TokenInterface.php rename to public/includes/OAuth/Common/Token/TokenInterface.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/AbstractService.php b/public/includes/OAuth/OAuth1/Service/AbstractService.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/AbstractService.php rename to public/includes/OAuth/OAuth1/Service/AbstractService.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/BitBucket.php b/public/includes/OAuth/OAuth1/Service/BitBucket.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/BitBucket.php rename to public/includes/OAuth/OAuth1/Service/BitBucket.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/Etsy.php b/public/includes/OAuth/OAuth1/Service/Etsy.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/Etsy.php rename to public/includes/OAuth/OAuth1/Service/Etsy.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/FitBit.php b/public/includes/OAuth/OAuth1/Service/FitBit.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/FitBit.php rename to public/includes/OAuth/OAuth1/Service/FitBit.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/FiveHundredPx.php b/public/includes/OAuth/OAuth1/Service/FiveHundredPx.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/FiveHundredPx.php rename to public/includes/OAuth/OAuth1/Service/FiveHundredPx.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/Flickr.php b/public/includes/OAuth/OAuth1/Service/Flickr.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/Flickr.php rename to public/includes/OAuth/OAuth1/Service/Flickr.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/QuickBooks.php b/public/includes/OAuth/OAuth1/Service/QuickBooks.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/QuickBooks.php rename to public/includes/OAuth/OAuth1/Service/QuickBooks.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/Redmine.php b/public/includes/OAuth/OAuth1/Service/Redmine.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/Redmine.php rename to public/includes/OAuth/OAuth1/Service/Redmine.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/ScoopIt.php b/public/includes/OAuth/OAuth1/Service/ScoopIt.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/ScoopIt.php rename to public/includes/OAuth/OAuth1/Service/ScoopIt.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/ServiceInterface.php b/public/includes/OAuth/OAuth1/Service/ServiceInterface.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/ServiceInterface.php rename to public/includes/OAuth/OAuth1/Service/ServiceInterface.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/Tumblr.php b/public/includes/OAuth/OAuth1/Service/Tumblr.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/Tumblr.php rename to public/includes/OAuth/OAuth1/Service/Tumblr.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/Twitter.php b/public/includes/OAuth/OAuth1/Service/Twitter.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/Twitter.php rename to public/includes/OAuth/OAuth1/Service/Twitter.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/Xing.php b/public/includes/OAuth/OAuth1/Service/Xing.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/Xing.php rename to public/includes/OAuth/OAuth1/Service/Xing.php diff --git a/htdocs/includes/OAuth/OAuth1/Service/Yahoo.php b/public/includes/OAuth/OAuth1/Service/Yahoo.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Service/Yahoo.php rename to public/includes/OAuth/OAuth1/Service/Yahoo.php diff --git a/htdocs/includes/OAuth/OAuth1/Signature/Exception/UnsupportedHashAlgorithmException.php b/public/includes/OAuth/OAuth1/Signature/Exception/UnsupportedHashAlgorithmException.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Signature/Exception/UnsupportedHashAlgorithmException.php rename to public/includes/OAuth/OAuth1/Signature/Exception/UnsupportedHashAlgorithmException.php diff --git a/htdocs/includes/OAuth/OAuth1/Signature/Signature.php b/public/includes/OAuth/OAuth1/Signature/Signature.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Signature/Signature.php rename to public/includes/OAuth/OAuth1/Signature/Signature.php diff --git a/htdocs/includes/OAuth/OAuth1/Signature/SignatureInterface.php b/public/includes/OAuth/OAuth1/Signature/SignatureInterface.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Signature/SignatureInterface.php rename to public/includes/OAuth/OAuth1/Signature/SignatureInterface.php diff --git a/htdocs/includes/OAuth/OAuth1/Token/StdOAuth1Token.php b/public/includes/OAuth/OAuth1/Token/StdOAuth1Token.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Token/StdOAuth1Token.php rename to public/includes/OAuth/OAuth1/Token/StdOAuth1Token.php diff --git a/htdocs/includes/OAuth/OAuth1/Token/TokenInterface.php b/public/includes/OAuth/OAuth1/Token/TokenInterface.php similarity index 100% rename from htdocs/includes/OAuth/OAuth1/Token/TokenInterface.php rename to public/includes/OAuth/OAuth1/Token/TokenInterface.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/AbstractService.php b/public/includes/OAuth/OAuth2/Service/AbstractService.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/AbstractService.php rename to public/includes/OAuth/OAuth2/Service/AbstractService.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Amazon.php b/public/includes/OAuth/OAuth2/Service/Amazon.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Amazon.php rename to public/includes/OAuth/OAuth2/Service/Amazon.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Bitly.php b/public/includes/OAuth/OAuth2/Service/Bitly.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Bitly.php rename to public/includes/OAuth/OAuth2/Service/Bitly.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Bitrix24.php b/public/includes/OAuth/OAuth2/Service/Bitrix24.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Bitrix24.php rename to public/includes/OAuth/OAuth2/Service/Bitrix24.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Box.php b/public/includes/OAuth/OAuth2/Service/Box.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Box.php rename to public/includes/OAuth/OAuth2/Service/Box.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Buffer.php b/public/includes/OAuth/OAuth2/Service/Buffer.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Buffer.php rename to public/includes/OAuth/OAuth2/Service/Buffer.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Dailymotion.php b/public/includes/OAuth/OAuth2/Service/Dailymotion.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Dailymotion.php rename to public/includes/OAuth/OAuth2/Service/Dailymotion.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Delicious.php b/public/includes/OAuth/OAuth2/Service/Delicious.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Delicious.php rename to public/includes/OAuth/OAuth2/Service/Delicious.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/DeviantArt.php b/public/includes/OAuth/OAuth2/Service/DeviantArt.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/DeviantArt.php rename to public/includes/OAuth/OAuth2/Service/DeviantArt.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Dropbox.php b/public/includes/OAuth/OAuth2/Service/Dropbox.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Dropbox.php rename to public/includes/OAuth/OAuth2/Service/Dropbox.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/EveOnline.php b/public/includes/OAuth/OAuth2/Service/EveOnline.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/EveOnline.php rename to public/includes/OAuth/OAuth2/Service/EveOnline.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Exception/InvalidAccessTypeException.php b/public/includes/OAuth/OAuth2/Service/Exception/InvalidAccessTypeException.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Exception/InvalidAccessTypeException.php rename to public/includes/OAuth/OAuth2/Service/Exception/InvalidAccessTypeException.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Exception/InvalidAuthorizationStateException.php b/public/includes/OAuth/OAuth2/Service/Exception/InvalidAuthorizationStateException.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Exception/InvalidAuthorizationStateException.php rename to public/includes/OAuth/OAuth2/Service/Exception/InvalidAuthorizationStateException.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Exception/InvalidScopeException.php b/public/includes/OAuth/OAuth2/Service/Exception/InvalidScopeException.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Exception/InvalidScopeException.php rename to public/includes/OAuth/OAuth2/Service/Exception/InvalidScopeException.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Exception/MissingRefreshTokenException.php b/public/includes/OAuth/OAuth2/Service/Exception/MissingRefreshTokenException.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Exception/MissingRefreshTokenException.php rename to public/includes/OAuth/OAuth2/Service/Exception/MissingRefreshTokenException.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Facebook.php b/public/includes/OAuth/OAuth2/Service/Facebook.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Facebook.php rename to public/includes/OAuth/OAuth2/Service/Facebook.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Foursquare.php b/public/includes/OAuth/OAuth2/Service/Foursquare.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Foursquare.php rename to public/includes/OAuth/OAuth2/Service/Foursquare.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/GitHub.php b/public/includes/OAuth/OAuth2/Service/GitHub.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/GitHub.php rename to public/includes/OAuth/OAuth2/Service/GitHub.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Google.php b/public/includes/OAuth/OAuth2/Service/Google.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Google.php rename to public/includes/OAuth/OAuth2/Service/Google.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Harvest.php b/public/includes/OAuth/OAuth2/Service/Harvest.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Harvest.php rename to public/includes/OAuth/OAuth2/Service/Harvest.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Heroku.php b/public/includes/OAuth/OAuth2/Service/Heroku.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Heroku.php rename to public/includes/OAuth/OAuth2/Service/Heroku.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Hubic.php b/public/includes/OAuth/OAuth2/Service/Hubic.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Hubic.php rename to public/includes/OAuth/OAuth2/Service/Hubic.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Instagram.php b/public/includes/OAuth/OAuth2/Service/Instagram.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Instagram.php rename to public/includes/OAuth/OAuth2/Service/Instagram.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/JawboneUP.php b/public/includes/OAuth/OAuth2/Service/JawboneUP.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/JawboneUP.php rename to public/includes/OAuth/OAuth2/Service/JawboneUP.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Linkedin.php b/public/includes/OAuth/OAuth2/Service/Linkedin.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Linkedin.php rename to public/includes/OAuth/OAuth2/Service/Linkedin.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Mailchimp.php b/public/includes/OAuth/OAuth2/Service/Mailchimp.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Mailchimp.php rename to public/includes/OAuth/OAuth2/Service/Mailchimp.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Microsoft.php b/public/includes/OAuth/OAuth2/Service/Microsoft.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Microsoft.php rename to public/includes/OAuth/OAuth2/Service/Microsoft.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Nest.php b/public/includes/OAuth/OAuth2/Service/Nest.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Nest.php rename to public/includes/OAuth/OAuth2/Service/Nest.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Netatmo.php b/public/includes/OAuth/OAuth2/Service/Netatmo.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Netatmo.php rename to public/includes/OAuth/OAuth2/Service/Netatmo.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/ParrotFlowerPower.php b/public/includes/OAuth/OAuth2/Service/ParrotFlowerPower.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/ParrotFlowerPower.php rename to public/includes/OAuth/OAuth2/Service/ParrotFlowerPower.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Paypal.php b/public/includes/OAuth/OAuth2/Service/Paypal.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Paypal.php rename to public/includes/OAuth/OAuth2/Service/Paypal.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Pocket.php b/public/includes/OAuth/OAuth2/Service/Pocket.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Pocket.php rename to public/includes/OAuth/OAuth2/Service/Pocket.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Reddit.php b/public/includes/OAuth/OAuth2/Service/Reddit.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Reddit.php rename to public/includes/OAuth/OAuth2/Service/Reddit.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/RunKeeper.php b/public/includes/OAuth/OAuth2/Service/RunKeeper.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/RunKeeper.php rename to public/includes/OAuth/OAuth2/Service/RunKeeper.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Salesforce.php b/public/includes/OAuth/OAuth2/Service/Salesforce.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Salesforce.php rename to public/includes/OAuth/OAuth2/Service/Salesforce.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/ServiceInterface.php b/public/includes/OAuth/OAuth2/Service/ServiceInterface.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/ServiceInterface.php rename to public/includes/OAuth/OAuth2/Service/ServiceInterface.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/SoundCloud.php b/public/includes/OAuth/OAuth2/Service/SoundCloud.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/SoundCloud.php rename to public/includes/OAuth/OAuth2/Service/SoundCloud.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Spotify.php b/public/includes/OAuth/OAuth2/Service/Spotify.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Spotify.php rename to public/includes/OAuth/OAuth2/Service/Spotify.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Strava.php b/public/includes/OAuth/OAuth2/Service/Strava.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Strava.php rename to public/includes/OAuth/OAuth2/Service/Strava.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Ustream.php b/public/includes/OAuth/OAuth2/Service/Ustream.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Ustream.php rename to public/includes/OAuth/OAuth2/Service/Ustream.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Vimeo.php b/public/includes/OAuth/OAuth2/Service/Vimeo.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Vimeo.php rename to public/includes/OAuth/OAuth2/Service/Vimeo.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Vkontakte.php b/public/includes/OAuth/OAuth2/Service/Vkontakte.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Vkontakte.php rename to public/includes/OAuth/OAuth2/Service/Vkontakte.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Yahoo.php b/public/includes/OAuth/OAuth2/Service/Yahoo.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Yahoo.php rename to public/includes/OAuth/OAuth2/Service/Yahoo.php diff --git a/htdocs/includes/OAuth/OAuth2/Service/Yammer.php b/public/includes/OAuth/OAuth2/Service/Yammer.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Service/Yammer.php rename to public/includes/OAuth/OAuth2/Service/Yammer.php diff --git a/htdocs/includes/OAuth/OAuth2/Token/StdOAuth2Token.php b/public/includes/OAuth/OAuth2/Token/StdOAuth2Token.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Token/StdOAuth2Token.php rename to public/includes/OAuth/OAuth2/Token/StdOAuth2Token.php diff --git a/htdocs/includes/OAuth/OAuth2/Token/TokenInterface.php b/public/includes/OAuth/OAuth2/Token/TokenInterface.php similarity index 100% rename from htdocs/includes/OAuth/OAuth2/Token/TokenInterface.php rename to public/includes/OAuth/OAuth2/Token/TokenInterface.php diff --git a/htdocs/includes/OAuth/ServiceFactory.php b/public/includes/OAuth/ServiceFactory.php similarity index 100% rename from htdocs/includes/OAuth/ServiceFactory.php rename to public/includes/OAuth/ServiceFactory.php diff --git a/htdocs/includes/OAuth/bootstrap.php b/public/includes/OAuth/bootstrap.php similarity index 100% rename from htdocs/includes/OAuth/bootstrap.php rename to public/includes/OAuth/bootstrap.php diff --git a/htdocs/includes/adodbtime/adodb-time.inc.php b/public/includes/adodbtime/adodb-time.inc.php similarity index 100% rename from htdocs/includes/adodbtime/adodb-time.inc.php rename to public/includes/adodbtime/adodb-time.inc.php diff --git a/htdocs/includes/adodbtime/index.html b/public/includes/adodbtime/index.html similarity index 100% rename from htdocs/includes/adodbtime/index.html rename to public/includes/adodbtime/index.html diff --git a/htdocs/includes/ccampbell/chromephp/ChromePhp.php b/public/includes/ccampbell/chromephp/ChromePhp.php similarity index 100% rename from htdocs/includes/ccampbell/chromephp/ChromePhp.php rename to public/includes/ccampbell/chromephp/ChromePhp.php diff --git a/htdocs/includes/ccampbell/chromephp/README.md b/public/includes/ccampbell/chromephp/README.md similarity index 100% rename from htdocs/includes/ccampbell/chromephp/README.md rename to public/includes/ccampbell/chromephp/README.md diff --git a/htdocs/includes/ccampbell/chromephp/composer.json b/public/includes/ccampbell/chromephp/composer.json similarity index 100% rename from htdocs/includes/ccampbell/chromephp/composer.json rename to public/includes/ccampbell/chromephp/composer.json diff --git a/htdocs/includes/ckeditor/ckeditor/CHANGES.md b/public/includes/ckeditor/ckeditor/CHANGES.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/CHANGES.md rename to public/includes/ckeditor/ckeditor/CHANGES.md diff --git a/htdocs/includes/ckeditor/ckeditor/LICENSE.md b/public/includes/ckeditor/ckeditor/LICENSE.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/LICENSE.md rename to public/includes/ckeditor/ckeditor/LICENSE.md diff --git a/htdocs/includes/ckeditor/ckeditor/README.md b/public/includes/ckeditor/ckeditor/README.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/README.md rename to public/includes/ckeditor/ckeditor/README.md diff --git a/htdocs/includes/ckeditor/ckeditor/adapters/jquery.js b/public/includes/ckeditor/ckeditor/adapters/jquery.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/adapters/jquery.js rename to public/includes/ckeditor/ckeditor/adapters/jquery.js diff --git a/htdocs/includes/ckeditor/ckeditor/bower.json b/public/includes/ckeditor/ckeditor/bower.json similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/bower.json rename to public/includes/ckeditor/ckeditor/bower.json diff --git a/htdocs/includes/ckeditor/ckeditor/build-config.js b/public/includes/ckeditor/ckeditor/build-config.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/build-config.js rename to public/includes/ckeditor/ckeditor/build-config.js diff --git a/htdocs/includes/ckeditor/ckeditor/ckeditor.js b/public/includes/ckeditor/ckeditor/ckeditor.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/ckeditor.js rename to public/includes/ckeditor/ckeditor/ckeditor.js diff --git a/htdocs/includes/ckeditor/ckeditor/composer.json b/public/includes/ckeditor/ckeditor/composer.json similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/composer.json rename to public/includes/ckeditor/ckeditor/composer.json diff --git a/htdocs/includes/ckeditor/ckeditor/config.js b/public/includes/ckeditor/ckeditor/config.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/config.js rename to public/includes/ckeditor/ckeditor/config.js diff --git a/htdocs/includes/ckeditor/ckeditor/contents.css b/public/includes/ckeditor/ckeditor/contents.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/contents.css rename to public/includes/ckeditor/ckeditor/contents.css diff --git a/htdocs/includes/ckeditor/ckeditor/lang/af.js b/public/includes/ckeditor/ckeditor/lang/af.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/af.js rename to public/includes/ckeditor/ckeditor/lang/af.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ar.js b/public/includes/ckeditor/ckeditor/lang/ar.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ar.js rename to public/includes/ckeditor/ckeditor/lang/ar.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/bg.js b/public/includes/ckeditor/ckeditor/lang/bg.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/bg.js rename to public/includes/ckeditor/ckeditor/lang/bg.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/bn.js b/public/includes/ckeditor/ckeditor/lang/bn.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/bn.js rename to public/includes/ckeditor/ckeditor/lang/bn.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/bs.js b/public/includes/ckeditor/ckeditor/lang/bs.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/bs.js rename to public/includes/ckeditor/ckeditor/lang/bs.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ca.js b/public/includes/ckeditor/ckeditor/lang/ca.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ca.js rename to public/includes/ckeditor/ckeditor/lang/ca.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/cs.js b/public/includes/ckeditor/ckeditor/lang/cs.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/cs.js rename to public/includes/ckeditor/ckeditor/lang/cs.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/cy.js b/public/includes/ckeditor/ckeditor/lang/cy.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/cy.js rename to public/includes/ckeditor/ckeditor/lang/cy.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/da.js b/public/includes/ckeditor/ckeditor/lang/da.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/da.js rename to public/includes/ckeditor/ckeditor/lang/da.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/de-ch.js b/public/includes/ckeditor/ckeditor/lang/de-ch.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/de-ch.js rename to public/includes/ckeditor/ckeditor/lang/de-ch.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/de.js b/public/includes/ckeditor/ckeditor/lang/de.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/de.js rename to public/includes/ckeditor/ckeditor/lang/de.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/el.js b/public/includes/ckeditor/ckeditor/lang/el.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/el.js rename to public/includes/ckeditor/ckeditor/lang/el.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/en-au.js b/public/includes/ckeditor/ckeditor/lang/en-au.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/en-au.js rename to public/includes/ckeditor/ckeditor/lang/en-au.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/en-ca.js b/public/includes/ckeditor/ckeditor/lang/en-ca.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/en-ca.js rename to public/includes/ckeditor/ckeditor/lang/en-ca.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/en-gb.js b/public/includes/ckeditor/ckeditor/lang/en-gb.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/en-gb.js rename to public/includes/ckeditor/ckeditor/lang/en-gb.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/en.js b/public/includes/ckeditor/ckeditor/lang/en.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/en.js rename to public/includes/ckeditor/ckeditor/lang/en.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/eo.js b/public/includes/ckeditor/ckeditor/lang/eo.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/eo.js rename to public/includes/ckeditor/ckeditor/lang/eo.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/es.js b/public/includes/ckeditor/ckeditor/lang/es.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/es.js rename to public/includes/ckeditor/ckeditor/lang/es.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/et.js b/public/includes/ckeditor/ckeditor/lang/et.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/et.js rename to public/includes/ckeditor/ckeditor/lang/et.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/eu.js b/public/includes/ckeditor/ckeditor/lang/eu.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/eu.js rename to public/includes/ckeditor/ckeditor/lang/eu.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/fa.js b/public/includes/ckeditor/ckeditor/lang/fa.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/fa.js rename to public/includes/ckeditor/ckeditor/lang/fa.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/fi.js b/public/includes/ckeditor/ckeditor/lang/fi.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/fi.js rename to public/includes/ckeditor/ckeditor/lang/fi.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/fo.js b/public/includes/ckeditor/ckeditor/lang/fo.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/fo.js rename to public/includes/ckeditor/ckeditor/lang/fo.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/fr-ca.js b/public/includes/ckeditor/ckeditor/lang/fr-ca.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/fr-ca.js rename to public/includes/ckeditor/ckeditor/lang/fr-ca.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/fr.js b/public/includes/ckeditor/ckeditor/lang/fr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/fr.js rename to public/includes/ckeditor/ckeditor/lang/fr.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/gl.js b/public/includes/ckeditor/ckeditor/lang/gl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/gl.js rename to public/includes/ckeditor/ckeditor/lang/gl.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/gu.js b/public/includes/ckeditor/ckeditor/lang/gu.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/gu.js rename to public/includes/ckeditor/ckeditor/lang/gu.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/he.js b/public/includes/ckeditor/ckeditor/lang/he.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/he.js rename to public/includes/ckeditor/ckeditor/lang/he.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/hi.js b/public/includes/ckeditor/ckeditor/lang/hi.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/hi.js rename to public/includes/ckeditor/ckeditor/lang/hi.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/hr.js b/public/includes/ckeditor/ckeditor/lang/hr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/hr.js rename to public/includes/ckeditor/ckeditor/lang/hr.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/hu.js b/public/includes/ckeditor/ckeditor/lang/hu.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/hu.js rename to public/includes/ckeditor/ckeditor/lang/hu.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/id.js b/public/includes/ckeditor/ckeditor/lang/id.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/id.js rename to public/includes/ckeditor/ckeditor/lang/id.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/is.js b/public/includes/ckeditor/ckeditor/lang/is.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/is.js rename to public/includes/ckeditor/ckeditor/lang/is.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/it.js b/public/includes/ckeditor/ckeditor/lang/it.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/it.js rename to public/includes/ckeditor/ckeditor/lang/it.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ja.js b/public/includes/ckeditor/ckeditor/lang/ja.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ja.js rename to public/includes/ckeditor/ckeditor/lang/ja.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ka.js b/public/includes/ckeditor/ckeditor/lang/ka.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ka.js rename to public/includes/ckeditor/ckeditor/lang/ka.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/km.js b/public/includes/ckeditor/ckeditor/lang/km.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/km.js rename to public/includes/ckeditor/ckeditor/lang/km.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ko.js b/public/includes/ckeditor/ckeditor/lang/ko.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ko.js rename to public/includes/ckeditor/ckeditor/lang/ko.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ku.js b/public/includes/ckeditor/ckeditor/lang/ku.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ku.js rename to public/includes/ckeditor/ckeditor/lang/ku.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/lt.js b/public/includes/ckeditor/ckeditor/lang/lt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/lt.js rename to public/includes/ckeditor/ckeditor/lang/lt.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/lv.js b/public/includes/ckeditor/ckeditor/lang/lv.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/lv.js rename to public/includes/ckeditor/ckeditor/lang/lv.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/mk.js b/public/includes/ckeditor/ckeditor/lang/mk.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/mk.js rename to public/includes/ckeditor/ckeditor/lang/mk.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/mn.js b/public/includes/ckeditor/ckeditor/lang/mn.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/mn.js rename to public/includes/ckeditor/ckeditor/lang/mn.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ms.js b/public/includes/ckeditor/ckeditor/lang/ms.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ms.js rename to public/includes/ckeditor/ckeditor/lang/ms.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/nb.js b/public/includes/ckeditor/ckeditor/lang/nb.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/nb.js rename to public/includes/ckeditor/ckeditor/lang/nb.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/nl.js b/public/includes/ckeditor/ckeditor/lang/nl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/nl.js rename to public/includes/ckeditor/ckeditor/lang/nl.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/no.js b/public/includes/ckeditor/ckeditor/lang/no.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/no.js rename to public/includes/ckeditor/ckeditor/lang/no.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/pl.js b/public/includes/ckeditor/ckeditor/lang/pl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/pl.js rename to public/includes/ckeditor/ckeditor/lang/pl.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/pt-br.js b/public/includes/ckeditor/ckeditor/lang/pt-br.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/pt-br.js rename to public/includes/ckeditor/ckeditor/lang/pt-br.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/pt.js b/public/includes/ckeditor/ckeditor/lang/pt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/pt.js rename to public/includes/ckeditor/ckeditor/lang/pt.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ro.js b/public/includes/ckeditor/ckeditor/lang/ro.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ro.js rename to public/includes/ckeditor/ckeditor/lang/ro.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ru.js b/public/includes/ckeditor/ckeditor/lang/ru.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ru.js rename to public/includes/ckeditor/ckeditor/lang/ru.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/si.js b/public/includes/ckeditor/ckeditor/lang/si.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/si.js rename to public/includes/ckeditor/ckeditor/lang/si.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/sk.js b/public/includes/ckeditor/ckeditor/lang/sk.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/sk.js rename to public/includes/ckeditor/ckeditor/lang/sk.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/sl.js b/public/includes/ckeditor/ckeditor/lang/sl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/sl.js rename to public/includes/ckeditor/ckeditor/lang/sl.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/sq.js b/public/includes/ckeditor/ckeditor/lang/sq.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/sq.js rename to public/includes/ckeditor/ckeditor/lang/sq.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/sr-latn.js b/public/includes/ckeditor/ckeditor/lang/sr-latn.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/sr-latn.js rename to public/includes/ckeditor/ckeditor/lang/sr-latn.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/sr.js b/public/includes/ckeditor/ckeditor/lang/sr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/sr.js rename to public/includes/ckeditor/ckeditor/lang/sr.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/sv.js b/public/includes/ckeditor/ckeditor/lang/sv.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/sv.js rename to public/includes/ckeditor/ckeditor/lang/sv.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/th.js b/public/includes/ckeditor/ckeditor/lang/th.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/th.js rename to public/includes/ckeditor/ckeditor/lang/th.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/tr.js b/public/includes/ckeditor/ckeditor/lang/tr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/tr.js rename to public/includes/ckeditor/ckeditor/lang/tr.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/tt.js b/public/includes/ckeditor/ckeditor/lang/tt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/tt.js rename to public/includes/ckeditor/ckeditor/lang/tt.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/ug.js b/public/includes/ckeditor/ckeditor/lang/ug.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/ug.js rename to public/includes/ckeditor/ckeditor/lang/ug.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/uk.js b/public/includes/ckeditor/ckeditor/lang/uk.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/uk.js rename to public/includes/ckeditor/ckeditor/lang/uk.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/vi.js b/public/includes/ckeditor/ckeditor/lang/vi.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/vi.js rename to public/includes/ckeditor/ckeditor/lang/vi.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/zh-cn.js b/public/includes/ckeditor/ckeditor/lang/zh-cn.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/zh-cn.js rename to public/includes/ckeditor/ckeditor/lang/zh-cn.js diff --git a/htdocs/includes/ckeditor/ckeditor/lang/zh.js b/public/includes/ckeditor/ckeditor/lang/zh.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/lang/zh.js rename to public/includes/ckeditor/ckeditor/lang/zh.js diff --git a/htdocs/includes/ckeditor/ckeditor/package.json b/public/includes/ckeditor/ckeditor/package.json similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/package.json rename to public/includes/ckeditor/ckeditor/package.json diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/af.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/af.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/af.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/af.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/da.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/da.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/da.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/da.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/de.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/el.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/el.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/el.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/el.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/en.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/es.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/es.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/es.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/es.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/et.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/et.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/et.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/et.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/he.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/he.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/he.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/he.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/id.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/id.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/id.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/id.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/it.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/it.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/it.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/it.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/km.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/km.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/km.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/km.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/no.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/no.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/no.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/no.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/si.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/si.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/si.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/si.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/th.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/th.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/th.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/th.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js b/public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js rename to public/includes/ckeditor/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/about/dialogs/about.js b/public/includes/ckeditor/ckeditor/plugins/about/dialogs/about.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/about/dialogs/about.js rename to public/includes/ckeditor/ckeditor/plugins/about/dialogs/about.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png b/public/includes/ckeditor/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png rename to public/includes/ckeditor/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/about/dialogs/logo_ckeditor.png b/public/includes/ckeditor/ckeditor/plugins/about/dialogs/logo_ckeditor.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/about/dialogs/logo_ckeditor.png rename to public/includes/ckeditor/ckeditor/plugins/about/dialogs/logo_ckeditor.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/clipboard/dialogs/paste.js b/public/includes/ckeditor/ckeditor/plugins/clipboard/dialogs/paste.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/clipboard/dialogs/paste.js rename to public/includes/ckeditor/ckeditor/plugins/clipboard/dialogs/paste.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.css b/public/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.css rename to public/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.css diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.js b/public/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.js rename to public/includes/ckeditor/ckeditor/plugins/colordialog/dialogs/colordialog.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/dialog/dialogDefinition.js b/public/includes/ckeditor/ckeditor/plugins/dialog/dialogDefinition.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/dialog/dialogDefinition.js rename to public/includes/ckeditor/ckeditor/plugins/dialog/dialogDefinition.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/div/dialogs/div.js b/public/includes/ckeditor/ckeditor/plugins/div/dialogs/div.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/div/dialogs/div.js rename to public/includes/ckeditor/ckeditor/plugins/div/dialogs/div.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/find/dialogs/find.js b/public/includes/ckeditor/ckeditor/plugins/find/dialogs/find.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/find/dialogs/find.js rename to public/includes/ckeditor/ckeditor/plugins/find/dialogs/find.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/flash/dialogs/flash.js b/public/includes/ckeditor/ckeditor/plugins/flash/dialogs/flash.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/flash/dialogs/flash.js rename to public/includes/ckeditor/ckeditor/plugins/flash/dialogs/flash.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/flash/images/placeholder.png b/public/includes/ckeditor/ckeditor/plugins/flash/images/placeholder.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/flash/images/placeholder.png rename to public/includes/ckeditor/ckeditor/plugins/flash/images/placeholder.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/button.js b/public/includes/ckeditor/ckeditor/plugins/forms/dialogs/button.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/button.js rename to public/includes/ckeditor/ckeditor/plugins/forms/dialogs/button.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/checkbox.js b/public/includes/ckeditor/ckeditor/plugins/forms/dialogs/checkbox.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/checkbox.js rename to public/includes/ckeditor/ckeditor/plugins/forms/dialogs/checkbox.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/form.js b/public/includes/ckeditor/ckeditor/plugins/forms/dialogs/form.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/form.js rename to public/includes/ckeditor/ckeditor/plugins/forms/dialogs/form.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/hiddenfield.js b/public/includes/ckeditor/ckeditor/plugins/forms/dialogs/hiddenfield.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/hiddenfield.js rename to public/includes/ckeditor/ckeditor/plugins/forms/dialogs/hiddenfield.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/radio.js b/public/includes/ckeditor/ckeditor/plugins/forms/dialogs/radio.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/radio.js rename to public/includes/ckeditor/ckeditor/plugins/forms/dialogs/radio.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/select.js b/public/includes/ckeditor/ckeditor/plugins/forms/dialogs/select.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/select.js rename to public/includes/ckeditor/ckeditor/plugins/forms/dialogs/select.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/textarea.js b/public/includes/ckeditor/ckeditor/plugins/forms/dialogs/textarea.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/textarea.js rename to public/includes/ckeditor/ckeditor/plugins/forms/dialogs/textarea.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/textfield.js b/public/includes/ckeditor/ckeditor/plugins/forms/dialogs/textfield.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/dialogs/textfield.js rename to public/includes/ckeditor/ckeditor/plugins/forms/dialogs/textfield.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/forms/images/hiddenfield.gif b/public/includes/ckeditor/ckeditor/plugins/forms/images/hiddenfield.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/forms/images/hiddenfield.gif rename to public/includes/ckeditor/ckeditor/plugins/forms/images/hiddenfield.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/icons.png b/public/includes/ckeditor/ckeditor/plugins/icons.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/icons.png rename to public/includes/ckeditor/ckeditor/plugins/icons.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/icons_hidpi.png b/public/includes/ckeditor/ckeditor/plugins/icons_hidpi.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/icons_hidpi.png rename to public/includes/ckeditor/ckeditor/plugins/icons_hidpi.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/iframe/dialogs/iframe.js b/public/includes/ckeditor/ckeditor/plugins/iframe/dialogs/iframe.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/iframe/dialogs/iframe.js rename to public/includes/ckeditor/ckeditor/plugins/iframe/dialogs/iframe.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/iframe/images/placeholder.png b/public/includes/ckeditor/ckeditor/plugins/iframe/images/placeholder.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/iframe/images/placeholder.png rename to public/includes/ckeditor/ckeditor/plugins/iframe/images/placeholder.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/image/dialogs/image.js b/public/includes/ckeditor/ckeditor/plugins/image/dialogs/image.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/image/dialogs/image.js rename to public/includes/ckeditor/ckeditor/plugins/image/dialogs/image.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/image/images/noimage.png b/public/includes/ckeditor/ckeditor/plugins/image/images/noimage.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/image/images/noimage.png rename to public/includes/ckeditor/ckeditor/plugins/image/images/noimage.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/link/dialogs/anchor.js b/public/includes/ckeditor/ckeditor/plugins/link/dialogs/anchor.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/link/dialogs/anchor.js rename to public/includes/ckeditor/ckeditor/plugins/link/dialogs/anchor.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/link/dialogs/link.js b/public/includes/ckeditor/ckeditor/plugins/link/dialogs/link.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/link/dialogs/link.js rename to public/includes/ckeditor/ckeditor/plugins/link/dialogs/link.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/link/images/anchor.png b/public/includes/ckeditor/ckeditor/plugins/link/images/anchor.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/link/images/anchor.png rename to public/includes/ckeditor/ckeditor/plugins/link/images/anchor.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/link/images/hidpi/anchor.png b/public/includes/ckeditor/ckeditor/plugins/link/images/hidpi/anchor.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/link/images/hidpi/anchor.png rename to public/includes/ckeditor/ckeditor/plugins/link/images/hidpi/anchor.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/liststyle/dialogs/liststyle.js b/public/includes/ckeditor/ckeditor/plugins/liststyle/dialogs/liststyle.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/liststyle/dialogs/liststyle.js rename to public/includes/ckeditor/ckeditor/plugins/liststyle/dialogs/liststyle.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png b/public/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png rename to public/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon.png b/public/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon.png rename to public/includes/ckeditor/ckeditor/plugins/magicline/images/hidpi/icon.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/magicline/images/icon-rtl.png b/public/includes/ckeditor/ckeditor/plugins/magicline/images/icon-rtl.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/magicline/images/icon-rtl.png rename to public/includes/ckeditor/ckeditor/plugins/magicline/images/icon-rtl.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/magicline/images/icon.png b/public/includes/ckeditor/ckeditor/plugins/magicline/images/icon.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/magicline/images/icon.png rename to public/includes/ckeditor/ckeditor/plugins/magicline/images/icon.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/pagebreak/images/pagebreak.gif b/public/includes/ckeditor/ckeditor/plugins/pagebreak/images/pagebreak.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/pagebreak/images/pagebreak.gif rename to public/includes/ckeditor/ckeditor/plugins/pagebreak/images/pagebreak.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/pastefromword/filter/default.js b/public/includes/ckeditor/ckeditor/plugins/pastefromword/filter/default.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/pastefromword/filter/default.js rename to public/includes/ckeditor/ckeditor/plugins/pastefromword/filter/default.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/preview/preview.html b/public/includes/ckeditor/ckeditor/plugins/preview/preview.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/preview/preview.html rename to public/includes/ckeditor/ckeditor/plugins/preview/preview.html diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/scayt/CHANGELOG.md b/public/includes/ckeditor/ckeditor/plugins/scayt/CHANGELOG.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/scayt/CHANGELOG.md rename to public/includes/ckeditor/ckeditor/plugins/scayt/CHANGELOG.md diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/scayt/LICENSE.md b/public/includes/ckeditor/ckeditor/plugins/scayt/LICENSE.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/scayt/LICENSE.md rename to public/includes/ckeditor/ckeditor/plugins/scayt/LICENSE.md diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/scayt/README.md b/public/includes/ckeditor/ckeditor/plugins/scayt/README.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/scayt/README.md rename to public/includes/ckeditor/ckeditor/plugins/scayt/README.md diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/scayt/dialogs/options.js b/public/includes/ckeditor/ckeditor/plugins/scayt/dialogs/options.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/scayt/dialogs/options.js rename to public/includes/ckeditor/ckeditor/plugins/scayt/dialogs/options.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/scayt/dialogs/toolbar.css b/public/includes/ckeditor/ckeditor/plugins/scayt/dialogs/toolbar.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/scayt/dialogs/toolbar.css rename to public/includes/ckeditor/ckeditor/plugins/scayt/dialogs/toolbar.css diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_address.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_address.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_address.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_address.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_blockquote.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_div.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_div.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_div.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_div.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h1.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h2.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h3.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h3.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h3.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h3.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h4.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h4.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h4.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h4.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h5.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h6.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h6.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h6.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_h6.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_p.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_p.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_p.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_p.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png b/public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png rename to public/includes/ckeditor/ckeditor/plugins/showblocks/images/block_pre.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/dialogs/smiley.js b/public/includes/ckeditor/ckeditor/plugins/smiley/dialogs/smiley.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/dialogs/smiley.js rename to public/includes/ckeditor/ckeditor/plugins/smiley/dialogs/smiley.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/angel_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/angry_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/broken_heart.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/confused_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/cry_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/devil_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/embaressed_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/embaressed_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/embaressed_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/embaressed_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/embarrassed_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/envelope.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/heart.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/heart.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/heart.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/heart.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/heart.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/heart.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/heart.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/heart.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/kiss.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/lightbulb.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/omg_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/regular_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/sad_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/shades_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/teeth_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_down.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/thumbs_up.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/tongue_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/tounge_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/tounge_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/tounge_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/tounge_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.gif b/public/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.gif rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.png b/public/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.png rename to public/includes/ckeditor/ckeditor/plugins/smiley/images/wink_smile.png diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/af.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/af.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/af.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/af.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ar.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ar.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ar.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ar.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/bg.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/bg.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/bg.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/bg.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ca.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ca.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ca.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ca.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cs.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cs.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cs.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cs.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cy.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cy.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cy.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/cy.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/da.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/da.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/da.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/da.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/de.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/el.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/el.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/el.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/el.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/en.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eo.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eo.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eo.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eo.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/es.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/es.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/es.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/es.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/et.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/et.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/et.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/et.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eu.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eu.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eu.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/eu.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fa.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fa.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fa.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fa.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fi.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fi.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fi.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fi.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/fr.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/gl.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/gl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/gl.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/gl.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/he.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/he.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/he.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/he.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hr.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hr.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hr.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hu.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hu.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hu.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/hu.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/id.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/id.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/id.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/id.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/it.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/it.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/it.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/it.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ja.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ja.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ja.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ja.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/km.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/km.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/km.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/km.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ko.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ko.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ko.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ko.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ku.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ku.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ku.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ku.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lt.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lt.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lt.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lv.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lv.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lv.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/lv.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nb.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nb.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nb.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nb.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nl.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nl.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/nl.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/no.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/no.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/no.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/no.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pl.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pl.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pl.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/pt.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ru.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ru.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ru.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ru.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/si.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/si.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/si.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/si.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sk.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sk.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sk.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sk.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sl.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sl.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sl.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sl.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sq.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sq.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sq.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sq.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sv.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sv.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sv.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/sv.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/th.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/th.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/th.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/th.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tr.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tr.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tr.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tr.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tt.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tt.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tt.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/tt.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ug.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ug.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ug.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/ug.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/uk.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/uk.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/uk.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/uk.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/vi.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/vi.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/vi.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/vi.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/lang/zh.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/specialchar.js b/public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/specialchar.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/specialchar.js rename to public/includes/ckeditor/ckeditor/plugins/specialchar/dialogs/specialchar.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/table/dialogs/table.js b/public/includes/ckeditor/ckeditor/plugins/table/dialogs/table.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/table/dialogs/table.js rename to public/includes/ckeditor/ckeditor/plugins/table/dialogs/table.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js b/public/includes/ckeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js rename to public/includes/ckeditor/ckeditor/plugins/tabletools/dialogs/tableCell.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.css b/public/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.css rename to public/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.css diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.js b/public/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.js rename to public/includes/ckeditor/ckeditor/plugins/templates/dialogs/templates.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/templates/templates/default.js b/public/includes/ckeditor/ckeditor/plugins/templates/templates/default.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/templates/templates/default.js rename to public/includes/ckeditor/ckeditor/plugins/templates/templates/default.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif b/public/includes/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif rename to public/includes/ckeditor/ckeditor/plugins/templates/templates/images/template1.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/templates/templates/images/template2.gif b/public/includes/ckeditor/ckeditor/plugins/templates/templates/images/template2.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/templates/templates/images/template2.gif rename to public/includes/ckeditor/ckeditor/plugins/templates/templates/images/template2.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/templates/templates/images/template3.gif b/public/includes/ckeditor/ckeditor/plugins/templates/templates/images/template3.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/templates/templates/images/template3.gif rename to public/includes/ckeditor/ckeditor/plugins/templates/templates/images/template3.gif diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/wsc/LICENSE.md b/public/includes/ckeditor/ckeditor/plugins/wsc/LICENSE.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/wsc/LICENSE.md rename to public/includes/ckeditor/ckeditor/plugins/wsc/LICENSE.md diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/wsc/README.md b/public/includes/ckeditor/ckeditor/plugins/wsc/README.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/wsc/README.md rename to public/includes/ckeditor/ckeditor/plugins/wsc/README.md diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/ciframe.html b/public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/ciframe.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/ciframe.html rename to public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/ciframe.html diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/tmpFrameset.html b/public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/tmpFrameset.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/tmpFrameset.html rename to public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/tmpFrameset.html diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.css b/public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.css rename to public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.css diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.js b/public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.js rename to public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc.js diff --git a/htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc_ie.js b/public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc_ie.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc_ie.js rename to public/includes/ckeditor/ckeditor/plugins/wsc/dialogs/wsc_ie.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/css/samples.css b/public/includes/ckeditor/ckeditor/samples/css/samples.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/css/samples.css rename to public/includes/ckeditor/ckeditor/samples/css/samples.css diff --git a/htdocs/includes/ckeditor/ckeditor/samples/img/github-top.png b/public/includes/ckeditor/ckeditor/samples/img/github-top.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/img/github-top.png rename to public/includes/ckeditor/ckeditor/samples/img/github-top.png diff --git a/htdocs/includes/ckeditor/ckeditor/samples/img/header-bg.png b/public/includes/ckeditor/ckeditor/samples/img/header-bg.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/img/header-bg.png rename to public/includes/ckeditor/ckeditor/samples/img/header-bg.png diff --git a/htdocs/includes/ckeditor/ckeditor/samples/img/header-separator.png b/public/includes/ckeditor/ckeditor/samples/img/header-separator.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/img/header-separator.png rename to public/includes/ckeditor/ckeditor/samples/img/header-separator.png diff --git a/htdocs/includes/ckeditor/ckeditor/samples/img/logo.png b/public/includes/ckeditor/ckeditor/samples/img/logo.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/img/logo.png rename to public/includes/ckeditor/ckeditor/samples/img/logo.png diff --git a/htdocs/includes/ckeditor/ckeditor/samples/img/navigation-tip.png b/public/includes/ckeditor/ckeditor/samples/img/navigation-tip.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/img/navigation-tip.png rename to public/includes/ckeditor/ckeditor/samples/img/navigation-tip.png diff --git a/htdocs/includes/ckeditor/ckeditor/samples/index.html b/public/includes/ckeditor/ckeditor/samples/index.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/index.html rename to public/includes/ckeditor/ckeditor/samples/index.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/js/sample.js b/public/includes/ckeditor/ckeditor/samples/js/sample.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/js/sample.js rename to public/includes/ckeditor/ckeditor/samples/js/sample.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/js/sf.js b/public/includes/ckeditor/ckeditor/samples/js/sf.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/js/sf.js rename to public/includes/ckeditor/ckeditor/samples/js/sf.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/ajax.html b/public/includes/ckeditor/ckeditor/samples/old/ajax.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/ajax.html rename to public/includes/ckeditor/ckeditor/samples/old/ajax.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/api.html b/public/includes/ckeditor/ckeditor/samples/old/api.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/api.html rename to public/includes/ckeditor/ckeditor/samples/old/api.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/appendto.html b/public/includes/ckeditor/ckeditor/samples/old/appendto.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/appendto.html rename to public/includes/ckeditor/ckeditor/samples/old/appendto.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/assets/inlineall/logo.png b/public/includes/ckeditor/ckeditor/samples/old/assets/inlineall/logo.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/assets/inlineall/logo.png rename to public/includes/ckeditor/ckeditor/samples/old/assets/inlineall/logo.png diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css b/public/includes/ckeditor/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css rename to public/includes/ckeditor/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/assets/posteddata.php b/public/includes/ckeditor/ckeditor/samples/old/assets/posteddata.php similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/assets/posteddata.php rename to public/includes/ckeditor/ckeditor/samples/old/assets/posteddata.php diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/assets/sample.jpg b/public/includes/ckeditor/ckeditor/samples/old/assets/sample.jpg similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/assets/sample.jpg rename to public/includes/ckeditor/ckeditor/samples/old/assets/sample.jpg diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/assets/uilanguages/languages.js b/public/includes/ckeditor/ckeditor/samples/old/assets/uilanguages/languages.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/assets/uilanguages/languages.js rename to public/includes/ckeditor/ckeditor/samples/old/assets/uilanguages/languages.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/datafiltering.html b/public/includes/ckeditor/ckeditor/samples/old/datafiltering.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/datafiltering.html rename to public/includes/ckeditor/ckeditor/samples/old/datafiltering.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/dialog/assets/my_dialog.js b/public/includes/ckeditor/ckeditor/samples/old/dialog/assets/my_dialog.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/dialog/assets/my_dialog.js rename to public/includes/ckeditor/ckeditor/samples/old/dialog/assets/my_dialog.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/dialog/dialog.html b/public/includes/ckeditor/ckeditor/samples/old/dialog/dialog.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/dialog/dialog.html rename to public/includes/ckeditor/ckeditor/samples/old/dialog/dialog.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/divreplace.html b/public/includes/ckeditor/ckeditor/samples/old/divreplace.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/divreplace.html rename to public/includes/ckeditor/ckeditor/samples/old/divreplace.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/enterkey/enterkey.html b/public/includes/ckeditor/ckeditor/samples/old/enterkey/enterkey.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/enterkey/enterkey.html rename to public/includes/ckeditor/ckeditor/samples/old/enterkey/enterkey.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla b/public/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla rename to public/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf b/public/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf rename to public/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js b/public/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js rename to public/includes/ckeditor/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputforflash.html b/public/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputforflash.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputforflash.html rename to public/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputforflash.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputhtml.html b/public/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputhtml.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputhtml.html rename to public/includes/ckeditor/ckeditor/samples/old/htmlwriter/outputhtml.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/index.html b/public/includes/ckeditor/ckeditor/samples/old/index.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/index.html rename to public/includes/ckeditor/ckeditor/samples/old/index.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/inlineall.html b/public/includes/ckeditor/ckeditor/samples/old/inlineall.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/inlineall.html rename to public/includes/ckeditor/ckeditor/samples/old/inlineall.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/inlinebycode.html b/public/includes/ckeditor/ckeditor/samples/old/inlinebycode.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/inlinebycode.html rename to public/includes/ckeditor/ckeditor/samples/old/inlinebycode.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/inlinetextarea.html b/public/includes/ckeditor/ckeditor/samples/old/inlinetextarea.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/inlinetextarea.html rename to public/includes/ckeditor/ckeditor/samples/old/inlinetextarea.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/jquery.html b/public/includes/ckeditor/ckeditor/samples/old/jquery.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/jquery.html rename to public/includes/ckeditor/ckeditor/samples/old/jquery.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/magicline/magicline.html b/public/includes/ckeditor/ckeditor/samples/old/magicline/magicline.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/magicline/magicline.html rename to public/includes/ckeditor/ckeditor/samples/old/magicline/magicline.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/readonly.html b/public/includes/ckeditor/ckeditor/samples/old/readonly.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/readonly.html rename to public/includes/ckeditor/ckeditor/samples/old/readonly.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/replacebyclass.html b/public/includes/ckeditor/ckeditor/samples/old/replacebyclass.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/replacebyclass.html rename to public/includes/ckeditor/ckeditor/samples/old/replacebyclass.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/replacebycode.html b/public/includes/ckeditor/ckeditor/samples/old/replacebycode.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/replacebycode.html rename to public/includes/ckeditor/ckeditor/samples/old/replacebycode.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/sample.css b/public/includes/ckeditor/ckeditor/samples/old/sample.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/sample.css rename to public/includes/ckeditor/ckeditor/samples/old/sample.css diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/sample.js b/public/includes/ckeditor/ckeditor/samples/old/sample.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/sample.js rename to public/includes/ckeditor/ckeditor/samples/old/sample.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/sample_posteddata.php b/public/includes/ckeditor/ckeditor/samples/old/sample_posteddata.php similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/sample_posteddata.php rename to public/includes/ckeditor/ckeditor/samples/old/sample_posteddata.php diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/tabindex.html b/public/includes/ckeditor/ckeditor/samples/old/tabindex.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/tabindex.html rename to public/includes/ckeditor/ckeditor/samples/old/tabindex.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/toolbar/toolbar.html b/public/includes/ckeditor/ckeditor/samples/old/toolbar/toolbar.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/toolbar/toolbar.html rename to public/includes/ckeditor/ckeditor/samples/old/toolbar/toolbar.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/uicolor.html b/public/includes/ckeditor/ckeditor/samples/old/uicolor.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/uicolor.html rename to public/includes/ckeditor/ckeditor/samples/old/uicolor.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/uilanguages.html b/public/includes/ckeditor/ckeditor/samples/old/uilanguages.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/uilanguages.html rename to public/includes/ckeditor/ckeditor/samples/old/uilanguages.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/wysiwygarea/fullpage.html b/public/includes/ckeditor/ckeditor/samples/old/wysiwygarea/fullpage.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/wysiwygarea/fullpage.html rename to public/includes/ckeditor/ckeditor/samples/old/wysiwygarea/fullpage.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/old/xhtmlstyle.html b/public/includes/ckeditor/ckeditor/samples/old/xhtmlstyle.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/old/xhtmlstyle.html rename to public/includes/ckeditor/ckeditor/samples/old/xhtmlstyle.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/css/fontello.css b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/css/fontello.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/css/fontello.css rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/css/fontello.css diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/config.json b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/config.json similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/config.json rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/config.json diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.eot b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.eot similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.eot rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.eot diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.svg b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.svg similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.svg rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.svg diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.ttf b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.ttf similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.ttf rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.ttf diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.woff b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.woff similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.woff rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/font/fontello.woff diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/index.html b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/index.html similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/index.html rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/index.html diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css diff --git a/htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js b/public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js rename to public/includes/ckeditor/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/dialog.css b/public/includes/ckeditor/ckeditor/skins/moono/dialog.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/dialog.css rename to public/includes/ckeditor/ckeditor/skins/moono/dialog.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/dialog_ie.css b/public/includes/ckeditor/ckeditor/skins/moono/dialog_ie.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/dialog_ie.css rename to public/includes/ckeditor/ckeditor/skins/moono/dialog_ie.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/dialog_ie7.css b/public/includes/ckeditor/ckeditor/skins/moono/dialog_ie7.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/dialog_ie7.css rename to public/includes/ckeditor/ckeditor/skins/moono/dialog_ie7.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/dialog_ie8.css b/public/includes/ckeditor/ckeditor/skins/moono/dialog_ie8.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/dialog_ie8.css rename to public/includes/ckeditor/ckeditor/skins/moono/dialog_ie8.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/dialog_iequirks.css b/public/includes/ckeditor/ckeditor/skins/moono/dialog_iequirks.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/dialog_iequirks.css rename to public/includes/ckeditor/ckeditor/skins/moono/dialog_iequirks.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/editor.css b/public/includes/ckeditor/ckeditor/skins/moono/editor.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/editor.css rename to public/includes/ckeditor/ckeditor/skins/moono/editor.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/editor_gecko.css b/public/includes/ckeditor/ckeditor/skins/moono/editor_gecko.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/editor_gecko.css rename to public/includes/ckeditor/ckeditor/skins/moono/editor_gecko.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/editor_ie.css b/public/includes/ckeditor/ckeditor/skins/moono/editor_ie.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/editor_ie.css rename to public/includes/ckeditor/ckeditor/skins/moono/editor_ie.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/editor_ie7.css b/public/includes/ckeditor/ckeditor/skins/moono/editor_ie7.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/editor_ie7.css rename to public/includes/ckeditor/ckeditor/skins/moono/editor_ie7.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/editor_ie8.css b/public/includes/ckeditor/ckeditor/skins/moono/editor_ie8.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/editor_ie8.css rename to public/includes/ckeditor/ckeditor/skins/moono/editor_ie8.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/editor_iequirks.css b/public/includes/ckeditor/ckeditor/skins/moono/editor_iequirks.css similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/editor_iequirks.css rename to public/includes/ckeditor/ckeditor/skins/moono/editor_iequirks.css diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/icons.png b/public/includes/ckeditor/ckeditor/skins/moono/icons.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/icons.png rename to public/includes/ckeditor/ckeditor/skins/moono/icons.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/icons_hidpi.png b/public/includes/ckeditor/ckeditor/skins/moono/icons_hidpi.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/icons_hidpi.png rename to public/includes/ckeditor/ckeditor/skins/moono/icons_hidpi.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/arrow.png b/public/includes/ckeditor/ckeditor/skins/moono/images/arrow.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/arrow.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/arrow.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/close.png b/public/includes/ckeditor/ckeditor/skins/moono/images/close.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/close.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/close.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/hidpi/close.png b/public/includes/ckeditor/ckeditor/skins/moono/images/hidpi/close.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/hidpi/close.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/hidpi/close.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock-open.png b/public/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock-open.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock-open.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock-open.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock.png b/public/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/hidpi/lock.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/hidpi/refresh.png b/public/includes/ckeditor/ckeditor/skins/moono/images/hidpi/refresh.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/hidpi/refresh.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/hidpi/refresh.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/lock-open.png b/public/includes/ckeditor/ckeditor/skins/moono/images/lock-open.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/lock-open.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/lock-open.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/lock.png b/public/includes/ckeditor/ckeditor/skins/moono/images/lock.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/lock.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/lock.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/refresh.png b/public/includes/ckeditor/ckeditor/skins/moono/images/refresh.png similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/refresh.png rename to public/includes/ckeditor/ckeditor/skins/moono/images/refresh.png diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/images/spinner.gif b/public/includes/ckeditor/ckeditor/skins/moono/images/spinner.gif similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/images/spinner.gif rename to public/includes/ckeditor/ckeditor/skins/moono/images/spinner.gif diff --git a/htdocs/includes/ckeditor/ckeditor/skins/moono/readme.md b/public/includes/ckeditor/ckeditor/skins/moono/readme.md similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/skins/moono/readme.md rename to public/includes/ckeditor/ckeditor/skins/moono/readme.md diff --git a/htdocs/includes/ckeditor/ckeditor/styles.js b/public/includes/ckeditor/ckeditor/styles.js similarity index 100% rename from htdocs/includes/ckeditor/ckeditor/styles.js rename to public/includes/ckeditor/ckeditor/styles.js diff --git a/htdocs/includes/evalmath/README.md b/public/includes/evalmath/README.md similarity index 100% rename from htdocs/includes/evalmath/README.md rename to public/includes/evalmath/README.md diff --git a/htdocs/includes/evalmath/evalmath.class.php b/public/includes/evalmath/evalmath.class.php similarity index 100% rename from htdocs/includes/evalmath/evalmath.class.php rename to public/includes/evalmath/evalmath.class.php diff --git a/htdocs/includes/fonts/Aerial.ttf b/public/includes/fonts/Aerial.ttf similarity index 100% rename from htdocs/includes/fonts/Aerial.ttf rename to public/includes/fonts/Aerial.ttf diff --git a/htdocs/includes/fonts/AerialBd.ttf b/public/includes/fonts/AerialBd.ttf similarity index 100% rename from htdocs/includes/fonts/AerialBd.ttf rename to public/includes/fonts/AerialBd.ttf diff --git a/htdocs/includes/fonts/AerialBdIt.ttf b/public/includes/fonts/AerialBdIt.ttf similarity index 100% rename from htdocs/includes/fonts/AerialBdIt.ttf rename to public/includes/fonts/AerialBdIt.ttf diff --git a/htdocs/includes/fonts/AerialIt.ttf b/public/includes/fonts/AerialIt.ttf similarity index 100% rename from htdocs/includes/fonts/AerialIt.ttf rename to public/includes/fonts/AerialIt.ttf diff --git a/htdocs/includes/fonts/CHANGELOG.TXT b/public/includes/fonts/CHANGELOG.TXT similarity index 100% rename from htdocs/includes/fonts/CHANGELOG.TXT rename to public/includes/fonts/CHANGELOG.TXT diff --git a/htdocs/includes/fonts/COPYRIGHT.TXT b/public/includes/fonts/COPYRIGHT.TXT similarity index 100% rename from htdocs/includes/fonts/COPYRIGHT.TXT rename to public/includes/fonts/COPYRIGHT.TXT diff --git a/htdocs/includes/fpdfi/README.txt b/public/includes/fpdfi/README.txt similarity index 100% rename from htdocs/includes/fpdfi/README.txt rename to public/includes/fpdfi/README.txt diff --git a/htdocs/includes/fpdfi/filters/FilterASCII85.php b/public/includes/fpdfi/filters/FilterASCII85.php similarity index 100% rename from htdocs/includes/fpdfi/filters/FilterASCII85.php rename to public/includes/fpdfi/filters/FilterASCII85.php diff --git a/htdocs/includes/fpdfi/filters/FilterASCII85_FPDI.php b/public/includes/fpdfi/filters/FilterASCII85_FPDI.php similarity index 100% rename from htdocs/includes/fpdfi/filters/FilterASCII85_FPDI.php rename to public/includes/fpdfi/filters/FilterASCII85_FPDI.php diff --git a/htdocs/includes/fpdfi/filters/FilterASCIIHexDecode.php b/public/includes/fpdfi/filters/FilterASCIIHexDecode.php similarity index 100% rename from htdocs/includes/fpdfi/filters/FilterASCIIHexDecode.php rename to public/includes/fpdfi/filters/FilterASCIIHexDecode.php diff --git a/htdocs/includes/fpdfi/filters/FilterLZW.php b/public/includes/fpdfi/filters/FilterLZW.php similarity index 100% rename from htdocs/includes/fpdfi/filters/FilterLZW.php rename to public/includes/fpdfi/filters/FilterLZW.php diff --git a/htdocs/includes/fpdfi/filters/FilterLZW_FPDI.php b/public/includes/fpdfi/filters/FilterLZW_FPDI.php similarity index 100% rename from htdocs/includes/fpdfi/filters/FilterLZW_FPDI.php rename to public/includes/fpdfi/filters/FilterLZW_FPDI.php diff --git a/htdocs/includes/fpdfi/fpdf_tpl.php b/public/includes/fpdfi/fpdf_tpl.php similarity index 100% rename from htdocs/includes/fpdfi/fpdf_tpl.php rename to public/includes/fpdfi/fpdf_tpl.php diff --git a/htdocs/includes/fpdfi/fpdi.php b/public/includes/fpdfi/fpdi.php similarity index 100% rename from htdocs/includes/fpdfi/fpdi.php rename to public/includes/fpdfi/fpdi.php diff --git a/htdocs/includes/fpdfi/fpdi_bridge.php b/public/includes/fpdfi/fpdi_bridge.php similarity index 100% rename from htdocs/includes/fpdfi/fpdi_bridge.php rename to public/includes/fpdfi/fpdi_bridge.php diff --git a/htdocs/includes/fpdfi/fpdi_pdf_parser.php b/public/includes/fpdfi/fpdi_pdf_parser.php similarity index 100% rename from htdocs/includes/fpdfi/fpdi_pdf_parser.php rename to public/includes/fpdfi/fpdi_pdf_parser.php diff --git a/htdocs/includes/fpdfi/pdf_context.php b/public/includes/fpdfi/pdf_context.php similarity index 100% rename from htdocs/includes/fpdfi/pdf_context.php rename to public/includes/fpdfi/pdf_context.php diff --git a/htdocs/includes/fpdfi/pdf_parser.php b/public/includes/fpdfi/pdf_parser.php similarity index 100% rename from htdocs/includes/fpdfi/pdf_parser.php rename to public/includes/fpdfi/pdf_parser.php diff --git a/htdocs/includes/geoip/README.txt b/public/includes/geoip/README.txt similarity index 100% rename from htdocs/includes/geoip/README.txt rename to public/includes/geoip/README.txt diff --git a/htdocs/includes/geoip/geoip.inc b/public/includes/geoip/geoip.inc similarity index 100% rename from htdocs/includes/geoip/geoip.inc rename to public/includes/geoip/geoip.inc diff --git a/htdocs/includes/geoip/geoipcity.inc b/public/includes/geoip/geoipcity.inc similarity index 100% rename from htdocs/includes/geoip/geoipcity.inc rename to public/includes/geoip/geoipcity.inc diff --git a/htdocs/includes/geoip/geoipregionvars.php b/public/includes/geoip/geoipregionvars.php similarity index 100% rename from htdocs/includes/geoip/geoipregionvars.php rename to public/includes/geoip/geoipregionvars.php diff --git a/htdocs/includes/geoip/sample.php b/public/includes/geoip/sample.php similarity index 100% rename from htdocs/includes/geoip/sample.php rename to public/includes/geoip/sample.php diff --git a/htdocs/includes/geoip/sample_city.php b/public/includes/geoip/sample_city.php similarity index 100% rename from htdocs/includes/geoip/sample_city.php rename to public/includes/geoip/sample_city.php diff --git a/htdocs/includes/geoip/sample_distributed.php b/public/includes/geoip/sample_distributed.php similarity index 100% rename from htdocs/includes/geoip/sample_distributed.php rename to public/includes/geoip/sample_distributed.php diff --git a/htdocs/includes/geoip/sample_netspeed.php b/public/includes/geoip/sample_netspeed.php similarity index 100% rename from htdocs/includes/geoip/sample_netspeed.php rename to public/includes/geoip/sample_netspeed.php diff --git a/htdocs/includes/geoip/sample_org.php b/public/includes/geoip/sample_org.php similarity index 100% rename from htdocs/includes/geoip/sample_org.php rename to public/includes/geoip/sample_org.php diff --git a/htdocs/includes/geoip/sample_region.php b/public/includes/geoip/sample_region.php similarity index 100% rename from htdocs/includes/geoip/sample_region.php rename to public/includes/geoip/sample_region.php diff --git a/htdocs/includes/index.html b/public/includes/index.html similarity index 100% rename from htdocs/includes/index.html rename to public/includes/index.html diff --git a/htdocs/includes/jquery/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png b/public/includes/jquery/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png rename to public/includes/jquery/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png b/public/includes/jquery/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png rename to public/includes/jquery/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png b/public/includes/jquery/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png rename to public/includes/jquery/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png b/public/includes/jquery/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png rename to public/includes/jquery/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png b/public/includes/jquery/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png rename to public/includes/jquery/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png b/public/includes/jquery/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png rename to public/includes/jquery/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png b/public/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png rename to public/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png b/public/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png rename to public/includes/jquery/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-icons_217bc0_256x240.png b/public/includes/jquery/css/redmond/images/ui-icons_217bc0_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-icons_217bc0_256x240.png rename to public/includes/jquery/css/redmond/images/ui-icons_217bc0_256x240.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-icons_2e83ff_256x240.png b/public/includes/jquery/css/redmond/images/ui-icons_2e83ff_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-icons_2e83ff_256x240.png rename to public/includes/jquery/css/redmond/images/ui-icons_2e83ff_256x240.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-icons_469bdd_256x240.png b/public/includes/jquery/css/redmond/images/ui-icons_469bdd_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-icons_469bdd_256x240.png rename to public/includes/jquery/css/redmond/images/ui-icons_469bdd_256x240.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-icons_6da8d5_256x240.png b/public/includes/jquery/css/redmond/images/ui-icons_6da8d5_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-icons_6da8d5_256x240.png rename to public/includes/jquery/css/redmond/images/ui-icons_6da8d5_256x240.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-icons_cd0a0a_256x240.png b/public/includes/jquery/css/redmond/images/ui-icons_cd0a0a_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-icons_cd0a0a_256x240.png rename to public/includes/jquery/css/redmond/images/ui-icons_cd0a0a_256x240.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-icons_d8e7f3_256x240.png b/public/includes/jquery/css/redmond/images/ui-icons_d8e7f3_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-icons_d8e7f3_256x240.png rename to public/includes/jquery/css/redmond/images/ui-icons_d8e7f3_256x240.png diff --git a/htdocs/includes/jquery/css/redmond/images/ui-icons_f9bd01_256x240.png b/public/includes/jquery/css/redmond/images/ui-icons_f9bd01_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/redmond/images/ui-icons_f9bd01_256x240.png rename to public/includes/jquery/css/redmond/images/ui-icons_f9bd01_256x240.png diff --git a/htdocs/includes/jquery/css/redmond/jquery-ui.css b/public/includes/jquery/css/redmond/jquery-ui.css similarity index 100% rename from htdocs/includes/jquery/css/redmond/jquery-ui.css rename to public/includes/jquery/css/redmond/jquery-ui.css diff --git a/htdocs/includes/jquery/css/redmond/jquery-ui.min.css b/public/includes/jquery/css/redmond/jquery-ui.min.css similarity index 100% rename from htdocs/includes/jquery/css/redmond/jquery-ui.min.css rename to public/includes/jquery/css/redmond/jquery-ui.min.css diff --git a/htdocs/includes/jquery/css/redmond/theme.css b/public/includes/jquery/css/redmond/theme.css similarity index 100% rename from htdocs/includes/jquery/css/redmond/theme.css rename to public/includes/jquery/css/redmond/theme.css diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png b/public/includes/jquery/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png rename to public/includes/jquery/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png b/public/includes/jquery/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png rename to public/includes/jquery/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png b/public/includes/jquery/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png rename to public/includes/jquery/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png b/public/includes/jquery/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png rename to public/includes/jquery/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png b/public/includes/jquery/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png rename to public/includes/jquery/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png b/public/includes/jquery/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png rename to public/includes/jquery/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png b/public/includes/jquery/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png rename to public/includes/jquery/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/public/includes/jquery/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png rename to public/includes/jquery/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-icons_222222_256x240.png b/public/includes/jquery/css/smoothness/images/ui-icons_222222_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-icons_222222_256x240.png rename to public/includes/jquery/css/smoothness/images/ui-icons_222222_256x240.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-icons_2e83ff_256x240.png b/public/includes/jquery/css/smoothness/images/ui-icons_2e83ff_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-icons_2e83ff_256x240.png rename to public/includes/jquery/css/smoothness/images/ui-icons_2e83ff_256x240.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-icons_454545_256x240.png b/public/includes/jquery/css/smoothness/images/ui-icons_454545_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-icons_454545_256x240.png rename to public/includes/jquery/css/smoothness/images/ui-icons_454545_256x240.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-icons_888888_256x240.png b/public/includes/jquery/css/smoothness/images/ui-icons_888888_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-icons_888888_256x240.png rename to public/includes/jquery/css/smoothness/images/ui-icons_888888_256x240.png diff --git a/htdocs/includes/jquery/css/smoothness/images/ui-icons_cd0a0a_256x240.png b/public/includes/jquery/css/smoothness/images/ui-icons_cd0a0a_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/smoothness/images/ui-icons_cd0a0a_256x240.png rename to public/includes/jquery/css/smoothness/images/ui-icons_cd0a0a_256x240.png diff --git a/htdocs/includes/jquery/css/smoothness/jquery-ui.css b/public/includes/jquery/css/smoothness/jquery-ui.css similarity index 100% rename from htdocs/includes/jquery/css/smoothness/jquery-ui.css rename to public/includes/jquery/css/smoothness/jquery-ui.css diff --git a/htdocs/includes/jquery/css/smoothness/jquery-ui.min.css b/public/includes/jquery/css/smoothness/jquery-ui.min.css similarity index 100% rename from htdocs/includes/jquery/css/smoothness/jquery-ui.min.css rename to public/includes/jquery/css/smoothness/jquery-ui.min.css diff --git a/htdocs/includes/jquery/css/smoothness/theme.css b/public/includes/jquery/css/smoothness/theme.css similarity index 100% rename from htdocs/includes/jquery/css/smoothness/theme.css rename to public/includes/jquery/css/smoothness/theme.css diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png b/public/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png rename to public/includes/jquery/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png b/public/includes/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png rename to public/includes/jquery/css/ui-lightness/images/ui-icons_222222_256x240.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png b/public/includes/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png rename to public/includes/jquery/css/ui-lightness/images/ui-icons_228ef1_256x240.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png b/public/includes/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png rename to public/includes/jquery/css/ui-lightness/images/ui-icons_ef8c08_256x240.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png b/public/includes/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png rename to public/includes/jquery/css/ui-lightness/images/ui-icons_ffd27a_256x240.png diff --git a/htdocs/includes/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png b/public/includes/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png rename to public/includes/jquery/css/ui-lightness/images/ui-icons_ffffff_256x240.png diff --git a/htdocs/includes/jquery/css/ui-lightness/jquery-ui.css b/public/includes/jquery/css/ui-lightness/jquery-ui.css similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/jquery-ui.css rename to public/includes/jquery/css/ui-lightness/jquery-ui.css diff --git a/htdocs/includes/jquery/css/ui-lightness/jquery-ui.min.css b/public/includes/jquery/css/ui-lightness/jquery-ui.min.css similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/jquery-ui.min.css rename to public/includes/jquery/css/ui-lightness/jquery-ui.min.css diff --git a/htdocs/includes/jquery/css/ui-lightness/theme.css b/public/includes/jquery/css/ui-lightness/theme.css similarity index 100% rename from htdocs/includes/jquery/css/ui-lightness/theme.css rename to public/includes/jquery/css/ui-lightness/theme.css diff --git a/htdocs/includes/jquery/js/jquery-ui.js b/public/includes/jquery/js/jquery-ui.js similarity index 100% rename from htdocs/includes/jquery/js/jquery-ui.js rename to public/includes/jquery/js/jquery-ui.js diff --git a/htdocs/includes/jquery/js/jquery-ui.min.js b/public/includes/jquery/js/jquery-ui.min.js similarity index 100% rename from htdocs/includes/jquery/js/jquery-ui.min.js rename to public/includes/jquery/js/jquery-ui.min.js diff --git a/htdocs/includes/jquery/js/jquery.js b/public/includes/jquery/js/jquery.js similarity index 100% rename from htdocs/includes/jquery/js/jquery.js rename to public/includes/jquery/js/jquery.js diff --git a/htdocs/includes/jquery/js/jquery.min.js b/public/includes/jquery/js/jquery.min.js similarity index 100% rename from htdocs/includes/jquery/js/jquery.min.js rename to public/includes/jquery/js/jquery.min.js diff --git a/htdocs/includes/jquery/plugins/blockUI/jquery.blockUI.js b/public/includes/jquery/plugins/blockUI/jquery.blockUI.js similarity index 100% rename from htdocs/includes/jquery/plugins/blockUI/jquery.blockUI.js rename to public/includes/jquery/plugins/blockUI/jquery.blockUI.js diff --git a/htdocs/includes/jquery/plugins/colorpicker/jquery.colorpicker.css b/public/includes/jquery/plugins/colorpicker/jquery.colorpicker.css similarity index 100% rename from htdocs/includes/jquery/plugins/colorpicker/jquery.colorpicker.css rename to public/includes/jquery/plugins/colorpicker/jquery.colorpicker.css diff --git a/htdocs/includes/jquery/plugins/colorpicker/jquery.colorpicker.js b/public/includes/jquery/plugins/colorpicker/jquery.colorpicker.js similarity index 100% rename from htdocs/includes/jquery/plugins/colorpicker/jquery.colorpicker.js rename to public/includes/jquery/plugins/colorpicker/jquery.colorpicker.js diff --git a/htdocs/includes/jquery/plugins/fileupload/README.md b/public/includes/jquery/plugins/fileupload/README.md similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/README.md rename to public/includes/jquery/plugins/fileupload/README.md diff --git a/htdocs/includes/jquery/plugins/fileupload/css/jquery.fileupload-ui.css b/public/includes/jquery/plugins/fileupload/css/jquery.fileupload-ui.css similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/css/jquery.fileupload-ui.css rename to public/includes/jquery/plugins/fileupload/css/jquery.fileupload-ui.css diff --git a/htdocs/includes/jquery/plugins/fileupload/img/loading.gif b/public/includes/jquery/plugins/fileupload/img/loading.gif similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/img/loading.gif rename to public/includes/jquery/plugins/fileupload/img/loading.gif diff --git a/htdocs/includes/jquery/plugins/fileupload/img/progressbar.gif b/public/includes/jquery/plugins/fileupload/img/progressbar.gif similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/img/progressbar.gif rename to public/includes/jquery/plugins/fileupload/img/progressbar.gif diff --git a/htdocs/includes/jquery/plugins/fileupload/js/cors/jquery.postmessage-transport.js b/public/includes/jquery/plugins/fileupload/js/cors/jquery.postmessage-transport.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/cors/jquery.postmessage-transport.js rename to public/includes/jquery/plugins/fileupload/js/cors/jquery.postmessage-transport.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/cors/jquery.xdr-transport.js b/public/includes/jquery/plugins/fileupload/js/cors/jquery.xdr-transport.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/cors/jquery.xdr-transport.js rename to public/includes/jquery/plugins/fileupload/js/cors/jquery.xdr-transport.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/jquery.fileupload-fp.js b/public/includes/jquery/plugins/fileupload/js/jquery.fileupload-fp.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/jquery.fileupload-fp.js rename to public/includes/jquery/plugins/fileupload/js/jquery.fileupload-fp.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/jquery.fileupload-jui.js b/public/includes/jquery/plugins/fileupload/js/jquery.fileupload-jui.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/jquery.fileupload-jui.js rename to public/includes/jquery/plugins/fileupload/js/jquery.fileupload-jui.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/jquery.fileupload-ui.js b/public/includes/jquery/plugins/fileupload/js/jquery.fileupload-ui.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/jquery.fileupload-ui.js rename to public/includes/jquery/plugins/fileupload/js/jquery.fileupload-ui.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/jquery.fileupload.js b/public/includes/jquery/plugins/fileupload/js/jquery.fileupload.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/jquery.fileupload.js rename to public/includes/jquery/plugins/fileupload/js/jquery.fileupload.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/jquery.iframe-transport.js b/public/includes/jquery/plugins/fileupload/js/jquery.iframe-transport.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/jquery.iframe-transport.js rename to public/includes/jquery/plugins/fileupload/js/jquery.iframe-transport.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/locale.js b/public/includes/jquery/plugins/fileupload/js/locale.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/locale.js rename to public/includes/jquery/plugins/fileupload/js/locale.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/main.js b/public/includes/jquery/plugins/fileupload/js/main.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/main.js rename to public/includes/jquery/plugins/fileupload/js/main.js diff --git a/htdocs/includes/jquery/plugins/fileupload/js/vendor/jquery.ui.widget.js b/public/includes/jquery/plugins/fileupload/js/vendor/jquery.ui.widget.js similarity index 100% rename from htdocs/includes/jquery/plugins/fileupload/js/vendor/jquery.ui.widget.js rename to public/includes/jquery/plugins/fileupload/js/vendor/jquery.ui.widget.js diff --git a/htdocs/includes/jquery/plugins/flot/API.md b/public/includes/jquery/plugins/flot/API.md similarity index 100% rename from htdocs/includes/jquery/plugins/flot/API.md rename to public/includes/jquery/plugins/flot/API.md diff --git a/htdocs/includes/jquery/plugins/flot/CONTRIBUTING.md b/public/includes/jquery/plugins/flot/CONTRIBUTING.md similarity index 100% rename from htdocs/includes/jquery/plugins/flot/CONTRIBUTING.md rename to public/includes/jquery/plugins/flot/CONTRIBUTING.md diff --git a/htdocs/includes/jquery/plugins/flot/FAQ.md b/public/includes/jquery/plugins/flot/FAQ.md similarity index 100% rename from htdocs/includes/jquery/plugins/flot/FAQ.md rename to public/includes/jquery/plugins/flot/FAQ.md diff --git a/htdocs/includes/jquery/plugins/flot/LICENSE.txt b/public/includes/jquery/plugins/flot/LICENSE.txt similarity index 100% rename from htdocs/includes/jquery/plugins/flot/LICENSE.txt rename to public/includes/jquery/plugins/flot/LICENSE.txt diff --git a/htdocs/includes/jquery/plugins/flot/Makefile b/public/includes/jquery/plugins/flot/Makefile similarity index 100% rename from htdocs/includes/jquery/plugins/flot/Makefile rename to public/includes/jquery/plugins/flot/Makefile diff --git a/htdocs/includes/jquery/plugins/flot/NEWS.md b/public/includes/jquery/plugins/flot/NEWS.md similarity index 100% rename from htdocs/includes/jquery/plugins/flot/NEWS.md rename to public/includes/jquery/plugins/flot/NEWS.md diff --git a/htdocs/includes/jquery/plugins/flot/PLUGINS.md b/public/includes/jquery/plugins/flot/PLUGINS.md similarity index 100% rename from htdocs/includes/jquery/plugins/flot/PLUGINS.md rename to public/includes/jquery/plugins/flot/PLUGINS.md diff --git a/htdocs/includes/jquery/plugins/flot/README.md b/public/includes/jquery/plugins/flot/README.md similarity index 100% rename from htdocs/includes/jquery/plugins/flot/README.md rename to public/includes/jquery/plugins/flot/README.md diff --git a/htdocs/includes/jquery/plugins/flot/excanvas.js b/public/includes/jquery/plugins/flot/excanvas.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/excanvas.js rename to public/includes/jquery/plugins/flot/excanvas.js diff --git a/htdocs/includes/jquery/plugins/flot/excanvas.min.js b/public/includes/jquery/plugins/flot/excanvas.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/excanvas.min.js rename to public/includes/jquery/plugins/flot/excanvas.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.colorhelpers.js b/public/includes/jquery/plugins/flot/jquery.colorhelpers.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.colorhelpers.js rename to public/includes/jquery/plugins/flot/jquery.colorhelpers.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.colorhelpers.min.js b/public/includes/jquery/plugins/flot/jquery.colorhelpers.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.colorhelpers.min.js rename to public/includes/jquery/plugins/flot/jquery.colorhelpers.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.canvas.js b/public/includes/jquery/plugins/flot/jquery.flot.canvas.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.canvas.js rename to public/includes/jquery/plugins/flot/jquery.flot.canvas.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.canvas.min.js b/public/includes/jquery/plugins/flot/jquery.flot.canvas.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.canvas.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.canvas.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.categories.js b/public/includes/jquery/plugins/flot/jquery.flot.categories.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.categories.js rename to public/includes/jquery/plugins/flot/jquery.flot.categories.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.categories.min.js b/public/includes/jquery/plugins/flot/jquery.flot.categories.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.categories.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.categories.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.crosshair.js b/public/includes/jquery/plugins/flot/jquery.flot.crosshair.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.crosshair.js rename to public/includes/jquery/plugins/flot/jquery.flot.crosshair.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.crosshair.min.js b/public/includes/jquery/plugins/flot/jquery.flot.crosshair.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.crosshair.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.crosshair.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.errorbars.js b/public/includes/jquery/plugins/flot/jquery.flot.errorbars.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.errorbars.js rename to public/includes/jquery/plugins/flot/jquery.flot.errorbars.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.errorbars.min.js b/public/includes/jquery/plugins/flot/jquery.flot.errorbars.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.errorbars.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.errorbars.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.fillbetween.js b/public/includes/jquery/plugins/flot/jquery.flot.fillbetween.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.fillbetween.js rename to public/includes/jquery/plugins/flot/jquery.flot.fillbetween.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.fillbetween.min.js b/public/includes/jquery/plugins/flot/jquery.flot.fillbetween.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.fillbetween.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.fillbetween.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.image.js b/public/includes/jquery/plugins/flot/jquery.flot.image.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.image.js rename to public/includes/jquery/plugins/flot/jquery.flot.image.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.image.min.js b/public/includes/jquery/plugins/flot/jquery.flot.image.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.image.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.image.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.js b/public/includes/jquery/plugins/flot/jquery.flot.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.js rename to public/includes/jquery/plugins/flot/jquery.flot.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.min.js b/public/includes/jquery/plugins/flot/jquery.flot.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.navigate.js b/public/includes/jquery/plugins/flot/jquery.flot.navigate.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.navigate.js rename to public/includes/jquery/plugins/flot/jquery.flot.navigate.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.navigate.min.js b/public/includes/jquery/plugins/flot/jquery.flot.navigate.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.navigate.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.navigate.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.pie.js b/public/includes/jquery/plugins/flot/jquery.flot.pie.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.pie.js rename to public/includes/jquery/plugins/flot/jquery.flot.pie.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.pie.min.js b/public/includes/jquery/plugins/flot/jquery.flot.pie.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.pie.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.pie.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.resize.js b/public/includes/jquery/plugins/flot/jquery.flot.resize.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.resize.js rename to public/includes/jquery/plugins/flot/jquery.flot.resize.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.resize.min.js b/public/includes/jquery/plugins/flot/jquery.flot.resize.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.resize.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.resize.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.selection.js b/public/includes/jquery/plugins/flot/jquery.flot.selection.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.selection.js rename to public/includes/jquery/plugins/flot/jquery.flot.selection.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.selection.min.js b/public/includes/jquery/plugins/flot/jquery.flot.selection.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.selection.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.selection.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.stack.js b/public/includes/jquery/plugins/flot/jquery.flot.stack.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.stack.js rename to public/includes/jquery/plugins/flot/jquery.flot.stack.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.stack.min.js b/public/includes/jquery/plugins/flot/jquery.flot.stack.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.stack.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.stack.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.symbol.js b/public/includes/jquery/plugins/flot/jquery.flot.symbol.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.symbol.js rename to public/includes/jquery/plugins/flot/jquery.flot.symbol.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.symbol.min.js b/public/includes/jquery/plugins/flot/jquery.flot.symbol.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.symbol.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.symbol.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.threshold.js b/public/includes/jquery/plugins/flot/jquery.flot.threshold.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.threshold.js rename to public/includes/jquery/plugins/flot/jquery.flot.threshold.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.threshold.min.js b/public/includes/jquery/plugins/flot/jquery.flot.threshold.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.threshold.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.threshold.min.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.time.js b/public/includes/jquery/plugins/flot/jquery.flot.time.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.time.js rename to public/includes/jquery/plugins/flot/jquery.flot.time.js diff --git a/htdocs/includes/jquery/plugins/flot/jquery.flot.time.min.js b/public/includes/jquery/plugins/flot/jquery.flot.time.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/flot/jquery.flot.time.min.js rename to public/includes/jquery/plugins/flot/jquery.flot.time.min.js diff --git a/htdocs/includes/jquery/plugins/jcrop/css/Jcrop.gif b/public/includes/jquery/plugins/jcrop/css/Jcrop.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jcrop/css/Jcrop.gif rename to public/includes/jquery/plugins/jcrop/css/Jcrop.gif diff --git a/htdocs/includes/jquery/plugins/jcrop/css/jquery.Jcrop.css b/public/includes/jquery/plugins/jcrop/css/jquery.Jcrop.css similarity index 100% rename from htdocs/includes/jquery/plugins/jcrop/css/jquery.Jcrop.css rename to public/includes/jquery/plugins/jcrop/css/jquery.Jcrop.css diff --git a/htdocs/includes/jquery/plugins/jcrop/index.html b/public/includes/jquery/plugins/jcrop/index.html similarity index 100% rename from htdocs/includes/jquery/plugins/jcrop/index.html rename to public/includes/jquery/plugins/jcrop/index.html diff --git a/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js b/public/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js similarity index 100% rename from htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js rename to public/includes/jquery/plugins/jcrop/js/jquery.Jcrop.js diff --git a/htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js b/public/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js rename to public/includes/jquery/plugins/jcrop/js/jquery.Jcrop.min.js diff --git a/htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.ckeditor.js b/public/includes/jquery/plugins/jeditable/jquery.jeditable.ckeditor.js similarity index 100% rename from htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.ckeditor.js rename to public/includes/jquery/plugins/jeditable/jquery.jeditable.ckeditor.js diff --git a/htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.js b/public/includes/jquery/plugins/jeditable/jquery.jeditable.js similarity index 100% rename from htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.js rename to public/includes/jquery/plugins/jeditable/jquery.jeditable.js diff --git a/htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.min.js b/public/includes/jquery/plugins/jeditable/jquery.jeditable.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.min.js rename to public/includes/jquery/plugins/jeditable/jquery.jeditable.min.js diff --git a/htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.ui-autocomplete.js b/public/includes/jquery/plugins/jeditable/jquery.jeditable.ui-autocomplete.js similarity index 100% rename from htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.ui-autocomplete.js rename to public/includes/jquery/plugins/jeditable/jquery.jeditable.ui-autocomplete.js diff --git a/htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.ui-datepicker.js b/public/includes/jquery/plugins/jeditable/jquery.jeditable.ui-datepicker.js similarity index 100% rename from htdocs/includes/jquery/plugins/jeditable/jquery.jeditable.ui-datepicker.js rename to public/includes/jquery/plugins/jeditable/jquery.jeditable.ui-datepicker.js diff --git a/htdocs/includes/jquery/plugins/jnotify/jquery.jnotify-alt.min.css b/public/includes/jquery/plugins/jnotify/jquery.jnotify-alt.min.css similarity index 100% rename from htdocs/includes/jquery/plugins/jnotify/jquery.jnotify-alt.min.css rename to public/includes/jquery/plugins/jnotify/jquery.jnotify-alt.min.css diff --git a/htdocs/includes/jquery/plugins/jnotify/jquery.jnotify.css b/public/includes/jquery/plugins/jnotify/jquery.jnotify.css similarity index 100% rename from htdocs/includes/jquery/plugins/jnotify/jquery.jnotify.css rename to public/includes/jquery/plugins/jnotify/jquery.jnotify.css diff --git a/htdocs/includes/jquery/plugins/jnotify/jquery.jnotify.js b/public/includes/jquery/plugins/jnotify/jquery.jnotify.js similarity index 100% rename from htdocs/includes/jquery/plugins/jnotify/jquery.jnotify.js rename to public/includes/jquery/plugins/jnotify/jquery.jnotify.js diff --git a/htdocs/includes/jquery/plugins/jnotify/jquery.jnotify.min.css b/public/includes/jquery/plugins/jnotify/jquery.jnotify.min.css similarity index 100% rename from htdocs/includes/jquery/plugins/jnotify/jquery.jnotify.min.css rename to public/includes/jquery/plugins/jnotify/jquery.jnotify.min.css diff --git a/htdocs/includes/jquery/plugins/jnotify/jquery.jnotify.min.js b/public/includes/jquery/plugins/jnotify/jquery.jnotify.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/jnotify/jquery.jnotify.min.js rename to public/includes/jquery/plugins/jnotify/jquery.jnotify.min.js diff --git a/htdocs/includes/jquery/plugins/jpicker/ChangeLog.txt b/public/includes/jquery/plugins/jpicker/ChangeLog.txt similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/ChangeLog.txt rename to public/includes/jquery/plugins/jpicker/ChangeLog.txt diff --git a/htdocs/includes/jquery/plugins/jpicker/Example.html b/public/includes/jquery/plugins/jpicker/Example.html similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/Example.html rename to public/includes/jquery/plugins/jpicker/Example.html diff --git a/htdocs/includes/jquery/plugins/jpicker/ReadMe.txt b/public/includes/jquery/plugins/jpicker/ReadMe.txt similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/ReadMe.txt rename to public/includes/jquery/plugins/jpicker/ReadMe.txt diff --git a/htdocs/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.css b/public/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.css similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.css rename to public/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.css diff --git a/htdocs/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.min.css b/public/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.min.css similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.min.css rename to public/includes/jquery/plugins/jpicker/css/jPicker-1.1.6.min.css diff --git a/htdocs/includes/jquery/plugins/jpicker/images/AlphaBar.png b/public/includes/jquery/plugins/jpicker/images/AlphaBar.png similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/AlphaBar.png rename to public/includes/jquery/plugins/jpicker/images/AlphaBar.png diff --git a/htdocs/includes/jquery/plugins/jpicker/images/Bars.png b/public/includes/jquery/plugins/jpicker/images/Bars.png similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/Bars.png rename to public/includes/jquery/plugins/jpicker/images/Bars.png diff --git a/htdocs/includes/jquery/plugins/jpicker/images/Maps.png b/public/includes/jquery/plugins/jpicker/images/Maps.png similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/Maps.png rename to public/includes/jquery/plugins/jpicker/images/Maps.png diff --git a/htdocs/includes/jquery/plugins/jpicker/images/NoColor.png b/public/includes/jquery/plugins/jpicker/images/NoColor.png similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/NoColor.png rename to public/includes/jquery/plugins/jpicker/images/NoColor.png diff --git a/htdocs/includes/jquery/plugins/jpicker/images/bar-opacity.png b/public/includes/jquery/plugins/jpicker/images/bar-opacity.png similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/bar-opacity.png rename to public/includes/jquery/plugins/jpicker/images/bar-opacity.png diff --git a/htdocs/includes/jquery/plugins/jpicker/images/map-opacity.png b/public/includes/jquery/plugins/jpicker/images/map-opacity.png similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/map-opacity.png rename to public/includes/jquery/plugins/jpicker/images/map-opacity.png diff --git a/htdocs/includes/jquery/plugins/jpicker/images/mappoint.gif b/public/includes/jquery/plugins/jpicker/images/mappoint.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/mappoint.gif rename to public/includes/jquery/plugins/jpicker/images/mappoint.gif diff --git a/htdocs/includes/jquery/plugins/jpicker/images/picker.gif b/public/includes/jquery/plugins/jpicker/images/picker.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/picker.gif rename to public/includes/jquery/plugins/jpicker/images/picker.gif diff --git a/htdocs/includes/jquery/plugins/jpicker/images/preview-opacity.png b/public/includes/jquery/plugins/jpicker/images/preview-opacity.png similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/preview-opacity.png rename to public/includes/jquery/plugins/jpicker/images/preview-opacity.png diff --git a/htdocs/includes/jquery/plugins/jpicker/images/rangearrows.gif b/public/includes/jquery/plugins/jpicker/images/rangearrows.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/images/rangearrows.gif rename to public/includes/jquery/plugins/jpicker/images/rangearrows.gif diff --git a/htdocs/includes/jquery/plugins/jpicker/jPicker.css b/public/includes/jquery/plugins/jpicker/jPicker.css similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/jPicker.css rename to public/includes/jquery/plugins/jpicker/jPicker.css diff --git a/htdocs/includes/jquery/plugins/jpicker/jpicker-1.1.6.js b/public/includes/jquery/plugins/jpicker/jpicker-1.1.6.js similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/jpicker-1.1.6.js rename to public/includes/jquery/plugins/jpicker/jpicker-1.1.6.js diff --git a/htdocs/includes/jquery/plugins/jpicker/jpicker-1.1.6.min.js b/public/includes/jquery/plugins/jpicker/jpicker-1.1.6.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/jpicker/jpicker-1.1.6.min.js rename to public/includes/jquery/plugins/jpicker/jpicker-1.1.6.min.js diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/application.png b/public/includes/jquery/plugins/jqueryFileTree/images/application.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/application.png rename to public/includes/jquery/plugins/jqueryFileTree/images/application.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/code.png b/public/includes/jquery/plugins/jqueryFileTree/images/code.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/code.png rename to public/includes/jquery/plugins/jqueryFileTree/images/code.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/css.png b/public/includes/jquery/plugins/jqueryFileTree/images/css.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/css.png rename to public/includes/jquery/plugins/jqueryFileTree/images/css.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/db.png b/public/includes/jquery/plugins/jqueryFileTree/images/db.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/db.png rename to public/includes/jquery/plugins/jqueryFileTree/images/db.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/directory.png b/public/includes/jquery/plugins/jqueryFileTree/images/directory.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/directory.png rename to public/includes/jquery/plugins/jqueryFileTree/images/directory.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/doc.png b/public/includes/jquery/plugins/jqueryFileTree/images/doc.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/doc.png rename to public/includes/jquery/plugins/jqueryFileTree/images/doc.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/file.png b/public/includes/jquery/plugins/jqueryFileTree/images/file.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/file.png rename to public/includes/jquery/plugins/jqueryFileTree/images/file.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/film.png b/public/includes/jquery/plugins/jqueryFileTree/images/film.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/film.png rename to public/includes/jquery/plugins/jqueryFileTree/images/film.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/flash.png b/public/includes/jquery/plugins/jqueryFileTree/images/flash.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/flash.png rename to public/includes/jquery/plugins/jqueryFileTree/images/flash.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/folder_open.png b/public/includes/jquery/plugins/jqueryFileTree/images/folder_open.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/folder_open.png rename to public/includes/jquery/plugins/jqueryFileTree/images/folder_open.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/html.png b/public/includes/jquery/plugins/jqueryFileTree/images/html.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/html.png rename to public/includes/jquery/plugins/jqueryFileTree/images/html.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/java.png b/public/includes/jquery/plugins/jqueryFileTree/images/java.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/java.png rename to public/includes/jquery/plugins/jqueryFileTree/images/java.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/linux.png b/public/includes/jquery/plugins/jqueryFileTree/images/linux.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/linux.png rename to public/includes/jquery/plugins/jqueryFileTree/images/linux.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/music.png b/public/includes/jquery/plugins/jqueryFileTree/images/music.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/music.png rename to public/includes/jquery/plugins/jqueryFileTree/images/music.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/pdf.png b/public/includes/jquery/plugins/jqueryFileTree/images/pdf.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/pdf.png rename to public/includes/jquery/plugins/jqueryFileTree/images/pdf.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/php.png b/public/includes/jquery/plugins/jqueryFileTree/images/php.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/php.png rename to public/includes/jquery/plugins/jqueryFileTree/images/php.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/picture.png b/public/includes/jquery/plugins/jqueryFileTree/images/picture.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/picture.png rename to public/includes/jquery/plugins/jqueryFileTree/images/picture.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/ppt.png b/public/includes/jquery/plugins/jqueryFileTree/images/ppt.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/ppt.png rename to public/includes/jquery/plugins/jqueryFileTree/images/ppt.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/psd.png b/public/includes/jquery/plugins/jqueryFileTree/images/psd.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/psd.png rename to public/includes/jquery/plugins/jqueryFileTree/images/psd.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/ruby.png b/public/includes/jquery/plugins/jqueryFileTree/images/ruby.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/ruby.png rename to public/includes/jquery/plugins/jqueryFileTree/images/ruby.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/script.png b/public/includes/jquery/plugins/jqueryFileTree/images/script.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/script.png rename to public/includes/jquery/plugins/jqueryFileTree/images/script.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/spinner.gif b/public/includes/jquery/plugins/jqueryFileTree/images/spinner.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/spinner.gif rename to public/includes/jquery/plugins/jqueryFileTree/images/spinner.gif diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/txt.png b/public/includes/jquery/plugins/jqueryFileTree/images/txt.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/txt.png rename to public/includes/jquery/plugins/jqueryFileTree/images/txt.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/xls.png b/public/includes/jquery/plugins/jqueryFileTree/images/xls.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/xls.png rename to public/includes/jquery/plugins/jqueryFileTree/images/xls.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/images/zip.png b/public/includes/jquery/plugins/jqueryFileTree/images/zip.png similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/images/zip.png rename to public/includes/jquery/plugins/jqueryFileTree/images/zip.png diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.css b/public/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.css similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.css rename to public/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.css diff --git a/htdocs/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.js b/public/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.js similarity index 100% rename from htdocs/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.js rename to public/includes/jquery/plugins/jqueryFileTree/jqueryFileTree.js diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/changelog.md b/public/includes/jquery/plugins/jquerytreeview/changelog.md similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/changelog.md rename to public/includes/jquery/plugins/jquerytreeview/changelog.md diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/ajax-loader.gif b/public/includes/jquery/plugins/jquerytreeview/images/ajax-loader.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/ajax-loader.gif rename to public/includes/jquery/plugins/jquerytreeview/images/ajax-loader.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/file.gif b/public/includes/jquery/plugins/jquerytreeview/images/file.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/file.gif rename to public/includes/jquery/plugins/jquerytreeview/images/file.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/folder-closed.gif b/public/includes/jquery/plugins/jquerytreeview/images/folder-closed.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/folder-closed.gif rename to public/includes/jquery/plugins/jquerytreeview/images/folder-closed.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/folder.gif b/public/includes/jquery/plugins/jquerytreeview/images/folder.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/folder.gif rename to public/includes/jquery/plugins/jquerytreeview/images/folder.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/minus.gif b/public/includes/jquery/plugins/jquerytreeview/images/minus.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/minus.gif rename to public/includes/jquery/plugins/jquerytreeview/images/minus.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/plus.gif b/public/includes/jquery/plugins/jquerytreeview/images/plus.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/plus.gif rename to public/includes/jquery/plugins/jquerytreeview/images/plus.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-black-line.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-black-line.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-black-line.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-black-line.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-black.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-black.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-black.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-black.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-default-line.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-default-line.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-default-line.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-default-line.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-default.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-default.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-default.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-default.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam-line.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam-line.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam-line.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam-line.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-famfamfam.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-gray-line.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-gray-line.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-gray-line.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-gray-line.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-gray.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-gray.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-gray.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-gray.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-red-line.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-red-line.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-red-line.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-red-line.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-red.gif b/public/includes/jquery/plugins/jquerytreeview/images/treeview-red.gif similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/images/treeview-red.gif rename to public/includes/jquery/plugins/jquerytreeview/images/treeview-red.gif diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.async.js b/public/includes/jquery/plugins/jquerytreeview/jquery.treeview.async.js similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.async.js rename to public/includes/jquery/plugins/jquerytreeview/jquery.treeview.async.js diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.css b/public/includes/jquery/plugins/jquerytreeview/jquery.treeview.css similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.css rename to public/includes/jquery/plugins/jquerytreeview/jquery.treeview.css diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.edit.js b/public/includes/jquery/plugins/jquerytreeview/jquery.treeview.edit.js similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.edit.js rename to public/includes/jquery/plugins/jquerytreeview/jquery.treeview.edit.js diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.js b/public/includes/jquery/plugins/jquerytreeview/jquery.treeview.js similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.js rename to public/includes/jquery/plugins/jquerytreeview/jquery.treeview.js diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.sortable.js b/public/includes/jquery/plugins/jquerytreeview/jquery.treeview.sortable.js similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/jquery.treeview.sortable.js rename to public/includes/jquery/plugins/jquerytreeview/jquery.treeview.sortable.js diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/lib/jquery.cookie.js b/public/includes/jquery/plugins/jquerytreeview/lib/jquery.cookie.js similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/lib/jquery.cookie.js rename to public/includes/jquery/plugins/jquerytreeview/lib/jquery.cookie.js diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/readme.md b/public/includes/jquery/plugins/jquerytreeview/readme.md similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/readme.md rename to public/includes/jquery/plugins/jquerytreeview/readme.md diff --git a/htdocs/includes/jquery/plugins/jquerytreeview/screenshot.png b/public/includes/jquery/plugins/jquerytreeview/screenshot.png similarity index 100% rename from htdocs/includes/jquery/plugins/jquerytreeview/screenshot.png rename to public/includes/jquery/plugins/jquerytreeview/screenshot.png diff --git a/htdocs/includes/jquery/plugins/layout/jquery.layout.js b/public/includes/jquery/plugins/layout/jquery.layout.js similarity index 100% rename from htdocs/includes/jquery/plugins/layout/jquery.layout.js rename to public/includes/jquery/plugins/layout/jquery.layout.js diff --git a/htdocs/includes/jquery/plugins/layout/jquery.layout.min.js b/public/includes/jquery/plugins/layout/jquery.layout.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/layout/jquery.layout.min.js rename to public/includes/jquery/plugins/layout/jquery.layout.min.js diff --git a/htdocs/includes/jquery/plugins/mobile/images/ajax-loader.gif b/public/includes/jquery/plugins/mobile/images/ajax-loader.gif similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/images/ajax-loader.gif rename to public/includes/jquery/plugins/mobile/images/ajax-loader.gif diff --git a/htdocs/includes/jquery/plugins/mobile/images/icons-18-black.png b/public/includes/jquery/plugins/mobile/images/icons-18-black.png similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/images/icons-18-black.png rename to public/includes/jquery/plugins/mobile/images/icons-18-black.png diff --git a/htdocs/includes/jquery/plugins/mobile/images/icons-18-white.png b/public/includes/jquery/plugins/mobile/images/icons-18-white.png similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/images/icons-18-white.png rename to public/includes/jquery/plugins/mobile/images/icons-18-white.png diff --git a/htdocs/includes/jquery/plugins/mobile/images/icons-36-black.png b/public/includes/jquery/plugins/mobile/images/icons-36-black.png similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/images/icons-36-black.png rename to public/includes/jquery/plugins/mobile/images/icons-36-black.png diff --git a/htdocs/includes/jquery/plugins/mobile/images/icons-36-white.png b/public/includes/jquery/plugins/mobile/images/icons-36-white.png similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/images/icons-36-white.png rename to public/includes/jquery/plugins/mobile/images/icons-36-white.png diff --git a/htdocs/includes/jquery/plugins/mobile/jquery.mobile-latest.css b/public/includes/jquery/plugins/mobile/jquery.mobile-latest.css similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/jquery.mobile-latest.css rename to public/includes/jquery/plugins/mobile/jquery.mobile-latest.css diff --git a/htdocs/includes/jquery/plugins/mobile/jquery.mobile-latest.js b/public/includes/jquery/plugins/mobile/jquery.mobile-latest.js similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/jquery.mobile-latest.js rename to public/includes/jquery/plugins/mobile/jquery.mobile-latest.js diff --git a/htdocs/includes/jquery/plugins/mobile/jquery.mobile-latest.min.css b/public/includes/jquery/plugins/mobile/jquery.mobile-latest.min.css similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/jquery.mobile-latest.min.css rename to public/includes/jquery/plugins/mobile/jquery.mobile-latest.min.css diff --git a/htdocs/includes/jquery/plugins/mobile/jquery.mobile-latest.min.js b/public/includes/jquery/plugins/mobile/jquery.mobile-latest.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/mobile/jquery.mobile-latest.min.js rename to public/includes/jquery/plugins/mobile/jquery.mobile-latest.min.js diff --git a/htdocs/includes/jquery/plugins/multiselect/MIT-LICENSE.txt b/public/includes/jquery/plugins/multiselect/MIT-LICENSE.txt similarity index 100% rename from htdocs/includes/jquery/plugins/multiselect/MIT-LICENSE.txt rename to public/includes/jquery/plugins/multiselect/MIT-LICENSE.txt diff --git a/htdocs/includes/jquery/plugins/multiselect/css/ui.multiselect.css b/public/includes/jquery/plugins/multiselect/css/ui.multiselect.css similarity index 100% rename from htdocs/includes/jquery/plugins/multiselect/css/ui.multiselect.css rename to public/includes/jquery/plugins/multiselect/css/ui.multiselect.css diff --git a/htdocs/includes/jquery/plugins/multiselect/js/ui.multiselect.js b/public/includes/jquery/plugins/multiselect/js/ui.multiselect.js similarity index 100% rename from htdocs/includes/jquery/plugins/multiselect/js/ui.multiselect.js rename to public/includes/jquery/plugins/multiselect/js/ui.multiselect.js diff --git a/htdocs/includes/jquery/plugins/select2/.gitignore b/public/includes/jquery/plugins/select2/.gitignore similarity index 100% rename from htdocs/includes/jquery/plugins/select2/.gitignore rename to public/includes/jquery/plugins/select2/.gitignore diff --git a/htdocs/includes/jquery/plugins/select2/CONTRIBUTING.md b/public/includes/jquery/plugins/select2/CONTRIBUTING.md similarity index 100% rename from htdocs/includes/jquery/plugins/select2/CONTRIBUTING.md rename to public/includes/jquery/plugins/select2/CONTRIBUTING.md diff --git a/htdocs/includes/jquery/plugins/select2/LICENSE b/public/includes/jquery/plugins/select2/LICENSE similarity index 100% rename from htdocs/includes/jquery/plugins/select2/LICENSE rename to public/includes/jquery/plugins/select2/LICENSE diff --git a/htdocs/includes/jquery/plugins/select2/README.md b/public/includes/jquery/plugins/select2/README.md similarity index 100% rename from htdocs/includes/jquery/plugins/select2/README.md rename to public/includes/jquery/plugins/select2/README.md diff --git a/htdocs/includes/jquery/plugins/select2/bower.json b/public/includes/jquery/plugins/select2/bower.json similarity index 100% rename from htdocs/includes/jquery/plugins/select2/bower.json rename to public/includes/jquery/plugins/select2/bower.json diff --git a/htdocs/includes/jquery/plugins/select2/component.json b/public/includes/jquery/plugins/select2/component.json similarity index 100% rename from htdocs/includes/jquery/plugins/select2/component.json rename to public/includes/jquery/plugins/select2/component.json diff --git a/htdocs/includes/jquery/plugins/select2/composer.json b/public/includes/jquery/plugins/select2/composer.json similarity index 100% rename from htdocs/includes/jquery/plugins/select2/composer.json rename to public/includes/jquery/plugins/select2/composer.json diff --git a/htdocs/includes/jquery/plugins/select2/package.json b/public/includes/jquery/plugins/select2/package.json similarity index 100% rename from htdocs/includes/jquery/plugins/select2/package.json rename to public/includes/jquery/plugins/select2/package.json diff --git a/htdocs/includes/jquery/plugins/select2/release.sh b/public/includes/jquery/plugins/select2/release.sh similarity index 100% rename from htdocs/includes/jquery/plugins/select2/release.sh rename to public/includes/jquery/plugins/select2/release.sh diff --git a/htdocs/includes/jquery/plugins/select2/select2-bootstrap.css b/public/includes/jquery/plugins/select2/select2-bootstrap.css similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2-bootstrap.css rename to public/includes/jquery/plugins/select2/select2-bootstrap.css diff --git a/htdocs/includes/jquery/plugins/select2/select2-spinner.gif b/public/includes/jquery/plugins/select2/select2-spinner.gif similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2-spinner.gif rename to public/includes/jquery/plugins/select2/select2-spinner.gif diff --git a/htdocs/includes/jquery/plugins/select2/select2.css b/public/includes/jquery/plugins/select2/select2.css similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2.css rename to public/includes/jquery/plugins/select2/select2.css diff --git a/htdocs/includes/jquery/plugins/select2/select2.jquery.json b/public/includes/jquery/plugins/select2/select2.jquery.json similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2.jquery.json rename to public/includes/jquery/plugins/select2/select2.jquery.json diff --git a/htdocs/includes/jquery/plugins/select2/select2.js b/public/includes/jquery/plugins/select2/select2.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2.js rename to public/includes/jquery/plugins/select2/select2.js diff --git a/htdocs/includes/jquery/plugins/select2/select2.min.js b/public/includes/jquery/plugins/select2/select2.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2.min.js rename to public/includes/jquery/plugins/select2/select2.min.js diff --git a/htdocs/includes/jquery/plugins/select2/select2.png b/public/includes/jquery/plugins/select2/select2.png similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2.png rename to public/includes/jquery/plugins/select2/select2.png diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ar.js b/public/includes/jquery/plugins/select2/select2_locale_ar.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ar.js rename to public/includes/jquery/plugins/select2/select2_locale_ar.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_az.js b/public/includes/jquery/plugins/select2/select2_locale_az.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_az.js rename to public/includes/jquery/plugins/select2/select2_locale_az.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_bg.js b/public/includes/jquery/plugins/select2/select2_locale_bg.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_bg.js rename to public/includes/jquery/plugins/select2/select2_locale_bg.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ca.js b/public/includes/jquery/plugins/select2/select2_locale_ca.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ca.js rename to public/includes/jquery/plugins/select2/select2_locale_ca.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_cs.js b/public/includes/jquery/plugins/select2/select2_locale_cs.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_cs.js rename to public/includes/jquery/plugins/select2/select2_locale_cs.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_da.js b/public/includes/jquery/plugins/select2/select2_locale_da.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_da.js rename to public/includes/jquery/plugins/select2/select2_locale_da.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_de.js b/public/includes/jquery/plugins/select2/select2_locale_de.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_de.js rename to public/includes/jquery/plugins/select2/select2_locale_de.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_el.js b/public/includes/jquery/plugins/select2/select2_locale_el.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_el.js rename to public/includes/jquery/plugins/select2/select2_locale_el.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_en.js.template b/public/includes/jquery/plugins/select2/select2_locale_en.js.template similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_en.js.template rename to public/includes/jquery/plugins/select2/select2_locale_en.js.template diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_es.js b/public/includes/jquery/plugins/select2/select2_locale_es.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_es.js rename to public/includes/jquery/plugins/select2/select2_locale_es.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_et.js b/public/includes/jquery/plugins/select2/select2_locale_et.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_et.js rename to public/includes/jquery/plugins/select2/select2_locale_et.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_eu.js b/public/includes/jquery/plugins/select2/select2_locale_eu.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_eu.js rename to public/includes/jquery/plugins/select2/select2_locale_eu.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_fa.js b/public/includes/jquery/plugins/select2/select2_locale_fa.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_fa.js rename to public/includes/jquery/plugins/select2/select2_locale_fa.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_fi.js b/public/includes/jquery/plugins/select2/select2_locale_fi.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_fi.js rename to public/includes/jquery/plugins/select2/select2_locale_fi.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_fr.js b/public/includes/jquery/plugins/select2/select2_locale_fr.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_fr.js rename to public/includes/jquery/plugins/select2/select2_locale_fr.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_gl.js b/public/includes/jquery/plugins/select2/select2_locale_gl.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_gl.js rename to public/includes/jquery/plugins/select2/select2_locale_gl.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_he.js b/public/includes/jquery/plugins/select2/select2_locale_he.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_he.js rename to public/includes/jquery/plugins/select2/select2_locale_he.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_hr.js b/public/includes/jquery/plugins/select2/select2_locale_hr.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_hr.js rename to public/includes/jquery/plugins/select2/select2_locale_hr.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_hu.js b/public/includes/jquery/plugins/select2/select2_locale_hu.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_hu.js rename to public/includes/jquery/plugins/select2/select2_locale_hu.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_id.js b/public/includes/jquery/plugins/select2/select2_locale_id.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_id.js rename to public/includes/jquery/plugins/select2/select2_locale_id.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_is.js b/public/includes/jquery/plugins/select2/select2_locale_is.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_is.js rename to public/includes/jquery/plugins/select2/select2_locale_is.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_it.js b/public/includes/jquery/plugins/select2/select2_locale_it.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_it.js rename to public/includes/jquery/plugins/select2/select2_locale_it.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ja.js b/public/includes/jquery/plugins/select2/select2_locale_ja.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ja.js rename to public/includes/jquery/plugins/select2/select2_locale_ja.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ka.js b/public/includes/jquery/plugins/select2/select2_locale_ka.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ka.js rename to public/includes/jquery/plugins/select2/select2_locale_ka.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ko.js b/public/includes/jquery/plugins/select2/select2_locale_ko.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ko.js rename to public/includes/jquery/plugins/select2/select2_locale_ko.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_lt.js b/public/includes/jquery/plugins/select2/select2_locale_lt.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_lt.js rename to public/includes/jquery/plugins/select2/select2_locale_lt.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_lv.js b/public/includes/jquery/plugins/select2/select2_locale_lv.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_lv.js rename to public/includes/jquery/plugins/select2/select2_locale_lv.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_mk.js b/public/includes/jquery/plugins/select2/select2_locale_mk.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_mk.js rename to public/includes/jquery/plugins/select2/select2_locale_mk.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ms.js b/public/includes/jquery/plugins/select2/select2_locale_ms.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ms.js rename to public/includes/jquery/plugins/select2/select2_locale_ms.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_nb.js b/public/includes/jquery/plugins/select2/select2_locale_nb.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_nb.js rename to public/includes/jquery/plugins/select2/select2_locale_nb.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_nl.js b/public/includes/jquery/plugins/select2/select2_locale_nl.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_nl.js rename to public/includes/jquery/plugins/select2/select2_locale_nl.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_pl.js b/public/includes/jquery/plugins/select2/select2_locale_pl.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_pl.js rename to public/includes/jquery/plugins/select2/select2_locale_pl.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_pt-BR.js b/public/includes/jquery/plugins/select2/select2_locale_pt-BR.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_pt-BR.js rename to public/includes/jquery/plugins/select2/select2_locale_pt-BR.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_pt-PT.js b/public/includes/jquery/plugins/select2/select2_locale_pt-PT.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_pt-PT.js rename to public/includes/jquery/plugins/select2/select2_locale_pt-PT.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ro.js b/public/includes/jquery/plugins/select2/select2_locale_ro.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ro.js rename to public/includes/jquery/plugins/select2/select2_locale_ro.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_rs.js b/public/includes/jquery/plugins/select2/select2_locale_rs.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_rs.js rename to public/includes/jquery/plugins/select2/select2_locale_rs.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ru.js b/public/includes/jquery/plugins/select2/select2_locale_ru.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ru.js rename to public/includes/jquery/plugins/select2/select2_locale_ru.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_sk.js b/public/includes/jquery/plugins/select2/select2_locale_sk.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_sk.js rename to public/includes/jquery/plugins/select2/select2_locale_sk.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_sv.js b/public/includes/jquery/plugins/select2/select2_locale_sv.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_sv.js rename to public/includes/jquery/plugins/select2/select2_locale_sv.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_th.js b/public/includes/jquery/plugins/select2/select2_locale_th.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_th.js rename to public/includes/jquery/plugins/select2/select2_locale_th.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_tr.js b/public/includes/jquery/plugins/select2/select2_locale_tr.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_tr.js rename to public/includes/jquery/plugins/select2/select2_locale_tr.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_ug-CN.js b/public/includes/jquery/plugins/select2/select2_locale_ug-CN.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_ug-CN.js rename to public/includes/jquery/plugins/select2/select2_locale_ug-CN.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_uk.js b/public/includes/jquery/plugins/select2/select2_locale_uk.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_uk.js rename to public/includes/jquery/plugins/select2/select2_locale_uk.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_vi.js b/public/includes/jquery/plugins/select2/select2_locale_vi.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_vi.js rename to public/includes/jquery/plugins/select2/select2_locale_vi.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_zh-CN.js b/public/includes/jquery/plugins/select2/select2_locale_zh-CN.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_zh-CN.js rename to public/includes/jquery/plugins/select2/select2_locale_zh-CN.js diff --git a/htdocs/includes/jquery/plugins/select2/select2_locale_zh-TW.js b/public/includes/jquery/plugins/select2/select2_locale_zh-TW.js similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2_locale_zh-TW.js rename to public/includes/jquery/plugins/select2/select2_locale_zh-TW.js diff --git a/htdocs/includes/jquery/plugins/select2/select2x2.png b/public/includes/jquery/plugins/select2/select2x2.png similarity index 100% rename from htdocs/includes/jquery/plugins/select2/select2x2.png rename to public/includes/jquery/plugins/select2/select2x2.png diff --git a/htdocs/includes/jquery/plugins/tablednd/README.txt b/public/includes/jquery/plugins/tablednd/README.txt similarity index 100% rename from htdocs/includes/jquery/plugins/tablednd/README.txt rename to public/includes/jquery/plugins/tablednd/README.txt diff --git a/htdocs/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.js b/public/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.js similarity index 100% rename from htdocs/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.js rename to public/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.js diff --git a/htdocs/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.min.js b/public/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.min.js rename to public/includes/jquery/plugins/tablednd/jquery.tablednd.0.6.min.js diff --git a/htdocs/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.css b/public/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.css similarity index 100% rename from htdocs/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.css rename to public/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.css diff --git a/htdocs/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.js b/public/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.js similarity index 100% rename from htdocs/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.js rename to public/includes/jquery/plugins/timepicker/jquery-ui-timepicker-addon.js diff --git a/htdocs/includes/jquery/plugins/tiptip/jquery.tipTip.js b/public/includes/jquery/plugins/tiptip/jquery.tipTip.js similarity index 100% rename from htdocs/includes/jquery/plugins/tiptip/jquery.tipTip.js rename to public/includes/jquery/plugins/tiptip/jquery.tipTip.js diff --git a/htdocs/includes/jquery/plugins/tiptip/jquery.tipTip.min.js b/public/includes/jquery/plugins/tiptip/jquery.tipTip.min.js similarity index 100% rename from htdocs/includes/jquery/plugins/tiptip/jquery.tipTip.min.js rename to public/includes/jquery/plugins/tiptip/jquery.tipTip.min.js diff --git a/htdocs/includes/jquery/plugins/tiptip/tipTip.css b/public/includes/jquery/plugins/tiptip/tipTip.css similarity index 100% rename from htdocs/includes/jquery/plugins/tiptip/tipTip.css rename to public/includes/jquery/plugins/tiptip/tipTip.css diff --git a/htdocs/includes/jsgantt/index.htm b/public/includes/jsgantt/index.htm similarity index 100% rename from htdocs/includes/jsgantt/index.htm rename to public/includes/jsgantt/index.htm diff --git a/htdocs/includes/jsgantt/jsgantt.css b/public/includes/jsgantt/jsgantt.css similarity index 100% rename from htdocs/includes/jsgantt/jsgantt.css rename to public/includes/jsgantt/jsgantt.css diff --git a/htdocs/includes/jsgantt/jsgantt.js b/public/includes/jsgantt/jsgantt.js similarity index 100% rename from htdocs/includes/jsgantt/jsgantt.js rename to public/includes/jsgantt/jsgantt.js diff --git a/htdocs/includes/jsgantt/jsgantt.min.js b/public/includes/jsgantt/jsgantt.min.js similarity index 100% rename from htdocs/includes/jsgantt/jsgantt.min.js rename to public/includes/jsgantt/jsgantt.min.js diff --git a/htdocs/includes/jsgantt/jsgantt_Minutes.html b/public/includes/jsgantt/jsgantt_Minutes.html similarity index 100% rename from htdocs/includes/jsgantt/jsgantt_Minutes.html rename to public/includes/jsgantt/jsgantt_Minutes.html diff --git a/htdocs/includes/jsgantt/jsgantt_exExternalXML.html b/public/includes/jsgantt/jsgantt_exExternalXML.html similarity index 100% rename from htdocs/includes/jsgantt/jsgantt_exExternalXML.html rename to public/includes/jsgantt/jsgantt_exExternalXML.html diff --git a/htdocs/includes/jsgantt/project.xml b/public/includes/jsgantt/project.xml similarity index 100% rename from htdocs/includes/jsgantt/project.xml rename to public/includes/jsgantt/project.xml diff --git a/htdocs/includes/jstz/jstz.js b/public/includes/jstz/jstz.js similarity index 100% rename from htdocs/includes/jstz/jstz.js rename to public/includes/jstz/jstz.js diff --git a/htdocs/includes/jstz/jstz.min.js b/public/includes/jstz/jstz.min.js similarity index 100% rename from htdocs/includes/jstz/jstz.min.js rename to public/includes/jstz/jstz.min.js diff --git a/htdocs/includes/mike42/escpos-php/.gitignore b/public/includes/mike42/escpos-php/.gitignore similarity index 100% rename from htdocs/includes/mike42/escpos-php/.gitignore rename to public/includes/mike42/escpos-php/.gitignore diff --git a/htdocs/includes/mike42/escpos-php/Escpos.php b/public/includes/mike42/escpos-php/Escpos.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/Escpos.php rename to public/includes/mike42/escpos-php/Escpos.php diff --git a/htdocs/includes/mike42/escpos-php/LICENSE.md b/public/includes/mike42/escpos-php/LICENSE.md similarity index 100% rename from htdocs/includes/mike42/escpos-php/LICENSE.md rename to public/includes/mike42/escpos-php/LICENSE.md diff --git a/htdocs/includes/mike42/escpos-php/README.md b/public/includes/mike42/escpos-php/README.md similarity index 100% rename from htdocs/includes/mike42/escpos-php/README.md rename to public/includes/mike42/escpos-php/README.md diff --git a/htdocs/includes/mike42/escpos-php/composer.json b/public/includes/mike42/escpos-php/composer.json similarity index 100% rename from htdocs/includes/mike42/escpos-php/composer.json rename to public/includes/mike42/escpos-php/composer.json diff --git a/htdocs/includes/mike42/escpos-php/composer.lock b/public/includes/mike42/escpos-php/composer.lock similarity index 100% rename from htdocs/includes/mike42/escpos-php/composer.lock rename to public/includes/mike42/escpos-php/composer.lock diff --git a/htdocs/includes/mike42/escpos-php/doc/Makefile b/public/includes/mike42/escpos-php/doc/Makefile similarity index 100% rename from htdocs/includes/mike42/escpos-php/doc/Makefile rename to public/includes/mike42/escpos-php/doc/Makefile diff --git a/htdocs/includes/mike42/escpos-php/doc/escpos.conf b/public/includes/mike42/escpos-php/doc/escpos.conf similarity index 100% rename from htdocs/includes/mike42/escpos-php/doc/escpos.conf rename to public/includes/mike42/escpos-php/doc/escpos.conf diff --git a/htdocs/includes/mike42/escpos-php/example/README.md b/public/includes/mike42/escpos-php/example/README.md similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/README.md rename to public/includes/mike42/escpos-php/example/README.md diff --git a/htdocs/includes/mike42/escpos-php/example/barcode.php b/public/includes/mike42/escpos-php/example/barcode.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/barcode.php rename to public/includes/mike42/escpos-php/example/barcode.php diff --git a/htdocs/includes/mike42/escpos-php/example/bit-image.php b/public/includes/mike42/escpos-php/example/bit-image.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/bit-image.php rename to public/includes/mike42/escpos-php/example/bit-image.php diff --git a/htdocs/includes/mike42/escpos-php/example/character-encodings-with-images.php b/public/includes/mike42/escpos-php/example/character-encodings-with-images.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/character-encodings-with-images.php rename to public/includes/mike42/escpos-php/example/character-encodings-with-images.php diff --git a/htdocs/includes/mike42/escpos-php/example/character-encodings.php b/public/includes/mike42/escpos-php/example/character-encodings.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/character-encodings.php rename to public/includes/mike42/escpos-php/example/character-encodings.php diff --git a/htdocs/includes/mike42/escpos-php/example/character-tables.php b/public/includes/mike42/escpos-php/example/character-tables.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/character-tables.php rename to public/includes/mike42/escpos-php/example/character-tables.php diff --git a/htdocs/includes/mike42/escpos-php/example/demo.php b/public/includes/mike42/escpos-php/example/demo.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/demo.php rename to public/includes/mike42/escpos-php/example/demo.php diff --git a/htdocs/includes/mike42/escpos-php/example/graphics.php b/public/includes/mike42/escpos-php/example/graphics.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/graphics.php rename to public/includes/mike42/escpos-php/example/graphics.php diff --git a/htdocs/includes/mike42/escpos-php/example/interface/README.md b/public/includes/mike42/escpos-php/example/interface/README.md similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/interface/README.md rename to public/includes/mike42/escpos-php/example/interface/README.md diff --git a/htdocs/includes/mike42/escpos-php/example/interface/ethernet.php b/public/includes/mike42/escpos-php/example/interface/ethernet.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/interface/ethernet.php rename to public/includes/mike42/escpos-php/example/interface/ethernet.php diff --git a/htdocs/includes/mike42/escpos-php/example/interface/linux-usb.php b/public/includes/mike42/escpos-php/example/interface/linux-usb.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/interface/linux-usb.php rename to public/includes/mike42/escpos-php/example/interface/linux-usb.php diff --git a/htdocs/includes/mike42/escpos-php/example/interface/smb.php b/public/includes/mike42/escpos-php/example/interface/smb.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/interface/smb.php rename to public/includes/mike42/escpos-php/example/interface/smb.php diff --git a/htdocs/includes/mike42/escpos-php/example/interface/windows-lpt.php b/public/includes/mike42/escpos-php/example/interface/windows-lpt.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/interface/windows-lpt.php rename to public/includes/mike42/escpos-php/example/interface/windows-lpt.php diff --git a/htdocs/includes/mike42/escpos-php/example/interface/windows-usb.php b/public/includes/mike42/escpos-php/example/interface/windows-usb.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/interface/windows-usb.php rename to public/includes/mike42/escpos-php/example/interface/windows-usb.php diff --git a/htdocs/includes/mike42/escpos-php/example/print-from-html.php b/public/includes/mike42/escpos-php/example/print-from-html.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/print-from-html.php rename to public/includes/mike42/escpos-php/example/print-from-html.php diff --git a/htdocs/includes/mike42/escpos-php/example/print-from-pdf.php b/public/includes/mike42/escpos-php/example/print-from-pdf.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/print-from-pdf.php rename to public/includes/mike42/escpos-php/example/print-from-pdf.php diff --git a/htdocs/includes/mike42/escpos-php/example/qr-code.php b/public/includes/mike42/escpos-php/example/qr-code.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/qr-code.php rename to public/includes/mike42/escpos-php/example/qr-code.php diff --git a/htdocs/includes/mike42/escpos-php/example/receipt-with-logo.php b/public/includes/mike42/escpos-php/example/receipt-with-logo.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/receipt-with-logo.php rename to public/includes/mike42/escpos-php/example/receipt-with-logo.php diff --git a/htdocs/includes/mike42/escpos-php/example/resources/character-encoding-test-strings.inc b/public/includes/mike42/escpos-php/example/resources/character-encoding-test-strings.inc similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/resources/character-encoding-test-strings.inc rename to public/includes/mike42/escpos-php/example/resources/character-encoding-test-strings.inc diff --git a/htdocs/includes/mike42/escpos-php/example/resources/document.odt b/public/includes/mike42/escpos-php/example/resources/document.odt similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/resources/document.odt rename to public/includes/mike42/escpos-php/example/resources/document.odt diff --git a/htdocs/includes/mike42/escpos-php/example/resources/document.pdf b/public/includes/mike42/escpos-php/example/resources/document.pdf similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/resources/document.pdf rename to public/includes/mike42/escpos-php/example/resources/document.pdf diff --git a/htdocs/includes/mike42/escpos-php/example/resources/document.z b/public/includes/mike42/escpos-php/example/resources/document.z similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/resources/document.z rename to public/includes/mike42/escpos-php/example/resources/document.z diff --git a/htdocs/includes/mike42/escpos-php/example/resources/escpos-php-small.png b/public/includes/mike42/escpos-php/example/resources/escpos-php-small.png similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/resources/escpos-php-small.png rename to public/includes/mike42/escpos-php/example/resources/escpos-php-small.png diff --git a/htdocs/includes/mike42/escpos-php/example/resources/escpos-php.png b/public/includes/mike42/escpos-php/example/resources/escpos-php.png similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/resources/escpos-php.png rename to public/includes/mike42/escpos-php/example/resources/escpos-php.png diff --git a/htdocs/includes/mike42/escpos-php/example/resources/tux.png b/public/includes/mike42/escpos-php/example/resources/tux.png similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/resources/tux.png rename to public/includes/mike42/escpos-php/example/resources/tux.png diff --git a/htdocs/includes/mike42/escpos-php/example/specific/29-latvian-star-tup592.php b/public/includes/mike42/escpos-php/example/specific/29-latvian-star-tup592.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/29-latvian-star-tup592.php rename to public/includes/mike42/escpos-php/example/specific/29-latvian-star-tup592.php diff --git a/htdocs/includes/mike42/escpos-php/example/specific/32-german-tm-t20-ii-custom-command.php b/public/includes/mike42/escpos-php/example/specific/32-german-tm-t20-ii-custom-command.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/32-german-tm-t20-ii-custom-command.php rename to public/includes/mike42/escpos-php/example/specific/32-german-tm-t20-ii-custom-command.php diff --git a/htdocs/includes/mike42/escpos-php/example/specific/33-spanish-seypos-prp-300.php b/public/includes/mike42/escpos-php/example/specific/33-spanish-seypos-prp-300.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/33-spanish-seypos-prp-300.php rename to public/includes/mike42/escpos-php/example/specific/33-spanish-seypos-prp-300.php diff --git a/htdocs/includes/mike42/escpos-php/example/specific/39-currency-symbols.php b/public/includes/mike42/escpos-php/example/specific/39-currency-symbols.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/39-currency-symbols.php rename to public/includes/mike42/escpos-php/example/specific/39-currency-symbols.php diff --git a/htdocs/includes/mike42/escpos-php/example/specific/44-pound-symbol-star-tsp650.php b/public/includes/mike42/escpos-php/example/specific/44-pound-symbol-star-tsp650.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/44-pound-symbol-star-tsp650.php rename to public/includes/mike42/escpos-php/example/specific/44-pound-symbol-star-tsp650.php diff --git a/htdocs/includes/mike42/escpos-php/example/specific/50-P-822D-greek.php b/public/includes/mike42/escpos-php/example/specific/50-P-822D-greek.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/50-P-822D-greek.php rename to public/includes/mike42/escpos-php/example/specific/50-P-822D-greek.php diff --git a/htdocs/includes/mike42/escpos-php/example/specific/54-gfx-sidebyside.php b/public/includes/mike42/escpos-php/example/specific/54-gfx-sidebyside.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/54-gfx-sidebyside.php rename to public/includes/mike42/escpos-php/example/specific/54-gfx-sidebyside.php diff --git a/htdocs/includes/mike42/escpos-php/example/specific/6-arabic-epos-tep-220m.php b/public/includes/mike42/escpos-php/example/specific/6-arabic-epos-tep-220m.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/6-arabic-epos-tep-220m.php rename to public/includes/mike42/escpos-php/example/specific/6-arabic-epos-tep-220m.php diff --git a/htdocs/includes/mike42/escpos-php/example/specific/README.md b/public/includes/mike42/escpos-php/example/specific/README.md similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/specific/README.md rename to public/includes/mike42/escpos-php/example/specific/README.md diff --git a/htdocs/includes/mike42/escpos-php/example/text-size.php b/public/includes/mike42/escpos-php/example/text-size.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/example/text-size.php rename to public/includes/mike42/escpos-php/example/text-size.php diff --git a/htdocs/includes/mike42/escpos-php/src/AbstractCapabilityProfile.php b/public/includes/mike42/escpos-php/src/AbstractCapabilityProfile.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/AbstractCapabilityProfile.php rename to public/includes/mike42/escpos-php/src/AbstractCapabilityProfile.php diff --git a/htdocs/includes/mike42/escpos-php/src/CodePage.php b/public/includes/mike42/escpos-php/src/CodePage.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/CodePage.php rename to public/includes/mike42/escpos-php/src/CodePage.php diff --git a/htdocs/includes/mike42/escpos-php/src/DefaultCapabilityProfile.php b/public/includes/mike42/escpos-php/src/DefaultCapabilityProfile.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/DefaultCapabilityProfile.php rename to public/includes/mike42/escpos-php/src/DefaultCapabilityProfile.php diff --git a/htdocs/includes/mike42/escpos-php/src/DummyPrintConnector.php b/public/includes/mike42/escpos-php/src/DummyPrintConnector.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/DummyPrintConnector.php rename to public/includes/mike42/escpos-php/src/DummyPrintConnector.php diff --git a/htdocs/includes/mike42/escpos-php/src/EposTepCapabilityProfile.php b/public/includes/mike42/escpos-php/src/EposTepCapabilityProfile.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/EposTepCapabilityProfile.php rename to public/includes/mike42/escpos-php/src/EposTepCapabilityProfile.php diff --git a/htdocs/includes/mike42/escpos-php/src/EscposImage.php b/public/includes/mike42/escpos-php/src/EscposImage.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/EscposImage.php rename to public/includes/mike42/escpos-php/src/EscposImage.php diff --git a/htdocs/includes/mike42/escpos-php/src/EscposPrintBuffer.php b/public/includes/mike42/escpos-php/src/EscposPrintBuffer.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/EscposPrintBuffer.php rename to public/includes/mike42/escpos-php/src/EscposPrintBuffer.php diff --git a/htdocs/includes/mike42/escpos-php/src/FilePrintConnector.php b/public/includes/mike42/escpos-php/src/FilePrintConnector.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/FilePrintConnector.php rename to public/includes/mike42/escpos-php/src/FilePrintConnector.php diff --git a/htdocs/includes/mike42/escpos-php/src/ImagePrintBuffer.php b/public/includes/mike42/escpos-php/src/ImagePrintBuffer.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/ImagePrintBuffer.php rename to public/includes/mike42/escpos-php/src/ImagePrintBuffer.php diff --git a/htdocs/includes/mike42/escpos-php/src/NetworkPrintConnector.php b/public/includes/mike42/escpos-php/src/NetworkPrintConnector.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/NetworkPrintConnector.php rename to public/includes/mike42/escpos-php/src/NetworkPrintConnector.php diff --git a/htdocs/includes/mike42/escpos-php/src/P822DCapabilityProfile.php b/public/includes/mike42/escpos-php/src/P822DCapabilityProfile.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/P822DCapabilityProfile.php rename to public/includes/mike42/escpos-php/src/P822DCapabilityProfile.php diff --git a/htdocs/includes/mike42/escpos-php/src/PrintBuffer.php b/public/includes/mike42/escpos-php/src/PrintBuffer.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/PrintBuffer.php rename to public/includes/mike42/escpos-php/src/PrintBuffer.php diff --git a/htdocs/includes/mike42/escpos-php/src/PrintConnector.php b/public/includes/mike42/escpos-php/src/PrintConnector.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/PrintConnector.php rename to public/includes/mike42/escpos-php/src/PrintConnector.php diff --git a/htdocs/includes/mike42/escpos-php/src/SimpleCapabilityProfile.php b/public/includes/mike42/escpos-php/src/SimpleCapabilityProfile.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/SimpleCapabilityProfile.php rename to public/includes/mike42/escpos-php/src/SimpleCapabilityProfile.php diff --git a/htdocs/includes/mike42/escpos-php/src/StarCapabilityProfile.php b/public/includes/mike42/escpos-php/src/StarCapabilityProfile.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/StarCapabilityProfile.php rename to public/includes/mike42/escpos-php/src/StarCapabilityProfile.php diff --git a/htdocs/includes/mike42/escpos-php/src/WindowsPrintConnector.php b/public/includes/mike42/escpos-php/src/WindowsPrintConnector.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/WindowsPrintConnector.php rename to public/includes/mike42/escpos-php/src/WindowsPrintConnector.php diff --git a/htdocs/includes/mike42/escpos-php/src/cache/Characters-DefaultCapabilityProfile.ser.gz b/public/includes/mike42/escpos-php/src/cache/Characters-DefaultCapabilityProfile.ser.gz similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/cache/Characters-DefaultCapabilityProfile.ser.gz rename to public/includes/mike42/escpos-php/src/cache/Characters-DefaultCapabilityProfile.ser.gz diff --git a/htdocs/includes/mike42/escpos-php/src/cache/Characters-SimpleCapabilityProfile.ser.gz b/public/includes/mike42/escpos-php/src/cache/Characters-SimpleCapabilityProfile.ser.gz similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/cache/Characters-SimpleCapabilityProfile.ser.gz rename to public/includes/mike42/escpos-php/src/cache/Characters-SimpleCapabilityProfile.ser.gz diff --git a/htdocs/includes/mike42/escpos-php/src/cache/Characters-StarCapabilityProfile.ser.gz b/public/includes/mike42/escpos-php/src/cache/Characters-StarCapabilityProfile.ser.gz similarity index 100% rename from htdocs/includes/mike42/escpos-php/src/cache/Characters-StarCapabilityProfile.ser.gz rename to public/includes/mike42/escpos-php/src/cache/Characters-StarCapabilityProfile.ser.gz diff --git a/htdocs/includes/mike42/escpos-php/test/bootstrap.php b/public/includes/mike42/escpos-php/test/bootstrap.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/bootstrap.php rename to public/includes/mike42/escpos-php/test/bootstrap.php diff --git a/htdocs/includes/mike42/escpos-php/test/integration/ExampleTest.php b/public/includes/mike42/escpos-php/test/integration/ExampleTest.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/ExampleTest.php rename to public/includes/mike42/escpos-php/test/integration/ExampleTest.php diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/barcode.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/barcode.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/barcode.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/barcode.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/bit-image.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/bit-image.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/bit-image.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/bit-image.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/character-encodings.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/character-encodings.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/character-encodings.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/character-encodings.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/character-tables.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/character-tables.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/character-tables.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/character-tables.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/demo.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/demo.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/demo.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/demo.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/graphics.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/graphics.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/graphics.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/graphics.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/interface.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/interface.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/interface.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/interface.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/print-from-pdf.bin.z b/public/includes/mike42/escpos-php/test/integration/resources/output/print-from-pdf.bin.z similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/print-from-pdf.bin.z rename to public/includes/mike42/escpos-php/test/integration/resources/output/print-from-pdf.bin.z diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/qr-code.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/qr-code.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/qr-code.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/qr-code.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/receipt-with-logo.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/receipt-with-logo.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/receipt-with-logo.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/receipt-with-logo.bin diff --git a/htdocs/includes/mike42/escpos-php/test/integration/resources/output/text-size.bin b/public/includes/mike42/escpos-php/test/integration/resources/output/text-size.bin similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/integration/resources/output/text-size.bin rename to public/includes/mike42/escpos-php/test/integration/resources/output/text-size.bin diff --git a/htdocs/includes/mike42/escpos-php/test/phpunit.xml b/public/includes/mike42/escpos-php/test/phpunit.xml similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/phpunit.xml rename to public/includes/mike42/escpos-php/test/phpunit.xml diff --git a/htdocs/includes/mike42/escpos-php/test/unit/AbstractCapabilityProfileTest.php b/public/includes/mike42/escpos-php/test/unit/AbstractCapabilityProfileTest.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/AbstractCapabilityProfileTest.php rename to public/includes/mike42/escpos-php/test/unit/AbstractCapabilityProfileTest.php diff --git a/htdocs/includes/mike42/escpos-php/test/unit/EscposImageTest.php b/public/includes/mike42/escpos-php/test/unit/EscposImageTest.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/EscposImageTest.php rename to public/includes/mike42/escpos-php/test/unit/EscposImageTest.php diff --git a/htdocs/includes/mike42/escpos-php/test/unit/EscposPrintBufferTest.php b/public/includes/mike42/escpos-php/test/unit/EscposPrintBufferTest.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/EscposPrintBufferTest.php rename to public/includes/mike42/escpos-php/test/unit/EscposPrintBufferTest.php diff --git a/htdocs/includes/mike42/escpos-php/test/unit/EscposTest.php b/public/includes/mike42/escpos-php/test/unit/EscposTest.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/EscposTest.php rename to public/includes/mike42/escpos-php/test/unit/EscposTest.php diff --git a/htdocs/includes/mike42/escpos-php/test/unit/WindowsPrintConnectorTest.php b/public/includes/mike42/escpos-php/test/unit/WindowsPrintConnectorTest.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/WindowsPrintConnectorTest.php rename to public/includes/mike42/escpos-php/test/unit/WindowsPrintConnectorTest.php diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/black_transparent.gif b/public/includes/mike42/escpos-php/test/unit/resources/black_transparent.gif similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/black_transparent.gif rename to public/includes/mike42/escpos-php/test/unit/resources/black_transparent.gif diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/black_transparent.png b/public/includes/mike42/escpos-php/test/unit/resources/black_transparent.png similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/black_transparent.png rename to public/includes/mike42/escpos-php/test/unit/resources/black_transparent.png diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/black_white.bmp b/public/includes/mike42/escpos-php/test/unit/resources/black_white.bmp similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/black_white.bmp rename to public/includes/mike42/escpos-php/test/unit/resources/black_white.bmp diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/black_white.gif b/public/includes/mike42/escpos-php/test/unit/resources/black_white.gif similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/black_white.gif rename to public/includes/mike42/escpos-php/test/unit/resources/black_white.gif diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/black_white.jpg b/public/includes/mike42/escpos-php/test/unit/resources/black_white.jpg similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/black_white.jpg rename to public/includes/mike42/escpos-php/test/unit/resources/black_white.jpg diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/black_white.png b/public/includes/mike42/escpos-php/test/unit/resources/black_white.png similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/black_white.png rename to public/includes/mike42/escpos-php/test/unit/resources/black_white.png diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_black.bmp b/public/includes/mike42/escpos-php/test/unit/resources/canvas_black.bmp similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_black.bmp rename to public/includes/mike42/escpos-php/test/unit/resources/canvas_black.bmp diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_black.gif b/public/includes/mike42/escpos-php/test/unit/resources/canvas_black.gif similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_black.gif rename to public/includes/mike42/escpos-php/test/unit/resources/canvas_black.gif diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_black.jpg b/public/includes/mike42/escpos-php/test/unit/resources/canvas_black.jpg similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_black.jpg rename to public/includes/mike42/escpos-php/test/unit/resources/canvas_black.jpg diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_black.png b/public/includes/mike42/escpos-php/test/unit/resources/canvas_black.png similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_black.png rename to public/includes/mike42/escpos-php/test/unit/resources/canvas_black.png diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_white.bmp b/public/includes/mike42/escpos-php/test/unit/resources/canvas_white.bmp similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_white.bmp rename to public/includes/mike42/escpos-php/test/unit/resources/canvas_white.bmp diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_white.gif b/public/includes/mike42/escpos-php/test/unit/resources/canvas_white.gif similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_white.gif rename to public/includes/mike42/escpos-php/test/unit/resources/canvas_white.gif diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_white.jpg b/public/includes/mike42/escpos-php/test/unit/resources/canvas_white.jpg similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_white.jpg rename to public/includes/mike42/escpos-php/test/unit/resources/canvas_white.jpg diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_white.png b/public/includes/mike42/escpos-php/test/unit/resources/canvas_white.png similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/canvas_white.png rename to public/includes/mike42/escpos-php/test/unit/resources/canvas_white.png diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/demo.php b/public/includes/mike42/escpos-php/test/unit/resources/demo.php similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/demo.php rename to public/includes/mike42/escpos-php/test/unit/resources/demo.php diff --git a/htdocs/includes/mike42/escpos-php/test/unit/resources/doc.pdf b/public/includes/mike42/escpos-php/test/unit/resources/doc.pdf similarity index 100% rename from htdocs/includes/mike42/escpos-php/test/unit/resources/doc.pdf rename to public/includes/mike42/escpos-php/test/unit/resources/doc.pdf diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/.gitignore b/public/includes/mobiledetect/mobiledetectlib/.gitignore similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/.gitignore rename to public/includes/mobiledetect/mobiledetectlib/.gitignore diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/.php_cs b/public/includes/mobiledetect/mobiledetectlib/.php_cs similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/.php_cs rename to public/includes/mobiledetect/mobiledetectlib/.php_cs diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/.travis.yml b/public/includes/mobiledetect/mobiledetectlib/.travis.yml similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/.travis.yml rename to public/includes/mobiledetect/mobiledetectlib/.travis.yml diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/LICENSE.txt b/public/includes/mobiledetect/mobiledetectlib/LICENSE.txt similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/LICENSE.txt rename to public/includes/mobiledetect/mobiledetectlib/LICENSE.txt diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/Mobile_Detect.json b/public/includes/mobiledetect/mobiledetectlib/Mobile_Detect.json similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/Mobile_Detect.json rename to public/includes/mobiledetect/mobiledetectlib/Mobile_Detect.json diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/Mobile_Detect.php b/public/includes/mobiledetect/mobiledetectlib/Mobile_Detect.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/Mobile_Detect.php rename to public/includes/mobiledetect/mobiledetectlib/Mobile_Detect.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/README.md b/public/includes/mobiledetect/mobiledetectlib/README.md similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/README.md rename to public/includes/mobiledetect/mobiledetectlib/README.md diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/composer.json b/public/includes/mobiledetect/mobiledetectlib/composer.json similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/composer.json rename to public/includes/mobiledetect/mobiledetectlib/composer.json diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/examples/demo.php b/public/includes/mobiledetect/mobiledetectlib/examples/demo.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/examples/demo.php rename to public/includes/mobiledetect/mobiledetectlib/examples/demo.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/examples/session_example.php b/public/includes/mobiledetect/mobiledetectlib/examples/session_example.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/examples/session_example.php rename to public/includes/mobiledetect/mobiledetectlib/examples/session_example.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/examples/test.php b/public/includes/mobiledetect/mobiledetectlib/examples/test.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/examples/test.php rename to public/includes/mobiledetect/mobiledetectlib/examples/test.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/export/exportToJSON.php b/public/includes/mobiledetect/mobiledetectlib/export/exportToJSON.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/export/exportToJSON.php rename to public/includes/mobiledetect/mobiledetectlib/export/exportToJSON.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/namespaced/Detection/MobileDetect.php b/public/includes/mobiledetect/mobiledetectlib/namespaced/Detection/MobileDetect.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/namespaced/Detection/MobileDetect.php rename to public/includes/mobiledetect/mobiledetectlib/namespaced/Detection/MobileDetect.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/BasicsTest.php b/public/includes/mobiledetect/mobiledetectlib/tests/BasicsTest.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/BasicsTest.php rename to public/includes/mobiledetect/mobiledetectlib/tests/BasicsTest.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/UA_List.inc.php b/public/includes/mobiledetect/mobiledetectlib/tests/UA_List.inc.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/UA_List.inc.php rename to public/includes/mobiledetect/mobiledetectlib/tests/UA_List.inc.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/UA_List.pending.txt b/public/includes/mobiledetect/mobiledetectlib/tests/UA_List.pending.txt similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/UA_List.pending.txt rename to public/includes/mobiledetect/mobiledetectlib/tests/UA_List.pending.txt diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/UserAgentTest.php b/public/includes/mobiledetect/mobiledetectlib/tests/UserAgentTest.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/UserAgentTest.php rename to public/includes/mobiledetect/mobiledetectlib/tests/UserAgentTest.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/VendorsTest_tmp.php b/public/includes/mobiledetect/mobiledetectlib/tests/VendorsTest_tmp.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/VendorsTest_tmp.php rename to public/includes/mobiledetect/mobiledetectlib/tests/VendorsTest_tmp.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/bootstrap.php b/public/includes/mobiledetect/mobiledetectlib/tests/bootstrap.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/bootstrap.php rename to public/includes/mobiledetect/mobiledetectlib/tests/bootstrap.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/phpunit.xml b/public/includes/mobiledetect/mobiledetectlib/tests/phpunit.xml similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/phpunit.xml rename to public/includes/mobiledetect/mobiledetectlib/tests/phpunit.xml diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Acer.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Acer.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Acer.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Acer.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Alcatel.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Alcatel.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Alcatel.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Alcatel.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Allview.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Allview.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Allview.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Allview.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Amazon.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Amazon.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Amazon.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Amazon.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Apple.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Apple.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Apple.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Apple.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Archos.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Archos.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Archos.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Archos.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Asus.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Asus.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Asus.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Asus.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Blackberry.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Blackberry.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Blackberry.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Blackberry.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Dell.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Dell.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Dell.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Dell.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Google.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Google.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Google.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Google.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HP.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HP.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HP.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HP.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HTC.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HTC.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HTC.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/HTC.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Huawei.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Huawei.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Huawei.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Huawei.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/LG.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/LG.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/LG.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/LG.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lava.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lava.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lava.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lava.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Leader.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Leader.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Leader.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Leader.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lenovo.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lenovo.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lenovo.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Lenovo.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Mi.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Mi.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Mi.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Mi.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Microsoft.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Microsoft.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Microsoft.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Microsoft.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Motorola.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Motorola.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Motorola.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Motorola.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Nokia.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Nokia.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Nokia.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Nokia.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Onda.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Onda.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Onda.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Onda.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Others.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Others.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Others.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Others.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Prestigio.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Prestigio.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Prestigio.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Prestigio.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Samsung.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Samsung.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Samsung.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Samsung.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Sony.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Sony.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Sony.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Sony.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/SpecialCases.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/SpecialCases.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/SpecialCases.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/SpecialCases.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Vodafone.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Vodafone.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Vodafone.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/Vodafone.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/ZTE.php b/public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/ZTE.php similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/ZTE.php rename to public/includes/mobiledetect/mobiledetectlib/tests/providers/vendors/ZTE.php diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/ualist.json b/public/includes/mobiledetect/mobiledetectlib/tests/ualist.json similarity index 100% rename from htdocs/includes/mobiledetect/mobiledetectlib/tests/ualist.json rename to public/includes/mobiledetect/mobiledetectlib/tests/ualist.json diff --git a/htdocs/includes/nusoap/lib/Mail/mime.php b/public/includes/nusoap/lib/Mail/mime.php similarity index 100% rename from htdocs/includes/nusoap/lib/Mail/mime.php rename to public/includes/nusoap/lib/Mail/mime.php diff --git a/htdocs/includes/nusoap/lib/Mail/mimePart.php b/public/includes/nusoap/lib/Mail/mimePart.php similarity index 100% rename from htdocs/includes/nusoap/lib/Mail/mimePart.php rename to public/includes/nusoap/lib/Mail/mimePart.php diff --git a/htdocs/includes/nusoap/lib/changelog b/public/includes/nusoap/lib/changelog similarity index 100% rename from htdocs/includes/nusoap/lib/changelog rename to public/includes/nusoap/lib/changelog diff --git a/htdocs/includes/nusoap/lib/class.nusoap_base.php b/public/includes/nusoap/lib/class.nusoap_base.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.nusoap_base.php rename to public/includes/nusoap/lib/class.nusoap_base.php diff --git a/htdocs/includes/nusoap/lib/class.soap_fault.php b/public/includes/nusoap/lib/class.soap_fault.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.soap_fault.php rename to public/includes/nusoap/lib/class.soap_fault.php diff --git a/htdocs/includes/nusoap/lib/class.soap_parser.php b/public/includes/nusoap/lib/class.soap_parser.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.soap_parser.php rename to public/includes/nusoap/lib/class.soap_parser.php diff --git a/htdocs/includes/nusoap/lib/class.soap_server.php b/public/includes/nusoap/lib/class.soap_server.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.soap_server.php rename to public/includes/nusoap/lib/class.soap_server.php diff --git a/htdocs/includes/nusoap/lib/class.soap_transport_http.php b/public/includes/nusoap/lib/class.soap_transport_http.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.soap_transport_http.php rename to public/includes/nusoap/lib/class.soap_transport_http.php diff --git a/htdocs/includes/nusoap/lib/class.soap_val.php b/public/includes/nusoap/lib/class.soap_val.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.soap_val.php rename to public/includes/nusoap/lib/class.soap_val.php diff --git a/htdocs/includes/nusoap/lib/class.soapclient.php b/public/includes/nusoap/lib/class.soapclient.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.soapclient.php rename to public/includes/nusoap/lib/class.soapclient.php diff --git a/htdocs/includes/nusoap/lib/class.wsdl.php b/public/includes/nusoap/lib/class.wsdl.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.wsdl.php rename to public/includes/nusoap/lib/class.wsdl.php diff --git a/htdocs/includes/nusoap/lib/class.wsdlcache.php b/public/includes/nusoap/lib/class.wsdlcache.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.wsdlcache.php rename to public/includes/nusoap/lib/class.wsdlcache.php diff --git a/htdocs/includes/nusoap/lib/class.xmlschema.php b/public/includes/nusoap/lib/class.xmlschema.php similarity index 100% rename from htdocs/includes/nusoap/lib/class.xmlschema.php rename to public/includes/nusoap/lib/class.xmlschema.php diff --git a/htdocs/includes/nusoap/lib/nusoap.php b/public/includes/nusoap/lib/nusoap.php similarity index 100% rename from htdocs/includes/nusoap/lib/nusoap.php rename to public/includes/nusoap/lib/nusoap.php diff --git a/htdocs/includes/nusoap/lib/nusoapmime.php b/public/includes/nusoap/lib/nusoapmime.php similarity index 100% rename from htdocs/includes/nusoap/lib/nusoapmime.php rename to public/includes/nusoap/lib/nusoapmime.php diff --git a/htdocs/includes/odtphp/Segment.php b/public/includes/odtphp/Segment.php similarity index 100% rename from htdocs/includes/odtphp/Segment.php rename to public/includes/odtphp/Segment.php diff --git a/htdocs/includes/odtphp/SegmentIterator.php b/public/includes/odtphp/SegmentIterator.php similarity index 100% rename from htdocs/includes/odtphp/SegmentIterator.php rename to public/includes/odtphp/SegmentIterator.php diff --git a/htdocs/includes/odtphp/odf.php b/public/includes/odtphp/odf.php similarity index 100% rename from htdocs/includes/odtphp/odf.php rename to public/includes/odtphp/odf.php diff --git a/htdocs/includes/odtphp/zip/PclZipProxy.php b/public/includes/odtphp/zip/PclZipProxy.php similarity index 100% rename from htdocs/includes/odtphp/zip/PclZipProxy.php rename to public/includes/odtphp/zip/PclZipProxy.php diff --git a/htdocs/includes/odtphp/zip/PhpZipProxy.php b/public/includes/odtphp/zip/PhpZipProxy.php similarity index 100% rename from htdocs/includes/odtphp/zip/PhpZipProxy.php rename to public/includes/odtphp/zip/PhpZipProxy.php diff --git a/htdocs/includes/odtphp/zip/ZipInterface.php b/public/includes/odtphp/zip/ZipInterface.php similarity index 100% rename from htdocs/includes/odtphp/zip/ZipInterface.php rename to public/includes/odtphp/zip/ZipInterface.php diff --git a/htdocs/includes/odtphp/zip/pclzip/gnu-lgpl.txt b/public/includes/odtphp/zip/pclzip/gnu-lgpl.txt similarity index 100% rename from htdocs/includes/odtphp/zip/pclzip/gnu-lgpl.txt rename to public/includes/odtphp/zip/pclzip/gnu-lgpl.txt diff --git a/htdocs/includes/odtphp/zip/pclzip/pclzip.lib.php b/public/includes/odtphp/zip/pclzip/pclzip.lib.php similarity index 100% rename from htdocs/includes/odtphp/zip/pclzip/pclzip.lib.php rename to public/includes/odtphp/zip/pclzip/pclzip.lib.php diff --git a/htdocs/includes/odtphp/zip/pclzip/readme.txt b/public/includes/odtphp/zip/pclzip/readme.txt similarity index 100% rename from htdocs/includes/odtphp/zip/pclzip/readme.txt rename to public/includes/odtphp/zip/pclzip/readme.txt diff --git a/htdocs/includes/php-iban/.gitignore b/public/includes/php-iban/.gitignore similarity index 100% rename from htdocs/includes/php-iban/.gitignore rename to public/includes/php-iban/.gitignore diff --git a/htdocs/includes/php-iban/LICENSE b/public/includes/php-iban/LICENSE similarity index 100% rename from htdocs/includes/php-iban/LICENSE rename to public/includes/php-iban/LICENSE diff --git a/htdocs/includes/php-iban/mistranscriptions.txt b/public/includes/php-iban/mistranscriptions.txt similarity index 100% rename from htdocs/includes/php-iban/mistranscriptions.txt rename to public/includes/php-iban/mistranscriptions.txt diff --git a/htdocs/includes/php-iban/oophp-iban.php b/public/includes/php-iban/oophp-iban.php similarity index 100% rename from htdocs/includes/php-iban/oophp-iban.php rename to public/includes/php-iban/oophp-iban.php diff --git a/htdocs/includes/php-iban/php-iban.php b/public/includes/php-iban/php-iban.php similarity index 100% rename from htdocs/includes/php-iban/php-iban.php rename to public/includes/php-iban/php-iban.php diff --git a/htdocs/includes/php-iban/registry.txt b/public/includes/php-iban/registry.txt similarity index 100% rename from htdocs/includes/php-iban/registry.txt rename to public/includes/php-iban/registry.txt diff --git a/htdocs/includes/phpoffice/phpexcel/.gitattributes b/public/includes/phpoffice/phpexcel/.gitattributes similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/.gitattributes rename to public/includes/phpoffice/phpexcel/.gitattributes diff --git a/htdocs/includes/phpoffice/phpexcel/.gitignore b/public/includes/phpoffice/phpexcel/.gitignore similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/.gitignore rename to public/includes/phpoffice/phpexcel/.gitignore diff --git a/htdocs/includes/phpoffice/phpexcel/.travis.yml b/public/includes/phpoffice/phpexcel/.travis.yml similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/.travis.yml rename to public/includes/phpoffice/phpexcel/.travis.yml diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Autoloader.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Autoloader.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Autoloader.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Autoloader.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/APC.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/APC.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/APC.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/APC.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/CacheBase.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/CacheBase.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/CacheBase.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/CacheBase.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/DiscISAM.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/ICache.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/ICache.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/ICache.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/ICache.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Igbinary.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Igbinary.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Igbinary.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Igbinary.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memcache.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memcache.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memcache.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memcache.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memory.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memory.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memory.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Memory.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemoryGZip.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/MemorySerialized.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/PHPTemp.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite3.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite3.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite3.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/SQLite3.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Wincache.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Wincache.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Wincache.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorage/Wincache.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorageFactory.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorageFactory.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorageFactory.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CachedObjectStorageFactory.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/CyclicReferenceStack.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/CyclicReferenceStack.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/CyclicReferenceStack.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/CyclicReferenceStack.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/Logger.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/Logger.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/Logger.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/CalcEngine/Logger.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Database.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Database.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Database.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Database.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/DateTime.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/DateTime.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/DateTime.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/DateTime.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Engineering.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Engineering.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Engineering.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Engineering.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Exception.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Exception.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Exception.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Exception.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/ExceptionHandler.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/ExceptionHandler.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/ExceptionHandler.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/ExceptionHandler.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Financial.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Financial.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Financial.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Financial.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaParser.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaParser.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaParser.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaParser.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaToken.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaToken.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaToken.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/FormulaToken.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Function.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Function.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Function.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Function.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Functions.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Functions.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Functions.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Functions.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Logical.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Logical.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Logical.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Logical.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/LookupRef.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/LookupRef.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/LookupRef.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/LookupRef.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/MathTrig.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/MathTrig.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/MathTrig.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/MathTrig.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Statistical.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Statistical.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Statistical.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Statistical.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/TextData.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/TextData.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/TextData.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/TextData.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Token/Stack.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Token/Stack.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Token/Stack.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/Token/Stack.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/functionlist.txt b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/functionlist.txt similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/functionlist.txt rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Calculation/functionlist.txt diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/AdvancedValueBinder.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/AdvancedValueBinder.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/AdvancedValueBinder.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/AdvancedValueBinder.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataType.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataType.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataType.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataType.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataValidation.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataValidation.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataValidation.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DataValidation.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DefaultValueBinder.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DefaultValueBinder.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DefaultValueBinder.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/DefaultValueBinder.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/Hyperlink.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/Hyperlink.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/Hyperlink.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/Hyperlink.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/IValueBinder.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/IValueBinder.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/IValueBinder.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Cell/IValueBinder.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Axis.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Axis.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Axis.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Axis.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeries.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeries.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeries.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeries.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeriesValues.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeriesValues.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeriesValues.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/DataSeriesValues.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Exception.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Exception.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Exception.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Exception.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/GridLines.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/GridLines.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/GridLines.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/GridLines.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Layout.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Layout.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Layout.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Layout.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Legend.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Legend.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Legend.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Legend.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/PlotArea.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/PlotArea.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/PlotArea.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/PlotArea.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Properties.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Properties.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Properties.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Properties.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/PHP Charting Libraries.txt diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/jpgraph.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/jpgraph.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/jpgraph.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Renderer/jpgraph.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Title.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Title.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Title.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Chart/Title.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Comment.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Comment.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Comment.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Comment.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentProperties.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentProperties.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentProperties.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentProperties.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentSecurity.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentSecurity.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentSecurity.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/DocumentSecurity.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Exception.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Exception.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Exception.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Exception.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/HashTable.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/HashTable.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/HashTable.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/HashTable.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Helper/HTML.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Helper/HTML.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Helper/HTML.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Helper/HTML.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/IComparable.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/IComparable.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/IComparable.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/IComparable.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/IOFactory.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/IOFactory.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/IOFactory.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/IOFactory.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/NamedRange.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/NamedRange.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/NamedRange.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/NamedRange.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Abstract.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Abstract.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Abstract.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Abstract.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/CSV.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/CSV.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/CSV.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/CSV.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/DefaultReadFilter.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/DefaultReadFilter.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/DefaultReadFilter.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/DefaultReadFilter.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2003XML.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2003XML.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2003XML.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2003XML.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Chart.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Chart.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Chart.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Chart.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Theme.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Theme.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Theme.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel2007/Theme.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/Escher.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/Escher.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/Escher.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/Escher.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/MD5.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/MD5.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/MD5.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/MD5.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/RC4.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/RC4.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/RC4.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Excel5/RC4.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Exception.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Exception.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Exception.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Exception.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Gnumeric.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Gnumeric.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Gnumeric.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/Gnumeric.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/HTML.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/HTML.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/HTML.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/HTML.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReadFilter.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReadFilter.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReadFilter.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReadFilter.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReader.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReader.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReader.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/IReader.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/OOCalc.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/OOCalc.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/OOCalc.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/OOCalc.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/SYLK.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/SYLK.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/SYLK.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Reader/SYLK.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/ReferenceHelper.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/ReferenceHelper.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/ReferenceHelper.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/ReferenceHelper.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/ITextElement.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/ITextElement.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/ITextElement.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/ITextElement.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/Run.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/Run.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/Run.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/Run.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/TextElement.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/TextElement.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/TextElement.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/RichText/TextElement.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Settings.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Settings.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Settings.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Settings.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/CodePage.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/CodePage.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/CodePage.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/CodePage.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Date.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Date.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Date.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Date.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Drawing.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Drawing.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Drawing.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Drawing.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Excel5.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Excel5.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Excel5.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Excel5.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/File.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/File.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/File.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/File.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Font.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Font.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Font.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/Font.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CHANGELOG.TXT diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/CholeskyDecomposition.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/EigenvalueDecomposition.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/LUDecomposition.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/Matrix.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/Matrix.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/Matrix.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/Matrix.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/QRDecomposition.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/SingularValueDecomposition.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Error.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Error.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Error.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Error.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Maths.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Maths.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Maths.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/JAMA/utils/Maths.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/ChainedBlockStream.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/File.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/File.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/File.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/File.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/Root.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/Root.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/Root.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLE/PPS/Root.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLERead.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLERead.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLERead.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/OLERead.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/gnu-lgpl.txt diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/pclzip.lib.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/readme.txt b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/readme.txt similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/readme.txt rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PCLZip/readme.txt diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PasswordHasher.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PasswordHasher.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PasswordHasher.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/PasswordHasher.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/String.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/String.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/String.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/String.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/TimeZone.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/TimeZone.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/TimeZone.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/TimeZone.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/XMLWriter.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/XMLWriter.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/XMLWriter.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/XMLWriter.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipArchive.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipStreamWrapper.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipStreamWrapper.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipStreamWrapper.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/ZipStreamWrapper.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/bestFitClass.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/bestFitClass.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/bestFitClass.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/bestFitClass.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/exponentialBestFitClass.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/linearBestFitClass.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/linearBestFitClass.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/linearBestFitClass.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/linearBestFitClass.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/logarithmicBestFitClass.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/polynomialBestFitClass.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/powerBestFitClass.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/powerBestFitClass.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/powerBestFitClass.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/powerBestFitClass.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/trendClass.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/trendClass.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/trendClass.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Shared/trend/trendClass.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Alignment.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Alignment.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Alignment.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Alignment.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Border.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Border.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Border.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Border.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Borders.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Borders.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Borders.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Borders.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Color.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Color.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Color.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Color.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Conditional.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Conditional.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Conditional.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Conditional.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Fill.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Fill.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Fill.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Fill.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Font.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Font.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Font.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Font.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/NumberFormat.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/NumberFormat.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/NumberFormat.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/NumberFormat.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Protection.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Protection.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Protection.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Protection.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Supervisor.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Supervisor.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Supervisor.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Style/Supervisor.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/AutoFilter/Column/Rule.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/BaseDrawing.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/BaseDrawing.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/BaseDrawing.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/BaseDrawing.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/CellIterator.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/CellIterator.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/CellIterator.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/CellIterator.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Column.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Column.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Column.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Column.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnCellIterator.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnCellIterator.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnCellIterator.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnCellIterator.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnDimension.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnDimension.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnDimension.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnDimension.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnIterator.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnIterator.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnIterator.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/ColumnIterator.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing/Shadow.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing/Shadow.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing/Shadow.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing/Shadow.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooter.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooter.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooter.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooter.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/HeaderFooterDrawing.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/MemoryDrawing.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/MemoryDrawing.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/MemoryDrawing.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/MemoryDrawing.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageMargins.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageMargins.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageMargins.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageMargins.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageSetup.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageSetup.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageSetup.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/PageSetup.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Protection.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Protection.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Protection.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Protection.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Row.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Row.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Row.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Row.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowCellIterator.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowCellIterator.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowCellIterator.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowCellIterator.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowDimension.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowDimension.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowDimension.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowDimension.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowIterator.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowIterator.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowIterator.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/RowIterator.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/SheetView.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/SheetView.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/SheetView.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/SheetView.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/WorksheetIterator.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/WorksheetIterator.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/WorksheetIterator.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/WorksheetIterator.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Abstract.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Abstract.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Abstract.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Abstract.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/CSV.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/CSV.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/CSV.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/CSV.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Chart.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Chart.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Chart.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Chart.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Comments.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Comments.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Comments.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Comments.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/ContentTypes.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/DocProps.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/DocProps.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/DocProps.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/DocProps.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Drawing.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Drawing.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Drawing.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Drawing.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Rels.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Rels.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Rels.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Rels.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsRibbon.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsRibbon.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsRibbon.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsRibbon.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsVBA.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsVBA.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsVBA.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/RelsVBA.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/StringTable.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/StringTable.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/StringTable.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/StringTable.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Style.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Style.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Style.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Style.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Theme.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Theme.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Theme.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Theme.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Workbook.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Workbook.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Workbook.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Workbook.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/WriterPart.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/WriterPart.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/WriterPart.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/WriterPart.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/BIFFwriter.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Escher.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Escher.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Escher.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Escher.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Font.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Font.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Font.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Font.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Parser.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Parser.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Parser.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Parser.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Workbook.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Workbook.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Workbook.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Workbook.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Worksheet.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Worksheet.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Worksheet.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Worksheet.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Xf.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Xf.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Xf.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Xf.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Exception.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Exception.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Exception.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/Exception.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/HTML.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/HTML.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/HTML.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/HTML.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/IWriter.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/IWriter.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/IWriter.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/IWriter.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Cell/Comment.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Cell/Comment.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Cell/Comment.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Cell/Comment.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Content.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Content.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Content.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Content.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Meta.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Meta.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Meta.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Meta.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/MetaInf.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/MetaInf.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/MetaInf.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/MetaInf.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Mimetype.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Mimetype.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Mimetype.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Mimetype.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Settings.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Settings.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Settings.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Settings.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Styles.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Styles.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Styles.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Styles.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Thumbnails.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Thumbnails.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Thumbnails.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/Thumbnails.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/WriterPart.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/WriterPart.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/WriterPart.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/OpenDocument/WriterPart.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/Core.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/Core.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/Core.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/Core.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/DomPDF.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/DomPDF.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/DomPDF.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/DomPDF.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/mPDF.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/mPDF.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/mPDF.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/mPDF.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/tcPDF.php b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/tcPDF.php similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/tcPDF.php rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/Writer/PDF/tcPDF.php diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/bg/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/bg/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/bg/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/bg/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/cs/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/da/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/de/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/en/uk/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/en/uk/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/en/uk/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/en/uk/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/es/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fi/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/fr/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/hu/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/it/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/nl/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/no/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pl/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/br/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/pt/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/ru/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/sv/functions diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/config b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/config similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/config rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/config diff --git a/htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/functions b/public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/functions similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/functions rename to public/includes/phpoffice/phpexcel/Classes/PHPExcel/locale/tr/functions diff --git a/htdocs/includes/phpoffice/phpexcel/changelog.txt b/public/includes/phpoffice/phpexcel/changelog.txt similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/changelog.txt rename to public/includes/phpoffice/phpexcel/changelog.txt diff --git a/htdocs/includes/phpoffice/phpexcel/composer.json b/public/includes/phpoffice/phpexcel/composer.json similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/composer.json rename to public/includes/phpoffice/phpexcel/composer.json diff --git a/htdocs/includes/phpoffice/phpexcel/install.txt b/public/includes/phpoffice/phpexcel/install.txt similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/install.txt rename to public/includes/phpoffice/phpexcel/install.txt diff --git a/htdocs/includes/phpoffice/phpexcel/license.md b/public/includes/phpoffice/phpexcel/license.md similarity index 100% rename from htdocs/includes/phpoffice/phpexcel/license.md rename to public/includes/phpoffice/phpexcel/license.md diff --git a/htdocs/includes/printipp/BasicIPP.php b/public/includes/printipp/BasicIPP.php similarity index 100% rename from htdocs/includes/printipp/BasicIPP.php rename to public/includes/printipp/BasicIPP.php diff --git a/htdocs/includes/printipp/CupsPrintIPP.php b/public/includes/printipp/CupsPrintIPP.php similarity index 100% rename from htdocs/includes/printipp/CupsPrintIPP.php rename to public/includes/printipp/CupsPrintIPP.php diff --git a/htdocs/includes/printipp/ExtendedPrintIPP.php b/public/includes/printipp/ExtendedPrintIPP.php similarity index 100% rename from htdocs/includes/printipp/ExtendedPrintIPP.php rename to public/includes/printipp/ExtendedPrintIPP.php diff --git a/htdocs/includes/printipp/PrintIPP.php b/public/includes/printipp/PrintIPP.php similarity index 100% rename from htdocs/includes/printipp/PrintIPP.php rename to public/includes/printipp/PrintIPP.php diff --git a/htdocs/includes/printipp/http_class.php b/public/includes/printipp/http_class.php similarity index 100% rename from htdocs/includes/printipp/http_class.php rename to public/includes/printipp/http_class.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/ApcCache.php b/public/includes/restler/framework/Luracast/Restler/ApcCache.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/ApcCache.php rename to public/includes/restler/framework/Luracast/Restler/ApcCache.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/AutoLoader.php b/public/includes/restler/framework/Luracast/Restler/AutoLoader.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/AutoLoader.php rename to public/includes/restler/framework/Luracast/Restler/AutoLoader.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/CommentParser.php b/public/includes/restler/framework/Luracast/Restler/CommentParser.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/CommentParser.php rename to public/includes/restler/framework/Luracast/Restler/CommentParser.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Compose.php b/public/includes/restler/framework/Luracast/Restler/Compose.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Compose.php rename to public/includes/restler/framework/Luracast/Restler/Compose.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/ApiMethodInfo.php b/public/includes/restler/framework/Luracast/Restler/Data/ApiMethodInfo.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/ApiMethodInfo.php rename to public/includes/restler/framework/Luracast/Restler/Data/ApiMethodInfo.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/Arr.php b/public/includes/restler/framework/Luracast/Restler/Data/Arr.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/Arr.php rename to public/includes/restler/framework/Luracast/Restler/Data/Arr.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/Invalid.php b/public/includes/restler/framework/Luracast/Restler/Data/Invalid.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/Invalid.php rename to public/includes/restler/framework/Luracast/Restler/Data/Invalid.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/Object.php b/public/includes/restler/framework/Luracast/Restler/Data/Object.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/Object.php rename to public/includes/restler/framework/Luracast/Restler/Data/Object.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/Text.php b/public/includes/restler/framework/Luracast/Restler/Data/Text.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/Text.php rename to public/includes/restler/framework/Luracast/Restler/Data/Text.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/ValidationInfo.php b/public/includes/restler/framework/Luracast/Restler/Data/ValidationInfo.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/ValidationInfo.php rename to public/includes/restler/framework/Luracast/Restler/Data/ValidationInfo.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/Validator.php b/public/includes/restler/framework/Luracast/Restler/Data/Validator.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/Validator.php rename to public/includes/restler/framework/Luracast/Restler/Data/Validator.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/ValueObject.php b/public/includes/restler/framework/Luracast/Restler/Data/ValueObject.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/ValueObject.php rename to public/includes/restler/framework/Luracast/Restler/Data/ValueObject.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/iValidate.php b/public/includes/restler/framework/Luracast/Restler/Data/iValidate.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/iValidate.php rename to public/includes/restler/framework/Luracast/Restler/Data/iValidate.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Data/iValueObject.php b/public/includes/restler/framework/Luracast/Restler/Data/iValueObject.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Data/iValueObject.php rename to public/includes/restler/framework/Luracast/Restler/Data/iValueObject.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Defaults.php b/public/includes/restler/framework/Luracast/Restler/Defaults.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Defaults.php rename to public/includes/restler/framework/Luracast/Restler/Defaults.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/EventDispatcher.php b/public/includes/restler/framework/Luracast/Restler/EventDispatcher.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/EventDispatcher.php rename to public/includes/restler/framework/Luracast/Restler/EventDispatcher.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Explorer.php b/public/includes/restler/framework/Luracast/Restler/Explorer.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Explorer.php rename to public/includes/restler/framework/Luracast/Restler/Explorer.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/ExplorerInfo.php b/public/includes/restler/framework/Luracast/Restler/ExplorerInfo.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/ExplorerInfo.php rename to public/includes/restler/framework/Luracast/Restler/ExplorerInfo.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Filter/RateLimit.php b/public/includes/restler/framework/Luracast/Restler/Filter/RateLimit.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Filter/RateLimit.php rename to public/includes/restler/framework/Luracast/Restler/Filter/RateLimit.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Flash.php b/public/includes/restler/framework/Luracast/Restler/Flash.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Flash.php rename to public/includes/restler/framework/Luracast/Restler/Flash.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/AmfFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/AmfFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/AmfFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/AmfFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/CsvFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/CsvFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/CsvFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/CsvFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/DependentFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/DependentFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/DependentFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/DependentFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/DependentMultiFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/DependentMultiFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/DependentMultiFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/DependentMultiFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/Format.php b/public/includes/restler/framework/Luracast/Restler/Format/Format.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/Format.php rename to public/includes/restler/framework/Luracast/Restler/Format/Format.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/HtmlFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/HtmlFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/HtmlFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/HtmlFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/JsFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/JsFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/JsFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/JsFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/JsonFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/JsonFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/JsonFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/JsonFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/MultiFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/MultiFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/MultiFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/MultiFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/PlistFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/PlistFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/PlistFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/PlistFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/TsvFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/TsvFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/TsvFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/TsvFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/UploadFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/UploadFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/UploadFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/UploadFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/UrlEncodedFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/UrlEncodedFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/UrlEncodedFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/UrlEncodedFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/XmlFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/XmlFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/XmlFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/XmlFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/YamlFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/YamlFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/YamlFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/YamlFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/iDecodeStream.php b/public/includes/restler/framework/Luracast/Restler/Format/iDecodeStream.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/iDecodeStream.php rename to public/includes/restler/framework/Luracast/Restler/Format/iDecodeStream.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Format/iFormat.php b/public/includes/restler/framework/Luracast/Restler/Format/iFormat.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Format/iFormat.php rename to public/includes/restler/framework/Luracast/Restler/Format/iFormat.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/HumanReadableCache.php b/public/includes/restler/framework/Luracast/Restler/HumanReadableCache.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/HumanReadableCache.php rename to public/includes/restler/framework/Luracast/Restler/HumanReadableCache.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/InvalidAuthCredentials.php b/public/includes/restler/framework/Luracast/Restler/InvalidAuthCredentials.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/InvalidAuthCredentials.php rename to public/includes/restler/framework/Luracast/Restler/InvalidAuthCredentials.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/MemcacheCache.php b/public/includes/restler/framework/Luracast/Restler/MemcacheCache.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/MemcacheCache.php rename to public/includes/restler/framework/Luracast/Restler/MemcacheCache.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/PassThrough.php b/public/includes/restler/framework/Luracast/Restler/PassThrough.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/PassThrough.php rename to public/includes/restler/framework/Luracast/Restler/PassThrough.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/README.md b/public/includes/restler/framework/Luracast/Restler/README.md similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/README.md rename to public/includes/restler/framework/Luracast/Restler/README.md diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Redirect.php b/public/includes/restler/framework/Luracast/Restler/Redirect.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Redirect.php rename to public/includes/restler/framework/Luracast/Restler/Redirect.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Resources.php b/public/includes/restler/framework/Luracast/Restler/Resources.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Resources.php rename to public/includes/restler/framework/Luracast/Restler/Resources.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/RestException.php b/public/includes/restler/framework/Luracast/Restler/RestException.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/RestException.php rename to public/includes/restler/framework/Luracast/Restler/RestException.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Restler.php b/public/includes/restler/framework/Luracast/Restler/Restler.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Restler.php rename to public/includes/restler/framework/Luracast/Restler/Restler.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Routes.php b/public/includes/restler/framework/Luracast/Restler/Routes.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Routes.php rename to public/includes/restler/framework/Luracast/Restler/Routes.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Scope.php b/public/includes/restler/framework/Luracast/Restler/Scope.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Scope.php rename to public/includes/restler/framework/Luracast/Restler/Scope.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/UI/Emmet.php b/public/includes/restler/framework/Luracast/Restler/UI/Emmet.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/UI/Emmet.php rename to public/includes/restler/framework/Luracast/Restler/UI/Emmet.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/UI/FormStyles.php b/public/includes/restler/framework/Luracast/Restler/UI/FormStyles.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/UI/FormStyles.php rename to public/includes/restler/framework/Luracast/Restler/UI/FormStyles.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/UI/Forms.php b/public/includes/restler/framework/Luracast/Restler/UI/Forms.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/UI/Forms.php rename to public/includes/restler/framework/Luracast/Restler/UI/Forms.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/UI/Nav.php b/public/includes/restler/framework/Luracast/Restler/UI/Nav.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/UI/Nav.php rename to public/includes/restler/framework/Luracast/Restler/UI/Nav.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/UI/Tags.php b/public/includes/restler/framework/Luracast/Restler/UI/Tags.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/UI/Tags.php rename to public/includes/restler/framework/Luracast/Restler/UI/Tags.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/User.php b/public/includes/restler/framework/Luracast/Restler/User.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/User.php rename to public/includes/restler/framework/Luracast/Restler/User.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/Util.php b/public/includes/restler/framework/Luracast/Restler/Util.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/Util.php rename to public/includes/restler/framework/Luracast/Restler/Util.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/compatibility/iAuthenticate.php b/public/includes/restler/framework/Luracast/Restler/compatibility/iAuthenticate.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/compatibility/iAuthenticate.php rename to public/includes/restler/framework/Luracast/Restler/compatibility/iAuthenticate.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/compatibility/restler1.php b/public/includes/restler/framework/Luracast/Restler/compatibility/restler1.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/compatibility/restler1.php rename to public/includes/restler/framework/Luracast/Restler/compatibility/restler1.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/compatibility/restler2.php b/public/includes/restler/framework/Luracast/Restler/compatibility/restler2.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/compatibility/restler2.php rename to public/includes/restler/framework/Luracast/Restler/compatibility/restler2.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/composer.json b/public/includes/restler/framework/Luracast/Restler/composer.json similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/composer.json rename to public/includes/restler/framework/Luracast/Restler/composer.json diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/css/reset.css b/public/includes/restler/framework/Luracast/Restler/explorer/css/reset.css similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/css/reset.css rename to public/includes/restler/framework/Luracast/Restler/explorer/css/reset.css diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/css/screen.css b/public/includes/restler/framework/Luracast/Restler/explorer/css/screen.css similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/css/screen.css rename to public/includes/restler/framework/Luracast/Restler/explorer/css/screen.css diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/images/explorer_icons.png b/public/includes/restler/framework/Luracast/Restler/explorer/images/explorer_icons.png similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/images/explorer_icons.png rename to public/includes/restler/framework/Luracast/Restler/explorer/images/explorer_icons.png diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/images/logo_small.png b/public/includes/restler/framework/Luracast/Restler/explorer/images/logo_small.png similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/images/logo_small.png rename to public/includes/restler/framework/Luracast/Restler/explorer/images/logo_small.png diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/images/throbber.gif b/public/includes/restler/framework/Luracast/Restler/explorer/images/throbber.gif similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/images/throbber.gif rename to public/includes/restler/framework/Luracast/Restler/explorer/images/throbber.gif diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/index.html b/public/includes/restler/framework/Luracast/Restler/explorer/index.html similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/index.html rename to public/includes/restler/framework/Luracast/Restler/explorer/index.html diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/backbone-min.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/backbone-min.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/backbone-min.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/backbone-min.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/handlebars-1.0.0.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/handlebars-1.0.0.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/handlebars-1.0.0.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/handlebars-1.0.0.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/highlight.7.3.pack.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/highlight.7.3.pack.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/highlight.7.3.pack.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/highlight.7.3.pack.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/jquery-1.8.0.min.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/jquery-1.8.0.min.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/jquery-1.8.0.min.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/jquery-1.8.0.min.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.ba-bbq.min.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.ba-bbq.min.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.ba-bbq.min.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.ba-bbq.min.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.slideto.min.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.slideto.min.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.slideto.min.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.slideto.min.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.wiggle.min.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.wiggle.min.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.wiggle.min.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/jquery.wiggle.min.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/shred.bundle.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/shred.bundle.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/shred.bundle.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/shred.bundle.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/shred/content.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/shred/content.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/shred/content.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/shred/content.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/swagger-oauth.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/swagger-oauth.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/swagger-oauth.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/swagger-oauth.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/swagger.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/swagger.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/swagger.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/swagger.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/underscore-min.js b/public/includes/restler/framework/Luracast/Restler/explorer/lib/underscore-min.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/lib/underscore-min.js rename to public/includes/restler/framework/Luracast/Restler/explorer/lib/underscore-min.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/o2c.html b/public/includes/restler/framework/Luracast/Restler/explorer/o2c.html similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/o2c.html rename to public/includes/restler/framework/Luracast/Restler/explorer/o2c.html diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.js b/public/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.js rename to public/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.min.js b/public/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.min.js similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.min.js rename to public/includes/restler/framework/Luracast/Restler/explorer/swagger-ui.min.js diff --git a/htdocs/includes/restler/framework/Luracast/Restler/iAuthenticate.php b/public/includes/restler/framework/Luracast/Restler/iAuthenticate.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/iAuthenticate.php rename to public/includes/restler/framework/Luracast/Restler/iAuthenticate.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/iCache.php b/public/includes/restler/framework/Luracast/Restler/iCache.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/iCache.php rename to public/includes/restler/framework/Luracast/Restler/iCache.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/iCompose.php b/public/includes/restler/framework/Luracast/Restler/iCompose.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/iCompose.php rename to public/includes/restler/framework/Luracast/Restler/iCompose.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/iFilter.php b/public/includes/restler/framework/Luracast/Restler/iFilter.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/iFilter.php rename to public/includes/restler/framework/Luracast/Restler/iFilter.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/iIdentifyUser.php b/public/includes/restler/framework/Luracast/Restler/iIdentifyUser.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/iIdentifyUser.php rename to public/includes/restler/framework/Luracast/Restler/iIdentifyUser.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/iProvideMultiVersionApi.php b/public/includes/restler/framework/Luracast/Restler/iProvideMultiVersionApi.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/iProvideMultiVersionApi.php rename to public/includes/restler/framework/Luracast/Restler/iProvideMultiVersionApi.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/iUseAuthentication.php b/public/includes/restler/framework/Luracast/Restler/iUseAuthentication.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/iUseAuthentication.php rename to public/includes/restler/framework/Luracast/Restler/iUseAuthentication.php diff --git a/htdocs/includes/restler/framework/Luracast/Restler/views/debug.css b/public/includes/restler/framework/Luracast/Restler/views/debug.css similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/views/debug.css rename to public/includes/restler/framework/Luracast/Restler/views/debug.css diff --git a/htdocs/includes/restler/framework/Luracast/Restler/views/debug.php b/public/includes/restler/framework/Luracast/Restler/views/debug.php similarity index 100% rename from htdocs/includes/restler/framework/Luracast/Restler/views/debug.php rename to public/includes/restler/framework/Luracast/Restler/views/debug.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift.php b/public/includes/swiftmailer/lib/classes/Swift.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift.php rename to public/includes/swiftmailer/lib/classes/Swift.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Attachment.php b/public/includes/swiftmailer/lib/classes/Swift/Attachment.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Attachment.php rename to public/includes/swiftmailer/lib/classes/Swift/Attachment.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/ByteStream/AbstractFilterableInputStream.php b/public/includes/swiftmailer/lib/classes/Swift/ByteStream/AbstractFilterableInputStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/ByteStream/AbstractFilterableInputStream.php rename to public/includes/swiftmailer/lib/classes/Swift/ByteStream/AbstractFilterableInputStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/ByteStream/ArrayByteStream.php b/public/includes/swiftmailer/lib/classes/Swift/ByteStream/ArrayByteStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/ByteStream/ArrayByteStream.php rename to public/includes/swiftmailer/lib/classes/Swift/ByteStream/ArrayByteStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/ByteStream/FileByteStream.php b/public/includes/swiftmailer/lib/classes/Swift/ByteStream/FileByteStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/ByteStream/FileByteStream.php rename to public/includes/swiftmailer/lib/classes/Swift/ByteStream/FileByteStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/ByteStream/TemporaryFileByteStream.php b/public/includes/swiftmailer/lib/classes/Swift/ByteStream/TemporaryFileByteStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/ByteStream/TemporaryFileByteStream.php rename to public/includes/swiftmailer/lib/classes/Swift/ByteStream/TemporaryFileByteStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReader.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterReader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReader.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterReader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReader/GenericFixedWidthReader.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterReader/GenericFixedWidthReader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReader/GenericFixedWidthReader.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterReader/GenericFixedWidthReader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReader/UsAsciiReader.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterReader/UsAsciiReader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReader/UsAsciiReader.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterReader/UsAsciiReader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReader/Utf8Reader.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterReader/Utf8Reader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReader/Utf8Reader.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterReader/Utf8Reader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory/SimpleCharacterReaderFactory.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory/SimpleCharacterReaderFactory.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory/SimpleCharacterReaderFactory.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterReaderFactory/SimpleCharacterReaderFactory.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterStream.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterStream.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterStream/ArrayCharacterStream.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterStream/ArrayCharacterStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterStream/ArrayCharacterStream.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterStream/ArrayCharacterStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/CharacterStream/NgCharacterStream.php b/public/includes/swiftmailer/lib/classes/Swift/CharacterStream/NgCharacterStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/CharacterStream/NgCharacterStream.php rename to public/includes/swiftmailer/lib/classes/Swift/CharacterStream/NgCharacterStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/ConfigurableSpool.php b/public/includes/swiftmailer/lib/classes/Swift/ConfigurableSpool.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/ConfigurableSpool.php rename to public/includes/swiftmailer/lib/classes/Swift/ConfigurableSpool.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/DependencyContainer.php b/public/includes/swiftmailer/lib/classes/Swift/DependencyContainer.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/DependencyContainer.php rename to public/includes/swiftmailer/lib/classes/Swift/DependencyContainer.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/DependencyException.php b/public/includes/swiftmailer/lib/classes/Swift/DependencyException.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/DependencyException.php rename to public/includes/swiftmailer/lib/classes/Swift/DependencyException.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/EmbeddedFile.php b/public/includes/swiftmailer/lib/classes/Swift/EmbeddedFile.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/EmbeddedFile.php rename to public/includes/swiftmailer/lib/classes/Swift/EmbeddedFile.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Encoder.php b/public/includes/swiftmailer/lib/classes/Swift/Encoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Encoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Encoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Encoder/Base64Encoder.php b/public/includes/swiftmailer/lib/classes/Swift/Encoder/Base64Encoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Encoder/Base64Encoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Encoder/Base64Encoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Encoder/QpEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Encoder/QpEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Encoder/QpEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Encoder/QpEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Encoder/Rfc2231Encoder.php b/public/includes/swiftmailer/lib/classes/Swift/Encoder/Rfc2231Encoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Encoder/Rfc2231Encoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Encoder/Rfc2231Encoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Encoding.php b/public/includes/swiftmailer/lib/classes/Swift/Encoding.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Encoding.php rename to public/includes/swiftmailer/lib/classes/Swift/Encoding.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/CommandEvent.php b/public/includes/swiftmailer/lib/classes/Swift/Events/CommandEvent.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/CommandEvent.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/CommandEvent.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/CommandListener.php b/public/includes/swiftmailer/lib/classes/Swift/Events/CommandListener.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/CommandListener.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/CommandListener.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/Event.php b/public/includes/swiftmailer/lib/classes/Swift/Events/Event.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/Event.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/Event.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/EventDispatcher.php b/public/includes/swiftmailer/lib/classes/Swift/Events/EventDispatcher.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/EventDispatcher.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/EventDispatcher.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/EventListener.php b/public/includes/swiftmailer/lib/classes/Swift/Events/EventListener.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/EventListener.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/EventListener.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/EventObject.php b/public/includes/swiftmailer/lib/classes/Swift/Events/EventObject.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/EventObject.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/EventObject.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/ResponseEvent.php b/public/includes/swiftmailer/lib/classes/Swift/Events/ResponseEvent.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/ResponseEvent.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/ResponseEvent.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/ResponseListener.php b/public/includes/swiftmailer/lib/classes/Swift/Events/ResponseListener.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/ResponseListener.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/ResponseListener.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/SendEvent.php b/public/includes/swiftmailer/lib/classes/Swift/Events/SendEvent.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/SendEvent.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/SendEvent.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/SendListener.php b/public/includes/swiftmailer/lib/classes/Swift/Events/SendListener.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/SendListener.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/SendListener.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/SimpleEventDispatcher.php b/public/includes/swiftmailer/lib/classes/Swift/Events/SimpleEventDispatcher.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/SimpleEventDispatcher.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/SimpleEventDispatcher.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeEvent.php b/public/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeEvent.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeEvent.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeEvent.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeListener.php b/public/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeListener.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeListener.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/TransportChangeListener.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionEvent.php b/public/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionEvent.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionEvent.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionEvent.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionListener.php b/public/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionListener.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionListener.php rename to public/includes/swiftmailer/lib/classes/Swift/Events/TransportExceptionListener.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/FailoverTransport.php b/public/includes/swiftmailer/lib/classes/Swift/FailoverTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/FailoverTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/FailoverTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/FileSpool.php b/public/includes/swiftmailer/lib/classes/Swift/FileSpool.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/FileSpool.php rename to public/includes/swiftmailer/lib/classes/Swift/FileSpool.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/FileStream.php b/public/includes/swiftmailer/lib/classes/Swift/FileStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/FileStream.php rename to public/includes/swiftmailer/lib/classes/Swift/FileStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Filterable.php b/public/includes/swiftmailer/lib/classes/Swift/Filterable.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Filterable.php rename to public/includes/swiftmailer/lib/classes/Swift/Filterable.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Image.php b/public/includes/swiftmailer/lib/classes/Swift/Image.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Image.php rename to public/includes/swiftmailer/lib/classes/Swift/Image.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/InputByteStream.php b/public/includes/swiftmailer/lib/classes/Swift/InputByteStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/InputByteStream.php rename to public/includes/swiftmailer/lib/classes/Swift/InputByteStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/IoException.php b/public/includes/swiftmailer/lib/classes/Swift/IoException.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/IoException.php rename to public/includes/swiftmailer/lib/classes/Swift/IoException.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache.php b/public/includes/swiftmailer/lib/classes/Swift/KeyCache.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache.php rename to public/includes/swiftmailer/lib/classes/Swift/KeyCache.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/ArrayKeyCache.php b/public/includes/swiftmailer/lib/classes/Swift/KeyCache/ArrayKeyCache.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/ArrayKeyCache.php rename to public/includes/swiftmailer/lib/classes/Swift/KeyCache/ArrayKeyCache.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/DiskKeyCache.php b/public/includes/swiftmailer/lib/classes/Swift/KeyCache/DiskKeyCache.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/DiskKeyCache.php rename to public/includes/swiftmailer/lib/classes/Swift/KeyCache/DiskKeyCache.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/KeyCacheInputStream.php b/public/includes/swiftmailer/lib/classes/Swift/KeyCache/KeyCacheInputStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/KeyCacheInputStream.php rename to public/includes/swiftmailer/lib/classes/Swift/KeyCache/KeyCacheInputStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/NullKeyCache.php b/public/includes/swiftmailer/lib/classes/Swift/KeyCache/NullKeyCache.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/NullKeyCache.php rename to public/includes/swiftmailer/lib/classes/Swift/KeyCache/NullKeyCache.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/SimpleKeyCacheInputStream.php b/public/includes/swiftmailer/lib/classes/Swift/KeyCache/SimpleKeyCacheInputStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/KeyCache/SimpleKeyCacheInputStream.php rename to public/includes/swiftmailer/lib/classes/Swift/KeyCache/SimpleKeyCacheInputStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/LoadBalancedTransport.php b/public/includes/swiftmailer/lib/classes/Swift/LoadBalancedTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/LoadBalancedTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/LoadBalancedTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/MailTransport.php b/public/includes/swiftmailer/lib/classes/Swift/MailTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/MailTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/MailTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mailer.php b/public/includes/swiftmailer/lib/classes/Swift/Mailer.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mailer.php rename to public/includes/swiftmailer/lib/classes/Swift/Mailer.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mailer/ArrayRecipientIterator.php b/public/includes/swiftmailer/lib/classes/Swift/Mailer/ArrayRecipientIterator.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mailer/ArrayRecipientIterator.php rename to public/includes/swiftmailer/lib/classes/Swift/Mailer/ArrayRecipientIterator.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mailer/RecipientIterator.php b/public/includes/swiftmailer/lib/classes/Swift/Mailer/RecipientIterator.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mailer/RecipientIterator.php rename to public/includes/swiftmailer/lib/classes/Swift/Mailer/RecipientIterator.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/MemorySpool.php b/public/includes/swiftmailer/lib/classes/Swift/MemorySpool.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/MemorySpool.php rename to public/includes/swiftmailer/lib/classes/Swift/MemorySpool.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Message.php b/public/includes/swiftmailer/lib/classes/Swift/Message.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Message.php rename to public/includes/swiftmailer/lib/classes/Swift/Message.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Attachment.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Attachment.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Attachment.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Attachment.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/CharsetObserver.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/CharsetObserver.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/CharsetObserver.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/CharsetObserver.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/Base64ContentEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/Base64ContentEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/Base64ContentEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/Base64ContentEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/NativeQpContentEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/NativeQpContentEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/NativeQpContentEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/NativeQpContentEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/PlainContentEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/PlainContentEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/PlainContentEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/PlainContentEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoderProxy.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoderProxy.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoderProxy.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/QpContentEncoderProxy.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/RawContentEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/RawContentEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/RawContentEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/ContentEncoder/RawContentEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/EmbeddedFile.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/EmbeddedFile.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/EmbeddedFile.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/EmbeddedFile.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/EncodingObserver.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/EncodingObserver.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/EncodingObserver.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/EncodingObserver.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Grammar.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Grammar.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Grammar.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Grammar.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Header.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Header.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Header.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Header.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/Base64HeaderEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/Base64HeaderEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/Base64HeaderEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/Base64HeaderEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/QpHeaderEncoder.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/QpHeaderEncoder.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/QpHeaderEncoder.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/QpHeaderEncoder.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderFactory.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderFactory.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderFactory.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderFactory.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderSet.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderSet.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/HeaderSet.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/HeaderSet.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/AbstractHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/AbstractHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/AbstractHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/AbstractHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/DateHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/DateHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/DateHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/DateHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/IdentificationHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/IdentificationHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/IdentificationHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/IdentificationHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/OpenDKIMHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/OpenDKIMHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/OpenDKIMHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/OpenDKIMHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/ParameterizedHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/ParameterizedHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/ParameterizedHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/ParameterizedHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/PathHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/PathHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/PathHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/PathHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/UnstructuredHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/UnstructuredHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Headers/UnstructuredHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Headers/UnstructuredHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Message.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/Message.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/Message.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/Message.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/MimeEntity.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/MimeEntity.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/MimeEntity.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/MimeEntity.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/MimePart.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/MimePart.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/MimePart.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/MimePart.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ParameterizedHeader.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/ParameterizedHeader.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/ParameterizedHeader.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/ParameterizedHeader.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderFactory.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderFactory.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderFactory.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderFactory.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderSet.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderSet.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderSet.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/SimpleHeaderSet.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMessage.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMessage.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMessage.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMessage.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMimeEntity.php b/public/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMimeEntity.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMimeEntity.php rename to public/includes/swiftmailer/lib/classes/Swift/Mime/SimpleMimeEntity.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/MimePart.php b/public/includes/swiftmailer/lib/classes/Swift/MimePart.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/MimePart.php rename to public/includes/swiftmailer/lib/classes/Swift/MimePart.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/NullTransport.php b/public/includes/swiftmailer/lib/classes/Swift/NullTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/NullTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/NullTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/OutputByteStream.php b/public/includes/swiftmailer/lib/classes/Swift/OutputByteStream.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/OutputByteStream.php rename to public/includes/swiftmailer/lib/classes/Swift/OutputByteStream.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/AntiFloodPlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/AntiFloodPlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/AntiFloodPlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/AntiFloodPlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/BandwidthMonitorPlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/BandwidthMonitorPlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/BandwidthMonitorPlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/BandwidthMonitorPlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Decorator/Replacements.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Decorator/Replacements.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Decorator/Replacements.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Decorator/Replacements.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/DecoratorPlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/DecoratorPlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/DecoratorPlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/DecoratorPlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/ImpersonatePlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/ImpersonatePlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/ImpersonatePlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/ImpersonatePlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Logger.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Logger.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Logger.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Logger.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/LoggerPlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/LoggerPlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/LoggerPlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/LoggerPlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/ArrayLogger.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/ArrayLogger.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/ArrayLogger.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/ArrayLogger.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/EchoLogger.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/EchoLogger.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/EchoLogger.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Loggers/EchoLogger.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/MessageLogger.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/MessageLogger.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/MessageLogger.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/MessageLogger.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Connection.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Connection.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Connection.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Connection.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Exception.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Exception.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Exception.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Pop/Pop3Exception.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/PopBeforeSmtpPlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/PopBeforeSmtpPlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/PopBeforeSmtpPlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/PopBeforeSmtpPlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/RedirectingPlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/RedirectingPlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/RedirectingPlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/RedirectingPlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Reporter.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Reporter.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Reporter.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Reporter.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/ReporterPlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/ReporterPlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/ReporterPlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/ReporterPlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HtmlReporter.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HtmlReporter.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HtmlReporter.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Reporters/HtmlReporter.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Sleeper.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Sleeper.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Sleeper.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Sleeper.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/ThrottlerPlugin.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/ThrottlerPlugin.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/ThrottlerPlugin.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/ThrottlerPlugin.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Timer.php b/public/includes/swiftmailer/lib/classes/Swift/Plugins/Timer.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Plugins/Timer.php rename to public/includes/swiftmailer/lib/classes/Swift/Plugins/Timer.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Preferences.php b/public/includes/swiftmailer/lib/classes/Swift/Preferences.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Preferences.php rename to public/includes/swiftmailer/lib/classes/Swift/Preferences.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/ReplacementFilterFactory.php b/public/includes/swiftmailer/lib/classes/Swift/ReplacementFilterFactory.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/ReplacementFilterFactory.php rename to public/includes/swiftmailer/lib/classes/Swift/ReplacementFilterFactory.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/RfcComplianceException.php b/public/includes/swiftmailer/lib/classes/Swift/RfcComplianceException.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/RfcComplianceException.php rename to public/includes/swiftmailer/lib/classes/Swift/RfcComplianceException.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/SendmailTransport.php b/public/includes/swiftmailer/lib/classes/Swift/SendmailTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/SendmailTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/SendmailTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/SignedMessage.php b/public/includes/swiftmailer/lib/classes/Swift/SignedMessage.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/SignedMessage.php rename to public/includes/swiftmailer/lib/classes/Swift/SignedMessage.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Signer.php b/public/includes/swiftmailer/lib/classes/Swift/Signer.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Signer.php rename to public/includes/swiftmailer/lib/classes/Swift/Signer.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Signers/BodySigner.php b/public/includes/swiftmailer/lib/classes/Swift/Signers/BodySigner.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Signers/BodySigner.php rename to public/includes/swiftmailer/lib/classes/Swift/Signers/BodySigner.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Signers/DKIMSigner.php b/public/includes/swiftmailer/lib/classes/Swift/Signers/DKIMSigner.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Signers/DKIMSigner.php rename to public/includes/swiftmailer/lib/classes/Swift/Signers/DKIMSigner.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Signers/DomainKeySigner.php b/public/includes/swiftmailer/lib/classes/Swift/Signers/DomainKeySigner.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Signers/DomainKeySigner.php rename to public/includes/swiftmailer/lib/classes/Swift/Signers/DomainKeySigner.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Signers/HeaderSigner.php b/public/includes/swiftmailer/lib/classes/Swift/Signers/HeaderSigner.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Signers/HeaderSigner.php rename to public/includes/swiftmailer/lib/classes/Swift/Signers/HeaderSigner.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Signers/OpenDKIMSigner.php b/public/includes/swiftmailer/lib/classes/Swift/Signers/OpenDKIMSigner.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Signers/OpenDKIMSigner.php rename to public/includes/swiftmailer/lib/classes/Swift/Signers/OpenDKIMSigner.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Signers/SMimeSigner.php b/public/includes/swiftmailer/lib/classes/Swift/Signers/SMimeSigner.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Signers/SMimeSigner.php rename to public/includes/swiftmailer/lib/classes/Swift/Signers/SMimeSigner.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/SmtpTransport.php b/public/includes/swiftmailer/lib/classes/Swift/SmtpTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/SmtpTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/SmtpTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Spool.php b/public/includes/swiftmailer/lib/classes/Swift/Spool.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Spool.php rename to public/includes/swiftmailer/lib/classes/Swift/Spool.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/SpoolTransport.php b/public/includes/swiftmailer/lib/classes/Swift/SpoolTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/SpoolTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/SpoolTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/StreamFilter.php b/public/includes/swiftmailer/lib/classes/Swift/StreamFilter.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/StreamFilter.php rename to public/includes/swiftmailer/lib/classes/Swift/StreamFilter.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/StreamFilters/ByteArrayReplacementFilter.php b/public/includes/swiftmailer/lib/classes/Swift/StreamFilters/ByteArrayReplacementFilter.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/StreamFilters/ByteArrayReplacementFilter.php rename to public/includes/swiftmailer/lib/classes/Swift/StreamFilters/ByteArrayReplacementFilter.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilter.php b/public/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilter.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilter.php rename to public/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilter.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilterFactory.php b/public/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilterFactory.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilterFactory.php rename to public/includes/swiftmailer/lib/classes/Swift/StreamFilters/StringReplacementFilterFactory.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/SwiftException.php b/public/includes/swiftmailer/lib/classes/Swift/SwiftException.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/SwiftException.php rename to public/includes/swiftmailer/lib/classes/Swift/SwiftException.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/CramMd5Authenticator.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/CramMd5Authenticator.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/CramMd5Authenticator.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/CramMd5Authenticator.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/LoginAuthenticator.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/LoginAuthenticator.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/LoginAuthenticator.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/LoginAuthenticator.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/NTLMAuthenticator.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/NTLMAuthenticator.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/NTLMAuthenticator.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/NTLMAuthenticator.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/PlainAuthenticator.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/PlainAuthenticator.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/PlainAuthenticator.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/PlainAuthenticator.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/XOAuth2Authenticator.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/XOAuth2Authenticator.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/XOAuth2Authenticator.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/XOAuth2Authenticator.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/AuthHandler.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/AuthHandler.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/AuthHandler.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/AuthHandler.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Authenticator.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Authenticator.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Authenticator.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/Esmtp/Authenticator.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpHandler.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpHandler.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpHandler.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpHandler.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/FailoverTransport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/FailoverTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/FailoverTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/FailoverTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/IoBuffer.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/IoBuffer.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/IoBuffer.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/IoBuffer.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/LoadBalancedTransport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/LoadBalancedTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/LoadBalancedTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/LoadBalancedTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/MailInvoker.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/MailInvoker.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/MailInvoker.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/MailInvoker.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/MailTransport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/MailTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/MailTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/MailTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/NullTransport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/NullTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/NullTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/NullTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/SendmailTransport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/SendmailTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/SendmailTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/SendmailTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/SimpleMailInvoker.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/SimpleMailInvoker.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/SimpleMailInvoker.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/SimpleMailInvoker.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/SmtpAgent.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/SmtpAgent.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/SmtpAgent.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/SmtpAgent.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/SpoolTransport.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/SpoolTransport.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/SpoolTransport.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/SpoolTransport.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php b/public/includes/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php rename to public/includes/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/TransportException.php b/public/includes/swiftmailer/lib/classes/Swift/TransportException.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/TransportException.php rename to public/includes/swiftmailer/lib/classes/Swift/TransportException.php diff --git a/htdocs/includes/swiftmailer/lib/classes/Swift/Validate.php b/public/includes/swiftmailer/lib/classes/Swift/Validate.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/classes/Swift/Validate.php rename to public/includes/swiftmailer/lib/classes/Swift/Validate.php diff --git a/htdocs/includes/swiftmailer/lib/dependency_maps/cache_deps.php b/public/includes/swiftmailer/lib/dependency_maps/cache_deps.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/dependency_maps/cache_deps.php rename to public/includes/swiftmailer/lib/dependency_maps/cache_deps.php diff --git a/htdocs/includes/swiftmailer/lib/dependency_maps/message_deps.php b/public/includes/swiftmailer/lib/dependency_maps/message_deps.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/dependency_maps/message_deps.php rename to public/includes/swiftmailer/lib/dependency_maps/message_deps.php diff --git a/htdocs/includes/swiftmailer/lib/dependency_maps/mime_deps.php b/public/includes/swiftmailer/lib/dependency_maps/mime_deps.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/dependency_maps/mime_deps.php rename to public/includes/swiftmailer/lib/dependency_maps/mime_deps.php diff --git a/htdocs/includes/swiftmailer/lib/dependency_maps/transport_deps.php b/public/includes/swiftmailer/lib/dependency_maps/transport_deps.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/dependency_maps/transport_deps.php rename to public/includes/swiftmailer/lib/dependency_maps/transport_deps.php diff --git a/htdocs/includes/swiftmailer/lib/mime_types.php b/public/includes/swiftmailer/lib/mime_types.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/mime_types.php rename to public/includes/swiftmailer/lib/mime_types.php diff --git a/htdocs/includes/swiftmailer/lib/preferences.php b/public/includes/swiftmailer/lib/preferences.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/preferences.php rename to public/includes/swiftmailer/lib/preferences.php diff --git a/htdocs/includes/swiftmailer/lib/swift_init.php b/public/includes/swiftmailer/lib/swift_init.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/swift_init.php rename to public/includes/swiftmailer/lib/swift_init.php diff --git a/htdocs/includes/swiftmailer/lib/swift_required.php b/public/includes/swiftmailer/lib/swift_required.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/swift_required.php rename to public/includes/swiftmailer/lib/swift_required.php diff --git a/htdocs/includes/swiftmailer/lib/swift_required_pear.php b/public/includes/swiftmailer/lib/swift_required_pear.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/swift_required_pear.php rename to public/includes/swiftmailer/lib/swift_required_pear.php diff --git a/htdocs/includes/swiftmailer/lib/swiftmailer_generate_mimes_config.php b/public/includes/swiftmailer/lib/swiftmailer_generate_mimes_config.php similarity index 100% rename from htdocs/includes/swiftmailer/lib/swiftmailer_generate_mimes_config.php rename to public/includes/swiftmailer/lib/swiftmailer_generate_mimes_config.php diff --git a/htdocs/includes/tcpdi/fpdf_tpl.php b/public/includes/tcpdi/fpdf_tpl.php similarity index 100% rename from htdocs/includes/tcpdi/fpdf_tpl.php rename to public/includes/tcpdi/fpdf_tpl.php diff --git a/htdocs/includes/tcpdi/tcpdi.php b/public/includes/tcpdi/tcpdi.php similarity index 100% rename from htdocs/includes/tcpdi/tcpdi.php rename to public/includes/tcpdi/tcpdi.php diff --git a/htdocs/includes/tcpdi/tcpdi_parser.php b/public/includes/tcpdi/tcpdi_parser.php similarity index 100% rename from htdocs/includes/tcpdi/tcpdi_parser.php rename to public/includes/tcpdi/tcpdi_parser.php diff --git a/htdocs/includes/tecnickcom/tcpdf/CHANGELOG.TXT b/public/includes/tecnickcom/tcpdf/CHANGELOG.TXT similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/CHANGELOG.TXT rename to public/includes/tecnickcom/tcpdf/CHANGELOG.TXT diff --git a/htdocs/includes/tecnickcom/tcpdf/LICENSE.TXT b/public/includes/tecnickcom/tcpdf/LICENSE.TXT similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/LICENSE.TXT rename to public/includes/tecnickcom/tcpdf/LICENSE.TXT diff --git a/htdocs/includes/tecnickcom/tcpdf/README.TXT b/public/includes/tecnickcom/tcpdf/README.TXT similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/README.TXT rename to public/includes/tecnickcom/tcpdf/README.TXT diff --git a/htdocs/includes/tecnickcom/tcpdf/composer.json b/public/includes/tecnickcom/tcpdf/composer.json similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/composer.json rename to public/includes/tecnickcom/tcpdf/composer.json diff --git a/htdocs/includes/tecnickcom/tcpdf/config/tcpdf_config.php b/public/includes/tecnickcom/tcpdf/config/tcpdf_config.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/config/tcpdf_config.php rename to public/includes/tecnickcom/tcpdf/config/tcpdf_config.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/COPYING b/public/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/COPYING similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/COPYING rename to public/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/COPYING diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog b/public/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog rename to public/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog.9745.BAK b/public/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog.9745.BAK similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog.9745.BAK rename to public/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/ChangeLog.9745.BAK diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/README b/public/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/README similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/README rename to public/includes/tecnickcom/tcpdf/fonts/ae_fonts_2.0/README diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/aealarabiya.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/aealarabiya.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/aealarabiya.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/aealarabiya.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/aealarabiya.php b/public/includes/tecnickcom/tcpdf/fonts/aealarabiya.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/aealarabiya.php rename to public/includes/tecnickcom/tcpdf/fonts/aealarabiya.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/aealarabiya.z b/public/includes/tecnickcom/tcpdf/fonts/aealarabiya.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/aealarabiya.z rename to public/includes/tecnickcom/tcpdf/fonts/aealarabiya.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/aefurat.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/aefurat.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/aefurat.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/aefurat.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/aefurat.php b/public/includes/tecnickcom/tcpdf/fonts/aefurat.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/aefurat.php rename to public/includes/tecnickcom/tcpdf/fonts/aefurat.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/aefurat.z b/public/includes/tecnickcom/tcpdf/fonts/aefurat.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/aefurat.z rename to public/includes/tecnickcom/tcpdf/fonts/aefurat.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/cid0cs.php b/public/includes/tecnickcom/tcpdf/fonts/cid0cs.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/cid0cs.php rename to public/includes/tecnickcom/tcpdf/fonts/cid0cs.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/cid0ct.php b/public/includes/tecnickcom/tcpdf/fonts/cid0ct.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/cid0ct.php rename to public/includes/tecnickcom/tcpdf/fonts/cid0ct.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/cid0jp.php b/public/includes/tecnickcom/tcpdf/fonts/cid0jp.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/cid0jp.php rename to public/includes/tecnickcom/tcpdf/fonts/cid0jp.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/cid0kr.php b/public/includes/tecnickcom/tcpdf/fonts/cid0kr.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/cid0kr.php rename to public/includes/tecnickcom/tcpdf/fonts/cid0kr.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/courier.php b/public/includes/tecnickcom/tcpdf/fonts/courier.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/courier.php rename to public/includes/tecnickcom/tcpdf/fonts/courier.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/courierb.php b/public/includes/tecnickcom/tcpdf/fonts/courierb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/courierb.php rename to public/includes/tecnickcom/tcpdf/fonts/courierb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/courierbi.php b/public/includes/tecnickcom/tcpdf/fonts/courierbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/courierbi.php rename to public/includes/tecnickcom/tcpdf/fonts/courierbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/courieri.php b/public/includes/tecnickcom/tcpdf/fonts/courieri.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/courieri.php rename to public/includes/tecnickcom/tcpdf/fonts/courieri.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/AUTHORS b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/AUTHORS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/AUTHORS rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/AUTHORS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/BUGS b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/BUGS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/BUGS rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/BUGS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/LICENSE b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/LICENSE similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/LICENSE rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/LICENSE diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/NEWS b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/NEWS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/NEWS rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/NEWS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/README b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/README similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/README rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/README diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/langcover.txt b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/langcover.txt similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/langcover.txt rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/langcover.txt diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/status.txt b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/status.txt similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/status.txt rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/status.txt diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/unicover.txt b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/unicover.txt similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/unicover.txt rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.33/unicover.txt diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/AUTHORS b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/AUTHORS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/AUTHORS rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/AUTHORS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/BUGS b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/BUGS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/BUGS rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/BUGS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/LICENSE b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/LICENSE similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/LICENSE rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/LICENSE diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/NEWS b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/NEWS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/NEWS rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/NEWS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/README b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/README similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/README rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/README diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/langcover.txt b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/langcover.txt similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/langcover.txt rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/langcover.txt diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/status.txt b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/status.txt similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/status.txt rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/status.txt diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/unicover.txt b/public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/unicover.txt similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/unicover.txt rename to public/includes/tecnickcom/tcpdf/fonts/dejavu-fonts-ttf-2.34/unicover.txt diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusans.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusans.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusans.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusans.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusans.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusans.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusans.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusans.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusans.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusans.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusans.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusans.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansb.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansb.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansb.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansb.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansb.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusansb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansb.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansb.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansb.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansb.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansb.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansbi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansbi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansbi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansbi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansbi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusansbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansbi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansbi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansbi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansbi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansbi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensed.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedb.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedbi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusanscondensedi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansextralight.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusansi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmono.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmono.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmono.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmono.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmono.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmono.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmono.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmono.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmono.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmono.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmono.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmono.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonob.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonobi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavusansmonoi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserif.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserif.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserif.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserif.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserif.php b/public/includes/tecnickcom/tcpdf/fonts/dejavuserif.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserif.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserif.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserif.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserif.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserif.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserif.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifb.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifb.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifb.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifb.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifb.php b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifb.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifb.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifb.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifb.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifb.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifbi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.php b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensed.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.php b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedb.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedbi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifcondensedi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifi.php b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifi.php rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifi.z b/public/includes/tecnickcom/tcpdf/fonts/dejavuserifi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/dejavuserifi.z rename to public/includes/tecnickcom/tcpdf/fonts/dejavuserifi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/AUTHORS b/public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/AUTHORS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/AUTHORS rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/AUTHORS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/COPYING b/public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/COPYING similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/COPYING rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/COPYING diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/CREDITS b/public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/CREDITS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/CREDITS rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/CREDITS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/ChangeLog b/public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/ChangeLog similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/ChangeLog rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/ChangeLog diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/INSTALL b/public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/INSTALL similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/INSTALL rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/INSTALL diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/README b/public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/README similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20100919/README rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20100919/README diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/AUTHORS b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/AUTHORS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/AUTHORS rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/AUTHORS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/COPYING b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/COPYING similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/COPYING rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/COPYING diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/CREDITS b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/CREDITS similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/CREDITS rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/CREDITS diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog.10070.BAK b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog.10070.BAK similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog.10070.BAK rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/ChangeLog.10070.BAK diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/INSTALL b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/INSTALL similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/INSTALL rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/INSTALL diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/README b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/README similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/README rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/README diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/TROUBLESHOOTING diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/USAGE b/public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/USAGE similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freefont-20120503/USAGE rename to public/includes/tecnickcom/tcpdf/fonts/freefont-20120503/USAGE diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemono.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freemono.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemono.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freemono.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemono.php b/public/includes/tecnickcom/tcpdf/fonts/freemono.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemono.php rename to public/includes/tecnickcom/tcpdf/fonts/freemono.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemono.z b/public/includes/tecnickcom/tcpdf/fonts/freemono.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemono.z rename to public/includes/tecnickcom/tcpdf/fonts/freemono.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonob.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freemonob.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonob.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freemonob.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonob.php b/public/includes/tecnickcom/tcpdf/fonts/freemonob.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonob.php rename to public/includes/tecnickcom/tcpdf/fonts/freemonob.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonob.z b/public/includes/tecnickcom/tcpdf/fonts/freemonob.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonob.z rename to public/includes/tecnickcom/tcpdf/fonts/freemonob.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonobi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freemonobi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonobi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freemonobi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonobi.php b/public/includes/tecnickcom/tcpdf/fonts/freemonobi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonobi.php rename to public/includes/tecnickcom/tcpdf/fonts/freemonobi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonobi.z b/public/includes/tecnickcom/tcpdf/fonts/freemonobi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonobi.z rename to public/includes/tecnickcom/tcpdf/fonts/freemonobi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonoi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freemonoi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonoi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freemonoi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonoi.php b/public/includes/tecnickcom/tcpdf/fonts/freemonoi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonoi.php rename to public/includes/tecnickcom/tcpdf/fonts/freemonoi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freemonoi.z b/public/includes/tecnickcom/tcpdf/fonts/freemonoi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freemonoi.z rename to public/includes/tecnickcom/tcpdf/fonts/freemonoi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesans.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freesans.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesans.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freesans.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesans.php b/public/includes/tecnickcom/tcpdf/fonts/freesans.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesans.php rename to public/includes/tecnickcom/tcpdf/fonts/freesans.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesans.z b/public/includes/tecnickcom/tcpdf/fonts/freesans.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesans.z rename to public/includes/tecnickcom/tcpdf/fonts/freesans.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansb.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freesansb.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansb.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freesansb.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansb.php b/public/includes/tecnickcom/tcpdf/fonts/freesansb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansb.php rename to public/includes/tecnickcom/tcpdf/fonts/freesansb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansb.z b/public/includes/tecnickcom/tcpdf/fonts/freesansb.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansb.z rename to public/includes/tecnickcom/tcpdf/fonts/freesansb.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansbi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freesansbi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansbi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freesansbi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansbi.php b/public/includes/tecnickcom/tcpdf/fonts/freesansbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansbi.php rename to public/includes/tecnickcom/tcpdf/fonts/freesansbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansbi.z b/public/includes/tecnickcom/tcpdf/fonts/freesansbi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansbi.z rename to public/includes/tecnickcom/tcpdf/fonts/freesansbi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freesansi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freesansi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansi.php b/public/includes/tecnickcom/tcpdf/fonts/freesansi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansi.php rename to public/includes/tecnickcom/tcpdf/fonts/freesansi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freesansi.z b/public/includes/tecnickcom/tcpdf/fonts/freesansi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freesansi.z rename to public/includes/tecnickcom/tcpdf/fonts/freesansi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserif.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freeserif.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserif.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freeserif.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserif.php b/public/includes/tecnickcom/tcpdf/fonts/freeserif.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserif.php rename to public/includes/tecnickcom/tcpdf/fonts/freeserif.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserif.z b/public/includes/tecnickcom/tcpdf/fonts/freeserif.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserif.z rename to public/includes/tecnickcom/tcpdf/fonts/freeserif.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifb.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freeserifb.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifb.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freeserifb.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifb.php b/public/includes/tecnickcom/tcpdf/fonts/freeserifb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifb.php rename to public/includes/tecnickcom/tcpdf/fonts/freeserifb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifb.z b/public/includes/tecnickcom/tcpdf/fonts/freeserifb.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifb.z rename to public/includes/tecnickcom/tcpdf/fonts/freeserifb.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifbi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freeserifbi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifbi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freeserifbi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifbi.php b/public/includes/tecnickcom/tcpdf/fonts/freeserifbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifbi.php rename to public/includes/tecnickcom/tcpdf/fonts/freeserifbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifbi.z b/public/includes/tecnickcom/tcpdf/fonts/freeserifbi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifbi.z rename to public/includes/tecnickcom/tcpdf/fonts/freeserifbi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifi.ctg.z b/public/includes/tecnickcom/tcpdf/fonts/freeserifi.ctg.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifi.ctg.z rename to public/includes/tecnickcom/tcpdf/fonts/freeserifi.ctg.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifi.php b/public/includes/tecnickcom/tcpdf/fonts/freeserifi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifi.php rename to public/includes/tecnickcom/tcpdf/fonts/freeserifi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/freeserifi.z b/public/includes/tecnickcom/tcpdf/fonts/freeserifi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/freeserifi.z rename to public/includes/tecnickcom/tcpdf/fonts/freeserifi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/helvetica.php b/public/includes/tecnickcom/tcpdf/fonts/helvetica.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/helvetica.php rename to public/includes/tecnickcom/tcpdf/fonts/helvetica.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/helveticab.php b/public/includes/tecnickcom/tcpdf/fonts/helveticab.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/helveticab.php rename to public/includes/tecnickcom/tcpdf/fonts/helveticab.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/helveticabi.php b/public/includes/tecnickcom/tcpdf/fonts/helveticabi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/helveticabi.php rename to public/includes/tecnickcom/tcpdf/fonts/helveticabi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/helveticai.php b/public/includes/tecnickcom/tcpdf/fonts/helveticai.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/helveticai.php rename to public/includes/tecnickcom/tcpdf/fonts/helveticai.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/hysmyeongjostdmedium.php b/public/includes/tecnickcom/tcpdf/fonts/hysmyeongjostdmedium.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/hysmyeongjostdmedium.php rename to public/includes/tecnickcom/tcpdf/fonts/hysmyeongjostdmedium.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/kozgopromedium.php b/public/includes/tecnickcom/tcpdf/fonts/kozgopromedium.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/kozgopromedium.php rename to public/includes/tecnickcom/tcpdf/fonts/kozgopromedium.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/kozminproregular.php b/public/includes/tecnickcom/tcpdf/fonts/kozminproregular.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/kozminproregular.php rename to public/includes/tecnickcom/tcpdf/fonts/kozminproregular.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/msungstdlight.php b/public/includes/tecnickcom/tcpdf/fonts/msungstdlight.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/msungstdlight.php rename to public/includes/tecnickcom/tcpdf/fonts/msungstdlight.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourier.php b/public/includes/tecnickcom/tcpdf/fonts/pdfacourier.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourier.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfacourier.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourier.z b/public/includes/tecnickcom/tcpdf/fonts/pdfacourier.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourier.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfacourier.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourierb.php b/public/includes/tecnickcom/tcpdf/fonts/pdfacourierb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourierb.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfacourierb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourierb.z b/public/includes/tecnickcom/tcpdf/fonts/pdfacourierb.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourierb.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfacourierb.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.php b/public/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.z b/public/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfacourierbi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourieri.php b/public/includes/tecnickcom/tcpdf/fonts/pdfacourieri.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourieri.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfacourieri.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourieri.z b/public/includes/tecnickcom/tcpdf/fonts/pdfacourieri.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfacourieri.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfacourieri.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.php b/public/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.z b/public/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfahelvetica.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.php b/public/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.z b/public/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfahelveticab.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.php b/public/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.z b/public/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfahelveticabi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.php b/public/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.z b/public/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfahelveticai.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfasymbol.php b/public/includes/tecnickcom/tcpdf/fonts/pdfasymbol.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfasymbol.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfasymbol.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfasymbol.z b/public/includes/tecnickcom/tcpdf/fonts/pdfasymbol.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfasymbol.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfasymbol.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimes.php b/public/includes/tecnickcom/tcpdf/fonts/pdfatimes.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimes.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfatimes.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimes.z b/public/includes/tecnickcom/tcpdf/fonts/pdfatimes.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimes.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfatimes.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesb.php b/public/includes/tecnickcom/tcpdf/fonts/pdfatimesb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesb.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfatimesb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesb.z b/public/includes/tecnickcom/tcpdf/fonts/pdfatimesb.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesb.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfatimesb.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.php b/public/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.z b/public/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfatimesbi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesi.php b/public/includes/tecnickcom/tcpdf/fonts/pdfatimesi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesi.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfatimesi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesi.z b/public/includes/tecnickcom/tcpdf/fonts/pdfatimesi.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfatimesi.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfatimesi.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.php b/public/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.php rename to public/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.z b/public/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.z similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.z rename to public/includes/tecnickcom/tcpdf/fonts/pdfazapfdingbats.z diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/stsongstdlight.php b/public/includes/tecnickcom/tcpdf/fonts/stsongstdlight.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/stsongstdlight.php rename to public/includes/tecnickcom/tcpdf/fonts/stsongstdlight.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/symbol.php b/public/includes/tecnickcom/tcpdf/fonts/symbol.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/symbol.php rename to public/includes/tecnickcom/tcpdf/fonts/symbol.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/times.php b/public/includes/tecnickcom/tcpdf/fonts/times.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/times.php rename to public/includes/tecnickcom/tcpdf/fonts/times.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/timesb.php b/public/includes/tecnickcom/tcpdf/fonts/timesb.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/timesb.php rename to public/includes/tecnickcom/tcpdf/fonts/timesb.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/timesbi.php b/public/includes/tecnickcom/tcpdf/fonts/timesbi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/timesbi.php rename to public/includes/tecnickcom/tcpdf/fonts/timesbi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/timesi.php b/public/includes/tecnickcom/tcpdf/fonts/timesi.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/timesi.php rename to public/includes/tecnickcom/tcpdf/fonts/timesi.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/uni2cid_ac15.php b/public/includes/tecnickcom/tcpdf/fonts/uni2cid_ac15.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/uni2cid_ac15.php rename to public/includes/tecnickcom/tcpdf/fonts/uni2cid_ac15.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/uni2cid_ag15.php b/public/includes/tecnickcom/tcpdf/fonts/uni2cid_ag15.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/uni2cid_ag15.php rename to public/includes/tecnickcom/tcpdf/fonts/uni2cid_ag15.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/uni2cid_aj16.php b/public/includes/tecnickcom/tcpdf/fonts/uni2cid_aj16.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/uni2cid_aj16.php rename to public/includes/tecnickcom/tcpdf/fonts/uni2cid_aj16.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/uni2cid_ak12.php b/public/includes/tecnickcom/tcpdf/fonts/uni2cid_ak12.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/uni2cid_ak12.php rename to public/includes/tecnickcom/tcpdf/fonts/uni2cid_ak12.php diff --git a/htdocs/includes/tecnickcom/tcpdf/fonts/zapfdingbats.php b/public/includes/tecnickcom/tcpdf/fonts/zapfdingbats.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/fonts/zapfdingbats.php rename to public/includes/tecnickcom/tcpdf/fonts/zapfdingbats.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/barcodes/datamatrix.php b/public/includes/tecnickcom/tcpdf/include/barcodes/datamatrix.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/barcodes/datamatrix.php rename to public/includes/tecnickcom/tcpdf/include/barcodes/datamatrix.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/barcodes/pdf417.php b/public/includes/tecnickcom/tcpdf/include/barcodes/pdf417.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/barcodes/pdf417.php rename to public/includes/tecnickcom/tcpdf/include/barcodes/pdf417.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/barcodes/qrcode.php b/public/includes/tecnickcom/tcpdf/include/barcodes/qrcode.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/barcodes/qrcode.php rename to public/includes/tecnickcom/tcpdf/include/barcodes/qrcode.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/sRGB.icc b/public/includes/tecnickcom/tcpdf/include/sRGB.icc similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/sRGB.icc rename to public/includes/tecnickcom/tcpdf/include/sRGB.icc diff --git a/htdocs/includes/tecnickcom/tcpdf/include/tcpdf_colors.php b/public/includes/tecnickcom/tcpdf/include/tcpdf_colors.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/tcpdf_colors.php rename to public/includes/tecnickcom/tcpdf/include/tcpdf_colors.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/tcpdf_filters.php b/public/includes/tecnickcom/tcpdf/include/tcpdf_filters.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/tcpdf_filters.php rename to public/includes/tecnickcom/tcpdf/include/tcpdf_filters.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/tcpdf_font_data.php b/public/includes/tecnickcom/tcpdf/include/tcpdf_font_data.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/tcpdf_font_data.php rename to public/includes/tecnickcom/tcpdf/include/tcpdf_font_data.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/tcpdf_fonts.php b/public/includes/tecnickcom/tcpdf/include/tcpdf_fonts.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/tcpdf_fonts.php rename to public/includes/tecnickcom/tcpdf/include/tcpdf_fonts.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/tcpdf_images.php b/public/includes/tecnickcom/tcpdf/include/tcpdf_images.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/tcpdf_images.php rename to public/includes/tecnickcom/tcpdf/include/tcpdf_images.php diff --git a/htdocs/includes/tecnickcom/tcpdf/include/tcpdf_static.php b/public/includes/tecnickcom/tcpdf/include/tcpdf_static.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/include/tcpdf_static.php rename to public/includes/tecnickcom/tcpdf/include/tcpdf_static.php diff --git a/htdocs/includes/tecnickcom/tcpdf/tcpdf.php b/public/includes/tecnickcom/tcpdf/tcpdf.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/tcpdf.php rename to public/includes/tecnickcom/tcpdf/tcpdf.php diff --git a/htdocs/includes/tecnickcom/tcpdf/tcpdf_autoconfig.php b/public/includes/tecnickcom/tcpdf/tcpdf_autoconfig.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/tcpdf_autoconfig.php rename to public/includes/tecnickcom/tcpdf/tcpdf_autoconfig.php diff --git a/htdocs/includes/tecnickcom/tcpdf/tcpdf_barcodes_1d.php b/public/includes/tecnickcom/tcpdf/tcpdf_barcodes_1d.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/tcpdf_barcodes_1d.php rename to public/includes/tecnickcom/tcpdf/tcpdf_barcodes_1d.php diff --git a/htdocs/includes/tecnickcom/tcpdf/tcpdf_barcodes_2d.php b/public/includes/tecnickcom/tcpdf/tcpdf_barcodes_2d.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/tcpdf_barcodes_2d.php rename to public/includes/tecnickcom/tcpdf/tcpdf_barcodes_2d.php diff --git a/htdocs/includes/tecnickcom/tcpdf/tcpdf_import.php b/public/includes/tecnickcom/tcpdf/tcpdf_import.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/tcpdf_import.php rename to public/includes/tecnickcom/tcpdf/tcpdf_import.php diff --git a/htdocs/includes/tecnickcom/tcpdf/tcpdf_parser.php b/public/includes/tecnickcom/tcpdf/tcpdf_parser.php similarity index 100% rename from htdocs/includes/tecnickcom/tcpdf/tcpdf_parser.php rename to public/includes/tecnickcom/tcpdf/tcpdf_parser.php diff --git a/htdocs/index.php b/public/index.php similarity index 100% rename from htdocs/index.php rename to public/index.php diff --git a/htdocs/install/.gitignore b/public/install/.gitignore similarity index 100% rename from htdocs/install/.gitignore rename to public/install/.gitignore diff --git a/htdocs/install/check.php b/public/install/check.php similarity index 100% rename from htdocs/install/check.php rename to public/install/check.php diff --git a/htdocs/install/default.css b/public/install/default.css similarity index 100% rename from htdocs/install/default.css rename to public/install/default.css diff --git a/htdocs/install/doctemplates/README b/public/install/doctemplates/README similarity index 100% rename from htdocs/install/doctemplates/README rename to public/install/doctemplates/README diff --git a/htdocs/install/doctemplates/index.html b/public/install/doctemplates/index.html similarity index 100% rename from htdocs/install/doctemplates/index.html rename to public/install/doctemplates/index.html diff --git a/htdocs/install/doctemplates/invoices/index.html b/public/install/doctemplates/invoices/index.html similarity index 100% rename from htdocs/install/doctemplates/invoices/index.html rename to public/install/doctemplates/invoices/index.html diff --git a/htdocs/install/doctemplates/invoices/template_invoice.odt b/public/install/doctemplates/invoices/template_invoice.odt similarity index 100% rename from htdocs/install/doctemplates/invoices/template_invoice.odt rename to public/install/doctemplates/invoices/template_invoice.odt diff --git a/htdocs/install/doctemplates/orders/index.html b/public/install/doctemplates/orders/index.html similarity index 100% rename from htdocs/install/doctemplates/orders/index.html rename to public/install/doctemplates/orders/index.html diff --git a/htdocs/install/doctemplates/orders/template_order.odt b/public/install/doctemplates/orders/template_order.odt similarity index 100% rename from htdocs/install/doctemplates/orders/template_order.odt rename to public/install/doctemplates/orders/template_order.odt diff --git a/htdocs/install/doctemplates/projects/index.html b/public/install/doctemplates/projects/index.html similarity index 100% rename from htdocs/install/doctemplates/projects/index.html rename to public/install/doctemplates/projects/index.html diff --git a/htdocs/install/doctemplates/projects/template_project.odt b/public/install/doctemplates/projects/template_project.odt similarity index 100% rename from htdocs/install/doctemplates/projects/template_project.odt rename to public/install/doctemplates/projects/template_project.odt diff --git a/htdocs/install/doctemplates/proposals/index.html b/public/install/doctemplates/proposals/index.html similarity index 100% rename from htdocs/install/doctemplates/proposals/index.html rename to public/install/doctemplates/proposals/index.html diff --git a/htdocs/install/doctemplates/proposals/template_proposal.odt b/public/install/doctemplates/proposals/template_proposal.odt similarity index 100% rename from htdocs/install/doctemplates/proposals/template_proposal.odt rename to public/install/doctemplates/proposals/template_proposal.odt diff --git a/htdocs/install/doctemplates/shipment/index.html b/public/install/doctemplates/shipment/index.html similarity index 100% rename from htdocs/install/doctemplates/shipment/index.html rename to public/install/doctemplates/shipment/index.html diff --git a/htdocs/install/doctemplates/shipment/template_shipment.odt b/public/install/doctemplates/shipment/template_shipment.odt similarity index 100% rename from htdocs/install/doctemplates/shipment/template_shipment.odt rename to public/install/doctemplates/shipment/template_shipment.odt diff --git a/htdocs/install/doctemplates/supplier_proposal/index.html b/public/install/doctemplates/supplier_proposal/index.html similarity index 100% rename from htdocs/install/doctemplates/supplier_proposal/index.html rename to public/install/doctemplates/supplier_proposal/index.html diff --git a/htdocs/install/doctemplates/supplier_proposal/template_supplier_proposal.odt b/public/install/doctemplates/supplier_proposal/template_supplier_proposal.odt similarity index 100% rename from htdocs/install/doctemplates/supplier_proposal/template_supplier_proposal.odt rename to public/install/doctemplates/supplier_proposal/template_supplier_proposal.odt diff --git a/htdocs/install/doctemplates/tasks/index.html b/public/install/doctemplates/tasks/index.html similarity index 100% rename from htdocs/install/doctemplates/tasks/index.html rename to public/install/doctemplates/tasks/index.html diff --git a/htdocs/install/doctemplates/tasks/template_task_summary.odt b/public/install/doctemplates/tasks/template_task_summary.odt similarity index 100% rename from htdocs/install/doctemplates/tasks/template_task_summary.odt rename to public/install/doctemplates/tasks/template_task_summary.odt diff --git a/htdocs/install/doctemplates/thirdparties/index.html b/public/install/doctemplates/thirdparties/index.html similarity index 100% rename from htdocs/install/doctemplates/thirdparties/index.html rename to public/install/doctemplates/thirdparties/index.html diff --git a/htdocs/install/doctemplates/thirdparties/template_thirdparty.ods b/public/install/doctemplates/thirdparties/template_thirdparty.ods similarity index 100% rename from htdocs/install/doctemplates/thirdparties/template_thirdparty.ods rename to public/install/doctemplates/thirdparties/template_thirdparty.ods diff --git a/htdocs/install/doctemplates/thirdparties/template_thirdparty.odt b/public/install/doctemplates/thirdparties/template_thirdparty.odt similarity index 100% rename from htdocs/install/doctemplates/thirdparties/template_thirdparty.odt rename to public/install/doctemplates/thirdparties/template_thirdparty.odt diff --git a/htdocs/install/fileconf.php b/public/install/fileconf.php similarity index 100% rename from htdocs/install/fileconf.php rename to public/install/fileconf.php diff --git a/htdocs/install/inc.php b/public/install/inc.php similarity index 100% rename from htdocs/install/inc.php rename to public/install/inc.php diff --git a/htdocs/install/index.php b/public/install/index.php similarity index 100% rename from htdocs/install/index.php rename to public/install/index.php diff --git a/htdocs/install/install.forced.sample.php b/public/install/install.forced.sample.php similarity index 100% rename from htdocs/install/install.forced.sample.php rename to public/install/install.forced.sample.php diff --git a/htdocs/install/lib/index.html b/public/install/lib/index.html similarity index 100% rename from htdocs/install/lib/index.html rename to public/install/lib/index.html diff --git a/htdocs/install/lib/repair.lib.php b/public/install/lib/repair.lib.php similarity index 100% rename from htdocs/install/lib/repair.lib.php rename to public/install/lib/repair.lib.php diff --git a/htdocs/install/mssql/README b/public/install/mssql/README similarity index 100% rename from htdocs/install/mssql/README rename to public/install/mssql/README diff --git a/htdocs/install/mssql/functions/index.html b/public/install/mssql/functions/index.html similarity index 100% rename from htdocs/install/mssql/functions/index.html rename to public/install/mssql/functions/index.html diff --git a/htdocs/install/mssql/index.html b/public/install/mssql/index.html similarity index 100% rename from htdocs/install/mssql/index.html rename to public/install/mssql/index.html diff --git a/htdocs/install/mysql/README b/public/install/mysql/README similarity index 100% rename from htdocs/install/mysql/README rename to public/install/mysql/README diff --git a/htdocs/install/mysql/data/index.html b/public/install/mysql/data/index.html similarity index 100% rename from htdocs/install/mysql/data/index.html rename to public/install/mysql/data/index.html diff --git a/htdocs/install/mysql/data/llx_00_c_country.sql b/public/install/mysql/data/llx_00_c_country.sql similarity index 100% rename from htdocs/install/mysql/data/llx_00_c_country.sql rename to public/install/mysql/data/llx_00_c_country.sql diff --git a/htdocs/install/mysql/data/llx_10_c_regions.sql b/public/install/mysql/data/llx_10_c_regions.sql similarity index 100% rename from htdocs/install/mysql/data/llx_10_c_regions.sql rename to public/install/mysql/data/llx_10_c_regions.sql diff --git a/htdocs/install/mysql/data/llx_20_c_departements.sql b/public/install/mysql/data/llx_20_c_departements.sql similarity index 100% rename from htdocs/install/mysql/data/llx_20_c_departements.sql rename to public/install/mysql/data/llx_20_c_departements.sql diff --git a/htdocs/install/mysql/data/llx_accounting.sql b/public/install/mysql/data/llx_accounting.sql similarity index 100% rename from htdocs/install/mysql/data/llx_accounting.sql rename to public/install/mysql/data/llx_accounting.sql diff --git a/htdocs/install/mysql/data/llx_accounting_category.sql b/public/install/mysql/data/llx_accounting_category.sql similarity index 100% rename from htdocs/install/mysql/data/llx_accounting_category.sql rename to public/install/mysql/data/llx_accounting_category.sql diff --git a/htdocs/install/mysql/data/llx_c_action_trigger.sql b/public/install/mysql/data/llx_c_action_trigger.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_action_trigger.sql rename to public/install/mysql/data/llx_c_action_trigger.sql diff --git a/htdocs/install/mysql/data/llx_c_actioncomm.sql b/public/install/mysql/data/llx_c_actioncomm.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_actioncomm.sql rename to public/install/mysql/data/llx_c_actioncomm.sql diff --git a/htdocs/install/mysql/data/llx_c_availability.sql b/public/install/mysql/data/llx_c_availability.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_availability.sql rename to public/install/mysql/data/llx_c_availability.sql diff --git a/htdocs/install/mysql/data/llx_c_chargesociales.sql b/public/install/mysql/data/llx_c_chargesociales.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_chargesociales.sql rename to public/install/mysql/data/llx_c_chargesociales.sql diff --git a/htdocs/install/mysql/data/llx_c_civilite.sql b/public/install/mysql/data/llx_c_civilite.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_civilite.sql rename to public/install/mysql/data/llx_c_civilite.sql diff --git a/htdocs/install/mysql/data/llx_c_currencies.sql b/public/install/mysql/data/llx_c_currencies.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_currencies.sql rename to public/install/mysql/data/llx_c_currencies.sql diff --git a/htdocs/install/mysql/data/llx_c_ecotaxe.sql b/public/install/mysql/data/llx_c_ecotaxe.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_ecotaxe.sql rename to public/install/mysql/data/llx_c_ecotaxe.sql diff --git a/htdocs/install/mysql/data/llx_c_effectif.sql b/public/install/mysql/data/llx_c_effectif.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_effectif.sql rename to public/install/mysql/data/llx_c_effectif.sql diff --git a/htdocs/install/mysql/data/llx_c_format_cards.sql b/public/install/mysql/data/llx_c_format_cards.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_format_cards.sql rename to public/install/mysql/data/llx_c_format_cards.sql diff --git a/htdocs/install/mysql/data/llx_c_forme_juridique.sql b/public/install/mysql/data/llx_c_forme_juridique.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_forme_juridique.sql rename to public/install/mysql/data/llx_c_forme_juridique.sql diff --git a/htdocs/install/mysql/data/llx_c_holiday_type.sql b/public/install/mysql/data/llx_c_holiday_type.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_holiday_type.sql rename to public/install/mysql/data/llx_c_holiday_type.sql diff --git a/htdocs/install/mysql/data/llx_c_hrm_department.sql b/public/install/mysql/data/llx_c_hrm_department.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_hrm_department.sql rename to public/install/mysql/data/llx_c_hrm_department.sql diff --git a/htdocs/install/mysql/data/llx_c_hrm_function.sql b/public/install/mysql/data/llx_c_hrm_function.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_hrm_function.sql rename to public/install/mysql/data/llx_c_hrm_function.sql diff --git a/htdocs/install/mysql/data/llx_c_incoterms.sql b/public/install/mysql/data/llx_c_incoterms.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_incoterms.sql rename to public/install/mysql/data/llx_c_incoterms.sql diff --git a/htdocs/install/mysql/data/llx_c_input_method.sql b/public/install/mysql/data/llx_c_input_method.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_input_method.sql rename to public/install/mysql/data/llx_c_input_method.sql diff --git a/htdocs/install/mysql/data/llx_c_input_reason.sql b/public/install/mysql/data/llx_c_input_reason.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_input_reason.sql rename to public/install/mysql/data/llx_c_input_reason.sql diff --git a/htdocs/install/mysql/data/llx_c_lead_status.sql b/public/install/mysql/data/llx_c_lead_status.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_lead_status.sql rename to public/install/mysql/data/llx_c_lead_status.sql diff --git a/htdocs/install/mysql/data/llx_c_paiement.sql b/public/install/mysql/data/llx_c_paiement.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_paiement.sql rename to public/install/mysql/data/llx_c_paiement.sql diff --git a/htdocs/install/mysql/data/llx_c_paper_format.sql b/public/install/mysql/data/llx_c_paper_format.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_paper_format.sql rename to public/install/mysql/data/llx_c_paper_format.sql diff --git a/htdocs/install/mysql/data/llx_c_payment_term.sql b/public/install/mysql/data/llx_c_payment_term.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_payment_term.sql rename to public/install/mysql/data/llx_c_payment_term.sql diff --git a/htdocs/install/mysql/data/llx_c_propalst.sql b/public/install/mysql/data/llx_c_propalst.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_propalst.sql rename to public/install/mysql/data/llx_c_propalst.sql diff --git a/htdocs/install/mysql/data/llx_c_prospectlevel.sql b/public/install/mysql/data/llx_c_prospectlevel.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_prospectlevel.sql rename to public/install/mysql/data/llx_c_prospectlevel.sql diff --git a/htdocs/install/mysql/data/llx_c_revenuestamp.sql b/public/install/mysql/data/llx_c_revenuestamp.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_revenuestamp.sql rename to public/install/mysql/data/llx_c_revenuestamp.sql diff --git a/htdocs/install/mysql/data/llx_c_shipment_mode.sql b/public/install/mysql/data/llx_c_shipment_mode.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_shipment_mode.sql rename to public/install/mysql/data/llx_c_shipment_mode.sql diff --git a/htdocs/install/mysql/data/llx_c_stcomm.sql b/public/install/mysql/data/llx_c_stcomm.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_stcomm.sql rename to public/install/mysql/data/llx_c_stcomm.sql diff --git a/htdocs/install/mysql/data/llx_c_tva.sql b/public/install/mysql/data/llx_c_tva.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_tva.sql rename to public/install/mysql/data/llx_c_tva.sql diff --git a/htdocs/install/mysql/data/llx_c_type_contact.sql b/public/install/mysql/data/llx_c_type_contact.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_type_contact.sql rename to public/install/mysql/data/llx_c_type_contact.sql diff --git a/htdocs/install/mysql/data/llx_c_type_fees.sql b/public/install/mysql/data/llx_c_type_fees.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_type_fees.sql rename to public/install/mysql/data/llx_c_type_fees.sql diff --git a/htdocs/install/mysql/data/llx_c_type_resource.sql b/public/install/mysql/data/llx_c_type_resource.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_type_resource.sql rename to public/install/mysql/data/llx_c_type_resource.sql diff --git a/htdocs/install/mysql/data/llx_c_typent.sql b/public/install/mysql/data/llx_c_typent.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_typent.sql rename to public/install/mysql/data/llx_c_typent.sql diff --git a/htdocs/install/mysql/data/llx_c_units.sql b/public/install/mysql/data/llx_c_units.sql similarity index 100% rename from htdocs/install/mysql/data/llx_c_units.sql rename to public/install/mysql/data/llx_c_units.sql diff --git a/htdocs/install/mysql/data/llx_const.sql b/public/install/mysql/data/llx_const.sql similarity index 100% rename from htdocs/install/mysql/data/llx_const.sql rename to public/install/mysql/data/llx_const.sql diff --git a/htdocs/install/mysql/data/llx_holiday_config.sql b/public/install/mysql/data/llx_holiday_config.sql similarity index 100% rename from htdocs/install/mysql/data/llx_holiday_config.sql rename to public/install/mysql/data/llx_holiday_config.sql diff --git a/htdocs/install/mysql/functions/functions.sql b/public/install/mysql/functions/functions.sql similarity index 100% rename from htdocs/install/mysql/functions/functions.sql rename to public/install/mysql/functions/functions.sql diff --git a/htdocs/install/mysql/functions/index.html b/public/install/mysql/functions/index.html similarity index 100% rename from htdocs/install/mysql/functions/index.html rename to public/install/mysql/functions/index.html diff --git a/htdocs/install/mysql/index.html b/public/install/mysql/index.html similarity index 100% rename from htdocs/install/mysql/index.html rename to public/install/mysql/index.html diff --git a/htdocs/install/mysql/migration/3.0.0-3.1.0.sql b/public/install/mysql/migration/3.0.0-3.1.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.0.0-3.1.0.sql rename to public/install/mysql/migration/3.0.0-3.1.0.sql diff --git a/htdocs/install/mysql/migration/3.1.0-3.2.0.sql b/public/install/mysql/migration/3.1.0-3.2.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.1.0-3.2.0.sql rename to public/install/mysql/migration/3.1.0-3.2.0.sql diff --git a/htdocs/install/mysql/migration/3.2.0-3.3.0.sql b/public/install/mysql/migration/3.2.0-3.3.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.2.0-3.3.0.sql rename to public/install/mysql/migration/3.2.0-3.3.0.sql diff --git a/htdocs/install/mysql/migration/3.3.0-3.4.0.sql b/public/install/mysql/migration/3.3.0-3.4.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.3.0-3.4.0.sql rename to public/install/mysql/migration/3.3.0-3.4.0.sql diff --git a/htdocs/install/mysql/migration/3.4.0-3.5.0.sql b/public/install/mysql/migration/3.4.0-3.5.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.4.0-3.5.0.sql rename to public/install/mysql/migration/3.4.0-3.5.0.sql diff --git a/htdocs/install/mysql/migration/3.5.0-3.6.0.sql b/public/install/mysql/migration/3.5.0-3.6.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.5.0-3.6.0.sql rename to public/install/mysql/migration/3.5.0-3.6.0.sql diff --git a/htdocs/install/mysql/migration/3.6.0-3.7.0.sql b/public/install/mysql/migration/3.6.0-3.7.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.6.0-3.7.0.sql rename to public/install/mysql/migration/3.6.0-3.7.0.sql diff --git a/htdocs/install/mysql/migration/3.7.0-3.8.0.sql b/public/install/mysql/migration/3.7.0-3.8.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.7.0-3.8.0.sql rename to public/install/mysql/migration/3.7.0-3.8.0.sql diff --git a/htdocs/install/mysql/migration/3.8.0-3.9.0.sql b/public/install/mysql/migration/3.8.0-3.9.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.8.0-3.9.0.sql rename to public/install/mysql/migration/3.8.0-3.9.0.sql diff --git a/htdocs/install/mysql/migration/3.9.0-4.0.0.sql b/public/install/mysql/migration/3.9.0-4.0.0.sql similarity index 100% rename from htdocs/install/mysql/migration/3.9.0-4.0.0.sql rename to public/install/mysql/migration/3.9.0-4.0.0.sql diff --git a/htdocs/install/mysql/migration/4.0.0-5.0.0.sql b/public/install/mysql/migration/4.0.0-5.0.0.sql similarity index 100% rename from htdocs/install/mysql/migration/4.0.0-5.0.0.sql rename to public/install/mysql/migration/4.0.0-5.0.0.sql diff --git a/htdocs/install/mysql/migration/index.html b/public/install/mysql/migration/index.html similarity index 100% rename from htdocs/install/mysql/migration/index.html rename to public/install/mysql/migration/index.html diff --git a/htdocs/install/mysql/migration/repair.sql b/public/install/mysql/migration/repair.sql similarity index 100% rename from htdocs/install/mysql/migration/repair.sql rename to public/install/mysql/migration/repair.sql diff --git a/htdocs/install/mysql/tables/index.html b/public/install/mysql/tables/index.html similarity index 100% rename from htdocs/install/mysql/tables/index.html rename to public/install/mysql/tables/index.html diff --git a/htdocs/install/mysql/tables/llx_accounting_account.key.sql b/public/install/mysql/tables/llx_accounting_account.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_account.key.sql rename to public/install/mysql/tables/llx_accounting_account.key.sql diff --git a/htdocs/install/mysql/tables/llx_accounting_account.sql b/public/install/mysql/tables/llx_accounting_account.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_account.sql rename to public/install/mysql/tables/llx_accounting_account.sql diff --git a/htdocs/install/mysql/tables/llx_accounting_bookkeeping.key.sql b/public/install/mysql/tables/llx_accounting_bookkeeping.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_bookkeeping.key.sql rename to public/install/mysql/tables/llx_accounting_bookkeeping.key.sql diff --git a/htdocs/install/mysql/tables/llx_accounting_bookkeeping.sql b/public/install/mysql/tables/llx_accounting_bookkeeping.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_bookkeeping.sql rename to public/install/mysql/tables/llx_accounting_bookkeeping.sql diff --git a/htdocs/install/mysql/tables/llx_accounting_fiscalyear.sql b/public/install/mysql/tables/llx_accounting_fiscalyear.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_fiscalyear.sql rename to public/install/mysql/tables/llx_accounting_fiscalyear.sql diff --git a/htdocs/install/mysql/tables/llx_accounting_journal.key.sql b/public/install/mysql/tables/llx_accounting_journal.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_journal.key.sql rename to public/install/mysql/tables/llx_accounting_journal.key.sql diff --git a/htdocs/install/mysql/tables/llx_accounting_journal.sql b/public/install/mysql/tables/llx_accounting_journal.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_journal.sql rename to public/install/mysql/tables/llx_accounting_journal.sql diff --git a/htdocs/install/mysql/tables/llx_accounting_system.key.sql b/public/install/mysql/tables/llx_accounting_system.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_system.key.sql rename to public/install/mysql/tables/llx_accounting_system.key.sql diff --git a/htdocs/install/mysql/tables/llx_accounting_system.sql b/public/install/mysql/tables/llx_accounting_system.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_accounting_system.sql rename to public/install/mysql/tables/llx_accounting_system.sql diff --git a/htdocs/install/mysql/tables/llx_actioncomm.key.sql b/public/install/mysql/tables/llx_actioncomm.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_actioncomm.key.sql rename to public/install/mysql/tables/llx_actioncomm.key.sql diff --git a/htdocs/install/mysql/tables/llx_actioncomm.sql b/public/install/mysql/tables/llx_actioncomm.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_actioncomm.sql rename to public/install/mysql/tables/llx_actioncomm.sql diff --git a/htdocs/install/mysql/tables/llx_actioncomm_extrafields.key.sql b/public/install/mysql/tables/llx_actioncomm_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_actioncomm_extrafields.key.sql rename to public/install/mysql/tables/llx_actioncomm_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_actioncomm_extrafields.sql b/public/install/mysql/tables/llx_actioncomm_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_actioncomm_extrafields.sql rename to public/install/mysql/tables/llx_actioncomm_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_actioncomm_resources.key.sql b/public/install/mysql/tables/llx_actioncomm_resources.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_actioncomm_resources.key.sql rename to public/install/mysql/tables/llx_actioncomm_resources.key.sql diff --git a/htdocs/install/mysql/tables/llx_actioncomm_resources.sql b/public/install/mysql/tables/llx_actioncomm_resources.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_actioncomm_resources.sql rename to public/install/mysql/tables/llx_actioncomm_resources.sql diff --git a/htdocs/install/mysql/tables/llx_adherent.key.sql b/public/install/mysql/tables/llx_adherent.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_adherent.key.sql rename to public/install/mysql/tables/llx_adherent.key.sql diff --git a/htdocs/install/mysql/tables/llx_adherent.sql b/public/install/mysql/tables/llx_adherent.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_adherent.sql rename to public/install/mysql/tables/llx_adherent.sql diff --git a/htdocs/install/mysql/tables/llx_adherent_extrafields.key.sql b/public/install/mysql/tables/llx_adherent_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_adherent_extrafields.key.sql rename to public/install/mysql/tables/llx_adherent_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_adherent_extrafields.sql b/public/install/mysql/tables/llx_adherent_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_adherent_extrafields.sql rename to public/install/mysql/tables/llx_adherent_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_adherent_type.key.sql b/public/install/mysql/tables/llx_adherent_type.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_adherent_type.key.sql rename to public/install/mysql/tables/llx_adherent_type.key.sql diff --git a/htdocs/install/mysql/tables/llx_adherent_type.sql b/public/install/mysql/tables/llx_adherent_type.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_adherent_type.sql rename to public/install/mysql/tables/llx_adherent_type.sql diff --git a/htdocs/install/mysql/tables/llx_adherent_type_extrafields.key.sql b/public/install/mysql/tables/llx_adherent_type_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_adherent_type_extrafields.key.sql rename to public/install/mysql/tables/llx_adherent_type_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_adherent_type_extrafields.sql b/public/install/mysql/tables/llx_adherent_type_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_adherent_type_extrafields.sql rename to public/install/mysql/tables/llx_adherent_type_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_advtargetemailing.key.sql b/public/install/mysql/tables/llx_advtargetemailing.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_advtargetemailing.key.sql rename to public/install/mysql/tables/llx_advtargetemailing.key.sql diff --git a/htdocs/install/mysql/tables/llx_advtargetemailing.sql b/public/install/mysql/tables/llx_advtargetemailing.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_advtargetemailing.sql rename to public/install/mysql/tables/llx_advtargetemailing.sql diff --git a/htdocs/install/mysql/tables/llx_bank.key.sql b/public/install/mysql/tables/llx_bank.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank.key.sql rename to public/install/mysql/tables/llx_bank.key.sql diff --git a/htdocs/install/mysql/tables/llx_bank.sql b/public/install/mysql/tables/llx_bank.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank.sql rename to public/install/mysql/tables/llx_bank.sql diff --git a/htdocs/install/mysql/tables/llx_bank_account.key.sql b/public/install/mysql/tables/llx_bank_account.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_account.key.sql rename to public/install/mysql/tables/llx_bank_account.key.sql diff --git a/htdocs/install/mysql/tables/llx_bank_account.sql b/public/install/mysql/tables/llx_bank_account.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_account.sql rename to public/install/mysql/tables/llx_bank_account.sql diff --git a/htdocs/install/mysql/tables/llx_bank_account_extrafields.key.sql b/public/install/mysql/tables/llx_bank_account_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_account_extrafields.key.sql rename to public/install/mysql/tables/llx_bank_account_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_bank_account_extrafields.sql b/public/install/mysql/tables/llx_bank_account_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_account_extrafields.sql rename to public/install/mysql/tables/llx_bank_account_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_bank_categ.sql b/public/install/mysql/tables/llx_bank_categ.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_categ.sql rename to public/install/mysql/tables/llx_bank_categ.sql diff --git a/htdocs/install/mysql/tables/llx_bank_class.key.sql b/public/install/mysql/tables/llx_bank_class.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_class.key.sql rename to public/install/mysql/tables/llx_bank_class.key.sql diff --git a/htdocs/install/mysql/tables/llx_bank_class.sql b/public/install/mysql/tables/llx_bank_class.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_class.sql rename to public/install/mysql/tables/llx_bank_class.sql diff --git a/htdocs/install/mysql/tables/llx_bank_url.key.sql b/public/install/mysql/tables/llx_bank_url.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_url.key.sql rename to public/install/mysql/tables/llx_bank_url.key.sql diff --git a/htdocs/install/mysql/tables/llx_bank_url.sql b/public/install/mysql/tables/llx_bank_url.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bank_url.sql rename to public/install/mysql/tables/llx_bank_url.sql diff --git a/htdocs/install/mysql/tables/llx_bookmark.key.sql b/public/install/mysql/tables/llx_bookmark.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bookmark.key.sql rename to public/install/mysql/tables/llx_bookmark.key.sql diff --git a/htdocs/install/mysql/tables/llx_bookmark.sql b/public/install/mysql/tables/llx_bookmark.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bookmark.sql rename to public/install/mysql/tables/llx_bookmark.sql diff --git a/htdocs/install/mysql/tables/llx_bordereau_cheque.key.sql b/public/install/mysql/tables/llx_bordereau_cheque.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bordereau_cheque.key.sql rename to public/install/mysql/tables/llx_bordereau_cheque.key.sql diff --git a/htdocs/install/mysql/tables/llx_bordereau_cheque.sql b/public/install/mysql/tables/llx_bordereau_cheque.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_bordereau_cheque.sql rename to public/install/mysql/tables/llx_bordereau_cheque.sql diff --git a/htdocs/install/mysql/tables/llx_boxes.key.sql b/public/install/mysql/tables/llx_boxes.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_boxes.key.sql rename to public/install/mysql/tables/llx_boxes.key.sql diff --git a/htdocs/install/mysql/tables/llx_boxes.sql b/public/install/mysql/tables/llx_boxes.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_boxes.sql rename to public/install/mysql/tables/llx_boxes.sql diff --git a/htdocs/install/mysql/tables/llx_boxes_def.key.sql b/public/install/mysql/tables/llx_boxes_def.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_boxes_def.key.sql rename to public/install/mysql/tables/llx_boxes_def.key.sql diff --git a/htdocs/install/mysql/tables/llx_boxes_def.sql b/public/install/mysql/tables/llx_boxes_def.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_boxes_def.sql rename to public/install/mysql/tables/llx_boxes_def.sql diff --git a/htdocs/install/mysql/tables/llx_budget.sql b/public/install/mysql/tables/llx_budget.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_budget.sql rename to public/install/mysql/tables/llx_budget.sql diff --git a/htdocs/install/mysql/tables/llx_budget_lines.key.sql b/public/install/mysql/tables/llx_budget_lines.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_budget_lines.key.sql rename to public/install/mysql/tables/llx_budget_lines.key.sql diff --git a/htdocs/install/mysql/tables/llx_budget_lines.sql b/public/install/mysql/tables/llx_budget_lines.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_budget_lines.sql rename to public/install/mysql/tables/llx_budget_lines.sql diff --git a/htdocs/install/mysql/tables/llx_c_accounting_category.key.sql b/public/install/mysql/tables/llx_c_accounting_category.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_accounting_category.key.sql rename to public/install/mysql/tables/llx_c_accounting_category.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_accounting_category.sql b/public/install/mysql/tables/llx_c_accounting_category.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_accounting_category.sql rename to public/install/mysql/tables/llx_c_accounting_category.sql diff --git a/htdocs/install/mysql/tables/llx_c_action_trigger.key.sql b/public/install/mysql/tables/llx_c_action_trigger.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_action_trigger.key.sql rename to public/install/mysql/tables/llx_c_action_trigger.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_action_trigger.sql b/public/install/mysql/tables/llx_c_action_trigger.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_action_trigger.sql rename to public/install/mysql/tables/llx_c_action_trigger.sql diff --git a/htdocs/install/mysql/tables/llx_c_actioncomm.key.sql b/public/install/mysql/tables/llx_c_actioncomm.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_actioncomm.key.sql rename to public/install/mysql/tables/llx_c_actioncomm.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_actioncomm.sql b/public/install/mysql/tables/llx_c_actioncomm.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_actioncomm.sql rename to public/install/mysql/tables/llx_c_actioncomm.sql diff --git a/htdocs/install/mysql/tables/llx_c_availability.key.sql b/public/install/mysql/tables/llx_c_availability.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_availability.key.sql rename to public/install/mysql/tables/llx_c_availability.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_availability.sql b/public/install/mysql/tables/llx_c_availability.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_availability.sql rename to public/install/mysql/tables/llx_c_availability.sql diff --git a/htdocs/install/mysql/tables/llx_c_barcode_type.key.sql b/public/install/mysql/tables/llx_c_barcode_type.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_barcode_type.key.sql rename to public/install/mysql/tables/llx_c_barcode_type.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_barcode_type.sql b/public/install/mysql/tables/llx_c_barcode_type.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_barcode_type.sql rename to public/install/mysql/tables/llx_c_barcode_type.sql diff --git a/htdocs/install/mysql/tables/llx_c_chargesociales.sql b/public/install/mysql/tables/llx_c_chargesociales.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_chargesociales.sql rename to public/install/mysql/tables/llx_c_chargesociales.sql diff --git a/htdocs/install/mysql/tables/llx_c_civility.key.sql b/public/install/mysql/tables/llx_c_civility.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_civility.key.sql rename to public/install/mysql/tables/llx_c_civility.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_civility.sql b/public/install/mysql/tables/llx_c_civility.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_civility.sql rename to public/install/mysql/tables/llx_c_civility.sql diff --git a/htdocs/install/mysql/tables/llx_c_country.key.sql b/public/install/mysql/tables/llx_c_country.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_country.key.sql rename to public/install/mysql/tables/llx_c_country.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_country.sql b/public/install/mysql/tables/llx_c_country.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_country.sql rename to public/install/mysql/tables/llx_c_country.sql diff --git a/htdocs/install/mysql/tables/llx_c_currencies.key.sql b/public/install/mysql/tables/llx_c_currencies.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_currencies.key.sql rename to public/install/mysql/tables/llx_c_currencies.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_currencies.sql b/public/install/mysql/tables/llx_c_currencies.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_currencies.sql rename to public/install/mysql/tables/llx_c_currencies.sql diff --git a/htdocs/install/mysql/tables/llx_c_departements.key.sql b/public/install/mysql/tables/llx_c_departements.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_departements.key.sql rename to public/install/mysql/tables/llx_c_departements.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_departements.sql b/public/install/mysql/tables/llx_c_departements.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_departements.sql rename to public/install/mysql/tables/llx_c_departements.sql diff --git a/htdocs/install/mysql/tables/llx_c_ecotaxe.key.sql b/public/install/mysql/tables/llx_c_ecotaxe.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_ecotaxe.key.sql rename to public/install/mysql/tables/llx_c_ecotaxe.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_ecotaxe.sql b/public/install/mysql/tables/llx_c_ecotaxe.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_ecotaxe.sql rename to public/install/mysql/tables/llx_c_ecotaxe.sql diff --git a/htdocs/install/mysql/tables/llx_c_effectif.key.sql b/public/install/mysql/tables/llx_c_effectif.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_effectif.key.sql rename to public/install/mysql/tables/llx_c_effectif.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_effectif.sql b/public/install/mysql/tables/llx_c_effectif.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_effectif.sql rename to public/install/mysql/tables/llx_c_effectif.sql diff --git a/htdocs/install/mysql/tables/llx_c_email_templates.key.sql b/public/install/mysql/tables/llx_c_email_templates.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_email_templates.key.sql rename to public/install/mysql/tables/llx_c_email_templates.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_email_templates.sql b/public/install/mysql/tables/llx_c_email_templates.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_email_templates.sql rename to public/install/mysql/tables/llx_c_email_templates.sql diff --git a/htdocs/install/mysql/tables/llx_c_field_list.sql b/public/install/mysql/tables/llx_c_field_list.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_field_list.sql rename to public/install/mysql/tables/llx_c_field_list.sql diff --git a/htdocs/install/mysql/tables/llx_c_format_cards.sql b/public/install/mysql/tables/llx_c_format_cards.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_format_cards.sql rename to public/install/mysql/tables/llx_c_format_cards.sql diff --git a/htdocs/install/mysql/tables/llx_c_forme_juridique.key.sql b/public/install/mysql/tables/llx_c_forme_juridique.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_forme_juridique.key.sql rename to public/install/mysql/tables/llx_c_forme_juridique.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_forme_juridique.sql b/public/install/mysql/tables/llx_c_forme_juridique.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_forme_juridique.sql rename to public/install/mysql/tables/llx_c_forme_juridique.sql diff --git a/htdocs/install/mysql/tables/llx_c_holiday_types.key.sql b/public/install/mysql/tables/llx_c_holiday_types.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_holiday_types.key.sql rename to public/install/mysql/tables/llx_c_holiday_types.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_holiday_types.sql b/public/install/mysql/tables/llx_c_holiday_types.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_holiday_types.sql rename to public/install/mysql/tables/llx_c_holiday_types.sql diff --git a/htdocs/install/mysql/tables/llx_c_hrm_department.sql b/public/install/mysql/tables/llx_c_hrm_department.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_hrm_department.sql rename to public/install/mysql/tables/llx_c_hrm_department.sql diff --git a/htdocs/install/mysql/tables/llx_c_hrm_function.sql b/public/install/mysql/tables/llx_c_hrm_function.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_hrm_function.sql rename to public/install/mysql/tables/llx_c_hrm_function.sql diff --git a/htdocs/install/mysql/tables/llx_c_incoterms.key.sql b/public/install/mysql/tables/llx_c_incoterms.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_incoterms.key.sql rename to public/install/mysql/tables/llx_c_incoterms.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_incoterms.sql b/public/install/mysql/tables/llx_c_incoterms.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_incoterms.sql rename to public/install/mysql/tables/llx_c_incoterms.sql diff --git a/htdocs/install/mysql/tables/llx_c_input_method.key.sql b/public/install/mysql/tables/llx_c_input_method.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_input_method.key.sql rename to public/install/mysql/tables/llx_c_input_method.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_input_method.sql b/public/install/mysql/tables/llx_c_input_method.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_input_method.sql rename to public/install/mysql/tables/llx_c_input_method.sql diff --git a/htdocs/install/mysql/tables/llx_c_input_reason.key.sql b/public/install/mysql/tables/llx_c_input_reason.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_input_reason.key.sql rename to public/install/mysql/tables/llx_c_input_reason.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_input_reason.sql b/public/install/mysql/tables/llx_c_input_reason.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_input_reason.sql rename to public/install/mysql/tables/llx_c_input_reason.sql diff --git a/htdocs/install/mysql/tables/llx_c_lead_status.key.sql b/public/install/mysql/tables/llx_c_lead_status.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_lead_status.key.sql rename to public/install/mysql/tables/llx_c_lead_status.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_lead_status.sql b/public/install/mysql/tables/llx_c_lead_status.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_lead_status.sql rename to public/install/mysql/tables/llx_c_lead_status.sql diff --git a/htdocs/install/mysql/tables/llx_c_paiement.key.sql b/public/install/mysql/tables/llx_c_paiement.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_paiement.key.sql rename to public/install/mysql/tables/llx_c_paiement.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_paiement.sql b/public/install/mysql/tables/llx_c_paiement.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_paiement.sql rename to public/install/mysql/tables/llx_c_paiement.sql diff --git a/htdocs/install/mysql/tables/llx_c_paper_format.sql b/public/install/mysql/tables/llx_c_paper_format.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_paper_format.sql rename to public/install/mysql/tables/llx_c_paper_format.sql diff --git a/htdocs/install/mysql/tables/llx_c_payment_term.sql b/public/install/mysql/tables/llx_c_payment_term.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_payment_term.sql rename to public/install/mysql/tables/llx_c_payment_term.sql diff --git a/htdocs/install/mysql/tables/llx_c_price_expression.sql b/public/install/mysql/tables/llx_c_price_expression.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_price_expression.sql rename to public/install/mysql/tables/llx_c_price_expression.sql diff --git a/htdocs/install/mysql/tables/llx_c_price_global_variable.sql b/public/install/mysql/tables/llx_c_price_global_variable.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_price_global_variable.sql rename to public/install/mysql/tables/llx_c_price_global_variable.sql diff --git a/htdocs/install/mysql/tables/llx_c_price_global_variable_updater.sql b/public/install/mysql/tables/llx_c_price_global_variable_updater.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_price_global_variable_updater.sql rename to public/install/mysql/tables/llx_c_price_global_variable_updater.sql diff --git a/htdocs/install/mysql/tables/llx_c_propalst.key.sql b/public/install/mysql/tables/llx_c_propalst.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_propalst.key.sql rename to public/install/mysql/tables/llx_c_propalst.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_propalst.sql b/public/install/mysql/tables/llx_c_propalst.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_propalst.sql rename to public/install/mysql/tables/llx_c_propalst.sql diff --git a/htdocs/install/mysql/tables/llx_c_prospectlevel.sql b/public/install/mysql/tables/llx_c_prospectlevel.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_prospectlevel.sql rename to public/install/mysql/tables/llx_c_prospectlevel.sql diff --git a/htdocs/install/mysql/tables/llx_c_regions.key.sql b/public/install/mysql/tables/llx_c_regions.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_regions.key.sql rename to public/install/mysql/tables/llx_c_regions.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_regions.sql b/public/install/mysql/tables/llx_c_regions.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_regions.sql rename to public/install/mysql/tables/llx_c_regions.sql diff --git a/htdocs/install/mysql/tables/llx_c_revenuestamp.sql b/public/install/mysql/tables/llx_c_revenuestamp.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_revenuestamp.sql rename to public/install/mysql/tables/llx_c_revenuestamp.sql diff --git a/htdocs/install/mysql/tables/llx_c_shipment_mode.key.sql b/public/install/mysql/tables/llx_c_shipment_mode.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_shipment_mode.key.sql rename to public/install/mysql/tables/llx_c_shipment_mode.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_shipment_mode.sql b/public/install/mysql/tables/llx_c_shipment_mode.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_shipment_mode.sql rename to public/install/mysql/tables/llx_c_shipment_mode.sql diff --git a/htdocs/install/mysql/tables/llx_c_stcomm.key.sql b/public/install/mysql/tables/llx_c_stcomm.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_stcomm.key.sql rename to public/install/mysql/tables/llx_c_stcomm.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_stcomm.sql b/public/install/mysql/tables/llx_c_stcomm.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_stcomm.sql rename to public/install/mysql/tables/llx_c_stcomm.sql diff --git a/htdocs/install/mysql/tables/llx_c_tva.key.sql b/public/install/mysql/tables/llx_c_tva.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_tva.key.sql rename to public/install/mysql/tables/llx_c_tva.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_tva.sql b/public/install/mysql/tables/llx_c_tva.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_tva.sql rename to public/install/mysql/tables/llx_c_tva.sql diff --git a/htdocs/install/mysql/tables/llx_c_type_contact.key.sql b/public/install/mysql/tables/llx_c_type_contact.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_type_contact.key.sql rename to public/install/mysql/tables/llx_c_type_contact.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_type_contact.sql b/public/install/mysql/tables/llx_c_type_contact.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_type_contact.sql rename to public/install/mysql/tables/llx_c_type_contact.sql diff --git a/htdocs/install/mysql/tables/llx_c_type_fees.key.sql b/public/install/mysql/tables/llx_c_type_fees.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_type_fees.key.sql rename to public/install/mysql/tables/llx_c_type_fees.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_type_fees.sql b/public/install/mysql/tables/llx_c_type_fees.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_type_fees.sql rename to public/install/mysql/tables/llx_c_type_fees.sql diff --git a/htdocs/install/mysql/tables/llx_c_type_resource.key.sql b/public/install/mysql/tables/llx_c_type_resource.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_type_resource.key.sql rename to public/install/mysql/tables/llx_c_type_resource.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_type_resource.sql b/public/install/mysql/tables/llx_c_type_resource.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_type_resource.sql rename to public/install/mysql/tables/llx_c_type_resource.sql diff --git a/htdocs/install/mysql/tables/llx_c_typent.key.sql b/public/install/mysql/tables/llx_c_typent.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_typent.key.sql rename to public/install/mysql/tables/llx_c_typent.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_typent.sql b/public/install/mysql/tables/llx_c_typent.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_typent.sql rename to public/install/mysql/tables/llx_c_typent.sql diff --git a/htdocs/install/mysql/tables/llx_c_units.key.sql b/public/install/mysql/tables/llx_c_units.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_units.key.sql rename to public/install/mysql/tables/llx_c_units.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_units.sql b/public/install/mysql/tables/llx_c_units.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_units.sql rename to public/install/mysql/tables/llx_c_units.sql diff --git a/htdocs/install/mysql/tables/llx_c_ziptown.key.sql b/public/install/mysql/tables/llx_c_ziptown.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_ziptown.key.sql rename to public/install/mysql/tables/llx_c_ziptown.key.sql diff --git a/htdocs/install/mysql/tables/llx_c_ziptown.sql b/public/install/mysql/tables/llx_c_ziptown.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_c_ziptown.sql rename to public/install/mysql/tables/llx_c_ziptown.sql diff --git a/htdocs/install/mysql/tables/llx_categorie.key.sql b/public/install/mysql/tables/llx_categorie.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie.key.sql rename to public/install/mysql/tables/llx_categorie.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie.sql b/public/install/mysql/tables/llx_categorie.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie.sql rename to public/install/mysql/tables/llx_categorie.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_account.key.sql b/public/install/mysql/tables/llx_categorie_account.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_account.key.sql rename to public/install/mysql/tables/llx_categorie_account.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_account.sql b/public/install/mysql/tables/llx_categorie_account.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_account.sql rename to public/install/mysql/tables/llx_categorie_account.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_contact.key.sql b/public/install/mysql/tables/llx_categorie_contact.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_contact.key.sql rename to public/install/mysql/tables/llx_categorie_contact.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_contact.sql b/public/install/mysql/tables/llx_categorie_contact.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_contact.sql rename to public/install/mysql/tables/llx_categorie_contact.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_fournisseur.key.sql b/public/install/mysql/tables/llx_categorie_fournisseur.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_fournisseur.key.sql rename to public/install/mysql/tables/llx_categorie_fournisseur.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_fournisseur.sql b/public/install/mysql/tables/llx_categorie_fournisseur.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_fournisseur.sql rename to public/install/mysql/tables/llx_categorie_fournisseur.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_lang.key.sql b/public/install/mysql/tables/llx_categorie_lang.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_lang.key.sql rename to public/install/mysql/tables/llx_categorie_lang.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_lang.sql b/public/install/mysql/tables/llx_categorie_lang.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_lang.sql rename to public/install/mysql/tables/llx_categorie_lang.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_member.key.sql b/public/install/mysql/tables/llx_categorie_member.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_member.key.sql rename to public/install/mysql/tables/llx_categorie_member.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_member.sql b/public/install/mysql/tables/llx_categorie_member.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_member.sql rename to public/install/mysql/tables/llx_categorie_member.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_product.key.sql b/public/install/mysql/tables/llx_categorie_product.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_product.key.sql rename to public/install/mysql/tables/llx_categorie_product.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_product.sql b/public/install/mysql/tables/llx_categorie_product.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_product.sql rename to public/install/mysql/tables/llx_categorie_product.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_project.key.sql b/public/install/mysql/tables/llx_categorie_project.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_project.key.sql rename to public/install/mysql/tables/llx_categorie_project.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_project.sql b/public/install/mysql/tables/llx_categorie_project.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_project.sql rename to public/install/mysql/tables/llx_categorie_project.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_societe.key.sql b/public/install/mysql/tables/llx_categorie_societe.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_societe.key.sql rename to public/install/mysql/tables/llx_categorie_societe.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_societe.sql b/public/install/mysql/tables/llx_categorie_societe.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_societe.sql rename to public/install/mysql/tables/llx_categorie_societe.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_user.key.sql b/public/install/mysql/tables/llx_categorie_user.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_user.key.sql rename to public/install/mysql/tables/llx_categorie_user.key.sql diff --git a/htdocs/install/mysql/tables/llx_categorie_user.sql b/public/install/mysql/tables/llx_categorie_user.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categorie_user.sql rename to public/install/mysql/tables/llx_categorie_user.sql diff --git a/htdocs/install/mysql/tables/llx_categories_extrafields.key.sql b/public/install/mysql/tables/llx_categories_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categories_extrafields.key.sql rename to public/install/mysql/tables/llx_categories_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_categories_extrafields.sql b/public/install/mysql/tables/llx_categories_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_categories_extrafields.sql rename to public/install/mysql/tables/llx_categories_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_chargesociales.sql b/public/install/mysql/tables/llx_chargesociales.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_chargesociales.sql rename to public/install/mysql/tables/llx_chargesociales.sql diff --git a/htdocs/install/mysql/tables/llx_commande.key.sql b/public/install/mysql/tables/llx_commande.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande.key.sql rename to public/install/mysql/tables/llx_commande.key.sql diff --git a/htdocs/install/mysql/tables/llx_commande.sql b/public/install/mysql/tables/llx_commande.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande.sql rename to public/install/mysql/tables/llx_commande.sql diff --git a/htdocs/install/mysql/tables/llx_commande_extrafields.key.sql b/public/install/mysql/tables/llx_commande_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_extrafields.key.sql rename to public/install/mysql/tables/llx_commande_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_commande_extrafields.sql b/public/install/mysql/tables/llx_commande_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_extrafields.sql rename to public/install/mysql/tables/llx_commande_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur.key.sql b/public/install/mysql/tables/llx_commande_fournisseur.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseur.key.sql rename to public/install/mysql/tables/llx_commande_fournisseur.key.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur.sql b/public/install/mysql/tables/llx_commande_fournisseur.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseur.sql rename to public/install/mysql/tables/llx_commande_fournisseur.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur_dispatch.key.sql b/public/install/mysql/tables/llx_commande_fournisseur_dispatch.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseur_dispatch.key.sql rename to public/install/mysql/tables/llx_commande_fournisseur_dispatch.key.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur_dispatch.sql b/public/install/mysql/tables/llx_commande_fournisseur_dispatch.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseur_dispatch.sql rename to public/install/mysql/tables/llx_commande_fournisseur_dispatch.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur_extrafields.key.sql b/public/install/mysql/tables/llx_commande_fournisseur_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseur_extrafields.key.sql rename to public/install/mysql/tables/llx_commande_fournisseur_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur_extrafields.sql b/public/install/mysql/tables/llx_commande_fournisseur_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseur_extrafields.sql rename to public/install/mysql/tables/llx_commande_fournisseur_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur_log.sql b/public/install/mysql/tables/llx_commande_fournisseur_log.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseur_log.sql rename to public/install/mysql/tables/llx_commande_fournisseur_log.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseurdet.key.sql b/public/install/mysql/tables/llx_commande_fournisseurdet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseurdet.key.sql rename to public/install/mysql/tables/llx_commande_fournisseurdet.key.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseurdet.sql b/public/install/mysql/tables/llx_commande_fournisseurdet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseurdet.sql rename to public/install/mysql/tables/llx_commande_fournisseurdet.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseurdet_extrafields.key.sql b/public/install/mysql/tables/llx_commande_fournisseurdet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseurdet_extrafields.key.sql rename to public/install/mysql/tables/llx_commande_fournisseurdet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql b/public/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql rename to public/install/mysql/tables/llx_commande_fournisseurdet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_commandedet.key.sql b/public/install/mysql/tables/llx_commandedet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commandedet.key.sql rename to public/install/mysql/tables/llx_commandedet.key.sql diff --git a/htdocs/install/mysql/tables/llx_commandedet.sql b/public/install/mysql/tables/llx_commandedet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commandedet.sql rename to public/install/mysql/tables/llx_commandedet.sql diff --git a/htdocs/install/mysql/tables/llx_commandedet_extrafields.key.sql b/public/install/mysql/tables/llx_commandedet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commandedet_extrafields.key.sql rename to public/install/mysql/tables/llx_commandedet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_commandedet_extrafields.sql b/public/install/mysql/tables/llx_commandedet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_commandedet_extrafields.sql rename to public/install/mysql/tables/llx_commandedet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_const.key.sql b/public/install/mysql/tables/llx_const.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_const.key.sql rename to public/install/mysql/tables/llx_const.key.sql diff --git a/htdocs/install/mysql/tables/llx_const.sql b/public/install/mysql/tables/llx_const.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_const.sql rename to public/install/mysql/tables/llx_const.sql diff --git a/htdocs/install/mysql/tables/llx_contrat.key.sql b/public/install/mysql/tables/llx_contrat.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contrat.key.sql rename to public/install/mysql/tables/llx_contrat.key.sql diff --git a/htdocs/install/mysql/tables/llx_contrat.sql b/public/install/mysql/tables/llx_contrat.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contrat.sql rename to public/install/mysql/tables/llx_contrat.sql diff --git a/htdocs/install/mysql/tables/llx_contrat_extrafields.key.sql b/public/install/mysql/tables/llx_contrat_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contrat_extrafields.key.sql rename to public/install/mysql/tables/llx_contrat_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_contrat_extrafields.sql b/public/install/mysql/tables/llx_contrat_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contrat_extrafields.sql rename to public/install/mysql/tables/llx_contrat_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_contratdet.key.sql b/public/install/mysql/tables/llx_contratdet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contratdet.key.sql rename to public/install/mysql/tables/llx_contratdet.key.sql diff --git a/htdocs/install/mysql/tables/llx_contratdet.sql b/public/install/mysql/tables/llx_contratdet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contratdet.sql rename to public/install/mysql/tables/llx_contratdet.sql diff --git a/htdocs/install/mysql/tables/llx_contratdet_extrafields.key.sql b/public/install/mysql/tables/llx_contratdet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contratdet_extrafields.key.sql rename to public/install/mysql/tables/llx_contratdet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_contratdet_extrafields.sql b/public/install/mysql/tables/llx_contratdet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contratdet_extrafields.sql rename to public/install/mysql/tables/llx_contratdet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_contratdet_log.key.sql b/public/install/mysql/tables/llx_contratdet_log.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contratdet_log.key.sql rename to public/install/mysql/tables/llx_contratdet_log.key.sql diff --git a/htdocs/install/mysql/tables/llx_contratdet_log.sql b/public/install/mysql/tables/llx_contratdet_log.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_contratdet_log.sql rename to public/install/mysql/tables/llx_contratdet_log.sql diff --git a/htdocs/install/mysql/tables/llx_cronjob.key.sql b/public/install/mysql/tables/llx_cronjob.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_cronjob.key.sql rename to public/install/mysql/tables/llx_cronjob.key.sql diff --git a/htdocs/install/mysql/tables/llx_cronjob.sql b/public/install/mysql/tables/llx_cronjob.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_cronjob.sql rename to public/install/mysql/tables/llx_cronjob.sql diff --git a/htdocs/install/mysql/tables/llx_deplacement.sql b/public/install/mysql/tables/llx_deplacement.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_deplacement.sql rename to public/install/mysql/tables/llx_deplacement.sql diff --git a/htdocs/install/mysql/tables/llx_document_model.key.sql b/public/install/mysql/tables/llx_document_model.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_document_model.key.sql rename to public/install/mysql/tables/llx_document_model.key.sql diff --git a/htdocs/install/mysql/tables/llx_document_model.sql b/public/install/mysql/tables/llx_document_model.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_document_model.sql rename to public/install/mysql/tables/llx_document_model.sql diff --git a/htdocs/install/mysql/tables/llx_don.sql b/public/install/mysql/tables/llx_don.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_don.sql rename to public/install/mysql/tables/llx_don.sql diff --git a/htdocs/install/mysql/tables/llx_don_extrafields.key.sql b/public/install/mysql/tables/llx_don_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_don_extrafields.key.sql rename to public/install/mysql/tables/llx_don_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_don_extrafields.sql b/public/install/mysql/tables/llx_don_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_don_extrafields.sql rename to public/install/mysql/tables/llx_don_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_ecm_directories.key.sql b/public/install/mysql/tables/llx_ecm_directories.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_ecm_directories.key.sql rename to public/install/mysql/tables/llx_ecm_directories.key.sql diff --git a/htdocs/install/mysql/tables/llx_ecm_directories.sql b/public/install/mysql/tables/llx_ecm_directories.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_ecm_directories.sql rename to public/install/mysql/tables/llx_ecm_directories.sql diff --git a/htdocs/install/mysql/tables/llx_ecm_files.key.sql b/public/install/mysql/tables/llx_ecm_files.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_ecm_files.key.sql rename to public/install/mysql/tables/llx_ecm_files.key.sql diff --git a/htdocs/install/mysql/tables/llx_ecm_files.sql b/public/install/mysql/tables/llx_ecm_files.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_ecm_files.sql rename to public/install/mysql/tables/llx_ecm_files.sql diff --git a/htdocs/install/mysql/tables/llx_element_contact.key.sql b/public/install/mysql/tables/llx_element_contact.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_element_contact.key.sql rename to public/install/mysql/tables/llx_element_contact.key.sql diff --git a/htdocs/install/mysql/tables/llx_element_contact.sql b/public/install/mysql/tables/llx_element_contact.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_element_contact.sql rename to public/install/mysql/tables/llx_element_contact.sql diff --git a/htdocs/install/mysql/tables/llx_element_element.key.sql b/public/install/mysql/tables/llx_element_element.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_element_element.key.sql rename to public/install/mysql/tables/llx_element_element.key.sql diff --git a/htdocs/install/mysql/tables/llx_element_element.sql b/public/install/mysql/tables/llx_element_element.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_element_element.sql rename to public/install/mysql/tables/llx_element_element.sql diff --git a/htdocs/install/mysql/tables/llx_element_resources.key.sql b/public/install/mysql/tables/llx_element_resources.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_element_resources.key.sql rename to public/install/mysql/tables/llx_element_resources.key.sql diff --git a/htdocs/install/mysql/tables/llx_element_resources.sql b/public/install/mysql/tables/llx_element_resources.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_element_resources.sql rename to public/install/mysql/tables/llx_element_resources.sql diff --git a/htdocs/install/mysql/tables/llx_element_tag.key.sql b/public/install/mysql/tables/llx_element_tag.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_element_tag.key.sql rename to public/install/mysql/tables/llx_element_tag.key.sql diff --git a/htdocs/install/mysql/tables/llx_element_tag.sql b/public/install/mysql/tables/llx_element_tag.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_element_tag.sql rename to public/install/mysql/tables/llx_element_tag.sql diff --git a/htdocs/install/mysql/tables/llx_entrepot.key.sql b/public/install/mysql/tables/llx_entrepot.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_entrepot.key.sql rename to public/install/mysql/tables/llx_entrepot.key.sql diff --git a/htdocs/install/mysql/tables/llx_entrepot.sql b/public/install/mysql/tables/llx_entrepot.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_entrepot.sql rename to public/install/mysql/tables/llx_entrepot.sql diff --git a/htdocs/install/mysql/tables/llx_establishment.sql b/public/install/mysql/tables/llx_establishment.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_establishment.sql rename to public/install/mysql/tables/llx_establishment.sql diff --git a/htdocs/install/mysql/tables/llx_event_element.sql b/public/install/mysql/tables/llx_event_element.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_event_element.sql rename to public/install/mysql/tables/llx_event_element.sql diff --git a/htdocs/install/mysql/tables/llx_events.key.sql b/public/install/mysql/tables/llx_events.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_events.key.sql rename to public/install/mysql/tables/llx_events.key.sql diff --git a/htdocs/install/mysql/tables/llx_events.sql b/public/install/mysql/tables/llx_events.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_events.sql rename to public/install/mysql/tables/llx_events.sql diff --git a/htdocs/install/mysql/tables/llx_expedition.key.sql b/public/install/mysql/tables/llx_expedition.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expedition.key.sql rename to public/install/mysql/tables/llx_expedition.key.sql diff --git a/htdocs/install/mysql/tables/llx_expedition.sql b/public/install/mysql/tables/llx_expedition.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expedition.sql rename to public/install/mysql/tables/llx_expedition.sql diff --git a/htdocs/install/mysql/tables/llx_expedition_extrafields.key.sql b/public/install/mysql/tables/llx_expedition_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expedition_extrafields.key.sql rename to public/install/mysql/tables/llx_expedition_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_expedition_extrafields.sql b/public/install/mysql/tables/llx_expedition_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expedition_extrafields.sql rename to public/install/mysql/tables/llx_expedition_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_expeditiondet.key.sql b/public/install/mysql/tables/llx_expeditiondet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expeditiondet.key.sql rename to public/install/mysql/tables/llx_expeditiondet.key.sql diff --git a/htdocs/install/mysql/tables/llx_expeditiondet.sql b/public/install/mysql/tables/llx_expeditiondet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expeditiondet.sql rename to public/install/mysql/tables/llx_expeditiondet.sql diff --git a/htdocs/install/mysql/tables/llx_expeditiondet_batch.key.sql b/public/install/mysql/tables/llx_expeditiondet_batch.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expeditiondet_batch.key.sql rename to public/install/mysql/tables/llx_expeditiondet_batch.key.sql diff --git a/htdocs/install/mysql/tables/llx_expeditiondet_batch.sql b/public/install/mysql/tables/llx_expeditiondet_batch.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expeditiondet_batch.sql rename to public/install/mysql/tables/llx_expeditiondet_batch.sql diff --git a/htdocs/install/mysql/tables/llx_expeditiondet_extrafields.key.sql b/public/install/mysql/tables/llx_expeditiondet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expeditiondet_extrafields.key.sql rename to public/install/mysql/tables/llx_expeditiondet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_expeditiondet_extrafields.sql b/public/install/mysql/tables/llx_expeditiondet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expeditiondet_extrafields.sql rename to public/install/mysql/tables/llx_expeditiondet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_expensereport.key.sql b/public/install/mysql/tables/llx_expensereport.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expensereport.key.sql rename to public/install/mysql/tables/llx_expensereport.key.sql diff --git a/htdocs/install/mysql/tables/llx_expensereport.sql b/public/install/mysql/tables/llx_expensereport.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expensereport.sql rename to public/install/mysql/tables/llx_expensereport.sql diff --git a/htdocs/install/mysql/tables/llx_expensereport_det.sql b/public/install/mysql/tables/llx_expensereport_det.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expensereport_det.sql rename to public/install/mysql/tables/llx_expensereport_det.sql diff --git a/htdocs/install/mysql/tables/llx_expensereport_extrafields.key.sql b/public/install/mysql/tables/llx_expensereport_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expensereport_extrafields.key.sql rename to public/install/mysql/tables/llx_expensereport_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_expensereport_extrafields.sql b/public/install/mysql/tables/llx_expensereport_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_expensereport_extrafields.sql rename to public/install/mysql/tables/llx_expensereport_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_export_compta.sql b/public/install/mysql/tables/llx_export_compta.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_export_compta.sql rename to public/install/mysql/tables/llx_export_compta.sql diff --git a/htdocs/install/mysql/tables/llx_export_model.key.sql b/public/install/mysql/tables/llx_export_model.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_export_model.key.sql rename to public/install/mysql/tables/llx_export_model.key.sql diff --git a/htdocs/install/mysql/tables/llx_export_model.sql b/public/install/mysql/tables/llx_export_model.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_export_model.sql rename to public/install/mysql/tables/llx_export_model.sql diff --git a/htdocs/install/mysql/tables/llx_extrafields.key.sql b/public/install/mysql/tables/llx_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_extrafields.key.sql rename to public/install/mysql/tables/llx_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_extrafields.sql b/public/install/mysql/tables/llx_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_extrafields.sql rename to public/install/mysql/tables/llx_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_facture.key.sql b/public/install/mysql/tables/llx_facture.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture.key.sql rename to public/install/mysql/tables/llx_facture.key.sql diff --git a/htdocs/install/mysql/tables/llx_facture.sql b/public/install/mysql/tables/llx_facture.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture.sql rename to public/install/mysql/tables/llx_facture.sql diff --git a/htdocs/install/mysql/tables/llx_facture_extrafields.key.sql b/public/install/mysql/tables/llx_facture_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_extrafields.key.sql rename to public/install/mysql/tables/llx_facture_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_facture_extrafields.sql b/public/install/mysql/tables/llx_facture_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_extrafields.sql rename to public/install/mysql/tables/llx_facture_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_facture_fourn.key.sql b/public/install/mysql/tables/llx_facture_fourn.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_fourn.key.sql rename to public/install/mysql/tables/llx_facture_fourn.key.sql diff --git a/htdocs/install/mysql/tables/llx_facture_fourn.sql b/public/install/mysql/tables/llx_facture_fourn.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_fourn.sql rename to public/install/mysql/tables/llx_facture_fourn.sql diff --git a/htdocs/install/mysql/tables/llx_facture_fourn_det.key.sql b/public/install/mysql/tables/llx_facture_fourn_det.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_fourn_det.key.sql rename to public/install/mysql/tables/llx_facture_fourn_det.key.sql diff --git a/htdocs/install/mysql/tables/llx_facture_fourn_det.sql b/public/install/mysql/tables/llx_facture_fourn_det.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_fourn_det.sql rename to public/install/mysql/tables/llx_facture_fourn_det.sql diff --git a/htdocs/install/mysql/tables/llx_facture_fourn_det_extrafields.key.sql b/public/install/mysql/tables/llx_facture_fourn_det_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_fourn_det_extrafields.key.sql rename to public/install/mysql/tables/llx_facture_fourn_det_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_facture_fourn_det_extrafields.sql b/public/install/mysql/tables/llx_facture_fourn_det_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_fourn_det_extrafields.sql rename to public/install/mysql/tables/llx_facture_fourn_det_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_facture_fourn_extrafields.key.sql b/public/install/mysql/tables/llx_facture_fourn_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_fourn_extrafields.key.sql rename to public/install/mysql/tables/llx_facture_fourn_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_facture_fourn_extrafields.sql b/public/install/mysql/tables/llx_facture_fourn_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_fourn_extrafields.sql rename to public/install/mysql/tables/llx_facture_fourn_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_facture_rec.key.sql b/public/install/mysql/tables/llx_facture_rec.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_rec.key.sql rename to public/install/mysql/tables/llx_facture_rec.key.sql diff --git a/htdocs/install/mysql/tables/llx_facture_rec.sql b/public/install/mysql/tables/llx_facture_rec.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facture_rec.sql rename to public/install/mysql/tables/llx_facture_rec.sql diff --git a/htdocs/install/mysql/tables/llx_facturedet.key.sql b/public/install/mysql/tables/llx_facturedet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facturedet.key.sql rename to public/install/mysql/tables/llx_facturedet.key.sql diff --git a/htdocs/install/mysql/tables/llx_facturedet.sql b/public/install/mysql/tables/llx_facturedet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facturedet.sql rename to public/install/mysql/tables/llx_facturedet.sql diff --git a/htdocs/install/mysql/tables/llx_facturedet_extrafields.key.sql b/public/install/mysql/tables/llx_facturedet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facturedet_extrafields.key.sql rename to public/install/mysql/tables/llx_facturedet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_facturedet_extrafields.sql b/public/install/mysql/tables/llx_facturedet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facturedet_extrafields.sql rename to public/install/mysql/tables/llx_facturedet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_facturedet_rec.key.sql b/public/install/mysql/tables/llx_facturedet_rec.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facturedet_rec.key.sql rename to public/install/mysql/tables/llx_facturedet_rec.key.sql diff --git a/htdocs/install/mysql/tables/llx_facturedet_rec.sql b/public/install/mysql/tables/llx_facturedet_rec.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_facturedet_rec.sql rename to public/install/mysql/tables/llx_facturedet_rec.sql diff --git a/htdocs/install/mysql/tables/llx_fichinter.key.sql b/public/install/mysql/tables/llx_fichinter.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_fichinter.key.sql rename to public/install/mysql/tables/llx_fichinter.key.sql diff --git a/htdocs/install/mysql/tables/llx_fichinter.sql b/public/install/mysql/tables/llx_fichinter.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_fichinter.sql rename to public/install/mysql/tables/llx_fichinter.sql diff --git a/htdocs/install/mysql/tables/llx_fichinter_extrafields.key.sql b/public/install/mysql/tables/llx_fichinter_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_fichinter_extrafields.key.sql rename to public/install/mysql/tables/llx_fichinter_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_fichinter_extrafields.sql b/public/install/mysql/tables/llx_fichinter_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_fichinter_extrafields.sql rename to public/install/mysql/tables/llx_fichinter_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_fichinterdet.key.sql b/public/install/mysql/tables/llx_fichinterdet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_fichinterdet.key.sql rename to public/install/mysql/tables/llx_fichinterdet.key.sql diff --git a/htdocs/install/mysql/tables/llx_fichinterdet.sql b/public/install/mysql/tables/llx_fichinterdet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_fichinterdet.sql rename to public/install/mysql/tables/llx_fichinterdet.sql diff --git a/htdocs/install/mysql/tables/llx_fichinterdet_extrafields.key.sql b/public/install/mysql/tables/llx_fichinterdet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_fichinterdet_extrafields.key.sql rename to public/install/mysql/tables/llx_fichinterdet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_fichinterdet_extrafields.sql b/public/install/mysql/tables/llx_fichinterdet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_fichinterdet_extrafields.sql rename to public/install/mysql/tables/llx_fichinterdet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_holiday.key.sql b/public/install/mysql/tables/llx_holiday.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_holiday.key.sql rename to public/install/mysql/tables/llx_holiday.key.sql diff --git a/htdocs/install/mysql/tables/llx_holiday.sql b/public/install/mysql/tables/llx_holiday.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_holiday.sql rename to public/install/mysql/tables/llx_holiday.sql diff --git a/htdocs/install/mysql/tables/llx_holiday_config.sql b/public/install/mysql/tables/llx_holiday_config.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_holiday_config.sql rename to public/install/mysql/tables/llx_holiday_config.sql diff --git a/htdocs/install/mysql/tables/llx_holiday_logs.sql b/public/install/mysql/tables/llx_holiday_logs.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_holiday_logs.sql rename to public/install/mysql/tables/llx_holiday_logs.sql diff --git a/htdocs/install/mysql/tables/llx_holiday_users.sql b/public/install/mysql/tables/llx_holiday_users.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_holiday_users.sql rename to public/install/mysql/tables/llx_holiday_users.sql diff --git a/htdocs/install/mysql/tables/llx_import_model.key.sql b/public/install/mysql/tables/llx_import_model.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_import_model.key.sql rename to public/install/mysql/tables/llx_import_model.key.sql diff --git a/htdocs/install/mysql/tables/llx_import_model.sql b/public/install/mysql/tables/llx_import_model.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_import_model.sql rename to public/install/mysql/tables/llx_import_model.sql diff --git a/htdocs/install/mysql/tables/llx_links.key.sql b/public/install/mysql/tables/llx_links.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_links.key.sql rename to public/install/mysql/tables/llx_links.key.sql diff --git a/htdocs/install/mysql/tables/llx_links.sql b/public/install/mysql/tables/llx_links.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_links.sql rename to public/install/mysql/tables/llx_links.sql diff --git a/htdocs/install/mysql/tables/llx_livraison.key.sql b/public/install/mysql/tables/llx_livraison.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_livraison.key.sql rename to public/install/mysql/tables/llx_livraison.key.sql diff --git a/htdocs/install/mysql/tables/llx_livraison.sql b/public/install/mysql/tables/llx_livraison.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_livraison.sql rename to public/install/mysql/tables/llx_livraison.sql diff --git a/htdocs/install/mysql/tables/llx_livraison_extrafields.key.sql b/public/install/mysql/tables/llx_livraison_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_livraison_extrafields.key.sql rename to public/install/mysql/tables/llx_livraison_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_livraison_extrafields.sql b/public/install/mysql/tables/llx_livraison_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_livraison_extrafields.sql rename to public/install/mysql/tables/llx_livraison_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_livraisondet.key.sql b/public/install/mysql/tables/llx_livraisondet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_livraisondet.key.sql rename to public/install/mysql/tables/llx_livraisondet.key.sql diff --git a/htdocs/install/mysql/tables/llx_livraisondet.sql b/public/install/mysql/tables/llx_livraisondet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_livraisondet.sql rename to public/install/mysql/tables/llx_livraisondet.sql diff --git a/htdocs/install/mysql/tables/llx_livraisondet_extrafields.key.sql b/public/install/mysql/tables/llx_livraisondet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_livraisondet_extrafields.key.sql rename to public/install/mysql/tables/llx_livraisondet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_livraisondet_extrafields.sql b/public/install/mysql/tables/llx_livraisondet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_livraisondet_extrafields.sql rename to public/install/mysql/tables/llx_livraisondet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_loan.sql b/public/install/mysql/tables/llx_loan.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_loan.sql rename to public/install/mysql/tables/llx_loan.sql diff --git a/htdocs/install/mysql/tables/llx_localtax.sql b/public/install/mysql/tables/llx_localtax.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_localtax.sql rename to public/install/mysql/tables/llx_localtax.sql diff --git a/htdocs/install/mysql/tables/llx_mailing.sql b/public/install/mysql/tables/llx_mailing.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_mailing.sql rename to public/install/mysql/tables/llx_mailing.sql diff --git a/htdocs/install/mysql/tables/llx_mailing_cibles.key.sql b/public/install/mysql/tables/llx_mailing_cibles.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_mailing_cibles.key.sql rename to public/install/mysql/tables/llx_mailing_cibles.key.sql diff --git a/htdocs/install/mysql/tables/llx_mailing_cibles.sql b/public/install/mysql/tables/llx_mailing_cibles.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_mailing_cibles.sql rename to public/install/mysql/tables/llx_mailing_cibles.sql diff --git a/htdocs/install/mysql/tables/llx_menu.key.sql b/public/install/mysql/tables/llx_menu.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_menu.key.sql rename to public/install/mysql/tables/llx_menu.key.sql diff --git a/htdocs/install/mysql/tables/llx_menu.sql b/public/install/mysql/tables/llx_menu.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_menu.sql rename to public/install/mysql/tables/llx_menu.sql diff --git a/htdocs/install/mysql/tables/llx_multicurrency.sql b/public/install/mysql/tables/llx_multicurrency.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_multicurrency.sql rename to public/install/mysql/tables/llx_multicurrency.sql diff --git a/htdocs/install/mysql/tables/llx_multicurrency_rate.sql b/public/install/mysql/tables/llx_multicurrency_rate.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_multicurrency_rate.sql rename to public/install/mysql/tables/llx_multicurrency_rate.sql diff --git a/htdocs/install/mysql/tables/llx_notify.sql b/public/install/mysql/tables/llx_notify.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_notify.sql rename to public/install/mysql/tables/llx_notify.sql diff --git a/htdocs/install/mysql/tables/llx_notify_def.sql b/public/install/mysql/tables/llx_notify_def.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_notify_def.sql rename to public/install/mysql/tables/llx_notify_def.sql diff --git a/htdocs/install/mysql/tables/llx_oauth_state.sql b/public/install/mysql/tables/llx_oauth_state.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_oauth_state.sql rename to public/install/mysql/tables/llx_oauth_state.sql diff --git a/htdocs/install/mysql/tables/llx_oauth_token.sql b/public/install/mysql/tables/llx_oauth_token.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_oauth_token.sql rename to public/install/mysql/tables/llx_oauth_token.sql diff --git a/htdocs/install/mysql/tables/llx_opensurvey_comments.key.sql b/public/install/mysql/tables/llx_opensurvey_comments.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_opensurvey_comments.key.sql rename to public/install/mysql/tables/llx_opensurvey_comments.key.sql diff --git a/htdocs/install/mysql/tables/llx_opensurvey_comments.sql b/public/install/mysql/tables/llx_opensurvey_comments.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_opensurvey_comments.sql rename to public/install/mysql/tables/llx_opensurvey_comments.sql diff --git a/htdocs/install/mysql/tables/llx_opensurvey_formquestions.sql b/public/install/mysql/tables/llx_opensurvey_formquestions.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_opensurvey_formquestions.sql rename to public/install/mysql/tables/llx_opensurvey_formquestions.sql diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.key.sql b/public/install/mysql/tables/llx_opensurvey_sondage.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_opensurvey_sondage.key.sql rename to public/install/mysql/tables/llx_opensurvey_sondage.key.sql diff --git a/htdocs/install/mysql/tables/llx_opensurvey_sondage.sql b/public/install/mysql/tables/llx_opensurvey_sondage.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_opensurvey_sondage.sql rename to public/install/mysql/tables/llx_opensurvey_sondage.sql diff --git a/htdocs/install/mysql/tables/llx_opensurvey_user_formanswers.sql b/public/install/mysql/tables/llx_opensurvey_user_formanswers.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_opensurvey_user_formanswers.sql rename to public/install/mysql/tables/llx_opensurvey_user_formanswers.sql diff --git a/htdocs/install/mysql/tables/llx_opensurvey_user_studs.key.sql b/public/install/mysql/tables/llx_opensurvey_user_studs.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_opensurvey_user_studs.key.sql rename to public/install/mysql/tables/llx_opensurvey_user_studs.key.sql diff --git a/htdocs/install/mysql/tables/llx_opensurvey_user_studs.sql b/public/install/mysql/tables/llx_opensurvey_user_studs.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_opensurvey_user_studs.sql rename to public/install/mysql/tables/llx_opensurvey_user_studs.sql diff --git a/htdocs/install/mysql/tables/llx_overwrite_trans.key.sql b/public/install/mysql/tables/llx_overwrite_trans.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_overwrite_trans.key.sql rename to public/install/mysql/tables/llx_overwrite_trans.key.sql diff --git a/htdocs/install/mysql/tables/llx_overwrite_trans.sql b/public/install/mysql/tables/llx_overwrite_trans.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_overwrite_trans.sql rename to public/install/mysql/tables/llx_overwrite_trans.sql diff --git a/htdocs/install/mysql/tables/llx_paiement.sql b/public/install/mysql/tables/llx_paiement.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_paiement.sql rename to public/install/mysql/tables/llx_paiement.sql diff --git a/htdocs/install/mysql/tables/llx_paiement_facture.key.sql b/public/install/mysql/tables/llx_paiement_facture.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_paiement_facture.key.sql rename to public/install/mysql/tables/llx_paiement_facture.key.sql diff --git a/htdocs/install/mysql/tables/llx_paiement_facture.sql b/public/install/mysql/tables/llx_paiement_facture.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_paiement_facture.sql rename to public/install/mysql/tables/llx_paiement_facture.sql diff --git a/htdocs/install/mysql/tables/llx_paiementcharge.sql b/public/install/mysql/tables/llx_paiementcharge.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_paiementcharge.sql rename to public/install/mysql/tables/llx_paiementcharge.sql diff --git a/htdocs/install/mysql/tables/llx_paiementfourn.sql b/public/install/mysql/tables/llx_paiementfourn.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_paiementfourn.sql rename to public/install/mysql/tables/llx_paiementfourn.sql diff --git a/htdocs/install/mysql/tables/llx_paiementfourn_facturefourn.key.sql b/public/install/mysql/tables/llx_paiementfourn_facturefourn.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_paiementfourn_facturefourn.key.sql rename to public/install/mysql/tables/llx_paiementfourn_facturefourn.key.sql diff --git a/htdocs/install/mysql/tables/llx_paiementfourn_facturefourn.sql b/public/install/mysql/tables/llx_paiementfourn_facturefourn.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_paiementfourn_facturefourn.sql rename to public/install/mysql/tables/llx_paiementfourn_facturefourn.sql diff --git a/htdocs/install/mysql/tables/llx_payment_donation.sql b/public/install/mysql/tables/llx_payment_donation.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_payment_donation.sql rename to public/install/mysql/tables/llx_payment_donation.sql diff --git a/htdocs/install/mysql/tables/llx_payment_expensereport.sql b/public/install/mysql/tables/llx_payment_expensereport.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_payment_expensereport.sql rename to public/install/mysql/tables/llx_payment_expensereport.sql diff --git a/htdocs/install/mysql/tables/llx_payment_loan.sql b/public/install/mysql/tables/llx_payment_loan.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_payment_loan.sql rename to public/install/mysql/tables/llx_payment_loan.sql diff --git a/htdocs/install/mysql/tables/llx_payment_salary.key.sql b/public/install/mysql/tables/llx_payment_salary.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_payment_salary.key.sql rename to public/install/mysql/tables/llx_payment_salary.key.sql diff --git a/htdocs/install/mysql/tables/llx_payment_salary.sql b/public/install/mysql/tables/llx_payment_salary.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_payment_salary.sql rename to public/install/mysql/tables/llx_payment_salary.sql diff --git a/htdocs/install/mysql/tables/llx_prelevement_bons.key.sql b/public/install/mysql/tables/llx_prelevement_bons.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_prelevement_bons.key.sql rename to public/install/mysql/tables/llx_prelevement_bons.key.sql diff --git a/htdocs/install/mysql/tables/llx_prelevement_bons.sql b/public/install/mysql/tables/llx_prelevement_bons.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_prelevement_bons.sql rename to public/install/mysql/tables/llx_prelevement_bons.sql diff --git a/htdocs/install/mysql/tables/llx_prelevement_facture.key.sql b/public/install/mysql/tables/llx_prelevement_facture.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_prelevement_facture.key.sql rename to public/install/mysql/tables/llx_prelevement_facture.key.sql diff --git a/htdocs/install/mysql/tables/llx_prelevement_facture.sql b/public/install/mysql/tables/llx_prelevement_facture.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_prelevement_facture.sql rename to public/install/mysql/tables/llx_prelevement_facture.sql diff --git a/htdocs/install/mysql/tables/llx_prelevement_facture_demande.sql b/public/install/mysql/tables/llx_prelevement_facture_demande.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_prelevement_facture_demande.sql rename to public/install/mysql/tables/llx_prelevement_facture_demande.sql diff --git a/htdocs/install/mysql/tables/llx_prelevement_lignes.key.sql b/public/install/mysql/tables/llx_prelevement_lignes.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_prelevement_lignes.key.sql rename to public/install/mysql/tables/llx_prelevement_lignes.key.sql diff --git a/htdocs/install/mysql/tables/llx_prelevement_lignes.sql b/public/install/mysql/tables/llx_prelevement_lignes.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_prelevement_lignes.sql rename to public/install/mysql/tables/llx_prelevement_lignes.sql diff --git a/htdocs/install/mysql/tables/llx_prelevement_rejet.sql b/public/install/mysql/tables/llx_prelevement_rejet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_prelevement_rejet.sql rename to public/install/mysql/tables/llx_prelevement_rejet.sql diff --git a/htdocs/install/mysql/tables/llx_printing.sql b/public/install/mysql/tables/llx_printing.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_printing.sql rename to public/install/mysql/tables/llx_printing.sql diff --git a/htdocs/install/mysql/tables/llx_product.key.sql b/public/install/mysql/tables/llx_product.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product.key.sql rename to public/install/mysql/tables/llx_product.key.sql diff --git a/htdocs/install/mysql/tables/llx_product.sql b/public/install/mysql/tables/llx_product.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product.sql rename to public/install/mysql/tables/llx_product.sql diff --git a/htdocs/install/mysql/tables/llx_product_association.key.sql b/public/install/mysql/tables/llx_product_association.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_association.key.sql rename to public/install/mysql/tables/llx_product_association.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_association.sql b/public/install/mysql/tables/llx_product_association.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_association.sql rename to public/install/mysql/tables/llx_product_association.sql diff --git a/htdocs/install/mysql/tables/llx_product_batch.key.sql b/public/install/mysql/tables/llx_product_batch.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_batch.key.sql rename to public/install/mysql/tables/llx_product_batch.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_batch.sql b/public/install/mysql/tables/llx_product_batch.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_batch.sql rename to public/install/mysql/tables/llx_product_batch.sql diff --git a/htdocs/install/mysql/tables/llx_product_customer_price.key.sql b/public/install/mysql/tables/llx_product_customer_price.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_customer_price.key.sql rename to public/install/mysql/tables/llx_product_customer_price.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_customer_price.sql b/public/install/mysql/tables/llx_product_customer_price.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_customer_price.sql rename to public/install/mysql/tables/llx_product_customer_price.sql diff --git a/htdocs/install/mysql/tables/llx_product_customer_price_log.sql b/public/install/mysql/tables/llx_product_customer_price_log.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_customer_price_log.sql rename to public/install/mysql/tables/llx_product_customer_price_log.sql diff --git a/htdocs/install/mysql/tables/llx_product_extrafields.key.sql b/public/install/mysql/tables/llx_product_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_extrafields.key.sql rename to public/install/mysql/tables/llx_product_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_extrafields.sql b/public/install/mysql/tables/llx_product_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_extrafields.sql rename to public/install/mysql/tables/llx_product_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_product_fournisseur_price.key.sql b/public/install/mysql/tables/llx_product_fournisseur_price.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_fournisseur_price.key.sql rename to public/install/mysql/tables/llx_product_fournisseur_price.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql b/public/install/mysql/tables/llx_product_fournisseur_price.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_fournisseur_price.sql rename to public/install/mysql/tables/llx_product_fournisseur_price.sql diff --git a/htdocs/install/mysql/tables/llx_product_fournisseur_price_log.sql b/public/install/mysql/tables/llx_product_fournisseur_price_log.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_fournisseur_price_log.sql rename to public/install/mysql/tables/llx_product_fournisseur_price_log.sql diff --git a/htdocs/install/mysql/tables/llx_product_lang.key.sql b/public/install/mysql/tables/llx_product_lang.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_lang.key.sql rename to public/install/mysql/tables/llx_product_lang.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_lang.sql b/public/install/mysql/tables/llx_product_lang.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_lang.sql rename to public/install/mysql/tables/llx_product_lang.sql diff --git a/htdocs/install/mysql/tables/llx_product_lot.key.sql b/public/install/mysql/tables/llx_product_lot.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_lot.key.sql rename to public/install/mysql/tables/llx_product_lot.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_lot.sql b/public/install/mysql/tables/llx_product_lot.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_lot.sql rename to public/install/mysql/tables/llx_product_lot.sql diff --git a/htdocs/install/mysql/tables/llx_product_lot_extrafields.key.sql b/public/install/mysql/tables/llx_product_lot_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_lot_extrafields.key.sql rename to public/install/mysql/tables/llx_product_lot_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_lot_extrafields.sql b/public/install/mysql/tables/llx_product_lot_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_lot_extrafields.sql rename to public/install/mysql/tables/llx_product_lot_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_product_price.key.sql b/public/install/mysql/tables/llx_product_price.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_price.key.sql rename to public/install/mysql/tables/llx_product_price.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_price.sql b/public/install/mysql/tables/llx_product_price.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_price.sql rename to public/install/mysql/tables/llx_product_price.sql diff --git a/htdocs/install/mysql/tables/llx_product_price_by_qty.key.sql b/public/install/mysql/tables/llx_product_price_by_qty.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_price_by_qty.key.sql rename to public/install/mysql/tables/llx_product_price_by_qty.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_price_by_qty.sql b/public/install/mysql/tables/llx_product_price_by_qty.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_price_by_qty.sql rename to public/install/mysql/tables/llx_product_price_by_qty.sql diff --git a/htdocs/install/mysql/tables/llx_product_pricerules.key.sql b/public/install/mysql/tables/llx_product_pricerules.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_pricerules.key.sql rename to public/install/mysql/tables/llx_product_pricerules.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_pricerules.sql b/public/install/mysql/tables/llx_product_pricerules.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_pricerules.sql rename to public/install/mysql/tables/llx_product_pricerules.sql diff --git a/htdocs/install/mysql/tables/llx_product_stock.key.sql b/public/install/mysql/tables/llx_product_stock.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_stock.key.sql rename to public/install/mysql/tables/llx_product_stock.key.sql diff --git a/htdocs/install/mysql/tables/llx_product_stock.sql b/public/install/mysql/tables/llx_product_stock.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_stock.sql rename to public/install/mysql/tables/llx_product_stock.sql diff --git a/htdocs/install/mysql/tables/llx_product_stock_entrepot.sql b/public/install/mysql/tables/llx_product_stock_entrepot.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_product_stock_entrepot.sql rename to public/install/mysql/tables/llx_product_stock_entrepot.sql diff --git a/htdocs/install/mysql/tables/llx_projet.key.sql b/public/install/mysql/tables/llx_projet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet.key.sql rename to public/install/mysql/tables/llx_projet.key.sql diff --git a/htdocs/install/mysql/tables/llx_projet.sql b/public/install/mysql/tables/llx_projet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet.sql rename to public/install/mysql/tables/llx_projet.sql diff --git a/htdocs/install/mysql/tables/llx_projet_extrafields.key.sql b/public/install/mysql/tables/llx_projet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet_extrafields.key.sql rename to public/install/mysql/tables/llx_projet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_projet_extrafields.sql b/public/install/mysql/tables/llx_projet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet_extrafields.sql rename to public/install/mysql/tables/llx_projet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_projet_task.key.sql b/public/install/mysql/tables/llx_projet_task.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet_task.key.sql rename to public/install/mysql/tables/llx_projet_task.key.sql diff --git a/htdocs/install/mysql/tables/llx_projet_task.sql b/public/install/mysql/tables/llx_projet_task.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet_task.sql rename to public/install/mysql/tables/llx_projet_task.sql diff --git a/htdocs/install/mysql/tables/llx_projet_task_extrafields.key.sql b/public/install/mysql/tables/llx_projet_task_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet_task_extrafields.key.sql rename to public/install/mysql/tables/llx_projet_task_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_projet_task_extrafields.sql b/public/install/mysql/tables/llx_projet_task_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet_task_extrafields.sql rename to public/install/mysql/tables/llx_projet_task_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_projet_task_time.key.sql b/public/install/mysql/tables/llx_projet_task_time.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet_task_time.key.sql rename to public/install/mysql/tables/llx_projet_task_time.key.sql diff --git a/htdocs/install/mysql/tables/llx_projet_task_time.sql b/public/install/mysql/tables/llx_projet_task_time.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_projet_task_time.sql rename to public/install/mysql/tables/llx_projet_task_time.sql diff --git a/htdocs/install/mysql/tables/llx_propal.key.sql b/public/install/mysql/tables/llx_propal.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propal.key.sql rename to public/install/mysql/tables/llx_propal.key.sql diff --git a/htdocs/install/mysql/tables/llx_propal.sql b/public/install/mysql/tables/llx_propal.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propal.sql rename to public/install/mysql/tables/llx_propal.sql diff --git a/htdocs/install/mysql/tables/llx_propal_extrafields.key.sql b/public/install/mysql/tables/llx_propal_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propal_extrafields.key.sql rename to public/install/mysql/tables/llx_propal_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_propal_extrafields.sql b/public/install/mysql/tables/llx_propal_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propal_extrafields.sql rename to public/install/mysql/tables/llx_propal_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_propal_merge_pdf_product.sql b/public/install/mysql/tables/llx_propal_merge_pdf_product.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propal_merge_pdf_product.sql rename to public/install/mysql/tables/llx_propal_merge_pdf_product.sql diff --git a/htdocs/install/mysql/tables/llx_propaldet.key.sql b/public/install/mysql/tables/llx_propaldet.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propaldet.key.sql rename to public/install/mysql/tables/llx_propaldet.key.sql diff --git a/htdocs/install/mysql/tables/llx_propaldet.sql b/public/install/mysql/tables/llx_propaldet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propaldet.sql rename to public/install/mysql/tables/llx_propaldet.sql diff --git a/htdocs/install/mysql/tables/llx_propaldet_extrafields.key.sql b/public/install/mysql/tables/llx_propaldet_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propaldet_extrafields.key.sql rename to public/install/mysql/tables/llx_propaldet_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_propaldet_extrafields.sql b/public/install/mysql/tables/llx_propaldet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_propaldet_extrafields.sql rename to public/install/mysql/tables/llx_propaldet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_resource.key.sql b/public/install/mysql/tables/llx_resource.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_resource.key.sql rename to public/install/mysql/tables/llx_resource.key.sql diff --git a/htdocs/install/mysql/tables/llx_resource.sql b/public/install/mysql/tables/llx_resource.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_resource.sql rename to public/install/mysql/tables/llx_resource.sql diff --git a/htdocs/install/mysql/tables/llx_resource_extrafields.key.sql b/public/install/mysql/tables/llx_resource_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_resource_extrafields.key.sql rename to public/install/mysql/tables/llx_resource_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_resource_extrafields.sql b/public/install/mysql/tables/llx_resource_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_resource_extrafields.sql rename to public/install/mysql/tables/llx_resource_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_rights_def.key.sql b/public/install/mysql/tables/llx_rights_def.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_rights_def.key.sql rename to public/install/mysql/tables/llx_rights_def.key.sql diff --git a/htdocs/install/mysql/tables/llx_rights_def.sql b/public/install/mysql/tables/llx_rights_def.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_rights_def.sql rename to public/install/mysql/tables/llx_rights_def.sql diff --git a/htdocs/install/mysql/tables/llx_societe.key.sql b/public/install/mysql/tables/llx_societe.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe.key.sql rename to public/install/mysql/tables/llx_societe.key.sql diff --git a/htdocs/install/mysql/tables/llx_societe.sql b/public/install/mysql/tables/llx_societe.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe.sql rename to public/install/mysql/tables/llx_societe.sql diff --git a/htdocs/install/mysql/tables/llx_societe_address.sql b/public/install/mysql/tables/llx_societe_address.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_address.sql rename to public/install/mysql/tables/llx_societe_address.sql diff --git a/htdocs/install/mysql/tables/llx_societe_commerciaux.key.sql b/public/install/mysql/tables/llx_societe_commerciaux.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_commerciaux.key.sql rename to public/install/mysql/tables/llx_societe_commerciaux.key.sql diff --git a/htdocs/install/mysql/tables/llx_societe_commerciaux.sql b/public/install/mysql/tables/llx_societe_commerciaux.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_commerciaux.sql rename to public/install/mysql/tables/llx_societe_commerciaux.sql diff --git a/htdocs/install/mysql/tables/llx_societe_extrafields.key.sql b/public/install/mysql/tables/llx_societe_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_extrafields.key.sql rename to public/install/mysql/tables/llx_societe_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_societe_extrafields.sql b/public/install/mysql/tables/llx_societe_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_extrafields.sql rename to public/install/mysql/tables/llx_societe_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_societe_log.sql b/public/install/mysql/tables/llx_societe_log.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_log.sql rename to public/install/mysql/tables/llx_societe_log.sql diff --git a/htdocs/install/mysql/tables/llx_societe_prices.sql b/public/install/mysql/tables/llx_societe_prices.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_prices.sql rename to public/install/mysql/tables/llx_societe_prices.sql diff --git a/htdocs/install/mysql/tables/llx_societe_remise.sql b/public/install/mysql/tables/llx_societe_remise.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_remise.sql rename to public/install/mysql/tables/llx_societe_remise.sql diff --git a/htdocs/install/mysql/tables/llx_societe_remise_except.key.sql b/public/install/mysql/tables/llx_societe_remise_except.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_remise_except.key.sql rename to public/install/mysql/tables/llx_societe_remise_except.key.sql diff --git a/htdocs/install/mysql/tables/llx_societe_remise_except.sql b/public/install/mysql/tables/llx_societe_remise_except.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_remise_except.sql rename to public/install/mysql/tables/llx_societe_remise_except.sql diff --git a/htdocs/install/mysql/tables/llx_societe_rib.key.sql b/public/install/mysql/tables/llx_societe_rib.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_rib.key.sql rename to public/install/mysql/tables/llx_societe_rib.key.sql diff --git a/htdocs/install/mysql/tables/llx_societe_rib.sql b/public/install/mysql/tables/llx_societe_rib.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_societe_rib.sql rename to public/install/mysql/tables/llx_societe_rib.sql diff --git a/htdocs/install/mysql/tables/llx_socpeople.key.sql b/public/install/mysql/tables/llx_socpeople.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_socpeople.key.sql rename to public/install/mysql/tables/llx_socpeople.key.sql diff --git a/htdocs/install/mysql/tables/llx_socpeople.sql b/public/install/mysql/tables/llx_socpeople.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_socpeople.sql rename to public/install/mysql/tables/llx_socpeople.sql diff --git a/htdocs/install/mysql/tables/llx_socpeople_extrafields.key.sql b/public/install/mysql/tables/llx_socpeople_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_socpeople_extrafields.key.sql rename to public/install/mysql/tables/llx_socpeople_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_socpeople_extrafields.sql b/public/install/mysql/tables/llx_socpeople_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_socpeople_extrafields.sql rename to public/install/mysql/tables/llx_socpeople_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_stock_mouvement.key.sql b/public/install/mysql/tables/llx_stock_mouvement.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_stock_mouvement.key.sql rename to public/install/mysql/tables/llx_stock_mouvement.key.sql diff --git a/htdocs/install/mysql/tables/llx_stock_mouvement.sql b/public/install/mysql/tables/llx_stock_mouvement.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_stock_mouvement.sql rename to public/install/mysql/tables/llx_stock_mouvement.sql diff --git a/htdocs/install/mysql/tables/llx_subscription.key.sql b/public/install/mysql/tables/llx_subscription.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_subscription.key.sql rename to public/install/mysql/tables/llx_subscription.key.sql diff --git a/htdocs/install/mysql/tables/llx_subscription.sql b/public/install/mysql/tables/llx_subscription.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_subscription.sql rename to public/install/mysql/tables/llx_subscription.sql diff --git a/htdocs/install/mysql/tables/llx_supplier_proposal.sql b/public/install/mysql/tables/llx_supplier_proposal.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_supplier_proposal.sql rename to public/install/mysql/tables/llx_supplier_proposal.sql diff --git a/htdocs/install/mysql/tables/llx_supplier_proposal_extrafields.sql b/public/install/mysql/tables/llx_supplier_proposal_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_supplier_proposal_extrafields.sql rename to public/install/mysql/tables/llx_supplier_proposal_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_supplier_proposaldet.sql b/public/install/mysql/tables/llx_supplier_proposaldet.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_supplier_proposaldet.sql rename to public/install/mysql/tables/llx_supplier_proposaldet.sql diff --git a/htdocs/install/mysql/tables/llx_supplier_proposaldet_extrafields.sql b/public/install/mysql/tables/llx_supplier_proposaldet_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_supplier_proposaldet_extrafields.sql rename to public/install/mysql/tables/llx_supplier_proposaldet_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_tva.sql b/public/install/mysql/tables/llx_tva.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_tva.sql rename to public/install/mysql/tables/llx_tva.sql diff --git a/htdocs/install/mysql/tables/llx_user.key.sql b/public/install/mysql/tables/llx_user.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user.key.sql rename to public/install/mysql/tables/llx_user.key.sql diff --git a/htdocs/install/mysql/tables/llx_user.sql b/public/install/mysql/tables/llx_user.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user.sql rename to public/install/mysql/tables/llx_user.sql diff --git a/htdocs/install/mysql/tables/llx_user_alert.sql b/public/install/mysql/tables/llx_user_alert.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_alert.sql rename to public/install/mysql/tables/llx_user_alert.sql diff --git a/htdocs/install/mysql/tables/llx_user_clicktodial.sql b/public/install/mysql/tables/llx_user_clicktodial.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_clicktodial.sql rename to public/install/mysql/tables/llx_user_clicktodial.sql diff --git a/htdocs/install/mysql/tables/llx_user_employment.key.sql b/public/install/mysql/tables/llx_user_employment.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_employment.key.sql rename to public/install/mysql/tables/llx_user_employment.key.sql diff --git a/htdocs/install/mysql/tables/llx_user_employment.sql b/public/install/mysql/tables/llx_user_employment.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_employment.sql rename to public/install/mysql/tables/llx_user_employment.sql diff --git a/htdocs/install/mysql/tables/llx_user_extrafields.key.sql b/public/install/mysql/tables/llx_user_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_extrafields.key.sql rename to public/install/mysql/tables/llx_user_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_user_extrafields.sql b/public/install/mysql/tables/llx_user_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_extrafields.sql rename to public/install/mysql/tables/llx_user_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_user_param.key.sql b/public/install/mysql/tables/llx_user_param.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_param.key.sql rename to public/install/mysql/tables/llx_user_param.key.sql diff --git a/htdocs/install/mysql/tables/llx_user_param.sql b/public/install/mysql/tables/llx_user_param.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_param.sql rename to public/install/mysql/tables/llx_user_param.sql diff --git a/htdocs/install/mysql/tables/llx_user_rib.sql b/public/install/mysql/tables/llx_user_rib.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_rib.sql rename to public/install/mysql/tables/llx_user_rib.sql diff --git a/htdocs/install/mysql/tables/llx_user_rights.key.sql b/public/install/mysql/tables/llx_user_rights.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_rights.key.sql rename to public/install/mysql/tables/llx_user_rights.key.sql diff --git a/htdocs/install/mysql/tables/llx_user_rights.sql b/public/install/mysql/tables/llx_user_rights.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_user_rights.sql rename to public/install/mysql/tables/llx_user_rights.sql diff --git a/htdocs/install/mysql/tables/llx_usergroup.key.sql b/public/install/mysql/tables/llx_usergroup.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_usergroup.key.sql rename to public/install/mysql/tables/llx_usergroup.key.sql diff --git a/htdocs/install/mysql/tables/llx_usergroup.sql b/public/install/mysql/tables/llx_usergroup.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_usergroup.sql rename to public/install/mysql/tables/llx_usergroup.sql diff --git a/htdocs/install/mysql/tables/llx_usergroup_extrafields.key.sql b/public/install/mysql/tables/llx_usergroup_extrafields.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_usergroup_extrafields.key.sql rename to public/install/mysql/tables/llx_usergroup_extrafields.key.sql diff --git a/htdocs/install/mysql/tables/llx_usergroup_extrafields.sql b/public/install/mysql/tables/llx_usergroup_extrafields.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_usergroup_extrafields.sql rename to public/install/mysql/tables/llx_usergroup_extrafields.sql diff --git a/htdocs/install/mysql/tables/llx_usergroup_rights.key.sql b/public/install/mysql/tables/llx_usergroup_rights.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_usergroup_rights.key.sql rename to public/install/mysql/tables/llx_usergroup_rights.key.sql diff --git a/htdocs/install/mysql/tables/llx_usergroup_rights.sql b/public/install/mysql/tables/llx_usergroup_rights.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_usergroup_rights.sql rename to public/install/mysql/tables/llx_usergroup_rights.sql diff --git a/htdocs/install/mysql/tables/llx_usergroup_user.key.sql b/public/install/mysql/tables/llx_usergroup_user.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_usergroup_user.key.sql rename to public/install/mysql/tables/llx_usergroup_user.key.sql diff --git a/htdocs/install/mysql/tables/llx_usergroup_user.sql b/public/install/mysql/tables/llx_usergroup_user.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_usergroup_user.sql rename to public/install/mysql/tables/llx_usergroup_user.sql diff --git a/htdocs/install/mysql/tables/llx_website.key.sql b/public/install/mysql/tables/llx_website.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_website.key.sql rename to public/install/mysql/tables/llx_website.key.sql diff --git a/htdocs/install/mysql/tables/llx_website.sql b/public/install/mysql/tables/llx_website.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_website.sql rename to public/install/mysql/tables/llx_website.sql diff --git a/htdocs/install/mysql/tables/llx_website_pages.key.sql b/public/install/mysql/tables/llx_website_pages.key.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_website_pages.key.sql rename to public/install/mysql/tables/llx_website_pages.key.sql diff --git a/htdocs/install/mysql/tables/llx_website_pages.sql b/public/install/mysql/tables/llx_website_pages.sql similarity index 100% rename from htdocs/install/mysql/tables/llx_website_pages.sql rename to public/install/mysql/tables/llx_website_pages.sql diff --git a/htdocs/install/pgsql/README b/public/install/pgsql/README similarity index 100% rename from htdocs/install/pgsql/README rename to public/install/pgsql/README diff --git a/htdocs/install/pgsql/functions/functions.sql b/public/install/pgsql/functions/functions.sql similarity index 100% rename from htdocs/install/pgsql/functions/functions.sql rename to public/install/pgsql/functions/functions.sql diff --git a/htdocs/install/pgsql/functions/index.html b/public/install/pgsql/functions/index.html similarity index 100% rename from htdocs/install/pgsql/functions/index.html rename to public/install/pgsql/functions/index.html diff --git a/htdocs/install/pgsql/index.html b/public/install/pgsql/index.html similarity index 100% rename from htdocs/install/pgsql/index.html rename to public/install/pgsql/index.html diff --git a/htdocs/install/phpinfo.php b/public/install/phpinfo.php similarity index 100% rename from htdocs/install/phpinfo.php rename to public/install/phpinfo.php diff --git a/htdocs/install/repair.php b/public/install/repair.php similarity index 100% rename from htdocs/install/repair.php rename to public/install/repair.php diff --git a/htdocs/install/robots.txt b/public/install/robots.txt similarity index 100% rename from htdocs/install/robots.txt rename to public/install/robots.txt diff --git a/htdocs/install/sqlite3/functions/functions.sql b/public/install/sqlite3/functions/functions.sql similarity index 100% rename from htdocs/install/sqlite3/functions/functions.sql rename to public/install/sqlite3/functions/functions.sql diff --git a/htdocs/install/sqlite3/index.html b/public/install/sqlite3/index.html similarity index 100% rename from htdocs/install/sqlite3/index.html rename to public/install/sqlite3/index.html diff --git a/htdocs/install/step1.php b/public/install/step1.php similarity index 100% rename from htdocs/install/step1.php rename to public/install/step1.php diff --git a/htdocs/install/step2.php b/public/install/step2.php similarity index 100% rename from htdocs/install/step2.php rename to public/install/step2.php diff --git a/htdocs/install/step4.php b/public/install/step4.php similarity index 100% rename from htdocs/install/step4.php rename to public/install/step4.php diff --git a/htdocs/install/step5.php b/public/install/step5.php similarity index 100% rename from htdocs/install/step5.php rename to public/install/step5.php diff --git a/htdocs/install/upgrade.php b/public/install/upgrade.php similarity index 100% rename from htdocs/install/upgrade.php rename to public/install/upgrade.php diff --git a/htdocs/install/upgrade2.php b/public/install/upgrade2.php similarity index 100% rename from htdocs/install/upgrade2.php rename to public/install/upgrade2.php diff --git a/htdocs/langs/HOWTO-Translation.txt b/public/langs/HOWTO-Translation.txt similarity index 100% rename from htdocs/langs/HOWTO-Translation.txt rename to public/langs/HOWTO-Translation.txt diff --git a/htdocs/langs/ar_SA/accountancy.lang b/public/langs/ar_SA/accountancy.lang similarity index 100% rename from htdocs/langs/ar_SA/accountancy.lang rename to public/langs/ar_SA/accountancy.lang diff --git a/htdocs/langs/ar_SA/admin.lang b/public/langs/ar_SA/admin.lang similarity index 100% rename from htdocs/langs/ar_SA/admin.lang rename to public/langs/ar_SA/admin.lang diff --git a/htdocs/langs/ar_SA/agenda.lang b/public/langs/ar_SA/agenda.lang similarity index 100% rename from htdocs/langs/ar_SA/agenda.lang rename to public/langs/ar_SA/agenda.lang diff --git a/htdocs/langs/ar_SA/banks.lang b/public/langs/ar_SA/banks.lang similarity index 100% rename from htdocs/langs/ar_SA/banks.lang rename to public/langs/ar_SA/banks.lang diff --git a/htdocs/langs/ar_SA/bills.lang b/public/langs/ar_SA/bills.lang similarity index 100% rename from htdocs/langs/ar_SA/bills.lang rename to public/langs/ar_SA/bills.lang diff --git a/htdocs/langs/ar_SA/bookmarks.lang b/public/langs/ar_SA/bookmarks.lang similarity index 100% rename from htdocs/langs/ar_SA/bookmarks.lang rename to public/langs/ar_SA/bookmarks.lang diff --git a/htdocs/langs/ar_SA/boxes.lang b/public/langs/ar_SA/boxes.lang similarity index 100% rename from htdocs/langs/ar_SA/boxes.lang rename to public/langs/ar_SA/boxes.lang diff --git a/htdocs/langs/ar_SA/cashdesk.lang b/public/langs/ar_SA/cashdesk.lang similarity index 100% rename from htdocs/langs/ar_SA/cashdesk.lang rename to public/langs/ar_SA/cashdesk.lang diff --git a/htdocs/langs/ar_SA/categories.lang b/public/langs/ar_SA/categories.lang similarity index 100% rename from htdocs/langs/ar_SA/categories.lang rename to public/langs/ar_SA/categories.lang diff --git a/htdocs/langs/ar_SA/commercial.lang b/public/langs/ar_SA/commercial.lang similarity index 100% rename from htdocs/langs/ar_SA/commercial.lang rename to public/langs/ar_SA/commercial.lang diff --git a/htdocs/langs/ar_SA/companies.lang b/public/langs/ar_SA/companies.lang similarity index 100% rename from htdocs/langs/ar_SA/companies.lang rename to public/langs/ar_SA/companies.lang diff --git a/htdocs/langs/ar_SA/compta.lang b/public/langs/ar_SA/compta.lang similarity index 100% rename from htdocs/langs/ar_SA/compta.lang rename to public/langs/ar_SA/compta.lang diff --git a/htdocs/langs/ar_SA/contracts.lang b/public/langs/ar_SA/contracts.lang similarity index 100% rename from htdocs/langs/ar_SA/contracts.lang rename to public/langs/ar_SA/contracts.lang diff --git a/htdocs/langs/ar_SA/cron.lang b/public/langs/ar_SA/cron.lang similarity index 100% rename from htdocs/langs/ar_SA/cron.lang rename to public/langs/ar_SA/cron.lang diff --git a/htdocs/langs/ar_SA/deliveries.lang b/public/langs/ar_SA/deliveries.lang similarity index 100% rename from htdocs/langs/ar_SA/deliveries.lang rename to public/langs/ar_SA/deliveries.lang diff --git a/htdocs/langs/ar_SA/dict.lang b/public/langs/ar_SA/dict.lang similarity index 100% rename from htdocs/langs/ar_SA/dict.lang rename to public/langs/ar_SA/dict.lang diff --git a/htdocs/langs/ar_SA/donations.lang b/public/langs/ar_SA/donations.lang similarity index 100% rename from htdocs/langs/ar_SA/donations.lang rename to public/langs/ar_SA/donations.lang diff --git a/htdocs/langs/ar_SA/ecm.lang b/public/langs/ar_SA/ecm.lang similarity index 100% rename from htdocs/langs/ar_SA/ecm.lang rename to public/langs/ar_SA/ecm.lang diff --git a/htdocs/langs/ar_SA/errors.lang b/public/langs/ar_SA/errors.lang similarity index 100% rename from htdocs/langs/ar_SA/errors.lang rename to public/langs/ar_SA/errors.lang diff --git a/htdocs/langs/ar_SA/exports.lang b/public/langs/ar_SA/exports.lang similarity index 100% rename from htdocs/langs/ar_SA/exports.lang rename to public/langs/ar_SA/exports.lang diff --git a/htdocs/langs/ar_SA/externalsite.lang b/public/langs/ar_SA/externalsite.lang similarity index 100% rename from htdocs/langs/ar_SA/externalsite.lang rename to public/langs/ar_SA/externalsite.lang diff --git a/htdocs/langs/ar_SA/ftp.lang b/public/langs/ar_SA/ftp.lang similarity index 100% rename from htdocs/langs/ar_SA/ftp.lang rename to public/langs/ar_SA/ftp.lang diff --git a/htdocs/langs/ar_SA/help.lang b/public/langs/ar_SA/help.lang similarity index 100% rename from htdocs/langs/ar_SA/help.lang rename to public/langs/ar_SA/help.lang diff --git a/htdocs/langs/ar_SA/holiday.lang b/public/langs/ar_SA/holiday.lang similarity index 100% rename from htdocs/langs/ar_SA/holiday.lang rename to public/langs/ar_SA/holiday.lang diff --git a/htdocs/langs/ar_SA/hrm.lang b/public/langs/ar_SA/hrm.lang similarity index 100% rename from htdocs/langs/ar_SA/hrm.lang rename to public/langs/ar_SA/hrm.lang diff --git a/htdocs/langs/ar_SA/incoterm.lang b/public/langs/ar_SA/incoterm.lang similarity index 100% rename from htdocs/langs/ar_SA/incoterm.lang rename to public/langs/ar_SA/incoterm.lang diff --git a/htdocs/langs/ar_SA/install.lang b/public/langs/ar_SA/install.lang similarity index 100% rename from htdocs/langs/ar_SA/install.lang rename to public/langs/ar_SA/install.lang diff --git a/htdocs/langs/ar_SA/interventions.lang b/public/langs/ar_SA/interventions.lang similarity index 100% rename from htdocs/langs/ar_SA/interventions.lang rename to public/langs/ar_SA/interventions.lang diff --git a/htdocs/langs/ar_SA/languages.lang b/public/langs/ar_SA/languages.lang similarity index 100% rename from htdocs/langs/ar_SA/languages.lang rename to public/langs/ar_SA/languages.lang diff --git a/htdocs/langs/ar_SA/ldap.lang b/public/langs/ar_SA/ldap.lang similarity index 100% rename from htdocs/langs/ar_SA/ldap.lang rename to public/langs/ar_SA/ldap.lang diff --git a/htdocs/langs/ar_SA/link.lang b/public/langs/ar_SA/link.lang similarity index 100% rename from htdocs/langs/ar_SA/link.lang rename to public/langs/ar_SA/link.lang diff --git a/htdocs/langs/ar_SA/loan.lang b/public/langs/ar_SA/loan.lang similarity index 100% rename from htdocs/langs/ar_SA/loan.lang rename to public/langs/ar_SA/loan.lang diff --git a/htdocs/langs/ar_SA/mailmanspip.lang b/public/langs/ar_SA/mailmanspip.lang similarity index 100% rename from htdocs/langs/ar_SA/mailmanspip.lang rename to public/langs/ar_SA/mailmanspip.lang diff --git a/htdocs/langs/ar_SA/mails.lang b/public/langs/ar_SA/mails.lang similarity index 100% rename from htdocs/langs/ar_SA/mails.lang rename to public/langs/ar_SA/mails.lang diff --git a/htdocs/langs/ar_SA/main.lang b/public/langs/ar_SA/main.lang similarity index 100% rename from htdocs/langs/ar_SA/main.lang rename to public/langs/ar_SA/main.lang diff --git a/htdocs/langs/ar_SA/margins.lang b/public/langs/ar_SA/margins.lang similarity index 100% rename from htdocs/langs/ar_SA/margins.lang rename to public/langs/ar_SA/margins.lang diff --git a/htdocs/langs/ar_SA/members.lang b/public/langs/ar_SA/members.lang similarity index 100% rename from htdocs/langs/ar_SA/members.lang rename to public/langs/ar_SA/members.lang diff --git a/htdocs/langs/ar_SA/oauth.lang b/public/langs/ar_SA/oauth.lang similarity index 100% rename from htdocs/langs/ar_SA/oauth.lang rename to public/langs/ar_SA/oauth.lang diff --git a/htdocs/langs/ar_SA/opensurvey.lang b/public/langs/ar_SA/opensurvey.lang similarity index 100% rename from htdocs/langs/ar_SA/opensurvey.lang rename to public/langs/ar_SA/opensurvey.lang diff --git a/htdocs/langs/ar_SA/orders.lang b/public/langs/ar_SA/orders.lang similarity index 100% rename from htdocs/langs/ar_SA/orders.lang rename to public/langs/ar_SA/orders.lang diff --git a/htdocs/langs/ar_SA/other.lang b/public/langs/ar_SA/other.lang similarity index 100% rename from htdocs/langs/ar_SA/other.lang rename to public/langs/ar_SA/other.lang diff --git a/htdocs/langs/ar_SA/paybox.lang b/public/langs/ar_SA/paybox.lang similarity index 100% rename from htdocs/langs/ar_SA/paybox.lang rename to public/langs/ar_SA/paybox.lang diff --git a/htdocs/langs/ar_SA/paypal.lang b/public/langs/ar_SA/paypal.lang similarity index 100% rename from htdocs/langs/ar_SA/paypal.lang rename to public/langs/ar_SA/paypal.lang diff --git a/htdocs/langs/ar_SA/printing.lang b/public/langs/ar_SA/printing.lang similarity index 100% rename from htdocs/langs/ar_SA/printing.lang rename to public/langs/ar_SA/printing.lang diff --git a/htdocs/langs/ar_SA/productbatch.lang b/public/langs/ar_SA/productbatch.lang similarity index 100% rename from htdocs/langs/ar_SA/productbatch.lang rename to public/langs/ar_SA/productbatch.lang diff --git a/htdocs/langs/ar_SA/products.lang b/public/langs/ar_SA/products.lang similarity index 100% rename from htdocs/langs/ar_SA/products.lang rename to public/langs/ar_SA/products.lang diff --git a/htdocs/langs/ar_SA/projects.lang b/public/langs/ar_SA/projects.lang similarity index 100% rename from htdocs/langs/ar_SA/projects.lang rename to public/langs/ar_SA/projects.lang diff --git a/htdocs/langs/ar_SA/propal.lang b/public/langs/ar_SA/propal.lang similarity index 100% rename from htdocs/langs/ar_SA/propal.lang rename to public/langs/ar_SA/propal.lang diff --git a/htdocs/langs/ar_SA/receiptprinter.lang b/public/langs/ar_SA/receiptprinter.lang similarity index 100% rename from htdocs/langs/ar_SA/receiptprinter.lang rename to public/langs/ar_SA/receiptprinter.lang diff --git a/htdocs/langs/ar_SA/resource.lang b/public/langs/ar_SA/resource.lang similarity index 100% rename from htdocs/langs/ar_SA/resource.lang rename to public/langs/ar_SA/resource.lang diff --git a/htdocs/langs/ar_SA/salaries.lang b/public/langs/ar_SA/salaries.lang similarity index 100% rename from htdocs/langs/ar_SA/salaries.lang rename to public/langs/ar_SA/salaries.lang diff --git a/htdocs/langs/ar_SA/sendings.lang b/public/langs/ar_SA/sendings.lang similarity index 100% rename from htdocs/langs/ar_SA/sendings.lang rename to public/langs/ar_SA/sendings.lang diff --git a/htdocs/langs/ar_SA/sms.lang b/public/langs/ar_SA/sms.lang similarity index 100% rename from htdocs/langs/ar_SA/sms.lang rename to public/langs/ar_SA/sms.lang diff --git a/htdocs/langs/ar_SA/stocks.lang b/public/langs/ar_SA/stocks.lang similarity index 100% rename from htdocs/langs/ar_SA/stocks.lang rename to public/langs/ar_SA/stocks.lang diff --git a/htdocs/langs/ar_SA/supplier_proposal.lang b/public/langs/ar_SA/supplier_proposal.lang similarity index 100% rename from htdocs/langs/ar_SA/supplier_proposal.lang rename to public/langs/ar_SA/supplier_proposal.lang diff --git a/htdocs/langs/ar_SA/suppliers.lang b/public/langs/ar_SA/suppliers.lang similarity index 100% rename from htdocs/langs/ar_SA/suppliers.lang rename to public/langs/ar_SA/suppliers.lang diff --git a/htdocs/langs/ar_SA/trips.lang b/public/langs/ar_SA/trips.lang similarity index 100% rename from htdocs/langs/ar_SA/trips.lang rename to public/langs/ar_SA/trips.lang diff --git a/htdocs/langs/ar_SA/users.lang b/public/langs/ar_SA/users.lang similarity index 100% rename from htdocs/langs/ar_SA/users.lang rename to public/langs/ar_SA/users.lang diff --git a/htdocs/langs/ar_SA/website.lang b/public/langs/ar_SA/website.lang similarity index 100% rename from htdocs/langs/ar_SA/website.lang rename to public/langs/ar_SA/website.lang diff --git a/htdocs/langs/ar_SA/withdrawals.lang b/public/langs/ar_SA/withdrawals.lang similarity index 100% rename from htdocs/langs/ar_SA/withdrawals.lang rename to public/langs/ar_SA/withdrawals.lang diff --git a/htdocs/langs/ar_SA/workflow.lang b/public/langs/ar_SA/workflow.lang similarity index 100% rename from htdocs/langs/ar_SA/workflow.lang rename to public/langs/ar_SA/workflow.lang diff --git a/htdocs/langs/bg_BG/accountancy.lang b/public/langs/bg_BG/accountancy.lang similarity index 100% rename from htdocs/langs/bg_BG/accountancy.lang rename to public/langs/bg_BG/accountancy.lang diff --git a/htdocs/langs/bg_BG/admin.lang b/public/langs/bg_BG/admin.lang similarity index 100% rename from htdocs/langs/bg_BG/admin.lang rename to public/langs/bg_BG/admin.lang diff --git a/htdocs/langs/bg_BG/agenda.lang b/public/langs/bg_BG/agenda.lang similarity index 100% rename from htdocs/langs/bg_BG/agenda.lang rename to public/langs/bg_BG/agenda.lang diff --git a/htdocs/langs/bg_BG/banks.lang b/public/langs/bg_BG/banks.lang similarity index 100% rename from htdocs/langs/bg_BG/banks.lang rename to public/langs/bg_BG/banks.lang diff --git a/htdocs/langs/bg_BG/bills.lang b/public/langs/bg_BG/bills.lang similarity index 100% rename from htdocs/langs/bg_BG/bills.lang rename to public/langs/bg_BG/bills.lang diff --git a/htdocs/langs/bg_BG/bookmarks.lang b/public/langs/bg_BG/bookmarks.lang similarity index 100% rename from htdocs/langs/bg_BG/bookmarks.lang rename to public/langs/bg_BG/bookmarks.lang diff --git a/htdocs/langs/bg_BG/boxes.lang b/public/langs/bg_BG/boxes.lang similarity index 100% rename from htdocs/langs/bg_BG/boxes.lang rename to public/langs/bg_BG/boxes.lang diff --git a/htdocs/langs/bg_BG/cashdesk.lang b/public/langs/bg_BG/cashdesk.lang similarity index 100% rename from htdocs/langs/bg_BG/cashdesk.lang rename to public/langs/bg_BG/cashdesk.lang diff --git a/htdocs/langs/bg_BG/categories.lang b/public/langs/bg_BG/categories.lang similarity index 100% rename from htdocs/langs/bg_BG/categories.lang rename to public/langs/bg_BG/categories.lang diff --git a/htdocs/langs/bg_BG/commercial.lang b/public/langs/bg_BG/commercial.lang similarity index 100% rename from htdocs/langs/bg_BG/commercial.lang rename to public/langs/bg_BG/commercial.lang diff --git a/htdocs/langs/bg_BG/companies.lang b/public/langs/bg_BG/companies.lang similarity index 100% rename from htdocs/langs/bg_BG/companies.lang rename to public/langs/bg_BG/companies.lang diff --git a/htdocs/langs/bg_BG/compta.lang b/public/langs/bg_BG/compta.lang similarity index 100% rename from htdocs/langs/bg_BG/compta.lang rename to public/langs/bg_BG/compta.lang diff --git a/htdocs/langs/bg_BG/contracts.lang b/public/langs/bg_BG/contracts.lang similarity index 100% rename from htdocs/langs/bg_BG/contracts.lang rename to public/langs/bg_BG/contracts.lang diff --git a/htdocs/langs/bg_BG/cron.lang b/public/langs/bg_BG/cron.lang similarity index 100% rename from htdocs/langs/bg_BG/cron.lang rename to public/langs/bg_BG/cron.lang diff --git a/htdocs/langs/bg_BG/deliveries.lang b/public/langs/bg_BG/deliveries.lang similarity index 100% rename from htdocs/langs/bg_BG/deliveries.lang rename to public/langs/bg_BG/deliveries.lang diff --git a/htdocs/langs/bg_BG/dict.lang b/public/langs/bg_BG/dict.lang similarity index 100% rename from htdocs/langs/bg_BG/dict.lang rename to public/langs/bg_BG/dict.lang diff --git a/htdocs/langs/bg_BG/donations.lang b/public/langs/bg_BG/donations.lang similarity index 100% rename from htdocs/langs/bg_BG/donations.lang rename to public/langs/bg_BG/donations.lang diff --git a/htdocs/langs/bg_BG/ecm.lang b/public/langs/bg_BG/ecm.lang similarity index 100% rename from htdocs/langs/bg_BG/ecm.lang rename to public/langs/bg_BG/ecm.lang diff --git a/htdocs/langs/bg_BG/errors.lang b/public/langs/bg_BG/errors.lang similarity index 100% rename from htdocs/langs/bg_BG/errors.lang rename to public/langs/bg_BG/errors.lang diff --git a/htdocs/langs/bg_BG/exports.lang b/public/langs/bg_BG/exports.lang similarity index 100% rename from htdocs/langs/bg_BG/exports.lang rename to public/langs/bg_BG/exports.lang diff --git a/htdocs/langs/bg_BG/externalsite.lang b/public/langs/bg_BG/externalsite.lang similarity index 100% rename from htdocs/langs/bg_BG/externalsite.lang rename to public/langs/bg_BG/externalsite.lang diff --git a/htdocs/langs/bg_BG/ftp.lang b/public/langs/bg_BG/ftp.lang similarity index 100% rename from htdocs/langs/bg_BG/ftp.lang rename to public/langs/bg_BG/ftp.lang diff --git a/htdocs/langs/bg_BG/help.lang b/public/langs/bg_BG/help.lang similarity index 100% rename from htdocs/langs/bg_BG/help.lang rename to public/langs/bg_BG/help.lang diff --git a/htdocs/langs/bg_BG/holiday.lang b/public/langs/bg_BG/holiday.lang similarity index 100% rename from htdocs/langs/bg_BG/holiday.lang rename to public/langs/bg_BG/holiday.lang diff --git a/htdocs/langs/bg_BG/hrm.lang b/public/langs/bg_BG/hrm.lang similarity index 100% rename from htdocs/langs/bg_BG/hrm.lang rename to public/langs/bg_BG/hrm.lang diff --git a/htdocs/langs/bg_BG/incoterm.lang b/public/langs/bg_BG/incoterm.lang similarity index 100% rename from htdocs/langs/bg_BG/incoterm.lang rename to public/langs/bg_BG/incoterm.lang diff --git a/htdocs/langs/bg_BG/install.lang b/public/langs/bg_BG/install.lang similarity index 100% rename from htdocs/langs/bg_BG/install.lang rename to public/langs/bg_BG/install.lang diff --git a/htdocs/langs/bg_BG/interventions.lang b/public/langs/bg_BG/interventions.lang similarity index 100% rename from htdocs/langs/bg_BG/interventions.lang rename to public/langs/bg_BG/interventions.lang diff --git a/htdocs/langs/bg_BG/languages.lang b/public/langs/bg_BG/languages.lang similarity index 100% rename from htdocs/langs/bg_BG/languages.lang rename to public/langs/bg_BG/languages.lang diff --git a/htdocs/langs/bg_BG/ldap.lang b/public/langs/bg_BG/ldap.lang similarity index 100% rename from htdocs/langs/bg_BG/ldap.lang rename to public/langs/bg_BG/ldap.lang diff --git a/htdocs/langs/bg_BG/link.lang b/public/langs/bg_BG/link.lang similarity index 100% rename from htdocs/langs/bg_BG/link.lang rename to public/langs/bg_BG/link.lang diff --git a/htdocs/langs/bg_BG/loan.lang b/public/langs/bg_BG/loan.lang similarity index 100% rename from htdocs/langs/bg_BG/loan.lang rename to public/langs/bg_BG/loan.lang diff --git a/htdocs/langs/bg_BG/mailmanspip.lang b/public/langs/bg_BG/mailmanspip.lang similarity index 100% rename from htdocs/langs/bg_BG/mailmanspip.lang rename to public/langs/bg_BG/mailmanspip.lang diff --git a/htdocs/langs/bg_BG/mails.lang b/public/langs/bg_BG/mails.lang similarity index 100% rename from htdocs/langs/bg_BG/mails.lang rename to public/langs/bg_BG/mails.lang diff --git a/htdocs/langs/bg_BG/main.lang b/public/langs/bg_BG/main.lang similarity index 100% rename from htdocs/langs/bg_BG/main.lang rename to public/langs/bg_BG/main.lang diff --git a/htdocs/langs/bg_BG/margins.lang b/public/langs/bg_BG/margins.lang similarity index 100% rename from htdocs/langs/bg_BG/margins.lang rename to public/langs/bg_BG/margins.lang diff --git a/htdocs/langs/bg_BG/members.lang b/public/langs/bg_BG/members.lang similarity index 100% rename from htdocs/langs/bg_BG/members.lang rename to public/langs/bg_BG/members.lang diff --git a/htdocs/langs/bg_BG/oauth.lang b/public/langs/bg_BG/oauth.lang similarity index 100% rename from htdocs/langs/bg_BG/oauth.lang rename to public/langs/bg_BG/oauth.lang diff --git a/htdocs/langs/bg_BG/opensurvey.lang b/public/langs/bg_BG/opensurvey.lang similarity index 100% rename from htdocs/langs/bg_BG/opensurvey.lang rename to public/langs/bg_BG/opensurvey.lang diff --git a/htdocs/langs/bg_BG/orders.lang b/public/langs/bg_BG/orders.lang similarity index 100% rename from htdocs/langs/bg_BG/orders.lang rename to public/langs/bg_BG/orders.lang diff --git a/htdocs/langs/bg_BG/other.lang b/public/langs/bg_BG/other.lang similarity index 100% rename from htdocs/langs/bg_BG/other.lang rename to public/langs/bg_BG/other.lang diff --git a/htdocs/langs/bg_BG/paybox.lang b/public/langs/bg_BG/paybox.lang similarity index 100% rename from htdocs/langs/bg_BG/paybox.lang rename to public/langs/bg_BG/paybox.lang diff --git a/htdocs/langs/bg_BG/paypal.lang b/public/langs/bg_BG/paypal.lang similarity index 100% rename from htdocs/langs/bg_BG/paypal.lang rename to public/langs/bg_BG/paypal.lang diff --git a/htdocs/langs/bg_BG/printing.lang b/public/langs/bg_BG/printing.lang similarity index 100% rename from htdocs/langs/bg_BG/printing.lang rename to public/langs/bg_BG/printing.lang diff --git a/htdocs/langs/bg_BG/productbatch.lang b/public/langs/bg_BG/productbatch.lang similarity index 100% rename from htdocs/langs/bg_BG/productbatch.lang rename to public/langs/bg_BG/productbatch.lang diff --git a/htdocs/langs/bg_BG/products.lang b/public/langs/bg_BG/products.lang similarity index 100% rename from htdocs/langs/bg_BG/products.lang rename to public/langs/bg_BG/products.lang diff --git a/htdocs/langs/bg_BG/projects.lang b/public/langs/bg_BG/projects.lang similarity index 100% rename from htdocs/langs/bg_BG/projects.lang rename to public/langs/bg_BG/projects.lang diff --git a/htdocs/langs/bg_BG/propal.lang b/public/langs/bg_BG/propal.lang similarity index 100% rename from htdocs/langs/bg_BG/propal.lang rename to public/langs/bg_BG/propal.lang diff --git a/htdocs/langs/bg_BG/receiptprinter.lang b/public/langs/bg_BG/receiptprinter.lang similarity index 100% rename from htdocs/langs/bg_BG/receiptprinter.lang rename to public/langs/bg_BG/receiptprinter.lang diff --git a/htdocs/langs/bg_BG/resource.lang b/public/langs/bg_BG/resource.lang similarity index 100% rename from htdocs/langs/bg_BG/resource.lang rename to public/langs/bg_BG/resource.lang diff --git a/htdocs/langs/bg_BG/salaries.lang b/public/langs/bg_BG/salaries.lang similarity index 100% rename from htdocs/langs/bg_BG/salaries.lang rename to public/langs/bg_BG/salaries.lang diff --git a/htdocs/langs/bg_BG/sendings.lang b/public/langs/bg_BG/sendings.lang similarity index 100% rename from htdocs/langs/bg_BG/sendings.lang rename to public/langs/bg_BG/sendings.lang diff --git a/htdocs/langs/bg_BG/sms.lang b/public/langs/bg_BG/sms.lang similarity index 100% rename from htdocs/langs/bg_BG/sms.lang rename to public/langs/bg_BG/sms.lang diff --git a/htdocs/langs/bg_BG/stocks.lang b/public/langs/bg_BG/stocks.lang similarity index 100% rename from htdocs/langs/bg_BG/stocks.lang rename to public/langs/bg_BG/stocks.lang diff --git a/htdocs/langs/bg_BG/supplier_proposal.lang b/public/langs/bg_BG/supplier_proposal.lang similarity index 100% rename from htdocs/langs/bg_BG/supplier_proposal.lang rename to public/langs/bg_BG/supplier_proposal.lang diff --git a/htdocs/langs/bg_BG/suppliers.lang b/public/langs/bg_BG/suppliers.lang similarity index 100% rename from htdocs/langs/bg_BG/suppliers.lang rename to public/langs/bg_BG/suppliers.lang diff --git a/htdocs/langs/bg_BG/trips.lang b/public/langs/bg_BG/trips.lang similarity index 100% rename from htdocs/langs/bg_BG/trips.lang rename to public/langs/bg_BG/trips.lang diff --git a/htdocs/langs/bg_BG/users.lang b/public/langs/bg_BG/users.lang similarity index 100% rename from htdocs/langs/bg_BG/users.lang rename to public/langs/bg_BG/users.lang diff --git a/htdocs/langs/bg_BG/website.lang b/public/langs/bg_BG/website.lang similarity index 100% rename from htdocs/langs/bg_BG/website.lang rename to public/langs/bg_BG/website.lang diff --git a/htdocs/langs/bg_BG/withdrawals.lang b/public/langs/bg_BG/withdrawals.lang similarity index 100% rename from htdocs/langs/bg_BG/withdrawals.lang rename to public/langs/bg_BG/withdrawals.lang diff --git a/htdocs/langs/bg_BG/workflow.lang b/public/langs/bg_BG/workflow.lang similarity index 100% rename from htdocs/langs/bg_BG/workflow.lang rename to public/langs/bg_BG/workflow.lang diff --git a/htdocs/langs/bn_BD/accountancy.lang b/public/langs/bn_BD/accountancy.lang similarity index 100% rename from htdocs/langs/bn_BD/accountancy.lang rename to public/langs/bn_BD/accountancy.lang diff --git a/htdocs/langs/bn_BD/admin.lang b/public/langs/bn_BD/admin.lang similarity index 100% rename from htdocs/langs/bn_BD/admin.lang rename to public/langs/bn_BD/admin.lang diff --git a/htdocs/langs/bn_BD/agenda.lang b/public/langs/bn_BD/agenda.lang similarity index 100% rename from htdocs/langs/bn_BD/agenda.lang rename to public/langs/bn_BD/agenda.lang diff --git a/htdocs/langs/bn_BD/banks.lang b/public/langs/bn_BD/banks.lang similarity index 100% rename from htdocs/langs/bn_BD/banks.lang rename to public/langs/bn_BD/banks.lang diff --git a/htdocs/langs/bn_BD/bills.lang b/public/langs/bn_BD/bills.lang similarity index 100% rename from htdocs/langs/bn_BD/bills.lang rename to public/langs/bn_BD/bills.lang diff --git a/htdocs/langs/bn_BD/bookmarks.lang b/public/langs/bn_BD/bookmarks.lang similarity index 100% rename from htdocs/langs/bn_BD/bookmarks.lang rename to public/langs/bn_BD/bookmarks.lang diff --git a/htdocs/langs/bn_BD/boxes.lang b/public/langs/bn_BD/boxes.lang similarity index 100% rename from htdocs/langs/bn_BD/boxes.lang rename to public/langs/bn_BD/boxes.lang diff --git a/htdocs/langs/bn_BD/cashdesk.lang b/public/langs/bn_BD/cashdesk.lang similarity index 100% rename from htdocs/langs/bn_BD/cashdesk.lang rename to public/langs/bn_BD/cashdesk.lang diff --git a/htdocs/langs/bn_BD/categories.lang b/public/langs/bn_BD/categories.lang similarity index 100% rename from htdocs/langs/bn_BD/categories.lang rename to public/langs/bn_BD/categories.lang diff --git a/htdocs/langs/bn_BD/commercial.lang b/public/langs/bn_BD/commercial.lang similarity index 100% rename from htdocs/langs/bn_BD/commercial.lang rename to public/langs/bn_BD/commercial.lang diff --git a/htdocs/langs/bn_BD/companies.lang b/public/langs/bn_BD/companies.lang similarity index 100% rename from htdocs/langs/bn_BD/companies.lang rename to public/langs/bn_BD/companies.lang diff --git a/htdocs/langs/bn_BD/compta.lang b/public/langs/bn_BD/compta.lang similarity index 100% rename from htdocs/langs/bn_BD/compta.lang rename to public/langs/bn_BD/compta.lang diff --git a/htdocs/langs/bn_BD/contracts.lang b/public/langs/bn_BD/contracts.lang similarity index 100% rename from htdocs/langs/bn_BD/contracts.lang rename to public/langs/bn_BD/contracts.lang diff --git a/htdocs/langs/bn_BD/cron.lang b/public/langs/bn_BD/cron.lang similarity index 100% rename from htdocs/langs/bn_BD/cron.lang rename to public/langs/bn_BD/cron.lang diff --git a/htdocs/langs/bn_BD/deliveries.lang b/public/langs/bn_BD/deliveries.lang similarity index 100% rename from htdocs/langs/bn_BD/deliveries.lang rename to public/langs/bn_BD/deliveries.lang diff --git a/htdocs/langs/bn_BD/dict.lang b/public/langs/bn_BD/dict.lang similarity index 100% rename from htdocs/langs/bn_BD/dict.lang rename to public/langs/bn_BD/dict.lang diff --git a/htdocs/langs/bn_BD/donations.lang b/public/langs/bn_BD/donations.lang similarity index 100% rename from htdocs/langs/bn_BD/donations.lang rename to public/langs/bn_BD/donations.lang diff --git a/htdocs/langs/bn_BD/ecm.lang b/public/langs/bn_BD/ecm.lang similarity index 100% rename from htdocs/langs/bn_BD/ecm.lang rename to public/langs/bn_BD/ecm.lang diff --git a/htdocs/langs/bn_BD/errors.lang b/public/langs/bn_BD/errors.lang similarity index 100% rename from htdocs/langs/bn_BD/errors.lang rename to public/langs/bn_BD/errors.lang diff --git a/htdocs/langs/bn_BD/exports.lang b/public/langs/bn_BD/exports.lang similarity index 100% rename from htdocs/langs/bn_BD/exports.lang rename to public/langs/bn_BD/exports.lang diff --git a/htdocs/langs/bn_BD/externalsite.lang b/public/langs/bn_BD/externalsite.lang similarity index 100% rename from htdocs/langs/bn_BD/externalsite.lang rename to public/langs/bn_BD/externalsite.lang diff --git a/htdocs/langs/bn_BD/ftp.lang b/public/langs/bn_BD/ftp.lang similarity index 100% rename from htdocs/langs/bn_BD/ftp.lang rename to public/langs/bn_BD/ftp.lang diff --git a/htdocs/langs/bn_BD/help.lang b/public/langs/bn_BD/help.lang similarity index 100% rename from htdocs/langs/bn_BD/help.lang rename to public/langs/bn_BD/help.lang diff --git a/htdocs/langs/bn_BD/holiday.lang b/public/langs/bn_BD/holiday.lang similarity index 100% rename from htdocs/langs/bn_BD/holiday.lang rename to public/langs/bn_BD/holiday.lang diff --git a/htdocs/langs/bn_BD/hrm.lang b/public/langs/bn_BD/hrm.lang similarity index 100% rename from htdocs/langs/bn_BD/hrm.lang rename to public/langs/bn_BD/hrm.lang diff --git a/htdocs/langs/bn_BD/incoterm.lang b/public/langs/bn_BD/incoterm.lang similarity index 100% rename from htdocs/langs/bn_BD/incoterm.lang rename to public/langs/bn_BD/incoterm.lang diff --git a/htdocs/langs/bn_BD/install.lang b/public/langs/bn_BD/install.lang similarity index 100% rename from htdocs/langs/bn_BD/install.lang rename to public/langs/bn_BD/install.lang diff --git a/htdocs/langs/bn_BD/interventions.lang b/public/langs/bn_BD/interventions.lang similarity index 100% rename from htdocs/langs/bn_BD/interventions.lang rename to public/langs/bn_BD/interventions.lang diff --git a/htdocs/langs/bn_BD/languages.lang b/public/langs/bn_BD/languages.lang similarity index 100% rename from htdocs/langs/bn_BD/languages.lang rename to public/langs/bn_BD/languages.lang diff --git a/htdocs/langs/bn_BD/ldap.lang b/public/langs/bn_BD/ldap.lang similarity index 100% rename from htdocs/langs/bn_BD/ldap.lang rename to public/langs/bn_BD/ldap.lang diff --git a/htdocs/langs/bn_BD/link.lang b/public/langs/bn_BD/link.lang similarity index 100% rename from htdocs/langs/bn_BD/link.lang rename to public/langs/bn_BD/link.lang diff --git a/htdocs/langs/bn_BD/loan.lang b/public/langs/bn_BD/loan.lang similarity index 100% rename from htdocs/langs/bn_BD/loan.lang rename to public/langs/bn_BD/loan.lang diff --git a/htdocs/langs/bn_BD/mailmanspip.lang b/public/langs/bn_BD/mailmanspip.lang similarity index 100% rename from htdocs/langs/bn_BD/mailmanspip.lang rename to public/langs/bn_BD/mailmanspip.lang diff --git a/htdocs/langs/bn_BD/mails.lang b/public/langs/bn_BD/mails.lang similarity index 100% rename from htdocs/langs/bn_BD/mails.lang rename to public/langs/bn_BD/mails.lang diff --git a/htdocs/langs/bn_BD/main.lang b/public/langs/bn_BD/main.lang similarity index 100% rename from htdocs/langs/bn_BD/main.lang rename to public/langs/bn_BD/main.lang diff --git a/htdocs/langs/bn_BD/margins.lang b/public/langs/bn_BD/margins.lang similarity index 100% rename from htdocs/langs/bn_BD/margins.lang rename to public/langs/bn_BD/margins.lang diff --git a/htdocs/langs/bn_BD/members.lang b/public/langs/bn_BD/members.lang similarity index 100% rename from htdocs/langs/bn_BD/members.lang rename to public/langs/bn_BD/members.lang diff --git a/htdocs/langs/bn_BD/oauth.lang b/public/langs/bn_BD/oauth.lang similarity index 100% rename from htdocs/langs/bn_BD/oauth.lang rename to public/langs/bn_BD/oauth.lang diff --git a/htdocs/langs/bn_BD/opensurvey.lang b/public/langs/bn_BD/opensurvey.lang similarity index 100% rename from htdocs/langs/bn_BD/opensurvey.lang rename to public/langs/bn_BD/opensurvey.lang diff --git a/htdocs/langs/bn_BD/orders.lang b/public/langs/bn_BD/orders.lang similarity index 100% rename from htdocs/langs/bn_BD/orders.lang rename to public/langs/bn_BD/orders.lang diff --git a/htdocs/langs/bn_BD/other.lang b/public/langs/bn_BD/other.lang similarity index 100% rename from htdocs/langs/bn_BD/other.lang rename to public/langs/bn_BD/other.lang diff --git a/htdocs/langs/bn_BD/paybox.lang b/public/langs/bn_BD/paybox.lang similarity index 100% rename from htdocs/langs/bn_BD/paybox.lang rename to public/langs/bn_BD/paybox.lang diff --git a/htdocs/langs/bn_BD/paypal.lang b/public/langs/bn_BD/paypal.lang similarity index 100% rename from htdocs/langs/bn_BD/paypal.lang rename to public/langs/bn_BD/paypal.lang diff --git a/htdocs/langs/bn_BD/printing.lang b/public/langs/bn_BD/printing.lang similarity index 100% rename from htdocs/langs/bn_BD/printing.lang rename to public/langs/bn_BD/printing.lang diff --git a/htdocs/langs/bn_BD/productbatch.lang b/public/langs/bn_BD/productbatch.lang similarity index 100% rename from htdocs/langs/bn_BD/productbatch.lang rename to public/langs/bn_BD/productbatch.lang diff --git a/htdocs/langs/bn_BD/products.lang b/public/langs/bn_BD/products.lang similarity index 100% rename from htdocs/langs/bn_BD/products.lang rename to public/langs/bn_BD/products.lang diff --git a/htdocs/langs/bn_BD/projects.lang b/public/langs/bn_BD/projects.lang similarity index 100% rename from htdocs/langs/bn_BD/projects.lang rename to public/langs/bn_BD/projects.lang diff --git a/htdocs/langs/bn_BD/propal.lang b/public/langs/bn_BD/propal.lang similarity index 100% rename from htdocs/langs/bn_BD/propal.lang rename to public/langs/bn_BD/propal.lang diff --git a/htdocs/langs/bn_BD/receiptprinter.lang b/public/langs/bn_BD/receiptprinter.lang similarity index 100% rename from htdocs/langs/bn_BD/receiptprinter.lang rename to public/langs/bn_BD/receiptprinter.lang diff --git a/htdocs/langs/bn_BD/resource.lang b/public/langs/bn_BD/resource.lang similarity index 100% rename from htdocs/langs/bn_BD/resource.lang rename to public/langs/bn_BD/resource.lang diff --git a/htdocs/langs/bn_BD/salaries.lang b/public/langs/bn_BD/salaries.lang similarity index 100% rename from htdocs/langs/bn_BD/salaries.lang rename to public/langs/bn_BD/salaries.lang diff --git a/htdocs/langs/bn_BD/sendings.lang b/public/langs/bn_BD/sendings.lang similarity index 100% rename from htdocs/langs/bn_BD/sendings.lang rename to public/langs/bn_BD/sendings.lang diff --git a/htdocs/langs/bn_BD/sms.lang b/public/langs/bn_BD/sms.lang similarity index 100% rename from htdocs/langs/bn_BD/sms.lang rename to public/langs/bn_BD/sms.lang diff --git a/htdocs/langs/bn_BD/stocks.lang b/public/langs/bn_BD/stocks.lang similarity index 100% rename from htdocs/langs/bn_BD/stocks.lang rename to public/langs/bn_BD/stocks.lang diff --git a/htdocs/langs/bn_BD/supplier_proposal.lang b/public/langs/bn_BD/supplier_proposal.lang similarity index 100% rename from htdocs/langs/bn_BD/supplier_proposal.lang rename to public/langs/bn_BD/supplier_proposal.lang diff --git a/htdocs/langs/bn_BD/suppliers.lang b/public/langs/bn_BD/suppliers.lang similarity index 100% rename from htdocs/langs/bn_BD/suppliers.lang rename to public/langs/bn_BD/suppliers.lang diff --git a/htdocs/langs/bn_BD/trips.lang b/public/langs/bn_BD/trips.lang similarity index 100% rename from htdocs/langs/bn_BD/trips.lang rename to public/langs/bn_BD/trips.lang diff --git a/htdocs/langs/bn_BD/users.lang b/public/langs/bn_BD/users.lang similarity index 100% rename from htdocs/langs/bn_BD/users.lang rename to public/langs/bn_BD/users.lang diff --git a/htdocs/langs/bn_BD/website.lang b/public/langs/bn_BD/website.lang similarity index 100% rename from htdocs/langs/bn_BD/website.lang rename to public/langs/bn_BD/website.lang diff --git a/htdocs/langs/bn_BD/withdrawals.lang b/public/langs/bn_BD/withdrawals.lang similarity index 100% rename from htdocs/langs/bn_BD/withdrawals.lang rename to public/langs/bn_BD/withdrawals.lang diff --git a/htdocs/langs/bn_BD/workflow.lang b/public/langs/bn_BD/workflow.lang similarity index 100% rename from htdocs/langs/bn_BD/workflow.lang rename to public/langs/bn_BD/workflow.lang diff --git a/htdocs/langs/bs_BA/accountancy.lang b/public/langs/bs_BA/accountancy.lang similarity index 100% rename from htdocs/langs/bs_BA/accountancy.lang rename to public/langs/bs_BA/accountancy.lang diff --git a/htdocs/langs/bs_BA/admin.lang b/public/langs/bs_BA/admin.lang similarity index 100% rename from htdocs/langs/bs_BA/admin.lang rename to public/langs/bs_BA/admin.lang diff --git a/htdocs/langs/bs_BA/agenda.lang b/public/langs/bs_BA/agenda.lang similarity index 100% rename from htdocs/langs/bs_BA/agenda.lang rename to public/langs/bs_BA/agenda.lang diff --git a/htdocs/langs/bs_BA/banks.lang b/public/langs/bs_BA/banks.lang similarity index 100% rename from htdocs/langs/bs_BA/banks.lang rename to public/langs/bs_BA/banks.lang diff --git a/htdocs/langs/bs_BA/bills.lang b/public/langs/bs_BA/bills.lang similarity index 100% rename from htdocs/langs/bs_BA/bills.lang rename to public/langs/bs_BA/bills.lang diff --git a/htdocs/langs/bs_BA/bookmarks.lang b/public/langs/bs_BA/bookmarks.lang similarity index 100% rename from htdocs/langs/bs_BA/bookmarks.lang rename to public/langs/bs_BA/bookmarks.lang diff --git a/htdocs/langs/bs_BA/boxes.lang b/public/langs/bs_BA/boxes.lang similarity index 100% rename from htdocs/langs/bs_BA/boxes.lang rename to public/langs/bs_BA/boxes.lang diff --git a/htdocs/langs/bs_BA/cashdesk.lang b/public/langs/bs_BA/cashdesk.lang similarity index 100% rename from htdocs/langs/bs_BA/cashdesk.lang rename to public/langs/bs_BA/cashdesk.lang diff --git a/htdocs/langs/bs_BA/categories.lang b/public/langs/bs_BA/categories.lang similarity index 100% rename from htdocs/langs/bs_BA/categories.lang rename to public/langs/bs_BA/categories.lang diff --git a/htdocs/langs/bs_BA/commercial.lang b/public/langs/bs_BA/commercial.lang similarity index 100% rename from htdocs/langs/bs_BA/commercial.lang rename to public/langs/bs_BA/commercial.lang diff --git a/htdocs/langs/bs_BA/companies.lang b/public/langs/bs_BA/companies.lang similarity index 100% rename from htdocs/langs/bs_BA/companies.lang rename to public/langs/bs_BA/companies.lang diff --git a/htdocs/langs/bs_BA/compta.lang b/public/langs/bs_BA/compta.lang similarity index 100% rename from htdocs/langs/bs_BA/compta.lang rename to public/langs/bs_BA/compta.lang diff --git a/htdocs/langs/bs_BA/contracts.lang b/public/langs/bs_BA/contracts.lang similarity index 100% rename from htdocs/langs/bs_BA/contracts.lang rename to public/langs/bs_BA/contracts.lang diff --git a/htdocs/langs/bs_BA/cron.lang b/public/langs/bs_BA/cron.lang similarity index 100% rename from htdocs/langs/bs_BA/cron.lang rename to public/langs/bs_BA/cron.lang diff --git a/htdocs/langs/bs_BA/deliveries.lang b/public/langs/bs_BA/deliveries.lang similarity index 100% rename from htdocs/langs/bs_BA/deliveries.lang rename to public/langs/bs_BA/deliveries.lang diff --git a/htdocs/langs/bs_BA/dict.lang b/public/langs/bs_BA/dict.lang similarity index 100% rename from htdocs/langs/bs_BA/dict.lang rename to public/langs/bs_BA/dict.lang diff --git a/htdocs/langs/bs_BA/donations.lang b/public/langs/bs_BA/donations.lang similarity index 100% rename from htdocs/langs/bs_BA/donations.lang rename to public/langs/bs_BA/donations.lang diff --git a/htdocs/langs/bs_BA/ecm.lang b/public/langs/bs_BA/ecm.lang similarity index 100% rename from htdocs/langs/bs_BA/ecm.lang rename to public/langs/bs_BA/ecm.lang diff --git a/htdocs/langs/bs_BA/errors.lang b/public/langs/bs_BA/errors.lang similarity index 100% rename from htdocs/langs/bs_BA/errors.lang rename to public/langs/bs_BA/errors.lang diff --git a/htdocs/langs/bs_BA/exports.lang b/public/langs/bs_BA/exports.lang similarity index 100% rename from htdocs/langs/bs_BA/exports.lang rename to public/langs/bs_BA/exports.lang diff --git a/htdocs/langs/bs_BA/externalsite.lang b/public/langs/bs_BA/externalsite.lang similarity index 100% rename from htdocs/langs/bs_BA/externalsite.lang rename to public/langs/bs_BA/externalsite.lang diff --git a/htdocs/langs/bs_BA/ftp.lang b/public/langs/bs_BA/ftp.lang similarity index 100% rename from htdocs/langs/bs_BA/ftp.lang rename to public/langs/bs_BA/ftp.lang diff --git a/htdocs/langs/bs_BA/help.lang b/public/langs/bs_BA/help.lang similarity index 100% rename from htdocs/langs/bs_BA/help.lang rename to public/langs/bs_BA/help.lang diff --git a/htdocs/langs/bs_BA/holiday.lang b/public/langs/bs_BA/holiday.lang similarity index 100% rename from htdocs/langs/bs_BA/holiday.lang rename to public/langs/bs_BA/holiday.lang diff --git a/htdocs/langs/bs_BA/hrm.lang b/public/langs/bs_BA/hrm.lang similarity index 100% rename from htdocs/langs/bs_BA/hrm.lang rename to public/langs/bs_BA/hrm.lang diff --git a/htdocs/langs/bs_BA/incoterm.lang b/public/langs/bs_BA/incoterm.lang similarity index 100% rename from htdocs/langs/bs_BA/incoterm.lang rename to public/langs/bs_BA/incoterm.lang diff --git a/htdocs/langs/bs_BA/install.lang b/public/langs/bs_BA/install.lang similarity index 100% rename from htdocs/langs/bs_BA/install.lang rename to public/langs/bs_BA/install.lang diff --git a/htdocs/langs/bs_BA/interventions.lang b/public/langs/bs_BA/interventions.lang similarity index 100% rename from htdocs/langs/bs_BA/interventions.lang rename to public/langs/bs_BA/interventions.lang diff --git a/htdocs/langs/bs_BA/languages.lang b/public/langs/bs_BA/languages.lang similarity index 100% rename from htdocs/langs/bs_BA/languages.lang rename to public/langs/bs_BA/languages.lang diff --git a/htdocs/langs/bs_BA/ldap.lang b/public/langs/bs_BA/ldap.lang similarity index 100% rename from htdocs/langs/bs_BA/ldap.lang rename to public/langs/bs_BA/ldap.lang diff --git a/htdocs/langs/bs_BA/link.lang b/public/langs/bs_BA/link.lang similarity index 100% rename from htdocs/langs/bs_BA/link.lang rename to public/langs/bs_BA/link.lang diff --git a/htdocs/langs/bs_BA/loan.lang b/public/langs/bs_BA/loan.lang similarity index 100% rename from htdocs/langs/bs_BA/loan.lang rename to public/langs/bs_BA/loan.lang diff --git a/htdocs/langs/bs_BA/mailmanspip.lang b/public/langs/bs_BA/mailmanspip.lang similarity index 100% rename from htdocs/langs/bs_BA/mailmanspip.lang rename to public/langs/bs_BA/mailmanspip.lang diff --git a/htdocs/langs/bs_BA/mails.lang b/public/langs/bs_BA/mails.lang similarity index 100% rename from htdocs/langs/bs_BA/mails.lang rename to public/langs/bs_BA/mails.lang diff --git a/htdocs/langs/bs_BA/main.lang b/public/langs/bs_BA/main.lang similarity index 100% rename from htdocs/langs/bs_BA/main.lang rename to public/langs/bs_BA/main.lang diff --git a/htdocs/langs/bs_BA/margins.lang b/public/langs/bs_BA/margins.lang similarity index 100% rename from htdocs/langs/bs_BA/margins.lang rename to public/langs/bs_BA/margins.lang diff --git a/htdocs/langs/bs_BA/members.lang b/public/langs/bs_BA/members.lang similarity index 100% rename from htdocs/langs/bs_BA/members.lang rename to public/langs/bs_BA/members.lang diff --git a/htdocs/langs/bs_BA/oauth.lang b/public/langs/bs_BA/oauth.lang similarity index 100% rename from htdocs/langs/bs_BA/oauth.lang rename to public/langs/bs_BA/oauth.lang diff --git a/htdocs/langs/bs_BA/opensurvey.lang b/public/langs/bs_BA/opensurvey.lang similarity index 100% rename from htdocs/langs/bs_BA/opensurvey.lang rename to public/langs/bs_BA/opensurvey.lang diff --git a/htdocs/langs/bs_BA/orders.lang b/public/langs/bs_BA/orders.lang similarity index 100% rename from htdocs/langs/bs_BA/orders.lang rename to public/langs/bs_BA/orders.lang diff --git a/htdocs/langs/bs_BA/other.lang b/public/langs/bs_BA/other.lang similarity index 100% rename from htdocs/langs/bs_BA/other.lang rename to public/langs/bs_BA/other.lang diff --git a/htdocs/langs/bs_BA/paybox.lang b/public/langs/bs_BA/paybox.lang similarity index 100% rename from htdocs/langs/bs_BA/paybox.lang rename to public/langs/bs_BA/paybox.lang diff --git a/htdocs/langs/bs_BA/paypal.lang b/public/langs/bs_BA/paypal.lang similarity index 100% rename from htdocs/langs/bs_BA/paypal.lang rename to public/langs/bs_BA/paypal.lang diff --git a/htdocs/langs/bs_BA/printing.lang b/public/langs/bs_BA/printing.lang similarity index 100% rename from htdocs/langs/bs_BA/printing.lang rename to public/langs/bs_BA/printing.lang diff --git a/htdocs/langs/bs_BA/productbatch.lang b/public/langs/bs_BA/productbatch.lang similarity index 100% rename from htdocs/langs/bs_BA/productbatch.lang rename to public/langs/bs_BA/productbatch.lang diff --git a/htdocs/langs/bs_BA/products.lang b/public/langs/bs_BA/products.lang similarity index 100% rename from htdocs/langs/bs_BA/products.lang rename to public/langs/bs_BA/products.lang diff --git a/htdocs/langs/bs_BA/projects.lang b/public/langs/bs_BA/projects.lang similarity index 100% rename from htdocs/langs/bs_BA/projects.lang rename to public/langs/bs_BA/projects.lang diff --git a/htdocs/langs/bs_BA/propal.lang b/public/langs/bs_BA/propal.lang similarity index 100% rename from htdocs/langs/bs_BA/propal.lang rename to public/langs/bs_BA/propal.lang diff --git a/htdocs/langs/bs_BA/receiptprinter.lang b/public/langs/bs_BA/receiptprinter.lang similarity index 100% rename from htdocs/langs/bs_BA/receiptprinter.lang rename to public/langs/bs_BA/receiptprinter.lang diff --git a/htdocs/langs/bs_BA/resource.lang b/public/langs/bs_BA/resource.lang similarity index 100% rename from htdocs/langs/bs_BA/resource.lang rename to public/langs/bs_BA/resource.lang diff --git a/htdocs/langs/bs_BA/salaries.lang b/public/langs/bs_BA/salaries.lang similarity index 100% rename from htdocs/langs/bs_BA/salaries.lang rename to public/langs/bs_BA/salaries.lang diff --git a/htdocs/langs/bs_BA/sendings.lang b/public/langs/bs_BA/sendings.lang similarity index 100% rename from htdocs/langs/bs_BA/sendings.lang rename to public/langs/bs_BA/sendings.lang diff --git a/htdocs/langs/bs_BA/sms.lang b/public/langs/bs_BA/sms.lang similarity index 100% rename from htdocs/langs/bs_BA/sms.lang rename to public/langs/bs_BA/sms.lang diff --git a/htdocs/langs/bs_BA/stocks.lang b/public/langs/bs_BA/stocks.lang similarity index 100% rename from htdocs/langs/bs_BA/stocks.lang rename to public/langs/bs_BA/stocks.lang diff --git a/htdocs/langs/bs_BA/supplier_proposal.lang b/public/langs/bs_BA/supplier_proposal.lang similarity index 100% rename from htdocs/langs/bs_BA/supplier_proposal.lang rename to public/langs/bs_BA/supplier_proposal.lang diff --git a/htdocs/langs/bs_BA/suppliers.lang b/public/langs/bs_BA/suppliers.lang similarity index 100% rename from htdocs/langs/bs_BA/suppliers.lang rename to public/langs/bs_BA/suppliers.lang diff --git a/htdocs/langs/bs_BA/trips.lang b/public/langs/bs_BA/trips.lang similarity index 100% rename from htdocs/langs/bs_BA/trips.lang rename to public/langs/bs_BA/trips.lang diff --git a/htdocs/langs/bs_BA/users.lang b/public/langs/bs_BA/users.lang similarity index 100% rename from htdocs/langs/bs_BA/users.lang rename to public/langs/bs_BA/users.lang diff --git a/htdocs/langs/bs_BA/website.lang b/public/langs/bs_BA/website.lang similarity index 100% rename from htdocs/langs/bs_BA/website.lang rename to public/langs/bs_BA/website.lang diff --git a/htdocs/langs/bs_BA/withdrawals.lang b/public/langs/bs_BA/withdrawals.lang similarity index 100% rename from htdocs/langs/bs_BA/withdrawals.lang rename to public/langs/bs_BA/withdrawals.lang diff --git a/htdocs/langs/bs_BA/workflow.lang b/public/langs/bs_BA/workflow.lang similarity index 100% rename from htdocs/langs/bs_BA/workflow.lang rename to public/langs/bs_BA/workflow.lang diff --git a/htdocs/langs/ca_ES/accountancy.lang b/public/langs/ca_ES/accountancy.lang similarity index 100% rename from htdocs/langs/ca_ES/accountancy.lang rename to public/langs/ca_ES/accountancy.lang diff --git a/htdocs/langs/ca_ES/admin.lang b/public/langs/ca_ES/admin.lang similarity index 100% rename from htdocs/langs/ca_ES/admin.lang rename to public/langs/ca_ES/admin.lang diff --git a/htdocs/langs/ca_ES/agenda.lang b/public/langs/ca_ES/agenda.lang similarity index 100% rename from htdocs/langs/ca_ES/agenda.lang rename to public/langs/ca_ES/agenda.lang diff --git a/htdocs/langs/ca_ES/banks.lang b/public/langs/ca_ES/banks.lang similarity index 100% rename from htdocs/langs/ca_ES/banks.lang rename to public/langs/ca_ES/banks.lang diff --git a/htdocs/langs/ca_ES/bills.lang b/public/langs/ca_ES/bills.lang similarity index 100% rename from htdocs/langs/ca_ES/bills.lang rename to public/langs/ca_ES/bills.lang diff --git a/htdocs/langs/ca_ES/bookmarks.lang b/public/langs/ca_ES/bookmarks.lang similarity index 100% rename from htdocs/langs/ca_ES/bookmarks.lang rename to public/langs/ca_ES/bookmarks.lang diff --git a/htdocs/langs/ca_ES/boxes.lang b/public/langs/ca_ES/boxes.lang similarity index 100% rename from htdocs/langs/ca_ES/boxes.lang rename to public/langs/ca_ES/boxes.lang diff --git a/htdocs/langs/ca_ES/cashdesk.lang b/public/langs/ca_ES/cashdesk.lang similarity index 100% rename from htdocs/langs/ca_ES/cashdesk.lang rename to public/langs/ca_ES/cashdesk.lang diff --git a/htdocs/langs/ca_ES/categories.lang b/public/langs/ca_ES/categories.lang similarity index 100% rename from htdocs/langs/ca_ES/categories.lang rename to public/langs/ca_ES/categories.lang diff --git a/htdocs/langs/ca_ES/commercial.lang b/public/langs/ca_ES/commercial.lang similarity index 100% rename from htdocs/langs/ca_ES/commercial.lang rename to public/langs/ca_ES/commercial.lang diff --git a/htdocs/langs/ca_ES/companies.lang b/public/langs/ca_ES/companies.lang similarity index 100% rename from htdocs/langs/ca_ES/companies.lang rename to public/langs/ca_ES/companies.lang diff --git a/htdocs/langs/ca_ES/compta.lang b/public/langs/ca_ES/compta.lang similarity index 100% rename from htdocs/langs/ca_ES/compta.lang rename to public/langs/ca_ES/compta.lang diff --git a/htdocs/langs/ca_ES/contracts.lang b/public/langs/ca_ES/contracts.lang similarity index 100% rename from htdocs/langs/ca_ES/contracts.lang rename to public/langs/ca_ES/contracts.lang diff --git a/htdocs/langs/ca_ES/cron.lang b/public/langs/ca_ES/cron.lang similarity index 100% rename from htdocs/langs/ca_ES/cron.lang rename to public/langs/ca_ES/cron.lang diff --git a/htdocs/langs/ca_ES/deliveries.lang b/public/langs/ca_ES/deliveries.lang similarity index 100% rename from htdocs/langs/ca_ES/deliveries.lang rename to public/langs/ca_ES/deliveries.lang diff --git a/htdocs/langs/ca_ES/dict.lang b/public/langs/ca_ES/dict.lang similarity index 100% rename from htdocs/langs/ca_ES/dict.lang rename to public/langs/ca_ES/dict.lang diff --git a/htdocs/langs/ca_ES/donations.lang b/public/langs/ca_ES/donations.lang similarity index 100% rename from htdocs/langs/ca_ES/donations.lang rename to public/langs/ca_ES/donations.lang diff --git a/htdocs/langs/ca_ES/ecm.lang b/public/langs/ca_ES/ecm.lang similarity index 100% rename from htdocs/langs/ca_ES/ecm.lang rename to public/langs/ca_ES/ecm.lang diff --git a/htdocs/langs/ca_ES/errors.lang b/public/langs/ca_ES/errors.lang similarity index 100% rename from htdocs/langs/ca_ES/errors.lang rename to public/langs/ca_ES/errors.lang diff --git a/htdocs/langs/ca_ES/exports.lang b/public/langs/ca_ES/exports.lang similarity index 100% rename from htdocs/langs/ca_ES/exports.lang rename to public/langs/ca_ES/exports.lang diff --git a/htdocs/langs/ca_ES/externalsite.lang b/public/langs/ca_ES/externalsite.lang similarity index 100% rename from htdocs/langs/ca_ES/externalsite.lang rename to public/langs/ca_ES/externalsite.lang diff --git a/htdocs/langs/ca_ES/ftp.lang b/public/langs/ca_ES/ftp.lang similarity index 100% rename from htdocs/langs/ca_ES/ftp.lang rename to public/langs/ca_ES/ftp.lang diff --git a/htdocs/langs/ca_ES/help.lang b/public/langs/ca_ES/help.lang similarity index 100% rename from htdocs/langs/ca_ES/help.lang rename to public/langs/ca_ES/help.lang diff --git a/htdocs/langs/ca_ES/holiday.lang b/public/langs/ca_ES/holiday.lang similarity index 100% rename from htdocs/langs/ca_ES/holiday.lang rename to public/langs/ca_ES/holiday.lang diff --git a/htdocs/langs/ca_ES/hrm.lang b/public/langs/ca_ES/hrm.lang similarity index 100% rename from htdocs/langs/ca_ES/hrm.lang rename to public/langs/ca_ES/hrm.lang diff --git a/htdocs/langs/ca_ES/incoterm.lang b/public/langs/ca_ES/incoterm.lang similarity index 100% rename from htdocs/langs/ca_ES/incoterm.lang rename to public/langs/ca_ES/incoterm.lang diff --git a/htdocs/langs/ca_ES/install.lang b/public/langs/ca_ES/install.lang similarity index 100% rename from htdocs/langs/ca_ES/install.lang rename to public/langs/ca_ES/install.lang diff --git a/htdocs/langs/ca_ES/interventions.lang b/public/langs/ca_ES/interventions.lang similarity index 100% rename from htdocs/langs/ca_ES/interventions.lang rename to public/langs/ca_ES/interventions.lang diff --git a/htdocs/langs/ca_ES/languages.lang b/public/langs/ca_ES/languages.lang similarity index 100% rename from htdocs/langs/ca_ES/languages.lang rename to public/langs/ca_ES/languages.lang diff --git a/htdocs/langs/ca_ES/ldap.lang b/public/langs/ca_ES/ldap.lang similarity index 100% rename from htdocs/langs/ca_ES/ldap.lang rename to public/langs/ca_ES/ldap.lang diff --git a/htdocs/langs/ca_ES/link.lang b/public/langs/ca_ES/link.lang similarity index 100% rename from htdocs/langs/ca_ES/link.lang rename to public/langs/ca_ES/link.lang diff --git a/htdocs/langs/ca_ES/loan.lang b/public/langs/ca_ES/loan.lang similarity index 100% rename from htdocs/langs/ca_ES/loan.lang rename to public/langs/ca_ES/loan.lang diff --git a/htdocs/langs/ca_ES/mailmanspip.lang b/public/langs/ca_ES/mailmanspip.lang similarity index 100% rename from htdocs/langs/ca_ES/mailmanspip.lang rename to public/langs/ca_ES/mailmanspip.lang diff --git a/htdocs/langs/ca_ES/mails.lang b/public/langs/ca_ES/mails.lang similarity index 100% rename from htdocs/langs/ca_ES/mails.lang rename to public/langs/ca_ES/mails.lang diff --git a/htdocs/langs/ca_ES/main.lang b/public/langs/ca_ES/main.lang similarity index 100% rename from htdocs/langs/ca_ES/main.lang rename to public/langs/ca_ES/main.lang diff --git a/htdocs/langs/ca_ES/margins.lang b/public/langs/ca_ES/margins.lang similarity index 100% rename from htdocs/langs/ca_ES/margins.lang rename to public/langs/ca_ES/margins.lang diff --git a/htdocs/langs/ca_ES/members.lang b/public/langs/ca_ES/members.lang similarity index 100% rename from htdocs/langs/ca_ES/members.lang rename to public/langs/ca_ES/members.lang diff --git a/htdocs/langs/ca_ES/oauth.lang b/public/langs/ca_ES/oauth.lang similarity index 100% rename from htdocs/langs/ca_ES/oauth.lang rename to public/langs/ca_ES/oauth.lang diff --git a/htdocs/langs/ca_ES/opensurvey.lang b/public/langs/ca_ES/opensurvey.lang similarity index 100% rename from htdocs/langs/ca_ES/opensurvey.lang rename to public/langs/ca_ES/opensurvey.lang diff --git a/htdocs/langs/ca_ES/orders.lang b/public/langs/ca_ES/orders.lang similarity index 100% rename from htdocs/langs/ca_ES/orders.lang rename to public/langs/ca_ES/orders.lang diff --git a/htdocs/langs/ca_ES/other.lang b/public/langs/ca_ES/other.lang similarity index 100% rename from htdocs/langs/ca_ES/other.lang rename to public/langs/ca_ES/other.lang diff --git a/htdocs/langs/ca_ES/paybox.lang b/public/langs/ca_ES/paybox.lang similarity index 100% rename from htdocs/langs/ca_ES/paybox.lang rename to public/langs/ca_ES/paybox.lang diff --git a/htdocs/langs/ca_ES/paypal.lang b/public/langs/ca_ES/paypal.lang similarity index 100% rename from htdocs/langs/ca_ES/paypal.lang rename to public/langs/ca_ES/paypal.lang diff --git a/htdocs/langs/ca_ES/printing.lang b/public/langs/ca_ES/printing.lang similarity index 100% rename from htdocs/langs/ca_ES/printing.lang rename to public/langs/ca_ES/printing.lang diff --git a/htdocs/langs/ca_ES/productbatch.lang b/public/langs/ca_ES/productbatch.lang similarity index 100% rename from htdocs/langs/ca_ES/productbatch.lang rename to public/langs/ca_ES/productbatch.lang diff --git a/htdocs/langs/ca_ES/products.lang b/public/langs/ca_ES/products.lang similarity index 100% rename from htdocs/langs/ca_ES/products.lang rename to public/langs/ca_ES/products.lang diff --git a/htdocs/langs/ca_ES/projects.lang b/public/langs/ca_ES/projects.lang similarity index 100% rename from htdocs/langs/ca_ES/projects.lang rename to public/langs/ca_ES/projects.lang diff --git a/htdocs/langs/ca_ES/propal.lang b/public/langs/ca_ES/propal.lang similarity index 100% rename from htdocs/langs/ca_ES/propal.lang rename to public/langs/ca_ES/propal.lang diff --git a/htdocs/langs/ca_ES/receiptprinter.lang b/public/langs/ca_ES/receiptprinter.lang similarity index 100% rename from htdocs/langs/ca_ES/receiptprinter.lang rename to public/langs/ca_ES/receiptprinter.lang diff --git a/htdocs/langs/ca_ES/resource.lang b/public/langs/ca_ES/resource.lang similarity index 100% rename from htdocs/langs/ca_ES/resource.lang rename to public/langs/ca_ES/resource.lang diff --git a/htdocs/langs/ca_ES/salaries.lang b/public/langs/ca_ES/salaries.lang similarity index 100% rename from htdocs/langs/ca_ES/salaries.lang rename to public/langs/ca_ES/salaries.lang diff --git a/htdocs/langs/ca_ES/sendings.lang b/public/langs/ca_ES/sendings.lang similarity index 100% rename from htdocs/langs/ca_ES/sendings.lang rename to public/langs/ca_ES/sendings.lang diff --git a/htdocs/langs/ca_ES/sms.lang b/public/langs/ca_ES/sms.lang similarity index 100% rename from htdocs/langs/ca_ES/sms.lang rename to public/langs/ca_ES/sms.lang diff --git a/htdocs/langs/ca_ES/stocks.lang b/public/langs/ca_ES/stocks.lang similarity index 100% rename from htdocs/langs/ca_ES/stocks.lang rename to public/langs/ca_ES/stocks.lang diff --git a/htdocs/langs/ca_ES/supplier_proposal.lang b/public/langs/ca_ES/supplier_proposal.lang similarity index 100% rename from htdocs/langs/ca_ES/supplier_proposal.lang rename to public/langs/ca_ES/supplier_proposal.lang diff --git a/htdocs/langs/ca_ES/suppliers.lang b/public/langs/ca_ES/suppliers.lang similarity index 100% rename from htdocs/langs/ca_ES/suppliers.lang rename to public/langs/ca_ES/suppliers.lang diff --git a/htdocs/langs/ca_ES/trips.lang b/public/langs/ca_ES/trips.lang similarity index 100% rename from htdocs/langs/ca_ES/trips.lang rename to public/langs/ca_ES/trips.lang diff --git a/htdocs/langs/ca_ES/users.lang b/public/langs/ca_ES/users.lang similarity index 100% rename from htdocs/langs/ca_ES/users.lang rename to public/langs/ca_ES/users.lang diff --git a/htdocs/langs/ca_ES/website.lang b/public/langs/ca_ES/website.lang similarity index 100% rename from htdocs/langs/ca_ES/website.lang rename to public/langs/ca_ES/website.lang diff --git a/htdocs/langs/ca_ES/withdrawals.lang b/public/langs/ca_ES/withdrawals.lang similarity index 100% rename from htdocs/langs/ca_ES/withdrawals.lang rename to public/langs/ca_ES/withdrawals.lang diff --git a/htdocs/langs/ca_ES/workflow.lang b/public/langs/ca_ES/workflow.lang similarity index 100% rename from htdocs/langs/ca_ES/workflow.lang rename to public/langs/ca_ES/workflow.lang diff --git a/htdocs/langs/cs_CZ/accountancy.lang b/public/langs/cs_CZ/accountancy.lang similarity index 100% rename from htdocs/langs/cs_CZ/accountancy.lang rename to public/langs/cs_CZ/accountancy.lang diff --git a/htdocs/langs/cs_CZ/admin.lang b/public/langs/cs_CZ/admin.lang similarity index 100% rename from htdocs/langs/cs_CZ/admin.lang rename to public/langs/cs_CZ/admin.lang diff --git a/htdocs/langs/cs_CZ/agenda.lang b/public/langs/cs_CZ/agenda.lang similarity index 100% rename from htdocs/langs/cs_CZ/agenda.lang rename to public/langs/cs_CZ/agenda.lang diff --git a/htdocs/langs/cs_CZ/banks.lang b/public/langs/cs_CZ/banks.lang similarity index 100% rename from htdocs/langs/cs_CZ/banks.lang rename to public/langs/cs_CZ/banks.lang diff --git a/htdocs/langs/cs_CZ/bills.lang b/public/langs/cs_CZ/bills.lang similarity index 100% rename from htdocs/langs/cs_CZ/bills.lang rename to public/langs/cs_CZ/bills.lang diff --git a/htdocs/langs/cs_CZ/bookmarks.lang b/public/langs/cs_CZ/bookmarks.lang similarity index 100% rename from htdocs/langs/cs_CZ/bookmarks.lang rename to public/langs/cs_CZ/bookmarks.lang diff --git a/htdocs/langs/cs_CZ/boxes.lang b/public/langs/cs_CZ/boxes.lang similarity index 100% rename from htdocs/langs/cs_CZ/boxes.lang rename to public/langs/cs_CZ/boxes.lang diff --git a/htdocs/langs/cs_CZ/cashdesk.lang b/public/langs/cs_CZ/cashdesk.lang similarity index 100% rename from htdocs/langs/cs_CZ/cashdesk.lang rename to public/langs/cs_CZ/cashdesk.lang diff --git a/htdocs/langs/cs_CZ/categories.lang b/public/langs/cs_CZ/categories.lang similarity index 100% rename from htdocs/langs/cs_CZ/categories.lang rename to public/langs/cs_CZ/categories.lang diff --git a/htdocs/langs/cs_CZ/commercial.lang b/public/langs/cs_CZ/commercial.lang similarity index 100% rename from htdocs/langs/cs_CZ/commercial.lang rename to public/langs/cs_CZ/commercial.lang diff --git a/htdocs/langs/cs_CZ/companies.lang b/public/langs/cs_CZ/companies.lang similarity index 100% rename from htdocs/langs/cs_CZ/companies.lang rename to public/langs/cs_CZ/companies.lang diff --git a/htdocs/langs/cs_CZ/compta.lang b/public/langs/cs_CZ/compta.lang similarity index 100% rename from htdocs/langs/cs_CZ/compta.lang rename to public/langs/cs_CZ/compta.lang diff --git a/htdocs/langs/cs_CZ/contracts.lang b/public/langs/cs_CZ/contracts.lang similarity index 100% rename from htdocs/langs/cs_CZ/contracts.lang rename to public/langs/cs_CZ/contracts.lang diff --git a/htdocs/langs/cs_CZ/cron.lang b/public/langs/cs_CZ/cron.lang similarity index 100% rename from htdocs/langs/cs_CZ/cron.lang rename to public/langs/cs_CZ/cron.lang diff --git a/htdocs/langs/cs_CZ/deliveries.lang b/public/langs/cs_CZ/deliveries.lang similarity index 100% rename from htdocs/langs/cs_CZ/deliveries.lang rename to public/langs/cs_CZ/deliveries.lang diff --git a/htdocs/langs/cs_CZ/dict.lang b/public/langs/cs_CZ/dict.lang similarity index 100% rename from htdocs/langs/cs_CZ/dict.lang rename to public/langs/cs_CZ/dict.lang diff --git a/htdocs/langs/cs_CZ/donations.lang b/public/langs/cs_CZ/donations.lang similarity index 100% rename from htdocs/langs/cs_CZ/donations.lang rename to public/langs/cs_CZ/donations.lang diff --git a/htdocs/langs/cs_CZ/ecm.lang b/public/langs/cs_CZ/ecm.lang similarity index 100% rename from htdocs/langs/cs_CZ/ecm.lang rename to public/langs/cs_CZ/ecm.lang diff --git a/htdocs/langs/cs_CZ/errors.lang b/public/langs/cs_CZ/errors.lang similarity index 100% rename from htdocs/langs/cs_CZ/errors.lang rename to public/langs/cs_CZ/errors.lang diff --git a/htdocs/langs/cs_CZ/exports.lang b/public/langs/cs_CZ/exports.lang similarity index 100% rename from htdocs/langs/cs_CZ/exports.lang rename to public/langs/cs_CZ/exports.lang diff --git a/htdocs/langs/cs_CZ/externalsite.lang b/public/langs/cs_CZ/externalsite.lang similarity index 100% rename from htdocs/langs/cs_CZ/externalsite.lang rename to public/langs/cs_CZ/externalsite.lang diff --git a/htdocs/langs/cs_CZ/ftp.lang b/public/langs/cs_CZ/ftp.lang similarity index 100% rename from htdocs/langs/cs_CZ/ftp.lang rename to public/langs/cs_CZ/ftp.lang diff --git a/htdocs/langs/cs_CZ/help.lang b/public/langs/cs_CZ/help.lang similarity index 100% rename from htdocs/langs/cs_CZ/help.lang rename to public/langs/cs_CZ/help.lang diff --git a/htdocs/langs/cs_CZ/holiday.lang b/public/langs/cs_CZ/holiday.lang similarity index 100% rename from htdocs/langs/cs_CZ/holiday.lang rename to public/langs/cs_CZ/holiday.lang diff --git a/htdocs/langs/cs_CZ/hrm.lang b/public/langs/cs_CZ/hrm.lang similarity index 100% rename from htdocs/langs/cs_CZ/hrm.lang rename to public/langs/cs_CZ/hrm.lang diff --git a/htdocs/langs/cs_CZ/incoterm.lang b/public/langs/cs_CZ/incoterm.lang similarity index 100% rename from htdocs/langs/cs_CZ/incoterm.lang rename to public/langs/cs_CZ/incoterm.lang diff --git a/htdocs/langs/cs_CZ/install.lang b/public/langs/cs_CZ/install.lang similarity index 100% rename from htdocs/langs/cs_CZ/install.lang rename to public/langs/cs_CZ/install.lang diff --git a/htdocs/langs/cs_CZ/interventions.lang b/public/langs/cs_CZ/interventions.lang similarity index 100% rename from htdocs/langs/cs_CZ/interventions.lang rename to public/langs/cs_CZ/interventions.lang diff --git a/htdocs/langs/cs_CZ/languages.lang b/public/langs/cs_CZ/languages.lang similarity index 100% rename from htdocs/langs/cs_CZ/languages.lang rename to public/langs/cs_CZ/languages.lang diff --git a/htdocs/langs/cs_CZ/ldap.lang b/public/langs/cs_CZ/ldap.lang similarity index 100% rename from htdocs/langs/cs_CZ/ldap.lang rename to public/langs/cs_CZ/ldap.lang diff --git a/htdocs/langs/cs_CZ/link.lang b/public/langs/cs_CZ/link.lang similarity index 100% rename from htdocs/langs/cs_CZ/link.lang rename to public/langs/cs_CZ/link.lang diff --git a/htdocs/langs/cs_CZ/loan.lang b/public/langs/cs_CZ/loan.lang similarity index 100% rename from htdocs/langs/cs_CZ/loan.lang rename to public/langs/cs_CZ/loan.lang diff --git a/htdocs/langs/cs_CZ/mailmanspip.lang b/public/langs/cs_CZ/mailmanspip.lang similarity index 100% rename from htdocs/langs/cs_CZ/mailmanspip.lang rename to public/langs/cs_CZ/mailmanspip.lang diff --git a/htdocs/langs/cs_CZ/mails.lang b/public/langs/cs_CZ/mails.lang similarity index 100% rename from htdocs/langs/cs_CZ/mails.lang rename to public/langs/cs_CZ/mails.lang diff --git a/htdocs/langs/cs_CZ/main.lang b/public/langs/cs_CZ/main.lang similarity index 100% rename from htdocs/langs/cs_CZ/main.lang rename to public/langs/cs_CZ/main.lang diff --git a/htdocs/langs/cs_CZ/margins.lang b/public/langs/cs_CZ/margins.lang similarity index 100% rename from htdocs/langs/cs_CZ/margins.lang rename to public/langs/cs_CZ/margins.lang diff --git a/htdocs/langs/cs_CZ/members.lang b/public/langs/cs_CZ/members.lang similarity index 100% rename from htdocs/langs/cs_CZ/members.lang rename to public/langs/cs_CZ/members.lang diff --git a/htdocs/langs/cs_CZ/oauth.lang b/public/langs/cs_CZ/oauth.lang similarity index 100% rename from htdocs/langs/cs_CZ/oauth.lang rename to public/langs/cs_CZ/oauth.lang diff --git a/htdocs/langs/cs_CZ/opensurvey.lang b/public/langs/cs_CZ/opensurvey.lang similarity index 100% rename from htdocs/langs/cs_CZ/opensurvey.lang rename to public/langs/cs_CZ/opensurvey.lang diff --git a/htdocs/langs/cs_CZ/orders.lang b/public/langs/cs_CZ/orders.lang similarity index 100% rename from htdocs/langs/cs_CZ/orders.lang rename to public/langs/cs_CZ/orders.lang diff --git a/htdocs/langs/cs_CZ/other.lang b/public/langs/cs_CZ/other.lang similarity index 100% rename from htdocs/langs/cs_CZ/other.lang rename to public/langs/cs_CZ/other.lang diff --git a/htdocs/langs/cs_CZ/paybox.lang b/public/langs/cs_CZ/paybox.lang similarity index 100% rename from htdocs/langs/cs_CZ/paybox.lang rename to public/langs/cs_CZ/paybox.lang diff --git a/htdocs/langs/cs_CZ/paypal.lang b/public/langs/cs_CZ/paypal.lang similarity index 100% rename from htdocs/langs/cs_CZ/paypal.lang rename to public/langs/cs_CZ/paypal.lang diff --git a/htdocs/langs/cs_CZ/printing.lang b/public/langs/cs_CZ/printing.lang similarity index 100% rename from htdocs/langs/cs_CZ/printing.lang rename to public/langs/cs_CZ/printing.lang diff --git a/htdocs/langs/cs_CZ/productbatch.lang b/public/langs/cs_CZ/productbatch.lang similarity index 100% rename from htdocs/langs/cs_CZ/productbatch.lang rename to public/langs/cs_CZ/productbatch.lang diff --git a/htdocs/langs/cs_CZ/products.lang b/public/langs/cs_CZ/products.lang similarity index 100% rename from htdocs/langs/cs_CZ/products.lang rename to public/langs/cs_CZ/products.lang diff --git a/htdocs/langs/cs_CZ/projects.lang b/public/langs/cs_CZ/projects.lang similarity index 100% rename from htdocs/langs/cs_CZ/projects.lang rename to public/langs/cs_CZ/projects.lang diff --git a/htdocs/langs/cs_CZ/propal.lang b/public/langs/cs_CZ/propal.lang similarity index 100% rename from htdocs/langs/cs_CZ/propal.lang rename to public/langs/cs_CZ/propal.lang diff --git a/htdocs/langs/cs_CZ/receiptprinter.lang b/public/langs/cs_CZ/receiptprinter.lang similarity index 100% rename from htdocs/langs/cs_CZ/receiptprinter.lang rename to public/langs/cs_CZ/receiptprinter.lang diff --git a/htdocs/langs/cs_CZ/resource.lang b/public/langs/cs_CZ/resource.lang similarity index 100% rename from htdocs/langs/cs_CZ/resource.lang rename to public/langs/cs_CZ/resource.lang diff --git a/htdocs/langs/cs_CZ/salaries.lang b/public/langs/cs_CZ/salaries.lang similarity index 100% rename from htdocs/langs/cs_CZ/salaries.lang rename to public/langs/cs_CZ/salaries.lang diff --git a/htdocs/langs/cs_CZ/sendings.lang b/public/langs/cs_CZ/sendings.lang similarity index 100% rename from htdocs/langs/cs_CZ/sendings.lang rename to public/langs/cs_CZ/sendings.lang diff --git a/htdocs/langs/cs_CZ/sms.lang b/public/langs/cs_CZ/sms.lang similarity index 100% rename from htdocs/langs/cs_CZ/sms.lang rename to public/langs/cs_CZ/sms.lang diff --git a/htdocs/langs/cs_CZ/stocks.lang b/public/langs/cs_CZ/stocks.lang similarity index 100% rename from htdocs/langs/cs_CZ/stocks.lang rename to public/langs/cs_CZ/stocks.lang diff --git a/htdocs/langs/cs_CZ/supplier_proposal.lang b/public/langs/cs_CZ/supplier_proposal.lang similarity index 100% rename from htdocs/langs/cs_CZ/supplier_proposal.lang rename to public/langs/cs_CZ/supplier_proposal.lang diff --git a/htdocs/langs/cs_CZ/suppliers.lang b/public/langs/cs_CZ/suppliers.lang similarity index 100% rename from htdocs/langs/cs_CZ/suppliers.lang rename to public/langs/cs_CZ/suppliers.lang diff --git a/htdocs/langs/cs_CZ/trips.lang b/public/langs/cs_CZ/trips.lang similarity index 100% rename from htdocs/langs/cs_CZ/trips.lang rename to public/langs/cs_CZ/trips.lang diff --git a/htdocs/langs/cs_CZ/users.lang b/public/langs/cs_CZ/users.lang similarity index 100% rename from htdocs/langs/cs_CZ/users.lang rename to public/langs/cs_CZ/users.lang diff --git a/htdocs/langs/cs_CZ/website.lang b/public/langs/cs_CZ/website.lang similarity index 100% rename from htdocs/langs/cs_CZ/website.lang rename to public/langs/cs_CZ/website.lang diff --git a/htdocs/langs/cs_CZ/withdrawals.lang b/public/langs/cs_CZ/withdrawals.lang similarity index 100% rename from htdocs/langs/cs_CZ/withdrawals.lang rename to public/langs/cs_CZ/withdrawals.lang diff --git a/htdocs/langs/cs_CZ/workflow.lang b/public/langs/cs_CZ/workflow.lang similarity index 100% rename from htdocs/langs/cs_CZ/workflow.lang rename to public/langs/cs_CZ/workflow.lang diff --git a/htdocs/langs/da_DK/accountancy.lang b/public/langs/da_DK/accountancy.lang similarity index 100% rename from htdocs/langs/da_DK/accountancy.lang rename to public/langs/da_DK/accountancy.lang diff --git a/htdocs/langs/da_DK/admin.lang b/public/langs/da_DK/admin.lang similarity index 100% rename from htdocs/langs/da_DK/admin.lang rename to public/langs/da_DK/admin.lang diff --git a/htdocs/langs/da_DK/agenda.lang b/public/langs/da_DK/agenda.lang similarity index 100% rename from htdocs/langs/da_DK/agenda.lang rename to public/langs/da_DK/agenda.lang diff --git a/htdocs/langs/da_DK/banks.lang b/public/langs/da_DK/banks.lang similarity index 100% rename from htdocs/langs/da_DK/banks.lang rename to public/langs/da_DK/banks.lang diff --git a/htdocs/langs/da_DK/bills.lang b/public/langs/da_DK/bills.lang similarity index 100% rename from htdocs/langs/da_DK/bills.lang rename to public/langs/da_DK/bills.lang diff --git a/htdocs/langs/da_DK/bookmarks.lang b/public/langs/da_DK/bookmarks.lang similarity index 100% rename from htdocs/langs/da_DK/bookmarks.lang rename to public/langs/da_DK/bookmarks.lang diff --git a/htdocs/langs/da_DK/boxes.lang b/public/langs/da_DK/boxes.lang similarity index 100% rename from htdocs/langs/da_DK/boxes.lang rename to public/langs/da_DK/boxes.lang diff --git a/htdocs/langs/da_DK/cashdesk.lang b/public/langs/da_DK/cashdesk.lang similarity index 100% rename from htdocs/langs/da_DK/cashdesk.lang rename to public/langs/da_DK/cashdesk.lang diff --git a/htdocs/langs/da_DK/categories.lang b/public/langs/da_DK/categories.lang similarity index 100% rename from htdocs/langs/da_DK/categories.lang rename to public/langs/da_DK/categories.lang diff --git a/htdocs/langs/da_DK/commercial.lang b/public/langs/da_DK/commercial.lang similarity index 100% rename from htdocs/langs/da_DK/commercial.lang rename to public/langs/da_DK/commercial.lang diff --git a/htdocs/langs/da_DK/companies.lang b/public/langs/da_DK/companies.lang similarity index 100% rename from htdocs/langs/da_DK/companies.lang rename to public/langs/da_DK/companies.lang diff --git a/htdocs/langs/da_DK/compta.lang b/public/langs/da_DK/compta.lang similarity index 100% rename from htdocs/langs/da_DK/compta.lang rename to public/langs/da_DK/compta.lang diff --git a/htdocs/langs/da_DK/contracts.lang b/public/langs/da_DK/contracts.lang similarity index 100% rename from htdocs/langs/da_DK/contracts.lang rename to public/langs/da_DK/contracts.lang diff --git a/htdocs/langs/da_DK/cron.lang b/public/langs/da_DK/cron.lang similarity index 100% rename from htdocs/langs/da_DK/cron.lang rename to public/langs/da_DK/cron.lang diff --git a/htdocs/langs/da_DK/deliveries.lang b/public/langs/da_DK/deliveries.lang similarity index 100% rename from htdocs/langs/da_DK/deliveries.lang rename to public/langs/da_DK/deliveries.lang diff --git a/htdocs/langs/da_DK/dict.lang b/public/langs/da_DK/dict.lang similarity index 100% rename from htdocs/langs/da_DK/dict.lang rename to public/langs/da_DK/dict.lang diff --git a/htdocs/langs/da_DK/donations.lang b/public/langs/da_DK/donations.lang similarity index 100% rename from htdocs/langs/da_DK/donations.lang rename to public/langs/da_DK/donations.lang diff --git a/htdocs/langs/da_DK/ecm.lang b/public/langs/da_DK/ecm.lang similarity index 100% rename from htdocs/langs/da_DK/ecm.lang rename to public/langs/da_DK/ecm.lang diff --git a/htdocs/langs/da_DK/errors.lang b/public/langs/da_DK/errors.lang similarity index 100% rename from htdocs/langs/da_DK/errors.lang rename to public/langs/da_DK/errors.lang diff --git a/htdocs/langs/da_DK/exports.lang b/public/langs/da_DK/exports.lang similarity index 100% rename from htdocs/langs/da_DK/exports.lang rename to public/langs/da_DK/exports.lang diff --git a/htdocs/langs/da_DK/externalsite.lang b/public/langs/da_DK/externalsite.lang similarity index 100% rename from htdocs/langs/da_DK/externalsite.lang rename to public/langs/da_DK/externalsite.lang diff --git a/htdocs/langs/da_DK/ftp.lang b/public/langs/da_DK/ftp.lang similarity index 100% rename from htdocs/langs/da_DK/ftp.lang rename to public/langs/da_DK/ftp.lang diff --git a/htdocs/langs/da_DK/help.lang b/public/langs/da_DK/help.lang similarity index 100% rename from htdocs/langs/da_DK/help.lang rename to public/langs/da_DK/help.lang diff --git a/htdocs/langs/da_DK/holiday.lang b/public/langs/da_DK/holiday.lang similarity index 100% rename from htdocs/langs/da_DK/holiday.lang rename to public/langs/da_DK/holiday.lang diff --git a/htdocs/langs/da_DK/hrm.lang b/public/langs/da_DK/hrm.lang similarity index 100% rename from htdocs/langs/da_DK/hrm.lang rename to public/langs/da_DK/hrm.lang diff --git a/htdocs/langs/da_DK/incoterm.lang b/public/langs/da_DK/incoterm.lang similarity index 100% rename from htdocs/langs/da_DK/incoterm.lang rename to public/langs/da_DK/incoterm.lang diff --git a/htdocs/langs/da_DK/install.lang b/public/langs/da_DK/install.lang similarity index 100% rename from htdocs/langs/da_DK/install.lang rename to public/langs/da_DK/install.lang diff --git a/htdocs/langs/da_DK/interventions.lang b/public/langs/da_DK/interventions.lang similarity index 100% rename from htdocs/langs/da_DK/interventions.lang rename to public/langs/da_DK/interventions.lang diff --git a/htdocs/langs/da_DK/languages.lang b/public/langs/da_DK/languages.lang similarity index 100% rename from htdocs/langs/da_DK/languages.lang rename to public/langs/da_DK/languages.lang diff --git a/htdocs/langs/da_DK/ldap.lang b/public/langs/da_DK/ldap.lang similarity index 100% rename from htdocs/langs/da_DK/ldap.lang rename to public/langs/da_DK/ldap.lang diff --git a/htdocs/langs/da_DK/link.lang b/public/langs/da_DK/link.lang similarity index 100% rename from htdocs/langs/da_DK/link.lang rename to public/langs/da_DK/link.lang diff --git a/htdocs/langs/da_DK/loan.lang b/public/langs/da_DK/loan.lang similarity index 100% rename from htdocs/langs/da_DK/loan.lang rename to public/langs/da_DK/loan.lang diff --git a/htdocs/langs/da_DK/mailmanspip.lang b/public/langs/da_DK/mailmanspip.lang similarity index 100% rename from htdocs/langs/da_DK/mailmanspip.lang rename to public/langs/da_DK/mailmanspip.lang diff --git a/htdocs/langs/da_DK/mails.lang b/public/langs/da_DK/mails.lang similarity index 100% rename from htdocs/langs/da_DK/mails.lang rename to public/langs/da_DK/mails.lang diff --git a/htdocs/langs/da_DK/main.lang b/public/langs/da_DK/main.lang similarity index 100% rename from htdocs/langs/da_DK/main.lang rename to public/langs/da_DK/main.lang diff --git a/htdocs/langs/da_DK/margins.lang b/public/langs/da_DK/margins.lang similarity index 100% rename from htdocs/langs/da_DK/margins.lang rename to public/langs/da_DK/margins.lang diff --git a/htdocs/langs/da_DK/members.lang b/public/langs/da_DK/members.lang similarity index 100% rename from htdocs/langs/da_DK/members.lang rename to public/langs/da_DK/members.lang diff --git a/htdocs/langs/da_DK/oauth.lang b/public/langs/da_DK/oauth.lang similarity index 100% rename from htdocs/langs/da_DK/oauth.lang rename to public/langs/da_DK/oauth.lang diff --git a/htdocs/langs/da_DK/opensurvey.lang b/public/langs/da_DK/opensurvey.lang similarity index 100% rename from htdocs/langs/da_DK/opensurvey.lang rename to public/langs/da_DK/opensurvey.lang diff --git a/htdocs/langs/da_DK/orders.lang b/public/langs/da_DK/orders.lang similarity index 100% rename from htdocs/langs/da_DK/orders.lang rename to public/langs/da_DK/orders.lang diff --git a/htdocs/langs/da_DK/other.lang b/public/langs/da_DK/other.lang similarity index 100% rename from htdocs/langs/da_DK/other.lang rename to public/langs/da_DK/other.lang diff --git a/htdocs/langs/da_DK/paybox.lang b/public/langs/da_DK/paybox.lang similarity index 100% rename from htdocs/langs/da_DK/paybox.lang rename to public/langs/da_DK/paybox.lang diff --git a/htdocs/langs/da_DK/paypal.lang b/public/langs/da_DK/paypal.lang similarity index 100% rename from htdocs/langs/da_DK/paypal.lang rename to public/langs/da_DK/paypal.lang diff --git a/htdocs/langs/da_DK/printing.lang b/public/langs/da_DK/printing.lang similarity index 100% rename from htdocs/langs/da_DK/printing.lang rename to public/langs/da_DK/printing.lang diff --git a/htdocs/langs/da_DK/productbatch.lang b/public/langs/da_DK/productbatch.lang similarity index 100% rename from htdocs/langs/da_DK/productbatch.lang rename to public/langs/da_DK/productbatch.lang diff --git a/htdocs/langs/da_DK/products.lang b/public/langs/da_DK/products.lang similarity index 100% rename from htdocs/langs/da_DK/products.lang rename to public/langs/da_DK/products.lang diff --git a/htdocs/langs/da_DK/projects.lang b/public/langs/da_DK/projects.lang similarity index 100% rename from htdocs/langs/da_DK/projects.lang rename to public/langs/da_DK/projects.lang diff --git a/htdocs/langs/da_DK/propal.lang b/public/langs/da_DK/propal.lang similarity index 100% rename from htdocs/langs/da_DK/propal.lang rename to public/langs/da_DK/propal.lang diff --git a/htdocs/langs/da_DK/receiptprinter.lang b/public/langs/da_DK/receiptprinter.lang similarity index 100% rename from htdocs/langs/da_DK/receiptprinter.lang rename to public/langs/da_DK/receiptprinter.lang diff --git a/htdocs/langs/da_DK/resource.lang b/public/langs/da_DK/resource.lang similarity index 100% rename from htdocs/langs/da_DK/resource.lang rename to public/langs/da_DK/resource.lang diff --git a/htdocs/langs/da_DK/salaries.lang b/public/langs/da_DK/salaries.lang similarity index 100% rename from htdocs/langs/da_DK/salaries.lang rename to public/langs/da_DK/salaries.lang diff --git a/htdocs/langs/da_DK/sendings.lang b/public/langs/da_DK/sendings.lang similarity index 100% rename from htdocs/langs/da_DK/sendings.lang rename to public/langs/da_DK/sendings.lang diff --git a/htdocs/langs/da_DK/sms.lang b/public/langs/da_DK/sms.lang similarity index 100% rename from htdocs/langs/da_DK/sms.lang rename to public/langs/da_DK/sms.lang diff --git a/htdocs/langs/da_DK/stocks.lang b/public/langs/da_DK/stocks.lang similarity index 100% rename from htdocs/langs/da_DK/stocks.lang rename to public/langs/da_DK/stocks.lang diff --git a/htdocs/langs/da_DK/supplier_proposal.lang b/public/langs/da_DK/supplier_proposal.lang similarity index 100% rename from htdocs/langs/da_DK/supplier_proposal.lang rename to public/langs/da_DK/supplier_proposal.lang diff --git a/htdocs/langs/da_DK/suppliers.lang b/public/langs/da_DK/suppliers.lang similarity index 100% rename from htdocs/langs/da_DK/suppliers.lang rename to public/langs/da_DK/suppliers.lang diff --git a/htdocs/langs/da_DK/trips.lang b/public/langs/da_DK/trips.lang similarity index 100% rename from htdocs/langs/da_DK/trips.lang rename to public/langs/da_DK/trips.lang diff --git a/htdocs/langs/da_DK/users.lang b/public/langs/da_DK/users.lang similarity index 100% rename from htdocs/langs/da_DK/users.lang rename to public/langs/da_DK/users.lang diff --git a/htdocs/langs/da_DK/website.lang b/public/langs/da_DK/website.lang similarity index 100% rename from htdocs/langs/da_DK/website.lang rename to public/langs/da_DK/website.lang diff --git a/htdocs/langs/da_DK/withdrawals.lang b/public/langs/da_DK/withdrawals.lang similarity index 100% rename from htdocs/langs/da_DK/withdrawals.lang rename to public/langs/da_DK/withdrawals.lang diff --git a/htdocs/langs/da_DK/workflow.lang b/public/langs/da_DK/workflow.lang similarity index 100% rename from htdocs/langs/da_DK/workflow.lang rename to public/langs/da_DK/workflow.lang diff --git a/htdocs/langs/de_AT/accountancy.lang b/public/langs/de_AT/accountancy.lang similarity index 100% rename from htdocs/langs/de_AT/accountancy.lang rename to public/langs/de_AT/accountancy.lang diff --git a/htdocs/langs/de_AT/admin.lang b/public/langs/de_AT/admin.lang similarity index 100% rename from htdocs/langs/de_AT/admin.lang rename to public/langs/de_AT/admin.lang diff --git a/htdocs/langs/de_AT/agenda.lang b/public/langs/de_AT/agenda.lang similarity index 100% rename from htdocs/langs/de_AT/agenda.lang rename to public/langs/de_AT/agenda.lang diff --git a/htdocs/langs/de_AT/banks.lang b/public/langs/de_AT/banks.lang similarity index 100% rename from htdocs/langs/de_AT/banks.lang rename to public/langs/de_AT/banks.lang diff --git a/htdocs/langs/de_AT/bills.lang b/public/langs/de_AT/bills.lang similarity index 100% rename from htdocs/langs/de_AT/bills.lang rename to public/langs/de_AT/bills.lang diff --git a/htdocs/langs/de_AT/bookmarks.lang b/public/langs/de_AT/bookmarks.lang similarity index 100% rename from htdocs/langs/de_AT/bookmarks.lang rename to public/langs/de_AT/bookmarks.lang diff --git a/htdocs/langs/de_AT/boxes.lang b/public/langs/de_AT/boxes.lang similarity index 100% rename from htdocs/langs/de_AT/boxes.lang rename to public/langs/de_AT/boxes.lang diff --git a/htdocs/langs/de_AT/cashdesk.lang b/public/langs/de_AT/cashdesk.lang similarity index 100% rename from htdocs/langs/de_AT/cashdesk.lang rename to public/langs/de_AT/cashdesk.lang diff --git a/htdocs/langs/de_AT/categories.lang b/public/langs/de_AT/categories.lang similarity index 100% rename from htdocs/langs/de_AT/categories.lang rename to public/langs/de_AT/categories.lang diff --git a/htdocs/langs/de_AT/commercial.lang b/public/langs/de_AT/commercial.lang similarity index 100% rename from htdocs/langs/de_AT/commercial.lang rename to public/langs/de_AT/commercial.lang diff --git a/htdocs/langs/de_AT/companies.lang b/public/langs/de_AT/companies.lang similarity index 100% rename from htdocs/langs/de_AT/companies.lang rename to public/langs/de_AT/companies.lang diff --git a/htdocs/langs/de_AT/compta.lang b/public/langs/de_AT/compta.lang similarity index 100% rename from htdocs/langs/de_AT/compta.lang rename to public/langs/de_AT/compta.lang diff --git a/htdocs/langs/de_AT/contracts.lang b/public/langs/de_AT/contracts.lang similarity index 100% rename from htdocs/langs/de_AT/contracts.lang rename to public/langs/de_AT/contracts.lang diff --git a/htdocs/langs/de_AT/cron.lang b/public/langs/de_AT/cron.lang similarity index 100% rename from htdocs/langs/de_AT/cron.lang rename to public/langs/de_AT/cron.lang diff --git a/htdocs/langs/de_AT/deliveries.lang b/public/langs/de_AT/deliveries.lang similarity index 100% rename from htdocs/langs/de_AT/deliveries.lang rename to public/langs/de_AT/deliveries.lang diff --git a/htdocs/langs/de_AT/dict.lang b/public/langs/de_AT/dict.lang similarity index 100% rename from htdocs/langs/de_AT/dict.lang rename to public/langs/de_AT/dict.lang diff --git a/htdocs/langs/de_AT/donations.lang b/public/langs/de_AT/donations.lang similarity index 100% rename from htdocs/langs/de_AT/donations.lang rename to public/langs/de_AT/donations.lang diff --git a/htdocs/langs/de_AT/ecm.lang b/public/langs/de_AT/ecm.lang similarity index 100% rename from htdocs/langs/de_AT/ecm.lang rename to public/langs/de_AT/ecm.lang diff --git a/htdocs/langs/de_AT/errors.lang b/public/langs/de_AT/errors.lang similarity index 100% rename from htdocs/langs/de_AT/errors.lang rename to public/langs/de_AT/errors.lang diff --git a/htdocs/langs/de_AT/exports.lang b/public/langs/de_AT/exports.lang similarity index 100% rename from htdocs/langs/de_AT/exports.lang rename to public/langs/de_AT/exports.lang diff --git a/htdocs/langs/de_AT/externalsite.lang b/public/langs/de_AT/externalsite.lang similarity index 100% rename from htdocs/langs/de_AT/externalsite.lang rename to public/langs/de_AT/externalsite.lang diff --git a/htdocs/langs/de_AT/ftp.lang b/public/langs/de_AT/ftp.lang similarity index 100% rename from htdocs/langs/de_AT/ftp.lang rename to public/langs/de_AT/ftp.lang diff --git a/htdocs/langs/de_AT/help.lang b/public/langs/de_AT/help.lang similarity index 100% rename from htdocs/langs/de_AT/help.lang rename to public/langs/de_AT/help.lang diff --git a/htdocs/langs/de_AT/holiday.lang b/public/langs/de_AT/holiday.lang similarity index 100% rename from htdocs/langs/de_AT/holiday.lang rename to public/langs/de_AT/holiday.lang diff --git a/htdocs/langs/de_AT/hrm.lang b/public/langs/de_AT/hrm.lang similarity index 100% rename from htdocs/langs/de_AT/hrm.lang rename to public/langs/de_AT/hrm.lang diff --git a/htdocs/langs/de_AT/incoterm.lang b/public/langs/de_AT/incoterm.lang similarity index 100% rename from htdocs/langs/de_AT/incoterm.lang rename to public/langs/de_AT/incoterm.lang diff --git a/htdocs/langs/de_AT/install.lang b/public/langs/de_AT/install.lang similarity index 100% rename from htdocs/langs/de_AT/install.lang rename to public/langs/de_AT/install.lang diff --git a/htdocs/langs/de_AT/interventions.lang b/public/langs/de_AT/interventions.lang similarity index 100% rename from htdocs/langs/de_AT/interventions.lang rename to public/langs/de_AT/interventions.lang diff --git a/htdocs/langs/de_AT/languages.lang b/public/langs/de_AT/languages.lang similarity index 100% rename from htdocs/langs/de_AT/languages.lang rename to public/langs/de_AT/languages.lang diff --git a/htdocs/langs/de_AT/ldap.lang b/public/langs/de_AT/ldap.lang similarity index 100% rename from htdocs/langs/de_AT/ldap.lang rename to public/langs/de_AT/ldap.lang diff --git a/htdocs/langs/de_AT/link.lang b/public/langs/de_AT/link.lang similarity index 100% rename from htdocs/langs/de_AT/link.lang rename to public/langs/de_AT/link.lang diff --git a/htdocs/langs/de_AT/loan.lang b/public/langs/de_AT/loan.lang similarity index 100% rename from htdocs/langs/de_AT/loan.lang rename to public/langs/de_AT/loan.lang diff --git a/htdocs/langs/de_AT/mailmanspip.lang b/public/langs/de_AT/mailmanspip.lang similarity index 100% rename from htdocs/langs/de_AT/mailmanspip.lang rename to public/langs/de_AT/mailmanspip.lang diff --git a/htdocs/langs/de_AT/mails.lang b/public/langs/de_AT/mails.lang similarity index 100% rename from htdocs/langs/de_AT/mails.lang rename to public/langs/de_AT/mails.lang diff --git a/htdocs/langs/de_AT/main.lang b/public/langs/de_AT/main.lang similarity index 100% rename from htdocs/langs/de_AT/main.lang rename to public/langs/de_AT/main.lang diff --git a/htdocs/langs/de_AT/margins.lang b/public/langs/de_AT/margins.lang similarity index 100% rename from htdocs/langs/de_AT/margins.lang rename to public/langs/de_AT/margins.lang diff --git a/htdocs/langs/de_AT/members.lang b/public/langs/de_AT/members.lang similarity index 100% rename from htdocs/langs/de_AT/members.lang rename to public/langs/de_AT/members.lang diff --git a/htdocs/langs/de_AT/oauth.lang b/public/langs/de_AT/oauth.lang similarity index 100% rename from htdocs/langs/de_AT/oauth.lang rename to public/langs/de_AT/oauth.lang diff --git a/htdocs/langs/de_AT/opensurvey.lang b/public/langs/de_AT/opensurvey.lang similarity index 100% rename from htdocs/langs/de_AT/opensurvey.lang rename to public/langs/de_AT/opensurvey.lang diff --git a/htdocs/langs/de_AT/orders.lang b/public/langs/de_AT/orders.lang similarity index 100% rename from htdocs/langs/de_AT/orders.lang rename to public/langs/de_AT/orders.lang diff --git a/htdocs/langs/de_AT/other.lang b/public/langs/de_AT/other.lang similarity index 100% rename from htdocs/langs/de_AT/other.lang rename to public/langs/de_AT/other.lang diff --git a/htdocs/langs/de_AT/paybox.lang b/public/langs/de_AT/paybox.lang similarity index 100% rename from htdocs/langs/de_AT/paybox.lang rename to public/langs/de_AT/paybox.lang diff --git a/htdocs/langs/de_AT/paypal.lang b/public/langs/de_AT/paypal.lang similarity index 100% rename from htdocs/langs/de_AT/paypal.lang rename to public/langs/de_AT/paypal.lang diff --git a/htdocs/langs/de_AT/printing.lang b/public/langs/de_AT/printing.lang similarity index 100% rename from htdocs/langs/de_AT/printing.lang rename to public/langs/de_AT/printing.lang diff --git a/htdocs/langs/de_AT/productbatch.lang b/public/langs/de_AT/productbatch.lang similarity index 100% rename from htdocs/langs/de_AT/productbatch.lang rename to public/langs/de_AT/productbatch.lang diff --git a/htdocs/langs/de_AT/products.lang b/public/langs/de_AT/products.lang similarity index 100% rename from htdocs/langs/de_AT/products.lang rename to public/langs/de_AT/products.lang diff --git a/htdocs/langs/de_AT/projects.lang b/public/langs/de_AT/projects.lang similarity index 100% rename from htdocs/langs/de_AT/projects.lang rename to public/langs/de_AT/projects.lang diff --git a/htdocs/langs/de_AT/propal.lang b/public/langs/de_AT/propal.lang similarity index 100% rename from htdocs/langs/de_AT/propal.lang rename to public/langs/de_AT/propal.lang diff --git a/htdocs/langs/de_AT/receiptprinter.lang b/public/langs/de_AT/receiptprinter.lang similarity index 100% rename from htdocs/langs/de_AT/receiptprinter.lang rename to public/langs/de_AT/receiptprinter.lang diff --git a/htdocs/langs/de_AT/resource.lang b/public/langs/de_AT/resource.lang similarity index 100% rename from htdocs/langs/de_AT/resource.lang rename to public/langs/de_AT/resource.lang diff --git a/htdocs/langs/de_AT/salaries.lang b/public/langs/de_AT/salaries.lang similarity index 100% rename from htdocs/langs/de_AT/salaries.lang rename to public/langs/de_AT/salaries.lang diff --git a/htdocs/langs/de_AT/sendings.lang b/public/langs/de_AT/sendings.lang similarity index 100% rename from htdocs/langs/de_AT/sendings.lang rename to public/langs/de_AT/sendings.lang diff --git a/htdocs/langs/de_AT/sms.lang b/public/langs/de_AT/sms.lang similarity index 100% rename from htdocs/langs/de_AT/sms.lang rename to public/langs/de_AT/sms.lang diff --git a/htdocs/langs/de_AT/stocks.lang b/public/langs/de_AT/stocks.lang similarity index 100% rename from htdocs/langs/de_AT/stocks.lang rename to public/langs/de_AT/stocks.lang diff --git a/htdocs/langs/de_AT/supplier_proposal.lang b/public/langs/de_AT/supplier_proposal.lang similarity index 100% rename from htdocs/langs/de_AT/supplier_proposal.lang rename to public/langs/de_AT/supplier_proposal.lang diff --git a/htdocs/langs/de_AT/suppliers.lang b/public/langs/de_AT/suppliers.lang similarity index 100% rename from htdocs/langs/de_AT/suppliers.lang rename to public/langs/de_AT/suppliers.lang diff --git a/htdocs/langs/de_AT/trips.lang b/public/langs/de_AT/trips.lang similarity index 100% rename from htdocs/langs/de_AT/trips.lang rename to public/langs/de_AT/trips.lang diff --git a/htdocs/langs/de_AT/users.lang b/public/langs/de_AT/users.lang similarity index 100% rename from htdocs/langs/de_AT/users.lang rename to public/langs/de_AT/users.lang diff --git a/htdocs/langs/de_AT/website.lang b/public/langs/de_AT/website.lang similarity index 100% rename from htdocs/langs/de_AT/website.lang rename to public/langs/de_AT/website.lang diff --git a/htdocs/langs/de_AT/withdrawals.lang b/public/langs/de_AT/withdrawals.lang similarity index 100% rename from htdocs/langs/de_AT/withdrawals.lang rename to public/langs/de_AT/withdrawals.lang diff --git a/htdocs/langs/de_AT/workflow.lang b/public/langs/de_AT/workflow.lang similarity index 100% rename from htdocs/langs/de_AT/workflow.lang rename to public/langs/de_AT/workflow.lang diff --git a/htdocs/langs/de_CH/accountancy.lang b/public/langs/de_CH/accountancy.lang similarity index 100% rename from htdocs/langs/de_CH/accountancy.lang rename to public/langs/de_CH/accountancy.lang diff --git a/htdocs/langs/de_CH/admin.lang b/public/langs/de_CH/admin.lang similarity index 100% rename from htdocs/langs/de_CH/admin.lang rename to public/langs/de_CH/admin.lang diff --git a/htdocs/langs/de_CH/agenda.lang b/public/langs/de_CH/agenda.lang similarity index 100% rename from htdocs/langs/de_CH/agenda.lang rename to public/langs/de_CH/agenda.lang diff --git a/htdocs/langs/de_CH/banks.lang b/public/langs/de_CH/banks.lang similarity index 100% rename from htdocs/langs/de_CH/banks.lang rename to public/langs/de_CH/banks.lang diff --git a/htdocs/langs/de_CH/bills.lang b/public/langs/de_CH/bills.lang similarity index 100% rename from htdocs/langs/de_CH/bills.lang rename to public/langs/de_CH/bills.lang diff --git a/htdocs/langs/de_CH/bookmarks.lang b/public/langs/de_CH/bookmarks.lang similarity index 100% rename from htdocs/langs/de_CH/bookmarks.lang rename to public/langs/de_CH/bookmarks.lang diff --git a/htdocs/langs/de_CH/boxes.lang b/public/langs/de_CH/boxes.lang similarity index 100% rename from htdocs/langs/de_CH/boxes.lang rename to public/langs/de_CH/boxes.lang diff --git a/htdocs/langs/de_CH/cashdesk.lang b/public/langs/de_CH/cashdesk.lang similarity index 100% rename from htdocs/langs/de_CH/cashdesk.lang rename to public/langs/de_CH/cashdesk.lang diff --git a/htdocs/langs/de_CH/categories.lang b/public/langs/de_CH/categories.lang similarity index 100% rename from htdocs/langs/de_CH/categories.lang rename to public/langs/de_CH/categories.lang diff --git a/htdocs/langs/de_CH/commercial.lang b/public/langs/de_CH/commercial.lang similarity index 100% rename from htdocs/langs/de_CH/commercial.lang rename to public/langs/de_CH/commercial.lang diff --git a/htdocs/langs/de_CH/companies.lang b/public/langs/de_CH/companies.lang similarity index 100% rename from htdocs/langs/de_CH/companies.lang rename to public/langs/de_CH/companies.lang diff --git a/htdocs/langs/de_CH/compta.lang b/public/langs/de_CH/compta.lang similarity index 100% rename from htdocs/langs/de_CH/compta.lang rename to public/langs/de_CH/compta.lang diff --git a/htdocs/langs/de_CH/contracts.lang b/public/langs/de_CH/contracts.lang similarity index 100% rename from htdocs/langs/de_CH/contracts.lang rename to public/langs/de_CH/contracts.lang diff --git a/htdocs/langs/de_CH/cron.lang b/public/langs/de_CH/cron.lang similarity index 100% rename from htdocs/langs/de_CH/cron.lang rename to public/langs/de_CH/cron.lang diff --git a/htdocs/langs/de_CH/deliveries.lang b/public/langs/de_CH/deliveries.lang similarity index 100% rename from htdocs/langs/de_CH/deliveries.lang rename to public/langs/de_CH/deliveries.lang diff --git a/htdocs/langs/de_CH/dict.lang b/public/langs/de_CH/dict.lang similarity index 100% rename from htdocs/langs/de_CH/dict.lang rename to public/langs/de_CH/dict.lang diff --git a/htdocs/langs/de_CH/donations.lang b/public/langs/de_CH/donations.lang similarity index 100% rename from htdocs/langs/de_CH/donations.lang rename to public/langs/de_CH/donations.lang diff --git a/htdocs/langs/de_CH/ecm.lang b/public/langs/de_CH/ecm.lang similarity index 100% rename from htdocs/langs/de_CH/ecm.lang rename to public/langs/de_CH/ecm.lang diff --git a/htdocs/langs/de_CH/errors.lang b/public/langs/de_CH/errors.lang similarity index 100% rename from htdocs/langs/de_CH/errors.lang rename to public/langs/de_CH/errors.lang diff --git a/htdocs/langs/de_CH/exports.lang b/public/langs/de_CH/exports.lang similarity index 100% rename from htdocs/langs/de_CH/exports.lang rename to public/langs/de_CH/exports.lang diff --git a/htdocs/langs/de_CH/externalsite.lang b/public/langs/de_CH/externalsite.lang similarity index 100% rename from htdocs/langs/de_CH/externalsite.lang rename to public/langs/de_CH/externalsite.lang diff --git a/htdocs/langs/de_CH/ftp.lang b/public/langs/de_CH/ftp.lang similarity index 100% rename from htdocs/langs/de_CH/ftp.lang rename to public/langs/de_CH/ftp.lang diff --git a/htdocs/langs/de_CH/help.lang b/public/langs/de_CH/help.lang similarity index 100% rename from htdocs/langs/de_CH/help.lang rename to public/langs/de_CH/help.lang diff --git a/htdocs/langs/de_CH/holiday.lang b/public/langs/de_CH/holiday.lang similarity index 100% rename from htdocs/langs/de_CH/holiday.lang rename to public/langs/de_CH/holiday.lang diff --git a/htdocs/langs/de_CH/hrm.lang b/public/langs/de_CH/hrm.lang similarity index 100% rename from htdocs/langs/de_CH/hrm.lang rename to public/langs/de_CH/hrm.lang diff --git a/htdocs/langs/de_CH/incoterm.lang b/public/langs/de_CH/incoterm.lang similarity index 100% rename from htdocs/langs/de_CH/incoterm.lang rename to public/langs/de_CH/incoterm.lang diff --git a/htdocs/langs/de_CH/install.lang b/public/langs/de_CH/install.lang similarity index 100% rename from htdocs/langs/de_CH/install.lang rename to public/langs/de_CH/install.lang diff --git a/htdocs/langs/de_CH/interventions.lang b/public/langs/de_CH/interventions.lang similarity index 100% rename from htdocs/langs/de_CH/interventions.lang rename to public/langs/de_CH/interventions.lang diff --git a/htdocs/langs/de_CH/languages.lang b/public/langs/de_CH/languages.lang similarity index 100% rename from htdocs/langs/de_CH/languages.lang rename to public/langs/de_CH/languages.lang diff --git a/htdocs/langs/de_CH/ldap.lang b/public/langs/de_CH/ldap.lang similarity index 100% rename from htdocs/langs/de_CH/ldap.lang rename to public/langs/de_CH/ldap.lang diff --git a/htdocs/langs/de_CH/link.lang b/public/langs/de_CH/link.lang similarity index 100% rename from htdocs/langs/de_CH/link.lang rename to public/langs/de_CH/link.lang diff --git a/htdocs/langs/de_CH/loan.lang b/public/langs/de_CH/loan.lang similarity index 100% rename from htdocs/langs/de_CH/loan.lang rename to public/langs/de_CH/loan.lang diff --git a/htdocs/langs/de_CH/mailmanspip.lang b/public/langs/de_CH/mailmanspip.lang similarity index 100% rename from htdocs/langs/de_CH/mailmanspip.lang rename to public/langs/de_CH/mailmanspip.lang diff --git a/htdocs/langs/de_CH/mails.lang b/public/langs/de_CH/mails.lang similarity index 100% rename from htdocs/langs/de_CH/mails.lang rename to public/langs/de_CH/mails.lang diff --git a/htdocs/langs/de_CH/main.lang b/public/langs/de_CH/main.lang similarity index 100% rename from htdocs/langs/de_CH/main.lang rename to public/langs/de_CH/main.lang diff --git a/htdocs/langs/de_CH/margins.lang b/public/langs/de_CH/margins.lang similarity index 100% rename from htdocs/langs/de_CH/margins.lang rename to public/langs/de_CH/margins.lang diff --git a/htdocs/langs/de_CH/members.lang b/public/langs/de_CH/members.lang similarity index 100% rename from htdocs/langs/de_CH/members.lang rename to public/langs/de_CH/members.lang diff --git a/htdocs/langs/de_CH/oauth.lang b/public/langs/de_CH/oauth.lang similarity index 100% rename from htdocs/langs/de_CH/oauth.lang rename to public/langs/de_CH/oauth.lang diff --git a/htdocs/langs/de_CH/opensurvey.lang b/public/langs/de_CH/opensurvey.lang similarity index 100% rename from htdocs/langs/de_CH/opensurvey.lang rename to public/langs/de_CH/opensurvey.lang diff --git a/htdocs/langs/de_CH/orders.lang b/public/langs/de_CH/orders.lang similarity index 100% rename from htdocs/langs/de_CH/orders.lang rename to public/langs/de_CH/orders.lang diff --git a/htdocs/langs/de_CH/other.lang b/public/langs/de_CH/other.lang similarity index 100% rename from htdocs/langs/de_CH/other.lang rename to public/langs/de_CH/other.lang diff --git a/htdocs/langs/de_CH/paybox.lang b/public/langs/de_CH/paybox.lang similarity index 100% rename from htdocs/langs/de_CH/paybox.lang rename to public/langs/de_CH/paybox.lang diff --git a/htdocs/langs/de_CH/paypal.lang b/public/langs/de_CH/paypal.lang similarity index 100% rename from htdocs/langs/de_CH/paypal.lang rename to public/langs/de_CH/paypal.lang diff --git a/htdocs/langs/de_CH/printing.lang b/public/langs/de_CH/printing.lang similarity index 100% rename from htdocs/langs/de_CH/printing.lang rename to public/langs/de_CH/printing.lang diff --git a/htdocs/langs/de_CH/productbatch.lang b/public/langs/de_CH/productbatch.lang similarity index 100% rename from htdocs/langs/de_CH/productbatch.lang rename to public/langs/de_CH/productbatch.lang diff --git a/htdocs/langs/de_CH/products.lang b/public/langs/de_CH/products.lang similarity index 100% rename from htdocs/langs/de_CH/products.lang rename to public/langs/de_CH/products.lang diff --git a/htdocs/langs/de_CH/projects.lang b/public/langs/de_CH/projects.lang similarity index 100% rename from htdocs/langs/de_CH/projects.lang rename to public/langs/de_CH/projects.lang diff --git a/htdocs/langs/de_CH/propal.lang b/public/langs/de_CH/propal.lang similarity index 100% rename from htdocs/langs/de_CH/propal.lang rename to public/langs/de_CH/propal.lang diff --git a/htdocs/langs/de_CH/receiptprinter.lang b/public/langs/de_CH/receiptprinter.lang similarity index 100% rename from htdocs/langs/de_CH/receiptprinter.lang rename to public/langs/de_CH/receiptprinter.lang diff --git a/htdocs/langs/de_CH/resource.lang b/public/langs/de_CH/resource.lang similarity index 100% rename from htdocs/langs/de_CH/resource.lang rename to public/langs/de_CH/resource.lang diff --git a/htdocs/langs/de_CH/salaries.lang b/public/langs/de_CH/salaries.lang similarity index 100% rename from htdocs/langs/de_CH/salaries.lang rename to public/langs/de_CH/salaries.lang diff --git a/htdocs/langs/de_CH/sendings.lang b/public/langs/de_CH/sendings.lang similarity index 100% rename from htdocs/langs/de_CH/sendings.lang rename to public/langs/de_CH/sendings.lang diff --git a/htdocs/langs/de_CH/sms.lang b/public/langs/de_CH/sms.lang similarity index 100% rename from htdocs/langs/de_CH/sms.lang rename to public/langs/de_CH/sms.lang diff --git a/htdocs/langs/de_CH/stocks.lang b/public/langs/de_CH/stocks.lang similarity index 100% rename from htdocs/langs/de_CH/stocks.lang rename to public/langs/de_CH/stocks.lang diff --git a/htdocs/langs/de_CH/supplier_proposal.lang b/public/langs/de_CH/supplier_proposal.lang similarity index 100% rename from htdocs/langs/de_CH/supplier_proposal.lang rename to public/langs/de_CH/supplier_proposal.lang diff --git a/htdocs/langs/de_CH/suppliers.lang b/public/langs/de_CH/suppliers.lang similarity index 100% rename from htdocs/langs/de_CH/suppliers.lang rename to public/langs/de_CH/suppliers.lang diff --git a/htdocs/langs/de_CH/trips.lang b/public/langs/de_CH/trips.lang similarity index 100% rename from htdocs/langs/de_CH/trips.lang rename to public/langs/de_CH/trips.lang diff --git a/htdocs/langs/de_CH/users.lang b/public/langs/de_CH/users.lang similarity index 100% rename from htdocs/langs/de_CH/users.lang rename to public/langs/de_CH/users.lang diff --git a/htdocs/langs/de_CH/website.lang b/public/langs/de_CH/website.lang similarity index 100% rename from htdocs/langs/de_CH/website.lang rename to public/langs/de_CH/website.lang diff --git a/htdocs/langs/de_CH/withdrawals.lang b/public/langs/de_CH/withdrawals.lang similarity index 100% rename from htdocs/langs/de_CH/withdrawals.lang rename to public/langs/de_CH/withdrawals.lang diff --git a/htdocs/langs/de_CH/workflow.lang b/public/langs/de_CH/workflow.lang similarity index 100% rename from htdocs/langs/de_CH/workflow.lang rename to public/langs/de_CH/workflow.lang diff --git a/htdocs/langs/de_DE/accountancy.lang b/public/langs/de_DE/accountancy.lang similarity index 100% rename from htdocs/langs/de_DE/accountancy.lang rename to public/langs/de_DE/accountancy.lang diff --git a/htdocs/langs/de_DE/admin.lang b/public/langs/de_DE/admin.lang similarity index 100% rename from htdocs/langs/de_DE/admin.lang rename to public/langs/de_DE/admin.lang diff --git a/htdocs/langs/de_DE/agenda.lang b/public/langs/de_DE/agenda.lang similarity index 100% rename from htdocs/langs/de_DE/agenda.lang rename to public/langs/de_DE/agenda.lang diff --git a/htdocs/langs/de_DE/banks.lang b/public/langs/de_DE/banks.lang similarity index 100% rename from htdocs/langs/de_DE/banks.lang rename to public/langs/de_DE/banks.lang diff --git a/htdocs/langs/de_DE/bills.lang b/public/langs/de_DE/bills.lang similarity index 100% rename from htdocs/langs/de_DE/bills.lang rename to public/langs/de_DE/bills.lang diff --git a/htdocs/langs/de_DE/bookmarks.lang b/public/langs/de_DE/bookmarks.lang similarity index 100% rename from htdocs/langs/de_DE/bookmarks.lang rename to public/langs/de_DE/bookmarks.lang diff --git a/htdocs/langs/de_DE/boxes.lang b/public/langs/de_DE/boxes.lang similarity index 100% rename from htdocs/langs/de_DE/boxes.lang rename to public/langs/de_DE/boxes.lang diff --git a/htdocs/langs/de_DE/cashdesk.lang b/public/langs/de_DE/cashdesk.lang similarity index 100% rename from htdocs/langs/de_DE/cashdesk.lang rename to public/langs/de_DE/cashdesk.lang diff --git a/htdocs/langs/de_DE/categories.lang b/public/langs/de_DE/categories.lang similarity index 100% rename from htdocs/langs/de_DE/categories.lang rename to public/langs/de_DE/categories.lang diff --git a/htdocs/langs/de_DE/commercial.lang b/public/langs/de_DE/commercial.lang similarity index 100% rename from htdocs/langs/de_DE/commercial.lang rename to public/langs/de_DE/commercial.lang diff --git a/htdocs/langs/de_DE/companies.lang b/public/langs/de_DE/companies.lang similarity index 100% rename from htdocs/langs/de_DE/companies.lang rename to public/langs/de_DE/companies.lang diff --git a/htdocs/langs/de_DE/compta.lang b/public/langs/de_DE/compta.lang similarity index 100% rename from htdocs/langs/de_DE/compta.lang rename to public/langs/de_DE/compta.lang diff --git a/htdocs/langs/de_DE/contracts.lang b/public/langs/de_DE/contracts.lang similarity index 100% rename from htdocs/langs/de_DE/contracts.lang rename to public/langs/de_DE/contracts.lang diff --git a/htdocs/langs/de_DE/cron.lang b/public/langs/de_DE/cron.lang similarity index 100% rename from htdocs/langs/de_DE/cron.lang rename to public/langs/de_DE/cron.lang diff --git a/htdocs/langs/de_DE/deliveries.lang b/public/langs/de_DE/deliveries.lang similarity index 100% rename from htdocs/langs/de_DE/deliveries.lang rename to public/langs/de_DE/deliveries.lang diff --git a/htdocs/langs/de_DE/dict.lang b/public/langs/de_DE/dict.lang similarity index 100% rename from htdocs/langs/de_DE/dict.lang rename to public/langs/de_DE/dict.lang diff --git a/htdocs/langs/de_DE/donations.lang b/public/langs/de_DE/donations.lang similarity index 100% rename from htdocs/langs/de_DE/donations.lang rename to public/langs/de_DE/donations.lang diff --git a/htdocs/langs/de_DE/ecm.lang b/public/langs/de_DE/ecm.lang similarity index 100% rename from htdocs/langs/de_DE/ecm.lang rename to public/langs/de_DE/ecm.lang diff --git a/htdocs/langs/de_DE/errors.lang b/public/langs/de_DE/errors.lang similarity index 100% rename from htdocs/langs/de_DE/errors.lang rename to public/langs/de_DE/errors.lang diff --git a/htdocs/langs/de_DE/exports.lang b/public/langs/de_DE/exports.lang similarity index 100% rename from htdocs/langs/de_DE/exports.lang rename to public/langs/de_DE/exports.lang diff --git a/htdocs/langs/de_DE/externalsite.lang b/public/langs/de_DE/externalsite.lang similarity index 100% rename from htdocs/langs/de_DE/externalsite.lang rename to public/langs/de_DE/externalsite.lang diff --git a/htdocs/langs/de_DE/ftp.lang b/public/langs/de_DE/ftp.lang similarity index 100% rename from htdocs/langs/de_DE/ftp.lang rename to public/langs/de_DE/ftp.lang diff --git a/htdocs/langs/de_DE/help.lang b/public/langs/de_DE/help.lang similarity index 100% rename from htdocs/langs/de_DE/help.lang rename to public/langs/de_DE/help.lang diff --git a/htdocs/langs/de_DE/holiday.lang b/public/langs/de_DE/holiday.lang similarity index 100% rename from htdocs/langs/de_DE/holiday.lang rename to public/langs/de_DE/holiday.lang diff --git a/htdocs/langs/de_DE/hrm.lang b/public/langs/de_DE/hrm.lang similarity index 100% rename from htdocs/langs/de_DE/hrm.lang rename to public/langs/de_DE/hrm.lang diff --git a/htdocs/langs/de_DE/incoterm.lang b/public/langs/de_DE/incoterm.lang similarity index 100% rename from htdocs/langs/de_DE/incoterm.lang rename to public/langs/de_DE/incoterm.lang diff --git a/htdocs/langs/de_DE/install.lang b/public/langs/de_DE/install.lang similarity index 100% rename from htdocs/langs/de_DE/install.lang rename to public/langs/de_DE/install.lang diff --git a/htdocs/langs/de_DE/interventions.lang b/public/langs/de_DE/interventions.lang similarity index 100% rename from htdocs/langs/de_DE/interventions.lang rename to public/langs/de_DE/interventions.lang diff --git a/htdocs/langs/de_DE/languages.lang b/public/langs/de_DE/languages.lang similarity index 100% rename from htdocs/langs/de_DE/languages.lang rename to public/langs/de_DE/languages.lang diff --git a/htdocs/langs/de_DE/ldap.lang b/public/langs/de_DE/ldap.lang similarity index 100% rename from htdocs/langs/de_DE/ldap.lang rename to public/langs/de_DE/ldap.lang diff --git a/htdocs/langs/de_DE/link.lang b/public/langs/de_DE/link.lang similarity index 100% rename from htdocs/langs/de_DE/link.lang rename to public/langs/de_DE/link.lang diff --git a/htdocs/langs/de_DE/loan.lang b/public/langs/de_DE/loan.lang similarity index 100% rename from htdocs/langs/de_DE/loan.lang rename to public/langs/de_DE/loan.lang diff --git a/htdocs/langs/de_DE/mailmanspip.lang b/public/langs/de_DE/mailmanspip.lang similarity index 100% rename from htdocs/langs/de_DE/mailmanspip.lang rename to public/langs/de_DE/mailmanspip.lang diff --git a/htdocs/langs/de_DE/mails.lang b/public/langs/de_DE/mails.lang similarity index 100% rename from htdocs/langs/de_DE/mails.lang rename to public/langs/de_DE/mails.lang diff --git a/htdocs/langs/de_DE/main.lang b/public/langs/de_DE/main.lang similarity index 100% rename from htdocs/langs/de_DE/main.lang rename to public/langs/de_DE/main.lang diff --git a/htdocs/langs/de_DE/margins.lang b/public/langs/de_DE/margins.lang similarity index 100% rename from htdocs/langs/de_DE/margins.lang rename to public/langs/de_DE/margins.lang diff --git a/htdocs/langs/de_DE/members.lang b/public/langs/de_DE/members.lang similarity index 100% rename from htdocs/langs/de_DE/members.lang rename to public/langs/de_DE/members.lang diff --git a/htdocs/langs/de_DE/oauth.lang b/public/langs/de_DE/oauth.lang similarity index 100% rename from htdocs/langs/de_DE/oauth.lang rename to public/langs/de_DE/oauth.lang diff --git a/htdocs/langs/de_DE/opensurvey.lang b/public/langs/de_DE/opensurvey.lang similarity index 100% rename from htdocs/langs/de_DE/opensurvey.lang rename to public/langs/de_DE/opensurvey.lang diff --git a/htdocs/langs/de_DE/orders.lang b/public/langs/de_DE/orders.lang similarity index 100% rename from htdocs/langs/de_DE/orders.lang rename to public/langs/de_DE/orders.lang diff --git a/htdocs/langs/de_DE/other.lang b/public/langs/de_DE/other.lang similarity index 100% rename from htdocs/langs/de_DE/other.lang rename to public/langs/de_DE/other.lang diff --git a/htdocs/langs/de_DE/paybox.lang b/public/langs/de_DE/paybox.lang similarity index 100% rename from htdocs/langs/de_DE/paybox.lang rename to public/langs/de_DE/paybox.lang diff --git a/htdocs/langs/de_DE/paypal.lang b/public/langs/de_DE/paypal.lang similarity index 100% rename from htdocs/langs/de_DE/paypal.lang rename to public/langs/de_DE/paypal.lang diff --git a/htdocs/langs/de_DE/printing.lang b/public/langs/de_DE/printing.lang similarity index 100% rename from htdocs/langs/de_DE/printing.lang rename to public/langs/de_DE/printing.lang diff --git a/htdocs/langs/de_DE/productbatch.lang b/public/langs/de_DE/productbatch.lang similarity index 100% rename from htdocs/langs/de_DE/productbatch.lang rename to public/langs/de_DE/productbatch.lang diff --git a/htdocs/langs/de_DE/products.lang b/public/langs/de_DE/products.lang similarity index 100% rename from htdocs/langs/de_DE/products.lang rename to public/langs/de_DE/products.lang diff --git a/htdocs/langs/de_DE/projects.lang b/public/langs/de_DE/projects.lang similarity index 100% rename from htdocs/langs/de_DE/projects.lang rename to public/langs/de_DE/projects.lang diff --git a/htdocs/langs/de_DE/propal.lang b/public/langs/de_DE/propal.lang similarity index 100% rename from htdocs/langs/de_DE/propal.lang rename to public/langs/de_DE/propal.lang diff --git a/htdocs/langs/de_DE/receiptprinter.lang b/public/langs/de_DE/receiptprinter.lang similarity index 100% rename from htdocs/langs/de_DE/receiptprinter.lang rename to public/langs/de_DE/receiptprinter.lang diff --git a/htdocs/langs/de_DE/resource.lang b/public/langs/de_DE/resource.lang similarity index 100% rename from htdocs/langs/de_DE/resource.lang rename to public/langs/de_DE/resource.lang diff --git a/htdocs/langs/de_DE/salaries.lang b/public/langs/de_DE/salaries.lang similarity index 100% rename from htdocs/langs/de_DE/salaries.lang rename to public/langs/de_DE/salaries.lang diff --git a/htdocs/langs/de_DE/sendings.lang b/public/langs/de_DE/sendings.lang similarity index 100% rename from htdocs/langs/de_DE/sendings.lang rename to public/langs/de_DE/sendings.lang diff --git a/htdocs/langs/de_DE/sms.lang b/public/langs/de_DE/sms.lang similarity index 100% rename from htdocs/langs/de_DE/sms.lang rename to public/langs/de_DE/sms.lang diff --git a/htdocs/langs/de_DE/stocks.lang b/public/langs/de_DE/stocks.lang similarity index 100% rename from htdocs/langs/de_DE/stocks.lang rename to public/langs/de_DE/stocks.lang diff --git a/htdocs/langs/de_DE/supplier_proposal.lang b/public/langs/de_DE/supplier_proposal.lang similarity index 100% rename from htdocs/langs/de_DE/supplier_proposal.lang rename to public/langs/de_DE/supplier_proposal.lang diff --git a/htdocs/langs/de_DE/suppliers.lang b/public/langs/de_DE/suppliers.lang similarity index 100% rename from htdocs/langs/de_DE/suppliers.lang rename to public/langs/de_DE/suppliers.lang diff --git a/htdocs/langs/de_DE/trips.lang b/public/langs/de_DE/trips.lang similarity index 100% rename from htdocs/langs/de_DE/trips.lang rename to public/langs/de_DE/trips.lang diff --git a/htdocs/langs/de_DE/users.lang b/public/langs/de_DE/users.lang similarity index 100% rename from htdocs/langs/de_DE/users.lang rename to public/langs/de_DE/users.lang diff --git a/htdocs/langs/de_DE/website.lang b/public/langs/de_DE/website.lang similarity index 100% rename from htdocs/langs/de_DE/website.lang rename to public/langs/de_DE/website.lang diff --git a/htdocs/langs/de_DE/withdrawals.lang b/public/langs/de_DE/withdrawals.lang similarity index 100% rename from htdocs/langs/de_DE/withdrawals.lang rename to public/langs/de_DE/withdrawals.lang diff --git a/htdocs/langs/de_DE/workflow.lang b/public/langs/de_DE/workflow.lang similarity index 100% rename from htdocs/langs/de_DE/workflow.lang rename to public/langs/de_DE/workflow.lang diff --git a/htdocs/langs/el_GR/accountancy.lang b/public/langs/el_GR/accountancy.lang similarity index 100% rename from htdocs/langs/el_GR/accountancy.lang rename to public/langs/el_GR/accountancy.lang diff --git a/htdocs/langs/el_GR/admin.lang b/public/langs/el_GR/admin.lang similarity index 100% rename from htdocs/langs/el_GR/admin.lang rename to public/langs/el_GR/admin.lang diff --git a/htdocs/langs/el_GR/agenda.lang b/public/langs/el_GR/agenda.lang similarity index 100% rename from htdocs/langs/el_GR/agenda.lang rename to public/langs/el_GR/agenda.lang diff --git a/htdocs/langs/el_GR/banks.lang b/public/langs/el_GR/banks.lang similarity index 100% rename from htdocs/langs/el_GR/banks.lang rename to public/langs/el_GR/banks.lang diff --git a/htdocs/langs/el_GR/bills.lang b/public/langs/el_GR/bills.lang similarity index 100% rename from htdocs/langs/el_GR/bills.lang rename to public/langs/el_GR/bills.lang diff --git a/htdocs/langs/el_GR/bookmarks.lang b/public/langs/el_GR/bookmarks.lang similarity index 100% rename from htdocs/langs/el_GR/bookmarks.lang rename to public/langs/el_GR/bookmarks.lang diff --git a/htdocs/langs/el_GR/boxes.lang b/public/langs/el_GR/boxes.lang similarity index 100% rename from htdocs/langs/el_GR/boxes.lang rename to public/langs/el_GR/boxes.lang diff --git a/htdocs/langs/el_GR/cashdesk.lang b/public/langs/el_GR/cashdesk.lang similarity index 100% rename from htdocs/langs/el_GR/cashdesk.lang rename to public/langs/el_GR/cashdesk.lang diff --git a/htdocs/langs/el_GR/categories.lang b/public/langs/el_GR/categories.lang similarity index 100% rename from htdocs/langs/el_GR/categories.lang rename to public/langs/el_GR/categories.lang diff --git a/htdocs/langs/el_GR/commercial.lang b/public/langs/el_GR/commercial.lang similarity index 100% rename from htdocs/langs/el_GR/commercial.lang rename to public/langs/el_GR/commercial.lang diff --git a/htdocs/langs/el_GR/commissions.lang b/public/langs/el_GR/commissions.lang similarity index 100% rename from htdocs/langs/el_GR/commissions.lang rename to public/langs/el_GR/commissions.lang diff --git a/htdocs/langs/el_GR/companies.lang b/public/langs/el_GR/companies.lang similarity index 100% rename from htdocs/langs/el_GR/companies.lang rename to public/langs/el_GR/companies.lang diff --git a/htdocs/langs/el_GR/compta.lang b/public/langs/el_GR/compta.lang similarity index 100% rename from htdocs/langs/el_GR/compta.lang rename to public/langs/el_GR/compta.lang diff --git a/htdocs/langs/el_GR/contracts.lang b/public/langs/el_GR/contracts.lang similarity index 100% rename from htdocs/langs/el_GR/contracts.lang rename to public/langs/el_GR/contracts.lang diff --git a/htdocs/langs/el_GR/cron.lang b/public/langs/el_GR/cron.lang similarity index 100% rename from htdocs/langs/el_GR/cron.lang rename to public/langs/el_GR/cron.lang diff --git a/htdocs/langs/el_GR/deliveries.lang b/public/langs/el_GR/deliveries.lang similarity index 100% rename from htdocs/langs/el_GR/deliveries.lang rename to public/langs/el_GR/deliveries.lang diff --git a/htdocs/langs/el_GR/dict.lang b/public/langs/el_GR/dict.lang similarity index 100% rename from htdocs/langs/el_GR/dict.lang rename to public/langs/el_GR/dict.lang diff --git a/htdocs/langs/el_GR/donations.lang b/public/langs/el_GR/donations.lang similarity index 100% rename from htdocs/langs/el_GR/donations.lang rename to public/langs/el_GR/donations.lang diff --git a/htdocs/langs/el_GR/ecm.lang b/public/langs/el_GR/ecm.lang similarity index 100% rename from htdocs/langs/el_GR/ecm.lang rename to public/langs/el_GR/ecm.lang diff --git a/htdocs/langs/el_GR/errors.lang b/public/langs/el_GR/errors.lang similarity index 100% rename from htdocs/langs/el_GR/errors.lang rename to public/langs/el_GR/errors.lang diff --git a/htdocs/langs/el_GR/exports.lang b/public/langs/el_GR/exports.lang similarity index 100% rename from htdocs/langs/el_GR/exports.lang rename to public/langs/el_GR/exports.lang diff --git a/htdocs/langs/el_GR/externalsite.lang b/public/langs/el_GR/externalsite.lang similarity index 100% rename from htdocs/langs/el_GR/externalsite.lang rename to public/langs/el_GR/externalsite.lang diff --git a/htdocs/langs/el_GR/ftp.lang b/public/langs/el_GR/ftp.lang similarity index 100% rename from htdocs/langs/el_GR/ftp.lang rename to public/langs/el_GR/ftp.lang diff --git a/htdocs/langs/el_GR/help.lang b/public/langs/el_GR/help.lang similarity index 100% rename from htdocs/langs/el_GR/help.lang rename to public/langs/el_GR/help.lang diff --git a/htdocs/langs/el_GR/holiday.lang b/public/langs/el_GR/holiday.lang similarity index 100% rename from htdocs/langs/el_GR/holiday.lang rename to public/langs/el_GR/holiday.lang diff --git a/htdocs/langs/el_GR/hrm.lang b/public/langs/el_GR/hrm.lang similarity index 100% rename from htdocs/langs/el_GR/hrm.lang rename to public/langs/el_GR/hrm.lang diff --git a/htdocs/langs/el_GR/incoterm.lang b/public/langs/el_GR/incoterm.lang similarity index 100% rename from htdocs/langs/el_GR/incoterm.lang rename to public/langs/el_GR/incoterm.lang diff --git a/htdocs/langs/el_GR/install.lang b/public/langs/el_GR/install.lang similarity index 100% rename from htdocs/langs/el_GR/install.lang rename to public/langs/el_GR/install.lang diff --git a/htdocs/langs/el_GR/interventions.lang b/public/langs/el_GR/interventions.lang similarity index 100% rename from htdocs/langs/el_GR/interventions.lang rename to public/langs/el_GR/interventions.lang diff --git a/htdocs/langs/el_GR/languages.lang b/public/langs/el_GR/languages.lang similarity index 100% rename from htdocs/langs/el_GR/languages.lang rename to public/langs/el_GR/languages.lang diff --git a/htdocs/langs/el_GR/ldap.lang b/public/langs/el_GR/ldap.lang similarity index 100% rename from htdocs/langs/el_GR/ldap.lang rename to public/langs/el_GR/ldap.lang diff --git a/htdocs/langs/el_GR/link.lang b/public/langs/el_GR/link.lang similarity index 100% rename from htdocs/langs/el_GR/link.lang rename to public/langs/el_GR/link.lang diff --git a/htdocs/langs/el_GR/loan.lang b/public/langs/el_GR/loan.lang similarity index 100% rename from htdocs/langs/el_GR/loan.lang rename to public/langs/el_GR/loan.lang diff --git a/htdocs/langs/el_GR/mailmanspip.lang b/public/langs/el_GR/mailmanspip.lang similarity index 100% rename from htdocs/langs/el_GR/mailmanspip.lang rename to public/langs/el_GR/mailmanspip.lang diff --git a/htdocs/langs/el_GR/mails.lang b/public/langs/el_GR/mails.lang similarity index 100% rename from htdocs/langs/el_GR/mails.lang rename to public/langs/el_GR/mails.lang diff --git a/htdocs/langs/el_GR/main.lang b/public/langs/el_GR/main.lang similarity index 100% rename from htdocs/langs/el_GR/main.lang rename to public/langs/el_GR/main.lang diff --git a/htdocs/langs/el_GR/margins.lang b/public/langs/el_GR/margins.lang similarity index 100% rename from htdocs/langs/el_GR/margins.lang rename to public/langs/el_GR/margins.lang diff --git a/htdocs/langs/el_GR/members.lang b/public/langs/el_GR/members.lang similarity index 100% rename from htdocs/langs/el_GR/members.lang rename to public/langs/el_GR/members.lang diff --git a/htdocs/langs/el_GR/oauth.lang b/public/langs/el_GR/oauth.lang similarity index 100% rename from htdocs/langs/el_GR/oauth.lang rename to public/langs/el_GR/oauth.lang diff --git a/htdocs/langs/el_GR/opensurvey.lang b/public/langs/el_GR/opensurvey.lang similarity index 100% rename from htdocs/langs/el_GR/opensurvey.lang rename to public/langs/el_GR/opensurvey.lang diff --git a/htdocs/langs/el_GR/orders.lang b/public/langs/el_GR/orders.lang similarity index 100% rename from htdocs/langs/el_GR/orders.lang rename to public/langs/el_GR/orders.lang diff --git a/htdocs/langs/el_GR/other.lang b/public/langs/el_GR/other.lang similarity index 100% rename from htdocs/langs/el_GR/other.lang rename to public/langs/el_GR/other.lang diff --git a/htdocs/langs/el_GR/paybox.lang b/public/langs/el_GR/paybox.lang similarity index 100% rename from htdocs/langs/el_GR/paybox.lang rename to public/langs/el_GR/paybox.lang diff --git a/htdocs/langs/el_GR/paypal.lang b/public/langs/el_GR/paypal.lang similarity index 100% rename from htdocs/langs/el_GR/paypal.lang rename to public/langs/el_GR/paypal.lang diff --git a/htdocs/langs/el_GR/printing.lang b/public/langs/el_GR/printing.lang similarity index 100% rename from htdocs/langs/el_GR/printing.lang rename to public/langs/el_GR/printing.lang diff --git a/htdocs/langs/el_GR/productbatch.lang b/public/langs/el_GR/productbatch.lang similarity index 100% rename from htdocs/langs/el_GR/productbatch.lang rename to public/langs/el_GR/productbatch.lang diff --git a/htdocs/langs/el_GR/products.lang b/public/langs/el_GR/products.lang similarity index 100% rename from htdocs/langs/el_GR/products.lang rename to public/langs/el_GR/products.lang diff --git a/htdocs/langs/el_GR/projects.lang b/public/langs/el_GR/projects.lang similarity index 100% rename from htdocs/langs/el_GR/projects.lang rename to public/langs/el_GR/projects.lang diff --git a/htdocs/langs/el_GR/propal.lang b/public/langs/el_GR/propal.lang similarity index 100% rename from htdocs/langs/el_GR/propal.lang rename to public/langs/el_GR/propal.lang diff --git a/htdocs/langs/el_GR/receiptprinter.lang b/public/langs/el_GR/receiptprinter.lang similarity index 100% rename from htdocs/langs/el_GR/receiptprinter.lang rename to public/langs/el_GR/receiptprinter.lang diff --git a/htdocs/langs/el_GR/resource.lang b/public/langs/el_GR/resource.lang similarity index 100% rename from htdocs/langs/el_GR/resource.lang rename to public/langs/el_GR/resource.lang diff --git a/htdocs/langs/el_GR/salaries.lang b/public/langs/el_GR/salaries.lang similarity index 100% rename from htdocs/langs/el_GR/salaries.lang rename to public/langs/el_GR/salaries.lang diff --git a/htdocs/langs/el_GR/sendings.lang b/public/langs/el_GR/sendings.lang similarity index 100% rename from htdocs/langs/el_GR/sendings.lang rename to public/langs/el_GR/sendings.lang diff --git a/htdocs/langs/el_GR/sms.lang b/public/langs/el_GR/sms.lang similarity index 100% rename from htdocs/langs/el_GR/sms.lang rename to public/langs/el_GR/sms.lang diff --git a/htdocs/langs/el_GR/stocks.lang b/public/langs/el_GR/stocks.lang similarity index 100% rename from htdocs/langs/el_GR/stocks.lang rename to public/langs/el_GR/stocks.lang diff --git a/htdocs/langs/el_GR/supplier_proposal.lang b/public/langs/el_GR/supplier_proposal.lang similarity index 100% rename from htdocs/langs/el_GR/supplier_proposal.lang rename to public/langs/el_GR/supplier_proposal.lang diff --git a/htdocs/langs/el_GR/suppliers.lang b/public/langs/el_GR/suppliers.lang similarity index 100% rename from htdocs/langs/el_GR/suppliers.lang rename to public/langs/el_GR/suppliers.lang diff --git a/htdocs/langs/el_GR/trips.lang b/public/langs/el_GR/trips.lang similarity index 100% rename from htdocs/langs/el_GR/trips.lang rename to public/langs/el_GR/trips.lang diff --git a/htdocs/langs/el_GR/users.lang b/public/langs/el_GR/users.lang similarity index 100% rename from htdocs/langs/el_GR/users.lang rename to public/langs/el_GR/users.lang diff --git a/htdocs/langs/el_GR/website.lang b/public/langs/el_GR/website.lang similarity index 100% rename from htdocs/langs/el_GR/website.lang rename to public/langs/el_GR/website.lang diff --git a/htdocs/langs/el_GR/withdrawals.lang b/public/langs/el_GR/withdrawals.lang similarity index 100% rename from htdocs/langs/el_GR/withdrawals.lang rename to public/langs/el_GR/withdrawals.lang diff --git a/htdocs/langs/el_GR/workflow.lang b/public/langs/el_GR/workflow.lang similarity index 100% rename from htdocs/langs/el_GR/workflow.lang rename to public/langs/el_GR/workflow.lang diff --git a/htdocs/langs/en_AU/accountancy.lang b/public/langs/en_AU/accountancy.lang similarity index 100% rename from htdocs/langs/en_AU/accountancy.lang rename to public/langs/en_AU/accountancy.lang diff --git a/htdocs/langs/en_AU/admin.lang b/public/langs/en_AU/admin.lang similarity index 100% rename from htdocs/langs/en_AU/admin.lang rename to public/langs/en_AU/admin.lang diff --git a/htdocs/langs/en_AU/agenda.lang b/public/langs/en_AU/agenda.lang similarity index 100% rename from htdocs/langs/en_AU/agenda.lang rename to public/langs/en_AU/agenda.lang diff --git a/htdocs/langs/en_AU/banks.lang b/public/langs/en_AU/banks.lang similarity index 100% rename from htdocs/langs/en_AU/banks.lang rename to public/langs/en_AU/banks.lang diff --git a/htdocs/langs/en_AU/bills.lang b/public/langs/en_AU/bills.lang similarity index 100% rename from htdocs/langs/en_AU/bills.lang rename to public/langs/en_AU/bills.lang diff --git a/htdocs/langs/en_AU/bookmarks.lang b/public/langs/en_AU/bookmarks.lang similarity index 100% rename from htdocs/langs/en_AU/bookmarks.lang rename to public/langs/en_AU/bookmarks.lang diff --git a/htdocs/langs/en_AU/boxes.lang b/public/langs/en_AU/boxes.lang similarity index 100% rename from htdocs/langs/en_AU/boxes.lang rename to public/langs/en_AU/boxes.lang diff --git a/htdocs/langs/en_AU/cashdesk.lang b/public/langs/en_AU/cashdesk.lang similarity index 100% rename from htdocs/langs/en_AU/cashdesk.lang rename to public/langs/en_AU/cashdesk.lang diff --git a/htdocs/langs/en_AU/categories.lang b/public/langs/en_AU/categories.lang similarity index 100% rename from htdocs/langs/en_AU/categories.lang rename to public/langs/en_AU/categories.lang diff --git a/htdocs/langs/en_AU/commercial.lang b/public/langs/en_AU/commercial.lang similarity index 100% rename from htdocs/langs/en_AU/commercial.lang rename to public/langs/en_AU/commercial.lang diff --git a/htdocs/langs/en_AU/companies.lang b/public/langs/en_AU/companies.lang similarity index 100% rename from htdocs/langs/en_AU/companies.lang rename to public/langs/en_AU/companies.lang diff --git a/htdocs/langs/en_AU/compta.lang b/public/langs/en_AU/compta.lang similarity index 100% rename from htdocs/langs/en_AU/compta.lang rename to public/langs/en_AU/compta.lang diff --git a/htdocs/langs/en_AU/contracts.lang b/public/langs/en_AU/contracts.lang similarity index 100% rename from htdocs/langs/en_AU/contracts.lang rename to public/langs/en_AU/contracts.lang diff --git a/htdocs/langs/en_AU/cron.lang b/public/langs/en_AU/cron.lang similarity index 100% rename from htdocs/langs/en_AU/cron.lang rename to public/langs/en_AU/cron.lang diff --git a/htdocs/langs/en_AU/deliveries.lang b/public/langs/en_AU/deliveries.lang similarity index 100% rename from htdocs/langs/en_AU/deliveries.lang rename to public/langs/en_AU/deliveries.lang diff --git a/htdocs/langs/en_AU/dict.lang b/public/langs/en_AU/dict.lang similarity index 100% rename from htdocs/langs/en_AU/dict.lang rename to public/langs/en_AU/dict.lang diff --git a/htdocs/langs/en_AU/donations.lang b/public/langs/en_AU/donations.lang similarity index 100% rename from htdocs/langs/en_AU/donations.lang rename to public/langs/en_AU/donations.lang diff --git a/htdocs/langs/en_AU/ecm.lang b/public/langs/en_AU/ecm.lang similarity index 100% rename from htdocs/langs/en_AU/ecm.lang rename to public/langs/en_AU/ecm.lang diff --git a/htdocs/langs/en_AU/errors.lang b/public/langs/en_AU/errors.lang similarity index 100% rename from htdocs/langs/en_AU/errors.lang rename to public/langs/en_AU/errors.lang diff --git a/htdocs/langs/en_AU/exports.lang b/public/langs/en_AU/exports.lang similarity index 100% rename from htdocs/langs/en_AU/exports.lang rename to public/langs/en_AU/exports.lang diff --git a/htdocs/langs/en_AU/externalsite.lang b/public/langs/en_AU/externalsite.lang similarity index 100% rename from htdocs/langs/en_AU/externalsite.lang rename to public/langs/en_AU/externalsite.lang diff --git a/htdocs/langs/en_AU/ftp.lang b/public/langs/en_AU/ftp.lang similarity index 100% rename from htdocs/langs/en_AU/ftp.lang rename to public/langs/en_AU/ftp.lang diff --git a/htdocs/langs/en_AU/help.lang b/public/langs/en_AU/help.lang similarity index 100% rename from htdocs/langs/en_AU/help.lang rename to public/langs/en_AU/help.lang diff --git a/htdocs/langs/en_AU/holiday.lang b/public/langs/en_AU/holiday.lang similarity index 100% rename from htdocs/langs/en_AU/holiday.lang rename to public/langs/en_AU/holiday.lang diff --git a/htdocs/langs/en_AU/hrm.lang b/public/langs/en_AU/hrm.lang similarity index 100% rename from htdocs/langs/en_AU/hrm.lang rename to public/langs/en_AU/hrm.lang diff --git a/htdocs/langs/en_AU/incoterm.lang b/public/langs/en_AU/incoterm.lang similarity index 100% rename from htdocs/langs/en_AU/incoterm.lang rename to public/langs/en_AU/incoterm.lang diff --git a/htdocs/langs/en_AU/install.lang b/public/langs/en_AU/install.lang similarity index 100% rename from htdocs/langs/en_AU/install.lang rename to public/langs/en_AU/install.lang diff --git a/htdocs/langs/en_AU/interventions.lang b/public/langs/en_AU/interventions.lang similarity index 100% rename from htdocs/langs/en_AU/interventions.lang rename to public/langs/en_AU/interventions.lang diff --git a/htdocs/langs/en_AU/languages.lang b/public/langs/en_AU/languages.lang similarity index 100% rename from htdocs/langs/en_AU/languages.lang rename to public/langs/en_AU/languages.lang diff --git a/htdocs/langs/en_AU/ldap.lang b/public/langs/en_AU/ldap.lang similarity index 100% rename from htdocs/langs/en_AU/ldap.lang rename to public/langs/en_AU/ldap.lang diff --git a/htdocs/langs/en_AU/link.lang b/public/langs/en_AU/link.lang similarity index 100% rename from htdocs/langs/en_AU/link.lang rename to public/langs/en_AU/link.lang diff --git a/htdocs/langs/en_AU/loan.lang b/public/langs/en_AU/loan.lang similarity index 100% rename from htdocs/langs/en_AU/loan.lang rename to public/langs/en_AU/loan.lang diff --git a/htdocs/langs/en_AU/mailmanspip.lang b/public/langs/en_AU/mailmanspip.lang similarity index 100% rename from htdocs/langs/en_AU/mailmanspip.lang rename to public/langs/en_AU/mailmanspip.lang diff --git a/htdocs/langs/en_AU/mails.lang b/public/langs/en_AU/mails.lang similarity index 100% rename from htdocs/langs/en_AU/mails.lang rename to public/langs/en_AU/mails.lang diff --git a/htdocs/langs/en_AU/main.lang b/public/langs/en_AU/main.lang similarity index 100% rename from htdocs/langs/en_AU/main.lang rename to public/langs/en_AU/main.lang diff --git a/htdocs/langs/en_AU/margins.lang b/public/langs/en_AU/margins.lang similarity index 100% rename from htdocs/langs/en_AU/margins.lang rename to public/langs/en_AU/margins.lang diff --git a/htdocs/langs/en_AU/members.lang b/public/langs/en_AU/members.lang similarity index 100% rename from htdocs/langs/en_AU/members.lang rename to public/langs/en_AU/members.lang diff --git a/htdocs/langs/en_AU/oauth.lang b/public/langs/en_AU/oauth.lang similarity index 100% rename from htdocs/langs/en_AU/oauth.lang rename to public/langs/en_AU/oauth.lang diff --git a/htdocs/langs/en_AU/opensurvey.lang b/public/langs/en_AU/opensurvey.lang similarity index 100% rename from htdocs/langs/en_AU/opensurvey.lang rename to public/langs/en_AU/opensurvey.lang diff --git a/htdocs/langs/en_AU/orders.lang b/public/langs/en_AU/orders.lang similarity index 100% rename from htdocs/langs/en_AU/orders.lang rename to public/langs/en_AU/orders.lang diff --git a/htdocs/langs/en_AU/other.lang b/public/langs/en_AU/other.lang similarity index 100% rename from htdocs/langs/en_AU/other.lang rename to public/langs/en_AU/other.lang diff --git a/htdocs/langs/en_AU/paybox.lang b/public/langs/en_AU/paybox.lang similarity index 100% rename from htdocs/langs/en_AU/paybox.lang rename to public/langs/en_AU/paybox.lang diff --git a/htdocs/langs/en_AU/paypal.lang b/public/langs/en_AU/paypal.lang similarity index 100% rename from htdocs/langs/en_AU/paypal.lang rename to public/langs/en_AU/paypal.lang diff --git a/htdocs/langs/en_AU/printing.lang b/public/langs/en_AU/printing.lang similarity index 100% rename from htdocs/langs/en_AU/printing.lang rename to public/langs/en_AU/printing.lang diff --git a/htdocs/langs/en_AU/productbatch.lang b/public/langs/en_AU/productbatch.lang similarity index 100% rename from htdocs/langs/en_AU/productbatch.lang rename to public/langs/en_AU/productbatch.lang diff --git a/htdocs/langs/en_AU/products.lang b/public/langs/en_AU/products.lang similarity index 100% rename from htdocs/langs/en_AU/products.lang rename to public/langs/en_AU/products.lang diff --git a/htdocs/langs/en_AU/projects.lang b/public/langs/en_AU/projects.lang similarity index 100% rename from htdocs/langs/en_AU/projects.lang rename to public/langs/en_AU/projects.lang diff --git a/htdocs/langs/en_AU/propal.lang b/public/langs/en_AU/propal.lang similarity index 100% rename from htdocs/langs/en_AU/propal.lang rename to public/langs/en_AU/propal.lang diff --git a/htdocs/langs/en_AU/receiptprinter.lang b/public/langs/en_AU/receiptprinter.lang similarity index 100% rename from htdocs/langs/en_AU/receiptprinter.lang rename to public/langs/en_AU/receiptprinter.lang diff --git a/htdocs/langs/en_AU/resource.lang b/public/langs/en_AU/resource.lang similarity index 100% rename from htdocs/langs/en_AU/resource.lang rename to public/langs/en_AU/resource.lang diff --git a/htdocs/langs/en_AU/salaries.lang b/public/langs/en_AU/salaries.lang similarity index 100% rename from htdocs/langs/en_AU/salaries.lang rename to public/langs/en_AU/salaries.lang diff --git a/htdocs/langs/en_AU/sendings.lang b/public/langs/en_AU/sendings.lang similarity index 100% rename from htdocs/langs/en_AU/sendings.lang rename to public/langs/en_AU/sendings.lang diff --git a/htdocs/langs/en_AU/sms.lang b/public/langs/en_AU/sms.lang similarity index 100% rename from htdocs/langs/en_AU/sms.lang rename to public/langs/en_AU/sms.lang diff --git a/htdocs/langs/en_AU/stocks.lang b/public/langs/en_AU/stocks.lang similarity index 100% rename from htdocs/langs/en_AU/stocks.lang rename to public/langs/en_AU/stocks.lang diff --git a/htdocs/langs/en_AU/supplier_proposal.lang b/public/langs/en_AU/supplier_proposal.lang similarity index 100% rename from htdocs/langs/en_AU/supplier_proposal.lang rename to public/langs/en_AU/supplier_proposal.lang diff --git a/htdocs/langs/en_AU/suppliers.lang b/public/langs/en_AU/suppliers.lang similarity index 100% rename from htdocs/langs/en_AU/suppliers.lang rename to public/langs/en_AU/suppliers.lang diff --git a/htdocs/langs/en_AU/trips.lang b/public/langs/en_AU/trips.lang similarity index 100% rename from htdocs/langs/en_AU/trips.lang rename to public/langs/en_AU/trips.lang diff --git a/htdocs/langs/en_AU/users.lang b/public/langs/en_AU/users.lang similarity index 100% rename from htdocs/langs/en_AU/users.lang rename to public/langs/en_AU/users.lang diff --git a/htdocs/langs/en_AU/website.lang b/public/langs/en_AU/website.lang similarity index 100% rename from htdocs/langs/en_AU/website.lang rename to public/langs/en_AU/website.lang diff --git a/htdocs/langs/en_AU/withdrawals.lang b/public/langs/en_AU/withdrawals.lang similarity index 100% rename from htdocs/langs/en_AU/withdrawals.lang rename to public/langs/en_AU/withdrawals.lang diff --git a/htdocs/langs/en_AU/workflow.lang b/public/langs/en_AU/workflow.lang similarity index 100% rename from htdocs/langs/en_AU/workflow.lang rename to public/langs/en_AU/workflow.lang diff --git a/htdocs/langs/en_CA/accountancy.lang b/public/langs/en_CA/accountancy.lang similarity index 100% rename from htdocs/langs/en_CA/accountancy.lang rename to public/langs/en_CA/accountancy.lang diff --git a/htdocs/langs/en_CA/admin.lang b/public/langs/en_CA/admin.lang similarity index 100% rename from htdocs/langs/en_CA/admin.lang rename to public/langs/en_CA/admin.lang diff --git a/htdocs/langs/en_CA/agenda.lang b/public/langs/en_CA/agenda.lang similarity index 100% rename from htdocs/langs/en_CA/agenda.lang rename to public/langs/en_CA/agenda.lang diff --git a/htdocs/langs/en_CA/banks.lang b/public/langs/en_CA/banks.lang similarity index 100% rename from htdocs/langs/en_CA/banks.lang rename to public/langs/en_CA/banks.lang diff --git a/htdocs/langs/en_CA/bills.lang b/public/langs/en_CA/bills.lang similarity index 100% rename from htdocs/langs/en_CA/bills.lang rename to public/langs/en_CA/bills.lang diff --git a/htdocs/langs/en_CA/bookmarks.lang b/public/langs/en_CA/bookmarks.lang similarity index 100% rename from htdocs/langs/en_CA/bookmarks.lang rename to public/langs/en_CA/bookmarks.lang diff --git a/htdocs/langs/en_CA/boxes.lang b/public/langs/en_CA/boxes.lang similarity index 100% rename from htdocs/langs/en_CA/boxes.lang rename to public/langs/en_CA/boxes.lang diff --git a/htdocs/langs/en_CA/cashdesk.lang b/public/langs/en_CA/cashdesk.lang similarity index 100% rename from htdocs/langs/en_CA/cashdesk.lang rename to public/langs/en_CA/cashdesk.lang diff --git a/htdocs/langs/en_CA/categories.lang b/public/langs/en_CA/categories.lang similarity index 100% rename from htdocs/langs/en_CA/categories.lang rename to public/langs/en_CA/categories.lang diff --git a/htdocs/langs/en_CA/commercial.lang b/public/langs/en_CA/commercial.lang similarity index 100% rename from htdocs/langs/en_CA/commercial.lang rename to public/langs/en_CA/commercial.lang diff --git a/htdocs/langs/en_CA/companies.lang b/public/langs/en_CA/companies.lang similarity index 100% rename from htdocs/langs/en_CA/companies.lang rename to public/langs/en_CA/companies.lang diff --git a/htdocs/langs/en_CA/compta.lang b/public/langs/en_CA/compta.lang similarity index 100% rename from htdocs/langs/en_CA/compta.lang rename to public/langs/en_CA/compta.lang diff --git a/htdocs/langs/en_CA/contracts.lang b/public/langs/en_CA/contracts.lang similarity index 100% rename from htdocs/langs/en_CA/contracts.lang rename to public/langs/en_CA/contracts.lang diff --git a/htdocs/langs/en_CA/cron.lang b/public/langs/en_CA/cron.lang similarity index 100% rename from htdocs/langs/en_CA/cron.lang rename to public/langs/en_CA/cron.lang diff --git a/htdocs/langs/en_CA/deliveries.lang b/public/langs/en_CA/deliveries.lang similarity index 100% rename from htdocs/langs/en_CA/deliveries.lang rename to public/langs/en_CA/deliveries.lang diff --git a/htdocs/langs/en_CA/dict.lang b/public/langs/en_CA/dict.lang similarity index 100% rename from htdocs/langs/en_CA/dict.lang rename to public/langs/en_CA/dict.lang diff --git a/htdocs/langs/en_CA/donations.lang b/public/langs/en_CA/donations.lang similarity index 100% rename from htdocs/langs/en_CA/donations.lang rename to public/langs/en_CA/donations.lang diff --git a/htdocs/langs/en_CA/ecm.lang b/public/langs/en_CA/ecm.lang similarity index 100% rename from htdocs/langs/en_CA/ecm.lang rename to public/langs/en_CA/ecm.lang diff --git a/htdocs/langs/en_CA/errors.lang b/public/langs/en_CA/errors.lang similarity index 100% rename from htdocs/langs/en_CA/errors.lang rename to public/langs/en_CA/errors.lang diff --git a/htdocs/langs/en_CA/exports.lang b/public/langs/en_CA/exports.lang similarity index 100% rename from htdocs/langs/en_CA/exports.lang rename to public/langs/en_CA/exports.lang diff --git a/htdocs/langs/en_CA/externalsite.lang b/public/langs/en_CA/externalsite.lang similarity index 100% rename from htdocs/langs/en_CA/externalsite.lang rename to public/langs/en_CA/externalsite.lang diff --git a/htdocs/langs/en_CA/ftp.lang b/public/langs/en_CA/ftp.lang similarity index 100% rename from htdocs/langs/en_CA/ftp.lang rename to public/langs/en_CA/ftp.lang diff --git a/htdocs/langs/en_CA/help.lang b/public/langs/en_CA/help.lang similarity index 100% rename from htdocs/langs/en_CA/help.lang rename to public/langs/en_CA/help.lang diff --git a/htdocs/langs/en_CA/holiday.lang b/public/langs/en_CA/holiday.lang similarity index 100% rename from htdocs/langs/en_CA/holiday.lang rename to public/langs/en_CA/holiday.lang diff --git a/htdocs/langs/en_CA/hrm.lang b/public/langs/en_CA/hrm.lang similarity index 100% rename from htdocs/langs/en_CA/hrm.lang rename to public/langs/en_CA/hrm.lang diff --git a/htdocs/langs/en_CA/incoterm.lang b/public/langs/en_CA/incoterm.lang similarity index 100% rename from htdocs/langs/en_CA/incoterm.lang rename to public/langs/en_CA/incoterm.lang diff --git a/htdocs/langs/en_CA/install.lang b/public/langs/en_CA/install.lang similarity index 100% rename from htdocs/langs/en_CA/install.lang rename to public/langs/en_CA/install.lang diff --git a/htdocs/langs/en_CA/interventions.lang b/public/langs/en_CA/interventions.lang similarity index 100% rename from htdocs/langs/en_CA/interventions.lang rename to public/langs/en_CA/interventions.lang diff --git a/htdocs/langs/en_CA/languages.lang b/public/langs/en_CA/languages.lang similarity index 100% rename from htdocs/langs/en_CA/languages.lang rename to public/langs/en_CA/languages.lang diff --git a/htdocs/langs/en_CA/ldap.lang b/public/langs/en_CA/ldap.lang similarity index 100% rename from htdocs/langs/en_CA/ldap.lang rename to public/langs/en_CA/ldap.lang diff --git a/htdocs/langs/en_CA/link.lang b/public/langs/en_CA/link.lang similarity index 100% rename from htdocs/langs/en_CA/link.lang rename to public/langs/en_CA/link.lang diff --git a/htdocs/langs/en_CA/loan.lang b/public/langs/en_CA/loan.lang similarity index 100% rename from htdocs/langs/en_CA/loan.lang rename to public/langs/en_CA/loan.lang diff --git a/htdocs/langs/en_CA/mailmanspip.lang b/public/langs/en_CA/mailmanspip.lang similarity index 100% rename from htdocs/langs/en_CA/mailmanspip.lang rename to public/langs/en_CA/mailmanspip.lang diff --git a/htdocs/langs/en_CA/mails.lang b/public/langs/en_CA/mails.lang similarity index 100% rename from htdocs/langs/en_CA/mails.lang rename to public/langs/en_CA/mails.lang diff --git a/htdocs/langs/en_CA/main.lang b/public/langs/en_CA/main.lang similarity index 100% rename from htdocs/langs/en_CA/main.lang rename to public/langs/en_CA/main.lang diff --git a/htdocs/langs/en_CA/margins.lang b/public/langs/en_CA/margins.lang similarity index 100% rename from htdocs/langs/en_CA/margins.lang rename to public/langs/en_CA/margins.lang diff --git a/htdocs/langs/en_CA/members.lang b/public/langs/en_CA/members.lang similarity index 100% rename from htdocs/langs/en_CA/members.lang rename to public/langs/en_CA/members.lang diff --git a/htdocs/langs/en_CA/oauth.lang b/public/langs/en_CA/oauth.lang similarity index 100% rename from htdocs/langs/en_CA/oauth.lang rename to public/langs/en_CA/oauth.lang diff --git a/htdocs/langs/en_CA/opensurvey.lang b/public/langs/en_CA/opensurvey.lang similarity index 100% rename from htdocs/langs/en_CA/opensurvey.lang rename to public/langs/en_CA/opensurvey.lang diff --git a/htdocs/langs/en_CA/orders.lang b/public/langs/en_CA/orders.lang similarity index 100% rename from htdocs/langs/en_CA/orders.lang rename to public/langs/en_CA/orders.lang diff --git a/htdocs/langs/en_CA/other.lang b/public/langs/en_CA/other.lang similarity index 100% rename from htdocs/langs/en_CA/other.lang rename to public/langs/en_CA/other.lang diff --git a/htdocs/langs/en_CA/paybox.lang b/public/langs/en_CA/paybox.lang similarity index 100% rename from htdocs/langs/en_CA/paybox.lang rename to public/langs/en_CA/paybox.lang diff --git a/htdocs/langs/en_CA/paypal.lang b/public/langs/en_CA/paypal.lang similarity index 100% rename from htdocs/langs/en_CA/paypal.lang rename to public/langs/en_CA/paypal.lang diff --git a/htdocs/langs/en_CA/printing.lang b/public/langs/en_CA/printing.lang similarity index 100% rename from htdocs/langs/en_CA/printing.lang rename to public/langs/en_CA/printing.lang diff --git a/htdocs/langs/en_CA/productbatch.lang b/public/langs/en_CA/productbatch.lang similarity index 100% rename from htdocs/langs/en_CA/productbatch.lang rename to public/langs/en_CA/productbatch.lang diff --git a/htdocs/langs/en_CA/products.lang b/public/langs/en_CA/products.lang similarity index 100% rename from htdocs/langs/en_CA/products.lang rename to public/langs/en_CA/products.lang diff --git a/htdocs/langs/en_CA/projects.lang b/public/langs/en_CA/projects.lang similarity index 100% rename from htdocs/langs/en_CA/projects.lang rename to public/langs/en_CA/projects.lang diff --git a/htdocs/langs/en_CA/propal.lang b/public/langs/en_CA/propal.lang similarity index 100% rename from htdocs/langs/en_CA/propal.lang rename to public/langs/en_CA/propal.lang diff --git a/htdocs/langs/en_CA/receiptprinter.lang b/public/langs/en_CA/receiptprinter.lang similarity index 100% rename from htdocs/langs/en_CA/receiptprinter.lang rename to public/langs/en_CA/receiptprinter.lang diff --git a/htdocs/langs/en_CA/resource.lang b/public/langs/en_CA/resource.lang similarity index 100% rename from htdocs/langs/en_CA/resource.lang rename to public/langs/en_CA/resource.lang diff --git a/htdocs/langs/en_CA/salaries.lang b/public/langs/en_CA/salaries.lang similarity index 100% rename from htdocs/langs/en_CA/salaries.lang rename to public/langs/en_CA/salaries.lang diff --git a/htdocs/langs/en_CA/sendings.lang b/public/langs/en_CA/sendings.lang similarity index 100% rename from htdocs/langs/en_CA/sendings.lang rename to public/langs/en_CA/sendings.lang diff --git a/htdocs/langs/en_CA/sms.lang b/public/langs/en_CA/sms.lang similarity index 100% rename from htdocs/langs/en_CA/sms.lang rename to public/langs/en_CA/sms.lang diff --git a/htdocs/langs/en_CA/stocks.lang b/public/langs/en_CA/stocks.lang similarity index 100% rename from htdocs/langs/en_CA/stocks.lang rename to public/langs/en_CA/stocks.lang diff --git a/htdocs/langs/en_CA/supplier_proposal.lang b/public/langs/en_CA/supplier_proposal.lang similarity index 100% rename from htdocs/langs/en_CA/supplier_proposal.lang rename to public/langs/en_CA/supplier_proposal.lang diff --git a/htdocs/langs/en_CA/suppliers.lang b/public/langs/en_CA/suppliers.lang similarity index 100% rename from htdocs/langs/en_CA/suppliers.lang rename to public/langs/en_CA/suppliers.lang diff --git a/htdocs/langs/en_CA/trips.lang b/public/langs/en_CA/trips.lang similarity index 100% rename from htdocs/langs/en_CA/trips.lang rename to public/langs/en_CA/trips.lang diff --git a/htdocs/langs/en_CA/users.lang b/public/langs/en_CA/users.lang similarity index 100% rename from htdocs/langs/en_CA/users.lang rename to public/langs/en_CA/users.lang diff --git a/htdocs/langs/en_CA/website.lang b/public/langs/en_CA/website.lang similarity index 100% rename from htdocs/langs/en_CA/website.lang rename to public/langs/en_CA/website.lang diff --git a/htdocs/langs/en_CA/withdrawals.lang b/public/langs/en_CA/withdrawals.lang similarity index 100% rename from htdocs/langs/en_CA/withdrawals.lang rename to public/langs/en_CA/withdrawals.lang diff --git a/htdocs/langs/en_CA/workflow.lang b/public/langs/en_CA/workflow.lang similarity index 100% rename from htdocs/langs/en_CA/workflow.lang rename to public/langs/en_CA/workflow.lang diff --git a/htdocs/langs/en_GB/accountancy.lang b/public/langs/en_GB/accountancy.lang similarity index 100% rename from htdocs/langs/en_GB/accountancy.lang rename to public/langs/en_GB/accountancy.lang diff --git a/htdocs/langs/en_GB/admin.lang b/public/langs/en_GB/admin.lang similarity index 100% rename from htdocs/langs/en_GB/admin.lang rename to public/langs/en_GB/admin.lang diff --git a/htdocs/langs/en_GB/agenda.lang b/public/langs/en_GB/agenda.lang similarity index 100% rename from htdocs/langs/en_GB/agenda.lang rename to public/langs/en_GB/agenda.lang diff --git a/htdocs/langs/en_GB/banks.lang b/public/langs/en_GB/banks.lang similarity index 100% rename from htdocs/langs/en_GB/banks.lang rename to public/langs/en_GB/banks.lang diff --git a/htdocs/langs/en_GB/bills.lang b/public/langs/en_GB/bills.lang similarity index 100% rename from htdocs/langs/en_GB/bills.lang rename to public/langs/en_GB/bills.lang diff --git a/htdocs/langs/en_GB/bookmarks.lang b/public/langs/en_GB/bookmarks.lang similarity index 100% rename from htdocs/langs/en_GB/bookmarks.lang rename to public/langs/en_GB/bookmarks.lang diff --git a/htdocs/langs/en_GB/boxes.lang b/public/langs/en_GB/boxes.lang similarity index 100% rename from htdocs/langs/en_GB/boxes.lang rename to public/langs/en_GB/boxes.lang diff --git a/htdocs/langs/en_GB/cashdesk.lang b/public/langs/en_GB/cashdesk.lang similarity index 100% rename from htdocs/langs/en_GB/cashdesk.lang rename to public/langs/en_GB/cashdesk.lang diff --git a/htdocs/langs/en_GB/categories.lang b/public/langs/en_GB/categories.lang similarity index 100% rename from htdocs/langs/en_GB/categories.lang rename to public/langs/en_GB/categories.lang diff --git a/htdocs/langs/en_GB/commercial.lang b/public/langs/en_GB/commercial.lang similarity index 100% rename from htdocs/langs/en_GB/commercial.lang rename to public/langs/en_GB/commercial.lang diff --git a/htdocs/langs/en_GB/companies.lang b/public/langs/en_GB/companies.lang similarity index 100% rename from htdocs/langs/en_GB/companies.lang rename to public/langs/en_GB/companies.lang diff --git a/htdocs/langs/en_GB/compta.lang b/public/langs/en_GB/compta.lang similarity index 100% rename from htdocs/langs/en_GB/compta.lang rename to public/langs/en_GB/compta.lang diff --git a/htdocs/langs/en_GB/contracts.lang b/public/langs/en_GB/contracts.lang similarity index 100% rename from htdocs/langs/en_GB/contracts.lang rename to public/langs/en_GB/contracts.lang diff --git a/htdocs/langs/en_GB/cron.lang b/public/langs/en_GB/cron.lang similarity index 100% rename from htdocs/langs/en_GB/cron.lang rename to public/langs/en_GB/cron.lang diff --git a/htdocs/langs/en_GB/deliveries.lang b/public/langs/en_GB/deliveries.lang similarity index 100% rename from htdocs/langs/en_GB/deliveries.lang rename to public/langs/en_GB/deliveries.lang diff --git a/htdocs/langs/en_GB/dict.lang b/public/langs/en_GB/dict.lang similarity index 100% rename from htdocs/langs/en_GB/dict.lang rename to public/langs/en_GB/dict.lang diff --git a/htdocs/langs/en_GB/donations.lang b/public/langs/en_GB/donations.lang similarity index 100% rename from htdocs/langs/en_GB/donations.lang rename to public/langs/en_GB/donations.lang diff --git a/htdocs/langs/en_GB/ecm.lang b/public/langs/en_GB/ecm.lang similarity index 100% rename from htdocs/langs/en_GB/ecm.lang rename to public/langs/en_GB/ecm.lang diff --git a/htdocs/langs/en_GB/errors.lang b/public/langs/en_GB/errors.lang similarity index 100% rename from htdocs/langs/en_GB/errors.lang rename to public/langs/en_GB/errors.lang diff --git a/htdocs/langs/en_GB/exports.lang b/public/langs/en_GB/exports.lang similarity index 100% rename from htdocs/langs/en_GB/exports.lang rename to public/langs/en_GB/exports.lang diff --git a/htdocs/langs/en_GB/externalsite.lang b/public/langs/en_GB/externalsite.lang similarity index 100% rename from htdocs/langs/en_GB/externalsite.lang rename to public/langs/en_GB/externalsite.lang diff --git a/htdocs/langs/en_GB/ftp.lang b/public/langs/en_GB/ftp.lang similarity index 100% rename from htdocs/langs/en_GB/ftp.lang rename to public/langs/en_GB/ftp.lang diff --git a/htdocs/langs/en_GB/help.lang b/public/langs/en_GB/help.lang similarity index 100% rename from htdocs/langs/en_GB/help.lang rename to public/langs/en_GB/help.lang diff --git a/htdocs/langs/en_GB/holiday.lang b/public/langs/en_GB/holiday.lang similarity index 100% rename from htdocs/langs/en_GB/holiday.lang rename to public/langs/en_GB/holiday.lang diff --git a/htdocs/langs/en_GB/hrm.lang b/public/langs/en_GB/hrm.lang similarity index 100% rename from htdocs/langs/en_GB/hrm.lang rename to public/langs/en_GB/hrm.lang diff --git a/htdocs/langs/en_GB/incoterm.lang b/public/langs/en_GB/incoterm.lang similarity index 100% rename from htdocs/langs/en_GB/incoterm.lang rename to public/langs/en_GB/incoterm.lang diff --git a/htdocs/langs/en_GB/install.lang b/public/langs/en_GB/install.lang similarity index 100% rename from htdocs/langs/en_GB/install.lang rename to public/langs/en_GB/install.lang diff --git a/htdocs/langs/en_GB/interventions.lang b/public/langs/en_GB/interventions.lang similarity index 100% rename from htdocs/langs/en_GB/interventions.lang rename to public/langs/en_GB/interventions.lang diff --git a/htdocs/langs/en_GB/languages.lang b/public/langs/en_GB/languages.lang similarity index 100% rename from htdocs/langs/en_GB/languages.lang rename to public/langs/en_GB/languages.lang diff --git a/htdocs/langs/en_GB/ldap.lang b/public/langs/en_GB/ldap.lang similarity index 100% rename from htdocs/langs/en_GB/ldap.lang rename to public/langs/en_GB/ldap.lang diff --git a/htdocs/langs/en_GB/link.lang b/public/langs/en_GB/link.lang similarity index 100% rename from htdocs/langs/en_GB/link.lang rename to public/langs/en_GB/link.lang diff --git a/htdocs/langs/en_GB/loan.lang b/public/langs/en_GB/loan.lang similarity index 100% rename from htdocs/langs/en_GB/loan.lang rename to public/langs/en_GB/loan.lang diff --git a/htdocs/langs/en_GB/mailmanspip.lang b/public/langs/en_GB/mailmanspip.lang similarity index 100% rename from htdocs/langs/en_GB/mailmanspip.lang rename to public/langs/en_GB/mailmanspip.lang diff --git a/htdocs/langs/en_GB/mails.lang b/public/langs/en_GB/mails.lang similarity index 100% rename from htdocs/langs/en_GB/mails.lang rename to public/langs/en_GB/mails.lang diff --git a/htdocs/langs/en_GB/main.lang b/public/langs/en_GB/main.lang similarity index 100% rename from htdocs/langs/en_GB/main.lang rename to public/langs/en_GB/main.lang diff --git a/htdocs/langs/en_GB/margins.lang b/public/langs/en_GB/margins.lang similarity index 100% rename from htdocs/langs/en_GB/margins.lang rename to public/langs/en_GB/margins.lang diff --git a/htdocs/langs/en_GB/members.lang b/public/langs/en_GB/members.lang similarity index 100% rename from htdocs/langs/en_GB/members.lang rename to public/langs/en_GB/members.lang diff --git a/htdocs/langs/en_GB/oauth.lang b/public/langs/en_GB/oauth.lang similarity index 100% rename from htdocs/langs/en_GB/oauth.lang rename to public/langs/en_GB/oauth.lang diff --git a/htdocs/langs/en_GB/opensurvey.lang b/public/langs/en_GB/opensurvey.lang similarity index 100% rename from htdocs/langs/en_GB/opensurvey.lang rename to public/langs/en_GB/opensurvey.lang diff --git a/htdocs/langs/en_GB/orders.lang b/public/langs/en_GB/orders.lang similarity index 100% rename from htdocs/langs/en_GB/orders.lang rename to public/langs/en_GB/orders.lang diff --git a/htdocs/langs/en_GB/other.lang b/public/langs/en_GB/other.lang similarity index 100% rename from htdocs/langs/en_GB/other.lang rename to public/langs/en_GB/other.lang diff --git a/htdocs/langs/en_GB/paybox.lang b/public/langs/en_GB/paybox.lang similarity index 100% rename from htdocs/langs/en_GB/paybox.lang rename to public/langs/en_GB/paybox.lang diff --git a/htdocs/langs/en_GB/paypal.lang b/public/langs/en_GB/paypal.lang similarity index 100% rename from htdocs/langs/en_GB/paypal.lang rename to public/langs/en_GB/paypal.lang diff --git a/htdocs/langs/en_GB/printing.lang b/public/langs/en_GB/printing.lang similarity index 100% rename from htdocs/langs/en_GB/printing.lang rename to public/langs/en_GB/printing.lang diff --git a/htdocs/langs/en_GB/productbatch.lang b/public/langs/en_GB/productbatch.lang similarity index 100% rename from htdocs/langs/en_GB/productbatch.lang rename to public/langs/en_GB/productbatch.lang diff --git a/htdocs/langs/en_GB/products.lang b/public/langs/en_GB/products.lang similarity index 100% rename from htdocs/langs/en_GB/products.lang rename to public/langs/en_GB/products.lang diff --git a/htdocs/langs/en_GB/projects.lang b/public/langs/en_GB/projects.lang similarity index 100% rename from htdocs/langs/en_GB/projects.lang rename to public/langs/en_GB/projects.lang diff --git a/htdocs/langs/en_GB/propal.lang b/public/langs/en_GB/propal.lang similarity index 100% rename from htdocs/langs/en_GB/propal.lang rename to public/langs/en_GB/propal.lang diff --git a/htdocs/langs/en_GB/receiptprinter.lang b/public/langs/en_GB/receiptprinter.lang similarity index 100% rename from htdocs/langs/en_GB/receiptprinter.lang rename to public/langs/en_GB/receiptprinter.lang diff --git a/htdocs/langs/en_GB/resource.lang b/public/langs/en_GB/resource.lang similarity index 100% rename from htdocs/langs/en_GB/resource.lang rename to public/langs/en_GB/resource.lang diff --git a/htdocs/langs/en_GB/salaries.lang b/public/langs/en_GB/salaries.lang similarity index 100% rename from htdocs/langs/en_GB/salaries.lang rename to public/langs/en_GB/salaries.lang diff --git a/htdocs/langs/en_GB/sendings.lang b/public/langs/en_GB/sendings.lang similarity index 100% rename from htdocs/langs/en_GB/sendings.lang rename to public/langs/en_GB/sendings.lang diff --git a/htdocs/langs/en_GB/sms.lang b/public/langs/en_GB/sms.lang similarity index 100% rename from htdocs/langs/en_GB/sms.lang rename to public/langs/en_GB/sms.lang diff --git a/htdocs/langs/en_GB/stocks.lang b/public/langs/en_GB/stocks.lang similarity index 100% rename from htdocs/langs/en_GB/stocks.lang rename to public/langs/en_GB/stocks.lang diff --git a/htdocs/langs/en_GB/supplier_proposal.lang b/public/langs/en_GB/supplier_proposal.lang similarity index 100% rename from htdocs/langs/en_GB/supplier_proposal.lang rename to public/langs/en_GB/supplier_proposal.lang diff --git a/htdocs/langs/en_GB/suppliers.lang b/public/langs/en_GB/suppliers.lang similarity index 100% rename from htdocs/langs/en_GB/suppliers.lang rename to public/langs/en_GB/suppliers.lang diff --git a/htdocs/langs/en_GB/trips.lang b/public/langs/en_GB/trips.lang similarity index 100% rename from htdocs/langs/en_GB/trips.lang rename to public/langs/en_GB/trips.lang diff --git a/htdocs/langs/en_GB/users.lang b/public/langs/en_GB/users.lang similarity index 100% rename from htdocs/langs/en_GB/users.lang rename to public/langs/en_GB/users.lang diff --git a/htdocs/langs/en_GB/website.lang b/public/langs/en_GB/website.lang similarity index 100% rename from htdocs/langs/en_GB/website.lang rename to public/langs/en_GB/website.lang diff --git a/htdocs/langs/en_GB/withdrawals.lang b/public/langs/en_GB/withdrawals.lang similarity index 100% rename from htdocs/langs/en_GB/withdrawals.lang rename to public/langs/en_GB/withdrawals.lang diff --git a/htdocs/langs/en_GB/workflow.lang b/public/langs/en_GB/workflow.lang similarity index 100% rename from htdocs/langs/en_GB/workflow.lang rename to public/langs/en_GB/workflow.lang diff --git a/htdocs/langs/en_IN/accountancy.lang b/public/langs/en_IN/accountancy.lang similarity index 100% rename from htdocs/langs/en_IN/accountancy.lang rename to public/langs/en_IN/accountancy.lang diff --git a/htdocs/langs/en_IN/admin.lang b/public/langs/en_IN/admin.lang similarity index 100% rename from htdocs/langs/en_IN/admin.lang rename to public/langs/en_IN/admin.lang diff --git a/htdocs/langs/en_IN/agenda.lang b/public/langs/en_IN/agenda.lang similarity index 100% rename from htdocs/langs/en_IN/agenda.lang rename to public/langs/en_IN/agenda.lang diff --git a/htdocs/langs/en_IN/banks.lang b/public/langs/en_IN/banks.lang similarity index 100% rename from htdocs/langs/en_IN/banks.lang rename to public/langs/en_IN/banks.lang diff --git a/htdocs/langs/en_IN/bills.lang b/public/langs/en_IN/bills.lang similarity index 100% rename from htdocs/langs/en_IN/bills.lang rename to public/langs/en_IN/bills.lang diff --git a/htdocs/langs/en_IN/bookmarks.lang b/public/langs/en_IN/bookmarks.lang similarity index 100% rename from htdocs/langs/en_IN/bookmarks.lang rename to public/langs/en_IN/bookmarks.lang diff --git a/htdocs/langs/en_IN/boxes.lang b/public/langs/en_IN/boxes.lang similarity index 100% rename from htdocs/langs/en_IN/boxes.lang rename to public/langs/en_IN/boxes.lang diff --git a/htdocs/langs/en_IN/cashdesk.lang b/public/langs/en_IN/cashdesk.lang similarity index 100% rename from htdocs/langs/en_IN/cashdesk.lang rename to public/langs/en_IN/cashdesk.lang diff --git a/htdocs/langs/en_IN/categories.lang b/public/langs/en_IN/categories.lang similarity index 100% rename from htdocs/langs/en_IN/categories.lang rename to public/langs/en_IN/categories.lang diff --git a/htdocs/langs/en_IN/commercial.lang b/public/langs/en_IN/commercial.lang similarity index 100% rename from htdocs/langs/en_IN/commercial.lang rename to public/langs/en_IN/commercial.lang diff --git a/htdocs/langs/en_IN/companies.lang b/public/langs/en_IN/companies.lang similarity index 100% rename from htdocs/langs/en_IN/companies.lang rename to public/langs/en_IN/companies.lang diff --git a/htdocs/langs/en_IN/compta.lang b/public/langs/en_IN/compta.lang similarity index 100% rename from htdocs/langs/en_IN/compta.lang rename to public/langs/en_IN/compta.lang diff --git a/htdocs/langs/en_IN/contracts.lang b/public/langs/en_IN/contracts.lang similarity index 100% rename from htdocs/langs/en_IN/contracts.lang rename to public/langs/en_IN/contracts.lang diff --git a/htdocs/langs/en_IN/cron.lang b/public/langs/en_IN/cron.lang similarity index 100% rename from htdocs/langs/en_IN/cron.lang rename to public/langs/en_IN/cron.lang diff --git a/htdocs/langs/en_IN/deliveries.lang b/public/langs/en_IN/deliveries.lang similarity index 100% rename from htdocs/langs/en_IN/deliveries.lang rename to public/langs/en_IN/deliveries.lang diff --git a/htdocs/langs/en_IN/dict.lang b/public/langs/en_IN/dict.lang similarity index 100% rename from htdocs/langs/en_IN/dict.lang rename to public/langs/en_IN/dict.lang diff --git a/htdocs/langs/en_IN/donations.lang b/public/langs/en_IN/donations.lang similarity index 100% rename from htdocs/langs/en_IN/donations.lang rename to public/langs/en_IN/donations.lang diff --git a/htdocs/langs/en_IN/ecm.lang b/public/langs/en_IN/ecm.lang similarity index 100% rename from htdocs/langs/en_IN/ecm.lang rename to public/langs/en_IN/ecm.lang diff --git a/htdocs/langs/en_IN/errors.lang b/public/langs/en_IN/errors.lang similarity index 100% rename from htdocs/langs/en_IN/errors.lang rename to public/langs/en_IN/errors.lang diff --git a/htdocs/langs/en_IN/exports.lang b/public/langs/en_IN/exports.lang similarity index 100% rename from htdocs/langs/en_IN/exports.lang rename to public/langs/en_IN/exports.lang diff --git a/htdocs/langs/en_IN/externalsite.lang b/public/langs/en_IN/externalsite.lang similarity index 100% rename from htdocs/langs/en_IN/externalsite.lang rename to public/langs/en_IN/externalsite.lang diff --git a/htdocs/langs/en_IN/ftp.lang b/public/langs/en_IN/ftp.lang similarity index 100% rename from htdocs/langs/en_IN/ftp.lang rename to public/langs/en_IN/ftp.lang diff --git a/htdocs/langs/en_IN/help.lang b/public/langs/en_IN/help.lang similarity index 100% rename from htdocs/langs/en_IN/help.lang rename to public/langs/en_IN/help.lang diff --git a/htdocs/langs/en_IN/holiday.lang b/public/langs/en_IN/holiday.lang similarity index 100% rename from htdocs/langs/en_IN/holiday.lang rename to public/langs/en_IN/holiday.lang diff --git a/htdocs/langs/en_IN/hrm.lang b/public/langs/en_IN/hrm.lang similarity index 100% rename from htdocs/langs/en_IN/hrm.lang rename to public/langs/en_IN/hrm.lang diff --git a/htdocs/langs/en_IN/incoterm.lang b/public/langs/en_IN/incoterm.lang similarity index 100% rename from htdocs/langs/en_IN/incoterm.lang rename to public/langs/en_IN/incoterm.lang diff --git a/htdocs/langs/en_IN/install.lang b/public/langs/en_IN/install.lang similarity index 100% rename from htdocs/langs/en_IN/install.lang rename to public/langs/en_IN/install.lang diff --git a/htdocs/langs/en_IN/interventions.lang b/public/langs/en_IN/interventions.lang similarity index 100% rename from htdocs/langs/en_IN/interventions.lang rename to public/langs/en_IN/interventions.lang diff --git a/htdocs/langs/en_IN/languages.lang b/public/langs/en_IN/languages.lang similarity index 100% rename from htdocs/langs/en_IN/languages.lang rename to public/langs/en_IN/languages.lang diff --git a/htdocs/langs/en_IN/ldap.lang b/public/langs/en_IN/ldap.lang similarity index 100% rename from htdocs/langs/en_IN/ldap.lang rename to public/langs/en_IN/ldap.lang diff --git a/htdocs/langs/en_IN/link.lang b/public/langs/en_IN/link.lang similarity index 100% rename from htdocs/langs/en_IN/link.lang rename to public/langs/en_IN/link.lang diff --git a/htdocs/langs/en_IN/loan.lang b/public/langs/en_IN/loan.lang similarity index 100% rename from htdocs/langs/en_IN/loan.lang rename to public/langs/en_IN/loan.lang diff --git a/htdocs/langs/en_IN/mailmanspip.lang b/public/langs/en_IN/mailmanspip.lang similarity index 100% rename from htdocs/langs/en_IN/mailmanspip.lang rename to public/langs/en_IN/mailmanspip.lang diff --git a/htdocs/langs/en_IN/mails.lang b/public/langs/en_IN/mails.lang similarity index 100% rename from htdocs/langs/en_IN/mails.lang rename to public/langs/en_IN/mails.lang diff --git a/htdocs/langs/en_IN/main.lang b/public/langs/en_IN/main.lang similarity index 100% rename from htdocs/langs/en_IN/main.lang rename to public/langs/en_IN/main.lang diff --git a/htdocs/langs/en_IN/margins.lang b/public/langs/en_IN/margins.lang similarity index 100% rename from htdocs/langs/en_IN/margins.lang rename to public/langs/en_IN/margins.lang diff --git a/htdocs/langs/en_IN/members.lang b/public/langs/en_IN/members.lang similarity index 100% rename from htdocs/langs/en_IN/members.lang rename to public/langs/en_IN/members.lang diff --git a/htdocs/langs/en_IN/oauth.lang b/public/langs/en_IN/oauth.lang similarity index 100% rename from htdocs/langs/en_IN/oauth.lang rename to public/langs/en_IN/oauth.lang diff --git a/htdocs/langs/en_IN/opensurvey.lang b/public/langs/en_IN/opensurvey.lang similarity index 100% rename from htdocs/langs/en_IN/opensurvey.lang rename to public/langs/en_IN/opensurvey.lang diff --git a/htdocs/langs/en_IN/orders.lang b/public/langs/en_IN/orders.lang similarity index 100% rename from htdocs/langs/en_IN/orders.lang rename to public/langs/en_IN/orders.lang diff --git a/htdocs/langs/en_IN/other.lang b/public/langs/en_IN/other.lang similarity index 100% rename from htdocs/langs/en_IN/other.lang rename to public/langs/en_IN/other.lang diff --git a/htdocs/langs/en_IN/paybox.lang b/public/langs/en_IN/paybox.lang similarity index 100% rename from htdocs/langs/en_IN/paybox.lang rename to public/langs/en_IN/paybox.lang diff --git a/htdocs/langs/en_IN/paypal.lang b/public/langs/en_IN/paypal.lang similarity index 100% rename from htdocs/langs/en_IN/paypal.lang rename to public/langs/en_IN/paypal.lang diff --git a/htdocs/langs/en_IN/printing.lang b/public/langs/en_IN/printing.lang similarity index 100% rename from htdocs/langs/en_IN/printing.lang rename to public/langs/en_IN/printing.lang diff --git a/htdocs/langs/en_IN/productbatch.lang b/public/langs/en_IN/productbatch.lang similarity index 100% rename from htdocs/langs/en_IN/productbatch.lang rename to public/langs/en_IN/productbatch.lang diff --git a/htdocs/langs/en_IN/products.lang b/public/langs/en_IN/products.lang similarity index 100% rename from htdocs/langs/en_IN/products.lang rename to public/langs/en_IN/products.lang diff --git a/htdocs/langs/en_IN/projects.lang b/public/langs/en_IN/projects.lang similarity index 100% rename from htdocs/langs/en_IN/projects.lang rename to public/langs/en_IN/projects.lang diff --git a/htdocs/langs/en_IN/propal.lang b/public/langs/en_IN/propal.lang similarity index 100% rename from htdocs/langs/en_IN/propal.lang rename to public/langs/en_IN/propal.lang diff --git a/htdocs/langs/en_IN/receiptprinter.lang b/public/langs/en_IN/receiptprinter.lang similarity index 100% rename from htdocs/langs/en_IN/receiptprinter.lang rename to public/langs/en_IN/receiptprinter.lang diff --git a/htdocs/langs/en_IN/resource.lang b/public/langs/en_IN/resource.lang similarity index 100% rename from htdocs/langs/en_IN/resource.lang rename to public/langs/en_IN/resource.lang diff --git a/htdocs/langs/en_IN/salaries.lang b/public/langs/en_IN/salaries.lang similarity index 100% rename from htdocs/langs/en_IN/salaries.lang rename to public/langs/en_IN/salaries.lang diff --git a/htdocs/langs/en_IN/sendings.lang b/public/langs/en_IN/sendings.lang similarity index 100% rename from htdocs/langs/en_IN/sendings.lang rename to public/langs/en_IN/sendings.lang diff --git a/htdocs/langs/en_IN/sms.lang b/public/langs/en_IN/sms.lang similarity index 100% rename from htdocs/langs/en_IN/sms.lang rename to public/langs/en_IN/sms.lang diff --git a/htdocs/langs/en_IN/stocks.lang b/public/langs/en_IN/stocks.lang similarity index 100% rename from htdocs/langs/en_IN/stocks.lang rename to public/langs/en_IN/stocks.lang diff --git a/htdocs/langs/en_IN/supplier_proposal.lang b/public/langs/en_IN/supplier_proposal.lang similarity index 100% rename from htdocs/langs/en_IN/supplier_proposal.lang rename to public/langs/en_IN/supplier_proposal.lang diff --git a/htdocs/langs/en_IN/suppliers.lang b/public/langs/en_IN/suppliers.lang similarity index 100% rename from htdocs/langs/en_IN/suppliers.lang rename to public/langs/en_IN/suppliers.lang diff --git a/htdocs/langs/en_IN/trips.lang b/public/langs/en_IN/trips.lang similarity index 100% rename from htdocs/langs/en_IN/trips.lang rename to public/langs/en_IN/trips.lang diff --git a/htdocs/langs/en_IN/users.lang b/public/langs/en_IN/users.lang similarity index 100% rename from htdocs/langs/en_IN/users.lang rename to public/langs/en_IN/users.lang diff --git a/htdocs/langs/en_IN/website.lang b/public/langs/en_IN/website.lang similarity index 100% rename from htdocs/langs/en_IN/website.lang rename to public/langs/en_IN/website.lang diff --git a/htdocs/langs/en_IN/withdrawals.lang b/public/langs/en_IN/withdrawals.lang similarity index 100% rename from htdocs/langs/en_IN/withdrawals.lang rename to public/langs/en_IN/withdrawals.lang diff --git a/htdocs/langs/en_IN/workflow.lang b/public/langs/en_IN/workflow.lang similarity index 100% rename from htdocs/langs/en_IN/workflow.lang rename to public/langs/en_IN/workflow.lang diff --git a/htdocs/langs/en_NZ/companies.lang b/public/langs/en_NZ/companies.lang similarity index 100% rename from htdocs/langs/en_NZ/companies.lang rename to public/langs/en_NZ/companies.lang diff --git a/htdocs/langs/en_NZ/compta.lang b/public/langs/en_NZ/compta.lang similarity index 100% rename from htdocs/langs/en_NZ/compta.lang rename to public/langs/en_NZ/compta.lang diff --git a/htdocs/langs/en_NZ/main.lang b/public/langs/en_NZ/main.lang similarity index 100% rename from htdocs/langs/en_NZ/main.lang rename to public/langs/en_NZ/main.lang diff --git a/htdocs/langs/en_SA/main.lang b/public/langs/en_SA/main.lang similarity index 100% rename from htdocs/langs/en_SA/main.lang rename to public/langs/en_SA/main.lang diff --git a/htdocs/langs/en_SA/propal.lang b/public/langs/en_SA/propal.lang similarity index 100% rename from htdocs/langs/en_SA/propal.lang rename to public/langs/en_SA/propal.lang diff --git a/htdocs/langs/en_US/accountancy.lang b/public/langs/en_US/accountancy.lang similarity index 100% rename from htdocs/langs/en_US/accountancy.lang rename to public/langs/en_US/accountancy.lang diff --git a/htdocs/langs/en_US/admin.lang b/public/langs/en_US/admin.lang similarity index 100% rename from htdocs/langs/en_US/admin.lang rename to public/langs/en_US/admin.lang diff --git a/htdocs/langs/en_US/agenda.lang b/public/langs/en_US/agenda.lang similarity index 100% rename from htdocs/langs/en_US/agenda.lang rename to public/langs/en_US/agenda.lang diff --git a/htdocs/langs/en_US/banks.lang b/public/langs/en_US/banks.lang similarity index 100% rename from htdocs/langs/en_US/banks.lang rename to public/langs/en_US/banks.lang diff --git a/htdocs/langs/en_US/bills.lang b/public/langs/en_US/bills.lang similarity index 100% rename from htdocs/langs/en_US/bills.lang rename to public/langs/en_US/bills.lang diff --git a/htdocs/langs/en_US/bookmarks.lang b/public/langs/en_US/bookmarks.lang similarity index 100% rename from htdocs/langs/en_US/bookmarks.lang rename to public/langs/en_US/bookmarks.lang diff --git a/htdocs/langs/en_US/boxes.lang b/public/langs/en_US/boxes.lang similarity index 100% rename from htdocs/langs/en_US/boxes.lang rename to public/langs/en_US/boxes.lang diff --git a/htdocs/langs/en_US/cashdesk.lang b/public/langs/en_US/cashdesk.lang similarity index 100% rename from htdocs/langs/en_US/cashdesk.lang rename to public/langs/en_US/cashdesk.lang diff --git a/htdocs/langs/en_US/categories.lang b/public/langs/en_US/categories.lang similarity index 100% rename from htdocs/langs/en_US/categories.lang rename to public/langs/en_US/categories.lang diff --git a/htdocs/langs/en_US/commercial.lang b/public/langs/en_US/commercial.lang similarity index 100% rename from htdocs/langs/en_US/commercial.lang rename to public/langs/en_US/commercial.lang diff --git a/htdocs/langs/en_US/companies.lang b/public/langs/en_US/companies.lang similarity index 100% rename from htdocs/langs/en_US/companies.lang rename to public/langs/en_US/companies.lang diff --git a/htdocs/langs/en_US/compta.lang b/public/langs/en_US/compta.lang similarity index 100% rename from htdocs/langs/en_US/compta.lang rename to public/langs/en_US/compta.lang diff --git a/htdocs/langs/en_US/contracts.lang b/public/langs/en_US/contracts.lang similarity index 100% rename from htdocs/langs/en_US/contracts.lang rename to public/langs/en_US/contracts.lang diff --git a/htdocs/langs/en_US/cron.lang b/public/langs/en_US/cron.lang similarity index 100% rename from htdocs/langs/en_US/cron.lang rename to public/langs/en_US/cron.lang diff --git a/htdocs/langs/en_US/deliveries.lang b/public/langs/en_US/deliveries.lang similarity index 100% rename from htdocs/langs/en_US/deliveries.lang rename to public/langs/en_US/deliveries.lang diff --git a/htdocs/langs/en_US/dict.lang b/public/langs/en_US/dict.lang similarity index 100% rename from htdocs/langs/en_US/dict.lang rename to public/langs/en_US/dict.lang diff --git a/htdocs/langs/en_US/donations.lang b/public/langs/en_US/donations.lang similarity index 100% rename from htdocs/langs/en_US/donations.lang rename to public/langs/en_US/donations.lang diff --git a/htdocs/langs/en_US/ecm.lang b/public/langs/en_US/ecm.lang similarity index 100% rename from htdocs/langs/en_US/ecm.lang rename to public/langs/en_US/ecm.lang diff --git a/htdocs/langs/en_US/errors.lang b/public/langs/en_US/errors.lang similarity index 100% rename from htdocs/langs/en_US/errors.lang rename to public/langs/en_US/errors.lang diff --git a/htdocs/langs/en_US/exports.lang b/public/langs/en_US/exports.lang similarity index 100% rename from htdocs/langs/en_US/exports.lang rename to public/langs/en_US/exports.lang diff --git a/htdocs/langs/en_US/externalsite.lang b/public/langs/en_US/externalsite.lang similarity index 100% rename from htdocs/langs/en_US/externalsite.lang rename to public/langs/en_US/externalsite.lang diff --git a/htdocs/langs/en_US/ftp.lang b/public/langs/en_US/ftp.lang similarity index 100% rename from htdocs/langs/en_US/ftp.lang rename to public/langs/en_US/ftp.lang diff --git a/htdocs/langs/en_US/help.lang b/public/langs/en_US/help.lang similarity index 100% rename from htdocs/langs/en_US/help.lang rename to public/langs/en_US/help.lang diff --git a/htdocs/langs/en_US/holiday.lang b/public/langs/en_US/holiday.lang similarity index 100% rename from htdocs/langs/en_US/holiday.lang rename to public/langs/en_US/holiday.lang diff --git a/htdocs/langs/en_US/hrm.lang b/public/langs/en_US/hrm.lang similarity index 100% rename from htdocs/langs/en_US/hrm.lang rename to public/langs/en_US/hrm.lang diff --git a/htdocs/langs/en_US/incoterm.lang b/public/langs/en_US/incoterm.lang similarity index 100% rename from htdocs/langs/en_US/incoterm.lang rename to public/langs/en_US/incoterm.lang diff --git a/htdocs/langs/en_US/install.lang b/public/langs/en_US/install.lang similarity index 100% rename from htdocs/langs/en_US/install.lang rename to public/langs/en_US/install.lang diff --git a/htdocs/langs/en_US/interventions.lang b/public/langs/en_US/interventions.lang similarity index 100% rename from htdocs/langs/en_US/interventions.lang rename to public/langs/en_US/interventions.lang diff --git a/htdocs/langs/en_US/languages.lang b/public/langs/en_US/languages.lang similarity index 100% rename from htdocs/langs/en_US/languages.lang rename to public/langs/en_US/languages.lang diff --git a/htdocs/langs/en_US/ldap.lang b/public/langs/en_US/ldap.lang similarity index 100% rename from htdocs/langs/en_US/ldap.lang rename to public/langs/en_US/ldap.lang diff --git a/htdocs/langs/en_US/link.lang b/public/langs/en_US/link.lang similarity index 100% rename from htdocs/langs/en_US/link.lang rename to public/langs/en_US/link.lang diff --git a/htdocs/langs/en_US/loan.lang b/public/langs/en_US/loan.lang similarity index 100% rename from htdocs/langs/en_US/loan.lang rename to public/langs/en_US/loan.lang diff --git a/htdocs/langs/en_US/mailmanspip.lang b/public/langs/en_US/mailmanspip.lang similarity index 100% rename from htdocs/langs/en_US/mailmanspip.lang rename to public/langs/en_US/mailmanspip.lang diff --git a/htdocs/langs/en_US/mails.lang b/public/langs/en_US/mails.lang similarity index 100% rename from htdocs/langs/en_US/mails.lang rename to public/langs/en_US/mails.lang diff --git a/htdocs/langs/en_US/main.lang b/public/langs/en_US/main.lang similarity index 100% rename from htdocs/langs/en_US/main.lang rename to public/langs/en_US/main.lang diff --git a/htdocs/langs/en_US/margins.lang b/public/langs/en_US/margins.lang similarity index 100% rename from htdocs/langs/en_US/margins.lang rename to public/langs/en_US/margins.lang diff --git a/htdocs/langs/en_US/members.lang b/public/langs/en_US/members.lang similarity index 100% rename from htdocs/langs/en_US/members.lang rename to public/langs/en_US/members.lang diff --git a/htdocs/langs/en_US/multicurrency.lang b/public/langs/en_US/multicurrency.lang similarity index 100% rename from htdocs/langs/en_US/multicurrency.lang rename to public/langs/en_US/multicurrency.lang diff --git a/htdocs/langs/en_US/oauth.lang b/public/langs/en_US/oauth.lang similarity index 100% rename from htdocs/langs/en_US/oauth.lang rename to public/langs/en_US/oauth.lang diff --git a/htdocs/langs/en_US/opensurvey.lang b/public/langs/en_US/opensurvey.lang similarity index 100% rename from htdocs/langs/en_US/opensurvey.lang rename to public/langs/en_US/opensurvey.lang diff --git a/htdocs/langs/en_US/orders.lang b/public/langs/en_US/orders.lang similarity index 100% rename from htdocs/langs/en_US/orders.lang rename to public/langs/en_US/orders.lang diff --git a/htdocs/langs/en_US/other.lang b/public/langs/en_US/other.lang similarity index 100% rename from htdocs/langs/en_US/other.lang rename to public/langs/en_US/other.lang diff --git a/htdocs/langs/en_US/paybox.lang b/public/langs/en_US/paybox.lang similarity index 100% rename from htdocs/langs/en_US/paybox.lang rename to public/langs/en_US/paybox.lang diff --git a/htdocs/langs/en_US/paypal.lang b/public/langs/en_US/paypal.lang similarity index 100% rename from htdocs/langs/en_US/paypal.lang rename to public/langs/en_US/paypal.lang diff --git a/htdocs/langs/en_US/printing.lang b/public/langs/en_US/printing.lang similarity index 100% rename from htdocs/langs/en_US/printing.lang rename to public/langs/en_US/printing.lang diff --git a/htdocs/langs/en_US/productbatch.lang b/public/langs/en_US/productbatch.lang similarity index 100% rename from htdocs/langs/en_US/productbatch.lang rename to public/langs/en_US/productbatch.lang diff --git a/htdocs/langs/en_US/products.lang b/public/langs/en_US/products.lang similarity index 100% rename from htdocs/langs/en_US/products.lang rename to public/langs/en_US/products.lang diff --git a/htdocs/langs/en_US/projects.lang b/public/langs/en_US/projects.lang similarity index 100% rename from htdocs/langs/en_US/projects.lang rename to public/langs/en_US/projects.lang diff --git a/htdocs/langs/en_US/propal.lang b/public/langs/en_US/propal.lang similarity index 100% rename from htdocs/langs/en_US/propal.lang rename to public/langs/en_US/propal.lang diff --git a/htdocs/langs/en_US/receiptprinter.lang b/public/langs/en_US/receiptprinter.lang similarity index 100% rename from htdocs/langs/en_US/receiptprinter.lang rename to public/langs/en_US/receiptprinter.lang diff --git a/htdocs/langs/en_US/resource.lang b/public/langs/en_US/resource.lang similarity index 100% rename from htdocs/langs/en_US/resource.lang rename to public/langs/en_US/resource.lang diff --git a/htdocs/langs/en_US/salaries.lang b/public/langs/en_US/salaries.lang similarity index 100% rename from htdocs/langs/en_US/salaries.lang rename to public/langs/en_US/salaries.lang diff --git a/htdocs/langs/en_US/sendings.lang b/public/langs/en_US/sendings.lang similarity index 100% rename from htdocs/langs/en_US/sendings.lang rename to public/langs/en_US/sendings.lang diff --git a/htdocs/langs/en_US/sms.lang b/public/langs/en_US/sms.lang similarity index 100% rename from htdocs/langs/en_US/sms.lang rename to public/langs/en_US/sms.lang diff --git a/htdocs/langs/en_US/stocks.lang b/public/langs/en_US/stocks.lang similarity index 100% rename from htdocs/langs/en_US/stocks.lang rename to public/langs/en_US/stocks.lang diff --git a/htdocs/langs/en_US/supplier_proposal.lang b/public/langs/en_US/supplier_proposal.lang similarity index 100% rename from htdocs/langs/en_US/supplier_proposal.lang rename to public/langs/en_US/supplier_proposal.lang diff --git a/htdocs/langs/en_US/suppliers.lang b/public/langs/en_US/suppliers.lang similarity index 100% rename from htdocs/langs/en_US/suppliers.lang rename to public/langs/en_US/suppliers.lang diff --git a/htdocs/langs/en_US/trips.lang b/public/langs/en_US/trips.lang similarity index 100% rename from htdocs/langs/en_US/trips.lang rename to public/langs/en_US/trips.lang diff --git a/htdocs/langs/en_US/users.lang b/public/langs/en_US/users.lang similarity index 100% rename from htdocs/langs/en_US/users.lang rename to public/langs/en_US/users.lang diff --git a/htdocs/langs/en_US/website.lang b/public/langs/en_US/website.lang similarity index 100% rename from htdocs/langs/en_US/website.lang rename to public/langs/en_US/website.lang diff --git a/htdocs/langs/en_US/withdrawals.lang b/public/langs/en_US/withdrawals.lang similarity index 100% rename from htdocs/langs/en_US/withdrawals.lang rename to public/langs/en_US/withdrawals.lang diff --git a/htdocs/langs/en_US/workflow.lang b/public/langs/en_US/workflow.lang similarity index 100% rename from htdocs/langs/en_US/workflow.lang rename to public/langs/en_US/workflow.lang diff --git a/htdocs/langs/en_ZA/main.lang b/public/langs/en_ZA/main.lang similarity index 100% rename from htdocs/langs/en_ZA/main.lang rename to public/langs/en_ZA/main.lang diff --git a/htdocs/langs/es_AR/accountancy.lang b/public/langs/es_AR/accountancy.lang similarity index 100% rename from htdocs/langs/es_AR/accountancy.lang rename to public/langs/es_AR/accountancy.lang diff --git a/htdocs/langs/es_AR/admin.lang b/public/langs/es_AR/admin.lang similarity index 100% rename from htdocs/langs/es_AR/admin.lang rename to public/langs/es_AR/admin.lang diff --git a/htdocs/langs/es_AR/agenda.lang b/public/langs/es_AR/agenda.lang similarity index 100% rename from htdocs/langs/es_AR/agenda.lang rename to public/langs/es_AR/agenda.lang diff --git a/htdocs/langs/es_AR/banks.lang b/public/langs/es_AR/banks.lang similarity index 100% rename from htdocs/langs/es_AR/banks.lang rename to public/langs/es_AR/banks.lang diff --git a/htdocs/langs/es_AR/bills.lang b/public/langs/es_AR/bills.lang similarity index 100% rename from htdocs/langs/es_AR/bills.lang rename to public/langs/es_AR/bills.lang diff --git a/htdocs/langs/es_AR/bookmarks.lang b/public/langs/es_AR/bookmarks.lang similarity index 100% rename from htdocs/langs/es_AR/bookmarks.lang rename to public/langs/es_AR/bookmarks.lang diff --git a/htdocs/langs/es_AR/boxes.lang b/public/langs/es_AR/boxes.lang similarity index 100% rename from htdocs/langs/es_AR/boxes.lang rename to public/langs/es_AR/boxes.lang diff --git a/htdocs/langs/es_AR/cashdesk.lang b/public/langs/es_AR/cashdesk.lang similarity index 100% rename from htdocs/langs/es_AR/cashdesk.lang rename to public/langs/es_AR/cashdesk.lang diff --git a/htdocs/langs/es_AR/categories.lang b/public/langs/es_AR/categories.lang similarity index 100% rename from htdocs/langs/es_AR/categories.lang rename to public/langs/es_AR/categories.lang diff --git a/htdocs/langs/es_AR/commercial.lang b/public/langs/es_AR/commercial.lang similarity index 100% rename from htdocs/langs/es_AR/commercial.lang rename to public/langs/es_AR/commercial.lang diff --git a/htdocs/langs/es_AR/companies.lang b/public/langs/es_AR/companies.lang similarity index 100% rename from htdocs/langs/es_AR/companies.lang rename to public/langs/es_AR/companies.lang diff --git a/htdocs/langs/es_AR/compta.lang b/public/langs/es_AR/compta.lang similarity index 100% rename from htdocs/langs/es_AR/compta.lang rename to public/langs/es_AR/compta.lang diff --git a/htdocs/langs/es_AR/contracts.lang b/public/langs/es_AR/contracts.lang similarity index 100% rename from htdocs/langs/es_AR/contracts.lang rename to public/langs/es_AR/contracts.lang diff --git a/htdocs/langs/es_AR/cron.lang b/public/langs/es_AR/cron.lang similarity index 100% rename from htdocs/langs/es_AR/cron.lang rename to public/langs/es_AR/cron.lang diff --git a/htdocs/langs/es_AR/deliveries.lang b/public/langs/es_AR/deliveries.lang similarity index 100% rename from htdocs/langs/es_AR/deliveries.lang rename to public/langs/es_AR/deliveries.lang diff --git a/htdocs/langs/es_AR/dict.lang b/public/langs/es_AR/dict.lang similarity index 100% rename from htdocs/langs/es_AR/dict.lang rename to public/langs/es_AR/dict.lang diff --git a/htdocs/langs/es_AR/donations.lang b/public/langs/es_AR/donations.lang similarity index 100% rename from htdocs/langs/es_AR/donations.lang rename to public/langs/es_AR/donations.lang diff --git a/htdocs/langs/es_AR/ecm.lang b/public/langs/es_AR/ecm.lang similarity index 100% rename from htdocs/langs/es_AR/ecm.lang rename to public/langs/es_AR/ecm.lang diff --git a/htdocs/langs/es_AR/errors.lang b/public/langs/es_AR/errors.lang similarity index 100% rename from htdocs/langs/es_AR/errors.lang rename to public/langs/es_AR/errors.lang diff --git a/htdocs/langs/es_AR/exports.lang b/public/langs/es_AR/exports.lang similarity index 100% rename from htdocs/langs/es_AR/exports.lang rename to public/langs/es_AR/exports.lang diff --git a/htdocs/langs/es_AR/externalsite.lang b/public/langs/es_AR/externalsite.lang similarity index 100% rename from htdocs/langs/es_AR/externalsite.lang rename to public/langs/es_AR/externalsite.lang diff --git a/htdocs/langs/es_AR/ftp.lang b/public/langs/es_AR/ftp.lang similarity index 100% rename from htdocs/langs/es_AR/ftp.lang rename to public/langs/es_AR/ftp.lang diff --git a/htdocs/langs/es_AR/help.lang b/public/langs/es_AR/help.lang similarity index 100% rename from htdocs/langs/es_AR/help.lang rename to public/langs/es_AR/help.lang diff --git a/htdocs/langs/es_AR/holiday.lang b/public/langs/es_AR/holiday.lang similarity index 100% rename from htdocs/langs/es_AR/holiday.lang rename to public/langs/es_AR/holiday.lang diff --git a/htdocs/langs/es_AR/hrm.lang b/public/langs/es_AR/hrm.lang similarity index 100% rename from htdocs/langs/es_AR/hrm.lang rename to public/langs/es_AR/hrm.lang diff --git a/htdocs/langs/es_AR/incoterm.lang b/public/langs/es_AR/incoterm.lang similarity index 100% rename from htdocs/langs/es_AR/incoterm.lang rename to public/langs/es_AR/incoterm.lang diff --git a/htdocs/langs/es_AR/install.lang b/public/langs/es_AR/install.lang similarity index 100% rename from htdocs/langs/es_AR/install.lang rename to public/langs/es_AR/install.lang diff --git a/htdocs/langs/es_AR/interventions.lang b/public/langs/es_AR/interventions.lang similarity index 100% rename from htdocs/langs/es_AR/interventions.lang rename to public/langs/es_AR/interventions.lang diff --git a/htdocs/langs/es_AR/languages.lang b/public/langs/es_AR/languages.lang similarity index 100% rename from htdocs/langs/es_AR/languages.lang rename to public/langs/es_AR/languages.lang diff --git a/htdocs/langs/es_AR/ldap.lang b/public/langs/es_AR/ldap.lang similarity index 100% rename from htdocs/langs/es_AR/ldap.lang rename to public/langs/es_AR/ldap.lang diff --git a/htdocs/langs/es_AR/link.lang b/public/langs/es_AR/link.lang similarity index 100% rename from htdocs/langs/es_AR/link.lang rename to public/langs/es_AR/link.lang diff --git a/htdocs/langs/es_AR/loan.lang b/public/langs/es_AR/loan.lang similarity index 100% rename from htdocs/langs/es_AR/loan.lang rename to public/langs/es_AR/loan.lang diff --git a/htdocs/langs/es_AR/mailmanspip.lang b/public/langs/es_AR/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_AR/mailmanspip.lang rename to public/langs/es_AR/mailmanspip.lang diff --git a/htdocs/langs/es_AR/mails.lang b/public/langs/es_AR/mails.lang similarity index 100% rename from htdocs/langs/es_AR/mails.lang rename to public/langs/es_AR/mails.lang diff --git a/htdocs/langs/es_AR/main.lang b/public/langs/es_AR/main.lang similarity index 100% rename from htdocs/langs/es_AR/main.lang rename to public/langs/es_AR/main.lang diff --git a/htdocs/langs/es_AR/margins.lang b/public/langs/es_AR/margins.lang similarity index 100% rename from htdocs/langs/es_AR/margins.lang rename to public/langs/es_AR/margins.lang diff --git a/htdocs/langs/es_AR/members.lang b/public/langs/es_AR/members.lang similarity index 100% rename from htdocs/langs/es_AR/members.lang rename to public/langs/es_AR/members.lang diff --git a/htdocs/langs/es_AR/oauth.lang b/public/langs/es_AR/oauth.lang similarity index 100% rename from htdocs/langs/es_AR/oauth.lang rename to public/langs/es_AR/oauth.lang diff --git a/htdocs/langs/es_AR/opensurvey.lang b/public/langs/es_AR/opensurvey.lang similarity index 100% rename from htdocs/langs/es_AR/opensurvey.lang rename to public/langs/es_AR/opensurvey.lang diff --git a/htdocs/langs/es_AR/orders.lang b/public/langs/es_AR/orders.lang similarity index 100% rename from htdocs/langs/es_AR/orders.lang rename to public/langs/es_AR/orders.lang diff --git a/htdocs/langs/es_AR/other.lang b/public/langs/es_AR/other.lang similarity index 100% rename from htdocs/langs/es_AR/other.lang rename to public/langs/es_AR/other.lang diff --git a/htdocs/langs/es_AR/paybox.lang b/public/langs/es_AR/paybox.lang similarity index 100% rename from htdocs/langs/es_AR/paybox.lang rename to public/langs/es_AR/paybox.lang diff --git a/htdocs/langs/es_AR/paypal.lang b/public/langs/es_AR/paypal.lang similarity index 100% rename from htdocs/langs/es_AR/paypal.lang rename to public/langs/es_AR/paypal.lang diff --git a/htdocs/langs/es_AR/printing.lang b/public/langs/es_AR/printing.lang similarity index 100% rename from htdocs/langs/es_AR/printing.lang rename to public/langs/es_AR/printing.lang diff --git a/htdocs/langs/es_AR/productbatch.lang b/public/langs/es_AR/productbatch.lang similarity index 100% rename from htdocs/langs/es_AR/productbatch.lang rename to public/langs/es_AR/productbatch.lang diff --git a/htdocs/langs/es_AR/products.lang b/public/langs/es_AR/products.lang similarity index 100% rename from htdocs/langs/es_AR/products.lang rename to public/langs/es_AR/products.lang diff --git a/htdocs/langs/es_AR/projects.lang b/public/langs/es_AR/projects.lang similarity index 100% rename from htdocs/langs/es_AR/projects.lang rename to public/langs/es_AR/projects.lang diff --git a/htdocs/langs/es_AR/propal.lang b/public/langs/es_AR/propal.lang similarity index 100% rename from htdocs/langs/es_AR/propal.lang rename to public/langs/es_AR/propal.lang diff --git a/htdocs/langs/es_AR/receiptprinter.lang b/public/langs/es_AR/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_AR/receiptprinter.lang rename to public/langs/es_AR/receiptprinter.lang diff --git a/htdocs/langs/es_AR/resource.lang b/public/langs/es_AR/resource.lang similarity index 100% rename from htdocs/langs/es_AR/resource.lang rename to public/langs/es_AR/resource.lang diff --git a/htdocs/langs/es_AR/salaries.lang b/public/langs/es_AR/salaries.lang similarity index 100% rename from htdocs/langs/es_AR/salaries.lang rename to public/langs/es_AR/salaries.lang diff --git a/htdocs/langs/es_AR/sendings.lang b/public/langs/es_AR/sendings.lang similarity index 100% rename from htdocs/langs/es_AR/sendings.lang rename to public/langs/es_AR/sendings.lang diff --git a/htdocs/langs/es_AR/sms.lang b/public/langs/es_AR/sms.lang similarity index 100% rename from htdocs/langs/es_AR/sms.lang rename to public/langs/es_AR/sms.lang diff --git a/htdocs/langs/es_AR/stocks.lang b/public/langs/es_AR/stocks.lang similarity index 100% rename from htdocs/langs/es_AR/stocks.lang rename to public/langs/es_AR/stocks.lang diff --git a/htdocs/langs/es_AR/supplier_proposal.lang b/public/langs/es_AR/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_AR/supplier_proposal.lang rename to public/langs/es_AR/supplier_proposal.lang diff --git a/htdocs/langs/es_AR/suppliers.lang b/public/langs/es_AR/suppliers.lang similarity index 100% rename from htdocs/langs/es_AR/suppliers.lang rename to public/langs/es_AR/suppliers.lang diff --git a/htdocs/langs/es_AR/trips.lang b/public/langs/es_AR/trips.lang similarity index 100% rename from htdocs/langs/es_AR/trips.lang rename to public/langs/es_AR/trips.lang diff --git a/htdocs/langs/es_AR/users.lang b/public/langs/es_AR/users.lang similarity index 100% rename from htdocs/langs/es_AR/users.lang rename to public/langs/es_AR/users.lang diff --git a/htdocs/langs/es_AR/website.lang b/public/langs/es_AR/website.lang similarity index 100% rename from htdocs/langs/es_AR/website.lang rename to public/langs/es_AR/website.lang diff --git a/htdocs/langs/es_AR/withdrawals.lang b/public/langs/es_AR/withdrawals.lang similarity index 100% rename from htdocs/langs/es_AR/withdrawals.lang rename to public/langs/es_AR/withdrawals.lang diff --git a/htdocs/langs/es_AR/workflow.lang b/public/langs/es_AR/workflow.lang similarity index 100% rename from htdocs/langs/es_AR/workflow.lang rename to public/langs/es_AR/workflow.lang diff --git a/htdocs/langs/es_BO/accountancy.lang b/public/langs/es_BO/accountancy.lang similarity index 100% rename from htdocs/langs/es_BO/accountancy.lang rename to public/langs/es_BO/accountancy.lang diff --git a/htdocs/langs/es_BO/admin.lang b/public/langs/es_BO/admin.lang similarity index 100% rename from htdocs/langs/es_BO/admin.lang rename to public/langs/es_BO/admin.lang diff --git a/htdocs/langs/es_BO/agenda.lang b/public/langs/es_BO/agenda.lang similarity index 100% rename from htdocs/langs/es_BO/agenda.lang rename to public/langs/es_BO/agenda.lang diff --git a/htdocs/langs/es_BO/banks.lang b/public/langs/es_BO/banks.lang similarity index 100% rename from htdocs/langs/es_BO/banks.lang rename to public/langs/es_BO/banks.lang diff --git a/htdocs/langs/es_BO/bills.lang b/public/langs/es_BO/bills.lang similarity index 100% rename from htdocs/langs/es_BO/bills.lang rename to public/langs/es_BO/bills.lang diff --git a/htdocs/langs/es_BO/bookmarks.lang b/public/langs/es_BO/bookmarks.lang similarity index 100% rename from htdocs/langs/es_BO/bookmarks.lang rename to public/langs/es_BO/bookmarks.lang diff --git a/htdocs/langs/es_BO/boxes.lang b/public/langs/es_BO/boxes.lang similarity index 100% rename from htdocs/langs/es_BO/boxes.lang rename to public/langs/es_BO/boxes.lang diff --git a/htdocs/langs/es_BO/cashdesk.lang b/public/langs/es_BO/cashdesk.lang similarity index 100% rename from htdocs/langs/es_BO/cashdesk.lang rename to public/langs/es_BO/cashdesk.lang diff --git a/htdocs/langs/es_BO/categories.lang b/public/langs/es_BO/categories.lang similarity index 100% rename from htdocs/langs/es_BO/categories.lang rename to public/langs/es_BO/categories.lang diff --git a/htdocs/langs/es_BO/commercial.lang b/public/langs/es_BO/commercial.lang similarity index 100% rename from htdocs/langs/es_BO/commercial.lang rename to public/langs/es_BO/commercial.lang diff --git a/htdocs/langs/es_BO/companies.lang b/public/langs/es_BO/companies.lang similarity index 100% rename from htdocs/langs/es_BO/companies.lang rename to public/langs/es_BO/companies.lang diff --git a/htdocs/langs/es_BO/compta.lang b/public/langs/es_BO/compta.lang similarity index 100% rename from htdocs/langs/es_BO/compta.lang rename to public/langs/es_BO/compta.lang diff --git a/htdocs/langs/es_BO/contracts.lang b/public/langs/es_BO/contracts.lang similarity index 100% rename from htdocs/langs/es_BO/contracts.lang rename to public/langs/es_BO/contracts.lang diff --git a/htdocs/langs/es_BO/cron.lang b/public/langs/es_BO/cron.lang similarity index 100% rename from htdocs/langs/es_BO/cron.lang rename to public/langs/es_BO/cron.lang diff --git a/htdocs/langs/es_BO/deliveries.lang b/public/langs/es_BO/deliveries.lang similarity index 100% rename from htdocs/langs/es_BO/deliveries.lang rename to public/langs/es_BO/deliveries.lang diff --git a/htdocs/langs/es_BO/dict.lang b/public/langs/es_BO/dict.lang similarity index 100% rename from htdocs/langs/es_BO/dict.lang rename to public/langs/es_BO/dict.lang diff --git a/htdocs/langs/es_BO/donations.lang b/public/langs/es_BO/donations.lang similarity index 100% rename from htdocs/langs/es_BO/donations.lang rename to public/langs/es_BO/donations.lang diff --git a/htdocs/langs/es_BO/ecm.lang b/public/langs/es_BO/ecm.lang similarity index 100% rename from htdocs/langs/es_BO/ecm.lang rename to public/langs/es_BO/ecm.lang diff --git a/htdocs/langs/es_BO/errors.lang b/public/langs/es_BO/errors.lang similarity index 100% rename from htdocs/langs/es_BO/errors.lang rename to public/langs/es_BO/errors.lang diff --git a/htdocs/langs/es_BO/exports.lang b/public/langs/es_BO/exports.lang similarity index 100% rename from htdocs/langs/es_BO/exports.lang rename to public/langs/es_BO/exports.lang diff --git a/htdocs/langs/es_BO/externalsite.lang b/public/langs/es_BO/externalsite.lang similarity index 100% rename from htdocs/langs/es_BO/externalsite.lang rename to public/langs/es_BO/externalsite.lang diff --git a/htdocs/langs/es_BO/ftp.lang b/public/langs/es_BO/ftp.lang similarity index 100% rename from htdocs/langs/es_BO/ftp.lang rename to public/langs/es_BO/ftp.lang diff --git a/htdocs/langs/es_BO/help.lang b/public/langs/es_BO/help.lang similarity index 100% rename from htdocs/langs/es_BO/help.lang rename to public/langs/es_BO/help.lang diff --git a/htdocs/langs/es_BO/holiday.lang b/public/langs/es_BO/holiday.lang similarity index 100% rename from htdocs/langs/es_BO/holiday.lang rename to public/langs/es_BO/holiday.lang diff --git a/htdocs/langs/es_BO/hrm.lang b/public/langs/es_BO/hrm.lang similarity index 100% rename from htdocs/langs/es_BO/hrm.lang rename to public/langs/es_BO/hrm.lang diff --git a/htdocs/langs/es_BO/incoterm.lang b/public/langs/es_BO/incoterm.lang similarity index 100% rename from htdocs/langs/es_BO/incoterm.lang rename to public/langs/es_BO/incoterm.lang diff --git a/htdocs/langs/es_BO/install.lang b/public/langs/es_BO/install.lang similarity index 100% rename from htdocs/langs/es_BO/install.lang rename to public/langs/es_BO/install.lang diff --git a/htdocs/langs/es_BO/interventions.lang b/public/langs/es_BO/interventions.lang similarity index 100% rename from htdocs/langs/es_BO/interventions.lang rename to public/langs/es_BO/interventions.lang diff --git a/htdocs/langs/es_BO/languages.lang b/public/langs/es_BO/languages.lang similarity index 100% rename from htdocs/langs/es_BO/languages.lang rename to public/langs/es_BO/languages.lang diff --git a/htdocs/langs/es_BO/ldap.lang b/public/langs/es_BO/ldap.lang similarity index 100% rename from htdocs/langs/es_BO/ldap.lang rename to public/langs/es_BO/ldap.lang diff --git a/htdocs/langs/es_BO/link.lang b/public/langs/es_BO/link.lang similarity index 100% rename from htdocs/langs/es_BO/link.lang rename to public/langs/es_BO/link.lang diff --git a/htdocs/langs/es_BO/loan.lang b/public/langs/es_BO/loan.lang similarity index 100% rename from htdocs/langs/es_BO/loan.lang rename to public/langs/es_BO/loan.lang diff --git a/htdocs/langs/es_BO/mailmanspip.lang b/public/langs/es_BO/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_BO/mailmanspip.lang rename to public/langs/es_BO/mailmanspip.lang diff --git a/htdocs/langs/es_BO/mails.lang b/public/langs/es_BO/mails.lang similarity index 100% rename from htdocs/langs/es_BO/mails.lang rename to public/langs/es_BO/mails.lang diff --git a/htdocs/langs/es_BO/main.lang b/public/langs/es_BO/main.lang similarity index 100% rename from htdocs/langs/es_BO/main.lang rename to public/langs/es_BO/main.lang diff --git a/htdocs/langs/es_BO/margins.lang b/public/langs/es_BO/margins.lang similarity index 100% rename from htdocs/langs/es_BO/margins.lang rename to public/langs/es_BO/margins.lang diff --git a/htdocs/langs/es_BO/members.lang b/public/langs/es_BO/members.lang similarity index 100% rename from htdocs/langs/es_BO/members.lang rename to public/langs/es_BO/members.lang diff --git a/htdocs/langs/es_BO/oauth.lang b/public/langs/es_BO/oauth.lang similarity index 100% rename from htdocs/langs/es_BO/oauth.lang rename to public/langs/es_BO/oauth.lang diff --git a/htdocs/langs/es_BO/opensurvey.lang b/public/langs/es_BO/opensurvey.lang similarity index 100% rename from htdocs/langs/es_BO/opensurvey.lang rename to public/langs/es_BO/opensurvey.lang diff --git a/htdocs/langs/es_BO/orders.lang b/public/langs/es_BO/orders.lang similarity index 100% rename from htdocs/langs/es_BO/orders.lang rename to public/langs/es_BO/orders.lang diff --git a/htdocs/langs/es_BO/other.lang b/public/langs/es_BO/other.lang similarity index 100% rename from htdocs/langs/es_BO/other.lang rename to public/langs/es_BO/other.lang diff --git a/htdocs/langs/es_BO/paybox.lang b/public/langs/es_BO/paybox.lang similarity index 100% rename from htdocs/langs/es_BO/paybox.lang rename to public/langs/es_BO/paybox.lang diff --git a/htdocs/langs/es_BO/paypal.lang b/public/langs/es_BO/paypal.lang similarity index 100% rename from htdocs/langs/es_BO/paypal.lang rename to public/langs/es_BO/paypal.lang diff --git a/htdocs/langs/es_BO/printing.lang b/public/langs/es_BO/printing.lang similarity index 100% rename from htdocs/langs/es_BO/printing.lang rename to public/langs/es_BO/printing.lang diff --git a/htdocs/langs/es_BO/productbatch.lang b/public/langs/es_BO/productbatch.lang similarity index 100% rename from htdocs/langs/es_BO/productbatch.lang rename to public/langs/es_BO/productbatch.lang diff --git a/htdocs/langs/es_BO/products.lang b/public/langs/es_BO/products.lang similarity index 100% rename from htdocs/langs/es_BO/products.lang rename to public/langs/es_BO/products.lang diff --git a/htdocs/langs/es_BO/projects.lang b/public/langs/es_BO/projects.lang similarity index 100% rename from htdocs/langs/es_BO/projects.lang rename to public/langs/es_BO/projects.lang diff --git a/htdocs/langs/es_BO/propal.lang b/public/langs/es_BO/propal.lang similarity index 100% rename from htdocs/langs/es_BO/propal.lang rename to public/langs/es_BO/propal.lang diff --git a/htdocs/langs/es_BO/receiptprinter.lang b/public/langs/es_BO/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_BO/receiptprinter.lang rename to public/langs/es_BO/receiptprinter.lang diff --git a/htdocs/langs/es_BO/resource.lang b/public/langs/es_BO/resource.lang similarity index 100% rename from htdocs/langs/es_BO/resource.lang rename to public/langs/es_BO/resource.lang diff --git a/htdocs/langs/es_BO/salaries.lang b/public/langs/es_BO/salaries.lang similarity index 100% rename from htdocs/langs/es_BO/salaries.lang rename to public/langs/es_BO/salaries.lang diff --git a/htdocs/langs/es_BO/sendings.lang b/public/langs/es_BO/sendings.lang similarity index 100% rename from htdocs/langs/es_BO/sendings.lang rename to public/langs/es_BO/sendings.lang diff --git a/htdocs/langs/es_BO/sms.lang b/public/langs/es_BO/sms.lang similarity index 100% rename from htdocs/langs/es_BO/sms.lang rename to public/langs/es_BO/sms.lang diff --git a/htdocs/langs/es_BO/stocks.lang b/public/langs/es_BO/stocks.lang similarity index 100% rename from htdocs/langs/es_BO/stocks.lang rename to public/langs/es_BO/stocks.lang diff --git a/htdocs/langs/es_BO/supplier_proposal.lang b/public/langs/es_BO/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_BO/supplier_proposal.lang rename to public/langs/es_BO/supplier_proposal.lang diff --git a/htdocs/langs/es_BO/suppliers.lang b/public/langs/es_BO/suppliers.lang similarity index 100% rename from htdocs/langs/es_BO/suppliers.lang rename to public/langs/es_BO/suppliers.lang diff --git a/htdocs/langs/es_BO/trips.lang b/public/langs/es_BO/trips.lang similarity index 100% rename from htdocs/langs/es_BO/trips.lang rename to public/langs/es_BO/trips.lang diff --git a/htdocs/langs/es_BO/users.lang b/public/langs/es_BO/users.lang similarity index 100% rename from htdocs/langs/es_BO/users.lang rename to public/langs/es_BO/users.lang diff --git a/htdocs/langs/es_BO/website.lang b/public/langs/es_BO/website.lang similarity index 100% rename from htdocs/langs/es_BO/website.lang rename to public/langs/es_BO/website.lang diff --git a/htdocs/langs/es_BO/withdrawals.lang b/public/langs/es_BO/withdrawals.lang similarity index 100% rename from htdocs/langs/es_BO/withdrawals.lang rename to public/langs/es_BO/withdrawals.lang diff --git a/htdocs/langs/es_BO/workflow.lang b/public/langs/es_BO/workflow.lang similarity index 100% rename from htdocs/langs/es_BO/workflow.lang rename to public/langs/es_BO/workflow.lang diff --git a/htdocs/langs/es_CL/accountancy.lang b/public/langs/es_CL/accountancy.lang similarity index 100% rename from htdocs/langs/es_CL/accountancy.lang rename to public/langs/es_CL/accountancy.lang diff --git a/htdocs/langs/es_CL/admin.lang b/public/langs/es_CL/admin.lang similarity index 100% rename from htdocs/langs/es_CL/admin.lang rename to public/langs/es_CL/admin.lang diff --git a/htdocs/langs/es_CL/agenda.lang b/public/langs/es_CL/agenda.lang similarity index 100% rename from htdocs/langs/es_CL/agenda.lang rename to public/langs/es_CL/agenda.lang diff --git a/htdocs/langs/es_CL/banks.lang b/public/langs/es_CL/banks.lang similarity index 100% rename from htdocs/langs/es_CL/banks.lang rename to public/langs/es_CL/banks.lang diff --git a/htdocs/langs/es_CL/bills.lang b/public/langs/es_CL/bills.lang similarity index 100% rename from htdocs/langs/es_CL/bills.lang rename to public/langs/es_CL/bills.lang diff --git a/htdocs/langs/es_CL/bookmarks.lang b/public/langs/es_CL/bookmarks.lang similarity index 100% rename from htdocs/langs/es_CL/bookmarks.lang rename to public/langs/es_CL/bookmarks.lang diff --git a/htdocs/langs/es_CL/boxes.lang b/public/langs/es_CL/boxes.lang similarity index 100% rename from htdocs/langs/es_CL/boxes.lang rename to public/langs/es_CL/boxes.lang diff --git a/htdocs/langs/es_CL/cashdesk.lang b/public/langs/es_CL/cashdesk.lang similarity index 100% rename from htdocs/langs/es_CL/cashdesk.lang rename to public/langs/es_CL/cashdesk.lang diff --git a/htdocs/langs/es_CL/categories.lang b/public/langs/es_CL/categories.lang similarity index 100% rename from htdocs/langs/es_CL/categories.lang rename to public/langs/es_CL/categories.lang diff --git a/htdocs/langs/es_CL/commercial.lang b/public/langs/es_CL/commercial.lang similarity index 100% rename from htdocs/langs/es_CL/commercial.lang rename to public/langs/es_CL/commercial.lang diff --git a/htdocs/langs/es_CL/companies.lang b/public/langs/es_CL/companies.lang similarity index 100% rename from htdocs/langs/es_CL/companies.lang rename to public/langs/es_CL/companies.lang diff --git a/htdocs/langs/es_CL/compta.lang b/public/langs/es_CL/compta.lang similarity index 100% rename from htdocs/langs/es_CL/compta.lang rename to public/langs/es_CL/compta.lang diff --git a/htdocs/langs/es_CL/contracts.lang b/public/langs/es_CL/contracts.lang similarity index 100% rename from htdocs/langs/es_CL/contracts.lang rename to public/langs/es_CL/contracts.lang diff --git a/htdocs/langs/es_CL/cron.lang b/public/langs/es_CL/cron.lang similarity index 100% rename from htdocs/langs/es_CL/cron.lang rename to public/langs/es_CL/cron.lang diff --git a/htdocs/langs/es_CL/deliveries.lang b/public/langs/es_CL/deliveries.lang similarity index 100% rename from htdocs/langs/es_CL/deliveries.lang rename to public/langs/es_CL/deliveries.lang diff --git a/htdocs/langs/es_CL/dict.lang b/public/langs/es_CL/dict.lang similarity index 100% rename from htdocs/langs/es_CL/dict.lang rename to public/langs/es_CL/dict.lang diff --git a/htdocs/langs/es_CL/donations.lang b/public/langs/es_CL/donations.lang similarity index 100% rename from htdocs/langs/es_CL/donations.lang rename to public/langs/es_CL/donations.lang diff --git a/htdocs/langs/es_CL/ecm.lang b/public/langs/es_CL/ecm.lang similarity index 100% rename from htdocs/langs/es_CL/ecm.lang rename to public/langs/es_CL/ecm.lang diff --git a/htdocs/langs/es_CL/errors.lang b/public/langs/es_CL/errors.lang similarity index 100% rename from htdocs/langs/es_CL/errors.lang rename to public/langs/es_CL/errors.lang diff --git a/htdocs/langs/es_CL/exports.lang b/public/langs/es_CL/exports.lang similarity index 100% rename from htdocs/langs/es_CL/exports.lang rename to public/langs/es_CL/exports.lang diff --git a/htdocs/langs/es_CL/externalsite.lang b/public/langs/es_CL/externalsite.lang similarity index 100% rename from htdocs/langs/es_CL/externalsite.lang rename to public/langs/es_CL/externalsite.lang diff --git a/htdocs/langs/es_CL/ftp.lang b/public/langs/es_CL/ftp.lang similarity index 100% rename from htdocs/langs/es_CL/ftp.lang rename to public/langs/es_CL/ftp.lang diff --git a/htdocs/langs/es_CL/help.lang b/public/langs/es_CL/help.lang similarity index 100% rename from htdocs/langs/es_CL/help.lang rename to public/langs/es_CL/help.lang diff --git a/htdocs/langs/es_CL/holiday.lang b/public/langs/es_CL/holiday.lang similarity index 100% rename from htdocs/langs/es_CL/holiday.lang rename to public/langs/es_CL/holiday.lang diff --git a/htdocs/langs/es_CL/hrm.lang b/public/langs/es_CL/hrm.lang similarity index 100% rename from htdocs/langs/es_CL/hrm.lang rename to public/langs/es_CL/hrm.lang diff --git a/htdocs/langs/es_CL/incoterm.lang b/public/langs/es_CL/incoterm.lang similarity index 100% rename from htdocs/langs/es_CL/incoterm.lang rename to public/langs/es_CL/incoterm.lang diff --git a/htdocs/langs/es_CL/install.lang b/public/langs/es_CL/install.lang similarity index 100% rename from htdocs/langs/es_CL/install.lang rename to public/langs/es_CL/install.lang diff --git a/htdocs/langs/es_CL/interventions.lang b/public/langs/es_CL/interventions.lang similarity index 100% rename from htdocs/langs/es_CL/interventions.lang rename to public/langs/es_CL/interventions.lang diff --git a/htdocs/langs/es_CL/languages.lang b/public/langs/es_CL/languages.lang similarity index 100% rename from htdocs/langs/es_CL/languages.lang rename to public/langs/es_CL/languages.lang diff --git a/htdocs/langs/es_CL/ldap.lang b/public/langs/es_CL/ldap.lang similarity index 100% rename from htdocs/langs/es_CL/ldap.lang rename to public/langs/es_CL/ldap.lang diff --git a/htdocs/langs/es_CL/link.lang b/public/langs/es_CL/link.lang similarity index 100% rename from htdocs/langs/es_CL/link.lang rename to public/langs/es_CL/link.lang diff --git a/htdocs/langs/es_CL/loan.lang b/public/langs/es_CL/loan.lang similarity index 100% rename from htdocs/langs/es_CL/loan.lang rename to public/langs/es_CL/loan.lang diff --git a/htdocs/langs/es_CL/mailmanspip.lang b/public/langs/es_CL/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_CL/mailmanspip.lang rename to public/langs/es_CL/mailmanspip.lang diff --git a/htdocs/langs/es_CL/mails.lang b/public/langs/es_CL/mails.lang similarity index 100% rename from htdocs/langs/es_CL/mails.lang rename to public/langs/es_CL/mails.lang diff --git a/htdocs/langs/es_CL/main.lang b/public/langs/es_CL/main.lang similarity index 100% rename from htdocs/langs/es_CL/main.lang rename to public/langs/es_CL/main.lang diff --git a/htdocs/langs/es_CL/margins.lang b/public/langs/es_CL/margins.lang similarity index 100% rename from htdocs/langs/es_CL/margins.lang rename to public/langs/es_CL/margins.lang diff --git a/htdocs/langs/es_CL/members.lang b/public/langs/es_CL/members.lang similarity index 100% rename from htdocs/langs/es_CL/members.lang rename to public/langs/es_CL/members.lang diff --git a/htdocs/langs/es_CL/oauth.lang b/public/langs/es_CL/oauth.lang similarity index 100% rename from htdocs/langs/es_CL/oauth.lang rename to public/langs/es_CL/oauth.lang diff --git a/htdocs/langs/es_CL/opensurvey.lang b/public/langs/es_CL/opensurvey.lang similarity index 100% rename from htdocs/langs/es_CL/opensurvey.lang rename to public/langs/es_CL/opensurvey.lang diff --git a/htdocs/langs/es_CL/orders.lang b/public/langs/es_CL/orders.lang similarity index 100% rename from htdocs/langs/es_CL/orders.lang rename to public/langs/es_CL/orders.lang diff --git a/htdocs/langs/es_CL/other.lang b/public/langs/es_CL/other.lang similarity index 100% rename from htdocs/langs/es_CL/other.lang rename to public/langs/es_CL/other.lang diff --git a/htdocs/langs/es_CL/paybox.lang b/public/langs/es_CL/paybox.lang similarity index 100% rename from htdocs/langs/es_CL/paybox.lang rename to public/langs/es_CL/paybox.lang diff --git a/htdocs/langs/es_CL/paypal.lang b/public/langs/es_CL/paypal.lang similarity index 100% rename from htdocs/langs/es_CL/paypal.lang rename to public/langs/es_CL/paypal.lang diff --git a/htdocs/langs/es_CL/printing.lang b/public/langs/es_CL/printing.lang similarity index 100% rename from htdocs/langs/es_CL/printing.lang rename to public/langs/es_CL/printing.lang diff --git a/htdocs/langs/es_CL/productbatch.lang b/public/langs/es_CL/productbatch.lang similarity index 100% rename from htdocs/langs/es_CL/productbatch.lang rename to public/langs/es_CL/productbatch.lang diff --git a/htdocs/langs/es_CL/products.lang b/public/langs/es_CL/products.lang similarity index 100% rename from htdocs/langs/es_CL/products.lang rename to public/langs/es_CL/products.lang diff --git a/htdocs/langs/es_CL/projects.lang b/public/langs/es_CL/projects.lang similarity index 100% rename from htdocs/langs/es_CL/projects.lang rename to public/langs/es_CL/projects.lang diff --git a/htdocs/langs/es_CL/propal.lang b/public/langs/es_CL/propal.lang similarity index 100% rename from htdocs/langs/es_CL/propal.lang rename to public/langs/es_CL/propal.lang diff --git a/htdocs/langs/es_CL/receiptprinter.lang b/public/langs/es_CL/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_CL/receiptprinter.lang rename to public/langs/es_CL/receiptprinter.lang diff --git a/htdocs/langs/es_CL/resource.lang b/public/langs/es_CL/resource.lang similarity index 100% rename from htdocs/langs/es_CL/resource.lang rename to public/langs/es_CL/resource.lang diff --git a/htdocs/langs/es_CL/salaries.lang b/public/langs/es_CL/salaries.lang similarity index 100% rename from htdocs/langs/es_CL/salaries.lang rename to public/langs/es_CL/salaries.lang diff --git a/htdocs/langs/es_CL/sendings.lang b/public/langs/es_CL/sendings.lang similarity index 100% rename from htdocs/langs/es_CL/sendings.lang rename to public/langs/es_CL/sendings.lang diff --git a/htdocs/langs/es_CL/sms.lang b/public/langs/es_CL/sms.lang similarity index 100% rename from htdocs/langs/es_CL/sms.lang rename to public/langs/es_CL/sms.lang diff --git a/htdocs/langs/es_CL/stocks.lang b/public/langs/es_CL/stocks.lang similarity index 100% rename from htdocs/langs/es_CL/stocks.lang rename to public/langs/es_CL/stocks.lang diff --git a/htdocs/langs/es_CL/supplier_proposal.lang b/public/langs/es_CL/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_CL/supplier_proposal.lang rename to public/langs/es_CL/supplier_proposal.lang diff --git a/htdocs/langs/es_CL/suppliers.lang b/public/langs/es_CL/suppliers.lang similarity index 100% rename from htdocs/langs/es_CL/suppliers.lang rename to public/langs/es_CL/suppliers.lang diff --git a/htdocs/langs/es_CL/trips.lang b/public/langs/es_CL/trips.lang similarity index 100% rename from htdocs/langs/es_CL/trips.lang rename to public/langs/es_CL/trips.lang diff --git a/htdocs/langs/es_CL/users.lang b/public/langs/es_CL/users.lang similarity index 100% rename from htdocs/langs/es_CL/users.lang rename to public/langs/es_CL/users.lang diff --git a/htdocs/langs/es_CL/website.lang b/public/langs/es_CL/website.lang similarity index 100% rename from htdocs/langs/es_CL/website.lang rename to public/langs/es_CL/website.lang diff --git a/htdocs/langs/es_CL/withdrawals.lang b/public/langs/es_CL/withdrawals.lang similarity index 100% rename from htdocs/langs/es_CL/withdrawals.lang rename to public/langs/es_CL/withdrawals.lang diff --git a/htdocs/langs/es_CL/workflow.lang b/public/langs/es_CL/workflow.lang similarity index 100% rename from htdocs/langs/es_CL/workflow.lang rename to public/langs/es_CL/workflow.lang diff --git a/htdocs/langs/es_CO/accountancy.lang b/public/langs/es_CO/accountancy.lang similarity index 100% rename from htdocs/langs/es_CO/accountancy.lang rename to public/langs/es_CO/accountancy.lang diff --git a/htdocs/langs/es_CO/admin.lang b/public/langs/es_CO/admin.lang similarity index 100% rename from htdocs/langs/es_CO/admin.lang rename to public/langs/es_CO/admin.lang diff --git a/htdocs/langs/es_CO/agenda.lang b/public/langs/es_CO/agenda.lang similarity index 100% rename from htdocs/langs/es_CO/agenda.lang rename to public/langs/es_CO/agenda.lang diff --git a/htdocs/langs/es_CO/banks.lang b/public/langs/es_CO/banks.lang similarity index 100% rename from htdocs/langs/es_CO/banks.lang rename to public/langs/es_CO/banks.lang diff --git a/htdocs/langs/es_CO/bills.lang b/public/langs/es_CO/bills.lang similarity index 100% rename from htdocs/langs/es_CO/bills.lang rename to public/langs/es_CO/bills.lang diff --git a/htdocs/langs/es_CO/bookmarks.lang b/public/langs/es_CO/bookmarks.lang similarity index 100% rename from htdocs/langs/es_CO/bookmarks.lang rename to public/langs/es_CO/bookmarks.lang diff --git a/htdocs/langs/es_CO/boxes.lang b/public/langs/es_CO/boxes.lang similarity index 100% rename from htdocs/langs/es_CO/boxes.lang rename to public/langs/es_CO/boxes.lang diff --git a/htdocs/langs/es_CO/cashdesk.lang b/public/langs/es_CO/cashdesk.lang similarity index 100% rename from htdocs/langs/es_CO/cashdesk.lang rename to public/langs/es_CO/cashdesk.lang diff --git a/htdocs/langs/es_CO/categories.lang b/public/langs/es_CO/categories.lang similarity index 100% rename from htdocs/langs/es_CO/categories.lang rename to public/langs/es_CO/categories.lang diff --git a/htdocs/langs/es_CO/commercial.lang b/public/langs/es_CO/commercial.lang similarity index 100% rename from htdocs/langs/es_CO/commercial.lang rename to public/langs/es_CO/commercial.lang diff --git a/htdocs/langs/es_CO/companies.lang b/public/langs/es_CO/companies.lang similarity index 100% rename from htdocs/langs/es_CO/companies.lang rename to public/langs/es_CO/companies.lang diff --git a/htdocs/langs/es_CO/compta.lang b/public/langs/es_CO/compta.lang similarity index 100% rename from htdocs/langs/es_CO/compta.lang rename to public/langs/es_CO/compta.lang diff --git a/htdocs/langs/es_CO/contracts.lang b/public/langs/es_CO/contracts.lang similarity index 100% rename from htdocs/langs/es_CO/contracts.lang rename to public/langs/es_CO/contracts.lang diff --git a/htdocs/langs/es_CO/cron.lang b/public/langs/es_CO/cron.lang similarity index 100% rename from htdocs/langs/es_CO/cron.lang rename to public/langs/es_CO/cron.lang diff --git a/htdocs/langs/es_CO/deliveries.lang b/public/langs/es_CO/deliveries.lang similarity index 100% rename from htdocs/langs/es_CO/deliveries.lang rename to public/langs/es_CO/deliveries.lang diff --git a/htdocs/langs/es_CO/dict.lang b/public/langs/es_CO/dict.lang similarity index 100% rename from htdocs/langs/es_CO/dict.lang rename to public/langs/es_CO/dict.lang diff --git a/htdocs/langs/es_CO/donations.lang b/public/langs/es_CO/donations.lang similarity index 100% rename from htdocs/langs/es_CO/donations.lang rename to public/langs/es_CO/donations.lang diff --git a/htdocs/langs/es_CO/ecm.lang b/public/langs/es_CO/ecm.lang similarity index 100% rename from htdocs/langs/es_CO/ecm.lang rename to public/langs/es_CO/ecm.lang diff --git a/htdocs/langs/es_CO/errors.lang b/public/langs/es_CO/errors.lang similarity index 100% rename from htdocs/langs/es_CO/errors.lang rename to public/langs/es_CO/errors.lang diff --git a/htdocs/langs/es_CO/exports.lang b/public/langs/es_CO/exports.lang similarity index 100% rename from htdocs/langs/es_CO/exports.lang rename to public/langs/es_CO/exports.lang diff --git a/htdocs/langs/es_CO/externalsite.lang b/public/langs/es_CO/externalsite.lang similarity index 100% rename from htdocs/langs/es_CO/externalsite.lang rename to public/langs/es_CO/externalsite.lang diff --git a/htdocs/langs/es_CO/ftp.lang b/public/langs/es_CO/ftp.lang similarity index 100% rename from htdocs/langs/es_CO/ftp.lang rename to public/langs/es_CO/ftp.lang diff --git a/htdocs/langs/es_CO/help.lang b/public/langs/es_CO/help.lang similarity index 100% rename from htdocs/langs/es_CO/help.lang rename to public/langs/es_CO/help.lang diff --git a/htdocs/langs/es_CO/holiday.lang b/public/langs/es_CO/holiday.lang similarity index 100% rename from htdocs/langs/es_CO/holiday.lang rename to public/langs/es_CO/holiday.lang diff --git a/htdocs/langs/es_CO/hrm.lang b/public/langs/es_CO/hrm.lang similarity index 100% rename from htdocs/langs/es_CO/hrm.lang rename to public/langs/es_CO/hrm.lang diff --git a/htdocs/langs/es_CO/incoterm.lang b/public/langs/es_CO/incoterm.lang similarity index 100% rename from htdocs/langs/es_CO/incoterm.lang rename to public/langs/es_CO/incoterm.lang diff --git a/htdocs/langs/es_CO/install.lang b/public/langs/es_CO/install.lang similarity index 100% rename from htdocs/langs/es_CO/install.lang rename to public/langs/es_CO/install.lang diff --git a/htdocs/langs/es_CO/interventions.lang b/public/langs/es_CO/interventions.lang similarity index 100% rename from htdocs/langs/es_CO/interventions.lang rename to public/langs/es_CO/interventions.lang diff --git a/htdocs/langs/es_CO/languages.lang b/public/langs/es_CO/languages.lang similarity index 100% rename from htdocs/langs/es_CO/languages.lang rename to public/langs/es_CO/languages.lang diff --git a/htdocs/langs/es_CO/ldap.lang b/public/langs/es_CO/ldap.lang similarity index 100% rename from htdocs/langs/es_CO/ldap.lang rename to public/langs/es_CO/ldap.lang diff --git a/htdocs/langs/es_CO/link.lang b/public/langs/es_CO/link.lang similarity index 100% rename from htdocs/langs/es_CO/link.lang rename to public/langs/es_CO/link.lang diff --git a/htdocs/langs/es_CO/loan.lang b/public/langs/es_CO/loan.lang similarity index 100% rename from htdocs/langs/es_CO/loan.lang rename to public/langs/es_CO/loan.lang diff --git a/htdocs/langs/es_CO/mailmanspip.lang b/public/langs/es_CO/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_CO/mailmanspip.lang rename to public/langs/es_CO/mailmanspip.lang diff --git a/htdocs/langs/es_CO/mails.lang b/public/langs/es_CO/mails.lang similarity index 100% rename from htdocs/langs/es_CO/mails.lang rename to public/langs/es_CO/mails.lang diff --git a/htdocs/langs/es_CO/main.lang b/public/langs/es_CO/main.lang similarity index 100% rename from htdocs/langs/es_CO/main.lang rename to public/langs/es_CO/main.lang diff --git a/htdocs/langs/es_CO/margins.lang b/public/langs/es_CO/margins.lang similarity index 100% rename from htdocs/langs/es_CO/margins.lang rename to public/langs/es_CO/margins.lang diff --git a/htdocs/langs/es_CO/members.lang b/public/langs/es_CO/members.lang similarity index 100% rename from htdocs/langs/es_CO/members.lang rename to public/langs/es_CO/members.lang diff --git a/htdocs/langs/es_CO/oauth.lang b/public/langs/es_CO/oauth.lang similarity index 100% rename from htdocs/langs/es_CO/oauth.lang rename to public/langs/es_CO/oauth.lang diff --git a/htdocs/langs/es_CO/opensurvey.lang b/public/langs/es_CO/opensurvey.lang similarity index 100% rename from htdocs/langs/es_CO/opensurvey.lang rename to public/langs/es_CO/opensurvey.lang diff --git a/htdocs/langs/es_CO/orders.lang b/public/langs/es_CO/orders.lang similarity index 100% rename from htdocs/langs/es_CO/orders.lang rename to public/langs/es_CO/orders.lang diff --git a/htdocs/langs/es_CO/other.lang b/public/langs/es_CO/other.lang similarity index 100% rename from htdocs/langs/es_CO/other.lang rename to public/langs/es_CO/other.lang diff --git a/htdocs/langs/es_CO/paybox.lang b/public/langs/es_CO/paybox.lang similarity index 100% rename from htdocs/langs/es_CO/paybox.lang rename to public/langs/es_CO/paybox.lang diff --git a/htdocs/langs/es_CO/paypal.lang b/public/langs/es_CO/paypal.lang similarity index 100% rename from htdocs/langs/es_CO/paypal.lang rename to public/langs/es_CO/paypal.lang diff --git a/htdocs/langs/es_CO/printing.lang b/public/langs/es_CO/printing.lang similarity index 100% rename from htdocs/langs/es_CO/printing.lang rename to public/langs/es_CO/printing.lang diff --git a/htdocs/langs/es_CO/productbatch.lang b/public/langs/es_CO/productbatch.lang similarity index 100% rename from htdocs/langs/es_CO/productbatch.lang rename to public/langs/es_CO/productbatch.lang diff --git a/htdocs/langs/es_CO/products.lang b/public/langs/es_CO/products.lang similarity index 100% rename from htdocs/langs/es_CO/products.lang rename to public/langs/es_CO/products.lang diff --git a/htdocs/langs/es_CO/projects.lang b/public/langs/es_CO/projects.lang similarity index 100% rename from htdocs/langs/es_CO/projects.lang rename to public/langs/es_CO/projects.lang diff --git a/htdocs/langs/es_CO/propal.lang b/public/langs/es_CO/propal.lang similarity index 100% rename from htdocs/langs/es_CO/propal.lang rename to public/langs/es_CO/propal.lang diff --git a/htdocs/langs/es_CO/receiptprinter.lang b/public/langs/es_CO/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_CO/receiptprinter.lang rename to public/langs/es_CO/receiptprinter.lang diff --git a/htdocs/langs/es_CO/resource.lang b/public/langs/es_CO/resource.lang similarity index 100% rename from htdocs/langs/es_CO/resource.lang rename to public/langs/es_CO/resource.lang diff --git a/htdocs/langs/es_CO/salaries.lang b/public/langs/es_CO/salaries.lang similarity index 100% rename from htdocs/langs/es_CO/salaries.lang rename to public/langs/es_CO/salaries.lang diff --git a/htdocs/langs/es_CO/sendings.lang b/public/langs/es_CO/sendings.lang similarity index 100% rename from htdocs/langs/es_CO/sendings.lang rename to public/langs/es_CO/sendings.lang diff --git a/htdocs/langs/es_CO/sms.lang b/public/langs/es_CO/sms.lang similarity index 100% rename from htdocs/langs/es_CO/sms.lang rename to public/langs/es_CO/sms.lang diff --git a/htdocs/langs/es_CO/stocks.lang b/public/langs/es_CO/stocks.lang similarity index 100% rename from htdocs/langs/es_CO/stocks.lang rename to public/langs/es_CO/stocks.lang diff --git a/htdocs/langs/es_CO/supplier_proposal.lang b/public/langs/es_CO/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_CO/supplier_proposal.lang rename to public/langs/es_CO/supplier_proposal.lang diff --git a/htdocs/langs/es_CO/suppliers.lang b/public/langs/es_CO/suppliers.lang similarity index 100% rename from htdocs/langs/es_CO/suppliers.lang rename to public/langs/es_CO/suppliers.lang diff --git a/htdocs/langs/es_CO/trips.lang b/public/langs/es_CO/trips.lang similarity index 100% rename from htdocs/langs/es_CO/trips.lang rename to public/langs/es_CO/trips.lang diff --git a/htdocs/langs/es_CO/users.lang b/public/langs/es_CO/users.lang similarity index 100% rename from htdocs/langs/es_CO/users.lang rename to public/langs/es_CO/users.lang diff --git a/htdocs/langs/es_CO/website.lang b/public/langs/es_CO/website.lang similarity index 100% rename from htdocs/langs/es_CO/website.lang rename to public/langs/es_CO/website.lang diff --git a/htdocs/langs/es_CO/withdrawals.lang b/public/langs/es_CO/withdrawals.lang similarity index 100% rename from htdocs/langs/es_CO/withdrawals.lang rename to public/langs/es_CO/withdrawals.lang diff --git a/htdocs/langs/es_CO/workflow.lang b/public/langs/es_CO/workflow.lang similarity index 100% rename from htdocs/langs/es_CO/workflow.lang rename to public/langs/es_CO/workflow.lang diff --git a/htdocs/langs/es_DO/accountancy.lang b/public/langs/es_DO/accountancy.lang similarity index 100% rename from htdocs/langs/es_DO/accountancy.lang rename to public/langs/es_DO/accountancy.lang diff --git a/htdocs/langs/es_DO/admin.lang b/public/langs/es_DO/admin.lang similarity index 100% rename from htdocs/langs/es_DO/admin.lang rename to public/langs/es_DO/admin.lang diff --git a/htdocs/langs/es_DO/agenda.lang b/public/langs/es_DO/agenda.lang similarity index 100% rename from htdocs/langs/es_DO/agenda.lang rename to public/langs/es_DO/agenda.lang diff --git a/htdocs/langs/es_DO/banks.lang b/public/langs/es_DO/banks.lang similarity index 100% rename from htdocs/langs/es_DO/banks.lang rename to public/langs/es_DO/banks.lang diff --git a/htdocs/langs/es_DO/bills.lang b/public/langs/es_DO/bills.lang similarity index 100% rename from htdocs/langs/es_DO/bills.lang rename to public/langs/es_DO/bills.lang diff --git a/htdocs/langs/es_DO/bookmarks.lang b/public/langs/es_DO/bookmarks.lang similarity index 100% rename from htdocs/langs/es_DO/bookmarks.lang rename to public/langs/es_DO/bookmarks.lang diff --git a/htdocs/langs/es_DO/boxes.lang b/public/langs/es_DO/boxes.lang similarity index 100% rename from htdocs/langs/es_DO/boxes.lang rename to public/langs/es_DO/boxes.lang diff --git a/htdocs/langs/es_DO/cashdesk.lang b/public/langs/es_DO/cashdesk.lang similarity index 100% rename from htdocs/langs/es_DO/cashdesk.lang rename to public/langs/es_DO/cashdesk.lang diff --git a/htdocs/langs/es_DO/categories.lang b/public/langs/es_DO/categories.lang similarity index 100% rename from htdocs/langs/es_DO/categories.lang rename to public/langs/es_DO/categories.lang diff --git a/htdocs/langs/es_DO/commercial.lang b/public/langs/es_DO/commercial.lang similarity index 100% rename from htdocs/langs/es_DO/commercial.lang rename to public/langs/es_DO/commercial.lang diff --git a/htdocs/langs/es_DO/companies.lang b/public/langs/es_DO/companies.lang similarity index 100% rename from htdocs/langs/es_DO/companies.lang rename to public/langs/es_DO/companies.lang diff --git a/htdocs/langs/es_DO/compta.lang b/public/langs/es_DO/compta.lang similarity index 100% rename from htdocs/langs/es_DO/compta.lang rename to public/langs/es_DO/compta.lang diff --git a/htdocs/langs/es_DO/contracts.lang b/public/langs/es_DO/contracts.lang similarity index 100% rename from htdocs/langs/es_DO/contracts.lang rename to public/langs/es_DO/contracts.lang diff --git a/htdocs/langs/es_DO/cron.lang b/public/langs/es_DO/cron.lang similarity index 100% rename from htdocs/langs/es_DO/cron.lang rename to public/langs/es_DO/cron.lang diff --git a/htdocs/langs/es_DO/deliveries.lang b/public/langs/es_DO/deliveries.lang similarity index 100% rename from htdocs/langs/es_DO/deliveries.lang rename to public/langs/es_DO/deliveries.lang diff --git a/htdocs/langs/es_DO/dict.lang b/public/langs/es_DO/dict.lang similarity index 100% rename from htdocs/langs/es_DO/dict.lang rename to public/langs/es_DO/dict.lang diff --git a/htdocs/langs/es_DO/donations.lang b/public/langs/es_DO/donations.lang similarity index 100% rename from htdocs/langs/es_DO/donations.lang rename to public/langs/es_DO/donations.lang diff --git a/htdocs/langs/es_DO/ecm.lang b/public/langs/es_DO/ecm.lang similarity index 100% rename from htdocs/langs/es_DO/ecm.lang rename to public/langs/es_DO/ecm.lang diff --git a/htdocs/langs/es_DO/errors.lang b/public/langs/es_DO/errors.lang similarity index 100% rename from htdocs/langs/es_DO/errors.lang rename to public/langs/es_DO/errors.lang diff --git a/htdocs/langs/es_DO/exports.lang b/public/langs/es_DO/exports.lang similarity index 100% rename from htdocs/langs/es_DO/exports.lang rename to public/langs/es_DO/exports.lang diff --git a/htdocs/langs/es_DO/externalsite.lang b/public/langs/es_DO/externalsite.lang similarity index 100% rename from htdocs/langs/es_DO/externalsite.lang rename to public/langs/es_DO/externalsite.lang diff --git a/htdocs/langs/es_DO/ftp.lang b/public/langs/es_DO/ftp.lang similarity index 100% rename from htdocs/langs/es_DO/ftp.lang rename to public/langs/es_DO/ftp.lang diff --git a/htdocs/langs/es_DO/help.lang b/public/langs/es_DO/help.lang similarity index 100% rename from htdocs/langs/es_DO/help.lang rename to public/langs/es_DO/help.lang diff --git a/htdocs/langs/es_DO/holiday.lang b/public/langs/es_DO/holiday.lang similarity index 100% rename from htdocs/langs/es_DO/holiday.lang rename to public/langs/es_DO/holiday.lang diff --git a/htdocs/langs/es_DO/hrm.lang b/public/langs/es_DO/hrm.lang similarity index 100% rename from htdocs/langs/es_DO/hrm.lang rename to public/langs/es_DO/hrm.lang diff --git a/htdocs/langs/es_DO/incoterm.lang b/public/langs/es_DO/incoterm.lang similarity index 100% rename from htdocs/langs/es_DO/incoterm.lang rename to public/langs/es_DO/incoterm.lang diff --git a/htdocs/langs/es_DO/install.lang b/public/langs/es_DO/install.lang similarity index 100% rename from htdocs/langs/es_DO/install.lang rename to public/langs/es_DO/install.lang diff --git a/htdocs/langs/es_DO/interventions.lang b/public/langs/es_DO/interventions.lang similarity index 100% rename from htdocs/langs/es_DO/interventions.lang rename to public/langs/es_DO/interventions.lang diff --git a/htdocs/langs/es_DO/languages.lang b/public/langs/es_DO/languages.lang similarity index 100% rename from htdocs/langs/es_DO/languages.lang rename to public/langs/es_DO/languages.lang diff --git a/htdocs/langs/es_DO/ldap.lang b/public/langs/es_DO/ldap.lang similarity index 100% rename from htdocs/langs/es_DO/ldap.lang rename to public/langs/es_DO/ldap.lang diff --git a/htdocs/langs/es_DO/link.lang b/public/langs/es_DO/link.lang similarity index 100% rename from htdocs/langs/es_DO/link.lang rename to public/langs/es_DO/link.lang diff --git a/htdocs/langs/es_DO/loan.lang b/public/langs/es_DO/loan.lang similarity index 100% rename from htdocs/langs/es_DO/loan.lang rename to public/langs/es_DO/loan.lang diff --git a/htdocs/langs/es_DO/mailmanspip.lang b/public/langs/es_DO/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_DO/mailmanspip.lang rename to public/langs/es_DO/mailmanspip.lang diff --git a/htdocs/langs/es_DO/mails.lang b/public/langs/es_DO/mails.lang similarity index 100% rename from htdocs/langs/es_DO/mails.lang rename to public/langs/es_DO/mails.lang diff --git a/htdocs/langs/es_DO/main.lang b/public/langs/es_DO/main.lang similarity index 100% rename from htdocs/langs/es_DO/main.lang rename to public/langs/es_DO/main.lang diff --git a/htdocs/langs/es_DO/margins.lang b/public/langs/es_DO/margins.lang similarity index 100% rename from htdocs/langs/es_DO/margins.lang rename to public/langs/es_DO/margins.lang diff --git a/htdocs/langs/es_DO/members.lang b/public/langs/es_DO/members.lang similarity index 100% rename from htdocs/langs/es_DO/members.lang rename to public/langs/es_DO/members.lang diff --git a/htdocs/langs/es_DO/oauth.lang b/public/langs/es_DO/oauth.lang similarity index 100% rename from htdocs/langs/es_DO/oauth.lang rename to public/langs/es_DO/oauth.lang diff --git a/htdocs/langs/es_DO/opensurvey.lang b/public/langs/es_DO/opensurvey.lang similarity index 100% rename from htdocs/langs/es_DO/opensurvey.lang rename to public/langs/es_DO/opensurvey.lang diff --git a/htdocs/langs/es_DO/orders.lang b/public/langs/es_DO/orders.lang similarity index 100% rename from htdocs/langs/es_DO/orders.lang rename to public/langs/es_DO/orders.lang diff --git a/htdocs/langs/es_DO/other.lang b/public/langs/es_DO/other.lang similarity index 100% rename from htdocs/langs/es_DO/other.lang rename to public/langs/es_DO/other.lang diff --git a/htdocs/langs/es_DO/paybox.lang b/public/langs/es_DO/paybox.lang similarity index 100% rename from htdocs/langs/es_DO/paybox.lang rename to public/langs/es_DO/paybox.lang diff --git a/htdocs/langs/es_DO/paypal.lang b/public/langs/es_DO/paypal.lang similarity index 100% rename from htdocs/langs/es_DO/paypal.lang rename to public/langs/es_DO/paypal.lang diff --git a/htdocs/langs/es_DO/printing.lang b/public/langs/es_DO/printing.lang similarity index 100% rename from htdocs/langs/es_DO/printing.lang rename to public/langs/es_DO/printing.lang diff --git a/htdocs/langs/es_DO/productbatch.lang b/public/langs/es_DO/productbatch.lang similarity index 100% rename from htdocs/langs/es_DO/productbatch.lang rename to public/langs/es_DO/productbatch.lang diff --git a/htdocs/langs/es_DO/products.lang b/public/langs/es_DO/products.lang similarity index 100% rename from htdocs/langs/es_DO/products.lang rename to public/langs/es_DO/products.lang diff --git a/htdocs/langs/es_DO/projects.lang b/public/langs/es_DO/projects.lang similarity index 100% rename from htdocs/langs/es_DO/projects.lang rename to public/langs/es_DO/projects.lang diff --git a/htdocs/langs/es_DO/propal.lang b/public/langs/es_DO/propal.lang similarity index 100% rename from htdocs/langs/es_DO/propal.lang rename to public/langs/es_DO/propal.lang diff --git a/htdocs/langs/es_DO/receiptprinter.lang b/public/langs/es_DO/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_DO/receiptprinter.lang rename to public/langs/es_DO/receiptprinter.lang diff --git a/htdocs/langs/es_DO/resource.lang b/public/langs/es_DO/resource.lang similarity index 100% rename from htdocs/langs/es_DO/resource.lang rename to public/langs/es_DO/resource.lang diff --git a/htdocs/langs/es_DO/salaries.lang b/public/langs/es_DO/salaries.lang similarity index 100% rename from htdocs/langs/es_DO/salaries.lang rename to public/langs/es_DO/salaries.lang diff --git a/htdocs/langs/es_DO/sendings.lang b/public/langs/es_DO/sendings.lang similarity index 100% rename from htdocs/langs/es_DO/sendings.lang rename to public/langs/es_DO/sendings.lang diff --git a/htdocs/langs/es_DO/sms.lang b/public/langs/es_DO/sms.lang similarity index 100% rename from htdocs/langs/es_DO/sms.lang rename to public/langs/es_DO/sms.lang diff --git a/htdocs/langs/es_DO/stocks.lang b/public/langs/es_DO/stocks.lang similarity index 100% rename from htdocs/langs/es_DO/stocks.lang rename to public/langs/es_DO/stocks.lang diff --git a/htdocs/langs/es_DO/supplier_proposal.lang b/public/langs/es_DO/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_DO/supplier_proposal.lang rename to public/langs/es_DO/supplier_proposal.lang diff --git a/htdocs/langs/es_DO/suppliers.lang b/public/langs/es_DO/suppliers.lang similarity index 100% rename from htdocs/langs/es_DO/suppliers.lang rename to public/langs/es_DO/suppliers.lang diff --git a/htdocs/langs/es_DO/trips.lang b/public/langs/es_DO/trips.lang similarity index 100% rename from htdocs/langs/es_DO/trips.lang rename to public/langs/es_DO/trips.lang diff --git a/htdocs/langs/es_DO/users.lang b/public/langs/es_DO/users.lang similarity index 100% rename from htdocs/langs/es_DO/users.lang rename to public/langs/es_DO/users.lang diff --git a/htdocs/langs/es_DO/website.lang b/public/langs/es_DO/website.lang similarity index 100% rename from htdocs/langs/es_DO/website.lang rename to public/langs/es_DO/website.lang diff --git a/htdocs/langs/es_DO/withdrawals.lang b/public/langs/es_DO/withdrawals.lang similarity index 100% rename from htdocs/langs/es_DO/withdrawals.lang rename to public/langs/es_DO/withdrawals.lang diff --git a/htdocs/langs/es_DO/workflow.lang b/public/langs/es_DO/workflow.lang similarity index 100% rename from htdocs/langs/es_DO/workflow.lang rename to public/langs/es_DO/workflow.lang diff --git a/htdocs/langs/es_EC/accountancy.lang b/public/langs/es_EC/accountancy.lang similarity index 100% rename from htdocs/langs/es_EC/accountancy.lang rename to public/langs/es_EC/accountancy.lang diff --git a/htdocs/langs/es_EC/admin.lang b/public/langs/es_EC/admin.lang similarity index 100% rename from htdocs/langs/es_EC/admin.lang rename to public/langs/es_EC/admin.lang diff --git a/htdocs/langs/es_EC/agenda.lang b/public/langs/es_EC/agenda.lang similarity index 100% rename from htdocs/langs/es_EC/agenda.lang rename to public/langs/es_EC/agenda.lang diff --git a/htdocs/langs/es_EC/banks.lang b/public/langs/es_EC/banks.lang similarity index 100% rename from htdocs/langs/es_EC/banks.lang rename to public/langs/es_EC/banks.lang diff --git a/htdocs/langs/es_EC/bills.lang b/public/langs/es_EC/bills.lang similarity index 100% rename from htdocs/langs/es_EC/bills.lang rename to public/langs/es_EC/bills.lang diff --git a/htdocs/langs/es_EC/bookmarks.lang b/public/langs/es_EC/bookmarks.lang similarity index 100% rename from htdocs/langs/es_EC/bookmarks.lang rename to public/langs/es_EC/bookmarks.lang diff --git a/htdocs/langs/es_EC/boxes.lang b/public/langs/es_EC/boxes.lang similarity index 100% rename from htdocs/langs/es_EC/boxes.lang rename to public/langs/es_EC/boxes.lang diff --git a/htdocs/langs/es_EC/cashdesk.lang b/public/langs/es_EC/cashdesk.lang similarity index 100% rename from htdocs/langs/es_EC/cashdesk.lang rename to public/langs/es_EC/cashdesk.lang diff --git a/htdocs/langs/es_EC/categories.lang b/public/langs/es_EC/categories.lang similarity index 100% rename from htdocs/langs/es_EC/categories.lang rename to public/langs/es_EC/categories.lang diff --git a/htdocs/langs/es_EC/commercial.lang b/public/langs/es_EC/commercial.lang similarity index 100% rename from htdocs/langs/es_EC/commercial.lang rename to public/langs/es_EC/commercial.lang diff --git a/htdocs/langs/es_EC/companies.lang b/public/langs/es_EC/companies.lang similarity index 100% rename from htdocs/langs/es_EC/companies.lang rename to public/langs/es_EC/companies.lang diff --git a/htdocs/langs/es_EC/compta.lang b/public/langs/es_EC/compta.lang similarity index 100% rename from htdocs/langs/es_EC/compta.lang rename to public/langs/es_EC/compta.lang diff --git a/htdocs/langs/es_EC/contracts.lang b/public/langs/es_EC/contracts.lang similarity index 100% rename from htdocs/langs/es_EC/contracts.lang rename to public/langs/es_EC/contracts.lang diff --git a/htdocs/langs/es_EC/cron.lang b/public/langs/es_EC/cron.lang similarity index 100% rename from htdocs/langs/es_EC/cron.lang rename to public/langs/es_EC/cron.lang diff --git a/htdocs/langs/es_EC/deliveries.lang b/public/langs/es_EC/deliveries.lang similarity index 100% rename from htdocs/langs/es_EC/deliveries.lang rename to public/langs/es_EC/deliveries.lang diff --git a/htdocs/langs/es_EC/dict.lang b/public/langs/es_EC/dict.lang similarity index 100% rename from htdocs/langs/es_EC/dict.lang rename to public/langs/es_EC/dict.lang diff --git a/htdocs/langs/es_EC/donations.lang b/public/langs/es_EC/donations.lang similarity index 100% rename from htdocs/langs/es_EC/donations.lang rename to public/langs/es_EC/donations.lang diff --git a/htdocs/langs/es_EC/ecm.lang b/public/langs/es_EC/ecm.lang similarity index 100% rename from htdocs/langs/es_EC/ecm.lang rename to public/langs/es_EC/ecm.lang diff --git a/htdocs/langs/es_EC/errors.lang b/public/langs/es_EC/errors.lang similarity index 100% rename from htdocs/langs/es_EC/errors.lang rename to public/langs/es_EC/errors.lang diff --git a/htdocs/langs/es_EC/exports.lang b/public/langs/es_EC/exports.lang similarity index 100% rename from htdocs/langs/es_EC/exports.lang rename to public/langs/es_EC/exports.lang diff --git a/htdocs/langs/es_EC/externalsite.lang b/public/langs/es_EC/externalsite.lang similarity index 100% rename from htdocs/langs/es_EC/externalsite.lang rename to public/langs/es_EC/externalsite.lang diff --git a/htdocs/langs/es_EC/ftp.lang b/public/langs/es_EC/ftp.lang similarity index 100% rename from htdocs/langs/es_EC/ftp.lang rename to public/langs/es_EC/ftp.lang diff --git a/htdocs/langs/es_EC/help.lang b/public/langs/es_EC/help.lang similarity index 100% rename from htdocs/langs/es_EC/help.lang rename to public/langs/es_EC/help.lang diff --git a/htdocs/langs/es_EC/holiday.lang b/public/langs/es_EC/holiday.lang similarity index 100% rename from htdocs/langs/es_EC/holiday.lang rename to public/langs/es_EC/holiday.lang diff --git a/htdocs/langs/es_EC/hrm.lang b/public/langs/es_EC/hrm.lang similarity index 100% rename from htdocs/langs/es_EC/hrm.lang rename to public/langs/es_EC/hrm.lang diff --git a/htdocs/langs/es_EC/incoterm.lang b/public/langs/es_EC/incoterm.lang similarity index 100% rename from htdocs/langs/es_EC/incoterm.lang rename to public/langs/es_EC/incoterm.lang diff --git a/htdocs/langs/es_EC/install.lang b/public/langs/es_EC/install.lang similarity index 100% rename from htdocs/langs/es_EC/install.lang rename to public/langs/es_EC/install.lang diff --git a/htdocs/langs/es_EC/interventions.lang b/public/langs/es_EC/interventions.lang similarity index 100% rename from htdocs/langs/es_EC/interventions.lang rename to public/langs/es_EC/interventions.lang diff --git a/htdocs/langs/es_EC/languages.lang b/public/langs/es_EC/languages.lang similarity index 100% rename from htdocs/langs/es_EC/languages.lang rename to public/langs/es_EC/languages.lang diff --git a/htdocs/langs/es_EC/ldap.lang b/public/langs/es_EC/ldap.lang similarity index 100% rename from htdocs/langs/es_EC/ldap.lang rename to public/langs/es_EC/ldap.lang diff --git a/htdocs/langs/es_EC/link.lang b/public/langs/es_EC/link.lang similarity index 100% rename from htdocs/langs/es_EC/link.lang rename to public/langs/es_EC/link.lang diff --git a/htdocs/langs/es_EC/loan.lang b/public/langs/es_EC/loan.lang similarity index 100% rename from htdocs/langs/es_EC/loan.lang rename to public/langs/es_EC/loan.lang diff --git a/htdocs/langs/es_EC/mailmanspip.lang b/public/langs/es_EC/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_EC/mailmanspip.lang rename to public/langs/es_EC/mailmanspip.lang diff --git a/htdocs/langs/es_EC/mails.lang b/public/langs/es_EC/mails.lang similarity index 100% rename from htdocs/langs/es_EC/mails.lang rename to public/langs/es_EC/mails.lang diff --git a/htdocs/langs/es_EC/main.lang b/public/langs/es_EC/main.lang similarity index 100% rename from htdocs/langs/es_EC/main.lang rename to public/langs/es_EC/main.lang diff --git a/htdocs/langs/es_EC/margins.lang b/public/langs/es_EC/margins.lang similarity index 100% rename from htdocs/langs/es_EC/margins.lang rename to public/langs/es_EC/margins.lang diff --git a/htdocs/langs/es_EC/members.lang b/public/langs/es_EC/members.lang similarity index 100% rename from htdocs/langs/es_EC/members.lang rename to public/langs/es_EC/members.lang diff --git a/htdocs/langs/es_EC/oauth.lang b/public/langs/es_EC/oauth.lang similarity index 100% rename from htdocs/langs/es_EC/oauth.lang rename to public/langs/es_EC/oauth.lang diff --git a/htdocs/langs/es_EC/opensurvey.lang b/public/langs/es_EC/opensurvey.lang similarity index 100% rename from htdocs/langs/es_EC/opensurvey.lang rename to public/langs/es_EC/opensurvey.lang diff --git a/htdocs/langs/es_EC/orders.lang b/public/langs/es_EC/orders.lang similarity index 100% rename from htdocs/langs/es_EC/orders.lang rename to public/langs/es_EC/orders.lang diff --git a/htdocs/langs/es_EC/other.lang b/public/langs/es_EC/other.lang similarity index 100% rename from htdocs/langs/es_EC/other.lang rename to public/langs/es_EC/other.lang diff --git a/htdocs/langs/es_EC/paybox.lang b/public/langs/es_EC/paybox.lang similarity index 100% rename from htdocs/langs/es_EC/paybox.lang rename to public/langs/es_EC/paybox.lang diff --git a/htdocs/langs/es_EC/paypal.lang b/public/langs/es_EC/paypal.lang similarity index 100% rename from htdocs/langs/es_EC/paypal.lang rename to public/langs/es_EC/paypal.lang diff --git a/htdocs/langs/es_EC/printing.lang b/public/langs/es_EC/printing.lang similarity index 100% rename from htdocs/langs/es_EC/printing.lang rename to public/langs/es_EC/printing.lang diff --git a/htdocs/langs/es_EC/productbatch.lang b/public/langs/es_EC/productbatch.lang similarity index 100% rename from htdocs/langs/es_EC/productbatch.lang rename to public/langs/es_EC/productbatch.lang diff --git a/htdocs/langs/es_EC/products.lang b/public/langs/es_EC/products.lang similarity index 100% rename from htdocs/langs/es_EC/products.lang rename to public/langs/es_EC/products.lang diff --git a/htdocs/langs/es_EC/projects.lang b/public/langs/es_EC/projects.lang similarity index 100% rename from htdocs/langs/es_EC/projects.lang rename to public/langs/es_EC/projects.lang diff --git a/htdocs/langs/es_EC/propal.lang b/public/langs/es_EC/propal.lang similarity index 100% rename from htdocs/langs/es_EC/propal.lang rename to public/langs/es_EC/propal.lang diff --git a/htdocs/langs/es_EC/receiptprinter.lang b/public/langs/es_EC/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_EC/receiptprinter.lang rename to public/langs/es_EC/receiptprinter.lang diff --git a/htdocs/langs/es_EC/resource.lang b/public/langs/es_EC/resource.lang similarity index 100% rename from htdocs/langs/es_EC/resource.lang rename to public/langs/es_EC/resource.lang diff --git a/htdocs/langs/es_EC/salaries.lang b/public/langs/es_EC/salaries.lang similarity index 100% rename from htdocs/langs/es_EC/salaries.lang rename to public/langs/es_EC/salaries.lang diff --git a/htdocs/langs/es_EC/sendings.lang b/public/langs/es_EC/sendings.lang similarity index 100% rename from htdocs/langs/es_EC/sendings.lang rename to public/langs/es_EC/sendings.lang diff --git a/htdocs/langs/es_EC/sms.lang b/public/langs/es_EC/sms.lang similarity index 100% rename from htdocs/langs/es_EC/sms.lang rename to public/langs/es_EC/sms.lang diff --git a/htdocs/langs/es_EC/stocks.lang b/public/langs/es_EC/stocks.lang similarity index 100% rename from htdocs/langs/es_EC/stocks.lang rename to public/langs/es_EC/stocks.lang diff --git a/htdocs/langs/es_EC/supplier_proposal.lang b/public/langs/es_EC/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_EC/supplier_proposal.lang rename to public/langs/es_EC/supplier_proposal.lang diff --git a/htdocs/langs/es_EC/suppliers.lang b/public/langs/es_EC/suppliers.lang similarity index 100% rename from htdocs/langs/es_EC/suppliers.lang rename to public/langs/es_EC/suppliers.lang diff --git a/htdocs/langs/es_EC/trips.lang b/public/langs/es_EC/trips.lang similarity index 100% rename from htdocs/langs/es_EC/trips.lang rename to public/langs/es_EC/trips.lang diff --git a/htdocs/langs/es_EC/users.lang b/public/langs/es_EC/users.lang similarity index 100% rename from htdocs/langs/es_EC/users.lang rename to public/langs/es_EC/users.lang diff --git a/htdocs/langs/es_EC/website.lang b/public/langs/es_EC/website.lang similarity index 100% rename from htdocs/langs/es_EC/website.lang rename to public/langs/es_EC/website.lang diff --git a/htdocs/langs/es_EC/withdrawals.lang b/public/langs/es_EC/withdrawals.lang similarity index 100% rename from htdocs/langs/es_EC/withdrawals.lang rename to public/langs/es_EC/withdrawals.lang diff --git a/htdocs/langs/es_EC/workflow.lang b/public/langs/es_EC/workflow.lang similarity index 100% rename from htdocs/langs/es_EC/workflow.lang rename to public/langs/es_EC/workflow.lang diff --git a/htdocs/langs/es_ES/accountancy.lang b/public/langs/es_ES/accountancy.lang similarity index 100% rename from htdocs/langs/es_ES/accountancy.lang rename to public/langs/es_ES/accountancy.lang diff --git a/htdocs/langs/es_ES/admin.lang b/public/langs/es_ES/admin.lang similarity index 100% rename from htdocs/langs/es_ES/admin.lang rename to public/langs/es_ES/admin.lang diff --git a/htdocs/langs/es_ES/agenda.lang b/public/langs/es_ES/agenda.lang similarity index 100% rename from htdocs/langs/es_ES/agenda.lang rename to public/langs/es_ES/agenda.lang diff --git a/htdocs/langs/es_ES/banks.lang b/public/langs/es_ES/banks.lang similarity index 100% rename from htdocs/langs/es_ES/banks.lang rename to public/langs/es_ES/banks.lang diff --git a/htdocs/langs/es_ES/bills.lang b/public/langs/es_ES/bills.lang similarity index 100% rename from htdocs/langs/es_ES/bills.lang rename to public/langs/es_ES/bills.lang diff --git a/htdocs/langs/es_ES/bookmarks.lang b/public/langs/es_ES/bookmarks.lang similarity index 100% rename from htdocs/langs/es_ES/bookmarks.lang rename to public/langs/es_ES/bookmarks.lang diff --git a/htdocs/langs/es_ES/boxes.lang b/public/langs/es_ES/boxes.lang similarity index 100% rename from htdocs/langs/es_ES/boxes.lang rename to public/langs/es_ES/boxes.lang diff --git a/htdocs/langs/es_ES/cashdesk.lang b/public/langs/es_ES/cashdesk.lang similarity index 100% rename from htdocs/langs/es_ES/cashdesk.lang rename to public/langs/es_ES/cashdesk.lang diff --git a/htdocs/langs/es_ES/categories.lang b/public/langs/es_ES/categories.lang similarity index 100% rename from htdocs/langs/es_ES/categories.lang rename to public/langs/es_ES/categories.lang diff --git a/htdocs/langs/es_ES/commercial.lang b/public/langs/es_ES/commercial.lang similarity index 100% rename from htdocs/langs/es_ES/commercial.lang rename to public/langs/es_ES/commercial.lang diff --git a/htdocs/langs/es_ES/companies.lang b/public/langs/es_ES/companies.lang similarity index 100% rename from htdocs/langs/es_ES/companies.lang rename to public/langs/es_ES/companies.lang diff --git a/htdocs/langs/es_ES/compta.lang b/public/langs/es_ES/compta.lang similarity index 100% rename from htdocs/langs/es_ES/compta.lang rename to public/langs/es_ES/compta.lang diff --git a/htdocs/langs/es_ES/contracts.lang b/public/langs/es_ES/contracts.lang similarity index 100% rename from htdocs/langs/es_ES/contracts.lang rename to public/langs/es_ES/contracts.lang diff --git a/htdocs/langs/es_ES/cron.lang b/public/langs/es_ES/cron.lang similarity index 100% rename from htdocs/langs/es_ES/cron.lang rename to public/langs/es_ES/cron.lang diff --git a/htdocs/langs/es_ES/deliveries.lang b/public/langs/es_ES/deliveries.lang similarity index 100% rename from htdocs/langs/es_ES/deliveries.lang rename to public/langs/es_ES/deliveries.lang diff --git a/htdocs/langs/es_ES/dict.lang b/public/langs/es_ES/dict.lang similarity index 100% rename from htdocs/langs/es_ES/dict.lang rename to public/langs/es_ES/dict.lang diff --git a/htdocs/langs/es_ES/donations.lang b/public/langs/es_ES/donations.lang similarity index 100% rename from htdocs/langs/es_ES/donations.lang rename to public/langs/es_ES/donations.lang diff --git a/htdocs/langs/es_ES/ecm.lang b/public/langs/es_ES/ecm.lang similarity index 100% rename from htdocs/langs/es_ES/ecm.lang rename to public/langs/es_ES/ecm.lang diff --git a/htdocs/langs/es_ES/errors.lang b/public/langs/es_ES/errors.lang similarity index 100% rename from htdocs/langs/es_ES/errors.lang rename to public/langs/es_ES/errors.lang diff --git a/htdocs/langs/es_ES/exports.lang b/public/langs/es_ES/exports.lang similarity index 100% rename from htdocs/langs/es_ES/exports.lang rename to public/langs/es_ES/exports.lang diff --git a/htdocs/langs/es_ES/externalsite.lang b/public/langs/es_ES/externalsite.lang similarity index 100% rename from htdocs/langs/es_ES/externalsite.lang rename to public/langs/es_ES/externalsite.lang diff --git a/htdocs/langs/es_ES/ftp.lang b/public/langs/es_ES/ftp.lang similarity index 100% rename from htdocs/langs/es_ES/ftp.lang rename to public/langs/es_ES/ftp.lang diff --git a/htdocs/langs/es_ES/help.lang b/public/langs/es_ES/help.lang similarity index 100% rename from htdocs/langs/es_ES/help.lang rename to public/langs/es_ES/help.lang diff --git a/htdocs/langs/es_ES/holiday.lang b/public/langs/es_ES/holiday.lang similarity index 100% rename from htdocs/langs/es_ES/holiday.lang rename to public/langs/es_ES/holiday.lang diff --git a/htdocs/langs/es_ES/hrm.lang b/public/langs/es_ES/hrm.lang similarity index 100% rename from htdocs/langs/es_ES/hrm.lang rename to public/langs/es_ES/hrm.lang diff --git a/htdocs/langs/es_ES/incoterm.lang b/public/langs/es_ES/incoterm.lang similarity index 100% rename from htdocs/langs/es_ES/incoterm.lang rename to public/langs/es_ES/incoterm.lang diff --git a/htdocs/langs/es_ES/install.lang b/public/langs/es_ES/install.lang similarity index 100% rename from htdocs/langs/es_ES/install.lang rename to public/langs/es_ES/install.lang diff --git a/htdocs/langs/es_ES/interventions.lang b/public/langs/es_ES/interventions.lang similarity index 100% rename from htdocs/langs/es_ES/interventions.lang rename to public/langs/es_ES/interventions.lang diff --git a/htdocs/langs/es_ES/languages.lang b/public/langs/es_ES/languages.lang similarity index 100% rename from htdocs/langs/es_ES/languages.lang rename to public/langs/es_ES/languages.lang diff --git a/htdocs/langs/es_ES/ldap.lang b/public/langs/es_ES/ldap.lang similarity index 100% rename from htdocs/langs/es_ES/ldap.lang rename to public/langs/es_ES/ldap.lang diff --git a/htdocs/langs/es_ES/link.lang b/public/langs/es_ES/link.lang similarity index 100% rename from htdocs/langs/es_ES/link.lang rename to public/langs/es_ES/link.lang diff --git a/htdocs/langs/es_ES/loan.lang b/public/langs/es_ES/loan.lang similarity index 100% rename from htdocs/langs/es_ES/loan.lang rename to public/langs/es_ES/loan.lang diff --git a/htdocs/langs/es_ES/mailmanspip.lang b/public/langs/es_ES/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_ES/mailmanspip.lang rename to public/langs/es_ES/mailmanspip.lang diff --git a/htdocs/langs/es_ES/mails.lang b/public/langs/es_ES/mails.lang similarity index 100% rename from htdocs/langs/es_ES/mails.lang rename to public/langs/es_ES/mails.lang diff --git a/htdocs/langs/es_ES/main.lang b/public/langs/es_ES/main.lang similarity index 100% rename from htdocs/langs/es_ES/main.lang rename to public/langs/es_ES/main.lang diff --git a/htdocs/langs/es_ES/margins.lang b/public/langs/es_ES/margins.lang similarity index 100% rename from htdocs/langs/es_ES/margins.lang rename to public/langs/es_ES/margins.lang diff --git a/htdocs/langs/es_ES/members.lang b/public/langs/es_ES/members.lang similarity index 100% rename from htdocs/langs/es_ES/members.lang rename to public/langs/es_ES/members.lang diff --git a/htdocs/langs/es_ES/oauth.lang b/public/langs/es_ES/oauth.lang similarity index 100% rename from htdocs/langs/es_ES/oauth.lang rename to public/langs/es_ES/oauth.lang diff --git a/htdocs/langs/es_ES/opensurvey.lang b/public/langs/es_ES/opensurvey.lang similarity index 100% rename from htdocs/langs/es_ES/opensurvey.lang rename to public/langs/es_ES/opensurvey.lang diff --git a/htdocs/langs/es_ES/orders.lang b/public/langs/es_ES/orders.lang similarity index 100% rename from htdocs/langs/es_ES/orders.lang rename to public/langs/es_ES/orders.lang diff --git a/htdocs/langs/es_ES/other.lang b/public/langs/es_ES/other.lang similarity index 100% rename from htdocs/langs/es_ES/other.lang rename to public/langs/es_ES/other.lang diff --git a/htdocs/langs/es_ES/paybox.lang b/public/langs/es_ES/paybox.lang similarity index 100% rename from htdocs/langs/es_ES/paybox.lang rename to public/langs/es_ES/paybox.lang diff --git a/htdocs/langs/es_ES/paypal.lang b/public/langs/es_ES/paypal.lang similarity index 100% rename from htdocs/langs/es_ES/paypal.lang rename to public/langs/es_ES/paypal.lang diff --git a/htdocs/langs/es_ES/printing.lang b/public/langs/es_ES/printing.lang similarity index 100% rename from htdocs/langs/es_ES/printing.lang rename to public/langs/es_ES/printing.lang diff --git a/htdocs/langs/es_ES/productbatch.lang b/public/langs/es_ES/productbatch.lang similarity index 100% rename from htdocs/langs/es_ES/productbatch.lang rename to public/langs/es_ES/productbatch.lang diff --git a/htdocs/langs/es_ES/products.lang b/public/langs/es_ES/products.lang similarity index 100% rename from htdocs/langs/es_ES/products.lang rename to public/langs/es_ES/products.lang diff --git a/htdocs/langs/es_ES/projects.lang b/public/langs/es_ES/projects.lang similarity index 100% rename from htdocs/langs/es_ES/projects.lang rename to public/langs/es_ES/projects.lang diff --git a/htdocs/langs/es_ES/propal.lang b/public/langs/es_ES/propal.lang similarity index 100% rename from htdocs/langs/es_ES/propal.lang rename to public/langs/es_ES/propal.lang diff --git a/htdocs/langs/es_ES/receiptprinter.lang b/public/langs/es_ES/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_ES/receiptprinter.lang rename to public/langs/es_ES/receiptprinter.lang diff --git a/htdocs/langs/es_ES/resource.lang b/public/langs/es_ES/resource.lang similarity index 100% rename from htdocs/langs/es_ES/resource.lang rename to public/langs/es_ES/resource.lang diff --git a/htdocs/langs/es_ES/salaries.lang b/public/langs/es_ES/salaries.lang similarity index 100% rename from htdocs/langs/es_ES/salaries.lang rename to public/langs/es_ES/salaries.lang diff --git a/htdocs/langs/es_ES/sendings.lang b/public/langs/es_ES/sendings.lang similarity index 100% rename from htdocs/langs/es_ES/sendings.lang rename to public/langs/es_ES/sendings.lang diff --git a/htdocs/langs/es_ES/sms.lang b/public/langs/es_ES/sms.lang similarity index 100% rename from htdocs/langs/es_ES/sms.lang rename to public/langs/es_ES/sms.lang diff --git a/htdocs/langs/es_ES/stocks.lang b/public/langs/es_ES/stocks.lang similarity index 100% rename from htdocs/langs/es_ES/stocks.lang rename to public/langs/es_ES/stocks.lang diff --git a/htdocs/langs/es_ES/supplier_proposal.lang b/public/langs/es_ES/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_ES/supplier_proposal.lang rename to public/langs/es_ES/supplier_proposal.lang diff --git a/htdocs/langs/es_ES/suppliers.lang b/public/langs/es_ES/suppliers.lang similarity index 100% rename from htdocs/langs/es_ES/suppliers.lang rename to public/langs/es_ES/suppliers.lang diff --git a/htdocs/langs/es_ES/trips.lang b/public/langs/es_ES/trips.lang similarity index 100% rename from htdocs/langs/es_ES/trips.lang rename to public/langs/es_ES/trips.lang diff --git a/htdocs/langs/es_ES/users.lang b/public/langs/es_ES/users.lang similarity index 100% rename from htdocs/langs/es_ES/users.lang rename to public/langs/es_ES/users.lang diff --git a/htdocs/langs/es_ES/website.lang b/public/langs/es_ES/website.lang similarity index 100% rename from htdocs/langs/es_ES/website.lang rename to public/langs/es_ES/website.lang diff --git a/htdocs/langs/es_ES/withdrawals.lang b/public/langs/es_ES/withdrawals.lang similarity index 100% rename from htdocs/langs/es_ES/withdrawals.lang rename to public/langs/es_ES/withdrawals.lang diff --git a/htdocs/langs/es_ES/workflow.lang b/public/langs/es_ES/workflow.lang similarity index 100% rename from htdocs/langs/es_ES/workflow.lang rename to public/langs/es_ES/workflow.lang diff --git a/htdocs/langs/es_HN/admin.lang b/public/langs/es_HN/admin.lang similarity index 100% rename from htdocs/langs/es_HN/admin.lang rename to public/langs/es_HN/admin.lang diff --git a/htdocs/langs/es_HN/bills.lang b/public/langs/es_HN/bills.lang similarity index 100% rename from htdocs/langs/es_HN/bills.lang rename to public/langs/es_HN/bills.lang diff --git a/htdocs/langs/es_HN/companies.lang b/public/langs/es_HN/companies.lang similarity index 100% rename from htdocs/langs/es_HN/companies.lang rename to public/langs/es_HN/companies.lang diff --git a/htdocs/langs/es_HN/compta.lang b/public/langs/es_HN/compta.lang similarity index 100% rename from htdocs/langs/es_HN/compta.lang rename to public/langs/es_HN/compta.lang diff --git a/htdocs/langs/es_HN/main.lang b/public/langs/es_HN/main.lang similarity index 100% rename from htdocs/langs/es_HN/main.lang rename to public/langs/es_HN/main.lang diff --git a/htdocs/langs/es_HN/propal.lang b/public/langs/es_HN/propal.lang similarity index 100% rename from htdocs/langs/es_HN/propal.lang rename to public/langs/es_HN/propal.lang diff --git a/htdocs/langs/es_MX/accountancy.lang b/public/langs/es_MX/accountancy.lang similarity index 100% rename from htdocs/langs/es_MX/accountancy.lang rename to public/langs/es_MX/accountancy.lang diff --git a/htdocs/langs/es_MX/admin.lang b/public/langs/es_MX/admin.lang similarity index 100% rename from htdocs/langs/es_MX/admin.lang rename to public/langs/es_MX/admin.lang diff --git a/htdocs/langs/es_MX/agenda.lang b/public/langs/es_MX/agenda.lang similarity index 100% rename from htdocs/langs/es_MX/agenda.lang rename to public/langs/es_MX/agenda.lang diff --git a/htdocs/langs/es_MX/banks.lang b/public/langs/es_MX/banks.lang similarity index 100% rename from htdocs/langs/es_MX/banks.lang rename to public/langs/es_MX/banks.lang diff --git a/htdocs/langs/es_MX/bills.lang b/public/langs/es_MX/bills.lang similarity index 100% rename from htdocs/langs/es_MX/bills.lang rename to public/langs/es_MX/bills.lang diff --git a/htdocs/langs/es_MX/bookmarks.lang b/public/langs/es_MX/bookmarks.lang similarity index 100% rename from htdocs/langs/es_MX/bookmarks.lang rename to public/langs/es_MX/bookmarks.lang diff --git a/htdocs/langs/es_MX/boxes.lang b/public/langs/es_MX/boxes.lang similarity index 100% rename from htdocs/langs/es_MX/boxes.lang rename to public/langs/es_MX/boxes.lang diff --git a/htdocs/langs/es_MX/cashdesk.lang b/public/langs/es_MX/cashdesk.lang similarity index 100% rename from htdocs/langs/es_MX/cashdesk.lang rename to public/langs/es_MX/cashdesk.lang diff --git a/htdocs/langs/es_MX/categories.lang b/public/langs/es_MX/categories.lang similarity index 100% rename from htdocs/langs/es_MX/categories.lang rename to public/langs/es_MX/categories.lang diff --git a/htdocs/langs/es_MX/commercial.lang b/public/langs/es_MX/commercial.lang similarity index 100% rename from htdocs/langs/es_MX/commercial.lang rename to public/langs/es_MX/commercial.lang diff --git a/htdocs/langs/es_MX/companies.lang b/public/langs/es_MX/companies.lang similarity index 100% rename from htdocs/langs/es_MX/companies.lang rename to public/langs/es_MX/companies.lang diff --git a/htdocs/langs/es_MX/compta.lang b/public/langs/es_MX/compta.lang similarity index 100% rename from htdocs/langs/es_MX/compta.lang rename to public/langs/es_MX/compta.lang diff --git a/htdocs/langs/es_MX/contracts.lang b/public/langs/es_MX/contracts.lang similarity index 100% rename from htdocs/langs/es_MX/contracts.lang rename to public/langs/es_MX/contracts.lang diff --git a/htdocs/langs/es_MX/cron.lang b/public/langs/es_MX/cron.lang similarity index 100% rename from htdocs/langs/es_MX/cron.lang rename to public/langs/es_MX/cron.lang diff --git a/htdocs/langs/es_MX/deliveries.lang b/public/langs/es_MX/deliveries.lang similarity index 100% rename from htdocs/langs/es_MX/deliveries.lang rename to public/langs/es_MX/deliveries.lang diff --git a/htdocs/langs/es_MX/dict.lang b/public/langs/es_MX/dict.lang similarity index 100% rename from htdocs/langs/es_MX/dict.lang rename to public/langs/es_MX/dict.lang diff --git a/htdocs/langs/es_MX/donations.lang b/public/langs/es_MX/donations.lang similarity index 100% rename from htdocs/langs/es_MX/donations.lang rename to public/langs/es_MX/donations.lang diff --git a/htdocs/langs/es_MX/ecm.lang b/public/langs/es_MX/ecm.lang similarity index 100% rename from htdocs/langs/es_MX/ecm.lang rename to public/langs/es_MX/ecm.lang diff --git a/htdocs/langs/es_MX/errors.lang b/public/langs/es_MX/errors.lang similarity index 100% rename from htdocs/langs/es_MX/errors.lang rename to public/langs/es_MX/errors.lang diff --git a/htdocs/langs/es_MX/exports.lang b/public/langs/es_MX/exports.lang similarity index 100% rename from htdocs/langs/es_MX/exports.lang rename to public/langs/es_MX/exports.lang diff --git a/htdocs/langs/es_MX/externalsite.lang b/public/langs/es_MX/externalsite.lang similarity index 100% rename from htdocs/langs/es_MX/externalsite.lang rename to public/langs/es_MX/externalsite.lang diff --git a/htdocs/langs/es_MX/ftp.lang b/public/langs/es_MX/ftp.lang similarity index 100% rename from htdocs/langs/es_MX/ftp.lang rename to public/langs/es_MX/ftp.lang diff --git a/htdocs/langs/es_MX/help.lang b/public/langs/es_MX/help.lang similarity index 100% rename from htdocs/langs/es_MX/help.lang rename to public/langs/es_MX/help.lang diff --git a/htdocs/langs/es_MX/holiday.lang b/public/langs/es_MX/holiday.lang similarity index 100% rename from htdocs/langs/es_MX/holiday.lang rename to public/langs/es_MX/holiday.lang diff --git a/htdocs/langs/es_MX/hrm.lang b/public/langs/es_MX/hrm.lang similarity index 100% rename from htdocs/langs/es_MX/hrm.lang rename to public/langs/es_MX/hrm.lang diff --git a/htdocs/langs/es_MX/incoterm.lang b/public/langs/es_MX/incoterm.lang similarity index 100% rename from htdocs/langs/es_MX/incoterm.lang rename to public/langs/es_MX/incoterm.lang diff --git a/htdocs/langs/es_MX/install.lang b/public/langs/es_MX/install.lang similarity index 100% rename from htdocs/langs/es_MX/install.lang rename to public/langs/es_MX/install.lang diff --git a/htdocs/langs/es_MX/interventions.lang b/public/langs/es_MX/interventions.lang similarity index 100% rename from htdocs/langs/es_MX/interventions.lang rename to public/langs/es_MX/interventions.lang diff --git a/htdocs/langs/es_MX/languages.lang b/public/langs/es_MX/languages.lang similarity index 100% rename from htdocs/langs/es_MX/languages.lang rename to public/langs/es_MX/languages.lang diff --git a/htdocs/langs/es_MX/ldap.lang b/public/langs/es_MX/ldap.lang similarity index 100% rename from htdocs/langs/es_MX/ldap.lang rename to public/langs/es_MX/ldap.lang diff --git a/htdocs/langs/es_MX/link.lang b/public/langs/es_MX/link.lang similarity index 100% rename from htdocs/langs/es_MX/link.lang rename to public/langs/es_MX/link.lang diff --git a/htdocs/langs/es_MX/loan.lang b/public/langs/es_MX/loan.lang similarity index 100% rename from htdocs/langs/es_MX/loan.lang rename to public/langs/es_MX/loan.lang diff --git a/htdocs/langs/es_MX/mailmanspip.lang b/public/langs/es_MX/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_MX/mailmanspip.lang rename to public/langs/es_MX/mailmanspip.lang diff --git a/htdocs/langs/es_MX/mails.lang b/public/langs/es_MX/mails.lang similarity index 100% rename from htdocs/langs/es_MX/mails.lang rename to public/langs/es_MX/mails.lang diff --git a/htdocs/langs/es_MX/main.lang b/public/langs/es_MX/main.lang similarity index 100% rename from htdocs/langs/es_MX/main.lang rename to public/langs/es_MX/main.lang diff --git a/htdocs/langs/es_MX/margins.lang b/public/langs/es_MX/margins.lang similarity index 100% rename from htdocs/langs/es_MX/margins.lang rename to public/langs/es_MX/margins.lang diff --git a/htdocs/langs/es_MX/members.lang b/public/langs/es_MX/members.lang similarity index 100% rename from htdocs/langs/es_MX/members.lang rename to public/langs/es_MX/members.lang diff --git a/htdocs/langs/es_MX/oauth.lang b/public/langs/es_MX/oauth.lang similarity index 100% rename from htdocs/langs/es_MX/oauth.lang rename to public/langs/es_MX/oauth.lang diff --git a/htdocs/langs/es_MX/opensurvey.lang b/public/langs/es_MX/opensurvey.lang similarity index 100% rename from htdocs/langs/es_MX/opensurvey.lang rename to public/langs/es_MX/opensurvey.lang diff --git a/htdocs/langs/es_MX/orders.lang b/public/langs/es_MX/orders.lang similarity index 100% rename from htdocs/langs/es_MX/orders.lang rename to public/langs/es_MX/orders.lang diff --git a/htdocs/langs/es_MX/other.lang b/public/langs/es_MX/other.lang similarity index 100% rename from htdocs/langs/es_MX/other.lang rename to public/langs/es_MX/other.lang diff --git a/htdocs/langs/es_MX/paybox.lang b/public/langs/es_MX/paybox.lang similarity index 100% rename from htdocs/langs/es_MX/paybox.lang rename to public/langs/es_MX/paybox.lang diff --git a/htdocs/langs/es_MX/paypal.lang b/public/langs/es_MX/paypal.lang similarity index 100% rename from htdocs/langs/es_MX/paypal.lang rename to public/langs/es_MX/paypal.lang diff --git a/htdocs/langs/es_MX/printing.lang b/public/langs/es_MX/printing.lang similarity index 100% rename from htdocs/langs/es_MX/printing.lang rename to public/langs/es_MX/printing.lang diff --git a/htdocs/langs/es_MX/productbatch.lang b/public/langs/es_MX/productbatch.lang similarity index 100% rename from htdocs/langs/es_MX/productbatch.lang rename to public/langs/es_MX/productbatch.lang diff --git a/htdocs/langs/es_MX/products.lang b/public/langs/es_MX/products.lang similarity index 100% rename from htdocs/langs/es_MX/products.lang rename to public/langs/es_MX/products.lang diff --git a/htdocs/langs/es_MX/projects.lang b/public/langs/es_MX/projects.lang similarity index 100% rename from htdocs/langs/es_MX/projects.lang rename to public/langs/es_MX/projects.lang diff --git a/htdocs/langs/es_MX/propal.lang b/public/langs/es_MX/propal.lang similarity index 100% rename from htdocs/langs/es_MX/propal.lang rename to public/langs/es_MX/propal.lang diff --git a/htdocs/langs/es_MX/receiptprinter.lang b/public/langs/es_MX/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_MX/receiptprinter.lang rename to public/langs/es_MX/receiptprinter.lang diff --git a/htdocs/langs/es_MX/resource.lang b/public/langs/es_MX/resource.lang similarity index 100% rename from htdocs/langs/es_MX/resource.lang rename to public/langs/es_MX/resource.lang diff --git a/htdocs/langs/es_MX/salaries.lang b/public/langs/es_MX/salaries.lang similarity index 100% rename from htdocs/langs/es_MX/salaries.lang rename to public/langs/es_MX/salaries.lang diff --git a/htdocs/langs/es_MX/sendings.lang b/public/langs/es_MX/sendings.lang similarity index 100% rename from htdocs/langs/es_MX/sendings.lang rename to public/langs/es_MX/sendings.lang diff --git a/htdocs/langs/es_MX/sms.lang b/public/langs/es_MX/sms.lang similarity index 100% rename from htdocs/langs/es_MX/sms.lang rename to public/langs/es_MX/sms.lang diff --git a/htdocs/langs/es_MX/stocks.lang b/public/langs/es_MX/stocks.lang similarity index 100% rename from htdocs/langs/es_MX/stocks.lang rename to public/langs/es_MX/stocks.lang diff --git a/htdocs/langs/es_MX/supplier_proposal.lang b/public/langs/es_MX/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_MX/supplier_proposal.lang rename to public/langs/es_MX/supplier_proposal.lang diff --git a/htdocs/langs/es_MX/suppliers.lang b/public/langs/es_MX/suppliers.lang similarity index 100% rename from htdocs/langs/es_MX/suppliers.lang rename to public/langs/es_MX/suppliers.lang diff --git a/htdocs/langs/es_MX/trips.lang b/public/langs/es_MX/trips.lang similarity index 100% rename from htdocs/langs/es_MX/trips.lang rename to public/langs/es_MX/trips.lang diff --git a/htdocs/langs/es_MX/users.lang b/public/langs/es_MX/users.lang similarity index 100% rename from htdocs/langs/es_MX/users.lang rename to public/langs/es_MX/users.lang diff --git a/htdocs/langs/es_MX/website.lang b/public/langs/es_MX/website.lang similarity index 100% rename from htdocs/langs/es_MX/website.lang rename to public/langs/es_MX/website.lang diff --git a/htdocs/langs/es_MX/withdrawals.lang b/public/langs/es_MX/withdrawals.lang similarity index 100% rename from htdocs/langs/es_MX/withdrawals.lang rename to public/langs/es_MX/withdrawals.lang diff --git a/htdocs/langs/es_MX/workflow.lang b/public/langs/es_MX/workflow.lang similarity index 100% rename from htdocs/langs/es_MX/workflow.lang rename to public/langs/es_MX/workflow.lang diff --git a/htdocs/langs/es_PA/accountancy.lang b/public/langs/es_PA/accountancy.lang similarity index 100% rename from htdocs/langs/es_PA/accountancy.lang rename to public/langs/es_PA/accountancy.lang diff --git a/htdocs/langs/es_PA/admin.lang b/public/langs/es_PA/admin.lang similarity index 100% rename from htdocs/langs/es_PA/admin.lang rename to public/langs/es_PA/admin.lang diff --git a/htdocs/langs/es_PA/agenda.lang b/public/langs/es_PA/agenda.lang similarity index 100% rename from htdocs/langs/es_PA/agenda.lang rename to public/langs/es_PA/agenda.lang diff --git a/htdocs/langs/es_PA/banks.lang b/public/langs/es_PA/banks.lang similarity index 100% rename from htdocs/langs/es_PA/banks.lang rename to public/langs/es_PA/banks.lang diff --git a/htdocs/langs/es_PA/bills.lang b/public/langs/es_PA/bills.lang similarity index 100% rename from htdocs/langs/es_PA/bills.lang rename to public/langs/es_PA/bills.lang diff --git a/htdocs/langs/es_PA/bookmarks.lang b/public/langs/es_PA/bookmarks.lang similarity index 100% rename from htdocs/langs/es_PA/bookmarks.lang rename to public/langs/es_PA/bookmarks.lang diff --git a/htdocs/langs/es_PA/boxes.lang b/public/langs/es_PA/boxes.lang similarity index 100% rename from htdocs/langs/es_PA/boxes.lang rename to public/langs/es_PA/boxes.lang diff --git a/htdocs/langs/es_PA/cashdesk.lang b/public/langs/es_PA/cashdesk.lang similarity index 100% rename from htdocs/langs/es_PA/cashdesk.lang rename to public/langs/es_PA/cashdesk.lang diff --git a/htdocs/langs/es_PA/categories.lang b/public/langs/es_PA/categories.lang similarity index 100% rename from htdocs/langs/es_PA/categories.lang rename to public/langs/es_PA/categories.lang diff --git a/htdocs/langs/es_PA/commercial.lang b/public/langs/es_PA/commercial.lang similarity index 100% rename from htdocs/langs/es_PA/commercial.lang rename to public/langs/es_PA/commercial.lang diff --git a/htdocs/langs/es_PA/companies.lang b/public/langs/es_PA/companies.lang similarity index 100% rename from htdocs/langs/es_PA/companies.lang rename to public/langs/es_PA/companies.lang diff --git a/htdocs/langs/es_PA/compta.lang b/public/langs/es_PA/compta.lang similarity index 100% rename from htdocs/langs/es_PA/compta.lang rename to public/langs/es_PA/compta.lang diff --git a/htdocs/langs/es_PA/contracts.lang b/public/langs/es_PA/contracts.lang similarity index 100% rename from htdocs/langs/es_PA/contracts.lang rename to public/langs/es_PA/contracts.lang diff --git a/htdocs/langs/es_PA/cron.lang b/public/langs/es_PA/cron.lang similarity index 100% rename from htdocs/langs/es_PA/cron.lang rename to public/langs/es_PA/cron.lang diff --git a/htdocs/langs/es_PA/deliveries.lang b/public/langs/es_PA/deliveries.lang similarity index 100% rename from htdocs/langs/es_PA/deliveries.lang rename to public/langs/es_PA/deliveries.lang diff --git a/htdocs/langs/es_PA/dict.lang b/public/langs/es_PA/dict.lang similarity index 100% rename from htdocs/langs/es_PA/dict.lang rename to public/langs/es_PA/dict.lang diff --git a/htdocs/langs/es_PA/donations.lang b/public/langs/es_PA/donations.lang similarity index 100% rename from htdocs/langs/es_PA/donations.lang rename to public/langs/es_PA/donations.lang diff --git a/htdocs/langs/es_PA/ecm.lang b/public/langs/es_PA/ecm.lang similarity index 100% rename from htdocs/langs/es_PA/ecm.lang rename to public/langs/es_PA/ecm.lang diff --git a/htdocs/langs/es_PA/errors.lang b/public/langs/es_PA/errors.lang similarity index 100% rename from htdocs/langs/es_PA/errors.lang rename to public/langs/es_PA/errors.lang diff --git a/htdocs/langs/es_PA/exports.lang b/public/langs/es_PA/exports.lang similarity index 100% rename from htdocs/langs/es_PA/exports.lang rename to public/langs/es_PA/exports.lang diff --git a/htdocs/langs/es_PA/externalsite.lang b/public/langs/es_PA/externalsite.lang similarity index 100% rename from htdocs/langs/es_PA/externalsite.lang rename to public/langs/es_PA/externalsite.lang diff --git a/htdocs/langs/es_PA/ftp.lang b/public/langs/es_PA/ftp.lang similarity index 100% rename from htdocs/langs/es_PA/ftp.lang rename to public/langs/es_PA/ftp.lang diff --git a/htdocs/langs/es_PA/help.lang b/public/langs/es_PA/help.lang similarity index 100% rename from htdocs/langs/es_PA/help.lang rename to public/langs/es_PA/help.lang diff --git a/htdocs/langs/es_PA/holiday.lang b/public/langs/es_PA/holiday.lang similarity index 100% rename from htdocs/langs/es_PA/holiday.lang rename to public/langs/es_PA/holiday.lang diff --git a/htdocs/langs/es_PA/hrm.lang b/public/langs/es_PA/hrm.lang similarity index 100% rename from htdocs/langs/es_PA/hrm.lang rename to public/langs/es_PA/hrm.lang diff --git a/htdocs/langs/es_PA/incoterm.lang b/public/langs/es_PA/incoterm.lang similarity index 100% rename from htdocs/langs/es_PA/incoterm.lang rename to public/langs/es_PA/incoterm.lang diff --git a/htdocs/langs/es_PA/install.lang b/public/langs/es_PA/install.lang similarity index 100% rename from htdocs/langs/es_PA/install.lang rename to public/langs/es_PA/install.lang diff --git a/htdocs/langs/es_PA/interventions.lang b/public/langs/es_PA/interventions.lang similarity index 100% rename from htdocs/langs/es_PA/interventions.lang rename to public/langs/es_PA/interventions.lang diff --git a/htdocs/langs/es_PA/languages.lang b/public/langs/es_PA/languages.lang similarity index 100% rename from htdocs/langs/es_PA/languages.lang rename to public/langs/es_PA/languages.lang diff --git a/htdocs/langs/es_PA/ldap.lang b/public/langs/es_PA/ldap.lang similarity index 100% rename from htdocs/langs/es_PA/ldap.lang rename to public/langs/es_PA/ldap.lang diff --git a/htdocs/langs/es_PA/link.lang b/public/langs/es_PA/link.lang similarity index 100% rename from htdocs/langs/es_PA/link.lang rename to public/langs/es_PA/link.lang diff --git a/htdocs/langs/es_PA/loan.lang b/public/langs/es_PA/loan.lang similarity index 100% rename from htdocs/langs/es_PA/loan.lang rename to public/langs/es_PA/loan.lang diff --git a/htdocs/langs/es_PA/mailmanspip.lang b/public/langs/es_PA/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_PA/mailmanspip.lang rename to public/langs/es_PA/mailmanspip.lang diff --git a/htdocs/langs/es_PA/mails.lang b/public/langs/es_PA/mails.lang similarity index 100% rename from htdocs/langs/es_PA/mails.lang rename to public/langs/es_PA/mails.lang diff --git a/htdocs/langs/es_PA/main.lang b/public/langs/es_PA/main.lang similarity index 100% rename from htdocs/langs/es_PA/main.lang rename to public/langs/es_PA/main.lang diff --git a/htdocs/langs/es_PA/margins.lang b/public/langs/es_PA/margins.lang similarity index 100% rename from htdocs/langs/es_PA/margins.lang rename to public/langs/es_PA/margins.lang diff --git a/htdocs/langs/es_PA/members.lang b/public/langs/es_PA/members.lang similarity index 100% rename from htdocs/langs/es_PA/members.lang rename to public/langs/es_PA/members.lang diff --git a/htdocs/langs/es_PA/oauth.lang b/public/langs/es_PA/oauth.lang similarity index 100% rename from htdocs/langs/es_PA/oauth.lang rename to public/langs/es_PA/oauth.lang diff --git a/htdocs/langs/es_PA/opensurvey.lang b/public/langs/es_PA/opensurvey.lang similarity index 100% rename from htdocs/langs/es_PA/opensurvey.lang rename to public/langs/es_PA/opensurvey.lang diff --git a/htdocs/langs/es_PA/orders.lang b/public/langs/es_PA/orders.lang similarity index 100% rename from htdocs/langs/es_PA/orders.lang rename to public/langs/es_PA/orders.lang diff --git a/htdocs/langs/es_PA/other.lang b/public/langs/es_PA/other.lang similarity index 100% rename from htdocs/langs/es_PA/other.lang rename to public/langs/es_PA/other.lang diff --git a/htdocs/langs/es_PA/paybox.lang b/public/langs/es_PA/paybox.lang similarity index 100% rename from htdocs/langs/es_PA/paybox.lang rename to public/langs/es_PA/paybox.lang diff --git a/htdocs/langs/es_PA/paypal.lang b/public/langs/es_PA/paypal.lang similarity index 100% rename from htdocs/langs/es_PA/paypal.lang rename to public/langs/es_PA/paypal.lang diff --git a/htdocs/langs/es_PA/printing.lang b/public/langs/es_PA/printing.lang similarity index 100% rename from htdocs/langs/es_PA/printing.lang rename to public/langs/es_PA/printing.lang diff --git a/htdocs/langs/es_PA/productbatch.lang b/public/langs/es_PA/productbatch.lang similarity index 100% rename from htdocs/langs/es_PA/productbatch.lang rename to public/langs/es_PA/productbatch.lang diff --git a/htdocs/langs/es_PA/products.lang b/public/langs/es_PA/products.lang similarity index 100% rename from htdocs/langs/es_PA/products.lang rename to public/langs/es_PA/products.lang diff --git a/htdocs/langs/es_PA/projects.lang b/public/langs/es_PA/projects.lang similarity index 100% rename from htdocs/langs/es_PA/projects.lang rename to public/langs/es_PA/projects.lang diff --git a/htdocs/langs/es_PA/propal.lang b/public/langs/es_PA/propal.lang similarity index 100% rename from htdocs/langs/es_PA/propal.lang rename to public/langs/es_PA/propal.lang diff --git a/htdocs/langs/es_PA/receiptprinter.lang b/public/langs/es_PA/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_PA/receiptprinter.lang rename to public/langs/es_PA/receiptprinter.lang diff --git a/htdocs/langs/es_PA/resource.lang b/public/langs/es_PA/resource.lang similarity index 100% rename from htdocs/langs/es_PA/resource.lang rename to public/langs/es_PA/resource.lang diff --git a/htdocs/langs/es_PA/salaries.lang b/public/langs/es_PA/salaries.lang similarity index 100% rename from htdocs/langs/es_PA/salaries.lang rename to public/langs/es_PA/salaries.lang diff --git a/htdocs/langs/es_PA/sendings.lang b/public/langs/es_PA/sendings.lang similarity index 100% rename from htdocs/langs/es_PA/sendings.lang rename to public/langs/es_PA/sendings.lang diff --git a/htdocs/langs/es_PA/sms.lang b/public/langs/es_PA/sms.lang similarity index 100% rename from htdocs/langs/es_PA/sms.lang rename to public/langs/es_PA/sms.lang diff --git a/htdocs/langs/es_PA/stocks.lang b/public/langs/es_PA/stocks.lang similarity index 100% rename from htdocs/langs/es_PA/stocks.lang rename to public/langs/es_PA/stocks.lang diff --git a/htdocs/langs/es_PA/supplier_proposal.lang b/public/langs/es_PA/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_PA/supplier_proposal.lang rename to public/langs/es_PA/supplier_proposal.lang diff --git a/htdocs/langs/es_PA/suppliers.lang b/public/langs/es_PA/suppliers.lang similarity index 100% rename from htdocs/langs/es_PA/suppliers.lang rename to public/langs/es_PA/suppliers.lang diff --git a/htdocs/langs/es_PA/trips.lang b/public/langs/es_PA/trips.lang similarity index 100% rename from htdocs/langs/es_PA/trips.lang rename to public/langs/es_PA/trips.lang diff --git a/htdocs/langs/es_PA/users.lang b/public/langs/es_PA/users.lang similarity index 100% rename from htdocs/langs/es_PA/users.lang rename to public/langs/es_PA/users.lang diff --git a/htdocs/langs/es_PA/website.lang b/public/langs/es_PA/website.lang similarity index 100% rename from htdocs/langs/es_PA/website.lang rename to public/langs/es_PA/website.lang diff --git a/htdocs/langs/es_PA/withdrawals.lang b/public/langs/es_PA/withdrawals.lang similarity index 100% rename from htdocs/langs/es_PA/withdrawals.lang rename to public/langs/es_PA/withdrawals.lang diff --git a/htdocs/langs/es_PA/workflow.lang b/public/langs/es_PA/workflow.lang similarity index 100% rename from htdocs/langs/es_PA/workflow.lang rename to public/langs/es_PA/workflow.lang diff --git a/htdocs/langs/es_PE/accountancy.lang b/public/langs/es_PE/accountancy.lang similarity index 100% rename from htdocs/langs/es_PE/accountancy.lang rename to public/langs/es_PE/accountancy.lang diff --git a/htdocs/langs/es_PE/admin.lang b/public/langs/es_PE/admin.lang similarity index 100% rename from htdocs/langs/es_PE/admin.lang rename to public/langs/es_PE/admin.lang diff --git a/htdocs/langs/es_PE/agenda.lang b/public/langs/es_PE/agenda.lang similarity index 100% rename from htdocs/langs/es_PE/agenda.lang rename to public/langs/es_PE/agenda.lang diff --git a/htdocs/langs/es_PE/banks.lang b/public/langs/es_PE/banks.lang similarity index 100% rename from htdocs/langs/es_PE/banks.lang rename to public/langs/es_PE/banks.lang diff --git a/htdocs/langs/es_PE/bills.lang b/public/langs/es_PE/bills.lang similarity index 100% rename from htdocs/langs/es_PE/bills.lang rename to public/langs/es_PE/bills.lang diff --git a/htdocs/langs/es_PE/bookmarks.lang b/public/langs/es_PE/bookmarks.lang similarity index 100% rename from htdocs/langs/es_PE/bookmarks.lang rename to public/langs/es_PE/bookmarks.lang diff --git a/htdocs/langs/es_PE/boxes.lang b/public/langs/es_PE/boxes.lang similarity index 100% rename from htdocs/langs/es_PE/boxes.lang rename to public/langs/es_PE/boxes.lang diff --git a/htdocs/langs/es_PE/cashdesk.lang b/public/langs/es_PE/cashdesk.lang similarity index 100% rename from htdocs/langs/es_PE/cashdesk.lang rename to public/langs/es_PE/cashdesk.lang diff --git a/htdocs/langs/es_PE/categories.lang b/public/langs/es_PE/categories.lang similarity index 100% rename from htdocs/langs/es_PE/categories.lang rename to public/langs/es_PE/categories.lang diff --git a/htdocs/langs/es_PE/commercial.lang b/public/langs/es_PE/commercial.lang similarity index 100% rename from htdocs/langs/es_PE/commercial.lang rename to public/langs/es_PE/commercial.lang diff --git a/htdocs/langs/es_PE/companies.lang b/public/langs/es_PE/companies.lang similarity index 100% rename from htdocs/langs/es_PE/companies.lang rename to public/langs/es_PE/companies.lang diff --git a/htdocs/langs/es_PE/compta.lang b/public/langs/es_PE/compta.lang similarity index 100% rename from htdocs/langs/es_PE/compta.lang rename to public/langs/es_PE/compta.lang diff --git a/htdocs/langs/es_PE/contracts.lang b/public/langs/es_PE/contracts.lang similarity index 100% rename from htdocs/langs/es_PE/contracts.lang rename to public/langs/es_PE/contracts.lang diff --git a/htdocs/langs/es_PE/cron.lang b/public/langs/es_PE/cron.lang similarity index 100% rename from htdocs/langs/es_PE/cron.lang rename to public/langs/es_PE/cron.lang diff --git a/htdocs/langs/es_PE/deliveries.lang b/public/langs/es_PE/deliveries.lang similarity index 100% rename from htdocs/langs/es_PE/deliveries.lang rename to public/langs/es_PE/deliveries.lang diff --git a/htdocs/langs/es_PE/dict.lang b/public/langs/es_PE/dict.lang similarity index 100% rename from htdocs/langs/es_PE/dict.lang rename to public/langs/es_PE/dict.lang diff --git a/htdocs/langs/es_PE/donations.lang b/public/langs/es_PE/donations.lang similarity index 100% rename from htdocs/langs/es_PE/donations.lang rename to public/langs/es_PE/donations.lang diff --git a/htdocs/langs/es_PE/ecm.lang b/public/langs/es_PE/ecm.lang similarity index 100% rename from htdocs/langs/es_PE/ecm.lang rename to public/langs/es_PE/ecm.lang diff --git a/htdocs/langs/es_PE/errors.lang b/public/langs/es_PE/errors.lang similarity index 100% rename from htdocs/langs/es_PE/errors.lang rename to public/langs/es_PE/errors.lang diff --git a/htdocs/langs/es_PE/exports.lang b/public/langs/es_PE/exports.lang similarity index 100% rename from htdocs/langs/es_PE/exports.lang rename to public/langs/es_PE/exports.lang diff --git a/htdocs/langs/es_PE/externalsite.lang b/public/langs/es_PE/externalsite.lang similarity index 100% rename from htdocs/langs/es_PE/externalsite.lang rename to public/langs/es_PE/externalsite.lang diff --git a/htdocs/langs/es_PE/ftp.lang b/public/langs/es_PE/ftp.lang similarity index 100% rename from htdocs/langs/es_PE/ftp.lang rename to public/langs/es_PE/ftp.lang diff --git a/htdocs/langs/es_PE/help.lang b/public/langs/es_PE/help.lang similarity index 100% rename from htdocs/langs/es_PE/help.lang rename to public/langs/es_PE/help.lang diff --git a/htdocs/langs/es_PE/holiday.lang b/public/langs/es_PE/holiday.lang similarity index 100% rename from htdocs/langs/es_PE/holiday.lang rename to public/langs/es_PE/holiday.lang diff --git a/htdocs/langs/es_PE/hrm.lang b/public/langs/es_PE/hrm.lang similarity index 100% rename from htdocs/langs/es_PE/hrm.lang rename to public/langs/es_PE/hrm.lang diff --git a/htdocs/langs/es_PE/incoterm.lang b/public/langs/es_PE/incoterm.lang similarity index 100% rename from htdocs/langs/es_PE/incoterm.lang rename to public/langs/es_PE/incoterm.lang diff --git a/htdocs/langs/es_PE/install.lang b/public/langs/es_PE/install.lang similarity index 100% rename from htdocs/langs/es_PE/install.lang rename to public/langs/es_PE/install.lang diff --git a/htdocs/langs/es_PE/interventions.lang b/public/langs/es_PE/interventions.lang similarity index 100% rename from htdocs/langs/es_PE/interventions.lang rename to public/langs/es_PE/interventions.lang diff --git a/htdocs/langs/es_PE/languages.lang b/public/langs/es_PE/languages.lang similarity index 100% rename from htdocs/langs/es_PE/languages.lang rename to public/langs/es_PE/languages.lang diff --git a/htdocs/langs/es_PE/ldap.lang b/public/langs/es_PE/ldap.lang similarity index 100% rename from htdocs/langs/es_PE/ldap.lang rename to public/langs/es_PE/ldap.lang diff --git a/htdocs/langs/es_PE/link.lang b/public/langs/es_PE/link.lang similarity index 100% rename from htdocs/langs/es_PE/link.lang rename to public/langs/es_PE/link.lang diff --git a/htdocs/langs/es_PE/loan.lang b/public/langs/es_PE/loan.lang similarity index 100% rename from htdocs/langs/es_PE/loan.lang rename to public/langs/es_PE/loan.lang diff --git a/htdocs/langs/es_PE/mailmanspip.lang b/public/langs/es_PE/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_PE/mailmanspip.lang rename to public/langs/es_PE/mailmanspip.lang diff --git a/htdocs/langs/es_PE/mails.lang b/public/langs/es_PE/mails.lang similarity index 100% rename from htdocs/langs/es_PE/mails.lang rename to public/langs/es_PE/mails.lang diff --git a/htdocs/langs/es_PE/main.lang b/public/langs/es_PE/main.lang similarity index 100% rename from htdocs/langs/es_PE/main.lang rename to public/langs/es_PE/main.lang diff --git a/htdocs/langs/es_PE/margins.lang b/public/langs/es_PE/margins.lang similarity index 100% rename from htdocs/langs/es_PE/margins.lang rename to public/langs/es_PE/margins.lang diff --git a/htdocs/langs/es_PE/members.lang b/public/langs/es_PE/members.lang similarity index 100% rename from htdocs/langs/es_PE/members.lang rename to public/langs/es_PE/members.lang diff --git a/htdocs/langs/es_PE/oauth.lang b/public/langs/es_PE/oauth.lang similarity index 100% rename from htdocs/langs/es_PE/oauth.lang rename to public/langs/es_PE/oauth.lang diff --git a/htdocs/langs/es_PE/opensurvey.lang b/public/langs/es_PE/opensurvey.lang similarity index 100% rename from htdocs/langs/es_PE/opensurvey.lang rename to public/langs/es_PE/opensurvey.lang diff --git a/htdocs/langs/es_PE/orders.lang b/public/langs/es_PE/orders.lang similarity index 100% rename from htdocs/langs/es_PE/orders.lang rename to public/langs/es_PE/orders.lang diff --git a/htdocs/langs/es_PE/other.lang b/public/langs/es_PE/other.lang similarity index 100% rename from htdocs/langs/es_PE/other.lang rename to public/langs/es_PE/other.lang diff --git a/htdocs/langs/es_PE/paybox.lang b/public/langs/es_PE/paybox.lang similarity index 100% rename from htdocs/langs/es_PE/paybox.lang rename to public/langs/es_PE/paybox.lang diff --git a/htdocs/langs/es_PE/paypal.lang b/public/langs/es_PE/paypal.lang similarity index 100% rename from htdocs/langs/es_PE/paypal.lang rename to public/langs/es_PE/paypal.lang diff --git a/htdocs/langs/es_PE/printing.lang b/public/langs/es_PE/printing.lang similarity index 100% rename from htdocs/langs/es_PE/printing.lang rename to public/langs/es_PE/printing.lang diff --git a/htdocs/langs/es_PE/productbatch.lang b/public/langs/es_PE/productbatch.lang similarity index 100% rename from htdocs/langs/es_PE/productbatch.lang rename to public/langs/es_PE/productbatch.lang diff --git a/htdocs/langs/es_PE/products.lang b/public/langs/es_PE/products.lang similarity index 100% rename from htdocs/langs/es_PE/products.lang rename to public/langs/es_PE/products.lang diff --git a/htdocs/langs/es_PE/projects.lang b/public/langs/es_PE/projects.lang similarity index 100% rename from htdocs/langs/es_PE/projects.lang rename to public/langs/es_PE/projects.lang diff --git a/htdocs/langs/es_PE/propal.lang b/public/langs/es_PE/propal.lang similarity index 100% rename from htdocs/langs/es_PE/propal.lang rename to public/langs/es_PE/propal.lang diff --git a/htdocs/langs/es_PE/receiptprinter.lang b/public/langs/es_PE/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_PE/receiptprinter.lang rename to public/langs/es_PE/receiptprinter.lang diff --git a/htdocs/langs/es_PE/resource.lang b/public/langs/es_PE/resource.lang similarity index 100% rename from htdocs/langs/es_PE/resource.lang rename to public/langs/es_PE/resource.lang diff --git a/htdocs/langs/es_PE/salaries.lang b/public/langs/es_PE/salaries.lang similarity index 100% rename from htdocs/langs/es_PE/salaries.lang rename to public/langs/es_PE/salaries.lang diff --git a/htdocs/langs/es_PE/sendings.lang b/public/langs/es_PE/sendings.lang similarity index 100% rename from htdocs/langs/es_PE/sendings.lang rename to public/langs/es_PE/sendings.lang diff --git a/htdocs/langs/es_PE/sms.lang b/public/langs/es_PE/sms.lang similarity index 100% rename from htdocs/langs/es_PE/sms.lang rename to public/langs/es_PE/sms.lang diff --git a/htdocs/langs/es_PE/stocks.lang b/public/langs/es_PE/stocks.lang similarity index 100% rename from htdocs/langs/es_PE/stocks.lang rename to public/langs/es_PE/stocks.lang diff --git a/htdocs/langs/es_PE/supplier_proposal.lang b/public/langs/es_PE/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_PE/supplier_proposal.lang rename to public/langs/es_PE/supplier_proposal.lang diff --git a/htdocs/langs/es_PE/suppliers.lang b/public/langs/es_PE/suppliers.lang similarity index 100% rename from htdocs/langs/es_PE/suppliers.lang rename to public/langs/es_PE/suppliers.lang diff --git a/htdocs/langs/es_PE/trips.lang b/public/langs/es_PE/trips.lang similarity index 100% rename from htdocs/langs/es_PE/trips.lang rename to public/langs/es_PE/trips.lang diff --git a/htdocs/langs/es_PE/users.lang b/public/langs/es_PE/users.lang similarity index 100% rename from htdocs/langs/es_PE/users.lang rename to public/langs/es_PE/users.lang diff --git a/htdocs/langs/es_PE/website.lang b/public/langs/es_PE/website.lang similarity index 100% rename from htdocs/langs/es_PE/website.lang rename to public/langs/es_PE/website.lang diff --git a/htdocs/langs/es_PE/withdrawals.lang b/public/langs/es_PE/withdrawals.lang similarity index 100% rename from htdocs/langs/es_PE/withdrawals.lang rename to public/langs/es_PE/withdrawals.lang diff --git a/htdocs/langs/es_PE/workflow.lang b/public/langs/es_PE/workflow.lang similarity index 100% rename from htdocs/langs/es_PE/workflow.lang rename to public/langs/es_PE/workflow.lang diff --git a/htdocs/langs/es_PR/admin.lang b/public/langs/es_PR/admin.lang similarity index 100% rename from htdocs/langs/es_PR/admin.lang rename to public/langs/es_PR/admin.lang diff --git a/htdocs/langs/es_PR/bills.lang b/public/langs/es_PR/bills.lang similarity index 100% rename from htdocs/langs/es_PR/bills.lang rename to public/langs/es_PR/bills.lang diff --git a/htdocs/langs/es_PR/companies.lang b/public/langs/es_PR/companies.lang similarity index 100% rename from htdocs/langs/es_PR/companies.lang rename to public/langs/es_PR/companies.lang diff --git a/htdocs/langs/es_PR/compta.lang b/public/langs/es_PR/compta.lang similarity index 100% rename from htdocs/langs/es_PR/compta.lang rename to public/langs/es_PR/compta.lang diff --git a/htdocs/langs/es_PR/main.lang b/public/langs/es_PR/main.lang similarity index 100% rename from htdocs/langs/es_PR/main.lang rename to public/langs/es_PR/main.lang diff --git a/htdocs/langs/es_PR/propal.lang b/public/langs/es_PR/propal.lang similarity index 100% rename from htdocs/langs/es_PR/propal.lang rename to public/langs/es_PR/propal.lang diff --git a/htdocs/langs/es_PY/accountancy.lang b/public/langs/es_PY/accountancy.lang similarity index 100% rename from htdocs/langs/es_PY/accountancy.lang rename to public/langs/es_PY/accountancy.lang diff --git a/htdocs/langs/es_PY/admin.lang b/public/langs/es_PY/admin.lang similarity index 100% rename from htdocs/langs/es_PY/admin.lang rename to public/langs/es_PY/admin.lang diff --git a/htdocs/langs/es_PY/agenda.lang b/public/langs/es_PY/agenda.lang similarity index 100% rename from htdocs/langs/es_PY/agenda.lang rename to public/langs/es_PY/agenda.lang diff --git a/htdocs/langs/es_PY/banks.lang b/public/langs/es_PY/banks.lang similarity index 100% rename from htdocs/langs/es_PY/banks.lang rename to public/langs/es_PY/banks.lang diff --git a/htdocs/langs/es_PY/bills.lang b/public/langs/es_PY/bills.lang similarity index 100% rename from htdocs/langs/es_PY/bills.lang rename to public/langs/es_PY/bills.lang diff --git a/htdocs/langs/es_PY/bookmarks.lang b/public/langs/es_PY/bookmarks.lang similarity index 100% rename from htdocs/langs/es_PY/bookmarks.lang rename to public/langs/es_PY/bookmarks.lang diff --git a/htdocs/langs/es_PY/boxes.lang b/public/langs/es_PY/boxes.lang similarity index 100% rename from htdocs/langs/es_PY/boxes.lang rename to public/langs/es_PY/boxes.lang diff --git a/htdocs/langs/es_PY/cashdesk.lang b/public/langs/es_PY/cashdesk.lang similarity index 100% rename from htdocs/langs/es_PY/cashdesk.lang rename to public/langs/es_PY/cashdesk.lang diff --git a/htdocs/langs/es_PY/categories.lang b/public/langs/es_PY/categories.lang similarity index 100% rename from htdocs/langs/es_PY/categories.lang rename to public/langs/es_PY/categories.lang diff --git a/htdocs/langs/es_PY/commercial.lang b/public/langs/es_PY/commercial.lang similarity index 100% rename from htdocs/langs/es_PY/commercial.lang rename to public/langs/es_PY/commercial.lang diff --git a/htdocs/langs/es_PY/companies.lang b/public/langs/es_PY/companies.lang similarity index 100% rename from htdocs/langs/es_PY/companies.lang rename to public/langs/es_PY/companies.lang diff --git a/htdocs/langs/es_PY/compta.lang b/public/langs/es_PY/compta.lang similarity index 100% rename from htdocs/langs/es_PY/compta.lang rename to public/langs/es_PY/compta.lang diff --git a/htdocs/langs/es_PY/contracts.lang b/public/langs/es_PY/contracts.lang similarity index 100% rename from htdocs/langs/es_PY/contracts.lang rename to public/langs/es_PY/contracts.lang diff --git a/htdocs/langs/es_PY/cron.lang b/public/langs/es_PY/cron.lang similarity index 100% rename from htdocs/langs/es_PY/cron.lang rename to public/langs/es_PY/cron.lang diff --git a/htdocs/langs/es_PY/deliveries.lang b/public/langs/es_PY/deliveries.lang similarity index 100% rename from htdocs/langs/es_PY/deliveries.lang rename to public/langs/es_PY/deliveries.lang diff --git a/htdocs/langs/es_PY/dict.lang b/public/langs/es_PY/dict.lang similarity index 100% rename from htdocs/langs/es_PY/dict.lang rename to public/langs/es_PY/dict.lang diff --git a/htdocs/langs/es_PY/donations.lang b/public/langs/es_PY/donations.lang similarity index 100% rename from htdocs/langs/es_PY/donations.lang rename to public/langs/es_PY/donations.lang diff --git a/htdocs/langs/es_PY/ecm.lang b/public/langs/es_PY/ecm.lang similarity index 100% rename from htdocs/langs/es_PY/ecm.lang rename to public/langs/es_PY/ecm.lang diff --git a/htdocs/langs/es_PY/errors.lang b/public/langs/es_PY/errors.lang similarity index 100% rename from htdocs/langs/es_PY/errors.lang rename to public/langs/es_PY/errors.lang diff --git a/htdocs/langs/es_PY/exports.lang b/public/langs/es_PY/exports.lang similarity index 100% rename from htdocs/langs/es_PY/exports.lang rename to public/langs/es_PY/exports.lang diff --git a/htdocs/langs/es_PY/externalsite.lang b/public/langs/es_PY/externalsite.lang similarity index 100% rename from htdocs/langs/es_PY/externalsite.lang rename to public/langs/es_PY/externalsite.lang diff --git a/htdocs/langs/es_PY/ftp.lang b/public/langs/es_PY/ftp.lang similarity index 100% rename from htdocs/langs/es_PY/ftp.lang rename to public/langs/es_PY/ftp.lang diff --git a/htdocs/langs/es_PY/help.lang b/public/langs/es_PY/help.lang similarity index 100% rename from htdocs/langs/es_PY/help.lang rename to public/langs/es_PY/help.lang diff --git a/htdocs/langs/es_PY/holiday.lang b/public/langs/es_PY/holiday.lang similarity index 100% rename from htdocs/langs/es_PY/holiday.lang rename to public/langs/es_PY/holiday.lang diff --git a/htdocs/langs/es_PY/hrm.lang b/public/langs/es_PY/hrm.lang similarity index 100% rename from htdocs/langs/es_PY/hrm.lang rename to public/langs/es_PY/hrm.lang diff --git a/htdocs/langs/es_PY/incoterm.lang b/public/langs/es_PY/incoterm.lang similarity index 100% rename from htdocs/langs/es_PY/incoterm.lang rename to public/langs/es_PY/incoterm.lang diff --git a/htdocs/langs/es_PY/install.lang b/public/langs/es_PY/install.lang similarity index 100% rename from htdocs/langs/es_PY/install.lang rename to public/langs/es_PY/install.lang diff --git a/htdocs/langs/es_PY/interventions.lang b/public/langs/es_PY/interventions.lang similarity index 100% rename from htdocs/langs/es_PY/interventions.lang rename to public/langs/es_PY/interventions.lang diff --git a/htdocs/langs/es_PY/languages.lang b/public/langs/es_PY/languages.lang similarity index 100% rename from htdocs/langs/es_PY/languages.lang rename to public/langs/es_PY/languages.lang diff --git a/htdocs/langs/es_PY/ldap.lang b/public/langs/es_PY/ldap.lang similarity index 100% rename from htdocs/langs/es_PY/ldap.lang rename to public/langs/es_PY/ldap.lang diff --git a/htdocs/langs/es_PY/link.lang b/public/langs/es_PY/link.lang similarity index 100% rename from htdocs/langs/es_PY/link.lang rename to public/langs/es_PY/link.lang diff --git a/htdocs/langs/es_PY/loan.lang b/public/langs/es_PY/loan.lang similarity index 100% rename from htdocs/langs/es_PY/loan.lang rename to public/langs/es_PY/loan.lang diff --git a/htdocs/langs/es_PY/mailmanspip.lang b/public/langs/es_PY/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_PY/mailmanspip.lang rename to public/langs/es_PY/mailmanspip.lang diff --git a/htdocs/langs/es_PY/mails.lang b/public/langs/es_PY/mails.lang similarity index 100% rename from htdocs/langs/es_PY/mails.lang rename to public/langs/es_PY/mails.lang diff --git a/htdocs/langs/es_PY/main.lang b/public/langs/es_PY/main.lang similarity index 100% rename from htdocs/langs/es_PY/main.lang rename to public/langs/es_PY/main.lang diff --git a/htdocs/langs/es_PY/margins.lang b/public/langs/es_PY/margins.lang similarity index 100% rename from htdocs/langs/es_PY/margins.lang rename to public/langs/es_PY/margins.lang diff --git a/htdocs/langs/es_PY/members.lang b/public/langs/es_PY/members.lang similarity index 100% rename from htdocs/langs/es_PY/members.lang rename to public/langs/es_PY/members.lang diff --git a/htdocs/langs/es_PY/oauth.lang b/public/langs/es_PY/oauth.lang similarity index 100% rename from htdocs/langs/es_PY/oauth.lang rename to public/langs/es_PY/oauth.lang diff --git a/htdocs/langs/es_PY/opensurvey.lang b/public/langs/es_PY/opensurvey.lang similarity index 100% rename from htdocs/langs/es_PY/opensurvey.lang rename to public/langs/es_PY/opensurvey.lang diff --git a/htdocs/langs/es_PY/orders.lang b/public/langs/es_PY/orders.lang similarity index 100% rename from htdocs/langs/es_PY/orders.lang rename to public/langs/es_PY/orders.lang diff --git a/htdocs/langs/es_PY/other.lang b/public/langs/es_PY/other.lang similarity index 100% rename from htdocs/langs/es_PY/other.lang rename to public/langs/es_PY/other.lang diff --git a/htdocs/langs/es_PY/paybox.lang b/public/langs/es_PY/paybox.lang similarity index 100% rename from htdocs/langs/es_PY/paybox.lang rename to public/langs/es_PY/paybox.lang diff --git a/htdocs/langs/es_PY/paypal.lang b/public/langs/es_PY/paypal.lang similarity index 100% rename from htdocs/langs/es_PY/paypal.lang rename to public/langs/es_PY/paypal.lang diff --git a/htdocs/langs/es_PY/printing.lang b/public/langs/es_PY/printing.lang similarity index 100% rename from htdocs/langs/es_PY/printing.lang rename to public/langs/es_PY/printing.lang diff --git a/htdocs/langs/es_PY/productbatch.lang b/public/langs/es_PY/productbatch.lang similarity index 100% rename from htdocs/langs/es_PY/productbatch.lang rename to public/langs/es_PY/productbatch.lang diff --git a/htdocs/langs/es_PY/products.lang b/public/langs/es_PY/products.lang similarity index 100% rename from htdocs/langs/es_PY/products.lang rename to public/langs/es_PY/products.lang diff --git a/htdocs/langs/es_PY/projects.lang b/public/langs/es_PY/projects.lang similarity index 100% rename from htdocs/langs/es_PY/projects.lang rename to public/langs/es_PY/projects.lang diff --git a/htdocs/langs/es_PY/propal.lang b/public/langs/es_PY/propal.lang similarity index 100% rename from htdocs/langs/es_PY/propal.lang rename to public/langs/es_PY/propal.lang diff --git a/htdocs/langs/es_PY/receiptprinter.lang b/public/langs/es_PY/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_PY/receiptprinter.lang rename to public/langs/es_PY/receiptprinter.lang diff --git a/htdocs/langs/es_PY/resource.lang b/public/langs/es_PY/resource.lang similarity index 100% rename from htdocs/langs/es_PY/resource.lang rename to public/langs/es_PY/resource.lang diff --git a/htdocs/langs/es_PY/salaries.lang b/public/langs/es_PY/salaries.lang similarity index 100% rename from htdocs/langs/es_PY/salaries.lang rename to public/langs/es_PY/salaries.lang diff --git a/htdocs/langs/es_PY/sendings.lang b/public/langs/es_PY/sendings.lang similarity index 100% rename from htdocs/langs/es_PY/sendings.lang rename to public/langs/es_PY/sendings.lang diff --git a/htdocs/langs/es_PY/sms.lang b/public/langs/es_PY/sms.lang similarity index 100% rename from htdocs/langs/es_PY/sms.lang rename to public/langs/es_PY/sms.lang diff --git a/htdocs/langs/es_PY/stocks.lang b/public/langs/es_PY/stocks.lang similarity index 100% rename from htdocs/langs/es_PY/stocks.lang rename to public/langs/es_PY/stocks.lang diff --git a/htdocs/langs/es_PY/supplier_proposal.lang b/public/langs/es_PY/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_PY/supplier_proposal.lang rename to public/langs/es_PY/supplier_proposal.lang diff --git a/htdocs/langs/es_PY/suppliers.lang b/public/langs/es_PY/suppliers.lang similarity index 100% rename from htdocs/langs/es_PY/suppliers.lang rename to public/langs/es_PY/suppliers.lang diff --git a/htdocs/langs/es_PY/trips.lang b/public/langs/es_PY/trips.lang similarity index 100% rename from htdocs/langs/es_PY/trips.lang rename to public/langs/es_PY/trips.lang diff --git a/htdocs/langs/es_PY/users.lang b/public/langs/es_PY/users.lang similarity index 100% rename from htdocs/langs/es_PY/users.lang rename to public/langs/es_PY/users.lang diff --git a/htdocs/langs/es_PY/website.lang b/public/langs/es_PY/website.lang similarity index 100% rename from htdocs/langs/es_PY/website.lang rename to public/langs/es_PY/website.lang diff --git a/htdocs/langs/es_PY/withdrawals.lang b/public/langs/es_PY/withdrawals.lang similarity index 100% rename from htdocs/langs/es_PY/withdrawals.lang rename to public/langs/es_PY/withdrawals.lang diff --git a/htdocs/langs/es_PY/workflow.lang b/public/langs/es_PY/workflow.lang similarity index 100% rename from htdocs/langs/es_PY/workflow.lang rename to public/langs/es_PY/workflow.lang diff --git a/htdocs/langs/es_VE/accountancy.lang b/public/langs/es_VE/accountancy.lang similarity index 100% rename from htdocs/langs/es_VE/accountancy.lang rename to public/langs/es_VE/accountancy.lang diff --git a/htdocs/langs/es_VE/admin.lang b/public/langs/es_VE/admin.lang similarity index 100% rename from htdocs/langs/es_VE/admin.lang rename to public/langs/es_VE/admin.lang diff --git a/htdocs/langs/es_VE/agenda.lang b/public/langs/es_VE/agenda.lang similarity index 100% rename from htdocs/langs/es_VE/agenda.lang rename to public/langs/es_VE/agenda.lang diff --git a/htdocs/langs/es_VE/banks.lang b/public/langs/es_VE/banks.lang similarity index 100% rename from htdocs/langs/es_VE/banks.lang rename to public/langs/es_VE/banks.lang diff --git a/htdocs/langs/es_VE/bills.lang b/public/langs/es_VE/bills.lang similarity index 100% rename from htdocs/langs/es_VE/bills.lang rename to public/langs/es_VE/bills.lang diff --git a/htdocs/langs/es_VE/bookmarks.lang b/public/langs/es_VE/bookmarks.lang similarity index 100% rename from htdocs/langs/es_VE/bookmarks.lang rename to public/langs/es_VE/bookmarks.lang diff --git a/htdocs/langs/es_VE/boxes.lang b/public/langs/es_VE/boxes.lang similarity index 100% rename from htdocs/langs/es_VE/boxes.lang rename to public/langs/es_VE/boxes.lang diff --git a/htdocs/langs/es_VE/cashdesk.lang b/public/langs/es_VE/cashdesk.lang similarity index 100% rename from htdocs/langs/es_VE/cashdesk.lang rename to public/langs/es_VE/cashdesk.lang diff --git a/htdocs/langs/es_VE/categories.lang b/public/langs/es_VE/categories.lang similarity index 100% rename from htdocs/langs/es_VE/categories.lang rename to public/langs/es_VE/categories.lang diff --git a/htdocs/langs/es_VE/commercial.lang b/public/langs/es_VE/commercial.lang similarity index 100% rename from htdocs/langs/es_VE/commercial.lang rename to public/langs/es_VE/commercial.lang diff --git a/htdocs/langs/es_VE/companies.lang b/public/langs/es_VE/companies.lang similarity index 100% rename from htdocs/langs/es_VE/companies.lang rename to public/langs/es_VE/companies.lang diff --git a/htdocs/langs/es_VE/compta.lang b/public/langs/es_VE/compta.lang similarity index 100% rename from htdocs/langs/es_VE/compta.lang rename to public/langs/es_VE/compta.lang diff --git a/htdocs/langs/es_VE/contracts.lang b/public/langs/es_VE/contracts.lang similarity index 100% rename from htdocs/langs/es_VE/contracts.lang rename to public/langs/es_VE/contracts.lang diff --git a/htdocs/langs/es_VE/cron.lang b/public/langs/es_VE/cron.lang similarity index 100% rename from htdocs/langs/es_VE/cron.lang rename to public/langs/es_VE/cron.lang diff --git a/htdocs/langs/es_VE/deliveries.lang b/public/langs/es_VE/deliveries.lang similarity index 100% rename from htdocs/langs/es_VE/deliveries.lang rename to public/langs/es_VE/deliveries.lang diff --git a/htdocs/langs/es_VE/dict.lang b/public/langs/es_VE/dict.lang similarity index 100% rename from htdocs/langs/es_VE/dict.lang rename to public/langs/es_VE/dict.lang diff --git a/htdocs/langs/es_VE/donations.lang b/public/langs/es_VE/donations.lang similarity index 100% rename from htdocs/langs/es_VE/donations.lang rename to public/langs/es_VE/donations.lang diff --git a/htdocs/langs/es_VE/ecm.lang b/public/langs/es_VE/ecm.lang similarity index 100% rename from htdocs/langs/es_VE/ecm.lang rename to public/langs/es_VE/ecm.lang diff --git a/htdocs/langs/es_VE/errors.lang b/public/langs/es_VE/errors.lang similarity index 100% rename from htdocs/langs/es_VE/errors.lang rename to public/langs/es_VE/errors.lang diff --git a/htdocs/langs/es_VE/exports.lang b/public/langs/es_VE/exports.lang similarity index 100% rename from htdocs/langs/es_VE/exports.lang rename to public/langs/es_VE/exports.lang diff --git a/htdocs/langs/es_VE/externalsite.lang b/public/langs/es_VE/externalsite.lang similarity index 100% rename from htdocs/langs/es_VE/externalsite.lang rename to public/langs/es_VE/externalsite.lang diff --git a/htdocs/langs/es_VE/ftp.lang b/public/langs/es_VE/ftp.lang similarity index 100% rename from htdocs/langs/es_VE/ftp.lang rename to public/langs/es_VE/ftp.lang diff --git a/htdocs/langs/es_VE/help.lang b/public/langs/es_VE/help.lang similarity index 100% rename from htdocs/langs/es_VE/help.lang rename to public/langs/es_VE/help.lang diff --git a/htdocs/langs/es_VE/holiday.lang b/public/langs/es_VE/holiday.lang similarity index 100% rename from htdocs/langs/es_VE/holiday.lang rename to public/langs/es_VE/holiday.lang diff --git a/htdocs/langs/es_VE/hrm.lang b/public/langs/es_VE/hrm.lang similarity index 100% rename from htdocs/langs/es_VE/hrm.lang rename to public/langs/es_VE/hrm.lang diff --git a/htdocs/langs/es_VE/incoterm.lang b/public/langs/es_VE/incoterm.lang similarity index 100% rename from htdocs/langs/es_VE/incoterm.lang rename to public/langs/es_VE/incoterm.lang diff --git a/htdocs/langs/es_VE/install.lang b/public/langs/es_VE/install.lang similarity index 100% rename from htdocs/langs/es_VE/install.lang rename to public/langs/es_VE/install.lang diff --git a/htdocs/langs/es_VE/interventions.lang b/public/langs/es_VE/interventions.lang similarity index 100% rename from htdocs/langs/es_VE/interventions.lang rename to public/langs/es_VE/interventions.lang diff --git a/htdocs/langs/es_VE/languages.lang b/public/langs/es_VE/languages.lang similarity index 100% rename from htdocs/langs/es_VE/languages.lang rename to public/langs/es_VE/languages.lang diff --git a/htdocs/langs/es_VE/ldap.lang b/public/langs/es_VE/ldap.lang similarity index 100% rename from htdocs/langs/es_VE/ldap.lang rename to public/langs/es_VE/ldap.lang diff --git a/htdocs/langs/es_VE/link.lang b/public/langs/es_VE/link.lang similarity index 100% rename from htdocs/langs/es_VE/link.lang rename to public/langs/es_VE/link.lang diff --git a/htdocs/langs/es_VE/loan.lang b/public/langs/es_VE/loan.lang similarity index 100% rename from htdocs/langs/es_VE/loan.lang rename to public/langs/es_VE/loan.lang diff --git a/htdocs/langs/es_VE/mailmanspip.lang b/public/langs/es_VE/mailmanspip.lang similarity index 100% rename from htdocs/langs/es_VE/mailmanspip.lang rename to public/langs/es_VE/mailmanspip.lang diff --git a/htdocs/langs/es_VE/mails.lang b/public/langs/es_VE/mails.lang similarity index 100% rename from htdocs/langs/es_VE/mails.lang rename to public/langs/es_VE/mails.lang diff --git a/htdocs/langs/es_VE/main.lang b/public/langs/es_VE/main.lang similarity index 100% rename from htdocs/langs/es_VE/main.lang rename to public/langs/es_VE/main.lang diff --git a/htdocs/langs/es_VE/margins.lang b/public/langs/es_VE/margins.lang similarity index 100% rename from htdocs/langs/es_VE/margins.lang rename to public/langs/es_VE/margins.lang diff --git a/htdocs/langs/es_VE/members.lang b/public/langs/es_VE/members.lang similarity index 100% rename from htdocs/langs/es_VE/members.lang rename to public/langs/es_VE/members.lang diff --git a/htdocs/langs/es_VE/oauth.lang b/public/langs/es_VE/oauth.lang similarity index 100% rename from htdocs/langs/es_VE/oauth.lang rename to public/langs/es_VE/oauth.lang diff --git a/htdocs/langs/es_VE/opensurvey.lang b/public/langs/es_VE/opensurvey.lang similarity index 100% rename from htdocs/langs/es_VE/opensurvey.lang rename to public/langs/es_VE/opensurvey.lang diff --git a/htdocs/langs/es_VE/orders.lang b/public/langs/es_VE/orders.lang similarity index 100% rename from htdocs/langs/es_VE/orders.lang rename to public/langs/es_VE/orders.lang diff --git a/htdocs/langs/es_VE/other.lang b/public/langs/es_VE/other.lang similarity index 100% rename from htdocs/langs/es_VE/other.lang rename to public/langs/es_VE/other.lang diff --git a/htdocs/langs/es_VE/paybox.lang b/public/langs/es_VE/paybox.lang similarity index 100% rename from htdocs/langs/es_VE/paybox.lang rename to public/langs/es_VE/paybox.lang diff --git a/htdocs/langs/es_VE/paypal.lang b/public/langs/es_VE/paypal.lang similarity index 100% rename from htdocs/langs/es_VE/paypal.lang rename to public/langs/es_VE/paypal.lang diff --git a/htdocs/langs/es_VE/printing.lang b/public/langs/es_VE/printing.lang similarity index 100% rename from htdocs/langs/es_VE/printing.lang rename to public/langs/es_VE/printing.lang diff --git a/htdocs/langs/es_VE/productbatch.lang b/public/langs/es_VE/productbatch.lang similarity index 100% rename from htdocs/langs/es_VE/productbatch.lang rename to public/langs/es_VE/productbatch.lang diff --git a/htdocs/langs/es_VE/products.lang b/public/langs/es_VE/products.lang similarity index 100% rename from htdocs/langs/es_VE/products.lang rename to public/langs/es_VE/products.lang diff --git a/htdocs/langs/es_VE/projects.lang b/public/langs/es_VE/projects.lang similarity index 100% rename from htdocs/langs/es_VE/projects.lang rename to public/langs/es_VE/projects.lang diff --git a/htdocs/langs/es_VE/propal.lang b/public/langs/es_VE/propal.lang similarity index 100% rename from htdocs/langs/es_VE/propal.lang rename to public/langs/es_VE/propal.lang diff --git a/htdocs/langs/es_VE/receiptprinter.lang b/public/langs/es_VE/receiptprinter.lang similarity index 100% rename from htdocs/langs/es_VE/receiptprinter.lang rename to public/langs/es_VE/receiptprinter.lang diff --git a/htdocs/langs/es_VE/resource.lang b/public/langs/es_VE/resource.lang similarity index 100% rename from htdocs/langs/es_VE/resource.lang rename to public/langs/es_VE/resource.lang diff --git a/htdocs/langs/es_VE/salaries.lang b/public/langs/es_VE/salaries.lang similarity index 100% rename from htdocs/langs/es_VE/salaries.lang rename to public/langs/es_VE/salaries.lang diff --git a/htdocs/langs/es_VE/sendings.lang b/public/langs/es_VE/sendings.lang similarity index 100% rename from htdocs/langs/es_VE/sendings.lang rename to public/langs/es_VE/sendings.lang diff --git a/htdocs/langs/es_VE/sms.lang b/public/langs/es_VE/sms.lang similarity index 100% rename from htdocs/langs/es_VE/sms.lang rename to public/langs/es_VE/sms.lang diff --git a/htdocs/langs/es_VE/stocks.lang b/public/langs/es_VE/stocks.lang similarity index 100% rename from htdocs/langs/es_VE/stocks.lang rename to public/langs/es_VE/stocks.lang diff --git a/htdocs/langs/es_VE/supplier_proposal.lang b/public/langs/es_VE/supplier_proposal.lang similarity index 100% rename from htdocs/langs/es_VE/supplier_proposal.lang rename to public/langs/es_VE/supplier_proposal.lang diff --git a/htdocs/langs/es_VE/suppliers.lang b/public/langs/es_VE/suppliers.lang similarity index 100% rename from htdocs/langs/es_VE/suppliers.lang rename to public/langs/es_VE/suppliers.lang diff --git a/htdocs/langs/es_VE/trips.lang b/public/langs/es_VE/trips.lang similarity index 100% rename from htdocs/langs/es_VE/trips.lang rename to public/langs/es_VE/trips.lang diff --git a/htdocs/langs/es_VE/users.lang b/public/langs/es_VE/users.lang similarity index 100% rename from htdocs/langs/es_VE/users.lang rename to public/langs/es_VE/users.lang diff --git a/htdocs/langs/es_VE/website.lang b/public/langs/es_VE/website.lang similarity index 100% rename from htdocs/langs/es_VE/website.lang rename to public/langs/es_VE/website.lang diff --git a/htdocs/langs/es_VE/withdrawals.lang b/public/langs/es_VE/withdrawals.lang similarity index 100% rename from htdocs/langs/es_VE/withdrawals.lang rename to public/langs/es_VE/withdrawals.lang diff --git a/htdocs/langs/es_VE/workflow.lang b/public/langs/es_VE/workflow.lang similarity index 100% rename from htdocs/langs/es_VE/workflow.lang rename to public/langs/es_VE/workflow.lang diff --git a/htdocs/langs/et_EE/accountancy.lang b/public/langs/et_EE/accountancy.lang similarity index 100% rename from htdocs/langs/et_EE/accountancy.lang rename to public/langs/et_EE/accountancy.lang diff --git a/htdocs/langs/et_EE/admin.lang b/public/langs/et_EE/admin.lang similarity index 100% rename from htdocs/langs/et_EE/admin.lang rename to public/langs/et_EE/admin.lang diff --git a/htdocs/langs/et_EE/agenda.lang b/public/langs/et_EE/agenda.lang similarity index 100% rename from htdocs/langs/et_EE/agenda.lang rename to public/langs/et_EE/agenda.lang diff --git a/htdocs/langs/et_EE/banks.lang b/public/langs/et_EE/banks.lang similarity index 100% rename from htdocs/langs/et_EE/banks.lang rename to public/langs/et_EE/banks.lang diff --git a/htdocs/langs/et_EE/bills.lang b/public/langs/et_EE/bills.lang similarity index 100% rename from htdocs/langs/et_EE/bills.lang rename to public/langs/et_EE/bills.lang diff --git a/htdocs/langs/et_EE/bookmarks.lang b/public/langs/et_EE/bookmarks.lang similarity index 100% rename from htdocs/langs/et_EE/bookmarks.lang rename to public/langs/et_EE/bookmarks.lang diff --git a/htdocs/langs/et_EE/boxes.lang b/public/langs/et_EE/boxes.lang similarity index 100% rename from htdocs/langs/et_EE/boxes.lang rename to public/langs/et_EE/boxes.lang diff --git a/htdocs/langs/et_EE/cashdesk.lang b/public/langs/et_EE/cashdesk.lang similarity index 100% rename from htdocs/langs/et_EE/cashdesk.lang rename to public/langs/et_EE/cashdesk.lang diff --git a/htdocs/langs/et_EE/categories.lang b/public/langs/et_EE/categories.lang similarity index 100% rename from htdocs/langs/et_EE/categories.lang rename to public/langs/et_EE/categories.lang diff --git a/htdocs/langs/et_EE/commercial.lang b/public/langs/et_EE/commercial.lang similarity index 100% rename from htdocs/langs/et_EE/commercial.lang rename to public/langs/et_EE/commercial.lang diff --git a/htdocs/langs/et_EE/companies.lang b/public/langs/et_EE/companies.lang similarity index 100% rename from htdocs/langs/et_EE/companies.lang rename to public/langs/et_EE/companies.lang diff --git a/htdocs/langs/et_EE/compta.lang b/public/langs/et_EE/compta.lang similarity index 100% rename from htdocs/langs/et_EE/compta.lang rename to public/langs/et_EE/compta.lang diff --git a/htdocs/langs/et_EE/contracts.lang b/public/langs/et_EE/contracts.lang similarity index 100% rename from htdocs/langs/et_EE/contracts.lang rename to public/langs/et_EE/contracts.lang diff --git a/htdocs/langs/et_EE/cron.lang b/public/langs/et_EE/cron.lang similarity index 100% rename from htdocs/langs/et_EE/cron.lang rename to public/langs/et_EE/cron.lang diff --git a/htdocs/langs/et_EE/deliveries.lang b/public/langs/et_EE/deliveries.lang similarity index 100% rename from htdocs/langs/et_EE/deliveries.lang rename to public/langs/et_EE/deliveries.lang diff --git a/htdocs/langs/et_EE/dict.lang b/public/langs/et_EE/dict.lang similarity index 100% rename from htdocs/langs/et_EE/dict.lang rename to public/langs/et_EE/dict.lang diff --git a/htdocs/langs/et_EE/donations.lang b/public/langs/et_EE/donations.lang similarity index 100% rename from htdocs/langs/et_EE/donations.lang rename to public/langs/et_EE/donations.lang diff --git a/htdocs/langs/et_EE/ecm.lang b/public/langs/et_EE/ecm.lang similarity index 100% rename from htdocs/langs/et_EE/ecm.lang rename to public/langs/et_EE/ecm.lang diff --git a/htdocs/langs/et_EE/errors.lang b/public/langs/et_EE/errors.lang similarity index 100% rename from htdocs/langs/et_EE/errors.lang rename to public/langs/et_EE/errors.lang diff --git a/htdocs/langs/et_EE/exports.lang b/public/langs/et_EE/exports.lang similarity index 100% rename from htdocs/langs/et_EE/exports.lang rename to public/langs/et_EE/exports.lang diff --git a/htdocs/langs/et_EE/externalsite.lang b/public/langs/et_EE/externalsite.lang similarity index 100% rename from htdocs/langs/et_EE/externalsite.lang rename to public/langs/et_EE/externalsite.lang diff --git a/htdocs/langs/et_EE/ftp.lang b/public/langs/et_EE/ftp.lang similarity index 100% rename from htdocs/langs/et_EE/ftp.lang rename to public/langs/et_EE/ftp.lang diff --git a/htdocs/langs/et_EE/help.lang b/public/langs/et_EE/help.lang similarity index 100% rename from htdocs/langs/et_EE/help.lang rename to public/langs/et_EE/help.lang diff --git a/htdocs/langs/et_EE/holiday.lang b/public/langs/et_EE/holiday.lang similarity index 100% rename from htdocs/langs/et_EE/holiday.lang rename to public/langs/et_EE/holiday.lang diff --git a/htdocs/langs/et_EE/hrm.lang b/public/langs/et_EE/hrm.lang similarity index 100% rename from htdocs/langs/et_EE/hrm.lang rename to public/langs/et_EE/hrm.lang diff --git a/htdocs/langs/et_EE/incoterm.lang b/public/langs/et_EE/incoterm.lang similarity index 100% rename from htdocs/langs/et_EE/incoterm.lang rename to public/langs/et_EE/incoterm.lang diff --git a/htdocs/langs/et_EE/install.lang b/public/langs/et_EE/install.lang similarity index 100% rename from htdocs/langs/et_EE/install.lang rename to public/langs/et_EE/install.lang diff --git a/htdocs/langs/et_EE/interventions.lang b/public/langs/et_EE/interventions.lang similarity index 100% rename from htdocs/langs/et_EE/interventions.lang rename to public/langs/et_EE/interventions.lang diff --git a/htdocs/langs/et_EE/languages.lang b/public/langs/et_EE/languages.lang similarity index 100% rename from htdocs/langs/et_EE/languages.lang rename to public/langs/et_EE/languages.lang diff --git a/htdocs/langs/et_EE/ldap.lang b/public/langs/et_EE/ldap.lang similarity index 100% rename from htdocs/langs/et_EE/ldap.lang rename to public/langs/et_EE/ldap.lang diff --git a/htdocs/langs/et_EE/link.lang b/public/langs/et_EE/link.lang similarity index 100% rename from htdocs/langs/et_EE/link.lang rename to public/langs/et_EE/link.lang diff --git a/htdocs/langs/et_EE/loan.lang b/public/langs/et_EE/loan.lang similarity index 100% rename from htdocs/langs/et_EE/loan.lang rename to public/langs/et_EE/loan.lang diff --git a/htdocs/langs/et_EE/mailmanspip.lang b/public/langs/et_EE/mailmanspip.lang similarity index 100% rename from htdocs/langs/et_EE/mailmanspip.lang rename to public/langs/et_EE/mailmanspip.lang diff --git a/htdocs/langs/et_EE/mails.lang b/public/langs/et_EE/mails.lang similarity index 100% rename from htdocs/langs/et_EE/mails.lang rename to public/langs/et_EE/mails.lang diff --git a/htdocs/langs/et_EE/main.lang b/public/langs/et_EE/main.lang similarity index 100% rename from htdocs/langs/et_EE/main.lang rename to public/langs/et_EE/main.lang diff --git a/htdocs/langs/et_EE/margins.lang b/public/langs/et_EE/margins.lang similarity index 100% rename from htdocs/langs/et_EE/margins.lang rename to public/langs/et_EE/margins.lang diff --git a/htdocs/langs/et_EE/members.lang b/public/langs/et_EE/members.lang similarity index 100% rename from htdocs/langs/et_EE/members.lang rename to public/langs/et_EE/members.lang diff --git a/htdocs/langs/et_EE/oauth.lang b/public/langs/et_EE/oauth.lang similarity index 100% rename from htdocs/langs/et_EE/oauth.lang rename to public/langs/et_EE/oauth.lang diff --git a/htdocs/langs/et_EE/opensurvey.lang b/public/langs/et_EE/opensurvey.lang similarity index 100% rename from htdocs/langs/et_EE/opensurvey.lang rename to public/langs/et_EE/opensurvey.lang diff --git a/htdocs/langs/et_EE/orders.lang b/public/langs/et_EE/orders.lang similarity index 100% rename from htdocs/langs/et_EE/orders.lang rename to public/langs/et_EE/orders.lang diff --git a/htdocs/langs/et_EE/other.lang b/public/langs/et_EE/other.lang similarity index 100% rename from htdocs/langs/et_EE/other.lang rename to public/langs/et_EE/other.lang diff --git a/htdocs/langs/et_EE/paybox.lang b/public/langs/et_EE/paybox.lang similarity index 100% rename from htdocs/langs/et_EE/paybox.lang rename to public/langs/et_EE/paybox.lang diff --git a/htdocs/langs/et_EE/paypal.lang b/public/langs/et_EE/paypal.lang similarity index 100% rename from htdocs/langs/et_EE/paypal.lang rename to public/langs/et_EE/paypal.lang diff --git a/htdocs/langs/et_EE/printing.lang b/public/langs/et_EE/printing.lang similarity index 100% rename from htdocs/langs/et_EE/printing.lang rename to public/langs/et_EE/printing.lang diff --git a/htdocs/langs/et_EE/productbatch.lang b/public/langs/et_EE/productbatch.lang similarity index 100% rename from htdocs/langs/et_EE/productbatch.lang rename to public/langs/et_EE/productbatch.lang diff --git a/htdocs/langs/et_EE/products.lang b/public/langs/et_EE/products.lang similarity index 100% rename from htdocs/langs/et_EE/products.lang rename to public/langs/et_EE/products.lang diff --git a/htdocs/langs/et_EE/projects.lang b/public/langs/et_EE/projects.lang similarity index 100% rename from htdocs/langs/et_EE/projects.lang rename to public/langs/et_EE/projects.lang diff --git a/htdocs/langs/et_EE/propal.lang b/public/langs/et_EE/propal.lang similarity index 100% rename from htdocs/langs/et_EE/propal.lang rename to public/langs/et_EE/propal.lang diff --git a/htdocs/langs/et_EE/receiptprinter.lang b/public/langs/et_EE/receiptprinter.lang similarity index 100% rename from htdocs/langs/et_EE/receiptprinter.lang rename to public/langs/et_EE/receiptprinter.lang diff --git a/htdocs/langs/et_EE/resource.lang b/public/langs/et_EE/resource.lang similarity index 100% rename from htdocs/langs/et_EE/resource.lang rename to public/langs/et_EE/resource.lang diff --git a/htdocs/langs/et_EE/salaries.lang b/public/langs/et_EE/salaries.lang similarity index 100% rename from htdocs/langs/et_EE/salaries.lang rename to public/langs/et_EE/salaries.lang diff --git a/htdocs/langs/et_EE/sendings.lang b/public/langs/et_EE/sendings.lang similarity index 100% rename from htdocs/langs/et_EE/sendings.lang rename to public/langs/et_EE/sendings.lang diff --git a/htdocs/langs/et_EE/sms.lang b/public/langs/et_EE/sms.lang similarity index 100% rename from htdocs/langs/et_EE/sms.lang rename to public/langs/et_EE/sms.lang diff --git a/htdocs/langs/et_EE/stocks.lang b/public/langs/et_EE/stocks.lang similarity index 100% rename from htdocs/langs/et_EE/stocks.lang rename to public/langs/et_EE/stocks.lang diff --git a/htdocs/langs/et_EE/supplier_proposal.lang b/public/langs/et_EE/supplier_proposal.lang similarity index 100% rename from htdocs/langs/et_EE/supplier_proposal.lang rename to public/langs/et_EE/supplier_proposal.lang diff --git a/htdocs/langs/et_EE/suppliers.lang b/public/langs/et_EE/suppliers.lang similarity index 100% rename from htdocs/langs/et_EE/suppliers.lang rename to public/langs/et_EE/suppliers.lang diff --git a/htdocs/langs/et_EE/trips.lang b/public/langs/et_EE/trips.lang similarity index 100% rename from htdocs/langs/et_EE/trips.lang rename to public/langs/et_EE/trips.lang diff --git a/htdocs/langs/et_EE/users.lang b/public/langs/et_EE/users.lang similarity index 100% rename from htdocs/langs/et_EE/users.lang rename to public/langs/et_EE/users.lang diff --git a/htdocs/langs/et_EE/website.lang b/public/langs/et_EE/website.lang similarity index 100% rename from htdocs/langs/et_EE/website.lang rename to public/langs/et_EE/website.lang diff --git a/htdocs/langs/et_EE/withdrawals.lang b/public/langs/et_EE/withdrawals.lang similarity index 100% rename from htdocs/langs/et_EE/withdrawals.lang rename to public/langs/et_EE/withdrawals.lang diff --git a/htdocs/langs/et_EE/workflow.lang b/public/langs/et_EE/workflow.lang similarity index 100% rename from htdocs/langs/et_EE/workflow.lang rename to public/langs/et_EE/workflow.lang diff --git a/htdocs/langs/eu_ES/accountancy.lang b/public/langs/eu_ES/accountancy.lang similarity index 100% rename from htdocs/langs/eu_ES/accountancy.lang rename to public/langs/eu_ES/accountancy.lang diff --git a/htdocs/langs/eu_ES/admin.lang b/public/langs/eu_ES/admin.lang similarity index 100% rename from htdocs/langs/eu_ES/admin.lang rename to public/langs/eu_ES/admin.lang diff --git a/htdocs/langs/eu_ES/agenda.lang b/public/langs/eu_ES/agenda.lang similarity index 100% rename from htdocs/langs/eu_ES/agenda.lang rename to public/langs/eu_ES/agenda.lang diff --git a/htdocs/langs/eu_ES/banks.lang b/public/langs/eu_ES/banks.lang similarity index 100% rename from htdocs/langs/eu_ES/banks.lang rename to public/langs/eu_ES/banks.lang diff --git a/htdocs/langs/eu_ES/bills.lang b/public/langs/eu_ES/bills.lang similarity index 100% rename from htdocs/langs/eu_ES/bills.lang rename to public/langs/eu_ES/bills.lang diff --git a/htdocs/langs/eu_ES/bookmarks.lang b/public/langs/eu_ES/bookmarks.lang similarity index 100% rename from htdocs/langs/eu_ES/bookmarks.lang rename to public/langs/eu_ES/bookmarks.lang diff --git a/htdocs/langs/eu_ES/boxes.lang b/public/langs/eu_ES/boxes.lang similarity index 100% rename from htdocs/langs/eu_ES/boxes.lang rename to public/langs/eu_ES/boxes.lang diff --git a/htdocs/langs/eu_ES/cashdesk.lang b/public/langs/eu_ES/cashdesk.lang similarity index 100% rename from htdocs/langs/eu_ES/cashdesk.lang rename to public/langs/eu_ES/cashdesk.lang diff --git a/htdocs/langs/eu_ES/categories.lang b/public/langs/eu_ES/categories.lang similarity index 100% rename from htdocs/langs/eu_ES/categories.lang rename to public/langs/eu_ES/categories.lang diff --git a/htdocs/langs/eu_ES/commercial.lang b/public/langs/eu_ES/commercial.lang similarity index 100% rename from htdocs/langs/eu_ES/commercial.lang rename to public/langs/eu_ES/commercial.lang diff --git a/htdocs/langs/eu_ES/companies.lang b/public/langs/eu_ES/companies.lang similarity index 100% rename from htdocs/langs/eu_ES/companies.lang rename to public/langs/eu_ES/companies.lang diff --git a/htdocs/langs/eu_ES/compta.lang b/public/langs/eu_ES/compta.lang similarity index 100% rename from htdocs/langs/eu_ES/compta.lang rename to public/langs/eu_ES/compta.lang diff --git a/htdocs/langs/eu_ES/contracts.lang b/public/langs/eu_ES/contracts.lang similarity index 100% rename from htdocs/langs/eu_ES/contracts.lang rename to public/langs/eu_ES/contracts.lang diff --git a/htdocs/langs/eu_ES/cron.lang b/public/langs/eu_ES/cron.lang similarity index 100% rename from htdocs/langs/eu_ES/cron.lang rename to public/langs/eu_ES/cron.lang diff --git a/htdocs/langs/eu_ES/deliveries.lang b/public/langs/eu_ES/deliveries.lang similarity index 100% rename from htdocs/langs/eu_ES/deliveries.lang rename to public/langs/eu_ES/deliveries.lang diff --git a/htdocs/langs/eu_ES/dict.lang b/public/langs/eu_ES/dict.lang similarity index 100% rename from htdocs/langs/eu_ES/dict.lang rename to public/langs/eu_ES/dict.lang diff --git a/htdocs/langs/eu_ES/donations.lang b/public/langs/eu_ES/donations.lang similarity index 100% rename from htdocs/langs/eu_ES/donations.lang rename to public/langs/eu_ES/donations.lang diff --git a/htdocs/langs/eu_ES/ecm.lang b/public/langs/eu_ES/ecm.lang similarity index 100% rename from htdocs/langs/eu_ES/ecm.lang rename to public/langs/eu_ES/ecm.lang diff --git a/htdocs/langs/eu_ES/errors.lang b/public/langs/eu_ES/errors.lang similarity index 100% rename from htdocs/langs/eu_ES/errors.lang rename to public/langs/eu_ES/errors.lang diff --git a/htdocs/langs/eu_ES/expensereports.lang b/public/langs/eu_ES/expensereports.lang similarity index 100% rename from htdocs/langs/eu_ES/expensereports.lang rename to public/langs/eu_ES/expensereports.lang diff --git a/htdocs/langs/eu_ES/exports.lang b/public/langs/eu_ES/exports.lang similarity index 100% rename from htdocs/langs/eu_ES/exports.lang rename to public/langs/eu_ES/exports.lang diff --git a/htdocs/langs/eu_ES/externalsite.lang b/public/langs/eu_ES/externalsite.lang similarity index 100% rename from htdocs/langs/eu_ES/externalsite.lang rename to public/langs/eu_ES/externalsite.lang diff --git a/htdocs/langs/eu_ES/ftp.lang b/public/langs/eu_ES/ftp.lang similarity index 100% rename from htdocs/langs/eu_ES/ftp.lang rename to public/langs/eu_ES/ftp.lang diff --git a/htdocs/langs/eu_ES/help.lang b/public/langs/eu_ES/help.lang similarity index 100% rename from htdocs/langs/eu_ES/help.lang rename to public/langs/eu_ES/help.lang diff --git a/htdocs/langs/eu_ES/holiday.lang b/public/langs/eu_ES/holiday.lang similarity index 100% rename from htdocs/langs/eu_ES/holiday.lang rename to public/langs/eu_ES/holiday.lang diff --git a/htdocs/langs/eu_ES/hrm.lang b/public/langs/eu_ES/hrm.lang similarity index 100% rename from htdocs/langs/eu_ES/hrm.lang rename to public/langs/eu_ES/hrm.lang diff --git a/htdocs/langs/eu_ES/incoterm.lang b/public/langs/eu_ES/incoterm.lang similarity index 100% rename from htdocs/langs/eu_ES/incoterm.lang rename to public/langs/eu_ES/incoterm.lang diff --git a/htdocs/langs/eu_ES/install.lang b/public/langs/eu_ES/install.lang similarity index 100% rename from htdocs/langs/eu_ES/install.lang rename to public/langs/eu_ES/install.lang diff --git a/htdocs/langs/eu_ES/interventions.lang b/public/langs/eu_ES/interventions.lang similarity index 100% rename from htdocs/langs/eu_ES/interventions.lang rename to public/langs/eu_ES/interventions.lang diff --git a/htdocs/langs/eu_ES/languages.lang b/public/langs/eu_ES/languages.lang similarity index 100% rename from htdocs/langs/eu_ES/languages.lang rename to public/langs/eu_ES/languages.lang diff --git a/htdocs/langs/eu_ES/ldap.lang b/public/langs/eu_ES/ldap.lang similarity index 100% rename from htdocs/langs/eu_ES/ldap.lang rename to public/langs/eu_ES/ldap.lang diff --git a/htdocs/langs/eu_ES/link.lang b/public/langs/eu_ES/link.lang similarity index 100% rename from htdocs/langs/eu_ES/link.lang rename to public/langs/eu_ES/link.lang diff --git a/htdocs/langs/eu_ES/loan.lang b/public/langs/eu_ES/loan.lang similarity index 100% rename from htdocs/langs/eu_ES/loan.lang rename to public/langs/eu_ES/loan.lang diff --git a/htdocs/langs/eu_ES/mailmanspip.lang b/public/langs/eu_ES/mailmanspip.lang similarity index 100% rename from htdocs/langs/eu_ES/mailmanspip.lang rename to public/langs/eu_ES/mailmanspip.lang diff --git a/htdocs/langs/eu_ES/mails.lang b/public/langs/eu_ES/mails.lang similarity index 100% rename from htdocs/langs/eu_ES/mails.lang rename to public/langs/eu_ES/mails.lang diff --git a/htdocs/langs/eu_ES/main.lang b/public/langs/eu_ES/main.lang similarity index 100% rename from htdocs/langs/eu_ES/main.lang rename to public/langs/eu_ES/main.lang diff --git a/htdocs/langs/eu_ES/margins.lang b/public/langs/eu_ES/margins.lang similarity index 100% rename from htdocs/langs/eu_ES/margins.lang rename to public/langs/eu_ES/margins.lang diff --git a/htdocs/langs/eu_ES/members.lang b/public/langs/eu_ES/members.lang similarity index 100% rename from htdocs/langs/eu_ES/members.lang rename to public/langs/eu_ES/members.lang diff --git a/htdocs/langs/eu_ES/oauth.lang b/public/langs/eu_ES/oauth.lang similarity index 100% rename from htdocs/langs/eu_ES/oauth.lang rename to public/langs/eu_ES/oauth.lang diff --git a/htdocs/langs/eu_ES/opensurvey.lang b/public/langs/eu_ES/opensurvey.lang similarity index 100% rename from htdocs/langs/eu_ES/opensurvey.lang rename to public/langs/eu_ES/opensurvey.lang diff --git a/htdocs/langs/eu_ES/orders.lang b/public/langs/eu_ES/orders.lang similarity index 100% rename from htdocs/langs/eu_ES/orders.lang rename to public/langs/eu_ES/orders.lang diff --git a/htdocs/langs/eu_ES/other.lang b/public/langs/eu_ES/other.lang similarity index 100% rename from htdocs/langs/eu_ES/other.lang rename to public/langs/eu_ES/other.lang diff --git a/htdocs/langs/eu_ES/paybox.lang b/public/langs/eu_ES/paybox.lang similarity index 100% rename from htdocs/langs/eu_ES/paybox.lang rename to public/langs/eu_ES/paybox.lang diff --git a/htdocs/langs/eu_ES/paypal.lang b/public/langs/eu_ES/paypal.lang similarity index 100% rename from htdocs/langs/eu_ES/paypal.lang rename to public/langs/eu_ES/paypal.lang diff --git a/htdocs/langs/eu_ES/printing.lang b/public/langs/eu_ES/printing.lang similarity index 100% rename from htdocs/langs/eu_ES/printing.lang rename to public/langs/eu_ES/printing.lang diff --git a/htdocs/langs/eu_ES/productbatch.lang b/public/langs/eu_ES/productbatch.lang similarity index 100% rename from htdocs/langs/eu_ES/productbatch.lang rename to public/langs/eu_ES/productbatch.lang diff --git a/htdocs/langs/eu_ES/products.lang b/public/langs/eu_ES/products.lang similarity index 100% rename from htdocs/langs/eu_ES/products.lang rename to public/langs/eu_ES/products.lang diff --git a/htdocs/langs/eu_ES/projects.lang b/public/langs/eu_ES/projects.lang similarity index 100% rename from htdocs/langs/eu_ES/projects.lang rename to public/langs/eu_ES/projects.lang diff --git a/htdocs/langs/eu_ES/propal.lang b/public/langs/eu_ES/propal.lang similarity index 100% rename from htdocs/langs/eu_ES/propal.lang rename to public/langs/eu_ES/propal.lang diff --git a/htdocs/langs/eu_ES/receiptprinter.lang b/public/langs/eu_ES/receiptprinter.lang similarity index 100% rename from htdocs/langs/eu_ES/receiptprinter.lang rename to public/langs/eu_ES/receiptprinter.lang diff --git a/htdocs/langs/eu_ES/resource.lang b/public/langs/eu_ES/resource.lang similarity index 100% rename from htdocs/langs/eu_ES/resource.lang rename to public/langs/eu_ES/resource.lang diff --git a/htdocs/langs/eu_ES/salaries.lang b/public/langs/eu_ES/salaries.lang similarity index 100% rename from htdocs/langs/eu_ES/salaries.lang rename to public/langs/eu_ES/salaries.lang diff --git a/htdocs/langs/eu_ES/sendings.lang b/public/langs/eu_ES/sendings.lang similarity index 100% rename from htdocs/langs/eu_ES/sendings.lang rename to public/langs/eu_ES/sendings.lang diff --git a/htdocs/langs/eu_ES/sms.lang b/public/langs/eu_ES/sms.lang similarity index 100% rename from htdocs/langs/eu_ES/sms.lang rename to public/langs/eu_ES/sms.lang diff --git a/htdocs/langs/eu_ES/stocks.lang b/public/langs/eu_ES/stocks.lang similarity index 100% rename from htdocs/langs/eu_ES/stocks.lang rename to public/langs/eu_ES/stocks.lang diff --git a/htdocs/langs/eu_ES/supplier_proposal.lang b/public/langs/eu_ES/supplier_proposal.lang similarity index 100% rename from htdocs/langs/eu_ES/supplier_proposal.lang rename to public/langs/eu_ES/supplier_proposal.lang diff --git a/htdocs/langs/eu_ES/suppliers.lang b/public/langs/eu_ES/suppliers.lang similarity index 100% rename from htdocs/langs/eu_ES/suppliers.lang rename to public/langs/eu_ES/suppliers.lang diff --git a/htdocs/langs/eu_ES/trips.lang b/public/langs/eu_ES/trips.lang similarity index 100% rename from htdocs/langs/eu_ES/trips.lang rename to public/langs/eu_ES/trips.lang diff --git a/htdocs/langs/eu_ES/users.lang b/public/langs/eu_ES/users.lang similarity index 100% rename from htdocs/langs/eu_ES/users.lang rename to public/langs/eu_ES/users.lang diff --git a/htdocs/langs/eu_ES/website.lang b/public/langs/eu_ES/website.lang similarity index 100% rename from htdocs/langs/eu_ES/website.lang rename to public/langs/eu_ES/website.lang diff --git a/htdocs/langs/eu_ES/withdrawals.lang b/public/langs/eu_ES/withdrawals.lang similarity index 100% rename from htdocs/langs/eu_ES/withdrawals.lang rename to public/langs/eu_ES/withdrawals.lang diff --git a/htdocs/langs/eu_ES/workflow.lang b/public/langs/eu_ES/workflow.lang similarity index 100% rename from htdocs/langs/eu_ES/workflow.lang rename to public/langs/eu_ES/workflow.lang diff --git a/htdocs/langs/fa_IR/accountancy.lang b/public/langs/fa_IR/accountancy.lang similarity index 100% rename from htdocs/langs/fa_IR/accountancy.lang rename to public/langs/fa_IR/accountancy.lang diff --git a/htdocs/langs/fa_IR/admin.lang b/public/langs/fa_IR/admin.lang similarity index 100% rename from htdocs/langs/fa_IR/admin.lang rename to public/langs/fa_IR/admin.lang diff --git a/htdocs/langs/fa_IR/agenda.lang b/public/langs/fa_IR/agenda.lang similarity index 100% rename from htdocs/langs/fa_IR/agenda.lang rename to public/langs/fa_IR/agenda.lang diff --git a/htdocs/langs/fa_IR/banks.lang b/public/langs/fa_IR/banks.lang similarity index 100% rename from htdocs/langs/fa_IR/banks.lang rename to public/langs/fa_IR/banks.lang diff --git a/htdocs/langs/fa_IR/bills.lang b/public/langs/fa_IR/bills.lang similarity index 100% rename from htdocs/langs/fa_IR/bills.lang rename to public/langs/fa_IR/bills.lang diff --git a/htdocs/langs/fa_IR/bookmarks.lang b/public/langs/fa_IR/bookmarks.lang similarity index 100% rename from htdocs/langs/fa_IR/bookmarks.lang rename to public/langs/fa_IR/bookmarks.lang diff --git a/htdocs/langs/fa_IR/boxes.lang b/public/langs/fa_IR/boxes.lang similarity index 100% rename from htdocs/langs/fa_IR/boxes.lang rename to public/langs/fa_IR/boxes.lang diff --git a/htdocs/langs/fa_IR/cashdesk.lang b/public/langs/fa_IR/cashdesk.lang similarity index 100% rename from htdocs/langs/fa_IR/cashdesk.lang rename to public/langs/fa_IR/cashdesk.lang diff --git a/htdocs/langs/fa_IR/categories.lang b/public/langs/fa_IR/categories.lang similarity index 100% rename from htdocs/langs/fa_IR/categories.lang rename to public/langs/fa_IR/categories.lang diff --git a/htdocs/langs/fa_IR/commercial.lang b/public/langs/fa_IR/commercial.lang similarity index 100% rename from htdocs/langs/fa_IR/commercial.lang rename to public/langs/fa_IR/commercial.lang diff --git a/htdocs/langs/fa_IR/companies.lang b/public/langs/fa_IR/companies.lang similarity index 100% rename from htdocs/langs/fa_IR/companies.lang rename to public/langs/fa_IR/companies.lang diff --git a/htdocs/langs/fa_IR/compta.lang b/public/langs/fa_IR/compta.lang similarity index 100% rename from htdocs/langs/fa_IR/compta.lang rename to public/langs/fa_IR/compta.lang diff --git a/htdocs/langs/fa_IR/contracts.lang b/public/langs/fa_IR/contracts.lang similarity index 100% rename from htdocs/langs/fa_IR/contracts.lang rename to public/langs/fa_IR/contracts.lang diff --git a/htdocs/langs/fa_IR/cron.lang b/public/langs/fa_IR/cron.lang similarity index 100% rename from htdocs/langs/fa_IR/cron.lang rename to public/langs/fa_IR/cron.lang diff --git a/htdocs/langs/fa_IR/deliveries.lang b/public/langs/fa_IR/deliveries.lang similarity index 100% rename from htdocs/langs/fa_IR/deliveries.lang rename to public/langs/fa_IR/deliveries.lang diff --git a/htdocs/langs/fa_IR/dict.lang b/public/langs/fa_IR/dict.lang similarity index 100% rename from htdocs/langs/fa_IR/dict.lang rename to public/langs/fa_IR/dict.lang diff --git a/htdocs/langs/fa_IR/domains.lang b/public/langs/fa_IR/domains.lang similarity index 100% rename from htdocs/langs/fa_IR/domains.lang rename to public/langs/fa_IR/domains.lang diff --git a/htdocs/langs/fa_IR/donations.lang b/public/langs/fa_IR/donations.lang similarity index 100% rename from htdocs/langs/fa_IR/donations.lang rename to public/langs/fa_IR/donations.lang diff --git a/htdocs/langs/fa_IR/ecm.lang b/public/langs/fa_IR/ecm.lang similarity index 100% rename from htdocs/langs/fa_IR/ecm.lang rename to public/langs/fa_IR/ecm.lang diff --git a/htdocs/langs/fa_IR/errors.lang b/public/langs/fa_IR/errors.lang similarity index 100% rename from htdocs/langs/fa_IR/errors.lang rename to public/langs/fa_IR/errors.lang diff --git a/htdocs/langs/fa_IR/exports.lang b/public/langs/fa_IR/exports.lang similarity index 100% rename from htdocs/langs/fa_IR/exports.lang rename to public/langs/fa_IR/exports.lang diff --git a/htdocs/langs/fa_IR/externalsite.lang b/public/langs/fa_IR/externalsite.lang similarity index 100% rename from htdocs/langs/fa_IR/externalsite.lang rename to public/langs/fa_IR/externalsite.lang diff --git a/htdocs/langs/fa_IR/ftp.lang b/public/langs/fa_IR/ftp.lang similarity index 100% rename from htdocs/langs/fa_IR/ftp.lang rename to public/langs/fa_IR/ftp.lang diff --git a/htdocs/langs/fa_IR/help.lang b/public/langs/fa_IR/help.lang similarity index 100% rename from htdocs/langs/fa_IR/help.lang rename to public/langs/fa_IR/help.lang diff --git a/htdocs/langs/fa_IR/holiday.lang b/public/langs/fa_IR/holiday.lang similarity index 100% rename from htdocs/langs/fa_IR/holiday.lang rename to public/langs/fa_IR/holiday.lang diff --git a/htdocs/langs/fa_IR/hrm.lang b/public/langs/fa_IR/hrm.lang similarity index 100% rename from htdocs/langs/fa_IR/hrm.lang rename to public/langs/fa_IR/hrm.lang diff --git a/htdocs/langs/fa_IR/incoterm.lang b/public/langs/fa_IR/incoterm.lang similarity index 100% rename from htdocs/langs/fa_IR/incoterm.lang rename to public/langs/fa_IR/incoterm.lang diff --git a/htdocs/langs/fa_IR/install.lang b/public/langs/fa_IR/install.lang similarity index 100% rename from htdocs/langs/fa_IR/install.lang rename to public/langs/fa_IR/install.lang diff --git a/htdocs/langs/fa_IR/interventions.lang b/public/langs/fa_IR/interventions.lang similarity index 100% rename from htdocs/langs/fa_IR/interventions.lang rename to public/langs/fa_IR/interventions.lang diff --git a/htdocs/langs/fa_IR/languages.lang b/public/langs/fa_IR/languages.lang similarity index 100% rename from htdocs/langs/fa_IR/languages.lang rename to public/langs/fa_IR/languages.lang diff --git a/htdocs/langs/fa_IR/ldap.lang b/public/langs/fa_IR/ldap.lang similarity index 100% rename from htdocs/langs/fa_IR/ldap.lang rename to public/langs/fa_IR/ldap.lang diff --git a/htdocs/langs/fa_IR/link.lang b/public/langs/fa_IR/link.lang similarity index 100% rename from htdocs/langs/fa_IR/link.lang rename to public/langs/fa_IR/link.lang diff --git a/htdocs/langs/fa_IR/loan.lang b/public/langs/fa_IR/loan.lang similarity index 100% rename from htdocs/langs/fa_IR/loan.lang rename to public/langs/fa_IR/loan.lang diff --git a/htdocs/langs/fa_IR/mailmanspip.lang b/public/langs/fa_IR/mailmanspip.lang similarity index 100% rename from htdocs/langs/fa_IR/mailmanspip.lang rename to public/langs/fa_IR/mailmanspip.lang diff --git a/htdocs/langs/fa_IR/mails.lang b/public/langs/fa_IR/mails.lang similarity index 100% rename from htdocs/langs/fa_IR/mails.lang rename to public/langs/fa_IR/mails.lang diff --git a/htdocs/langs/fa_IR/main.lang b/public/langs/fa_IR/main.lang similarity index 100% rename from htdocs/langs/fa_IR/main.lang rename to public/langs/fa_IR/main.lang diff --git a/htdocs/langs/fa_IR/margins.lang b/public/langs/fa_IR/margins.lang similarity index 100% rename from htdocs/langs/fa_IR/margins.lang rename to public/langs/fa_IR/margins.lang diff --git a/htdocs/langs/fa_IR/members.lang b/public/langs/fa_IR/members.lang similarity index 100% rename from htdocs/langs/fa_IR/members.lang rename to public/langs/fa_IR/members.lang diff --git a/htdocs/langs/fa_IR/oauth.lang b/public/langs/fa_IR/oauth.lang similarity index 100% rename from htdocs/langs/fa_IR/oauth.lang rename to public/langs/fa_IR/oauth.lang diff --git a/htdocs/langs/fa_IR/opensurvey.lang b/public/langs/fa_IR/opensurvey.lang similarity index 100% rename from htdocs/langs/fa_IR/opensurvey.lang rename to public/langs/fa_IR/opensurvey.lang diff --git a/htdocs/langs/fa_IR/orders.lang b/public/langs/fa_IR/orders.lang similarity index 100% rename from htdocs/langs/fa_IR/orders.lang rename to public/langs/fa_IR/orders.lang diff --git a/htdocs/langs/fa_IR/other.lang b/public/langs/fa_IR/other.lang similarity index 100% rename from htdocs/langs/fa_IR/other.lang rename to public/langs/fa_IR/other.lang diff --git a/htdocs/langs/fa_IR/paybox.lang b/public/langs/fa_IR/paybox.lang similarity index 100% rename from htdocs/langs/fa_IR/paybox.lang rename to public/langs/fa_IR/paybox.lang diff --git a/htdocs/langs/fa_IR/paypal.lang b/public/langs/fa_IR/paypal.lang similarity index 100% rename from htdocs/langs/fa_IR/paypal.lang rename to public/langs/fa_IR/paypal.lang diff --git a/htdocs/langs/fa_IR/printing.lang b/public/langs/fa_IR/printing.lang similarity index 100% rename from htdocs/langs/fa_IR/printing.lang rename to public/langs/fa_IR/printing.lang diff --git a/htdocs/langs/fa_IR/productbatch.lang b/public/langs/fa_IR/productbatch.lang similarity index 100% rename from htdocs/langs/fa_IR/productbatch.lang rename to public/langs/fa_IR/productbatch.lang diff --git a/htdocs/langs/fa_IR/products.lang b/public/langs/fa_IR/products.lang similarity index 100% rename from htdocs/langs/fa_IR/products.lang rename to public/langs/fa_IR/products.lang diff --git a/htdocs/langs/fa_IR/projects.lang b/public/langs/fa_IR/projects.lang similarity index 100% rename from htdocs/langs/fa_IR/projects.lang rename to public/langs/fa_IR/projects.lang diff --git a/htdocs/langs/fa_IR/propal.lang b/public/langs/fa_IR/propal.lang similarity index 100% rename from htdocs/langs/fa_IR/propal.lang rename to public/langs/fa_IR/propal.lang diff --git a/htdocs/langs/fa_IR/receiptprinter.lang b/public/langs/fa_IR/receiptprinter.lang similarity index 100% rename from htdocs/langs/fa_IR/receiptprinter.lang rename to public/langs/fa_IR/receiptprinter.lang diff --git a/htdocs/langs/fa_IR/resource.lang b/public/langs/fa_IR/resource.lang similarity index 100% rename from htdocs/langs/fa_IR/resource.lang rename to public/langs/fa_IR/resource.lang diff --git a/htdocs/langs/fa_IR/salaries.lang b/public/langs/fa_IR/salaries.lang similarity index 100% rename from htdocs/langs/fa_IR/salaries.lang rename to public/langs/fa_IR/salaries.lang diff --git a/htdocs/langs/fa_IR/sendings.lang b/public/langs/fa_IR/sendings.lang similarity index 100% rename from htdocs/langs/fa_IR/sendings.lang rename to public/langs/fa_IR/sendings.lang diff --git a/htdocs/langs/fa_IR/sms.lang b/public/langs/fa_IR/sms.lang similarity index 100% rename from htdocs/langs/fa_IR/sms.lang rename to public/langs/fa_IR/sms.lang diff --git a/htdocs/langs/fa_IR/stocks.lang b/public/langs/fa_IR/stocks.lang similarity index 100% rename from htdocs/langs/fa_IR/stocks.lang rename to public/langs/fa_IR/stocks.lang diff --git a/htdocs/langs/fa_IR/supplier_proposal.lang b/public/langs/fa_IR/supplier_proposal.lang similarity index 100% rename from htdocs/langs/fa_IR/supplier_proposal.lang rename to public/langs/fa_IR/supplier_proposal.lang diff --git a/htdocs/langs/fa_IR/suppliers.lang b/public/langs/fa_IR/suppliers.lang similarity index 100% rename from htdocs/langs/fa_IR/suppliers.lang rename to public/langs/fa_IR/suppliers.lang diff --git a/htdocs/langs/fa_IR/trips.lang b/public/langs/fa_IR/trips.lang similarity index 100% rename from htdocs/langs/fa_IR/trips.lang rename to public/langs/fa_IR/trips.lang diff --git a/htdocs/langs/fa_IR/users.lang b/public/langs/fa_IR/users.lang similarity index 100% rename from htdocs/langs/fa_IR/users.lang rename to public/langs/fa_IR/users.lang diff --git a/htdocs/langs/fa_IR/website.lang b/public/langs/fa_IR/website.lang similarity index 100% rename from htdocs/langs/fa_IR/website.lang rename to public/langs/fa_IR/website.lang diff --git a/htdocs/langs/fa_IR/withdrawals.lang b/public/langs/fa_IR/withdrawals.lang similarity index 100% rename from htdocs/langs/fa_IR/withdrawals.lang rename to public/langs/fa_IR/withdrawals.lang diff --git a/htdocs/langs/fa_IR/workflow.lang b/public/langs/fa_IR/workflow.lang similarity index 100% rename from htdocs/langs/fa_IR/workflow.lang rename to public/langs/fa_IR/workflow.lang diff --git a/htdocs/langs/fi_FI/accountancy.lang b/public/langs/fi_FI/accountancy.lang similarity index 100% rename from htdocs/langs/fi_FI/accountancy.lang rename to public/langs/fi_FI/accountancy.lang diff --git a/htdocs/langs/fi_FI/admin.lang b/public/langs/fi_FI/admin.lang similarity index 100% rename from htdocs/langs/fi_FI/admin.lang rename to public/langs/fi_FI/admin.lang diff --git a/htdocs/langs/fi_FI/agenda.lang b/public/langs/fi_FI/agenda.lang similarity index 100% rename from htdocs/langs/fi_FI/agenda.lang rename to public/langs/fi_FI/agenda.lang diff --git a/htdocs/langs/fi_FI/banks.lang b/public/langs/fi_FI/banks.lang similarity index 100% rename from htdocs/langs/fi_FI/banks.lang rename to public/langs/fi_FI/banks.lang diff --git a/htdocs/langs/fi_FI/bills.lang b/public/langs/fi_FI/bills.lang similarity index 100% rename from htdocs/langs/fi_FI/bills.lang rename to public/langs/fi_FI/bills.lang diff --git a/htdocs/langs/fi_FI/bookmarks.lang b/public/langs/fi_FI/bookmarks.lang similarity index 100% rename from htdocs/langs/fi_FI/bookmarks.lang rename to public/langs/fi_FI/bookmarks.lang diff --git a/htdocs/langs/fi_FI/boxes.lang b/public/langs/fi_FI/boxes.lang similarity index 100% rename from htdocs/langs/fi_FI/boxes.lang rename to public/langs/fi_FI/boxes.lang diff --git a/htdocs/langs/fi_FI/cashdesk.lang b/public/langs/fi_FI/cashdesk.lang similarity index 100% rename from htdocs/langs/fi_FI/cashdesk.lang rename to public/langs/fi_FI/cashdesk.lang diff --git a/htdocs/langs/fi_FI/categories.lang b/public/langs/fi_FI/categories.lang similarity index 100% rename from htdocs/langs/fi_FI/categories.lang rename to public/langs/fi_FI/categories.lang diff --git a/htdocs/langs/fi_FI/commercial.lang b/public/langs/fi_FI/commercial.lang similarity index 100% rename from htdocs/langs/fi_FI/commercial.lang rename to public/langs/fi_FI/commercial.lang diff --git a/htdocs/langs/fi_FI/companies.lang b/public/langs/fi_FI/companies.lang similarity index 100% rename from htdocs/langs/fi_FI/companies.lang rename to public/langs/fi_FI/companies.lang diff --git a/htdocs/langs/fi_FI/compta.lang b/public/langs/fi_FI/compta.lang similarity index 100% rename from htdocs/langs/fi_FI/compta.lang rename to public/langs/fi_FI/compta.lang diff --git a/htdocs/langs/fi_FI/contracts.lang b/public/langs/fi_FI/contracts.lang similarity index 100% rename from htdocs/langs/fi_FI/contracts.lang rename to public/langs/fi_FI/contracts.lang diff --git a/htdocs/langs/fi_FI/cron.lang b/public/langs/fi_FI/cron.lang similarity index 100% rename from htdocs/langs/fi_FI/cron.lang rename to public/langs/fi_FI/cron.lang diff --git a/htdocs/langs/fi_FI/deliveries.lang b/public/langs/fi_FI/deliveries.lang similarity index 100% rename from htdocs/langs/fi_FI/deliveries.lang rename to public/langs/fi_FI/deliveries.lang diff --git a/htdocs/langs/fi_FI/dict.lang b/public/langs/fi_FI/dict.lang similarity index 100% rename from htdocs/langs/fi_FI/dict.lang rename to public/langs/fi_FI/dict.lang diff --git a/htdocs/langs/fi_FI/donations.lang b/public/langs/fi_FI/donations.lang similarity index 100% rename from htdocs/langs/fi_FI/donations.lang rename to public/langs/fi_FI/donations.lang diff --git a/htdocs/langs/fi_FI/ecm.lang b/public/langs/fi_FI/ecm.lang similarity index 100% rename from htdocs/langs/fi_FI/ecm.lang rename to public/langs/fi_FI/ecm.lang diff --git a/htdocs/langs/fi_FI/errors.lang b/public/langs/fi_FI/errors.lang similarity index 100% rename from htdocs/langs/fi_FI/errors.lang rename to public/langs/fi_FI/errors.lang diff --git a/htdocs/langs/fi_FI/exports.lang b/public/langs/fi_FI/exports.lang similarity index 100% rename from htdocs/langs/fi_FI/exports.lang rename to public/langs/fi_FI/exports.lang diff --git a/htdocs/langs/fi_FI/externalsite.lang b/public/langs/fi_FI/externalsite.lang similarity index 100% rename from htdocs/langs/fi_FI/externalsite.lang rename to public/langs/fi_FI/externalsite.lang diff --git a/htdocs/langs/fi_FI/ftp.lang b/public/langs/fi_FI/ftp.lang similarity index 100% rename from htdocs/langs/fi_FI/ftp.lang rename to public/langs/fi_FI/ftp.lang diff --git a/htdocs/langs/fi_FI/help.lang b/public/langs/fi_FI/help.lang similarity index 100% rename from htdocs/langs/fi_FI/help.lang rename to public/langs/fi_FI/help.lang diff --git a/htdocs/langs/fi_FI/holiday.lang b/public/langs/fi_FI/holiday.lang similarity index 100% rename from htdocs/langs/fi_FI/holiday.lang rename to public/langs/fi_FI/holiday.lang diff --git a/htdocs/langs/fi_FI/hrm.lang b/public/langs/fi_FI/hrm.lang similarity index 100% rename from htdocs/langs/fi_FI/hrm.lang rename to public/langs/fi_FI/hrm.lang diff --git a/htdocs/langs/fi_FI/incoterm.lang b/public/langs/fi_FI/incoterm.lang similarity index 100% rename from htdocs/langs/fi_FI/incoterm.lang rename to public/langs/fi_FI/incoterm.lang diff --git a/htdocs/langs/fi_FI/install.lang b/public/langs/fi_FI/install.lang similarity index 100% rename from htdocs/langs/fi_FI/install.lang rename to public/langs/fi_FI/install.lang diff --git a/htdocs/langs/fi_FI/interventions.lang b/public/langs/fi_FI/interventions.lang similarity index 100% rename from htdocs/langs/fi_FI/interventions.lang rename to public/langs/fi_FI/interventions.lang diff --git a/htdocs/langs/fi_FI/languages.lang b/public/langs/fi_FI/languages.lang similarity index 100% rename from htdocs/langs/fi_FI/languages.lang rename to public/langs/fi_FI/languages.lang diff --git a/htdocs/langs/fi_FI/ldap.lang b/public/langs/fi_FI/ldap.lang similarity index 100% rename from htdocs/langs/fi_FI/ldap.lang rename to public/langs/fi_FI/ldap.lang diff --git a/htdocs/langs/fi_FI/link.lang b/public/langs/fi_FI/link.lang similarity index 100% rename from htdocs/langs/fi_FI/link.lang rename to public/langs/fi_FI/link.lang diff --git a/htdocs/langs/fi_FI/loan.lang b/public/langs/fi_FI/loan.lang similarity index 100% rename from htdocs/langs/fi_FI/loan.lang rename to public/langs/fi_FI/loan.lang diff --git a/htdocs/langs/fi_FI/mailmanspip.lang b/public/langs/fi_FI/mailmanspip.lang similarity index 100% rename from htdocs/langs/fi_FI/mailmanspip.lang rename to public/langs/fi_FI/mailmanspip.lang diff --git a/htdocs/langs/fi_FI/mails.lang b/public/langs/fi_FI/mails.lang similarity index 100% rename from htdocs/langs/fi_FI/mails.lang rename to public/langs/fi_FI/mails.lang diff --git a/htdocs/langs/fi_FI/main.lang b/public/langs/fi_FI/main.lang similarity index 100% rename from htdocs/langs/fi_FI/main.lang rename to public/langs/fi_FI/main.lang diff --git a/htdocs/langs/fi_FI/margins.lang b/public/langs/fi_FI/margins.lang similarity index 100% rename from htdocs/langs/fi_FI/margins.lang rename to public/langs/fi_FI/margins.lang diff --git a/htdocs/langs/fi_FI/members.lang b/public/langs/fi_FI/members.lang similarity index 100% rename from htdocs/langs/fi_FI/members.lang rename to public/langs/fi_FI/members.lang diff --git a/htdocs/langs/fi_FI/oauth.lang b/public/langs/fi_FI/oauth.lang similarity index 100% rename from htdocs/langs/fi_FI/oauth.lang rename to public/langs/fi_FI/oauth.lang diff --git a/htdocs/langs/fi_FI/opensurvey.lang b/public/langs/fi_FI/opensurvey.lang similarity index 100% rename from htdocs/langs/fi_FI/opensurvey.lang rename to public/langs/fi_FI/opensurvey.lang diff --git a/htdocs/langs/fi_FI/orders.lang b/public/langs/fi_FI/orders.lang similarity index 100% rename from htdocs/langs/fi_FI/orders.lang rename to public/langs/fi_FI/orders.lang diff --git a/htdocs/langs/fi_FI/other.lang b/public/langs/fi_FI/other.lang similarity index 100% rename from htdocs/langs/fi_FI/other.lang rename to public/langs/fi_FI/other.lang diff --git a/htdocs/langs/fi_FI/paybox.lang b/public/langs/fi_FI/paybox.lang similarity index 100% rename from htdocs/langs/fi_FI/paybox.lang rename to public/langs/fi_FI/paybox.lang diff --git a/htdocs/langs/fi_FI/paypal.lang b/public/langs/fi_FI/paypal.lang similarity index 100% rename from htdocs/langs/fi_FI/paypal.lang rename to public/langs/fi_FI/paypal.lang diff --git a/htdocs/langs/fi_FI/printing.lang b/public/langs/fi_FI/printing.lang similarity index 100% rename from htdocs/langs/fi_FI/printing.lang rename to public/langs/fi_FI/printing.lang diff --git a/htdocs/langs/fi_FI/productbatch.lang b/public/langs/fi_FI/productbatch.lang similarity index 100% rename from htdocs/langs/fi_FI/productbatch.lang rename to public/langs/fi_FI/productbatch.lang diff --git a/htdocs/langs/fi_FI/products.lang b/public/langs/fi_FI/products.lang similarity index 100% rename from htdocs/langs/fi_FI/products.lang rename to public/langs/fi_FI/products.lang diff --git a/htdocs/langs/fi_FI/projects.lang b/public/langs/fi_FI/projects.lang similarity index 100% rename from htdocs/langs/fi_FI/projects.lang rename to public/langs/fi_FI/projects.lang diff --git a/htdocs/langs/fi_FI/propal.lang b/public/langs/fi_FI/propal.lang similarity index 100% rename from htdocs/langs/fi_FI/propal.lang rename to public/langs/fi_FI/propal.lang diff --git a/htdocs/langs/fi_FI/receiptprinter.lang b/public/langs/fi_FI/receiptprinter.lang similarity index 100% rename from htdocs/langs/fi_FI/receiptprinter.lang rename to public/langs/fi_FI/receiptprinter.lang diff --git a/htdocs/langs/fi_FI/resource.lang b/public/langs/fi_FI/resource.lang similarity index 100% rename from htdocs/langs/fi_FI/resource.lang rename to public/langs/fi_FI/resource.lang diff --git a/htdocs/langs/fi_FI/salaries.lang b/public/langs/fi_FI/salaries.lang similarity index 100% rename from htdocs/langs/fi_FI/salaries.lang rename to public/langs/fi_FI/salaries.lang diff --git a/htdocs/langs/fi_FI/sendings.lang b/public/langs/fi_FI/sendings.lang similarity index 100% rename from htdocs/langs/fi_FI/sendings.lang rename to public/langs/fi_FI/sendings.lang diff --git a/htdocs/langs/fi_FI/sms.lang b/public/langs/fi_FI/sms.lang similarity index 100% rename from htdocs/langs/fi_FI/sms.lang rename to public/langs/fi_FI/sms.lang diff --git a/htdocs/langs/fi_FI/stocks.lang b/public/langs/fi_FI/stocks.lang similarity index 100% rename from htdocs/langs/fi_FI/stocks.lang rename to public/langs/fi_FI/stocks.lang diff --git a/htdocs/langs/fi_FI/supplier_proposal.lang b/public/langs/fi_FI/supplier_proposal.lang similarity index 100% rename from htdocs/langs/fi_FI/supplier_proposal.lang rename to public/langs/fi_FI/supplier_proposal.lang diff --git a/htdocs/langs/fi_FI/suppliers.lang b/public/langs/fi_FI/suppliers.lang similarity index 100% rename from htdocs/langs/fi_FI/suppliers.lang rename to public/langs/fi_FI/suppliers.lang diff --git a/htdocs/langs/fi_FI/trips.lang b/public/langs/fi_FI/trips.lang similarity index 100% rename from htdocs/langs/fi_FI/trips.lang rename to public/langs/fi_FI/trips.lang diff --git a/htdocs/langs/fi_FI/users.lang b/public/langs/fi_FI/users.lang similarity index 100% rename from htdocs/langs/fi_FI/users.lang rename to public/langs/fi_FI/users.lang diff --git a/htdocs/langs/fi_FI/website.lang b/public/langs/fi_FI/website.lang similarity index 100% rename from htdocs/langs/fi_FI/website.lang rename to public/langs/fi_FI/website.lang diff --git a/htdocs/langs/fi_FI/withdrawals.lang b/public/langs/fi_FI/withdrawals.lang similarity index 100% rename from htdocs/langs/fi_FI/withdrawals.lang rename to public/langs/fi_FI/withdrawals.lang diff --git a/htdocs/langs/fi_FI/workflow.lang b/public/langs/fi_FI/workflow.lang similarity index 100% rename from htdocs/langs/fi_FI/workflow.lang rename to public/langs/fi_FI/workflow.lang diff --git a/htdocs/langs/fr_BE/accountancy.lang b/public/langs/fr_BE/accountancy.lang similarity index 100% rename from htdocs/langs/fr_BE/accountancy.lang rename to public/langs/fr_BE/accountancy.lang diff --git a/htdocs/langs/fr_BE/admin.lang b/public/langs/fr_BE/admin.lang similarity index 100% rename from htdocs/langs/fr_BE/admin.lang rename to public/langs/fr_BE/admin.lang diff --git a/htdocs/langs/fr_BE/agenda.lang b/public/langs/fr_BE/agenda.lang similarity index 100% rename from htdocs/langs/fr_BE/agenda.lang rename to public/langs/fr_BE/agenda.lang diff --git a/htdocs/langs/fr_BE/banks.lang b/public/langs/fr_BE/banks.lang similarity index 100% rename from htdocs/langs/fr_BE/banks.lang rename to public/langs/fr_BE/banks.lang diff --git a/htdocs/langs/fr_BE/bills.lang b/public/langs/fr_BE/bills.lang similarity index 100% rename from htdocs/langs/fr_BE/bills.lang rename to public/langs/fr_BE/bills.lang diff --git a/htdocs/langs/fr_BE/bookmarks.lang b/public/langs/fr_BE/bookmarks.lang similarity index 100% rename from htdocs/langs/fr_BE/bookmarks.lang rename to public/langs/fr_BE/bookmarks.lang diff --git a/htdocs/langs/fr_BE/boxes.lang b/public/langs/fr_BE/boxes.lang similarity index 100% rename from htdocs/langs/fr_BE/boxes.lang rename to public/langs/fr_BE/boxes.lang diff --git a/htdocs/langs/fr_BE/cashdesk.lang b/public/langs/fr_BE/cashdesk.lang similarity index 100% rename from htdocs/langs/fr_BE/cashdesk.lang rename to public/langs/fr_BE/cashdesk.lang diff --git a/htdocs/langs/fr_BE/categories.lang b/public/langs/fr_BE/categories.lang similarity index 100% rename from htdocs/langs/fr_BE/categories.lang rename to public/langs/fr_BE/categories.lang diff --git a/htdocs/langs/fr_BE/commercial.lang b/public/langs/fr_BE/commercial.lang similarity index 100% rename from htdocs/langs/fr_BE/commercial.lang rename to public/langs/fr_BE/commercial.lang diff --git a/htdocs/langs/fr_BE/companies.lang b/public/langs/fr_BE/companies.lang similarity index 100% rename from htdocs/langs/fr_BE/companies.lang rename to public/langs/fr_BE/companies.lang diff --git a/htdocs/langs/fr_BE/compta.lang b/public/langs/fr_BE/compta.lang similarity index 100% rename from htdocs/langs/fr_BE/compta.lang rename to public/langs/fr_BE/compta.lang diff --git a/htdocs/langs/fr_BE/contracts.lang b/public/langs/fr_BE/contracts.lang similarity index 100% rename from htdocs/langs/fr_BE/contracts.lang rename to public/langs/fr_BE/contracts.lang diff --git a/htdocs/langs/fr_BE/cron.lang b/public/langs/fr_BE/cron.lang similarity index 100% rename from htdocs/langs/fr_BE/cron.lang rename to public/langs/fr_BE/cron.lang diff --git a/htdocs/langs/fr_BE/deliveries.lang b/public/langs/fr_BE/deliveries.lang similarity index 100% rename from htdocs/langs/fr_BE/deliveries.lang rename to public/langs/fr_BE/deliveries.lang diff --git a/htdocs/langs/fr_BE/dict.lang b/public/langs/fr_BE/dict.lang similarity index 100% rename from htdocs/langs/fr_BE/dict.lang rename to public/langs/fr_BE/dict.lang diff --git a/htdocs/langs/fr_BE/donations.lang b/public/langs/fr_BE/donations.lang similarity index 100% rename from htdocs/langs/fr_BE/donations.lang rename to public/langs/fr_BE/donations.lang diff --git a/htdocs/langs/fr_BE/ecm.lang b/public/langs/fr_BE/ecm.lang similarity index 100% rename from htdocs/langs/fr_BE/ecm.lang rename to public/langs/fr_BE/ecm.lang diff --git a/htdocs/langs/fr_BE/errors.lang b/public/langs/fr_BE/errors.lang similarity index 100% rename from htdocs/langs/fr_BE/errors.lang rename to public/langs/fr_BE/errors.lang diff --git a/htdocs/langs/fr_BE/exports.lang b/public/langs/fr_BE/exports.lang similarity index 100% rename from htdocs/langs/fr_BE/exports.lang rename to public/langs/fr_BE/exports.lang diff --git a/htdocs/langs/fr_BE/externalsite.lang b/public/langs/fr_BE/externalsite.lang similarity index 100% rename from htdocs/langs/fr_BE/externalsite.lang rename to public/langs/fr_BE/externalsite.lang diff --git a/htdocs/langs/fr_BE/ftp.lang b/public/langs/fr_BE/ftp.lang similarity index 100% rename from htdocs/langs/fr_BE/ftp.lang rename to public/langs/fr_BE/ftp.lang diff --git a/htdocs/langs/fr_BE/help.lang b/public/langs/fr_BE/help.lang similarity index 100% rename from htdocs/langs/fr_BE/help.lang rename to public/langs/fr_BE/help.lang diff --git a/htdocs/langs/fr_BE/holiday.lang b/public/langs/fr_BE/holiday.lang similarity index 100% rename from htdocs/langs/fr_BE/holiday.lang rename to public/langs/fr_BE/holiday.lang diff --git a/htdocs/langs/fr_BE/hrm.lang b/public/langs/fr_BE/hrm.lang similarity index 100% rename from htdocs/langs/fr_BE/hrm.lang rename to public/langs/fr_BE/hrm.lang diff --git a/htdocs/langs/fr_BE/incoterm.lang b/public/langs/fr_BE/incoterm.lang similarity index 100% rename from htdocs/langs/fr_BE/incoterm.lang rename to public/langs/fr_BE/incoterm.lang diff --git a/htdocs/langs/fr_BE/install.lang b/public/langs/fr_BE/install.lang similarity index 100% rename from htdocs/langs/fr_BE/install.lang rename to public/langs/fr_BE/install.lang diff --git a/htdocs/langs/fr_BE/interventions.lang b/public/langs/fr_BE/interventions.lang similarity index 100% rename from htdocs/langs/fr_BE/interventions.lang rename to public/langs/fr_BE/interventions.lang diff --git a/htdocs/langs/fr_BE/languages.lang b/public/langs/fr_BE/languages.lang similarity index 100% rename from htdocs/langs/fr_BE/languages.lang rename to public/langs/fr_BE/languages.lang diff --git a/htdocs/langs/fr_BE/ldap.lang b/public/langs/fr_BE/ldap.lang similarity index 100% rename from htdocs/langs/fr_BE/ldap.lang rename to public/langs/fr_BE/ldap.lang diff --git a/htdocs/langs/fr_BE/link.lang b/public/langs/fr_BE/link.lang similarity index 100% rename from htdocs/langs/fr_BE/link.lang rename to public/langs/fr_BE/link.lang diff --git a/htdocs/langs/fr_BE/loan.lang b/public/langs/fr_BE/loan.lang similarity index 100% rename from htdocs/langs/fr_BE/loan.lang rename to public/langs/fr_BE/loan.lang diff --git a/htdocs/langs/fr_BE/mailmanspip.lang b/public/langs/fr_BE/mailmanspip.lang similarity index 100% rename from htdocs/langs/fr_BE/mailmanspip.lang rename to public/langs/fr_BE/mailmanspip.lang diff --git a/htdocs/langs/fr_BE/mails.lang b/public/langs/fr_BE/mails.lang similarity index 100% rename from htdocs/langs/fr_BE/mails.lang rename to public/langs/fr_BE/mails.lang diff --git a/htdocs/langs/fr_BE/main.lang b/public/langs/fr_BE/main.lang similarity index 100% rename from htdocs/langs/fr_BE/main.lang rename to public/langs/fr_BE/main.lang diff --git a/htdocs/langs/fr_BE/margins.lang b/public/langs/fr_BE/margins.lang similarity index 100% rename from htdocs/langs/fr_BE/margins.lang rename to public/langs/fr_BE/margins.lang diff --git a/htdocs/langs/fr_BE/members.lang b/public/langs/fr_BE/members.lang similarity index 100% rename from htdocs/langs/fr_BE/members.lang rename to public/langs/fr_BE/members.lang diff --git a/htdocs/langs/fr_BE/oauth.lang b/public/langs/fr_BE/oauth.lang similarity index 100% rename from htdocs/langs/fr_BE/oauth.lang rename to public/langs/fr_BE/oauth.lang diff --git a/htdocs/langs/fr_BE/opensurvey.lang b/public/langs/fr_BE/opensurvey.lang similarity index 100% rename from htdocs/langs/fr_BE/opensurvey.lang rename to public/langs/fr_BE/opensurvey.lang diff --git a/htdocs/langs/fr_BE/orders.lang b/public/langs/fr_BE/orders.lang similarity index 100% rename from htdocs/langs/fr_BE/orders.lang rename to public/langs/fr_BE/orders.lang diff --git a/htdocs/langs/fr_BE/other.lang b/public/langs/fr_BE/other.lang similarity index 100% rename from htdocs/langs/fr_BE/other.lang rename to public/langs/fr_BE/other.lang diff --git a/htdocs/langs/fr_BE/paybox.lang b/public/langs/fr_BE/paybox.lang similarity index 100% rename from htdocs/langs/fr_BE/paybox.lang rename to public/langs/fr_BE/paybox.lang diff --git a/htdocs/langs/fr_BE/paypal.lang b/public/langs/fr_BE/paypal.lang similarity index 100% rename from htdocs/langs/fr_BE/paypal.lang rename to public/langs/fr_BE/paypal.lang diff --git a/htdocs/langs/fr_BE/printing.lang b/public/langs/fr_BE/printing.lang similarity index 100% rename from htdocs/langs/fr_BE/printing.lang rename to public/langs/fr_BE/printing.lang diff --git a/htdocs/langs/fr_BE/productbatch.lang b/public/langs/fr_BE/productbatch.lang similarity index 100% rename from htdocs/langs/fr_BE/productbatch.lang rename to public/langs/fr_BE/productbatch.lang diff --git a/htdocs/langs/fr_BE/products.lang b/public/langs/fr_BE/products.lang similarity index 100% rename from htdocs/langs/fr_BE/products.lang rename to public/langs/fr_BE/products.lang diff --git a/htdocs/langs/fr_BE/projects.lang b/public/langs/fr_BE/projects.lang similarity index 100% rename from htdocs/langs/fr_BE/projects.lang rename to public/langs/fr_BE/projects.lang diff --git a/htdocs/langs/fr_BE/propal.lang b/public/langs/fr_BE/propal.lang similarity index 100% rename from htdocs/langs/fr_BE/propal.lang rename to public/langs/fr_BE/propal.lang diff --git a/htdocs/langs/fr_BE/receiptprinter.lang b/public/langs/fr_BE/receiptprinter.lang similarity index 100% rename from htdocs/langs/fr_BE/receiptprinter.lang rename to public/langs/fr_BE/receiptprinter.lang diff --git a/htdocs/langs/fr_BE/resource.lang b/public/langs/fr_BE/resource.lang similarity index 100% rename from htdocs/langs/fr_BE/resource.lang rename to public/langs/fr_BE/resource.lang diff --git a/htdocs/langs/fr_BE/salaries.lang b/public/langs/fr_BE/salaries.lang similarity index 100% rename from htdocs/langs/fr_BE/salaries.lang rename to public/langs/fr_BE/salaries.lang diff --git a/htdocs/langs/fr_BE/sendings.lang b/public/langs/fr_BE/sendings.lang similarity index 100% rename from htdocs/langs/fr_BE/sendings.lang rename to public/langs/fr_BE/sendings.lang diff --git a/htdocs/langs/fr_BE/sms.lang b/public/langs/fr_BE/sms.lang similarity index 100% rename from htdocs/langs/fr_BE/sms.lang rename to public/langs/fr_BE/sms.lang diff --git a/htdocs/langs/fr_BE/stocks.lang b/public/langs/fr_BE/stocks.lang similarity index 100% rename from htdocs/langs/fr_BE/stocks.lang rename to public/langs/fr_BE/stocks.lang diff --git a/htdocs/langs/fr_BE/supplier_proposal.lang b/public/langs/fr_BE/supplier_proposal.lang similarity index 100% rename from htdocs/langs/fr_BE/supplier_proposal.lang rename to public/langs/fr_BE/supplier_proposal.lang diff --git a/htdocs/langs/fr_BE/suppliers.lang b/public/langs/fr_BE/suppliers.lang similarity index 100% rename from htdocs/langs/fr_BE/suppliers.lang rename to public/langs/fr_BE/suppliers.lang diff --git a/htdocs/langs/fr_BE/trips.lang b/public/langs/fr_BE/trips.lang similarity index 100% rename from htdocs/langs/fr_BE/trips.lang rename to public/langs/fr_BE/trips.lang diff --git a/htdocs/langs/fr_BE/users.lang b/public/langs/fr_BE/users.lang similarity index 100% rename from htdocs/langs/fr_BE/users.lang rename to public/langs/fr_BE/users.lang diff --git a/htdocs/langs/fr_BE/website.lang b/public/langs/fr_BE/website.lang similarity index 100% rename from htdocs/langs/fr_BE/website.lang rename to public/langs/fr_BE/website.lang diff --git a/htdocs/langs/fr_BE/withdrawals.lang b/public/langs/fr_BE/withdrawals.lang similarity index 100% rename from htdocs/langs/fr_BE/withdrawals.lang rename to public/langs/fr_BE/withdrawals.lang diff --git a/htdocs/langs/fr_BE/workflow.lang b/public/langs/fr_BE/workflow.lang similarity index 100% rename from htdocs/langs/fr_BE/workflow.lang rename to public/langs/fr_BE/workflow.lang diff --git a/htdocs/langs/fr_CA/accountancy.lang b/public/langs/fr_CA/accountancy.lang similarity index 100% rename from htdocs/langs/fr_CA/accountancy.lang rename to public/langs/fr_CA/accountancy.lang diff --git a/htdocs/langs/fr_CA/admin.lang b/public/langs/fr_CA/admin.lang similarity index 100% rename from htdocs/langs/fr_CA/admin.lang rename to public/langs/fr_CA/admin.lang diff --git a/htdocs/langs/fr_CA/agenda.lang b/public/langs/fr_CA/agenda.lang similarity index 100% rename from htdocs/langs/fr_CA/agenda.lang rename to public/langs/fr_CA/agenda.lang diff --git a/htdocs/langs/fr_CA/banks.lang b/public/langs/fr_CA/banks.lang similarity index 100% rename from htdocs/langs/fr_CA/banks.lang rename to public/langs/fr_CA/banks.lang diff --git a/htdocs/langs/fr_CA/bills.lang b/public/langs/fr_CA/bills.lang similarity index 100% rename from htdocs/langs/fr_CA/bills.lang rename to public/langs/fr_CA/bills.lang diff --git a/htdocs/langs/fr_CA/bookmarks.lang b/public/langs/fr_CA/bookmarks.lang similarity index 100% rename from htdocs/langs/fr_CA/bookmarks.lang rename to public/langs/fr_CA/bookmarks.lang diff --git a/htdocs/langs/fr_CA/boxes.lang b/public/langs/fr_CA/boxes.lang similarity index 100% rename from htdocs/langs/fr_CA/boxes.lang rename to public/langs/fr_CA/boxes.lang diff --git a/htdocs/langs/fr_CA/cashdesk.lang b/public/langs/fr_CA/cashdesk.lang similarity index 100% rename from htdocs/langs/fr_CA/cashdesk.lang rename to public/langs/fr_CA/cashdesk.lang diff --git a/htdocs/langs/fr_CA/categories.lang b/public/langs/fr_CA/categories.lang similarity index 100% rename from htdocs/langs/fr_CA/categories.lang rename to public/langs/fr_CA/categories.lang diff --git a/htdocs/langs/fr_CA/commercial.lang b/public/langs/fr_CA/commercial.lang similarity index 100% rename from htdocs/langs/fr_CA/commercial.lang rename to public/langs/fr_CA/commercial.lang diff --git a/htdocs/langs/fr_CA/companies.lang b/public/langs/fr_CA/companies.lang similarity index 100% rename from htdocs/langs/fr_CA/companies.lang rename to public/langs/fr_CA/companies.lang diff --git a/htdocs/langs/fr_CA/compta.lang b/public/langs/fr_CA/compta.lang similarity index 100% rename from htdocs/langs/fr_CA/compta.lang rename to public/langs/fr_CA/compta.lang diff --git a/htdocs/langs/fr_CA/contracts.lang b/public/langs/fr_CA/contracts.lang similarity index 100% rename from htdocs/langs/fr_CA/contracts.lang rename to public/langs/fr_CA/contracts.lang diff --git a/htdocs/langs/fr_CA/cron.lang b/public/langs/fr_CA/cron.lang similarity index 100% rename from htdocs/langs/fr_CA/cron.lang rename to public/langs/fr_CA/cron.lang diff --git a/htdocs/langs/fr_CA/deliveries.lang b/public/langs/fr_CA/deliveries.lang similarity index 100% rename from htdocs/langs/fr_CA/deliveries.lang rename to public/langs/fr_CA/deliveries.lang diff --git a/htdocs/langs/fr_CA/dict.lang b/public/langs/fr_CA/dict.lang similarity index 100% rename from htdocs/langs/fr_CA/dict.lang rename to public/langs/fr_CA/dict.lang diff --git a/htdocs/langs/fr_CA/donations.lang b/public/langs/fr_CA/donations.lang similarity index 100% rename from htdocs/langs/fr_CA/donations.lang rename to public/langs/fr_CA/donations.lang diff --git a/htdocs/langs/fr_CA/ecm.lang b/public/langs/fr_CA/ecm.lang similarity index 100% rename from htdocs/langs/fr_CA/ecm.lang rename to public/langs/fr_CA/ecm.lang diff --git a/htdocs/langs/fr_CA/errors.lang b/public/langs/fr_CA/errors.lang similarity index 100% rename from htdocs/langs/fr_CA/errors.lang rename to public/langs/fr_CA/errors.lang diff --git a/htdocs/langs/fr_CA/exports.lang b/public/langs/fr_CA/exports.lang similarity index 100% rename from htdocs/langs/fr_CA/exports.lang rename to public/langs/fr_CA/exports.lang diff --git a/htdocs/langs/fr_CA/externalsite.lang b/public/langs/fr_CA/externalsite.lang similarity index 100% rename from htdocs/langs/fr_CA/externalsite.lang rename to public/langs/fr_CA/externalsite.lang diff --git a/htdocs/langs/fr_CA/ftp.lang b/public/langs/fr_CA/ftp.lang similarity index 100% rename from htdocs/langs/fr_CA/ftp.lang rename to public/langs/fr_CA/ftp.lang diff --git a/htdocs/langs/fr_CA/help.lang b/public/langs/fr_CA/help.lang similarity index 100% rename from htdocs/langs/fr_CA/help.lang rename to public/langs/fr_CA/help.lang diff --git a/htdocs/langs/fr_CA/holiday.lang b/public/langs/fr_CA/holiday.lang similarity index 100% rename from htdocs/langs/fr_CA/holiday.lang rename to public/langs/fr_CA/holiday.lang diff --git a/htdocs/langs/fr_CA/hrm.lang b/public/langs/fr_CA/hrm.lang similarity index 100% rename from htdocs/langs/fr_CA/hrm.lang rename to public/langs/fr_CA/hrm.lang diff --git a/htdocs/langs/fr_CA/incoterm.lang b/public/langs/fr_CA/incoterm.lang similarity index 100% rename from htdocs/langs/fr_CA/incoterm.lang rename to public/langs/fr_CA/incoterm.lang diff --git a/htdocs/langs/fr_CA/install.lang b/public/langs/fr_CA/install.lang similarity index 100% rename from htdocs/langs/fr_CA/install.lang rename to public/langs/fr_CA/install.lang diff --git a/htdocs/langs/fr_CA/interventions.lang b/public/langs/fr_CA/interventions.lang similarity index 100% rename from htdocs/langs/fr_CA/interventions.lang rename to public/langs/fr_CA/interventions.lang diff --git a/htdocs/langs/fr_CA/languages.lang b/public/langs/fr_CA/languages.lang similarity index 100% rename from htdocs/langs/fr_CA/languages.lang rename to public/langs/fr_CA/languages.lang diff --git a/htdocs/langs/fr_CA/ldap.lang b/public/langs/fr_CA/ldap.lang similarity index 100% rename from htdocs/langs/fr_CA/ldap.lang rename to public/langs/fr_CA/ldap.lang diff --git a/htdocs/langs/fr_CA/link.lang b/public/langs/fr_CA/link.lang similarity index 100% rename from htdocs/langs/fr_CA/link.lang rename to public/langs/fr_CA/link.lang diff --git a/htdocs/langs/fr_CA/loan.lang b/public/langs/fr_CA/loan.lang similarity index 100% rename from htdocs/langs/fr_CA/loan.lang rename to public/langs/fr_CA/loan.lang diff --git a/htdocs/langs/fr_CA/mailmanspip.lang b/public/langs/fr_CA/mailmanspip.lang similarity index 100% rename from htdocs/langs/fr_CA/mailmanspip.lang rename to public/langs/fr_CA/mailmanspip.lang diff --git a/htdocs/langs/fr_CA/mails.lang b/public/langs/fr_CA/mails.lang similarity index 100% rename from htdocs/langs/fr_CA/mails.lang rename to public/langs/fr_CA/mails.lang diff --git a/htdocs/langs/fr_CA/main.lang b/public/langs/fr_CA/main.lang similarity index 100% rename from htdocs/langs/fr_CA/main.lang rename to public/langs/fr_CA/main.lang diff --git a/htdocs/langs/fr_CA/margins.lang b/public/langs/fr_CA/margins.lang similarity index 100% rename from htdocs/langs/fr_CA/margins.lang rename to public/langs/fr_CA/margins.lang diff --git a/htdocs/langs/fr_CA/members.lang b/public/langs/fr_CA/members.lang similarity index 100% rename from htdocs/langs/fr_CA/members.lang rename to public/langs/fr_CA/members.lang diff --git a/htdocs/langs/fr_CA/oauth.lang b/public/langs/fr_CA/oauth.lang similarity index 100% rename from htdocs/langs/fr_CA/oauth.lang rename to public/langs/fr_CA/oauth.lang diff --git a/htdocs/langs/fr_CA/opensurvey.lang b/public/langs/fr_CA/opensurvey.lang similarity index 100% rename from htdocs/langs/fr_CA/opensurvey.lang rename to public/langs/fr_CA/opensurvey.lang diff --git a/htdocs/langs/fr_CA/orders.lang b/public/langs/fr_CA/orders.lang similarity index 100% rename from htdocs/langs/fr_CA/orders.lang rename to public/langs/fr_CA/orders.lang diff --git a/htdocs/langs/fr_CA/other.lang b/public/langs/fr_CA/other.lang similarity index 100% rename from htdocs/langs/fr_CA/other.lang rename to public/langs/fr_CA/other.lang diff --git a/htdocs/langs/fr_CA/paybox.lang b/public/langs/fr_CA/paybox.lang similarity index 100% rename from htdocs/langs/fr_CA/paybox.lang rename to public/langs/fr_CA/paybox.lang diff --git a/htdocs/langs/fr_CA/paypal.lang b/public/langs/fr_CA/paypal.lang similarity index 100% rename from htdocs/langs/fr_CA/paypal.lang rename to public/langs/fr_CA/paypal.lang diff --git a/htdocs/langs/fr_CA/printing.lang b/public/langs/fr_CA/printing.lang similarity index 100% rename from htdocs/langs/fr_CA/printing.lang rename to public/langs/fr_CA/printing.lang diff --git a/htdocs/langs/fr_CA/productbatch.lang b/public/langs/fr_CA/productbatch.lang similarity index 100% rename from htdocs/langs/fr_CA/productbatch.lang rename to public/langs/fr_CA/productbatch.lang diff --git a/htdocs/langs/fr_CA/products.lang b/public/langs/fr_CA/products.lang similarity index 100% rename from htdocs/langs/fr_CA/products.lang rename to public/langs/fr_CA/products.lang diff --git a/htdocs/langs/fr_CA/projects.lang b/public/langs/fr_CA/projects.lang similarity index 100% rename from htdocs/langs/fr_CA/projects.lang rename to public/langs/fr_CA/projects.lang diff --git a/htdocs/langs/fr_CA/propal.lang b/public/langs/fr_CA/propal.lang similarity index 100% rename from htdocs/langs/fr_CA/propal.lang rename to public/langs/fr_CA/propal.lang diff --git a/htdocs/langs/fr_CA/receiptprinter.lang b/public/langs/fr_CA/receiptprinter.lang similarity index 100% rename from htdocs/langs/fr_CA/receiptprinter.lang rename to public/langs/fr_CA/receiptprinter.lang diff --git a/htdocs/langs/fr_CA/resource.lang b/public/langs/fr_CA/resource.lang similarity index 100% rename from htdocs/langs/fr_CA/resource.lang rename to public/langs/fr_CA/resource.lang diff --git a/htdocs/langs/fr_CA/salaries.lang b/public/langs/fr_CA/salaries.lang similarity index 100% rename from htdocs/langs/fr_CA/salaries.lang rename to public/langs/fr_CA/salaries.lang diff --git a/htdocs/langs/fr_CA/sendings.lang b/public/langs/fr_CA/sendings.lang similarity index 100% rename from htdocs/langs/fr_CA/sendings.lang rename to public/langs/fr_CA/sendings.lang diff --git a/htdocs/langs/fr_CA/sms.lang b/public/langs/fr_CA/sms.lang similarity index 100% rename from htdocs/langs/fr_CA/sms.lang rename to public/langs/fr_CA/sms.lang diff --git a/htdocs/langs/fr_CA/stocks.lang b/public/langs/fr_CA/stocks.lang similarity index 100% rename from htdocs/langs/fr_CA/stocks.lang rename to public/langs/fr_CA/stocks.lang diff --git a/htdocs/langs/fr_CA/supplier_proposal.lang b/public/langs/fr_CA/supplier_proposal.lang similarity index 100% rename from htdocs/langs/fr_CA/supplier_proposal.lang rename to public/langs/fr_CA/supplier_proposal.lang diff --git a/htdocs/langs/fr_CA/suppliers.lang b/public/langs/fr_CA/suppliers.lang similarity index 100% rename from htdocs/langs/fr_CA/suppliers.lang rename to public/langs/fr_CA/suppliers.lang diff --git a/htdocs/langs/fr_CA/trips.lang b/public/langs/fr_CA/trips.lang similarity index 100% rename from htdocs/langs/fr_CA/trips.lang rename to public/langs/fr_CA/trips.lang diff --git a/htdocs/langs/fr_CA/users.lang b/public/langs/fr_CA/users.lang similarity index 100% rename from htdocs/langs/fr_CA/users.lang rename to public/langs/fr_CA/users.lang diff --git a/htdocs/langs/fr_CA/website.lang b/public/langs/fr_CA/website.lang similarity index 100% rename from htdocs/langs/fr_CA/website.lang rename to public/langs/fr_CA/website.lang diff --git a/htdocs/langs/fr_CA/withdrawals.lang b/public/langs/fr_CA/withdrawals.lang similarity index 100% rename from htdocs/langs/fr_CA/withdrawals.lang rename to public/langs/fr_CA/withdrawals.lang diff --git a/htdocs/langs/fr_CA/workflow.lang b/public/langs/fr_CA/workflow.lang similarity index 100% rename from htdocs/langs/fr_CA/workflow.lang rename to public/langs/fr_CA/workflow.lang diff --git a/htdocs/langs/fr_CH/accountancy.lang b/public/langs/fr_CH/accountancy.lang similarity index 100% rename from htdocs/langs/fr_CH/accountancy.lang rename to public/langs/fr_CH/accountancy.lang diff --git a/htdocs/langs/fr_CH/admin.lang b/public/langs/fr_CH/admin.lang similarity index 100% rename from htdocs/langs/fr_CH/admin.lang rename to public/langs/fr_CH/admin.lang diff --git a/htdocs/langs/fr_CH/agenda.lang b/public/langs/fr_CH/agenda.lang similarity index 100% rename from htdocs/langs/fr_CH/agenda.lang rename to public/langs/fr_CH/agenda.lang diff --git a/htdocs/langs/fr_CH/banks.lang b/public/langs/fr_CH/banks.lang similarity index 100% rename from htdocs/langs/fr_CH/banks.lang rename to public/langs/fr_CH/banks.lang diff --git a/htdocs/langs/fr_CH/bills.lang b/public/langs/fr_CH/bills.lang similarity index 100% rename from htdocs/langs/fr_CH/bills.lang rename to public/langs/fr_CH/bills.lang diff --git a/htdocs/langs/fr_CH/bookmarks.lang b/public/langs/fr_CH/bookmarks.lang similarity index 100% rename from htdocs/langs/fr_CH/bookmarks.lang rename to public/langs/fr_CH/bookmarks.lang diff --git a/htdocs/langs/fr_CH/boxes.lang b/public/langs/fr_CH/boxes.lang similarity index 100% rename from htdocs/langs/fr_CH/boxes.lang rename to public/langs/fr_CH/boxes.lang diff --git a/htdocs/langs/fr_CH/cashdesk.lang b/public/langs/fr_CH/cashdesk.lang similarity index 100% rename from htdocs/langs/fr_CH/cashdesk.lang rename to public/langs/fr_CH/cashdesk.lang diff --git a/htdocs/langs/fr_CH/categories.lang b/public/langs/fr_CH/categories.lang similarity index 100% rename from htdocs/langs/fr_CH/categories.lang rename to public/langs/fr_CH/categories.lang diff --git a/htdocs/langs/fr_CH/commercial.lang b/public/langs/fr_CH/commercial.lang similarity index 100% rename from htdocs/langs/fr_CH/commercial.lang rename to public/langs/fr_CH/commercial.lang diff --git a/htdocs/langs/fr_CH/companies.lang b/public/langs/fr_CH/companies.lang similarity index 100% rename from htdocs/langs/fr_CH/companies.lang rename to public/langs/fr_CH/companies.lang diff --git a/htdocs/langs/fr_CH/compta.lang b/public/langs/fr_CH/compta.lang similarity index 100% rename from htdocs/langs/fr_CH/compta.lang rename to public/langs/fr_CH/compta.lang diff --git a/htdocs/langs/fr_CH/contracts.lang b/public/langs/fr_CH/contracts.lang similarity index 100% rename from htdocs/langs/fr_CH/contracts.lang rename to public/langs/fr_CH/contracts.lang diff --git a/htdocs/langs/fr_CH/cron.lang b/public/langs/fr_CH/cron.lang similarity index 100% rename from htdocs/langs/fr_CH/cron.lang rename to public/langs/fr_CH/cron.lang diff --git a/htdocs/langs/fr_CH/deliveries.lang b/public/langs/fr_CH/deliveries.lang similarity index 100% rename from htdocs/langs/fr_CH/deliveries.lang rename to public/langs/fr_CH/deliveries.lang diff --git a/htdocs/langs/fr_CH/dict.lang b/public/langs/fr_CH/dict.lang similarity index 100% rename from htdocs/langs/fr_CH/dict.lang rename to public/langs/fr_CH/dict.lang diff --git a/htdocs/langs/fr_CH/donations.lang b/public/langs/fr_CH/donations.lang similarity index 100% rename from htdocs/langs/fr_CH/donations.lang rename to public/langs/fr_CH/donations.lang diff --git a/htdocs/langs/fr_CH/ecm.lang b/public/langs/fr_CH/ecm.lang similarity index 100% rename from htdocs/langs/fr_CH/ecm.lang rename to public/langs/fr_CH/ecm.lang diff --git a/htdocs/langs/fr_CH/errors.lang b/public/langs/fr_CH/errors.lang similarity index 100% rename from htdocs/langs/fr_CH/errors.lang rename to public/langs/fr_CH/errors.lang diff --git a/htdocs/langs/fr_CH/exports.lang b/public/langs/fr_CH/exports.lang similarity index 100% rename from htdocs/langs/fr_CH/exports.lang rename to public/langs/fr_CH/exports.lang diff --git a/htdocs/langs/fr_CH/externalsite.lang b/public/langs/fr_CH/externalsite.lang similarity index 100% rename from htdocs/langs/fr_CH/externalsite.lang rename to public/langs/fr_CH/externalsite.lang diff --git a/htdocs/langs/fr_CH/ftp.lang b/public/langs/fr_CH/ftp.lang similarity index 100% rename from htdocs/langs/fr_CH/ftp.lang rename to public/langs/fr_CH/ftp.lang diff --git a/htdocs/langs/fr_CH/help.lang b/public/langs/fr_CH/help.lang similarity index 100% rename from htdocs/langs/fr_CH/help.lang rename to public/langs/fr_CH/help.lang diff --git a/htdocs/langs/fr_CH/holiday.lang b/public/langs/fr_CH/holiday.lang similarity index 100% rename from htdocs/langs/fr_CH/holiday.lang rename to public/langs/fr_CH/holiday.lang diff --git a/htdocs/langs/fr_CH/hrm.lang b/public/langs/fr_CH/hrm.lang similarity index 100% rename from htdocs/langs/fr_CH/hrm.lang rename to public/langs/fr_CH/hrm.lang diff --git a/htdocs/langs/fr_CH/incoterm.lang b/public/langs/fr_CH/incoterm.lang similarity index 100% rename from htdocs/langs/fr_CH/incoterm.lang rename to public/langs/fr_CH/incoterm.lang diff --git a/htdocs/langs/fr_CH/install.lang b/public/langs/fr_CH/install.lang similarity index 100% rename from htdocs/langs/fr_CH/install.lang rename to public/langs/fr_CH/install.lang diff --git a/htdocs/langs/fr_CH/interventions.lang b/public/langs/fr_CH/interventions.lang similarity index 100% rename from htdocs/langs/fr_CH/interventions.lang rename to public/langs/fr_CH/interventions.lang diff --git a/htdocs/langs/fr_CH/languages.lang b/public/langs/fr_CH/languages.lang similarity index 100% rename from htdocs/langs/fr_CH/languages.lang rename to public/langs/fr_CH/languages.lang diff --git a/htdocs/langs/fr_CH/ldap.lang b/public/langs/fr_CH/ldap.lang similarity index 100% rename from htdocs/langs/fr_CH/ldap.lang rename to public/langs/fr_CH/ldap.lang diff --git a/htdocs/langs/fr_CH/link.lang b/public/langs/fr_CH/link.lang similarity index 100% rename from htdocs/langs/fr_CH/link.lang rename to public/langs/fr_CH/link.lang diff --git a/htdocs/langs/fr_CH/loan.lang b/public/langs/fr_CH/loan.lang similarity index 100% rename from htdocs/langs/fr_CH/loan.lang rename to public/langs/fr_CH/loan.lang diff --git a/htdocs/langs/fr_CH/mailmanspip.lang b/public/langs/fr_CH/mailmanspip.lang similarity index 100% rename from htdocs/langs/fr_CH/mailmanspip.lang rename to public/langs/fr_CH/mailmanspip.lang diff --git a/htdocs/langs/fr_CH/mails.lang b/public/langs/fr_CH/mails.lang similarity index 100% rename from htdocs/langs/fr_CH/mails.lang rename to public/langs/fr_CH/mails.lang diff --git a/htdocs/langs/fr_CH/main.lang b/public/langs/fr_CH/main.lang similarity index 100% rename from htdocs/langs/fr_CH/main.lang rename to public/langs/fr_CH/main.lang diff --git a/htdocs/langs/fr_CH/margins.lang b/public/langs/fr_CH/margins.lang similarity index 100% rename from htdocs/langs/fr_CH/margins.lang rename to public/langs/fr_CH/margins.lang diff --git a/htdocs/langs/fr_CH/members.lang b/public/langs/fr_CH/members.lang similarity index 100% rename from htdocs/langs/fr_CH/members.lang rename to public/langs/fr_CH/members.lang diff --git a/htdocs/langs/fr_CH/oauth.lang b/public/langs/fr_CH/oauth.lang similarity index 100% rename from htdocs/langs/fr_CH/oauth.lang rename to public/langs/fr_CH/oauth.lang diff --git a/htdocs/langs/fr_CH/opensurvey.lang b/public/langs/fr_CH/opensurvey.lang similarity index 100% rename from htdocs/langs/fr_CH/opensurvey.lang rename to public/langs/fr_CH/opensurvey.lang diff --git a/htdocs/langs/fr_CH/orders.lang b/public/langs/fr_CH/orders.lang similarity index 100% rename from htdocs/langs/fr_CH/orders.lang rename to public/langs/fr_CH/orders.lang diff --git a/htdocs/langs/fr_CH/other.lang b/public/langs/fr_CH/other.lang similarity index 100% rename from htdocs/langs/fr_CH/other.lang rename to public/langs/fr_CH/other.lang diff --git a/htdocs/langs/fr_CH/paybox.lang b/public/langs/fr_CH/paybox.lang similarity index 100% rename from htdocs/langs/fr_CH/paybox.lang rename to public/langs/fr_CH/paybox.lang diff --git a/htdocs/langs/fr_CH/paypal.lang b/public/langs/fr_CH/paypal.lang similarity index 100% rename from htdocs/langs/fr_CH/paypal.lang rename to public/langs/fr_CH/paypal.lang diff --git a/htdocs/langs/fr_CH/printing.lang b/public/langs/fr_CH/printing.lang similarity index 100% rename from htdocs/langs/fr_CH/printing.lang rename to public/langs/fr_CH/printing.lang diff --git a/htdocs/langs/fr_CH/productbatch.lang b/public/langs/fr_CH/productbatch.lang similarity index 100% rename from htdocs/langs/fr_CH/productbatch.lang rename to public/langs/fr_CH/productbatch.lang diff --git a/htdocs/langs/fr_CH/products.lang b/public/langs/fr_CH/products.lang similarity index 100% rename from htdocs/langs/fr_CH/products.lang rename to public/langs/fr_CH/products.lang diff --git a/htdocs/langs/fr_CH/projects.lang b/public/langs/fr_CH/projects.lang similarity index 100% rename from htdocs/langs/fr_CH/projects.lang rename to public/langs/fr_CH/projects.lang diff --git a/htdocs/langs/fr_CH/propal.lang b/public/langs/fr_CH/propal.lang similarity index 100% rename from htdocs/langs/fr_CH/propal.lang rename to public/langs/fr_CH/propal.lang diff --git a/htdocs/langs/fr_CH/receiptprinter.lang b/public/langs/fr_CH/receiptprinter.lang similarity index 100% rename from htdocs/langs/fr_CH/receiptprinter.lang rename to public/langs/fr_CH/receiptprinter.lang diff --git a/htdocs/langs/fr_CH/resource.lang b/public/langs/fr_CH/resource.lang similarity index 100% rename from htdocs/langs/fr_CH/resource.lang rename to public/langs/fr_CH/resource.lang diff --git a/htdocs/langs/fr_CH/salaries.lang b/public/langs/fr_CH/salaries.lang similarity index 100% rename from htdocs/langs/fr_CH/salaries.lang rename to public/langs/fr_CH/salaries.lang diff --git a/htdocs/langs/fr_CH/sendings.lang b/public/langs/fr_CH/sendings.lang similarity index 100% rename from htdocs/langs/fr_CH/sendings.lang rename to public/langs/fr_CH/sendings.lang diff --git a/htdocs/langs/fr_CH/sms.lang b/public/langs/fr_CH/sms.lang similarity index 100% rename from htdocs/langs/fr_CH/sms.lang rename to public/langs/fr_CH/sms.lang diff --git a/htdocs/langs/fr_CH/stocks.lang b/public/langs/fr_CH/stocks.lang similarity index 100% rename from htdocs/langs/fr_CH/stocks.lang rename to public/langs/fr_CH/stocks.lang diff --git a/htdocs/langs/fr_CH/supplier_proposal.lang b/public/langs/fr_CH/supplier_proposal.lang similarity index 100% rename from htdocs/langs/fr_CH/supplier_proposal.lang rename to public/langs/fr_CH/supplier_proposal.lang diff --git a/htdocs/langs/fr_CH/suppliers.lang b/public/langs/fr_CH/suppliers.lang similarity index 100% rename from htdocs/langs/fr_CH/suppliers.lang rename to public/langs/fr_CH/suppliers.lang diff --git a/htdocs/langs/fr_CH/trips.lang b/public/langs/fr_CH/trips.lang similarity index 100% rename from htdocs/langs/fr_CH/trips.lang rename to public/langs/fr_CH/trips.lang diff --git a/htdocs/langs/fr_CH/users.lang b/public/langs/fr_CH/users.lang similarity index 100% rename from htdocs/langs/fr_CH/users.lang rename to public/langs/fr_CH/users.lang diff --git a/htdocs/langs/fr_CH/website.lang b/public/langs/fr_CH/website.lang similarity index 100% rename from htdocs/langs/fr_CH/website.lang rename to public/langs/fr_CH/website.lang diff --git a/htdocs/langs/fr_CH/withdrawals.lang b/public/langs/fr_CH/withdrawals.lang similarity index 100% rename from htdocs/langs/fr_CH/withdrawals.lang rename to public/langs/fr_CH/withdrawals.lang diff --git a/htdocs/langs/fr_CH/workflow.lang b/public/langs/fr_CH/workflow.lang similarity index 100% rename from htdocs/langs/fr_CH/workflow.lang rename to public/langs/fr_CH/workflow.lang diff --git a/htdocs/langs/fr_FR/accountancy.lang b/public/langs/fr_FR/accountancy.lang similarity index 100% rename from htdocs/langs/fr_FR/accountancy.lang rename to public/langs/fr_FR/accountancy.lang diff --git a/htdocs/langs/fr_FR/admin.lang b/public/langs/fr_FR/admin.lang similarity index 100% rename from htdocs/langs/fr_FR/admin.lang rename to public/langs/fr_FR/admin.lang diff --git a/htdocs/langs/fr_FR/agenda.lang b/public/langs/fr_FR/agenda.lang similarity index 100% rename from htdocs/langs/fr_FR/agenda.lang rename to public/langs/fr_FR/agenda.lang diff --git a/htdocs/langs/fr_FR/banks.lang b/public/langs/fr_FR/banks.lang similarity index 100% rename from htdocs/langs/fr_FR/banks.lang rename to public/langs/fr_FR/banks.lang diff --git a/htdocs/langs/fr_FR/bills.lang b/public/langs/fr_FR/bills.lang similarity index 100% rename from htdocs/langs/fr_FR/bills.lang rename to public/langs/fr_FR/bills.lang diff --git a/htdocs/langs/fr_FR/bookmarks.lang b/public/langs/fr_FR/bookmarks.lang similarity index 100% rename from htdocs/langs/fr_FR/bookmarks.lang rename to public/langs/fr_FR/bookmarks.lang diff --git a/htdocs/langs/fr_FR/boxes.lang b/public/langs/fr_FR/boxes.lang similarity index 100% rename from htdocs/langs/fr_FR/boxes.lang rename to public/langs/fr_FR/boxes.lang diff --git a/htdocs/langs/fr_FR/cashdesk.lang b/public/langs/fr_FR/cashdesk.lang similarity index 100% rename from htdocs/langs/fr_FR/cashdesk.lang rename to public/langs/fr_FR/cashdesk.lang diff --git a/htdocs/langs/fr_FR/categories.lang b/public/langs/fr_FR/categories.lang similarity index 100% rename from htdocs/langs/fr_FR/categories.lang rename to public/langs/fr_FR/categories.lang diff --git a/htdocs/langs/fr_FR/commercial.lang b/public/langs/fr_FR/commercial.lang similarity index 100% rename from htdocs/langs/fr_FR/commercial.lang rename to public/langs/fr_FR/commercial.lang diff --git a/htdocs/langs/fr_FR/companies.lang b/public/langs/fr_FR/companies.lang similarity index 100% rename from htdocs/langs/fr_FR/companies.lang rename to public/langs/fr_FR/companies.lang diff --git a/htdocs/langs/fr_FR/compta.lang b/public/langs/fr_FR/compta.lang similarity index 100% rename from htdocs/langs/fr_FR/compta.lang rename to public/langs/fr_FR/compta.lang diff --git a/htdocs/langs/fr_FR/contracts.lang b/public/langs/fr_FR/contracts.lang similarity index 100% rename from htdocs/langs/fr_FR/contracts.lang rename to public/langs/fr_FR/contracts.lang diff --git a/htdocs/langs/fr_FR/cron.lang b/public/langs/fr_FR/cron.lang similarity index 100% rename from htdocs/langs/fr_FR/cron.lang rename to public/langs/fr_FR/cron.lang diff --git a/htdocs/langs/fr_FR/deliveries.lang b/public/langs/fr_FR/deliveries.lang similarity index 100% rename from htdocs/langs/fr_FR/deliveries.lang rename to public/langs/fr_FR/deliveries.lang diff --git a/htdocs/langs/fr_FR/dict.lang b/public/langs/fr_FR/dict.lang similarity index 100% rename from htdocs/langs/fr_FR/dict.lang rename to public/langs/fr_FR/dict.lang diff --git a/htdocs/langs/fr_FR/donations.lang b/public/langs/fr_FR/donations.lang similarity index 100% rename from htdocs/langs/fr_FR/donations.lang rename to public/langs/fr_FR/donations.lang diff --git a/htdocs/langs/fr_FR/ecm.lang b/public/langs/fr_FR/ecm.lang similarity index 100% rename from htdocs/langs/fr_FR/ecm.lang rename to public/langs/fr_FR/ecm.lang diff --git a/htdocs/langs/fr_FR/errors.lang b/public/langs/fr_FR/errors.lang similarity index 100% rename from htdocs/langs/fr_FR/errors.lang rename to public/langs/fr_FR/errors.lang diff --git a/htdocs/langs/fr_FR/expensereports.lang b/public/langs/fr_FR/expensereports.lang similarity index 100% rename from htdocs/langs/fr_FR/expensereports.lang rename to public/langs/fr_FR/expensereports.lang diff --git a/htdocs/langs/fr_FR/exports.lang b/public/langs/fr_FR/exports.lang similarity index 100% rename from htdocs/langs/fr_FR/exports.lang rename to public/langs/fr_FR/exports.lang diff --git a/htdocs/langs/fr_FR/externalsite.lang b/public/langs/fr_FR/externalsite.lang similarity index 100% rename from htdocs/langs/fr_FR/externalsite.lang rename to public/langs/fr_FR/externalsite.lang diff --git a/htdocs/langs/fr_FR/ftp.lang b/public/langs/fr_FR/ftp.lang similarity index 100% rename from htdocs/langs/fr_FR/ftp.lang rename to public/langs/fr_FR/ftp.lang diff --git a/htdocs/langs/fr_FR/help.lang b/public/langs/fr_FR/help.lang similarity index 100% rename from htdocs/langs/fr_FR/help.lang rename to public/langs/fr_FR/help.lang diff --git a/htdocs/langs/fr_FR/holiday.lang b/public/langs/fr_FR/holiday.lang similarity index 100% rename from htdocs/langs/fr_FR/holiday.lang rename to public/langs/fr_FR/holiday.lang diff --git a/htdocs/langs/fr_FR/hrm.lang b/public/langs/fr_FR/hrm.lang similarity index 100% rename from htdocs/langs/fr_FR/hrm.lang rename to public/langs/fr_FR/hrm.lang diff --git a/htdocs/langs/fr_FR/incoterm.lang b/public/langs/fr_FR/incoterm.lang similarity index 100% rename from htdocs/langs/fr_FR/incoterm.lang rename to public/langs/fr_FR/incoterm.lang diff --git a/htdocs/langs/fr_FR/install.lang b/public/langs/fr_FR/install.lang similarity index 100% rename from htdocs/langs/fr_FR/install.lang rename to public/langs/fr_FR/install.lang diff --git a/htdocs/langs/fr_FR/interventions.lang b/public/langs/fr_FR/interventions.lang similarity index 100% rename from htdocs/langs/fr_FR/interventions.lang rename to public/langs/fr_FR/interventions.lang diff --git a/htdocs/langs/fr_FR/languages.lang b/public/langs/fr_FR/languages.lang similarity index 100% rename from htdocs/langs/fr_FR/languages.lang rename to public/langs/fr_FR/languages.lang diff --git a/htdocs/langs/fr_FR/ldap.lang b/public/langs/fr_FR/ldap.lang similarity index 100% rename from htdocs/langs/fr_FR/ldap.lang rename to public/langs/fr_FR/ldap.lang diff --git a/htdocs/langs/fr_FR/link.lang b/public/langs/fr_FR/link.lang similarity index 100% rename from htdocs/langs/fr_FR/link.lang rename to public/langs/fr_FR/link.lang diff --git a/htdocs/langs/fr_FR/loan.lang b/public/langs/fr_FR/loan.lang similarity index 100% rename from htdocs/langs/fr_FR/loan.lang rename to public/langs/fr_FR/loan.lang diff --git a/htdocs/langs/fr_FR/mailmanspip.lang b/public/langs/fr_FR/mailmanspip.lang similarity index 100% rename from htdocs/langs/fr_FR/mailmanspip.lang rename to public/langs/fr_FR/mailmanspip.lang diff --git a/htdocs/langs/fr_FR/mails.lang b/public/langs/fr_FR/mails.lang similarity index 100% rename from htdocs/langs/fr_FR/mails.lang rename to public/langs/fr_FR/mails.lang diff --git a/htdocs/langs/fr_FR/main.lang b/public/langs/fr_FR/main.lang similarity index 100% rename from htdocs/langs/fr_FR/main.lang rename to public/langs/fr_FR/main.lang diff --git a/htdocs/langs/fr_FR/margins.lang b/public/langs/fr_FR/margins.lang similarity index 100% rename from htdocs/langs/fr_FR/margins.lang rename to public/langs/fr_FR/margins.lang diff --git a/htdocs/langs/fr_FR/members.lang b/public/langs/fr_FR/members.lang similarity index 100% rename from htdocs/langs/fr_FR/members.lang rename to public/langs/fr_FR/members.lang diff --git a/htdocs/langs/fr_FR/oauth.lang b/public/langs/fr_FR/oauth.lang similarity index 100% rename from htdocs/langs/fr_FR/oauth.lang rename to public/langs/fr_FR/oauth.lang diff --git a/htdocs/langs/fr_FR/opensurvey.lang b/public/langs/fr_FR/opensurvey.lang similarity index 100% rename from htdocs/langs/fr_FR/opensurvey.lang rename to public/langs/fr_FR/opensurvey.lang diff --git a/htdocs/langs/fr_FR/orders.lang b/public/langs/fr_FR/orders.lang similarity index 100% rename from htdocs/langs/fr_FR/orders.lang rename to public/langs/fr_FR/orders.lang diff --git a/htdocs/langs/fr_FR/other.lang b/public/langs/fr_FR/other.lang similarity index 100% rename from htdocs/langs/fr_FR/other.lang rename to public/langs/fr_FR/other.lang diff --git a/htdocs/langs/fr_FR/paybox.lang b/public/langs/fr_FR/paybox.lang similarity index 100% rename from htdocs/langs/fr_FR/paybox.lang rename to public/langs/fr_FR/paybox.lang diff --git a/htdocs/langs/fr_FR/paypal.lang b/public/langs/fr_FR/paypal.lang similarity index 100% rename from htdocs/langs/fr_FR/paypal.lang rename to public/langs/fr_FR/paypal.lang diff --git a/htdocs/langs/fr_FR/printing.lang b/public/langs/fr_FR/printing.lang similarity index 100% rename from htdocs/langs/fr_FR/printing.lang rename to public/langs/fr_FR/printing.lang diff --git a/htdocs/langs/fr_FR/productbatch.lang b/public/langs/fr_FR/productbatch.lang similarity index 100% rename from htdocs/langs/fr_FR/productbatch.lang rename to public/langs/fr_FR/productbatch.lang diff --git a/htdocs/langs/fr_FR/products.lang b/public/langs/fr_FR/products.lang similarity index 100% rename from htdocs/langs/fr_FR/products.lang rename to public/langs/fr_FR/products.lang diff --git a/htdocs/langs/fr_FR/projects.lang b/public/langs/fr_FR/projects.lang similarity index 100% rename from htdocs/langs/fr_FR/projects.lang rename to public/langs/fr_FR/projects.lang diff --git a/htdocs/langs/fr_FR/propal.lang b/public/langs/fr_FR/propal.lang similarity index 100% rename from htdocs/langs/fr_FR/propal.lang rename to public/langs/fr_FR/propal.lang diff --git a/htdocs/langs/fr_FR/receiptprinter.lang b/public/langs/fr_FR/receiptprinter.lang similarity index 100% rename from htdocs/langs/fr_FR/receiptprinter.lang rename to public/langs/fr_FR/receiptprinter.lang diff --git a/htdocs/langs/fr_FR/resource.lang b/public/langs/fr_FR/resource.lang similarity index 100% rename from htdocs/langs/fr_FR/resource.lang rename to public/langs/fr_FR/resource.lang diff --git a/htdocs/langs/fr_FR/salaries.lang b/public/langs/fr_FR/salaries.lang similarity index 100% rename from htdocs/langs/fr_FR/salaries.lang rename to public/langs/fr_FR/salaries.lang diff --git a/htdocs/langs/fr_FR/sendings.lang b/public/langs/fr_FR/sendings.lang similarity index 100% rename from htdocs/langs/fr_FR/sendings.lang rename to public/langs/fr_FR/sendings.lang diff --git a/htdocs/langs/fr_FR/sms.lang b/public/langs/fr_FR/sms.lang similarity index 100% rename from htdocs/langs/fr_FR/sms.lang rename to public/langs/fr_FR/sms.lang diff --git a/htdocs/langs/fr_FR/stocks.lang b/public/langs/fr_FR/stocks.lang similarity index 100% rename from htdocs/langs/fr_FR/stocks.lang rename to public/langs/fr_FR/stocks.lang diff --git a/htdocs/langs/fr_FR/supplier_proposal.lang b/public/langs/fr_FR/supplier_proposal.lang similarity index 100% rename from htdocs/langs/fr_FR/supplier_proposal.lang rename to public/langs/fr_FR/supplier_proposal.lang diff --git a/htdocs/langs/fr_FR/suppliers.lang b/public/langs/fr_FR/suppliers.lang similarity index 100% rename from htdocs/langs/fr_FR/suppliers.lang rename to public/langs/fr_FR/suppliers.lang diff --git a/htdocs/langs/fr_FR/trips.lang b/public/langs/fr_FR/trips.lang similarity index 100% rename from htdocs/langs/fr_FR/trips.lang rename to public/langs/fr_FR/trips.lang diff --git a/htdocs/langs/fr_FR/users.lang b/public/langs/fr_FR/users.lang similarity index 100% rename from htdocs/langs/fr_FR/users.lang rename to public/langs/fr_FR/users.lang diff --git a/htdocs/langs/fr_FR/website.lang b/public/langs/fr_FR/website.lang similarity index 100% rename from htdocs/langs/fr_FR/website.lang rename to public/langs/fr_FR/website.lang diff --git a/htdocs/langs/fr_FR/withdrawals.lang b/public/langs/fr_FR/withdrawals.lang similarity index 100% rename from htdocs/langs/fr_FR/withdrawals.lang rename to public/langs/fr_FR/withdrawals.lang diff --git a/htdocs/langs/fr_FR/workflow.lang b/public/langs/fr_FR/workflow.lang similarity index 100% rename from htdocs/langs/fr_FR/workflow.lang rename to public/langs/fr_FR/workflow.lang diff --git a/htdocs/langs/fr_NC/admin.lang b/public/langs/fr_NC/admin.lang similarity index 100% rename from htdocs/langs/fr_NC/admin.lang rename to public/langs/fr_NC/admin.lang diff --git a/htdocs/langs/fr_NC/companies.lang b/public/langs/fr_NC/companies.lang similarity index 100% rename from htdocs/langs/fr_NC/companies.lang rename to public/langs/fr_NC/companies.lang diff --git a/htdocs/langs/fr_NC/compta.lang b/public/langs/fr_NC/compta.lang similarity index 100% rename from htdocs/langs/fr_NC/compta.lang rename to public/langs/fr_NC/compta.lang diff --git a/htdocs/langs/fr_NC/main.lang b/public/langs/fr_NC/main.lang similarity index 100% rename from htdocs/langs/fr_NC/main.lang rename to public/langs/fr_NC/main.lang diff --git a/htdocs/langs/he_IL/accountancy.lang b/public/langs/he_IL/accountancy.lang similarity index 100% rename from htdocs/langs/he_IL/accountancy.lang rename to public/langs/he_IL/accountancy.lang diff --git a/htdocs/langs/he_IL/admin.lang b/public/langs/he_IL/admin.lang similarity index 100% rename from htdocs/langs/he_IL/admin.lang rename to public/langs/he_IL/admin.lang diff --git a/htdocs/langs/he_IL/agenda.lang b/public/langs/he_IL/agenda.lang similarity index 100% rename from htdocs/langs/he_IL/agenda.lang rename to public/langs/he_IL/agenda.lang diff --git a/htdocs/langs/he_IL/banks.lang b/public/langs/he_IL/banks.lang similarity index 100% rename from htdocs/langs/he_IL/banks.lang rename to public/langs/he_IL/banks.lang diff --git a/htdocs/langs/he_IL/bills.lang b/public/langs/he_IL/bills.lang similarity index 100% rename from htdocs/langs/he_IL/bills.lang rename to public/langs/he_IL/bills.lang diff --git a/htdocs/langs/he_IL/bookmarks.lang b/public/langs/he_IL/bookmarks.lang similarity index 100% rename from htdocs/langs/he_IL/bookmarks.lang rename to public/langs/he_IL/bookmarks.lang diff --git a/htdocs/langs/he_IL/boxes.lang b/public/langs/he_IL/boxes.lang similarity index 100% rename from htdocs/langs/he_IL/boxes.lang rename to public/langs/he_IL/boxes.lang diff --git a/htdocs/langs/he_IL/cashdesk.lang b/public/langs/he_IL/cashdesk.lang similarity index 100% rename from htdocs/langs/he_IL/cashdesk.lang rename to public/langs/he_IL/cashdesk.lang diff --git a/htdocs/langs/he_IL/categories.lang b/public/langs/he_IL/categories.lang similarity index 100% rename from htdocs/langs/he_IL/categories.lang rename to public/langs/he_IL/categories.lang diff --git a/htdocs/langs/he_IL/commercial.lang b/public/langs/he_IL/commercial.lang similarity index 100% rename from htdocs/langs/he_IL/commercial.lang rename to public/langs/he_IL/commercial.lang diff --git a/htdocs/langs/he_IL/companies.lang b/public/langs/he_IL/companies.lang similarity index 100% rename from htdocs/langs/he_IL/companies.lang rename to public/langs/he_IL/companies.lang diff --git a/htdocs/langs/he_IL/compta.lang b/public/langs/he_IL/compta.lang similarity index 100% rename from htdocs/langs/he_IL/compta.lang rename to public/langs/he_IL/compta.lang diff --git a/htdocs/langs/he_IL/contracts.lang b/public/langs/he_IL/contracts.lang similarity index 100% rename from htdocs/langs/he_IL/contracts.lang rename to public/langs/he_IL/contracts.lang diff --git a/htdocs/langs/he_IL/cron.lang b/public/langs/he_IL/cron.lang similarity index 100% rename from htdocs/langs/he_IL/cron.lang rename to public/langs/he_IL/cron.lang diff --git a/htdocs/langs/he_IL/deliveries.lang b/public/langs/he_IL/deliveries.lang similarity index 100% rename from htdocs/langs/he_IL/deliveries.lang rename to public/langs/he_IL/deliveries.lang diff --git a/htdocs/langs/he_IL/dict.lang b/public/langs/he_IL/dict.lang similarity index 100% rename from htdocs/langs/he_IL/dict.lang rename to public/langs/he_IL/dict.lang diff --git a/htdocs/langs/he_IL/donations.lang b/public/langs/he_IL/donations.lang similarity index 100% rename from htdocs/langs/he_IL/donations.lang rename to public/langs/he_IL/donations.lang diff --git a/htdocs/langs/he_IL/ecm.lang b/public/langs/he_IL/ecm.lang similarity index 100% rename from htdocs/langs/he_IL/ecm.lang rename to public/langs/he_IL/ecm.lang diff --git a/htdocs/langs/he_IL/errors.lang b/public/langs/he_IL/errors.lang similarity index 100% rename from htdocs/langs/he_IL/errors.lang rename to public/langs/he_IL/errors.lang diff --git a/htdocs/langs/he_IL/exports.lang b/public/langs/he_IL/exports.lang similarity index 100% rename from htdocs/langs/he_IL/exports.lang rename to public/langs/he_IL/exports.lang diff --git a/htdocs/langs/he_IL/externalsite.lang b/public/langs/he_IL/externalsite.lang similarity index 100% rename from htdocs/langs/he_IL/externalsite.lang rename to public/langs/he_IL/externalsite.lang diff --git a/htdocs/langs/he_IL/ftp.lang b/public/langs/he_IL/ftp.lang similarity index 100% rename from htdocs/langs/he_IL/ftp.lang rename to public/langs/he_IL/ftp.lang diff --git a/htdocs/langs/he_IL/help.lang b/public/langs/he_IL/help.lang similarity index 100% rename from htdocs/langs/he_IL/help.lang rename to public/langs/he_IL/help.lang diff --git a/htdocs/langs/he_IL/holiday.lang b/public/langs/he_IL/holiday.lang similarity index 100% rename from htdocs/langs/he_IL/holiday.lang rename to public/langs/he_IL/holiday.lang diff --git a/htdocs/langs/he_IL/hrm.lang b/public/langs/he_IL/hrm.lang similarity index 100% rename from htdocs/langs/he_IL/hrm.lang rename to public/langs/he_IL/hrm.lang diff --git a/htdocs/langs/he_IL/incoterm.lang b/public/langs/he_IL/incoterm.lang similarity index 100% rename from htdocs/langs/he_IL/incoterm.lang rename to public/langs/he_IL/incoterm.lang diff --git a/htdocs/langs/he_IL/install.lang b/public/langs/he_IL/install.lang similarity index 100% rename from htdocs/langs/he_IL/install.lang rename to public/langs/he_IL/install.lang diff --git a/htdocs/langs/he_IL/interventions.lang b/public/langs/he_IL/interventions.lang similarity index 100% rename from htdocs/langs/he_IL/interventions.lang rename to public/langs/he_IL/interventions.lang diff --git a/htdocs/langs/he_IL/languages.lang b/public/langs/he_IL/languages.lang similarity index 100% rename from htdocs/langs/he_IL/languages.lang rename to public/langs/he_IL/languages.lang diff --git a/htdocs/langs/he_IL/ldap.lang b/public/langs/he_IL/ldap.lang similarity index 100% rename from htdocs/langs/he_IL/ldap.lang rename to public/langs/he_IL/ldap.lang diff --git a/htdocs/langs/he_IL/link.lang b/public/langs/he_IL/link.lang similarity index 100% rename from htdocs/langs/he_IL/link.lang rename to public/langs/he_IL/link.lang diff --git a/htdocs/langs/he_IL/loan.lang b/public/langs/he_IL/loan.lang similarity index 100% rename from htdocs/langs/he_IL/loan.lang rename to public/langs/he_IL/loan.lang diff --git a/htdocs/langs/he_IL/mailmanspip.lang b/public/langs/he_IL/mailmanspip.lang similarity index 100% rename from htdocs/langs/he_IL/mailmanspip.lang rename to public/langs/he_IL/mailmanspip.lang diff --git a/htdocs/langs/he_IL/mails.lang b/public/langs/he_IL/mails.lang similarity index 100% rename from htdocs/langs/he_IL/mails.lang rename to public/langs/he_IL/mails.lang diff --git a/htdocs/langs/he_IL/main.lang b/public/langs/he_IL/main.lang similarity index 100% rename from htdocs/langs/he_IL/main.lang rename to public/langs/he_IL/main.lang diff --git a/htdocs/langs/he_IL/margins.lang b/public/langs/he_IL/margins.lang similarity index 100% rename from htdocs/langs/he_IL/margins.lang rename to public/langs/he_IL/margins.lang diff --git a/htdocs/langs/he_IL/members.lang b/public/langs/he_IL/members.lang similarity index 100% rename from htdocs/langs/he_IL/members.lang rename to public/langs/he_IL/members.lang diff --git a/htdocs/langs/he_IL/oauth.lang b/public/langs/he_IL/oauth.lang similarity index 100% rename from htdocs/langs/he_IL/oauth.lang rename to public/langs/he_IL/oauth.lang diff --git a/htdocs/langs/he_IL/opensurvey.lang b/public/langs/he_IL/opensurvey.lang similarity index 100% rename from htdocs/langs/he_IL/opensurvey.lang rename to public/langs/he_IL/opensurvey.lang diff --git a/htdocs/langs/he_IL/orders.lang b/public/langs/he_IL/orders.lang similarity index 100% rename from htdocs/langs/he_IL/orders.lang rename to public/langs/he_IL/orders.lang diff --git a/htdocs/langs/he_IL/other.lang b/public/langs/he_IL/other.lang similarity index 100% rename from htdocs/langs/he_IL/other.lang rename to public/langs/he_IL/other.lang diff --git a/htdocs/langs/he_IL/paybox.lang b/public/langs/he_IL/paybox.lang similarity index 100% rename from htdocs/langs/he_IL/paybox.lang rename to public/langs/he_IL/paybox.lang diff --git a/htdocs/langs/he_IL/paypal.lang b/public/langs/he_IL/paypal.lang similarity index 100% rename from htdocs/langs/he_IL/paypal.lang rename to public/langs/he_IL/paypal.lang diff --git a/htdocs/langs/he_IL/printing.lang b/public/langs/he_IL/printing.lang similarity index 100% rename from htdocs/langs/he_IL/printing.lang rename to public/langs/he_IL/printing.lang diff --git a/htdocs/langs/he_IL/productbatch.lang b/public/langs/he_IL/productbatch.lang similarity index 100% rename from htdocs/langs/he_IL/productbatch.lang rename to public/langs/he_IL/productbatch.lang diff --git a/htdocs/langs/he_IL/products.lang b/public/langs/he_IL/products.lang similarity index 100% rename from htdocs/langs/he_IL/products.lang rename to public/langs/he_IL/products.lang diff --git a/htdocs/langs/he_IL/projects.lang b/public/langs/he_IL/projects.lang similarity index 100% rename from htdocs/langs/he_IL/projects.lang rename to public/langs/he_IL/projects.lang diff --git a/htdocs/langs/he_IL/propal.lang b/public/langs/he_IL/propal.lang similarity index 100% rename from htdocs/langs/he_IL/propal.lang rename to public/langs/he_IL/propal.lang diff --git a/htdocs/langs/he_IL/receiptprinter.lang b/public/langs/he_IL/receiptprinter.lang similarity index 100% rename from htdocs/langs/he_IL/receiptprinter.lang rename to public/langs/he_IL/receiptprinter.lang diff --git a/htdocs/langs/he_IL/resource.lang b/public/langs/he_IL/resource.lang similarity index 100% rename from htdocs/langs/he_IL/resource.lang rename to public/langs/he_IL/resource.lang diff --git a/htdocs/langs/he_IL/salaries.lang b/public/langs/he_IL/salaries.lang similarity index 100% rename from htdocs/langs/he_IL/salaries.lang rename to public/langs/he_IL/salaries.lang diff --git a/htdocs/langs/he_IL/sendings.lang b/public/langs/he_IL/sendings.lang similarity index 100% rename from htdocs/langs/he_IL/sendings.lang rename to public/langs/he_IL/sendings.lang diff --git a/htdocs/langs/he_IL/sms.lang b/public/langs/he_IL/sms.lang similarity index 100% rename from htdocs/langs/he_IL/sms.lang rename to public/langs/he_IL/sms.lang diff --git a/htdocs/langs/he_IL/stocks.lang b/public/langs/he_IL/stocks.lang similarity index 100% rename from htdocs/langs/he_IL/stocks.lang rename to public/langs/he_IL/stocks.lang diff --git a/htdocs/langs/he_IL/supplier_proposal.lang b/public/langs/he_IL/supplier_proposal.lang similarity index 100% rename from htdocs/langs/he_IL/supplier_proposal.lang rename to public/langs/he_IL/supplier_proposal.lang diff --git a/htdocs/langs/he_IL/suppliers.lang b/public/langs/he_IL/suppliers.lang similarity index 100% rename from htdocs/langs/he_IL/suppliers.lang rename to public/langs/he_IL/suppliers.lang diff --git a/htdocs/langs/he_IL/trips.lang b/public/langs/he_IL/trips.lang similarity index 100% rename from htdocs/langs/he_IL/trips.lang rename to public/langs/he_IL/trips.lang diff --git a/htdocs/langs/he_IL/users.lang b/public/langs/he_IL/users.lang similarity index 100% rename from htdocs/langs/he_IL/users.lang rename to public/langs/he_IL/users.lang diff --git a/htdocs/langs/he_IL/website.lang b/public/langs/he_IL/website.lang similarity index 100% rename from htdocs/langs/he_IL/website.lang rename to public/langs/he_IL/website.lang diff --git a/htdocs/langs/he_IL/withdrawals.lang b/public/langs/he_IL/withdrawals.lang similarity index 100% rename from htdocs/langs/he_IL/withdrawals.lang rename to public/langs/he_IL/withdrawals.lang diff --git a/htdocs/langs/he_IL/workflow.lang b/public/langs/he_IL/workflow.lang similarity index 100% rename from htdocs/langs/he_IL/workflow.lang rename to public/langs/he_IL/workflow.lang diff --git a/htdocs/langs/hr_HR/accountancy.lang b/public/langs/hr_HR/accountancy.lang similarity index 100% rename from htdocs/langs/hr_HR/accountancy.lang rename to public/langs/hr_HR/accountancy.lang diff --git a/htdocs/langs/hr_HR/admin.lang b/public/langs/hr_HR/admin.lang similarity index 100% rename from htdocs/langs/hr_HR/admin.lang rename to public/langs/hr_HR/admin.lang diff --git a/htdocs/langs/hr_HR/agenda.lang b/public/langs/hr_HR/agenda.lang similarity index 100% rename from htdocs/langs/hr_HR/agenda.lang rename to public/langs/hr_HR/agenda.lang diff --git a/htdocs/langs/hr_HR/banks.lang b/public/langs/hr_HR/banks.lang similarity index 100% rename from htdocs/langs/hr_HR/banks.lang rename to public/langs/hr_HR/banks.lang diff --git a/htdocs/langs/hr_HR/bills.lang b/public/langs/hr_HR/bills.lang similarity index 100% rename from htdocs/langs/hr_HR/bills.lang rename to public/langs/hr_HR/bills.lang diff --git a/htdocs/langs/hr_HR/bookmarks.lang b/public/langs/hr_HR/bookmarks.lang similarity index 100% rename from htdocs/langs/hr_HR/bookmarks.lang rename to public/langs/hr_HR/bookmarks.lang diff --git a/htdocs/langs/hr_HR/boxes.lang b/public/langs/hr_HR/boxes.lang similarity index 100% rename from htdocs/langs/hr_HR/boxes.lang rename to public/langs/hr_HR/boxes.lang diff --git a/htdocs/langs/hr_HR/cashdesk.lang b/public/langs/hr_HR/cashdesk.lang similarity index 100% rename from htdocs/langs/hr_HR/cashdesk.lang rename to public/langs/hr_HR/cashdesk.lang diff --git a/htdocs/langs/hr_HR/categories.lang b/public/langs/hr_HR/categories.lang similarity index 100% rename from htdocs/langs/hr_HR/categories.lang rename to public/langs/hr_HR/categories.lang diff --git a/htdocs/langs/hr_HR/commercial.lang b/public/langs/hr_HR/commercial.lang similarity index 100% rename from htdocs/langs/hr_HR/commercial.lang rename to public/langs/hr_HR/commercial.lang diff --git a/htdocs/langs/hr_HR/companies.lang b/public/langs/hr_HR/companies.lang similarity index 100% rename from htdocs/langs/hr_HR/companies.lang rename to public/langs/hr_HR/companies.lang diff --git a/htdocs/langs/hr_HR/compta.lang b/public/langs/hr_HR/compta.lang similarity index 100% rename from htdocs/langs/hr_HR/compta.lang rename to public/langs/hr_HR/compta.lang diff --git a/htdocs/langs/hr_HR/contracts.lang b/public/langs/hr_HR/contracts.lang similarity index 100% rename from htdocs/langs/hr_HR/contracts.lang rename to public/langs/hr_HR/contracts.lang diff --git a/htdocs/langs/hr_HR/cron.lang b/public/langs/hr_HR/cron.lang similarity index 100% rename from htdocs/langs/hr_HR/cron.lang rename to public/langs/hr_HR/cron.lang diff --git a/htdocs/langs/hr_HR/deliveries.lang b/public/langs/hr_HR/deliveries.lang similarity index 100% rename from htdocs/langs/hr_HR/deliveries.lang rename to public/langs/hr_HR/deliveries.lang diff --git a/htdocs/langs/hr_HR/dict.lang b/public/langs/hr_HR/dict.lang similarity index 100% rename from htdocs/langs/hr_HR/dict.lang rename to public/langs/hr_HR/dict.lang diff --git a/htdocs/langs/hr_HR/donations.lang b/public/langs/hr_HR/donations.lang similarity index 100% rename from htdocs/langs/hr_HR/donations.lang rename to public/langs/hr_HR/donations.lang diff --git a/htdocs/langs/hr_HR/ecm.lang b/public/langs/hr_HR/ecm.lang similarity index 100% rename from htdocs/langs/hr_HR/ecm.lang rename to public/langs/hr_HR/ecm.lang diff --git a/htdocs/langs/hr_HR/errors.lang b/public/langs/hr_HR/errors.lang similarity index 100% rename from htdocs/langs/hr_HR/errors.lang rename to public/langs/hr_HR/errors.lang diff --git a/htdocs/langs/hr_HR/exports.lang b/public/langs/hr_HR/exports.lang similarity index 100% rename from htdocs/langs/hr_HR/exports.lang rename to public/langs/hr_HR/exports.lang diff --git a/htdocs/langs/hr_HR/externalsite.lang b/public/langs/hr_HR/externalsite.lang similarity index 100% rename from htdocs/langs/hr_HR/externalsite.lang rename to public/langs/hr_HR/externalsite.lang diff --git a/htdocs/langs/hr_HR/ftp.lang b/public/langs/hr_HR/ftp.lang similarity index 100% rename from htdocs/langs/hr_HR/ftp.lang rename to public/langs/hr_HR/ftp.lang diff --git a/htdocs/langs/hr_HR/help.lang b/public/langs/hr_HR/help.lang similarity index 100% rename from htdocs/langs/hr_HR/help.lang rename to public/langs/hr_HR/help.lang diff --git a/htdocs/langs/hr_HR/holiday.lang b/public/langs/hr_HR/holiday.lang similarity index 100% rename from htdocs/langs/hr_HR/holiday.lang rename to public/langs/hr_HR/holiday.lang diff --git a/htdocs/langs/hr_HR/hrm.lang b/public/langs/hr_HR/hrm.lang similarity index 100% rename from htdocs/langs/hr_HR/hrm.lang rename to public/langs/hr_HR/hrm.lang diff --git a/htdocs/langs/hr_HR/incoterm.lang b/public/langs/hr_HR/incoterm.lang similarity index 100% rename from htdocs/langs/hr_HR/incoterm.lang rename to public/langs/hr_HR/incoterm.lang diff --git a/htdocs/langs/hr_HR/install.lang b/public/langs/hr_HR/install.lang similarity index 100% rename from htdocs/langs/hr_HR/install.lang rename to public/langs/hr_HR/install.lang diff --git a/htdocs/langs/hr_HR/interventions.lang b/public/langs/hr_HR/interventions.lang similarity index 100% rename from htdocs/langs/hr_HR/interventions.lang rename to public/langs/hr_HR/interventions.lang diff --git a/htdocs/langs/hr_HR/languages.lang b/public/langs/hr_HR/languages.lang similarity index 100% rename from htdocs/langs/hr_HR/languages.lang rename to public/langs/hr_HR/languages.lang diff --git a/htdocs/langs/hr_HR/ldap.lang b/public/langs/hr_HR/ldap.lang similarity index 100% rename from htdocs/langs/hr_HR/ldap.lang rename to public/langs/hr_HR/ldap.lang diff --git a/htdocs/langs/hr_HR/link.lang b/public/langs/hr_HR/link.lang similarity index 100% rename from htdocs/langs/hr_HR/link.lang rename to public/langs/hr_HR/link.lang diff --git a/htdocs/langs/hr_HR/loan.lang b/public/langs/hr_HR/loan.lang similarity index 100% rename from htdocs/langs/hr_HR/loan.lang rename to public/langs/hr_HR/loan.lang diff --git a/htdocs/langs/hr_HR/mailmanspip.lang b/public/langs/hr_HR/mailmanspip.lang similarity index 100% rename from htdocs/langs/hr_HR/mailmanspip.lang rename to public/langs/hr_HR/mailmanspip.lang diff --git a/htdocs/langs/hr_HR/mails.lang b/public/langs/hr_HR/mails.lang similarity index 100% rename from htdocs/langs/hr_HR/mails.lang rename to public/langs/hr_HR/mails.lang diff --git a/htdocs/langs/hr_HR/main.lang b/public/langs/hr_HR/main.lang similarity index 100% rename from htdocs/langs/hr_HR/main.lang rename to public/langs/hr_HR/main.lang diff --git a/htdocs/langs/hr_HR/margins.lang b/public/langs/hr_HR/margins.lang similarity index 100% rename from htdocs/langs/hr_HR/margins.lang rename to public/langs/hr_HR/margins.lang diff --git a/htdocs/langs/hr_HR/members.lang b/public/langs/hr_HR/members.lang similarity index 100% rename from htdocs/langs/hr_HR/members.lang rename to public/langs/hr_HR/members.lang diff --git a/htdocs/langs/hr_HR/oauth.lang b/public/langs/hr_HR/oauth.lang similarity index 100% rename from htdocs/langs/hr_HR/oauth.lang rename to public/langs/hr_HR/oauth.lang diff --git a/htdocs/langs/hr_HR/opensurvey.lang b/public/langs/hr_HR/opensurvey.lang similarity index 100% rename from htdocs/langs/hr_HR/opensurvey.lang rename to public/langs/hr_HR/opensurvey.lang diff --git a/htdocs/langs/hr_HR/orders.lang b/public/langs/hr_HR/orders.lang similarity index 100% rename from htdocs/langs/hr_HR/orders.lang rename to public/langs/hr_HR/orders.lang diff --git a/htdocs/langs/hr_HR/other.lang b/public/langs/hr_HR/other.lang similarity index 100% rename from htdocs/langs/hr_HR/other.lang rename to public/langs/hr_HR/other.lang diff --git a/htdocs/langs/hr_HR/paybox.lang b/public/langs/hr_HR/paybox.lang similarity index 100% rename from htdocs/langs/hr_HR/paybox.lang rename to public/langs/hr_HR/paybox.lang diff --git a/htdocs/langs/hr_HR/paypal.lang b/public/langs/hr_HR/paypal.lang similarity index 100% rename from htdocs/langs/hr_HR/paypal.lang rename to public/langs/hr_HR/paypal.lang diff --git a/htdocs/langs/hr_HR/printing.lang b/public/langs/hr_HR/printing.lang similarity index 100% rename from htdocs/langs/hr_HR/printing.lang rename to public/langs/hr_HR/printing.lang diff --git a/htdocs/langs/hr_HR/productbatch.lang b/public/langs/hr_HR/productbatch.lang similarity index 100% rename from htdocs/langs/hr_HR/productbatch.lang rename to public/langs/hr_HR/productbatch.lang diff --git a/htdocs/langs/hr_HR/products.lang b/public/langs/hr_HR/products.lang similarity index 100% rename from htdocs/langs/hr_HR/products.lang rename to public/langs/hr_HR/products.lang diff --git a/htdocs/langs/hr_HR/projects.lang b/public/langs/hr_HR/projects.lang similarity index 100% rename from htdocs/langs/hr_HR/projects.lang rename to public/langs/hr_HR/projects.lang diff --git a/htdocs/langs/hr_HR/propal.lang b/public/langs/hr_HR/propal.lang similarity index 100% rename from htdocs/langs/hr_HR/propal.lang rename to public/langs/hr_HR/propal.lang diff --git a/htdocs/langs/hr_HR/receiptprinter.lang b/public/langs/hr_HR/receiptprinter.lang similarity index 100% rename from htdocs/langs/hr_HR/receiptprinter.lang rename to public/langs/hr_HR/receiptprinter.lang diff --git a/htdocs/langs/hr_HR/resource.lang b/public/langs/hr_HR/resource.lang similarity index 100% rename from htdocs/langs/hr_HR/resource.lang rename to public/langs/hr_HR/resource.lang diff --git a/htdocs/langs/hr_HR/salaries.lang b/public/langs/hr_HR/salaries.lang similarity index 100% rename from htdocs/langs/hr_HR/salaries.lang rename to public/langs/hr_HR/salaries.lang diff --git a/htdocs/langs/hr_HR/sendings.lang b/public/langs/hr_HR/sendings.lang similarity index 100% rename from htdocs/langs/hr_HR/sendings.lang rename to public/langs/hr_HR/sendings.lang diff --git a/htdocs/langs/hr_HR/sms.lang b/public/langs/hr_HR/sms.lang similarity index 100% rename from htdocs/langs/hr_HR/sms.lang rename to public/langs/hr_HR/sms.lang diff --git a/htdocs/langs/hr_HR/stocks.lang b/public/langs/hr_HR/stocks.lang similarity index 100% rename from htdocs/langs/hr_HR/stocks.lang rename to public/langs/hr_HR/stocks.lang diff --git a/htdocs/langs/hr_HR/supplier_proposal.lang b/public/langs/hr_HR/supplier_proposal.lang similarity index 100% rename from htdocs/langs/hr_HR/supplier_proposal.lang rename to public/langs/hr_HR/supplier_proposal.lang diff --git a/htdocs/langs/hr_HR/suppliers.lang b/public/langs/hr_HR/suppliers.lang similarity index 100% rename from htdocs/langs/hr_HR/suppliers.lang rename to public/langs/hr_HR/suppliers.lang diff --git a/htdocs/langs/hr_HR/trips.lang b/public/langs/hr_HR/trips.lang similarity index 100% rename from htdocs/langs/hr_HR/trips.lang rename to public/langs/hr_HR/trips.lang diff --git a/htdocs/langs/hr_HR/users.lang b/public/langs/hr_HR/users.lang similarity index 100% rename from htdocs/langs/hr_HR/users.lang rename to public/langs/hr_HR/users.lang diff --git a/htdocs/langs/hr_HR/website.lang b/public/langs/hr_HR/website.lang similarity index 100% rename from htdocs/langs/hr_HR/website.lang rename to public/langs/hr_HR/website.lang diff --git a/htdocs/langs/hr_HR/withdrawals.lang b/public/langs/hr_HR/withdrawals.lang similarity index 100% rename from htdocs/langs/hr_HR/withdrawals.lang rename to public/langs/hr_HR/withdrawals.lang diff --git a/htdocs/langs/hr_HR/workflow.lang b/public/langs/hr_HR/workflow.lang similarity index 100% rename from htdocs/langs/hr_HR/workflow.lang rename to public/langs/hr_HR/workflow.lang diff --git a/htdocs/langs/hu_HU/accountancy.lang b/public/langs/hu_HU/accountancy.lang similarity index 100% rename from htdocs/langs/hu_HU/accountancy.lang rename to public/langs/hu_HU/accountancy.lang diff --git a/htdocs/langs/hu_HU/admin.lang b/public/langs/hu_HU/admin.lang similarity index 100% rename from htdocs/langs/hu_HU/admin.lang rename to public/langs/hu_HU/admin.lang diff --git a/htdocs/langs/hu_HU/agenda.lang b/public/langs/hu_HU/agenda.lang similarity index 100% rename from htdocs/langs/hu_HU/agenda.lang rename to public/langs/hu_HU/agenda.lang diff --git a/htdocs/langs/hu_HU/banks.lang b/public/langs/hu_HU/banks.lang similarity index 100% rename from htdocs/langs/hu_HU/banks.lang rename to public/langs/hu_HU/banks.lang diff --git a/htdocs/langs/hu_HU/bills.lang b/public/langs/hu_HU/bills.lang similarity index 100% rename from htdocs/langs/hu_HU/bills.lang rename to public/langs/hu_HU/bills.lang diff --git a/htdocs/langs/hu_HU/bookmarks.lang b/public/langs/hu_HU/bookmarks.lang similarity index 100% rename from htdocs/langs/hu_HU/bookmarks.lang rename to public/langs/hu_HU/bookmarks.lang diff --git a/htdocs/langs/hu_HU/boxes.lang b/public/langs/hu_HU/boxes.lang similarity index 100% rename from htdocs/langs/hu_HU/boxes.lang rename to public/langs/hu_HU/boxes.lang diff --git a/htdocs/langs/hu_HU/cashdesk.lang b/public/langs/hu_HU/cashdesk.lang similarity index 100% rename from htdocs/langs/hu_HU/cashdesk.lang rename to public/langs/hu_HU/cashdesk.lang diff --git a/htdocs/langs/hu_HU/categories.lang b/public/langs/hu_HU/categories.lang similarity index 100% rename from htdocs/langs/hu_HU/categories.lang rename to public/langs/hu_HU/categories.lang diff --git a/htdocs/langs/hu_HU/commercial.lang b/public/langs/hu_HU/commercial.lang similarity index 100% rename from htdocs/langs/hu_HU/commercial.lang rename to public/langs/hu_HU/commercial.lang diff --git a/htdocs/langs/hu_HU/companies.lang b/public/langs/hu_HU/companies.lang similarity index 100% rename from htdocs/langs/hu_HU/companies.lang rename to public/langs/hu_HU/companies.lang diff --git a/htdocs/langs/hu_HU/compta.lang b/public/langs/hu_HU/compta.lang similarity index 100% rename from htdocs/langs/hu_HU/compta.lang rename to public/langs/hu_HU/compta.lang diff --git a/htdocs/langs/hu_HU/contracts.lang b/public/langs/hu_HU/contracts.lang similarity index 100% rename from htdocs/langs/hu_HU/contracts.lang rename to public/langs/hu_HU/contracts.lang diff --git a/htdocs/langs/hu_HU/cron.lang b/public/langs/hu_HU/cron.lang similarity index 100% rename from htdocs/langs/hu_HU/cron.lang rename to public/langs/hu_HU/cron.lang diff --git a/htdocs/langs/hu_HU/deliveries.lang b/public/langs/hu_HU/deliveries.lang similarity index 100% rename from htdocs/langs/hu_HU/deliveries.lang rename to public/langs/hu_HU/deliveries.lang diff --git a/htdocs/langs/hu_HU/dict.lang b/public/langs/hu_HU/dict.lang similarity index 100% rename from htdocs/langs/hu_HU/dict.lang rename to public/langs/hu_HU/dict.lang diff --git a/htdocs/langs/hu_HU/donations.lang b/public/langs/hu_HU/donations.lang similarity index 100% rename from htdocs/langs/hu_HU/donations.lang rename to public/langs/hu_HU/donations.lang diff --git a/htdocs/langs/hu_HU/ecm.lang b/public/langs/hu_HU/ecm.lang similarity index 100% rename from htdocs/langs/hu_HU/ecm.lang rename to public/langs/hu_HU/ecm.lang diff --git a/htdocs/langs/hu_HU/errors.lang b/public/langs/hu_HU/errors.lang similarity index 100% rename from htdocs/langs/hu_HU/errors.lang rename to public/langs/hu_HU/errors.lang diff --git a/htdocs/langs/hu_HU/exports.lang b/public/langs/hu_HU/exports.lang similarity index 100% rename from htdocs/langs/hu_HU/exports.lang rename to public/langs/hu_HU/exports.lang diff --git a/htdocs/langs/hu_HU/externalsite.lang b/public/langs/hu_HU/externalsite.lang similarity index 100% rename from htdocs/langs/hu_HU/externalsite.lang rename to public/langs/hu_HU/externalsite.lang diff --git a/htdocs/langs/hu_HU/ftp.lang b/public/langs/hu_HU/ftp.lang similarity index 100% rename from htdocs/langs/hu_HU/ftp.lang rename to public/langs/hu_HU/ftp.lang diff --git a/htdocs/langs/hu_HU/help.lang b/public/langs/hu_HU/help.lang similarity index 100% rename from htdocs/langs/hu_HU/help.lang rename to public/langs/hu_HU/help.lang diff --git a/htdocs/langs/hu_HU/holiday.lang b/public/langs/hu_HU/holiday.lang similarity index 100% rename from htdocs/langs/hu_HU/holiday.lang rename to public/langs/hu_HU/holiday.lang diff --git a/htdocs/langs/hu_HU/hrm.lang b/public/langs/hu_HU/hrm.lang similarity index 100% rename from htdocs/langs/hu_HU/hrm.lang rename to public/langs/hu_HU/hrm.lang diff --git a/htdocs/langs/hu_HU/incoterm.lang b/public/langs/hu_HU/incoterm.lang similarity index 100% rename from htdocs/langs/hu_HU/incoterm.lang rename to public/langs/hu_HU/incoterm.lang diff --git a/htdocs/langs/hu_HU/install.lang b/public/langs/hu_HU/install.lang similarity index 100% rename from htdocs/langs/hu_HU/install.lang rename to public/langs/hu_HU/install.lang diff --git a/htdocs/langs/hu_HU/interventions.lang b/public/langs/hu_HU/interventions.lang similarity index 100% rename from htdocs/langs/hu_HU/interventions.lang rename to public/langs/hu_HU/interventions.lang diff --git a/htdocs/langs/hu_HU/languages.lang b/public/langs/hu_HU/languages.lang similarity index 100% rename from htdocs/langs/hu_HU/languages.lang rename to public/langs/hu_HU/languages.lang diff --git a/htdocs/langs/hu_HU/ldap.lang b/public/langs/hu_HU/ldap.lang similarity index 100% rename from htdocs/langs/hu_HU/ldap.lang rename to public/langs/hu_HU/ldap.lang diff --git a/htdocs/langs/hu_HU/link.lang b/public/langs/hu_HU/link.lang similarity index 100% rename from htdocs/langs/hu_HU/link.lang rename to public/langs/hu_HU/link.lang diff --git a/htdocs/langs/hu_HU/loan.lang b/public/langs/hu_HU/loan.lang similarity index 100% rename from htdocs/langs/hu_HU/loan.lang rename to public/langs/hu_HU/loan.lang diff --git a/htdocs/langs/hu_HU/mailmanspip.lang b/public/langs/hu_HU/mailmanspip.lang similarity index 100% rename from htdocs/langs/hu_HU/mailmanspip.lang rename to public/langs/hu_HU/mailmanspip.lang diff --git a/htdocs/langs/hu_HU/mails.lang b/public/langs/hu_HU/mails.lang similarity index 100% rename from htdocs/langs/hu_HU/mails.lang rename to public/langs/hu_HU/mails.lang diff --git a/htdocs/langs/hu_HU/main.lang b/public/langs/hu_HU/main.lang similarity index 100% rename from htdocs/langs/hu_HU/main.lang rename to public/langs/hu_HU/main.lang diff --git a/htdocs/langs/hu_HU/margins.lang b/public/langs/hu_HU/margins.lang similarity index 100% rename from htdocs/langs/hu_HU/margins.lang rename to public/langs/hu_HU/margins.lang diff --git a/htdocs/langs/hu_HU/members.lang b/public/langs/hu_HU/members.lang similarity index 100% rename from htdocs/langs/hu_HU/members.lang rename to public/langs/hu_HU/members.lang diff --git a/htdocs/langs/hu_HU/oauth.lang b/public/langs/hu_HU/oauth.lang similarity index 100% rename from htdocs/langs/hu_HU/oauth.lang rename to public/langs/hu_HU/oauth.lang diff --git a/htdocs/langs/hu_HU/opensurvey.lang b/public/langs/hu_HU/opensurvey.lang similarity index 100% rename from htdocs/langs/hu_HU/opensurvey.lang rename to public/langs/hu_HU/opensurvey.lang diff --git a/htdocs/langs/hu_HU/orders.lang b/public/langs/hu_HU/orders.lang similarity index 100% rename from htdocs/langs/hu_HU/orders.lang rename to public/langs/hu_HU/orders.lang diff --git a/htdocs/langs/hu_HU/other.lang b/public/langs/hu_HU/other.lang similarity index 100% rename from htdocs/langs/hu_HU/other.lang rename to public/langs/hu_HU/other.lang diff --git a/htdocs/langs/hu_HU/paybox.lang b/public/langs/hu_HU/paybox.lang similarity index 100% rename from htdocs/langs/hu_HU/paybox.lang rename to public/langs/hu_HU/paybox.lang diff --git a/htdocs/langs/hu_HU/paypal.lang b/public/langs/hu_HU/paypal.lang similarity index 100% rename from htdocs/langs/hu_HU/paypal.lang rename to public/langs/hu_HU/paypal.lang diff --git a/htdocs/langs/hu_HU/printing.lang b/public/langs/hu_HU/printing.lang similarity index 100% rename from htdocs/langs/hu_HU/printing.lang rename to public/langs/hu_HU/printing.lang diff --git a/htdocs/langs/hu_HU/productbatch.lang b/public/langs/hu_HU/productbatch.lang similarity index 100% rename from htdocs/langs/hu_HU/productbatch.lang rename to public/langs/hu_HU/productbatch.lang diff --git a/htdocs/langs/hu_HU/products.lang b/public/langs/hu_HU/products.lang similarity index 100% rename from htdocs/langs/hu_HU/products.lang rename to public/langs/hu_HU/products.lang diff --git a/htdocs/langs/hu_HU/projects.lang b/public/langs/hu_HU/projects.lang similarity index 100% rename from htdocs/langs/hu_HU/projects.lang rename to public/langs/hu_HU/projects.lang diff --git a/htdocs/langs/hu_HU/propal.lang b/public/langs/hu_HU/propal.lang similarity index 100% rename from htdocs/langs/hu_HU/propal.lang rename to public/langs/hu_HU/propal.lang diff --git a/htdocs/langs/hu_HU/receiptprinter.lang b/public/langs/hu_HU/receiptprinter.lang similarity index 100% rename from htdocs/langs/hu_HU/receiptprinter.lang rename to public/langs/hu_HU/receiptprinter.lang diff --git a/htdocs/langs/hu_HU/resource.lang b/public/langs/hu_HU/resource.lang similarity index 100% rename from htdocs/langs/hu_HU/resource.lang rename to public/langs/hu_HU/resource.lang diff --git a/htdocs/langs/hu_HU/salaries.lang b/public/langs/hu_HU/salaries.lang similarity index 100% rename from htdocs/langs/hu_HU/salaries.lang rename to public/langs/hu_HU/salaries.lang diff --git a/htdocs/langs/hu_HU/sendings.lang b/public/langs/hu_HU/sendings.lang similarity index 100% rename from htdocs/langs/hu_HU/sendings.lang rename to public/langs/hu_HU/sendings.lang diff --git a/htdocs/langs/hu_HU/sms.lang b/public/langs/hu_HU/sms.lang similarity index 100% rename from htdocs/langs/hu_HU/sms.lang rename to public/langs/hu_HU/sms.lang diff --git a/htdocs/langs/hu_HU/stocks.lang b/public/langs/hu_HU/stocks.lang similarity index 100% rename from htdocs/langs/hu_HU/stocks.lang rename to public/langs/hu_HU/stocks.lang diff --git a/htdocs/langs/hu_HU/supplier_proposal.lang b/public/langs/hu_HU/supplier_proposal.lang similarity index 100% rename from htdocs/langs/hu_HU/supplier_proposal.lang rename to public/langs/hu_HU/supplier_proposal.lang diff --git a/htdocs/langs/hu_HU/suppliers.lang b/public/langs/hu_HU/suppliers.lang similarity index 100% rename from htdocs/langs/hu_HU/suppliers.lang rename to public/langs/hu_HU/suppliers.lang diff --git a/htdocs/langs/hu_HU/trips.lang b/public/langs/hu_HU/trips.lang similarity index 100% rename from htdocs/langs/hu_HU/trips.lang rename to public/langs/hu_HU/trips.lang diff --git a/htdocs/langs/hu_HU/users.lang b/public/langs/hu_HU/users.lang similarity index 100% rename from htdocs/langs/hu_HU/users.lang rename to public/langs/hu_HU/users.lang diff --git a/htdocs/langs/hu_HU/website.lang b/public/langs/hu_HU/website.lang similarity index 100% rename from htdocs/langs/hu_HU/website.lang rename to public/langs/hu_HU/website.lang diff --git a/htdocs/langs/hu_HU/withdrawals.lang b/public/langs/hu_HU/withdrawals.lang similarity index 100% rename from htdocs/langs/hu_HU/withdrawals.lang rename to public/langs/hu_HU/withdrawals.lang diff --git a/htdocs/langs/hu_HU/workflow.lang b/public/langs/hu_HU/workflow.lang similarity index 100% rename from htdocs/langs/hu_HU/workflow.lang rename to public/langs/hu_HU/workflow.lang diff --git a/htdocs/langs/id_ID/accountancy.lang b/public/langs/id_ID/accountancy.lang similarity index 100% rename from htdocs/langs/id_ID/accountancy.lang rename to public/langs/id_ID/accountancy.lang diff --git a/htdocs/langs/id_ID/admin.lang b/public/langs/id_ID/admin.lang similarity index 100% rename from htdocs/langs/id_ID/admin.lang rename to public/langs/id_ID/admin.lang diff --git a/htdocs/langs/id_ID/agenda.lang b/public/langs/id_ID/agenda.lang similarity index 100% rename from htdocs/langs/id_ID/agenda.lang rename to public/langs/id_ID/agenda.lang diff --git a/htdocs/langs/id_ID/banks.lang b/public/langs/id_ID/banks.lang similarity index 100% rename from htdocs/langs/id_ID/banks.lang rename to public/langs/id_ID/banks.lang diff --git a/htdocs/langs/id_ID/bills.lang b/public/langs/id_ID/bills.lang similarity index 100% rename from htdocs/langs/id_ID/bills.lang rename to public/langs/id_ID/bills.lang diff --git a/htdocs/langs/id_ID/bookmarks.lang b/public/langs/id_ID/bookmarks.lang similarity index 100% rename from htdocs/langs/id_ID/bookmarks.lang rename to public/langs/id_ID/bookmarks.lang diff --git a/htdocs/langs/id_ID/boxes.lang b/public/langs/id_ID/boxes.lang similarity index 100% rename from htdocs/langs/id_ID/boxes.lang rename to public/langs/id_ID/boxes.lang diff --git a/htdocs/langs/id_ID/cashdesk.lang b/public/langs/id_ID/cashdesk.lang similarity index 100% rename from htdocs/langs/id_ID/cashdesk.lang rename to public/langs/id_ID/cashdesk.lang diff --git a/htdocs/langs/id_ID/categories.lang b/public/langs/id_ID/categories.lang similarity index 100% rename from htdocs/langs/id_ID/categories.lang rename to public/langs/id_ID/categories.lang diff --git a/htdocs/langs/id_ID/commercial.lang b/public/langs/id_ID/commercial.lang similarity index 100% rename from htdocs/langs/id_ID/commercial.lang rename to public/langs/id_ID/commercial.lang diff --git a/htdocs/langs/id_ID/companies.lang b/public/langs/id_ID/companies.lang similarity index 100% rename from htdocs/langs/id_ID/companies.lang rename to public/langs/id_ID/companies.lang diff --git a/htdocs/langs/id_ID/compta.lang b/public/langs/id_ID/compta.lang similarity index 100% rename from htdocs/langs/id_ID/compta.lang rename to public/langs/id_ID/compta.lang diff --git a/htdocs/langs/id_ID/contracts.lang b/public/langs/id_ID/contracts.lang similarity index 100% rename from htdocs/langs/id_ID/contracts.lang rename to public/langs/id_ID/contracts.lang diff --git a/htdocs/langs/id_ID/cron.lang b/public/langs/id_ID/cron.lang similarity index 100% rename from htdocs/langs/id_ID/cron.lang rename to public/langs/id_ID/cron.lang diff --git a/htdocs/langs/id_ID/deliveries.lang b/public/langs/id_ID/deliveries.lang similarity index 100% rename from htdocs/langs/id_ID/deliveries.lang rename to public/langs/id_ID/deliveries.lang diff --git a/htdocs/langs/id_ID/dict.lang b/public/langs/id_ID/dict.lang similarity index 100% rename from htdocs/langs/id_ID/dict.lang rename to public/langs/id_ID/dict.lang diff --git a/htdocs/langs/id_ID/donations.lang b/public/langs/id_ID/donations.lang similarity index 100% rename from htdocs/langs/id_ID/donations.lang rename to public/langs/id_ID/donations.lang diff --git a/htdocs/langs/id_ID/ecm.lang b/public/langs/id_ID/ecm.lang similarity index 100% rename from htdocs/langs/id_ID/ecm.lang rename to public/langs/id_ID/ecm.lang diff --git a/htdocs/langs/id_ID/errors.lang b/public/langs/id_ID/errors.lang similarity index 100% rename from htdocs/langs/id_ID/errors.lang rename to public/langs/id_ID/errors.lang diff --git a/htdocs/langs/id_ID/exports.lang b/public/langs/id_ID/exports.lang similarity index 100% rename from htdocs/langs/id_ID/exports.lang rename to public/langs/id_ID/exports.lang diff --git a/htdocs/langs/id_ID/externalsite.lang b/public/langs/id_ID/externalsite.lang similarity index 100% rename from htdocs/langs/id_ID/externalsite.lang rename to public/langs/id_ID/externalsite.lang diff --git a/htdocs/langs/id_ID/ftp.lang b/public/langs/id_ID/ftp.lang similarity index 100% rename from htdocs/langs/id_ID/ftp.lang rename to public/langs/id_ID/ftp.lang diff --git a/htdocs/langs/id_ID/help.lang b/public/langs/id_ID/help.lang similarity index 100% rename from htdocs/langs/id_ID/help.lang rename to public/langs/id_ID/help.lang diff --git a/htdocs/langs/id_ID/holiday.lang b/public/langs/id_ID/holiday.lang similarity index 100% rename from htdocs/langs/id_ID/holiday.lang rename to public/langs/id_ID/holiday.lang diff --git a/htdocs/langs/id_ID/hrm.lang b/public/langs/id_ID/hrm.lang similarity index 100% rename from htdocs/langs/id_ID/hrm.lang rename to public/langs/id_ID/hrm.lang diff --git a/htdocs/langs/id_ID/incoterm.lang b/public/langs/id_ID/incoterm.lang similarity index 100% rename from htdocs/langs/id_ID/incoterm.lang rename to public/langs/id_ID/incoterm.lang diff --git a/htdocs/langs/id_ID/install.lang b/public/langs/id_ID/install.lang similarity index 100% rename from htdocs/langs/id_ID/install.lang rename to public/langs/id_ID/install.lang diff --git a/htdocs/langs/id_ID/interventions.lang b/public/langs/id_ID/interventions.lang similarity index 100% rename from htdocs/langs/id_ID/interventions.lang rename to public/langs/id_ID/interventions.lang diff --git a/htdocs/langs/id_ID/languages.lang b/public/langs/id_ID/languages.lang similarity index 100% rename from htdocs/langs/id_ID/languages.lang rename to public/langs/id_ID/languages.lang diff --git a/htdocs/langs/id_ID/ldap.lang b/public/langs/id_ID/ldap.lang similarity index 100% rename from htdocs/langs/id_ID/ldap.lang rename to public/langs/id_ID/ldap.lang diff --git a/htdocs/langs/id_ID/link.lang b/public/langs/id_ID/link.lang similarity index 100% rename from htdocs/langs/id_ID/link.lang rename to public/langs/id_ID/link.lang diff --git a/htdocs/langs/id_ID/loan.lang b/public/langs/id_ID/loan.lang similarity index 100% rename from htdocs/langs/id_ID/loan.lang rename to public/langs/id_ID/loan.lang diff --git a/htdocs/langs/id_ID/mailmanspip.lang b/public/langs/id_ID/mailmanspip.lang similarity index 100% rename from htdocs/langs/id_ID/mailmanspip.lang rename to public/langs/id_ID/mailmanspip.lang diff --git a/htdocs/langs/id_ID/mails.lang b/public/langs/id_ID/mails.lang similarity index 100% rename from htdocs/langs/id_ID/mails.lang rename to public/langs/id_ID/mails.lang diff --git a/htdocs/langs/id_ID/main.lang b/public/langs/id_ID/main.lang similarity index 100% rename from htdocs/langs/id_ID/main.lang rename to public/langs/id_ID/main.lang diff --git a/htdocs/langs/id_ID/margins.lang b/public/langs/id_ID/margins.lang similarity index 100% rename from htdocs/langs/id_ID/margins.lang rename to public/langs/id_ID/margins.lang diff --git a/htdocs/langs/id_ID/members.lang b/public/langs/id_ID/members.lang similarity index 100% rename from htdocs/langs/id_ID/members.lang rename to public/langs/id_ID/members.lang diff --git a/htdocs/langs/id_ID/oauth.lang b/public/langs/id_ID/oauth.lang similarity index 100% rename from htdocs/langs/id_ID/oauth.lang rename to public/langs/id_ID/oauth.lang diff --git a/htdocs/langs/id_ID/opensurvey.lang b/public/langs/id_ID/opensurvey.lang similarity index 100% rename from htdocs/langs/id_ID/opensurvey.lang rename to public/langs/id_ID/opensurvey.lang diff --git a/htdocs/langs/id_ID/orders.lang b/public/langs/id_ID/orders.lang similarity index 100% rename from htdocs/langs/id_ID/orders.lang rename to public/langs/id_ID/orders.lang diff --git a/htdocs/langs/id_ID/other.lang b/public/langs/id_ID/other.lang similarity index 100% rename from htdocs/langs/id_ID/other.lang rename to public/langs/id_ID/other.lang diff --git a/htdocs/langs/id_ID/paybox.lang b/public/langs/id_ID/paybox.lang similarity index 100% rename from htdocs/langs/id_ID/paybox.lang rename to public/langs/id_ID/paybox.lang diff --git a/htdocs/langs/id_ID/paypal.lang b/public/langs/id_ID/paypal.lang similarity index 100% rename from htdocs/langs/id_ID/paypal.lang rename to public/langs/id_ID/paypal.lang diff --git a/htdocs/langs/id_ID/printing.lang b/public/langs/id_ID/printing.lang similarity index 100% rename from htdocs/langs/id_ID/printing.lang rename to public/langs/id_ID/printing.lang diff --git a/htdocs/langs/id_ID/productbatch.lang b/public/langs/id_ID/productbatch.lang similarity index 100% rename from htdocs/langs/id_ID/productbatch.lang rename to public/langs/id_ID/productbatch.lang diff --git a/htdocs/langs/id_ID/products.lang b/public/langs/id_ID/products.lang similarity index 100% rename from htdocs/langs/id_ID/products.lang rename to public/langs/id_ID/products.lang diff --git a/htdocs/langs/id_ID/projects.lang b/public/langs/id_ID/projects.lang similarity index 100% rename from htdocs/langs/id_ID/projects.lang rename to public/langs/id_ID/projects.lang diff --git a/htdocs/langs/id_ID/propal.lang b/public/langs/id_ID/propal.lang similarity index 100% rename from htdocs/langs/id_ID/propal.lang rename to public/langs/id_ID/propal.lang diff --git a/htdocs/langs/id_ID/receiptprinter.lang b/public/langs/id_ID/receiptprinter.lang similarity index 100% rename from htdocs/langs/id_ID/receiptprinter.lang rename to public/langs/id_ID/receiptprinter.lang diff --git a/htdocs/langs/id_ID/resource.lang b/public/langs/id_ID/resource.lang similarity index 100% rename from htdocs/langs/id_ID/resource.lang rename to public/langs/id_ID/resource.lang diff --git a/htdocs/langs/id_ID/salaries.lang b/public/langs/id_ID/salaries.lang similarity index 100% rename from htdocs/langs/id_ID/salaries.lang rename to public/langs/id_ID/salaries.lang diff --git a/htdocs/langs/id_ID/sendings.lang b/public/langs/id_ID/sendings.lang similarity index 100% rename from htdocs/langs/id_ID/sendings.lang rename to public/langs/id_ID/sendings.lang diff --git a/htdocs/langs/id_ID/sms.lang b/public/langs/id_ID/sms.lang similarity index 100% rename from htdocs/langs/id_ID/sms.lang rename to public/langs/id_ID/sms.lang diff --git a/htdocs/langs/id_ID/stocks.lang b/public/langs/id_ID/stocks.lang similarity index 100% rename from htdocs/langs/id_ID/stocks.lang rename to public/langs/id_ID/stocks.lang diff --git a/htdocs/langs/id_ID/supplier_proposal.lang b/public/langs/id_ID/supplier_proposal.lang similarity index 100% rename from htdocs/langs/id_ID/supplier_proposal.lang rename to public/langs/id_ID/supplier_proposal.lang diff --git a/htdocs/langs/id_ID/suppliers.lang b/public/langs/id_ID/suppliers.lang similarity index 100% rename from htdocs/langs/id_ID/suppliers.lang rename to public/langs/id_ID/suppliers.lang diff --git a/htdocs/langs/id_ID/trips.lang b/public/langs/id_ID/trips.lang similarity index 100% rename from htdocs/langs/id_ID/trips.lang rename to public/langs/id_ID/trips.lang diff --git a/htdocs/langs/id_ID/users.lang b/public/langs/id_ID/users.lang similarity index 100% rename from htdocs/langs/id_ID/users.lang rename to public/langs/id_ID/users.lang diff --git a/htdocs/langs/id_ID/website.lang b/public/langs/id_ID/website.lang similarity index 100% rename from htdocs/langs/id_ID/website.lang rename to public/langs/id_ID/website.lang diff --git a/htdocs/langs/id_ID/withdrawals.lang b/public/langs/id_ID/withdrawals.lang similarity index 100% rename from htdocs/langs/id_ID/withdrawals.lang rename to public/langs/id_ID/withdrawals.lang diff --git a/htdocs/langs/id_ID/workflow.lang b/public/langs/id_ID/workflow.lang similarity index 100% rename from htdocs/langs/id_ID/workflow.lang rename to public/langs/id_ID/workflow.lang diff --git a/htdocs/langs/is_IS/accountancy.lang b/public/langs/is_IS/accountancy.lang similarity index 100% rename from htdocs/langs/is_IS/accountancy.lang rename to public/langs/is_IS/accountancy.lang diff --git a/htdocs/langs/is_IS/admin.lang b/public/langs/is_IS/admin.lang similarity index 100% rename from htdocs/langs/is_IS/admin.lang rename to public/langs/is_IS/admin.lang diff --git a/htdocs/langs/is_IS/agenda.lang b/public/langs/is_IS/agenda.lang similarity index 100% rename from htdocs/langs/is_IS/agenda.lang rename to public/langs/is_IS/agenda.lang diff --git a/htdocs/langs/is_IS/banks.lang b/public/langs/is_IS/banks.lang similarity index 100% rename from htdocs/langs/is_IS/banks.lang rename to public/langs/is_IS/banks.lang diff --git a/htdocs/langs/is_IS/bills.lang b/public/langs/is_IS/bills.lang similarity index 100% rename from htdocs/langs/is_IS/bills.lang rename to public/langs/is_IS/bills.lang diff --git a/htdocs/langs/is_IS/bookmarks.lang b/public/langs/is_IS/bookmarks.lang similarity index 100% rename from htdocs/langs/is_IS/bookmarks.lang rename to public/langs/is_IS/bookmarks.lang diff --git a/htdocs/langs/is_IS/boxes.lang b/public/langs/is_IS/boxes.lang similarity index 100% rename from htdocs/langs/is_IS/boxes.lang rename to public/langs/is_IS/boxes.lang diff --git a/htdocs/langs/is_IS/cashdesk.lang b/public/langs/is_IS/cashdesk.lang similarity index 100% rename from htdocs/langs/is_IS/cashdesk.lang rename to public/langs/is_IS/cashdesk.lang diff --git a/htdocs/langs/is_IS/categories.lang b/public/langs/is_IS/categories.lang similarity index 100% rename from htdocs/langs/is_IS/categories.lang rename to public/langs/is_IS/categories.lang diff --git a/htdocs/langs/is_IS/commercial.lang b/public/langs/is_IS/commercial.lang similarity index 100% rename from htdocs/langs/is_IS/commercial.lang rename to public/langs/is_IS/commercial.lang diff --git a/htdocs/langs/is_IS/companies.lang b/public/langs/is_IS/companies.lang similarity index 100% rename from htdocs/langs/is_IS/companies.lang rename to public/langs/is_IS/companies.lang diff --git a/htdocs/langs/is_IS/compta.lang b/public/langs/is_IS/compta.lang similarity index 100% rename from htdocs/langs/is_IS/compta.lang rename to public/langs/is_IS/compta.lang diff --git a/htdocs/langs/is_IS/contracts.lang b/public/langs/is_IS/contracts.lang similarity index 100% rename from htdocs/langs/is_IS/contracts.lang rename to public/langs/is_IS/contracts.lang diff --git a/htdocs/langs/is_IS/cron.lang b/public/langs/is_IS/cron.lang similarity index 100% rename from htdocs/langs/is_IS/cron.lang rename to public/langs/is_IS/cron.lang diff --git a/htdocs/langs/is_IS/deliveries.lang b/public/langs/is_IS/deliveries.lang similarity index 100% rename from htdocs/langs/is_IS/deliveries.lang rename to public/langs/is_IS/deliveries.lang diff --git a/htdocs/langs/is_IS/dict.lang b/public/langs/is_IS/dict.lang similarity index 100% rename from htdocs/langs/is_IS/dict.lang rename to public/langs/is_IS/dict.lang diff --git a/htdocs/langs/is_IS/donations.lang b/public/langs/is_IS/donations.lang similarity index 100% rename from htdocs/langs/is_IS/donations.lang rename to public/langs/is_IS/donations.lang diff --git a/htdocs/langs/is_IS/ecm.lang b/public/langs/is_IS/ecm.lang similarity index 100% rename from htdocs/langs/is_IS/ecm.lang rename to public/langs/is_IS/ecm.lang diff --git a/htdocs/langs/is_IS/errors.lang b/public/langs/is_IS/errors.lang similarity index 100% rename from htdocs/langs/is_IS/errors.lang rename to public/langs/is_IS/errors.lang diff --git a/htdocs/langs/is_IS/exports.lang b/public/langs/is_IS/exports.lang similarity index 100% rename from htdocs/langs/is_IS/exports.lang rename to public/langs/is_IS/exports.lang diff --git a/htdocs/langs/is_IS/externalsite.lang b/public/langs/is_IS/externalsite.lang similarity index 100% rename from htdocs/langs/is_IS/externalsite.lang rename to public/langs/is_IS/externalsite.lang diff --git a/htdocs/langs/is_IS/ftp.lang b/public/langs/is_IS/ftp.lang similarity index 100% rename from htdocs/langs/is_IS/ftp.lang rename to public/langs/is_IS/ftp.lang diff --git a/htdocs/langs/is_IS/help.lang b/public/langs/is_IS/help.lang similarity index 100% rename from htdocs/langs/is_IS/help.lang rename to public/langs/is_IS/help.lang diff --git a/htdocs/langs/is_IS/holiday.lang b/public/langs/is_IS/holiday.lang similarity index 100% rename from htdocs/langs/is_IS/holiday.lang rename to public/langs/is_IS/holiday.lang diff --git a/htdocs/langs/is_IS/hrm.lang b/public/langs/is_IS/hrm.lang similarity index 100% rename from htdocs/langs/is_IS/hrm.lang rename to public/langs/is_IS/hrm.lang diff --git a/htdocs/langs/is_IS/incoterm.lang b/public/langs/is_IS/incoterm.lang similarity index 100% rename from htdocs/langs/is_IS/incoterm.lang rename to public/langs/is_IS/incoterm.lang diff --git a/htdocs/langs/is_IS/install.lang b/public/langs/is_IS/install.lang similarity index 100% rename from htdocs/langs/is_IS/install.lang rename to public/langs/is_IS/install.lang diff --git a/htdocs/langs/is_IS/interventions.lang b/public/langs/is_IS/interventions.lang similarity index 100% rename from htdocs/langs/is_IS/interventions.lang rename to public/langs/is_IS/interventions.lang diff --git a/htdocs/langs/is_IS/languages.lang b/public/langs/is_IS/languages.lang similarity index 100% rename from htdocs/langs/is_IS/languages.lang rename to public/langs/is_IS/languages.lang diff --git a/htdocs/langs/is_IS/ldap.lang b/public/langs/is_IS/ldap.lang similarity index 100% rename from htdocs/langs/is_IS/ldap.lang rename to public/langs/is_IS/ldap.lang diff --git a/htdocs/langs/is_IS/link.lang b/public/langs/is_IS/link.lang similarity index 100% rename from htdocs/langs/is_IS/link.lang rename to public/langs/is_IS/link.lang diff --git a/htdocs/langs/is_IS/loan.lang b/public/langs/is_IS/loan.lang similarity index 100% rename from htdocs/langs/is_IS/loan.lang rename to public/langs/is_IS/loan.lang diff --git a/htdocs/langs/is_IS/mailmanspip.lang b/public/langs/is_IS/mailmanspip.lang similarity index 100% rename from htdocs/langs/is_IS/mailmanspip.lang rename to public/langs/is_IS/mailmanspip.lang diff --git a/htdocs/langs/is_IS/mails.lang b/public/langs/is_IS/mails.lang similarity index 100% rename from htdocs/langs/is_IS/mails.lang rename to public/langs/is_IS/mails.lang diff --git a/htdocs/langs/is_IS/main.lang b/public/langs/is_IS/main.lang similarity index 100% rename from htdocs/langs/is_IS/main.lang rename to public/langs/is_IS/main.lang diff --git a/htdocs/langs/is_IS/margins.lang b/public/langs/is_IS/margins.lang similarity index 100% rename from htdocs/langs/is_IS/margins.lang rename to public/langs/is_IS/margins.lang diff --git a/htdocs/langs/is_IS/members.lang b/public/langs/is_IS/members.lang similarity index 100% rename from htdocs/langs/is_IS/members.lang rename to public/langs/is_IS/members.lang diff --git a/htdocs/langs/is_IS/oauth.lang b/public/langs/is_IS/oauth.lang similarity index 100% rename from htdocs/langs/is_IS/oauth.lang rename to public/langs/is_IS/oauth.lang diff --git a/htdocs/langs/is_IS/opensurvey.lang b/public/langs/is_IS/opensurvey.lang similarity index 100% rename from htdocs/langs/is_IS/opensurvey.lang rename to public/langs/is_IS/opensurvey.lang diff --git a/htdocs/langs/is_IS/orders.lang b/public/langs/is_IS/orders.lang similarity index 100% rename from htdocs/langs/is_IS/orders.lang rename to public/langs/is_IS/orders.lang diff --git a/htdocs/langs/is_IS/other.lang b/public/langs/is_IS/other.lang similarity index 100% rename from htdocs/langs/is_IS/other.lang rename to public/langs/is_IS/other.lang diff --git a/htdocs/langs/is_IS/paybox.lang b/public/langs/is_IS/paybox.lang similarity index 100% rename from htdocs/langs/is_IS/paybox.lang rename to public/langs/is_IS/paybox.lang diff --git a/htdocs/langs/is_IS/paypal.lang b/public/langs/is_IS/paypal.lang similarity index 100% rename from htdocs/langs/is_IS/paypal.lang rename to public/langs/is_IS/paypal.lang diff --git a/htdocs/langs/is_IS/printing.lang b/public/langs/is_IS/printing.lang similarity index 100% rename from htdocs/langs/is_IS/printing.lang rename to public/langs/is_IS/printing.lang diff --git a/htdocs/langs/is_IS/productbatch.lang b/public/langs/is_IS/productbatch.lang similarity index 100% rename from htdocs/langs/is_IS/productbatch.lang rename to public/langs/is_IS/productbatch.lang diff --git a/htdocs/langs/is_IS/products.lang b/public/langs/is_IS/products.lang similarity index 100% rename from htdocs/langs/is_IS/products.lang rename to public/langs/is_IS/products.lang diff --git a/htdocs/langs/is_IS/projects.lang b/public/langs/is_IS/projects.lang similarity index 100% rename from htdocs/langs/is_IS/projects.lang rename to public/langs/is_IS/projects.lang diff --git a/htdocs/langs/is_IS/propal.lang b/public/langs/is_IS/propal.lang similarity index 100% rename from htdocs/langs/is_IS/propal.lang rename to public/langs/is_IS/propal.lang diff --git a/htdocs/langs/is_IS/receiptprinter.lang b/public/langs/is_IS/receiptprinter.lang similarity index 100% rename from htdocs/langs/is_IS/receiptprinter.lang rename to public/langs/is_IS/receiptprinter.lang diff --git a/htdocs/langs/is_IS/resource.lang b/public/langs/is_IS/resource.lang similarity index 100% rename from htdocs/langs/is_IS/resource.lang rename to public/langs/is_IS/resource.lang diff --git a/htdocs/langs/is_IS/salaries.lang b/public/langs/is_IS/salaries.lang similarity index 100% rename from htdocs/langs/is_IS/salaries.lang rename to public/langs/is_IS/salaries.lang diff --git a/htdocs/langs/is_IS/sendings.lang b/public/langs/is_IS/sendings.lang similarity index 100% rename from htdocs/langs/is_IS/sendings.lang rename to public/langs/is_IS/sendings.lang diff --git a/htdocs/langs/is_IS/sms.lang b/public/langs/is_IS/sms.lang similarity index 100% rename from htdocs/langs/is_IS/sms.lang rename to public/langs/is_IS/sms.lang diff --git a/htdocs/langs/is_IS/stocks.lang b/public/langs/is_IS/stocks.lang similarity index 100% rename from htdocs/langs/is_IS/stocks.lang rename to public/langs/is_IS/stocks.lang diff --git a/htdocs/langs/is_IS/supplier_proposal.lang b/public/langs/is_IS/supplier_proposal.lang similarity index 100% rename from htdocs/langs/is_IS/supplier_proposal.lang rename to public/langs/is_IS/supplier_proposal.lang diff --git a/htdocs/langs/is_IS/suppliers.lang b/public/langs/is_IS/suppliers.lang similarity index 100% rename from htdocs/langs/is_IS/suppliers.lang rename to public/langs/is_IS/suppliers.lang diff --git a/htdocs/langs/is_IS/trips.lang b/public/langs/is_IS/trips.lang similarity index 100% rename from htdocs/langs/is_IS/trips.lang rename to public/langs/is_IS/trips.lang diff --git a/htdocs/langs/is_IS/users.lang b/public/langs/is_IS/users.lang similarity index 100% rename from htdocs/langs/is_IS/users.lang rename to public/langs/is_IS/users.lang diff --git a/htdocs/langs/is_IS/website.lang b/public/langs/is_IS/website.lang similarity index 100% rename from htdocs/langs/is_IS/website.lang rename to public/langs/is_IS/website.lang diff --git a/htdocs/langs/is_IS/withdrawals.lang b/public/langs/is_IS/withdrawals.lang similarity index 100% rename from htdocs/langs/is_IS/withdrawals.lang rename to public/langs/is_IS/withdrawals.lang diff --git a/htdocs/langs/is_IS/workflow.lang b/public/langs/is_IS/workflow.lang similarity index 100% rename from htdocs/langs/is_IS/workflow.lang rename to public/langs/is_IS/workflow.lang diff --git a/htdocs/langs/it_IT/accountancy.lang b/public/langs/it_IT/accountancy.lang similarity index 100% rename from htdocs/langs/it_IT/accountancy.lang rename to public/langs/it_IT/accountancy.lang diff --git a/htdocs/langs/it_IT/admin.lang b/public/langs/it_IT/admin.lang similarity index 100% rename from htdocs/langs/it_IT/admin.lang rename to public/langs/it_IT/admin.lang diff --git a/htdocs/langs/it_IT/agenda.lang b/public/langs/it_IT/agenda.lang similarity index 100% rename from htdocs/langs/it_IT/agenda.lang rename to public/langs/it_IT/agenda.lang diff --git a/htdocs/langs/it_IT/banks.lang b/public/langs/it_IT/banks.lang similarity index 100% rename from htdocs/langs/it_IT/banks.lang rename to public/langs/it_IT/banks.lang diff --git a/htdocs/langs/it_IT/bills.lang b/public/langs/it_IT/bills.lang similarity index 100% rename from htdocs/langs/it_IT/bills.lang rename to public/langs/it_IT/bills.lang diff --git a/htdocs/langs/it_IT/bookmarks.lang b/public/langs/it_IT/bookmarks.lang similarity index 100% rename from htdocs/langs/it_IT/bookmarks.lang rename to public/langs/it_IT/bookmarks.lang diff --git a/htdocs/langs/it_IT/boxes.lang b/public/langs/it_IT/boxes.lang similarity index 100% rename from htdocs/langs/it_IT/boxes.lang rename to public/langs/it_IT/boxes.lang diff --git a/htdocs/langs/it_IT/cashdesk.lang b/public/langs/it_IT/cashdesk.lang similarity index 100% rename from htdocs/langs/it_IT/cashdesk.lang rename to public/langs/it_IT/cashdesk.lang diff --git a/htdocs/langs/it_IT/categories.lang b/public/langs/it_IT/categories.lang similarity index 100% rename from htdocs/langs/it_IT/categories.lang rename to public/langs/it_IT/categories.lang diff --git a/htdocs/langs/it_IT/commercial.lang b/public/langs/it_IT/commercial.lang similarity index 100% rename from htdocs/langs/it_IT/commercial.lang rename to public/langs/it_IT/commercial.lang diff --git a/htdocs/langs/it_IT/companies.lang b/public/langs/it_IT/companies.lang similarity index 100% rename from htdocs/langs/it_IT/companies.lang rename to public/langs/it_IT/companies.lang diff --git a/htdocs/langs/it_IT/compta.lang b/public/langs/it_IT/compta.lang similarity index 100% rename from htdocs/langs/it_IT/compta.lang rename to public/langs/it_IT/compta.lang diff --git a/htdocs/langs/it_IT/contracts.lang b/public/langs/it_IT/contracts.lang similarity index 100% rename from htdocs/langs/it_IT/contracts.lang rename to public/langs/it_IT/contracts.lang diff --git a/htdocs/langs/it_IT/cron.lang b/public/langs/it_IT/cron.lang similarity index 100% rename from htdocs/langs/it_IT/cron.lang rename to public/langs/it_IT/cron.lang diff --git a/htdocs/langs/it_IT/deliveries.lang b/public/langs/it_IT/deliveries.lang similarity index 100% rename from htdocs/langs/it_IT/deliveries.lang rename to public/langs/it_IT/deliveries.lang diff --git a/htdocs/langs/it_IT/dict.lang b/public/langs/it_IT/dict.lang similarity index 100% rename from htdocs/langs/it_IT/dict.lang rename to public/langs/it_IT/dict.lang diff --git a/htdocs/langs/it_IT/donations.lang b/public/langs/it_IT/donations.lang similarity index 100% rename from htdocs/langs/it_IT/donations.lang rename to public/langs/it_IT/donations.lang diff --git a/htdocs/langs/it_IT/ecm.lang b/public/langs/it_IT/ecm.lang similarity index 100% rename from htdocs/langs/it_IT/ecm.lang rename to public/langs/it_IT/ecm.lang diff --git a/htdocs/langs/it_IT/errors.lang b/public/langs/it_IT/errors.lang similarity index 100% rename from htdocs/langs/it_IT/errors.lang rename to public/langs/it_IT/errors.lang diff --git a/htdocs/langs/it_IT/exports.lang b/public/langs/it_IT/exports.lang similarity index 100% rename from htdocs/langs/it_IT/exports.lang rename to public/langs/it_IT/exports.lang diff --git a/htdocs/langs/it_IT/externalsite.lang b/public/langs/it_IT/externalsite.lang similarity index 100% rename from htdocs/langs/it_IT/externalsite.lang rename to public/langs/it_IT/externalsite.lang diff --git a/htdocs/langs/it_IT/ftp.lang b/public/langs/it_IT/ftp.lang similarity index 100% rename from htdocs/langs/it_IT/ftp.lang rename to public/langs/it_IT/ftp.lang diff --git a/htdocs/langs/it_IT/google.lang b/public/langs/it_IT/google.lang similarity index 100% rename from htdocs/langs/it_IT/google.lang rename to public/langs/it_IT/google.lang diff --git a/htdocs/langs/it_IT/help.lang b/public/langs/it_IT/help.lang similarity index 100% rename from htdocs/langs/it_IT/help.lang rename to public/langs/it_IT/help.lang diff --git a/htdocs/langs/it_IT/holiday.lang b/public/langs/it_IT/holiday.lang similarity index 100% rename from htdocs/langs/it_IT/holiday.lang rename to public/langs/it_IT/holiday.lang diff --git a/htdocs/langs/it_IT/hrm.lang b/public/langs/it_IT/hrm.lang similarity index 100% rename from htdocs/langs/it_IT/hrm.lang rename to public/langs/it_IT/hrm.lang diff --git a/htdocs/langs/it_IT/incoterm.lang b/public/langs/it_IT/incoterm.lang similarity index 100% rename from htdocs/langs/it_IT/incoterm.lang rename to public/langs/it_IT/incoterm.lang diff --git a/htdocs/langs/it_IT/install.lang b/public/langs/it_IT/install.lang similarity index 100% rename from htdocs/langs/it_IT/install.lang rename to public/langs/it_IT/install.lang diff --git a/htdocs/langs/it_IT/interventions.lang b/public/langs/it_IT/interventions.lang similarity index 100% rename from htdocs/langs/it_IT/interventions.lang rename to public/langs/it_IT/interventions.lang diff --git a/htdocs/langs/it_IT/languages.lang b/public/langs/it_IT/languages.lang similarity index 100% rename from htdocs/langs/it_IT/languages.lang rename to public/langs/it_IT/languages.lang diff --git a/htdocs/langs/it_IT/ldap.lang b/public/langs/it_IT/ldap.lang similarity index 100% rename from htdocs/langs/it_IT/ldap.lang rename to public/langs/it_IT/ldap.lang diff --git a/htdocs/langs/it_IT/link.lang b/public/langs/it_IT/link.lang similarity index 100% rename from htdocs/langs/it_IT/link.lang rename to public/langs/it_IT/link.lang diff --git a/htdocs/langs/it_IT/loan.lang b/public/langs/it_IT/loan.lang similarity index 100% rename from htdocs/langs/it_IT/loan.lang rename to public/langs/it_IT/loan.lang diff --git a/htdocs/langs/it_IT/mailmanspip.lang b/public/langs/it_IT/mailmanspip.lang similarity index 100% rename from htdocs/langs/it_IT/mailmanspip.lang rename to public/langs/it_IT/mailmanspip.lang diff --git a/htdocs/langs/it_IT/mails.lang b/public/langs/it_IT/mails.lang similarity index 100% rename from htdocs/langs/it_IT/mails.lang rename to public/langs/it_IT/mails.lang diff --git a/htdocs/langs/it_IT/main.lang b/public/langs/it_IT/main.lang similarity index 100% rename from htdocs/langs/it_IT/main.lang rename to public/langs/it_IT/main.lang diff --git a/htdocs/langs/it_IT/margins.lang b/public/langs/it_IT/margins.lang similarity index 100% rename from htdocs/langs/it_IT/margins.lang rename to public/langs/it_IT/margins.lang diff --git a/htdocs/langs/it_IT/members.lang b/public/langs/it_IT/members.lang similarity index 100% rename from htdocs/langs/it_IT/members.lang rename to public/langs/it_IT/members.lang diff --git a/htdocs/langs/it_IT/oauth.lang b/public/langs/it_IT/oauth.lang similarity index 100% rename from htdocs/langs/it_IT/oauth.lang rename to public/langs/it_IT/oauth.lang diff --git a/htdocs/langs/it_IT/opensurvey.lang b/public/langs/it_IT/opensurvey.lang similarity index 100% rename from htdocs/langs/it_IT/opensurvey.lang rename to public/langs/it_IT/opensurvey.lang diff --git a/htdocs/langs/it_IT/orders.lang b/public/langs/it_IT/orders.lang similarity index 100% rename from htdocs/langs/it_IT/orders.lang rename to public/langs/it_IT/orders.lang diff --git a/htdocs/langs/it_IT/other.lang b/public/langs/it_IT/other.lang similarity index 100% rename from htdocs/langs/it_IT/other.lang rename to public/langs/it_IT/other.lang diff --git a/htdocs/langs/it_IT/paybox.lang b/public/langs/it_IT/paybox.lang similarity index 100% rename from htdocs/langs/it_IT/paybox.lang rename to public/langs/it_IT/paybox.lang diff --git a/htdocs/langs/it_IT/paypal.lang b/public/langs/it_IT/paypal.lang similarity index 100% rename from htdocs/langs/it_IT/paypal.lang rename to public/langs/it_IT/paypal.lang diff --git a/htdocs/langs/it_IT/printing.lang b/public/langs/it_IT/printing.lang similarity index 100% rename from htdocs/langs/it_IT/printing.lang rename to public/langs/it_IT/printing.lang diff --git a/htdocs/langs/it_IT/productbatch.lang b/public/langs/it_IT/productbatch.lang similarity index 100% rename from htdocs/langs/it_IT/productbatch.lang rename to public/langs/it_IT/productbatch.lang diff --git a/htdocs/langs/it_IT/products.lang b/public/langs/it_IT/products.lang similarity index 100% rename from htdocs/langs/it_IT/products.lang rename to public/langs/it_IT/products.lang diff --git a/htdocs/langs/it_IT/projects.lang b/public/langs/it_IT/projects.lang similarity index 100% rename from htdocs/langs/it_IT/projects.lang rename to public/langs/it_IT/projects.lang diff --git a/htdocs/langs/it_IT/propal.lang b/public/langs/it_IT/propal.lang similarity index 100% rename from htdocs/langs/it_IT/propal.lang rename to public/langs/it_IT/propal.lang diff --git a/htdocs/langs/it_IT/receiptprinter.lang b/public/langs/it_IT/receiptprinter.lang similarity index 100% rename from htdocs/langs/it_IT/receiptprinter.lang rename to public/langs/it_IT/receiptprinter.lang diff --git a/htdocs/langs/it_IT/resource.lang b/public/langs/it_IT/resource.lang similarity index 100% rename from htdocs/langs/it_IT/resource.lang rename to public/langs/it_IT/resource.lang diff --git a/htdocs/langs/it_IT/salaries.lang b/public/langs/it_IT/salaries.lang similarity index 100% rename from htdocs/langs/it_IT/salaries.lang rename to public/langs/it_IT/salaries.lang diff --git a/htdocs/langs/it_IT/sendings.lang b/public/langs/it_IT/sendings.lang similarity index 100% rename from htdocs/langs/it_IT/sendings.lang rename to public/langs/it_IT/sendings.lang diff --git a/htdocs/langs/it_IT/sms.lang b/public/langs/it_IT/sms.lang similarity index 100% rename from htdocs/langs/it_IT/sms.lang rename to public/langs/it_IT/sms.lang diff --git a/htdocs/langs/it_IT/stocks.lang b/public/langs/it_IT/stocks.lang similarity index 100% rename from htdocs/langs/it_IT/stocks.lang rename to public/langs/it_IT/stocks.lang diff --git a/htdocs/langs/it_IT/supplier_proposal.lang b/public/langs/it_IT/supplier_proposal.lang similarity index 100% rename from htdocs/langs/it_IT/supplier_proposal.lang rename to public/langs/it_IT/supplier_proposal.lang diff --git a/htdocs/langs/it_IT/suppliers.lang b/public/langs/it_IT/suppliers.lang similarity index 100% rename from htdocs/langs/it_IT/suppliers.lang rename to public/langs/it_IT/suppliers.lang diff --git a/htdocs/langs/it_IT/trips.lang b/public/langs/it_IT/trips.lang similarity index 100% rename from htdocs/langs/it_IT/trips.lang rename to public/langs/it_IT/trips.lang diff --git a/htdocs/langs/it_IT/users.lang b/public/langs/it_IT/users.lang similarity index 100% rename from htdocs/langs/it_IT/users.lang rename to public/langs/it_IT/users.lang diff --git a/htdocs/langs/it_IT/website.lang b/public/langs/it_IT/website.lang similarity index 100% rename from htdocs/langs/it_IT/website.lang rename to public/langs/it_IT/website.lang diff --git a/htdocs/langs/it_IT/withdrawals.lang b/public/langs/it_IT/withdrawals.lang similarity index 100% rename from htdocs/langs/it_IT/withdrawals.lang rename to public/langs/it_IT/withdrawals.lang diff --git a/htdocs/langs/it_IT/workflow.lang b/public/langs/it_IT/workflow.lang similarity index 100% rename from htdocs/langs/it_IT/workflow.lang rename to public/langs/it_IT/workflow.lang diff --git a/htdocs/langs/ja_JP/accountancy.lang b/public/langs/ja_JP/accountancy.lang similarity index 100% rename from htdocs/langs/ja_JP/accountancy.lang rename to public/langs/ja_JP/accountancy.lang diff --git a/htdocs/langs/ja_JP/admin.lang b/public/langs/ja_JP/admin.lang similarity index 100% rename from htdocs/langs/ja_JP/admin.lang rename to public/langs/ja_JP/admin.lang diff --git a/htdocs/langs/ja_JP/agenda.lang b/public/langs/ja_JP/agenda.lang similarity index 100% rename from htdocs/langs/ja_JP/agenda.lang rename to public/langs/ja_JP/agenda.lang diff --git a/htdocs/langs/ja_JP/banks.lang b/public/langs/ja_JP/banks.lang similarity index 100% rename from htdocs/langs/ja_JP/banks.lang rename to public/langs/ja_JP/banks.lang diff --git a/htdocs/langs/ja_JP/bills.lang b/public/langs/ja_JP/bills.lang similarity index 100% rename from htdocs/langs/ja_JP/bills.lang rename to public/langs/ja_JP/bills.lang diff --git a/htdocs/langs/ja_JP/bookmarks.lang b/public/langs/ja_JP/bookmarks.lang similarity index 100% rename from htdocs/langs/ja_JP/bookmarks.lang rename to public/langs/ja_JP/bookmarks.lang diff --git a/htdocs/langs/ja_JP/boxes.lang b/public/langs/ja_JP/boxes.lang similarity index 100% rename from htdocs/langs/ja_JP/boxes.lang rename to public/langs/ja_JP/boxes.lang diff --git a/htdocs/langs/ja_JP/cashdesk.lang b/public/langs/ja_JP/cashdesk.lang similarity index 100% rename from htdocs/langs/ja_JP/cashdesk.lang rename to public/langs/ja_JP/cashdesk.lang diff --git a/htdocs/langs/ja_JP/categories.lang b/public/langs/ja_JP/categories.lang similarity index 100% rename from htdocs/langs/ja_JP/categories.lang rename to public/langs/ja_JP/categories.lang diff --git a/htdocs/langs/ja_JP/commercial.lang b/public/langs/ja_JP/commercial.lang similarity index 100% rename from htdocs/langs/ja_JP/commercial.lang rename to public/langs/ja_JP/commercial.lang diff --git a/htdocs/langs/ja_JP/companies.lang b/public/langs/ja_JP/companies.lang similarity index 100% rename from htdocs/langs/ja_JP/companies.lang rename to public/langs/ja_JP/companies.lang diff --git a/htdocs/langs/ja_JP/compta.lang b/public/langs/ja_JP/compta.lang similarity index 100% rename from htdocs/langs/ja_JP/compta.lang rename to public/langs/ja_JP/compta.lang diff --git a/htdocs/langs/ja_JP/contracts.lang b/public/langs/ja_JP/contracts.lang similarity index 100% rename from htdocs/langs/ja_JP/contracts.lang rename to public/langs/ja_JP/contracts.lang diff --git a/htdocs/langs/ja_JP/cron.lang b/public/langs/ja_JP/cron.lang similarity index 100% rename from htdocs/langs/ja_JP/cron.lang rename to public/langs/ja_JP/cron.lang diff --git a/htdocs/langs/ja_JP/deliveries.lang b/public/langs/ja_JP/deliveries.lang similarity index 100% rename from htdocs/langs/ja_JP/deliveries.lang rename to public/langs/ja_JP/deliveries.lang diff --git a/htdocs/langs/ja_JP/dict.lang b/public/langs/ja_JP/dict.lang similarity index 100% rename from htdocs/langs/ja_JP/dict.lang rename to public/langs/ja_JP/dict.lang diff --git a/htdocs/langs/ja_JP/donations.lang b/public/langs/ja_JP/donations.lang similarity index 100% rename from htdocs/langs/ja_JP/donations.lang rename to public/langs/ja_JP/donations.lang diff --git a/htdocs/langs/ja_JP/ecm.lang b/public/langs/ja_JP/ecm.lang similarity index 100% rename from htdocs/langs/ja_JP/ecm.lang rename to public/langs/ja_JP/ecm.lang diff --git a/htdocs/langs/ja_JP/errors.lang b/public/langs/ja_JP/errors.lang similarity index 100% rename from htdocs/langs/ja_JP/errors.lang rename to public/langs/ja_JP/errors.lang diff --git a/htdocs/langs/ja_JP/exports.lang b/public/langs/ja_JP/exports.lang similarity index 100% rename from htdocs/langs/ja_JP/exports.lang rename to public/langs/ja_JP/exports.lang diff --git a/htdocs/langs/ja_JP/externalsite.lang b/public/langs/ja_JP/externalsite.lang similarity index 100% rename from htdocs/langs/ja_JP/externalsite.lang rename to public/langs/ja_JP/externalsite.lang diff --git a/htdocs/langs/ja_JP/ftp.lang b/public/langs/ja_JP/ftp.lang similarity index 100% rename from htdocs/langs/ja_JP/ftp.lang rename to public/langs/ja_JP/ftp.lang diff --git a/htdocs/langs/ja_JP/help.lang b/public/langs/ja_JP/help.lang similarity index 100% rename from htdocs/langs/ja_JP/help.lang rename to public/langs/ja_JP/help.lang diff --git a/htdocs/langs/ja_JP/holiday.lang b/public/langs/ja_JP/holiday.lang similarity index 100% rename from htdocs/langs/ja_JP/holiday.lang rename to public/langs/ja_JP/holiday.lang diff --git a/htdocs/langs/ja_JP/hrm.lang b/public/langs/ja_JP/hrm.lang similarity index 100% rename from htdocs/langs/ja_JP/hrm.lang rename to public/langs/ja_JP/hrm.lang diff --git a/htdocs/langs/ja_JP/incoterm.lang b/public/langs/ja_JP/incoterm.lang similarity index 100% rename from htdocs/langs/ja_JP/incoterm.lang rename to public/langs/ja_JP/incoterm.lang diff --git a/htdocs/langs/ja_JP/install.lang b/public/langs/ja_JP/install.lang similarity index 100% rename from htdocs/langs/ja_JP/install.lang rename to public/langs/ja_JP/install.lang diff --git a/htdocs/langs/ja_JP/interventions.lang b/public/langs/ja_JP/interventions.lang similarity index 100% rename from htdocs/langs/ja_JP/interventions.lang rename to public/langs/ja_JP/interventions.lang diff --git a/htdocs/langs/ja_JP/languages.lang b/public/langs/ja_JP/languages.lang similarity index 100% rename from htdocs/langs/ja_JP/languages.lang rename to public/langs/ja_JP/languages.lang diff --git a/htdocs/langs/ja_JP/ldap.lang b/public/langs/ja_JP/ldap.lang similarity index 100% rename from htdocs/langs/ja_JP/ldap.lang rename to public/langs/ja_JP/ldap.lang diff --git a/htdocs/langs/ja_JP/link.lang b/public/langs/ja_JP/link.lang similarity index 100% rename from htdocs/langs/ja_JP/link.lang rename to public/langs/ja_JP/link.lang diff --git a/htdocs/langs/ja_JP/loan.lang b/public/langs/ja_JP/loan.lang similarity index 100% rename from htdocs/langs/ja_JP/loan.lang rename to public/langs/ja_JP/loan.lang diff --git a/htdocs/langs/ja_JP/mailmanspip.lang b/public/langs/ja_JP/mailmanspip.lang similarity index 100% rename from htdocs/langs/ja_JP/mailmanspip.lang rename to public/langs/ja_JP/mailmanspip.lang diff --git a/htdocs/langs/ja_JP/mails.lang b/public/langs/ja_JP/mails.lang similarity index 100% rename from htdocs/langs/ja_JP/mails.lang rename to public/langs/ja_JP/mails.lang diff --git a/htdocs/langs/ja_JP/main.lang b/public/langs/ja_JP/main.lang similarity index 100% rename from htdocs/langs/ja_JP/main.lang rename to public/langs/ja_JP/main.lang diff --git a/htdocs/langs/ja_JP/margins.lang b/public/langs/ja_JP/margins.lang similarity index 100% rename from htdocs/langs/ja_JP/margins.lang rename to public/langs/ja_JP/margins.lang diff --git a/htdocs/langs/ja_JP/members.lang b/public/langs/ja_JP/members.lang similarity index 100% rename from htdocs/langs/ja_JP/members.lang rename to public/langs/ja_JP/members.lang diff --git a/htdocs/langs/ja_JP/oauth.lang b/public/langs/ja_JP/oauth.lang similarity index 100% rename from htdocs/langs/ja_JP/oauth.lang rename to public/langs/ja_JP/oauth.lang diff --git a/htdocs/langs/ja_JP/opensurvey.lang b/public/langs/ja_JP/opensurvey.lang similarity index 100% rename from htdocs/langs/ja_JP/opensurvey.lang rename to public/langs/ja_JP/opensurvey.lang diff --git a/htdocs/langs/ja_JP/orders.lang b/public/langs/ja_JP/orders.lang similarity index 100% rename from htdocs/langs/ja_JP/orders.lang rename to public/langs/ja_JP/orders.lang diff --git a/htdocs/langs/ja_JP/other.lang b/public/langs/ja_JP/other.lang similarity index 100% rename from htdocs/langs/ja_JP/other.lang rename to public/langs/ja_JP/other.lang diff --git a/htdocs/langs/ja_JP/paybox.lang b/public/langs/ja_JP/paybox.lang similarity index 100% rename from htdocs/langs/ja_JP/paybox.lang rename to public/langs/ja_JP/paybox.lang diff --git a/htdocs/langs/ja_JP/paypal.lang b/public/langs/ja_JP/paypal.lang similarity index 100% rename from htdocs/langs/ja_JP/paypal.lang rename to public/langs/ja_JP/paypal.lang diff --git a/htdocs/langs/ja_JP/printing.lang b/public/langs/ja_JP/printing.lang similarity index 100% rename from htdocs/langs/ja_JP/printing.lang rename to public/langs/ja_JP/printing.lang diff --git a/htdocs/langs/ja_JP/productbatch.lang b/public/langs/ja_JP/productbatch.lang similarity index 100% rename from htdocs/langs/ja_JP/productbatch.lang rename to public/langs/ja_JP/productbatch.lang diff --git a/htdocs/langs/ja_JP/products.lang b/public/langs/ja_JP/products.lang similarity index 100% rename from htdocs/langs/ja_JP/products.lang rename to public/langs/ja_JP/products.lang diff --git a/htdocs/langs/ja_JP/projects.lang b/public/langs/ja_JP/projects.lang similarity index 100% rename from htdocs/langs/ja_JP/projects.lang rename to public/langs/ja_JP/projects.lang diff --git a/htdocs/langs/ja_JP/propal.lang b/public/langs/ja_JP/propal.lang similarity index 100% rename from htdocs/langs/ja_JP/propal.lang rename to public/langs/ja_JP/propal.lang diff --git a/htdocs/langs/ja_JP/receiptprinter.lang b/public/langs/ja_JP/receiptprinter.lang similarity index 100% rename from htdocs/langs/ja_JP/receiptprinter.lang rename to public/langs/ja_JP/receiptprinter.lang diff --git a/htdocs/langs/ja_JP/resource.lang b/public/langs/ja_JP/resource.lang similarity index 100% rename from htdocs/langs/ja_JP/resource.lang rename to public/langs/ja_JP/resource.lang diff --git a/htdocs/langs/ja_JP/salaries.lang b/public/langs/ja_JP/salaries.lang similarity index 100% rename from htdocs/langs/ja_JP/salaries.lang rename to public/langs/ja_JP/salaries.lang diff --git a/htdocs/langs/ja_JP/sendings.lang b/public/langs/ja_JP/sendings.lang similarity index 100% rename from htdocs/langs/ja_JP/sendings.lang rename to public/langs/ja_JP/sendings.lang diff --git a/htdocs/langs/ja_JP/sms.lang b/public/langs/ja_JP/sms.lang similarity index 100% rename from htdocs/langs/ja_JP/sms.lang rename to public/langs/ja_JP/sms.lang diff --git a/htdocs/langs/ja_JP/stocks.lang b/public/langs/ja_JP/stocks.lang similarity index 100% rename from htdocs/langs/ja_JP/stocks.lang rename to public/langs/ja_JP/stocks.lang diff --git a/htdocs/langs/ja_JP/supplier_proposal.lang b/public/langs/ja_JP/supplier_proposal.lang similarity index 100% rename from htdocs/langs/ja_JP/supplier_proposal.lang rename to public/langs/ja_JP/supplier_proposal.lang diff --git a/htdocs/langs/ja_JP/suppliers.lang b/public/langs/ja_JP/suppliers.lang similarity index 100% rename from htdocs/langs/ja_JP/suppliers.lang rename to public/langs/ja_JP/suppliers.lang diff --git a/htdocs/langs/ja_JP/trips.lang b/public/langs/ja_JP/trips.lang similarity index 100% rename from htdocs/langs/ja_JP/trips.lang rename to public/langs/ja_JP/trips.lang diff --git a/htdocs/langs/ja_JP/users.lang b/public/langs/ja_JP/users.lang similarity index 100% rename from htdocs/langs/ja_JP/users.lang rename to public/langs/ja_JP/users.lang diff --git a/htdocs/langs/ja_JP/website.lang b/public/langs/ja_JP/website.lang similarity index 100% rename from htdocs/langs/ja_JP/website.lang rename to public/langs/ja_JP/website.lang diff --git a/htdocs/langs/ja_JP/withdrawals.lang b/public/langs/ja_JP/withdrawals.lang similarity index 100% rename from htdocs/langs/ja_JP/withdrawals.lang rename to public/langs/ja_JP/withdrawals.lang diff --git a/htdocs/langs/ja_JP/workflow.lang b/public/langs/ja_JP/workflow.lang similarity index 100% rename from htdocs/langs/ja_JP/workflow.lang rename to public/langs/ja_JP/workflow.lang diff --git a/htdocs/langs/ka_GE/accountancy.lang b/public/langs/ka_GE/accountancy.lang similarity index 100% rename from htdocs/langs/ka_GE/accountancy.lang rename to public/langs/ka_GE/accountancy.lang diff --git a/htdocs/langs/ka_GE/admin.lang b/public/langs/ka_GE/admin.lang similarity index 100% rename from htdocs/langs/ka_GE/admin.lang rename to public/langs/ka_GE/admin.lang diff --git a/htdocs/langs/ka_GE/agenda.lang b/public/langs/ka_GE/agenda.lang similarity index 100% rename from htdocs/langs/ka_GE/agenda.lang rename to public/langs/ka_GE/agenda.lang diff --git a/htdocs/langs/ka_GE/banks.lang b/public/langs/ka_GE/banks.lang similarity index 100% rename from htdocs/langs/ka_GE/banks.lang rename to public/langs/ka_GE/banks.lang diff --git a/htdocs/langs/ka_GE/bills.lang b/public/langs/ka_GE/bills.lang similarity index 100% rename from htdocs/langs/ka_GE/bills.lang rename to public/langs/ka_GE/bills.lang diff --git a/htdocs/langs/ka_GE/bookmarks.lang b/public/langs/ka_GE/bookmarks.lang similarity index 100% rename from htdocs/langs/ka_GE/bookmarks.lang rename to public/langs/ka_GE/bookmarks.lang diff --git a/htdocs/langs/ka_GE/boxes.lang b/public/langs/ka_GE/boxes.lang similarity index 100% rename from htdocs/langs/ka_GE/boxes.lang rename to public/langs/ka_GE/boxes.lang diff --git a/htdocs/langs/ka_GE/cashdesk.lang b/public/langs/ka_GE/cashdesk.lang similarity index 100% rename from htdocs/langs/ka_GE/cashdesk.lang rename to public/langs/ka_GE/cashdesk.lang diff --git a/htdocs/langs/ka_GE/categories.lang b/public/langs/ka_GE/categories.lang similarity index 100% rename from htdocs/langs/ka_GE/categories.lang rename to public/langs/ka_GE/categories.lang diff --git a/htdocs/langs/ka_GE/commercial.lang b/public/langs/ka_GE/commercial.lang similarity index 100% rename from htdocs/langs/ka_GE/commercial.lang rename to public/langs/ka_GE/commercial.lang diff --git a/htdocs/langs/ka_GE/companies.lang b/public/langs/ka_GE/companies.lang similarity index 100% rename from htdocs/langs/ka_GE/companies.lang rename to public/langs/ka_GE/companies.lang diff --git a/htdocs/langs/ka_GE/compta.lang b/public/langs/ka_GE/compta.lang similarity index 100% rename from htdocs/langs/ka_GE/compta.lang rename to public/langs/ka_GE/compta.lang diff --git a/htdocs/langs/ka_GE/contracts.lang b/public/langs/ka_GE/contracts.lang similarity index 100% rename from htdocs/langs/ka_GE/contracts.lang rename to public/langs/ka_GE/contracts.lang diff --git a/htdocs/langs/ka_GE/cron.lang b/public/langs/ka_GE/cron.lang similarity index 100% rename from htdocs/langs/ka_GE/cron.lang rename to public/langs/ka_GE/cron.lang diff --git a/htdocs/langs/ka_GE/deliveries.lang b/public/langs/ka_GE/deliveries.lang similarity index 100% rename from htdocs/langs/ka_GE/deliveries.lang rename to public/langs/ka_GE/deliveries.lang diff --git a/htdocs/langs/ka_GE/dict.lang b/public/langs/ka_GE/dict.lang similarity index 100% rename from htdocs/langs/ka_GE/dict.lang rename to public/langs/ka_GE/dict.lang diff --git a/htdocs/langs/ka_GE/donations.lang b/public/langs/ka_GE/donations.lang similarity index 100% rename from htdocs/langs/ka_GE/donations.lang rename to public/langs/ka_GE/donations.lang diff --git a/htdocs/langs/ka_GE/ecm.lang b/public/langs/ka_GE/ecm.lang similarity index 100% rename from htdocs/langs/ka_GE/ecm.lang rename to public/langs/ka_GE/ecm.lang diff --git a/htdocs/langs/ka_GE/errors.lang b/public/langs/ka_GE/errors.lang similarity index 100% rename from htdocs/langs/ka_GE/errors.lang rename to public/langs/ka_GE/errors.lang diff --git a/htdocs/langs/ka_GE/exports.lang b/public/langs/ka_GE/exports.lang similarity index 100% rename from htdocs/langs/ka_GE/exports.lang rename to public/langs/ka_GE/exports.lang diff --git a/htdocs/langs/ka_GE/externalsite.lang b/public/langs/ka_GE/externalsite.lang similarity index 100% rename from htdocs/langs/ka_GE/externalsite.lang rename to public/langs/ka_GE/externalsite.lang diff --git a/htdocs/langs/ka_GE/ftp.lang b/public/langs/ka_GE/ftp.lang similarity index 100% rename from htdocs/langs/ka_GE/ftp.lang rename to public/langs/ka_GE/ftp.lang diff --git a/htdocs/langs/ka_GE/help.lang b/public/langs/ka_GE/help.lang similarity index 100% rename from htdocs/langs/ka_GE/help.lang rename to public/langs/ka_GE/help.lang diff --git a/htdocs/langs/ka_GE/holiday.lang b/public/langs/ka_GE/holiday.lang similarity index 100% rename from htdocs/langs/ka_GE/holiday.lang rename to public/langs/ka_GE/holiday.lang diff --git a/htdocs/langs/ka_GE/hrm.lang b/public/langs/ka_GE/hrm.lang similarity index 100% rename from htdocs/langs/ka_GE/hrm.lang rename to public/langs/ka_GE/hrm.lang diff --git a/htdocs/langs/ka_GE/incoterm.lang b/public/langs/ka_GE/incoterm.lang similarity index 100% rename from htdocs/langs/ka_GE/incoterm.lang rename to public/langs/ka_GE/incoterm.lang diff --git a/htdocs/langs/ka_GE/install.lang b/public/langs/ka_GE/install.lang similarity index 100% rename from htdocs/langs/ka_GE/install.lang rename to public/langs/ka_GE/install.lang diff --git a/htdocs/langs/ka_GE/interventions.lang b/public/langs/ka_GE/interventions.lang similarity index 100% rename from htdocs/langs/ka_GE/interventions.lang rename to public/langs/ka_GE/interventions.lang diff --git a/htdocs/langs/ka_GE/languages.lang b/public/langs/ka_GE/languages.lang similarity index 100% rename from htdocs/langs/ka_GE/languages.lang rename to public/langs/ka_GE/languages.lang diff --git a/htdocs/langs/ka_GE/ldap.lang b/public/langs/ka_GE/ldap.lang similarity index 100% rename from htdocs/langs/ka_GE/ldap.lang rename to public/langs/ka_GE/ldap.lang diff --git a/htdocs/langs/ka_GE/link.lang b/public/langs/ka_GE/link.lang similarity index 100% rename from htdocs/langs/ka_GE/link.lang rename to public/langs/ka_GE/link.lang diff --git a/htdocs/langs/ka_GE/loan.lang b/public/langs/ka_GE/loan.lang similarity index 100% rename from htdocs/langs/ka_GE/loan.lang rename to public/langs/ka_GE/loan.lang diff --git a/htdocs/langs/ka_GE/mailmanspip.lang b/public/langs/ka_GE/mailmanspip.lang similarity index 100% rename from htdocs/langs/ka_GE/mailmanspip.lang rename to public/langs/ka_GE/mailmanspip.lang diff --git a/htdocs/langs/ka_GE/mails.lang b/public/langs/ka_GE/mails.lang similarity index 100% rename from htdocs/langs/ka_GE/mails.lang rename to public/langs/ka_GE/mails.lang diff --git a/htdocs/langs/ka_GE/main.lang b/public/langs/ka_GE/main.lang similarity index 100% rename from htdocs/langs/ka_GE/main.lang rename to public/langs/ka_GE/main.lang diff --git a/htdocs/langs/ka_GE/margins.lang b/public/langs/ka_GE/margins.lang similarity index 100% rename from htdocs/langs/ka_GE/margins.lang rename to public/langs/ka_GE/margins.lang diff --git a/htdocs/langs/ka_GE/members.lang b/public/langs/ka_GE/members.lang similarity index 100% rename from htdocs/langs/ka_GE/members.lang rename to public/langs/ka_GE/members.lang diff --git a/htdocs/langs/ka_GE/oauth.lang b/public/langs/ka_GE/oauth.lang similarity index 100% rename from htdocs/langs/ka_GE/oauth.lang rename to public/langs/ka_GE/oauth.lang diff --git a/htdocs/langs/ka_GE/opensurvey.lang b/public/langs/ka_GE/opensurvey.lang similarity index 100% rename from htdocs/langs/ka_GE/opensurvey.lang rename to public/langs/ka_GE/opensurvey.lang diff --git a/htdocs/langs/ka_GE/orders.lang b/public/langs/ka_GE/orders.lang similarity index 100% rename from htdocs/langs/ka_GE/orders.lang rename to public/langs/ka_GE/orders.lang diff --git a/htdocs/langs/ka_GE/other.lang b/public/langs/ka_GE/other.lang similarity index 100% rename from htdocs/langs/ka_GE/other.lang rename to public/langs/ka_GE/other.lang diff --git a/htdocs/langs/ka_GE/paybox.lang b/public/langs/ka_GE/paybox.lang similarity index 100% rename from htdocs/langs/ka_GE/paybox.lang rename to public/langs/ka_GE/paybox.lang diff --git a/htdocs/langs/ka_GE/paypal.lang b/public/langs/ka_GE/paypal.lang similarity index 100% rename from htdocs/langs/ka_GE/paypal.lang rename to public/langs/ka_GE/paypal.lang diff --git a/htdocs/langs/ka_GE/printing.lang b/public/langs/ka_GE/printing.lang similarity index 100% rename from htdocs/langs/ka_GE/printing.lang rename to public/langs/ka_GE/printing.lang diff --git a/htdocs/langs/ka_GE/productbatch.lang b/public/langs/ka_GE/productbatch.lang similarity index 100% rename from htdocs/langs/ka_GE/productbatch.lang rename to public/langs/ka_GE/productbatch.lang diff --git a/htdocs/langs/ka_GE/products.lang b/public/langs/ka_GE/products.lang similarity index 100% rename from htdocs/langs/ka_GE/products.lang rename to public/langs/ka_GE/products.lang diff --git a/htdocs/langs/ka_GE/projects.lang b/public/langs/ka_GE/projects.lang similarity index 100% rename from htdocs/langs/ka_GE/projects.lang rename to public/langs/ka_GE/projects.lang diff --git a/htdocs/langs/ka_GE/propal.lang b/public/langs/ka_GE/propal.lang similarity index 100% rename from htdocs/langs/ka_GE/propal.lang rename to public/langs/ka_GE/propal.lang diff --git a/htdocs/langs/ka_GE/receiptprinter.lang b/public/langs/ka_GE/receiptprinter.lang similarity index 100% rename from htdocs/langs/ka_GE/receiptprinter.lang rename to public/langs/ka_GE/receiptprinter.lang diff --git a/htdocs/langs/ka_GE/resource.lang b/public/langs/ka_GE/resource.lang similarity index 100% rename from htdocs/langs/ka_GE/resource.lang rename to public/langs/ka_GE/resource.lang diff --git a/htdocs/langs/ka_GE/salaries.lang b/public/langs/ka_GE/salaries.lang similarity index 100% rename from htdocs/langs/ka_GE/salaries.lang rename to public/langs/ka_GE/salaries.lang diff --git a/htdocs/langs/ka_GE/sendings.lang b/public/langs/ka_GE/sendings.lang similarity index 100% rename from htdocs/langs/ka_GE/sendings.lang rename to public/langs/ka_GE/sendings.lang diff --git a/htdocs/langs/ka_GE/sms.lang b/public/langs/ka_GE/sms.lang similarity index 100% rename from htdocs/langs/ka_GE/sms.lang rename to public/langs/ka_GE/sms.lang diff --git a/htdocs/langs/ka_GE/stocks.lang b/public/langs/ka_GE/stocks.lang similarity index 100% rename from htdocs/langs/ka_GE/stocks.lang rename to public/langs/ka_GE/stocks.lang diff --git a/htdocs/langs/ka_GE/supplier_proposal.lang b/public/langs/ka_GE/supplier_proposal.lang similarity index 100% rename from htdocs/langs/ka_GE/supplier_proposal.lang rename to public/langs/ka_GE/supplier_proposal.lang diff --git a/htdocs/langs/ka_GE/suppliers.lang b/public/langs/ka_GE/suppliers.lang similarity index 100% rename from htdocs/langs/ka_GE/suppliers.lang rename to public/langs/ka_GE/suppliers.lang diff --git a/htdocs/langs/ka_GE/trips.lang b/public/langs/ka_GE/trips.lang similarity index 100% rename from htdocs/langs/ka_GE/trips.lang rename to public/langs/ka_GE/trips.lang diff --git a/htdocs/langs/ka_GE/users.lang b/public/langs/ka_GE/users.lang similarity index 100% rename from htdocs/langs/ka_GE/users.lang rename to public/langs/ka_GE/users.lang diff --git a/htdocs/langs/ka_GE/website.lang b/public/langs/ka_GE/website.lang similarity index 100% rename from htdocs/langs/ka_GE/website.lang rename to public/langs/ka_GE/website.lang diff --git a/htdocs/langs/ka_GE/withdrawals.lang b/public/langs/ka_GE/withdrawals.lang similarity index 100% rename from htdocs/langs/ka_GE/withdrawals.lang rename to public/langs/ka_GE/withdrawals.lang diff --git a/htdocs/langs/ka_GE/workflow.lang b/public/langs/ka_GE/workflow.lang similarity index 100% rename from htdocs/langs/ka_GE/workflow.lang rename to public/langs/ka_GE/workflow.lang diff --git a/htdocs/langs/km_KH/accountancy.lang b/public/langs/km_KH/accountancy.lang similarity index 100% rename from htdocs/langs/km_KH/accountancy.lang rename to public/langs/km_KH/accountancy.lang diff --git a/htdocs/langs/km_KH/admin.lang b/public/langs/km_KH/admin.lang similarity index 100% rename from htdocs/langs/km_KH/admin.lang rename to public/langs/km_KH/admin.lang diff --git a/htdocs/langs/km_KH/agenda.lang b/public/langs/km_KH/agenda.lang similarity index 100% rename from htdocs/langs/km_KH/agenda.lang rename to public/langs/km_KH/agenda.lang diff --git a/htdocs/langs/km_KH/banks.lang b/public/langs/km_KH/banks.lang similarity index 100% rename from htdocs/langs/km_KH/banks.lang rename to public/langs/km_KH/banks.lang diff --git a/htdocs/langs/km_KH/bills.lang b/public/langs/km_KH/bills.lang similarity index 100% rename from htdocs/langs/km_KH/bills.lang rename to public/langs/km_KH/bills.lang diff --git a/htdocs/langs/km_KH/bookmarks.lang b/public/langs/km_KH/bookmarks.lang similarity index 100% rename from htdocs/langs/km_KH/bookmarks.lang rename to public/langs/km_KH/bookmarks.lang diff --git a/htdocs/langs/km_KH/boxes.lang b/public/langs/km_KH/boxes.lang similarity index 100% rename from htdocs/langs/km_KH/boxes.lang rename to public/langs/km_KH/boxes.lang diff --git a/htdocs/langs/km_KH/cashdesk.lang b/public/langs/km_KH/cashdesk.lang similarity index 100% rename from htdocs/langs/km_KH/cashdesk.lang rename to public/langs/km_KH/cashdesk.lang diff --git a/htdocs/langs/km_KH/categories.lang b/public/langs/km_KH/categories.lang similarity index 100% rename from htdocs/langs/km_KH/categories.lang rename to public/langs/km_KH/categories.lang diff --git a/htdocs/langs/km_KH/commercial.lang b/public/langs/km_KH/commercial.lang similarity index 100% rename from htdocs/langs/km_KH/commercial.lang rename to public/langs/km_KH/commercial.lang diff --git a/htdocs/langs/km_KH/companies.lang b/public/langs/km_KH/companies.lang similarity index 100% rename from htdocs/langs/km_KH/companies.lang rename to public/langs/km_KH/companies.lang diff --git a/htdocs/langs/km_KH/compta.lang b/public/langs/km_KH/compta.lang similarity index 100% rename from htdocs/langs/km_KH/compta.lang rename to public/langs/km_KH/compta.lang diff --git a/htdocs/langs/km_KH/contracts.lang b/public/langs/km_KH/contracts.lang similarity index 100% rename from htdocs/langs/km_KH/contracts.lang rename to public/langs/km_KH/contracts.lang diff --git a/htdocs/langs/km_KH/cron.lang b/public/langs/km_KH/cron.lang similarity index 100% rename from htdocs/langs/km_KH/cron.lang rename to public/langs/km_KH/cron.lang diff --git a/htdocs/langs/km_KH/deliveries.lang b/public/langs/km_KH/deliveries.lang similarity index 100% rename from htdocs/langs/km_KH/deliveries.lang rename to public/langs/km_KH/deliveries.lang diff --git a/htdocs/langs/km_KH/dict.lang b/public/langs/km_KH/dict.lang similarity index 100% rename from htdocs/langs/km_KH/dict.lang rename to public/langs/km_KH/dict.lang diff --git a/htdocs/langs/km_KH/donations.lang b/public/langs/km_KH/donations.lang similarity index 100% rename from htdocs/langs/km_KH/donations.lang rename to public/langs/km_KH/donations.lang diff --git a/htdocs/langs/km_KH/ecm.lang b/public/langs/km_KH/ecm.lang similarity index 100% rename from htdocs/langs/km_KH/ecm.lang rename to public/langs/km_KH/ecm.lang diff --git a/htdocs/langs/km_KH/errors.lang b/public/langs/km_KH/errors.lang similarity index 100% rename from htdocs/langs/km_KH/errors.lang rename to public/langs/km_KH/errors.lang diff --git a/htdocs/langs/km_KH/exports.lang b/public/langs/km_KH/exports.lang similarity index 100% rename from htdocs/langs/km_KH/exports.lang rename to public/langs/km_KH/exports.lang diff --git a/htdocs/langs/km_KH/externalsite.lang b/public/langs/km_KH/externalsite.lang similarity index 100% rename from htdocs/langs/km_KH/externalsite.lang rename to public/langs/km_KH/externalsite.lang diff --git a/htdocs/langs/km_KH/ftp.lang b/public/langs/km_KH/ftp.lang similarity index 100% rename from htdocs/langs/km_KH/ftp.lang rename to public/langs/km_KH/ftp.lang diff --git a/htdocs/langs/km_KH/help.lang b/public/langs/km_KH/help.lang similarity index 100% rename from htdocs/langs/km_KH/help.lang rename to public/langs/km_KH/help.lang diff --git a/htdocs/langs/km_KH/holiday.lang b/public/langs/km_KH/holiday.lang similarity index 100% rename from htdocs/langs/km_KH/holiday.lang rename to public/langs/km_KH/holiday.lang diff --git a/htdocs/langs/km_KH/hrm.lang b/public/langs/km_KH/hrm.lang similarity index 100% rename from htdocs/langs/km_KH/hrm.lang rename to public/langs/km_KH/hrm.lang diff --git a/htdocs/langs/km_KH/incoterm.lang b/public/langs/km_KH/incoterm.lang similarity index 100% rename from htdocs/langs/km_KH/incoterm.lang rename to public/langs/km_KH/incoterm.lang diff --git a/htdocs/langs/km_KH/install.lang b/public/langs/km_KH/install.lang similarity index 100% rename from htdocs/langs/km_KH/install.lang rename to public/langs/km_KH/install.lang diff --git a/htdocs/langs/km_KH/interventions.lang b/public/langs/km_KH/interventions.lang similarity index 100% rename from htdocs/langs/km_KH/interventions.lang rename to public/langs/km_KH/interventions.lang diff --git a/htdocs/langs/km_KH/languages.lang b/public/langs/km_KH/languages.lang similarity index 100% rename from htdocs/langs/km_KH/languages.lang rename to public/langs/km_KH/languages.lang diff --git a/htdocs/langs/km_KH/ldap.lang b/public/langs/km_KH/ldap.lang similarity index 100% rename from htdocs/langs/km_KH/ldap.lang rename to public/langs/km_KH/ldap.lang diff --git a/htdocs/langs/km_KH/link.lang b/public/langs/km_KH/link.lang similarity index 100% rename from htdocs/langs/km_KH/link.lang rename to public/langs/km_KH/link.lang diff --git a/htdocs/langs/km_KH/loan.lang b/public/langs/km_KH/loan.lang similarity index 100% rename from htdocs/langs/km_KH/loan.lang rename to public/langs/km_KH/loan.lang diff --git a/htdocs/langs/km_KH/mailmanspip.lang b/public/langs/km_KH/mailmanspip.lang similarity index 100% rename from htdocs/langs/km_KH/mailmanspip.lang rename to public/langs/km_KH/mailmanspip.lang diff --git a/htdocs/langs/km_KH/mails.lang b/public/langs/km_KH/mails.lang similarity index 100% rename from htdocs/langs/km_KH/mails.lang rename to public/langs/km_KH/mails.lang diff --git a/htdocs/langs/km_KH/main.lang b/public/langs/km_KH/main.lang similarity index 100% rename from htdocs/langs/km_KH/main.lang rename to public/langs/km_KH/main.lang diff --git a/htdocs/langs/km_KH/margins.lang b/public/langs/km_KH/margins.lang similarity index 100% rename from htdocs/langs/km_KH/margins.lang rename to public/langs/km_KH/margins.lang diff --git a/htdocs/langs/km_KH/members.lang b/public/langs/km_KH/members.lang similarity index 100% rename from htdocs/langs/km_KH/members.lang rename to public/langs/km_KH/members.lang diff --git a/htdocs/langs/km_KH/oauth.lang b/public/langs/km_KH/oauth.lang similarity index 100% rename from htdocs/langs/km_KH/oauth.lang rename to public/langs/km_KH/oauth.lang diff --git a/htdocs/langs/km_KH/opensurvey.lang b/public/langs/km_KH/opensurvey.lang similarity index 100% rename from htdocs/langs/km_KH/opensurvey.lang rename to public/langs/km_KH/opensurvey.lang diff --git a/htdocs/langs/km_KH/orders.lang b/public/langs/km_KH/orders.lang similarity index 100% rename from htdocs/langs/km_KH/orders.lang rename to public/langs/km_KH/orders.lang diff --git a/htdocs/langs/km_KH/other.lang b/public/langs/km_KH/other.lang similarity index 100% rename from htdocs/langs/km_KH/other.lang rename to public/langs/km_KH/other.lang diff --git a/htdocs/langs/km_KH/paybox.lang b/public/langs/km_KH/paybox.lang similarity index 100% rename from htdocs/langs/km_KH/paybox.lang rename to public/langs/km_KH/paybox.lang diff --git a/htdocs/langs/km_KH/paypal.lang b/public/langs/km_KH/paypal.lang similarity index 100% rename from htdocs/langs/km_KH/paypal.lang rename to public/langs/km_KH/paypal.lang diff --git a/htdocs/langs/km_KH/printing.lang b/public/langs/km_KH/printing.lang similarity index 100% rename from htdocs/langs/km_KH/printing.lang rename to public/langs/km_KH/printing.lang diff --git a/htdocs/langs/km_KH/productbatch.lang b/public/langs/km_KH/productbatch.lang similarity index 100% rename from htdocs/langs/km_KH/productbatch.lang rename to public/langs/km_KH/productbatch.lang diff --git a/htdocs/langs/km_KH/products.lang b/public/langs/km_KH/products.lang similarity index 100% rename from htdocs/langs/km_KH/products.lang rename to public/langs/km_KH/products.lang diff --git a/htdocs/langs/km_KH/projects.lang b/public/langs/km_KH/projects.lang similarity index 100% rename from htdocs/langs/km_KH/projects.lang rename to public/langs/km_KH/projects.lang diff --git a/htdocs/langs/km_KH/propal.lang b/public/langs/km_KH/propal.lang similarity index 100% rename from htdocs/langs/km_KH/propal.lang rename to public/langs/km_KH/propal.lang diff --git a/htdocs/langs/km_KH/receiptprinter.lang b/public/langs/km_KH/receiptprinter.lang similarity index 100% rename from htdocs/langs/km_KH/receiptprinter.lang rename to public/langs/km_KH/receiptprinter.lang diff --git a/htdocs/langs/km_KH/resource.lang b/public/langs/km_KH/resource.lang similarity index 100% rename from htdocs/langs/km_KH/resource.lang rename to public/langs/km_KH/resource.lang diff --git a/htdocs/langs/km_KH/salaries.lang b/public/langs/km_KH/salaries.lang similarity index 100% rename from htdocs/langs/km_KH/salaries.lang rename to public/langs/km_KH/salaries.lang diff --git a/htdocs/langs/km_KH/sendings.lang b/public/langs/km_KH/sendings.lang similarity index 100% rename from htdocs/langs/km_KH/sendings.lang rename to public/langs/km_KH/sendings.lang diff --git a/htdocs/langs/km_KH/sms.lang b/public/langs/km_KH/sms.lang similarity index 100% rename from htdocs/langs/km_KH/sms.lang rename to public/langs/km_KH/sms.lang diff --git a/htdocs/langs/km_KH/stocks.lang b/public/langs/km_KH/stocks.lang similarity index 100% rename from htdocs/langs/km_KH/stocks.lang rename to public/langs/km_KH/stocks.lang diff --git a/htdocs/langs/km_KH/supplier_proposal.lang b/public/langs/km_KH/supplier_proposal.lang similarity index 100% rename from htdocs/langs/km_KH/supplier_proposal.lang rename to public/langs/km_KH/supplier_proposal.lang diff --git a/htdocs/langs/km_KH/suppliers.lang b/public/langs/km_KH/suppliers.lang similarity index 100% rename from htdocs/langs/km_KH/suppliers.lang rename to public/langs/km_KH/suppliers.lang diff --git a/htdocs/langs/km_KH/trips.lang b/public/langs/km_KH/trips.lang similarity index 100% rename from htdocs/langs/km_KH/trips.lang rename to public/langs/km_KH/trips.lang diff --git a/htdocs/langs/km_KH/users.lang b/public/langs/km_KH/users.lang similarity index 100% rename from htdocs/langs/km_KH/users.lang rename to public/langs/km_KH/users.lang diff --git a/htdocs/langs/km_KH/website.lang b/public/langs/km_KH/website.lang similarity index 100% rename from htdocs/langs/km_KH/website.lang rename to public/langs/km_KH/website.lang diff --git a/htdocs/langs/km_KH/withdrawals.lang b/public/langs/km_KH/withdrawals.lang similarity index 100% rename from htdocs/langs/km_KH/withdrawals.lang rename to public/langs/km_KH/withdrawals.lang diff --git a/htdocs/langs/km_KH/workflow.lang b/public/langs/km_KH/workflow.lang similarity index 100% rename from htdocs/langs/km_KH/workflow.lang rename to public/langs/km_KH/workflow.lang diff --git a/htdocs/langs/kn_IN/accountancy.lang b/public/langs/kn_IN/accountancy.lang similarity index 100% rename from htdocs/langs/kn_IN/accountancy.lang rename to public/langs/kn_IN/accountancy.lang diff --git a/htdocs/langs/kn_IN/admin.lang b/public/langs/kn_IN/admin.lang similarity index 100% rename from htdocs/langs/kn_IN/admin.lang rename to public/langs/kn_IN/admin.lang diff --git a/htdocs/langs/kn_IN/agenda.lang b/public/langs/kn_IN/agenda.lang similarity index 100% rename from htdocs/langs/kn_IN/agenda.lang rename to public/langs/kn_IN/agenda.lang diff --git a/htdocs/langs/kn_IN/banks.lang b/public/langs/kn_IN/banks.lang similarity index 100% rename from htdocs/langs/kn_IN/banks.lang rename to public/langs/kn_IN/banks.lang diff --git a/htdocs/langs/kn_IN/bills.lang b/public/langs/kn_IN/bills.lang similarity index 100% rename from htdocs/langs/kn_IN/bills.lang rename to public/langs/kn_IN/bills.lang diff --git a/htdocs/langs/kn_IN/bookmarks.lang b/public/langs/kn_IN/bookmarks.lang similarity index 100% rename from htdocs/langs/kn_IN/bookmarks.lang rename to public/langs/kn_IN/bookmarks.lang diff --git a/htdocs/langs/kn_IN/boxes.lang b/public/langs/kn_IN/boxes.lang similarity index 100% rename from htdocs/langs/kn_IN/boxes.lang rename to public/langs/kn_IN/boxes.lang diff --git a/htdocs/langs/kn_IN/cashdesk.lang b/public/langs/kn_IN/cashdesk.lang similarity index 100% rename from htdocs/langs/kn_IN/cashdesk.lang rename to public/langs/kn_IN/cashdesk.lang diff --git a/htdocs/langs/kn_IN/categories.lang b/public/langs/kn_IN/categories.lang similarity index 100% rename from htdocs/langs/kn_IN/categories.lang rename to public/langs/kn_IN/categories.lang diff --git a/htdocs/langs/kn_IN/commercial.lang b/public/langs/kn_IN/commercial.lang similarity index 100% rename from htdocs/langs/kn_IN/commercial.lang rename to public/langs/kn_IN/commercial.lang diff --git a/htdocs/langs/kn_IN/companies.lang b/public/langs/kn_IN/companies.lang similarity index 100% rename from htdocs/langs/kn_IN/companies.lang rename to public/langs/kn_IN/companies.lang diff --git a/htdocs/langs/kn_IN/compta.lang b/public/langs/kn_IN/compta.lang similarity index 100% rename from htdocs/langs/kn_IN/compta.lang rename to public/langs/kn_IN/compta.lang diff --git a/htdocs/langs/kn_IN/contracts.lang b/public/langs/kn_IN/contracts.lang similarity index 100% rename from htdocs/langs/kn_IN/contracts.lang rename to public/langs/kn_IN/contracts.lang diff --git a/htdocs/langs/kn_IN/cron.lang b/public/langs/kn_IN/cron.lang similarity index 100% rename from htdocs/langs/kn_IN/cron.lang rename to public/langs/kn_IN/cron.lang diff --git a/htdocs/langs/kn_IN/deliveries.lang b/public/langs/kn_IN/deliveries.lang similarity index 100% rename from htdocs/langs/kn_IN/deliveries.lang rename to public/langs/kn_IN/deliveries.lang diff --git a/htdocs/langs/kn_IN/dict.lang b/public/langs/kn_IN/dict.lang similarity index 100% rename from htdocs/langs/kn_IN/dict.lang rename to public/langs/kn_IN/dict.lang diff --git a/htdocs/langs/kn_IN/donations.lang b/public/langs/kn_IN/donations.lang similarity index 100% rename from htdocs/langs/kn_IN/donations.lang rename to public/langs/kn_IN/donations.lang diff --git a/htdocs/langs/kn_IN/ecm.lang b/public/langs/kn_IN/ecm.lang similarity index 100% rename from htdocs/langs/kn_IN/ecm.lang rename to public/langs/kn_IN/ecm.lang diff --git a/htdocs/langs/kn_IN/errors.lang b/public/langs/kn_IN/errors.lang similarity index 100% rename from htdocs/langs/kn_IN/errors.lang rename to public/langs/kn_IN/errors.lang diff --git a/htdocs/langs/kn_IN/exports.lang b/public/langs/kn_IN/exports.lang similarity index 100% rename from htdocs/langs/kn_IN/exports.lang rename to public/langs/kn_IN/exports.lang diff --git a/htdocs/langs/kn_IN/externalsite.lang b/public/langs/kn_IN/externalsite.lang similarity index 100% rename from htdocs/langs/kn_IN/externalsite.lang rename to public/langs/kn_IN/externalsite.lang diff --git a/htdocs/langs/kn_IN/ftp.lang b/public/langs/kn_IN/ftp.lang similarity index 100% rename from htdocs/langs/kn_IN/ftp.lang rename to public/langs/kn_IN/ftp.lang diff --git a/htdocs/langs/kn_IN/help.lang b/public/langs/kn_IN/help.lang similarity index 100% rename from htdocs/langs/kn_IN/help.lang rename to public/langs/kn_IN/help.lang diff --git a/htdocs/langs/kn_IN/holiday.lang b/public/langs/kn_IN/holiday.lang similarity index 100% rename from htdocs/langs/kn_IN/holiday.lang rename to public/langs/kn_IN/holiday.lang diff --git a/htdocs/langs/kn_IN/hrm.lang b/public/langs/kn_IN/hrm.lang similarity index 100% rename from htdocs/langs/kn_IN/hrm.lang rename to public/langs/kn_IN/hrm.lang diff --git a/htdocs/langs/kn_IN/incoterm.lang b/public/langs/kn_IN/incoterm.lang similarity index 100% rename from htdocs/langs/kn_IN/incoterm.lang rename to public/langs/kn_IN/incoterm.lang diff --git a/htdocs/langs/kn_IN/install.lang b/public/langs/kn_IN/install.lang similarity index 100% rename from htdocs/langs/kn_IN/install.lang rename to public/langs/kn_IN/install.lang diff --git a/htdocs/langs/kn_IN/interventions.lang b/public/langs/kn_IN/interventions.lang similarity index 100% rename from htdocs/langs/kn_IN/interventions.lang rename to public/langs/kn_IN/interventions.lang diff --git a/htdocs/langs/kn_IN/languages.lang b/public/langs/kn_IN/languages.lang similarity index 100% rename from htdocs/langs/kn_IN/languages.lang rename to public/langs/kn_IN/languages.lang diff --git a/htdocs/langs/kn_IN/ldap.lang b/public/langs/kn_IN/ldap.lang similarity index 100% rename from htdocs/langs/kn_IN/ldap.lang rename to public/langs/kn_IN/ldap.lang diff --git a/htdocs/langs/kn_IN/link.lang b/public/langs/kn_IN/link.lang similarity index 100% rename from htdocs/langs/kn_IN/link.lang rename to public/langs/kn_IN/link.lang diff --git a/htdocs/langs/kn_IN/loan.lang b/public/langs/kn_IN/loan.lang similarity index 100% rename from htdocs/langs/kn_IN/loan.lang rename to public/langs/kn_IN/loan.lang diff --git a/htdocs/langs/kn_IN/mailmanspip.lang b/public/langs/kn_IN/mailmanspip.lang similarity index 100% rename from htdocs/langs/kn_IN/mailmanspip.lang rename to public/langs/kn_IN/mailmanspip.lang diff --git a/htdocs/langs/kn_IN/mails.lang b/public/langs/kn_IN/mails.lang similarity index 100% rename from htdocs/langs/kn_IN/mails.lang rename to public/langs/kn_IN/mails.lang diff --git a/htdocs/langs/kn_IN/main.lang b/public/langs/kn_IN/main.lang similarity index 100% rename from htdocs/langs/kn_IN/main.lang rename to public/langs/kn_IN/main.lang diff --git a/htdocs/langs/kn_IN/margins.lang b/public/langs/kn_IN/margins.lang similarity index 100% rename from htdocs/langs/kn_IN/margins.lang rename to public/langs/kn_IN/margins.lang diff --git a/htdocs/langs/kn_IN/members.lang b/public/langs/kn_IN/members.lang similarity index 100% rename from htdocs/langs/kn_IN/members.lang rename to public/langs/kn_IN/members.lang diff --git a/htdocs/langs/kn_IN/oauth.lang b/public/langs/kn_IN/oauth.lang similarity index 100% rename from htdocs/langs/kn_IN/oauth.lang rename to public/langs/kn_IN/oauth.lang diff --git a/htdocs/langs/kn_IN/opensurvey.lang b/public/langs/kn_IN/opensurvey.lang similarity index 100% rename from htdocs/langs/kn_IN/opensurvey.lang rename to public/langs/kn_IN/opensurvey.lang diff --git a/htdocs/langs/kn_IN/orders.lang b/public/langs/kn_IN/orders.lang similarity index 100% rename from htdocs/langs/kn_IN/orders.lang rename to public/langs/kn_IN/orders.lang diff --git a/htdocs/langs/kn_IN/other.lang b/public/langs/kn_IN/other.lang similarity index 100% rename from htdocs/langs/kn_IN/other.lang rename to public/langs/kn_IN/other.lang diff --git a/htdocs/langs/kn_IN/paybox.lang b/public/langs/kn_IN/paybox.lang similarity index 100% rename from htdocs/langs/kn_IN/paybox.lang rename to public/langs/kn_IN/paybox.lang diff --git a/htdocs/langs/kn_IN/paypal.lang b/public/langs/kn_IN/paypal.lang similarity index 100% rename from htdocs/langs/kn_IN/paypal.lang rename to public/langs/kn_IN/paypal.lang diff --git a/htdocs/langs/kn_IN/printing.lang b/public/langs/kn_IN/printing.lang similarity index 100% rename from htdocs/langs/kn_IN/printing.lang rename to public/langs/kn_IN/printing.lang diff --git a/htdocs/langs/kn_IN/productbatch.lang b/public/langs/kn_IN/productbatch.lang similarity index 100% rename from htdocs/langs/kn_IN/productbatch.lang rename to public/langs/kn_IN/productbatch.lang diff --git a/htdocs/langs/kn_IN/products.lang b/public/langs/kn_IN/products.lang similarity index 100% rename from htdocs/langs/kn_IN/products.lang rename to public/langs/kn_IN/products.lang diff --git a/htdocs/langs/kn_IN/projects.lang b/public/langs/kn_IN/projects.lang similarity index 100% rename from htdocs/langs/kn_IN/projects.lang rename to public/langs/kn_IN/projects.lang diff --git a/htdocs/langs/kn_IN/propal.lang b/public/langs/kn_IN/propal.lang similarity index 100% rename from htdocs/langs/kn_IN/propal.lang rename to public/langs/kn_IN/propal.lang diff --git a/htdocs/langs/kn_IN/receiptprinter.lang b/public/langs/kn_IN/receiptprinter.lang similarity index 100% rename from htdocs/langs/kn_IN/receiptprinter.lang rename to public/langs/kn_IN/receiptprinter.lang diff --git a/htdocs/langs/kn_IN/resource.lang b/public/langs/kn_IN/resource.lang similarity index 100% rename from htdocs/langs/kn_IN/resource.lang rename to public/langs/kn_IN/resource.lang diff --git a/htdocs/langs/kn_IN/salaries.lang b/public/langs/kn_IN/salaries.lang similarity index 100% rename from htdocs/langs/kn_IN/salaries.lang rename to public/langs/kn_IN/salaries.lang diff --git a/htdocs/langs/kn_IN/sendings.lang b/public/langs/kn_IN/sendings.lang similarity index 100% rename from htdocs/langs/kn_IN/sendings.lang rename to public/langs/kn_IN/sendings.lang diff --git a/htdocs/langs/kn_IN/sms.lang b/public/langs/kn_IN/sms.lang similarity index 100% rename from htdocs/langs/kn_IN/sms.lang rename to public/langs/kn_IN/sms.lang diff --git a/htdocs/langs/kn_IN/stocks.lang b/public/langs/kn_IN/stocks.lang similarity index 100% rename from htdocs/langs/kn_IN/stocks.lang rename to public/langs/kn_IN/stocks.lang diff --git a/htdocs/langs/kn_IN/supplier_proposal.lang b/public/langs/kn_IN/supplier_proposal.lang similarity index 100% rename from htdocs/langs/kn_IN/supplier_proposal.lang rename to public/langs/kn_IN/supplier_proposal.lang diff --git a/htdocs/langs/kn_IN/suppliers.lang b/public/langs/kn_IN/suppliers.lang similarity index 100% rename from htdocs/langs/kn_IN/suppliers.lang rename to public/langs/kn_IN/suppliers.lang diff --git a/htdocs/langs/kn_IN/trips.lang b/public/langs/kn_IN/trips.lang similarity index 100% rename from htdocs/langs/kn_IN/trips.lang rename to public/langs/kn_IN/trips.lang diff --git a/htdocs/langs/kn_IN/users.lang b/public/langs/kn_IN/users.lang similarity index 100% rename from htdocs/langs/kn_IN/users.lang rename to public/langs/kn_IN/users.lang diff --git a/htdocs/langs/kn_IN/website.lang b/public/langs/kn_IN/website.lang similarity index 100% rename from htdocs/langs/kn_IN/website.lang rename to public/langs/kn_IN/website.lang diff --git a/htdocs/langs/kn_IN/withdrawals.lang b/public/langs/kn_IN/withdrawals.lang similarity index 100% rename from htdocs/langs/kn_IN/withdrawals.lang rename to public/langs/kn_IN/withdrawals.lang diff --git a/htdocs/langs/kn_IN/workflow.lang b/public/langs/kn_IN/workflow.lang similarity index 100% rename from htdocs/langs/kn_IN/workflow.lang rename to public/langs/kn_IN/workflow.lang diff --git a/htdocs/langs/ko_KR/accountancy.lang b/public/langs/ko_KR/accountancy.lang similarity index 100% rename from htdocs/langs/ko_KR/accountancy.lang rename to public/langs/ko_KR/accountancy.lang diff --git a/htdocs/langs/ko_KR/admin.lang b/public/langs/ko_KR/admin.lang similarity index 100% rename from htdocs/langs/ko_KR/admin.lang rename to public/langs/ko_KR/admin.lang diff --git a/htdocs/langs/ko_KR/agenda.lang b/public/langs/ko_KR/agenda.lang similarity index 100% rename from htdocs/langs/ko_KR/agenda.lang rename to public/langs/ko_KR/agenda.lang diff --git a/htdocs/langs/ko_KR/banks.lang b/public/langs/ko_KR/banks.lang similarity index 100% rename from htdocs/langs/ko_KR/banks.lang rename to public/langs/ko_KR/banks.lang diff --git a/htdocs/langs/ko_KR/bills.lang b/public/langs/ko_KR/bills.lang similarity index 100% rename from htdocs/langs/ko_KR/bills.lang rename to public/langs/ko_KR/bills.lang diff --git a/htdocs/langs/ko_KR/bookmarks.lang b/public/langs/ko_KR/bookmarks.lang similarity index 100% rename from htdocs/langs/ko_KR/bookmarks.lang rename to public/langs/ko_KR/bookmarks.lang diff --git a/htdocs/langs/ko_KR/boxes.lang b/public/langs/ko_KR/boxes.lang similarity index 100% rename from htdocs/langs/ko_KR/boxes.lang rename to public/langs/ko_KR/boxes.lang diff --git a/htdocs/langs/ko_KR/cashdesk.lang b/public/langs/ko_KR/cashdesk.lang similarity index 100% rename from htdocs/langs/ko_KR/cashdesk.lang rename to public/langs/ko_KR/cashdesk.lang diff --git a/htdocs/langs/ko_KR/categories.lang b/public/langs/ko_KR/categories.lang similarity index 100% rename from htdocs/langs/ko_KR/categories.lang rename to public/langs/ko_KR/categories.lang diff --git a/htdocs/langs/ko_KR/commercial.lang b/public/langs/ko_KR/commercial.lang similarity index 100% rename from htdocs/langs/ko_KR/commercial.lang rename to public/langs/ko_KR/commercial.lang diff --git a/htdocs/langs/ko_KR/companies.lang b/public/langs/ko_KR/companies.lang similarity index 100% rename from htdocs/langs/ko_KR/companies.lang rename to public/langs/ko_KR/companies.lang diff --git a/htdocs/langs/ko_KR/compta.lang b/public/langs/ko_KR/compta.lang similarity index 100% rename from htdocs/langs/ko_KR/compta.lang rename to public/langs/ko_KR/compta.lang diff --git a/htdocs/langs/ko_KR/contracts.lang b/public/langs/ko_KR/contracts.lang similarity index 100% rename from htdocs/langs/ko_KR/contracts.lang rename to public/langs/ko_KR/contracts.lang diff --git a/htdocs/langs/ko_KR/cron.lang b/public/langs/ko_KR/cron.lang similarity index 100% rename from htdocs/langs/ko_KR/cron.lang rename to public/langs/ko_KR/cron.lang diff --git a/htdocs/langs/ko_KR/deliveries.lang b/public/langs/ko_KR/deliveries.lang similarity index 100% rename from htdocs/langs/ko_KR/deliveries.lang rename to public/langs/ko_KR/deliveries.lang diff --git a/htdocs/langs/ko_KR/dict.lang b/public/langs/ko_KR/dict.lang similarity index 100% rename from htdocs/langs/ko_KR/dict.lang rename to public/langs/ko_KR/dict.lang diff --git a/htdocs/langs/ko_KR/donations.lang b/public/langs/ko_KR/donations.lang similarity index 100% rename from htdocs/langs/ko_KR/donations.lang rename to public/langs/ko_KR/donations.lang diff --git a/htdocs/langs/ko_KR/ecm.lang b/public/langs/ko_KR/ecm.lang similarity index 100% rename from htdocs/langs/ko_KR/ecm.lang rename to public/langs/ko_KR/ecm.lang diff --git a/htdocs/langs/ko_KR/errors.lang b/public/langs/ko_KR/errors.lang similarity index 100% rename from htdocs/langs/ko_KR/errors.lang rename to public/langs/ko_KR/errors.lang diff --git a/htdocs/langs/ko_KR/exports.lang b/public/langs/ko_KR/exports.lang similarity index 100% rename from htdocs/langs/ko_KR/exports.lang rename to public/langs/ko_KR/exports.lang diff --git a/htdocs/langs/ko_KR/externalsite.lang b/public/langs/ko_KR/externalsite.lang similarity index 100% rename from htdocs/langs/ko_KR/externalsite.lang rename to public/langs/ko_KR/externalsite.lang diff --git a/htdocs/langs/ko_KR/ftp.lang b/public/langs/ko_KR/ftp.lang similarity index 100% rename from htdocs/langs/ko_KR/ftp.lang rename to public/langs/ko_KR/ftp.lang diff --git a/htdocs/langs/ko_KR/help.lang b/public/langs/ko_KR/help.lang similarity index 100% rename from htdocs/langs/ko_KR/help.lang rename to public/langs/ko_KR/help.lang diff --git a/htdocs/langs/ko_KR/holiday.lang b/public/langs/ko_KR/holiday.lang similarity index 100% rename from htdocs/langs/ko_KR/holiday.lang rename to public/langs/ko_KR/holiday.lang diff --git a/htdocs/langs/ko_KR/hrm.lang b/public/langs/ko_KR/hrm.lang similarity index 100% rename from htdocs/langs/ko_KR/hrm.lang rename to public/langs/ko_KR/hrm.lang diff --git a/htdocs/langs/ko_KR/incoterm.lang b/public/langs/ko_KR/incoterm.lang similarity index 100% rename from htdocs/langs/ko_KR/incoterm.lang rename to public/langs/ko_KR/incoterm.lang diff --git a/htdocs/langs/ko_KR/install.lang b/public/langs/ko_KR/install.lang similarity index 100% rename from htdocs/langs/ko_KR/install.lang rename to public/langs/ko_KR/install.lang diff --git a/htdocs/langs/ko_KR/interventions.lang b/public/langs/ko_KR/interventions.lang similarity index 100% rename from htdocs/langs/ko_KR/interventions.lang rename to public/langs/ko_KR/interventions.lang diff --git a/htdocs/langs/ko_KR/languages.lang b/public/langs/ko_KR/languages.lang similarity index 100% rename from htdocs/langs/ko_KR/languages.lang rename to public/langs/ko_KR/languages.lang diff --git a/htdocs/langs/ko_KR/ldap.lang b/public/langs/ko_KR/ldap.lang similarity index 100% rename from htdocs/langs/ko_KR/ldap.lang rename to public/langs/ko_KR/ldap.lang diff --git a/htdocs/langs/ko_KR/link.lang b/public/langs/ko_KR/link.lang similarity index 100% rename from htdocs/langs/ko_KR/link.lang rename to public/langs/ko_KR/link.lang diff --git a/htdocs/langs/ko_KR/loan.lang b/public/langs/ko_KR/loan.lang similarity index 100% rename from htdocs/langs/ko_KR/loan.lang rename to public/langs/ko_KR/loan.lang diff --git a/htdocs/langs/ko_KR/mailmanspip.lang b/public/langs/ko_KR/mailmanspip.lang similarity index 100% rename from htdocs/langs/ko_KR/mailmanspip.lang rename to public/langs/ko_KR/mailmanspip.lang diff --git a/htdocs/langs/ko_KR/mails.lang b/public/langs/ko_KR/mails.lang similarity index 100% rename from htdocs/langs/ko_KR/mails.lang rename to public/langs/ko_KR/mails.lang diff --git a/htdocs/langs/ko_KR/main.lang b/public/langs/ko_KR/main.lang similarity index 100% rename from htdocs/langs/ko_KR/main.lang rename to public/langs/ko_KR/main.lang diff --git a/htdocs/langs/ko_KR/margins.lang b/public/langs/ko_KR/margins.lang similarity index 100% rename from htdocs/langs/ko_KR/margins.lang rename to public/langs/ko_KR/margins.lang diff --git a/htdocs/langs/ko_KR/members.lang b/public/langs/ko_KR/members.lang similarity index 100% rename from htdocs/langs/ko_KR/members.lang rename to public/langs/ko_KR/members.lang diff --git a/htdocs/langs/ko_KR/oauth.lang b/public/langs/ko_KR/oauth.lang similarity index 100% rename from htdocs/langs/ko_KR/oauth.lang rename to public/langs/ko_KR/oauth.lang diff --git a/htdocs/langs/ko_KR/opensurvey.lang b/public/langs/ko_KR/opensurvey.lang similarity index 100% rename from htdocs/langs/ko_KR/opensurvey.lang rename to public/langs/ko_KR/opensurvey.lang diff --git a/htdocs/langs/ko_KR/orders.lang b/public/langs/ko_KR/orders.lang similarity index 100% rename from htdocs/langs/ko_KR/orders.lang rename to public/langs/ko_KR/orders.lang diff --git a/htdocs/langs/ko_KR/other.lang b/public/langs/ko_KR/other.lang similarity index 100% rename from htdocs/langs/ko_KR/other.lang rename to public/langs/ko_KR/other.lang diff --git a/htdocs/langs/ko_KR/paybox.lang b/public/langs/ko_KR/paybox.lang similarity index 100% rename from htdocs/langs/ko_KR/paybox.lang rename to public/langs/ko_KR/paybox.lang diff --git a/htdocs/langs/ko_KR/paypal.lang b/public/langs/ko_KR/paypal.lang similarity index 100% rename from htdocs/langs/ko_KR/paypal.lang rename to public/langs/ko_KR/paypal.lang diff --git a/htdocs/langs/ko_KR/printing.lang b/public/langs/ko_KR/printing.lang similarity index 100% rename from htdocs/langs/ko_KR/printing.lang rename to public/langs/ko_KR/printing.lang diff --git a/htdocs/langs/ko_KR/productbatch.lang b/public/langs/ko_KR/productbatch.lang similarity index 100% rename from htdocs/langs/ko_KR/productbatch.lang rename to public/langs/ko_KR/productbatch.lang diff --git a/htdocs/langs/ko_KR/products.lang b/public/langs/ko_KR/products.lang similarity index 100% rename from htdocs/langs/ko_KR/products.lang rename to public/langs/ko_KR/products.lang diff --git a/htdocs/langs/ko_KR/projects.lang b/public/langs/ko_KR/projects.lang similarity index 100% rename from htdocs/langs/ko_KR/projects.lang rename to public/langs/ko_KR/projects.lang diff --git a/htdocs/langs/ko_KR/propal.lang b/public/langs/ko_KR/propal.lang similarity index 100% rename from htdocs/langs/ko_KR/propal.lang rename to public/langs/ko_KR/propal.lang diff --git a/htdocs/langs/ko_KR/receiptprinter.lang b/public/langs/ko_KR/receiptprinter.lang similarity index 100% rename from htdocs/langs/ko_KR/receiptprinter.lang rename to public/langs/ko_KR/receiptprinter.lang diff --git a/htdocs/langs/ko_KR/resource.lang b/public/langs/ko_KR/resource.lang similarity index 100% rename from htdocs/langs/ko_KR/resource.lang rename to public/langs/ko_KR/resource.lang diff --git a/htdocs/langs/ko_KR/salaries.lang b/public/langs/ko_KR/salaries.lang similarity index 100% rename from htdocs/langs/ko_KR/salaries.lang rename to public/langs/ko_KR/salaries.lang diff --git a/htdocs/langs/ko_KR/sendings.lang b/public/langs/ko_KR/sendings.lang similarity index 100% rename from htdocs/langs/ko_KR/sendings.lang rename to public/langs/ko_KR/sendings.lang diff --git a/htdocs/langs/ko_KR/sms.lang b/public/langs/ko_KR/sms.lang similarity index 100% rename from htdocs/langs/ko_KR/sms.lang rename to public/langs/ko_KR/sms.lang diff --git a/htdocs/langs/ko_KR/stocks.lang b/public/langs/ko_KR/stocks.lang similarity index 100% rename from htdocs/langs/ko_KR/stocks.lang rename to public/langs/ko_KR/stocks.lang diff --git a/htdocs/langs/ko_KR/supplier_proposal.lang b/public/langs/ko_KR/supplier_proposal.lang similarity index 100% rename from htdocs/langs/ko_KR/supplier_proposal.lang rename to public/langs/ko_KR/supplier_proposal.lang diff --git a/htdocs/langs/ko_KR/suppliers.lang b/public/langs/ko_KR/suppliers.lang similarity index 100% rename from htdocs/langs/ko_KR/suppliers.lang rename to public/langs/ko_KR/suppliers.lang diff --git a/htdocs/langs/ko_KR/trips.lang b/public/langs/ko_KR/trips.lang similarity index 100% rename from htdocs/langs/ko_KR/trips.lang rename to public/langs/ko_KR/trips.lang diff --git a/htdocs/langs/ko_KR/users.lang b/public/langs/ko_KR/users.lang similarity index 100% rename from htdocs/langs/ko_KR/users.lang rename to public/langs/ko_KR/users.lang diff --git a/htdocs/langs/ko_KR/website.lang b/public/langs/ko_KR/website.lang similarity index 100% rename from htdocs/langs/ko_KR/website.lang rename to public/langs/ko_KR/website.lang diff --git a/htdocs/langs/ko_KR/withdrawals.lang b/public/langs/ko_KR/withdrawals.lang similarity index 100% rename from htdocs/langs/ko_KR/withdrawals.lang rename to public/langs/ko_KR/withdrawals.lang diff --git a/htdocs/langs/ko_KR/workflow.lang b/public/langs/ko_KR/workflow.lang similarity index 100% rename from htdocs/langs/ko_KR/workflow.lang rename to public/langs/ko_KR/workflow.lang diff --git a/htdocs/langs/lo_LA/accountancy.lang b/public/langs/lo_LA/accountancy.lang similarity index 100% rename from htdocs/langs/lo_LA/accountancy.lang rename to public/langs/lo_LA/accountancy.lang diff --git a/htdocs/langs/lo_LA/admin.lang b/public/langs/lo_LA/admin.lang similarity index 100% rename from htdocs/langs/lo_LA/admin.lang rename to public/langs/lo_LA/admin.lang diff --git a/htdocs/langs/lo_LA/agenda.lang b/public/langs/lo_LA/agenda.lang similarity index 100% rename from htdocs/langs/lo_LA/agenda.lang rename to public/langs/lo_LA/agenda.lang diff --git a/htdocs/langs/lo_LA/banks.lang b/public/langs/lo_LA/banks.lang similarity index 100% rename from htdocs/langs/lo_LA/banks.lang rename to public/langs/lo_LA/banks.lang diff --git a/htdocs/langs/lo_LA/bills.lang b/public/langs/lo_LA/bills.lang similarity index 100% rename from htdocs/langs/lo_LA/bills.lang rename to public/langs/lo_LA/bills.lang diff --git a/htdocs/langs/lo_LA/bookmarks.lang b/public/langs/lo_LA/bookmarks.lang similarity index 100% rename from htdocs/langs/lo_LA/bookmarks.lang rename to public/langs/lo_LA/bookmarks.lang diff --git a/htdocs/langs/lo_LA/boxes.lang b/public/langs/lo_LA/boxes.lang similarity index 100% rename from htdocs/langs/lo_LA/boxes.lang rename to public/langs/lo_LA/boxes.lang diff --git a/htdocs/langs/lo_LA/cashdesk.lang b/public/langs/lo_LA/cashdesk.lang similarity index 100% rename from htdocs/langs/lo_LA/cashdesk.lang rename to public/langs/lo_LA/cashdesk.lang diff --git a/htdocs/langs/lo_LA/categories.lang b/public/langs/lo_LA/categories.lang similarity index 100% rename from htdocs/langs/lo_LA/categories.lang rename to public/langs/lo_LA/categories.lang diff --git a/htdocs/langs/lo_LA/commercial.lang b/public/langs/lo_LA/commercial.lang similarity index 100% rename from htdocs/langs/lo_LA/commercial.lang rename to public/langs/lo_LA/commercial.lang diff --git a/htdocs/langs/lo_LA/companies.lang b/public/langs/lo_LA/companies.lang similarity index 100% rename from htdocs/langs/lo_LA/companies.lang rename to public/langs/lo_LA/companies.lang diff --git a/htdocs/langs/lo_LA/compta.lang b/public/langs/lo_LA/compta.lang similarity index 100% rename from htdocs/langs/lo_LA/compta.lang rename to public/langs/lo_LA/compta.lang diff --git a/htdocs/langs/lo_LA/contracts.lang b/public/langs/lo_LA/contracts.lang similarity index 100% rename from htdocs/langs/lo_LA/contracts.lang rename to public/langs/lo_LA/contracts.lang diff --git a/htdocs/langs/lo_LA/cron.lang b/public/langs/lo_LA/cron.lang similarity index 100% rename from htdocs/langs/lo_LA/cron.lang rename to public/langs/lo_LA/cron.lang diff --git a/htdocs/langs/lo_LA/deliveries.lang b/public/langs/lo_LA/deliveries.lang similarity index 100% rename from htdocs/langs/lo_LA/deliveries.lang rename to public/langs/lo_LA/deliveries.lang diff --git a/htdocs/langs/lo_LA/dict.lang b/public/langs/lo_LA/dict.lang similarity index 100% rename from htdocs/langs/lo_LA/dict.lang rename to public/langs/lo_LA/dict.lang diff --git a/htdocs/langs/lo_LA/donations.lang b/public/langs/lo_LA/donations.lang similarity index 100% rename from htdocs/langs/lo_LA/donations.lang rename to public/langs/lo_LA/donations.lang diff --git a/htdocs/langs/lo_LA/ecm.lang b/public/langs/lo_LA/ecm.lang similarity index 100% rename from htdocs/langs/lo_LA/ecm.lang rename to public/langs/lo_LA/ecm.lang diff --git a/htdocs/langs/lo_LA/errors.lang b/public/langs/lo_LA/errors.lang similarity index 100% rename from htdocs/langs/lo_LA/errors.lang rename to public/langs/lo_LA/errors.lang diff --git a/htdocs/langs/lo_LA/exports.lang b/public/langs/lo_LA/exports.lang similarity index 100% rename from htdocs/langs/lo_LA/exports.lang rename to public/langs/lo_LA/exports.lang diff --git a/htdocs/langs/lo_LA/externalsite.lang b/public/langs/lo_LA/externalsite.lang similarity index 100% rename from htdocs/langs/lo_LA/externalsite.lang rename to public/langs/lo_LA/externalsite.lang diff --git a/htdocs/langs/lo_LA/ftp.lang b/public/langs/lo_LA/ftp.lang similarity index 100% rename from htdocs/langs/lo_LA/ftp.lang rename to public/langs/lo_LA/ftp.lang diff --git a/htdocs/langs/lo_LA/help.lang b/public/langs/lo_LA/help.lang similarity index 100% rename from htdocs/langs/lo_LA/help.lang rename to public/langs/lo_LA/help.lang diff --git a/htdocs/langs/lo_LA/holiday.lang b/public/langs/lo_LA/holiday.lang similarity index 100% rename from htdocs/langs/lo_LA/holiday.lang rename to public/langs/lo_LA/holiday.lang diff --git a/htdocs/langs/lo_LA/hrm.lang b/public/langs/lo_LA/hrm.lang similarity index 100% rename from htdocs/langs/lo_LA/hrm.lang rename to public/langs/lo_LA/hrm.lang diff --git a/htdocs/langs/lo_LA/incoterm.lang b/public/langs/lo_LA/incoterm.lang similarity index 100% rename from htdocs/langs/lo_LA/incoterm.lang rename to public/langs/lo_LA/incoterm.lang diff --git a/htdocs/langs/lo_LA/install.lang b/public/langs/lo_LA/install.lang similarity index 100% rename from htdocs/langs/lo_LA/install.lang rename to public/langs/lo_LA/install.lang diff --git a/htdocs/langs/lo_LA/interventions.lang b/public/langs/lo_LA/interventions.lang similarity index 100% rename from htdocs/langs/lo_LA/interventions.lang rename to public/langs/lo_LA/interventions.lang diff --git a/htdocs/langs/lo_LA/languages.lang b/public/langs/lo_LA/languages.lang similarity index 100% rename from htdocs/langs/lo_LA/languages.lang rename to public/langs/lo_LA/languages.lang diff --git a/htdocs/langs/lo_LA/ldap.lang b/public/langs/lo_LA/ldap.lang similarity index 100% rename from htdocs/langs/lo_LA/ldap.lang rename to public/langs/lo_LA/ldap.lang diff --git a/htdocs/langs/lo_LA/link.lang b/public/langs/lo_LA/link.lang similarity index 100% rename from htdocs/langs/lo_LA/link.lang rename to public/langs/lo_LA/link.lang diff --git a/htdocs/langs/lo_LA/loan.lang b/public/langs/lo_LA/loan.lang similarity index 100% rename from htdocs/langs/lo_LA/loan.lang rename to public/langs/lo_LA/loan.lang diff --git a/htdocs/langs/lo_LA/mailmanspip.lang b/public/langs/lo_LA/mailmanspip.lang similarity index 100% rename from htdocs/langs/lo_LA/mailmanspip.lang rename to public/langs/lo_LA/mailmanspip.lang diff --git a/htdocs/langs/lo_LA/mails.lang b/public/langs/lo_LA/mails.lang similarity index 100% rename from htdocs/langs/lo_LA/mails.lang rename to public/langs/lo_LA/mails.lang diff --git a/htdocs/langs/lo_LA/main.lang b/public/langs/lo_LA/main.lang similarity index 100% rename from htdocs/langs/lo_LA/main.lang rename to public/langs/lo_LA/main.lang diff --git a/htdocs/langs/lo_LA/margins.lang b/public/langs/lo_LA/margins.lang similarity index 100% rename from htdocs/langs/lo_LA/margins.lang rename to public/langs/lo_LA/margins.lang diff --git a/htdocs/langs/lo_LA/members.lang b/public/langs/lo_LA/members.lang similarity index 100% rename from htdocs/langs/lo_LA/members.lang rename to public/langs/lo_LA/members.lang diff --git a/htdocs/langs/lo_LA/oauth.lang b/public/langs/lo_LA/oauth.lang similarity index 100% rename from htdocs/langs/lo_LA/oauth.lang rename to public/langs/lo_LA/oauth.lang diff --git a/htdocs/langs/lo_LA/opensurvey.lang b/public/langs/lo_LA/opensurvey.lang similarity index 100% rename from htdocs/langs/lo_LA/opensurvey.lang rename to public/langs/lo_LA/opensurvey.lang diff --git a/htdocs/langs/lo_LA/orders.lang b/public/langs/lo_LA/orders.lang similarity index 100% rename from htdocs/langs/lo_LA/orders.lang rename to public/langs/lo_LA/orders.lang diff --git a/htdocs/langs/lo_LA/other.lang b/public/langs/lo_LA/other.lang similarity index 100% rename from htdocs/langs/lo_LA/other.lang rename to public/langs/lo_LA/other.lang diff --git a/htdocs/langs/lo_LA/paybox.lang b/public/langs/lo_LA/paybox.lang similarity index 100% rename from htdocs/langs/lo_LA/paybox.lang rename to public/langs/lo_LA/paybox.lang diff --git a/htdocs/langs/lo_LA/paypal.lang b/public/langs/lo_LA/paypal.lang similarity index 100% rename from htdocs/langs/lo_LA/paypal.lang rename to public/langs/lo_LA/paypal.lang diff --git a/htdocs/langs/lo_LA/printing.lang b/public/langs/lo_LA/printing.lang similarity index 100% rename from htdocs/langs/lo_LA/printing.lang rename to public/langs/lo_LA/printing.lang diff --git a/htdocs/langs/lo_LA/productbatch.lang b/public/langs/lo_LA/productbatch.lang similarity index 100% rename from htdocs/langs/lo_LA/productbatch.lang rename to public/langs/lo_LA/productbatch.lang diff --git a/htdocs/langs/lo_LA/products.lang b/public/langs/lo_LA/products.lang similarity index 100% rename from htdocs/langs/lo_LA/products.lang rename to public/langs/lo_LA/products.lang diff --git a/htdocs/langs/lo_LA/projects.lang b/public/langs/lo_LA/projects.lang similarity index 100% rename from htdocs/langs/lo_LA/projects.lang rename to public/langs/lo_LA/projects.lang diff --git a/htdocs/langs/lo_LA/propal.lang b/public/langs/lo_LA/propal.lang similarity index 100% rename from htdocs/langs/lo_LA/propal.lang rename to public/langs/lo_LA/propal.lang diff --git a/htdocs/langs/lo_LA/receiptprinter.lang b/public/langs/lo_LA/receiptprinter.lang similarity index 100% rename from htdocs/langs/lo_LA/receiptprinter.lang rename to public/langs/lo_LA/receiptprinter.lang diff --git a/htdocs/langs/lo_LA/resource.lang b/public/langs/lo_LA/resource.lang similarity index 100% rename from htdocs/langs/lo_LA/resource.lang rename to public/langs/lo_LA/resource.lang diff --git a/htdocs/langs/lo_LA/salaries.lang b/public/langs/lo_LA/salaries.lang similarity index 100% rename from htdocs/langs/lo_LA/salaries.lang rename to public/langs/lo_LA/salaries.lang diff --git a/htdocs/langs/lo_LA/sendings.lang b/public/langs/lo_LA/sendings.lang similarity index 100% rename from htdocs/langs/lo_LA/sendings.lang rename to public/langs/lo_LA/sendings.lang diff --git a/htdocs/langs/lo_LA/sms.lang b/public/langs/lo_LA/sms.lang similarity index 100% rename from htdocs/langs/lo_LA/sms.lang rename to public/langs/lo_LA/sms.lang diff --git a/htdocs/langs/lo_LA/stocks.lang b/public/langs/lo_LA/stocks.lang similarity index 100% rename from htdocs/langs/lo_LA/stocks.lang rename to public/langs/lo_LA/stocks.lang diff --git a/htdocs/langs/lo_LA/supplier_proposal.lang b/public/langs/lo_LA/supplier_proposal.lang similarity index 100% rename from htdocs/langs/lo_LA/supplier_proposal.lang rename to public/langs/lo_LA/supplier_proposal.lang diff --git a/htdocs/langs/lo_LA/suppliers.lang b/public/langs/lo_LA/suppliers.lang similarity index 100% rename from htdocs/langs/lo_LA/suppliers.lang rename to public/langs/lo_LA/suppliers.lang diff --git a/htdocs/langs/lo_LA/trips.lang b/public/langs/lo_LA/trips.lang similarity index 100% rename from htdocs/langs/lo_LA/trips.lang rename to public/langs/lo_LA/trips.lang diff --git a/htdocs/langs/lo_LA/users.lang b/public/langs/lo_LA/users.lang similarity index 100% rename from htdocs/langs/lo_LA/users.lang rename to public/langs/lo_LA/users.lang diff --git a/htdocs/langs/lo_LA/website.lang b/public/langs/lo_LA/website.lang similarity index 100% rename from htdocs/langs/lo_LA/website.lang rename to public/langs/lo_LA/website.lang diff --git a/htdocs/langs/lo_LA/withdrawals.lang b/public/langs/lo_LA/withdrawals.lang similarity index 100% rename from htdocs/langs/lo_LA/withdrawals.lang rename to public/langs/lo_LA/withdrawals.lang diff --git a/htdocs/langs/lo_LA/workflow.lang b/public/langs/lo_LA/workflow.lang similarity index 100% rename from htdocs/langs/lo_LA/workflow.lang rename to public/langs/lo_LA/workflow.lang diff --git a/htdocs/langs/lt_LT/accountancy.lang b/public/langs/lt_LT/accountancy.lang similarity index 100% rename from htdocs/langs/lt_LT/accountancy.lang rename to public/langs/lt_LT/accountancy.lang diff --git a/htdocs/langs/lt_LT/admin.lang b/public/langs/lt_LT/admin.lang similarity index 100% rename from htdocs/langs/lt_LT/admin.lang rename to public/langs/lt_LT/admin.lang diff --git a/htdocs/langs/lt_LT/agenda.lang b/public/langs/lt_LT/agenda.lang similarity index 100% rename from htdocs/langs/lt_LT/agenda.lang rename to public/langs/lt_LT/agenda.lang diff --git a/htdocs/langs/lt_LT/banks.lang b/public/langs/lt_LT/banks.lang similarity index 100% rename from htdocs/langs/lt_LT/banks.lang rename to public/langs/lt_LT/banks.lang diff --git a/htdocs/langs/lt_LT/bills.lang b/public/langs/lt_LT/bills.lang similarity index 100% rename from htdocs/langs/lt_LT/bills.lang rename to public/langs/lt_LT/bills.lang diff --git a/htdocs/langs/lt_LT/bookmarks.lang b/public/langs/lt_LT/bookmarks.lang similarity index 100% rename from htdocs/langs/lt_LT/bookmarks.lang rename to public/langs/lt_LT/bookmarks.lang diff --git a/htdocs/langs/lt_LT/boxes.lang b/public/langs/lt_LT/boxes.lang similarity index 100% rename from htdocs/langs/lt_LT/boxes.lang rename to public/langs/lt_LT/boxes.lang diff --git a/htdocs/langs/lt_LT/cashdesk.lang b/public/langs/lt_LT/cashdesk.lang similarity index 100% rename from htdocs/langs/lt_LT/cashdesk.lang rename to public/langs/lt_LT/cashdesk.lang diff --git a/htdocs/langs/lt_LT/categories.lang b/public/langs/lt_LT/categories.lang similarity index 100% rename from htdocs/langs/lt_LT/categories.lang rename to public/langs/lt_LT/categories.lang diff --git a/htdocs/langs/lt_LT/commercial.lang b/public/langs/lt_LT/commercial.lang similarity index 100% rename from htdocs/langs/lt_LT/commercial.lang rename to public/langs/lt_LT/commercial.lang diff --git a/htdocs/langs/lt_LT/companies.lang b/public/langs/lt_LT/companies.lang similarity index 100% rename from htdocs/langs/lt_LT/companies.lang rename to public/langs/lt_LT/companies.lang diff --git a/htdocs/langs/lt_LT/compta.lang b/public/langs/lt_LT/compta.lang similarity index 100% rename from htdocs/langs/lt_LT/compta.lang rename to public/langs/lt_LT/compta.lang diff --git a/htdocs/langs/lt_LT/contracts.lang b/public/langs/lt_LT/contracts.lang similarity index 100% rename from htdocs/langs/lt_LT/contracts.lang rename to public/langs/lt_LT/contracts.lang diff --git a/htdocs/langs/lt_LT/cron.lang b/public/langs/lt_LT/cron.lang similarity index 100% rename from htdocs/langs/lt_LT/cron.lang rename to public/langs/lt_LT/cron.lang diff --git a/htdocs/langs/lt_LT/deliveries.lang b/public/langs/lt_LT/deliveries.lang similarity index 100% rename from htdocs/langs/lt_LT/deliveries.lang rename to public/langs/lt_LT/deliveries.lang diff --git a/htdocs/langs/lt_LT/dict.lang b/public/langs/lt_LT/dict.lang similarity index 100% rename from htdocs/langs/lt_LT/dict.lang rename to public/langs/lt_LT/dict.lang diff --git a/htdocs/langs/lt_LT/donations.lang b/public/langs/lt_LT/donations.lang similarity index 100% rename from htdocs/langs/lt_LT/donations.lang rename to public/langs/lt_LT/donations.lang diff --git a/htdocs/langs/lt_LT/ecm.lang b/public/langs/lt_LT/ecm.lang similarity index 100% rename from htdocs/langs/lt_LT/ecm.lang rename to public/langs/lt_LT/ecm.lang diff --git a/htdocs/langs/lt_LT/errors.lang b/public/langs/lt_LT/errors.lang similarity index 100% rename from htdocs/langs/lt_LT/errors.lang rename to public/langs/lt_LT/errors.lang diff --git a/htdocs/langs/lt_LT/exports.lang b/public/langs/lt_LT/exports.lang similarity index 100% rename from htdocs/langs/lt_LT/exports.lang rename to public/langs/lt_LT/exports.lang diff --git a/htdocs/langs/lt_LT/externalsite.lang b/public/langs/lt_LT/externalsite.lang similarity index 100% rename from htdocs/langs/lt_LT/externalsite.lang rename to public/langs/lt_LT/externalsite.lang diff --git a/htdocs/langs/lt_LT/ftp.lang b/public/langs/lt_LT/ftp.lang similarity index 100% rename from htdocs/langs/lt_LT/ftp.lang rename to public/langs/lt_LT/ftp.lang diff --git a/htdocs/langs/lt_LT/help.lang b/public/langs/lt_LT/help.lang similarity index 100% rename from htdocs/langs/lt_LT/help.lang rename to public/langs/lt_LT/help.lang diff --git a/htdocs/langs/lt_LT/holiday.lang b/public/langs/lt_LT/holiday.lang similarity index 100% rename from htdocs/langs/lt_LT/holiday.lang rename to public/langs/lt_LT/holiday.lang diff --git a/htdocs/langs/lt_LT/hrm.lang b/public/langs/lt_LT/hrm.lang similarity index 100% rename from htdocs/langs/lt_LT/hrm.lang rename to public/langs/lt_LT/hrm.lang diff --git a/htdocs/langs/lt_LT/incoterm.lang b/public/langs/lt_LT/incoterm.lang similarity index 100% rename from htdocs/langs/lt_LT/incoterm.lang rename to public/langs/lt_LT/incoterm.lang diff --git a/htdocs/langs/lt_LT/install.lang b/public/langs/lt_LT/install.lang similarity index 100% rename from htdocs/langs/lt_LT/install.lang rename to public/langs/lt_LT/install.lang diff --git a/htdocs/langs/lt_LT/interventions.lang b/public/langs/lt_LT/interventions.lang similarity index 100% rename from htdocs/langs/lt_LT/interventions.lang rename to public/langs/lt_LT/interventions.lang diff --git a/htdocs/langs/lt_LT/languages.lang b/public/langs/lt_LT/languages.lang similarity index 100% rename from htdocs/langs/lt_LT/languages.lang rename to public/langs/lt_LT/languages.lang diff --git a/htdocs/langs/lt_LT/ldap.lang b/public/langs/lt_LT/ldap.lang similarity index 100% rename from htdocs/langs/lt_LT/ldap.lang rename to public/langs/lt_LT/ldap.lang diff --git a/htdocs/langs/lt_LT/link.lang b/public/langs/lt_LT/link.lang similarity index 100% rename from htdocs/langs/lt_LT/link.lang rename to public/langs/lt_LT/link.lang diff --git a/htdocs/langs/lt_LT/loan.lang b/public/langs/lt_LT/loan.lang similarity index 100% rename from htdocs/langs/lt_LT/loan.lang rename to public/langs/lt_LT/loan.lang diff --git a/htdocs/langs/lt_LT/mailmanspip.lang b/public/langs/lt_LT/mailmanspip.lang similarity index 100% rename from htdocs/langs/lt_LT/mailmanspip.lang rename to public/langs/lt_LT/mailmanspip.lang diff --git a/htdocs/langs/lt_LT/mails.lang b/public/langs/lt_LT/mails.lang similarity index 100% rename from htdocs/langs/lt_LT/mails.lang rename to public/langs/lt_LT/mails.lang diff --git a/htdocs/langs/lt_LT/main.lang b/public/langs/lt_LT/main.lang similarity index 100% rename from htdocs/langs/lt_LT/main.lang rename to public/langs/lt_LT/main.lang diff --git a/htdocs/langs/lt_LT/margins.lang b/public/langs/lt_LT/margins.lang similarity index 100% rename from htdocs/langs/lt_LT/margins.lang rename to public/langs/lt_LT/margins.lang diff --git a/htdocs/langs/lt_LT/members.lang b/public/langs/lt_LT/members.lang similarity index 100% rename from htdocs/langs/lt_LT/members.lang rename to public/langs/lt_LT/members.lang diff --git a/htdocs/langs/lt_LT/oauth.lang b/public/langs/lt_LT/oauth.lang similarity index 100% rename from htdocs/langs/lt_LT/oauth.lang rename to public/langs/lt_LT/oauth.lang diff --git a/htdocs/langs/lt_LT/opensurvey.lang b/public/langs/lt_LT/opensurvey.lang similarity index 100% rename from htdocs/langs/lt_LT/opensurvey.lang rename to public/langs/lt_LT/opensurvey.lang diff --git a/htdocs/langs/lt_LT/orders.lang b/public/langs/lt_LT/orders.lang similarity index 100% rename from htdocs/langs/lt_LT/orders.lang rename to public/langs/lt_LT/orders.lang diff --git a/htdocs/langs/lt_LT/other.lang b/public/langs/lt_LT/other.lang similarity index 100% rename from htdocs/langs/lt_LT/other.lang rename to public/langs/lt_LT/other.lang diff --git a/htdocs/langs/lt_LT/paybox.lang b/public/langs/lt_LT/paybox.lang similarity index 100% rename from htdocs/langs/lt_LT/paybox.lang rename to public/langs/lt_LT/paybox.lang diff --git a/htdocs/langs/lt_LT/paypal.lang b/public/langs/lt_LT/paypal.lang similarity index 100% rename from htdocs/langs/lt_LT/paypal.lang rename to public/langs/lt_LT/paypal.lang diff --git a/htdocs/langs/lt_LT/printing.lang b/public/langs/lt_LT/printing.lang similarity index 100% rename from htdocs/langs/lt_LT/printing.lang rename to public/langs/lt_LT/printing.lang diff --git a/htdocs/langs/lt_LT/productbatch.lang b/public/langs/lt_LT/productbatch.lang similarity index 100% rename from htdocs/langs/lt_LT/productbatch.lang rename to public/langs/lt_LT/productbatch.lang diff --git a/htdocs/langs/lt_LT/products.lang b/public/langs/lt_LT/products.lang similarity index 100% rename from htdocs/langs/lt_LT/products.lang rename to public/langs/lt_LT/products.lang diff --git a/htdocs/langs/lt_LT/projects.lang b/public/langs/lt_LT/projects.lang similarity index 100% rename from htdocs/langs/lt_LT/projects.lang rename to public/langs/lt_LT/projects.lang diff --git a/htdocs/langs/lt_LT/propal.lang b/public/langs/lt_LT/propal.lang similarity index 100% rename from htdocs/langs/lt_LT/propal.lang rename to public/langs/lt_LT/propal.lang diff --git a/htdocs/langs/lt_LT/receiptprinter.lang b/public/langs/lt_LT/receiptprinter.lang similarity index 100% rename from htdocs/langs/lt_LT/receiptprinter.lang rename to public/langs/lt_LT/receiptprinter.lang diff --git a/htdocs/langs/lt_LT/resource.lang b/public/langs/lt_LT/resource.lang similarity index 100% rename from htdocs/langs/lt_LT/resource.lang rename to public/langs/lt_LT/resource.lang diff --git a/htdocs/langs/lt_LT/salaries.lang b/public/langs/lt_LT/salaries.lang similarity index 100% rename from htdocs/langs/lt_LT/salaries.lang rename to public/langs/lt_LT/salaries.lang diff --git a/htdocs/langs/lt_LT/sendings.lang b/public/langs/lt_LT/sendings.lang similarity index 100% rename from htdocs/langs/lt_LT/sendings.lang rename to public/langs/lt_LT/sendings.lang diff --git a/htdocs/langs/lt_LT/sms.lang b/public/langs/lt_LT/sms.lang similarity index 100% rename from htdocs/langs/lt_LT/sms.lang rename to public/langs/lt_LT/sms.lang diff --git a/htdocs/langs/lt_LT/stocks.lang b/public/langs/lt_LT/stocks.lang similarity index 100% rename from htdocs/langs/lt_LT/stocks.lang rename to public/langs/lt_LT/stocks.lang diff --git a/htdocs/langs/lt_LT/supplier_proposal.lang b/public/langs/lt_LT/supplier_proposal.lang similarity index 100% rename from htdocs/langs/lt_LT/supplier_proposal.lang rename to public/langs/lt_LT/supplier_proposal.lang diff --git a/htdocs/langs/lt_LT/suppliers.lang b/public/langs/lt_LT/suppliers.lang similarity index 100% rename from htdocs/langs/lt_LT/suppliers.lang rename to public/langs/lt_LT/suppliers.lang diff --git a/htdocs/langs/lt_LT/trips.lang b/public/langs/lt_LT/trips.lang similarity index 100% rename from htdocs/langs/lt_LT/trips.lang rename to public/langs/lt_LT/trips.lang diff --git a/htdocs/langs/lt_LT/users.lang b/public/langs/lt_LT/users.lang similarity index 100% rename from htdocs/langs/lt_LT/users.lang rename to public/langs/lt_LT/users.lang diff --git a/htdocs/langs/lt_LT/website.lang b/public/langs/lt_LT/website.lang similarity index 100% rename from htdocs/langs/lt_LT/website.lang rename to public/langs/lt_LT/website.lang diff --git a/htdocs/langs/lt_LT/withdrawals.lang b/public/langs/lt_LT/withdrawals.lang similarity index 100% rename from htdocs/langs/lt_LT/withdrawals.lang rename to public/langs/lt_LT/withdrawals.lang diff --git a/htdocs/langs/lt_LT/workflow.lang b/public/langs/lt_LT/workflow.lang similarity index 100% rename from htdocs/langs/lt_LT/workflow.lang rename to public/langs/lt_LT/workflow.lang diff --git a/htdocs/langs/lv_LV/accountancy.lang b/public/langs/lv_LV/accountancy.lang similarity index 100% rename from htdocs/langs/lv_LV/accountancy.lang rename to public/langs/lv_LV/accountancy.lang diff --git a/htdocs/langs/lv_LV/admin.lang b/public/langs/lv_LV/admin.lang similarity index 100% rename from htdocs/langs/lv_LV/admin.lang rename to public/langs/lv_LV/admin.lang diff --git a/htdocs/langs/lv_LV/agenda.lang b/public/langs/lv_LV/agenda.lang similarity index 100% rename from htdocs/langs/lv_LV/agenda.lang rename to public/langs/lv_LV/agenda.lang diff --git a/htdocs/langs/lv_LV/banks.lang b/public/langs/lv_LV/banks.lang similarity index 100% rename from htdocs/langs/lv_LV/banks.lang rename to public/langs/lv_LV/banks.lang diff --git a/htdocs/langs/lv_LV/bills.lang b/public/langs/lv_LV/bills.lang similarity index 100% rename from htdocs/langs/lv_LV/bills.lang rename to public/langs/lv_LV/bills.lang diff --git a/htdocs/langs/lv_LV/bookmarks.lang b/public/langs/lv_LV/bookmarks.lang similarity index 100% rename from htdocs/langs/lv_LV/bookmarks.lang rename to public/langs/lv_LV/bookmarks.lang diff --git a/htdocs/langs/lv_LV/boxes.lang b/public/langs/lv_LV/boxes.lang similarity index 100% rename from htdocs/langs/lv_LV/boxes.lang rename to public/langs/lv_LV/boxes.lang diff --git a/htdocs/langs/lv_LV/cashdesk.lang b/public/langs/lv_LV/cashdesk.lang similarity index 100% rename from htdocs/langs/lv_LV/cashdesk.lang rename to public/langs/lv_LV/cashdesk.lang diff --git a/htdocs/langs/lv_LV/categories.lang b/public/langs/lv_LV/categories.lang similarity index 100% rename from htdocs/langs/lv_LV/categories.lang rename to public/langs/lv_LV/categories.lang diff --git a/htdocs/langs/lv_LV/commercial.lang b/public/langs/lv_LV/commercial.lang similarity index 100% rename from htdocs/langs/lv_LV/commercial.lang rename to public/langs/lv_LV/commercial.lang diff --git a/htdocs/langs/lv_LV/companies.lang b/public/langs/lv_LV/companies.lang similarity index 100% rename from htdocs/langs/lv_LV/companies.lang rename to public/langs/lv_LV/companies.lang diff --git a/htdocs/langs/lv_LV/compta.lang b/public/langs/lv_LV/compta.lang similarity index 100% rename from htdocs/langs/lv_LV/compta.lang rename to public/langs/lv_LV/compta.lang diff --git a/htdocs/langs/lv_LV/contracts.lang b/public/langs/lv_LV/contracts.lang similarity index 100% rename from htdocs/langs/lv_LV/contracts.lang rename to public/langs/lv_LV/contracts.lang diff --git a/htdocs/langs/lv_LV/cron.lang b/public/langs/lv_LV/cron.lang similarity index 100% rename from htdocs/langs/lv_LV/cron.lang rename to public/langs/lv_LV/cron.lang diff --git a/htdocs/langs/lv_LV/deliveries.lang b/public/langs/lv_LV/deliveries.lang similarity index 100% rename from htdocs/langs/lv_LV/deliveries.lang rename to public/langs/lv_LV/deliveries.lang diff --git a/htdocs/langs/lv_LV/dict.lang b/public/langs/lv_LV/dict.lang similarity index 100% rename from htdocs/langs/lv_LV/dict.lang rename to public/langs/lv_LV/dict.lang diff --git a/htdocs/langs/lv_LV/donations.lang b/public/langs/lv_LV/donations.lang similarity index 100% rename from htdocs/langs/lv_LV/donations.lang rename to public/langs/lv_LV/donations.lang diff --git a/htdocs/langs/lv_LV/ecm.lang b/public/langs/lv_LV/ecm.lang similarity index 100% rename from htdocs/langs/lv_LV/ecm.lang rename to public/langs/lv_LV/ecm.lang diff --git a/htdocs/langs/lv_LV/errors.lang b/public/langs/lv_LV/errors.lang similarity index 100% rename from htdocs/langs/lv_LV/errors.lang rename to public/langs/lv_LV/errors.lang diff --git a/htdocs/langs/lv_LV/exports.lang b/public/langs/lv_LV/exports.lang similarity index 100% rename from htdocs/langs/lv_LV/exports.lang rename to public/langs/lv_LV/exports.lang diff --git a/htdocs/langs/lv_LV/externalsite.lang b/public/langs/lv_LV/externalsite.lang similarity index 100% rename from htdocs/langs/lv_LV/externalsite.lang rename to public/langs/lv_LV/externalsite.lang diff --git a/htdocs/langs/lv_LV/ftp.lang b/public/langs/lv_LV/ftp.lang similarity index 100% rename from htdocs/langs/lv_LV/ftp.lang rename to public/langs/lv_LV/ftp.lang diff --git a/htdocs/langs/lv_LV/help.lang b/public/langs/lv_LV/help.lang similarity index 100% rename from htdocs/langs/lv_LV/help.lang rename to public/langs/lv_LV/help.lang diff --git a/htdocs/langs/lv_LV/holiday.lang b/public/langs/lv_LV/holiday.lang similarity index 100% rename from htdocs/langs/lv_LV/holiday.lang rename to public/langs/lv_LV/holiday.lang diff --git a/htdocs/langs/lv_LV/hrm.lang b/public/langs/lv_LV/hrm.lang similarity index 100% rename from htdocs/langs/lv_LV/hrm.lang rename to public/langs/lv_LV/hrm.lang diff --git a/htdocs/langs/lv_LV/incoterm.lang b/public/langs/lv_LV/incoterm.lang similarity index 100% rename from htdocs/langs/lv_LV/incoterm.lang rename to public/langs/lv_LV/incoterm.lang diff --git a/htdocs/langs/lv_LV/install.lang b/public/langs/lv_LV/install.lang similarity index 100% rename from htdocs/langs/lv_LV/install.lang rename to public/langs/lv_LV/install.lang diff --git a/htdocs/langs/lv_LV/interventions.lang b/public/langs/lv_LV/interventions.lang similarity index 100% rename from htdocs/langs/lv_LV/interventions.lang rename to public/langs/lv_LV/interventions.lang diff --git a/htdocs/langs/lv_LV/languages.lang b/public/langs/lv_LV/languages.lang similarity index 100% rename from htdocs/langs/lv_LV/languages.lang rename to public/langs/lv_LV/languages.lang diff --git a/htdocs/langs/lv_LV/ldap.lang b/public/langs/lv_LV/ldap.lang similarity index 100% rename from htdocs/langs/lv_LV/ldap.lang rename to public/langs/lv_LV/ldap.lang diff --git a/htdocs/langs/lv_LV/link.lang b/public/langs/lv_LV/link.lang similarity index 100% rename from htdocs/langs/lv_LV/link.lang rename to public/langs/lv_LV/link.lang diff --git a/htdocs/langs/lv_LV/loan.lang b/public/langs/lv_LV/loan.lang similarity index 100% rename from htdocs/langs/lv_LV/loan.lang rename to public/langs/lv_LV/loan.lang diff --git a/htdocs/langs/lv_LV/mailmanspip.lang b/public/langs/lv_LV/mailmanspip.lang similarity index 100% rename from htdocs/langs/lv_LV/mailmanspip.lang rename to public/langs/lv_LV/mailmanspip.lang diff --git a/htdocs/langs/lv_LV/mails.lang b/public/langs/lv_LV/mails.lang similarity index 100% rename from htdocs/langs/lv_LV/mails.lang rename to public/langs/lv_LV/mails.lang diff --git a/htdocs/langs/lv_LV/main.lang b/public/langs/lv_LV/main.lang similarity index 100% rename from htdocs/langs/lv_LV/main.lang rename to public/langs/lv_LV/main.lang diff --git a/htdocs/langs/lv_LV/margins.lang b/public/langs/lv_LV/margins.lang similarity index 100% rename from htdocs/langs/lv_LV/margins.lang rename to public/langs/lv_LV/margins.lang diff --git a/htdocs/langs/lv_LV/members.lang b/public/langs/lv_LV/members.lang similarity index 100% rename from htdocs/langs/lv_LV/members.lang rename to public/langs/lv_LV/members.lang diff --git a/htdocs/langs/lv_LV/oauth.lang b/public/langs/lv_LV/oauth.lang similarity index 100% rename from htdocs/langs/lv_LV/oauth.lang rename to public/langs/lv_LV/oauth.lang diff --git a/htdocs/langs/lv_LV/opensurvey.lang b/public/langs/lv_LV/opensurvey.lang similarity index 100% rename from htdocs/langs/lv_LV/opensurvey.lang rename to public/langs/lv_LV/opensurvey.lang diff --git a/htdocs/langs/lv_LV/orders.lang b/public/langs/lv_LV/orders.lang similarity index 100% rename from htdocs/langs/lv_LV/orders.lang rename to public/langs/lv_LV/orders.lang diff --git a/htdocs/langs/lv_LV/other.lang b/public/langs/lv_LV/other.lang similarity index 100% rename from htdocs/langs/lv_LV/other.lang rename to public/langs/lv_LV/other.lang diff --git a/htdocs/langs/lv_LV/paybox.lang b/public/langs/lv_LV/paybox.lang similarity index 100% rename from htdocs/langs/lv_LV/paybox.lang rename to public/langs/lv_LV/paybox.lang diff --git a/htdocs/langs/lv_LV/paypal.lang b/public/langs/lv_LV/paypal.lang similarity index 100% rename from htdocs/langs/lv_LV/paypal.lang rename to public/langs/lv_LV/paypal.lang diff --git a/htdocs/langs/lv_LV/printing.lang b/public/langs/lv_LV/printing.lang similarity index 100% rename from htdocs/langs/lv_LV/printing.lang rename to public/langs/lv_LV/printing.lang diff --git a/htdocs/langs/lv_LV/productbatch.lang b/public/langs/lv_LV/productbatch.lang similarity index 100% rename from htdocs/langs/lv_LV/productbatch.lang rename to public/langs/lv_LV/productbatch.lang diff --git a/htdocs/langs/lv_LV/products.lang b/public/langs/lv_LV/products.lang similarity index 100% rename from htdocs/langs/lv_LV/products.lang rename to public/langs/lv_LV/products.lang diff --git a/htdocs/langs/lv_LV/projects.lang b/public/langs/lv_LV/projects.lang similarity index 100% rename from htdocs/langs/lv_LV/projects.lang rename to public/langs/lv_LV/projects.lang diff --git a/htdocs/langs/lv_LV/propal.lang b/public/langs/lv_LV/propal.lang similarity index 100% rename from htdocs/langs/lv_LV/propal.lang rename to public/langs/lv_LV/propal.lang diff --git a/htdocs/langs/lv_LV/receiptprinter.lang b/public/langs/lv_LV/receiptprinter.lang similarity index 100% rename from htdocs/langs/lv_LV/receiptprinter.lang rename to public/langs/lv_LV/receiptprinter.lang diff --git a/htdocs/langs/lv_LV/resource.lang b/public/langs/lv_LV/resource.lang similarity index 100% rename from htdocs/langs/lv_LV/resource.lang rename to public/langs/lv_LV/resource.lang diff --git a/htdocs/langs/lv_LV/salaries.lang b/public/langs/lv_LV/salaries.lang similarity index 100% rename from htdocs/langs/lv_LV/salaries.lang rename to public/langs/lv_LV/salaries.lang diff --git a/htdocs/langs/lv_LV/sendings.lang b/public/langs/lv_LV/sendings.lang similarity index 100% rename from htdocs/langs/lv_LV/sendings.lang rename to public/langs/lv_LV/sendings.lang diff --git a/htdocs/langs/lv_LV/sms.lang b/public/langs/lv_LV/sms.lang similarity index 100% rename from htdocs/langs/lv_LV/sms.lang rename to public/langs/lv_LV/sms.lang diff --git a/htdocs/langs/lv_LV/stocks.lang b/public/langs/lv_LV/stocks.lang similarity index 100% rename from htdocs/langs/lv_LV/stocks.lang rename to public/langs/lv_LV/stocks.lang diff --git a/htdocs/langs/lv_LV/supplier_proposal.lang b/public/langs/lv_LV/supplier_proposal.lang similarity index 100% rename from htdocs/langs/lv_LV/supplier_proposal.lang rename to public/langs/lv_LV/supplier_proposal.lang diff --git a/htdocs/langs/lv_LV/suppliers.lang b/public/langs/lv_LV/suppliers.lang similarity index 100% rename from htdocs/langs/lv_LV/suppliers.lang rename to public/langs/lv_LV/suppliers.lang diff --git a/htdocs/langs/lv_LV/trips.lang b/public/langs/lv_LV/trips.lang similarity index 100% rename from htdocs/langs/lv_LV/trips.lang rename to public/langs/lv_LV/trips.lang diff --git a/htdocs/langs/lv_LV/users.lang b/public/langs/lv_LV/users.lang similarity index 100% rename from htdocs/langs/lv_LV/users.lang rename to public/langs/lv_LV/users.lang diff --git a/htdocs/langs/lv_LV/website.lang b/public/langs/lv_LV/website.lang similarity index 100% rename from htdocs/langs/lv_LV/website.lang rename to public/langs/lv_LV/website.lang diff --git a/htdocs/langs/lv_LV/withdrawals.lang b/public/langs/lv_LV/withdrawals.lang similarity index 100% rename from htdocs/langs/lv_LV/withdrawals.lang rename to public/langs/lv_LV/withdrawals.lang diff --git a/htdocs/langs/lv_LV/workflow.lang b/public/langs/lv_LV/workflow.lang similarity index 100% rename from htdocs/langs/lv_LV/workflow.lang rename to public/langs/lv_LV/workflow.lang diff --git a/htdocs/langs/mk_MK/accountancy.lang b/public/langs/mk_MK/accountancy.lang similarity index 100% rename from htdocs/langs/mk_MK/accountancy.lang rename to public/langs/mk_MK/accountancy.lang diff --git a/htdocs/langs/mk_MK/admin.lang b/public/langs/mk_MK/admin.lang similarity index 100% rename from htdocs/langs/mk_MK/admin.lang rename to public/langs/mk_MK/admin.lang diff --git a/htdocs/langs/mk_MK/agenda.lang b/public/langs/mk_MK/agenda.lang similarity index 100% rename from htdocs/langs/mk_MK/agenda.lang rename to public/langs/mk_MK/agenda.lang diff --git a/htdocs/langs/mk_MK/banks.lang b/public/langs/mk_MK/banks.lang similarity index 100% rename from htdocs/langs/mk_MK/banks.lang rename to public/langs/mk_MK/banks.lang diff --git a/htdocs/langs/mk_MK/bills.lang b/public/langs/mk_MK/bills.lang similarity index 100% rename from htdocs/langs/mk_MK/bills.lang rename to public/langs/mk_MK/bills.lang diff --git a/htdocs/langs/mk_MK/bookmarks.lang b/public/langs/mk_MK/bookmarks.lang similarity index 100% rename from htdocs/langs/mk_MK/bookmarks.lang rename to public/langs/mk_MK/bookmarks.lang diff --git a/htdocs/langs/mk_MK/boxes.lang b/public/langs/mk_MK/boxes.lang similarity index 100% rename from htdocs/langs/mk_MK/boxes.lang rename to public/langs/mk_MK/boxes.lang diff --git a/htdocs/langs/mk_MK/cashdesk.lang b/public/langs/mk_MK/cashdesk.lang similarity index 100% rename from htdocs/langs/mk_MK/cashdesk.lang rename to public/langs/mk_MK/cashdesk.lang diff --git a/htdocs/langs/mk_MK/categories.lang b/public/langs/mk_MK/categories.lang similarity index 100% rename from htdocs/langs/mk_MK/categories.lang rename to public/langs/mk_MK/categories.lang diff --git a/htdocs/langs/mk_MK/commercial.lang b/public/langs/mk_MK/commercial.lang similarity index 100% rename from htdocs/langs/mk_MK/commercial.lang rename to public/langs/mk_MK/commercial.lang diff --git a/htdocs/langs/mk_MK/companies.lang b/public/langs/mk_MK/companies.lang similarity index 100% rename from htdocs/langs/mk_MK/companies.lang rename to public/langs/mk_MK/companies.lang diff --git a/htdocs/langs/mk_MK/compta.lang b/public/langs/mk_MK/compta.lang similarity index 100% rename from htdocs/langs/mk_MK/compta.lang rename to public/langs/mk_MK/compta.lang diff --git a/htdocs/langs/mk_MK/contracts.lang b/public/langs/mk_MK/contracts.lang similarity index 100% rename from htdocs/langs/mk_MK/contracts.lang rename to public/langs/mk_MK/contracts.lang diff --git a/htdocs/langs/mk_MK/cron.lang b/public/langs/mk_MK/cron.lang similarity index 100% rename from htdocs/langs/mk_MK/cron.lang rename to public/langs/mk_MK/cron.lang diff --git a/htdocs/langs/mk_MK/deliveries.lang b/public/langs/mk_MK/deliveries.lang similarity index 100% rename from htdocs/langs/mk_MK/deliveries.lang rename to public/langs/mk_MK/deliveries.lang diff --git a/htdocs/langs/mk_MK/dict.lang b/public/langs/mk_MK/dict.lang similarity index 100% rename from htdocs/langs/mk_MK/dict.lang rename to public/langs/mk_MK/dict.lang diff --git a/htdocs/langs/mk_MK/donations.lang b/public/langs/mk_MK/donations.lang similarity index 100% rename from htdocs/langs/mk_MK/donations.lang rename to public/langs/mk_MK/donations.lang diff --git a/htdocs/langs/mk_MK/ecm.lang b/public/langs/mk_MK/ecm.lang similarity index 100% rename from htdocs/langs/mk_MK/ecm.lang rename to public/langs/mk_MK/ecm.lang diff --git a/htdocs/langs/mk_MK/errors.lang b/public/langs/mk_MK/errors.lang similarity index 100% rename from htdocs/langs/mk_MK/errors.lang rename to public/langs/mk_MK/errors.lang diff --git a/htdocs/langs/mk_MK/exports.lang b/public/langs/mk_MK/exports.lang similarity index 100% rename from htdocs/langs/mk_MK/exports.lang rename to public/langs/mk_MK/exports.lang diff --git a/htdocs/langs/mk_MK/externalsite.lang b/public/langs/mk_MK/externalsite.lang similarity index 100% rename from htdocs/langs/mk_MK/externalsite.lang rename to public/langs/mk_MK/externalsite.lang diff --git a/htdocs/langs/mk_MK/ftp.lang b/public/langs/mk_MK/ftp.lang similarity index 100% rename from htdocs/langs/mk_MK/ftp.lang rename to public/langs/mk_MK/ftp.lang diff --git a/htdocs/langs/mk_MK/help.lang b/public/langs/mk_MK/help.lang similarity index 100% rename from htdocs/langs/mk_MK/help.lang rename to public/langs/mk_MK/help.lang diff --git a/htdocs/langs/mk_MK/holiday.lang b/public/langs/mk_MK/holiday.lang similarity index 100% rename from htdocs/langs/mk_MK/holiday.lang rename to public/langs/mk_MK/holiday.lang diff --git a/htdocs/langs/mk_MK/hrm.lang b/public/langs/mk_MK/hrm.lang similarity index 100% rename from htdocs/langs/mk_MK/hrm.lang rename to public/langs/mk_MK/hrm.lang diff --git a/htdocs/langs/mk_MK/incoterm.lang b/public/langs/mk_MK/incoterm.lang similarity index 100% rename from htdocs/langs/mk_MK/incoterm.lang rename to public/langs/mk_MK/incoterm.lang diff --git a/htdocs/langs/mk_MK/install.lang b/public/langs/mk_MK/install.lang similarity index 100% rename from htdocs/langs/mk_MK/install.lang rename to public/langs/mk_MK/install.lang diff --git a/htdocs/langs/mk_MK/interventions.lang b/public/langs/mk_MK/interventions.lang similarity index 100% rename from htdocs/langs/mk_MK/interventions.lang rename to public/langs/mk_MK/interventions.lang diff --git a/htdocs/langs/mk_MK/languages.lang b/public/langs/mk_MK/languages.lang similarity index 100% rename from htdocs/langs/mk_MK/languages.lang rename to public/langs/mk_MK/languages.lang diff --git a/htdocs/langs/mk_MK/ldap.lang b/public/langs/mk_MK/ldap.lang similarity index 100% rename from htdocs/langs/mk_MK/ldap.lang rename to public/langs/mk_MK/ldap.lang diff --git a/htdocs/langs/mk_MK/link.lang b/public/langs/mk_MK/link.lang similarity index 100% rename from htdocs/langs/mk_MK/link.lang rename to public/langs/mk_MK/link.lang diff --git a/htdocs/langs/mk_MK/loan.lang b/public/langs/mk_MK/loan.lang similarity index 100% rename from htdocs/langs/mk_MK/loan.lang rename to public/langs/mk_MK/loan.lang diff --git a/htdocs/langs/mk_MK/mailmanspip.lang b/public/langs/mk_MK/mailmanspip.lang similarity index 100% rename from htdocs/langs/mk_MK/mailmanspip.lang rename to public/langs/mk_MK/mailmanspip.lang diff --git a/htdocs/langs/mk_MK/mails.lang b/public/langs/mk_MK/mails.lang similarity index 100% rename from htdocs/langs/mk_MK/mails.lang rename to public/langs/mk_MK/mails.lang diff --git a/htdocs/langs/mk_MK/main.lang b/public/langs/mk_MK/main.lang similarity index 100% rename from htdocs/langs/mk_MK/main.lang rename to public/langs/mk_MK/main.lang diff --git a/htdocs/langs/mk_MK/margins.lang b/public/langs/mk_MK/margins.lang similarity index 100% rename from htdocs/langs/mk_MK/margins.lang rename to public/langs/mk_MK/margins.lang diff --git a/htdocs/langs/mk_MK/members.lang b/public/langs/mk_MK/members.lang similarity index 100% rename from htdocs/langs/mk_MK/members.lang rename to public/langs/mk_MK/members.lang diff --git a/htdocs/langs/mk_MK/oauth.lang b/public/langs/mk_MK/oauth.lang similarity index 100% rename from htdocs/langs/mk_MK/oauth.lang rename to public/langs/mk_MK/oauth.lang diff --git a/htdocs/langs/mk_MK/opensurvey.lang b/public/langs/mk_MK/opensurvey.lang similarity index 100% rename from htdocs/langs/mk_MK/opensurvey.lang rename to public/langs/mk_MK/opensurvey.lang diff --git a/htdocs/langs/mk_MK/orders.lang b/public/langs/mk_MK/orders.lang similarity index 100% rename from htdocs/langs/mk_MK/orders.lang rename to public/langs/mk_MK/orders.lang diff --git a/htdocs/langs/mk_MK/other.lang b/public/langs/mk_MK/other.lang similarity index 100% rename from htdocs/langs/mk_MK/other.lang rename to public/langs/mk_MK/other.lang diff --git a/htdocs/langs/mk_MK/paybox.lang b/public/langs/mk_MK/paybox.lang similarity index 100% rename from htdocs/langs/mk_MK/paybox.lang rename to public/langs/mk_MK/paybox.lang diff --git a/htdocs/langs/mk_MK/paypal.lang b/public/langs/mk_MK/paypal.lang similarity index 100% rename from htdocs/langs/mk_MK/paypal.lang rename to public/langs/mk_MK/paypal.lang diff --git a/htdocs/langs/mk_MK/printing.lang b/public/langs/mk_MK/printing.lang similarity index 100% rename from htdocs/langs/mk_MK/printing.lang rename to public/langs/mk_MK/printing.lang diff --git a/htdocs/langs/mk_MK/productbatch.lang b/public/langs/mk_MK/productbatch.lang similarity index 100% rename from htdocs/langs/mk_MK/productbatch.lang rename to public/langs/mk_MK/productbatch.lang diff --git a/htdocs/langs/mk_MK/products.lang b/public/langs/mk_MK/products.lang similarity index 100% rename from htdocs/langs/mk_MK/products.lang rename to public/langs/mk_MK/products.lang diff --git a/htdocs/langs/mk_MK/projects.lang b/public/langs/mk_MK/projects.lang similarity index 100% rename from htdocs/langs/mk_MK/projects.lang rename to public/langs/mk_MK/projects.lang diff --git a/htdocs/langs/mk_MK/propal.lang b/public/langs/mk_MK/propal.lang similarity index 100% rename from htdocs/langs/mk_MK/propal.lang rename to public/langs/mk_MK/propal.lang diff --git a/htdocs/langs/mk_MK/receiptprinter.lang b/public/langs/mk_MK/receiptprinter.lang similarity index 100% rename from htdocs/langs/mk_MK/receiptprinter.lang rename to public/langs/mk_MK/receiptprinter.lang diff --git a/htdocs/langs/mk_MK/resource.lang b/public/langs/mk_MK/resource.lang similarity index 100% rename from htdocs/langs/mk_MK/resource.lang rename to public/langs/mk_MK/resource.lang diff --git a/htdocs/langs/mk_MK/salaries.lang b/public/langs/mk_MK/salaries.lang similarity index 100% rename from htdocs/langs/mk_MK/salaries.lang rename to public/langs/mk_MK/salaries.lang diff --git a/htdocs/langs/mk_MK/sendings.lang b/public/langs/mk_MK/sendings.lang similarity index 100% rename from htdocs/langs/mk_MK/sendings.lang rename to public/langs/mk_MK/sendings.lang diff --git a/htdocs/langs/mk_MK/sms.lang b/public/langs/mk_MK/sms.lang similarity index 100% rename from htdocs/langs/mk_MK/sms.lang rename to public/langs/mk_MK/sms.lang diff --git a/htdocs/langs/mk_MK/stocks.lang b/public/langs/mk_MK/stocks.lang similarity index 100% rename from htdocs/langs/mk_MK/stocks.lang rename to public/langs/mk_MK/stocks.lang diff --git a/htdocs/langs/mk_MK/supplier_proposal.lang b/public/langs/mk_MK/supplier_proposal.lang similarity index 100% rename from htdocs/langs/mk_MK/supplier_proposal.lang rename to public/langs/mk_MK/supplier_proposal.lang diff --git a/htdocs/langs/mk_MK/suppliers.lang b/public/langs/mk_MK/suppliers.lang similarity index 100% rename from htdocs/langs/mk_MK/suppliers.lang rename to public/langs/mk_MK/suppliers.lang diff --git a/htdocs/langs/mk_MK/trips.lang b/public/langs/mk_MK/trips.lang similarity index 100% rename from htdocs/langs/mk_MK/trips.lang rename to public/langs/mk_MK/trips.lang diff --git a/htdocs/langs/mk_MK/users.lang b/public/langs/mk_MK/users.lang similarity index 100% rename from htdocs/langs/mk_MK/users.lang rename to public/langs/mk_MK/users.lang diff --git a/htdocs/langs/mk_MK/website.lang b/public/langs/mk_MK/website.lang similarity index 100% rename from htdocs/langs/mk_MK/website.lang rename to public/langs/mk_MK/website.lang diff --git a/htdocs/langs/mk_MK/withdrawals.lang b/public/langs/mk_MK/withdrawals.lang similarity index 100% rename from htdocs/langs/mk_MK/withdrawals.lang rename to public/langs/mk_MK/withdrawals.lang diff --git a/htdocs/langs/mk_MK/workflow.lang b/public/langs/mk_MK/workflow.lang similarity index 100% rename from htdocs/langs/mk_MK/workflow.lang rename to public/langs/mk_MK/workflow.lang diff --git a/htdocs/langs/mn_MN/accountancy.lang b/public/langs/mn_MN/accountancy.lang similarity index 100% rename from htdocs/langs/mn_MN/accountancy.lang rename to public/langs/mn_MN/accountancy.lang diff --git a/htdocs/langs/mn_MN/admin.lang b/public/langs/mn_MN/admin.lang similarity index 100% rename from htdocs/langs/mn_MN/admin.lang rename to public/langs/mn_MN/admin.lang diff --git a/htdocs/langs/mn_MN/agenda.lang b/public/langs/mn_MN/agenda.lang similarity index 100% rename from htdocs/langs/mn_MN/agenda.lang rename to public/langs/mn_MN/agenda.lang diff --git a/htdocs/langs/mn_MN/banks.lang b/public/langs/mn_MN/banks.lang similarity index 100% rename from htdocs/langs/mn_MN/banks.lang rename to public/langs/mn_MN/banks.lang diff --git a/htdocs/langs/mn_MN/bills.lang b/public/langs/mn_MN/bills.lang similarity index 100% rename from htdocs/langs/mn_MN/bills.lang rename to public/langs/mn_MN/bills.lang diff --git a/htdocs/langs/mn_MN/bookmarks.lang b/public/langs/mn_MN/bookmarks.lang similarity index 100% rename from htdocs/langs/mn_MN/bookmarks.lang rename to public/langs/mn_MN/bookmarks.lang diff --git a/htdocs/langs/mn_MN/boxes.lang b/public/langs/mn_MN/boxes.lang similarity index 100% rename from htdocs/langs/mn_MN/boxes.lang rename to public/langs/mn_MN/boxes.lang diff --git a/htdocs/langs/mn_MN/cashdesk.lang b/public/langs/mn_MN/cashdesk.lang similarity index 100% rename from htdocs/langs/mn_MN/cashdesk.lang rename to public/langs/mn_MN/cashdesk.lang diff --git a/htdocs/langs/mn_MN/categories.lang b/public/langs/mn_MN/categories.lang similarity index 100% rename from htdocs/langs/mn_MN/categories.lang rename to public/langs/mn_MN/categories.lang diff --git a/htdocs/langs/mn_MN/commercial.lang b/public/langs/mn_MN/commercial.lang similarity index 100% rename from htdocs/langs/mn_MN/commercial.lang rename to public/langs/mn_MN/commercial.lang diff --git a/htdocs/langs/mn_MN/companies.lang b/public/langs/mn_MN/companies.lang similarity index 100% rename from htdocs/langs/mn_MN/companies.lang rename to public/langs/mn_MN/companies.lang diff --git a/htdocs/langs/mn_MN/compta.lang b/public/langs/mn_MN/compta.lang similarity index 100% rename from htdocs/langs/mn_MN/compta.lang rename to public/langs/mn_MN/compta.lang diff --git a/htdocs/langs/mn_MN/contracts.lang b/public/langs/mn_MN/contracts.lang similarity index 100% rename from htdocs/langs/mn_MN/contracts.lang rename to public/langs/mn_MN/contracts.lang diff --git a/htdocs/langs/mn_MN/cron.lang b/public/langs/mn_MN/cron.lang similarity index 100% rename from htdocs/langs/mn_MN/cron.lang rename to public/langs/mn_MN/cron.lang diff --git a/htdocs/langs/mn_MN/deliveries.lang b/public/langs/mn_MN/deliveries.lang similarity index 100% rename from htdocs/langs/mn_MN/deliveries.lang rename to public/langs/mn_MN/deliveries.lang diff --git a/htdocs/langs/mn_MN/dict.lang b/public/langs/mn_MN/dict.lang similarity index 100% rename from htdocs/langs/mn_MN/dict.lang rename to public/langs/mn_MN/dict.lang diff --git a/htdocs/langs/mn_MN/donations.lang b/public/langs/mn_MN/donations.lang similarity index 100% rename from htdocs/langs/mn_MN/donations.lang rename to public/langs/mn_MN/donations.lang diff --git a/htdocs/langs/mn_MN/ecm.lang b/public/langs/mn_MN/ecm.lang similarity index 100% rename from htdocs/langs/mn_MN/ecm.lang rename to public/langs/mn_MN/ecm.lang diff --git a/htdocs/langs/mn_MN/errors.lang b/public/langs/mn_MN/errors.lang similarity index 100% rename from htdocs/langs/mn_MN/errors.lang rename to public/langs/mn_MN/errors.lang diff --git a/htdocs/langs/mn_MN/exports.lang b/public/langs/mn_MN/exports.lang similarity index 100% rename from htdocs/langs/mn_MN/exports.lang rename to public/langs/mn_MN/exports.lang diff --git a/htdocs/langs/mn_MN/externalsite.lang b/public/langs/mn_MN/externalsite.lang similarity index 100% rename from htdocs/langs/mn_MN/externalsite.lang rename to public/langs/mn_MN/externalsite.lang diff --git a/htdocs/langs/mn_MN/ftp.lang b/public/langs/mn_MN/ftp.lang similarity index 100% rename from htdocs/langs/mn_MN/ftp.lang rename to public/langs/mn_MN/ftp.lang diff --git a/htdocs/langs/mn_MN/help.lang b/public/langs/mn_MN/help.lang similarity index 100% rename from htdocs/langs/mn_MN/help.lang rename to public/langs/mn_MN/help.lang diff --git a/htdocs/langs/mn_MN/holiday.lang b/public/langs/mn_MN/holiday.lang similarity index 100% rename from htdocs/langs/mn_MN/holiday.lang rename to public/langs/mn_MN/holiday.lang diff --git a/htdocs/langs/mn_MN/hrm.lang b/public/langs/mn_MN/hrm.lang similarity index 100% rename from htdocs/langs/mn_MN/hrm.lang rename to public/langs/mn_MN/hrm.lang diff --git a/htdocs/langs/mn_MN/incoterm.lang b/public/langs/mn_MN/incoterm.lang similarity index 100% rename from htdocs/langs/mn_MN/incoterm.lang rename to public/langs/mn_MN/incoterm.lang diff --git a/htdocs/langs/mn_MN/install.lang b/public/langs/mn_MN/install.lang similarity index 100% rename from htdocs/langs/mn_MN/install.lang rename to public/langs/mn_MN/install.lang diff --git a/htdocs/langs/mn_MN/interventions.lang b/public/langs/mn_MN/interventions.lang similarity index 100% rename from htdocs/langs/mn_MN/interventions.lang rename to public/langs/mn_MN/interventions.lang diff --git a/htdocs/langs/mn_MN/languages.lang b/public/langs/mn_MN/languages.lang similarity index 100% rename from htdocs/langs/mn_MN/languages.lang rename to public/langs/mn_MN/languages.lang diff --git a/htdocs/langs/mn_MN/ldap.lang b/public/langs/mn_MN/ldap.lang similarity index 100% rename from htdocs/langs/mn_MN/ldap.lang rename to public/langs/mn_MN/ldap.lang diff --git a/htdocs/langs/mn_MN/link.lang b/public/langs/mn_MN/link.lang similarity index 100% rename from htdocs/langs/mn_MN/link.lang rename to public/langs/mn_MN/link.lang diff --git a/htdocs/langs/mn_MN/loan.lang b/public/langs/mn_MN/loan.lang similarity index 100% rename from htdocs/langs/mn_MN/loan.lang rename to public/langs/mn_MN/loan.lang diff --git a/htdocs/langs/mn_MN/mailmanspip.lang b/public/langs/mn_MN/mailmanspip.lang similarity index 100% rename from htdocs/langs/mn_MN/mailmanspip.lang rename to public/langs/mn_MN/mailmanspip.lang diff --git a/htdocs/langs/mn_MN/mails.lang b/public/langs/mn_MN/mails.lang similarity index 100% rename from htdocs/langs/mn_MN/mails.lang rename to public/langs/mn_MN/mails.lang diff --git a/htdocs/langs/mn_MN/main.lang b/public/langs/mn_MN/main.lang similarity index 100% rename from htdocs/langs/mn_MN/main.lang rename to public/langs/mn_MN/main.lang diff --git a/htdocs/langs/mn_MN/margins.lang b/public/langs/mn_MN/margins.lang similarity index 100% rename from htdocs/langs/mn_MN/margins.lang rename to public/langs/mn_MN/margins.lang diff --git a/htdocs/langs/mn_MN/members.lang b/public/langs/mn_MN/members.lang similarity index 100% rename from htdocs/langs/mn_MN/members.lang rename to public/langs/mn_MN/members.lang diff --git a/htdocs/langs/mn_MN/oauth.lang b/public/langs/mn_MN/oauth.lang similarity index 100% rename from htdocs/langs/mn_MN/oauth.lang rename to public/langs/mn_MN/oauth.lang diff --git a/htdocs/langs/mn_MN/opensurvey.lang b/public/langs/mn_MN/opensurvey.lang similarity index 100% rename from htdocs/langs/mn_MN/opensurvey.lang rename to public/langs/mn_MN/opensurvey.lang diff --git a/htdocs/langs/mn_MN/orders.lang b/public/langs/mn_MN/orders.lang similarity index 100% rename from htdocs/langs/mn_MN/orders.lang rename to public/langs/mn_MN/orders.lang diff --git a/htdocs/langs/mn_MN/other.lang b/public/langs/mn_MN/other.lang similarity index 100% rename from htdocs/langs/mn_MN/other.lang rename to public/langs/mn_MN/other.lang diff --git a/htdocs/langs/mn_MN/paybox.lang b/public/langs/mn_MN/paybox.lang similarity index 100% rename from htdocs/langs/mn_MN/paybox.lang rename to public/langs/mn_MN/paybox.lang diff --git a/htdocs/langs/mn_MN/paypal.lang b/public/langs/mn_MN/paypal.lang similarity index 100% rename from htdocs/langs/mn_MN/paypal.lang rename to public/langs/mn_MN/paypal.lang diff --git a/htdocs/langs/mn_MN/printing.lang b/public/langs/mn_MN/printing.lang similarity index 100% rename from htdocs/langs/mn_MN/printing.lang rename to public/langs/mn_MN/printing.lang diff --git a/htdocs/langs/mn_MN/productbatch.lang b/public/langs/mn_MN/productbatch.lang similarity index 100% rename from htdocs/langs/mn_MN/productbatch.lang rename to public/langs/mn_MN/productbatch.lang diff --git a/htdocs/langs/mn_MN/products.lang b/public/langs/mn_MN/products.lang similarity index 100% rename from htdocs/langs/mn_MN/products.lang rename to public/langs/mn_MN/products.lang diff --git a/htdocs/langs/mn_MN/projects.lang b/public/langs/mn_MN/projects.lang similarity index 100% rename from htdocs/langs/mn_MN/projects.lang rename to public/langs/mn_MN/projects.lang diff --git a/htdocs/langs/mn_MN/propal.lang b/public/langs/mn_MN/propal.lang similarity index 100% rename from htdocs/langs/mn_MN/propal.lang rename to public/langs/mn_MN/propal.lang diff --git a/htdocs/langs/mn_MN/receiptprinter.lang b/public/langs/mn_MN/receiptprinter.lang similarity index 100% rename from htdocs/langs/mn_MN/receiptprinter.lang rename to public/langs/mn_MN/receiptprinter.lang diff --git a/htdocs/langs/mn_MN/resource.lang b/public/langs/mn_MN/resource.lang similarity index 100% rename from htdocs/langs/mn_MN/resource.lang rename to public/langs/mn_MN/resource.lang diff --git a/htdocs/langs/mn_MN/salaries.lang b/public/langs/mn_MN/salaries.lang similarity index 100% rename from htdocs/langs/mn_MN/salaries.lang rename to public/langs/mn_MN/salaries.lang diff --git a/htdocs/langs/mn_MN/sendings.lang b/public/langs/mn_MN/sendings.lang similarity index 100% rename from htdocs/langs/mn_MN/sendings.lang rename to public/langs/mn_MN/sendings.lang diff --git a/htdocs/langs/mn_MN/sms.lang b/public/langs/mn_MN/sms.lang similarity index 100% rename from htdocs/langs/mn_MN/sms.lang rename to public/langs/mn_MN/sms.lang diff --git a/htdocs/langs/mn_MN/stocks.lang b/public/langs/mn_MN/stocks.lang similarity index 100% rename from htdocs/langs/mn_MN/stocks.lang rename to public/langs/mn_MN/stocks.lang diff --git a/htdocs/langs/mn_MN/supplier_proposal.lang b/public/langs/mn_MN/supplier_proposal.lang similarity index 100% rename from htdocs/langs/mn_MN/supplier_proposal.lang rename to public/langs/mn_MN/supplier_proposal.lang diff --git a/htdocs/langs/mn_MN/suppliers.lang b/public/langs/mn_MN/suppliers.lang similarity index 100% rename from htdocs/langs/mn_MN/suppliers.lang rename to public/langs/mn_MN/suppliers.lang diff --git a/htdocs/langs/mn_MN/trips.lang b/public/langs/mn_MN/trips.lang similarity index 100% rename from htdocs/langs/mn_MN/trips.lang rename to public/langs/mn_MN/trips.lang diff --git a/htdocs/langs/mn_MN/users.lang b/public/langs/mn_MN/users.lang similarity index 100% rename from htdocs/langs/mn_MN/users.lang rename to public/langs/mn_MN/users.lang diff --git a/htdocs/langs/mn_MN/website.lang b/public/langs/mn_MN/website.lang similarity index 100% rename from htdocs/langs/mn_MN/website.lang rename to public/langs/mn_MN/website.lang diff --git a/htdocs/langs/mn_MN/withdrawals.lang b/public/langs/mn_MN/withdrawals.lang similarity index 100% rename from htdocs/langs/mn_MN/withdrawals.lang rename to public/langs/mn_MN/withdrawals.lang diff --git a/htdocs/langs/mn_MN/workflow.lang b/public/langs/mn_MN/workflow.lang similarity index 100% rename from htdocs/langs/mn_MN/workflow.lang rename to public/langs/mn_MN/workflow.lang diff --git a/htdocs/langs/nb_NO/accountancy.lang b/public/langs/nb_NO/accountancy.lang similarity index 100% rename from htdocs/langs/nb_NO/accountancy.lang rename to public/langs/nb_NO/accountancy.lang diff --git a/htdocs/langs/nb_NO/admin.lang b/public/langs/nb_NO/admin.lang similarity index 100% rename from htdocs/langs/nb_NO/admin.lang rename to public/langs/nb_NO/admin.lang diff --git a/htdocs/langs/nb_NO/agenda.lang b/public/langs/nb_NO/agenda.lang similarity index 100% rename from htdocs/langs/nb_NO/agenda.lang rename to public/langs/nb_NO/agenda.lang diff --git a/htdocs/langs/nb_NO/banks.lang b/public/langs/nb_NO/banks.lang similarity index 100% rename from htdocs/langs/nb_NO/banks.lang rename to public/langs/nb_NO/banks.lang diff --git a/htdocs/langs/nb_NO/bills.lang b/public/langs/nb_NO/bills.lang similarity index 100% rename from htdocs/langs/nb_NO/bills.lang rename to public/langs/nb_NO/bills.lang diff --git a/htdocs/langs/nb_NO/bookmarks.lang b/public/langs/nb_NO/bookmarks.lang similarity index 100% rename from htdocs/langs/nb_NO/bookmarks.lang rename to public/langs/nb_NO/bookmarks.lang diff --git a/htdocs/langs/nb_NO/boxes.lang b/public/langs/nb_NO/boxes.lang similarity index 100% rename from htdocs/langs/nb_NO/boxes.lang rename to public/langs/nb_NO/boxes.lang diff --git a/htdocs/langs/nb_NO/cashdesk.lang b/public/langs/nb_NO/cashdesk.lang similarity index 100% rename from htdocs/langs/nb_NO/cashdesk.lang rename to public/langs/nb_NO/cashdesk.lang diff --git a/htdocs/langs/nb_NO/categories.lang b/public/langs/nb_NO/categories.lang similarity index 100% rename from htdocs/langs/nb_NO/categories.lang rename to public/langs/nb_NO/categories.lang diff --git a/htdocs/langs/nb_NO/commercial.lang b/public/langs/nb_NO/commercial.lang similarity index 100% rename from htdocs/langs/nb_NO/commercial.lang rename to public/langs/nb_NO/commercial.lang diff --git a/htdocs/langs/nb_NO/companies.lang b/public/langs/nb_NO/companies.lang similarity index 100% rename from htdocs/langs/nb_NO/companies.lang rename to public/langs/nb_NO/companies.lang diff --git a/htdocs/langs/nb_NO/compta.lang b/public/langs/nb_NO/compta.lang similarity index 100% rename from htdocs/langs/nb_NO/compta.lang rename to public/langs/nb_NO/compta.lang diff --git a/htdocs/langs/nb_NO/contracts.lang b/public/langs/nb_NO/contracts.lang similarity index 100% rename from htdocs/langs/nb_NO/contracts.lang rename to public/langs/nb_NO/contracts.lang diff --git a/htdocs/langs/nb_NO/cron.lang b/public/langs/nb_NO/cron.lang similarity index 100% rename from htdocs/langs/nb_NO/cron.lang rename to public/langs/nb_NO/cron.lang diff --git a/htdocs/langs/nb_NO/deliveries.lang b/public/langs/nb_NO/deliveries.lang similarity index 100% rename from htdocs/langs/nb_NO/deliveries.lang rename to public/langs/nb_NO/deliveries.lang diff --git a/htdocs/langs/nb_NO/dict.lang b/public/langs/nb_NO/dict.lang similarity index 100% rename from htdocs/langs/nb_NO/dict.lang rename to public/langs/nb_NO/dict.lang diff --git a/htdocs/langs/nb_NO/donations.lang b/public/langs/nb_NO/donations.lang similarity index 100% rename from htdocs/langs/nb_NO/donations.lang rename to public/langs/nb_NO/donations.lang diff --git a/htdocs/langs/nb_NO/ecm.lang b/public/langs/nb_NO/ecm.lang similarity index 100% rename from htdocs/langs/nb_NO/ecm.lang rename to public/langs/nb_NO/ecm.lang diff --git a/htdocs/langs/nb_NO/errors.lang b/public/langs/nb_NO/errors.lang similarity index 100% rename from htdocs/langs/nb_NO/errors.lang rename to public/langs/nb_NO/errors.lang diff --git a/htdocs/langs/nb_NO/exports.lang b/public/langs/nb_NO/exports.lang similarity index 100% rename from htdocs/langs/nb_NO/exports.lang rename to public/langs/nb_NO/exports.lang diff --git a/htdocs/langs/nb_NO/externalsite.lang b/public/langs/nb_NO/externalsite.lang similarity index 100% rename from htdocs/langs/nb_NO/externalsite.lang rename to public/langs/nb_NO/externalsite.lang diff --git a/htdocs/langs/nb_NO/ftp.lang b/public/langs/nb_NO/ftp.lang similarity index 100% rename from htdocs/langs/nb_NO/ftp.lang rename to public/langs/nb_NO/ftp.lang diff --git a/htdocs/langs/nb_NO/help.lang b/public/langs/nb_NO/help.lang similarity index 100% rename from htdocs/langs/nb_NO/help.lang rename to public/langs/nb_NO/help.lang diff --git a/htdocs/langs/nb_NO/holiday.lang b/public/langs/nb_NO/holiday.lang similarity index 100% rename from htdocs/langs/nb_NO/holiday.lang rename to public/langs/nb_NO/holiday.lang diff --git a/htdocs/langs/nb_NO/hrm.lang b/public/langs/nb_NO/hrm.lang similarity index 100% rename from htdocs/langs/nb_NO/hrm.lang rename to public/langs/nb_NO/hrm.lang diff --git a/htdocs/langs/nb_NO/incoterm.lang b/public/langs/nb_NO/incoterm.lang similarity index 100% rename from htdocs/langs/nb_NO/incoterm.lang rename to public/langs/nb_NO/incoterm.lang diff --git a/htdocs/langs/nb_NO/install.lang b/public/langs/nb_NO/install.lang similarity index 100% rename from htdocs/langs/nb_NO/install.lang rename to public/langs/nb_NO/install.lang diff --git a/htdocs/langs/nb_NO/interventions.lang b/public/langs/nb_NO/interventions.lang similarity index 100% rename from htdocs/langs/nb_NO/interventions.lang rename to public/langs/nb_NO/interventions.lang diff --git a/htdocs/langs/nb_NO/languages.lang b/public/langs/nb_NO/languages.lang similarity index 100% rename from htdocs/langs/nb_NO/languages.lang rename to public/langs/nb_NO/languages.lang diff --git a/htdocs/langs/nb_NO/ldap.lang b/public/langs/nb_NO/ldap.lang similarity index 100% rename from htdocs/langs/nb_NO/ldap.lang rename to public/langs/nb_NO/ldap.lang diff --git a/htdocs/langs/nb_NO/link.lang b/public/langs/nb_NO/link.lang similarity index 100% rename from htdocs/langs/nb_NO/link.lang rename to public/langs/nb_NO/link.lang diff --git a/htdocs/langs/nb_NO/loan.lang b/public/langs/nb_NO/loan.lang similarity index 100% rename from htdocs/langs/nb_NO/loan.lang rename to public/langs/nb_NO/loan.lang diff --git a/htdocs/langs/nb_NO/mailmanspip.lang b/public/langs/nb_NO/mailmanspip.lang similarity index 100% rename from htdocs/langs/nb_NO/mailmanspip.lang rename to public/langs/nb_NO/mailmanspip.lang diff --git a/htdocs/langs/nb_NO/mails.lang b/public/langs/nb_NO/mails.lang similarity index 100% rename from htdocs/langs/nb_NO/mails.lang rename to public/langs/nb_NO/mails.lang diff --git a/htdocs/langs/nb_NO/main.lang b/public/langs/nb_NO/main.lang similarity index 100% rename from htdocs/langs/nb_NO/main.lang rename to public/langs/nb_NO/main.lang diff --git a/htdocs/langs/nb_NO/margins.lang b/public/langs/nb_NO/margins.lang similarity index 100% rename from htdocs/langs/nb_NO/margins.lang rename to public/langs/nb_NO/margins.lang diff --git a/htdocs/langs/nb_NO/members.lang b/public/langs/nb_NO/members.lang similarity index 100% rename from htdocs/langs/nb_NO/members.lang rename to public/langs/nb_NO/members.lang diff --git a/htdocs/langs/nb_NO/oauth.lang b/public/langs/nb_NO/oauth.lang similarity index 100% rename from htdocs/langs/nb_NO/oauth.lang rename to public/langs/nb_NO/oauth.lang diff --git a/htdocs/langs/nb_NO/opensurvey.lang b/public/langs/nb_NO/opensurvey.lang similarity index 100% rename from htdocs/langs/nb_NO/opensurvey.lang rename to public/langs/nb_NO/opensurvey.lang diff --git a/htdocs/langs/nb_NO/orders.lang b/public/langs/nb_NO/orders.lang similarity index 100% rename from htdocs/langs/nb_NO/orders.lang rename to public/langs/nb_NO/orders.lang diff --git a/htdocs/langs/nb_NO/other.lang b/public/langs/nb_NO/other.lang similarity index 100% rename from htdocs/langs/nb_NO/other.lang rename to public/langs/nb_NO/other.lang diff --git a/htdocs/langs/nb_NO/paybox.lang b/public/langs/nb_NO/paybox.lang similarity index 100% rename from htdocs/langs/nb_NO/paybox.lang rename to public/langs/nb_NO/paybox.lang diff --git a/htdocs/langs/nb_NO/paypal.lang b/public/langs/nb_NO/paypal.lang similarity index 100% rename from htdocs/langs/nb_NO/paypal.lang rename to public/langs/nb_NO/paypal.lang diff --git a/htdocs/langs/nb_NO/printing.lang b/public/langs/nb_NO/printing.lang similarity index 100% rename from htdocs/langs/nb_NO/printing.lang rename to public/langs/nb_NO/printing.lang diff --git a/htdocs/langs/nb_NO/productbatch.lang b/public/langs/nb_NO/productbatch.lang similarity index 100% rename from htdocs/langs/nb_NO/productbatch.lang rename to public/langs/nb_NO/productbatch.lang diff --git a/htdocs/langs/nb_NO/products.lang b/public/langs/nb_NO/products.lang similarity index 100% rename from htdocs/langs/nb_NO/products.lang rename to public/langs/nb_NO/products.lang diff --git a/htdocs/langs/nb_NO/projects.lang b/public/langs/nb_NO/projects.lang similarity index 100% rename from htdocs/langs/nb_NO/projects.lang rename to public/langs/nb_NO/projects.lang diff --git a/htdocs/langs/nb_NO/propal.lang b/public/langs/nb_NO/propal.lang similarity index 100% rename from htdocs/langs/nb_NO/propal.lang rename to public/langs/nb_NO/propal.lang diff --git a/htdocs/langs/nb_NO/receiptprinter.lang b/public/langs/nb_NO/receiptprinter.lang similarity index 100% rename from htdocs/langs/nb_NO/receiptprinter.lang rename to public/langs/nb_NO/receiptprinter.lang diff --git a/htdocs/langs/nb_NO/resource.lang b/public/langs/nb_NO/resource.lang similarity index 100% rename from htdocs/langs/nb_NO/resource.lang rename to public/langs/nb_NO/resource.lang diff --git a/htdocs/langs/nb_NO/salaries.lang b/public/langs/nb_NO/salaries.lang similarity index 100% rename from htdocs/langs/nb_NO/salaries.lang rename to public/langs/nb_NO/salaries.lang diff --git a/htdocs/langs/nb_NO/sendings.lang b/public/langs/nb_NO/sendings.lang similarity index 100% rename from htdocs/langs/nb_NO/sendings.lang rename to public/langs/nb_NO/sendings.lang diff --git a/htdocs/langs/nb_NO/sms.lang b/public/langs/nb_NO/sms.lang similarity index 100% rename from htdocs/langs/nb_NO/sms.lang rename to public/langs/nb_NO/sms.lang diff --git a/htdocs/langs/nb_NO/stocks.lang b/public/langs/nb_NO/stocks.lang similarity index 100% rename from htdocs/langs/nb_NO/stocks.lang rename to public/langs/nb_NO/stocks.lang diff --git a/htdocs/langs/nb_NO/supplier_proposal.lang b/public/langs/nb_NO/supplier_proposal.lang similarity index 100% rename from htdocs/langs/nb_NO/supplier_proposal.lang rename to public/langs/nb_NO/supplier_proposal.lang diff --git a/htdocs/langs/nb_NO/suppliers.lang b/public/langs/nb_NO/suppliers.lang similarity index 100% rename from htdocs/langs/nb_NO/suppliers.lang rename to public/langs/nb_NO/suppliers.lang diff --git a/htdocs/langs/nb_NO/trips.lang b/public/langs/nb_NO/trips.lang similarity index 100% rename from htdocs/langs/nb_NO/trips.lang rename to public/langs/nb_NO/trips.lang diff --git a/htdocs/langs/nb_NO/users.lang b/public/langs/nb_NO/users.lang similarity index 100% rename from htdocs/langs/nb_NO/users.lang rename to public/langs/nb_NO/users.lang diff --git a/htdocs/langs/nb_NO/website.lang b/public/langs/nb_NO/website.lang similarity index 100% rename from htdocs/langs/nb_NO/website.lang rename to public/langs/nb_NO/website.lang diff --git a/htdocs/langs/nb_NO/withdrawals.lang b/public/langs/nb_NO/withdrawals.lang similarity index 100% rename from htdocs/langs/nb_NO/withdrawals.lang rename to public/langs/nb_NO/withdrawals.lang diff --git a/htdocs/langs/nb_NO/workflow.lang b/public/langs/nb_NO/workflow.lang similarity index 100% rename from htdocs/langs/nb_NO/workflow.lang rename to public/langs/nb_NO/workflow.lang diff --git a/htdocs/langs/nl_BE/accountancy.lang b/public/langs/nl_BE/accountancy.lang similarity index 100% rename from htdocs/langs/nl_BE/accountancy.lang rename to public/langs/nl_BE/accountancy.lang diff --git a/htdocs/langs/nl_BE/admin.lang b/public/langs/nl_BE/admin.lang similarity index 100% rename from htdocs/langs/nl_BE/admin.lang rename to public/langs/nl_BE/admin.lang diff --git a/htdocs/langs/nl_BE/agenda.lang b/public/langs/nl_BE/agenda.lang similarity index 100% rename from htdocs/langs/nl_BE/agenda.lang rename to public/langs/nl_BE/agenda.lang diff --git a/htdocs/langs/nl_BE/banks.lang b/public/langs/nl_BE/banks.lang similarity index 100% rename from htdocs/langs/nl_BE/banks.lang rename to public/langs/nl_BE/banks.lang diff --git a/htdocs/langs/nl_BE/bills.lang b/public/langs/nl_BE/bills.lang similarity index 100% rename from htdocs/langs/nl_BE/bills.lang rename to public/langs/nl_BE/bills.lang diff --git a/htdocs/langs/nl_BE/bookmarks.lang b/public/langs/nl_BE/bookmarks.lang similarity index 100% rename from htdocs/langs/nl_BE/bookmarks.lang rename to public/langs/nl_BE/bookmarks.lang diff --git a/htdocs/langs/nl_BE/boxes.lang b/public/langs/nl_BE/boxes.lang similarity index 100% rename from htdocs/langs/nl_BE/boxes.lang rename to public/langs/nl_BE/boxes.lang diff --git a/htdocs/langs/nl_BE/cashdesk.lang b/public/langs/nl_BE/cashdesk.lang similarity index 100% rename from htdocs/langs/nl_BE/cashdesk.lang rename to public/langs/nl_BE/cashdesk.lang diff --git a/htdocs/langs/nl_BE/categories.lang b/public/langs/nl_BE/categories.lang similarity index 100% rename from htdocs/langs/nl_BE/categories.lang rename to public/langs/nl_BE/categories.lang diff --git a/htdocs/langs/nl_BE/commercial.lang b/public/langs/nl_BE/commercial.lang similarity index 100% rename from htdocs/langs/nl_BE/commercial.lang rename to public/langs/nl_BE/commercial.lang diff --git a/htdocs/langs/nl_BE/companies.lang b/public/langs/nl_BE/companies.lang similarity index 100% rename from htdocs/langs/nl_BE/companies.lang rename to public/langs/nl_BE/companies.lang diff --git a/htdocs/langs/nl_BE/compta.lang b/public/langs/nl_BE/compta.lang similarity index 100% rename from htdocs/langs/nl_BE/compta.lang rename to public/langs/nl_BE/compta.lang diff --git a/htdocs/langs/nl_BE/contracts.lang b/public/langs/nl_BE/contracts.lang similarity index 100% rename from htdocs/langs/nl_BE/contracts.lang rename to public/langs/nl_BE/contracts.lang diff --git a/htdocs/langs/nl_BE/cron.lang b/public/langs/nl_BE/cron.lang similarity index 100% rename from htdocs/langs/nl_BE/cron.lang rename to public/langs/nl_BE/cron.lang diff --git a/htdocs/langs/nl_BE/deliveries.lang b/public/langs/nl_BE/deliveries.lang similarity index 100% rename from htdocs/langs/nl_BE/deliveries.lang rename to public/langs/nl_BE/deliveries.lang diff --git a/htdocs/langs/nl_BE/dict.lang b/public/langs/nl_BE/dict.lang similarity index 100% rename from htdocs/langs/nl_BE/dict.lang rename to public/langs/nl_BE/dict.lang diff --git a/htdocs/langs/nl_BE/donations.lang b/public/langs/nl_BE/donations.lang similarity index 100% rename from htdocs/langs/nl_BE/donations.lang rename to public/langs/nl_BE/donations.lang diff --git a/htdocs/langs/nl_BE/ecm.lang b/public/langs/nl_BE/ecm.lang similarity index 100% rename from htdocs/langs/nl_BE/ecm.lang rename to public/langs/nl_BE/ecm.lang diff --git a/htdocs/langs/nl_BE/errors.lang b/public/langs/nl_BE/errors.lang similarity index 100% rename from htdocs/langs/nl_BE/errors.lang rename to public/langs/nl_BE/errors.lang diff --git a/htdocs/langs/nl_BE/exports.lang b/public/langs/nl_BE/exports.lang similarity index 100% rename from htdocs/langs/nl_BE/exports.lang rename to public/langs/nl_BE/exports.lang diff --git a/htdocs/langs/nl_BE/externalsite.lang b/public/langs/nl_BE/externalsite.lang similarity index 100% rename from htdocs/langs/nl_BE/externalsite.lang rename to public/langs/nl_BE/externalsite.lang diff --git a/htdocs/langs/nl_BE/ftp.lang b/public/langs/nl_BE/ftp.lang similarity index 100% rename from htdocs/langs/nl_BE/ftp.lang rename to public/langs/nl_BE/ftp.lang diff --git a/htdocs/langs/nl_BE/help.lang b/public/langs/nl_BE/help.lang similarity index 100% rename from htdocs/langs/nl_BE/help.lang rename to public/langs/nl_BE/help.lang diff --git a/htdocs/langs/nl_BE/holiday.lang b/public/langs/nl_BE/holiday.lang similarity index 100% rename from htdocs/langs/nl_BE/holiday.lang rename to public/langs/nl_BE/holiday.lang diff --git a/htdocs/langs/nl_BE/hrm.lang b/public/langs/nl_BE/hrm.lang similarity index 100% rename from htdocs/langs/nl_BE/hrm.lang rename to public/langs/nl_BE/hrm.lang diff --git a/htdocs/langs/nl_BE/incoterm.lang b/public/langs/nl_BE/incoterm.lang similarity index 100% rename from htdocs/langs/nl_BE/incoterm.lang rename to public/langs/nl_BE/incoterm.lang diff --git a/htdocs/langs/nl_BE/install.lang b/public/langs/nl_BE/install.lang similarity index 100% rename from htdocs/langs/nl_BE/install.lang rename to public/langs/nl_BE/install.lang diff --git a/htdocs/langs/nl_BE/interventions.lang b/public/langs/nl_BE/interventions.lang similarity index 100% rename from htdocs/langs/nl_BE/interventions.lang rename to public/langs/nl_BE/interventions.lang diff --git a/htdocs/langs/nl_BE/languages.lang b/public/langs/nl_BE/languages.lang similarity index 100% rename from htdocs/langs/nl_BE/languages.lang rename to public/langs/nl_BE/languages.lang diff --git a/htdocs/langs/nl_BE/ldap.lang b/public/langs/nl_BE/ldap.lang similarity index 100% rename from htdocs/langs/nl_BE/ldap.lang rename to public/langs/nl_BE/ldap.lang diff --git a/htdocs/langs/nl_BE/link.lang b/public/langs/nl_BE/link.lang similarity index 100% rename from htdocs/langs/nl_BE/link.lang rename to public/langs/nl_BE/link.lang diff --git a/htdocs/langs/nl_BE/loan.lang b/public/langs/nl_BE/loan.lang similarity index 100% rename from htdocs/langs/nl_BE/loan.lang rename to public/langs/nl_BE/loan.lang diff --git a/htdocs/langs/nl_BE/mailmanspip.lang b/public/langs/nl_BE/mailmanspip.lang similarity index 100% rename from htdocs/langs/nl_BE/mailmanspip.lang rename to public/langs/nl_BE/mailmanspip.lang diff --git a/htdocs/langs/nl_BE/mails.lang b/public/langs/nl_BE/mails.lang similarity index 100% rename from htdocs/langs/nl_BE/mails.lang rename to public/langs/nl_BE/mails.lang diff --git a/htdocs/langs/nl_BE/main.lang b/public/langs/nl_BE/main.lang similarity index 100% rename from htdocs/langs/nl_BE/main.lang rename to public/langs/nl_BE/main.lang diff --git a/htdocs/langs/nl_BE/margins.lang b/public/langs/nl_BE/margins.lang similarity index 100% rename from htdocs/langs/nl_BE/margins.lang rename to public/langs/nl_BE/margins.lang diff --git a/htdocs/langs/nl_BE/members.lang b/public/langs/nl_BE/members.lang similarity index 100% rename from htdocs/langs/nl_BE/members.lang rename to public/langs/nl_BE/members.lang diff --git a/htdocs/langs/nl_BE/oauth.lang b/public/langs/nl_BE/oauth.lang similarity index 100% rename from htdocs/langs/nl_BE/oauth.lang rename to public/langs/nl_BE/oauth.lang diff --git a/htdocs/langs/nl_BE/opensurvey.lang b/public/langs/nl_BE/opensurvey.lang similarity index 100% rename from htdocs/langs/nl_BE/opensurvey.lang rename to public/langs/nl_BE/opensurvey.lang diff --git a/htdocs/langs/nl_BE/orders.lang b/public/langs/nl_BE/orders.lang similarity index 100% rename from htdocs/langs/nl_BE/orders.lang rename to public/langs/nl_BE/orders.lang diff --git a/htdocs/langs/nl_BE/other.lang b/public/langs/nl_BE/other.lang similarity index 100% rename from htdocs/langs/nl_BE/other.lang rename to public/langs/nl_BE/other.lang diff --git a/htdocs/langs/nl_BE/paybox.lang b/public/langs/nl_BE/paybox.lang similarity index 100% rename from htdocs/langs/nl_BE/paybox.lang rename to public/langs/nl_BE/paybox.lang diff --git a/htdocs/langs/nl_BE/paypal.lang b/public/langs/nl_BE/paypal.lang similarity index 100% rename from htdocs/langs/nl_BE/paypal.lang rename to public/langs/nl_BE/paypal.lang diff --git a/htdocs/langs/nl_BE/printing.lang b/public/langs/nl_BE/printing.lang similarity index 100% rename from htdocs/langs/nl_BE/printing.lang rename to public/langs/nl_BE/printing.lang diff --git a/htdocs/langs/nl_BE/productbatch.lang b/public/langs/nl_BE/productbatch.lang similarity index 100% rename from htdocs/langs/nl_BE/productbatch.lang rename to public/langs/nl_BE/productbatch.lang diff --git a/htdocs/langs/nl_BE/products.lang b/public/langs/nl_BE/products.lang similarity index 100% rename from htdocs/langs/nl_BE/products.lang rename to public/langs/nl_BE/products.lang diff --git a/htdocs/langs/nl_BE/projects.lang b/public/langs/nl_BE/projects.lang similarity index 100% rename from htdocs/langs/nl_BE/projects.lang rename to public/langs/nl_BE/projects.lang diff --git a/htdocs/langs/nl_BE/propal.lang b/public/langs/nl_BE/propal.lang similarity index 100% rename from htdocs/langs/nl_BE/propal.lang rename to public/langs/nl_BE/propal.lang diff --git a/htdocs/langs/nl_BE/receiptprinter.lang b/public/langs/nl_BE/receiptprinter.lang similarity index 100% rename from htdocs/langs/nl_BE/receiptprinter.lang rename to public/langs/nl_BE/receiptprinter.lang diff --git a/htdocs/langs/nl_BE/resource.lang b/public/langs/nl_BE/resource.lang similarity index 100% rename from htdocs/langs/nl_BE/resource.lang rename to public/langs/nl_BE/resource.lang diff --git a/htdocs/langs/nl_BE/salaries.lang b/public/langs/nl_BE/salaries.lang similarity index 100% rename from htdocs/langs/nl_BE/salaries.lang rename to public/langs/nl_BE/salaries.lang diff --git a/htdocs/langs/nl_BE/sendings.lang b/public/langs/nl_BE/sendings.lang similarity index 100% rename from htdocs/langs/nl_BE/sendings.lang rename to public/langs/nl_BE/sendings.lang diff --git a/htdocs/langs/nl_BE/sms.lang b/public/langs/nl_BE/sms.lang similarity index 100% rename from htdocs/langs/nl_BE/sms.lang rename to public/langs/nl_BE/sms.lang diff --git a/htdocs/langs/nl_BE/stocks.lang b/public/langs/nl_BE/stocks.lang similarity index 100% rename from htdocs/langs/nl_BE/stocks.lang rename to public/langs/nl_BE/stocks.lang diff --git a/htdocs/langs/nl_BE/supplier_proposal.lang b/public/langs/nl_BE/supplier_proposal.lang similarity index 100% rename from htdocs/langs/nl_BE/supplier_proposal.lang rename to public/langs/nl_BE/supplier_proposal.lang diff --git a/htdocs/langs/nl_BE/suppliers.lang b/public/langs/nl_BE/suppliers.lang similarity index 100% rename from htdocs/langs/nl_BE/suppliers.lang rename to public/langs/nl_BE/suppliers.lang diff --git a/htdocs/langs/nl_BE/trips.lang b/public/langs/nl_BE/trips.lang similarity index 100% rename from htdocs/langs/nl_BE/trips.lang rename to public/langs/nl_BE/trips.lang diff --git a/htdocs/langs/nl_BE/users.lang b/public/langs/nl_BE/users.lang similarity index 100% rename from htdocs/langs/nl_BE/users.lang rename to public/langs/nl_BE/users.lang diff --git a/htdocs/langs/nl_BE/website.lang b/public/langs/nl_BE/website.lang similarity index 100% rename from htdocs/langs/nl_BE/website.lang rename to public/langs/nl_BE/website.lang diff --git a/htdocs/langs/nl_BE/withdrawals.lang b/public/langs/nl_BE/withdrawals.lang similarity index 100% rename from htdocs/langs/nl_BE/withdrawals.lang rename to public/langs/nl_BE/withdrawals.lang diff --git a/htdocs/langs/nl_BE/workflow.lang b/public/langs/nl_BE/workflow.lang similarity index 100% rename from htdocs/langs/nl_BE/workflow.lang rename to public/langs/nl_BE/workflow.lang diff --git a/htdocs/langs/nl_NL/accountancy.lang b/public/langs/nl_NL/accountancy.lang similarity index 100% rename from htdocs/langs/nl_NL/accountancy.lang rename to public/langs/nl_NL/accountancy.lang diff --git a/htdocs/langs/nl_NL/admin.lang b/public/langs/nl_NL/admin.lang similarity index 100% rename from htdocs/langs/nl_NL/admin.lang rename to public/langs/nl_NL/admin.lang diff --git a/htdocs/langs/nl_NL/agenda.lang b/public/langs/nl_NL/agenda.lang similarity index 100% rename from htdocs/langs/nl_NL/agenda.lang rename to public/langs/nl_NL/agenda.lang diff --git a/htdocs/langs/nl_NL/banks.lang b/public/langs/nl_NL/banks.lang similarity index 100% rename from htdocs/langs/nl_NL/banks.lang rename to public/langs/nl_NL/banks.lang diff --git a/htdocs/langs/nl_NL/bills.lang b/public/langs/nl_NL/bills.lang similarity index 100% rename from htdocs/langs/nl_NL/bills.lang rename to public/langs/nl_NL/bills.lang diff --git a/htdocs/langs/nl_NL/bookmarks.lang b/public/langs/nl_NL/bookmarks.lang similarity index 100% rename from htdocs/langs/nl_NL/bookmarks.lang rename to public/langs/nl_NL/bookmarks.lang diff --git a/htdocs/langs/nl_NL/boxes.lang b/public/langs/nl_NL/boxes.lang similarity index 100% rename from htdocs/langs/nl_NL/boxes.lang rename to public/langs/nl_NL/boxes.lang diff --git a/htdocs/langs/nl_NL/cashdesk.lang b/public/langs/nl_NL/cashdesk.lang similarity index 100% rename from htdocs/langs/nl_NL/cashdesk.lang rename to public/langs/nl_NL/cashdesk.lang diff --git a/htdocs/langs/nl_NL/categories.lang b/public/langs/nl_NL/categories.lang similarity index 100% rename from htdocs/langs/nl_NL/categories.lang rename to public/langs/nl_NL/categories.lang diff --git a/htdocs/langs/nl_NL/commercial.lang b/public/langs/nl_NL/commercial.lang similarity index 100% rename from htdocs/langs/nl_NL/commercial.lang rename to public/langs/nl_NL/commercial.lang diff --git a/htdocs/langs/nl_NL/companies.lang b/public/langs/nl_NL/companies.lang similarity index 100% rename from htdocs/langs/nl_NL/companies.lang rename to public/langs/nl_NL/companies.lang diff --git a/htdocs/langs/nl_NL/compta.lang b/public/langs/nl_NL/compta.lang similarity index 100% rename from htdocs/langs/nl_NL/compta.lang rename to public/langs/nl_NL/compta.lang diff --git a/htdocs/langs/nl_NL/contracts.lang b/public/langs/nl_NL/contracts.lang similarity index 100% rename from htdocs/langs/nl_NL/contracts.lang rename to public/langs/nl_NL/contracts.lang diff --git a/htdocs/langs/nl_NL/cron.lang b/public/langs/nl_NL/cron.lang similarity index 100% rename from htdocs/langs/nl_NL/cron.lang rename to public/langs/nl_NL/cron.lang diff --git a/htdocs/langs/nl_NL/deliveries.lang b/public/langs/nl_NL/deliveries.lang similarity index 100% rename from htdocs/langs/nl_NL/deliveries.lang rename to public/langs/nl_NL/deliveries.lang diff --git a/htdocs/langs/nl_NL/dict.lang b/public/langs/nl_NL/dict.lang similarity index 100% rename from htdocs/langs/nl_NL/dict.lang rename to public/langs/nl_NL/dict.lang diff --git a/htdocs/langs/nl_NL/donations.lang b/public/langs/nl_NL/donations.lang similarity index 100% rename from htdocs/langs/nl_NL/donations.lang rename to public/langs/nl_NL/donations.lang diff --git a/htdocs/langs/nl_NL/ecm.lang b/public/langs/nl_NL/ecm.lang similarity index 100% rename from htdocs/langs/nl_NL/ecm.lang rename to public/langs/nl_NL/ecm.lang diff --git a/htdocs/langs/nl_NL/errors.lang b/public/langs/nl_NL/errors.lang similarity index 100% rename from htdocs/langs/nl_NL/errors.lang rename to public/langs/nl_NL/errors.lang diff --git a/htdocs/langs/nl_NL/exports.lang b/public/langs/nl_NL/exports.lang similarity index 100% rename from htdocs/langs/nl_NL/exports.lang rename to public/langs/nl_NL/exports.lang diff --git a/htdocs/langs/nl_NL/externalsite.lang b/public/langs/nl_NL/externalsite.lang similarity index 100% rename from htdocs/langs/nl_NL/externalsite.lang rename to public/langs/nl_NL/externalsite.lang diff --git a/htdocs/langs/nl_NL/ftp.lang b/public/langs/nl_NL/ftp.lang similarity index 100% rename from htdocs/langs/nl_NL/ftp.lang rename to public/langs/nl_NL/ftp.lang diff --git a/htdocs/langs/nl_NL/help.lang b/public/langs/nl_NL/help.lang similarity index 100% rename from htdocs/langs/nl_NL/help.lang rename to public/langs/nl_NL/help.lang diff --git a/htdocs/langs/nl_NL/holiday.lang b/public/langs/nl_NL/holiday.lang similarity index 100% rename from htdocs/langs/nl_NL/holiday.lang rename to public/langs/nl_NL/holiday.lang diff --git a/htdocs/langs/nl_NL/hrm.lang b/public/langs/nl_NL/hrm.lang similarity index 100% rename from htdocs/langs/nl_NL/hrm.lang rename to public/langs/nl_NL/hrm.lang diff --git a/htdocs/langs/nl_NL/incoterm.lang b/public/langs/nl_NL/incoterm.lang similarity index 100% rename from htdocs/langs/nl_NL/incoterm.lang rename to public/langs/nl_NL/incoterm.lang diff --git a/htdocs/langs/nl_NL/install.lang b/public/langs/nl_NL/install.lang similarity index 100% rename from htdocs/langs/nl_NL/install.lang rename to public/langs/nl_NL/install.lang diff --git a/htdocs/langs/nl_NL/interventions.lang b/public/langs/nl_NL/interventions.lang similarity index 100% rename from htdocs/langs/nl_NL/interventions.lang rename to public/langs/nl_NL/interventions.lang diff --git a/htdocs/langs/nl_NL/languages.lang b/public/langs/nl_NL/languages.lang similarity index 100% rename from htdocs/langs/nl_NL/languages.lang rename to public/langs/nl_NL/languages.lang diff --git a/htdocs/langs/nl_NL/ldap.lang b/public/langs/nl_NL/ldap.lang similarity index 100% rename from htdocs/langs/nl_NL/ldap.lang rename to public/langs/nl_NL/ldap.lang diff --git a/htdocs/langs/nl_NL/link.lang b/public/langs/nl_NL/link.lang similarity index 100% rename from htdocs/langs/nl_NL/link.lang rename to public/langs/nl_NL/link.lang diff --git a/htdocs/langs/nl_NL/loan.lang b/public/langs/nl_NL/loan.lang similarity index 100% rename from htdocs/langs/nl_NL/loan.lang rename to public/langs/nl_NL/loan.lang diff --git a/htdocs/langs/nl_NL/mailmanspip.lang b/public/langs/nl_NL/mailmanspip.lang similarity index 100% rename from htdocs/langs/nl_NL/mailmanspip.lang rename to public/langs/nl_NL/mailmanspip.lang diff --git a/htdocs/langs/nl_NL/mails.lang b/public/langs/nl_NL/mails.lang similarity index 100% rename from htdocs/langs/nl_NL/mails.lang rename to public/langs/nl_NL/mails.lang diff --git a/htdocs/langs/nl_NL/main.lang b/public/langs/nl_NL/main.lang similarity index 100% rename from htdocs/langs/nl_NL/main.lang rename to public/langs/nl_NL/main.lang diff --git a/htdocs/langs/nl_NL/margins.lang b/public/langs/nl_NL/margins.lang similarity index 100% rename from htdocs/langs/nl_NL/margins.lang rename to public/langs/nl_NL/margins.lang diff --git a/htdocs/langs/nl_NL/members.lang b/public/langs/nl_NL/members.lang similarity index 100% rename from htdocs/langs/nl_NL/members.lang rename to public/langs/nl_NL/members.lang diff --git a/htdocs/langs/nl_NL/oauth.lang b/public/langs/nl_NL/oauth.lang similarity index 100% rename from htdocs/langs/nl_NL/oauth.lang rename to public/langs/nl_NL/oauth.lang diff --git a/htdocs/langs/nl_NL/opensurvey.lang b/public/langs/nl_NL/opensurvey.lang similarity index 100% rename from htdocs/langs/nl_NL/opensurvey.lang rename to public/langs/nl_NL/opensurvey.lang diff --git a/htdocs/langs/nl_NL/orders.lang b/public/langs/nl_NL/orders.lang similarity index 100% rename from htdocs/langs/nl_NL/orders.lang rename to public/langs/nl_NL/orders.lang diff --git a/htdocs/langs/nl_NL/other.lang b/public/langs/nl_NL/other.lang similarity index 100% rename from htdocs/langs/nl_NL/other.lang rename to public/langs/nl_NL/other.lang diff --git a/htdocs/langs/nl_NL/paybox.lang b/public/langs/nl_NL/paybox.lang similarity index 100% rename from htdocs/langs/nl_NL/paybox.lang rename to public/langs/nl_NL/paybox.lang diff --git a/htdocs/langs/nl_NL/paypal.lang b/public/langs/nl_NL/paypal.lang similarity index 100% rename from htdocs/langs/nl_NL/paypal.lang rename to public/langs/nl_NL/paypal.lang diff --git a/htdocs/langs/nl_NL/printing.lang b/public/langs/nl_NL/printing.lang similarity index 100% rename from htdocs/langs/nl_NL/printing.lang rename to public/langs/nl_NL/printing.lang diff --git a/htdocs/langs/nl_NL/productbatch.lang b/public/langs/nl_NL/productbatch.lang similarity index 100% rename from htdocs/langs/nl_NL/productbatch.lang rename to public/langs/nl_NL/productbatch.lang diff --git a/htdocs/langs/nl_NL/products.lang b/public/langs/nl_NL/products.lang similarity index 100% rename from htdocs/langs/nl_NL/products.lang rename to public/langs/nl_NL/products.lang diff --git a/htdocs/langs/nl_NL/projects.lang b/public/langs/nl_NL/projects.lang similarity index 100% rename from htdocs/langs/nl_NL/projects.lang rename to public/langs/nl_NL/projects.lang diff --git a/htdocs/langs/nl_NL/propal.lang b/public/langs/nl_NL/propal.lang similarity index 100% rename from htdocs/langs/nl_NL/propal.lang rename to public/langs/nl_NL/propal.lang diff --git a/htdocs/langs/nl_NL/receiptprinter.lang b/public/langs/nl_NL/receiptprinter.lang similarity index 100% rename from htdocs/langs/nl_NL/receiptprinter.lang rename to public/langs/nl_NL/receiptprinter.lang diff --git a/htdocs/langs/nl_NL/resource.lang b/public/langs/nl_NL/resource.lang similarity index 100% rename from htdocs/langs/nl_NL/resource.lang rename to public/langs/nl_NL/resource.lang diff --git a/htdocs/langs/nl_NL/salaries.lang b/public/langs/nl_NL/salaries.lang similarity index 100% rename from htdocs/langs/nl_NL/salaries.lang rename to public/langs/nl_NL/salaries.lang diff --git a/htdocs/langs/nl_NL/sendings.lang b/public/langs/nl_NL/sendings.lang similarity index 100% rename from htdocs/langs/nl_NL/sendings.lang rename to public/langs/nl_NL/sendings.lang diff --git a/htdocs/langs/nl_NL/sms.lang b/public/langs/nl_NL/sms.lang similarity index 100% rename from htdocs/langs/nl_NL/sms.lang rename to public/langs/nl_NL/sms.lang diff --git a/htdocs/langs/nl_NL/stocks.lang b/public/langs/nl_NL/stocks.lang similarity index 100% rename from htdocs/langs/nl_NL/stocks.lang rename to public/langs/nl_NL/stocks.lang diff --git a/htdocs/langs/nl_NL/supplier_proposal.lang b/public/langs/nl_NL/supplier_proposal.lang similarity index 100% rename from htdocs/langs/nl_NL/supplier_proposal.lang rename to public/langs/nl_NL/supplier_proposal.lang diff --git a/htdocs/langs/nl_NL/suppliers.lang b/public/langs/nl_NL/suppliers.lang similarity index 100% rename from htdocs/langs/nl_NL/suppliers.lang rename to public/langs/nl_NL/suppliers.lang diff --git a/htdocs/langs/nl_NL/trips.lang b/public/langs/nl_NL/trips.lang similarity index 100% rename from htdocs/langs/nl_NL/trips.lang rename to public/langs/nl_NL/trips.lang diff --git a/htdocs/langs/nl_NL/users.lang b/public/langs/nl_NL/users.lang similarity index 100% rename from htdocs/langs/nl_NL/users.lang rename to public/langs/nl_NL/users.lang diff --git a/htdocs/langs/nl_NL/website.lang b/public/langs/nl_NL/website.lang similarity index 100% rename from htdocs/langs/nl_NL/website.lang rename to public/langs/nl_NL/website.lang diff --git a/htdocs/langs/nl_NL/withdrawals.lang b/public/langs/nl_NL/withdrawals.lang similarity index 100% rename from htdocs/langs/nl_NL/withdrawals.lang rename to public/langs/nl_NL/withdrawals.lang diff --git a/htdocs/langs/nl_NL/workflow.lang b/public/langs/nl_NL/workflow.lang similarity index 100% rename from htdocs/langs/nl_NL/workflow.lang rename to public/langs/nl_NL/workflow.lang diff --git a/htdocs/langs/pl_PL/accountancy.lang b/public/langs/pl_PL/accountancy.lang similarity index 100% rename from htdocs/langs/pl_PL/accountancy.lang rename to public/langs/pl_PL/accountancy.lang diff --git a/htdocs/langs/pl_PL/admin.lang b/public/langs/pl_PL/admin.lang similarity index 100% rename from htdocs/langs/pl_PL/admin.lang rename to public/langs/pl_PL/admin.lang diff --git a/htdocs/langs/pl_PL/agenda.lang b/public/langs/pl_PL/agenda.lang similarity index 100% rename from htdocs/langs/pl_PL/agenda.lang rename to public/langs/pl_PL/agenda.lang diff --git a/htdocs/langs/pl_PL/banks.lang b/public/langs/pl_PL/banks.lang similarity index 100% rename from htdocs/langs/pl_PL/banks.lang rename to public/langs/pl_PL/banks.lang diff --git a/htdocs/langs/pl_PL/bills.lang b/public/langs/pl_PL/bills.lang similarity index 100% rename from htdocs/langs/pl_PL/bills.lang rename to public/langs/pl_PL/bills.lang diff --git a/htdocs/langs/pl_PL/bookmarks.lang b/public/langs/pl_PL/bookmarks.lang similarity index 100% rename from htdocs/langs/pl_PL/bookmarks.lang rename to public/langs/pl_PL/bookmarks.lang diff --git a/htdocs/langs/pl_PL/boxes.lang b/public/langs/pl_PL/boxes.lang similarity index 100% rename from htdocs/langs/pl_PL/boxes.lang rename to public/langs/pl_PL/boxes.lang diff --git a/htdocs/langs/pl_PL/cashdesk.lang b/public/langs/pl_PL/cashdesk.lang similarity index 100% rename from htdocs/langs/pl_PL/cashdesk.lang rename to public/langs/pl_PL/cashdesk.lang diff --git a/htdocs/langs/pl_PL/categories.lang b/public/langs/pl_PL/categories.lang similarity index 100% rename from htdocs/langs/pl_PL/categories.lang rename to public/langs/pl_PL/categories.lang diff --git a/htdocs/langs/pl_PL/commercial.lang b/public/langs/pl_PL/commercial.lang similarity index 100% rename from htdocs/langs/pl_PL/commercial.lang rename to public/langs/pl_PL/commercial.lang diff --git a/htdocs/langs/pl_PL/companies.lang b/public/langs/pl_PL/companies.lang similarity index 100% rename from htdocs/langs/pl_PL/companies.lang rename to public/langs/pl_PL/companies.lang diff --git a/htdocs/langs/pl_PL/compta.lang b/public/langs/pl_PL/compta.lang similarity index 100% rename from htdocs/langs/pl_PL/compta.lang rename to public/langs/pl_PL/compta.lang diff --git a/htdocs/langs/pl_PL/contracts.lang b/public/langs/pl_PL/contracts.lang similarity index 100% rename from htdocs/langs/pl_PL/contracts.lang rename to public/langs/pl_PL/contracts.lang diff --git a/htdocs/langs/pl_PL/cron.lang b/public/langs/pl_PL/cron.lang similarity index 100% rename from htdocs/langs/pl_PL/cron.lang rename to public/langs/pl_PL/cron.lang diff --git a/htdocs/langs/pl_PL/deliveries.lang b/public/langs/pl_PL/deliveries.lang similarity index 100% rename from htdocs/langs/pl_PL/deliveries.lang rename to public/langs/pl_PL/deliveries.lang diff --git a/htdocs/langs/pl_PL/dict.lang b/public/langs/pl_PL/dict.lang similarity index 100% rename from htdocs/langs/pl_PL/dict.lang rename to public/langs/pl_PL/dict.lang diff --git a/htdocs/langs/pl_PL/donations.lang b/public/langs/pl_PL/donations.lang similarity index 100% rename from htdocs/langs/pl_PL/donations.lang rename to public/langs/pl_PL/donations.lang diff --git a/htdocs/langs/pl_PL/ecm.lang b/public/langs/pl_PL/ecm.lang similarity index 100% rename from htdocs/langs/pl_PL/ecm.lang rename to public/langs/pl_PL/ecm.lang diff --git a/htdocs/langs/pl_PL/errors.lang b/public/langs/pl_PL/errors.lang similarity index 100% rename from htdocs/langs/pl_PL/errors.lang rename to public/langs/pl_PL/errors.lang diff --git a/htdocs/langs/pl_PL/exports.lang b/public/langs/pl_PL/exports.lang similarity index 100% rename from htdocs/langs/pl_PL/exports.lang rename to public/langs/pl_PL/exports.lang diff --git a/htdocs/langs/pl_PL/externalsite.lang b/public/langs/pl_PL/externalsite.lang similarity index 100% rename from htdocs/langs/pl_PL/externalsite.lang rename to public/langs/pl_PL/externalsite.lang diff --git a/htdocs/langs/pl_PL/ftp.lang b/public/langs/pl_PL/ftp.lang similarity index 100% rename from htdocs/langs/pl_PL/ftp.lang rename to public/langs/pl_PL/ftp.lang diff --git a/htdocs/langs/pl_PL/help.lang b/public/langs/pl_PL/help.lang similarity index 100% rename from htdocs/langs/pl_PL/help.lang rename to public/langs/pl_PL/help.lang diff --git a/htdocs/langs/pl_PL/holiday.lang b/public/langs/pl_PL/holiday.lang similarity index 100% rename from htdocs/langs/pl_PL/holiday.lang rename to public/langs/pl_PL/holiday.lang diff --git a/htdocs/langs/pl_PL/hrm.lang b/public/langs/pl_PL/hrm.lang similarity index 100% rename from htdocs/langs/pl_PL/hrm.lang rename to public/langs/pl_PL/hrm.lang diff --git a/htdocs/langs/pl_PL/incoterm.lang b/public/langs/pl_PL/incoterm.lang similarity index 100% rename from htdocs/langs/pl_PL/incoterm.lang rename to public/langs/pl_PL/incoterm.lang diff --git a/htdocs/langs/pl_PL/install.lang b/public/langs/pl_PL/install.lang similarity index 100% rename from htdocs/langs/pl_PL/install.lang rename to public/langs/pl_PL/install.lang diff --git a/htdocs/langs/pl_PL/interventions.lang b/public/langs/pl_PL/interventions.lang similarity index 100% rename from htdocs/langs/pl_PL/interventions.lang rename to public/langs/pl_PL/interventions.lang diff --git a/htdocs/langs/pl_PL/languages.lang b/public/langs/pl_PL/languages.lang similarity index 100% rename from htdocs/langs/pl_PL/languages.lang rename to public/langs/pl_PL/languages.lang diff --git a/htdocs/langs/pl_PL/ldap.lang b/public/langs/pl_PL/ldap.lang similarity index 100% rename from htdocs/langs/pl_PL/ldap.lang rename to public/langs/pl_PL/ldap.lang diff --git a/htdocs/langs/pl_PL/link.lang b/public/langs/pl_PL/link.lang similarity index 100% rename from htdocs/langs/pl_PL/link.lang rename to public/langs/pl_PL/link.lang diff --git a/htdocs/langs/pl_PL/loan.lang b/public/langs/pl_PL/loan.lang similarity index 100% rename from htdocs/langs/pl_PL/loan.lang rename to public/langs/pl_PL/loan.lang diff --git a/htdocs/langs/pl_PL/mailmanspip.lang b/public/langs/pl_PL/mailmanspip.lang similarity index 100% rename from htdocs/langs/pl_PL/mailmanspip.lang rename to public/langs/pl_PL/mailmanspip.lang diff --git a/htdocs/langs/pl_PL/mails.lang b/public/langs/pl_PL/mails.lang similarity index 100% rename from htdocs/langs/pl_PL/mails.lang rename to public/langs/pl_PL/mails.lang diff --git a/htdocs/langs/pl_PL/main.lang b/public/langs/pl_PL/main.lang similarity index 100% rename from htdocs/langs/pl_PL/main.lang rename to public/langs/pl_PL/main.lang diff --git a/htdocs/langs/pl_PL/margins.lang b/public/langs/pl_PL/margins.lang similarity index 100% rename from htdocs/langs/pl_PL/margins.lang rename to public/langs/pl_PL/margins.lang diff --git a/htdocs/langs/pl_PL/members.lang b/public/langs/pl_PL/members.lang similarity index 100% rename from htdocs/langs/pl_PL/members.lang rename to public/langs/pl_PL/members.lang diff --git a/htdocs/langs/pl_PL/oauth.lang b/public/langs/pl_PL/oauth.lang similarity index 100% rename from htdocs/langs/pl_PL/oauth.lang rename to public/langs/pl_PL/oauth.lang diff --git a/htdocs/langs/pl_PL/opensurvey.lang b/public/langs/pl_PL/opensurvey.lang similarity index 100% rename from htdocs/langs/pl_PL/opensurvey.lang rename to public/langs/pl_PL/opensurvey.lang diff --git a/htdocs/langs/pl_PL/orders.lang b/public/langs/pl_PL/orders.lang similarity index 100% rename from htdocs/langs/pl_PL/orders.lang rename to public/langs/pl_PL/orders.lang diff --git a/htdocs/langs/pl_PL/other.lang b/public/langs/pl_PL/other.lang similarity index 100% rename from htdocs/langs/pl_PL/other.lang rename to public/langs/pl_PL/other.lang diff --git a/htdocs/langs/pl_PL/paybox.lang b/public/langs/pl_PL/paybox.lang similarity index 100% rename from htdocs/langs/pl_PL/paybox.lang rename to public/langs/pl_PL/paybox.lang diff --git a/htdocs/langs/pl_PL/paypal.lang b/public/langs/pl_PL/paypal.lang similarity index 100% rename from htdocs/langs/pl_PL/paypal.lang rename to public/langs/pl_PL/paypal.lang diff --git a/htdocs/langs/pl_PL/printing.lang b/public/langs/pl_PL/printing.lang similarity index 100% rename from htdocs/langs/pl_PL/printing.lang rename to public/langs/pl_PL/printing.lang diff --git a/htdocs/langs/pl_PL/productbatch.lang b/public/langs/pl_PL/productbatch.lang similarity index 100% rename from htdocs/langs/pl_PL/productbatch.lang rename to public/langs/pl_PL/productbatch.lang diff --git a/htdocs/langs/pl_PL/products.lang b/public/langs/pl_PL/products.lang similarity index 100% rename from htdocs/langs/pl_PL/products.lang rename to public/langs/pl_PL/products.lang diff --git a/htdocs/langs/pl_PL/projects.lang b/public/langs/pl_PL/projects.lang similarity index 100% rename from htdocs/langs/pl_PL/projects.lang rename to public/langs/pl_PL/projects.lang diff --git a/htdocs/langs/pl_PL/propal.lang b/public/langs/pl_PL/propal.lang similarity index 100% rename from htdocs/langs/pl_PL/propal.lang rename to public/langs/pl_PL/propal.lang diff --git a/htdocs/langs/pl_PL/receiptprinter.lang b/public/langs/pl_PL/receiptprinter.lang similarity index 100% rename from htdocs/langs/pl_PL/receiptprinter.lang rename to public/langs/pl_PL/receiptprinter.lang diff --git a/htdocs/langs/pl_PL/resource.lang b/public/langs/pl_PL/resource.lang similarity index 100% rename from htdocs/langs/pl_PL/resource.lang rename to public/langs/pl_PL/resource.lang diff --git a/htdocs/langs/pl_PL/salaries.lang b/public/langs/pl_PL/salaries.lang similarity index 100% rename from htdocs/langs/pl_PL/salaries.lang rename to public/langs/pl_PL/salaries.lang diff --git a/htdocs/langs/pl_PL/sendings.lang b/public/langs/pl_PL/sendings.lang similarity index 100% rename from htdocs/langs/pl_PL/sendings.lang rename to public/langs/pl_PL/sendings.lang diff --git a/htdocs/langs/pl_PL/sms.lang b/public/langs/pl_PL/sms.lang similarity index 100% rename from htdocs/langs/pl_PL/sms.lang rename to public/langs/pl_PL/sms.lang diff --git a/htdocs/langs/pl_PL/stocks.lang b/public/langs/pl_PL/stocks.lang similarity index 100% rename from htdocs/langs/pl_PL/stocks.lang rename to public/langs/pl_PL/stocks.lang diff --git a/htdocs/langs/pl_PL/supplier_proposal.lang b/public/langs/pl_PL/supplier_proposal.lang similarity index 100% rename from htdocs/langs/pl_PL/supplier_proposal.lang rename to public/langs/pl_PL/supplier_proposal.lang diff --git a/htdocs/langs/pl_PL/suppliers.lang b/public/langs/pl_PL/suppliers.lang similarity index 100% rename from htdocs/langs/pl_PL/suppliers.lang rename to public/langs/pl_PL/suppliers.lang diff --git a/htdocs/langs/pl_PL/trips.lang b/public/langs/pl_PL/trips.lang similarity index 100% rename from htdocs/langs/pl_PL/trips.lang rename to public/langs/pl_PL/trips.lang diff --git a/htdocs/langs/pl_PL/users.lang b/public/langs/pl_PL/users.lang similarity index 100% rename from htdocs/langs/pl_PL/users.lang rename to public/langs/pl_PL/users.lang diff --git a/htdocs/langs/pl_PL/website.lang b/public/langs/pl_PL/website.lang similarity index 100% rename from htdocs/langs/pl_PL/website.lang rename to public/langs/pl_PL/website.lang diff --git a/htdocs/langs/pl_PL/withdrawals.lang b/public/langs/pl_PL/withdrawals.lang similarity index 100% rename from htdocs/langs/pl_PL/withdrawals.lang rename to public/langs/pl_PL/withdrawals.lang diff --git a/htdocs/langs/pl_PL/workflow.lang b/public/langs/pl_PL/workflow.lang similarity index 100% rename from htdocs/langs/pl_PL/workflow.lang rename to public/langs/pl_PL/workflow.lang diff --git a/htdocs/langs/pt_BR/accountancy.lang b/public/langs/pt_BR/accountancy.lang similarity index 100% rename from htdocs/langs/pt_BR/accountancy.lang rename to public/langs/pt_BR/accountancy.lang diff --git a/htdocs/langs/pt_BR/admin.lang b/public/langs/pt_BR/admin.lang similarity index 100% rename from htdocs/langs/pt_BR/admin.lang rename to public/langs/pt_BR/admin.lang diff --git a/htdocs/langs/pt_BR/agenda.lang b/public/langs/pt_BR/agenda.lang similarity index 100% rename from htdocs/langs/pt_BR/agenda.lang rename to public/langs/pt_BR/agenda.lang diff --git a/htdocs/langs/pt_BR/banks.lang b/public/langs/pt_BR/banks.lang similarity index 100% rename from htdocs/langs/pt_BR/banks.lang rename to public/langs/pt_BR/banks.lang diff --git a/htdocs/langs/pt_BR/bills.lang b/public/langs/pt_BR/bills.lang similarity index 100% rename from htdocs/langs/pt_BR/bills.lang rename to public/langs/pt_BR/bills.lang diff --git a/htdocs/langs/pt_BR/bookmarks.lang b/public/langs/pt_BR/bookmarks.lang similarity index 100% rename from htdocs/langs/pt_BR/bookmarks.lang rename to public/langs/pt_BR/bookmarks.lang diff --git a/htdocs/langs/pt_BR/boxes.lang b/public/langs/pt_BR/boxes.lang similarity index 100% rename from htdocs/langs/pt_BR/boxes.lang rename to public/langs/pt_BR/boxes.lang diff --git a/htdocs/langs/pt_BR/cashdesk.lang b/public/langs/pt_BR/cashdesk.lang similarity index 100% rename from htdocs/langs/pt_BR/cashdesk.lang rename to public/langs/pt_BR/cashdesk.lang diff --git a/htdocs/langs/pt_BR/categories.lang b/public/langs/pt_BR/categories.lang similarity index 100% rename from htdocs/langs/pt_BR/categories.lang rename to public/langs/pt_BR/categories.lang diff --git a/htdocs/langs/pt_BR/commercial.lang b/public/langs/pt_BR/commercial.lang similarity index 100% rename from htdocs/langs/pt_BR/commercial.lang rename to public/langs/pt_BR/commercial.lang diff --git a/htdocs/langs/pt_BR/companies.lang b/public/langs/pt_BR/companies.lang similarity index 100% rename from htdocs/langs/pt_BR/companies.lang rename to public/langs/pt_BR/companies.lang diff --git a/htdocs/langs/pt_BR/compta.lang b/public/langs/pt_BR/compta.lang similarity index 100% rename from htdocs/langs/pt_BR/compta.lang rename to public/langs/pt_BR/compta.lang diff --git a/htdocs/langs/pt_BR/contracts.lang b/public/langs/pt_BR/contracts.lang similarity index 100% rename from htdocs/langs/pt_BR/contracts.lang rename to public/langs/pt_BR/contracts.lang diff --git a/htdocs/langs/pt_BR/cron.lang b/public/langs/pt_BR/cron.lang similarity index 100% rename from htdocs/langs/pt_BR/cron.lang rename to public/langs/pt_BR/cron.lang diff --git a/htdocs/langs/pt_BR/deliveries.lang b/public/langs/pt_BR/deliveries.lang similarity index 100% rename from htdocs/langs/pt_BR/deliveries.lang rename to public/langs/pt_BR/deliveries.lang diff --git a/htdocs/langs/pt_BR/dict.lang b/public/langs/pt_BR/dict.lang similarity index 100% rename from htdocs/langs/pt_BR/dict.lang rename to public/langs/pt_BR/dict.lang diff --git a/htdocs/langs/pt_BR/donations.lang b/public/langs/pt_BR/donations.lang similarity index 100% rename from htdocs/langs/pt_BR/donations.lang rename to public/langs/pt_BR/donations.lang diff --git a/htdocs/langs/pt_BR/ecm.lang b/public/langs/pt_BR/ecm.lang similarity index 100% rename from htdocs/langs/pt_BR/ecm.lang rename to public/langs/pt_BR/ecm.lang diff --git a/htdocs/langs/pt_BR/errors.lang b/public/langs/pt_BR/errors.lang similarity index 100% rename from htdocs/langs/pt_BR/errors.lang rename to public/langs/pt_BR/errors.lang diff --git a/htdocs/langs/pt_BR/exports.lang b/public/langs/pt_BR/exports.lang similarity index 100% rename from htdocs/langs/pt_BR/exports.lang rename to public/langs/pt_BR/exports.lang diff --git a/htdocs/langs/pt_BR/externalsite.lang b/public/langs/pt_BR/externalsite.lang similarity index 100% rename from htdocs/langs/pt_BR/externalsite.lang rename to public/langs/pt_BR/externalsite.lang diff --git a/htdocs/langs/pt_BR/ftp.lang b/public/langs/pt_BR/ftp.lang similarity index 100% rename from htdocs/langs/pt_BR/ftp.lang rename to public/langs/pt_BR/ftp.lang diff --git a/htdocs/langs/pt_BR/help.lang b/public/langs/pt_BR/help.lang similarity index 100% rename from htdocs/langs/pt_BR/help.lang rename to public/langs/pt_BR/help.lang diff --git a/htdocs/langs/pt_BR/holiday.lang b/public/langs/pt_BR/holiday.lang similarity index 100% rename from htdocs/langs/pt_BR/holiday.lang rename to public/langs/pt_BR/holiday.lang diff --git a/htdocs/langs/pt_BR/hrm.lang b/public/langs/pt_BR/hrm.lang similarity index 100% rename from htdocs/langs/pt_BR/hrm.lang rename to public/langs/pt_BR/hrm.lang diff --git a/htdocs/langs/pt_BR/incoterm.lang b/public/langs/pt_BR/incoterm.lang similarity index 100% rename from htdocs/langs/pt_BR/incoterm.lang rename to public/langs/pt_BR/incoterm.lang diff --git a/htdocs/langs/pt_BR/install.lang b/public/langs/pt_BR/install.lang similarity index 100% rename from htdocs/langs/pt_BR/install.lang rename to public/langs/pt_BR/install.lang diff --git a/htdocs/langs/pt_BR/interventions.lang b/public/langs/pt_BR/interventions.lang similarity index 100% rename from htdocs/langs/pt_BR/interventions.lang rename to public/langs/pt_BR/interventions.lang diff --git a/htdocs/langs/pt_BR/languages.lang b/public/langs/pt_BR/languages.lang similarity index 100% rename from htdocs/langs/pt_BR/languages.lang rename to public/langs/pt_BR/languages.lang diff --git a/htdocs/langs/pt_BR/ldap.lang b/public/langs/pt_BR/ldap.lang similarity index 100% rename from htdocs/langs/pt_BR/ldap.lang rename to public/langs/pt_BR/ldap.lang diff --git a/htdocs/langs/pt_BR/link.lang b/public/langs/pt_BR/link.lang similarity index 100% rename from htdocs/langs/pt_BR/link.lang rename to public/langs/pt_BR/link.lang diff --git a/htdocs/langs/pt_BR/loan.lang b/public/langs/pt_BR/loan.lang similarity index 100% rename from htdocs/langs/pt_BR/loan.lang rename to public/langs/pt_BR/loan.lang diff --git a/htdocs/langs/pt_BR/mailmanspip.lang b/public/langs/pt_BR/mailmanspip.lang similarity index 100% rename from htdocs/langs/pt_BR/mailmanspip.lang rename to public/langs/pt_BR/mailmanspip.lang diff --git a/htdocs/langs/pt_BR/mails.lang b/public/langs/pt_BR/mails.lang similarity index 100% rename from htdocs/langs/pt_BR/mails.lang rename to public/langs/pt_BR/mails.lang diff --git a/htdocs/langs/pt_BR/main.lang b/public/langs/pt_BR/main.lang similarity index 100% rename from htdocs/langs/pt_BR/main.lang rename to public/langs/pt_BR/main.lang diff --git a/htdocs/langs/pt_BR/margins.lang b/public/langs/pt_BR/margins.lang similarity index 100% rename from htdocs/langs/pt_BR/margins.lang rename to public/langs/pt_BR/margins.lang diff --git a/htdocs/langs/pt_BR/members.lang b/public/langs/pt_BR/members.lang similarity index 100% rename from htdocs/langs/pt_BR/members.lang rename to public/langs/pt_BR/members.lang diff --git a/htdocs/langs/pt_BR/oauth.lang b/public/langs/pt_BR/oauth.lang similarity index 100% rename from htdocs/langs/pt_BR/oauth.lang rename to public/langs/pt_BR/oauth.lang diff --git a/htdocs/langs/pt_BR/opensurvey.lang b/public/langs/pt_BR/opensurvey.lang similarity index 100% rename from htdocs/langs/pt_BR/opensurvey.lang rename to public/langs/pt_BR/opensurvey.lang diff --git a/htdocs/langs/pt_BR/orders.lang b/public/langs/pt_BR/orders.lang similarity index 100% rename from htdocs/langs/pt_BR/orders.lang rename to public/langs/pt_BR/orders.lang diff --git a/htdocs/langs/pt_BR/other.lang b/public/langs/pt_BR/other.lang similarity index 100% rename from htdocs/langs/pt_BR/other.lang rename to public/langs/pt_BR/other.lang diff --git a/htdocs/langs/pt_BR/paybox.lang b/public/langs/pt_BR/paybox.lang similarity index 100% rename from htdocs/langs/pt_BR/paybox.lang rename to public/langs/pt_BR/paybox.lang diff --git a/htdocs/langs/pt_BR/paypal.lang b/public/langs/pt_BR/paypal.lang similarity index 100% rename from htdocs/langs/pt_BR/paypal.lang rename to public/langs/pt_BR/paypal.lang diff --git a/htdocs/langs/pt_BR/printing.lang b/public/langs/pt_BR/printing.lang similarity index 100% rename from htdocs/langs/pt_BR/printing.lang rename to public/langs/pt_BR/printing.lang diff --git a/htdocs/langs/pt_BR/productbatch.lang b/public/langs/pt_BR/productbatch.lang similarity index 100% rename from htdocs/langs/pt_BR/productbatch.lang rename to public/langs/pt_BR/productbatch.lang diff --git a/htdocs/langs/pt_BR/products.lang b/public/langs/pt_BR/products.lang similarity index 100% rename from htdocs/langs/pt_BR/products.lang rename to public/langs/pt_BR/products.lang diff --git a/htdocs/langs/pt_BR/projects.lang b/public/langs/pt_BR/projects.lang similarity index 100% rename from htdocs/langs/pt_BR/projects.lang rename to public/langs/pt_BR/projects.lang diff --git a/htdocs/langs/pt_BR/propal.lang b/public/langs/pt_BR/propal.lang similarity index 100% rename from htdocs/langs/pt_BR/propal.lang rename to public/langs/pt_BR/propal.lang diff --git a/htdocs/langs/pt_BR/receiptprinter.lang b/public/langs/pt_BR/receiptprinter.lang similarity index 100% rename from htdocs/langs/pt_BR/receiptprinter.lang rename to public/langs/pt_BR/receiptprinter.lang diff --git a/htdocs/langs/pt_BR/resource.lang b/public/langs/pt_BR/resource.lang similarity index 100% rename from htdocs/langs/pt_BR/resource.lang rename to public/langs/pt_BR/resource.lang diff --git a/htdocs/langs/pt_BR/salaries.lang b/public/langs/pt_BR/salaries.lang similarity index 100% rename from htdocs/langs/pt_BR/salaries.lang rename to public/langs/pt_BR/salaries.lang diff --git a/htdocs/langs/pt_BR/sendings.lang b/public/langs/pt_BR/sendings.lang similarity index 100% rename from htdocs/langs/pt_BR/sendings.lang rename to public/langs/pt_BR/sendings.lang diff --git a/htdocs/langs/pt_BR/sms.lang b/public/langs/pt_BR/sms.lang similarity index 100% rename from htdocs/langs/pt_BR/sms.lang rename to public/langs/pt_BR/sms.lang diff --git a/htdocs/langs/pt_BR/stocks.lang b/public/langs/pt_BR/stocks.lang similarity index 100% rename from htdocs/langs/pt_BR/stocks.lang rename to public/langs/pt_BR/stocks.lang diff --git a/htdocs/langs/pt_BR/supplier_proposal.lang b/public/langs/pt_BR/supplier_proposal.lang similarity index 100% rename from htdocs/langs/pt_BR/supplier_proposal.lang rename to public/langs/pt_BR/supplier_proposal.lang diff --git a/htdocs/langs/pt_BR/suppliers.lang b/public/langs/pt_BR/suppliers.lang similarity index 100% rename from htdocs/langs/pt_BR/suppliers.lang rename to public/langs/pt_BR/suppliers.lang diff --git a/htdocs/langs/pt_BR/trips.lang b/public/langs/pt_BR/trips.lang similarity index 100% rename from htdocs/langs/pt_BR/trips.lang rename to public/langs/pt_BR/trips.lang diff --git a/htdocs/langs/pt_BR/users.lang b/public/langs/pt_BR/users.lang similarity index 100% rename from htdocs/langs/pt_BR/users.lang rename to public/langs/pt_BR/users.lang diff --git a/htdocs/langs/pt_BR/website.lang b/public/langs/pt_BR/website.lang similarity index 100% rename from htdocs/langs/pt_BR/website.lang rename to public/langs/pt_BR/website.lang diff --git a/htdocs/langs/pt_BR/withdrawals.lang b/public/langs/pt_BR/withdrawals.lang similarity index 100% rename from htdocs/langs/pt_BR/withdrawals.lang rename to public/langs/pt_BR/withdrawals.lang diff --git a/htdocs/langs/pt_BR/workflow.lang b/public/langs/pt_BR/workflow.lang similarity index 100% rename from htdocs/langs/pt_BR/workflow.lang rename to public/langs/pt_BR/workflow.lang diff --git a/htdocs/langs/pt_PT/accountancy.lang b/public/langs/pt_PT/accountancy.lang similarity index 100% rename from htdocs/langs/pt_PT/accountancy.lang rename to public/langs/pt_PT/accountancy.lang diff --git a/htdocs/langs/pt_PT/admin.lang b/public/langs/pt_PT/admin.lang similarity index 100% rename from htdocs/langs/pt_PT/admin.lang rename to public/langs/pt_PT/admin.lang diff --git a/htdocs/langs/pt_PT/agenda.lang b/public/langs/pt_PT/agenda.lang similarity index 100% rename from htdocs/langs/pt_PT/agenda.lang rename to public/langs/pt_PT/agenda.lang diff --git a/htdocs/langs/pt_PT/banks.lang b/public/langs/pt_PT/banks.lang similarity index 100% rename from htdocs/langs/pt_PT/banks.lang rename to public/langs/pt_PT/banks.lang diff --git a/htdocs/langs/pt_PT/bills.lang b/public/langs/pt_PT/bills.lang similarity index 100% rename from htdocs/langs/pt_PT/bills.lang rename to public/langs/pt_PT/bills.lang diff --git a/htdocs/langs/pt_PT/bookmarks.lang b/public/langs/pt_PT/bookmarks.lang similarity index 100% rename from htdocs/langs/pt_PT/bookmarks.lang rename to public/langs/pt_PT/bookmarks.lang diff --git a/htdocs/langs/pt_PT/boxes.lang b/public/langs/pt_PT/boxes.lang similarity index 100% rename from htdocs/langs/pt_PT/boxes.lang rename to public/langs/pt_PT/boxes.lang diff --git a/htdocs/langs/pt_PT/cashdesk.lang b/public/langs/pt_PT/cashdesk.lang similarity index 100% rename from htdocs/langs/pt_PT/cashdesk.lang rename to public/langs/pt_PT/cashdesk.lang diff --git a/htdocs/langs/pt_PT/categories.lang b/public/langs/pt_PT/categories.lang similarity index 100% rename from htdocs/langs/pt_PT/categories.lang rename to public/langs/pt_PT/categories.lang diff --git a/htdocs/langs/pt_PT/commercial.lang b/public/langs/pt_PT/commercial.lang similarity index 100% rename from htdocs/langs/pt_PT/commercial.lang rename to public/langs/pt_PT/commercial.lang diff --git a/htdocs/langs/pt_PT/companies.lang b/public/langs/pt_PT/companies.lang similarity index 100% rename from htdocs/langs/pt_PT/companies.lang rename to public/langs/pt_PT/companies.lang diff --git a/htdocs/langs/pt_PT/compta.lang b/public/langs/pt_PT/compta.lang similarity index 100% rename from htdocs/langs/pt_PT/compta.lang rename to public/langs/pt_PT/compta.lang diff --git a/htdocs/langs/pt_PT/contracts.lang b/public/langs/pt_PT/contracts.lang similarity index 100% rename from htdocs/langs/pt_PT/contracts.lang rename to public/langs/pt_PT/contracts.lang diff --git a/htdocs/langs/pt_PT/cron.lang b/public/langs/pt_PT/cron.lang similarity index 100% rename from htdocs/langs/pt_PT/cron.lang rename to public/langs/pt_PT/cron.lang diff --git a/htdocs/langs/pt_PT/deliveries.lang b/public/langs/pt_PT/deliveries.lang similarity index 100% rename from htdocs/langs/pt_PT/deliveries.lang rename to public/langs/pt_PT/deliveries.lang diff --git a/htdocs/langs/pt_PT/dict.lang b/public/langs/pt_PT/dict.lang similarity index 100% rename from htdocs/langs/pt_PT/dict.lang rename to public/langs/pt_PT/dict.lang diff --git a/htdocs/langs/pt_PT/donations.lang b/public/langs/pt_PT/donations.lang similarity index 100% rename from htdocs/langs/pt_PT/donations.lang rename to public/langs/pt_PT/donations.lang diff --git a/htdocs/langs/pt_PT/ecm.lang b/public/langs/pt_PT/ecm.lang similarity index 100% rename from htdocs/langs/pt_PT/ecm.lang rename to public/langs/pt_PT/ecm.lang diff --git a/htdocs/langs/pt_PT/errors.lang b/public/langs/pt_PT/errors.lang similarity index 100% rename from htdocs/langs/pt_PT/errors.lang rename to public/langs/pt_PT/errors.lang diff --git a/htdocs/langs/pt_PT/exports.lang b/public/langs/pt_PT/exports.lang similarity index 100% rename from htdocs/langs/pt_PT/exports.lang rename to public/langs/pt_PT/exports.lang diff --git a/htdocs/langs/pt_PT/externalsite.lang b/public/langs/pt_PT/externalsite.lang similarity index 100% rename from htdocs/langs/pt_PT/externalsite.lang rename to public/langs/pt_PT/externalsite.lang diff --git a/htdocs/langs/pt_PT/ftp.lang b/public/langs/pt_PT/ftp.lang similarity index 100% rename from htdocs/langs/pt_PT/ftp.lang rename to public/langs/pt_PT/ftp.lang diff --git a/htdocs/langs/pt_PT/help.lang b/public/langs/pt_PT/help.lang similarity index 100% rename from htdocs/langs/pt_PT/help.lang rename to public/langs/pt_PT/help.lang diff --git a/htdocs/langs/pt_PT/holiday.lang b/public/langs/pt_PT/holiday.lang similarity index 100% rename from htdocs/langs/pt_PT/holiday.lang rename to public/langs/pt_PT/holiday.lang diff --git a/htdocs/langs/pt_PT/hrm.lang b/public/langs/pt_PT/hrm.lang similarity index 100% rename from htdocs/langs/pt_PT/hrm.lang rename to public/langs/pt_PT/hrm.lang diff --git a/htdocs/langs/pt_PT/incoterm.lang b/public/langs/pt_PT/incoterm.lang similarity index 100% rename from htdocs/langs/pt_PT/incoterm.lang rename to public/langs/pt_PT/incoterm.lang diff --git a/htdocs/langs/pt_PT/install.lang b/public/langs/pt_PT/install.lang similarity index 100% rename from htdocs/langs/pt_PT/install.lang rename to public/langs/pt_PT/install.lang diff --git a/htdocs/langs/pt_PT/interventions.lang b/public/langs/pt_PT/interventions.lang similarity index 100% rename from htdocs/langs/pt_PT/interventions.lang rename to public/langs/pt_PT/interventions.lang diff --git a/htdocs/langs/pt_PT/languages.lang b/public/langs/pt_PT/languages.lang similarity index 100% rename from htdocs/langs/pt_PT/languages.lang rename to public/langs/pt_PT/languages.lang diff --git a/htdocs/langs/pt_PT/ldap.lang b/public/langs/pt_PT/ldap.lang similarity index 100% rename from htdocs/langs/pt_PT/ldap.lang rename to public/langs/pt_PT/ldap.lang diff --git a/htdocs/langs/pt_PT/link.lang b/public/langs/pt_PT/link.lang similarity index 100% rename from htdocs/langs/pt_PT/link.lang rename to public/langs/pt_PT/link.lang diff --git a/htdocs/langs/pt_PT/loan.lang b/public/langs/pt_PT/loan.lang similarity index 100% rename from htdocs/langs/pt_PT/loan.lang rename to public/langs/pt_PT/loan.lang diff --git a/htdocs/langs/pt_PT/mailmanspip.lang b/public/langs/pt_PT/mailmanspip.lang similarity index 100% rename from htdocs/langs/pt_PT/mailmanspip.lang rename to public/langs/pt_PT/mailmanspip.lang diff --git a/htdocs/langs/pt_PT/mails.lang b/public/langs/pt_PT/mails.lang similarity index 100% rename from htdocs/langs/pt_PT/mails.lang rename to public/langs/pt_PT/mails.lang diff --git a/htdocs/langs/pt_PT/main.lang b/public/langs/pt_PT/main.lang similarity index 100% rename from htdocs/langs/pt_PT/main.lang rename to public/langs/pt_PT/main.lang diff --git a/htdocs/langs/pt_PT/margins.lang b/public/langs/pt_PT/margins.lang similarity index 100% rename from htdocs/langs/pt_PT/margins.lang rename to public/langs/pt_PT/margins.lang diff --git a/htdocs/langs/pt_PT/members.lang b/public/langs/pt_PT/members.lang similarity index 100% rename from htdocs/langs/pt_PT/members.lang rename to public/langs/pt_PT/members.lang diff --git a/htdocs/langs/pt_PT/oauth.lang b/public/langs/pt_PT/oauth.lang similarity index 100% rename from htdocs/langs/pt_PT/oauth.lang rename to public/langs/pt_PT/oauth.lang diff --git a/htdocs/langs/pt_PT/opensurvey.lang b/public/langs/pt_PT/opensurvey.lang similarity index 100% rename from htdocs/langs/pt_PT/opensurvey.lang rename to public/langs/pt_PT/opensurvey.lang diff --git a/htdocs/langs/pt_PT/orders.lang b/public/langs/pt_PT/orders.lang similarity index 100% rename from htdocs/langs/pt_PT/orders.lang rename to public/langs/pt_PT/orders.lang diff --git a/htdocs/langs/pt_PT/other.lang b/public/langs/pt_PT/other.lang similarity index 100% rename from htdocs/langs/pt_PT/other.lang rename to public/langs/pt_PT/other.lang diff --git a/htdocs/langs/pt_PT/paybox.lang b/public/langs/pt_PT/paybox.lang similarity index 100% rename from htdocs/langs/pt_PT/paybox.lang rename to public/langs/pt_PT/paybox.lang diff --git a/htdocs/langs/pt_PT/paypal.lang b/public/langs/pt_PT/paypal.lang similarity index 100% rename from htdocs/langs/pt_PT/paypal.lang rename to public/langs/pt_PT/paypal.lang diff --git a/htdocs/langs/pt_PT/printing.lang b/public/langs/pt_PT/printing.lang similarity index 100% rename from htdocs/langs/pt_PT/printing.lang rename to public/langs/pt_PT/printing.lang diff --git a/htdocs/langs/pt_PT/productbatch.lang b/public/langs/pt_PT/productbatch.lang similarity index 100% rename from htdocs/langs/pt_PT/productbatch.lang rename to public/langs/pt_PT/productbatch.lang diff --git a/htdocs/langs/pt_PT/products.lang b/public/langs/pt_PT/products.lang similarity index 100% rename from htdocs/langs/pt_PT/products.lang rename to public/langs/pt_PT/products.lang diff --git a/htdocs/langs/pt_PT/projects.lang b/public/langs/pt_PT/projects.lang similarity index 100% rename from htdocs/langs/pt_PT/projects.lang rename to public/langs/pt_PT/projects.lang diff --git a/htdocs/langs/pt_PT/propal.lang b/public/langs/pt_PT/propal.lang similarity index 100% rename from htdocs/langs/pt_PT/propal.lang rename to public/langs/pt_PT/propal.lang diff --git a/htdocs/langs/pt_PT/receiptprinter.lang b/public/langs/pt_PT/receiptprinter.lang similarity index 100% rename from htdocs/langs/pt_PT/receiptprinter.lang rename to public/langs/pt_PT/receiptprinter.lang diff --git a/htdocs/langs/pt_PT/resource.lang b/public/langs/pt_PT/resource.lang similarity index 100% rename from htdocs/langs/pt_PT/resource.lang rename to public/langs/pt_PT/resource.lang diff --git a/htdocs/langs/pt_PT/salaries.lang b/public/langs/pt_PT/salaries.lang similarity index 100% rename from htdocs/langs/pt_PT/salaries.lang rename to public/langs/pt_PT/salaries.lang diff --git a/htdocs/langs/pt_PT/sendings.lang b/public/langs/pt_PT/sendings.lang similarity index 100% rename from htdocs/langs/pt_PT/sendings.lang rename to public/langs/pt_PT/sendings.lang diff --git a/htdocs/langs/pt_PT/sms.lang b/public/langs/pt_PT/sms.lang similarity index 100% rename from htdocs/langs/pt_PT/sms.lang rename to public/langs/pt_PT/sms.lang diff --git a/htdocs/langs/pt_PT/stocks.lang b/public/langs/pt_PT/stocks.lang similarity index 100% rename from htdocs/langs/pt_PT/stocks.lang rename to public/langs/pt_PT/stocks.lang diff --git a/htdocs/langs/pt_PT/supplier_proposal.lang b/public/langs/pt_PT/supplier_proposal.lang similarity index 100% rename from htdocs/langs/pt_PT/supplier_proposal.lang rename to public/langs/pt_PT/supplier_proposal.lang diff --git a/htdocs/langs/pt_PT/suppliers.lang b/public/langs/pt_PT/suppliers.lang similarity index 100% rename from htdocs/langs/pt_PT/suppliers.lang rename to public/langs/pt_PT/suppliers.lang diff --git a/htdocs/langs/pt_PT/trips.lang b/public/langs/pt_PT/trips.lang similarity index 100% rename from htdocs/langs/pt_PT/trips.lang rename to public/langs/pt_PT/trips.lang diff --git a/htdocs/langs/pt_PT/users.lang b/public/langs/pt_PT/users.lang similarity index 100% rename from htdocs/langs/pt_PT/users.lang rename to public/langs/pt_PT/users.lang diff --git a/htdocs/langs/pt_PT/website.lang b/public/langs/pt_PT/website.lang similarity index 100% rename from htdocs/langs/pt_PT/website.lang rename to public/langs/pt_PT/website.lang diff --git a/htdocs/langs/pt_PT/withdrawals.lang b/public/langs/pt_PT/withdrawals.lang similarity index 100% rename from htdocs/langs/pt_PT/withdrawals.lang rename to public/langs/pt_PT/withdrawals.lang diff --git a/htdocs/langs/pt_PT/workflow.lang b/public/langs/pt_PT/workflow.lang similarity index 100% rename from htdocs/langs/pt_PT/workflow.lang rename to public/langs/pt_PT/workflow.lang diff --git a/htdocs/langs/ro_RO/accountancy.lang b/public/langs/ro_RO/accountancy.lang similarity index 100% rename from htdocs/langs/ro_RO/accountancy.lang rename to public/langs/ro_RO/accountancy.lang diff --git a/htdocs/langs/ro_RO/admin.lang b/public/langs/ro_RO/admin.lang similarity index 100% rename from htdocs/langs/ro_RO/admin.lang rename to public/langs/ro_RO/admin.lang diff --git a/htdocs/langs/ro_RO/agenda.lang b/public/langs/ro_RO/agenda.lang similarity index 100% rename from htdocs/langs/ro_RO/agenda.lang rename to public/langs/ro_RO/agenda.lang diff --git a/htdocs/langs/ro_RO/banks.lang b/public/langs/ro_RO/banks.lang similarity index 100% rename from htdocs/langs/ro_RO/banks.lang rename to public/langs/ro_RO/banks.lang diff --git a/htdocs/langs/ro_RO/bills.lang b/public/langs/ro_RO/bills.lang similarity index 100% rename from htdocs/langs/ro_RO/bills.lang rename to public/langs/ro_RO/bills.lang diff --git a/htdocs/langs/ro_RO/bookmarks.lang b/public/langs/ro_RO/bookmarks.lang similarity index 100% rename from htdocs/langs/ro_RO/bookmarks.lang rename to public/langs/ro_RO/bookmarks.lang diff --git a/htdocs/langs/ro_RO/boxes.lang b/public/langs/ro_RO/boxes.lang similarity index 100% rename from htdocs/langs/ro_RO/boxes.lang rename to public/langs/ro_RO/boxes.lang diff --git a/htdocs/langs/ro_RO/cashdesk.lang b/public/langs/ro_RO/cashdesk.lang similarity index 100% rename from htdocs/langs/ro_RO/cashdesk.lang rename to public/langs/ro_RO/cashdesk.lang diff --git a/htdocs/langs/ro_RO/categories.lang b/public/langs/ro_RO/categories.lang similarity index 100% rename from htdocs/langs/ro_RO/categories.lang rename to public/langs/ro_RO/categories.lang diff --git a/htdocs/langs/ro_RO/commercial.lang b/public/langs/ro_RO/commercial.lang similarity index 100% rename from htdocs/langs/ro_RO/commercial.lang rename to public/langs/ro_RO/commercial.lang diff --git a/htdocs/langs/ro_RO/companies.lang b/public/langs/ro_RO/companies.lang similarity index 100% rename from htdocs/langs/ro_RO/companies.lang rename to public/langs/ro_RO/companies.lang diff --git a/htdocs/langs/ro_RO/compta.lang b/public/langs/ro_RO/compta.lang similarity index 100% rename from htdocs/langs/ro_RO/compta.lang rename to public/langs/ro_RO/compta.lang diff --git a/htdocs/langs/ro_RO/contracts.lang b/public/langs/ro_RO/contracts.lang similarity index 100% rename from htdocs/langs/ro_RO/contracts.lang rename to public/langs/ro_RO/contracts.lang diff --git a/htdocs/langs/ro_RO/cron.lang b/public/langs/ro_RO/cron.lang similarity index 100% rename from htdocs/langs/ro_RO/cron.lang rename to public/langs/ro_RO/cron.lang diff --git a/htdocs/langs/ro_RO/deliveries.lang b/public/langs/ro_RO/deliveries.lang similarity index 100% rename from htdocs/langs/ro_RO/deliveries.lang rename to public/langs/ro_RO/deliveries.lang diff --git a/htdocs/langs/ro_RO/dict.lang b/public/langs/ro_RO/dict.lang similarity index 100% rename from htdocs/langs/ro_RO/dict.lang rename to public/langs/ro_RO/dict.lang diff --git a/htdocs/langs/ro_RO/donations.lang b/public/langs/ro_RO/donations.lang similarity index 100% rename from htdocs/langs/ro_RO/donations.lang rename to public/langs/ro_RO/donations.lang diff --git a/htdocs/langs/ro_RO/ecm.lang b/public/langs/ro_RO/ecm.lang similarity index 100% rename from htdocs/langs/ro_RO/ecm.lang rename to public/langs/ro_RO/ecm.lang diff --git a/htdocs/langs/ro_RO/errors.lang b/public/langs/ro_RO/errors.lang similarity index 100% rename from htdocs/langs/ro_RO/errors.lang rename to public/langs/ro_RO/errors.lang diff --git a/htdocs/langs/ro_RO/exports.lang b/public/langs/ro_RO/exports.lang similarity index 100% rename from htdocs/langs/ro_RO/exports.lang rename to public/langs/ro_RO/exports.lang diff --git a/htdocs/langs/ro_RO/externalsite.lang b/public/langs/ro_RO/externalsite.lang similarity index 100% rename from htdocs/langs/ro_RO/externalsite.lang rename to public/langs/ro_RO/externalsite.lang diff --git a/htdocs/langs/ro_RO/ftp.lang b/public/langs/ro_RO/ftp.lang similarity index 100% rename from htdocs/langs/ro_RO/ftp.lang rename to public/langs/ro_RO/ftp.lang diff --git a/htdocs/langs/ro_RO/help.lang b/public/langs/ro_RO/help.lang similarity index 100% rename from htdocs/langs/ro_RO/help.lang rename to public/langs/ro_RO/help.lang diff --git a/htdocs/langs/ro_RO/holiday.lang b/public/langs/ro_RO/holiday.lang similarity index 100% rename from htdocs/langs/ro_RO/holiday.lang rename to public/langs/ro_RO/holiday.lang diff --git a/htdocs/langs/ro_RO/hrm.lang b/public/langs/ro_RO/hrm.lang similarity index 100% rename from htdocs/langs/ro_RO/hrm.lang rename to public/langs/ro_RO/hrm.lang diff --git a/htdocs/langs/ro_RO/incoterm.lang b/public/langs/ro_RO/incoterm.lang similarity index 100% rename from htdocs/langs/ro_RO/incoterm.lang rename to public/langs/ro_RO/incoterm.lang diff --git a/htdocs/langs/ro_RO/install.lang b/public/langs/ro_RO/install.lang similarity index 100% rename from htdocs/langs/ro_RO/install.lang rename to public/langs/ro_RO/install.lang diff --git a/htdocs/langs/ro_RO/interventions.lang b/public/langs/ro_RO/interventions.lang similarity index 100% rename from htdocs/langs/ro_RO/interventions.lang rename to public/langs/ro_RO/interventions.lang diff --git a/htdocs/langs/ro_RO/languages.lang b/public/langs/ro_RO/languages.lang similarity index 100% rename from htdocs/langs/ro_RO/languages.lang rename to public/langs/ro_RO/languages.lang diff --git a/htdocs/langs/ro_RO/ldap.lang b/public/langs/ro_RO/ldap.lang similarity index 100% rename from htdocs/langs/ro_RO/ldap.lang rename to public/langs/ro_RO/ldap.lang diff --git a/htdocs/langs/ro_RO/link.lang b/public/langs/ro_RO/link.lang similarity index 100% rename from htdocs/langs/ro_RO/link.lang rename to public/langs/ro_RO/link.lang diff --git a/htdocs/langs/ro_RO/loan.lang b/public/langs/ro_RO/loan.lang similarity index 100% rename from htdocs/langs/ro_RO/loan.lang rename to public/langs/ro_RO/loan.lang diff --git a/htdocs/langs/ro_RO/mailmanspip.lang b/public/langs/ro_RO/mailmanspip.lang similarity index 100% rename from htdocs/langs/ro_RO/mailmanspip.lang rename to public/langs/ro_RO/mailmanspip.lang diff --git a/htdocs/langs/ro_RO/mails.lang b/public/langs/ro_RO/mails.lang similarity index 100% rename from htdocs/langs/ro_RO/mails.lang rename to public/langs/ro_RO/mails.lang diff --git a/htdocs/langs/ro_RO/main.lang b/public/langs/ro_RO/main.lang similarity index 100% rename from htdocs/langs/ro_RO/main.lang rename to public/langs/ro_RO/main.lang diff --git a/htdocs/langs/ro_RO/margins.lang b/public/langs/ro_RO/margins.lang similarity index 100% rename from htdocs/langs/ro_RO/margins.lang rename to public/langs/ro_RO/margins.lang diff --git a/htdocs/langs/ro_RO/members.lang b/public/langs/ro_RO/members.lang similarity index 100% rename from htdocs/langs/ro_RO/members.lang rename to public/langs/ro_RO/members.lang diff --git a/htdocs/langs/ro_RO/oauth.lang b/public/langs/ro_RO/oauth.lang similarity index 100% rename from htdocs/langs/ro_RO/oauth.lang rename to public/langs/ro_RO/oauth.lang diff --git a/htdocs/langs/ro_RO/opensurvey.lang b/public/langs/ro_RO/opensurvey.lang similarity index 100% rename from htdocs/langs/ro_RO/opensurvey.lang rename to public/langs/ro_RO/opensurvey.lang diff --git a/htdocs/langs/ro_RO/orders.lang b/public/langs/ro_RO/orders.lang similarity index 100% rename from htdocs/langs/ro_RO/orders.lang rename to public/langs/ro_RO/orders.lang diff --git a/htdocs/langs/ro_RO/other.lang b/public/langs/ro_RO/other.lang similarity index 100% rename from htdocs/langs/ro_RO/other.lang rename to public/langs/ro_RO/other.lang diff --git a/htdocs/langs/ro_RO/paybox.lang b/public/langs/ro_RO/paybox.lang similarity index 100% rename from htdocs/langs/ro_RO/paybox.lang rename to public/langs/ro_RO/paybox.lang diff --git a/htdocs/langs/ro_RO/paypal.lang b/public/langs/ro_RO/paypal.lang similarity index 100% rename from htdocs/langs/ro_RO/paypal.lang rename to public/langs/ro_RO/paypal.lang diff --git a/htdocs/langs/ro_RO/printing.lang b/public/langs/ro_RO/printing.lang similarity index 100% rename from htdocs/langs/ro_RO/printing.lang rename to public/langs/ro_RO/printing.lang diff --git a/htdocs/langs/ro_RO/productbatch.lang b/public/langs/ro_RO/productbatch.lang similarity index 100% rename from htdocs/langs/ro_RO/productbatch.lang rename to public/langs/ro_RO/productbatch.lang diff --git a/htdocs/langs/ro_RO/products.lang b/public/langs/ro_RO/products.lang similarity index 100% rename from htdocs/langs/ro_RO/products.lang rename to public/langs/ro_RO/products.lang diff --git a/htdocs/langs/ro_RO/projects.lang b/public/langs/ro_RO/projects.lang similarity index 100% rename from htdocs/langs/ro_RO/projects.lang rename to public/langs/ro_RO/projects.lang diff --git a/htdocs/langs/ro_RO/propal.lang b/public/langs/ro_RO/propal.lang similarity index 100% rename from htdocs/langs/ro_RO/propal.lang rename to public/langs/ro_RO/propal.lang diff --git a/htdocs/langs/ro_RO/receiptprinter.lang b/public/langs/ro_RO/receiptprinter.lang similarity index 100% rename from htdocs/langs/ro_RO/receiptprinter.lang rename to public/langs/ro_RO/receiptprinter.lang diff --git a/htdocs/langs/ro_RO/resource.lang b/public/langs/ro_RO/resource.lang similarity index 100% rename from htdocs/langs/ro_RO/resource.lang rename to public/langs/ro_RO/resource.lang diff --git a/htdocs/langs/ro_RO/salaries.lang b/public/langs/ro_RO/salaries.lang similarity index 100% rename from htdocs/langs/ro_RO/salaries.lang rename to public/langs/ro_RO/salaries.lang diff --git a/htdocs/langs/ro_RO/sendings.lang b/public/langs/ro_RO/sendings.lang similarity index 100% rename from htdocs/langs/ro_RO/sendings.lang rename to public/langs/ro_RO/sendings.lang diff --git a/htdocs/langs/ro_RO/sms.lang b/public/langs/ro_RO/sms.lang similarity index 100% rename from htdocs/langs/ro_RO/sms.lang rename to public/langs/ro_RO/sms.lang diff --git a/htdocs/langs/ro_RO/stocks.lang b/public/langs/ro_RO/stocks.lang similarity index 100% rename from htdocs/langs/ro_RO/stocks.lang rename to public/langs/ro_RO/stocks.lang diff --git a/htdocs/langs/ro_RO/supplier_proposal.lang b/public/langs/ro_RO/supplier_proposal.lang similarity index 100% rename from htdocs/langs/ro_RO/supplier_proposal.lang rename to public/langs/ro_RO/supplier_proposal.lang diff --git a/htdocs/langs/ro_RO/suppliers.lang b/public/langs/ro_RO/suppliers.lang similarity index 100% rename from htdocs/langs/ro_RO/suppliers.lang rename to public/langs/ro_RO/suppliers.lang diff --git a/htdocs/langs/ro_RO/trips.lang b/public/langs/ro_RO/trips.lang similarity index 100% rename from htdocs/langs/ro_RO/trips.lang rename to public/langs/ro_RO/trips.lang diff --git a/htdocs/langs/ro_RO/users.lang b/public/langs/ro_RO/users.lang similarity index 100% rename from htdocs/langs/ro_RO/users.lang rename to public/langs/ro_RO/users.lang diff --git a/htdocs/langs/ro_RO/website.lang b/public/langs/ro_RO/website.lang similarity index 100% rename from htdocs/langs/ro_RO/website.lang rename to public/langs/ro_RO/website.lang diff --git a/htdocs/langs/ro_RO/withdrawals.lang b/public/langs/ro_RO/withdrawals.lang similarity index 100% rename from htdocs/langs/ro_RO/withdrawals.lang rename to public/langs/ro_RO/withdrawals.lang diff --git a/htdocs/langs/ro_RO/workflow.lang b/public/langs/ro_RO/workflow.lang similarity index 100% rename from htdocs/langs/ro_RO/workflow.lang rename to public/langs/ro_RO/workflow.lang diff --git a/htdocs/langs/ru_RU/accountancy.lang b/public/langs/ru_RU/accountancy.lang similarity index 100% rename from htdocs/langs/ru_RU/accountancy.lang rename to public/langs/ru_RU/accountancy.lang diff --git a/htdocs/langs/ru_RU/admin.lang b/public/langs/ru_RU/admin.lang similarity index 100% rename from htdocs/langs/ru_RU/admin.lang rename to public/langs/ru_RU/admin.lang diff --git a/htdocs/langs/ru_RU/agenda.lang b/public/langs/ru_RU/agenda.lang similarity index 100% rename from htdocs/langs/ru_RU/agenda.lang rename to public/langs/ru_RU/agenda.lang diff --git a/htdocs/langs/ru_RU/banks.lang b/public/langs/ru_RU/banks.lang similarity index 100% rename from htdocs/langs/ru_RU/banks.lang rename to public/langs/ru_RU/banks.lang diff --git a/htdocs/langs/ru_RU/bills.lang b/public/langs/ru_RU/bills.lang similarity index 100% rename from htdocs/langs/ru_RU/bills.lang rename to public/langs/ru_RU/bills.lang diff --git a/htdocs/langs/ru_RU/bookmarks.lang b/public/langs/ru_RU/bookmarks.lang similarity index 100% rename from htdocs/langs/ru_RU/bookmarks.lang rename to public/langs/ru_RU/bookmarks.lang diff --git a/htdocs/langs/ru_RU/boxes.lang b/public/langs/ru_RU/boxes.lang similarity index 100% rename from htdocs/langs/ru_RU/boxes.lang rename to public/langs/ru_RU/boxes.lang diff --git a/htdocs/langs/ru_RU/cashdesk.lang b/public/langs/ru_RU/cashdesk.lang similarity index 100% rename from htdocs/langs/ru_RU/cashdesk.lang rename to public/langs/ru_RU/cashdesk.lang diff --git a/htdocs/langs/ru_RU/categories.lang b/public/langs/ru_RU/categories.lang similarity index 100% rename from htdocs/langs/ru_RU/categories.lang rename to public/langs/ru_RU/categories.lang diff --git a/htdocs/langs/ru_RU/commercial.lang b/public/langs/ru_RU/commercial.lang similarity index 100% rename from htdocs/langs/ru_RU/commercial.lang rename to public/langs/ru_RU/commercial.lang diff --git a/htdocs/langs/ru_RU/companies.lang b/public/langs/ru_RU/companies.lang similarity index 100% rename from htdocs/langs/ru_RU/companies.lang rename to public/langs/ru_RU/companies.lang diff --git a/htdocs/langs/ru_RU/compta.lang b/public/langs/ru_RU/compta.lang similarity index 100% rename from htdocs/langs/ru_RU/compta.lang rename to public/langs/ru_RU/compta.lang diff --git a/htdocs/langs/ru_RU/contracts.lang b/public/langs/ru_RU/contracts.lang similarity index 100% rename from htdocs/langs/ru_RU/contracts.lang rename to public/langs/ru_RU/contracts.lang diff --git a/htdocs/langs/ru_RU/cron.lang b/public/langs/ru_RU/cron.lang similarity index 100% rename from htdocs/langs/ru_RU/cron.lang rename to public/langs/ru_RU/cron.lang diff --git a/htdocs/langs/ru_RU/deliveries.lang b/public/langs/ru_RU/deliveries.lang similarity index 100% rename from htdocs/langs/ru_RU/deliveries.lang rename to public/langs/ru_RU/deliveries.lang diff --git a/htdocs/langs/ru_RU/dict.lang b/public/langs/ru_RU/dict.lang similarity index 100% rename from htdocs/langs/ru_RU/dict.lang rename to public/langs/ru_RU/dict.lang diff --git a/htdocs/langs/ru_RU/donations.lang b/public/langs/ru_RU/donations.lang similarity index 100% rename from htdocs/langs/ru_RU/donations.lang rename to public/langs/ru_RU/donations.lang diff --git a/htdocs/langs/ru_RU/ecm.lang b/public/langs/ru_RU/ecm.lang similarity index 100% rename from htdocs/langs/ru_RU/ecm.lang rename to public/langs/ru_RU/ecm.lang diff --git a/htdocs/langs/ru_RU/errors.lang b/public/langs/ru_RU/errors.lang similarity index 100% rename from htdocs/langs/ru_RU/errors.lang rename to public/langs/ru_RU/errors.lang diff --git a/htdocs/langs/ru_RU/exports.lang b/public/langs/ru_RU/exports.lang similarity index 100% rename from htdocs/langs/ru_RU/exports.lang rename to public/langs/ru_RU/exports.lang diff --git a/htdocs/langs/ru_RU/externalsite.lang b/public/langs/ru_RU/externalsite.lang similarity index 100% rename from htdocs/langs/ru_RU/externalsite.lang rename to public/langs/ru_RU/externalsite.lang diff --git a/htdocs/langs/ru_RU/ftp.lang b/public/langs/ru_RU/ftp.lang similarity index 100% rename from htdocs/langs/ru_RU/ftp.lang rename to public/langs/ru_RU/ftp.lang diff --git a/htdocs/langs/ru_RU/help.lang b/public/langs/ru_RU/help.lang similarity index 100% rename from htdocs/langs/ru_RU/help.lang rename to public/langs/ru_RU/help.lang diff --git a/htdocs/langs/ru_RU/holiday.lang b/public/langs/ru_RU/holiday.lang similarity index 100% rename from htdocs/langs/ru_RU/holiday.lang rename to public/langs/ru_RU/holiday.lang diff --git a/htdocs/langs/ru_RU/hrm.lang b/public/langs/ru_RU/hrm.lang similarity index 100% rename from htdocs/langs/ru_RU/hrm.lang rename to public/langs/ru_RU/hrm.lang diff --git a/htdocs/langs/ru_RU/incoterm.lang b/public/langs/ru_RU/incoterm.lang similarity index 100% rename from htdocs/langs/ru_RU/incoterm.lang rename to public/langs/ru_RU/incoterm.lang diff --git a/htdocs/langs/ru_RU/install.lang b/public/langs/ru_RU/install.lang similarity index 100% rename from htdocs/langs/ru_RU/install.lang rename to public/langs/ru_RU/install.lang diff --git a/htdocs/langs/ru_RU/interventions.lang b/public/langs/ru_RU/interventions.lang similarity index 100% rename from htdocs/langs/ru_RU/interventions.lang rename to public/langs/ru_RU/interventions.lang diff --git a/htdocs/langs/ru_RU/languages.lang b/public/langs/ru_RU/languages.lang similarity index 100% rename from htdocs/langs/ru_RU/languages.lang rename to public/langs/ru_RU/languages.lang diff --git a/htdocs/langs/ru_RU/ldap.lang b/public/langs/ru_RU/ldap.lang similarity index 100% rename from htdocs/langs/ru_RU/ldap.lang rename to public/langs/ru_RU/ldap.lang diff --git a/htdocs/langs/ru_RU/link.lang b/public/langs/ru_RU/link.lang similarity index 100% rename from htdocs/langs/ru_RU/link.lang rename to public/langs/ru_RU/link.lang diff --git a/htdocs/langs/ru_RU/loan.lang b/public/langs/ru_RU/loan.lang similarity index 100% rename from htdocs/langs/ru_RU/loan.lang rename to public/langs/ru_RU/loan.lang diff --git a/htdocs/langs/ru_RU/mailmanspip.lang b/public/langs/ru_RU/mailmanspip.lang similarity index 100% rename from htdocs/langs/ru_RU/mailmanspip.lang rename to public/langs/ru_RU/mailmanspip.lang diff --git a/htdocs/langs/ru_RU/mails.lang b/public/langs/ru_RU/mails.lang similarity index 100% rename from htdocs/langs/ru_RU/mails.lang rename to public/langs/ru_RU/mails.lang diff --git a/htdocs/langs/ru_RU/main.lang b/public/langs/ru_RU/main.lang similarity index 100% rename from htdocs/langs/ru_RU/main.lang rename to public/langs/ru_RU/main.lang diff --git a/htdocs/langs/ru_RU/margins.lang b/public/langs/ru_RU/margins.lang similarity index 100% rename from htdocs/langs/ru_RU/margins.lang rename to public/langs/ru_RU/margins.lang diff --git a/htdocs/langs/ru_RU/members.lang b/public/langs/ru_RU/members.lang similarity index 100% rename from htdocs/langs/ru_RU/members.lang rename to public/langs/ru_RU/members.lang diff --git a/htdocs/langs/ru_RU/oauth.lang b/public/langs/ru_RU/oauth.lang similarity index 100% rename from htdocs/langs/ru_RU/oauth.lang rename to public/langs/ru_RU/oauth.lang diff --git a/htdocs/langs/ru_RU/opensurvey.lang b/public/langs/ru_RU/opensurvey.lang similarity index 100% rename from htdocs/langs/ru_RU/opensurvey.lang rename to public/langs/ru_RU/opensurvey.lang diff --git a/htdocs/langs/ru_RU/orders.lang b/public/langs/ru_RU/orders.lang similarity index 100% rename from htdocs/langs/ru_RU/orders.lang rename to public/langs/ru_RU/orders.lang diff --git a/htdocs/langs/ru_RU/other.lang b/public/langs/ru_RU/other.lang similarity index 100% rename from htdocs/langs/ru_RU/other.lang rename to public/langs/ru_RU/other.lang diff --git a/htdocs/langs/ru_RU/paybox.lang b/public/langs/ru_RU/paybox.lang similarity index 100% rename from htdocs/langs/ru_RU/paybox.lang rename to public/langs/ru_RU/paybox.lang diff --git a/htdocs/langs/ru_RU/paypal.lang b/public/langs/ru_RU/paypal.lang similarity index 100% rename from htdocs/langs/ru_RU/paypal.lang rename to public/langs/ru_RU/paypal.lang diff --git a/htdocs/langs/ru_RU/printing.lang b/public/langs/ru_RU/printing.lang similarity index 100% rename from htdocs/langs/ru_RU/printing.lang rename to public/langs/ru_RU/printing.lang diff --git a/htdocs/langs/ru_RU/productbatch.lang b/public/langs/ru_RU/productbatch.lang similarity index 100% rename from htdocs/langs/ru_RU/productbatch.lang rename to public/langs/ru_RU/productbatch.lang diff --git a/htdocs/langs/ru_RU/products.lang b/public/langs/ru_RU/products.lang similarity index 100% rename from htdocs/langs/ru_RU/products.lang rename to public/langs/ru_RU/products.lang diff --git a/htdocs/langs/ru_RU/projects.lang b/public/langs/ru_RU/projects.lang similarity index 100% rename from htdocs/langs/ru_RU/projects.lang rename to public/langs/ru_RU/projects.lang diff --git a/htdocs/langs/ru_RU/propal.lang b/public/langs/ru_RU/propal.lang similarity index 100% rename from htdocs/langs/ru_RU/propal.lang rename to public/langs/ru_RU/propal.lang diff --git a/htdocs/langs/ru_RU/receiptprinter.lang b/public/langs/ru_RU/receiptprinter.lang similarity index 100% rename from htdocs/langs/ru_RU/receiptprinter.lang rename to public/langs/ru_RU/receiptprinter.lang diff --git a/htdocs/langs/ru_RU/resource.lang b/public/langs/ru_RU/resource.lang similarity index 100% rename from htdocs/langs/ru_RU/resource.lang rename to public/langs/ru_RU/resource.lang diff --git a/htdocs/langs/ru_RU/salaries.lang b/public/langs/ru_RU/salaries.lang similarity index 100% rename from htdocs/langs/ru_RU/salaries.lang rename to public/langs/ru_RU/salaries.lang diff --git a/htdocs/langs/ru_RU/sendings.lang b/public/langs/ru_RU/sendings.lang similarity index 100% rename from htdocs/langs/ru_RU/sendings.lang rename to public/langs/ru_RU/sendings.lang diff --git a/htdocs/langs/ru_RU/sms.lang b/public/langs/ru_RU/sms.lang similarity index 100% rename from htdocs/langs/ru_RU/sms.lang rename to public/langs/ru_RU/sms.lang diff --git a/htdocs/langs/ru_RU/stocks.lang b/public/langs/ru_RU/stocks.lang similarity index 100% rename from htdocs/langs/ru_RU/stocks.lang rename to public/langs/ru_RU/stocks.lang diff --git a/htdocs/langs/ru_RU/supplier_proposal.lang b/public/langs/ru_RU/supplier_proposal.lang similarity index 100% rename from htdocs/langs/ru_RU/supplier_proposal.lang rename to public/langs/ru_RU/supplier_proposal.lang diff --git a/htdocs/langs/ru_RU/suppliers.lang b/public/langs/ru_RU/suppliers.lang similarity index 100% rename from htdocs/langs/ru_RU/suppliers.lang rename to public/langs/ru_RU/suppliers.lang diff --git a/htdocs/langs/ru_RU/trips.lang b/public/langs/ru_RU/trips.lang similarity index 100% rename from htdocs/langs/ru_RU/trips.lang rename to public/langs/ru_RU/trips.lang diff --git a/htdocs/langs/ru_RU/users.lang b/public/langs/ru_RU/users.lang similarity index 100% rename from htdocs/langs/ru_RU/users.lang rename to public/langs/ru_RU/users.lang diff --git a/htdocs/langs/ru_RU/website.lang b/public/langs/ru_RU/website.lang similarity index 100% rename from htdocs/langs/ru_RU/website.lang rename to public/langs/ru_RU/website.lang diff --git a/htdocs/langs/ru_RU/withdrawals.lang b/public/langs/ru_RU/withdrawals.lang similarity index 100% rename from htdocs/langs/ru_RU/withdrawals.lang rename to public/langs/ru_RU/withdrawals.lang diff --git a/htdocs/langs/ru_RU/workflow.lang b/public/langs/ru_RU/workflow.lang similarity index 100% rename from htdocs/langs/ru_RU/workflow.lang rename to public/langs/ru_RU/workflow.lang diff --git a/htdocs/langs/ru_UA/banks.lang b/public/langs/ru_UA/banks.lang similarity index 100% rename from htdocs/langs/ru_UA/banks.lang rename to public/langs/ru_UA/banks.lang diff --git a/htdocs/langs/ru_UA/bookmarks.lang b/public/langs/ru_UA/bookmarks.lang similarity index 100% rename from htdocs/langs/ru_UA/bookmarks.lang rename to public/langs/ru_UA/bookmarks.lang diff --git a/htdocs/langs/ru_UA/compta.lang b/public/langs/ru_UA/compta.lang similarity index 100% rename from htdocs/langs/ru_UA/compta.lang rename to public/langs/ru_UA/compta.lang diff --git a/htdocs/langs/ru_UA/contracts.lang b/public/langs/ru_UA/contracts.lang similarity index 100% rename from htdocs/langs/ru_UA/contracts.lang rename to public/langs/ru_UA/contracts.lang diff --git a/htdocs/langs/ru_UA/dict.lang b/public/langs/ru_UA/dict.lang similarity index 100% rename from htdocs/langs/ru_UA/dict.lang rename to public/langs/ru_UA/dict.lang diff --git a/htdocs/langs/ru_UA/ecm.lang b/public/langs/ru_UA/ecm.lang similarity index 100% rename from htdocs/langs/ru_UA/ecm.lang rename to public/langs/ru_UA/ecm.lang diff --git a/htdocs/langs/ru_UA/errors.lang b/public/langs/ru_UA/errors.lang similarity index 100% rename from htdocs/langs/ru_UA/errors.lang rename to public/langs/ru_UA/errors.lang diff --git a/htdocs/langs/ru_UA/ftp.lang b/public/langs/ru_UA/ftp.lang similarity index 100% rename from htdocs/langs/ru_UA/ftp.lang rename to public/langs/ru_UA/ftp.lang diff --git a/htdocs/langs/ru_UA/install.lang b/public/langs/ru_UA/install.lang similarity index 100% rename from htdocs/langs/ru_UA/install.lang rename to public/langs/ru_UA/install.lang diff --git a/htdocs/langs/ru_UA/interventions.lang b/public/langs/ru_UA/interventions.lang similarity index 100% rename from htdocs/langs/ru_UA/interventions.lang rename to public/langs/ru_UA/interventions.lang diff --git a/htdocs/langs/ru_UA/mails.lang b/public/langs/ru_UA/mails.lang similarity index 100% rename from htdocs/langs/ru_UA/mails.lang rename to public/langs/ru_UA/mails.lang diff --git a/htdocs/langs/ru_UA/main.lang b/public/langs/ru_UA/main.lang similarity index 100% rename from htdocs/langs/ru_UA/main.lang rename to public/langs/ru_UA/main.lang diff --git a/htdocs/langs/ru_UA/other.lang b/public/langs/ru_UA/other.lang similarity index 100% rename from htdocs/langs/ru_UA/other.lang rename to public/langs/ru_UA/other.lang diff --git a/htdocs/langs/ru_UA/paybox.lang b/public/langs/ru_UA/paybox.lang similarity index 100% rename from htdocs/langs/ru_UA/paybox.lang rename to public/langs/ru_UA/paybox.lang diff --git a/htdocs/langs/ru_UA/paypal.lang b/public/langs/ru_UA/paypal.lang similarity index 100% rename from htdocs/langs/ru_UA/paypal.lang rename to public/langs/ru_UA/paypal.lang diff --git a/htdocs/langs/sk_SK/accountancy.lang b/public/langs/sk_SK/accountancy.lang similarity index 100% rename from htdocs/langs/sk_SK/accountancy.lang rename to public/langs/sk_SK/accountancy.lang diff --git a/htdocs/langs/sk_SK/admin.lang b/public/langs/sk_SK/admin.lang similarity index 100% rename from htdocs/langs/sk_SK/admin.lang rename to public/langs/sk_SK/admin.lang diff --git a/htdocs/langs/sk_SK/agenda.lang b/public/langs/sk_SK/agenda.lang similarity index 100% rename from htdocs/langs/sk_SK/agenda.lang rename to public/langs/sk_SK/agenda.lang diff --git a/htdocs/langs/sk_SK/banks.lang b/public/langs/sk_SK/banks.lang similarity index 100% rename from htdocs/langs/sk_SK/banks.lang rename to public/langs/sk_SK/banks.lang diff --git a/htdocs/langs/sk_SK/bills.lang b/public/langs/sk_SK/bills.lang similarity index 100% rename from htdocs/langs/sk_SK/bills.lang rename to public/langs/sk_SK/bills.lang diff --git a/htdocs/langs/sk_SK/bookmarks.lang b/public/langs/sk_SK/bookmarks.lang similarity index 100% rename from htdocs/langs/sk_SK/bookmarks.lang rename to public/langs/sk_SK/bookmarks.lang diff --git a/htdocs/langs/sk_SK/boxes.lang b/public/langs/sk_SK/boxes.lang similarity index 100% rename from htdocs/langs/sk_SK/boxes.lang rename to public/langs/sk_SK/boxes.lang diff --git a/htdocs/langs/sk_SK/cashdesk.lang b/public/langs/sk_SK/cashdesk.lang similarity index 100% rename from htdocs/langs/sk_SK/cashdesk.lang rename to public/langs/sk_SK/cashdesk.lang diff --git a/htdocs/langs/sk_SK/categories.lang b/public/langs/sk_SK/categories.lang similarity index 100% rename from htdocs/langs/sk_SK/categories.lang rename to public/langs/sk_SK/categories.lang diff --git a/htdocs/langs/sk_SK/commercial.lang b/public/langs/sk_SK/commercial.lang similarity index 100% rename from htdocs/langs/sk_SK/commercial.lang rename to public/langs/sk_SK/commercial.lang diff --git a/htdocs/langs/sk_SK/companies.lang b/public/langs/sk_SK/companies.lang similarity index 100% rename from htdocs/langs/sk_SK/companies.lang rename to public/langs/sk_SK/companies.lang diff --git a/htdocs/langs/sk_SK/compta.lang b/public/langs/sk_SK/compta.lang similarity index 100% rename from htdocs/langs/sk_SK/compta.lang rename to public/langs/sk_SK/compta.lang diff --git a/htdocs/langs/sk_SK/contracts.lang b/public/langs/sk_SK/contracts.lang similarity index 100% rename from htdocs/langs/sk_SK/contracts.lang rename to public/langs/sk_SK/contracts.lang diff --git a/htdocs/langs/sk_SK/cron.lang b/public/langs/sk_SK/cron.lang similarity index 100% rename from htdocs/langs/sk_SK/cron.lang rename to public/langs/sk_SK/cron.lang diff --git a/htdocs/langs/sk_SK/deliveries.lang b/public/langs/sk_SK/deliveries.lang similarity index 100% rename from htdocs/langs/sk_SK/deliveries.lang rename to public/langs/sk_SK/deliveries.lang diff --git a/htdocs/langs/sk_SK/dict.lang b/public/langs/sk_SK/dict.lang similarity index 100% rename from htdocs/langs/sk_SK/dict.lang rename to public/langs/sk_SK/dict.lang diff --git a/htdocs/langs/sk_SK/donations.lang b/public/langs/sk_SK/donations.lang similarity index 100% rename from htdocs/langs/sk_SK/donations.lang rename to public/langs/sk_SK/donations.lang diff --git a/htdocs/langs/sk_SK/ecm.lang b/public/langs/sk_SK/ecm.lang similarity index 100% rename from htdocs/langs/sk_SK/ecm.lang rename to public/langs/sk_SK/ecm.lang diff --git a/htdocs/langs/sk_SK/errors.lang b/public/langs/sk_SK/errors.lang similarity index 100% rename from htdocs/langs/sk_SK/errors.lang rename to public/langs/sk_SK/errors.lang diff --git a/htdocs/langs/sk_SK/exports.lang b/public/langs/sk_SK/exports.lang similarity index 100% rename from htdocs/langs/sk_SK/exports.lang rename to public/langs/sk_SK/exports.lang diff --git a/htdocs/langs/sk_SK/externalsite.lang b/public/langs/sk_SK/externalsite.lang similarity index 100% rename from htdocs/langs/sk_SK/externalsite.lang rename to public/langs/sk_SK/externalsite.lang diff --git a/htdocs/langs/sk_SK/ftp.lang b/public/langs/sk_SK/ftp.lang similarity index 100% rename from htdocs/langs/sk_SK/ftp.lang rename to public/langs/sk_SK/ftp.lang diff --git a/htdocs/langs/sk_SK/help.lang b/public/langs/sk_SK/help.lang similarity index 100% rename from htdocs/langs/sk_SK/help.lang rename to public/langs/sk_SK/help.lang diff --git a/htdocs/langs/sk_SK/holiday.lang b/public/langs/sk_SK/holiday.lang similarity index 100% rename from htdocs/langs/sk_SK/holiday.lang rename to public/langs/sk_SK/holiday.lang diff --git a/htdocs/langs/sk_SK/hrm.lang b/public/langs/sk_SK/hrm.lang similarity index 100% rename from htdocs/langs/sk_SK/hrm.lang rename to public/langs/sk_SK/hrm.lang diff --git a/htdocs/langs/sk_SK/incoterm.lang b/public/langs/sk_SK/incoterm.lang similarity index 100% rename from htdocs/langs/sk_SK/incoterm.lang rename to public/langs/sk_SK/incoterm.lang diff --git a/htdocs/langs/sk_SK/install.lang b/public/langs/sk_SK/install.lang similarity index 100% rename from htdocs/langs/sk_SK/install.lang rename to public/langs/sk_SK/install.lang diff --git a/htdocs/langs/sk_SK/interventions.lang b/public/langs/sk_SK/interventions.lang similarity index 100% rename from htdocs/langs/sk_SK/interventions.lang rename to public/langs/sk_SK/interventions.lang diff --git a/htdocs/langs/sk_SK/languages.lang b/public/langs/sk_SK/languages.lang similarity index 100% rename from htdocs/langs/sk_SK/languages.lang rename to public/langs/sk_SK/languages.lang diff --git a/htdocs/langs/sk_SK/ldap.lang b/public/langs/sk_SK/ldap.lang similarity index 100% rename from htdocs/langs/sk_SK/ldap.lang rename to public/langs/sk_SK/ldap.lang diff --git a/htdocs/langs/sk_SK/link.lang b/public/langs/sk_SK/link.lang similarity index 100% rename from htdocs/langs/sk_SK/link.lang rename to public/langs/sk_SK/link.lang diff --git a/htdocs/langs/sk_SK/loan.lang b/public/langs/sk_SK/loan.lang similarity index 100% rename from htdocs/langs/sk_SK/loan.lang rename to public/langs/sk_SK/loan.lang diff --git a/htdocs/langs/sk_SK/mailmanspip.lang b/public/langs/sk_SK/mailmanspip.lang similarity index 100% rename from htdocs/langs/sk_SK/mailmanspip.lang rename to public/langs/sk_SK/mailmanspip.lang diff --git a/htdocs/langs/sk_SK/mails.lang b/public/langs/sk_SK/mails.lang similarity index 100% rename from htdocs/langs/sk_SK/mails.lang rename to public/langs/sk_SK/mails.lang diff --git a/htdocs/langs/sk_SK/main.lang b/public/langs/sk_SK/main.lang similarity index 100% rename from htdocs/langs/sk_SK/main.lang rename to public/langs/sk_SK/main.lang diff --git a/htdocs/langs/sk_SK/margins.lang b/public/langs/sk_SK/margins.lang similarity index 100% rename from htdocs/langs/sk_SK/margins.lang rename to public/langs/sk_SK/margins.lang diff --git a/htdocs/langs/sk_SK/members.lang b/public/langs/sk_SK/members.lang similarity index 100% rename from htdocs/langs/sk_SK/members.lang rename to public/langs/sk_SK/members.lang diff --git a/htdocs/langs/sk_SK/oauth.lang b/public/langs/sk_SK/oauth.lang similarity index 100% rename from htdocs/langs/sk_SK/oauth.lang rename to public/langs/sk_SK/oauth.lang diff --git a/htdocs/langs/sk_SK/opensurvey.lang b/public/langs/sk_SK/opensurvey.lang similarity index 100% rename from htdocs/langs/sk_SK/opensurvey.lang rename to public/langs/sk_SK/opensurvey.lang diff --git a/htdocs/langs/sk_SK/orders.lang b/public/langs/sk_SK/orders.lang similarity index 100% rename from htdocs/langs/sk_SK/orders.lang rename to public/langs/sk_SK/orders.lang diff --git a/htdocs/langs/sk_SK/other.lang b/public/langs/sk_SK/other.lang similarity index 100% rename from htdocs/langs/sk_SK/other.lang rename to public/langs/sk_SK/other.lang diff --git a/htdocs/langs/sk_SK/paybox.lang b/public/langs/sk_SK/paybox.lang similarity index 100% rename from htdocs/langs/sk_SK/paybox.lang rename to public/langs/sk_SK/paybox.lang diff --git a/htdocs/langs/sk_SK/paypal.lang b/public/langs/sk_SK/paypal.lang similarity index 100% rename from htdocs/langs/sk_SK/paypal.lang rename to public/langs/sk_SK/paypal.lang diff --git a/htdocs/langs/sk_SK/printing.lang b/public/langs/sk_SK/printing.lang similarity index 100% rename from htdocs/langs/sk_SK/printing.lang rename to public/langs/sk_SK/printing.lang diff --git a/htdocs/langs/sk_SK/productbatch.lang b/public/langs/sk_SK/productbatch.lang similarity index 100% rename from htdocs/langs/sk_SK/productbatch.lang rename to public/langs/sk_SK/productbatch.lang diff --git a/htdocs/langs/sk_SK/products.lang b/public/langs/sk_SK/products.lang similarity index 100% rename from htdocs/langs/sk_SK/products.lang rename to public/langs/sk_SK/products.lang diff --git a/htdocs/langs/sk_SK/projects.lang b/public/langs/sk_SK/projects.lang similarity index 100% rename from htdocs/langs/sk_SK/projects.lang rename to public/langs/sk_SK/projects.lang diff --git a/htdocs/langs/sk_SK/propal.lang b/public/langs/sk_SK/propal.lang similarity index 100% rename from htdocs/langs/sk_SK/propal.lang rename to public/langs/sk_SK/propal.lang diff --git a/htdocs/langs/sk_SK/receiptprinter.lang b/public/langs/sk_SK/receiptprinter.lang similarity index 100% rename from htdocs/langs/sk_SK/receiptprinter.lang rename to public/langs/sk_SK/receiptprinter.lang diff --git a/htdocs/langs/sk_SK/resource.lang b/public/langs/sk_SK/resource.lang similarity index 100% rename from htdocs/langs/sk_SK/resource.lang rename to public/langs/sk_SK/resource.lang diff --git a/htdocs/langs/sk_SK/salaries.lang b/public/langs/sk_SK/salaries.lang similarity index 100% rename from htdocs/langs/sk_SK/salaries.lang rename to public/langs/sk_SK/salaries.lang diff --git a/htdocs/langs/sk_SK/sendings.lang b/public/langs/sk_SK/sendings.lang similarity index 100% rename from htdocs/langs/sk_SK/sendings.lang rename to public/langs/sk_SK/sendings.lang diff --git a/htdocs/langs/sk_SK/sms.lang b/public/langs/sk_SK/sms.lang similarity index 100% rename from htdocs/langs/sk_SK/sms.lang rename to public/langs/sk_SK/sms.lang diff --git a/htdocs/langs/sk_SK/stocks.lang b/public/langs/sk_SK/stocks.lang similarity index 100% rename from htdocs/langs/sk_SK/stocks.lang rename to public/langs/sk_SK/stocks.lang diff --git a/htdocs/langs/sk_SK/supplier_proposal.lang b/public/langs/sk_SK/supplier_proposal.lang similarity index 100% rename from htdocs/langs/sk_SK/supplier_proposal.lang rename to public/langs/sk_SK/supplier_proposal.lang diff --git a/htdocs/langs/sk_SK/suppliers.lang b/public/langs/sk_SK/suppliers.lang similarity index 100% rename from htdocs/langs/sk_SK/suppliers.lang rename to public/langs/sk_SK/suppliers.lang diff --git a/htdocs/langs/sk_SK/trips.lang b/public/langs/sk_SK/trips.lang similarity index 100% rename from htdocs/langs/sk_SK/trips.lang rename to public/langs/sk_SK/trips.lang diff --git a/htdocs/langs/sk_SK/users.lang b/public/langs/sk_SK/users.lang similarity index 100% rename from htdocs/langs/sk_SK/users.lang rename to public/langs/sk_SK/users.lang diff --git a/htdocs/langs/sk_SK/website.lang b/public/langs/sk_SK/website.lang similarity index 100% rename from htdocs/langs/sk_SK/website.lang rename to public/langs/sk_SK/website.lang diff --git a/htdocs/langs/sk_SK/withdrawals.lang b/public/langs/sk_SK/withdrawals.lang similarity index 100% rename from htdocs/langs/sk_SK/withdrawals.lang rename to public/langs/sk_SK/withdrawals.lang diff --git a/htdocs/langs/sk_SK/workflow.lang b/public/langs/sk_SK/workflow.lang similarity index 100% rename from htdocs/langs/sk_SK/workflow.lang rename to public/langs/sk_SK/workflow.lang diff --git a/htdocs/langs/sl_SI/accountancy.lang b/public/langs/sl_SI/accountancy.lang similarity index 100% rename from htdocs/langs/sl_SI/accountancy.lang rename to public/langs/sl_SI/accountancy.lang diff --git a/htdocs/langs/sl_SI/admin.lang b/public/langs/sl_SI/admin.lang similarity index 100% rename from htdocs/langs/sl_SI/admin.lang rename to public/langs/sl_SI/admin.lang diff --git a/htdocs/langs/sl_SI/agenda.lang b/public/langs/sl_SI/agenda.lang similarity index 100% rename from htdocs/langs/sl_SI/agenda.lang rename to public/langs/sl_SI/agenda.lang diff --git a/htdocs/langs/sl_SI/banks.lang b/public/langs/sl_SI/banks.lang similarity index 100% rename from htdocs/langs/sl_SI/banks.lang rename to public/langs/sl_SI/banks.lang diff --git a/htdocs/langs/sl_SI/bills.lang b/public/langs/sl_SI/bills.lang similarity index 100% rename from htdocs/langs/sl_SI/bills.lang rename to public/langs/sl_SI/bills.lang diff --git a/htdocs/langs/sl_SI/bookmarks.lang b/public/langs/sl_SI/bookmarks.lang similarity index 100% rename from htdocs/langs/sl_SI/bookmarks.lang rename to public/langs/sl_SI/bookmarks.lang diff --git a/htdocs/langs/sl_SI/boxes.lang b/public/langs/sl_SI/boxes.lang similarity index 100% rename from htdocs/langs/sl_SI/boxes.lang rename to public/langs/sl_SI/boxes.lang diff --git a/htdocs/langs/sl_SI/cashdesk.lang b/public/langs/sl_SI/cashdesk.lang similarity index 100% rename from htdocs/langs/sl_SI/cashdesk.lang rename to public/langs/sl_SI/cashdesk.lang diff --git a/htdocs/langs/sl_SI/categories.lang b/public/langs/sl_SI/categories.lang similarity index 100% rename from htdocs/langs/sl_SI/categories.lang rename to public/langs/sl_SI/categories.lang diff --git a/htdocs/langs/sl_SI/commercial.lang b/public/langs/sl_SI/commercial.lang similarity index 100% rename from htdocs/langs/sl_SI/commercial.lang rename to public/langs/sl_SI/commercial.lang diff --git a/htdocs/langs/sl_SI/companies.lang b/public/langs/sl_SI/companies.lang similarity index 100% rename from htdocs/langs/sl_SI/companies.lang rename to public/langs/sl_SI/companies.lang diff --git a/htdocs/langs/sl_SI/compta.lang b/public/langs/sl_SI/compta.lang similarity index 100% rename from htdocs/langs/sl_SI/compta.lang rename to public/langs/sl_SI/compta.lang diff --git a/htdocs/langs/sl_SI/contracts.lang b/public/langs/sl_SI/contracts.lang similarity index 100% rename from htdocs/langs/sl_SI/contracts.lang rename to public/langs/sl_SI/contracts.lang diff --git a/htdocs/langs/sl_SI/cron.lang b/public/langs/sl_SI/cron.lang similarity index 100% rename from htdocs/langs/sl_SI/cron.lang rename to public/langs/sl_SI/cron.lang diff --git a/htdocs/langs/sl_SI/deliveries.lang b/public/langs/sl_SI/deliveries.lang similarity index 100% rename from htdocs/langs/sl_SI/deliveries.lang rename to public/langs/sl_SI/deliveries.lang diff --git a/htdocs/langs/sl_SI/dict.lang b/public/langs/sl_SI/dict.lang similarity index 100% rename from htdocs/langs/sl_SI/dict.lang rename to public/langs/sl_SI/dict.lang diff --git a/htdocs/langs/sl_SI/donations.lang b/public/langs/sl_SI/donations.lang similarity index 100% rename from htdocs/langs/sl_SI/donations.lang rename to public/langs/sl_SI/donations.lang diff --git a/htdocs/langs/sl_SI/ecm.lang b/public/langs/sl_SI/ecm.lang similarity index 100% rename from htdocs/langs/sl_SI/ecm.lang rename to public/langs/sl_SI/ecm.lang diff --git a/htdocs/langs/sl_SI/errors.lang b/public/langs/sl_SI/errors.lang similarity index 100% rename from htdocs/langs/sl_SI/errors.lang rename to public/langs/sl_SI/errors.lang diff --git a/htdocs/langs/sl_SI/exports.lang b/public/langs/sl_SI/exports.lang similarity index 100% rename from htdocs/langs/sl_SI/exports.lang rename to public/langs/sl_SI/exports.lang diff --git a/htdocs/langs/sl_SI/externalsite.lang b/public/langs/sl_SI/externalsite.lang similarity index 100% rename from htdocs/langs/sl_SI/externalsite.lang rename to public/langs/sl_SI/externalsite.lang diff --git a/htdocs/langs/sl_SI/ftp.lang b/public/langs/sl_SI/ftp.lang similarity index 100% rename from htdocs/langs/sl_SI/ftp.lang rename to public/langs/sl_SI/ftp.lang diff --git a/htdocs/langs/sl_SI/help.lang b/public/langs/sl_SI/help.lang similarity index 100% rename from htdocs/langs/sl_SI/help.lang rename to public/langs/sl_SI/help.lang diff --git a/htdocs/langs/sl_SI/holiday.lang b/public/langs/sl_SI/holiday.lang similarity index 100% rename from htdocs/langs/sl_SI/holiday.lang rename to public/langs/sl_SI/holiday.lang diff --git a/htdocs/langs/sl_SI/hrm.lang b/public/langs/sl_SI/hrm.lang similarity index 100% rename from htdocs/langs/sl_SI/hrm.lang rename to public/langs/sl_SI/hrm.lang diff --git a/htdocs/langs/sl_SI/incoterm.lang b/public/langs/sl_SI/incoterm.lang similarity index 100% rename from htdocs/langs/sl_SI/incoterm.lang rename to public/langs/sl_SI/incoterm.lang diff --git a/htdocs/langs/sl_SI/install.lang b/public/langs/sl_SI/install.lang similarity index 100% rename from htdocs/langs/sl_SI/install.lang rename to public/langs/sl_SI/install.lang diff --git a/htdocs/langs/sl_SI/interventions.lang b/public/langs/sl_SI/interventions.lang similarity index 100% rename from htdocs/langs/sl_SI/interventions.lang rename to public/langs/sl_SI/interventions.lang diff --git a/htdocs/langs/sl_SI/languages.lang b/public/langs/sl_SI/languages.lang similarity index 100% rename from htdocs/langs/sl_SI/languages.lang rename to public/langs/sl_SI/languages.lang diff --git a/htdocs/langs/sl_SI/ldap.lang b/public/langs/sl_SI/ldap.lang similarity index 100% rename from htdocs/langs/sl_SI/ldap.lang rename to public/langs/sl_SI/ldap.lang diff --git a/htdocs/langs/sl_SI/link.lang b/public/langs/sl_SI/link.lang similarity index 100% rename from htdocs/langs/sl_SI/link.lang rename to public/langs/sl_SI/link.lang diff --git a/htdocs/langs/sl_SI/loan.lang b/public/langs/sl_SI/loan.lang similarity index 100% rename from htdocs/langs/sl_SI/loan.lang rename to public/langs/sl_SI/loan.lang diff --git a/htdocs/langs/sl_SI/mailmanspip.lang b/public/langs/sl_SI/mailmanspip.lang similarity index 100% rename from htdocs/langs/sl_SI/mailmanspip.lang rename to public/langs/sl_SI/mailmanspip.lang diff --git a/htdocs/langs/sl_SI/mails.lang b/public/langs/sl_SI/mails.lang similarity index 100% rename from htdocs/langs/sl_SI/mails.lang rename to public/langs/sl_SI/mails.lang diff --git a/htdocs/langs/sl_SI/main.lang b/public/langs/sl_SI/main.lang similarity index 100% rename from htdocs/langs/sl_SI/main.lang rename to public/langs/sl_SI/main.lang diff --git a/htdocs/langs/sl_SI/margins.lang b/public/langs/sl_SI/margins.lang similarity index 100% rename from htdocs/langs/sl_SI/margins.lang rename to public/langs/sl_SI/margins.lang diff --git a/htdocs/langs/sl_SI/members.lang b/public/langs/sl_SI/members.lang similarity index 100% rename from htdocs/langs/sl_SI/members.lang rename to public/langs/sl_SI/members.lang diff --git a/htdocs/langs/sl_SI/oauth.lang b/public/langs/sl_SI/oauth.lang similarity index 100% rename from htdocs/langs/sl_SI/oauth.lang rename to public/langs/sl_SI/oauth.lang diff --git a/htdocs/langs/sl_SI/opensurvey.lang b/public/langs/sl_SI/opensurvey.lang similarity index 100% rename from htdocs/langs/sl_SI/opensurvey.lang rename to public/langs/sl_SI/opensurvey.lang diff --git a/htdocs/langs/sl_SI/orders.lang b/public/langs/sl_SI/orders.lang similarity index 100% rename from htdocs/langs/sl_SI/orders.lang rename to public/langs/sl_SI/orders.lang diff --git a/htdocs/langs/sl_SI/other.lang b/public/langs/sl_SI/other.lang similarity index 100% rename from htdocs/langs/sl_SI/other.lang rename to public/langs/sl_SI/other.lang diff --git a/htdocs/langs/sl_SI/paybox.lang b/public/langs/sl_SI/paybox.lang similarity index 100% rename from htdocs/langs/sl_SI/paybox.lang rename to public/langs/sl_SI/paybox.lang diff --git a/htdocs/langs/sl_SI/paypal.lang b/public/langs/sl_SI/paypal.lang similarity index 100% rename from htdocs/langs/sl_SI/paypal.lang rename to public/langs/sl_SI/paypal.lang diff --git a/htdocs/langs/sl_SI/printing.lang b/public/langs/sl_SI/printing.lang similarity index 100% rename from htdocs/langs/sl_SI/printing.lang rename to public/langs/sl_SI/printing.lang diff --git a/htdocs/langs/sl_SI/productbatch.lang b/public/langs/sl_SI/productbatch.lang similarity index 100% rename from htdocs/langs/sl_SI/productbatch.lang rename to public/langs/sl_SI/productbatch.lang diff --git a/htdocs/langs/sl_SI/products.lang b/public/langs/sl_SI/products.lang similarity index 100% rename from htdocs/langs/sl_SI/products.lang rename to public/langs/sl_SI/products.lang diff --git a/htdocs/langs/sl_SI/projects.lang b/public/langs/sl_SI/projects.lang similarity index 100% rename from htdocs/langs/sl_SI/projects.lang rename to public/langs/sl_SI/projects.lang diff --git a/htdocs/langs/sl_SI/propal.lang b/public/langs/sl_SI/propal.lang similarity index 100% rename from htdocs/langs/sl_SI/propal.lang rename to public/langs/sl_SI/propal.lang diff --git a/htdocs/langs/sl_SI/receiptprinter.lang b/public/langs/sl_SI/receiptprinter.lang similarity index 100% rename from htdocs/langs/sl_SI/receiptprinter.lang rename to public/langs/sl_SI/receiptprinter.lang diff --git a/htdocs/langs/sl_SI/resource.lang b/public/langs/sl_SI/resource.lang similarity index 100% rename from htdocs/langs/sl_SI/resource.lang rename to public/langs/sl_SI/resource.lang diff --git a/htdocs/langs/sl_SI/salaries.lang b/public/langs/sl_SI/salaries.lang similarity index 100% rename from htdocs/langs/sl_SI/salaries.lang rename to public/langs/sl_SI/salaries.lang diff --git a/htdocs/langs/sl_SI/sendings.lang b/public/langs/sl_SI/sendings.lang similarity index 100% rename from htdocs/langs/sl_SI/sendings.lang rename to public/langs/sl_SI/sendings.lang diff --git a/htdocs/langs/sl_SI/sms.lang b/public/langs/sl_SI/sms.lang similarity index 100% rename from htdocs/langs/sl_SI/sms.lang rename to public/langs/sl_SI/sms.lang diff --git a/htdocs/langs/sl_SI/stocks.lang b/public/langs/sl_SI/stocks.lang similarity index 100% rename from htdocs/langs/sl_SI/stocks.lang rename to public/langs/sl_SI/stocks.lang diff --git a/htdocs/langs/sl_SI/supplier_proposal.lang b/public/langs/sl_SI/supplier_proposal.lang similarity index 100% rename from htdocs/langs/sl_SI/supplier_proposal.lang rename to public/langs/sl_SI/supplier_proposal.lang diff --git a/htdocs/langs/sl_SI/suppliers.lang b/public/langs/sl_SI/suppliers.lang similarity index 100% rename from htdocs/langs/sl_SI/suppliers.lang rename to public/langs/sl_SI/suppliers.lang diff --git a/htdocs/langs/sl_SI/trips.lang b/public/langs/sl_SI/trips.lang similarity index 100% rename from htdocs/langs/sl_SI/trips.lang rename to public/langs/sl_SI/trips.lang diff --git a/htdocs/langs/sl_SI/users.lang b/public/langs/sl_SI/users.lang similarity index 100% rename from htdocs/langs/sl_SI/users.lang rename to public/langs/sl_SI/users.lang diff --git a/htdocs/langs/sl_SI/website.lang b/public/langs/sl_SI/website.lang similarity index 100% rename from htdocs/langs/sl_SI/website.lang rename to public/langs/sl_SI/website.lang diff --git a/htdocs/langs/sl_SI/withdrawals.lang b/public/langs/sl_SI/withdrawals.lang similarity index 100% rename from htdocs/langs/sl_SI/withdrawals.lang rename to public/langs/sl_SI/withdrawals.lang diff --git a/htdocs/langs/sl_SI/workflow.lang b/public/langs/sl_SI/workflow.lang similarity index 100% rename from htdocs/langs/sl_SI/workflow.lang rename to public/langs/sl_SI/workflow.lang diff --git a/htdocs/langs/sq_AL/accountancy.lang b/public/langs/sq_AL/accountancy.lang similarity index 100% rename from htdocs/langs/sq_AL/accountancy.lang rename to public/langs/sq_AL/accountancy.lang diff --git a/htdocs/langs/sq_AL/admin.lang b/public/langs/sq_AL/admin.lang similarity index 100% rename from htdocs/langs/sq_AL/admin.lang rename to public/langs/sq_AL/admin.lang diff --git a/htdocs/langs/sq_AL/agenda.lang b/public/langs/sq_AL/agenda.lang similarity index 100% rename from htdocs/langs/sq_AL/agenda.lang rename to public/langs/sq_AL/agenda.lang diff --git a/htdocs/langs/sq_AL/banks.lang b/public/langs/sq_AL/banks.lang similarity index 100% rename from htdocs/langs/sq_AL/banks.lang rename to public/langs/sq_AL/banks.lang diff --git a/htdocs/langs/sq_AL/bills.lang b/public/langs/sq_AL/bills.lang similarity index 100% rename from htdocs/langs/sq_AL/bills.lang rename to public/langs/sq_AL/bills.lang diff --git a/htdocs/langs/sq_AL/bookmarks.lang b/public/langs/sq_AL/bookmarks.lang similarity index 100% rename from htdocs/langs/sq_AL/bookmarks.lang rename to public/langs/sq_AL/bookmarks.lang diff --git a/htdocs/langs/sq_AL/boxes.lang b/public/langs/sq_AL/boxes.lang similarity index 100% rename from htdocs/langs/sq_AL/boxes.lang rename to public/langs/sq_AL/boxes.lang diff --git a/htdocs/langs/sq_AL/cashdesk.lang b/public/langs/sq_AL/cashdesk.lang similarity index 100% rename from htdocs/langs/sq_AL/cashdesk.lang rename to public/langs/sq_AL/cashdesk.lang diff --git a/htdocs/langs/sq_AL/categories.lang b/public/langs/sq_AL/categories.lang similarity index 100% rename from htdocs/langs/sq_AL/categories.lang rename to public/langs/sq_AL/categories.lang diff --git a/htdocs/langs/sq_AL/commercial.lang b/public/langs/sq_AL/commercial.lang similarity index 100% rename from htdocs/langs/sq_AL/commercial.lang rename to public/langs/sq_AL/commercial.lang diff --git a/htdocs/langs/sq_AL/companies.lang b/public/langs/sq_AL/companies.lang similarity index 100% rename from htdocs/langs/sq_AL/companies.lang rename to public/langs/sq_AL/companies.lang diff --git a/htdocs/langs/sq_AL/compta.lang b/public/langs/sq_AL/compta.lang similarity index 100% rename from htdocs/langs/sq_AL/compta.lang rename to public/langs/sq_AL/compta.lang diff --git a/htdocs/langs/sq_AL/contracts.lang b/public/langs/sq_AL/contracts.lang similarity index 100% rename from htdocs/langs/sq_AL/contracts.lang rename to public/langs/sq_AL/contracts.lang diff --git a/htdocs/langs/sq_AL/cron.lang b/public/langs/sq_AL/cron.lang similarity index 100% rename from htdocs/langs/sq_AL/cron.lang rename to public/langs/sq_AL/cron.lang diff --git a/htdocs/langs/sq_AL/deliveries.lang b/public/langs/sq_AL/deliveries.lang similarity index 100% rename from htdocs/langs/sq_AL/deliveries.lang rename to public/langs/sq_AL/deliveries.lang diff --git a/htdocs/langs/sq_AL/dict.lang b/public/langs/sq_AL/dict.lang similarity index 100% rename from htdocs/langs/sq_AL/dict.lang rename to public/langs/sq_AL/dict.lang diff --git a/htdocs/langs/sq_AL/donations.lang b/public/langs/sq_AL/donations.lang similarity index 100% rename from htdocs/langs/sq_AL/donations.lang rename to public/langs/sq_AL/donations.lang diff --git a/htdocs/langs/sq_AL/ecm.lang b/public/langs/sq_AL/ecm.lang similarity index 100% rename from htdocs/langs/sq_AL/ecm.lang rename to public/langs/sq_AL/ecm.lang diff --git a/htdocs/langs/sq_AL/errors.lang b/public/langs/sq_AL/errors.lang similarity index 100% rename from htdocs/langs/sq_AL/errors.lang rename to public/langs/sq_AL/errors.lang diff --git a/htdocs/langs/sq_AL/exports.lang b/public/langs/sq_AL/exports.lang similarity index 100% rename from htdocs/langs/sq_AL/exports.lang rename to public/langs/sq_AL/exports.lang diff --git a/htdocs/langs/sq_AL/externalsite.lang b/public/langs/sq_AL/externalsite.lang similarity index 100% rename from htdocs/langs/sq_AL/externalsite.lang rename to public/langs/sq_AL/externalsite.lang diff --git a/htdocs/langs/sq_AL/ftp.lang b/public/langs/sq_AL/ftp.lang similarity index 100% rename from htdocs/langs/sq_AL/ftp.lang rename to public/langs/sq_AL/ftp.lang diff --git a/htdocs/langs/sq_AL/help.lang b/public/langs/sq_AL/help.lang similarity index 100% rename from htdocs/langs/sq_AL/help.lang rename to public/langs/sq_AL/help.lang diff --git a/htdocs/langs/sq_AL/holiday.lang b/public/langs/sq_AL/holiday.lang similarity index 100% rename from htdocs/langs/sq_AL/holiday.lang rename to public/langs/sq_AL/holiday.lang diff --git a/htdocs/langs/sq_AL/hrm.lang b/public/langs/sq_AL/hrm.lang similarity index 100% rename from htdocs/langs/sq_AL/hrm.lang rename to public/langs/sq_AL/hrm.lang diff --git a/htdocs/langs/sq_AL/incoterm.lang b/public/langs/sq_AL/incoterm.lang similarity index 100% rename from htdocs/langs/sq_AL/incoterm.lang rename to public/langs/sq_AL/incoterm.lang diff --git a/htdocs/langs/sq_AL/install.lang b/public/langs/sq_AL/install.lang similarity index 100% rename from htdocs/langs/sq_AL/install.lang rename to public/langs/sq_AL/install.lang diff --git a/htdocs/langs/sq_AL/interventions.lang b/public/langs/sq_AL/interventions.lang similarity index 100% rename from htdocs/langs/sq_AL/interventions.lang rename to public/langs/sq_AL/interventions.lang diff --git a/htdocs/langs/sq_AL/languages.lang b/public/langs/sq_AL/languages.lang similarity index 100% rename from htdocs/langs/sq_AL/languages.lang rename to public/langs/sq_AL/languages.lang diff --git a/htdocs/langs/sq_AL/ldap.lang b/public/langs/sq_AL/ldap.lang similarity index 100% rename from htdocs/langs/sq_AL/ldap.lang rename to public/langs/sq_AL/ldap.lang diff --git a/htdocs/langs/sq_AL/link.lang b/public/langs/sq_AL/link.lang similarity index 100% rename from htdocs/langs/sq_AL/link.lang rename to public/langs/sq_AL/link.lang diff --git a/htdocs/langs/sq_AL/loan.lang b/public/langs/sq_AL/loan.lang similarity index 100% rename from htdocs/langs/sq_AL/loan.lang rename to public/langs/sq_AL/loan.lang diff --git a/htdocs/langs/sq_AL/mailmanspip.lang b/public/langs/sq_AL/mailmanspip.lang similarity index 100% rename from htdocs/langs/sq_AL/mailmanspip.lang rename to public/langs/sq_AL/mailmanspip.lang diff --git a/htdocs/langs/sq_AL/mails.lang b/public/langs/sq_AL/mails.lang similarity index 100% rename from htdocs/langs/sq_AL/mails.lang rename to public/langs/sq_AL/mails.lang diff --git a/htdocs/langs/sq_AL/main.lang b/public/langs/sq_AL/main.lang similarity index 100% rename from htdocs/langs/sq_AL/main.lang rename to public/langs/sq_AL/main.lang diff --git a/htdocs/langs/sq_AL/margins.lang b/public/langs/sq_AL/margins.lang similarity index 100% rename from htdocs/langs/sq_AL/margins.lang rename to public/langs/sq_AL/margins.lang diff --git a/htdocs/langs/sq_AL/members.lang b/public/langs/sq_AL/members.lang similarity index 100% rename from htdocs/langs/sq_AL/members.lang rename to public/langs/sq_AL/members.lang diff --git a/htdocs/langs/sq_AL/oauth.lang b/public/langs/sq_AL/oauth.lang similarity index 100% rename from htdocs/langs/sq_AL/oauth.lang rename to public/langs/sq_AL/oauth.lang diff --git a/htdocs/langs/sq_AL/opensurvey.lang b/public/langs/sq_AL/opensurvey.lang similarity index 100% rename from htdocs/langs/sq_AL/opensurvey.lang rename to public/langs/sq_AL/opensurvey.lang diff --git a/htdocs/langs/sq_AL/orders.lang b/public/langs/sq_AL/orders.lang similarity index 100% rename from htdocs/langs/sq_AL/orders.lang rename to public/langs/sq_AL/orders.lang diff --git a/htdocs/langs/sq_AL/other.lang b/public/langs/sq_AL/other.lang similarity index 100% rename from htdocs/langs/sq_AL/other.lang rename to public/langs/sq_AL/other.lang diff --git a/htdocs/langs/sq_AL/paybox.lang b/public/langs/sq_AL/paybox.lang similarity index 100% rename from htdocs/langs/sq_AL/paybox.lang rename to public/langs/sq_AL/paybox.lang diff --git a/htdocs/langs/sq_AL/paypal.lang b/public/langs/sq_AL/paypal.lang similarity index 100% rename from htdocs/langs/sq_AL/paypal.lang rename to public/langs/sq_AL/paypal.lang diff --git a/htdocs/langs/sq_AL/printing.lang b/public/langs/sq_AL/printing.lang similarity index 100% rename from htdocs/langs/sq_AL/printing.lang rename to public/langs/sq_AL/printing.lang diff --git a/htdocs/langs/sq_AL/productbatch.lang b/public/langs/sq_AL/productbatch.lang similarity index 100% rename from htdocs/langs/sq_AL/productbatch.lang rename to public/langs/sq_AL/productbatch.lang diff --git a/htdocs/langs/sq_AL/products.lang b/public/langs/sq_AL/products.lang similarity index 100% rename from htdocs/langs/sq_AL/products.lang rename to public/langs/sq_AL/products.lang diff --git a/htdocs/langs/sq_AL/projects.lang b/public/langs/sq_AL/projects.lang similarity index 100% rename from htdocs/langs/sq_AL/projects.lang rename to public/langs/sq_AL/projects.lang diff --git a/htdocs/langs/sq_AL/propal.lang b/public/langs/sq_AL/propal.lang similarity index 100% rename from htdocs/langs/sq_AL/propal.lang rename to public/langs/sq_AL/propal.lang diff --git a/htdocs/langs/sq_AL/receiptprinter.lang b/public/langs/sq_AL/receiptprinter.lang similarity index 100% rename from htdocs/langs/sq_AL/receiptprinter.lang rename to public/langs/sq_AL/receiptprinter.lang diff --git a/htdocs/langs/sq_AL/resource.lang b/public/langs/sq_AL/resource.lang similarity index 100% rename from htdocs/langs/sq_AL/resource.lang rename to public/langs/sq_AL/resource.lang diff --git a/htdocs/langs/sq_AL/salaries.lang b/public/langs/sq_AL/salaries.lang similarity index 100% rename from htdocs/langs/sq_AL/salaries.lang rename to public/langs/sq_AL/salaries.lang diff --git a/htdocs/langs/sq_AL/sendings.lang b/public/langs/sq_AL/sendings.lang similarity index 100% rename from htdocs/langs/sq_AL/sendings.lang rename to public/langs/sq_AL/sendings.lang diff --git a/htdocs/langs/sq_AL/sms.lang b/public/langs/sq_AL/sms.lang similarity index 100% rename from htdocs/langs/sq_AL/sms.lang rename to public/langs/sq_AL/sms.lang diff --git a/htdocs/langs/sq_AL/stocks.lang b/public/langs/sq_AL/stocks.lang similarity index 100% rename from htdocs/langs/sq_AL/stocks.lang rename to public/langs/sq_AL/stocks.lang diff --git a/htdocs/langs/sq_AL/supplier_proposal.lang b/public/langs/sq_AL/supplier_proposal.lang similarity index 100% rename from htdocs/langs/sq_AL/supplier_proposal.lang rename to public/langs/sq_AL/supplier_proposal.lang diff --git a/htdocs/langs/sq_AL/suppliers.lang b/public/langs/sq_AL/suppliers.lang similarity index 100% rename from htdocs/langs/sq_AL/suppliers.lang rename to public/langs/sq_AL/suppliers.lang diff --git a/htdocs/langs/sq_AL/trips.lang b/public/langs/sq_AL/trips.lang similarity index 100% rename from htdocs/langs/sq_AL/trips.lang rename to public/langs/sq_AL/trips.lang diff --git a/htdocs/langs/sq_AL/users.lang b/public/langs/sq_AL/users.lang similarity index 100% rename from htdocs/langs/sq_AL/users.lang rename to public/langs/sq_AL/users.lang diff --git a/htdocs/langs/sq_AL/website.lang b/public/langs/sq_AL/website.lang similarity index 100% rename from htdocs/langs/sq_AL/website.lang rename to public/langs/sq_AL/website.lang diff --git a/htdocs/langs/sq_AL/withdrawals.lang b/public/langs/sq_AL/withdrawals.lang similarity index 100% rename from htdocs/langs/sq_AL/withdrawals.lang rename to public/langs/sq_AL/withdrawals.lang diff --git a/htdocs/langs/sq_AL/workflow.lang b/public/langs/sq_AL/workflow.lang similarity index 100% rename from htdocs/langs/sq_AL/workflow.lang rename to public/langs/sq_AL/workflow.lang diff --git a/htdocs/langs/sr_RS/accountancy.lang b/public/langs/sr_RS/accountancy.lang similarity index 100% rename from htdocs/langs/sr_RS/accountancy.lang rename to public/langs/sr_RS/accountancy.lang diff --git a/htdocs/langs/sr_RS/admin.lang b/public/langs/sr_RS/admin.lang similarity index 100% rename from htdocs/langs/sr_RS/admin.lang rename to public/langs/sr_RS/admin.lang diff --git a/htdocs/langs/sr_RS/agenda.lang b/public/langs/sr_RS/agenda.lang similarity index 100% rename from htdocs/langs/sr_RS/agenda.lang rename to public/langs/sr_RS/agenda.lang diff --git a/htdocs/langs/sr_RS/banks.lang b/public/langs/sr_RS/banks.lang similarity index 100% rename from htdocs/langs/sr_RS/banks.lang rename to public/langs/sr_RS/banks.lang diff --git a/htdocs/langs/sr_RS/bills.lang b/public/langs/sr_RS/bills.lang similarity index 100% rename from htdocs/langs/sr_RS/bills.lang rename to public/langs/sr_RS/bills.lang diff --git a/htdocs/langs/sr_RS/bookmarks.lang b/public/langs/sr_RS/bookmarks.lang similarity index 100% rename from htdocs/langs/sr_RS/bookmarks.lang rename to public/langs/sr_RS/bookmarks.lang diff --git a/htdocs/langs/sr_RS/boxes.lang b/public/langs/sr_RS/boxes.lang similarity index 100% rename from htdocs/langs/sr_RS/boxes.lang rename to public/langs/sr_RS/boxes.lang diff --git a/htdocs/langs/sr_RS/cashdesk.lang b/public/langs/sr_RS/cashdesk.lang similarity index 100% rename from htdocs/langs/sr_RS/cashdesk.lang rename to public/langs/sr_RS/cashdesk.lang diff --git a/htdocs/langs/sr_RS/categories.lang b/public/langs/sr_RS/categories.lang similarity index 100% rename from htdocs/langs/sr_RS/categories.lang rename to public/langs/sr_RS/categories.lang diff --git a/htdocs/langs/sr_RS/commercial.lang b/public/langs/sr_RS/commercial.lang similarity index 100% rename from htdocs/langs/sr_RS/commercial.lang rename to public/langs/sr_RS/commercial.lang diff --git a/htdocs/langs/sr_RS/companies.lang b/public/langs/sr_RS/companies.lang similarity index 100% rename from htdocs/langs/sr_RS/companies.lang rename to public/langs/sr_RS/companies.lang diff --git a/htdocs/langs/sr_RS/compta.lang b/public/langs/sr_RS/compta.lang similarity index 100% rename from htdocs/langs/sr_RS/compta.lang rename to public/langs/sr_RS/compta.lang diff --git a/htdocs/langs/sr_RS/contracts.lang b/public/langs/sr_RS/contracts.lang similarity index 100% rename from htdocs/langs/sr_RS/contracts.lang rename to public/langs/sr_RS/contracts.lang diff --git a/htdocs/langs/sr_RS/cron.lang b/public/langs/sr_RS/cron.lang similarity index 100% rename from htdocs/langs/sr_RS/cron.lang rename to public/langs/sr_RS/cron.lang diff --git a/htdocs/langs/sr_RS/deliveries.lang b/public/langs/sr_RS/deliveries.lang similarity index 100% rename from htdocs/langs/sr_RS/deliveries.lang rename to public/langs/sr_RS/deliveries.lang diff --git a/htdocs/langs/sr_RS/dict.lang b/public/langs/sr_RS/dict.lang similarity index 100% rename from htdocs/langs/sr_RS/dict.lang rename to public/langs/sr_RS/dict.lang diff --git a/htdocs/langs/sr_RS/donations.lang b/public/langs/sr_RS/donations.lang similarity index 100% rename from htdocs/langs/sr_RS/donations.lang rename to public/langs/sr_RS/donations.lang diff --git a/htdocs/langs/sr_RS/ecm.lang b/public/langs/sr_RS/ecm.lang similarity index 100% rename from htdocs/langs/sr_RS/ecm.lang rename to public/langs/sr_RS/ecm.lang diff --git a/htdocs/langs/sr_RS/errors.lang b/public/langs/sr_RS/errors.lang similarity index 100% rename from htdocs/langs/sr_RS/errors.lang rename to public/langs/sr_RS/errors.lang diff --git a/htdocs/langs/sr_RS/exports.lang b/public/langs/sr_RS/exports.lang similarity index 100% rename from htdocs/langs/sr_RS/exports.lang rename to public/langs/sr_RS/exports.lang diff --git a/htdocs/langs/sr_RS/externalsite.lang b/public/langs/sr_RS/externalsite.lang similarity index 100% rename from htdocs/langs/sr_RS/externalsite.lang rename to public/langs/sr_RS/externalsite.lang diff --git a/htdocs/langs/sr_RS/ftp.lang b/public/langs/sr_RS/ftp.lang similarity index 100% rename from htdocs/langs/sr_RS/ftp.lang rename to public/langs/sr_RS/ftp.lang diff --git a/htdocs/langs/sr_RS/help.lang b/public/langs/sr_RS/help.lang similarity index 100% rename from htdocs/langs/sr_RS/help.lang rename to public/langs/sr_RS/help.lang diff --git a/htdocs/langs/sr_RS/holiday.lang b/public/langs/sr_RS/holiday.lang similarity index 100% rename from htdocs/langs/sr_RS/holiday.lang rename to public/langs/sr_RS/holiday.lang diff --git a/htdocs/langs/sr_RS/incoterm.lang b/public/langs/sr_RS/incoterm.lang similarity index 100% rename from htdocs/langs/sr_RS/incoterm.lang rename to public/langs/sr_RS/incoterm.lang diff --git a/htdocs/langs/sr_RS/install.lang b/public/langs/sr_RS/install.lang similarity index 100% rename from htdocs/langs/sr_RS/install.lang rename to public/langs/sr_RS/install.lang diff --git a/htdocs/langs/sr_RS/interventions.lang b/public/langs/sr_RS/interventions.lang similarity index 100% rename from htdocs/langs/sr_RS/interventions.lang rename to public/langs/sr_RS/interventions.lang diff --git a/htdocs/langs/sr_RS/languages.lang b/public/langs/sr_RS/languages.lang similarity index 100% rename from htdocs/langs/sr_RS/languages.lang rename to public/langs/sr_RS/languages.lang diff --git a/htdocs/langs/sr_RS/ldap.lang b/public/langs/sr_RS/ldap.lang similarity index 100% rename from htdocs/langs/sr_RS/ldap.lang rename to public/langs/sr_RS/ldap.lang diff --git a/htdocs/langs/sr_RS/link.lang b/public/langs/sr_RS/link.lang similarity index 100% rename from htdocs/langs/sr_RS/link.lang rename to public/langs/sr_RS/link.lang diff --git a/htdocs/langs/sr_RS/loan.lang b/public/langs/sr_RS/loan.lang similarity index 100% rename from htdocs/langs/sr_RS/loan.lang rename to public/langs/sr_RS/loan.lang diff --git a/htdocs/langs/sr_RS/mailmanspip.lang b/public/langs/sr_RS/mailmanspip.lang similarity index 100% rename from htdocs/langs/sr_RS/mailmanspip.lang rename to public/langs/sr_RS/mailmanspip.lang diff --git a/htdocs/langs/sr_RS/mails.lang b/public/langs/sr_RS/mails.lang similarity index 100% rename from htdocs/langs/sr_RS/mails.lang rename to public/langs/sr_RS/mails.lang diff --git a/htdocs/langs/sr_RS/main.lang b/public/langs/sr_RS/main.lang similarity index 100% rename from htdocs/langs/sr_RS/main.lang rename to public/langs/sr_RS/main.lang diff --git a/htdocs/langs/sr_RS/margins.lang b/public/langs/sr_RS/margins.lang similarity index 100% rename from htdocs/langs/sr_RS/margins.lang rename to public/langs/sr_RS/margins.lang diff --git a/htdocs/langs/sr_RS/members.lang b/public/langs/sr_RS/members.lang similarity index 100% rename from htdocs/langs/sr_RS/members.lang rename to public/langs/sr_RS/members.lang diff --git a/htdocs/langs/sr_RS/opensurvey.lang b/public/langs/sr_RS/opensurvey.lang similarity index 100% rename from htdocs/langs/sr_RS/opensurvey.lang rename to public/langs/sr_RS/opensurvey.lang diff --git a/htdocs/langs/sr_RS/orders.lang b/public/langs/sr_RS/orders.lang similarity index 100% rename from htdocs/langs/sr_RS/orders.lang rename to public/langs/sr_RS/orders.lang diff --git a/htdocs/langs/sr_RS/other.lang b/public/langs/sr_RS/other.lang similarity index 100% rename from htdocs/langs/sr_RS/other.lang rename to public/langs/sr_RS/other.lang diff --git a/htdocs/langs/sr_RS/paybox.lang b/public/langs/sr_RS/paybox.lang similarity index 100% rename from htdocs/langs/sr_RS/paybox.lang rename to public/langs/sr_RS/paybox.lang diff --git a/htdocs/langs/sr_RS/paypal.lang b/public/langs/sr_RS/paypal.lang similarity index 100% rename from htdocs/langs/sr_RS/paypal.lang rename to public/langs/sr_RS/paypal.lang diff --git a/htdocs/langs/sr_RS/printing.lang b/public/langs/sr_RS/printing.lang similarity index 100% rename from htdocs/langs/sr_RS/printing.lang rename to public/langs/sr_RS/printing.lang diff --git a/htdocs/langs/sr_RS/productbatch.lang b/public/langs/sr_RS/productbatch.lang similarity index 100% rename from htdocs/langs/sr_RS/productbatch.lang rename to public/langs/sr_RS/productbatch.lang diff --git a/htdocs/langs/sr_RS/products.lang b/public/langs/sr_RS/products.lang similarity index 100% rename from htdocs/langs/sr_RS/products.lang rename to public/langs/sr_RS/products.lang diff --git a/htdocs/langs/sr_RS/projects.lang b/public/langs/sr_RS/projects.lang similarity index 100% rename from htdocs/langs/sr_RS/projects.lang rename to public/langs/sr_RS/projects.lang diff --git a/htdocs/langs/sr_RS/propal.lang b/public/langs/sr_RS/propal.lang similarity index 100% rename from htdocs/langs/sr_RS/propal.lang rename to public/langs/sr_RS/propal.lang diff --git a/htdocs/langs/sr_RS/resource.lang b/public/langs/sr_RS/resource.lang similarity index 100% rename from htdocs/langs/sr_RS/resource.lang rename to public/langs/sr_RS/resource.lang diff --git a/htdocs/langs/sr_RS/salaries.lang b/public/langs/sr_RS/salaries.lang similarity index 100% rename from htdocs/langs/sr_RS/salaries.lang rename to public/langs/sr_RS/salaries.lang diff --git a/htdocs/langs/sr_RS/sendings.lang b/public/langs/sr_RS/sendings.lang similarity index 100% rename from htdocs/langs/sr_RS/sendings.lang rename to public/langs/sr_RS/sendings.lang diff --git a/htdocs/langs/sr_RS/sms.lang b/public/langs/sr_RS/sms.lang similarity index 100% rename from htdocs/langs/sr_RS/sms.lang rename to public/langs/sr_RS/sms.lang diff --git a/htdocs/langs/sr_RS/stocks.lang b/public/langs/sr_RS/stocks.lang similarity index 100% rename from htdocs/langs/sr_RS/stocks.lang rename to public/langs/sr_RS/stocks.lang diff --git a/htdocs/langs/sr_RS/suppliers.lang b/public/langs/sr_RS/suppliers.lang similarity index 100% rename from htdocs/langs/sr_RS/suppliers.lang rename to public/langs/sr_RS/suppliers.lang diff --git a/htdocs/langs/sr_RS/trips.lang b/public/langs/sr_RS/trips.lang similarity index 100% rename from htdocs/langs/sr_RS/trips.lang rename to public/langs/sr_RS/trips.lang diff --git a/htdocs/langs/sr_RS/users.lang b/public/langs/sr_RS/users.lang similarity index 100% rename from htdocs/langs/sr_RS/users.lang rename to public/langs/sr_RS/users.lang diff --git a/htdocs/langs/sr_RS/withdrawals.lang b/public/langs/sr_RS/withdrawals.lang similarity index 100% rename from htdocs/langs/sr_RS/withdrawals.lang rename to public/langs/sr_RS/withdrawals.lang diff --git a/htdocs/langs/sr_RS/workflow.lang b/public/langs/sr_RS/workflow.lang similarity index 100% rename from htdocs/langs/sr_RS/workflow.lang rename to public/langs/sr_RS/workflow.lang diff --git a/htdocs/langs/sv_SE/accountancy.lang b/public/langs/sv_SE/accountancy.lang similarity index 100% rename from htdocs/langs/sv_SE/accountancy.lang rename to public/langs/sv_SE/accountancy.lang diff --git a/htdocs/langs/sv_SE/admin.lang b/public/langs/sv_SE/admin.lang similarity index 100% rename from htdocs/langs/sv_SE/admin.lang rename to public/langs/sv_SE/admin.lang diff --git a/htdocs/langs/sv_SE/agenda.lang b/public/langs/sv_SE/agenda.lang similarity index 100% rename from htdocs/langs/sv_SE/agenda.lang rename to public/langs/sv_SE/agenda.lang diff --git a/htdocs/langs/sv_SE/banks.lang b/public/langs/sv_SE/banks.lang similarity index 100% rename from htdocs/langs/sv_SE/banks.lang rename to public/langs/sv_SE/banks.lang diff --git a/htdocs/langs/sv_SE/bills.lang b/public/langs/sv_SE/bills.lang similarity index 100% rename from htdocs/langs/sv_SE/bills.lang rename to public/langs/sv_SE/bills.lang diff --git a/htdocs/langs/sv_SE/bookmarks.lang b/public/langs/sv_SE/bookmarks.lang similarity index 100% rename from htdocs/langs/sv_SE/bookmarks.lang rename to public/langs/sv_SE/bookmarks.lang diff --git a/htdocs/langs/sv_SE/boxes.lang b/public/langs/sv_SE/boxes.lang similarity index 100% rename from htdocs/langs/sv_SE/boxes.lang rename to public/langs/sv_SE/boxes.lang diff --git a/htdocs/langs/sv_SE/cashdesk.lang b/public/langs/sv_SE/cashdesk.lang similarity index 100% rename from htdocs/langs/sv_SE/cashdesk.lang rename to public/langs/sv_SE/cashdesk.lang diff --git a/htdocs/langs/sv_SE/categories.lang b/public/langs/sv_SE/categories.lang similarity index 100% rename from htdocs/langs/sv_SE/categories.lang rename to public/langs/sv_SE/categories.lang diff --git a/htdocs/langs/sv_SE/commercial.lang b/public/langs/sv_SE/commercial.lang similarity index 100% rename from htdocs/langs/sv_SE/commercial.lang rename to public/langs/sv_SE/commercial.lang diff --git a/htdocs/langs/sv_SE/companies.lang b/public/langs/sv_SE/companies.lang similarity index 100% rename from htdocs/langs/sv_SE/companies.lang rename to public/langs/sv_SE/companies.lang diff --git a/htdocs/langs/sv_SE/compta.lang b/public/langs/sv_SE/compta.lang similarity index 100% rename from htdocs/langs/sv_SE/compta.lang rename to public/langs/sv_SE/compta.lang diff --git a/htdocs/langs/sv_SE/contracts.lang b/public/langs/sv_SE/contracts.lang similarity index 100% rename from htdocs/langs/sv_SE/contracts.lang rename to public/langs/sv_SE/contracts.lang diff --git a/htdocs/langs/sv_SE/cron.lang b/public/langs/sv_SE/cron.lang similarity index 100% rename from htdocs/langs/sv_SE/cron.lang rename to public/langs/sv_SE/cron.lang diff --git a/htdocs/langs/sv_SE/deliveries.lang b/public/langs/sv_SE/deliveries.lang similarity index 100% rename from htdocs/langs/sv_SE/deliveries.lang rename to public/langs/sv_SE/deliveries.lang diff --git a/htdocs/langs/sv_SE/dict.lang b/public/langs/sv_SE/dict.lang similarity index 100% rename from htdocs/langs/sv_SE/dict.lang rename to public/langs/sv_SE/dict.lang diff --git a/htdocs/langs/sv_SE/donations.lang b/public/langs/sv_SE/donations.lang similarity index 100% rename from htdocs/langs/sv_SE/donations.lang rename to public/langs/sv_SE/donations.lang diff --git a/htdocs/langs/sv_SE/ecm.lang b/public/langs/sv_SE/ecm.lang similarity index 100% rename from htdocs/langs/sv_SE/ecm.lang rename to public/langs/sv_SE/ecm.lang diff --git a/htdocs/langs/sv_SE/errors.lang b/public/langs/sv_SE/errors.lang similarity index 100% rename from htdocs/langs/sv_SE/errors.lang rename to public/langs/sv_SE/errors.lang diff --git a/htdocs/langs/sv_SE/exports.lang b/public/langs/sv_SE/exports.lang similarity index 100% rename from htdocs/langs/sv_SE/exports.lang rename to public/langs/sv_SE/exports.lang diff --git a/htdocs/langs/sv_SE/externalsite.lang b/public/langs/sv_SE/externalsite.lang similarity index 100% rename from htdocs/langs/sv_SE/externalsite.lang rename to public/langs/sv_SE/externalsite.lang diff --git a/htdocs/langs/sv_SE/ftp.lang b/public/langs/sv_SE/ftp.lang similarity index 100% rename from htdocs/langs/sv_SE/ftp.lang rename to public/langs/sv_SE/ftp.lang diff --git a/htdocs/langs/sv_SE/help.lang b/public/langs/sv_SE/help.lang similarity index 100% rename from htdocs/langs/sv_SE/help.lang rename to public/langs/sv_SE/help.lang diff --git a/htdocs/langs/sv_SE/holiday.lang b/public/langs/sv_SE/holiday.lang similarity index 100% rename from htdocs/langs/sv_SE/holiday.lang rename to public/langs/sv_SE/holiday.lang diff --git a/htdocs/langs/sv_SE/hrm.lang b/public/langs/sv_SE/hrm.lang similarity index 100% rename from htdocs/langs/sv_SE/hrm.lang rename to public/langs/sv_SE/hrm.lang diff --git a/htdocs/langs/sv_SE/incoterm.lang b/public/langs/sv_SE/incoterm.lang similarity index 100% rename from htdocs/langs/sv_SE/incoterm.lang rename to public/langs/sv_SE/incoterm.lang diff --git a/htdocs/langs/sv_SE/install.lang b/public/langs/sv_SE/install.lang similarity index 100% rename from htdocs/langs/sv_SE/install.lang rename to public/langs/sv_SE/install.lang diff --git a/htdocs/langs/sv_SE/interventions.lang b/public/langs/sv_SE/interventions.lang similarity index 100% rename from htdocs/langs/sv_SE/interventions.lang rename to public/langs/sv_SE/interventions.lang diff --git a/htdocs/langs/sv_SE/languages.lang b/public/langs/sv_SE/languages.lang similarity index 100% rename from htdocs/langs/sv_SE/languages.lang rename to public/langs/sv_SE/languages.lang diff --git a/htdocs/langs/sv_SE/ldap.lang b/public/langs/sv_SE/ldap.lang similarity index 100% rename from htdocs/langs/sv_SE/ldap.lang rename to public/langs/sv_SE/ldap.lang diff --git a/htdocs/langs/sv_SE/link.lang b/public/langs/sv_SE/link.lang similarity index 100% rename from htdocs/langs/sv_SE/link.lang rename to public/langs/sv_SE/link.lang diff --git a/htdocs/langs/sv_SE/loan.lang b/public/langs/sv_SE/loan.lang similarity index 100% rename from htdocs/langs/sv_SE/loan.lang rename to public/langs/sv_SE/loan.lang diff --git a/htdocs/langs/sv_SE/mailmanspip.lang b/public/langs/sv_SE/mailmanspip.lang similarity index 100% rename from htdocs/langs/sv_SE/mailmanspip.lang rename to public/langs/sv_SE/mailmanspip.lang diff --git a/htdocs/langs/sv_SE/mails.lang b/public/langs/sv_SE/mails.lang similarity index 100% rename from htdocs/langs/sv_SE/mails.lang rename to public/langs/sv_SE/mails.lang diff --git a/htdocs/langs/sv_SE/main.lang b/public/langs/sv_SE/main.lang similarity index 100% rename from htdocs/langs/sv_SE/main.lang rename to public/langs/sv_SE/main.lang diff --git a/htdocs/langs/sv_SE/margins.lang b/public/langs/sv_SE/margins.lang similarity index 100% rename from htdocs/langs/sv_SE/margins.lang rename to public/langs/sv_SE/margins.lang diff --git a/htdocs/langs/sv_SE/members.lang b/public/langs/sv_SE/members.lang similarity index 100% rename from htdocs/langs/sv_SE/members.lang rename to public/langs/sv_SE/members.lang diff --git a/htdocs/langs/sv_SE/oauth.lang b/public/langs/sv_SE/oauth.lang similarity index 100% rename from htdocs/langs/sv_SE/oauth.lang rename to public/langs/sv_SE/oauth.lang diff --git a/htdocs/langs/sv_SE/opensurvey.lang b/public/langs/sv_SE/opensurvey.lang similarity index 100% rename from htdocs/langs/sv_SE/opensurvey.lang rename to public/langs/sv_SE/opensurvey.lang diff --git a/htdocs/langs/sv_SE/orders.lang b/public/langs/sv_SE/orders.lang similarity index 100% rename from htdocs/langs/sv_SE/orders.lang rename to public/langs/sv_SE/orders.lang diff --git a/htdocs/langs/sv_SE/other.lang b/public/langs/sv_SE/other.lang similarity index 100% rename from htdocs/langs/sv_SE/other.lang rename to public/langs/sv_SE/other.lang diff --git a/htdocs/langs/sv_SE/paybox.lang b/public/langs/sv_SE/paybox.lang similarity index 100% rename from htdocs/langs/sv_SE/paybox.lang rename to public/langs/sv_SE/paybox.lang diff --git a/htdocs/langs/sv_SE/paypal.lang b/public/langs/sv_SE/paypal.lang similarity index 100% rename from htdocs/langs/sv_SE/paypal.lang rename to public/langs/sv_SE/paypal.lang diff --git a/htdocs/langs/sv_SE/printing.lang b/public/langs/sv_SE/printing.lang similarity index 100% rename from htdocs/langs/sv_SE/printing.lang rename to public/langs/sv_SE/printing.lang diff --git a/htdocs/langs/sv_SE/productbatch.lang b/public/langs/sv_SE/productbatch.lang similarity index 100% rename from htdocs/langs/sv_SE/productbatch.lang rename to public/langs/sv_SE/productbatch.lang diff --git a/htdocs/langs/sv_SE/products.lang b/public/langs/sv_SE/products.lang similarity index 100% rename from htdocs/langs/sv_SE/products.lang rename to public/langs/sv_SE/products.lang diff --git a/htdocs/langs/sv_SE/projects.lang b/public/langs/sv_SE/projects.lang similarity index 100% rename from htdocs/langs/sv_SE/projects.lang rename to public/langs/sv_SE/projects.lang diff --git a/htdocs/langs/sv_SE/propal.lang b/public/langs/sv_SE/propal.lang similarity index 100% rename from htdocs/langs/sv_SE/propal.lang rename to public/langs/sv_SE/propal.lang diff --git a/htdocs/langs/sv_SE/receiptprinter.lang b/public/langs/sv_SE/receiptprinter.lang similarity index 100% rename from htdocs/langs/sv_SE/receiptprinter.lang rename to public/langs/sv_SE/receiptprinter.lang diff --git a/htdocs/langs/sv_SE/resource.lang b/public/langs/sv_SE/resource.lang similarity index 100% rename from htdocs/langs/sv_SE/resource.lang rename to public/langs/sv_SE/resource.lang diff --git a/htdocs/langs/sv_SE/salaries.lang b/public/langs/sv_SE/salaries.lang similarity index 100% rename from htdocs/langs/sv_SE/salaries.lang rename to public/langs/sv_SE/salaries.lang diff --git a/htdocs/langs/sv_SE/sendings.lang b/public/langs/sv_SE/sendings.lang similarity index 100% rename from htdocs/langs/sv_SE/sendings.lang rename to public/langs/sv_SE/sendings.lang diff --git a/htdocs/langs/sv_SE/sms.lang b/public/langs/sv_SE/sms.lang similarity index 100% rename from htdocs/langs/sv_SE/sms.lang rename to public/langs/sv_SE/sms.lang diff --git a/htdocs/langs/sv_SE/stocks.lang b/public/langs/sv_SE/stocks.lang similarity index 100% rename from htdocs/langs/sv_SE/stocks.lang rename to public/langs/sv_SE/stocks.lang diff --git a/htdocs/langs/sv_SE/supplier_proposal.lang b/public/langs/sv_SE/supplier_proposal.lang similarity index 100% rename from htdocs/langs/sv_SE/supplier_proposal.lang rename to public/langs/sv_SE/supplier_proposal.lang diff --git a/htdocs/langs/sv_SE/suppliers.lang b/public/langs/sv_SE/suppliers.lang similarity index 100% rename from htdocs/langs/sv_SE/suppliers.lang rename to public/langs/sv_SE/suppliers.lang diff --git a/htdocs/langs/sv_SE/trips.lang b/public/langs/sv_SE/trips.lang similarity index 100% rename from htdocs/langs/sv_SE/trips.lang rename to public/langs/sv_SE/trips.lang diff --git a/htdocs/langs/sv_SE/users.lang b/public/langs/sv_SE/users.lang similarity index 100% rename from htdocs/langs/sv_SE/users.lang rename to public/langs/sv_SE/users.lang diff --git a/htdocs/langs/sv_SE/website.lang b/public/langs/sv_SE/website.lang similarity index 100% rename from htdocs/langs/sv_SE/website.lang rename to public/langs/sv_SE/website.lang diff --git a/htdocs/langs/sv_SE/withdrawals.lang b/public/langs/sv_SE/withdrawals.lang similarity index 100% rename from htdocs/langs/sv_SE/withdrawals.lang rename to public/langs/sv_SE/withdrawals.lang diff --git a/htdocs/langs/sv_SE/workflow.lang b/public/langs/sv_SE/workflow.lang similarity index 100% rename from htdocs/langs/sv_SE/workflow.lang rename to public/langs/sv_SE/workflow.lang diff --git a/htdocs/langs/sw_SW/accountancy.lang b/public/langs/sw_SW/accountancy.lang similarity index 100% rename from htdocs/langs/sw_SW/accountancy.lang rename to public/langs/sw_SW/accountancy.lang diff --git a/htdocs/langs/sw_SW/admin.lang b/public/langs/sw_SW/admin.lang similarity index 100% rename from htdocs/langs/sw_SW/admin.lang rename to public/langs/sw_SW/admin.lang diff --git a/htdocs/langs/sw_SW/agenda.lang b/public/langs/sw_SW/agenda.lang similarity index 100% rename from htdocs/langs/sw_SW/agenda.lang rename to public/langs/sw_SW/agenda.lang diff --git a/htdocs/langs/sw_SW/banks.lang b/public/langs/sw_SW/banks.lang similarity index 100% rename from htdocs/langs/sw_SW/banks.lang rename to public/langs/sw_SW/banks.lang diff --git a/htdocs/langs/sw_SW/bills.lang b/public/langs/sw_SW/bills.lang similarity index 100% rename from htdocs/langs/sw_SW/bills.lang rename to public/langs/sw_SW/bills.lang diff --git a/htdocs/langs/sw_SW/bookmarks.lang b/public/langs/sw_SW/bookmarks.lang similarity index 100% rename from htdocs/langs/sw_SW/bookmarks.lang rename to public/langs/sw_SW/bookmarks.lang diff --git a/htdocs/langs/sw_SW/boxes.lang b/public/langs/sw_SW/boxes.lang similarity index 100% rename from htdocs/langs/sw_SW/boxes.lang rename to public/langs/sw_SW/boxes.lang diff --git a/htdocs/langs/sw_SW/cashdesk.lang b/public/langs/sw_SW/cashdesk.lang similarity index 100% rename from htdocs/langs/sw_SW/cashdesk.lang rename to public/langs/sw_SW/cashdesk.lang diff --git a/htdocs/langs/sw_SW/categories.lang b/public/langs/sw_SW/categories.lang similarity index 100% rename from htdocs/langs/sw_SW/categories.lang rename to public/langs/sw_SW/categories.lang diff --git a/htdocs/langs/sw_SW/commercial.lang b/public/langs/sw_SW/commercial.lang similarity index 100% rename from htdocs/langs/sw_SW/commercial.lang rename to public/langs/sw_SW/commercial.lang diff --git a/htdocs/langs/sw_SW/companies.lang b/public/langs/sw_SW/companies.lang similarity index 100% rename from htdocs/langs/sw_SW/companies.lang rename to public/langs/sw_SW/companies.lang diff --git a/htdocs/langs/sw_SW/compta.lang b/public/langs/sw_SW/compta.lang similarity index 100% rename from htdocs/langs/sw_SW/compta.lang rename to public/langs/sw_SW/compta.lang diff --git a/htdocs/langs/sw_SW/contracts.lang b/public/langs/sw_SW/contracts.lang similarity index 100% rename from htdocs/langs/sw_SW/contracts.lang rename to public/langs/sw_SW/contracts.lang diff --git a/htdocs/langs/sw_SW/cron.lang b/public/langs/sw_SW/cron.lang similarity index 100% rename from htdocs/langs/sw_SW/cron.lang rename to public/langs/sw_SW/cron.lang diff --git a/htdocs/langs/sw_SW/deliveries.lang b/public/langs/sw_SW/deliveries.lang similarity index 100% rename from htdocs/langs/sw_SW/deliveries.lang rename to public/langs/sw_SW/deliveries.lang diff --git a/htdocs/langs/sw_SW/dict.lang b/public/langs/sw_SW/dict.lang similarity index 100% rename from htdocs/langs/sw_SW/dict.lang rename to public/langs/sw_SW/dict.lang diff --git a/htdocs/langs/sw_SW/donations.lang b/public/langs/sw_SW/donations.lang similarity index 100% rename from htdocs/langs/sw_SW/donations.lang rename to public/langs/sw_SW/donations.lang diff --git a/htdocs/langs/sw_SW/ecm.lang b/public/langs/sw_SW/ecm.lang similarity index 100% rename from htdocs/langs/sw_SW/ecm.lang rename to public/langs/sw_SW/ecm.lang diff --git a/htdocs/langs/sw_SW/errors.lang b/public/langs/sw_SW/errors.lang similarity index 100% rename from htdocs/langs/sw_SW/errors.lang rename to public/langs/sw_SW/errors.lang diff --git a/htdocs/langs/sw_SW/exports.lang b/public/langs/sw_SW/exports.lang similarity index 100% rename from htdocs/langs/sw_SW/exports.lang rename to public/langs/sw_SW/exports.lang diff --git a/htdocs/langs/sw_SW/externalsite.lang b/public/langs/sw_SW/externalsite.lang similarity index 100% rename from htdocs/langs/sw_SW/externalsite.lang rename to public/langs/sw_SW/externalsite.lang diff --git a/htdocs/langs/sw_SW/ftp.lang b/public/langs/sw_SW/ftp.lang similarity index 100% rename from htdocs/langs/sw_SW/ftp.lang rename to public/langs/sw_SW/ftp.lang diff --git a/htdocs/langs/sw_SW/help.lang b/public/langs/sw_SW/help.lang similarity index 100% rename from htdocs/langs/sw_SW/help.lang rename to public/langs/sw_SW/help.lang diff --git a/htdocs/langs/sw_SW/holiday.lang b/public/langs/sw_SW/holiday.lang similarity index 100% rename from htdocs/langs/sw_SW/holiday.lang rename to public/langs/sw_SW/holiday.lang diff --git a/htdocs/langs/sw_SW/incoterm.lang b/public/langs/sw_SW/incoterm.lang similarity index 100% rename from htdocs/langs/sw_SW/incoterm.lang rename to public/langs/sw_SW/incoterm.lang diff --git a/htdocs/langs/sw_SW/install.lang b/public/langs/sw_SW/install.lang similarity index 100% rename from htdocs/langs/sw_SW/install.lang rename to public/langs/sw_SW/install.lang diff --git a/htdocs/langs/sw_SW/interventions.lang b/public/langs/sw_SW/interventions.lang similarity index 100% rename from htdocs/langs/sw_SW/interventions.lang rename to public/langs/sw_SW/interventions.lang diff --git a/htdocs/langs/sw_SW/languages.lang b/public/langs/sw_SW/languages.lang similarity index 100% rename from htdocs/langs/sw_SW/languages.lang rename to public/langs/sw_SW/languages.lang diff --git a/htdocs/langs/sw_SW/ldap.lang b/public/langs/sw_SW/ldap.lang similarity index 100% rename from htdocs/langs/sw_SW/ldap.lang rename to public/langs/sw_SW/ldap.lang diff --git a/htdocs/langs/sw_SW/link.lang b/public/langs/sw_SW/link.lang similarity index 100% rename from htdocs/langs/sw_SW/link.lang rename to public/langs/sw_SW/link.lang diff --git a/htdocs/langs/sw_SW/loan.lang b/public/langs/sw_SW/loan.lang similarity index 100% rename from htdocs/langs/sw_SW/loan.lang rename to public/langs/sw_SW/loan.lang diff --git a/htdocs/langs/sw_SW/mailmanspip.lang b/public/langs/sw_SW/mailmanspip.lang similarity index 100% rename from htdocs/langs/sw_SW/mailmanspip.lang rename to public/langs/sw_SW/mailmanspip.lang diff --git a/htdocs/langs/sw_SW/mails.lang b/public/langs/sw_SW/mails.lang similarity index 100% rename from htdocs/langs/sw_SW/mails.lang rename to public/langs/sw_SW/mails.lang diff --git a/htdocs/langs/sw_SW/main.lang b/public/langs/sw_SW/main.lang similarity index 100% rename from htdocs/langs/sw_SW/main.lang rename to public/langs/sw_SW/main.lang diff --git a/htdocs/langs/sw_SW/margins.lang b/public/langs/sw_SW/margins.lang similarity index 100% rename from htdocs/langs/sw_SW/margins.lang rename to public/langs/sw_SW/margins.lang diff --git a/htdocs/langs/sw_SW/members.lang b/public/langs/sw_SW/members.lang similarity index 100% rename from htdocs/langs/sw_SW/members.lang rename to public/langs/sw_SW/members.lang diff --git a/htdocs/langs/sw_SW/opensurvey.lang b/public/langs/sw_SW/opensurvey.lang similarity index 100% rename from htdocs/langs/sw_SW/opensurvey.lang rename to public/langs/sw_SW/opensurvey.lang diff --git a/htdocs/langs/sw_SW/orders.lang b/public/langs/sw_SW/orders.lang similarity index 100% rename from htdocs/langs/sw_SW/orders.lang rename to public/langs/sw_SW/orders.lang diff --git a/htdocs/langs/sw_SW/other.lang b/public/langs/sw_SW/other.lang similarity index 100% rename from htdocs/langs/sw_SW/other.lang rename to public/langs/sw_SW/other.lang diff --git a/htdocs/langs/sw_SW/paybox.lang b/public/langs/sw_SW/paybox.lang similarity index 100% rename from htdocs/langs/sw_SW/paybox.lang rename to public/langs/sw_SW/paybox.lang diff --git a/htdocs/langs/sw_SW/paypal.lang b/public/langs/sw_SW/paypal.lang similarity index 100% rename from htdocs/langs/sw_SW/paypal.lang rename to public/langs/sw_SW/paypal.lang diff --git a/htdocs/langs/sw_SW/printing.lang b/public/langs/sw_SW/printing.lang similarity index 100% rename from htdocs/langs/sw_SW/printing.lang rename to public/langs/sw_SW/printing.lang diff --git a/htdocs/langs/sw_SW/productbatch.lang b/public/langs/sw_SW/productbatch.lang similarity index 100% rename from htdocs/langs/sw_SW/productbatch.lang rename to public/langs/sw_SW/productbatch.lang diff --git a/htdocs/langs/sw_SW/products.lang b/public/langs/sw_SW/products.lang similarity index 100% rename from htdocs/langs/sw_SW/products.lang rename to public/langs/sw_SW/products.lang diff --git a/htdocs/langs/sw_SW/projects.lang b/public/langs/sw_SW/projects.lang similarity index 100% rename from htdocs/langs/sw_SW/projects.lang rename to public/langs/sw_SW/projects.lang diff --git a/htdocs/langs/sw_SW/propal.lang b/public/langs/sw_SW/propal.lang similarity index 100% rename from htdocs/langs/sw_SW/propal.lang rename to public/langs/sw_SW/propal.lang diff --git a/htdocs/langs/sw_SW/resource.lang b/public/langs/sw_SW/resource.lang similarity index 100% rename from htdocs/langs/sw_SW/resource.lang rename to public/langs/sw_SW/resource.lang diff --git a/htdocs/langs/sw_SW/salaries.lang b/public/langs/sw_SW/salaries.lang similarity index 100% rename from htdocs/langs/sw_SW/salaries.lang rename to public/langs/sw_SW/salaries.lang diff --git a/htdocs/langs/sw_SW/sendings.lang b/public/langs/sw_SW/sendings.lang similarity index 100% rename from htdocs/langs/sw_SW/sendings.lang rename to public/langs/sw_SW/sendings.lang diff --git a/htdocs/langs/sw_SW/sms.lang b/public/langs/sw_SW/sms.lang similarity index 100% rename from htdocs/langs/sw_SW/sms.lang rename to public/langs/sw_SW/sms.lang diff --git a/htdocs/langs/sw_SW/stocks.lang b/public/langs/sw_SW/stocks.lang similarity index 100% rename from htdocs/langs/sw_SW/stocks.lang rename to public/langs/sw_SW/stocks.lang diff --git a/htdocs/langs/sw_SW/suppliers.lang b/public/langs/sw_SW/suppliers.lang similarity index 100% rename from htdocs/langs/sw_SW/suppliers.lang rename to public/langs/sw_SW/suppliers.lang diff --git a/htdocs/langs/sw_SW/trips.lang b/public/langs/sw_SW/trips.lang similarity index 100% rename from htdocs/langs/sw_SW/trips.lang rename to public/langs/sw_SW/trips.lang diff --git a/htdocs/langs/sw_SW/users.lang b/public/langs/sw_SW/users.lang similarity index 100% rename from htdocs/langs/sw_SW/users.lang rename to public/langs/sw_SW/users.lang diff --git a/htdocs/langs/sw_SW/withdrawals.lang b/public/langs/sw_SW/withdrawals.lang similarity index 100% rename from htdocs/langs/sw_SW/withdrawals.lang rename to public/langs/sw_SW/withdrawals.lang diff --git a/htdocs/langs/sw_SW/workflow.lang b/public/langs/sw_SW/workflow.lang similarity index 100% rename from htdocs/langs/sw_SW/workflow.lang rename to public/langs/sw_SW/workflow.lang diff --git a/htdocs/langs/th_TH/accountancy.lang b/public/langs/th_TH/accountancy.lang similarity index 100% rename from htdocs/langs/th_TH/accountancy.lang rename to public/langs/th_TH/accountancy.lang diff --git a/htdocs/langs/th_TH/admin.lang b/public/langs/th_TH/admin.lang similarity index 100% rename from htdocs/langs/th_TH/admin.lang rename to public/langs/th_TH/admin.lang diff --git a/htdocs/langs/th_TH/agenda.lang b/public/langs/th_TH/agenda.lang similarity index 100% rename from htdocs/langs/th_TH/agenda.lang rename to public/langs/th_TH/agenda.lang diff --git a/htdocs/langs/th_TH/banks.lang b/public/langs/th_TH/banks.lang similarity index 100% rename from htdocs/langs/th_TH/banks.lang rename to public/langs/th_TH/banks.lang diff --git a/htdocs/langs/th_TH/bills.lang b/public/langs/th_TH/bills.lang similarity index 100% rename from htdocs/langs/th_TH/bills.lang rename to public/langs/th_TH/bills.lang diff --git a/htdocs/langs/th_TH/bookmarks.lang b/public/langs/th_TH/bookmarks.lang similarity index 100% rename from htdocs/langs/th_TH/bookmarks.lang rename to public/langs/th_TH/bookmarks.lang diff --git a/htdocs/langs/th_TH/boxes.lang b/public/langs/th_TH/boxes.lang similarity index 100% rename from htdocs/langs/th_TH/boxes.lang rename to public/langs/th_TH/boxes.lang diff --git a/htdocs/langs/th_TH/cashdesk.lang b/public/langs/th_TH/cashdesk.lang similarity index 100% rename from htdocs/langs/th_TH/cashdesk.lang rename to public/langs/th_TH/cashdesk.lang diff --git a/htdocs/langs/th_TH/categories.lang b/public/langs/th_TH/categories.lang similarity index 100% rename from htdocs/langs/th_TH/categories.lang rename to public/langs/th_TH/categories.lang diff --git a/htdocs/langs/th_TH/commercial.lang b/public/langs/th_TH/commercial.lang similarity index 100% rename from htdocs/langs/th_TH/commercial.lang rename to public/langs/th_TH/commercial.lang diff --git a/htdocs/langs/th_TH/companies.lang b/public/langs/th_TH/companies.lang similarity index 100% rename from htdocs/langs/th_TH/companies.lang rename to public/langs/th_TH/companies.lang diff --git a/htdocs/langs/th_TH/compta.lang b/public/langs/th_TH/compta.lang similarity index 100% rename from htdocs/langs/th_TH/compta.lang rename to public/langs/th_TH/compta.lang diff --git a/htdocs/langs/th_TH/contracts.lang b/public/langs/th_TH/contracts.lang similarity index 100% rename from htdocs/langs/th_TH/contracts.lang rename to public/langs/th_TH/contracts.lang diff --git a/htdocs/langs/th_TH/cron.lang b/public/langs/th_TH/cron.lang similarity index 100% rename from htdocs/langs/th_TH/cron.lang rename to public/langs/th_TH/cron.lang diff --git a/htdocs/langs/th_TH/deliveries.lang b/public/langs/th_TH/deliveries.lang similarity index 100% rename from htdocs/langs/th_TH/deliveries.lang rename to public/langs/th_TH/deliveries.lang diff --git a/htdocs/langs/th_TH/dict.lang b/public/langs/th_TH/dict.lang similarity index 100% rename from htdocs/langs/th_TH/dict.lang rename to public/langs/th_TH/dict.lang diff --git a/htdocs/langs/th_TH/donations.lang b/public/langs/th_TH/donations.lang similarity index 100% rename from htdocs/langs/th_TH/donations.lang rename to public/langs/th_TH/donations.lang diff --git a/htdocs/langs/th_TH/ecm.lang b/public/langs/th_TH/ecm.lang similarity index 100% rename from htdocs/langs/th_TH/ecm.lang rename to public/langs/th_TH/ecm.lang diff --git a/htdocs/langs/th_TH/errors.lang b/public/langs/th_TH/errors.lang similarity index 100% rename from htdocs/langs/th_TH/errors.lang rename to public/langs/th_TH/errors.lang diff --git a/htdocs/langs/th_TH/exports.lang b/public/langs/th_TH/exports.lang similarity index 100% rename from htdocs/langs/th_TH/exports.lang rename to public/langs/th_TH/exports.lang diff --git a/htdocs/langs/th_TH/externalsite.lang b/public/langs/th_TH/externalsite.lang similarity index 100% rename from htdocs/langs/th_TH/externalsite.lang rename to public/langs/th_TH/externalsite.lang diff --git a/htdocs/langs/th_TH/ftp.lang b/public/langs/th_TH/ftp.lang similarity index 100% rename from htdocs/langs/th_TH/ftp.lang rename to public/langs/th_TH/ftp.lang diff --git a/htdocs/langs/th_TH/help.lang b/public/langs/th_TH/help.lang similarity index 100% rename from htdocs/langs/th_TH/help.lang rename to public/langs/th_TH/help.lang diff --git a/htdocs/langs/th_TH/holiday.lang b/public/langs/th_TH/holiday.lang similarity index 100% rename from htdocs/langs/th_TH/holiday.lang rename to public/langs/th_TH/holiday.lang diff --git a/htdocs/langs/th_TH/hrm.lang b/public/langs/th_TH/hrm.lang similarity index 100% rename from htdocs/langs/th_TH/hrm.lang rename to public/langs/th_TH/hrm.lang diff --git a/htdocs/langs/th_TH/incoterm.lang b/public/langs/th_TH/incoterm.lang similarity index 100% rename from htdocs/langs/th_TH/incoterm.lang rename to public/langs/th_TH/incoterm.lang diff --git a/htdocs/langs/th_TH/install.lang b/public/langs/th_TH/install.lang similarity index 100% rename from htdocs/langs/th_TH/install.lang rename to public/langs/th_TH/install.lang diff --git a/htdocs/langs/th_TH/interventions.lang b/public/langs/th_TH/interventions.lang similarity index 100% rename from htdocs/langs/th_TH/interventions.lang rename to public/langs/th_TH/interventions.lang diff --git a/htdocs/langs/th_TH/languages.lang b/public/langs/th_TH/languages.lang similarity index 100% rename from htdocs/langs/th_TH/languages.lang rename to public/langs/th_TH/languages.lang diff --git a/htdocs/langs/th_TH/ldap.lang b/public/langs/th_TH/ldap.lang similarity index 100% rename from htdocs/langs/th_TH/ldap.lang rename to public/langs/th_TH/ldap.lang diff --git a/htdocs/langs/th_TH/link.lang b/public/langs/th_TH/link.lang similarity index 100% rename from htdocs/langs/th_TH/link.lang rename to public/langs/th_TH/link.lang diff --git a/htdocs/langs/th_TH/loan.lang b/public/langs/th_TH/loan.lang similarity index 100% rename from htdocs/langs/th_TH/loan.lang rename to public/langs/th_TH/loan.lang diff --git a/htdocs/langs/th_TH/mailmanspip.lang b/public/langs/th_TH/mailmanspip.lang similarity index 100% rename from htdocs/langs/th_TH/mailmanspip.lang rename to public/langs/th_TH/mailmanspip.lang diff --git a/htdocs/langs/th_TH/mails.lang b/public/langs/th_TH/mails.lang similarity index 100% rename from htdocs/langs/th_TH/mails.lang rename to public/langs/th_TH/mails.lang diff --git a/htdocs/langs/th_TH/main.lang b/public/langs/th_TH/main.lang similarity index 100% rename from htdocs/langs/th_TH/main.lang rename to public/langs/th_TH/main.lang diff --git a/htdocs/langs/th_TH/margins.lang b/public/langs/th_TH/margins.lang similarity index 100% rename from htdocs/langs/th_TH/margins.lang rename to public/langs/th_TH/margins.lang diff --git a/htdocs/langs/th_TH/members.lang b/public/langs/th_TH/members.lang similarity index 100% rename from htdocs/langs/th_TH/members.lang rename to public/langs/th_TH/members.lang diff --git a/htdocs/langs/th_TH/oauth.lang b/public/langs/th_TH/oauth.lang similarity index 100% rename from htdocs/langs/th_TH/oauth.lang rename to public/langs/th_TH/oauth.lang diff --git a/htdocs/langs/th_TH/opensurvey.lang b/public/langs/th_TH/opensurvey.lang similarity index 100% rename from htdocs/langs/th_TH/opensurvey.lang rename to public/langs/th_TH/opensurvey.lang diff --git a/htdocs/langs/th_TH/orders.lang b/public/langs/th_TH/orders.lang similarity index 100% rename from htdocs/langs/th_TH/orders.lang rename to public/langs/th_TH/orders.lang diff --git a/htdocs/langs/th_TH/other.lang b/public/langs/th_TH/other.lang similarity index 100% rename from htdocs/langs/th_TH/other.lang rename to public/langs/th_TH/other.lang diff --git a/htdocs/langs/th_TH/paybox.lang b/public/langs/th_TH/paybox.lang similarity index 100% rename from htdocs/langs/th_TH/paybox.lang rename to public/langs/th_TH/paybox.lang diff --git a/htdocs/langs/th_TH/paypal.lang b/public/langs/th_TH/paypal.lang similarity index 100% rename from htdocs/langs/th_TH/paypal.lang rename to public/langs/th_TH/paypal.lang diff --git a/htdocs/langs/th_TH/printing.lang b/public/langs/th_TH/printing.lang similarity index 100% rename from htdocs/langs/th_TH/printing.lang rename to public/langs/th_TH/printing.lang diff --git a/htdocs/langs/th_TH/productbatch.lang b/public/langs/th_TH/productbatch.lang similarity index 100% rename from htdocs/langs/th_TH/productbatch.lang rename to public/langs/th_TH/productbatch.lang diff --git a/htdocs/langs/th_TH/products.lang b/public/langs/th_TH/products.lang similarity index 100% rename from htdocs/langs/th_TH/products.lang rename to public/langs/th_TH/products.lang diff --git a/htdocs/langs/th_TH/projects.lang b/public/langs/th_TH/projects.lang similarity index 100% rename from htdocs/langs/th_TH/projects.lang rename to public/langs/th_TH/projects.lang diff --git a/htdocs/langs/th_TH/propal.lang b/public/langs/th_TH/propal.lang similarity index 100% rename from htdocs/langs/th_TH/propal.lang rename to public/langs/th_TH/propal.lang diff --git a/htdocs/langs/th_TH/receiptprinter.lang b/public/langs/th_TH/receiptprinter.lang similarity index 100% rename from htdocs/langs/th_TH/receiptprinter.lang rename to public/langs/th_TH/receiptprinter.lang diff --git a/htdocs/langs/th_TH/resource.lang b/public/langs/th_TH/resource.lang similarity index 100% rename from htdocs/langs/th_TH/resource.lang rename to public/langs/th_TH/resource.lang diff --git a/htdocs/langs/th_TH/salaries.lang b/public/langs/th_TH/salaries.lang similarity index 100% rename from htdocs/langs/th_TH/salaries.lang rename to public/langs/th_TH/salaries.lang diff --git a/htdocs/langs/th_TH/sendings.lang b/public/langs/th_TH/sendings.lang similarity index 100% rename from htdocs/langs/th_TH/sendings.lang rename to public/langs/th_TH/sendings.lang diff --git a/htdocs/langs/th_TH/sms.lang b/public/langs/th_TH/sms.lang similarity index 100% rename from htdocs/langs/th_TH/sms.lang rename to public/langs/th_TH/sms.lang diff --git a/htdocs/langs/th_TH/stocks.lang b/public/langs/th_TH/stocks.lang similarity index 100% rename from htdocs/langs/th_TH/stocks.lang rename to public/langs/th_TH/stocks.lang diff --git a/htdocs/langs/th_TH/supplier_proposal.lang b/public/langs/th_TH/supplier_proposal.lang similarity index 100% rename from htdocs/langs/th_TH/supplier_proposal.lang rename to public/langs/th_TH/supplier_proposal.lang diff --git a/htdocs/langs/th_TH/suppliers.lang b/public/langs/th_TH/suppliers.lang similarity index 100% rename from htdocs/langs/th_TH/suppliers.lang rename to public/langs/th_TH/suppliers.lang diff --git a/htdocs/langs/th_TH/trips.lang b/public/langs/th_TH/trips.lang similarity index 100% rename from htdocs/langs/th_TH/trips.lang rename to public/langs/th_TH/trips.lang diff --git a/htdocs/langs/th_TH/users.lang b/public/langs/th_TH/users.lang similarity index 100% rename from htdocs/langs/th_TH/users.lang rename to public/langs/th_TH/users.lang diff --git a/htdocs/langs/th_TH/website.lang b/public/langs/th_TH/website.lang similarity index 100% rename from htdocs/langs/th_TH/website.lang rename to public/langs/th_TH/website.lang diff --git a/htdocs/langs/th_TH/withdrawals.lang b/public/langs/th_TH/withdrawals.lang similarity index 100% rename from htdocs/langs/th_TH/withdrawals.lang rename to public/langs/th_TH/withdrawals.lang diff --git a/htdocs/langs/th_TH/workflow.lang b/public/langs/th_TH/workflow.lang similarity index 100% rename from htdocs/langs/th_TH/workflow.lang rename to public/langs/th_TH/workflow.lang diff --git a/htdocs/langs/tr_TR/accountancy.lang b/public/langs/tr_TR/accountancy.lang similarity index 100% rename from htdocs/langs/tr_TR/accountancy.lang rename to public/langs/tr_TR/accountancy.lang diff --git a/htdocs/langs/tr_TR/admin.lang b/public/langs/tr_TR/admin.lang similarity index 100% rename from htdocs/langs/tr_TR/admin.lang rename to public/langs/tr_TR/admin.lang diff --git a/htdocs/langs/tr_TR/agenda.lang b/public/langs/tr_TR/agenda.lang similarity index 100% rename from htdocs/langs/tr_TR/agenda.lang rename to public/langs/tr_TR/agenda.lang diff --git a/htdocs/langs/tr_TR/banks.lang b/public/langs/tr_TR/banks.lang similarity index 100% rename from htdocs/langs/tr_TR/banks.lang rename to public/langs/tr_TR/banks.lang diff --git a/htdocs/langs/tr_TR/bills.lang b/public/langs/tr_TR/bills.lang similarity index 100% rename from htdocs/langs/tr_TR/bills.lang rename to public/langs/tr_TR/bills.lang diff --git a/htdocs/langs/tr_TR/bookmarks.lang b/public/langs/tr_TR/bookmarks.lang similarity index 100% rename from htdocs/langs/tr_TR/bookmarks.lang rename to public/langs/tr_TR/bookmarks.lang diff --git a/htdocs/langs/tr_TR/boxes.lang b/public/langs/tr_TR/boxes.lang similarity index 100% rename from htdocs/langs/tr_TR/boxes.lang rename to public/langs/tr_TR/boxes.lang diff --git a/htdocs/langs/tr_TR/cashdesk.lang b/public/langs/tr_TR/cashdesk.lang similarity index 100% rename from htdocs/langs/tr_TR/cashdesk.lang rename to public/langs/tr_TR/cashdesk.lang diff --git a/htdocs/langs/tr_TR/categories.lang b/public/langs/tr_TR/categories.lang similarity index 100% rename from htdocs/langs/tr_TR/categories.lang rename to public/langs/tr_TR/categories.lang diff --git a/htdocs/langs/tr_TR/commercial.lang b/public/langs/tr_TR/commercial.lang similarity index 100% rename from htdocs/langs/tr_TR/commercial.lang rename to public/langs/tr_TR/commercial.lang diff --git a/htdocs/langs/tr_TR/commissions.lang b/public/langs/tr_TR/commissions.lang similarity index 100% rename from htdocs/langs/tr_TR/commissions.lang rename to public/langs/tr_TR/commissions.lang diff --git a/htdocs/langs/tr_TR/companies.lang b/public/langs/tr_TR/companies.lang similarity index 100% rename from htdocs/langs/tr_TR/companies.lang rename to public/langs/tr_TR/companies.lang diff --git a/htdocs/langs/tr_TR/compta.lang b/public/langs/tr_TR/compta.lang similarity index 100% rename from htdocs/langs/tr_TR/compta.lang rename to public/langs/tr_TR/compta.lang diff --git a/htdocs/langs/tr_TR/contracts.lang b/public/langs/tr_TR/contracts.lang similarity index 100% rename from htdocs/langs/tr_TR/contracts.lang rename to public/langs/tr_TR/contracts.lang diff --git a/htdocs/langs/tr_TR/cron.lang b/public/langs/tr_TR/cron.lang similarity index 100% rename from htdocs/langs/tr_TR/cron.lang rename to public/langs/tr_TR/cron.lang diff --git a/htdocs/langs/tr_TR/deliveries.lang b/public/langs/tr_TR/deliveries.lang similarity index 100% rename from htdocs/langs/tr_TR/deliveries.lang rename to public/langs/tr_TR/deliveries.lang diff --git a/htdocs/langs/tr_TR/dict.lang b/public/langs/tr_TR/dict.lang similarity index 100% rename from htdocs/langs/tr_TR/dict.lang rename to public/langs/tr_TR/dict.lang diff --git a/htdocs/langs/tr_TR/donations.lang b/public/langs/tr_TR/donations.lang similarity index 100% rename from htdocs/langs/tr_TR/donations.lang rename to public/langs/tr_TR/donations.lang diff --git a/htdocs/langs/tr_TR/ecm.lang b/public/langs/tr_TR/ecm.lang similarity index 100% rename from htdocs/langs/tr_TR/ecm.lang rename to public/langs/tr_TR/ecm.lang diff --git a/htdocs/langs/tr_TR/errors.lang b/public/langs/tr_TR/errors.lang similarity index 100% rename from htdocs/langs/tr_TR/errors.lang rename to public/langs/tr_TR/errors.lang diff --git a/htdocs/langs/tr_TR/exports.lang b/public/langs/tr_TR/exports.lang similarity index 100% rename from htdocs/langs/tr_TR/exports.lang rename to public/langs/tr_TR/exports.lang diff --git a/htdocs/langs/tr_TR/externalsite.lang b/public/langs/tr_TR/externalsite.lang similarity index 100% rename from htdocs/langs/tr_TR/externalsite.lang rename to public/langs/tr_TR/externalsite.lang diff --git a/htdocs/langs/tr_TR/ftp.lang b/public/langs/tr_TR/ftp.lang similarity index 100% rename from htdocs/langs/tr_TR/ftp.lang rename to public/langs/tr_TR/ftp.lang diff --git a/htdocs/langs/tr_TR/help.lang b/public/langs/tr_TR/help.lang similarity index 100% rename from htdocs/langs/tr_TR/help.lang rename to public/langs/tr_TR/help.lang diff --git a/htdocs/langs/tr_TR/holiday.lang b/public/langs/tr_TR/holiday.lang similarity index 100% rename from htdocs/langs/tr_TR/holiday.lang rename to public/langs/tr_TR/holiday.lang diff --git a/htdocs/langs/tr_TR/hrm.lang b/public/langs/tr_TR/hrm.lang similarity index 100% rename from htdocs/langs/tr_TR/hrm.lang rename to public/langs/tr_TR/hrm.lang diff --git a/htdocs/langs/tr_TR/incoterm.lang b/public/langs/tr_TR/incoterm.lang similarity index 100% rename from htdocs/langs/tr_TR/incoterm.lang rename to public/langs/tr_TR/incoterm.lang diff --git a/htdocs/langs/tr_TR/install.lang b/public/langs/tr_TR/install.lang similarity index 100% rename from htdocs/langs/tr_TR/install.lang rename to public/langs/tr_TR/install.lang diff --git a/htdocs/langs/tr_TR/interventions.lang b/public/langs/tr_TR/interventions.lang similarity index 100% rename from htdocs/langs/tr_TR/interventions.lang rename to public/langs/tr_TR/interventions.lang diff --git a/htdocs/langs/tr_TR/languages.lang b/public/langs/tr_TR/languages.lang similarity index 100% rename from htdocs/langs/tr_TR/languages.lang rename to public/langs/tr_TR/languages.lang diff --git a/htdocs/langs/tr_TR/ldap.lang b/public/langs/tr_TR/ldap.lang similarity index 100% rename from htdocs/langs/tr_TR/ldap.lang rename to public/langs/tr_TR/ldap.lang diff --git a/htdocs/langs/tr_TR/link.lang b/public/langs/tr_TR/link.lang similarity index 100% rename from htdocs/langs/tr_TR/link.lang rename to public/langs/tr_TR/link.lang diff --git a/htdocs/langs/tr_TR/loan.lang b/public/langs/tr_TR/loan.lang similarity index 100% rename from htdocs/langs/tr_TR/loan.lang rename to public/langs/tr_TR/loan.lang diff --git a/htdocs/langs/tr_TR/mailmanspip.lang b/public/langs/tr_TR/mailmanspip.lang similarity index 100% rename from htdocs/langs/tr_TR/mailmanspip.lang rename to public/langs/tr_TR/mailmanspip.lang diff --git a/htdocs/langs/tr_TR/mails.lang b/public/langs/tr_TR/mails.lang similarity index 100% rename from htdocs/langs/tr_TR/mails.lang rename to public/langs/tr_TR/mails.lang diff --git a/htdocs/langs/tr_TR/main.lang b/public/langs/tr_TR/main.lang similarity index 100% rename from htdocs/langs/tr_TR/main.lang rename to public/langs/tr_TR/main.lang diff --git a/htdocs/langs/tr_TR/margins.lang b/public/langs/tr_TR/margins.lang similarity index 100% rename from htdocs/langs/tr_TR/margins.lang rename to public/langs/tr_TR/margins.lang diff --git a/htdocs/langs/tr_TR/members.lang b/public/langs/tr_TR/members.lang similarity index 100% rename from htdocs/langs/tr_TR/members.lang rename to public/langs/tr_TR/members.lang diff --git a/htdocs/langs/tr_TR/oauth.lang b/public/langs/tr_TR/oauth.lang similarity index 100% rename from htdocs/langs/tr_TR/oauth.lang rename to public/langs/tr_TR/oauth.lang diff --git a/htdocs/langs/tr_TR/opensurvey.lang b/public/langs/tr_TR/opensurvey.lang similarity index 100% rename from htdocs/langs/tr_TR/opensurvey.lang rename to public/langs/tr_TR/opensurvey.lang diff --git a/htdocs/langs/tr_TR/orders.lang b/public/langs/tr_TR/orders.lang similarity index 100% rename from htdocs/langs/tr_TR/orders.lang rename to public/langs/tr_TR/orders.lang diff --git a/htdocs/langs/tr_TR/other.lang b/public/langs/tr_TR/other.lang similarity index 100% rename from htdocs/langs/tr_TR/other.lang rename to public/langs/tr_TR/other.lang diff --git a/htdocs/langs/tr_TR/paybox.lang b/public/langs/tr_TR/paybox.lang similarity index 100% rename from htdocs/langs/tr_TR/paybox.lang rename to public/langs/tr_TR/paybox.lang diff --git a/htdocs/langs/tr_TR/paypal.lang b/public/langs/tr_TR/paypal.lang similarity index 100% rename from htdocs/langs/tr_TR/paypal.lang rename to public/langs/tr_TR/paypal.lang diff --git a/htdocs/langs/tr_TR/printing.lang b/public/langs/tr_TR/printing.lang similarity index 100% rename from htdocs/langs/tr_TR/printing.lang rename to public/langs/tr_TR/printing.lang diff --git a/htdocs/langs/tr_TR/productbatch.lang b/public/langs/tr_TR/productbatch.lang similarity index 100% rename from htdocs/langs/tr_TR/productbatch.lang rename to public/langs/tr_TR/productbatch.lang diff --git a/htdocs/langs/tr_TR/products.lang b/public/langs/tr_TR/products.lang similarity index 100% rename from htdocs/langs/tr_TR/products.lang rename to public/langs/tr_TR/products.lang diff --git a/htdocs/langs/tr_TR/projects.lang b/public/langs/tr_TR/projects.lang similarity index 100% rename from htdocs/langs/tr_TR/projects.lang rename to public/langs/tr_TR/projects.lang diff --git a/htdocs/langs/tr_TR/propal.lang b/public/langs/tr_TR/propal.lang similarity index 100% rename from htdocs/langs/tr_TR/propal.lang rename to public/langs/tr_TR/propal.lang diff --git a/htdocs/langs/tr_TR/receiptprinter.lang b/public/langs/tr_TR/receiptprinter.lang similarity index 100% rename from htdocs/langs/tr_TR/receiptprinter.lang rename to public/langs/tr_TR/receiptprinter.lang diff --git a/htdocs/langs/tr_TR/resource.lang b/public/langs/tr_TR/resource.lang similarity index 100% rename from htdocs/langs/tr_TR/resource.lang rename to public/langs/tr_TR/resource.lang diff --git a/htdocs/langs/tr_TR/salaries.lang b/public/langs/tr_TR/salaries.lang similarity index 100% rename from htdocs/langs/tr_TR/salaries.lang rename to public/langs/tr_TR/salaries.lang diff --git a/htdocs/langs/tr_TR/sendings.lang b/public/langs/tr_TR/sendings.lang similarity index 100% rename from htdocs/langs/tr_TR/sendings.lang rename to public/langs/tr_TR/sendings.lang diff --git a/htdocs/langs/tr_TR/sms.lang b/public/langs/tr_TR/sms.lang similarity index 100% rename from htdocs/langs/tr_TR/sms.lang rename to public/langs/tr_TR/sms.lang diff --git a/htdocs/langs/tr_TR/stocks.lang b/public/langs/tr_TR/stocks.lang similarity index 100% rename from htdocs/langs/tr_TR/stocks.lang rename to public/langs/tr_TR/stocks.lang diff --git a/htdocs/langs/tr_TR/supplier_proposal.lang b/public/langs/tr_TR/supplier_proposal.lang similarity index 100% rename from htdocs/langs/tr_TR/supplier_proposal.lang rename to public/langs/tr_TR/supplier_proposal.lang diff --git a/htdocs/langs/tr_TR/suppliers.lang b/public/langs/tr_TR/suppliers.lang similarity index 100% rename from htdocs/langs/tr_TR/suppliers.lang rename to public/langs/tr_TR/suppliers.lang diff --git a/htdocs/langs/tr_TR/trips.lang b/public/langs/tr_TR/trips.lang similarity index 100% rename from htdocs/langs/tr_TR/trips.lang rename to public/langs/tr_TR/trips.lang diff --git a/htdocs/langs/tr_TR/users.lang b/public/langs/tr_TR/users.lang similarity index 100% rename from htdocs/langs/tr_TR/users.lang rename to public/langs/tr_TR/users.lang diff --git a/htdocs/langs/tr_TR/website.lang b/public/langs/tr_TR/website.lang similarity index 100% rename from htdocs/langs/tr_TR/website.lang rename to public/langs/tr_TR/website.lang diff --git a/htdocs/langs/tr_TR/withdrawals.lang b/public/langs/tr_TR/withdrawals.lang similarity index 100% rename from htdocs/langs/tr_TR/withdrawals.lang rename to public/langs/tr_TR/withdrawals.lang diff --git a/htdocs/langs/tr_TR/workflow.lang b/public/langs/tr_TR/workflow.lang similarity index 100% rename from htdocs/langs/tr_TR/workflow.lang rename to public/langs/tr_TR/workflow.lang diff --git a/htdocs/langs/uk_UA/accountancy.lang b/public/langs/uk_UA/accountancy.lang similarity index 100% rename from htdocs/langs/uk_UA/accountancy.lang rename to public/langs/uk_UA/accountancy.lang diff --git a/htdocs/langs/uk_UA/admin.lang b/public/langs/uk_UA/admin.lang similarity index 100% rename from htdocs/langs/uk_UA/admin.lang rename to public/langs/uk_UA/admin.lang diff --git a/htdocs/langs/uk_UA/agenda.lang b/public/langs/uk_UA/agenda.lang similarity index 100% rename from htdocs/langs/uk_UA/agenda.lang rename to public/langs/uk_UA/agenda.lang diff --git a/htdocs/langs/uk_UA/banks.lang b/public/langs/uk_UA/banks.lang similarity index 100% rename from htdocs/langs/uk_UA/banks.lang rename to public/langs/uk_UA/banks.lang diff --git a/htdocs/langs/uk_UA/bills.lang b/public/langs/uk_UA/bills.lang similarity index 100% rename from htdocs/langs/uk_UA/bills.lang rename to public/langs/uk_UA/bills.lang diff --git a/htdocs/langs/uk_UA/bookmarks.lang b/public/langs/uk_UA/bookmarks.lang similarity index 100% rename from htdocs/langs/uk_UA/bookmarks.lang rename to public/langs/uk_UA/bookmarks.lang diff --git a/htdocs/langs/uk_UA/boxes.lang b/public/langs/uk_UA/boxes.lang similarity index 100% rename from htdocs/langs/uk_UA/boxes.lang rename to public/langs/uk_UA/boxes.lang diff --git a/htdocs/langs/uk_UA/cashdesk.lang b/public/langs/uk_UA/cashdesk.lang similarity index 100% rename from htdocs/langs/uk_UA/cashdesk.lang rename to public/langs/uk_UA/cashdesk.lang diff --git a/htdocs/langs/uk_UA/categories.lang b/public/langs/uk_UA/categories.lang similarity index 100% rename from htdocs/langs/uk_UA/categories.lang rename to public/langs/uk_UA/categories.lang diff --git a/htdocs/langs/uk_UA/commercial.lang b/public/langs/uk_UA/commercial.lang similarity index 100% rename from htdocs/langs/uk_UA/commercial.lang rename to public/langs/uk_UA/commercial.lang diff --git a/htdocs/langs/uk_UA/companies.lang b/public/langs/uk_UA/companies.lang similarity index 100% rename from htdocs/langs/uk_UA/companies.lang rename to public/langs/uk_UA/companies.lang diff --git a/htdocs/langs/uk_UA/compta.lang b/public/langs/uk_UA/compta.lang similarity index 100% rename from htdocs/langs/uk_UA/compta.lang rename to public/langs/uk_UA/compta.lang diff --git a/htdocs/langs/uk_UA/contracts.lang b/public/langs/uk_UA/contracts.lang similarity index 100% rename from htdocs/langs/uk_UA/contracts.lang rename to public/langs/uk_UA/contracts.lang diff --git a/htdocs/langs/uk_UA/cron.lang b/public/langs/uk_UA/cron.lang similarity index 100% rename from htdocs/langs/uk_UA/cron.lang rename to public/langs/uk_UA/cron.lang diff --git a/htdocs/langs/uk_UA/deliveries.lang b/public/langs/uk_UA/deliveries.lang similarity index 100% rename from htdocs/langs/uk_UA/deliveries.lang rename to public/langs/uk_UA/deliveries.lang diff --git a/htdocs/langs/uk_UA/dict.lang b/public/langs/uk_UA/dict.lang similarity index 100% rename from htdocs/langs/uk_UA/dict.lang rename to public/langs/uk_UA/dict.lang diff --git a/htdocs/langs/uk_UA/donations.lang b/public/langs/uk_UA/donations.lang similarity index 100% rename from htdocs/langs/uk_UA/donations.lang rename to public/langs/uk_UA/donations.lang diff --git a/htdocs/langs/uk_UA/ecm.lang b/public/langs/uk_UA/ecm.lang similarity index 100% rename from htdocs/langs/uk_UA/ecm.lang rename to public/langs/uk_UA/ecm.lang diff --git a/htdocs/langs/uk_UA/errors.lang b/public/langs/uk_UA/errors.lang similarity index 100% rename from htdocs/langs/uk_UA/errors.lang rename to public/langs/uk_UA/errors.lang diff --git a/htdocs/langs/uk_UA/exports.lang b/public/langs/uk_UA/exports.lang similarity index 100% rename from htdocs/langs/uk_UA/exports.lang rename to public/langs/uk_UA/exports.lang diff --git a/htdocs/langs/uk_UA/externalsite.lang b/public/langs/uk_UA/externalsite.lang similarity index 100% rename from htdocs/langs/uk_UA/externalsite.lang rename to public/langs/uk_UA/externalsite.lang diff --git a/htdocs/langs/uk_UA/ftp.lang b/public/langs/uk_UA/ftp.lang similarity index 100% rename from htdocs/langs/uk_UA/ftp.lang rename to public/langs/uk_UA/ftp.lang diff --git a/htdocs/langs/uk_UA/help.lang b/public/langs/uk_UA/help.lang similarity index 100% rename from htdocs/langs/uk_UA/help.lang rename to public/langs/uk_UA/help.lang diff --git a/htdocs/langs/uk_UA/holiday.lang b/public/langs/uk_UA/holiday.lang similarity index 100% rename from htdocs/langs/uk_UA/holiday.lang rename to public/langs/uk_UA/holiday.lang diff --git a/htdocs/langs/uk_UA/hrm.lang b/public/langs/uk_UA/hrm.lang similarity index 100% rename from htdocs/langs/uk_UA/hrm.lang rename to public/langs/uk_UA/hrm.lang diff --git a/htdocs/langs/uk_UA/incoterm.lang b/public/langs/uk_UA/incoterm.lang similarity index 100% rename from htdocs/langs/uk_UA/incoterm.lang rename to public/langs/uk_UA/incoterm.lang diff --git a/htdocs/langs/uk_UA/install.lang b/public/langs/uk_UA/install.lang similarity index 100% rename from htdocs/langs/uk_UA/install.lang rename to public/langs/uk_UA/install.lang diff --git a/htdocs/langs/uk_UA/interventions.lang b/public/langs/uk_UA/interventions.lang similarity index 100% rename from htdocs/langs/uk_UA/interventions.lang rename to public/langs/uk_UA/interventions.lang diff --git a/htdocs/langs/uk_UA/languages.lang b/public/langs/uk_UA/languages.lang similarity index 100% rename from htdocs/langs/uk_UA/languages.lang rename to public/langs/uk_UA/languages.lang diff --git a/htdocs/langs/uk_UA/ldap.lang b/public/langs/uk_UA/ldap.lang similarity index 100% rename from htdocs/langs/uk_UA/ldap.lang rename to public/langs/uk_UA/ldap.lang diff --git a/htdocs/langs/uk_UA/link.lang b/public/langs/uk_UA/link.lang similarity index 100% rename from htdocs/langs/uk_UA/link.lang rename to public/langs/uk_UA/link.lang diff --git a/htdocs/langs/uk_UA/loan.lang b/public/langs/uk_UA/loan.lang similarity index 100% rename from htdocs/langs/uk_UA/loan.lang rename to public/langs/uk_UA/loan.lang diff --git a/htdocs/langs/uk_UA/mailmanspip.lang b/public/langs/uk_UA/mailmanspip.lang similarity index 100% rename from htdocs/langs/uk_UA/mailmanspip.lang rename to public/langs/uk_UA/mailmanspip.lang diff --git a/htdocs/langs/uk_UA/mails.lang b/public/langs/uk_UA/mails.lang similarity index 100% rename from htdocs/langs/uk_UA/mails.lang rename to public/langs/uk_UA/mails.lang diff --git a/htdocs/langs/uk_UA/main.lang b/public/langs/uk_UA/main.lang similarity index 100% rename from htdocs/langs/uk_UA/main.lang rename to public/langs/uk_UA/main.lang diff --git a/htdocs/langs/uk_UA/margins.lang b/public/langs/uk_UA/margins.lang similarity index 100% rename from htdocs/langs/uk_UA/margins.lang rename to public/langs/uk_UA/margins.lang diff --git a/htdocs/langs/uk_UA/members.lang b/public/langs/uk_UA/members.lang similarity index 100% rename from htdocs/langs/uk_UA/members.lang rename to public/langs/uk_UA/members.lang diff --git a/htdocs/langs/uk_UA/oauth.lang b/public/langs/uk_UA/oauth.lang similarity index 100% rename from htdocs/langs/uk_UA/oauth.lang rename to public/langs/uk_UA/oauth.lang diff --git a/htdocs/langs/uk_UA/opensurvey.lang b/public/langs/uk_UA/opensurvey.lang similarity index 100% rename from htdocs/langs/uk_UA/opensurvey.lang rename to public/langs/uk_UA/opensurvey.lang diff --git a/htdocs/langs/uk_UA/orders.lang b/public/langs/uk_UA/orders.lang similarity index 100% rename from htdocs/langs/uk_UA/orders.lang rename to public/langs/uk_UA/orders.lang diff --git a/htdocs/langs/uk_UA/other.lang b/public/langs/uk_UA/other.lang similarity index 100% rename from htdocs/langs/uk_UA/other.lang rename to public/langs/uk_UA/other.lang diff --git a/htdocs/langs/uk_UA/paybox.lang b/public/langs/uk_UA/paybox.lang similarity index 100% rename from htdocs/langs/uk_UA/paybox.lang rename to public/langs/uk_UA/paybox.lang diff --git a/htdocs/langs/uk_UA/paypal.lang b/public/langs/uk_UA/paypal.lang similarity index 100% rename from htdocs/langs/uk_UA/paypal.lang rename to public/langs/uk_UA/paypal.lang diff --git a/htdocs/langs/uk_UA/printing.lang b/public/langs/uk_UA/printing.lang similarity index 100% rename from htdocs/langs/uk_UA/printing.lang rename to public/langs/uk_UA/printing.lang diff --git a/htdocs/langs/uk_UA/productbatch.lang b/public/langs/uk_UA/productbatch.lang similarity index 100% rename from htdocs/langs/uk_UA/productbatch.lang rename to public/langs/uk_UA/productbatch.lang diff --git a/htdocs/langs/uk_UA/products.lang b/public/langs/uk_UA/products.lang similarity index 100% rename from htdocs/langs/uk_UA/products.lang rename to public/langs/uk_UA/products.lang diff --git a/htdocs/langs/uk_UA/projects.lang b/public/langs/uk_UA/projects.lang similarity index 100% rename from htdocs/langs/uk_UA/projects.lang rename to public/langs/uk_UA/projects.lang diff --git a/htdocs/langs/uk_UA/propal.lang b/public/langs/uk_UA/propal.lang similarity index 100% rename from htdocs/langs/uk_UA/propal.lang rename to public/langs/uk_UA/propal.lang diff --git a/htdocs/langs/uk_UA/receiptprinter.lang b/public/langs/uk_UA/receiptprinter.lang similarity index 100% rename from htdocs/langs/uk_UA/receiptprinter.lang rename to public/langs/uk_UA/receiptprinter.lang diff --git a/htdocs/langs/uk_UA/resource.lang b/public/langs/uk_UA/resource.lang similarity index 100% rename from htdocs/langs/uk_UA/resource.lang rename to public/langs/uk_UA/resource.lang diff --git a/htdocs/langs/uk_UA/salaries.lang b/public/langs/uk_UA/salaries.lang similarity index 100% rename from htdocs/langs/uk_UA/salaries.lang rename to public/langs/uk_UA/salaries.lang diff --git a/htdocs/langs/uk_UA/sendings.lang b/public/langs/uk_UA/sendings.lang similarity index 100% rename from htdocs/langs/uk_UA/sendings.lang rename to public/langs/uk_UA/sendings.lang diff --git a/htdocs/langs/uk_UA/sms.lang b/public/langs/uk_UA/sms.lang similarity index 100% rename from htdocs/langs/uk_UA/sms.lang rename to public/langs/uk_UA/sms.lang diff --git a/htdocs/langs/uk_UA/stocks.lang b/public/langs/uk_UA/stocks.lang similarity index 100% rename from htdocs/langs/uk_UA/stocks.lang rename to public/langs/uk_UA/stocks.lang diff --git a/htdocs/langs/uk_UA/supplier_proposal.lang b/public/langs/uk_UA/supplier_proposal.lang similarity index 100% rename from htdocs/langs/uk_UA/supplier_proposal.lang rename to public/langs/uk_UA/supplier_proposal.lang diff --git a/htdocs/langs/uk_UA/suppliers.lang b/public/langs/uk_UA/suppliers.lang similarity index 100% rename from htdocs/langs/uk_UA/suppliers.lang rename to public/langs/uk_UA/suppliers.lang diff --git a/htdocs/langs/uk_UA/trips.lang b/public/langs/uk_UA/trips.lang similarity index 100% rename from htdocs/langs/uk_UA/trips.lang rename to public/langs/uk_UA/trips.lang diff --git a/htdocs/langs/uk_UA/users.lang b/public/langs/uk_UA/users.lang similarity index 100% rename from htdocs/langs/uk_UA/users.lang rename to public/langs/uk_UA/users.lang diff --git a/htdocs/langs/uk_UA/website.lang b/public/langs/uk_UA/website.lang similarity index 100% rename from htdocs/langs/uk_UA/website.lang rename to public/langs/uk_UA/website.lang diff --git a/htdocs/langs/uk_UA/withdrawals.lang b/public/langs/uk_UA/withdrawals.lang similarity index 100% rename from htdocs/langs/uk_UA/withdrawals.lang rename to public/langs/uk_UA/withdrawals.lang diff --git a/htdocs/langs/uk_UA/workflow.lang b/public/langs/uk_UA/workflow.lang similarity index 100% rename from htdocs/langs/uk_UA/workflow.lang rename to public/langs/uk_UA/workflow.lang diff --git a/htdocs/langs/uz_UZ/accountancy.lang b/public/langs/uz_UZ/accountancy.lang similarity index 100% rename from htdocs/langs/uz_UZ/accountancy.lang rename to public/langs/uz_UZ/accountancy.lang diff --git a/htdocs/langs/uz_UZ/admin.lang b/public/langs/uz_UZ/admin.lang similarity index 100% rename from htdocs/langs/uz_UZ/admin.lang rename to public/langs/uz_UZ/admin.lang diff --git a/htdocs/langs/uz_UZ/agenda.lang b/public/langs/uz_UZ/agenda.lang similarity index 100% rename from htdocs/langs/uz_UZ/agenda.lang rename to public/langs/uz_UZ/agenda.lang diff --git a/htdocs/langs/uz_UZ/banks.lang b/public/langs/uz_UZ/banks.lang similarity index 100% rename from htdocs/langs/uz_UZ/banks.lang rename to public/langs/uz_UZ/banks.lang diff --git a/htdocs/langs/uz_UZ/bills.lang b/public/langs/uz_UZ/bills.lang similarity index 100% rename from htdocs/langs/uz_UZ/bills.lang rename to public/langs/uz_UZ/bills.lang diff --git a/htdocs/langs/uz_UZ/bookmarks.lang b/public/langs/uz_UZ/bookmarks.lang similarity index 100% rename from htdocs/langs/uz_UZ/bookmarks.lang rename to public/langs/uz_UZ/bookmarks.lang diff --git a/htdocs/langs/uz_UZ/boxes.lang b/public/langs/uz_UZ/boxes.lang similarity index 100% rename from htdocs/langs/uz_UZ/boxes.lang rename to public/langs/uz_UZ/boxes.lang diff --git a/htdocs/langs/uz_UZ/cashdesk.lang b/public/langs/uz_UZ/cashdesk.lang similarity index 100% rename from htdocs/langs/uz_UZ/cashdesk.lang rename to public/langs/uz_UZ/cashdesk.lang diff --git a/htdocs/langs/uz_UZ/categories.lang b/public/langs/uz_UZ/categories.lang similarity index 100% rename from htdocs/langs/uz_UZ/categories.lang rename to public/langs/uz_UZ/categories.lang diff --git a/htdocs/langs/uz_UZ/commercial.lang b/public/langs/uz_UZ/commercial.lang similarity index 100% rename from htdocs/langs/uz_UZ/commercial.lang rename to public/langs/uz_UZ/commercial.lang diff --git a/htdocs/langs/uz_UZ/companies.lang b/public/langs/uz_UZ/companies.lang similarity index 100% rename from htdocs/langs/uz_UZ/companies.lang rename to public/langs/uz_UZ/companies.lang diff --git a/htdocs/langs/uz_UZ/compta.lang b/public/langs/uz_UZ/compta.lang similarity index 100% rename from htdocs/langs/uz_UZ/compta.lang rename to public/langs/uz_UZ/compta.lang diff --git a/htdocs/langs/uz_UZ/contracts.lang b/public/langs/uz_UZ/contracts.lang similarity index 100% rename from htdocs/langs/uz_UZ/contracts.lang rename to public/langs/uz_UZ/contracts.lang diff --git a/htdocs/langs/uz_UZ/cron.lang b/public/langs/uz_UZ/cron.lang similarity index 100% rename from htdocs/langs/uz_UZ/cron.lang rename to public/langs/uz_UZ/cron.lang diff --git a/htdocs/langs/uz_UZ/deliveries.lang b/public/langs/uz_UZ/deliveries.lang similarity index 100% rename from htdocs/langs/uz_UZ/deliveries.lang rename to public/langs/uz_UZ/deliveries.lang diff --git a/htdocs/langs/uz_UZ/dict.lang b/public/langs/uz_UZ/dict.lang similarity index 100% rename from htdocs/langs/uz_UZ/dict.lang rename to public/langs/uz_UZ/dict.lang diff --git a/htdocs/langs/uz_UZ/donations.lang b/public/langs/uz_UZ/donations.lang similarity index 100% rename from htdocs/langs/uz_UZ/donations.lang rename to public/langs/uz_UZ/donations.lang diff --git a/htdocs/langs/uz_UZ/ecm.lang b/public/langs/uz_UZ/ecm.lang similarity index 100% rename from htdocs/langs/uz_UZ/ecm.lang rename to public/langs/uz_UZ/ecm.lang diff --git a/htdocs/langs/uz_UZ/errors.lang b/public/langs/uz_UZ/errors.lang similarity index 100% rename from htdocs/langs/uz_UZ/errors.lang rename to public/langs/uz_UZ/errors.lang diff --git a/htdocs/langs/uz_UZ/exports.lang b/public/langs/uz_UZ/exports.lang similarity index 100% rename from htdocs/langs/uz_UZ/exports.lang rename to public/langs/uz_UZ/exports.lang diff --git a/htdocs/langs/uz_UZ/externalsite.lang b/public/langs/uz_UZ/externalsite.lang similarity index 100% rename from htdocs/langs/uz_UZ/externalsite.lang rename to public/langs/uz_UZ/externalsite.lang diff --git a/htdocs/langs/uz_UZ/ftp.lang b/public/langs/uz_UZ/ftp.lang similarity index 100% rename from htdocs/langs/uz_UZ/ftp.lang rename to public/langs/uz_UZ/ftp.lang diff --git a/htdocs/langs/uz_UZ/help.lang b/public/langs/uz_UZ/help.lang similarity index 100% rename from htdocs/langs/uz_UZ/help.lang rename to public/langs/uz_UZ/help.lang diff --git a/htdocs/langs/uz_UZ/holiday.lang b/public/langs/uz_UZ/holiday.lang similarity index 100% rename from htdocs/langs/uz_UZ/holiday.lang rename to public/langs/uz_UZ/holiday.lang diff --git a/htdocs/langs/uz_UZ/incoterm.lang b/public/langs/uz_UZ/incoterm.lang similarity index 100% rename from htdocs/langs/uz_UZ/incoterm.lang rename to public/langs/uz_UZ/incoterm.lang diff --git a/htdocs/langs/uz_UZ/install.lang b/public/langs/uz_UZ/install.lang similarity index 100% rename from htdocs/langs/uz_UZ/install.lang rename to public/langs/uz_UZ/install.lang diff --git a/htdocs/langs/uz_UZ/interventions.lang b/public/langs/uz_UZ/interventions.lang similarity index 100% rename from htdocs/langs/uz_UZ/interventions.lang rename to public/langs/uz_UZ/interventions.lang diff --git a/htdocs/langs/uz_UZ/languages.lang b/public/langs/uz_UZ/languages.lang similarity index 100% rename from htdocs/langs/uz_UZ/languages.lang rename to public/langs/uz_UZ/languages.lang diff --git a/htdocs/langs/uz_UZ/ldap.lang b/public/langs/uz_UZ/ldap.lang similarity index 100% rename from htdocs/langs/uz_UZ/ldap.lang rename to public/langs/uz_UZ/ldap.lang diff --git a/htdocs/langs/uz_UZ/link.lang b/public/langs/uz_UZ/link.lang similarity index 100% rename from htdocs/langs/uz_UZ/link.lang rename to public/langs/uz_UZ/link.lang diff --git a/htdocs/langs/uz_UZ/loan.lang b/public/langs/uz_UZ/loan.lang similarity index 100% rename from htdocs/langs/uz_UZ/loan.lang rename to public/langs/uz_UZ/loan.lang diff --git a/htdocs/langs/uz_UZ/mailmanspip.lang b/public/langs/uz_UZ/mailmanspip.lang similarity index 100% rename from htdocs/langs/uz_UZ/mailmanspip.lang rename to public/langs/uz_UZ/mailmanspip.lang diff --git a/htdocs/langs/uz_UZ/mails.lang b/public/langs/uz_UZ/mails.lang similarity index 100% rename from htdocs/langs/uz_UZ/mails.lang rename to public/langs/uz_UZ/mails.lang diff --git a/htdocs/langs/uz_UZ/main.lang b/public/langs/uz_UZ/main.lang similarity index 100% rename from htdocs/langs/uz_UZ/main.lang rename to public/langs/uz_UZ/main.lang diff --git a/htdocs/langs/uz_UZ/margins.lang b/public/langs/uz_UZ/margins.lang similarity index 100% rename from htdocs/langs/uz_UZ/margins.lang rename to public/langs/uz_UZ/margins.lang diff --git a/htdocs/langs/uz_UZ/members.lang b/public/langs/uz_UZ/members.lang similarity index 100% rename from htdocs/langs/uz_UZ/members.lang rename to public/langs/uz_UZ/members.lang diff --git a/htdocs/langs/uz_UZ/opensurvey.lang b/public/langs/uz_UZ/opensurvey.lang similarity index 100% rename from htdocs/langs/uz_UZ/opensurvey.lang rename to public/langs/uz_UZ/opensurvey.lang diff --git a/htdocs/langs/uz_UZ/orders.lang b/public/langs/uz_UZ/orders.lang similarity index 100% rename from htdocs/langs/uz_UZ/orders.lang rename to public/langs/uz_UZ/orders.lang diff --git a/htdocs/langs/uz_UZ/other.lang b/public/langs/uz_UZ/other.lang similarity index 100% rename from htdocs/langs/uz_UZ/other.lang rename to public/langs/uz_UZ/other.lang diff --git a/htdocs/langs/uz_UZ/paybox.lang b/public/langs/uz_UZ/paybox.lang similarity index 100% rename from htdocs/langs/uz_UZ/paybox.lang rename to public/langs/uz_UZ/paybox.lang diff --git a/htdocs/langs/uz_UZ/paypal.lang b/public/langs/uz_UZ/paypal.lang similarity index 100% rename from htdocs/langs/uz_UZ/paypal.lang rename to public/langs/uz_UZ/paypal.lang diff --git a/htdocs/langs/uz_UZ/printing.lang b/public/langs/uz_UZ/printing.lang similarity index 100% rename from htdocs/langs/uz_UZ/printing.lang rename to public/langs/uz_UZ/printing.lang diff --git a/htdocs/langs/uz_UZ/productbatch.lang b/public/langs/uz_UZ/productbatch.lang similarity index 100% rename from htdocs/langs/uz_UZ/productbatch.lang rename to public/langs/uz_UZ/productbatch.lang diff --git a/htdocs/langs/uz_UZ/products.lang b/public/langs/uz_UZ/products.lang similarity index 100% rename from htdocs/langs/uz_UZ/products.lang rename to public/langs/uz_UZ/products.lang diff --git a/htdocs/langs/uz_UZ/projects.lang b/public/langs/uz_UZ/projects.lang similarity index 100% rename from htdocs/langs/uz_UZ/projects.lang rename to public/langs/uz_UZ/projects.lang diff --git a/htdocs/langs/uz_UZ/propal.lang b/public/langs/uz_UZ/propal.lang similarity index 100% rename from htdocs/langs/uz_UZ/propal.lang rename to public/langs/uz_UZ/propal.lang diff --git a/htdocs/langs/uz_UZ/resource.lang b/public/langs/uz_UZ/resource.lang similarity index 100% rename from htdocs/langs/uz_UZ/resource.lang rename to public/langs/uz_UZ/resource.lang diff --git a/htdocs/langs/uz_UZ/salaries.lang b/public/langs/uz_UZ/salaries.lang similarity index 100% rename from htdocs/langs/uz_UZ/salaries.lang rename to public/langs/uz_UZ/salaries.lang diff --git a/htdocs/langs/uz_UZ/sendings.lang b/public/langs/uz_UZ/sendings.lang similarity index 100% rename from htdocs/langs/uz_UZ/sendings.lang rename to public/langs/uz_UZ/sendings.lang diff --git a/htdocs/langs/uz_UZ/sms.lang b/public/langs/uz_UZ/sms.lang similarity index 100% rename from htdocs/langs/uz_UZ/sms.lang rename to public/langs/uz_UZ/sms.lang diff --git a/htdocs/langs/uz_UZ/stocks.lang b/public/langs/uz_UZ/stocks.lang similarity index 100% rename from htdocs/langs/uz_UZ/stocks.lang rename to public/langs/uz_UZ/stocks.lang diff --git a/htdocs/langs/uz_UZ/suppliers.lang b/public/langs/uz_UZ/suppliers.lang similarity index 100% rename from htdocs/langs/uz_UZ/suppliers.lang rename to public/langs/uz_UZ/suppliers.lang diff --git a/htdocs/langs/uz_UZ/trips.lang b/public/langs/uz_UZ/trips.lang similarity index 100% rename from htdocs/langs/uz_UZ/trips.lang rename to public/langs/uz_UZ/trips.lang diff --git a/htdocs/langs/uz_UZ/users.lang b/public/langs/uz_UZ/users.lang similarity index 100% rename from htdocs/langs/uz_UZ/users.lang rename to public/langs/uz_UZ/users.lang diff --git a/htdocs/langs/uz_UZ/withdrawals.lang b/public/langs/uz_UZ/withdrawals.lang similarity index 100% rename from htdocs/langs/uz_UZ/withdrawals.lang rename to public/langs/uz_UZ/withdrawals.lang diff --git a/htdocs/langs/uz_UZ/workflow.lang b/public/langs/uz_UZ/workflow.lang similarity index 100% rename from htdocs/langs/uz_UZ/workflow.lang rename to public/langs/uz_UZ/workflow.lang diff --git a/htdocs/langs/vi_VN/accountancy.lang b/public/langs/vi_VN/accountancy.lang similarity index 100% rename from htdocs/langs/vi_VN/accountancy.lang rename to public/langs/vi_VN/accountancy.lang diff --git a/htdocs/langs/vi_VN/admin.lang b/public/langs/vi_VN/admin.lang similarity index 100% rename from htdocs/langs/vi_VN/admin.lang rename to public/langs/vi_VN/admin.lang diff --git a/htdocs/langs/vi_VN/agenda.lang b/public/langs/vi_VN/agenda.lang similarity index 100% rename from htdocs/langs/vi_VN/agenda.lang rename to public/langs/vi_VN/agenda.lang diff --git a/htdocs/langs/vi_VN/banks.lang b/public/langs/vi_VN/banks.lang similarity index 100% rename from htdocs/langs/vi_VN/banks.lang rename to public/langs/vi_VN/banks.lang diff --git a/htdocs/langs/vi_VN/bills.lang b/public/langs/vi_VN/bills.lang similarity index 100% rename from htdocs/langs/vi_VN/bills.lang rename to public/langs/vi_VN/bills.lang diff --git a/htdocs/langs/vi_VN/bookmarks.lang b/public/langs/vi_VN/bookmarks.lang similarity index 100% rename from htdocs/langs/vi_VN/bookmarks.lang rename to public/langs/vi_VN/bookmarks.lang diff --git a/htdocs/langs/vi_VN/boxes.lang b/public/langs/vi_VN/boxes.lang similarity index 100% rename from htdocs/langs/vi_VN/boxes.lang rename to public/langs/vi_VN/boxes.lang diff --git a/htdocs/langs/vi_VN/cashdesk.lang b/public/langs/vi_VN/cashdesk.lang similarity index 100% rename from htdocs/langs/vi_VN/cashdesk.lang rename to public/langs/vi_VN/cashdesk.lang diff --git a/htdocs/langs/vi_VN/categories.lang b/public/langs/vi_VN/categories.lang similarity index 100% rename from htdocs/langs/vi_VN/categories.lang rename to public/langs/vi_VN/categories.lang diff --git a/htdocs/langs/vi_VN/commercial.lang b/public/langs/vi_VN/commercial.lang similarity index 100% rename from htdocs/langs/vi_VN/commercial.lang rename to public/langs/vi_VN/commercial.lang diff --git a/htdocs/langs/vi_VN/companies.lang b/public/langs/vi_VN/companies.lang similarity index 100% rename from htdocs/langs/vi_VN/companies.lang rename to public/langs/vi_VN/companies.lang diff --git a/htdocs/langs/vi_VN/compta.lang b/public/langs/vi_VN/compta.lang similarity index 100% rename from htdocs/langs/vi_VN/compta.lang rename to public/langs/vi_VN/compta.lang diff --git a/htdocs/langs/vi_VN/contracts.lang b/public/langs/vi_VN/contracts.lang similarity index 100% rename from htdocs/langs/vi_VN/contracts.lang rename to public/langs/vi_VN/contracts.lang diff --git a/htdocs/langs/vi_VN/cron.lang b/public/langs/vi_VN/cron.lang similarity index 100% rename from htdocs/langs/vi_VN/cron.lang rename to public/langs/vi_VN/cron.lang diff --git a/htdocs/langs/vi_VN/deliveries.lang b/public/langs/vi_VN/deliveries.lang similarity index 100% rename from htdocs/langs/vi_VN/deliveries.lang rename to public/langs/vi_VN/deliveries.lang diff --git a/htdocs/langs/vi_VN/dict.lang b/public/langs/vi_VN/dict.lang similarity index 100% rename from htdocs/langs/vi_VN/dict.lang rename to public/langs/vi_VN/dict.lang diff --git a/htdocs/langs/vi_VN/donations.lang b/public/langs/vi_VN/donations.lang similarity index 100% rename from htdocs/langs/vi_VN/donations.lang rename to public/langs/vi_VN/donations.lang diff --git a/htdocs/langs/vi_VN/ecm.lang b/public/langs/vi_VN/ecm.lang similarity index 100% rename from htdocs/langs/vi_VN/ecm.lang rename to public/langs/vi_VN/ecm.lang diff --git a/htdocs/langs/vi_VN/errors.lang b/public/langs/vi_VN/errors.lang similarity index 100% rename from htdocs/langs/vi_VN/errors.lang rename to public/langs/vi_VN/errors.lang diff --git a/htdocs/langs/vi_VN/exports.lang b/public/langs/vi_VN/exports.lang similarity index 100% rename from htdocs/langs/vi_VN/exports.lang rename to public/langs/vi_VN/exports.lang diff --git a/htdocs/langs/vi_VN/externalsite.lang b/public/langs/vi_VN/externalsite.lang similarity index 100% rename from htdocs/langs/vi_VN/externalsite.lang rename to public/langs/vi_VN/externalsite.lang diff --git a/htdocs/langs/vi_VN/ftp.lang b/public/langs/vi_VN/ftp.lang similarity index 100% rename from htdocs/langs/vi_VN/ftp.lang rename to public/langs/vi_VN/ftp.lang diff --git a/htdocs/langs/vi_VN/help.lang b/public/langs/vi_VN/help.lang similarity index 100% rename from htdocs/langs/vi_VN/help.lang rename to public/langs/vi_VN/help.lang diff --git a/htdocs/langs/vi_VN/holiday.lang b/public/langs/vi_VN/holiday.lang similarity index 100% rename from htdocs/langs/vi_VN/holiday.lang rename to public/langs/vi_VN/holiday.lang diff --git a/htdocs/langs/vi_VN/hrm.lang b/public/langs/vi_VN/hrm.lang similarity index 100% rename from htdocs/langs/vi_VN/hrm.lang rename to public/langs/vi_VN/hrm.lang diff --git a/htdocs/langs/vi_VN/incoterm.lang b/public/langs/vi_VN/incoterm.lang similarity index 100% rename from htdocs/langs/vi_VN/incoterm.lang rename to public/langs/vi_VN/incoterm.lang diff --git a/htdocs/langs/vi_VN/install.lang b/public/langs/vi_VN/install.lang similarity index 100% rename from htdocs/langs/vi_VN/install.lang rename to public/langs/vi_VN/install.lang diff --git a/htdocs/langs/vi_VN/interventions.lang b/public/langs/vi_VN/interventions.lang similarity index 100% rename from htdocs/langs/vi_VN/interventions.lang rename to public/langs/vi_VN/interventions.lang diff --git a/htdocs/langs/vi_VN/languages.lang b/public/langs/vi_VN/languages.lang similarity index 100% rename from htdocs/langs/vi_VN/languages.lang rename to public/langs/vi_VN/languages.lang diff --git a/htdocs/langs/vi_VN/ldap.lang b/public/langs/vi_VN/ldap.lang similarity index 100% rename from htdocs/langs/vi_VN/ldap.lang rename to public/langs/vi_VN/ldap.lang diff --git a/htdocs/langs/vi_VN/link.lang b/public/langs/vi_VN/link.lang similarity index 100% rename from htdocs/langs/vi_VN/link.lang rename to public/langs/vi_VN/link.lang diff --git a/htdocs/langs/vi_VN/loan.lang b/public/langs/vi_VN/loan.lang similarity index 100% rename from htdocs/langs/vi_VN/loan.lang rename to public/langs/vi_VN/loan.lang diff --git a/htdocs/langs/vi_VN/mailmanspip.lang b/public/langs/vi_VN/mailmanspip.lang similarity index 100% rename from htdocs/langs/vi_VN/mailmanspip.lang rename to public/langs/vi_VN/mailmanspip.lang diff --git a/htdocs/langs/vi_VN/mails.lang b/public/langs/vi_VN/mails.lang similarity index 100% rename from htdocs/langs/vi_VN/mails.lang rename to public/langs/vi_VN/mails.lang diff --git a/htdocs/langs/vi_VN/main.lang b/public/langs/vi_VN/main.lang similarity index 100% rename from htdocs/langs/vi_VN/main.lang rename to public/langs/vi_VN/main.lang diff --git a/htdocs/langs/vi_VN/margins.lang b/public/langs/vi_VN/margins.lang similarity index 100% rename from htdocs/langs/vi_VN/margins.lang rename to public/langs/vi_VN/margins.lang diff --git a/htdocs/langs/vi_VN/members.lang b/public/langs/vi_VN/members.lang similarity index 100% rename from htdocs/langs/vi_VN/members.lang rename to public/langs/vi_VN/members.lang diff --git a/htdocs/langs/vi_VN/oauth.lang b/public/langs/vi_VN/oauth.lang similarity index 100% rename from htdocs/langs/vi_VN/oauth.lang rename to public/langs/vi_VN/oauth.lang diff --git a/htdocs/langs/vi_VN/opensurvey.lang b/public/langs/vi_VN/opensurvey.lang similarity index 100% rename from htdocs/langs/vi_VN/opensurvey.lang rename to public/langs/vi_VN/opensurvey.lang diff --git a/htdocs/langs/vi_VN/orders.lang b/public/langs/vi_VN/orders.lang similarity index 100% rename from htdocs/langs/vi_VN/orders.lang rename to public/langs/vi_VN/orders.lang diff --git a/htdocs/langs/vi_VN/other.lang b/public/langs/vi_VN/other.lang similarity index 100% rename from htdocs/langs/vi_VN/other.lang rename to public/langs/vi_VN/other.lang diff --git a/htdocs/langs/vi_VN/paybox.lang b/public/langs/vi_VN/paybox.lang similarity index 100% rename from htdocs/langs/vi_VN/paybox.lang rename to public/langs/vi_VN/paybox.lang diff --git a/htdocs/langs/vi_VN/paypal.lang b/public/langs/vi_VN/paypal.lang similarity index 100% rename from htdocs/langs/vi_VN/paypal.lang rename to public/langs/vi_VN/paypal.lang diff --git a/htdocs/langs/vi_VN/printing.lang b/public/langs/vi_VN/printing.lang similarity index 100% rename from htdocs/langs/vi_VN/printing.lang rename to public/langs/vi_VN/printing.lang diff --git a/htdocs/langs/vi_VN/productbatch.lang b/public/langs/vi_VN/productbatch.lang similarity index 100% rename from htdocs/langs/vi_VN/productbatch.lang rename to public/langs/vi_VN/productbatch.lang diff --git a/htdocs/langs/vi_VN/products.lang b/public/langs/vi_VN/products.lang similarity index 100% rename from htdocs/langs/vi_VN/products.lang rename to public/langs/vi_VN/products.lang diff --git a/htdocs/langs/vi_VN/projects.lang b/public/langs/vi_VN/projects.lang similarity index 100% rename from htdocs/langs/vi_VN/projects.lang rename to public/langs/vi_VN/projects.lang diff --git a/htdocs/langs/vi_VN/propal.lang b/public/langs/vi_VN/propal.lang similarity index 100% rename from htdocs/langs/vi_VN/propal.lang rename to public/langs/vi_VN/propal.lang diff --git a/htdocs/langs/vi_VN/receiptprinter.lang b/public/langs/vi_VN/receiptprinter.lang similarity index 100% rename from htdocs/langs/vi_VN/receiptprinter.lang rename to public/langs/vi_VN/receiptprinter.lang diff --git a/htdocs/langs/vi_VN/resource.lang b/public/langs/vi_VN/resource.lang similarity index 100% rename from htdocs/langs/vi_VN/resource.lang rename to public/langs/vi_VN/resource.lang diff --git a/htdocs/langs/vi_VN/salaries.lang b/public/langs/vi_VN/salaries.lang similarity index 100% rename from htdocs/langs/vi_VN/salaries.lang rename to public/langs/vi_VN/salaries.lang diff --git a/htdocs/langs/vi_VN/sendings.lang b/public/langs/vi_VN/sendings.lang similarity index 100% rename from htdocs/langs/vi_VN/sendings.lang rename to public/langs/vi_VN/sendings.lang diff --git a/htdocs/langs/vi_VN/sms.lang b/public/langs/vi_VN/sms.lang similarity index 100% rename from htdocs/langs/vi_VN/sms.lang rename to public/langs/vi_VN/sms.lang diff --git a/htdocs/langs/vi_VN/stocks.lang b/public/langs/vi_VN/stocks.lang similarity index 100% rename from htdocs/langs/vi_VN/stocks.lang rename to public/langs/vi_VN/stocks.lang diff --git a/htdocs/langs/vi_VN/supplier_proposal.lang b/public/langs/vi_VN/supplier_proposal.lang similarity index 100% rename from htdocs/langs/vi_VN/supplier_proposal.lang rename to public/langs/vi_VN/supplier_proposal.lang diff --git a/htdocs/langs/vi_VN/suppliers.lang b/public/langs/vi_VN/suppliers.lang similarity index 100% rename from htdocs/langs/vi_VN/suppliers.lang rename to public/langs/vi_VN/suppliers.lang diff --git a/htdocs/langs/vi_VN/trips.lang b/public/langs/vi_VN/trips.lang similarity index 100% rename from htdocs/langs/vi_VN/trips.lang rename to public/langs/vi_VN/trips.lang diff --git a/htdocs/langs/vi_VN/users.lang b/public/langs/vi_VN/users.lang similarity index 100% rename from htdocs/langs/vi_VN/users.lang rename to public/langs/vi_VN/users.lang diff --git a/htdocs/langs/vi_VN/website.lang b/public/langs/vi_VN/website.lang similarity index 100% rename from htdocs/langs/vi_VN/website.lang rename to public/langs/vi_VN/website.lang diff --git a/htdocs/langs/vi_VN/withdrawals.lang b/public/langs/vi_VN/withdrawals.lang similarity index 100% rename from htdocs/langs/vi_VN/withdrawals.lang rename to public/langs/vi_VN/withdrawals.lang diff --git a/htdocs/langs/vi_VN/workflow.lang b/public/langs/vi_VN/workflow.lang similarity index 100% rename from htdocs/langs/vi_VN/workflow.lang rename to public/langs/vi_VN/workflow.lang diff --git a/htdocs/langs/zh_CN/accountancy.lang b/public/langs/zh_CN/accountancy.lang similarity index 100% rename from htdocs/langs/zh_CN/accountancy.lang rename to public/langs/zh_CN/accountancy.lang diff --git a/htdocs/langs/zh_CN/admin.lang b/public/langs/zh_CN/admin.lang similarity index 100% rename from htdocs/langs/zh_CN/admin.lang rename to public/langs/zh_CN/admin.lang diff --git a/htdocs/langs/zh_CN/agenda.lang b/public/langs/zh_CN/agenda.lang similarity index 100% rename from htdocs/langs/zh_CN/agenda.lang rename to public/langs/zh_CN/agenda.lang diff --git a/htdocs/langs/zh_CN/banks.lang b/public/langs/zh_CN/banks.lang similarity index 100% rename from htdocs/langs/zh_CN/banks.lang rename to public/langs/zh_CN/banks.lang diff --git a/htdocs/langs/zh_CN/bills.lang b/public/langs/zh_CN/bills.lang similarity index 100% rename from htdocs/langs/zh_CN/bills.lang rename to public/langs/zh_CN/bills.lang diff --git a/htdocs/langs/zh_CN/bookmarks.lang b/public/langs/zh_CN/bookmarks.lang similarity index 100% rename from htdocs/langs/zh_CN/bookmarks.lang rename to public/langs/zh_CN/bookmarks.lang diff --git a/htdocs/langs/zh_CN/boxes.lang b/public/langs/zh_CN/boxes.lang similarity index 100% rename from htdocs/langs/zh_CN/boxes.lang rename to public/langs/zh_CN/boxes.lang diff --git a/htdocs/langs/zh_CN/cashdesk.lang b/public/langs/zh_CN/cashdesk.lang similarity index 100% rename from htdocs/langs/zh_CN/cashdesk.lang rename to public/langs/zh_CN/cashdesk.lang diff --git a/htdocs/langs/zh_CN/categories.lang b/public/langs/zh_CN/categories.lang similarity index 100% rename from htdocs/langs/zh_CN/categories.lang rename to public/langs/zh_CN/categories.lang diff --git a/htdocs/langs/zh_CN/commercial.lang b/public/langs/zh_CN/commercial.lang similarity index 100% rename from htdocs/langs/zh_CN/commercial.lang rename to public/langs/zh_CN/commercial.lang diff --git a/htdocs/langs/zh_CN/companies.lang b/public/langs/zh_CN/companies.lang similarity index 100% rename from htdocs/langs/zh_CN/companies.lang rename to public/langs/zh_CN/companies.lang diff --git a/htdocs/langs/zh_CN/compta.lang b/public/langs/zh_CN/compta.lang similarity index 100% rename from htdocs/langs/zh_CN/compta.lang rename to public/langs/zh_CN/compta.lang diff --git a/htdocs/langs/zh_CN/contracts.lang b/public/langs/zh_CN/contracts.lang similarity index 100% rename from htdocs/langs/zh_CN/contracts.lang rename to public/langs/zh_CN/contracts.lang diff --git a/htdocs/langs/zh_CN/cron.lang b/public/langs/zh_CN/cron.lang similarity index 100% rename from htdocs/langs/zh_CN/cron.lang rename to public/langs/zh_CN/cron.lang diff --git a/htdocs/langs/zh_CN/deliveries.lang b/public/langs/zh_CN/deliveries.lang similarity index 100% rename from htdocs/langs/zh_CN/deliveries.lang rename to public/langs/zh_CN/deliveries.lang diff --git a/htdocs/langs/zh_CN/dict.lang b/public/langs/zh_CN/dict.lang similarity index 100% rename from htdocs/langs/zh_CN/dict.lang rename to public/langs/zh_CN/dict.lang diff --git a/htdocs/langs/zh_CN/donations.lang b/public/langs/zh_CN/donations.lang similarity index 100% rename from htdocs/langs/zh_CN/donations.lang rename to public/langs/zh_CN/donations.lang diff --git a/htdocs/langs/zh_CN/ecm.lang b/public/langs/zh_CN/ecm.lang similarity index 100% rename from htdocs/langs/zh_CN/ecm.lang rename to public/langs/zh_CN/ecm.lang diff --git a/htdocs/langs/zh_CN/errors.lang b/public/langs/zh_CN/errors.lang similarity index 100% rename from htdocs/langs/zh_CN/errors.lang rename to public/langs/zh_CN/errors.lang diff --git a/htdocs/langs/zh_CN/exports.lang b/public/langs/zh_CN/exports.lang similarity index 100% rename from htdocs/langs/zh_CN/exports.lang rename to public/langs/zh_CN/exports.lang diff --git a/htdocs/langs/zh_CN/externalsite.lang b/public/langs/zh_CN/externalsite.lang similarity index 100% rename from htdocs/langs/zh_CN/externalsite.lang rename to public/langs/zh_CN/externalsite.lang diff --git a/htdocs/langs/zh_CN/ftp.lang b/public/langs/zh_CN/ftp.lang similarity index 100% rename from htdocs/langs/zh_CN/ftp.lang rename to public/langs/zh_CN/ftp.lang diff --git a/htdocs/langs/zh_CN/help.lang b/public/langs/zh_CN/help.lang similarity index 100% rename from htdocs/langs/zh_CN/help.lang rename to public/langs/zh_CN/help.lang diff --git a/htdocs/langs/zh_CN/holiday.lang b/public/langs/zh_CN/holiday.lang similarity index 100% rename from htdocs/langs/zh_CN/holiday.lang rename to public/langs/zh_CN/holiday.lang diff --git a/htdocs/langs/zh_CN/hrm.lang b/public/langs/zh_CN/hrm.lang similarity index 100% rename from htdocs/langs/zh_CN/hrm.lang rename to public/langs/zh_CN/hrm.lang diff --git a/htdocs/langs/zh_CN/incoterm.lang b/public/langs/zh_CN/incoterm.lang similarity index 100% rename from htdocs/langs/zh_CN/incoterm.lang rename to public/langs/zh_CN/incoterm.lang diff --git a/htdocs/langs/zh_CN/install.lang b/public/langs/zh_CN/install.lang similarity index 100% rename from htdocs/langs/zh_CN/install.lang rename to public/langs/zh_CN/install.lang diff --git a/htdocs/langs/zh_CN/interventions.lang b/public/langs/zh_CN/interventions.lang similarity index 100% rename from htdocs/langs/zh_CN/interventions.lang rename to public/langs/zh_CN/interventions.lang diff --git a/htdocs/langs/zh_CN/languages.lang b/public/langs/zh_CN/languages.lang similarity index 100% rename from htdocs/langs/zh_CN/languages.lang rename to public/langs/zh_CN/languages.lang diff --git a/htdocs/langs/zh_CN/ldap.lang b/public/langs/zh_CN/ldap.lang similarity index 100% rename from htdocs/langs/zh_CN/ldap.lang rename to public/langs/zh_CN/ldap.lang diff --git a/htdocs/langs/zh_CN/link.lang b/public/langs/zh_CN/link.lang similarity index 100% rename from htdocs/langs/zh_CN/link.lang rename to public/langs/zh_CN/link.lang diff --git a/htdocs/langs/zh_CN/loan.lang b/public/langs/zh_CN/loan.lang similarity index 100% rename from htdocs/langs/zh_CN/loan.lang rename to public/langs/zh_CN/loan.lang diff --git a/htdocs/langs/zh_CN/mailmanspip.lang b/public/langs/zh_CN/mailmanspip.lang similarity index 100% rename from htdocs/langs/zh_CN/mailmanspip.lang rename to public/langs/zh_CN/mailmanspip.lang diff --git a/htdocs/langs/zh_CN/mails.lang b/public/langs/zh_CN/mails.lang similarity index 100% rename from htdocs/langs/zh_CN/mails.lang rename to public/langs/zh_CN/mails.lang diff --git a/htdocs/langs/zh_CN/main.lang b/public/langs/zh_CN/main.lang similarity index 100% rename from htdocs/langs/zh_CN/main.lang rename to public/langs/zh_CN/main.lang diff --git a/htdocs/langs/zh_CN/margins.lang b/public/langs/zh_CN/margins.lang similarity index 100% rename from htdocs/langs/zh_CN/margins.lang rename to public/langs/zh_CN/margins.lang diff --git a/htdocs/langs/zh_CN/members.lang b/public/langs/zh_CN/members.lang similarity index 100% rename from htdocs/langs/zh_CN/members.lang rename to public/langs/zh_CN/members.lang diff --git a/htdocs/langs/zh_CN/oauth.lang b/public/langs/zh_CN/oauth.lang similarity index 100% rename from htdocs/langs/zh_CN/oauth.lang rename to public/langs/zh_CN/oauth.lang diff --git a/htdocs/langs/zh_CN/opensurvey.lang b/public/langs/zh_CN/opensurvey.lang similarity index 100% rename from htdocs/langs/zh_CN/opensurvey.lang rename to public/langs/zh_CN/opensurvey.lang diff --git a/htdocs/langs/zh_CN/orders.lang b/public/langs/zh_CN/orders.lang similarity index 100% rename from htdocs/langs/zh_CN/orders.lang rename to public/langs/zh_CN/orders.lang diff --git a/htdocs/langs/zh_CN/other.lang b/public/langs/zh_CN/other.lang similarity index 100% rename from htdocs/langs/zh_CN/other.lang rename to public/langs/zh_CN/other.lang diff --git a/htdocs/langs/zh_CN/paybox.lang b/public/langs/zh_CN/paybox.lang similarity index 100% rename from htdocs/langs/zh_CN/paybox.lang rename to public/langs/zh_CN/paybox.lang diff --git a/htdocs/langs/zh_CN/paypal.lang b/public/langs/zh_CN/paypal.lang similarity index 100% rename from htdocs/langs/zh_CN/paypal.lang rename to public/langs/zh_CN/paypal.lang diff --git a/htdocs/langs/zh_CN/printing.lang b/public/langs/zh_CN/printing.lang similarity index 100% rename from htdocs/langs/zh_CN/printing.lang rename to public/langs/zh_CN/printing.lang diff --git a/htdocs/langs/zh_CN/productbatch.lang b/public/langs/zh_CN/productbatch.lang similarity index 100% rename from htdocs/langs/zh_CN/productbatch.lang rename to public/langs/zh_CN/productbatch.lang diff --git a/htdocs/langs/zh_CN/products.lang b/public/langs/zh_CN/products.lang similarity index 100% rename from htdocs/langs/zh_CN/products.lang rename to public/langs/zh_CN/products.lang diff --git a/htdocs/langs/zh_CN/projects.lang b/public/langs/zh_CN/projects.lang similarity index 100% rename from htdocs/langs/zh_CN/projects.lang rename to public/langs/zh_CN/projects.lang diff --git a/htdocs/langs/zh_CN/propal.lang b/public/langs/zh_CN/propal.lang similarity index 100% rename from htdocs/langs/zh_CN/propal.lang rename to public/langs/zh_CN/propal.lang diff --git a/htdocs/langs/zh_CN/receiptprinter.lang b/public/langs/zh_CN/receiptprinter.lang similarity index 100% rename from htdocs/langs/zh_CN/receiptprinter.lang rename to public/langs/zh_CN/receiptprinter.lang diff --git a/htdocs/langs/zh_CN/resource.lang b/public/langs/zh_CN/resource.lang similarity index 100% rename from htdocs/langs/zh_CN/resource.lang rename to public/langs/zh_CN/resource.lang diff --git a/htdocs/langs/zh_CN/salaries.lang b/public/langs/zh_CN/salaries.lang similarity index 100% rename from htdocs/langs/zh_CN/salaries.lang rename to public/langs/zh_CN/salaries.lang diff --git a/htdocs/langs/zh_CN/sendings.lang b/public/langs/zh_CN/sendings.lang similarity index 100% rename from htdocs/langs/zh_CN/sendings.lang rename to public/langs/zh_CN/sendings.lang diff --git a/htdocs/langs/zh_CN/sms.lang b/public/langs/zh_CN/sms.lang similarity index 100% rename from htdocs/langs/zh_CN/sms.lang rename to public/langs/zh_CN/sms.lang diff --git a/htdocs/langs/zh_CN/stocks.lang b/public/langs/zh_CN/stocks.lang similarity index 100% rename from htdocs/langs/zh_CN/stocks.lang rename to public/langs/zh_CN/stocks.lang diff --git a/htdocs/langs/zh_CN/supplier_proposal.lang b/public/langs/zh_CN/supplier_proposal.lang similarity index 100% rename from htdocs/langs/zh_CN/supplier_proposal.lang rename to public/langs/zh_CN/supplier_proposal.lang diff --git a/htdocs/langs/zh_CN/suppliers.lang b/public/langs/zh_CN/suppliers.lang similarity index 100% rename from htdocs/langs/zh_CN/suppliers.lang rename to public/langs/zh_CN/suppliers.lang diff --git a/htdocs/langs/zh_CN/trips.lang b/public/langs/zh_CN/trips.lang similarity index 100% rename from htdocs/langs/zh_CN/trips.lang rename to public/langs/zh_CN/trips.lang diff --git a/htdocs/langs/zh_CN/users.lang b/public/langs/zh_CN/users.lang similarity index 100% rename from htdocs/langs/zh_CN/users.lang rename to public/langs/zh_CN/users.lang diff --git a/htdocs/langs/zh_CN/website.lang b/public/langs/zh_CN/website.lang similarity index 100% rename from htdocs/langs/zh_CN/website.lang rename to public/langs/zh_CN/website.lang diff --git a/htdocs/langs/zh_CN/withdrawals.lang b/public/langs/zh_CN/withdrawals.lang similarity index 100% rename from htdocs/langs/zh_CN/withdrawals.lang rename to public/langs/zh_CN/withdrawals.lang diff --git a/htdocs/langs/zh_CN/workflow.lang b/public/langs/zh_CN/workflow.lang similarity index 100% rename from htdocs/langs/zh_CN/workflow.lang rename to public/langs/zh_CN/workflow.lang diff --git a/htdocs/langs/zh_TW/accountancy.lang b/public/langs/zh_TW/accountancy.lang similarity index 100% rename from htdocs/langs/zh_TW/accountancy.lang rename to public/langs/zh_TW/accountancy.lang diff --git a/htdocs/langs/zh_TW/admin.lang b/public/langs/zh_TW/admin.lang similarity index 100% rename from htdocs/langs/zh_TW/admin.lang rename to public/langs/zh_TW/admin.lang diff --git a/htdocs/langs/zh_TW/agenda.lang b/public/langs/zh_TW/agenda.lang similarity index 100% rename from htdocs/langs/zh_TW/agenda.lang rename to public/langs/zh_TW/agenda.lang diff --git a/htdocs/langs/zh_TW/banks.lang b/public/langs/zh_TW/banks.lang similarity index 100% rename from htdocs/langs/zh_TW/banks.lang rename to public/langs/zh_TW/banks.lang diff --git a/htdocs/langs/zh_TW/bills.lang b/public/langs/zh_TW/bills.lang similarity index 100% rename from htdocs/langs/zh_TW/bills.lang rename to public/langs/zh_TW/bills.lang diff --git a/htdocs/langs/zh_TW/bookmarks.lang b/public/langs/zh_TW/bookmarks.lang similarity index 100% rename from htdocs/langs/zh_TW/bookmarks.lang rename to public/langs/zh_TW/bookmarks.lang diff --git a/htdocs/langs/zh_TW/boxes.lang b/public/langs/zh_TW/boxes.lang similarity index 100% rename from htdocs/langs/zh_TW/boxes.lang rename to public/langs/zh_TW/boxes.lang diff --git a/htdocs/langs/zh_TW/cashdesk.lang b/public/langs/zh_TW/cashdesk.lang similarity index 100% rename from htdocs/langs/zh_TW/cashdesk.lang rename to public/langs/zh_TW/cashdesk.lang diff --git a/htdocs/langs/zh_TW/categories.lang b/public/langs/zh_TW/categories.lang similarity index 100% rename from htdocs/langs/zh_TW/categories.lang rename to public/langs/zh_TW/categories.lang diff --git a/htdocs/langs/zh_TW/commercial.lang b/public/langs/zh_TW/commercial.lang similarity index 100% rename from htdocs/langs/zh_TW/commercial.lang rename to public/langs/zh_TW/commercial.lang diff --git a/htdocs/langs/zh_TW/companies.lang b/public/langs/zh_TW/companies.lang similarity index 100% rename from htdocs/langs/zh_TW/companies.lang rename to public/langs/zh_TW/companies.lang diff --git a/htdocs/langs/zh_TW/compta.lang b/public/langs/zh_TW/compta.lang similarity index 100% rename from htdocs/langs/zh_TW/compta.lang rename to public/langs/zh_TW/compta.lang diff --git a/htdocs/langs/zh_TW/contracts.lang b/public/langs/zh_TW/contracts.lang similarity index 100% rename from htdocs/langs/zh_TW/contracts.lang rename to public/langs/zh_TW/contracts.lang diff --git a/htdocs/langs/zh_TW/cron.lang b/public/langs/zh_TW/cron.lang similarity index 100% rename from htdocs/langs/zh_TW/cron.lang rename to public/langs/zh_TW/cron.lang diff --git a/htdocs/langs/zh_TW/deliveries.lang b/public/langs/zh_TW/deliveries.lang similarity index 100% rename from htdocs/langs/zh_TW/deliveries.lang rename to public/langs/zh_TW/deliveries.lang diff --git a/htdocs/langs/zh_TW/dict.lang b/public/langs/zh_TW/dict.lang similarity index 100% rename from htdocs/langs/zh_TW/dict.lang rename to public/langs/zh_TW/dict.lang diff --git a/htdocs/langs/zh_TW/donations.lang b/public/langs/zh_TW/donations.lang similarity index 100% rename from htdocs/langs/zh_TW/donations.lang rename to public/langs/zh_TW/donations.lang diff --git a/htdocs/langs/zh_TW/ecm.lang b/public/langs/zh_TW/ecm.lang similarity index 100% rename from htdocs/langs/zh_TW/ecm.lang rename to public/langs/zh_TW/ecm.lang diff --git a/htdocs/langs/zh_TW/errors.lang b/public/langs/zh_TW/errors.lang similarity index 100% rename from htdocs/langs/zh_TW/errors.lang rename to public/langs/zh_TW/errors.lang diff --git a/htdocs/langs/zh_TW/exports.lang b/public/langs/zh_TW/exports.lang similarity index 100% rename from htdocs/langs/zh_TW/exports.lang rename to public/langs/zh_TW/exports.lang diff --git a/htdocs/langs/zh_TW/externalsite.lang b/public/langs/zh_TW/externalsite.lang similarity index 100% rename from htdocs/langs/zh_TW/externalsite.lang rename to public/langs/zh_TW/externalsite.lang diff --git a/htdocs/langs/zh_TW/ftp.lang b/public/langs/zh_TW/ftp.lang similarity index 100% rename from htdocs/langs/zh_TW/ftp.lang rename to public/langs/zh_TW/ftp.lang diff --git a/htdocs/langs/zh_TW/help.lang b/public/langs/zh_TW/help.lang similarity index 100% rename from htdocs/langs/zh_TW/help.lang rename to public/langs/zh_TW/help.lang diff --git a/htdocs/langs/zh_TW/holiday.lang b/public/langs/zh_TW/holiday.lang similarity index 100% rename from htdocs/langs/zh_TW/holiday.lang rename to public/langs/zh_TW/holiday.lang diff --git a/htdocs/langs/zh_TW/hrm.lang b/public/langs/zh_TW/hrm.lang similarity index 100% rename from htdocs/langs/zh_TW/hrm.lang rename to public/langs/zh_TW/hrm.lang diff --git a/htdocs/langs/zh_TW/incoterm.lang b/public/langs/zh_TW/incoterm.lang similarity index 100% rename from htdocs/langs/zh_TW/incoterm.lang rename to public/langs/zh_TW/incoterm.lang diff --git a/htdocs/langs/zh_TW/install.lang b/public/langs/zh_TW/install.lang similarity index 100% rename from htdocs/langs/zh_TW/install.lang rename to public/langs/zh_TW/install.lang diff --git a/htdocs/langs/zh_TW/interventions.lang b/public/langs/zh_TW/interventions.lang similarity index 100% rename from htdocs/langs/zh_TW/interventions.lang rename to public/langs/zh_TW/interventions.lang diff --git a/htdocs/langs/zh_TW/languages.lang b/public/langs/zh_TW/languages.lang similarity index 100% rename from htdocs/langs/zh_TW/languages.lang rename to public/langs/zh_TW/languages.lang diff --git a/htdocs/langs/zh_TW/ldap.lang b/public/langs/zh_TW/ldap.lang similarity index 100% rename from htdocs/langs/zh_TW/ldap.lang rename to public/langs/zh_TW/ldap.lang diff --git a/htdocs/langs/zh_TW/link.lang b/public/langs/zh_TW/link.lang similarity index 100% rename from htdocs/langs/zh_TW/link.lang rename to public/langs/zh_TW/link.lang diff --git a/htdocs/langs/zh_TW/loan.lang b/public/langs/zh_TW/loan.lang similarity index 100% rename from htdocs/langs/zh_TW/loan.lang rename to public/langs/zh_TW/loan.lang diff --git a/htdocs/langs/zh_TW/mailmanspip.lang b/public/langs/zh_TW/mailmanspip.lang similarity index 100% rename from htdocs/langs/zh_TW/mailmanspip.lang rename to public/langs/zh_TW/mailmanspip.lang diff --git a/htdocs/langs/zh_TW/mails.lang b/public/langs/zh_TW/mails.lang similarity index 100% rename from htdocs/langs/zh_TW/mails.lang rename to public/langs/zh_TW/mails.lang diff --git a/htdocs/langs/zh_TW/main.lang b/public/langs/zh_TW/main.lang similarity index 100% rename from htdocs/langs/zh_TW/main.lang rename to public/langs/zh_TW/main.lang diff --git a/htdocs/langs/zh_TW/margins.lang b/public/langs/zh_TW/margins.lang similarity index 100% rename from htdocs/langs/zh_TW/margins.lang rename to public/langs/zh_TW/margins.lang diff --git a/htdocs/langs/zh_TW/members.lang b/public/langs/zh_TW/members.lang similarity index 100% rename from htdocs/langs/zh_TW/members.lang rename to public/langs/zh_TW/members.lang diff --git a/htdocs/langs/zh_TW/oauth.lang b/public/langs/zh_TW/oauth.lang similarity index 100% rename from htdocs/langs/zh_TW/oauth.lang rename to public/langs/zh_TW/oauth.lang diff --git a/htdocs/langs/zh_TW/opensurvey.lang b/public/langs/zh_TW/opensurvey.lang similarity index 100% rename from htdocs/langs/zh_TW/opensurvey.lang rename to public/langs/zh_TW/opensurvey.lang diff --git a/htdocs/langs/zh_TW/orders.lang b/public/langs/zh_TW/orders.lang similarity index 100% rename from htdocs/langs/zh_TW/orders.lang rename to public/langs/zh_TW/orders.lang diff --git a/htdocs/langs/zh_TW/other.lang b/public/langs/zh_TW/other.lang similarity index 100% rename from htdocs/langs/zh_TW/other.lang rename to public/langs/zh_TW/other.lang diff --git a/htdocs/langs/zh_TW/paybox.lang b/public/langs/zh_TW/paybox.lang similarity index 100% rename from htdocs/langs/zh_TW/paybox.lang rename to public/langs/zh_TW/paybox.lang diff --git a/htdocs/langs/zh_TW/paypal.lang b/public/langs/zh_TW/paypal.lang similarity index 100% rename from htdocs/langs/zh_TW/paypal.lang rename to public/langs/zh_TW/paypal.lang diff --git a/htdocs/langs/zh_TW/printing.lang b/public/langs/zh_TW/printing.lang similarity index 100% rename from htdocs/langs/zh_TW/printing.lang rename to public/langs/zh_TW/printing.lang diff --git a/htdocs/langs/zh_TW/productbatch.lang b/public/langs/zh_TW/productbatch.lang similarity index 100% rename from htdocs/langs/zh_TW/productbatch.lang rename to public/langs/zh_TW/productbatch.lang diff --git a/htdocs/langs/zh_TW/products.lang b/public/langs/zh_TW/products.lang similarity index 100% rename from htdocs/langs/zh_TW/products.lang rename to public/langs/zh_TW/products.lang diff --git a/htdocs/langs/zh_TW/projects.lang b/public/langs/zh_TW/projects.lang similarity index 100% rename from htdocs/langs/zh_TW/projects.lang rename to public/langs/zh_TW/projects.lang diff --git a/htdocs/langs/zh_TW/propal.lang b/public/langs/zh_TW/propal.lang similarity index 100% rename from htdocs/langs/zh_TW/propal.lang rename to public/langs/zh_TW/propal.lang diff --git a/htdocs/langs/zh_TW/receiptprinter.lang b/public/langs/zh_TW/receiptprinter.lang similarity index 100% rename from htdocs/langs/zh_TW/receiptprinter.lang rename to public/langs/zh_TW/receiptprinter.lang diff --git a/htdocs/langs/zh_TW/resource.lang b/public/langs/zh_TW/resource.lang similarity index 100% rename from htdocs/langs/zh_TW/resource.lang rename to public/langs/zh_TW/resource.lang diff --git a/htdocs/langs/zh_TW/salaries.lang b/public/langs/zh_TW/salaries.lang similarity index 100% rename from htdocs/langs/zh_TW/salaries.lang rename to public/langs/zh_TW/salaries.lang diff --git a/htdocs/langs/zh_TW/sendings.lang b/public/langs/zh_TW/sendings.lang similarity index 100% rename from htdocs/langs/zh_TW/sendings.lang rename to public/langs/zh_TW/sendings.lang diff --git a/htdocs/langs/zh_TW/sms.lang b/public/langs/zh_TW/sms.lang similarity index 100% rename from htdocs/langs/zh_TW/sms.lang rename to public/langs/zh_TW/sms.lang diff --git a/htdocs/langs/zh_TW/stocks.lang b/public/langs/zh_TW/stocks.lang similarity index 100% rename from htdocs/langs/zh_TW/stocks.lang rename to public/langs/zh_TW/stocks.lang diff --git a/htdocs/langs/zh_TW/supplier_proposal.lang b/public/langs/zh_TW/supplier_proposal.lang similarity index 100% rename from htdocs/langs/zh_TW/supplier_proposal.lang rename to public/langs/zh_TW/supplier_proposal.lang diff --git a/htdocs/langs/zh_TW/suppliers.lang b/public/langs/zh_TW/suppliers.lang similarity index 100% rename from htdocs/langs/zh_TW/suppliers.lang rename to public/langs/zh_TW/suppliers.lang diff --git a/htdocs/langs/zh_TW/trips.lang b/public/langs/zh_TW/trips.lang similarity index 100% rename from htdocs/langs/zh_TW/trips.lang rename to public/langs/zh_TW/trips.lang diff --git a/htdocs/langs/zh_TW/users.lang b/public/langs/zh_TW/users.lang similarity index 100% rename from htdocs/langs/zh_TW/users.lang rename to public/langs/zh_TW/users.lang diff --git a/htdocs/langs/zh_TW/website.lang b/public/langs/zh_TW/website.lang similarity index 100% rename from htdocs/langs/zh_TW/website.lang rename to public/langs/zh_TW/website.lang diff --git a/htdocs/langs/zh_TW/withdrawals.lang b/public/langs/zh_TW/withdrawals.lang similarity index 100% rename from htdocs/langs/zh_TW/withdrawals.lang rename to public/langs/zh_TW/withdrawals.lang diff --git a/htdocs/langs/zh_TW/workflow.lang b/public/langs/zh_TW/workflow.lang similarity index 100% rename from htdocs/langs/zh_TW/workflow.lang rename to public/langs/zh_TW/workflow.lang diff --git a/htdocs/livraison/card.php b/public/livraison/card.php similarity index 100% rename from htdocs/livraison/card.php rename to public/livraison/card.php diff --git a/htdocs/livraison/class/index.html b/public/livraison/class/index.html similarity index 100% rename from htdocs/livraison/class/index.html rename to public/livraison/class/index.html diff --git a/htdocs/livraison/class/livraison.class.php b/public/livraison/class/livraison.class.php similarity index 100% rename from htdocs/livraison/class/livraison.class.php rename to public/livraison/class/livraison.class.php diff --git a/htdocs/livraison/index.html b/public/livraison/index.html similarity index 100% rename from htdocs/livraison/index.html rename to public/livraison/index.html diff --git a/htdocs/loan/calc.php b/public/loan/calc.php similarity index 100% rename from htdocs/loan/calc.php rename to public/loan/calc.php diff --git a/htdocs/loan/card.php b/public/loan/card.php similarity index 100% rename from htdocs/loan/card.php rename to public/loan/card.php diff --git a/htdocs/loan/class/index.html b/public/loan/class/index.html similarity index 100% rename from htdocs/loan/class/index.html rename to public/loan/class/index.html diff --git a/htdocs/loan/class/loan.class.php b/public/loan/class/loan.class.php similarity index 100% rename from htdocs/loan/class/loan.class.php rename to public/loan/class/loan.class.php diff --git a/htdocs/loan/class/paymentloan.class.php b/public/loan/class/paymentloan.class.php similarity index 100% rename from htdocs/loan/class/paymentloan.class.php rename to public/loan/class/paymentloan.class.php diff --git a/htdocs/loan/document.php b/public/loan/document.php similarity index 100% rename from htdocs/loan/document.php rename to public/loan/document.php diff --git a/htdocs/loan/index.html b/public/loan/index.html similarity index 100% rename from htdocs/loan/index.html rename to public/loan/index.html diff --git a/htdocs/loan/index.php b/public/loan/index.php similarity index 100% rename from htdocs/loan/index.php rename to public/loan/index.php diff --git a/htdocs/loan/info.php b/public/loan/info.php similarity index 100% rename from htdocs/loan/info.php rename to public/loan/info.php diff --git a/htdocs/loan/note.php b/public/loan/note.php similarity index 100% rename from htdocs/loan/note.php rename to public/loan/note.php diff --git a/htdocs/loan/payment/card.php b/public/loan/payment/card.php similarity index 100% rename from htdocs/loan/payment/card.php rename to public/loan/payment/card.php diff --git a/htdocs/loan/payment/index.html b/public/loan/payment/index.html similarity index 100% rename from htdocs/loan/payment/index.html rename to public/loan/payment/index.html diff --git a/htdocs/loan/payment/payment.php b/public/loan/payment/payment.php similarity index 100% rename from htdocs/loan/payment/payment.php rename to public/loan/payment/payment.php diff --git a/htdocs/mailmanspip/class/index.html b/public/mailmanspip/class/index.html similarity index 100% rename from htdocs/mailmanspip/class/index.html rename to public/mailmanspip/class/index.html diff --git a/htdocs/mailmanspip/class/mailmanspip.class.php b/public/mailmanspip/class/mailmanspip.class.php similarity index 100% rename from htdocs/mailmanspip/class/mailmanspip.class.php rename to public/mailmanspip/class/mailmanspip.class.php diff --git a/htdocs/mailmanspip/index.html b/public/mailmanspip/index.html similarity index 100% rename from htdocs/mailmanspip/index.html rename to public/mailmanspip/index.html diff --git a/htdocs/main.inc.php b/public/main.inc.php similarity index 100% rename from htdocs/main.inc.php rename to public/main.inc.php diff --git a/htdocs/margin/admin/index.html b/public/margin/admin/index.html similarity index 100% rename from htdocs/margin/admin/index.html rename to public/margin/admin/index.html diff --git a/htdocs/margin/admin/margin.php b/public/margin/admin/margin.php similarity index 100% rename from htdocs/margin/admin/margin.php rename to public/margin/admin/margin.php diff --git a/htdocs/margin/agentMargins.php b/public/margin/agentMargins.php similarity index 100% rename from htdocs/margin/agentMargins.php rename to public/margin/agentMargins.php diff --git a/htdocs/margin/checkMargins.php b/public/margin/checkMargins.php similarity index 100% rename from htdocs/margin/checkMargins.php rename to public/margin/checkMargins.php diff --git a/htdocs/margin/customerMargins.php b/public/margin/customerMargins.php similarity index 100% rename from htdocs/margin/customerMargins.php rename to public/margin/customerMargins.php diff --git a/htdocs/margin/index.php b/public/margin/index.php similarity index 100% rename from htdocs/margin/index.php rename to public/margin/index.php diff --git a/htdocs/margin/lib/index.html b/public/margin/lib/index.html similarity index 100% rename from htdocs/margin/lib/index.html rename to public/margin/lib/index.html diff --git a/htdocs/margin/lib/margins.lib.php b/public/margin/lib/margins.lib.php similarity index 100% rename from htdocs/margin/lib/margins.lib.php rename to public/margin/lib/margins.lib.php diff --git a/htdocs/margin/productMargins.php b/public/margin/productMargins.php similarity index 100% rename from htdocs/margin/productMargins.php rename to public/margin/productMargins.php diff --git a/htdocs/margin/tabs/index.html b/public/margin/tabs/index.html similarity index 100% rename from htdocs/margin/tabs/index.html rename to public/margin/tabs/index.html diff --git a/htdocs/margin/tabs/productMargins.php b/public/margin/tabs/productMargins.php similarity index 100% rename from htdocs/margin/tabs/productMargins.php rename to public/margin/tabs/productMargins.php diff --git a/htdocs/margin/tabs/thirdpartyMargins.php b/public/margin/tabs/thirdpartyMargins.php similarity index 100% rename from htdocs/margin/tabs/thirdpartyMargins.php rename to public/margin/tabs/thirdpartyMargins.php diff --git a/htdocs/master.inc.php b/public/master.inc.php similarity index 100% rename from htdocs/master.inc.php rename to public/master.inc.php diff --git a/htdocs/multicurrency/class/multicurrency.class.php b/public/multicurrency/class/multicurrency.class.php similarity index 100% rename from htdocs/multicurrency/class/multicurrency.class.php rename to public/multicurrency/class/multicurrency.class.php diff --git a/htdocs/opensurvey/card.php b/public/opensurvey/card.php similarity index 100% rename from htdocs/opensurvey/card.php rename to public/opensurvey/card.php diff --git a/htdocs/opensurvey/class/index.html b/public/opensurvey/class/index.html similarity index 100% rename from htdocs/opensurvey/class/index.html rename to public/opensurvey/class/index.html diff --git a/htdocs/opensurvey/class/opensurveysondage.class.php b/public/opensurvey/class/opensurveysondage.class.php similarity index 100% rename from htdocs/opensurvey/class/opensurveysondage.class.php rename to public/opensurvey/class/opensurveysondage.class.php diff --git a/htdocs/opensurvey/css/index.html b/public/opensurvey/css/index.html similarity index 100% rename from htdocs/opensurvey/css/index.html rename to public/opensurvey/css/index.html diff --git a/htdocs/opensurvey/css/style.css b/public/opensurvey/css/style.css similarity index 100% rename from htdocs/opensurvey/css/style.css rename to public/opensurvey/css/style.css diff --git a/htdocs/opensurvey/exportcsv.php b/public/opensurvey/exportcsv.php similarity index 100% rename from htdocs/opensurvey/exportcsv.php rename to public/opensurvey/exportcsv.php diff --git a/htdocs/opensurvey/fonctions.php b/public/opensurvey/fonctions.php similarity index 100% rename from htdocs/opensurvey/fonctions.php rename to public/opensurvey/fonctions.php diff --git a/htdocs/opensurvey/img/accept-24.png b/public/opensurvey/img/accept-24.png similarity index 100% rename from htdocs/opensurvey/img/accept-24.png rename to public/opensurvey/img/accept-24.png diff --git a/htdocs/opensurvey/img/accept.png b/public/opensurvey/img/accept.png similarity index 100% rename from htdocs/opensurvey/img/accept.png rename to public/opensurvey/img/accept.png diff --git a/htdocs/opensurvey/img/add-16.png b/public/opensurvey/img/add-16.png similarity index 100% rename from htdocs/opensurvey/img/add-16.png rename to public/opensurvey/img/add-16.png diff --git a/htdocs/opensurvey/img/add-24.png b/public/opensurvey/img/add-24.png similarity index 100% rename from htdocs/opensurvey/img/add-24.png rename to public/opensurvey/img/add-24.png diff --git a/htdocs/opensurvey/img/calendar-32.png b/public/opensurvey/img/calendar-32.png similarity index 100% rename from htdocs/opensurvey/img/calendar-32.png rename to public/opensurvey/img/calendar-32.png diff --git a/htdocs/opensurvey/img/chart-32.png b/public/opensurvey/img/chart-32.png similarity index 100% rename from htdocs/opensurvey/img/chart-32.png rename to public/opensurvey/img/chart-32.png diff --git a/htdocs/opensurvey/img/date.png b/public/opensurvey/img/date.png similarity index 100% rename from htdocs/opensurvey/img/date.png rename to public/opensurvey/img/date.png diff --git a/htdocs/opensurvey/img/fforward.png b/public/opensurvey/img/fforward.png similarity index 100% rename from htdocs/opensurvey/img/fforward.png rename to public/opensurvey/img/fforward.png diff --git a/htdocs/opensurvey/img/index.html b/public/opensurvey/img/index.html similarity index 100% rename from htdocs/opensurvey/img/index.html rename to public/opensurvey/img/index.html diff --git a/htdocs/opensurvey/img/medaille.png b/public/opensurvey/img/medaille.png similarity index 100% rename from htdocs/opensurvey/img/medaille.png rename to public/opensurvey/img/medaille.png diff --git a/htdocs/opensurvey/img/next.png b/public/opensurvey/img/next.png similarity index 100% rename from htdocs/opensurvey/img/next.png rename to public/opensurvey/img/next.png diff --git a/htdocs/opensurvey/img/object_opensurvey.png b/public/opensurvey/img/object_opensurvey.png similarity index 100% rename from htdocs/opensurvey/img/object_opensurvey.png rename to public/opensurvey/img/object_opensurvey.png diff --git a/htdocs/opensurvey/img/opensurvey.png b/public/opensurvey/img/opensurvey.png similarity index 100% rename from htdocs/opensurvey/img/opensurvey.png rename to public/opensurvey/img/opensurvey.png diff --git a/htdocs/opensurvey/img/previous.png b/public/opensurvey/img/previous.png similarity index 100% rename from htdocs/opensurvey/img/previous.png rename to public/opensurvey/img/previous.png diff --git a/htdocs/opensurvey/img/rewind.png b/public/opensurvey/img/rewind.png similarity index 100% rename from htdocs/opensurvey/img/rewind.png rename to public/opensurvey/img/rewind.png diff --git a/htdocs/opensurvey/img/sondage2.png b/public/opensurvey/img/sondage2.png similarity index 100% rename from htdocs/opensurvey/img/sondage2.png rename to public/opensurvey/img/sondage2.png diff --git a/htdocs/opensurvey/index.php b/public/opensurvey/index.php similarity index 100% rename from htdocs/opensurvey/index.php rename to public/opensurvey/index.php diff --git a/htdocs/opensurvey/list.php b/public/opensurvey/list.php similarity index 100% rename from htdocs/opensurvey/list.php rename to public/opensurvey/list.php diff --git a/htdocs/opensurvey/results.php b/public/opensurvey/results.php similarity index 100% rename from htdocs/opensurvey/results.php rename to public/opensurvey/results.php diff --git a/htdocs/opensurvey/wizard/choix_autre.php b/public/opensurvey/wizard/choix_autre.php similarity index 100% rename from htdocs/opensurvey/wizard/choix_autre.php rename to public/opensurvey/wizard/choix_autre.php diff --git a/htdocs/opensurvey/wizard/choix_date.php b/public/opensurvey/wizard/choix_date.php similarity index 100% rename from htdocs/opensurvey/wizard/choix_date.php rename to public/opensurvey/wizard/choix_date.php diff --git a/htdocs/opensurvey/wizard/create_survey.php b/public/opensurvey/wizard/create_survey.php similarity index 100% rename from htdocs/opensurvey/wizard/create_survey.php rename to public/opensurvey/wizard/create_survey.php diff --git a/htdocs/opensurvey/wizard/index.php b/public/opensurvey/wizard/index.php similarity index 100% rename from htdocs/opensurvey/wizard/index.php rename to public/opensurvey/wizard/index.php diff --git a/htdocs/paybox/admin/index.html b/public/paybox/admin/index.html similarity index 100% rename from htdocs/paybox/admin/index.html rename to public/paybox/admin/index.html diff --git a/htdocs/paybox/admin/paybox.php b/public/paybox/admin/paybox.php similarity index 100% rename from htdocs/paybox/admin/paybox.php rename to public/paybox/admin/paybox.php diff --git a/htdocs/paybox/img/index.html b/public/paybox/img/index.html similarity index 100% rename from htdocs/paybox/img/index.html rename to public/paybox/img/index.html diff --git a/htdocs/paybox/img/object_paybox.png b/public/paybox/img/object_paybox.png similarity index 100% rename from htdocs/paybox/img/object_paybox.png rename to public/paybox/img/object_paybox.png diff --git a/htdocs/paybox/index.html b/public/paybox/index.html similarity index 100% rename from htdocs/paybox/index.html rename to public/paybox/index.html diff --git a/htdocs/paybox/lib/index.html b/public/paybox/lib/index.html similarity index 100% rename from htdocs/paybox/lib/index.html rename to public/paybox/lib/index.html diff --git a/htdocs/paybox/lib/paybox.lib.php b/public/paybox/lib/paybox.lib.php similarity index 100% rename from htdocs/paybox/lib/paybox.lib.php rename to public/paybox/lib/paybox.lib.php diff --git a/htdocs/paypal/admin/index.html b/public/paypal/admin/index.html similarity index 100% rename from htdocs/paypal/admin/index.html rename to public/paypal/admin/index.html diff --git a/htdocs/paypal/admin/paypal.php b/public/paypal/admin/paypal.php similarity index 100% rename from htdocs/paypal/admin/paypal.php rename to public/paypal/admin/paypal.php diff --git a/htdocs/paypal/img/index.html b/public/paypal/img/index.html similarity index 100% rename from htdocs/paypal/img/index.html rename to public/paypal/img/index.html diff --git a/htdocs/paypal/img/object_paypal.png b/public/paypal/img/object_paypal.png similarity index 100% rename from htdocs/paypal/img/object_paypal.png rename to public/paypal/img/object_paypal.png diff --git a/htdocs/paypal/index.html b/public/paypal/index.html similarity index 100% rename from htdocs/paypal/index.html rename to public/paypal/index.html diff --git a/htdocs/paypal/lib/index.html b/public/paypal/lib/index.html similarity index 100% rename from htdocs/paypal/lib/index.html rename to public/paypal/lib/index.html diff --git a/htdocs/paypal/lib/paypal.lib.php b/public/paypal/lib/paypal.lib.php similarity index 100% rename from htdocs/paypal/lib/paypal.lib.php rename to public/paypal/lib/paypal.lib.php diff --git a/htdocs/paypal/lib/paypalfunctions.lib.php b/public/paypal/lib/paypalfunctions.lib.php similarity index 100% rename from htdocs/paypal/lib/paypalfunctions.lib.php rename to public/paypal/lib/paypalfunctions.lib.php diff --git a/htdocs/printing/admin/index.html b/public/printing/admin/index.html similarity index 100% rename from htdocs/printing/admin/index.html rename to public/printing/admin/index.html diff --git a/htdocs/printing/admin/printing.php b/public/printing/admin/printing.php similarity index 100% rename from htdocs/printing/admin/printing.php rename to public/printing/admin/printing.php diff --git a/htdocs/printing/index.php b/public/printing/index.php similarity index 100% rename from htdocs/printing/index.php rename to public/printing/index.php diff --git a/htdocs/printing/lib/index.html b/public/printing/lib/index.html similarity index 100% rename from htdocs/printing/lib/index.html rename to public/printing/lib/index.html diff --git a/htdocs/printing/lib/printing.lib.php b/public/printing/lib/printing.lib.php similarity index 100% rename from htdocs/printing/lib/printing.lib.php rename to public/printing/lib/printing.lib.php diff --git a/htdocs/product/admin/dynamic_prices.php b/public/product/admin/dynamic_prices.php similarity index 100% rename from htdocs/product/admin/dynamic_prices.php rename to public/product/admin/dynamic_prices.php diff --git a/htdocs/product/admin/index.html b/public/product/admin/index.html similarity index 100% rename from htdocs/product/admin/index.html rename to public/product/admin/index.html diff --git a/htdocs/product/admin/price_rules.php b/public/product/admin/price_rules.php similarity index 100% rename from htdocs/product/admin/price_rules.php rename to public/product/admin/price_rules.php diff --git a/htdocs/product/admin/product.php b/public/product/admin/product.php similarity index 100% rename from htdocs/product/admin/product.php rename to public/product/admin/product.php diff --git a/htdocs/product/admin/product_extrafields.php b/public/product/admin/product_extrafields.php similarity index 100% rename from htdocs/product/admin/product_extrafields.php rename to public/product/admin/product_extrafields.php diff --git a/htdocs/product/admin/product_lot_extrafields.php b/public/product/admin/product_lot_extrafields.php similarity index 100% rename from htdocs/product/admin/product_lot_extrafields.php rename to public/product/admin/product_lot_extrafields.php diff --git a/htdocs/product/admin/product_tools.php b/public/product/admin/product_tools.php similarity index 100% rename from htdocs/product/admin/product_tools.php rename to public/product/admin/product_tools.php diff --git a/htdocs/product/ajax/index.html b/public/product/ajax/index.html similarity index 100% rename from htdocs/product/ajax/index.html rename to public/product/ajax/index.html diff --git a/htdocs/product/ajax/products.php b/public/product/ajax/products.php similarity index 100% rename from htdocs/product/ajax/products.php rename to public/product/ajax/products.php diff --git a/htdocs/product/canvas/index.html b/public/product/canvas/index.html similarity index 100% rename from htdocs/product/canvas/index.html rename to public/product/canvas/index.html diff --git a/htdocs/product/canvas/product/actions_card_product.class.php b/public/product/canvas/product/actions_card_product.class.php similarity index 100% rename from htdocs/product/canvas/product/actions_card_product.class.php rename to public/product/canvas/product/actions_card_product.class.php diff --git a/htdocs/product/canvas/product/index.html b/public/product/canvas/product/index.html similarity index 100% rename from htdocs/product/canvas/product/index.html rename to public/product/canvas/product/index.html diff --git a/htdocs/product/canvas/product/tpl/card_create.tpl.php b/public/product/canvas/product/tpl/card_create.tpl.php similarity index 100% rename from htdocs/product/canvas/product/tpl/card_create.tpl.php rename to public/product/canvas/product/tpl/card_create.tpl.php diff --git a/htdocs/product/canvas/product/tpl/card_edit.tpl.php b/public/product/canvas/product/tpl/card_edit.tpl.php similarity index 100% rename from htdocs/product/canvas/product/tpl/card_edit.tpl.php rename to public/product/canvas/product/tpl/card_edit.tpl.php diff --git a/htdocs/product/canvas/product/tpl/card_view.tpl.php b/public/product/canvas/product/tpl/card_view.tpl.php similarity index 100% rename from htdocs/product/canvas/product/tpl/card_view.tpl.php rename to public/product/canvas/product/tpl/card_view.tpl.php diff --git a/htdocs/product/canvas/product/tpl/index.html b/public/product/canvas/product/tpl/index.html similarity index 100% rename from htdocs/product/canvas/product/tpl/index.html rename to public/product/canvas/product/tpl/index.html diff --git a/htdocs/product/canvas/product/tpl/list.tpl.php b/public/product/canvas/product/tpl/list.tpl.php similarity index 100% rename from htdocs/product/canvas/product/tpl/list.tpl.php rename to public/product/canvas/product/tpl/list.tpl.php diff --git a/htdocs/product/canvas/service/actions_card_service.class.php b/public/product/canvas/service/actions_card_service.class.php similarity index 100% rename from htdocs/product/canvas/service/actions_card_service.class.php rename to public/product/canvas/service/actions_card_service.class.php diff --git a/htdocs/product/canvas/service/index.html b/public/product/canvas/service/index.html similarity index 100% rename from htdocs/product/canvas/service/index.html rename to public/product/canvas/service/index.html diff --git a/htdocs/product/canvas/service/tpl/card_create.tpl.php b/public/product/canvas/service/tpl/card_create.tpl.php similarity index 100% rename from htdocs/product/canvas/service/tpl/card_create.tpl.php rename to public/product/canvas/service/tpl/card_create.tpl.php diff --git a/htdocs/product/canvas/service/tpl/card_edit.tpl.php b/public/product/canvas/service/tpl/card_edit.tpl.php similarity index 100% rename from htdocs/product/canvas/service/tpl/card_edit.tpl.php rename to public/product/canvas/service/tpl/card_edit.tpl.php diff --git a/htdocs/product/canvas/service/tpl/card_view.tpl.php b/public/product/canvas/service/tpl/card_view.tpl.php similarity index 100% rename from htdocs/product/canvas/service/tpl/card_view.tpl.php rename to public/product/canvas/service/tpl/card_view.tpl.php diff --git a/htdocs/product/canvas/service/tpl/index.html b/public/product/canvas/service/tpl/index.html similarity index 100% rename from htdocs/product/canvas/service/tpl/index.html rename to public/product/canvas/service/tpl/index.html diff --git a/htdocs/product/canvas/service/tpl/list.tpl.php b/public/product/canvas/service/tpl/list.tpl.php similarity index 100% rename from htdocs/product/canvas/service/tpl/list.tpl.php rename to public/product/canvas/service/tpl/list.tpl.php diff --git a/htdocs/product/card.php b/public/product/card.php similarity index 100% rename from htdocs/product/card.php rename to public/product/card.php diff --git a/htdocs/product/class/api_deprecated_product.class.php b/public/product/class/api_deprecated_product.class.php similarity index 100% rename from htdocs/product/class/api_deprecated_product.class.php rename to public/product/class/api_deprecated_product.class.php diff --git a/htdocs/product/class/api_products.class.php b/public/product/class/api_products.class.php similarity index 100% rename from htdocs/product/class/api_products.class.php rename to public/product/class/api_products.class.php diff --git a/htdocs/product/class/html.formproduct.class.php b/public/product/class/html.formproduct.class.php similarity index 100% rename from htdocs/product/class/html.formproduct.class.php rename to public/product/class/html.formproduct.class.php diff --git a/htdocs/product/class/index.html b/public/product/class/index.html similarity index 100% rename from htdocs/product/class/index.html rename to public/product/class/index.html diff --git a/htdocs/product/class/product.class.php b/public/product/class/product.class.php similarity index 100% rename from htdocs/product/class/product.class.php rename to public/product/class/product.class.php diff --git a/htdocs/product/class/productbatch.class.php b/public/product/class/productbatch.class.php similarity index 100% rename from htdocs/product/class/productbatch.class.php rename to public/product/class/productbatch.class.php diff --git a/htdocs/product/class/productcustomerprice.class.php b/public/product/class/productcustomerprice.class.php similarity index 100% rename from htdocs/product/class/productcustomerprice.class.php rename to public/product/class/productcustomerprice.class.php diff --git a/htdocs/product/class/propalmergepdfproduct.class.php b/public/product/class/propalmergepdfproduct.class.php similarity index 100% rename from htdocs/product/class/propalmergepdfproduct.class.php rename to public/product/class/propalmergepdfproduct.class.php diff --git a/htdocs/product/class/service.class.php b/public/product/class/service.class.php similarity index 100% rename from htdocs/product/class/service.class.php rename to public/product/class/service.class.php diff --git a/htdocs/product/composition/card.php b/public/product/composition/card.php similarity index 100% rename from htdocs/product/composition/card.php rename to public/product/composition/card.php diff --git a/htdocs/product/composition/index.html b/public/product/composition/index.html similarity index 100% rename from htdocs/product/composition/index.html rename to public/product/composition/index.html diff --git a/htdocs/product/document.php b/public/product/document.php similarity index 100% rename from htdocs/product/document.php rename to public/product/document.php diff --git a/htdocs/product/dynamic_price/class/price_expression.class.php b/public/product/dynamic_price/class/price_expression.class.php similarity index 100% rename from htdocs/product/dynamic_price/class/price_expression.class.php rename to public/product/dynamic_price/class/price_expression.class.php diff --git a/htdocs/product/dynamic_price/class/price_global_variable.class.php b/public/product/dynamic_price/class/price_global_variable.class.php similarity index 100% rename from htdocs/product/dynamic_price/class/price_global_variable.class.php rename to public/product/dynamic_price/class/price_global_variable.class.php diff --git a/htdocs/product/dynamic_price/class/price_global_variable_updater.class.php b/public/product/dynamic_price/class/price_global_variable_updater.class.php similarity index 100% rename from htdocs/product/dynamic_price/class/price_global_variable_updater.class.php rename to public/product/dynamic_price/class/price_global_variable_updater.class.php diff --git a/htdocs/product/dynamic_price/class/price_parser.class.php b/public/product/dynamic_price/class/price_parser.class.php similarity index 100% rename from htdocs/product/dynamic_price/class/price_parser.class.php rename to public/product/dynamic_price/class/price_parser.class.php diff --git a/htdocs/product/dynamic_price/editor.php b/public/product/dynamic_price/editor.php similarity index 100% rename from htdocs/product/dynamic_price/editor.php rename to public/product/dynamic_price/editor.php diff --git a/htdocs/product/fournisseurs.php b/public/product/fournisseurs.php similarity index 100% rename from htdocs/product/fournisseurs.php rename to public/product/fournisseurs.php diff --git a/htdocs/product/index.php b/public/product/index.php similarity index 100% rename from htdocs/product/index.php rename to public/product/index.php diff --git a/htdocs/product/info.php b/public/product/info.php similarity index 100% rename from htdocs/product/info.php rename to public/product/info.php diff --git a/htdocs/product/list.php b/public/product/list.php similarity index 100% rename from htdocs/product/list.php rename to public/product/list.php diff --git a/htdocs/product/note.php b/public/product/note.php similarity index 100% rename from htdocs/product/note.php rename to public/product/note.php diff --git a/htdocs/product/popuprop.php b/public/product/popuprop.php similarity index 100% rename from htdocs/product/popuprop.php rename to public/product/popuprop.php diff --git a/htdocs/product/price.php b/public/product/price.php similarity index 100% rename from htdocs/product/price.php rename to public/product/price.php diff --git a/htdocs/product/reassort.php b/public/product/reassort.php similarity index 100% rename from htdocs/product/reassort.php rename to public/product/reassort.php diff --git a/htdocs/product/reassortlot.php b/public/product/reassortlot.php similarity index 100% rename from htdocs/product/reassortlot.php rename to public/product/reassortlot.php diff --git a/htdocs/product/stats/card.php b/public/product/stats/card.php similarity index 100% rename from htdocs/product/stats/card.php rename to public/product/stats/card.php diff --git a/htdocs/product/stats/commande.php b/public/product/stats/commande.php similarity index 100% rename from htdocs/product/stats/commande.php rename to public/product/stats/commande.php diff --git a/htdocs/product/stats/commande_fournisseur.php b/public/product/stats/commande_fournisseur.php similarity index 100% rename from htdocs/product/stats/commande_fournisseur.php rename to public/product/stats/commande_fournisseur.php diff --git a/htdocs/product/stats/contrat.php b/public/product/stats/contrat.php similarity index 100% rename from htdocs/product/stats/contrat.php rename to public/product/stats/contrat.php diff --git a/htdocs/product/stats/facture.php b/public/product/stats/facture.php similarity index 100% rename from htdocs/product/stats/facture.php rename to public/product/stats/facture.php diff --git a/htdocs/product/stats/facture_fournisseur.php b/public/product/stats/facture_fournisseur.php similarity index 100% rename from htdocs/product/stats/facture_fournisseur.php rename to public/product/stats/facture_fournisseur.php diff --git a/htdocs/product/stats/index.html b/public/product/stats/index.html similarity index 100% rename from htdocs/product/stats/index.html rename to public/product/stats/index.html diff --git a/htdocs/product/stats/propal.php b/public/product/stats/propal.php similarity index 100% rename from htdocs/product/stats/propal.php rename to public/product/stats/propal.php diff --git a/htdocs/product/stock/card.php b/public/product/stock/card.php similarity index 100% rename from htdocs/product/stock/card.php rename to public/product/stock/card.php diff --git a/htdocs/product/stock/class/api_stockmovements.class.php b/public/product/stock/class/api_stockmovements.class.php similarity index 100% rename from htdocs/product/stock/class/api_stockmovements.class.php rename to public/product/stock/class/api_stockmovements.class.php diff --git a/htdocs/product/stock/class/api_warehouses.class.php b/public/product/stock/class/api_warehouses.class.php similarity index 100% rename from htdocs/product/stock/class/api_warehouses.class.php rename to public/product/stock/class/api_warehouses.class.php diff --git a/htdocs/product/stock/class/entrepot.class.php b/public/product/stock/class/entrepot.class.php similarity index 100% rename from htdocs/product/stock/class/entrepot.class.php rename to public/product/stock/class/entrepot.class.php diff --git a/htdocs/product/stock/class/index.html b/public/product/stock/class/index.html similarity index 100% rename from htdocs/product/stock/class/index.html rename to public/product/stock/class/index.html diff --git a/htdocs/product/stock/class/mouvementstock.class.php b/public/product/stock/class/mouvementstock.class.php similarity index 100% rename from htdocs/product/stock/class/mouvementstock.class.php rename to public/product/stock/class/mouvementstock.class.php diff --git a/htdocs/product/stock/class/productlot.class.php b/public/product/stock/class/productlot.class.php similarity index 100% rename from htdocs/product/stock/class/productlot.class.php rename to public/product/stock/class/productlot.class.php diff --git a/htdocs/product/stock/class/productstockentrepot.class.php b/public/product/stock/class/productstockentrepot.class.php similarity index 100% rename from htdocs/product/stock/class/productstockentrepot.class.php rename to public/product/stock/class/productstockentrepot.class.php diff --git a/htdocs/product/stock/fiche-valo.php b/public/product/stock/fiche-valo.php similarity index 100% rename from htdocs/product/stock/fiche-valo.php rename to public/product/stock/fiche-valo.php diff --git a/htdocs/product/stock/img/index.html b/public/product/stock/img/index.html similarity index 100% rename from htdocs/product/stock/img/index.html rename to public/product/stock/img/index.html diff --git a/htdocs/product/stock/img/no.png b/public/product/stock/img/no.png similarity index 100% rename from htdocs/product/stock/img/no.png rename to public/product/stock/img/no.png diff --git a/htdocs/product/stock/img/yes.png b/public/product/stock/img/yes.png similarity index 100% rename from htdocs/product/stock/img/yes.png rename to public/product/stock/img/yes.png diff --git a/htdocs/product/stock/index.php b/public/product/stock/index.php similarity index 100% rename from htdocs/product/stock/index.php rename to public/product/stock/index.php diff --git a/htdocs/product/stock/info.php b/public/product/stock/info.php similarity index 100% rename from htdocs/product/stock/info.php rename to public/product/stock/info.php diff --git a/htdocs/product/stock/lib/index.html b/public/product/stock/lib/index.html similarity index 100% rename from htdocs/product/stock/lib/index.html rename to public/product/stock/lib/index.html diff --git a/htdocs/product/stock/lib/replenishment.lib.php b/public/product/stock/lib/replenishment.lib.php similarity index 100% rename from htdocs/product/stock/lib/replenishment.lib.php rename to public/product/stock/lib/replenishment.lib.php diff --git a/htdocs/product/stock/list.php b/public/product/stock/list.php similarity index 100% rename from htdocs/product/stock/list.php rename to public/product/stock/list.php diff --git a/htdocs/product/stock/massstockmove.php b/public/product/stock/massstockmove.php similarity index 100% rename from htdocs/product/stock/massstockmove.php rename to public/product/stock/massstockmove.php diff --git a/htdocs/product/stock/mouvement.php b/public/product/stock/mouvement.php similarity index 100% rename from htdocs/product/stock/mouvement.php rename to public/product/stock/mouvement.php diff --git a/htdocs/product/stock/product.php b/public/product/stock/product.php similarity index 100% rename from htdocs/product/stock/product.php rename to public/product/stock/product.php diff --git a/htdocs/product/stock/productlot_card.php b/public/product/stock/productlot_card.php similarity index 100% rename from htdocs/product/stock/productlot_card.php rename to public/product/stock/productlot_card.php diff --git a/htdocs/product/stock/productlot_list.php b/public/product/stock/productlot_list.php similarity index 100% rename from htdocs/product/stock/productlot_list.php rename to public/product/stock/productlot_list.php diff --git a/htdocs/product/stock/replenish.php b/public/product/stock/replenish.php similarity index 100% rename from htdocs/product/stock/replenish.php rename to public/product/stock/replenish.php diff --git a/htdocs/product/stock/replenishorders.php b/public/product/stock/replenishorders.php similarity index 100% rename from htdocs/product/stock/replenishorders.php rename to public/product/stock/replenishorders.php diff --git a/htdocs/product/stock/tpl/stockcorrection.tpl.php b/public/product/stock/tpl/stockcorrection.tpl.php similarity index 100% rename from htdocs/product/stock/tpl/stockcorrection.tpl.php rename to public/product/stock/tpl/stockcorrection.tpl.php diff --git a/htdocs/product/stock/tpl/stocktransfer.tpl.php b/public/product/stock/tpl/stocktransfer.tpl.php similarity index 100% rename from htdocs/product/stock/tpl/stocktransfer.tpl.php rename to public/product/stock/tpl/stocktransfer.tpl.php diff --git a/htdocs/product/stock/valo.php b/public/product/stock/valo.php similarity index 100% rename from htdocs/product/stock/valo.php rename to public/product/stock/valo.php diff --git a/htdocs/product/traduction.php b/public/product/traduction.php similarity index 100% rename from htdocs/product/traduction.php rename to public/product/traduction.php diff --git a/htdocs/projet/activity/index.php b/public/projet/activity/index.php similarity index 100% rename from htdocs/projet/activity/index.php rename to public/projet/activity/index.php diff --git a/htdocs/projet/activity/perday.php b/public/projet/activity/perday.php similarity index 100% rename from htdocs/projet/activity/perday.php rename to public/projet/activity/perday.php diff --git a/htdocs/projet/activity/perweek.php b/public/projet/activity/perweek.php similarity index 100% rename from htdocs/projet/activity/perweek.php rename to public/projet/activity/perweek.php diff --git a/htdocs/projet/admin/index.html b/public/projet/admin/index.html similarity index 100% rename from htdocs/projet/admin/index.html rename to public/projet/admin/index.html diff --git a/htdocs/projet/admin/project.php b/public/projet/admin/project.php similarity index 100% rename from htdocs/projet/admin/project.php rename to public/projet/admin/project.php diff --git a/htdocs/projet/admin/project_extrafields.php b/public/projet/admin/project_extrafields.php similarity index 100% rename from htdocs/projet/admin/project_extrafields.php rename to public/projet/admin/project_extrafields.php diff --git a/htdocs/projet/admin/project_task_extrafields.php b/public/projet/admin/project_task_extrafields.php similarity index 100% rename from htdocs/projet/admin/project_task_extrafields.php rename to public/projet/admin/project_task_extrafields.php diff --git a/htdocs/projet/ajax/projects.php b/public/projet/ajax/projects.php similarity index 100% rename from htdocs/projet/ajax/projects.php rename to public/projet/ajax/projects.php diff --git a/htdocs/projet/card.php b/public/projet/card.php similarity index 100% rename from htdocs/projet/card.php rename to public/projet/card.php diff --git a/htdocs/projet/class/api_projects.class.php b/public/projet/class/api_projects.class.php similarity index 100% rename from htdocs/projet/class/api_projects.class.php rename to public/projet/class/api_projects.class.php diff --git a/htdocs/projet/class/api_tasks.class.php b/public/projet/class/api_tasks.class.php similarity index 100% rename from htdocs/projet/class/api_tasks.class.php rename to public/projet/class/api_tasks.class.php diff --git a/htdocs/projet/class/index.html b/public/projet/class/index.html similarity index 100% rename from htdocs/projet/class/index.html rename to public/projet/class/index.html diff --git a/htdocs/projet/class/project.class.php b/public/projet/class/project.class.php similarity index 100% rename from htdocs/projet/class/project.class.php rename to public/projet/class/project.class.php diff --git a/htdocs/projet/class/projectstats.class.php b/public/projet/class/projectstats.class.php similarity index 100% rename from htdocs/projet/class/projectstats.class.php rename to public/projet/class/projectstats.class.php diff --git a/htdocs/projet/class/task.class.php b/public/projet/class/task.class.php similarity index 100% rename from htdocs/projet/class/task.class.php rename to public/projet/class/task.class.php diff --git a/htdocs/projet/contact.php b/public/projet/contact.php similarity index 100% rename from htdocs/projet/contact.php rename to public/projet/contact.php diff --git a/htdocs/projet/document.php b/public/projet/document.php similarity index 100% rename from htdocs/projet/document.php rename to public/projet/document.php diff --git a/htdocs/projet/element.php b/public/projet/element.php similarity index 100% rename from htdocs/projet/element.php rename to public/projet/element.php diff --git a/htdocs/projet/ganttchart.inc.php b/public/projet/ganttchart.inc.php similarity index 100% rename from htdocs/projet/ganttchart.inc.php rename to public/projet/ganttchart.inc.php diff --git a/htdocs/projet/ganttview.php b/public/projet/ganttview.php similarity index 100% rename from htdocs/projet/ganttview.php rename to public/projet/ganttview.php diff --git a/htdocs/projet/graph_opportunities.inc.php b/public/projet/graph_opportunities.inc.php similarity index 100% rename from htdocs/projet/graph_opportunities.inc.php rename to public/projet/graph_opportunities.inc.php diff --git a/htdocs/projet/index.php b/public/projet/index.php similarity index 100% rename from htdocs/projet/index.php rename to public/projet/index.php diff --git a/htdocs/projet/info.php b/public/projet/info.php similarity index 100% rename from htdocs/projet/info.php rename to public/projet/info.php diff --git a/htdocs/projet/jsgantt_language.js.php b/public/projet/jsgantt_language.js.php similarity index 100% rename from htdocs/projet/jsgantt_language.js.php rename to public/projet/jsgantt_language.js.php diff --git a/htdocs/projet/list.php b/public/projet/list.php similarity index 100% rename from htdocs/projet/list.php rename to public/projet/list.php diff --git a/htdocs/projet/note.php b/public/projet/note.php similarity index 100% rename from htdocs/projet/note.php rename to public/projet/note.php diff --git a/htdocs/projet/stats/index.php b/public/projet/stats/index.php similarity index 100% rename from htdocs/projet/stats/index.php rename to public/projet/stats/index.php diff --git a/htdocs/projet/tasks.php b/public/projet/tasks.php similarity index 100% rename from htdocs/projet/tasks.php rename to public/projet/tasks.php diff --git a/htdocs/projet/tasks/contact.php b/public/projet/tasks/contact.php similarity index 100% rename from htdocs/projet/tasks/contact.php rename to public/projet/tasks/contact.php diff --git a/htdocs/projet/tasks/document.php b/public/projet/tasks/document.php similarity index 100% rename from htdocs/projet/tasks/document.php rename to public/projet/tasks/document.php diff --git a/htdocs/projet/tasks/list.php b/public/projet/tasks/list.php similarity index 100% rename from htdocs/projet/tasks/list.php rename to public/projet/tasks/list.php diff --git a/htdocs/projet/tasks/note.php b/public/projet/tasks/note.php similarity index 100% rename from htdocs/projet/tasks/note.php rename to public/projet/tasks/note.php diff --git a/htdocs/projet/tasks/task.php b/public/projet/tasks/task.php similarity index 100% rename from htdocs/projet/tasks/task.php rename to public/projet/tasks/task.php diff --git a/htdocs/projet/tasks/time.php b/public/projet/tasks/time.php similarity index 100% rename from htdocs/projet/tasks/time.php rename to public/projet/tasks/time.php diff --git a/htdocs/public/agenda/agendaexport.php b/public/public/agenda/agendaexport.php similarity index 100% rename from htdocs/public/agenda/agendaexport.php rename to public/public/agenda/agendaexport.php diff --git a/htdocs/public/agenda/index.php b/public/public/agenda/index.php similarity index 100% rename from htdocs/public/agenda/index.php rename to public/public/agenda/index.php diff --git a/htdocs/public/cron/cron_run_jobs.php b/public/public/cron/cron_run_jobs.php similarity index 100% rename from htdocs/public/cron/cron_run_jobs.php rename to public/public/cron/cron_run_jobs.php diff --git a/htdocs/public/cron/index.html b/public/public/cron/index.html similarity index 100% rename from htdocs/public/cron/index.html rename to public/public/cron/index.html diff --git a/htdocs/public/demo/dolibarr_screenshot2.png b/public/public/demo/dolibarr_screenshot2.png similarity index 100% rename from htdocs/public/demo/dolibarr_screenshot2.png rename to public/public/demo/dolibarr_screenshot2.png diff --git a/htdocs/public/demo/dolibarr_screenshot6.png b/public/public/demo/dolibarr_screenshot6.png similarity index 100% rename from htdocs/public/demo/dolibarr_screenshot6.png rename to public/public/demo/dolibarr_screenshot6.png diff --git a/htdocs/public/demo/dolibarr_screenshot8.png b/public/public/demo/dolibarr_screenshot8.png similarity index 100% rename from htdocs/public/demo/dolibarr_screenshot8.png rename to public/public/demo/dolibarr_screenshot8.png diff --git a/htdocs/public/demo/dolibarr_screenshot9.png b/public/public/demo/dolibarr_screenshot9.png similarity index 100% rename from htdocs/public/demo/dolibarr_screenshot9.png rename to public/public/demo/dolibarr_screenshot9.png diff --git a/htdocs/public/demo/index.php b/public/public/demo/index.php similarity index 100% rename from htdocs/public/demo/index.php rename to public/public/demo/index.php diff --git a/htdocs/public/donations/donateurs_code.php b/public/public/donations/donateurs_code.php similarity index 100% rename from htdocs/public/donations/donateurs_code.php rename to public/public/donations/donateurs_code.php diff --git a/htdocs/public/donations/index.php b/public/public/donations/index.php similarity index 100% rename from htdocs/public/donations/index.php rename to public/public/donations/index.php diff --git a/htdocs/public/emailing/index.html b/public/public/emailing/index.html similarity index 100% rename from htdocs/public/emailing/index.html rename to public/public/emailing/index.html diff --git a/htdocs/public/emailing/mailing-read.php b/public/public/emailing/mailing-read.php similarity index 100% rename from htdocs/public/emailing/mailing-read.php rename to public/public/emailing/mailing-read.php diff --git a/htdocs/public/emailing/mailing-unsubscribe.php b/public/public/emailing/mailing-unsubscribe.php similarity index 100% rename from htdocs/public/emailing/mailing-unsubscribe.php rename to public/public/emailing/mailing-unsubscribe.php diff --git a/htdocs/public/error-401.php b/public/public/error-401.php similarity index 100% rename from htdocs/public/error-401.php rename to public/public/error-401.php diff --git a/htdocs/public/error-404.php b/public/public/error-404.php similarity index 100% rename from htdocs/public/error-404.php rename to public/public/error-404.php diff --git a/htdocs/public/index.php b/public/public/index.php similarity index 100% rename from htdocs/public/index.php rename to public/public/index.php diff --git a/htdocs/public/members/index.php b/public/public/members/index.php similarity index 100% rename from htdocs/public/members/index.php rename to public/public/members/index.php diff --git a/htdocs/public/members/new.php b/public/public/members/new.php similarity index 100% rename from htdocs/public/members/new.php rename to public/public/members/new.php diff --git a/htdocs/public/members/public_card.php b/public/public/members/public_card.php similarity index 100% rename from htdocs/public/members/public_card.php rename to public/public/members/public_card.php diff --git a/htdocs/public/members/public_list.php b/public/public/members/public_list.php similarity index 100% rename from htdocs/public/members/public_list.php rename to public/public/members/public_list.php diff --git a/htdocs/public/notice.php b/public/public/notice.php similarity index 100% rename from htdocs/public/notice.php rename to public/public/notice.php diff --git a/htdocs/public/opensurvey/index.html b/public/public/opensurvey/index.html similarity index 100% rename from htdocs/public/opensurvey/index.html rename to public/public/opensurvey/index.html diff --git a/htdocs/public/opensurvey/studs.php b/public/public/opensurvey/studs.php similarity index 100% rename from htdocs/public/opensurvey/studs.php rename to public/public/opensurvey/studs.php diff --git a/htdocs/public/paybox/index.php b/public/public/paybox/index.php similarity index 100% rename from htdocs/public/paybox/index.php rename to public/public/paybox/index.php diff --git a/htdocs/public/paybox/newpayment.php b/public/public/paybox/newpayment.php similarity index 100% rename from htdocs/public/paybox/newpayment.php rename to public/public/paybox/newpayment.php diff --git a/htdocs/public/paybox/paymentko.php b/public/public/paybox/paymentko.php similarity index 100% rename from htdocs/public/paybox/paymentko.php rename to public/public/paybox/paymentko.php diff --git a/htdocs/public/paybox/paymentok.php b/public/public/paybox/paymentok.php similarity index 100% rename from htdocs/public/paybox/paymentok.php rename to public/public/paybox/paymentok.php diff --git a/htdocs/public/paypal/index.php b/public/public/paypal/index.php similarity index 100% rename from htdocs/public/paypal/index.php rename to public/public/paypal/index.php diff --git a/htdocs/public/paypal/newpayment.php b/public/public/paypal/newpayment.php similarity index 100% rename from htdocs/public/paypal/newpayment.php rename to public/public/paypal/newpayment.php diff --git a/htdocs/public/paypal/paymentko.php b/public/public/paypal/paymentko.php similarity index 100% rename from htdocs/public/paypal/paymentko.php rename to public/public/paypal/paymentko.php diff --git a/htdocs/public/paypal/paymentok.php b/public/public/paypal/paymentok.php similarity index 100% rename from htdocs/public/paypal/paymentok.php rename to public/public/paypal/paymentok.php diff --git a/htdocs/public/test/test_arrays.php b/public/public/test/test_arrays.php similarity index 100% rename from htdocs/public/test/test_arrays.php rename to public/public/test/test_arrays.php diff --git a/htdocs/public/test/test_forms.php b/public/public/test/test_forms.php similarity index 100% rename from htdocs/public/test/test_forms.php rename to public/public/test/test_forms.php diff --git a/htdocs/public/theme/common/index.php b/public/public/theme/common/index.php similarity index 100% rename from htdocs/public/theme/common/index.php rename to public/public/theme/common/index.php diff --git a/htdocs/public/theme/common/nophoto.png b/public/public/theme/common/nophoto.png similarity index 100% rename from htdocs/public/theme/common/nophoto.png rename to public/public/theme/common/nophoto.png diff --git a/htdocs/public/theme/common/user_anonymous.png b/public/public/theme/common/user_anonymous.png similarity index 100% rename from htdocs/public/theme/common/user_anonymous.png rename to public/public/theme/common/user_anonymous.png diff --git a/htdocs/public/theme/common/user_man.png b/public/public/theme/common/user_man.png similarity index 100% rename from htdocs/public/theme/common/user_man.png rename to public/public/theme/common/user_man.png diff --git a/htdocs/public/theme/common/user_woman.png b/public/public/theme/common/user_woman.png similarity index 100% rename from htdocs/public/theme/common/user_woman.png rename to public/public/theme/common/user_woman.png diff --git a/htdocs/public/theme/index.php b/public/public/theme/index.php similarity index 100% rename from htdocs/public/theme/index.php rename to public/public/theme/index.php diff --git a/htdocs/public/websites/index.php b/public/public/websites/index.php similarity index 100% rename from htdocs/public/websites/index.php rename to public/public/websites/index.php diff --git a/htdocs/public/websites/styles.css.php b/public/public/websites/styles.css.php similarity index 100% rename from htdocs/public/websites/styles.css.php rename to public/public/websites/styles.css.php diff --git a/htdocs/resource/add.php b/public/resource/add.php similarity index 100% rename from htdocs/resource/add.php rename to public/resource/add.php diff --git a/htdocs/resource/card.php b/public/resource/card.php similarity index 100% rename from htdocs/resource/card.php rename to public/resource/card.php diff --git a/htdocs/resource/class/dolresource.class.php b/public/resource/class/dolresource.class.php similarity index 100% rename from htdocs/resource/class/dolresource.class.php rename to public/resource/class/dolresource.class.php diff --git a/htdocs/resource/class/html.formresource.class.php b/public/resource/class/html.formresource.class.php similarity index 100% rename from htdocs/resource/class/html.formresource.class.php rename to public/resource/class/html.formresource.class.php diff --git a/htdocs/resource/class/index.html b/public/resource/class/index.html similarity index 100% rename from htdocs/resource/class/index.html rename to public/resource/class/index.html diff --git a/htdocs/resource/contact.php b/public/resource/contact.php similarity index 100% rename from htdocs/resource/contact.php rename to public/resource/contact.php diff --git a/htdocs/resource/document.php b/public/resource/document.php similarity index 100% rename from htdocs/resource/document.php rename to public/resource/document.php diff --git a/htdocs/resource/element_resource.php b/public/resource/element_resource.php similarity index 100% rename from htdocs/resource/element_resource.php rename to public/resource/element_resource.php diff --git a/htdocs/resource/index.html b/public/resource/index.html similarity index 100% rename from htdocs/resource/index.html rename to public/resource/index.html diff --git a/htdocs/resource/list.php b/public/resource/list.php similarity index 100% rename from htdocs/resource/list.php rename to public/resource/list.php diff --git a/htdocs/resource/note.php b/public/resource/note.php similarity index 100% rename from htdocs/resource/note.php rename to public/resource/note.php diff --git a/htdocs/robots.txt b/public/robots.txt similarity index 100% rename from htdocs/robots.txt rename to public/robots.txt diff --git a/htdocs/societe/admin/contact_extrafields.php b/public/societe/admin/contact_extrafields.php similarity index 100% rename from htdocs/societe/admin/contact_extrafields.php rename to public/societe/admin/contact_extrafields.php diff --git a/htdocs/societe/admin/societe.php b/public/societe/admin/societe.php similarity index 100% rename from htdocs/societe/admin/societe.php rename to public/societe/admin/societe.php diff --git a/htdocs/societe/admin/societe_extrafields.php b/public/societe/admin/societe_extrafields.php similarity index 100% rename from htdocs/societe/admin/societe_extrafields.php rename to public/societe/admin/societe_extrafields.php diff --git a/htdocs/societe/agenda.php b/public/societe/agenda.php similarity index 100% rename from htdocs/societe/agenda.php rename to public/societe/agenda.php diff --git a/htdocs/societe/ajax/company.php b/public/societe/ajax/company.php similarity index 100% rename from htdocs/societe/ajax/company.php rename to public/societe/ajax/company.php diff --git a/htdocs/societe/ajax/index.html b/public/societe/ajax/index.html similarity index 100% rename from htdocs/societe/ajax/index.html rename to public/societe/ajax/index.html diff --git a/htdocs/societe/ajaxcompanies.php b/public/societe/ajaxcompanies.php similarity index 100% rename from htdocs/societe/ajaxcompanies.php rename to public/societe/ajaxcompanies.php diff --git a/htdocs/societe/ajaxcountries.php b/public/societe/ajaxcountries.php similarity index 100% rename from htdocs/societe/ajaxcountries.php rename to public/societe/ajaxcountries.php diff --git a/htdocs/societe/canvas/README b/public/societe/canvas/README similarity index 100% rename from htdocs/societe/canvas/README rename to public/societe/canvas/README diff --git a/htdocs/societe/canvas/actions_card_common.class.php b/public/societe/canvas/actions_card_common.class.php similarity index 100% rename from htdocs/societe/canvas/actions_card_common.class.php rename to public/societe/canvas/actions_card_common.class.php diff --git a/htdocs/societe/canvas/company/actions_card_company.class.php b/public/societe/canvas/company/actions_card_company.class.php similarity index 100% rename from htdocs/societe/canvas/company/actions_card_company.class.php rename to public/societe/canvas/company/actions_card_company.class.php diff --git a/htdocs/societe/canvas/company/index.html b/public/societe/canvas/company/index.html similarity index 100% rename from htdocs/societe/canvas/company/index.html rename to public/societe/canvas/company/index.html diff --git a/htdocs/societe/canvas/company/tpl/card_create.tpl.php b/public/societe/canvas/company/tpl/card_create.tpl.php similarity index 100% rename from htdocs/societe/canvas/company/tpl/card_create.tpl.php rename to public/societe/canvas/company/tpl/card_create.tpl.php diff --git a/htdocs/societe/canvas/company/tpl/card_edit.tpl.php b/public/societe/canvas/company/tpl/card_edit.tpl.php similarity index 100% rename from htdocs/societe/canvas/company/tpl/card_edit.tpl.php rename to public/societe/canvas/company/tpl/card_edit.tpl.php diff --git a/htdocs/societe/canvas/company/tpl/card_view.tpl.php b/public/societe/canvas/company/tpl/card_view.tpl.php similarity index 100% rename from htdocs/societe/canvas/company/tpl/card_view.tpl.php rename to public/societe/canvas/company/tpl/card_view.tpl.php diff --git a/htdocs/societe/canvas/company/tpl/index.html b/public/societe/canvas/company/tpl/index.html similarity index 100% rename from htdocs/societe/canvas/company/tpl/index.html rename to public/societe/canvas/company/tpl/index.html diff --git a/htdocs/societe/canvas/index.html b/public/societe/canvas/index.html similarity index 100% rename from htdocs/societe/canvas/index.html rename to public/societe/canvas/index.html diff --git a/htdocs/societe/canvas/individual/actions_card_individual.class.php b/public/societe/canvas/individual/actions_card_individual.class.php similarity index 100% rename from htdocs/societe/canvas/individual/actions_card_individual.class.php rename to public/societe/canvas/individual/actions_card_individual.class.php diff --git a/htdocs/societe/canvas/individual/index.html b/public/societe/canvas/individual/index.html similarity index 100% rename from htdocs/societe/canvas/individual/index.html rename to public/societe/canvas/individual/index.html diff --git a/htdocs/societe/canvas/individual/tpl/card_create.tpl.php b/public/societe/canvas/individual/tpl/card_create.tpl.php similarity index 100% rename from htdocs/societe/canvas/individual/tpl/card_create.tpl.php rename to public/societe/canvas/individual/tpl/card_create.tpl.php diff --git a/htdocs/societe/canvas/individual/tpl/card_edit.tpl.php b/public/societe/canvas/individual/tpl/card_edit.tpl.php similarity index 100% rename from htdocs/societe/canvas/individual/tpl/card_edit.tpl.php rename to public/societe/canvas/individual/tpl/card_edit.tpl.php diff --git a/htdocs/societe/canvas/individual/tpl/card_view.tpl.php b/public/societe/canvas/individual/tpl/card_view.tpl.php similarity index 100% rename from htdocs/societe/canvas/individual/tpl/card_view.tpl.php rename to public/societe/canvas/individual/tpl/card_view.tpl.php diff --git a/htdocs/societe/canvas/individual/tpl/index.html b/public/societe/canvas/individual/tpl/index.html similarity index 100% rename from htdocs/societe/canvas/individual/tpl/index.html rename to public/societe/canvas/individual/tpl/index.html diff --git a/htdocs/societe/checkvat/checkVatPopup.php b/public/societe/checkvat/checkVatPopup.php similarity index 100% rename from htdocs/societe/checkvat/checkVatPopup.php rename to public/societe/checkvat/checkVatPopup.php diff --git a/htdocs/societe/checkvat/checkVatService.xml b/public/societe/checkvat/checkVatService.xml similarity index 100% rename from htdocs/societe/checkvat/checkVatService.xml rename to public/societe/checkvat/checkVatService.xml diff --git a/htdocs/societe/checkvat/index.html b/public/societe/checkvat/index.html similarity index 100% rename from htdocs/societe/checkvat/index.html rename to public/societe/checkvat/index.html diff --git a/htdocs/societe/class/address.class.php b/public/societe/class/address.class.php similarity index 100% rename from htdocs/societe/class/address.class.php rename to public/societe/class/address.class.php diff --git a/htdocs/societe/class/api_contacts.class.php b/public/societe/class/api_contacts.class.php similarity index 100% rename from htdocs/societe/class/api_contacts.class.php rename to public/societe/class/api_contacts.class.php diff --git a/htdocs/societe/class/api_deprecated_contact.class.php b/public/societe/class/api_deprecated_contact.class.php similarity index 100% rename from htdocs/societe/class/api_deprecated_contact.class.php rename to public/societe/class/api_deprecated_contact.class.php diff --git a/htdocs/societe/class/api_deprecated_thirdparty.class.php b/public/societe/class/api_deprecated_thirdparty.class.php similarity index 100% rename from htdocs/societe/class/api_deprecated_thirdparty.class.php rename to public/societe/class/api_deprecated_thirdparty.class.php diff --git a/htdocs/societe/class/api_thirdparties.class.php b/public/societe/class/api_thirdparties.class.php similarity index 100% rename from htdocs/societe/class/api_thirdparties.class.php rename to public/societe/class/api_thirdparties.class.php diff --git a/htdocs/societe/class/client.class.php b/public/societe/class/client.class.php similarity index 100% rename from htdocs/societe/class/client.class.php rename to public/societe/class/client.class.php diff --git a/htdocs/societe/class/companybankaccount.class.php b/public/societe/class/companybankaccount.class.php similarity index 100% rename from htdocs/societe/class/companybankaccount.class.php rename to public/societe/class/companybankaccount.class.php diff --git a/htdocs/societe/class/index.html b/public/societe/class/index.html similarity index 100% rename from htdocs/societe/class/index.html rename to public/societe/class/index.html diff --git a/htdocs/societe/class/societe.class.php b/public/societe/class/societe.class.php similarity index 100% rename from htdocs/societe/class/societe.class.php rename to public/societe/class/societe.class.php diff --git a/htdocs/societe/commerciaux.php b/public/societe/commerciaux.php similarity index 100% rename from htdocs/societe/commerciaux.php rename to public/societe/commerciaux.php diff --git a/htdocs/societe/consumption.php b/public/societe/consumption.php similarity index 100% rename from htdocs/societe/consumption.php rename to public/societe/consumption.php diff --git a/htdocs/societe/document.php b/public/societe/document.php similarity index 100% rename from htdocs/societe/document.php rename to public/societe/document.php diff --git a/htdocs/societe/index.php b/public/societe/index.php similarity index 100% rename from htdocs/societe/index.php rename to public/societe/index.php diff --git a/htdocs/societe/list.php b/public/societe/list.php similarity index 100% rename from htdocs/societe/list.php rename to public/societe/list.php diff --git a/htdocs/societe/note.php b/public/societe/note.php similarity index 100% rename from htdocs/societe/note.php rename to public/societe/note.php diff --git a/htdocs/societe/notify/card.php b/public/societe/notify/card.php similarity index 100% rename from htdocs/societe/notify/card.php rename to public/societe/notify/card.php diff --git a/htdocs/societe/notify/index.php b/public/societe/notify/index.php similarity index 100% rename from htdocs/societe/notify/index.php rename to public/societe/notify/index.php diff --git a/htdocs/societe/price.php b/public/societe/price.php similarity index 100% rename from htdocs/societe/price.php rename to public/societe/price.php diff --git a/htdocs/societe/project.php b/public/societe/project.php similarity index 100% rename from htdocs/societe/project.php rename to public/societe/project.php diff --git a/htdocs/societe/rib.php b/public/societe/rib.php similarity index 100% rename from htdocs/societe/rib.php rename to public/societe/rib.php diff --git a/htdocs/societe/soc.php b/public/societe/soc.php similarity index 100% rename from htdocs/societe/soc.php rename to public/societe/soc.php diff --git a/htdocs/societe/societecontact.php b/public/societe/societecontact.php similarity index 100% rename from htdocs/societe/societecontact.php rename to public/societe/societecontact.php diff --git a/htdocs/societe/tpl/index.html b/public/societe/tpl/index.html similarity index 100% rename from htdocs/societe/tpl/index.html rename to public/societe/tpl/index.html diff --git a/htdocs/societe/tpl/linesalesrepresentative.tpl.php b/public/societe/tpl/linesalesrepresentative.tpl.php similarity index 100% rename from htdocs/societe/tpl/linesalesrepresentative.tpl.php rename to public/societe/tpl/linesalesrepresentative.tpl.php diff --git a/htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php b/public/supplier_proposal/admin/supplier_proposal_extrafields.php similarity index 100% rename from htdocs/supplier_proposal/admin/supplier_proposal_extrafields.php rename to public/supplier_proposal/admin/supplier_proposal_extrafields.php diff --git a/htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php b/public/supplier_proposal/admin/supplier_proposaldet_extrafields.php similarity index 100% rename from htdocs/supplier_proposal/admin/supplier_proposaldet_extrafields.php rename to public/supplier_proposal/admin/supplier_proposaldet_extrafields.php diff --git a/htdocs/supplier_proposal/card.php b/public/supplier_proposal/card.php similarity index 100% rename from htdocs/supplier_proposal/card.php rename to public/supplier_proposal/card.php diff --git a/htdocs/supplier_proposal/class/index.html b/public/supplier_proposal/class/index.html similarity index 100% rename from htdocs/supplier_proposal/class/index.html rename to public/supplier_proposal/class/index.html diff --git a/htdocs/supplier_proposal/class/supplier_proposal.class.php b/public/supplier_proposal/class/supplier_proposal.class.php similarity index 100% rename from htdocs/supplier_proposal/class/supplier_proposal.class.php rename to public/supplier_proposal/class/supplier_proposal.class.php diff --git a/htdocs/supplier_proposal/document.php b/public/supplier_proposal/document.php similarity index 100% rename from htdocs/supplier_proposal/document.php rename to public/supplier_proposal/document.php diff --git a/htdocs/supplier_proposal/index.php b/public/supplier_proposal/index.php similarity index 100% rename from htdocs/supplier_proposal/index.php rename to public/supplier_proposal/index.php diff --git a/htdocs/supplier_proposal/info.php b/public/supplier_proposal/info.php similarity index 100% rename from htdocs/supplier_proposal/info.php rename to public/supplier_proposal/info.php diff --git a/htdocs/supplier_proposal/list.php b/public/supplier_proposal/list.php similarity index 100% rename from htdocs/supplier_proposal/list.php rename to public/supplier_proposal/list.php diff --git a/htdocs/supplier_proposal/note.php b/public/supplier_proposal/note.php similarity index 100% rename from htdocs/supplier_proposal/note.php rename to public/supplier_proposal/note.php diff --git a/htdocs/supplier_proposal/tpl/index.html b/public/supplier_proposal/tpl/index.html similarity index 100% rename from htdocs/supplier_proposal/tpl/index.html rename to public/supplier_proposal/tpl/index.html diff --git a/htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php b/public/supplier_proposal/tpl/linkedobjectblock.tpl.php similarity index 100% rename from htdocs/supplier_proposal/tpl/linkedobjectblock.tpl.php rename to public/supplier_proposal/tpl/linkedobjectblock.tpl.php diff --git a/htdocs/support/background.png b/public/support/background.png similarity index 100% rename from htdocs/support/background.png rename to public/support/background.png diff --git a/htdocs/support/default.css b/public/support/default.css similarity index 100% rename from htdocs/support/default.css rename to public/support/default.css diff --git a/htdocs/support/helpcenter.png b/public/support/helpcenter.png similarity index 100% rename from htdocs/support/helpcenter.png rename to public/support/helpcenter.png diff --git a/htdocs/support/inc.php b/public/support/inc.php similarity index 100% rename from htdocs/support/inc.php rename to public/support/inc.php diff --git a/htdocs/support/index.php b/public/support/index.php similarity index 100% rename from htdocs/support/index.php rename to public/support/index.php diff --git a/htdocs/support/internet.png b/public/support/internet.png similarity index 100% rename from htdocs/support/internet.png rename to public/support/internet.png diff --git a/htdocs/support/mail.png b/public/support/mail.png similarity index 100% rename from htdocs/support/mail.png rename to public/support/mail.png diff --git a/htdocs/support/online.php b/public/support/online.php similarity index 100% rename from htdocs/support/online.php rename to public/support/online.php diff --git a/htdocs/support/pagemaster.png b/public/support/pagemaster.png similarity index 100% rename from htdocs/support/pagemaster.png rename to public/support/pagemaster.png diff --git a/htdocs/support/redstar.png b/public/support/redstar.png similarity index 100% rename from htdocs/support/redstar.png rename to public/support/redstar.png diff --git a/htdocs/support/star.png b/public/support/star.png similarity index 100% rename from htdocs/support/star.png rename to public/support/star.png diff --git a/htdocs/support/who.png b/public/support/who.png similarity index 100% rename from htdocs/support/who.png rename to public/support/who.png diff --git a/htdocs/theme/.gitignore b/public/theme/.gitignore similarity index 100% rename from htdocs/theme/.gitignore rename to public/theme/.gitignore diff --git a/htdocs/theme/common/colorpicker.png b/public/theme/common/colorpicker.png similarity index 100% rename from htdocs/theme/common/colorpicker.png rename to public/theme/common/colorpicker.png diff --git a/htdocs/theme/common/devices/audio-card.png b/public/theme/common/devices/audio-card.png similarity index 100% rename from htdocs/theme/common/devices/audio-card.png rename to public/theme/common/devices/audio-card.png diff --git a/htdocs/theme/common/devices/audio-headset.png b/public/theme/common/devices/audio-headset.png similarity index 100% rename from htdocs/theme/common/devices/audio-headset.png rename to public/theme/common/devices/audio-headset.png diff --git a/htdocs/theme/common/devices/audio-input-line.png b/public/theme/common/devices/audio-input-line.png similarity index 100% rename from htdocs/theme/common/devices/audio-input-line.png rename to public/theme/common/devices/audio-input-line.png diff --git a/htdocs/theme/common/devices/audio-input-microphone.png b/public/theme/common/devices/audio-input-microphone.png similarity index 100% rename from htdocs/theme/common/devices/audio-input-microphone.png rename to public/theme/common/devices/audio-input-microphone.png diff --git a/htdocs/theme/common/devices/battery.png b/public/theme/common/devices/battery.png similarity index 100% rename from htdocs/theme/common/devices/battery.png rename to public/theme/common/devices/battery.png diff --git a/htdocs/theme/common/devices/camera-photo.png b/public/theme/common/devices/camera-photo.png similarity index 100% rename from htdocs/theme/common/devices/camera-photo.png rename to public/theme/common/devices/camera-photo.png diff --git a/htdocs/theme/common/devices/camera-web.png b/public/theme/common/devices/camera-web.png similarity index 100% rename from htdocs/theme/common/devices/camera-web.png rename to public/theme/common/devices/camera-web.png diff --git a/htdocs/theme/common/devices/computer-laptop.png b/public/theme/common/devices/computer-laptop.png similarity index 100% rename from htdocs/theme/common/devices/computer-laptop.png rename to public/theme/common/devices/computer-laptop.png diff --git a/htdocs/theme/common/devices/computer.png b/public/theme/common/devices/computer.png similarity index 100% rename from htdocs/theme/common/devices/computer.png rename to public/theme/common/devices/computer.png diff --git a/htdocs/theme/common/devices/cpu.png b/public/theme/common/devices/cpu.png similarity index 100% rename from htdocs/theme/common/devices/cpu.png rename to public/theme/common/devices/cpu.png diff --git a/htdocs/theme/common/devices/drive-harddisk.png b/public/theme/common/devices/drive-harddisk.png similarity index 100% rename from htdocs/theme/common/devices/drive-harddisk.png rename to public/theme/common/devices/drive-harddisk.png diff --git a/htdocs/theme/common/devices/drive-optical.png b/public/theme/common/devices/drive-optical.png similarity index 100% rename from htdocs/theme/common/devices/drive-optical.png rename to public/theme/common/devices/drive-optical.png diff --git a/htdocs/theme/common/devices/drive-removable-media-usb-pendrive.png b/public/theme/common/devices/drive-removable-media-usb-pendrive.png similarity index 100% rename from htdocs/theme/common/devices/drive-removable-media-usb-pendrive.png rename to public/theme/common/devices/drive-removable-media-usb-pendrive.png diff --git a/htdocs/theme/common/devices/drive-removable-media-usb.png b/public/theme/common/devices/drive-removable-media-usb.png similarity index 100% rename from htdocs/theme/common/devices/drive-removable-media-usb.png rename to public/theme/common/devices/drive-removable-media-usb.png diff --git a/htdocs/theme/common/devices/drive-removable-media.png b/public/theme/common/devices/drive-removable-media.png similarity index 100% rename from htdocs/theme/common/devices/drive-removable-media.png rename to public/theme/common/devices/drive-removable-media.png diff --git a/htdocs/theme/common/devices/index.html b/public/theme/common/devices/index.html similarity index 100% rename from htdocs/theme/common/devices/index.html rename to public/theme/common/devices/index.html diff --git a/htdocs/theme/common/devices/input-gaming.png b/public/theme/common/devices/input-gaming.png similarity index 100% rename from htdocs/theme/common/devices/input-gaming.png rename to public/theme/common/devices/input-gaming.png diff --git a/htdocs/theme/common/devices/input-keyboard.png b/public/theme/common/devices/input-keyboard.png similarity index 100% rename from htdocs/theme/common/devices/input-keyboard.png rename to public/theme/common/devices/input-keyboard.png diff --git a/htdocs/theme/common/devices/input-mouse.png b/public/theme/common/devices/input-mouse.png similarity index 100% rename from htdocs/theme/common/devices/input-mouse.png rename to public/theme/common/devices/input-mouse.png diff --git a/htdocs/theme/common/devices/input-tablet.png b/public/theme/common/devices/input-tablet.png similarity index 100% rename from htdocs/theme/common/devices/input-tablet.png rename to public/theme/common/devices/input-tablet.png diff --git a/htdocs/theme/common/devices/media-flash-memory-stick.png b/public/theme/common/devices/media-flash-memory-stick.png similarity index 100% rename from htdocs/theme/common/devices/media-flash-memory-stick.png rename to public/theme/common/devices/media-flash-memory-stick.png diff --git a/htdocs/theme/common/devices/media-flash-sd-mmc.png b/public/theme/common/devices/media-flash-sd-mmc.png similarity index 100% rename from htdocs/theme/common/devices/media-flash-sd-mmc.png rename to public/theme/common/devices/media-flash-sd-mmc.png diff --git a/htdocs/theme/common/devices/media-flash-smart-media.png b/public/theme/common/devices/media-flash-smart-media.png similarity index 100% rename from htdocs/theme/common/devices/media-flash-smart-media.png rename to public/theme/common/devices/media-flash-smart-media.png diff --git a/htdocs/theme/common/devices/media-flash.png b/public/theme/common/devices/media-flash.png similarity index 100% rename from htdocs/theme/common/devices/media-flash.png rename to public/theme/common/devices/media-flash.png diff --git a/htdocs/theme/common/devices/media-floppy.png b/public/theme/common/devices/media-floppy.png similarity index 100% rename from htdocs/theme/common/devices/media-floppy.png rename to public/theme/common/devices/media-floppy.png diff --git a/htdocs/theme/common/devices/media-optical-audio.png b/public/theme/common/devices/media-optical-audio.png similarity index 100% rename from htdocs/theme/common/devices/media-optical-audio.png rename to public/theme/common/devices/media-optical-audio.png diff --git a/htdocs/theme/common/devices/media-optical-blu-ray.png b/public/theme/common/devices/media-optical-blu-ray.png similarity index 100% rename from htdocs/theme/common/devices/media-optical-blu-ray.png rename to public/theme/common/devices/media-optical-blu-ray.png diff --git a/htdocs/theme/common/devices/media-optical-data.png b/public/theme/common/devices/media-optical-data.png similarity index 100% rename from htdocs/theme/common/devices/media-optical-data.png rename to public/theme/common/devices/media-optical-data.png diff --git a/htdocs/theme/common/devices/media-optical-dvd-video.png b/public/theme/common/devices/media-optical-dvd-video.png similarity index 100% rename from htdocs/theme/common/devices/media-optical-dvd-video.png rename to public/theme/common/devices/media-optical-dvd-video.png diff --git a/htdocs/theme/common/devices/media-optical-dvd.png b/public/theme/common/devices/media-optical-dvd.png similarity index 100% rename from htdocs/theme/common/devices/media-optical-dvd.png rename to public/theme/common/devices/media-optical-dvd.png diff --git a/htdocs/theme/common/devices/media-optical-mixed-cd.png b/public/theme/common/devices/media-optical-mixed-cd.png similarity index 100% rename from htdocs/theme/common/devices/media-optical-mixed-cd.png rename to public/theme/common/devices/media-optical-mixed-cd.png diff --git a/htdocs/theme/common/devices/media-optical-recordable.png b/public/theme/common/devices/media-optical-recordable.png similarity index 100% rename from htdocs/theme/common/devices/media-optical-recordable.png rename to public/theme/common/devices/media-optical-recordable.png diff --git a/htdocs/theme/common/devices/media-optical-video.png b/public/theme/common/devices/media-optical-video.png similarity index 100% rename from htdocs/theme/common/devices/media-optical-video.png rename to public/theme/common/devices/media-optical-video.png diff --git a/htdocs/theme/common/devices/media-optical.png b/public/theme/common/devices/media-optical.png similarity index 100% rename from htdocs/theme/common/devices/media-optical.png rename to public/theme/common/devices/media-optical.png diff --git a/htdocs/theme/common/devices/media-tape.png b/public/theme/common/devices/media-tape.png similarity index 100% rename from htdocs/theme/common/devices/media-tape.png rename to public/theme/common/devices/media-tape.png diff --git a/htdocs/theme/common/devices/modem.png b/public/theme/common/devices/modem.png similarity index 100% rename from htdocs/theme/common/devices/modem.png rename to public/theme/common/devices/modem.png diff --git a/htdocs/theme/common/devices/multimedia-player-apple-ipod.png b/public/theme/common/devices/multimedia-player-apple-ipod.png similarity index 100% rename from htdocs/theme/common/devices/multimedia-player-apple-ipod.png rename to public/theme/common/devices/multimedia-player-apple-ipod.png diff --git a/htdocs/theme/common/devices/multimedia-player.png b/public/theme/common/devices/multimedia-player.png similarity index 100% rename from htdocs/theme/common/devices/multimedia-player.png rename to public/theme/common/devices/multimedia-player.png diff --git a/htdocs/theme/common/devices/network-wired.png b/public/theme/common/devices/network-wired.png similarity index 100% rename from htdocs/theme/common/devices/network-wired.png rename to public/theme/common/devices/network-wired.png diff --git a/htdocs/theme/common/devices/network-wireless-connected-00.png b/public/theme/common/devices/network-wireless-connected-00.png similarity index 100% rename from htdocs/theme/common/devices/network-wireless-connected-00.png rename to public/theme/common/devices/network-wireless-connected-00.png diff --git a/htdocs/theme/common/devices/network-wireless-connected-100.png b/public/theme/common/devices/network-wireless-connected-100.png similarity index 100% rename from htdocs/theme/common/devices/network-wireless-connected-100.png rename to public/theme/common/devices/network-wireless-connected-100.png diff --git a/htdocs/theme/common/devices/network-wireless-connected-25.png b/public/theme/common/devices/network-wireless-connected-25.png similarity index 100% rename from htdocs/theme/common/devices/network-wireless-connected-25.png rename to public/theme/common/devices/network-wireless-connected-25.png diff --git a/htdocs/theme/common/devices/network-wireless-connected-50.png b/public/theme/common/devices/network-wireless-connected-50.png similarity index 100% rename from htdocs/theme/common/devices/network-wireless-connected-50.png rename to public/theme/common/devices/network-wireless-connected-50.png diff --git a/htdocs/theme/common/devices/network-wireless-connected-75.png b/public/theme/common/devices/network-wireless-connected-75.png similarity index 100% rename from htdocs/theme/common/devices/network-wireless-connected-75.png rename to public/theme/common/devices/network-wireless-connected-75.png diff --git a/htdocs/theme/common/devices/network-wireless-disconnected.png b/public/theme/common/devices/network-wireless-disconnected.png similarity index 100% rename from htdocs/theme/common/devices/network-wireless-disconnected.png rename to public/theme/common/devices/network-wireless-disconnected.png diff --git a/htdocs/theme/common/devices/network-wireless.png b/public/theme/common/devices/network-wireless.png similarity index 100% rename from htdocs/theme/common/devices/network-wireless.png rename to public/theme/common/devices/network-wireless.png diff --git a/htdocs/theme/common/devices/pda.png b/public/theme/common/devices/pda.png similarity index 100% rename from htdocs/theme/common/devices/pda.png rename to public/theme/common/devices/pda.png diff --git a/htdocs/theme/common/devices/phone-openmoko-freerunner.png b/public/theme/common/devices/phone-openmoko-freerunner.png similarity index 100% rename from htdocs/theme/common/devices/phone-openmoko-freerunner.png rename to public/theme/common/devices/phone-openmoko-freerunner.png diff --git a/htdocs/theme/common/devices/phone.png b/public/theme/common/devices/phone.png similarity index 100% rename from htdocs/theme/common/devices/phone.png rename to public/theme/common/devices/phone.png diff --git a/htdocs/theme/common/devices/printer-laser.png b/public/theme/common/devices/printer-laser.png similarity index 100% rename from htdocs/theme/common/devices/printer-laser.png rename to public/theme/common/devices/printer-laser.png diff --git a/htdocs/theme/common/devices/printer.png b/public/theme/common/devices/printer.png similarity index 100% rename from htdocs/theme/common/devices/printer.png rename to public/theme/common/devices/printer.png diff --git a/htdocs/theme/common/devices/scanner.png b/public/theme/common/devices/scanner.png similarity index 100% rename from htdocs/theme/common/devices/scanner.png rename to public/theme/common/devices/scanner.png diff --git a/htdocs/theme/common/devices/video-display.png b/public/theme/common/devices/video-display.png similarity index 100% rename from htdocs/theme/common/devices/video-display.png rename to public/theme/common/devices/video-display.png diff --git a/htdocs/theme/common/devices/video-projector.png b/public/theme/common/devices/video-projector.png similarity index 100% rename from htdocs/theme/common/devices/video-projector.png rename to public/theme/common/devices/video-projector.png diff --git a/htdocs/theme/common/devices/video-television.png b/public/theme/common/devices/video-television.png similarity index 100% rename from htdocs/theme/common/devices/video-television.png rename to public/theme/common/devices/video-television.png diff --git a/htdocs/theme/common/dolibarr_box.png b/public/theme/common/dolibarr_box.png similarity index 100% rename from htdocs/theme/common/dolibarr_box.png rename to public/theme/common/dolibarr_box.png diff --git a/htdocs/theme/common/dolibarr_logo_bw.png b/public/theme/common/dolibarr_logo_bw.png similarity index 100% rename from htdocs/theme/common/dolibarr_logo_bw.png rename to public/theme/common/dolibarr_logo_bw.png diff --git a/htdocs/theme/common/dolistore.jpg b/public/theme/common/dolistore.jpg similarity index 100% rename from htdocs/theme/common/dolistore.jpg rename to public/theme/common/dolistore.jpg diff --git a/htdocs/theme/common/emotes/face-angel.png b/public/theme/common/emotes/face-angel.png similarity index 100% rename from htdocs/theme/common/emotes/face-angel.png rename to public/theme/common/emotes/face-angel.png diff --git a/htdocs/theme/common/emotes/face-embarrassed.png b/public/theme/common/emotes/face-embarrassed.png similarity index 100% rename from htdocs/theme/common/emotes/face-embarrassed.png rename to public/theme/common/emotes/face-embarrassed.png diff --git a/htdocs/theme/common/emotes/face-kiss.png b/public/theme/common/emotes/face-kiss.png similarity index 100% rename from htdocs/theme/common/emotes/face-kiss.png rename to public/theme/common/emotes/face-kiss.png diff --git a/htdocs/theme/common/emotes/face-laugh.png b/public/theme/common/emotes/face-laugh.png similarity index 100% rename from htdocs/theme/common/emotes/face-laugh.png rename to public/theme/common/emotes/face-laugh.png diff --git a/htdocs/theme/common/emotes/face-plain.png b/public/theme/common/emotes/face-plain.png similarity index 100% rename from htdocs/theme/common/emotes/face-plain.png rename to public/theme/common/emotes/face-plain.png diff --git a/htdocs/theme/common/emotes/face-raspberry.png b/public/theme/common/emotes/face-raspberry.png similarity index 100% rename from htdocs/theme/common/emotes/face-raspberry.png rename to public/theme/common/emotes/face-raspberry.png diff --git a/htdocs/theme/common/emotes/face-sad.png b/public/theme/common/emotes/face-sad.png similarity index 100% rename from htdocs/theme/common/emotes/face-sad.png rename to public/theme/common/emotes/face-sad.png diff --git a/htdocs/theme/common/emotes/face-smile-big.png b/public/theme/common/emotes/face-smile-big.png similarity index 100% rename from htdocs/theme/common/emotes/face-smile-big.png rename to public/theme/common/emotes/face-smile-big.png diff --git a/htdocs/theme/common/emotes/face-smile.png b/public/theme/common/emotes/face-smile.png similarity index 100% rename from htdocs/theme/common/emotes/face-smile.png rename to public/theme/common/emotes/face-smile.png diff --git a/htdocs/theme/common/emotes/face-surprise.png b/public/theme/common/emotes/face-surprise.png similarity index 100% rename from htdocs/theme/common/emotes/face-surprise.png rename to public/theme/common/emotes/face-surprise.png diff --git a/htdocs/theme/common/emotes/face-uncertain.png b/public/theme/common/emotes/face-uncertain.png similarity index 100% rename from htdocs/theme/common/emotes/face-uncertain.png rename to public/theme/common/emotes/face-uncertain.png diff --git a/htdocs/theme/common/emotes/face-wink.png b/public/theme/common/emotes/face-wink.png similarity index 100% rename from htdocs/theme/common/emotes/face-wink.png rename to public/theme/common/emotes/face-wink.png diff --git a/htdocs/theme/common/emotes/index.html b/public/theme/common/emotes/index.html similarity index 100% rename from htdocs/theme/common/emotes/index.html rename to public/theme/common/emotes/index.html diff --git a/htdocs/theme/common/flags/ad.png b/public/theme/common/flags/ad.png similarity index 100% rename from htdocs/theme/common/flags/ad.png rename to public/theme/common/flags/ad.png diff --git a/htdocs/theme/common/flags/ae.png b/public/theme/common/flags/ae.png similarity index 100% rename from htdocs/theme/common/flags/ae.png rename to public/theme/common/flags/ae.png diff --git a/htdocs/theme/common/flags/af.png b/public/theme/common/flags/af.png similarity index 100% rename from htdocs/theme/common/flags/af.png rename to public/theme/common/flags/af.png diff --git a/htdocs/theme/common/flags/ag.png b/public/theme/common/flags/ag.png similarity index 100% rename from htdocs/theme/common/flags/ag.png rename to public/theme/common/flags/ag.png diff --git a/htdocs/theme/common/flags/ai.png b/public/theme/common/flags/ai.png similarity index 100% rename from htdocs/theme/common/flags/ai.png rename to public/theme/common/flags/ai.png diff --git a/htdocs/theme/common/flags/al.png b/public/theme/common/flags/al.png similarity index 100% rename from htdocs/theme/common/flags/al.png rename to public/theme/common/flags/al.png diff --git a/htdocs/theme/common/flags/am.png b/public/theme/common/flags/am.png similarity index 100% rename from htdocs/theme/common/flags/am.png rename to public/theme/common/flags/am.png diff --git a/htdocs/theme/common/flags/an.png b/public/theme/common/flags/an.png similarity index 100% rename from htdocs/theme/common/flags/an.png rename to public/theme/common/flags/an.png diff --git a/htdocs/theme/common/flags/ao.png b/public/theme/common/flags/ao.png similarity index 100% rename from htdocs/theme/common/flags/ao.png rename to public/theme/common/flags/ao.png diff --git a/htdocs/theme/common/flags/ar.png b/public/theme/common/flags/ar.png similarity index 100% rename from htdocs/theme/common/flags/ar.png rename to public/theme/common/flags/ar.png diff --git a/htdocs/theme/common/flags/as.png b/public/theme/common/flags/as.png similarity index 100% rename from htdocs/theme/common/flags/as.png rename to public/theme/common/flags/as.png diff --git a/htdocs/theme/common/flags/at.png b/public/theme/common/flags/at.png similarity index 100% rename from htdocs/theme/common/flags/at.png rename to public/theme/common/flags/at.png diff --git a/htdocs/theme/common/flags/au.png b/public/theme/common/flags/au.png similarity index 100% rename from htdocs/theme/common/flags/au.png rename to public/theme/common/flags/au.png diff --git a/htdocs/theme/common/flags/aw.png b/public/theme/common/flags/aw.png similarity index 100% rename from htdocs/theme/common/flags/aw.png rename to public/theme/common/flags/aw.png diff --git a/htdocs/theme/common/flags/ax.png b/public/theme/common/flags/ax.png similarity index 100% rename from htdocs/theme/common/flags/ax.png rename to public/theme/common/flags/ax.png diff --git a/htdocs/theme/common/flags/az.png b/public/theme/common/flags/az.png similarity index 100% rename from htdocs/theme/common/flags/az.png rename to public/theme/common/flags/az.png diff --git a/htdocs/theme/common/flags/ba.png b/public/theme/common/flags/ba.png similarity index 100% rename from htdocs/theme/common/flags/ba.png rename to public/theme/common/flags/ba.png diff --git a/htdocs/theme/common/flags/bb.png b/public/theme/common/flags/bb.png similarity index 100% rename from htdocs/theme/common/flags/bb.png rename to public/theme/common/flags/bb.png diff --git a/htdocs/theme/common/flags/bd.png b/public/theme/common/flags/bd.png similarity index 100% rename from htdocs/theme/common/flags/bd.png rename to public/theme/common/flags/bd.png diff --git a/htdocs/theme/common/flags/be.png b/public/theme/common/flags/be.png similarity index 100% rename from htdocs/theme/common/flags/be.png rename to public/theme/common/flags/be.png diff --git a/htdocs/theme/common/flags/bf.png b/public/theme/common/flags/bf.png similarity index 100% rename from htdocs/theme/common/flags/bf.png rename to public/theme/common/flags/bf.png diff --git a/htdocs/theme/common/flags/bg.png b/public/theme/common/flags/bg.png similarity index 100% rename from htdocs/theme/common/flags/bg.png rename to public/theme/common/flags/bg.png diff --git a/htdocs/theme/common/flags/bh.png b/public/theme/common/flags/bh.png similarity index 100% rename from htdocs/theme/common/flags/bh.png rename to public/theme/common/flags/bh.png diff --git a/htdocs/theme/common/flags/bi.png b/public/theme/common/flags/bi.png similarity index 100% rename from htdocs/theme/common/flags/bi.png rename to public/theme/common/flags/bi.png diff --git a/htdocs/theme/common/flags/bj.png b/public/theme/common/flags/bj.png similarity index 100% rename from htdocs/theme/common/flags/bj.png rename to public/theme/common/flags/bj.png diff --git a/htdocs/theme/common/flags/bm.png b/public/theme/common/flags/bm.png similarity index 100% rename from htdocs/theme/common/flags/bm.png rename to public/theme/common/flags/bm.png diff --git a/htdocs/theme/common/flags/bn.png b/public/theme/common/flags/bn.png similarity index 100% rename from htdocs/theme/common/flags/bn.png rename to public/theme/common/flags/bn.png diff --git a/htdocs/theme/common/flags/bo.png b/public/theme/common/flags/bo.png similarity index 100% rename from htdocs/theme/common/flags/bo.png rename to public/theme/common/flags/bo.png diff --git a/htdocs/theme/common/flags/br.png b/public/theme/common/flags/br.png similarity index 100% rename from htdocs/theme/common/flags/br.png rename to public/theme/common/flags/br.png diff --git a/htdocs/theme/common/flags/bs.png b/public/theme/common/flags/bs.png similarity index 100% rename from htdocs/theme/common/flags/bs.png rename to public/theme/common/flags/bs.png diff --git a/htdocs/theme/common/flags/bt.png b/public/theme/common/flags/bt.png similarity index 100% rename from htdocs/theme/common/flags/bt.png rename to public/theme/common/flags/bt.png diff --git a/htdocs/theme/common/flags/bv.png b/public/theme/common/flags/bv.png similarity index 100% rename from htdocs/theme/common/flags/bv.png rename to public/theme/common/flags/bv.png diff --git a/htdocs/theme/common/flags/bw.png b/public/theme/common/flags/bw.png similarity index 100% rename from htdocs/theme/common/flags/bw.png rename to public/theme/common/flags/bw.png diff --git a/htdocs/theme/common/flags/by.png b/public/theme/common/flags/by.png similarity index 100% rename from htdocs/theme/common/flags/by.png rename to public/theme/common/flags/by.png diff --git a/htdocs/theme/common/flags/bz.png b/public/theme/common/flags/bz.png similarity index 100% rename from htdocs/theme/common/flags/bz.png rename to public/theme/common/flags/bz.png diff --git a/htdocs/theme/common/flags/ca.png b/public/theme/common/flags/ca.png similarity index 100% rename from htdocs/theme/common/flags/ca.png rename to public/theme/common/flags/ca.png diff --git a/htdocs/theme/common/flags/catalonia.png b/public/theme/common/flags/catalonia.png similarity index 100% rename from htdocs/theme/common/flags/catalonia.png rename to public/theme/common/flags/catalonia.png diff --git a/htdocs/theme/common/flags/cc.png b/public/theme/common/flags/cc.png similarity index 100% rename from htdocs/theme/common/flags/cc.png rename to public/theme/common/flags/cc.png diff --git a/htdocs/theme/common/flags/cd.png b/public/theme/common/flags/cd.png similarity index 100% rename from htdocs/theme/common/flags/cd.png rename to public/theme/common/flags/cd.png diff --git a/htdocs/theme/common/flags/cf.png b/public/theme/common/flags/cf.png similarity index 100% rename from htdocs/theme/common/flags/cf.png rename to public/theme/common/flags/cf.png diff --git a/htdocs/theme/common/flags/cg.png b/public/theme/common/flags/cg.png similarity index 100% rename from htdocs/theme/common/flags/cg.png rename to public/theme/common/flags/cg.png diff --git a/htdocs/theme/common/flags/ch.png b/public/theme/common/flags/ch.png similarity index 100% rename from htdocs/theme/common/flags/ch.png rename to public/theme/common/flags/ch.png diff --git a/htdocs/theme/common/flags/ci.png b/public/theme/common/flags/ci.png similarity index 100% rename from htdocs/theme/common/flags/ci.png rename to public/theme/common/flags/ci.png diff --git a/htdocs/theme/common/flags/ck.png b/public/theme/common/flags/ck.png similarity index 100% rename from htdocs/theme/common/flags/ck.png rename to public/theme/common/flags/ck.png diff --git a/htdocs/theme/common/flags/cl.png b/public/theme/common/flags/cl.png similarity index 100% rename from htdocs/theme/common/flags/cl.png rename to public/theme/common/flags/cl.png diff --git a/htdocs/theme/common/flags/cm.png b/public/theme/common/flags/cm.png similarity index 100% rename from htdocs/theme/common/flags/cm.png rename to public/theme/common/flags/cm.png diff --git a/htdocs/theme/common/flags/cn.png b/public/theme/common/flags/cn.png similarity index 100% rename from htdocs/theme/common/flags/cn.png rename to public/theme/common/flags/cn.png diff --git a/htdocs/theme/common/flags/co.png b/public/theme/common/flags/co.png similarity index 100% rename from htdocs/theme/common/flags/co.png rename to public/theme/common/flags/co.png diff --git a/htdocs/theme/common/flags/cr.png b/public/theme/common/flags/cr.png similarity index 100% rename from htdocs/theme/common/flags/cr.png rename to public/theme/common/flags/cr.png diff --git a/htdocs/theme/common/flags/cs.png b/public/theme/common/flags/cs.png similarity index 100% rename from htdocs/theme/common/flags/cs.png rename to public/theme/common/flags/cs.png diff --git a/htdocs/theme/common/flags/cu.png b/public/theme/common/flags/cu.png similarity index 100% rename from htdocs/theme/common/flags/cu.png rename to public/theme/common/flags/cu.png diff --git a/htdocs/theme/common/flags/cv.png b/public/theme/common/flags/cv.png similarity index 100% rename from htdocs/theme/common/flags/cv.png rename to public/theme/common/flags/cv.png diff --git a/htdocs/theme/common/flags/cx.png b/public/theme/common/flags/cx.png similarity index 100% rename from htdocs/theme/common/flags/cx.png rename to public/theme/common/flags/cx.png diff --git a/htdocs/theme/common/flags/cy.png b/public/theme/common/flags/cy.png similarity index 100% rename from htdocs/theme/common/flags/cy.png rename to public/theme/common/flags/cy.png diff --git a/htdocs/theme/common/flags/cz.png b/public/theme/common/flags/cz.png similarity index 100% rename from htdocs/theme/common/flags/cz.png rename to public/theme/common/flags/cz.png diff --git a/htdocs/theme/common/flags/de.png b/public/theme/common/flags/de.png similarity index 100% rename from htdocs/theme/common/flags/de.png rename to public/theme/common/flags/de.png diff --git a/htdocs/theme/common/flags/dj.png b/public/theme/common/flags/dj.png similarity index 100% rename from htdocs/theme/common/flags/dj.png rename to public/theme/common/flags/dj.png diff --git a/htdocs/theme/common/flags/dk.png b/public/theme/common/flags/dk.png similarity index 100% rename from htdocs/theme/common/flags/dk.png rename to public/theme/common/flags/dk.png diff --git a/htdocs/theme/common/flags/dm.png b/public/theme/common/flags/dm.png similarity index 100% rename from htdocs/theme/common/flags/dm.png rename to public/theme/common/flags/dm.png diff --git a/htdocs/theme/common/flags/do.png b/public/theme/common/flags/do.png similarity index 100% rename from htdocs/theme/common/flags/do.png rename to public/theme/common/flags/do.png diff --git a/htdocs/theme/common/flags/dz.png b/public/theme/common/flags/dz.png similarity index 100% rename from htdocs/theme/common/flags/dz.png rename to public/theme/common/flags/dz.png diff --git a/htdocs/theme/common/flags/ec.png b/public/theme/common/flags/ec.png similarity index 100% rename from htdocs/theme/common/flags/ec.png rename to public/theme/common/flags/ec.png diff --git a/htdocs/theme/common/flags/ee.png b/public/theme/common/flags/ee.png similarity index 100% rename from htdocs/theme/common/flags/ee.png rename to public/theme/common/flags/ee.png diff --git a/htdocs/theme/common/flags/eg.png b/public/theme/common/flags/eg.png similarity index 100% rename from htdocs/theme/common/flags/eg.png rename to public/theme/common/flags/eg.png diff --git a/htdocs/theme/common/flags/eh.png b/public/theme/common/flags/eh.png similarity index 100% rename from htdocs/theme/common/flags/eh.png rename to public/theme/common/flags/eh.png diff --git a/htdocs/theme/common/flags/en.png b/public/theme/common/flags/en.png similarity index 100% rename from htdocs/theme/common/flags/en.png rename to public/theme/common/flags/en.png diff --git a/htdocs/theme/common/flags/england.png b/public/theme/common/flags/england.png similarity index 100% rename from htdocs/theme/common/flags/england.png rename to public/theme/common/flags/england.png diff --git a/htdocs/theme/common/flags/er.png b/public/theme/common/flags/er.png similarity index 100% rename from htdocs/theme/common/flags/er.png rename to public/theme/common/flags/er.png diff --git a/htdocs/theme/common/flags/es.png b/public/theme/common/flags/es.png similarity index 100% rename from htdocs/theme/common/flags/es.png rename to public/theme/common/flags/es.png diff --git a/htdocs/theme/common/flags/et.png b/public/theme/common/flags/et.png similarity index 100% rename from htdocs/theme/common/flags/et.png rename to public/theme/common/flags/et.png diff --git a/htdocs/theme/common/flags/eu.png b/public/theme/common/flags/eu.png similarity index 100% rename from htdocs/theme/common/flags/eu.png rename to public/theme/common/flags/eu.png diff --git a/htdocs/theme/common/flags/fam.png b/public/theme/common/flags/fam.png similarity index 100% rename from htdocs/theme/common/flags/fam.png rename to public/theme/common/flags/fam.png diff --git a/htdocs/theme/common/flags/fi.png b/public/theme/common/flags/fi.png similarity index 100% rename from htdocs/theme/common/flags/fi.png rename to public/theme/common/flags/fi.png diff --git a/htdocs/theme/common/flags/fj.png b/public/theme/common/flags/fj.png similarity index 100% rename from htdocs/theme/common/flags/fj.png rename to public/theme/common/flags/fj.png diff --git a/htdocs/theme/common/flags/fk.png b/public/theme/common/flags/fk.png similarity index 100% rename from htdocs/theme/common/flags/fk.png rename to public/theme/common/flags/fk.png diff --git a/htdocs/theme/common/flags/fm.png b/public/theme/common/flags/fm.png similarity index 100% rename from htdocs/theme/common/flags/fm.png rename to public/theme/common/flags/fm.png diff --git a/htdocs/theme/common/flags/fo.png b/public/theme/common/flags/fo.png similarity index 100% rename from htdocs/theme/common/flags/fo.png rename to public/theme/common/flags/fo.png diff --git a/htdocs/theme/common/flags/fr.png b/public/theme/common/flags/fr.png similarity index 100% rename from htdocs/theme/common/flags/fr.png rename to public/theme/common/flags/fr.png diff --git a/htdocs/theme/common/flags/ga.png b/public/theme/common/flags/ga.png similarity index 100% rename from htdocs/theme/common/flags/ga.png rename to public/theme/common/flags/ga.png diff --git a/htdocs/theme/common/flags/gb.png b/public/theme/common/flags/gb.png similarity index 100% rename from htdocs/theme/common/flags/gb.png rename to public/theme/common/flags/gb.png diff --git a/htdocs/theme/common/flags/gd.png b/public/theme/common/flags/gd.png similarity index 100% rename from htdocs/theme/common/flags/gd.png rename to public/theme/common/flags/gd.png diff --git a/htdocs/theme/common/flags/ge.png b/public/theme/common/flags/ge.png similarity index 100% rename from htdocs/theme/common/flags/ge.png rename to public/theme/common/flags/ge.png diff --git a/htdocs/theme/common/flags/gf.png b/public/theme/common/flags/gf.png similarity index 100% rename from htdocs/theme/common/flags/gf.png rename to public/theme/common/flags/gf.png diff --git a/htdocs/theme/common/flags/gg.png b/public/theme/common/flags/gg.png similarity index 100% rename from htdocs/theme/common/flags/gg.png rename to public/theme/common/flags/gg.png diff --git a/htdocs/theme/common/flags/gh.png b/public/theme/common/flags/gh.png similarity index 100% rename from htdocs/theme/common/flags/gh.png rename to public/theme/common/flags/gh.png diff --git a/htdocs/theme/common/flags/gi.png b/public/theme/common/flags/gi.png similarity index 100% rename from htdocs/theme/common/flags/gi.png rename to public/theme/common/flags/gi.png diff --git a/htdocs/theme/common/flags/gl.png b/public/theme/common/flags/gl.png similarity index 100% rename from htdocs/theme/common/flags/gl.png rename to public/theme/common/flags/gl.png diff --git a/htdocs/theme/common/flags/gm.png b/public/theme/common/flags/gm.png similarity index 100% rename from htdocs/theme/common/flags/gm.png rename to public/theme/common/flags/gm.png diff --git a/htdocs/theme/common/flags/gn.png b/public/theme/common/flags/gn.png similarity index 100% rename from htdocs/theme/common/flags/gn.png rename to public/theme/common/flags/gn.png diff --git a/htdocs/theme/common/flags/gp.png b/public/theme/common/flags/gp.png similarity index 100% rename from htdocs/theme/common/flags/gp.png rename to public/theme/common/flags/gp.png diff --git a/htdocs/theme/common/flags/gq.png b/public/theme/common/flags/gq.png similarity index 100% rename from htdocs/theme/common/flags/gq.png rename to public/theme/common/flags/gq.png diff --git a/htdocs/theme/common/flags/gr.png b/public/theme/common/flags/gr.png similarity index 100% rename from htdocs/theme/common/flags/gr.png rename to public/theme/common/flags/gr.png diff --git a/htdocs/theme/common/flags/gs.png b/public/theme/common/flags/gs.png similarity index 100% rename from htdocs/theme/common/flags/gs.png rename to public/theme/common/flags/gs.png diff --git a/htdocs/theme/common/flags/gt.png b/public/theme/common/flags/gt.png similarity index 100% rename from htdocs/theme/common/flags/gt.png rename to public/theme/common/flags/gt.png diff --git a/htdocs/theme/common/flags/gu.png b/public/theme/common/flags/gu.png similarity index 100% rename from htdocs/theme/common/flags/gu.png rename to public/theme/common/flags/gu.png diff --git a/htdocs/theme/common/flags/gw.png b/public/theme/common/flags/gw.png similarity index 100% rename from htdocs/theme/common/flags/gw.png rename to public/theme/common/flags/gw.png diff --git a/htdocs/theme/common/flags/gy.png b/public/theme/common/flags/gy.png similarity index 100% rename from htdocs/theme/common/flags/gy.png rename to public/theme/common/flags/gy.png diff --git a/htdocs/theme/common/flags/hk.png b/public/theme/common/flags/hk.png similarity index 100% rename from htdocs/theme/common/flags/hk.png rename to public/theme/common/flags/hk.png diff --git a/htdocs/theme/common/flags/hm.png b/public/theme/common/flags/hm.png similarity index 100% rename from htdocs/theme/common/flags/hm.png rename to public/theme/common/flags/hm.png diff --git a/htdocs/theme/common/flags/hn.png b/public/theme/common/flags/hn.png similarity index 100% rename from htdocs/theme/common/flags/hn.png rename to public/theme/common/flags/hn.png diff --git a/htdocs/theme/common/flags/hr.png b/public/theme/common/flags/hr.png similarity index 100% rename from htdocs/theme/common/flags/hr.png rename to public/theme/common/flags/hr.png diff --git a/htdocs/theme/common/flags/ht.png b/public/theme/common/flags/ht.png similarity index 100% rename from htdocs/theme/common/flags/ht.png rename to public/theme/common/flags/ht.png diff --git a/htdocs/theme/common/flags/hu.png b/public/theme/common/flags/hu.png similarity index 100% rename from htdocs/theme/common/flags/hu.png rename to public/theme/common/flags/hu.png diff --git a/htdocs/theme/common/flags/id.png b/public/theme/common/flags/id.png similarity index 100% rename from htdocs/theme/common/flags/id.png rename to public/theme/common/flags/id.png diff --git a/htdocs/theme/common/flags/ie.png b/public/theme/common/flags/ie.png similarity index 100% rename from htdocs/theme/common/flags/ie.png rename to public/theme/common/flags/ie.png diff --git a/htdocs/theme/common/flags/il.png b/public/theme/common/flags/il.png similarity index 100% rename from htdocs/theme/common/flags/il.png rename to public/theme/common/flags/il.png diff --git a/htdocs/theme/common/flags/in.png b/public/theme/common/flags/in.png similarity index 100% rename from htdocs/theme/common/flags/in.png rename to public/theme/common/flags/in.png diff --git a/htdocs/theme/common/flags/index.html b/public/theme/common/flags/index.html similarity index 100% rename from htdocs/theme/common/flags/index.html rename to public/theme/common/flags/index.html diff --git a/htdocs/theme/common/flags/int.png b/public/theme/common/flags/int.png similarity index 100% rename from htdocs/theme/common/flags/int.png rename to public/theme/common/flags/int.png diff --git a/htdocs/theme/common/flags/io.png b/public/theme/common/flags/io.png similarity index 100% rename from htdocs/theme/common/flags/io.png rename to public/theme/common/flags/io.png diff --git a/htdocs/theme/common/flags/iq.png b/public/theme/common/flags/iq.png similarity index 100% rename from htdocs/theme/common/flags/iq.png rename to public/theme/common/flags/iq.png diff --git a/htdocs/theme/common/flags/ir.png b/public/theme/common/flags/ir.png similarity index 100% rename from htdocs/theme/common/flags/ir.png rename to public/theme/common/flags/ir.png diff --git a/htdocs/theme/common/flags/is.png b/public/theme/common/flags/is.png similarity index 100% rename from htdocs/theme/common/flags/is.png rename to public/theme/common/flags/is.png diff --git a/htdocs/theme/common/flags/it.png b/public/theme/common/flags/it.png similarity index 100% rename from htdocs/theme/common/flags/it.png rename to public/theme/common/flags/it.png diff --git a/htdocs/theme/common/flags/jm.png b/public/theme/common/flags/jm.png similarity index 100% rename from htdocs/theme/common/flags/jm.png rename to public/theme/common/flags/jm.png diff --git a/htdocs/theme/common/flags/jo.png b/public/theme/common/flags/jo.png similarity index 100% rename from htdocs/theme/common/flags/jo.png rename to public/theme/common/flags/jo.png diff --git a/htdocs/theme/common/flags/jp.png b/public/theme/common/flags/jp.png similarity index 100% rename from htdocs/theme/common/flags/jp.png rename to public/theme/common/flags/jp.png diff --git a/htdocs/theme/common/flags/ke.png b/public/theme/common/flags/ke.png similarity index 100% rename from htdocs/theme/common/flags/ke.png rename to public/theme/common/flags/ke.png diff --git a/htdocs/theme/common/flags/kg.png b/public/theme/common/flags/kg.png similarity index 100% rename from htdocs/theme/common/flags/kg.png rename to public/theme/common/flags/kg.png diff --git a/htdocs/theme/common/flags/kh.png b/public/theme/common/flags/kh.png similarity index 100% rename from htdocs/theme/common/flags/kh.png rename to public/theme/common/flags/kh.png diff --git a/htdocs/theme/common/flags/ki.png b/public/theme/common/flags/ki.png similarity index 100% rename from htdocs/theme/common/flags/ki.png rename to public/theme/common/flags/ki.png diff --git a/htdocs/theme/common/flags/km.png b/public/theme/common/flags/km.png similarity index 100% rename from htdocs/theme/common/flags/km.png rename to public/theme/common/flags/km.png diff --git a/htdocs/theme/common/flags/kn.png b/public/theme/common/flags/kn.png similarity index 100% rename from htdocs/theme/common/flags/kn.png rename to public/theme/common/flags/kn.png diff --git a/htdocs/theme/common/flags/kp.png b/public/theme/common/flags/kp.png similarity index 100% rename from htdocs/theme/common/flags/kp.png rename to public/theme/common/flags/kp.png diff --git a/htdocs/theme/common/flags/kr.png b/public/theme/common/flags/kr.png similarity index 100% rename from htdocs/theme/common/flags/kr.png rename to public/theme/common/flags/kr.png diff --git a/htdocs/theme/common/flags/kw.png b/public/theme/common/flags/kw.png similarity index 100% rename from htdocs/theme/common/flags/kw.png rename to public/theme/common/flags/kw.png diff --git a/htdocs/theme/common/flags/ky.png b/public/theme/common/flags/ky.png similarity index 100% rename from htdocs/theme/common/flags/ky.png rename to public/theme/common/flags/ky.png diff --git a/htdocs/theme/common/flags/kz.png b/public/theme/common/flags/kz.png similarity index 100% rename from htdocs/theme/common/flags/kz.png rename to public/theme/common/flags/kz.png diff --git a/htdocs/theme/common/flags/la.png b/public/theme/common/flags/la.png similarity index 100% rename from htdocs/theme/common/flags/la.png rename to public/theme/common/flags/la.png diff --git a/htdocs/theme/common/flags/lb.png b/public/theme/common/flags/lb.png similarity index 100% rename from htdocs/theme/common/flags/lb.png rename to public/theme/common/flags/lb.png diff --git a/htdocs/theme/common/flags/lc.png b/public/theme/common/flags/lc.png similarity index 100% rename from htdocs/theme/common/flags/lc.png rename to public/theme/common/flags/lc.png diff --git a/htdocs/theme/common/flags/li.png b/public/theme/common/flags/li.png similarity index 100% rename from htdocs/theme/common/flags/li.png rename to public/theme/common/flags/li.png diff --git a/htdocs/theme/common/flags/lk.png b/public/theme/common/flags/lk.png similarity index 100% rename from htdocs/theme/common/flags/lk.png rename to public/theme/common/flags/lk.png diff --git a/htdocs/theme/common/flags/lr.png b/public/theme/common/flags/lr.png similarity index 100% rename from htdocs/theme/common/flags/lr.png rename to public/theme/common/flags/lr.png diff --git a/htdocs/theme/common/flags/ls.png b/public/theme/common/flags/ls.png similarity index 100% rename from htdocs/theme/common/flags/ls.png rename to public/theme/common/flags/ls.png diff --git a/htdocs/theme/common/flags/lt.png b/public/theme/common/flags/lt.png similarity index 100% rename from htdocs/theme/common/flags/lt.png rename to public/theme/common/flags/lt.png diff --git a/htdocs/theme/common/flags/lu.png b/public/theme/common/flags/lu.png similarity index 100% rename from htdocs/theme/common/flags/lu.png rename to public/theme/common/flags/lu.png diff --git a/htdocs/theme/common/flags/lv.png b/public/theme/common/flags/lv.png similarity index 100% rename from htdocs/theme/common/flags/lv.png rename to public/theme/common/flags/lv.png diff --git a/htdocs/theme/common/flags/ly.png b/public/theme/common/flags/ly.png similarity index 100% rename from htdocs/theme/common/flags/ly.png rename to public/theme/common/flags/ly.png diff --git a/htdocs/theme/common/flags/ma.png b/public/theme/common/flags/ma.png similarity index 100% rename from htdocs/theme/common/flags/ma.png rename to public/theme/common/flags/ma.png diff --git a/htdocs/theme/common/flags/mc.png b/public/theme/common/flags/mc.png similarity index 100% rename from htdocs/theme/common/flags/mc.png rename to public/theme/common/flags/mc.png diff --git a/htdocs/theme/common/flags/md.png b/public/theme/common/flags/md.png similarity index 100% rename from htdocs/theme/common/flags/md.png rename to public/theme/common/flags/md.png diff --git a/htdocs/theme/common/flags/me.png b/public/theme/common/flags/me.png similarity index 100% rename from htdocs/theme/common/flags/me.png rename to public/theme/common/flags/me.png diff --git a/htdocs/theme/common/flags/mg.png b/public/theme/common/flags/mg.png similarity index 100% rename from htdocs/theme/common/flags/mg.png rename to public/theme/common/flags/mg.png diff --git a/htdocs/theme/common/flags/mh.png b/public/theme/common/flags/mh.png similarity index 100% rename from htdocs/theme/common/flags/mh.png rename to public/theme/common/flags/mh.png diff --git a/htdocs/theme/common/flags/mk.png b/public/theme/common/flags/mk.png similarity index 100% rename from htdocs/theme/common/flags/mk.png rename to public/theme/common/flags/mk.png diff --git a/htdocs/theme/common/flags/ml.png b/public/theme/common/flags/ml.png similarity index 100% rename from htdocs/theme/common/flags/ml.png rename to public/theme/common/flags/ml.png diff --git a/htdocs/theme/common/flags/mm.png b/public/theme/common/flags/mm.png similarity index 100% rename from htdocs/theme/common/flags/mm.png rename to public/theme/common/flags/mm.png diff --git a/htdocs/theme/common/flags/mn.png b/public/theme/common/flags/mn.png similarity index 100% rename from htdocs/theme/common/flags/mn.png rename to public/theme/common/flags/mn.png diff --git a/htdocs/theme/common/flags/mo.png b/public/theme/common/flags/mo.png similarity index 100% rename from htdocs/theme/common/flags/mo.png rename to public/theme/common/flags/mo.png diff --git a/htdocs/theme/common/flags/mp.png b/public/theme/common/flags/mp.png similarity index 100% rename from htdocs/theme/common/flags/mp.png rename to public/theme/common/flags/mp.png diff --git a/htdocs/theme/common/flags/mq.png b/public/theme/common/flags/mq.png similarity index 100% rename from htdocs/theme/common/flags/mq.png rename to public/theme/common/flags/mq.png diff --git a/htdocs/theme/common/flags/mr.png b/public/theme/common/flags/mr.png similarity index 100% rename from htdocs/theme/common/flags/mr.png rename to public/theme/common/flags/mr.png diff --git a/htdocs/theme/common/flags/ms.png b/public/theme/common/flags/ms.png similarity index 100% rename from htdocs/theme/common/flags/ms.png rename to public/theme/common/flags/ms.png diff --git a/htdocs/theme/common/flags/mt.png b/public/theme/common/flags/mt.png similarity index 100% rename from htdocs/theme/common/flags/mt.png rename to public/theme/common/flags/mt.png diff --git a/htdocs/theme/common/flags/mu.png b/public/theme/common/flags/mu.png similarity index 100% rename from htdocs/theme/common/flags/mu.png rename to public/theme/common/flags/mu.png diff --git a/htdocs/theme/common/flags/mv.png b/public/theme/common/flags/mv.png similarity index 100% rename from htdocs/theme/common/flags/mv.png rename to public/theme/common/flags/mv.png diff --git a/htdocs/theme/common/flags/mw.png b/public/theme/common/flags/mw.png similarity index 100% rename from htdocs/theme/common/flags/mw.png rename to public/theme/common/flags/mw.png diff --git a/htdocs/theme/common/flags/mx.png b/public/theme/common/flags/mx.png similarity index 100% rename from htdocs/theme/common/flags/mx.png rename to public/theme/common/flags/mx.png diff --git a/htdocs/theme/common/flags/my.png b/public/theme/common/flags/my.png similarity index 100% rename from htdocs/theme/common/flags/my.png rename to public/theme/common/flags/my.png diff --git a/htdocs/theme/common/flags/mz.png b/public/theme/common/flags/mz.png similarity index 100% rename from htdocs/theme/common/flags/mz.png rename to public/theme/common/flags/mz.png diff --git a/htdocs/theme/common/flags/na.png b/public/theme/common/flags/na.png similarity index 100% rename from htdocs/theme/common/flags/na.png rename to public/theme/common/flags/na.png diff --git a/htdocs/theme/common/flags/nc.png b/public/theme/common/flags/nc.png similarity index 100% rename from htdocs/theme/common/flags/nc.png rename to public/theme/common/flags/nc.png diff --git a/htdocs/theme/common/flags/ne.png b/public/theme/common/flags/ne.png similarity index 100% rename from htdocs/theme/common/flags/ne.png rename to public/theme/common/flags/ne.png diff --git a/htdocs/theme/common/flags/nf.png b/public/theme/common/flags/nf.png similarity index 100% rename from htdocs/theme/common/flags/nf.png rename to public/theme/common/flags/nf.png diff --git a/htdocs/theme/common/flags/ng.png b/public/theme/common/flags/ng.png similarity index 100% rename from htdocs/theme/common/flags/ng.png rename to public/theme/common/flags/ng.png diff --git a/htdocs/theme/common/flags/ni.png b/public/theme/common/flags/ni.png similarity index 100% rename from htdocs/theme/common/flags/ni.png rename to public/theme/common/flags/ni.png diff --git a/htdocs/theme/common/flags/nl.png b/public/theme/common/flags/nl.png similarity index 100% rename from htdocs/theme/common/flags/nl.png rename to public/theme/common/flags/nl.png diff --git a/htdocs/theme/common/flags/no.png b/public/theme/common/flags/no.png similarity index 100% rename from htdocs/theme/common/flags/no.png rename to public/theme/common/flags/no.png diff --git a/htdocs/theme/common/flags/np.png b/public/theme/common/flags/np.png similarity index 100% rename from htdocs/theme/common/flags/np.png rename to public/theme/common/flags/np.png diff --git a/htdocs/theme/common/flags/nr.png b/public/theme/common/flags/nr.png similarity index 100% rename from htdocs/theme/common/flags/nr.png rename to public/theme/common/flags/nr.png diff --git a/htdocs/theme/common/flags/nu.png b/public/theme/common/flags/nu.png similarity index 100% rename from htdocs/theme/common/flags/nu.png rename to public/theme/common/flags/nu.png diff --git a/htdocs/theme/common/flags/nz.png b/public/theme/common/flags/nz.png similarity index 100% rename from htdocs/theme/common/flags/nz.png rename to public/theme/common/flags/nz.png diff --git a/htdocs/theme/common/flags/om.png b/public/theme/common/flags/om.png similarity index 100% rename from htdocs/theme/common/flags/om.png rename to public/theme/common/flags/om.png diff --git a/htdocs/theme/common/flags/pa.png b/public/theme/common/flags/pa.png similarity index 100% rename from htdocs/theme/common/flags/pa.png rename to public/theme/common/flags/pa.png diff --git a/htdocs/theme/common/flags/pe.png b/public/theme/common/flags/pe.png similarity index 100% rename from htdocs/theme/common/flags/pe.png rename to public/theme/common/flags/pe.png diff --git a/htdocs/theme/common/flags/pf.png b/public/theme/common/flags/pf.png similarity index 100% rename from htdocs/theme/common/flags/pf.png rename to public/theme/common/flags/pf.png diff --git a/htdocs/theme/common/flags/pg.png b/public/theme/common/flags/pg.png similarity index 100% rename from htdocs/theme/common/flags/pg.png rename to public/theme/common/flags/pg.png diff --git a/htdocs/theme/common/flags/ph.png b/public/theme/common/flags/ph.png similarity index 100% rename from htdocs/theme/common/flags/ph.png rename to public/theme/common/flags/ph.png diff --git a/htdocs/theme/common/flags/pk.png b/public/theme/common/flags/pk.png similarity index 100% rename from htdocs/theme/common/flags/pk.png rename to public/theme/common/flags/pk.png diff --git a/htdocs/theme/common/flags/pl.png b/public/theme/common/flags/pl.png similarity index 100% rename from htdocs/theme/common/flags/pl.png rename to public/theme/common/flags/pl.png diff --git a/htdocs/theme/common/flags/pm.png b/public/theme/common/flags/pm.png similarity index 100% rename from htdocs/theme/common/flags/pm.png rename to public/theme/common/flags/pm.png diff --git a/htdocs/theme/common/flags/pn.png b/public/theme/common/flags/pn.png similarity index 100% rename from htdocs/theme/common/flags/pn.png rename to public/theme/common/flags/pn.png diff --git a/htdocs/theme/common/flags/pr.png b/public/theme/common/flags/pr.png similarity index 100% rename from htdocs/theme/common/flags/pr.png rename to public/theme/common/flags/pr.png diff --git a/htdocs/theme/common/flags/ps.png b/public/theme/common/flags/ps.png similarity index 100% rename from htdocs/theme/common/flags/ps.png rename to public/theme/common/flags/ps.png diff --git a/htdocs/theme/common/flags/pt.png b/public/theme/common/flags/pt.png similarity index 100% rename from htdocs/theme/common/flags/pt.png rename to public/theme/common/flags/pt.png diff --git a/htdocs/theme/common/flags/pw.png b/public/theme/common/flags/pw.png similarity index 100% rename from htdocs/theme/common/flags/pw.png rename to public/theme/common/flags/pw.png diff --git a/htdocs/theme/common/flags/py.png b/public/theme/common/flags/py.png similarity index 100% rename from htdocs/theme/common/flags/py.png rename to public/theme/common/flags/py.png diff --git a/htdocs/theme/common/flags/qa.png b/public/theme/common/flags/qa.png similarity index 100% rename from htdocs/theme/common/flags/qa.png rename to public/theme/common/flags/qa.png diff --git a/htdocs/theme/common/flags/re.png b/public/theme/common/flags/re.png similarity index 100% rename from htdocs/theme/common/flags/re.png rename to public/theme/common/flags/re.png diff --git a/htdocs/theme/common/flags/ro.png b/public/theme/common/flags/ro.png similarity index 100% rename from htdocs/theme/common/flags/ro.png rename to public/theme/common/flags/ro.png diff --git a/htdocs/theme/common/flags/rs.png b/public/theme/common/flags/rs.png similarity index 100% rename from htdocs/theme/common/flags/rs.png rename to public/theme/common/flags/rs.png diff --git a/htdocs/theme/common/flags/ru.png b/public/theme/common/flags/ru.png similarity index 100% rename from htdocs/theme/common/flags/ru.png rename to public/theme/common/flags/ru.png diff --git a/htdocs/theme/common/flags/rw.png b/public/theme/common/flags/rw.png similarity index 100% rename from htdocs/theme/common/flags/rw.png rename to public/theme/common/flags/rw.png diff --git a/htdocs/theme/common/flags/sa.png b/public/theme/common/flags/sa.png similarity index 100% rename from htdocs/theme/common/flags/sa.png rename to public/theme/common/flags/sa.png diff --git a/htdocs/theme/common/flags/sb.png b/public/theme/common/flags/sb.png similarity index 100% rename from htdocs/theme/common/flags/sb.png rename to public/theme/common/flags/sb.png diff --git a/htdocs/theme/common/flags/sc.png b/public/theme/common/flags/sc.png similarity index 100% rename from htdocs/theme/common/flags/sc.png rename to public/theme/common/flags/sc.png diff --git a/htdocs/theme/common/flags/scotland.png b/public/theme/common/flags/scotland.png similarity index 100% rename from htdocs/theme/common/flags/scotland.png rename to public/theme/common/flags/scotland.png diff --git a/htdocs/theme/common/flags/sd.png b/public/theme/common/flags/sd.png similarity index 100% rename from htdocs/theme/common/flags/sd.png rename to public/theme/common/flags/sd.png diff --git a/htdocs/theme/common/flags/se.png b/public/theme/common/flags/se.png similarity index 100% rename from htdocs/theme/common/flags/se.png rename to public/theme/common/flags/se.png diff --git a/htdocs/theme/common/flags/sg.png b/public/theme/common/flags/sg.png similarity index 100% rename from htdocs/theme/common/flags/sg.png rename to public/theme/common/flags/sg.png diff --git a/htdocs/theme/common/flags/sh.png b/public/theme/common/flags/sh.png similarity index 100% rename from htdocs/theme/common/flags/sh.png rename to public/theme/common/flags/sh.png diff --git a/htdocs/theme/common/flags/si.png b/public/theme/common/flags/si.png similarity index 100% rename from htdocs/theme/common/flags/si.png rename to public/theme/common/flags/si.png diff --git a/htdocs/theme/common/flags/sj.png b/public/theme/common/flags/sj.png similarity index 100% rename from htdocs/theme/common/flags/sj.png rename to public/theme/common/flags/sj.png diff --git a/htdocs/theme/common/flags/sk.png b/public/theme/common/flags/sk.png similarity index 100% rename from htdocs/theme/common/flags/sk.png rename to public/theme/common/flags/sk.png diff --git a/htdocs/theme/common/flags/sl.png b/public/theme/common/flags/sl.png similarity index 100% rename from htdocs/theme/common/flags/sl.png rename to public/theme/common/flags/sl.png diff --git a/htdocs/theme/common/flags/sm.png b/public/theme/common/flags/sm.png similarity index 100% rename from htdocs/theme/common/flags/sm.png rename to public/theme/common/flags/sm.png diff --git a/htdocs/theme/common/flags/sn.png b/public/theme/common/flags/sn.png similarity index 100% rename from htdocs/theme/common/flags/sn.png rename to public/theme/common/flags/sn.png diff --git a/htdocs/theme/common/flags/so.png b/public/theme/common/flags/so.png similarity index 100% rename from htdocs/theme/common/flags/so.png rename to public/theme/common/flags/so.png diff --git a/htdocs/theme/common/flags/sr.png b/public/theme/common/flags/sr.png similarity index 100% rename from htdocs/theme/common/flags/sr.png rename to public/theme/common/flags/sr.png diff --git a/htdocs/theme/common/flags/st.png b/public/theme/common/flags/st.png similarity index 100% rename from htdocs/theme/common/flags/st.png rename to public/theme/common/flags/st.png diff --git a/htdocs/theme/common/flags/sv.png b/public/theme/common/flags/sv.png similarity index 100% rename from htdocs/theme/common/flags/sv.png rename to public/theme/common/flags/sv.png diff --git a/htdocs/theme/common/flags/sy.png b/public/theme/common/flags/sy.png similarity index 100% rename from htdocs/theme/common/flags/sy.png rename to public/theme/common/flags/sy.png diff --git a/htdocs/theme/common/flags/sz.png b/public/theme/common/flags/sz.png similarity index 100% rename from htdocs/theme/common/flags/sz.png rename to public/theme/common/flags/sz.png diff --git a/htdocs/theme/common/flags/tc.png b/public/theme/common/flags/tc.png similarity index 100% rename from htdocs/theme/common/flags/tc.png rename to public/theme/common/flags/tc.png diff --git a/htdocs/theme/common/flags/td.png b/public/theme/common/flags/td.png similarity index 100% rename from htdocs/theme/common/flags/td.png rename to public/theme/common/flags/td.png diff --git a/htdocs/theme/common/flags/tf.png b/public/theme/common/flags/tf.png similarity index 100% rename from htdocs/theme/common/flags/tf.png rename to public/theme/common/flags/tf.png diff --git a/htdocs/theme/common/flags/tg.png b/public/theme/common/flags/tg.png similarity index 100% rename from htdocs/theme/common/flags/tg.png rename to public/theme/common/flags/tg.png diff --git a/htdocs/theme/common/flags/th.png b/public/theme/common/flags/th.png similarity index 100% rename from htdocs/theme/common/flags/th.png rename to public/theme/common/flags/th.png diff --git a/htdocs/theme/common/flags/tj.png b/public/theme/common/flags/tj.png similarity index 100% rename from htdocs/theme/common/flags/tj.png rename to public/theme/common/flags/tj.png diff --git a/htdocs/theme/common/flags/tk.png b/public/theme/common/flags/tk.png similarity index 100% rename from htdocs/theme/common/flags/tk.png rename to public/theme/common/flags/tk.png diff --git a/htdocs/theme/common/flags/tl.png b/public/theme/common/flags/tl.png similarity index 100% rename from htdocs/theme/common/flags/tl.png rename to public/theme/common/flags/tl.png diff --git a/htdocs/theme/common/flags/tm.png b/public/theme/common/flags/tm.png similarity index 100% rename from htdocs/theme/common/flags/tm.png rename to public/theme/common/flags/tm.png diff --git a/htdocs/theme/common/flags/tn.png b/public/theme/common/flags/tn.png similarity index 100% rename from htdocs/theme/common/flags/tn.png rename to public/theme/common/flags/tn.png diff --git a/htdocs/theme/common/flags/to.png b/public/theme/common/flags/to.png similarity index 100% rename from htdocs/theme/common/flags/to.png rename to public/theme/common/flags/to.png diff --git a/htdocs/theme/common/flags/tr.png b/public/theme/common/flags/tr.png similarity index 100% rename from htdocs/theme/common/flags/tr.png rename to public/theme/common/flags/tr.png diff --git a/htdocs/theme/common/flags/trans.png b/public/theme/common/flags/trans.png similarity index 100% rename from htdocs/theme/common/flags/trans.png rename to public/theme/common/flags/trans.png diff --git a/htdocs/theme/common/flags/tt.png b/public/theme/common/flags/tt.png similarity index 100% rename from htdocs/theme/common/flags/tt.png rename to public/theme/common/flags/tt.png diff --git a/htdocs/theme/common/flags/tv.png b/public/theme/common/flags/tv.png similarity index 100% rename from htdocs/theme/common/flags/tv.png rename to public/theme/common/flags/tv.png diff --git a/htdocs/theme/common/flags/tw.png b/public/theme/common/flags/tw.png similarity index 100% rename from htdocs/theme/common/flags/tw.png rename to public/theme/common/flags/tw.png diff --git a/htdocs/theme/common/flags/tz.png b/public/theme/common/flags/tz.png similarity index 100% rename from htdocs/theme/common/flags/tz.png rename to public/theme/common/flags/tz.png diff --git a/htdocs/theme/common/flags/ua.png b/public/theme/common/flags/ua.png similarity index 100% rename from htdocs/theme/common/flags/ua.png rename to public/theme/common/flags/ua.png diff --git a/htdocs/theme/common/flags/ug.png b/public/theme/common/flags/ug.png similarity index 100% rename from htdocs/theme/common/flags/ug.png rename to public/theme/common/flags/ug.png diff --git a/htdocs/theme/common/flags/uk.png b/public/theme/common/flags/uk.png similarity index 100% rename from htdocs/theme/common/flags/uk.png rename to public/theme/common/flags/uk.png diff --git a/htdocs/theme/common/flags/um.png b/public/theme/common/flags/um.png similarity index 100% rename from htdocs/theme/common/flags/um.png rename to public/theme/common/flags/um.png diff --git a/htdocs/theme/common/flags/us.png b/public/theme/common/flags/us.png similarity index 100% rename from htdocs/theme/common/flags/us.png rename to public/theme/common/flags/us.png diff --git a/htdocs/theme/common/flags/uy.png b/public/theme/common/flags/uy.png similarity index 100% rename from htdocs/theme/common/flags/uy.png rename to public/theme/common/flags/uy.png diff --git a/htdocs/theme/common/flags/uz.png b/public/theme/common/flags/uz.png similarity index 100% rename from htdocs/theme/common/flags/uz.png rename to public/theme/common/flags/uz.png diff --git a/htdocs/theme/common/flags/va.png b/public/theme/common/flags/va.png similarity index 100% rename from htdocs/theme/common/flags/va.png rename to public/theme/common/flags/va.png diff --git a/htdocs/theme/common/flags/vc.png b/public/theme/common/flags/vc.png similarity index 100% rename from htdocs/theme/common/flags/vc.png rename to public/theme/common/flags/vc.png diff --git a/htdocs/theme/common/flags/ve.png b/public/theme/common/flags/ve.png similarity index 100% rename from htdocs/theme/common/flags/ve.png rename to public/theme/common/flags/ve.png diff --git a/htdocs/theme/common/flags/vg.png b/public/theme/common/flags/vg.png similarity index 100% rename from htdocs/theme/common/flags/vg.png rename to public/theme/common/flags/vg.png diff --git a/htdocs/theme/common/flags/vi.png b/public/theme/common/flags/vi.png similarity index 100% rename from htdocs/theme/common/flags/vi.png rename to public/theme/common/flags/vi.png diff --git a/htdocs/theme/common/flags/vn.png b/public/theme/common/flags/vn.png similarity index 100% rename from htdocs/theme/common/flags/vn.png rename to public/theme/common/flags/vn.png diff --git a/htdocs/theme/common/flags/vu.png b/public/theme/common/flags/vu.png similarity index 100% rename from htdocs/theme/common/flags/vu.png rename to public/theme/common/flags/vu.png diff --git a/htdocs/theme/common/flags/wales.png b/public/theme/common/flags/wales.png similarity index 100% rename from htdocs/theme/common/flags/wales.png rename to public/theme/common/flags/wales.png diff --git a/htdocs/theme/common/flags/wf.png b/public/theme/common/flags/wf.png similarity index 100% rename from htdocs/theme/common/flags/wf.png rename to public/theme/common/flags/wf.png diff --git a/htdocs/theme/common/flags/ws.png b/public/theme/common/flags/ws.png similarity index 100% rename from htdocs/theme/common/flags/ws.png rename to public/theme/common/flags/ws.png diff --git a/htdocs/theme/common/flags/ye.png b/public/theme/common/flags/ye.png similarity index 100% rename from htdocs/theme/common/flags/ye.png rename to public/theme/common/flags/ye.png diff --git a/htdocs/theme/common/flags/yt.png b/public/theme/common/flags/yt.png similarity index 100% rename from htdocs/theme/common/flags/yt.png rename to public/theme/common/flags/yt.png diff --git a/htdocs/theme/common/flags/za.png b/public/theme/common/flags/za.png similarity index 100% rename from htdocs/theme/common/flags/za.png rename to public/theme/common/flags/za.png diff --git a/htdocs/theme/common/flags/zm.png b/public/theme/common/flags/zm.png similarity index 100% rename from htdocs/theme/common/flags/zm.png rename to public/theme/common/flags/zm.png diff --git a/htdocs/theme/common/flags/zw.png b/public/theme/common/flags/zw.png similarity index 100% rename from htdocs/theme/common/flags/zw.png rename to public/theme/common/flags/zw.png diff --git a/htdocs/theme/common/folder-new.png b/public/theme/common/folder-new.png similarity index 100% rename from htdocs/theme/common/folder-new.png rename to public/theme/common/folder-new.png diff --git a/htdocs/theme/common/gmap.png b/public/theme/common/gmap.png similarity index 100% rename from htdocs/theme/common/gmap.png rename to public/theme/common/gmap.png diff --git a/htdocs/theme/common/help.png b/public/theme/common/help.png similarity index 100% rename from htdocs/theme/common/help.png rename to public/theme/common/help.png diff --git a/htdocs/theme/common/ical.gif b/public/theme/common/ical.gif similarity index 100% rename from htdocs/theme/common/ical.gif rename to public/theme/common/ical.gif diff --git a/htdocs/theme/common/index.html b/public/theme/common/index.html similarity index 100% rename from htdocs/theme/common/index.html rename to public/theme/common/index.html diff --git a/htdocs/theme/common/information.png b/public/theme/common/information.png similarity index 100% rename from htdocs/theme/common/information.png rename to public/theme/common/information.png diff --git a/htdocs/theme/common/logo_cerfa.png b/public/theme/common/logo_cerfa.png similarity index 100% rename from htdocs/theme/common/logo_cerfa.png rename to public/theme/common/logo_cerfa.png diff --git a/htdocs/theme/common/mime/archive.png b/public/theme/common/mime/archive.png similarity index 100% rename from htdocs/theme/common/mime/archive.png rename to public/theme/common/mime/archive.png diff --git a/htdocs/theme/common/mime/audio.png b/public/theme/common/mime/audio.png similarity index 100% rename from htdocs/theme/common/mime/audio.png rename to public/theme/common/mime/audio.png diff --git a/htdocs/theme/common/mime/css.png b/public/theme/common/mime/css.png similarity index 100% rename from htdocs/theme/common/mime/css.png rename to public/theme/common/mime/css.png diff --git a/htdocs/theme/common/mime/doc.png b/public/theme/common/mime/doc.png similarity index 100% rename from htdocs/theme/common/mime/doc.png rename to public/theme/common/mime/doc.png diff --git a/htdocs/theme/common/mime/dotnet.png b/public/theme/common/mime/dotnet.png similarity index 100% rename from htdocs/theme/common/mime/dotnet.png rename to public/theme/common/mime/dotnet.png diff --git a/htdocs/theme/common/mime/encrypt.png b/public/theme/common/mime/encrypt.png similarity index 100% rename from htdocs/theme/common/mime/encrypt.png rename to public/theme/common/mime/encrypt.png diff --git a/htdocs/theme/common/mime/error.png b/public/theme/common/mime/error.png similarity index 100% rename from htdocs/theme/common/mime/error.png rename to public/theme/common/mime/error.png diff --git a/htdocs/theme/common/mime/flash.png b/public/theme/common/mime/flash.png similarity index 100% rename from htdocs/theme/common/mime/flash.png rename to public/theme/common/mime/flash.png diff --git a/htdocs/theme/common/mime/glasses.png b/public/theme/common/mime/glasses.png similarity index 100% rename from htdocs/theme/common/mime/glasses.png rename to public/theme/common/mime/glasses.png diff --git a/htdocs/theme/common/mime/html.png b/public/theme/common/mime/html.png similarity index 100% rename from htdocs/theme/common/mime/html.png rename to public/theme/common/mime/html.png diff --git a/htdocs/theme/common/mime/image.png b/public/theme/common/mime/image.png similarity index 100% rename from htdocs/theme/common/mime/image.png rename to public/theme/common/mime/image.png diff --git a/htdocs/theme/common/mime/index.html b/public/theme/common/mime/index.html similarity index 100% rename from htdocs/theme/common/mime/index.html rename to public/theme/common/mime/index.html diff --git a/htdocs/theme/common/mime/jnlp.png b/public/theme/common/mime/jnlp.png similarity index 100% rename from htdocs/theme/common/mime/jnlp.png rename to public/theme/common/mime/jnlp.png diff --git a/htdocs/theme/common/mime/jscript.png b/public/theme/common/mime/jscript.png similarity index 100% rename from htdocs/theme/common/mime/jscript.png rename to public/theme/common/mime/jscript.png diff --git a/htdocs/theme/common/mime/library.png b/public/theme/common/mime/library.png similarity index 100% rename from htdocs/theme/common/mime/library.png rename to public/theme/common/mime/library.png diff --git a/htdocs/theme/common/mime/lit.png b/public/theme/common/mime/lit.png similarity index 100% rename from htdocs/theme/common/mime/lit.png rename to public/theme/common/mime/lit.png diff --git a/htdocs/theme/common/mime/mdb.png b/public/theme/common/mime/mdb.png similarity index 100% rename from htdocs/theme/common/mime/mdb.png rename to public/theme/common/mime/mdb.png diff --git a/htdocs/theme/common/mime/notavailable.png b/public/theme/common/mime/notavailable.png similarity index 100% rename from htdocs/theme/common/mime/notavailable.png rename to public/theme/common/mime/notavailable.png diff --git a/htdocs/theme/common/mime/ooffice.png b/public/theme/common/mime/ooffice.png similarity index 100% rename from htdocs/theme/common/mime/ooffice.png rename to public/theme/common/mime/ooffice.png diff --git a/htdocs/theme/common/mime/other.png b/public/theme/common/mime/other.png similarity index 100% rename from htdocs/theme/common/mime/other.png rename to public/theme/common/mime/other.png diff --git a/htdocs/theme/common/mime/page.png b/public/theme/common/mime/page.png similarity index 100% rename from htdocs/theme/common/mime/page.png rename to public/theme/common/mime/page.png diff --git a/htdocs/theme/common/mime/pdf.png b/public/theme/common/mime/pdf.png similarity index 100% rename from htdocs/theme/common/mime/pdf.png rename to public/theme/common/mime/pdf.png diff --git a/htdocs/theme/common/mime/php.png b/public/theme/common/mime/php.png similarity index 100% rename from htdocs/theme/common/mime/php.png rename to public/theme/common/mime/php.png diff --git a/htdocs/theme/common/mime/pl.png b/public/theme/common/mime/pl.png similarity index 100% rename from htdocs/theme/common/mime/pl.png rename to public/theme/common/mime/pl.png diff --git a/htdocs/theme/common/mime/ppt.png b/public/theme/common/mime/ppt.png similarity index 100% rename from htdocs/theme/common/mime/ppt.png rename to public/theme/common/mime/ppt.png diff --git a/htdocs/theme/common/mime/readme.txt b/public/theme/common/mime/readme.txt similarity index 100% rename from htdocs/theme/common/mime/readme.txt rename to public/theme/common/mime/readme.txt diff --git a/htdocs/theme/common/mime/rss.png b/public/theme/common/mime/rss.png similarity index 100% rename from htdocs/theme/common/mime/rss.png rename to public/theme/common/mime/rss.png diff --git a/htdocs/theme/common/mime/script.png b/public/theme/common/mime/script.png similarity index 100% rename from htdocs/theme/common/mime/script.png rename to public/theme/common/mime/script.png diff --git a/htdocs/theme/common/mime/svg.png b/public/theme/common/mime/svg.png similarity index 100% rename from htdocs/theme/common/mime/svg.png rename to public/theme/common/mime/svg.png diff --git a/htdocs/theme/common/mime/text.png b/public/theme/common/mime/text.png similarity index 100% rename from htdocs/theme/common/mime/text.png rename to public/theme/common/mime/text.png diff --git a/htdocs/theme/common/mime/ttf.png b/public/theme/common/mime/ttf.png similarity index 100% rename from htdocs/theme/common/mime/ttf.png rename to public/theme/common/mime/ttf.png diff --git a/htdocs/theme/common/mime/unknown.png b/public/theme/common/mime/unknown.png similarity index 100% rename from htdocs/theme/common/mime/unknown.png rename to public/theme/common/mime/unknown.png diff --git a/htdocs/theme/common/mime/video.png b/public/theme/common/mime/video.png similarity index 100% rename from htdocs/theme/common/mime/video.png rename to public/theme/common/mime/video.png diff --git a/htdocs/theme/common/mime/xls.png b/public/theme/common/mime/xls.png similarity index 100% rename from htdocs/theme/common/mime/xls.png rename to public/theme/common/mime/xls.png diff --git a/htdocs/theme/common/paypal.png b/public/theme/common/paypal.png similarity index 100% rename from htdocs/theme/common/paypal.png rename to public/theme/common/paypal.png diff --git a/htdocs/theme/common/redstar.png b/public/theme/common/redstar.png similarity index 100% rename from htdocs/theme/common/redstar.png rename to public/theme/common/redstar.png diff --git a/htdocs/theme/common/rss.gif b/public/theme/common/rss.gif similarity index 100% rename from htdocs/theme/common/rss.gif rename to public/theme/common/rss.gif diff --git a/htdocs/theme/common/skype_callbutton.png b/public/theme/common/skype_callbutton.png similarity index 100% rename from htdocs/theme/common/skype_callbutton.png rename to public/theme/common/skype_callbutton.png diff --git a/htdocs/theme/common/skype_chatbutton.png b/public/theme/common/skype_chatbutton.png similarity index 100% rename from htdocs/theme/common/skype_chatbutton.png rename to public/theme/common/skype_chatbutton.png diff --git a/htdocs/theme/common/star.png b/public/theme/common/star.png similarity index 100% rename from htdocs/theme/common/star.png rename to public/theme/common/star.png diff --git a/htdocs/theme/common/transform-crop-and-resize.png b/public/theme/common/transform-crop-and-resize.png similarity index 100% rename from htdocs/theme/common/transform-crop-and-resize.png rename to public/theme/common/transform-crop-and-resize.png diff --git a/htdocs/theme/common/transparent.png b/public/theme/common/transparent.png similarity index 100% rename from htdocs/theme/common/transparent.png rename to public/theme/common/transparent.png diff --git a/htdocs/theme/common/treemenu/base.gif b/public/theme/common/treemenu/base.gif similarity index 100% rename from htdocs/theme/common/treemenu/base.gif rename to public/theme/common/treemenu/base.gif diff --git a/htdocs/theme/common/treemenu/branch.gif b/public/theme/common/treemenu/branch.gif similarity index 100% rename from htdocs/theme/common/treemenu/branch.gif rename to public/theme/common/treemenu/branch.gif diff --git a/htdocs/theme/common/treemenu/branchbottom.gif b/public/theme/common/treemenu/branchbottom.gif similarity index 100% rename from htdocs/theme/common/treemenu/branchbottom.gif rename to public/theme/common/treemenu/branchbottom.gif diff --git a/htdocs/theme/common/treemenu/branchtop.gif b/public/theme/common/treemenu/branchtop.gif similarity index 100% rename from htdocs/theme/common/treemenu/branchtop.gif rename to public/theme/common/treemenu/branchtop.gif diff --git a/htdocs/theme/common/treemenu/folder-expanded.gif b/public/theme/common/treemenu/folder-expanded.gif similarity index 100% rename from htdocs/theme/common/treemenu/folder-expanded.gif rename to public/theme/common/treemenu/folder-expanded.gif diff --git a/htdocs/theme/common/treemenu/folder.gif b/public/theme/common/treemenu/folder.gif similarity index 100% rename from htdocs/theme/common/treemenu/folder.gif rename to public/theme/common/treemenu/folder.gif diff --git a/htdocs/theme/common/treemenu/folder2-expanded.png b/public/theme/common/treemenu/folder2-expanded.png similarity index 100% rename from htdocs/theme/common/treemenu/folder2-expanded.png rename to public/theme/common/treemenu/folder2-expanded.png diff --git a/htdocs/theme/common/treemenu/folder2.png b/public/theme/common/treemenu/folder2.png similarity index 100% rename from htdocs/theme/common/treemenu/folder2.png rename to public/theme/common/treemenu/folder2.png diff --git a/htdocs/theme/common/treemenu/imgfolder.gif b/public/theme/common/treemenu/imgfolder.gif similarity index 100% rename from htdocs/theme/common/treemenu/imgfolder.gif rename to public/theme/common/treemenu/imgfolder.gif diff --git a/htdocs/theme/common/treemenu/index.html b/public/theme/common/treemenu/index.html similarity index 100% rename from htdocs/theme/common/treemenu/index.html rename to public/theme/common/treemenu/index.html diff --git a/htdocs/theme/common/treemenu/line.gif b/public/theme/common/treemenu/line.gif similarity index 100% rename from htdocs/theme/common/treemenu/line.gif rename to public/theme/common/treemenu/line.gif diff --git a/htdocs/theme/common/treemenu/linebottom.gif b/public/theme/common/treemenu/linebottom.gif similarity index 100% rename from htdocs/theme/common/treemenu/linebottom.gif rename to public/theme/common/treemenu/linebottom.gif diff --git a/htdocs/theme/common/treemenu/minus.gif b/public/theme/common/treemenu/minus.gif similarity index 100% rename from htdocs/theme/common/treemenu/minus.gif rename to public/theme/common/treemenu/minus.gif diff --git a/htdocs/theme/common/treemenu/minusbottom.gif b/public/theme/common/treemenu/minusbottom.gif similarity index 100% rename from htdocs/theme/common/treemenu/minusbottom.gif rename to public/theme/common/treemenu/minusbottom.gif diff --git a/htdocs/theme/common/treemenu/minustop.gif b/public/theme/common/treemenu/minustop.gif similarity index 100% rename from htdocs/theme/common/treemenu/minustop.gif rename to public/theme/common/treemenu/minustop.gif diff --git a/htdocs/theme/common/treemenu/minustop2.gif b/public/theme/common/treemenu/minustop2.gif similarity index 100% rename from htdocs/theme/common/treemenu/minustop2.gif rename to public/theme/common/treemenu/minustop2.gif diff --git a/htdocs/theme/common/treemenu/minustop3.gif b/public/theme/common/treemenu/minustop3.gif similarity index 100% rename from htdocs/theme/common/treemenu/minustop3.gif rename to public/theme/common/treemenu/minustop3.gif diff --git a/htdocs/theme/common/treemenu/page.gif b/public/theme/common/treemenu/page.gif similarity index 100% rename from htdocs/theme/common/treemenu/page.gif rename to public/theme/common/treemenu/page.gif diff --git a/htdocs/theme/common/treemenu/plus.gif b/public/theme/common/treemenu/plus.gif similarity index 100% rename from htdocs/theme/common/treemenu/plus.gif rename to public/theme/common/treemenu/plus.gif diff --git a/htdocs/theme/common/treemenu/plusbottom.gif b/public/theme/common/treemenu/plusbottom.gif similarity index 100% rename from htdocs/theme/common/treemenu/plusbottom.gif rename to public/theme/common/treemenu/plusbottom.gif diff --git a/htdocs/theme/common/treemenu/plustop.gif b/public/theme/common/treemenu/plustop.gif similarity index 100% rename from htdocs/theme/common/treemenu/plustop.gif rename to public/theme/common/treemenu/plustop.gif diff --git a/htdocs/theme/common/treemenu/plustop2.gif b/public/theme/common/treemenu/plustop2.gif similarity index 100% rename from htdocs/theme/common/treemenu/plustop2.gif rename to public/theme/common/treemenu/plustop2.gif diff --git a/htdocs/theme/common/treemenu/plustop3.gif b/public/theme/common/treemenu/plustop3.gif similarity index 100% rename from htdocs/theme/common/treemenu/plustop3.gif rename to public/theme/common/treemenu/plustop3.gif diff --git a/htdocs/theme/common/treemenu/trash.gif b/public/theme/common/treemenu/trash.gif similarity index 100% rename from htdocs/theme/common/treemenu/trash.gif rename to public/theme/common/treemenu/trash.gif diff --git a/htdocs/theme/common/vcal.gif b/public/theme/common/vcal.gif similarity index 100% rename from htdocs/theme/common/vcal.gif rename to public/theme/common/vcal.gif diff --git a/htdocs/theme/common/view-refresh.png b/public/theme/common/view-refresh.png similarity index 100% rename from htdocs/theme/common/view-refresh.png rename to public/theme/common/view-refresh.png diff --git a/htdocs/theme/dolibarr.png b/public/theme/dolibarr.png similarity index 100% rename from htdocs/theme/dolibarr.png rename to public/theme/dolibarr.png diff --git a/htdocs/theme/dolibarr_logo.png b/public/theme/dolibarr_logo.png similarity index 100% rename from htdocs/theme/dolibarr_logo.png rename to public/theme/dolibarr_logo.png diff --git a/htdocs/theme/dolibarr_preferred_partner_int.png b/public/theme/dolibarr_preferred_partner_int.png similarity index 100% rename from htdocs/theme/dolibarr_preferred_partner_int.png rename to public/theme/dolibarr_preferred_partner_int.png diff --git a/htdocs/theme/doliforge_logo.png b/public/theme/doliforge_logo.png similarity index 100% rename from htdocs/theme/doliforge_logo.png rename to public/theme/doliforge_logo.png diff --git a/htdocs/theme/dolistore_logo.png b/public/theme/dolistore_logo.png similarity index 100% rename from htdocs/theme/dolistore_logo.png rename to public/theme/dolistore_logo.png diff --git a/htdocs/theme/eldy/.gitignore b/public/theme/eldy/.gitignore similarity index 100% rename from htdocs/theme/eldy/.gitignore rename to public/theme/eldy/.gitignore diff --git a/htdocs/theme/eldy/AUTHOR b/public/theme/eldy/AUTHOR similarity index 100% rename from htdocs/theme/eldy/AUTHOR rename to public/theme/eldy/AUTHOR diff --git a/htdocs/theme/eldy/ckeditor/config.js b/public/theme/eldy/ckeditor/config.js similarity index 100% rename from htdocs/theme/eldy/ckeditor/config.js rename to public/theme/eldy/ckeditor/config.js diff --git a/htdocs/theme/eldy/ckeditor/index.html b/public/theme/eldy/ckeditor/index.html similarity index 100% rename from htdocs/theme/eldy/ckeditor/index.html rename to public/theme/eldy/ckeditor/index.html diff --git a/htdocs/theme/eldy/graph-color.php b/public/theme/eldy/graph-color.php similarity index 100% rename from htdocs/theme/eldy/graph-color.php rename to public/theme/eldy/graph-color.php diff --git a/htdocs/theme/eldy/img/1downarrow.png b/public/theme/eldy/img/1downarrow.png similarity index 100% rename from htdocs/theme/eldy/img/1downarrow.png rename to public/theme/eldy/img/1downarrow.png diff --git a/htdocs/theme/eldy/img/1downarrow_selected.png b/public/theme/eldy/img/1downarrow_selected.png similarity index 100% rename from htdocs/theme/eldy/img/1downarrow_selected.png rename to public/theme/eldy/img/1downarrow_selected.png diff --git a/htdocs/theme/eldy/img/1leftarrow.png b/public/theme/eldy/img/1leftarrow.png similarity index 100% rename from htdocs/theme/eldy/img/1leftarrow.png rename to public/theme/eldy/img/1leftarrow.png diff --git a/htdocs/theme/eldy/img/1leftarrow_selected.png b/public/theme/eldy/img/1leftarrow_selected.png similarity index 100% rename from htdocs/theme/eldy/img/1leftarrow_selected.png rename to public/theme/eldy/img/1leftarrow_selected.png diff --git a/htdocs/theme/eldy/img/1rightarrow.png b/public/theme/eldy/img/1rightarrow.png similarity index 100% rename from htdocs/theme/eldy/img/1rightarrow.png rename to public/theme/eldy/img/1rightarrow.png diff --git a/htdocs/theme/eldy/img/1rightarrow_selected.png b/public/theme/eldy/img/1rightarrow_selected.png similarity index 100% rename from htdocs/theme/eldy/img/1rightarrow_selected.png rename to public/theme/eldy/img/1rightarrow_selected.png diff --git a/htdocs/theme/eldy/img/1uparrow.png b/public/theme/eldy/img/1uparrow.png similarity index 100% rename from htdocs/theme/eldy/img/1uparrow.png rename to public/theme/eldy/img/1uparrow.png diff --git a/htdocs/theme/eldy/img/1uparrow_selected.png b/public/theme/eldy/img/1uparrow_selected.png similarity index 100% rename from htdocs/theme/eldy/img/1uparrow_selected.png rename to public/theme/eldy/img/1uparrow_selected.png diff --git a/htdocs/theme/eldy/img/addfile.png b/public/theme/eldy/img/addfile.png similarity index 100% rename from htdocs/theme/eldy/img/addfile.png rename to public/theme/eldy/img/addfile.png diff --git a/htdocs/theme/eldy/img/background.png b/public/theme/eldy/img/background.png similarity index 100% rename from htdocs/theme/eldy/img/background.png rename to public/theme/eldy/img/background.png diff --git a/htdocs/theme/eldy/img/bg-bas-rubrique.png b/public/theme/eldy/img/bg-bas-rubrique.png similarity index 100% rename from htdocs/theme/eldy/img/bg-bas-rubrique.png rename to public/theme/eldy/img/bg-bas-rubrique.png diff --git a/htdocs/theme/eldy/img/bg-rubrique.png b/public/theme/eldy/img/bg-rubrique.png similarity index 100% rename from htdocs/theme/eldy/img/bg-rubrique.png rename to public/theme/eldy/img/bg-rubrique.png diff --git a/htdocs/theme/eldy/img/bg-titre-rubrique.png b/public/theme/eldy/img/bg-titre-rubrique.png similarity index 100% rename from htdocs/theme/eldy/img/bg-titre-rubrique.png rename to public/theme/eldy/img/bg-titre-rubrique.png diff --git a/htdocs/theme/eldy/img/button_bg.png b/public/theme/eldy/img/button_bg.png similarity index 100% rename from htdocs/theme/eldy/img/button_bg.png rename to public/theme/eldy/img/button_bg.png diff --git a/htdocs/theme/eldy/img/button_edit.png b/public/theme/eldy/img/button_edit.png similarity index 100% rename from htdocs/theme/eldy/img/button_edit.png rename to public/theme/eldy/img/button_edit.png diff --git a/htdocs/theme/eldy/img/calc.png b/public/theme/eldy/img/calc.png similarity index 100% rename from htdocs/theme/eldy/img/calc.png rename to public/theme/eldy/img/calc.png diff --git a/htdocs/theme/eldy/img/calendar.png b/public/theme/eldy/img/calendar.png similarity index 100% rename from htdocs/theme/eldy/img/calendar.png rename to public/theme/eldy/img/calendar.png diff --git a/htdocs/theme/eldy/img/call.png b/public/theme/eldy/img/call.png similarity index 100% rename from htdocs/theme/eldy/img/call.png rename to public/theme/eldy/img/call.png diff --git a/htdocs/theme/eldy/img/call_out.png b/public/theme/eldy/img/call_out.png similarity index 100% rename from htdocs/theme/eldy/img/call_out.png rename to public/theme/eldy/img/call_out.png diff --git a/htdocs/theme/eldy/img/close.png b/public/theme/eldy/img/close.png similarity index 100% rename from htdocs/theme/eldy/img/close.png rename to public/theme/eldy/img/close.png diff --git a/htdocs/theme/eldy/img/close_title.png b/public/theme/eldy/img/close_title.png similarity index 100% rename from htdocs/theme/eldy/img/close_title.png rename to public/theme/eldy/img/close_title.png diff --git a/htdocs/theme/eldy/img/credit_card.png b/public/theme/eldy/img/credit_card.png similarity index 100% rename from htdocs/theme/eldy/img/credit_card.png rename to public/theme/eldy/img/credit_card.png diff --git a/htdocs/theme/eldy/img/delete.png b/public/theme/eldy/img/delete.png similarity index 100% rename from htdocs/theme/eldy/img/delete.png rename to public/theme/eldy/img/delete.png diff --git a/htdocs/theme/eldy/img/detail.png b/public/theme/eldy/img/detail.png similarity index 100% rename from htdocs/theme/eldy/img/detail.png rename to public/theme/eldy/img/detail.png diff --git a/htdocs/theme/eldy/img/disable.png b/public/theme/eldy/img/disable.png similarity index 100% rename from htdocs/theme/eldy/img/disable.png rename to public/theme/eldy/img/disable.png diff --git a/htdocs/theme/eldy/img/edit.png b/public/theme/eldy/img/edit.png similarity index 100% rename from htdocs/theme/eldy/img/edit.png rename to public/theme/eldy/img/edit.png diff --git a/htdocs/theme/eldy/img/edit_add.png b/public/theme/eldy/img/edit_add.png similarity index 100% rename from htdocs/theme/eldy/img/edit_add.png rename to public/theme/eldy/img/edit_add.png diff --git a/htdocs/theme/eldy/img/edit_remove.png b/public/theme/eldy/img/edit_remove.png similarity index 100% rename from htdocs/theme/eldy/img/edit_remove.png rename to public/theme/eldy/img/edit_remove.png diff --git a/htdocs/theme/eldy/img/editdelete.png b/public/theme/eldy/img/editdelete.png similarity index 100% rename from htdocs/theme/eldy/img/editdelete.png rename to public/theme/eldy/img/editdelete.png diff --git a/htdocs/theme/eldy/img/error.png b/public/theme/eldy/img/error.png similarity index 100% rename from htdocs/theme/eldy/img/error.png rename to public/theme/eldy/img/error.png diff --git a/htdocs/theme/eldy/img/external.png b/public/theme/eldy/img/external.png similarity index 100% rename from htdocs/theme/eldy/img/external.png rename to public/theme/eldy/img/external.png diff --git a/htdocs/theme/eldy/img/favicon.ico b/public/theme/eldy/img/favicon.ico similarity index 100% rename from htdocs/theme/eldy/img/favicon.ico rename to public/theme/eldy/img/favicon.ico diff --git a/htdocs/theme/eldy/img/file.png b/public/theme/eldy/img/file.png similarity index 100% rename from htdocs/theme/eldy/img/file.png rename to public/theme/eldy/img/file.png diff --git a/htdocs/theme/eldy/img/filenew.png b/public/theme/eldy/img/filenew.png similarity index 100% rename from htdocs/theme/eldy/img/filenew.png rename to public/theme/eldy/img/filenew.png diff --git a/htdocs/theme/eldy/img/filter.png b/public/theme/eldy/img/filter.png similarity index 100% rename from htdocs/theme/eldy/img/filter.png rename to public/theme/eldy/img/filter.png diff --git a/htdocs/theme/eldy/img/folder-open.png b/public/theme/eldy/img/folder-open.png similarity index 100% rename from htdocs/theme/eldy/img/folder-open.png rename to public/theme/eldy/img/folder-open.png diff --git a/htdocs/theme/eldy/img/folder.png b/public/theme/eldy/img/folder.png similarity index 100% rename from htdocs/theme/eldy/img/folder.png rename to public/theme/eldy/img/folder.png diff --git a/htdocs/theme/eldy/img/gradient.gif b/public/theme/eldy/img/gradient.gif similarity index 100% rename from htdocs/theme/eldy/img/gradient.gif rename to public/theme/eldy/img/gradient.gif diff --git a/htdocs/theme/eldy/img/grip.png b/public/theme/eldy/img/grip.png similarity index 100% rename from htdocs/theme/eldy/img/grip.png rename to public/theme/eldy/img/grip.png diff --git a/htdocs/theme/eldy/img/grip_title.png b/public/theme/eldy/img/grip_title.png similarity index 100% rename from htdocs/theme/eldy/img/grip_title.png rename to public/theme/eldy/img/grip_title.png diff --git a/htdocs/theme/eldy/img/headbg.jpg b/public/theme/eldy/img/headbg.jpg similarity index 100% rename from htdocs/theme/eldy/img/headbg.jpg rename to public/theme/eldy/img/headbg.jpg diff --git a/htdocs/theme/eldy/img/headbg2.jpg b/public/theme/eldy/img/headbg2.jpg similarity index 100% rename from htdocs/theme/eldy/img/headbg2.jpg rename to public/theme/eldy/img/headbg2.jpg diff --git a/htdocs/theme/eldy/img/help.png b/public/theme/eldy/img/help.png similarity index 100% rename from htdocs/theme/eldy/img/help.png rename to public/theme/eldy/img/help.png diff --git a/htdocs/theme/eldy/img/helpdoc.png b/public/theme/eldy/img/helpdoc.png similarity index 100% rename from htdocs/theme/eldy/img/helpdoc.png rename to public/theme/eldy/img/helpdoc.png diff --git a/htdocs/theme/eldy/img/helpdoc_top.png b/public/theme/eldy/img/helpdoc_top.png similarity index 100% rename from htdocs/theme/eldy/img/helpdoc_top.png rename to public/theme/eldy/img/helpdoc_top.png diff --git a/htdocs/theme/eldy/img/high.png b/public/theme/eldy/img/high.png similarity index 100% rename from htdocs/theme/eldy/img/high.png rename to public/theme/eldy/img/high.png diff --git a/htdocs/theme/eldy/img/history.png b/public/theme/eldy/img/history.png similarity index 100% rename from htdocs/theme/eldy/img/history.png rename to public/theme/eldy/img/history.png diff --git a/htdocs/theme/eldy/img/index.html b/public/theme/eldy/img/index.html similarity index 100% rename from htdocs/theme/eldy/img/index.html rename to public/theme/eldy/img/index.html diff --git a/htdocs/theme/eldy/img/info.png b/public/theme/eldy/img/info.png similarity index 100% rename from htdocs/theme/eldy/img/info.png rename to public/theme/eldy/img/info.png diff --git a/htdocs/theme/eldy/img/info_black.png b/public/theme/eldy/img/info_black.png similarity index 100% rename from htdocs/theme/eldy/img/info_black.png rename to public/theme/eldy/img/info_black.png diff --git a/htdocs/theme/eldy/img/list.png b/public/theme/eldy/img/list.png similarity index 100% rename from htdocs/theme/eldy/img/list.png rename to public/theme/eldy/img/list.png diff --git a/htdocs/theme/eldy/img/liste_titre.png b/public/theme/eldy/img/liste_titre.png similarity index 100% rename from htdocs/theme/eldy/img/liste_titre.png rename to public/theme/eldy/img/liste_titre.png diff --git a/htdocs/theme/eldy/img/liste_titre2.png b/public/theme/eldy/img/liste_titre2.png similarity index 100% rename from htdocs/theme/eldy/img/liste_titre2.png rename to public/theme/eldy/img/liste_titre2.png diff --git a/htdocs/theme/eldy/img/listlight.png b/public/theme/eldy/img/listlight.png similarity index 100% rename from htdocs/theme/eldy/img/listlight.png rename to public/theme/eldy/img/listlight.png diff --git a/htdocs/theme/eldy/img/lock.png b/public/theme/eldy/img/lock.png similarity index 100% rename from htdocs/theme/eldy/img/lock.png rename to public/theme/eldy/img/lock.png diff --git a/htdocs/theme/eldy/img/login_background.png b/public/theme/eldy/img/login_background.png similarity index 100% rename from htdocs/theme/eldy/img/login_background.png rename to public/theme/eldy/img/login_background.png diff --git a/htdocs/theme/eldy/img/logo_setup.svg b/public/theme/eldy/img/logo_setup.svg similarity index 100% rename from htdocs/theme/eldy/img/logo_setup.svg rename to public/theme/eldy/img/logo_setup.svg diff --git a/htdocs/theme/eldy/img/logout.png b/public/theme/eldy/img/logout.png similarity index 100% rename from htdocs/theme/eldy/img/logout.png rename to public/theme/eldy/img/logout.png diff --git a/htdocs/theme/eldy/img/logout_top.png b/public/theme/eldy/img/logout_top.png similarity index 100% rename from htdocs/theme/eldy/img/logout_top.png rename to public/theme/eldy/img/logout_top.png diff --git a/htdocs/theme/eldy/img/menus/README.md b/public/theme/eldy/img/menus/README.md similarity index 100% rename from htdocs/theme/eldy/img/menus/README.md rename to public/theme/eldy/img/menus/README.md diff --git a/htdocs/theme/eldy/img/menus/agenda.png b/public/theme/eldy/img/menus/agenda.png similarity index 100% rename from htdocs/theme/eldy/img/menus/agenda.png rename to public/theme/eldy/img/menus/agenda.png diff --git a/htdocs/theme/eldy/img/menus/agenda_over.png b/public/theme/eldy/img/menus/agenda_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/agenda_over.png rename to public/theme/eldy/img/menus/agenda_over.png diff --git a/htdocs/theme/eldy/img/menus/bank.png b/public/theme/eldy/img/menus/bank.png similarity index 100% rename from htdocs/theme/eldy/img/menus/bank.png rename to public/theme/eldy/img/menus/bank.png diff --git a/htdocs/theme/eldy/img/menus/bank_over.png b/public/theme/eldy/img/menus/bank_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/bank_over.png rename to public/theme/eldy/img/menus/bank_over.png diff --git a/htdocs/theme/eldy/img/menus/chart.png b/public/theme/eldy/img/menus/chart.png similarity index 100% rename from htdocs/theme/eldy/img/menus/chart.png rename to public/theme/eldy/img/menus/chart.png diff --git a/htdocs/theme/eldy/img/menus/commercial.png b/public/theme/eldy/img/menus/commercial.png similarity index 100% rename from htdocs/theme/eldy/img/menus/commercial.png rename to public/theme/eldy/img/menus/commercial.png diff --git a/htdocs/theme/eldy/img/menus/commercial_over.png b/public/theme/eldy/img/menus/commercial_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/commercial_over.png rename to public/theme/eldy/img/menus/commercial_over.png diff --git a/htdocs/theme/eldy/img/menus/company.png b/public/theme/eldy/img/menus/company.png similarity index 100% rename from htdocs/theme/eldy/img/menus/company.png rename to public/theme/eldy/img/menus/company.png diff --git a/htdocs/theme/eldy/img/menus/company_over.png b/public/theme/eldy/img/menus/company_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/company_over.png rename to public/theme/eldy/img/menus/company_over.png diff --git a/htdocs/theme/eldy/img/menus/ecm.png b/public/theme/eldy/img/menus/ecm.png similarity index 100% rename from htdocs/theme/eldy/img/menus/ecm.png rename to public/theme/eldy/img/menus/ecm.png diff --git a/htdocs/theme/eldy/img/menus/ecm_over.png b/public/theme/eldy/img/menus/ecm_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/ecm_over.png rename to public/theme/eldy/img/menus/ecm_over.png diff --git a/htdocs/theme/eldy/img/menus/externalsite.png b/public/theme/eldy/img/menus/externalsite.png similarity index 100% rename from htdocs/theme/eldy/img/menus/externalsite.png rename to public/theme/eldy/img/menus/externalsite.png diff --git a/htdocs/theme/eldy/img/menus/externalsite_over.png b/public/theme/eldy/img/menus/externalsite_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/externalsite_over.png rename to public/theme/eldy/img/menus/externalsite_over.png diff --git a/htdocs/theme/eldy/img/menus/ftp.png b/public/theme/eldy/img/menus/ftp.png similarity index 100% rename from htdocs/theme/eldy/img/menus/ftp.png rename to public/theme/eldy/img/menus/ftp.png diff --git a/htdocs/theme/eldy/img/menus/ftp_over.png b/public/theme/eldy/img/menus/ftp_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/ftp_over.png rename to public/theme/eldy/img/menus/ftp_over.png diff --git a/htdocs/theme/eldy/img/menus/generic1.png b/public/theme/eldy/img/menus/generic1.png similarity index 100% rename from htdocs/theme/eldy/img/menus/generic1.png rename to public/theme/eldy/img/menus/generic1.png diff --git a/htdocs/theme/eldy/img/menus/generic1_over.png b/public/theme/eldy/img/menus/generic1_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/generic1_over.png rename to public/theme/eldy/img/menus/generic1_over.png diff --git a/htdocs/theme/eldy/img/menus/generic2.png b/public/theme/eldy/img/menus/generic2.png similarity index 100% rename from htdocs/theme/eldy/img/menus/generic2.png rename to public/theme/eldy/img/menus/generic2.png diff --git a/htdocs/theme/eldy/img/menus/generic2_over.png b/public/theme/eldy/img/menus/generic2_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/generic2_over.png rename to public/theme/eldy/img/menus/generic2_over.png diff --git a/htdocs/theme/eldy/img/menus/generic3.png b/public/theme/eldy/img/menus/generic3.png similarity index 100% rename from htdocs/theme/eldy/img/menus/generic3.png rename to public/theme/eldy/img/menus/generic3.png diff --git a/htdocs/theme/eldy/img/menus/generic3_over.png b/public/theme/eldy/img/menus/generic3_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/generic3_over.png rename to public/theme/eldy/img/menus/generic3_over.png diff --git a/htdocs/theme/eldy/img/menus/generic4.png b/public/theme/eldy/img/menus/generic4.png similarity index 100% rename from htdocs/theme/eldy/img/menus/generic4.png rename to public/theme/eldy/img/menus/generic4.png diff --git a/htdocs/theme/eldy/img/menus/generic4_over.png b/public/theme/eldy/img/menus/generic4_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/generic4_over.png rename to public/theme/eldy/img/menus/generic4_over.png diff --git a/htdocs/theme/eldy/img/menus/globe.png b/public/theme/eldy/img/menus/globe.png similarity index 100% rename from htdocs/theme/eldy/img/menus/globe.png rename to public/theme/eldy/img/menus/globe.png diff --git a/htdocs/theme/eldy/img/menus/globe_over.png b/public/theme/eldy/img/menus/globe_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/globe_over.png rename to public/theme/eldy/img/menus/globe_over.png diff --git a/htdocs/theme/eldy/img/menus/holiday.png b/public/theme/eldy/img/menus/holiday.png similarity index 100% rename from htdocs/theme/eldy/img/menus/holiday.png rename to public/theme/eldy/img/menus/holiday.png diff --git a/htdocs/theme/eldy/img/menus/home.png b/public/theme/eldy/img/menus/home.png similarity index 100% rename from htdocs/theme/eldy/img/menus/home.png rename to public/theme/eldy/img/menus/home.png diff --git a/htdocs/theme/eldy/img/menus/home_over.png b/public/theme/eldy/img/menus/home_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/home_over.png rename to public/theme/eldy/img/menus/home_over.png diff --git a/htdocs/theme/eldy/img/menus/index.html b/public/theme/eldy/img/menus/index.html similarity index 100% rename from htdocs/theme/eldy/img/menus/index.html rename to public/theme/eldy/img/menus/index.html diff --git a/htdocs/theme/eldy/img/menus/mail.png b/public/theme/eldy/img/menus/mail.png similarity index 100% rename from htdocs/theme/eldy/img/menus/mail.png rename to public/theme/eldy/img/menus/mail.png diff --git a/htdocs/theme/eldy/img/menus/mail_over.png b/public/theme/eldy/img/menus/mail_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/mail_over.png rename to public/theme/eldy/img/menus/mail_over.png diff --git a/htdocs/theme/eldy/img/menus/members.png b/public/theme/eldy/img/menus/members.png similarity index 100% rename from htdocs/theme/eldy/img/menus/members.png rename to public/theme/eldy/img/menus/members.png diff --git a/htdocs/theme/eldy/img/menus/members_over.png b/public/theme/eldy/img/menus/members_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/members_over.png rename to public/theme/eldy/img/menus/members_over.png diff --git a/htdocs/theme/eldy/img/menus/menu.png b/public/theme/eldy/img/menus/menu.png similarity index 100% rename from htdocs/theme/eldy/img/menus/menu.png rename to public/theme/eldy/img/menus/menu.png diff --git a/htdocs/theme/eldy/img/menus/money.png b/public/theme/eldy/img/menus/money.png similarity index 100% rename from htdocs/theme/eldy/img/menus/money.png rename to public/theme/eldy/img/menus/money.png diff --git a/htdocs/theme/eldy/img/menus/money_over.png b/public/theme/eldy/img/menus/money_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/money_over.png rename to public/theme/eldy/img/menus/money_over.png diff --git a/htdocs/theme/eldy/img/menus/pointofsale.png b/public/theme/eldy/img/menus/pointofsale.png similarity index 100% rename from htdocs/theme/eldy/img/menus/pointofsale.png rename to public/theme/eldy/img/menus/pointofsale.png diff --git a/htdocs/theme/eldy/img/menus/pointofsale_over.png b/public/theme/eldy/img/menus/pointofsale_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/pointofsale_over.png rename to public/theme/eldy/img/menus/pointofsale_over.png diff --git a/htdocs/theme/eldy/img/menus/products.png b/public/theme/eldy/img/menus/products.png similarity index 100% rename from htdocs/theme/eldy/img/menus/products.png rename to public/theme/eldy/img/menus/products.png diff --git a/htdocs/theme/eldy/img/menus/products_over.png b/public/theme/eldy/img/menus/products_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/products_over.png rename to public/theme/eldy/img/menus/products_over.png diff --git a/htdocs/theme/eldy/img/menus/project.png b/public/theme/eldy/img/menus/project.png similarity index 100% rename from htdocs/theme/eldy/img/menus/project.png rename to public/theme/eldy/img/menus/project.png diff --git a/htdocs/theme/eldy/img/menus/project_over.png b/public/theme/eldy/img/menus/project_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/project_over.png rename to public/theme/eldy/img/menus/project_over.png diff --git a/htdocs/theme/eldy/img/menus/shop.png b/public/theme/eldy/img/menus/shop.png similarity index 100% rename from htdocs/theme/eldy/img/menus/shop.png rename to public/theme/eldy/img/menus/shop.png diff --git a/htdocs/theme/eldy/img/menus/shop_over.png b/public/theme/eldy/img/menus/shop_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/shop_over.png rename to public/theme/eldy/img/menus/shop_over.png diff --git a/htdocs/theme/eldy/img/menus/tools.png b/public/theme/eldy/img/menus/tools.png similarity index 100% rename from htdocs/theme/eldy/img/menus/tools.png rename to public/theme/eldy/img/menus/tools.png diff --git a/htdocs/theme/eldy/img/menus/tools_over.png b/public/theme/eldy/img/menus/tools_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus/tools_over.png rename to public/theme/eldy/img/menus/tools_over.png diff --git a/htdocs/theme/eldy/img/menus_black/agenda.png b/public/theme/eldy/img/menus_black/agenda.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/agenda.png rename to public/theme/eldy/img/menus_black/agenda.png diff --git a/htdocs/theme/eldy/img/menus_black/agenda_over.png b/public/theme/eldy/img/menus_black/agenda_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/agenda_over.png rename to public/theme/eldy/img/menus_black/agenda_over.png diff --git a/htdocs/theme/eldy/img/menus_black/bank.png b/public/theme/eldy/img/menus_black/bank.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/bank.png rename to public/theme/eldy/img/menus_black/bank.png diff --git a/htdocs/theme/eldy/img/menus_black/bank_over.png b/public/theme/eldy/img/menus_black/bank_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/bank_over.png rename to public/theme/eldy/img/menus_black/bank_over.png diff --git a/htdocs/theme/eldy/img/menus_black/commercial.png b/public/theme/eldy/img/menus_black/commercial.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/commercial.png rename to public/theme/eldy/img/menus_black/commercial.png diff --git a/htdocs/theme/eldy/img/menus_black/commercial_over.png b/public/theme/eldy/img/menus_black/commercial_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/commercial_over.png rename to public/theme/eldy/img/menus_black/commercial_over.png diff --git a/htdocs/theme/eldy/img/menus_black/company.png b/public/theme/eldy/img/menus_black/company.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/company.png rename to public/theme/eldy/img/menus_black/company.png diff --git a/htdocs/theme/eldy/img/menus_black/company_over.png b/public/theme/eldy/img/menus_black/company_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/company_over.png rename to public/theme/eldy/img/menus_black/company_over.png diff --git a/htdocs/theme/eldy/img/menus_black/ecm.png b/public/theme/eldy/img/menus_black/ecm.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/ecm.png rename to public/theme/eldy/img/menus_black/ecm.png diff --git a/htdocs/theme/eldy/img/menus_black/ecm_over.png b/public/theme/eldy/img/menus_black/ecm_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/ecm_over.png rename to public/theme/eldy/img/menus_black/ecm_over.png diff --git a/htdocs/theme/eldy/img/menus_black/externalsite.png b/public/theme/eldy/img/menus_black/externalsite.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/externalsite.png rename to public/theme/eldy/img/menus_black/externalsite.png diff --git a/htdocs/theme/eldy/img/menus_black/externalsite_over.png b/public/theme/eldy/img/menus_black/externalsite_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/externalsite_over.png rename to public/theme/eldy/img/menus_black/externalsite_over.png diff --git a/htdocs/theme/eldy/img/menus_black/ftp.png b/public/theme/eldy/img/menus_black/ftp.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/ftp.png rename to public/theme/eldy/img/menus_black/ftp.png diff --git a/htdocs/theme/eldy/img/menus_black/ftp_over.png b/public/theme/eldy/img/menus_black/ftp_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/ftp_over.png rename to public/theme/eldy/img/menus_black/ftp_over.png diff --git a/htdocs/theme/eldy/img/menus_black/generic1.png b/public/theme/eldy/img/menus_black/generic1.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/generic1.png rename to public/theme/eldy/img/menus_black/generic1.png diff --git a/htdocs/theme/eldy/img/menus_black/generic1_over.png b/public/theme/eldy/img/menus_black/generic1_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/generic1_over.png rename to public/theme/eldy/img/menus_black/generic1_over.png diff --git a/htdocs/theme/eldy/img/menus_black/generic2.png b/public/theme/eldy/img/menus_black/generic2.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/generic2.png rename to public/theme/eldy/img/menus_black/generic2.png diff --git a/htdocs/theme/eldy/img/menus_black/generic2_over.png b/public/theme/eldy/img/menus_black/generic2_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/generic2_over.png rename to public/theme/eldy/img/menus_black/generic2_over.png diff --git a/htdocs/theme/eldy/img/menus_black/generic3.png b/public/theme/eldy/img/menus_black/generic3.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/generic3.png rename to public/theme/eldy/img/menus_black/generic3.png diff --git a/htdocs/theme/eldy/img/menus_black/generic3_over.png b/public/theme/eldy/img/menus_black/generic3_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/generic3_over.png rename to public/theme/eldy/img/menus_black/generic3_over.png diff --git a/htdocs/theme/eldy/img/menus_black/generic4.png b/public/theme/eldy/img/menus_black/generic4.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/generic4.png rename to public/theme/eldy/img/menus_black/generic4.png diff --git a/htdocs/theme/eldy/img/menus_black/generic4_over.png b/public/theme/eldy/img/menus_black/generic4_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/generic4_over.png rename to public/theme/eldy/img/menus_black/generic4_over.png diff --git a/htdocs/theme/eldy/img/menus_black/globe.png b/public/theme/eldy/img/menus_black/globe.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/globe.png rename to public/theme/eldy/img/menus_black/globe.png diff --git a/htdocs/theme/eldy/img/menus_black/globe_over.png b/public/theme/eldy/img/menus_black/globe_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/globe_over.png rename to public/theme/eldy/img/menus_black/globe_over.png diff --git a/htdocs/theme/eldy/img/menus_black/holiday.png b/public/theme/eldy/img/menus_black/holiday.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/holiday.png rename to public/theme/eldy/img/menus_black/holiday.png diff --git a/htdocs/theme/eldy/img/menus_black/home.png b/public/theme/eldy/img/menus_black/home.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/home.png rename to public/theme/eldy/img/menus_black/home.png diff --git a/htdocs/theme/eldy/img/menus_black/home_over.png b/public/theme/eldy/img/menus_black/home_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/home_over.png rename to public/theme/eldy/img/menus_black/home_over.png diff --git a/htdocs/theme/eldy/img/menus_black/mail.png b/public/theme/eldy/img/menus_black/mail.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/mail.png rename to public/theme/eldy/img/menus_black/mail.png diff --git a/htdocs/theme/eldy/img/menus_black/mail_over.png b/public/theme/eldy/img/menus_black/mail_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/mail_over.png rename to public/theme/eldy/img/menus_black/mail_over.png diff --git a/htdocs/theme/eldy/img/menus_black/members.png b/public/theme/eldy/img/menus_black/members.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/members.png rename to public/theme/eldy/img/menus_black/members.png diff --git a/htdocs/theme/eldy/img/menus_black/members_over.png b/public/theme/eldy/img/menus_black/members_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/members_over.png rename to public/theme/eldy/img/menus_black/members_over.png diff --git a/htdocs/theme/eldy/img/menus_black/menu.png b/public/theme/eldy/img/menus_black/menu.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/menu.png rename to public/theme/eldy/img/menus_black/menu.png diff --git a/htdocs/theme/eldy/img/menus_black/money.png b/public/theme/eldy/img/menus_black/money.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/money.png rename to public/theme/eldy/img/menus_black/money.png diff --git a/htdocs/theme/eldy/img/menus_black/money_over.png b/public/theme/eldy/img/menus_black/money_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/money_over.png rename to public/theme/eldy/img/menus_black/money_over.png diff --git a/htdocs/theme/eldy/img/menus_black/pointofsale.png b/public/theme/eldy/img/menus_black/pointofsale.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/pointofsale.png rename to public/theme/eldy/img/menus_black/pointofsale.png diff --git a/htdocs/theme/eldy/img/menus_black/pointofsale_over.png b/public/theme/eldy/img/menus_black/pointofsale_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/pointofsale_over.png rename to public/theme/eldy/img/menus_black/pointofsale_over.png diff --git a/htdocs/theme/eldy/img/menus_black/products.png b/public/theme/eldy/img/menus_black/products.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/products.png rename to public/theme/eldy/img/menus_black/products.png diff --git a/htdocs/theme/eldy/img/menus_black/products_over.png b/public/theme/eldy/img/menus_black/products_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/products_over.png rename to public/theme/eldy/img/menus_black/products_over.png diff --git a/htdocs/theme/eldy/img/menus_black/project.png b/public/theme/eldy/img/menus_black/project.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/project.png rename to public/theme/eldy/img/menus_black/project.png diff --git a/htdocs/theme/eldy/img/menus_black/project_over.png b/public/theme/eldy/img/menus_black/project_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/project_over.png rename to public/theme/eldy/img/menus_black/project_over.png diff --git a/htdocs/theme/eldy/img/menus_black/shop.png b/public/theme/eldy/img/menus_black/shop.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/shop.png rename to public/theme/eldy/img/menus_black/shop.png diff --git a/htdocs/theme/eldy/img/menus_black/shop_over.png b/public/theme/eldy/img/menus_black/shop_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/shop_over.png rename to public/theme/eldy/img/menus_black/shop_over.png diff --git a/htdocs/theme/eldy/img/menus_black/tools.png b/public/theme/eldy/img/menus_black/tools.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/tools.png rename to public/theme/eldy/img/menus_black/tools.png diff --git a/htdocs/theme/eldy/img/menus_black/tools_over.png b/public/theme/eldy/img/menus_black/tools_over.png similarity index 100% rename from htdocs/theme/eldy/img/menus_black/tools_over.png rename to public/theme/eldy/img/menus_black/tools_over.png diff --git a/htdocs/theme/eldy/img/menutab-r.png b/public/theme/eldy/img/menutab-r.png similarity index 100% rename from htdocs/theme/eldy/img/menutab-r.png rename to public/theme/eldy/img/menutab-r.png diff --git a/htdocs/theme/eldy/img/nav-overlay.png b/public/theme/eldy/img/nav-overlay.png similarity index 100% rename from htdocs/theme/eldy/img/nav-overlay.png rename to public/theme/eldy/img/nav-overlay.png diff --git a/htdocs/theme/eldy/img/nav-overlay3.png b/public/theme/eldy/img/nav-overlay3.png similarity index 100% rename from htdocs/theme/eldy/img/nav-overlay3.png rename to public/theme/eldy/img/nav-overlay3.png diff --git a/htdocs/theme/eldy/img/next.png b/public/theme/eldy/img/next.png similarity index 100% rename from htdocs/theme/eldy/img/next.png rename to public/theme/eldy/img/next.png diff --git a/htdocs/theme/eldy/img/nographyet.svg b/public/theme/eldy/img/nographyet.svg similarity index 100% rename from htdocs/theme/eldy/img/nographyet.svg rename to public/theme/eldy/img/nographyet.svg diff --git a/htdocs/theme/eldy/img/object_account.png b/public/theme/eldy/img/object_account.png similarity index 100% rename from htdocs/theme/eldy/img/object_account.png rename to public/theme/eldy/img/object_account.png diff --git a/htdocs/theme/eldy/img/object_accounting.png b/public/theme/eldy/img/object_accounting.png similarity index 100% rename from htdocs/theme/eldy/img/object_accounting.png rename to public/theme/eldy/img/object_accounting.png diff --git a/htdocs/theme/eldy/img/object_action.png b/public/theme/eldy/img/object_action.png similarity index 100% rename from htdocs/theme/eldy/img/object_action.png rename to public/theme/eldy/img/object_action.png diff --git a/htdocs/theme/eldy/img/object_address.png b/public/theme/eldy/img/object_address.png similarity index 100% rename from htdocs/theme/eldy/img/object_address.png rename to public/theme/eldy/img/object_address.png diff --git a/htdocs/theme/eldy/img/object_barcode.png b/public/theme/eldy/img/object_barcode.png similarity index 100% rename from htdocs/theme/eldy/img/object_barcode.png rename to public/theme/eldy/img/object_barcode.png diff --git a/htdocs/theme/eldy/img/object_bill.png b/public/theme/eldy/img/object_bill.png similarity index 100% rename from htdocs/theme/eldy/img/object_bill.png rename to public/theme/eldy/img/object_bill.png diff --git a/htdocs/theme/eldy/img/object_billa.png b/public/theme/eldy/img/object_billa.png similarity index 100% rename from htdocs/theme/eldy/img/object_billa.png rename to public/theme/eldy/img/object_billa.png diff --git a/htdocs/theme/eldy/img/object_billd.png b/public/theme/eldy/img/object_billd.png similarity index 100% rename from htdocs/theme/eldy/img/object_billd.png rename to public/theme/eldy/img/object_billd.png diff --git a/htdocs/theme/eldy/img/object_billr.png b/public/theme/eldy/img/object_billr.png similarity index 100% rename from htdocs/theme/eldy/img/object_billr.png rename to public/theme/eldy/img/object_billr.png diff --git a/htdocs/theme/eldy/img/object_book.png b/public/theme/eldy/img/object_book.png similarity index 100% rename from htdocs/theme/eldy/img/object_book.png rename to public/theme/eldy/img/object_book.png diff --git a/htdocs/theme/eldy/img/object_bookmark.png b/public/theme/eldy/img/object_bookmark.png similarity index 100% rename from htdocs/theme/eldy/img/object_bookmark.png rename to public/theme/eldy/img/object_bookmark.png diff --git a/htdocs/theme/eldy/img/object_building.png b/public/theme/eldy/img/object_building.png similarity index 100% rename from htdocs/theme/eldy/img/object_building.png rename to public/theme/eldy/img/object_building.png diff --git a/htdocs/theme/eldy/img/object_calendar.png b/public/theme/eldy/img/object_calendar.png similarity index 100% rename from htdocs/theme/eldy/img/object_calendar.png rename to public/theme/eldy/img/object_calendar.png diff --git a/htdocs/theme/eldy/img/object_calendarday.png b/public/theme/eldy/img/object_calendarday.png similarity index 100% rename from htdocs/theme/eldy/img/object_calendarday.png rename to public/theme/eldy/img/object_calendarday.png diff --git a/htdocs/theme/eldy/img/object_calendargantt.png b/public/theme/eldy/img/object_calendargantt.png similarity index 100% rename from htdocs/theme/eldy/img/object_calendargantt.png rename to public/theme/eldy/img/object_calendargantt.png diff --git a/htdocs/theme/eldy/img/object_calendarpertype.png b/public/theme/eldy/img/object_calendarpertype.png similarity index 100% rename from htdocs/theme/eldy/img/object_calendarpertype.png rename to public/theme/eldy/img/object_calendarpertype.png diff --git a/htdocs/theme/eldy/img/object_calendarperuser.png b/public/theme/eldy/img/object_calendarperuser.png similarity index 100% rename from htdocs/theme/eldy/img/object_calendarperuser.png rename to public/theme/eldy/img/object_calendarperuser.png diff --git a/htdocs/theme/eldy/img/object_calendarweek.png b/public/theme/eldy/img/object_calendarweek.png similarity index 100% rename from htdocs/theme/eldy/img/object_calendarweek.png rename to public/theme/eldy/img/object_calendarweek.png diff --git a/htdocs/theme/eldy/img/object_category-expanded.png b/public/theme/eldy/img/object_category-expanded.png similarity index 100% rename from htdocs/theme/eldy/img/object_category-expanded.png rename to public/theme/eldy/img/object_category-expanded.png diff --git a/htdocs/theme/eldy/img/object_category.png b/public/theme/eldy/img/object_category.png similarity index 100% rename from htdocs/theme/eldy/img/object_category.png rename to public/theme/eldy/img/object_category.png diff --git a/htdocs/theme/eldy/img/object_commercial.png b/public/theme/eldy/img/object_commercial.png similarity index 100% rename from htdocs/theme/eldy/img/object_commercial.png rename to public/theme/eldy/img/object_commercial.png diff --git a/htdocs/theme/eldy/img/object_company.png b/public/theme/eldy/img/object_company.png similarity index 100% rename from htdocs/theme/eldy/img/object_company.png rename to public/theme/eldy/img/object_company.png diff --git a/htdocs/theme/eldy/img/object_contact.png b/public/theme/eldy/img/object_contact.png similarity index 100% rename from htdocs/theme/eldy/img/object_contact.png rename to public/theme/eldy/img/object_contact.png diff --git a/htdocs/theme/eldy/img/object_contract.png b/public/theme/eldy/img/object_contract.png similarity index 100% rename from htdocs/theme/eldy/img/object_contract.png rename to public/theme/eldy/img/object_contract.png diff --git a/htdocs/theme/eldy/img/object_cron.png b/public/theme/eldy/img/object_cron.png similarity index 100% rename from htdocs/theme/eldy/img/object_cron.png rename to public/theme/eldy/img/object_cron.png diff --git a/htdocs/theme/eldy/img/object_dir.png b/public/theme/eldy/img/object_dir.png similarity index 100% rename from htdocs/theme/eldy/img/object_dir.png rename to public/theme/eldy/img/object_dir.png diff --git a/htdocs/theme/eldy/img/object_email.png b/public/theme/eldy/img/object_email.png similarity index 100% rename from htdocs/theme/eldy/img/object_email.png rename to public/theme/eldy/img/object_email.png diff --git a/htdocs/theme/eldy/img/object_energy.png b/public/theme/eldy/img/object_energy.png similarity index 100% rename from htdocs/theme/eldy/img/object_energy.png rename to public/theme/eldy/img/object_energy.png diff --git a/htdocs/theme/eldy/img/object_generic.png b/public/theme/eldy/img/object_generic.png similarity index 100% rename from htdocs/theme/eldy/img/object_generic.png rename to public/theme/eldy/img/object_generic.png diff --git a/htdocs/theme/eldy/img/object_globe.png b/public/theme/eldy/img/object_globe.png similarity index 100% rename from htdocs/theme/eldy/img/object_globe.png rename to public/theme/eldy/img/object_globe.png diff --git a/htdocs/theme/eldy/img/object_gravatar.png b/public/theme/eldy/img/object_gravatar.png similarity index 100% rename from htdocs/theme/eldy/img/object_gravatar.png rename to public/theme/eldy/img/object_gravatar.png diff --git a/htdocs/theme/eldy/img/object_group.png b/public/theme/eldy/img/object_group.png similarity index 100% rename from htdocs/theme/eldy/img/object_group.png rename to public/theme/eldy/img/object_group.png diff --git a/htdocs/theme/eldy/img/object_holiday.png b/public/theme/eldy/img/object_holiday.png similarity index 100% rename from htdocs/theme/eldy/img/object_holiday.png rename to public/theme/eldy/img/object_holiday.png diff --git a/htdocs/theme/eldy/img/object_intervention.png b/public/theme/eldy/img/object_intervention.png similarity index 100% rename from htdocs/theme/eldy/img/object_intervention.png rename to public/theme/eldy/img/object_intervention.png diff --git a/htdocs/theme/eldy/img/object_invoice.png b/public/theme/eldy/img/object_invoice.png similarity index 100% rename from htdocs/theme/eldy/img/object_invoice.png rename to public/theme/eldy/img/object_invoice.png diff --git a/htdocs/theme/eldy/img/object_label.png b/public/theme/eldy/img/object_label.png similarity index 100% rename from htdocs/theme/eldy/img/object_label.png rename to public/theme/eldy/img/object_label.png diff --git a/htdocs/theme/eldy/img/object_list.png b/public/theme/eldy/img/object_list.png similarity index 100% rename from htdocs/theme/eldy/img/object_list.png rename to public/theme/eldy/img/object_list.png diff --git a/htdocs/theme/eldy/img/object_margin.png b/public/theme/eldy/img/object_margin.png similarity index 100% rename from htdocs/theme/eldy/img/object_margin.png rename to public/theme/eldy/img/object_margin.png diff --git a/htdocs/theme/eldy/img/object_multicurrency.png b/public/theme/eldy/img/object_multicurrency.png similarity index 100% rename from htdocs/theme/eldy/img/object_multicurrency.png rename to public/theme/eldy/img/object_multicurrency.png diff --git a/htdocs/theme/eldy/img/object_opensurvey.png b/public/theme/eldy/img/object_opensurvey.png similarity index 100% rename from htdocs/theme/eldy/img/object_opensurvey.png rename to public/theme/eldy/img/object_opensurvey.png diff --git a/htdocs/theme/eldy/img/object_order.png b/public/theme/eldy/img/object_order.png similarity index 100% rename from htdocs/theme/eldy/img/object_order.png rename to public/theme/eldy/img/object_order.png diff --git a/htdocs/theme/eldy/img/object_payment.png b/public/theme/eldy/img/object_payment.png similarity index 100% rename from htdocs/theme/eldy/img/object_payment.png rename to public/theme/eldy/img/object_payment.png diff --git a/htdocs/theme/eldy/img/object_phoning.png b/public/theme/eldy/img/object_phoning.png similarity index 100% rename from htdocs/theme/eldy/img/object_phoning.png rename to public/theme/eldy/img/object_phoning.png diff --git a/htdocs/theme/eldy/img/object_phoning_fax.png b/public/theme/eldy/img/object_phoning_fax.png similarity index 100% rename from htdocs/theme/eldy/img/object_phoning_fax.png rename to public/theme/eldy/img/object_phoning_fax.png diff --git a/htdocs/theme/eldy/img/object_printer.png b/public/theme/eldy/img/object_printer.png similarity index 100% rename from htdocs/theme/eldy/img/object_printer.png rename to public/theme/eldy/img/object_printer.png diff --git a/htdocs/theme/eldy/img/object_product.png b/public/theme/eldy/img/object_product.png similarity index 100% rename from htdocs/theme/eldy/img/object_product.png rename to public/theme/eldy/img/object_product.png diff --git a/htdocs/theme/eldy/img/object_project.png b/public/theme/eldy/img/object_project.png similarity index 100% rename from htdocs/theme/eldy/img/object_project.png rename to public/theme/eldy/img/object_project.png diff --git a/htdocs/theme/eldy/img/object_projectpub.png b/public/theme/eldy/img/object_projectpub.png similarity index 100% rename from htdocs/theme/eldy/img/object_projectpub.png rename to public/theme/eldy/img/object_projectpub.png diff --git a/htdocs/theme/eldy/img/object_projecttask.png b/public/theme/eldy/img/object_projecttask.png similarity index 100% rename from htdocs/theme/eldy/img/object_projecttask.png rename to public/theme/eldy/img/object_projecttask.png diff --git a/htdocs/theme/eldy/img/object_propal.png b/public/theme/eldy/img/object_propal.png similarity index 100% rename from htdocs/theme/eldy/img/object_propal.png rename to public/theme/eldy/img/object_propal.png diff --git a/htdocs/theme/eldy/img/object_reduc.png b/public/theme/eldy/img/object_reduc.png similarity index 100% rename from htdocs/theme/eldy/img/object_reduc.png rename to public/theme/eldy/img/object_reduc.png diff --git a/htdocs/theme/eldy/img/object_resource.png b/public/theme/eldy/img/object_resource.png similarity index 100% rename from htdocs/theme/eldy/img/object_resource.png rename to public/theme/eldy/img/object_resource.png diff --git a/htdocs/theme/eldy/img/object_rss.png b/public/theme/eldy/img/object_rss.png similarity index 100% rename from htdocs/theme/eldy/img/object_rss.png rename to public/theme/eldy/img/object_rss.png diff --git a/htdocs/theme/eldy/img/object_sending.png b/public/theme/eldy/img/object_sending.png similarity index 100% rename from htdocs/theme/eldy/img/object_sending.png rename to public/theme/eldy/img/object_sending.png diff --git a/htdocs/theme/eldy/img/object_service.png b/public/theme/eldy/img/object_service.png similarity index 100% rename from htdocs/theme/eldy/img/object_service.png rename to public/theme/eldy/img/object_service.png diff --git a/htdocs/theme/eldy/img/object_skype.png b/public/theme/eldy/img/object_skype.png similarity index 100% rename from htdocs/theme/eldy/img/object_skype.png rename to public/theme/eldy/img/object_skype.png diff --git a/htdocs/theme/eldy/img/object_stock.png b/public/theme/eldy/img/object_stock.png similarity index 100% rename from htdocs/theme/eldy/img/object_stock.png rename to public/theme/eldy/img/object_stock.png diff --git a/htdocs/theme/eldy/img/object_supplier_proposal.png b/public/theme/eldy/img/object_supplier_proposal.png similarity index 100% rename from htdocs/theme/eldy/img/object_supplier_proposal.png rename to public/theme/eldy/img/object_supplier_proposal.png diff --git a/htdocs/theme/eldy/img/object_task.png b/public/theme/eldy/img/object_task.png similarity index 100% rename from htdocs/theme/eldy/img/object_task.png rename to public/theme/eldy/img/object_task.png diff --git a/htdocs/theme/eldy/img/object_task_time.png b/public/theme/eldy/img/object_task_time.png similarity index 100% rename from htdocs/theme/eldy/img/object_task_time.png rename to public/theme/eldy/img/object_task_time.png diff --git a/htdocs/theme/eldy/img/object_tax.png b/public/theme/eldy/img/object_tax.png similarity index 100% rename from htdocs/theme/eldy/img/object_tax.png rename to public/theme/eldy/img/object_tax.png diff --git a/htdocs/theme/eldy/img/object_technic.png b/public/theme/eldy/img/object_technic.png similarity index 100% rename from htdocs/theme/eldy/img/object_technic.png rename to public/theme/eldy/img/object_technic.png diff --git a/htdocs/theme/eldy/img/object_trip.png b/public/theme/eldy/img/object_trip.png similarity index 100% rename from htdocs/theme/eldy/img/object_trip.png rename to public/theme/eldy/img/object_trip.png diff --git a/htdocs/theme/eldy/img/object_user.png b/public/theme/eldy/img/object_user.png similarity index 100% rename from htdocs/theme/eldy/img/object_user.png rename to public/theme/eldy/img/object_user.png diff --git a/htdocs/theme/eldy/img/off.png b/public/theme/eldy/img/off.png similarity index 100% rename from htdocs/theme/eldy/img/off.png rename to public/theme/eldy/img/off.png diff --git a/htdocs/theme/eldy/img/on.png b/public/theme/eldy/img/on.png similarity index 100% rename from htdocs/theme/eldy/img/on.png rename to public/theme/eldy/img/on.png diff --git a/htdocs/theme/eldy/img/pdf2.png b/public/theme/eldy/img/pdf2.png similarity index 100% rename from htdocs/theme/eldy/img/pdf2.png rename to public/theme/eldy/img/pdf2.png diff --git a/htdocs/theme/eldy/img/pdf3.png b/public/theme/eldy/img/pdf3.png similarity index 100% rename from htdocs/theme/eldy/img/pdf3.png rename to public/theme/eldy/img/pdf3.png diff --git a/htdocs/theme/eldy/img/play.png b/public/theme/eldy/img/play.png similarity index 100% rename from htdocs/theme/eldy/img/play.png rename to public/theme/eldy/img/play.png diff --git a/htdocs/theme/eldy/img/playdisabled.png b/public/theme/eldy/img/playdisabled.png similarity index 100% rename from htdocs/theme/eldy/img/playdisabled.png rename to public/theme/eldy/img/playdisabled.png diff --git a/htdocs/theme/eldy/img/preview.png b/public/theme/eldy/img/preview.png similarity index 100% rename from htdocs/theme/eldy/img/preview.png rename to public/theme/eldy/img/preview.png diff --git a/htdocs/theme/eldy/img/preview_ext.png b/public/theme/eldy/img/preview_ext.png similarity index 100% rename from htdocs/theme/eldy/img/preview_ext.png rename to public/theme/eldy/img/preview_ext.png diff --git a/htdocs/theme/eldy/img/previous.png b/public/theme/eldy/img/previous.png similarity index 100% rename from htdocs/theme/eldy/img/previous.png rename to public/theme/eldy/img/previous.png diff --git a/htdocs/theme/eldy/img/printer.png b/public/theme/eldy/img/printer.png similarity index 100% rename from htdocs/theme/eldy/img/printer.png rename to public/theme/eldy/img/printer.png diff --git a/htdocs/theme/eldy/img/printer_top.png b/public/theme/eldy/img/printer_top.png similarity index 100% rename from htdocs/theme/eldy/img/printer_top.png rename to public/theme/eldy/img/printer_top.png diff --git a/htdocs/theme/eldy/img/puce.png b/public/theme/eldy/img/puce.png similarity index 100% rename from htdocs/theme/eldy/img/puce.png rename to public/theme/eldy/img/puce.png diff --git a/htdocs/theme/eldy/img/recent.png b/public/theme/eldy/img/recent.png similarity index 100% rename from htdocs/theme/eldy/img/recent.png rename to public/theme/eldy/img/recent.png diff --git a/htdocs/theme/eldy/img/redstar.png b/public/theme/eldy/img/redstar.png similarity index 100% rename from htdocs/theme/eldy/img/redstar.png rename to public/theme/eldy/img/redstar.png diff --git a/htdocs/theme/eldy/img/refresh.png b/public/theme/eldy/img/refresh.png similarity index 100% rename from htdocs/theme/eldy/img/refresh.png rename to public/theme/eldy/img/refresh.png diff --git a/htdocs/theme/eldy/img/reload.png b/public/theme/eldy/img/reload.png similarity index 100% rename from htdocs/theme/eldy/img/reload.png rename to public/theme/eldy/img/reload.png diff --git a/htdocs/theme/eldy/img/rightarrow.png b/public/theme/eldy/img/rightarrow.png similarity index 100% rename from htdocs/theme/eldy/img/rightarrow.png rename to public/theme/eldy/img/rightarrow.png diff --git a/htdocs/theme/eldy/img/search.png b/public/theme/eldy/img/search.png similarity index 100% rename from htdocs/theme/eldy/img/search.png rename to public/theme/eldy/img/search.png diff --git a/htdocs/theme/eldy/img/searchclear.png b/public/theme/eldy/img/searchclear.png similarity index 100% rename from htdocs/theme/eldy/img/searchclear.png rename to public/theme/eldy/img/searchclear.png diff --git a/htdocs/theme/eldy/img/setup.png b/public/theme/eldy/img/setup.png similarity index 100% rename from htdocs/theme/eldy/img/setup.png rename to public/theme/eldy/img/setup.png diff --git a/htdocs/theme/eldy/img/sort_asc.png b/public/theme/eldy/img/sort_asc.png similarity index 100% rename from htdocs/theme/eldy/img/sort_asc.png rename to public/theme/eldy/img/sort_asc.png diff --git a/htdocs/theme/eldy/img/sort_asc_disabled.png b/public/theme/eldy/img/sort_asc_disabled.png similarity index 100% rename from htdocs/theme/eldy/img/sort_asc_disabled.png rename to public/theme/eldy/img/sort_asc_disabled.png diff --git a/htdocs/theme/eldy/img/sort_desc.png b/public/theme/eldy/img/sort_desc.png similarity index 100% rename from htdocs/theme/eldy/img/sort_desc.png rename to public/theme/eldy/img/sort_desc.png diff --git a/htdocs/theme/eldy/img/sort_desc_disabled.png b/public/theme/eldy/img/sort_desc_disabled.png similarity index 100% rename from htdocs/theme/eldy/img/sort_desc_disabled.png rename to public/theme/eldy/img/sort_desc_disabled.png diff --git a/htdocs/theme/eldy/img/split.png b/public/theme/eldy/img/split.png similarity index 100% rename from htdocs/theme/eldy/img/split.png rename to public/theme/eldy/img/split.png diff --git a/htdocs/theme/eldy/img/star.png b/public/theme/eldy/img/star.png similarity index 100% rename from htdocs/theme/eldy/img/star.png rename to public/theme/eldy/img/star.png diff --git a/htdocs/theme/eldy/img/stats.png b/public/theme/eldy/img/stats.png similarity index 100% rename from htdocs/theme/eldy/img/stats.png rename to public/theme/eldy/img/stats.png diff --git a/htdocs/theme/eldy/img/statut0.png b/public/theme/eldy/img/statut0.png similarity index 100% rename from htdocs/theme/eldy/img/statut0.png rename to public/theme/eldy/img/statut0.png diff --git a/htdocs/theme/eldy/img/statut0_40x40.png b/public/theme/eldy/img/statut0_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut0_40x40.png rename to public/theme/eldy/img/statut0_40x40.png diff --git a/htdocs/theme/eldy/img/statut1.png b/public/theme/eldy/img/statut1.png similarity index 100% rename from htdocs/theme/eldy/img/statut1.png rename to public/theme/eldy/img/statut1.png diff --git a/htdocs/theme/eldy/img/statut1_40x40.png b/public/theme/eldy/img/statut1_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut1_40x40.png rename to public/theme/eldy/img/statut1_40x40.png diff --git a/htdocs/theme/eldy/img/statut3.png b/public/theme/eldy/img/statut3.png similarity index 100% rename from htdocs/theme/eldy/img/statut3.png rename to public/theme/eldy/img/statut3.png diff --git a/htdocs/theme/eldy/img/statut3_40x40.png b/public/theme/eldy/img/statut3_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut3_40x40.png rename to public/theme/eldy/img/statut3_40x40.png diff --git a/htdocs/theme/eldy/img/statut4.png b/public/theme/eldy/img/statut4.png similarity index 100% rename from htdocs/theme/eldy/img/statut4.png rename to public/theme/eldy/img/statut4.png diff --git a/htdocs/theme/eldy/img/statut4_40x40.png b/public/theme/eldy/img/statut4_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut4_40x40.png rename to public/theme/eldy/img/statut4_40x40.png diff --git a/htdocs/theme/eldy/img/statut5.png b/public/theme/eldy/img/statut5.png similarity index 100% rename from htdocs/theme/eldy/img/statut5.png rename to public/theme/eldy/img/statut5.png diff --git a/htdocs/theme/eldy/img/statut5_40x40.png b/public/theme/eldy/img/statut5_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut5_40x40.png rename to public/theme/eldy/img/statut5_40x40.png diff --git a/htdocs/theme/eldy/img/statut6.png b/public/theme/eldy/img/statut6.png similarity index 100% rename from htdocs/theme/eldy/img/statut6.png rename to public/theme/eldy/img/statut6.png diff --git a/htdocs/theme/eldy/img/statut6_40x40.png b/public/theme/eldy/img/statut6_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut6_40x40.png rename to public/theme/eldy/img/statut6_40x40.png diff --git a/htdocs/theme/eldy/img/statut7.png b/public/theme/eldy/img/statut7.png similarity index 100% rename from htdocs/theme/eldy/img/statut7.png rename to public/theme/eldy/img/statut7.png diff --git a/htdocs/theme/eldy/img/statut7_40x40.png b/public/theme/eldy/img/statut7_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut7_40x40.png rename to public/theme/eldy/img/statut7_40x40.png diff --git a/htdocs/theme/eldy/img/statut8.png b/public/theme/eldy/img/statut8.png similarity index 100% rename from htdocs/theme/eldy/img/statut8.png rename to public/theme/eldy/img/statut8.png diff --git a/htdocs/theme/eldy/img/statut8_40x40.png b/public/theme/eldy/img/statut8_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut8_40x40.png rename to public/theme/eldy/img/statut8_40x40.png diff --git a/htdocs/theme/eldy/img/statut9.png b/public/theme/eldy/img/statut9.png similarity index 100% rename from htdocs/theme/eldy/img/statut9.png rename to public/theme/eldy/img/statut9.png diff --git a/htdocs/theme/eldy/img/statut9_40x40.png b/public/theme/eldy/img/statut9_40x40.png similarity index 100% rename from htdocs/theme/eldy/img/statut9_40x40.png rename to public/theme/eldy/img/statut9_40x40.png diff --git a/htdocs/theme/eldy/img/stcomm-1.png b/public/theme/eldy/img/stcomm-1.png similarity index 100% rename from htdocs/theme/eldy/img/stcomm-1.png rename to public/theme/eldy/img/stcomm-1.png diff --git a/htdocs/theme/eldy/img/stcomm0.png b/public/theme/eldy/img/stcomm0.png similarity index 100% rename from htdocs/theme/eldy/img/stcomm0.png rename to public/theme/eldy/img/stcomm0.png diff --git a/htdocs/theme/eldy/img/stcomm1.png b/public/theme/eldy/img/stcomm1.png similarity index 100% rename from htdocs/theme/eldy/img/stcomm1.png rename to public/theme/eldy/img/stcomm1.png diff --git a/htdocs/theme/eldy/img/stcomm2.png b/public/theme/eldy/img/stcomm2.png similarity index 100% rename from htdocs/theme/eldy/img/stcomm2.png rename to public/theme/eldy/img/stcomm2.png diff --git a/htdocs/theme/eldy/img/stcomm3.png b/public/theme/eldy/img/stcomm3.png similarity index 100% rename from htdocs/theme/eldy/img/stcomm3.png rename to public/theme/eldy/img/stcomm3.png diff --git a/htdocs/theme/eldy/img/stcomm4.png b/public/theme/eldy/img/stcomm4.png similarity index 100% rename from htdocs/theme/eldy/img/stcomm4.png rename to public/theme/eldy/img/stcomm4.png diff --git a/htdocs/theme/eldy/img/switch_off.png b/public/theme/eldy/img/switch_off.png similarity index 100% rename from htdocs/theme/eldy/img/switch_off.png rename to public/theme/eldy/img/switch_off.png diff --git a/htdocs/theme/eldy/img/switch_on.png b/public/theme/eldy/img/switch_on.png similarity index 100% rename from htdocs/theme/eldy/img/switch_on.png rename to public/theme/eldy/img/switch_on.png diff --git a/htdocs/theme/eldy/img/tab_background.png b/public/theme/eldy/img/tab_background.png similarity index 100% rename from htdocs/theme/eldy/img/tab_background.png rename to public/theme/eldy/img/tab_background.png diff --git a/htdocs/theme/eldy/img/tick.png b/public/theme/eldy/img/tick.png similarity index 100% rename from htdocs/theme/eldy/img/tick.png rename to public/theme/eldy/img/tick.png diff --git a/htdocs/theme/eldy/img/title.gif b/public/theme/eldy/img/title.gif similarity index 100% rename from htdocs/theme/eldy/img/title.gif rename to public/theme/eldy/img/title.gif diff --git a/htdocs/theme/eldy/img/title.png b/public/theme/eldy/img/title.png similarity index 100% rename from htdocs/theme/eldy/img/title.png rename to public/theme/eldy/img/title.png diff --git a/htdocs/theme/eldy/img/title_accountancy.png b/public/theme/eldy/img/title_accountancy.png similarity index 100% rename from htdocs/theme/eldy/img/title_accountancy.png rename to public/theme/eldy/img/title_accountancy.png diff --git a/htdocs/theme/eldy/img/title_agenda.png b/public/theme/eldy/img/title_agenda.png similarity index 100% rename from htdocs/theme/eldy/img/title_agenda.png rename to public/theme/eldy/img/title_agenda.png diff --git a/htdocs/theme/eldy/img/title_bank.png b/public/theme/eldy/img/title_bank.png similarity index 100% rename from htdocs/theme/eldy/img/title_bank.png rename to public/theme/eldy/img/title_bank.png diff --git a/htdocs/theme/eldy/img/title_commercial.png b/public/theme/eldy/img/title_commercial.png similarity index 100% rename from htdocs/theme/eldy/img/title_commercial.png rename to public/theme/eldy/img/title_commercial.png diff --git a/htdocs/theme/eldy/img/title_companies.png b/public/theme/eldy/img/title_companies.png similarity index 100% rename from htdocs/theme/eldy/img/title_companies.png rename to public/theme/eldy/img/title_companies.png diff --git a/htdocs/theme/eldy/img/title_generic.png b/public/theme/eldy/img/title_generic.png similarity index 100% rename from htdocs/theme/eldy/img/title_generic.png rename to public/theme/eldy/img/title_generic.png diff --git a/htdocs/theme/eldy/img/title_home.png b/public/theme/eldy/img/title_home.png similarity index 100% rename from htdocs/theme/eldy/img/title_home.png rename to public/theme/eldy/img/title_home.png diff --git a/htdocs/theme/eldy/img/title_hrm.png b/public/theme/eldy/img/title_hrm.png similarity index 100% rename from htdocs/theme/eldy/img/title_hrm.png rename to public/theme/eldy/img/title_hrm.png diff --git a/htdocs/theme/eldy/img/title_products.png b/public/theme/eldy/img/title_products.png similarity index 100% rename from htdocs/theme/eldy/img/title_products.png rename to public/theme/eldy/img/title_products.png diff --git a/htdocs/theme/eldy/img/title_project.png b/public/theme/eldy/img/title_project.png similarity index 100% rename from htdocs/theme/eldy/img/title_project.png rename to public/theme/eldy/img/title_project.png diff --git a/htdocs/theme/eldy/img/title_setup.png b/public/theme/eldy/img/title_setup.png similarity index 100% rename from htdocs/theme/eldy/img/title_setup.png rename to public/theme/eldy/img/title_setup.png diff --git a/htdocs/theme/eldy/img/tmenu.jpg b/public/theme/eldy/img/tmenu.jpg similarity index 100% rename from htdocs/theme/eldy/img/tmenu.jpg rename to public/theme/eldy/img/tmenu.jpg diff --git a/htdocs/theme/eldy/img/tmenu2.jpg b/public/theme/eldy/img/tmenu2.jpg similarity index 100% rename from htdocs/theme/eldy/img/tmenu2.jpg rename to public/theme/eldy/img/tmenu2.jpg diff --git a/htdocs/theme/eldy/img/tmenu3.jpg b/public/theme/eldy/img/tmenu3.jpg similarity index 100% rename from htdocs/theme/eldy/img/tmenu3.jpg rename to public/theme/eldy/img/tmenu3.jpg diff --git a/htdocs/theme/eldy/img/tmenu_inverse.jpg b/public/theme/eldy/img/tmenu_inverse.jpg similarity index 100% rename from htdocs/theme/eldy/img/tmenu_inverse.jpg rename to public/theme/eldy/img/tmenu_inverse.jpg diff --git a/htdocs/theme/eldy/img/unlock.png b/public/theme/eldy/img/unlock.png similarity index 100% rename from htdocs/theme/eldy/img/unlock.png rename to public/theme/eldy/img/unlock.png diff --git a/htdocs/theme/eldy/img/uparrow.png b/public/theme/eldy/img/uparrow.png similarity index 100% rename from htdocs/theme/eldy/img/uparrow.png rename to public/theme/eldy/img/uparrow.png diff --git a/htdocs/theme/eldy/img/upload.png b/public/theme/eldy/img/upload.png similarity index 100% rename from htdocs/theme/eldy/img/upload.png rename to public/theme/eldy/img/upload.png diff --git a/htdocs/theme/eldy/img/vcard.png b/public/theme/eldy/img/vcard.png similarity index 100% rename from htdocs/theme/eldy/img/vcard.png rename to public/theme/eldy/img/vcard.png diff --git a/htdocs/theme/eldy/img/view.png b/public/theme/eldy/img/view.png similarity index 100% rename from htdocs/theme/eldy/img/view.png rename to public/theme/eldy/img/view.png diff --git a/htdocs/theme/eldy/img/warning.png b/public/theme/eldy/img/warning.png similarity index 100% rename from htdocs/theme/eldy/img/warning.png rename to public/theme/eldy/img/warning.png diff --git a/htdocs/theme/eldy/img/weather/index.html b/public/theme/eldy/img/weather/index.html similarity index 100% rename from htdocs/theme/eldy/img/weather/index.html rename to public/theme/eldy/img/weather/index.html diff --git a/htdocs/theme/eldy/img/weather/weather-clear-night.png b/public/theme/eldy/img/weather/weather-clear-night.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-clear-night.png rename to public/theme/eldy/img/weather/weather-clear-night.png diff --git a/htdocs/theme/eldy/img/weather/weather-clear.png b/public/theme/eldy/img/weather/weather-clear.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-clear.png rename to public/theme/eldy/img/weather/weather-clear.png diff --git a/htdocs/theme/eldy/img/weather/weather-clouds-night.png b/public/theme/eldy/img/weather/weather-clouds-night.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-clouds-night.png rename to public/theme/eldy/img/weather/weather-clouds-night.png diff --git a/htdocs/theme/eldy/img/weather/weather-clouds.png b/public/theme/eldy/img/weather/weather-clouds.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-clouds.png rename to public/theme/eldy/img/weather/weather-clouds.png diff --git a/htdocs/theme/eldy/img/weather/weather-few-clouds-night.png b/public/theme/eldy/img/weather/weather-few-clouds-night.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-few-clouds-night.png rename to public/theme/eldy/img/weather/weather-few-clouds-night.png diff --git a/htdocs/theme/eldy/img/weather/weather-few-clouds.png b/public/theme/eldy/img/weather/weather-few-clouds.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-few-clouds.png rename to public/theme/eldy/img/weather/weather-few-clouds.png diff --git a/htdocs/theme/eldy/img/weather/weather-freezing-rain.png b/public/theme/eldy/img/weather/weather-freezing-rain.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-freezing-rain.png rename to public/theme/eldy/img/weather/weather-freezing-rain.png diff --git a/htdocs/theme/eldy/img/weather/weather-hail.png b/public/theme/eldy/img/weather/weather-hail.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-hail.png rename to public/theme/eldy/img/weather/weather-hail.png diff --git a/htdocs/theme/eldy/img/weather/weather-many-clouds.png b/public/theme/eldy/img/weather/weather-many-clouds.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-many-clouds.png rename to public/theme/eldy/img/weather/weather-many-clouds.png diff --git a/htdocs/theme/eldy/img/weather/weather-mist.png b/public/theme/eldy/img/weather/weather-mist.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-mist.png rename to public/theme/eldy/img/weather/weather-mist.png diff --git a/htdocs/theme/eldy/img/weather/weather-showers-day.png b/public/theme/eldy/img/weather/weather-showers-day.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-showers-day.png rename to public/theme/eldy/img/weather/weather-showers-day.png diff --git a/htdocs/theme/eldy/img/weather/weather-showers-night.png b/public/theme/eldy/img/weather/weather-showers-night.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-showers-night.png rename to public/theme/eldy/img/weather/weather-showers-night.png diff --git a/htdocs/theme/eldy/img/weather/weather-showers-scattered-day.png b/public/theme/eldy/img/weather/weather-showers-scattered-day.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-showers-scattered-day.png rename to public/theme/eldy/img/weather/weather-showers-scattered-day.png diff --git a/htdocs/theme/eldy/img/weather/weather-showers-scattered-night.png b/public/theme/eldy/img/weather/weather-showers-scattered-night.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-showers-scattered-night.png rename to public/theme/eldy/img/weather/weather-showers-scattered-night.png diff --git a/htdocs/theme/eldy/img/weather/weather-showers-scattered.png b/public/theme/eldy/img/weather/weather-showers-scattered.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-showers-scattered.png rename to public/theme/eldy/img/weather/weather-showers-scattered.png diff --git a/htdocs/theme/eldy/img/weather/weather-showers.png b/public/theme/eldy/img/weather/weather-showers.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-showers.png rename to public/theme/eldy/img/weather/weather-showers.png diff --git a/htdocs/theme/eldy/img/weather/weather-snow-rain.png b/public/theme/eldy/img/weather/weather-snow-rain.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-snow-rain.png rename to public/theme/eldy/img/weather/weather-snow-rain.png diff --git a/htdocs/theme/eldy/img/weather/weather-snow-scattered-day.png b/public/theme/eldy/img/weather/weather-snow-scattered-day.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-snow-scattered-day.png rename to public/theme/eldy/img/weather/weather-snow-scattered-day.png diff --git a/htdocs/theme/eldy/img/weather/weather-snow-scattered-night.png b/public/theme/eldy/img/weather/weather-snow-scattered-night.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-snow-scattered-night.png rename to public/theme/eldy/img/weather/weather-snow-scattered-night.png diff --git a/htdocs/theme/eldy/img/weather/weather-snow-scattered.png b/public/theme/eldy/img/weather/weather-snow-scattered.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-snow-scattered.png rename to public/theme/eldy/img/weather/weather-snow-scattered.png diff --git a/htdocs/theme/eldy/img/weather/weather-snow.png b/public/theme/eldy/img/weather/weather-snow.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-snow.png rename to public/theme/eldy/img/weather/weather-snow.png diff --git a/htdocs/theme/eldy/img/weather/weather-storm-day.png b/public/theme/eldy/img/weather/weather-storm-day.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-storm-day.png rename to public/theme/eldy/img/weather/weather-storm-day.png diff --git a/htdocs/theme/eldy/img/weather/weather-storm-night.png b/public/theme/eldy/img/weather/weather-storm-night.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-storm-night.png rename to public/theme/eldy/img/weather/weather-storm-night.png diff --git a/htdocs/theme/eldy/img/weather/weather-storm.png b/public/theme/eldy/img/weather/weather-storm.png similarity index 100% rename from htdocs/theme/eldy/img/weather/weather-storm.png rename to public/theme/eldy/img/weather/weather-storm.png diff --git a/htdocs/theme/eldy/img/working.gif b/public/theme/eldy/img/working.gif similarity index 100% rename from htdocs/theme/eldy/img/working.gif rename to public/theme/eldy/img/working.gif diff --git a/htdocs/theme/eldy/img/working2.gif b/public/theme/eldy/img/working2.gif similarity index 100% rename from htdocs/theme/eldy/img/working2.gif rename to public/theme/eldy/img/working2.gif diff --git a/htdocs/theme/eldy/index.html b/public/theme/eldy/index.html similarity index 100% rename from htdocs/theme/eldy/index.html rename to public/theme/eldy/index.html diff --git a/htdocs/theme/eldy/style.css.php b/public/theme/eldy/style.css.php similarity index 100% rename from htdocs/theme/eldy/style.css.php rename to public/theme/eldy/style.css.php diff --git a/htdocs/theme/eldy/thumb.png b/public/theme/eldy/thumb.png similarity index 100% rename from htdocs/theme/eldy/thumb.png rename to public/theme/eldy/thumb.png diff --git a/htdocs/theme/eldy/tpl/README b/public/theme/eldy/tpl/README similarity index 100% rename from htdocs/theme/eldy/tpl/README rename to public/theme/eldy/tpl/README diff --git a/htdocs/theme/eldy/tpl/index.html b/public/theme/eldy/tpl/index.html similarity index 100% rename from htdocs/theme/eldy/tpl/index.html rename to public/theme/eldy/tpl/index.html diff --git a/htdocs/theme/index.html b/public/theme/index.html similarity index 100% rename from htdocs/theme/index.html rename to public/theme/index.html diff --git a/htdocs/theme/login_background.png b/public/theme/login_background.png similarity index 100% rename from htdocs/theme/login_background.png rename to public/theme/login_background.png diff --git a/htdocs/theme/login_logo.png b/public/theme/login_logo.png similarity index 100% rename from htdocs/theme/login_logo.png rename to public/theme/login_logo.png diff --git a/htdocs/theme/md/.gitignore b/public/theme/md/.gitignore similarity index 100% rename from htdocs/theme/md/.gitignore rename to public/theme/md/.gitignore diff --git a/htdocs/theme/md/AUTHOR b/public/theme/md/AUTHOR similarity index 100% rename from htdocs/theme/md/AUTHOR rename to public/theme/md/AUTHOR diff --git a/htdocs/theme/md/ckeditor/config.js b/public/theme/md/ckeditor/config.js similarity index 100% rename from htdocs/theme/md/ckeditor/config.js rename to public/theme/md/ckeditor/config.js diff --git a/htdocs/theme/md/ckeditor/index.html b/public/theme/md/ckeditor/index.html similarity index 100% rename from htdocs/theme/md/ckeditor/index.html rename to public/theme/md/ckeditor/index.html diff --git a/htdocs/theme/md/graph-color.php b/public/theme/md/graph-color.php similarity index 100% rename from htdocs/theme/md/graph-color.php rename to public/theme/md/graph-color.php diff --git a/htdocs/theme/md/img/1downarrow.png b/public/theme/md/img/1downarrow.png similarity index 100% rename from htdocs/theme/md/img/1downarrow.png rename to public/theme/md/img/1downarrow.png diff --git a/htdocs/theme/md/img/1downarrow_selected.png b/public/theme/md/img/1downarrow_selected.png similarity index 100% rename from htdocs/theme/md/img/1downarrow_selected.png rename to public/theme/md/img/1downarrow_selected.png diff --git a/htdocs/theme/md/img/1leftarrow.png b/public/theme/md/img/1leftarrow.png similarity index 100% rename from htdocs/theme/md/img/1leftarrow.png rename to public/theme/md/img/1leftarrow.png diff --git a/htdocs/theme/md/img/1leftarrow_selected.png b/public/theme/md/img/1leftarrow_selected.png similarity index 100% rename from htdocs/theme/md/img/1leftarrow_selected.png rename to public/theme/md/img/1leftarrow_selected.png diff --git a/htdocs/theme/md/img/1rightarrow.png b/public/theme/md/img/1rightarrow.png similarity index 100% rename from htdocs/theme/md/img/1rightarrow.png rename to public/theme/md/img/1rightarrow.png diff --git a/htdocs/theme/md/img/1rightarrow_selected.png b/public/theme/md/img/1rightarrow_selected.png similarity index 100% rename from htdocs/theme/md/img/1rightarrow_selected.png rename to public/theme/md/img/1rightarrow_selected.png diff --git a/htdocs/theme/md/img/1uparrow.png b/public/theme/md/img/1uparrow.png similarity index 100% rename from htdocs/theme/md/img/1uparrow.png rename to public/theme/md/img/1uparrow.png diff --git a/htdocs/theme/md/img/1uparrow_selected.png b/public/theme/md/img/1uparrow_selected.png similarity index 100% rename from htdocs/theme/md/img/1uparrow_selected.png rename to public/theme/md/img/1uparrow_selected.png diff --git a/htdocs/theme/md/img/addfile.png b/public/theme/md/img/addfile.png similarity index 100% rename from htdocs/theme/md/img/addfile.png rename to public/theme/md/img/addfile.png diff --git a/htdocs/theme/md/img/background.png b/public/theme/md/img/background.png similarity index 100% rename from htdocs/theme/md/img/background.png rename to public/theme/md/img/background.png diff --git a/htdocs/theme/md/img/bg-bas-rubrique.png b/public/theme/md/img/bg-bas-rubrique.png similarity index 100% rename from htdocs/theme/md/img/bg-bas-rubrique.png rename to public/theme/md/img/bg-bas-rubrique.png diff --git a/htdocs/theme/md/img/bg-rubrique.png b/public/theme/md/img/bg-rubrique.png similarity index 100% rename from htdocs/theme/md/img/bg-rubrique.png rename to public/theme/md/img/bg-rubrique.png diff --git a/htdocs/theme/md/img/bg-titre-rubrique.png b/public/theme/md/img/bg-titre-rubrique.png similarity index 100% rename from htdocs/theme/md/img/bg-titre-rubrique.png rename to public/theme/md/img/bg-titre-rubrique.png diff --git a/htdocs/theme/md/img/button_bg.png b/public/theme/md/img/button_bg.png similarity index 100% rename from htdocs/theme/md/img/button_bg.png rename to public/theme/md/img/button_bg.png diff --git a/htdocs/theme/md/img/button_edit.png b/public/theme/md/img/button_edit.png similarity index 100% rename from htdocs/theme/md/img/button_edit.png rename to public/theme/md/img/button_edit.png diff --git a/htdocs/theme/md/img/calc.png b/public/theme/md/img/calc.png similarity index 100% rename from htdocs/theme/md/img/calc.png rename to public/theme/md/img/calc.png diff --git a/htdocs/theme/md/img/calendar.png b/public/theme/md/img/calendar.png similarity index 100% rename from htdocs/theme/md/img/calendar.png rename to public/theme/md/img/calendar.png diff --git a/htdocs/theme/md/img/call.png b/public/theme/md/img/call.png similarity index 100% rename from htdocs/theme/md/img/call.png rename to public/theme/md/img/call.png diff --git a/htdocs/theme/md/img/call_out.png b/public/theme/md/img/call_out.png similarity index 100% rename from htdocs/theme/md/img/call_out.png rename to public/theme/md/img/call_out.png diff --git a/htdocs/theme/md/img/close.png b/public/theme/md/img/close.png similarity index 100% rename from htdocs/theme/md/img/close.png rename to public/theme/md/img/close.png diff --git a/htdocs/theme/md/img/close_title.png b/public/theme/md/img/close_title.png similarity index 100% rename from htdocs/theme/md/img/close_title.png rename to public/theme/md/img/close_title.png diff --git a/htdocs/theme/md/img/credit_card.png b/public/theme/md/img/credit_card.png similarity index 100% rename from htdocs/theme/md/img/credit_card.png rename to public/theme/md/img/credit_card.png diff --git a/htdocs/theme/md/img/delete.png b/public/theme/md/img/delete.png similarity index 100% rename from htdocs/theme/md/img/delete.png rename to public/theme/md/img/delete.png diff --git a/htdocs/theme/md/img/detail.png b/public/theme/md/img/detail.png similarity index 100% rename from htdocs/theme/md/img/detail.png rename to public/theme/md/img/detail.png diff --git a/htdocs/theme/md/img/disable.png b/public/theme/md/img/disable.png similarity index 100% rename from htdocs/theme/md/img/disable.png rename to public/theme/md/img/disable.png diff --git a/htdocs/theme/md/img/edit.png b/public/theme/md/img/edit.png similarity index 100% rename from htdocs/theme/md/img/edit.png rename to public/theme/md/img/edit.png diff --git a/htdocs/theme/md/img/edit_add.png b/public/theme/md/img/edit_add.png similarity index 100% rename from htdocs/theme/md/img/edit_add.png rename to public/theme/md/img/edit_add.png diff --git a/htdocs/theme/md/img/edit_remove.png b/public/theme/md/img/edit_remove.png similarity index 100% rename from htdocs/theme/md/img/edit_remove.png rename to public/theme/md/img/edit_remove.png diff --git a/htdocs/theme/md/img/editdelete.png b/public/theme/md/img/editdelete.png similarity index 100% rename from htdocs/theme/md/img/editdelete.png rename to public/theme/md/img/editdelete.png diff --git a/htdocs/theme/md/img/error.png b/public/theme/md/img/error.png similarity index 100% rename from htdocs/theme/md/img/error.png rename to public/theme/md/img/error.png diff --git a/htdocs/theme/md/img/external.png b/public/theme/md/img/external.png similarity index 100% rename from htdocs/theme/md/img/external.png rename to public/theme/md/img/external.png diff --git a/htdocs/theme/md/img/favicon.ico b/public/theme/md/img/favicon.ico similarity index 100% rename from htdocs/theme/md/img/favicon.ico rename to public/theme/md/img/favicon.ico diff --git a/htdocs/theme/md/img/file.png b/public/theme/md/img/file.png similarity index 100% rename from htdocs/theme/md/img/file.png rename to public/theme/md/img/file.png diff --git a/htdocs/theme/md/img/filenew.png b/public/theme/md/img/filenew.png similarity index 100% rename from htdocs/theme/md/img/filenew.png rename to public/theme/md/img/filenew.png diff --git a/htdocs/theme/md/img/filter.png b/public/theme/md/img/filter.png similarity index 100% rename from htdocs/theme/md/img/filter.png rename to public/theme/md/img/filter.png diff --git a/htdocs/theme/md/img/folder-open.png b/public/theme/md/img/folder-open.png similarity index 100% rename from htdocs/theme/md/img/folder-open.png rename to public/theme/md/img/folder-open.png diff --git a/htdocs/theme/md/img/folder.png b/public/theme/md/img/folder.png similarity index 100% rename from htdocs/theme/md/img/folder.png rename to public/theme/md/img/folder.png diff --git a/htdocs/theme/md/img/gradient.gif b/public/theme/md/img/gradient.gif similarity index 100% rename from htdocs/theme/md/img/gradient.gif rename to public/theme/md/img/gradient.gif diff --git a/htdocs/theme/md/img/grip.png b/public/theme/md/img/grip.png similarity index 100% rename from htdocs/theme/md/img/grip.png rename to public/theme/md/img/grip.png diff --git a/htdocs/theme/md/img/grip_title.png b/public/theme/md/img/grip_title.png similarity index 100% rename from htdocs/theme/md/img/grip_title.png rename to public/theme/md/img/grip_title.png diff --git a/htdocs/theme/md/img/headbg.jpg b/public/theme/md/img/headbg.jpg similarity index 100% rename from htdocs/theme/md/img/headbg.jpg rename to public/theme/md/img/headbg.jpg diff --git a/htdocs/theme/md/img/headbg2.jpg b/public/theme/md/img/headbg2.jpg similarity index 100% rename from htdocs/theme/md/img/headbg2.jpg rename to public/theme/md/img/headbg2.jpg diff --git a/htdocs/theme/md/img/help.png b/public/theme/md/img/help.png similarity index 100% rename from htdocs/theme/md/img/help.png rename to public/theme/md/img/help.png diff --git a/htdocs/theme/md/img/helpdoc.png b/public/theme/md/img/helpdoc.png similarity index 100% rename from htdocs/theme/md/img/helpdoc.png rename to public/theme/md/img/helpdoc.png diff --git a/htdocs/theme/md/img/helpdoc_top.png b/public/theme/md/img/helpdoc_top.png similarity index 100% rename from htdocs/theme/md/img/helpdoc_top.png rename to public/theme/md/img/helpdoc_top.png diff --git a/htdocs/theme/md/img/high.png b/public/theme/md/img/high.png similarity index 100% rename from htdocs/theme/md/img/high.png rename to public/theme/md/img/high.png diff --git a/htdocs/theme/md/img/history.png b/public/theme/md/img/history.png similarity index 100% rename from htdocs/theme/md/img/history.png rename to public/theme/md/img/history.png diff --git a/htdocs/theme/md/img/index.html b/public/theme/md/img/index.html similarity index 100% rename from htdocs/theme/md/img/index.html rename to public/theme/md/img/index.html diff --git a/htdocs/theme/md/img/info.png b/public/theme/md/img/info.png similarity index 100% rename from htdocs/theme/md/img/info.png rename to public/theme/md/img/info.png diff --git a/htdocs/theme/md/img/info_black.png b/public/theme/md/img/info_black.png similarity index 100% rename from htdocs/theme/md/img/info_black.png rename to public/theme/md/img/info_black.png diff --git a/htdocs/theme/md/img/list.png b/public/theme/md/img/list.png similarity index 100% rename from htdocs/theme/md/img/list.png rename to public/theme/md/img/list.png diff --git a/htdocs/theme/md/img/liste_titre.png b/public/theme/md/img/liste_titre.png similarity index 100% rename from htdocs/theme/md/img/liste_titre.png rename to public/theme/md/img/liste_titre.png diff --git a/htdocs/theme/md/img/liste_titre2.png b/public/theme/md/img/liste_titre2.png similarity index 100% rename from htdocs/theme/md/img/liste_titre2.png rename to public/theme/md/img/liste_titre2.png diff --git a/htdocs/theme/md/img/listlight.png b/public/theme/md/img/listlight.png similarity index 100% rename from htdocs/theme/md/img/listlight.png rename to public/theme/md/img/listlight.png diff --git a/htdocs/theme/md/img/lock.png b/public/theme/md/img/lock.png similarity index 100% rename from htdocs/theme/md/img/lock.png rename to public/theme/md/img/lock.png diff --git a/htdocs/theme/md/img/login_background.png b/public/theme/md/img/login_background.png similarity index 100% rename from htdocs/theme/md/img/login_background.png rename to public/theme/md/img/login_background.png diff --git a/htdocs/theme/md/img/logo_setup.svg b/public/theme/md/img/logo_setup.svg similarity index 100% rename from htdocs/theme/md/img/logo_setup.svg rename to public/theme/md/img/logo_setup.svg diff --git a/htdocs/theme/md/img/logout.png b/public/theme/md/img/logout.png similarity index 100% rename from htdocs/theme/md/img/logout.png rename to public/theme/md/img/logout.png diff --git a/htdocs/theme/md/img/logout_top.png b/public/theme/md/img/logout_top.png similarity index 100% rename from htdocs/theme/md/img/logout_top.png rename to public/theme/md/img/logout_top.png diff --git a/htdocs/theme/md/img/menu.png b/public/theme/md/img/menu.png similarity index 100% rename from htdocs/theme/md/img/menu.png rename to public/theme/md/img/menu.png diff --git a/htdocs/theme/md/img/menus/agenda.png b/public/theme/md/img/menus/agenda.png similarity index 100% rename from htdocs/theme/md/img/menus/agenda.png rename to public/theme/md/img/menus/agenda.png diff --git a/htdocs/theme/md/img/menus/bank.png b/public/theme/md/img/menus/bank.png similarity index 100% rename from htdocs/theme/md/img/menus/bank.png rename to public/theme/md/img/menus/bank.png diff --git a/htdocs/theme/md/img/menus/cart.png b/public/theme/md/img/menus/cart.png similarity index 100% rename from htdocs/theme/md/img/menus/cart.png rename to public/theme/md/img/menus/cart.png diff --git a/htdocs/theme/md/img/menus/chart.png b/public/theme/md/img/menus/chart.png similarity index 100% rename from htdocs/theme/md/img/menus/chart.png rename to public/theme/md/img/menus/chart.png diff --git a/htdocs/theme/md/img/menus/commercial.png b/public/theme/md/img/menus/commercial.png similarity index 100% rename from htdocs/theme/md/img/menus/commercial.png rename to public/theme/md/img/menus/commercial.png diff --git a/htdocs/theme/md/img/menus/company.png b/public/theme/md/img/menus/company.png similarity index 100% rename from htdocs/theme/md/img/menus/company.png rename to public/theme/md/img/menus/company.png diff --git a/htdocs/theme/md/img/menus/ecm.png b/public/theme/md/img/menus/ecm.png similarity index 100% rename from htdocs/theme/md/img/menus/ecm.png rename to public/theme/md/img/menus/ecm.png diff --git a/htdocs/theme/md/img/menus/externalsite.png b/public/theme/md/img/menus/externalsite.png similarity index 100% rename from htdocs/theme/md/img/menus/externalsite.png rename to public/theme/md/img/menus/externalsite.png diff --git a/htdocs/theme/md/img/menus/ftp.png b/public/theme/md/img/menus/ftp.png similarity index 100% rename from htdocs/theme/md/img/menus/ftp.png rename to public/theme/md/img/menus/ftp.png diff --git a/htdocs/theme/md/img/menus/generic1.png b/public/theme/md/img/menus/generic1.png similarity index 100% rename from htdocs/theme/md/img/menus/generic1.png rename to public/theme/md/img/menus/generic1.png diff --git a/htdocs/theme/md/img/menus/generic2.png b/public/theme/md/img/menus/generic2.png similarity index 100% rename from htdocs/theme/md/img/menus/generic2.png rename to public/theme/md/img/menus/generic2.png diff --git a/htdocs/theme/md/img/menus/generic3.png b/public/theme/md/img/menus/generic3.png similarity index 100% rename from htdocs/theme/md/img/menus/generic3.png rename to public/theme/md/img/menus/generic3.png diff --git a/htdocs/theme/md/img/menus/generic4.png b/public/theme/md/img/menus/generic4.png similarity index 100% rename from htdocs/theme/md/img/menus/generic4.png rename to public/theme/md/img/menus/generic4.png diff --git a/htdocs/theme/md/img/menus/globe.png b/public/theme/md/img/menus/globe.png similarity index 100% rename from htdocs/theme/md/img/menus/globe.png rename to public/theme/md/img/menus/globe.png diff --git a/htdocs/theme/md/img/menus/graph.png b/public/theme/md/img/menus/graph.png similarity index 100% rename from htdocs/theme/md/img/menus/graph.png rename to public/theme/md/img/menus/graph.png diff --git a/htdocs/theme/md/img/menus/holiday.png b/public/theme/md/img/menus/holiday.png similarity index 100% rename from htdocs/theme/md/img/menus/holiday.png rename to public/theme/md/img/menus/holiday.png diff --git a/htdocs/theme/md/img/menus/home.png b/public/theme/md/img/menus/home.png similarity index 100% rename from htdocs/theme/md/img/menus/home.png rename to public/theme/md/img/menus/home.png diff --git a/htdocs/theme/md/img/menus/index.html b/public/theme/md/img/menus/index.html similarity index 100% rename from htdocs/theme/md/img/menus/index.html rename to public/theme/md/img/menus/index.html diff --git a/htdocs/theme/md/img/menus/mail.png b/public/theme/md/img/menus/mail.png similarity index 100% rename from htdocs/theme/md/img/menus/mail.png rename to public/theme/md/img/menus/mail.png diff --git a/htdocs/theme/md/img/menus/members.png b/public/theme/md/img/menus/members.png similarity index 100% rename from htdocs/theme/md/img/menus/members.png rename to public/theme/md/img/menus/members.png diff --git a/htdocs/theme/md/img/menus/menu.png b/public/theme/md/img/menus/menu.png similarity index 100% rename from htdocs/theme/md/img/menus/menu.png rename to public/theme/md/img/menus/menu.png diff --git a/htdocs/theme/md/img/menus/money.png b/public/theme/md/img/menus/money.png similarity index 100% rename from htdocs/theme/md/img/menus/money.png rename to public/theme/md/img/menus/money.png diff --git a/htdocs/theme/md/img/menus/pointofsale.png b/public/theme/md/img/menus/pointofsale.png similarity index 100% rename from htdocs/theme/md/img/menus/pointofsale.png rename to public/theme/md/img/menus/pointofsale.png diff --git a/htdocs/theme/md/img/menus/products.png b/public/theme/md/img/menus/products.png similarity index 100% rename from htdocs/theme/md/img/menus/products.png rename to public/theme/md/img/menus/products.png diff --git a/htdocs/theme/md/img/menus/project.png b/public/theme/md/img/menus/project.png similarity index 100% rename from htdocs/theme/md/img/menus/project.png rename to public/theme/md/img/menus/project.png diff --git a/htdocs/theme/md/img/menus/shop.png b/public/theme/md/img/menus/shop.png similarity index 100% rename from htdocs/theme/md/img/menus/shop.png rename to public/theme/md/img/menus/shop.png diff --git a/htdocs/theme/md/img/menus/tools.png b/public/theme/md/img/menus/tools.png similarity index 100% rename from htdocs/theme/md/img/menus/tools.png rename to public/theme/md/img/menus/tools.png diff --git a/htdocs/theme/md/img/menutab-r.png b/public/theme/md/img/menutab-r.png similarity index 100% rename from htdocs/theme/md/img/menutab-r.png rename to public/theme/md/img/menutab-r.png diff --git a/htdocs/theme/md/img/nav-overlay.png b/public/theme/md/img/nav-overlay.png similarity index 100% rename from htdocs/theme/md/img/nav-overlay.png rename to public/theme/md/img/nav-overlay.png diff --git a/htdocs/theme/md/img/nav-overlay3.png b/public/theme/md/img/nav-overlay3.png similarity index 100% rename from htdocs/theme/md/img/nav-overlay3.png rename to public/theme/md/img/nav-overlay3.png diff --git a/htdocs/theme/md/img/next.png b/public/theme/md/img/next.png similarity index 100% rename from htdocs/theme/md/img/next.png rename to public/theme/md/img/next.png diff --git a/htdocs/theme/md/img/nographyet.svg b/public/theme/md/img/nographyet.svg similarity index 100% rename from htdocs/theme/md/img/nographyet.svg rename to public/theme/md/img/nographyet.svg diff --git a/htdocs/theme/md/img/object_account.png b/public/theme/md/img/object_account.png similarity index 100% rename from htdocs/theme/md/img/object_account.png rename to public/theme/md/img/object_account.png diff --git a/htdocs/theme/md/img/object_accounting.png b/public/theme/md/img/object_accounting.png similarity index 100% rename from htdocs/theme/md/img/object_accounting.png rename to public/theme/md/img/object_accounting.png diff --git a/htdocs/theme/md/img/object_action.png b/public/theme/md/img/object_action.png similarity index 100% rename from htdocs/theme/md/img/object_action.png rename to public/theme/md/img/object_action.png diff --git a/htdocs/theme/md/img/object_address.png b/public/theme/md/img/object_address.png similarity index 100% rename from htdocs/theme/md/img/object_address.png rename to public/theme/md/img/object_address.png diff --git a/htdocs/theme/md/img/object_barcode.png b/public/theme/md/img/object_barcode.png similarity index 100% rename from htdocs/theme/md/img/object_barcode.png rename to public/theme/md/img/object_barcode.png diff --git a/htdocs/theme/md/img/object_bill.png b/public/theme/md/img/object_bill.png similarity index 100% rename from htdocs/theme/md/img/object_bill.png rename to public/theme/md/img/object_bill.png diff --git a/htdocs/theme/md/img/object_billa.png b/public/theme/md/img/object_billa.png similarity index 100% rename from htdocs/theme/md/img/object_billa.png rename to public/theme/md/img/object_billa.png diff --git a/htdocs/theme/md/img/object_billd.png b/public/theme/md/img/object_billd.png similarity index 100% rename from htdocs/theme/md/img/object_billd.png rename to public/theme/md/img/object_billd.png diff --git a/htdocs/theme/md/img/object_billr.png b/public/theme/md/img/object_billr.png similarity index 100% rename from htdocs/theme/md/img/object_billr.png rename to public/theme/md/img/object_billr.png diff --git a/htdocs/theme/md/img/object_book.png b/public/theme/md/img/object_book.png similarity index 100% rename from htdocs/theme/md/img/object_book.png rename to public/theme/md/img/object_book.png diff --git a/htdocs/theme/md/img/object_bookmark.png b/public/theme/md/img/object_bookmark.png similarity index 100% rename from htdocs/theme/md/img/object_bookmark.png rename to public/theme/md/img/object_bookmark.png diff --git a/htdocs/theme/md/img/object_building.png b/public/theme/md/img/object_building.png similarity index 100% rename from htdocs/theme/md/img/object_building.png rename to public/theme/md/img/object_building.png diff --git a/htdocs/theme/md/img/object_calendar.png b/public/theme/md/img/object_calendar.png similarity index 100% rename from htdocs/theme/md/img/object_calendar.png rename to public/theme/md/img/object_calendar.png diff --git a/htdocs/theme/md/img/object_calendarday.png b/public/theme/md/img/object_calendarday.png similarity index 100% rename from htdocs/theme/md/img/object_calendarday.png rename to public/theme/md/img/object_calendarday.png diff --git a/htdocs/theme/md/img/object_calendargantt.png b/public/theme/md/img/object_calendargantt.png similarity index 100% rename from htdocs/theme/md/img/object_calendargantt.png rename to public/theme/md/img/object_calendargantt.png diff --git a/htdocs/theme/md/img/object_calendarpertype.png b/public/theme/md/img/object_calendarpertype.png similarity index 100% rename from htdocs/theme/md/img/object_calendarpertype.png rename to public/theme/md/img/object_calendarpertype.png diff --git a/htdocs/theme/md/img/object_calendarperuser.png b/public/theme/md/img/object_calendarperuser.png similarity index 100% rename from htdocs/theme/md/img/object_calendarperuser.png rename to public/theme/md/img/object_calendarperuser.png diff --git a/htdocs/theme/md/img/object_calendarweek.png b/public/theme/md/img/object_calendarweek.png similarity index 100% rename from htdocs/theme/md/img/object_calendarweek.png rename to public/theme/md/img/object_calendarweek.png diff --git a/htdocs/theme/md/img/object_category-expanded.png b/public/theme/md/img/object_category-expanded.png similarity index 100% rename from htdocs/theme/md/img/object_category-expanded.png rename to public/theme/md/img/object_category-expanded.png diff --git a/htdocs/theme/md/img/object_category.png b/public/theme/md/img/object_category.png similarity index 100% rename from htdocs/theme/md/img/object_category.png rename to public/theme/md/img/object_category.png diff --git a/htdocs/theme/md/img/object_commercial.png b/public/theme/md/img/object_commercial.png similarity index 100% rename from htdocs/theme/md/img/object_commercial.png rename to public/theme/md/img/object_commercial.png diff --git a/htdocs/theme/md/img/object_company.png b/public/theme/md/img/object_company.png similarity index 100% rename from htdocs/theme/md/img/object_company.png rename to public/theme/md/img/object_company.png diff --git a/htdocs/theme/md/img/object_contact.png b/public/theme/md/img/object_contact.png similarity index 100% rename from htdocs/theme/md/img/object_contact.png rename to public/theme/md/img/object_contact.png diff --git a/htdocs/theme/md/img/object_contract.png b/public/theme/md/img/object_contract.png similarity index 100% rename from htdocs/theme/md/img/object_contract.png rename to public/theme/md/img/object_contract.png diff --git a/htdocs/theme/md/img/object_cron.png b/public/theme/md/img/object_cron.png similarity index 100% rename from htdocs/theme/md/img/object_cron.png rename to public/theme/md/img/object_cron.png diff --git a/htdocs/theme/md/img/object_dir.png b/public/theme/md/img/object_dir.png similarity index 100% rename from htdocs/theme/md/img/object_dir.png rename to public/theme/md/img/object_dir.png diff --git a/htdocs/theme/md/img/object_email.png b/public/theme/md/img/object_email.png similarity index 100% rename from htdocs/theme/md/img/object_email.png rename to public/theme/md/img/object_email.png diff --git a/htdocs/theme/md/img/object_energy.png b/public/theme/md/img/object_energy.png similarity index 100% rename from htdocs/theme/md/img/object_energy.png rename to public/theme/md/img/object_energy.png diff --git a/htdocs/theme/md/img/object_generic.png b/public/theme/md/img/object_generic.png similarity index 100% rename from htdocs/theme/md/img/object_generic.png rename to public/theme/md/img/object_generic.png diff --git a/htdocs/theme/md/img/object_globe.png b/public/theme/md/img/object_globe.png similarity index 100% rename from htdocs/theme/md/img/object_globe.png rename to public/theme/md/img/object_globe.png diff --git a/htdocs/theme/md/img/object_gravatar.png b/public/theme/md/img/object_gravatar.png similarity index 100% rename from htdocs/theme/md/img/object_gravatar.png rename to public/theme/md/img/object_gravatar.png diff --git a/htdocs/theme/md/img/object_group.png b/public/theme/md/img/object_group.png similarity index 100% rename from htdocs/theme/md/img/object_group.png rename to public/theme/md/img/object_group.png diff --git a/htdocs/theme/md/img/object_holiday.png b/public/theme/md/img/object_holiday.png similarity index 100% rename from htdocs/theme/md/img/object_holiday.png rename to public/theme/md/img/object_holiday.png diff --git a/htdocs/theme/md/img/object_intervention.png b/public/theme/md/img/object_intervention.png similarity index 100% rename from htdocs/theme/md/img/object_intervention.png rename to public/theme/md/img/object_intervention.png diff --git a/htdocs/theme/md/img/object_invoice.png b/public/theme/md/img/object_invoice.png similarity index 100% rename from htdocs/theme/md/img/object_invoice.png rename to public/theme/md/img/object_invoice.png diff --git a/htdocs/theme/md/img/object_label.png b/public/theme/md/img/object_label.png similarity index 100% rename from htdocs/theme/md/img/object_label.png rename to public/theme/md/img/object_label.png diff --git a/htdocs/theme/md/img/object_list.png b/public/theme/md/img/object_list.png similarity index 100% rename from htdocs/theme/md/img/object_list.png rename to public/theme/md/img/object_list.png diff --git a/htdocs/theme/md/img/object_margin.png b/public/theme/md/img/object_margin.png similarity index 100% rename from htdocs/theme/md/img/object_margin.png rename to public/theme/md/img/object_margin.png diff --git a/htdocs/theme/md/img/object_opensurvey.png b/public/theme/md/img/object_opensurvey.png similarity index 100% rename from htdocs/theme/md/img/object_opensurvey.png rename to public/theme/md/img/object_opensurvey.png diff --git a/htdocs/theme/md/img/object_order.png b/public/theme/md/img/object_order.png similarity index 100% rename from htdocs/theme/md/img/object_order.png rename to public/theme/md/img/object_order.png diff --git a/htdocs/theme/md/img/object_payment.png b/public/theme/md/img/object_payment.png similarity index 100% rename from htdocs/theme/md/img/object_payment.png rename to public/theme/md/img/object_payment.png diff --git a/htdocs/theme/md/img/object_phoning.png b/public/theme/md/img/object_phoning.png similarity index 100% rename from htdocs/theme/md/img/object_phoning.png rename to public/theme/md/img/object_phoning.png diff --git a/htdocs/theme/md/img/object_phoning_fax.png b/public/theme/md/img/object_phoning_fax.png similarity index 100% rename from htdocs/theme/md/img/object_phoning_fax.png rename to public/theme/md/img/object_phoning_fax.png diff --git a/htdocs/theme/md/img/object_printer.png b/public/theme/md/img/object_printer.png similarity index 100% rename from htdocs/theme/md/img/object_printer.png rename to public/theme/md/img/object_printer.png diff --git a/htdocs/theme/md/img/object_product.png b/public/theme/md/img/object_product.png similarity index 100% rename from htdocs/theme/md/img/object_product.png rename to public/theme/md/img/object_product.png diff --git a/htdocs/theme/md/img/object_project.png b/public/theme/md/img/object_project.png similarity index 100% rename from htdocs/theme/md/img/object_project.png rename to public/theme/md/img/object_project.png diff --git a/htdocs/theme/md/img/object_projectpub.png b/public/theme/md/img/object_projectpub.png similarity index 100% rename from htdocs/theme/md/img/object_projectpub.png rename to public/theme/md/img/object_projectpub.png diff --git a/htdocs/theme/md/img/object_projecttask.png b/public/theme/md/img/object_projecttask.png similarity index 100% rename from htdocs/theme/md/img/object_projecttask.png rename to public/theme/md/img/object_projecttask.png diff --git a/htdocs/theme/md/img/object_propal.png b/public/theme/md/img/object_propal.png similarity index 100% rename from htdocs/theme/md/img/object_propal.png rename to public/theme/md/img/object_propal.png diff --git a/htdocs/theme/md/img/object_reduc.png b/public/theme/md/img/object_reduc.png similarity index 100% rename from htdocs/theme/md/img/object_reduc.png rename to public/theme/md/img/object_reduc.png diff --git a/htdocs/theme/md/img/object_resource.png b/public/theme/md/img/object_resource.png similarity index 100% rename from htdocs/theme/md/img/object_resource.png rename to public/theme/md/img/object_resource.png diff --git a/htdocs/theme/md/img/object_rss.png b/public/theme/md/img/object_rss.png similarity index 100% rename from htdocs/theme/md/img/object_rss.png rename to public/theme/md/img/object_rss.png diff --git a/htdocs/theme/md/img/object_sending.png b/public/theme/md/img/object_sending.png similarity index 100% rename from htdocs/theme/md/img/object_sending.png rename to public/theme/md/img/object_sending.png diff --git a/htdocs/theme/md/img/object_service.png b/public/theme/md/img/object_service.png similarity index 100% rename from htdocs/theme/md/img/object_service.png rename to public/theme/md/img/object_service.png diff --git a/htdocs/theme/md/img/object_skype.png b/public/theme/md/img/object_skype.png similarity index 100% rename from htdocs/theme/md/img/object_skype.png rename to public/theme/md/img/object_skype.png diff --git a/htdocs/theme/md/img/object_stock.png b/public/theme/md/img/object_stock.png similarity index 100% rename from htdocs/theme/md/img/object_stock.png rename to public/theme/md/img/object_stock.png diff --git a/htdocs/theme/md/img/object_supplier_proposal.png b/public/theme/md/img/object_supplier_proposal.png similarity index 100% rename from htdocs/theme/md/img/object_supplier_proposal.png rename to public/theme/md/img/object_supplier_proposal.png diff --git a/htdocs/theme/md/img/object_task.png b/public/theme/md/img/object_task.png similarity index 100% rename from htdocs/theme/md/img/object_task.png rename to public/theme/md/img/object_task.png diff --git a/htdocs/theme/md/img/object_task_time.png b/public/theme/md/img/object_task_time.png similarity index 100% rename from htdocs/theme/md/img/object_task_time.png rename to public/theme/md/img/object_task_time.png diff --git a/htdocs/theme/md/img/object_tax.png b/public/theme/md/img/object_tax.png similarity index 100% rename from htdocs/theme/md/img/object_tax.png rename to public/theme/md/img/object_tax.png diff --git a/htdocs/theme/md/img/object_technic.png b/public/theme/md/img/object_technic.png similarity index 100% rename from htdocs/theme/md/img/object_technic.png rename to public/theme/md/img/object_technic.png diff --git a/htdocs/theme/md/img/object_trip.png b/public/theme/md/img/object_trip.png similarity index 100% rename from htdocs/theme/md/img/object_trip.png rename to public/theme/md/img/object_trip.png diff --git a/htdocs/theme/md/img/object_user.png b/public/theme/md/img/object_user.png similarity index 100% rename from htdocs/theme/md/img/object_user.png rename to public/theme/md/img/object_user.png diff --git a/htdocs/theme/md/img/off.png b/public/theme/md/img/off.png similarity index 100% rename from htdocs/theme/md/img/off.png rename to public/theme/md/img/off.png diff --git a/htdocs/theme/md/img/on.png b/public/theme/md/img/on.png similarity index 100% rename from htdocs/theme/md/img/on.png rename to public/theme/md/img/on.png diff --git a/htdocs/theme/md/img/pdf2.png b/public/theme/md/img/pdf2.png similarity index 100% rename from htdocs/theme/md/img/pdf2.png rename to public/theme/md/img/pdf2.png diff --git a/htdocs/theme/md/img/pdf3.png b/public/theme/md/img/pdf3.png similarity index 100% rename from htdocs/theme/md/img/pdf3.png rename to public/theme/md/img/pdf3.png diff --git a/htdocs/theme/md/img/play.png b/public/theme/md/img/play.png similarity index 100% rename from htdocs/theme/md/img/play.png rename to public/theme/md/img/play.png diff --git a/htdocs/theme/md/img/playdisabled.png b/public/theme/md/img/playdisabled.png similarity index 100% rename from htdocs/theme/md/img/playdisabled.png rename to public/theme/md/img/playdisabled.png diff --git a/htdocs/theme/md/img/preview.png b/public/theme/md/img/preview.png similarity index 100% rename from htdocs/theme/md/img/preview.png rename to public/theme/md/img/preview.png diff --git a/htdocs/theme/md/img/preview_ext.png b/public/theme/md/img/preview_ext.png similarity index 100% rename from htdocs/theme/md/img/preview_ext.png rename to public/theme/md/img/preview_ext.png diff --git a/htdocs/theme/md/img/previous.png b/public/theme/md/img/previous.png similarity index 100% rename from htdocs/theme/md/img/previous.png rename to public/theme/md/img/previous.png diff --git a/htdocs/theme/md/img/printer.png b/public/theme/md/img/printer.png similarity index 100% rename from htdocs/theme/md/img/printer.png rename to public/theme/md/img/printer.png diff --git a/htdocs/theme/md/img/printer_top.png b/public/theme/md/img/printer_top.png similarity index 100% rename from htdocs/theme/md/img/printer_top.png rename to public/theme/md/img/printer_top.png diff --git a/htdocs/theme/md/img/puce.png b/public/theme/md/img/puce.png similarity index 100% rename from htdocs/theme/md/img/puce.png rename to public/theme/md/img/puce.png diff --git a/htdocs/theme/md/img/recent.png b/public/theme/md/img/recent.png similarity index 100% rename from htdocs/theme/md/img/recent.png rename to public/theme/md/img/recent.png diff --git a/htdocs/theme/md/img/redstar.png b/public/theme/md/img/redstar.png similarity index 100% rename from htdocs/theme/md/img/redstar.png rename to public/theme/md/img/redstar.png diff --git a/htdocs/theme/md/img/refresh.png b/public/theme/md/img/refresh.png similarity index 100% rename from htdocs/theme/md/img/refresh.png rename to public/theme/md/img/refresh.png diff --git a/htdocs/theme/md/img/reload.png b/public/theme/md/img/reload.png similarity index 100% rename from htdocs/theme/md/img/reload.png rename to public/theme/md/img/reload.png diff --git a/htdocs/theme/md/img/rightarrow.png b/public/theme/md/img/rightarrow.png similarity index 100% rename from htdocs/theme/md/img/rightarrow.png rename to public/theme/md/img/rightarrow.png diff --git a/htdocs/theme/md/img/search.png b/public/theme/md/img/search.png similarity index 100% rename from htdocs/theme/md/img/search.png rename to public/theme/md/img/search.png diff --git a/htdocs/theme/md/img/searchclear.png b/public/theme/md/img/searchclear.png similarity index 100% rename from htdocs/theme/md/img/searchclear.png rename to public/theme/md/img/searchclear.png diff --git a/htdocs/theme/md/img/setup.png b/public/theme/md/img/setup.png similarity index 100% rename from htdocs/theme/md/img/setup.png rename to public/theme/md/img/setup.png diff --git a/htdocs/theme/md/img/sort_asc.png b/public/theme/md/img/sort_asc.png similarity index 100% rename from htdocs/theme/md/img/sort_asc.png rename to public/theme/md/img/sort_asc.png diff --git a/htdocs/theme/md/img/sort_asc_disabled.png b/public/theme/md/img/sort_asc_disabled.png similarity index 100% rename from htdocs/theme/md/img/sort_asc_disabled.png rename to public/theme/md/img/sort_asc_disabled.png diff --git a/htdocs/theme/md/img/sort_desc.png b/public/theme/md/img/sort_desc.png similarity index 100% rename from htdocs/theme/md/img/sort_desc.png rename to public/theme/md/img/sort_desc.png diff --git a/htdocs/theme/md/img/sort_desc_disabled.png b/public/theme/md/img/sort_desc_disabled.png similarity index 100% rename from htdocs/theme/md/img/sort_desc_disabled.png rename to public/theme/md/img/sort_desc_disabled.png diff --git a/htdocs/theme/md/img/split.png b/public/theme/md/img/split.png similarity index 100% rename from htdocs/theme/md/img/split.png rename to public/theme/md/img/split.png diff --git a/htdocs/theme/md/img/star.png b/public/theme/md/img/star.png similarity index 100% rename from htdocs/theme/md/img/star.png rename to public/theme/md/img/star.png diff --git a/htdocs/theme/md/img/stats.png b/public/theme/md/img/stats.png similarity index 100% rename from htdocs/theme/md/img/stats.png rename to public/theme/md/img/stats.png diff --git a/htdocs/theme/md/img/statut0.png b/public/theme/md/img/statut0.png similarity index 100% rename from htdocs/theme/md/img/statut0.png rename to public/theme/md/img/statut0.png diff --git a/htdocs/theme/md/img/statut0_40x40.png b/public/theme/md/img/statut0_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut0_40x40.png rename to public/theme/md/img/statut0_40x40.png diff --git a/htdocs/theme/md/img/statut1.png b/public/theme/md/img/statut1.png similarity index 100% rename from htdocs/theme/md/img/statut1.png rename to public/theme/md/img/statut1.png diff --git a/htdocs/theme/md/img/statut1_40x40.png b/public/theme/md/img/statut1_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut1_40x40.png rename to public/theme/md/img/statut1_40x40.png diff --git a/htdocs/theme/md/img/statut3.png b/public/theme/md/img/statut3.png similarity index 100% rename from htdocs/theme/md/img/statut3.png rename to public/theme/md/img/statut3.png diff --git a/htdocs/theme/md/img/statut3_40x40.png b/public/theme/md/img/statut3_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut3_40x40.png rename to public/theme/md/img/statut3_40x40.png diff --git a/htdocs/theme/md/img/statut4.png b/public/theme/md/img/statut4.png similarity index 100% rename from htdocs/theme/md/img/statut4.png rename to public/theme/md/img/statut4.png diff --git a/htdocs/theme/md/img/statut4_40x40.png b/public/theme/md/img/statut4_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut4_40x40.png rename to public/theme/md/img/statut4_40x40.png diff --git a/htdocs/theme/md/img/statut5.png b/public/theme/md/img/statut5.png similarity index 100% rename from htdocs/theme/md/img/statut5.png rename to public/theme/md/img/statut5.png diff --git a/htdocs/theme/md/img/statut5_40x40.png b/public/theme/md/img/statut5_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut5_40x40.png rename to public/theme/md/img/statut5_40x40.png diff --git a/htdocs/theme/md/img/statut6.png b/public/theme/md/img/statut6.png similarity index 100% rename from htdocs/theme/md/img/statut6.png rename to public/theme/md/img/statut6.png diff --git a/htdocs/theme/md/img/statut6_40x40.png b/public/theme/md/img/statut6_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut6_40x40.png rename to public/theme/md/img/statut6_40x40.png diff --git a/htdocs/theme/md/img/statut7.png b/public/theme/md/img/statut7.png similarity index 100% rename from htdocs/theme/md/img/statut7.png rename to public/theme/md/img/statut7.png diff --git a/htdocs/theme/md/img/statut7_40x40.png b/public/theme/md/img/statut7_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut7_40x40.png rename to public/theme/md/img/statut7_40x40.png diff --git a/htdocs/theme/md/img/statut8.png b/public/theme/md/img/statut8.png similarity index 100% rename from htdocs/theme/md/img/statut8.png rename to public/theme/md/img/statut8.png diff --git a/htdocs/theme/md/img/statut8_40x40.png b/public/theme/md/img/statut8_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut8_40x40.png rename to public/theme/md/img/statut8_40x40.png diff --git a/htdocs/theme/md/img/statut9.png b/public/theme/md/img/statut9.png similarity index 100% rename from htdocs/theme/md/img/statut9.png rename to public/theme/md/img/statut9.png diff --git a/htdocs/theme/md/img/statut9_40x40.png b/public/theme/md/img/statut9_40x40.png similarity index 100% rename from htdocs/theme/md/img/statut9_40x40.png rename to public/theme/md/img/statut9_40x40.png diff --git a/htdocs/theme/md/img/stcomm-1.png b/public/theme/md/img/stcomm-1.png similarity index 100% rename from htdocs/theme/md/img/stcomm-1.png rename to public/theme/md/img/stcomm-1.png diff --git a/htdocs/theme/md/img/stcomm0.png b/public/theme/md/img/stcomm0.png similarity index 100% rename from htdocs/theme/md/img/stcomm0.png rename to public/theme/md/img/stcomm0.png diff --git a/htdocs/theme/md/img/stcomm1.png b/public/theme/md/img/stcomm1.png similarity index 100% rename from htdocs/theme/md/img/stcomm1.png rename to public/theme/md/img/stcomm1.png diff --git a/htdocs/theme/md/img/stcomm2.png b/public/theme/md/img/stcomm2.png similarity index 100% rename from htdocs/theme/md/img/stcomm2.png rename to public/theme/md/img/stcomm2.png diff --git a/htdocs/theme/md/img/stcomm3.png b/public/theme/md/img/stcomm3.png similarity index 100% rename from htdocs/theme/md/img/stcomm3.png rename to public/theme/md/img/stcomm3.png diff --git a/htdocs/theme/md/img/stcomm4.png b/public/theme/md/img/stcomm4.png similarity index 100% rename from htdocs/theme/md/img/stcomm4.png rename to public/theme/md/img/stcomm4.png diff --git a/htdocs/theme/md/img/switch_off.png b/public/theme/md/img/switch_off.png similarity index 100% rename from htdocs/theme/md/img/switch_off.png rename to public/theme/md/img/switch_off.png diff --git a/htdocs/theme/md/img/switch_off_old.png b/public/theme/md/img/switch_off_old.png similarity index 100% rename from htdocs/theme/md/img/switch_off_old.png rename to public/theme/md/img/switch_off_old.png diff --git a/htdocs/theme/md/img/switch_on.png b/public/theme/md/img/switch_on.png similarity index 100% rename from htdocs/theme/md/img/switch_on.png rename to public/theme/md/img/switch_on.png diff --git a/htdocs/theme/md/img/switch_on_old.png b/public/theme/md/img/switch_on_old.png similarity index 100% rename from htdocs/theme/md/img/switch_on_old.png rename to public/theme/md/img/switch_on_old.png diff --git a/htdocs/theme/md/img/tab_background.png b/public/theme/md/img/tab_background.png similarity index 100% rename from htdocs/theme/md/img/tab_background.png rename to public/theme/md/img/tab_background.png diff --git a/htdocs/theme/md/img/tick.png b/public/theme/md/img/tick.png similarity index 100% rename from htdocs/theme/md/img/tick.png rename to public/theme/md/img/tick.png diff --git a/htdocs/theme/md/img/title.gif b/public/theme/md/img/title.gif similarity index 100% rename from htdocs/theme/md/img/title.gif rename to public/theme/md/img/title.gif diff --git a/htdocs/theme/md/img/title.png b/public/theme/md/img/title.png similarity index 100% rename from htdocs/theme/md/img/title.png rename to public/theme/md/img/title.png diff --git a/htdocs/theme/md/img/title_accountancy.png b/public/theme/md/img/title_accountancy.png similarity index 100% rename from htdocs/theme/md/img/title_accountancy.png rename to public/theme/md/img/title_accountancy.png diff --git a/htdocs/theme/md/img/title_agenda.png b/public/theme/md/img/title_agenda.png similarity index 100% rename from htdocs/theme/md/img/title_agenda.png rename to public/theme/md/img/title_agenda.png diff --git a/htdocs/theme/md/img/title_bank.png b/public/theme/md/img/title_bank.png similarity index 100% rename from htdocs/theme/md/img/title_bank.png rename to public/theme/md/img/title_bank.png diff --git a/htdocs/theme/md/img/title_commercial.png b/public/theme/md/img/title_commercial.png similarity index 100% rename from htdocs/theme/md/img/title_commercial.png rename to public/theme/md/img/title_commercial.png diff --git a/htdocs/theme/md/img/title_companies.png b/public/theme/md/img/title_companies.png similarity index 100% rename from htdocs/theme/md/img/title_companies.png rename to public/theme/md/img/title_companies.png diff --git a/htdocs/theme/md/img/title_generic.png b/public/theme/md/img/title_generic.png similarity index 100% rename from htdocs/theme/md/img/title_generic.png rename to public/theme/md/img/title_generic.png diff --git a/htdocs/theme/md/img/title_home.png b/public/theme/md/img/title_home.png similarity index 100% rename from htdocs/theme/md/img/title_home.png rename to public/theme/md/img/title_home.png diff --git a/htdocs/theme/md/img/title_hrm.png b/public/theme/md/img/title_hrm.png similarity index 100% rename from htdocs/theme/md/img/title_hrm.png rename to public/theme/md/img/title_hrm.png diff --git a/htdocs/theme/md/img/title_products.png b/public/theme/md/img/title_products.png similarity index 100% rename from htdocs/theme/md/img/title_products.png rename to public/theme/md/img/title_products.png diff --git a/htdocs/theme/md/img/title_project.png b/public/theme/md/img/title_project.png similarity index 100% rename from htdocs/theme/md/img/title_project.png rename to public/theme/md/img/title_project.png diff --git a/htdocs/theme/md/img/title_setup.png b/public/theme/md/img/title_setup.png similarity index 100% rename from htdocs/theme/md/img/title_setup.png rename to public/theme/md/img/title_setup.png diff --git a/htdocs/theme/md/img/tmenu.jpg b/public/theme/md/img/tmenu.jpg similarity index 100% rename from htdocs/theme/md/img/tmenu.jpg rename to public/theme/md/img/tmenu.jpg diff --git a/htdocs/theme/md/img/tmenu2.jpg b/public/theme/md/img/tmenu2.jpg similarity index 100% rename from htdocs/theme/md/img/tmenu2.jpg rename to public/theme/md/img/tmenu2.jpg diff --git a/htdocs/theme/md/img/tmenu3.jpg b/public/theme/md/img/tmenu3.jpg similarity index 100% rename from htdocs/theme/md/img/tmenu3.jpg rename to public/theme/md/img/tmenu3.jpg diff --git a/htdocs/theme/md/img/tmenu_inverse.jpg b/public/theme/md/img/tmenu_inverse.jpg similarity index 100% rename from htdocs/theme/md/img/tmenu_inverse.jpg rename to public/theme/md/img/tmenu_inverse.jpg diff --git a/htdocs/theme/md/img/unlock.png b/public/theme/md/img/unlock.png similarity index 100% rename from htdocs/theme/md/img/unlock.png rename to public/theme/md/img/unlock.png diff --git a/htdocs/theme/md/img/uparrow.png b/public/theme/md/img/uparrow.png similarity index 100% rename from htdocs/theme/md/img/uparrow.png rename to public/theme/md/img/uparrow.png diff --git a/htdocs/theme/md/img/upload.png b/public/theme/md/img/upload.png similarity index 100% rename from htdocs/theme/md/img/upload.png rename to public/theme/md/img/upload.png diff --git a/htdocs/theme/md/img/vcard.png b/public/theme/md/img/vcard.png similarity index 100% rename from htdocs/theme/md/img/vcard.png rename to public/theme/md/img/vcard.png diff --git a/htdocs/theme/md/img/view.png b/public/theme/md/img/view.png similarity index 100% rename from htdocs/theme/md/img/view.png rename to public/theme/md/img/view.png diff --git a/htdocs/theme/md/img/warning.png b/public/theme/md/img/warning.png similarity index 100% rename from htdocs/theme/md/img/warning.png rename to public/theme/md/img/warning.png diff --git a/htdocs/theme/md/img/weather/index.html b/public/theme/md/img/weather/index.html similarity index 100% rename from htdocs/theme/md/img/weather/index.html rename to public/theme/md/img/weather/index.html diff --git a/htdocs/theme/md/img/weather/weather-clear-night.png b/public/theme/md/img/weather/weather-clear-night.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-clear-night.png rename to public/theme/md/img/weather/weather-clear-night.png diff --git a/htdocs/theme/md/img/weather/weather-clear.png b/public/theme/md/img/weather/weather-clear.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-clear.png rename to public/theme/md/img/weather/weather-clear.png diff --git a/htdocs/theme/md/img/weather/weather-clouds-night.png b/public/theme/md/img/weather/weather-clouds-night.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-clouds-night.png rename to public/theme/md/img/weather/weather-clouds-night.png diff --git a/htdocs/theme/md/img/weather/weather-clouds.png b/public/theme/md/img/weather/weather-clouds.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-clouds.png rename to public/theme/md/img/weather/weather-clouds.png diff --git a/htdocs/theme/md/img/weather/weather-few-clouds-night.png b/public/theme/md/img/weather/weather-few-clouds-night.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-few-clouds-night.png rename to public/theme/md/img/weather/weather-few-clouds-night.png diff --git a/htdocs/theme/md/img/weather/weather-few-clouds.png b/public/theme/md/img/weather/weather-few-clouds.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-few-clouds.png rename to public/theme/md/img/weather/weather-few-clouds.png diff --git a/htdocs/theme/md/img/weather/weather-freezing-rain.png b/public/theme/md/img/weather/weather-freezing-rain.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-freezing-rain.png rename to public/theme/md/img/weather/weather-freezing-rain.png diff --git a/htdocs/theme/md/img/weather/weather-hail.png b/public/theme/md/img/weather/weather-hail.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-hail.png rename to public/theme/md/img/weather/weather-hail.png diff --git a/htdocs/theme/md/img/weather/weather-many-clouds.png b/public/theme/md/img/weather/weather-many-clouds.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-many-clouds.png rename to public/theme/md/img/weather/weather-many-clouds.png diff --git a/htdocs/theme/md/img/weather/weather-mist.png b/public/theme/md/img/weather/weather-mist.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-mist.png rename to public/theme/md/img/weather/weather-mist.png diff --git a/htdocs/theme/md/img/weather/weather-showers-day.png b/public/theme/md/img/weather/weather-showers-day.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-showers-day.png rename to public/theme/md/img/weather/weather-showers-day.png diff --git a/htdocs/theme/md/img/weather/weather-showers-night.png b/public/theme/md/img/weather/weather-showers-night.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-showers-night.png rename to public/theme/md/img/weather/weather-showers-night.png diff --git a/htdocs/theme/md/img/weather/weather-showers-scattered-day.png b/public/theme/md/img/weather/weather-showers-scattered-day.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-showers-scattered-day.png rename to public/theme/md/img/weather/weather-showers-scattered-day.png diff --git a/htdocs/theme/md/img/weather/weather-showers-scattered-night.png b/public/theme/md/img/weather/weather-showers-scattered-night.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-showers-scattered-night.png rename to public/theme/md/img/weather/weather-showers-scattered-night.png diff --git a/htdocs/theme/md/img/weather/weather-showers-scattered.png b/public/theme/md/img/weather/weather-showers-scattered.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-showers-scattered.png rename to public/theme/md/img/weather/weather-showers-scattered.png diff --git a/htdocs/theme/md/img/weather/weather-showers.png b/public/theme/md/img/weather/weather-showers.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-showers.png rename to public/theme/md/img/weather/weather-showers.png diff --git a/htdocs/theme/md/img/weather/weather-snow-rain.png b/public/theme/md/img/weather/weather-snow-rain.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-snow-rain.png rename to public/theme/md/img/weather/weather-snow-rain.png diff --git a/htdocs/theme/md/img/weather/weather-snow-scattered-day.png b/public/theme/md/img/weather/weather-snow-scattered-day.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-snow-scattered-day.png rename to public/theme/md/img/weather/weather-snow-scattered-day.png diff --git a/htdocs/theme/md/img/weather/weather-snow-scattered-night.png b/public/theme/md/img/weather/weather-snow-scattered-night.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-snow-scattered-night.png rename to public/theme/md/img/weather/weather-snow-scattered-night.png diff --git a/htdocs/theme/md/img/weather/weather-snow-scattered.png b/public/theme/md/img/weather/weather-snow-scattered.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-snow-scattered.png rename to public/theme/md/img/weather/weather-snow-scattered.png diff --git a/htdocs/theme/md/img/weather/weather-snow.png b/public/theme/md/img/weather/weather-snow.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-snow.png rename to public/theme/md/img/weather/weather-snow.png diff --git a/htdocs/theme/md/img/weather/weather-storm-day.png b/public/theme/md/img/weather/weather-storm-day.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-storm-day.png rename to public/theme/md/img/weather/weather-storm-day.png diff --git a/htdocs/theme/md/img/weather/weather-storm-night.png b/public/theme/md/img/weather/weather-storm-night.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-storm-night.png rename to public/theme/md/img/weather/weather-storm-night.png diff --git a/htdocs/theme/md/img/weather/weather-storm.png b/public/theme/md/img/weather/weather-storm.png similarity index 100% rename from htdocs/theme/md/img/weather/weather-storm.png rename to public/theme/md/img/weather/weather-storm.png diff --git a/htdocs/theme/md/img/working.gif b/public/theme/md/img/working.gif similarity index 100% rename from htdocs/theme/md/img/working.gif rename to public/theme/md/img/working.gif diff --git a/htdocs/theme/md/img/working2.gif b/public/theme/md/img/working2.gif similarity index 100% rename from htdocs/theme/md/img/working2.gif rename to public/theme/md/img/working2.gif diff --git a/htdocs/theme/md/index.html b/public/theme/md/index.html similarity index 100% rename from htdocs/theme/md/index.html rename to public/theme/md/index.html diff --git a/htdocs/theme/md/style.css.php b/public/theme/md/style.css.php similarity index 100% rename from htdocs/theme/md/style.css.php rename to public/theme/md/style.css.php diff --git a/htdocs/theme/md/thumb.png b/public/theme/md/thumb.png similarity index 100% rename from htdocs/theme/md/thumb.png rename to public/theme/md/thumb.png diff --git a/htdocs/theme/md/tpl/README b/public/theme/md/tpl/README similarity index 100% rename from htdocs/theme/md/tpl/README rename to public/theme/md/tpl/README diff --git a/htdocs/theme/md/tpl/index.html b/public/theme/md/tpl/index.html similarity index 100% rename from htdocs/theme/md/tpl/index.html rename to public/theme/md/tpl/index.html diff --git a/htdocs/user/admin/group_extrafields.php b/public/user/admin/group_extrafields.php similarity index 100% rename from htdocs/user/admin/group_extrafields.php rename to public/user/admin/group_extrafields.php diff --git a/htdocs/user/admin/index.html b/public/user/admin/index.html similarity index 100% rename from htdocs/user/admin/index.html rename to public/user/admin/index.html diff --git a/htdocs/user/admin/user_extrafields.php b/public/user/admin/user_extrafields.php similarity index 100% rename from htdocs/user/admin/user_extrafields.php rename to public/user/admin/user_extrafields.php diff --git a/htdocs/user/agenda_extsites.php b/public/user/agenda_extsites.php similarity index 100% rename from htdocs/user/agenda_extsites.php rename to public/user/agenda_extsites.php diff --git a/htdocs/user/bank.php b/public/user/bank.php similarity index 100% rename from htdocs/user/bank.php rename to public/user/bank.php diff --git a/htdocs/user/card.php b/public/user/card.php similarity index 100% rename from htdocs/user/card.php rename to public/user/card.php diff --git a/htdocs/user/class/api_deprecated_user.class.php b/public/user/class/api_deprecated_user.class.php similarity index 100% rename from htdocs/user/class/api_deprecated_user.class.php rename to public/user/class/api_deprecated_user.class.php diff --git a/htdocs/user/class/api_users.class.php b/public/user/class/api_users.class.php similarity index 100% rename from htdocs/user/class/api_users.class.php rename to public/user/class/api_users.class.php diff --git a/htdocs/user/class/index.html b/public/user/class/index.html similarity index 100% rename from htdocs/user/class/index.html rename to public/user/class/index.html diff --git a/htdocs/user/class/user.class.php b/public/user/class/user.class.php similarity index 100% rename from htdocs/user/class/user.class.php rename to public/user/class/user.class.php diff --git a/htdocs/user/class/userbankaccount.class.php b/public/user/class/userbankaccount.class.php similarity index 100% rename from htdocs/user/class/userbankaccount.class.php rename to public/user/class/userbankaccount.class.php diff --git a/htdocs/user/class/usergroup.class.php b/public/user/class/usergroup.class.php similarity index 100% rename from htdocs/user/class/usergroup.class.php rename to public/user/class/usergroup.class.php diff --git a/htdocs/user/clicktodial.php b/public/user/clicktodial.php similarity index 100% rename from htdocs/user/clicktodial.php rename to public/user/clicktodial.php diff --git a/htdocs/user/document.php b/public/user/document.php similarity index 100% rename from htdocs/user/document.php rename to public/user/document.php diff --git a/htdocs/user/group/card.php b/public/user/group/card.php similarity index 100% rename from htdocs/user/group/card.php rename to public/user/group/card.php diff --git a/htdocs/user/group/index.php b/public/user/group/index.php similarity index 100% rename from htdocs/user/group/index.php rename to public/user/group/index.php diff --git a/htdocs/user/group/ldap.php b/public/user/group/ldap.php similarity index 100% rename from htdocs/user/group/ldap.php rename to public/user/group/ldap.php diff --git a/htdocs/user/group/perms.php b/public/user/group/perms.php similarity index 100% rename from htdocs/user/group/perms.php rename to public/user/group/perms.php diff --git a/htdocs/user/hierarchy.php b/public/user/hierarchy.php similarity index 100% rename from htdocs/user/hierarchy.php rename to public/user/hierarchy.php diff --git a/htdocs/user/home.php b/public/user/home.php similarity index 100% rename from htdocs/user/home.php rename to public/user/home.php diff --git a/htdocs/user/index.php b/public/user/index.php similarity index 100% rename from htdocs/user/index.php rename to public/user/index.php diff --git a/htdocs/user/info.php b/public/user/info.php similarity index 100% rename from htdocs/user/info.php rename to public/user/info.php diff --git a/htdocs/user/ldap.php b/public/user/ldap.php similarity index 100% rename from htdocs/user/ldap.php rename to public/user/ldap.php diff --git a/htdocs/user/logout.php b/public/user/logout.php similarity index 100% rename from htdocs/user/logout.php rename to public/user/logout.php diff --git a/htdocs/user/note.php b/public/user/note.php similarity index 100% rename from htdocs/user/note.php rename to public/user/note.php diff --git a/htdocs/user/notify/card.php b/public/user/notify/card.php similarity index 100% rename from htdocs/user/notify/card.php rename to public/user/notify/card.php diff --git a/htdocs/user/param_ihm.php b/public/user/param_ihm.php similarity index 100% rename from htdocs/user/param_ihm.php rename to public/user/param_ihm.php diff --git a/htdocs/user/passwordforgotten.php b/public/user/passwordforgotten.php similarity index 100% rename from htdocs/user/passwordforgotten.php rename to public/user/passwordforgotten.php diff --git a/htdocs/user/perms.php b/public/user/perms.php similarity index 100% rename from htdocs/user/perms.php rename to public/user/perms.php diff --git a/htdocs/viewimage.php b/public/viewimage.php similarity index 100% rename from htdocs/viewimage.php rename to public/viewimage.php diff --git a/htdocs/webservices/README.md b/public/webservices/README.md similarity index 100% rename from htdocs/webservices/README.md rename to public/webservices/README.md diff --git a/htdocs/webservices/admin/index.php b/public/webservices/admin/index.php similarity index 100% rename from htdocs/webservices/admin/index.php rename to public/webservices/admin/index.php diff --git a/htdocs/webservices/demo_wsclient_actioncomm.php-NORUN b/public/webservices/demo_wsclient_actioncomm.php-NORUN similarity index 100% rename from htdocs/webservices/demo_wsclient_actioncomm.php-NORUN rename to public/webservices/demo_wsclient_actioncomm.php-NORUN diff --git a/htdocs/webservices/demo_wsclient_category.php-NORUN b/public/webservices/demo_wsclient_category.php-NORUN similarity index 100% rename from htdocs/webservices/demo_wsclient_category.php-NORUN rename to public/webservices/demo_wsclient_category.php-NORUN diff --git a/htdocs/webservices/demo_wsclient_invoice.php-NORUN b/public/webservices/demo_wsclient_invoice.php-NORUN similarity index 100% rename from htdocs/webservices/demo_wsclient_invoice.php-NORUN rename to public/webservices/demo_wsclient_invoice.php-NORUN diff --git a/htdocs/webservices/demo_wsclient_order.php-NORUN b/public/webservices/demo_wsclient_order.php-NORUN similarity index 100% rename from htdocs/webservices/demo_wsclient_order.php-NORUN rename to public/webservices/demo_wsclient_order.php-NORUN diff --git a/htdocs/webservices/demo_wsclient_other.php-NORUN b/public/webservices/demo_wsclient_other.php-NORUN similarity index 100% rename from htdocs/webservices/demo_wsclient_other.php-NORUN rename to public/webservices/demo_wsclient_other.php-NORUN diff --git a/htdocs/webservices/demo_wsclient_productorservice.php-NORUN b/public/webservices/demo_wsclient_productorservice.php-NORUN similarity index 100% rename from htdocs/webservices/demo_wsclient_productorservice.php-NORUN rename to public/webservices/demo_wsclient_productorservice.php-NORUN diff --git a/htdocs/webservices/demo_wsclient_project.php-NORUN b/public/webservices/demo_wsclient_project.php-NORUN similarity index 100% rename from htdocs/webservices/demo_wsclient_project.php-NORUN rename to public/webservices/demo_wsclient_project.php-NORUN diff --git a/htdocs/webservices/demo_wsclient_thirdparty.php-NORUN b/public/webservices/demo_wsclient_thirdparty.php-NORUN similarity index 100% rename from htdocs/webservices/demo_wsclient_thirdparty.php-NORUN rename to public/webservices/demo_wsclient_thirdparty.php-NORUN diff --git a/htdocs/webservices/index.php b/public/webservices/index.php similarity index 100% rename from htdocs/webservices/index.php rename to public/webservices/index.php diff --git a/htdocs/webservices/server_actioncomm.php b/public/webservices/server_actioncomm.php similarity index 100% rename from htdocs/webservices/server_actioncomm.php rename to public/webservices/server_actioncomm.php diff --git a/htdocs/webservices/server_category.php b/public/webservices/server_category.php similarity index 100% rename from htdocs/webservices/server_category.php rename to public/webservices/server_category.php diff --git a/htdocs/webservices/server_contact.php b/public/webservices/server_contact.php similarity index 100% rename from htdocs/webservices/server_contact.php rename to public/webservices/server_contact.php diff --git a/htdocs/webservices/server_invoice.php b/public/webservices/server_invoice.php similarity index 100% rename from htdocs/webservices/server_invoice.php rename to public/webservices/server_invoice.php diff --git a/htdocs/webservices/server_order.php b/public/webservices/server_order.php similarity index 100% rename from htdocs/webservices/server_order.php rename to public/webservices/server_order.php diff --git a/htdocs/webservices/server_other.php b/public/webservices/server_other.php similarity index 100% rename from htdocs/webservices/server_other.php rename to public/webservices/server_other.php diff --git a/htdocs/webservices/server_productorservice.php b/public/webservices/server_productorservice.php similarity index 100% rename from htdocs/webservices/server_productorservice.php rename to public/webservices/server_productorservice.php diff --git a/htdocs/webservices/server_project.php b/public/webservices/server_project.php similarity index 100% rename from htdocs/webservices/server_project.php rename to public/webservices/server_project.php diff --git a/htdocs/webservices/server_supplier_invoice.php b/public/webservices/server_supplier_invoice.php similarity index 100% rename from htdocs/webservices/server_supplier_invoice.php rename to public/webservices/server_supplier_invoice.php diff --git a/htdocs/webservices/server_thirdparty.php b/public/webservices/server_thirdparty.php similarity index 100% rename from htdocs/webservices/server_thirdparty.php rename to public/webservices/server_thirdparty.php diff --git a/htdocs/webservices/server_user.php b/public/webservices/server_user.php similarity index 100% rename from htdocs/webservices/server_user.php rename to public/webservices/server_user.php diff --git a/htdocs/websites/class/website.class.php b/public/websites/class/website.class.php similarity index 100% rename from htdocs/websites/class/website.class.php rename to public/websites/class/website.class.php diff --git a/htdocs/websites/class/websitepage.class.php b/public/websites/class/websitepage.class.php similarity index 100% rename from htdocs/websites/class/websitepage.class.php rename to public/websites/class/websitepage.class.php diff --git a/htdocs/websites/frametop.php b/public/websites/frametop.php similarity index 100% rename from htdocs/websites/frametop.php rename to public/websites/frametop.php diff --git a/htdocs/websites/index.html b/public/websites/index.html similarity index 100% rename from htdocs/websites/index.html rename to public/websites/index.html diff --git a/htdocs/websites/index.php b/public/websites/index.php similarity index 100% rename from htdocs/websites/index.php rename to public/websites/index.php From 4d375bcf958bed8cffe9b4b56f9fa58f3f669472 Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Fri, 16 Dec 2016 11:31:14 +0100 Subject: [PATCH 0071/1163] debug translate --- htdocs/core/class/listview.class.php | 95 +++++++--------------- htdocs/core/js/listview.js | 56 ++++++------- htdocs/core/modules/modInventory.class.php | 11 +-- htdocs/inventory/inventory.php | 17 ++-- htdocs/langs/en_US/inventory.lang | 4 +- htdocs/langs/fr_FR/inventory.lang | 4 +- 6 files changed, 75 insertions(+), 112 deletions(-) diff --git a/htdocs/core/class/listview.class.php b/htdocs/core/class/listview.class.php index e94a648ec27..d276853a362 100644 --- a/htdocs/core/class/listview.class.php +++ b/htdocs/core/class/listview.class.php @@ -68,7 +68,6 @@ class Listview { $TParam['orderBy'] = $POSTList[$this->id]['orderBy']; } - // print_r($TParam); } private function getSearchNull($key, &$TParam) { return !empty($TParam['search'][$key]['allow_is_null']); @@ -80,7 +79,7 @@ class Listview { if (!is_array($TParam['search'][$key]['table'])) $TParam['search'][$key]['table'] = array($TParam['search'][$key]['table']); foreach ($TParam['search'][$key]['table'] as $prefix_table) { - $TPrefixe[] = '`'.$prefix_table.'`.'; + $TPrefixe[] = $prefix_table.'.'; } } @@ -90,27 +89,18 @@ class Listview { foreach ($TParam['search'][$key]['field'] as $i => $field) { $prefixe = !empty($TPrefixe[$i]) ? $TPrefixe[$i] : $TPrefixe[0]; - $TKey[] = $prefixe.'`'. $field .'`'; + $TKey[] = $prefixe. $field ; } } else { - $TKey[] =$TPrefixe[0].'`'. strtr($key,';','*').'`'; + $TKey[] =$TPrefixe[0].$key; } return $TKey; } - private function getSearchValue($value) { - $value = strtr(trim($value),';','*'); - - return $value; - } private function dateToSQLDate($date) { - list($dd,$mm,$aaaa) = explode('/', substr($date,0,10)); - - $value = date('Y-m-d', mktime(0,0,0,$mm,$dd,$aaaa)); - - return $value; + return $this->db->jdate($date); } private function addSqlFromTypeDate(&$TSQLMore, &$value, $sKey, $sBindKey) @@ -118,19 +108,10 @@ class Listview { if(is_array($value)) { - unset($this->TBind[$sBindKey]); - // Si le type de "recherche" est "calendars" on a 2 champs de transmis, [début et fin] ou [que début] ou [que fin] => un BETWEEN Sql serait utile que dans le 1er cas - // donc l'utilisation des opérateur >= et <= permettent un fonctionnement générique $TSQLDate=array(); if(!empty($value['start'])) { $valueDeb = $this->dateToSQLDate($value['start']); - - if(isset($this->TBind[$sBindKey.'_start'])) // TODO can't use this in query case - { - $this->TBind[$sBindKey.'_start'] = $valueDeb; - } - $TSQLDate[]=$sKey." >= '".$valueDeb." 00:00:00'" ; } @@ -138,10 +119,6 @@ class Listview { if(!empty($value['end'])) { $valueFin = $this->dateToSQLDate($value['end']); - if(isset($this->TBind[$sBindKey.'_end'])) { // TODO can't use this in query case - $this->TBind[$sBindKey.'_end'] = $valueFin; - } - $TSQLDate[]=$sKey." <= '".$valueFin." 23:59:59'" ; } @@ -150,25 +127,15 @@ class Listview { } else { - // Sinon je communique une date directement au format d/m/Y et la méthode du dessous reformat en Y-m-d $value = $this->dateToSQLDate($value); - if(isset($this->TBind[$sBindKey])) - { - $this->TBind[$sBindKey] = $value; - } - else - { - // Le % en fin de chaine permet de trouver un resultat si le contenu est au format Y-m-d H:i:s et non en Y-m-d - $TSQLMore[]=$sKey." LIKE '".$value."%'" ; - } + $TSQLMore[]=$sKey." LIKE '".$value."%'" ; + } } private function addSqlFromOther(&$TSQLMore, &$value, &$TParam, $sKey, $sBindKey, $key) { - $value = $this->getSearchValue($value); - if(isset($TParam['operator'][$key])) { if($TParam['operator'][$key] == '<' || $TParam['operator'][$key] == '>' || $TParam['operator'][$key]=='=') @@ -207,7 +174,6 @@ class Listview { foreach($_REQUEST['Listview'][$this->id]['search'] as $key=>$value) { $TsKey = $this->getSearchKey($key, $TParam); - $TsBindKey = $this->getTsBindKey($TsKey); //if (!empty($value)) var_dump($TsKey, $TsBindKey, '=================================='); $TSQLMore = array(); @@ -217,38 +183,32 @@ class Listview { foreach ($TsKey as $i => &$sKey) { - //if (!empty($value)) var_dump($sKey); - $sBindKey = $TsBindKey[$i]; - if($allow_is_null && !empty($_REQUEST['Listview'][$this->id]['search_on_null'][$key])) { - $this->TBind[$sBindKey.'_null'] = $sKey.' IS NULL '; $TSQLMore[] = $sKey.' IS NULL '; $search_on_null = true; - if(isset($this->TBind[$sBindKey])) $this->TBind[$sBindKey]= ''; $value = ''; } elseif($allow_is_null) { - $this->TBind[$sBindKey.'_null'] =0; // $sKey.' IS NOT NULL '; - //$TSQLMore[] = $sKey.' IS NOT NULL '; + null; } if($value!='') { // pas empty car biensûr le statut = 0 existe dans de nombreux cas if(isset($TParam['type'][$key]) && ($TParam['type'][$key]==='date' || $TParam['type'][$key]==='datetime')) { - $this->addSqlFromTypeDate($TSQLMore, $value, $sKey, $sBindKey); + $this->addSqlFromTypeDate($TSQLMore, $value, $sKey); } else { - $this->addSqlFromOther($TSQLMore, $value, $TParam, $sKey, $sBindKey, $key); + $this->addSqlFromOther($TSQLMore, $value, $TParam, $sKey, $key); } } } - if(!isset($this->TBind[$sBindKey]) && !empty($TSQLMore)) + if(!empty($TSQLMore)) { $sql.=' AND ( '.implode(' OR ',$TSQLMore).' ) '; } @@ -282,13 +242,11 @@ class Listview { } private function setSearch(&$THeader, &$TParam) { - global $langs; + global $langs, $form; if(empty($TParam['search'])) return array(); $TSearch=array(); - $form=new TFormCore; - $form->strict_string_compare = true; $nb_search_in_bar = 0; @@ -296,20 +254,22 @@ class Listview { foreach($THeader as $key=>$libelle) { // init if(empty($TSearch[$key]))$TSearch[$key]=''; } - } + } + + $ListPOST = GETPOST('Listview'); + foreach($TParam['search'] as $key=>$param_search) { - - $value = isset($_REQUEST['Listview'][$this->id]['search'][$key]) ? $_REQUEST['Listview'][$this->id]['search'][$key] : ''; + $value = isset($ListPOST[$this->id]['search'][$key]) ? $ListPOST[$this->id]['search'][$key] : ''; $typeRecherche = (is_array($param_search) && isset($param_search['recherche'])) ? $param_search['recherche'] : $param_search; if(is_array($typeRecherche)) { - $typeRecherche = array(''=>' ') + $typeRecherche; - $fsearch=$form->combo('','Listview['.$this->id.'][search]['.$key.']', $typeRecherche,$value,0,'',' listviewtbs="combo" init-value="'.$value.'" '); + $fsearch=$form->selectarray('Listview['.$this->id.'][search]['.$key.']', $typeRecherche,$value,1); } else if($typeRecherche==='calendar') { - $fsearch=$form->calendrier('','Listview['.$this->id.'][search]['.$key.']',$value,10,10,' listviewtbs="calendar" '); + $fsearch = $form->select_date($value, 'Listview['.$this->id.'][search]['.$key.']',0, 0, 1, "", 1, 0, 1); + //$fsearch=$form->calendrier('','Listview['.$this->id.'][search]['.$key.']',$value,10,10,' listviewtbs="calendar" '); } else if($typeRecherche==='calendars') { $fsearch=$form->calendrier('','Listview['.$this->id.'][search]['.$key.'][start]',isset($value['start'])?$value['start']:'',10,10,' listviewtbs="calendars" ') @@ -340,7 +300,7 @@ class Listview { } - $search_button = ' '.$TParam['liste']['picto_search'].''; + $search_button = ' '.$TParam['liste']['picto_search'].''; if(!empty($TParam['liste']['head_search'])) { $TParam['liste']['head_search'].='
    '.$langs->trans('Search').' '.$search_button.'
    '; @@ -406,8 +366,8 @@ class Listview { private function getJS(&$TParam) { $javaScript = ''; @@ -542,10 +502,13 @@ class Listview { $out.=''; - if(!empty($TParam['liste']['nbSearch'])) { - $out.=' - '.img_search().' - '; + if(count($TSearch)>0) { + $out.=''; + foreach($TSearch as $field=>$search) { + $out.=''.$search.''; + + } + $out.=''; } $out.=''; diff --git a/htdocs/core/js/listview.js b/htdocs/core/js/listview.js index 1157c2ef4b8..03ca7f72508 100644 --- a/htdocs/core/js/listview.js +++ b/htdocs/core/js/listview.js @@ -1,27 +1,27 @@ -var TListTBS_include = true; +var Listview_include = true; -function TListTBS_OrderDown(idListe, column) { +function Listview_OrderDown(idListe, column) { var base_url = document.location.href; - base_url = TListTBS_recup_form_param(idListe,base_url); - base_url = TListTBS_removeParam(base_url,'TListTBS['+encodeURIComponent(idListe)+'][orderBy]'); + base_url = Listview_recup_form_param(idListe,base_url); + base_url = Listview_removeParam(base_url,'Listview['+encodeURIComponent(idListe)+'][orderBy]'); - base_url = TListTBS_removeParam(base_url,'get-all-for-export'); + base_url = Listview_removeParam(base_url,'get-all-for-export'); - document.location.href=TListTBS_modifyUrl(base_url,"TListTBS["+encodeURIComponent(idListe)+"][orderBy]["+encodeURIComponent(column)+"]","DESC"); + document.location.href=Listview_modifyUrl(base_url,"Listview["+encodeURIComponent(idListe)+"][orderBy]["+encodeURIComponent(column)+"]","DESC"); } -function TListTBS_OrderUp(idListe, column) { +function Listview_OrderUp(idListe, column) { var base_url = document.location.href; - base_url = TListTBS_recup_form_param(idListe,base_url); - base_url = TListTBS_removeParam(base_url,'TListTBS['+encodeURIComponent(idListe)+'][orderBy]'); + base_url = Listview_recup_form_param(idListe,base_url); + base_url = Listview_removeParam(base_url,'Listview['+encodeURIComponent(idListe)+'][orderBy]'); - base_url = TListTBS_removeParam(base_url,'get-all-for-export'); + base_url = Listview_removeParam(base_url,'get-all-for-export'); - document.location.href=TListTBS_modifyUrl(base_url,"TListTBS["+encodeURIComponent(idListe)+"][orderBy]["+encodeURIComponent(column)+"]","ASC"); + document.location.href=Listview_modifyUrl(base_url,"Listview["+encodeURIComponent(idListe)+"][orderBy]["+encodeURIComponent(column)+"]","ASC"); } -function TListTBS_modifyUrl(strURL,paramName,paramNewValue){ +function Listview_modifyUrl(strURL,paramName,paramNewValue){ if (strURL.indexOf(paramName+'=')!=-1){ var strFirstPart=strURL.substring(0,strURL.indexOf(paramName+'=',0))+paramName+'='; @@ -39,7 +39,7 @@ function TListTBS_modifyUrl(strURL,paramName,paramNewValue){ return strURL; } -function TListTBS_removeParam(strURL, paramMask) { +function Listview_removeParam(strURL, paramMask) { var cpt=0; var url = ''; @@ -60,11 +60,11 @@ function TListTBS_removeParam(strURL, paramMask) { return url; } -function TListTBS_recup_form_param(idListe,base_url) { +function Listview_recup_form_param(idListe,base_url) { $('#'+idListe+' tr.barre-recherche [listviewtbs],#'+idListe+' tr.barre-recherche-head input,#'+idListe+' tr.barre-recherche-head select,#'+idListe+' div.tabsAction input[listviewtbs]').each(function(i,item) { if($(item).attr("name")) { - base_url = TListTBS_modifyUrl(base_url, $(item).attr("name") , $(item).val()); + base_url = Listview_modifyUrl(base_url, $(item).attr("name") , $(item).val()); } }); @@ -72,37 +72,37 @@ function TListTBS_recup_form_param(idListe,base_url) { return base_url; } -function TListTBS_GoToPage(idListe,pageNumber){ +function Listview_GoToPage(idListe,pageNumber){ var base_url = document.location.href; - base_url = TListTBS_recup_form_param(idListe,base_url); - base_url =TListTBS_modifyUrl(base_url,"TListTBS["+encodeURIComponent(idListe)+"][page]",pageNumber); + base_url = Listview_recup_form_param(idListe,base_url); + base_url =Listview_modifyUrl(base_url,"Listview["+encodeURIComponent(idListe)+"][page]",pageNumber); - base_url = TListTBS_removeParam(base_url,'get-all-for-export'); + base_url = Listview_removeParam(base_url,'get-all-for-export'); document.location.href=base_url; } -function TListTBS_submitSearch(obj) { +function Listview_submitSearch(obj) { $(obj).closest('form').submit(); - //console.log($(obj).closest('form')); + } -function TListTBS_launch_downloadAs(mode,url,token,session_name) { - $('#listTBSdAS_export_form').remove(); +function Listview_launch_downloadAs(mode,url,token,session_name) { + $('#listviewdAS_export_form').remove(); - $form = $('
    '); + $form = $('
    '); $form.append(''); $form.append(''); $form.append(''); $('body').append($form); - $('#listTBSdAS_export_form').submit(); + $('#listviewdAS_export_form').submit(); } -function TListTBS_downloadAs(obj, mode,url,token,session_name) { +function Listview_downloadAs(obj, mode,url,token,session_name) { $form = $(obj).closest('form'); $div = $form.find('div.tabsAction'); @@ -112,7 +112,7 @@ function TListTBS_downloadAs(obj, mode,url,token,session_name) { $div.append(''); $div.append(''); - TListTBS_submitSearch(obj); + Listview_submitSearch(obj); } $(document).ready(function() { @@ -137,7 +137,7 @@ $(document).ready(function() { }); if(typeof $_GET["get-all-for-export"] != "undefined") { - TListTBS_launch_downloadAs($_GET["mode"],$_GET["url"],$_GET["token"],$_GET["session_name"]); + Listview_launch_downloadAs($_GET["mode"],$_GET["url"],$_GET["token"],$_GET["session_name"]); } }); diff --git a/htdocs/core/modules/modInventory.class.php b/htdocs/core/modules/modInventory.class.php index 31170375752..abe65b65647 100644 --- a/htdocs/core/modules/modInventory.class.php +++ b/htdocs/core/modules/modInventory.class.php @@ -66,7 +66,7 @@ class modinventory extends DolibarrModules // Name of image file used for this module. // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' // If file is in module/img directory under name object_pictovalue.png, use this->picto='pictovalue@module' - $this->picto='inventory@inventory'; + $this->picto='inventory'; // Defined all module parts (triggers, login, substitutions, menus, css, etc...) // for default path (eg: /inventory/core/xxxxx) (0=disable, 1=enable) @@ -167,8 +167,6 @@ class modinventory extends DolibarrModules // Example: //$this->boxes=array(array(0=>array('file'=>'myboxa.php','note'=>'','enabledbydefaulton'=>'Home'),1=>array('file'=>'myboxb.php','note'=>''),2=>array('file'=>'myboxc.php','note'=>''));); - $langs->load('inventory@inventory'); - // Permissions $this->rights = array(); // Permission array used by this module $r=0; @@ -249,11 +247,11 @@ class modinventory extends DolibarrModules // $r++; $this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=products,fk_leftmenu=stock', // Put 0 if this is a top menu 'type'=>'left', // This is a Top menu entry - 'titre'=>'Liste des inventaires', + 'titre'=>'ListInventory', 'mainmenu'=>'inventory', 'leftmenu'=>'inventory', 'url'=>'/inventory/inventory.php?action=list', - 'langs'=>'inventory@inventory', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. + 'langs'=>'inventory', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. 'position'=>100, 'enabled'=>'$conf->inventory->enabled', // Define condition to show or hide menu entry. Use '$conf->inventory->enabled' if entry must be visible if module is enabled. 'perms'=>'$user->rights->inventory->read', // Use 'perms'=>'$user->rights->inventory->level1->level2' if you want your menu with a permission rules @@ -263,11 +261,10 @@ class modinventory extends DolibarrModules $this->menu[$r]=array( 'fk_menu'=>'fk_mainmenu=products,fk_leftmenu=stock', // Put 0 if this is a top menu 'type'=>'left', // This is a Top menu entry - 'titre'=>'Nouvel inventaire', + 'titre'=>'NewInventory', 'mainmenu'=>'inventory', 'leftmenu'=>'inventory', 'url'=>'/inventory/inventory.php?action=create', - 'langs'=>'inventory@inventory', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. 'position'=>100, 'enabled'=>'$conf->inventory->enabled', // Define condition to show or hide menu entry. Use '$conf->inventory->enabled' if entry must be visible if module is enabled. 'perms'=>'$user->rights->inventory->create', // Use 'perms'=>'$user->rights->inventory->level1->level2' if you want your menu with a permission rules diff --git a/htdocs/inventory/inventory.php b/htdocs/inventory/inventory.php index d0ca303c239..f0a0d073a27 100644 --- a/htdocs/inventory/inventory.php +++ b/htdocs/inventory/inventory.php @@ -266,8 +266,8 @@ function _action() header('Location: '.dol_buildpath('/inventory/inventory.php?action=list', 1)); exit; - //_list(); + break; case 'exportCSV': $id = GETPOST('id'); @@ -309,18 +309,14 @@ function _list() $THide = array('label'); echo $l->render(Inventory::getSQL('All'), array( - 'limit'=>array( - 'nbLine'=>'30' - ) - ,'subQuery'=>array() - ,'link'=>array( + 'link'=>array( 'fk_warehouse'=>''.img_picto('','object_stock.png','',0).' @label@' ) ,'translate'=>array() ,'hide'=>$THide ,'type'=>array( - 'date_cre'=>'date' - ,'date_maj'=>'datetime' + 'datec'=>'date' + ,'tms'=>'datetime' ,'date_inventory'=>'date' ) ,'liste'=>array( @@ -343,7 +339,10 @@ function _list() ,'eval'=>array( 'status' => '(@val@ ? img_picto("'.$langs->trans("inventoryValidate").'", "statut4") : img_picto("'.$langs->trans("inventoryDraft").'", "statut3"))' ,'rowid'=>'Inventory::getLink(@val@)' - + ) + ,'search'=>array( + 'date_inventory'=>'calendar' + ) )); diff --git a/htdocs/langs/en_US/inventory.lang b/htdocs/langs/en_US/inventory.lang index ba947f09d77..152aceed862 100644 --- a/htdocs/langs/en_US/inventory.lang +++ b/htdocs/langs/en_US/inventory.lang @@ -49,4 +49,6 @@ ConfirmFlushInventory=Do you confirm this action ? InventoryFlushed=Inventory flushed ExitEditMode=Exit edition inventoryDeleteLine=Delete line -RegulateStock=Regulate Stock \ No newline at end of file +RegulateStock=Regulate Stock +ListInventory=Inventories list +NewInventory=New inventory \ No newline at end of file diff --git a/htdocs/langs/fr_FR/inventory.lang b/htdocs/langs/fr_FR/inventory.lang index 85fdf3112dc..546a5202976 100644 --- a/htdocs/langs/fr_FR/inventory.lang +++ b/htdocs/langs/fr_FR/inventory.lang @@ -47,4 +47,6 @@ ConfirmFlushInventory=Do you confirm this action ? InventoryFlushed=Inventory flushed ExitEditMode=Exit edition inventoryDeleteLine=Delete line -RegulateStock=Regulate Stock \ No newline at end of file +RegulateStock=Regulate Stock +InventoryDate=Inventory date +DateUpdate=Last update \ No newline at end of file From 79867a85d05d6730eaa88951c7ab149745efa89e Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Fri, 16 Dec 2016 16:09:02 +0100 Subject: [PATCH 0072/1163] fix list issue --- htdocs/core/class/listview.class.php | 74 +++++++-------- htdocs/core/js/listview.js | 10 +- htdocs/core/modules/modInventory.class.php | 2 +- htdocs/inventory/class/inventory.class.php | 2 +- htdocs/inventory/inventory.php | 68 +------------- htdocs/inventory/list.php | 103 +++++++++++++++++++++ 6 files changed, 152 insertions(+), 107 deletions(-) create mode 100644 htdocs/inventory/list.php diff --git a/htdocs/core/class/listview.class.php b/htdocs/core/class/listview.class.php index d276853a362..6b57fd36a21 100644 --- a/htdocs/core/class/listview.class.php +++ b/htdocs/core/class/listview.class.php @@ -40,7 +40,7 @@ class Listview { if(!isset($TParam['link']))$TParam['link']=array(); if(!isset($TParam['type']))$TParam['type']=array(); if(!isset($TParam['orderby']['noOrder']))$TParam['orderby']['noOrder']=array(); - if(!isset($TParam['no-select'])) $TParam['no-select'] = 1; + if(!isset($TParam['allow-fields-select'])) $TParam['allow-fields-select'] = 0; if(!isset($TParam['list']))$TParam['list']=array(); $TParam['list'] = array_merge(array( @@ -53,7 +53,7 @@ class Listview { ,'orderUp'=>'' ,'id'=>$this->id ,'head_search'=>'' - ,'export'=>array() + ,'export'=>array() //TODO include native export ,'view_type'=>'' //TODO to include graph or kanban instead of list ),$TParam['list']); @@ -133,7 +133,7 @@ class Listview { } } - private function addSqlFromOther(&$TSQLMore, &$value, &$TParam, $sKey, $sBindKey, $key) + private function addSqlFromOther(&$TSQLMore, &$value, &$TParam, $sKey, $key) { if(isset($TParam['operator'][$key])) @@ -272,38 +272,40 @@ class Listview { //$fsearch=$form->calendrier('','Listview['.$this->id.'][search]['.$key.']',$value,10,10,' listviewtbs="calendar" '); } else if($typeRecherche==='calendars') { - $fsearch=$form->calendrier('','Listview['.$this->id.'][search]['.$key.'][start]',isset($value['start'])?$value['start']:'',10,10,' listviewtbs="calendars" ') - .' '.$form->calendrier('','Listview['.$this->id.'][search]['.$key.'][end]',isset($value['end'])?$value['end']:'',10,10,' listviewtbs="calendars" '); + + $fsearch = $form->select_date(isset($value['start'])?$value['start']:'', 'Listview['.$this->id.'][search]['.$key.'][start]',0, 0, 1, "", 1, 0, 1) + . $form->select_date(isset($value['end'])?$value['end']:'', 'Listview['.$this->id.'][search]['.$key.'][end]',0, 0, 1, "", 1, 0, 1); + } else if(is_string($typeRecherche)) { $fsearch=$TParam['search'][$key]; } else { - $fsearch=$form->texte('','Listview['.$this->id.'][search]['.$key.']',$value,15,255,' listviewtbs="input" '); + $fsearch=''; } if(!empty($param_search['allow_is_null'])) { - $valueNull = isset($_REQUEST['Listview'][$this->id]['search_on_null'][$key]) ? 1 : 0; + $valueNull = isset($ListPOST[$this->id]['search_on_null'][$key]) ? 1 : 0; $fsearch.=' '.$form->checkbox1('', 'Listview['.$this->id.'][search_on_null]['.$key.']',1, $valueNull,' onclick=" if($(this).is(\':checked\')){ $(this).prev().val(\'\'); }" ').img_help(1, $langs->trans('SearchOnNUllValue')); } - if(!empty($THeader[$key]) || $this->getViewType($TParam) == 'chart') { + if(!empty($THeader[$key])) { $TSearch[$key] = $fsearch; $nb_search_in_bar++; } else { - $libelle = !empty($TParam['title'][$key]) ? $TParam['title'][$key] : $key ; - $TParam['liste']['head_search'].='
    '.$libelle.' '.$fsearch.'
    '; + $label = !empty($TParam['title'][$key]) ? $TParam['title'][$key] : $key ; + $TParam['list']['head_search'].='
    '.$libelle.' '.$fsearch.'
    '; } } - $search_button = ' '.$TParam['liste']['picto_search'].''; + $search_button = ' '.img_search().''; - if(!empty($TParam['liste']['head_search'])) { - $TParam['liste']['head_search'].='
    '.$langs->trans('Search').' '.$search_button.'
    '; + if(!empty($TParam['list']['head_search'])) { + $TParam['list']['head_search']='
    '.$search_button.'
    '.$TParam['list']['head_search']; } if($nb_search_in_bar>0) { @@ -364,7 +366,7 @@ class Listview { return array($TTotal,$TTotalGroup); } - private function getJS(&$TParam) { + private function getJS() { $javaScript = ' -trans("Close"); ?> - +trans("Close"); ?> From fd008f88b100bcfc6918d3ec2e23969e783503b8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 9 Jan 2017 10:21:59 +0100 Subject: [PATCH 0117/1163] Add github tools --- dev/tools/github_authors_peryear.sh | 8 ++++++++ dev/tools/github_commits_perversion.sh | 15 +++++++++++++++ 2 files changed, 23 insertions(+) create mode 100755 dev/tools/github_authors_peryear.sh create mode 100755 dev/tools/github_commits_perversion.sh diff --git a/dev/tools/github_authors_peryear.sh b/dev/tools/github_authors_peryear.sh new file mode 100755 index 00000000000..99b28d4d417 --- /dev/null +++ b/dev/tools/github_authors_peryear.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +FROM=2016-01-01 +TO=2016-12-31 + +echo "git log --since $FROM --before $TO | grep ^Author | sort -u -f -i -b | wc -l" +git log --since $FROM --before $TO | grep ^Author | sort -u -f -i -b | wc -l + diff --git a/dev/tools/github_commits_perversion.sh b/dev/tools/github_commits_perversion.sh new file mode 100755 index 00000000000..40ddafee617 --- /dev/null +++ b/dev/tools/github_commits_perversion.sh @@ -0,0 +1,15 @@ +#/bin/bash +Releases=("3.8" "3.9" "4.0" "5.0", "develop") +Dates=("2010-01-01", "2011-01-01", "2012-01-01", "2013-01-01", "2014-01-01", "2015-01-01", "2016-07-01") +let "counter = 1" + +for i in "${Releases[@]}" +do + git shortlog -s -n --after=${Dates[counter-1]} --before=${Dates[counter]} + echo -n "Total $i: " + git log --pretty=oneline --after=${Dates[counter-1]} --before=${Dates[counter]} | wc -l + echo "=======================" + echo + let "counter +=1" +done + From 65b956b011b3f29e8d920fc90f8d043327fbbcdf Mon Sep 17 00:00:00 2001 From: Alexis Algoud Date: Mon, 9 Jan 2017 10:33:33 +0100 Subject: [PATCH 0118/1163] NEW sql for inventory --- .../install/mysql/migration/5.0.0-6.0.0.sql | 37 +++++++++++++++++++ .../mysql/tables/llx_inventory.key.sql | 21 +++++++++++ htdocs/install/mysql/tables/llx_inventory.sql | 31 ++++++++++++++++ .../mysql/tables/llx_inventorydet.key.sql | 22 +++++++++++ .../install/mysql/tables/llx_inventorydet.sql | 36 ++++++++++++++++++ 5 files changed, 147 insertions(+) create mode 100644 htdocs/install/mysql/tables/llx_inventory.key.sql create mode 100644 htdocs/install/mysql/tables/llx_inventory.sql create mode 100644 htdocs/install/mysql/tables/llx_inventorydet.key.sql create mode 100644 htdocs/install/mysql/tables/llx_inventorydet.sql diff --git a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql index e770a99de66..40707aaddfe 100644 --- a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql +++ b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql @@ -46,3 +46,40 @@ insert into llx_c_action_trigger (code,label,description,elementtype,rang) value ALTER TABLE llx_loan ADD COLUMN fk_projet integer DEFAULT NULL; +-- NEW inventory module +CREATE TABLE llx_inventory +( +rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY, +datec DATETIME DEFAULT NULL, +tms timestamp, +fk_warehouse integer DEFAULT 0, +entity integer DEFAULT 0, +status integer DEFAULT 0, +title varchar(255) NOT NULL, +date_inventory datetime DATETIME DEFAULT NULL +) +ENGINE=InnoDB; + +CREATE TABLE llx_inventorydet +( +rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY, +datec DATETIME DEFAULT NULL, +tms timestamp, +fk_inventory integer DEFAULT 0, +fk_warehouse integer DEFAULT 0, +fk_product integer DEFAULT 0, +entity integer DEFAULT 0, +qty_view double DEFAULT 0, +qty_stock double DEFAULT 0, +qty_regulated double DEFAULT 0, +pmp double DEFAULT 0, +pa double DEFAULT 0, +new_pmp double DEFAULT 0, +) +ENGINE=InnoDB; + +ALTER TABLE llx_inventory ADD INDEX idx_inventory_tms (tms); +ALTER TABLE llx_inventory ADD INDEX idx_inventory_datec (date_cre); +ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_tms (tms); +ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_datec (date_cre); +ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_fk_inventory (fk_inventory); diff --git a/htdocs/install/mysql/tables/llx_inventory.key.sql b/htdocs/install/mysql/tables/llx_inventory.key.sql new file mode 100644 index 00000000000..6596e88d817 --- /dev/null +++ b/htdocs/install/mysql/tables/llx_inventory.key.sql @@ -0,0 +1,21 @@ +-- =================================================================== +-- Copyright (C) 2012 Laurent Destailleur +-- Copyright (C) 2017 ATM Consulting +-- +-- This program 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 3 of the License, or +-- (at your option) any later version. +-- +-- This program 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 this program. If not, see . +-- +-- =================================================================== + +ALTER TABLE llx_inventory ADD INDEX idx_inventory_tms (tms); +ALTER TABLE llx_inventory ADD INDEX idx_inventory_datec (date_cre); diff --git a/htdocs/install/mysql/tables/llx_inventory.sql b/htdocs/install/mysql/tables/llx_inventory.sql new file mode 100644 index 00000000000..dc4b66f1be2 --- /dev/null +++ b/htdocs/install/mysql/tables/llx_inventory.sql @@ -0,0 +1,31 @@ +-- =================================================================== +-- Copyright (C) 2012 Laurent Destailleur +-- Copyright (C) 2017 ATM Consulting +-- +-- This program 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 3 of the License, or +-- (at your option) any later version. +-- +-- This program 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 this program. If not, see . +-- +-- =================================================================== + +CREATE TABLE llx_inventory +( +rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY, +datec DATETIME DEFAULT NULL, +tms timestamp, +fk_warehouse integer DEFAULT 0, +entity integer DEFAULT 0, +status integer DEFAULT 0, +title varchar(255) NOT NULL, +date_inventory datetime DATETIME DEFAULT NULL +) +ENGINE=InnoDB; diff --git a/htdocs/install/mysql/tables/llx_inventorydet.key.sql b/htdocs/install/mysql/tables/llx_inventorydet.key.sql new file mode 100644 index 00000000000..31c5884f60b --- /dev/null +++ b/htdocs/install/mysql/tables/llx_inventorydet.key.sql @@ -0,0 +1,22 @@ +-- =================================================================== +-- Copyright (C) 2012 Laurent Destailleur +-- Copyright (C) 2017 ATM Consulting +-- +-- This program 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 3 of the License, or +-- (at your option) any later version. +-- +-- This program 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 this program. If not, see . +-- +-- =================================================================== + +ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_tms (tms); +ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_datec (date_cre); +ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_fk_inventory (fk_inventory); diff --git a/htdocs/install/mysql/tables/llx_inventorydet.sql b/htdocs/install/mysql/tables/llx_inventorydet.sql new file mode 100644 index 00000000000..c67ccd32a3f --- /dev/null +++ b/htdocs/install/mysql/tables/llx_inventorydet.sql @@ -0,0 +1,36 @@ +-- =================================================================== +-- Copyright (C) 2012 Laurent Destailleur +-- Copyright (C) 2017 ATM Consulting +-- +-- This program 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 3 of the License, or +-- (at your option) any later version. +-- +-- This program 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 this program. If not, see . +-- +-- =================================================================== + +CREATE TABLE llx_inventorydet +( +rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY, +datec DATETIME DEFAULT NULL, +tms timestamp, +fk_inventory integer DEFAULT 0, +fk_warehouse integer DEFAULT 0, +fk_product integer DEFAULT 0, +entity integer DEFAULT 0, +qty_view double DEFAULT 0, +qty_stock double DEFAULT 0, +qty_regulated double DEFAULT 0, +pmp double DEFAULT 0, +pa double DEFAULT 0, +new_pmp double DEFAULT 0, +) +ENGINE=InnoDB; From 635abe58bea114ba37279d5bf1c4693e0c20797f Mon Sep 17 00:00:00 2001 From: IJ Date: Mon, 9 Jan 2017 10:14:11 +0000 Subject: [PATCH 0119/1163] User-friendly tooltip --- htdocs/core/tpl/login.tpl.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/tpl/login.tpl.php b/htdocs/core/tpl/login.tpl.php index ae1118b4ce7..9204d691dbd 100644 --- a/htdocs/core/tpl/login.tpl.php +++ b/htdocs/core/tpl/login.tpl.php @@ -89,7 +89,7 @@ $(document).ready(function () {
    - +
    "; - print ''; // Date End print ""; - print ''; // Number of terms - print ''; + print ''; // Rate - print ''; + print ''; // Note Private print ''; @@ -272,19 +280,19 @@ if ($action == 'create') if (! empty($conf->accounting->enabled)) { // Accountancy_account_capital - print ''; + print ''; print ''; // Accountancy_account_insurance - print ''; + print ''; print ''; // Accountancy_account_interest - print ''; + print ''; print ''; @@ -292,17 +300,17 @@ if ($action == 'create') else // For external software { // Accountancy_account_capital - print ''; + print ''; print ''; // Accountancy_account_insurance - print ''; + print ''; print ''; // Accountancy_account_interest - print ''; + print ''; print ''; } @@ -372,29 +380,10 @@ if ($id > 0) print '
    From 5c233a41b330e754d554297e5b2a5f06af7f55ad Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 9 Jan 2017 23:54:31 +0100 Subject: [PATCH 0120/1163] NEW Add hook "formatNotificationMessage" --- htdocs/core/class/hookmanager.class.php | 5 +++-- htdocs/core/class/notify.class.php | 30 ++++++++++++++++++++++--- 2 files changed, 30 insertions(+), 5 deletions(-) diff --git a/htdocs/core/class/hookmanager.class.php b/htdocs/core/class/hookmanager.class.php index 739e635f85c..f705848743d 100644 --- a/htdocs/core/class/hookmanager.class.php +++ b/htdocs/core/class/hookmanager.class.php @@ -116,8 +116,8 @@ class HookManager * @param array $parameters Array of parameters * @param Object $object Object to use hooks on * @param string $action Action code on calling page ('create', 'edit', 'view', 'add', 'update', 'delete'...) - * @return mixed For 'addreplace hooks (doActions,formObjectOptions,pdf_xxx,...): Return 0 if we want to keep standard actions, >0 if we want to stop standard actions, <0 if KO. Things to print are returned into ->resprints and set into ->resPrint. Things to return are returned into ->results and set into ->resArray. - * For 'output' hooks (printLeftBlock, formAddObjectLine, formBuilddocOptions, ...): Return 0, <0 if KO. Things to print are returned into ->resprints and set into ->resPrint. Things to return are returned into ->results and set into ->resArray. + * @return mixed For 'addreplace' hooks (doActions,formObjectOptions,pdf_xxx,...): Return 0 if we want to keep standard actions, >0 if we want to stop standard actions, <0 if KO. Things to print are returned into ->resprints and set into ->resPrint. Things to return are returned into ->results by hook and set into ->resArray for caller. + * For 'output' hooks (printLeftBlock, formAddObjectLine, formBuilddocOptions, ...): Return 0, <0 if KO. Things to print are returned into ->resprints and set into ->resPrint. Things to return are returned into ->results bu hook and set into ->resArray for caller. * All types can also return some values into an array ->results. * $this->error or this->errors are also defined by class called by this function if error. */ @@ -142,6 +142,7 @@ class HookManager 'formObjectOptions', 'formattachOptions', 'formBuilddocLineOptions', + 'formatNotificationMessage', 'getFormMail', 'getIdProfUrl', 'moveUploadedFile', diff --git a/htdocs/core/class/notify.class.php b/htdocs/core/class/notify.class.php index b4d713b7b7a..17e3b00b602 100644 --- a/htdocs/core/class/notify.class.php +++ b/htdocs/core/class/notify.class.php @@ -278,12 +278,20 @@ class Notify */ function send($notifcode, $object) { - global $user,$conf,$langs,$mysoc,$dolibarr_main_url_root; + global $user,$conf,$langs,$mysoc; + global $hookmanager; + global $dolibarr_main_url_root; if (! in_array($notifcode, $this->arrayofnotifsupported)) return 0; include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; - + if (! is_object($hookmanager)) + { + include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php'; + $hookmanager=new HookManager($this->db); + } + $hookmanager->initHooks(array('notification')); + dol_syslog(get_class($this)."::send notifcode=".$notifcode.", object=".$object->id); $langs->load("other"); @@ -443,6 +451,14 @@ class Notify $message.= $mesg; if ($link) $message=dol_concatdesc($message,$urlwithroot.$link); + $parameters=array('notifcode'=>$notifcode, 'sendto'=>$sendto, 'replyto'=>$replyto, 'file'=>$file, 'mimefile'=>$mimefile, 'filename'=>$filename); + $reshook=$hookmanager->executeHooks('formatNotificationMessage',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks + if (empty($reshook)) + { + if (! empty($hookmanager->resArray['subject'])) $subject.=$hookmanager->resArray['subject']; + if (! empty($hookmanager->resArray['message'])) $message.=$hookmanager->resArray['message']; + } + $mailfile = new CMailFile( $subject, $sendto, @@ -637,7 +653,15 @@ class Notify if ($sendto) { - $mailfile = new CMailFile( + $parameters=array('notifcode'=>$notifcode, 'sendto'=>$sendto, 'replyto'=>$replyto, 'file'=>$file, 'mimefile'=>$mimefile, 'filename'=>$filename); + $reshook=$hookmanager->executeHooks('formatNotificationMessage',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks + if (empty($reshook)) + { + if (! empty($hookmanager->resArray['subject'])) $subject.=$hookmanager->resArray['subject']; + if (! empty($hookmanager->resArray['message'])) $message.=$hookmanager->resArray['message']; + } + + $mailfile = new CMailFile( $subject, $sendto, $replyto, From 0f89fa2b11b4aade5d6fe418531c89e98338b235 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Doursenaud?= Date: Tue, 10 Jan 2017 11:44:21 +0100 Subject: [PATCH 0121/1163] [Qual] Add PHP 7.1 to Travis test matrix --- .travis.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 718356e8075..1a6cae1e792 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,6 +12,7 @@ php: - '5.5' - '5.6' - '7.0' +- '7.1' - nightly addons: @@ -96,7 +97,7 @@ install: if [ "$TRAVIS_PHP_VERSION" = '5.3' ] || [ "$TRAVIS_PHP_VERSION" = '5.4' ] || [ "$TRAVIS_PHP_VERSION" = '5.5' ]; then composer -n require phpunit/phpunit ^4 fi - if [ "$TRAVIS_PHP_VERSION" = '5.6' ] || [ "$TRAVIS_PHP_VERSION" = '7.0' ] || [ "$TRAVIS_PHP_VERSION" = 'nightly' ]; then + if [ "$TRAVIS_PHP_VERSION" = '5.6' ] || [ "$TRAVIS_PHP_VERSION" = '7.0' ] || [ "$TRAVIS_PHP_VERSION" = '7.1' ] || [ "$TRAVIS_PHP_VERSION" = 'nightly' ]; then composer -n require phpunit/phpunit ^5 fi echo @@ -136,7 +137,7 @@ before_script: echo 'extension = apc.so' >> ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php.ini echo echo "Enabling Memcached for PHP <= 5.4" - # Documentation says it should be available for all PHP versions but it's not for 5.5 and 5.6, 7.0 and nightly! + # Documentation says it should be available for all PHP versions but it's not for 5.5 and 5.6, 7.0, 7.1 and nightly! echo 'extension = memcached.so' >> ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php.ini fi phpenv rehash @@ -208,7 +209,7 @@ before_script: echo "Setting up Apache + FPM" # enable php-fpm cp ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php-fpm.conf.default ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php-fpm.conf - if [ "$TRAVIS_PHP_VERSION" = '7.0' ] || [ "$TRAVIS_PHP_VERSION" = 'nightly' ]; then + if [ "$TRAVIS_PHP_VERSION" = '7.0' ] || [ "$TRAVIS_PHP_VERSION" = '7.1' ] || [ "$TRAVIS_PHP_VERSION" = 'nightly' ]; then # Copy the included pool cp ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php-fpm.d/www.conf.default ~/.phpenv/versions/$PHP_VERSION_NAME/etc/php-fpm.d/www.conf fi From dcae6e644d7b42b2ebfabc5cf30093998e5548bf Mon Sep 17 00:00:00 2001 From: aspangaro Date: Wed, 11 Jan 2017 05:12:48 +0100 Subject: [PATCH 0122/1163] New : Loan - Add control and edit mode more complete --- htdocs/loan/card.php | 172 +++++++++++++++++++++++++++---------------- 1 file changed, 110 insertions(+), 62 deletions(-) diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php index 6dd6b17ccff..eae1120e80c 100644 --- a/htdocs/loan/card.php +++ b/htdocs/loan/card.php @@ -90,17 +90,7 @@ if ($action == 'add' && $user->rights->loan->write) $dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); $capital = price2num(GETPOST('capital')); - if (! $datestart) - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("DateStart")), null, 'errors'); - $action = 'create'; - } - elseif (! $dateend) - { - setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("DateEnd")), null, 'errors'); - $action = 'create'; - } - elseif (! $capital) + if (! $capital) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("LoanCapital")), null, 'errors'); $action = 'create'; @@ -145,14 +135,32 @@ else if ($action == 'update' && $user->rights->loan->write) if (! $cancel) { $result = $object->fetch($id); + $object->fetch($id); - if ($object->fetch($id)) + $datestart = dol_mktime(12, 0, 0, GETPOST('startmonth','int'), GETPOST('startday','int'), GETPOST('startyear','int')); + $dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); + $capital = price2num(GETPOST('capital')); + + if (! $capital) { - $object->datestart = dol_mktime(12, 0, 0, GETPOST('startmonth','int'), GETPOST('startday','int'), GETPOST('startyear','int')); - $object->dateend = dol_mktime(12, 0, 0, GETPOST('endmonth','int'), GETPOST('endday','int'), GETPOST('endyear','int')); - $object->capital = price2num(GETPOST("capital")); + setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("LoanCapital")), null, 'errors'); + $action = 'edit'; + } + else + { + $object->datestart = $datestart; + $object->dateend = $dateend; + $object->capital = $capital; $object->nbterm = GETPOST("nbterm"); $object->rate = GETPOST("rate"); + + $accountancy_account_capital = GETPOST('accountancy_account_capital'); + $accountancy_account_insurance = GETPOST('accountancy_account_insurance'); + $accountancy_account_interest = GETPOST('accountancy_account_interest'); + + if ($accountancy_account_capital <= 0) { $object->account_capital = ''; } else { $object->account_capital = $accountancy_account_capital; } + if ($accountancy_account_insurance <= 0) { $object->account_insurance = ''; } else { $object->account_insurance = $accountancy_account_insurance; } + if ($accountancy_account_interest <= 0) { $object->account_interest = ''; } else { $object->account_interest = $accountancy_account_interest; } } $result = $object->update($user); @@ -234,21 +242,21 @@ if ($action == 'create') // Date Start print "
    '.$langs->trans("DateStart").''; + print ''.$langs->trans("DateStart").''; print $form->select_date($datestart?$datestart:-1,'start','','','','add',1,1,1); print '
    '.$langs->trans("DateEnd").''; + print ''.$langs->trans("DateEnd").''; print $form->select_date($dateend?$dateend:-1,'end','','','','add',1,1,1); print '
    '.$langs->trans("Nbterms").'
    '.$langs->trans("Nbterms").'
    '.$langs->trans("Rate").' %
    '.$langs->trans("Rate").' %
    '.$langs->trans("LoanAccountancyCapitalCode").'
    '.$langs->trans("LoanAccountancyCapitalCode").''; print $formaccountancy->select_account($object->accountancy_account_capital, 'accountancy_account_capital', 1, '', 0, 1); print '
    '.$langs->trans("LoanAccountancyInsuranceCode").'
    '.$langs->trans("LoanAccountancyInsuranceCode").''; print $formaccountancy->select_account($object->accountancy_account_insurance, 'accountancy_account_insurance', 1, '', 0, 1); print '
    '.$langs->trans("LoanAccountancyInterestCode").'
    '.$langs->trans("LoanAccountancyInterestCode").''; print $formaccountancy->select_account($object->accountancy_account_interest, 'accountancy_account_interest', 1, '', 0, 1); print '
    '.$langs->trans("LoanAccountancyCapitalCode").'
    '.$langs->trans("LoanAccountancyCapitalCode").''; print '
    '.$langs->trans("LoanAccountancyInsuranceCode").'
    '.$langs->trans("LoanAccountancyInsuranceCode").''; print '
    '.$langs->trans("LoanAccountancyInterestCode").'
    '.$langs->trans("LoanAccountancyInterestCode").''; print '
    '; - /* - // Ref - print '"; - - // Label - if ($action == 'edit') - { - print ''; - } - else - { - print ''; - } - */ - // Capital if ($action == 'edit') { - print ''; print ''; } @@ -430,19 +419,53 @@ if ($id > 0) print ""; // Nbterms - print ''; + print ''; + print ''; // Rate - print ''; + print ''; + print ''; // Accountancy account capital print ''; @@ -450,10 +473,24 @@ if ($id > 0) print ''; @@ -461,16 +498,27 @@ if ($id > 0) print ''; - // Status - // print ''; - print '
    '.$langs->trans("Ref").''; - print $form->showrefnav($object,'id'); - print "
    '.$langs->trans("Label").''; - print ''; - print '
    '.$langs->trans("Label").''.$object->label.'
    '.$langs->trans("LoanCapital").''; + print '
    '.$langs->trans("LoanCapital").''; print '
    '.$langs->trans("Nbterms").''.$object->nbterm.'
    '.$langs->trans("Nbterms").''; + if ($action == 'edit') + { + print ''; + } + else + { + print $object->nbterm; + } + print '
    '.$langs->trans("Rate").''.$object->rate.' %
    '.$langs->trans("Rate").''; + if ($action == 'edit') + { + print '%'; + } + else + { + print $object->rate . '%'; + } + print '
    '; print $langs->trans("LoanAccountancyCapitalCode"); print ''; - if (! empty($conf->accounting->enabled)) { - print length_accountg($object->account_capital); - } else { - print $object->account_capital; + if ($action == 'edit') + { + if (! empty($conf->accounting->enabled)) + { + print $formaccountancy->select_account($object->account_capital, 'accountancy_account_capital', 1, '', 0, 1); + } + else + { + print ''; + } + } + else + { + if (! empty($conf->accounting->enabled)) { + print length_accountg($object->account_capital); + } else { + print $object->account_capital; + } } print '
    '; print $langs->trans("LoanAccountancyInsuranceCode"); print ''; - if (! empty($conf->accounting->enabled)) { - print length_accountg($object->account_insurance); - } else { - print $object->account_insurance; + if ($action == 'edit') + { + if (! empty($conf->accounting->enabled)) + { + print $formaccountancy->select_account($object->account_insurance, 'accountancy_account_insurance', 1, '', 0, 1); + } + else + { + print ''; + } + } + else + { + if (! empty($conf->accounting->enabled)) { + print length_accountg($object->account_insurance); + } else { + print $object->account_insurance; + } } print '
    '; print $langs->trans("LoanAccountancyInterestCode"); print ''; - if (! empty($conf->accounting->enabled)) { - print length_accountg($object->account_interest); - } else { - print $object->account_interest; + if ($action == 'edit') + { + if (! empty($conf->accounting->enabled)) + { + print $formaccountancy->select_account($object->account_interest, 'accountancy_account_interest', 1, '', 0, 1); + } + else + { + print ''; + } + } + else + { + if (! empty($conf->accounting->enabled)) { + print length_accountg($object->account_interest); + } else { + print $object->account_interest; + } } print '
    '.$langs->trans("Status").''.$object->getLibStatut(4, $totalpaye).'
    '; print '
    '; From 972a31ebe9f9728336597c13f14472ebf04a52ab Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Thu, 12 Jan 2017 16:03:07 +0100 Subject: [PATCH 0123/1163] Update images.lib.php in fact $dir is not used in the function --- htdocs/core/lib/images.lib.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/core/lib/images.lib.php b/htdocs/core/lib/images.lib.php index 2fe99bf779a..e3121745300 100644 --- a/htdocs/core/lib/images.lib.php +++ b/htdocs/core/lib/images.lib.php @@ -81,7 +81,6 @@ function dol_getImageSize($file, $url = false) // if problem with realpath if ($fichier == false) return $ret; - $dir = dirname($file); // Chemin du dossier contenant l'image } $infoImg = getimagesize($fichier); // Recuperation des infos de l'image From 751aa2a2aa2264485c21e256409a4641d5aa9e6b Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Thu, 12 Jan 2017 12:11:45 -0300 Subject: [PATCH 0124/1163] Improve code style --- htdocs/product/class/product.class.php | 276 +++++++++++++++++-------- 1 file changed, 186 insertions(+), 90 deletions(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 0fd2be8ba7f..71f10b7ffa1 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -13,6 +13,7 @@ * Copyright (C) 2014-2016 Philippe Grand * Copyright (C) 2014 Ion agorria * Copyright (C) 2016 Ferran Marcet + * Copyright (C) 2017 Gustavo Novaro * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -54,36 +55,61 @@ class Product extends CommonObject */ protected $table_ref_field = 'ref'; - var $regeximgext='\.gif|\.jpg|\.jpeg|\.png|\.bmp|\.xpm|\.xbm'; // See also into images.lib.php + public $regeximgext='\.gif|\.jpg|\.jpeg|\.png|\.bmp|\.xpm|\.xbm'; // See also into images.lib.php /* * @deprecated * @see label */ - var $libelle; + public $libelle; /** * Product label * @var string */ - var $label; - /** - * Product descripion - * @var string - */ - var $description; + public $label; + + /** + * Product descripion + * @var string + */ + public $description; /** * Check TYPE constants * @var int */ - var $type = self::TYPE_PRODUCT; - //! Selling price - var $price; // Price net - var $price_ttc; // Price with tax - var $price_min; // Minimum price net - var $price_min_ttc; // Minimum price with tax - //! Base price ('TTC' for price including tax or 'HT' for net price) - var $price_base_type; + public $type = self::TYPE_PRODUCT; + + /** + * Selling price + * @var float + */ + public $price; // Price net + + /** + * Price with tax + * @var float + */ + public $price_ttc; + + /** + * Minimum price net + * @var float + */ + public $price_min; + + /** + * Minimum price with tax + * @var float + */ + public $price_min_ttc; + + /* + * Base price ('TTC' for price including tax or 'HT' for net price) + * @var float + */ + public $price_base_type; + //! Arrays for multiprices public $multiprices=array(); public $multiprices_ttc=array(); @@ -92,49 +118,99 @@ class Product extends CommonObject public $multiprices_min_ttc=array(); public $multiprices_tva_tx=array(); public $multiprices_recuperableonly=array(); - //! Price by quantity arrays - var $price_by_qty; - var $prices_by_qty=array(); - var $prices_by_qty_id=array(); - var $prices_by_qty_list=array(); - //! Default VAT code for product (link to code into llx_c_tva but without foreign keys) - var $default_vat_code; - //! Default VAT rate of product - var $tva_tx; - //! French VAT NPR (0 or 1) - var $tva_npr=0; - //! Other local taxes - var $localtax1_tx; - var $localtax2_tx; - var $localtax1_type; - var $localtax2_type; - //! Stock real - var $stock_reel; - //! Stock virtual - var $stock_theorique; - //! Cost price - var $cost_price; + //! Price by quantity arrays + public $price_by_qty; + public $prices_by_qty=array(); + public $prices_by_qty_id=array(); + public $prices_by_qty_list=array(); + + //! Default VAT code for product (link to code into llx_c_tva but without foreign keys) + public $default_vat_code; + + //! Default VAT rate of product + public $tva_tx; + + //! French VAT NPR (0 or 1) + public $tva_npr=0; + + //! Other local taxes + public $localtax1_tx; + public $localtax2_tx; + public $localtax1_type; + public $localtax2_type; + + /** + * Stock real + * @var int + */ + public $stock_reel = 0; + + /** + * Stock virtual + * @var int + */ + public $stock_theorique; + + /** + * Cost price + * @var float + */ + public $cost_price; + //! Average price value for product entry into stock (PMP) - var $pmp; - //! Stock alert - var $seuil_stock_alerte; - //! Ask for replenishment when $desiredstock < $stock_reel + public $pmp; + + /** + * Stock alert + * @var int + */ + public $seuil_stock_alerte; + + /** + * Ask for replenishment when $desiredstock < $stock_reel + */ public $desiredstock; - //! Duree de validite du service - var $duration_value; - //! Unite de duree - var $duration_unit; - // Statut indique si le produit est en vente '1' ou non '0' - var $status; - // Status indicate whether the product is available for purchase '1' or not '0' - var $status_buy; - // Statut indique si le produit est un produit fini '1' ou une matiere premiere '0' - var $finished; - // We must manage lot/batch number, sell-by date and so on : '1':yes '0':no - var $status_batch; + + /* + * Service expiration + */ + public $duration_value; + + /** + * Exoiration unit + */ + public $duration_unit; + + /** + * Status indicates whether the product is on sale '1' or not '0' + * @var int + */ + public $status; + + /** + * Status indicate whether the product is available for purchase '1' or not '0' + * @var int + */ + public $status_buy; + + /** + * Status indicates whether the product is a finished product '1' or a raw material '0' + * @var int + */ + public $finished; + + /** + * We must manage lot/batch number, sell-by date and so on : '1':yes '0':no + * @var int + */ + public $status_batch; - var $customcode; // Customs code + /** + * Customs code + * @var + */ + public $customcode; /** * Product URL @@ -143,56 +219,66 @@ class Product extends CommonObject public $url; //! Unites de mesure - var $weight; - var $weight_units; - var $length; - var $length_units; - var $surface; - var $surface_units; - var $volume; - var $volume_units; + public $weight; + public $weight_units; + public $length; + public $length_units; + public $surface; + public $surface_units; + public $volume; + public $volume_units; - var $accountancy_code_buy; - var $accountancy_code_sell; + public $accountancy_code_buy; + public $accountancy_code_sell; - //! barcode - var $barcode; // value + /** + * Main barcode + * barcode value + * @var + */ + public $barcode; + + /** + * Additional barcodes (Some products have different barcodes according to the country of origin of manufacture) + * @var array + */ + public $barcodes_extra=array(); - var $stats_propale=array(); - var $stats_commande=array(); - var $stats_contrat=array(); - var $stats_facture=array(); - var $stats_commande_fournisseur=array(); + public $stats_propale=array(); + public $stats_commande=array(); + public $stats_contrat=array(); + public $stats_facture=array(); + public $stats_commande_fournisseur=array(); - var $multilangs=array(); + public $multilangs=array(); //! Taille de l'image - var $imgWidth; - var $imgHeight; + public $imgWidth; + public $imgHeight; - var $date_creation; - var $date_modification; + public $date_creation; + public $date_modification; //! Id du fournisseur - var $product_fourn_id; + public $product_fourn_id; //! Product ID already linked to a reference supplier - var $product_id_already_linked; + public $product_id_already_linked; - var $nbphoto; + public $nbphoto; //! Contains detail of stock of product into each warehouse - var $stock_warehouse=array(); + public $stock_warehouse=array(); - var $oldcopy; + public $oldcopy; - var $fk_price_expression; + public $fk_price_expression; /** * @deprecated * @see fourn_pu */ - var $buyprice; + public $buyprice; public $fourn_pu; public $fourn_price_base_type; @@ -201,7 +287,7 @@ class Product extends CommonObject * @deprecated * @see ref_supplier */ - var $ref_fourn; + public $ref_fourn; public $ref_supplier; /** @@ -290,7 +376,7 @@ class Product extends CommonObject { global $conf, $langs; - $error=0; + $error=0; // Clean parameters $this->ref = dol_string_nospecial(trim($this->ref)); @@ -320,39 +406,48 @@ class Product extends CommonObject $price_ttc=0; $price_min_ht=0; $price_min_ttc=0; + + // if ($this->price_base_type == 'TTC' && $this->price_ttc > 0) { $price_ttc = price2num($this->price_ttc,'MU'); $price_ht = price2num($this->price_ttc / (1 + ($this->tva_tx / 100)),'MU'); } + + // if ($this->price_base_type != 'TTC' && $this->price > 0) { $price_ht = price2num($this->price,'MU'); $price_ttc = price2num($this->price * (1 + ($this->tva_tx / 100)),'MU'); } + + // if (($this->price_min_ttc > 0) && ($this->price_base_type == 'TTC')) { $price_min_ttc = price2num($this->price_min_ttc,'MU'); $price_min_ht = price2num($this->price_min_ttc / (1 + ($this->tva_tx / 100)),'MU'); } + + // if (($this->price_min > 0) && ($this->price_base_type != 'TTC')) { $price_min_ht = price2num($this->price_min,'MU'); $price_min_ttc = price2num($this->price_min * (1 + ($this->tva_tx / 100)),'MU'); } - $this->accountancy_code_buy = trim($this->accountancy_code_buy); + $this->accountancy_code_buy = trim($this->accountancy_code_buy); $this->accountancy_code_sell= trim($this->accountancy_code_sell); - // Barcode value - $this->barcode=trim($this->barcode); + // Barcode value + $this->barcode=trim($this->barcode); - // Check parameters + // Check parameters if (empty($this->label)) { $this->error='ErrorMandatoryParametersNotProvided'; return -1; } + if (empty($this->ref)) { // Load object modCodeProduct @@ -371,6 +466,7 @@ class Product extends CommonObject } unset($modCodeProduct); } + if (empty($this->ref)) { $this->error='ProductModuleNotSetupForAutoRef'; From c3e5e0dd3f030990692eab28023a4636a946491a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 12 Jan 2017 21:50:35 +0100 Subject: [PATCH 0125/1163] Update doc --- build/debian/README.howto | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/build/debian/README.howto b/build/debian/README.howto index 1b64380cc26..afc2d391e1e 100644 --- a/build/debian/README.howto +++ b/build/debian/README.howto @@ -320,8 +320,8 @@ x.y.z+dfsgw Note: If there was errors solved manually after get-orig-sources.sh, you may need to make a git commit * Update/fix debian/* files used to build package. -At least, add an entry into debian/changelog -> dch -v x.y.z+dfsgw-v "My comment" will add entry. +At least, add an entry into debian/changelog with command +> dch -v x.y.z+dfsgw-1 "My comment" For example: dch -v x.y.z+dfsgw-1 "New upstream release." for a new version (x.y.z = version, w start from 1 and increased for each new import) Then check/modify changelog to replace "version" or "unstable" with "UNRELEASED". Then check/modify also the user/date signature: @@ -332,7 +332,9 @@ Then check/modify also the user/date signature: To update dolibarr debian package when only files into debian has changed: * Change files and commit. -* Add a tag debian/x.y.z+dfsgw-2 (increase the last 1 into 2, 3...) +* Add a line into changelog for version debian/x.y.z+dfsgw-v (increase the last v into 2, 3...) +> dch -v x.y.z+dfsgw-v "My comment" +* git tag will be added when package is pushed. To update dolibarr debian package when only files not into debian has changed: From 60143146105903d6fb564f1e73f361268e8f2315 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Fri, 13 Jan 2017 09:05:10 +0100 Subject: [PATCH 0126/1163] forgotten translation translation lefted on last 5.RC version --- htdocs/langs/en_US/interventions.lang | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/langs/en_US/interventions.lang b/htdocs/langs/en_US/interventions.lang index 0de0d487925..9863471448b 100644 --- a/htdocs/langs/en_US/interventions.lang +++ b/htdocs/langs/en_US/interventions.lang @@ -41,6 +41,7 @@ InterventionDeletedInDolibarr=Intervention %s deleted InterventionsArea=Interventions area DraftFichinter=Draft interventions LastModifiedInterventions=Latest %s modified interventions +FichinterToProcess=Interventions to process ##### Types de contacts ##### TypeContact_fichinter_external_CUSTOMER=Following-up customer contact # Modele numérotation From 6cc3ef0c99912bce3956f08693916eac063bb866 Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Fri, 13 Jan 2017 16:08:49 +0100 Subject: [PATCH 0127/1163] NEW: Events notifications in browser --- htdocs/admin/agenda_other.php | 31 ++++- htdocs/comm/action/sound/notification.mp3 | Bin 0 -> 33430 bytes htdocs/core/ajax/check_events.php | 70 ++++++++++++ htdocs/core/js/agenda_notification.js.php | 133 ++++++++++++++++++++++ htdocs/core/modules/modAgenda.class.php | 4 + htdocs/langs/en_US/admin.lang | 2 + htdocs/theme/eldy/img/bell.png | Bin 0 -> 509 bytes 7 files changed, 238 insertions(+), 2 deletions(-) create mode 100644 htdocs/comm/action/sound/notification.mp3 create mode 100644 htdocs/core/ajax/check_events.php create mode 100644 htdocs/core/js/agenda_notification.js.php create mode 100644 htdocs/theme/eldy/img/bell.png diff --git a/htdocs/admin/agenda_other.php b/htdocs/admin/agenda_other.php index 9406f8ecc5d..d421b296acb 100644 --- a/htdocs/admin/agenda_other.php +++ b/htdocs/admin/agenda_other.php @@ -1,7 +1,7 @@ * Copyright (C) 2011 Regis Houssin - * Copyright (C) 2011-2013 Juanjo Menent + * Copyright (C) 2011-2017 Juanjo Menent * Copyright (C) 2015 Jean-François Ferry * Copyright (C) 2016 Charlie Benke * @@ -407,6 +407,34 @@ $tmplist=array('show_month'=>$langs->trans("ViewCal"), 'show_week'=>$langs->tran print $form->selectarray('AGENDA_DEFAULT_VIEW', $tmplist, $conf->global->AGENDA_DEFAULT_VIEW); print ''."\n"; +// AGENDA NOTIFICATION +print ''."\n"; +print ''.$langs->trans('AGENDA_NOTIFICATION').''."\n"; +print ' '."\n"; +print ''."\n"; + +if (empty($conf->global->AGENDA_NOTIFICATION)) { + print ''.img_picto($langs->trans('Disabled'),'switch_off').''; + print ''."\n"; +} else { + print ''.img_picto($langs->trans('Enabled'),'switch_on').''; + print ''."\n"; + + print ''."\n"; + print ''.$langs->trans('AGENDA_NOTIFICATION_SOUND').''."\n"; + print ' '."\n"; + print ''."\n"; + + + if (empty($conf->global->AGENDA_NOTIFICATION_SOUND)) { + print ''.img_picto($langs->trans('Disabled'),'switch_off').''; + } else { + print ''.img_picto($langs->trans('Enabled'),'switch_on').''; + } + + print ''."\n"; +} + print ''; dol_fiche_end(); @@ -415,7 +443,6 @@ print '
    '; - print "
    "; llxFooter(); diff --git a/htdocs/comm/action/sound/notification.mp3 b/htdocs/comm/action/sound/notification.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..c58e664fd9eadefa6d3048518e4a0ca61f4c0342 GIT binary patch literal 33430 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 literal 0 HcmV?d00001 diff --git a/htdocs/core/ajax/check_events.php b/htdocs/core/ajax/check_events.php new file mode 100644 index 00000000000..ce52413ceab --- /dev/null +++ b/htdocs/core/ajax/check_events.php @@ -0,0 +1,70 @@ + + * Copyright (C) 2017 Juanjo Menent + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + * + */ + +require '../../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php'; + +global $user, $db, $langs, $conf; + +$time = GETPOST('time'); + +session_start(); + +//TODO Configure how long the upgrade will take +$time_update = 60; + +if (! empty($conf->global->AGENDA_NOTIFICATION)) { + if ($_SESSION['auto_check_events'] <= (int)$time) { + $_SESSION['auto_check_events'] = $time + $time_update; + + $eventos = array(); + + $sql = 'SELECT id'; + $sql .= ' FROM ' . MAIN_DB_PREFIX . 'actioncomm a, ' . MAIN_DB_PREFIX . 'actioncomm_resources ar'; + $sql .= ' WHERE datep BETWEEN ' . $db->idate($time + 1) . ' AND ' . $db->idate($time + $time_update); + $sql .= ' AND a.id = ar.fk_actioncomm'; + $sql .= ' AND a.code <> "AC_OTH_AUTO"'; + $sql .= ' AND ar.element_type = "user"'; + $sql .= ' AND ar.fk_element = ' . $user->id; + + $resql = $db->query($sql); + + if ($resql) { + + $actionmod = new ActionComm($db); + + while ($obj = $db->fetch_object($resql)) { + + $event = array(); + + $actionmod->fetch($obj->id); + + $event['id'] = $actionmod->id; + $event['tipo'] = $langs->transnoentities('Action' . $actionmod->code); + $event['titulo'] = $actionmod->label; + $event['location'] = $actionmod->location; + $eventos[] = $event; + $actionmod->initAsSpecimen(); + + } + } + + print json_encode($eventos); + } +} \ No newline at end of file diff --git a/htdocs/core/js/agenda_notification.js.php b/htdocs/core/js/agenda_notification.js.php new file mode 100644 index 00000000000..4e741a25092 --- /dev/null +++ b/htdocs/core/js/agenda_notification.js.php @@ -0,0 +1,133 @@ + + * Copyright (C) 2017 Juanjo Menent + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + * +*/ +if (!defined('NOREQUIREUSER')) define('NOREQUIREUSER', '1'); +if (!defined('NOREQUIRESOC')) define('NOREQUIRESOC', '1'); +if (!defined('NOCSRFCHECK')) define('NOCSRFCHECK', 1); +if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', 1); +if (!defined('NOLOGIN')) define('NOLOGIN', 1); +if (!defined('NOREQUIREMENU')) define('NOREQUIREMENU', 1); +if (!defined('NOREQUIREHTML')) define('NOREQUIREHTML', 1); + +session_cache_limiter(FALSE); + +require_once '../../main.inc.php'; + +if(!($_SERVER['HTTP_REFERER'] === $dolibarr_main_url_root . '/' || $_SERVER['HTTP_REFERER'] === $dolibarr_main_url_root . '/index.php')){ + + global $langs, $conf; + + $langs->load('agenda'); + + // Define javascript type + header('Content-type: text/javascript; charset=UTF-8'); + header('Cache-Control: no-cache'); + + // Check notification permissions API HTML5 + print 'if (Notification.permission !== "granted") { + Notification.requestPermission() + }' . PHP_EOL; + + session_start(); + if (!isset($_SESSION['auto_check_events'])) { + + // Round to eliminate the second part + $_SESSION['auto_check_events'] = floor(time() / 60) * 60; + print 'var time_session = ' . $_SESSION['auto_check_events'] . ';' . PHP_EOL; + print 'var now = ' . $_SESSION['auto_check_events'] . ';' . PHP_EOL; + } else { + + print 'var time_session = ' . $_SESSION['auto_check_events'] . ';' . PHP_EOL; + print 'var now = ' . time() . ';' . PHP_EOL; + } + + //TODO provisionally set to be checked every 60 seconds, the 1000 is because it needs to be in milliseconds + print 'var time_auto_update = 60;' . "\n"; + ?> + + + if (now > (time_session + time_auto_update) || now == time_session) { + + first_execution(); //firts run auto check + } else { + + var time_first_execution = (time_auto_update - (now - time_session)) * 1000; + + setTimeout(first_execution, time_first_execution); //firts run auto check + } + + + function first_execution() { + check_events(); + setInterval(check_events, time_auto_update * 1000); //program time for run check events + } + + function check_events() { + + $.ajax("", { + type: "post", // Usually post o get + async: true, + data: {time: time_session}, + success: function (result) { + + var arr = JSON.parse(result); + + if (arr.length > 0) { + if (Notification.permission === "granted") { + + global->AGENDA_NOTIFICATION_SOUND){ + print 'var audio = new Audio(\''.dol_buildpath('/comm/action/sound/notification.mp3', 1).'\');'; + } + ?> + + $.each(arr, function (index, value) { + var body = value['tipo'] + ': ' + value['titulo']; + if (value['location'] != null) { + body += '\n transnoentities('Location')?>: ' + value['location']; + } + + + var title = "trans('Agenda') ?>"; + var extra = { + icon: "", + body: body, + tag: value['id'] + }; + + // We release the notify + var noti = new Notification(title, extra); + global->AGENDA_NOTIFICATION_SOUND){ + print 'if(index==0)audio.play();'."\n"; + } + ?> + noti.onclick = function (event) { + event.preventDefault(); // prevent the browser from focusing the Notification's tab + window.focus(); + window.open("" + value['id'], '_blank'); + noti.close(); + }; + }); + } + } + } + }); + time_session += time_auto_update; + } + diff --git a/htdocs/core/modules/modAgenda.class.php b/htdocs/core/modules/modAgenda.class.php index 2ba37ad3cbd..46c07d43194 100644 --- a/htdocs/core/modules/modAgenda.class.php +++ b/htdocs/core/modules/modAgenda.class.php @@ -7,6 +7,7 @@ * Copyright (C) 2009-2011 Regis Houssin * Copyright (C) 2013 Cedric Gross * Copyright (C) 2015 Bahfir Abbes + * Copyright (C) 2017 Juanjo Menent * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -73,6 +74,9 @@ class modAgenda extends DolibarrModules $this->requiredby = array(); $this->langfiles = array("companies"); + // Module parts + $this->module_parts = array('js' => array('/core/js/agenda_notification.js.php')); + // Constants //----------- $this->const = array(); diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 00fb2e768ab..e906279da03 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1475,6 +1475,8 @@ AGENDA_USE_EVENT_TYPE_DEFAULT=Set automatically this default value for type of e AGENDA_DEFAULT_FILTER_TYPE=Set automatically this type of event into search filter of agenda view AGENDA_DEFAULT_FILTER_STATUS=Set automatically this status for events into search filter of agenda view AGENDA_DEFAULT_VIEW=Which tab do you want to open by default when selecting menu Agenda +AGENDA_NOTIFICATION=Enable events notification +AGENDA_NOTIFICATION_SOUND=Enable sound on notifications ##### ClickToDial ##### ClickToDialDesc=This module allows to make phone numbers clickable. A click on this icon will call make your phone to call the phone number. This can be used to call a call center system from Dolibarr that can call the phone number on a SIP system for example. ClickToDialUseTelLink=Use just a link "tel:" on phone numbers diff --git a/htdocs/theme/eldy/img/bell.png b/htdocs/theme/eldy/img/bell.png new file mode 100644 index 0000000000000000000000000000000000000000..2397118a68a2d328e13a031a5c7c9265264e6d82 GIT binary patch literal 509 zcmV#dJPMOd$nEaE@4oqsPV1b# zzJBYhea>EGL`p;sfGjYms&Ap|Gm+2%U;-EbMq_eh0)d~G3*W=P?s=))2WG7Wz!=kS zjF|!Eft-7!-WZbso~^YvzTmP#P*p`lx`A_#e6PT;s-6`EcJMLaFz^-5sp@tyj+=nn z$j0wc)r;8XIwfAa!H!*rwg6WYr%_cs_I9kQ0E-l_)tFK*Cjj@xfO84J%|T!hsV0r; zLmk&70$2SP7!hgp0=unLOF9jCf!$W>N(h#aQcorXkB5M#5`sHJz*d+mjFClsMI6C5v9>Iu;;4!!*Oc~p#VET+m~YzIRV;% zMxQfS0^I@k6~GG65U}v!kJvj<7m(v6*rAAA1C_tRSs<&bkG^>-B1+Ye=Xdv1>e*@k zkJx7D;8q?=wbpJKV{-01^#W`FOU9V5QO8Fg%VS}qc0ifB00000NkvXXu0mjf2It;_ literal 0 HcmV?d00001 From 3a40d5a4f1d77b8493de5301601354e39c6edef9 Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Fri, 13 Jan 2017 16:13:01 +0100 Subject: [PATCH 0128/1163] NEW: Events notifications in browser --- htdocs/admin/agenda_other.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/admin/agenda_other.php b/htdocs/admin/agenda_other.php index d421b296acb..2835d17e2fe 100644 --- a/htdocs/admin/agenda_other.php +++ b/htdocs/admin/agenda_other.php @@ -408,6 +408,7 @@ print $form->selectarray('AGENDA_DEFAULT_VIEW', $tmplist, $conf->global->AGENDA_ print ''."\n"; // AGENDA NOTIFICATION +$var=!$var; print ''."\n"; print ''.$langs->trans('AGENDA_NOTIFICATION').''."\n"; print ' '."\n"; @@ -419,13 +420,12 @@ if (empty($conf->global->AGENDA_NOTIFICATION)) { } else { print ''.img_picto($langs->trans('Enabled'),'switch_on').''; print ''."\n"; - + $var=!$var; print ''."\n"; print ''.$langs->trans('AGENDA_NOTIFICATION_SOUND').''."\n"; print ' '."\n"; print ''."\n"; - if (empty($conf->global->AGENDA_NOTIFICATION_SOUND)) { print ''.img_picto($langs->trans('Disabled'),'switch_off').''; } else { From d18c8e3a1453a417bc8c58de8407b81def5bb45f Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Sat, 14 Jan 2017 01:25:33 +0100 Subject: [PATCH 0129/1163] NEW: Event notifications in browser --- htdocs/core/js/agenda_notification.js.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/js/agenda_notification.js.php b/htdocs/core/js/agenda_notification.js.php index 4e741a25092..3d2c80a9ab9 100644 --- a/htdocs/core/js/agenda_notification.js.php +++ b/htdocs/core/js/agenda_notification.js.php @@ -130,4 +130,4 @@ if(!($_SERVER['HTTP_REFERER'] === $dolibarr_main_url_root . '/' || $_SERVER['HTT }); time_session += time_auto_update; } - + Date: Sun, 15 Jan 2017 11:04:32 +0000 Subject: [PATCH 0130/1163] Fix: Add Missing Translation String When product batch module is disabled, the translation string is missing for dispatch line. --- htdocs/langs/en_US/stocks.lang | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/stocks.lang b/htdocs/langs/en_US/stocks.lang index d5fa618b1e0..79842c7b7c7 100644 --- a/htdocs/langs/en_US/stocks.lang +++ b/htdocs/langs/en_US/stocks.lang @@ -141,4 +141,5 @@ OptionMULTIPRICESIsOn=Option "several prices per segment" is on. It means a prod ProductStockWarehouseCreated=Stock limit for alert and desired optimal stock correctly created ProductStockWarehouseUpdated=Stock limit for alert and desired optimal stock correctly updated ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock correctly deleted -AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock \ No newline at end of file +AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock +AddStockLocationLine=Decrease quantity then click to add another warehouse for this product From 58c25a68a8b62f4f634cb6beedb86dd4a7eadd60 Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Sun, 15 Jan 2017 18:48:32 +0100 Subject: [PATCH 0131/1163] NEW: Event notifications in browser --- htdocs/core/ajax/check_events.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/ajax/check_events.php b/htdocs/core/ajax/check_events.php index ce52413ceab..03787c92f52 100644 --- a/htdocs/core/ajax/check_events.php +++ b/htdocs/core/ajax/check_events.php @@ -30,7 +30,7 @@ session_start(); $time_update = 60; if (! empty($conf->global->AGENDA_NOTIFICATION)) { - if ($_SESSION['auto_check_events'] <= (int)$time) { + if ($_SESSION['auto_check_events'] <= (int) $time) { $_SESSION['auto_check_events'] = $time + $time_update; $eventos = array(); From 7bccaff28abc8192df74434518974dca4daf6c1d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 15 Jan 2017 23:32:14 +0100 Subject: [PATCH 0132/1163] Fix remove warnings --- htdocs/core/modules/modFournisseur.class.php | 12 ++--- htdocs/core/modules/modSociete.class.php | 8 +-- htdocs/theme/eldy/style.css.php | 52 +++++++++++++++++--- 3 files changed, 54 insertions(+), 18 deletions(-) diff --git a/htdocs/core/modules/modFournisseur.class.php b/htdocs/core/modules/modFournisseur.class.php index 017ffd1d121..269d4d04a17 100644 --- a/htdocs/core/modules/modFournisseur.class.php +++ b/htdocs/core/modules/modFournisseur.class.php @@ -371,7 +371,7 @@ class modFournisseur extends DolibarrModules // End add extra fields line $this->export_sql_start[$r]='SELECT DISTINCT '; $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_commerciaux as sc ON sc.fk_soc = s.rowid'; + if (is_object($user) && empty($user->rights->societe->client->voir)) $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_commerciaux as sc ON sc.fk_soc = s.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,'; $this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'facture_fourn as f'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'projet as project on (f.fk_projet = project.rowid)'; @@ -381,7 +381,7 @@ class modFournisseur extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)'; $this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_facture_fourn'; $this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_invoice',1).')'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND sc.fk_user = '.$user->id; + if (is_object($user) && empty($user->rights->societe->client->voir)) $this->export_sql_end[$r] .=' AND sc.fk_user = '.$user->id; $r++; $this->export_code[$r]=$this->rights_class.'_'.$r; @@ -435,7 +435,7 @@ class modFournisseur extends DolibarrModules // End add extra fields object $this->export_sql_start[$r]='SELECT DISTINCT '; $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_commerciaux as sc ON sc.fk_soc = s.rowid'; + if (is_object($user) && empty($user->rights->societe->client->voir)) $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_commerciaux as sc ON sc.fk_soc = s.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,'; $this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'facture_fourn as f'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'projet as project on (f.fk_projet = project.rowid)'; @@ -444,7 +444,7 @@ class modFournisseur extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'paiementfourn as p ON pf.fk_paiementfourn = p.rowid'; $this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid'; $this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_invoice',1).')'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND sc.fk_user = '.$user->id; + if (is_object($user) && empty($user->rights->societe->client->voir)) $this->export_sql_end[$r] .=' AND sc.fk_user = '.$user->id; // Order $r++; @@ -541,7 +541,7 @@ class modFournisseur extends DolibarrModules // End add extra fields line $this->export_sql_start[$r]='SELECT DISTINCT '; $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'societe as s'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_commerciaux as sc ON sc.fk_soc = s.rowid'; + if (is_object($user) && empty($user->rights->societe->client->voir)) $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_commerciaux as sc ON sc.fk_soc = s.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON s.fk_pays = c.rowid,'; $this->export_sql_end[$r] .=' '.MAIN_DB_PREFIX.'commande_fournisseur as f'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'projet as project on (f.fk_projet = project.rowid)'; @@ -553,7 +553,7 @@ class modFournisseur extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)'; $this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_commande'; $this->export_sql_end[$r] .=' AND f.entity IN ('.getEntity('supplier_order',1).')'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' AND sc.fk_user = '.$user->id; + if (is_object($user) && empty($user->rights->societe->client->voir)) $this->export_sql_end[$r] .=' AND sc.fk_user = '.$user->id; } diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index af4da616ce9..d10e9747d91 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -281,9 +281,9 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_payment_term as payterm ON s.cond_reglement = payterm.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as paymode ON s.mode_reglement = paymode.id'; $this->export_sql_end[$r] .=' WHERE s.entity IN ('.getEntity('societe', 1).')'; - if(!$user->rights->societe->client->voir) { + if (is_object($user) && empty($user->rights->societe->client->voir)) { $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '; - if ($conf->global->SOCIETE_EXPORT_SUBORDINATES_CHILDS) { + if (! empty($conf->global->SOCIETE_EXPORT_SUBORDINATES_CHILDS)) { $subordinatesids = $user->getAllChildIds(); $this->export_sql_end[$r] .=count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).')' : ''; } @@ -318,9 +318,9 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as co ON c.fk_pays = co.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'socpeople_extrafields as extra ON extra.fk_object = c.rowid'; $this->export_sql_end[$r] .=' WHERE c.entity IN ('.getEntity("societe", 1).')'; - if(!$user->rights->societe->client->voir) { + if (is_object($user) && empty($user->rights->societe->client->voir)) { $this->export_sql_end[$r] .=' AND (sc.fk_user = '.$user->id.' '; - if ($conf->global->SOCIETE_EXPORT_SUBORDINATES_CHILDS) { + if (! empty($conf->global->SOCIETE_EXPORT_SUBORDINATES_CHILDS)) { $subordinatesids = $user->getAllChildIds(); $this->export_sql_end[$r] .=count($subronidatesids)>0 ? ' OR (sc.fk_user IN ('.implode(',',$subronidatesids).')' : ''; } diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index a785afa9cfd..52dad786951 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -261,10 +261,22 @@ input, input.flat, textarea, textarea.flat, form.flat select, select, select.fla background-color: #FFF; } -input:focus, textarea:focus, button:focus, select:focus { - box-shadow: 0 0 4px #8091BF; - /* TODO Remove shadow on focus. Use instead border-bottom: 1px solid #aaa !important; To disable with select2 too. */ +textarea:focus, button:focus { + /* v6 box-shadow: 0 0 4px #8091BF; */ + border: 1px solid #aaa !important; } +input:focus, select:focus { + /* box-shadow: 0 0 4px #8091BF; */ + border-bottom: 1px solid #666; +} +input.select2-input { + border-bottom: none ! important; +} +.select2-choice { + border: none; + border-bottom: 1px solid #aaa !important; +} + textarea.cke_source:focus { box-shadow: none; @@ -273,16 +285,32 @@ textarea.cke_source:focus input, input.flat, textarea, textarea.flat, form.flat select, select, select.flat, .dataTables_length label select { font-size: px; font-family: ; + border: 1px solid #C0C0C0; + /* v6 border: none; + border-bottom: 1px solid #C0C0C0; + outline: none !important;*/ margin: 0px 0px 0px 0px; } -input, textarea, select { +input, select { + /* v6 border-bottom: solid 1px rgba(0,0,0,.2);*/ border-radius: 2px; - border:solid 1px rgba(0,0,0,.3); + border: solid 1px rgba(0,0,0,.3); border-top:solid 1px rgba(0,0,0,.3); border-bottom:solid 1px rgba(0,0,0,.2); - /* box-shadow: 1px 1px 1px rgba(0,0,0,.2) inset;*/ + + padding:4px; + margin-left:0px; + margin-bottom:1px; + margin-top:1px; + } +textarea { + border-radius: 2px; + border: solid 1px rgba(0,0,0,.3); + border-top:solid 1px rgba(0,0,0,.3); + border-bottom:solid 1px rgba(0,0,0,.2); + padding:4px; margin-left:0px; margin-bottom:1px; @@ -4028,7 +4056,14 @@ div.dataTables_length select { background: #FFFFFF !important; } -.select2-choice, +.select2-choice +{ + border: 1px solid #aaa; + /* v6 border-top: none !important; + border-left: none !important; + border-right: none !important; + border-bottom: 1px solid #aaa;*/ +} .select2-drop.select2-drop-above.select2-drop-active, .select2-container-active .select2-choice, .select2-container-active .select2-choices, @@ -4037,6 +4072,7 @@ div.dataTables_length select { .select2-container-multi.select2-container-active .select2-choices { border: 1px solid #aaa; + /* v6 */ } .select2-disabled { @@ -4057,7 +4093,7 @@ a span.select2-chosen line-height: 24px; } .select2-choices .select2-search-choice { - border: 1px solid #aaa !important; + /* border: 1px solid #aaa !important; */ } .select2-results .select2-no-results, .select2-results .select2-searching, .select2-results .select2-ajax-error, .select2-results .select2-selection-limit { From d95ac3bbdd3b4b0f3a3d34ed507033cae2a16cb2 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 16 Jan 2017 00:16:20 +0100 Subject: [PATCH 0133/1163] Fix warning --- htdocs/core/modules/modSociete.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index d10e9747d91..6cf0a6c0278 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -313,7 +313,7 @@ class modSociete extends DolibarrModules $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'socpeople as c'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe as s ON c.fk_soc = s.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_extrafields as extrasoc ON s.rowid = extrasoc.fk_object'; - if(!$user->rights->societe->client->voir) $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_commerciaux as sc ON sc.fk_soc = s.rowid'; + if (is_object($user) && empty($user->rights->societe->client->voir)) $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'societe_commerciaux as sc ON sc.fk_soc = s.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_departements as d ON c.fk_departement = d.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as co ON c.fk_pays = co.rowid'; $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'socpeople_extrafields as extra ON extra.fk_object = c.rowid'; From 94a180a7755640ffc94fd41f9970cd4c870ffa96 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 16 Jan 2017 00:53:59 +0100 Subject: [PATCH 0134/1163] Fix POO best practice --- htdocs/compta/bank/class/account.class.php | 2 +- htdocs/societe/class/companybankaccount.class.php | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php index 73dd2d4f199..0e9b25c39a8 100644 --- a/htdocs/compta/bank/class/account.class.php +++ b/htdocs/compta/bank/class/account.class.php @@ -662,7 +662,7 @@ class Account extends CommonObject * * @param User $user Object user making action * @param int $notrigger 1=Disable triggers - * @return int <0 si ko, >0 si ok + * @return int <0 if KO, >0 if OK */ function update(User $user = null, $notrigger = 0) { diff --git a/htdocs/societe/class/companybankaccount.class.php b/htdocs/societe/class/companybankaccount.class.php index e5d5eb5cc8f..46927e7bc64 100644 --- a/htdocs/societe/class/companybankaccount.class.php +++ b/htdocs/societe/class/companybankaccount.class.php @@ -102,10 +102,11 @@ class CompanyBankAccount extends Account /** * Update bank account * - * @param User $user Object user - * @return int <=0 if KO, >0 if OK + * @param User $user Object user + * @param int $notrigger 1=Disable triggers + * @return int <=0 if KO, >0 if OK */ - function update(User $user = null) + function update(User $user = null, $notrigger=0) { global $conf; From 6bfd534a36ebc274f2b0d2ee520c8571bdfd1068 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 16 Jan 2017 01:21:33 +0100 Subject: [PATCH 0135/1163] NEW PHP 7.1 compatibility --- htdocs/core/class/commonobject.class.php | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index db3be3bc4ac..22718e534cc 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -3020,9 +3020,16 @@ abstract class CommonObject foreach ($this->lines as $line) { - - $totalOrdered+=$line->qty_asked; // defined for shipment only - $totalToShip+=$line->qty_shipped; // defined for shipment only + if (isset($line->qty_asked)) + { + if (empty($totalOrdered)) $totalOrdered=0; // Avoid warning because $totalOrdered is '' + $totalOrdered+=$line->qty_asked; // defined for shipment only + } + if (isset($line->qty_shipped)) + { + if (empty($totalToShip)) $totalToShip=0; // Avoid warning because $totalToShip is '' + $totalToShip+=$line->qty_shipped; // defined for shipment only + } // Define qty, weight, volume, weight_units, volume_units if ($this->element == 'shipping') $qty=$line->qty_shipped; // for shipments @@ -3037,8 +3044,11 @@ abstract class CommonObject if (! empty($weight_units)) $weightUnit = $weight_units; if (! empty($volume_units)) $volumeUnit = $volume_units; + if (empty($totalWeight)) $totalWeight=0; // Avoid warning because $totalWeight is '' + if (empty($totalVolume)) $totalVolume=0; // Avoid warning because $totalVolume is '' + //var_dump($line->volume_units); - if ($weight_units < 50) // >50 means a standard unit (power of 10 of official unit) > 50 means an exotic unit (like inch) + if ($weight_units < 50) // >50 means a standard unit (power of 10 of official unit), > 50 means an exotic unit (like inch) { $trueWeightUnit=pow(10, $weightUnit); $totalWeight += $weight * $qty * $trueWeightUnit; @@ -3047,7 +3057,7 @@ abstract class CommonObject { $totalWeight += $weight * $qty; // This may be wrong if we mix different units } - if ($volume_units < 50) // >50 means a standard unit (power of 10 of official unit) > 50 means an exotic unit (like inch) + if ($volume_units < 50) // >50 means a standard unit (power of 10 of official unit), > 50 means an exotic unit (like inch) { //print $line->volume."x".$line->volume_units."x".($line->volume_units < 50)."x".$volumeUnit; $trueVolumeUnit=pow(10, $volumeUnit); From 6a79a80320524bcbb818a3d203f0507afca32c9c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 16 Jan 2017 08:50:17 +0100 Subject: [PATCH 0136/1163] Reenable php 7.1 --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index a9e47ccb9c6..4f32a1dea43 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,7 +12,7 @@ php: - '5.5' - '5.6' - '7.0' -#- '7.1' +- '7.1' - nightly addons: From f43b3ebda463a59a184779081f81e350470ebacb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 16 Jan 2017 09:30:00 +0100 Subject: [PATCH 0137/1163] Fix holiday class --- htdocs/holiday/class/holiday.class.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php index 78bc1582a65..c51c99ff1ff 100644 --- a/htdocs/holiday/class/holiday.class.php +++ b/htdocs/holiday/class/holiday.class.php @@ -127,7 +127,8 @@ class Holiday extends CommonObject // Check parameters if (empty($this->fk_user) || ! is_numeric($this->fk_user) || $this->fk_user < 0) { $this->error="ErrorBadParameter"; return -1; } if (empty($this->fk_validator) || ! is_numeric($this->fk_validator) || $this->fk_validator < 0) { $this->error="ErrorBadParameter"; return -1; } - + if (empty($this->fk_type) || ! is_numeric($this->fk_type) || $this->fk_type < 0) { $this->error="ErrorBadParameter"; return -1; } + // Insert request $sql = "INSERT INTO ".MAIN_DB_PREFIX."holiday("; $sql.= "fk_user,"; @@ -150,7 +151,7 @@ class Holiday extends CommonObject $sql.= " ".$this->halfday.","; $sql.= " '1',"; $sql.= " '".$this->fk_validator."',"; - $sql.= " '".$this->fk_type."',"; + $sql.= " ".$this->fk_type.","; $sql.= " ".$user->id.","; $sql.= " ".$conf->entity; $sql.= ")"; From 1b1bab94ca27c7f49eff4b13a57cd75e80a40109 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 16 Jan 2017 10:43:22 +0100 Subject: [PATCH 0138/1163] More complete commit for #6114 --- htdocs/core/modules/modProduct.class.php | 6 +- htdocs/product/card.php | 104 +++++++++-------------- htdocs/product/class/product.class.php | 13 +-- 3 files changed, 48 insertions(+), 75 deletions(-) diff --git a/htdocs/core/modules/modProduct.class.php b/htdocs/core/modules/modProduct.class.php index 330349b0842..195b59ed85d 100644 --- a/htdocs/core/modules/modProduct.class.php +++ b/htdocs/core/modules/modProduct.class.php @@ -151,7 +151,7 @@ class modProduct extends DolibarrModules $this->export_code[$r]=$this->rights_class.'_'.$r; $this->export_label[$r]="Products"; // Translation key (used only if key ExportDataset_xxx_z not found) $this->export_permission[$r]=array(array("produit","export")); - $this->export_fields_array[$r]=array('p.rowid'=>"Id",'p.ref'=>"Ref",'p.label'=>"Label",'p.description'=>"Description",'p.url'=>"PublicUrl",'p.accountancy_code_sell'=>"ProductAccountancySellCode",'p.accountancy_code_buy'=>"ProductAccountancyBuyCode",'p.note'=>"Note",'p.length'=>"Length",'p.surface'=>"Surface",'p.volume'=>"Volume",'p.weight'=>"Weight",'p.customcode'=>'CustomCode','p.price_base_type'=>"PriceBase",'p.price'=>"UnitPriceHT",'p.price_ttc'=>"UnitPriceTTC",'p.tva_tx'=>'VATRate','p.tosell'=>"OnSell",'p.tobuy'=>"OnBuy",'p.datec'=>'DateCreation','p.tms'=>'DateModification'); + $this->export_fields_array[$r]=array('p.rowid'=>"Id",'p.ref'=>"Ref",'p.label'=>"Label",'p.description'=>"Description",'p.url'=>"PublicUrl",'p.accountancy_code_sell'=>"ProductAccountancySellCode",'p.accountancy_code_buy'=>"ProductAccountancyBuyCode",'p.note'=>"Note",'p.length'=>"Length",'p.width'=>"Width",'p.height'=>"Height",'p.surface'=>"Surface",'p.volume'=>"Volume",'p.weight'=>"Weight",'p.customcode'=>'CustomCode','p.price_base_type'=>"PriceBase",'p.price'=>"UnitPriceHT",'p.price_ttc'=>"UnitPriceTTC",'p.tva_tx'=>'VATRate','p.tosell'=>"OnSell",'p.tobuy'=>"OnBuy",'p.datec'=>'DateCreation','p.tms'=>'DateModification'); if ($mysoc->useNPR()) $this->export_fields_array[$r]['p.recuperableonly']='NPR'; if (! empty($conf->stock->enabled)) $this->export_fields_array[$r]=array_merge($this->export_fields_array[$r],array('p.stock'=>'Stock','p.seuil_stock_alerte'=>'StockLimit','p.desiredstock'=>'DesiredStock','p.pmp'=>'PMPValue')); if (! empty($conf->barcode->enabled)) $this->export_fields_array[$r]=array_merge($this->export_fields_array[$r],array('p.barcode'=>'BarCode')); @@ -159,13 +159,13 @@ class modProduct extends DolibarrModules if (! empty($conf->fournisseur->enabled) || !empty($conf->margin->enabled)) $this->export_fields_array[$r]=array_merge($this->export_fields_array[$r],array('p.cost_price'=>'CostPrice')); if (! empty($conf->global->EXPORTTOOL_CATEGORIES)) $this->export_fields_array[$r]=array_merge($this->export_fields_array[$r],array('group_concat(cat.label)'=>'Categories')); if (! empty($conf->global->MAIN_MULTILANGS)) $this->export_fields_array[$r]=array_merge($this->export_fields_array[$r],array('l.lang'=>'Language', 'l.label'=>'TranslatedLabel','l.description'=>'TranslatedDescription','l.note'=>'TranslatedNote')); - $this->export_TypeFields_array[$r]=array('p.ref'=>"Text",'p.label'=>"Text",'p.description'=>"Text",'p.url'=>"Text",'p.accountancy_code_sell'=>"Text",'p.accountancy_code_buy'=>"Text",'p.note'=>"Text",'p.length'=>"Numeric",'p.surface'=>"Numeric",'p.volume'=>"Numeric",'p.weight'=>"Numeric",'p.customcode'=>'Text','p.price_base_type'=>"Text",'p.price'=>"Numeric",'p.price_ttc'=>"Numeric",'p.tva_tx'=>'Numeric','p.tosell'=>"Boolean",'p.tobuy'=>"Boolean",'p.datec'=>'Date','p.tms'=>'Date'); + $this->export_TypeFields_array[$r]=array('p.ref'=>"Text",'p.label'=>"Text",'p.description'=>"Text",'p.url'=>"Text",'p.accountancy_code_sell'=>"Text",'p.accountancy_code_buy'=>"Text",'p.note'=>"Text",'p.length'=>"Numeric",'p.width'=>"Numeric",'p.height'=>"Numeric",'p.surface'=>"Numeric",'p.volume'=>"Numeric",'p.weight'=>"Numeric",'p.customcode'=>'Text','p.price_base_type'=>"Text",'p.price'=>"Numeric",'p.price_ttc'=>"Numeric",'p.tva_tx'=>'Numeric','p.tosell'=>"Boolean",'p.tobuy'=>"Boolean",'p.datec'=>'Date','p.tms'=>'Date'); if (! empty($conf->stock->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('p.stock'=>'Numeric','p.seuil_stock_alerte'=>'Numeric','p.desiredstock'=>'Numeric','p.pmp'=>'Numeric','p.cost_price'=>'Numeric')); if (! empty($conf->barcode->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('p.barcode'=>'Text')); if (! empty($conf->fournisseur->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('s.nom'=>'Text','pf.ref_fourn'=>'Text','pf.unitprice'=>'Numeric')); if (! empty($conf->global->MAIN_MULTILANGS)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('l.lang'=>'Text', 'l.label'=>'Text','l.description'=>'Text','l.note'=>'Text')); if (! empty($conf->global->EXPORTTOOL_CATEGORIES)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array("group_concat(cat.label)"=>'Text')); - $this->export_entities_array[$r]=array('p.rowid'=>"product",'p.ref'=>"product",'p.label'=>"product",'p.description'=>"product",'p.url'=>"product",'p.accountancy_code_sell'=>'product','p.accountancy_code_sell'=>'product','p.note'=>"product",'p.length'=>"product",'p.surface'=>"product",'p.volume'=>"product",'p.weight'=>"product",'p.customcode'=>'product','p.price_base_type'=>"product",'p.price'=>"product",'p.price_ttc'=>"product",'p.tva_tx'=>"product",'p.tosell'=>"product",'p.tobuy'=>"product",'p.datec'=>"product",'p.tms'=>"product"); + $this->export_entities_array[$r]=array(); // We define here only fields that use another icon that the one defined into import_icon if (! empty($conf->global->EXPORTTOOL_CATEGORIES)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array("group_concat(cat.label)"=>'category')); if (! empty($conf->stock->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.stock'=>'product','p.pmp'=>'product')); if (! empty($conf->barcode->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.barcode'=>'product')); diff --git a/htdocs/product/card.php b/htdocs/product/card.php index 19e79408e4e..5a7158cd190 100644 --- a/htdocs/product/card.php +++ b/htdocs/product/card.php @@ -284,10 +284,8 @@ if (empty($reshook)) $object->length = GETPOST('size'); $object->length_units = GETPOST('size_units'); $object->width = GETPOST('sizewidth'); - $object->width_units = GETPOST('sizewidth_units'); $object->height = GETPOST('sizeheight'); - $object->height_units = GETPOST('sizeheight_units'); - $object->surface = GETPOST('surface'); + $object->surface = GETPOST('surface'); $object->surface_units = GETPOST('surface_units'); $object->volume = GETPOST('volume'); $object->volume_units = GETPOST('volume_units'); @@ -385,9 +383,7 @@ if (empty($reshook)) $object->length = GETPOST('size'); $object->length_units = GETPOST('size_units'); $object->width = GETPOST('sizewidth'); - $object->width_units = GETPOST('sizewidth_units'); $object->height = GETPOST('sizeheight'); - $object->height_units = GETPOST('sizeheight_units'); $object->surface = GETPOST('surface'); $object->surface_units = GETPOST('surface_units'); @@ -1021,21 +1017,12 @@ else // Length if (empty($conf->global->PRODUCT_DISABLE_SIZE)) { - print ''.$langs->trans("Length").''; - print ''; + print ''.$langs->trans("Length").' x '.$langs->trans("Width").' x '.$langs->trans("Height").''; + print ' x '; + print ' x '; + print ''; print $formproduct->select_measuring_units("size_units","size"); print ''; - - print ''.$langs->trans("Width").''; - print ''; - print $formproduct->select_measuring_units("sizewidth_units","size"); - print ''; - - print ''.$langs->trans("Height").''; - print ''; - print $formproduct->select_measuring_units("sizeheight_units","size"); - print ''; - } if (empty($conf->global->PRODUCT_DISABLE_SURFACE)) { @@ -1346,21 +1333,13 @@ else print ''; if (empty($conf->global->PRODUCT_DISABLE_SIZE)) { - // Length - print ''.$langs->trans("Length").''; - print ' '; - print $formproduct->select_measuring_units("size_units", "size", $object->length_units); - print ''; - - print ''.$langs->trans("Width").''; - print ' '; - print $formproduct->select_measuring_units("sizewidth_units","size", $object->width_units); - print ''; - - print ''.$langs->trans("Height").''; - print ' '; - print $formproduct->select_measuring_units("sizeheight_units","size", $object->height_units); - print ''; + // Length + print ''.$langs->trans("Length").' x '.$langs->trans("Width").' x '.$langs->trans("Height").''; + print 'x'; + print 'x'; + print ' '; + print $formproduct->select_measuring_units("size_units", "size", $object->length_units); + print ''; } if (empty($conf->global->PRODUCT_DISABLE_SURFACE)) { @@ -1370,11 +1349,14 @@ else print $formproduct->select_measuring_units("surface_units", "surface", $object->surface_units); print ''; } - // Volume - print ''.$langs->trans("Volume").''; - print ' '; - print $formproduct->select_measuring_units("volume_units", "volume", $object->volume_units); - print ''; + if (empty($conf->global->PRODUCT_DISABLE_VOLUME)) + { + // Volume + print ''.$langs->trans("Volume").''; + print ' '; + print $formproduct->select_measuring_units("volume_units", "volume", $object->volume_units); + print ''; + } } // Units if($conf->global->PRODUCT_USE_UNITS) @@ -1668,32 +1650,19 @@ else if (empty($conf->global->PRODUCT_DISABLE_SIZE)) { // Length - print ''.$langs->trans("Length").''; - if ($object->length != '') + print ''.$langs->trans("Length").' x '.$langs->trans("Width").' x '.$langs->trans("Height").''; + if ($object->length != '' || $object->width != '' || $object->height != '') { - print $object->length." ".measuring_units_string($object->length_units,"size"); + print $object->length; + if ($object->width) print " x ".$object->width; + if ($object->height) print " x ".$object->height; + print ' '.measuring_units_string($object->length_units,"size"); } else { print ' '; } print "\n"; - - print ''.$langs->trans("Width").''; - if ($object->width != '') { - print $object->width." ".measuring_units_string($object->width_units,"size"); - } - else - print ' '; - print "\n"; - - print ''.$langs->trans("Height").''; - if ($object->height != '') { - print $object->height." ".measuring_units_string($object->height_units,"size"); - } - else - print ' '; - print "\n"; } if (empty($conf->global->PRODUCT_DISABLE_SURFACE)) { @@ -1709,17 +1678,20 @@ else } print "\n"; } - // Volume - print ''.$langs->trans("Volume").''; - if ($object->volume != '') + if (empty($conf->global->PRODUCT_DISABLE_VOLUME)) { - print $object->volume." ".measuring_units_string($object->volume_units,"volume"); + // Volume + print ''.$langs->trans("Volume").''; + if ($object->volume != '') + { + print $object->volume." ".measuring_units_string($object->volume_units,"volume"); + } + else + { + print ' '; + } + print "\n"; } - else - { - print ' '; - } - print "\n"; } // Unit diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index f7e3881108a..27fb4a4c11c 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -640,15 +640,16 @@ class Product extends CommonObject $this->width_units = trim($this->width_units); $this->height = price2num($this->height); $this->height_units = trim($this->height_units); + // set unit not defined + if (! $this->width_units && $this->length_units) $this->width_units = $this->length_units; // Not used yet + if (! $this->height_units && $this->length_units) $this->height_units = $this->length_units; // Not used yet // Automated compute surface and volume if not filled - if (empty($this->surface) && !empty($this->length) && !empty($this->width) - && $this->length_units == $this->with_units - ) { + if (empty($this->surface) && !empty($this->length) && !empty($this->width) && $this->length_units == $this->width_units) + { $this->surface = $this->length * $this->width; $this->surface_units = $this->width_units; - if (empty($this->volume) && !empty($this->height) - && $this->length_units == $this->height_units - ) { + if (empty($this->volume) && !empty($this->height) && $this->length_units == $this->height_units) + { $this->volume = $this->surface * $this->height; $this->volume_units = $this->height_units; } From fafe71ec52ec29fd3496ba1c554330b57f2eed4b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 16 Jan 2017 10:55:33 +0100 Subject: [PATCH 0139/1163] Fix autocalculation of surface and volume. --- htdocs/product/class/product.class.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 27fb4a4c11c..1999a6f9c4a 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -641,18 +641,18 @@ class Product extends CommonObject $this->height = price2num($this->height); $this->height_units = trim($this->height_units); // set unit not defined - if (! $this->width_units && $this->length_units) $this->width_units = $this->length_units; // Not used yet - if (! $this->height_units && $this->length_units) $this->height_units = $this->length_units; // Not used yet + if ($this->length_units) $this->width_units = $this->length_units; // Not used yet + if ($this->length_units) $this->height_units = $this->length_units; // Not used yet // Automated compute surface and volume if not filled if (empty($this->surface) && !empty($this->length) && !empty($this->width) && $this->length_units == $this->width_units) { $this->surface = $this->length * $this->width; - $this->surface_units = $this->width_units; - if (empty($this->volume) && !empty($this->height) && $this->length_units == $this->height_units) - { - $this->volume = $this->surface * $this->height; - $this->volume_units = $this->height_units; - } + $this->surface_units = $this->length_units + $this->width_units; + } + if (empty($this->volume) && !empty($this->surface_units) && !empty($this->height) && $this->length_units == $this->height_units) + { + $this->volume = $this->surface * $this->height; + $this->volume_units = $this->surface_units + $this->height_units; } $this->surface = price2num($this->surface); From 9674bdef54e34e330dd134ca714a11863375bbc5 Mon Sep 17 00:00:00 2001 From: Juanjo Menent Date: Mon, 16 Jan 2017 13:40:57 +0100 Subject: [PATCH 0140/1163] Best directory for img --- htdocs/core/js/agenda_notification.js.php | 2 +- htdocs/theme/{eldy/img => common}/bell.png | Bin 2 files changed, 1 insertion(+), 1 deletion(-) rename htdocs/theme/{eldy/img => common}/bell.png (100%) diff --git a/htdocs/core/js/agenda_notification.js.php b/htdocs/core/js/agenda_notification.js.php index 3d2c80a9ab9..ad4b8cf1bdf 100644 --- a/htdocs/core/js/agenda_notification.js.php +++ b/htdocs/core/js/agenda_notification.js.php @@ -105,7 +105,7 @@ if(!($_SERVER['HTTP_REFERER'] === $dolibarr_main_url_root . '/' || $_SERVER['HTT var title = "trans('Agenda') ?>"; var extra = { - icon: "", + icon: "", body: body, tag: value['id'] }; diff --git a/htdocs/theme/eldy/img/bell.png b/htdocs/theme/common/bell.png similarity index 100% rename from htdocs/theme/eldy/img/bell.png rename to htdocs/theme/common/bell.png From e701ea0b2fa3e35c0e5f9565046d2fb77df20f4d Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Mon, 16 Jan 2017 14:06:34 +0100 Subject: [PATCH 0141/1163] Add dictionnary mail for contract --- htdocs/admin/dict.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 2ca1337736e..6d8787b1677 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -557,6 +557,7 @@ if ($id == 25) if ($conf->fournisseur->enabled) $elementList['order_supplier_send']=$langs->trans('MailToSendSupplierOrder'); if ($conf->fournisseur->enabled) $elementList['invoice_supplier_send']=$langs->trans('MailToSendSupplierInvoice'); if ($conf->societe->enabled) $elementList['thirdparty']=$langs->trans('MailToThirdparty'); + if ($conf->contrat->enabled) $elementList['contract']=$langs->trans('MailToSendContract'); $parameters=array('elementList'=>$elementList); $reshook=$hookmanager->executeHooks('emailElementlist',$parameters); // Note that $action and $object may have been modified by some hooks From c0a8752ef4fa9ffe1710046eaa463c3b912fd16a Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Mon, 16 Jan 2017 14:17:38 +0100 Subject: [PATCH 0142/1163] Update card.php --- htdocs/contrat/card.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php index 3128a7612f5..daae2aa8c36 100644 --- a/htdocs/contrat/card.php +++ b/htdocs/contrat/card.php @@ -2111,13 +2111,13 @@ else dol_print_error($db, $object->error, $object->errors); exit(); } - $fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); + $fileparams = dol_most_recent_file($conf->contrat->dir_output . '/' . $ref, preg_quote($ref, '/').'[^\-]+'); $file = $fileparams['fullname']; } print '
    '; print '
    '; - print load_fiche_titre($langs->trans('SendOrderByMail')); + print load_fiche_titre($langs->trans('SendContractByMail')); dol_fiche_head(''); @@ -2145,9 +2145,9 @@ else $formmail->withtocc = $liste; $formmail->withtoccc = $conf->global->MAIN_EMAIL_USECCC; if (empty($object->ref_client)) { - $formmail->withtopic = $outputlangs->trans('SendOrderRef', '__ORDERREF__'); + $formmail->withtopic = $outputlangs->trans('SendContractRef', '__CONTRACTREF__'); } else if (! empty($object->ref_client)) { - $formmail->withtopic = $outputlangs->trans('SendOrderRef', '__ORDERREF__ (__REFCLIENT__)'); + $formmail->withtopic = $outputlangs->trans('SendContractRef', '__CONTRACTREF__ (__REFCLIENT__)'); } $formmail->withfile = 2; $formmail->withbody = 1; @@ -2155,7 +2155,7 @@ else $formmail->withcancel = 1; // Tableau des substitutions $formmail->setSubstitFromObject($object); - $formmail->substit ['__ORDERREF__'] = $object->ref; + $formmail->substit ['__CONTRACTREF__'] = $object->ref; $custcontact = ''; $contactarr = array(); @@ -2165,7 +2165,7 @@ else { foreach ($contactarr as $contact) { - if ($contact['libelle'] == $langs->trans('TypeContact_commande_external_CUSTOMER')) { // TODO Use code and not label + if ($contact['libelle'] == $langs->trans('TypeContact_contract_external_CUSTOMER')) { // TODO Use code and not label $contactstatic = new Contact($db); $contactstatic->fetch($contact ['id']); $custcontact = $contactstatic->getFullName($langs, 1); @@ -2179,9 +2179,9 @@ else // Tableau des parametres complementaires $formmail->param['action'] = 'send'; - $formmail->param['models'] = 'order_send'; + $formmail->param['models'] = 'contract_send'; $formmail->param['models_id']=GETPOST('modelmailselected','int'); - $formmail->param['orderid'] = $object->id; + $formmail->param['contractid'] = $object->id; $formmail->param['returnurl'] = $_SERVER["PHP_SELF"] . '?id=' . $object->id; // Init list of files From 2525a6e3a4c07838a5a3f8898f83c2f45ba0f773 Mon Sep 17 00:00:00 2001 From: Philippe GRAND Date: Mon, 16 Jan 2017 17:24:50 +0100 Subject: [PATCH 0143/1163] update code for next php versions --- .../commande/doc/pdf_einstein.modules.php | 56 +++++++++++++------ 1 file changed, 40 insertions(+), 16 deletions(-) diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php index 3f3b072de34..f58d7ab496d 100644 --- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php +++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php @@ -40,23 +40,47 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/pdf.lib.php'; */ class pdf_einstein extends ModelePDFCommandes { - var $db; - var $name; - var $description; - var $type; + /** + * @var DoliDb Database handler + */ + public $db; + + /** + * @var string model name + */ + public $name; + + /** + * @var string model description (short text) + */ + public $description; + + /** + * @var string document type + */ + public $type; + + /** + * @var array() Minimum version of PHP required by module. + * e.g.: PHP ≥ 5.3 = array(5, 3) + */ + public $phpmin = array(5, 2); + + /** + * Dolibarr version of the loaded document + * @public string + */ + public $version = 'dolibarr'; - var $phpmin = array(4,3,0); // Minimum version of PHP required by module - var $version = 'dolibarr'; + public $page_largeur; + public $page_hauteur; + public $format; + public $marge_gauche; + public $marge_droite; + public $marge_haute; + public $marge_basse; - var $page_largeur; - var $page_hauteur; - var $format; - var $marge_gauche; - var $marge_droite; - var $marge_haute; - var $marge_basse; - - var $emetteur; // Objet societe qui emet + public $emetteur; // Objet societe qui emet /** @@ -64,7 +88,7 @@ class pdf_einstein extends ModelePDFCommandes * * @param DoliDB $db Database handler */ - function __construct($db) + public function __construct($db) { global $conf,$langs,$mysoc; From 6dbb3efc894f0738a351e28627a4b5bb156752f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 16 Jan 2017 20:24:26 +0100 Subject: [PATCH 0144/1163] NEW #6280: Generate PDF after creating an invoice from a customer order Close #6280 --- htdocs/compta/facture.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 91267578197..36dce43f5f3 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -1291,6 +1291,25 @@ if (empty($reshook)) if ($id > 0 && ! $error) { $db->commit(); + + // Define output language + if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE) && count($object->lines)) + { + $outputlangs = $langs; + $newlang = ''; + if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id')) $newlang = GETPOST('lang_id','alpha'); + if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang; + if (! empty($newlang)) { + $outputlangs = new Translate("", $conf); + $outputlangs->setDefaultLang($newlang); + } + $model=$object->modelpdf; + $ret = $object->fetch($id); // Reload to get new records + + $result = $object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref); + if ($result < 0) setEventMessages($object->error, $object->errors, 'errors'); + } + header('Location: ' . $_SERVER["PHP_SELF"] . '?facid=' . $id); exit(); } From e0cbcadd98a0759e5c4d6bf9a71c2bb0b2253a7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 16 Jan 2017 21:16:05 +0100 Subject: [PATCH 0145/1163] In case Model for document generation is not defined, the criteria to select the model is now: 1. Model for the object 2. Custom default module 3. Hardcoded default module --- htdocs/adherents/class/adherent.class.php | 22 +++++++++---------- htdocs/comm/propal/class/propal.class.php | 16 ++++++-------- htdocs/commande/class/commande.class.php | 16 ++++++-------- htdocs/compta/facture/class/facture.class.php | 20 +++++++---------- htdocs/contrat/class/contrat.class.php | 18 +++++++-------- htdocs/expedition/class/expedition.class.php | 16 ++++++-------- .../class/expensereport.class.php | 22 +++++++++---------- .../class/fournisseur.commande.class.php | 18 +++++++-------- htdocs/livraison/class/livraison.class.php | 16 ++++++-------- htdocs/projet/class/project.class.php | 16 ++++++-------- htdocs/projet/class/task.class.php | 16 ++++++-------- .../class/supplier_proposal.class.php | 18 +++++++-------- 12 files changed, 94 insertions(+), 120 deletions(-) diff --git a/htdocs/adherents/class/adherent.class.php b/htdocs/adherents/class/adherent.class.php index 945ed849f57..22510aed411 100644 --- a/htdocs/adherents/class/adherent.class.php +++ b/htdocs/adherents/class/adherent.class.php @@ -1818,18 +1818,16 @@ class Adherent extends CommonObject $langs->load("orders"); - // Positionne le modele sur le nom du modele a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->ADHERENT_ADDON_PDF)) - { - $modele = $conf->global->ADHERENT_ADDON_PDF; - } - else - { - $modele = 'standard'; - } - } + if (! dol_strlen($modele)) { + + $modele = 'standard'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->ADHERENT_ADDON_PDF)) { + $modele = $conf->global->ADHERENT_ADDON_PDF; + } + } $modelpath = "core/modules/member/doc/"; diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index f10d82fdbfa..cf42fe3c33f 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -3434,17 +3434,15 @@ class Propal extends CommonObject $langs->load("propale"); - // Positionne le modele sur le nom du modele a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->PROPALE_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'azur'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->PROPALE_ADDON_PDF)) { $modele = $conf->global->PROPALE_ADDON_PDF; } - else - { - $modele = 'azur'; - } } $modelpath = "core/modules/propale/doc/"; diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 1f75e6caf74..1cd706c1863 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -3641,17 +3641,15 @@ class Commande extends CommonOrder $langs->load("orders"); - // Positionne le modele sur le nom du modele a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->COMMANDE_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'einstein'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->COMMANDE_ADDON_PDF)) { $modele = $conf->global->COMMANDE_ADDON_PDF; } - else - { - $modele = 'einstein'; - } } $modelpath = "core/modules/commande/doc/"; diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index 67f58ac9875..aef95d1b0a9 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -3967,24 +3967,20 @@ class Facture extends CommonInvoice $langs->load("bills"); - // Positionne le modele sur le nom du modele a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->FACTURE_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'crabe'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->FACTURE_ADDON_PDF)) { $modele = $conf->global->FACTURE_ADDON_PDF; } - else - { - $modele = 'crabe'; - } } $modelpath = "core/modules/facture/doc/"; - $result=$this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref); - - return $result; + return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref); } /** diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php index 202a3dc2a0d..a8ad3390db3 100644 --- a/htdocs/contrat/class/contrat.class.php +++ b/htdocs/contrat/class/contrat.class.php @@ -2199,21 +2199,19 @@ class Contrat extends CommonObject */ public function generateDocument($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) { - global $conf,$user,$langs; + global $conf,$langs; $langs->load("contracts"); - // Positionne le modele sur le nom du modele a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->CONTRACT_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'strato'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->CONTRACT_ADDON_PDF)) { $modele = $conf->global->CONTRACT_ADDON_PDF; } - else - { - $modele = 'strato'; - } } $modelpath = "core/modules/contract/doc/"; diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index 971a2189854..99d81852734 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -2162,17 +2162,15 @@ class Expedition extends CommonObject $langs->load("sendings"); - // Sets the model on the model name to use - if (! dol_strlen($modele)) - { - if (! empty($conf->global->EXPEDITION_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'rouget'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->EXPEDITION_ADDON_PDF)) { $modele = $conf->global->EXPEDITION_ADDON_PDF; } - else - { - $modele = 'rouget'; - } } $modelpath = "core/modules/expedition/doc/"; diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php index 0a858cda257..d21e04cc37f 100644 --- a/htdocs/expensereport/class/expensereport.class.php +++ b/htdocs/expensereport/class/expensereport.class.php @@ -1573,18 +1573,16 @@ class ExpenseReport extends CommonObject $langs->load("trips"); - // Positionne le modele sur le nom du modele a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->EXPENSEREPORT_ADDON_PDF)) - { - $modele = $conf->global->EXPENSEREPORT_ADDON_PDF; - } - else - { - $modele = 'standard'; - } - } + if (! dol_strlen($modele)) { + + $modele = 'standard'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->EXPENSEREPORT_ADDON_PDF)) { + $modele = $conf->global->EXPENSEREPORT_ADDON_PDF; + } + } $modelpath = "core/modules/expensereport/doc/"; diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index 15939384670..a4eda5ec81e 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -2686,21 +2686,19 @@ class CommandeFournisseur extends CommonOrder */ public function generateDocument($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) { - global $conf, $user, $langs; + global $conf, $langs; $langs->load("suppliers"); - // Sets the model on the model name to use - if (! dol_strlen($modele)) - { - if (! empty($conf->global->COMMANDE_SUPPLIER_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'muscadet'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->COMMANDE_SUPPLIER_ADDON_PDF)) { $modele = $conf->global->COMMANDE_SUPPLIER_ADDON_PDF; } - else - { - $modele = 'muscadet'; - } } $modelpath = "core/modules/supplier_order/pdf/"; diff --git a/htdocs/livraison/class/livraison.class.php b/htdocs/livraison/class/livraison.class.php index 15421a8a367..3a18abf2cbb 100644 --- a/htdocs/livraison/class/livraison.class.php +++ b/htdocs/livraison/class/livraison.class.php @@ -1009,17 +1009,15 @@ class Livraison extends CommonObject $langs->load("deliveries"); - // Positionne modele sur le nom du modele de bon de livraison a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->LIVRAISON_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'typhon'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->LIVRAISON_ADDON_PDF)) { $modele = $conf->global->LIVRAISON_ADDON_PDF; } - else - { - $modele = 'typhon'; - } } $modelpath = "core/modules/livraison/doc/"; diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index 460e698e432..65c4e6bc94c 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -1569,17 +1569,15 @@ class Project extends CommonObject $langs->load("projects"); - // Positionne modele sur le nom du modele de projet a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->PROJECT_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'baleine'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->PROJECT_ADDON_PDF)) { $modele = $conf->global->PROJECT_ADDON_PDF; } - else - { - $modele='baleine'; - } } $modelpath = "core/modules/project/doc/"; diff --git a/htdocs/projet/class/task.class.php b/htdocs/projet/class/task.class.php index ec180704563..fe50be6e521 100644 --- a/htdocs/projet/class/task.class.php +++ b/htdocs/projet/class/task.class.php @@ -1619,17 +1619,15 @@ class Task extends CommonObject $langs->load("projects"); - // Positionne modele sur le nom du modele de projet a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->PROJECT_TASK_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'nodefault'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->PROJECT_TASK_ADDON_PDF)) { $modele = $conf->global->PROJECT_TASK_ADDON_PDF; } - else - { - $modele='nodefault'; - } } $modelpath = "core/modules/project/task/doc/"; diff --git a/htdocs/supplier_proposal/class/supplier_proposal.class.php b/htdocs/supplier_proposal/class/supplier_proposal.class.php index 53e7bf8ad34..5d2d5aad783 100644 --- a/htdocs/supplier_proposal/class/supplier_proposal.class.php +++ b/htdocs/supplier_proposal/class/supplier_proposal.class.php @@ -2510,21 +2510,19 @@ class SupplierProposal extends CommonObject */ public function generateDocument($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) { - global $conf,$user,$langs; + global $conf, $langs; $langs->load("supplier_proposal"); - // Positionne le modele sur le nom du modele a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->SUPPLIER_PROPOSAL_ADDON_PDF)) - { + if (! dol_strlen($modele)) { + + $modele = 'aurore'; + + if ($this->modelpdf) { + $modele = $this->modelpdf; + } elseif (! empty($conf->global->SUPPLIER_PROPOSAL_ADDON_PDF)) { $modele = $conf->global->SUPPLIER_PROPOSAL_ADDON_PDF; } - else - { - $modele = 'aurore'; - } } $modelpath = "core/modules/supplier_proposal/doc/"; From 0f6cb52376663f5104aa4ed821336375a4fb0074 Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Mon, 16 Jan 2017 17:40:13 -0300 Subject: [PATCH 0146/1163] Improve code style Replace var for public and private. --- htdocs/core/class/html.formother.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/class/html.formother.class.php b/htdocs/core/class/html.formother.class.php index 4ac3eb99c50..9cb402cfc89 100644 --- a/htdocs/core/class/html.formother.class.php +++ b/htdocs/core/class/html.formother.class.php @@ -37,8 +37,8 @@ */ class FormOther { - var $db; - var $error; + private $db; + public $error; /** From 8225b060186bb7809e3fa7689c58610750896bd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Mon, 16 Jan 2017 21:59:02 +0100 Subject: [PATCH 0147/1163] NEW Removed commande_pdf_create, contract_pdf_create,expedition_pdf_create, facture_pdf_create, delivery_order_pdf_create, task_pdf_create, project_pdf_create, propale_pdf_create, supplier_invoice_pdf_create, supplier_order_pdf_create, supplier_proposal_pdf_create deprecated functions --- .../modules/commande/modules_commande.php | 24 +----- .../modules/contract/modules_contract.php | 21 ----- .../modules/expedition/modules_expedition.php | 21 ----- .../core/modules/facture/modules_facture.php | 23 ------ .../modules/livraison/modules_livraison.php | 21 ----- .../core/modules/project/modules_project.php | 23 ------ .../modules/project/task/modules_task.php | 24 ------ .../core/modules/propale/modules_propale.php | 23 ------ .../modules/societe/modules_societe.class.php | 77 ------------------- .../modules_facturefournisseur.php | 19 ----- .../modules_commandefournisseur.php | 23 ------ .../modules_supplier_proposal.php | 23 ------ 12 files changed, 1 insertion(+), 321 deletions(-) diff --git a/htdocs/core/modules/commande/modules_commande.php b/htdocs/core/modules/commande/modules_commande.php index 45623575ba4..aa6da728f56 100644 --- a/htdocs/core/modules/commande/modules_commande.php +++ b/htdocs/core/modules/commande/modules_commande.php @@ -146,26 +146,4 @@ abstract class ModeleNumRefCommandes if ($this->version) return $this->version; return $langs->trans("NotAvailable"); } -} - - -/** - * Create a document onto disk accordign to template module. - * - * @param DoliDB $db Database handler - * @param Commande $object Object order - * @param string $modele Force le modele a utiliser ('' to not force) - * @param Translate $outputlangs objet lang a utiliser pour traduction - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of Commande class - * @see Commande::generateDocument() - */ -function commande_pdf_create(DoliDB $db, Commande $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} +} \ No newline at end of file diff --git a/htdocs/core/modules/contract/modules_contract.php b/htdocs/core/modules/contract/modules_contract.php index 1efeaef3466..47a882b7b56 100644 --- a/htdocs/core/modules/contract/modules_contract.php +++ b/htdocs/core/modules/contract/modules_contract.php @@ -143,24 +143,3 @@ class ModelNumRefContracts return $langs->trans("NotAvailable"); } } - -/** - * Create a contract document on disk using template defined into CONTRACT_ADDON_PDF - * - * @param DoliDB $db objet base de donnee - * @param Contrat $object Object contract - * @param string $modele force le modele a utiliser ('' par defaut) - * @param Translate $outputlangs objet lang a utiliser pour traduction - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of Contrat class - * @see Contrat::generateDocument() - */ -function contract_pdf_create(DoliDB $db, Contrat $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} diff --git a/htdocs/core/modules/expedition/modules_expedition.php b/htdocs/core/modules/expedition/modules_expedition.php index 335491c0f9d..f46fa33c5f1 100644 --- a/htdocs/core/modules/expedition/modules_expedition.php +++ b/htdocs/core/modules/expedition/modules_expedition.php @@ -141,24 +141,3 @@ abstract class ModelNumRefExpedition return $langs->trans("NotAvailable"); } } - -/** - * Create a document onto disk according to template module. - * - * @param DoliDB $db Objet base de donnee - * @param Expedition $object Object expedition - * @param string $modele Force le modele a utiliser ('' to not force) - * @param Translate $outputlangs Objet lang a utiliser pour traduction - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int 1 if OK -1 if KO - * @deprecated Use the new function generateDocument of Expedition class - * @see Expedition::generateDocument() - */ -function expedition_pdf_create(DoliDB $db, Expedition $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} diff --git a/htdocs/core/modules/facture/modules_facture.php b/htdocs/core/modules/facture/modules_facture.php index 23d55d0aa96..b5d9a2397cc 100644 --- a/htdocs/core/modules/facture/modules_facture.php +++ b/htdocs/core/modules/facture/modules_facture.php @@ -142,26 +142,3 @@ abstract class ModeleNumRefFactures return $langs->trans("NotAvailable"); } } - - -/** - * Create a document onto disk according to template module. - * - * @param DoliDB $db Database handler - * @param Facture $object Object invoice - * @param string $modele Force template to use ('' to not force) - * @param Translate $outputlangs objet lang a utiliser pour traduction - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int <0 if KO, >0 if OK - * @deprecated Use the new function generateDocument of Facture class - * @see Facture::generateDocument() - */ -function facture_pdf_create(DoliDB $db, Facture $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} - diff --git a/htdocs/core/modules/livraison/modules_livraison.php b/htdocs/core/modules/livraison/modules_livraison.php index c3c762cbed1..a433f42930d 100644 --- a/htdocs/core/modules/livraison/modules_livraison.php +++ b/htdocs/core/modules/livraison/modules_livraison.php @@ -144,24 +144,3 @@ abstract class ModeleNumRefDeliveryOrder return $langs->trans("NotAvailable"); } } - - - -/** - * Create object on disk - * - * @param DoliDB $db objet base de donnee - * @param Livraison $object object delivery - * @param string $modele force le modele a utiliser ('' to not force) - * @param Translate $outputlangs objet lang a utiliser pour traduction - * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of Livraison class - * @see Livraison::generateDocument() - */ -function delivery_order_pdf_create(DoliDB $db, Livraison $object, $modele, $outputlangs='') -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs); -} - diff --git a/htdocs/core/modules/project/modules_project.php b/htdocs/core/modules/project/modules_project.php index acc1c2738f4..5f7ef3d5756 100644 --- a/htdocs/core/modules/project/modules_project.php +++ b/htdocs/core/modules/project/modules_project.php @@ -139,26 +139,3 @@ abstract class ModeleNumRefProjects return $langs->trans("NotAvailable"); } } - - -/** - * Create an intervention document on disk using template defined into PROJECT_ADDON_PDF - * - * @param DoliDB $db objet base de donnee - * @param Project $object Object fichinter - * @param string $modele force le modele a utiliser ('' par defaut) - * @param Translate $outputlangs objet lang a utiliser pour traduction - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of Project class - * @see Project::generateDocument() - */ -function project_pdf_create(DoliDB $db, Project $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} - diff --git a/htdocs/core/modules/project/task/modules_task.php b/htdocs/core/modules/project/task/modules_task.php index bea4d342e29..7d14ae12a3e 100644 --- a/htdocs/core/modules/project/task/modules_task.php +++ b/htdocs/core/modules/project/task/modules_task.php @@ -139,27 +139,3 @@ abstract class ModeleNumRefTask return $langs->trans("NotAvailable"); } } - - -/** - * Create an intervention document on disk using template defined into PROJECT_TASK_ADDON_PDF - * - * @param DoliDB $db objet base de donnee - * @param Task $object Object fichinter - * @param string $modele force le modele a utiliser ('' par defaut) - * @param Translate $outputlangs objet lang a utiliser pour traduction - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @param HookManager $hookmanager Hook manager instance - * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of Task class - * @see Task::generateDocument() - */ -function task_pdf_create(DoliDB $db, Task $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0, $hookmanager=false) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref, $hookmanager); -} - diff --git a/htdocs/core/modules/propale/modules_propale.php b/htdocs/core/modules/propale/modules_propale.php index 6c0be15f0df..c2d52923e4f 100644 --- a/htdocs/core/modules/propale/modules_propale.php +++ b/htdocs/core/modules/propale/modules_propale.php @@ -143,26 +143,3 @@ abstract class ModeleNumRefPropales return $langs->trans("NotAvailable"); } } - - -/** - * Create a document onto disk according to template module. - * - * @param DoliDB $db Database handler - * @param Propal $object Object proposal - * @param string $modele Force model to use ('' to not force) - * @param Translate $outputlangs Object langs to use for output - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of Propal class - * @see Propal::generateDocument() - */ -function propale_pdf_create(DoliDB $db, Propal $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} - diff --git a/htdocs/core/modules/societe/modules_societe.class.php b/htdocs/core/modules/societe/modules_societe.class.php index 63208b1369c..0ed5eace2e2 100644 --- a/htdocs/core/modules/societe/modules_societe.class.php +++ b/htdocs/core/modules/societe/modules_societe.class.php @@ -384,80 +384,3 @@ function thirdparty_doc_create(DoliDB $db, Societe $object, $message, $modele, $ return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); } - - -/** - * Create a document for third party - * - * @param DoliDB $db Database handler - * @param Societe $object Object of third party to use - * @param string $message Message - * @param string $modele Force model to use ('' to not force). model can be a model name or a template file. - * @param Translate $outputlangs Object lang to use for translation - * @return int <0 if KO, >0 if OK - */ -/*function thirdparty_doc_create($db, $object, $message, $modele, $outputlangs) -{ - global $conf,$langs,$user; - $langs->load("bills"); - $error=0; - - $dir = DOL_DOCUMENT_ROOT . "/core/modules/societe/doc"; - $srctemplatepath=''; - - // Positionne modele sur le nom du modele a utiliser - if (! dol_strlen($modele)) - { - if (! empty($conf->global->COMPANY_ADDON_PDF)) - { - $modele = $conf->global->COMPANY_ADDON_PDF; - } - else - { - print $langs->trans("Error")." ".$langs->trans("Error_COMPANY_ADDON_PDF_NotDefined"); - return 0; - } - } - - // If selected modele is a filename template (then $modele="modelname:filename") - $tmp=explode(':',$modele,2); - if (! empty($tmp[1])) - { - $modele=$tmp[0]; - $srctemplatepath=$tmp[1]; - } - - // Search template - $file = "doc_".$modele.".modules.php"; - if (file_exists($dir.'/'.$file)) - { - $classname = "doc_".$modele; - require_once $dir.'/'.$file; - - $obj = new $classname($db); - - // We save charset_output to restore it because write_file can change it if needed for - // output format that does not support UTF8. - $sav_charset_output=$outputlangs->charset_output; - if ($obj->write_file($object, $outputlangs, $srctemplatepath) > 0) - { - $outputlangs->charset_output=$sav_charset_output; - - return 1; - } - else - { - $outputlangs->charset_output=$sav_charset_output; - dol_print_error($db,"thirdparty_doc_create Error: ".$obj->error); - return -1; - } - - } - else - { - dol_print_error('',$langs->trans("Error")." ".$langs->trans("ErrorFileDoesNotExists",$dir.'/'.$file)); - return -1; - } -} -*/ - diff --git a/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php b/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php index aebc7aa008a..7762d8ce6a5 100644 --- a/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php +++ b/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php @@ -135,22 +135,3 @@ abstract class ModeleNumRefSuppliersInvoices return $langs->trans("NotAvailable"); } } - -/** - * Create a document onto disk according to template model. - * - * @param DoliDB $db Database handler - * @param Object $object Object supplier invoice - * @param string $modele Force template to use ('' to not force) - * @param Translate $outputlangs Object lang a utiliser pour traduction - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int 0 if KO, 1 if OK - * - */ -function supplier_invoice_pdf_create($db, $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} - diff --git a/htdocs/core/modules/supplier_order/modules_commandefournisseur.php b/htdocs/core/modules/supplier_order/modules_commandefournisseur.php index bd34ca86b20..4bd262d67fb 100644 --- a/htdocs/core/modules/supplier_order/modules_commandefournisseur.php +++ b/htdocs/core/modules/supplier_order/modules_commandefournisseur.php @@ -137,26 +137,3 @@ abstract class ModeleNumRefSuppliersOrders return $langs->trans("NotAvailable"); } } - - -/** - * Create a document onto disk according to template model. - * - * @param DoliDB $db Database handler - * @param CommandeFournisseur $object Object supplier order - * @param string $modele Force template to use ('' to not force) - * @param Translate $outputlangs Object lang to use for traduction - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of CommandeFournisseur class - * @see CommandeFournisseur::generateDocument() - */ -function supplier_order_pdf_create(DoliDB $db, CommandeFournisseur $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} - diff --git a/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php b/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php index 715dc294d91..b324a1b03a8 100644 --- a/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php +++ b/htdocs/core/modules/supplier_proposal/modules_supplier_proposal.php @@ -143,26 +143,3 @@ abstract class ModeleNumRefSupplierProposal return $langs->trans("NotAvailable"); } } - - -/** - * Create a document onto disk according to template module. - * - * @param DoliDB $db Database handler - * @param SupplierProposal $object Object supplier_proposal - * @param string $modele Force model to use ('' to not force) - * @param Translate $outputlangs Object langs to use for output - * @param int $hidedetails Hide details of lines - * @param int $hidedesc Hide description - * @param int $hideref Hide ref - * @return int 0 if KO, 1 if OK - * @deprecated Use the new function generateDocument of SupplierProposal class - * @see SupplierProposal::generateDocument() - */ -function supplier_proposal_pdf_create(DoliDB $db, SupplierProposal $object, $modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) -{ - dol_syslog(__METHOD__ . " is deprecated", LOG_WARNING); - - return $object->generateDocument($modele, $outputlangs, $hidedetails, $hidedesc, $hideref); -} - From 819dc44533503046179eba1ab95e5742164bb0dd Mon Sep 17 00:00:00 2001 From: Ferran Marcet Date: Tue, 17 Jan 2017 10:01:59 +0100 Subject: [PATCH 0148/1163] Fix: Show correct bank account order --- htdocs/societe/rib.php | 74 ++++++++++++++++++++++-------------------- 1 file changed, 38 insertions(+), 36 deletions(-) diff --git a/htdocs/societe/rib.php b/htdocs/societe/rib.php index 8a6a9b87209..8d28f144c78 100644 --- a/htdocs/societe/rib.php +++ b/htdocs/societe/rib.php @@ -5,6 +5,7 @@ * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2013 Peter Fontaine * Copyright (C) 2015-2016 Marcos García + * Copyright (C) 2017 Ferran Marcet * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -94,13 +95,13 @@ if (empty($reshook)) if (! GETPOST('label')) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Label")), null, 'errors'); - $action='update'; + $action='edit'; $error++; } if (! GETPOST('bank')) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("BankName")), null, 'errors'); - $action='update'; + $action='edit'; $error++; } if ($account->needIBAN() == 1) @@ -108,13 +109,13 @@ if (empty($reshook)) if (! GETPOST('iban')) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("IBAN")), null, 'errors'); - $action='update'; + $action='edit'; $error++; } if (! GETPOST('bic')) { setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("BIC")), null, 'errors'); - $action='update'; + $action='edit'; $error++; } } @@ -809,41 +810,42 @@ if ($socid && $action == 'create' && $user->rights->societe->creer) print ''.$langs->trans("Bank").''; print ''; - // BBAN - if ($account->useDetailedBBAN() == 1) - { - print ''.$langs->trans("BankCode").''; - print ''; - print ''; + // Show fields of bank account + foreach ($account->getFieldsToShow(1) as $val) { - print ''.$langs->trans("DeskCode").''; - print ''; + $require=false; + if ($val == 'BankCode') { + $name = 'code_banque'; + $size = 8; + $content = $account->code_banque; + } elseif ($val == 'DeskCode') { + $name = 'code_guichet'; + $size = 8; + $content = $account->code_guichet; + } elseif ($val == 'BankAccountNumber') { + $name = 'number'; + $size = 18; + $content = $account->number; + } elseif ($val == 'BankAccountNumberKey') { + $name = 'cle_rib'; + $size = 3; + $content = $account->cle_rib; + } elseif ($val == 'IBAN') { + $name = 'iban'; + $size = 30; + $content = $account->iban; + if ($account->needIBAN()) $require=true; + } elseif ($val == 'BIC') { + $name = 'bic'; + $size = 12; + $content = $account->bic; + if ($account->needIBAN()) $require=true; + } + + print ''.$langs->trans($val).''; + print ''; print ''; } - if ($account->useDetailedBBAN() == 2) - { - print ''.$langs->trans("BankCode").''; - print ''; - print ''; - } - - print ''.$langs->trans("BankAccountNumber").''; - print ''; - print ''; - - if ($account->useDetailedBBAN() == 1) - { - print ''.$langs->trans("BankAccountNumberKey").''; - print ''; - print ''; - } - - // IBAN - print 'needIBAN()?' class="fieldrequired" ':'').'>'.$langs->trans("IBAN").''; - print ''; - - print 'needIBAN()?' class="fieldrequired" ':'').'>'.$langs->trans("BIC").''; - print ''; print ''.$langs->trans("BankAccountDomiciliation").''; print ''; +print ''; +print $langs->trans("FreeTextOnDonations").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; print ''; print ''; print "\n"; @@ -266,7 +400,7 @@ print ''; if (preg_match('/fr/i',$conf->global->MAIN_INFO_SOCIETE_COUNTRY)) { print '
    '; - print load_fiche_titre($langs->trans("FrenchOptions")); + print load_fiche_titre($langs->trans("FrenchOptions"), '', ''); print ''; print ''; @@ -317,139 +451,6 @@ if (preg_match('/fr/i',$conf->global->MAIN_INFO_SOCIETE_COUNTRY)) print "
    \n"; } -// Document templates -print '
    '; -print load_fiche_titre($langs->trans("DonationsModels")); - -// Defined the template definition table -$type='donation'; -$def = array(); -$sql = "SELECT nom"; -$sql.= " FROM ".MAIN_DB_PREFIX."document_model"; -$sql.= " WHERE type = '".$type."'"; -$resql=$db->query($sql); -if ($resql) -{ - $i = 0; - $num_rows=$db->num_rows($resql); - while ($i < $num_rows) - { - $array = $db->fetch_array($resql); - array_push($def, $array[0]); - $i++; - } -} -else -{ - dol_print_error($db); -} - -print ''; -print ''; -print ''; -print ''; -print ''; -print ''; -print ''; -print ''; -print "\n"; - -clearstatcache(); - -$handle=opendir($dir); - -$var=True; -if (is_resource($handle)) -{ - while (($file = readdir($handle))!==false) - { - if (preg_match('/\.modules\.php$/i',$file)) - { - $var = !$var; - $name = substr($file, 0, dol_strlen($file) -12); - $classname = substr($file, 0, dol_strlen($file) -12); - - require_once $dir.'/'.$file; - $module=new $classname($db); - - // Show modules according to features level - if ($module->version == 'development' && $conf->global->MAIN_FEATURES_LEVEL < 2) continue; - if ($module->version == 'experimental' && $conf->global->MAIN_FEATURES_LEVEL < 1) continue; - - if ($module->isEnabled()) - { - print ''; - print ''; - - // Active - if (in_array($name, $def)) - { - if ($conf->global->DON_ADDON_MODEL == $name) - { - print "'; - } - else - { - print "'; - } - } - else - { - print ""; - } - - // Default - if ($conf->global->DON_ADDON_MODEL == "$name") - { - print "'; - } - else - { - print "'; - } - - // Info - $htmltooltip = ''.$langs->trans("Name").': '.$module->name; - $htmltooltip.='
    '.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); - if ($module->type == 'pdf') - { - $htmltooltip.='
    '.$langs->trans("Width").'/'.$langs->trans("Height").': '.$module->page_largeur.'/'.$module->page_hauteur; - } - $htmltooltip.='

    '.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='
    '.$langs->trans("Logo").': '.yn($module->option_logo,1,1); - $htmltooltip.='
    '.$langs->trans("MultiLanguage").': '.yn($module->option_multilang,1,1); - print ''; - - // Preview - print ''; - - print "\n"; - } - } - } - closedir($handle); -} - -print '
    '.$langs->trans("Name").''.$langs->trans("Description").''.$langs->trans("Activated").''.$langs->trans("Default").''.$langs->trans("ShortInfo").''.$langs->trans("Preview").'
    '; - echo $module->name; - print ''; - print $module->description; - print '\n"; - print img_picto($langs->trans("Enabled"),'switch_on'); - print '\n"; - print 'scandir.'&label='.urlencode($module->name).'">'.img_picto($langs->trans("Enabled"),'switch_on').''; - print '\n"; - print 'scandir.'&label='.urlencode($module->name).'">'.img_picto($langs->trans("Disabled"),'switch_off').''; - print ""; - print img_picto($langs->trans("Default"),'on'); - print '"; - print 'scandir.'&label='.urlencode($module->name).'" alt="'.$langs->trans("Default").'">'.img_picto($langs->trans("Disabled"),'off').''; - print ''; - print $form->textwithpicto('',$htmltooltip,-1,0); - print ''; - print ''.img_object($langs->trans("Preview"),'generic').''; - print '
    '; - llxFooter(); $db->close(); From 2dfced366ea0c7dc038ecf36312437b0c6db082a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Feb 2017 20:11:06 +0100 Subject: [PATCH 0208/1163] NEW #2763 Go to document block after clicking in Generate document button Close #2763 --- htdocs/comm/propal/card.php | 2 +- htdocs/commande/card.php | 54 +++------------------------- htdocs/core/actions_builddoc.inc.php | 3 ++ htdocs/fichinter/card.php | 48 +++---------------------- 4 files changed, 14 insertions(+), 93 deletions(-) diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php index 9b416fd1457..8455f7f8920 100644 --- a/htdocs/comm/propal/card.php +++ b/htdocs/comm/propal/card.php @@ -2398,7 +2398,7 @@ if ($action == 'create') if ($action != 'presend') { print '
    '; - + print ''; // ancre /* * Documents generes */ diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index 26d4d4822e2..f7917b13839 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -1187,54 +1187,10 @@ if (empty($reshook)) } } - if ($action == 'builddoc') // In get or post - { - // Save last template used to generate document - if (GETPOST('model')) - $object->setDocModel($user, GETPOST('model', 'alpha')); - if (GETPOST('fk_bank')) { // this field may come from an external module - $object->fk_bank = GETPOST('fk_bank'); - } else { - $object->fk_bank = $object->fk_account; - } - - // Define output language - $outputlangs = $langs; - $newlang = ''; - if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id'])) - $newlang = $_REQUEST['lang_id']; - if ($conf->global->MAIN_MULTILANGS && empty($newlang)) - $newlang = $object->thirdparty->default_lang; - if (! empty($newlang)) { - $outputlangs = new Translate("", $conf); - $outputlangs->setDefaultLang($newlang); - } - $result = $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); - if ($result <= 0) - { - setEventMessages($object->error, $object->errors, 'errors'); - $action=''; - } - } - - // Remove file in doc form - if ($action == 'remove_file') - { - if ($object->id > 0) - { - require_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; - - $langs->load("other"); - $upload_dir = $conf->commande->dir_output; - $file = $upload_dir . '/' . GETPOST('file'); - $ret = dol_delete_file($file, 0, 0, 0, $object); - if ($ret) - setEventMessages($langs->trans("FileWasRemoved", GETPOST('file')), null, 'mesgs'); - else - setEventMessages($langs->trans("ErrorFailToDeleteFile", GETPOST('file')), null, 'errors'); - $action = ''; - } - } + // Actions to build doc + $upload_dir = $conf->commande->dir_output; + $permissioncreate = $user->rights->commande->creer; + include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; if ($action == 'update_extras') { @@ -2606,7 +2562,7 @@ if ($action == 'create' && $user->rights->commande->creer) if ($action != 'presend') { print '
    '; - + print ''; // ancre // Documents $comref = dol_sanitizeFileName($object->ref); $file = $conf->commande->dir_output . '/' . $comref . '/' . $comref . '.pdf'; diff --git a/htdocs/core/actions_builddoc.inc.php b/htdocs/core/actions_builddoc.inc.php index 5984283b996..dc91cbd0404 100644 --- a/htdocs/core/actions_builddoc.inc.php +++ b/htdocs/core/actions_builddoc.inc.php @@ -91,6 +91,9 @@ if ($action == 'builddoc' && $permissioncreate) else { setEventMessages($langs->trans("FileGenerated"), null); + + header('Location: '.$_SERVER['REQUEST_URI'].'#builddoc'); + die; } } } diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index 4ed3ecb7cef..39075022422 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -438,49 +438,6 @@ if (empty($reshook)) } } - /* - * Build doc - */ - else if ($action == 'builddoc' && $user->rights->ficheinter->creer) // En get ou en post - { - $object->fetch_lines(); - - // Save last template used to generate document - if (GETPOST('model')) $object->setDocModel($user, GETPOST('model','alpha')); - - // Define output language - $outputlangs = $langs; - $newlang=''; - if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id','alpha')) $newlang=GETPOST('lang_id','alpha'); - if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang=$object->thirdparty->default_lang; - if (! empty($newlang)) - { - $outputlangs = new Translate("",$conf); - $outputlangs->setDefaultLang($newlang); - } - $result=fichinter_create($db, $object, GETPOST('model','alpha'), $outputlangs); - if ($result <= 0) - { - dol_print_error($db,$result); - exit; - } - } - - // Remove file in doc form - else if ($action == 'remove_file') - { - require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; - - $object->fetch_thirdparty(); - - $langs->load("other"); - $upload_dir = $conf->ficheinter->dir_output; - $file = $upload_dir . '/' . GETPOST('file'); - $ret=dol_delete_file($file,0,0,0,$object); - if ($ret) setEventMessages($langs->trans("FileWasRemoved", GETPOST('urlfile')), null, 'mesgs'); - else setEventMessages($langs->trans("ErrorFailToDeleteFile", GETPOST('urlfile')), null, 'errors'); - } - // Set into a project else if ($action == 'classin' && $user->rights->ficheinter->creer) { @@ -797,6 +754,11 @@ if (empty($reshook)) if ($error) $action = 'edit_extras'; } + // Actions to build doc + $upload_dir = $conf->ficheinter->dir_output; + $upload_dir = $conf->ficheinter->dir_output; + include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; + if (! empty($conf->global->MAIN_DISABLE_CONTACTS_TAB) && $user->rights->ficheinter->creer) { if ($action == 'addcontact') From 62a0c5be733ca5b5528406bd3449fa9f91bda058 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20Garci=CC=81a=20de=20La=20Fuente?= Date: Fri, 3 Feb 2017 20:12:26 +0100 Subject: [PATCH 0209/1163] Little correction --- htdocs/fichinter/card.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php index 39075022422..5e1b536cf40 100644 --- a/htdocs/fichinter/card.php +++ b/htdocs/fichinter/card.php @@ -756,7 +756,7 @@ if (empty($reshook)) // Actions to build doc $upload_dir = $conf->ficheinter->dir_output; - $upload_dir = $conf->ficheinter->dir_output; + $permissioncreate = $user->rights->ficheinter->creer; include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php'; if (! empty($conf->global->MAIN_DISABLE_CONTACTS_TAB) && $user->rights->ficheinter->creer) From f75bd1ac44d880f465f806084b7acfc56de4e573 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 4 Feb 2017 11:02:10 +0100 Subject: [PATCH 0210/1163] Doxygen for javascript functions file. --- htdocs/core/js/lib_head.js.php | 92 +++++++++++++++++++++------------- 1 file changed, 57 insertions(+), 35 deletions(-) diff --git a/htdocs/core/js/lib_head.js.php b/htdocs/core/js/lib_head.js.php index bfcfd74811a..3093fc6afe2 100644 --- a/htdocs/core/js/lib_head.js.php +++ b/htdocs/core/js/lib_head.js.php @@ -565,28 +565,6 @@ function urlencode(s) { } -/* - * ================================================================= - * Purpose: Show a popup HTML page. - * Input: url,title - * Author: Laurent Destailleur - * Licence: GPL - * ================================================================== - */ -function newpopup(url,title) { - var argv = newpopup.arguments; - var argc = newpopup.arguments.length; - tmp=url; - var l = (argc > 2) ? argv[2] : 600; - var h = (argc > 3) ? argv[3] : 400; - var left = (screen.width - l)/2; - var top = (screen.height - h)/2; - var wfeatures = "directories=0,menubar=0,status=0,resizable=0,scrollbars=1,toolbar=0,width=" + l +",height=" + h + ",left=" + left + ",top=" + top; - fen=window.open(tmp,title,wfeatures); - return false; -} - - /* * ================================================================= * Purpose: @@ -656,7 +634,13 @@ function hideMessage(fieldId,message) { /* - * Used by button to set on/off + * Used by button to set on/off + * + * @param string url Url + * @param string code Code + * @param string intput Input + * @param int entity Entity + * @param int strict Strict */ function setConstant(url, code, input, entity, strict) { $.get( url, { @@ -714,7 +698,13 @@ function setConstant(url, code, input, entity, strict) { } /* - * Used by button to set on/off + * Used by button to set on/off + * + * @param string url Url + * @param string code Code + * @param string intput Input + * @param int entity Entity + * @param int strict Strict */ function delConstant(url, code, input, entity, strict) { $.get( url, { @@ -768,7 +758,17 @@ function delConstant(url, code, input, entity, strict) { } /* - * Used by button to set on/off + * Used by button to set on/off + * + * @param string action Action + * @param string url Url + * @param string code Code + * @param string intput Input + * @param string box Box + * @param int entity Entity + * @param int yesButton yesButton + * @param int noButton noButton + * @param int strict Strict */ function confirmConstantAction(action, url, code, input, box, entity, yesButton, noButton, strict) { var boxConfirm = box; @@ -931,7 +931,7 @@ function confirmConstantAction(action, url, code, input, box, entity, yesButton, })( jQuery ); -/* +/** * Function to output a dialog bog for copy/paste * * @param string text Text to put into copy/paste area @@ -949,16 +949,38 @@ function copyToClipboard(text,text2) } -/* - * Function show document preview +/** + * Show a popup HTML page. Use the "window.open" function. + * + * @param string url Url + * @param string title Title of popup + * @return boolean False + * @see document_preview + */ +function newpopup(url,title) { + var argv = newpopup.arguments; + var argc = newpopup.arguments.length; + tmp=url; + var l = (argc > 2) ? argv[2] : 600; + var h = (argc > 3) ? argv[3] : 400; + var left = (screen.width - l)/2; + var top = (screen.height - h)/2; + var wfeatures = "directories=0,menubar=0,status=0,resizable=0,scrollbars=1,toolbar=0,width=" + l +",height=" + h + ",left=" + left + ",top=" + top; + fen=window.open(tmp,title,wfeatures); + return false; +} + +/** + * Function show document preview. Use the "dialog" function. * - * @params string file File path - * @params string type mime file - * @params string title + * @param string file File path + * @param string type Mime file type + * @param string title Title of popup + * @return void + * @see newpopup */ function document_preview(file, type, title) { - console.log("document_preview A click was done"); var ValidImageTypes = ["image/gif", "image/jpeg", "image/png"]; console.log("document_preview A click was done. file="+file+", type="+type); @@ -1026,6 +1048,7 @@ function getParameterByName(name, valueifnotfound) return results === null ? valueifnotfound : decodeURIComponent(results[1].replace(/\+/g, " ")); } + // Code in the public domain from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/round (function() { /** @@ -1082,8 +1105,8 @@ function dolroundjs(number, decimals) { return +(Math.round(number + "e+" + deci /** * Function similar to PHP price2num() * - * @param {number|string} amount The amount to convert/clean - * @returns {string} The amount in universal numeric format (Example: '99.99999') + * @param {number|string} amount The amount to convert/clean + * @return {string} The amount in universal numeric format (Example: '99.99999') * @todo Implement rounding parameter */ function price2numjs(amount) { @@ -1128,6 +1151,5 @@ function price2numjs(amount) { console.log("res="+res) return res; } - From 64501545533152989c9aad8ef624b5c478f7aba8 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 4 Feb 2017 11:21:49 +0100 Subject: [PATCH 0211/1163] Removed useless table-tr-td --- htdocs/ecm/index.php | 25 +++++++++---------------- htdocs/ecm/index_auto.php | 24 +++++++++--------------- htdocs/theme/eldy/style.css.php | 4 ++++ htdocs/theme/md/style.css.php | 4 ++++ 4 files changed, 26 insertions(+), 31 deletions(-) diff --git a/htdocs/ecm/index.php b/htdocs/ecm/index.php index 18157ee60ba..1e852f55791 100644 --- a/htdocs/ecm/index.php +++ b/htdocs/ecm/index.php @@ -380,7 +380,7 @@ $moreheadjs=empty($conf->use_javascript_ajax)?"":" , north__paneSelector: \"#ecm-layout-north\" , west__paneSelector: \"#ecm-layout-west\" , resizable: true - , north__size: 36 + , north__size: 37 /* 2 are removed by js */ , north__resizable: false , north__closable: false , west__size: 340 @@ -509,24 +509,17 @@ if (empty($action) || $action == 'file_manager' || preg_match('/refresh/i',$acti // Root of manual section - print ''; - print ''; - print ''; + print ''; - print '
    '; - print img_picto_common('','treemenu/base.gif'); - print ''; + print '
    '; + print img_picto_common('','treemenu/base.gif','class="inline-block valignmiddle"'); $txt=$langs->trans("ECMRoot").' ('.$langs->trans("ECMSectionsManual").')'; print $form->textwithpicto($txt, $htmltooltip, 1, 'info'); print '
    '; - print ''; - print ''; - print ' '; - //print ''.img_edit_add().''; - print ' '; - print ' '; - print ''; - //print $form->textwithpicto('',$htmltooltip,1,"info"); - print ''; + print ''; + print ' '; + print ' '; + print ' '; + print ''; print ''; if (! empty($conf->use_javascript_ajax) && empty($conf->global->MAIN_ECM_DISABLE_JS)) diff --git a/htdocs/ecm/index_auto.php b/htdocs/ecm/index_auto.php index 5119c66194a..b90f306fa2f 100644 --- a/htdocs/ecm/index_auto.php +++ b/htdocs/ecm/index_auto.php @@ -373,7 +373,7 @@ $moreheadjs=empty($conf->use_javascript_ajax)?"":" , north__paneSelector: \"#ecm-layout-north\" , west__paneSelector: \"#ecm-layout-west\" , resizable: true - , north__size: 36 + , north__size: 37 /* 2 are removed by js */ , north__resizable: false , north__closable: false , west__size: 340 @@ -495,23 +495,17 @@ if (empty($action) || $action == 'file_manager' || preg_match('/refresh/i',$acti $htmltooltip=$langs->trans("ECMAreaDesc2"); // Root title line (Automatic section) - print ''; - print ''; - print ''; - print ''; + print ''; - print '
    '; - print img_picto_common('','treemenu/base.gif'); - print ''; + print '
    '; + print img_picto_common('','treemenu/base.gif','class="inline-block valignmiddle"'); $txt=$langs->trans("ECMRoot").' ('.$langs->trans("ECMSectionsAuto").')'; print $form->textwithpicto($txt, $htmltooltip, 1, 0); print '
    '; - print ''; - print ' '; - print ' '; - print ' '; - print ' '; - print ''; - print ''; + print ' '; + print ' '; + print ' '; + print ' '; + print ''; print ''; $sectionauto=dol_sort_array($sectionauto,'label','ASC',true,false); diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 354013e7ea3..1bb11a910d7 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -1772,6 +1772,10 @@ td.photo { /* Toolbar for ECM or Filemanager */ /* ============================================================================== */ +td.ecmroot { + padding-bottom: 0 !important; +} + .largebutton { background-image: -o-linear-gradient(bottom, rgba(200,200,200,0.1) 0%, rgba(255,255,255,0.3) 120%) !important; background-image: -moz-linear-gradient(bottom, rgba(200,200,200,0.1) 0%, rgba(255,255,255,0.3) 120%) !important; diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 473ea8e243b..9b640669cd4 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -1752,6 +1752,10 @@ td.photo { /* Toolbar for ECM or Filemanager */ /* ============================================================================== */ +td.ecmroot { + padding-bottom: 0 !important; +} + .largebutton { background-image: -o-linear-gradient(bottom, rgba(200,200,200,0.1) 0%, rgba(255,255,255,0.3) 120%) !important; background-image: -moz-linear-gradient(bottom, rgba(200,200,200,0.1) 0%, rgba(255,255,255,0.3) 120%) !important; From f9c510f4fb5f15e2e9b0ed723e1d23c659ffe5ae Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 4 Feb 2017 11:34:29 +0100 Subject: [PATCH 0212/1163] More complete translation --- htdocs/langs/en_US/admin.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 2cb646dd9fa..202618b7b43 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -418,7 +418,7 @@ WarningPHPMail=WARNING: Some email providers (like Yahoo) does not allow you to # Modules Module0Name=Users & groups -Module0Desc=Users and groups management +Module0Desc=Users / Employees and Groups management Module1Name=Third parties Module1Desc=Companies and contact management (customers, prospects...) Module2Name=Commercial From a673afe601615213c161a5291364f083b2ba4ee5 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 4 Feb 2017 14:16:17 +0100 Subject: [PATCH 0213/1163] NEW Description of feature of a module into a dedicated popup --- htdocs/admin/modulehelp.php | 522 ++++++++++++++++++++++++++ htdocs/admin/modules.php | 350 ++++++++--------- htdocs/core/class/html.form.class.php | 4 +- htdocs/core/js/lib_head.js.php | 4 +- htdocs/main.inc.php | 20 +- 5 files changed, 714 insertions(+), 186 deletions(-) create mode 100644 htdocs/admin/modulehelp.php diff --git a/htdocs/admin/modulehelp.php b/htdocs/admin/modulehelp.php new file mode 100644 index 00000000000..eca82b5abbd --- /dev/null +++ b/htdocs/admin/modulehelp.php @@ -0,0 +1,522 @@ + + * Copyright (C) 2003 Jean-Louis Bergamo + * Copyright (C) 2004-2017 Laurent Destailleur + * Copyright (C) 2004 Eric Seigne + * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2011 Juanjo Menent + * Copyright (C) 2015 Jean-François Ferry + * Copyright (C) 2015 Raphaël Doursenaud + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \file htdocs/admin/modules.php + * \brief Page to activate/disable all modules + */ + +//if (! defined('NOREQUIREUSER')) define('NOREQUIREUSER','1'); +//if (! defined('NOREQUIREDB')) define('NOREQUIREDB','1'); +//if (! defined('NOREQUIRESOC')) define('NOREQUIRESOC','1'); +//if (! defined('NOREQUIRETRAN')) define('NOREQUIRETRAN','1'); +//if (! defined('NOCSRFCHECK')) define('NOCSRFCHECK','1'); // Do not check anti CSRF attack test +//if (! defined('NOSTYLECHECK')) define('NOSTYLECHECK','1'); // Do not check style html tag into posted data +//if (! defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL','1'); // Do not check anti POST attack test +if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU','1'); // If there is no need to load and show top and left menu +//if (! defined('NOREQUIREHTML')) define('NOREQUIREHTML','1'); // If we don't need to load the html.form.class.php +//if (! defined('NOREQUIREAJAX')) define('NOREQUIREAJAX','1'); +//if (! defined("NOLOGIN")) define("NOLOGIN",'1'); // If this page is public (can be called outside logged session) + +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/functions2.lib.php'; + +$langs->load("errors"); +$langs->load("admin"); + +$mode=GETPOST('mode', 'alpha')?GETPOST('mode', 'alpha'):0; +$action=GETPOST('action','alpha'); +$id = GETPOST('id', 'int'); + +if (! $user->admin) + accessforbidden(); + + + +/* + * Actions + */ + +// Nothing + + +/* + * View + */ + +$form = new Form($db); + +$help_url='EN:First_setup|FR:Premiers_paramétrages|ES:Primeras_configuraciones'; +llxHeader('',$langs->trans("Setup"),$help_url); + +print ''."\n".''; + +$arrayofnatures=array('core'=>$langs->transnoentitiesnoconv("Core"), 'external'=>$langs->transnoentitiesnoconv("External").' - '.$langs->trans("AllPublishers")); + +// Search modules dirs +$modulesdir = dolGetModulesDirs(); + + +$filename = array(); +$modules = array(); +$orders = array(); +$categ = array(); +$dirmod = array(); +$i = 0; // is a sequencer of modules found +$j = 0; // j is module number. Automatically affected if module number not defined. +$modNameLoaded=array(); + +foreach ($modulesdir as $dir) +{ + // Load modules attributes in arrays (name, numero, orders) from dir directory + //print $dir."\n
    "; + dol_syslog("Scan directory ".$dir." for module descriptor files (modXXX.class.php)"); + $handle=@opendir($dir); + if (is_resource($handle)) + { + while (($file = readdir($handle))!==false) + { + //print "$i ".$file."\n
    "; + if (is_readable($dir.$file) && substr($file, 0, 3) == 'mod' && substr($file, dol_strlen($file) - 10) == '.class.php') + { + $modName = substr($file, 0, dol_strlen($file) - 10); + + if ($modName) + { + if (! empty($modNameLoaded[$modName])) + { + $mesg="Error: Module ".$modName." was found twice: Into ".$modNameLoaded[$modName]." and ".$dir.". You probably have an old file on your disk.
    "; + setEventMessages($mesg, null, 'warnings'); + dol_syslog($mesg, LOG_ERR); + continue; + } + + try + { + $res=include_once $dir.$file; + if (class_exists($modName)) + { + try { + $objMod = new $modName($db); + $modNameLoaded[$modName]=$dir; + + if (! $objMod->numero > 0 && $modName != 'modUser') + { + dol_syslog('The module descriptor '.$modName.' must have a numero property', LOG_ERR); + } + $j = $objMod->numero; + + $modulequalified=1; + + // We discard modules according to features level (PS: if module is activated we always show it) + $const_name = 'MAIN_MODULE_'.strtoupper(preg_replace('/^mod/i','',get_class($objMod))); + if ($objMod->version == 'development' && (empty($conf->global->$const_name) && ($conf->global->MAIN_FEATURES_LEVEL < 2))) $modulequalified=0; + if ($objMod->version == 'experimental' && (empty($conf->global->$const_name) && ($conf->global->MAIN_FEATURES_LEVEL < 1))) $modulequalified=0; + if (preg_match('/deprecated/', $objMod->version) && (empty($conf->global->$const_name) && ($conf->global->MAIN_FEATURES_LEVEL >= 0))) $modulequalified=0; + + // We discard modules according to property disabled + if (! empty($objMod->hidden)) $modulequalified=0; + + if ($modulequalified > 0) + { + $publisher=dol_escape_htmltag($objMod->getPublisher()); + $external=($objMod->isCoreOrExternalModule() == 'external'); + if ($external) + { + if ($publisher) + { + $arrayofnatures['external_'.$publisher]=$langs->trans("External").' - '.$publisher; + } + else + { + $arrayofnatures['external_']=$langs->trans("External").' - '.$langs->trans("UnknownPublishers"); + } + } + ksort($arrayofnatures); + } + + // Define array $categ with categ with at least one qualified module + if ($modulequalified > 0) + { + $modules[$i] = $objMod; + $filename[$i]= $modName; + + $special = $objMod->special; + + // Gives the possibility to the module, to provide his own family info and position of this family + if (is_array($objMod->familyinfo) && !empty($objMod->familyinfo)) { + $familyinfo = array_merge($familyinfo, $objMod->familyinfo); + $familykey = key($objMod->familyinfo); + } else { + $familykey = $objMod->family; + } + + $moduleposition = ($objMod->module_position?$objMod->module_position:'500'); + if ($moduleposition == 500 && ($objMod->isCoreOrExternalModule() == 'external')) + { + $moduleposition = 800; + } + + if ($special == 1) $familykey='interface'; + + $orders[$i] = $familyinfo[$familykey]['position']."_".$familykey."_".$moduleposition."_".$j; // Sort by family, then by module position then number + $dirmod[$i] = $dir; + //print $i.'-'.$dirmod[$i].'
    '; + // Set categ[$i] + $specialstring = isset($specialtostring[$special])?$specialtostring[$special]:'unknown'; + if ($objMod->version == 'development' || $objMod->version == 'experimental') $specialstring='expdev'; + if (isset($categ[$specialstring])) $categ[$specialstring]++; // Array of all different modules categories + else $categ[$specialstring]=1; + $j++; + $i++; + } + else dol_syslog("Module ".get_class($objMod)." not qualified"); + } + catch(Exception $e) + { + dol_syslog("Failed to load ".$dir.$file." ".$e->getMessage(), LOG_ERR); + } + } + else + { + print "Warning bad descriptor file : ".$dir.$file." (Class ".$modName." not found into file)
    "; + } + } + catch(Exception $e) + { + dol_syslog("Failed to load ".$dir.$file." ".$e->getMessage(), LOG_ERR); + } + } + } + } + closedir($handle); + } + else + { + dol_syslog("htdocs/admin/modulehelp.php: Failed to open directory ".$dir.". See permission and open_basedir option.", LOG_WARNING); + } +} + +asort($orders); +//var_dump($orders); +//var_dump($categ); +//var_dump($modules); + + + +$h = 0; + +$categidx='desc'; // Main +$head[$h][0] = DOL_URL_ROOT."/admin/modulehelp.php?id=".$id.'&mode=desc'; +$head[$h][1] = $langs->trans("Description"); +$head[$h][2] = 'desc'; +$h++; + +/*$categidx='feature'; +$head[$h][0] = DOL_URL_ROOT."/admin/modulehelp.php?id=".$id.'&mode=feature'; +$head[$h][1] = $langs->trans("Features"); +$head[$h][2] = 'feature'; +$h++;*/ + + +$i=0; +foreach($orders as $tmpkey => $tmpvalue) +{ + $objMod = $modules[$tmpkey]; + if ($objMod->numero == $id) + { + $key = $i; + break; + } + $i++; +} +$value = $orders[$key]; + + +print '
    '; + + +print load_fiche_titre($objMod->getDesc(),$moreinfo,'object_'.$objMod->picto); +print '
    '; + +dol_fiche_head($head, $mode, $title); + + + +$tab=explode('_',$value); +$familyposition=$tab[0]; $familykey=$tab[1]; $module_position=$tab[2]; $numero=$tab[3]; + +$modName = $filename[$key]; +$objMod = $modules[$key]; +$dirofmodule = $dirmod[$key]; + +$special = $objMod->special; + +if (! $objMod->getName()) +{ + dol_syslog("Error for module ".$key." - Property name of module looks empty", LOG_WARNING); + continue; +} + +$const_name = 'MAIN_MODULE_'.strtoupper(preg_replace('/^mod/i','',get_class($objMod))); + +// Check filters +$modulename=$objMod->getName(); +$moduledesc=$objMod->getDesc(); +$moduledesclong=$objMod->getDescLong(); +$moduleauthor=$objMod->getPublisher(); + +// We discard showing according to filters +if ($search_keyword) +{ + $qualified=0; + if (preg_match('/'.preg_quote($search_keyword).'/i', $modulename) + || preg_match('/'.preg_quote($search_keyword).'/i', $moduledesc) + || preg_match('/'.preg_quote($search_keyword).'/i', $moduledesclong) + || preg_match('/'.preg_quote($search_keyword).'/i', $moduleauthor) + ) $qualified=1; + if (! $qualified) continue; +} +if ($search_status) +{ + if ($search_status == 'active' && empty($conf->global->$const_name)) continue; + if ($search_status == 'disabled' && ! empty($conf->global->$const_name)) continue; +} +if ($search_nature) +{ + if (preg_match('/^external/',$search_nature) && $objMod->isCoreOrExternalModule() != 'external') continue; + if (preg_match('/^external_(.*)$/',$search_nature, $reg)) + { + //print $reg[1].'-'.dol_escape_htmltag($objMod->getPublisher()); + $publisher=dol_escape_htmltag($objMod->getPublisher()); + if ($reg[1] && dol_escape_htmltag($reg[1]) != $publisher) continue; + if (! $reg[1] && ! empty($publisher)) continue; + } + if ($search_nature == 'core' && $objMod->isCoreOrExternalModule() == 'external') continue; +} +if ($search_version) +{ + if (($objMod->version == 'development' || $objMod->version == 'experimental' || preg_match('/deprecated/', $objMod->version)) && $search_version == 'stable') continue; + if ($objMod->version != 'development' && ($search_version == 'development')) continue; + if ($objMod->version != 'experimental' && ($search_version == 'experimental')) continue; + if (! preg_match('/deprecated/', $objMod->version) && ($search_version == 'deprecated')) continue; +} + +// Load all lang files of module +if (isset($objMod->langfiles) && is_array($objMod->langfiles)) +{ + foreach($objMod->langfiles as $domain) + { + $langs->load($domain); + } +} + +$var=!$var; + + +// Version (with picto warning or not) +$version=$objMod->getVersion(0); +$versiontrans=''; +if (preg_match('/development/i', $version)) $versiontrans.=img_warning($langs->trans("Development"), 'style="float: left"'); +if (preg_match('/experimental/i', $version)) $versiontrans.=img_warning($langs->trans("Experimental"), 'style="float: left"'); +if (preg_match('/deprecated/i', $version)) $versiontrans.=img_warning($langs->trans("Deprecated"), 'style="float: left"'); +$versiontrans.=$objMod->getVersion(1); + +// Define imginfo +$imginfo="info"; +if ($objMod->isCoreOrExternalModule() == 'external') +{ + $imginfo="info_black"; +} + +// Define text of description of module +$text=''; + +if ($objMod->getDescLong()) $text.=$objMod->getDesc().'
    '; + +$text.='
    '.$langs->trans("Version").': '.$version; + +$textexternal=''; +if ($objMod->isCoreOrExternalModule() == 'external') +{ + $textexternal.='
    '.$langs->trans("Origin").': '.$langs->trans("ExternalModule",$dirofmodule); + if ($objMod->editor_name != 'dolibarr') $textexternal.='
    '.$langs->trans("Publisher").': '.(empty($objMod->editor_name)?$langs->trans("Unknown"):$objMod->editor_name); + if (! empty($objMod->editor_url) && ! preg_match('/dolibarr\.org/i',$objMod->editor_url)) $textexternal.='
    '.$langs->trans("Url").': '.$objMod->editor_url; + $text.=$textexternal; + $text.='
    '; +} +else +{ + $text.='
    '.$langs->trans("Origin").': '.$langs->trans("Core").'
    '; +} +$text.='
    '.$langs->trans("LastActivationDate").': '; +if (! empty($conf->global->$const_name)) $text.=dol_print_date($objMod->getLastActivationDate(), 'dayhour'); +else $text.=$langs->trans("Disabled"); +$text.='
    '; + +$text.='
    '.$langs->trans("AddRemoveTabs").': '; +if (isset($objMod->tabs) && is_array($objMod->tabs) && count($objMod->tabs)) +{ + $i=0; + foreach($objMod->tabs as $val) + { + $tmp=explode(':',$val,3); + $text.=($i?', ':'').$tmp[0].':'.$tmp[1]; + $i++; + } +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddDictionaries").': '; +if (isset($objMod->dictionaries) && isset($objMod->dictionaries['tablib']) && is_array($objMod->dictionaries['tablib']) && count($objMod->dictionaries['tablib'])) +{ + $i=0; + foreach($objMod->dictionaries['tablib'] as $val) + { + $text.=($i?', ':'').$val; + $i++; + } +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddBoxes").': '; +if (isset($objMod->boxes) && is_array($objMod->boxes) && count($objMod->boxes)) +{ + $i=0; + foreach($objMod->boxes as $val) + { + $text.=($i?', ':'').($val['file']?$val['file']:$val[0]); + $i++; + } +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddModels").': '; +if (isset($objMod->module_parts) && isset($objMod->module_parts['models']) && $objMod->module_parts['models']) +{ + $text.=$langs->trans("Yes"); +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddSubstitutions").': '; +if (isset($objMod->module_parts) && isset($objMod->module_parts['substitutions']) && $objMod->module_parts['substitutions']) +{ + $text.=$langs->trans("Yes"); +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddSheduledJobs").': '; +if (isset($objMod->cronjobs) && is_array($objMod->cronjobs) && count($objMod->cronjobs)) +{ + $i=0; + foreach($objMod->cronjobs as $val) + { + $text.=($i?', ':'').($val['label']); + $i++; + } +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddTriggers").': '; +if (isset($objMod->module_parts) && isset($objMod->module_parts['triggers']) && $objMod->module_parts['triggers']) +{ + $text.=$langs->trans("Yes"); +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddHooks").': '; +if (isset($objMod->module_parts) && is_array($objMod->module_parts['hooks']) && count($objMod->module_parts['hooks'])) +{ + $i=0; + foreach($objMod->module_parts['hooks'] as $val) + { + $text.=($i?', ':'').($val); + $i++; + } +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddPermissions").': '; +if (isset($objMod->rights) && is_array($objMod->rights) && count($objMod->rights)) +{ + $i=0; + foreach($objMod->rights as $val) + { + $text.=($i?', ':'').($val[1]); + $i++; + } +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddMenus").': '; +if (isset($objMod->menu) && ! empty($objMod->menu)) // objMod can be an array or just an int 1 +{ + $text.=$langs->trans("Yes"); +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddExportProfiles").': '; +if (isset($objMod->export_label) && is_array($objMod->export_label) && count($objMod->export_label)) +{ + $i=0; + foreach($objMod->export_label as $val) + { + $text.=($i?', ':'').($val); + $i++; + } +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddImportProfiles").': '; +if (isset($objMod->import_label) && is_array($objMod->import_label) && count($objMod->import_label)) +{ + $i=0; + foreach($objMod->import_label as $val) + { + $text.=($i?', ':'').($val); + $i++; + } +} +else $text.=$langs->trans("No"); + +$text.='
    '.$langs->trans("AddOtherPagesOrServices").': '; +$text.=$langs->trans("DetectionNotPossible"); + +print $text; + + + +dol_fiche_end(); + +print '
    '; + + +llxFooter(); + +$db->close(); diff --git a/htdocs/admin/modules.php b/htdocs/admin/modules.php index ad33b4ce619..b61e5a4a86e 100644 --- a/htdocs/admin/modules.php +++ b/htdocs/admin/modules.php @@ -1,7 +1,7 @@ * Copyright (C) 2003 Jean-Louis Bergamo - * Copyright (C) 2004-2016 Laurent Destailleur + * Copyright (C) 2004-2017 Laurent Destailleur * Copyright (C) 2004 Eric Seigne * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2011 Juanjo Menent @@ -313,7 +313,7 @@ if ($mode != 'marketplace') print ''; dol_fiche_head($head, $mode, ''); - + $moreforfilter = ''; $moreforfilter.='
    '; $moreforfilter.= $langs->trans('Keyword') . ': '; @@ -354,7 +354,6 @@ if ($mode != 'marketplace') //dol_fiche_end(); print '

    '; - //print '



    '; $moreforfilter=''; @@ -440,8 +439,6 @@ if ($mode != 'marketplace') } // Print a separator if we change family - //print "xx".$oldfamily."-".$familykey."-".$atleastoneforfamily."
    "; - //if ($oldfamily && $familykey!=$oldfamily && $atleastoneforfamily) { if ($familykey!=$oldfamily) { print ''."\n"; @@ -452,7 +449,6 @@ if ($mode != 'marketplace') print ''.$langs->trans("SetupShort").''."\n"; print "\n"; $atleastoneforfamily=0; - //print "yy".$oldfamily."-".$familykey."-".$atleastoneforfamily."
    "; } $atleastoneforfamily++; @@ -465,6 +461,178 @@ if ($mode != 'marketplace') $var=!$var; + + // Version (with picto warning or not) + $version=$objMod->getVersion(0); + $versiontrans=''; + if (preg_match('/development/i', $version)) $versiontrans.=img_warning($langs->trans("Development"), 'style="float: left"'); + if (preg_match('/experimental/i', $version)) $versiontrans.=img_warning($langs->trans("Experimental"), 'style="float: left"'); + if (preg_match('/deprecated/i', $version)) $versiontrans.=img_warning($langs->trans("Deprecated"), 'style="float: left"'); + $versiontrans.=$objMod->getVersion(1); + + // Define imginfo + $imginfo="info"; + if ($objMod->isCoreOrExternalModule() == 'external') + { + $imginfo="info_black"; + } + + // Define text of description of module + /* + $text=''; + + if ($objMod->getDescLong()) $text.='
    '.$objMod->getDesc().'

    '.$objMod->getDescLong().'
    '; + else $text.='
    '.$objMod->getDesc().'

    '; + + $text.='
    '.$langs->trans("Version").': '.$version; + + $textexternal=''; + if ($objMod->isCoreOrExternalModule() == 'external') + { + $textexternal.='
    '.$langs->trans("Origin").': '.$langs->trans("ExternalModule",$dirofmodule); + if ($objMod->editor_name != 'dolibarr') $textexternal.='
    '.$langs->trans("Publisher").': '.(empty($objMod->editor_name)?$langs->trans("Unknown"):$objMod->editor_name); + if (! empty($objMod->editor_url) && ! preg_match('/dolibarr\.org/i',$objMod->editor_url)) $textexternal.='
    '.$langs->trans("Url").': '.$objMod->editor_url; + $text.=$textexternal; + $text.='
    '; + } + else + { + $text.='
    '.$langs->trans("Origin").': '.$langs->trans("Core").'
    '; + } + $text.='
    '.$langs->trans("LastActivationDate").': '; + if (! empty($conf->global->$const_name)) $text.=dol_print_date($objMod->getLastActivationDate(), 'dayhour'); + else $text.=$langs->trans("Disabled"); + $text.='
    '; + + $text.='
    '.$langs->trans("AddRemoveTabs").': '; + if (isset($objMod->tabs) && is_array($objMod->tabs) && count($objMod->tabs)) + { + $i=0; + foreach($objMod->tabs as $val) + { + $tmp=explode(':',$val,3); + $text.=($i?', ':'').$tmp[0].':'.$tmp[1]; + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddDictionaries").': '; + if (isset($objMod->dictionaries) && isset($objMod->dictionaries['tablib']) && is_array($objMod->dictionaries['tablib']) && count($objMod->dictionaries['tablib'])) + { + $i=0; + foreach($objMod->dictionaries['tablib'] as $val) + { + $text.=($i?', ':'').$val; + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddBoxes").': '; + if (isset($objMod->boxes) && is_array($objMod->boxes) && count($objMod->boxes)) + { + $i=0; + foreach($objMod->boxes as $val) + { + $text.=($i?', ':'').($val['file']?$val['file']:$val[0]); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddModels").': '; + if (isset($objMod->module_parts) && isset($objMod->module_parts['models']) && $objMod->module_parts['models']) + { + $text.=$langs->trans("Yes"); + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddSubstitutions").': '; + if (isset($objMod->module_parts) && isset($objMod->module_parts['substitutions']) && $objMod->module_parts['substitutions']) + { + $text.=$langs->trans("Yes"); + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddSheduledJobs").': '; + if (isset($objMod->cronjobs) && is_array($objMod->cronjobs) && count($objMod->cronjobs)) + { + $i=0; + foreach($objMod->cronjobs as $val) + { + $text.=($i?', ':'').($val['label']); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddTriggers").': '; + if (isset($objMod->module_parts) && isset($objMod->module_parts['triggers']) && $objMod->module_parts['triggers']) + { + $text.=$langs->trans("Yes"); + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddHooks").': '; + if (isset($objMod->module_parts) && is_array($objMod->module_parts['hooks']) && count($objMod->module_parts['hooks'])) + { + $i=0; + foreach($objMod->module_parts['hooks'] as $val) + { + $text.=($i?', ':'').($val); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddPermissions").': '; + if (isset($objMod->rights) && is_array($objMod->rights) && count($objMod->rights)) + { + $i=0; + foreach($objMod->rights as $val) + { + $text.=($i?', ':'').($val[1]); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddMenus").': '; + if (isset($objMod->menu) && ! empty($objMod->menu)) // objMod can be an array or just an int 1 + { + $text.=$langs->trans("Yes"); + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddExportProfiles").': '; + if (isset($objMod->export_label) && is_array($objMod->export_label) && count($objMod->export_label)) + { + $i=0; + foreach($objMod->export_label as $val) + { + $text.=($i?', ':'').($val); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddImportProfiles").': '; + if (isset($objMod->import_label) && is_array($objMod->import_label) && count($objMod->import_label)) + { + $i=0; + foreach($objMod->import_label as $val) + { + $text.=($i?', ':'').($val); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddOtherPagesOrServices").': '; + $text.=$langs->trans("DetectionNotPossible"); + */ + //print "\n\n"; print '\n"; @@ -495,177 +663,15 @@ if ($mode != 'marketplace') // Help print ''; - $text=''; - - if ($objMod->getDescLong()) $text.='
    '.$objMod->getDesc().'

    '.$objMod->getDescLong().'
    '; - else $text.='
    '.$objMod->getDesc().'

    '; - - $textexternal=''; - $imginfo="info"; - if ($objMod->isCoreOrExternalModule() == 'external') - { - $imginfo="info_black"; - $textexternal.='
    '.$langs->trans("Origin").': '.$langs->trans("ExternalModule",$dirofmodule); - if ($objMod->editor_name != 'dolibarr') $textexternal.='
    '.$langs->trans("Publisher").': '.(empty($objMod->editor_name)?$langs->trans("Unknown"):$objMod->editor_name); - if (! empty($objMod->editor_url) && ! preg_match('/dolibarr\.org/i',$objMod->editor_url)) $textexternal.='
    '.$langs->trans("Url").': '.$objMod->editor_url; - $text.=$textexternal; - $text.='
    '; - } - else - { - $text.='
    '.$langs->trans("Origin").': '.$langs->trans("Core").'
    '; - } - $text.='
    '.$langs->trans("LastActivationDate").': '; - if (! empty($conf->global->$const_name)) $text.=dol_print_date($objMod->getLastActivationDate(), 'dayhour'); - else $text.=$langs->trans("Disabled"); - $text.='
    '; - - $text.='
    '.$langs->trans("AddRemoveTabs").': '; - if (isset($objMod->tabs) && is_array($objMod->tabs) && count($objMod->tabs)) - { - $i=0; - foreach($objMod->tabs as $val) - { - $tmp=explode(':',$val,3); - $text.=($i?', ':'').$tmp[0].':'.$tmp[1]; - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddDictionaries").': '; - if (isset($objMod->dictionaries) && isset($objMod->dictionaries['tablib']) && is_array($objMod->dictionaries['tablib']) && count($objMod->dictionaries['tablib'])) - { - $i=0; - foreach($objMod->dictionaries['tablib'] as $val) - { - $text.=($i?', ':'').$val; - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddBoxes").': '; - if (isset($objMod->boxes) && is_array($objMod->boxes) && count($objMod->boxes)) - { - $i=0; - foreach($objMod->boxes as $val) - { - $text.=($i?', ':'').($val['file']?$val['file']:$val[0]); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddModels").': '; - if (isset($objMod->module_parts) && isset($objMod->module_parts['models']) && $objMod->module_parts['models']) - { - $text.=$langs->trans("Yes"); - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddSubstitutions").': '; - if (isset($objMod->module_parts) && isset($objMod->module_parts['substitutions']) && $objMod->module_parts['substitutions']) - { - $text.=$langs->trans("Yes"); - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddSheduledJobs").': '; - if (isset($objMod->cronjobs) && is_array($objMod->cronjobs) && count($objMod->cronjobs)) - { - $i=0; - foreach($objMod->cronjobs as $val) - { - $text.=($i?', ':'').($val['label']); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddTriggers").': '; - if (isset($objMod->module_parts) && isset($objMod->module_parts['triggers']) && $objMod->module_parts['triggers']) - { - $text.=$langs->trans("Yes"); - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddHooks").': '; - if (isset($objMod->module_parts) && is_array($objMod->module_parts['hooks']) && count($objMod->module_parts['hooks'])) - { - $i=0; - foreach($objMod->module_parts['hooks'] as $val) - { - $text.=($i?', ':'').($val); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddPermissions").': '; - if (isset($objMod->rights) && is_array($objMod->rights) && count($objMod->rights)) - { - $i=0; - foreach($objMod->rights as $val) - { - $text.=($i?', ':'').($val[1]); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddMenus").': '; - if (isset($objMod->menu) && ! empty($objMod->menu)) // objMod can be an array or just an int 1 - { - $text.=$langs->trans("Yes"); - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddExportProfiles").': '; - if (isset($objMod->export_label) && is_array($objMod->export_label) && count($objMod->export_label)) - { - $i=0; - foreach($objMod->export_label as $val) - { - $text.=($i?', ':'').($val); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddImportProfiles").': '; - if (isset($objMod->import_label) && is_array($objMod->import_label) && count($objMod->import_label)) - { - $i=0; - foreach($objMod->import_label as $val) - { - $text.=($i?', ':'').($val); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddOtherPagesOrServices").': '; - $text.=$langs->trans("DetectionNotPossible"); - - - print $form->textwithpicto('', $text, 1, $imginfo, 'minheight20'); - + + //print $form->textwithpicto('', $text, 1, $imginfo, 'minheight20', 0, 2, 1); + print ''.img_picto($langs->trans("ClickToShowDescription"), $imginfo).''; + print ''; // Version print ''; - - // Picto warning - $version=$objMod->getVersion(0); - $versiontrans=$objMod->getVersion(1); - if (preg_match('/development/i', $version)) print img_warning($langs->trans("Development"), 'style="float: left"'); - if (preg_match('/experimental/i', $version)) print img_warning($langs->trans("Experimental"), 'style="float: left"'); - if (preg_match('/deprecated/i', $version)) print img_warning($langs->trans("Deprecated"), 'style="float: left"'); - - print $versiontrans; - print "\n"; // Activate/Disable and Setup (2 columns) diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 6cf24b2e38f..5041a303461 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -464,8 +464,8 @@ class Form * @param string $text Text to show * @param string $htmltext Content of tooltip * @param int $direction 1=Icon is after text, -1=Icon is before text, 0=no icon - * @param string $type Type of picto (info, help, warning, superadmin...) OR image filepath (mypicto@mymodule) - * @param string $extracss Add a CSS style to td tags + * @param string $type Type of picto ('info', 'help', 'warning', 'superadmin', 'mypicto@mymodule', ...) or image filepath + * @param string $extracss Add a CSS style to td, div or span tag * @param int $noencodehtmltext Do not encode into html entity the htmltext * @param int $notabs 0=Include table and tr tags, 1=Do not include table and tr tags, 2=use div, 3=use span * @return string HTML code of text, picto, tooltip diff --git a/htdocs/core/js/lib_head.js.php b/htdocs/core/js/lib_head.js.php index 3093fc6afe2..8909f446812 100644 --- a/htdocs/core/js/lib_head.js.php +++ b/htdocs/core/js/lib_head.js.php @@ -973,8 +973,8 @@ function newpopup(url,title) { /** * Function show document preview. Use the "dialog" function. * - * @param string file File path - * @param string type Mime file type + * @param string file Url + * @param string type Mime file type ("image/jpeg", "application/pdf", "text/html") * @param string title Title of popup * @return void * @see newpopup diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php index 960ea1ab232..b5e1122acfb 100644 --- a/htdocs/main.inc.php +++ b/htdocs/main.inc.php @@ -1402,15 +1402,15 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a /* * Top menu */ - print "\n".''."\n"; - - if (empty($conf->dol_hide_topmenu)) + if (empty($conf->dol_hide_topmenu) && (! defined('NOREQUIREMENU') || ! constant('NOREQUIREMENU'))) { - print '
    '; + print "\n".''."\n"; + + print '
    '; // Show menu entries print '
    '."\n"; - $menumanager->atarget=$target; + $menumanager->atarget=$target; $menumanager->showmenu('top', array('searchform'=>$searchform, 'bookmarks'=>$bookmarks)); // This contains a \n print "
    \n"; @@ -1539,12 +1539,12 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a print '
    '; //unset($form); + + print '
    '; + print "\n\n"; } - print '
    '; - print "\n\n"; - - if (empty($conf->dol_hide_leftmenu) && empty($conf->dol_use_jmobile)) print '
    '; + if (empty($conf->dol_hide_leftmenu) && empty($conf->dol_use_jmobile)) print '
    '; } @@ -1572,7 +1572,7 @@ function left_menu($menu_array_before, $helppagename='', $notused='', $menu_arra if (! empty($menu_array_before)) dol_syslog("Deprecated parameter menu_array_before was used when calling main::left_menu function. Menu entries of module should now be defined into module descriptor and not provided when calling left_menu.", LOG_WARNING); - if (empty($conf->dol_hide_leftmenu)) + if (empty($conf->dol_hide_leftmenu) && (! defined('NOREQUIREMENU') || ! constant('NOREQUIREMENU'))) { // Instantiate hooks of thirdparty module $hookmanager->initHooks(array('searchform','leftblock')); From 9220a638b509ca0bdd5398ab80eab3222d50fec4 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 6 Feb 2017 13:37:23 +0100 Subject: [PATCH 0214/1163] NEW Filechecker can include custom dir and report added files. --- build/generate_filelist_xml.php | 43 +++++-- htdocs/admin/system/filecheck.php | 184 +++++++++++++++++++++--------- htdocs/core/lib/files.lib.php | 8 +- htdocs/langs/en_US/admin.lang | 5 +- 4 files changed, 173 insertions(+), 67 deletions(-) diff --git a/build/generate_filelist_xml.php b/build/generate_filelist_xml.php index 07e87dd86bb..01809439bf1 100755 --- a/build/generate_filelist_xml.php +++ b/build/generate_filelist_xml.php @@ -42,35 +42,55 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); if (empty($argv[1])) { - print "Usage: ".$script_file." release=x.y.z\n"; + print "Usage: ".$script_file." release=x.y.z[-...] [includecustom=1]\n"; exit -1; } parse_str($argv[1]); +if (! empty($argv[2])) parse_str($argv[2]); -if ($release != DOL_VERSION) +if (empty($includecustom)) { - print 'Error: release is not version declared into filefunc.in.php.'."\n"; - exit -1; + $includecustom=0; + + if (DOL_VERSION != $release) + { + print 'Error: When parameter "includecustom" is not set, version declared into filefunc.in.php ('.DOL_VERSION.') must be exact same value than "release" parmater.'."\n"; + print "Usage: ".$script_file." release=x.y.z[-...] [includecustom=1]\n"; + exit -1; + } } +else +{ + if (! preg_match('/'.preg_quote(DOL_VERSION,'/').'-/',$release)) + { + print 'Error: When parameter "includecustom" is not set, version declared into ('.DOL_VERSION.') must be used with a suffix into "release" parmater (ex: '.DOL_VERSION.'-mydistrib).'."\n"; + print "Usage: ".$script_file." release=x.y.z[-...] [includecustom=1]\n"; + exit -1; + } +} + +print "Version: ".$release."\n"; +print "Include custom: ".$includecustom."\n"; //$outputfile=dirname(__FILE__).'/../htdocs/install/filelist-'.$release.'.xml'; $outputdir=dirname(__FILE__).'/../htdocs/install'; -print 'Delete current files '.$outputdir.'/filelist*.xml'."\n"; -dol_delete_file($outputdir.'/filelist*.xml',0,1,1); +print 'Delete current files '.$outputdir.'/filelist-'.$release.'.xml'."\n"; +dol_delete_file($outputdir.'/filelist-'.$release.'.xml',0,1,1); $outputfile=$outputdir.'/filelist-'.$release.'.xml'; $fp = fopen($outputfile,'w'); fputs($fp, ''."\n"); fputs($fp, ''."\n"); -fputs($fp, ''."\n"); +fputs($fp, ''."\n"); $checksumconcat=array(); +// TODO Replace RecursiveDirectoryIterator with dol_dir_list $dir_iterator1 = new RecursiveDirectoryIterator(dirname(__FILE__).'/../htdocs/'); $iterator1 = new RecursiveIteratorIterator($dir_iterator1); -// need to ignore document custom etc -$files = new RegexIterator($iterator1, '#^(?:[A-Z]:)?(?:/(?!(?:custom|documents|conf|install|nltechno))[^/]+)+/[^/]+\.(?:php|css|html|js|json|tpl|jpg|png|gif|sql|lang)$#i'); +// Need to ignore document custom etc. Note: this also ignore natively symbolic links. +$files = new RegexIterator($iterator1, '#^(?:[A-Z]:)?(?:/(?!(?:'.($includecustom?'':'custom\/|').'documents\/|conf\/|install\/))[^/]+)+/[^/]+\.(?:php|css|html|js|json|tpl|jpg|png|gif|sql|lang)$#i'); $dir=''; $needtoclose=0; foreach ($files as $file) { @@ -102,10 +122,11 @@ $checksumconcat=array(); fputs($fp, ''."\n"); +// TODO Replace RecursiveDirectoryIterator with dol_dir_list $dir_iterator2 = new RecursiveDirectoryIterator(dirname(__FILE__).'/../scripts/'); $iterator2 = new RecursiveIteratorIterator($dir_iterator2); -// need to ignore document custom etc -$files = new RegexIterator($iterator2, '#^(?:[A-Z]:)?(?:/(?!(?:custom|documents|conf|install|nltechno))[^/]+)+/[^/]+\.(?:php|css|html|js|json|tpl|jpg|png|gif|sql|lang)$#i'); +// Need to ignore document custom etc. Note: this also ignore natively symbolic links. +$files = new RegexIterator($iterator2, '#^(?:[A-Z]:)?(?:/(?!(?:custom|documents|conf|install))[^/]+)+/[^/]+\.(?:php|css|html|js|json|tpl|jpg|png|gif|sql|lang)$#i'); $dir=''; $needtoclose=0; foreach ($files as $file) { diff --git a/htdocs/admin/system/filecheck.php b/htdocs/admin/system/filecheck.php index c0ff5d75819..7536c6df793 100644 --- a/htdocs/admin/system/filecheck.php +++ b/htdocs/admin/system/filecheck.php @@ -90,19 +90,22 @@ print $langs->trans("MakeIntegrityAnalysisFrom").':
    '; print ''."\n"; if (dol_is_file($xmlfile)) { - print ' '.$langs->trans("LocalSignature").' = '.$xmlshortfile.'
    '; + print ' '.$langs->trans("LocalSignature").' = '; + print ''; + print '
    '; } else { - print ' '.$langs->trans("LocalSignature").' = '.$xmlshortfile; - if (! GETPOST('xmlshortfile')) print ' ('.$langs->trans("AvailableOnlyOnPackagedVersions").')'; + print ' '.$langs->trans("LocalSignature").' = '; + print ''; + print ' ('.$langs->trans("AvailableOnlyOnPackagedVersions").')'; print '
    '; } print ''."\n"; if ($enableremotecheck) { print ' '.$langs->trans("RemoteSignature").' = '; - print '
    '; + print '
    '; } else { @@ -150,21 +153,41 @@ if (GETPOST('target') == 'remote') if ($xml) { $checksumconcat = array(); - + $file_list = array(); + $out = ''; + // Scan htdocs if (is_object($xml->dolibarr_htdocs_dir[0])) { - $file_list = array(); - $ret = getFilesUpdated($file_list, $xml->dolibarr_htdocs_dir[0], '', DOL_DOCUMENT_ROOT, $checksumconcat); // Fill array $file_list - - print_fiche_titre($langs->trans("FilesMissing")); + //var_dump($xml->dolibarr_htdocs_dir[0]['includecustom']);exit; + $includecustom=(empty($xml->dolibarr_htdocs_dir[0]['includecustom'])?0:$xml->dolibarr_htdocs_dir[0]['includecustom']); + + // Defined qualified files (must be same than into generate_filelist_xml.php) + $regextoinclude='\.(php|css|html|js|json|tpl|jpg|png|gif|sql|lang)$'; + $regextoexclude='('.($includecustom?'':'custom|').'documents|conf|install)$'; // Exclude dirs + $scanfiles = dol_dir_list(DOL_DOCUMENT_ROOT, 'files', 1, $regextoinclude, $regextoexclude); + + // Fill file_list with files in signature, new files, modified files + $ret = getFilesUpdated($file_list, $xml->dolibarr_htdocs_dir[0], '', DOL_DOCUMENT_ROOT, $checksumconcat, $scanfiles); // Fill array $file_list + // Complete with list of new files + foreach ($scanfiles as $keyfile => $valfile) + { + $tmprelativefilename=preg_replace('/^'.preg_quote(DOL_DOCUMENT_ROOT,'/').'/','', $valfile['fullname']); + if (! in_array($tmprelativefilename, $file_list['insignature'])) + { + $md5newfile=@md5_file($valfile['fullname']); // Can fails if we don't have permission to open/read file + $file_list['added'][]=array('filename'=>$tmprelativefilename, 'md5'=>$md5newfile); + } + } - print ''; - print ''; - print ''; - print ''; - print ''; - print ''."\n"; + $out.=load_fiche_titre($langs->trans("FilesMissing")); + + $out.='
    #' . $langs->trans("Filename") . '' . $langs->trans("ExpectedChecksum") . '
    '; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''."\n"; $var = true; $tmpfilelist = dol_sort_array($file_list['missing'], 'filename'); if (is_array($tmpfilelist) && count($tmpfilelist)) @@ -174,32 +197,32 @@ if ($xml) { $i++; $var = !$var; - print ''; - print '' . "\n"; - print '' . "\n"; - print '' . "\n"; - print "\n"; + $out.=''; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.="\n"; } } else { - print ''; + $out.=''; } - print '
    #' . $langs->trans("Filename") . '' . $langs->trans("ExpectedChecksum") . '
    '.$i.''.$file['filename'].''.$file['expectedmd5'].'
    '.$i.''.$file['filename'].''.$file['expectedmd5'].'
    '.$langs->trans("None").'
    '.$langs->trans("None").'
    '; + $out.=''; - print '
    '; + $out.='
    '; - print_fiche_titre($langs->trans("FilesUpdated")); + $out.=load_fiche_titre($langs->trans("FilesModified")); - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''."\n"; + $out.='
    #' . $langs->trans("Filename") . '' . $langs->trans("ExpectedChecksum") . '' . $langs->trans("CurrentChecksum") . '' . $langs->trans("Size") . '' . $langs->trans("DateModification") . '
    '; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''."\n"; $var = true; $tmpfilelist2 = dol_sort_array($file_list['updated'], 'filename'); if (is_array($tmpfilelist2) && count($tmpfilelist2)) @@ -209,30 +232,70 @@ if ($xml) { $i++; $var = !$var; - print ''; - print '' . "\n"; - print '' . "\n"; - print '' . "\n"; - print '' . "\n"; - print '' . "\n"; - print '' . "\n"; - print "\n"; + $out.=''; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.="\n"; } } else { - print ''; + $out.=''; } - print '
    #' . $langs->trans("Filename") . '' . $langs->trans("ExpectedChecksum") . '' . $langs->trans("CurrentChecksum") . '' . $langs->trans("Size") . '' . $langs->trans("DateModification") . '
    '.$i.''.$file['filename'].''.$file['expectedmd5'].''.$file['md5'].''.dol_print_size(dol_filesize(DOL_DOCUMENT_ROOT.'/'.$file['filename'])).''.dol_print_date(dol_filemtime(DOL_DOCUMENT_ROOT.'/'.$file['filename']),'dayhour').'
    '.$i.''.$file['filename'].''.$file['expectedmd5'].''.$file['md5'].''.dol_print_size(dol_filesize(DOL_DOCUMENT_ROOT.'/'.$file['filename'])).''.dol_print_date(dol_filemtime(DOL_DOCUMENT_ROOT.'/'.$file['filename']),'dayhour').'
    '.$langs->trans("None").'
    '.$langs->trans("None").'
    '; + $out.=''; - if (empty($tmpfilelist) && empty($tmpfilelist2)) + $out.='
    '; + + $out.=load_fiche_titre($langs->trans("FilesAdded")); + + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''."\n"; + $var = true; + $tmpfilelist3 = dol_sort_array($file_list['added'], 'filename'); + if (is_array($tmpfilelist3) && count($tmpfilelist3)) + { + $i = 0; + foreach ($tmpfilelist3 as $file) + { + $i++; + $var = !$var; + $out.=''; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.="\n"; + } + } + else + { + $out.=''; + } + $out.='
    #' . $langs->trans("Filename") . '' . $langs->trans("ExpectedChecksum") . '' . $langs->trans("CurrentChecksum") . '' . $langs->trans("Size") . '' . $langs->trans("DateModification") . '
    '.$i.''.$file['filename'].''.$file['expectedmd5'].''.$file['md5'].''.dol_print_size(dol_filesize(DOL_DOCUMENT_ROOT.'/'.$file['filename'])).''.dol_print_date(dol_filemtime(DOL_DOCUMENT_ROOT.'/'.$file['filename']),'dayhour').'
    '.$langs->trans("None").'
    '; + + + // Show warning + if (empty($tmpfilelist) && empty($tmpfilelist2) && empty($tmpfilelist3)) { setEventMessage($langs->trans("FileIntegrityIsStrictlyConformedWithReference")); } else { setEventMessage($langs->trans("FileIntegritySomeFilesWereRemovedOrModified"), 'warnings'); - } + } } else { @@ -253,13 +316,30 @@ if ($xml) asort($checksumconcat); // Sort list of checksum //var_dump($checksumconcat); $checksumget = md5(join(',',$checksumconcat)); - $checksumtoget = $xml->dolibarr_htdocs_dir_checksum; - - print '
    '; + $checksumtoget = trim((string) $xml->dolibarr_htdocs_dir_checksum); + /*var_dump(count($file_list['added'])); + var_dump($checksumget); + var_dump($checksumtoget); + var_dump($checksumget == $checksumtoget);*/ print_fiche_titre($langs->trans("GlobalChecksum")).'
    '; print $langs->trans("ExpectedChecksum").' = '. ($checksumtoget ? $checksumtoget : $langs->trans("Unknown")) .'
    '; - print $langs->trans("CurrentChecksum").' = '.$checksumget; + print $langs->trans("CurrentChecksum").' = '; + if ($checksumget == $checksumtoget) + { + if (count($file_list['added'])) print $checksumget.' - '.$langs->trans("FileIntegrityIsOkButFilesWereAdded").''; + else print ''.$checksumget.''; + } + else + { + print ''.$checksumget.''; + } + + print '
    '; + print '
    '; + + // Output detail + print $out; } @@ -287,10 +367,11 @@ function getFilesUpdated(&$file_list, SimpleXMLElement $dir, $path = '', $pathre { $exclude = 'install'; - foreach ($dir->md5file as $file) + foreach ($dir->md5file as $file) // $file is a simpleXMLElement { $filename = $path.$file['name']; - + $file_list['insignature'][] = $filename; + //if (preg_match('#'.$exclude.'#', $filename)) continue; if (!file_exists($pathref.'/'.$filename)) @@ -309,3 +390,4 @@ function getFilesUpdated(&$file_list, SimpleXMLElement $dir, $path = '', $pathre return $file_list; } + diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index c1aadd3df6d..1f7974775b5 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -44,8 +44,8 @@ function dol_basename($pathfile) * @param string $path Starting path from which to search. This is a full path. * @param string $types Can be "directories", "files", or "all" * @param int $recursive Determines whether subdirectories are searched - * @param string $filter Regex filter to restrict list. This regex value must be escaped for '/', since this char is used for preg_match function - * @param array $excludefilter Array of Regex for exclude filter (example: array('(\.meta|_preview\.png)$','^\.')) + * @param string $filter Regex filter to restrict list. This regex value must be escaped for '/', since this char is used for preg_match function. Filter is checked into basename only. + * @param array $excludefilter Array of Regex for exclude filter (example: array('(\.meta|_preview\.png)$','^\.')). Exclude is checked into fullpath. * @param string $sortcriteria Sort criteria ("","fullname","name","date","size") * @param string $sortorder Sort order (SORT_ASC, SORT_DESC) * @param int $mode 0=Return array minimum keys loaded (faster), 1=Force all keys like date and size to be loaded (slower), 2=Force load of date only, 3=Force load of size only @@ -104,7 +104,7 @@ function dol_dir_list($path, $types="all", $recursive=0, $filter="", $excludefil $filesize=''; $file_list = array(); - while (false !== ($file = readdir($dir))) + while (false !== ($file = readdir($dir))) // $file is always a basename (into directory $newpath) { if (! utf8_check($file)) $file=utf8_encode($file); // To be sure data is stored in utf8 in memory @@ -137,7 +137,7 @@ function dol_dir_list($path, $types="all", $recursive=0, $filter="", $excludefil if ($loaddate || $sortcriteria == 'date') $filedate=dol_filemtime($path."/".$file); if ($loadsize || $sortcriteria == 'size') $filesize=dol_filesize($path."/".$file); - if (! $filter || preg_match('/'.$filter.'/i',$file)) // We do not search key $filter into $path, only into $file + if (! $filter || preg_match('/'.$filter.'/i',$file)) // We do not search key $filter into all $path, only into $file part { preg_match('/([^\/]+)\/[^\/]+$/',$path.'/'.$file,$reg); $level1name=(isset($reg[1])?$reg[1]:''); diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 202618b7b43..defcafa7b65 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -11,13 +11,16 @@ VersionRecommanded=Recommended FileCheck=Files integrity checker FileCheckDesc=This tool allows you to check the integrity of files of your application, comparing each files with the official ones. You can use this tool to detect if some files were modified by a hacker for example. FileIntegrityIsStrictlyConformedWithReference=Files integrity is strictly conformed with the reference. -FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified of removed. +FileIntegrityIsOkButFilesWereAdded=Files integrity check has passed, however some new files were added. +FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified, removed or added. GlobalChecksum=Global checksum MakeIntegrityAnalysisFrom=Make integrity analysis of application files from LocalSignature=Embedded local signature (less reliable) RemoteSignature=Remote distant signature (more reliable) FilesMissing=Missing Files FilesUpdated=Updated Files +FilesModified=Modified Files +FilesAdded=Added Files FileCheckDolibarr=Check integrity of application files AvailableOnlyOnPackagedVersions=The local file for integrity checking is only available when application is installed from a certified package XmlNotFound=Xml Integrity File of application not found From 8f52a34e71cc836120a8f137404fd19313e9023d Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 6 Feb 2017 20:37:42 +0100 Subject: [PATCH 0215/1163] Report of supplier payment is name "supplier_payments" --- htdocs/compta/paiement/rapport.php | 2 +- htdocs/core/modules/rapport/pdf_paiement_fourn.class.php | 2 +- htdocs/fourn/facture/rapport.php | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/compta/paiement/rapport.php b/htdocs/compta/paiement/rapport.php index b8bcf030729..27f34bef269 100644 --- a/htdocs/compta/paiement/rapport.php +++ b/htdocs/compta/paiement/rapport.php @@ -128,7 +128,7 @@ if (is_dir($dir)) asort($linkforyear); foreach($linkforyear as $cursoryear) { - print ''.$cursoryear.'  '; + print ''.$cursoryear.'  '; } if ($year) diff --git a/htdocs/core/modules/rapport/pdf_paiement_fourn.class.php b/htdocs/core/modules/rapport/pdf_paiement_fourn.class.php index 68b444b8e51..1d9f2333300 100644 --- a/htdocs/core/modules/rapport/pdf_paiement_fourn.class.php +++ b/htdocs/core/modules/rapport/pdf_paiement_fourn.class.php @@ -118,7 +118,7 @@ class pdf_paiement_fourn $month = sprintf("%02d",$month); $year = sprintf("%04d",$year); - $file = $dir . "/payments-".$year."-".$month.".pdf"; + $file = $dir . "/supplier_payments-".$year."-".$month.".pdf"; // Add pdfgeneration hook if (! is_object($hookmanager)) diff --git a/htdocs/fourn/facture/rapport.php b/htdocs/fourn/facture/rapport.php index e685421af19..b0b0436af1b 100644 --- a/htdocs/fourn/facture/rapport.php +++ b/htdocs/fourn/facture/rapport.php @@ -128,7 +128,7 @@ if (is_dir($dir)) asort($linkforyear); foreach($linkforyear as $cursoryear) { - print ''.$cursoryear.'  '; + print ''.$cursoryear.'  '; } if ($year) @@ -150,7 +150,7 @@ if ($year) { while (($file = readdir($handle))!==false) { - if (preg_match('/^payment/i',$file)) + if (preg_match('/^supplier_payment/i',$file)) { $var=!$var; $tfile = $dir . '/'.$year.'/'.$file; From aa1c14e5088f9a8e90620aed6cb01f4d5eddc7cf Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 6 Feb 2017 20:43:44 +0100 Subject: [PATCH 0216/1163] Remove change of PMP when we should not --- htdocs/product/class/product.class.php | 6 ------ 1 file changed, 6 deletions(-) diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 71213bd923e..1b5efff1bfa 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -3530,9 +3530,6 @@ class Product extends CommonObject require_once DOL_DOCUMENT_ROOT .'/product/stock/class/mouvementstock.class.php'; - // If remove stock then save it the actual PMP as price (the new calculation of PMP is triggered only with $movement = 0 || 3 ) - if ($movement == 1) $price = $this->pmp; - $op[0] = "+".trim($nbpiece); $op[1] = "-".trim($nbpiece); @@ -3581,9 +3578,6 @@ class Product extends CommonObject require_once DOL_DOCUMENT_ROOT .'/product/stock/class/mouvementstock.class.php'; - // If remove stock then save it the actual PMP as price (the new calculation of PMP is triggered only with $movement = 0 || 3 ) - if ($movement == 1) $price = $this->pmp; - $op[0] = "+".trim($nbpiece); $op[1] = "-".trim($nbpiece); From e58743ea5bdfb8c78535d5c96b134e165d87073f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 7 Feb 2017 01:13:04 +0100 Subject: [PATCH 0217/1163] Fix regression: Textarea to enter data was crushed. --- htdocs/admin/commande.php | 4 ++-- htdocs/admin/contract.php | 4 ++-- htdocs/admin/facture.php | 4 ++-- htdocs/admin/fichinter.php | 4 ++-- htdocs/admin/propal.php | 4 ++-- htdocs/admin/supplier_invoice.php | 2 +- htdocs/admin/supplier_order.php | 4 ++-- htdocs/admin/supplier_proposal.php | 4 ++-- htdocs/don/admin/donation.php | 4 ++-- 9 files changed, 17 insertions(+), 17 deletions(-) diff --git a/htdocs/admin/commande.php b/htdocs/admin/commande.php index 23773e722c4..a9041f5272b 100644 --- a/htdocs/admin/commande.php +++ b/htdocs/admin/commande.php @@ -569,8 +569,8 @@ $var=! $var; print '
    '; print ''; print ''; -print ''; -print $langs->trans("FreeLegalTextOnOrders").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; +print $langs->trans("FreeLegalTextOnOrders").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; $variablename='ORDER_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { diff --git a/htdocs/admin/contract.php b/htdocs/admin/contract.php index 98b83f61b8e..487203c9f4d 100644 --- a/htdocs/admin/contract.php +++ b/htdocs/admin/contract.php @@ -503,8 +503,8 @@ print "\n"; $var=true; $var=! $var; -print ''; -print $langs->trans("FreeLegalTextOnContracts").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; +print $langs->trans("FreeLegalTextOnContracts").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; $variablename='CONTRACT_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { diff --git a/htdocs/admin/facture.php b/htdocs/admin/facture.php index 6488ed5499b..42000e7176d 100644 --- a/htdocs/admin/facture.php +++ b/htdocs/admin/facture.php @@ -737,8 +737,8 @@ $var=! $var; print ''; print ''; print ''; -print ''; -print $langs->trans("FreeLegalTextOnInvoices").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; +print $langs->trans("FreeLegalTextOnInvoices").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; $variablename='INVOICE_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { diff --git a/htdocs/admin/fichinter.php b/htdocs/admin/fichinter.php index 509426f9969..8d31db0d3af 100644 --- a/htdocs/admin/fichinter.php +++ b/htdocs/admin/fichinter.php @@ -538,8 +538,8 @@ $var=! $var; print ''; print ''; print ''; -print ''; -print $langs->trans("FreeLegalTextOnInterventions").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; +print $langs->trans("FreeLegalTextOnInterventions").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; $variablename='FICHINTER_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { diff --git a/htdocs/admin/propal.php b/htdocs/admin/propal.php index 86b52f9852d..c6ccb4f639c 100644 --- a/htdocs/admin/propal.php +++ b/htdocs/admin/propal.php @@ -576,8 +576,8 @@ $var=! $var; print ''; print ''; print ''; -print ''; -print $langs->trans("FreeLegalTextOnProposal").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; +print $langs->trans("FreeLegalTextOnProposal").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; $variablename='PROPOSAL_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { diff --git a/htdocs/admin/supplier_invoice.php b/htdocs/admin/supplier_invoice.php index 540cd4a4b98..7510bfe37ef 100644 --- a/htdocs/admin/supplier_invoice.php +++ b/htdocs/admin/supplier_invoice.php @@ -472,7 +472,7 @@ print ' '; print "\n"; print ''; -print $langs->trans("FreeLegalTextOnInvoices").' ('.$langs->trans("AddCRIfTooLong").')
    '; +print $langs->trans("FreeLegalTextOnInvoices").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; $variablename='SUPPLIER_INVOICE_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { diff --git a/htdocs/admin/supplier_order.php b/htdocs/admin/supplier_order.php index b117795efa1..1ac6ae86989 100644 --- a/htdocs/admin/supplier_order.php +++ b/htdocs/admin/supplier_order.php @@ -536,8 +536,8 @@ else } */ -print ''; -print $langs->trans("FreeLegalTextOnOrders").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; +print $langs->trans("FreeLegalTextOnOrders").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; $variablename='SUPPLIER_ORDER_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { diff --git a/htdocs/admin/supplier_proposal.php b/htdocs/admin/supplier_proposal.php index 8bd034bef48..7963aa7fabc 100644 --- a/htdocs/admin/supplier_proposal.php +++ b/htdocs/admin/supplier_proposal.php @@ -527,8 +527,8 @@ $var=! $var; print ''; print ''; print ''; -print ''; -print $langs->trans("FreeLegalTextOnSupplierProposal").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; +print $langs->trans("FreeLegalTextOnSupplierProposal").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; $variablename='SUPPLIER_PROPOSAL_FREE_TEXT'; if (empty($conf->global->PDF_ALLOW_HTML_FOR_FREE_TEXT)) { diff --git a/htdocs/don/admin/donation.php b/htdocs/don/admin/donation.php index 29dc50bf7e1..ecc651c1f16 100644 --- a/htdocs/don/admin/donation.php +++ b/htdocs/don/admin/donation.php @@ -384,8 +384,8 @@ print ''; print ''; $var=! $var; -print ''; -print $langs->trans("FreeTextOnDonations").' '.img_info($langs->trans("AddCRIfTooLong")).''; +print ''; +print $langs->trans("FreeTextOnDonations").' '.img_info($langs->trans("AddCRIfTooLong")).'
    '; print ''; print ''; print ''; From 0f421dc2b4c0df9ca6f2fd12052f87570101fdd5 Mon Sep 17 00:00:00 2001 From: phf Date: Tue, 7 Feb 2017 11:09:18 +0100 Subject: [PATCH 0218/1163] New global conf MAIN_DEPOSIT_MULTI_TVA to manage multi tva on deposit --- htdocs/compta/facture.php | 133 ++++++++++++++++++++++++-------------- 1 file changed, 85 insertions(+), 48 deletions(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 54c8bf1bac1..80296fecc82 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -1020,61 +1020,98 @@ if (empty($reshook)) $typeamount = GETPOST('typedeposit', 'alpha'); $valuedeposit = GETPOST('valuedeposit', 'int'); - if ($typeamount == 'amount') + $amountdeposit = array(); + if (!empty($conf->global->MAIN_DEPOSIT_MULTI_TVA)) { - $amountdeposit = $valuedeposit; + if ($typeamount == 'amount') $amount = $valuedeposit; + else $amount = $srcobject->total_ttc * ($valuedeposit / 100); + + $TTotalByTva = array(); + foreach ($srcobject->lines as &$line) + { + $TTotalByTva[$line->tva_tx] += $line->total_ttc ; + } + + $amount_to_diff = 0; + foreach ($TTotalByTva as $tva => &$total) + { + $coef = $total / $srcobject->total_ttc; // Calc coef + $am = $amount * $coef; + $amount_ttc_diff += $am; + $amountdeposit[$tva] += $am / (1 + $tva / 100); // Convert into HT for the addline + } } else { - $amountdeposit = 0; - - if ($result > 0) + if ($typeamount == 'amount') { - $totalamount = 0; - $lines = $srcobject->lines; - $numlines=count($lines); - for ($i=0; $i<$numlines; $i++) - { - $qualified=1; - if (empty($lines[$i]->qty)) $qualified=0; // We discard qty=0, it is an option - if (! empty($lines[$i]->special_code)) $qualified=0; // We discard special_code (frais port, ecotaxe, option, ...) - if ($qualified) $totalamount += $lines[$i]->total_ht; - } - - if ($totalamount != 0) { - $amountdeposit = ($totalamount * $valuedeposit) / 100; - } - } else { - setEventMessages($srcobject->error, $srcobject->errors, 'errors'); - $error ++; + $amountdeposit[] = $valuedeposit; } - } + else + { + if ($result > 0) + { + $totalamount = 0; + $lines = $srcobject->lines; + $numlines=count($lines); + for ($i=0; $i<$numlines; $i++) + { + $qualified=1; + if (empty($lines[$i]->qty)) $qualified=0; // We discard qty=0, it is an option + if (! empty($lines[$i]->special_code)) $qualified=0; // We discard special_code (frais port, ecotaxe, option, ...) + if ($qualified) $totalamount += $lines[$i]->total_ht; + } - $result = $object->addline( - $langs->trans('Deposit'), - $amountdeposit, // subprice - 1, // quantity - $lines[$i]->tva_tx, // vat rate - 0, // localtax1_tx - 0, // localtax2_tx - (empty($conf->global->INVOICE_PRODUCTID_DEPOSIT)?0:$conf->global->INVOICE_PRODUCTID_DEPOSIT), // fk_product - 0, // remise_percent - 0, // date_start - 0, // date_end - 0, $lines[$i]->info_bits, // info_bits - 0, // info_bits - 'HT', - 0, - 0, // product_type - 1, - $lines[$i]->special_code, - $object->origin, - 0, - 0, - 0, - 0, - $langs->trans('Deposit') - ); + if ($totalamount != 0) { + $amountdeposit[] = ($totalamount * $valuedeposit) / 100; + } + } else { + setEventMessages($srcobject->error, $srcobject->errors, 'errors'); + $error ++; + } + } + + $amount_ttc_diff = $amountdeposit[0]; + } + + foreach ($amountdeposit as $tva => $amount) + { + $result = $object->addline( + $langs->trans('Deposit'), + $amount, // subprice + 1, // quantity + $tva, // vat rate + 0, // localtax1_tx + 0, // localtax2_tx + (empty($conf->global->INVOICE_PRODUCTID_DEPOSIT)?0:$conf->global->INVOICE_PRODUCTID_DEPOSIT), // fk_product + 0, // remise_percent + 0, // date_start + 0, // date_end + 0, $lines[$i]->info_bits, // info_bits + 0, // info_bits + 'HT', + 0, + 0, // product_type + 1, + $lines[$i]->special_code, + $object->origin, + 0, + 0, + 0, + 0, + $langs->trans('Deposit') + ); + } + + $diff = $object->total_ttc - $amount_ttc_diff; + + if ($diff != 0) + { + $object->fetch_lines(); + $subprice_diff = $object->lines[0]->subprice - $diff / (1 + $object->lines[0]->tva_tx); + $object->updateline($object->lines[0]->id, $object->lines[0]->desc, $subprice_diff, $object->lines[0]->qty, $object->lines[0]->remise_percent, $object->lines[0]->date_start, $object->lines[0]->date_end, $object->lines[0]->tva_tx, 0, 0, 'HT', $object->lines[0]->info_bits, $object->lines[0]->product_type, 0, 0, 0, $object->lines[0]->pa_ht, $object->lines[0]->label, 0, array(), 100); + } + } else { From 6b20bad847130e1cace7abfcbb461ca14985438a Mon Sep 17 00:00:00 2001 From: phf Date: Tue, 7 Feb 2017 11:14:27 +0100 Subject: [PATCH 0219/1163] add fixme --- htdocs/compta/facture.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 80296fecc82..f431b1bf344 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -1059,7 +1059,7 @@ if (empty($reshook)) $qualified=1; if (empty($lines[$i]->qty)) $qualified=0; // We discard qty=0, it is an option if (! empty($lines[$i]->special_code)) $qualified=0; // We discard special_code (frais port, ecotaxe, option, ...) - if ($qualified) $totalamount += $lines[$i]->total_ht; + if ($qualified) $totalamount += $lines[$i]->total_ht; // Fixme : is it not for the customer ? Shouldn't we take total_ttc ? } if ($totalamount != 0) { From 9a141f85560d078c648fd1a6f7498c2c2a4d634e Mon Sep 17 00:00:00 2001 From: Paris Liakos Date: Tue, 7 Feb 2017 20:55:40 +0200 Subject: [PATCH 0220/1163] Wrong trigger when setting supplier invoice back to draft --- .../fourn/class/fournisseur.facture.class.php | 62 +++++++++---------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index 6c0d493373c..5602f573e90 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -46,7 +46,7 @@ class FactureFournisseur extends CommonInvoice public $fk_element='fk_facture_fourn'; protected $ismultientitymanaged = 1; // 0=No test on entity, 1=Test with field entity, 2=Test with link by societe public $picto='bill'; - + /** * {@inheritdoc} */ @@ -320,12 +320,12 @@ class FactureFournisseur extends CommonInvoice { $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'facture_fourn_det (fk_facture_fourn)'; $sql .= ' VALUES ('.$this->id.')'; - + $resql_insert=$this->db->query($sql); if ($resql_insert) { $idligne = $this->db->last_insert_id(MAIN_DB_PREFIX.'facture_fourn_det'); - + $this->updateline( $idligne, $this->lines[$i]->description, @@ -354,19 +354,19 @@ class FactureFournisseur extends CommonInvoice foreach ($this->lines as $i => $val) { $line = $this->lines[$i]; - + // Test and convert into object this->lines[$i]. When coming from REST API, we may still have an array //if (! is_object($line)) $line=json_decode(json_encode($line), FALSE); // convert recursively array into object. if (! is_object($line)) $line = (object) $line; - + $sql = 'INSERT INTO '.MAIN_DB_PREFIX.'facture_fourn_det (fk_facture_fourn)'; $sql .= ' VALUES ('.$this->id.')'; - + $resql_insert=$this->db->query($sql); if ($resql_insert) { $idligne = $this->db->last_insert_id(MAIN_DB_PREFIX.'facture_fourn_det'); - + $this->updateline( $idligne, $line->description, @@ -387,9 +387,9 @@ class FactureFournisseur extends CommonInvoice $this->db->rollback(); return -5; } - } + } } - + // Update total price $result=$this->update_price(); if ($result > 0) @@ -413,7 +413,7 @@ class FactureFournisseur extends CommonInvoice } } else if ($reshook < 0) $error++; - + if (! $error) { // Call trigger @@ -421,7 +421,7 @@ class FactureFournisseur extends CommonInvoice if ($result < 0) $error++; // End call triggers } - + if (! $error) { $this->db->commit(); @@ -587,7 +587,7 @@ class FactureFournisseur extends CommonInvoice $this->multicurrency_total_ht = $obj->multicurrency_total_ht; $this->multicurrency_total_tva = $obj->multicurrency_total_tva; $this->multicurrency_total_ttc = $obj->multicurrency_total_ttc; - + $this->extraparams = (array) json_decode($obj->extraparams, true); $this->socid = $obj->socid; @@ -671,8 +671,8 @@ class FactureFournisseur extends CommonInvoice $line->subprice = $obj->pu_ht; $line->pu_ht = $obj->pu_ht; $line->pu_ttc = $obj->pu_ttc; - - $line->vat_src_code = $obj->vat_src_code; + + $line->vat_src_code = $obj->vat_src_code; $line->tva_tx = $obj->tva_tx; $line->localtax1_tx = $obj->localtax1_tx; $line->localtax2_tx = $obj->localtax2_tx; @@ -700,7 +700,7 @@ class FactureFournisseur extends CommonInvoice $line->multicurrency_total_ht = $obj->multicurrency_total_ht; $line->multicurrency_total_tva = $obj->multicurrency_total_tva; $line->multicurrency_total_ttc = $obj->multicurrency_total_ttc; - + $this->lines[$i] = $line; $i++; @@ -1260,7 +1260,7 @@ class FactureFournisseur extends CommonInvoice if (! $error && empty($notrigger)) { // Call trigger - $result=$this->call_trigger('BILL_SUPPLIER_VALIDATE',$user); + $result=$this->call_trigger('BILL_SUPPLIER_UNVALIDATE',$user); if ($result < 0) $error++; // End call triggers } @@ -1332,7 +1332,7 @@ class FactureFournisseur extends CommonInvoice if (empty($txlocaltax2)) $txlocaltax2=0; $localtaxes_type=getLocalTaxesFromRate($txtva, 0, $mysoc, $this->thirdparty); - + // Clean vat code $vat_src_code=''; if (preg_match('/\((.*)\)/', $txtva, $reg)) @@ -1340,7 +1340,7 @@ class FactureFournisseur extends CommonInvoice $vat_src_code = $reg[1]; $txtva = preg_replace('/\s*\(.*\)/', '', $txtva); // Remove code into vatrate. } - + $remise_percent=price2num($remise_percent); $qty=price2num($qty); $pu=price2num($pu); @@ -1374,7 +1374,7 @@ class FactureFournisseur extends CommonInvoice //$this->line->label=$label; // deprecated $this->line->desc=$desc; $this->line->qty= ($this->type==self::TYPE_CREDIT_NOTE?abs($qty):$qty); // For credit note, quantity is always positive and unit price negative - + $this->line->vat_src_code=$vat_src_code; $this->line->tva_tx=$txtva; $this->line->localtax1_tx=$txlocaltax1; @@ -1503,7 +1503,7 @@ class FactureFournisseur extends CommonInvoice $vat_src_code = $reg[1]; $vatrate = preg_replace('/\s*\(.*\)/', '', $vatrate); // Remove code into vatrate. } - + $tabprice = calcul_price_total($qty, $pu, $remise_percent, $vatrate, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, $this->thirdparty, $localtaxes_type, 100, $this->multicurrency_tx, $pu_ht_devise); $total_ht = $tabprice[0]; $total_tva = $tabprice[1]; @@ -1513,13 +1513,13 @@ class FactureFournisseur extends CommonInvoice $pu_ttc = $tabprice[5]; $total_localtax1 = $tabprice[9]; $total_localtax2 = $tabprice[10]; - + // MultiCurrency $multicurrency_total_ht = $tabprice[16]; $multicurrency_total_tva = $tabprice[17]; $multicurrency_total_ttc = $tabprice[18]; $pu_ht_devise = $tabprice[19]; - + if (empty($info_bits)) $info_bits=0; if ($idproduct) @@ -1545,7 +1545,7 @@ class FactureFournisseur extends CommonInvoice $line->pu_ttc = $pu_ttc; $line->qty = $qty; $line->remise_percent = $remise_percent; - + $line->vat_src_code=$vat_src_code; $line->tva_tx = $vatrate; $line->localtax1_tx = $txlocaltax1; @@ -1871,7 +1871,7 @@ class FactureFournisseur extends CommonInvoice $linkclose.= ' title="'.dol_escape_htmltag($label, 1).'"'; $linkclose.=' class="classfortooltip"'; } - + $linkstart = ''; $linkend=''; @@ -2179,10 +2179,10 @@ class FactureFournisseur extends CommonInvoice } else { - $modele = ''; // No default value. For supplier invoice, we allow to disable all PDF generation + $modele = ''; // No default value. For supplier invoice, we allow to disable all PDF generation } } - + if (empty($modele)) { return 0; @@ -2266,7 +2266,7 @@ class SupplierInvoiceLine extends CommonObjectLine public $product_ref; /** - * Supplier reference of price when we added the line. May have been changed after line was added. + * Supplier reference of price when we added the line. May have been changed after line was added. * TODO Rename field ref to ref_supplier into table llx_facture_fourn_det and llx_commande_fournisseurdet and update fields into updateline * @var string */ @@ -2555,13 +2555,13 @@ class SupplierInvoiceLine extends CommonObjectLine $sql.= ", product_type = ".$this->product_type; $sql.= ", info_bits = ".$this->info_bits; $sql.= ", fk_unit = ".$fk_unit; - + // Multicurrency $sql.= " , multicurrency_subprice=".price2num($this->multicurrency_subprice).""; $sql.= " , multicurrency_total_ht=".price2num($this->multicurrency_total_ht).""; $sql.= " , multicurrency_total_tva=".price2num($this->multicurrency_total_tva).""; $sql.= " , multicurrency_total_ttc=".price2num($this->multicurrency_total_ttc).""; - + $sql.= " WHERE rowid = ".$this->id; dol_syslog(get_class($this)."::update", LOG_DEBUG); @@ -2675,7 +2675,7 @@ class SupplierInvoiceLine extends CommonObjectLine $sql.= " ".(! empty($this->label)?"'".$this->db->escape($this->label)."'":"null").","; $sql.= " '".$this->db->escape($this->desc)."',"; $sql.= " ".price2num($this->qty).","; - + $sql.= " ".(empty($this->vat_src_code)?"''":"'".$this->vat_src_code."'").","; $sql.= " ".price2num($this->tva_tx).","; $sql.= " ".price2num($this->localtax1_tx).","; @@ -2745,7 +2745,7 @@ class SupplierInvoiceLine extends CommonObjectLine $this->db->rollback(); return -2; } - } + } /** * Mise a jour de l'objet ligne de commande en base * From e4fc52497e118ea792cacba84593721e32ff8a91 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Wed, 8 Feb 2017 06:18:56 +0100 Subject: [PATCH 0221/1163] New : [FP17] Accountancy - Add export of charts of accounts --- htdocs/core/modules/modAccounting.class.php | 19 ++++++++++++++++++- htdocs/langs/en_US/accountancy.lang | 1 + 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/htdocs/core/modules/modAccounting.class.php b/htdocs/core/modules/modAccounting.class.php index e9c7fb309ad..92e63d8bf7c 100644 --- a/htdocs/core/modules/modAccounting.class.php +++ b/htdocs/core/modules/modAccounting.class.php @@ -72,7 +72,7 @@ class modAccounting extends DolibarrModules $this->conflictwith = array("modComptabilite"); // List of modules are in conflict with this module $this->phpmin = array(5, 3); // Minimum version of PHP required by module $this->need_dolibarr_version = array(3, 9); // Minimum version of Dolibarr required by module - $this->langfiles = array("accountancy"); + $this->langfiles = array("accountancy","compta"); // Constants $this->const = array(); @@ -288,6 +288,23 @@ class modAccounting extends DolibarrModules // Menus //------- $this->menu = 1; // This module add menu entries. They are coded into menu manager. + + // Exports + //-------- + $r=0; + + $r++; + $this->export_code[$r]=$this->rights_class.'_'.$r; + $this->export_label[$r]='Chartofaccounts'; + $this->export_icon[$r]='accounting'; + $this->export_permission[$r]=array(array("accounting","chartofaccount")); + $this->export_fields_array[$r]=array('ac.rowid'=>'ChartofaccountsId','ac.pcg_version'=>'Chartofaccounts','aa.rowid'=>'Id','aa.account_number'=>"AccountAccounting",'aa.label'=>"Label",'aa.account_parent'=>"Accountparent",'aa.pcg_type'=>"Pcgtype",'aa.pcg_subtype'=>'Pcgsubtype','aa.active'=>'Status'); + $this->export_TypeFields_array[$r]=array('ac.rowid'=>'List:accounting_system:pcg_version','aa.account_number'=>"Text",'aa.label'=>"Text",'aa.pcg_type'=>'Text','aa.pcg_subtype'=>'Text','aa.active'=>'Status'); + $this->export_entities_array[$r]=array('ac.rowid'=>"accounting",'ac.pcg_version'=>"accounting",'aa.rowid'=>'accounting','aa.account_number'=>"accounting",'aa.label'=>"accounting",'aa.accountparent'=>"accounting",'aa.pcg_type'=>"accounting",'aa.pcgsubtype'=>"accounting",'aa_active'=>"accounting"); + + $this->export_sql_start[$r]='SELECT DISTINCT '; + $this->export_sql_end[$r] =' FROM '.MAIN_DB_PREFIX.'accounting_account as aa, '.MAIN_DB_PREFIX.'accounting_system as ac'; + $this->export_sql_end[$r] .=' WHERE ac.pcg_version = aa.fk_pcg_version AND aa.entity IN ('.getEntity('accounting', 1).') '; } } diff --git a/htdocs/langs/en_US/accountancy.lang b/htdocs/langs/en_US/accountancy.lang index 5ee68e605cd..b56efc312e7 100644 --- a/htdocs/langs/en_US/accountancy.lang +++ b/htdocs/langs/en_US/accountancy.lang @@ -211,6 +211,7 @@ Modelcsv_ciel=Export towards Sage Ciel Compta or Compta Evolution Modelcsv_quadratus=Export towards Quadratus QuadraCompta Modelcsv_ebp=Export towards EBP Modelcsv_cogilog=Export towards Cogilog +ChartofaccountsId=Chart of accounts Id ## Tools - Init accounting account on product / service InitAccountancy=Init accountancy From 4126dcff03557703e1356f41aaf5ff808a286b56 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Wed, 8 Feb 2017 06:51:42 +0100 Subject: [PATCH 0222/1163] [FP17] Accountancy - Prepare fiscal year for a better complete accountancy. For the moment, remove function to update status and delete a fiscal year. Need controls and a specific function to block lines in the book keeping if the fiscal year is closed. --- htdocs/accountancy/admin/fiscalyear.php | 2 +- htdocs/accountancy/admin/fiscalyear_card.php | 11 +++++++---- htdocs/core/class/fiscalyear.class.php | 4 ++-- htdocs/langs/en_US/main.lang | 1 + 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/htdocs/accountancy/admin/fiscalyear.php b/htdocs/accountancy/admin/fiscalyear.php index 817905f7b56..4b2b57ee7db 100644 --- a/htdocs/accountancy/admin/fiscalyear.php +++ b/htdocs/accountancy/admin/fiscalyear.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2013-2016 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/htdocs/accountancy/admin/fiscalyear_card.php b/htdocs/accountancy/admin/fiscalyear_card.php index 2c22d8f191a..7a8ab0673a7 100644 --- a/htdocs/accountancy/admin/fiscalyear_card.php +++ b/htdocs/accountancy/admin/fiscalyear_card.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2014-2016 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -176,13 +176,15 @@ if ($action == 'create') print $form->select_date(($date_end ? $date_end : - 1), 'fiscalyearend'); print ''; + /* // Statut print ''; print '' . $langs->trans("Status") . ''; print ''; print $form->selectarray('statut', $statut2label, GETPOST('statut')); print ''; - + */ + print ''; dol_fiche_end(); @@ -232,7 +234,8 @@ if ($action == 'create') // Statut print '' . $langs->trans("Statut") . ''; - print $form->selectarray('statut', $statut2label, $object->statut); + // print $form->selectarray('statut', $statut2label, $object->statut); + print $object->getLibStatut(4); print ''; print ''; @@ -304,7 +307,7 @@ if ($action == 'create') print '' . $langs->trans('Modify') . ''; - print '' . $langs->trans('Delete') . ''; + // print '' . $langs->trans('Delete') . ''; print '
    '; } diff --git a/htdocs/core/class/fiscalyear.class.php b/htdocs/core/class/fiscalyear.class.php index ef990d8edf3..912c1e34879 100644 --- a/htdocs/core/class/fiscalyear.class.php +++ b/htdocs/core/class/fiscalyear.class.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2014-2017 Alexandre Spangaro * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -89,7 +89,7 @@ class Fiscalyear extends CommonObject $sql.= " '".$this->label."'"; $sql.= ", '".$this->db->idate($this->date_start)."'"; $sql.= ", ".($this->date_end ? "'".$this->db->idate($this->date_end)."'":"null"); - $sql.= ", ".$this->statut; + $sql.= ", 0"; $sql.= ", ".$conf->entity; $sql.= ", '".$this->db->idate($now)."'"; $sql.= ", ". $user->id; diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index 1c9c74471ca..37725835e4a 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -756,6 +756,7 @@ SomeTranslationAreUncomplete=Some languages may be partially translated or may c DirectDownloadLink=Direct download link Download=Download ActualizeCurrency=Update currency rate +Fiscalyear=Fiscal year # Week day Monday=Monday Tuesday=Tuesday From 7fcf598c78a47474c6163b7cc4c60ae3d34e8cb9 Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Wed, 8 Feb 2017 08:52:58 +0100 Subject: [PATCH 0223/1163] Fix travis --- htdocs/admin/modulehelp.php | 1 - 1 file changed, 1 deletion(-) diff --git a/htdocs/admin/modulehelp.php b/htdocs/admin/modulehelp.php index eca82b5abbd..e701d4ead03 100644 --- a/htdocs/admin/modulehelp.php +++ b/htdocs/admin/modulehelp.php @@ -281,7 +281,6 @@ $special = $objMod->special; if (! $objMod->getName()) { dol_syslog("Error for module ".$key." - Property name of module looks empty", LOG_WARNING); - continue; } $const_name = 'MAIN_MODULE_'.strtoupper(preg_replace('/^mod/i','',get_class($objMod))); From 49e6192e6222133e03592d9bec95ea6b8057839f Mon Sep 17 00:00:00 2001 From: De Coninck Laurent Date: Wed, 8 Feb 2017 09:23:15 +0100 Subject: [PATCH 0224/1163] fix the type width column and the nextY --- .../doc/pdf_standard.modules.php | 61 +++++++++++-------- 1 file changed, 36 insertions(+), 25 deletions(-) diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php index abc40f23005..5db7e065b43 100644 --- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php +++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php @@ -307,28 +307,29 @@ class pdf_standard extends ModeleExpenseReport $pdf->SetFont('','', $default_font_size - 1); - // Accountancy piece - $pdf->SetXY($this->posxpiece, $curY); - $pdf->writeHTMLCell($this->posxcomment-$this->posxpiece-0.8, 4, $this->posxpiece-1, $curY, $piece_comptable, 0, 1); - - // Comments - $pdf->SetXY($this->posxcomment, $curY); - $pdf->writeHTMLCell($this->posxdate-$this->posxcomment-0.8, 4, $this->posxcomment-1, $curY, $object->lines[$i]->comments, 0, 1); + // Accountancy piece + $pdf->SetXY($this->posxpiece, $curY); + $pdf->writeHTMLCell($this->posxcomment-$this->posxpiece-0.8, 4, $this->posxpiece-1, $curY, $piece_comptable, 0, 1); - //nexY - $nexY = $pdf->GetY(); - $pageposafter=$pdf->getPage(); - $pdf->setPage($pageposbefore); - $pdf->setTopMargin($this->marge_haute); - $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + // Comments + $pdf->SetXY($this->posxcomment, $curY ); + $pdf->writeHTMLCell($this->posxdate-$this->posxcomment-0.8, 4, $this->posxcomment-1, $curY, $object->lines[$i]->comments, 0, 1); - // Date + // Date $pdf->SetXY($this->posxdate -1, $curY); $pdf->MultiCell($this->posxtype-$this->posxdate-0.8, 4, dol_print_date($object->lines[$i]->date,"day",false,$outputlangs), 0, 'C'); // Type $pdf->SetXY($this->posxtype -1, $curY); - $pdf->MultiCell($this->posxprojet-$this->posxtype-0.8, 4, dol_trunc($outputlangs->transnoentities($object->lines[$i]->type_fees_code), 12), 0, 'C'); + $nextColumnPosX = $this->posxup; + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) { + $nextColumnPosX = $this->posxtva; + } + if (!empty($conf->projet->enabled)) { + $nextColumnPosX = $this->posxprojet; + } + + $pdf->MultiCell($nextColumnPosX-$this->posxtype-0.8, 4, dol_trunc($outputlangs->transnoentities($object->lines[$i]->type_fees_code), 12), 0, 'C'); // Project if (! empty($conf->projet->enabled)) @@ -358,20 +359,30 @@ class pdf_standard extends ModeleExpenseReport $pdf->SetXY($this->postotalttc-1, $curY); $pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalttc, 4, price($object->lines[$i]->total_ttc), 0, 'R'); - // Cherche nombre de lignes a venir pour savoir si place suffisante + //nexY + $nexY = $pdf->GetY(); + $pageposafter=$pdf->getPage(); + $pdf->setPage($pageposbefore); + $pdf->setTopMargin($this->marge_haute); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + + $nblineFollowComment = 1; + // Cherche nombre de lignes a venir pour savoir si place suffisante if ($i < ($nblignes - 1)) // If it's not last line { - //on recupere la description du produit suivant - $follow_comment = $object->lines[$i+1]->comments; + //Fetch current description to know on which line the next one should be placed + $follow_comment = $object->lines[$i]->comments; + $follow_type = $object->lines[$i]->type_fees_code; + //on compte le nombre de ligne afin de verifier la place disponible (largeur de ligne 52 caracteres) - $nblineFollowComment = dol_nboflines_bis($follow_comment,52,$outputlangs->charset_output)*4; - } - else // If it's last line - { - $nblineFollowComment = 0; + $nbLineCommentNeed = dol_nboflines_bis($follow_comment,52,$outputlangs->charset_output); + $nbLineTypeNeed = dol_nboflines_bis($follow_type,4,$outputlangs->charset_output); + + //Which one need more lines + $nblineFollowComment = ($nbLineCommentNeed > $nbLineTypeNeed) ? $nbLineCommentNeed : $nbLineTypeNeed; } - $nexY+=4; // Passe espace entre les lignes + $nexY+=$nblineFollowComment*($pdf->getFontSize()+1); // Passe espace entre les lignes // Detect if some page were added automatically and output _tableau for past pages while ($pagenb < $pageposafter) @@ -426,7 +437,7 @@ class pdf_standard extends ModeleExpenseReport $pdf->SetFont('','', 10); // Show total area box - $posy=$bottomlasttab+5;//$nexY+95; + $posy=$bottomlasttab+5; $pdf->SetXY(100, $posy); $pdf->MultiCell(60, 5, $outputlangs->transnoentities("TotalHT"), 1, 'L'); $pdf->SetXY(160, $posy); From e1a6e6e4ab89e4f8669d2cf41b76e8800884ffdb Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 8 Feb 2017 12:37:38 +0100 Subject: [PATCH 0225/1163] Rename "attributes" into "variants" to avoid confusion with extrafields --- htdocs/comm/propal/card.php | 6 +- htdocs/commande/card.php | 6 +- htdocs/compta/facture.php | 6 +- htdocs/core/class/html.form.class.php | 4 +- htdocs/core/lib/product.lib.php | 6 +- ...ibutes.class.php => modVariants.class.php} | 20 +++---- htdocs/core/tpl/objectline_create.tpl.php | 2 +- htdocs/fourn/commande/card.php | 6 +- htdocs/fourn/facture/card.php | 6 +- .../install/mysql/migration/5.0.0-6.0.0.sql | 41 +++++++++++++ .../mysql/tables/llx_product_price_by_qty.sql | 1 - htdocs/langs/en_US/products.lang | 39 +++++++------ htdocs/product/card.php | 2 +- htdocs/product/class/product.class.php | 8 +-- htdocs/product/list.php | 10 ++-- .../{attributes => variants}/admin/admin.php | 0 .../{attributes => variants}/admin/index.html | 0 .../ajax/getCombinations.php | 2 +- .../ajax/get_attribute_values.php | 4 +- .../{attributes => variants}/ajax/index.html | 0 .../ajax/orderAttribute.php | 2 +- htdocs/{attributes => variants}/card.php | 25 +++++--- .../class/ProductAttribute.class.php | 37 ++++++------ .../class/ProductAttributeValue.class.php | 4 +- .../class/ProductCombination.class.php | 29 +++++----- .../ProductCombination2ValuePair.class.php | 4 +- .../{attributes => variants}/class/index.html | 0 .../{attributes => variants}/combinations.php | 58 +++++++++---------- htdocs/{attributes => variants}/create.php | 2 +- .../{attributes => variants}/create_val.php | 2 +- htdocs/{attributes => variants}/generator.php | 25 ++++---- htdocs/{attributes => variants}/index.html | 0 .../{attributes => variants}/lib/index.html | 0 .../lib/product_variants.lib.php} | 0 htdocs/{attributes => variants}/list.php | 25 +++++--- 35 files changed, 223 insertions(+), 159 deletions(-) rename htdocs/core/modules/{modAttributes.class.php => modVariants.class.php} (90%) rename htdocs/{attributes => variants}/admin/admin.php (100%) rename htdocs/{attributes => variants}/admin/index.html (100%) rename htdocs/{attributes => variants}/ajax/getCombinations.php (94%) rename htdocs/{attributes => variants}/ajax/get_attribute_values.php (90%) rename htdocs/{attributes => variants}/ajax/index.html (100%) rename htdocs/{attributes => variants}/ajax/orderAttribute.php (95%) rename htdocs/{attributes => variants}/card.php (89%) rename htdocs/{attributes => variants}/class/ProductAttribute.class.php (89%) rename htdocs/{attributes => variants}/class/ProductAttributeValue.class.php (97%) rename htdocs/{attributes => variants}/class/ProductCombination.class.php (93%) rename htdocs/{attributes => variants}/class/ProductCombination2ValuePair.class.php (95%) rename htdocs/{attributes => variants}/class/index.html (100%) rename htdocs/{attributes => variants}/combinations.php (89%) rename htdocs/{attributes => variants}/create.php (96%) rename htdocs/{attributes => variants}/create_val.php (97%) rename htdocs/{attributes => variants}/generator.php (93%) rename htdocs/{attributes => variants}/index.html (100%) rename htdocs/{attributes => variants}/lib/index.html (100%) rename htdocs/{attributes/lib/product_attributes.lib.php => variants/lib/product_variants.lib.php} (100%) rename htdocs/{attributes => variants}/list.php (93%) diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php index 56a8f02e7e5..6139d54c799 100644 --- a/htdocs/comm/propal/card.php +++ b/htdocs/comm/propal/card.php @@ -51,8 +51,8 @@ if (! empty($conf->projet->enabled)) { require_once DOL_DOCUMENT_ROOT . '/core/class/html.formprojet.class.php'; } -if (!empty($conf->attributes->enabled)) { - require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; +if (!empty($conf->variants->enabled)) { + require_once DOL_DOCUMENT_ROOT.'/variants/class/ProductCombination.class.php'; } $langs->load('companies'); @@ -729,7 +729,7 @@ if (empty($reshook)) $error ++; } - if (!$error && !empty($conf->attributes->enabled) && $prod_entry_mode != 'free') { + if (!$error && !empty($conf->variants->enabled) && $prod_entry_mode != 'free') { if ($combinations = GETPOST('combinations', 'array')) { //Check if there is a product with the given combination $prodcomb = new ProductCombination($db); diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index 4f049a1fe4e..497dd6292f2 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -51,8 +51,8 @@ if (! empty($conf->projet->enabled)) { } require_once DOL_DOCUMENT_ROOT . '/core/class/doleditor.class.php'; -if (!empty($conf->attributes->enabled)) { - require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; +if (!empty($conf->variants->enabled)) { + require_once DOL_DOCUMENT_ROOT.'/variants/class/ProductCombination.class.php'; } $langs->load('orders'); @@ -693,7 +693,7 @@ if (empty($reshook)) $error++; } - if (!$error && !empty($conf->attributes->enabled) && $prod_entry_mode != 'free') { + if (!$error && !empty($conf->variants->enabled) && $prod_entry_mode != 'free') { if ($combinations = GETPOST('combinations', 'array')) { //Check if there is a product with the given combination $prodcomb = new ProductCombination($db); diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index f0ddace3e2e..b457c3f1187 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -56,8 +56,8 @@ if (! empty($conf->projet->enabled)) { } require_once DOL_DOCUMENT_ROOT . '/core/class/doleditor.class.php'; -if (!empty($conf->attributes->enabled)) { - require_once DOL_DOCUMENT_ROOT.'/attributes/class/ProductCombination.class.php'; +if (!empty($conf->variants->enabled)) { + require_once DOL_DOCUMENT_ROOT.'/variants/class/ProductCombination.class.php'; } $langs->load('bills'); @@ -1428,7 +1428,7 @@ if (empty($reshook)) $error ++; } - if (!$error && !empty($conf->attributes->enabled) && $prod_entry_mode != 'free') { + if (!$error && !empty($conf->variants->enabled) && $prod_entry_mode != 'free') { if ($combinations = GETPOST('combinations', 'array')) { //Check if there is a product with the given combination $prodcomb = new ProductCombination($db); diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index cec7aa2aede..5637d52ace7 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -1673,7 +1673,7 @@ class Form } print ajax_autocompleter($selected, $htmlname, DOL_URL_ROOT.'/product/ajax/products.php', $urloption, $conf->global->PRODUIT_USE_SEARCH_TO_SELECT, 0, $ajaxoptions); - if (!empty($conf->attributes->enabled)) { + if (!empty($conf->variants->enabled)) { ?> From 5a7c20e897a47acdd3417c84c87ef1e7f5a8cd8b Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Wed, 8 Feb 2017 17:13:54 -0300 Subject: [PATCH 0235/1163] Code style var to public --- htdocs/contact/class/contact.class.php | 68 +++++++++++++------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index 3b4fa942f81..40051753252 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -41,61 +41,61 @@ class Contact extends CommonObject public $table_element='socpeople'; protected $ismultientitymanaged = 1; // 0=No test on entity, 1=Test with field entity, 2=Test with link by societe - var $civility_id; // In fact we store civility_code - var $civility_code; - var $address; - var $zip; - var $town; + public $civility_id; // In fact we store civility_code + public $civility_code; + public $address; + public $zip; + public $town; /** * @deprecated * @see state_id */ - var $fk_departement; + public $fk_departement; /** * @deprecated * @see state_code */ - var $departement_code; + public $departement_code; /** * @deprecated * @see state */ - var $departement; - var $state_id; // Id of department - var $state_code; // Code of department - var $state; // Label of department + public $departement; + public $state_id; // Id of department + public $state_code; // Code of department + public $state; // Label of department - var $poste; // Position + public $poste; // Position - var $socid; // fk_soc - var $statut; // 0=inactif, 1=actif + public $socid; // fk_soc + public $statut; // 0=inactif, 1=actif - var $code; - var $email; - var $skype; - var $photo; - var $jabberid; - var $phone_pro; - var $phone_perso; - var $phone_mobile; - var $fax; + public $code; + public $email; + public $skype; + public $photo; + public $jabberid; + public $phone_pro; + public $phone_perso; + public $phone_mobile; + public $fax; - var $priv; + public $priv; - var $birthday; - var $default_lang; - var $no_email; // 1=Don't send e-mail to this contact, 0=do + public $birthday; + public $default_lang; + public $no_email; // 1=Don't send e-mail to this contact, 0=do - var $ref_facturation; // Nb de reference facture pour lequel il est contact - var $ref_contrat; // Nb de reference contrat pour lequel il est contact - var $ref_commande; // Nb de reference commande pour lequel il est contact - var $ref_propal; // Nb de reference propal pour lequel il est contact + public $ref_facturation; // Reference number of invoice for which it is contact + public $ref_contrat; // Nb de reference contrat pour lequel il est contact + public $ref_commande; // Nb de reference commande pour lequel il est contact + public $ref_propal; // Nb de reference propal pour lequel il est contact - var $user_id; - var $user_login; + public $user_id; + public $user_login; - var $oldcopy; // To contains a clone of this when we need to save old properties of object + public $oldcopy; // To contains a clone of this when we need to save old properties of object /** From e053308c6fc5ae9da3a2aca9eba7f7fec06880b7 Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Wed, 8 Feb 2017 17:24:11 -0300 Subject: [PATCH 0236/1163] Code style var to public --- htdocs/societe/class/address.class.php | 58 +++++++++++++------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/htdocs/societe/class/address.class.php b/htdocs/societe/class/address.class.php index d8a1687cf9d..a3a20dfbd3d 100644 --- a/htdocs/societe/class/address.class.php +++ b/htdocs/societe/class/address.class.php @@ -31,21 +31,21 @@ */ class Address { - var $db; + private $db; - var $id; - var $type; - var $label; - var $socid; - var $name; - var $address; - var $zip; - var $town; - var $country_id; - var $country_code; - var $phone; - var $fax; - var $note; + public $id; + public $type; + public $label; + public $socid; + public $name; + public $address; + public $zip; + public $town; + public $country_id; + public $country_code; + public $phone; + public $fax; + public $note; /** * Adresses liees a la societe @@ -495,21 +495,21 @@ class Address */ class AddressLine { - - var $id; - var $date_creation; - var $date_modification; - var $label; - var $name; - var $address; - var $zip; - var $town; - var $country_id; - var $country_code; - var $country; - var $phone; - var $fax; - var $note; + private $db; + public $id; + public $date_creation; + public $date_modification; + public $label; + public $name; + public $address; + public $zip; + public $town; + public $country_id; + public $country_code; + public $country; + public $phone; + public $fax; + public $note; /** From a8c5661cb70f5f3314274e94f5f16f977336e5fe Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Wed, 8 Feb 2017 17:36:04 -0300 Subject: [PATCH 0237/1163] Code style Set public and private --- htdocs/cashdesk/class/Auth.class.php | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/htdocs/cashdesk/class/Auth.class.php b/htdocs/cashdesk/class/Auth.class.php index 33bbd094050..0de4254cf29 100644 --- a/htdocs/cashdesk/class/Auth.class.php +++ b/htdocs/cashdesk/class/Auth.class.php @@ -22,14 +22,14 @@ */ class Auth { - var $db; + private $db; - var $login; - var $passwd; + private $login; + private $passwd; - var $reponse; + private $reponse; - var $sqlQuery; + public $sqlQuery; /** * Enter description here ... @@ -37,7 +37,7 @@ class Auth * @param DoliDB $db Database handler * @return void */ - function __construct($db) + public function __construct($db) { $this->db = $db; $this->reponse(null); @@ -49,7 +49,7 @@ class Auth * @param string $aLogin Login * @return void */ - function login($aLogin) + public function login($aLogin) { $this->login = $aLogin; } @@ -71,7 +71,7 @@ class Auth * @param string $aReponse Response * @return void */ - function reponse($aReponse) + public function reponse($aReponse) { $this->reponse = $aReponse; } @@ -83,7 +83,7 @@ class Auth * @param string $aPasswd Password * @return int 0 or 1 */ - function verif($aLogin, $aPasswd) + public function verif($aLogin, $aPasswd) { global $conf,$langs; global $dolibarr_main_authentication,$dolibarr_auto_user; From 2418754d71811bcec2d0abf3fc79fd8d69c43ddd Mon Sep 17 00:00:00 2001 From: Ion Date: Wed, 8 Feb 2017 23:27:58 +0100 Subject: [PATCH 0238/1163] Fill oldline in supplier order updateline --- htdocs/fourn/class/fournisseur.commande.class.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index f656e7a41e7..053e5b314d6 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -2346,8 +2346,11 @@ class CommandeFournisseur extends CommonOrder $subprice = price2num($pu_ht,'MU'); + //Fetch current line from the database and then clone the object and set it in $oldline property $this->line=new CommandeFournisseurLigne($this->db); $this->line->fetch($rowid); + $oldline = clone $this->line; + $this->line->oldline = $oldline; $this->line->context = $this->context; From f8a6d60fe53b2966ed4707a2c741931fdde79095 Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Wed, 8 Feb 2017 20:24:20 -0300 Subject: [PATCH 0239/1163] $db attibute now be protected. --- htdocs/cashdesk/class/Auth.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/cashdesk/class/Auth.class.php b/htdocs/cashdesk/class/Auth.class.php index 0de4254cf29..5e431514d1c 100644 --- a/htdocs/cashdesk/class/Auth.class.php +++ b/htdocs/cashdesk/class/Auth.class.php @@ -22,7 +22,7 @@ */ class Auth { - private $db; + protected $db; private $login; private $passwd; From febe95cd2eaa45a044c354f6a9590637d77db15a Mon Sep 17 00:00:00 2001 From: Gustavo Novaro Date: Wed, 8 Feb 2017 20:27:14 -0300 Subject: [PATCH 0240/1163] $db attributte now be protected --- htdocs/societe/class/address.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/societe/class/address.class.php b/htdocs/societe/class/address.class.php index a3a20dfbd3d..43e46008910 100644 --- a/htdocs/societe/class/address.class.php +++ b/htdocs/societe/class/address.class.php @@ -31,7 +31,7 @@ */ class Address { - private $db; + protected $db; public $id; public $type; @@ -495,7 +495,7 @@ class Address */ class AddressLine { - private $db; + protected $db; public $id; public $date_creation; public $date_modification; From fbe0b13706522db47429339204a17f4487d6775f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 9 Feb 2017 01:07:54 +0100 Subject: [PATCH 0241/1163] Add parameter to set the url to use for the file integrity checker --- htdocs/admin/system/filecheck.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/htdocs/admin/system/filecheck.php b/htdocs/admin/system/filecheck.php index 7536c6df793..3a78fb6e9ea 100644 --- a/htdocs/admin/system/filecheck.php +++ b/htdocs/admin/system/filecheck.php @@ -73,11 +73,15 @@ print '
    '; // Modified or missing files $file_list = array('missing' => array(), 'updated' => array()); -// File to analyze -//$xmlfile = DOL_DOCUMENT_ROOT.'/install/filelist-'.DOL_VERSION.'.xml'; +// Local file to compare to $xmlshortfile = GETPOST('xmlshortfile')?GETPOST('xmlshortfile'):'/install/filelist-'.DOL_VERSION.'.xml'; $xmlfile = DOL_DOCUMENT_ROOT.$xmlshortfile; -$xmlremote = GETPOST('xmlremote')?GETPOST('xmlremote'):'https://www.dolibarr.org/files/stable/signatures/filelist-'.DOL_VERSION.'.xml'; +// Remote file to compare to +$xmlremote = GETPOST('xmlremote'); +if (empty($xmlremote) && ! empty($conf->global->MAIN_FILECHECK_URL)) $xmlremote = $conf->global->MAIN_FILECHECK_URL; +$param='MAIN_FILECHECK_URL_'.DOL_VERSION; +if (empty($xmlremote) && ! empty($conf->global->$param)) $xmlremote = $conf->global->$param; +if (empty($xmlremote)) $xmlremote = 'https://www.dolibarr.org/files/stable/signatures/filelist-'.DOL_VERSION.'.xml'; // Test if remote test is ok From 56d7fe1bf6481d28f32287a9fa4a95c859a87979 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 9 Feb 2017 10:23:44 +0100 Subject: [PATCH 0242/1163] Pad files with https --- build/pad/pad_dolibarr_s.xml | 232 +++++++++++++++++++++++++++++++++++ build/pad/pad_doliwamp.xml | 8 +- build/pad/pad_doliwamp_s.xml | 225 +++++++++++++++++++++++++++++++++ 3 files changed, 461 insertions(+), 4 deletions(-) create mode 100644 build/pad/pad_dolibarr_s.xml create mode 100644 build/pad/pad_doliwamp_s.xml diff --git a/build/pad/pad_dolibarr_s.xml b/build/pad/pad_dolibarr_s.xml new file mode 100644 index 00000000000..8effe4b771a --- /dev/null +++ b/build/pad/pad_dolibarr_s.xml @@ -0,0 +1,232 @@ + + + + 3.11 + PADGen 3.1.1.47 http://www.padgen.org + Portable Application Description, or PAD for short, is a data set that is used by shareware authors to disseminate information to anyone interested in their software products. To find out more go to http://pad.asp-software.org + + + Dolibarr team + 20 rue camponac + + Pessac + + 33600 + FRANCE + https://www.dolibarr.org + + Dolibarr team + Dolibarr team + contact@dolibarr.org + Dolibarr team + Dolibarr team + contact@dolibarr.org + + + dolibarr-dev@nongnu.org + dolibarr-dev@nongnu.org + dolibarr-dev@nongnu.org + + + + + + + + Dolibarr + 5.0 + 02 + 01 + 2017 + + + + Freeware + Major Update + No Install Support + Linux,Mac OS X,Mac Other,Unix,Win2000,Win7 x32,Win7 x64,Win98,WinOther,WinServer,WinVista,WinVista x64,WinXP,Other + English,Arabic,Catalan,Chinese,Danish,Dutch,Finnish,French,German,Greek,Icelandic,Italian,Norwegian,Polish,Portuguese,Romanian,Russian,Slovenian,Spanish,Swedish,Turkish + Increase performances, Setup process is easier, Reduce number of clicks required to use software + Business + Business::Accounting & Finance + None + + 18037439 + 18037 + 18.03 + + + N + + Days + + + + + + + + + dolibarr, erp, crm, invoices, commercial proposals, orders, accounting, stock, products, agenda, bank, business, company, foundation, management, sme, doliwamp + Dolibarr ERP & CRM + Dolibarr ERP & CRM, the easy to use open source software to manage your activity + Dolibarr ERP & CRM, the easy to use open source software to manage your activity (invoices, customers, suppliers, contracts, agenda, emailings...) and any other things a small or mid-sized business or a foundation needs to manage. + Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or medium companies, freelancers or foundations. We can say Dolibarr is an ERP or CRM. Dolibarr is also available with an auto-installer for Windows users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. See DoliWamp software for this. + Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations. We can say Dolibarr is an ERP or CRM (or both depending on activated modules). It's an OpenSource project base on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems). Dolibarr differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: +Simple to install +Simple to use +Simple to develop +Note that Dolibarr is also available with an auto-installer for Windows or Ubuntu users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. This version is called DoliWamp (for Windows) or DoliBuntu (for Ubuntu/Debian). + + + dolibarr, erp, crm, invoices, commercial proposals, orders, accounting, stock, products, agenda, bank, business, company, foundation, management, sme, doliwamp + Dolibarr ERP & CRM + Dolibarr ERP & CRM, le gestionnaire simple pour gérer votre activité + Dolibarr ERP & CRM, le logiciel simple et OpenSource pour gérer votre activité (factures, devis, facturation, commandes, compta, trésorerie, stocks, produits, agenda, comptes bancaires, associations) + Dolibarr ERP & CRM est un logiciel modulaire (on n'active que les fonctions que l'on désire) de gestions de TPE/PME, d'indépendants, d'entrepreneurs ou d'associations. En terme plus techniques, c'est un ERP et CRM. C'est un projet OpenSource qui s'exécute au sein d'un serveur Web et peut donc être accessible depuis n'importe quel lieu disposant d'une connexion Internet (Projet basé sur un serveur WAMP, MAMP ou LAMP: Apache, MySQL, PHP). + Dolibarr ERP & CRM est un logiciel modulaire (on n'active que les fonctions que l'on désire) de gestions de TPE/PME, d'indépendants, d'entrepreneurs ou d'associations. En terme plus techniques, c'est un ERP et CRM. C'est un projet OpenSource qui s'exécute au sein d'un serveur Web et peut donc être accessible depuis n'importe quel lieu disposant d'une connexion Internet (Projet basé sur un serveur WAMP, MAMP ou LAMP: Apache, MySQL, PHP). Dolibarr vient compléter les offres déjà nombreuses de logiciels de cette catégorie (comme OpenBravo, OpenERP, SugarCRM, Neogia, Compiere, etc.) mais se démarque par le fait qu'ici tout est fait pour offrir de la simplicité (règle des 3 S): +Simple pour l'installation (avec au choix des installeurs clé en main pour ceux qui ignorent comment installer un serveur Web, ou une installation manuelle) +Simple pour l'utilisation (fonctions modulaires pour ne pas surcharger les menus, informations claires à la saisie) +Simple pour le développement (pas de frameworks lourds). +Dolibarr intègre en effet sa propre architecture (design patterns) permettant à tout développeur d'être tout de suite opérationnel sans connaissances particulières autre que le PHP. + + + erp, crm, gestionale, medie imprese, fondazioni + Gestionale open source e gratuito + Gestionale open source e gratuito per piccole e medie imprese, fondazioni + Dolibarr è un a gestionale open source e gratuito per piccole e medie imprese, fondazioni e liberi professionisti. Include varie funzionalità per Enterprise Resource Planning e gestione dei clienti (CRM), ma anche ulteriori attività. + Dolibarr è un programma gestionale open source e gratuito per piccole e medie imprese, fondazioni e liberi professionisti. Include varie funzionalità per Enterprise Resource Planning e gestione dei clienti (CRM), ma anche ulteriori attività. Dolibar è progettato per poter fornire solo ciò di cui hai bisogno ed essere facile da usare. + Dolibarr è un programma gestionale open source e gratuito per piccole e medie imprese, fondazioni e liberi professionisti. Include varie funzionalità per Enterprise Resource Planning e gestione dei clienti (CRM), ma anche ulteriori attività. Dolibar è progettato per poter fornire solo ciò di cui hai bisogno ed essere facile da usare. Dolibar è completamente web-based, progettato per poter fornire solo ciò di cui hai bisogno ed essere facile da usare. + + + + + https://www.dolibarr.org + https://www.dolibarr.org + http://www.dolibarr.org/images/dolibarr_screenshot1.png + http://www.dolibarr.org/images/dolibarr.gif + https://www.dolibarr.org/files/pad_dolibarr.xml + + + https://www.dolibarr.org/files/dolibarr.zip + http://www.dolibarr.org/files/dolibarr.zip + + + + + + GNU GPL + GNU GPL + + + Y + 1.4 + http://pad.asp-software.org/extensions/Affiliates.htm + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Y + N + + + diff --git a/build/pad/pad_doliwamp.xml b/build/pad/pad_doliwamp.xml index 158327977d2..4f7981a4314 100644 --- a/build/pad/pad_doliwamp.xml +++ b/build/pad/pad_doliwamp.xml @@ -13,7 +13,7 @@ 33600 FRANCE - http://www.nltechno.com + https://www.dolibarr.org NLTechno NLTechno @@ -53,7 +53,7 @@ 26048004 25437 - 24.84 + 45.84 N @@ -96,8 +96,8 @@ DoliWamp is the auto-installer for Windows users with no technical knowledge to http://www.nltechno.com/doliwamp/ http://www.nltechno.com/doliwamp/ - https://www.dolibarr.org/images/dolibarr_screenshot1.png - https://www.dolibarr.org/images/dolibarr.gif + http://www.dolibarr.org/images/dolibarr_screenshot1.png + http://www.dolibarr.org/images/dolibarr.gif https://www.dolibarr.org/files/pad_doliwamp.xml diff --git a/build/pad/pad_doliwamp_s.xml b/build/pad/pad_doliwamp_s.xml new file mode 100644 index 00000000000..06eaec3af98 --- /dev/null +++ b/build/pad/pad_doliwamp_s.xml @@ -0,0 +1,225 @@ + + + + 3.11 + PADGen 3.1.1.47 http://www.padgen.org + Portable Application Description, or PAD for short, is a data set that is used by shareware authors to disseminate information to anyone interested in their software products. To find out more go to http://pad.asp-software.org + + + NLTechno + 20 Rue Camponac + + Pessac + + 33600 + FRANCE + https://www.dolibarr.org + + NLTechno + NLTechno + contact@nltechno.com + NLTechno + NLTechno + contact@nltechno.com + + + support@nltechno.com + support@nltechno.com + support@nltechno.com + + + + + + + + DoliWamp + 5.0 + 02 + 01 + 2017 + + + + Freeware + Major Update + Install and Uninstall + Win2000,Win7 x32,Win7 x64,Win98,WinOther,WinServer,WinVista,WinVista x64,WinXP,Other + English,Arabic,Catalan,Chinese,Dutch,Finnish,French,German,Icelandic,Italian,Norwegian,Polish,Portuguese,Romanian,Russian,Slovenian,Spanish,Swedish,Turkish + Increase performances, Setup process is easier, Reduce number of clicks required to use software + Business + Business::Accounting & Finance + None + + 26048004 + 25437 + 45.84 + + + N + + Days + + + + + + + + + doliwamp, dolibarr, erp, crm, invoices, commercial proposals, orders, accounting, stock, products, agenda, bank, business, company, foundation, management + DoliWamp, Dolibarr ERP/CRM for Windows + DoliWamp, the easy to use Dolibarr for Windows to manage your company,foundation + DoliWamp is the Dolibarr ERP/CRM for Windows, the easy to use open source software to manage your activity (invoices, customers, suppliers, contracts, agenda, emailings...) and any other things a small or mid-sized business or a foundation needs. + DoliWamp is the Dolibarr ERP/CRM autoinstaller for Windows users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. Dolibarr ERP/CRM is a software package built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations. + DoliWamp is the Dolibarr ERP/CRM for Windows. Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations (You can manage or follow contacts, invoices, orders, commercial proposals, products, stock management, agenda, mass emailings, members of a foundation, bank accounts...). Based on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems), you can install it as a standalone program or use it from anywhere with any web browser. Dolibarr is an OpenSource project. It differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: Simple to install, Simple to use, Simple to develop. +DoliWamp is the auto-installer for Windows users with no technical knowledge to install Dolibarr ERP/CRM and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. + + + doliwamp, dolibarr, erp, crm, factures, devis, facturation, commandes, compta, trésorerie, stocks, produits, agenda, comptes bancaires, associations, entreprises, PME, TPE + DoliWamp, Dolibarr ERP/CRM pour Windows + DoliWamp, la distribution de Dolibarr pour gérer votre entreprise ou association + DoliWamp est la version spécialisée pour Windows de Dolibarr ERP-CRM, le logiciel simple et OpenSource pour gérer votre activité (factures, devis, facturation, commandes, compta, trésorerie, stocks, produits, agenda, comptes bancaires, associations) + DoliWamp est la version spécialisée pour Windows de Dolibarr ERP-CRM, le logiciel simple et OpenSource pour gérer votre activité (factures, devis, facturation, commandes, compta, trésorerie, stocks, produits, agenda, comptes bancaires, associations) + DoliWamp est la version spécialisée pour Windows de Dolibarr ERP-CRM, le logiciel simple et OpenSource pour gérer votre activité (factures, devis, facturation, commandes, compta, trésorerie, stocks, produits, agenda, comptes bancaires, associations) + + + doliwamp, dolibarr, erp, crm, gestionale, medie imprese, fondazioni + DoliWamp, Dolibarr ERP/CRM per Windows + Gestionale open source e gratuito per piccole e medie imprese, fondazioni + Dolibarr è un a gestionale open source e gratuito per piccole e medie imprese, fondazioni e liberi professionisti. Include varie funzionalità per Enterprise Resource Planning e gestione dei clienti (CRM), ma anche ulteriori attività. + Dolibarr è un programma gestionale open source e gratuito per piccole e medie imprese, fondazioni e liberi professionisti. Include varie funzionalità per Enterprise Resource Planning e gestione dei clienti (CRM), ma anche ulteriori attività. Dolibar è progettato per poter fornire solo ciò di cui hai bisogno ed essere facile da usare. + Dolibarr è un programma gestionale open source e gratuito per piccole e medie imprese, fondazioni e liberi professionisti. Include varie funzionalità per Enterprise Resource Planning e gestione dei clienti (CRM), ma anche ulteriori attività. Dolibar è progettato per poter fornire solo ciò di cui hai bisogno ed essere facile da usare. Dolibar è completamente web-based, progettato per poter fornire solo ciò di cui hai bisogno ed essere facile da usare. + + + + + http://www.nltechno.com/doliwamp/ + http://www.nltechno.com/doliwamp/ + https://www.dolibarr.org/images/dolibarr_screenshot1.png + https://www.dolibarr.org/images/dolibarr.gif + https://www.dolibarr.org/files/pad_doliwamp.xml + + + https://www.dolibarr.org/files/doliwamp.exe + http://www.dolibarr.org/files/doliwamp.exe + + + + + + GNU GPL + GNU GPL + + + Y + 1.4 + http://pad.asp-software.org/extensions/Affiliates.htm + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Y + N + + + From 6f3f0a826f8bb96ed13012ddaed043010703dc23 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 9 Feb 2017 11:24:01 +0100 Subject: [PATCH 0243/1163] Fix pad files --- build/pad/{pad_dolibarr_s.xml => pad_dolibarr_nos.xml} | 0 build/pad/pad_doliwamp.xml | 4 ++-- build/pad/{pad_doliwamp_s.xml => pad_doliwamp_nos.xml} | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) rename build/pad/{pad_dolibarr_s.xml => pad_dolibarr_nos.xml} (100%) rename build/pad/{pad_doliwamp_s.xml => pad_doliwamp_nos.xml} (98%) diff --git a/build/pad/pad_dolibarr_s.xml b/build/pad/pad_dolibarr_nos.xml similarity index 100% rename from build/pad/pad_dolibarr_s.xml rename to build/pad/pad_dolibarr_nos.xml diff --git a/build/pad/pad_doliwamp.xml b/build/pad/pad_doliwamp.xml index 4f7981a4314..06eaec3af98 100644 --- a/build/pad/pad_doliwamp.xml +++ b/build/pad/pad_doliwamp.xml @@ -96,8 +96,8 @@ DoliWamp is the auto-installer for Windows users with no technical knowledge to http://www.nltechno.com/doliwamp/ http://www.nltechno.com/doliwamp/ - http://www.dolibarr.org/images/dolibarr_screenshot1.png - http://www.dolibarr.org/images/dolibarr.gif + https://www.dolibarr.org/images/dolibarr_screenshot1.png + https://www.dolibarr.org/images/dolibarr.gif https://www.dolibarr.org/files/pad_doliwamp.xml diff --git a/build/pad/pad_doliwamp_s.xml b/build/pad/pad_doliwamp_nos.xml similarity index 98% rename from build/pad/pad_doliwamp_s.xml rename to build/pad/pad_doliwamp_nos.xml index 06eaec3af98..4f7981a4314 100644 --- a/build/pad/pad_doliwamp_s.xml +++ b/build/pad/pad_doliwamp_nos.xml @@ -96,8 +96,8 @@ DoliWamp is the auto-installer for Windows users with no technical knowledge to http://www.nltechno.com/doliwamp/ http://www.nltechno.com/doliwamp/ - https://www.dolibarr.org/images/dolibarr_screenshot1.png - https://www.dolibarr.org/images/dolibarr.gif + http://www.dolibarr.org/images/dolibarr_screenshot1.png + http://www.dolibarr.org/images/dolibarr.gif https://www.dolibarr.org/files/pad_doliwamp.xml From 488d68113d02452af35344592d50264749c38b70 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 9 Feb 2017 12:56:39 +0100 Subject: [PATCH 0244/1163] Add total in the file integrity checker --- htdocs/admin/system/filecheck.php | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/htdocs/admin/system/filecheck.php b/htdocs/admin/system/filecheck.php index 3a78fb6e9ea..6499f16f76c 100644 --- a/htdocs/admin/system/filecheck.php +++ b/htdocs/admin/system/filecheck.php @@ -184,6 +184,7 @@ if ($xml) } } + // Files missings $out.=load_fiche_titre($langs->trans("FilesMissing")); $out.=''; @@ -216,8 +217,10 @@ if ($xml) $out.='
    '; + // Files modified $out.=load_fiche_titre($langs->trans("FilesModified")); + $totalsize=0; $out.='
    '; $out.=''; $out.=''; @@ -241,10 +244,20 @@ if ($xml) $out.='' . "\n"; $out.='' . "\n"; $out.='' . "\n"; - $out.='' . "\n"; + $size = dol_filesize(DOL_DOCUMENT_ROOT.'/'.$file['filename']); + $totalsize += $size; + $out.='' . "\n"; $out.='' . "\n"; $out.="\n"; } + $out.=''; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.="\n"; } else { @@ -254,8 +267,10 @@ if ($xml) $out.='
    '; + // Files added $out.=load_fiche_titre($langs->trans("FilesAdded")); + $totalsize = 0; $out.='
    #'.$file['filename'].''.$file['expectedmd5'].''.$file['md5'].''.dol_print_size(dol_filesize(DOL_DOCUMENT_ROOT.'/'.$file['filename'])).''.dol_print_size($size).''.dol_print_date(dol_filemtime(DOL_DOCUMENT_ROOT.'/'.$file['filename']),'dayhour').'
    '.$langs->trans("Total").''.dol_print_size($totalsize).'
    '; $out.=''; $out.=''; @@ -279,10 +294,20 @@ if ($xml) $out.='' . "\n"; $out.='' . "\n"; $out.='' . "\n"; - $out.='' . "\n"; + $size = dol_filesize(DOL_DOCUMENT_ROOT.'/'.$file['filename']); + $totalsize += $size; + $out.='' . "\n"; $out.='' . "\n"; $out.="\n"; } + $out.=''; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.="\n"; } else { From fa527ff4eb436003a4bb5a4764f14807f12183b4 Mon Sep 17 00:00:00 2001 From: De Coninck Laurent Date: Thu, 9 Feb 2017 13:10:32 +0100 Subject: [PATCH 0245/1163] fix the card page generator --- dev/skeletons/build_class_from_table.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dev/skeletons/build_class_from_table.php b/dev/skeletons/build_class_from_table.php index d9e30b23501..0e5a6d82a82 100755 --- a/dev/skeletons/build_class_from_table.php +++ b/dev/skeletons/build_class_from_table.php @@ -636,7 +636,8 @@ foreach ($skeletonfiles as $skeletonfile => $outfile) { if ($prop['field'] != 'rowid' && $prop['field'] != 'id' && ! $prop['istime']) { - $varprop.="print '';\n"; + $baseString = 'print "";'; + $varprop.= sprintf("\t ".$baseString." \n", $prop['field'], $prop['field'], $prop['field']); } } $targetcontent=preg_replace('/LIST_OF_TD_LABEL_FIELDS_EDIT/', $varprop, $targetcontent); @@ -648,7 +649,7 @@ foreach ($skeletonfiles as $skeletonfile => $outfile) { if ($prop['field'] != 'rowid' && $prop['field'] != 'id' && ! $prop['istime']) { - $varprop.="print '';\n"; + $varprop.=sprintf("\t print '';\n",$prop['field'],$prop['field']); } } $targetcontent=preg_replace('/LIST_OF_TD_LABEL_FIELDS_VIEW/', $varprop, $targetcontent); From 7dddba3e39423636c0ed605e4c8caad1a9d33d99 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 9 Feb 2017 14:42:15 +0100 Subject: [PATCH 0246/1163] Add octicons --- htdocs/theme/common/octicons/.gitignore | 4 + htdocs/theme/common/octicons/.npmignore | 5 + htdocs/theme/common/octicons/.travis.yml | 3 + htdocs/theme/common/octicons/CHANGELOG.md | 363 +++++ htdocs/theme/common/octicons/Gruntfile.js | 137 ++ htdocs/theme/common/octicons/LICENSE | 21 + htdocs/theme/common/octicons/README.md | 194 +++ htdocs/theme/common/octicons/index.js | 67 + htdocs/theme/common/octicons/lib/data.json | 1174 +++++++++++++++++ .../octicons/lib/octicons-master.sketch | Bin 0 -> 1957888 bytes htdocs/theme/common/octicons/lib/octicons.css | 5 + .../theme/common/octicons/lib/svg/alert.svg | 12 + .../common/octicons/lib/svg/arrow-down.svg | 12 + .../common/octicons/lib/svg/arrow-left.svg | 12 + .../common/octicons/lib/svg/arrow-right.svg | 12 + .../octicons/lib/svg/arrow-small-down.svg | 12 + .../octicons/lib/svg/arrow-small-left.svg | 12 + .../octicons/lib/svg/arrow-small-right.svg | 12 + .../octicons/lib/svg/arrow-small-up.svg | 12 + .../common/octicons/lib/svg/arrow-up.svg | 12 + .../theme/common/octicons/lib/svg/beaker.svg | 12 + htdocs/theme/common/octicons/lib/svg/bell.svg | 12 + htdocs/theme/common/octicons/lib/svg/bold.svg | 12 + htdocs/theme/common/octicons/lib/svg/book.svg | 12 + .../common/octicons/lib/svg/bookmark.svg | 12 + .../common/octicons/lib/svg/briefcase.svg | 12 + .../common/octicons/lib/svg/broadcast.svg | 12 + .../theme/common/octicons/lib/svg/browser.svg | 12 + htdocs/theme/common/octicons/lib/svg/bug.svg | 12 + .../common/octicons/lib/svg/calendar.svg | 12 + .../theme/common/octicons/lib/svg/check.svg | 12 + .../common/octicons/lib/svg/checklist.svg | 12 + .../common/octicons/lib/svg/chevron-down.svg | 12 + .../common/octicons/lib/svg/chevron-left.svg | 12 + .../common/octicons/lib/svg/chevron-right.svg | 12 + .../common/octicons/lib/svg/chevron-up.svg | 12 + .../common/octicons/lib/svg/circle-slash.svg | 12 + .../common/octicons/lib/svg/circuit-board.svg | 12 + .../theme/common/octicons/lib/svg/clippy.svg | 12 + .../theme/common/octicons/lib/svg/clock.svg | 12 + .../octicons/lib/svg/cloud-download.svg | 12 + .../common/octicons/lib/svg/cloud-upload.svg | 12 + htdocs/theme/common/octicons/lib/svg/code.svg | 12 + .../octicons/lib/svg/comment-discussion.svg | 12 + .../theme/common/octicons/lib/svg/comment.svg | 12 + .../common/octicons/lib/svg/credit-card.svg | 12 + htdocs/theme/common/octicons/lib/svg/dash.svg | 12 + .../common/octicons/lib/svg/dashboard.svg | 12 + .../common/octicons/lib/svg/database.svg | 12 + .../octicons/lib/svg/desktop-download.svg | 12 + .../octicons/lib/svg/device-camera-video.svg | 12 + .../common/octicons/lib/svg/device-camera.svg | 12 + .../octicons/lib/svg/device-desktop.svg | 12 + .../common/octicons/lib/svg/device-mobile.svg | 12 + .../common/octicons/lib/svg/diff-added.svg | 12 + .../common/octicons/lib/svg/diff-ignored.svg | 12 + .../common/octicons/lib/svg/diff-modified.svg | 12 + .../common/octicons/lib/svg/diff-removed.svg | 12 + .../common/octicons/lib/svg/diff-renamed.svg | 12 + htdocs/theme/common/octicons/lib/svg/diff.svg | 12 + .../common/octicons/lib/svg/ellipses.svg | 12 + .../common/octicons/lib/svg/ellipsis.svg | 3 + htdocs/theme/common/octicons/lib/svg/eye.svg | 12 + .../common/octicons/lib/svg/file-binary.svg | 12 + .../common/octicons/lib/svg/file-code.svg | 12 + .../octicons/lib/svg/file-directory.svg | 12 + .../common/octicons/lib/svg/file-media.svg | 12 + .../common/octicons/lib/svg/file-pdf.svg | 12 + .../octicons/lib/svg/file-submodule.svg | 12 + .../lib/svg/file-symlink-directory.svg | 12 + .../octicons/lib/svg/file-symlink-file.svg | 12 + .../common/octicons/lib/svg/file-text.svg | 3 + .../common/octicons/lib/svg/file-zip.svg | 12 + htdocs/theme/common/octicons/lib/svg/file.svg | 12 + .../theme/common/octicons/lib/svg/flame.svg | 12 + htdocs/theme/common/octicons/lib/svg/fold.svg | 12 + htdocs/theme/common/octicons/lib/svg/gear.svg | 12 + htdocs/theme/common/octicons/lib/svg/gift.svg | 12 + .../common/octicons/lib/svg/gist-secret.svg | 12 + htdocs/theme/common/octicons/lib/svg/gist.svg | 12 + .../common/octicons/lib/svg/git-branch.svg | 12 + .../common/octicons/lib/svg/git-commit.svg | 12 + .../common/octicons/lib/svg/git-compare.svg | 12 + .../common/octicons/lib/svg/git-merge.svg | 12 + .../octicons/lib/svg/git-pull-request.svg | 12 + .../theme/common/octicons/lib/svg/globe.svg | 12 + .../theme/common/octicons/lib/svg/grabber.svg | 12 + .../theme/common/octicons/lib/svg/graph.svg | 12 + .../theme/common/octicons/lib/svg/heart.svg | 12 + .../theme/common/octicons/lib/svg/history.svg | 12 + htdocs/theme/common/octicons/lib/svg/home.svg | 12 + .../octicons/lib/svg/horizontal-rule.svg | 12 + .../theme/common/octicons/lib/svg/hubot.svg | 12 + .../theme/common/octicons/lib/svg/inbox.svg | 12 + htdocs/theme/common/octicons/lib/svg/info.svg | 12 + .../common/octicons/lib/svg/issue-closed.svg | 12 + .../common/octicons/lib/svg/issue-opened.svg | 12 + .../octicons/lib/svg/issue-reopened.svg | 12 + .../theme/common/octicons/lib/svg/italic.svg | 12 + .../theme/common/octicons/lib/svg/jersey.svg | 12 + htdocs/theme/common/octicons/lib/svg/key.svg | 12 + .../common/octicons/lib/svg/keyboard.svg | 12 + htdocs/theme/common/octicons/lib/svg/law.svg | 12 + .../common/octicons/lib/svg/light-bulb.svg | 12 + .../common/octicons/lib/svg/link-external.svg | 12 + htdocs/theme/common/octicons/lib/svg/link.svg | 12 + .../common/octicons/lib/svg/list-ordered.svg | 12 + .../octicons/lib/svg/list-unordered.svg | 12 + .../common/octicons/lib/svg/location.svg | 12 + htdocs/theme/common/octicons/lib/svg/lock.svg | 12 + .../common/octicons/lib/svg/logo-gist.svg | 12 + .../common/octicons/lib/svg/logo-github.svg | 12 + .../common/octicons/lib/svg/mail-read.svg | 12 + .../common/octicons/lib/svg/mail-reply.svg | 12 + htdocs/theme/common/octicons/lib/svg/mail.svg | 12 + .../common/octicons/lib/svg/mark-github.svg | 12 + .../common/octicons/lib/svg/markdown.svg | 12 + .../common/octicons/lib/svg/megaphone.svg | 12 + .../theme/common/octicons/lib/svg/mention.svg | 12 + .../common/octicons/lib/svg/milestone.svg | 12 + .../theme/common/octicons/lib/svg/mirror.svg | 12 + .../common/octicons/lib/svg/mortar-board.svg | 12 + htdocs/theme/common/octicons/lib/svg/mute.svg | 12 + .../common/octicons/lib/svg/no-newline.svg | 12 + htdocs/theme/common/octicons/lib/svg/note.svg | 12 + .../common/octicons/lib/svg/octoface.svg | 12 + .../common/octicons/lib/svg/organization.svg | 12 + .../theme/common/octicons/lib/svg/package.svg | 12 + .../common/octicons/lib/svg/paintcan.svg | 12 + .../theme/common/octicons/lib/svg/pencil.svg | 12 + .../theme/common/octicons/lib/svg/person.svg | 12 + htdocs/theme/common/octicons/lib/svg/pin.svg | 12 + htdocs/theme/common/octicons/lib/svg/plug.svg | 12 + .../common/octicons/lib/svg/plus-small.svg | 12 + htdocs/theme/common/octicons/lib/svg/plus.svg | 12 + .../common/octicons/lib/svg/primitive-dot.svg | 12 + .../octicons/lib/svg/primitive-square.svg | 12 + .../theme/common/octicons/lib/svg/project.svg | 12 + .../theme/common/octicons/lib/svg/pulse.svg | 12 + .../common/octicons/lib/svg/question.svg | 12 + .../theme/common/octicons/lib/svg/quote.svg | 12 + .../common/octicons/lib/svg/radio-tower.svg | 12 + .../theme/common/octicons/lib/svg/reply.svg | 12 + .../common/octicons/lib/svg/repo-clone.svg | 12 + .../octicons/lib/svg/repo-force-push.svg | 12 + .../common/octicons/lib/svg/repo-forked.svg | 12 + .../common/octicons/lib/svg/repo-pull.svg | 12 + .../common/octicons/lib/svg/repo-push.svg | 12 + htdocs/theme/common/octicons/lib/svg/repo.svg | 12 + .../theme/common/octicons/lib/svg/rocket.svg | 12 + htdocs/theme/common/octicons/lib/svg/rss.svg | 12 + htdocs/theme/common/octicons/lib/svg/ruby.svg | 12 + .../common/octicons/lib/svg/screen-full.svg | 12 + .../common/octicons/lib/svg/screen-normal.svg | 12 + .../theme/common/octicons/lib/svg/search.svg | 12 + .../theme/common/octicons/lib/svg/server.svg | 12 + .../common/octicons/lib/svg/settings.svg | 12 + .../theme/common/octicons/lib/svg/shield.svg | 12 + .../theme/common/octicons/lib/svg/sign-in.svg | 12 + .../common/octicons/lib/svg/sign-out.svg | 12 + .../theme/common/octicons/lib/svg/smiley.svg | 12 + .../common/octicons/lib/svg/squirrel.svg | 12 + htdocs/theme/common/octicons/lib/svg/star.svg | 12 + htdocs/theme/common/octicons/lib/svg/stop.svg | 12 + htdocs/theme/common/octicons/lib/svg/sync.svg | 12 + htdocs/theme/common/octicons/lib/svg/tag.svg | 12 + .../common/octicons/lib/svg/tasklist.svg | 12 + .../common/octicons/lib/svg/telescope.svg | 12 + .../common/octicons/lib/svg/terminal.svg | 12 + .../common/octicons/lib/svg/text-size.svg | 12 + .../common/octicons/lib/svg/three-bars.svg | 12 + .../common/octicons/lib/svg/thumbsdown.svg | 12 + .../common/octicons/lib/svg/thumbsup.svg | 12 + .../theme/common/octicons/lib/svg/tools.svg | 12 + .../common/octicons/lib/svg/trashcan.svg | 12 + .../common/octicons/lib/svg/triangle-down.svg | 12 + .../common/octicons/lib/svg/triangle-left.svg | 12 + .../octicons/lib/svg/triangle-right.svg | 12 + .../common/octicons/lib/svg/triangle-up.svg | 12 + .../theme/common/octicons/lib/svg/unfold.svg | 12 + .../theme/common/octicons/lib/svg/unmute.svg | 12 + .../common/octicons/lib/svg/unverified.svg | 12 + .../common/octicons/lib/svg/verified.svg | 12 + .../common/octicons/lib/svg/versions.svg | 12 + .../theme/common/octicons/lib/svg/watch.svg | 12 + htdocs/theme/common/octicons/lib/svg/x.svg | 12 + htdocs/theme/common/octicons/lib/svg/zap.svg | 12 + htdocs/theme/common/octicons/package.json | 39 + 188 files changed, 4106 insertions(+) create mode 100644 htdocs/theme/common/octicons/.gitignore create mode 100644 htdocs/theme/common/octicons/.npmignore create mode 100644 htdocs/theme/common/octicons/.travis.yml create mode 100644 htdocs/theme/common/octicons/CHANGELOG.md create mode 100644 htdocs/theme/common/octicons/Gruntfile.js create mode 100644 htdocs/theme/common/octicons/LICENSE create mode 100644 htdocs/theme/common/octicons/README.md create mode 100644 htdocs/theme/common/octicons/index.js create mode 100644 htdocs/theme/common/octicons/lib/data.json create mode 100644 htdocs/theme/common/octicons/lib/octicons-master.sketch create mode 100644 htdocs/theme/common/octicons/lib/octicons.css create mode 100644 htdocs/theme/common/octicons/lib/svg/alert.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/arrow-down.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/arrow-left.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/arrow-right.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/arrow-small-down.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/arrow-small-left.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/arrow-small-right.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/arrow-small-up.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/arrow-up.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/beaker.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/bell.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/bold.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/book.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/bookmark.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/briefcase.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/broadcast.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/browser.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/bug.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/calendar.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/check.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/checklist.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/chevron-down.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/chevron-left.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/chevron-right.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/chevron-up.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/circle-slash.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/circuit-board.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/clippy.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/clock.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/cloud-download.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/cloud-upload.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/code.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/comment-discussion.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/comment.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/credit-card.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/dash.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/dashboard.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/database.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/desktop-download.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/device-camera-video.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/device-camera.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/device-desktop.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/device-mobile.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/diff-added.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/diff-ignored.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/diff-modified.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/diff-removed.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/diff-renamed.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/diff.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/ellipses.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/ellipsis.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/eye.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-binary.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-code.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-directory.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-media.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-pdf.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-submodule.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-symlink-directory.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-symlink-file.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-text.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file-zip.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/file.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/flame.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/fold.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/gear.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/gift.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/gist-secret.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/gist.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/git-branch.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/git-commit.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/git-compare.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/git-merge.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/git-pull-request.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/globe.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/grabber.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/graph.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/heart.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/history.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/home.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/horizontal-rule.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/hubot.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/inbox.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/info.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/issue-closed.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/issue-opened.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/issue-reopened.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/italic.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/jersey.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/key.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/keyboard.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/law.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/light-bulb.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/link-external.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/link.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/list-ordered.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/list-unordered.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/location.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/lock.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/logo-gist.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/logo-github.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/mail-read.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/mail-reply.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/mail.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/mark-github.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/markdown.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/megaphone.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/mention.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/milestone.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/mirror.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/mortar-board.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/mute.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/no-newline.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/note.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/octoface.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/organization.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/package.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/paintcan.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/pencil.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/person.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/pin.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/plug.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/plus-small.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/plus.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/primitive-dot.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/primitive-square.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/project.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/pulse.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/question.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/quote.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/radio-tower.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/reply.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/repo-clone.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/repo-force-push.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/repo-forked.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/repo-pull.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/repo-push.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/repo.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/rocket.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/rss.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/ruby.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/screen-full.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/screen-normal.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/search.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/server.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/settings.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/shield.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/sign-in.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/sign-out.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/smiley.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/squirrel.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/star.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/stop.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/sync.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/tag.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/tasklist.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/telescope.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/terminal.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/text-size.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/three-bars.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/thumbsdown.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/thumbsup.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/tools.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/trashcan.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/triangle-down.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/triangle-left.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/triangle-right.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/triangle-up.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/unfold.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/unmute.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/unverified.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/verified.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/versions.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/watch.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/x.svg create mode 100644 htdocs/theme/common/octicons/lib/svg/zap.svg create mode 100644 htdocs/theme/common/octicons/package.json diff --git a/htdocs/theme/common/octicons/.gitignore b/htdocs/theme/common/octicons/.gitignore new file mode 100644 index 00000000000..b0e34801fac --- /dev/null +++ b/htdocs/theme/common/octicons/.gitignore @@ -0,0 +1,4 @@ +node_modules +.DS_Store +build +*.log diff --git a/htdocs/theme/common/octicons/.npmignore b/htdocs/theme/common/octicons/.npmignore new file mode 100644 index 00000000000..f50769fa751 --- /dev/null +++ b/htdocs/theme/common/octicons/.npmignore @@ -0,0 +1,5 @@ +.github +.travis.yml +Gruntfile.js +lib +test diff --git a/htdocs/theme/common/octicons/.travis.yml b/htdocs/theme/common/octicons/.travis.yml new file mode 100644 index 00000000000..435bc15d7af --- /dev/null +++ b/htdocs/theme/common/octicons/.travis.yml @@ -0,0 +1,3 @@ +language: node_js +node_js: + - '5' diff --git a/htdocs/theme/common/octicons/CHANGELOG.md b/htdocs/theme/common/octicons/CHANGELOG.md new file mode 100644 index 00000000000..2085dcb0169 --- /dev/null +++ b/htdocs/theme/common/octicons/CHANGELOG.md @@ -0,0 +1,363 @@ +### HEAD + +### 5.0.1 + +Fixes: + +- projects icon renders as a block, using `fill-rule` fixes it + +### 5.0.0 + +Adds: + +- `project` +- `note` +- `screen-full` +- `screen-normal` +- More node.js api endpoints for accessing icons https://github.com/primer/octicons/pull/120 +- Creating a spritesheet demo https://github.com/primer/octicons/pull/121 + +Removes: + +- Deprecating support for the webfont https://github.com/primer/octicons/pull/117 +- Stop checking `/build/` directory into repository https://github.com/primer/octicons/pull/118 +- Removing sass as a dependency https://github.com/primer/octicons/pull/119 + +### 4.4.0 + +Adds: + +- svg.json file that is accessible from node require + +### 4.3.0 + +Fixes: + +- Vertical alignment on `italic` + +Modifies: + +- `person` +- `organization` + +### 4.2.1 + +Fixes: + +- Removing inline sourcemap from `min` versions of css. + +### 4.2.0 + +Adds: + +- Keywords.json file that has an index of all octicons with alias names + +### 4.1.1 (June 16, 2016) + +Fixes: + +- Putting the `$octicons-font-path` back in the scss file. + +### 4.1.0 (June 6, 2016) + +Adds: + +- Installation docs https://github.com/primer/octicons/pull/94 +- `grabber` +- `plus-small` + +Modifies: + +- `smiley` + +Refines: + +- Renames `mail-reply` to `reply` and refines its shape. + +Fixes: + +- Revert license back to SPDX standard + +### 4.0.0 (June 6, 2016) + +Adds: + +- Whole new grunt build system including svg sprite sheet. +- adding css min https://github.com/primer/octicons/pull/60 +- adding woff2 format https://github.com/primer/octicons/issues/3 +- creates spritesheet of svg files https://github.com/primer/octicons/issues/88 + +Removes: + +- Bower support + +Fixes: + +- all svg icons include viewBox https://github.com/primer/octicons/issues/87 +- license in package.json https://github.com/primer/octicons/issues/85 + +### 3.5.0 (February 12, 2016) + +Adds: + +- `unverified` + +Refines: + +- `verified` + +### 3.4.1 (January 24, 2016) + +This includes various SVG viewport refinements. + +Refines: + +- `thumbs-down` +- `logo-github` + +### 3.4.0 (January 22, 2016) + +Adds: + +- `verified` +- `smiley` + +Removes: + +- `color-mode` + +Refines: + +- `primitive-dot` +- `horizontal-rule` +- `triangle-down` +- `triangle-up` +- `triangle-left` +- `triangle-right` +- `globe` +- `flame` +- `comment-discussion` + +### 3.3.0 (November 12, 2015) + +Adds: + +- `logo-gist` + +Resizes all our SVG to be 16x16 instead of 1024x1024 + +### 3.2.0 (November 6, 2015) + +Adds: + +- `bold` +- `text-size` +- `italic` +- `tasklist` + +It also normalizes some styling in: + +- `list-unordered` +- `list-ordered` +- `quote` +- `mention` +- `bookmark` +- `threebars` + +Removes + +- `screen-normal` +- `screen-full` + + +### 3.1.0 (August 13, 2015) + +Adds + +- `shield` + +This thickens stroke widths slightly on the following icons: + +- `circle-slash` +- `clock` +- `cloud-upload` +- `cloud-download` +- `dashboard` +- `info` +- `issue-closed` +- `issue` +- `issue-reopened` +- `history` +- `question` +- `search` + +Fills `comment-discussion` + +Thickens `x` to match `checkmark` + +### 3.0.1 (August 10, 2015) + +Some files were missing in `3.0.0` + +### 3.0.0 (August 10, 2015) + +Removes + +- `microscope` +- `beer` +- `split` +- `puzzle` +- `steps` +- `podium` +- `timer` +- all `alignment` icons +- all `move` icons +- all `playback` icons +- all `jump` icons + +Adds + +- `beaker` +- `bell` +- `desktop-download` +- `watch` + +Line-weight changes, sizing normalization, and new drawings + +- `circle-slash` +- `lock` +- `cloud-upload` +- `cloud-download` +- `plus` +- `✕` +- `broadcast` +- `lock` +- all `repo` icons +- organization +- person +- all `chevrons` & `triangles` +- all `diff` icons +- `clippy` +- all `issue` and circular icons +- `rss` +- `ruby` +- `cancel` +- `settings` +- `mirror` +- `external-link` +- `history` +- `gear` +- `settings` +- `info` +- `history` +- `package` +- `gist-secret` +- `rocket` +- `law` +- `telescope` +- `search` +- `tag` +- `normal-screen` +- `iphone` +- `no-new-line` +- `desktop` +- all `git` icons +- `circuit-board` +- `heart` +- `home` +- `briefcase` +- `wiki` +- `bookmark` +- `briefcase` +- `calendar` +- `color-mode` +- `comment` +- `discussions` +- `credit-card` +- `dashboard` +- `camera` +- `video` +- `bug` +- `desktop` +- `ellipses` +- `eye` +- all `files` & `folders` +- `fold` +- `unfold` +- `gift` +- `graph` +- `hubot` +- `inbox` +- `jersey` +- `keyboard` +- `light-bulb` +- `link` +- `location` +- `mail` +- `mail-read` +- `marker` +- `plug` +- `mute` +- `pencil` +- `push-pin` +- `fullscreen` +- `unfullscreen` +- `server` +- `sign-in` +- `sign-out` +- `tag` +- `terminal` +- `thumbs-up` +- `thumbs-down` +- `trash` +- `unmute` +- `versions` +- `gist` +- `key` +- `megaphone` +- `checklist` + +## 2.4.1 (June 2, 2015) + +- Add the scss file I forgot to include + +## 2.4.0 (June 2, 2015) + +- Add `octicons.scss` +- Revert path changes to `sprockets-octicons.scss`, as they broke octicons in sprockets. + +## 2.3.0 (May 28, 2015) + +- Add a path variable to `sprockets-octicons.scss` to be consistent with octicons.less` + +## 2.2.3 (May 21, 2015) + +- Use SPDX license identifiers in package.json + +## 2.2.2 (April 1, 2015) + +Fixes file icons for + +- `file-binary` +- `file-code` +- `file-media` +- `file-pdf` +- `file-symlink-file` +- `file-text` +- `file-zip` + +## 2.2.1 (March 30, 2015) + +- Fix vector artifact and smooth curves in `mark-github` + +## 2.2.0 (Feb 18, 2015) + +- Add two new icons: `thumbsup` and `thumbsdown` + +## 2.0.1 (June 16, 2014) + +- Add mention of github.com/logos to the license + +## 2.0.0 (June 16, 2014) + +- Hello world diff --git a/htdocs/theme/common/octicons/Gruntfile.js b/htdocs/theme/common/octicons/Gruntfile.js new file mode 100644 index 00000000000..48e0c300427 --- /dev/null +++ b/htdocs/theme/common/octicons/Gruntfile.js @@ -0,0 +1,137 @@ +var fs = require("fs") +var path = require("path") + +module.exports = function(grunt) { + + grunt.initConfig({ + + pkg: grunt.file.readJSON('package.json'), + + cssnano: { + options: {}, + dist: { + files: { + 'build/octicons.min.css': 'build/octicons.css' + } + } + }, + + svgmin: { + dist: { + options: { + plugins: [ + {removeTitle: true}, + {removeStyleElement: true}, + {removeAttrs: { attrs: ['id', 'class', 'data-name', 'fill'] }}, + {removeEmptyContainers: true}, + {sortAttrs: true}, + {removeUselessDefs: true}, + {removeEmptyText: true}, + {removeEditorsNSData: true}, + {removeEmptyAttrs: true}, + {removeHiddenElems: true} + ] + }, + files: [{ + expand: true, + cwd: 'lib/svg', + src: ['*.svg'], + dest: 'build/svg' + }] + } + }, + + svgstore: { + options: { + includeTitleElement: false, + inheritviewbox: true, + includedemo: function(arg) { + var octicons = require("./index.js") + + var icons = function() { + var result = [] + Object.keys(octicons).forEach(function(key){ + result.push("
    " + octicons[key].toSVGUse({ height: 32 }) + "
    " + key + "
    ") + }) + return result.join("\n") + } + + return ` + + + + + Octicons Spritesheet test + + + + + ${arg.svg} +
    Octicons SVG Spritesheet demo
    +
    All the icons rendered below use the svg spriteheet located in the /build/ directory.
    +
    + ${icons()} +
    + + +` + } + }, + default: { + files: { + "build/sprite.octicons.svg": ['build/svg/*.svg'] + } + }, + }, + + clean: { + build: [ + 'build/*' + ] + }, + + copy: { + css: { + src: "lib/octicons.css", + dest: "build/octicons.css" + } + } + }); + + grunt.loadNpmTasks('grunt-contrib-clean'); + grunt.loadNpmTasks('grunt-contrib-copy'); + grunt.loadNpmTasks('grunt-svgstore'); + grunt.loadNpmTasks('grunt-svgmin'); + grunt.loadNpmTasks('grunt-cssnano'); + + // build tasks + grunt.registerTask('css', ['copy', 'cssnano']); + grunt.registerTask('svg', ['clean', 'svgmin']); + + // default task, build /dist/ + grunt.registerTask('default', [ 'svg', 'css', 'json:svg', 'svgstore']); + + grunt.registerTask('json:svg', 'add svg string to data.json build', function() { + var files = fs.readdirSync("./build/svg/") + var data = JSON.parse(fs.readFileSync("./lib/data.json")) + + files.forEach(function(file) { + var svg = fs.readFileSync(path.resolve("./build/svg", file)) + var key = path.basename(file, ".svg") + if (data[key]) { + var raw = svg.toString() + data[key].path = //g.exec(raw)[0] + data[key].height = /height="(\d+)"/g.exec(raw)[1] + data[key].width = /width="(\d+)"/g.exec(raw)[1] + } + }) + + fs.writeFileSync("build/data.json", JSON.stringify(data)); + }) +}; diff --git a/htdocs/theme/common/octicons/LICENSE b/htdocs/theme/common/octicons/LICENSE new file mode 100644 index 00000000000..4cf2020ce77 --- /dev/null +++ b/htdocs/theme/common/octicons/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2012-2016 GitHub, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/htdocs/theme/common/octicons/README.md b/htdocs/theme/common/octicons/README.md new file mode 100644 index 00000000000..84edd84dce5 --- /dev/null +++ b/htdocs/theme/common/octicons/README.md @@ -0,0 +1,194 @@ +# GitHub Octicons + +[![NPM version](https://img.shields.io/npm/v/octicons.svg)](https://www.npmjs.org/package/octicons) +[![Build Status](https://travis-ci.org/primer/octicons.svg?branch=master)](https://travis-ci.org/primer/octicons) + +> Octicons are a scalable set of icons handcrafted with <3 by GitHub. + +## Install + +**NOTE:** The compiled files are located in `/build/`. This directory is located in the published npm package. Which means you can access it when you `npm install octicons`. You can also build this directory by following the [building octicons directions](#building-octicons). The files in the `/lib/` directory are the raw source files and are not compiled or optimized. + +#### NPM + +This repository is distributed with [npm][npm]. After [installing npm][install-npm], you can install `octicons` with this command. + +``` +$ npm install --save octicons +``` + +## Usage + +For all the usages, we recommend using the CSS located in `./build/octicons.css`. This is some simple CSS to normalize the icons and inherit colors. + +### Spritesheet + +With a [SVG sprite icon system](https://css-tricks.com/svg-sprites-use-better-icon-fonts/) you can include the sprite sheet located `./build/sprite.octicons.svg` after you [build the icons](#building-octicons) or from the npm package. There is a demo of how to use the spritesheet in the build directory also. + +### Node + +After installing `npm install octicons` you can access the icons like this. + +```js +var octicons = require("octicons") +octicons.alert +// { keywords: [ 'warning', 'triangle', 'exclamation', 'point' ], +// path: '', +// height: '16', +// width: '16', +// symbol: 'alert', +// options: +// { version: '1.1', +// width: '16', +// height: '16', +// viewBox: '0 0 16 16', +// class: 'octicon octicon-alert', +// 'aria-hidden': 'true' }, +// toSVG: [Function] } +``` + +There will be a key for every icon, with `keywords` and `svg`. + +#### `octicons.alert.symbol` + +Returns the string of the symbol name + +```js +octicons.x.symbol +// "x" +``` + +#### `octicons.person.path` + +Path returns the string representation of the path of the icon. + +```js +octicons.x.path +// +``` + +#### `octicons.issue.options` + +This is a json object of all the `options` that will be added to the output tag. + +```js +octicons.x.options +// { version: '1.1', width: '12', height: '16', viewBox: '0 0 12 16', class: 'octicon octicon-x', 'aria-hidden': 'true' } +``` + +#### `octicons.alert.width` + +Width is the icon's true width. Based on the svg view box width. _Note, this doesn't change if you scale it up with size options, it only is the natural width of the icon_ + +#### `octicons.alert.height` + +Height is the icon's true height. Based on the svg view box height. _Note, this doesn't change if you scale it up with size options, it only is the natural height of the icon_ + +#### `keywords` + +Returns an array of keywords for the icon. The data [comes from the octicons repository](https://github.com/primer/octicons/blob/master/lib/data.json). Consider contributing more aliases for the icons. + +```js +octicons.x.keywords +// ["remove", "close", "delete"] +``` + +#### `octicons.alert.toSVG()` + +Returns a string of the svg tag + +```js +octicons.x.toSVG() +// +``` + +The `.toSVG()` method accepts an optional `options` object. This is used to add CSS classnames, a11y options, and sizing. + +##### class + +Add more CSS classes to the `` tag. + +```js +octicons.x.toSVG({ "class": "close" }) +// +``` + +##### aria-label + +Add accessibility `aria-label` to the icon. + +```js +octicons.x.toSVG({ "aria-label": "Close the window" }) +// +``` + +##### width & height + +Size the SVG icon larger using `width` & `height` independently or together. + +```js +octicons.x.toSVG({ "width": 45 }) +// +``` + +#### `octicons.alert.toSVGUse()` + +Returns a string of the svg tag with the `` tag, for use with the spritesheet located in the /build/ directory. + +```js +octicons.x.toSVGUse() +// +``` + +### Ruby + +If your environment is Ruby on Rails, we have a [octicons_helper](https://github.com/primer/octicons_helper) gem available that renders SVG in your page. The octicons_helper uses the [octicons_gem](https://github.com/primer/octicons_gem) to do the computing and reading of the SVG files. + +### Jekyll + +For jekyll, there's a [jekyll-octicons](https://github.com/primer/jekyll-octicons) plugin available. This works exactly like the octicons_helper. + +## Changing, adding, or deleting icons + +1. Open the [Sketch document][sketch-document] in `/lib/`. Each icon exists as an artboard within our master Sketch document. If you’re adding an icon, duplicate one of the artboards and add your shapes to it. Be sure to give your artboard a name that makes sense. +2. Once you’re happy with your icon set, choose File > Export… +3. Choose all the artboards you’d like to export and then press “Export” +4. Export to `/lib/svg/` + +You’ll next need to build your Octicons. + +## Building Octicons + +All the files you need will be in the `/build/` directory already, but if you’ve made changes to the `/lib/` directory and need to regenerate, follow these steps: + +1. Open the Octicons directory in Terminal +2. `npm install` to install all dependencies for the project. +3. Run the command `npm run build`. This will run the grunt task to build the SVGs, placing them in the `/build/` directory. + +## Publishing + +If you have access to publish this repository, these are the steps to publishing. If you need access, contact [#design-systems](https://github.slack.com/archives/design-systems). + +1. Update the [CHANGELOG.md](./CHANGELOG.md) with relevant version number and any updates made to the repository. +2. `npm version ` Run [npm version](https://docs.npmjs.com/cli/version) inputing the relevant version type. The versioning is [semver](http://semver.org/), so version appropriately based on what has changed. +3. `npm publish` This will publish the new version to npmjs.org +4. `git push && git push --tags` Push all these changes to origin. + +## License + +(c) 2012-2016 GitHub, Inc. + +When using the GitHub logos, be sure to follow the [GitHub logo guidelines](https://github.com/logos). + +_SVG License:_ [SIL OFL 1.1](http://scripts.sil.org/OFL) +Applies to all SVG files + +_Code License:_ [MIT](./LICENSE) +Applies to all other files + +[primer]: https://github.com/primer/primer +[docs]: http://primercss.io/ +[npm]: https://www.npmjs.com/ +[install-npm]: https://docs.npmjs.com/getting-started/installing-node +[sass]: http://sass-lang.com/ +[sketch-document]: https://github.com/primer/octicons/blob/master/lib/octicons-master.sketch diff --git a/htdocs/theme/common/octicons/index.js b/htdocs/theme/common/octicons/index.js new file mode 100644 index 00000000000..186af5cb46c --- /dev/null +++ b/htdocs/theme/common/octicons/index.js @@ -0,0 +1,67 @@ +var data = require('./build/data.json') + +Object.keys(data).forEach(function(key) { + + // Returns a string representation of html attributes + var htmlAttributes = function(icon, options) { + var attributes = [] + var attrObj = Object.assign({}, data[key].options, options) + + // If the user passed in options + if (options) { + + // If any of the width or height is passed in + if(options["width"] || options["height"]) { + attrObj["width"] = options["width"] ? options["width"] : (parseInt(options["height"]) * data[key].options["width"] / data[key].options["height"]) + attrObj["height"] = options["height"] ? options["height"] : (parseInt(options["width"]) * data[key].options["height"] / data[key].options["width"]) + } + + // If the user passed in class + if (options["class"]) { + attrObj["class"] = "octicon octicon-" + key + " " + options["class"] + attrObj["class"].trim() + } + + // If the user passed in aria-label + if (options["aria-label"]) { + attrObj["aria-label"] = options["aria-label"] + attrObj["role"] = "img" + + // Un-hide the icon + delete attrObj["aria-hidden"] + } + } + + Object.keys(attrObj).forEach(function(option) { + attributes.push(option + "=\"" + attrObj[option] + "\"") + }) + + return attributes.join(" ").trim() + } + + // Set the symbol for easy access + data[key].symbol = key + + // Set all the default options + data[key].options = { + "version": "1.1", + "width": data[key].width, + "height": data[key].height, + "viewBox": "0 0 " + data[key].width + " " + data[key].height, + "class": "octicon octicon-" + key, + "aria-hidden": "true" + } + + // Function to return an SVG object + data[key].toSVG = function(options) { + return "" + data[key].path + "" + } + + // Function to return an SVG object with a use, assuming you use the svg sprite + data[key].toSVGUse = function(options) { + return "" + } +}) + +// Import data into exports +module.exports = data diff --git a/htdocs/theme/common/octicons/lib/data.json b/htdocs/theme/common/octicons/lib/data.json new file mode 100644 index 00000000000..af6b94aa6b1 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/data.json @@ -0,0 +1,1174 @@ +{ + "alert": { + "keywords": [ + "warning", + "triangle", + "exclamation", + "point" + ] + }, + "arrow-down": { + "keywords": [ + "point", + "direction" + ] + }, + "arrow-left": { + "keywords": [ + "point", + "direction" + ] + }, + "arrow-right": { + "keywords": [ + "point", + "direction" + ] + }, + "arrow-small-down": { + "keywords": [ + "point", + "direction" + ] + }, + "arrow-small-left": { + "keywords": [ + "point", + "direction", + "little", + "tiny" + ] + }, + "arrow-small-right": { + "keywords": [ + "point", + "direction", + "little", + "tiny" + ] + }, + "arrow-small-up": { + "keywords": [ + "point", + "direction", + "little", + "tiny" + ] + }, + "arrow-up": { + "keywords": [ + "point", + "direction" + ] + }, + "beaker": { + "keywords": [ + "experiment", + "labs", + "experimental", + "feature", + "test", + "science", + "education", + "study", + "development", + "testing" + ] + }, + "bell": { + "keywords": [ + "notification" + ] + }, + "bold": { + "keywords": [ + "bold" + ] + }, + "book": { + "keywords": [ + "book", + "journal", + "wiki", + "readme" + ] + }, + "bookmark": { + "keywords": [ + "tabbard" + ] + }, + "briefcase": { + "keywords": [ + "suitcase", + "business" + ] + }, + "broadcast": { + "keywords": [ + "rss", + "radio", + "signal" + ] + }, + "browser": { + "keywords": [ + "window", + "web" + ] + }, + "bug": { + "keywords": [ + "insect" + ] + }, + "calendar": { + "keywords": [ + "time", + "day", + "month", + "year" + ] + }, + "check": { + "keywords": [ + "mark", + "yes", + "confirm", + "accept", + "ok", + "success" + ] + }, + "checklist": { + "keywords": [ + "todo" + ] + }, + "chevron-down": { + "keywords": [ + "triangle", + "arrow" + ] + }, + "chevron-left": { + "keywords": [ + "triangle", + "arrow" + ] + }, + "chevron-right": { + "keywords": [ + "triangle", + "arrow" + ] + }, + "chevron-up": { + "keywords": [ + "triangle", + "arrow" + ] + }, + "circle-slash": { + "keywords": [ + "no", + "deny", + "fail", + "failure", + "error", + "bad" + ] + }, + "circuit-board": { + "keywords": [ + "developer", + "hardware", + "electricity" + ] + }, + "clippy": { + "keywords": [ + "copy", + "paste", + "save", + "capture" + ] + }, + "clock": { + "keywords": [ + "time", + "hour", + "minute", + "second" + ] + }, + "cloud-download": { + "keywords": [ + "save", + "install", + "get" + ] + }, + "cloud-upload": { + "keywords": [ + "put", + "export" + ] + }, + "code": { + "keywords": [ + "brackets" + ] + }, + "comment": { + "keywords": [ + "speak", + "bubble" + ] + }, + "comment-discussion": { + "keywords": [ + "converse", + "talk" + ] + }, + "credit-card": { + "keywords": [ + "money", + "billing", + "payments", + "transactions" + ] + }, + "dash": { + "keywords": [ + "hyphen", + "range" + ] + }, + "dashboard": { + "keywords": [ + "speed", + "dial" + ] + }, + "database": { + "keywords": [ + "disks", + "data" + ] + }, + "desktop-download": { + "keywords": [ + "clone", + "download" + ] + }, + "device-camera": { + "keywords": [ + "photo", + "picture", + "image", + "snapshot" + ] + }, + "device-camera-video": { + "keywords": [ + "watch", + "view", + "media", + "stream" + ] + }, + "device-desktop": { + "keywords": [ + "computer", + "monitor" + ] + }, + "device-mobile": { + "keywords": [ + "phone", + "iphone", + "cellphone" + ] + }, + "diff": { + "keywords": [ + "difference", + "changes", + "compare" + ] + }, + "diff-added": { + "keywords": [ + "new", + "addition" + ] + }, + "diff-ignored": { + "keywords": [ + "slash" + ] + }, + "diff-modified": { + "keywords": [ + "dot", + "changed", + "updated" + ] + }, + "diff-removed": { + "keywords": [ + "deleted", + "subtracted", + "dash" + ] + }, + "diff-renamed": { + "keywords": [ + "moved", + "arrow" + ] + }, + "ellipses": { + "keywords": [ + "dot", + "more" + ] + }, + "ellipsis": { + "keywords": [ + "read", + "more", + "hidden", + "expand" + ] + }, + "eye": { + "keywords": [ + "look", + "watch", + "see" + ] + }, + "file": { + "keywords": [ + "file" + ] + }, + "file-binary": { + "keywords": [ + "image", + "video", + "word", + "powerpoint", + "excel" + ] + }, + "file-code": { + "keywords": [ + "text", + "javascript", + "html", + "css", + "php", + "ruby", + "coffeescript", + "sass", + "scss" + ] + }, + "file-directory": { + "keywords": [ + "folder" + ] + }, + "file-media": { + "keywords": [ + "image", + "video", + "audio" + ] + }, + "file-pdf": { + "keywords": [ + "adobe" + ] + }, + "file-submodule": { + "keywords": [ + "folder" + ] + }, + "file-symlink-directory": { + "keywords": [ + "folder", + "subfolder", + "link", + "alias" + ] + }, + "file-symlink-file": { + "keywords": [ + "link", + "alias" + ] + }, + "file-text": { + "keywords": [ + "document" + ] + }, + "file-zip": { + "keywords": [ + "compress", + "archive" + ] + }, + "flame": { + "keywords": [ + "fire", + "hot", + "burn", + "trending" + ] + }, + "fold": { + "keywords": [ + "unfold", + "hide", + "collapse" + ] + }, + "gear": { + "keywords": [ + "settings" + ] + }, + "gift": { + "keywords": [ + "package", + "present", + "skill", + "craft", + "freebie" + ] + }, + "gist": { + "keywords": [ + "gist", + "github" + ] + }, + "gist-secret": { + "keywords": [ + "gist", + "secret", + "private" + ] + }, + "git-branch": { + "keywords": [ + "branch", + "git" + ] + }, + "git-commit": { + "keywords": [ + "save" + ] + }, + "git-compare": { + "keywords": [ + "difference", + "changes" + ] + }, + "git-merge": { + "keywords": [ + "join" + ] + }, + "git-pull-request": { + "keywords": [ + "review" + ] + }, + "globe": { + "keywords": [ + "world" + ] + }, + "grabber": { + "keywords": [ + "mover", + "drap", + "drop" + ] + }, + "graph": { + "keywords": [ + "trend", + "stats", + "statistics" + ] + }, + "heart": { + "keywords": [ + "love" + ] + }, + "history": { + "keywords": [ + "time", + "past", + "revert", + "back" + ] + }, + "home": { + "keywords": [ + "welcome", + "index", + "house", + "building" + ] + }, + "horizontal-rule": { + "keywords": [ + "hr" + ] + }, + "hubot": { + "keywords": [ + "robot" + ] + }, + "inbox": { + "keywords": [ + "mail", + "todo", + "new", + "messages" + ] + }, + "info": { + "keywords": [ + "help" + ] + }, + "issue-closed": { + "keywords": [ + "done", + "complete" + ] + }, + "issue-opened": { + "keywords": [ + "new" + ] + }, + "issue-reopened": { + "keywords": [ + "regression" + ] + }, + "italic": { + "keywords": [ + "font", + "italic", + "style" + ] + }, + "jersey": { + "keywords": [ + "team", + "game", + "basketball" + ] + }, + "key": { + "keywords": [ + "key", + "lock", + "secure", + "safe" + ] + }, + "keyboard": { + "keywords": [ + "type", + "keys", + "write", + "shortcuts" + ] + }, + "law": { + "keywords": [ + "legal", + "bill" + ] + }, + "light-bulb": { + "keywords": [ + "idea" + ] + }, + "link": { + "keywords": [ + "connect", + "hyperlink" + ] + }, + "link-external": { + "keywords": [ + "out", + "see", + "more", + "go", + "to" + ] + }, + "list-ordered": { + "keywords": [ + "numbers", + "tasks", + "todo", + "items" + ] + }, + "list-unordered": { + "keywords": [ + "bullet", + "point", + "tasks", + "todo", + "items" + ] + }, + "location": { + "keywords": [ + "here", + "marker" + ] + }, + "lock": { + "keywords": [ + "secure", + "safe", + "protected" + ] + }, + "logo-gist": { + "keywords": [ + "logo", + "gist" + ] + }, + "logo-github": { + "keywords": [ + "brand" + ] + }, + "mail": { + "keywords": [ + "email", + "unread" + ] + }, + "mail-read": { + "keywords": [ + "email", + "open" + ] + }, + "mail-reply": { + "keywords": [ + "email" + ] + }, + "mark-github": { + "keywords": [ + "octocat" + ] + }, + "markdown": { + "keywords": [ + "markup", + "style" + ] + }, + "megaphone": { + "keywords": [ + "bullhorn", + "loud", + "shout", + "broadcast" + ] + }, + "mention": { + "keywords": [ + "at", + "ping" + ] + }, + "milestone": { + "keywords": [ + "marker" + ] + }, + "mirror": { + "keywords": [ + "reflect" + ] + }, + "mortar-board": { + "keywords": [ + "education", + "learn", + "teach" + ] + }, + "mute": { + "keywords": [ + "quiet", + "sound", + "audio", + "turn", + "off" + ] + }, + "no-newline": { + "keywords": [ + "return" + ] + }, + "note": { + "keywords": [ + "card", + "paper", + "ticket" + ] + }, + "octoface": { + "keywords": [ + "octocat" + ] + }, + "organization": { + "keywords": [ + "people", + "group", + "team" + ] + }, + "package": { + "keywords": [ + "box", + "ship" + ] + }, + "paintcan": { + "keywords": [ + "style", + "theme", + "art", + "color" + ] + }, + "pencil": { + "keywords": [ + "edit", + "change", + "update", + "write" + ] + }, + "person": { + "keywords": [ + "people", + "man", + "woman", + "human" + ] + }, + "pin": { + "keywords": [ + "people", + "save", + "star", + "bookmark" + ] + }, + "plug": { + "keywords": [ + "hook", + "webhook" + ] + }, + "plus": { + "keywords": [ + "add", + "new", + "more" + ] + }, + "plus-small": { + "keywords": [ + "add", + "new", + "more", + "small" + ] + }, + "primitive-dot": { + "keywords": [ + "circle" + ] + }, + "primitive-square": { + "keywords": [ + "box" + ] + }, + "project": { + "keywords": [ + "board", + "kanban", + "columns", + "scrum" + ] + }, + "pulse": { + "keywords": [ + "graph", + "trend", + "line" + ] + }, + "question": { + "keywords": [ + "help", + "explain" + ] + }, + "quote": { + "keywords": [ + "quotation" + ] + }, + "radio-tower": { + "keywords": [ + "broadcast" + ] + }, + "reply": { + "keywords": [ + "reply all", + "back" + ] + }, + "repo": { + "keywords": [ + "book", + "journal" + ] + }, + "repo-clone": { + "keywords": [ + "book", + "journal" + ] + }, + "repo-force-push": { + "keywords": [ + "book", + "journal", + "put" + ] + }, + "repo-forked": { + "keywords": [ + "book", + "journal", + "copy" + ] + }, + "repo-pull": { + "keywords": [ + "book", + "journal", + "get" + ] + }, + "repo-push": { + "keywords": [ + "book", + "journal", + "put" + ] + }, + "rocket": { + "keywords": [ + "staff", + "stafftools", + "blast", + "off", + "space" + ] + }, + "rss": { + "keywords": [ + "broadcast", + "feed" + ] + }, + "ruby": { + "keywords": [ + "code" + ] + }, + "screen-full": { + "keywords": [ + "fullscreen", + "expand" + ] + }, + "screen-normal": { + "keywords": [ + "fullscreen", + "expand", + "exit" + ] + }, + "search": { + "keywords": [ + "magnifying", + "glass" + ] + }, + "server": { + "keywords": [ + "computers", + "racks", + "ops" + ] + }, + "settings": { + "keywords": [ + "sliders", + "filters" + ] + }, + "shield": { + "keywords": [ + "protect", + "shield", + "lock" + ] + }, + "sign-in": { + "keywords": [ + "door", + "arrow", + "direction", + "enter" + ] + }, + "sign-out": { + "keywords": [ + "door", + "arrow", + "direction", + "leave" + ] + }, + "smiley": { + "keywords": [ + "emoji", + "smile", + "mood", + "emotion" + ] + }, + "squirrel": { + "keywords": [ + "ship", + "shipit" + ] + }, + "star": { + "keywords": [ + "save", + "remember", + "like" + ] + }, + "stop": { + "keywords": [ + "block", + "spam" + ] + }, + "sync": { + "keywords": [ + "cycle", + "refresh", + "loop" + ] + }, + "tag": { + "keywords": [ + "release" + ] + }, + "tasklist": { + "keywords": [ + "todo" + ] + }, + "telescope": { + "keywords": [ + "science", + "space", + "look", + "view", + "explore" + ] + }, + "terminal": { + "keywords": [ + "code", + "ops", + "shell" + ] + }, + "text-size": { + "keywords": [ + "font", + "size", + "text" + ] + }, + "three-bars": { + "keywords": [ + "hamburger" + ] + }, + "thumbsdown": { + "keywords": [ + "thumb", + "thumbsdown", + "rejected" + ] + }, + "thumbsup": { + "keywords": [ + "thumb", + "thumbsup", + "prop", + "ship" + ] + }, + "tools": { + "keywords": [ + "screwdriver", + "wrench", + "settings" + ] + }, + "trashcan": { + "keywords": [ + "garbage", + "rubbish", + "recycle", + "delete" + ] + }, + "triangle-down": { + "keywords": [ + "arrow", + "point", + "direction" + ] + }, + "triangle-left": { + "keywords": [ + "arrow", + "point", + "direction" + ] + }, + "triangle-right": { + "keywords": [ + "arrow", + "point", + "direction" + ] + }, + "triangle-up": { + "keywords": [ + "arrow", + "point", + "direction" + ] + }, + "unfold": { + "keywords": [ + "expand", + "open", + "reveal" + ] + }, + "unmute": { + "keywords": [ + "loud", + "volume", + "audio", + "sound", + "play" + ] + }, + "unverified": { + "keywords": [ + "insecure", + "untrusted" + ] + }, + "verified": { + "keywords": [ + "trusted", + "secure", + "trustworthy" + ] + }, + "versions": { + "keywords": [ + "history" + ] + }, + "watch": { + "keywords": [ + "wait", + "hourglass" + ] + }, + "x": { + "keywords": [ + "remove", + "close", + "delete" + ] + }, + "zap": { + "keywords": [ + "electricity", + "lightning", + "props", + "like", + "star", + "save" + ] + } +} diff --git a/htdocs/theme/common/octicons/lib/octicons-master.sketch b/htdocs/theme/common/octicons/lib/octicons-master.sketch new file mode 100644 index 0000000000000000000000000000000000000000..85a3f1d431d4afa5fdc9c45e4ef9e1e2975d6487 GIT binary patch literal 1957888 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�k_EQ;c0q zWxa~ksqT0;$~r0Q6TjD@NY*EQXXF@K-IB*4x-{!$fSkfS^+?-S9!q*6w|6sg!Sa&I zFhdV=fPw(Zm!l^v$^is9(%myo(z8}p61VC!sW#QBcAC_Q=_b|1N|Q-@2qMSsx7+Lv zkJ%dZ`OOZi%W3wyJa)6k=dkf0L?Fj)vk=i+tQHrr4a2o+agj-NP%Z4b!q?3X5C_I9 zIKl?NP2<&Y4O~mqANi@uS}h>)E>$Ss|Tw4tA=!0TGCqToRRuwq`n!c zZ^l@C)2xy8?wpwnG*P#zi*sk?mDd%_E{YTsRH_H)o0q5g-81nw*R{r4wks5^k$sKN z!wVd**G>3XqaJq?KDI95F?>6Rm#rNkWPF)17F}zn-Pe~&UBsvV94+3vKm>j&^5aFbJO+uE4Q zY9!k-+1|J%-jV;UeimGJ%k}2~>X^sqc_BDPRoyuk7_px<9G95`! ztL8B>?fIyJFylqxSp<8rNu8|vxsDr#{2BX~t_DqNg-M-cQUhAc<;!-` zX1R0B*#QqN7teB;v+XXAImc=X1pL7qi`!uxsO9<%Go+b!VA>xh)kn*f{VdDUeJ)$N zS;FqGT)~o34ThvN_KjY_dN)|JrsLQ1?2-YQ(Gw*NVv1%-+s>)3D&gTVhKU)Ft|3bv%14<`JUe&BjxR+)LU8D4nEHu&XXl zcI)Q#H%wf*_4*{#qg(G(r>kLtY_2+0U82rXi`9eGg;c(z(Xe~W*fGrS0eiw;us7?a zVf(^Z7zg87M>r*!nVz*!j_}t-mKEegsw(F3DB-dKc}bhCDHC0mTNX0J$TLebc-*e8 z<|u8qSyl79e>GW9L7LS{$%jAu;QwNb5}4Hd8%Poq=sKARG<{QNZI69+%r| z@p|q36|vV53kZkP<*<9a7Q2I|Cv0A)OWS)(;qzCI{a2jQSC=DkYDUbdnM}`0$El;# z+3Fmke0+nMh_=`~E|<&gv3opDr^DlQN<+O?hlf>O9{;dftVA(hjYk8E#pAM|wv#TO z%jIzKY>3>QiQ8iLxNI($#p`g`65c&gzZT%v!kAx+WMN6a7O3;o`LV*X*eqD&_IT_r ztJ~wG6g0OyE{DZybvnIvx5a7m+BCPetb)U4!CjA&qfp`=>%b~_T@E_ME}O+e6X3Br zYzfC;0d5t>+$xf8$ruc&i`2!qHA3o-{WhD!o{=kkZMBC{hd5LZsWb!72mY?y-7ggKQ-zWXm$a+fMaFza0xrIMf_-s6{#?W1&nfQA=?s zdS2NW*=S$1O6StrqyB1Q)O&da@>;14cALu{tquKD@&pd7zc_VZY-g`NwoI^O??qml z=tU+S4ab1YZn-wa^>w@V?cLYiygs46uHLlcIpqnx`sCe*)t*VagdI+Vli*}H1x|(2 zqISl0=Hq_YyEETwqyFI{?L@sEE{d&7$g!=~H%~efkGULbeRZxN`o4M6`7G}o-KOuG zCtVy{r}fQEYPDJ;JKyPQt=8wR>h5#f{eBx)WxLs#?Xb}2c6rTIC7(G+KyuLtc)i*F z0s7oYSH(_$2PR%)QX}-amp;q7g!f5tJB zwW+}{X7bKuEu(Hd^3&cO@H^Q7k&?Dm>*#RHo<6q7%qr<#=4I#lKBixTmH7vNEI;WX zco-hhb&BItTxb&TcoEZJNvm;W=(Y0w(m zM2{$)2JMJ)svWUj<$oN}BAf3-kN6r#1nr1&svWUG<$uv5{^d?vkJs;VM9_{Xr`i!$ ztNbtOb>c@HK*z0D`G}OHZ>0IqyYk7(wR3b^T;=;Uwk}rrgxVafd@Wk#Q@bmlE89oT z%d1M+L7$x`d#yIJ*B-Q*=}mjwKKk4K0iWzmHpWhWhry7XY*L%3d}|Y~e92_5-IXtS z8;(SEN#1VEh)QC<&$|U|F%^5k_WRfTKQVzD_`<3wov(!$!fbRU-EF4**lrc zHW?X{cNw7aty4SHHnm+{pJ-qY5HyJ%YJggo=%HTQa&=4ePy^JnL=QE9R=Ue}ayDhf zD`ol&R=Z_;FoQqUSFq6!0SH14kiR99za^8qB_9fh!BhgFR~o$eAidIH{RaJ6wac`2 z)?Pn|+n~$JwHtxa$K4q;(P!FmTee2`Kwd?uTK(O{m3MGAqaHwNO!5qv zIV&%>reID{T}im0Mm_u-XRF8R%E#bl-=k#5fEj~FwKO6T-;=VK3VbLd|Z$d1(JRpmy)JwaE%J|t+# zBxlLRPy(e;2IWuzl~JFzcpUno`k;tAM|{A?MVS6KaU1?`gx>$^2y}7;&ABC*T*H*s zUiJ@?>tGqnTvU@+Kz(#uas%6EN7ri?R(W-3jBOK4N5+sBV>#bF9U%wB&Q{MzS5Hv6becT*pz|0L1r`hNAySUBlv}MbC%(j5`mhep+ z|7N%asJPwZ#>t(`QzPYV=H#PI>gil{Pm!@I_u&dByOqhu(Oo>1zNa>BJS4X9WR?lS z?y=+K6PPD$-#mV-o)#S)W^kMPJ3*h#?=-vZ7Phda2oVWCXY*+W%;7@}&rO?!Pvgn|vkK$k@D!=~-wbWAhrgHac%SDY{;>9uJalV40ZI z_C1}c^oZZ}FjB_h#VX^b=d0(*!P(2>2WRazM~>BMbC|8!{Kw(SwwQg6Y@69;^=EtR z_UvGeXP|T|`5w+CmAnI6?lY+u5_=cu!az4G%R@$ijLPmvkkLUjBtOEGh>%t%%P0T? zpnADNCcsaL7jM)QX2w7lWU?!3Y8&&dw@Jw9_zAZVj;a0JZ0fG1$K zdxAmk>;KENCN^iB^@|=N~SJX zNOa`OsotSJP3b?N-l9IC-lN{2K9XQhIb}OckjW5nnKGEEmfYT~-l*Qh?N)iCj)A7Q zf7%!W<5hA0b>fHu}J98fC*cQgsri2 zq8_>N$P@F(+wIZA>VxV-QMKg__x|i>yddFCiP}c$nc|Dt=I^%carII4G1FXXoi^ms zcP7!Zke{YZjh%(7PPBG!P@hzv(iG4Jko#94@lA=^HXGaK#B4jN+qUP_XVhn7@z!5u z?6JB`A;;7jBl67doF=7|f+5$G7xk11sElq) zsYVJ4P3s8AhE+DSwXx|krm~A8;dgP<5wb7&ruuri`ilCpNhrgFGBjN%J7{UmrgZg< z__W4p_xKpx^(In|=4cxL6=Z)@W-BSj zjZs-6|7mw24^y@ISkh5mQ1}l$LYi_KZoT!dB^@cUpyibeH@kx(LpIjs5K1%bWjqE{y{*^o< z<-ynyW%N@nee#Tt|5l!n@&xvLy4CWG6e>;1(^xK}N=6CVbU(P4A~PthFUPuXWBah2 z!Zk;WrdXcwx%yQ!&mbA#fxOSU^9+xNwj(F#HQV`?n%UtAc+6f)j@4|j`5j(M&=<6N z2g);2HpNbV2d8}7q<%@@e4&dL-RuB?Ba1}eGDNf0zIjH z`mInhiNc;I=!P&)A2x};tTZa_DLTqdMqSEp@H>zk$$>-ZI=K&JWm3OWzgK^xNB#p> z`8{lbpfB4Su$ps%77B)uTC*o;_nNbFa%lGh!5o{PJGb)r4QH>8vG(}Y|7=r&&ZLs9 zrIM|slCAYPGbrlJ&+0GgZ#eU-bjF9ZHeZh290*vr(d6)XxNx~0=4_q@a(j4W-DmUB zrITGt=jy&QiJCPOlZL?#IIMBUj9S4P9`I(KBMbQV2^B%ve=B~?0RaS#xSM<`Q;GFd1Np&XKE@8&a1`5ZH4OY#L% zIT#`ow@{oyadBT(>%hpqd+(VSsNI(6b7{k3=Izj<`N2X73MFT=d3|n*M?*rIm(Zp}%^QVz zyT;7ht;akBoFbG%2MUS)tlDDy{LP&cb!s1++BfDD$ycntPZP@FLOCL;d4F*(^IrBI zChtr16WQHqale}qHPMEN_Lzx|9usE@O=fnoHV2t&i|k24IgzE4 zqdCJ8W*5ij4B1Xg&>rN|1p%jz`xC)zH(xE_rlT*wYe{ZbkhePry5E>ag42CfPg}wX z7s{*p{9ZXjTE4vGE%?`RhO`PTXPAF4#u*HAqd7xe^-C-eXFZ=ckX-?~0SP`Yl~yO6 z$^F+7hO~N2l(DmtDP^w3&MKByN9TJd3~4I+5l7m-TTU2?gi=U((d4o|^Jot!Ask<#h*nkkp_Law!eo{bv6Nb{i zl`y1TA}uQ4Y6(LcNmSYu*nSqsfWepUgdwea0E%t;gdy$5=>Ep;grQO>OJfN`B$_ZV zni0^xEnsoy1nm}XeFhx-eHe!?7%+QzDbUQ91?)NQpx1BB9_ZTwX?Jj{?hv|*5UQ3T zRF!ZD$)foygBfWLvmY|ZgrR10!jSejtBHuTC!z^M+LO#b#k#djHvj`cY0t1s!jMM0 zm-alo0JL^#v^Z%m|Gk7^l~9hAanLN36+-D0iYk;^p{z^v>iim}$i_~#ByTW{CJf7k zQYVyU-4AkDxp&y-=HuqxVM3b{HID(Q zG&vw8b@;l+yhfq$Ik+{k-eI4Pwd}L@XO-+7ZjGH2b?RrF`6cGmuRTsR2}KBHZLD|L zkDcA!zeG1BXr3v_U@#>|%`>I+nAawh7Qx^7jE?8@=}&KdAv)1biJG?!=263CNSL=eB)mS0M^@#V;AXf5WE*@dV5DgkQw)`3QKmJV=OP&@7be{K zGc|JzdTH7*DR5cn^1X|pO!$}h$b+e!pN)iAB5`S-M8b5mEZ@sEvJVdZl|;gHT`Hnm z6A9Bja4(Qz%0$9MifJOnG(805C8kH<(Z82S+$EG3WgI*#l-q>zj8N_q%8f#Kf|+S?dw{$m<4J!HOqs}oOyoeOr`SH0{bbWZ4nzk-C^re^W})0FhazsFkFkf}Zwb2W z7XBtEABSb^k!K-&d^*T%&j|+YcKMAtmpAr01|MD0|I@zSV(;}&_E%+>Tfd{6|0i}% zv;)KbCRxX&`>$&5ORw(~%I!kAL+fAlZ)Y^k>DPsUHYIA_JDBxu%)Iw{%)3`8cMIj7 zn0dX_waZ>#%!WiaB^pGZV%}%)xh{yv%(Ni7Unma<_+^MG6bf@&#LLYoqGh^uP)F2L2cN9$c<4!tClmxZ!XI`oQk zh!3~%^hY4a>|?l|C&(OV?Wa#>;Ym=t&Bl|6p4elETcd4FsMVIeLasgk#iK##7F^`I zkT_$|=lhR4{(%sQ*>0Y+aj;`1GQS6^SF}7_IQ%XNBvE%pJ@(5KX zcpnJmUGlh1LV439jJpWq&gsH9GMeCh$cFdh6FiIE7qkT(w6b;^FSG>xZkiXjg{RML zem=0rd(*Cgp7BUOl#>&dve%wImD9f?ds=VxO7POB$!^Hol=J`a39^?t0}-Nq0A1E# z`TE1-K+i<~=6(8HmXW!;@1H(j9VL|ac=bNK8*2^n&zJLkM;?A=yvyOXlcvzV^2P?P z2khCNpg-UWT5RrKnczS75=^=_EcVgAmIEQ(jTXxWC<9Q;7HJBso z{7ukLCYZjG_1!VGit~IXW9rj{d++^cf{7=9>225}D_txB{IX91nBF1d`>T!YBik{$ z`~PVqDgEf!F{PgrP~QabYc+vylJ|Mav%1^N*@aJd}_+57r=x_$zG(`@orj<)_j)l8W z@~(nAJDXRnoOX+4;4r$3Q*?*X6`blv8Ad-O97bA$vLR}=yqOTaq0l!8OuvzRkU=Ja zzidtd({E)pQIURIGzm<>kGAZQJkbWgfUGhzY61auVCqD*gb0Ae|q*mohCP3Ho3Ajkyc$C(#mPRSNYbINEGMuRXaI3*vV>92b1}km%3gEymB^+*vj$vO_@I+52ybZ2l4*+ad#ejqd;U zJNg-1LbNiFmk}<0vLBPd{ltttWtlMD8+ejYZp#?U_Sw<(+J#xJn-JS36Qq$b_?xCg1sZo;@LON)eYAxn$3#KyP}vwOuSHry%p*?3Bw)R(_r<*-_K!p&i` zn(e&l$h({tPqt^EKU|e@07k@m4;d3V;TU=k#?ieJn~cfw(z-k4ymb?sj44<{s7py@ z|0Clt5*y>5BsN7$SgR#AeDNyV<;x-A=Y}hHi-P>6F25_s%p1f(SB@nZMpW|J`&uVv+*#}rkxz+1pF>S&$mlcMXjGNc?cLM#(-+P+)NY>fK} z;{*zOoG^}+nT^pNpVXSQY_nEzZ{t%kOX|b3+Qe)(GJAxi(z-=Aq&pu_4cJ%}m z10F`R465-7cS--L%qC+6_KbvRW@EJU$!s!K$zru`WFOg((O>;fnN3Dx?3l9hP(Xb$ z8>3DAJDE*}e0$62*lJl##(ILK9oq>iEnv{6JFCe!hIP^}8F0F+CgX(Ix>#0YbP1z3 zn$;Nh*RmQTe@QH$JtG(7?Pgz&HNczKGOOWEs5zTIkio|ytla-}2R*g{|Nc&fj9qEM z9hiA0A>@%Env9Fshk8R+V?1DUR+DiVtBHt=%cEIM#ud!VQMa{B zuY#-L8kVh0uY>F11|UhwxCw6lds$6D80X43m@15ug>jZJ9wLkf3gh%dyAdQ~87Qf> zBm{RX0hlC=6NT}hfu3Mb^h9KG84txyBp*ABW*UBB%ofJj3m$#%)Bn#$XA(7!NXU3P zX5KSB<{d1IL1C0Hc>JFjYf028_Ro+lm%L28+T#?x*eSv&Ukmw%M@|wo?;XsF4cKM8 z*JIu^VLV(IV=s7YDJ_Xv-mCxbiY5SBR@iq_qUJGJm%(72rrsAl=FJqwBZYCsKq1lh z)C0uN-`qJ-r+&aG*+|Qf_^HRKql9s`Fv`COBoqEVo&L?wB__HlLGv=PC{u}=muc)V zZ-Fq*6UO-iHAnP7|I0It%(5CGtdh)nd3Qm?24W#JD*{BMbGP%X=L*KVPVXtoVRYKk-0zC zP&=fgvR{ySpv*K1$uvsOWv!NJ`1u=0zHD9%@nyRhLb3933ZIi9B%9wI;7eD$S?=*J z*5?`j)QdQoK`BD%zm{ZV#?r3LLvb8Iw3wTUD8ycWNk-;$_LDIv_mv&BkS*($b>_?aKuOu0n)v;sBdPB7KO)_f! zR+5pqTv}AO)sl?Nl>|`(w#&ef0Yjj4CmES4%hE5l>647i=GeOKBxAWSu8bua4bdcH zS$C2V$ni2l!e2TGc%1T&d?{Z~!#7wvYGrI_(dKp41 z5)L7)A)#w2T^T6J$UK>SkU=IHt2QSYnX(EI5t(O1lZ?zWnU{)@WMneHlu5~Fp35>x zM&|i&0bB^=ESVR>C4Vo;Xc0y}S}2TN!YG9CBw<`HjH`w5xJ0k&Ro3d{6X5H*tcSV<)<$=S0oIxKvR1JJ<7~`Fz?=&dH400w@w&a zg|Y4b(;j8!V>tDA%&8}Ooaz+Dc46%J-|taAk9n~Xu1q=)vDiCS7>^dlV`Ap@iHFS{ z-b6Pg8nJI+UTlObb5oCbCko^7!gxX~B>J)8Zx7ZaG-i~jQ;eo%#zxaJKkjkrRAD?> z7*EkO-@+J8&-h3mmlGV>F&K6n@Jnu)Ut{7om?oQ~Z+lEUQy5Pd#xn+Ll4K0Yi!@>X zUpk~QC@HGTpk%2FZqnHs#7Nj6Z4``YI%Keo3)Y}PY@Z$7PrGKzby=}(GGQ4RLteGy zeD`#O))Bl+76XA((1k(8Y-lKjy`<8l&>OXCv_9;dPMS4m{Qo3A7~Y;GQl zqERuKwOXRV-`?eKFxV_+K9HKj6Chq2-53_L`KFb}nZq}jo!N8p3UbQ| zA}{d^;_`34=|9LNo#*dW?8u>7p$*o-dT0mPG3taaAQ3gnWqI1;n3wC1hZEr>I00nG zW{3aB-g&@DRuqr_+(~co!tRB=+r8Vnz1uzV9+Ly{c4v1GR20ccGDw!31g``PNKldl zGb)IH0uqlTIS2|U2*(ix6c7YN6cGO3>ep}X&FtH89(T*{uOAocdgi^J_o}+9s;jEI ztGTE3&j!?@!J6@SVf@;BrV+-kLkVvfUR#gv>${)p*Jq6%pq|=`T34T?UCQSwbQ`|9 zOj>?H|6U?37aIrT%323wh`eB|D8{WIB_%UO1DgDSwXUi3V1B5`!8`+n0hRMB0W~Mo zlu#nC0eIPX1ft4EZ0c&^XbWjszOyaHZv{ch1zWSQrgz~QPe%Uw+)u9U-QejBFYV!N zj{yGOT}tgMxb`@(1kfR5CZNqhIbK~L{cK&1%SX5z<9E`IzT#2p@Z4rxj`6$NXX<&v+c3@i;u=ad^h#@Ql9zxDfa$a1qZ)QC%gpvQBclN~s#V+F|KJ ze~ec%O2re2w{+bnE%!>xuPt39P9&do36+&3?{?8WetlHB#-?^yx|TqX4zWtt(kfjK zNXu`e<+sqKvn4^88gC{1t+41l2U^ct^j@f<_j_r1NLqep(Ze*(C5cDV>@1Ke6$!-7${Vr*)MrR$&2^|qz!ohn^RrDch< zJZ|YqXNw&9$YcP`UMjG+L{-zMbd62zkaSJJ@0*}LAKX46R;BA{X?apwo`Nn_xq+CD zrgF!kax+A!fw3B}I)qFB)XGt!CMi*^x{UKVX?a#!{%AU@pN>i8k{oH5OC=E!a)71v z0D}dkY~C9gjnYMI)}#rNN%oZ$b45)dlS(u4q)q1r4W^;0H$xeAQI)dkP&C6*2F2q# z&7$BxOUnz=@~2kLm{nZyi8G}n+XzY}bN~w24Q-iw>7?GsrBZ4Jq&RHTcQ5dF&0y$n z`?+8^&tlkHZTr7S%S+PoGHtKwlT%XD$y_>3l7wVFMe8q%y{U1Mp<56k&a+Epv;XE+ zGwAsna1GE?dsSJZzuJJWNz1F!@>d$rnnE0snkjJ*LlRS?WDeL1>grXGPQgZSOeu?p zo=PQC1!H3cFj0u-j@bmvge*kov`>_9pd0rDg{_|_s8c=@;GW-QnXtaS=D93?la{xv z%kmG`WqHGMS#m?^3djFc`U?d%>}H1x!~KJ4Vi=WzIXW^;MuY6{d7Rp-0WS80VXi9* zi$P~YT$aD9%kn06MmU$npGgck)tgO7%R3SoFA+Ahye*NBHp%VkrmG^1C|PQo!R@A0+jG&8`kxc>Q4{uq zjQ!n5O*nwkHDlkCmUpE^x5BK3T&LOmp=&#-?sqiVlaOBP>NndK5)kBr;AS z-aeQhiabjyfY?U2!lFlDXac-tG}Uoc^x_hUN<`0GF?ML(+ML2NLyt3mYySS-t+413 z1e|b^MepP)dMinUpswzo(LN5sVKjbN@pVH|6d~%NV1z|WBP@q6;=i!M(n#*cPP-Eu znLunLP`eW!3DoYyNsPv~+C4H!B9mS19+_gadt{=g-P7!8Wryove_2mB&t`IILh{VE z=PLyie7;a%?{p*WeuYIrwfmJYNjus-(iU2~PvG}nK+4-sGU3MFg*{y6wChi}xpdiX6v%0*?Cxoc0O#0QZif z#51a?J0#L6k!cc{A(81}Id2Jw0*3RnG@N(zBK`}_dC&4Fz&uJz^QdDM@n7gieK_*4 z0^4frL<^Rf@Vd4p00-3=PAWPx-Fq!>xTSud@Q%Iai5A>G$BI^uD_S!>(Hck%5uPgz z_vbR4rN}N8R<0D%nSQ*Id>Ln>R4L~gh}Ogwi^5_UI*Mq`R?+GXEn2!-rCziqjyDoD zEl{E+s*`0UYHqDWO`OavBx>RmN-I$lr}4c5m=4SUIvYt;uS8as$UKS6mq=e&F8Pn+ z-LM3HIC4H_5;buHx_=?85g<_$JwKq%6`8n^Ti;8{99c~wYg&oo_!e%?V0%$yRZpri z!^!e+nRBAZ>dm}KngMH|m@4+C3Pa^WDU;1G<=056a2q^#Wa4Ld@ER&rtB01Vs0zvb zfRb~N3lquF!Hi#LuvDoSTB%x4CsjLfOQni2t14By@_jd8cVG`-&qh*}lt@M*Ye^(6 zkyKcwTk^kgs@c>5I-ZXOUh~GOyhQ9au86yh zE3#}GS0P;)DkRAll_4E!mUJhqfzFli_lG&|w?eYQp++aKP5iD!LC2}@BT>4IE3$ms zxT+F$VWV;CB3^7IO80a5EWe4Da!V!Z=ak+!bs66;2d)5^WSe+pBZ*p1A`2z5u0%GF z$ogR=>VM-@)5$m*`Dd!eQM3QW3$!Nw5fTaGOnilA5@kKtr#An!i z;$LWrE!^uyRJ zMC}5tWSPU@GvzGaV1;3Jm^@mgfq{Ykq0&&fTq3Dlaj4-i`yL3WUP38M(${aKN@2qX zxk8VsXsROhu)*%JA9??Mfa@<(8!uY&1NEM{3m zl*C5QrqUcJoXutX%f%cyI@86$N^WTLU3TBsQ!~rCJZq9>vWa}^LtCCTNjn2ho1`&P znn8n!lL(wnn&W=1U!FB-9`)cXQ}77^5xEnzSDGv}xSs zS&=PAEYF%WpdG!{qtxNK%`DHFG-RJ?yKKbrtjN~kmS;WWTY7`!P1=~}tMq+BBBv^H z+m4y(GKoO_B(=DeW0ad{DsOILlIk)gk$ZmAWzshGnrFIfFOeOsL$H(UVsGa;1I3}i z@&KteNrh3&BDthl9vs4S$rp!n*tNgV?X#P^c zs`A&~kh~Ay>-cL`F7ZcS_@h^o_Tw52!<0m1XKa|I{P;ishMjaUa0qZHa2VB8X~IGp z*;1Qk(&4}nz>&aFz|p`LfMbATfiD7!sH0ErwN(#)E4B7}S$0#&V@L}?~3 zBD+guSBdO~PIqVLn0wR+X9|6j=3po@9b7j7pqq`ys&ZJO&VZOREm3DxiP}pddrIVU zc7lNE>UyHQBvoN=g+#AW3_RqcCjA&nS?OoG?}93&`%7eBiR|Z6I$CGhEj}!TsrmD5 z8XtM98T3>V?Q(-jxDJzkVbQxx(bMGyk%J`id5IhddS<#SSs*uUhCQ;mJZslV?(%_T z){j>K=F;^sOpTL;l*%kO$R=67<4!>5Yo5R5#biIdNOp`=ZyXH2CxZM(Qhao~qI7%W%NaRRJ(B@{n2g`PH zD)PB>zK}QTK$4k4w)V^z+uXsmYX~N6>vc}EwVS1D9osqgL)ULCUB9i;b*x0bAdzFB zOD6}-I*Me0Es?nl8?=ksIS`?@viT&dSukTug>)*PF8C$~p_-*GEE{9CrNQb8C-j`P71C)^4U$&Rh5Zn zpi5^}bR1EK%%$tg5;)p7lDj~aWnndcX)6=7a7mZyBw44U z2N4>z5F|h<6HKy|ax6E=Fcp_0o@oRq*OW|PIaOuiWst{1G(^0jMCcl#$cYm9szknK zi2!ZZZ0Is4mOHUl#~eLS4A4L>#e`Fn$tvd2$<6ePnu9neMqB+I zqSOr3p7{r*JHnqLk&`5HvKb;wYmHR)DiGmsjh!9*{rw%K(5;ioa1{JGVtgh4p*J|+os;A z4!W4XXJP)Tt+M|@lmMp>b7-V3Qg=;Scm0A2n@dUNdAH za@bNMksnIr`x5y3R7w(}+I*J-_TBAaey&>3iwG^@^W(r$;0Zv9?FOE*<;+EMwMFYG z{)$q3*@qVIYqO4Vn{kZYA+_xk`s7sibA7z8?KIGbv6Oj6-;No%S|V4`saHtkaue@c zTpRC8ma}+59PToJ{mD3#&yftUQ0^Zpl=4N^LzFpdPlfwR;40v1K-=~jfETyXMOEg} zsiZ5Fd43ss9P)2(Yr7B@*axDB`7${>_XLgi9sh`ZvDc||W}`4)+r`v3ovfWJk!wcw z?=Q4}uYJ^gZZl!Nwkzy2m4O(2Muz#W3m4}5o%?QY@T?A;xO{CYjn^xNPfFx^iM%^z zmQLGEyy<2zp*syf(Q01AukCiODYe|Iv2^aX*E~z-Mv45&S~~iaTU=}B2G82bu?r)g zEHUSw)08lr>d5xr3THGFl9)Q_@?fFdX!CfRx>kyYHp+u=+0DvjH-+Xh?KIEYX@ik` zQ9sLN_12E64P;EMom;VXl=-l3+Mc3B3fi7_EuS|0kv43Dwm))Rt)S-sHV3saF=Q;E zKlAxT;3WXFzYVj$?G@lvpH<`!4EPNFm5KvN8^Q)#(blpJqS2e~EBtPqH0W zY@cN5P{+XaB!4TB`z7)lOGg18J)6dnbW3+r6h3UtpGLlnC&^5YZnPmDpk>LpokSyQ zd}nXRYLicHvU5DvX`ca6be6JCdl#k4I=_?1gA&nGvkaa^j(8_Fm(Q3oWnvd3*sl5W z8h;c#YuY~J1q7O`+$2#|j>9Et$0agE^=VI;fXp8x@~}i6S>{5p9jXQ`jmAxP-Q!%L zmi3H07{5aUoBqE-Q+@}Uz1rk!f?dDGZh>NFA`*{F`U?jVdiW{?mwjF<~eTZg-ruu=leIu^v2v;}IwnMwQ z<_)w@OXQDspnc9AWS{Z|*}-zTFi;uH^yg9qom%7gTMm&+_Oo_%$ed+UPBk*++Bdf- zFvzxV$sqfz4zkaL9%S3M=Q;PgXt(dkvvvY@?%m++J@juUW7AFA@Y1PAJ^iuXg)5nh zpX*)tk(Ji_{P~Zx)s4UHyYd`6{yxw6>luNJ!R>pxV{iNCsKS`rz87VR63elDUtm9A ze*pKU{qw$Y)<3rT$5WHG;#GkR zTJ#oCy6Wc@iM%Y4zbsQf>{aytWnJ`)l3^C0=1&I!8@S6B3pM}cL+hWfg5K9GdM7G+ zM*omR=ZS=WBVmaHlQX*_cD*D{c^qsDQb0&wTC@L{hmZW;wtKB zi>s*rfJ_F)W7CguA+`c>J&B3n|iqI zil8cLjkBnt#`|rD%=U)?6ni^N+Wu&hiaI)8qV2*Si)fofqY|Cm42Sy_^-^A@u^?5{ zPf{919Zg6yCegU%@B&k$C>!rzccK(2B*icbqnI6L1}LR7*gCPyHsw63+xu5%@(|zU zsoNw;RppMe+5RU>(w`}fa*uvgqC^i@@+o%@_f(Gkz`3Mfxii^>rRI@W(%Dl_xs$lY z{J_1R4R2h&270es^xjbPRJlhdNpyllCtBrRZ9catbERb(yrBF2i`9QqzNyl{Up3Qu zDzBb#x#E=j3ba!vw~iY(c_p{eCV!ODj1$pm5}hK^sn(tdAb*)XQNxtlo(*rQ)|p77 zpb7p<6D&?v-Hp&so~5mc@3Rh{X9IKG?~~{9881zh*7@aB6E{azq`WFQ8RTIXK_VRIVZ5Y2eTpS>`d5KK!98!&|&WV%w z-~IV~f!W`Ip&`~{HW(Eq=Xkjiw;03=yihlvMQ5q9rAN(DG?eb-wTTf$yLryohVduk z>v&;&O|3V1m@s~{hj8x3Aj2Q=d=6txmMX~#6BW9Pp-3pdSVJ)DYe;l8dUs`s&ewQ;bgkNWekMQ2xRe_1XYfjq zwVmbBMa{ODQJZ;appYLUd5E?Py0Zsnrd^}C)orepsU0IgAf zFtSEiC-0A#UCTX)(RI9LEq8Qvv{&B{vk#?oCDT95;&f&oShzk|8XD+Nme?>h%vy$A ze$ac1*ZWI(!WBGCIY2qV&jDaQ85hju1{3&?t~ny`Klun{g#JgVr@HQX;0EAE;3nW^ z;8(ycz^%Y-Jo9M#OrEb@s$FSTDC_smMe9m*LAb!b(!zK+8Ocx_CSw+?}@qLM!9tOaFF%K6F}zodkN z3|Cym_p5|l`T~?5WY6WQucT|w3e1y^p(v%3_qd*LZ1Bph0RFUXL5*?Q4$0WL8 zSV4LSt_KYFYiYRu10@7%v>h)jRx3~@mp~w32-MOL*!&!#Ds~20okMKoPL0`!G^L;J zU!Zscb%Hb{!?l_2J^zR_rC_glBhn`%`Y9_&pLPZ5NQ>Pnc+SOo~V^&W!qB}}-7m4m1 zR-*pn27<5z-b*h4W_Z%l3{M{{$5?~58oS}?F1la6jG*D^ey#^e)PrvQs-3roME9~1 zwYMu#yL%GFHecrNS*4XM3=@!Hfl7ZVO9sh&Av?fsl%aB}+{j^?@~A~&F=#G9qCTe* zwP$FF3bONzMAZw@A90pT-W(DbRSC9_!1gTg_8<+J|@Qu7H~8no4zjYv~>q5F4*HG%}`b6gJ+q!DnN!_qDRmJBx0NZvdA>OH91~jsx*T3q9fK8MK@tXQI zfN<~BuLDGUrk)I(0ub(<`VHWl0Fj}orvrper=AI%#j{eBX9MQ|=K|*e7?D%I;}cE) zl45_j*uSK>+0$42N3r;qQ)T=&{DZ3hb55e)mFN#8`V)y>B+*MHdbvcuEYYhZdZGp^ zPm$<#5d%0SErypUhPog$da^{nF42?B1h2d7iivOE+Rj3L+01;+LQ$4$ z=o(%-X+QE-Gw30~RrIa|y{jyGS5vx^_TQA~sS^DLllHo{r*65ern%>$A6+o7CTu9w zEFVj zZtIOjdNEM)ZK(74$Sfb}k^hfTZ8%1lRqNuJj)Fn4QQmp1NOAtr?su}eB&8`F8 z>lVE?s?GjWiC!Sl3u$(a%24!}TBzB?p3+tN-n}|3Ov;DR?=^#=zX9I?L!Cv?2K-mG z0WXp0&m?*=4QLMY@U>61t6dC1y;k2PHM4+sFYtFwV(4kJX-rm3W3oaqoR-iwG-KRl z68*VEe?c3vUUWf_h?!v`{H?I)O#&@!AA??d6}>AZdWA%P33@YC*_uuc>c|g%H!Pm8 z<+Lt~r?FK{GhQpvt0j7kZN{KM!8T*qTg{;7lay(_phsNSG$XNHtDtU>=wgXpZ_#7* zP|cr?troqYF}l&MX3+DA$+UjZTVT;!i_+CIzmn)p61~}oi7{gu8d||ZKHBfb%#)dh zgFCIDO{{bP-MIg+x}T@5OKG^HHY6}@A=jy2^<-|7=$+P+xy$urZmoJUWwN*C2?TI@ zBr9}=*l}Ad4dnXEtO_o%QzKi>G|GTBZ9|K~V$j?OPv#EwWNv?es}q6R6*>=d1;fDH zQR6@jgI@#pf$Bk&_XD7<3CE}4K$so3b)L+$&rnA>k;Mpi(xh=3Az+!t&pj$Aa4@&fR61`ud4@vYMiH6<1I1MLs z+HN4C`fztjS0COd(R(GT=izyFeXj1$9aCI(tGktJe6LAiscP)~z-)hu;Q>_)ACTy8 zB%4)*mkt?UBUB>&YvU;jcS>ej+3aV*W zQAL&2)s(8Nt_7|G6vgX-8-N>|RaVbS^d*TtBheQn`m{t}4l8TVB5QyutL0n;H4QyK z%{qY7mN|gWN%UEX>S24vQXOGq`K-~<_eLRBnQpZC=V^>C)2#P6ZJGD@XNkTb(LcFZ z8e=e61H0ZpxO<~uIU0t#lHfmUHGwuGBl3UoqWx)ayCO2}9ZEEvF4~{=FW^1*dk00w zNB9TP?}*S8Te#Pa_S0+X7irl_*=>R6n9p9>X_i<2Q=)%IPrWYD*Bpr*D6!ACO6(wa z(f-@568%T*qW$3^R#&G7InBOIIvN(lRr)!uGRfH%W!CJo(6mx2Y5!aasNzwjqt??k z059&CN;wli`E+#f-Zxc0zVRSev=(YgRa8f(+C_ikIb*wMzhmCAMf;k2Cw{Ch+J6hF z?Bk%0w)YxVcr`JffFUcX~arTU!@ZM}X+ zlGa8KchKTyc>E-vGeDMh=X3pf{f+|lU@BAhT*_|uvwkqy$86e z4AitYpoDwgfOfs^*)aK#AF)q*jPg8SDfh0Rd>mK;JOSwYm3YdIPutIKcI{Zph}HKU zo71ha$fML#rNxN*?^fS;Y_;t9il^xe^7fCt@8t@L9!dM~SVf z$i>IZT=8sKnPh)ua4=UM7#zyx2OF*1=s1{HX{#;J*0SF7HGIXaGWJF0{EvW^qD#`O;7%sRdTFkfam?Luh66fw!8$51gv_T>yR;TKs-WX<|yTPKiyI*o@ZgY-rd` zuHyxKnIo{!M`$^FK znjiFLSbA|AmSJy#OKfF#>Z76b6>1~*zOBfCGCOu-219MfQe_z>0_gUQ8PD)t z6*l+$E`G=J_S#!oA4R^p#QN=+vA`WOR`bRT#)U$z%pSaRTOlMYOx;}R@Fa^MtpFWM} zr6_sX^cet1Oz#5dqv^ANZr{k{AA$U%)Q7(c!@pD`C$W!7>=P3Ew8S=-*wzx;USdg! z?If|R4vIyI?Iy8xCH6UqEtJ@h#P)4cGCj3AeJ%|#kA`B) zi6WJL30g{!#C}B5jVn=kHYT#;Bb_7f0{PjBUJkagsN4)uDmT_dn4W{Eyd|ojL>Vo< zj>Jk5TiX&^$d;gj|}e zl{wh0sJfqI9;q}5@iLs8pefD@njFJLGnpb0NG6#pvBjDlrsP;yKx7nZm^&|WdIVYg zsT<%Zjz)bb9yT-%GnmC(UD@lGrCD zwu#jb=~7P58YsYI9H;>AHBx$GQMnnS{JeJ{#AtXyi8@$`GQ78$#5R@KXCSKo=zf-@ zBpHhcM3*>6h18_zbvH4nF6khB8V7phi+DjQQD%J)*_AnpB1u9ak{WOZjZytU<5`&6 z%~0m&z@wq)3zo8DC|wTRN@80`Y)d%Myc@NZ&XZ3Z@j^}HG<7~BZ!Sk-I*#+;ygf4c znyg1_y6uoHFrtx)t)v-|ig}ZQGpKr)hc`)Bl@AFHOeZj4x{Tm}<-_eHwvEKLwS36( zf;=We7R}BWlTW!lkV7k?1#_h|iH%5KXBG8WR1QnjsSx!IOVl^3L=mLgL1LeUD6_DK zy>G>0O1q$F5~0#rknllng+=ci(9^J|iphCZ^mdil&Jx?jqL+hT3i-UAqr_GREP-X{ zg}oIPz4JlqM;5&wSJB&3V!KOh56cpHlHsOFb8AF4&7khGdN50jMdfCQ@~fsxAnH;} z)X$YDqnh@S*j^Ib8=_V_T1}6vj)x2*r2^`9RPogzq?9j_-z-zW)hl3^x%qR0gf~Rx zW@z#&rK_Ro8cWl)l&(@bKw|qzY=3KzVMeLWM9FX{QZ89C!(x#3G!2kKKbe~tpsBRg z%SDX0LPpPlN--8!!-+%EG+w{9_7iiE%yJsD`<=4P{?)T}x;q!0#3_DI| zeyVozk~qPk5^_{3q5 z;Kl!q!~Q4rZ4alP$99Ts`fJOk*z{c6>2EN_7CVZ(SlccHBa;`4v%Zqq;UxPm$p=Od zKVRuD4UsJpcZ3X1spLSal-XvNgZA2ek6m{@cz11gSaUfKyO{p2(tqrVnQR+Jq~ml@ zIt%EaMNg(Y8_>~0M+(atGx(^Z#|(lpCV=%xJ`4VZZmqgrVVN*+)fxV;Wop} zWqkQj>Zl649=HLx5x5Ds8Tb`&3verN8y&EUeWr>H9b`H~En@v{CfvRfZo*B&u)Nz$ zx)E*DIUW_d84G~5fTS|teG>bc#2y>7IO>cHZ_4s!*vGIDt>(?W%_wnAspFnMjyhvK zd+jYsjiY{DVyDZxuV^~7o%wOFVO5iIS;b|!ycvRopLI+Q_A4G$#;I5D6y&?t^N zW5}Yg7&I%q>SSfClOEuzvcm_O$*p0mhfwN-GQH#jGd{&rJNZtG^cyBdN<4GMW&nQo z41DexTLN1FTT_uEKhUCcfq4*0zx}&>95WEB83$8W_240tt_OXF#7>jg>BgcXLWtFZ>*f7x{CxkO z46}^@t6u{ME52?s6e%CA2CNPhUjUA=6dkJ+85{L%iJc{}Z+V8dM~h3Bp(t>ZhuWP% zBn2)c4^g=pqR<6ZqHr!}sAH+!q%+U1k@{_kohz~PFjDm#6JHk@vX=QeIQ`4Ik9%sq z(qE(fs2Sw^Esm2ogCWEqcUrZ@zb~=xO6+^IxO#&`Bt|fi=P1_PAVjka@!D>(x0*rE z-*yc9GtRT{5ySymcFQErFS( zKvnU{8fyHLT zlK)1xnnBOsHh6h6?z8CKUu~OfBzBd=u0}r1I*@=~R3F;ht7iw)TlHSx@0!8T-+=fy zGt@3trsTJ_0k4^PqHkHCf>#_=db1>(!YfY>_LrHD7#hwDCDX%=cE)wiuqZ4B zO;WDM9#9YJx1l{K|IRpd)AhTv{m9KGoxQwIMGX(?cX&`}DbLI8R1f+~++CIOH6X=j zjN?vL33RRr^aBfg{*HfTVn+Rnhb8u?#C|WaKS=D6kUXlpw-i)gno@am(FaSu`7DnB z%%ik4kNRJlURnZ|;De^=?Zn0I#KjI2B;4viLBhQ@;R#QW9+%jYR**OXY(MyYNmY=B za>GMIWPQ&Kr3gh-N(jjniCB$B|#o=`zr8d{M22@y5E zrRm&)wwQK)p7&WndKy7`f^Yc3oreO40fz%e07p_yh3crp6+NEwOhb_P)d;5>H6{ zqY`^Y;^QUuysCj0CH9KMUYFS4L+XIeQy~n;PzAU1o0RT2^_;|>m6&b^^HRk4ElxiB z&hu(;)Yr&cVbMDWv~Ua!dgoQq`?JJekeKcR)6u^63`8>9sFghO)nivVEK%n}6keer zNYoyOOJe_U z+k7;xw!U8w!;g9^Bzh~*Qs{gTN{KNW?)qJo()T3xuEhQYrN&hp5p{uh&y5UyFC?*@ zkAvY-iy>o-%m48fiI0=`N5Ig8D}u0Ckn^Yg;j=Ci8N1qH>3SZzUa)lisY+K|;!%mm ztl*4rKb7l($TDtLof0rhwwAMUSfc(4QEEBs`1N{~sFftnoN=owI3tscx!k0>G>BfS zW&>}9L{Dwv6=WB8eT0PREiR>9kt(H=BtAjn6Ah)t{SMXx;cxw(S1>d2U%Zx~Yl>~n zsg!D0u0soV0MoT~DY@3w<=*R>MN@dD_)L4P$CmRbyDjiL^VusqbuB}Dmc%<*y)aGU zQyodnl|)agB<7j54DoJm%&c9@kmc0UQl5Ed68>|3MrwdFAPePOKYKq12TL4sK3vIY z|6B=N1u!I<*}rQjd2ttRqi2|Rt;OqSV3@}{(7dJ=wyxT?U1==G_;j8#wrd%>XjcCj zUtR05mLaa~+Rb`~ofh)JtY=`Q`(UL=Qg${8XK?F>a~$$Cz%G;Y@X$b-6_Mpsh4l;v z?7SQ684j^t^m49e=&EQN%zm;>yIgI4oxH*3ABW994x4}6*MXCOlL6SJMZY5z<1m$5 z^!jPQ8Nivq>A+b4EHv6$hOUjdkE-hWI3+!$;i4{uP2A7*YZZ%>w?S9tp z2D%M<^+~*!Ztjuz99_#0U$t&6!w@Yvz@b^g6>@T9hX!+;_*_bpwVRChm3(?Im#;Kp zryY2i^88{D-I2%7Q+AsB09UjrKG2l2Ip7P&>w|0_?%JE*X+yYc8RGLttYzrhU%PeX zN2#MK?0Vn^;6~sk;AQ}W%fFVP>p=TVrIQXCv6dmeO1QNQmOphZL)YOv6QS!mg7P&W z#pk1dqX8V!u48~>eO{p7^V29#`~-==Eb-MOevQOW8?(4w7yZ$t%HcbJG97K~t$gTG z!O*tho8P_i68obzb32-TZW7WmP zS=VL2<-irdF9B3~*Hr*2y$f~TbuDlmphUyRT{i&maTk2tbu$1T8-BW#&$j`$19t#- z0(bd0Y}F*%P5bYpe5_aUefDoK^KU%M`+uDD{h)?#eb;loAEcAMFR7aB!A1X_g8xg+ z8~sm9WhK75#CMkX4ieu&;+snRlM>%Z;@e1kK;r93yd?3Q#8VOlV7uR$Y%+qWG;l`x7rpJTLKrC8|)nTRUY|V~j@B2rr;f3p81|8KRKcDp5~C)YF!z zXDH2#TYO!KuPyO)m{l6R@#}(J8rc}VGOLIEf0}Z6^veF4d`^X(r|WtVqF%B@y-aE5 z>Ea6|zP`japr_Q`4CE-bWz@Vp)sX*c`&togK-I{~VY}*YQ1zyz>hIOA8j|>+#LH%K zG{6g8=EViECJ38gS-nfHziI|Ozj(X{dhfgF=>TLK{bLfZNPI)%dZ~EVG;dNjxL6#r zwRil<8v<`NgPxDkXF80FtroqNC|ySXgv2+N_{S}yr|WPq4&lg-a~UYG@~8|HSbOB7 zo1x0r=rbonmG#hOs)y!s`lltniNrr;byDD~*`ZNGtS6Ddm20XlWAr8~H$#-at7bt| zx9zIg)vnrH;-8WDX11$>cw*GiBZ%!rt=#03n<2{IQ!7K%Dwe2Kt39=~#J80AR#qn^ z>%=2tc506{d<3_CohW+>tjWsFQ04EcBvfIk>p(v9^*0JcVtBtM;4B|UU{Ie3@(bY+c!-%nU8G4~^g+*@& z^oA{Zl`49>NqiTH@7hRugRs)^G_aSKvvM;;`5Ao^i29Tz>eEV;u6m1qPU3q=e9uNi z=^l6gpSO8Gkf=IINh;fn+5#ghH$#-4&$ouCZ7fmSQo5tZz7pSC;``XKcLcjGo9+ov zK-HNbKgoP%-&|;eXXY-Tx2r{Ow`!YzUgG;p`~a8F7X*y|9u6ZoWEtjxx5BpGzM!|C zMQ{IV>m4HTgCu^iRp^2C*vO7+U}25MKTSTlNusK{#487nn#b7={NR6r=aOXly2-prFv$OhQ66p|P(>{6rfX z`??z%`?41r1lPh__l$NI8)ahT;e#bMHgrUpvvLdy)M*{j{9|E9!GmiRX$erl6!>S?YOI8nUVV3jDOEKu z`d}x5FX0h@d6bssQSS1;u@fZX7c(_}fk4&Am}fGV8z@Lb2WkZA42gfs3ewrGAf4_B zQYDoc%9KbuJ5JBJfBP#%E{qI2Pw{c$D*(pO#X!+ouz_wW@tgu zn6ejR*5z#)XAW8$Ix9{+D@f-cNRRRLwQ=KSsTV(y@}q7PdDeJ7PXM^4!Zm9W&<3>g zJw=J1JPRLr)-<34m=4SUI(>rX58?WS&cBq+zy8c0{w0L^Ly2FZ;(3w8zbo;}CH@nM z|5D=TO8nB0LOQD(%+&dXhiA>9bj^$JNc=pB>(NklxE)~}FB{K7-3p5yuIwyzV->yC zs_6Yd;@^|F9`dBNxYc#VUI1RnhyY#4nJzp75lhyt>1}G&z%pL)cqk(ZiFSrCzL}w_z2% zOCu7Q9p%=qPWWCY@f+-5e4{%UU+WFV1C=3GtE2||D;!_MiVhAmE|S_xw`>#! zim6JDk-C9ZJ4?N_nE-?FEOIr(uh+qN@dI4Zaj@xi2eZCL?fU`9)Z>e0;a)}W>|L06 z>4e$WZ2F2x8QSd%q*_;uz24^cS*P$TJ3QaS@ccMGJ`Fe>z#*EY4^wBz4$Ef3_cgA4 z3pg7%2RIiv5BN3!0<+XINKt+t_yO=k01sl;kANThhHL+@>>s-Q!*b2^sedNcKaTsy zddBfTNc?e$KPB-$N?fy<#BY}PZ4$pr;=h*oZzcY_IynuLQEd~3M%~Cg>!-j)5T$D5 zXOynvdaJ~LCGlIVZX{D|&7axanaSpJg&etd+%oOOxdJQaQ)GrB14qd%t2sTJtlTV7 zj6;T~DGfr^IiU_#M{WCAVYEpILWKA|cGo42!f(S@d#`7V5Nt34aGw zt|oCFd9z6(CS7BRxB(*64bz^vsY=AX62DvG_gErGf>iToa$Ds|>y{_sRmLp~nwC=y znZU}Ubz@-Vk=@t~QOHe|-LR%--DQcoTZuAZoZm?NK8fECQM$3Nh9bV`FjgS9V7`zd zpQtHKYC4xDvXT1#v~r%@Z#gn-lSW8Olkcth2RB2KUxLtRvmUf0p@FOfJtXl5B>o^0 zWR?)uoz0jv)9*#iC7R4-$pfjSIe<*JvW{#3wUkD?(qy1=sz{Oz6gP8>GdrVFeEA~_Su=-krUai;10oCgOMo1U%pWcNAHd)}h=LKVFw z5`R?UkGbfP(zNb$AYN_U3+$b=pBu6nZRlgRrcqUCHH%EOtzHEg^=nlI85(R`Jt^^} z5`V%V<8o(>z!fvT{Wa;pW;DO5`%#l^<(H;^g4Wv>y>}EnBTdgr{Ar0lW811mbMu9n zZS5}=o>J|3mL?~}f*__;`#tbEP4b>6{@oF*l&FhvcZ|{5EuXkfim@ZZ#NEYHx6z0hQP;wjew2E-ug_8mqeQ+rb=RlBxb4g`8SFG zL*nmBVw@zRl5m<49c>e9eRgjG;yAKKbkv!3^}$;be^cUrU*?OE(lJjW^;9um%;a+n zF-F-NB}&FxvIXSGk4%Dfa*XSy9dE*C#I0t~^Go*Dptp@hZ(B-NzrG{!e@gsqE7^tG zU_jcKhBcNYJBhr-4n>k0`u?)UUMr# zOVqL{S+=JBOXBZ&Iv8|(f9|V`nkb!&uH>Q3lD@E{I#|uBnyOVi$vDm=DaS~XOFdmp zI^JB}CQ0&!>29WRyX`b?_x{>XYSJVklK6-uT5La&Qqo5e`O$S)!PeKD;iT8jXu|%I z*Ytsv^Cg@Z@^$CQu%1d4O5Vz(z{+)enJzSId+0tEbz-`4;kysF{d7c?sDvb9l89TP z$O&FUl+u*Ulm0kWB7c3UgxOh0dg+eIEa?vf8iyya^0M=|M?NZS*DQhxjRff6h?=uq z^HE8#g=QtFFxGKC=|?P|H>lM%H;IK|x6y0Y_9R)V8`iGt9kfO>boo`oiO^#we7kkR z*QkcXBuPw=#6+)mYN>K9nNqD_WIam;DXFcleOW7V>8jgPS9P=}H$#+PH4qi)CMse& zOCuvj9VezpqFoY`t!hXi05yM#XPpZ3ax5(fz*Ff}dou7=lL%J@pKwgK4$R73-=}m1 zf4U^5Nuq;Z@O+s}p->{BDoz%sSGbaEZ`BPgMHOm$>w__gwx=h;7lIZ67K5G!SzPpH zN}^K|T`qd~GI{?@y1Tq|TWz4US%kVZADi}F{2Y2YFDDRUUar9qmqX`BqFWNP&CCDY z07~NQfMy%zS89V{1^*ZCIPAX7w&v}W+R}7$Hvx@q4QTMa`ySw4KEndt_t6wvxYv#O zsn^u#)Ka4a-4^(r`RtXQx+N^JrX;Xc6Z0j}M{$89euBEZ(Cj!&^z(6z+8u|3smyS) zI5gZ}$qXb(O`6H{7t2H0e&RKxyB$m>2MYs@Y~&|EVkWQ{T%O{Et70Q3R@R_~`ZcPy z)#`i}i!ZSX&l%ethutqP+i|G5O}mNlN@8_(8}9mjFfqFghX=D|4kOL<6Q3p`J;d47 zgG0j=&Oyv)hSTLrIy+d{irt2XAH4fP5Azcx<1yeoUJ;&TgR|%w_7HOR1#ryDD@W#>z?} zLkA}%v6k*NOcZPP8s=!Z5^3f82Xduha>@*)`b!zk3LD@&g~5EKk{`%7+PXSh+j%Ci znCYQ59-mf5N-5v#ou*^{D=KgDY{f+z!rg0_$c^aM*>kj8^N+e1HnZ1o_B{JceKsAW z9b=M7>37YWoG66bYxs!!Ze2MrdsWvFoQ;2^VmBK*P(^R{nm|9W09Xr10{)F({#gS5 z>_JYc+e{MsNunZ&og`6`#8G1w3YeV*tsE#T-zhKB^xhW4+4#GLHMr*w1|Z++_EFFB z2*5l_OS25=f2qT0i7(UO1hQLR0RF`H(}1r4stL~q)N7amoDQh5-2tfJ&?&R=m}bKs zfr6yZP+e0mNa~H~wYMmVsU`290$c!G*hrW@C5g{SViQShDv3{rm4N>VQ`3pi8!4W#8}~~V4_A+2kQ*wehjC!bDUQUckYS>j8YuUt%H)g9XUfIYU?VSf z4o0$P-pyHnAnm4tv}f2= z`%&f`X;Faj=Nye79jJoz`Ot#o_mebj%V_&i<{Z!atRNjyCrDrAmI~6>DD8+e2Saxb z#`Bz$fm47}8wt{3k~mTlhf3lINgN)Q&;BP!&6{=&+G^|s=}Nl)Dp(^(kl@}xLAuGU zUmcOYAc-$pL0aSr($StEU*aXVT;|%MKKZ{R5RU15|P#S1#v=QY^6}9y(ek zw>fuM6jYGzLXeJCK{_V1AgRINtvzUT+S43;vK1sjkTl|n(9BU3CsGm#)nx{Ah&atb z6y`k2brmk^%~=9G&i520QPDYArE{JFo(7%)P`Pvd=o2*mqE>%!!oTp(gaR}!a4;)jy>k|fS*Mo5)NVq_Z3n1gRU=g(kHBh69U)}6FEK@!JF z;&>*lI^BZ}0#6?D?v2O?$}G_6_nN^Fj;vyc`8)^n*CW)^|;;YQW1Rr1F zt!N84^FnWp_M>Ky^EcnSAonke9Pwq_d?!od>ykLhEWuz(x&H7E=KM?xaVy~LkH+_! zLD1KFJ@IkldJ-;zJx;atzA1@QCGibfkCd}!+B>)p-Frc&295r^W-#FtbjB9$bz^T(zlTu1{;p>m%5Dq%&V2UDPBS5Qxg>thgznEI zagig=PsO>gRh*05ncge7aarw5Z;ly|Y@Uga$^dC)vxDhDra(x_m>tZea|1)!G)Y&r zf35`7FuEFG=pT0tz>9l!qf}k6n9qA)kzA@4$;A(HMQdRUr~%Nkmk!OB@SL%o>FvR% z@#mK9IYeiAf5A-e9yf!DndvPiE1AJ^nYnCDe5wbMao{G$<`yeOq6L*?o@~0C?Q-az z*fxd)wRz41mH=wcECsM<4AI?`PXSs6&+_&hqm=*hL!0I85l~UBr!7zas8sjh4)vVi zey*S8?NNUS#xix!rBqV*T@|_wQ(Y&CYw6spBypvg<-M_XmY1+(wooY)SVK#kGMmRq zcnMyfbrd?$y(C=p6_l9uuzC-}cqF*a`J-^^NDtwoVbDko1)0nwU zJ!prXQQW4U#h{@i!Bzfw+Mb*2wYMmBdg)h^xXrpvx4UlB&7RxDk=1Eq^^w!(Z!aqw_~! z_;(KW@ZEEy?!b|HvMo=G!Gt}ShCMJ%4{D}o2>=83z>GaGV9%4lQvfbg4=z&=E|Y51 zo<9Q50nY<305~i?I4s)vJvb~qF99zDe*s1Hg6Yc@y|MKri(C z1NbNKHt-Jbf{}XO1^xxR2fROS+*~ft{Rq$kM1Uv|12C%RVpPw?pq|?btOR@%7!OPU zc-GuWKpW5wVAjr^0!#&_0Uf|}0Fj;B33LH)&D>c4f;V?IFbC)XKw|DZpcm)^u=M6) z<;`6MSQWsLo4Y!&20#pVZa=U9!04KrgaCwMZW_n{Ss(|{A9D*p5hwv`1M2|m0_y?m z`&`wU{ImYtxfy>p+jLEeUH@;gDPK0*OxE`$?e~KHId3!mY`8i9JG1@-xY?S7z5WOL zF-!R|%lMH=`;kfc5lH(H$odh;)F9xeGvmjmc5|v9H9rEW8U+0B%%pui;3pvMe}B$T zXVzaW_VCe9bd*;NuRN#Zw>cvT!0kiIX@Byl#B#6#k&A-~zBF>)Td|aHhB(X%CDdL2#8H_v-!TOKJ9FRR2wTTO!7ya#+GX0bva1O4!^@ zszlu{iC;_NK1)=oSYYLLrjRP82&<<{W}iou9GA2zQDad#EKyrR%vP4Dt*b;mD2d-n z;(>-lu^ojm+xs``?d%RF%B$x7By8odMC}AoJ6oc5sS@?DBz`A}-#28xQSc0AzvZhO zmZ-fUY9C9~zEz?glf)k+@n|EWYWj%|@V2i661AL_!xD7}L>+30I;=|66Owpb5=$Y< z#zwN}h#I}HENl|$R#^0o1-&m?^cGdodqxsZN#bcwIttlbDqYC3J*b${GhI}VWr{UI zU-XiJmd2oRSfcO_=YGu+bz+sM=Oyt+Nj%qxk(Noj5#y|vG9ZwVma}p*L}5~T(et^d zLDcD%s56u(v$^XF7*_R-x4ydhrk>jjMgDI32^3vmDY~%QO|MJhuabDpc2nS+*_Y!RZ8Ftt4S|(w zdK8*0`OVdBh9rL{;T+Dr%#w6@wUhoXiN8tWO*%>WgP1-$BA4}(?%7$8Vkf6x-FhQv zKF@*kr9z3rl5mg*cFoL3^`wtY?mq(*qvnXtU~ z4BI8yfy=f?j-e(yg?84cbd62zuyoxIUB9t({nn$)X%T0fIC`ETo7Dp8qH{jTt+41( zf9|6ey~nEP#l?w=qsI~|4*3EZP%{Oxu_Q@=TTGjr93SjfSoEF&J&nVtW&g)2dMk-T zuw4%rR1wax)2_&_W;T(t#hgD^gln`?(HjxRqHA623zi_<1fyJe(Ix{xd88QzMe zd@jdUd3wt7dDvSa(Ib8}Zr(>+^yalx(d!UrsyNdudMUCHsoYncg#Msm@sNq9~a{wwOxiN^JKh-vaiOtHWx|5YJUufP+>@Ij%HL50 zp63yGHbfD8wjH&)IID`Y8XctrNV-5atSp%%ifpCPWM10%wOAGko>>=2)N)pChA4ke z5hb6uo+WDiYELZ?XH9YXt@pv^?|deeBB;PYlO^j=_ziVFYrH`@HLz~2_mxrlN3A>J zxlK~!S+(;jP_&_?=wsSVYSlVvagySstULu_S?9~ z!ruyu-fp0`yG3u0DthaSv#vPnHDDpXqod-)N%})}$pSvCa#awXV^=#YU0;H( z<1AgrSLxbVoR5jKQDeI5!lybMHlS-cYlo%lB>_{ zRW~d}XF<`oEJbHmDf)~!pB87+1{C=tJo?#-Tm=m@%U3rnMc;>_A6SZhSfyx7aW)rc z3n=P8y0{?2_WBeVii$+J33p|7?@t*oxu~Y*GOyBPUmM%{VX3V9UaySPf-w&H9p z&NjBcf`&$dsQzxqd;PWI>xQN1mr!)2rRb_EMV}RCdvSJXz=1VAMLs>xFbLwn<*VBa zMSdImMku<;QgpLYWSpU0#Mw!lof}X@5WpX#F|)6uX^DCz(a0PfS+^OA{08=2P;|GY z=pITF-gov8XE$+nZ{!M%mN+ob#Tcz}po=lGa+5?=ZR`gj>LE)M#oXWVk85Y|Ezak} z*^91HcPO(gmPV#d(i`jeJM#5oS2-+Uk3-l}OV|@tqV^YOUvc)cL}ly3@kafPWE7XE zv8WuDsOKT-1xwVQszeh2yu>VL{u&NF|mQ|X9C(mEwG%GLlV^+ z9XGC*g@zh8>5W&3I#!%7h;s}?nR$T}$-2ogS4@$Cgwvk<$I^tn)eL&RA*XjDXtBQ0 zpx378nIY#(;w%zo23+*WIbT1gs-uR%+&|^#PR%yF)eL&R@uPPJ=z*?5uZz+hKfWx^ z@#36d$B)2i?4VxOAu+ge?fB^ldT`y^ARWBcBu(D%(Mt%umnEQvrao@ikRQrw7vtW87QYKss7|piCjOq5@~)4?7ACF4h$EE1~d8mV99&SV?5zJU@1>P)JEGl*{4ff zwCUW9lgjxG9YXM1~ouW(w86XSffIQ&eA5^oeD^;^w z$)DNRzbDI|L&d)d%D+`A-~>T zWu^66X}wrlzbCCHNb3>Ox{tJeR$5P!)*)#vNbBm-+AYqnq;*qSX{xL=7v5SaA+2vq z>tCexDQSI3TJIP$)3a}Fx?~-?3(+#V12*tX&%T9RQwHUp-}LMove(|CRMYcTaqh6D z=bf(Ud5dRymIsRi8D>ZNNliS!*7f`Vi6P4s^olNxs0^elgN+hH_I=!$*KCz0nWAPou}xTIOFfcc~G2(Ku;qOK{zbX^A-IeH!tWF zTzT0PteKAW*2Fbgxf!BR9#x{who~P}qJB*2MkoIu&cot7VxyCs*W)L^EY)RSL~R_t zN>sXr*0ebmYt+ikJ-Hd8{5^FEL|tl$`gygd9v9~^ahBMg;*7DHm3r=y%u$G{4X(1- zTBpHABdW>D%@F19sjDIC8cWo*)t-7voF~M2()N^Z{$82KJ(En2B=d8Ra+F4vf-BeY zDs`2wgX@lXaFaB7apb;VLDMakrdze6OdR=-;yfeHvsU7RUTqap*jr)IyBGA-rdNHb zcD#$;pTv1yoEI#5HBC!1n}dE_RT}nIGwAu*9Cx%&jRi&T5k=1^q?g5cQJj}7n+M@A zszM5`JffFfmT0naGer5>{7Hy;$`bW7rK^zsD$Xn7yy{K2`xmO{=SJd~A!O)NNsYA^ zhZEM48~o&Ei1PQ;pCRf+OVmr0ZcqJ9oY%#9!}e6FP^%2>vhUhv_OxuuN0Cz3P|NJT#ChMM$KI@3K6b4nlL4?s8sHsW(gEtD-)jazp9Ifu2QfT&gWwcO!xODhX>F0# z2t45>YaD@yi-k&DJ^p6J`RKoE21B1X&c_*?PprUT*j;TxM_S|3nxF~E$EjGpPzw)*0>5 zdN|dTg!tQ!*vNd1jVKG^z*!b-lh%pSI>~Ln5sl~KFp7uaO}LL}SN&Dk_A7xE;Q)i( zI@R`@Dy@^Hbqek0Wpb>w|4bj+InTh3H!Jc-AlMXk{qIL728p_H!d-ys{cfaGg>Ao2g4re(!%tP)ZDD>YI?oLWwf35jQ0r_j zB$P{)Ii_!zRO}>=?#~Vv3!G(@8t7*;@=$6p%~5Ol92VMW6A$x=q<8`5`Fo*z<`NQW z?RkK!#9EpU2}QN`{QzjsKalwInV?T#naqo-MEI+V4b3McV`D?DeYLZZ^NG&rY~=hS zC|?5*?)gM%<{u3ZrI~*WaI7!*SQC`g2*t|Mx|+1km)2FKb(JO=&l`CEHyhb}D5p_d zjh#dhD44H70$6Q?L|w!+##JLdScRsJj>23sj=|LravZW>2Ct;HoDW z1|4HH|7Pl`YG>3-)d|vV+)_chozfGeJNbSWa5r!daBm|)%1CQoTGP^+lh*A21c_!; zwan0@p*Wq={}872$4-!7iTSU)G>s4>6_g-BddIebCrBk}UDpcIdafW9JwYmD(&P_j zwjwn=sB;wQEOX+6seZBuBnv~8BuP6P&55tvVo^YlR*oV_>!={Dy+QY_XUn@u}w{r_Y`hV=52Y@6+)yEeO@piI+!+lgc(XC>zh0wMzU zOn{1#MLup00mYz4z+X zt29nK6h@H7F)TRl^AKYi)j!M4Q>!42 zQ!BfTAdOqwlz}Hmb?IHl2-3Q)Ak{oU%9J@ow_aq&YIZz9kSw<7PM7M*O0`#MUdVmN(Jd1LQjz1~QI{A8ZB5v1`rrkh%%eWmvRBS;6jg0zn(NU1!thFNEaL6<2quU&tqZLOt=~zIz9PMcN$6C|9yO@j0_={?d2(owD;9qtKIwpJ>ni*$cvW}ljm;y-3EdR)4d4OaVkv5E)-#E z=WrOWTw#Ri`z^xsC{Zd*j}dyp^aS^C!1$-2e?m`p5~d$W?}^fTy!4(Ry*~`fXSc(u zki)VXIxKtGZ2kpi+57ku@X{>TW@>8>E1>r+9Z82ydg|9FcuVQZ>i{l4u4Nu9mz1Zihe2A;#=XVQDF z5u{(bf^?22NOjsHyI3hF3-vS(hjPVEmRW6$>!HjpA2v(rGM)NK6ZSF?RFL*Tkba?p z^z(%xNbMXB6AmFgBS`192-4w1sUR_{Zx)Y9sj)IPcW_N0l&X?ZbO7E|v_czk} z>rVxVVqBC2={%}m{l4u4Nu9mz1PO<)QwE+OT_C*|8bP|q6{O#Lf>fv>NbJ9xtgw+~ zGFz|GMXG05=V>utsK8=XyWHs{#R=+wPzWkWoCw;h3zd8Suuuf4ox@?mjihA+>Eaea z`ZG}~NX%$x2ogr_1ZFi%z}T8_2XtpALAq3WuaMqLr1x^^z3fv#q8Jw?L3)kqSHEvN zL3)Sh?F8uqQwE+O&5_<~jUZj;3er`cAf=1BLJns`vRct;LbV*8yOf>5w9B(+e72Oc zOP%^i6PGX$5TuDqB1qS$AYC0;kaVJ5Hx7r1ao#h6bbYfRO<&S zIcRx^pG{n`lOWwFy?>Hk7Tw+~y*GU-NEG8DBuEnnsDAbPwh^R>>g;VJNE31RI%VJq z(qE+ab|Xl4xPrvm=IZPoHXSIIY8B2Ps3h??*h!8?qeaT$5ofc6LbaH!+jhOv+0hd> zHV{;hHbszbQ$f0Qp$JktXT!wpNY4n;oh^d215qkSI}*MESzKe}PGnZY#9g7?pxrwO z(qE!-MOb! zOXG2<=JQN-C>8B;xr5hk;`0WA3et-R(o-r(Pc9TeYUga2_$KKYL3*Y|klrOq1?fFP zPmn&~o>>hOKkDh3#N$bebrPg!rS}Et{g?DUFTKxwDoB*qA|yzY7-E~GKHoMi(j;~C zwh^RBmMH_TMf$h&zG?*NHCK>c@&u{QX2`TWB@AP zxH`!;5D=tE(-5RrRFGa?D1y|^*)XX>dPb05Zx*CUYY~MYP10$*Mvx|9%9&0ZKTZ0!fuMqP41)Bb3epFG z1xZ)-b>nQ9bOP_Wf)rY;MUYM*N(D*%7M>ts>x~`Q4(5GLW@g? z-MyChRG28cMM;=$p!#og^VDkIO;TrXJ7L1%>ldaFyLCp4Fhw0<3XS%JDO=@WJvN7@ zEvhlQAVlBe- zI8iE0PY`;-grPf$Sq+n(hMs}`)k%;N5?We9aS1IYq0fCPNEG8DBuJBEJw21v@7tzT znyk*=Hi9&Hc~b_aRSGRDp%siEt>_BU=RHBPGPQEewveGx27euAI_h$YobG{}$>F*y z6$_;f{iMmO8VCr|Vz!Q}#SJ3&%sZ#zN4;p>!vCrD!@G|mXp zcvp~C_XH_zRf=hx;K^EsMY35d%LMRzs>(LJ1*?{?X7Z_Grxt1QJ_dpc(tZfinkqj}pgQthDEUbuqp5FVN)p#nihLTQ41B(yiS>AucR@}cQm7MpjHw=NX zwK5A8Sv8+amU2brYZP;3PU6NqO?R5VmA=tkkHArjANYzFYT2 z*0qlFxs&_@=6lSs7;dj|-9dixgJx%WiX^@__jB26JY=&g%)YbvWsi>km6?B1D6#2y z#xAp|ajnLF!~Nkgah->quyQW2bE3+9_*$c1oq5v9k3#)=8El4YGKokkV8w znXlJ!`E0JjQ3sud>ZeRG5as~0kEGU9rdl^JQ)$&SF;$*>-G98nOZTDC;g3;aBG4F9 zY(hkeJ#s=DVz6LVIL3)a^}DOrE15r_6!|xJFY>DMR>$r&OUD#Ege2YYk(- zAT9oI;1 zFA41-AwBnYegw9|ue7a4-7Uf<{gfY@(o~y?MovxoDQ7`k>-`kfn&)s$Lons%6b0(a zX(+W()Mw|J@O;8ChV-|3?S(5iw%4H&`U=h00TSAOw1j6#cxJDJ2V9f>FiiSGnoW8( zO2FaF&R3SDhjo;Eaq5N>*rFajV(4stsn)d&E}<~d$2Z}2e#T4 zS7-}!5Z{?klm32ExD|p+8pj6R!S$UzJxkH>c@3_b^-5E2)CPAp5&E~aW1#P|=fPjm z&*&#SGj1-|4@2{y?v3;*w`p#^`iU9oQ|`DorFE`qS}QD%fsmZRI9mi+A0^S z)mo=T%Tpc)fX5h5l8!D~4h3JdtXm6u)f+F8x#!8WyLsnCV)zScn`;+l3}kHcqlen& zuW9|xevo%mD_sp;19h^^-!$LU3{z7>ZF31`n=6C9LT2B0F--Zu7=j=2?4zEZB#+e? zOfCj34rxyYgE09Sh+a(cv(RX$7sA#|hJD7L|12f{Lb%}!ME^NV7>iFzcnvL|4w2AJc7ylO31soCjt%IdWDQgT(2GQ6JD!GdFy*S~{^ zI@+fBB(x5y%)g15&Ye%f;m%;e*nw5}7Jn^$hva0QA?ez8_-=FGAvx7$nIvlOpgdH7YzWy(PV=!zH>?3WoUFWXri6YdpYzrZelDSNB=j@G=j`9z^k>dTP!R|k6%^jrfOmv}_w@$6^CWbx zgnsG33$6}2=$Dae(Y{GWzNHy}(BNv3G+MOdxYy={IKMY6dAxb%dBc7!q2HMnjWv|} z((s(`wP?8Gb9SzdMW4~LJxlczyUpNY%`jKX&ZKkfb=zswE_sT9Fb9~Y@!{WUi}stq zEt+a{&wA4q&6%Xt<}|*fzGoV;3uwq5A=zI*=R&`P=>8;s1!?z3?VewoV=mR0e}((s zK);242mKzp0Qv*Oy!_;a&_xhEmEiD0OXwQ++zRJZmsGLoUw+U^ zDCU}?EK{!Sf7J~Dp4MhRUnp&Q)7(}YslCUl&c0Y2~OnXcRow|DsIR;#e*2aO7WWRk6&0SNT<(|9-z4;R;OUWtcD~^M%R34^$9RkHpQq0` zjK%ktD%vVt%;#zP=ULoczT8co{7kVrc^Yf-v<9Jb6jtaV3H?Jt55g3hr$VmD+{_FI z(|Nbp)Q8ABFSp5m_uuU%NB&x3AhAy!G|EJMjaqs{LJv!59<`*FezwpgQAOu)Iy;lg z`u^oq?dr>In_atEj8l5_R)Ckg$&|mE@D%jnDR44nH>&9g2|XsE$El`alVAw|AJD4QoI_&zzIEL98}6rnO6Xt4Sbx?v z)}Qi>^%7gz*{KW*%u8jA^=jEpmP&{NkT7n$)%qD);;JJ);@H%^C?If-U*#8?dETH zyeIhtEdr=jkWS)RJ3%_leZL_{uS)0*BS>$$ zg7k_fNNj1BFK5{8ByCriu2o4}%myhk&nQ#MvGr=MQ0=(NyiZ{%1Qn#8B1o^RAiWk? zke0ZGZ*(I_+MP9m^j3=?(UWxq>Gy=5Akm}kqet6!Aw-Y1@8V8^^p1qym(bf1dQU>{ zekw>5BemPm6myYD$dO469hscJ{aXJcg7hHOuY*MG1nE(pujI!0-A8?n?x74k_t8fZ zUfdO=@F-W1KJ)}BTja35e40(Taz$2|SD8m;m+e}zUaOT#DVE1(DxFqO^gU-F%mL;L z3_~x5AccDZ3zC08M1^YD7U>Pra|J29M2jH3LzK2ibdDN=MCYjQ1L#BOqn@6rJskuo zyrhH~LH~?|$;W3u6(ovr5fY@S+aF z2dxin&`FS%mhiF?UP{8Bm+&${1?hjzhzgp)PsZRJG1G49!BqcOV2w5{($vFw-lj#G zdZhcl*CK^iknqYzkjA)zw7e%sEQKwwIV9~6lYD8Ga-8Z?sB)HU-m2D%Wt}Nw}0?ilgO+iR<%+w znaXBs#Y(181ZsrLS z)im`f=%3Kj&@-KcDJkKUgr`V&s)YMK6())irfc+*{>NLTRJ5ljrB1Lmf|OdC=WPTj zwVWw~w+LBu63$3CZv?5}3R1cuNLedyRoFGiDr9Jt@+^&G;YlHx%UZ>{&AO9vrqfEM z)G7wT9AJKdq;e`q*}#IN!s9s{ItfyWVM}EkqC5b|iQhkI*kWv`BDGN$N8OZOg z^IxmyE<8=bGbCJ;aKD77e=0~6<0mgj+LeIa7vY)osh!CpZE*^3vKFw;q)+Vz?e5;E z_T+jmu4y(?`%n~{yU!g-*JlTqI2D;OhEzM~wHL0SGwH+YNO&!RiiFDqM@aZ<_yNA| z%%l&m%jMcFGwI7Et7zv^>>yUci(kfjQp}W?cf$d>)oiMs>3lYO>PP^XMm2Rb3D#8? zRPW`fDlkM-o$0A>sHo|=93wlEeu=Y5K{!KKC+lp-1o}e{+JC>~F8d$0-~9%VdY{gO z=0e&&&x3SMfo5S0^q2|TFLX`mywUJ_pV%Dw6vnl~HW=8RT&B*TJjsGKcC8CtQ{>;V zynaF)?={$idzVcd7TH+B8&OpoNO*mnLm%F}c@BLcRn0Tto=w&)oYL7+t;}vd^jz{5 z4>OoqaEXfSrBIvRf9f|p*YcbL(BJX-FDgrH7`S;zUBox;f&i}-o6_`H=(-dEf4Wv; zU`6-(0Rm+=uXg8={foKR8lDUJYZzpyD|t2sawpS=HyJXSK6Q;&^rjE;jw+_Bp=+RP zq3fXQAq?HcZ-j1wZswajbH1rLN79|@QEAnCUFaI#EZAiFRuQ^I5p6MI#(N4wJcZrl zun8JR^WshIOWkeq@e`iCX5P_qbmj{2%(FSRlJK_1=Ge})IXEx4>g-8fsxXJIz&af( zug8tlD;&_6DRGPs3-I%49sVd*J2BN<17Qxy&V#A8QKs5DFjHyOG%*#{wpr+EcIJS}h%Mv~)psA92m$cslmo`H06Y9``gm;wi z_7dJ<^j11xuk+1@UIa|YT7tZP#!bjtvXRiP65d(DySUSNbS6X^Phy@)P~QK26SoH+ zx-WE$3JQ;Uv&>`}E75?rr-XNx@E$I_KC5-c6Mz}i*O|gWqk_U)9(XE!RFkC)=~mOe z65d!{xV{&E!-nZ8X~il~{e3wJpx}OxtN)hgZsED>?RS?&O!WP9PzV zH%=m*?s*`i3DqA~XJ4~E#w)-SZ8fA}Ep zsfOypUbfCN-_)G*{h{{q2@7N|TfbLCCykiBZ2ghay%6lmCdxvvj%P1h+AGq05$Cs; zt*gv4&t5)7!seXIuzSvBxN**9#;TQd-a?X7kyyx_&SjHjHj7Et@`VaB>xxCY z?n#5GZi1=woXc?Vb1t=NJbT%qd!S6!(O$Oh9f%h{B z|5U=~4B9wD%vHw(b8MVIQ9ng@r2DZ^h&m=)sZ50>E&b9Jx`14RXdmmb~IlkPR}=#UzCznAcDCH%YLInY}( z)P@5)Mg@hp6!4Zd@Rn)7yHLV^knkVXjCHGX=taSYWvBa0X-?JBL>Eq{WYNEAl>+Y5St!RfYCK(_3ESL#?zAWRjQ5?m z8H8FhO8l-VT*0xNZjkVGG(K}Ad==LIax?XeOH?`BVU8~4!@3JD_;xC|uoz{+s zmWZ*iZyRD^r;pV-zWqVoq1L*wu+v(@`c2I+%5$iNea8Y>*y)oL(On~EVW;85v~ri@ht4La-!yoIKPFRCZEnT&%(Z2!uJ`EG^e_;*gX7K&m*0!RV!AJJ)s%rD&vu+ z?`Efq>0~Zb;%Mwrt_nAyB!(O2NNWeiaSg@0W1UqpZ?@BJDqei~Of=A#^S52POP~g#Up7;aI6TJkqTfK@Et%lEB?2A*~)a zp?MOXE8&NY0nuuU;;!_prJzwk;UUuLhYY;A4S0`B_)!Tz=E74`s=cl0SXqIhg2HYfVm&>X#a(!rQ4M&n zNci6pez}t*s(RGc=vL@9=yvE1=uYS$Kh2&_e}9RMppD(1sODT^6KK=fKb(DH$H+$$ z^ZlvdA68VfomLOP6B0XvwM|zuW;}rFtuVnBTrfayN%LOZG zr|3LY(l$18J)J5SI@vRsZAi#ti0%0NC>SELxHg!|5MA5G{<-E_tr_hgxLZl9obdMm zq@VOEbsnX1G4~HcbD>8d1)`-unAyWzyS8y;$sx9JW*_P|^4SM@kMDM48)x<({Jz%I z5ZgF1dVy@?%%O^CjXWrKDCbaCo^6~tntLrj;{3L8=9}gjt&z?UjYK43 z763)u1wfI;0-#han=WvAIOnBQEl$VFTFGLTBl6gYiS?+NOs;5k+Fv!J9ZrQX2bjvL zx&SB=d;ySFjb|G>yrkN@iI-?O{IfMOr||;ifo&Z5T(fPQIm5M$GiQS7EM7y!WhkNy zJnE>rbGZH)^mFJJ(7Dhr1KY-t6}9G9m&mdbnIw@_B(ju5#szJWe@)uI0hcO~-x4}T zSLE{&Sz02?I0l1b6gQh)IG_hzlYydw!b4g!ml$~3zPRvKkjQcpS>D()LyXcvi#ljj zP?^*-zx(2*45?M(iD+8}FPhyA*+IXLx?MDJe1_eo%C-WBr68p)N;c60DRU%(7 zWjMqr9W2A3Q9kx)`1lO;06DTjqBiT@8QYHfbB+TPaEL{(4c z`d#Qf_dfFh*B^3?8qX56TGZJkOx%)$V+`?~hS8+YR&WfaqC_|+D3Xx~=LAL0l*k!a z)Mq&sbz~ZscC$szIDWBItd^7MToD5*hechqY6T|07OV`%m9rgTr~P!ZpCjRwpg90v zngsQnph)XELD^-sebDcWtVJC;krc3~vtMw$&pYe@FrDME=RrH~vupC;eRe!}kA-7g zXD4Werhj6_b#@B*fPb>ufuY{jbjwbKQtoxDah=WZo|;JdE;c}ePq^1-J!2eRDM@62 zI-4Ppe#f}3H5=EJLOo+!x;;mclcTbh1#hsaKr&yc73~Uh=*#&|#&vcU33Y(%MfmUebm?lrf> z`7Q12p5~cnX|FAj^;|D>WPQgA9a+osLNjNGT`QRg%^_uU<2msMOFPT4)TNYN%w_8N ze74h&SM~q{VGb}4g0a?B##-kdo(Af*X@z-~b`xXK_WKR&>=C?2F{pvP0S30wAzDY- zqlv<(&dw(E>PqkFcVxc>eH;4DFb1`*#foeqkuOVRLy2r7kuADus1?XWXcAwh%aPT7 zI~mD-pU~N6F0!#iz9^B6j6Ic3XVZ4BU^V`a2{WHIf+juPBu%d*d#Xv=>44}CcahB{ zvZ+KiW1BH14m-9|!Jl+4uSd0*s8(R=_I7@gJF?qy@W9ZW$!cY4Ih;edf&*r2iEJs6 ztz0mDg;pekc4aFP#}N(~cY1hGFy{k;zKjD#`!g<>FG*xuiEQV9ajd77L^HZAoY_5n z2-Lv=fo{McnGFuP2rw5LFxq=@Htmb-D3R?YvO}-Qqvu#1l5P{LjGVerIldZj?bOW; zJYUI;Yf?9VGS579vx`J_H|k~&SKaLFsheEJvhsQ$1{)GMXCYP?^x}k6ixU#FrAn!2 z7j>D|aD!giI}8Mcc^B$tH&r*g239v&)$Mn=u(PyXS?V(T;MiHO-=TlkJ0{EOTZU#F z@QVk=4!9TpFtK;G9w(5U%Xf@Q+OtI^JxY|SpvMS3mGlJnPeM;YSohhdJE^4oB=R+h z>?M&yCDPTJ3%^Qwj;}vY$|{O45V|U9Uy1B35uMDB@Y8|9n_?FVb{?xU$2>pfGdC)q zwsOU^m9;Y*R-4LYeLI`BjcSz#Qk*ar{$B%H6B-ANR~Uqz)_fgkZy1Pg61p;RphWhU z$N_@_YNZP~yT}=uX*-)wX9_BylR?j+XdE+uA0x)>PgNM zVgiblVw!h~wexnTEu!1B6C(=E~expej^@>YY^QcO`O~M7|@D zlO*zkE@j5kOSyIVI-@13I&J3h9*1oIvd+St-iX-SFKtC|g*=t$Zh{g*9?kV1;=Q@D4WczM}9Ph52KN{753F z8->}DN`|)EW55>JIbT%UU#U5!UGQ6>+o0Pa%&GdEE$)eG-b6olRDe-EyjK=WAA{{kw8>#vG8U^UopO zpR3M4NB!#BJ4d~$LnEh)XCgnNoJN3xl1%7zxu>nfw?PyqbQI zUB^BA;=DV&EAaOcVcUYpuO)K6;|jd6*%fG2S#66EoUF5n4z57l#HC!Nkjxk9L$PZj z(@^UwvzJ1bL6<{X+X@ztIpnv&6C5WW(L-t?!4IifSgybv+S#pJJ=W_ZsM0hyq>wdWfFs;x|G!K{u1fN6j~tZ>XT5uE0MAa|LR7lD6jx%>9#l z&nRJ3CigGsS?D>RLE^ZS?vltw5?xXv&yAej`63Cw1RyHc;jS@cSSO*WW_pcK3xPO) zmp!NUrase9$Ko%M$mPcFyu!6RFZS$Cj2vb)+qq=1UWVVw*$l`0rBX?&Y?VuO4rM8H z+>A5#p@D#4(UwAp7p-^*9Yx_St&Y_=)$QKC?K zc}>_f4~`Q`aKz?32LD-ya^ z&@~d7Bay3Jn^J9_bh`Plk>a2)4j+-e5!fl0U!5fB*g8qCLFigEH%R0;{-yC31^I{$fg|P4*kcR4YievrNeZw(Rl)fGHU;Wd-9{c6UnTc8T1f9zwVF z8*bYnRW`^fBc^Wh>i}|Hz_n2~`7iRkjk?Ki>b~DlH+M_KOpA}W)8ZqIY4KJzXQixE zhN(YA&UPr|nEJ!M+R1XZ$O$sl8jCJEZPb!ybjEAm@;Z%7r^QEtPm6D-Zk9e3!{t7> zI0S`B2R)MCmC&f0zqhEHJ&96vvlpSKZua4RUuZvwNnrT{I;oq7B=WRG?w80D5_zOs zF`H<_jIKfc5K>lkb10#!ZXT4#0}}a%qi#M=Z`aBzS{uvxI`Y6$YU-T6|14L)DW{F@;@kM zK}+T&z?^KroYDaEPl-G!k*7?_w8_4wZg7?RPeIc{TL5))7GPA0l|#-}Fpj!;RwBFg9wN!PCTZ<8y6WZ~iM%C| zw?Aoh^AupTd!Xg;bOX!>5_wM|@B7tFi;i=w8>fLEBINV0Ze9X}b_Ep7%O05MViNgC zqCKCqx_KKA?-(%eDi~Ea(a%V9lth5Iu?ly@|q_ z5QBS#@z4Yal~9-jO@=V`3u^46ki6b=p^s-%p%i36X(+=xF~TgAgRsjB*yRNqDniqs z=}Y@6c`*EcGNA0HlNA0GY5c)G>HJ#OK`>_{%H|eI={3z2+ziEQw|A3X1=%ErVOY|U# z&XnkW5}hW|v_$(PI!U7AB$}7#DiU2$qRUEjDT&4;y1GQaEYY1Lx|>AzlIS*ghoW0Z zbQ6hwL!ui>^eBn0E77k>wBAiaqJj%U=tybd%h2{P1JY60fzX*(9{rp|;}T8KhUowU zC+PX7(Kxp0{KN#swg;H@G}!iPVEep8mzJnIB|p{2+K9oqMO^y^^Mgip15Xu$Y5ofb z0qldC~vf}a0Yog)8vUBnaR^ciH?`(1TRl^ zb3r?0pUF1E)Cn6}t2U>E`tTRrS}iv7uZ{(;q%Y_E9ZIgXw9;Ms(Hglpmt6eP*Bb7tIF{V{XkeVMYIc^=M>yWt_fv|j*H z?I5a>|Dz&x%uq|BQze=*<(+HRQU!HR3{^*_yz@HJKgbychlzCDZt$6%)6=%Ka=QF- zH<|KF`xRv7N|ULp2wiE`yKoSlaI(Pj{L;-POp`42e#cXg_(k(smNFSG7);g_NN$;AUE7u2eep^`*rNp!$SdvhAB=XCY3B6EQ^0khm_ z+lwCd*WEA?P#ZSgV?ce}Kz)MHwdraStw^+rWGt^$-BcVdRAA0eR5$Sag8Llso;UDb zP(@c}hC%oyp{p-9kSHzh z`qVWkY0WnC8F;lODM2T$H3KgAVSd&PKz|W_2*8hAfHr|C!i^>RMTwf3_nH#3N1LQd zHJzE@)FkL>yHiXz;C!WLkM8NQdkwe{p<8;JOLS9->fHR{>PbDmPF!ozQTL6wHg(_i zppz#cHZBEwX@hVXEk36`+*+brN^~nYP&JZYTj;f;Wt&?QXTIpjyxUEg`xwGrnH-HV zIa)+JHSSc-Pg|W&Dl*kYSdDzFsOtuWxA=Ny=Jqm;j8ni{Vh*6Xj5q8{;_epIC;Va zWb(ADM0b|xE?%D68NP)=Q#Ga3menSut>MeOc2kROP2HAU2HnI!nL%4|kcRhL*$MXXEd4vV_miXt@I=y1zsZ z@U&d9sUdJpk~Ud#wA?~}H)xKwB1c=B9BtFc(IFB&SfaWRL7i1iRfM>@ZAb8!Zm{_^ z@J?Xc*l~xP1+{{RrJA`ACT# zA;p4gi=r6t502Bl88-#A@eOsd6l<2pd(i_f4I!vXjB|DsB_3tDQ!Fg z$;>^r=Qs;gc6*HEdwRCmd7nKGINLtTC?iajFrq}IkuBkNF2__PH*gho2qkO00*_z>`q*vW$baq z!+icn$`z;G!&5Da=Gma?VbG^YylxrXgBIu^gFR%hM|~({C|)GPPm{G%q8n|0)YC(O_7oTM4JG=A7>7S4EPAD8`X!0} zPGWQ%AD8G)CHmfojnfyG0Oe@y6*b4jil$N_Mi&mI#c~*V%8Q!ldW4WtYm;VvcD;on|2xKW`w+0p@Zf z^$TV5pSNdoRX@tw3eRJ2WqDXUzBl1r5U`gZUfF!ql|yGC7QetdD-g%<=y}c4f{JSp zMV%MdBzy&;&Wm&hRh83;d}LWi@hwv@zAciQLE4i0mE5={LE6?l^91PviC$;~ z=^|HaeFmP+__d zVY)_z>FU736jcX`5hgv$O@(Xpc5Pavt9Z`{)Ab0`gWMuG#cK&^JBru2mPzq?u5aL( z3fGO$P0-EUtAPC(!q6>Z_2jPx! zx5Raf3JMSNecG}H-f|6ik4f|qi9Xs~(Je3>h`x#r96e%<)3jB{)T){p2(9e5^ro%B zy|xU*`7OO^bP}9ro~8GsM4vW|(=%@4^hBd^s?<4XGFM7g=yh{=l9f%`nIii;v1GJh zl{h!B+G$<#w5bLH4azi&#_6BhI6W1-apL!0<20@4v-HLeEI|x^YO{nOcuA+CEgjb{N`8l;^%_l_+`&O%nC8L|-!!^|~uj|Mn!R zT&UEmQO6Ud67>T@PohrX{zT{`=w#>=pMB@I=^SswTM~U&qHjv{ z9f`gjRHFXpcsFPUk?l`F&PT3|qQ@`|c5N$B*YjN2xmBWWHqX2^>H~@OxDpjx%$2D3 zJ&CgHOuf#gP03;|#h3<1m?YV9u#l`FOKgP7{%0NCdehWbq!55OjlDCXAE`ur7+9iI z4SQ{ry7<(K?QEml+BB(a&=sWE;t0~C35=3y81mERLO7_W&4V6+9)%u*9*3TQXgXB9 zyd^i&p5mEW;@aLl4Lt+>3wjoM4tgGX0m7i3_7a3KJq@SyG`=zIRp>Q{iD1*-fZl{C z>uGO8??CVJU5gM$^0W`25225GdZzPu`eMGtB26o0nij|W2iL=NxzNS(uWhmX%UM{# z5-Uh7BeAIx8!xf35?fVbD@km!#Fmy=Tw-B~eO6+lB(|KyHl^bk`=Z3wlh|4kt4M5? z#HI%n^68(UV3(wH;iBoEC3HHTu_Yz8gv36Bb*fV?idM7z?yOg^{mZJk*6p-L>gAxB zij$dy$<*f>nF>javC7`T9znY-m<~&zsBYk?$oVf?FWhJ(Z#6C}+oEZlG9FaM*E1#2vj6eBe(d5_m6+zyaD?aRZ zx~&9{YYG6i4d5c7%QY)XYT0N1!PJX;EjB^Zqvo=rv09;Y80*9}5{k(NM6kH*m@ z^lD6zt|GCOB{s$_Qm5{Q@S{`OZnZXR6?eB)XWsApbFo)|>j7_l18;*y0j@5wFGy@P zM=Ll9S?pr#|8s@RiDEm$ra#wDFicd?(%T$(TNrp-HcD@t#MY45nv|Zi8El(6WZu3X zu3jT%&f9Dz+03O{#>2kd<+r=ZmtWg$Pri0A`Pz}t<=aUTn;@}?6uTmA&44>EiK8o; z{#2)_>@_{)#(BG4wgSA|ZLU0(xF@;V%j62H%c#UYiA|AM(x?x1JZ@ffPVqY$n@P}| zaOSTXXBPfeH4e1dkCUBY0_vr6gtnM$5sknDp9d#M>2`)<@fyQ^VCq z+qZ{)y4xc55$b(G1~(S$DJI(*}Bb9+tWGJ0G6G|aEMgr}24oR&6HTb z#AY};(n*LdvYY=LwhkT@6yBM@JIlbMR1Lhc#0Df*@>pVMqm5WK!*x`o(~OV6%Rw{s zOEPty$<(hJnW{^yDzRFpOtt1oo1aXPjVPa-3kXtvn}K zy_QbpX{>O9;s0WVb&a`g9OPRo*Ybr_rBJKYI}OxK$9Lp8!KOb;QrqGLi*0icPw_6b zOyMLe!_95;Zy>9)2z1B2c5~aN0zv~y(D&&#CDL_K@!_dVqcTk_7dAKpvdb?vjv%L=Ckp2-dq3D6bRbGodd@j zjoF7uY)2-+HCz;Sb6d+E=UpQ9`t1EUP5M`Ilj&cX(CxGDDzTjvqwR@mpgu|8{oe3>Bo7}uZ|PSr+*xwYs&5^vE3!MhfzZ8NZDk|I;Lzp zWV+SD@R{rs+b!(rt~J=mul-sa#fx0O-bbCXjaESD) zGen_os8Ah)|8R*Ry?UUFvXfiGP4&l(w+lta8d`KiJCNY+^r>!O`vnR|NxwQt6!unx zu0S0ru_Gk*bp*;Wta8nr!}PEcrJM+BC?B`WWyk1lkoyYUuXX!(G6k+Pd?j`?#SJei zilM6V@4QM2wFs|X>Oa8L=Yd+Et~B-I+2~i#2KW7kLWgk;AM_tiQQ$Ch%o=SG^x2Un zJeqKfA%5pvd*KSYE+zIoi5*AqZHax0;5CW8%Ic-poz+XR?{oRx=G9B7e7%%qyI@Yp z)B`h%)e=)Bt7)dBlyX+3T20prou*3me-{u6at!sL1#j9p@*S)5Ceh^_A!KyK^nF{F`@q)&A{=W z*qWvObAh7rPyg95S5agA^q>3BrwF-jU9;5xTi%0DoOjP4)U5o(M`Ik`I9XyRQAa?7_&~^J39XaY|07lau-{Cqa)FuH^G4 zDleR{Kn8Eqri%~oeSclfqaZHknbxP)tG_@CSNU>9ftU&7ji&pEY5AqJ* z?Pdj1Kh~hjCxldxQyB+wt@+j!NU_s`tw8!4zawpL0NR`D(T@c6W5o9VO%YxtvC}1X z|A_UZ`YG9dl)b|;%0`r$x45C7Qg(9p6P~?h-qF%!2;E_~xAc8#`wWTw#Pp=jc6(Ak z_Igs4OubyF*{GJ3#gSZAA)VwjB|Dkp0Jt)%%c|K_r&U7zjKDV->p7A-OBw6Tz>MYJ zt6Ud13^yOUU$aRuFw-seQ+iU$AFq&O%_()&|F&CS{qJ!7F3-?%{qI5VLmzN&5q{Lu zGlR<+^rB`g4$+I6u|yX=r{Q`_^pMV%*k#HMzn9p#61zxZzn0iJ61%X=R@(C#%oq)n zUa-NwGeU%}AM_Uz`V6@WGNTzfm@$@|u3>Vj{Vvx$WI5q)B=%c!>Wq~Z zo9i!w&2I+u`i8jQKPIZnnrPrlg0Iiu8ytN8qr@(d*dKgmU`xM9hs2GA*fO+a`9>*Q z#_>3PtxI?w_v@^$g*5YP#!PZL%j9%GYr^SYTq?1PC3cC!bM0lr^vl|bO{b`UIi0aK z@YXT#)@{JMQeu}&?27*uIUlh$ZN|oAe-q6%g#7s1v>97+uPt^J%x^UQ10u9nz! zrcJxvZPVs>ZCbsStK_kclXgXCo>o$YWT|e~IS@R@>i=}EnkiY@vAGnw47wbm@$i=Y z&(QvnLYM{rDV}F*|y%M`oVs}aG zwr*J2uk&W}bs=SKvOr;U-k&6Plf-T|lE!fm*$jIZ<=KLPjRF0e`nLFQEFH`i^-6Apfa2#j&a0o&NgA>JG_Bfe!Gt3l+3|mEYK$v!E z2*R#Zo|c{m?-byjYT%vLfOn_FZkN~{u14lGr4|5#t-=u4gHc1UX;jeCI~#aZtW&w? zG~nGMvA;^}?!g9Q2tv08)uk{5;b7Ddgk8Zym>TUFU9K6wHt>F<@Ek4wcZuC6vA>zp z8qOFukEi!P9a`MMlK=)?G&PFr z$Ww?-y+?Xe{^cw)?&LkA?B=y7J55xT9i6a-vZJFm1Nbv=D9m^O`bQ^a_k_e=lGq~> zdro3ccPkH`fk$_C#ynD1Wv5+Q*T8#RVvkDfF_c|W-InR59q7_(-?9B(p8bwEl$ssG z^32lSHE9(F9li7G@tyHBICLya@n}!X)o%Zk*pm`_YEV8ALjN{xdEFJy7<8>@bMt*t z$BdT&@rnWSY6Hx(5_?8s|1#1z1j(SnYDMDM#inF}Yc4u}Gu|^`==_Ju?}j(`uT@IGxc`uSo3Q5_=giV_+NH zz{9YK%U115u030Q-1k({F?SYWpYF_MO<^xbs1-4tf=8juT+zLsxiZ&dxYlQ@QWTrJ z&mBFh&*;cGaRgJeBd6~w@vWwC1;=;CYK`~Mif>8m&CwG7k;G5ymH6qdU-v`&y6-pp zb<>4XrCMSaiAv65M;~SvB+KPWg(^Zz+fONy#IO5h{JMwilH6tg!}i-}{~Z_7k+?JKnv;({F$eF= zbtyrW)b$9daP6MXRNBzJZgud^+?e-Z8t2_J2t7toW>FfWOcMW$#FrpgOyWK2;Ene- zJ9tyYTH4NJ)5%i0;4D3*iM9*nWG+*$WbAs`u2nlZ`)7WMggmC$p3jehDdLN3YpG1p zyeSp!WH&P!oN7IhcYjLN(ylsRdWi5$XdZ=eF(EBtI|uK~y?8zbavi+!C5Je8XYNO} z#y|TY@2E1m8oCC$7P=0)9=ZX-^jQ2R=w>S5K=Vz_Clxfr!5beP%)yJ<;W&4V*vveP z?^>jDxWv;6E;M2W-^{O*%#kGb6G(Z7qVl}DGgX2$i^Ta2zM0=K&)(Aasp5#lsi*VF6sHWZ#aX4Ew2K)%t%+^#idH6DFLgR}d*<;5!W>|-;a)tZ z+!PJWO-)k~ayifUHb%`%4@ktV2MdC|I zd|a2!zvtJQ`Fo&T08CXXOi*;4QSr}9d})d6xi`*?gckRwGf&#x_;*2~gF?L=h*ub> zS2m!oAo1lSzC628IF^yZYJV9tIV5~067G}?Qf^9SjKo)x_{zG=hGQ0ahH~(8A{$kJ zlXvDFCZRhU39TmaRVDrf-DN}js&2m8T?Wk;&F)OqvRdP+IUV<7d`*dumG~N_##@}M z?s9^`8lT_jpimzL;$sHt;|-`2B|cu_6O8|+9TwA34jL5{-m}1a&cJ)V0WT@>$r7Jp z;I)X3v&O){3mO#^-fO^n-N1XJ0nd{7REeiXR>auZOm2}#r~*}?8dQhY`fp#+Jp2iN3uCQwd_Rfr zCGp)P{$+`8Bk?UHzKO(llK8q3uS>iv@tG2zCh-j={#}XxK;kE<5%3*}e?#I&N&IUP zKUCreb)zYiYmDn?7QKmC>r*Lk-K-4=9oJEOhQy~!ydO<5IDs;qYd+9Q=QR3a{p+{% z`eS0d#Oa-aHEVP5ZDDY3N$9wg;w6dClK4RHwlvA?I_oSKb9_jB`6AOB{c{-AiMk!H zWtrRPyw@dyMoDcCf*lNk9UBO060bWS4KAPn&WKlOe-)luaBcOciuy*;z$B zXFnjG{Aq{vNNPInsuivYCrKNQ^#yV1KmO1r}Yqx~DbG)JW z8?|>N2_9t*Y0mMjCBCJ^_0$@7l}^4% zxQgy32yKx2xw>7>I>&d3y}?#zg8eLmo!U2A;!6_WR^r=vGTJh;JmvOj>`c=H2-R+G zPMc>*yKfiL%`5IzY=(ckxmdat7eDvXgPcVV(vfC*k%oJBl=$`%*F$RjrI>5ZNUE{^ z*>0Ka@0_OB?(NQB>!wb??)7nI(Y2iQM}z%BLYMV-mH5sQ-vxfs`9SHG3Fpo_gm%zI z>g8@SAcm%XWlBswl5ED209ei(3iW+R6}~` z>dwNU<#5@b2;DYzUy1K6ab4h`g`a1f+`llxIrh$KZbXXS&K8+`vzjo6fHvtj=jB!S zvez&(_q_FmZZhH*7rN53?lKwqt7gPe_6JIQe~Ihz2PY#fEaza$q?(iVwsFblksY5k z;p94P`=0PSFW33*zT9P|8gfL3eHOoQYUe>hSB?&m_`wp_Q)!0HRJNr&y~C&4;#|O& zyUCPaj_BIYdctJtNzIhg*x>0rOyYW+jb@6~gctyWQse0Bb~p#E(V($i!fr?kUH(}w z7}zfox{`9F#E+1;9(1Fyi!Ccb90uc@k7f>|;TZPiY>Ne^v)YDzIqxeWEvvvsPtJOS zOucC`rTt}BYDD5kOMEt&8Z6#+4Y>j<6i^O6p>VU@-26HAOs7wEQy2dB<)faS0nn;k z3@k?I%Eh-O{!NL03l?(xldsoV+&@A4B4JC7fznwUPLV691vZPk_73+@)+P@5_A3v0hA+Z8tY@uC4C6 ze*GmjKg>UX17rXPhyxEx*f9U85|NvGR@-svHjq`lNJt_MR?SE zplFH}pOE_EbkutQztF%8_kLg&*8^O`Ed%(4T1UMH@C`X}YZJmnje$(P=6lZl3eI5W z&m{g+Ja1=8{EX3(m@bKFy^`p6M!e%c@0IvD%_H9V6f>Kxe3gB5S;WMO0*m1&_AIoj zOonD=T{)NTH2-K|QxabZ!T=oDoOI7tkKb7>Bi;jBshj2})bm0d@$TtKI%oG_=nU)t z0yTCh3UAbVVCS&|o6hE0PY;g6vF=q*&vx!O_#p=@yixFhy)}2g_{2uR2lgjVs_73P z)Ewip8aN2Tp`h2Tqu>LF@*a%kyn6=W828#?9Dd(3#$lXaOZee)=I z&0>Y`z{y&zzkSd}*v%;Tz-i{2 znolaosSGN{$+s?ZivMnbM!^TPTaV{>;B1NCui!2iv4MtxpOMVZNly7gd55C%M!^TP z_pMnZ&OZu1@LTgt4JRE1|D(h&HUkZpxC0G;@CF)Eb!I(U^-40IDYCYyTCtPm6cZq8 zY-N-!U!Mle*SjS5o=NWg zMsl}G{1%D-#p^J%jL}F_+aXjC5!GOf6X|WbC44)ibGdp@XSYN*f3?PNgi3lg`PHFW8*?PNU$Z z8E!FX<22731uvCIybM*KDpZ5$MU>Wp=tY#)f!5`RC>?JZb!k1GF%Vj!T_|lxobvV; zp^c!8p-mtR{?ca9=Fk?eZ)t>OTQ!e-<#wwAarf*cO?Fn#NYNBWOq))aIRX6EN9+A8>g~k ziVqhZR3p%hFKIVkIp+$6>bPn@kobENe;=s-#iQV*>%pwOGsS)*p`#@di%I+=N%VL! z+B}Shqg9JF|KB_cUb>C^(1UdHMK99j-URA@lq8lQU!BLTy*m4kjDnZwS~|W&t&{t~ z?y!CW_vB|KF&ci-;ghyw!2iXg;3YbtrAJMLJf@jaAxT6f5tc-xQ>OllN5M;UbxY5h zOg%^FO3&vc5tl>)F4LO&Ul;{1(UmT}W-{`+W<-^J;`5SNS`y268R>4U+T{8_KMG!= z!(RHpWa>jgSB_SY#B!2Y-mu(A3~YNP(7d~!Gr&1?usL93Q>JTQ{;Zp+@@UPJBS&K- zv63WKHktbG8wD@ZNLwZ4|tWqoAyPXcTpMWzCc$HET*@ ztR&VTQ-fWBb|%VyY81S@25{Fju*VU)axqa7<0UZx7Fv*D?vMF(P;T!7>QnM1H^&1p~7>RzbJ`UA8wrc(@}7WP5W|ZGRA;`SvRV~F2*-*>_lbTBhfmqdkNmLz5p zoF$1fF*ASSjDjcD;ZVZ(cs@tLA28ojyMJluR*3#UkM;-dgzn)26o_{qS3uP%E!*eB~%?fc7XEMzwHxi@-4(LWf$)yjRBCpx3R#IGnYi zBsQRi*OkONI!vC}q-B^qRV>^1Qj+yz3Qo$`*|f1-=Ty~f6^5!Q8M)~VL5zfQqXzLaNL5biK} z;)_Fu$;(%2)o%14?|`tIVe<0T=9`*ND#)n}^*HLi4wEM~UZ7#}viA2?-fot}VG3^3 z5gUmp-$F8fAvxs}aXBqFg5BN3YXD-euPe#RYVDATnpYu6H`Sf*=Pex7TstQVn| zpnpRzL;SA%s&9DQzct$M3&RsTYlZJEiR~qEuq1Yu#I};y9~`4rgI0I3j2g=|#^NZ9 z#ZefFqsH@GYXq&JuJH1kkk*cBkGD0>F#*0TiR~ourO`V7&zVc<%mi$`3YeA}LY2kb zv?_}?(%MN9J4j+jj8+CJr{I-px9$7?4VN8|>sxEOl3Tc`Vl56jLATRwj@ZBRa~u6Cepj`ex5mVPR{P#d)W=S`1|{M!^50&=Ioj8JoC)V^E}fI zlEA@UrV=gd$e^{yl@XxYQqe$7?Qx~Vvli`frRKcvwa14_;M=x6{*Kcgf75M`E0uDB z(?{#^bUwvaFznaCMwW#%TYp#5#ag0X%H;>zzOsUC;r8y8iL}RuX?y&wWzrs-tzaIe z0i(t)uQirNw=$E^w#VOXY>z9wPJ3LL%WLy^jrO>*Ewmliw8xblpdF!|AoTJIdU<7+ z&fDW7wLLyT0^gUw=@R&n1P+(LDV@sN9;Ce|xKyb3B6Qm0?@3^R1jNXi8S?OEW;;^n zJnJ;AgGl3Go7N#-T1QCW2NL+9&iHW}x4svhCiGnrI@~6-z)R>D2^=MXqrFV|r<->+ z@!a1k97S43+q91H(mGxO$4cNh(?FW$pmi(Qc~qyYI2m}SSa?77;GHai6D4qx?PM}d z=fyb7<7_9hG?ATxJO_~4tf&y8|5zbBO#(lbz^O}k*t(-OJnSf{Q+U4y*7+9RZ#;Ns zN#G0#oau>^zh=1Nl=#kHcwd!w49X$*K!1cVGKZkS>N#3VXu$|tm=z{NQ=Fe@Yqr8v zXxf4k7MwI-cnOGqiI>!Gp`y5703+{pD!T+>=sZXxX% z&U4dR>$5v-++BpjEU7f;wHppK2IBb=_$5vIxe{O=esE_A?zD;o=R2;4-{5-qb))N{ z#;ocRO1`T2HM*31nxjNYiFhTMDkrcUvxQns%jZhyD(GrRnV}gX;mSjV6oMLzl|Pg2 zFSJYfxjxmmXw^+?{-`#?=kcAvbv;y`T;h6AS460$u7_VyJJzd|D&;~c$s8y4-#CCzuPW$e?_xybhitoJpfjb?1;DNjEyU!ywE3U=5nESs& zk3o+^n)zYSlQwMafvCKs9JpZFdLR(I{=5&BSAnAfhdra^q_#!nb?6P}y4m|sd7JkT zH1lr%-iM1Na1n+4TM1lfybqT*dLNRRN``Z3it$7`2a~JWJV!><3ULnIW9Pz5y<8t~ zd+q9S0IU zx+HK(AMZmoq{VvaBImp9cps`!`%TR!1=QF3a9L;Ghd(=MyOZdQ!JF*rs?yq3!Cw6u z2!jC$Tp_{Ipeer9wMl6mkRWQ!if?s8o@s80^E)D{o7!jZ5~?HODhXU`72oR|#rH~A z@y(`7C8nFuHWhG-GBA;hmyxJ=mJP5u*fCu$)drfcUrkvE3xUa$$iOu!SXXx}SXyAN zBcegD=z08#Z*?o)qc*7{VxgH5NmZ?upfZHbU9Cd&GgbPS>L_S5GzJ>W4_{w0C9*n> zXR5U$iB+m_bs{tgq7ST2fu=&!py|*Is0W$}&4Ok_bD&;mE;J9?7TONl9@>HLs-&P| zS5dL6^Pyd!U7_9nuTOzo7Tf&xr!7phoqCZ_hf;0plN#H#Ry!BT~7{PDXuT#Z#sO}BZk)rB8gpM6?lLT&%z>O>S z;>svGbF0jjE3K~ENm1o)V`vjnIRyHKP4SzWq8aDAO#-(_;8vqFvZ)E{J^gFDRaeyI z3wE~?|7APLQ_H>N7m&QzY$d8s)SAn{ZRsUOW+>(rPG^Sz>R1!DLo72v&FZA z)?d0Pq196@+S3%RDcwIw;64f54_Y%pPB)A2tp_g}?^u7>oo#;bFE(&`N#6R8ZwI?y zG%#VR+L|h-&n0w3<6#LrD1nC%jc&)%^>4wg*YMc7%sAG}FAW)$hW>uk4mdw!F<`0} zSa25-I*ff(0)LUfBTltZk~Ope^CNMr$;23b`Wv)$ZGNOfZu8pxL3Kbb*eX5;MhC1ay=n|$0YDL zT-9kEwlQb{W$9x(#d#+<@3J`m;Ng5)0{@V}Q@X~>LFsHpWdJu^cADG+B&V8))`W+= zN`E`c{}6|reGR_vrUe?BA~#&(MHJ@CD6 zaem<8d{+W*OW++VvnmE!xGkU-#Z_4@{~onrkGSXZ-H(fDoge)+oZ1c)^SV#ql8r=6JJ14`%7RsO`xBLZquaslYX@p;fg6Qgt5;2} zRnraxSCSyg{TEj82Bo|?VA*uhuYhoHo%c>VN&8ubHeOSMSCih1&|%rC62v?AMOZe} z84=?sn1(jQD7kK2Ls!mgsv-9u*A7BIb21>yT7)@|Ijc)>H3@#%ENpTu5~G8)EZ_#i zWzf70wXJ}p;tlc0v}TElj&?E~!# z?Fa4e8;|qPiSTczU+}$C^g9(2zKFE%+CR}EE5Wz~lM>{jD8a4N2wy{jaC0pQt|!5b zB)D0dV(xaawSxhE2$|A~sHU;$VuNc+aHs^oLPcD|sff(=Zurywb!nnHg?Bix7Fc-V z!TY)dhe_~jz*7rTm(OU=+6v=mi|-We(V)dv*H^%VcUn?G)0& z;x%cV>ZP@z1lO0~25?5ZKS!Nx#h0az?UX0l0$|-5oCula$)*zASc01v0dp2SHi#FS z9T@@ZJgP%@%cH+5DLfNuku5k(|E=8Nr)n3G(~E6RFY$7kkl=6$ZvI(!r|@^4*O1V) zHlgb@A){|(B$$$58kU-gK3XF(jAHrzj8kAqWE01A$L9ee+vJAp?5f=g$lEN)+X)@z zq9DPX1oPG|cXf9kMso=gwac?=5cyD=1DvxhUiO(JeWTk1?zM>b0{lJ;+;lf;bOg7Q z;1&`bVFcC;ANNhjYY{t&>J;81z(F zOK>z=%OY;kO6mlvsnnNqG?n@guGNr3bE#v<)mMbRz&+YYePw7B=!?**5QbEJHJ?)9 z*GT*dhF@#(DZ>Kn5qI6;EjN^ph*$4GEqhvHig0wn}Y+S_`V(CH$_OK_|N z$1QvD?Gzp*UjM3vH_U@KS%MQKI0<;pYN~w0pPBp8s=f`@%bjLweKNIy&D4forlw19 zssyJQp6f=bjelgy-4v%WBA@@Xs7~Q+4!neghxA&Jm?gm;3C^@U&m|lGoPAtO^_?s?v1hfT z)rnShY}z_Dt=`wMY3pj!(&5yxX`3fn)v;?$+yR8z9-20>DIBU3t%CbXa4&-0B)BWV zqY``sSI%F}M62L_T<+62(JGTmrgN2SF`llc>7H4!952;4+o)QtRP*V4J)f%#w1H*) zJAk0E*6z7}I0^2l-Sh4`V4&SIoucUozo%W+9+dOoPPD3H?2X)>G=D-$n5iSTXQEYb zZ>srv^+KL=nu<72D(XB*Rak+POLNL#qEyY4v*iSHlxNy$R;YFc{oe@Bh89CQuJ9Q2 zIHdU<20dxR)^n@sr)sA6e*O7VKikU$6kG zU&k}$h_l2i_{~0(tm-#v`5wB6cld5QldS5u*l%ivDJd->qnGNvF7XO}tFuW~4_j}U z=1cX@y9kqncT4aJ1^4Yivl{C6l8jnsDl95Qu*&sy*0uI)mWcCP4Rx(o`pmT&zAHho zR>SuktKmDY)li}BsT8VArOLCSq#$@O&_v3j0+-B)+rkyflI0{;}Nx>`o?L#>AIV>N)I{!i#t2v=|&Yo`7> z^aihK<4DQ5{?7WFJbw#%8+r$VP4)Mn_n{A<5226vjh67o&?jA8qqrS~B{FJ=&#LfS z4}J@yf1jt{0h;uE$!~l3?Gx;fb0m1K1b->P-$?Lx61+r$KTwG~N`l8q@I(pzSb}GC zs0@w5Y#Ox^IfChmZyqJlu_eF_1$N(QM4uMd4nQiC2kZDz`Kp^Yk#siMu)7RqzuLOWZ6XG-uac&-DYjRSkkscM<> zV7=REj>_byVsljWa`ZC^{zQU5wbigij$9ME)2L42jRzi`x{;!Z9=u;j@aGad4|p5F z@TLi3W_PtdCB3w-l4imkscrq`cCzHJw>@NOrp?kU&5~*O&X?e?B=~D9L&aR<90lVQ z=qFDt8t}e??qt8MSKG;tzn$Ek{On-!vm>EX(SIw!3nX}V+qXsW+{&$+sD6Ic z4m>}*F#<>JY2ocf=&<`@3I1M!7r}0KV7+x)Z9p`&ptRK<^uAH;;PbQZAn+Y*@g3r^ z?{W!VD#6QOU;jNZP4)0rf&#k!el%$6>!|OLjqfUZH4D(NCF<*_?{nWmeI0eA^S-CP zUL`@hFd*nG3YrF^NLtqpiA#Hiyf1k~42 zC!)UU!hm4s3j_R4Z#@!1cPKDcQIpm>>P*s8DMV}4g#nAWMN1u}+(APf#m`hr9i_U( zxjaL29rbhQJm?qPqmhpK74&Q9eCRjO1<-{)UDB_K`gKXaw(8e6(J^nApl;+JyjOxZ zOYlJn{y~D*OYngoei(rM9Za|eUl!%mpjeWtz_mlo2lEqOx-2HJ0y7LvK@jSg)KTt zZBb?5{a#vslpuESJuqM8>V4BTc-U*f)7hjx9VS-!PEhM^%s($$@?$%MUN(j%FWUE4NRjyg6rj> z6}YFxAB`D4TFr1egwdg%46ZMF^hS-o=+T>~ zFZxM5M{@weA5Q6NIiIYTij{aalVV#e{?AH6cFD?AIry6mj=YgXFS0F?{v|k>* z1%%+~b+co7^wzwGpqY2iBGfGLJCBAL;d)7eFH*?QN$^?Yn0~dpN>z)gfrM!+2`WDq0(3m-yr9DL{DVAEVQSkkz5KPjeLtib zm#(h$_vd;kPUae|HkdNP`lDa&@J9oe-^ zsh%oS)A4M%h$WCImEwgw8|0+R~n5`0&J zA4u^1PPLOi0t!+&HKA(B3%;TMIvw6#UacR6`lREEq$TZEq=xof zh3bpYs>IX&j((KTsYs#asYu#oQ)x!4kZ3gBwrM6GP+sQDIzoV}^8fjX@Vz298mE+;}HLt4nA# z3HevMxDM?W%bAkC)h_Mrl;`8mm@kpAD)kv8uw5EiHN=O%K zFxqDZ(=v@IrF68)jcdYg#ozf|-?&a0h?tMr)FRxB(2=39OK6yczGhZT*>%_sqSni< zjS#u-wS&OVqYMbL7D3MA(Yg{^TSDuYO4fQIo=&o2euRIHSN0 zVCjwdm4%=c>3k|uQ7clR)>q2r6Y+YYP|KBYj@AZr1&?{d zLeR?e7L}>4m8sToWzzM{uC=E`P#xz!@vC9!fWg0t#&{n3gsP9dQQX!tt)L5cWsTAVnRG}Wn zAH?FqG7Um)pd|`prvPG2XdxgqK|SsvG~*$jsDVq>)c$R3kGep5DCfZ)78<+Vl3^ij zUB>Rfuuy0=!$RBN3=(HpC{atMN{IvxE_Rg6aLP90U^tFTiBi3s&gM8QB{hBL9S+>h zdS|^k?Th(6j-?LAgU0TmS)cd0jR%e02Z*#sW3Ag=HR!SXL#nB8-8>#N_F&#e!c+=} zsG>H^xi)=|kt`!sJ4t9qN_RU6ZL8x!p|cNy1sJPx3J@VXAYrohboP}6;gguaXJ@hu4*y0V1R5>Blm;f$k{e2<6)jY>(rlwyZxR=bt5 zIviEaxgmSE%dTrr!+=C73NT0U1oExMC&tMlBp1>@MkH}oBC3l3{)Fvmr-!TdJg z8C<1g9PAjmJ&0h54r-12x+*1yqm=BlfTu<&VK;hKG+>P7ie)lfK_4rW*z3AfE+^O^ zgtND*<=Lu~?6~hTo2fExBhCN!KR3-}oVv>qw{dYo#-({rI~skr zf6e4*2^~cd|4>3dFq+A6jhacmpywNu(Qk9wt>|LPQlXS%QcwZes+CxiF_7bE+%^Dk zMX5wON2(|t(Q&upcO0!=?CMf7j-yBUKFy4$Wj@C9%ehxgb20Qdr0EZH!g1s6wbe|H z>7$v9o2Go0Xn%c)m^15a(BV z#<`mJyTmi@9y(D%r&y)u$Bxo-f~)kDYSnTsQ?0}ksk}-jKAB>QRpR+nCeN6BJzGf* zblBdwLo9@a!2BjjovhM%QpeJ{!d-mlen_*Th61$OR-|IGUM^KQ>ZPumEMzLl92JRkb?d1_xyI7M zL}p-(0oB}V=I@{){Y)#;Pdlziego94NbB$4q9SQ!vlZ#Qri%0sQCg8y2HlE;k}~cQ zh?aF6@;q+QKo#ki5;|W(zmU+cCG@LKr5|_Z|6H1I9+_T#U1&XMeP{z{L!PUQwqb}2 zUXS!iSC{GlreZZ!r12~AyhTMCzlsI!R-_9h^m|*8E^;c;1zts}>iQ`*@L)9?{=hn$ zmz42~#gp}VF<&gCQ^oQ?GkeDeEChO_@jBz_cUqBt+i^wmk661EX@xKMtw`fFyS5@- z+*pyuf1M~Q()hIqZABWt4)+x6c#3sA#X5e2fhy9a61qY{mq_Sx30?NTiUb?|(vO$E zzj=_$kXM6Nk;YSt##579R-~ysZ&i_cEDzj@bhU)8vlVHfQ<1K6D^j+S$a2CMT3tPl zNtdl+!`2g}c(ItT)eEIkt&|$*khSsiECj7c+fk9O)rxdY#}%nnkF>&FEh^G(q-QJA z^-UFNFQT*}?M>)bB$V9o`$79d2S5i7RFQ6!&@B?WK|(i6=%!^T9G!k@F(L~Y)lNgB z+AZCLVtVIgr6vBqUXjkE_|-nAaZm~Jt9Ij2{aRL}UpVi3j^W!SbeFA2e{d?&ZEi&> z=5wV~k{*eJ=2&Y|%2Zj$Q!TNlR1m2g523(#$YQ%!&N zXO{CnB=m%Yo^-@dzg*Nk-+jA47WG&*jo^$8|7APL z`|>_vHIml`hfEf#&sgk7LrA?%e2yF+_GdqNl~ z6EILF>;qw(Ou#squs^>^5*`R01RV?=@|jemhRyu^H!0s|{X4Dr-P~CT$0Ym}34cw( z>qvM532!2yk0m@@!b4D`!e5Z^7bW~<35VLL2mVI$TV(7oGOJDcw+T&;5?)S1pGdgN zR&EwkHT;=_1~SZ@Zuqm6yHLzD)Oz!BI-hFzg4>|A`Er|?aj?HHb;z4LF@`xl;L}|4+BM>-XhMwy}M4Pl#yw#xElNhWl*_X(qwlX^G=+ZNMSJkQn(ODgZI+9dr8CIV znKnym_c`UVnuJ%C@Rw|s5)B}8PSWJFp|F(IS}rYL&bKH;J-MUh%Wap7CtT-|iC@@E z{L;%rP{ONAIAAl8Z4{%T*?Fx``Zg1NGN%R8>Sgcvk-m}bl!RXy`5l?~z0Jf$nhEXG z!%+!`B^?b!e6DRz7Eb*N)_4RnL;8}%%_?BmecbTGxOs~yIJV)Tq5JoNmdIJ z`P1Fsn(BI14{YeTwZfM$0bhbai9f-jTwB6lm+)Gkw8l`rNzGGZLM zw_Kx;n|hv3Wc_u&sPN3oP0h18-GkL2zO1mO%6+-LFSk=8$dqT0yg{bkw3&K~&=@4) zq=Yw@aKh>=ZE6-yrUv6>l|MAk|KeGI6IXD`V4`{=tmZOtrLL}tD{Gk$ei2&LiJOS) zpm`SH#Gs7}6ArV)@65Fu4%JzJ;jJY+0?j8c;T(4#N%%wV{%vLfhPUBztHxP?=~5z} zDl%cKSYrikrp~1DqPl<+nFN!9nKhG34m5%?@oRus6Iw_H)*`_zuyDc!^)ynVYFnsn zFmYYgymc4-!JP#-5!-v@_M{0*bhpTf!7&H3Ej#Y&;v(icloi@+hzf37# zk24K25ie$QI){PTL8Zj3op(5BhaGn~aK5&PnvcIhXG4o2^=Uo^(Ri7h4Eht)Xq4>*h&-6U)4ZRGN2H+0?A?JCBAL$*N1Z zMhTZCT+&H^;jxXA0GSZnsFEZ20Igv=P``I zNfVxmlSUhv*8y`fAp$k=6vrtu@yA@B3Z2GtE#%XoGoUlMPZFLDodW@2;!h#1`R77E z_Z7N-Y|8H~@sD5mJu3e3D?BQ_65dzEW+w^Hl<=Ms-cG^?N_d)tcWp-_(M;NLmx;du z*{?yaD93_7cULoeUfPd>i;TT6x8yZv%h-K#^V-+O-Qjc-I2!Itve>wD7i-@LUPc1D?D0 zO5;(S>5LB_6I}g&IXh;cR&w*OLA&t0g1ZfPw_A93c<^?V@b(hk0eEUMCYrFN^#F1}=4^GP(t@ufB;*(-}j0ncwt zCKh>_*h9j*NqBdg38d5imonx@E8ZGgrO~Q)jzMl!ZdyHyg}&@*Hw&J$|AQ<%WwY?K zmxX<_RZfTZlJMSS!){8|WbG!@5_b2$X%aY78M>VjY`@Uyb;l522I4Cg;y*oz2S|87 z3GcrIUh77|n5T>_`u{SH4R50S&-J>!_JTIv6N0ya_l||9{iS2D9wOm`Bz*8HUMuM| zsrh`iVLXqTmRw@E51tb6F(5wy9Kf5EfJtf;t?9)1m4HdsD01hmgb$VQx2+QJ9Y+cH zrl$m?Q`J&7kyCv$!{(HA*7T&L4RPM7f668@Qle<9)XCHz|nA1>jGCH#HWI*yd^k0gA8giq

    <1n|HJ?sZaPn5z^FFixozO2Iivfll1Y<+H^su6>cKlk!beH?Xy7p$LA&>6C$Gaijak;} zh_CgVGzW0K7TjC~XWVtiOZZp`9|yR&qhK@@p)YuMtw=-8mA&< z)luBp=i3wvw`rfWGnt!jGq($&qa>d!;S(i%5^`(6CL4Uf2}kirqzVmxxz523cINgW zbNkxNVIx|pKTX0vmhh>RTq{K~qq<&`BAHBjie!U-m~wN9x$$W#qx)Q1MY2&WRAp;d zJ8(VclfFqd4z=0%mY0pQBz%U1&m4S&Y| z`w!U!ldb^ol@{++iq{DLWfHzb!j~F$wro0Ft)|IJ$oLLuZ>TS>E;ML%!=xL?$cN-?JO8l<+myZn)O58?JEehIERfeUr&jJXh8=!5Pj`E~OHMcs7-( zRujo;IZ+(QSv^U0ebw>RZg>E@;cB%TuIkusP{q`>8`OEIdxjckb(5=bk}>if z{UQ^L1P_>Lv;G7S?MI3Jvr(PF^i(11MC@e~5L37?DrPF6db zVwxQAz}zF@KS=oQC198i)A+XpOuE?M?#($Hk{e$6LF#qeUL03Xo4f|Fu&WI`Omkb5 z_e=O*3EyX%#HMyHtv#m$uaz%4;W|#*Q%*?S3L zH50jHxn9rHYv$6dTP_wd@p6uhHLA>XtJHIa9A};n;BA|X&F=P^ljoAu)7oo3)p4)s zAL4a)plh|K>0~vbseS5FdyZc75pHR$bhLEx?p%M5a1TQ5W9S_x?*;7*?E_(;PTtSg zEBXh`^l+c>%MyN9!p}?iO$q<2-S*p>S(6Xq>j#snHkpSIIz8J<5`IC#FRnZnGa{A3 zcdV_@EH(BTF4|4Z?JT}aB8S_=77#jp*{c$MMZ*7d8bIxp@=c>FzRsd)#Z#i#acAMR z#zz6>Xba{T56l}9eoex!J79FancqBf+-^Rm_#D@r^5SHYXI#}Vo^e&ni+3damW1D4 z(#Z79uxE+%Wm88jp1(;s2QXSwRSJHpU`&(pfrQ_a@cV9);`T!=nBo%-t#yd@fAJKm z$ro8pU96mLV?#`6R8Qh&^rcgyz=JE@TQ>f}S&ckICFkUHYtH_dB-OYjBuM*5q zNM+MV^MI}59{`{YGXN*wLxRiGDn^!jh$ob&Hd3Z>x{pRDGK6v-+$mI(X(UH(Pnxhq zH&UDYSEf)!R%8-`wv_ytDOBZJC7)%|MTz+qnNlH(@x-bawgAhOtC?giTc~Uo2<$xn zz&#Jzcfa_~`+j4ez4qN<8J+z%`5(%NRX(@LRFj`2(^^BZoeWbZaE<*m`9&DSb@ODZ z$*=Gp@@C#Wi_n!Xl`*AZM#ff`$d@VWRVDI8olF%8H%_Lia2iyx&X#d_0SCvE`T97K{rFUK(|7e|3hx?>YDN; z`%TR!IQvYdiiA3wOoh#DCQ{j2HzmY(Q46L-B(kM~iwv5#V@fy4tU+=rA1XVr%AG1T zMcJlVB+jq5OumasJvL?El z3dZX^&J${M!6~dMMXtBt8O`LB5zv;CZ9Kvkbk=O5bi>v#U)PyeK- ztVGt6NI_*`Gl{Gvk&Hw(k_fy={1v1W$nxtr@IGxWPOQju(GaFu!?l+%TAMHG;YeSHo4urbfS^_p;OE z7$2LmzfJA{FS*Sn5|_wuTM$kvEoDUuVrip0h59X^9%i9_+k={xNKzsxBhrpzput3U z{bHR*bqenX!26+vcZ3HoFA-{WZe?p_`78_XNv8=NPeLcygiiDl8X=LQM7CJ=ReSI{ zrPImC8JYp8xl__-YdUcaozlvzTu7%hQahz>I_{L3k2emi!FP2#d(;8{Y~3lB z^W1hw6*{CR0x=T48oCC$7P<~nFz7B*Zh+8Trl7k_xtSl*b-9zYr`*Cb^cd5Pq03BB zUFHtxPKY6lDSv?OhVFs>2;B?a2i*_-33>n`n^Uk5rT}uvpCNR?DQNCf9_719!bQ;E zpvBPNp~s-d{qu6t{+pElCh6-Ti@t0B}ne+cR;roHVOKs>zeLqMgd^gF4IYkA3 zOx}OfkYd&!Lx=oLi5w)6{UoxRM0S?Q_7a&Zk-a1`T_TeuGF~F1B~q2hEQ$PBJMt4H za;!v-lE@DvvOpr=?zFZ)1!JFv>DrM$L+JFBqa;$3NS)0Q7!bDoPk+~)rigtp<)1di zSG^R`9>z$7V|cX1XF;QOLH%8Kn&La8s1;iC_@0;IB#BIr$V6JSuPsTF8NfMC`|$l= z=bwDm7dixt_R=+VIS266As*mq5}6{AsTQy;mi_^MmKQn&{6zq-Y5}WR<4Dm=iOi5l z4}f(~9~Vy(f6bWFXN&I?Z3MJYiCXVXzjt9!}~+K^zogd{TgV$Zqcsg zq1{d*^CYsZ6$TfLPi`F+reQ+dui#3`m zfC`iwm(Jvp*>u7EznKW;#`SGR+d=5((PR)#u?V$Aba-^2MD~}+0r1EU1Q(Ki44kF9 zWLUN@2JcsWquPPzXW$&*^;&pyJqCV5A_q(45Ey8-F|)Rd$08Rh7|kp}En@#jsWBs3 zy*=>P+QIH;?apAIZ?R(#TGk#WkwYc&Em*6Q#?tJE&>((VT?<8j*O>B_il>>i4N8twbL#k?%<4ySiK3aBXsQRLFqHGy*nr&5Bun z_R`6$?%!sA)(#v$kG~0wLoFOkOUvW$OGG5{JmZ%Sw*%c@9;X5QbPN3quRKnW$Z--me#t;y z-*(Cy$ZOs3nPTYst9Ib|IeRYf)E3stbRMD8_?{w>lO%F7oOPEkweA88h?csD`@5w> z=x5-CAp5OF_&Y+U13O(Jr%L2BbH=(=IGz4rcq=(DJ*fMd4o7?$A2p`yf9U~}Q?cw# ziQYh{yc_`!Z-Q=i?x)_$H5R?P38rGvHxEHhg*7G)tKN);40C?x4H4=6P%}LA3yJ(3 zpTLY|}LJPV6D+!*fzLcNhU@&jd_Nh~0>S8sRf5vx~atKmW zQ5I;*_dv>qdm)?~Bey5K9|DaIG%0;4ju&RTKzQf*hwQ%7{P<2g>^=X09pZ=VzVrNj z^-KB{TpV3zLyIBY93Ae4Zer<*lFK!%4EGBEo3dj zW{KPe%WV@}bMrkOwcmD2_c7R`-Zw2_E$PQ0MWpN?oEEazc5v}`eFhh&#k8P*zlirp zwVlDmY07r{eJ!%SgNqk+Hn`YSm!_?yh%Om4=k2t0;mdmDK}E&p#T`+ch81P_N1Wez zJ1y?K@6Ml&Tqcn#t@D;0_xGmkFLj-_l|;J44w&UQ=ez3W3#A%Iy_OiHP8Di}YK^n4 zvjfeao~CA^D^%=L6S+c#>hg|-N{gmJsMHu#=k2;9tt{an^?PxrjpPORp~H$-8!v7E zMpdC2gi$vQqiz}o-Lx^hNW(X6tZ!8Kb?(PO<00zqw29Cp2vcj?6bLhG+B9f7Gz02^ zW$Sm0+TcBHTzBbri~7B<4US*Gi`IXg zmB<4U`Ljg+Dv`fSL{nD66!7opC!5-s4DnWep3YB0O~g_ z)I$}jaiQEMky|8kD^OLPx8`>ulT0MFqflQ)mK$|q_~VPrbSmZ&sTAwbP+QFc{ej~L zK-<-oZ8!-RtPlLO?#JI%+87ERYt9H zqzJ7KYpGvpCll0OuOLn(6Q|isobDCGpCodhMDC{`Tpv~|v2f#BiIf}H_jm0e^s`w- zu0$lqYC`ZiitvHqaBRkri^cA)#&egn{Nw9s$z*#3k>9+Sx9u-(`E zwkm#qbPK`pNB0q)HlcbQB;&x-{$Qcrtz0(qgPxYiKP2)LT=pf#7N+?Ev&A{IH_bt; z-gy+ZCG0r59jJbRco3+n-D;gf+p+@jyhNUr$a6r|{gjLOMrSB}IqN2qDb`OF(#c{X zU(956*`^8)6CWG?Out_&vNK;X%@QWOieywbUh3fGcJkzxl*Qyltqsl7V}woxeOV$e zO5`OZ#jZ+a&k_C#1(w)yvM@zp8VTdQX$837U$q0z&+=!1^_+$GyvOo?N#vgrc@>ts zUZPgYk{g%NO=prx_FBs23vAq{9PK}@9fW=c{tJZG+MR~hY#I2bL|&K38!)gll})!h zXdyyzTFFKkN@hCM2k~YYn~+NOU+T4*zMLZ|(}!p|(2bAi>YBa+v?BME+4Pm5m7Tch zUxW=b07_iJG4ah|s@z4bH1&g>&8Pwwk^b?;$Ye-LnW?LE*PXu!gCyL|2mN7YLS@=n!>VMOSTf zTUB$JL^)UCOmPmQ=je?rF3nQ860amv97cviGgrxK<-HQR3c4CnNxcRlq3L4?UEvtV z=T}5HqASo@b>_Beo*t&Fw3lWE{PZ4vr;Ko%R7}n8Y8KQvTCA%qauBxTq?$g@epB;F z0rhcGMZegYlS=ss58at+(=pTC#c|Uy)2B1mIek}XH=oZ!7sExX68(}y_m=3CLGx%$ zhw;<*0+33PN*By@JzCTE=U$mWoZq80{b2j-U40)R__9QUjz=pRG9InyYOY5s$qAC_ zTqzr8c08+iYWUI1iCQ&YEfv+NPB%Z`nXJ>lZ6Ro5^j(q)sJyM-vAk(H`kNF_-kKa) z(~smm*nlG|8pe_J7|CK>PRF>Mj$t|dc<2P^L|#*)*)3K&Axf+zaoR0puG*f58|%nwp%&fF@KzP)TG`~LE}m-O$m>EEx}H|4dV zMAw(-2B^Pg|E|_>O^o@I zP)Tdt1b`Lx#{6-j*i6M=Z&WR}PM5yFY6qU5yH5h|9~RzIgidYPT%vJ_>Y@nOyMqP1 z#LdV4XiG3O?>FJw$G2}(JMjG6dkJ_iTX?S!Ihr61;Q0h-2G-7uRV+L#9xFiGNOUWSZf*Eu5=yodVkfF; zKM6ggn$>e@FE`fDiSS8v<&w?wf8aBbw1g`&D~Hb(;PI941UVz22G=z zfyOrDtIB@OBQ$J@MmJ+^?ptVdGuC(BcgHBBb%~C#8r@h&qpP_ZT`pBgr1GrBE+lnF z*i5z(FP3v`5MRh;OKeHa`40oFdYrMDg@8skV>lY!Xw~ROb*$0(Er=CR!*utGR=ZWq z$djH*DH`24G&&k#S8JOwf@`$68Cw#f!Kr38V{2#|Xe3mE%07L{uR|FHeS$oMtPY`9Ef!ME%Y>?VEjU#Ft=uW9#e4!XpVH8LYU$1yf0|E0=2IG) zPkm(WkrJE`p5}CzYCTyhR7wL4_Rl!fLRbjQ!$@j|R;1}2SELp0 z;ybEMknkv#!L}^7jn$WFCKjI#z=ktPlf2bPx0mR)65VczO4ld#B{~y3X?v(Zh&nZEDGwc+ zaXw&vW5HbDf!SH2J4$pX2Mn9QG$p4dfnzQ70jW`darVh+w@_TpTnd=WESSqZFuO@~ z7m4n=L|5s9$AB?Cejhx5F%j);f<@7I5~5Y)dJEuw}i1{k*!$d z6P3YhZm_6k+yOX%_i1kK;n|u_TtjnX>#f&s?<>&*Y;$v<)7HtxYCft24i-f=h<&8Fl=gDMqEg@amP&RnXNCRp0gg&Coc7q5OQ5CTD+ba`x-I z$o;p)Q~K-W{Ge&oN;JQZFDPn`xem%r}^tyzN@Qe1qV#eiXNB+ z68)}35BE2JO?dpxUlSe$qgHTxmE6afp49-Of<>A1tnPvNfkeM2(eHcBUsH1a=C284 z$IYLw#p&q=#2OY1AZ?3tlthn^=#jKIwjtA&*EV(ysk0@8_l{ON^7UUl1H6Zx+!PyK zs;TeDR}XeVPn>(W+Os*7aN>GWuwsVu+_Xh-w zyhM+q{d!rVFLC#ZGnRHLm!~w2rIk{JM75Hx#+gl~#!e{}FDJ7p7T4!1#Y(co$!r77 z0Pm>)U`=QtAUWkNdXhGnCp^Rxl~mdZ%Xgxdgo>oVFxBoG;b0m5;g>{BR zPd8&|=QfU^B@&fHGGAiQESu6@q%!4rsa{FNlbKwlTB?+C>7pLW*k3Q&vmbG;P#i!y zXQ@z}*>NxGw}5qs)Z1d=QNFL@^*88j=rJ;@D%jtl#n9uBra#OHd%k0@?HJlm`i!CV zh!*Ql7xA7pL}*f#Wj$xwXYUfK8Tbo{{@Utg=R11Yd9E3lt(8*cOfeC! zRZ>ajd>7K3?Z|3^az4o{x=JQh&ki&q+jA~SD1?Q;JddP)rPB1vj-^RU$<@gkqzTUZ z&A^`D@*Y)4{VBgeCqtNeE`~0FE``wfdl0ssD|n6et>;Q#!M)BsYGu#W&^6Gt5W^Tf z3LT;9xdFNnx(T`&x`l6OA>Rhw4xt_Q-09QlKI2H4e=c`>2kJy`k?0)~y<4L9N%TR9 z{zak}NOX}zf3GrlsYI`o=(Q5Pp&esMMTX`|&B&g6AY2@#DZ7`@89Do%L@$)+ZdT4A@tD1D>afrrp|Mfe8r-n8)E@)&r%M6Z+RLKx_upxSEXX#dk)TfIH-*V@7E zXYEH||F^~dvB%n*C3>SoZ-TWt3Gx56rQS2Y(A70_B_~reSN00zc8T69(c3=vrQS0G zzzJG7A&G3hRg1jM1=;rH|NK(# znd_06^=+m$@Ob=yMDLgApDd4CE%E)&FZG@|9O&3praTf}dHh+T4@vZ4V=f!Rv~N4* z*{rP_zJ7kyVGA*{0KB4ww}r>qze@BGi9QNv-AT2ry8r{CMHjH-cYX8K4nkl1JF^Tz zweM7*s~!XYF44b9bn((G^&T`8cIG%Bj#nlsOlTOo$G@EGnNtY0UJ~b5VQ0>;&s-Ju z35h;sRoJH;74~sYg=MqTY?{TdIW}gFX9}r$Tz6cE*K5q7uO(CUTy~(furudc2)*g$&nMT-P=_4Q*R42nSH7yf5i0C6jc&!6dlH4(I&&|= z*EMmj_ks3>_Jj6^4)Cd|ljw^QeO96`Nc8zOMatC!|2HH^p{xVfDfUm>>vbSr zsbb3~{);_kGk;DNwc$CBP(^tJ*S~~*#XU87CSyS}bu5UunHRzeTboTy*Jl^mxJw9W z4Gi(ShH$9yn7t#>H*t*pOQNr?EV0=Vo3)C><~Sa+cZqnr(PPGnl2n#MpV(NNxy2cV zIOFAPq7+Xh*uO59%_Q>4frc1nQfFOrcIFMV1#f6u@LH3{Z05~sZ@o@AFQv!Kb&;sC z6^8DHFv85<3HK4+&zEtj%;dS5jSg#cTjdo`V%zrUTXa9`C2ECKHI>W8Q^{mKo~afK zI0doY>vcAbP}{wpExOax_uhBM-S?WmY+P(JAJ(kD_qn;)W-6;x(rC*}AA!v}6VKAj z#juF$W*6H`>^jrOz_I~cY#&SX-<0kL5`AA?Y_TDYF1A{l;cs>;ji)opUDgZ6OL=@G zm2{0YLB%q2O$HhppQ+~Bnh?@7^A*z3H4M=YALI$`Li;_6X54j(X!)y5EX_3anWhuv zx7Nk>Ngo&6%nvEnSl1%n(UuEu$fvp3W~$vZ4AOjpvyY1{wp?c}He3RlwmVJT?fz!1 z*wr-)(`MF6ig0s@EibWggQlv?`XVW<3KGP}h!Ht-Rh3y-G$ywyT59>~JLG;=#JP4y zL1W-t*-=$uh!s05#8z-sm1H4POXSL&wNpZzGLNA8JS~@5n-Ee~vo>|gYu095 z$D!doM}3)vVm}L|epZruXjU4^Kv^gU3709**IZ{1q8$#m_i@|~~No+M5UtB1xByRlE z^C9g-hEAi}fv06)eP^>q0c*5{H%8&oh z%cyqnQ58IVQ@}UX;+saOo;8BJ#9|VQNGz(xiF&Sd!Ym29p0+;Q{^@L4@4a?V__@>z z3RUd25a$s(T>6T{){xjxrx5kqeXL_QQJpZ`aNQ07KO5$g@GcgB(fD=JN9=17qs9(1 z1}<~08-+*@q4nkuwUzTyu%2Me>S#(#MYD8`bdy5u}vX)4uMu>x#YEW0QmXyeE|Hx z0{EfFpG_pTk;FDO)y#am@4gO5jT58d?Z0jZfu9A(f#7(H-~^8a!zH$v#Nt+hS`>p@ znTvf3&x>l3JJWg%UZ;8*897~9sF{F<`8w5exYr(yxQ0&kT>H$ZF7$LsiDhi3nsqwW zgxjg+%7r>h2kXpa%%H6$6WMqXvmdRP5mAl}uQK^gZL%w&tDvhPdM|fc(JYJ=uT#B% zq|(}{rXI9!wQc{;x|m${`snSTVlWX)5%({*!?PSpbJSFJ{?r(%{f^LRx8Nf#n8zHe#5~Dq?NNk&SgwkIv z?%?ZplCrj|cM&@6>J}0!NUUg^4c49eonJ{dWARO4vvc}7p6)a2PbB$(Onwv|&Kv`KGFJ>@@M1@+3ek9nS56_$3o&#Xm&QFTc9u-F4rme@#%m2Bl~OfFYQ z1JCxfjUYLzN24rf+CG5Pod-JWX+S(q*Z=<$Ft1uL|57lf;~Oin(GnZecebOyL=203qB3|*(mR0ErUl@Anxv0-)}l$8 z&12I{xlPgpiA}am(iEpj8t*nq6*g+D)YAEQu7>THVMEn8W9bFV^JF<$sOJ-jYGQyU zY4%DM0(E@$Dl|!xv`L!Sag*eqqv4*-)XF6}TL)-tb2GKExtSd!isoi^H{t70l51X_ z{S^o<&HgGhY@p_5y2NHmY?{P+BsQZ>Vfvp-a@np@P+6nP`!9A$&ej128sphGg^VbV z;Cd1?nR{yaY)q2b#vCD>0V^O=`?aR4JZtsVu$OR{C2bw_+6{-QOER{z#CE_5IZt97 zcN=?NV$X5+f^kX4=5x7Iqf0VXL|?DxnV^-d(iUW~{)>ewr_yKhrF5RjH<^Lk0yQEO z!9!OLF!>OI(sV$T9m6T#~UJQEjH(3=(sa zWQ7g3>eWOsUP|OMoFtiJlL!18@nR`asAbBPY9gJQv-9q|>=NH$=bh&-qZ1@&AFd48 z<#TgP&c;44@}@Qd@}Vu(>?5Efo$F@DZv=RyFV+*qR5?|vA_M)Yy0cFs&XuJzNM{d~ zrQJL3SDJ^qR1%iPF**AensLZ+Ovd)^3AavdSPLP~^q5Y=j zlLn!$V{+eR;+UL$DTR%iKl^e;_!EikFR=>;O<|dhK`>hl7Znv1Be>=|CTGKymI}+w zJm-DSF?pcG4zUW$HynlK09Ro_t`eCnXOY&iniw}pW|&lpoYgp%w4BK%>c#Xx(*S3y zDc}m$-3ZpfDp&_~ELd7#t_`I^Z-&nhW-vc#(k3T3Ft}aAJ9_}iu7z0>DkZv6q?WIm=uYfsuFUv#J(f3lO*;- ziJd92LnU@xhsx0G7eV$C$hDh$nb2`eep_PSlGtI`Uft@LY*=Vk(0$g>@;i@d2b&gv z^-9iu6HISeY;P+zvF}RkaN{n);m3Yz?h-h&9L~(>Gaf+BylISb&RZNPt{sF( zzlZSOApF=O{Djc4OMW1+?@3G-Xt;jJK0q9kO-;)_86c|vpS1(f$HF-%{d08U7R5Vf z6_15SN$d!T9qE|X3Zlr?ZoajI1zn|1`I@Mv!XF@}9dJJG%?Sc3WWj|!?j0+!V|}|Z0{iTWt>)Sb0=q(|4{`&}ac?%4dOP6!oZB354A&UW z(JI=ydxpeLli2BobB;r^xd?&a&V%Yxf&<321JKXCA^^9r07rP-J4a$?N$hOHz5W_L zGgi}FVFqp!2dxjEQzjb~<*#M|LQ35}e2$LjXa`E1-w!%R%^H2?Ivsu{vGZ&n{tKrM z|Eb%DbLdpPT;uTeRI;Q8LKjk;7r`KQzE)w6S@sdF6$To$o}<>0LRbjQ8T8>l*FOB* z2YI4~M%#W+zjCM>T`9G4I?UOYuc{c*hySwC=`d$UqUf*Z>_qswCeHPI2wP~*uF!7K z?!G?SKVYa^BgB3!u?r;jD~bI^V&}IhZvS&SEL*3;;8mm(DE<=>i&hosRGzo0NM}0l zdll(-61&(|q)VKN^jo(gWvi)l1+|xh4@#`Cs@Ka5E!4B|L@mLdmempiI|D7dn{%#( zpcRQVF|muZBK^MOiqx<*0^c$oyu12ND4g?K(z6xmQYzBpBzrM*33Mrhkuv9U=n7ub zN_A!9nwUA57IQEy=3E0^3ta~(bj*r5H$XQ+H$gW;x9|jcB8~@mDrsfwgGeQA!C0ev#N~gG%ZKhzEWbB zOYDl3x77s#&dzK)$~W+Br%C^rB-M!5q}8BtlD<}AS4->~J&jydJx#XtWv9uhxIAH# zd(unp28k_{*!6C5IvQ@1Yr1SRxvm1e06r33a5U!y2xG?NPz@R~euJd3RZP-quQ*BHA+g&ecKb3vS$@t(B=>Kd+{a#WcT4OpiTz=jpDf?| zg|4n%%m~e0ubL80?(UP=A0>9LVJvc^;^T6%|Jx23+Z!OspiNp01t;kTCH5zYJwQ&4 z3hBsBtIJN4`wGcvGp{*St=~!RFA{rLVt;m%b1I2RuIaMVhVr;izN1_ z#Qy4Mtfr$9YZ=?(w$r4ClQbH-Nm{jZC+Wu|wpe0+Um`+Dv$df~w&AkV`Xo~X_RTx&73Qb#Z!h(|qjC>-X(sl%N zBy<#XG;|E~Bj{M@I4DeVHNxWw>x3vQT_-}SNS_3q44ne~7*d7hG$;n04xIt1vT_!5 zHoqT5I1EDB>77ofoSH$XJ^l!;XF{`V{2Z=(ow(k4{8r!NcSa%N{oWmHoa)v3O(l)@ zheM4c`VEQwi?NKCCHB(F(mhkUdsdO|SJAib*FxZsIqukTEb|FPwN zC0?$v8%ViOO;*zb4S4qM0|*L1ZI9mlP?=s;mFbm-c%m#rYf-JE_dxB_|M?d(wwH~8 zaYOco?C*!{%k_TH{?GvnHd(Oof{h-uuVTPFYA>}zr-=HScisE##zBtmH+7KXH7w!v zYPn3clu0q6yjo&@c`3)PS*dyw)v%ag+jDr3NzOH68@uni&%OsNtI>_#BQ)o4JrU>z zbvweR!f1tUhzg|&oGWZ9cvj$ssIaQQSz&Vpp;rZ31x>$$fN1yG%e%eDJJ-#l8@(#j z2$*?SzvT)PzjXx62-OD?d!NF6M`CZA(T$HAM>mS4Tr!!e)Hu|R9sM$#3K1`I2x2^+ zK?l#&lEq|opou)anwTp@KO>#@REXa7mA~)u5#FVtFifJc@E=>~H((o_(60FWjrY%n z9)lT|6aF1q453Mx^fmL~=)I6oukGl@hkZsjdN0yq{b&*IP+0AZZuDMizp448fV5x? zUcDc>U`vVpdzp-G^j-u0YoY5v*uAO5K9TOipc!<%H;@u$h7lDNBe>>zMtU(d3|D`` zvp4NK%H6x1YuBLbUQW7Ka16Tc6^%jH-Q^l|rE;l|NM#ai174`Hk4mB*FR@Do=iH@A zrFx>C$)^UIcHMiwg|LuhAD}s09>MA!;*%!dl?8@-S5 z7&+-h&UBi5?-S6I5Th5`MD{)fJqbgv}cYyOoCtPQQ>p#HQKRlTo)>~-FSNxg3n8pWggi_#6l zSE21~?TYo1Do-awaP6=lapzq+o=Q+ADcZII5xhpyd=YE0E zjBa#?q&pzp!T$rJ8*>rdxvN`%0gr_->5fQu)Hs=)A&h2ct?_dY^619gH2|mW4zf4* zD<1d0BHe39_t5_fqZ@OnMRV7+2r)*i1b$7rX^Dn8?CU!+^f`@g%-sxdaSLv^$G&x> zdoAf+`#(IoF*gUeyaiYAIJbdxuP5E>8_xY_M>pn<1YpSmEE76acN6K}NV+%ve`a)J z?ijK$R{5)0fP8)U+)3Q4hSJoB&z)wUy{qrj&c~%YVf*l;(}!>7_Tkk8Ct8&`SBRCI zIAu$meas|FltZ23&C1SfB|p#%g}HMq1p4r~%-ibTT>J3hzK+{>IY1xoR}Kdn-IzO{ z^lTrVY8>5|yE{?e1I8YN+T$g;#-N$IH?$9g5i@r`Umx8(y3w7H?!0uTr8_6x*$(^J zfmSYe`l*NM-XU!^O{iV=|2BR;6^>w|4MF`Hg8DTC^~=~_M-tKt8hcA^vM_WCbQ%m`<^nqg>-LaE7I0ZMJl=#DV<<=Bh3gQn>8?um zROucg-6N&D)BV=x-a*=Tf=f&IE<#7Wtw?uCy31yhE#2B*du-j}s@3&>u6E9)9Opi2 z!D|6H;73b$UAjjpc=aiBz^%7ruFrLc;O9O`ifY#=yPon=953BtrF)!VmnNYj`O2X}qW1J8`)~qxY0; zDKfPxC*sjIMD@hYbCw9stjfU_~n##94s={avhK&%NZ1l-0XxUDwHb06Y~W|dY^ zTf=#qX)`u&(7mVgvW?!;%vyL)ySGQvUN4)kR?~$F)0c}mW|^iq`L9@E4s$)7ttQi% zI`dB1wL)ix@4YXn2`}BeIyB0;Zg!u}Q@t4p zGy3sageqMsQ7#QLQniP4?@sCNBHi=VecHWGllzoIm&-Zk-B;^nCWqJRwRoAOk?|_C z%4(HrwvegTwU%EA(Q|guYa02uhLD8j^$@yJG>gygrc$))gZ8bZn*Z}z+^6$)B4uTS z<38=)vyc09-mY4#do6Mhw&OmXrz*F8Q}amy^>Lqe@4Zair}OrQp9erXV$prJbnh$O zzZo?5>AXWo=^Nxo#YM%49J=n)dEe$yUB(kk|SNEOD`f#1w|1l5)eUDihvZw z5F$;wpi~PW|IfMazS%dslVM)i1^@oO8xD8oy*KZkd+zDCoj`Si%3K41nM*sZo)qeo z(|8V2XbN>`IE6apOfI7nr<~<_j#JL&^ErSD9eQ%gdBFLAQc`uM3h_n2cY%w6OMpv( z%Y5P4`%Ix8DUGKqmmDXJhfCwh(s-0Ko+XWorSY2qy?`k{0JAH=T(Q2A(sk1glg2}& z@lX`-hnPa0at%2B%;KgR$W5VsO&Y%{jYojnhn_;6ax)m}AcRuy7D_h{^L1%lB8~E2 zkV2h8*f8Y|iy&^ACE>Bsc(gPgV=`GEUJ7*zqC7=C4yE3MW$JxH8jqL86aE`gs8g1M z*`pT26=m|BB#qya#uHugeP}7vDNlnO2?ImEXUpU}O&U*;##2A!6zY_}fgHm#2Dw+t zlsi)zzb%bt7|MOPDby+d0>OV<1m7xC?_6m-TN=;#|4j;Y>S_%QQ&(5|Y7+ow*p5$~ z!1pS4eCm4c^X1IX1=4ttwd3D)?fChg9nTgM?WJtGr8&_W&+AH5T|JmgHs=btwnQ<* zP-wQ+(d<)+k30u)>ZaK6@2CyGFt81;H-$R2iTbP!zqm4mI&}+fVXvo7q*RVf@Odj> zYhW8-TVOk%jUJUky;K^%Cykd#1WdTOKJRxG~OhQH`F6YipX}r_PqHp;BacjX_)#| zO4lj8MjEe{#-CzXa9B07$nGQ+f5Y3htm^(PQ;(*`V{FaGQku{;5$^EdLw|s z(R)*Gh7|j{*NraJYq#2azoK+3@H_L_E5jxa^?PZ&ha~2m(s;)N32iB%iEB$}D>u7& zKR52H%x!ORY@{rrrw@Q2^wp>g=oEskXdJ zV-3}Rcmc-xKd3SE-SqSL&JCSP1mW$;tJy8*WzBBhi>}&|lesd9M5?7ZlP>8T*w(h@ zd|Q%@KH3tQQmN3EEwyCbxuFBybLS6@RdRFcGurY8KCtBG)EA(*Dr}~bnXD4Y&8aT| zFGG7ik4$b(RkH$vnP*j{D03-8dEgkP`ja$rreotn()gfBZa!L>+{~BQ+Bwfw7ny8< z<7)G1=7tvAm5JKfMWrR5FO*U$kEL8FtK%f}?SIW5FCFLda% z2pEQt_Z1S_Y}|agX;5jJMgkWA%0_(mlAF`i{nyrV&!60!MhIZ8dCASkq|u%p(CD5X z&{#e_fHTt)$wZdp0$MpW*t(Gr0ZIVR+?KCY8W9jJujloY3 z&<^u_xeCT2m*U@&cUpnxAcH10_4I&8_=;6M&)0jOiOrWJ^bzIZH>B}-X?#Z-Uy%@BpO(gd)#(W+ z2dker4PSoR-e3-qrhSRhO>90Vjn7Eqv#y``VeNb|?Lcrk$l`_rZhhFlO5+RC_#(J{ z=!wl~U0~R4F`P;1CN}>rjW0{%-|*>HzJ-PHgVoC#*PSn>%>zLVM6`P~5OKqR*QN1Q zX?zV5;#w*a)%QSfZ;jjop&UDm+ESrT-t)ZBX@`K+p%%Hr%GCR(G`=Z~|8S}I;qH7f zP38M2iy?81CEwf9_-|=^%O&4v+I>KCL#Hv*Y1)YvxsyEdg&L&sKhpTF2`Ef(Gpd_D zh@CH{F&s3Fp&-L}XM2060Dy{$svZv*Fjc&wKfp(7F=(n46CYZD8^- zp>@1`OdE^NO7T{Xu1sRN)9kp%()~DdLs{36<5f!Ac3R1(40fkAEnVv(eJ74Htwrf<`{i0)Ip0mQ_R0>naX52!U zIvOdhFm>=~M+AUU9WkKR-nF4mNN5WQHA(1`652ed1l$eMfRO+#)oER_SpQ83`l|nz zg-Q7hHT*xEy6gCY%OxFzJBF1f!H$ip`X1ntXY=OrzNxl$+~SNv<=@bl+Xoy`;JN7h2ngiRGGTVr`j@^e2bo+m1D%P zrG>3r6B$m|YKiL+d!=}yRBPr>hejKUQEy=M?&20%?zFuhK*f7q&ZjP6VnNp$D-jd1MW!(ea^QO-o ztJGb`*RZTycT#wPqO*8?MwuwBMrD<~vx*GM!}d*&P@V^@fDqSEJ_;-c{tRgS+IY$i^~3eEo4O0- zN2TsMF4t}?EaMqfTsHwX12s~29XQC|`?Z5iXAE#n>(yo5p&iF0b=UC|@V^@PsbbhA zA>Mq-xVilu^k|3n=mpve0IGSZyN;!N*Vb{*pStU~#a>e{hk1#i&q%0fy_J&dt?cZ1 zE1dL~%BR>RAlqVg*=I^(p_nK&r&5Jdyrob`7W1{{Gj#mMq5vu#I+C%gGS)7E8LQrv zEFJo0$Uy2Y)Pkp?{P7A^EAPW69e;FFcOCF!2M&VqTzIAfzU)}e_XOn%0DkOv40s%P z0(jCF4g^ivWhC?k33Vtpd|5)fN$6k+?IodB3GE-yN9lM5RGtM*)i2LcnjBr|vl42P zPK}tv_iw6u%U1Vxxw<_i^hF8n z;Z?^zHC}ZiJ_f9A`Wg)l(?9A~H+{`=b^AzYZwYMO#pTjvZ)4 zTb3)DCZQ=3nmXLBG1}y4`VLgnY^$48u5N~erc0>P--GYH$**Pg%qnt#c7jh? zPoK>9sC&<^tf%i{uX)OPri6N}vYzcK>uyh37gMFyWE=C&SoOiqIf+bLb0Lu~GANvg zx3t9*nPNPxnh={&%?p^`&UHm$DQND7vewlJp;@X@Vbc0@G}`4}SXto(Xo$5Au&(>Y z>3dT`236K`hR0c^?`v;=#Z}hR_XC~%fdjaXcQyS$;2_{&zN4_GPX(p{9l&&;6PN*X zy$_{bdGujup@fcC1^!hD^-Jhz2^}J#Z%L?6LQ8_mMGu(ug1O4YY)V&$&zI0#3C+V% zUbXFhYyGYs47D4!1GWb%oTBN27DN1bH`g5+l+XeR4Gd>&M`b>T=gN#sm)5vb4|0f0 z8M&{5+z}SJuTi?$+QkxDB%z^|W^2pm=8fF?qIQbD9_0L#I~L@Qv&bD^rrhBYI#fc3 z8Ol`|=5bLlLs+A>cz&;Y^&se{-YFn>szva$GWCv>&=C^)noB)13N(7CXBEbW>Osy= zy>mhCJd517fd^ONrekovhr z?#43tPL|M#5<1C{&m9RGB?V@vWfew=#?O%7N>grA`f4)(XE^Gb{#(AQ73E%qAvgI+ zu6c(1Gzpzy4f&a_AwShK>B=Yn4hIx7bq3H0Rq}btPve*OF~dB-5?623w{- zU{O#*{t$-z+iJ*94{XT&GjVEd#4&vZ^(h--$j_?G4^Jn0GDiDJ%2xn2*na_@2A%;3 zXQn^rGt{F7Th5Wt`4T!?Lgz{7+&WoKV|z7aW4Pda_2s+{P|-4_Ni`q7gnu7qsu`vl zs|5H{F1<_x`RwM>k66OL3FWnHSD3S2aCih|e!gYf7~@y~)~iY=q+hLWAcFDi7MM^L^3sPG*L zECC=!r`|iNmOXq`!X*h^C*e;?=-qMia5|3#4-I9M%ar?|v6olw{1)G>Ui5o7okSOg zOFa+g1_>>-9?ng!hjYE>;k4!o`FKkr+nk8Ql*@UK9lBm&hDPEa8e@f|B~>3N%~%$@_qI@Vx+MDD4|Cr z^k)e@DWPX1^n!$bA)%Kgbel@oZzOb=gzlBl0|6bh&Rc2RZJ@3S@mG{?Hsn?b-6El1 z60mH~LZD2c@-MGZV0z^F>I4bn^>ENe;gog$&Nk|va-)7Np`_#K zZUsdTE8nRqNolU?)}{HK68f!#?ifaI6xoNvut2whqW2hRJ#Nu^qKw`>61rPLzpKR( z)v#JAOT5pAgEs1U8ufy0)Qjat-7lg0B=mbj^QwIA<*i0x>n4Us%2bn%`VMwOvwLw; z=WC$%x<&7eGJ1cI(1Q|s$f7rjCx>wedMhaP-T}S;SoGd4qqj^#4@>AzmL;m-P=z>F zON__E0UI@At%imf6Wm74Si9UP7J4j~(4#KRRnd*=dLxGJy1Yug$cgghdEBFa6%@UV zKyPD<-X>-Ao{-RE5_)_Xy-}1L#v#zHpy=U$%!pa^@J*}|ds;$IN$4-NSfUzMswGBU zuVrQGd^l*MwxUrQK%$vvY*TL3^AdViLeIH0uZpKj^T4-)qW5Xgid*y&W%OQ>(2ElK zt3_`VPf=J(wH$pIdQ(02H}2<3pa@d)kbaL{ zbClIQ_8C)o&U)sF0h|BoYtRJ$(Zw5^*#?fb3t;1}+CHz%)=x)4(y$l#ZVuolN)JPQk8QbxFZQU=E}vm;EJGek=*%+)J$W=64?V8Lyo z(2{7+71C{~TFY!_Tx3yL3Yr{!7}k?A!og3<(8=DOAZ@i^<>!FUxRU2wK??g$%9ueY ztCBl|a8?r=Gp+^*X=hx+brmkc+8NgZgtbP%Zs0Rj&LFIvp{Ntq&bS%)g)ipxg|n0V z@uxrJ^~b3Ga5p324J525WrQ0gysm^lA>mCVyp4p{l5o(IGG^QcW*U#GCBB`~#7N zdVi%ft1iP435O&chIVFDI6b1Kq>F^PSAkx%pm5Q@ve(p7lkF?782fE!k=`>r(XKV83CCzya)Nry=tS$E58?zd|d=^T^hVW zzOHpBUH;oz!dpssD{o3bl};>A2^iV=1=n9*S?9;=IBI*Q%K1E&?iJsy(yZEMa^2Mc6(3B3wTF zqR^7em0B4RDYO)IYZ1<#E4HQBt{{_T$z#4X*`BR+_(j(a76oiu*Cecj9)1y?bU#-E z`M3U=&YR$Etn6s-t{iW+W?2uvPz|jWy+ZYqU6b6k6W=k#T{}}ID0cyN1&TlkAX?~Z z^_gG4$@QDrj2hL+65d(DISKD1;gp0wQ>Ubq`H&E#>vJHYlCnFc%ZFJBrzM;j1C!`CA^D-cYTk(9zO+g7+4*y*Z@e5e@Lrq3E!iDa?xvUso%R852{cgtrGsM8z6^w zGXZkA#S4)0#kOQT&(1mdRDyBqR6A?9N*P@+oy+FZ*?1|PsWtny>zfvZrBr(&3Zz{X zNLye9qD1%n`YsfR4zqWiX@*$0TC3rUFKvF>#9dc^>OXgU{)k^b2p?j!y!p6YXY)&| zQa*=Dd4#X3PR^%9wRAxn_4K!N*8!Z_4l zKv#VF@MiX+OJ&&)sgPl1UYcY_mLaIbB=)q)0eLnjEM$|}Y&T~MsOO<7B$H!pTc*JN zHpx^bNoeOwgH^j#57yA%^Lx8~4%S3c25T6``W<^qcuxuM<@p`yd_Kea{B#=MJjt#* z{?qaT->VbDvc4yJ>e9$bIpx<%SL1i=E8%@4{AK9615}Dv!-AbYvV|l|AItyGLDcbl zJZRI1yt*{%(x%;4ZrTA7-cQ2&)3i@113>mrd^s7EsW?h_o(xHI-AI(%Kuj>7_WzeHtGo)^`vdoQ{_fY zm+&+R>xmg|gjmUl=8T|KyA=?2dcnw{SVJu>{g$j&hFko zsfmG@%;${&!an`pO~}{1DW5TU-Hni9U-!CkcJvxfj=AShdcg0@XRi$F472c%gcnlu zOL#uT!xH`@^A`VP<}HR7^Knt-yv4RcF`i|Qi{`crlY7$bt;uFqD5slKrD9u4OTNI4 zjkS&|@7@+96gjM0_x4n%r&)v-JirxgGJc2p8r{w61q{&7t2l2_=Rw?Q-+31$PH+Rs zwFXqYS;www9x|9HOd1+KwH!xk|L(rN-u}VvLH)5JqmI&fz;fVGUfIW(!7Aq2b1Ah+(4-8GVUMp# z_z1e`FbN;36A;5+ubhCGEw;q-MV1d|Gn)0zw#J#?$sV39t*yCuGLs|Bt~KGSTlrS$ zxfDeA>r48u*1W^+PHHuMYvvt>j~q4c zuzRL<>yl+IhV{%l?C!Pi)OONArZY5*((k%LJuJcI9U>M=9d+7OV7lj1z5=M=EC6_S zH{n_LLZ4%vQmlV0;iDvcr-W}Bw`i<;F%=&IGRjHHT@cfoVAy>G-?h=)^G9RdNT9j) z4}BgcI7Y(9+i2_rHyS(Ii^j5TZ7s|t%r&!NEa{wLw!OJf;6T$fyCkI2%!SRSYb~MZ zKHj3R6g0m&}_tb*T0#9rN}^BiPgf?@a@!?9QQSzM+IyU%vJvHKi8 zBZJ-Nab3HV*sL2WbrX}BZoP=l-vurPh{w7w1&GJGFZXrv`;5I#m+<$LNzRk-$r8Rq z!e>eNN(p~c!ruw#4s;V0c3%nRs*Qd~>AC|aN%&h5E*}??sLaOr@-&5jx9UMp`(Qg@ zdr;9BoCh^;Zr1hD&C4o(x!6h%4s;h1TH%#`2UjrYYAz6V$Lh-{d*IOgVl+uW4rMK!q&rd$QiEaeZp!ZOjd>2ai zdsREqc$D33$1LFO~3RhW|`VF@hAf6V0vaUB8lF)q|d& zdVdE!HF(N?ua>EIg@nH^;U5?QHWkHl74*X$F-&Ieji8bd9Xm;P^sRdE^ONu2;PsZp zkI=}9?^P21p@e_ritnUaN^W$=dlRav{%YKe`OMWD8fLDc1lC3X&ag3`xi;Uc81tFy zyU%;;A;VWo_-EFbU+Wt4pLoW+z!^H}H0N2i(N!!7YRfejOZbxQt@)OGs=bscq+8V4 zQDv=)`g%a!!W#fknn@7kIgc|p!=|K1SvLO9J!nayM zy3G}&n>|5F$4l8fDQS*~NU`~3D`!m>itO`Gp13uYNtN2u?d`P$Nh1kGVJT>`3@rRh z6{K6nM35#NT}6=ksLKk{uSN(`Ketqn7ErzdB=|fCECdz-L%`x%g7j+%-yz}KCHz|n z|K|S$2@=9|WlixEVhtGa*3yW#yBc^5X*GTpN!7jvMb!l960TPhBnGSu4ZQI3ZVBIO z1?fIlknZvXDV5B%W?M_i=GIc2Rk^7=TkRw>dM-(8TPmH)wYJA=P2!t*l|?}XiFKRd zdsL8qHztC#K6@^XvPf7fPmq2;LXd9emI@NFL|Kr2$@g1<+kjsIx7QM+2PFIl3EwZ_ zha~*q7&1rDSN*?ikyL5p@%#^Gx@W#d6LB_XzD}t&VKSfJ1XNm8+W!UMQ0u*!IMX9D z-Ltr*_hzj|=~z(hpr5@mY*Lv|Ncb@l+RG*U$OMVBNTjs3L|WZU_mkXsyfV|x;X}m& zyEZo`lNpX&&lfPN@j|XS%hLSTVkw(xt?8Z4Qb$~YfDF1KTVYlVEi!Ql7xizS?nAr(NU2WsBfxpUa)9tOV77bK zmfDV|KCo=}ESzd(n^`#4rhR0%XMGCTfp%8OcF+1W&%q|<*>fo!_p@OU=+odB7I|L6 z&(T#+OZYD)+x=2ywmX?+(7n)_!^J9M9&)8pbBRHCR!p=dTe7XGbUah*#G6@@sVE98 z1<{?U=UHWmXWo~2&`#A1q*-qNFr~jQS3rzwxTgK7{i>-3tzR2YIcqoj+1-yd{KBYg z_pC2yx4yWH=Xh^D+3s0;4!>VJXmqywufek2n!urMFWc?evRSyzv-Sh_2gArZ5`I}C zTaTOHG3y{|Iv7lpRg{gOpqJL3HJ$HDRqm~(+DxBO>UP^}p5O6z3BP9jj@Mnk<8Pkd zQD6*>Xt>xMZzrRjZpkK^IaL-u<7|d(DVb+e)>;nyEOn?Ag{4$G55{^`8S9n6jHMms z*BE8SQX9MuurBxMj9H5*A%jN3Z&dmnvkvDL%5BzHDPI9p$$bqt5?BJL68d^AzvJH$ zSyRGqN@O(&|EC^jK@mX>Xl{2FLE5b2s8vWQ)%!;Bl(O=QPT&$u++t;kP9G_V7WB`@31u%<%D?UPb(7 z=PmdjR9}4}K!RcQt$?k8ZS;kdUS;UDS?6(08-Kpu)5;>OS$S6?4Qp%TS)yVlK@1bZ z%Ntf{ZGG#F{Rmu2#SBXr1THTlfPAhlku_+oNxf+!M}F{HTdSprRk@q5qM{$$ihiOM z=`5rO=6o%QOt2ZYDlLj1F-(M-958;0qf?!5{{a;v>&6-i`0 ziEQ91lE{Wekwn(@6bUAXVjzdO{*;;?L7`CXeBD_n7OO}i8;wvT4|7Wu3A|BOBseLvmID~HSu21) z*H9#p%_OpgL^hU4lSCr*aF}0_JjvUiqGpw)zfc-Q64_KDn@Hs2Hbc)Ou!=Dvoj&ND zW$XJ;Z`G4waMfXd1zxgMzf9?haabaa5(&A?twSiIY9Ag#$>l1PT0B2muhfz>zewYX z&r-fqI{dSYj3be#L}FIbMpZYgUq>OSx6pQzj1CS+nI7uz`G|{5&uV34J}Hq;NMv(^ zj8QD3@EOkgkHTkI8P$V~PY3m24|~)eLYbcR6d9v~wvxz1iEOE=UEAoX*HI`{u*$fp zo1RTTPSfO7)J>17pQwA!uWouAd(Bff+e+k9R^70yVlG-?8&BP2+gg%|M2<5b(wcoN zm0FvNB<-8y>9*EHqAks^e63x~da!1m-_o-+FWz3&&31v+jsG}r{j4zI;L-V#9vcPV zw?vvN)lE+dR8TiPY06iC1fR1&4#)!qV8>eOCMl86NMw>kc9clA9%k~Xo1V|`_Fbq| znQ2!_SKTBe@@a|0jk@tT+plu+*&)ct$KG#SKVYJl9EW;N_dhO z*yklB(iNOtiBbh;2Sw&fAhVA}=F4Sd3KGdlB=6UKBk-xveU=B}tJHIdrPQHHDc42rIULGqR036dh)8;lbno>Lk&MhL^&DgGX)K}oP=Vi7 zlwnO7MD~!#=W#qgE0OjI65URs+paCq?M+rGvL`pbSeaESw6t^bMq9F(MQCj}Xq?Mj zWGP8=Db9|N1b^|ic&!OcJsL!)(q2jfzD@PJtH#`IL{_QiEDef3x9V9X^}W!cX3iug z#LT6%8Kb31X+%-+84=FZ-E(+3V6n|xHyl}drVKCpaLkBvrpG#Y^# zn)c}VDR7PZdF1TNp6hrH#x&2aG#?fDibU8{Bl0DQ?5+8z$bpsls8UNyq7YBEG_%4{ z51q@hHYpb`aPnMhdnuPswj}el)+Y7b1_B;4-OlU3tjx4eVDme2Lt#A~U{&%_J@@fD z2XOOIk^M&Hqk8nL`pEvvcn0>YCm+?L{G{*HcA`5+<)b181j|Qh-S`JRgdmDT&k8p; z)$?aQKgKonAsz>w0G{N#`Vj;WJx>GA0M7!?0nhtZQPR z(XP6ZtN(noE7?1N=OBZ+lAXAcutP6VK=1khKk3~7*pNr~tSn*Dm#|ImM!?1ZTD2F) zymwPzGoTR&@ht4p8v&qZZw!FSy-mO;eC*=iH^a|5{(Unlw~6%q*uMhUKMMt(S|pJ} zC31vBz9x~cD|5||$SjG>kw~9J=1OEiJ>HzM0Lo7z*z3Sp4cfBO7+=-x(nG)%e zh%Q@+5+qel19cbdPU1M8_j5NWp3UGl$>RCxGM=*~(j$>xZ(%Dq*?l)EJ_W4nzjLlm zZyOY7w-oqnnF9S1nJ1C?P{2&uH0>V!DIf)U_oS}9Y+ZYo>slz00f`J+uJF&V)z5D9 z<8j5R-3^N80pNL{#q*#to`*z8uL0RH993=8vq>CQ!W#L3@!!d#H@INaRR~EHNQ(b>-lOdR6sC zty=+G+DnAcd!$8gNg2IkByyBQjvhzdHEssHmsqCvcx?$V!hrXl$TdvPNCVz`s=ekJ z@Z%-&O>4lvlpIh9|AuDuHt)w5{JL{Y5-@y7iYisX8=v? zz0PNI{YKhvbNzb)1_?z71Kp3+UHoFkF5ByzUR?Npgk+H;zGTVwa+!RWN#qiVTbkI^=SVXJ(7(Hn!1VpoL8*Sb*JX{#NJNiGKvPc2Rtzy03cBNn=jR5z z6%f5KboN(Q=L=A(n$pA#ANKCJvwNYxDmv}!Ic56aA(7umn+R zpdh?N+w4R5uF|WT`Zc%I@3X&Zuc=L833cRdiP$;r5qFMzq&&yH(3We7x3nai6QwNs z;3e1=ub4rB#B)XFLY0!b<#P=`efCjQ;VF<~s7mL!M}p6B_wR`3CEBWu+0H(R`m6%^ zy_;y8eHtx39r!kI25=^is8T_Rc!{>zXL0>(;2hvw;5^`b0LslqUl~Pn5ud*cTnrEn z%)S)3%%^Dl{<+_W_xtCol4yHIBF{?XIf?vLB7awxj2y z-hVkv&t7Kx&IC1vo=;2UDT(~W>$|Z@GX9quoWDZ> zJRc*cuaUzu8^>(?gze(gJiM(vNqMG1;z{&SH zYcw>>`KXKMoHfgMz9x}ZB=YLm>#lLL+jG{ZA!>!H*zGx+a9xe&2)jL}(O&cH_L~y< zmv#RC?dI3s@Em`3B`mVpUpwnjSd@}ZGVEJO<@r=BwPez4WgAcBYuN2Mj3Rk{zqWPzna~yHb6FqG>~Vv-@Y5|2bpIm0=k~yI7mP2;XQM9lz}Hnc@|6V02e6znpyZFG z?yEto@e`y2>HdSXV}KD3@SF~=McsRT2Y61Gy=Da|y1GQybOkB8mJy`rYMvma+S`(a zLZYoX+m_|XlR|s4xsYy6G-q1c;z(GwHCgk}%sCnR#@j0|31u43YMAw%n zGnUqq=(-;wpWRLS03(xHn)q<>68;4~J!K4KayeK5W1%S?Dy3v5Yy4 zV^kHSA8|eE-m4I#tL-&UkT#U)CRUI>?h4Wdo*=cgw2^TtwXtDG5j)h@#?&r$rey%A zlxQs^IP)Zvt!0sJuqZ4A%^MMHD_dY$fn1Jf4mk z3Q`|VZeIxCCw&nhT1$|&l;}1RohZ?*CAw8m<`_dh8$<3NLzx^yO;LkZs@yu6ip(|D%|HrP!vRlFt3 zSWh;UY|Uh9jqmiSBkbvdnN%28T`=hZuByL@Xlk_8*Gm)?{WSf&irWr6Y~P1%Y}f?2 z6Tn`MoFLwZU+bSB-nWnm;?X1%#Fg&+F+se&y;v;d+TzV^t-6tCzQitI`8+e?Q>Az| z5ib@qsoVi(g7}R2U1PLeLEjPD{_F=fJ-kn7tFoKYANJ5#wC`x(829tY>EV6H^Binu zo;{b+V=HAX1;?<~P7<9=7w09K)9K;ST`Q-D=QAwZDJt(|;+U0eE1RVj<0+29X-%`? zdwa52N~)+|3tR_W4=9t|08mLE>Gd)zoyqHWR8}ekHY@(2!ipI=9uqx6J?8-{AjUP6 zj{+#Vk=qsYk*YU@aHoeycOEr8yzesY*3T^CIaOcehgZ89_yuqa@JrxU;5GnXaJAcM zqq@fqpdv#DjhY@F-6h!caHS`8d)pQCUB!3L4*rDtt_FSzT;sEWn$n2Qm1t3-mq}E{ z&5h}!ll!!j>0HBIG~63m>eFPp5`laEc%bi>_S!!v8Ci<9NVMI$F`sqan3Ctlv}Ia~ z`IZ8CshsYSQD|W$LMyu%6!M8Q`+}!hS~9gVRDJ4%D+)_N^G>R2Q+{g=%x~I{o*Pra zZ))+@0oLU{eblE)5h2sSdNf6$}W#EQO7Pb7Ea1YbZ?1vE2A7B(JxALx7s0t}mr1z4M86`@{oEc7ItOdzQ@ZLw z4z=R-@7#?*Zexp_Iu9=O4wmSF5cI1^>1WhIdCpoXl~46=#4ytxAPTjrez=tD)%1ggHmWQ={cw~- zkG1-NMH@PD^>t4_w5N)hI0MNVbQ6PT*vzBArrf$GcYC@m&G1;M)~P;oe{4}u{ctre zK1TJ!(Sh}Y{}>k?XV&l4#+K*aNPSj69FKlLTuqRLGMY=Ur(XNqTYz73U3COO-`v~y zta{>h;Mc%!0IHaK2XN;~^u)@%bG-3WRc)Lj(Gw;5U5TC{(Gw(kK|r-Jmr;ee_kx$2 z%KIo?srr^gzai0Y8mTfSnR5tzn{UM91vCFM_^qJmp?2pgX%)R?W%N#w=t&YidBTD2 z4mWIbb42xzL8~Kvn){@!ju^^PZ^cN^TS3tyP@4OuMNcK(<)!l_dagvzo4|HN>hJqDm@8ii zTG6`=4fA-va>cxllq=wHPMR7=kSGMu9R)dmon{znkRS7n`lu$<u_V;p{+0~!5^M6Z(QkFE5KI)P+(%74&XLDBm>XlY!b=#itgTI6RE zWxt7Q&>}|7zK}m{DWIW5#vC>dYf1n|CMF=kv&s(Rn)J z42zj(&!zNO>H_y#gJalgg+w2vdzVS{PiAEFiOP}D_FS90GH=S04OqFg9+7$FpL?_euZmL zZhjN+31D;JlfV`L(ZKvIfvte8`3)UAe_LQXfFZs4p8|I9x!nHDihpdhJnqSuXXVPe zgZJ2H()`ZZ=(qzWl65Ci}n@RKqWwe(i`l>|Vl<2=D z8g%i%d`33r(>SH|{3N9tX1^rS7bW^vH1~F7MMmy;t ztGa8vGCRsuM_cC;70sV)TSR1JTl9)V|0dDD)1ru%=c(3&RlQjclFFj+k3q5(B-<>K z?TVxs5`IIXuSxWEkkln^x~24_c(O9VkW?ph_-^G*Muy+xZasKH%rc&PfajhT&%G$! zq0N6u^dA!aCnIyZqB~tVESE7`VcT1|9A~yA%1`8W;2pb`7krnm+h@!#>p{^^%Kbs{ z0E^;*lrAaXk?30zeH&6LilYXnAuW_LgRegH3>p^wmEWreK|c*UL2!meu#3{rF!m9N zzALc?-{5++z61-y1(l~d#1lyudvkB}@9M$OPr^PhoNFQHiZCu{B&0YE7d? zh(QACnp-1;DOKxMJ?QxfI0Sl&EqaHP35Z|4mc;aQgq3xbii)|HN)EH2_OVT4uKaiP zVCW~{5-=2tp_&-OgR%7`wywn1vphIzjM~kmvad`P1*@p9>`pz%`N{VUko%@Z?pu^D z|7|3(4J5Xqkztbs88wn`y3oBf@&s4ktx+9c4|;yuF)MHW85TW_!CcyHDzQx@=AKMo za7f0}6;&0y-3u#*-s`E{Pa6Wd`RZn<`MZeHrA=63jS|zd34)lk?X@Sfl?qRHw|Jkn za@^d=`QM|_-&cxj!vSa5jhz1@zE^W2uXdmJ+{jo=VxMr`$k^t_jf_P-H?ov%jhA%& zOeU2jBiokNRRH-s8@*&R984G|FsU_NbN&q$1$84?P7`awjf^?>a}_sW)duNx08R(( zR~s0;3Sj=Pc&jod-qj~@Bmd}Dq^{z82G-PdoKGO<&3>GJ7vJv&eh1tG)LKpxn<%lZ zCANjcwvyPEbuy{v(bO8D4f-l|odM-{Q>wf7|H^T=8UVvN|HFB%`R}-0JO4kF%F6h` z{e0~I2>(OM`&S3naPRf62`TnstcMQ;Hv5ZHMs;a{V~F!*d+RSeDhrWM1@|SOH&;E+mPpqC0GS;;1Vz~ zs{nGvWP3InFE!`eSw@)7CON_=&NlhQQY+_zv*8sU$$=)}HMhH~ce+(J@AK5c{)RnniKgilms_2+=R`*~!ts~>(emPVgFm(Py-J7a;k*5DZ4nk=y$>EoQl zvYPCQ?NXWSYE2hYxT4wSWE(30(k!cJ&L`t~I&`9tNN^xQHd$0zzZSR-xE@e0QF}rq z{hy_b0?JFD?XTn zJB>Jt`i`(>F-hu zzbLU?C3fhzIV}CNsHumVl~qtzNu(VqdH1)k&k zX@GXSs-Cj}4fQqwP6y5eHUm^}RA2uLQ1w_%kZ$C9H9`7?`+V8+-&0~=vVydaD@c2I zg2eh?=Har2zBR$=9n96m^KWIyCtJcMCQ~`i8m@JWR{yUp3MxpyMUeJZLE0;@AZb&* z1agIjeh{X@)$tb2^#7jctRQ_EK~lwy(DYlS*N-t##n+FK?nk-zBMwHmmhqWq``x$*0-hqV1uCB15<5U*b0s!iVv8iU zuf%!-3TZ!l)31D^{O~-b$^6Flm)KV%w%-`cF;#-vbZ5U(^Hp2dYg(74J7Wh+>_CYf zWbz|6&oCl-Hdzq&R%MbgTjNfhgeW8T7RbGAk$Z>I%>i^sY^ubjnfwTGeMRoUoa$g_ z1B}j!4bPFQ`m1`-^U-d>M;jUz;HzstEm*5eyDo`!N^AzSb2D7Iio>xA1s4f(Z&ZHp zz3$b6A)3P@;DQanY(tCTMr8u_NNlFWWF zBXfi>7}PVjMrDX=-U~{-i6FS8MUcS4vR}W%=1FWm)LU5}mJ`_Hy>;?}W-y#&G5j>8 zt0@*rY(Qdqz=dYmt1gsVwOe%(&`Xaj$bnwoqE{%RcZkG>B)0fH6xq1>sta}ntD<59 zz=M8YbwNAd4KG&usta~^pD&x(!zK1LYhsUdP3&Q16N^h)D5eX|Z7uAxk4xVB`vztrpOvD#^742lH0d zYWS*4hE42(4!6Pum{&Ei3y3Ec5Kk=7aT5I31>L|*U>4sKl)b=gfT(*xAAr}tU>-1k z>`d$l64T@6V&9b5F%mmnV&9P1*%A|pog9=i2f=J1n5*huMCl67(GvT*#Eu#^dr3OZ z|If87Zq~cvMlx6PR#5bg0IjcC^o}f}cf7=omDq7su0Om*Fk=}-sKWdl}?{s1Jeut;86M)FLFeOqE@Sjtyp*GVH}$PAJz<;UaUfQ=f% z-2MUrw*{zk!U!;;B} z-WtpvSVN6YLqpM+80_B~Ujp`7a`KW>{ST=9skr&rhA}Q33ut(&8I2QwZvbR7Oqi>o z@g`K+MtKsY+E<8{)!(l+ALs{M%fJ1S?UrnN zzkL)p;$izy$w(KiY-61TuUDqj7rdz{^~*`AcP!yoCZ!(F<@3n|QybgzoXV8u48`U= zso>^Rfvq@L?ibG_O8c9XdVkkUVs(Qp@wrLDD)}D;Rsh84rsdidj{{mpmwZymJF@xj zYV)u7z!K^MtAh&4cwi063n1zj`Mf5umiu{RLVaKzo`dtuv&y~N6n<9*$8gq9B=%!^ z_=gg^(j?S>R+&(5Z^^SQTYJ2@wLM#6pthAWd|5BkoQP*Lxz;pE(L}8s^anPhLd!`5 zA?mqGIq63}Ch&dKenDfHzCml44VIKQ5HG(kS&^>sc*yI^6+C+lztR5Ge)ab!cnlCx z8A8~E`qiVlbzmFq)}N|qq8{o=s1Iy!->L1SgGMLRuc@6-A0Tkj1`fo5#FEJqcj@2I z{Ehx#Sy%nxffUstiUVoNSAYbcvp^2W0|lVgDekcq;t-`>D^60Jb;d2)8Q2*-J_CNr zd&-Xvt^J$(d7y<-$;Lf@W`01mtX}&ErDo=@m)MOq+F9yGJJ)&94g)^v44Vcvw`O&5 zSBAx1`7Ap>C0j~~Ok1(oo@lQ%kWz*INd8JNcB4z6hrYj1Y~Gx(mMB=Q-U3Csd|fL>ts`-pN# z9{yTl%arl&k=U&g`-8;pl-SJ@yFZ}MGJxhEKj8Sm&zs~B}lA1+qbei^&p3$D0lFg zAa|BU?(8!8elM|mC3atpjF}}Lvq5vCI=_6cYPPf<4E^N02n;ojQd530rOSd3N$dfM zdFPkt5O#s}cA0#F1F$$y@;&m#ZZd6^Q_6k4`QUBexSg2CKZZ82oVzLln7qGW^6@sj-;e!+ZTf{U(U3x1)0RPfC}ypOe@#5_=Y{ z8a+HcDV>hz3(0sPpJDZ1GM(&hPS_*TR{d^0c>2_r4!93~#KqGLzN`9La)iWQSaJkd zeoE)L=Hl@T3O~gX*(_^@jk!XZC9{b{3bTq;V&+6LsNETyK+S8rH4m;s88){2Wr_V& zVlSbYwC;R?3KN-ho@p6*A{4jsR3?|@NReEE0p?6Dp3=;enZ27%p*Cj_UCb54W_4A<3W-xG0CX-QRXh@Lb6}fDj)}~2+C)C5( zR_Voi{axk0ImynP)CCa=@kAjo_ias+wy{mxw%nwDOYEN#`Xl4x&X(KPAhJ`j5okme@PCQJD&2#uG+N@`-pdMbbLK9PWHF zUC=ch%1`u2TqoQmlWLsk8KnSnpHCo{sT7+!b4~k6AFkxRcs!{Ot9T~UIiAfyutK`- zMtLsa;EptEvTf8(UZb4V#Ay)cBQ#1SpIPTQ#G?@BfT0u{&uh(OuM?RBf|gC?vjvm_ zXzH_RKQqPSiM&3X&qHqnFkMK}Ad@y$*5jxm|I-OwFoaTqEtvezp+zZnz7NcLtu#o} zm#QP$%MDsnoHfMxsO_ah22!QjLmJ`7HsstE(J{)1Npd)J3st*>PqEo_8s9Prk0!G5 ztl`r_qL5FbWisfM0#T30di1XUFK^YIO#*W4<2{L#veK&<> zLV}S#;$SD&s`!Y5g!uj>h_jwJ8@N8Av!U@3opn7Qv9+CDuG{jQl$&9PfOIy^irm)r zL^C@Pr(2m}Tx?C&+ACmiu0;VKad18v=8xecI_vu!L*K_5KH}ga-lP5|%^W-gI21T+ z;;xO`zJX`Bxp5XhcH!n%ueZi76L($jcR#%QiVb2DcU}KGd%k-2nhhho#=)=h9@lGh zHX2Tp3@+g^p5mamp5h=Levi=a z;Q75qzY~}dCnC-y{5@w2aW)fYdvTh?*;t&d1Nu>er-I69ps7NAI;9B%olV8rL>yh( zq}n8tKxO3VLySTpW!OKNAU@S~pO}~os!Bt96&4Of%jVPBEJ^_BO}JJ+PUNWS8D*6~ z5#TNad^%{O&Z9Bs+eR5qR~O9*i_<8Mw`2+>qZ$UqiRz4_pj1VIHx?4dHlIq6uJ;rb zYKmh35-H3_7WXG^NPy8{L>$`S3A3qF*_>c6lq&3Jkj2hs3g*SU5a%cf4b&q=XVs-H zd=Bs6WwhyX+otbP8n@GN#EFU%v)VVWF*?3(0tW?+nl@GEa8>XsvpHs@)2h7MNaJ#Z{gD(%F$>eBG?tK_f~1=GU|&9EHeYkkJsNM?7Aib27eCRXq$x2vYoP(I1|O$(%6q? z3U=ZBleA&#Yxycmb+=B$EjIr{C1ff<2)*&5;bf zVoVdB5C8CHa`d7)VA`sJQXmH}P*;jRuFo{VYh{0oY{B5|wpqU}H)}g_wh?DrucwFs z3iv7o5J(ZY7(~-4V=4(=2w!qsw>?Gg;7w(8>LmSxj2Y^~sc4T>4nAZ1%eeP2f=0wZ zGgZKF7+lFj1L40QLA;o2fi3;uJv2&ff@-?^v{9P0ahk>XlsG%kD6>vH!vY{WAeB$% zGRiFAX`4X(u!#CjgfzGsCif)l5(D#9zpp$2;6=X5+yLrAbxbvmBmdept=A9)!hxl-YDq{Ycurz7t= z9VyT0XiIV!T7gYvO6;eK)4@tkW_Bl<+vD*Tv~xQPZqk3?b(*o$Y~A$$mfKrwGx!Rh z6$J!%@HLzcK9;iTcx3M9qdr;pT(iM{@w76TIv#HW?*RWHAvII~I*j8naldtT?!V;W ziMxKRf8PFIeCYLwyS(w)t3H0%6H7)o9t(Mm=XexwJRaL{gNBBMYXBbw)&$l9$VM#G zYy@t{Lb4GiX{9LBsDjCQnTwAEW-w@acAmCrP2|%#Fa8qD2ppoAtC{YCqBLGBM z7y}%itKxS_{BFz26Im6zi1@!G{a^g zQD3Me&OCA2#o1k)JpxMG!cWrBEg%5uVc|qdSK4+KXRmHa5}oz2b>nMim+Mh~Pg-U}$VdmF5{sQ|Hq`o0XwiS=+1}W!N;UO`H~ST8#mv zS$LiJl(?P*@R$)dK*w_-<%~_$@Ey0TY!fk*nuK7og(mt4Cy5j>x1*_mlC0k3ppDpt zM(k=EQ7kv&bK-nfoZYOsOyC&fP?8_g3y6%;M(HYseZ|>FoG)9&Frs2}ILo92laWkD zgC^ng;LzLl!;=IGELDwb9F#Pa=MiX*+fNUYNz}l|(5kLy>uu6x*Q;JQizfBhCiQAB z8KrQ5IQxmSzf}qZ3AkbmF6RkU$le+a99Q&MVT*^KBIiVI%;K5O)5JuaumG`2n($4h zYT?DD5tw+I^ie{)NmU*0H$tf{D6e5pG52Y>n|vJU&p0fta#k1b`8D_gS~Xx>HCS%d z6mbp`=V03^qA@}*vW}W~)WHDdJ>o9H1iVZgghhWOR7Mn2^`CKy$*99<#H*&K;+6fH zG8uXG2g#`+dnD#~kE&E{SKvk*P9roSqE_;VawDdTGfkWhs}zuL_27wE)PFBnp&%_l z^iNL_Kcbtw(3&^}J;i7Y@t~Js!>QHrV5%0MYGT*)ru_SWrIml^C&h(Jls_E=r`BXD8HsVnZ}%A8+EES z%4oV?ab}6r<28z52#vPOf@H|KvPR{}79c6iX+jmCm}@><-<#`flot^#JcmY|Ya4YQ zrR$^36=#k(eOA}upp9-+HLuMOe;ghT+Neut)TOpjBzbJ37Kk%noc{loMvYr=xRA*m z3xA}|22hv&Sqlq)%6Ebg69~TMmim36MsYmv&0264inG`ThljYqA*b=QF43bdNg3st zrI2fmx3h(98iUOy7o??`#K4YG9Lw0!Uit&CyB5&bjtCAH-pn;cVJX$#LU1^wf#IV2 zxe_QaT&QUj8yGIUgLmBt+%<8Rzx}hhbi;8CCNSKLAdpCK;;yk%zOv-Pt1q3n>!vRr z({#h$k3Wc_BDV9^0x$d>?^4V1F>wwp2Zq1rg`l%ve=VO z5^yAqNh%g_%`+KyXbPVM-xzaCW-E@84Qy-QpyD^(iWmNa(shH56z2$WzUJ9lopq}2 z2)+q1pF1i_E;FM8Yguyk_@`xWmAo4>;qYNK!L7MbRpIIv;cE~8Cb3zrbD^pc?}$J{ z@9NMRBXZ_pCi5}$&zPP1Lu4-lH|pJnhDEeRsk!JQNen*=^-p+ z8BNtXQpn&e^9~p-C53D4Ct)F^$KSxcz(vX%ca6|jlc=;xM=ZGSJ&g0?YnYq#hk~g* z=9`d;`5JUt&_*p~7?9pIjbZ>;+o@cWW4?;# zL4XQ*NIFo%alAI$C@3EXQNkq3vI|95Fjh^^xjkmzta)@z31i&JY%@9$knb05LZiqI znMQ3|Zqzr$IYFFn*hY~(Cyzk%L#)btnxs46!1w_L9bk6({oK$!6 zK!I=_M$)kclE@4#*q%zI;Z+je%qzn`q#a7GJf0HCdW~y|An~#SH_D+=Iuk_M?-S)l zoh;6Y;+#aIG^inUjeABnAydS#ZkU=Tj>Y>UQY8nG%6pNzI-_(HJ2o4AU3_3q&)KH*ba*gd2QEe)9?F5V%d-(3Wj&n^0O-Pn<5!sp6bwJBsLl z)VWCtFalw=IW>4Vz zl3;*lIx>W=GY=;j&1Vb;M~pi>kq+D_%*~>tZB(k**8_vRE$n zC3M_KBMhQKC1<%&)hIwD#6Ev?7oC8rVV_3VDX-cno$~{OGLM+g2%`qk@3=2>C>orax91g6Y@xixWPIM zWny<7q~#-_ulIBX1G3|&asj_0vy{?Wm5_v;b#>MS!zOZ38|`Yh?fR^?%LE(W5$6JN zE~H&-25f3V!D(oVOfVCSBm-eLm`$P`%yK8uqe)7QoOE*D4x8)H89&hQh#-rk1B%@A zP_5V1qvb%|3n>=u3F>=U)c2-zLyAkp`K~w@W8a%W4jCcSILzg4oL#*!$2!|m(jaYoF9mD#V~r< zWelPY*P|zMI-prbFVL-^=*K( zTNNS!%A%wAj#Mr>2GCRt_ZA%wDfV@*n+Qy=eaqfEiPEva@62bf4C{JA=O%G}zP32m ziu1Dx(zJ&(eQ|AR+S9C5b#CUy(#n;pB$!(ZDVC-dv+ax_k}6{x$d(LWOQli^quGVF zTI&lJodXh4U@1tRNA)*on0Otrm!#F>H0a zIKQHMe<{u_x=hu%qjH&QOM*eFY@9?xvB>s(1b@vXQl8CBFe)XB=~AxHR%=(WMPvrb zY;+f|zfIZb*891NVyJ%@daMpPS)?jS3E?hNb$&f+nd%~4t>^q^nTugP%TyPUXfW?o zaiN2>W6YWk{jP_cIKQpEOx65o!2NNVpiL zz54y|e99q>pXtUS;%Dv3q4j|Exki@`>2)SA3~k8w1m(s6;pq_J>CmRYWeY;p`!m9M_+GNSp`6 z@s`!$%vAhoYQ?xT3_exdz`J>mTLIClHR(9$tF&JMZK)}>r2+QoRu-@+wxJZnN?W33 zlxSwa?-6nSB+fG9Xz4hKe?~itVti{6FPSdHn4Y%8}@^g{FT zcsOXI4x&*9+eS?(H|hm(o)hPJ%dge&Tty+TG*4q_nuZ9zhD_i^BSx5}q1jwRn~gM0 zL-Xu4&osRx&fl$Rdc`$OfAvfg!!3l9xI@gxWB->Vdtn#ic-5^X=0Y<&G~Lo(Yi8ci zB8vj1X=pK~>2GS9UJh=Ww6E@U(bk=d)!mqIbQROIglDX2dKJ@TJzryvj^>t{A|e#e zyBIo-??fp>CjdALL*Mk7Aivo$-p1?V{6n1A#CcPkHv%%;7;eF&s`~w?ZFN-e*mU;u zSQ-;Xm_C3#l*dnyuBQ8c3Tr@~QG#?m*QyB;Ty2EQ6QqBO^Ntmy|G0wmFHewCZLPUn zJ7bsebenFaSYVfa6b$<+<>PJfR12pm)*8hey3L}Xf^<8A^tKApTY&{hZM`Q*wT`FsvCL$fCGmf0&v`iRK!%Q9*@9KgZRt z6a1eu{)aNs6q2TxG;JeBQPX<7~QrGp?NH&)R6?T8JA8GaeBXM?urZCdh-Q z3fkfbXsJ3?^kQW)ZX!(^Nz=yG`O;DDippFZ%(gmyPh3A+)K`A5o_QJ;`-)t(#4+Vv$zC?Ef&L8C7{uu6Q${s(zJ!;!4Vv&J0N&bY0z8s5YVq_z5seS zX+}i$Q1pzZ*+!bSlBTUePlK*1IItdl#2(pR&{g%}%ERs$rGxw{ee>vt>uHo#dGX2y^>Gsp7rKwq(CfR<{<$yk3cjsM>z%u2b>3dLrWTs=hzh~=dlE0UT8vj4` z&I3TMs(SbfL8PdF^pfdF9h_bSgqhu0swhDT&?n{vy%k83aJq7&3wKw z7dWrfDakPx;WcQfr%>=xPyYS3n$@Npb1Cmr#{7ze295|CVWGuxS^fOije& z|L5Qd?z&FUe2&u-#=PQi$rz#shLtykFNq+GA%dVIcnlGQF@JTgjd_cv*ws02MmnrN zMxALrzQ=L21s(bN**&hQ^T?q+B(xiD-%b+Rk#A2*=n204!K5dIzQ@Pi>(dj;)%JX~ zJ)KLovkHyvkEvK&O0mPV?$W?|=k`pt)UN%*fNGS*K6VMtBYspCj2*=bcU4)i^CO(0 zM|EiGkQ}?T4z*o)&d8=GjAbg%txc&>q|!Xn6GGobS0y^qow@dMp_a_I*O<#JmMCx6 zPTi1HjTARit2dY5XT{ab4%)|c9dY=fNB%H*;GxGJbinaP9ozMUC5M>Nr$|&7yQa3n zo}XEw!dPVvMAO(1N0>xq&DaPKbv_SHR2YkUY1ED0dp4i-_k8wXv|+IQB(yIby|;w+ z(nN*OLG_6Wna=iVsX{2eosCVjj$kHP%2ujL@{lQlO02O^OEqIC^%`A<%JBGol%c-= zFlUvaT3#=|xDpk{Zq8e^A)G{o(EdXb6~rp#_q;^awR`GJIf=tQeShnr}1=nywrUCk4JX|LoEPo3-n)j^<| zm5Vj@XDAkGHFh;4&9oVFsY~QC*8wosVai;G24*hpuvVhgV~wBUST08ptzJOu91R=; z919!=-~^04fyb$+bo=jZ&YcL10mcGdz&M~A7!ULSSm$FW@|!eA0r>scNx)=aiqGQt zl(A^vll*xNeme?prC&lbBs51tCrjvb37svWBbD8bmC%V28YiI%66yQgoU}(FqbdPC~~+(V~WnoBpzuW@n_jF~+fs z&avlNB$dq_udho&VdB>zid$zv}8&!1U5f6mbf2lPm&TSDV;5dX8W$mAX_{+!`$lFmn?G3uiEi@nuJb~(5Ytpnh4jBE#E=T z2EQ6lA`J7ZR?zde9S+&pzgqM(^x}xYvm|tegw8Z=XI?ZS!LPAcLSz47U;a<8ZGI%7 zb0l;wZ4*TG{a*`ybwO{JdX+HCU=y;7iOxnQWY==e{qC~u(D@R&(3+4JIVR+fT@#YL z1~$g2ln8!RsixANt|Tk9bSl}YJLc&Y5@bU(F(JEFvM3-wyH>`8yg*IJpQr!`N2QB7s(semt^WcCzmNr=L5@yP0zaFO+=%&NU3ipTJJ3Om z2GY))U)#Cn_r+zzBGoPqQ!cOa$nm5y4P#R#ctjTH$j%}rK{?S*7E z-JZ!%LaQTN%QPEE-?u2}K+=H1uXP|@7I+|O+MVl*b^V~t$qv8UY03U!S7= zh=6c6Ip{i!AJ`FfB_m2T68Y5_&-WsM{oTt%QCrq2EgA5eZ!- zp}PVya~CdRm%5mY)-K#c>rGuFq2Ea8YV?_^6qf3c9l$o;Y(}IzWSNEebr}~-{n=^D z#eZ)r6lu5Fq?ayy!me4CqS;E3nVz~qLf1*?dMHxG#}1$@^=7`3h45?)X7{Tv)X`LM zx2I}Il7EI&KQ|+P$i1zSv?*k52st=~U8h@;&fvJFA?aob-6)}((EDZ;F98o0y0aW8 z&jNV%b2n4bEFty(nFJ~`70t5t0{alNyqE1o=~cCu3$%$3SFt}w0FZb7+(5~|>RX?#*_2N+8BB5I$YGd9^`h1Svrq}_3Wx2YHH*Z$Lvh|z) z?FDyxDjX+PCzD{q76!VVyWNGJ4)p!8Z(q>%$Diy{Us4CjFD#}Kx>G{8OXvNGb?@!90a7>#V7;HS&m^UPyY7N4_1 z-t-k~;Om}TYKbVHq1}ZS+I5vB>NiT1nPt95LU&8(ch;CB8HY{j*mIU`r_E+^N>m+_ zfU#wLHpF24zO%J8Azo(>jbZL>?YXUVlh5+#!foxk$x?JPM<+6Lzl83U(0$ggY4m2} zI+YnN(SMeh+0 zy~ic=sDvJ~nxIh=ZBoayFtFu^#ec6_4QS%e@qA#{3$_EWe2p!F2I#^I?s{1}gyWxq zSDkBJ%n=Tr5A0Hx6lK_j;bLYHMmxVVpZUExu4$%gUXakUO#3}8p{JIS@SYN85-_}% zGavXO7oM-54=iP>*^bUE6}ZxsPTZp+5q9=)NY<*^&RQ*0Xsbl?W;2PjsK)K{PfR~Khh@<7DaY^3uXXT|=RCeiI zEl&mdUF}a(T6bKDw`xP!sleBVOa+eHOuO|j^BoMEP6ggh!`}goTi9nRopjL9X}~uY z%QWD)PTsW@ur(Nl*Ot(m68`##xt`;;<4sID8dgy@qSf4Kz;QeBU8$vq{jTS@UF|v7 z^?X}Gf3vRV-yPTUE!Xudx0gCI#ZF!Ll_F`OBSq3eg|S?tT275c$(c&3S<=F|y(|jz zK=b=B*1O7B?*wKn?J(E%tYfS}9_P42xQ}Mg7|weOJes0W(ni1#_}1c0f*ad@BO#sXcyxW(sjek|dYl|#NLp${ayf`ms&cy$TA zFX83?00BgrM#UVgN5%O}q-hk9rcp$iMy*$zXYk#ZspZjqx5{Qo?N#)>2>YEKQx0fH~NAu>woWBgZ^(V-QVAQmxJLI7Q-vO=KG3- zza-%=+d(p9o?~IU|B%^{Pq-Ac0dD|3grw=+8@&ens)SdR@JckGU1~l!5truk=4k3u zr*&c1a6f7hIZwc-`n=O3cbB%E3YhR}5?)2ZtA0YQ+@SAzfOkD;--QEZ-?f&6*O2g< zi(imZ49!gI7~Aq~S_wPEXyt!!PPOqrIjR=^0QeC22>3Vfaa&t=n@rZxWCXKljVEyXlPXwP9Y+;q@fEz8z=!VtA;I#n$+ z+ft~z!=f+`G&_+GS(Oi&!1AG6ofBlblKEwxrCSP(x}J)SoZ@fj1`gfa;0lVuLKD7w z7fxfscjLUMu;|_m_%5(J=Mfs+djQ`9_T)RlqkC`Q`@lZHzJUH_f8YS00Qq#2M&T_a zypxKWtt7mugm;i|yM%X>a8bhB1?6`9mhK;bxemrdIXW8l8xk%_xV+5n1n$ie*P$PR zzUUZUpk9u?=s531-<0rX65ia5dJ{Mg6c_bukfFZ{ie5KpjkoCac<5CnyrqOIpr^K? ziPkp=kuKV`Rxo6Ex|VMD6fo?!7*16T)td=-O1MM9H88Z3VRbVk24gCK_~#&_`4F`-C9JA-fS(RpqC!!6=<~2@#IVQ z?`&({qpgWFLLznF3*6^?@5V6bR%Z_Z+l^^4c=DxNn@F#zw=miQ&oQ6fE4<969 zmKlWikuYJ#@M{u&mC2Xa&E!k?U_KsLKl##8qiAWS)}G8#cruwwSJ)=DBUeje;^wQ_ zbcK!GJM`sO0}TS^-7j!{ZD1bAy~GRmSLs=|x|1*6x*K75Kc2IQlP^#3ENwb{ z=I;TTu1%ZnemmJh^J%jhpG(@>HhLO!YL~?~chdb2#s83JS6rR2K#Mio9n!iUpEhf4SdI(HI2rhe{(xwdL&tw>@OnHa3g zE3q$Anabzw?55k)>&r~|mx27}Hiq!AA-)s2jU~?xro|RGFrgJxN4Epg{ zDmrk+Z^SXpF$rt}d>u#udM@KL-kW;=vm|`6geOY)ED0Yg;YUWyjT@f_tpX^+gN7Gr zdUpb5{HC1KCQ|-<*WSbT@mtt)?{j2l*zoZZwzZGKPVJ+xSNkZRuBJO#jK$KvDibi& zl1x_HYn{n-XNkHN)l7SPq1nvd_)cD-D9q!vTk|TdeH0E}`)H}Vd4?4??)H15t{>{X zjo*>`7?K+1>B4(c2}Vb&$2NXfK5GZ>#*vOUoxD5W_WHk6Q$DT2}Ip{#*v%~$1 zwyVR7JOVHSNsneA_4M*DaE?6VaB+>vCX!<01`-DK_=mI!fWZSv4Vgv*X})v6H<0E? z_#``!PId;;Y~n(EM{9ql!ic66{`5b>RAtxEEFd$T{%9{eL6 zOy>q3OgeMd%3$g#ai1Mb=hqLWp3S(#VCvbNqa92=7`i=M0u`VNv^N_}7fAT068?#V zFOu+u{~Js+YP|kXRh01L+cXAeGadotav`J()?VdDodQGo;Gx zT2O-t@_c8yv)C-4(=*PZfL7@l&x3!V1L^012a=NN4y0y@YCTLNxC7}@2GUb}Wzh6! zWQEr3A-bYIQ_oC*R_&S1c^zDHfB|4G-_soFfgW1BhbT)AJ=8<1_nZNo=^JRDa+d2F z3IATbubU-&rG)R2@C_1vK*Ei6X68) zta>npdoYF#?_m(zd77&we3gWMvv8uTak`YVw7EV|y%-W|JmfA1xhpJkS8{Y>=hsX4 zS_xlA>|FOOXqIs_cvIKKkc{MSyBk1H%_|+ZH+pS%lZ59<_(nSmmm(D5pH$F{z2+HP z!)Nogmdyp{cnwHKQqP?h!@Il&yj8-#mGCVz;P4r5G;Po{xmMWR-+Z`tJs9Dp`HUfM zrU>tp@a+=5!`^vzl86Vu)FXmXx^$btQ!6* zD0+VZy*F$F{?$Y8VF^Dd;fFp!kd2t**Mqy#^PXY@z>oe2O3w#;Z=_;BcJB97>|+vs z(yG`$I4bs0SH)6~xxJ%*=n^}#@U3WEec4M3Co~j zpHLP1cwiOVYR1`wm3W^HOG1(JQL#_*71gS0cEYNTdYzyK3Tk!2>KxM?xqZS~04+5E z%YVXXAmme}O=He4NcbfQKO^B6CH$0x{}hm^Cd7DI97K@16A~O9o?js0rzQNyPhhH` z@7kDmsPCZf+QfU;^Adhm!n$fl6;RL&uO`0=h@OUDK7$ZUP^=bTxN5?7wEOn9{lDe4 z|DPrNvV>pxguZ^9`(fnI@x1Yby=~Kwz-5N;rZm^S04A|Yw+ROT2Rhd#986Q}>YO(c zPRFo18hSjOBV*VAzpFd0Y37apCgFFO9{#I@-&jT>w@KvIWhHXEGjIHNF1%YmZ=5f* zcT(mX=b|&sym6(I;1_j;lc|pO&MMI_s%tmf(`3RJkU+R-6nR1yGVpDcfp0#-85K>4 zA|r;ztG)de{k-_+jkgQ)jt2mm!<{!a@#o#m0=#jD9{mIt6&W=Q&HlPIEpFo;#j!CilT2=H9b8 zDoOm#gVBaPK9ukWbkjd1{Jzc|N80M=jw`i_*7>d_+e;bUg0o6d)=Ec)5avYf#2~x&GGjD!hOPh z!2Q4j00#VohkUC4(|OU6Z%JehO&2*tA{$6VB=S9p{6->6NaXktGYBU<3Js4zqw=-# zI$i6|O;6A+)Gpwfe@bn_0(#tNbEO_ammL?2xLZ6W-)J z&459uiz*J+7Eo?^m!onE5r2)jO!zyXX0&n&tuWyqz(4t}obmziA@C9KZ{Xv$wu$~F z2|>9eFOiibvaWK*niBc4M4}Q|RU*quWb_}vGz!EV^gd}7;KZds#NaU*$S=sT58~NX98}%^PvM@dS zz_2j3kS(T5MXjeYjNi`hg0>;7FwuGl6BAw=t|5`tB(nO#zyhniQ*14hWpk5kf#Qw2 zpUCh5k>Reif*iubYrc&^E@_)@6R-K!k;qySS-VM4!3!F(9nIj*_pUYQ;NZz+ zphI``LIpQ*556~0a1-}-?sp>|k&Ps>iB)i4cNE-)o`TD?ca|$u~wT>|n2sbfK1Swh8vc11$6OZTf367GRcp{(20Asn<$FU0-2Xym2&9MiV089jW0Ri;BNxRAj)WXeQl8PTM{UfzK&n0BWXA+y05~YdhEc?&QQ*?KvDN<4%5CB0E`ayR)Nh zcW||Bi4BZ8tF=P1lrG>-7W36)g)L@C#MiB&a+zwS(#)Nl_?AUMx%eHl?T)H#zoR`7 zNZb1BnP{LwVVMS%#wUKjldZPh1#SC;^CER2Cw|Olv}G>`)xfGzdzS=80ZRe+X}wGP zG-Tbpg6hECB(jG@c9qEP68UaW=6Dnn0MKz_j%us@|B|1)7~5*Z22$_FbicYv4F*zg zhVu;uQZLSniPg9RX)lTFV+Yc{&OqAJ9Y_QvJKA$3zf^NsGBnE_?6_8|wkOl6TDg)c zkZ@LOw)DGqbBh84sdozo()V>B?Hza^`PU4%18J$R42{e5Zq57bK-#ZfZ}a^-z>dI9z|PGE(g6}VSR(sN6%iY1&h1DG4eF|zN zaR;;PV9&O|L2JBR7yRt9y+}O*6nje$%e^KE5{^NNVfCK3*W@M2U3Sfi%t;NGG@h zsgz@DqH2jHH<>hP&Z#^DDVNXc)~6lWj%=0qO0zWQ-X|>zI*{fwkjCmj8WUI}Y3);Y zrobIY4K>mW+-C<;_n?9FGM989y~5EQNEo@juK}+Ee*xZTHjsKG(kqei5}7EG2|-!* z>Hle@RwqPMa}TGzM{FR;%58133art%AWf?uNRs6e14(im?LZQYTqy!2pbUJY*+7~hk=YWNE|FOhnHh8- zHIcGGAJv4};&q0R6yJzNa}(2e3+ICNK+_4a@-sd;=}$9Cm#vmB@J#`IUw+&X>s968V`#ek_s8 zC33n%E^1{sD3Kcg8-mp-z^P!a{Ghh2GiQ93M9z?imIiY+E-GZ0rpsp7YNkZWP0<8e zbE#61?1P*ZjwouW1wxcsPcdV5RAQFa|5wuOmYQ8{1#g(b!&@1|hUNv_?M&W}Byx^K z&Rup7Cy(0{qi}X9qGn2($xqTK@}(RROtbY(zL?4J$4*P-QZ8FaXL}a@utkL2**lE_ zDHuyvkDnqU^eHV}fA=!BM8}qPuZ}OLdoPs8Pb6}IiRYTROY)A{1xS}X&^SzMmuLuc zffii&sl_Jo`sla3^cMT_TRA$jt(QpTrxLk%**)PE!zyNfU*!$MPSkA4mDBmGmU_|o zey;lOY!L^yTjU;a_`St}cC`WRUrOZX68Xhq-1SZ9b9v0ZNTr(gzeIj5kxM0V8KG%A zFqFfbA>#WKl&A%~>lyp5XT5h_C6Oy6awWamY@mIbt0QOAVe-o>N(lh}`kf>B3*Q^5 zA`M1!zo&|>k;wH{72V*dqN`n1luA`Al(@+xsraA^s;QV)E#z}as=rj&)-_YgrN|8aYROOLC76Xjr15WhELh`Q?!ZxNu)@8~2(2NbyNf<*!yj z;U%dI#+C{l#SSt~I@qNIN7q|KI|O!bI*x2PDch zrXi^8m2A&Y_a;~9BoQL=Fjw4N=YQOIU;6&&1;FR>fF7AW7%)J_?9qoM9?*>L2j(S`okI}OaOXMLF zRGwd-l8)V5W`o}p;c7B-a~bxEDrHhksLhrh*nX_q*>>zH9q&%^!&ByTYDRi$Zh1|0t1XtQR~dEf;A z)1~hvpJC)rne+SOeqX!1*A6>xa@78Z9dy9)o1|0zFKPdmjQ@*&oBXW*g5MJJf6hzf zUlRGZM3|lVRm&NE)XYtYS-1&~!e>7s|nr!;R-}+aaINmQq>Di>A`Ke7=}9 zE~qJt&NjOxd{bs6HI|`IrXXu6o!5q=h9)Y(@n%by5floeeaLXmmNKoTps#S9?XM3Z z>LW|kzdfSfkjU#2`3ppC+?{0YcrIU}{YmG}P>L**DVvv5!m^MhJ)VN9#5vL)S=6zh zZYNQX0(n2htW&v@Dyuw#)?txJrd-HrCb$XrurW@7=uWDfD{1}IloRfuo^Gy;fyDB= zTq%>ywMv)Ehm-JJCaKo~A5L1vqw8&nyeW~lY-hn&Y$j45KU~?6;F7j~nF6VVp9nyu z)8zt%%|X;@gaRuVQg9r7md>---`;MzRQo2I)6%NkuDNsB0!B}sr4LzZt!7H;lIEQU z9GA`02f1>loGKMEPC-{{_h!NHfN=S&UL0R$A3}eIMA1QL{AGD({{{5EMV zNK!qa{j!cn(my5gzC`|ENkTBtHSjx?VtKz4J|pN?NEg|2J)6qs6?+%UQmK$|IJnB}WTIHAaD^b2U*Lpo)E5;{n0!?4HG^JdcqDx5R zV~Ms|nzZ3r(}Pri*@@#Bp-`qWMTy0d6eT9KmdYwk2G4@2kc(`{LqNJ@I?BkbVm?i` zF!~WD?#4EQ-u(L!@wO?f~c}3>Kh(WUy$f1i7o|EcG(5N zSr*xNaCMOqG!!9gq;wX!=sdZ8aFkje@800p9-=U{&3NCzBkIc%U0$MJa*0B=WYQYihjFtA z93=`em;z734oraJs znh~G#s}@9DYlWeGM$V+&AnLo8sNFrHR+8un5?#>}rNy;VY(+}J?Ht%S!Ula-)aZXX zpH=1KHGTo925+m8!+^I-BycvVsD2{xl7zoexRj}zn#sl%X&K!xGH!<8nD zlSkK-=;{((1DbTYW*7q#Val>G(54IX=toyJA@Q(x82;D`D4e1ZWNDur#M)US$O1jP z6`ccN?o7j^<00$>OW27V%>+Pnv_#jI=sK9$CVe0Km>$6xRZ`$4Mv9SF&>ZlRdVcC? z-vj&}z@1tWcWO!8DRrV3Lhq({PD_0U*wOikI)zK^1nk^9(0fwTi_fm820=eC6_^H0 z2W9{>fmy(8U}auc<2Z+7C&vL`E&zIFgUFLPo&uZ-oCcf@tOlF`oC%x-oDH1A@3-PO z8lYt->3h{E(Rb@u$6%Sn`zPu9^*ZmLr0?h2B;GkVgg8mxsn_(K`b_)Wy5pJ}@QH3H z(e;q(af!zG_Mt>S;M+$ggc#k3j~mp75Gxf%K}Sa=nQq4)&vj4}uAFJlvoRh!OVYcY z<<4fgR+G*L8MV0Pf!qbW@N0PH(ZnO1(I&$YRtI*{PjUXD>(b978$z6P*}@Q_uIrw3 zIU&U8`UH=*?FEyzHe!jDN+ngxQaQU))lfvG%+|EkQb)2glc^NTos@Mb)OI=esKXC@ zg8P*Q9CGc>Mcmn9()CLE#-CXjanenos+>l&%0z6w#phdqTWNeg4-O+vB6_8qW$snZ zbvf%t&bhYHhO06XP1C!ZNHnQo#Asnq7_nAkHw%h}Wh!YVrE1w68GGqm5|cFB&PoiN zgl3aclOEz_E*Cw*<5S8-Uw@dh+5;``Y@vj^@g42|70P_qwfzKG>iTj44RICc2(mN^ z5l-T|X$U7o7|jj|5l(tuyEQl8d2TBq!bvaLXDXfGIV40F%?Aq+5}QKC~vEO0pKE#9PWR(4S~8VzM{I-e)K$5E-}nm=$j>0kET`y2@z zM#~c2%n2MuH#dR9Xvqy6rg4Oc3zU=j_9}@t#Tttfs9c&v_rqk^TzF@yKCT9?0j>p< zWv&Bw?c^mmTE?0@idSu_jP;F&?OiQ1mVdTW_heUSG}}4(OFWroAWRtjCSgM54_asP zip~osujKUCXT7hlSli4ef|KSKlbJi0{R1Y zd5LZ%QJutzep{mL68)}3F;ljX=*|J{g2_=(iGe2UJ2}qLu?wma-BO~J#h8IGc_Uu1 zv3*g}dr_xEJ0x1;MaI|2_YD0Il%hN@D%ckly%%jO(XA!A4VKPY>I4t^GybA_L5q4Z zD3V)%+-?HY|ARG%Isg|-@YC$grMQ+t#ADorm5|68(-uceLo~ zJdXd54s_A;pVrTxbSWr$JA>XX7QJ0P^mdczE)w0J_L8!5f);8gM$_RfU`hoCRRdO+E)W7x>YqQz1u5bdsu&F%tcuL?=r0IEfx2(e9x9 z_Y+XL05nyFT*%Q;A%{uy2NFGWaZ2`I@`7L47hUST=tzkkF3}?fNp>!8<4VcTT)JNk zqSshN)qHVUSv9E77k17U}*dNUFK6O#irtiZD1*ooziR=kDMC8 z6Pf(Bq5=$7Bkyspks2B7iA-${ zOi{H|rdlesR|?Ha225GPqJSEiqMpc1RU!$cTkvS$|0Y732 ze#n%S0Q`?B_#ad7J*KP*tOl$OtO3w=Q}8{e&|XvcjruRHk2z&D=R!ajhyYO_#yuc4 z1&3ft0${Rg%GZGPfc1e5fDHj``YG7-Q?Tc!YyvO=G$jS3feerZazGv^0GQ)bNkv$@#COed^M`JCQ%7!taUI zy)fnbvEN0jbIW{h%lPv#GX8vwOdW=PLeg~!9VOq>(nbH5I>hRT&q?%siQX>JcP08; ziM}b(c@n)!qQ92tFC}`3M6Z?Tk0pAJM9+}uDH0u!=!Ft}R-!LT^c9J|F43peB6w1w zk4p4GiQX&GyIYYXFqj)cpRyGlw>2G#WSp`MN0ZPIJz1i2C3+I#drimHV-nwAUV)iN zqeF}vn6A6TZOtyVf*%6J!*56M+R5U#Ge;-Hf4W3ZmFQ`N_}LDRIsLk_!y2-;8g59r z2?f(03igyAHPRI>dX| zc@jNWqCcXe%*-;88DA*^XYQgw?~Kg7K`A;4ijKAv9ph1Sfke-j=ua#~%oq7dG824_ z_)RHV{PzZ>s0)h5S&F(niY}JuMH2lf6q$u7&fHfWS*5&=nMJ=E6wgWEIoaYl#l!O# z68)J(e{S(~mR=2J9v9C=yBZYF+2A?H;>o0p9bcD8^j8wS6g+hfSQlf}VX2OK{TW9j zjnvISi8=$K&a_0GtIL@$@<6_zNnlj>+PJX3#aAyFf7b5Npw0#VkhoU+iXyhftG zk?7TnVa1YPW#L#(v5w^w<5+5*2>vzo(ja~@tjzEm{#uKT z;pr?K$|=^NoT3h;qqA<7=#3J+37rLk!!apH=%r!Q?Jz%U5kF6D{TBRgu^f1-$APy= z^cIQUN&{+GmGl$8D#@EX3^yRRC>L8n(%;MYl~b%=ImP&urkC%M=p7Qh)9GbxDN-T) z{b}+H}F+5ZLdLzZ@s?Ej*Nk$wTr5i9RRM=Rs0)Ya5xO4On9&ZVgHfGPj>-gCS>akDQk! z`jSNdWXUPiD+A+K3`5T1zBMR01VQ=CHs{yiT*MefW9T;wJG5nT?;lCvM4~hQM^lk9ihjPR)zfvQD7~bbN1FwH?+nPGd zs-tLAT6kYzKfc4b{RaRCI@kIMbPUeG>p#q1JDlTa3;fQ@m(p`smvx#m12eHGHY*AnMx+xUe^A> ztZ$U!(m#gtDmmvt07ar=qX;a=mUx6S^r%h`YP7Upi$uki*v9Vcl~E` zAB<@3)z3;2zw=l5$F9c=oLsaBK4&RPZLNo81AnJXt* zm{Q2Lm-4C3TC+VT`!D8&+Me@3^k+Q&%gQ`odYCiHJT2!(^onO-(;VuO+eq7ema)V`dydp#=aUXClANW%#|ozjJ*Ea zIqK-UQ)1^Ua;uEk^jH7ycnwagVIO5Hn#xVY>(`!9l77TF<4-u>`&CHjx%WAeh!Q9 z=idA?ef3j?bxD-|w(!rkW&B^Vbu)DSFX@bL8qoif`Z>tF@2-->4wTp|iJd92qb0Vr z#26)<951n5B$kudG>Ppiu~Q{>xWqanmXg?5iG4>!%f=F$EU~>Lw!XxEAhEd;J6B@I zOKf|IB_y_`#Cj#RyTl?A3tAjyY7)lS1jb_QO*M{&n#-}U#70XjglgB&wtt5-K9|f? zNj}dCPhBdRVv!Qry6!5gk+?aag*~+hF(pe>nWOOmVsVK@B^GN&6ibX)hRA9-R)n#t zu&7g!!?wVuyg4XQ6^N=@qS`&8)|1$}68oAZs>DWjzUiN=SrW~fF;cBr>&@asOwfY6 z8f+wP4oVch(A4cMQ5aITr#6z<1`^v4qRix5rol`dE5=yI$68DF_G3A@y0;^9Z%~SM zg`(XoMc?%(`ntrD65GV>rgFUlYVy)p*2h{fR=$BX z4?T*C63a_WYbGg{tXcGvk|*ToWpo*7s0LtEXme=AfU`L-bmaWl&BtvnqY~V=n=Jr#5R|h)>qOv z7@EjmU&*W%g@i@96coLwpf}B;H{C<8U1Al9d1aDV$?9XHf-aA?=%GOZT?&fcNuYPK zMeh_3y{#lxlbDuCQkFnF)ZyUdL9is8mHF&h!Sq6wwYiohM&jn6M4bas=USq0aI7rC zXxT<$+uD)K=4gIK&pJfaX$+HQq$79n-y4*opF+{amZD2MioPweZ%J$i+fC_GuFkSD zi|qXxFjZhtwe6;nxH%|MzlNyGEm2o^MC~lG9VNDtOH{o$vI5q%y;u-lB*EV`SJ>3S zFS{1Y%|VH}9-?lrMB(jP-ute^c9qy}E>VSgbHz+)=%Rg}b}y^FqN5LOQb*L{xH%|M zw?ot&mZ&>DqV|;79uoVWOB5T3_?zEocQ(I8ue0$BNk;6mkaML3n@cSAn}ZT{KSVuX ziF(i@Y9ER1EwS%IlueXi69-o1vr`Pa)3C9k*)wTTE(JyJNzmgr#{8J?p?849_LJED z3(djqKDog5<5s@2YW10Kfz-*lfY(R z3mw+ozyf9)7MIU;<7OXIERLIl5=AU%Dsdpw=5KgJ{ZL|uO6)L*Qf0uN4SqD8O>wXT zOYBvZW_PYqmQ-+6pbd<)~$eAs+jM+8< zHwPt(K;<+7m4+ySm6oV(iFHYAoE=aNEk<@5W8aMSuc)4yn!f}%$xcN&pggWd)ndXpq366*s!o%&}}uezb( zWPb&}5)?Ng)6+5*x2%WTREbTISifZkw%)44&EatNkYmD-7$T7lxWY2S;=ea2MVms= zW|pGOJ&I;ZY`Vl|K#_5%Q4M~Qj6*$0U3l9XsUBI}HwPuE22q`ssI5Gr1|&9HVsmUa zv1^te(X{b3>NH^1SS2rRdvG^c_pljvhs)NbDquoou^_Ez0~M0%xm8*QjDY zGu?u!?3%A5adS|j_JFAGS)%szh&n@Jr%CK|m#9W@QQh*)r`l5NK#77HY9L`zE{)hE^RyEoWQ-C3tO=kC-AU$Y(w)iCrzRYYZ+Xhi?!%M%-Ch(YPheuNJMj;7*T^?ghR3EPBLG zoV?E1Jc(T|u^X24n8b8Yqc-!cIe(m=GdMoSNr%%G*p_-mTgvI=Y0uGu#7tSlpIuhs z&pSzn_i*9v`lLhbmqMjPTlH)Lb2WGdBJsALNW+@^IOrl~MjVLuNfsUj4+ zLnZBPk8p+_b(0RKeW+sVcKUf_lMbhUp+4zw^>;Pt@GhiUqO99})+i-gOJ_(rtWXA% zU}}4k)XH?Gny+bDzg-SF^x)&Ir1rAWo`#G+0t*1`JtcND@SHt1PCA^vf>QkZ&n)S1 zI_|ZK^y%ti!w{OlHhncFe{J2b6j453Ht5fsF^8XRf$LTbsi4l;(nM@un6C8R&h|zW6DQ=Ku?6m8&>v$7%=r zJC+Wfp5vUhh)pqkcu0!j^pf`PBlEdOCD)C>O~B2-Z-H9?01Na0NVoF0oxB_ zV$@|m`R>U}Tr1(kFP3;s;`d1$ujz4#Uq50-=Jaoar8;Y{%3vdN`mUVQmgJh>$eg~1 zJ@-CGH8P)+*i+WXqzDNcdBmP@jm%1>lC9(@n^t0*+GH-xZXT7+_B0z-=5n2#6{cX? zn{w~Iyh2f!2b%ly;Q7kEe+bOI$_%cN>2j~hWE^BtPX8hIF=W-G{G-WRpyCW86(Vrgw90JkSG7044&x+@l;NfO63!U@|ZT=m)T@ zr(-5fpAO6bW&*Q-*}xoN0GJD$1Yj*sKLx-Ro_-o|I&cPXCU6#@awpC4T!4O@ejY$$ zOh4bBZ|Be5tIwD7r`XkJ75Z}zKeu~!#8;AdMdDwU_~sHv$1fqVk0ka_iTz#T$fh?W z_Nv7GB(diuwm@QUOFSv@w8R<4Wr=T~BY9nkMQiAd|3_n}ZT{9YkGkiMoNK<9Gd8VlPYV6&wlkYNic* zo#Ir(rF@6iO?uUhwz9K)9ik@3tXO}qm%QbtNb9hgo2d!ndt2b0@u%MgN$6F>e0O*x z{Y7H0N$hn<(oNAR>{0h_^JeNQ_+DIO0?(cJp$?A!itd}K>)-3nmAw|AmWi*!&8_T- z?{BTvt6{iB45s5wO~2n#^?*m!TN3-L#NLD|ty4sOi@NvV&1E(r$OZpV%z`R6l>E&d zluT>Y`{Yx|4}Lv>@r z1d~(sDCMbQV2PuIfe%+QK!!!uZM?dtD>Hsd;x@I?@HvQk-V*nMN8CRo_MXJvhd8Z4 zlxL}vuk+F--;JUl^zQm0Qgl`nQ;VvuflPTC^K6P!`TN;KLdmkIV^aoj&`!he zoc_9{OMOpAc6=zYe@W~EOBdOVe!5a7z`z_${huolsk2f?g3V2;Zv?$rCkzNv_*yJg zG_p25Xr#4Fl-pTR`JmLlEjyj`0|$1Ngl6n2yhspBTNYyRX}9N)}w6h9@GID zlUk@ugcDN#baVS4UJqXHXT~}ZHrf&v@(5c|;$M;Y3YOd15x1T%^xY&4)DhsO`cjpw z?ruAR>$yjVhHfiBSsXuA&H%2LZLO()Y){urn}Iz#L+w#)&l&40Nosq>SCRNvCBCvt z(jcj1Bw`(d`z$Y#&Fe@tBn@ZNQNygR0fu>UPzFpv4Bn6-D#Ov(p7Av#zM8~Wx3(vf zK|@)p5mCxebx3NDIaCcoUX9Nnceg^8zpuUlSqNT3)@EK`tt0WZB)+yY?3LN-u_CDL z412xAUYm6+WNY6w{#A?Uxo*si4$#vmiLz3swz^@Zh{Qt@57X-I^nxD)($iFyFUqB$ z=b+Ozp@Zceg^8pV{|^tOG1r2Xb@-)5a3tP~sao%#K9# z<4?~xNjIv3ssB`WkxVrmp5{{B1^cU3(DS$Y;h=YfMej(j)l(ARMB-m}n0*tS`^;$0{@r=Z?R;&-{Q56G2PSR*jRrkpj#jvADe-Sg ze2azXHP$Nzy*gH)eyO94hPl)VdVV%1%sB&fW6(RFqa!3bBwm$xdowm~r05Ns58`NL zpGNl%%jQFG9m2p_j4SN9_c;>Ok8dUM zZJnTgd^;1=k9WF3{cNe2?o6dC$wFs^`OGTYj8tl6_USGcI;*A5Oo3|SkMo$Tfop(k zfv*790g6)F_H8rtv!XGNS5ss>z72u>_|^||M(=ESFN_(taQ6cM&z(WEY6g+28F$9F zcy+7GRvGualRdJ0`Iom|^6y>ZTP|^y`HOG4_Kuod@|{O9ckz-&Ezj?H>x{cODvx8d zZ%^?5DZakV>3i+v`<$@;48lhtRPPkodQ)@FWSJHRY^=r8H@V#Czjm=xS^KKR2F0B~R9&Q&du`S86?P z9V#qCpz7noe^z<4c5jO$d0z0JA>~y|(rX+|KqbD5#CMYT&J2FFP9TNKw8VvVcMXCb z#=+og-M^GtK02bwMl3-r1=grvP6=oePRP^;D!g@3RFtJ4Xp#SEIb#;?X#-FuH|zVy z0=`zLf~!4;>>a4m0jnKFbj6Ca-6g)8#J_9p9u~st8X(sDux^>WHkGE3pq?^CBejaK zN%+-@$~IK%??Ot<+6}$wutra61!X^PeF&-_S(J&KSl-%8;@^|_o<>O!kY~|21)}8mZKypP2w!zCqYLzBCyE1b{Xj;kAM7YJ$bfCodm-qp$;$w1wy0UOT zMa3yhZy1!}>gWBUGn~_#XqDs=rHUzn4sy;oVeI(-mE2*%fMB%_YosVWPE*-3;|oW< z`P5q0n2+;kt_4l1E8zT@L|QE8|3KmgOZ*Va`LwtePG=1Yb(3LlYd1RAz(HK5FJhki4-aJ;~8A zZI6)n4<&xME1eq&-25QnSQ%Jg6K_qpgwF1@v7G1H)=MHD0Jmp2=sKcA%KIJ6Dp@T~}D6Mu~ewAU`yU zkrgl$#%4SdL-U0@$pu`kuXy*laI)^ zGBwt%GSrkQPc?v`$=8@Md>oJ#F#LjE;9~<|ma&#p$od-`qr{YQ*A8NKk>#@~D&OnERDP;A4~nEZ+pVbhW=XTw zhS!qlYPu3-Vv6+R=onQcEJ40Q1Po(2qr`4L@ElT?8AxV;boyo!uR*PKHke6q6_QPCjqPTb(_nc>7M4t$6CPF1iDgm>*de4qJSd(I7KoF?%ztrc*VV+EY*S^>36m32(*IqGTi zKWbK{la&IyEh0~=sWb)03Ylixdd|Gdq5vv0e}@%thFSrq2etxCaWQKJXyLJ$#1&>f zY<62**;)S*-?GhY@fjJc^ZD-T{Ily9!ptN9VRSs>$z-yset!yh8u%ly0C>iy+x@`^ zT?iBZvBZBW@pB}8k;E@-WmNh^(##il`is0-)%8mp9rN`(iJvQREo5Y(W%ZV-*^Y-D z?(n1*{uPvSN9yLFMEwO~-mpad)g$TxiJvcVt!0F`)4|t>ghja&5WP|Ktb$PkdNgXF zyO)10sR3X2jiT!m%%k*Z9@W#!zrc@bqMSxdaLgjOH*0yt8$en3-G^B?%8dlatW})* zJ@?^f691(Y9KUh|$0e@dNK@LjiXcrEbDhLNbLGxtDO0Q^GuaN5J=x8j#X=MJVb*%LF>N93(Ght;dU1dEz5nS}!kVZNw#f zf?4Wxz6~HRW^Dp|9Y_KC-M`i55P5N>#IKY1WfH$u;@1S^-B|^mUgWLFi&-U(j=Z=+ z;=h*o<;~?q-5vlL*ScRQLd+*uxO}RcgA%nR#8fO%Rgb8vC4QB}f8&=IL$UJYMSx2I z(fgmgaO8us91ifTeYA&w!SVtpxS_oGfpfnnFXl=7W-Bj#>&S~6TzOGyFII}xY#~`n zr8CJ~O#=@lOpbJW6(@lO@7YSTs;0A!vM8v$I0kuflgf)51IvrShQ_Qeo;R-E&{)R= z8CD!DIL12-qk`j>L4u=~ODZ^YBGwfgllYE6nl%OJ2c|YNH13r6y%N7w;=h;pJpq|` z)=Zv0i#Ka8&gSR{jyoiNo5XK7W6ap@jdgPHOF_{)4YW?T=$+xA_dAK-CGorcB4DW1 z)MU8BqM#z+E=0gXDgqu1ECL#u z3=bF)FwDru8F5X9M+c4k$GD^;Uril%6{N|3TuyXL5y#+L0gNQc(0>1udO}RP%h&c3P(Y{BUMLYUsj|G5hNpd3c$A9@(|*vrF}B*>e%rvd3R#SSHx7uF8C82W#1D zRMDxGOG)H(Dp_c6uhj~j#63GZ_dMj#U-O07_6Pj;|-BLO$|L#R}BXM|jPrM;MG&lgfnd1wz_gx+ma9@>+~zpXsK3qHc@AIAKwz9T;wp#!COr@MI)2=d$^7Xrx&xyYmY;F4!{EjiFE0t%T zz-PwZ>=QX!6+U|`-@AZuKsPYHi3(4wCJAPw{~?J^No+h~0iD?s!J`)(mDSb+Xb(5B zZ8lCuBkOFo&hBu(=b-&d;vZS-?B9-c_D|P3>nxROY`b1gk|@Al3+#WFtmd%JboY*O zrIYF4&SurYX3w=KC}W-sV}7WN`9WaD9PFTJP-phpj)P_x^SMEO+3a(9G3}v#*~eIC zSOKOR>E7Ar+b;eIpD*CNcJqb6MSNCKdogec@H61&z%PJb4%5}cWvAsO@dfxfv7989 zlEhafv9u)GB=MDi*2wH%^X|*ROC{139E~lP7$u1%B(Wq?d12M`!MRtutJ2`BUbK%)Xme`<-pQd%V^|n}1Of%h=X)D!UHXdW&{7Ajz{C53^O_YcDJ5 zPA`9163a{COUvxZ#48o9bVjOYxX(e~_%v@~vctS_f%nFhB(Z`dRy1!cGY##&vC-$C zZ~PN)eA&M774MC!N@8V6tTKX}JaVG~g^Jyb$?1M~{x^O^mL0 zjOVPtCB*FIh)aFo7+bFrq^g2Nn!&@Y`FOQbi|~|oEn6v@6kY-%-N3f z4W!AOZ#(z9hFoG3Nu;eb$vDy^=}Hr}8_U&5H&3QYRSdaml}eqpRA(}ut!69PjzYR4 zozf`6)xb5twE%9C!(`5JyzF=oQ6ZyFgd=2%lE5S^xD4sv=915vCuB!4`@Gcs zebS|%==Fe>OkHvfyJiZ|DAJtTbug7bMEl@zpur&jLz*nZ^v)H zHCTS$1qN1rehc|IpRX!Af6q~kwR^1$y^qiLb57;x1Hgm8Lwr|xifb~5$If{SKu63W zPBQ07pWF<(bPGwin@Axt|M)Cl*G3s z@f|D9STRF#Gnvk$oRW!Z)0qd$Et^g?5;q4W3Rh{)%Mhc3bfK%Xt0Z=o#4dJlW>_mj zzNuE+AkC4a%Y`Z==%t|O;q%OS%c2J>**4!p65o}??x3gnyg7=Sq;o*J%x>a&lTE3s zdi;Ox^0>u+Z$OGZt&G;;wE?hUTiXEbF|dTwI0H*+<7l36;`@@=OA>qAzAKViPa=Mq zHAJj|qpsn?%-;fKiCFqYHajbdSh(X`i{J24id>XBy;qSNY|ztBm{?h@Q7*kf%Tw%eeFr592mVYsy&e8djqXL zfTl9x7B{qVgd~o(TKyPDs~_%Z^^T7AS~*uu7HgeZoS{-B$tt*9vZGioR>(W3m1|WL z-Ehv(K*^$jRv-8VTKy>1>PJ4zSyXE4OSS!4eW2=S^?`PuR{wK+vs-u|e}lC80N$dj z)sJ1M)d#lWG$;&g>uB|X?fASs=g{f{%#IA~0I1VQTMg_8>;&u#>;mix?DpxjdbcEI zsaBsPi7}FxCW(oXI8G8Rt!bjG-E|uS-vgCBK@$ZyfRku7%!!gXUJ@s`LKL;fDip17 ziz-BwWUfR|bsn|^t7AZQ(A(ZdI|GJc#S#!8|K^i+l*yjktRK3fIKogg1GCb6RN zc;gW}ut5toOp9p-X$hH2g1rhI*2vWVSu3T*n_D5wFLaKCu%j$tM{{(9&ICz}mqZUj zM^{a!QYa$LMK7?kAnTS`vOAo3+}NxzsTaH~?A6;dOdt9G)D{Tz^j1jo_t{uT>$0RV ze`ouwPZGV75Zh<0lw}!Aj(vdCS+6qDb zzS1F0HlZ0KcmuYt`Xw=05>x0a4Q8U5Ff~~FUMjLEj8!@d4GlOl&th^`$FY{Lz(Tl% zmm2=6MfBVuyck1#1E)agsg}~yI65}|Oi4_agj?i_)$lBt0!Sn+p|OWGICX4}#LWTQ zXMnC8AewHv4>4zn8j!?nNobKP?Y=>B%!mXVCJK5Q2lGsn>u_?`Le9@o@lj>Nf=IEzWd(5T)!iNqj3KcpvrK8wRMIlO7Cp$Xw`HuGXjtukY z+CL!JDD*mT59bxhc_4W&uRl|*jni?;jkSRsFzWmPRlH~LoRLis8Xy3>of@VziKd4P z%qKx8arQFtEf2Vbvu$l;3boftrA{iICu<$q4$P|}yWwQ3xnw8HKZ@m2N3D>nQuX4v z#grm6@Pd+l-e;B~G+=%60ppuHX3M~kQaG0@9&*nJV`E0n)aF*e! zizIO&y?eeSeyk}%iJ#S{2&FnYQ@K=oN3x^VL5fhRn8RjGm$gwVg+jigqfpB>L&UD|$j z5`q#x9g+| zpXaU$;B3xa9azI>Hk)b6`z7&nS$DJ~-X1X@X|6WnIv}GQq})Zrx|u(7qkPxK=Gv0) zI!Dv!>)La!kMv7PTxNZwUpqe1FI*p~%=+z4mTV<;&{AcEeXTG|N%v!|cdE03&s%IJ zwdQVYQJ4pso4{|ED!=_IFu(bypXU}FA8BsU_(;Su^pDM}oDYv8^f~9wL(eU9nuZ|- zC~-MH5*pfc9vwP&bEi}1ev{8za2_E#cT1qcXYJf}paa0on%fC%1#Io>Wd9nkCMiJI zD+k{yiK``Xk0frA#1)dbGoYm~7yoT8zMC@i+#NVN=Fe{=ait`#vX;W2t<;ReZY_nN zmx7|V8)$vkqPM$;-gT0=MiSR9vwOGkd-4<{8~h>Yi}vM3``H)m@4e_oN!%cbdBeAZ zyQaQDJ2br%6urYh4|!<1>2MFdTO@I_B!26lH=K`P7qm2TABMdY6usj??*xn9i5_}) zNa8k0=yIU7)Gn^yInjxG>Gp|>dNC-H6F_pJMY7jJ@^_NBOA@|CL5;j(+facn1x1f3 z#<|lidNVxq?vuptC2{ZY9OzE%HsHXfmqt!?oCF~!D*?b@)o}*r8mW$Rocp~=vj-*d zh*cerI;!IVS9KI?scbRTNeRtd1^X{sWEC)5no;bnqn2y$D6sKLv+V=sUSLsB)o~H3 z<6%`D4}Ch-@heAljJn>hItFWu%bfO5jq%tZje#ejX29I5fZuSNYK*IaYxt}h<2vAa z;08eP#$1_uQ*e#3KsCmnBr#tSZ%E>KNjxrzSA+8Dt-Sj-@KTMzWTDjaMP?s;;Wm!-9|*(;M_duq-rtt6B6O1--{CdXIy z7CkJQ3!k>=Jrkn$7n$~Fnf4^;>7wA)Y}U^jRWUtSG2Y6}W|2g>z3?TA8a&7544LT9gDS2 zjN9&xd`}N&y|+)6|1xu9ivp5&=BBI|FYAi&QqwDjO3WZSEn?i(Efh1irJXe`{=q__ zHt%v?o#cvnF_Y~pT`Xp@g*DRyGJMa1F|!qTKhVbSEE+RE0AvCEoCgX(5hyteN3+2d z(Ym;acS&MH)|3Qpsn;a2o+S9ZsZ4uS5^FWd%rk3X_CYYGlV)zm)i*@`Ez|xf)Bfc% zvvHV5^&GQNYPGX*RmA;erSV_IK~Kkk4%VIbnb>SIvDplI*loUtKhYx7UYBWajG;H~ zFbiVv&-uq zgpb8^l&ZSzAm?7gzl(#R+l708*`5}|y}~ZU$N3&ftZKy-x?7}xtL{_z!#JI)V38l) z6q)Q+9Q51{)G75vi{1fY2fkMlYe+&5%h}YoF&hq}T}&H~zF7zw{8=0X-TuS=n|YW; z@bIwz)|JHCl30iS+t^32!C?{>y~Y#7pf~{JeR9Kfwz#vW|D9Yl^H)$CIXeoFumc(`#J67q~?lS%rX6D_Gu3*4ZxH! z&*97ges8px5Bu$d#XPZF{>{zjm2Co z1{QI%fMfNUh5K@@%K=@euK=+6W?ltc4P4_a)~;Vr9l?pDBs@tZB$1XxY9fB)!Joo2 z+vvd4|1>m>AzlGnvTtV@v-RrrzHINk!WD^NfWM1eH`Sf0L|GCA zc04~I2^{;$7D>FZx+LFa_CFI9Zj_??pPiHwFA+!GR;8*W$?cu(lzS?5wiWV)&Rn^@ zl@J$%E6>h#oU*}JMvH%*9JvHPFBST(`^r%ILH z_p$$(D6;=~(AHpL_CKpVx%RGd2e~%I0+kZF$_0YPIi)_=&T$FtWKMT><@P@4kmK6E zc+CDs9B{A|I4!}>na+lXfQNxc0Hs|A^ll4G^*`6|g7&I$q^pg#oy%28;&TX73~zl{65BJzACyE*cR>>!b-SRsPAa*w zD@FbzD@wMT$i41DwXK_6rp`_(5myS6Meg3Hh6y5k8Ry*u!oc7(qRn%H6duy*RO?)U(0RDR)Be6wB9 z-X8l*rIP^~w+otR|BrS-dq2T*mjgQMb_TFzdOr>9;w*$_@w-?Oos#&2ByL+_x=in` zym&W|QBJDUWqSAKJM9GSxx1jf``Yh}q=N~%CGk#{rVHs#1#H&7{{MOSnzv(yzjtP}IA-}QAxqF_y zN70UMz=NIG30>yVb@`?DIN*2y<-hj?;6≫AG$w;A_CC{2_xHY<2gZ#&@R!GXS*l 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%0DNKE~{M+F{3e4h50CcAVFa^S+9? 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 literal 0 HcmV?d00001 diff --git a/htdocs/theme/common/octicons/lib/octicons.css b/htdocs/theme/common/octicons/lib/octicons.css new file mode 100644 index 00000000000..31d97867a12 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/octicons.css @@ -0,0 +1,5 @@ +.octicon { + display: inline-block; + vertical-align: text-top; + fill: currentColor; +} diff --git a/htdocs/theme/common/octicons/lib/svg/alert.svg b/htdocs/theme/common/octicons/lib/svg/alert.svg new file mode 100644 index 00000000000..3a75a6a4702 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/alert.svg @@ -0,0 +1,12 @@ + + + + alert + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/arrow-down.svg b/htdocs/theme/common/octicons/lib/svg/arrow-down.svg new file mode 100644 index 00000000000..49a04c4b48d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/arrow-down.svg @@ -0,0 +1,12 @@ + + + + arrow-down + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/arrow-left.svg b/htdocs/theme/common/octicons/lib/svg/arrow-left.svg new file mode 100644 index 00000000000..b6153c0eff2 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/arrow-left.svg @@ -0,0 +1,12 @@ + + + + arrow-left + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/arrow-right.svg b/htdocs/theme/common/octicons/lib/svg/arrow-right.svg new file mode 100644 index 00000000000..5d7f96ac2d8 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/arrow-right.svg @@ -0,0 +1,12 @@ + + + + arrow-right + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/arrow-small-down.svg b/htdocs/theme/common/octicons/lib/svg/arrow-small-down.svg new file mode 100644 index 00000000000..bcb668d9c2c --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/arrow-small-down.svg @@ -0,0 +1,12 @@ + + + + arrow-small-down + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/arrow-small-left.svg b/htdocs/theme/common/octicons/lib/svg/arrow-small-left.svg new file mode 100644 index 00000000000..a98f8a13e03 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/arrow-small-left.svg @@ -0,0 +1,12 @@ + + + + arrow-small-left + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/arrow-small-right.svg b/htdocs/theme/common/octicons/lib/svg/arrow-small-right.svg new file mode 100644 index 00000000000..ac121726607 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/arrow-small-right.svg @@ -0,0 +1,12 @@ + + + + arrow-small-right + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/arrow-small-up.svg b/htdocs/theme/common/octicons/lib/svg/arrow-small-up.svg new file mode 100644 index 00000000000..9bd85161df4 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/arrow-small-up.svg @@ -0,0 +1,12 @@ + + + + arrow-small-up + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/arrow-up.svg b/htdocs/theme/common/octicons/lib/svg/arrow-up.svg new file mode 100644 index 00000000000..a015f862bb2 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/arrow-up.svg @@ -0,0 +1,12 @@ + + + + arrow-up + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/beaker.svg b/htdocs/theme/common/octicons/lib/svg/beaker.svg new file mode 100644 index 00000000000..48aa51a85a2 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/beaker.svg @@ -0,0 +1,12 @@ + + + + beaker + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/bell.svg b/htdocs/theme/common/octicons/lib/svg/bell.svg new file mode 100644 index 00000000000..70607e932e7 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/bell.svg @@ -0,0 +1,12 @@ + + + + bell + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/bold.svg b/htdocs/theme/common/octicons/lib/svg/bold.svg new file mode 100644 index 00000000000..a63af7ac7a1 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/bold.svg @@ -0,0 +1,12 @@ + + + + bold + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/book.svg b/htdocs/theme/common/octicons/lib/svg/book.svg new file mode 100644 index 00000000000..76026481ccb --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/book.svg @@ -0,0 +1,12 @@ + + + + book + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/bookmark.svg b/htdocs/theme/common/octicons/lib/svg/bookmark.svg new file mode 100644 index 00000000000..24fe161ed0d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/bookmark.svg @@ -0,0 +1,12 @@ + + + + bookmark + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/briefcase.svg b/htdocs/theme/common/octicons/lib/svg/briefcase.svg new file mode 100644 index 00000000000..ae56b711b3c --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/briefcase.svg @@ -0,0 +1,12 @@ + + + + briefcase + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/broadcast.svg b/htdocs/theme/common/octicons/lib/svg/broadcast.svg new file mode 100644 index 00000000000..491048fb87a --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/broadcast.svg @@ -0,0 +1,12 @@ + + + + broadcast + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/browser.svg b/htdocs/theme/common/octicons/lib/svg/browser.svg new file mode 100644 index 00000000000..5c9251d0f91 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/browser.svg @@ -0,0 +1,12 @@ + + + + browser + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/bug.svg b/htdocs/theme/common/octicons/lib/svg/bug.svg new file mode 100644 index 00000000000..8f515ad1b98 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/bug.svg @@ -0,0 +1,12 @@ + + + + bug + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/calendar.svg b/htdocs/theme/common/octicons/lib/svg/calendar.svg new file mode 100644 index 00000000000..47755281156 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/calendar.svg @@ -0,0 +1,12 @@ + + + + calendar + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/check.svg b/htdocs/theme/common/octicons/lib/svg/check.svg new file mode 100644 index 00000000000..fffa457ac33 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/check.svg @@ -0,0 +1,12 @@ + + + + check + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/checklist.svg b/htdocs/theme/common/octicons/lib/svg/checklist.svg new file mode 100644 index 00000000000..2ba6b100be0 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/checklist.svg @@ -0,0 +1,12 @@ + + + + checklist + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/chevron-down.svg b/htdocs/theme/common/octicons/lib/svg/chevron-down.svg new file mode 100644 index 00000000000..a77c7eae8c0 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/chevron-down.svg @@ -0,0 +1,12 @@ + + + + chevron-down + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/chevron-left.svg b/htdocs/theme/common/octicons/lib/svg/chevron-left.svg new file mode 100644 index 00000000000..d09f2f39e97 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/chevron-left.svg @@ -0,0 +1,12 @@ + + + + chevron-left + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/chevron-right.svg b/htdocs/theme/common/octicons/lib/svg/chevron-right.svg new file mode 100644 index 00000000000..aaaa6f036f3 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/chevron-right.svg @@ -0,0 +1,12 @@ + + + + chevron-right + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/chevron-up.svg b/htdocs/theme/common/octicons/lib/svg/chevron-up.svg new file mode 100644 index 00000000000..4bd14a27c5d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/chevron-up.svg @@ -0,0 +1,12 @@ + + + + chevron-up + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/circle-slash.svg b/htdocs/theme/common/octicons/lib/svg/circle-slash.svg new file mode 100644 index 00000000000..f0f5143a802 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/circle-slash.svg @@ -0,0 +1,12 @@ + + + + circle-slash + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/circuit-board.svg b/htdocs/theme/common/octicons/lib/svg/circuit-board.svg new file mode 100644 index 00000000000..5c4e07e59b1 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/circuit-board.svg @@ -0,0 +1,12 @@ + + + + circuit-board + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/clippy.svg b/htdocs/theme/common/octicons/lib/svg/clippy.svg new file mode 100644 index 00000000000..4001b75a296 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/clippy.svg @@ -0,0 +1,12 @@ + + + + clippy + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/clock.svg b/htdocs/theme/common/octicons/lib/svg/clock.svg new file mode 100644 index 00000000000..fb25a9ac451 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/clock.svg @@ -0,0 +1,12 @@ + + + + clock + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/cloud-download.svg b/htdocs/theme/common/octicons/lib/svg/cloud-download.svg new file mode 100644 index 00000000000..0cd213d57c4 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/cloud-download.svg @@ -0,0 +1,12 @@ + + + + cloud-download + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/cloud-upload.svg b/htdocs/theme/common/octicons/lib/svg/cloud-upload.svg new file mode 100644 index 00000000000..b8c24ce596d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/cloud-upload.svg @@ -0,0 +1,12 @@ + + + + cloud-upload + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/code.svg b/htdocs/theme/common/octicons/lib/svg/code.svg new file mode 100644 index 00000000000..a297c9ba1d6 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/code.svg @@ -0,0 +1,12 @@ + + + + code + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/comment-discussion.svg b/htdocs/theme/common/octicons/lib/svg/comment-discussion.svg new file mode 100644 index 00000000000..85243149efe --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/comment-discussion.svg @@ -0,0 +1,12 @@ + + + + comment-discussion + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/comment.svg b/htdocs/theme/common/octicons/lib/svg/comment.svg new file mode 100644 index 00000000000..55279771463 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/comment.svg @@ -0,0 +1,12 @@ + + + + comment + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/credit-card.svg b/htdocs/theme/common/octicons/lib/svg/credit-card.svg new file mode 100644 index 00000000000..c801be4b18a --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/credit-card.svg @@ -0,0 +1,12 @@ + + + + credit-card + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/dash.svg b/htdocs/theme/common/octicons/lib/svg/dash.svg new file mode 100644 index 00000000000..6c000a991b0 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/dash.svg @@ -0,0 +1,12 @@ + + + + dash + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/dashboard.svg b/htdocs/theme/common/octicons/lib/svg/dashboard.svg new file mode 100644 index 00000000000..7c37b3a6637 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/dashboard.svg @@ -0,0 +1,12 @@ + + + + dashboard + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/database.svg b/htdocs/theme/common/octicons/lib/svg/database.svg new file mode 100644 index 00000000000..f1b798a970c --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/database.svg @@ -0,0 +1,12 @@ + + + + database + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/desktop-download.svg b/htdocs/theme/common/octicons/lib/svg/desktop-download.svg new file mode 100644 index 00000000000..6c9d08d97e0 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/desktop-download.svg @@ -0,0 +1,12 @@ + + + + desktop-download + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/device-camera-video.svg b/htdocs/theme/common/octicons/lib/svg/device-camera-video.svg new file mode 100644 index 00000000000..e8e8167a812 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/device-camera-video.svg @@ -0,0 +1,12 @@ + + + + device-camera-video + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/device-camera.svg b/htdocs/theme/common/octicons/lib/svg/device-camera.svg new file mode 100644 index 00000000000..f0fa4bc7cfd --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/device-camera.svg @@ -0,0 +1,12 @@ + + + + device-camera + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/device-desktop.svg b/htdocs/theme/common/octicons/lib/svg/device-desktop.svg new file mode 100644 index 00000000000..d2cae7ae900 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/device-desktop.svg @@ -0,0 +1,12 @@ + + + + device-desktop + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/device-mobile.svg b/htdocs/theme/common/octicons/lib/svg/device-mobile.svg new file mode 100644 index 00000000000..549767577c0 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/device-mobile.svg @@ -0,0 +1,12 @@ + + + + device-mobile + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/diff-added.svg b/htdocs/theme/common/octicons/lib/svg/diff-added.svg new file mode 100644 index 00000000000..0b1cd1779c3 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/diff-added.svg @@ -0,0 +1,12 @@ + + + + diff-added + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/diff-ignored.svg b/htdocs/theme/common/octicons/lib/svg/diff-ignored.svg new file mode 100644 index 00000000000..bd11f983b1e --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/diff-ignored.svg @@ -0,0 +1,12 @@ + + + + diff-ignored + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/diff-modified.svg b/htdocs/theme/common/octicons/lib/svg/diff-modified.svg new file mode 100644 index 00000000000..03929da650f --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/diff-modified.svg @@ -0,0 +1,12 @@ + + + + diff-modified + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/diff-removed.svg b/htdocs/theme/common/octicons/lib/svg/diff-removed.svg new file mode 100644 index 00000000000..b5c25a3ccc6 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/diff-removed.svg @@ -0,0 +1,12 @@ + + + + diff-removed + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/diff-renamed.svg b/htdocs/theme/common/octicons/lib/svg/diff-renamed.svg new file mode 100644 index 00000000000..3f385f1fab8 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/diff-renamed.svg @@ -0,0 +1,12 @@ + + + + diff-renamed + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/diff.svg b/htdocs/theme/common/octicons/lib/svg/diff.svg new file mode 100644 index 00000000000..0ea237dfbd7 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/diff.svg @@ -0,0 +1,12 @@ + + + + diff + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/ellipses.svg b/htdocs/theme/common/octicons/lib/svg/ellipses.svg new file mode 100644 index 00000000000..cba76eb46dd --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/ellipses.svg @@ -0,0 +1,12 @@ + + + + ellipses + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/ellipsis.svg b/htdocs/theme/common/octicons/lib/svg/ellipsis.svg new file mode 100644 index 00000000000..60acf955383 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/ellipsis.svg @@ -0,0 +1,3 @@ + + + diff --git a/htdocs/theme/common/octicons/lib/svg/eye.svg b/htdocs/theme/common/octicons/lib/svg/eye.svg new file mode 100644 index 00000000000..f2021488709 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/eye.svg @@ -0,0 +1,12 @@ + + + + eye + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-binary.svg b/htdocs/theme/common/octicons/lib/svg/file-binary.svg new file mode 100644 index 00000000000..8efbe8f5d2b --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-binary.svg @@ -0,0 +1,12 @@ + + + + file-binary + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-code.svg b/htdocs/theme/common/octicons/lib/svg/file-code.svg new file mode 100644 index 00000000000..3bc2b299a42 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-code.svg @@ -0,0 +1,12 @@ + + + + file-code + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-directory.svg b/htdocs/theme/common/octicons/lib/svg/file-directory.svg new file mode 100644 index 00000000000..3b0ea6d66cb --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-directory.svg @@ -0,0 +1,12 @@ + + + + file-directory + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-media.svg b/htdocs/theme/common/octicons/lib/svg/file-media.svg new file mode 100644 index 00000000000..db00315d134 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-media.svg @@ -0,0 +1,12 @@ + + + + file-media + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-pdf.svg b/htdocs/theme/common/octicons/lib/svg/file-pdf.svg new file mode 100644 index 00000000000..dcd774e9bc4 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-pdf.svg @@ -0,0 +1,12 @@ + + + + file-pdf + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-submodule.svg b/htdocs/theme/common/octicons/lib/svg/file-submodule.svg new file mode 100644 index 00000000000..aa782e68dff --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-submodule.svg @@ -0,0 +1,12 @@ + + + + file-submodule + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-symlink-directory.svg b/htdocs/theme/common/octicons/lib/svg/file-symlink-directory.svg new file mode 100644 index 00000000000..5d689bec548 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-symlink-directory.svg @@ -0,0 +1,12 @@ + + + + file-symlink-directory + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-symlink-file.svg b/htdocs/theme/common/octicons/lib/svg/file-symlink-file.svg new file mode 100644 index 00000000000..710224295de --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-symlink-file.svg @@ -0,0 +1,12 @@ + + + + file-symlink-file + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file-text.svg b/htdocs/theme/common/octicons/lib/svg/file-text.svg new file mode 100644 index 00000000000..874cf5b9100 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-text.svg @@ -0,0 +1,3 @@ + + + diff --git a/htdocs/theme/common/octicons/lib/svg/file-zip.svg b/htdocs/theme/common/octicons/lib/svg/file-zip.svg new file mode 100644 index 00000000000..c0d0f282fb5 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file-zip.svg @@ -0,0 +1,12 @@ + + + + file-zip + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/file.svg b/htdocs/theme/common/octicons/lib/svg/file.svg new file mode 100644 index 00000000000..a704f0c7118 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/file.svg @@ -0,0 +1,12 @@ + + + + file + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/flame.svg b/htdocs/theme/common/octicons/lib/svg/flame.svg new file mode 100644 index 00000000000..a9b69abaafc --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/flame.svg @@ -0,0 +1,12 @@ + + + + flame + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/fold.svg b/htdocs/theme/common/octicons/lib/svg/fold.svg new file mode 100644 index 00000000000..5446d76a46e --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/fold.svg @@ -0,0 +1,12 @@ + + + + fold + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/gear.svg b/htdocs/theme/common/octicons/lib/svg/gear.svg new file mode 100644 index 00000000000..2fdf75deec1 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/gear.svg @@ -0,0 +1,12 @@ + + + + gear + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/gift.svg b/htdocs/theme/common/octicons/lib/svg/gift.svg new file mode 100644 index 00000000000..1cb9cff4535 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/gift.svg @@ -0,0 +1,12 @@ + + + + gift + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/gist-secret.svg b/htdocs/theme/common/octicons/lib/svg/gist-secret.svg new file mode 100644 index 00000000000..e427060c776 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/gist-secret.svg @@ -0,0 +1,12 @@ + + + + gist-secret + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/gist.svg b/htdocs/theme/common/octicons/lib/svg/gist.svg new file mode 100644 index 00000000000..ff79f169b27 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/gist.svg @@ -0,0 +1,12 @@ + + + + gist + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/git-branch.svg b/htdocs/theme/common/octicons/lib/svg/git-branch.svg new file mode 100644 index 00000000000..0d2e53fd28f --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/git-branch.svg @@ -0,0 +1,12 @@ + + + + git-branch + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/git-commit.svg b/htdocs/theme/common/octicons/lib/svg/git-commit.svg new file mode 100644 index 00000000000..0ee7457f455 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/git-commit.svg @@ -0,0 +1,12 @@ + + + + git-commit + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/git-compare.svg b/htdocs/theme/common/octicons/lib/svg/git-compare.svg new file mode 100644 index 00000000000..6f7481f8293 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/git-compare.svg @@ -0,0 +1,12 @@ + + + + git-compare + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/git-merge.svg b/htdocs/theme/common/octicons/lib/svg/git-merge.svg new file mode 100644 index 00000000000..d0f41029b10 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/git-merge.svg @@ -0,0 +1,12 @@ + + + + git-merge + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/git-pull-request.svg b/htdocs/theme/common/octicons/lib/svg/git-pull-request.svg new file mode 100644 index 00000000000..492dda2ff46 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/git-pull-request.svg @@ -0,0 +1,12 @@ + + + + git-pull-request + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/globe.svg b/htdocs/theme/common/octicons/lib/svg/globe.svg new file mode 100644 index 00000000000..8e9d0196ff2 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/globe.svg @@ -0,0 +1,12 @@ + + + + globe + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/grabber.svg b/htdocs/theme/common/octicons/lib/svg/grabber.svg new file mode 100644 index 00000000000..cd3b15112ca --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/grabber.svg @@ -0,0 +1,12 @@ + + + + grabber + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/graph.svg b/htdocs/theme/common/octicons/lib/svg/graph.svg new file mode 100644 index 00000000000..f72a1875263 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/graph.svg @@ -0,0 +1,12 @@ + + + + graph + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/heart.svg b/htdocs/theme/common/octicons/lib/svg/heart.svg new file mode 100644 index 00000000000..688a14d9a5e --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/heart.svg @@ -0,0 +1,12 @@ + + + + heart + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/history.svg b/htdocs/theme/common/octicons/lib/svg/history.svg new file mode 100644 index 00000000000..77010ba5c6c --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/history.svg @@ -0,0 +1,12 @@ + + + + history + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/home.svg b/htdocs/theme/common/octicons/lib/svg/home.svg new file mode 100644 index 00000000000..d2862e50f48 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/home.svg @@ -0,0 +1,12 @@ + + + + home + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/horizontal-rule.svg b/htdocs/theme/common/octicons/lib/svg/horizontal-rule.svg new file mode 100644 index 00000000000..cf444e7b3d2 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/horizontal-rule.svg @@ -0,0 +1,12 @@ + + + + horizontal-rule + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/hubot.svg b/htdocs/theme/common/octicons/lib/svg/hubot.svg new file mode 100644 index 00000000000..d2fb9ad052b --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/hubot.svg @@ -0,0 +1,12 @@ + + + + hubot + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/inbox.svg b/htdocs/theme/common/octicons/lib/svg/inbox.svg new file mode 100644 index 00000000000..1b288f2570f --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/inbox.svg @@ -0,0 +1,12 @@ + + + + inbox + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/info.svg b/htdocs/theme/common/octicons/lib/svg/info.svg new file mode 100644 index 00000000000..7c6de3ebd66 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/info.svg @@ -0,0 +1,12 @@ + + + + info + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/issue-closed.svg b/htdocs/theme/common/octicons/lib/svg/issue-closed.svg new file mode 100644 index 00000000000..f06480bb847 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/issue-closed.svg @@ -0,0 +1,12 @@ + + + + issue-closed + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/issue-opened.svg b/htdocs/theme/common/octicons/lib/svg/issue-opened.svg new file mode 100644 index 00000000000..d8ba7c46c35 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/issue-opened.svg @@ -0,0 +1,12 @@ + + + + issue-opened + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/issue-reopened.svg b/htdocs/theme/common/octicons/lib/svg/issue-reopened.svg new file mode 100644 index 00000000000..1d5eab6bdba --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/issue-reopened.svg @@ -0,0 +1,12 @@ + + + + issue-reopened + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/italic.svg b/htdocs/theme/common/octicons/lib/svg/italic.svg new file mode 100644 index 00000000000..d488293cbe0 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/italic.svg @@ -0,0 +1,12 @@ + + + + italic + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/jersey.svg b/htdocs/theme/common/octicons/lib/svg/jersey.svg new file mode 100644 index 00000000000..56e85ee4cd8 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/jersey.svg @@ -0,0 +1,12 @@ + + + + jersey + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/key.svg b/htdocs/theme/common/octicons/lib/svg/key.svg new file mode 100644 index 00000000000..bc3b52382af --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/key.svg @@ -0,0 +1,12 @@ + + + + key + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/keyboard.svg b/htdocs/theme/common/octicons/lib/svg/keyboard.svg new file mode 100644 index 00000000000..77aa0f5fe04 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/keyboard.svg @@ -0,0 +1,12 @@ + + + + keyboard + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/law.svg b/htdocs/theme/common/octicons/lib/svg/law.svg new file mode 100644 index 00000000000..0b144363d9a --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/law.svg @@ -0,0 +1,12 @@ + + + + law + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/light-bulb.svg b/htdocs/theme/common/octicons/lib/svg/light-bulb.svg new file mode 100644 index 00000000000..364cb691527 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/light-bulb.svg @@ -0,0 +1,12 @@ + + + + light-bulb + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/link-external.svg b/htdocs/theme/common/octicons/lib/svg/link-external.svg new file mode 100644 index 00000000000..e4d0aecb71a --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/link-external.svg @@ -0,0 +1,12 @@ + + + + link-external + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/link.svg b/htdocs/theme/common/octicons/lib/svg/link.svg new file mode 100644 index 00000000000..b28cf283854 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/link.svg @@ -0,0 +1,12 @@ + + + + link + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/list-ordered.svg b/htdocs/theme/common/octicons/lib/svg/list-ordered.svg new file mode 100644 index 00000000000..16f458cbfe6 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/list-ordered.svg @@ -0,0 +1,12 @@ + + + + list-ordered + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/list-unordered.svg b/htdocs/theme/common/octicons/lib/svg/list-unordered.svg new file mode 100644 index 00000000000..e0fce86f0b1 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/list-unordered.svg @@ -0,0 +1,12 @@ + + + + list-unordered + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/location.svg b/htdocs/theme/common/octicons/lib/svg/location.svg new file mode 100644 index 00000000000..2bb33c679b6 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/location.svg @@ -0,0 +1,12 @@ + + + + location + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/lock.svg b/htdocs/theme/common/octicons/lib/svg/lock.svg new file mode 100644 index 00000000000..3e81d98ee0d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/lock.svg @@ -0,0 +1,12 @@ + + + + lock + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/logo-gist.svg b/htdocs/theme/common/octicons/lib/svg/logo-gist.svg new file mode 100644 index 00000000000..c95f58fc0cc --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/logo-gist.svg @@ -0,0 +1,12 @@ + + + + logo-gist + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/logo-github.svg b/htdocs/theme/common/octicons/lib/svg/logo-github.svg new file mode 100644 index 00000000000..bb6c20a7b01 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/logo-github.svg @@ -0,0 +1,12 @@ + + + + logo-github + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/mail-read.svg b/htdocs/theme/common/octicons/lib/svg/mail-read.svg new file mode 100644 index 00000000000..9a6ee16730d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/mail-read.svg @@ -0,0 +1,12 @@ + + + + mail-read + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/mail-reply.svg b/htdocs/theme/common/octicons/lib/svg/mail-reply.svg new file mode 100644 index 00000000000..03c8212f636 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/mail-reply.svg @@ -0,0 +1,12 @@ + + + + mail-reply + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/mail.svg b/htdocs/theme/common/octicons/lib/svg/mail.svg new file mode 100644 index 00000000000..1ff97533bb5 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/mail.svg @@ -0,0 +1,12 @@ + + + + mail + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/mark-github.svg b/htdocs/theme/common/octicons/lib/svg/mark-github.svg new file mode 100644 index 00000000000..2bda9afa081 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/mark-github.svg @@ -0,0 +1,12 @@ + + + + mark-github + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/markdown.svg b/htdocs/theme/common/octicons/lib/svg/markdown.svg new file mode 100644 index 00000000000..fb33c140c80 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/markdown.svg @@ -0,0 +1,12 @@ + + + + markdown + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/megaphone.svg b/htdocs/theme/common/octicons/lib/svg/megaphone.svg new file mode 100644 index 00000000000..e8f10228767 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/megaphone.svg @@ -0,0 +1,12 @@ + + + + megaphone + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/mention.svg b/htdocs/theme/common/octicons/lib/svg/mention.svg new file mode 100644 index 00000000000..f82be86a72a --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/mention.svg @@ -0,0 +1,12 @@ + + + + mention + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/milestone.svg b/htdocs/theme/common/octicons/lib/svg/milestone.svg new file mode 100644 index 00000000000..829bba95ef5 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/milestone.svg @@ -0,0 +1,12 @@ + + + + milestone + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/mirror.svg b/htdocs/theme/common/octicons/lib/svg/mirror.svg new file mode 100644 index 00000000000..39055e601eb --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/mirror.svg @@ -0,0 +1,12 @@ + + + + mirror + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/mortar-board.svg b/htdocs/theme/common/octicons/lib/svg/mortar-board.svg new file mode 100644 index 00000000000..ee3b5f8b9a3 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/mortar-board.svg @@ -0,0 +1,12 @@ + + + + mortar-board + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/mute.svg b/htdocs/theme/common/octicons/lib/svg/mute.svg new file mode 100644 index 00000000000..f29643f227d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/mute.svg @@ -0,0 +1,12 @@ + + + + mute + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/no-newline.svg b/htdocs/theme/common/octicons/lib/svg/no-newline.svg new file mode 100644 index 00000000000..fae7c4fe789 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/no-newline.svg @@ -0,0 +1,12 @@ + + + + no-newline + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/note.svg b/htdocs/theme/common/octicons/lib/svg/note.svg new file mode 100644 index 00000000000..49c1a3892b3 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/note.svg @@ -0,0 +1,12 @@ + + + + note + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/octoface.svg b/htdocs/theme/common/octicons/lib/svg/octoface.svg new file mode 100644 index 00000000000..87aadac2360 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/octoface.svg @@ -0,0 +1,12 @@ + + + + octoface + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/organization.svg b/htdocs/theme/common/octicons/lib/svg/organization.svg new file mode 100644 index 00000000000..51cb253acfa --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/organization.svg @@ -0,0 +1,12 @@ + + + + organization + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/package.svg b/htdocs/theme/common/octicons/lib/svg/package.svg new file mode 100644 index 00000000000..cb41bcf6a03 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/package.svg @@ -0,0 +1,12 @@ + + + + package + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/paintcan.svg b/htdocs/theme/common/octicons/lib/svg/paintcan.svg new file mode 100644 index 00000000000..387195bff62 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/paintcan.svg @@ -0,0 +1,12 @@ + + + + paintcan + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/pencil.svg b/htdocs/theme/common/octicons/lib/svg/pencil.svg new file mode 100644 index 00000000000..354df31f3f2 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/pencil.svg @@ -0,0 +1,12 @@ + + + + pencil + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/person.svg b/htdocs/theme/common/octicons/lib/svg/person.svg new file mode 100644 index 00000000000..a26225e1c4a --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/person.svg @@ -0,0 +1,12 @@ + + + + person + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/pin.svg b/htdocs/theme/common/octicons/lib/svg/pin.svg new file mode 100644 index 00000000000..d08cb652dd1 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/pin.svg @@ -0,0 +1,12 @@ + + + + pin + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/plug.svg b/htdocs/theme/common/octicons/lib/svg/plug.svg new file mode 100644 index 00000000000..8f4ee9f46ba --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/plug.svg @@ -0,0 +1,12 @@ + + + + plug + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/plus-small.svg b/htdocs/theme/common/octicons/lib/svg/plus-small.svg new file mode 100644 index 00000000000..ccb9d2d6256 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/plus-small.svg @@ -0,0 +1,12 @@ + + + + plus-small + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/plus.svg b/htdocs/theme/common/octicons/lib/svg/plus.svg new file mode 100644 index 00000000000..3882ee5a1c7 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/plus.svg @@ -0,0 +1,12 @@ + + + + plus + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/primitive-dot.svg b/htdocs/theme/common/octicons/lib/svg/primitive-dot.svg new file mode 100644 index 00000000000..b9a2f416c28 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/primitive-dot.svg @@ -0,0 +1,12 @@ + + + + primitive-dot + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/primitive-square.svg b/htdocs/theme/common/octicons/lib/svg/primitive-square.svg new file mode 100644 index 00000000000..361b7c383ac --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/primitive-square.svg @@ -0,0 +1,12 @@ + + + + primitive-square + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/project.svg b/htdocs/theme/common/octicons/lib/svg/project.svg new file mode 100644 index 00000000000..606672f3f52 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/project.svg @@ -0,0 +1,12 @@ + + + + project + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/pulse.svg b/htdocs/theme/common/octicons/lib/svg/pulse.svg new file mode 100644 index 00000000000..a17f9c00d3a --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/pulse.svg @@ -0,0 +1,12 @@ + + + + pulse + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/question.svg b/htdocs/theme/common/octicons/lib/svg/question.svg new file mode 100644 index 00000000000..554fc5bf02c --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/question.svg @@ -0,0 +1,12 @@ + + + + question + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/quote.svg b/htdocs/theme/common/octicons/lib/svg/quote.svg new file mode 100644 index 00000000000..882882f0fbd --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/quote.svg @@ -0,0 +1,12 @@ + + + + quote + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/radio-tower.svg b/htdocs/theme/common/octicons/lib/svg/radio-tower.svg new file mode 100644 index 00000000000..6f27ab3d9ce --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/radio-tower.svg @@ -0,0 +1,12 @@ + + + + radio-tower + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/reply.svg b/htdocs/theme/common/octicons/lib/svg/reply.svg new file mode 100644 index 00000000000..7dbde79bfa5 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/reply.svg @@ -0,0 +1,12 @@ + + + + reply + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/repo-clone.svg b/htdocs/theme/common/octicons/lib/svg/repo-clone.svg new file mode 100644 index 00000000000..8fb3ea1688d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/repo-clone.svg @@ -0,0 +1,12 @@ + + + + repo-clone + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/repo-force-push.svg b/htdocs/theme/common/octicons/lib/svg/repo-force-push.svg new file mode 100644 index 00000000000..a9cb1d62609 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/repo-force-push.svg @@ -0,0 +1,12 @@ + + + + repo-force-push + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/repo-forked.svg b/htdocs/theme/common/octicons/lib/svg/repo-forked.svg new file mode 100644 index 00000000000..b1db2556a49 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/repo-forked.svg @@ -0,0 +1,12 @@ + + + + repo-forked + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/repo-pull.svg b/htdocs/theme/common/octicons/lib/svg/repo-pull.svg new file mode 100644 index 00000000000..9ca11006c80 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/repo-pull.svg @@ -0,0 +1,12 @@ + + + + repo-pull + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/repo-push.svg b/htdocs/theme/common/octicons/lib/svg/repo-push.svg new file mode 100644 index 00000000000..be7433ce792 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/repo-push.svg @@ -0,0 +1,12 @@ + + + + repo-push + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/repo.svg b/htdocs/theme/common/octicons/lib/svg/repo.svg new file mode 100644 index 00000000000..613f72d52f3 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/repo.svg @@ -0,0 +1,12 @@ + + + + repo + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/rocket.svg b/htdocs/theme/common/octicons/lib/svg/rocket.svg new file mode 100644 index 00000000000..1f227b7dae8 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/rocket.svg @@ -0,0 +1,12 @@ + + + + rocket + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/rss.svg b/htdocs/theme/common/octicons/lib/svg/rss.svg new file mode 100644 index 00000000000..6d82aaf8c20 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/rss.svg @@ -0,0 +1,12 @@ + + + + rss + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/ruby.svg b/htdocs/theme/common/octicons/lib/svg/ruby.svg new file mode 100644 index 00000000000..fff3baf760c --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/ruby.svg @@ -0,0 +1,12 @@ + + + + ruby + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/screen-full.svg b/htdocs/theme/common/octicons/lib/svg/screen-full.svg new file mode 100644 index 00000000000..302ef1725d4 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/screen-full.svg @@ -0,0 +1,12 @@ + + + + screen-full + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/screen-normal.svg b/htdocs/theme/common/octicons/lib/svg/screen-normal.svg new file mode 100644 index 00000000000..e144fc5a04d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/screen-normal.svg @@ -0,0 +1,12 @@ + + + + screen-normal + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/search.svg b/htdocs/theme/common/octicons/lib/svg/search.svg new file mode 100644 index 00000000000..547eb505ef6 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/search.svg @@ -0,0 +1,12 @@ + + + + search + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/server.svg b/htdocs/theme/common/octicons/lib/svg/server.svg new file mode 100644 index 00000000000..3f439fd5a7c --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/server.svg @@ -0,0 +1,12 @@ + + + + server + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/settings.svg b/htdocs/theme/common/octicons/lib/svg/settings.svg new file mode 100644 index 00000000000..70f860c411e --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/settings.svg @@ -0,0 +1,12 @@ + + + + settings + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/shield.svg b/htdocs/theme/common/octicons/lib/svg/shield.svg new file mode 100644 index 00000000000..f83a8d0c549 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/shield.svg @@ -0,0 +1,12 @@ + + + + shield + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/sign-in.svg b/htdocs/theme/common/octicons/lib/svg/sign-in.svg new file mode 100644 index 00000000000..99bc42b6ccc --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/sign-in.svg @@ -0,0 +1,12 @@ + + + + sign-in + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/sign-out.svg b/htdocs/theme/common/octicons/lib/svg/sign-out.svg new file mode 100644 index 00000000000..dca0faa5cb9 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/sign-out.svg @@ -0,0 +1,12 @@ + + + + sign-out + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/smiley.svg b/htdocs/theme/common/octicons/lib/svg/smiley.svg new file mode 100644 index 00000000000..6041ee91f61 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/smiley.svg @@ -0,0 +1,12 @@ + + + + smiley + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/squirrel.svg b/htdocs/theme/common/octicons/lib/svg/squirrel.svg new file mode 100644 index 00000000000..0cff65843f9 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/squirrel.svg @@ -0,0 +1,12 @@ + + + + squirrel + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/star.svg b/htdocs/theme/common/octicons/lib/svg/star.svg new file mode 100644 index 00000000000..9d8ca6a7fc0 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/star.svg @@ -0,0 +1,12 @@ + + + + star + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/stop.svg b/htdocs/theme/common/octicons/lib/svg/stop.svg new file mode 100644 index 00000000000..bc74f95f8d7 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/stop.svg @@ -0,0 +1,12 @@ + + + + stop + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/sync.svg b/htdocs/theme/common/octicons/lib/svg/sync.svg new file mode 100644 index 00000000000..59b5f3c4000 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/sync.svg @@ -0,0 +1,12 @@ + + + + sync + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/tag.svg b/htdocs/theme/common/octicons/lib/svg/tag.svg new file mode 100644 index 00000000000..1b425c8a69d --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/tag.svg @@ -0,0 +1,12 @@ + + + + tag + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/tasklist.svg b/htdocs/theme/common/octicons/lib/svg/tasklist.svg new file mode 100644 index 00000000000..e9291f70a26 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/tasklist.svg @@ -0,0 +1,12 @@ + + + + tasklist + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/telescope.svg b/htdocs/theme/common/octicons/lib/svg/telescope.svg new file mode 100644 index 00000000000..961891fcf90 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/telescope.svg @@ -0,0 +1,12 @@ + + + + telescope + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/terminal.svg b/htdocs/theme/common/octicons/lib/svg/terminal.svg new file mode 100644 index 00000000000..9980e86827f --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/terminal.svg @@ -0,0 +1,12 @@ + + + + terminal + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/text-size.svg b/htdocs/theme/common/octicons/lib/svg/text-size.svg new file mode 100644 index 00000000000..9c40dd04ab3 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/text-size.svg @@ -0,0 +1,12 @@ + + + + text-size + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/three-bars.svg b/htdocs/theme/common/octicons/lib/svg/three-bars.svg new file mode 100644 index 00000000000..585dfeee331 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/three-bars.svg @@ -0,0 +1,12 @@ + + + + three-bars + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/thumbsdown.svg b/htdocs/theme/common/octicons/lib/svg/thumbsdown.svg new file mode 100644 index 00000000000..e0e642d9455 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/thumbsdown.svg @@ -0,0 +1,12 @@ + + + + thumbsdown + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/thumbsup.svg b/htdocs/theme/common/octicons/lib/svg/thumbsup.svg new file mode 100644 index 00000000000..a9bc8529976 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/thumbsup.svg @@ -0,0 +1,12 @@ + + + + thumbsup + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/tools.svg b/htdocs/theme/common/octicons/lib/svg/tools.svg new file mode 100644 index 00000000000..52aafd2555e --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/tools.svg @@ -0,0 +1,12 @@ + + + + tools + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/trashcan.svg b/htdocs/theme/common/octicons/lib/svg/trashcan.svg new file mode 100644 index 00000000000..4a4ad77d458 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/trashcan.svg @@ -0,0 +1,12 @@ + + + + trashcan + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/triangle-down.svg b/htdocs/theme/common/octicons/lib/svg/triangle-down.svg new file mode 100644 index 00000000000..dba0fc4ac70 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/triangle-down.svg @@ -0,0 +1,12 @@ + + + + triangle-down + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/triangle-left.svg b/htdocs/theme/common/octicons/lib/svg/triangle-left.svg new file mode 100644 index 00000000000..7011b15bbe2 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/triangle-left.svg @@ -0,0 +1,12 @@ + + + + triangle-left + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/triangle-right.svg b/htdocs/theme/common/octicons/lib/svg/triangle-right.svg new file mode 100644 index 00000000000..8abb5e92e25 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/triangle-right.svg @@ -0,0 +1,12 @@ + + + + triangle-right + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/triangle-up.svg b/htdocs/theme/common/octicons/lib/svg/triangle-up.svg new file mode 100644 index 00000000000..e6488cf35f3 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/triangle-up.svg @@ -0,0 +1,12 @@ + + + + triangle-up + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/unfold.svg b/htdocs/theme/common/octicons/lib/svg/unfold.svg new file mode 100644 index 00000000000..3f40744b9d9 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/unfold.svg @@ -0,0 +1,12 @@ + + + + unfold + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/unmute.svg b/htdocs/theme/common/octicons/lib/svg/unmute.svg new file mode 100644 index 00000000000..71a5624a738 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/unmute.svg @@ -0,0 +1,12 @@ + + + + unmute + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/unverified.svg b/htdocs/theme/common/octicons/lib/svg/unverified.svg new file mode 100644 index 00000000000..c91b44e5f4a --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/unverified.svg @@ -0,0 +1,12 @@ + + + + unverified + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/verified.svg b/htdocs/theme/common/octicons/lib/svg/verified.svg new file mode 100644 index 00000000000..c0c0a7223e5 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/verified.svg @@ -0,0 +1,12 @@ + + + + verified + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/versions.svg b/htdocs/theme/common/octicons/lib/svg/versions.svg new file mode 100644 index 00000000000..62b9c199811 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/versions.svg @@ -0,0 +1,12 @@ + + + + versions + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/watch.svg b/htdocs/theme/common/octicons/lib/svg/watch.svg new file mode 100644 index 00000000000..705f441ae5f --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/watch.svg @@ -0,0 +1,12 @@ + + + + watch + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/x.svg b/htdocs/theme/common/octicons/lib/svg/x.svg new file mode 100644 index 00000000000..51466da25a4 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/x.svg @@ -0,0 +1,12 @@ + + + + x + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/lib/svg/zap.svg b/htdocs/theme/common/octicons/lib/svg/zap.svg new file mode 100644 index 00000000000..95641465029 --- /dev/null +++ b/htdocs/theme/common/octicons/lib/svg/zap.svg @@ -0,0 +1,12 @@ + + + + zap + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/htdocs/theme/common/octicons/package.json b/htdocs/theme/common/octicons/package.json new file mode 100644 index 00000000000..61def286fac --- /dev/null +++ b/htdocs/theme/common/octicons/package.json @@ -0,0 +1,39 @@ +{ + "version": "5.0.1", + "name": "octicons", + "description": "A scalable set of icons handcrafted with <3 by GitHub.", + "homepage": "https://octicons.github.com", + "author": "GitHub Inc.", + "license": "(OFL-1.1 OR MIT)", + "style": "build/octicons.css", + "main": "index.js", + "files": [ + "index.js", + "build" + ], + "repository": "https://github.com/primer/octicons.git", + "bugs": { + "url": "https://github.com/primer/octicons/issues" + }, + "scripts": { + "build": "grunt", + "prepublish": "npm run build", + "test": "npm run build && ava --verbose \"test/**/*.js\"" + }, + "devDependencies": { + "autoprefixer": "^6.3.6", + "ava": "^0.16.0", + "grunt": "^1.0.1", + "grunt-contrib-clean": "^1.0.0", + "grunt-contrib-copy": "^1.0.0", + "grunt-cssnano": "^2.1.0", + "grunt-svgmin": "^4.0.0", + "grunt-svgstore": "^1.0.0" + }, + "keywords": [ + "GitHub", + "icons", + "svg", + "octicons" + ] +} From 579d3505998ce3a651d3d7647ff7c5c9442b14f9 Mon Sep 17 00:00:00 2001 From: phf Date: Thu, 9 Feb 2017 17:41:06 +0100 Subject: [PATCH 0247/1163] Fix keep the standard behaviour --- htdocs/compta/facture.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index f431b1bf344..d4ce37ce408 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -1063,7 +1063,9 @@ if (empty($reshook)) } if ($totalamount != 0) { - $amountdeposit[] = ($totalamount * $valuedeposit) / 100; + $amountdeposit[$lines[$i]->tva] = ($totalamount * $valuedeposit) / 100; + } else { + $amountdeposit[] = 0; } } else { setEventMessages($srcobject->error, $srcobject->errors, 'errors'); From 2184eabe2f1e8657b6cc23e3be5f7fb2bb60710f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 9 Feb 2017 22:02:37 +0100 Subject: [PATCH 0248/1163] Fix english --- build/pad/pad_dolibarr.xml | 4 ++-- build/pad/pad_dolibarr_nos.xml | 4 ++-- build/pad/pad_doliwamp.xml | 2 +- build/pad/pad_doliwamp_nos.xml | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build/pad/pad_dolibarr.xml b/build/pad/pad_dolibarr.xml index 999b8db5142..77318eeb2d2 100644 --- a/build/pad/pad_dolibarr.xml +++ b/build/pad/pad_dolibarr.xml @@ -71,8 +71,8 @@ Dolibarr ERP & CRM Dolibarr ERP & CRM, the easy to use open source software to manage your activity Dolibarr ERP & CRM, the easy to use open source software to manage your activity (invoices, customers, suppliers, contracts, agenda, emailings...) and any other things a small or mid-sized business or a foundation needs to manage. - Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or medium companies, freelancers or foundations. We can say Dolibarr is an ERP or CRM. Dolibarr is also available with an auto-installer for Windows users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. See DoliWamp software for this. - Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations. We can say Dolibarr is an ERP or CRM (or both depending on activated modules). It's an OpenSource project base on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems). Dolibarr differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: + Dolibarr ERP & CRM is a software package built by modules addition (you enable only features you need), to manage small or medium companies, freelancers or foundations. We can say Dolibarr is an ERP or CRM. Dolibarr is also available with an auto-installer for Windows users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. See DoliWamp software for this. + Dolibarr ERP & CRM is a software package built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations. We can say Dolibarr is an ERP or CRM (or both depending on activated modules). It's an OpenSource project base on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems). Dolibarr differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, Odoo, Neogia, Compiere, etc) because everything was made to be more simple: Simple to install Simple to use Simple to develop diff --git a/build/pad/pad_dolibarr_nos.xml b/build/pad/pad_dolibarr_nos.xml index 8effe4b771a..6d81793de79 100644 --- a/build/pad/pad_dolibarr_nos.xml +++ b/build/pad/pad_dolibarr_nos.xml @@ -71,8 +71,8 @@ Dolibarr ERP & CRM Dolibarr ERP & CRM, the easy to use open source software to manage your activity Dolibarr ERP & CRM, the easy to use open source software to manage your activity (invoices, customers, suppliers, contracts, agenda, emailings...) and any other things a small or mid-sized business or a foundation needs to manage. - Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or medium companies, freelancers or foundations. We can say Dolibarr is an ERP or CRM. Dolibarr is also available with an auto-installer for Windows users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. See DoliWamp software for this. - Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations. We can say Dolibarr is an ERP or CRM (or both depending on activated modules). It's an OpenSource project base on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems). Dolibarr differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: + Dolibarr ERP & CRM is a software package built by modules addition (you enable only features you need), to manage small or medium companies, freelancers or foundations. We can say Dolibarr is an ERP or CRM. Dolibarr is also available with an auto-installer for Windows users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. See DoliWamp software for this. + Dolibarr ERP & CRM is a software package built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations. We can say Dolibarr is an ERP or CRM (or both depending on activated modules). It's an OpenSource project base on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems). Dolibarr differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: Simple to install Simple to use Simple to develop diff --git a/build/pad/pad_doliwamp.xml b/build/pad/pad_doliwamp.xml index 06eaec3af98..842d746dbcc 100644 --- a/build/pad/pad_doliwamp.xml +++ b/build/pad/pad_doliwamp.xml @@ -72,7 +72,7 @@ DoliWamp, the easy to use Dolibarr for Windows to manage your company,foundation DoliWamp is the Dolibarr ERP/CRM for Windows, the easy to use open source software to manage your activity (invoices, customers, suppliers, contracts, agenda, emailings...) and any other things a small or mid-sized business or a foundation needs. DoliWamp is the Dolibarr ERP/CRM autoinstaller for Windows users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. Dolibarr ERP/CRM is a software package built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations. - DoliWamp is the Dolibarr ERP/CRM for Windows. Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations (You can manage or follow contacts, invoices, orders, commercial proposals, products, stock management, agenda, mass emailings, members of a foundation, bank accounts...). Based on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems), you can install it as a standalone program or use it from anywhere with any web browser. Dolibarr is an OpenSource project. It differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: Simple to install, Simple to use, Simple to develop. + DoliWamp is the Dolibarr ERP/CRM for Windows. Dolibarr ERP & CRM is a software package built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations (You can manage or follow contacts, invoices, orders, commercial proposals, products, stock management, agenda, mass emailings, members of a foundation, bank accounts...). Based on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems), you can install it as a standalone program or use it from anywhere with any web browser. Dolibarr is an OpenSource project. It differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: Simple to install, Simple to use, Simple to develop. DoliWamp is the auto-installer for Windows users with no technical knowledge to install Dolibarr ERP/CRM and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. diff --git a/build/pad/pad_doliwamp_nos.xml b/build/pad/pad_doliwamp_nos.xml index 4f7981a4314..61c739daff0 100644 --- a/build/pad/pad_doliwamp_nos.xml +++ b/build/pad/pad_doliwamp_nos.xml @@ -72,7 +72,7 @@ DoliWamp, the easy to use Dolibarr for Windows to manage your company,foundation DoliWamp is the Dolibarr ERP/CRM for Windows, the easy to use open source software to manage your activity (invoices, customers, suppliers, contracts, agenda, emailings...) and any other things a small or mid-sized business or a foundation needs. DoliWamp is the Dolibarr ERP/CRM autoinstaller for Windows users with no technical knowledge to install Dolibarr and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. Dolibarr ERP/CRM is a software package built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations. - DoliWamp is the Dolibarr ERP/CRM for Windows. Dolibarr ERP & CRM is a software built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations (You can manage or follow contacts, invoices, orders, commercial proposals, products, stock management, agenda, mass emailings, members of a foundation, bank accounts...). Based on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems), you can install it as a standalone program or use it from anywhere with any web browser. Dolibarr is an OpenSource project. It differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: Simple to install, Simple to use, Simple to develop. + DoliWamp is the Dolibarr ERP/CRM for Windows. Dolibarr ERP & CRM is a software package built by modules addition (you enable only features you need), to manage small or mid-sized businesses, freelancers or foundations (You can manage or follow contacts, invoices, orders, commercial proposals, products, stock management, agenda, mass emailings, members of a foundation, bank accounts...). Based on a WAMP, MAMP or LAMP server (Apache, Mysql, PHP for all Operating Systems), you can install it as a standalone program or use it from anywhere with any web browser. Dolibarr is an OpenSource project. It differs from other ERP or CRM softwares (like OpenAguila, OpenBravo, OpenERP, Neogia, Compiere, etc) because everything was made to be more simple: Simple to install, Simple to use, Simple to develop. DoliWamp is the auto-installer for Windows users with no technical knowledge to install Dolibarr ERP/CRM and all its prerequisites (Apache, Mysql, PHP) with just one auto-exe file. From 4fb4bc6f6cf51332a5776acfe9ce87e689ad51b6 Mon Sep 17 00:00:00 2001 From: De Coninck Laurent Date: Fri, 10 Feb 2017 10:20:32 +0100 Subject: [PATCH 0249/1163] [FIX] Dictionnaries without rowid It's possible to create a dictionnary without the key rowid. But in that case it's impossible to enable/disable the value because the dictionnary fonctionality uses always rowid even another primary key is defined. By this fix, the id property uses is the primary key defined on the dictionnary creation. --- htdocs/admin/dict.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 09ee313e487..2bb0bbe15dc 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -1537,7 +1537,8 @@ if ($id) $canbemodified=$iserasable; if ($obj->code == 'RECEP') $canbemodified=1; - $url = $_SERVER["PHP_SELF"].'?'.($page?'page='.$page.'&':'').'sortfield='.$sortfield.'&sortorder='.$sortorder.'&rowid='.(! empty($obj->rowid)?$obj->rowid:(! empty($obj->code)?$obj->code:'')).'&code='.(! empty($obj->code)?urlencode($obj->code):''); + $rowidcol=$tabrowid[$id]; + $url = $_SERVER["PHP_SELF"].'?'.($page?'page='.$page.'&':'').'sortfield='.$sortfield.'&sortorder='.$sortorder.'&rowid='.(! empty($obj->{$rowidcol})?$obj->{$rowidcol}:(! empty($obj->code)?$obj->code:'')).'&code='.(! empty($obj->code)?urlencode($obj->code):''); if ($param) $url .= '&'.$param; $url.='&'; From 44ab6ad9b7af0c6fa327dd846f1c90ca5b899d9c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 10 Feb 2017 17:05:45 +0100 Subject: [PATCH 0250/1163] NEW Can control constants values into file integrity checker --- build/generate_filelist_xml.php | 65 ++++++++++++++++++++++--------- htdocs/admin/system/filecheck.php | 46 ++++++++++++++++++++++ htdocs/langs/en_US/admin.lang | 1 + htdocs/langs/en_US/main.lang | 2 + 4 files changed, 95 insertions(+), 19 deletions(-) diff --git a/build/generate_filelist_xml.php b/build/generate_filelist_xml.php index 01809439bf1..36ea0e9542b 100755 --- a/build/generate_filelist_xml.php +++ b/build/generate_filelist_xml.php @@ -1,6 +1,6 @@ #!/usr/bin/env php +/* Copyright (C) 2015-2017 Laurent Destailleur * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -40,21 +40,33 @@ require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); * Main */ +$includeconstants=array(); + if (empty($argv[1])) { - print "Usage: ".$script_file." release=x.y.z[-...] [includecustom=1]\n"; + print "Usage: ".$script_file." release=x.y.z[-...] [includecustom=1] [includeconstant=MY_CONF_NAME:value]\n"; + print "Example: ".$script_file." release=6.0.0 includecustom=1 includeconstant=INVOICE_CAN_ALWAYS_BE_REMOVED:0 includeconstant=MAILING_NO_USING_PHPMAIL:1\n"; exit -1; } -parse_str($argv[1]); -if (! empty($argv[2])) parse_str($argv[2]); +$i=0; +while ($i < $argc) +{ + if (! empty($argv[$i])) parse_str($argv[$i]); + if (preg_match('/includeconstant=/',$argv[$i])) + { + $tmp=explode(':', $includeconstant); + if (count($tmp) == 2) $includeconstants[$tmp[0]] = $tmp[1]; + } + $i++; +} -if (empty($includecustom)) +if (empty($includecustom)) { $includecustom=0; - + if (DOL_VERSION != $release) { - print 'Error: When parameter "includecustom" is not set, version declared into filefunc.in.php ('.DOL_VERSION.') must be exact same value than "release" parmater.'."\n"; + print 'Error: When parameter "includecustom" is not set, version declared into filefunc.in.php ('.DOL_VERSION.') must be exact same value than "release" parameter ('.$release.')'."\n"; print "Usage: ".$script_file." release=x.y.z[-...] [includecustom=1]\n"; exit -1; } @@ -69,22 +81,37 @@ else } } -print "Version: ".$release."\n"; -print "Include custom: ".$includecustom."\n"; +print "Release : ".$release."\n"; +print "Include custom : ".$includecustom."\n"; +print "Include constants: "; +foreach ($includeconstants as $constname => $constvalue) +{ + print $constname.'='.$constvalue." "; +} +print "\n"; //$outputfile=dirname(__FILE__).'/../htdocs/install/filelist-'.$release.'.xml'; $outputdir=dirname(__FILE__).'/../htdocs/install'; print 'Delete current files '.$outputdir.'/filelist-'.$release.'.xml'."\n"; dol_delete_file($outputdir.'/filelist-'.$release.'.xml',0,1,1); +$checksumconcat=array(); + $outputfile=$outputdir.'/filelist-'.$release.'.xml'; $fp = fopen($outputfile,'w'); fputs($fp, ''."\n"); fputs($fp, ''."\n"); -fputs($fp, ''."\n"); +fputs($fp, ''."\n"); +foreach($includeconstants as $constname => $constvalue) +{ + $valueforchecksum=(empty($constvalue)?'0':$constvalue); + $checksumconcat[]=$valueforchecksum; + fputs($fp, ' '.$valueforchecksum.''."\n"); +} +fputs($fp, ''."\n"); -$checksumconcat=array(); +fputs($fp, ''."\n"); // TODO Replace RecursiveDirectoryIterator with dol_dir_list $dir_iterator1 = new RecursiveDirectoryIterator(dirname(__FILE__).'/../htdocs/'); @@ -97,18 +124,18 @@ foreach ($files as $file) { $newdir = str_replace(dirname(__FILE__).'/../htdocs', '', dirname($file)); if ($newdir!=$dir) { if ($needtoclose) - fputs($fp, ''."\n"); - fputs($fp, '

    '."\n"); + fputs($fp, ' '."\n"); + fputs($fp, ' '."\n"); $dir = $newdir; $needtoclose=1; } if (filetype($file)=="file") { $md5=md5_file($file); $checksumconcat[]=$md5; - fputs($fp, ''.$md5.''."\n"); + fputs($fp, ' '.$md5.''."\n"); } } -fputs($fp, ''."\n"); +fputs($fp, ' '."\n"); fputs($fp, ''."\n"); asort($checksumconcat); // Sort list of checksum @@ -133,18 +160,18 @@ foreach ($files as $file) { $newdir = str_replace(dirname(__FILE__).'/../scripts', '', dirname($file)); if ($newdir!=$dir) { if ($needtoclose) - fputs($fp, ''."\n"); - fputs($fp, ''."\n"); + fputs($fp, ' '."\n"); + fputs($fp, ' '."\n"); $dir = $newdir; $needtoclose=1; } if (filetype($file)=="file") { $md5=md5_file($file); $checksumconcat[]=$md5; - fputs($fp, ''.$md5.''."\n"); + fputs($fp, ' '.$md5.''."\n"); } } -fputs($fp, ''."\n"); +fputs($fp, ' '."\n"); fputs($fp, ''."\n"); asort($checksumconcat); // Sort list of checksum diff --git a/htdocs/admin/system/filecheck.php b/htdocs/admin/system/filecheck.php index 6499f16f76c..498e1ec54f0 100644 --- a/htdocs/admin/system/filecheck.php +++ b/htdocs/admin/system/filecheck.php @@ -160,6 +160,52 @@ if ($xml) $file_list = array(); $out = ''; + // Forced constants + if (is_object($xml->dolibarr_constants[0])) + { + $out.=load_fiche_titre($langs->trans("ForcedConstants")); + + $out.='
    #'.$file['filename'].''.$file['expectedmd5'].''.$file['md5'].''.dol_print_size(dol_filesize(DOL_DOCUMENT_ROOT.'/'.$file['filename'])).''.dol_print_size($size).''.dol_print_date(dol_filemtime(DOL_DOCUMENT_ROOT.'/'.$file['filename']),'dayhour').'
    '.$langs->trans("Total").''.dol_print_size($totalsize).'
    '.\$langs->trans(\"Field".$prop['field']."\").'".$prop['field'].".'\">
    ".\$langs->trans("Field%s")."%s."\">
    '.\$langs->trans(\"Field".$prop['field']."\").'\$object->".$prop['field']."
    '.\$langs->trans(\"Field%s\").''.\$object->%s.'
    '; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''; + $out.=''."\n"; + $var = true; + + $i = 0; + foreach ($xml->dolibarr_constants[0]->constant as $constant) // $constant is a simpleXMLElement + { + $constname=$constant['name']; + $constvalue=(string) $constant; + $constvalue = (empty($constvalue)?'0':$constvalue); + // Value found + $value=''; + if ($constname && $conf->global->$constname != '') $value=$conf->global->$constname; + $valueforchecksum=(empty($value)?'0':$value); + + $checksumconcat[]=$valueforchecksum; + + $i++; + $var = !$var; + $out.=''; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.='' . "\n"; + $out.="\n"; + } + + if ($i==0) + { + $out.=''; + } + $out.='
    #' . $langs->trans("Constant") . '' . $langs->trans("ExpectedValue") . '' . $langs->trans("Value") . '
    '.$i.''.$constname.''.$constvalue.''.$valueforchecksum.'
    '.$langs->trans("None").'
    '; + + $out.='
    '; + } + // Scan htdocs if (is_object($xml->dolibarr_htdocs_dir[0])) { diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 2597a995043..987f02fe314 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1611,6 +1611,7 @@ FixTZ=TimeZone fix FillFixTZOnlyIfRequired=Example: +2 (fill only if problem experienced) ExpectedChecksum=Expected Checksum CurrentChecksum=Current Checksum +ForcedConstants=Required constant values MailToSendProposal=To send customer proposal MailToSendOrder=To send customer order MailToSendInvoice=To send customer invoice diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang index 603aff0000f..106b0a9f240 100644 --- a/htdocs/langs/en_US/main.lang +++ b/htdocs/langs/en_US/main.lang @@ -599,6 +599,8 @@ SessionName=Session name Method=Method Receive=Receive CompleteOrNoMoreReceptionExpected=Complete or nothing more expected +ExpectedValue=Expected Value +CurrentValue=Current Value PartialWoman=Partial TotalWoman=Total NeverReceived=Never received From 97eebe164cc83f1fe6bd93e53d9e521c37736e9e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 10 Feb 2017 17:09:56 +0100 Subject: [PATCH 0251/1163] Better translation --- htdocs/langs/en_US/admin.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 987f02fe314..2783ea52594 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -9,7 +9,7 @@ VersionDevelopment=Development VersionUnknown=Unknown VersionRecommanded=Recommended FileCheck=Files integrity checker -FileCheckDesc=This tool allows you to check the integrity of files of your application, comparing each files with the official ones. You can use this tool to detect if some files were modified by a hacker for example. +FileCheckDesc=This tool allows you to check the integrity of files and setup of your application, comparing each files with the official ones. Value of some setup constants may also be checked. You can use this tool to detect if some files were modified by a hacker for example. FileIntegrityIsStrictlyConformedWithReference=Files integrity is strictly conformed with the reference. FileIntegrityIsOkButFilesWereAdded=Files integrity check has passed, however some new files were added. FileIntegritySomeFilesWereRemovedOrModified=Files integrity check has failed. Some files were modified, removed or added. From 4230b075c2ffdc17dd816b67e0f3dd8b5966a7b3 Mon Sep 17 00:00:00 2001 From: arnaud Date: Fri, 10 Feb 2017 17:28:00 +0100 Subject: [PATCH 0252/1163] INIT pdf supplier payment --- htdocs/admin/supplier_payment.php | 252 +++- htdocs/core/class/html.formactions.class.php | 1 + htdocs/core/class/html.formfile.class.php | 9 + htdocs/core/lib/functions.lib.php | 2 +- .../modules_supplier_payment.php | 31 + .../modules/supplier_payment/pdf/index.html | 0 .../supplier_payment/pdf/pdf_cow.modules.php | 1160 +++++++++++++++++ htdocs/fourn/paiement/card.php | 30 + 8 files changed, 1480 insertions(+), 5 deletions(-) create mode 100644 htdocs/core/modules/supplier_payment/pdf/index.html create mode 100644 htdocs/core/modules/supplier_payment/pdf/pdf_cow.modules.php diff --git a/htdocs/admin/supplier_payment.php b/htdocs/admin/supplier_payment.php index b5732d1f1c9..5cd1877ddb4 100644 --- a/htdocs/admin/supplier_payment.php +++ b/htdocs/admin/supplier_payment.php @@ -40,6 +40,7 @@ $action = GETPOST('action','alpha'); $value = GETPOST('value','alpha'); $label = GETPOST('label','alpha'); $scandir = GETPOST('scandir','alpha'); +$type='supplier_payment'; /* @@ -62,13 +63,114 @@ if ($action == 'updateMask') { setEventMessages($langs->trans("Error"), null, 'errors'); } -} - - if ($action == 'setmod') +}else if ($action == 'setmod') { dolibarr_set_const($db, "SUPPLIER_PAYMENT_ADDON",$value,'chaine',0,'',$conf->entity); } +// define constants for models generator that need parameters +else if ($action == 'setModuleOptions') +{ + $post_size=count($_POST); + for($i=0;$i < $post_size;$i++) + { + if (array_key_exists('param'.$i,$_POST)) + { + $param=GETPOST("param".$i,'alpha'); + $value=GETPOST("value".$i,'alpha'); + if ($param) $res = dolibarr_set_const($db,$param,$value,'chaine',0,'',$conf->entity); + } + } + if (! $res > 0) $error++; + + if (! $error) + { + setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); + } + else + { + setEventMessages($langs->trans("Error"), null, 'errors'); + } +} + +// Activate a model +else if ($action == 'set') +{ + $ret = addDocumentModel($value, $type, $label, $scandir); +} + +else if ($action == 'del') +{ + $ret = delDocumentModel($value, $type); + if ($ret > 0) + { + if ($conf->global->FACTURE_ADDON_PDF == "$value") dolibarr_del_const($db, 'SUPPLIER_PAYMENT_ADDON_PDF',$conf->entity); + } +} + +// Set default model +else if ($action == 'setdoc') +{ + if (dolibarr_set_const($db, "SUPPLIER_PAYMENT_ADDON_PDF",$value,'chaine',0,'',$conf->entity)) + { + // La constante qui a ete lue en avant du nouveau set + // on passe donc par une variable pour avoir un affichage coherent + $conf->global->FACTURE_ADDON_PDF = $value; + } + + // On active le modele + $ret = delDocumentModel($value, $type); + if ($ret > 0) + { + $ret = addDocumentModel($value, $type, $label, $scandir); + } +} + +else if ($action == 'specimen') +{ + $modele=GETPOST('module','alpha'); + + $facture = new Facture($db); + $facture->initAsSpecimen(); + + // Search template files + $file=''; $classname=''; $filefound=0; + $dirmodels=array_merge(array('/'),(array) $conf->modules_parts['models']); + foreach($dirmodels as $reldir) + { + $file=dol_buildpath($reldir."core/modules/supplier_payment/pdf/pdf_".$modele.".modules.php",0); + if (file_exists($file)) + { + $filefound=1; + $classname = "pdf_".$modele; + break; + } + } + + if ($filefound) + { + require_once $file; + + $module = new $classname($db); + + if ($module->write_file($facture,$langs) > 0) + { + header("Location: ".DOL_URL_ROOT."/document.php?modulepart=supplier_payment&file=SPECIMEN.pdf"); + return; + } + else + { + setEventMessages($module->error, $module->errors, 'errors'); + dol_syslog($module->error, LOG_ERR); + } + } + else + { + setEventMessages($langs->trans("ErrorModuleNotFound"), null, 'errors'); + dol_syslog($langs->trans("ErrorModuleNotFound"), LOG_ERR); + } +} + /* * View */ @@ -96,6 +198,35 @@ if (empty($conf->global->SUPPLIER_PAYMENT_ADDON)) $conf->global->SUPPLIER_PAYMEN print load_fiche_titre($langs->trans("PaymentsNumberingModule"), '', ''); +/* + * Document templates generators + */ +print '
    '; +print load_fiche_titre($langs->trans("BillsPDFModules"),'',''); + +// Load array def with activated templates +$def = array(); +$sql = "SELECT nom"; +$sql.= " FROM ".MAIN_DB_PREFIX."document_model"; +$sql.= " WHERE type = '".$type."'"; +$sql.= " AND entity = ".$conf->entity; +$resql=$db->query($sql); +if ($resql) +{ + $i = 0; + $num_rows=$db->num_rows($resql); + while ($i < $num_rows) + { + $array = $db->fetch_array($resql); + array_push($def, $array[0]); + $i++; + } +} +else +{ + dol_print_error($db); +} + print ''; print ''; print ''; @@ -140,7 +271,7 @@ foreach ($dirmodels as $reldir) require_once $dir.$filebis; $module = new $classname($db); - + // Show modules according to features level if ($module->version == 'development' && $conf->global->MAIN_FEATURES_LEVEL < 2) continue; if ($module->version == 'experimental' && $conf->global->MAIN_FEATURES_LEVEL < 1) continue; @@ -217,6 +348,119 @@ foreach ($dirmodels as $reldir) print '
    '.$langs->trans("Name").'
    '; + +print ''."\n"; +print ''."\n"; +print ''."\n"; +print ''."\n"; +print ''."\n"; +print ''."\n"; +print ''; +print ''; +print ''."\n"; + +clearstatcache(); + +foreach ($dirmodels as $reldir) +{ + $dir = dol_buildpath($reldir."core/modules/supplier_payment/pdf/"); + + if (is_dir($dir)) + { + $var=true; + + $handle=opendir($dir); + + + if (is_resource($handle)) + { + while (($file = readdir($handle))!==false) + { + if (preg_match('/\.modules\.php$/i',$file) && preg_match('/^(pdf_|doc_)/',$file)) + { + $name = substr($file, 4, dol_strlen($file) -16); + $classname = substr($file, 0, dol_strlen($file) -12); + + require_once $dir.'/'.$file; + $module = new $classname($db, new PaiementFourn($db)); + + $var=!$var; + print "\n"; + print "\n"; + print "\n"; + + // Active + if (in_array($name, $def)) + { + print '"; + } + else + { + print '"; + } + + // Default + print ''; + + // Info + $htmltooltip = ''.$langs->trans("Name").': '.$module->name; + $htmltooltip.='
    '.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='
    '.$langs->trans("Width").'/'.$langs->trans("Height").': '.$module->page_largeur.'/'.$module->page_hauteur; + $htmltooltip.='

    '.$langs->trans("FeaturesSupported").':'; + $htmltooltip.='
    '.$langs->trans("Logo").': '.yn($module->option_logo,1,1); + $htmltooltip.='
    '.$langs->trans("PaymentMode").': '.yn($module->option_modereg,1,1); + $htmltooltip.='
    '.$langs->trans("PaymentConditions").': '.yn($module->option_condreg,1,1); + print ''; + print ''; + + print "\n"; + } + } + + closedir($handle); + } + } +} + +print '
    '.$langs->trans("Name").''.$langs->trans("Description").''.$langs->trans("Status").''.$langs->trans("Default").''.$langs->trans("ShortInfo").''.$langs->trans("Preview").'
    "; + print (empty($module->name)?$name:$module->name); + print "\n"; + require_once $dir.$file; + $module = new $classname($db,$specimenthirdparty); + if (method_exists($module,'info')) print $module->info($langs); + else print $module->description; + + print "'."\n"; + //if ($conf->global->SUPPLIER_PAYMENT_ADDON_PDF != "$name") + //{ + // Even if choice is the default value, we allow to disable it: For supplier invoice, we accept to have no doc generation at all + print 'scandir.'&label='.urlencode($module->name).'&type=SUPPLIER_PAYMENT">'; + print img_picto($langs->trans("Enabled"),'switch_on'); + print ''; + /*} + else + { + print img_picto($langs->trans("Enabled"),'switch_on'); + }*/ + print "'."\n"; + print 'scandir.'&label='.urlencode($module->name).'&type=SUPPLIER_PAYMENT">'.img_picto($langs->trans("Disabled"),'switch_off').''; + print "'; + if ($conf->global->SUPPLIER_PAYMENT_ADDON_PDF == "$name") + { + //print img_picto($langs->trans("Default"),'on'); + // Even if choice is the default value, we allow to disable it: For supplier invoice, we accept to have no doc generation at all + print 'scandir.'&label='.urlencode($module->name).'&type=SUPPLIER_PAYMENT"" alt="'.$langs->trans("Disable").'">'.img_picto($langs->trans("Enabled"),'on').''; + } + else + { + print 'scandir.'&label='.urlencode($module->name).'&type=SUPPLIER_PAYMENT"" alt="'.$langs->trans("Default").'">'.img_picto($langs->trans("Disabled"),'off').''; + } + print ''; + print $form->textwithpicto('',$htmltooltip,1,0); + print ''; + print ''.img_object($langs->trans("Preview"),'order').''; + print '

    '; + dol_fiche_end(); diff --git a/htdocs/core/class/html.formactions.class.php b/htdocs/core/class/html.formactions.class.php index 0b5e9ebb358..b44f854087c 100644 --- a/htdocs/core/class/html.formactions.class.php +++ b/htdocs/core/class/html.formactions.class.php @@ -172,6 +172,7 @@ class FormActions if ($typeelement == 'invoice') $title=$langs->trans('ActionsOnBill'); elseif ($typeelement == 'invoice_supplier' || $typeelement == 'supplier_invoice') $title=$langs->trans('ActionsOnBill'); elseif ($typeelement == 'propal') $title=$langs->trans('ActionsOnPropal'); + elseif ($typeelement == 'supplier_payment') $title=$langs->trans('ActionsOnSupplierPayment'); elseif ($typeelement == 'supplier_proposal') $title=$langs->trans('ActionsOnSupplierProposal'); elseif ($typeelement == 'order') $title=$langs->trans('ActionsOnOrder'); elseif ($typeelement == 'order_supplier' || $typeelement == 'supplier_order') $title=$langs->trans('ActionsOnOrder'); diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 83e913f9718..28cc49653b4 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -466,6 +466,15 @@ class FormFile $modellist=ModelePDFSuppliersInvoices::liste_modeles($this->db); } } + else if ($modulepart == 'supplier_payment') + { + if (is_array($genallowed)) $modellist=$genallowed; + else + { + include_once DOL_DOCUMENT_ROOT.'/core/modules/supplier_payment/modules_supplier_payment.php'; + $modellist=ModelePDFSuppliersPayments::liste_modeles($this->db); + } + } else if ($modulepart == 'remisecheque') { if (is_array($genallowed)) $modellist=$genallowed; diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index f0ed512e940..f429f817f47 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -4318,7 +4318,7 @@ function get_exdir($num, $level, $alpha, $withoutslash, $object, $modulepart) $path = ''; - $arrayforoldpath=array('cheque','user','category','holiday','shipment','supplier_invoice','invoice_supplier','mailing'); + $arrayforoldpath=array('cheque','user','category','holiday','shipment','supplier_invoice','invoice_supplier','mailing','supplier_payment'); if (! empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) $arrayforoldpath[]='product'; if (! empty($level) && in_array($modulepart, $arrayforoldpath)) { diff --git a/htdocs/core/modules/supplier_payment/modules_supplier_payment.php b/htdocs/core/modules/supplier_payment/modules_supplier_payment.php index c9023a9fc65..d8586777d30 100644 --- a/htdocs/core/modules/supplier_payment/modules_supplier_payment.php +++ b/htdocs/core/modules/supplier_payment/modules_supplier_payment.php @@ -16,6 +16,37 @@ * or see http://www.gnu.org/ */ +require_once DOL_DOCUMENT_ROOT.'/core/class/commondocgenerator.class.php'; +/** + * Parent class for supplier invoices models + */ +abstract class ModelePDFSuppliersPayments extends CommonDocGenerator +{ + var $error=''; + + + /** + * Return list of active generation models + * + * @param DoliDB $db Database handler + * @param integer $maxfilenamelength Max length of value to show + * @return array List of numbers + */ + static function liste_modeles($db,$maxfilenamelength=0) + { + global $conf; + + $type='supplier_payment'; + $liste=array(); + + include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; + $liste=getListOfModels($db,$type,$maxfilenamelength); + + return $liste; + } + +} + /** * \class ModeleNumRefPayments * \brief Payment numbering references mother class diff --git a/htdocs/core/modules/supplier_payment/pdf/index.html b/htdocs/core/modules/supplier_payment/pdf/index.html new file mode 100644 index 00000000000..e69de29bb2d diff --git a/htdocs/core/modules/supplier_payment/pdf/pdf_cow.modules.php b/htdocs/core/modules/supplier_payment/pdf/pdf_cow.modules.php new file mode 100644 index 00000000000..a7b9da6ded8 --- /dev/null +++ b/htdocs/core/modules/supplier_payment/pdf/pdf_cow.modules.php @@ -0,0 +1,1160 @@ + + * Copyright (C) 2010-2014 Laurent Destailleur + * Copyright (C) 2015 Marcos García + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + * or see http://www.gnu.org/ + */ + +/** + * \file htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php + * \ingroup fournisseur + * \brief Class file to generate the supplier invoices with the canelle model + */ + +require_once DOL_DOCUMENT_ROOT.'/core/modules/supplier_invoice/modules_facturefournisseur.php'; +require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; +require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/pdf.lib.php'; + + +/** + * Class to generate the supplier invoices with the canelle model + */ +class pdf_cow extends ModelePDFSuppliersPayments +{ + var $db; + var $name; + var $description; + var $type; + + var $phpmin = array(4,3,0); // Minimum version of PHP required by module + var $version = 'dolibarr'; + + var $page_largeur; + var $page_hauteur; + var $format; + var $marge_gauche; + var $marge_droite; + var $marge_haute; + var $marge_basse; + + var $emetteur; // Objet societe qui emet + + + /** + * Constructor + * + * @param DoliDB $db Database handler + */ + function __construct($db) + { + global $conf,$langs,$mysoc; + + $langs->load("main"); + $langs->load("bills"); + + $this->db = $db; + $this->name = "cow"; + $this->description = $langs->trans('SuppliersPaymentModel'); + + // Dimension page pour format A4 + $this->type = 'pdf'; + $formatarray=pdf_getFormat(); + $this->page_largeur = $formatarray['width']; + $this->page_hauteur = $formatarray['height']; + $this->format = array($this->page_largeur,$this->page_hauteur); + $this->marge_gauche=isset($conf->global->MAIN_PDF_MARGIN_LEFT)?$conf->global->MAIN_PDF_MARGIN_LEFT:10; + $this->marge_droite=isset($conf->global->MAIN_PDF_MARGIN_RIGHT)?$conf->global->MAIN_PDF_MARGIN_RIGHT:10; + $this->marge_haute =isset($conf->global->MAIN_PDF_MARGIN_TOP)?$conf->global->MAIN_PDF_MARGIN_TOP:10; + $this->marge_basse =isset($conf->global->MAIN_PDF_MARGIN_BOTTOM)?$conf->global->MAIN_PDF_MARGIN_BOTTOM:10; + + $this->option_logo = 1; // Affiche logo + $this->option_tva = 1; // Gere option tva FACTURE_TVAOPTION + $this->option_modereg = 1; // Affiche mode reglement + $this->option_condreg = 1; // Affiche conditions reglement + $this->option_codeproduitservice = 1; // Affiche code produit-service + $this->option_multilang = 1; // Dispo en plusieurs langues + + $this->franchise=!$mysoc->tva_assuj; + + // Defini position des colonnes + $this->posxdesc=$this->marge_gauche+1; + $this->posxtva=112; + $this->posxup=126; + $this->posxqty=145; + $this->posxdiscount=162; + $this->postotalht=174; + + if($conf->global->PRODUCT_USE_UNITS) { + $this->posxtva=99; + $this->posxup=114; + $this->posxqty=130; + $this->posxunit=147; + } + //if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup; + $this->posxpicture=$this->posxtva - (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH)?20:$conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH); // width of images + if ($this->page_largeur < 210) // To work with US executive format + { + $this->posxpicture-=20; + $this->posxtva-=20; + $this->posxup-=20; + $this->posxqty-=20; + $this->posxunit-=20; + $this->posxdiscount-=20; + $this->postotalht-=20; + } + + $this->tva=array(); + $this->localtax1=array(); + $this->localtax2=array(); + $this->atleastoneratenotnull=0; + $this->atleastonediscount=0; + } + + + /** + * Function to build pdf onto disk + * + * @param FactureFournisseur $object Id of object to generate + * @param Translate $outputlangs Lang output object + * @param string $srctemplatepath Full path of source filename for generator using a template file + * @param int $hidedetails Do not show line details + * @param int $hidedesc Do not show desc + * @param int $hideref Do not show ref + * @return int 1=OK, 0=KO + */ + function write_file($object, $outputlangs='', $srctemplatepath='', $hidedetails=0, $hidedesc=0, $hideref=0) + { + global $user,$langs,$conf,$mysoc,$hookmanager; + + // Get source company + if (! is_object($object->thirdparty)) $object->fetch_thirdparty(); + if (! is_object($object->thirdparty)) $object->thirdparty=$mysoc; // If fetch_thirdparty fails, object has no socid (specimen) + $this->emetteur=$object->thirdparty; + if (! $this->emetteur->country_code) $this->emetteur->country_code=substr($langs->defaultlang,-2); // By default, if was not defined + + if (! is_object($outputlangs)) $outputlangs=$langs; + // For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO + if (! empty($conf->global->MAIN_USE_FPDF)) $outputlangs->charset_output='ISO-8859-1'; + + $outputlangs->load("main"); + $outputlangs->load("dict"); + $outputlangs->load("companies"); + $outputlangs->load("bills"); + $outputlangs->load("products"); + + if ($conf->fournisseur->dir_output.'/facture') + { + $object->fetch_thirdparty(); + + $deja_regle = $object->getSommePaiement(); + //$amount_credit_notes_included = $object->getSumCreditNotesUsed(); + //$amount_deposits_included = $object->getSumDepositsUsed(); + + // Definition of $dir and $file + if ($object->specimen) + { + $dir = $conf->fournisseur->payment->dir_output; + $file = $dir . "/SPECIMEN.pdf"; + } + else + { + $objectref = dol_sanitizeFileName($object->ref); + $objectrefsupplier = dol_sanitizeFileName($object->ref_supplier); + $dir = $conf->fournisseur->payment->dir_output.'/'.get_exdir($object->id,2,0,0,$object,'supplier_payment').$objectref; + $file = $dir . "/" . $objectref . ".pdf"; + if (! empty($conf->global->SUPPLIER_REF_IN_NAME)) $file = $dir . "/" . $objectref . ($objectrefsupplier?"_".$objectrefsupplier:"").".pdf"; + } + + if (! file_exists($dir)) + { + if (dol_mkdir($dir) < 0) + { + $this->error=$langs->transnoentities("ErrorCanNotCreateDir",$dir); + return 0; + } + + } + + if (file_exists($dir)) + { + // Add pdfgeneration hook + if (! is_object($hookmanager)) + { + include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php'; + $hookmanager=new HookManager($this->db); + } + $hookmanager->initHooks(array('pdfgeneration')); + $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs); + global $action; + $reshook=$hookmanager->executeHooks('beforePDFCreation',$parameters,$object,$action); // Note that $action and $object may have been modified by some hooks + + $nblignes = count($object->lines); + + $pdf=pdf_getInstance($this->format); + $default_font_size = pdf_getPDFFontSize($outputlangs); // Must be after pdf_getInstance + $heightforinfotot = 50; // Height reserved to output the info and total part + $heightforfreetext= (isset($conf->global->MAIN_PDF_FREETEXT_HEIGHT)?$conf->global->MAIN_PDF_FREETEXT_HEIGHT:5); // Height reserved to output the free text on last page + $heightforfooter = $this->marge_basse + 8; // Height reserved to output the footer (value include bottom margin) + $pdf->SetAutoPageBreak(1,0); + + if (class_exists('TCPDF')) + { + $pdf->setPrintHeader(false); + $pdf->setPrintFooter(false); + } + $pdf->SetFont(pdf_getPDFFont($outputlangs)); + // Set path to the background PDF File + if (empty($conf->global->MAIN_DISABLE_FPDI) && ! empty($conf->global->MAIN_ADD_PDF_BACKGROUND)) + { + $pagecount = $pdf->setSourceFile($conf->mycompany->dir_output.'/'.$conf->global->MAIN_ADD_PDF_BACKGROUND); + $tplidx = $pdf->importPage(1); + } + + $pdf->Open(); + $pagenb=0; + $pdf->SetDrawColor(128,128,128); + + $pdf->SetTitle($outputlangs->convToOutputCharset($object->ref)); + $pdf->SetSubject($outputlangs->transnoentities("Invoice")); + $pdf->SetCreator("Dolibarr ".DOL_VERSION); + $pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs))); + $pdf->SetKeyWords($outputlangs->convToOutputCharset($object->ref)." ".$outputlangs->transnoentities("Order")." ".$outputlangs->convToOutputCharset($object->thirdparty->name)); + if (! empty($conf->global->MAIN_DISABLE_PDF_COMPRESSION)) $pdf->SetCompression(false); + + $pdf->SetMargins($this->marge_gauche, $this->marge_haute, $this->marge_droite); // Left, Top, Right + + // Positionne $this->atleastonediscount si on a au moins une remise + for ($i = 0 ; $i < $nblignes ; $i++) + { + if ($object->lines[$i]->remise_percent) + { + $this->atleastonediscount++; + } + } + if (empty($this->atleastonediscount) && empty($conf->global->PRODUCT_USE_UNITS)) + { + $this->posxpicture+=($this->postotalht - $this->posxdiscount); + $this->posxtva+=($this->postotalht - $this->posxdiscount); + $this->posxup+=($this->postotalht - $this->posxdiscount); + $this->posxqty+=($this->postotalht - $this->posxdiscount); + $this->posxdiscount+=($this->postotalht - $this->posxdiscount); + //$this->postotalht; + } + + // New page + $pdf->AddPage(); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pagenb++; + $this->_pagehead($pdf, $object, 1, $outputlangs); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->MultiCell(0, 3, ''); // Set interline to 3 + $pdf->SetTextColor(0,0,0); + + $tab_top = 90; + $tab_top_newpage = (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)?42:10); + $tab_height = 130; + $tab_height_newpage = 150; + + // Incoterm + $height_incoterms = 0; + if ($conf->incoterm->enabled) + { + $desc_incoterms = $object->getIncotermsForPDF(); + if ($desc_incoterms) + { + $tab_top = 88; + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top-1, dol_htmlentitiesbr($desc_incoterms), 0, 1); + $nexY = $pdf->GetY(); + $height_incoterms=$nexY-$tab_top; + + // Rect prend une longueur en 3eme param + $pdf->SetDrawColor(192,192,192); + $pdf->Rect($this->marge_gauche, $tab_top-1, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $height_incoterms+1); + + $tab_top = $nexY+6; + $height_incoterms += 4; + } + } + + // Affiche notes + if (! empty($object->note_public)) + { + $tab_top = 88 + $height_incoterms; + + $pdf->SetFont('','', $default_font_size - 1); + $pdf->writeHTMLCell(190, 3, $this->posxdesc-1, $tab_top, dol_htmlentitiesbr($object->note_public), 0, 1); + $nexY = $pdf->GetY(); + $height_note=$nexY-$tab_top; + + // Rect prend une longueur en 3eme param + $pdf->SetDrawColor(192,192,192); + $pdf->Rect($this->marge_gauche, $tab_top-1, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $height_note+1); + + $tab_height = $tab_height - $height_note; + $tab_top = $nexY+6; + } + else + { + $height_note=0; + } + + $iniY = $tab_top + 7; + $curY = $tab_top + 7; + $nexY = $tab_top + 7; + + // Loop on each lines + for ($i = 0 ; $i < $nblignes ; $i++) + { + $curY = $nexY; + $pdf->SetFont('','', $default_font_size - 1); // Into loop to work with multipage + $pdf->SetTextColor(0,0,0); + + $pdf->setTopMargin($tab_top_newpage); + $pdf->setPageOrientation('', 1, $heightforfooter+$heightforfreetext+$heightforinfotot); // The only function to edit the bottom margin of current page to set it. + $pageposbefore=$pdf->getPage(); + + // Description of product line + $curX = $this->posxdesc-1; + $showpricebeforepagebreak=1; + + $pdf->startTransaction(); + pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->posxtva-$curX,3,$curX,$curY,$hideref,$hidedesc,1); + $pageposafter=$pdf->getPage(); + if ($pageposafter > $pageposbefore) // There is a pagebreak + { + $pdf->rollbackTransaction(true); + $pageposafter=$pageposbefore; + //print $pageposafter.'-'.$pageposbefore;exit; + $pdf->setPageOrientation('', 1, $heightforfooter); // The only function to edit the bottom margin of current page to set it. + pdf_writelinedesc($pdf,$object,$i,$outputlangs,$this->posxtva-$curX,4,$curX,$curY,$hideref,$hidedesc,1); + $posyafter=$pdf->GetY(); + if ($posyafter > ($this->page_hauteur - ($heightforfooter+$heightforfreetext+$heightforinfotot))) // There is no space left for total+free text + { + if ($i == ($nblignes-1)) // No more lines, and no space left to show total, so we create a new page + { + $pdf->AddPage('','',true); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + $pdf->setPage($pageposafter+1); + } + } + else + { + // We found a page break + $showpricebeforepagebreak=0; + } + } + else // No pagebreak + { + $pdf->commitTransaction(); + } + + $nexY = $pdf->GetY(); + $pageposafter=$pdf->getPage(); + $pdf->setPage($pageposbefore); + $pdf->setTopMargin($this->marge_haute); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + + // We suppose that a too long description is moved completely on next page + if ($pageposafter > $pageposbefore && empty($showpricebeforepagebreak)) { + $pdf->setPage($pageposafter); $curY = $tab_top_newpage; + } + + $pdf->SetFont('','', $default_font_size - 1); // On repositionne la police par defaut + + // VAT Rate + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) + { + $vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails); + $pdf->SetXY($this->posxtva, $curY); + $pdf->MultiCell($this->posxup-$this->posxtva-1, 3, $vat_rate, 0, 'R'); + } + + // Unit price before discount + $pdf->SetXY($this->posxup, $curY); + $pdf->MultiCell($this->posxqty-$this->posxup-0.8, 3, price($object->lines[$i]->pu_ht), 0, 'R', 0); + + // Unit price before discount + $up_excl_tax = pdf_getlineupexcltax($object, $i, $outputlangs, $hidedetails); + $pdf->SetXY($this->posxup, $curY); + $pdf->MultiCell($this->posxqty-$this->posxup-0.8, 3, $up_excl_tax, 0, 'R', 0); + + // Quantity + $pdf->SetXY($this->posxqty, $curY); + // Enough for 6 chars + if($conf->global->PRODUCT_USE_UNITS) + { + $pdf->MultiCell($this->posxunit-$this->posxqty-0.8, 4, $object->lines[$i]->qty, 0, 'R'); + } + else + { + $pdf->MultiCell($this->posxdiscount-$this->posxqty-0.8, 4, $object->lines[$i]->qty, 0, 'R'); + } + + // Unit + if($conf->global->PRODUCT_USE_UNITS) + { + $unit = pdf_getlineunit($object, $i, $outputlangs, $hidedetails, $hookmanager); + $pdf->SetXY($this->posxunit, $curY); + $pdf->MultiCell($this->posxdiscount-$this->posxunit-0.8, 4, $unit, 0, 'L'); + } + + // Discount on line + $pdf->SetXY($this->posxdiscount, $curY); + if ($object->lines[$i]->remise_percent) + { + $pdf->MultiCell($this->postotalht-$this->posxdiscount-1, 3, $object->lines[$i]->remise_percent."%", 0, 'R'); + } + + // Total HT line + $total_excl_tax = pdf_getlinetotalexcltax($object, $i, $outputlangs); + $pdf->SetXY($this->postotalht, $curY); + $pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalht, 3, $total_excl_tax, 0, 'R', 0); + + // Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva + $tvaligne=$object->lines[$i]->total_tva; + + $localtax1ligne=$object->lines[$i]->total_localtax1; + $localtax2ligne=$object->lines[$i]->total_localtax2; + + if (! empty($object->remise_percent)) $tvaligne-=($tvaligne*$object->remise_percent)/100; + + $vatrate=(string) $object->lines[$i]->tva_tx; + $localtax1rate=(string) $object->lines[$i]->localtax1_tx; + $localtax2rate=(string) $object->lines[$i]->localtax2_tx; + + if (($object->lines[$i]->info_bits & 0x01) == 0x01) $vatrate.='*'; + if (empty($this->tva[$vatrate])) $this->tva[$vatrate]=0; + if (empty($this->localtax1[$localtax1rate])) $this->localtax1[$localtax1rate]=0; + if (empty($this->localtax2[$localtax2rate])) $this->localtax2[$localtax2rate]=0; + $this->tva[$vatrate] += $tvaligne; + $this->localtax1[$localtax1rate]+=$localtax1ligne; + $this->localtax2[$localtax2rate]+=$localtax2ligne; + + // Add line + if (! empty($conf->global->MAIN_PDF_DASH_BETWEEN_LINES) && $i < ($nblignes - 1)) + { + $pdf->setPage($pageposafter); + $pdf->SetLineStyle(array('dash'=>'1,1','color'=>array(80,80,80))); + //$pdf->SetDrawColor(190,190,200); + $pdf->line($this->marge_gauche, $nexY+1, $this->page_largeur - $this->marge_droite, $nexY+1); + $pdf->SetLineStyle(array('dash'=>0)); + } + + $nexY+=2; // Passe espace entre les lignes + + // Detect if some page were added automatically and output _tableau for past pages + while ($pagenb < $pageposafter) + { + $pdf->setPage($pagenb); + if ($pagenb == 1) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1); + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1); + } + $this->_pagefoot($pdf,$object,$outputlangs,1); + $pagenb++; + $pdf->setPage($pagenb); + $pdf->setPageOrientation('', 1, 0); // The only function to edit the bottom margin of current page to set it. + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + } + if (isset($object->lines[$i+1]->pagebreak) && $object->lines[$i+1]->pagebreak) + { + if ($pagenb == 1) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1); + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1); + } + $this->_pagefoot($pdf,$object,$outputlangs,1); + // New page + $pdf->AddPage(); + if (! empty($tplidx)) $pdf->useTemplate($tplidx); + $pagenb++; + if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs); + } + } + + // Show square + if ($pagenb == 1) + { + $this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 0, 0); + $bottomlasttab=$this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1; + } + else + { + $this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 1, 0); + $bottomlasttab=$this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1; + } + + // Affiche zone totaux + $posy=$this->_tableau_tot($pdf, $object, $deja_regle, $bottomlasttab, $outputlangs); + + $amount_credit_notes_included=0; + $amount_deposits_included=0; + + if ($deja_regle || $amount_credit_notes_included || $amount_deposits_included) + { + $posy=$this->_tableau_versements($pdf, $object, $posy, $outputlangs); + } + + // Pied de page + $this->_pagefoot($pdf, $object, $outputlangs); + if (method_exists($pdf,'AliasNbPages')) $pdf->AliasNbPages(); + + $pdf->Close(); + + $pdf->Output($file,'F'); + + // Add pdfgeneration hook + $hookmanager->initHooks(array('pdfgeneration')); + $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs); + global $action; + $reshook=$hookmanager->executeHooks('afterPDFCreation',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks + + if (! empty($conf->global->MAIN_UMASK)) + @chmod($file, octdec($conf->global->MAIN_UMASK)); + + return 1; // Pas d'erreur + } + else + { + $this->error=$langs->trans("ErrorCanNotCreateDir",$dir); + return 0; + } + } + else + { + $this->error=$langs->trans("ErrorConstantNotDefined","SUPPLIER_OUTPUTDIR"); + return 0; + } + } + + /** + * Show total to pay + * + * @param PDF $pdf Object PDF + * @param Facture $object Object invoice + * @param int $deja_regle Montant deja regle + * @param int $posy Position depart + * @param Translate $outputlangs Objet langs + * @return int Position pour suite + */ + function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs) + { + global $conf,$mysoc; + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $tab2_top = $posy; + $tab2_hl = 4; + $pdf->SetFont('','', $default_font_size - 1); + + $pdf->SetXY($this->marge_gauche, $tab2_top + 0); + // If France, show VAT mention if not applicable + if ($this->emetteur->country_code == 'FR' && $this->franchise == 1) + { + $pdf->MultiCell(100, $tab2_hl, $outputlangs->transnoentities("VATIsNotUsedForInvoice"), 0, 'L', 0); + } + + // Tableau total + $col1x = 120; $col2x = 170; + if ($this->page_largeur < 210) // To work with US executive format + { + $col2x-=20; + } + $largcol2 = ($this->page_largeur - $this->marge_droite - $col2x); + + $index=0; + + // Total HT + $pdf->SetFillColor(255,255,255); + $pdf->SetXY($col1x, $tab2_top + 0); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + 0); + $pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ht + $object->remise), 0, 'R', 1); + + // Show VAT by rates and total + $pdf->SetFillColor(248,248,248); + + foreach( $this->tva as $tvakey => $tvaval ) + { + if ($tvakey > 0) // On affiche pas taux 0 + { + $this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + + $totalvat =$outputlangs->transnoentities("TotalVAT").' '; + $totalvat.=vatrate($tvakey,1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval), 0, 'R', 1); + } + } + if (! $this->atleastoneratenotnull) // If no vat at all + { + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalVAT"), 0, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($object->total_tva), 0, 'R', 1); + + // Total LocalTax1 + if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on' && $object->total_localtax1>0) + { + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transcountrynoentities("TotalLT1",$mysoc->country_code), 0, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($object->total_localtax1), 0, 'R', 1); + } + + // Total LocalTax2 + if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on' && $object->total_localtax2>0) + { + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transcountrynoentities("TotalLT2",$mysoc->country_code), 0, 'L', 1); + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($object->total_localtax2), 0, 'R', 1); + } + } + else + { + //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on') + //{ + //Local tax 1 + foreach( $this->localtax1 as $tvakey => $tvaval ) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT1",$mysoc->country_code).' '; + $totalvat.= vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval), 0, 'R', 1); + } + } + //} + + //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on') + //{ + //Local tax 2 + foreach( $this->localtax2 as $tvakey => $tvaval ) + { + if ($tvakey != 0) // On affiche pas taux 0 + { + //$this->atleastoneratenotnull++; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + + $tvacompl=''; + if (preg_match('/\*/',$tvakey)) + { + $tvakey=str_replace('*','',$tvakey); + $tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")"; + } + $totalvat = $outputlangs->transcountrynoentities("TotalLT2",$mysoc->country_code).' '; + $totalvat.= vatrate(abs($tvakey),1).$tvacompl; + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($tvaval), 0, 'R', 1); + } + } + //} + } + + $useborder=0; + + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->SetTextColor(0,0,60); + $pdf->SetFillColor(224,224,224); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ttc), $useborder, 'R', 1); + + if ($deja_regle > 0) + { + $index++; + + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("AlreadyPaid"), 0, 'L', 0); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($deja_regle), 0, 'R', 0); + + $index++; + $pdf->SetTextColor(0,0,60); + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("RemainderToPay"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ttc - $deja_regle), $useborder, 'R', 1); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetTextColor(0,0,0); + } + + $index++; + return ($tab2_top + ($tab2_hl * $index)); + } + + /** + * Show table for lines + * + * @param PDF $pdf Object PDF + * @param string $tab_top Top position of table + * @param string $tab_height Height of table (rectangle) + * @param int $nexY Y (not used) + * @param Translate $outputlangs Langs object + * @param int $hidetop Hide top bar of array + * @param int $hidebottom Hide bottom bar of array + * @return void + */ + function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop=0, $hidebottom=0) + { + global $conf; + + // Force to disable hidetop and hidebottom + $hidebottom=0; + if ($hidetop) $hidetop=-1; + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + // Amount in (at tab_top - 1) + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','',$default_font_size - 2); + + if (empty($hidetop)) + { + $titre = $outputlangs->transnoentities("AmountInCurrency",$outputlangs->transnoentitiesnoconv("Currency".$conf->currency)); + $pdf->SetXY($this->page_largeur - $this->marge_droite - ($pdf->GetStringWidth($titre) + 3), $tab_top-4); + $pdf->MultiCell(($pdf->GetStringWidth($titre) + 3), 2, $titre); + + //$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR='230,230,230'; + if (! empty($conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)) $pdf->Rect($this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_droite-$this->marge_gauche, 5, 'F', null, explode(',',$conf->global->MAIN_PDF_TITLE_BACKGROUND_COLOR)); + } + + $pdf->SetDrawColor(128,128,128); + $pdf->SetFont('','', $default_font_size - 1); + + // Output Rect + $this->printRect($pdf,$this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $tab_height, $hidetop, $hidebottom); // Rect prend une longueur en 3eme param et 4eme param + + if (empty($hidetop)) + { + $pdf->line($this->marge_gauche, $tab_top+5, $this->page_largeur-$this->marge_droite, $tab_top+5); // line prend une position y en 2eme param et 4eme param + + $pdf->SetXY($this->posxdesc-1, $tab_top+1); + $pdf->MultiCell(108,2, $outputlangs->transnoentities("Designation"),'','L'); + } + + if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) + { + $pdf->line($this->posxtva-1, $tab_top, $this->posxtva-1, $tab_top + $tab_height); + if (empty($hidetop)) + { + $pdf->SetXY($this->posxtva-3, $tab_top+1); + $pdf->MultiCell($this->posxup-$this->posxtva+3,2, $outputlangs->transnoentities("VAT"),'','C'); + } + } + + $pdf->line($this->posxup-1, $tab_top, $this->posxup-1, $tab_top + $tab_height); + if (empty($hidetop)) + { + $pdf->SetXY($this->posxup-1, $tab_top+1); + $pdf->MultiCell($this->posxqty-$this->posxup-1,2, $outputlangs->transnoentities("PriceUHT"),'','C'); + } + + $pdf->line($this->posxqty-1, $tab_top, $this->posxqty-1, $tab_top + $tab_height); + if (empty($hidetop)) + { + $pdf->SetXY($this->posxqty-1, $tab_top+1); + if($conf->global->PRODUCT_USE_UNITS) + { + $pdf->MultiCell($this->posxunit-$this->posxqty-1,2, $outputlangs->transnoentities("Qty"),'','C'); + } + else + { + $pdf->MultiCell($this->posxdiscount-$this->posxqty-1,2, $outputlangs->transnoentities("Qty"),'','C'); + } + } + + if($conf->global->PRODUCT_USE_UNITS) { + $pdf->line($this->posxunit - 1, $tab_top, $this->posxunit - 1, $tab_top + $tab_height); + if (empty($hidetop)) { + $pdf->SetXY($this->posxunit - 1, $tab_top + 1); + $pdf->MultiCell($this->posxdiscount - $this->posxunit - 1, 2, $outputlangs->transnoentities("Unit"), '', + 'C'); + } + } + + $pdf->line($this->posxdiscount-1, $tab_top, $this->posxdiscount-1, $tab_top + $tab_height); + if (empty($hidetop)) + { + if ($this->atleastonediscount) + { + $pdf->SetXY($this->posxdiscount-1, $tab_top+1); + $pdf->MultiCell($this->postotalht-$this->posxdiscount+1,2, $outputlangs->transnoentities("ReductionShort"),'','C'); + } + } + + if ($this->atleastonediscount) + { + $pdf->line($this->postotalht, $tab_top, $this->postotalht, $tab_top + $tab_height); + } + if (empty($hidetop)) + { + $pdf->SetXY($this->postotalht-1, $tab_top+1); + $pdf->MultiCell(30,2, $outputlangs->transnoentities("TotalHTShort"),'','C'); + } + + } + + /** + * Show payments table + * + * @param PDF $pdf Object PDF + * @param FactureFournisseur $object Object invoice + * @param int $posy Position y in PDF + * @param Translate $outputlangs Object langs for output + * @return int <0 if KO, >0 if OK + */ + function _tableau_versements(&$pdf, $object, $posy, $outputlangs) + { + $tab3_posx = 120; + $tab3_top = $posy + 8; + $tab3_width = 80; + $tab3_height = 4; + if ($this->page_largeur < 210) // To work with US executive format + { + $tab3_posx -= 20; + } + + $default_font_size = pdf_getPDFFontSize($outputlangs); + + $pdf->SetFont('','', $default_font_size - 3); + $pdf->SetXY($tab3_posx, $tab3_top - 4); + $pdf->MultiCell(60, 3, $outputlangs->transnoentities("PaymentsAlreadyDone"), 0, 'L', 0); + + $pdf->line($tab3_posx, $tab3_top, $tab3_posx+$tab3_width, $tab3_top); + + $pdf->SetFont('','', $default_font_size - 4); + $pdf->SetXY($tab3_posx, $tab3_top); + $pdf->MultiCell(20, 3, $outputlangs->transnoentities("Payment"), 0, 'L', 0); + $pdf->SetXY($tab3_posx+21, $tab3_top); + $pdf->MultiCell(20, 3, $outputlangs->transnoentities("Amount"), 0, 'L', 0); + $pdf->SetXY($tab3_posx+40, $tab3_top); + $pdf->MultiCell(20, 3, $outputlangs->transnoentities("Type"), 0, 'L', 0); + $pdf->SetXY($tab3_posx+58, $tab3_top); + $pdf->MultiCell(20, 3, $outputlangs->transnoentities("Num"), 0, 'L', 0); + + $pdf->line($tab3_posx, $tab3_top-1+$tab3_height, $tab3_posx+$tab3_width, $tab3_top-1+$tab3_height); + + $y=0; + + $pdf->SetFont('','', $default_font_size - 4); + + // Loop on each payment + $sql = "SELECT p.datep as date, p.fk_paiement as type, p.num_paiement as num, pf.amount as amount,"; + $sql.= " cp.code"; + $sql.= " FROM ".MAIN_DB_PREFIX."paiementfourn_facturefourn as pf, ".MAIN_DB_PREFIX."paiementfourn as p"; + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as cp ON p.fk_paiement = cp.id"; + $sql.= " WHERE pf.fk_paiementfourn = p.rowid and pf.fk_facturefourn = ".$object->id; + $sql.= " ORDER BY p.datep"; + $resql=$this->db->query($sql); + if ($resql) + { + $num = $this->db->num_rows($resql); + $i=0; + while ($i < $num) { + $y+=3; + $row = $this->db->fetch_object($resql); + + $pdf->SetXY($tab3_posx, $tab3_top+$y); + $pdf->MultiCell(20, 3, dol_print_date($this->db->jdate($row->date),'day',false,$outputlangs,true), 0, 'L', 0); + $pdf->SetXY($tab3_posx+21, $tab3_top+$y); + $pdf->MultiCell(20, 3, price($row->amount), 0, 'L', 0); + $pdf->SetXY($tab3_posx+40, $tab3_top+$y); + $oper = $outputlangs->transnoentitiesnoconv("PaymentTypeShort" . $row->code); + + $pdf->MultiCell(20, 3, $oper, 0, 'L', 0); + $pdf->SetXY($tab3_posx+58, $tab3_top+$y); + $pdf->MultiCell(30, 3, $row->num, 0, 'L', 0); + + $pdf->line($tab3_posx, $tab3_top+$y+3, $tab3_posx+$tab3_width, $tab3_top+$y+3); + + $i++; + } + } + else + { + $this->error=$this->db->lasterror(); + return -1; + } + + } + + /** + * Show top header of page. + * + * @param PDF $pdf Object PDF + * @param FactureFournisseur $object Object to show + * @param int $showaddress 0=no, 1=yes + * @param Translate $outputlangs Object lang for output + * @return void + */ + function _pagehead(&$pdf, $object, $showaddress, $outputlangs) + { + global $langs,$conf,$mysoc; + + $outputlangs->load("main"); + $outputlangs->load("bills"); + $outputlangs->load("orders"); + $outputlangs->load("companies"); + $default_font_size = pdf_getPDFFontSize($outputlangs); + + // Do not add the BACKGROUND as this is for suppliers + //pdf_pagehead($pdf,$outputlangs,$this->page_hauteur); + + $pdf->SetTextColor(0,0,60); + $pdf->SetFont('','B', $default_font_size + 3); + + $posy=$this->marge_haute; + $posx=$this->page_largeur-$this->marge_droite-100; + + $pdf->SetXY($this->marge_gauche,$posy); + + // Logo + /* + $logo=$conf->mycompany->dir_output.'/logos/'.$mysoc->logo; + if ($mysoc->logo) + { + if (is_readable($logo)) + { + $height=pdf_getHeightForLogo($logo); + $pdf->Image($logo, $this->marge_gauche, $posy, 0, $height); // width=0 (auto) + } + else + { + $pdf->SetTextColor(200,0,0); + $pdf->SetFont('','B', $default_font_size - 2); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorLogoFileNotFound",$logo), 0, 'L'); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorGoToModuleSetup"), 0, 'L'); + } + } + else + {*/ + $text=$this->emetteur->name; + $pdf->MultiCell(100, 4, $outputlangs->convToOutputCharset($text), 0, 'L'); + //} + + $pdf->SetFont('','B', $default_font_size + 3); + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("SupplierInvoice")." ".$outputlangs->convToOutputCharset($object->ref), '', 'R'); + $posy+=1; + + if ($object->ref_supplier) + { + $posy+=4; + $pdf->SetFont('','B', $default_font_size); + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 4, $outputlangs->transnoentities("RefSupplier")." : " . $object->ref_supplier, '', 'R'); + $posy+=1; + } + + $pdf->SetFont('','', $default_font_size - 1); + + if (! empty($conf->global->PDF_SHOW_PROJECT)) + { + $object->fetch_projet(); + if (! empty($object->project->ref)) + { + $posy+=4; + $pdf->SetXY($posx,$posy); + $langs->load("projects"); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("Project")." : " . (empty($object->project->ref)?'':$object->projet->ref), '', 'R'); + } + } + + if ($object->date) + { + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 4, $outputlangs->transnoentities("Date")." : " . dol_print_date($object->date,"day",false,$outputlangs,true), '', 'R'); + } + else + { + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(255,0,0); + $pdf->MultiCell(100, 4, strtolower($outputlangs->transnoentities("OrderToProcess")), '', 'R'); + } + + if ($object->thirdparty->code_fournisseur) + { + $posy+=4; + $pdf->SetXY($posx,$posy); + $pdf->SetTextColor(0,0,60); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities("SupplierCode")." : " . $outputlangs->transnoentities($object->thirdparty->code_fournisseur), '', 'R'); + } + + $posy+=1; + $pdf->SetTextColor(0,0,60); + + // Show list of linked objects + $posy = pdf_writeLinkedObjects($pdf, $object, $outputlangs, $posx, $posy, 100, 3, 'R', $default_font_size); + + if ($showaddress) + { + // Sender properties + $carac_emetteur = pdf_build_address($outputlangs, $this->emetteur, $object->thirdparty); + + // Show sender + $posy=42; + $posx=$this->marge_gauche; + if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->page_largeur-$this->marge_droite-80; + $hautcadre=40; + + // Show sender frame + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posx,$posy-5); + $pdf->MultiCell(66,5, $outputlangs->transnoentities("BillFrom").":", 0, 'L'); + $pdf->SetXY($posx,$posy); + $pdf->SetFillColor(230,230,230); + $pdf->MultiCell(82, $hautcadre, "", 0, 'R', 1); + $pdf->SetTextColor(0,0,60); + + // Show sender name + $pdf->SetXY($posx+2,$posy+3); + $pdf->SetFont('','B', $default_font_size); + $pdf->MultiCell(80, 4, $outputlangs->convToOutputCharset($this->emetteur->name), 0, 'L'); + $posy=$pdf->getY(); + + // Show sender information + $pdf->SetXY($posx+2,$posy); + $pdf->SetFont('','', $default_font_size - 1); + $pdf->MultiCell(80, 4, $carac_emetteur, 0, 'L'); + + + + // If BILLING contact defined on invoice, we use it + $usecontact=false; + $arrayidcontact=$object->getIdContact('internal','BILLING'); + if (count($arrayidcontact) > 0) + { + $usecontact=true; + $result=$object->fetch_contact($arrayidcontact[0]); + } + + //Recipient name + // On peut utiliser le nom de la societe du contact + if ($usecontact && !empty($conf->global->MAIN_USE_COMPANY_NAME_OF_CONTACT)) { + $thirdparty = $object->contact; + } else { + $thirdparty = $mysoc; + } + + $carac_client_name= pdfBuildThirdpartyName($thirdparty, $outputlangs); + + $carac_client=pdf_build_address($outputlangs,$this->emetteur,$mysoc,((!empty($object->contact))?$object->contact:null),$usecontact,'target',$object); + + // Show recipient + $widthrecbox=100; + if ($this->page_largeur < 210) $widthrecbox=84; // To work with US executive format + $posy=42; + $posx=$this->page_largeur-$this->marge_droite-$widthrecbox; + if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->marge_gauche; + + // Show recipient frame + $pdf->SetTextColor(0,0,0); + $pdf->SetFont('','', $default_font_size - 2); + $pdf->SetXY($posx+2,$posy-5); + $pdf->MultiCell($widthrecbox, 5, $outputlangs->transnoentities("BillTo").":",0,'L'); + $pdf->Rect($posx, $posy, $widthrecbox, $hautcadre); + + // Show recipient name + $pdf->SetXY($posx+2,$posy+3); + $pdf->SetFont('','B', $default_font_size); + $pdf->MultiCell($widthrecbox, 4, $carac_client_name, 0, 'L'); + + $posy = $pdf->getY(); + + // Show recipient information + $pdf->SetFont('','', $default_font_size - 1); + $pdf->SetXY($posx+2,$posy); + $pdf->MultiCell($widthrecbox, 4, $carac_client, 0, 'L'); + } + } + + /** + * Show footer of page. Need this->emetteur object + * + * @param PDF $pdf PDF + * @param FactureFournisseur $object Object to show + * @param Translate $outputlangs Object lang for output + * @param int $hidefreetext 1=Hide free text + * @return int Return height of bottom margin including footer text + */ + function _pagefoot(&$pdf, $object, $outputlangs,$hidefreetext=0) + { + global $conf; + $showdetails=$conf->global->MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS; + return pdf_pagefoot($pdf,$outputlangs,'SUPPLIER_INVOICE_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object,$showdetails,$hidefreetext); + } + +} + diff --git a/htdocs/fourn/paiement/card.php b/htdocs/fourn/paiement/card.php index 3b93eb85cc9..16e5dd1892e 100644 --- a/htdocs/fourn/paiement/card.php +++ b/htdocs/fourn/paiement/card.php @@ -26,6 +26,7 @@ */ require '../../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php'; require DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php'; require DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php'; require DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; @@ -143,6 +144,7 @@ llxHeader(); $result=$object->fetch($id); $form = new Form($db); +$formfile = new FormFile($db); $head = payment_supplier_prepare_head($object); @@ -344,6 +346,34 @@ if ($result > 0) } } print '
    '; + + print '
    '; + + /* + * Documents generes + */ + $ref=dol_sanitizeFileName($object->ref); + $subdir = get_exdir($object->id,2,0,0,$object,'supplier_payment').$ref; + $filedir = $conf->fournisseur->paiement->dir_output.'/'.get_exdir($object->id,2,0,0,$object,'supplier_payment').$ref; + $urlsource=$_SERVER['PHP_SELF'].'?id='.$object->id; + $genallowed=$user->rights->fournisseur->facture->creer; + $delallowed=$user->rights->fournisseur->facture->supprimer; + $modelpdf=(! empty($object->modelpdf)?$object->modelpdf:(empty($conf->global->SUPPLIER_PAYMENT_ADDON_PDF)?'':$conf->global->SUPPLIER_PAYMENT_ADDON_PDF)); + + print $formfile->showdocuments('supplier_payment',$subdir,$filedir,$urlsource,$genallowed,$delallowed,$modelpdf,1,0,0,40,0,'','','',$societe->default_lang); + $somethingshown=$formfile->numoffiles; + + print '
    '; + //print ''; + //print '
    '; + + // List of actions on element + include_once DOL_DOCUMENT_ROOT.'/core/class/html.formactions.class.php'; + $formactions=new FormActions($db); + $somethingshown=$formactions->showactions($object,'supplier_payment',$socid,0,'listaction'.($genallowed?'largetitle':'')); + + print '
    '; + //print ''; } else From f5569ee890e6e01580969639b24c7b2641ff8566 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 11 Feb 2017 13:50:30 +0100 Subject: [PATCH 0253/1163] Add tasktime_task_duration_sec tag in odt substitution --- .../core/modules/project/doc/doc_generic_project_odt.modules.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php index 2a236e6d62c..06b188496a5 100644 --- a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php +++ b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php @@ -274,6 +274,7 @@ class doc_generic_project_odt extends ModelePDFProjects return array( 'tasktime_rowid'=>$tasktime['rowid'], 'tasktime_task_date'=>dol_print_date($tasktime['task_date'],'day'), + 'tasktime_task_duration_sec'=>$tasktime['task_duration'], 'tasktime_task_duration'=>convertSecondToTime($tasktime['task_duration'],'all'), 'tasktime_note'=>$tasktime['note'], 'tasktime_fk_user'=>$tasktime['fk_user'], From 3fa19f84e31c7bd8b787425624feadc58ced87cd Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 11 Feb 2017 15:40:25 +0100 Subject: [PATCH 0254/1163] FIX the dolCopyDir fails if target dir does not exists. --- htdocs/core/lib/files.lib.php | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 1f7974775b5..6bce1a443c5 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -515,13 +515,23 @@ function dolCopyDir($srcfile, $destfile, $newmask, $overwriteifexists) $result=0; - dol_syslog("files.lib.php::dolCopyr srcfile=".$srcfile." destfile=".$destfile." newmask=".$newmask." overwriteifexists=".$overwriteifexists); + dol_syslog("files.lib.php::dolCopyDir srcfile=".$srcfile." destfile=".$destfile." newmask=".$newmask." overwriteifexists=".$overwriteifexists); if (empty($srcfile) || empty($destfile)) return -1; $destexists=dol_is_dir($destfile); if (! $overwriteifexists && $destexists) return 0; - + + if (! $destexists) + { + // We must set mask just before creating dir, becaause it can be set differently by dol_copy + umask(0); + $dirmaskdec=octdec($newmask); + if (empty($newmask) && ! empty($conf->global->MAIN_UMASK)) $dirmaskdec=octdec($conf->global->MAIN_UMASK); + $dirmaskdec |= octdec('0200'); // Set w bit required to be able to create content for recursive subdirs files + dol_mkdir($destfile."/".$file, '', decoct($dirmaskdec)); + } + $srcfile=dol_osencode($srcfile); $destfile=dol_osencode($destfile); @@ -538,6 +548,7 @@ function dolCopyDir($srcfile, $destfile, $newmask, $overwriteifexists) { if (!is_dir($destfile."/".$file)) { + // We must set mask just before creating dir, becaause it can be set differently by dol_copy umask(0); $dirmaskdec=octdec($newmask); if (empty($newmask) && ! empty($conf->global->MAIN_UMASK)) $dirmaskdec=octdec($conf->global->MAIN_UMASK); From f34e0b1bdb1deebdfb85dc57970c9fc9794f68ee Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 11 Feb 2017 15:41:01 +0100 Subject: [PATCH 0255/1163] NEW Can deploy an external module from the module setup area. --- htdocs/admin/modules.php | 405 +++++++++++++++++++-------------- htdocs/admin/tools/update.php | 252 +++----------------- htdocs/langs/en_US/admin.lang | 22 +- htdocs/langs/en_US/errors.lang | 3 +- 4 files changed, 279 insertions(+), 403 deletions(-) diff --git a/htdocs/admin/modules.php b/htdocs/admin/modules.php index b61e5a4a86e..e34861450eb 100644 --- a/htdocs/admin/modules.php +++ b/htdocs/admin/modules.php @@ -29,12 +29,15 @@ require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; -require_once DOL_DOCUMENT_ROOT . '/core/lib/functions2.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/geturl.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; $langs->load("errors"); $langs->load("admin"); -$mode=GETPOST('mode', 'alpha')?GETPOST('mode', 'alpha'):0; +$mode=GETPOST('mode', 'alpha'); +if (empty($mode)) $mode='common'; $action=GETPOST('action','alpha'); $value=GETPOST('value', 'alpha'); $page_y=GETPOST('page_y','int'); @@ -69,13 +72,14 @@ if ($search_status) $param.='&search_status='.urlencode($search_status); if ($search_nature) $param.='&search_nature='.urlencode($search_nature); if ($search_version) $param.='&search_version='.urlencode($search_version); +$dirins=DOL_DOCUMENT_ROOT.'/custom'; +$urldolibarrmodules='https://www.dolistore.com/'; /* * Actions */ - if (GETPOST('buttonreset')) { $search_keyword=''; @@ -84,6 +88,103 @@ if (GETPOST('buttonreset')) $search_version=''; } +if ($action=='install') +{ + $error=0; + + // $original_file should match format module_modulename-x.y[.z].zip + $original_file=basename($_FILES["fileinstall"]["name"]); + $newfile=$conf->admin->dir_temp.'/'.$original_file.'/'.$original_file; + + if (! $original_file) + { + $langs->load("Error"); + setEventMessages($langs->trans("ErrorModuleFileRequired"), null, 'warnings'); + $error++; + } + else + { + if (! preg_match('/\.zip/i',$original_file)) + { + $langs->load("errors"); + setEventMessages($langs->trans("ErrorFileMustBeADolibarrPackage",$original_file), null, 'errors'); + $error++; + } + } + + if (! $error) + { + if ($original_file) + { + @dol_delete_dir_recursive($conf->admin->dir_temp.'/'.$original_file); + dol_mkdir($conf->admin->dir_temp.'/'.$original_file); + } + + $tmpdir=preg_replace('/\.zip$/','',$original_file).'.dir'; + if ($tmpdir) + { + @dol_delete_dir_recursive($conf->admin->dir_temp.'/'.$tmpdir); + dol_mkdir($conf->admin->dir_temp.'/'.$tmpdir); + } + + $result=dol_move_uploaded_file($_FILES['fileinstall']['tmp_name'],$newfile,1,0,$_FILES['fileinstall']['error']); + if ($result > 0) + { + $result=dol_uncompress($newfile,$conf->admin->dir_temp.'/'.$tmpdir); + + if (! empty($result['error'])) + { + $langs->load("errors"); + setEventMessages($langs->trans($result['error'],$original_file), null, 'errors'); + $error++; + } + else + { + // Now we move the dir of the module + $modulename=preg_replace('/module_/', '', $original_file); + $modulename=preg_replace('/\-[\d]+\.[\d]+.*$/', '', $modulename); + // Search dir $modulename + $modulenamedir=$conf->admin->dir_temp.'/'.$tmpdir.'/'.$modulename; + //var_dump($modulenamedir); + if (! dol_is_dir($modulenamedir)) + { + $modulenamedir=$conf->admin->dir_temp.'/'.$tmpdir.'/htdocs/'.$modulename; + //var_dump($modulenamedir); + if (! dol_is_dir($modulenamedir)) + { + setEventMessages($langs->trans("ErrorModuleFileSeemsToHaveAWrongFormat"), null, 'errors'); + $error++; + } + } + + if (! $error) + { + //var_dump($dirins); + @dol_delete_dir_recursive($dirins.'/'.$modulename); + dol_syslog("Uncompress of module file is a success. We copy it from ".$modulenamedir." into target dir ".$dirins.'/'.$modulename); + $result=dolCopyDir($modulenamedir, $dirins.'/'.$modulename, '0444', 1); + if ($result <= 0) + { + dol_syslog('Failed to call dolCopyDir result='.$result." with param ".$modulenamedir." and ".$dirins.'/'.$modulename, LOG_WARNING); + $langs->load("errors"); + setEventMessages($langs->trans("ErrorFailToCopyDir", $modulenamedir, $dirins.'/'.$modulename), null, 'errors'); + $error++; + } + } + } + } + else + { + $error++; + } + } + + if (! $error) + { + setEventMessages($langs->trans("SetupIsReadyForUse", DOL_URL_ROOT.'/admin/modules.php?mainmenu=home', $langs->transnoentitiesnoconv("Home").' - '.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("Modules")), null, 'warnings'); + } +} + if ($action == 'set' && $user->admin) { $resarray = activateModule($value); @@ -115,6 +216,13 @@ if ($action == 'reset' && $user->admin) * View */ +// Set dir where external modules are installed +if (! dol_is_dir($dirins)) +{ + dol_mkdir($dirins); +} +$dirins_ok=(dol_is_dir($dirins)); + $form = new Form($db); $help_url='EN:First_setup|FR:Premiers_paramétrages|ES:Primeras_configuraciones'; @@ -277,33 +385,35 @@ if ($nbofactivatedmodules <= 1) $moreinfo .= ' '.img_warning($langs->trans("YouM print load_fiche_titre($langs->trans("ModulesSetup"),$moreinfo,'title_setup'); // Start to show page -if (empty($mode)) $mode='common'; -if ($mode==='common') print $langs->trans("ModulesDesc")."
    \n"; -if ($mode==='marketplace') print $langs->trans("ModulesMarketPlaceDesc")."
    \n"; -if ($mode==='expdev') print $langs->trans("ModuleFamilyExperimental")."
    \n"; +if ($mode=='common') print $langs->trans("ModulesDesc")."
    \n"; +if ($mode=='marketplace') print $langs->trans("ModulesMarketPlaceDesc")."
    \n"; +if ($mode=='deploy') print $langs->trans("ModulesDeployDesc", $langs->transnoentitiesnoconv("AvailableModules"))."
    \n"; $h = 0; -$categidx='common'; // Main -$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?mode=".$categidx; +$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?mode=common"; $head[$h][1] = $langs->trans("AvailableModules"); $head[$h][2] = 'common'; $h++; -$categidx='marketplace'; -$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?mode=".$categidx; +$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?mode=marketplace"; $head[$h][1] = $langs->trans("ModulesMarketPlaces"); $head[$h][2] = 'marketplace'; $h++; +$head[$h][0] = DOL_URL_ROOT."/admin/modules.php?mode=deploy"; +$head[$h][1] = $langs->trans("AddExtensionThemeModuleOrOther"); +$head[$h][2] = 'deploy'; +$h++; + print "
    \n"; $var=true; -if ($mode != 'marketplace') +if ($mode == 'common') { print ''; @@ -351,7 +461,6 @@ if ($mode != 'marketplace') //print '
    '; } - //dol_fiche_end(); print '

    '; @@ -477,163 +586,6 @@ if ($mode != 'marketplace') $imginfo="info_black"; } - // Define text of description of module - /* - $text=''; - - if ($objMod->getDescLong()) $text.='
    '.$objMod->getDesc().'

    '.$objMod->getDescLong().'
    '; - else $text.='
    '.$objMod->getDesc().'

    '; - - $text.='
    '.$langs->trans("Version").': '.$version; - - $textexternal=''; - if ($objMod->isCoreOrExternalModule() == 'external') - { - $textexternal.='
    '.$langs->trans("Origin").': '.$langs->trans("ExternalModule",$dirofmodule); - if ($objMod->editor_name != 'dolibarr') $textexternal.='
    '.$langs->trans("Publisher").': '.(empty($objMod->editor_name)?$langs->trans("Unknown"):$objMod->editor_name); - if (! empty($objMod->editor_url) && ! preg_match('/dolibarr\.org/i',$objMod->editor_url)) $textexternal.='
    '.$langs->trans("Url").': '.$objMod->editor_url; - $text.=$textexternal; - $text.='
    '; - } - else - { - $text.='
    '.$langs->trans("Origin").': '.$langs->trans("Core").'
    '; - } - $text.='
    '.$langs->trans("LastActivationDate").': '; - if (! empty($conf->global->$const_name)) $text.=dol_print_date($objMod->getLastActivationDate(), 'dayhour'); - else $text.=$langs->trans("Disabled"); - $text.='
    '; - - $text.='
    '.$langs->trans("AddRemoveTabs").': '; - if (isset($objMod->tabs) && is_array($objMod->tabs) && count($objMod->tabs)) - { - $i=0; - foreach($objMod->tabs as $val) - { - $tmp=explode(':',$val,3); - $text.=($i?', ':'').$tmp[0].':'.$tmp[1]; - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddDictionaries").': '; - if (isset($objMod->dictionaries) && isset($objMod->dictionaries['tablib']) && is_array($objMod->dictionaries['tablib']) && count($objMod->dictionaries['tablib'])) - { - $i=0; - foreach($objMod->dictionaries['tablib'] as $val) - { - $text.=($i?', ':'').$val; - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddBoxes").': '; - if (isset($objMod->boxes) && is_array($objMod->boxes) && count($objMod->boxes)) - { - $i=0; - foreach($objMod->boxes as $val) - { - $text.=($i?', ':'').($val['file']?$val['file']:$val[0]); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddModels").': '; - if (isset($objMod->module_parts) && isset($objMod->module_parts['models']) && $objMod->module_parts['models']) - { - $text.=$langs->trans("Yes"); - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddSubstitutions").': '; - if (isset($objMod->module_parts) && isset($objMod->module_parts['substitutions']) && $objMod->module_parts['substitutions']) - { - $text.=$langs->trans("Yes"); - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddSheduledJobs").': '; - if (isset($objMod->cronjobs) && is_array($objMod->cronjobs) && count($objMod->cronjobs)) - { - $i=0; - foreach($objMod->cronjobs as $val) - { - $text.=($i?', ':'').($val['label']); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddTriggers").': '; - if (isset($objMod->module_parts) && isset($objMod->module_parts['triggers']) && $objMod->module_parts['triggers']) - { - $text.=$langs->trans("Yes"); - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddHooks").': '; - if (isset($objMod->module_parts) && is_array($objMod->module_parts['hooks']) && count($objMod->module_parts['hooks'])) - { - $i=0; - foreach($objMod->module_parts['hooks'] as $val) - { - $text.=($i?', ':'').($val); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddPermissions").': '; - if (isset($objMod->rights) && is_array($objMod->rights) && count($objMod->rights)) - { - $i=0; - foreach($objMod->rights as $val) - { - $text.=($i?', ':'').($val[1]); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddMenus").': '; - if (isset($objMod->menu) && ! empty($objMod->menu)) // objMod can be an array or just an int 1 - { - $text.=$langs->trans("Yes"); - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddExportProfiles").': '; - if (isset($objMod->export_label) && is_array($objMod->export_label) && count($objMod->export_label)) - { - $i=0; - foreach($objMod->export_label as $val) - { - $text.=($i?', ':'').($val); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddImportProfiles").': '; - if (isset($objMod->import_label) && is_array($objMod->import_label) && count($objMod->import_label)) - { - $i=0; - foreach($objMod->import_label as $val) - { - $text.=($i?', ':'').($val); - $i++; - } - } - else $text.=$langs->trans("No"); - - $text.='
    '.$langs->trans("AddOtherPagesOrServices").': '; - $text.=$langs->trans("DetectionNotPossible"); - */ - - //print "\n\n"; print '\n"; // Picto @@ -768,8 +720,11 @@ if ($mode != 'marketplace') } print "\n"; print '
    '; + + dol_fiche_end(); } -else + +if ($mode == 'marketplace') { dol_fiche_head($head, $mode, ''); @@ -799,13 +754,115 @@ else print "\n"; - //dol_fiche_end(); + dol_fiche_end(); +} + + +// Install external module + +if ($mode == 'deploy') +{ + dol_fiche_head($head, $mode, ''); + + + $allowonlineinstall=true; + $allowfromweb=1; + if (dol_is_file($dolibarrdataroot.'/installmodules.lock')) $allowonlineinstall=false; + + $fullurl=''.$urldolibarrmodules.''; + $message=''; + if (! empty($allowonlineinstall)) + { + if (! in_array('/custom',explode(',',$dolibarr_main_url_root_alt))) + { + $message=info_admin($langs->trans("ConfFileMuseContainCustom", DOL_DOCUMENT_ROOT.'/custom', DOL_DOCUMENT_ROOT)); + $allowfromweb=-1; + } + else + { + if ($dirins_ok) + { + if (! is_writable(dol_osencode($dirins))) + { + $langs->load("errors"); + $message=info_admin($langs->trans("ErrorFailedToWriteInDir",$dirins)); + $allowfromweb=0; + } + } + else + { + + $message=info_admin($langs->trans("NotExistsDirect",$dirins).$langs->trans("InfDirAlt").$langs->trans("InfDirExample")); + $allowfromweb=0; + } + } + } + else + { + $message=info_admin($langs->trans("InstallModuleFromWebHasBeenDisabledByFile",$dolibarrdataroot.'/installmodules.lock')); + $allowfromweb=0; + } + + if ($allowfromweb < 1) + { + print $langs->trans("SomethingMakeInstallFromWebNotPossible"); + print $message; + //print $langs->trans("SomethingMakeInstallFromWebNotPossible2"); + print '
    '; + } + + + if ($allowfromweb >= 0) + { + if ($allowfromweb == 1) + { + //print $langs->trans("ThisIsProcessToFollow").'
    '; + } + else + { + print $langs->trans("ThisIsAlternativeProcessToFollow").'
    '; + print ''.$langs->trans("StepNb",1).': '; + print $langs->trans("FindPackageFromWebSite",$fullurl).'
    '; + print ''.$langs->trans("StepNb",2).': '; + print $langs->trans("DownloadPackageFromWebSite",$fullurl).'
    '; + print ''.$langs->trans("StepNb",3).': '; + } + + if ($allowfromweb == 1) + { + print $langs->trans("UnpackPackageInModulesRoot",$dirins).'
    '; + print ''; + print ''; + print ''; + print $langs->trans("YouCanSubmitFile").' '; + print ''; + print ''; + } + else + { + print $langs->trans("UnpackPackageInModulesRoot",$dirins).'
    '; + print ''.$langs->trans("StepNb",4).': '; + print $langs->trans("SetupIsReadyForUse").'
    '; + } + } + + + if (! empty($result['return'])) + { + print '
    '; + + foreach($result['return'] as $value) + { + echo $value.'
    '; + } + } + + dol_fiche_end(); } -dol_fiche_end(); // Show warning about external users -if ($mode != 'marketplace') print info_admin(showModulesExludedForExternal($modules))."\n"; +if ($mode == 'common') print info_admin(showModulesExludedForExternal($modules))."\n"; llxFooter(); diff --git a/htdocs/admin/tools/update.php b/htdocs/admin/tools/update.php index 912016b498c..d8b17ab989b 100644 --- a/htdocs/admin/tools/update.php +++ b/htdocs/admin/tools/update.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2007-2017 Laurent Destailleur * Copyright (C) 2009-2012 Regis Houssin * Copyright (C) 2012 Juanjo Menent * @@ -23,9 +23,9 @@ */ require '../../main.inc.php'; -include_once DOL_DOCUMENT_ROOT . '/core/lib/admin.lib.php'; -include_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; -include_once DOL_DOCUMENT_ROOT . '/core/lib/geturl.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/geturl.lib.php'; $langs->load("admin"); $langs->load("other"); @@ -40,111 +40,23 @@ if (GETPOST('msg','alpha')) { $urldolibarr='https://www.dolibarr.org/downloads/'; -$urldolibarrmodules='https://www.dolistore.com/'; -$urldolibarrthemes='https://www.dolistore.com/'; $dolibarrroot=preg_replace('/([\\/]+)$/i','',DOL_DOCUMENT_ROOT); $dolibarrroot=preg_replace('/([^\\/]+)$/i','',$dolibarrroot); $dolibarrdataroot=preg_replace('/([\\/]+)$/i','',DOL_DATA_ROOT); -$dirins=DOL_DOCUMENT_ROOT.'/custom'; +$sfurl = ''; +$version='0.0'; /* * Actions */ -if ($action=='install') +if ($action == 'getlastversion') { - $error=0; - - // $original_file should match format module_modulename-x.y[.z].zip - $original_file=basename($_FILES["fileinstall"]["name"]); - $newfile=$conf->admin->dir_temp.'/'.$original_file.'/'.$original_file; - - if (! $original_file) - { - $langs->load("Error"); - setEventMessages($langs->trans("ErrorFileRequired"), null, 'warnings'); - $error++; - } - else - { - if (! preg_match('/\.zip/i',$original_file)) - { - $langs->load("errors"); - setEventMessages($langs->trans("ErrorFileMustBeADolibarrPackage",$original_file), null, 'errors'); - $error++; - } - } - - if (! $error) - { - if ($original_file) - { - @dol_delete_dir_recursive($conf->admin->dir_temp.'/'.$original_file); - dol_mkdir($conf->admin->dir_temp.'/'.$original_file); - } - - $tmpdir=preg_replace('/\.zip$/','',$original_file).'.dir'; - if ($tmpdir) - { - @dol_delete_dir_recursive($conf->admin->dir_temp.'/'.$tmpdir); - dol_mkdir($conf->admin->dir_temp.'/'.$tmpdir); - } - - $result=dol_move_uploaded_file($_FILES['fileinstall']['tmp_name'],$newfile,1,0,$_FILES['fileinstall']['error']); - if ($result > 0) - { - $result=dol_uncompress($newfile,$conf->admin->dir_temp.'/'.$tmpdir); - - if (! empty($result['error'])) - { - $langs->load("errors"); - setEventMessages($langs->trans($result['error'],$original_file), null, 'errors'); - $error++; - } - else - { - // Now we move the dir of the module - $modulename=preg_replace('/module_/', '', $original_file); - $modulename=preg_replace('/\-[\d]+\.[\d]+.*$/', '', $modulename); - // Search dir $modulename - $modulenamedir=$conf->admin->dir_temp.'/'.$tmpdir.'/'.$modulename; - //var_dump($modulenamedir); - if (! dol_is_dir($modulenamedir)) - { - $modulenamedir=$conf->admin->dir_temp.'/'.$tmpdir.'/htdocs/'.$modulename; - //var_dump($modulenamedir); - if (! dol_is_dir($modulenamedir)) - { - setEventMessages($langs->trans("ErrorModuleFileSeemsToHaveAWrongFormat"), null, 'errors'); - $error++; - } - } - - if (! $error) - { - //var_dump($dirins); - @dol_delete_dir_recursive($dirins.'/'.$modulename); - $result=dolCopyDir($modulenamedir, $dirins.'/'.$modulename, '0444', 1); - if ($result <= 0) - { - setEventMessages($langs->trans("ErrorFailedToCopy"), null, 'errors'); - $error++; - } - } - } - } - else - { - $error++; - } - } - - if (! $error) - { - setEventMessages($langs->trans("SetupIsReadyForUse", DOL_URL_ROOT.'/admin/modules.php?mainmenu=home', $langs->transnoentitiesnoconv("Home").' - '.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("Modules")), null, 'warnings'); - } + $result = getURLContent('http://sourceforge.net/projects/dolibarr/rss'); + //var_dump($result['content']); + $sfurl = simplexml_load_string($result['content']); } @@ -152,15 +64,6 @@ if ($action=='install') * View */ - - -// Set dir where external modules are installed -if (! dol_is_dir($dirins)) -{ - dol_mkdir($dirins); -} -$dirins_ok=(dol_is_dir($dirins)); - $wikihelp='EN:Installation_-_Upgrade|FR:Installation_-_Mise_à_jour|ES:Instalación_-_Actualización'; llxHeader('',$langs->trans("Upgrade"),$wikihelp); @@ -172,36 +75,40 @@ if (function_exists('curl_init')) { $conf->global->MAIN_USE_RESPONSE_TIMEOUT = 10; - $result = getURLContent('http://sourceforge.net/projects/dolibarr/rss'); - //var_dump($result['content']); - $sfurl = simplexml_load_string($result['content']); - if ($sfurl) + if ($action == 'getlastversion') { - $i=0; - $version='0.0'; - while (! empty($sfurl->channel[0]->item[$i]->title) && $i < 10000) + if ($sfurl) { - $title=$sfurl->channel[0]->item[$i]->title; - if (preg_match('/([0-9]+\.([0-9\.]+))/', $title, $reg)) + $i=0; + while (! empty($sfurl->channel[0]->item[$i]->title) && $i < 10000) { - $newversion=$reg[1]; - $newversionarray=explode('.',$newversion); - $versionarray=explode('.',$version); - //var_dump($newversionarray);var_dump($versionarray); - if (versioncompare($newversionarray, $versionarray) > 0) $version=$newversion; + $title=$sfurl->channel[0]->item[$i]->title; + if (preg_match('/([0-9]+\.([0-9\.]+))/', $title, $reg)) + { + $newversion=$reg[1]; + $newversionarray=explode('.',$newversion); + $versionarray=explode('.',$version); + //var_dump($newversionarray);var_dump($versionarray); + if (versioncompare($newversionarray, $versionarray) > 0) $version=$newversion; + } + $i++; } - $i++; + + // Show version + print $langs->trans("LastStableVersion").' : '. (($version != '0.0')?$version:$langs->trans("Unknown")) .'
    '; + } + else + { + print $langs->trans("LastStableVersion").' : ' .$langs->trans("UpdateServerOffline").'
    '; } - - // Show version - print $langs->trans("LastStableVersion").' : '. (($version != '0.0')?$version:$langs->trans("Unknown")) .'
    '; } else { - print $langs->trans("LastStableVersion").' : ' .$langs->trans("UpdateServerOffline").'
    '; + print $langs->trans("LastStableVersion").' : ' .$langs->trans("Check").'
    '; } } +print '
    '; print '
    '; // Upgrade @@ -225,106 +132,15 @@ print '
    '; print '
    '; -// Install external module - -$allowonlineinstall=true; -$allowfromweb=1; -if (dol_is_file($dolibarrdataroot.'/installmodules.lock')) $allowonlineinstall=false; - -$fullurl=''.$urldolibarrmodules.''; -$message=''; -if (! empty($allowonlineinstall)) -{ - if (! in_array('/custom',explode(',',$dolibarr_main_url_root_alt))) - { - $message=info_admin($langs->trans("ConfFileMuseContainCustom", DOL_DOCUMENT_ROOT.'/custom', DOL_DOCUMENT_ROOT)); - $allowfromweb=-1; - } - else - { - if ($dirins_ok) - { - if (! is_writable(dol_osencode($dirins))) - { - $langs->load("errors"); - $message=info_admin($langs->trans("ErrorFailedToWriteInDir",$dirins)); - $allowfromweb=0; - } - } - else - { - - $message=info_admin($langs->trans("NotExistsDirect",$dirins).$langs->trans("InfDirAlt").$langs->trans("InfDirExample")); - $allowfromweb=0; - } - } -} -else -{ - $message=info_admin($langs->trans("InstallModuleFromWebHasBeenDisabledByFile",$dolibarrdataroot.'/installmodules.lock')); - $allowfromweb=0; -} - - print $langs->trans("AddExtensionThemeModuleOrOther").'
    '; print '
    '; -if ($allowfromweb < 1) -{ - print $langs->trans("SomethingMakeInstallFromWebNotPossible"); - print $message; - //print $langs->trans("SomethingMakeInstallFromWebNotPossible2"); - print '
    '; -} +print $langs->trans("GoModuleSetupArea", DOL_URL_ROOT.'/admin/modules.php?mode=deploy', $langs->transnoentities("Home").' - '.$langs->transnoentities("Setup").' - '.$langs->transnoentities("Modules")); -if ($allowfromweb >= 0) -{ - if ($allowfromweb == 1) - { - //print $langs->trans("ThisIsProcessToFollow").'
    '; - } - else - { - print $langs->trans("ThisIsAlternativeProcessToFollow").'
    '; - print ''.$langs->trans("StepNb",1).': '; - print $langs->trans("FindPackageFromWebSite",$fullurl).'
    '; - print ''.$langs->trans("StepNb",2).': '; - print $langs->trans("DownloadPackageFromWebSite",$fullurl).'
    '; - print ''.$langs->trans("StepNb",3).': '; - } - - if ($allowfromweb == 1) - { - print $langs->trans("UnpackPackageInModulesRoot",$dirins).'
    '; - print '
    '; - print ''; - print $langs->trans("YouCanSubmitFile").' '; - print ''; - print '
    '; - } - else - { - print $langs->trans("UnpackPackageInModulesRoot",$dirins).'
    '; - print ''.$langs->trans("StepNb",4).': '; - print $langs->trans("SetupIsReadyForUse").'
    '; - } -} - - -if (! empty($result['return'])) -{ - print '
    '; - - foreach($result['return'] as $value) - { - echo $value.'
    '; - } -} - llxFooter(); $db->close(); diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 6ee9a1854f4..36d8772dccb 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -191,7 +191,9 @@ BoxesDesc=Widgets are components showing some information that you can add to pe OnlyActiveElementsAreShown=Only elements from enabled modules are shown. ModulesDesc=Dolibarr modules define which functionality is enabled in software. Some modules require permissions you must grant to users, after enabling module. Click on button on/off to enable a module/feature. ModulesMarketPlaceDesc=You can find more modules to download on external websites on the Internet... -ModulesMarketPlaces=More modules... +ModulesDeployDesc=If permissions on your file system allows it, you can use this tool to deploy an external module. The module wil then be visible on the tab %s. +ModulesMarketPlaces=Find external modules... +GoModuleSetupArea=To deploy/install a new module, go onto the Module setup area at %s. DoliStoreDesc=DoliStore, the official market place for Dolibarr ERP/CRM external modules DoliPartnersDesc=List of companies providing custom developed modules or features (Note: anyone experienced in PHP programming can provide custom development for an open source project) WebSiteDesc=Reference websites to find more modules... @@ -283,16 +285,16 @@ MenuHandlers=Menu handlers MenuAdmin=Menu editor DoNotUseInProduction=Do not use in production ThisIsProcessToFollow=This is steps to process: -ThisIsAlternativeProcessToFollow=This is an alternative setup to process: +ThisIsAlternativeProcessToFollow=This is an alternative setup to process manually: StepNb=Step %s FindPackageFromWebSite=Find a package that provides feature you want (for example on official web site %s). DownloadPackageFromWebSite=Download package (for example from official web site %s). -UnpackPackageInDolibarrRoot=Unpack package files into Dolibarr server directory dedicated to Dolibarr: %s -UnpackPackageInModulesRoot=Unpack package files into Dolibarr server directory dedicated to modules: %s -oiSetupIsReadyForUse=Module deployement is finished. You must however enable and setup the module in your application by going on the page to setup modules: %s. -NotExistsDirect=The alternative root directory is not defined.
    -InfDirAlt=Since version 3 it is possible to define an alternative root directory.This allows you to store, same place, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    -InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='http://myserver/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    *These lines are commented with "#", to uncomment only remove the character. +UnpackPackageInDolibarrRoot=Unpack the packaged files into server directory dedicated to Dolibarr: %s +UnpackPackageInModulesRoot=To deploy/install an external module, unpack the packaged files into the server directory dedicated to modules: %s +SetupIsReadyForUse=Module deployment is finished. You must however enable and setup the module in your application by going on the page to setup modules: %s. +NotExistsDirect=The alternative root directory is not defined to an existing directory.
    +InfDirAlt=Since version 3, it is possible to define an alternative root directory. This allows you to store, into a dedicated directory, plug-ins and custom templates.
    Just create a directory at the root of Dolibarr (eg: custom).
    +InfDirExample=
    Then declare it in the file conf.php
    $dolibarr_main_url_root_alt='http://myserver/custom'
    $dolibarr_main_document_root_alt='/path/of/dolibarr/htdocs/custom'
    If these lines are commented with "#", to enable them, just uncomment by removing the "#" character. YouCanSubmitFile=For this step, you can send package using this tool: Select module file CurrentVersion=Dolibarr current version CallUpdatePage=Go to the page that updates the database structure and data: %s. @@ -895,7 +897,7 @@ Offset=Offset AlwaysActive=Always active Upgrade=Upgrade MenuUpgrade=Upgrade / Extend -AddExtensionThemeModuleOrOther=Add extension (theme, module, ...) +AddExtensionThemeModuleOrOther=Deploy/install external module WebServer=Web server DocumentRootServer=Web server's root directory DataRootServer=Data files directory @@ -1582,7 +1584,7 @@ BackupDumpWizard=Wizard to build database backup dump file SomethingMakeInstallFromWebNotPossible=Installation of external module is not possible from the web interface for the following reason: SomethingMakeInstallFromWebNotPossible2=For this reason, process to upgrade described here is only manual steps a privileged user can do. InstallModuleFromWebHasBeenDisabledByFile=Install of external module from application has been disabled by your administrator. You must ask him to remove the file %s to allow this feature. -ConfFileMuseContainCustom=Installing an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to have option
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; +ConfFileMuseContainCustom=Installing an external module from application need to save the module files into directory %s. To have this directory processed by Dolibarr, you must setup your conf/conf.php to add the 2 directive lines:
    $dolibarr_main_url_root_alt='/custom';
    $dolibarr_main_document_root_alt='%s/custom'; HighlightLinesOnMouseHover=Highlight table lines when mouse move passes over HighlightLinesColor=Highlight color of the line when the mouse passes over (keep empty for no highlight) TextTitleColor=Color of page title diff --git a/htdocs/langs/en_US/errors.lang b/htdocs/langs/en_US/errors.lang index edbf603e8fc..e493bc67524 100644 --- a/htdocs/langs/en_US/errors.lang +++ b/htdocs/langs/en_US/errors.lang @@ -11,6 +11,7 @@ ErrorLoginAlreadyExists=Login %s already exists. ErrorGroupAlreadyExists=Group %s already exists. ErrorRecordNotFound=Record not found. ErrorFailToCopyFile=Failed to copy file '%s' into '%s'. +ErrorFailToCopyDir=Failed to copy directory '%s' into '%s'. ErrorFailToRenameFile=Failed to rename file '%s' into '%s'. ErrorFailToDeleteFile=Failed to remove file '%s'. ErrorFailToCreateFile=Failed to create file '%s'. @@ -115,7 +116,7 @@ ErrorNoActivatedBarcode=No barcode type activated ErrUnzipFails=Failed to unzip %s with ZipArchive ErrNoZipEngine=No engine to unzip %s file in this PHP ErrorFileMustBeADolibarrPackage=The file %s must be a Dolibarr zip package -ErrorFileRequired=It takes a package Dolibarr file +ErrorModuleFileRequired=You must select a Dolibarr module package file ErrorPhpCurlNotInstalled=The PHP CURL is not installed, this is essential to talk with Paypal ErrorFailedToAddToMailmanList=Failed to add record %s to Mailman list %s or SPIP base ErrorFailedToRemoveToMailmanList=Failed to remove record %s to Mailman list %s or SPIP base From 05c9f57fd466c8f5a4b0c232f2a9718bdf26e2e3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 12 Feb 2017 18:13:49 +0100 Subject: [PATCH 0256/1163] Move edition of emails templates out of dictionaries so we would be able to have templates per user (not reserved to admin). --- htdocs/admin/dict.php | 121 +-- htdocs/admin/mails.php | 39 +- htdocs/admin/mails_templates.php | 869 ++++++++++++++++++++++ htdocs/admin/modulehelp.php | 271 +++---- htdocs/core/class/html.formmail.class.php | 34 +- htdocs/langs/en_US/admin.lang | 1 + htdocs/langs/en_US/mails.lang | 3 + 7 files changed, 1081 insertions(+), 257 deletions(-) create mode 100644 htdocs/admin/mails_templates.php diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php index 09ee313e487..b272105fe16 100644 --- a/htdocs/admin/dict.php +++ b/htdocs/admin/dict.php @@ -86,7 +86,7 @@ $hookmanager->initHooks(array('admin')); // Put here declaration of dictionaries properties // Sort order to show dictionary (0 is space). All other dictionaries (added by modules) will be at end of this. -$taborder=array(9,0,4,3,2,0,1,8,19,16,27,0,5,11,0,33,34,0,6,0,29,0,7,17,24,28,0,10,23,12,13,0,14,0,22,20,18,21,0,15,30,0,25,0,26,0,32,0); +$taborder=array(9,0,4,3,2,0,1,8,19,16,27,0,5,11,0,33,34,0,6,0,29,0,7,17,24,28,0,10,23,12,13,0,14,0,22,20,18,21,0,15,30,0,26,0,32,0); // Name of SQL tables of dictionaries $tabname=array(); @@ -114,7 +114,7 @@ $tabname[21]= MAIN_DB_PREFIX."c_availability"; $tabname[22]= MAIN_DB_PREFIX."c_input_reason"; $tabname[23]= MAIN_DB_PREFIX."c_revenuestamp"; $tabname[24]= MAIN_DB_PREFIX."c_type_resource"; -$tabname[25]= MAIN_DB_PREFIX."c_email_templates"; +//$tabname[25]= MAIN_DB_PREFIX."c_email_templates"; $tabname[26]= MAIN_DB_PREFIX."c_units"; $tabname[27]= MAIN_DB_PREFIX."c_stcomm"; $tabname[28]= MAIN_DB_PREFIX."c_holiday_types"; @@ -151,7 +151,7 @@ $tablib[21]= "DictionaryAvailability"; $tablib[22]= "DictionarySource"; $tablib[23]= "DictionaryRevenueStamp"; $tablib[24]= "DictionaryResourceType"; -$tablib[25]= "DictionaryEMailTemplates"; +//$tablib[25]= "DictionaryEMailTemplates"; $tablib[26]= "DictionaryUnits"; $tablib[27]= "DictionaryProspectStatus"; $tablib[28]= "DictionaryHolidayTypes"; @@ -188,7 +188,7 @@ $tabsql[21]= "SELECT c.rowid as rowid, code, label, active FROM ".MAIN_DB_PREFIX $tabsql[22]= "SELECT rowid as rowid, code, label, active FROM ".MAIN_DB_PREFIX."c_input_reason"; $tabsql[23]= "SELECT t.rowid as rowid, t.taux, c.label as country, c.code as country_code, t.fk_pays as country_id, t.note, t.active, t.accountancy_code_sell, t.accountancy_code_buy FROM ".MAIN_DB_PREFIX."c_revenuestamp as t, ".MAIN_DB_PREFIX."c_country as c WHERE t.fk_pays=c.rowid"; $tabsql[24]= "SELECT rowid as rowid, code, label, active FROM ".MAIN_DB_PREFIX."c_type_resource"; -$tabsql[25]= "SELECT rowid as rowid, label, type_template, private, position, topic, content_lines, content, active FROM ".MAIN_DB_PREFIX."c_email_templates WHERE entity IN (".getEntity('email_template',1).")"; +//$tabsql[25]= "SELECT rowid as rowid, label, type_template, private, position, topic, content_lines, content, active FROM ".MAIN_DB_PREFIX."c_email_templates WHERE entity IN (".getEntity('email_template',1).")"; $tabsql[26]= "SELECT rowid as rowid, code, label, short_label, active FROM ".MAIN_DB_PREFIX."c_units"; $tabsql[27]= "SELECT id as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_stcomm"; $tabsql[28]= "SELECT h.rowid as rowid, h.code, h.label, h.affect, h.delay, h.newbymonth, h.fk_country as country_id, c.code as country_code, c.label as country, h.active FROM ".MAIN_DB_PREFIX."c_holiday_types as h LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON h.fk_country=c.rowid"; @@ -225,7 +225,7 @@ $tabsqlsort[21]="code ASC, label ASC"; $tabsqlsort[22]="code ASC, label ASC"; $tabsqlsort[23]="country ASC, taux ASC"; $tabsqlsort[24]="code ASC,label ASC"; -$tabsqlsort[25]="label ASC"; +//$tabsqlsort[25]="label ASC"; $tabsqlsort[26]="code ASC"; $tabsqlsort[27]="code ASC"; $tabsqlsort[28]="country ASC, code ASC"; @@ -262,7 +262,7 @@ $tabfield[21]= "code,label"; $tabfield[22]= "code,label"; $tabfield[23]= "country_id,country,taux,accountancy_code_sell,accountancy_code_buy,note"; $tabfield[24]= "code,label"; -$tabfield[25]= "label,type_template,private,position,topic,content_lines,content"; +//$tabfield[25]= "label,type_template,private,position,topic,content_lines,content"; $tabfield[26]= "code,label,short_label"; $tabfield[27]= "code,libelle"; $tabfield[28]= "code,label,affect,delay,newbymonth,country_id,country"; @@ -299,7 +299,7 @@ $tabfieldvalue[21]= "code,label"; $tabfieldvalue[22]= "code,label"; $tabfieldvalue[23]= "country,taux,accountancy_code_sell,accountancy_code_buy,note"; $tabfieldvalue[24]= "code,label"; -$tabfieldvalue[25]= "label,type_template,private,position,topic,content_lines,content"; +//$tabfieldvalue[25]= "label,type_template,private,position,topic,content_lines,content"; $tabfieldvalue[26]= "code,label,short_label"; $tabfieldvalue[27]= "code,libelle"; $tabfieldvalue[28]= "code,label,affect,delay,newbymonth,country"; @@ -336,7 +336,7 @@ $tabfieldinsert[21]= "code,label"; $tabfieldinsert[22]= "code,label"; $tabfieldinsert[23]= "fk_pays,taux,accountancy_code_sell,accountancy_code_buy,note"; $tabfieldinsert[24]= "code,label"; -$tabfieldinsert[25]= "label,type_template,private,position,topic,content_lines,content,entity"; +//$tabfieldinsert[25]= "label,type_template,private,position,topic,content_lines,content,entity"; $tabfieldinsert[26]= "code,label,short_label"; $tabfieldinsert[27]= "code,libelle"; $tabfieldinsert[28]= "code,label,affect,delay,newbymonth,fk_country"; @@ -375,7 +375,7 @@ $tabrowid[21]= "rowid"; $tabrowid[22]= "rowid"; $tabrowid[23]= ""; $tabrowid[24]= ""; -$tabrowid[25]= ""; +//$tabrowid[25]= ""; $tabrowid[26]= ""; $tabrowid[27]= "id"; $tabrowid[28]= ""; @@ -412,7 +412,7 @@ $tabcond[21]= ! empty($conf->propal->enabled); $tabcond[22]= (! empty($conf->commande->enabled) || ! empty($conf->propal->enabled)); $tabcond[23]= true; $tabcond[24]= ! empty($conf->resource->enabled); -$tabcond[25]= true; // && ! empty($conf->global->MAIN_EMAIL_EDIT_TEMPLATE_FROM_DIC); +//$tabcond[25]= true; // && ! empty($conf->global->MAIN_EMAIL_EDIT_TEMPLATE_FROM_DIC); $tabcond[26]= ! empty($conf->product->enabled); $tabcond[27]= ! empty($conf->societe->enabled); $tabcond[28]= ! empty($conf->holiday->enabled); @@ -449,7 +449,7 @@ $tabhelp[21] = array('code'=>$langs->trans("EnterAnyCode")); $tabhelp[22] = array('code'=>$langs->trans("EnterAnyCode")); $tabhelp[23] = array(); $tabhelp[24] = array('code'=>$langs->trans("EnterAnyCode")); -$tabhelp[25] = array('topic'=>$langs->trans('SeeSubstitutionVars'),'content'=>$langs->trans('SeeSubstitutionVars'),'content_lines'=>$langs->trans('SeeSubstitutionVars'),'type_template'=>$langs->trans("TemplateForElement"),'private'=>$langs->trans("TemplateIsVisibleByOwnerOnly"), 'position'=>$langs->trans("PositionIntoComboList")); +//$tabhelp[25] = array('topic'=>$langs->trans('SeeSubstitutionVars'),'content'=>$langs->trans('SeeSubstitutionVars'),'content_lines'=>$langs->trans('SeeSubstitutionVars'),'type_template'=>$langs->trans("TemplateForElement"),'private'=>$langs->trans("TemplateIsVisibleByOwnerOnly"), 'position'=>$langs->trans("PositionIntoComboList")); $tabhelp[26] = array('code'=>$langs->trans("EnterAnyCode")); $tabhelp[27] = array('code'=>$langs->trans("EnterAnyCode")); $tabhelp[28] = array('affect'=>$langs->trans("FollowedByACounter"),'delay'=>$langs->trans("MinimumNoticePeriod"), 'newbymonth'=>$langs->trans("NbAddedAutomatically")); @@ -486,7 +486,7 @@ $tabfieldcheck[21] = array(); $tabfieldcheck[22] = array(); $tabfieldcheck[23] = array(); $tabfieldcheck[24] = array(); -$tabfieldcheck[25] = array(); +//$tabfieldcheck[25] = array(); $tabfieldcheck[26] = array(); $tabfieldcheck[27] = array(); $tabfieldcheck[28] = array(); @@ -544,29 +544,6 @@ if ($id == 11) 'external' => $langs->trans('External') ); } -if ($id == 25) -{ - // We save list of template email Dolibarr can manage. This list can found by a grep into code on "->param['models']" - $elementList = array(); - if ($conf->propal->enabled) $elementList['propal_send']=$langs->trans('MailToSendProposal'); - if ($conf->commande->enabled) $elementList['order_send']=$langs->trans('MailToSendOrder'); - if ($conf->facture->enabled) $elementList['facture_send']=$langs->trans('MailToSendInvoice'); - if ($conf->expedition->enabled) $elementList['shipping_send']=$langs->trans('MailToSendShipment'); - if ($conf->ficheinter->enabled) $elementList['fichinter_send']=$langs->trans('MailToSendIntervention'); - if ($conf->supplier_proposal->enabled) $elementList['supplier_proposal_send']=$langs->trans('MailToSendSupplierRequestForQuotation'); - if ($conf->fournisseur->enabled) $elementList['order_supplier_send']=$langs->trans('MailToSendSupplierOrder'); - if ($conf->fournisseur->enabled) $elementList['invoice_supplier_send']=$langs->trans('MailToSendSupplierInvoice'); - if ($conf->societe->enabled) $elementList['thirdparty']=$langs->trans('MailToThirdparty'); - if ($conf->contrat->enabled) $elementList['contract']=$langs->trans('MailToSendContract'); - - $parameters=array('elementList'=>$elementList); - $reshook=$hookmanager->executeHooks('emailElementlist',$parameters); // Note that $action and $object may have been modified by some hooks - if ($reshook == 0) { - foreach ($hookmanager->resArray as $item => $value) { - $elementList[$item] = $value; - } - } -} // Define localtax_typeList (used for dictionary "llx_c_tva") $localtax_typeList = array(); @@ -1048,7 +1025,6 @@ if ($id) if ($fieldlist[$field]=='pcg_subtype') { $valuetoshow=$langs->trans("Pcg_subtype"); } if ($fieldlist[$field]=='sortorder') { $valuetoshow=$langs->trans("SortOrder"); } if ($fieldlist[$field]=='short_label') { $valuetoshow=$langs->trans("ShortLabel"); } - if ($fieldlist[$field]=='type_template') { $valuetoshow=$langs->trans("TypeOfTemplate"); } if ($fieldlist[$field]=='range_account') { $valuetoshow=$langs->trans("Range"); } if ($fieldlist[$field]=='sens') { $valuetoshow=$langs->trans("Sens"); } if ($fieldlist[$field]=='category_type') { $valuetoshow=$langs->trans("Calculated"); } @@ -1062,8 +1038,6 @@ if ($id) if ($fieldlist[$field]=='font_size') { $valuetoshow=$langs->trans("FontSize"); } if ($fieldlist[$field]=='custom_x') { $valuetoshow=$langs->trans("CustomX"); } if ($fieldlist[$field]=='custom_y') { $valuetoshow=$langs->trans("CustomY"); } - if ($fieldlist[$field]=='content') { $valuetoshow=$langs->trans("Content"); } - if ($fieldlist[$field]=='content_lines') { $valuetoshow=$langs->trans("ContentLines"); } if ($fieldlist[$field]=='percent') { $valuetoshow=$langs->trans("Percentage"); } if ($fieldlist[$field]=='affect') { $valuetoshow=$langs->trans("Info"); } if ($fieldlist[$field]=='delay') { $valuetoshow=$langs->trans("NoticePeriod"); } @@ -1117,35 +1091,18 @@ if ($id) if (empty($reshook)) { - if ($tabname[$id] == MAIN_DB_PREFIX.'c_email_templates' && $action == 'edit') - { - fieldList($fieldlist,$obj,$tabname[$id],'hide'); - } - else - { - fieldList($fieldlist,$obj,$tabname[$id],'add'); - } + fieldList($fieldlist,$obj,$tabname[$id],'add'); } if ($id == 4) print ''; print ''; - if ($tabname[$id] != MAIN_DB_PREFIX.'c_email_templates' || $action != 'edit') + if ($action != 'edit') { print ''; } print ''; print ""; - if ($tabname[$id] == MAIN_DB_PREFIX.'c_email_templates') - { - print '* '.$langs->trans("AvailableVariables").": "; - require_once DOL_DOCUMENT_ROOT.'/core/class/html.formmail.class.php'; - $formmail=new FormMail($db); - $tmp=$formmail->getAvailableSubstitKey('form'); - print implode(', ', $tmp); - print ''; - } - $colspan=count($fieldlist)+3; if ($id == 4) $colspan++; @@ -1240,7 +1197,6 @@ if ($id) if ($fieldlist[$field]=='pcg_subtype') { $valuetoshow=$langs->trans("Pcg_subtype"); } if ($fieldlist[$field]=='sortorder') { $valuetoshow=$langs->trans("SortOrder"); } if ($fieldlist[$field]=='short_label') { $valuetoshow=$langs->trans("ShortLabel"); } - if ($fieldlist[$field]=='type_template') { $valuetoshow=$langs->trans("TypeOfTemplate"); } if ($fieldlist[$field]=='range_account') { $valuetoshow=$langs->trans("Range"); } if ($fieldlist[$field]=='sens') { $valuetoshow=$langs->trans("Sens"); } if ($fieldlist[$field]=='category_type') { $valuetoshow=$langs->trans("Calculated"); } @@ -1254,8 +1210,6 @@ if ($id) if ($fieldlist[$field]=='font_size') { $valuetoshow=$langs->trans("FontSize"); } if ($fieldlist[$field]=='custom_x') { $valuetoshow=$langs->trans("CustomX"); } if ($fieldlist[$field]=='custom_y') { $valuetoshow=$langs->trans("CustomY"); } - if ($fieldlist[$field]=='content') { $valuetoshow=$langs->trans("Content"); } - if ($fieldlist[$field]=='content_lines') { $valuetoshow=$langs->trans("ContentLines"); } if ($fieldlist[$field]=='percent') { $valuetoshow=$langs->trans("Percentage"); } if ($fieldlist[$field]=='affect') { $valuetoshow=$langs->trans("Info"); } if ($fieldlist[$field]=='delay') { $valuetoshow=$langs->trans("NoticePeriod"); } @@ -1354,10 +1308,6 @@ if ($id) $showfield=1; $align="left"; $valuetoshow=$obj->{$fieldlist[$field]}; - if ($value == 'type_template') - { - $valuetoshow = isset($elementList[$valuetoshow])?$elementList[$valuetoshow]:$valuetoshow; - } if ($value == 'element') { $valuetoshow = isset($elementList[$valuetoshow])?$elementList[$valuetoshow]:$valuetoshow; @@ -1726,13 +1676,6 @@ function fieldList($fieldlist, $obj='', $tabname='', $context='') print $formadmin->select_language($conf->global->MAIN_LANG_DEFAULT,'lang'); print ''; } - // Le type de template - elseif ($fieldlist[$field] == 'type_template') - { - print ''; - print $form->selectarray('type_template', $elementList,(! empty($obj->{$fieldlist[$field]})?$obj->{$fieldlist[$field]}:'')); - print ''; - } // Le type de l'element (pour les type de contact) elseif ($fieldlist[$field] == 'element') { @@ -1773,42 +1716,6 @@ function fieldList($fieldlist, $obj='', $tabname='', $context='') elseif (in_array($fieldlist[$field], array('libelle_facture'))) { print ''; } - elseif (in_array($fieldlist[$field], array('content_lines'))) - { - if ($tabname == MAIN_DB_PREFIX.'c_email_templates') - { - print ''; // To create an artificial CR for the current tr we are on - } - else print ''; - if ($context != 'hide') - { - //print ''; - $okforextended=true; - if ($tabname == MAIN_DB_PREFIX.'c_email_templates' && empty($conf->global->FCKEDITOR_ENABLE_MAIL)) $okforextended=false; - $doleditor = new DolEditor($fieldlist[$field], (! empty($obj->{$fieldlist[$field]})?$obj->{$fieldlist[$field]}:''), '', 100, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_1, '90%'); - print $doleditor->Create(1); - } - else print ' '; - print ''; - } - elseif (in_array($fieldlist[$field], array('content'))) - { - if ($tabname == MAIN_DB_PREFIX.'c_email_templates') - { - print ''; // To create an artificial CR for the current tr we are on - } - else print ''; - if ($context != 'hide') - { - //print ''; - $okforextended=true; - if ($tabname == MAIN_DB_PREFIX.'c_email_templates' && empty($conf->global->FCKEDITOR_ENABLE_MAIL)) $okforextended=false; - $doleditor = new DolEditor($fieldlist[$field], (! empty($obj->{$fieldlist[$field]})?$obj->{$fieldlist[$field]}:''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_8, '90%'); - print $doleditor->Create(1); - } - else print ' '; - print ''; - } elseif ($fieldlist[$field] == 'price' || preg_match('/^amount/i',$fieldlist[$field])) { print ''; } diff --git a/htdocs/admin/mails.php b/htdocs/admin/mails.php index ed290060370..e0e23f75d18 100644 --- a/htdocs/admin/mails.php +++ b/htdocs/admin/mails.php @@ -114,17 +114,24 @@ $server=! empty($conf->global->MAIN_MAIL_SMTP_SERVER)?$conf->global->MAIN_MAIL_S if (! $server) $server='127.0.0.1'; -/* - * View - */ - $wikihelp='EN:Setup EMails|FR:Paramétrage EMails|ES:Configuración EMails'; llxHeader('',$langs->trans("Setup"),$wikihelp); print load_fiche_titre($langs->trans("EMailsSetup"),'','title_setup'); -print $langs->trans("EMailsDesc")."
    \n"; -print "
    \n"; + +$h = 0; + +$head[$h][0] = DOL_URL_ROOT."/admin/mails.php"; +$head[$h][1] = $langs->trans("OutGoingEmailSetup"); +$head[$h][2] = 'common'; +$h++; + +$head[$h][0] = DOL_URL_ROOT."/admin/mails_templates.php"; +$head[$h][1] = $langs->trans("DictionaryEMailTemplates"); +$head[$h][2] = 'templates'; +$h++; + // List of sending methods $listofmethods=array(); @@ -221,6 +228,12 @@ if ($action == 'edit') print ''; print ''; + dol_fiche_head($head, 'common', ''); + + print $langs->trans("EMailsDesc")."
    \n"; + print "
    \n"; + + clearstatcache(); $var=true; @@ -428,6 +441,8 @@ if ($action == 'edit') print ''; + dol_fiche_end(); + print '
    '; print ''; print '     '; @@ -438,6 +453,12 @@ if ($action == 'edit') } else { + dol_fiche_head($head, 'common', ''); + + print $langs->trans("EMailsDesc")."
    \n"; + print "
    \n"; + + $var=true; print ''; @@ -570,10 +591,12 @@ else print ' '; } print ''; - print '
    '; + dol_fiche_end(); + + if ($conf->global->MAIN_MAIL_SENDMODE == 'mail' && empty($conf->global->MAIN_FIX_FOR_BUGGED_MTA)) { print '
    '; @@ -619,7 +642,7 @@ else print '
    '; - if ($conf->global->MAIN_MAIL_SENDMODE == 'mail') + if ($conf->global->MAIN_MAIL_SENDMODE == 'mail' && ! in_array($action, array('testconnect', 'test', 'testhtml'))) { $text = $langs->trans("WarningPHPMail"); print info_admin($text); diff --git a/htdocs/admin/mails_templates.php b/htdocs/admin/mails_templates.php new file mode 100644 index 00000000000..78dd7aeba76 --- /dev/null +++ b/htdocs/admin/mails_templates.php @@ -0,0 +1,869 @@ + + * Copyright (C) 2004-2015 Laurent Destailleur + * Copyright (C) 2004 Benoit Mortier + * Copyright (C) 2005-2012 Regis Houssin + * Copyright (C) 2010-2016 Juanjo Menent + * Copyright (C) 2011-2015 Philippe Grand + * Copyright (C) 2011 Remy Younes + * Copyright (C) 2012-2015 Marcos García + * Copyright (C) 2012 Christophe Battarel + * Copyright (C) 2011-2016 Alexandre Spangaro + * Copyright (C) 2015 Ferran Marcet + * Copyright (C) 2016 Raphaël Doursenaud + * + * This program 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 3 of the License, or + * (at your option) any later version. + * + * This program 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 this program. If not, see . + */ + +/** + * \file htdocs/admin/dict.php + * \ingroup setup + * \brief Page to administer data tables + */ + +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formadmin.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; +require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php'; +if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php'; + +$langs->load("errors"); +$langs->load("admin"); +$langs->load("main"); +$langs->load("mails"); + +$action=GETPOST('action','alpha')?GETPOST('action','alpha'):'view'; +$confirm=GETPOST('confirm','alpha'); +$id=GETPOST('id','int'); +$rowid=GETPOST('rowid','alpha'); + +$allowed=$user->admin; +if (! $allowed) accessforbidden(); + +$acts[0] = "activate"; +$acts[1] = "disable"; +$actl[0] = img_picto($langs->trans("Disabled"),'switch_off'); +$actl[1] = img_picto($langs->trans("Activated"),'switch_on'); + +$listoffset=GETPOST('listoffset'); +$listlimit=GETPOST('listlimit')>0?GETPOST('listlimit'):1000; +$active = 1; + +$sortfield = GETPOST("sortfield",'alpha'); +$sortorder = GETPOST("sortorder",'alpha'); +$page = GETPOST("page",'int'); +if ($page == -1) { $page = 0 ; } +$offset = $listlimit * $page ; +$pageprev = $page - 1; +$pagenext = $page + 1; + +// Initialize technical object to manage hooks of thirdparties. Note that conf->hooks_modules contains array array +$hookmanager->initHooks(array('emailtemplates')); + +// Name of SQL tables of dictionaries +$tabname=array(); +$tabname[25]= MAIN_DB_PREFIX."c_email_templates"; + +// Requests to extract data +$tabsql=array(); +$tabsql[25]= "SELECT rowid as rowid, label, type_template, private, position, topic, content_lines, content, active FROM ".MAIN_DB_PREFIX."c_email_templates WHERE entity IN (".getEntity('email_template',1).")"; + +// Criteria to sort dictionaries +$tabsqlsort=array(); +$tabsqlsort[25]="label ASC"; + +// Nom des champs en resultat de select pour affichage du dictionnaire +$tabfield=array(); +$tabfield[25]= "label,type_template,private,position,topic,content"; +if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) $tabfield[25].=',content_lines'; + +// Nom des champs d'edition pour modification d'un enregistrement +$tabfieldvalue=array(); +$tabfieldvalue[25]= "label,type_template,private,position,topic,content"; +if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) $tabfield[25].=',content_lines'; + +// Nom des champs dans la table pour insertion d'un enregistrement +$tabfieldinsert=array(); +$tabfieldinsert[25]= "label,type_template,private,position,topic,content"; +if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) $tabfield[25].=',content_lines'; +$tabfieldinsert[25].=',entity'; // Must be at end because not into other arrays + +// Nom du rowid si le champ n'est pas de type autoincrement +// Example: "" if id field is "rowid" and has autoincrement on +// "nameoffield" if id field is not "rowid" or has not autoincrement on +$tabrowid=array(); +$tabrowid[25]= ""; + +// Condition to show dictionary in setup page +$tabcond=array(); +$tabcond[25]= true; + +// List of help for fields +// Set MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES to allow edit of template for lines +require_once DOL_DOCUMENT_ROOT.'/core/class/html.formmail.class.php'; +$formmail=new FormMail($db); +if (empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) +{ + $tmp=$formmail->getAvailableSubstitKey('form'); + $helpsubstit = $langs->trans("AvailableVariables").':
    '.implode('
    ', $tmp); + $helpsubstitforlines = $langs->trans("AvailableVariables").':
    '.implode('
    ', $tmp); +} +else +{ + $tmp=$formmail->getAvailableSubstitKey('formwithlines'); + $helpsubstit = $langs->trans("AvailableVariables").':
    '.implode('
    ', $tmp); + $tmp=$formmail->getAvailableSubstitKey('formforlines'); + $helpsubstitforlines = $langs->trans("AvailableVariables").':
    '.implode('
    ', $tmp); +} + + +$tabhelp=array(); +$tabhelp[25] = array('topic'=>$helpsubstit,'content'=>$helpsubstit,'content_lines'=>$helpsubstitforlines,'type_template'=>$langs->trans("TemplateForElement"),'private'=>$langs->trans("TemplateIsVisibleByOwnerOnly"), 'position'=>$langs->trans("PositionIntoComboList")); + +// List of check for fields (NOT USED YET) +$tabfieldcheck=array(); +$tabfieldcheck[25] = array(); + + +// Define elementList and sourceList (used for dictionary type of contacts "llx_c_type_contact") +$elementList = array(); +$sourceList=array(); + +// We save list of template email Dolibarr can manage. This list can found by a grep into code on "->param['models']" +$elementList = array(); +if ($conf->propal->enabled) $elementList['propal_send']=$langs->trans('MailToSendProposal'); +if ($conf->commande->enabled) $elementList['order_send']=$langs->trans('MailToSendOrder'); +if ($conf->facture->enabled) $elementList['facture_send']=$langs->trans('MailToSendInvoice'); +if ($conf->expedition->enabled) $elementList['shipping_send']=$langs->trans('MailToSendShipment'); +if ($conf->ficheinter->enabled) $elementList['fichinter_send']=$langs->trans('MailToSendIntervention'); +if ($conf->supplier_proposal->enabled) $elementList['supplier_proposal_send']=$langs->trans('MailToSendSupplierRequestForQuotation'); +if ($conf->fournisseur->enabled) $elementList['order_supplier_send']=$langs->trans('MailToSendSupplierOrder'); +if ($conf->fournisseur->enabled) $elementList['invoice_supplier_send']=$langs->trans('MailToSendSupplierInvoice'); +if ($conf->societe->enabled) $elementList['thirdparty']=$langs->trans('MailToThirdparty'); +if ($conf->contrat->enabled) $elementList['contract']=$langs->trans('MailToSendContract'); + +$parameters=array('elementList'=>$elementList); +$reshook=$hookmanager->executeHooks('emailElementlist',$parameters); // Note that $action and $object may have been modified by some hooks +if ($reshook == 0) { + foreach ($hookmanager->resArray as $item => $value) { + $elementList[$item] = $value; + } +} + +$id = 25; + + +/* + * Actions + */ + +if (GETPOST('button_removefilter') || GETPOST('button_removefilter.x') || GETPOST('button_removefilter_x')) +{ + //$search_country_id = ''; +} + +// Actions add or modify an entry into a dictionary +if (GETPOST('actionadd') || GETPOST('actionmodify')) +{ + $listfield=explode(',', str_replace(' ', '',$tabfield[$id])); + $listfieldinsert=explode(',',$tabfieldinsert[$id]); + $listfieldmodify=explode(',',$tabfieldinsert[$id]); + $listfieldvalue=explode(',',$tabfieldvalue[$id]); + + // Check that all fields are filled + $ok=1; + foreach ($listfield as $f => $value) + { + if ($value == 'content') continue; + if ($value == 'content_lines') continue; + if ($value == 'content') $value='content-'.$rowid; + if ($value == 'content_lines') $value='content_lines-'.$rowid; + + if (! isset($_POST[$value]) || $_POST[$value]=='') + { + $ok=0; + $fieldnamekey=$listfield[$f]; + // We take translate key of field + if ($fieldnamekey == 'libelle' || ($fieldnamekey == 'label')) $fieldnamekey='Label'; + if ($fieldnamekey == 'libelle_facture') $fieldnamekey = 'LabelOnDocuments'; + if ($fieldnamekey == 'code') $fieldnamekey = 'Code'; + if ($fieldnamekey == 'note') $fieldnamekey = 'Note'; + if ($fieldnamekey == 'type') $fieldnamekey = 'Type'; + + setEventMessages($langs->transnoentities("ErrorFieldRequired", $langs->transnoentities($fieldnamekey)), null, 'errors'); + } + } + + // Si verif ok et action add, on ajoute la ligne + if ($ok && GETPOST('actionadd')) + { + if ($tabrowid[$id]) + { + // Recupere id libre pour insertion + $newid=0; + $sql = "SELECT max(".$tabrowid[$id].") newid from ".$tabname[$id]; + $result = $db->query($sql); + if ($result) + { + $obj = $db->fetch_object($result); + $newid=($obj->newid + 1); + + } else { + dol_print_error($db); + } + } + + // Add new entry + $sql = "INSERT INTO ".$tabname[$id]." ("; + // List of fields + if ($tabrowid[$id] && ! in_array($tabrowid[$id],$listfieldinsert)) + $sql.= $tabrowid[$id].","; + $sql.= $tabfieldinsert[$id]; + $sql.=",active)"; + $sql.= " VALUES("; + + // List of values + if ($tabrowid[$id] && ! in_array($tabrowid[$id],$listfieldinsert)) + $sql.= $newid.","; + $i=0; + foreach ($listfieldinsert as $f => $value) + { + //var_dump($i.' - '.$listfieldvalue[$i].' - '.$_POST[$listfieldvalue[$i]].' - '.$value); + if ($value == 'entity') { + $_POST[$listfieldvalue[$i]] = $conf->entity; + } + if ($i) $sql.=","; + if ($value == 'private' && ! is_numeric($_POST[$listfieldvalue[$i]])) $_POST[$listfieldvalue[$i]]='0'; + if ($value == 'position' && ! is_numeric($_POST[$listfieldvalue[$i]])) $_POST[$listfieldvalue[$i]]='1'; + if ($_POST[$listfieldvalue[$i]] == '') $sql.="null"; // For vat, we want/accept code = '' + else $sql.="'".$db->escape($_POST[$listfieldvalue[$i]])."'"; + $i++; + } + $sql.=",1)"; + + dol_syslog("actionadd", LOG_DEBUG); + $result = $db->query($sql); + if ($result) // Add is ok + { + setEventMessages($langs->transnoentities("RecordSaved"), null, 'mesgs'); + $_POST=array('id'=>$id); // Clean $_POST array, we keep only + } + else + { + if ($db->errno() == 'DB_ERROR_RECORD_ALREADY_EXISTS') { + setEventMessages($langs->transnoentities("ErrorRecordAlreadyExists"), null, 'errors'); + } + else { + dol_print_error($db); + } + } + } + + // Si verif ok et action modify, on modifie la ligne + if ($ok && GETPOST('actionmodify')) + { + if ($tabrowid[$id]) { $rowidcol=$tabrowid[$id]; } + else { $rowidcol="rowid"; } + + // Modify entry + $sql = "UPDATE ".$tabname[$id]." SET "; + // Modifie valeur des champs + if ($tabrowid[$id] && ! in_array($tabrowid[$id],$listfieldmodify)) + { + $sql.= $tabrowid[$id]."="; + $sql.= "'".$db->escape($rowid)."', "; + } + $i = 0; + foreach ($listfieldmodify as $field) + { + if ($value == 'content') $_POST['content']=$_POST['content-'.$rowid]; + if ($value == 'content_lines') $_POST['content_lines']=$_POST['content_lines-'.$rowid]; + if ($field == 'entity') { + $_POST[$listfieldvalue[$i]] = $conf->entity; + } + if ($i) $sql.=","; + $sql.= $field."="; + if ($_POST[$listfieldvalue[$i]] == '') $sql.="null"; // For vat, we want/accept code = '' + else $sql.="'".$db->escape($_POST[$listfieldvalue[$i]])."'"; + $i++; + } + $sql.= " WHERE ".$rowidcol." = '".$rowid."'"; + + dol_syslog("actionmodify", LOG_DEBUG); + //print $sql; + $resql = $db->query($sql); + if (! $resql) + { + setEventMessages($db->error(), null, 'errors'); + } + } +} + +if ($action == 'confirm_delete' && $confirm == 'yes') // delete +{ + if ($tabrowid[$id]) { $rowidcol=$tabrowid[$id]; } + else { $rowidcol="rowid"; } + + $sql = "DELETE from ".$tabname[$id]." WHERE ".$rowidcol."='".$rowid."'"; + + dol_syslog("delete", LOG_DEBUG); + $result = $db->query($sql); + if (! $result) + { + if ($db->errno() == 'DB_ERROR_CHILD_EXISTS') + { + setEventMessages($langs->transnoentities("ErrorRecordIsUsedByChild"), null, 'errors'); + } + else + { + dol_print_error($db); + } + } +} + +// activate +if ($action == $acts[0]) +{ + if ($tabrowid[$id]) { $rowidcol=$tabrowid[$id]; } + else { $rowidcol="rowid"; } + + if ($rowid) { + $sql = "UPDATE ".$tabname[$id]." SET active = 1 WHERE ".$rowidcol."='".$rowid."'"; + } + elseif ($_GET["code"]) { + $sql = "UPDATE ".$tabname[$id]." SET active = 1 WHERE code='".$_GET["code"]."'"; + } + + $result = $db->query($sql); + if (!$result) + { + dol_print_error($db); + } +} + +// disable +if ($action == $acts[1]) +{ + if ($tabrowid[$id]) { $rowidcol=$tabrowid[$id]; } + else { $rowidcol="rowid"; } + + if ($rowid) { + $sql = "UPDATE ".$tabname[$id]." SET active = 0 WHERE ".$rowidcol."='".$rowid."'"; + } + elseif ($_GET["code"]) { + $sql = "UPDATE ".$tabname[$id]." SET active = 0 WHERE code='".$_GET["code"]."'"; + } + + $result = $db->query($sql); + if (!$result) + { + dol_print_error($db); + } +} + + + +/* + * View + */ + +$form = new Form($db); +$formadmin=new FormAdmin($db); + +llxHeader(); + +$titre=$langs->trans("EMailsSetup"); +$linkback=''; +$titlepicto='title_setup'; + +print load_fiche_titre($titre,$linkback,$titlepicto); + +$h = 0; + +$head[$h][0] = DOL_URL_ROOT."/admin/mails.php"; +$head[$h][1] = $langs->trans("OutGoingEmailSetup"); +$head[$h][2] = 'common'; +$h++; + +$head[$h][0] = DOL_URL_ROOT."/admin/mails_templates.php"; +$head[$h][1] = $langs->trans("DictionaryEMailTemplates"); +$head[$h][2] = 'templates'; +$h++; + + +dol_fiche_head($head, 'templates', ''); + +// Confirmation de la suppression de la ligne +if ($action == 'delete') +{ + print $form->formconfirm($_SERVER["PHP_SELF"].'?'.($page?'page='.$page.'&':'').'sortfield='.$sortfield.'&sortorder='.$sortorder.'&rowid='.$rowid.'&code='.$_GET["code"].'&id='.$id, $langs->trans('DeleteLine'), $langs->trans('ConfirmDeleteLine'), 'confirm_delete','',0,1); +} +//var_dump($elementList); + +// Complete requete recherche valeurs avec critere de tri +$sql=$tabsql[$id]; + +if ($search_country_id > 0) +{ + if (preg_match('/ WHERE /',$sql)) $sql.= " AND "; + else $sql.=" WHERE "; + $sql.= " c.rowid = ".$search_country_id; +} + +if ($sortfield) +{ + // If sort order is "country", we use country_code instead + if ($sortfield == 'country') $sortfield='country_code'; + $sql.= " ORDER BY ".$sortfield; + if ($sortorder) + { + $sql.=" ".strtoupper($sortorder); + } + $sql.=", "; + // Clear the required sort criteria for the tabsqlsort to be able to force it with selected value + $tabsqlsort[$id]=preg_replace('/([a-z]+\.)?'.$sortfield.' '.$sortorder.',/i','',$tabsqlsort[$id]); + $tabsqlsort[$id]=preg_replace('/([a-z]+\.)?'.$sortfield.',/i','',$tabsqlsort[$id]); +} +else { + $sql.=" ORDER BY "; +} +$sql.=$tabsqlsort[$id]; +$sql.=$db->plimit($listlimit+1,$offset); +//print $sql; + +$fieldlist=explode(',',$tabfield[$id]); + +print '
    '; +print ''; +print ''; + +print ''; + +// Form to add a new line +$alabelisused=0; +$var=false; + +$fieldlist=explode(',',$tabfield[$id]); + +if ($action != 'edit') +{ + // Line for title + print ''; + foreach ($fieldlist as $field => $value) + { + // Determine le nom du champ par rapport aux noms possibles + // dans les dictionnaires de donnees + $valuetoshow=ucfirst($fieldlist[$field]); // Par defaut + $valuetoshow=$langs->trans($valuetoshow); // try to translate + $align="left"; + if ($fieldlist[$field]=='lang') { $valuetoshow=$langs->trans("Language"); } + if ($fieldlist[$field]=='type') { $valuetoshow=$langs->trans("Type"); } + if ($fieldlist[$field]=='code') { $valuetoshow=$langs->trans("Code"); } + if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') { $valuetoshow=$langs->trans("Label"); } + if ($fieldlist[$field]=='type_template') { $valuetoshow=$langs->trans("TypeOfTemplate"); } + if ($fieldlist[$field]=='content') { $valuetoshow=''; } + if ($fieldlist[$field]=='content_lines') { $valuetoshow=''; } + + if ($valuetoshow != '') + { + print ''; + } + if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') $alabelisused=1; + } + + print ''; + print ''; + + // Line to enter new values + print ""; + + $obj = new stdClass(); + // If data was already input, we define them in obj to populate input fields. + if (GETPOST('actionadd')) + { + foreach ($fieldlist as $key=>$val) + { + if (GETPOST($val) != '') + $obj->$val=GETPOST($val); + } + } + + $tmpaction = 'create'; + $parameters=array('fieldlist'=>$fieldlist, 'tabname'=>$tabname[$id]); + $reshook=$hookmanager->executeHooks('createDictionaryFieldlist',$parameters, $obj, $tmpaction); // Note that $action and $object may have been modified by some hooks + $error=$hookmanager->error; $errors=$hookmanager->errors; + + if (empty($reshook)) + { + if ($tabname[$id] == MAIN_DB_PREFIX.'c_email_templates' && $action == 'edit') + { + fieldList($fieldlist,$obj,$tabname[$id],'hide'); + } + else + { + fieldList($fieldlist,$obj,$tabname[$id],'add'); + } + } + + print ''; + print ""; + + $fieldsforcontent = array('content'); + if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) + { + $fieldsforcontent = array('content', 'content_lines'); + } + foreach ($fieldsforcontent as $tmpfieldlist) + { + print ''; + if ($tmpfieldlist == 'content') + { + print ''; + } + //else print ''; + print ''; + } + + + + $colspan=count($fieldlist)+1; + print ''; // Keep   to have a line with enough height +} + + +// List of available record in database +dol_syslog("htdocs/admin/dict", LOG_DEBUG); +$resql=$db->query($sql); +if ($resql) +{ + $num = $db->num_rows($resql); + $i = 0; + $var=true; + + $param = '&id='.$id; + $paramwithsearch = $param; + if ($sortorder) $paramwithsearch.= '&sortorder='.$sortorder; + if ($sortfield) $paramwithsearch.= '&sortfield='.$sortfield; + if (GETPOST('from')) $paramwithsearch.= '&from='.GETPOST('from','alpha'); + + // There is several pages + if ($num > $listlimit) + { + print ''; + } + + // Title of lines + print ''; + foreach ($fieldlist as $field => $value) + { + // Determine le nom du champ par rapport aux noms possibles + // dans les dictionnaires de donnees + $showfield=1; // By defaut + $align="left"; + $sortable=1; + $valuetoshow=''; + /* + $tmparray=getLabelOfField($fieldlist[$field]); + $showfield=$tmp['showfield']; + $valuetoshow=$tmp['valuetoshow']; + $align=$tmp['align']; + $sortable=$tmp['sortable']; + */ + $valuetoshow=ucfirst($fieldlist[$field]); // By defaut + $valuetoshow=$langs->trans($valuetoshow); // try to translate + if ($fieldlist[$field]=='lang') { $valuetoshow=$langs->trans("Language"); } + if ($fieldlist[$field]=='type') { $valuetoshow=$langs->trans("Type"); } + if ($fieldlist[$field]=='libelle' || $fieldlist[$field]=='label') { $valuetoshow=$langs->trans("Label"); } + if ($fieldlist[$field]=='type_template') { $valuetoshow=$langs->trans("TypeOfTemplate"); } + if ($fieldlist[$field]=='content') { $valuetoshow=$langs->trans("Content"); $showfield=0;} + if ($fieldlist[$field]=='content_lines') { $valuetoshow=$langs->trans("ContentLines"); $showfield=0; } + + // Affiche nom du champ + if ($showfield) + { + if (! empty($tabhelp[$id][$value])) $valuetoshow = $form->textwithpicto($valuetoshow,$tabhelp[$id][$value]); + print getTitleFieldOfList($valuetoshow, 0, $_SERVER["PHP_SELF"], ($sortable?$fieldlist[$field]:''), ($page?'page='.$page.'&':''), $param, "align=".$align, $sortfield, $sortorder); + } + } + + print getTitleFieldOfList($langs->trans("Status"), 0, $_SERVER["PHP_SELF"], "active", ($page?'page='.$page.'&':''), $param, 'align="center"', $sortfield, $sortorder); + print getTitleFieldOfList(''); + print getTitleFieldOfList(''); + print ''; + + // Title line with search boxes + print ''; + $filterfound=0; + foreach ($fieldlist as $field => $value) + { + if (! in_array($field, array('content', 'content_lines'))) print ''; + } + print ''; + print ''; + print ''; + print ''; + + if ($num) + { + // Lines with values + while ($i < $num) + { + $var = ! $var; + + $obj = $db->fetch_object($resql); + //print_r($obj); + print ''; + if ($action == 'edit' && ($rowid == (! empty($obj->rowid)?$obj->rowid:$obj->code))) + { + $tmpaction='edit'; + $parameters=array('fieldlist'=>$fieldlist, 'tabname'=>$tabname[$id]); + $reshook=$hookmanager->executeHooks('editDictionaryFieldlist',$parameters,$obj, $tmpaction); // Note that $action and $object may have been modified by some hooks + $error=$hookmanager->error; $errors=$hookmanager->errors; + + // Show fields + if (empty($reshook)) fieldList($fieldlist,$obj,$tabname[$id],'edit'); + + print ''; + + $fieldsforcontent = array('content'); + if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) + { + $fieldsforcontent = array('content', 'content_lines'); + } + foreach ($fieldsforcontent as $tmpfieldlist) + { + $showfield = 1; + $align = "left"; + $valuetoshow = $obj->{$tmpfieldlist}; + + $class = 'tddict'; + // Show value for field + if ($showfield) { + + print ''; + print ''; + + } + } + } + else + { + $tmpaction = 'view'; + $parameters=array('var'=>$var, 'fieldlist'=>$fieldlist, 'tabname'=>$tabname[$id]); + $reshook=$hookmanager->executeHooks('viewDictionaryFieldlist',$parameters,$obj, $tmpaction); // Note that $action and $object may have been modified by some hooks + + $error=$hookmanager->error; $errors=$hookmanager->errors; + + if (empty($reshook)) + { + foreach ($fieldlist as $field => $value) + { + if (in_array($fieldlist[$field], array('content','content_lines'))) continue; + $showfield=1; + $align="left"; + $valuetoshow=$obj->{$fieldlist[$field]}; + if ($value == 'type_template') + { + $valuetoshow = isset($elementList[$valuetoshow])?$elementList[$valuetoshow]:$valuetoshow; + } + + $class='tddict'; + // Show value for field + if ($showfield) + { + print ''; + } + } + } + + // Can an entry be erased or disabled ? + $iserasable=1;$canbedisabled=1;$canbemodified=1; // true by default + $canbemodified=$iserasable; + + $url = $_SERVER["PHP_SELF"].'?'.($page?'page='.$page.'&':'').'sortfield='.$sortfield.'&sortorder='.$sortorder.'&rowid='.(! empty($obj->rowid)?$obj->rowid:(! empty($obj->code)?$obj->code:'')).'&code='.(! empty($obj->code)?urlencode($obj->code):''); + if ($param) $url .= '&'.$param; + $url.='&'; + + // Active + print '"; + + // Modify link + if ($canbemodified) print ''; + else print ''; + + // Delete link + if ($iserasable) + { + print ''; + } + else print ''; + + /* + $fieldsforcontent = array('content'); + if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) + { + $fieldsforcontent = array('content', 'content_lines'); + } + foreach ($fieldsforcontent as $tmpfieldlist) + { + $showfield = 1; + $align = "left"; + $valuetoshow = $obj->{$tmpfieldlist}; + + $class = 'tddict'; + // Show value for field + if ($showfield) { + + print ''; + print ''; + + } + }*/ + } + print "\n"; + + + $i++; + } + } +} +else { + dol_print_error($db); +} + +print '
    '; + if (! empty($tabhelp[$id][$value]) && preg_match('/^http(s*):/i',$tabhelp[$id][$value])) print ''.$valuetoshow.' '.img_help(1,$valuetoshow).''; + else if (! empty($tabhelp[$id][$value])) print $form->textwithpicto($valuetoshow,$tabhelp[$id][$value]); + else print $valuetoshow; + print ''; + print ''; + print '
    '; + print '
    '; + if ($tmpfieldlist == 'content') + { + print ''.$form->textwithpicto($langs->trans("Content"),$tabhelp[$id][$tmpfieldlist]).'
    '; + } + if ($context != 'hide') + { + //print ''; + $okforextended=true; + if (empty($conf->global->FCKEDITOR_ENABLE_MAIL)) $okforextended=false; + $doleditor = new DolEditor($tmpfieldlist, (! empty($obj->{$tmpfieldlist})?$obj->{$tmpfieldlist}:''), '', 120, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_4, '90%'); + print $doleditor->Create(1); + } + else print ' '; + print '
    '; + if ($action != 'edit') + { + print ''; + } + print '
     
    '; + print_fleche_navigation($page, $_SERVER["PHP_SELF"], $paramwithsearch, ($num > $listlimit), ''); + print '
    '; + print ''; + print ''; + print ''; + print '
    '; + print ''; + print '
    '; // To create an artificial CR for the current tr we are on + $okforextended = true; + if (empty($conf->global->FCKEDITOR_ENABLE_MAIL)) + $okforextended = false; + $doleditor = new DolEditor($tmpfieldlist.'-'.($i+1), (! empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%'); + print $doleditor->Create(1); + print ''.$valuetoshow.''; + if ($canbedisabled) print ''.$actl[$obj->active].''; + else + { + if (in_array($obj->code, array('AC_OTH','AC_OTH_AUTO'))) print $langs->trans("AlwaysActive"); + else if (isset($obj->type) && in_array($obj->type, array('systemauto')) && empty($obj->active)) print $langs->trans("Deprecated"); + else if (isset($obj->type) && in_array($obj->type, array('system')) && ! empty($obj->active) && $obj->code != 'AC_OTH') print $langs->trans("UsedOnlyWithTypeOption"); + else print $langs->trans("AlwaysActive"); + } + print "'.img_edit().' '; + if ($user->admin) print ''.img_delete().''; + //else print ''.img_delete().''; // Some dictionnary can be edited by other profile than admin + print ' 
    '; // To create an artificial CR for the current tr we are on + $okforextended = true; + if (empty($conf->global->FCKEDITOR_ENABLE_MAIL)) + $okforextended = false; + $doleditor = new DolEditor($tmpfieldlist.'-'.$i, (! empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%', 1); + print $doleditor->Create(1); + print '
    '; + +print '
    '; + + +dol_fiche_end(); + +llxFooter(); +$db->close(); + + +/** + * Show fields in insert/edit mode + * + * @param array $fieldlist Array of fields + * @param Object $obj If we show a particular record, obj is filled with record fields + * @param string $tabname Name of SQL table + * @param string $context 'add'=Output field for the "add form", 'edit'=Output field for the "edit form", 'hide'=Output field for the "add form" but we dont want it to be rendered + * @return void + */ +function fieldList($fieldlist, $obj='', $tabname='', $context='') +{ + global $conf,$langs,$db; + global $form; + global $region_id; + global $elementList,$sourceList,$localtax_typeList; + global $bc; + + $formadmin = new FormAdmin($db); + $formcompany = new FormCompany($db); + if (! empty($conf->accounting->enabled)) $formaccountancy = new FormVentilation($db); + + foreach ($fieldlist as $field => $value) + { + if ($fieldlist[$field] == 'lang') + { + print ''; + print $formadmin->select_language($conf->global->MAIN_LANG_DEFAULT,'lang'); + print ''; + } + // Le type de template + elseif ($fieldlist[$field] == 'type_template') + { + print ''; + print $form->selectarray('type_template', $elementList,(! empty($obj->{$fieldlist[$field]})?$obj->{$fieldlist[$field]}:'')); + print ''; + } + elseif (in_array($fieldlist[$field], array('content','content_lines'))) continue; + else + { + print ''; + $size=''; $class=''; + if ($fieldlist[$field]=='code') $class='maxwidth100'; + if ($fieldlist[$field]=='private') $class='maxwidth50'; + if ($fieldlist[$field]=='position') $class='maxwidth50'; + if ($fieldlist[$field]=='libelle') $class='quatrevingtpercent'; + if ($fieldlist[$field]=='topic') $class='quatrevingtpercent'; + if ($fieldlist[$field]=='sortorder' || $fieldlist[$field]=='sens' || $fieldlist[$field]=='category_type') $size='size="2" '; + print ''; + print ''; + } + } +} + diff --git a/htdocs/admin/modulehelp.php b/htdocs/admin/modulehelp.php index e701d4ead03..6e93bbcda54 100644 --- a/htdocs/admin/modulehelp.php +++ b/htdocs/admin/modulehelp.php @@ -46,9 +46,10 @@ require_once DOL_DOCUMENT_ROOT . '/core/lib/functions2.lib.php'; $langs->load("errors"); $langs->load("admin"); -$mode=GETPOST('mode', 'alpha')?GETPOST('mode', 'alpha'):0; +$mode=GETPOST('mode', 'alpha'); $action=GETPOST('action','alpha'); $id = GETPOST('id', 'int'); +if (empty($mode)) $mode='desc'; if (! $user->admin) accessforbidden(); @@ -232,17 +233,15 @@ asort($orders); $h = 0; -$categidx='desc'; // Main $head[$h][0] = DOL_URL_ROOT."/admin/modulehelp.php?id=".$id.'&mode=desc'; $head[$h][1] = $langs->trans("Description"); $head[$h][2] = 'desc'; $h++; -/*$categidx='feature'; $head[$h][0] = DOL_URL_ROOT."/admin/modulehelp.php?id=".$id.'&mode=feature'; $head[$h][1] = $langs->trans("Features"); $head[$h][2] = 'feature'; -$h++;*/ +$h++; $i=0; @@ -356,159 +355,165 @@ if ($objMod->isCoreOrExternalModule() == 'external') // Define text of description of module $text=''; - -if ($objMod->getDescLong()) $text.=$objMod->getDesc().'
    '; - -$text.='
    '.$langs->trans("Version").': '.$version; - -$textexternal=''; -if ($objMod->isCoreOrExternalModule() == 'external') + +if ($mode == 'desc') { - $textexternal.='
    '.$langs->trans("Origin").': '.$langs->trans("ExternalModule",$dirofmodule); - if ($objMod->editor_name != 'dolibarr') $textexternal.='
    '.$langs->trans("Publisher").': '.(empty($objMod->editor_name)?$langs->trans("Unknown"):$objMod->editor_name); - if (! empty($objMod->editor_url) && ! preg_match('/dolibarr\.org/i',$objMod->editor_url)) $textexternal.='
    '.$langs->trans("Url").': '.$objMod->editor_url; - $text.=$textexternal; + $text.=''.$langs->trans("Version").': '.$version; + + $textexternal=''; + if ($objMod->isCoreOrExternalModule() == 'external') + { + $textexternal.='
    '.$langs->trans("Origin").': '.$langs->trans("ExternalModule",$dirofmodule); + if ($objMod->editor_name != 'dolibarr') $textexternal.='
    '.$langs->trans("Publisher").': '.(empty($objMod->editor_name)?$langs->trans("Unknown"):$objMod->editor_name); + if (! empty($objMod->editor_url) && ! preg_match('/dolibarr\.org/i',$objMod->editor_url)) $textexternal.='
    '.$langs->trans("Url").': '.$objMod->editor_url; + $text.=$textexternal; + $text.='
    '; + } + else + { + $text.='
    '.$langs->trans("Origin").': '.$langs->trans("Core").'
    '; + } + $text.='
    '.$langs->trans("LastActivationDate").': '; + if (! empty($conf->global->$const_name)) $text.=dol_print_date($objMod->getLastActivationDate(), 'dayhour'); + else $text.=$langs->trans("Disabled"); $text.='
    '; -} -else -{ - $text.='
    '.$langs->trans("Origin").': '.$langs->trans("Core").'
    '; -} -$text.='
    '.$langs->trans("LastActivationDate").': '; -if (! empty($conf->global->$const_name)) $text.=dol_print_date($objMod->getLastActivationDate(), 'dayhour'); -else $text.=$langs->trans("Disabled"); -$text.='
    '; -$text.='
    '.$langs->trans("AddRemoveTabs").': '; -if (isset($objMod->tabs) && is_array($objMod->tabs) && count($objMod->tabs)) + if ($objMod->getDescLong()) $text.=$objMod->getDesc().'
    '; +} + +if ($mode == 'feature') { - $i=0; - foreach($objMod->tabs as $val) + $text.=''.$langs->trans("AddRemoveTabs").': '; + if (isset($objMod->tabs) && is_array($objMod->tabs) && count($objMod->tabs)) { - $tmp=explode(':',$val,3); - $text.=($i?', ':'').$tmp[0].':'.$tmp[1]; - $i++; + $i=0; + foreach($objMod->tabs as $val) + { + $tmp=explode(':',$val,3); + $text.=($i?', ':'').$tmp[0].':'.$tmp[1]; + $i++; + } } -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddDictionaries").': '; -if (isset($objMod->dictionaries) && isset($objMod->dictionaries['tablib']) && is_array($objMod->dictionaries['tablib']) && count($objMod->dictionaries['tablib'])) -{ - $i=0; - foreach($objMod->dictionaries['tablib'] as $val) + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddDictionaries").': '; + if (isset($objMod->dictionaries) && isset($objMod->dictionaries['tablib']) && is_array($objMod->dictionaries['tablib']) && count($objMod->dictionaries['tablib'])) { - $text.=($i?', ':'').$val; - $i++; + $i=0; + foreach($objMod->dictionaries['tablib'] as $val) + { + $text.=($i?', ':'').$val; + $i++; + } } -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddBoxes").': '; -if (isset($objMod->boxes) && is_array($objMod->boxes) && count($objMod->boxes)) -{ - $i=0; - foreach($objMod->boxes as $val) + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddBoxes").': '; + if (isset($objMod->boxes) && is_array($objMod->boxes) && count($objMod->boxes)) { - $text.=($i?', ':'').($val['file']?$val['file']:$val[0]); - $i++; + $i=0; + foreach($objMod->boxes as $val) + { + $text.=($i?', ':'').($val['file']?$val['file']:$val[0]); + $i++; + } } -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddModels").': '; -if (isset($objMod->module_parts) && isset($objMod->module_parts['models']) && $objMod->module_parts['models']) -{ - $text.=$langs->trans("Yes"); -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddSubstitutions").': '; -if (isset($objMod->module_parts) && isset($objMod->module_parts['substitutions']) && $objMod->module_parts['substitutions']) -{ - $text.=$langs->trans("Yes"); -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddSheduledJobs").': '; -if (isset($objMod->cronjobs) && is_array($objMod->cronjobs) && count($objMod->cronjobs)) -{ - $i=0; - foreach($objMod->cronjobs as $val) + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddModels").': '; + if (isset($objMod->module_parts) && isset($objMod->module_parts['models']) && $objMod->module_parts['models']) { - $text.=($i?', ':'').($val['label']); - $i++; + $text.=$langs->trans("Yes"); } -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddTriggers").': '; -if (isset($objMod->module_parts) && isset($objMod->module_parts['triggers']) && $objMod->module_parts['triggers']) -{ - $text.=$langs->trans("Yes"); -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddHooks").': '; -if (isset($objMod->module_parts) && is_array($objMod->module_parts['hooks']) && count($objMod->module_parts['hooks'])) -{ - $i=0; - foreach($objMod->module_parts['hooks'] as $val) + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddSubstitutions").': '; + if (isset($objMod->module_parts) && isset($objMod->module_parts['substitutions']) && $objMod->module_parts['substitutions']) { - $text.=($i?', ':'').($val); - $i++; + $text.=$langs->trans("Yes"); } -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddPermissions").': '; -if (isset($objMod->rights) && is_array($objMod->rights) && count($objMod->rights)) -{ - $i=0; - foreach($objMod->rights as $val) + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddSheduledJobs").': '; + if (isset($objMod->cronjobs) && is_array($objMod->cronjobs) && count($objMod->cronjobs)) { - $text.=($i?', ':'').($val[1]); - $i++; + $i=0; + foreach($objMod->cronjobs as $val) + { + $text.=($i?', ':'').($val['label']); + $i++; + } } -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddMenus").': '; -if (isset($objMod->menu) && ! empty($objMod->menu)) // objMod can be an array or just an int 1 -{ - $text.=$langs->trans("Yes"); -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddExportProfiles").': '; -if (isset($objMod->export_label) && is_array($objMod->export_label) && count($objMod->export_label)) -{ - $i=0; - foreach($objMod->export_label as $val) + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddTriggers").': '; + if (isset($objMod->module_parts) && isset($objMod->module_parts['triggers']) && $objMod->module_parts['triggers']) { - $text.=($i?', ':'').($val); - $i++; + $text.=$langs->trans("Yes"); } -} -else $text.=$langs->trans("No"); - -$text.='
    '.$langs->trans("AddImportProfiles").': '; -if (isset($objMod->import_label) && is_array($objMod->import_label) && count($objMod->import_label)) -{ - $i=0; - foreach($objMod->import_label as $val) + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddHooks").': '; + if (isset($objMod->module_parts) && is_array($objMod->module_parts['hooks']) && count($objMod->module_parts['hooks'])) { - $text.=($i?', ':'').($val); - $i++; + $i=0; + foreach($objMod->module_parts['hooks'] as $val) + { + $text.=($i?', ':'').($val); + $i++; + } } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddPermissions").': '; + if (isset($objMod->rights) && is_array($objMod->rights) && count($objMod->rights)) + { + $i=0; + foreach($objMod->rights as $val) + { + $text.=($i?', ':'').($val[1]); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddMenus").': '; + if (isset($objMod->menu) && ! empty($objMod->menu)) // objMod can be an array or just an int 1 + { + $text.=$langs->trans("Yes"); + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddExportProfiles").': '; + if (isset($objMod->export_label) && is_array($objMod->export_label) && count($objMod->export_label)) + { + $i=0; + foreach($objMod->export_label as $val) + { + $text.=($i?', ':'').($val); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddImportProfiles").': '; + if (isset($objMod->import_label) && is_array($objMod->import_label) && count($objMod->import_label)) + { + $i=0; + foreach($objMod->import_label as $val) + { + $text.=($i?', ':'').($val); + $i++; + } + } + else $text.=$langs->trans("No"); + + $text.='
    '.$langs->trans("AddOtherPagesOrServices").': '; + $text.=$langs->trans("DetectionNotPossible"); } -else $text.=$langs->trans("No"); -$text.='
    '.$langs->trans("AddOtherPagesOrServices").': '; -$text.=$langs->trans("DetectionNotPossible"); print $text; - dol_fiche_end(); diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 10fb88bbe64..a85b8157732 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -984,7 +984,7 @@ class FormMail extends Form */ function setSubstitFromObject($object, $outputlangs=null) { - global $user; + global $conf, $user; $this->substit['__REF__'] = $object->ref; $this->substit['__REFCLIENT__'] = isset($object->ref_client) ? $object->ref_client : ''; $this->substit['__REFSUPPLIER__'] = isset($object->ref_supplier) ? $object->ref_supplier : ''; @@ -993,6 +993,7 @@ class FormMail extends Form $this->substit['__DATE_DUE_YMD__'] = isset($object->date_lim_reglement)? dol_print_date($object->date_lim_reglement, 'day', 0, $outputlangs) : ''; $this->substit['__AMOUNT__'] = price($object->total_ttc); $this->substit['__AMOUNT_WO_TAX__'] = price($object->total_ht); + $this->substit['__AMOUNT_VAT__'] = price($object->total_tva); $this->substit['__THIRDPARTY_ID__'] = (is_object($object->thirdparty)?$object->thirdparty->id:''); $this->substit['__THIRDPARTY_NAME__'] = (is_object($object->thirdparty)?$object->thirdparty->name:''); @@ -1005,6 +1006,7 @@ class FormMail extends Form $this->substit['__PERSONALIZED__'] = ''; $this->substit['__CONTACTCIVNAME__'] = ''; // Will be replace just before sending + //Fill substit_lines with each object lines content if (is_array($object->lines)) { @@ -1022,10 +1024,10 @@ class FormMail extends Form '__SUBPRICE__' => price($line->subprice), '__AMOUNT__' => price($line->total_ttc), '__AMOUNT_WO_TAX__' => price($line->total_ht), - //'__PRODUCT_EXTRAFIELD_FIELD__' Done dinamically + //'__PRODUCT_EXTRAFIELD_FIELD__' Done dinamically just after ); - // Create dinamic tags for __PRODUCT_EXTRAFIELD_FIELD__ + // Create dynamic tags for __PRODUCT_EXTRAFIELD_FIELD__ if (!empty($line->fk_product)) { $extrafields = new ExtraFields($this->db); @@ -1045,7 +1047,7 @@ class FormMail extends Form /** * Set substit array from object * - * @param string $mode 'form' or 'emailing' + * @param string $mode 'form', 'formwithlines', 'formforlines' or 'emailing' * @return void */ function getAvailableSubstitKey($mode='form') @@ -1054,18 +1056,32 @@ class FormMail extends Form $vars=array(); - if ($mode == 'form') + if ($mode == 'form' || $mode == 'formwithlines' || $mode == 'formforlines') { $vars=array( '__REF__', '__REFCLIENT__', - '__THIRDPARTY_NAME__', - '__PROJECT_REF__', - '__PROJECT_NAME__', + '__REFSUPPLIER__', + '__THIRDPARTY_ID__', + '__THIRDPARTY_NAME__', + '__PROJECT_ID__', + '__PROJECT_REF__', + '__PROJECT_NAME__', '__CONTACTCIVNAME__', - '__PERSONALIZED__', // Paypal link will be added here in form mode + '__AMOUNT__', + '__AMOUNT_WO_TAX__', + '__AMOUNT_VAT__', + '__PERSONALIZED__', // Paypal link will be added here in form mode '__SIGNATURE__', ); + if ($mode == 'formwithlines') + { + $vars[] = '__LINES__'; // Will be set by the get_form function + } + if ($mode == 'formforlines') + { + $vars[] = '__QUANTITY__'; // Will be set by the get_form function + } } if ($mode == 'emailing') { diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 36d8772dccb..18c0373e993 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -1623,6 +1623,7 @@ MailToSendIntervention=To send intervention MailToSendSupplierRequestForQuotation=To send quotation request to supplier MailToSendSupplierOrder=To send supplier order MailToSendSupplierInvoice=To send supplier invoice +MailToSendContract=To send a contract MailToThirdparty=To send email from third party page ByDefaultInList=Show by default on list view YouUseLastStableVersion=You use the latest stable version diff --git a/htdocs/langs/en_US/mails.lang b/htdocs/langs/en_US/mails.lang index 897085ec423..93c3e584ff6 100644 --- a/htdocs/langs/en_US/mails.lang +++ b/htdocs/langs/en_US/mails.lang @@ -150,3 +150,6 @@ AdvTgtCreateFilter=Create filter AdvTgtOrCreateNewFilter=Name of new filter NoContactWithCategoryFound=No contact/address with a category found NoContactLinkedToThirdpartieWithCategoryFound=No contact/address with a category found +OutGoingEmailSetup=Outgoing email setup +InGoingEmailSetup=Incoming email setup + From 5233b8c87ff7ca53ca31b7446b73f41d7ce6c7f7 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 12 Feb 2017 18:38:24 +0100 Subject: [PATCH 0257/1163] Fix support for option MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES --- htdocs/admin/mails_templates.php | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/htdocs/admin/mails_templates.php b/htdocs/admin/mails_templates.php index 78dd7aeba76..150f288e45d 100644 --- a/htdocs/admin/mails_templates.php +++ b/htdocs/admin/mails_templates.php @@ -94,12 +94,12 @@ if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) $tabfield[25] // Nom des champs d'edition pour modification d'un enregistrement $tabfieldvalue=array(); $tabfieldvalue[25]= "label,type_template,private,position,topic,content"; -if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) $tabfield[25].=',content_lines'; +if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) $tabfieldvalue[25].=',content_lines'; // Nom des champs dans la table pour insertion d'un enregistrement $tabfieldinsert=array(); $tabfieldinsert[25]= "label,type_template,private,position,topic,content"; -if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) $tabfield[25].=',content_lines'; +if (! empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) $tabfieldinsert[25].=',content_lines'; $tabfieldinsert[25].=',entity'; // Must be at end because not into other arrays // Nom du rowid si le champ n'est pas de type autoincrement @@ -290,8 +290,8 @@ if (GETPOST('actionadd') || GETPOST('actionmodify')) $i = 0; foreach ($listfieldmodify as $field) { - if ($value == 'content') $_POST['content']=$_POST['content-'.$rowid]; - if ($value == 'content_lines') $_POST['content_lines']=$_POST['content_lines-'.$rowid]; + if ($field == 'content') $_POST['content']=$_POST['content-'.$rowid]; + if ($field == 'content_lines') $_POST['content_lines']=$_POST['content_lines-'.$rowid]; if ($field == 'entity') { $_POST[$listfieldvalue[$i]] = $conf->entity; } @@ -537,10 +537,9 @@ if ($action != 'edit') foreach ($fieldsforcontent as $tmpfieldlist) { print ''; - if ($tmpfieldlist == 'content') - { - print ''.$form->textwithpicto($langs->trans("Content"),$tabhelp[$id][$tmpfieldlist]).'
    '; - } + if ($tmpfieldlist == 'content') print ''.$form->textwithpicto($langs->trans("Content"),$tabhelp[$id][$tmpfieldlist]).'
    '; + if ($tmpfieldlist == 'content_lines') print ''.$form->textwithpicto($langs->trans("ContentForLines"),$tabhelp[$id][$tmpfieldlist]).'
    '; + if ($context != 'hide') { //print ''; @@ -640,7 +639,7 @@ if ($resql) { if (! in_array($field, array('content', 'content_lines'))) print ''; } - print ''; + if (empty($conf->global->MAIN_EMAIL_TEMPLATES_FOR_OBJECT_LINES)) print ''; print ''; print ''; print ''; @@ -688,11 +687,11 @@ if ($resql) // Show value for field if ($showfield) { - print ''; // To create an artificial CR for the current tr we are on + print ''; // To create an artificial CR for the current tr we are on $okforextended = true; if (empty($conf->global->FCKEDITOR_ENABLE_MAIL)) $okforextended = false; - $doleditor = new DolEditor($tmpfieldlist.'-'.($i+1), (! empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%'); + $doleditor = new DolEditor($tmpfieldlist.'-'.$rowid, (! empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%'); print $doleditor->Create(1); print ''; print ''; From a8c5ba2983dadd12325ea7f4d2bb30700e539c8c Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 12 Feb 2017 20:40:20 +0100 Subject: [PATCH 0258/1163] Fix php7 error --- htdocs/admin/modulehelp.php | 36 ------------------------------------ 1 file changed, 36 deletions(-) diff --git a/htdocs/admin/modulehelp.php b/htdocs/admin/modulehelp.php index 6e93bbcda54..9ff7a4478ff 100644 --- a/htdocs/admin/modulehelp.php +++ b/htdocs/admin/modulehelp.php @@ -290,42 +290,6 @@ $moduledesc=$objMod->getDesc(); $moduledesclong=$objMod->getDescLong(); $moduleauthor=$objMod->getPublisher(); -// We discard showing according to filters -if ($search_keyword) -{ - $qualified=0; - if (preg_match('/'.preg_quote($search_keyword).'/i', $modulename) - || preg_match('/'.preg_quote($search_keyword).'/i', $moduledesc) - || preg_match('/'.preg_quote($search_keyword).'/i', $moduledesclong) - || preg_match('/'.preg_quote($search_keyword).'/i', $moduleauthor) - ) $qualified=1; - if (! $qualified) continue; -} -if ($search_status) -{ - if ($search_status == 'active' && empty($conf->global->$const_name)) continue; - if ($search_status == 'disabled' && ! empty($conf->global->$const_name)) continue; -} -if ($search_nature) -{ - if (preg_match('/^external/',$search_nature) && $objMod->isCoreOrExternalModule() != 'external') continue; - if (preg_match('/^external_(.*)$/',$search_nature, $reg)) - { - //print $reg[1].'-'.dol_escape_htmltag($objMod->getPublisher()); - $publisher=dol_escape_htmltag($objMod->getPublisher()); - if ($reg[1] && dol_escape_htmltag($reg[1]) != $publisher) continue; - if (! $reg[1] && ! empty($publisher)) continue; - } - if ($search_nature == 'core' && $objMod->isCoreOrExternalModule() == 'external') continue; -} -if ($search_version) -{ - if (($objMod->version == 'development' || $objMod->version == 'experimental' || preg_match('/deprecated/', $objMod->version)) && $search_version == 'stable') continue; - if ($objMod->version != 'development' && ($search_version == 'development')) continue; - if ($objMod->version != 'experimental' && ($search_version == 'experimental')) continue; - if (! preg_match('/deprecated/', $objMod->version) && ($search_version == 'deprecated')) continue; -} - // Load all lang files of module if (isset($objMod->langfiles) && is_array($objMod->langfiles)) { From 4a19c14034ff512dd8311df1e98fca0331c7a7d2 Mon Sep 17 00:00:00 2001 From: a-schild Date: Mon, 13 Feb 2017 09:33:01 +0100 Subject: [PATCH 0259/1163] Use correct numeric format for all soldes --- htdocs/accountancy/bookkeeping/balance.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/accountancy/bookkeeping/balance.php b/htdocs/accountancy/bookkeeping/balance.php index 15345a99b72..bb7d049f08e 100644 --- a/htdocs/accountancy/bookkeeping/balance.php +++ b/htdocs/accountancy/bookkeeping/balance.php @@ -255,9 +255,9 @@ else { print '' . length_accountg($line->numero_compte) . ''; print '' . $description . ''; - print '' . number_format($line->debit, 2, ',', ' ') . ''; - print '' . number_format($line->credit, 2, ',', ' ') . ''; - print '' . number_format($line->credit - $line->debit, 2, ',', ' ') . ''; + print '' . price($line->debit, 2, ',', ' ') . ''; + print '' . price($line->credit, 2, ',', ' ') . ''; + print '' . price($line->credit - $line->debit, 2, ',', ' ') . ''; print '' . $link; print ''; print "\n"; From 89c80a45c285a52d6c1303a2203b281e8aeee5a6 Mon Sep 17 00:00:00 2001 From: a-schild Date: Mon, 13 Feb 2017 09:34:35 +0100 Subject: [PATCH 0260/1163] Use correct numeric format for all soldes --- htdocs/accountancy/bookkeeping/balance.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/htdocs/accountancy/bookkeeping/balance.php b/htdocs/accountancy/bookkeeping/balance.php index bb7d049f08e..53eaaba7c9c 100644 --- a/htdocs/accountancy/bookkeeping/balance.php +++ b/htdocs/accountancy/bookkeeping/balance.php @@ -255,9 +255,9 @@ else { print '' . length_accountg($line->numero_compte) . ''; print '' . $description . ''; - print '' . price($line->debit, 2, ',', ' ') . ''; - print '' . price($line->credit, 2, ',', ' ') . ''; - print '' . price($line->credit - $line->debit, 2, ',', ' ') . ''; + print '' . price($line->debit) . ''; + print '' . price($line->credit) . ''; + print '' . price($line->credit - $line->debit) . ''; print '' . $link; print ''; print "\n"; From 5de0d81dff43a8fbb76e4b3a66819314adca5c32 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 13 Feb 2017 10:59:33 +0100 Subject: [PATCH 0261/1163] Can force option according to country --- build/generate_filelist_xml.php | 37 +++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/build/generate_filelist_xml.php b/build/generate_filelist_xml.php index 36ea0e9542b..ff580fad58c 100755 --- a/build/generate_filelist_xml.php +++ b/build/generate_filelist_xml.php @@ -44,8 +44,8 @@ $includeconstants=array(); if (empty($argv[1])) { - print "Usage: ".$script_file." release=x.y.z[-...] [includecustom=1] [includeconstant=MY_CONF_NAME:value]\n"; - print "Example: ".$script_file." release=6.0.0 includecustom=1 includeconstant=INVOICE_CAN_ALWAYS_BE_REMOVED:0 includeconstant=MAILING_NO_USING_PHPMAIL:1\n"; + print "Usage: ".$script_file." release=x.y.z[-...] [includecustom=1] [includeconstant=CC:MY_CONF_NAME:value]\n"; + print "Example: ".$script_file." release=6.0.0 includecustom=1 includeconstant=FR:INVOICE_CAN_ALWAYS_BE_REMOVED:0 includeconstant=all:MAILING_NO_USING_PHPMAIL:1\n"; exit -1; } $i=0; @@ -54,8 +54,13 @@ while ($i < $argc) if (! empty($argv[$i])) parse_str($argv[$i]); if (preg_match('/includeconstant=/',$argv[$i])) { - $tmp=explode(':', $includeconstant); - if (count($tmp) == 2) $includeconstants[$tmp[0]] = $tmp[1]; + $tmp=explode(':', $includeconstant, 3); + if (count($tmp) != 3) + { + print "Error: Bad parameter includeconstant ".$includeconstant."\n"; + exit -1; + } + $includeconstants[$tmp[0]][$tmp[1]] = $tmp[2]; } $i++; } @@ -84,9 +89,12 @@ else print "Release : ".$release."\n"; print "Include custom : ".$includecustom."\n"; print "Include constants: "; -foreach ($includeconstants as $constname => $constvalue) +foreach ($includeconstants as $countrycode => $tmp) { - print $constname.'='.$constvalue." "; + foreach($tmp as $constname => $constvalue) + { + print $constname.'='.$constvalue." "; + } } print "\n"; @@ -100,16 +108,19 @@ $checksumconcat=array(); $outputfile=$outputdir.'/filelist-'.$release.'.xml'; $fp = fopen($outputfile,'w'); fputs($fp, ''."\n"); -fputs($fp, ''."\n"); +fputs($fp, ''."\n"); -fputs($fp, ''."\n"); -foreach($includeconstants as $constname => $constvalue) +foreach ($includeconstants as $countrycode => $tmp) { - $valueforchecksum=(empty($constvalue)?'0':$constvalue); - $checksumconcat[]=$valueforchecksum; - fputs($fp, ' '.$valueforchecksum.''."\n"); + fputs($fp, ''."\n"); + foreach($tmp as $constname => $constvalue) + { + $valueforchecksum=(empty($constvalue)?'0':$constvalue); + $checksumconcat[]=$valueforchecksum; + fputs($fp, ' '.$valueforchecksum.''."\n"); + } + fputs($fp, ''."\n"); } -fputs($fp, ''."\n"); fputs($fp, ''."\n"); From 977c18513da7181b1737324b17d6084503ec77a5 Mon Sep 17 00:00:00 2001 From: arnaud Date: Tue, 14 Feb 2017 12:00:56 +0100 Subject: [PATCH 0262/1163] FIX pdf supplier payment work --- htdocs/admin/supplier_payment.php | 6 +-- htdocs/core/class/conf.class.php | 3 ++ htdocs/core/lib/files.lib.php | 10 +++++ .../supplier_payment/pdf/pdf_cow.modules.php | 12 +++--- htdocs/fourn/class/paiementfourn.class.php | 43 +++++++++++++++++++ htdocs/fourn/paiement/card.php | 36 ++++++++++++++-- .../install/mysql/migration/5.0.0-6.0.0.sql | 2 + .../mysql/tables/llx_paiementfourn.sql | 3 +- 8 files changed, 101 insertions(+), 14 deletions(-) diff --git a/htdocs/admin/supplier_payment.php b/htdocs/admin/supplier_payment.php index 5cd1877ddb4..933ee22a062 100644 --- a/htdocs/admin/supplier_payment.php +++ b/htdocs/admin/supplier_payment.php @@ -130,8 +130,8 @@ else if ($action == 'specimen') { $modele=GETPOST('module','alpha'); - $facture = new Facture($db); - $facture->initAsSpecimen(); + $paiementFourn = new PaiementFourn($db); + $paiementFourn->initAsSpecimen(); // Search template files $file=''; $classname=''; $filefound=0; @@ -153,7 +153,7 @@ else if ($action == 'specimen') $module = new $classname($db); - if ($module->write_file($facture,$langs) > 0) + if ($module->write_file($paiementFourn,$langs) > 0) { header("Location: ".DOL_URL_ROOT."/document.php?modulepart=supplier_payment&file=SPECIMEN.pdf"); return; diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index 064beaa8226..82146bfe4b4 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -345,6 +345,9 @@ class Conf $this->fournisseur->facture=new stdClass(); $this->fournisseur->facture->dir_output =$rootfordata."/fournisseur/facture"; $this->fournisseur->facture->dir_temp =$rootfordata."/fournisseur/facture/temp"; + $this->fournisseur->payment=new stdClass(); + $this->fournisseur->payment->dir_output =$rootfordata."/fournisseur/payment"; + $this->fournisseur->payment->dir_temp =$rootfordata."/fournisseur/payment/temp"; // To prepare split of module fournisseur into fournisseur + supplier_order + supplier_invoice if (! empty($this->fournisseur->enabled) && empty($this->global->MAIN_USE_NEW_SUPPLIERMOD)) // By default, if module supplier is on, we set new properties diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php index 1f7974775b5..d48b7d9d1f3 100644 --- a/htdocs/core/lib/files.lib.php +++ b/htdocs/core/lib/files.lib.php @@ -1874,6 +1874,16 @@ function dol_check_secure_access_document($modulepart,$original_file,$entity,$fu $original_file=$conf->fournisseur->facture->dir_output.'/'.$original_file; $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."facture_fourn WHERE facnumber='".$db->escape($refname)."' AND entity=".$conf->entity; } + // Wrapping pour les rapport de paiements + else if ($modulepart == 'supplier_payment') + { + if ($fuser->rights->fournisseur->facture->lire || preg_match('/^specimen/i',$original_file)) + { + $accessallowed=1; + } + $original_file=$conf->fournisseur->payment->dir_output.'/'.$original_file; + $sqlprotectagainstexternals = "SELECT fk_soc as fk_soc FROM ".MAIN_DB_PREFIX."paiementfournisseur WHERE ref='".$db->escape($refname)."' AND entity=".$conf->entity; + } // Wrapping pour les rapport de paiements else if ($modulepart == 'facture_paiement') diff --git a/htdocs/core/modules/supplier_payment/pdf/pdf_cow.modules.php b/htdocs/core/modules/supplier_payment/pdf/pdf_cow.modules.php index a7b9da6ded8..9f87b9870e4 100644 --- a/htdocs/core/modules/supplier_payment/pdf/pdf_cow.modules.php +++ b/htdocs/core/modules/supplier_payment/pdf/pdf_cow.modules.php @@ -24,7 +24,7 @@ * \brief Class file to generate the supplier invoices with the canelle model */ -require_once DOL_DOCUMENT_ROOT.'/core/modules/supplier_invoice/modules_facturefournisseur.php'; +require_once DOL_DOCUMENT_ROOT.'/core/modules/supplier_payment/modules_supplier_payment.php'; require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; @@ -157,13 +157,11 @@ class pdf_cow extends ModelePDFSuppliersPayments $outputlangs->load("bills"); $outputlangs->load("products"); - if ($conf->fournisseur->dir_output.'/facture') + if ($conf->fournisseur->payment->dir_output) { $object->fetch_thirdparty(); - - $deja_regle = $object->getSommePaiement(); - //$amount_credit_notes_included = $object->getSumCreditNotesUsed(); - //$amount_deposits_included = $object->getSumDepositsUsed(); + + $total = $object->montant; // Definition of $dir and $file if ($object->specimen) @@ -175,7 +173,7 @@ class pdf_cow extends ModelePDFSuppliersPayments { $objectref = dol_sanitizeFileName($object->ref); $objectrefsupplier = dol_sanitizeFileName($object->ref_supplier); - $dir = $conf->fournisseur->payment->dir_output.'/'.get_exdir($object->id,2,0,0,$object,'supplier_payment').$objectref; + $dir = $conf->fournisseur->payment->dir_output.'/'.$objectref; $file = $dir . "/" . $objectref . ".pdf"; if (! empty($conf->global->SUPPLIER_REF_IN_NAME)) $file = $dir . "/" . $objectref . ($objectrefsupplier?"_".$objectrefsupplier:"").".pdf"; } diff --git a/htdocs/fourn/class/paiementfourn.class.php b/htdocs/fourn/class/paiementfourn.class.php index 738c0eb716f..5d8279b1c54 100644 --- a/htdocs/fourn/class/paiementfourn.class.php +++ b/htdocs/fourn/class/paiementfourn.class.php @@ -660,6 +660,49 @@ class PaiementFourn extends Paiement } } + /** + * Create a document onto disk according to template model. + * + * @param string $modele Force template to use ('' to not force) + * @param Translate $outputlangs Object lang a utiliser pour traduction + * @param int $hidedetails Hide details of lines + * @param int $hidedesc Hide description + * @param int $hideref Hide ref + * @return int <0 if KO, 0 if nothing done, >0 if OK + */ + public function generateDocument($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0) + { + global $conf, $user, $langs; + + $langs->load("suppliers"); + + // Set the model on the model name to use + if (empty($modele)) + { + if (! empty($conf->global->SUPPLIER_PAYMENT_ADDON_PDF)) + { + $modele = $conf->global->SUPPLIER_PAYMENT_ADDON_PDF; + } + else + { + $modele = ''; // No default value. For supplier invoice, we allow to disable all PDF generation + } + } + + if (empty($modele)) + { + return 0; + } + else + { + $modelpath = "core/modules/supplier_payment/pdf/"; + + return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref); + } + } + + + /** * get the right way of payment * diff --git a/htdocs/fourn/paiement/card.php b/htdocs/fourn/paiement/card.php index 16e5dd1892e..9cb44a92bb8 100644 --- a/htdocs/fourn/paiement/card.php +++ b/htdocs/fourn/paiement/card.php @@ -43,6 +43,11 @@ $confirm = GETPOST('confirm','alpha'); $object = new PaiementFourn($db); +// PDF +$hidedetails = (GETPOST('hidedetails', 'int') ? GETPOST('hidedetails', 'int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS) ? 1 : 0)); +$hidedesc = (GETPOST('hidedesc', 'int') ? GETPOST('hidedesc', 'int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0)); +$hideref = (GETPOST('hideref', 'int') ? GETPOST('hideref', 'int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0)); + /* * Actions */ @@ -134,6 +139,32 @@ if ($action == 'setdatep' && ! empty($_POST['datepday'])) } } +// Build document +if ($action == 'builddoc') +{ + // Save modele used + $object->fetch($id); + $object->fetch_thirdparty(); + + // Save last template used to generate document + if (GETPOST('model')) $object->setDocModel($user, GETPOST('model','alpha')); + + $outputlangs = $langs; + $newlang=GETPOST('lang_id','alpha'); + if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang=$object->thirdparty->default_lang; + if (! empty($newlang)) + { + $outputlangs = new Translate("",$conf); + $outputlangs->setDefaultLang($newlang); + } + $result = $object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref); + if ($result < 0) + { + setEventMessages($object->error, $object->errors, 'errors'); + $action=''; + } +} + /* * View @@ -353,14 +384,13 @@ if ($result > 0) * Documents generes */ $ref=dol_sanitizeFileName($object->ref); - $subdir = get_exdir($object->id,2,0,0,$object,'supplier_payment').$ref; - $filedir = $conf->fournisseur->paiement->dir_output.'/'.get_exdir($object->id,2,0,0,$object,'supplier_payment').$ref; + $filedir = $conf->fournisseur->payment->dir_output.'/'.dol_sanitizeFileName($object->ref); $urlsource=$_SERVER['PHP_SELF'].'?id='.$object->id; $genallowed=$user->rights->fournisseur->facture->creer; $delallowed=$user->rights->fournisseur->facture->supprimer; $modelpdf=(! empty($object->modelpdf)?$object->modelpdf:(empty($conf->global->SUPPLIER_PAYMENT_ADDON_PDF)?'':$conf->global->SUPPLIER_PAYMENT_ADDON_PDF)); - print $formfile->showdocuments('supplier_payment',$subdir,$filedir,$urlsource,$genallowed,$delallowed,$modelpdf,1,0,0,40,0,'','','',$societe->default_lang); + print $formfile->showdocuments('supplier_payment',$ref,$filedir,$urlsource,$genallowed,$delallowed,$modelpdf,1,0,0,40,0,'','','',$societe->default_lang); $somethingshown=$formfile->numoffiles; print '
    '; diff --git a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql index aa755daa09a..e7803281e67 100644 --- a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql +++ b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql @@ -98,3 +98,5 @@ CREATE TABLE llx_product_attribute_combination entity INT DEFAULT 1 NOT NULL ); +ALTER TABLE llx_paiementfourn ADD COLUMN model_pdf varchar(255); + diff --git a/htdocs/install/mysql/tables/llx_paiementfourn.sql b/htdocs/install/mysql/tables/llx_paiementfourn.sql index aba54627a09..0e9b1885c97 100644 --- a/htdocs/install/mysql/tables/llx_paiementfourn.sql +++ b/htdocs/install/mysql/tables/llx_paiementfourn.sql @@ -32,5 +32,6 @@ create table llx_paiementfourn num_paiement varchar(50), -- numero de paiement (cheque) note text, fk_bank integer NOT NULL, - statut smallint NOT NULL DEFAULT 0 + statut smallint NOT NULL DEFAULT 0, + model_pdf varchar(255) )ENGINE=innodb; From eb70d6eea122b09d8869b576a74f2f0a136ff8c9 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Tue, 14 Feb 2017 18:04:12 +0100 Subject: [PATCH 0263/1163] Debug of feature for browser notifications --- htdocs/core/ajax/check_notifications.php | 64 +++++++++++++++++------- htdocs/core/class/conf.class.php | 2 + htdocs/core/js/lib_notification.js.php | 49 +++++++++--------- htdocs/main.inc.php | 2 +- htdocs/user/class/user.class.php | 3 -- 5 files changed, 73 insertions(+), 47 deletions(-) diff --git a/htdocs/core/ajax/check_notifications.php b/htdocs/core/ajax/check_notifications.php index af56cb23700..4db67aef939 100644 --- a/htdocs/core/ajax/check_notifications.php +++ b/htdocs/core/ajax/check_notifications.php @@ -24,31 +24,57 @@ if (! defined('NOREQUIRESOC')) define('NOREQUIRESOC','1'); if (! defined('NOREQUIRETRAN')) define('NOREQUIRETRAN','1'); require '../../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php'; global $user, $db, $langs, $conf; -$time = GETPOST('time'); +$time = (int) GETPOST('time'); // Use the time parameter that is always increased by time_update, even if call is late //$time=dol_now(); -session_start(); -$time_update = (empty($conf->global->MAIN_BROWSER_NOTIFICATION_FREQUENCY)?'3':(int) $conf->global->MAIN_BROWSER_NOTIFICATION_FREQUENCY); +$eventfound = array(); +//Uncomment this to force a test +//$eventfound[]=array('type'=>'agenda', 'id'=>1, 'tipo'=>'eee', 'location'=>'aaa'); -$eventos = array(); -//$eventos[]=array('type'=>'agenda', 'id'=>1, 'tipo'=>'eee', 'location'=>'aaa'); +//dol_syslog('time='.$time.' $_SESSION[auto_ck_events_not_before]='.$_SESSION['auto_check_events_not_before']); -// TODO Remove test on session. Timer should be managed by a javascript timer -if ($_SESSION['auto_check_events'] <= (int) $time) +// TODO Try to make a solution with only a javascript timer that is easier. Difficulty is to avoid notification twice when several tabs are opened. +if ($time >= $_SESSION['auto_check_events_not_before']) { - $_SESSION['auto_check_events'] = $time + $time_update; - + $time_update = (int) $conf->global->MAIN_BROWSER_NOTIFICATION_FREQUENCY; // Always defined + if (! empty($_SESSION['auto_check_events_not_before'])) + { + // We start scan from the not before so if two tabs were opend at differents seconds and we close one (so the js timer), + // then we are not losing periods + $starttime = $_SESSION['auto_check_events_not_before']; + // Protection to avoid too long sessions + if ($starttime < ($time - (int) $conf->global->MAIN_SESSION_TIMEOUT)) + { + dol_syslog("We ask to check browser notification on a too large period. We fix this with current date."); + $starttime = $time; + } + } + else + { + $starttime = $time; + } + + $_SESSION['auto_check_events_not_before'] = $time + $time_update; + + // Force save of session change we did. + // WARNING: Any change in sessions after that will not be saved ! + session_write_close(); + + require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php'; + + + dol_syslog('NEW $_SESSION[auto_check_events_not_before]='.$_SESSION['auto_check_events_not_before']); + $sql = 'SELECT id'; $sql .= ' FROM ' . MAIN_DB_PREFIX . 'actioncomm a, ' . MAIN_DB_PREFIX . 'actioncomm_resources ar'; $sql .= ' WHERE a.id = ar.fk_actioncomm'; - // TODO Try to make a solution with only a javascript timer that is easier. Difficulty is to avoid notification twice when. - // This need to extend period to be sure to not miss and save what we notified to avoid duplicate (save is not done yet). - $sql .= " AND datep BETWEEN '" . $db->idate($time + 1) . "' AND '" . $db->idate($time + $time_update) . "'"; + // TODO Try to make a solution with only a javascript timer that is easier. Difficulty is to avoid notification twice when several tabs are opened. + // This need to extend period to be sure to not miss and save in session what we notified to avoid duplicate (save is not done yet). + $sql .= " AND datep BETWEEN '" . $db->idate($starttime) . "' AND '" . $db->idate($time + $time_update - 1) . "'"; $sql .= ' AND a.code <> "AC_OTH_AUTO"'; $sql .= ' AND ar.element_type = "user"'; $sql .= ' AND ar.fk_element = ' . $user->id; @@ -59,8 +85,10 @@ if ($_SESSION['auto_check_events'] <= (int) $time) $actionmod = new ActionComm($db); - while ($obj = $db->fetch_object($resql)) { - + while ($obj = $db->fetch_object($resql)) + { + $langs->load("agenda"); + $actionmod->fetch($obj->id); $event = array(); @@ -68,13 +96,13 @@ if ($_SESSION['auto_check_events'] <= (int) $time) $event['id'] = $actionmod->id; $event['tipo'] = $langs->transnoentities('Action' . $actionmod->code); $event['titulo'] = $actionmod->label; - $event['location'] = $actionmod->location; + $event['location'] = $langs->transnoentities('Location').': '.$actionmod->location; - $eventos[] = $event; + $eventfound[] = $event; } } } -print json_encode($eventos); +print json_encode($eventfound); diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index 064beaa8226..bb63e4c3560 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -420,6 +420,8 @@ class Conf if (empty($this->global->MAIN_MONNAIE)) $this->global->MAIN_MONNAIE='EUR'; $this->currency=$this->global->MAIN_MONNAIE; + if (empty($conf->global->MAIN_BROWSER_NOTIFICATION_FREQUENCY)) $conf->global->MAIN_BROWSER_NOTIFICATION_FREQUENCY = 30; // Less than 1 minutes to be sure + // conf->global->ACCOUNTING_MODE = Option des modules Comptabilites (simple ou expert). Defini le mode de calcul des etats comptables (CA,...) if (empty($this->global->ACCOUNTING_MODE)) $this->global->ACCOUNTING_MODE='RECETTES-DEPENSES'; // By default. Can be 'RECETTES-DEPENSES' ou 'CREANCES-DETTES' diff --git a/htdocs/core/js/lib_notification.js.php b/htdocs/core/js/lib_notification.js.php index a870066c775..af8e0492cdc 100644 --- a/htdocs/core/js/lib_notification.js.php +++ b/htdocs/core/js/lib_notification.js.php @@ -35,20 +35,23 @@ if (!($_SERVER['HTTP_REFERER'] === $dolibarr_main_url_root . '/' || $_SERVER['HT // Define javascript type header('Content-type: text/javascript; charset=UTF-8'); + $nowtime = time(); + //$nowtimeprevious = floor($nowtime / 60) * 60; // auto_check_events_not_before is rounded to previous minute + // TODO Try to make a solution with only a javascript timer that is easier. Difficulty is to avoid notification twice when. session_cache_limiter(FALSE); header('Cache-Control: no-cache'); session_start(); - if (!isset($_SESSION['auto_check_events'])) { - // Round to eliminate the second part - $_SESSION['auto_check_events'] = floor(time() / 60) * 60; - print 'var time_session = ' . $_SESSION['auto_check_events'] . ';'."\n"; - print 'var now = ' . $_SESSION['auto_check_events'] . ';' . "\n"; - } else { - print 'var time_session = ' . $_SESSION['auto_check_events'] . ';' . "\n"; - print 'var now = ' . time() . ';' . "\n"; + if (! isset($_SESSION['auto_check_events_not_before'])) + { + print 'console.log("_SESSION[auto_check_events_not_before] is not set");'."\n"; + // Round to eliminate the seconds + $_SESSION['auto_check_events_not_before'] = $nowtime; // auto_check_events_not_before is rounded to previous minute } - print 'var time_auto_update = '.(empty($conf->global->MAIN_BROWSER_NOTIFICATION_FREQUENCY)?'3':(int) $conf->global->MAIN_BROWSER_NOTIFICATION_FREQUENCY).';' . "\n"; + print 'var nowtime = ' . $nowtime . ';' . "\n"; + print 'var auto_check_events_not_before = '.$_SESSION['auto_check_events_not_before']. ';'."\n"; + print 'var time_js_next_test = Math.max(nowtime, auto_check_events_not_before);'."\n"; + print 'var time_auto_update = '.$conf->global->MAIN_BROWSER_NOTIFICATION_FREQUENCY; // Always defined ?> /* Check if permission ok */ @@ -56,31 +59,27 @@ if (!($_SERVER['HTTP_REFERER'] === $dolibarr_main_url_root . '/' || $_SERVER['HT Notification.requestPermission() } - if (now > (time_session + time_auto_update) || now == time_session) { - - first_execution(); //firts run auto check - } else { - - var time_first_execution = (time_auto_update - (now - time_session)) * 1000; //need milliseconds - - setTimeout(first_execution, time_first_execution); //first run auto check - } + /* Launch timer */ + // We set a delay before launching first test so next check will arrive after the time_auto_update compared to previous one. + var time_first_execution = (time_auto_update - (nowtime - time_js_next_test)) * 1000; //need milliseconds + console.log("Launch browser notif check: setTimeout to wait time_first_execution="+time_first_execution+" before first check - nowtime = "+nowtime+" auto_check_events_not_before = "+auto_check_events_not_before+" time_js_next_test = "+time_js_next_test+" time_auto_update="+time_auto_update); + setTimeout(first_execution, time_first_execution); //first run auto check function first_execution() { - console.log("Call first_execution"); - check_events(); - setInterval(check_events, time_auto_update * 1000); //program time for run check events + console.log("Call first_execution time_auto_update (MAIN_BROWSER_NOTIFICATION_FREQUENCY) = "+time_auto_update); + check_events(); //one check before launching timer to launch other checks + setInterval(check_events, time_auto_update * 1000); //program time to run next check events } function check_events() { if (Notification.permission === "granted") { - console.log("Call check_events"); + console.log("Call check_events time_js_next_test="+time_js_next_test); $.ajax("", { type: "post", // Usually post o get async: true, - data: {time: time_session}, + data: {time: time_js_next_test}, success: function (result) { var arr = JSON.parse(result); if (arr.length > 0) { @@ -95,7 +94,7 @@ if (!($_SERVER['HTTP_REFERER'] === $dolibarr_main_url_root . '/' || $_SERVER['HT var title="Not defined"; var body = value['tipo'] + ': ' + value['titulo']; if (value['type'] == 'agenda' && value['location'] != null && value['location'] != '') { - body += '\n transnoentities('Location')?>: ' + value['location']; + body += '\n' + value['location']; } if (value['type'] == 'agenda') @@ -132,7 +131,7 @@ if (!($_SERVER['HTTP_REFERER'] === $dolibarr_main_url_root . '/' || $_SERVER['HT console.log("Cancel check_events. Useless because Notification.permission is "+Notification.permission); } - time_session += time_auto_update; + time_js_next_test += time_auto_update; } agenda->enabled) && ! empty($conf->global->AGENDA_NOTIFICATION) && ! empty($conf->global->AGENDA_NOTIFICATION_SOUND)) $enablebrowsernotif=true; + if (! empty($conf->agenda->enabled) && ! empty($conf->global->AGENDA_NOTIFICATION)) $enablebrowsernotif=true; if ($enablebrowsernotif) { print ''."\n"; diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index 8281ef244d1..f087fc3db9b 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -235,7 +235,6 @@ class User extends CommonObject $sql.= " AND u.rowid = ".$id; } - dol_syslog(get_class($this)."::fetch", LOG_DEBUG); $result = $this->db->query($sql); if ($result) { @@ -618,7 +617,6 @@ class User extends CommonObject $sql.= " AND r.perms IS NOT NULL"; if ($moduletag) $sql.= " AND r.module = '".$this->db->escape($moduletag)."'"; - dol_syslog(get_class($this).'::getrights', LOG_DEBUG); $resql = $this->db->query($sql); if ($resql) { @@ -670,7 +668,6 @@ class User extends CommonObject $sql.= " AND r.perms IS NOT NULL"; if ($moduletag) $sql.= " AND r.module = '".$this->db->escape($moduletag)."'"; - dol_syslog(get_class($this).'::getrights', LOG_DEBUG); $resql = $this->db->query($sql); if ($resql) { From a12a094172256eb9b704e01490516684452fa4da Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Wed, 15 Feb 2017 01:11:25 +0100 Subject: [PATCH 0264/1163] $usemargins not used on global because it's defined on the tpl file (line 42) --- htdocs/core/tpl/objectline_view.tpl.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/tpl/objectline_view.tpl.php b/htdocs/core/tpl/objectline_view.tpl.php index 891694670f4..1971532433a 100755 --- a/htdocs/core/tpl/objectline_view.tpl.php +++ b/htdocs/core/tpl/objectline_view.tpl.php @@ -36,7 +36,7 @@ * $type, $text, $description, $line */ -global $forceall, $senderissupplier, $inputalsopricewithtax, $usemargins, $outputalsopricetotalwithtax; +global $forceall, $senderissupplier, $inputalsopricewithtax, $outputalsopricetotalwithtax; $usemargins=0; if (! empty($conf->margin->enabled) && ! empty($object->element) && in_array($object->element,array('facture','propal','commande'))) $usemargins=1; @@ -46,7 +46,7 @@ if (empty($forceall)) $forceall=0; if (empty($senderissupplier)) $senderissupplier=0; if (empty($inputalsopricewithtax)) $inputalsopricewithtax=0; if (empty($outputalsopricetotalwithtax)) $outputalsopricetotalwithtax=0; -if (empty($usemargins)) $usemargins=0; + ?> From 692dd0b5dbb9fbb5c51215b5443a84c39d70fd3a Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Wed, 15 Feb 2017 01:22:20 +0100 Subject: [PATCH 0265/1163] contact email not display on tooltip field not initialised --- htdocs/contact/list.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php index 3fbd4fa462d..6091171dfe6 100644 --- a/htdocs/contact/list.php +++ b/htdocs/contact/list.php @@ -659,6 +659,7 @@ while ($i < min($num,$limit)) $contactstatic->id=$obj->cidp; $contactstatic->statut=$obj->statut; $contactstatic->poste=$obj->poste; + $contactstatic->email=$obj->email; $contactstatic->phone_pro=$obj->phone_pro; $contactstatic->phone_perso=$obj->phone_perso; $contactstatic->phone_mobile=$obj->phone_mobile; From 5ec01b3175625c9623c6b00353e738ff44c1cbea Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Wed, 15 Feb 2017 11:41:09 +0100 Subject: [PATCH 0266/1163] NEW : Can send email to multiple destinaries from mailform --- htdocs/core/actions_sendmails.inc.php | 86 ++++++++++++++++------- htdocs/core/class/html.formmail.class.php | 4 +- htdocs/societe/class/societe.class.php | 2 +- 3 files changed, 62 insertions(+), 30 deletions(-) diff --git a/htdocs/core/actions_sendmails.inc.php b/htdocs/core/actions_sendmails.inc.php index 28799231fdd..aad57a90894 100644 --- a/htdocs/core/actions_sendmails.inc.php +++ b/htdocs/core/actions_sendmails.inc.php @@ -160,24 +160,33 @@ if (($action == 'send' || $action == 'relance') && ! $_POST['addfile'] && ! $_PO if ($result > 0) { + $receiver=$_POST['receiver']; + $sendto_array=array(); + if (trim($_POST['sendto'])) { // Recipient is provided into free text $sendto = trim($_POST['sendto']); - $sendtoid = 0; + $sendtoid = array(); } - elseif ($_POST['receiver'] != '-1') + elseif (count($receiver)>0) { - // Recipient was provided from combo list - if ($_POST['receiver'] == 'thirdparty') // Id of third party - { - $sendto = $thirdparty->name.' <'.$thirdparty->email.'>'; - $sendtoid = 0; + foreach($receiver as $key=>$val) { + // Recipient was provided from combo list + if ($val == 'thirdparty') // Id of third party + { + $sendto_array[] = $thirdparty->name.' <'.$thirdparty->email.'>'; + $sendtoid = array(); + } + else // Id du contact + { + $sendto_array[] = $thirdparty->contact_get_property((int) $val,'email'); + $sendtoid[] = $val; + } } - else // Id du contact - { - $sendto = $thirdparty->contact_get_property((int) $_POST['receiver'],'email'); - $sendtoid = $_POST['receiver']; + + if (count($sendto_array)>0) { + $sendto=implode(',',$sendto_array); } } if (trim($_POST['sendtocc'])) @@ -339,22 +348,45 @@ if (($action == 'send' || $action == 'relance') && ! $_POST['addfile'] && ! $_PO // Initialisation of datas if (is_object($object)) { - $object->socid = $sendtosocid; // To link to a company - $object->sendtoid = $sendtoid; // To link to a contact/address - $object->actiontypecode = $actiontypecode; - $object->actionmsg = $actionmsg; // Long text - $object->actionmsg2 = $actionmsg2; // Short text - $object->trackid = $trackid; - $object->fk_element = $object->id; - $object->elementtype = $object->element; - - // Call of triggers - include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; - $interface=new Interfaces($db); - $result=$interface->run_triggers($trigger_name,$object,$user,$langs,$conf); - if ($result < 0) { - $error++; $errors=$interface->errors; - } + //multiple contact sends + if (count($sendtoid) >0) { + foreach($sendtoid as $val_id) { + $object->socid = $sendtosocid; // To link to a company + $object->sendtoid = $val_id; // To link to a contact/address + $object->actiontypecode = $actiontypecode; + $object->actionmsg = $actionmsg; // Long text + $object->actionmsg2 = $actionmsg2; // Short text + $object->trackid = $trackid; + $object->fk_element = $object->id; + $object->elementtype = $object->element; + + // Call of triggers + include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; + $interface=new Interfaces($db); + $result=$interface->run_triggers($trigger_name,$object,$user,$langs,$conf); + if ($result < 0) { + $error++; $errors=$interface->errors; + } + } + } else { + //Thirdparty send + $object->socid = $sendtosocid; // To link to a company + $object->sendtoid = 0; // To link to a contact/address + $object->actiontypecode = $actiontypecode; + $object->actionmsg = $actionmsg; // Long text + $object->actionmsg2 = $actionmsg2; // Short text + $object->trackid = $trackid; + $object->fk_element = $object->id; + $object->elementtype = $object->element; + + // Call of triggers + include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php'; + $interface=new Interfaces($db); + $result=$interface->run_triggers($trigger_name,$object,$user,$langs,$conf); + if ($result < 0) { + $error++; $errors=$interface->errors; + } + } // End call of triggers } diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index a85b8157732..f344e3ca9b1 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -521,7 +521,7 @@ class FormMail extends Form if (! empty($this->withto) && is_array($this->withto)) { if (! empty($this->withtofree)) $out.= " ".$langs->trans("or")." "; - $out.= $form->selectarray("receiver", $this->withto, GETPOST("receiver"), 1, 0, 0, '', 0, 0, 0, '', '', 0, '', $disablebademails); + $out.= $form->multiselectarray("receiver", $this->withto, GETPOST("receiver"), null, null, null,null, "90%"); } if (isset($this->withtosocid) && $this->withtosocid > 0) // deprecated. TODO Remove this. Instead, fill withto with array before calling method. { @@ -533,7 +533,7 @@ class FormMail extends Form $liste[$key]=$value; } if ($this->withtofree) $out.= " ".$langs->trans("or")." "; - $out.= $form->selectarray("receiver", $liste, GETPOST("receiver"), 1, 0, 0, '', 0, 0, 0, '', '', 0, '', $disablebademails); + $out.= $form->multiselectarray("receiver", $liste, GETPOST("receiver")); } } $out.= "\n"; diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 86fb2d88a1e..656a886c13c 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -2026,7 +2026,7 @@ class Societe extends CommonObject if ($this->email && $addthirdparty) { if (empty($this->name)) $this->name=$this->nom; - $contact_emails['thirdparty']=$langs->trans("ThirdParty").': '.dol_trunc($this->name,16)." <".$this->email.">"; + $contact_emails['thirdparty']=$langs->trans("ThirdParty").': '.dol_trunc($this->name,16)." (".$this->email.")"; } return $contact_emails; } From a98e5b7290232e412975845f836650762e308289 Mon Sep 17 00:00:00 2001 From: florian HENRY Date: Wed, 15 Feb 2017 11:46:36 +0100 Subject: [PATCH 0267/1163] fix syntax --- htdocs/core/class/html.formmail.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index f344e3ca9b1..69cda9eb3af 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -533,7 +533,7 @@ class FormMail extends Form $liste[$key]=$value; } if ($this->withtofree) $out.= " ".$langs->trans("or")." "; - $out.= $form->multiselectarray("receiver", $liste, GETPOST("receiver")); + $out.= $form->multiselectarray("receiver", $liste, GETPOST("receiver"), null, null, null,null, "90%"); } } $out.= "\n"; From 380333070151cd2918aa7a954cf4b58f53877fde Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Wed, 15 Feb 2017 18:09:45 +0100 Subject: [PATCH 0268/1163] NEW Add option PROJECT_THIRDPARTY_REQUIRED --- htdocs/projet/card.php | 12 ++++++++++-- htdocs/projet/class/project.class.php | 8 +++++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/htdocs/projet/card.php b/htdocs/projet/card.php index 6221e4c2b87..91f57056ec3 100644 --- a/htdocs/projet/card.php +++ b/htdocs/projet/card.php @@ -507,7 +507,11 @@ if ($action == 'create' && $user->rights->projet->creer) // Thirdparty if ($conf->societe->enabled) { - print ''.$langs->trans("ThirdParty").''; + print ''; + print (empty($conf->global->PROJECT_THIRDPARTY_REQUIRED)?'':''); + print $langs->trans("ThirdParty"); + print (empty($conf->global->PROJECT_THIRDPARTY_REQUIRED)?'':''); + print ''; $filteronlist=''; if (! empty($conf->global->PROJECT_FILTER_FOR_THIRDPARTY_LIST)) $filteronlist=$conf->global->PROJECT_FILTER_FOR_THIRDPARTY_LIST; $text=$form->select_thirdparty_list(GETPOST('socid','int'), 'socid', $filteronlist, 'SelectThirdParty', 1, 0, array(), '', 0, 0, 'minwidth300'); @@ -719,7 +723,11 @@ elseif ($object->id > 0) // Thirdparty if ($conf->societe->enabled) { - print ''.$langs->trans("ThirdParty").''; + print ''; + print (empty($conf->global->PROJECT_THIRDPARTY_REQUIRED)?'':''); + print $langs->trans("ThirdParty"); + print (empty($conf->global->PROJECT_THIRDPARTY_REQUIRED)?'':''); + print ''; $filteronlist=''; if (! empty($conf->global->PROJECT_FILTER_FOR_THIRDPARTY_LIST)) $filteronlist=$conf->global->PROJECT_FILTER_FOR_THIRDPARTY_LIST; $text=$form->select_thirdparty_list($object->thirdparty->id, 'socid', $filteronlist, 'None', 1, 0, array(), '', 0, 0, 'minwidth300'); diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index edd4c6eed12..1afac184b64 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -139,7 +139,13 @@ class Project extends CommonObject dol_syslog(get_class($this)."::create error -1 ref null", LOG_ERR); return -1; } - + if (! empty($conf->global->PROJECT_THIRDPARTY_REQUIRED) && ! $this->socid > 0) + { + $this->error = 'ErrorFieldsRequired'; + dol_syslog(get_class($this)."::create error -1 ref null", LOG_ERR); + return -1; + } + $this->db->begin(); $sql = "INSERT INTO " . MAIN_DB_PREFIX . "projet ("; From c06aedc54da2dadd3d01e8dd3c5200ea847ed8c3 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Wed, 15 Feb 2017 20:55:52 +0100 Subject: [PATCH 0269/1163] [FP17] : Add data in llx_accountancy_journal --- htdocs/install/mysql/data/llx_accounting.sql | 8 +++++++- htdocs/install/mysql/migration/5.0.0-6.0.0.sql | 6 ++++++ htdocs/install/mysql/tables/llx_accounting_journal.sql | 4 ++-- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/htdocs/install/mysql/data/llx_accounting.sql b/htdocs/install/mysql/data/llx_accounting.sql index 149d7fea394..dc7aeb27bef 100644 --- a/htdocs/install/mysql/data/llx_accounting.sql +++ b/htdocs/install/mysql/data/llx_accounting.sql @@ -5,7 +5,7 @@ -- Copyright (C) 2004 Guillaume Delecourt -- Copyright (C) 2005-2009 Regis Houssin -- Copyright (C) 2007 Patrick Raguin --- Copyright (C) 2011-2016 Alexandre Spangaro +-- Copyright (C) 2011-2017 Alexandre Spangaro -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by @@ -29,7 +29,13 @@ delete from llx_accounting_account; delete from llx_accounting_system; +delete from llx_accounting_journal; +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (1,'VT', 'Journal des ventes', 1, 1); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (2,'AC', 'Journal des achats', 2, 1); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (3,'BQ', 'Journal de banque', 3, 1); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (4,'OD', 'Journal des opérations diverses', 4, 1); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (5,'AN', 'Journal des à-nouveaux', 9, 1); -- -- Descriptif des plans comptables FR PCG99-ABREGE -- diff --git a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql index aa755daa09a..0d47261503c 100644 --- a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql +++ b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql @@ -98,3 +98,9 @@ CREATE TABLE llx_product_attribute_combination entity INT DEFAULT 1 NOT NULL ); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (1,'VT', 'Journal des ventes', 1, 1); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (2,'AC', 'Journal des achats', 2, 1); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (3,'BQ', 'Journal de banque', 3, 1); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (4,'OD', 'Journal des opérations diverses', 4, 1); +INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (5,'AN', 'Journal des à-nouveaux', 9, 1); + diff --git a/htdocs/install/mysql/tables/llx_accounting_journal.sql b/htdocs/install/mysql/tables/llx_accounting_journal.sql index bc514f0ed9b..f3ee2a2e010 100644 --- a/htdocs/install/mysql/tables/llx_accounting_journal.sql +++ b/htdocs/install/mysql/tables/llx_accounting_journal.sql @@ -1,5 +1,5 @@ -- ============================================================================ --- Copyright (C) 2016 Alexandre Spangaro +-- Copyright (C) 2016-2017 Alexandre Spangaro -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by @@ -22,6 +22,6 @@ create table llx_accounting_journal rowid integer AUTO_INCREMENT PRIMARY KEY, code varchar(32) NOT NULL, label varchar(128) NOT NULL, - nature smallint DEFAULT 0 NOT NULL, -- type of journals (Sale / purchase / bank / various operations) + nature smallint DEFAULT 0 NOT NULL, -- type of journals (1:Sale / 2:purchase / 3:bank / 4:various operations / 9: has-new) active smallint DEFAULT 0 )ENGINE=innodb; From a1ba4aa9419e1998997de6ef1de559104009e4bc Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Thu, 16 Feb 2017 02:27:07 +0100 Subject: [PATCH 0270/1163] NEW: No external check of version without explicit click in about page. --- htdocs/admin/system/about.php | 89 +++++++++++++++++++++-------------- htdocs/admin/tools/update.php | 4 +- 2 files changed, 57 insertions(+), 36 deletions(-) diff --git a/htdocs/admin/system/about.php b/htdocs/admin/system/about.php index 32532f61f50..e9e2e0f1749 100644 --- a/htdocs/admin/system/about.php +++ b/htdocs/admin/system/about.php @@ -26,14 +26,35 @@ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/files.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/geturl.lib.php'; $langs->load("admin"); $langs->load("help"); $langs->load("members"); +$langs->load("other"); $youuselaststable = 0; +$action=GETPOST('action','alpha'); + +if (! $user->admin) accessforbidden(); + +$sfurl = ''; +$version='0.0'; + + +/* + * Actions + */ + +if ($action == 'getlastversion') +{ + $result = getURLContent('http://sourceforge.net/projects/dolibarr/rss'); + //var_dump($result['content']); + $sfurl = simplexml_load_string($result['content']); +} + /* * View @@ -50,51 +71,49 @@ print '
    '.img_picto_common('', 'dolibarr_box.png print '
    '; -print $langs->trans("Version").' / '.$langs->trans("DolibarrLicense").':'; -print '
      '; -print '
    • '.DOL_VERSION.''; +print $langs->trans("CurrentVersion").' : '.DOL_VERSION.'
      '; -$result = getURLContent('http://sourceforge.net/projects/dolibarr/rss'); -//var_dump($result['content']); -$sfurl = simplexml_load_string($result['content']); -if ($sfurl) +if (function_exists('curl_init')) { - $i=0; - $version='0.0'; - while (! empty($sfurl->channel[0]->item[$i]->title) && $i < 10000) + $conf->global->MAIN_USE_RESPONSE_TIMEOUT = 10; + + if ($action == 'getlastversion') { - $title=$sfurl->channel[0]->item[$i]->title; - if (preg_match('/([0-9]+\.([0-9\.]+))/', $title, $reg)) + if ($sfurl) { - $newversion=$reg[1]; - $newversionarray=explode('.',$newversion); - $versionarray=explode('.',$version); - //var_dump($newversionarray);var_dump($versionarray); - if (versioncompare($newversionarray, $versionarray) > 0) $version=$newversion; + while (! empty($sfurl->channel[0]->item[$i]->title) && $i < 10000) + { + $title=$sfurl->channel[0]->item[$i]->title; + if (preg_match('/([0-9]+\.([0-9\.]+))/', $title, $reg)) + { + $newversion=$reg[1]; + $newversionarray=explode('.',$newversion); + $versionarray=explode('.',$version); + //var_dump($newversionarray);var_dump($versionarray); + if (versioncompare($newversionarray, $versionarray) > 0) $version=$newversion; + } + $i++; + } + + // Show version + print $langs->trans("LastStableVersion").' : '. (($version != '0.0')?$version:$langs->trans("Unknown")) .'
      '; + } + else + { + print $langs->trans("LastStableVersion").' : ' .$langs->trans("UpdateServerOffline").'
      '; } - $i++; } - - // Show version - if ($version != '0.0') + else { - print ' ('.$langs->trans("LastStableVersion").': '.$version.''; - if (DOL_VERSION == $version) - { - $youuselaststable=1; - print $langs->trans("YouUseLastStableVersion"); - } - print ')'; + print $langs->trans("LastStableVersion").' : ' .$langs->trans("Check").'
      '; } } -else -{ - print ' ('.$langs->trans("LastStableVersion").' : ' .$langs->trans("UpdateServerOffline").')
      '; -} -print ' / GNU-GPL v3+
    • '; +print '
      '; - -print '
    '; +print $langs->trans("DolibarrLicense").' : '; +print ''; //print "
    \n"; diff --git a/htdocs/admin/tools/update.php b/htdocs/admin/tools/update.php index d8b17ab989b..d0802d6b473 100644 --- a/htdocs/admin/tools/update.php +++ b/htdocs/admin/tools/update.php @@ -69,7 +69,9 @@ llxHeader('',$langs->trans("Upgrade"),$wikihelp); print load_fiche_titre($langs->trans("Upgrade"),'','title_setup'); -print $langs->trans("CurrentVersion").' : '.DOL_VERSION.'
    '; +print '
    '; + +print $langs->trans("CurrentVersion").' : '.DOL_VERSION.'
    '; if (function_exists('curl_init')) { From afa5ef291393887f256587d58e1f1237c8591204 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 17 Feb 2017 00:19:28 +0100 Subject: [PATCH 0271/1163] NEW Introduce fields that can be computed during export in export profiles. --- htdocs/core/class/commoninvoice.class.php | 76 ++++++++++++++--------- htdocs/core/class/discount.class.php | 21 ++++--- htdocs/core/modules/modFacture.class.php | 16 ++--- htdocs/exports/class/export.class.php | 29 ++++++++- htdocs/exports/export.php | 20 +++++- htdocs/langs/en_US/bills.lang | 1 + 6 files changed, 111 insertions(+), 52 deletions(-) diff --git a/htdocs/core/class/commoninvoice.class.php b/htdocs/core/class/commoninvoice.class.php index 4822ad7d0d8..2a6270e11dc 100644 --- a/htdocs/core/class/commoninvoice.class.php +++ b/htdocs/core/class/commoninvoice.class.php @@ -89,6 +89,22 @@ abstract class CommonInvoice extends CommonObject const STATUS_ABANDONED = 3; + /** + * Return remain amount to pay. + * Property ->id and ->total_ttc must be set. + * + * @param int $multicurrency Return multicurrency_amount instead of amount + * @return int Remain of amount to pay + */ + function getRemainToPay($multicurrency=0) + { + $alreadypaid=0; + $alreadypaid+=$this->getSommePaiement($multicurrency); + $alreadypaid+=$this->getSumDepositsUsed($multicurrency); + $alreadypaid+=$this->getSumCreditNotesUsed($multicurrency); + return $this->total_ttc - $alreadypaid; + } + /** * Return amount of payments already done * @@ -124,38 +140,10 @@ abstract class CommonInvoice extends CommonObject return -1; } } - - /** - * Return amount (with tax) of all credit notes and deposits invoices used by invoice - * - * @param int $multicurrency Return multicurrency_amount instead of amount - * @return int <0 if KO, Sum of credit notes and deposits amount otherwise - */ - function getSumCreditNotesUsed($multicurrency=0) - { - if ($this->element == 'facture_fourn' || $this->element == 'invoice_supplier') - { - // TODO - return 0; - } - - require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php'; - - $discountstatic=new DiscountAbsolute($this->db); - $result=$discountstatic->getSumCreditNotesUsed($this, $multicurrency); - if ($result >= 0) - { - return $result; - } - else - { - $this->error=$discountstatic->error; - return -1; - } - } /** - * Return amount (with tax) of all deposits invoices used by invoice + * Return amount (with tax) of all deposits invoices used by invoice. + * Should always be empty, except if option FACTURE_DEPOSITS_ARE_JUST_PAYMENTS is on (not recommended). * * @param int $multicurrency Return multicurrency_amount instead of amount * @return int <0 if KO, Sum of deposits amount otherwise @@ -182,7 +170,35 @@ abstract class CommonInvoice extends CommonObject return -1; } } + + /** + * Return amount (with tax) of all credit notes and deposits invoices used by invoice + * + * @param int $multicurrency Return multicurrency_amount instead of amount + * @return int <0 if KO, Sum of credit notes and deposits amount otherwise + */ + function getSumCreditNotesUsed($multicurrency=0) + { + if ($this->element == 'facture_fourn' || $this->element == 'invoice_supplier') + { + // TODO + return 0; + } + + require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php'; + $discountstatic=new DiscountAbsolute($this->db); + $result=$discountstatic->getSumCreditNotesUsed($this, $multicurrency); + if ($result >= 0) + { + return $result; + } + else + { + $this->error=$discountstatic->error; + return -1; + } + } /** * Renvoie tableau des ids de facture avoir issus de la facture diff --git a/htdocs/core/class/discount.class.php b/htdocs/core/class/discount.class.php index 5ea11cba680..f426f800d29 100644 --- a/htdocs/core/class/discount.class.php +++ b/htdocs/core/class/discount.class.php @@ -374,20 +374,21 @@ class DiscountAbsolute /** - * Return amount (with tax) of all credit notes and deposits invoices used by invoice + * Return amount (with tax) of all deposits invoices used by invoice as a payment. + * Should always be empty, except if option FACTURE_DEPOSITS_ARE_JUST_PAYMENTS is on (not recommended). * * @param Facture $invoice Object invoice - * @param int $multicurrency Return multicurrency_amount instead of amount + * @param int $multicurrency Return multicurrency_amount instead of amount * @return int <0 if KO, Sum of credit notes and deposits amount otherwise */ - function getSumCreditNotesUsed($invoice, $multicurrency=0) + function getSumDepositsUsed($invoice, $multicurrency=0) { $sql = 'SELECT sum(rc.amount_ttc) as amount, sum(rc.multicurrency_amount_ttc) as multicurrency_amount'; $sql.= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc, '.MAIN_DB_PREFIX.'facture as f'; $sql.= ' WHERE rc.fk_facture_source=f.rowid AND rc.fk_facture = '.$invoice->id; - $sql.= ' AND f.type = 2'; + $sql.= ' AND f.type = 3'; - dol_syslog(get_class($this)."::getSumCreditNotesUsed", LOG_DEBUG); + dol_syslog(get_class($this)."::getSumDepositsUsed", LOG_DEBUG); $resql=$this->db->query($sql); if ($resql) { @@ -402,20 +403,20 @@ class DiscountAbsolute } /** - * Return amount (with tax) of all deposits invoices used by invoice + * Return amount (with tax) of all credit notes and deposits invoices used by invoice as a payment * * @param Facture $invoice Object invoice - * @param int $multicurrency Return multicurrency_amount instead of amount + * @param int $multicurrency Return multicurrency_amount instead of amount * @return int <0 if KO, Sum of credit notes and deposits amount otherwise */ - function getSumDepositsUsed($invoice, $multicurrency=0) + function getSumCreditNotesUsed($invoice, $multicurrency=0) { $sql = 'SELECT sum(rc.amount_ttc) as amount, sum(rc.multicurrency_amount_ttc) as multicurrency_amount'; $sql.= ' FROM '.MAIN_DB_PREFIX.'societe_remise_except as rc, '.MAIN_DB_PREFIX.'facture as f'; $sql.= ' WHERE rc.fk_facture_source=f.rowid AND rc.fk_facture = '.$invoice->id; - $sql.= ' AND f.type = 3'; + $sql.= ' AND f.type = 2'; - dol_syslog(get_class($this)."::getSumDepositsUsed", LOG_DEBUG); + dol_syslog(get_class($this)."::getSumCreditNotesUsed", LOG_DEBUG); $resql=$this->db->query($sql); if ($resql) { diff --git a/htdocs/core/modules/modFacture.class.php b/htdocs/core/modules/modFacture.class.php index 0c323181ba2..4bc8590d5b4 100644 --- a/htdocs/core/modules/modFacture.class.php +++ b/htdocs/core/modules/modFacture.class.php @@ -205,11 +205,11 @@ class modFacture extends DolibarrModules $this->export_label[$r]='CustomersInvoicesAndInvoiceLines'; // Translation key (used only if key ExportDataset_xxx_z not found) $this->export_icon[$r]='invoice'; $this->export_permission[$r]=array(array("facture","facture","export","other")); - $this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.type'=>"Type",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.date_lim_reglement'=>"DateDue",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.rest'=>'Rest','f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_private'=>"NotePrivate",'f.note_public'=>"NotePublic",'f.fk_user_author'=>'CreatedById','uc.login'=>'CreatedByLogin','f.fk_user_valid'=>'ValidatedById','uv.login'=>'ValidatedByLogin', 'pj.ref'=>'ProjectRef', 'fd.rowid'=>'LineId','fd.description'=>"LineDescription",'fd.subprice'=>"LineUnitPrice",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.total_ht'=>"LineTotalHT",'fd.total_tva'=>"LineTotalVAT",'fd.total_ttc'=>"LineTotalTTC",'fd.date_start'=>"DateStart",'fd.date_end'=>"DateEnd",'fd.special_code'=>'SpecialCode','fd.product_type'=>"TypeOfLineServiceOrProduct",'fd.fk_product'=>'ProductId','p.ref'=>'ProductRef','p.label'=>'ProductLabel','p.accountancy_code_sell'=>'ProductAccountancySellCode'); - $this->export_TypeFields_array[$r]=array('s.rowid'=>'Numeric','s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.code_compta'=>'Text','s.code_compta_fournisseur'=>'Text','s.tva_intra'=>'Text','f.rowid'=>'Numeric','f.facnumber'=>"Text",'f.type'=>"Numeric",'f.datec'=>"Date",'f.datef'=>"Date",'f.date_lim_reglement'=>"Date",'f.total'=>"Numeric",'f.total_ttc'=>"Numeric",'f.tva'=>"Numeric",'f.rest'=>"NumericCompute",'f.paye'=>"Boolean",'f.fk_statut'=>'Numeric','f.note_private'=>"Text",'f.note_public'=>"Text",'f.fk_user_author'=>'Numeric','uc.login'=>'Text','f.fk_user_valid'=>'Numeric','uv.login'=>'Text','pj.ref'=>'Text','fd.rowid'=>'Numeric','fd.label'=>'Text','fd.description'=>"Text",'fd.subprice'=>"Numeric",'fd.tva_tx'=>"Numeric",'fd.qty'=>"Numeric",'fd.total_ht'=>"Numeric",'fd.total_tva'=>"Numeric",'fd.total_ttc'=>"Numeric",'fd.date_start'=>"Date",'fd.date_end'=>"Date",'fd.special_code'=>'Numeric','fd.product_type'=>"Numeric",'fd.fk_product'=>'List:product:label','p.ref'=>'Text','p.label'=>'Text','p.accountancy_code_sell'=>'Text'); + $this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.type'=>"Type",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.date_lim_reglement'=>"DateDue",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'none.rest'=>'Rest','f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_private'=>"NotePrivate",'f.note_public'=>"NotePublic",'f.fk_user_author'=>'CreatedById','uc.login'=>'CreatedByLogin','f.fk_user_valid'=>'ValidatedById','uv.login'=>'ValidatedByLogin', 'pj.ref'=>'ProjectRef', 'fd.rowid'=>'LineId','fd.description'=>"LineDescription",'fd.subprice'=>"LineUnitPrice",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.total_ht'=>"LineTotalHT",'fd.total_tva'=>"LineTotalVAT",'fd.total_ttc'=>"LineTotalTTC",'fd.date_start'=>"DateStart",'fd.date_end'=>"DateEnd",'fd.special_code'=>'SpecialCode','fd.product_type'=>"TypeOfLineServiceOrProduct",'fd.fk_product'=>'ProductId','p.ref'=>'ProductRef','p.label'=>'ProductLabel','p.accountancy_code_sell'=>'ProductAccountancySellCode'); + $this->export_TypeFields_array[$r]=array('s.rowid'=>'Numeric','s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.code_compta'=>'Text','s.code_compta_fournisseur'=>'Text','s.tva_intra'=>'Text','f.rowid'=>'Numeric','f.facnumber'=>"Text",'f.type'=>"Numeric",'f.datec'=>"Date",'f.datef'=>"Date",'f.date_lim_reglement'=>"Date",'f.total'=>"Numeric",'f.total_ttc'=>"Numeric",'f.tva'=>"Numeric",'none.rest'=>"NumericCompute",'f.paye'=>"Boolean",'f.fk_statut'=>'Numeric','f.note_private'=>"Text",'f.note_public'=>"Text",'f.fk_user_author'=>'Numeric','uc.login'=>'Text','f.fk_user_valid'=>'Numeric','uv.login'=>'Text','pj.ref'=>'Text','fd.rowid'=>'Numeric','fd.label'=>'Text','fd.description'=>"Text",'fd.subprice'=>"Numeric",'fd.tva_tx'=>"Numeric",'fd.qty'=>"Numeric",'fd.total_ht'=>"Numeric",'fd.total_tva'=>"Numeric",'fd.total_ttc'=>"Numeric",'fd.date_start'=>"Date",'fd.date_end'=>"Date",'fd.special_code'=>'Numeric','fd.product_type'=>"Numeric",'fd.fk_product'=>'List:product:label','p.ref'=>'Text','p.label'=>'Text','p.accountancy_code_sell'=>'Text'); $this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','c.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.code_compta'=>'company','s.code_compta_fournisseur'=>'company','s.tva_intra'=>'company', 'pj.ref'=>'project', 'fd.rowid'=>'invoice_line','fd.label'=>"invoice_line",'fd.description'=>"invoice_line",'fd.subprice'=>"invoice_line",'fd.total_ht'=>"invoice_line",'fd.total_tva'=>"invoice_line",'fd.total_ttc'=>"invoice_line",'fd.tva_tx'=>"invoice_line",'fd.qty'=>"invoice_line",'fd.date_start'=>"invoice_line",'fd.date_end'=>"invoice_line",'fd.special_code'=>'invoice_line','fd.product_type'=>'invoice_line','fd.fk_product'=>'product','p.ref'=>'product','p.label'=>'product','p.accountancy_code_sell'=>'product','f.fk_user_author'=>'user','uc.login'=>'user','f.fk_user_valid'=>'user','uv.login'=>'user'); - $this->export_dependencies_array[$r]=array('invoice_line'=>'fd.rowid','product'=>'fd.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them - $this->export_special_array[$r]=array('f.rest'=>'INVOICEREMAINTOPAY'); + $this->export_special_array[$r]=array('none.rest'=>'getRemainToPay'); + $this->export_dependencies_array[$r]=array('invoice_line'=>'fd.rowid', 'product'=>'fd.rowid', 'none.rest'=>array('f.rowid','f.total_ttc')); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them $keyforselect='facture'; $keyforelement='invoice'; $keyforaliasextra='extra'; include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; $keyforselect='facturedet'; $keyforelement='invoice_line'; $keyforaliasextra='extra2'; @@ -238,11 +238,11 @@ class modFacture extends DolibarrModules $this->export_label[$r]='CustomersInvoicesAndPayments'; // Translation key (used only if key ExportDataset_xxx_z not found) $this->export_icon[$r]='invoice'; $this->export_permission[$r]=array(array("facture","facture","export")); - $this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.type'=>"Type",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.date_lim_reglement'=>"DateDue",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.rest'=>'Rest','f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_private'=>"NotePrivate",'f.note_public'=>"NotePublic",'f.fk_user_author'=>'CreatedById','uc.login'=>'CreatedByLogin','f.fk_user_valid'=>'ValidatedById','uv.login'=>'ValidatedByLogin','pj.ref'=>'ProjectRef','p.rowid'=>'PaymentId','p.ref'=>'PaymentRef','p.amount'=>'AmountPayment','pf.amount'=>'AmountPaymentDistributedOnInvoice','p.datep'=>'DatePayment','p.num_paiement'=>'PaymentNumber','pt.code'=>'IdPaymentMode','pt.libelle'=>'LabelPaymentMode','p.note'=>'PaymentNote','p.fk_bank'=>'IdTransaction','ba.ref'=>'AccountRef'); - $this->export_TypeFields_array[$r]=array('s.rowid'=>'Numeric','s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.code_compta'=>'Text','s.code_compta_fournisseur'=>'Text','s.tva_intra'=>'Text','f.rowid'=>"Numeric",'f.facnumber'=>"Text",'f.type'=>"Numeric",'f.datec'=>"Date",'f.datef'=>"Date",'f.date_lim_reglement'=>"Date",'f.total'=>"Numeric",'f.total_ttc'=>"Numeric",'f.tva'=>"Numeric",'f.rest'=>'NumericCompute','f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_private'=>"Text",'f.note_public'=>"Text",'pj.ref'=>'Text','p.amount'=>'Numeric','pf.amount'=>'Numeric','p.rowid'=>'Numeric','p.ref'=>'Text','p.datep'=>'Date','p.num_paiement'=>'Numeric','p.fk_bank'=>'Numeric','p.note'=>'Text','pt.code'=>'Text','pt.libelle'=>'text','ba.ref'=>'Text'); + $this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.zip'=>'Zip','s.town'=>'Town','c.code'=>'CountryCode','s.phone'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','s.tva_intra'=>'VATIntra','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.type'=>"Type",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.date_lim_reglement'=>"DateDue",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'none.rest'=>'Rest','f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note_private'=>"NotePrivate",'f.note_public'=>"NotePublic",'f.fk_user_author'=>'CreatedById','uc.login'=>'CreatedByLogin','f.fk_user_valid'=>'ValidatedById','uv.login'=>'ValidatedByLogin','pj.ref'=>'ProjectRef','p.rowid'=>'PaymentId','p.ref'=>'PaymentRef','p.amount'=>'AmountPayment','pf.amount'=>'AmountPaymentDistributedOnInvoice','p.datep'=>'DatePayment','p.num_paiement'=>'PaymentNumber','pt.code'=>'CodePaymentMode','pt.libelle'=>'LabelPaymentMode','p.note'=>'PaymentNote','p.fk_bank'=>'IdTransaction','ba.ref'=>'AccountRef'); + $this->export_TypeFields_array[$r]=array('s.rowid'=>'Numeric','s.nom'=>'Text','s.address'=>'Text','s.zip'=>'Text','s.town'=>'Text','c.code'=>'Text','s.phone'=>'Text','s.siren'=>'Text','s.siret'=>'Text','s.ape'=>'Text','s.idprof4'=>'Text','s.code_compta'=>'Text','s.code_compta_fournisseur'=>'Text','s.tva_intra'=>'Text','f.rowid'=>"Numeric",'f.facnumber'=>"Text",'f.type'=>"Numeric",'f.datec'=>"Date",'f.datef'=>"Date",'f.date_lim_reglement'=>"Date",'f.total'=>"Numeric",'f.total_ttc'=>"Numeric",'f.tva'=>"Numeric",'none.rest'=>'NumericCompute','f.paye'=>"Boolean",'f.fk_statut'=>'Status','f.note_private'=>"Text",'f.note_public'=>"Text",'f.fk_user_author'=>'Numeric','uc.login'=>'Text','f.fk_user_valid'=>'Numeric','uv.login'=>'Text','pj.ref'=>'Text','p.amount'=>'Numeric','pf.amount'=>'Numeric','p.rowid'=>'Numeric','p.ref'=>'Text','p.datep'=>'Date','p.num_paiement'=>'Numeric','p.fk_bank'=>'Numeric','p.note'=>'Text','pt.code'=>'Text','pt.libelle'=>'text','ba.ref'=>'Text'); $this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.zip'=>'company','s.town'=>'company','c.code'=>'company','s.phone'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.code_compta'=>'company','s.code_compta_fournisseur'=>'company','s.tva_intra'=>'company','pj.ref'=>'project','p.rowid'=>'payment','p.ref'=>'payment','p.amount'=>'payment','pf.amount'=>'payment','p.datep'=>'payment','p.num_paiement'=>'payment','pt.code'=>'payment','pt.libelle'=>'payment','p.note'=>'payment','f.fk_user_author'=>'user','uc.login'=>'user','f.fk_user_valid'=>'user','uv.login'=>'user','p.fk_bank'=>'account','ba.ref'=>'account'); - $this->export_dependencies_array[$r]=array('payment'=>'p.rowid'); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them - $this->export_special_array[$r]=array('f.rest'=>'INVOICEREMAINTOPAY'); + $this->export_special_array[$r]=array('none.rest'=>'getRemainToPay'); + $this->export_dependencies_array[$r]=array('payment'=>'p.rowid', 'none.rest'=>array('f.rowid','f.total_ttc')); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them $keyforselect='facture'; $keyforelement='invoice'; $keyforaliasextra='extra'; include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php'; $this->export_sql_start[$r]='SELECT DISTINCT '; diff --git a/htdocs/exports/class/export.class.php b/htdocs/exports/class/export.class.php index 1d0c5cfb13e..858ad163cbb 100644 --- a/htdocs/exports/class/export.class.php +++ b/htdocs/exports/class/export.class.php @@ -220,7 +220,7 @@ class Export foreach ($this->array_export_fields[$indice] as $key => $value) { if (! array_key_exists($key, $array_selected)) continue; // Field not selected - + if (preg_match('/^none\./', $key)) continue; // A field that must not appears into SQL if ($i > 0) $sql.=', '; else $i++; @@ -607,12 +607,37 @@ class Export if ($objp->$alias < 0) $objp->$alias=''; } // Operation ZEROIFNEG - if ($this->array_export_special[$indice][$key]=='ZEROIFNEG') + elseif ($this->array_export_special[$indice][$key]=='ZEROIFNEG') { //$alias=$this->array_export_alias[$indice][$key]; $alias=str_replace(array('.', '-','(',')'),'_',$key); if ($objp->$alias < 0) $objp->$alias='0'; } + // Operation INVOICEREMAINTOPAY + elseif ($this->array_export_special[$indice][$key]=='getRemainToPay') + { + //$alias=$this->array_export_alias[$indice][$key]; + $alias=str_replace(array('.', '-','(',')'),'_',$key); + $remaintopay=''; + if ($objp->f_rowid > 0) + { + global $tmpobjforcomputecall; + if (! is_object($tmpobjforcomputecall)) + { + include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; + $tmpobjforcomputecall=new Facture($this->db); + } + $tmpobjforcomputecall->id = $objp->f_rowid; + $tmpobjforcomputecall->total_ttc = $objp->f_total_ttc; + $remaintopay=$tmpobjforcomputecall->getRemainToPay(); + } + $objp->$alias=$remaintopay; + } + else + { + $this->error='Operation '.$this->array_export_special[$indice][$key].' not supported.'; + return -1; + } } } // end of special operation processing diff --git a/htdocs/exports/export.php b/htdocs/exports/export.php index 12f78e01ce9..24b9ef3728e 100644 --- a/htdocs/exports/export.php +++ b/htdocs/exports/export.php @@ -147,7 +147,7 @@ $usefilters=1; * Actions */ -if ($action=='selectfield') +if ($action=='selectfield') // Selection of field at step 2 { $fieldsarray=$objexport->array_export_fields[0]; $fieldsentitiesarray=$objexport->array_export_entities[0]; @@ -168,12 +168,28 @@ if ($action=='selectfield') $warnings=array(); $array_selected[$field]=count($array_selected)+1; // We tag the key $field as "selected" - // We check if there is a dependency + // We check if there is a dependency to activate + /*var_dump($field); + var_dump($fieldsentitiesarray[$field]); + var_dump($fieldsdependenciesarray);*/ + $listofdependencies=array(); if (! empty($fieldsentitiesarray[$field]) && ! empty($fieldsdependenciesarray[$fieldsentitiesarray[$field]])) { + // We found a dependency on the type of field $tmp=$fieldsdependenciesarray[$fieldsentitiesarray[$field]]; // $fieldsdependenciesarray=array('element'=>'fd.rowid') or array('element'=>array('fd.rowid','ab.rowid')) if (is_array($tmp)) $listofdependencies=$tmp; else $listofdependencies=array($tmp); + } + else if (! empty($field) && ! empty($fieldsdependenciesarray[$field])) + { + // We found a dependency on a dedicated field + $tmp=$fieldsdependenciesarray[$field]; // $fieldsdependenciesarray=array('fd.fieldx'=>'fd.rowid') or array('fd.fieldx'=>array('fd.rowid','ab.rowid')) + if (is_array($tmp)) $listofdependencies=$tmp; + else $listofdependencies=array($tmp); + } + + if (count($listofdependencies)) + { foreach($listofdependencies as $fieldid) { if (empty($array_selected[$fieldid])) diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index d11b5122f59..b4896302b76 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -78,6 +78,7 @@ PaymentMode=Payment type PaymentTypeDC=Debit/Credit Card PaymentTypePP=PayPal IdPaymentMode=Payment type (id) +CodePaymentMode=Payment type (code) LabelPaymentMode=Payment type (label) PaymentModeShort=Payment type PaymentTerm=Payment term From ec962f13fac0ea85c6297051e810c99e0308b679 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 17 Feb 2017 00:59:00 +0100 Subject: [PATCH 0272/1163] CSS enhancement --- htdocs/theme/eldy/style.css.php | 8 +++++++- htdocs/theme/md/style.css.php | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 5f1d55b8350..8a20b7f4868 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -568,6 +568,12 @@ div.myavailability { .selectlimit, .marginrightonly { margin-right: 10px !important; } +.selectlimit, .selectlimit:focus { + border-left: none !important; + border-top: none !important; + border-right: none !important; + outline: none; +} .strikefordisabled { text-decoration: line-through; } @@ -2873,7 +2879,7 @@ tr.liste_titre_topborder td { .liste_titre td a.notasortlink:hover { background: transparent; } -tr.liste_titre td.liste_titre, form.liste_titre div.tagtd { /* For last line of table headers only */ +tr.liste_titre td.liste_titre, tr.liste_titre td.liste_titre_sel, form.liste_titre div.tagtd { /* For last line of table headers only */ border-bottom: 1px solid rgb(); } diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php index 099e17bc772..cb3680508df 100644 --- a/htdocs/theme/md/style.css.php +++ b/htdocs/theme/md/style.css.php @@ -546,6 +546,12 @@ div.myavailability { .selectlimit, .marginrightonly { margin-right: 10px !important; } +.selectlimit, .selectlimit:focus { + border-left: none !important; + border-top: none !important; + border-right: none !important; + outline: none; +} .strikefordisabled { text-decoration: line-through; } @@ -2751,7 +2757,7 @@ tr.liste_titre_topborder td { .liste_titre td a.notasortlink:hover { background: transparent; } -tr.liste_titre td.liste_titre { /* For last line of table headers only */ +tr.liste_titre td.liste_titre, tr.liste_titre td.liste_titre_sel { /* For last line of table headers only */ border-bottom: 1px solid rgb(); } From 90770a1f232d9731923eb8a1b26dd033c4dbbd12 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Fri, 17 Feb 2017 10:47:29 +0100 Subject: [PATCH 0273/1163] Accounting code not display on tooltip --- htdocs/societe/list.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/htdocs/societe/list.php b/htdocs/societe/list.php index 4a0be451c45..cc5ab706fb0 100644 --- a/htdocs/societe/list.php +++ b/htdocs/societe/list.php @@ -904,8 +904,12 @@ while ($i < min($num, $limit)) $companystatic->fournisseur=$obj->fournisseur; $companystatic->code_client=$obj->code_client; $companystatic->code_fournisseur=$obj->code_fournisseur; - $companystatic->fk_prospectlevel=$obj->fk_prospectlevel; - $companystatic->name_alias=$obj->name_alias; + + $companystatic->code_compta_client=$obj->code_compta; + $companystatic->code_compta_fournisseur=$obj->code_compta_fournisseur; + + $companystatic->fk_prospectlevel=$obj->fk_prospectlevel; + $companystatic->name_alias=$obj->name_alias; print ""; if (! empty($arrayfields['s.nom']['checked'])) From b94312162ebb1acb9600fc0ca47c626d98272580 Mon Sep 17 00:00:00 2001 From: BENKE Charlie Date: Fri, 17 Feb 2017 12:05:24 +0100 Subject: [PATCH 0274/1163] on list, preview tooltip is not displayed correctly it's a problem of alignment, the tooltip is cut by the left part on list (ex : comm/propal/list.php) think we can do better --- htdocs/core/class/html.formfile.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 83e913f9718..6c8a1170a90 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -803,7 +803,7 @@ class FormFile { $out='