Merge branch '12.0' of git@github.com:Dolibarr/dolibarr.git into develop

Conflicts:
	htdocs/admin/prelevement.php
	htdocs/admin/system/phpinfo.php
	htdocs/modulebuilder/index.php
This commit is contained in:
Laurent Destailleur 2020-05-31 00:31:14 +02:00
commit 8dbc0ff040
39 changed files with 1090 additions and 67 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1,313 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="124"
height="124"
id="svg2"
version="1.1"
inkscape:version="0.92.3 (2405546, 2018-03-11)"
sodipodi:docname="dolibarr_256x256_black.svg"
inkscape:export-filename="/home/ldestailleur/git/dolibarr-foundation/logo-cliparts/dolibarr_256x256_black.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<defs
id="defs4">
<linearGradient
id="linearGradient3767">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771" />
</linearGradient>
<linearGradient
id="linearGradient3755">
<stop
style="stop-color:#16317f;stop-opacity:1;"
offset="0"
id="stop3757" />
<stop
style="stop-color:#2b2baa;stop-opacity:0.98581558;"
offset="1"
id="stop3759" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3767-1"
id="linearGradient3773-6"
x1="205.42113"
y1="289.19193"
x2="330.96988"
y2="289.19193"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-129.5163,-666.48391)" />
<linearGradient
id="linearGradient3767-1">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(52.738112,-442.04909)"
gradientUnits="userSpaceOnUse"
id="linearGradient3837-1"
xlink:href="#linearGradient3767-1-3"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-3">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-9" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-6" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(53.452398,-634.19193)"
gradientUnits="userSpaceOnUse"
id="linearGradient3877-0"
xlink:href="#linearGradient3767-1-3-5"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-3-5">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-9-6" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-6-8" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(52.738112,-442.04909)"
gradientUnits="userSpaceOnUse"
id="linearGradient3837-5"
xlink:href="#linearGradient3767-1-0"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-0">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(195.59526,-442.76336)"
gradientUnits="userSpaceOnUse"
id="linearGradient3991-3"
xlink:href="#linearGradient3767-1-0-4"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-0-4">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0-2" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3-6" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(197.02383,-635.62051)"
gradientUnits="userSpaceOnUse"
id="linearGradient4034-9"
xlink:href="#linearGradient3767-1-0-4-1"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-0-4-1">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0-2-4" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3-6-3" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(199.1667,-827.04909)"
gradientUnits="userSpaceOnUse"
id="linearGradient4077-9"
xlink:href="#linearGradient3767-1-0-4-1-6"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-0-4-1-6">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0-2-4-5" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3-6-3-2" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(339.881,-442.76339)"
gradientUnits="userSpaceOnUse"
id="linearGradient3064"
xlink:href="#linearGradient3767-1-0-4-1-6"
inkscape:collect="always" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3767-1-0-4-1-6"
id="linearGradient3106"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(339.881,-442.76339)"
x1="205.42113"
y1="289.19193"
x2="330.96988"
y2="289.19193" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3767-1-0-4-1-6-6"
id="linearGradient3071-5"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(339.881,-442.76339)"
x1="205.42113"
y1="289.19193"
x2="330.96988"
y2="289.19193" />
<linearGradient
id="linearGradient3767-1-0-4-1-6-6">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0-2-4-5-8" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3-6-3-2-4" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="matrix(2.0603828,0,0,2.0603828,115.78961,-723.84612)"
gradientUnits="userSpaceOnUse"
id="linearGradient3113"
xlink:href="#linearGradient3767-1-0-4-8"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-0-4-8">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0-2-8" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3-6-4" />
</linearGradient>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.4311616"
inkscape:cx="-197.01761"
inkscape:cy="136.94147"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1920"
inkscape:window-height="1023"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
units="px"
borderlayer="true"
inkscape:showpageshadow="false"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
showborder="false"
inkscape:pagecheckerboard="true" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Calque 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1003.026)">
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:18.96238708px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.58019912"
x="-12.676609"
y="1153.9496"
id="text3775"
transform="scale(1.0245459,0.9760422)"><tspan
sodipodi:role="line"
id="tspan3777"
x="-12.676609"
y="1153.9496"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:189.50143433px;line-height:1.25;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93,';fill:#000000;fill-opacity:1;stroke-width:1.58019912">D</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="128"
height="128"
id="svg2"
version="1.1"
inkscape:version="0.92.3 (2405546, 2018-03-11)"
sodipodi:docname="dolibarr_124x124_color.svg"
inkscape:export-filename="/home/ldestailleur/git/dolibarr-foundation/logo-cliparts/dolibarr_256x256_color.png"
inkscape:export-xdpi="192"
inkscape:export-ydpi="192">
<defs
id="defs4">
<linearGradient
id="linearGradient858">
<stop
id="stop854"
offset="0"
style="stop-color:#263c5c;stop-opacity:1" />
<stop
id="stop856"
offset="1"
style="stop-color:#263c5a;stop-opacity:1" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient858"
id="linearGradient3204"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-129.5163,-666.48391)"
x1="205.42113"
y1="289.19193"
x2="330.96988"
y2="289.19193" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="5.6"
inkscape:cx="68.321429"
inkscape:cy="61.400881"
inkscape:document-units="px"
inkscape:current-layer="g3197"
showgrid="false"
inkscape:window-width="1920"
inkscape:window-height="1023"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
inkscape:showpageshadow="false"
showborder="false"
inkscape:pagecheckerboard="true" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Calque 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-315.1676,-72.803581)">
<g
id="g3197"
transform="matrix(1.0301914,0,0,1.0301914,-9.5153501,-6.0625407)">
<rect
inkscape:export-ydpi="90.544151"
inkscape:export-xdpi="90.544151"
inkscape:export-filename="/home/ldestail/git/foundation/logo/dolibarr_124x124.png"
transform="rotate(90)"
y="-439.41635"
x="76.554825"
height="124.24876"
width="124.24876"
id="rect3765"
style="fill:url(#linearGradient3204);fill-opacity:1;fill-rule:nonzero;stroke:none" />
<g
aria-label="D"
transform="matrix(1.0073139,0,0,0.99273916,-0.13867046,0.34667621)"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none"
id="text3775">
<path
d="m 361.99432,122.6877 -0.0304,57.43789 h -23.7433 V 99.733777 h 30.97607 c 13.58497,0 24.22263,3.083943 31.91298,9.251833 9.13472,7.37805 13.70208,17.39111 13.70208,30.03918 0,12.10156 -3.90373,21.97799 -11.71118,29.6293 -7.80746,7.6513 -17.85956,11.47695 -30.1563,11.47695 -1.44438,0 -7.08526,-0.0182 -7.08526,-0.0182 V 156.4159 h 3.80613 c 13.85823,0 20.78735,-5.79704 20.78735,-17.39111 0,-10.89139 -6.812,-16.33709 -20.43601,-16.33709 z"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:119.92250824px;line-height:1.25;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93,';fill:#ffffff;fill-opacity:1"
id="path854"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccscsssccsssc" />
</g>
<ellipse
style="display:inline;fill:#60bbc1;fill-opacity:1;stroke:none;stroke-width:0.62043476;stroke-opacity:1"
id="path957"
cx="407.14789"
cy="108.85997"
rx="10.732866"
ry="10.693515" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -0,0 +1,327 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="128"
height="128"
id="svg2"
version="1.1"
inkscape:version="0.92.3 (2405546, 2018-03-11)"
sodipodi:docname="dolibarr_256x256_white.svg"
inkscape:export-filename="/home/ldestailleur/git/dolibarr-foundation/logo-cliparts/dolibarr_256x256_white.png"
inkscape:export-xdpi="192"
inkscape:export-ydpi="192">
<defs
id="defs4">
<linearGradient
id="linearGradient858">
<stop
id="stop854"
offset="0"
style="stop-color:#ffffff;stop-opacity:1" />
<stop
id="stop856"
offset="1"
style="stop-color:#ffffff;stop-opacity:1" />
</linearGradient>
<linearGradient
id="linearGradient3767">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771" />
</linearGradient>
<linearGradient
id="linearGradient3755">
<stop
style="stop-color:#16317f;stop-opacity:1;"
offset="0"
id="stop3757" />
<stop
style="stop-color:#2b2baa;stop-opacity:0.98581558;"
offset="1"
id="stop3759" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3767"
id="linearGradient3773"
x1="205.42113"
y1="289.19193"
x2="330.96988"
y2="289.19193"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-129.5163,-666.48391)" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3767-1"
id="linearGradient3773-6"
x1="205.42113"
y1="289.19193"
x2="330.96988"
y2="289.19193"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-129.5163,-666.48391)" />
<linearGradient
id="linearGradient3767-1">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(52.738112,-442.04909)"
gradientUnits="userSpaceOnUse"
id="linearGradient3837"
xlink:href="#linearGradient3767-1"
inkscape:collect="always" />
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(52.738112,-442.04909)"
gradientUnits="userSpaceOnUse"
id="linearGradient3837-1"
xlink:href="#linearGradient3767-1-3"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-3">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-9" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-6" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(53.452398,-634.19193)"
gradientUnits="userSpaceOnUse"
id="linearGradient3877"
xlink:href="#linearGradient3767-1-3"
inkscape:collect="always" />
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(53.452398,-634.19193)"
gradientUnits="userSpaceOnUse"
id="linearGradient3877-0"
xlink:href="#linearGradient3767-1-3-5"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-3-5">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-9-6" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-6-8" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(52.023817,-824.19192)"
gradientUnits="userSpaceOnUse"
id="linearGradient3917"
xlink:href="#linearGradient3767-1-3-5"
inkscape:collect="always" />
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(52.738112,-442.04909)"
gradientUnits="userSpaceOnUse"
id="linearGradient3837-5"
xlink:href="#linearGradient3767-1-0"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-0">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(195.59526,-442.76336)"
gradientUnits="userSpaceOnUse"
id="linearGradient3991"
xlink:href="#linearGradient3767-1-0"
inkscape:collect="always" />
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(195.59526,-442.76336)"
gradientUnits="userSpaceOnUse"
id="linearGradient3991-3"
xlink:href="#linearGradient3767-1-0-4"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-0-4">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0-2" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3-6" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(197.02383,-635.62051)"
gradientUnits="userSpaceOnUse"
id="linearGradient4034"
xlink:href="#linearGradient3767-1-0-4"
inkscape:collect="always" />
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(197.02383,-635.62051)"
gradientUnits="userSpaceOnUse"
id="linearGradient4034-9"
xlink:href="#linearGradient3767-1-0-4-1"
inkscape:collect="always" />
<linearGradient
id="linearGradient3767-1-0-4-1">
<stop
style="stop-color:#4479ab;stop-opacity:1;"
offset="0"
id="stop3769-2-0-2-4" />
<stop
style="stop-color:#1b4b77;stop-opacity:1;"
offset="1"
id="stop3771-8-3-6-3" />
</linearGradient>
<linearGradient
y2="289.19193"
x2="330.96988"
y1="289.19193"
x1="205.42113"
gradientTransform="translate(199.1667,-827.04909)"
gradientUnits="userSpaceOnUse"
id="linearGradient4077"
xlink:href="#linearGradient3767-1-0-4-1"
inkscape:collect="always" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="5.6"
inkscape:cx="50.5723"
inkscape:cy="70.745335"
inkscape:document-units="px"
inkscape:current-layer="g3197"
showgrid="false"
inkscape:window-width="1920"
inkscape:window-height="1023"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Calque 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-315.1676,-72.803581)">
<g
id="g3197"
transform="matrix(1.0301914,0,0,1.0301914,-9.5153501,-6.0625407)">
<rect
inkscape:export-ydpi="90.544151"
inkscape:export-xdpi="90.544151"
inkscape:export-filename="/home/ldestail/git/foundation/logo/dolibarr_124x124.png"
transform="rotate(90)"
y="-439.41635"
x="76.554825"
height="124.24876"
width="124.24876"
id="rect3765"
style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none" />
<g
aria-label="D"
transform="matrix(1.0073139,0,0,0.99273916,-0.13867046,0.34667621)"
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none"
id="text3775">
<path
d="m 361.99432,122.6877 v 56.9749 h -23.7737 V 99.733777 h 30.97607 q 20.37746,0 31.91298,9.251833 13.70208,11.06707 13.70208,30.03918 0,18.15234 -11.71118,29.6293 -11.71119,11.47695 -30.1563,11.47695 -2.16657,0 -7.08526,-0.23422 V 156.4159 h 3.80613 q 20.78735,0 20.78735,-17.39111 0,-16.33709 -20.43601,-16.33709 z"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:119.92250824px;line-height:1.25;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93,';fill:#fbfbfb;fill-opacity:1"
id="path854"
inkscape:connector-curvature="0" />
</g>
<ellipse
style="display:inline;fill:#a1cccf;fill-opacity:1;stroke:none;stroke-width:0.65291774;stroke-opacity:1"
id="path957"
cx="412.50858"
cy="112.0897"
rx="11.512888"
ry="11.040191" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 18 KiB

BIN
doc/images/dolibarr_logo.png Normal file → Executable file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -0,0 +1,209 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="720"
height="200"
id="svg3450"
version="1.1"
inkscape:version="0.92.3 (2405546, 2018-03-11)"
sodipodi:docname="dolibarr_logo.svg"
inkscape:export-filename="/home/ldestailleur/git/dolibarr-foundation/logo-cliparts/dolibarr_logo.png"
inkscape:export-xdpi="77.362831"
inkscape:export-ydpi="77.362831">
<title
id="title3072">Logo Dolibarr ERP-CRM</title>
<defs
id="defs3452">
<linearGradient
id="linearGradient3734-3-6">
<stop
style="stop-color:#49496f;stop-opacity:1"
offset="0"
id="stop3736" />
<stop
style="stop-color:#45455a;stop-opacity:1"
offset="1"
id="stop3738" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3734-3-6"
id="linearGradient4636"
gradientUnits="userSpaceOnUse"
x1="75.697441"
y1="310.53391"
x2="742.98004"
y2="310.53391" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3734-3-6"
id="linearGradient899"
gradientUnits="userSpaceOnUse"
x1="75.697441"
y1="310.53391"
x2="742.98004"
y2="310.53391" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:zoom="1.4142136"
inkscape:cx="391.6782"
inkscape:cy="-50.366015"
inkscape:current-layer="g4648"
inkscape:document-units="px"
showgrid="false"
inkscape:window-width="1920"
inkscape:window-height="1023"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:showpageshadow="false"
showborder="true"
borderlayer="false"
fit-margin-top="24"
fit-margin-left="24"
fit-margin-right="0"
fit-margin-bottom="0"
showguides="true"
inkscape:guide-bbox="true"
inkscape:measure-start="0,0"
inkscape:measure-end="0,0"
inkscape:pagecheckerboard="true">
<inkscape:grid
type="xygrid"
id="grid1458" />
</sodipodi:namedview>
<metadata
id="metadata3455">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>Logo Dolibarr ERP-CRM</dc:title>
<cc:license
rdf:resource="http://creativecommons.org/licenses/by-nd/4.0/" />
<dc:creator>
<cc:Agent>
<dc:title>Laurent Destailleur</dc:title>
</cc:Agent>
</dc:creator>
<dc:rights>
<cc:Agent>
<dc:title>Laurent Destailleur</dc:title>
</cc:Agent>
</dc:rights>
</cc:Work>
<cc:License
rdf:about="http://creativecommons.org/licenses/by-nd/4.0/">
<cc:permits
rdf:resource="http://creativecommons.org/ns#Reproduction" />
<cc:permits
rdf:resource="http://creativecommons.org/ns#Distribution" />
<cc:requires
rdf:resource="http://creativecommons.org/ns#Notice" />
<cc:requires
rdf:resource="http://creativecommons.org/ns#Attribution" />
</cc:License>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:label="Layer 1"
inkscape:groupmode="layer"
style="display:inline"
transform="translate(-51.413681,-199.60957)">
<g
id="g4592">
<g
style="fill:url(#linearGradient4636);fill-opacity:1"
id="g4626">
<g
style="fill:url(#linearGradient899)"
id="g4648">
<path
sodipodi:nodetypes="cccccscsssccsssc"
d="m 112.32913,280.29476 v 98.02589 l -36.631688,-0.40123 v 0.40123 -137.35672 h 47.729468 c 20.93239,0 37.32341,5.28424 49.17307,15.85272 14.07523,12.64204 21.11285,29.7991 21.11285,51.47117 0,20.73563 -6.01506,37.65857 -18.04517,50.76884 -12.03011,13.11027 -27.20637,19.35291 -46.1538,19.35291 -2.22557,0 -6.23968,-0.0713 -11.22982,-0.0888 v -40.23379 l 10.08954,-0.0542 c 21.35314,-0.11469 27.8053,-9.87885 27.8053,-29.74492 0,-18.66206 -10.49627,-27.99309 -31.48881,-27.99309 z"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:194.85823059px;line-height:125%;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93';text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#263c5c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.7072947;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.18431373"
id="path8463"
inkscape:connector-curvature="0" />
<path
d="m 251.18669,274.26322 q 19.12787,0 32.75197,15.35106 13.71432,15.25071 13.71432,36.62179 0,21.67206 -13.89478,36.92279 -13.80455,15.25071 -33.38356,15.25071 -19.57899,0 -33.47377,-15.25071 -13.89479,-15.35105 -13.89479,-36.92279 0,-21.97308 13.89479,-36.9228 13.89478,-15.05005 34.28582,-15.05005 z m -0.90227,37.02313 q -5.41355,0 -9.20303,4.41468 -3.78949,4.31435 -3.78949,10.63537 0,6.22068 3.78949,10.63537 3.87971,4.41468 9.20303,4.41468 5.41356,0 9.20304,-4.41468 3.8797,-4.41469 3.8797,-10.63537 0,-6.32102 -3.78947,-10.63537 -3.78949,-4.41468 -9.29327,-4.41468 z"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:194.85823059px;line-height:125%;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93';text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#263c5c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.7072947;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.18431373"
id="path8465"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="ccccc"
d="M 345.47268,241.05287 V 378.40956 H 311.72822 V 241.05287 Z"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:194.85823059px;line-height:125%;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93';text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#263c5c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.7072947;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.18431373"
id="path8467"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="csscscsccscsssccscc"
d="m 450.676,239.98458 v 81.97261 c 0,13.31093 4.30076,19.9664 12.90229,19.9664 3.66918,0 6.76693,-1.37123 9.29326,-4.11368 2.58647,-2.80935 3.87971,-6.18725 3.87971,-10.1337 0,-4.08023 -1.20301,-7.49158 -3.60903,-10.23403 -2.40603,-2.80935 -5.3534,-4.21402 -8.84213,-4.21402 -2.46617,0 -8.23123,-0.013 -8.23123,-0.013 l -0.25,-38.08747 c 0,0 6.97747,-0.22701 9.02258,-0.22701 12.69177,0 23.54895,5.08358 32.57153,15.25073 9.08273,10.16714 13.6241,22.40785 13.6241,36.72212 0,14.64872 -5.14562,26.5166 -13.80455,37.02313 -8.57803,10.40836 -22.98621,14.59993 -33.92491,14.51154 -6.73664,-0.0544 -13.32335,-1.10024 -19.75947,-4.37784 -6.37595,-3.27757 -11.63912,-7.69225 -15.78951,-13.24404 -7.21807,-9.63203 -10.8271,-22.10686 -10.8271,-37.42447 v -83.37728 z"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:194.85823059px;line-height:125%;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93';text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#263c5c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.7072947;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.18431373"
id="path8471"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="ccssscscsccscscscscc"
d="m 575.66649,342.98354 -0.15625,35.42602 c 0,0 -5.0745,0 -7.36022,0 -13.53387,0 -24.8121,-3.24403 -33.83468,-13.14362 -9.02259,-9.89959 -13.53388,-22.30753 -13.53388,-37.2238 0,-14.51494 4.54137,-26.82254 13.6241,-36.92279 9.14289,-10.10026 20.24066,-15.15039 33.29333,-15.15039 14.55643,0 26.01511,4.74913 34.37604,14.24739 8.42108,9.43136 12.63162,22.34096 12.63162,38.72879 l -0.0625,49.46442 h -33.80696 l 0.125,-46.75541 c 0.0141,-5.28421 -1.17293,-9.49824 -3.5188,-12.64203 -2.28573,-3.14379 -5.38348,-4.71569 -9.29327,-4.71569 -3.54889,0 -6.61657,1.43811 -9.20304,4.31434 -2.58647,2.87623 -3.87971,6.28758 -3.87971,10.23405 0,4.14712 1.17294,7.55846 3.51881,10.23403 2.34587,2.67556 5.32333,4.01334 8.93236,4.01334 2.94737,0 8.14805,-0.10867 8.14805,-0.10867 z"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:194.85823059px;line-height:125%;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93';text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#263c5c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.7072947;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.18431373"
id="path8473"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="ccssccscsc"
d="m 683.66305,275.87667 0.004,38.91662 c 0,0 -4.41872,0.10517 -6.34353,0.10517 -6.13535,0 -9.20303,5.21735 -9.20303,15.65204 v 47.85906 h -33.74447 v -55.08308 c 0,-14.44805 3.54888,-25.95298 10.64665,-34.51479 7.09777,-8.62869 16.57148,-12.94304 28.42114,-12.94304 2.64662,0 10.21945,0.008 10.21945,0.008 z"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:194.85823059px;line-height:125%;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93';text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#263c5c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.7072947;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.18431373"
id="path8475"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="ccssccscscc"
d="m 742.97999,275.87857 -0.0312,38.94597 c 0,0 -4.51247,0.0739 -6.43728,0.0739 -6.13537,0 -9.20305,5.21735 -9.20305,15.65204 v 47.85906 h -33.74445 v -55.08308 c 0,-14.44805 3.54888,-25.95298 10.64664,-34.51479 7.09777,-8.62869 16.57149,-12.94304 28.42114,-12.94304 2.64663,0 10.34825,0.01 10.34825,0.01 z"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:194.85823059px;line-height:125%;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93';text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#263c5c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.7072947;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.18431373"
id="path8477"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="ccccc"
d="m 398.91378,276.40957 v 102 h -33.74446 v -102 z"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:194.85823059px;line-height:125%;font-family:'Bauhaus 93';-inkscape-font-specification:'Bauhaus 93';text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#263c5c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.47124052;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.18431373"
id="path8467-5"
inkscape:connector-curvature="0" />
</g>
</g>
</g>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#007b8c;fill-opacity:1;fill-rule:nonzero;stroke:none;"
x="643.31146"
y="229.77211"
id="text5484"
transform="scale(0.88533213,1.1295196)"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:42.95219803px;line-height:100%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#007b8c;fill-opacity:1;fill-rule:nonzero;stroke:none;"
sodipodi:role="line"
id="tspan5486"
x="643.31146"
y="229.77211">ERP/CRM</tspan></text>
<ellipse
style="fill:#007b8c;fill-opacity:1;stroke:none;stroke-width:1.02999127;stroke-opacity:1"
id="path957"
cx="381.94193"
cy="247.58162"
rx="17.456699"
ry="18.119612" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 13 KiB

View File

@ -166,8 +166,8 @@ if ($action == 'update')
dolibarr_set_const($db, "MAIN_MOTD", dol_htmlcleanlastbr(GETPOST("main_motd", 'none')), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_HOME", dol_htmlcleanlastbr(GETPOST("main_home", 'none')), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_HELP_DISABLELINK", GETPOST("MAIN_HELP_DISABLELINK", 'aZ09'), 'chaine', 0, '', 0); // Param for all entities
dolibarr_set_const($db, "MAIN_BUGTRACK_ENABLELINK", GETPOST('MAIN_BUGTRACK_ENABLELINK', 'aZ09'), 'chaine', 0, '', $conf->entity);
//dolibarr_set_const($db, "MAIN_BUGTRACK_ENABLELINK", GETPOST('MAIN_BUGTRACK_ENABLELINK', 'aZ09'), 'chaine', 0, '', $conf->entity);
//dolibarr_set_const($db, "MAIN_HELP_DISABLELINK", GETPOST("MAIN_HELP_DISABLELINK", 'aZ09'), 'chaine', 0, '', 0); // Param for all entities
$varforimage = 'imagebackground'; $dirforimage = $conf->mycompany->dir_output.'/logos/';
if ($_FILES[$varforimage]["tmp_name"])
@ -349,7 +349,8 @@ print '</tr>';
// Show bugtrack link
print '<tr class="oddeven"><td class="titlefield">'.$langs->trans("ShowBugTrackLink", $langs->transnoentitiesnoconv("FindBug")).'</td><td>';
print $form->selectyesno('MAIN_BUGTRACK_ENABLELINK', $conf->global->MAIN_BUGTRACK_ENABLELINK, 1);
print ajax_constantonoff("MAIN_BUGTRACK_ENABLELINK", array(), $conf->entity, 0, 0, 1, 0);
//print $form->selectyesno('MAIN_BUGTRACK_ENABLELINK', $conf->global->MAIN_BUGTRACK_ENABLELINK, 1);
print '</td>';
print '<td width="20">&nbsp;</td>';
print '</tr>';
@ -357,7 +358,8 @@ print '</tr>';
// Hide wiki link on login page
$pictohelp = '<span class="fa fa-question-circle"></span>';
print '<tr class="oddeven"><td class="titlefield">'.$langs->trans("DisableLinkToHelp", $pictohelp).'</td><td>';
print $form->selectyesno('MAIN_HELP_DISABLELINK', isset($conf->global->MAIN_HELP_DISABLELINK) ? $conf->global->MAIN_HELP_DISABLELINK : 0, 1);
print ajax_constantonoff("MAIN_HELP_DISABLELINK", array(), $conf->entity, 0, 0, 1, 0);
//print $form->selectyesno('MAIN_HELP_DISABLELINK', isset($conf->global->MAIN_HELP_DISABLELINK) ? $conf->global->MAIN_HELP_DISABLELINK : 0, 1);
print '</td>';
print '<td width="20">&nbsp;</td>';
print '</tr>';

View File

@ -156,9 +156,13 @@ $form->select_comptes($conf->global->PRELEVEMENT_ID_BANKACCOUNT, 'PRELEVEMENT_ID
print '</td></tr>';
// ICS
print '<tr class="oddeven"><td class="fieldrequired">'.$langs->trans("ICS").'</td>';
print '<tr class="oddeven"><td class="fieldrequired">';
$htmltext = $langs->trans("AskThisIDToYourBank");
print $form->textwithpicto($langs->trans("ICS"), $htmltext);
print '</td>';
print '<td class="left">';
print '<input type="text" name="PRELEVEMENT_ICS" value="'.$conf->global->PRELEVEMENT_ICS.'" size="15" ></td>';
print '<input type="text" name="PRELEVEMENT_ICS" value="'.$conf->global->PRELEVEMENT_ICS.'" size="15" >';
print '</td>';
print '</td></tr>';
//User
@ -169,13 +173,19 @@ print '</td>';
print '</tr>';
//EntToEnd
print '<tr class="oddeven"><td>'.$langs->trans("END_TO_END").'</td>';
print '<tr class="oddeven"><td>';
$htmltext = $langs->trans("KeepThisEmptyInMostCases");
print $form->textwithpicto($langs->trans("END_TO_END"), $htmltext);
print '</td>';
print '<td class="left">';
print '<input type="text" name="PRELEVEMENT_END_TO_END" value="'.$conf->global->PRELEVEMENT_END_TO_END.'" size="15" ></td>';
print '</td></tr>';
//USTRD
print '<tr class="oddeven"><td>'.$langs->trans("USTRD").'</td>';
print '<tr class="oddeven"><td>';
$htmltext = $langs->trans("KeepThisEmptyInMostCases");
print $form->textwithpicto($langs->trans("USTRD"), $htmltext);
print '</td>';
print '<td class="left">';
print '<input type="text" name="PRELEVEMENT_USTRD" value="'.$conf->global->PRELEVEMENT_USTRD.'" size="15" ></td>';
print '</td></tr>';

View File

@ -328,14 +328,18 @@ function getConfigFilePath()
*/
function getTableColumn($name, array $list)
{
global $langs;
$name = strtolower($name);
$html = "<td align='center'>";
if (in_array($name, $list))
{
$html .= '<img src="../../theme/eldy/img/tick.png" alt="Ok">';
if ($name == 'xdebug') $html .= '<img src="../../theme/eldy/img/warning.png" title="'.$langs->trans("ModuleActivated", "xdebug").'">';
else $html .= '<img src="../../theme/eldy/img/tick.png" title="Ok">';
} else {
$html .= '<img src="../../theme/eldy/img/warning.png" alt="Warning">';
if ($name == 'xdebug') $html .= yn(0);
else $html .= '<img src="../../theme/eldy/img/warning.png" title="Warning">';
}
$html .= "</td>";

View File

@ -7,7 +7,7 @@
* Copyright (C) 2014 Cedric GROSS <c.gross@kreiz-it.fr>
* Copyright (C) 2015 Marcos García <marcosgdf@gmail.com>
* Copyright (C) 2017 Open-DSI <support@open-dsi.fr>
* Copyright (C) 2018 Frédéric France <frederic.france@netlogic.fr>
* Copyright (C) 2018 Frédéric France <frederic.france@netlogic.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
@ -501,7 +501,7 @@ $sql .= ' a.datep2,';
$sql .= ' a.percent,';
$sql .= ' a.fk_user_author,a.fk_user_action,';
$sql .= ' a.transparency, a.priority, a.fulldayevent, a.location,';
$sql .= ' a.fk_soc, a.fk_contact,';
$sql .= ' a.fk_soc, a.fk_contact, a.fk_project,';
$sql .= ' a.fk_element, a.elementtype,';
$sql .= ' ca.code as type_code, ca.libelle as type_label, ca.color as type_color';
$sql .= ' FROM '.MAIN_DB_PREFIX.'c_actioncomm as ca, '.MAIN_DB_PREFIX."actioncomm as a";
@ -634,6 +634,8 @@ if ($resql)
$event->fk_element = $obj->fk_element;
$event->elementtype = $obj->elementtype;
$event->fk_project = $obj->fk_project;
$event->thirdparty_id = $obj->fk_soc;
$event->contact_id = $obj->fk_contact;
@ -1574,7 +1576,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa
// Hour start
if ($tmpyearstart == $annee && $tmpmonthstart == $mois && $tmpdaystart == $jour)
{
$daterange .= dol_print_date($event->date_start_in_calendar, '%H:%M'); // Il faudrait utiliser ici tzuser, mais si on ne peut pas car qd on rentre un date dans fiche action, en input la conversion local->gmt se base sur le TZ server et non user
$daterange .= dol_print_date($event->date_start_in_calendar, 'hour'); // Il faudrait utiliser ici tzuser, mais si on ne peut pas car qd on rentre un date dans fiche action, en input la conversion local->gmt se base sur le TZ server et non user
if ($event->date_end_in_calendar && $event->date_start_in_calendar != $event->date_end_in_calendar)
{
if ($tmpyearstart == $tmpyearend && $tmpmonthstart == $tmpmonthend && $tmpdaystart == $tmpdayend)
@ -1594,7 +1596,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa
if ($event->date_end_in_calendar && $event->date_start_in_calendar != $event->date_end_in_calendar)
{
if ($tmpyearend == $annee && $tmpmonthend == $mois && $tmpdayend == $jour)
$daterange .= dol_print_date($event->date_end_in_calendar, '%H:%M'); // Il faudrait utiliser ici tzuser, mais si on ne peut pas car qd on rentre un date dans fiche action, en input la conversion local->gmt se base sur le TZ server et non user
$daterange .= dol_print_date($event->date_end_in_calendar, 'hour'); // Il faudrait utiliser ici tzuser, mais si on ne peut pas car qd on rentre un date dans fiche action, en input la conversion local->gmt se base sur le TZ server et non user
}
} else {
if ($showinfo)

View File

@ -78,13 +78,13 @@ print '<tr class="liste_titre"><th colspan="2">'.$langs->trans("Statistics").'</
print '<tr class="oddeven"><td>'.$langs->trans("NbOfInvoiceToPayByBankTransfer").'</td>';
print '<td class="right">';
print '<a href="'.DOL_URL_ROOT.'/compta/prelevement/demandes.php?status=0&type=bank-transfer">';
print $bprev->NbFactureAPrelever();
print $bprev->nbOfInvoiceToPay('credit-transfer');
print '</a>';
print '</td></tr>';
print '<tr class="oddeven"><td>'.$langs->trans("AmountToWithdraw").'</td>';
print '<td class="right">';
print price($bprev->SommeAPrelever(), '', '', 1, -1, -1, 'auto');
print price($bprev->SommeAPrelever('credit-transfer'), '', '', 1, -1, -1, 'auto');
print '</td></tr></table></div><br>';

View File

@ -646,17 +646,21 @@ class BonPrelevement extends CommonObject
/**
* Returns amount of withdrawal
*
* @return double Total amount
* @param string $mode 'direct-debit' or 'credit-transfer'
* @return double <O if KO, Total amount
*/
public function SommeAPrelever()
public function SommeAPrelever($mode = 'direct-debit')
{
// phpcs:enable
global $conf;
$sql = "SELECT sum(pfd.amount) as nb";
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f,";
if ($mode != 'credit-transfer') {
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f,";
} else {
$sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as f,";
}
$sql .= " ".MAIN_DB_PREFIX."prelevement_facture_demande as pfd";
//$sql.= " ,".MAIN_DB_PREFIX."c_paiement as cp";
$sql .= " WHERE f.fk_statut = 1";
$sql .= " AND f.entity IN (".getEntity('invoice').")";
$sql .= " AND f.rowid = pfd.fk_facture";
@ -676,32 +680,51 @@ class BonPrelevement extends CommonObject
$error = 1;
dol_syslog(get_class($this)."::SommeAPrelever Erreur -1");
dol_syslog($this->db->error());
return -1;
}
}
/**
* Get number of invoices waiting for payment
*
* @param string $mode 'direct-debit' or 'credit-transfer'
* @return int <O if KO, number of invoices if OK
*/
public function nbOfInvoiceToPay($mode = 'direct-debit')
{
return $this->NbFactureAPrelever($mode);
}
// phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps
/**
* Get number of invoices to withdrawal
* TODO delete params banque and agence when not necesary
*
* @param int $banque dolibarr mysoc bank
* @param int $agence dolibarr mysoc agence
* @param string $mode 'direct-debit' or 'credit-transfer'
* @return int <O if KO, number of invoices if OK
*/
public function NbFactureAPrelever($banque = 0, $agence = 0)
public function NbFactureAPrelever($mode = 'direct-debit')
{
// phpcs:enable
global $conf;
$sql = "SELECT count(f.rowid) as nb";
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f";
if ($mode == 'credit-transfer') {
$sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as f";
} else {
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f";
}
$sql .= ", ".MAIN_DB_PREFIX."prelevement_facture_demande as pfd";
$sql .= " WHERE f.entity IN (".getEntity('invoice').")";
if (empty($conf->global->WITHDRAWAL_ALLOW_ANY_INVOICE_STATUS))
{
$sql .= " AND f.fk_statut = ".Facture::STATUS_VALIDATED;
}
$sql .= " AND f.rowid = pfd.fk_facture";
if ($mode == 'credit-transfer') {
$sql .= " AND f.rowid = pfd.fk_facture_fourn";
} else {
$sql .= " AND f.rowid = pfd.fk_facture";
}
$sql .= " AND pfd.traite = 0";
$sql .= " AND f.total_ttc > 0";

View File

@ -139,10 +139,8 @@ print load_fiche_titre($title);
dol_fiche_head();
$nb = $bprev->NbFactureAPrelever();
$nb1 = $bprev->NbFactureAPrelever(1);
$nb11 = $bprev->NbFactureAPrelever(1, 1);
$pricetowithdraw = $bprev->SommeAPrelever();
if ($nb < 0 || $nb1 < 0 || $nb11 < 0)
if ($nb < 0)
{
dol_print_error($bprev->error);
}

View File

@ -78,13 +78,13 @@ print '<tr class="liste_titre"><th colspan="2">'.$langs->trans("Statistics").'</
print '<tr class="oddeven"><td>'.$langs->trans("NbOfInvoiceToWithdraw").'</td>';
print '<td class="right">';
print '<a href="'.DOL_URL_ROOT.'/compta/prelevement/demandes.php?status=0">';
print $bprev->NbFactureAPrelever();
print $bprev->nbOfInvoiceToPay('direct-debit');
print '</a>';
print '</td></tr>';
print '<tr class="oddeven"><td>'.$langs->trans("AmountToWithdraw").'</td>';
print '<td class="right">';
print price($bprev->SommeAPrelever(), '', '', 1, -1, -1, 'auto');
print price($bprev->SommeAPrelever('direct-debit'), '', '', 1, -1, -1, 'auto');
print '</td></tr></table></div><br>';

View File

@ -75,8 +75,6 @@ $pagenext = $page + 1;
if (!$sortorder) $sortorder = "DESC";
if (!$sortfield)
{
//if (empty($conf->global->FICHINTER_DISABLE_DETAILS)) $sortfield="fd.date";
//else
$sortfield = "f.ref";
}
@ -203,7 +201,7 @@ foreach ($arrayfields as $tmpkey => $tmpval)
$sql = "SELECT";
$sql .= " f.ref, f.rowid, f.fk_statut as status, f.description, f.datec as date_creation, f.tms as date_update, f.note_private,";
if (empty($conf->global->FICHINTER_DISABLE_DETAILS) && $atleastonefieldinlines) $sql .= "fd.rowid as lineid, fd.description as descriptiondetail, fd.date as dp, fd.duree,";
if (empty($conf->global->FICHINTER_DISABLE_DETAILS) && $atleastonefieldinlines) $sql .= " fd.rowid as lineid, fd.description as descriptiondetail, fd.date as dp, fd.duree,";
$sql .= " s.nom as name, s.rowid as socid, s.client, s.fournisseur, s.email, s.status as thirdpartystatus";
if (!empty($conf->projet->enabled)) {
$sql .= ", pr.rowid as projet_id, pr.ref as projet_ref, pr.title as projet_title";
@ -245,7 +243,7 @@ if ($search_contrat_ref) {
$sql .= natural_search('c.ref', $search_contrat_ref);
}
if ($search_desc) {
if (empty($conf->global->FICHINTER_DISABLE_DETAILS)) $sql .= natural_search(array('f.description', 'fd.description'), $search_desc);
if (empty($conf->global->FICHINTER_DISABLE_DETAILS) && $atleastonefieldinlines) $sql .= natural_search(array('f.description', 'fd.description'), $search_desc);
else $sql .= natural_search(array('f.description'), $search_desc);
}
if ($search_status != '' && $search_status >= 0) {

View File

@ -21,6 +21,9 @@
* \brief Show example of import file
*/
if (! defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', '1'); // Do not roll the Anti CSRF token (used if MAIN_SECURITY_CSRF_WITH_TOKEN is on)
/**
* This file is a wrapper, so empty header
*

View File

@ -808,6 +808,7 @@ if ($step == 4 && $datatoimport)
print '<tr><td>'.$langs->trans("CsvOptions").'</td>';
print '<td>';
print '<form>';
print '<input type="hidden" name="token" value="'.newToken().'">';
print '<input type="hidden" value="'.$step.'" name="step">';
print '<input type="hidden" value="'.$format.'" name="format">';
print '<input type="hidden" value="'.$excludefirstline.'" name="excludefirstline">';
@ -1224,6 +1225,7 @@ if ($step == 5 && $datatoimport)
print '<form action="'.$_SERVER["PHP_SELF"].'?'.$param2.'" method="POST">';
print '<input type="hidden" name="token" value="'.newToken().'">';
print '<input type="hidden" name="step" value="5">'; // step 5
print '<input type="hidden" name="action" value="launchsimu">'; // step 5

View File

@ -67,8 +67,7 @@ ALTER TABLE llx_facturedet_rec_extrafields ADD INDEX idx_facturedet_rec_extrafie
ALTER TABLE llx_facture_rec MODIFY COLUMN titre varchar(200) NOT NULL;
-- This var is per entity now, so we remove const if global if exists
delete from llx_const where name = 'PROJECT_HIDE_TASKS' and entity = 0;
delete from llx_const where name in ('PROJECT_HIDE_TASKS', 'MAIN_BUGTRACK_ENABLELINK', 'MAIN_HELP_DISABLELINK') and entity = 0;
-- For v12

View File

@ -207,7 +207,7 @@ ModulesMarketPlaces=Find external app/modules
ModulesDevelopYourModule=Develop your own app/modules
ModulesDevelopDesc=You may also develop your own module or find a partner to develop one for you.
DOLISTOREdescriptionLong=Instead of switching on <a href="https://www.dolistore.com">www.dolistore.com</a> web site to find an external module, you can use this embedded tool that will perform the search on the external market place for you (may be slow, need an internet access)...
NewModule=New
NewModule=New module
FreeModule=Free
CompatibleUpTo=Compatible with version %s
NotCompatible=This module does not seem compatible with your Dolibarr %s (Min %s - Max %s).
@ -446,6 +446,7 @@ LinkToTestClickToDial=Enter a phone number to call to show a link to test the Cl
RefreshPhoneLink=Refresh link
LinkToTest=Clickable link generated for user <strong>%s</strong> (click phone number to test)
KeepEmptyToUseDefault=Keep empty to use default value
KeepThisEmptyInMostCases=In most cases, you can keep this field empy.
DefaultLink=Default link
SetAsDefault=Set as default
ValueOverwrittenByUserSetup=Warning, this value may be overwritten by user specific setup (each user can set his own clicktodial url)

View File

@ -11,7 +11,7 @@ CloseEtablishment=Close establishment
# Dictionary
DictionaryPublicHolidays=HRM - Public holidays
DictionaryDepartment=HRM - Department list
DictionaryFunction=HRM - Function list
DictionaryFunction=HRM - Job positions
# Module
Employees=Employees
Employee=Employee

View File

@ -218,6 +218,6 @@ ErrorFoundDuringMigration=Error(s) were reported during the migration process so
YouTryInstallDisabledByDirLock=The application tried to self-upgrade, but the install/upgrade pages have been disabled for security (directory renamed with .lock suffix).<br>
YouTryInstallDisabledByFileLock=The application tried to self-upgrade, but the install/upgrade pages have been disabled for security (by the existence of a lock file <strong>install.lock</strong> in the dolibarr documents directory).<br>
ClickHereToGoToApp=Click here to go to your application
ClickOnLinkOrRemoveManualy=Click on the following link. If you always see this same page, you must remove/rename the file install.lock in the documents directory.
ClickOnLinkOrRemoveManualy=If an upgrade is in progress, please wait. If not, click on the following link. If you always see this same page, you must remove/rename the file install.lock in the documents directory.
Loaded=Loaded
FunctionTest=Function test

View File

@ -1655,10 +1655,11 @@ function top_menu($head, $title = '', $target = '', $disablejs = 0, $disablehead
$langs->load('admin');
$appli .= '<br>'.$langs->trans("Database").': '.$db->database_name;
}
$text = '<span href="#" class="aversion"><span class="hideonsmartphone small">'.DOL_VERSION.'</span></span>';
$toprightmenu .= @Form::textwithtooltip('', $appli, 2, 1, $text, 'login_block_elem', 2);
}
$text = '<span href="#" class="aversion"><span class="hideonsmartphone small">'.DOL_VERSION.'</span></span>';
$toprightmenu .= @Form::textwithtooltip('', $appli, 2, 1, $text, 'login_block_elem', 2);
// Logout link
$toprightmenu .= @Form::textwithtooltip('', $logouthtmltext, 2, 1, $logouttext, 'login_block_elem logout-btn', 2);

View File

@ -626,14 +626,18 @@ if ($dirins && $action == 'confirm_removefile' && !empty($module))
$dirtodelete = $dirins.'/'.$dirnametodelete;
$result = dol_delete_file($filetodelete);
if (dol_is_dir_empty($dirtodelete)) dol_delete_dir($dirtodelete);
if (! $result) {
setEventMessages($langs->trans("ErrorFailToDeleteFile", basename($filetodelete)), null, 'errors');
} else {
if (dol_is_dir_empty($dirtodelete)) dol_delete_dir($dirtodelete);
// Update descriptor file to comment file
if (in_array($tab, array('css', 'js')))
{
$srcfile = $dirins.'/'.strtolower($module).'/core/modules/mod'.$module.'.class.php';
$arrayreplacement = array('/^\s*\''.preg_quote('/'.$relativefilename, '/').'\',*/m'=>' // \'/'.$relativefilename.'\',');
dolReplaceInFile($srcfile, $arrayreplacement, '', 0, 0, 1);
// Update descriptor file to comment file
if (in_array($tab, array('css', 'js')))
{
$srcfile = $dirins.'/'.strtolower($module).'/core/modules/mod'.$module.'.class.php';
$arrayreplacement = array('/^\s*\''.preg_quote('/'.$relativefilename, '/').'\',*/m'=>' // \'/'.$relativefilename.'\',');
dolReplaceInFile($srcfile, $arrayreplacement, '', 0, 0, 1);
}
}
}
}
@ -1701,7 +1705,7 @@ $head[$h][1] = $langs->trans("DangerZone");
$head[$h][2] = 'deletemodule';
$h++;
dol_fiche_head($head, $module, $langs->trans("Modules"), -1, 'generic', 0, $infomodulesfound, '', 8); // Modules
dol_fiche_head($head, $module, '', -1, '', 0, $infomodulesfound, '', 8); // Modules
if ($module == 'initmodule')
{
@ -2343,7 +2347,7 @@ if ($module == 'initmodule')
}
} else {
//print '<span class="opacitymedium">'.$langs->trans("FileNotYetGenerated").'</span> ';
print '<a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&tabobj='.$tabobj.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initapi&format=php&file='.urlencode($pathtoapi).'"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a>';
print '<a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&tabobj='.$tabobj.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initapi&format=php&file='.urlencode($pathtoapi).'"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a>';
}
// PHPUnit
print '<br>';
@ -2356,7 +2360,7 @@ if ($module == 'initmodule')
print '<a class="reposition editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&tabobj='.$tabobj.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=confirm_removefile&file='.urlencode($pathtophpunit).'">'.img_picto($langs->trans("Delete"), 'delete').'</a>';
} else {
//print '<span class="opacitymedium">'.$langs->trans("FileNotYetGenerated").'</span> ';
print '<a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&tabobj='.$tabobj.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initphpunit&format=php&file='.urlencode($pathtophpunit).'"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a>';
print '<a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&tabobj='.$tabobj.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initphpunit&format=php&file='.urlencode($pathtophpunit).'"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a>';
}
print '<br>';
@ -2391,7 +2395,7 @@ if ($module == 'initmodule')
print ' &nbsp; ';
print '<a class="reposition editfielda" href="'.$_SERVER["PHP_SELF"].'?tab='.$tab.'&tabobj='.$tabobj.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=droptableextrafields">'.$langs->trans("DropTableIfEmpty").'</a>';
} else {
print '<a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&tabobj='.$tabobj.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initsqlextrafields&format=sql&file='.urlencode($pathtosqlextra).'"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a>';
print '<a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&tabobj='.$tabobj.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initsqlextrafields&format=sql&file='.urlencode($pathtosqlextra).'"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a>';
}
//print ' &nbsp; <a href="'.$_SERVER["PHP_SELF"].'">'.$langs->trans("RunSql").'</a>';
print '<br>';
@ -2481,15 +2485,15 @@ if ($module == 'initmodule')
//$propstat = $reflector->getStaticProperties();
//var_dump($reflectorpropdefault);
print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">';
print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST" class="center">';
print '<input type="hidden" name="token" value="'.newToken().'">';
print '<input type="hidden" name="action" value="addproperty">';
print '<input type="hidden" name="tab" value="objects">';
print '<input type="hidden" name="module" value="'.dol_escape_htmltag($module.($forceddirread ? '@'.$dirread : '')).'">';
print '<input type="hidden" name="tabobj" value="'.dol_escape_htmltag($tabobj).'">';
print '<input class="button" type="submit" name="regenerateclasssql" value="'.$langs->trans("RegenerateClassAndSql").'">';
//print '<input class="button" type="submit" name="regeneratemissing" value="'.$langs->trans("RegenerateMissingFiles").'">';
print '<input class="button buttongen" type="submit" name="regenerateclasssql" value="'.$langs->trans("RegenerateClassAndSql").'">';
//print '<input class="button buttongen" type="submit" name="regeneratemissing" value="'.$langs->trans("RegenerateMissingFiles").'">';
print '<br><br>';
print load_fiche_titre($langs->trans("ObjectProperties"), '', '');
@ -3018,7 +3022,7 @@ if ($module == 'initmodule')
print '<a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=confirm_removefile&format='.$format.'&file='.urlencode($pathtohook).'">'.img_picto($langs->trans("Delete"), 'delete').'</a></td>';
} else {
print '<span class="opacitymedium">'.$langs->trans("FileNotYetGenerated").'</span>';
print '<a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=inithook&format=php&file='.urlencode($pathtohook).'"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a></td>';
print '<a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=inithook&format=php&file='.urlencode($pathtohook).'"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a></td>';
print '<td></td>';
}
print '</tr>';
@ -3084,7 +3088,7 @@ if ($module == 'initmodule')
} else {
print '<tr><td>';
print '<span class="fa fa-file-o"></span> '.$langs->trans("NoTrigger");
print '<a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=inittrigger&format=php"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a></td>';
print '<a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=inittrigger&format=php"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a></td>';
print '<td></td>';
print '</tr>';
}
@ -3135,7 +3139,7 @@ if ($module == 'initmodule')
print '</td><td><a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=confirm_removefile&format='.$format.'&file='.urlencode($pathtohook).'">'.img_picto($langs->trans("Delete"), 'delete').'</a></td>';
} else {
print '<span class="opacitymedium">'.$langs->trans("FileNotYetGenerated").'</span>';
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initcss&format=php&file='.urlencode($pathtohook).'"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a></td>';
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initcss&format=php&file='.urlencode($pathtohook).'"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a></td>';
}
print '</tr>';
} else {
@ -3183,7 +3187,7 @@ if ($module == 'initmodule')
print '</td><td><a class="editfielda" href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=confirm_removefile&format='.$format.'&file='.urlencode($pathtohook).'">'.img_picto($langs->trans("Delete"), 'delete').'</a></td>';
} else {
print '<span class="opacitymedium">'.$langs->trans("FileNotYetGenerated").'</span>';
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initjs&format=php&file='.urlencode($pathtohook).'"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a></td>';
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initjs&format=php&file='.urlencode($pathtohook).'"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a></td>';
}
print '</tr>';
} else {
@ -3237,7 +3241,7 @@ if ($module == 'initmodule')
}
} else {
print '<tr><td><span class="fa fa-file-o"></span> '.$langs->trans("NoWidget");
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initwidget&format=php"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a>';
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initwidget&format=php"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a>';
print '</td></tr>';
}
print '</table>';
@ -3319,7 +3323,7 @@ if ($module == 'initmodule')
}
} else {
print '<tr><td><span class="fa fa-file-o"></span> '.$langs->trans("NoCLIFile");
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initcli&format=php"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a>';
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initcli&format=php"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a>';
print '</td></tr>';
}
print '</table>';
@ -3492,7 +3496,7 @@ if ($module == 'initmodule')
} else {
print '<tr><td>';
print '<span class="fa fa-file-o"></span> '.$langs->trans("FileNotYetGenerated");
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initdoc&format=php"><input type="button" class="button" value="'.$langs->trans("Generate").'"></a></td>';
print '</td><td><a href="'.$_SERVER['PHP_SELF'].'?tab='.$tab.'&module='.$module.($forceddirread ? '@'.$dirread : '').'&action=initdoc&format=php"><input type="button" class="button buttongen" value="'.$langs->trans("Generate").'"></a></td>';
print '</tr>';
}
print '</table>';

View File

@ -59,6 +59,7 @@ if (!$res) die("Include of main fails");
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
dol_include_once('/mymodule/class/myobject.class.php');
dol_include_once('/mymodule/lib/mymodule_myobject.lib.php');
@ -181,6 +182,7 @@ if (empty($reshook))
$form = new Form($db);
$formfile = new FormFile($db);
$formproject = new FormProjets($db);
$title = $langs->trans("MyObject");
$help_url = '';
@ -215,6 +217,9 @@ if ($action == 'create')
dol_fiche_head(array(), '');
// Set some default values
//if (! GETPOSTISSET('fieldname')) $_POST['fieldname'] = 'myvalue';
print '<table class="border centpercent tableforfieldcreate">'."\n";
// Common attributes
@ -241,7 +246,7 @@ if ($action == 'create')
// Part to edit record
if (($id || $ref) && $action == 'edit')
{
print load_fiche_titre($langs->trans("MyObject"));
print load_fiche_titre($langs->trans("MyObject"), '', 'object_'.$object->picto);
print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'">';
print '<input type="hidden" name="token" value="'.newToken().'">';
@ -343,8 +348,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
$morehtmlref.='<br>'.$langs->trans('Project') . ' ';
if ($permissiontoadd)
{
if ($action != 'classify')
//$morehtmlref.='<a class="editfielda" href="' . $_SERVER['PHP_SELF'] . '?action=classify&amp;id=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('SetProject')) . '</a> : ';
//if ($action != 'classify') $morehtmlref.='<a class="editfielda" href="' . $_SERVER['PHP_SELF'] . '?action=classify&amp;id=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('SetProject')) . '</a> ';
$morehtmlref.=' : ';
if ($action == 'classify') {
//$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1);
@ -379,7 +383,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
print '<table class="border centpercent">'."\n";
// Common attributes
//$keyforbreak='fieldkeytoswitchonsecondcolumn'; // We change column just after this field
//$keyforbreak='fieldkeytoswitchonsecondcolumn'; // We change column just before this field
//unset($object->fields['fk_project']); // Hide field already shown in banner
//unset($object->fields['fk_soc']); // Hide field already shown in banner
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_view.tpl.php';