Merge branch 'develop' of https://github.com/Dolibarr/dolibarr into develop
This commit is contained in:
commit
a10b836e8a
17
.travis.yml
17
.travis.yml
@ -3,14 +3,21 @@
|
|||||||
# Command run is phpunit
|
# Command run is phpunit
|
||||||
# For syntax, see http://about.travis-ci.org/docs/user/languages/php/
|
# For syntax, see http://about.travis-ci.org/docs/user/languages/php/
|
||||||
|
|
||||||
|
notifications:
|
||||||
|
email:
|
||||||
|
on_success: never # [always|never|change] default: change
|
||||||
|
on_failure: always # [always|never|change] default: always
|
||||||
|
|
||||||
services:
|
services:
|
||||||
- memcached # will start memcached
|
- memcached # will start memcached
|
||||||
|
|
||||||
# This will tell travis to run phpunit
|
# This will tell travis to run phpunit
|
||||||
language: php
|
language: php
|
||||||
php:
|
php:
|
||||||
|
# - "5.2" is not supported because pyrus to install PHP_Codesniffer is not available
|
||||||
- "5.3"
|
- "5.3"
|
||||||
- "5.4"
|
- "5.4"
|
||||||
|
- "5.5"
|
||||||
|
|
||||||
env:
|
env:
|
||||||
- DB=mysql
|
- DB=mysql
|
||||||
@ -20,7 +27,9 @@ before_script:
|
|||||||
- echo Start travis
|
- echo Start travis
|
||||||
- echo Current dir is `pwd`
|
- echo Current dir is `pwd`
|
||||||
- echo Home dir is `echo ~`
|
- echo Home dir is `echo ~`
|
||||||
- echo Update composer
|
- export PHPV=`phpenv version-name`
|
||||||
|
- echo PHP version $PHPV
|
||||||
|
# - echo Update composer
|
||||||
# - ~/.phpenv/versions/$(phpenv version-name)/bin/composer.phar self-update
|
# - ~/.phpenv/versions/$(phpenv version-name)/bin/composer.phar self-update
|
||||||
- echo Install phpcs then show installed rules
|
- echo Install phpcs then show installed rules
|
||||||
- pyrus install pear/PHP_CodeSniffer
|
- pyrus install pear/PHP_CodeSniffer
|
||||||
@ -35,10 +44,12 @@ before_script:
|
|||||||
- find $(pwd)/htdocs/documents -type d -exec ls -alt {} \;
|
- find $(pwd)/htdocs/documents -type d -exec ls -alt {} \;
|
||||||
- echo Edit php.ini file
|
- echo Edit php.ini file
|
||||||
- echo 'date.timezone = "Europe/Paris"' >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
- echo 'date.timezone = "Europe/Paris"' >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
||||||
- echo "extension = apc.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
|
||||||
# - echo "extension = memcache.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
# - echo "extension = memcache.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
||||||
- echo "extension = memcached.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
- echo "extension = memcached.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
||||||
- echo "zend_extension_ts = xdebug.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
- sh -c "if [ '$PHPV' = '5.3' ]; then echo 'extension = apc.so' >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi"
|
||||||
|
- sh -c "if [ '$PHPV' = '5.4' ]; then echo 'extension = apc.so' >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi"
|
||||||
|
- sh -c "if [ '$PHPV' = '5.3' ]; then echo 'zend_extension_ts = xdebug.so' >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi"
|
||||||
|
- sh -c "if [ '$PHPV' = '5.4' ]; then echo 'zend_extension_ts = xdebug.so' >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi"
|
||||||
- cat ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
- cat ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
|
||||||
- echo Init database
|
- echo Init database
|
||||||
- sh -c "if [ '$DB' = 'pgsql' ]; then psql -c 'DROP DATABASE IF EXISTS myapp_test;' -U postgres; fi"
|
- sh -c "if [ '$DB' = 'pgsql' ]; then psql -c 'DROP DATABASE IF EXISTS myapp_test;' -U postgres; fi"
|
||||||
|
|||||||
36
ChangeLog
36
ChangeLog
@ -41,18 +41,18 @@ For users:
|
|||||||
- New: A more responsive desgin for statistic box of home page.
|
- New: A more responsive desgin for statistic box of home page.
|
||||||
- Qual: Implement same rule for return value of all command line scripts (0 when success, <>0 if error).
|
- Qual: Implement same rule for return value of all command line scripts (0 when success, <>0 if error).
|
||||||
- New: [ task #1005 ] Adapting to Spanish legislation bill numbering
|
- New: [ task #1005 ] Adapting to Spanish legislation bill numbering
|
||||||
- New: [ task #1011 ] Now supplier order and invoice deal with payment terms and mode
|
- New: [ task #1011 ] Now supplier order and invoice deal with payment terms and mode.
|
||||||
- New: [ task #1014 ] Add option to recursivly add parent category
|
- New: [ task #1014 ] Add option to recursivly add parent category.
|
||||||
- New: [ task #1016 ] Can define a specific numbering for deposits
|
- New: [ task #1016 ] Can define a specific numbering for deposits.
|
||||||
- New: [ task #918 ] Stock replenishment
|
- New: [ task #918 ] Stock replenishment.
|
||||||
- Fix: [ bug #992 ] Proforma invoices don't have a separated numeric count
|
- Fix: [ bug #992 ] Proforma invoices don't have a separated numeric count.
|
||||||
- New : Add pdf link into supplier invoice list and supplier order list
|
- New : Add pdf link into supplier invoice list and supplier order list.
|
||||||
- New : Genrate auto the PDF for supplier invoice
|
- New : Genrate auto the PDF for supplier invoice.
|
||||||
- New : Add category into filter webservice thirdparty method getListOfThirdParties
|
- New : Add category into filter webservice thirdparty method getListOfThirdParties.
|
||||||
- New : Allow to define margin or mark rate during quoting, ordering, invoicing
|
- New : Allow to define margin or mark rate during quoting, ordering, invoicing.
|
||||||
- New : User permissions on margin module
|
- New : User permissions on margin module.
|
||||||
- New : Add ref supplier into muscadet model
|
- New : Add ref supplier into muscadet model/
|
||||||
- New : Add ability to copy contact address to clipboard
|
- New : Add ability to copy contact address to clipboard.
|
||||||
- New: Can use tag {mm} before {yy} even when there is a reset into numbering masks.
|
- New: Can use tag {mm} before {yy} even when there is a reset into numbering masks.
|
||||||
- New: [ task #1060 ] Register fields localtax(1|2)_type into details tables.
|
- New: [ task #1060 ] Register fields localtax(1|2)_type into details tables.
|
||||||
- New: [ task #923 ] Localtax support for ODT templates.
|
- New: [ task #923 ] Localtax support for ODT templates.
|
||||||
@ -61,7 +61,10 @@ For users:
|
|||||||
- New: Can send an email from thirdparty card.
|
- New: Can send an email from thirdparty card.
|
||||||
- New: Can cancel holidays that were previously validated.
|
- New: Can cancel holidays that were previously validated.
|
||||||
- Fix: [bug #1022] correct margin calculation for credit notes.
|
- Fix: [bug #1022] correct margin calculation for credit notes.
|
||||||
- New: Can choose contact on event (action com) creation, and filtred by thirdparty
|
- New: Can choose contact on event (action com) creation, and filtred by thirdparty.
|
||||||
|
- New: Add hidden option MAIN_FORCE_DEFAULT_STATE_ID.
|
||||||
|
- New: Add page to make mass stock movement.
|
||||||
|
- New: Add field oustanding limit into thirdparty properties.
|
||||||
|
|
||||||
For translators:
|
For translators:
|
||||||
- Qual: Normalized sort order of all languages files with english reference files.
|
- Qual: Normalized sort order of all languages files with english reference files.
|
||||||
@ -142,6 +145,9 @@ Fix: Delete linked element to supplier invoice when deleted
|
|||||||
Fix: [ bug #1061 ] Bad info shipped products
|
Fix: [ bug #1061 ] Bad info shipped products
|
||||||
Fix: [ bug #1062 ] Documents lost in propals and contracts validating
|
Fix: [ bug #1062 ] Documents lost in propals and contracts validating
|
||||||
Fix: Supplier price displayed on document lines and margin infos didnt take discount
|
Fix: Supplier price displayed on document lines and margin infos didnt take discount
|
||||||
|
Fix: sorting on qty did not work in supplier product list
|
||||||
|
Fix: there was no escaping on filter fields in supplier product list
|
||||||
|
Fix: bugs on margin reports and better margin calculation on credit notes
|
||||||
Qual: Add travis-ci integration
|
Qual: Add travis-ci integration
|
||||||
|
|
||||||
|
|
||||||
@ -243,6 +249,8 @@ backport commit 384e3812eb73a15adafb472cacfb93397a54459b to fix W3C/edit contrac
|
|||||||
|
|
||||||
***** ChangeLog for 3.3.4 compared to 3.3.3 *****
|
***** ChangeLog for 3.3.4 compared to 3.3.3 *****
|
||||||
- Fix: [ bug #1001 ] Social Contribution : State not correct
|
- Fix: [ bug #1001 ] Social Contribution : State not correct
|
||||||
|
- Fix: Better management of pdf generation when tcpdf is not available.
|
||||||
|
- Fix: Change to be more debian compliant natively.
|
||||||
|
|
||||||
***** ChangeLog for 3.3.3 compared to 3.3.2 *****
|
***** ChangeLog for 3.3.3 compared to 3.3.2 *****
|
||||||
- Fix: [ bug #903 ] Fatal error: Call to undefined function dol_get_first_day() in htdocs/commande/liste.php
|
- Fix: [ bug #903 ] Fatal error: Call to undefined function dol_get_first_day() in htdocs/commande/liste.php
|
||||||
@ -308,7 +316,7 @@ For users:
|
|||||||
- New: Can list elements (invoices, orders or proposals) on a particular
|
- New: Can list elements (invoices, orders or proposals) on a particular
|
||||||
user contact). This allow to view a "basket" of its elements.
|
user contact). This allow to view a "basket" of its elements.
|
||||||
- New: Show bank account on payment list of invoice card.
|
- New: Show bank account on payment list of invoice card.
|
||||||
- New: Cloning project allow to clones task, notes, files, contacts.
|
- New: Cloning project allow to clones task, notes, projects files, tasks files, contacts.
|
||||||
- New: Enhance default style.
|
- New: Enhance default style.
|
||||||
- New: Can edit and resiliate member status from list.
|
- New: Can edit and resiliate member status from list.
|
||||||
- New: Can insert URL links into elements lines. Also reported into PDF.
|
- New: Can insert URL links into elements lines. Also reported into PDF.
|
||||||
|
|||||||
@ -207,8 +207,11 @@ Note: If there was errors managed manually, you may need to make a git commit bu
|
|||||||
> sbuild ...
|
> sbuild ...
|
||||||
> dput ...
|
> dput ...
|
||||||
|
|
||||||
* Go into page. You should see new package into unstable.
|
* Package arrives into FTPmaster taskboard with status NEW (pending upload). You can view it at:
|
||||||
http://packages.qa.debian.org/t/tcpdf.html
|
http://ftp-master.debian.org/new/
|
||||||
|
|
||||||
|
* Once package is validated, you should see it into area unstable at:
|
||||||
|
http://packages.qa.debian.org
|
||||||
|
|
||||||
* Package will be into release when test will be moved as stable.
|
* Package will be into release when test will be moved as stable.
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@ -10,7 +10,7 @@
|
|||||||
# ISO-3166 alpha 3: http://en.wikipedia.org/wiki/ISO_3166-1_alpha-3
|
# ISO-3166 alpha 3: http://en.wikipedia.org/wiki/ISO_3166-1_alpha-3
|
||||||
|
|
||||||
AFGHANISTAN;AF
|
AFGHANISTAN;AF
|
||||||
ÅLAND ISLANDS;AX
|
ÅLAND ISLANDS;AX
|
||||||
ALBANIA;AL
|
ALBANIA;AL
|
||||||
ALGERIA;DZ
|
ALGERIA;DZ
|
||||||
AMERICAN SAMOA;AS
|
AMERICAN SAMOA;AS
|
||||||
@ -62,7 +62,7 @@ CONGO;CG
|
|||||||
CONGO, THE DEMOCRATIC REPUBLIC OF THE;CD
|
CONGO, THE DEMOCRATIC REPUBLIC OF THE;CD
|
||||||
COOK ISLANDS;CK
|
COOK ISLANDS;CK
|
||||||
COSTA RICA;CR
|
COSTA RICA;CR
|
||||||
CÔTE D'IVOIRE;CI
|
CÔTE D'IVOIRE;CI
|
||||||
CROATIA;HR
|
CROATIA;HR
|
||||||
CUBA;CU
|
CUBA;CU
|
||||||
CYPRUS;CY
|
CYPRUS;CY
|
||||||
@ -192,7 +192,7 @@ REUNION;RE
|
|||||||
ROMANIA;RO
|
ROMANIA;RO
|
||||||
RUSSIAN FEDERATION;RU
|
RUSSIAN FEDERATION;RU
|
||||||
RWANDA;RW
|
RWANDA;RW
|
||||||
SAINT BARTHÉLEMY;BL
|
SAINT BARTHÉLEMY;BL
|
||||||
SAINT HELENA;SH
|
SAINT HELENA;SH
|
||||||
SAINT KITTS AND NEVIS;KN
|
SAINT KITTS AND NEVIS;KN
|
||||||
SAINT LUCIA;LC
|
SAINT LUCIA;LC
|
||||||
|
|||||||
@ -11,118 +11,118 @@
|
|||||||
|
|
||||||
AFGHANISTAN;AF
|
AFGHANISTAN;AF
|
||||||
AFRIQUE DU SUD;ZA
|
AFRIQUE DU SUD;ZA
|
||||||
ÅLAND, ÎLES;AX
|
ÅLAND, ÎLES;AX
|
||||||
ALBANIE;AL
|
ALBANIE;AL
|
||||||
ALGÉRIE;DZ
|
ALGÉRIE;DZ
|
||||||
ALLEMAGNE;DE
|
ALLEMAGNE;DE
|
||||||
ANDORRE;AD
|
ANDORRE;AD
|
||||||
ANGOLA;AO
|
ANGOLA;AO
|
||||||
ANGUILLA;AI
|
ANGUILLA;AI
|
||||||
ANTARCTIQUE;AQ
|
ANTARCTIQUE;AQ
|
||||||
ANTIGUA-ET-BARBUDA;AG
|
ANTIGUA-ET-BARBUDA;AG
|
||||||
ANTILLES NÉERLANDAISES;AN
|
ANTILLES NÉERLANDAISES;AN
|
||||||
ARABIE SAOUDITE;SA
|
ARABIE SAOUDITE;SA
|
||||||
ARGENTINE;AR
|
ARGENTINE;AR
|
||||||
ARMÉNIE;AM
|
ARMÉNIE;AM
|
||||||
ARUBA;AW
|
ARUBA;AW
|
||||||
AUSTRALIE;AU
|
AUSTRALIE;AU
|
||||||
AUTRICHE;AT
|
AUTRICHE;AT
|
||||||
AZERBAÏDJAN;AZ
|
AZERBAÏDJAN;AZ
|
||||||
BAHAMAS;BS
|
BAHAMAS;BS
|
||||||
BAHREÏN;BH
|
BAHREÏN;BH
|
||||||
BANGLADESH;BD
|
BANGLADESH;BD
|
||||||
BARBADE;BB
|
BARBADE;BB
|
||||||
BÉLARUS;BY
|
BÉLARUS;BY
|
||||||
BELGIQUE;BE
|
BELGIQUE;BE
|
||||||
BELIZE;BZ
|
BELIZE;BZ
|
||||||
BÉNIN;BJ
|
BÉNIN;BJ
|
||||||
BERMUDES;BM
|
BERMUDES;BM
|
||||||
BHOUTAN;BT
|
BHOUTAN;BT
|
||||||
BOLIVIE;BO
|
BOLIVIE;BO
|
||||||
BOSNIE-HERZÉGOVINE;BA
|
BOSNIE-HERZÉGOVINE;BA
|
||||||
BOTSWANA;BW
|
BOTSWANA;BW
|
||||||
BOUVET, ÎLE;BV
|
BOUVET, ÎLE;BV
|
||||||
BRÉSIL;BR
|
BRÉSIL;BR
|
||||||
BRUNÉI DARUSSALAM;BN
|
BRUNÉI DARUSSALAM;BN
|
||||||
BULGARIE;BG
|
BULGARIE;BG
|
||||||
BURKINA FASO;BF
|
BURKINA FASO;BF
|
||||||
BURUNDI;BI
|
BURUNDI;BI
|
||||||
CAÏMANES, ÎLES;KY
|
CAÏMANES, ÎLES;KY
|
||||||
CAMBODGE;KH
|
CAMBODGE;KH
|
||||||
CAMEROUN;CM
|
CAMEROUN;CM
|
||||||
CANADA;CA
|
CANADA;CA
|
||||||
CAP-VERT;CV
|
CAP-VERT;CV
|
||||||
CENTRAFRICAINE, RÉPUBLIQUE;CF
|
CENTRAFRICAINE, RÉPUBLIQUE;CF
|
||||||
CHILI;CL
|
CHILI;CL
|
||||||
CHINE;CN
|
CHINE;CN
|
||||||
CHRISTMAS, ÎLE;CX
|
CHRISTMAS, ÎLE;CX
|
||||||
CHYPRE;CY
|
CHYPRE;CY
|
||||||
COCOS (KEELING), ÎLES;CC
|
COCOS (KEELING), ÎLES;CC
|
||||||
COLOMBIE;CO
|
COLOMBIE;CO
|
||||||
COMORES;KM
|
COMORES;KM
|
||||||
CONGO;CG
|
CONGO;CG
|
||||||
CONGO, LA RÉPUBLIQUE DÉMOCRATIQUE DU;CD
|
CONGO, LA RÉPUBLIQUE DÉMOCRATIQUE DU;CD
|
||||||
COOK, ÎLES;CK
|
COOK, ÎLES;CK
|
||||||
CORÉE, RÉPUBLIQUE DE;KR
|
CORÉE, RÉPUBLIQUE DE;KR
|
||||||
CORÉE, RÉPUBLIQUE POPULAIRE DÉMOCRATIQUE DE;KP
|
CORÉE, RÉPUBLIQUE POPULAIRE DÉMOCRATIQUE DE;KP
|
||||||
COSTA RICA;CR
|
COSTA RICA;CR
|
||||||
CÔTE D'IVOIRE;CI
|
CÔTE D'IVOIRE;CI
|
||||||
CROATIE;HR
|
CROATIE;HR
|
||||||
CUBA;CU
|
CUBA;CU
|
||||||
DANEMARK;DK
|
DANEMARK;DK
|
||||||
DJIBOUTI;DJ
|
DJIBOUTI;DJ
|
||||||
DOMINICAINE, RÉPUBLIQUE;DO
|
DOMINICAINE, RÉPUBLIQUE;DO
|
||||||
DOMINIQUE;DM
|
DOMINIQUE;DM
|
||||||
ÉGYPTE;EG
|
ÉGYPTE;EG
|
||||||
EL SALVADOR;SV
|
EL SALVADOR;SV
|
||||||
ÉMIRATS ARABES UNIS;AE
|
ÉMIRATS ARABES UNIS;AE
|
||||||
ÉQUATEUR;EC
|
ÉQUATEUR;EC
|
||||||
ÉRYTHRÉE;ER
|
ÉRYTHRÉE;ER
|
||||||
ESPAGNE;ES
|
ESPAGNE;ES
|
||||||
ESTONIE;EE
|
ESTONIE;EE
|
||||||
ÉTATS-UNIS;US
|
ÉTATS-UNIS;US
|
||||||
ÉTHIOPIE;ET
|
ÉTHIOPIE;ET
|
||||||
FALKLAND, ÎLES (MALVINAS);FK
|
FALKLAND, ÎLES (MALVINAS);FK
|
||||||
FÉROÉ, ÎLES;FO
|
FÉROÉ, ÎLES;FO
|
||||||
FIDJI;FJ
|
FIDJI;FJ
|
||||||
FINLANDE;FI
|
FINLANDE;FI
|
||||||
FRANCE;FR
|
FRANCE;FR
|
||||||
GABON;GA
|
GABON;GA
|
||||||
GAMBIE;GM
|
GAMBIE;GM
|
||||||
GÉORGIE;GE
|
GÉORGIE;GE
|
||||||
GÉORGIE DU SUD ET LES ÎLES SANDWICH DU SUD;GS
|
GÉORGIE DU SUD ET LES ÎLES SANDWICH DU SUD;GS
|
||||||
GHANA;GH
|
GHANA;GH
|
||||||
GIBRALTAR;GI
|
GIBRALTAR;GI
|
||||||
GRÈCE;GR
|
GRÈCE;GR
|
||||||
GRENADE;GD
|
GRENADE;GD
|
||||||
GROENLAND;GL
|
GROENLAND;GL
|
||||||
GUADELOUPE;GP
|
GUADELOUPE;GP
|
||||||
GUAM;GU
|
GUAM;GU
|
||||||
GUATEMALA;GT
|
GUATEMALA;GT
|
||||||
GUERNESEY;GG
|
GUERNESEY;GG
|
||||||
GUINÉE;GN
|
GUINÉE;GN
|
||||||
GUINÉE-BISSAU;GW
|
GUINÉE-BISSAU;GW
|
||||||
GUINÉE ÉQUATORIALE;GQ
|
GUINÉE ÉQUATORIALE;GQ
|
||||||
GUYANA;GY
|
GUYANA;GY
|
||||||
GUYANE FRANÇAISE;GF
|
GUYANE FRANÇAISE;GF
|
||||||
HAÏTI;HT
|
HAÏTI;HT
|
||||||
HEARD, ÎLE ET MCDONALD, ÎLES;HM
|
HEARD, ÎLE ET MCDONALD, ÎLES;HM
|
||||||
HONDURAS;HN
|
HONDURAS;HN
|
||||||
HONG-KONG;HK
|
HONG-KONG;HK
|
||||||
HONGRIE;HU
|
HONGRIE;HU
|
||||||
ÎLE DE MAN;IM
|
ÎLE DE MAN;IM
|
||||||
ÎLES MINEURES ÉLOIGNÉES DES ÉTATS-UNIS;UM
|
ÎLES MINEURES ÉLOIGNÉES DES ÉTATS-UNIS;UM
|
||||||
ÎLES VIERGES BRITANNIQUES;VG
|
ÎLES VIERGES BRITANNIQUES;VG
|
||||||
ÎLES VIERGES DES ÉTATS-UNIS;VI
|
ÎLES VIERGES DES ÉTATS-UNIS;VI
|
||||||
INDE;IN
|
INDE;IN
|
||||||
INDONÉSIE;ID
|
INDONÉSIE;ID
|
||||||
IRAN, RÉPUBLIQUE ISLAMIQUE D';IR
|
IRAN, RÉPUBLIQUE ISLAMIQUE D';IR
|
||||||
IRAQ;IQ
|
IRAQ;IQ
|
||||||
IRLANDE;IE
|
IRLANDE;IE
|
||||||
ISLANDE;IS
|
ISLANDE;IS
|
||||||
ISRAËL;IL
|
ISRAËL;IL
|
||||||
ITALIE;IT
|
ITALIE;IT
|
||||||
JAMAÏQUE;JM
|
JAMAÏQUE;JM
|
||||||
JAPON;JP
|
JAPON;JP
|
||||||
JERSEY;JE
|
JERSEY;JE
|
||||||
JORDANIE;JO
|
JORDANIE;JO
|
||||||
@ -130,120 +130,120 @@ KAZAKHSTAN;KZ
|
|||||||
KENYA;KE
|
KENYA;KE
|
||||||
KIRGHIZISTAN;KG
|
KIRGHIZISTAN;KG
|
||||||
KIRIBATI;KI
|
KIRIBATI;KI
|
||||||
KOWEÏT;KW
|
KOWEÏT;KW
|
||||||
LAO, RÉPUBLIQUE DÉMOCRATIQUE POPULAIRE;LA
|
LAO, RÉPUBLIQUE DÉMOCRATIQUE POPULAIRE;LA
|
||||||
LESOTHO;LS
|
LESOTHO;LS
|
||||||
LETTONIE;LV
|
LETTONIE;LV
|
||||||
LIBAN;LB
|
LIBAN;LB
|
||||||
LIBÉRIA;LR
|
LIBÉRIA;LR
|
||||||
LIBYENNE, JAMAHIRIYA ARABE;LY
|
LIBYENNE, JAMAHIRIYA ARABE;LY
|
||||||
LIECHTENSTEIN;LI
|
LIECHTENSTEIN;LI
|
||||||
LITUANIE;LT
|
LITUANIE;LT
|
||||||
LUXEMBOURG;LU
|
LUXEMBOURG;LU
|
||||||
MACAO;MO
|
MACAO;MO
|
||||||
MACÉDOINE, L'EX-RÉPUBLIQUE YOUGOSLAVE DE;MK
|
MACÉDOINE, L'EX-RÉPUBLIQUE YOUGOSLAVE DE;MK
|
||||||
MADAGASCAR;MG
|
MADAGASCAR;MG
|
||||||
MALAISIE;MY
|
MALAISIE;MY
|
||||||
MALAWI;MW
|
MALAWI;MW
|
||||||
MALDIVES;MV
|
MALDIVES;MV
|
||||||
MALI;ML
|
MALI;ML
|
||||||
MALTE;MT
|
MALTE;MT
|
||||||
MARIANNES DU NORD, ÎLES;MP
|
MARIANNES DU NORD, ÎLES;MP
|
||||||
MAROC;MA
|
MAROC;MA
|
||||||
MARSHALL, ÎLES;MH
|
MARSHALL, ÎLES;MH
|
||||||
MARTINIQUE;MQ
|
MARTINIQUE;MQ
|
||||||
MAURICE;MU
|
MAURICE;MU
|
||||||
MAURITANIE;MR
|
MAURITANIE;MR
|
||||||
MAYOTTE;YT
|
MAYOTTE;YT
|
||||||
MEXIQUE;MX
|
MEXIQUE;MX
|
||||||
MICRONÉSIE, ÉTATS FÉDÉRÉS DE;FM
|
MICRONÉSIE, ÉTATS FÉDÉRÉS DE;FM
|
||||||
MOLDOVA, RÉPUBLIQUE DE;MD
|
MOLDOVA, RÉPUBLIQUE DE;MD
|
||||||
MONACO;MC
|
MONACO;MC
|
||||||
MONGOLIE;MN
|
MONGOLIE;MN
|
||||||
MONTÉNÉGRO;ME
|
MONTÉNÉGRO;ME
|
||||||
MONTSERRAT;MS
|
MONTSERRAT;MS
|
||||||
MOZAMBIQUE;MZ
|
MOZAMBIQUE;MZ
|
||||||
MYANMAR;MM
|
MYANMAR;MM
|
||||||
NAMIBIE;NA
|
NAMIBIE;NA
|
||||||
NAURU;NR
|
NAURU;NR
|
||||||
NÉPAL;NP
|
NÉPAL;NP
|
||||||
NICARAGUA;NI
|
NICARAGUA;NI
|
||||||
NIGER;NE
|
NIGER;NE
|
||||||
NIGÉRIA;NG
|
NIGÉRIA;NG
|
||||||
NIUÉ;NU
|
NIUÉ;NU
|
||||||
NORFOLK, ÎLE;NF
|
NORFOLK, ÎLE;NF
|
||||||
NORVÈGE;NO
|
NORVÈGE;NO
|
||||||
NOUVELLE-CALÉDONIE;NC
|
NOUVELLE-CALÉDONIE;NC
|
||||||
NOUVELLE-ZÉLANDE;NZ
|
NOUVELLE-ZÉLANDE;NZ
|
||||||
OCÉAN INDIEN, TERRITOIRE BRITANNIQUE DE L';IO
|
OCÉAN INDIEN, TERRITOIRE BRITANNIQUE DE L';IO
|
||||||
OMAN;OM
|
OMAN;OM
|
||||||
OUGANDA;UG
|
OUGANDA;UG
|
||||||
OUZBÉKISTAN;UZ
|
OUZBÉKISTAN;UZ
|
||||||
PAKISTAN;PK
|
PAKISTAN;PK
|
||||||
PALAOS;PW
|
PALAOS;PW
|
||||||
PALESTINIEN OCCUPÉ, TERRITOIRE;PS
|
PALESTINIEN OCCUPÉ, TERRITOIRE;PS
|
||||||
PANAMA;PA
|
PANAMA;PA
|
||||||
PAPOUASIE-NOUVELLE-GUINÉE;PG
|
PAPOUASIE-NOUVELLE-GUINÉE;PG
|
||||||
PARAGUAY;PY
|
PARAGUAY;PY
|
||||||
PAYS-BAS;NL
|
PAYS-BAS;NL
|
||||||
PÉROU;PE
|
PÉROU;PE
|
||||||
PHILIPPINES;PH
|
PHILIPPINES;PH
|
||||||
PITCAIRN;PN
|
PITCAIRN;PN
|
||||||
POLOGNE;PL
|
POLOGNE;PL
|
||||||
POLYNÉSIE FRANÇAISE;PF
|
POLYNÉSIE FRANÇAISE;PF
|
||||||
PORTO RICO;PR
|
PORTO RICO;PR
|
||||||
PORTUGAL;PT
|
PORTUGAL;PT
|
||||||
QATAR;QA
|
QATAR;QA
|
||||||
RÉUNION;RE
|
RÉUNION;RE
|
||||||
ROUMANIE;RO
|
ROUMANIE;RO
|
||||||
ROYAUME-UNI;GB
|
ROYAUME-UNI;GB
|
||||||
RUSSIE, FÉDÉRATION DE;RU
|
RUSSIE, FÉDÉRATION DE;RU
|
||||||
RWANDA;RW
|
RWANDA;RW
|
||||||
SAHARA OCCIDENTAL;EH
|
SAHARA OCCIDENTAL;EH
|
||||||
SAINT-BARTHÉLEMY;BL
|
SAINT-BARTHÉLEMY;BL
|
||||||
SAINTE-HÉLÈNE;SH
|
SAINTE-HÉLÈNE;SH
|
||||||
SAINTE-LUCIE;LC
|
SAINTE-LUCIE;LC
|
||||||
SAINT-KITTS-ET-NEVIS;KN
|
SAINT-KITTS-ET-NEVIS;KN
|
||||||
SAINT-MARIN;SM
|
SAINT-MARIN;SM
|
||||||
SAINT-MARTIN;MF
|
SAINT-MARTIN;MF
|
||||||
SAINT-PIERRE-ET-MIQUELON;PM
|
SAINT-PIERRE-ET-MIQUELON;PM
|
||||||
SAINT-SIÈGE (ÉTAT DE LA CITÉ DU VATICAN);VA
|
SAINT-SIÈGE (ÉTAT DE LA CITÉ DU VATICAN);VA
|
||||||
SAINT-VINCENT-ET-LES GRENADINES;VC
|
SAINT-VINCENT-ET-LES GRENADINES;VC
|
||||||
SALOMON, ÎLES;SB
|
SALOMON, ÎLES;SB
|
||||||
SAMOA;WS
|
SAMOA;WS
|
||||||
SAMOA AMÉRICAINES;AS
|
SAMOA AMÉRICAINES;AS
|
||||||
SAO TOMÉ-ET-PRINCIPE;ST
|
SAO TOMÉ-ET-PRINCIPE;ST
|
||||||
SÉNÉGAL;SN
|
SÉNÉGAL;SN
|
||||||
SERBIE;RS
|
SERBIE;RS
|
||||||
SEYCHELLES;SC
|
SEYCHELLES;SC
|
||||||
SIERRA LEONE;SL
|
SIERRA LEONE;SL
|
||||||
SINGAPOUR;SG
|
SINGAPOUR;SG
|
||||||
SLOVAQUIE;SK
|
SLOVAQUIE;SK
|
||||||
SLOVÉNIE;SI
|
SLOVÉNIE;SI
|
||||||
SOMALIE;SO
|
SOMALIE;SO
|
||||||
SOUDAN;SD
|
SOUDAN;SD
|
||||||
SRI LANKA;LK
|
SRI LANKA;LK
|
||||||
SUÈDE;SE
|
SUÈDE;SE
|
||||||
SUISSE;CH
|
SUISSE;CH
|
||||||
SURINAME;SR
|
SURINAME;SR
|
||||||
SVALBARD ET ÎLE JAN MAYEN;SJ
|
SVALBARD ET ÎLE JAN MAYEN;SJ
|
||||||
SWAZILAND;SZ
|
SWAZILAND;SZ
|
||||||
SYRIENNE, RÉPUBLIQUE ARABE;SY
|
SYRIENNE, RÉPUBLIQUE ARABE;SY
|
||||||
TADJIKISTAN;TJ
|
TADJIKISTAN;TJ
|
||||||
TAÏWAN, PROVINCE DE CHINE;TW
|
TAÏWAN, PROVINCE DE CHINE;TW
|
||||||
TANZANIE, RÉPUBLIQUE-UNIE DE;TZ
|
TANZANIE, RÉPUBLIQUE-UNIE DE;TZ
|
||||||
TCHAD;TD
|
TCHAD;TD
|
||||||
TCHÈQUE, RÉPUBLIQUE;CZ
|
TCHÈQUE, RÉPUBLIQUE;CZ
|
||||||
TERRES AUSTRALES FRANÇAISES;TF
|
TERRES AUSTRALES FRANÇAISES;TF
|
||||||
THAÏLANDE;TH
|
THAÏLANDE;TH
|
||||||
TIMOR-LESTE;TL
|
TIMOR-LESTE;TL
|
||||||
TOGO;TG
|
TOGO;TG
|
||||||
TOKELAU;TK
|
TOKELAU;TK
|
||||||
TONGA;TO
|
TONGA;TO
|
||||||
TRINITÉ-ET-TOBAGO;TT
|
TRINITÉ-ET-TOBAGO;TT
|
||||||
TUNISIE;TN
|
TUNISIE;TN
|
||||||
TURKMÉNISTAN;TM
|
TURKMÉNISTAN;TM
|
||||||
TURKS ET CAÏQUES, ÎLES;TC
|
TURKS ET CAÏQUES, ÎLES;TC
|
||||||
TURQUIE;TR
|
TURQUIE;TR
|
||||||
TUVALU;TV
|
TUVALU;TV
|
||||||
UKRAINE;UA
|
UKRAINE;UA
|
||||||
@ -252,6 +252,6 @@ VANUATU;VU
|
|||||||
VENEZUELA;VE
|
VENEZUELA;VE
|
||||||
VIET NAM;VN
|
VIET NAM;VN
|
||||||
WALLIS ET FUTUNA;WF
|
WALLIS ET FUTUNA;WF
|
||||||
YÉMEN;YE
|
YÉMEN;YE
|
||||||
ZAMBIE;ZM
|
ZAMBIE;ZM
|
||||||
ZIMBABWE;ZW
|
ZIMBABWE;ZW
|
||||||
@ -135,7 +135,7 @@ SKK,Slovak Koruna,2
|
|||||||
SLL,Sierra Leone Leone,2
|
SLL,Sierra Leone Leone,2
|
||||||
SOS,Somali Shilling,2
|
SOS,Somali Shilling,2
|
||||||
SRD,Surinam Dollar,2
|
SRD,Surinam Dollar,2
|
||||||
STD,São Tome and Principe Dobra,2
|
STD,São Tome and Principe Dobra,2
|
||||||
SVC,El Salvador Colon,2
|
SVC,El Salvador Colon,2
|
||||||
SYP,Syrian Pound,2
|
SYP,Syrian Pound,2
|
||||||
SZL,Swaziland Lilangeni,2
|
SZL,Swaziland Lilangeni,2
|
||||||
|
|||||||
1
dev/iso-normes/vat_number_names.txt
Normal file
1
dev/iso-normes/vat_number_names.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
http://en.wikipedia.org/wiki/VAT_identification_number
|
||||||
@ -20,7 +20,7 @@ fi
|
|||||||
|
|
||||||
if [ "x$1" = "xall" ]
|
if [ "x$1" = "xall" ]
|
||||||
then
|
then
|
||||||
for fic in ar_SA bg_BG ca_ES da_DK de_DE el_GR es_ES et_EE fa_IR fi_FI fr_FR hu_HU is_IS it_IT ja_JP nb_NO nl_NL pl_PL pt_PT ro_RO ru_RU ru_UA sl_SI sv_SE tr_TR zh_CN zh_TW
|
for fic in ar_SA bg_BG ca_ES da_DK de_DE el_GR es_ES et_EE fa_IR fi_FI fr_FR he_IL hu_HU is_IS it_IT ja_JP ko_KR nb_NO nl_NL pl_PL pt_PT ro_RO ru_RU ru_UA sl_SI sv_SE tr_TR vi_VN zh_CN zh_TW
|
||||||
do
|
do
|
||||||
echo "tx pull -l $fic $2 $3"
|
echo "tx pull -l $fic $2 $3"
|
||||||
tx pull -l $fic $2 $3
|
tx pull -l $fic $2 $3
|
||||||
|
|||||||
@ -13,14 +13,14 @@ then
|
|||||||
echo "This push local files to transifex."
|
echo "This push local files to transifex."
|
||||||
echo "Note: If you push a language file (not source), file will be skipped if transifex file is newer."
|
echo "Note: If you push a language file (not source), file will be skipped if transifex file is newer."
|
||||||
echo " Using -f will overwrite translation but not memory."
|
echo " Using -f will overwrite translation but not memory."
|
||||||
echo "Usage: txpush.sh (source|all|xx_XX) [-r dolibarr.file] [-f]"
|
echo "Usage: txpush.sh (source|all|xx_XX) [-r dolibarr.file] [-f] [--skip] [--no-interactive]"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ "x$1" = "xall" ]
|
if [ "x$1" = "xall" ]
|
||||||
then
|
then
|
||||||
for fic in ar_SA bg_BG ca_ES da_DK de_DE el_GR es_ES et_EE fa_IR fi_FI fr_FR hu_HU is_IS it_IT ja_JP nb_NO nl_NL pl_PL pt_PT ro_RO ru_RU ru_UA sl_SI sv_SE tr_TR zh_CN zh_TW
|
for fic in ar_SA bg_BG ca_ES da_DK de_DE el_GR es_ES et_EE fa_IR fi_FI fr_FR he_IL hu_HU is_IS it_IT ja_JP ko_KR nb_NO nl_NL pl_PL pt_PT ro_RO ru_RU ru_UA sl_SI sv_SE tr_TR vi_VN zh_CN zh_TW
|
||||||
do
|
do
|
||||||
echo "tx push -t -l $fic $2 $3"
|
echo "tx push -t -l $fic $2 $3"
|
||||||
tx push -t -l $fic $2 $3
|
tx push -t -l $fic $2 $3
|
||||||
|
|||||||
@ -273,6 +273,8 @@ if ($action == 'update' && ! $_POST["cancel"] && $user->rights->adherent->creer)
|
|||||||
$object->pass = trim($_POST["pass"]);
|
$object->pass = trim($_POST["pass"]);
|
||||||
|
|
||||||
$object->societe = trim($_POST["societe"]);
|
$object->societe = trim($_POST["societe"]);
|
||||||
|
$object->company = trim($_POST["societe"]);
|
||||||
|
|
||||||
$object->address = trim($_POST["address"]);
|
$object->address = trim($_POST["address"]);
|
||||||
$object->zip = trim($_POST["zipcode"]);
|
$object->zip = trim($_POST["zipcode"]);
|
||||||
$object->town = trim($_POST["town"]);
|
$object->town = trim($_POST["town"]);
|
||||||
|
|||||||
@ -82,7 +82,7 @@ $pid=GETPOST("projectid","int",3);
|
|||||||
$status=GETPOST("status");
|
$status=GETPOST("status");
|
||||||
$type=GETPOST("type");
|
$type=GETPOST("type");
|
||||||
$maxprint=(isset($_GET["maxprint"])?GETPOST("maxprint"):$conf->global->AGENDA_MAX_EVENTS_DAY_VIEW);
|
$maxprint=(isset($_GET["maxprint"])?GETPOST("maxprint"):$conf->global->AGENDA_MAX_EVENTS_DAY_VIEW);
|
||||||
$actioncode=GETPOST("actioncode","alpha",3)?GETPOST("actioncode","alpha",3):(GETPOST("actioncode")=="0"?'':(empty($conf->global->AGENDA_USE_EVENT_TYPE)?'AC_OTH':''));
|
$actioncode=GETPOST("actioncode","alpha",3)?GETPOST("actioncode","alpha",3):(GETPOST("actioncode")=='0'?'0':(empty($conf->global->AGENDA_USE_EVENT_TYPE)?'AC_OTH':''));
|
||||||
|
|
||||||
if (GETPOST('viewcal') && $action != 'show_day' && $action != 'show_week') {
|
if (GETPOST('viewcal') && $action != 'show_day' && $action != 'show_week') {
|
||||||
$action='show_month'; $day='';
|
$action='show_month'; $day='';
|
||||||
@ -236,7 +236,7 @@ if ($filterd) $param.="&filterd=".$filterd;
|
|||||||
if ($socid) $param.="&socid=".$socid;
|
if ($socid) $param.="&socid=".$socid;
|
||||||
if ($showbirthday) $param.="&showbirthday=1";
|
if ($showbirthday) $param.="&showbirthday=1";
|
||||||
if ($pid) $param.="&projectid=".$pid;
|
if ($pid) $param.="&projectid=".$pid;
|
||||||
if ($actioncode) $param.="&actioncode=".$actioncode;
|
if ($actioncode != '') $param.="&actioncode=".$actioncode;
|
||||||
if ($type) $param.="&type=".$type;
|
if ($type) $param.="&type=".$type;
|
||||||
if ($action == 'show_day' || $action == 'show_week') $param.='&action='.$action;
|
if ($action == 'show_day' || $action == 'show_week') $param.='&action='.$action;
|
||||||
$param.="&maxprint=".$maxprint;
|
$param.="&maxprint=".$maxprint;
|
||||||
@ -382,10 +382,10 @@ if ($resql)
|
|||||||
$event->type_code=$obj->code;
|
$event->type_code=$obj->code;
|
||||||
$event->libelle=$obj->label;
|
$event->libelle=$obj->label;
|
||||||
$event->percentage=$obj->percent;
|
$event->percentage=$obj->percent;
|
||||||
$event->author->id=$obj->fk_user_author;
|
$event->author->id=$obj->fk_user_author; // user id of creator
|
||||||
$event->usertodo->id=$obj->fk_user_action;
|
$event->usertodo->id=$obj->fk_user_action; // user id of owner
|
||||||
$event->userdone->id=$obj->fk_user_done;
|
$event->userdone->id=$obj->fk_user_done; // deprecated
|
||||||
|
// $event->userstodo=... with s after user, in future version, will be an array with all id of user assigned to event
|
||||||
$event->priority=$obj->priority;
|
$event->priority=$obj->priority;
|
||||||
$event->fulldayevent=$obj->fulldayevent;
|
$event->fulldayevent=$obj->fulldayevent;
|
||||||
$event->location=$obj->location;
|
$event->location=$obj->location;
|
||||||
@ -952,11 +952,10 @@ llxFooter();
|
|||||||
function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventarray, $maxprint=0, $maxnbofchar=16, $newparam='', $showinfo=0, $minheight=60)
|
function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventarray, $maxprint=0, $maxnbofchar=16, $newparam='', $showinfo=0, $minheight=60)
|
||||||
{
|
{
|
||||||
global $user, $conf, $langs;
|
global $user, $conf, $langs;
|
||||||
global $filter, $filtera, $filtert, $filterd, $status;
|
global $filter, $filtera, $filtert, $filterd, $status, $actioncode; // Filters used into search form
|
||||||
global $theme_datacolor;
|
global $theme_datacolor;
|
||||||
global $cachethirdparties, $cachecontacts, $colorindexused;
|
global $cachethirdparties, $cachecontacts, $colorindexused;
|
||||||
|
|
||||||
|
|
||||||
print '<div id="dayevent_'.sprintf("%04d",$year).sprintf("%02d",$month).sprintf("%02d",$day).'" class="dayevent">'."\n";
|
print '<div id="dayevent_'.sprintf("%04d",$year).sprintf("%02d",$month).sprintf("%02d",$day).'" class="dayevent">'."\n";
|
||||||
$curtime = dol_mktime(0, 0, 0, $month, $day, $year);
|
$curtime = dol_mktime(0, 0, 0, $month, $day, $year);
|
||||||
print '<table class="nobordernopadding" width="100%">';
|
print '<table class="nobordernopadding" width="100%">';
|
||||||
@ -1009,6 +1008,11 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa
|
|||||||
|| (! empty($event->userdone->id) && $event->userdone->id == $user->id))
|
|| (! empty($event->userdone->id) && $event->userdone->id == $user->id))
|
||||||
{
|
{
|
||||||
$nummytasks++; $cssclass='family_mytasks';
|
$nummytasks++; $cssclass='family_mytasks';
|
||||||
|
// TODO Set a color using user color
|
||||||
|
// Must defined rule to choose color of who to use.
|
||||||
|
// event->usertodo->id will still contains user id of owner
|
||||||
|
// event->userstodo will be an array in future.
|
||||||
|
// $color=$user->color;
|
||||||
}
|
}
|
||||||
else if ($event->type_code == 'ICALEVENT')
|
else if ($event->type_code == 'ICALEVENT')
|
||||||
{
|
{
|
||||||
@ -1179,9 +1183,10 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print '<a href="'.DOL_URL_ROOT.'/comm/action/index.php?maxprint=0&month='.$monthshown.'&year='.$year;
|
print '<a href="'.DOL_URL_ROOT.'/comm/action/index.php?maxprint=0&month='.$monthshown.'&year='.$year;
|
||||||
print ($status?'&status='.$status:'').($filter?'&filter='.$filter:'');
|
print ($status?'&status='.$status:'').($filter?'&filter='.$filter:'');
|
||||||
print ($filtera?'&filtera='.$filtera:'').($filtert?'&filtert='.$filtert:'').($filterd?'&filterd='.$filterd:'');
|
print ($filtera?'&filtera='.$filtera:'').($filtert?'&filtert='.$filtert:'').($filterd?'&filterd='.$filterd:'');
|
||||||
|
print ($actioncode!=''?'&actioncode='.$actioncode:'');
|
||||||
print '">'.img_picto("all","1downarrow_selected.png").' ...';
|
print '">'.img_picto("all","1downarrow_selected.png").' ...';
|
||||||
print ' +'.(count($eventarray[$daykey])-$maxprint);
|
print ' +'.(count($eventarray[$daykey])-$maxprint);
|
||||||
print '</a>';
|
print '</a>';
|
||||||
|
|||||||
@ -114,7 +114,7 @@ if ($action == 'add' || $action == 'update')
|
|||||||
// Update address
|
// Update address
|
||||||
else if ($action == 'update')
|
else if ($action == 'update')
|
||||||
{
|
{
|
||||||
$result = $object->update($_POST["id"], $socid, $user);
|
$result = $object->update($id, $socid, $user);
|
||||||
|
|
||||||
if ($result >= 0)
|
if ($result >= 0)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -128,6 +128,14 @@ if ($action == 'cstc')
|
|||||||
if ($result < 0) setEventMessage($object->error,'errors');
|
if ($result < 0) setEventMessage($object->error,'errors');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Update communication level
|
||||||
|
if ($action == 'setOutstandingBill')
|
||||||
|
{
|
||||||
|
$object->fetch($id);
|
||||||
|
$object->outstanding_limit=GETPOST('OutstandingBill');
|
||||||
|
$result=$object->set_OutstandingBill($user);
|
||||||
|
if ($result < 0) setEventMessage($object->error,'errors');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -369,6 +377,18 @@ if ($id > 0)
|
|||||||
print '</td>';
|
print '</td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
|
|
||||||
|
if ($object->client)
|
||||||
|
{
|
||||||
|
print '<tr>';
|
||||||
|
print '<td>';
|
||||||
|
print $form->editfieldkey("OutstandingBill",'OutstandingBill',$object->outstanding_limit,$object,$user->rights->societe->creer);
|
||||||
|
print '</td><td colspan="3">';
|
||||||
|
print $form->editfieldval("OutstandingBill",'OutstandingBill',$object->outstanding_limit,$object,$user->rights->societe->creer);
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Multiprice level
|
// Multiprice level
|
||||||
if (! empty($conf->global->PRODUIT_MULTIPRICES))
|
if (! empty($conf->global->PRODUIT_MULTIPRICES))
|
||||||
{
|
{
|
||||||
@ -898,4 +918,4 @@ dol_htmloutput_mesg('',$mesgs);
|
|||||||
// End of page
|
// End of page
|
||||||
llxFooter();
|
llxFooter();
|
||||||
$db->close();
|
$db->close();
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -1885,6 +1885,18 @@ else
|
|||||||
print '</tr>';
|
print '</tr>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($soc->outstanding_limit)
|
||||||
|
{
|
||||||
|
// Outstanding Bill
|
||||||
|
print '<tr><td>';
|
||||||
|
print $langs->trans('OutstandingBill');
|
||||||
|
print '</td><td align=right colspan=3>';
|
||||||
|
print price($soc->get_OutstandingBill()).' / ';
|
||||||
|
print price($soc->outstanding_limit, 0, '', 1, -1, -1, $conf->currency);
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
}
|
||||||
|
|
||||||
// Other attributes
|
// Other attributes
|
||||||
$res=$object->fetch_optionals($object->id,$extralabels);
|
$res=$object->fetch_optionals($object->id,$extralabels);
|
||||||
$parameters=array('colspan' => ' colspan="3"');
|
$parameters=array('colspan' => ' colspan="3"');
|
||||||
|
|||||||
@ -233,7 +233,7 @@ if ($result)
|
|||||||
if ($month) $param.='&month='.$month;
|
if ($month) $param.='&month='.$month;
|
||||||
if ($year) $param.='&year='.$year;
|
if ($year) $param.='&year='.$year;
|
||||||
if ($search_ref) $param.='&search_ref=' .$search_ref;
|
if ($search_ref) $param.='&search_ref=' .$search_ref;
|
||||||
if ($search_refcustomer) $param.='&search_ref=' .$search_refcustomer;
|
if ($search_refcustomer) $param.='&search_refcustomer=' .$search_refcustomer;
|
||||||
if ($search_societe) $param.='&search_societe=' .$search_societe;
|
if ($search_societe) $param.='&search_societe=' .$search_societe;
|
||||||
if ($search_user > 0) $param.='&search_user='.$search_user;
|
if ($search_user > 0) $param.='&search_user='.$search_user;
|
||||||
if ($search_sale > 0) $param.='&search_sale='.$search_sale;
|
if ($search_sale > 0) $param.='&search_sale='.$search_sale;
|
||||||
@ -274,9 +274,9 @@ if ($result)
|
|||||||
|
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print_liste_field_titre($langs->trans('Ref'),$_SERVER["PHP_SELF"],'p.ref','',$param,'',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('Ref'),$_SERVER["PHP_SELF"],'p.ref','',$param,'',$sortfield,$sortorder);
|
||||||
|
print_liste_field_titre($langs->trans('RefCustomer'),$_SERVER["PHP_SELF"],'p.ref_client','',$param,'',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('Company'),$_SERVER["PHP_SELF"],'s.nom','',$param,'',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('Company'),$_SERVER["PHP_SELF"],'s.nom','',$param,'',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('Town'),$_SERVER["PHP_SELF"],'s.town','',$param,'',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('Town'),$_SERVER["PHP_SELF"],'s.town','',$param,'',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('RefCustomer'),$_SERVER["PHP_SELF"],'p.ref_client','',$param,'',$sortfield,$sortorder);
|
|
||||||
print_liste_field_titre($langs->trans('Date'),$_SERVER["PHP_SELF"],'p.datep','',$param, 'align="center"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('Date'),$_SERVER["PHP_SELF"],'p.datep','',$param, 'align="center"',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('DateEndPropalShort'),$_SERVER["PHP_SELF"],'dfv','',$param, 'align="center"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('DateEndPropalShort'),$_SERVER["PHP_SELF"],'dfv','',$param, 'align="center"',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('AmountHT'),$_SERVER["PHP_SELF"],'p.total_ht','',$param, 'align="right"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('AmountHT'),$_SERVER["PHP_SELF"],'p.total_ht','',$param, 'align="right"',$sortfield,$sortorder);
|
||||||
@ -287,15 +287,15 @@ if ($result)
|
|||||||
|
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td class="liste_titre">';
|
print '<td class="liste_titre">';
|
||||||
print '<input class="flat" size="10" type="text" name="search_ref" value="'.$search_ref.'">';
|
print '<input class="flat" size="6" type="text" name="search_ref" value="'.$search_ref.'">';
|
||||||
|
print '</td>';
|
||||||
|
print '<td class="liste_titre">';
|
||||||
|
print '<input class="flat" size="6" type="text" name="search_refcustomer" value="'.$search_refcustomer.'">';
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '<td class="liste_titre" align="left">';
|
print '<td class="liste_titre" align="left">';
|
||||||
print '<input class="flat" type="text" size="16" name="search_societe" value="'.$search_societe.'">';
|
print '<input class="flat" type="text" size="16" name="search_societe" value="'.$search_societe.'">';
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '<td class="liste_titre"><input class="flat" type="text" size="16" name="search_town" value="'.$search_town.'"></td>';
|
print '<td class="liste_titre"><input class="flat" type="text" size="16" name="search_town" value="'.$search_town.'"></td>';
|
||||||
print '<td class="liste_titre">';
|
|
||||||
print '<input class="flat" size="10" type="text" name="search_refcustomer" value="'.$search_refcustomer.'">';
|
|
||||||
print '</td>';
|
|
||||||
print '<td class="liste_titre" colspan="1" align="center">';
|
print '<td class="liste_titre" colspan="1" align="center">';
|
||||||
print $langs->trans('Month').': <input class="flat" type="text" size="1" maxlength="2" name="month" value="'.$month.'">';
|
print $langs->trans('Month').': <input class="flat" type="text" size="1" maxlength="2" name="month" value="'.$month.'">';
|
||||||
print ' '.$langs->trans('Year').': ';
|
print ' '.$langs->trans('Year').': ';
|
||||||
@ -347,6 +347,7 @@ if ($result)
|
|||||||
}
|
}
|
||||||
print '</td>';
|
print '</td>';
|
||||||
|
|
||||||
|
// Ref
|
||||||
print '<td width="16" align="right" class="nobordernopadding hideonsmartphone">';
|
print '<td width="16" align="right" class="nobordernopadding hideonsmartphone">';
|
||||||
$filename=dol_sanitizeFileName($objp->ref);
|
$filename=dol_sanitizeFileName($objp->ref);
|
||||||
$filedir=$conf->propal->dir_output . '/' . dol_sanitizeFileName($objp->ref);
|
$filedir=$conf->propal->dir_output . '/' . dol_sanitizeFileName($objp->ref);
|
||||||
@ -354,6 +355,13 @@ if ($result)
|
|||||||
print $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir);
|
print $formfile->getDocumentsLink($objectstatic->element, $filename, $filedir);
|
||||||
print '</td></tr></table>';
|
print '</td></tr></table>';
|
||||||
|
|
||||||
|
print "</td>\n";
|
||||||
|
|
||||||
|
// Customer ref
|
||||||
|
print '<td class="nocellnopadd nowrap">';
|
||||||
|
print $objp->ref_client;
|
||||||
|
print '</td>';
|
||||||
|
|
||||||
$url = DOL_URL_ROOT.'/comm/fiche.php?socid='.$objp->rowid;
|
$url = DOL_URL_ROOT.'/comm/fiche.php?socid='.$objp->rowid;
|
||||||
|
|
||||||
// Company
|
// Company
|
||||||
@ -369,11 +377,6 @@ if ($result)
|
|||||||
print $objp->town;
|
print $objp->town;
|
||||||
print '</td>';
|
print '</td>';
|
||||||
|
|
||||||
// Customer ref
|
|
||||||
print '<td class="nocellnopadd nowrap">';
|
|
||||||
print $objp->ref_client;
|
|
||||||
print '</td>';
|
|
||||||
|
|
||||||
// Date proposal
|
// Date proposal
|
||||||
print '<td align="center">';
|
print '<td align="center">';
|
||||||
$y = dol_print_date($db->jdate($objp->dp),'%Y');
|
$y = dol_print_date($db->jdate($objp->dp),'%Y');
|
||||||
|
|||||||
@ -2195,6 +2195,19 @@ else
|
|||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if ($soc->outstanding_limit)
|
||||||
|
{
|
||||||
|
// Outstanding Bill
|
||||||
|
print '<tr><td>';
|
||||||
|
print $langs->trans('OutstandingBill');
|
||||||
|
print '</td><td align=right colspan=3>';
|
||||||
|
print price($soc->get_OutstandingBill()).' / ';
|
||||||
|
print price($soc->outstanding_limit, 0, '', 1, -1, -1, $conf->currency);
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
}
|
||||||
|
|
||||||
// Other attributes
|
// Other attributes
|
||||||
$res=$object->fetch_optionals($object->id,$extralabels);
|
$res=$object->fetch_optionals($object->id,$extralabels);
|
||||||
$parameters=array('colspan' => ' colspan="3"');
|
$parameters=array('colspan' => ' colspan="3"');
|
||||||
|
|||||||
@ -280,8 +280,8 @@ if ($resql)
|
|||||||
|
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print_liste_field_titre($langs->trans('Ref'),$_SERVER["PHP_SELF"],'c.ref','',$param,'width="25%"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('Ref'),$_SERVER["PHP_SELF"],'c.ref','',$param,'width="25%"',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('Company'),$_SERVER["PHP_SELF"],'s.nom','',$param,'',$sortfield,$sortorder);
|
|
||||||
print_liste_field_titre($langs->trans('RefCustomerOrder'),$_SERVER["PHP_SELF"],'c.ref_client','',$param,'',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('RefCustomerOrder'),$_SERVER["PHP_SELF"],'c.ref_client','',$param,'',$sortfield,$sortorder);
|
||||||
|
print_liste_field_titre($langs->trans('Company'),$_SERVER["PHP_SELF"],'s.nom','',$param,'',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('OrderDate'),$_SERVER["PHP_SELF"],'c.date_commande','',$param, 'align="right"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('OrderDate'),$_SERVER["PHP_SELF"],'c.date_commande','',$param, 'align="right"',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('DeliveryDate'),$_SERVER["PHP_SELF"],'c.date_livraison','',$param, 'align="right"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('DeliveryDate'),$_SERVER["PHP_SELF"],'c.date_livraison','',$param, 'align="right"',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans('AmountHT'),$_SERVER["PHP_SELF"],'c.total_ht','',$param, 'align="right"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('AmountHT'),$_SERVER["PHP_SELF"],'c.total_ht','',$param, 'align="right"',$sortfield,$sortorder);
|
||||||
@ -289,12 +289,15 @@ if ($resql)
|
|||||||
print '</tr>';
|
print '</tr>';
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td class="liste_titre">';
|
print '<td class="liste_titre">';
|
||||||
print '<input class="flat" size="10" type="text" name="sref" value="'.$sref.'">';
|
print '<input class="flat" size="6" type="text" name="sref" value="'.$sref.'">';
|
||||||
print '</td><td class="liste_titre" align="left">';
|
print '</td>';
|
||||||
|
print '<td class="liste_titre" align="left">';
|
||||||
|
print '<input class="flat" type="text" size="6" name="sref_client" value="'.$sref_client.'">';
|
||||||
|
print '</td>';
|
||||||
|
print '<td class="liste_titre" align="left">';
|
||||||
print '<input class="flat" type="text" name="snom" value="'.$snom.'">';
|
print '<input class="flat" type="text" name="snom" value="'.$snom.'">';
|
||||||
print '</td><td class="liste_titre" align="left">';
|
print '</td>';
|
||||||
print '<input class="flat" type="text" size="10" name="sref_client" value="'.$sref_client.'">';
|
print '<td class="liste_titre"> ';
|
||||||
print '</td><td class="liste_titre"> ';
|
|
||||||
print '</td><td class="liste_titre"> ';
|
print '</td><td class="liste_titre"> ';
|
||||||
print '</td><td class="liste_titre"> ';
|
print '</td><td class="liste_titre"> ';
|
||||||
print '</td><td align="right" class="liste_titre">';
|
print '</td><td align="right" class="liste_titre">';
|
||||||
@ -341,6 +344,9 @@ if ($resql)
|
|||||||
|
|
||||||
print '</td>';
|
print '</td>';
|
||||||
|
|
||||||
|
// Ref customer
|
||||||
|
print '<td>'.$objp->ref_client.'</td>';
|
||||||
|
|
||||||
// Company
|
// Company
|
||||||
$companystatic->id=$objp->socid;
|
$companystatic->id=$objp->socid;
|
||||||
$companystatic->nom=$objp->nom;
|
$companystatic->nom=$objp->nom;
|
||||||
@ -362,8 +368,6 @@ if ($resql)
|
|||||||
}
|
}
|
||||||
print '</td>';
|
print '</td>';
|
||||||
|
|
||||||
print '<td>'.$objp->ref_client.'</td>';
|
|
||||||
|
|
||||||
// Order date
|
// Order date
|
||||||
$y = dol_print_date($db->jdate($objp->date_commande),'%Y');
|
$y = dol_print_date($db->jdate($objp->date_commande),'%Y');
|
||||||
$m = dol_print_date($db->jdate($objp->date_commande),'%m');
|
$m = dol_print_date($db->jdate($objp->date_commande),'%m');
|
||||||
|
|||||||
@ -1436,18 +1436,21 @@ class AccountLine extends CommonObject
|
|||||||
if ($withpicto) $result.=($lien.img_object($langs->trans("ShowTransaction"),'account').$lienfin.' ');
|
if ($withpicto) $result.=($lien.img_object($langs->trans("ShowTransaction"),'account').$lienfin.' ');
|
||||||
$result.=$lien.$this->rowid.$lienfin;
|
$result.=$lien.$this->rowid.$lienfin;
|
||||||
|
|
||||||
|
if ($option == 'showall' || $option == 'showconciliated') $result.=' (';
|
||||||
if ($option == 'showall')
|
if ($option == 'showall')
|
||||||
{
|
{
|
||||||
$result.=' (';
|
|
||||||
$result.=$langs->trans("BankAccount").': ';
|
$result.=$langs->trans("BankAccount").': ';
|
||||||
$accountstatic=new Account($this->db);
|
$accountstatic=new Account($this->db);
|
||||||
$accountstatic->id=$this->fk_account;
|
$accountstatic->id=$this->fk_account;
|
||||||
$accountstatic->label=$this->bank_account_label;
|
$accountstatic->label=$this->bank_account_label;
|
||||||
$result.=$accountstatic->getNomUrl(0).', ';
|
$result.=$accountstatic->getNomUrl(0).', ';
|
||||||
|
}
|
||||||
|
if ($option == 'showall' || $option == 'showconciliated')
|
||||||
|
{
|
||||||
$result.=$langs->trans("BankLineConciliated").': ';
|
$result.=$langs->trans("BankLineConciliated").': ';
|
||||||
$result.=yn($this->rappro);
|
$result.=yn($this->rappro);
|
||||||
$result.=')';
|
|
||||||
}
|
}
|
||||||
|
if ($option == 'showall' || $option == 'showconciliated') $result.=')';
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -42,7 +42,7 @@ $debit=GETPOST("debit");
|
|||||||
$credit=GETPOST("credit");
|
$credit=GETPOST("credit");
|
||||||
$type=GETPOST("type");
|
$type=GETPOST("type");
|
||||||
$account=GETPOST("account");
|
$account=GETPOST("account");
|
||||||
$bid=GETPOST("bid");
|
$bid=GETPOST("bid","int");
|
||||||
|
|
||||||
$param='';
|
$param='';
|
||||||
if ($description) $param.='&description='.$description;
|
if ($description) $param.='&description='.$description;
|
||||||
@ -83,7 +83,7 @@ $sql.= " b.fk_account, b.fk_type,";
|
|||||||
$sql.= " ba.rowid as bankid, ba.ref as bankref,";
|
$sql.= " ba.rowid as bankid, ba.ref as bankref,";
|
||||||
$sql.= " bu.label as labelurl, bu.url_id";
|
$sql.= " bu.label as labelurl, bu.url_id";
|
||||||
$sql.= " FROM ";
|
$sql.= " FROM ";
|
||||||
if (! empty($_REQUEST["bid"])) $sql.= MAIN_DB_PREFIX."bank_class as l,";
|
if ($bid) $sql.= MAIN_DB_PREFIX."bank_class as l,";
|
||||||
$sql.= " ".MAIN_DB_PREFIX."bank_account as ba,";
|
$sql.= " ".MAIN_DB_PREFIX."bank_account as ba,";
|
||||||
$sql.= " ".MAIN_DB_PREFIX."bank as b";
|
$sql.= " ".MAIN_DB_PREFIX."bank as b";
|
||||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."bank_url as bu ON bu.fk_bank = b.rowid AND type = 'company'";
|
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."bank_url as bu ON bu.fk_bank = b.rowid AND type = 'company'";
|
||||||
@ -92,21 +92,21 @@ $sql.= " WHERE b.fk_account = ba.rowid";
|
|||||||
$sql.= " AND ba.entity = ".$conf->entity;
|
$sql.= " AND ba.entity = ".$conf->entity;
|
||||||
if (GETPOST("req_nb"))
|
if (GETPOST("req_nb"))
|
||||||
{
|
{
|
||||||
$sql.= " AND b.num_chq like '%".$db->escape(GETPOST("req_nb"))."%'";
|
$sql.= " AND b.num_chq LIKE '%".$db->escape(GETPOST("req_nb"))."%'";
|
||||||
$param.='&req_nb='.urlencode(GETPOST("req_nb"));
|
$param.='&req_nb='.urlencode(GETPOST("req_nb"));
|
||||||
}
|
}
|
||||||
if (GETPOST("thirdparty"))
|
if (GETPOST("thirdparty"))
|
||||||
{
|
{
|
||||||
$sql.=" AND (COALESCE(s.nom,'') LIKE '%".$db->escape(GETPOST("thirdparty"))."%')";
|
$sql.=" AND s.nom LIKE '%".$db->escape(GETPOST("thirdparty"))."%'";
|
||||||
$param.='&thirdparty='.urlencode(GETPOST("thirdparty"));
|
$param.='&thirdparty='.urlencode(GETPOST("thirdparty"));
|
||||||
}
|
}
|
||||||
if (! empty($_REQUEST["bid"]))
|
if ($bid)
|
||||||
{
|
{
|
||||||
$sql.= " AND b.rowid=l.lineid AND l.fk_categ=".$_REQUEST["bid"];
|
$sql.= " AND b.rowid=l.lineid AND l.fk_categ=".$bid;
|
||||||
}
|
}
|
||||||
if(! empty($type))
|
if (! empty($type))
|
||||||
{
|
{
|
||||||
$sql .= " AND b.fk_type = '" . $type ."' ";
|
$sql.= " AND b.fk_type = '".$db->escape($type)."' ";
|
||||||
}
|
}
|
||||||
// Search criteria amount
|
// Search criteria amount
|
||||||
$si=0;
|
$si=0;
|
||||||
|
|||||||
@ -2318,6 +2318,18 @@ if ($action == 'create')
|
|||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($soc->outstanding_limit)
|
||||||
|
{
|
||||||
|
// Outstanding Bill
|
||||||
|
print '<tr><td>';
|
||||||
|
print $langs->trans('OutstandingBill');
|
||||||
|
print '</td><td align=right>';
|
||||||
|
print price($soc->get_OutstandingBill()).' / ';
|
||||||
|
print price($soc->outstanding_limit).'</td><td colspan=2>';
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
}
|
||||||
|
|
||||||
// Other attributes
|
// Other attributes
|
||||||
$parameters=array('objectsrc' => $objectsrc, 'colspan' => ' colspan="3"');
|
$parameters=array('objectsrc' => $objectsrc, 'colspan' => ' colspan="3"');
|
||||||
$reshook=$hookmanager->executeHooks('formObjectOptions',$parameters,$object,$action); // Note that $action and $object may have been modified by hook
|
$reshook=$hookmanager->executeHooks('formObjectOptions',$parameters,$object,$action); // Note that $action and $object may have been modified by hook
|
||||||
@ -3034,6 +3046,7 @@ else if ($id > 0 || ! empty($ref))
|
|||||||
$nbrows=8; $nbcols=2;
|
$nbrows=8; $nbcols=2;
|
||||||
if (! empty($conf->projet->enabled)) $nbrows++;
|
if (! empty($conf->projet->enabled)) $nbrows++;
|
||||||
if (! empty($conf->banque->enabled)) $nbcols++;
|
if (! empty($conf->banque->enabled)) $nbcols++;
|
||||||
|
if (! empty($soc->outstandingbill)) $nbrows++;
|
||||||
if($mysoc->localtax1_assuj=="1") $nbrows++;
|
if($mysoc->localtax1_assuj=="1") $nbrows++;
|
||||||
if($mysoc->localtax2_assuj=="1") $nbrows++;
|
if($mysoc->localtax2_assuj=="1") $nbrows++;
|
||||||
if ($selleruserevenustamp) $nbrows++;
|
if ($selleruserevenustamp) $nbrows++;
|
||||||
@ -3305,6 +3318,18 @@ else if ($id > 0 || ! empty($ref))
|
|||||||
}
|
}
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
|
if ($soc->outstandingbill)
|
||||||
|
{
|
||||||
|
// Outstanding Bill
|
||||||
|
print '<tr><td>';
|
||||||
|
print $langs->trans('OutstandingBill');
|
||||||
|
print '</td><td align=right>';
|
||||||
|
print price($soc->get_OutstandingBill()).' / ';
|
||||||
|
print price($soc->outstandingbill);
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
}
|
||||||
|
|
||||||
// Amount
|
// Amount
|
||||||
print '<tr><td>'.$langs->trans('AmountHT').'</td>';
|
print '<tr><td>'.$langs->trans('AmountHT').'</td>';
|
||||||
print '<td align="right" colspan="3" nowrap>'.price($object->total_ht,1,'',1,-1,-1,$conf->currency).'</td></tr>';
|
print '<td align="right" colspan="3" nowrap>'.price($object->total_ht,1,'',1,-1,-1,$conf->currency).'</td></tr>';
|
||||||
@ -3955,4 +3980,4 @@ dol_htmloutput_mesg('',$mesgs);
|
|||||||
|
|
||||||
llxFooter();
|
llxFooter();
|
||||||
$db->close();
|
$db->close();
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -1788,8 +1788,8 @@ class Facture extends CommonInvoice
|
|||||||
// Rename directory if dir was a temporary ref
|
// Rename directory if dir was a temporary ref
|
||||||
if (preg_match('/^[\(]?PROV/i', $this->ref))
|
if (preg_match('/^[\(]?PROV/i', $this->ref))
|
||||||
{
|
{
|
||||||
// On renomme repertoire facture ($this->ref = ancienne ref, $num = nouvelle ref)
|
// Rename of object directory ($this->ref = old ref, $num = new ref)
|
||||||
// afin de ne pas perdre les fichiers attaches
|
// to not lose the linked files
|
||||||
$facref = dol_sanitizeFileName($this->ref);
|
$facref = dol_sanitizeFileName($this->ref);
|
||||||
$snumfa = dol_sanitizeFileName($num);
|
$snumfa = dol_sanitizeFileName($num);
|
||||||
$dirsource = $conf->facture->dir_output.'/'.$facref;
|
$dirsource = $conf->facture->dir_output.'/'.$facref;
|
||||||
@ -1977,7 +1977,7 @@ class Facture extends CommonInvoice
|
|||||||
function addline($desc, $pu_ht, $qty, $txtva, $txlocaltax1=0, $txlocaltax2=0, $fk_product=0, $remise_percent=0, $date_start='', $date_end='', $ventil=0, $info_bits=0, $fk_remise_except='', $price_base_type='HT', $pu_ttc=0, $type=0, $rang=-1, $special_code=0, $origin='', $origin_id=0, $fk_parent_line=0, $fk_fournprice=null, $pa_ht=0, $label='',$array_option=0)
|
function addline($desc, $pu_ht, $qty, $txtva, $txlocaltax1=0, $txlocaltax2=0, $fk_product=0, $remise_percent=0, $date_start='', $date_end='', $ventil=0, $info_bits=0, $fk_remise_except='', $price_base_type='HT', $pu_ttc=0, $type=0, $rang=-1, $special_code=0, $origin='', $origin_id=0, $fk_parent_line=0, $fk_fournprice=null, $pa_ht=0, $label='',$array_option=0)
|
||||||
{
|
{
|
||||||
global $mysoc;
|
global $mysoc;
|
||||||
|
|
||||||
$facid=$this->id;
|
$facid=$this->id;
|
||||||
|
|
||||||
dol_syslog(get_class($this)."::Addline facid=$facid,desc=$desc,pu_ht=$pu_ht,qty=$qty,txtva=$txtva, txlocaltax1=$txlocaltax1, txlocaltax2=$txlocaltax2, fk_product=$fk_product,remise_percent=$remise_percent,date_start=$date_start,date_end=$date_end,ventil=$ventil,info_bits=$info_bits,fk_remise_except=$fk_remise_except,price_base_type=$price_base_type,pu_ttc=$pu_ttc,type=$type", LOG_DEBUG);
|
dol_syslog(get_class($this)."::Addline facid=$facid,desc=$desc,pu_ht=$pu_ht,qty=$qty,txtva=$txtva, txlocaltax1=$txlocaltax1, txlocaltax2=$txlocaltax2, fk_product=$fk_product,remise_percent=$remise_percent,date_start=$date_start,date_end=$date_end,ventil=$ventil,info_bits=$info_bits,fk_remise_except=$fk_remise_except,price_base_type=$price_base_type,pu_ttc=$pu_ttc,type=$type", LOG_DEBUG);
|
||||||
@ -2023,9 +2023,9 @@ class Facture extends CommonInvoice
|
|||||||
// qty, pu, remise_percent et txtva
|
// qty, pu, remise_percent et txtva
|
||||||
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
||||||
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
||||||
|
|
||||||
$localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc);
|
$localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc);
|
||||||
|
|
||||||
$tabprice = calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type,'',$localtaxes_type);
|
$tabprice = calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type,'',$localtaxes_type);
|
||||||
$total_ht = $tabprice[0];
|
$total_ht = $tabprice[0];
|
||||||
$total_tva = $tabprice[1];
|
$total_tva = $tabprice[1];
|
||||||
@ -2148,7 +2148,7 @@ class Facture extends CommonInvoice
|
|||||||
function updateline($rowid, $desc, $pu, $qty, $remise_percent, $date_start, $date_end, $txtva, $txlocaltax1=0, $txlocaltax2=0, $price_base_type='HT', $info_bits=0, $type=0, $fk_parent_line=0, $skip_update_total=0, $fk_fournprice=null, $pa_ht=0, $label='', $special_code=0, $array_option=0)
|
function updateline($rowid, $desc, $pu, $qty, $remise_percent, $date_start, $date_end, $txtva, $txlocaltax1=0, $txlocaltax2=0, $price_base_type='HT', $info_bits=0, $type=0, $fk_parent_line=0, $skip_update_total=0, $fk_fournprice=null, $pa_ht=0, $label='', $special_code=0, $array_option=0)
|
||||||
{
|
{
|
||||||
include_once DOL_DOCUMENT_ROOT.'/core/lib/price.lib.php';
|
include_once DOL_DOCUMENT_ROOT.'/core/lib/price.lib.php';
|
||||||
|
|
||||||
global $mysoc;
|
global $mysoc;
|
||||||
|
|
||||||
dol_syslog(get_class($this)."::updateline $rowid, $desc, $pu, $qty, $remise_percent, $date_start, $date_end, $txtva, $txlocaltax1, $txlocaltax2, $price_base_type, $info_bits, $type, $fk_parent_line", LOG_DEBUG);
|
dol_syslog(get_class($this)."::updateline $rowid, $desc, $pu, $qty, $remise_percent, $date_start, $date_end, $txtva, $txlocaltax1, $txlocaltax2, $price_base_type, $info_bits, $type, $fk_parent_line", LOG_DEBUG);
|
||||||
@ -2176,9 +2176,9 @@ class Facture extends CommonInvoice
|
|||||||
// Calculate total with, without tax and tax from qty, pu, remise_percent and txtva
|
// Calculate total with, without tax and tax from qty, pu, remise_percent and txtva
|
||||||
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
||||||
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
||||||
|
|
||||||
$localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc);
|
$localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc);
|
||||||
|
|
||||||
$tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type,'',$localtaxes_type);
|
$tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type,'',$localtaxes_type);
|
||||||
$total_ht = $tabprice[0];
|
$total_ht = $tabprice[0];
|
||||||
$total_tva = $tabprice[1];
|
$total_tva = $tabprice[1];
|
||||||
|
|||||||
@ -62,6 +62,7 @@ $confirm=GETPOST('confirm','alpha');
|
|||||||
$lineid=GETPOST('lineid','int');
|
$lineid=GETPOST('lineid','int');
|
||||||
$userid=GETPOST('userid','int');
|
$userid=GETPOST('userid','int');
|
||||||
$search_ref=GETPOST('sf_ref')?GETPOST('sf_ref','alpha'):GETPOST('search_ref','alpha');
|
$search_ref=GETPOST('sf_ref')?GETPOST('sf_ref','alpha'):GETPOST('search_ref','alpha');
|
||||||
|
$search_refcustomer=GETPOST('search_refcustomer','alpha');
|
||||||
$search_societe=GETPOST('search_societe','alpha');
|
$search_societe=GETPOST('search_societe','alpha');
|
||||||
$search_montant_ht=GETPOST('search_montant_ht','alpha');
|
$search_montant_ht=GETPOST('search_montant_ht','alpha');
|
||||||
$search_montant_ttc=GETPOST('search_montant_ttc','alpha');
|
$search_montant_ttc=GETPOST('search_montant_ttc','alpha');
|
||||||
@ -139,7 +140,7 @@ $facturestatic=new Facture($db);
|
|||||||
|
|
||||||
if (! $sall) $sql = 'SELECT';
|
if (! $sall) $sql = 'SELECT';
|
||||||
else $sql = 'SELECT DISTINCT';
|
else $sql = 'SELECT DISTINCT';
|
||||||
$sql.= ' f.rowid as facid, f.facnumber, f.type, f.note_private, f.increment, f.total as total_ht, f.tva as total_tva, f.total_ttc,';
|
$sql.= ' f.rowid as facid, f.facnumber, f.ref_client, f.type, f.note_private, f.increment, f.total as total_ht, f.tva as total_tva, f.total_ttc,';
|
||||||
$sql.= ' f.datef as df, f.date_lim_reglement as datelimite,';
|
$sql.= ' f.datef as df, f.date_lim_reglement as datelimite,';
|
||||||
$sql.= ' f.paye as paye, f.fk_statut,';
|
$sql.= ' f.paye as paye, f.fk_statut,';
|
||||||
$sql.= ' s.nom, s.rowid as socid';
|
$sql.= ' s.nom, s.rowid as socid';
|
||||||
@ -177,6 +178,10 @@ if ($search_ref)
|
|||||||
{
|
{
|
||||||
$sql .= natural_search('f.facnumber', $search_ref);
|
$sql .= natural_search('f.facnumber', $search_ref);
|
||||||
}
|
}
|
||||||
|
if ($search_refcustomer)
|
||||||
|
{
|
||||||
|
$sql .= natural_search('f.ref_client', $search_refcustomer);
|
||||||
|
}
|
||||||
if ($search_societe)
|
if ($search_societe)
|
||||||
{
|
{
|
||||||
$sql .= natural_search('s.nom', $search_societe);
|
$sql .= natural_search('s.nom', $search_societe);
|
||||||
@ -244,6 +249,7 @@ if ($resql)
|
|||||||
if ($month) $param.='&month='.$month;
|
if ($month) $param.='&month='.$month;
|
||||||
if ($year) $param.='&year=' .$year;
|
if ($year) $param.='&year=' .$year;
|
||||||
if ($search_ref) $param.='&search_ref=' .$search_ref;
|
if ($search_ref) $param.='&search_ref=' .$search_ref;
|
||||||
|
if ($search_refcustomer) $param.='&search_refcustomer=' .$search_refcustomer;
|
||||||
if ($search_societe) $param.='&search_societe=' .$search_societe;
|
if ($search_societe) $param.='&search_societe=' .$search_societe;
|
||||||
if ($search_sale > 0) $param.='&search_sale=' .$search_sale;
|
if ($search_sale > 0) $param.='&search_sale=' .$search_sale;
|
||||||
if ($search_user > 0) $param.='&search_user=' .$search_user;
|
if ($search_user > 0) $param.='&search_user=' .$search_user;
|
||||||
@ -273,13 +279,14 @@ if ($resql)
|
|||||||
if ($moreforfilter)
|
if ($moreforfilter)
|
||||||
{
|
{
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td class="liste_titre" colspan="9">';
|
print '<td class="liste_titre" colspan="10">';
|
||||||
print $moreforfilter;
|
print $moreforfilter;
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
}
|
}
|
||||||
|
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print_liste_field_titre($langs->trans('Ref'),$_SERVER['PHP_SELF'],'f.facnumber','',$param,'',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans('Ref'),$_SERVER['PHP_SELF'],'f.facnumber','',$param,'',$sortfield,$sortorder);
|
||||||
|
print_liste_field_titre($langs->trans('RefCustomer'),$_SERVER["PHP_SELF"],'f.ref_client','',$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('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("DateDue"),$_SERVER['PHP_SELF'],"f.date_lim_reglement",'',$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('Company'),$_SERVER['PHP_SELF'],'s.nom','',$param,'',$sortfield,$sortorder);
|
||||||
@ -294,8 +301,11 @@ if ($resql)
|
|||||||
// Filters lines
|
// Filters lines
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td class="liste_titre" align="left">';
|
print '<td class="liste_titre" align="left">';
|
||||||
print '<input class="flat" size="10" type="text" name="search_ref" value="'.$search_ref.'">';
|
print '<input class="flat" size="6" type="text" name="search_ref" value="'.$search_ref.'">';
|
||||||
print '</td>';
|
print '</td>';
|
||||||
|
print '<td class="liste_titre">';
|
||||||
|
print '<input class="flat" size="6" type="text" name="search_refcustomer" value="'.$search_refcustomer.'">';
|
||||||
|
print '</td>';
|
||||||
print '<td class="liste_titre" align="center">';
|
print '<td class="liste_titre" align="center">';
|
||||||
if (! empty($conf->global->MAIN_LIST_FILTER_ON_DAY)) print '<input class="flat" type="text" size="1" maxlength="2" name="day" value="'.$day.'">';
|
if (! empty($conf->global->MAIN_LIST_FILTER_ON_DAY)) print '<input class="flat" type="text" size="1" maxlength="2" name="day" value="'.$day.'">';
|
||||||
print '<input class="flat" type="text" size="1" maxlength="2" name="month" value="'.$month.'">';
|
print '<input class="flat" type="text" size="1" maxlength="2" name="month" value="'.$month.'">';
|
||||||
@ -358,13 +368,18 @@ if ($resql)
|
|||||||
|
|
||||||
print "</td>\n";
|
print "</td>\n";
|
||||||
|
|
||||||
// Date
|
// Customer ref
|
||||||
print '<td align="center" nowrap>';
|
print '<td class="nowrap">';
|
||||||
|
print $objp->ref_client;
|
||||||
|
print '</td>';
|
||||||
|
|
||||||
|
// Date
|
||||||
|
print '<td align="center" class="nowrap">';
|
||||||
print dol_print_date($db->jdate($objp->df),'day');
|
print dol_print_date($db->jdate($objp->df),'day');
|
||||||
print '</td>';
|
print '</td>';
|
||||||
|
|
||||||
// Date limit
|
// Date limit
|
||||||
print '<td align="center" nowrap="1">'.dol_print_date($datelimit,'day');
|
print '<td align="center" class="nowrap">'.dol_print_date($datelimit,'day');
|
||||||
if ($datelimit < ($now - $conf->facture->client->warning_delay) && ! $objp->paye && $objp->fk_statut == 1 && ! $paiement)
|
if ($datelimit < ($now - $conf->facture->client->warning_delay) && ! $objp->paye && $objp->fk_statut == 1 && ! $paiement)
|
||||||
{
|
{
|
||||||
print img_warning($langs->trans('Late'));
|
print img_warning($langs->trans('Late'));
|
||||||
@ -403,7 +418,7 @@ if ($resql)
|
|||||||
{
|
{
|
||||||
// Print total
|
// Print total
|
||||||
print '<tr class="liste_total">';
|
print '<tr class="liste_total">';
|
||||||
print '<td class="liste_total" colspan="4" align="left">'.$langs->trans('Total').'</td>';
|
print '<td class="liste_total" colspan="5" align="left">'.$langs->trans('Total').'</td>';
|
||||||
print '<td class="liste_total" align="right">'.price($total_ht,0,$langs).'</td>';
|
print '<td class="liste_total" align="right">'.price($total_ht,0,$langs).'</td>';
|
||||||
print '<td class="liste_total" align="right">'.price($total_tva,0,$langs).'</td>';
|
print '<td class="liste_total" align="right">'.price($total_tva,0,$langs).'</td>';
|
||||||
print '<td class="liste_total" align="right">'.price($total_ttc,0,$langs).'</td>';
|
print '<td class="liste_total" align="right">'.price($total_ttc,0,$langs).'</td>';
|
||||||
|
|||||||
@ -57,6 +57,14 @@ if ($user->societe_id > 0)
|
|||||||
$socid = $user->societe_id;
|
$socid = $user->societe_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$object=new Facture($db);
|
||||||
|
|
||||||
|
// Load object
|
||||||
|
if ($facid > 0)
|
||||||
|
{
|
||||||
|
$ret=$object->fetch($facid);
|
||||||
|
}
|
||||||
|
|
||||||
// Initialize technical object to manage hooks of paiements. Note that conf->hooks_modules contains array array
|
// Initialize technical object to manage hooks of paiements. Note that conf->hooks_modules contains array array
|
||||||
$hookmanager = new HookManager($db);
|
$hookmanager = new HookManager($db);
|
||||||
$hookmanager->initHooks(array('paiementcard'));
|
$hookmanager->initHooks(array('paiementcard'));
|
||||||
|
|||||||
@ -193,7 +193,7 @@ dol_fiche_head($head, $hselected, $langs->trans("PaymentCustomerInvoice"), 0, 'p
|
|||||||
if ($action == 'delete')
|
if ($action == 'delete')
|
||||||
{
|
{
|
||||||
print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete','',0,2);
|
print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete','',0,2);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -203,7 +203,7 @@ if ($action == 'valide')
|
|||||||
{
|
{
|
||||||
$facid = $_GET['facid'];
|
$facid = $_GET['facid'];
|
||||||
print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id.'&facid='.$facid, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide','',0,2);
|
print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id.'&facid='.$facid, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide','',0,2);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -230,7 +230,7 @@ print $form->editfieldval("Numero",'num_paiement',$object->numero,$object,$objec
|
|||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
// Amount
|
// Amount
|
||||||
print '<tr><td valign="top">'.$langs->trans('Amount').'</td><td colspan="3">'.price($object->montant).' '.$langs->trans('Currency'.$conf->currency).'</td></tr>';
|
print '<tr><td valign="top">'.$langs->trans('Amount').'</td><td colspan="3">'.price($object->montant,'',$langs,0,0,-1,$conf->currency).'</td></tr>';
|
||||||
|
|
||||||
// Note
|
// Note
|
||||||
print '<tr><td valign="top">'.$form->editfieldkey("Note",'note',$object->note,$object,$user->rights->facture->paiement).'</td><td colspan="3">';
|
print '<tr><td valign="top">'.$form->editfieldkey("Note",'note',$object->note,$object,$user->rights->facture->paiement).'</td><td colspan="3">';
|
||||||
@ -248,15 +248,25 @@ if (! empty($conf->banque->enabled))
|
|||||||
print '<tr>';
|
print '<tr>';
|
||||||
print '<td>'.$langs->trans('BankTransactionLine').'</td>';
|
print '<td>'.$langs->trans('BankTransactionLine').'</td>';
|
||||||
print '<td colspan="3">';
|
print '<td colspan="3">';
|
||||||
print $bankline->getNomUrl(1,0,'showall');
|
print $bankline->getNomUrl(1,0,'showconciliated');
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
|
|
||||||
|
print '<tr>';
|
||||||
|
print '<td>'.$langs->trans('BankAccount').'</td>';
|
||||||
|
print '<td colspan="3">';
|
||||||
|
$accountstatic=new Account($db);
|
||||||
|
$accountstatic->id=$bankline->fk_account;
|
||||||
|
$accountstatic->label=$bankline->bank_account_ref.' - '.$bankline->bank_account_label;
|
||||||
|
print $accountstatic->getNomUrl(0);
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
|
||||||
if($object->type_code == 'CHQ' && $bankline->fk_bordereau > 0) {
|
if($object->type_code == 'CHQ' && $bankline->fk_bordereau > 0) {
|
||||||
dol_include_once('/compta/paiement/cheque/class/remisecheque.class.php');
|
dol_include_once('/compta/paiement/cheque/class/remisecheque.class.php');
|
||||||
$bordereau = new RemiseCheque($db);
|
$bordereau = new RemiseCheque($db);
|
||||||
$bordereau->fetch($bankline->fk_bordereau);
|
$bordereau->fetch($bankline->fk_bordereau);
|
||||||
|
|
||||||
print '<tr>';
|
print '<tr>';
|
||||||
print '<td>'.$langs->trans('CheckReceipt').'</td>';
|
print '<td>'.$langs->trans('CheckReceipt').'</td>';
|
||||||
print '<td colspan="3">';
|
print '<td colspan="3">';
|
||||||
|
|||||||
@ -55,7 +55,7 @@ if ($action == 'builddoc')
|
|||||||
$rap = new pdf_paiement($db);
|
$rap = new pdf_paiement($db);
|
||||||
|
|
||||||
$outputlangs = $langs;
|
$outputlangs = $langs;
|
||||||
if (! empty(GETPOST('lang_id')))
|
if (GETPOST('lang_id'))
|
||||||
{
|
{
|
||||||
$outputlangs = new Translate("",$conf);
|
$outputlangs = new Translate("",$conf);
|
||||||
$outputlangs->setDefaultLang(GETPOST('lang_id'));
|
$outputlangs->setDefaultLang(GETPOST('lang_id'));
|
||||||
|
|||||||
@ -116,7 +116,8 @@ $total_ttc=0;
|
|||||||
if ($modecompta=="CREANCES-DETTES")
|
if ($modecompta=="CREANCES-DETTES")
|
||||||
{
|
{
|
||||||
$nom=$langs->trans("AnnualByCompaniesDueDebtMode");
|
$nom=$langs->trans("AnnualByCompaniesDueDebtMode");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.(GETPOST("month")>0?'&month='.GETPOST("month"):'').'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeDebt");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.(GETPOST("month")>0?'&month='.GETPOST("month"):'').'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
//$periodlink='<a href="'.$_SERVER["PHP_SELF"].'?year='.($year-1).'&modecompta='.$modecompta.'">'.img_previous().'</a> <a href="'.$_SERVER["PHP_SELF"].'?year='.($year+1).'&modecompta='.$modecompta.'">'.img_next().'</a>';
|
//$periodlink='<a href="'.$_SERVER["PHP_SELF"].'?year='.($year-1).'&modecompta='.$modecompta.'">'.img_previous().'</a> <a href="'.$_SERVER["PHP_SELF"].'?year='.($year+1).'&modecompta='.$modecompta.'">'.img_next().'</a>';
|
||||||
$description=$langs->trans("RulesResultDue");
|
$description=$langs->trans("RulesResultDue");
|
||||||
@ -127,7 +128,8 @@ if ($modecompta=="CREANCES-DETTES")
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$nom=$langs->trans("AnnualByCompaniesInputOutputMode");
|
$nom=$langs->trans("AnnualByCompaniesInputOutputMode");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.(GETPOST("month")>0?'&month='.GETPOST("month"):'').'&modecompta=CREANCES-DETTES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeEngagement");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.(GETPOST("month")>0?'&month='.GETPOST("month"):'').'&modecompta=CREANCES-DETTES">','</a>').')';
|
||||||
//$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',1,1,0,'',1,0,1);
|
//$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',1,1,0,'',1,0,1);
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
//$periodlink='<a href="'.$_SERVER["PHP_SELF"].'?year='.($year-1).'&modecompta='.$modecompta.'">'.img_previous().'</a> <a href="'.$_SERVER["PHP_SELF"].'?year='.($year+1).'&modecompta='.$modecompta.'">'.img_next().'</a>';
|
//$periodlink='<a href="'.$_SERVER["PHP_SELF"].'?year='.($year-1).'&modecompta='.$modecompta.'">'.img_previous().'</a> <a href="'.$_SERVER["PHP_SELF"].'?year='.($year+1).'&modecompta='.$modecompta.'">'.img_next().'</a>';
|
||||||
@ -135,7 +137,7 @@ else {
|
|||||||
$builddate=time();
|
$builddate=time();
|
||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
}
|
}
|
||||||
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,array('modecompta'=>$modecompta));
|
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,array('modecompta'=>$modecompta),$calcmode);
|
||||||
|
|
||||||
// Show report array
|
// Show report array
|
||||||
print '<table class="noborder" width="100%">';
|
print '<table class="noborder" width="100%">';
|
||||||
|
|||||||
@ -63,7 +63,8 @@ $exportlink='';
|
|||||||
if ($modecompta == 'CREANCES-DETTES')
|
if ($modecompta == 'CREANCES-DETTES')
|
||||||
{
|
{
|
||||||
$nom=$langs->trans("AnnualSummaryDueDebtMode");
|
$nom=$langs->trans("AnnualSummaryDueDebtMode");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year_start='.$year_start.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeDebt");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year_start='.$year_start.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
||||||
$period="$year_start - $year_end";
|
$period="$year_start - $year_end";
|
||||||
$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start+1)."&modecompta=".$modecompta."'>".img_next()."</a>":"");
|
$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start+1)."&modecompta=".$modecompta."'>".img_next()."</a>":"");
|
||||||
$description=$langs->trans("RulesAmountWithTaxIncluded");
|
$description=$langs->trans("RulesAmountWithTaxIncluded");
|
||||||
@ -75,7 +76,8 @@ if ($modecompta == 'CREANCES-DETTES')
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$nom=$langs->trans("AnnualSummaryInputOutputMode");
|
$nom=$langs->trans("AnnualSummaryInputOutputMode");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year_start='.$year_start.'&modecompta=CREANCES-DETTES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeEngagement");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year_start='.$year_start.'&modecompta=CREANCES-DETTES">','</a>').')';
|
||||||
$period="$year_start - $year_end";
|
$period="$year_start - $year_end";
|
||||||
$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start+1)."&modecompta=".$modecompta."'>".img_next()."</a>":"");
|
$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start+1)."&modecompta=".$modecompta."'>".img_next()."</a>":"");
|
||||||
$description=$langs->trans("RulesAmountWithTaxIncluded");
|
$description=$langs->trans("RulesAmountWithTaxIncluded");
|
||||||
@ -83,7 +85,7 @@ else {
|
|||||||
$builddate=time();
|
$builddate=time();
|
||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
}
|
}
|
||||||
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,array('modecompta'=>$modecompta));
|
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,array('modecompta'=>$modecompta),$calcmode);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@ -142,7 +142,8 @@ $formother = new FormOther($db);
|
|||||||
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByProductsAndServices");
|
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByProductsAndServices");
|
||||||
|
|
||||||
if ($modecompta=="CREANCES-DETTES") {
|
if ($modecompta=="CREANCES-DETTES") {
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeDebt");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
||||||
|
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
|
|
||||||
@ -155,7 +156,8 @@ if ($modecompta=="CREANCES-DETTES") {
|
|||||||
|
|
||||||
$builddate=time();
|
$builddate=time();
|
||||||
} else {
|
} else {
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=CREANCES-DETTES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeEngagement");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=CREANCES-DETTES">','</a>').')';
|
||||||
|
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
|
|
||||||
@ -165,7 +167,7 @@ if ($modecompta=="CREANCES-DETTES") {
|
|||||||
$builddate=time();
|
$builddate=time();
|
||||||
}
|
}
|
||||||
|
|
||||||
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,$tableparams);
|
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,$tableparams,$calcmode);
|
||||||
|
|
||||||
|
|
||||||
// SQL request
|
// SQL request
|
||||||
@ -382,8 +384,7 @@ if ($modecompta == 'CREANCES-DETTES') {
|
|||||||
print '</form>';
|
print '</form>';
|
||||||
} else {
|
} else {
|
||||||
// $modecompta != 'CREANCES-DETTES'
|
// $modecompta != 'CREANCES-DETTES'
|
||||||
// TODO: better message
|
print '<br>'.$langs->trans("TurnoverPerProductInCommitmentAccountingNotRelevant") . '<br>';
|
||||||
print '<div class="warning">' . $langs->trans("WarningNotRelevant") . '</div>';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
llxFooter();
|
llxFooter();
|
||||||
|
|||||||
@ -137,7 +137,8 @@ $form=new Form($db);
|
|||||||
// Show report header
|
// Show report header
|
||||||
if ($modecompta=="CREANCES-DETTES") {
|
if ($modecompta=="CREANCES-DETTES") {
|
||||||
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByUserAuthorOfInvoice");
|
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByUserAuthorOfInvoice");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeDebt");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
//$periodlink="<a href='".$_SERVER["PHP_SELF"]."?year=".($year-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year=".($year+1)."&modecompta=".$modecompta."'>".img_next()."</a>";
|
//$periodlink="<a href='".$_SERVER["PHP_SELF"]."?year=".($year-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year=".($year+1)."&modecompta=".$modecompta."'>".img_next()."</a>";
|
||||||
$description=$langs->trans("RulesCADue");
|
$description=$langs->trans("RulesCADue");
|
||||||
@ -147,7 +148,8 @@ if ($modecompta=="CREANCES-DETTES") {
|
|||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
} else {
|
} else {
|
||||||
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByUserAuthorOfInvoice");
|
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByUserAuthorOfInvoice");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=CREANCES-DETTES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeEngagement");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=CREANCES-DETTES">','</a>').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
//$periodlink="<a href='".$_SERVER["PHP_SELF"]."?year=".($year-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year=".($year+1)."&modecompta=".$modecompta."'>".img_next()."</a>";
|
//$periodlink="<a href='".$_SERVER["PHP_SELF"]."?year=".($year-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year=".($year+1)."&modecompta=".$modecompta."'>".img_next()."</a>";
|
||||||
$description=$langs->trans("RulesCAIn");
|
$description=$langs->trans("RulesCAIn");
|
||||||
@ -158,7 +160,7 @@ if ($modecompta=="CREANCES-DETTES") {
|
|||||||
$moreparam=array();
|
$moreparam=array();
|
||||||
if (! empty($modecompta)) $moreparam['modecompta']=$modecompta;
|
if (! empty($modecompta)) $moreparam['modecompta']=$modecompta;
|
||||||
|
|
||||||
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,$moreparam);
|
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,$moreparam,$calcmode);
|
||||||
|
|
||||||
|
|
||||||
// Show array
|
// Show array
|
||||||
|
|||||||
@ -151,7 +151,8 @@ $formother = new FormOther($db);
|
|||||||
if ($modecompta=="CREANCES-DETTES")
|
if ($modecompta=="CREANCES-DETTES")
|
||||||
{
|
{
|
||||||
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByThirdParties");
|
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByThirdParties");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeDebt");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
//$periodlink='<a href="'.$_SERVER["PHP_SELF"].'?year='.($year-1).'&modecompta='.$modecompta.'">'.img_previous().'</a> <a href="'.$_SERVER["PHP_SELF"].'?year='.($year+1).'&modecompta='.$modecompta.'">'.img_next().'</a>';
|
//$periodlink='<a href="'.$_SERVER["PHP_SELF"].'?year='.($year-1).'&modecompta='.$modecompta.'">'.img_previous().'</a> <a href="'.$_SERVER["PHP_SELF"].'?year='.($year+1).'&modecompta='.$modecompta.'">'.img_next().'</a>';
|
||||||
$description=$langs->trans("RulesCADue");
|
$description=$langs->trans("RulesCADue");
|
||||||
@ -161,7 +162,8 @@ if ($modecompta=="CREANCES-DETTES")
|
|||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
} else {
|
} else {
|
||||||
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByThirdParties");
|
$nom=$langs->trans("SalesTurnover").', '.$langs->trans("ByThirdParties");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=CREANCES-DETTES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeEngagement");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year.'&modecompta=CREANCES-DETTES">','</a>').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
//$periodlink='<a href="'.$_SERVER["PHP_SELF"].'?year='.($year-1).'&modecompta='.$modecompta.'">'.img_previous().'</a> <a href="'.$_SERVER["PHP_SELF"].'?year='.($year+1).'&modecompta='.$modecompta.'">'.img_next().'</a>';
|
//$periodlink='<a href="'.$_SERVER["PHP_SELF"].'?year='.($year-1).'&modecompta='.$modecompta.'">'.img_previous().'</a> <a href="'.$_SERVER["PHP_SELF"].'?year='.($year+1).'&modecompta='.$modecompta.'">'.img_next().'</a>';
|
||||||
$description=$langs->trans("RulesCAIn");
|
$description=$langs->trans("RulesCAIn");
|
||||||
@ -170,7 +172,7 @@ if ($modecompta=="CREANCES-DETTES")
|
|||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
}
|
}
|
||||||
|
|
||||||
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,$tableparams);
|
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,$tableparams,$calcmode);
|
||||||
|
|
||||||
|
|
||||||
// Show Array
|
// Show Array
|
||||||
@ -227,7 +229,7 @@ $sql.= " AND f.entity = ".$conf->entity;
|
|||||||
if ($socid) $sql.= " AND f.fk_soc = ".$socid;
|
if ($socid) $sql.= " AND f.fk_soc = ".$socid;
|
||||||
$sql.= " GROUP BY s.rowid, s.nom";
|
$sql.= " GROUP BY s.rowid, s.nom";
|
||||||
$sql.= " ORDER BY s.rowid";
|
$sql.= " ORDER BY s.rowid";
|
||||||
echo $sql;
|
//echo $sql;
|
||||||
|
|
||||||
$result = $db->query($sql);
|
$result = $db->query($sql);
|
||||||
if ($result) {
|
if ($result) {
|
||||||
|
|||||||
@ -60,7 +60,8 @@ $form=new Form($db);
|
|||||||
if ($modecompta=="CREANCES-DETTES")
|
if ($modecompta=="CREANCES-DETTES")
|
||||||
{
|
{
|
||||||
$nom=$langs->trans("SalesTurnover");
|
$nom=$langs->trans("SalesTurnover");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year_start='.$year_start.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeDebt");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year_start='.$year_start.'&modecompta=RECETTES-DEPENSES">','</a>').')';
|
||||||
$period="$year_start - $year_end";
|
$period="$year_start - $year_end";
|
||||||
$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start+1)."&modecompta=".$modecompta."'>".img_next()."</a>":"");
|
$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start+1)."&modecompta=".$modecompta."'>".img_next()."</a>":"");
|
||||||
$description=$langs->trans("RulesCADue");
|
$description=$langs->trans("RulesCADue");
|
||||||
@ -71,7 +72,8 @@ if ($modecompta=="CREANCES-DETTES")
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$nom=$langs->trans("SalesTurnover");
|
$nom=$langs->trans("SalesTurnover");
|
||||||
$nom.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year_start='.$year_start.'&modecompta=CREANCES-DETTES">','</a>').')';
|
$calcmode=$langs->trans("CalcModeEngagement");
|
||||||
|
$calcmode.='<br>('.$langs->trans("SeeReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year_start='.$year_start.'&modecompta=CREANCES-DETTES">','</a>').')';
|
||||||
$period="$year_start - $year_end";
|
$period="$year_start - $year_end";
|
||||||
$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start+1)."&modecompta=".$modecompta."'>".img_next()."</a>":"");
|
$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start-1)."&modecompta=".$modecompta."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year_start=".($year_start+1)."&modecompta=".$modecompta."'>".img_next()."</a>":"");
|
||||||
$description=$langs->trans("RulesCAIn");
|
$description=$langs->trans("RulesCAIn");
|
||||||
@ -81,7 +83,7 @@ else {
|
|||||||
}
|
}
|
||||||
$moreparam=array();
|
$moreparam=array();
|
||||||
if (! empty($modecompta)) $moreparam['modecompta']=$modecompta;
|
if (! empty($modecompta)) $moreparam['modecompta']=$modecompta;
|
||||||
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,$moreparam);
|
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,$moreparam,$calcmode);
|
||||||
|
|
||||||
|
|
||||||
if ($modecompta == 'CREANCES-DETTES')
|
if ($modecompta == 'CREANCES-DETTES')
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2001-2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
/* Copyright (C) 2001-2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||||
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
|
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
|
||||||
* Copyright (C) 2004-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2006 Yannick Warnier <ywarnier@beeznest.org>
|
* Copyright (C) 2006 Yannick Warnier <ywarnier@beeznest.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
@ -110,6 +110,8 @@ $fsearch.=' <input type="text" name="min" id="min" value="'.$min.'" size="6">';
|
|||||||
if ($modetax==1) // Calculate on invoice for goods and services
|
if ($modetax==1) // Calculate on invoice for goods and services
|
||||||
{
|
{
|
||||||
$nom=$langs->trans("VATReportByCustomersInDueDebtMode");
|
$nom=$langs->trans("VATReportByCustomersInDueDebtMode");
|
||||||
|
$calcmode=$langs->trans("CalcModeVATDebt");
|
||||||
|
$calcmode.='<br>('.$langs->trans("TaxModuleSetupToModifyRules",DOL_URL_ROOT.'/admin/taxes.php').')';
|
||||||
//$nom.='<br>('.$langs->trans("SeeVATReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year_start.'&modetax=0">','</a>').')';
|
//$nom.='<br>('.$langs->trans("SeeVATReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year_start.'&modetax=0">','</a>').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
//$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year=".($year_start-1)."&modetax=".$modetax."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year=".($year_start+1)."&modetax=".$modetax."'>".img_next()."</a>":"");
|
//$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year=".($year_start-1)."&modetax=".$modetax."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year=".($year_start+1)."&modetax=".$modetax."'>".img_next()."</a>":"");
|
||||||
@ -121,7 +123,6 @@ if ($modetax==1) // Calculate on invoice for goods and services
|
|||||||
if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description.='<br>'.$langs->trans("DepositsAreNotIncluded");
|
if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description.='<br>'.$langs->trans("DepositsAreNotIncluded");
|
||||||
else $description.='<br>'.$langs->trans("DepositsAreIncluded");
|
else $description.='<br>'.$langs->trans("DepositsAreIncluded");
|
||||||
$description.=$fsearch;
|
$description.=$fsearch;
|
||||||
$description.='<br>('.$langs->trans("TaxModuleSetupToModifyRules",DOL_URL_ROOT.'/admin/taxes.php').')';
|
|
||||||
$builddate=time();
|
$builddate=time();
|
||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
|
|
||||||
@ -137,6 +138,8 @@ if ($modetax==1) // Calculate on invoice for goods and services
|
|||||||
if ($modetax==0) // Invoice for goods, payment for services
|
if ($modetax==0) // Invoice for goods, payment for services
|
||||||
{
|
{
|
||||||
$nom=$langs->trans("VATReportByCustomersInInputOutputMode");
|
$nom=$langs->trans("VATReportByCustomersInInputOutputMode");
|
||||||
|
$calcmode=$langs->trans("CalcModeVATEngagement");
|
||||||
|
$calcmode.='<br>('.$langs->trans("TaxModuleSetupToModifyRules",DOL_URL_ROOT.'/admin/taxes.php').')';
|
||||||
//$nom.='<br>('.$langs->trans("SeeVATReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year_start.'&modetax=1">','</a>').')';
|
//$nom.='<br>('.$langs->trans("SeeVATReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year_start.'&modetax=1">','</a>').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
//$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year=".($year_start-1)."&modetax=".$modetax."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year=".($year_start+1)."&modetax=".$modetax."'>".img_next()."</a>":"");
|
//$periodlink=($year_start?"<a href='".$_SERVER["PHP_SELF"]."?year=".($year_start-1)."&modetax=".$modetax."'>".img_previous()."</a> <a href='".$_SERVER["PHP_SELF"]."?year=".($year_start+1)."&modetax=".$modetax."'>".img_next()."</a>":"");
|
||||||
@ -149,7 +152,6 @@ if ($modetax==0) // Invoice for goods, payment for services
|
|||||||
//if ($conf->global->MAIN_MODULE_COMPTABILITE || $conf->global->MAIN_MODULE_ACCOUNTING) $description.='<br>'.img_warning().' '.$langs->trans('OptionVatInfoModuleComptabilite');
|
//if ($conf->global->MAIN_MODULE_COMPTABILITE || $conf->global->MAIN_MODULE_ACCOUNTING) $description.='<br>'.img_warning().' '.$langs->trans('OptionVatInfoModuleComptabilite');
|
||||||
//if (! empty($conf->global->MAIN_MODULE_COMPTABILITE)) $description.='<br>'.$langs->trans("WarningDepositsNotIncluded");
|
//if (! empty($conf->global->MAIN_MODULE_COMPTABILITE)) $description.='<br>'.$langs->trans("WarningDepositsNotIncluded");
|
||||||
$description.=$fsearch;
|
$description.=$fsearch;
|
||||||
$description.='<br>('.$langs->trans("TaxModuleSetupToModifyRules",DOL_URL_ROOT.'/admin/taxes.php').')';
|
|
||||||
$builddate=time();
|
$builddate=time();
|
||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
|
|
||||||
@ -162,7 +164,7 @@ if ($modetax==0) // Invoice for goods, payment for services
|
|||||||
$amountsup=$langs->trans("AmountHT");
|
$amountsup=$langs->trans("AmountHT");
|
||||||
if ($mysoc->tva_assuj) $vatsup.=' ('.$langs->trans("ToGetBack").')';
|
if ($mysoc->tva_assuj) $vatsup.=' ('.$langs->trans("ToGetBack").')';
|
||||||
}
|
}
|
||||||
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink);
|
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,array(),$calcmode);
|
||||||
|
|
||||||
$vatcust=$langs->trans("VATReceived");
|
$vatcust=$langs->trans("VATReceived");
|
||||||
$vatsup=$langs->trans("VATPaid");
|
$vatsup=$langs->trans("VATPaid");
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2001-2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
/* Copyright (C) 2001-2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||||
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
|
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
|
||||||
* Copyright (C) 2004-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2004-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2006-2007 Yannick Warnier <ywarnier@beeznest.org>
|
* Copyright (C) 2006-2007 Yannick Warnier <ywarnier@beeznest.org>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
@ -121,10 +121,13 @@ $fsearch.=' <input type="hidden" name="modetax" value="'.$modetax.'">';
|
|||||||
//$fsearch.=' '.$langs->trans("SalesTurnoverMinimum").': ';
|
//$fsearch.=' '.$langs->trans("SalesTurnoverMinimum").': ';
|
||||||
//$fsearch.=' <input type="text" name="min" value="'.$min.'">';
|
//$fsearch.=' <input type="text" name="min" value="'.$min.'">';
|
||||||
|
|
||||||
|
|
||||||
// Affiche en-tete du rapport
|
// Affiche en-tete du rapport
|
||||||
if ($modetax==1) // Calculate on invoice for goods and services
|
if ($modetax==1) // Calculate on invoice for goods and services
|
||||||
{
|
{
|
||||||
$nom=$langs->trans("VATReportByQuartersInDueDebtMode");
|
$nom=$langs->trans("VATReportByQuartersInDueDebtMode");
|
||||||
|
$calcmode=$langs->trans("CalcModeVATDebt");
|
||||||
|
$calcmode.='<br>('.$langs->trans("TaxModuleSetupToModifyRules",DOL_URL_ROOT.'/admin/taxes.php').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
$prevyear=$year_start; $prevquarter=$q;
|
$prevyear=$year_start; $prevquarter=$q;
|
||||||
if ($prevquarter > 1) $prevquarter--;
|
if ($prevquarter > 1) $prevquarter--;
|
||||||
@ -140,7 +143,6 @@ if ($modetax==1) // Calculate on invoice for goods and services
|
|||||||
//if (! empty($conf->global->MAIN_MODULE_COMPTABILITE)) $description.='<br>'.$langs->trans("WarningDepositsNotIncluded");
|
//if (! empty($conf->global->MAIN_MODULE_COMPTABILITE)) $description.='<br>'.$langs->trans("WarningDepositsNotIncluded");
|
||||||
if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description.='<br>'.$langs->trans("DepositsAreNotIncluded");
|
if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description.='<br>'.$langs->trans("DepositsAreNotIncluded");
|
||||||
else $description.='<br>'.$langs->trans("DepositsAreIncluded");
|
else $description.='<br>'.$langs->trans("DepositsAreIncluded");
|
||||||
$description.='<br>('.$langs->trans("TaxModuleSetupToModifyRules",DOL_URL_ROOT.'/admin/taxes.php').')';
|
|
||||||
$description.=$fsearch;
|
$description.=$fsearch;
|
||||||
$builddate=time();
|
$builddate=time();
|
||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
@ -159,6 +161,8 @@ if ($modetax==1) // Calculate on invoice for goods and services
|
|||||||
if ($modetax==0) // Invoice for goods, payment for services
|
if ($modetax==0) // Invoice for goods, payment for services
|
||||||
{
|
{
|
||||||
$nom=$langs->trans("VATReportByQuartersInInputOutputMode");
|
$nom=$langs->trans("VATReportByQuartersInInputOutputMode");
|
||||||
|
$calcmode=$langs->trans("CalcModeVATEngagement");
|
||||||
|
$calcmode.='<br>('.$langs->trans("TaxModuleSetupToModifyRules",DOL_URL_ROOT.'/admin/taxes.php').')';
|
||||||
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
$period=$form->select_date($date_start,'date_start',0,0,0,'',1,0,1).' - '.$form->select_date($date_end,'date_end',0,0,0,'',1,0,1);
|
||||||
$prevyear=$year_start; $prevquarter=$q;
|
$prevyear=$year_start; $prevquarter=$q;
|
||||||
if ($prevquarter > 1) $prevquarter--;
|
if ($prevquarter > 1) $prevquarter--;
|
||||||
@ -176,7 +180,6 @@ if ($modetax==0) // Invoice for goods, payment for services
|
|||||||
//if ($conf->global->MAIN_MODULE_COMPTABILITE || $conf->global->MAIN_MODULE_ACCOUNTING) $description.='<br>'.img_warning().' '.$langs->trans('OptionVatInfoModuleComptabilite');
|
//if ($conf->global->MAIN_MODULE_COMPTABILITE || $conf->global->MAIN_MODULE_ACCOUNTING) $description.='<br>'.img_warning().' '.$langs->trans('OptionVatInfoModuleComptabilite');
|
||||||
//if (! empty($conf->global->MAIN_MODULE_COMPTABILITE)) $description.='<br>'.$langs->trans("WarningDepositsNotIncluded");
|
//if (! empty($conf->global->MAIN_MODULE_COMPTABILITE)) $description.='<br>'.$langs->trans("WarningDepositsNotIncluded");
|
||||||
$description.=$fsearch;
|
$description.=$fsearch;
|
||||||
$description.='<br>('.$langs->trans("TaxModuleSetupToModifyRules",DOL_URL_ROOT.'/admin/taxes.php').')';
|
|
||||||
$builddate=time();
|
$builddate=time();
|
||||||
//$exportlink=$langs->trans("NotYetAvailable");
|
//$exportlink=$langs->trans("NotYetAvailable");
|
||||||
|
|
||||||
@ -191,7 +194,7 @@ if ($modetax==0) // Invoice for goods, payment for services
|
|||||||
$vatsup=$langs->trans("VATPaid");
|
$vatsup=$langs->trans("VATPaid");
|
||||||
if ($mysoc->tva_assuj) $vatsup.=' ('.$langs->trans("ToGetBack").')';
|
if ($mysoc->tva_assuj) $vatsup.=' ('.$langs->trans("ToGetBack").')';
|
||||||
}
|
}
|
||||||
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink);
|
report_header($nom,$nomlink,$period,$periodlink,$description,$builddate,$exportlink,array(),$calcmode);
|
||||||
|
|
||||||
$vatcust=$langs->trans("VATReceived");
|
$vatcust=$langs->trans("VATReceived");
|
||||||
$vatsup=$langs->trans("VATPaid");
|
$vatsup=$langs->trans("VATPaid");
|
||||||
|
|||||||
@ -469,7 +469,7 @@ class Contact extends CommonObject
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Charge l'objet contact
|
* Load object contact
|
||||||
*
|
*
|
||||||
* @param int $id id du contact
|
* @param int $id id du contact
|
||||||
* @param User $user Utilisateur (abonnes aux alertes) qui veut les alertes de ce contact
|
* @param User $user Utilisateur (abonnes aux alertes) qui veut les alertes de ce contact
|
||||||
@ -481,8 +481,7 @@ class Contact extends CommonObject
|
|||||||
|
|
||||||
$langs->load("companies");
|
$langs->load("companies");
|
||||||
|
|
||||||
|
$sql = "SELECT c.rowid, c.fk_soc, c.ref_ext, c.civilite as civilite_id, c.lastname, c.firstname,";
|
||||||
$sql = "SELECT c.rowid, c.fk_soc, c.civilite as civilite_id, c.lastname, c.firstname,";
|
|
||||||
$sql.= " c.address, c.statut, c.zip, c.town,";
|
$sql.= " c.address, c.statut, c.zip, c.town,";
|
||||||
$sql.= " c.fk_pays as country_id,";
|
$sql.= " c.fk_pays as country_id,";
|
||||||
$sql.= " c.fk_departement,";
|
$sql.= " c.fk_departement,";
|
||||||
@ -511,6 +510,7 @@ class Contact extends CommonObject
|
|||||||
|
|
||||||
$this->id = $obj->rowid;
|
$this->id = $obj->rowid;
|
||||||
$this->ref = $obj->rowid;
|
$this->ref = $obj->rowid;
|
||||||
|
$this->ref_ext = $obj->ref_ext;
|
||||||
$this->civilite_id = $obj->civilite_id;
|
$this->civilite_id = $obj->civilite_id;
|
||||||
$this->lastname = $obj->lastname;
|
$this->lastname = $obj->lastname;
|
||||||
$this->firstname = $obj->firstname;
|
$this->firstname = $obj->firstname;
|
||||||
@ -972,7 +972,7 @@ class Contact extends CommonObject
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return translated label of Public or Private
|
* Return translated label of Public or Private
|
||||||
*
|
*
|
||||||
|
|||||||
@ -132,28 +132,25 @@ if (empty($reshook))
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
// Confirmation desactivation
|
||||||
* Confirmation desactivation
|
if ($action == 'disable')
|
||||||
*/
|
{
|
||||||
if ($action == 'disable')
|
$object->fetch($id);
|
||||||
{
|
$object->setstatus(0);
|
||||||
$object->fetch($id);
|
header("Location: ".$_SERVER['PHP_SELF'].'?id='.$id);
|
||||||
$object->setstatus(0);
|
exit;
|
||||||
header("Location: ".$_SERVER['PHP_SELF'].'?id='.$id);
|
}
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
// Confirmation activation
|
||||||
* Confirmation activation
|
if ($action == 'enable')
|
||||||
*/
|
{
|
||||||
if ($action == 'enable')
|
$object->fetch($id);
|
||||||
{
|
$object->setstatus(1);
|
||||||
$object->fetch($id);
|
header("Location: ".$_SERVER['PHP_SELF'].'?id='.$id);
|
||||||
$object->setstatus(1);
|
exit;
|
||||||
header("Location: ".$_SERVER['PHP_SELF'].'?id='.$id);
|
|
||||||
exit;
|
}
|
||||||
|
|
||||||
}
|
|
||||||
// Add contact
|
// Add contact
|
||||||
if ($action == 'add' && $user->rights->societe->contact->creer)
|
if ($action == 'add' && $user->rights->societe->contact->creer)
|
||||||
{
|
{
|
||||||
@ -221,7 +218,7 @@ if (empty($reshook))
|
|||||||
|
|
||||||
if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->societe->contact->supprimer)
|
if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->societe->contact->supprimer)
|
||||||
{
|
{
|
||||||
$result=$object->fetch($_GET["id"]);
|
$result=$object->fetch($id);
|
||||||
|
|
||||||
$object->old_lastname = $_POST["old_lastname"];
|
$object->old_lastname = $_POST["old_lastname"];
|
||||||
$object->old_firstname = $_POST["old_firstname"];
|
$object->old_firstname = $_POST["old_firstname"];
|
||||||
@ -248,7 +245,9 @@ if (empty($reshook))
|
|||||||
|
|
||||||
if (! $error)
|
if (! $error)
|
||||||
{
|
{
|
||||||
$object->fetch($_POST["contactid"]);
|
$contactid=GETPOST("contactid",'int');
|
||||||
|
|
||||||
|
$object->fetch($contactid);
|
||||||
|
|
||||||
$object->oldcopy=dol_clone($object);
|
$object->oldcopy=dol_clone($object);
|
||||||
|
|
||||||
@ -281,7 +280,7 @@ if (empty($reshook))
|
|||||||
// Fill array 'array_options' with data from add form
|
// Fill array 'array_options' with data from add form
|
||||||
$ret = $extrafields->setOptionalsFromPost($extralabels,$object);
|
$ret = $extrafields->setOptionalsFromPost($extralabels,$object);
|
||||||
|
|
||||||
$result = $object->update($_POST["contactid"], $user);
|
$result = $object->update($contactid, $user);
|
||||||
|
|
||||||
if ($result > 0)
|
if ($result > 0)
|
||||||
{
|
{
|
||||||
@ -343,8 +342,7 @@ else
|
|||||||
{
|
{
|
||||||
if ($action == 'delete')
|
if ($action == 'delete')
|
||||||
{
|
{
|
||||||
print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$_GET["id"],$langs->trans("DeleteContact"),$langs->trans("ConfirmDeleteContact"),"confirm_delete",'',0,1);
|
print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$id,$langs->trans("DeleteContact"),$langs->trans("ConfirmDeleteContact"),"confirm_delete",'',0,1);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -274,54 +274,63 @@ class Contrat extends CommonObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validate a contract
|
* Validate a contract
|
||||||
*
|
*
|
||||||
* @param User $user Objet User
|
* @param User $user Objet User
|
||||||
* @return int <0 if KO, >0 if OK
|
* @param string $force_number Reference to force on contract (not implemented yet)
|
||||||
|
* @return int <0 if KO, >0 if OK
|
||||||
*/
|
*/
|
||||||
function validate($user)
|
function validate($user, $force_number='')
|
||||||
{
|
{
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
||||||
global $langs, $conf;
|
global $langs, $conf;
|
||||||
|
|
||||||
|
$now=dol_now();
|
||||||
|
|
||||||
$error=0;
|
$error=0;
|
||||||
|
dol_syslog(get_class($this).'::validate user='.$user->id.', force_number='.$force_number);
|
||||||
|
|
||||||
// Definition du nom de module de numerotation de commande
|
|
||||||
$soc = new Societe($this->db);
|
|
||||||
$soc->fetch($this->socid);
|
|
||||||
|
|
||||||
// Class of company linked to order
|
$this->db->begin();
|
||||||
$result=$soc->set_as_client();
|
|
||||||
|
$this->fetch_thirdparty();
|
||||||
|
|
||||||
|
// A contract is validated so we can move thirdparty to status customer
|
||||||
|
$result=$this->thirdparty->set_as_client();
|
||||||
|
|
||||||
// Define new ref
|
// Define new ref
|
||||||
if (! $error && (preg_match('/^[\(]?PROV/i', $this->ref)))
|
if (! $error && (preg_match('/^[\(]?PROV/i', $this->ref)))
|
||||||
{
|
{
|
||||||
$num = $this->getNextNumRef($soc);
|
$num = $this->getNextNumRef($this->thirdparty);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$num = $this->ref;
|
$num = $this->ref;
|
||||||
}
|
}
|
||||||
|
|
||||||
$sql = "UPDATE ".MAIN_DB_PREFIX."contrat SET ref = '".$num."', statut = 1";
|
if ($num)
|
||||||
$sql .= " WHERE rowid = ".$this->id . " AND statut = 0";
|
|
||||||
|
|
||||||
$resql = $this->db->query($sql);
|
|
||||||
if ($resql)
|
|
||||||
{
|
{
|
||||||
// Appel des triggers
|
$sql = "UPDATE ".MAIN_DB_PREFIX."contrat SET ref = '".$num."', statut = 1";
|
||||||
include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php';
|
//$sql.= ", fk_user_valid = ".$user->id.", date_valid = '".$this->db->idate($now)."'";
|
||||||
$interface=new Interfaces($this->db);
|
$sql .= " WHERE rowid = ".$this->id . " AND statut = 0";
|
||||||
$result=$interface->run_triggers('CONTRACT_VALIDATE',$this,$user,$langs,$conf);
|
|
||||||
if ($result < 0) { $error++; $this->errors=$interface->errors; }
|
dol_syslog(get_class($this)."::validate sql=".$sql);
|
||||||
// Fin appel triggers
|
$resql = $this->db->query($sql);
|
||||||
|
if (! $resql)
|
||||||
|
{
|
||||||
|
dol_syslog(get_class($this)."::validate Echec update - 10 - sql=".$sql, LOG_ERR);
|
||||||
|
dol_print_error($this->db);
|
||||||
|
$error++;
|
||||||
|
}
|
||||||
|
|
||||||
if (! $error)
|
if (! $error)
|
||||||
{
|
{
|
||||||
|
$this->oldref = '';
|
||||||
|
|
||||||
// Rename directory if dir was a temporary ref
|
// Rename directory if dir was a temporary ref
|
||||||
if (preg_match('/^[\(]?PROV/i', $this->ref))
|
if (preg_match('/^[\(]?PROV/i', $this->ref))
|
||||||
{
|
{
|
||||||
// Rename of propal directory ($this->ref = old ref, $num = new ref)
|
// Rename of object directory ($this->ref = old ref, $num = new ref)
|
||||||
// to not lose the linked files
|
// to not lose the linked files
|
||||||
$facref = dol_sanitizeFileName($this->ref);
|
$facref = dol_sanitizeFileName($this->ref);
|
||||||
$snumfa = dol_sanitizeFileName($num);
|
$snumfa = dol_sanitizeFileName($num);
|
||||||
@ -330,28 +339,56 @@ class Contrat extends CommonObject
|
|||||||
if (file_exists($dirsource))
|
if (file_exists($dirsource))
|
||||||
{
|
{
|
||||||
dol_syslog(get_class($this)."::validate rename dir ".$dirsource." into ".$dirdest);
|
dol_syslog(get_class($this)."::validate rename dir ".$dirsource." into ".$dirdest);
|
||||||
|
|
||||||
if (@rename($dirsource, $dirdest))
|
if (@rename($dirsource, $dirdest))
|
||||||
{
|
{
|
||||||
|
$this->oldref = $facref;
|
||||||
|
|
||||||
dol_syslog("Rename ok");
|
dol_syslog("Rename ok");
|
||||||
// Deleting old PDF in new rep
|
// Deleting old PDF in new rep
|
||||||
dol_delete_file($conf->contract->dir_output.'/'.$snumfa.'/'.$facref.'*.*');
|
dol_delete_file($conf->contract->dir_output.'/'.$snumfa.'/'.$facref.'*.*');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
else
|
|
||||||
|
// Set new ref and define current statut
|
||||||
|
if (! $error)
|
||||||
{
|
{
|
||||||
return -1;
|
$this->ref = $num;
|
||||||
|
$this->statut=1;
|
||||||
|
$this->brouillon=0;
|
||||||
|
$this->date_validation=$now;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Trigger calls
|
||||||
|
if (! $error)
|
||||||
|
{
|
||||||
|
// Appel des triggers
|
||||||
|
include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php';
|
||||||
|
$interface=new Interfaces($this->db);
|
||||||
|
$result=$interface->run_triggers('CONTRACT_VALIDATE',$this,$user,$langs,$conf);
|
||||||
|
if ($result < 0) { $error++; $this->errors=$interface->errors; }
|
||||||
|
// Fin appel triggers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$this->error=$this->db->error();
|
$error++;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (! $error)
|
||||||
|
{
|
||||||
|
$this->db->commit();
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$this->db->rollback();
|
||||||
|
$this->error=$this->db->lasterror();
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -966,19 +1003,19 @@ class Contrat extends CommonObject
|
|||||||
// qty, pu, remise_percent et txtva
|
// qty, pu, remise_percent et txtva
|
||||||
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
||||||
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
||||||
|
|
||||||
$localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc);
|
$localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc);
|
||||||
|
|
||||||
$tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, 1,'', $localtaxes_type);
|
$tabprice=calcul_price_total($qty, $pu, $remise_percent, $txtva, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, 1,'', $localtaxes_type);
|
||||||
$total_ht = $tabprice[0];
|
$total_ht = $tabprice[0];
|
||||||
$total_tva = $tabprice[1];
|
$total_tva = $tabprice[1];
|
||||||
$total_ttc = $tabprice[2];
|
$total_ttc = $tabprice[2];
|
||||||
$total_localtax1= $tabprice[9];
|
$total_localtax1= $tabprice[9];
|
||||||
$total_localtax2= $tabprice[10];
|
$total_localtax2= $tabprice[10];
|
||||||
|
|
||||||
$localtax1_type=$localtaxes_type[0];
|
$localtax1_type=$localtaxes_type[0];
|
||||||
$localtax2_type=$localtaxes_type[2];
|
$localtax2_type=$localtaxes_type[2];
|
||||||
|
|
||||||
// TODO A virer
|
// TODO A virer
|
||||||
// Anciens indicateurs: $price, $remise (a ne plus utiliser)
|
// Anciens indicateurs: $price, $remise (a ne plus utiliser)
|
||||||
$remise = 0;
|
$remise = 0;
|
||||||
@ -1114,19 +1151,19 @@ class Contrat extends CommonObject
|
|||||||
// qty, pu, remise_percent et txtva
|
// qty, pu, remise_percent et txtva
|
||||||
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
||||||
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
||||||
|
|
||||||
$localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc);
|
$localtaxes_type=getLocalTaxesFromRate($txtva,0,$mysoc);
|
||||||
|
|
||||||
$tabprice=calcul_price_total($qty, $pu, $remise_percent, $tvatx, $localtaxtx1, $txlocaltaxtx2, 0, $price_base_type, $info_bits, 1, '', $localtaxes_type);
|
$tabprice=calcul_price_total($qty, $pu, $remise_percent, $tvatx, $localtaxtx1, $txlocaltaxtx2, 0, $price_base_type, $info_bits, 1, '', $localtaxes_type);
|
||||||
$total_ht = $tabprice[0];
|
$total_ht = $tabprice[0];
|
||||||
$total_tva = $tabprice[1];
|
$total_tva = $tabprice[1];
|
||||||
$total_ttc = $tabprice[2];
|
$total_ttc = $tabprice[2];
|
||||||
$total_localtax1= $tabprice[9];
|
$total_localtax1= $tabprice[9];
|
||||||
$total_localtax2= $tabprice[10];
|
$total_localtax2= $tabprice[10];
|
||||||
|
|
||||||
$localtax1_type=$localtaxes_type[0];
|
$localtax1_type=$localtaxes_type[0];
|
||||||
$localtax2_type=$localtaxes_type[2];
|
$localtax2_type=$localtaxes_type[2];
|
||||||
|
|
||||||
// TODO A virer
|
// TODO A virer
|
||||||
// Anciens indicateurs: $price, $remise (a ne plus utiliser)
|
// Anciens indicateurs: $price, $remise (a ne plus utiliser)
|
||||||
$remise = 0;
|
$remise = 0;
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2006-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2006-2013 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2013 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
* Copyright (C) 2010-2013 Juanjo Menent <jmenent@2byte.es>
|
||||||
* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
|
* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
|
||||||
* Copyright (C) 2011-2012 Philippe Grand <philippe.grand@atoo-net.com>
|
* Copyright (C) 2011-2012 Philippe Grand <philippe.grand@atoo-net.com>
|
||||||
@ -464,7 +464,7 @@ abstract class CommonObject
|
|||||||
$sql.= " WHERE tc.element='".$this->element."'";
|
$sql.= " WHERE tc.element='".$this->element."'";
|
||||||
if ($activeonly == 1)
|
if ($activeonly == 1)
|
||||||
$sql.= " AND tc.active=1"; // only the active type
|
$sql.= " AND tc.active=1"; // only the active type
|
||||||
|
|
||||||
if (! empty($source)) $sql.= " AND tc.source='".$source."'";
|
if (! empty($source)) $sql.= " AND tc.source='".$source."'";
|
||||||
$sql.= " ORDER by tc.".$order;
|
$sql.= " ORDER by tc.".$order;
|
||||||
|
|
||||||
@ -1112,9 +1112,9 @@ abstract class CommonObject
|
|||||||
$row = $this->db->fetch_row($resql);
|
$row = $this->db->fetch_row($resql);
|
||||||
$rows[] = $row[0]; // Add parent line into array rows
|
$rows[] = $row[0]; // Add parent line into array rows
|
||||||
$childrens = $this->getChildrenOfLine($row[0]);
|
$childrens = $this->getChildrenOfLine($row[0]);
|
||||||
if (! empty($children))
|
if (! empty($childrens))
|
||||||
{
|
{
|
||||||
foreach($children as $child)
|
foreach($childrens as $child)
|
||||||
{
|
{
|
||||||
array_push($rows, $child);
|
array_push($rows, $child);
|
||||||
}
|
}
|
||||||
@ -2621,7 +2621,7 @@ abstract class CommonObject
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* This is to show add lines */
|
/* This is to show add lines */
|
||||||
|
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* Copyright (C) 2004 Benoit Mortier <benoit.mortier@opensides.be>
|
* Copyright (C) 2004 Benoit Mortier <benoit.mortier@opensides.be>
|
||||||
* Copyright (C) 2004 Sebastien Di Cintio <sdicintio@ressource-toi.org>
|
* Copyright (C) 2004 Sebastien Di Cintio <sdicintio@ressource-toi.org>
|
||||||
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
|
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
|
||||||
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
* Copyright (C) 2005-2013 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2006 Andre Cianfarani <acianfa@free.fr>
|
* Copyright (C) 2006 Andre Cianfarani <acianfa@free.fr>
|
||||||
* Copyright (C) 2006 Marc Barilley/Ocebo <marc@ocebo.com>
|
* Copyright (C) 2006 Marc Barilley/Ocebo <marc@ocebo.com>
|
||||||
* Copyright (C) 2007 Franky Van Liedekerke <franky.van.liedekerker@telenet.be>
|
* Copyright (C) 2007 Franky Van Liedekerke <franky.van.liedekerker@telenet.be>
|
||||||
@ -800,7 +800,7 @@ class Form
|
|||||||
while ($i < $num)
|
while ($i < $num)
|
||||||
{
|
{
|
||||||
$obj = $this->db->fetch_object($resql);
|
$obj = $this->db->fetch_object($resql);
|
||||||
|
|
||||||
if ($conf->global->SOCIETE_ADD_REF_IN_LIST) {
|
if ($conf->global->SOCIETE_ADD_REF_IN_LIST) {
|
||||||
if (($obj->client) && (!empty($obj->code_client))) {
|
if (($obj->client) && (!empty($obj->code_client))) {
|
||||||
$label = $obj->code_client. ' - ';
|
$label = $obj->code_client. ' - ';
|
||||||
@ -814,7 +814,7 @@ class Form
|
|||||||
{
|
{
|
||||||
$label=$obj->nom;
|
$label=$obj->nom;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($showtype)
|
if ($showtype)
|
||||||
{
|
{
|
||||||
if ($obj->client || $obj->fournisseur) $label.=' (';
|
if ($obj->client || $obj->fournisseur) $label.=' (';
|
||||||
@ -2484,9 +2484,9 @@ class Form
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Show a confirmation HTML form or AJAX popup.
|
* Show a confirmation HTML form or AJAX popup.
|
||||||
* Easiest way to use this is with useajax=1.
|
* Easiest way to use this is with useajax=1.
|
||||||
* If you use useajax='xxx', you must also add jquery code to trigger opening of box (with correct parameters)
|
* If you use useajax='xxx', you must also add jquery code to trigger opening of box (with correct parameters)
|
||||||
* just after calling this method. For example:
|
* just after calling this method. For example:
|
||||||
* print '<script type="text/javascript">'."\n";
|
* print '<script type="text/javascript">'."\n";
|
||||||
* print 'jQuery(document).ready(function() {'."\n";
|
* print 'jQuery(document).ready(function() {'."\n";
|
||||||
* print 'jQuery(".xxxlink").click(function(e) { jQuery("#aparamid").val(jQuery(this).attr("rel")); jQuery("#dialog-confirm-xxx").dialog("open"); return false; });'."\n";
|
* print 'jQuery(".xxxlink").click(function(e) { jQuery("#aparamid").val(jQuery(this).attr("rel")); jQuery("#dialog-confirm-xxx").dialog("open"); return false; });'."\n";
|
||||||
@ -2587,9 +2587,9 @@ class Form
|
|||||||
$more.='</table>'."\n";
|
$more.='</table>'."\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
// JQUI method dialog is broken with jmobile, we use standard HTML.
|
// JQUI method dialog is broken with jmobile, we use standard HTML.
|
||||||
// Note: When using dol_use_jmobile, you must also check code for button use a GET url with action=xxx and output the confirm code only when action=xxx
|
// Note: When using dol_use_jmobile, you must also check code for button use a GET url with action=xxx and output the confirm code only when action=xxx
|
||||||
if (! empty($conf->dol_use_jmobile)) $useajax=0;
|
if (! empty($conf->dol_use_jmobile)) $useajax=0;
|
||||||
|
|
||||||
if ($useajax && $conf->use_javascript_ajax)
|
if ($useajax && $conf->use_javascript_ajax)
|
||||||
{
|
{
|
||||||
@ -3280,7 +3280,8 @@ class Form
|
|||||||
* Si vendeur non assujeti a TVA, TVA par defaut=0. Fin de regle.
|
* Si vendeur non assujeti a TVA, TVA par defaut=0. Fin de regle.
|
||||||
* Si le (pays vendeur = pays acheteur) alors la TVA par defaut=TVA du produit vendu. Fin de regle.
|
* Si le (pays vendeur = pays acheteur) alors la TVA par defaut=TVA du produit vendu. Fin de regle.
|
||||||
* Si (vendeur et acheteur dans Communaute europeenne) et bien vendu = moyen de transports neuf (auto, bateau, avion), TVA par defaut=0 (La TVA doit etre paye par l'acheteur au centre d'impots de son pays et non au vendeur). Fin de regle.
|
* Si (vendeur et acheteur dans Communaute europeenne) et bien vendu = moyen de transports neuf (auto, bateau, avion), TVA par defaut=0 (La TVA doit etre paye par l'acheteur au centre d'impots de son pays et non au vendeur). Fin de regle.
|
||||||
* Si (vendeur et acheteur dans Communaute europeenne) et bien vendu autre que transport neuf alors la TVA par defaut=TVA du produit vendu. Fin de regle.
|
* Si vendeur et acheteur dans Communauté européenne et acheteur= particulier alors TVA par défaut=TVA du produit vendu. Fin de règle.
|
||||||
|
* Si vendeur et acheteur dans Communauté européenne et acheteur= entreprise alors TVA par défaut=0. Fin de règle.
|
||||||
* Sinon la TVA proposee par defaut=0. Fin de regle.
|
* Sinon la TVA proposee par defaut=0. Fin de regle.
|
||||||
* @param bool $options_only Return options only (for ajax treatment)
|
* @param bool $options_only Return options only (for ajax treatment)
|
||||||
* @return void
|
* @return void
|
||||||
@ -3376,7 +3377,7 @@ class Form
|
|||||||
|
|
||||||
// Disabled if seller is not subject to VAT
|
// Disabled if seller is not subject to VAT
|
||||||
$disabled=false; $title='';
|
$disabled=false; $title='';
|
||||||
if (is_object($societe_vendeuse) && $societe_vendeuse->id == $mysoc->id && $societe_vendeuse->tva_assuj == "0")
|
if (is_object($societe_vendeuse) && $societe_vendeuse->id == $mysoc->id && $societe_vendeuse->tva_assuj == "0")
|
||||||
{
|
{
|
||||||
$title=' title="'.$langs->trans('VATIsNotUsed').'"';
|
$title=' title="'.$langs->trans('VATIsNotUsed').'"';
|
||||||
$disabled=true;
|
$disabled=true;
|
||||||
|
|||||||
@ -203,7 +203,7 @@ class FormCompany
|
|||||||
* un code donnee mais dans ce cas, le champ pays differe).
|
* un code donnee mais dans ce cas, le champ pays differe).
|
||||||
* Ainsi les liens avec les departements se font sur un departement independemment de son nom.
|
* Ainsi les liens avec les departements se font sur un departement independemment de son nom.
|
||||||
*
|
*
|
||||||
* @param string $selected Code state preselected
|
* @param string $selected Code state preselected (mus be state id)
|
||||||
* @param string $country_codeid Country code or id: 0=list for all countries, otherwise country code or country rowid to show
|
* @param string $country_codeid Country code or id: 0=list for all countries, otherwise country code or country rowid to show
|
||||||
* @param string $htmlname Id of department
|
* @param string $htmlname Id of department
|
||||||
* @return string String with HTML select
|
* @return string String with HTML select
|
||||||
@ -257,7 +257,8 @@ class FormCompany
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($selected > 0 && $selected == $obj->rowid)
|
if ((! empty($selected) && $selected == $obj->rowid)
|
||||||
|
|| (empty($selected) && ! empty($conf->global->MAIN_FORCE_DEFAULT_STATE_ID) && $conf->global->MAIN_FORCE_DEFAULT_STATE_ID == $obj->rowid))
|
||||||
{
|
{
|
||||||
$out.= '<option value="'.$obj->rowid.'" selected="selected">';
|
$out.= '<option value="'.$obj->rowid.'" selected="selected">';
|
||||||
}
|
}
|
||||||
|
|||||||
@ -106,11 +106,12 @@ class Translate
|
|||||||
// Array force long code from first part, even if long code is defined
|
// Array force long code from first part, even if long code is defined
|
||||||
$longforshort=array('ar'=>'ar_SA');
|
$longforshort=array('ar'=>'ar_SA');
|
||||||
if (isset($longforshort[strtolower($langpart[0])])) $srclang=$longforshort[strtolower($langpart[0])];
|
if (isset($longforshort[strtolower($langpart[0])])) $srclang=$longforshort[strtolower($langpart[0])];
|
||||||
else {
|
else if (! is_numeric($langpart[1])) { // Second part YY may be a numeric with some Chrome browser
|
||||||
$srclang=strtolower($langpart[0])."_".strtoupper($langpart[1]);
|
$srclang=strtolower($langpart[0])."_".strtoupper($langpart[1]);
|
||||||
$longforlong=array('no_nb'=>'nb_NO');
|
$longforlong=array('no_nb'=>'nb_NO');
|
||||||
if (isset($longforlong[strtolower($srclang)])) $srclang=$longforlong[strtolower($srclang)];
|
if (isset($longforlong[strtolower($srclang)])) $srclang=$longforlong[strtolower($srclang)];
|
||||||
}
|
}
|
||||||
|
else $srclang=strtolower($langpart[0])."_".strtoupper($langpart[0]);
|
||||||
}
|
}
|
||||||
else { // If it's for a codetouse that is a short code xx
|
else { // If it's for a codetouse that is a short code xx
|
||||||
// Array to convert short lang code into long code.
|
// Array to convert short lang code into long code.
|
||||||
@ -784,6 +785,16 @@ class Translate
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function get_translations_for_substitutions() {
|
||||||
|
$substitutionarray = array();
|
||||||
|
|
||||||
|
foreach($this->tab_translate as $code => $label) {
|
||||||
|
$substitutionarray['lang_'.$code] = $label;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $substitutionarray;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -62,7 +62,7 @@ function societe_prepare_head($object)
|
|||||||
$head[$h][2] = 'supplier';
|
$head[$h][2] = 'supplier';
|
||||||
$h++;
|
$h++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (($object->localtax1_assuj || $object->localtax2_assuj) && (isset($conf->global->MAIN_FEATURES_LEVEL) && $conf->global->MAIN_FEATURES_LEVEL > 0) )
|
if (($object->localtax1_assuj || $object->localtax2_assuj) && (isset($conf->global->MAIN_FEATURES_LEVEL) && $conf->global->MAIN_FEATURES_LEVEL > 0) )
|
||||||
{
|
{
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/societe/localtaxes.php?socid='.$object->id;
|
$head[$h][0] = DOL_URL_ROOT.'/societe/localtaxes.php?socid='.$object->id;
|
||||||
@ -70,7 +70,7 @@ function societe_prepare_head($object)
|
|||||||
$head[$h][2] = 'localtaxes';
|
$head[$h][2] = 'localtaxes';
|
||||||
$h++;
|
$h++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! empty($conf->agenda->enabled) && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read) ))
|
if (! empty($conf->agenda->enabled) && (!empty($user->rights->agenda->myactions->read) || !empty($user->rights->agenda->allactions->read) ))
|
||||||
{
|
{
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/societe/agenda.php?socid='.$object->id;
|
$head[$h][0] = DOL_URL_ROOT.'/societe/agenda.php?socid='.$object->id;
|
||||||
@ -104,7 +104,7 @@ function societe_prepare_head($object)
|
|||||||
$head[$h][2] = 'consumption';
|
$head[$h][2] = 'consumption';
|
||||||
$h++;
|
$h++;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Notifications
|
// Notifications
|
||||||
if (! empty($conf->notification->enabled))
|
if (! empty($conf->notification->enabled))
|
||||||
{
|
{
|
||||||
@ -113,7 +113,7 @@ function societe_prepare_head($object)
|
|||||||
$head[$h][2] = 'notify';
|
$head[$h][2] = 'notify';
|
||||||
$h++;
|
$h++;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Notes
|
// Notes
|
||||||
$nbNote = 0;
|
$nbNote = 0;
|
||||||
if(!empty($object->note_private)) $nbNote++;
|
if(!empty($object->note_private)) $nbNote++;
|
||||||
@ -287,15 +287,15 @@ function getCountry($searchkey,$withcode='',$dbtouse=0,$outputlangs='',$entconv=
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return state translated from an id
|
* Return state translated from an id. Return value is always utf8 encoded and without entities.
|
||||||
*
|
*
|
||||||
* @param int $id id of state (province/departement)
|
* @param int $id id of state (province/departement)
|
||||||
* @param int $withcode '0'=Return label,
|
* @param int $withcode '0'=Return label,
|
||||||
* '1'=Return string code + label,
|
* '1'=Return string code + label,
|
||||||
* '2'=Return code,
|
* '2'=Return code,
|
||||||
* 'all'=return array('id'=>,'code'=>,'label'=>)
|
* 'all'=return array('id'=>,'code'=>,'label'=>)
|
||||||
* @param DoliDB $dbtouse Database handler (using in global way may fail because of conflicts with some autoload features)
|
* @param DoliDB $dbtouse Database handler (using in global way may fail because of conflicts with some autoload features)
|
||||||
* @return string String with state code or translated state name
|
* @return string String with state code or state name (Return value is always utf8 encoded and without entities)
|
||||||
*/
|
*/
|
||||||
function getState($id,$withcode='',$dbtouse=0)
|
function getState($id,$withcode='',$dbtouse=0)
|
||||||
{
|
{
|
||||||
@ -617,7 +617,7 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='')
|
|||||||
|
|
||||||
if ($obj->statut==0) print '<td>'.$langs->trans('Disabled').' </span>'.img_picto($langs->trans('StatusContactDraftShort'),'statut0').'</td>';
|
if ($obj->statut==0) print '<td>'.$langs->trans('Disabled').' </span>'.img_picto($langs->trans('StatusContactDraftShort'),'statut0').'</td>';
|
||||||
elseif ($obj->statut==1) print '<td>'.$langs->trans('Enabled').' </span>'.img_picto($langs->trans('StatusContactValidatedShort'),'statut1').'</td>';
|
elseif ($obj->statut==1) print '<td>'.$langs->trans('Enabled').' </span>'.img_picto($langs->trans('StatusContactValidatedShort'),'statut1').'</td>';
|
||||||
|
|
||||||
// copy in clipboard
|
// copy in clipboard
|
||||||
$coords = '';
|
$coords = '';
|
||||||
if (!empty($object->name))
|
if (!empty($object->name))
|
||||||
@ -667,7 +667,7 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='')
|
|||||||
print '</a></td>';
|
print '</a></td>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ($user->rights->societe->contact->creer)
|
if ($user->rights->societe->contact->creer)
|
||||||
{
|
{
|
||||||
print '<td align="right">';
|
print '<td align="right">';
|
||||||
@ -675,9 +675,9 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='')
|
|||||||
print img_edit();
|
print img_edit();
|
||||||
print '</a></td>';
|
print '</a></td>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
print "</tr>\n";
|
print "</tr>\n";
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2329,7 +2329,7 @@ function print_liste_field_titre($name, $file="", $field="", $begin="", $morepar
|
|||||||
* Get title line of an array
|
* Get title line of an array
|
||||||
*
|
*
|
||||||
* @param string $name Label of field
|
* @param string $name Label of field
|
||||||
* @param int $thead For thead format (0 by default)
|
* @param int $thead 0=To use with standard table forat, 1=To use inside <thead><tr>, 2=To use with <div>
|
||||||
* @param string $file Url used when we click on sort picto
|
* @param string $file Url used when we click on sort picto
|
||||||
* @param string $field Field to use for new sorting. Empty if this field is not sortable.
|
* @param string $field Field to use for new sorting. Empty if this field is not sortable.
|
||||||
* @param string $begin ("" by defaut)
|
* @param string $begin ("" by defaut)
|
||||||
@ -2347,10 +2347,13 @@ function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $m
|
|||||||
$sortorder=strtoupper($sortorder);
|
$sortorder=strtoupper($sortorder);
|
||||||
$out='';
|
$out='';
|
||||||
|
|
||||||
|
$tag='th';
|
||||||
|
if ($thead==2) $tag='div';
|
||||||
|
|
||||||
// If field is used as sort criteria we use a specific class
|
// If field is used as sort criteria we use a specific class
|
||||||
// Example if (sortfield,field)=("nom","xxx.nom") or (sortfield,field)=("nom","nom")
|
// Example if (sortfield,field)=("nom","xxx.nom") or (sortfield,field)=("nom","nom")
|
||||||
if ($field && ($sortfield == $field || $sortfield == preg_replace("/^[^\.]+\./","",$field))) $out.= '<th class="liste_titre_sel" '. $moreattrib.'>';
|
if ($field && ($sortfield == $field || $sortfield == preg_replace("/^[^\.]+\./","",$field))) $out.= '<'.$tag.' class="liste_titre_sel" '. $moreattrib.'>';
|
||||||
else $out.= '<th class="liste_titre" '. $moreattrib.'>';
|
else $out.= '<'.$tag.' class="liste_titre" '. $moreattrib.'>';
|
||||||
|
|
||||||
if (! empty($conf->dol_optimize_smallscreen) && empty($thead) && $field) // If this is a sort field
|
if (! empty($conf->dol_optimize_smallscreen) && empty($thead) && $field) // If this is a sort field
|
||||||
{
|
{
|
||||||
@ -2397,7 +2400,7 @@ function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $m
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$out.='</th>';
|
$out.='</'.$tag.'>';
|
||||||
|
|
||||||
return $out;
|
return $out;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -54,14 +54,16 @@ function dol_json_encode($elements)
|
|||||||
//var_dump($num);
|
//var_dump($num);
|
||||||
|
|
||||||
// determine type
|
// determine type
|
||||||
if (is_numeric(key($elements)))
|
if (is_numeric(key($elements)) && key($elements) == 0)
|
||||||
{
|
{
|
||||||
// indexed (list)
|
// indexed (list)
|
||||||
|
$keysofelements=array_keys($elements); // Elements array mus have key that does not start with 0 and end with num-1, so we will use this later.
|
||||||
$output = '[';
|
$output = '[';
|
||||||
for ($i = 0, $last = ($num - 1); isset($elements[$i]); ++$i)
|
for ($i = 0, $last = ($num - 1); $i < $num; $i++)
|
||||||
{
|
{
|
||||||
if (is_array($elements[$i]) || is_object($elements[$i])) $output.= json_encode($elements[$i]);
|
if (! isset($elements[$keysofelements[$i]])) continue;
|
||||||
else $output .= _val($elements[$i]);
|
if (is_array($elements[$keysofelements[$i]]) || is_object($elements[$keysofelements[$i]])) $output.= json_encode($elements[$keysofelements[$i]]);
|
||||||
|
else $output .= _val($elements[$keysofelements[$i]]);
|
||||||
if ($i !== $last) $output.= ',';
|
if ($i !== $last) $output.= ',';
|
||||||
}
|
}
|
||||||
$output.= ']';
|
$output.= ']';
|
||||||
|
|||||||
@ -34,9 +34,10 @@
|
|||||||
* @param date $builddate Date generation
|
* @param date $builddate Date generation
|
||||||
* @param string $exportlink Link for export or ''
|
* @param string $exportlink Link for export or ''
|
||||||
* @param array $moreparam Array with list of params to add into form
|
* @param array $moreparam Array with list of params to add into form
|
||||||
|
* @param string $calcmode Calculation mode
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function report_header($nom,$variante,$period,$periodlink,$description,$builddate,$exportlink='',$moreparam=array())
|
function report_header($nom,$variante,$period,$periodlink,$description,$builddate,$exportlink='',$moreparam=array(),$calcmode='')
|
||||||
{
|
{
|
||||||
global $langs, $hselected;
|
global $langs, $hselected;
|
||||||
|
|
||||||
@ -59,13 +60,26 @@ function report_header($nom,$variante,$period,$periodlink,$description,$builddat
|
|||||||
// Ligne de titre
|
// Ligne de titre
|
||||||
print '<tr>';
|
print '<tr>';
|
||||||
print '<td valign="top" width="110">'.$langs->trans("ReportName").'</td>';
|
print '<td valign="top" width="110">'.$langs->trans("ReportName").'</td>';
|
||||||
if (! $variante) print '<td colspan="3">';
|
if (! $variantexxx) print '<td colspan="3">';
|
||||||
else print '<td>';
|
else print '<td>';
|
||||||
print $nom;
|
print $nom;
|
||||||
if ($variante) print '</td><td colspan="2">'.$variante;
|
if ($variantexxx) print '</td><td colspan="2">'.$variantexxx;
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
|
|
||||||
|
// Calculation mode
|
||||||
|
if ($calcmode)
|
||||||
|
{
|
||||||
|
print '<tr>';
|
||||||
|
print '<td valign="top" width="110">'.$langs->trans("CalculationMode").'</td>';
|
||||||
|
if (! $variante) print '<td colspan="3">';
|
||||||
|
else print '<td>';
|
||||||
|
print $calcmode;
|
||||||
|
if ($variante) print '</td><td colspan="2">'.$variante;
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
}
|
||||||
|
|
||||||
// Ligne de la periode d'analyse du rapport
|
// Ligne de la periode d'analyse du rapport
|
||||||
print '<tr>';
|
print '<tr>';
|
||||||
print '<td>'.$langs->trans("ReportPeriod").'</td>';
|
print '<td>'.$langs->trans("ReportPeriod").'</td>';
|
||||||
|
|||||||
@ -515,22 +515,7 @@ function quotedPrintEncode($str,$forcal=0)
|
|||||||
function quotedPrintDecode($str)
|
function quotedPrintDecode($str)
|
||||||
{
|
{
|
||||||
$out = preg_replace('/=\r?\n/', '', $str);
|
$out = preg_replace('/=\r?\n/', '', $str);
|
||||||
/*
|
$out = quoted_printable_decode($out); // Available with PHP 4+
|
||||||
* preg_replace /e modifier is deprecated in PHP 5.5
|
|
||||||
* but anonymous functions for use in preg_replace_callback are only available from 5.3.0
|
|
||||||
*/
|
|
||||||
if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
|
|
||||||
$out = preg_replace_callback(
|
|
||||||
'/=([A-F0-9]{2})/',
|
|
||||||
function ($m) {
|
|
||||||
return chr(hexdec($m[1]));
|
|
||||||
},
|
|
||||||
$out
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
$out = preg_replace('/=([A-F0-9]{2})/e', chr(hexdec('\\1')), $out);
|
|
||||||
}
|
|
||||||
|
|
||||||
return trim($out);
|
return trim($out);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -102,6 +102,9 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left
|
|||||||
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3102__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/liste.php', 'List', 1, 'stocks', '$user->rights->stock->lire', '', 2, 1, __ENTITY__);
|
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3102__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/liste.php', 'List', 1, 'stocks', '$user->rights->stock->lire', '', 2, 1, __ENTITY__);
|
||||||
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3103__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/valo.php', 'EnhancedValue', 1, 'stocks', '$user->rights->stock->lire', '', 2, 2, __ENTITY__);
|
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3103__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/valo.php', 'EnhancedValue', 1, 'stocks', '$user->rights->stock->lire', '', 2, 2, __ENTITY__);
|
||||||
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3104__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/mouvement.php', 'Movements', 1, 'stocks', '$user->rights->stock->mouvement->lire', '', 2, 3, __ENTITY__);
|
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled', __HANDLER__, 'left', 3104__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/mouvement.php', 'Movements', 1, 'stocks', '$user->rights->stock->mouvement->lire', '', 2, 3, __ENTITY__);
|
||||||
|
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled && $conf->fournisseur->enabled', __HANDLER__, 'left', 3105__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/replenish.php', 'Replenishments', 1, 'stocks', '$user->rights->stock->mouvement->lire && $user->rights->fournisseur->lire', '', 2, 4, __ENTITY__);
|
||||||
|
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->stock->enabled && $conf->fournisseur->enabled', __HANDLER__, 'left', 3106__+MAX_llx_menu__, 'products', '', 3100__+MAX_llx_menu__, '/product/stock/massstockmove.php', 'StockTransfer', 1, 'stocks', '$user->rights->stock->mouvement->lire && $user->rights->fournisseur->lire', '', 2, 5, __ENTITY__);
|
||||||
|
|
||||||
-- Product - Categories
|
-- Product - Categories
|
||||||
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->categorie->enabled', __HANDLER__, 'left', 3200__+MAX_llx_menu__, 'products', 'cat', 3__+MAX_llx_menu__, '/categories/index.php?leftmenu=cat&type=0', 'Categories', 0, 'categories', '$user->rights->categorie->lire', '', 2, 4, __ENTITY__);
|
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->categorie->enabled', __HANDLER__, 'left', 3200__+MAX_llx_menu__, 'products', 'cat', 3__+MAX_llx_menu__, '/categories/index.php?leftmenu=cat&type=0', 'Categories', 0, 'categories', '$user->rights->categorie->lire', '', 2, 4, __ENTITY__);
|
||||||
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->categorie->enabled', __HANDLER__, 'left', 3201__+MAX_llx_menu__, 'products', '', 3200__+MAX_llx_menu__, '/categories/fiche.php?action=create&type=0', 'NewCategory', 1, 'categories', '$user->rights->categorie->creer', '', 2, 0, __ENTITY__);
|
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->categorie->enabled', __HANDLER__, 'left', 3201__+MAX_llx_menu__, 'products', '', 3200__+MAX_llx_menu__, '/categories/fiche.php?action=create&type=0', 'NewCategory', 1, 'categories', '$user->rights->categorie->creer', '', 2, 0, __ENTITY__);
|
||||||
|
|||||||
@ -187,14 +187,14 @@ class MenuManager
|
|||||||
foreach($this->menu->liste as $key => $val) // $val['url','titre','level','enabled'=0|1|2,'target','mainmenu','leftmenu'
|
foreach($this->menu->liste as $key => $val) // $val['url','titre','level','enabled'=0|1|2,'target','mainmenu','leftmenu'
|
||||||
{
|
{
|
||||||
print '<ul class="ulmenu" data-role="listview" data-inset="true">';
|
print '<ul class="ulmenu" data-role="listview" data-inset="true">';
|
||||||
print '<li data-role="list-divider">';
|
print '<li data-role="list-dividerxxx" class="lilevel0">';
|
||||||
if ($val['enabled'] == 1)
|
if ($val['enabled'] == 1)
|
||||||
{
|
{
|
||||||
$relurl=dol_buildpath($val['url'],1);
|
$relurl=dol_buildpath($val['url'],1);
|
||||||
$relurl=preg_replace('/__LOGIN__/',$user->login,$relurl);
|
$relurl=preg_replace('/__LOGIN__/',$user->login,$relurl);
|
||||||
$relurl=preg_replace('/__USERID__/',$user->id,$relurl);
|
$relurl=preg_replace('/__USERID__/',$user->id,$relurl);
|
||||||
|
|
||||||
print '<a href="#">'.$val['titre'].'</a>'."\n";
|
print '<a class="alilevel0" href="#">'.$val['titre'].'</a>'."\n";
|
||||||
// Search submenu fot this entry
|
// Search submenu fot this entry
|
||||||
$tmpmainmenu=$val['mainmenu'];
|
$tmpmainmenu=$val['mainmenu'];
|
||||||
$tmpleftmenu='all';
|
$tmpleftmenu='all';
|
||||||
@ -211,7 +211,7 @@ class MenuManager
|
|||||||
|| (strpos($canonrelurl,'/product/index.php') !== false || strpos($canonrelurl,'/compta/bank/index.php') !== false))
|
|| (strpos($canonrelurl,'/product/index.php') !== false || strpos($canonrelurl,'/compta/bank/index.php') !== false))
|
||||||
{
|
{
|
||||||
// We add sub entry
|
// We add sub entry
|
||||||
print str_pad('',1).'<li data-role="list-divider" class="lilevel1 ui-btn-icon-right ui-btn">'; // ui-btn to highlight on clic
|
print str_pad('',1).'<li data-role="list-dividerxxx" class="lilevel1 ui-btn-icon-right ui-btn">'; // ui-btn to highlight on clic
|
||||||
print '<a href="'.$relurl.'">';
|
print '<a href="'.$relurl.'">';
|
||||||
print str_pad('',12,' ');
|
print str_pad('',12,' ');
|
||||||
if ($langs->trans(ucfirst($val['mainmenu'])."Dashboard") == ucfirst($val['mainmenu'])."Dashboard") print $langs->trans("Access"); // No translation
|
if ($langs->trans(ucfirst($val['mainmenu'])."Dashboard") == ucfirst($val['mainmenu'])."Dashboard") print $langs->trans("Access"); // No translation
|
||||||
@ -227,7 +227,7 @@ class MenuManager
|
|||||||
$canonurl2=preg_replace('/\?.*$/','',$val2['url']);
|
$canonurl2=preg_replace('/\?.*$/','',$val2['url']);
|
||||||
//var_dump($val2['url'].' - '.$canonurl2.' - '.$val2['level']);
|
//var_dump($val2['url'].' - '.$canonurl2.' - '.$val2['level']);
|
||||||
if (in_array($canonurl2,array('/admin/index.php','/admin/tools/index.php','/core/tools.php'))) $relurl2='';
|
if (in_array($canonurl2,array('/admin/index.php','/admin/tools/index.php','/core/tools.php'))) $relurl2='';
|
||||||
if ($val2['level']==0) print str_pad('',$val2['level']+1).'<li'.($val2['level']==0?' data-role="list-divider"':'').' class="lilevel'.($val2['level']+1).' ui-btn-icon-right ui-btn">'; // ui-btn to highlight on clic
|
if ($val2['level']==0) print str_pad('',$val2['level']+1).'<li'.($val2['level']==0?' data-role="list-dividerxxx"':'').' class="lilevel'.($val2['level']+1).' ui-btn-icon-right ui-btn">'; // ui-btn to highlight on clic
|
||||||
else print str_pad('',$val2['level']+1).'<li class="lilevel'.($val2['level']+1).'">'; // ui-btn to highlight on clic
|
else print str_pad('',$val2['level']+1).'<li class="lilevel'.($val2['level']+1).'">'; // ui-btn to highlight on clic
|
||||||
if ($relurl2) print '<a href="'.$relurl2.'">';
|
if ($relurl2) print '<a href="'.$relurl2.'">';
|
||||||
print str_pad('',($val2['level']+1)*12,' ');
|
print str_pad('',($val2['level']+1)*12,' ');
|
||||||
|
|||||||
@ -565,7 +565,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Menu TIERS
|
* Menu THIRDPARTIES
|
||||||
*/
|
*/
|
||||||
if ($mainmenu == 'companies')
|
if ($mainmenu == 'companies')
|
||||||
{
|
{
|
||||||
@ -598,7 +598,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
|
|||||||
//$newmenu->add("/contact/list.php?leftmenu=customers&type=p", $langs->trans("Contacts"), 2, $user->rights->societe->contact->lire);
|
//$newmenu->add("/contact/list.php?leftmenu=customers&type=p", $langs->trans("Contacts"), 2, $user->rights->societe->contact->lire);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Clients
|
// Customers/Prospects
|
||||||
if (! empty($conf->societe->enabled) && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS))
|
if (! empty($conf->societe->enabled) && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS))
|
||||||
{
|
{
|
||||||
$langs->load("commercial");
|
$langs->load("commercial");
|
||||||
@ -608,7 +608,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
|
|||||||
//$newmenu->add("/contact/list.php?leftmenu=customers&type=c", $langs->trans("Contacts"), 2, $user->rights->societe->contact->lire);
|
//$newmenu->add("/contact/list.php?leftmenu=customers&type=c", $langs->trans("Contacts"), 2, $user->rights->societe->contact->lire);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fournisseurs
|
// Suppliers
|
||||||
if (! empty($conf->societe->enabled) && ! empty($conf->fournisseur->enabled))
|
if (! empty($conf->societe->enabled) && ! empty($conf->fournisseur->enabled))
|
||||||
{
|
{
|
||||||
$langs->load("suppliers");
|
$langs->load("suppliers");
|
||||||
@ -1007,7 +1007,8 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
|
|||||||
if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/liste.php", $langs->trans("List"), 1, $user->rights->stock->lire);
|
if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/liste.php", $langs->trans("List"), 1, $user->rights->stock->lire);
|
||||||
if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/valo.php", $langs->trans("EnhancedValue"), 1, $user->rights->stock->lire);
|
if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/valo.php", $langs->trans("EnhancedValue"), 1, $user->rights->stock->lire);
|
||||||
if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/mouvement.php", $langs->trans("Movements"), 1, $user->rights->stock->mouvement->lire);
|
if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/mouvement.php", $langs->trans("Movements"), 1, $user->rights->stock->mouvement->lire);
|
||||||
if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/replenish.php", $langs->trans("Replenishment"), 1, $user->rights->stock->mouvement->lire);
|
if ($conf->fournisseur->enabled) if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/replenish.php", $langs->trans("Replenishment"), 1, $user->rights->stock->mouvement->lire && $user->rights->fournisseur->lire);
|
||||||
|
if ($conf->fournisseur->enabled) if (empty($leftmenu) || $leftmenu=="stock") $newmenu->add("/product/stock/massstockmove.php", $langs->trans("StockTransfer"), 1, $user->rights->stock->mouvement->lire && $user->rights->fournisseur->lire);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Expeditions
|
// Expeditions
|
||||||
|
|||||||
@ -141,14 +141,14 @@ class MenuManager
|
|||||||
foreach($this->menu->liste as $key => $val) // $val['url','titre','level','enabled'=0|1|2,'target','mainmenu','leftmenu'
|
foreach($this->menu->liste as $key => $val) // $val['url','titre','level','enabled'=0|1|2,'target','mainmenu','leftmenu'
|
||||||
{
|
{
|
||||||
print '<ul class="ulmenu" data-role="listview" data-inset="true">';
|
print '<ul class="ulmenu" data-role="listview" data-inset="true">';
|
||||||
print '<li data-role="list-divider">';
|
print '<li data-role="list-dividerxxx" class="lilevel0">';
|
||||||
if ($val['enabled'] == 1)
|
if ($val['enabled'] == 1)
|
||||||
{
|
{
|
||||||
$relurl=dol_buildpath($val['url'],1);
|
$relurl=dol_buildpath($val['url'],1);
|
||||||
$relurl=preg_replace('/__LOGIN__/',$user->login,$relurl);
|
$relurl=preg_replace('/__LOGIN__/',$user->login,$relurl);
|
||||||
$relurl=preg_replace('/__USERID__/',$user->id,$relurl);
|
$relurl=preg_replace('/__USERID__/',$user->id,$relurl);
|
||||||
|
|
||||||
print '<a href="#">'.$val['titre'].'</a>'."\n";
|
print '<a class="alilevel0" href="#">'.$val['titre'].'</a>'."\n";
|
||||||
// Search submenu fot this entry
|
// Search submenu fot this entry
|
||||||
$tmpmainmenu=$val['mainmenu'];
|
$tmpmainmenu=$val['mainmenu'];
|
||||||
$tmpleftmenu='all';
|
$tmpleftmenu='all';
|
||||||
@ -165,7 +165,7 @@ class MenuManager
|
|||||||
|| (strpos($canonrelurl,'/product/index.php') !== false || strpos($canonrelurl,'/compta/bank/index.php') !== false))
|
|| (strpos($canonrelurl,'/product/index.php') !== false || strpos($canonrelurl,'/compta/bank/index.php') !== false))
|
||||||
{
|
{
|
||||||
// We add sub entry
|
// We add sub entry
|
||||||
print str_pad('',1).'<li data-role="list-divider" class="lilevel1 ui-btn-icon-right ui-btn">'; // ui-btn to highlight on clic
|
print str_pad('',1).'<li data-role="list-dividerxxx" class="lilevel1 ui-btn-icon-right ui-btn">'; // ui-btn to highlight on clic
|
||||||
print '<a href="'.$relurl.'"';
|
print '<a href="'.$relurl.'"';
|
||||||
//print ' data-ajax="false"';
|
//print ' data-ajax="false"';
|
||||||
print '>';
|
print '>';
|
||||||
@ -183,7 +183,7 @@ class MenuManager
|
|||||||
$canonurl2=preg_replace('/\?.*$/','',$val2['url']);
|
$canonurl2=preg_replace('/\?.*$/','',$val2['url']);
|
||||||
//var_dump($val2['url'].' - '.$canonurl2.' - '.$val2['level']);
|
//var_dump($val2['url'].' - '.$canonurl2.' - '.$val2['level']);
|
||||||
if (in_array($canonurl2,array('/admin/index.php','/admin/tools/index.php','/core/tools.php'))) $relurl2='';
|
if (in_array($canonurl2,array('/admin/index.php','/admin/tools/index.php','/core/tools.php'))) $relurl2='';
|
||||||
if ($val2['level']==0) print str_pad('',$val2['level']+1).'<li'.($val2['level']==0?' data-role="list-divider"':'').' class="lilevel'.($val2['level']+1).' ui-btn-icon-right ui-btn">'; // ui-btn to highlight on clic
|
if ($val2['level']==0) print str_pad('',$val2['level']+1).'<li'.($val2['level']==0?' data-role="list-dividerxxx"':'').' class="lilevel'.($val2['level']+1).' ui-btn-icon-right ui-btn">'; // ui-btn to highlight on clic
|
||||||
else print str_pad('',$val2['level']+1).'<li class="lilevel'.($val2['level']+1).'">'; // ui-btn to highlight on clic
|
else print str_pad('',$val2['level']+1).'<li class="lilevel'.($val2['level']+1).'">'; // ui-btn to highlight on clic
|
||||||
if ($relurl2)
|
if ($relurl2)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -203,7 +203,7 @@ class MenuManager
|
|||||||
foreach($this->topmenu->liste as $key => $val) // $val['url','titre','level','enabled'=0|1|2,'target','mainmenu','leftmenu'
|
foreach($this->topmenu->liste as $key => $val) // $val['url','titre','level','enabled'=0|1|2,'target','mainmenu','leftmenu'
|
||||||
{
|
{
|
||||||
print '<ul class="ulmenu" data-role="listview" data-inset="true">';
|
print '<ul class="ulmenu" data-role="listview" data-inset="true">';
|
||||||
print '<li data-role="list-divider">';
|
print '<li data-role="list-dividerxxx" class="lilevel0">';
|
||||||
if ($val['enabled'] == 1)
|
if ($val['enabled'] == 1)
|
||||||
{
|
{
|
||||||
$relurl=dol_buildpath($val['url'],1);
|
$relurl=dol_buildpath($val['url'],1);
|
||||||
@ -227,7 +227,7 @@ class MenuManager
|
|||||||
if ($canonrelurl != $canonnexturl && ! in_array($val['mainmenu'],array('home','tools')))
|
if ($canonrelurl != $canonnexturl && ! in_array($val['mainmenu'],array('home','tools')))
|
||||||
{
|
{
|
||||||
// We add sub entry
|
// We add sub entry
|
||||||
print '<li data-role="list-divider"><a href="'.$relurl.'">'.$langs->trans("MainArea").'-'.$val['titre'].'</a></li>'."\n";
|
print '<li data-role="list-dividerxxx"><a href="'.$relurl.'">'.$langs->trans("MainArea").'-'.$val['titre'].'</a></li>'."\n";
|
||||||
}
|
}
|
||||||
foreach($submenu->liste as $key2 => $val2) // $val['url','titre','level','enabled'=0|1|2,'target','mainmenu','leftmenu'
|
foreach($submenu->liste as $key2 => $val2) // $val['url','titre','level','enabled'=0|1|2,'target','mainmenu','leftmenu'
|
||||||
{
|
{
|
||||||
@ -235,7 +235,7 @@ class MenuManager
|
|||||||
$relurl2=preg_replace('/__LOGIN__/',$user->login,$relurl2);
|
$relurl2=preg_replace('/__LOGIN__/',$user->login,$relurl2);
|
||||||
$relurl2=preg_replace('/__USERID__/',$user->id,$relurl2);
|
$relurl2=preg_replace('/__USERID__/',$user->id,$relurl2);
|
||||||
//var_dump($val2);
|
//var_dump($val2);
|
||||||
print '<li'.($val2['level']==0?' data-role="list-divider"':'').'><a href="'.$relurl2.'">'.$val2['titre'].'</a></li>'."\n";
|
print '<li'.($val2['level']==0?' data-role="list-dividerxxx"':'').'><a href="'.$relurl2.'">'.$val2['titre'].'</a></li>'."\n";
|
||||||
}
|
}
|
||||||
//var_dump($submenu);
|
//var_dump($submenu);
|
||||||
print '</ul>';
|
print '</ul>';
|
||||||
|
|||||||
@ -74,7 +74,7 @@ class doc_generic_order_odt extends ModelePDFCommandes
|
|||||||
$this->option_modereg = 0; // Affiche mode reglement
|
$this->option_modereg = 0; // Affiche mode reglement
|
||||||
$this->option_condreg = 0; // Affiche conditions reglement
|
$this->option_condreg = 0; // Affiche conditions reglement
|
||||||
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
||||||
$this->option_multilang = 0; // Dispo en plusieurs langues
|
$this->option_multilang = 1; // Dispo en plusieurs langues
|
||||||
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
||||||
$this->option_credit_note = 0; // Support credit notes
|
$this->option_credit_note = 0; // Support credit notes
|
||||||
$this->option_freetext = 1; // Support add of a personalised text
|
$this->option_freetext = 1; // Support add of a personalised text
|
||||||
@ -392,15 +392,22 @@ class doc_generic_order_odt extends ModelePDFCommandes
|
|||||||
|
|
||||||
// Open and load template
|
// Open and load template
|
||||||
require_once ODTPHP_PATH.'odf.php';
|
require_once ODTPHP_PATH.'odf.php';
|
||||||
$odfHandler = new odf(
|
try {
|
||||||
$srctemplatepath,
|
$odfHandler = new odf(
|
||||||
array(
|
$srctemplatepath,
|
||||||
'PATH_TO_TMP' => $conf->commande->dir_temp,
|
array(
|
||||||
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
'PATH_TO_TMP' => $conf->commande->dir_temp,
|
||||||
'DELIMITER_LEFT' => '{',
|
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
||||||
'DELIMITER_RIGHT' => '}'
|
'DELIMITER_LEFT' => '{',
|
||||||
)
|
'DELIMITER_RIGHT' => '}'
|
||||||
);
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
catch(Exception $e)
|
||||||
|
{
|
||||||
|
$this->error=$e->getMessage();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
// After construction $odfHandler->contentXml contains content and
|
// After construction $odfHandler->contentXml contains content and
|
||||||
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
||||||
// [!-- BEGIN lines --]*[!-- END lines --]
|
// [!-- BEGIN lines --]*[!-- END lines --]
|
||||||
@ -535,6 +542,18 @@ class doc_generic_order_odt extends ModelePDFCommandes
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Replace labels translated
|
||||||
|
$tmparray=$outputlangs->get_translations_for_substitutions();
|
||||||
|
foreach($tmparray as $key=>$value)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$odfHandler->setVars($key, $value, true, 'UTF-8');
|
||||||
|
}
|
||||||
|
catch(OdfException $e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Call the beforeODTSave hook
|
// Call the beforeODTSave hook
|
||||||
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
||||||
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
||||||
|
|||||||
@ -74,7 +74,7 @@ class doc_generic_shipment_odt extends ModelePdfExpedition
|
|||||||
$this->option_modereg = 0; // Affiche mode reglement
|
$this->option_modereg = 0; // Affiche mode reglement
|
||||||
$this->option_condreg = 0; // Affiche conditions reglement
|
$this->option_condreg = 0; // Affiche conditions reglement
|
||||||
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
||||||
$this->option_multilang = 0; // Dispo en plusieurs langues
|
$this->option_multilang = 1; // Dispo en plusieurs langues
|
||||||
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
||||||
$this->option_credit_note = 0; // Support credit notes
|
$this->option_credit_note = 0; // Support credit notes
|
||||||
$this->option_freetext = 1; // Support add of a personalised text
|
$this->option_freetext = 1; // Support add of a personalised text
|
||||||
@ -127,7 +127,7 @@ class doc_generic_shipment_odt extends ModelePdfExpedition
|
|||||||
'object_total_localtax2'=>price2num($object->total_localtax2),
|
'object_total_localtax2'=>price2num($object->total_localtax2),
|
||||||
'object_total_ttc'=>price2num($object->total_ttc),
|
'object_total_ttc'=>price2num($object->total_ttc),
|
||||||
'object_total_discount_ht' => price2num($object->getTotalDiscount()),
|
'object_total_discount_ht' => price2num($object->getTotalDiscount()),
|
||||||
|
|
||||||
'object_vatrate'=>vatrate($object->tva),
|
'object_vatrate'=>vatrate($object->tva),
|
||||||
'object_note_private'=>$object->note,
|
'object_note_private'=>$object->note,
|
||||||
'object_note'=>$object->note_public,
|
'object_note'=>$object->note_public,
|
||||||
@ -392,15 +392,22 @@ class doc_generic_shipment_odt extends ModelePdfExpedition
|
|||||||
|
|
||||||
// Open and load template
|
// Open and load template
|
||||||
require_once ODTPHP_PATH.'odf.php';
|
require_once ODTPHP_PATH.'odf.php';
|
||||||
$odfHandler = new odf(
|
try {
|
||||||
$srctemplatepath,
|
$odfHandler = new odf(
|
||||||
array(
|
$srctemplatepath,
|
||||||
'PATH_TO_TMP' => $conf->expedition->dir_temp,
|
array(
|
||||||
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
'PATH_TO_TMP' => $conf->expedition->dir_temp,
|
||||||
'DELIMITER_LEFT' => '{',
|
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
||||||
'DELIMITER_RIGHT' => '}'
|
'DELIMITER_LEFT' => '{',
|
||||||
)
|
'DELIMITER_RIGHT' => '}'
|
||||||
);
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
catch(Exception $e)
|
||||||
|
{
|
||||||
|
$this->error=$e->getMessage();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
// After construction $odfHandler->contentXml contains content and
|
// After construction $odfHandler->contentXml contains content and
|
||||||
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
||||||
// [!-- BEGIN lines --]*[!-- END lines --]
|
// [!-- BEGIN lines --]*[!-- END lines --]
|
||||||
@ -535,6 +542,18 @@ class doc_generic_shipment_odt extends ModelePdfExpedition
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Replace labels translated
|
||||||
|
$tmparray=$outputlangs->get_translations_for_substitutions();
|
||||||
|
foreach($tmparray as $key=>$value)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$odfHandler->setVars($key, $value, true, 'UTF-8');
|
||||||
|
}
|
||||||
|
catch(OdfException $e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Call the beforeODTSave hook
|
// Call the beforeODTSave hook
|
||||||
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
||||||
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
||||||
|
|||||||
@ -524,14 +524,14 @@ class pdf_merou extends ModelePdfExpedition
|
|||||||
|
|
||||||
if ($object->client->code_client)
|
if ($object->client->code_client)
|
||||||
{
|
{
|
||||||
$Yoff+=7;
|
$Yoff+=3;
|
||||||
$posy=$Yoff;
|
$posy=$Yoff;
|
||||||
$pdf->SetXY(100,$posy);
|
$pdf->SetXY(100,$posy);
|
||||||
$pdf->SetTextColor(0,0,60);
|
$pdf->SetTextColor(0,0,0);
|
||||||
$pdf->MultiCell(100, 3, $outputlangs->transnoentities("CustomerCode")." : " . $outputlangs->transnoentities($object->client->code_client), '', 'R');
|
$pdf->MultiCell(100, 3, $outputlangs->transnoentities("CustomerCode")." : " . $outputlangs->transnoentities($object->client->code_client), '', 'R');
|
||||||
}
|
}
|
||||||
|
|
||||||
//Date Expedition
|
// Date Expedition
|
||||||
$Yoff = $Yoff+7;
|
$Yoff = $Yoff+7;
|
||||||
$pdf->SetXY($blSocX-80,$blSocY+20);
|
$pdf->SetXY($blSocX-80,$blSocY+20);
|
||||||
$pdf->SetFont('','B', $default_font_size - 2);
|
$pdf->SetFont('','B', $default_font_size - 2);
|
||||||
|
|||||||
@ -74,7 +74,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures
|
|||||||
$this->option_modereg = 0; // Affiche mode reglement
|
$this->option_modereg = 0; // Affiche mode reglement
|
||||||
$this->option_condreg = 0; // Affiche conditions reglement
|
$this->option_condreg = 0; // Affiche conditions reglement
|
||||||
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
||||||
$this->option_multilang = 0; // Dispo en plusieurs langues
|
$this->option_multilang = 1; // Dispo en plusieurs langues
|
||||||
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
||||||
$this->option_credit_note = 0; // Support credit notes
|
$this->option_credit_note = 0; // Support credit notes
|
||||||
$this->option_freetext = 1; // Support add of a personalised text
|
$this->option_freetext = 1; // Support add of a personalised text
|
||||||
@ -423,15 +423,22 @@ class doc_generic_invoice_odt extends ModelePDFFactures
|
|||||||
|
|
||||||
// Open and load template
|
// Open and load template
|
||||||
require_once ODTPHP_PATH.'odf.php';
|
require_once ODTPHP_PATH.'odf.php';
|
||||||
$odfHandler = new odf(
|
try {
|
||||||
$srctemplatepath,
|
$odfHandler = new odf(
|
||||||
array(
|
$srctemplatepath,
|
||||||
'PATH_TO_TMP' => $conf->facture->dir_temp,
|
array(
|
||||||
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
'PATH_TO_TMP' => $conf->facture->dir_temp,
|
||||||
'DELIMITER_LEFT' => '{',
|
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
||||||
'DELIMITER_RIGHT' => '}'
|
'DELIMITER_LEFT' => '{',
|
||||||
)
|
'DELIMITER_RIGHT' => '}'
|
||||||
);
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
catch(Exception $e)
|
||||||
|
{
|
||||||
|
$this->error=$e->getMessage();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
// After construction $odfHandler->contentXml contains content and
|
// After construction $odfHandler->contentXml contains content and
|
||||||
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
||||||
// [!-- BEGIN lines --]*[!-- END lines --]
|
// [!-- BEGIN lines --]*[!-- END lines --]
|
||||||
@ -515,6 +522,18 @@ class doc_generic_invoice_odt extends ModelePDFFactures
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Replace labels translated
|
||||||
|
$tmparray=$outputlangs->get_translations_for_substitutions();
|
||||||
|
foreach($tmparray as $key=>$value)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$odfHandler->setVars($key, $value, true, 'UTF-8');
|
||||||
|
}
|
||||||
|
catch(OdfException $e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Call the beforeODTSave hook
|
// Call the beforeODTSave hook
|
||||||
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
||||||
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
||||||
|
|||||||
@ -90,7 +90,7 @@ class doc_generic_project_odt extends ModelePDFProjects
|
|||||||
$this->option_modereg = 0; // Affiche mode reglement
|
$this->option_modereg = 0; // Affiche mode reglement
|
||||||
$this->option_condreg = 0; // Affiche conditions reglement
|
$this->option_condreg = 0; // Affiche conditions reglement
|
||||||
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
||||||
$this->option_multilang = 0; // Dispo en plusieurs langues
|
$this->option_multilang = 1; // Dispo en plusieurs langues
|
||||||
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
||||||
$this->option_credit_note = 0; // Support credit notes
|
$this->option_credit_note = 0; // Support credit notes
|
||||||
$this->option_freetext = 1; // Support add of a personalised text
|
$this->option_freetext = 1; // Support add of a personalised text
|
||||||
@ -392,7 +392,7 @@ class doc_generic_project_odt extends ModelePDFProjects
|
|||||||
}
|
}
|
||||||
$hookmanager->initHooks(array('odtgeneration'));
|
$hookmanager->initHooks(array('odtgeneration'));
|
||||||
global $action;
|
global $action;
|
||||||
|
|
||||||
if (! is_object($outputlangs)) $outputlangs=$langs;
|
if (! is_object($outputlangs)) $outputlangs=$langs;
|
||||||
$sav_charset_output=$outputlangs->charset_output;
|
$sav_charset_output=$outputlangs->charset_output;
|
||||||
$outputlangs->charset_output='UTF-8';
|
$outputlangs->charset_output='UTF-8';
|
||||||
@ -469,15 +469,22 @@ class doc_generic_project_odt extends ModelePDFProjects
|
|||||||
|
|
||||||
// Open and load template
|
// Open and load template
|
||||||
require_once ODTPHP_PATH.'odf.php';
|
require_once ODTPHP_PATH.'odf.php';
|
||||||
$odfHandler = new odf(
|
try {
|
||||||
$srctemplatepath,
|
$odfHandler = new odf(
|
||||||
array(
|
$srctemplatepath,
|
||||||
'PATH_TO_TMP' => $conf->projet->dir_temp,
|
array(
|
||||||
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
'PATH_TO_TMP' => $conf->projet->dir_temp,
|
||||||
'DELIMITER_LEFT' => '{',
|
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
||||||
'DELIMITER_RIGHT' => '}'
|
'DELIMITER_LEFT' => '{',
|
||||||
)
|
'DELIMITER_RIGHT' => '}'
|
||||||
);
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
catch(Exception $e)
|
||||||
|
{
|
||||||
|
$this->error=$e->getMessage();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
// After construction $odfHandler->contentXml contains content and
|
// After construction $odfHandler->contentXml contains content and
|
||||||
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
||||||
// [!-- BEGIN lines --]*[!-- END lines --]
|
// [!-- BEGIN lines --]*[!-- END lines --]
|
||||||
@ -586,7 +593,7 @@ class doc_generic_project_odt extends ModelePDFProjects
|
|||||||
if (!empty($object->fk_soc)) $socid = $object->fk_soc;
|
if (!empty($object->fk_soc)) $socid = $object->fk_soc;
|
||||||
|
|
||||||
$tasksarray=$taskstatic->getTasksArray(0, 0, $object->id, $socid, 0);
|
$tasksarray=$taskstatic->getTasksArray(0, 0, $object->id, $socid, 0);
|
||||||
|
|
||||||
|
|
||||||
foreach ($tasksarray as $task)
|
foreach ($tasksarray as $task)
|
||||||
{
|
{
|
||||||
@ -910,14 +917,14 @@ class doc_generic_project_odt extends ModelePDFProjects
|
|||||||
{
|
{
|
||||||
$ref_array=array();
|
$ref_array=array();
|
||||||
$ref_array['type']=$langs->trans($classname);
|
$ref_array['type']=$langs->trans($classname);
|
||||||
|
|
||||||
$element = new $classname($this->db);
|
$element = new $classname($this->db);
|
||||||
$element->fetch($elementarray[$i]);
|
$element->fetch($elementarray[$i]);
|
||||||
$element->fetch_thirdparty();
|
$element->fetch_thirdparty();
|
||||||
|
|
||||||
//Ref object
|
//Ref object
|
||||||
$ref_array['ref']=$element->ref;
|
$ref_array['ref']=$element->ref;
|
||||||
|
|
||||||
//Date object
|
//Date object
|
||||||
$dateref=$element->date;
|
$dateref=$element->date;
|
||||||
if (empty($dateref)) $dateref=$element->datep;
|
if (empty($dateref)) $dateref=$element->datep;
|
||||||
@ -977,6 +984,18 @@ class doc_generic_project_odt extends ModelePDFProjects
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Replace labels translated
|
||||||
|
$tmparray=$outputlangs->get_translations_for_substitutions();
|
||||||
|
foreach($tmparray as $key=>$value)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$odfHandler->setVars($key, $value, true, 'UTF-8');
|
||||||
|
}
|
||||||
|
catch(OdfException $e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Call the beforeODTSave hook
|
// Call the beforeODTSave hook
|
||||||
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
||||||
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
||||||
@ -998,7 +1017,7 @@ class doc_generic_project_odt extends ModelePDFProjects
|
|||||||
$this->error=$e->getMessage();
|
$this->error=$e->getMessage();
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! empty($conf->global->MAIN_UMASK))
|
if (! empty($conf->global->MAIN_UMASK))
|
||||||
@chmod($file, octdec($conf->global->MAIN_UMASK));
|
@chmod($file, octdec($conf->global->MAIN_UMASK));
|
||||||
|
|||||||
@ -425,7 +425,7 @@ class doc_generic_task_odt extends ModelePDFTask
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (file_exists($dir))
|
if (file_exists($dir))
|
||||||
{
|
{
|
||||||
@ -455,15 +455,22 @@ class doc_generic_task_odt extends ModelePDFTask
|
|||||||
|
|
||||||
// Open and load template
|
// Open and load template
|
||||||
require_once ODTPHP_PATH.'odf.php';
|
require_once ODTPHP_PATH.'odf.php';
|
||||||
$odfHandler = new odf(
|
try {
|
||||||
$srctemplatepath,
|
$odfHandler = new odf(
|
||||||
array(
|
$srctemplatepath,
|
||||||
'PATH_TO_TMP' => $conf->projet->dir_temp,
|
array(
|
||||||
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
'PATH_TO_TMP' => $conf->projet->dir_temp,
|
||||||
'DELIMITER_LEFT' => '{',
|
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
||||||
'DELIMITER_RIGHT' => '}'
|
'DELIMITER_LEFT' => '{',
|
||||||
)
|
'DELIMITER_RIGHT' => '}'
|
||||||
);
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
catch(Exception $e)
|
||||||
|
{
|
||||||
|
$this->error=$e->getMessage();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
// After construction $odfHandler->contentXml contains content and
|
// After construction $odfHandler->contentXml contains content and
|
||||||
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
||||||
// [!-- BEGIN lines --]*[!-- END lines --]
|
// [!-- BEGIN lines --]*[!-- END lines --]
|
||||||
@ -677,7 +684,7 @@ class doc_generic_task_odt extends ModelePDFTask
|
|||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
$this->db->free($resql);
|
$this->db->free($resql);
|
||||||
|
|
||||||
$odfHandler->mergeSegment($listlinestasktime);
|
$odfHandler->mergeSegment($listlinestasktime);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -711,7 +718,7 @@ class doc_generic_task_odt extends ModelePDFTask
|
|||||||
//$listlines->merge();
|
//$listlines->merge();
|
||||||
|
|
||||||
$odfHandler->mergeSegment($listtasksfiles);
|
$odfHandler->mergeSegment($listtasksfiles);
|
||||||
|
|
||||||
}
|
}
|
||||||
catch(OdfException $e)
|
catch(OdfException $e)
|
||||||
{
|
{
|
||||||
@ -793,7 +800,7 @@ class doc_generic_task_odt extends ModelePDFTask
|
|||||||
$contact['fullname']=$objectdetail->getFullName($outputlangs,1);
|
$contact['fullname']=$objectdetail->getFullName($outputlangs,1);
|
||||||
|
|
||||||
$tmparray=$this->get_substitutionarray_project_contacts($contact,$outputlangs);
|
$tmparray=$this->get_substitutionarray_project_contacts($contact,$outputlangs);
|
||||||
|
|
||||||
foreach($tmparray as $key => $val)
|
foreach($tmparray as $key => $val)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|||||||
@ -74,7 +74,7 @@ class doc_generic_proposal_odt extends ModelePDFPropales
|
|||||||
$this->option_modereg = 0; // Affiche mode reglement
|
$this->option_modereg = 0; // Affiche mode reglement
|
||||||
$this->option_condreg = 0; // Affiche conditions reglement
|
$this->option_condreg = 0; // Affiche conditions reglement
|
||||||
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
$this->option_codeproduitservice = 0; // Affiche code produit-service
|
||||||
$this->option_multilang = 0; // Dispo en plusieurs langues
|
$this->option_multilang = 1; // Dispo en plusieurs langues
|
||||||
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
$this->option_escompte = 0; // Affiche si il y a eu escompte
|
||||||
$this->option_credit_note = 0; // Support credit notes
|
$this->option_credit_note = 0; // Support credit notes
|
||||||
$this->option_freetext = 1; // Support add of a personalised text
|
$this->option_freetext = 1; // Support add of a personalised text
|
||||||
@ -278,9 +278,9 @@ class doc_generic_proposal_odt extends ModelePDFPropales
|
|||||||
$newfiletmp=preg_replace('/\.od(t|s)/i','',$newfile);
|
$newfiletmp=preg_replace('/\.od(t|s)/i','',$newfile);
|
||||||
$newfiletmp=preg_replace('/template_/i','',$newfiletmp);
|
$newfiletmp=preg_replace('/template_/i','',$newfiletmp);
|
||||||
$newfiletmp=preg_replace('/modele_/i','',$newfiletmp);
|
$newfiletmp=preg_replace('/modele_/i','',$newfiletmp);
|
||||||
|
|
||||||
$newfiletmp=$objectref.'_'.$newfiletmp;
|
$newfiletmp=$objectref.'_'.$newfiletmp;
|
||||||
|
|
||||||
// Get extension (ods or odt)
|
// Get extension (ods or odt)
|
||||||
$newfileformat=substr($newfile, strrpos($newfile, '.')+1);
|
$newfileformat=substr($newfile, strrpos($newfile, '.')+1);
|
||||||
if ( ! empty($conf->global->MAIN_DOC_USE_TIMING))
|
if ( ! empty($conf->global->MAIN_DOC_USE_TIMING))
|
||||||
@ -344,15 +344,22 @@ class doc_generic_proposal_odt extends ModelePDFPropales
|
|||||||
|
|
||||||
// Open and load template
|
// Open and load template
|
||||||
require_once ODTPHP_PATH.'odf.php';
|
require_once ODTPHP_PATH.'odf.php';
|
||||||
$odfHandler = new odf(
|
try {
|
||||||
$srctemplatepath,
|
$odfHandler = new odf(
|
||||||
array(
|
$srctemplatepath,
|
||||||
'PATH_TO_TMP' => $conf->propal->dir_temp,
|
array(
|
||||||
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
'PATH_TO_TMP' => $conf->propal->dir_temp,
|
||||||
'DELIMITER_LEFT' => '{',
|
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
||||||
'DELIMITER_RIGHT' => '}'
|
'DELIMITER_LEFT' => '{',
|
||||||
)
|
'DELIMITER_RIGHT' => '}'
|
||||||
);
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
catch(Exception $e)
|
||||||
|
{
|
||||||
|
$this->error=$e->getMessage();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
// After construction $odfHandler->contentXml contains content and
|
// After construction $odfHandler->contentXml contains content and
|
||||||
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
// [!-- BEGIN row.lines --]*[!-- END row.lines --] has been replaced by
|
||||||
// [!-- BEGIN lines --]*[!-- END lines --]
|
// [!-- BEGIN lines --]*[!-- END lines --]
|
||||||
@ -488,6 +495,18 @@ class doc_generic_proposal_odt extends ModelePDFPropales
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Replace labels translated
|
||||||
|
$tmparray=$outputlangs->get_translations_for_substitutions();
|
||||||
|
foreach($tmparray as $key=>$value)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$odfHandler->setVars($key, $value, true, 'UTF-8');
|
||||||
|
}
|
||||||
|
catch(OdfException $e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Call the beforeODTSave hook
|
// Call the beforeODTSave hook
|
||||||
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
||||||
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
||||||
@ -508,7 +527,7 @@ class doc_generic_proposal_odt extends ModelePDFPropales
|
|||||||
$this->error=$e->getMessage();
|
$this->error=$e->getMessage();
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! empty($conf->global->MAIN_UMASK))
|
if (! empty($conf->global->MAIN_UMASK))
|
||||||
@chmod($file, octdec($conf->global->MAIN_UMASK));
|
@chmod($file, octdec($conf->global->MAIN_UMASK));
|
||||||
|
|||||||
@ -315,7 +315,7 @@ class pdf_azur extends ModelePDFPropales
|
|||||||
$posYAfterDescription=0;
|
$posYAfterDescription=0;
|
||||||
|
|
||||||
// We start with Photo of product line
|
// We start with Photo of product line
|
||||||
if (($curY + $imglinesize['height']) > ($this->page_hauteur-($heightforfooter+$heightforfreetext+$heightforinfotot))) // If photo to high, we moved completely on new page
|
if (isset($imglinesize['width']) && isset($imglinesize['height']) && ($curY + $imglinesize['height']) > ($this->page_hauteur-($heightforfooter+$heightforfreetext+$heightforinfotot))) // If photo too high, we moved completely on new page
|
||||||
{
|
{
|
||||||
$pdf->AddPage('','',true);
|
$pdf->AddPage('','',true);
|
||||||
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
if (! empty($tplidx)) $pdf->useTemplate($tplidx);
|
||||||
|
|||||||
@ -236,16 +236,22 @@ class doc_generic_odt extends ModeleThirdPartyDoc
|
|||||||
|
|
||||||
// Open and load template
|
// Open and load template
|
||||||
require_once ODTPHP_PATH.'odf.php';
|
require_once ODTPHP_PATH.'odf.php';
|
||||||
$odfHandler = new odf(
|
try {
|
||||||
$srctemplatepath,
|
$odfHandler = new odf(
|
||||||
array(
|
$srctemplatepath,
|
||||||
'PATH_TO_TMP' => $conf->societe->multidir_temp[$object->entity],
|
array(
|
||||||
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
'PATH_TO_TMP' => $conf->societe->multidir_temp[$object->entity],
|
||||||
'DELIMITER_LEFT' => '{',
|
'ZIP_PROXY' => 'PclZipProxy', // PhpZipProxy or PclZipProxy. Got "bad compression method" error when using PhpZipProxy.
|
||||||
'DELIMITER_RIGHT' => '}'
|
'DELIMITER_LEFT' => '{',
|
||||||
)
|
'DELIMITER_RIGHT' => '}'
|
||||||
);
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
catch(Exception $e)
|
||||||
|
{
|
||||||
|
$this->error=$e->getMessage();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
//print $odfHandler->__toString()."\n";
|
//print $odfHandler->__toString()."\n";
|
||||||
|
|
||||||
// Make substitutions into odt of user info
|
// Make substitutions into odt of user info
|
||||||
@ -319,6 +325,18 @@ class doc_generic_odt extends ModeleThirdPartyDoc
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Replace labels translated
|
||||||
|
$tmparray=$outputlangs->get_translations_for_substitutions();
|
||||||
|
foreach($tmparray as $key=>$value)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$odfHandler->setVars($key, $value, true, 'UTF-8');
|
||||||
|
}
|
||||||
|
catch(OdfException $e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Call the beforeODTSave hook
|
// Call the beforeODTSave hook
|
||||||
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
$parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
|
||||||
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
|
||||||
@ -339,7 +357,7 @@ class doc_generic_odt extends ModeleThirdPartyDoc
|
|||||||
$this->error=$e->getMessage();
|
$this->error=$e->getMessage();
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! empty($conf->global->MAIN_UMASK))
|
if (! empty($conf->global->MAIN_UMASK))
|
||||||
@chmod($file, octdec($conf->global->MAIN_UMASK));
|
@chmod($file, octdec($conf->global->MAIN_UMASK));
|
||||||
|
|||||||
@ -16,6 +16,8 @@
|
|||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*
|
*
|
||||||
* Javascript code to activate drag and drop on lines
|
* Javascript code to activate drag and drop on lines
|
||||||
|
* You can use this if you want to be abale to drag and drop rows of a table.
|
||||||
|
* You must add id="tablelines" ont table level tag and have count($object->lines) or count($taskarray) > 0
|
||||||
*/
|
*/
|
||||||
?>
|
?>
|
||||||
|
|
||||||
@ -26,6 +28,7 @@ $fk_element=$object->fk_element;
|
|||||||
$table_element_line=$object->table_element_line;
|
$table_element_line=$object->table_element_line;
|
||||||
$nboflines=(isset($object->lines)?count($object->lines):(isset($tasksarray)?count($tasksarray):0));
|
$nboflines=(isset($object->lines)?count($object->lines):(isset($tasksarray)?count($tasksarray):0));
|
||||||
$forcereloadpage=empty($conf->global->MAIN_FORCE_RELOAD_PAGE)?0:1;
|
$forcereloadpage=empty($conf->global->MAIN_FORCE_RELOAD_PAGE)?0:1;
|
||||||
|
$tagidfortablednd=(empty($tagidfortablednd)?'tablelines':$tagidfortablednd);
|
||||||
|
|
||||||
if (GETPOST('action') != 'editline' && $nboflines > 1) { ?>
|
if (GETPOST('action') != 'editline' && $nboflines > 1) { ?>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
@ -37,10 +40,10 @@ $(document).ready(function(){
|
|||||||
$(".tdlineupdown").css("background-repeat","no-repeat");
|
$(".tdlineupdown").css("background-repeat","no-repeat");
|
||||||
$(".tdlineupdown").css("background-position","center center");
|
$(".tdlineupdown").css("background-position","center center");
|
||||||
|
|
||||||
$("#tablelines").tableDnD({
|
$("#<?php echo $tagidfortablednd; ?>").tableDnD({
|
||||||
onDrop: function(table, row) {
|
onDrop: function(table, row) {
|
||||||
var reloadpage = "<?php echo $forcereloadpage; ?>";
|
var reloadpage = "<?php echo $forcereloadpage; ?>";
|
||||||
var roworder = cleanSerialize($("#tablelines").tableDnDSerialize());
|
var roworder = cleanSerialize($("#<?php echo $tagidfortablednd; ?>").tableDnDSerialize());
|
||||||
var table_element_line = "<?php echo $table_element_line; ?>";
|
var table_element_line = "<?php echo $table_element_line; ?>";
|
||||||
var fk_element = "<?php echo $fk_element; ?>";
|
var fk_element = "<?php echo $fk_element; ?>";
|
||||||
var element_id = "<?php echo $id; ?>";
|
var element_id = "<?php echo $id; ?>";
|
||||||
@ -55,7 +58,7 @@ $(document).ready(function(){
|
|||||||
if (reloadpage == 1) {
|
if (reloadpage == 1) {
|
||||||
location.href = '<?php echo $_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']; ?>';
|
location.href = '<?php echo $_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']; ?>';
|
||||||
} else {
|
} else {
|
||||||
$("#tablelines .drag").each(
|
$("#<?php echo $tagidfortablednd; ?> .drag").each(
|
||||||
function( intIndex ) {
|
function( intIndex ) {
|
||||||
$(this).removeClass("pair impair");
|
$(this).removeClass("pair impair");
|
||||||
if (intIndex % 2 == 0) $(this).addClass('impair');
|
if (intIndex % 2 == 0) $(this).addClass('impair');
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2010-2012 Regis Houssin <regis.houssin@capnetworks.com>
|
/* Copyright (C) 2010-2013 Regis Houssin <regis.houssin@capnetworks.com>
|
||||||
* Copyright (C) 2010-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2010-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
|
* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
|
||||||
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
|
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
|
||||||
@ -65,7 +65,7 @@
|
|||||||
{
|
{
|
||||||
if ($line->fk_product > 0) {
|
if ($line->fk_product > 0) {
|
||||||
|
|
||||||
echo $form->textwithtooltip($text,$description,3,'','',$i,0,($line->fk_parent_line?img_picto('', 'rightarrow'):''));
|
echo $form->textwithtooltip($text,$description,3,'','',$i,0,(!empty($line->fk_parent_line)?img_picto('', 'rightarrow'):''));
|
||||||
|
|
||||||
// Show range
|
// Show range
|
||||||
echo get_date_range($line->date_start, $line->date_end);
|
echo get_date_range($line->date_start, $line->date_end);
|
||||||
@ -78,14 +78,14 @@
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
if (! empty($line->fk_parent_line)) echo img_picto('', 'rightarrow');
|
|
||||||
if ($type==1) $text = img_object($langs->trans('Service'),'service');
|
if ($type==1) $text = img_object($langs->trans('Service'),'service');
|
||||||
else $text = img_object($langs->trans('Product'),'product');
|
else $text = img_object($langs->trans('Product'),'product');
|
||||||
|
|
||||||
if (! empty($line->label)) {
|
if (! empty($line->label)) {
|
||||||
$text.= ' <strong>'.$line->label.'</strong>';
|
$text.= ' <strong>'.$line->label.'</strong>';
|
||||||
echo $form->textwithtooltip($text,dol_htmlentitiesbr($line->description),3,'','',$i,0,($line->fk_parent_line?img_picto('', 'rightarrow'):''));
|
echo $form->textwithtooltip($text,dol_htmlentitiesbr($line->description),3,'','',$i,0,(!empty($line->fk_parent_line)?img_picto('', 'rightarrow'):''));
|
||||||
} else {
|
} else {
|
||||||
|
if (! empty($line->fk_parent_line)) echo img_picto('', 'rightarrow');
|
||||||
echo $text.' '.dol_htmlentitiesbr($line->description);
|
echo $text.' '.dol_htmlentitiesbr($line->description);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -51,9 +51,9 @@ $langs->load('propal');
|
|||||||
|
|
||||||
$origin = GETPOST('origin','alpha')?GETPOST('origin','alpha'):'expedition'; // Example: commande, propal
|
$origin = GETPOST('origin','alpha')?GETPOST('origin','alpha'):'expedition'; // Example: commande, propal
|
||||||
$origin_id = GETPOST('id','int')?GETPOST('id','int'):'';
|
$origin_id = GETPOST('id','int')?GETPOST('id','int'):'';
|
||||||
|
$id = $origin_id;
|
||||||
if (empty($origin_id)) $origin_id = GETPOST('origin_id','int'); // Id of order or propal
|
if (empty($origin_id)) $origin_id = GETPOST('origin_id','int'); // Id of order or propal
|
||||||
if (empty($origin_id)) $origin_id = GETPOST('object_id','int'); // Id of order or propal
|
if (empty($origin_id)) $origin_id = GETPOST('object_id','int'); // Id of order or propal
|
||||||
$id = $origin_id;
|
|
||||||
$ref=GETPOST('ref','alpha');
|
$ref=GETPOST('ref','alpha');
|
||||||
|
|
||||||
// Security check
|
// Security check
|
||||||
@ -70,11 +70,6 @@ $hidedesc = (GETPOST('hidedesc','int') ? GETPOST('hidedesc','int') : (! empty(
|
|||||||
$hideref = (GETPOST('hideref','int') ? GETPOST('hideref','int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0));
|
$hideref = (GETPOST('hideref','int') ? GETPOST('hideref','int') : (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0));
|
||||||
|
|
||||||
$object = new Expedition($db);
|
$object = new Expedition($db);
|
||||||
// Load object
|
|
||||||
if ($id > 0 || ! empty($ref))
|
|
||||||
{
|
|
||||||
$ret=$object->fetch($id, $ref);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Load object
|
// Load object
|
||||||
if ($id > 0 || ! empty($ref))
|
if ($id > 0 || ! empty($ref))
|
||||||
@ -95,8 +90,6 @@ if ($action == 'add')
|
|||||||
{
|
{
|
||||||
$error=0;
|
$error=0;
|
||||||
|
|
||||||
$object = new Expedition($db);
|
|
||||||
|
|
||||||
$db->begin();
|
$db->begin();
|
||||||
|
|
||||||
$object->note = GETPOST('note','alpha');
|
$object->note = GETPOST('note','alpha');
|
||||||
@ -898,7 +891,7 @@ if ($action == 'create')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else if ($id || $ref)
|
||||||
/* *************************************************************************** */
|
/* *************************************************************************** */
|
||||||
/* */
|
/* */
|
||||||
/* Edit and view mode */
|
/* Edit and view mode */
|
||||||
|
|||||||
@ -145,30 +145,33 @@ if (empty($dolibarr_main_data_root))
|
|||||||
define('DOL_CLASS_PATH', 'class/'); // Filesystem path to class dir (defined only for some code that want to be compatible with old versions without this parameter)
|
define('DOL_CLASS_PATH', 'class/'); // Filesystem path to class dir (defined only for some code that want to be compatible with old versions without this parameter)
|
||||||
define('DOL_DATA_ROOT', $dolibarr_main_data_root); // Filesystem data (documents)
|
define('DOL_DATA_ROOT', $dolibarr_main_data_root); // Filesystem data (documents)
|
||||||
define('DOL_DOCUMENT_ROOT', $dolibarr_main_document_root); // Filesystem core php (htdocs)
|
define('DOL_DOCUMENT_ROOT', $dolibarr_main_document_root); // Filesystem core php (htdocs)
|
||||||
// Try to autodetec DOL_MAIN_URL_ROOT and DOL_URL_ROOT.
|
// Try to autodetect DOL_MAIN_URL_ROOT and DOL_URL_ROOT.
|
||||||
// Note: autodetect works only in case 1, 2, 3 and 4 of phpunit test CoreTest.php. For case 5, 6, only setting value into conf.php will works.
|
// Note: autodetect works only in case 1, 2, 3 and 4 of phpunit test CoreTest.php. For case 5, 6, only setting value into conf.php will works.
|
||||||
$tmp='';
|
$tmp='';
|
||||||
$found=0;
|
$found=0;
|
||||||
$real_dolibarr_main_document_root=str_replace('\\','/',realpath($dolibarr_main_document_root)); // A) Value found into config file, to say where are store htdocs files. Ex: C:/xxx/dolibarr, C:/xxx/dolibarr/htdocs
|
$real_dolibarr_main_document_root=str_replace('\\','/',realpath($dolibarr_main_document_root)); // A) Value found into config file, to say where are store htdocs files. Ex: C:/xxx/dolibarr, C:/xxx/dolibarr/htdocs
|
||||||
$pathroot=$_SERVER["DOCUMENT_ROOT"]; // B) Value reported by web server setup, to say where is root of web server instance. Ex: C:/xxx/dolibarr, C:/xxx/dolibarr/htdocs
|
$pathroot=$_SERVER["DOCUMENT_ROOT"]; // B) Value reported by web server setup, to say where is root of web server instance. Ex: C:/xxx/dolibarr, C:/xxx/dolibarr/htdocs
|
||||||
$paths=explode('/',str_replace('\\','/',$_SERVER["SCRIPT_NAME"])); // C) Value reported by web server, to say full path on filesystem of a file. Ex: /dolibarr/htdocs/admin/system/phpinfo.php
|
$paths=explode('/',str_replace('\\','/',$_SERVER["SCRIPT_NAME"])); // C) Value reported by web server, to say full path on filesystem of a file. Ex: /dolibarr/htdocs/admin/system/phpinfo.php
|
||||||
|
// Try to detect if $_SERVER["DOCUMENT_ROOT"]+start of $_SERVER["SCRIPT_NAME"] is $dolibarr_main_document_root. If yes, relative url to add before dol files is this start part.
|
||||||
$concatpath='';
|
$concatpath='';
|
||||||
foreach($paths as $tmppath) // We check to find (B+start of C)=A
|
foreach($paths as $tmppath) // We check to find (B+start of C)=A
|
||||||
{
|
{
|
||||||
if ($tmppath) $concatpath.='/'.$tmppath;
|
if (empty($tmppath)) continue;
|
||||||
|
$concatpath.='/'.$tmppath;
|
||||||
|
//if ($tmppath) $concatpath.='/'.$tmppath;
|
||||||
//print $_SERVER["SCRIPT_NAME"].'-'.$pathroot.'-'.$concatpath.'-'.$real_dolibarr_main_document_root.'-'.realpath($pathroot.$concatpath).'<br>';
|
//print $_SERVER["SCRIPT_NAME"].'-'.$pathroot.'-'.$concatpath.'-'.$real_dolibarr_main_document_root.'-'.realpath($pathroot.$concatpath).'<br>';
|
||||||
if ($real_dolibarr_main_document_root == @realpath($pathroot.$concatpath)) // @ avoid warning when safe_mode is on.
|
if ($real_dolibarr_main_document_root == @realpath($pathroot.$concatpath)) // @ avoid warning when safe_mode is on.
|
||||||
{
|
{
|
||||||
$tmp3=$concatpath;
|
//print "Found relative url = ".$concatpath;
|
||||||
//print "Found relative url = ".$tmp3;
|
$tmp3=$concatpath;
|
||||||
$found=1;
|
$found=1;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
//else print "Not found yet for concatpath=".$concatpath."<br>\n";
|
//else print "Not found yet for concatpath=".$concatpath."<br>\n";
|
||||||
}
|
}
|
||||||
if (! $found) $tmp=$dolibarr_main_url_root; // If autodetect fails (Ie: when using apache alias that point outside default DOCUMENT_ROOT.
|
if (! $found) $tmp=$dolibarr_main_url_root; // If autodetect fails (Ie: when using apache alias that point outside default DOCUMENT_ROOT).
|
||||||
else $tmp='http'.(((empty($_SERVER["HTTPS"]) || $_SERVER["HTTPS"] != 'on') && (empty($_SERVER["SERVER_PORT"])||$_SERVER["SERVER_PORT"]!=443))?'':'s').'://'.$_SERVER["SERVER_NAME"].((empty($_SERVER["SERVER_PORT"])||$_SERVER["SERVER_PORT"]==80||$_SERVER["SERVER_PORT"]==443)?'':':'.$_SERVER["SERVER_PORT"]).($tmp3?(preg_match('/^\//',$tmp3)?'':'/').$tmp3:'');
|
else $tmp='http'.(((empty($_SERVER["HTTPS"]) || $_SERVER["HTTPS"] != 'on') && (empty($_SERVER["SERVER_PORT"])||$_SERVER["SERVER_PORT"]!=443))?'':'s').'://'.$_SERVER["SERVER_NAME"].((empty($_SERVER["SERVER_PORT"])||$_SERVER["SERVER_PORT"]==80||$_SERVER["SERVER_PORT"]==443)?'':':'.$_SERVER["SERVER_PORT"]).($tmp3?(preg_match('/^\//',$tmp3)?'':'/').$tmp3:'');
|
||||||
//print "tmp1=".$tmp1." tmp2=".$tmp2." tmp3=".$tmp3." tmp=".$tmp;
|
//print "tmp1=".$tmp1." tmp2=".$tmp2." tmp3=".$tmp3." tmp=".$tmp."\n";
|
||||||
if (! empty($dolibarr_main_force_https)) $tmp=preg_replace('/^http:/i','https:',$tmp);
|
if (! empty($dolibarr_main_force_https)) $tmp=preg_replace('/^http:/i','https:',$tmp);
|
||||||
define('DOL_MAIN_URL_ROOT', $tmp); // URL absolute root (https://sss/dolibarr, ...)
|
define('DOL_MAIN_URL_ROOT', $tmp); // URL absolute root (https://sss/dolibarr, ...)
|
||||||
$uri=preg_replace('/^http(s?):\/\//i','',constant('DOL_MAIN_URL_ROOT')); // $uri contains url without http*
|
$uri=preg_replace('/^http(s?):\/\//i','',constant('DOL_MAIN_URL_ROOT')); // $uri contains url without http*
|
||||||
@ -176,7 +179,7 @@ $suburi = strstr($uri, '/'); // $suburi contains url without domain:p
|
|||||||
if ($suburi == '/') $suburi = ''; // If $suburi is /, it is now ''
|
if ($suburi == '/') $suburi = ''; // If $suburi is /, it is now ''
|
||||||
define('DOL_URL_ROOT', $suburi); // URL relative root ('', '/dolibarr', ...)
|
define('DOL_URL_ROOT', $suburi); // URL relative root ('', '/dolibarr', ...)
|
||||||
|
|
||||||
//print DOL_URL_ROOT;
|
//print DOL_MAIN_URL_ROOT.'-'.DOL_URL_ROOT."\n";
|
||||||
|
|
||||||
// Define prefix MAIN_DB_PREFIX
|
// Define prefix MAIN_DB_PREFIX
|
||||||
define('MAIN_DB_PREFIX',$dolibarr_main_db_prefix);
|
define('MAIN_DB_PREFIX',$dolibarr_main_db_prefix);
|
||||||
|
|||||||
@ -636,7 +636,7 @@ class FactureFournisseur extends CommonInvoice
|
|||||||
else {
|
else {
|
||||||
$error++;
|
$error++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (! $error)
|
if (! $error)
|
||||||
{
|
{
|
||||||
// Delete linked object
|
// Delete linked object
|
||||||
@ -1153,6 +1153,7 @@ class FactureFournisseur extends CommonInvoice
|
|||||||
if ($type < 0) return -1;
|
if ($type < 0) return -1;
|
||||||
|
|
||||||
// Clean parameters
|
// Clean parameters
|
||||||
|
if (empty($vatrate)) $vatrate=0;
|
||||||
if (empty($txlocaltax1)) $txlocaltax1=0;
|
if (empty($txlocaltax1)) $txlocaltax1=0;
|
||||||
if (empty($txlocaltax2)) $txlocaltax2=0;
|
if (empty($txlocaltax2)) $txlocaltax2=0;
|
||||||
|
|
||||||
@ -1163,9 +1164,9 @@ class FactureFournisseur extends CommonInvoice
|
|||||||
// qty, pu, remise_percent et txtva
|
// qty, pu, remise_percent et txtva
|
||||||
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
// TRES IMPORTANT: C'est au moment de l'insertion ligne qu'on doit stocker
|
||||||
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
// la part ht, tva et ttc, et ce au niveau de la ligne qui a son propre taux tva.
|
||||||
|
|
||||||
$localtaxes_type=getLocalTaxesFromRate($vatrate,0,$this->thirdparty);
|
$localtaxes_type=getLocalTaxesFromRate($vatrate,0,$this->thirdparty);
|
||||||
|
|
||||||
$tabprice = calcul_price_total($qty, $pu, $remise_percent, $vatrate, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, $this->thirdparty,$localtaxes_type);
|
$tabprice = calcul_price_total($qty, $pu, $remise_percent, $vatrate, $txlocaltax1, $txlocaltax2, 0, $price_base_type, $info_bits, $type, $this->thirdparty,$localtaxes_type);
|
||||||
$total_ht = $tabprice[0];
|
$total_ht = $tabprice[0];
|
||||||
$total_tva = $tabprice[1];
|
$total_tva = $tabprice[1];
|
||||||
|
|||||||
@ -115,7 +115,7 @@ if ($action == 'setnum' && ! empty($_POST['num_paiement']))
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'setdate' && ! empty($_POST['datepday']))
|
if ($action == 'setdatep' && ! empty($_POST['datepday']))
|
||||||
{
|
{
|
||||||
$object->fetch($id);
|
$object->fetch($id);
|
||||||
$datepaye = dol_mktime(12, 0, 0, $_POST['datepmonth'], $_POST['datepday'], $_POST['datepyear']);
|
$datepaye = dol_mktime(12, 0, 0, $_POST['datepmonth'], $_POST['datepday'], $_POST['datepyear']);
|
||||||
@ -162,7 +162,7 @@ if ($result > 0)
|
|||||||
if ($action == 'delete')
|
if ($action == 'delete')
|
||||||
{
|
{
|
||||||
print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete');
|
print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -171,7 +171,7 @@ if ($result > 0)
|
|||||||
if ($action == 'valide')
|
if ($action == 'valide')
|
||||||
{
|
{
|
||||||
print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide');
|
print $form->formconfirm($_SERVER['PHP_SELF'].'?id='.$object->id, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
print '<table class="border" width="100%">';
|
print '<table class="border" width="100%">';
|
||||||
@ -195,7 +195,7 @@ if ($result > 0)
|
|||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
// Amount
|
// Amount
|
||||||
print '<tr><td valign="top" colspan="2">'.$langs->trans('Amount').'</td><td colspan="3">'.price($object->montant).' '.$langs->trans('Currency'.$conf->currency).'</td></tr>';
|
print '<tr><td valign="top" colspan="2">'.$langs->trans('Amount').'</td><td colspan="3">'.price($object->montant,'',$langs,0,0,-1,$conf->currency).'</td></tr>';
|
||||||
|
|
||||||
if (! empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))
|
if (! empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))
|
||||||
{
|
{
|
||||||
@ -218,9 +218,19 @@ if ($result > 0)
|
|||||||
print '<tr>';
|
print '<tr>';
|
||||||
print '<td colspan="2">'.$langs->trans('BankTransactionLine').'</td>';
|
print '<td colspan="2">'.$langs->trans('BankTransactionLine').'</td>';
|
||||||
print '<td colspan="3">';
|
print '<td colspan="3">';
|
||||||
print $bankline->getNomUrl(1,0,'showall');
|
print $bankline->getNomUrl(1,0,'showconciliated');
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
|
|
||||||
|
print '<tr>';
|
||||||
|
print '<td colspan="2">'.$langs->trans('BankAccount').'</td>';
|
||||||
|
print '<td colspan="3">';
|
||||||
|
$accountstatic=new Account($db);
|
||||||
|
$accountstatic->id=$bankline->fk_account;
|
||||||
|
$accountstatic->label=$bankline->bank_account_ref.' - '.$bankline->bank_account_label;
|
||||||
|
print $accountstatic->getNomUrl(0);
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -108,6 +108,10 @@ else
|
|||||||
{
|
{
|
||||||
$sql .= natural_search('p.ref', $sref);
|
$sql .= natural_search('p.ref', $sref);
|
||||||
}
|
}
|
||||||
|
if ($sRefSupplier)
|
||||||
|
{
|
||||||
|
$sql .= natural_search('ppf.ref_fourn', $sRefSupplier);
|
||||||
|
}
|
||||||
if ($snom)
|
if ($snom)
|
||||||
{
|
{
|
||||||
$sql .= natural_search('p.label', $snom);
|
$sql .= natural_search('p.label', $snom);
|
||||||
@ -174,7 +178,7 @@ if ($resql)
|
|||||||
print_liste_field_titre($langs->trans("Label"),"liste.php", "p.label",$param,"","",$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans("Label"),"liste.php", "p.label",$param,"","",$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans("Supplier"),"liste.php", "ppf.fk_soc",$param,"","",$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans("Supplier"),"liste.php", "ppf.fk_soc",$param,"","",$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans("BuyingPrice"),"liste.php", "ppf.price",$param,"",'align="right"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans("BuyingPrice"),"liste.php", "ppf.price",$param,"",'align="right"',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans("QtyMin"),"liste.php", "ppf.qty",$param,"",'align="right"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans("QtyMin"),"liste.php", "ppf.quantity",$param,"",'align="right"',$sortfield,$sortorder);
|
||||||
print_liste_field_titre($langs->trans("UnitPrice"),"liste.php", "ppf.unitprice",$param,"",'align="right"',$sortfield,$sortorder);
|
print_liste_field_titre($langs->trans("UnitPrice"),"liste.php", "ppf.unitprice",$param,"",'align="right"',$sortfield,$sortorder);
|
||||||
print "</tr>\n";
|
print "</tr>\n";
|
||||||
|
|
||||||
|
|||||||
@ -35,7 +35,7 @@ $ok = 0;
|
|||||||
$err=error_reporting();
|
$err=error_reporting();
|
||||||
error_reporting(0); // Disable all errors
|
error_reporting(0); // Disable all errors
|
||||||
//error_reporting(E_ALL);
|
//error_reporting(E_ALL);
|
||||||
@set_time_limit(300); // Need more than 240 on Windows 7/64
|
@set_time_limit(900); // Need 900 on some OS like Windows 7/64
|
||||||
error_reporting($err);
|
error_reporting($err);
|
||||||
|
|
||||||
$action=GETPOST('action');
|
$action=GETPOST('action');
|
||||||
|
|||||||
@ -299,5 +299,20 @@ ALTER TABLE llx_facture_fourn MODIFY COLUMN fk_mode_reglement integer NULL;
|
|||||||
ALTER TABLE llx_facture_fourn MODIFY COLUMN fk_cond_reglement integer NULL;
|
ALTER TABLE llx_facture_fourn MODIFY COLUMN fk_cond_reglement integer NULL;
|
||||||
|
|
||||||
|
|
||||||
insert into llx_c_action_trigger (rowid,code,label,description,elementtype,rang) values (9,'COMPANY_SENTBYMAIL','Mails sent from third party card','Executed when you send email from third party card','societe',1);
|
INSERT INTO llx_c_action_trigger (rowid,code,label,description,elementtype,rang) values (9,'COMPANY_SENTBYMAIL','Mails sent from third party card','Executed when you send email from third party card','societe',1);
|
||||||
|
|
||||||
|
|
||||||
|
ALTER TABLE llx_contratdet ADD column product_type integer DEFAULT 1 after total_ttc;
|
||||||
|
|
||||||
|
create table llx_contrat_extrafields
|
||||||
|
(
|
||||||
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
tms timestamp,
|
||||||
|
fk_object integer NOT NULL,
|
||||||
|
import_key varchar(14) -- import key
|
||||||
|
) ENGINE=innodb;
|
||||||
|
|
||||||
|
|
||||||
|
-- add outstanding bill
|
||||||
|
ALTER TABLE llx_societe ADD outstanding_limit double(24,8) DEFAULT NULL AFTER mode_reglement_supplier;
|
||||||
|
|
||||||
|
|||||||
@ -32,21 +32,23 @@ create table llx_actioncomm
|
|||||||
|
|
||||||
fk_action integer, -- type of action (optionnal link with llx_c_actioncomm or null)
|
fk_action integer, -- type of action (optionnal link with llx_c_actioncomm or null)
|
||||||
code varchar(32) NULL, -- code of action for automatic action
|
code varchar(32) NULL, -- code of action for automatic action
|
||||||
label varchar(128) NOT NULL, -- libelle de l'action
|
label varchar(128) NOT NULL, -- label/title of event
|
||||||
|
|
||||||
datec datetime, -- date creation
|
datec datetime, -- date creation
|
||||||
tms timestamp, -- date modif
|
tms timestamp, -- date modification
|
||||||
fk_user_author integer, -- id user qui a cree l'action
|
fk_user_author integer, -- user id of user that has created record
|
||||||
fk_user_mod integer, -- id dernier user qui a modifier l'action
|
fk_user_mod integer, -- user id of user that has modified record
|
||||||
|
|
||||||
fk_project integer,
|
fk_project integer,
|
||||||
fk_soc integer,
|
fk_soc integer,
|
||||||
fk_contact integer,
|
fk_contact integer,
|
||||||
fk_parent integer NOT NULL default 0,
|
fk_parent integer NOT NULL default 0,
|
||||||
|
|
||||||
fk_user_action integer, -- id de la personne qui doit effectuer l'action
|
fk_user_action integer, -- user id of owner of action (currently also user id of actor that must do action. In future, actors assigned to action will be an array into table llx_actioncomm_resources)
|
||||||
transparency integer, -- transparency (ical standard). used to say if people assigned to event are busy or not by event.
|
|
||||||
fk_user_done integer, -- id de la personne qui a effectue l'action
|
transparency integer, -- transparency (ical standard). used to say if people assigned to event are busy or not by event (in future version, this field is deprecated and will be stored into table llx_actioncomm_resources)
|
||||||
|
fk_user_done integer, -- user id of people that has made action (deprecated)
|
||||||
|
|
||||||
priority smallint,
|
priority smallint,
|
||||||
fulldayevent smallint NOT NULL default 0,
|
fulldayevent smallint NOT NULL default 0,
|
||||||
punctual smallint NOT NULL default 1,
|
punctual smallint NOT NULL default 1,
|
||||||
|
|||||||
20
htdocs/install/mysql/tables/llx_contrat_extrafields.key.sql
Normal file
20
htdocs/install/mysql/tables/llx_contrat_extrafields.key.sql
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
-- ===================================================================
|
||||||
|
-- Copyright (C) 2013 Charles-Fr BENKE <charles.fr@benke.fr>
|
||||||
|
--
|
||||||
|
-- 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 <http://www.gnu.org/licenses/>.
|
||||||
|
--
|
||||||
|
-- ===================================================================
|
||||||
|
|
||||||
|
|
||||||
|
ALTER TABLE llx_contrat_extrafields ADD INDEX idx_contrat_extrafields (fk_object);
|
||||||
25
htdocs/install/mysql/tables/llx_contrat_extrafields.sql
Normal file
25
htdocs/install/mysql/tables/llx_contrat_extrafields.sql
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
-- ========================================================================
|
||||||
|
-- Copyright (C) 2013 Charles-Fr BENKE <charles.fr@benke.fr>
|
||||||
|
--
|
||||||
|
-- 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 <http://www.gnu.org/licenses/>.
|
||||||
|
--
|
||||||
|
-- ========================================================================
|
||||||
|
|
||||||
|
create table llx_contrat_extrafields
|
||||||
|
(
|
||||||
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
tms timestamp,
|
||||||
|
fk_object integer NOT NULL,
|
||||||
|
import_key varchar(14) -- import key
|
||||||
|
) ENGINE=innodb;
|
||||||
@ -52,6 +52,7 @@ create table llx_contratdet
|
|||||||
total_localtax1 double(24,8) DEFAULT 0, -- Total Local tax 1 de la ligne
|
total_localtax1 double(24,8) DEFAULT 0, -- Total Local tax 1 de la ligne
|
||||||
total_localtax2 double(24,8) DEFAULT 0, -- Total Local tax 2 de la ligne
|
total_localtax2 double(24,8) DEFAULT 0, -- Total Local tax 2 de la ligne
|
||||||
total_ttc double(24,8) DEFAULT 0, -- Total TTC de la ligne toute quantite et incluant remise ligne et globale
|
total_ttc double(24,8) DEFAULT 0, -- Total TTC de la ligne toute quantite et incluant remise ligne et globale
|
||||||
|
product_type integer DEFAULT 1, -- Product type (1=service by default)
|
||||||
info_bits integer DEFAULT 0, -- TVA NPR ou non
|
info_bits integer DEFAULT 0, -- TVA NPR ou non
|
||||||
|
|
||||||
buy_price_ht double(24,8) DEFAULT NULL, -- buying price
|
buy_price_ht double(24,8) DEFAULT NULL, -- buying price
|
||||||
|
|||||||
@ -52,7 +52,7 @@ create table llx_societe
|
|||||||
fk_effectif integer DEFAULT 0, --
|
fk_effectif integer DEFAULT 0, --
|
||||||
fk_typent integer DEFAULT 0, --
|
fk_typent integer DEFAULT 0, --
|
||||||
fk_forme_juridique integer DEFAULT 0, -- juridical status
|
fk_forme_juridique integer DEFAULT 0, -- juridical status
|
||||||
fk_currency integer DEFAULT 0, -- currency
|
fk_currency integer DEFAULT 0, -- currency
|
||||||
siren varchar(128), -- IDProf1: siren or RCS for france
|
siren varchar(128), -- IDProf1: siren or RCS for france
|
||||||
siret varchar(128), -- IDProf2: siret for france
|
siret varchar(128), -- IDProf2: siret for france
|
||||||
ape varchar(128), -- IDProf3: code ape for france
|
ape varchar(128), -- IDProf3: code ape for france
|
||||||
@ -61,7 +61,7 @@ create table llx_societe
|
|||||||
idprof6 varchar(128), -- IDProf6: nu for france
|
idprof6 varchar(128), -- IDProf6: nu for france
|
||||||
tva_intra varchar(20), -- tva
|
tva_intra varchar(20), -- tva
|
||||||
capital real, -- capital de la societe
|
capital real, -- capital de la societe
|
||||||
fk_stcomm integer DEFAULT 0 NOT NULL, -- commercial statut
|
fk_stcomm integer DEFAULT 0 NOT NULL, -- commercial statut
|
||||||
note_private text, --
|
note_private text, --
|
||||||
note_public text, --
|
note_public text, --
|
||||||
prefix_comm varchar(5), -- prefix commercial
|
prefix_comm varchar(5), -- prefix commercial
|
||||||
@ -85,6 +85,7 @@ create table llx_societe
|
|||||||
barcode varchar(255), -- barcode
|
barcode varchar(255), -- barcode
|
||||||
fk_barcode_type integer NULL DEFAULT 0, -- barcode type
|
fk_barcode_type integer NULL DEFAULT 0, -- barcode type
|
||||||
price_level integer NULL, -- level of price for multiprices
|
price_level integer NULL, -- level of price for multiprices
|
||||||
|
outstanding_limit double(24,8) DEFAULT NULL, -- allowed outstanding limit
|
||||||
default_lang varchar(6), -- default language
|
default_lang varchar(6), -- default language
|
||||||
logo varchar(255),
|
logo varchar(255),
|
||||||
canvas varchar(32), -- type of canvas if used (null by default)
|
canvas varchar(32), -- type of canvas if used (null by default)
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - admin
|
# Dolibarr language file - Source file is en_US - admin
|
||||||
CHARSET=UTF-8
|
|
||||||
# Foundation=Foundation
|
# Foundation=Foundation
|
||||||
Version=النسخة
|
Version=النسخة
|
||||||
VersionProgram=نسخة البرنامج
|
VersionProgram=نسخة البرنامج
|
||||||
@ -72,6 +71,8 @@ Mask=قناع
|
|||||||
NextValue=قيمة المقبل
|
NextValue=قيمة المقبل
|
||||||
NextValueForInvoices=قيمة المقبل (الفواتير)
|
NextValueForInvoices=قيمة المقبل (الفواتير)
|
||||||
NextValueForCreditNotes=قيمة المقبل (مذكرات الائتمان)
|
NextValueForCreditNotes=قيمة المقبل (مذكرات الائتمان)
|
||||||
|
# NextValueForDeposit=Next value (deposit)
|
||||||
|
# NextValueForReplacements=Next value (replacements)
|
||||||
MustBeLowerThanPHPLimit=ملاحظة : PHP الخاصة بك في حدود كل من تحميل الملفات لحجم ٪ <b>ق</b> ق ٪ ، مهما كانت قيمة هذا المعلم هو
|
MustBeLowerThanPHPLimit=ملاحظة : PHP الخاصة بك في حدود كل من تحميل الملفات لحجم ٪ <b>ق</b> ق ٪ ، مهما كانت قيمة هذا المعلم هو
|
||||||
NoMaxSizeByPHPLimit=ملاحظة : لم يتم تحديد أي في التكوين الخاص بك PHP
|
NoMaxSizeByPHPLimit=ملاحظة : لم يتم تحديد أي في التكوين الخاص بك PHP
|
||||||
MaxSizeForUploadedFiles=الحجم الأقصى لتحميل الملفات (0 لمنع أي تحميل)
|
MaxSizeForUploadedFiles=الحجم الأقصى لتحميل الملفات (0 لمنع أي تحميل)
|
||||||
@ -487,6 +488,8 @@ Module2900Name= GeoIPMaxmind
|
|||||||
Module2900Desc= GeoIP التحويلات Maxmind القدرات
|
Module2900Desc= GeoIP التحويلات Maxmind القدرات
|
||||||
Module5000Name=شركة متعددة
|
Module5000Name=شركة متعددة
|
||||||
Module5000Desc=يسمح لك لإدارة الشركات المتعددة
|
Module5000Desc=يسمح لك لإدارة الشركات المتعددة
|
||||||
|
# Module6000Name=Workflow
|
||||||
|
# Module6000Desc=Workflow management
|
||||||
# Module20000Name=Holidays
|
# Module20000Name=Holidays
|
||||||
# Module20000Desc=Declare and follow employees holidays
|
# Module20000Desc=Declare and follow employees holidays
|
||||||
Module50000Name=PayBox
|
Module50000Name=PayBox
|
||||||
@ -495,6 +498,10 @@ Module50100Name=نقطة البيع
|
|||||||
Module50100Desc=نقطة بيع وحدة
|
Module50100Desc=نقطة بيع وحدة
|
||||||
Module50200Name= باي بال
|
Module50200Name= باي بال
|
||||||
Module50200Desc= وحدة لتقديم على صفحة الدفع عبر الإنترنت عن طريق بطاقة الائتمان مع بايبال
|
Module50200Desc= وحدة لتقديم على صفحة الدفع عبر الإنترنت عن طريق بطاقة الائتمان مع بايبال
|
||||||
|
# Module54000Name=PrintIPP
|
||||||
|
# Module54000Desc=Print via Cups IPP Printer.
|
||||||
|
# Module55000Name=Open Survey
|
||||||
|
# Module55000Desc=Module to integrate a survey (like Doodle, Studs, Rdvz, ...)
|
||||||
# Module59000Name=Margins
|
# Module59000Name=Margins
|
||||||
# Module59000Desc=Module to manage margins
|
# Module59000Desc=Module to manage margins
|
||||||
# Module60000Name=Commissions
|
# Module60000Name=Commissions
|
||||||
@ -708,8 +715,11 @@ Permission2515=إعداد وثائق وأدلة
|
|||||||
# Permission2801=Use FTP client in read mode (browse and download only)
|
# Permission2801=Use FTP client in read mode (browse and download only)
|
||||||
# Permission2802=Use FTP client in write mode (delete or upload files)
|
# Permission2802=Use FTP client in write mode (delete or upload files)
|
||||||
# Permission50101=Use Point of sales
|
# Permission50101=Use Point of sales
|
||||||
Permission50201= قراءة المعاملات
|
Permission50201=قراءة المعاملات
|
||||||
Permission50202= استيراد المعاملات
|
Permission50202=استيراد المعاملات
|
||||||
|
# Permission54001=Print
|
||||||
|
# Permission55001=Read surveys
|
||||||
|
# Permission55002=Create/modify surveys
|
||||||
DictionnaryCompanyType=أنواع الشركة
|
DictionnaryCompanyType=أنواع الشركة
|
||||||
DictionnaryCompanyJuridicalType=أنواع القانوني للشركة
|
DictionnaryCompanyJuridicalType=أنواع القانوني للشركة
|
||||||
DictionnaryProspectLevel=آفاق محتملة المستوى
|
DictionnaryProspectLevel=آفاق محتملة المستوى
|
||||||
@ -991,6 +1001,7 @@ SendmailOptionMayHurtBuggedMTA=وميزة لإرسال رسائل باستخدا
|
|||||||
# BrowserIsKO=You are using the web browser %s. This browser is known to be a bad choice for security, performance and reliability. We recommand you to use Firefox, Chrome, Opera or Safari.
|
# BrowserIsKO=You are using the web browser %s. This browser is known to be a bad choice for security, performance and reliability. We recommand you to use Firefox, Chrome, Opera or Safari.
|
||||||
# XDebugInstalled=XDebug est chargé.
|
# XDebugInstalled=XDebug est chargé.
|
||||||
# XCacheInstalled=XCache is loaded.
|
# XCacheInstalled=XCache is loaded.
|
||||||
|
# AddRefInList=Display customer/supplier ref into list (select list or combobox) and most of hyperlink
|
||||||
##### Module password generation
|
##### Module password generation
|
||||||
PasswordGenerationStandard=عودة كلمة سر ولدت الداخلية وفقا لخوارزمية Dolibarr : 8 أحرف مشتركة تتضمن الأرقام والحروف في حرف صغير.
|
PasswordGenerationStandard=عودة كلمة سر ولدت الداخلية وفقا لخوارزمية Dolibarr : 8 أحرف مشتركة تتضمن الأرقام والحروف في حرف صغير.
|
||||||
PasswordGenerationNone=لا توحي بأي كلمة المرور المتولدة. يجب أن تكون كلمة السر في نوع يدويا.
|
PasswordGenerationNone=لا توحي بأي كلمة المرور المتولدة. يجب أن تكون كلمة السر في نوع يدويا.
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
# Dolibarr language file - Source file is en_US - agenda
|
# Dolibarr language file - Source file is en_US - agenda
|
||||||
CHARSET=UTF-8
|
# IdAgenda=ID event
|
||||||
Actions=الإجراءات
|
Actions=الإجراءات
|
||||||
ActionsArea=الإجراءات منطقة الأحداث والمهام)
|
ActionsArea=الإجراءات منطقة الأحداث والمهام)
|
||||||
Agenda= جدول الأعمال
|
Agenda= جدول الأعمال
|
||||||
@ -68,6 +68,7 @@ AgendaUrlOptions5=<b>logind=<b>logind=%s</b> لتقييد الانتاج لإج
|
|||||||
AgendaShowBirthdayEvents=عيد ميلاد تظهر اتصالات
|
AgendaShowBirthdayEvents=عيد ميلاد تظهر اتصالات
|
||||||
AgendaHideBirthdayEvents=عيد ميلاد إخفاء اتصالات
|
AgendaHideBirthdayEvents=عيد ميلاد إخفاء اتصالات
|
||||||
# Busy=Busy
|
# Busy=Busy
|
||||||
|
# ExportDataset_event1=List of agenda events
|
||||||
|
|
||||||
# External Sites ical
|
# External Sites ical
|
||||||
ExportCal=تصدير التقويم
|
ExportCal=تصدير التقويم
|
||||||
|
|||||||
@ -1,14 +1,4 @@
|
|||||||
/*
|
# Dolibarr language file - Source file is en_US - banks
|
||||||
* Language code: ar_AR
|
|
||||||
* Automatic generated via autotranslator.php tool
|
|
||||||
* Generation date 2009-08-11 13:27:01
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
// Date 2009-08-11 13:27:01
|
|
||||||
// START - Lines generated via autotranslator.php tool.
|
|
||||||
// Reference language: en_US
|
|
||||||
CHARSET=UTF-8
|
|
||||||
Bank=البنك
|
Bank=البنك
|
||||||
Banks=المصارف
|
Banks=المصارف
|
||||||
MenuBankCash=البنك / النقدية
|
MenuBankCash=البنك / النقدية
|
||||||
@ -29,6 +19,8 @@ SavingAccount=حساب توفير
|
|||||||
SavingAccounts=حسابات التوفير
|
SavingAccounts=حسابات التوفير
|
||||||
ErrorBankLabelAlreadyExists=الحساب المالي الملصق موجود بالفعل
|
ErrorBankLabelAlreadyExists=الحساب المالي الملصق موجود بالفعل
|
||||||
BankBalance=التوازن
|
BankBalance=التوازن
|
||||||
|
# BankBalanceBefore=Balance before
|
||||||
|
# BankBalanceAfter=Balance after
|
||||||
BalanceMinimalAllowed=الحد الأدنى المسموح التوازن
|
BalanceMinimalAllowed=الحد الأدنى المسموح التوازن
|
||||||
BalanceMinimalDesired=الحد الأدنى من التوازن المطلوب
|
BalanceMinimalDesired=الحد الأدنى من التوازن المطلوب
|
||||||
InitialBankBalance=الرصيد الأولي
|
InitialBankBalance=الرصيد الأولي
|
||||||
@ -51,11 +43,11 @@ LastAccountStatements=كشوفات الحساب الأخير
|
|||||||
Rapprochement=المصالحة
|
Rapprochement=المصالحة
|
||||||
IOMonthlyReporting=تقارير شهرية
|
IOMonthlyReporting=تقارير شهرية
|
||||||
BankAccountDomiciliation=معالجة حساب
|
BankAccountDomiciliation=معالجة حساب
|
||||||
|
BankAccountCountry=حساب البلاد
|
||||||
BankAccountOwner=اسم صاحب الحساب
|
BankAccountOwner=اسم صاحب الحساب
|
||||||
BankAccountOwnerAddress=معالجة حساب المالك
|
BankAccountOwnerAddress=معالجة حساب المالك
|
||||||
|
RIBControlError=التحقق من تكامل القيم يفشل. وهذا يعني حصول على معلومات عن هذا رقم الحساب ليست كاملة أو خاطئة (ارجع البلد والأرقام وIBAN).
|
||||||
CreateAccount=إنشاء حساب
|
CreateAccount=إنشاء حساب
|
||||||
StandingOrderToProcess=لعملية
|
|
||||||
StandingOrderProcessed=تجهيز
|
|
||||||
NewAccount=حساب جديد
|
NewAccount=حساب جديد
|
||||||
NewBankAccount=حساب مصرفي جديد
|
NewBankAccount=حساب مصرفي جديد
|
||||||
NewFinancialAccount=الحساب المالي الجديد
|
NewFinancialAccount=الحساب المالي الجديد
|
||||||
@ -112,7 +104,9 @@ ConciliatedBy=طريق التصالح
|
|||||||
DateConciliating=التوفيق التاريخ
|
DateConciliating=التوفيق التاريخ
|
||||||
BankLineConciliated=صفقة التصالح
|
BankLineConciliated=صفقة التصالح
|
||||||
CustomerInvoicePayment=عملاء الدفع
|
CustomerInvoicePayment=عملاء الدفع
|
||||||
|
# CustomerInvoicePaymentBack=Customer payment back
|
||||||
SupplierInvoicePayment=المورد الدفع
|
SupplierInvoicePayment=المورد الدفع
|
||||||
|
WithdrawalPayment=انسحاب الدفع
|
||||||
SocialContributionPayment=دفع المساهمة الاجتماعية
|
SocialContributionPayment=دفع المساهمة الاجتماعية
|
||||||
FinancialAccountJournal=مجلة الحساب المالي
|
FinancialAccountJournal=مجلة الحساب المالي
|
||||||
BankTransfer=حوالة مصرفية
|
BankTransfer=حوالة مصرفية
|
||||||
@ -128,6 +122,7 @@ DeleteCheckReceipt=تأكد من ورود حذف هذا؟
|
|||||||
ConfirmDeleteCheckReceipt=هل أنت متأكد من أنك تريد حذف هذا التحقق من ورود؟
|
ConfirmDeleteCheckReceipt=هل أنت متأكد من أنك تريد حذف هذا التحقق من ورود؟
|
||||||
BankChecks=الشيكات المصرفية
|
BankChecks=الشيكات المصرفية
|
||||||
BankChecksToReceipt=في انتظار إيداع الشيكات
|
BankChecksToReceipt=في انتظار إيداع الشيكات
|
||||||
|
ShowCheckReceipt=الاختيار إظهار تلقي الودائع
|
||||||
NumberOfCheques=ملاحظة : للشيكات
|
NumberOfCheques=ملاحظة : للشيكات
|
||||||
DeleteTransaction=حذف المعاملات
|
DeleteTransaction=حذف المعاملات
|
||||||
ConfirmDeleteTransaction=هل أنت متأكد من أنك تريد حذف هذه الصفقة؟
|
ConfirmDeleteTransaction=هل أنت متأكد من أنك تريد حذف هذه الصفقة؟
|
||||||
@ -135,42 +130,23 @@ ThisWillAlsoDeleteBankRecord=وهذا من شأنه أيضا حذف المتول
|
|||||||
BankMovements=حركات
|
BankMovements=حركات
|
||||||
CashBudget=الميزانية النقدية
|
CashBudget=الميزانية النقدية
|
||||||
PlannedTransactions=المخطط المعاملات
|
PlannedTransactions=المخطط المعاملات
|
||||||
|
Graph=الرسومات
|
||||||
ExportDataset_banque_1=المعاملات المصرفية وحساب
|
ExportDataset_banque_1=المعاملات المصرفية وحساب
|
||||||
TransactionOnTheOtherAccount=صفقة على حساب الآخرين
|
TransactionOnTheOtherAccount=صفقة على حساب الآخرين
|
||||||
|
TransactionWithOtherAccount=تحويل الحساب
|
||||||
PaymentNumberUpdateSucceeded=دفع عدد تحديث بنجاح
|
PaymentNumberUpdateSucceeded=دفع عدد تحديث بنجاح
|
||||||
PaymentNumberUpdateFailed=دفع عددا لا يمكن تحديث
|
PaymentNumberUpdateFailed=دفع عددا لا يمكن تحديث
|
||||||
PaymentDateUpdateSucceeded=تاريخ التحديث الدفع بنجاح
|
PaymentDateUpdateSucceeded=تاريخ التحديث الدفع بنجاح
|
||||||
PaymentDateUpdateFailed=دفع حتى الآن لا يمكن تحديث
|
PaymentDateUpdateFailed=دفع حتى الآن لا يمكن تحديث
|
||||||
|
# Transactions=Transactions
|
||||||
BankTransactionLine=المعاملات المصرفية
|
BankTransactionLine=المعاملات المصرفية
|
||||||
AllAccounts=جميع المصرفية / حسابات نقدية
|
AllAccounts=جميع المصرفية / حسابات نقدية
|
||||||
BackToAccount=إلى حساب
|
BackToAccount=إلى حساب
|
||||||
ShowAllAccounts=وتبين للجميع الحسابات
|
ShowAllAccounts=وتبين للجميع الحسابات
|
||||||
// Date 2009-08-11 13:27:01
|
|
||||||
// STOP - Lines generated via parser
|
|
||||||
|
|
||||||
// START - Lines generated via autotranslator.php tool (2009-08-13 20:13:59).
|
|
||||||
// Reference language: en_US
|
|
||||||
TransactionWithOtherAccount=تحويل الحساب
|
|
||||||
// STOP - Lines generated via autotranslator.php tool (2009-08-13 20:13:59).
|
|
||||||
|
|
||||||
|
|
||||||
// START - Lines generated via autotranslator.php tool (2010-07-17 11:13:51).
|
|
||||||
// Reference language: en_US
|
|
||||||
BankAccountCountry=حساب البلاد
|
|
||||||
// STOP - Lines generated via autotranslator.php tool (2010-07-17 11:14:16).
|
|
||||||
|
|
||||||
|
|
||||||
// START - Lines generated via autotranslator.php tool (2011-10-10 02:45:33).
|
|
||||||
// Reference language: en_US -> ar_SA
|
|
||||||
RIBControlError=التحقق من تكامل القيم يفشل. وهذا يعني حصول على معلومات عن هذا رقم الحساب ليست كاملة أو خاطئة (ارجع البلد والأرقام وIBAN).
|
|
||||||
WithdrawalPayment=انسحاب الدفع
|
|
||||||
ShowCheckReceipt=الاختيار إظهار تلقي الودائع
|
|
||||||
// STOP - Lines generated via autotranslator.php tool (2011-10-10 06:39:39).
|
|
||||||
|
|
||||||
|
|
||||||
// START - Lines generated via autotranslator.php tool (2012-02-29 15:55:27).
|
|
||||||
// Reference language: en_US -> ar_SA
|
|
||||||
Graph=الرسومات
|
|
||||||
FutureTransaction=الصفقة في أجل المستقبل. أي وسيلة للتوفيق.
|
FutureTransaction=الصفقة في أجل المستقبل. أي وسيلة للتوفيق.
|
||||||
SelectChequeTransactionAndGenerate=حدد / تصفية الشيكات لتشمل في الاختيار استلام الودائع وانقر على "إنشاء".
|
SelectChequeTransactionAndGenerate=حدد / تصفية الشيكات لتشمل في الاختيار استلام الودائع وانقر على "إنشاء".
|
||||||
// STOP - Lines generated via autotranslator.php tool (2012-02-29 15:55:34).
|
# InputReceiptNumber=Choose the bank statement related with the conciliation. Use a sortable numeric value (such as, YYYYMM)
|
||||||
|
# EventualyAddCategory=Eventually, specify a category in which to classify the records
|
||||||
|
# ToConciliate=To conciliate?
|
||||||
|
# ThenCheckLinesAndConciliate=Then, check the lines present in the bank statement and click
|
||||||
|
# BankDashboard=Bank accounts summary
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - bills
|
# Dolibarr language file - Source file is en_US - bills
|
||||||
CHARSET=UTF-8
|
|
||||||
Bill=فاتورة
|
Bill=فاتورة
|
||||||
Bills=فواتير
|
Bills=فواتير
|
||||||
BillsCustomers=العملاء والفواتير
|
BillsCustomers=العملاء والفواتير
|
||||||
|
|||||||
@ -1,7 +1,5 @@
|
|||||||
# Dolibarr language file - Source file is en_US - marque pages
|
# Dolibarr language file - Source file is en_US - marque pages
|
||||||
CHARSET=UTF-8
|
|
||||||
AddThisPageToBookmarks=أضف هذه الصفحة إلى المفضلة
|
AddThisPageToBookmarks=أضف هذه الصفحة إلى المفضلة
|
||||||
|
|
||||||
Bookmark=احفظ
|
Bookmark=احفظ
|
||||||
Bookmarks=العناوين
|
Bookmarks=العناوين
|
||||||
NewBookmark=إشارة مرجعية جديدة
|
NewBookmark=إشارة مرجعية جديدة
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - boxes
|
# Dolibarr language file - Source file is en_US - boxes
|
||||||
CHARSET=UTF-8
|
|
||||||
BoxLastRssInfos=Rss المعلومات
|
BoxLastRssInfos=Rss المعلومات
|
||||||
BoxLastProducts=ق الماضي ٪ منتجات / خدمات
|
BoxLastProducts=ق الماضي ٪ منتجات / خدمات
|
||||||
# BoxProductsAlertStock=Products in stock alert
|
# BoxProductsAlertStock=Products in stock alert
|
||||||
@ -75,10 +74,18 @@ NoRecordedProducts=لم تسجل المنتجات / الخدمات
|
|||||||
NoRecordedProspects=لم تسجل آفاق
|
NoRecordedProspects=لم تسجل آفاق
|
||||||
NoContractedProducts=أي المنتجات / الخدمات المتعاقد عليها
|
NoContractedProducts=أي المنتجات / الخدمات المتعاقد عليها
|
||||||
NoRecordedContracts=لا عقود المسجلة
|
NoRecordedContracts=لا عقود المسجلة
|
||||||
|
# NoRecordedInterventions=No recorded interventions
|
||||||
# BoxLatestSupplierOrders=Latest supplier orders
|
# BoxLatestSupplierOrders=Latest supplier orders
|
||||||
# BoxTitleLatestSupplierOrders=%s latest supplier orders
|
# BoxTitleLatestSupplierOrders=%s latest supplier orders
|
||||||
# NoSupplierOrder=No recorded supplier order
|
# NoSupplierOrder=No recorded supplier order
|
||||||
# BoxInvoicesPerMonth=Invoices per month
|
# BoxCustomersInvoicesPerMonth=Customer invoices per month
|
||||||
# BoxOrdersPerMonth=Orders per month
|
# BoxSuppliersInvoicesPerMonth=Supplier invoices per month
|
||||||
|
# BoxCustomersOrdersPerMonth=Customer orders per month
|
||||||
|
# BoxSuppliersOrdersPerMonth=Supplier orders per month
|
||||||
# BoxProposalsPerMonth=Proposals per month
|
# BoxProposalsPerMonth=Proposals per month
|
||||||
# NoTooLowStockProducts=No product under the low stock limit
|
# NoTooLowStockProducts=No product under the low stock limit
|
||||||
|
# BoxProductDistribution=Products/Services distribution
|
||||||
|
# BoxProductDistributionFor=Distribution of %s for %s
|
||||||
|
ForCustomersInvoices=العملاء والفواتير
|
||||||
|
# ForCustomersOrders=Customers orders
|
||||||
|
ForProposals=مقترحات
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Language file - Source file is en_US - cashdesk
|
# Language file - Source file is en_US - cashdesk
|
||||||
CHARSET=UTF-8
|
|
||||||
CashDeskMenu=نقطة بيع
|
CashDeskMenu=نقطة بيع
|
||||||
CashDesk=نقطة بيع
|
CashDesk=نقطة بيع
|
||||||
CashDesks=نقاط البيع
|
CashDesks=نقاط البيع
|
||||||
@ -37,3 +36,4 @@ BankToPay=تهمة حساب
|
|||||||
ShowCompany=عرض شركة
|
ShowCompany=عرض شركة
|
||||||
ShowStock=عرض مستودع
|
ShowStock=عرض مستودع
|
||||||
DeleteArticle=انقر لإزالة هذه المادة
|
DeleteArticle=انقر لإزالة هذه المادة
|
||||||
|
# FilterRefOrLabelOrBC=Search (Ref/Label)
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - categories
|
# Dolibarr language file - Source file is en_US - categories
|
||||||
CHARSET=UTF-8
|
|
||||||
Category=الفئة
|
Category=الفئة
|
||||||
Categories=الفئات
|
Categories=الفئات
|
||||||
Rubrique=الفئة
|
Rubrique=الفئة
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - commercial
|
# Dolibarr language file - Source file is en_US - commercial
|
||||||
CHARSET=UTF-8
|
|
||||||
Commercial=التجارية
|
Commercial=التجارية
|
||||||
CommercialArea=منطقة تجارية
|
CommercialArea=منطقة تجارية
|
||||||
CommercialCard=بطاقة تجارية
|
CommercialCard=بطاقة تجارية
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - companies
|
# Dolibarr language file - Source file is en_US - companies
|
||||||
CHARSET=UTF-8
|
|
||||||
ErrorCompanyNameAlreadyExists=اسم الشركة ل ٪ موجود بالفعل. اختيار آخر.
|
ErrorCompanyNameAlreadyExists=اسم الشركة ل ٪ موجود بالفعل. اختيار آخر.
|
||||||
ErrorPrefixAlreadyExists=بادئة ٪ ق موجود بالفعل. اختيار آخر.
|
ErrorPrefixAlreadyExists=بادئة ٪ ق موجود بالفعل. اختيار آخر.
|
||||||
ErrorSetACountryFirst=المجموعة الأولى في البلد
|
ErrorSetACountryFirst=المجموعة الأولى في البلد
|
||||||
@ -85,6 +84,8 @@ LocalTax1IsUsedES= يتم استخدام الطاقة المتجددة
|
|||||||
LocalTax1IsNotUsedES= لا يتم استخدام الطاقة المتجددة
|
LocalTax1IsNotUsedES= لا يتم استخدام الطاقة المتجددة
|
||||||
LocalTax2IsUsedES= يستخدم IRPF
|
LocalTax2IsUsedES= يستخدم IRPF
|
||||||
LocalTax2IsNotUsedES= IRPF لا يستخدم
|
LocalTax2IsNotUsedES= IRPF لا يستخدم
|
||||||
|
LocalTax1ES=تعاود
|
||||||
|
LocalTax2ES=IRPF
|
||||||
ThirdPartyEMail=ق ٪
|
ThirdPartyEMail=ق ٪
|
||||||
WrongCustomerCode=رمز غير صالح العملاء
|
WrongCustomerCode=رمز غير صالح العملاء
|
||||||
WrongSupplierCode=رمز المورد غير صالحة
|
WrongSupplierCode=رمز المورد غير صالحة
|
||||||
@ -395,7 +396,7 @@ InActivity=فتح
|
|||||||
ActivityCeased=مغلق
|
ActivityCeased=مغلق
|
||||||
ActivityStateFilter=نشاط المركز
|
ActivityStateFilter=نشاط المركز
|
||||||
# ProductsIntoElements=List of products into
|
# ProductsIntoElements=List of products into
|
||||||
|
# OutstandingBill=Outstanding Bill
|
||||||
# Monkey
|
# Monkey
|
||||||
MonkeyNumRefModelDesc=عودة número مع الشكل nnnn - ٪ syymm الزبون ورمز وnnnn - ٪ syymm مورد للقانون حيث السنة هو السنة ، هو شهر ملم وnnnn هو تسلسل بلا كسر وعدم العودة إلى 0.
|
MonkeyNumRefModelDesc=عودة número مع الشكل nnnn - ٪ syymm الزبون ورمز وnnnn - ٪ syymm مورد للقانون حيث السنة هو السنة ، هو شهر ملم وnnnn هو تسلسل بلا كسر وعدم العودة إلى 0.
|
||||||
# Leopard
|
# Leopard
|
||||||
|
|||||||
@ -1,10 +1,9 @@
|
|||||||
# Dolibarr language file - Source file is en_US - compta
|
# Dolibarr language file - Source file is en_US - compta
|
||||||
CHARSET=UTF-8
|
|
||||||
Accountancy=المحاسبة
|
Accountancy=المحاسبة
|
||||||
AccountancyCard=بطاقة المحاسبة
|
AccountancyCard=بطاقة المحاسبة
|
||||||
Treasury=الخزانة
|
Treasury=الخزانة
|
||||||
MenuFinancial=المالية
|
MenuFinancial=المالية
|
||||||
TaxModuleSetupToModifyRules=انتقل إلى <a href="%s">وحدة الإعداد</a> لتعديل القواعد لحساب
|
# TaxModuleSetupToModifyRules=Go to <a href="%s">Taxes module setup</a> to modify rules for calculation
|
||||||
OptionMode=الخيار المحاسبة
|
OptionMode=الخيار المحاسبة
|
||||||
OptionModeTrue=خيار المدخلات والمخرجات
|
OptionModeTrue=خيار المدخلات والمخرجات
|
||||||
OptionModeVirtual=الخيار بين اعتمادات الديون
|
OptionModeVirtual=الخيار بين اعتمادات الديون
|
||||||
@ -103,8 +102,12 @@ ConfirmPaySocialContribution=هل أنت متأكد من أن يصنف هذه ا
|
|||||||
DeleteSocialContribution=حذف المساهمات الاجتماعية
|
DeleteSocialContribution=حذف المساهمات الاجتماعية
|
||||||
ConfirmDeleteSocialContribution=هل أنت متأكد من أنك تريد حذف هذه المساهمة الاجتماعية؟
|
ConfirmDeleteSocialContribution=هل أنت متأكد من أنك تريد حذف هذه المساهمة الاجتماعية؟
|
||||||
ExportDataset_tax_1=المساهمات الاجتماعية والمدفوعات
|
ExportDataset_tax_1=المساهمات الاجتماعية والمدفوعات
|
||||||
AnnualSummaryDueDebtMode=ميزان الإيرادات والمصروفات ، وموجزا سنويا ، طريقة <b>٪ sClaims - ديونها ٪ ق</b> قال <b>الالتزام والمحاسبة.</b>
|
# CalcModeVATDebt=Mode <b>%sVAT on commitment accounting%s</b>.
|
||||||
AnnualSummaryInputOutputMode=ميزان الإيرادات والنفقات السنوية وخلاصة طريقة <b>sRevenues - ٪ ق ٪ Expensens</b> قال <b>المحاسبة النقدية.</b>
|
# CalcModeVATEngagement=Mode <b>%sVAT on incomes-expenses%s</b>.
|
||||||
|
# CalcModeDebt=Mode <b>%sClaims-Debts%s</b> said <b>Commitment accounting</b>.
|
||||||
|
# CalcModeEngagement=Mode <b>%sIncomes-Expenses%s</b> said <b>cash accounting</b>
|
||||||
|
# AnnualSummaryDueDebtMode=Balance of income and expenses, annual summary
|
||||||
|
# AnnualSummaryInputOutputMode=Balance of income and expenses, annual summary
|
||||||
AnnualByCompaniesDueDebtMode=ميزان الإيرادات والنفقات ، وبالتفصيل من قبل أطراف ثالثة ، وطريقة سداد <b>ديون sClaims ٪ ٪ ق</b> قال <b>الالتزام والمحاسبة.</b>
|
AnnualByCompaniesDueDebtMode=ميزان الإيرادات والنفقات ، وبالتفصيل من قبل أطراف ثالثة ، وطريقة سداد <b>ديون sClaims ٪ ٪ ق</b> قال <b>الالتزام والمحاسبة.</b>
|
||||||
AnnualByCompaniesInputOutputMode=ميزان الإيرادات والنفقات ، وبالتفصيل من قبل أطراف ثالثة ، واسطة بين <b>sRevenues ٪ من مصروفات ٪ ق</b> قال <b>المحاسبة النقدية.</b>
|
AnnualByCompaniesInputOutputMode=ميزان الإيرادات والنفقات ، وبالتفصيل من قبل أطراف ثالثة ، واسطة بين <b>sRevenues ٪ من مصروفات ٪ ق</b> قال <b>المحاسبة النقدية.</b>
|
||||||
SeeReportInInputOutputMode=انظر التقرير <b>sIncomes ٪</b> بين <b>المصروفات ٪ ق</b> قال <b>المحاسبة النقدية</b> لحساب المدفوعات الفعلية
|
SeeReportInInputOutputMode=انظر التقرير <b>sIncomes ٪</b> بين <b>المصروفات ٪ ق</b> قال <b>المحاسبة النقدية</b> لحساب المدفوعات الفعلية
|
||||||
@ -117,13 +120,13 @@ RulesCAIn=-- ويشمل جميع الفعال دفع الفواتير الوار
|
|||||||
DepositsAreNotIncluded=- يتم ولا تشمل ودائع الفواتير
|
DepositsAreNotIncluded=- يتم ولا تشمل ودائع الفواتير
|
||||||
DepositsAreIncluded=- وترد الفواتير ودائع
|
DepositsAreIncluded=- وترد الفواتير ودائع
|
||||||
LT2ReportByCustomersInInputOutputModeES=تقرير من قبل طرف ثالث IRPF
|
LT2ReportByCustomersInInputOutputModeES=تقرير من قبل طرف ثالث IRPF
|
||||||
VATReportByCustomersInInputOutputMode=تقرير من العملاء المجمعة ، وتدفع ضريبة القيمة المضافة (ضريبة القيمة المضافة ورود)
|
# VATReportByCustomersInInputOutputMode=Report by the customer VAT collected and paid
|
||||||
VATReportByCustomersInDueDebtMode=تقرير من العملاء المجمعة ، وتدفع ضريبة القيمة المضافة (ضريبة القيمة المضافة بمعدل)
|
# VATReportByCustomersInDueDebtMode=Report by the customer VAT collected and paid
|
||||||
VATReportByQuartersInInputOutputMode=التقرير الفصلي للتجمع ، وتدفع ضريبة القيمة المضافة (ضريبة القيمة المضافة ورود)
|
# VATReportByQuartersInInputOutputMode=Report by rate of the VAT collected and paid
|
||||||
VATReportByQuartersInDueDebtMode=التقرير الفصلي للتجمع ، وتدفع ضريبة القيمة المضافة (ضريبة القيمة المضافة بمعدل)
|
# VATReportByQuartersInDueDebtMode=Report by rate of the VAT collected and paid
|
||||||
SeeVATReportInInputOutputMode=انظر التقرير <b>تغطية sVAT ٪ ق ٪</b> لحساب موحد
|
SeeVATReportInInputOutputMode=انظر التقرير <b>تغطية sVAT ٪ ق ٪</b> لحساب موحد
|
||||||
SeeVATReportInDueDebtMode=انظر التقرير <b>عن تدفق sVAT ٪ ق ٪</b> لحساب مع خيار على تدفق
|
SeeVATReportInDueDebtMode=انظر التقرير <b>عن تدفق sVAT ٪ ق ٪</b> لحساب مع خيار على تدفق
|
||||||
RulesVATInServices=- للحصول على الخدمات، ويشتمل هذا التقرير على لوائح ضريبة القيمة المضافة وردت فعلا أو الصادرة على أساس من تاريخ الدفع. <br> - للحصول على الأصول المادية، فإنه يشمل ضريبة القيمة المضافة على الفواتير على أساس من تاريخ الفاتورة.
|
# RulesVATInServices=- For services, the report includes the VAT regulations actually received or issued on the basis of the date of payment.
|
||||||
RulesVATInProducts=- للحصول على الأصول المادية، فإنه يشمل ضريبة القيمة المضافة على الفواتير على أساس من تاريخ الفاتورة.
|
RulesVATInProducts=- للحصول على الأصول المادية، فإنه يشمل ضريبة القيمة المضافة على الفواتير على أساس من تاريخ الفاتورة.
|
||||||
RulesVATDueServices=- للحصول على الخدمات، ويتضمن التقرير فواتير ضريبة القيمة المضافة المستحقة، مدفوعة الأجر أم لا، بناء على تاريخ الفاتورة.
|
RulesVATDueServices=- للحصول على الخدمات، ويتضمن التقرير فواتير ضريبة القيمة المضافة المستحقة، مدفوعة الأجر أم لا، بناء على تاريخ الفاتورة.
|
||||||
RulesVATDueProducts=- للحصول على الأصول المادية، فإنه يشمل ضريبة القيمة المضافة على الفواتير، بناء على تاريخ الفاتورة.
|
RulesVATDueProducts=- للحصول على الأصول المادية، فإنه يشمل ضريبة القيمة المضافة على الفواتير، بناء على تاريخ الفاتورة.
|
||||||
@ -155,3 +158,14 @@ WarningDepositsNotIncluded=لا يتم تضمين فواتير الودائع ف
|
|||||||
# AccountancyDashboard=Accountancy summary
|
# AccountancyDashboard=Accountancy summary
|
||||||
# ByProductsAndServices=By products and services
|
# ByProductsAndServices=By products and services
|
||||||
# RefExt=External ref
|
# RefExt=External ref
|
||||||
|
# ToCreateAPredefinedInvoice=To create a predefined invoice, create a standard invoice then, without validating it, click onto button "Convert to predefined invoice".
|
||||||
|
# LinkedOrder=linked to command
|
||||||
|
# ReCalculate=Recalculate
|
||||||
|
# Mode1=Methode 1
|
||||||
|
# Mode2=Method 2
|
||||||
|
# CalculationRuleDesc=To calculate total VAT, there is two methods:<br>Method 1 is rounding vat on each line, then summing them.<br>Method 2 is summing all vat on each line, then rounding result.<br>Final result may differs from few cents. Default mode is mode <b>%s</b>.
|
||||||
|
# CalculationRuleDescSupplier=according to supplier, choose appropriate method to apply same calculation rule and get same result expected by your supplier.
|
||||||
|
# TurnoverPerProductInCommitmentAccountingNotRelevant=Turnover report per product, when using a <b>cash accountancy</b> mode is not relevant. This report is only available when using <b>engagement accountancy</b> mode (see setup of accountancy module).
|
||||||
|
# CalculationMode=Calculation mode
|
||||||
|
# COMPTA_ACCOUNT_CUSTOMER=Accountancy code by default for customer thirdparties
|
||||||
|
# COMPTA_ACCOUNT_SUPPLIER=Accountancy code by default for supplier thirdparties
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - contracts
|
# Dolibarr language file - Source file is en_US - contracts
|
||||||
CHARSET=UTF-8
|
|
||||||
ContractsArea=عقود منطقة
|
ContractsArea=عقود منطقة
|
||||||
ListOfContracts=قائمة العقود
|
ListOfContracts=قائمة العقود
|
||||||
LastContracts=آخر تعديل العقود ق ٪
|
LastContracts=آخر تعديل العقود ق ٪
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - cron
|
# Dolibarr language file - Source file is en_US - cron
|
||||||
CHARSET=UTF-8
|
|
||||||
#
|
#
|
||||||
# About page
|
# About page
|
||||||
#
|
#
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - deliveries
|
# Dolibarr language file - Source file is en_US - deliveries
|
||||||
CHARSET=UTF-8
|
|
||||||
Delivery=تسليم
|
Delivery=تسليم
|
||||||
Deliveries=الولادة
|
Deliveries=الولادة
|
||||||
DeliveryCard=تسليم البطاقة
|
DeliveryCard=تسليم البطاقة
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - dict
|
# Dolibarr language file - Source file is en_US - dict
|
||||||
CHARSET=UTF-8
|
|
||||||
CountryFR=فرنسا
|
CountryFR=فرنسا
|
||||||
CountryBE=بلجيكا
|
CountryBE=بلجيكا
|
||||||
CountryIT=ايطاليا
|
CountryIT=ايطاليا
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - donations
|
# Dolibarr language file - Source file is en_US - donations
|
||||||
CHARSET=UTF-8
|
|
||||||
Donation=تبرع
|
Donation=تبرع
|
||||||
Donations=التبرعات
|
Donations=التبرعات
|
||||||
# DonationRef=Donation ref.
|
# DonationRef=Donation ref.
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - ecm
|
# Dolibarr language file - Source file is en_US - ecm
|
||||||
CHARSET=UTF-8
|
|
||||||
MenuECM=وثائق
|
MenuECM=وثائق
|
||||||
DocsMine=بلدي وثائق
|
DocsMine=بلدي وثائق
|
||||||
DocsGenerated=ولدت وثائق
|
DocsGenerated=ولدت وثائق
|
||||||
@ -24,10 +23,10 @@ ECMNewDocument=وثيقة جديدة
|
|||||||
ECMCreationDate=تاريخ الإنشاء
|
ECMCreationDate=تاريخ الإنشاء
|
||||||
ECMNbOfFilesInDir=عدد من الملفات في دليل
|
ECMNbOfFilesInDir=عدد من الملفات في دليل
|
||||||
ECMNbOfSubDir=من دون أدلة
|
ECMNbOfSubDir=من دون أدلة
|
||||||
ECMNbOfFilesInSubDir=إيليس في Nunber من دون أدلة
|
# ECMNbOfFilesInSubDir=Number of files in sub-directories
|
||||||
ECMCreationUser=مبدع
|
ECMCreationUser=مبدع
|
||||||
ECMArea=مجال إدارة المحتوى في المؤسسة
|
# ECMArea=EDM area
|
||||||
ECMAreaDesc=إدارة المحتوى في المؤسسة (إدارة المحتوى الالكتروني) تتيح لك المجال لانقاذ ، والبحث بسرعة حصة كل نوع من أنواع الوثائق في Dolibarr.
|
# ECMAreaDesc=The EDM (Electronic Document Management) area allows you to save, share and search quickly all kind of documents in Dolibarr.
|
||||||
ECMAreaDesc2=* أدلة تلقائية تملأ تلقائيا عند إضافة الوثائق من بطاقة عنصر. <br> * دليل أدلة يمكن استخدامها لانقاذ وثائق ليست مرتبطة بشكل خاص عنصر.
|
ECMAreaDesc2=* أدلة تلقائية تملأ تلقائيا عند إضافة الوثائق من بطاقة عنصر. <br> * دليل أدلة يمكن استخدامها لانقاذ وثائق ليست مرتبطة بشكل خاص عنصر.
|
||||||
ECMSectionWasRemoved=دليل <b>٪ ق</b> حذفت.
|
ECMSectionWasRemoved=دليل <b>٪ ق</b> حذفت.
|
||||||
ECMDocumentsSection=وثيقة من وثائق ودليل
|
ECMDocumentsSection=وثيقة من وثائق ودليل
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - errors
|
# Dolibarr language file - Source file is en_US - errors
|
||||||
CHARSET=UTF-8
|
|
||||||
|
|
||||||
# No errors
|
# No errors
|
||||||
# NoErrorCommitIsDone=No error, we commit
|
# NoErrorCommitIsDone=No error, we commit
|
||||||
@ -125,6 +124,9 @@ ErrorNoActivatedBarcode=لا يوجد نوع الباركود تفعيلها
|
|||||||
# ErrorFailedToAddContact=Failed to add contact
|
# ErrorFailedToAddContact=Failed to add contact
|
||||||
# ErrorDateMustBeBeforeToday=The date can not be greater than today
|
# ErrorDateMustBeBeforeToday=The date can not be greater than today
|
||||||
# ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode.
|
# ErrorPaymentModeDefinedToWithoutSetup=A payment mode was set to type %s but setup of module Invoice was not completed to define information to show for this payment mode.
|
||||||
|
# ErrorPHPNeedModule=Error, your PHP must have module <b>%s</b> installed to use this feature.
|
||||||
|
# ErrorOpenIDSetupNotComplete=You setup Dolibarr config file to allow OpenID authentication, but URL of OpenID service is not defined into constant %s
|
||||||
|
# ErrorWarehouseMustDiffers=Source and target warehouses must differs
|
||||||
|
|
||||||
# Warnings
|
# Warnings
|
||||||
# WarningMandatorySetupNotComplete=Mandatory setup parameters are not yet defined
|
# WarningMandatorySetupNotComplete=Mandatory setup parameters are not yet defined
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - exports
|
# Dolibarr language file - Source file is en_US - exports
|
||||||
CHARSET=UTF-8
|
|
||||||
ExportsArea=صادرات المنطقة
|
ExportsArea=صادرات المنطقة
|
||||||
ImportArea=مجال الاستيراد
|
ImportArea=مجال الاستيراد
|
||||||
NewExport=تصديرية جديدة
|
NewExport=تصديرية جديدة
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - externalsite
|
# Dolibarr language file - Source file is en_US - externalsite
|
||||||
CHARSET=UTF-8
|
|
||||||
ExternalSiteSetup=رابط الإعداد لموقع خارجي
|
ExternalSiteSetup=رابط الإعداد لموقع خارجي
|
||||||
ExternalSiteURL=الخارجية الموقع URL
|
ExternalSiteURL=الخارجية الموقع URL
|
||||||
# ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly.
|
# ExternalSiteModuleNotComplete=Module ExternalSite was not configured properly.
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - ftp
|
# Dolibarr language file - Source file is en_US - ftp
|
||||||
CHARSET=UTF-8
|
|
||||||
FTPClientSetup=بروتوكول نقل الملفات العملاء الإعداد وحدة
|
FTPClientSetup=بروتوكول نقل الملفات العملاء الإعداد وحدة
|
||||||
NewFTPClient=جديد الإعداد بروتوكول نقل الملفات الصدد
|
NewFTPClient=جديد الإعداد بروتوكول نقل الملفات الصدد
|
||||||
FTPArea=بروتوكول نقل الملفات المنطقة
|
FTPArea=بروتوكول نقل الملفات المنطقة
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - help
|
# Dolibarr language file - Source file is en_US - help
|
||||||
CHARSET=UTF-8
|
|
||||||
CommunitySupport=منتدى / الدعم ويكي
|
CommunitySupport=منتدى / الدعم ويكي
|
||||||
EMailSupport=رسائل البريد الإلكتروني لدعم
|
EMailSupport=رسائل البريد الإلكتروني لدعم
|
||||||
RemoteControlSupport=الانترنت في الوقت الحقيقي / النائية الدعم
|
RemoteControlSupport=الانترنت في الوقت الحقيقي / النائية الدعم
|
||||||
|
|||||||
@ -1,6 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - holiday
|
# Dolibarr language file - Source file is en_US - holiday
|
||||||
CHARSET= UTF-8
|
|
||||||
|
|
||||||
# HRM=HRM
|
# HRM=HRM
|
||||||
# Holidays=Holidays
|
# Holidays=Holidays
|
||||||
# CPTitreMenu=Holidays
|
# CPTitreMenu=Holidays
|
||||||
@ -89,6 +87,7 @@ UserName=اسم
|
|||||||
# LastDayOfHoliday=Last day of holiday
|
# LastDayOfHoliday=Last day of holiday
|
||||||
# HolidaysMonthlyUpdate=Monthly update
|
# HolidaysMonthlyUpdate=Monthly update
|
||||||
# ManualUpdate=Manual update
|
# ManualUpdate=Manual update
|
||||||
|
# HolidaysCancelation=Holidays cancelation
|
||||||
|
|
||||||
## Configuration du Module ##
|
## Configuration du Module ##
|
||||||
# ConfCP=Configuration of holidays module
|
# ConfCP=Configuration of holidays module
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - install
|
# Dolibarr language file - Source file is en_US - install
|
||||||
CHARSET=UTF-8
|
|
||||||
InstallEasy=فقط اتبع التعليمات خطوة بخطوة.
|
InstallEasy=فقط اتبع التعليمات خطوة بخطوة.
|
||||||
MiscellaneousChecks=التحقق من الشروط الأساسية
|
MiscellaneousChecks=التحقق من الشروط الأساسية
|
||||||
DolibarrWelcome=مرحبا بكم في Dolibarr
|
DolibarrWelcome=مرحبا بكم في Dolibarr
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - interventions
|
# Dolibarr language file - Source file is en_US - interventions
|
||||||
CHARSET=UTF-8
|
|
||||||
Intervention=التدخل
|
Intervention=التدخل
|
||||||
Interventions=المداخلات
|
Interventions=المداخلات
|
||||||
InterventionCard=تدخل البطاقة
|
InterventionCard=تدخل البطاقة
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - languages
|
# Dolibarr language file - Source file is en_US - languages
|
||||||
CHARSET=UTF-8
|
|
||||||
|
|
||||||
Language_ar_AR=العربية
|
Language_ar_AR=العربية
|
||||||
Language_ar_SA=العربية
|
Language_ar_SA=العربية
|
||||||
@ -16,10 +15,13 @@ Language_en_IN=الإنكليزية (الهند)
|
|||||||
Language_en_NZ=الإنجليزية (نيوزيلندا)
|
Language_en_NZ=الإنجليزية (نيوزيلندا)
|
||||||
# Language_en_SA=English (Saudi Arabia)
|
# Language_en_SA=English (Saudi Arabia)
|
||||||
Language_en_US=الإنكليزية (الولايات المتحدة)
|
Language_en_US=الإنكليزية (الولايات المتحدة)
|
||||||
|
# Language_en_ZA=English (South Africa)
|
||||||
Language_es_ES=الأسبانية
|
Language_es_ES=الأسبانية
|
||||||
Language_es_AR=الأسبانية (الأرجنتين)
|
Language_es_AR=الأسبانية (الأرجنتين)
|
||||||
Language_es_HN=الأسبانية (هندوراس)
|
Language_es_HN=الأسبانية (هندوراس)
|
||||||
Language_es_MX=الإسبانية (المكسيك)
|
Language_es_MX=الإسبانية (المكسيك)
|
||||||
|
# Language_es_PY=Spanish (Paraguay)
|
||||||
|
# Language_es_PE=Spanish (Peru)
|
||||||
Language_es_PR=الأسبانية (بورتو ريكو)
|
Language_es_PR=الأسبانية (بورتو ريكو)
|
||||||
# Language_et_EE=Estonian
|
# Language_et_EE=Estonian
|
||||||
Language_fa_IR=اللغة الفارسية
|
Language_fa_IR=اللغة الفارسية
|
||||||
@ -28,6 +30,7 @@ Language_fr_BE=الفرنسية (بلجيكا)
|
|||||||
Language_fr_CA=الفرنسية (كندا)
|
Language_fr_CA=الفرنسية (كندا)
|
||||||
Language_fr_CH=الفرنسية (سويسرا)
|
Language_fr_CH=الفرنسية (سويسرا)
|
||||||
Language_fr_FR=الفرنسية
|
Language_fr_FR=الفرنسية
|
||||||
|
# Language_fr_NC=French (New Caledonia)
|
||||||
# Language_he_IL=Hebrew
|
# Language_he_IL=Hebrew
|
||||||
Language_hu_HU=المجري
|
Language_hu_HU=المجري
|
||||||
Language_is_IS=الآيسلندي
|
Language_is_IS=الآيسلندي
|
||||||
@ -46,6 +49,6 @@ Language_tr_TR=التركية
|
|||||||
Language_sl_SI=السلوفينية
|
Language_sl_SI=السلوفينية
|
||||||
Language_sv_SV=السويدية
|
Language_sv_SV=السويدية
|
||||||
Language_sv_SE=السويدية
|
Language_sv_SE=السويدية
|
||||||
|
# Language_vi_VN=Vietnamese
|
||||||
Language_zh_CN=الصينية
|
Language_zh_CN=الصينية
|
||||||
# Language_zh_TW=Chinese (Traditional)
|
# Language_zh_TW=Chinese (Traditional)
|
||||||
Language_is_IS=الآيسلندي
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user