This commit is contained in:
Juan Ferrer Toribio 2015-10-22 08:12:17 +02:00
parent c0e1266cb4
commit b615c6b2bf
495 changed files with 1 additions and 31161 deletions

2
debian/changelog vendored
View File

@ -1,4 +1,4 @@
hedera-web (1.231-deb8) stable; urgency=low
hedera-web (1.232-deb8) stable; urgency=low
* Initial Release.

1
debian/files vendored
View File

@ -1 +0,0 @@
hedera-web_1.231-deb8_all.deb misc optional

View File

@ -1,19 +0,0 @@
dh_auto_configure
dh_auto_build
dh_auto_test
dh_prep
dh_auto_install
dh_install
dh_installdocs
dh_installchangelogs
dh_installcron
dh_perl
dh_link
dh_strip_nondeterminism
dh_compress
dh_fixperms
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb
dh_builddeb

View File

@ -1,2 +0,0 @@
misc:Depends=
misc:Pre-Depends=

View File

@ -1,3 +0,0 @@
/etc/cron.d/hedera-web
/etc/hedera-web/apache.conf
/etc/hedera-web/config.php

View File

@ -1,12 +0,0 @@
Package: hedera-web
Version: 1.231-deb8
Architecture: all
Maintainer: Juan Ferrer Toribio <juan@verdnatura.es>
Installed-Size: 5439
Depends: apache2, php5-mysql, php-vn-web
Suggests: php-text-captcha, php5-imap, vn-image, tinymce
Section: misc
Priority: optional
Homepage: http://www.verdnatura.es
Description: Verdnatura's web page
Verdnatura's web page.

View File

@ -1,482 +0,0 @@
9016f3bf40f1593ac0fbb5723208112b usr/share/doc/hedera-web/Htk.odg
c7c0628416bdb80db8dee0dd9cfc6d65 usr/share/doc/hedera-web/changelog.Debian.gz
cf9a957e8a6c4c92648ceb473f0d71c0 usr/share/doc/hedera-web/copyright
a23fa744fbff94491df1db91127345dd usr/share/hedera-web/forms/account/address-list/address-list.js
e23d86cb18540d51e815a717088dc066 usr/share/hedera-web/forms/account/address-list/style.css
a544c571b4962ba244f76378bed62a07 usr/share/hedera-web/forms/account/address-list/ui.xml
a3596b3db2ae936ac3454c7cdb0d7c7b usr/share/hedera-web/forms/account/address/address.js
f627dfd5c014efc8c031485bd1f557dc usr/share/hedera-web/forms/account/address/style.css
15bb25f56c6610dffb8633a1927331b4 usr/share/hedera-web/forms/account/address/ui.xml
5121a6f34a57b17cae2f3f84f1c99945 usr/share/hedera-web/forms/account/conf/conf.js
240c73e8e763711c08a836e2be507782 usr/share/hedera-web/forms/account/conf/style.css
40ab7f0fa691e3438df0cc24fd38166a usr/share/hedera-web/forms/account/conf/ui.xml
a96570784090cfc026690ec97ed0f99a usr/share/hedera-web/forms/admin/access-log/access-log.js
0074b73b1547409e63cbec4439345d11 usr/share/hedera-web/forms/admin/access-log/style.css
2eb53f46f7ebf769a023f5d45c218f04 usr/share/hedera-web/forms/admin/access-log/ui.xml
e90cdff2090e482962f9b368f847057f usr/share/hedera-web/forms/admin/links/links.js
fde6112d1cbf58541c652d6426ebc440 usr/share/hedera-web/forms/admin/links/style.css
e32d0fa7c53ed43424db3cbc94efdbc2 usr/share/hedera-web/forms/admin/links/ui.xml
1f4cbb10e6008292dd34686f189b92e0 usr/share/hedera-web/forms/admin/photos/photos.js
ac251342821db29cfe1d2a9f7e9f9dc3 usr/share/hedera-web/forms/admin/photos/send-data.php
a12efe27dfbeb6dd9fefcd12d5e684cd usr/share/hedera-web/forms/admin/photos/style.css
6f3b2cfb2f940dd7eb5da583cf94bb51 usr/share/hedera-web/forms/admin/photos/ui.xml
909c7f88792fc669a6cbd7abcbc25838 usr/share/hedera-web/forms/admin/shelves/shelves.js
f27f0666f99f0caa6ac9851b611d0c97 usr/share/hedera-web/forms/admin/shelves/style.css
ed0624d17f524727d8f2b346ebb9faa5 usr/share/hedera-web/forms/admin/shelves/ui.xml
4ee1a16db84aab37215828f8e660dd20 usr/share/hedera-web/forms/admin/users/style.css
012b9d44aa0a5927c036fb17463a7674 usr/share/hedera-web/forms/admin/users/ui.xml
500eb3f311cc2473ad3e65ce76e8e07a usr/share/hedera-web/forms/admin/users/users.js
bfe8678ea7b10f8c9789eff81071acad usr/share/hedera-web/forms/admin/visits/style.css
128f78f1ac46f6512ef7f33bfba70959 usr/share/hedera-web/forms/admin/visits/ui.xml
0da1f3ac8f4aafd5a4f4ed01c5a08082 usr/share/hedera-web/forms/admin/visits/visits.js
1acadd40ffc54b60e5187bcfc87e251b usr/share/hedera-web/forms/agencies/packages/packages.js
53a296c44ebc64fc992c5bd90a309f90 usr/share/hedera-web/forms/agencies/packages/style.css
0097714389f863693a7e9585bb533791 usr/share/hedera-web/forms/agencies/packages/ui.xml
451f47645443bdfc36f254db7dd7e2aa usr/share/hedera-web/forms/agencies/provinces/provinces.js
b1bb9e698fa7da94410c888b24a2962c usr/share/hedera-web/forms/agencies/provinces/style.css
f0fa7f059ecc9e2b3750262a781ef91b usr/share/hedera-web/forms/agencies/provinces/ui.xml
4d1b9099abfd893f566c40779ce48f6b usr/share/hedera-web/forms/cms/about/about.js
ceb9f2a5c32805b7a6ca9dbe01e8d981 usr/share/hedera-web/forms/cms/about/image/2_control.png
932c8d417e108f675b65e29291d26e13 usr/share/hedera-web/forms/cms/about/image/4_control.png
4607c23c4971a646f0a74930076ab131 usr/share/hedera-web/forms/cms/about/image/agencies.png
232a903ae4df359b85f696c87051dda0 usr/share/hedera-web/forms/cms/about/image/auction.png
e50197ebd7eaec37a48c72241aab33b6 usr/share/hedera-web/forms/cms/about/image/commercial.png
b5bf105dc64f398ebef43965045cefff usr/share/hedera-web/forms/cms/about/image/courses.png
c00cb92129e83b547f4e419ae17a1a57 usr/share/hedera-web/forms/cms/about/image/dealer.png
460797ab38af1f695d2f5f9127fb85f8 usr/share/hedera-web/forms/cms/about/image/differentiates_us.png
dcb16eb44169445589052cdd923c86e3 usr/share/hedera-web/forms/cms/about/image/fit.png
1c410d9c69bcb7369050c40dc91d10c8 usr/share/hedera-web/forms/cms/about/image/glass.png
75317a9165ee9e206530609664201750 usr/share/hedera-web/forms/cms/about/image/goods_receive.png
8ddbc58164fadc2fe59eee7dba4e7af3 usr/share/hedera-web/forms/cms/about/image/goods_transport.png
da2324fe422e7b18cc9c7ec01f8e12a0 usr/share/hedera-web/forms/cms/about/image/palletizing.png
fa5aff1340d74f681f7f17bf48632f4f usr/share/hedera-web/forms/cms/about/image/producers.png
530723442e27b80f37bb99d252838449 usr/share/hedera-web/forms/cms/about/image/store.png
f4f72f3fcba055b20847490dbf5e927f usr/share/hedera-web/forms/cms/about/image/summary.png
3394700c6a605e92fa3f35f16d7fd7dc usr/share/hedera-web/forms/cms/about/image/trailer.png
6876809c8f8dc15040d7fbe4ab418bc5 usr/share/hedera-web/forms/cms/about/image/training.png
0ae30e889c25cb3e7e31072a8c4f75f1 usr/share/hedera-web/forms/cms/about/image/web.png
ae8054f9fc932bb8428a98843e162d51 usr/share/hedera-web/forms/cms/about/image/youtube.png
b24ee817ecef020f016488339607ecab usr/share/hedera-web/forms/cms/about/style.css
deefb16b66cff0540c4fb345af5bb28f usr/share/hedera-web/forms/cms/about/ui.xml
fce10663e886d04da880f2ea22b8d87a usr/share/hedera-web/forms/cms/contact/IndieFlower.ttf
04ae068770f2c0e16da033c96c2172c6 usr/share/hedera-web/forms/cms/contact/captcha.php
df7df38665073b51883143068bf35648 usr/share/hedera-web/forms/cms/contact/contact.js
1251b4a00bf6e23679d321c8d580827b usr/share/hedera-web/forms/cms/contact/send-data.php
6535957e88bf9977cb7517fafbec61b7 usr/share/hedera-web/forms/cms/contact/style.css
6d4efd6ad8de2694c715e0e75ab48d7b usr/share/hedera-web/forms/cms/contact/ui.xml
f38982221e168a95da4170f6b7e7e36f usr/share/hedera-web/forms/cms/home/home.js
fc2695c350a93d3519712001a2622722 usr/share/hedera-web/forms/cms/home/style.css
168a48777fca4cb50c911cdc784081ed usr/share/hedera-web/forms/cms/home/ui.xml
6365368204ef099a9f9b6c77a21ca6b3 usr/share/hedera-web/forms/cms/location/location.js
cb133bdc61e9038fb9385a3b2175e860 usr/share/hedera-web/forms/cms/location/style.css
f976b62260b60a8118c3dc7cfb4d608d usr/share/hedera-web/forms/cms/location/ui.xml
3112bd7cdba671676f6a1e1d39859655 usr/share/hedera-web/forms/cms/training/style.css
0130c8f50e0a57408ec69b827281f5e6 usr/share/hedera-web/forms/cms/training/training.js
20f7f2d160e4f82d02c4bc59ba884e78 usr/share/hedera-web/forms/cms/training/ui.xml
732dc175165033e6c45b5ecacae1e386 usr/share/hedera-web/forms/cms/why/style.css
088dc19028df7b0efe92b8d9c8612770 usr/share/hedera-web/forms/cms/why/ui.xml
19dd386e3ae75e0c2103404e3d79a27d usr/share/hedera-web/forms/cms/why/why.js
a4ca2fabb3d09408e328631dfabb2d3c usr/share/hedera-web/forms/ecomerce/basket/basket.js
6d7005dbfbea515f5e3e4bdf60e25523 usr/share/hedera-web/forms/ecomerce/basket/style.css
0e626579588b47a30bca4c160d98e9ce usr/share/hedera-web/forms/ecomerce/basket/ui.xml
8479e69cab0b1259c7ce2e1b2515649a usr/share/hedera-web/forms/ecomerce/catalog/catalog.js
67125eac4393bff75be4f72fef2d7177 usr/share/hedera-web/forms/ecomerce/catalog/mobile.css
df7c58017914ec399f6d1bab9c14a065 usr/share/hedera-web/forms/ecomerce/catalog/style.css
e3ba07432def24184ecb0185772cff09 usr/share/hedera-web/forms/ecomerce/catalog/ui.xml
68bae739659045f2b72b1d8b4cddd7f6 usr/share/hedera-web/forms/ecomerce/checkout/checkout.js
3afa62afebb4236a8dde2ed33c8495d3 usr/share/hedera-web/forms/ecomerce/checkout/style.css
bcac327180dd0b3dec80c8a9090bd8fb usr/share/hedera-web/forms/ecomerce/checkout/ui.xml
db98d7211c838b42a53009bf7fbaecea usr/share/hedera-web/forms/ecomerce/confirm/confirm.js
82160af4a74857107c12ddc30a482105 usr/share/hedera-web/forms/ecomerce/confirm/style.css
b55ac46aad9c1f6117f2c68335582195 usr/share/hedera-web/forms/ecomerce/confirm/ui.xml
eb9778cd03aed4aaa409362ec483de7b usr/share/hedera-web/forms/ecomerce/invoices/download.php
a8f45197a0c916c7fb9e3214e9d6811f usr/share/hedera-web/forms/ecomerce/invoices/get-invoice-path.sql
3031b021b3403e0773cfcad384e34db6 usr/share/hedera-web/forms/ecomerce/invoices/invoices.js
a2e5e2c177cdd9431f6d9d9e9bf67035 usr/share/hedera-web/forms/ecomerce/invoices/style.css
3a002fb9293a3b2b85f654a1e8037e5f usr/share/hedera-web/forms/ecomerce/invoices/ui.xml
d8ec4defab53c591fa0d71348d4e852b usr/share/hedera-web/forms/ecomerce/orders/orders.js
6cf663227b47aaf035b3bb72d0042687 usr/share/hedera-web/forms/ecomerce/orders/style.css
3946ed84eda32446343d853f5cdd9e93 usr/share/hedera-web/forms/ecomerce/orders/ui.xml
6ffc05c3e5ee6a8acdacc528640a1dbf usr/share/hedera-web/forms/ecomerce/ticket/style.css
d32c05583205dff4607dfc7e2bd896d2 usr/share/hedera-web/forms/ecomerce/ticket/ticket.js
24a6914ad105577110498abcc8ff8cdd usr/share/hedera-web/forms/ecomerce/ticket/ui.xml
4d41bb87b78611dd96b5dbf332991e70 usr/share/hedera-web/forms/news/new/new.js
2a5b5418b7706d74c5676e829f5fde96 usr/share/hedera-web/forms/news/new/style.css
72f9508160ab53edcfd19f6953ed34f2 usr/share/hedera-web/forms/news/new/ui.xml
9e54355772b5dbbc151442227c15a579 usr/share/hedera-web/forms/news/news/news.js
d8e69f0c0187b69cbddd974def963a3e usr/share/hedera-web/forms/news/news/style.css
39188f68b7f1ba52aa3825918fcb3f1c usr/share/hedera-web/forms/news/news/ui.xml
da98b2c4c84ed945137d5a605ecba1c0 usr/share/hedera-web/global/analytics.php
5da4f80f5fc6fef8890c86b39401af08 usr/share/hedera-web/global/metatags.php
ce15ad2b7a39cbf5d3d42ebd6853acdc usr/share/hedera-web/global/mobile.css
629a55a7e793da068dc580d184cc0e31 usr/share/hedera-web/global/opensans.ttf
c91187abe71428230e12dfd0399e8319 usr/share/hedera-web/global/report.css
ac3f799d5bbaf5196fab15ab8de8431c usr/share/hedera-web/global/roboto.ttf
344e0c8decf7d6e3d7b185eb053898e7 usr/share/hedera-web/global/style.css
5a98924736b8fab64b664ccb52ea31bf usr/share/hedera-web/image/access-log.svg
f433704056a7adb2615ca8f0f9243b3e usr/share/hedera-web/image/add.svg
1c57bef2217dff2abb818d899672cd0a usr/share/hedera-web/image/basket.svg
65d16f53b0d8523caf35e296cacbe3c3 usr/share/hedera-web/image/blogger.svg
f34bfad367e2803920deaf66d6909f6a usr/share/hedera-web/image/clean.svg
9db9446db220369c526b1ccd3a7fa34b usr/share/hedera-web/image/close.svg
89f991796b1dc2a9073ba71ac941758e usr/share/hedera-web/image/dark/add.svg
1686814cae6a5ad85b9917ecc4b00fa1 usr/share/hedera-web/image/dark/basket.svg
52163d8f69af40024227906c36b07774 usr/share/hedera-web/image/dark/close.svg
8cfbf93d3d7c363888758d610ea7aad2 usr/share/hedera-web/image/dark/connect.svg
78fa6dc05059bde9670bb56379937a5b usr/share/hedera-web/image/dark/delete.svg
a442d9fa939a5c47caa2f67049582cde usr/share/hedera-web/image/dark/go-next.svg
22c052955f54bc97c6b35e768f3a39fc usr/share/hedera-web/image/dark/go-previous.svg
1d03e55fc511e15133bcdee7298ffcf1 usr/share/hedera-web/image/dark/graph.svg
85b53b6b5be1ca15413c12b8d8ccf00b usr/share/hedera-web/image/dark/info.svg
38da07e9c4eba16b48cf671c73363cba usr/share/hedera-web/image/dark/logo.png
66ea1e7b798632421c9acdfffa9e3041 usr/share/hedera-web/image/dark/logo.svg
3a3a91f04f9d270a134e289f2e62bfe5 usr/share/hedera-web/image/dark/menu.svg
e691b22f0e5eeaba53abb5b8582cd5ab usr/share/hedera-web/image/dark/ok.svg
e78ea764620555d529e7bc28fa45e238 usr/share/hedera-web/image/dark/order.svg
ac6af0fd988bf576b904cb605c49571b usr/share/hedera-web/image/dark/pay.svg
fed98c72b68903ca8946bc48b396aee0 usr/share/hedera-web/image/dark/preferences.svg
174725ba54a53d2a1e151e88c13fe356 usr/share/hedera-web/image/dark/print.svg
2b448eb7234412dbb4bc01be69cef2f3 usr/share/hedera-web/image/dark/refresh.svg
6657ba32e1e09621b8c2d477eda626b4 usr/share/hedera-web/image/dark/search.svg
1e2909e80f14423720b1e3ca42845759 usr/share/hedera-web/image/dark/shipping.svg
d95ea63caf945da9418c65a81857fd76 usr/share/hedera-web/image/dark/user-info.svg
8ae0b93b433dbd0cad40806a17416c51 usr/share/hedera-web/image/debian.png
6b2d4f3eb8812fe4aedfc361b24448e3 usr/share/hedera-web/image/delete.svg
9c8c0e08200ee5cb524ecc11d3c43f14 usr/share/hedera-web/image/download.svg
72ec5336cba5e0a3154df6b5006c65dd usr/share/hedera-web/image/edit.svg
fbc1cb0f7bf56c2ae27245a6f1c705ae usr/share/hedera-web/image/empty.png
23280e899ad70afeaada21722acbf5a6 usr/share/hedera-web/image/error.svg
b1162f68113099473f2f7c9644851b33 usr/share/hedera-web/image/facebook.svg
65b97433522619cbe374baa0be20c620 usr/share/hedera-web/image/family/1.svg
eed8cbc246f95ba82f17323382a74abb usr/share/hedera-web/image/family/2.svg
17ce401dbfc0c3d05c90e4547ee274a8 usr/share/hedera-web/image/family/3.svg
0c9208800f8a1a602dd70844797fdf2b usr/share/hedera-web/image/family/4.svg
029e8dc181bd375c27a499bc856214c6 usr/share/hedera-web/image/family/5.svg
95093a8ae4fb98caf82381c7b04a3a1e usr/share/hedera-web/image/family/7.svg
2e6ad192a7e6a2b7e274d1c3bb69028e usr/share/hedera-web/image/favicon.ico
046b960fe9c73aa4c8cab4cca5482c1d usr/share/hedera-web/image/firefox.png
7f2e391de3291fc1ac583fcbe58d078c usr/share/hedera-web/image/git.svg
73133042e67f419117dbc8baebedd065 usr/share/hedera-web/image/go-next.svg
6ae06fbd75b59299063c5a295997d0ad usr/share/hedera-web/image/go-previous.svg
a95b8d24208a541ca192efa547d366a2 usr/share/hedera-web/image/google-plus.svg
ae1cfc6e36ae37d2253fe5bdd6ee8c74 usr/share/hedera-web/image/info.svg
2c7d2ac349358c7d48300032d4af51bd usr/share/hedera-web/image/invisible.png
039b50a3e85f039aa2259098d0d10ddd usr/share/hedera-web/image/loader-black.gif
d0ba08735e55241f3ef40995d4d39578 usr/share/hedera-web/image/loader-white.gif
27e6dffafb8e75ac7a303f6a6f5276b3 usr/share/hedera-web/image/loader.gif
14c4cec24e4ff36255aea52814f0ba5e usr/share/hedera-web/image/logo.svg
519af412f28a4e197b50b0fe6bd9c84d usr/share/hedera-web/image/menu.svg
903ad20c22b28eea771b720d1a06da5b usr/share/hedera-web/image/ok.svg
668f4d059d8b712ae6548c388356c04c usr/share/hedera-web/image/order.svg
284be98fa3701c84b289f703aaa5f5d3 usr/share/hedera-web/image/pay.svg
3489c1c731871e4b536c3bd1dc700a39 usr/share/hedera-web/image/preferences.svg
5f6210f7ffb4d9f574623d5387093128 usr/share/hedera-web/image/print.svg
521f87291b19cd11ea5a40f9eae33534 usr/share/hedera-web/image/refresh.svg
6e41c0943b91c72f3b18b60adfbbb3e6 usr/share/hedera-web/image/search.svg
88fcecfeeef348f8b4e00b49facebdda usr/share/hedera-web/image/shipping.svg
6e41c0943b91c72f3b18b60adfbbb3e6 usr/share/hedera-web/image/show.svg
ea6167966af2008493600023b1deaa15 usr/share/hedera-web/image/star.svg
4fde9fec31df281d1312302bbf19453f usr/share/hedera-web/image/step-cur.svg
821ed3db8aae2e1e7ea4fe46a3e5f984 usr/share/hedera-web/image/step.svg
a3f765bd12322976a565baf39e17506c usr/share/hedera-web/image/store.png
65618f7b2d156fe721516c309f6388b7 usr/share/hedera-web/image/supplant.png
85114f1a6433ebf18fbd484ba864c0e7 usr/share/hedera-web/image/unavailable.svg
1062840f4d1e1aea9c7cac7a4926be18 usr/share/hedera-web/image/update-browser.png
6fcf2107a5932ca5d00211950d52d033 usr/share/hedera-web/image/warning.svg
5596a90809aa6558a651c1827b27f6bf usr/share/hedera-web/image/youtube.svg
11dc471d438553776c7d3422b9a619ae usr/share/hedera-web/index.php
3621fba117aab66cd022bf733b8e07f4 usr/share/hedera-web/js/db/calc-sum.js
4b16d38b635e44ab51ac4a11548f9364 usr/share/hedera-web/js/db/calc.js
e6cd6a806d02538d2bce830fa33eae33 usr/share/hedera-web/js/db/conn.js
10a0dd177582a6e4f8bea9160608d7e0 usr/share/hedera-web/js/db/form.js
811e979276b75eec62bbc2189957e7f0 usr/share/hedera-web/js/db/iterator.js
0c114f4c93dd75fa80273013e8cb7859 usr/share/hedera-web/js/db/main.js
08014e11051dcacf054bb9f0e3c30ef0 usr/share/hedera-web/js/db/main.php
850da97d795bdf37d32376243ab7011d usr/share/hedera-web/js/db/model.js
f04b998bb318aae0043081d53aa34ac6 usr/share/hedera-web/js/db/param.js
4d61342ae31fea3cdf8ff33036071ef2 usr/share/hedera-web/js/db/query.js
1909a574f87f51496c8b1c8f2981c056 usr/share/hedera-web/js/db/result-set.js
c57c6d1432599ade3f99fe20d209dc69 usr/share/hedera-web/js/db/result.js
46f73991b9ca828aeb88166aa86409e7 usr/share/hedera-web/js/hedera/main.php
786e24a22e8330e07fcd55489b3ac541 usr/share/hedera-web/js/hedera/report.css
62ec149808b1b3a8151f2e4db7ab02ce usr/share/hedera-web/js/hedera/report.html
74095b42300a3bf2c7156c21e6a3e94f usr/share/hedera-web/js/hedera/report.js
4b6dc8723c6ec17246369e8824986acc usr/share/hedera-web/js/htk/assistant-bar.js
2fcb4a2227e2cc3bf5e312d8e4cb9fbd usr/share/hedera-web/js/htk/assistant.js
374d3cb7bbd3170e8e32608370f91684 usr/share/hedera-web/js/htk/column.js
7df5c7c0de236513e1d8de71c696f52b usr/share/hedera-web/js/htk/column/button.js
318ce98f7e2d03e3eb6e570dbc5eef3d usr/share/hedera-web/js/htk/column/check.js
3b61e7ca1322a1dd46ac1cb5b8189b31 usr/share/hedera-web/js/htk/column/date.js
06824829046eafd0b59497b80982e3c7 usr/share/hedera-web/js/htk/column/image.js
afc2fc24d72b3125094d4a557376af35 usr/share/hedera-web/js/htk/column/link.js
92b19f8cbcf617704c8a0f3690dc15fa usr/share/hedera-web/js/htk/column/radio.js
a22a0a1c7ff13507843959d23f41890c usr/share/hedera-web/js/htk/column/spin.js
0f37d8a8f44b359a085488e2832e8791 usr/share/hedera-web/js/htk/column/text.js
d5fa69c91869e25e5e1fd20dd30e4901 usr/share/hedera-web/js/htk/field.js
54a29ca6dced2611a4ca7b17f3517a5c usr/share/hedera-web/js/htk/field/button.js
19ac85f62c719ba16cd80e6a92b11d1f usr/share/hedera-web/js/htk/field/calendar.js
6b6567bac40292814042efc10318b343 usr/share/hedera-web/js/htk/field/check.js
064210dae613384aed96792799fcfe13 usr/share/hedera-web/js/htk/field/date-chooser.js
b33d19b55e4aa0f8ff3da50d8bdc4188 usr/share/hedera-web/js/htk/field/entry.js
74546afe2ae12d45a0b9c6f83fb08786 usr/share/hedera-web/js/htk/field/html.js
08b9701791d6d6b9d2cb7d84038d3d61 usr/share/hedera-web/js/htk/field/image.js
482fbc532f879c668b41664d6b570968 usr/share/hedera-web/js/htk/field/label.js
83d14c496f729306b98304ee4a2798e4 usr/share/hedera-web/js/htk/field/radio-group.js
78b81a3dfb9d5410fea16b74c0a64ec0 usr/share/hedera-web/js/htk/field/radio.js
24cd55a3572f9f9fce4004c354b2d760 usr/share/hedera-web/js/htk/field/select.js
17c178f1079f0d02e417537e51625a09 usr/share/hedera-web/js/htk/field/spin.js
1fe2f27a7446cb8de0ce28459acfafe3 usr/share/hedera-web/js/htk/field/table.js
0b6c70f166e3c119b051d724fd641da9 usr/share/hedera-web/js/htk/field/text-area.js
250c6bcf7b825043ab280253deb10c3b usr/share/hedera-web/js/htk/field/text.js
3dd48118b4e42757b7153d33c780db21 usr/share/hedera-web/js/htk/full-image.js
24de392fa5f8462df33d3160c89176e2 usr/share/hedera-web/js/htk/grid.js
40169b8c2f578a66d35fd788179da3ff usr/share/hedera-web/js/htk/htk.js
0bb6a03b481eadc309092b1e4fcad5cb usr/share/hedera-web/js/htk/image-editor.js
ecaa67f10d3a12b05559672fd1cee5c1 usr/share/hedera-web/js/htk/image-editor.xml
b1d9971bd7ddb1d5c61031f237adde94 usr/share/hedera-web/js/htk/main.js
7fd4ac6e0ce5284339bf422ae65dce73 usr/share/hedera-web/js/htk/main.php
c17742afbd01a66bd7938254f6abb1f1 usr/share/hedera-web/js/htk/popup.js
965811d052d8e2a2253ebed4a884a644 usr/share/hedera-web/js/htk/repeater.js
433f94861ba87da8c040373d763407e3 usr/share/hedera-web/js/htk/toast.js
25d25bc66f3fbeecc0fc1b79f6b99176 usr/share/hedera-web/js/htk/widget.js
a2a0e92074cc238ed817ce6665b491b7 usr/share/hedera-web/js/misc/main.php
1f4caae0d5c17c1a9d65f6166fbf0f6d usr/share/hedera-web/js/misc/mootools.js
045d04e17422d99e338da75b9c749b7c usr/share/hedera-web/js/misc/tinymce/license.txt
e26e97a318f82ec144b0818e5a8f8edb usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-cool.gif
e72bf995ceca9230273ed9909c5db9c8 usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-cry.gif
d59171236e6b0b96091eeda1f7b57ce3 usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-embarassed.gif
c12d9db6a14ad0b52f66f1e2cf2a38e7 usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-foot-in-mouth.gif
59930208822fe755f651a67ef4b70530 usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-frown.gif
ec0477c8a206ff250782e40f9bae4b4c usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-innocent.gif
4ae8945f3960751b5d294f18242e144d usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-kiss.gif
c37f405db4e13cbebf24e745534687bf usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-laughing.gif
11c14bd1496afd0e21df115d25b68e96 usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-money-mouth.gif
bb828cb46b377d1589927a02f8fd1762 usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-sealed.gif
2968a664098d9580079c66d628dad1a8 usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-smile.gif
2e136ebd637bf3e6c9fc6bdc20cbe73e usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-surprised.gif
5ec3bb4781c8e43a51d3a1a948b98fc0 usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-tongue-out.gif
3c0c011d16b1a2331385ed97e160a42a usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-undecided.gif
897275ac7d07032b4d93fb83a0d2a41b usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-wink.gif
19bb8ebfe3c2f5ef3ffb9aa4a027900d usr/share/hedera-web/js/misc/tinymce/plugins/emoticons/img/smiley-yell.gif
375a02f296a02a8c1bc1026345c18dd2 usr/share/hedera-web/js/misc/tinymce/plugins/visualblocks/css/visualblocks.css
e438b17739e7dea20da625c54590c83d usr/share/hedera-web/js/misc/tinymce/skins/lightgray/content.inline.min.css
3fa0e763ae7456564829fa3e439c46f1 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/content.min.css
6f2ff03edaa59c1a94be0874d08971ee usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce-small.eot
d021d3e6b1bb2b4c39069ea63adba403 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce-small.json
7f65dde79eb89e98aa8dbe67fa5febc2 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce-small.svg
daa52e28bfd88f5fb5587f17e51a1325 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce-small.ttf
ebcf371dc5ff2088a4fe411ee8681466 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce-small.woff
248f6caf6179ea6c4035b7eaec7edd6e usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce.eot
b7f9f30c30bd24f8887cd90c0c3f2f96 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce.json
f38d04d3a3cf83c12435370fd77c997d usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce.svg
d2673bd2dd98e5359b733f57ee3c4778 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce.ttf
04e761d506e64836afab5d2550a3b8df usr/share/hedera-web/js/misc/tinymce/skins/lightgray/fonts/tinymce.woff
abd3613571800fdcc891181d5f34f840 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/img/anchor.gif
394bafc3cc4dfb3a0ee48c1f54669539 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/img/loader.gif
f3726450d7457d750a2f4d9441c7ee20 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/img/object.gif
12bf9e19374920de3146a64775f46a5e usr/share/hedera-web/js/misc/tinymce/skins/lightgray/img/trans.gif
09c1ba458c1670a68acbe8004e1c4b14 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/skin.ie7.min.css
ddef4827730dca9bd4f3a4d0deb11449 usr/share/hedera-web/js/misc/tinymce/skins/lightgray/skin.min.css
0673629e6090e7c5d0cecf8144153df8 usr/share/hedera-web/js/misc/tinymce/tinymce.min.js
7a1d6a57d40921d9b2144a4d1f5eed8c usr/share/hedera-web/js/sql/batch.js
c1221fec1672e19591a88866fe29cb07 usr/share/hedera-web/js/sql/delete.js
e0addd33670dea489e4a234075c80f9f usr/share/hedera-web/js/sql/dml.js
32dfccc36728ed4eaf8fe6aa6b006aa4 usr/share/hedera-web/js/sql/expr.js
d5c78e63549dfbce5cef45c24590185f usr/share/hedera-web/js/sql/field.js
25ee3732cc80088d1301440fc7bc2ef7 usr/share/hedera-web/js/sql/filter-item.js
9818ecc07e5f0b9ca9c2fc97eabd6d03 usr/share/hedera-web/js/sql/filter.js
133e224ebcc1e116813110ba0638f52e usr/share/hedera-web/js/sql/function.js
6135749bce50035afc80308948c8ba18 usr/share/hedera-web/js/sql/holder.js
5fcb0e3c24e79fa381ce7c6dad4b8261 usr/share/hedera-web/js/sql/insert.js
2e5595733d0d63c84a48200ae3f65260 usr/share/hedera-web/js/sql/list.js
6b1da9ff7ecf933c3c9ce7a7f397a006 usr/share/hedera-web/js/sql/main.js
c8a81f1ac67bab68ea94f0ff984a9628 usr/share/hedera-web/js/sql/main.php
74707a71cc18b3ca156878201a0b2e96 usr/share/hedera-web/js/sql/multi-stmt.js
ec320938bfd2d9551918e28e64e80d2b usr/share/hedera-web/js/sql/object.js
67590aef2416dc9791974177f6debd48 usr/share/hedera-web/js/sql/operation.js
6055b30b502641b63ee15cbc27d95f2c usr/share/hedera-web/js/sql/search-tags.js
2811670c4ee14a43ae8ccefd1fcc0295 usr/share/hedera-web/js/sql/select.js
d561cd5114d77f0c4f3733e6c0cef029 usr/share/hedera-web/js/sql/stmt.js
d5dc69ea8d8e3c6a76c9210a4741fccf usr/share/hedera-web/js/sql/string.js
a2287aa531c94fbbc50521cb237d9492 usr/share/hedera-web/js/sql/table.js
2bfca205db8fb56e538a469fcf7dceb2 usr/share/hedera-web/js/sql/target.js
3d8a53c2f189c7690db1402557a4ee35 usr/share/hedera-web/js/sql/update.js
6470da1256d716855058fd8eacfc59cf usr/share/hedera-web/js/sql/value.js
e42d43abaeed60d98acb1d77fc061c3e usr/share/hedera-web/js/vn/browser.js
dc4cee051d96c0e0ead458cfd75c6677 usr/share/hedera-web/js/vn/builder.js
5123761e333e6ded900fbc5c284e8a01 usr/share/hedera-web/js/vn/cookie.js
487e8ad76b6620de03d01802aa9d5ef9 usr/share/hedera-web/js/vn/date.js
20dd20e27f7ff2fe2459b3e67fac4ef1 usr/share/hedera-web/js/vn/error.js
fb9e38d171225df141de5c02c1e23c1e usr/share/hedera-web/js/vn/hash-listener.js
3213c82ba20add4c7f493ec96569fc7b usr/share/hedera-web/js/vn/hash-param.js
4f8fed8a0fd2b169c4f4e2885150aa3e usr/share/hedera-web/js/vn/hash.js
ed6469583742689838d5a5d06fb63590 usr/share/hedera-web/js/vn/http-request.js
f3a8b8a77e62220f9ba436dff1f2ad7f usr/share/hedera-web/js/vn/ie.js
9237d117a1401c2fd0a1a7951cdd8269 usr/share/hedera-web/js/vn/locale.js
6f04ee38448f253f3614c44426a18fec usr/share/hedera-web/js/vn/main.js
779cd9a70a04771748f2f6006642c598 usr/share/hedera-web/js/vn/main.php
dd223c04a40617e654ae03a15a257c51 usr/share/hedera-web/js/vn/mutators.js
23b7c87d6640433f8567c45231337f4f usr/share/hedera-web/js/vn/node.js
040d7463db0d9faa7bd7f88e265386d6 usr/share/hedera-web/js/vn/object.js
c0f776e6c3b86eaad9bddb909cd4dd3f usr/share/hedera-web/js/vn/param.js
14b10fba55ad7b6062d2fcd306e105b6 usr/share/hedera-web/js/vn/url.js
be757512d36e677f3526300c0e17edff usr/share/hedera-web/js/vn/value.js
5b4937500156e45318ae16814b0305bd usr/share/hedera-web/locale/ca/forms/account/address-list.json
5abc10bd97cb6caf12e56b58a4d05881 usr/share/hedera-web/locale/ca/forms/account/address.json
e19d39a70f6a95e4b9fad91a1c309563 usr/share/hedera-web/locale/ca/forms/account/conf.json
144bc43e65c431c39a07ba4473f745b2 usr/share/hedera-web/locale/ca/forms/admin/access-log.json
2d9a21b9f25efb172aee151c0bb5e977 usr/share/hedera-web/locale/ca/forms/admin/links.json
81d3d9090a802a39ce4515d4f70b25d8 usr/share/hedera-web/locale/ca/forms/admin/photos.json
cc5227262fc2bc90fdfe8533fb1977e5 usr/share/hedera-web/locale/ca/forms/admin/shelves.json
402d668690694cd62d81a032fd24d45a usr/share/hedera-web/locale/ca/forms/admin/users.json
2565ca6fe1054fe7de9e4623b3943dab usr/share/hedera-web/locale/ca/forms/admin/visits.json
d5f96ba467b58a48f59ec0725b073789 usr/share/hedera-web/locale/ca/forms/agencies/packages.json
f1b297a04e6e8fb1d09cee33a533e684 usr/share/hedera-web/locale/ca/forms/agencies/provinces.json
c9624a94cad083ab2d71301483bfcc2d usr/share/hedera-web/locale/ca/forms/cms/about.json
7d5e73c633ee607b205063c5cd5f219f usr/share/hedera-web/locale/ca/forms/cms/contact.json
19a5a33adcdefc27acd9730e7e5b0070 usr/share/hedera-web/locale/ca/forms/cms/home.json
d3f712ed87addced4f0a4eda780e7721 usr/share/hedera-web/locale/ca/forms/cms/location.json
8a80554c91d9fca8acb82f023de02f11 usr/share/hedera-web/locale/ca/forms/cms/training.json
900c2dbb181fcc19814bf93b2e7f8c7e usr/share/hedera-web/locale/ca/forms/cms/why.json
539b2fe10bf9fa46b53c09e231dcfd8a usr/share/hedera-web/locale/ca/forms/ecomerce/basket.json
5d9e365efa4aca63b8fb60b4090dfe7e usr/share/hedera-web/locale/ca/forms/ecomerce/catalog.json
74a0d063d86d58503df9d7c5082cc8c8 usr/share/hedera-web/locale/ca/forms/ecomerce/checkout.json
0d1e03623b575c5dd480dabf6b6b7b2c usr/share/hedera-web/locale/ca/forms/ecomerce/confirm.json
d1daa7948d610c3575d83a1cc1c4eaee usr/share/hedera-web/locale/ca/forms/ecomerce/invoices.json
27ca9c397090861b03f87f5edb1528e1 usr/share/hedera-web/locale/ca/forms/ecomerce/orders.json
3ec280e3a1444dd893d1bc05e8d91449 usr/share/hedera-web/locale/ca/forms/ecomerce/ticket.json
1ed0798e05eec101f07f1d4cac752eb8 usr/share/hedera-web/locale/ca/forms/news/new.json
5a2fb80b1c266cbe9bafd8c9b1dcd17f usr/share/hedera-web/locale/ca/forms/news/news.json
4c4654d00eefb696198d7fd6d8286348 usr/share/hedera-web/locale/ca/js/db.js
132c5d4c38bc580862e14122e08bf62f usr/share/hedera-web/locale/ca/js/htk.js
c2515a52304ee735d07f152a4861e11c usr/share/hedera-web/locale/ca/js/vn.js
686ab7166e4daf3913b0492d7d171ada usr/share/hedera-web/locale/ca/pages/login.json
496f5d1c60e5fadea8ad37024e0b4c81 usr/share/hedera-web/locale/ca/pages/tpv.json
b84a9a030b03120ebd4451236e649e73 usr/share/hedera-web/locale/ca/pages/update-browser.json
6a0e80c4f4e87fad9fe0ece79014342f usr/share/hedera-web/locale/ca/pages/version-menu.json
cd8d7f43b9737895da424df060d7b2e5 usr/share/hedera-web/locale/ca/pages/web.json
e9d2cb38583f0fc0e371e37d3e09d698 usr/share/hedera-web/locale/ca/rest/query.json
5f35ec46d79daa46823c578ee9c79ea1 usr/share/hedera-web/locale/es/forms/account/address-list.json
1cb66d51af601f4495de500d19c05c86 usr/share/hedera-web/locale/es/forms/account/address.json
2b7e3b4b02d16eac26adf0be11fe3ff3 usr/share/hedera-web/locale/es/forms/account/conf.json
b848cdfaa8ddaea079f876eba1786633 usr/share/hedera-web/locale/es/forms/admin/access-log.json
28ae9d57c724f9e4f7c7d5ada9913299 usr/share/hedera-web/locale/es/forms/admin/links.json
98ef85006a2bab4f1f5c4308cbafa258 usr/share/hedera-web/locale/es/forms/admin/photos.json
cc5227262fc2bc90fdfe8533fb1977e5 usr/share/hedera-web/locale/es/forms/admin/shelves.json
7292f95f63f5d71035479d0067132b62 usr/share/hedera-web/locale/es/forms/admin/users.json
0b3e07e71b43c402fbb4d3e2fb13294b usr/share/hedera-web/locale/es/forms/admin/visits.json
8bade347c5ccb776e74e2ee3146b5469 usr/share/hedera-web/locale/es/forms/agencies/packages.json
dde1d54b29c18f651a0955d3698d9a3e usr/share/hedera-web/locale/es/forms/agencies/provinces.json
f54b8bfab719781de40d26be1f15eff1 usr/share/hedera-web/locale/es/forms/cms/about.json
54e3bb52597c5ba9f56d8b8e44876757 usr/share/hedera-web/locale/es/forms/cms/contact.json
823cd3b63869ccd3e20d0af4214e151b usr/share/hedera-web/locale/es/forms/cms/home.json
d3f712ed87addced4f0a4eda780e7721 usr/share/hedera-web/locale/es/forms/cms/location.json
8a80554c91d9fca8acb82f023de02f11 usr/share/hedera-web/locale/es/forms/cms/training.json
61c7446681768c3abe7e2717ee8e1c44 usr/share/hedera-web/locale/es/forms/cms/why.json
a0e47b592a7569a48be74dde300e3f59 usr/share/hedera-web/locale/es/forms/ecomerce/basket.json
b7ac4c19321b1e32a87c3e86b48818dd usr/share/hedera-web/locale/es/forms/ecomerce/catalog.json
0fc1e03b368d54385d67129dbe2103e8 usr/share/hedera-web/locale/es/forms/ecomerce/checkout.json
d574e4ffbc8b2c10c2ad624aa343073d usr/share/hedera-web/locale/es/forms/ecomerce/confirm.json
d80013a61b39eabf58052bfb8e33315b usr/share/hedera-web/locale/es/forms/ecomerce/invoices.json
a2ac84e9e918769d29cf7d9fc0836ba3 usr/share/hedera-web/locale/es/forms/ecomerce/orders.json
d43df49c45e417d85ad959cf051965e5 usr/share/hedera-web/locale/es/forms/ecomerce/ticket.json
84381988df96520e5fa93bdc7532d9e9 usr/share/hedera-web/locale/es/forms/news/new.json
f2c8b5f373a6162928fabd97b98b903e usr/share/hedera-web/locale/es/forms/news/news.json
d884def5e10494cd6d6d5de19a532d1f usr/share/hedera-web/locale/es/js/db.js
34a2ba5fc9473047d7b940e7093df6b6 usr/share/hedera-web/locale/es/js/htk.js
d7df2b0d549d3a95a2593eab5fc81717 usr/share/hedera-web/locale/es/js/vn.js
8c8ecf36f930e852b71816dc72de85a3 usr/share/hedera-web/locale/es/pages/login.json
33153cbbe9876c9889d65f0451c26f43 usr/share/hedera-web/locale/es/pages/tpv.json
b5ebe89a4009f7fc194fe5560da6dbd5 usr/share/hedera-web/locale/es/pages/update-browser.json
a8a30c511e60ee272902107abd7c4216 usr/share/hedera-web/locale/es/pages/version-menu.json
4caebd9eb5ed83ec29a491a2c95e65ca usr/share/hedera-web/locale/es/pages/web.json
629cf43aeaea17830c0a2325d8cff6b8 usr/share/hedera-web/locale/es/rest/query.json
e8c1c9a87d8854768192c9c3604332fa usr/share/hedera-web/locale/fr/forms/account/address-list.json
f72113e257382cdac93e8a7619a34ec9 usr/share/hedera-web/locale/fr/forms/account/address.json
06a10438ff0314a254e3213c2a1ef827 usr/share/hedera-web/locale/fr/forms/account/conf.json
839b1e3b2c631130871a91b340b93f87 usr/share/hedera-web/locale/fr/forms/admin/access-log.json
4a4c16b0b4187fe5d1e352c10bf9ff14 usr/share/hedera-web/locale/fr/forms/admin/links.json
8038401247b9e0fb328abcaa4e7961c2 usr/share/hedera-web/locale/fr/forms/admin/photos.json
cc5227262fc2bc90fdfe8533fb1977e5 usr/share/hedera-web/locale/fr/forms/admin/shelves.json
49ce25ef24cc9d48694b44e8c831bffc usr/share/hedera-web/locale/fr/forms/admin/users.json
fecf197a622a235b00a35a6bb40a49f3 usr/share/hedera-web/locale/fr/forms/admin/visits.json
f0492b9789a37bfd46ce32b3c4caddea usr/share/hedera-web/locale/fr/forms/agencies/packages.json
1bd1d994d44ba40eb56e4abe91df83bd usr/share/hedera-web/locale/fr/forms/agencies/provinces.json
12117d0cfbe85e8580c8945010ce748b usr/share/hedera-web/locale/fr/forms/cms/about.json
065557906305dda325e88c7f432f138c usr/share/hedera-web/locale/fr/forms/cms/contact.json
f84fe550c7a4becc06e7c8d96b5bfebc usr/share/hedera-web/locale/fr/forms/cms/home.json
23518a44c2916939e809914a403ce7bd usr/share/hedera-web/locale/fr/forms/cms/location.json
8a80554c91d9fca8acb82f023de02f11 usr/share/hedera-web/locale/fr/forms/cms/training.json
312715d62d1cefe41883304473e441c2 usr/share/hedera-web/locale/fr/forms/cms/why.json
cad0918b30430f216e83f145239ce068 usr/share/hedera-web/locale/fr/forms/ecomerce/basket.json
459bd0a03b8b2173c2385d27139db896 usr/share/hedera-web/locale/fr/forms/ecomerce/catalog.json
6cfe3abae9e40d11bb8cd087891f3eba usr/share/hedera-web/locale/fr/forms/ecomerce/checkout.json
fea79ff2566adea2fa846e054f243f71 usr/share/hedera-web/locale/fr/forms/ecomerce/confirm.json
522cb2d2fd8463b96d51bcd77d399936 usr/share/hedera-web/locale/fr/forms/ecomerce/invoices.json
621a3d7c0825ba53ae7fde47b0859db4 usr/share/hedera-web/locale/fr/forms/ecomerce/orders.json
3a488a3c66c8e248287ce67152edd181 usr/share/hedera-web/locale/fr/forms/ecomerce/ticket.json
4dc55be898fd6880541f6ef3477bf073 usr/share/hedera-web/locale/fr/forms/news/new.json
1605669b9da04a8d432900b123bd41bd usr/share/hedera-web/locale/fr/forms/news/news.json
bc403b9d5c545a086208edb055fdd73f usr/share/hedera-web/locale/fr/js/db.js
a55964100b1b47f8bee417df02cd3079 usr/share/hedera-web/locale/fr/js/htk.js
132f4af8b8278f3e7a0a5a58449ffcb7 usr/share/hedera-web/locale/fr/js/vn.js
dbbf213596dda7e2075de3c14272a101 usr/share/hedera-web/locale/fr/pages/login.json
2107fb2d4c2463a8ad4637ba37904cf2 usr/share/hedera-web/locale/fr/pages/tpv.json
ae49195ba37522108ecc3ef3a0d8473b usr/share/hedera-web/locale/fr/pages/update-browser.json
c84e53764b4222bb9eb136ade0851ab5 usr/share/hedera-web/locale/fr/pages/version-menu.json
7e572998d11127780628df91ac1ba27d usr/share/hedera-web/locale/fr/pages/web.json
629cf43aeaea17830c0a2325d8cff6b8 usr/share/hedera-web/locale/fr/rest/query.json
693c00c7b772a509743c7e7301fafce5 usr/share/hedera-web/log.php
427fcd851eaf9b9ee754d6d645a2e5d9 usr/share/hedera-web/pages/login/head.php
caed0d20d197b2cc1c1e4c4f89f778e5 usr/share/hedera-web/pages/login/html.php
505b6c7c67c80937f02c60d132b93f7c usr/share/hedera-web/pages/login/login.js
b3bd8e048d52cb605fdf47995447193d usr/share/hedera-web/pages/login/login.php
a069e9b34d61b4542643b30fee5fa78e usr/share/hedera-web/pages/login/style.css
a76437affda8ce9d69fa043a08dd82ed usr/share/hedera-web/pages/tpv/html.php
01e25c929bfa675081bf4dbc112ff857 usr/share/hedera-web/pages/tpv/style.css
f7ed923499e72cf04c8818c800042703 usr/share/hedera-web/pages/update-browser/html.php
a7a2790cf93f5bdb834e0c773fbb1173 usr/share/hedera-web/pages/update-browser/style.css
de9916b089df8a1403d9abf5f29675a0 usr/share/hedera-web/pages/version-menu/html.php
4c9f95f258446e23c6bbea5315baa416 usr/share/hedera-web/pages/version-menu/new-web.svg
d3e4ed7cbf5f0bbd8522ce4c4327eedf usr/share/hedera-web/pages/version-menu/old-web.svg
b0457e671321de73b0784a17065064ed usr/share/hedera-web/pages/version-menu/style.css
c148b5cbeba003670cdcff7fdd98e974 usr/share/hedera-web/pages/web/head.php
39e0185729490e268121b8999a32a0cb usr/share/hedera-web/pages/web/html.php
bfcdf1cf3ed39bb4f0748ab692387367 usr/share/hedera-web/pages/web/mobile.css
21aaa91383d86c9c36879dff1a122ec0 usr/share/hedera-web/pages/web/module.js
67b7dc765029871b256118586587ebb5 usr/share/hedera-web/pages/web/style.css
faa5692608f89a9b7fb67cbe72ed51d3 usr/share/hedera-web/pages/web/tpv.js
3c0ac46fe8719a2c852043f2219a5a43 usr/share/hedera-web/pages/web/web.js
fb03346cc7791842fb515cff54695993 usr/share/hedera-web/pages/web/web.php
8a1f37b4f83fe560927c0082d424c8d0 usr/share/hedera-web/reports/shelves/report.xml
37eda0425fe099e00279b717b820dae8 usr/share/hedera-web/reports/shelves/shelves.js
aaf3207619e508943ce5f4404c188ee1 usr/share/hedera-web/reports/shelves/style.css
29b536ed112295b85e60534dc262b0f8 usr/share/hedera-web/rest.php
a7a16856c55f8f4abd7800b620fb095d usr/share/hedera-web/rest/image.php
6203ffbf087e96fa697d6b7c98076bf6 usr/share/hedera-web/rest/login.php
b5755c9ce32f02e43016f8b4cf83a699 usr/share/hedera-web/rest/logout.php
1b338a97f40b6935fe78cfba9d53dae2 usr/share/hedera-web/rest/query.php
7986b15f60b69c12d4501c198cd4cf45 usr/share/hedera-web/tpv/imap.php
e3ce4e25df2590d8091526abfbc2cec2 usr/share/hedera-web/tpv/post.php
72986dddc3b967f130863ab1b3a2c95c usr/share/hedera-web/tpv/soap-request.xml
8bc8249348c2c42f7f9fa35bd83c0d11 usr/share/hedera-web/tpv/soap-test.php
e7f240e74b905b57a69d5742ec1b39fa usr/share/hedera-web/tpv/soap.php
6566bbcdd700601b41a0ba900d684046 usr/share/hedera-web/unavailable.html
661edb035143513f107528e43fb51ecc usr/share/hedera-web/visits-sync.php
60f5a768e22fe1d12e704f1874328dad usr/share/php/vn/hedera/hedera.php
6bace7ec6436b9f44dcada4d504f39bd usr/share/php/vn/hedera/init.php
5c8b89461cd5a3f074a6306a92ebf0a2 usr/share/php/vn/hedera/js.php
e8df85e0ee4c4e30061e50aa5bbbd418 usr/share/php/vn/hedera/util.php
e0caac41eb6b8550d21af2784ce75950 usr/share/php/vn/hedera/web.php
da6f7a66e051faa275964dbfad9144bb usr/share/php/vn/rest/encoding.php
cb02cec5cef3837cd46567b8d4a9b5e9 usr/share/php/vn/rest/exception.php
0435f696e696e49f4bc1a171885520ba usr/share/php/vn/rest/message.php
d3a4548d59ec2968276c4e129602daba usr/share/php/vn/rest/module.php
42a1397adbeb28d0e3bcda041f39b561 usr/share/php/vn/rest/reply.php
789436a28eeeb85f11404d70ffb6a50b usr/share/php/vn/rest/rest.php
cb8ee19a8bc9596ed7f2dab424ab5b8b usr/share/php/vn/rest/service.php
6f514664d1f628e885a2b42a01972b62 usr/share/php/vn/tpv/soap-method.php
835c5948fdbcb6bef9e12b0bdf6be8c6 usr/share/php/vn/tpv/soap-reply.xml
ce3c43d77baf65f2b22a1b5c64315692 usr/share/php/vn/tpv/soap-request.dtd
4647e9312bc0cb6535f1a0d56a9249f1 usr/share/php/vn/tpv/soap.wsdl
4b026c4807179efb6e4ff84b63c101df usr/share/php/vn/tpv/tpv.php

View File

@ -1,6 +0,0 @@
#!/bin/bash
a2enconf hedera-web
service apache2 reload
service cron restart

View File

@ -1,5 +0,0 @@
#!/bin/bash
service apache2 reload
service cron restart

View File

@ -1 +0,0 @@
../../hedera-web/apache.conf

View File

@ -1,2 +0,0 @@
MAILTO=webmaster
*/4 * * * * www-data php5 /usr/share/hedera-web/tpv/imap.php

View File

@ -1,22 +0,0 @@
# Alias /hedera-web /usr/share/hedera-web/
<Directory /usr/share/hedera-web/>
Options -Indexes -FollowSymLinks
AllowOverride None
Order Allow,Deny
Allow From All
<FilesMatch "\.(css|js|json|php|xml|html)$">
SetOutputFilter DEFLATE
</FilesMatch>
<FilesMatch "\.(ttf|otf|eot|woff)$">
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
</FilesMatch>
</Directory>

View File

@ -1,24 +0,0 @@
<?php
/**
* Configuration file. Be careful to respect the PHP syntax.
**/
$conf = [
/**
* Database parameters.
**/
'db' => [
'host' => 'db.verdnatura.es'
,'schema' => 'hedera-web'
,'user' => 'hedera-web'
,'pass' => 'base64pass'
]
/**
* The default language.
**/
,'defaultLang' => 'es'
];
?>

View File

@ -1,24 +0,0 @@
Format: http://dep.debian.net/deps/dep5
Name: hedera-web
Source: git://www.verdnatura.es/var/git/hedera-web
Files: *
Copyright: 2011-2015 Juan Ferrer Toribio <juan@verdnatura.es>
License: GPL-3.0+
License: GPL-3.0+
This package 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/>.
.
On Debian systems, the complete text of the GNU General Public
License can be found in "/usr/share/common-licenses/GPL-3".

View File

@ -1,42 +0,0 @@
Vn.AddressList = new Class
({
Extends: Vn.Module
,activate: function ()
{
this.$('user-model').setInfo ('c', 'customer_view', 'hedera');
this.$('addresses').setInfo ('a', 'address_view', 'hedera');
}
,onAddAddressClick: function ()
{
this.hash.set ({
'form': 'account/address',
'address': 0
});
}
,onReturnClick: function ()
{
window.history.back();
}
,onRemoveAddressClick: function (button, form)
{
if (confirm (_('AreYouSureDeleteAddress')))
{
form.set ('active', false);
form.refresh ();
}
}
,onEditAddressClick: function (button, form)
{
this.hash.set ({
'form': 'account/address',
'address': form.get ('id')
});
}
});

View File

@ -1,33 +0,0 @@
.address-list
{
padding: 1em;
}
.address-list .box
{
max-width: 40em;
}
.address-list .form
{
margin: 0 auto;
max-width: 25em;
padding: 2em;
}
.address
{
color: #555;
padding: .5em;
}
.address p.consignee
{
font-weight: bold;
}
.address p
{
font-size: 1.4em;
margin: 0.2em 0;
}
.address .actions
{
text-align: right;
}

View File

@ -1,76 +0,0 @@
<vn>
<vn-group>
<db-form id="user-form">
<db-model id="user-model" updatable="true">
SELECT user_id, default_address
FROM customer_view c
</db-model>
</db-form>
<db-model id="addresses" updatable="true">
SELECT a.id, a.consignee, p.name province, a.zip_code, a.city, a.name, a.active, c.Pais country
FROM address_view a
LEFT JOIN vn2008.province p ON a.province_id = p.province_id
JOIN vn2008.Paises c ON c.Id = p.Paises_Id
WHERE active != FALSE
</db-model>
</vn-group>
<div id="form" class="address-list">
<div class="box">
<div class="header">
<h1><t>Addresses</t></h1>
<div class="action-bar">
<button on-click="onReturnClick">
<img src="image/dark/go-previous.svg" alt=""/>
<t>Return</t>
</button>
<button on-click="onAddAddressClick">
<img src="image/dark/add.svg" alt=""/>
<t>AddAddress</t>
</button>
</div>
<div class="clear"/>
</div>
<div class="form">
<htk-radio-group
id="default-address"
column="default_address"
form="user-form"/>
<htk-repeater model="addresses" form-id="iter">
<template>
<div class="address">
<p class="consignee">
<htk-text form="iter" column="consignee"/>
</p>
<p>
<htk-text form="iter" column="name"/>
</p>
<p>
<htk-text form="iter" column="zip_code"/>,
<htk-text form="iter" column="city"/>
</p>
<div class="actions">
<htk-radio
form="iter"
column="id"
radio-group="default-address"
tip="_SetAsDefault"/>
<htk-button
form="iter"
column="id"
tip="_RemoveAddress"
image="image/delete.svg"
on-click="onRemoveAddressClick"/>
<htk-button
form="iter"
column="id"
tip="_EditAddress"
image="image/edit.svg"
on-click="onEditAddressClick"/>
</div>
</div>
</template>
</htk-repeater>
</div>
</div>
</div>
</vn>

View File

@ -1,35 +0,0 @@
Vn.Address = new Class
({
Extends: Vn.Module
,activate: function ()
{
this.$('model').setInfo ('a', 'address_view', 'hedera', ['id'], 'id');
this.$('model').setDefault ('customer_id', 'a',
new Sql.Func ({schema: 'account', name: 'user_get_id'}));
}
,onStatusChange: function (form)
{
if (form.ready && this.$('address').value == 0)
form.insertRow ();
}
,onOperationsDone: function ()
{
Htk.Toast.showMessage (_('AddressChangedSuccessfully'));
this.onReturnClick ();
}
,onAcceptClick: function ()
{
this.$('iter').performOperations ();
}
,onReturnClick: function ()
{
window.history.back();
}
});

View File

@ -1,31 +0,0 @@
.address
{
padding: 1em;
}
.address .box
{
max-width: 40em;
}
.address .box .body
{
margin: 0 auto;
max-width: 25em;
padding: 3em;
}
div.form-group
{
padding: 0.4em;
}
.address label
{
display: block;
margin-bottom: 0.5em;
}
.address input,
.address select
{
margin: 0;
width: 100%;
}

View File

@ -1,77 +0,0 @@
<vn>
<vn-group>
<vn-param id="address">
<vn-hash-param key="address"/>
</vn-param>
<db-form id="iter" on-status-changed="onStatusChange">
<db-param id="country" one-way="true" column="country_id"/>
<db-model id="model" updatable="true" mode="ON_DEMAND" on-operations-done="onOperationsDone">
SELECT a.id, a.name, a.consignee, a.city, a.zip_code, a.province_id, c.Id country_id
FROM address_view a
LEFT JOIN vn2008.province p ON p.province_id = a.province_id
JOIN vn2008.Paises c ON c.Id = p.Paises_Id
WHERE active != FALSE AND a.id = #address
<sql-batch property="batch">
<item name="address" param="address"/>
</sql-batch>
</db-model>
</db-form>
</vn-group>
<div id="form" class="address">
<div class="box">
<div class="header">
<h1><t>AddEditAddress</t></h1>
<div class="action-bar">
<button on-click="onReturnClick">
<img src="image/dark/go-previous.svg" alt=""/>
<t>Return</t>
</button>
<button on-click="onAcceptClick">
<img src="image/dark/ok.svg" alt=""/>
<t>Accept</t>
</button>
</div>
</div>
<div class="body">
<div class="form-group">
<label><t>Name</t></label>
<htk-entry column="consignee" form="iter"/>
</div>
<div class="form-group">
<label><t>Address</t></label>
<htk-entry column="name" form="iter"/>
</div>
<div class="form-group">
<label><t>City</t></label>
<htk-entry column="city" form="iter"/>
</div>
<div class="form-group">
<label><t>ZipCode</t></label>
<htk-entry column="zip_code" form="iter"/>
</div>
<div class="form-group">
<label><t>Country</t></label>
<htk-combo param="country">
<db-model property="model">
SELECT Id, Pais FROM vn2008.Paises
ORDER BY Pais
</db-model>
</htk-combo>
</div>
<div class="form-group">
<label><t>Province</t></label>
<htk-combo column="province_id" form="iter">
<db-model property="model">
SELECT province_id, name FROM vn2008.province
WHERE Paises_Id = #country
ORDER BY name
<sql-batch property="batch">
<item name="country" param="country"/>
</sql-batch>
</db-model>
</htk-combo>
</div>
</div>
</div>
</div>
</vn>

View File

@ -1,58 +0,0 @@
Vn.Conf = new Class
({
Extends: Vn.Module
,activate: function ()
{
this.$('user-model').setInfo ('u', 'user_view', 'hedera');
this.$('user-model').setInfo ('c', 'customer_view', 'hedera');
this.$('addresses').setInfo ('a', 'address_view', 'hedera');
}
,onPasswordChange: function ()
{
var newPassword = this.$('new-password').value;
var repeatedPassword = this.$('repeat-password').value;
if (newPassword != '' && repeatedPassword != '')
{
if (newPassword === repeatedPassword)
{
var batch = new Sql.Batch ();
batch.addValue ('password', newPassword);
var query = 'UPDATE user_view SET password = MD5(#password) '
+'WHERE id = account.user_get_id () LIMIT 1';
this.conn.execQuery (query, this.onPasswordUpdate.bind (this), batch);
}
else
Htk.Toast.showError (_('PasswordsDoesntMatch'));
}
}
,onPasswordUpdate: function (resultSet)
{
if (!resultSet.fetchResult ())
return;
this.relogin ();
Htk.Toast.showMessage (_('PasswordsChanged'));
}
,relogin: function ()
{
this.conn.open (
this.$('user-form').get ('name')
,this.$('new-password').value
,Vn.Cookie.check ('vn_pass')
);
}
,onAddressesClick: function ()
{
this.hash.set ({'form': 'account/address-list'});
}
});

View File

@ -1,34 +0,0 @@
.conf
{
padding: 1em;
}
.conf .box
{
max-width: 40em;
}
.conf .form
{
margin: 0 auto;
max-width: 25em;
padding: 2em;
}
.conf .form-group
{
padding: 0.4em;
}
.conf .form-group label
{
display: block;
margin-bottom: 0.5em;
}
.conf .form-group input[type=text],
.conf .form-group input[type=password]
{
margin: 0;
width: 100%;
}
.conf .form-group input[type=password]
{
margin-bottom: 0.5em;
}

View File

@ -1,60 +0,0 @@
<vn>
<vn-group>
<db-form id="user-form">
<db-model id="user-model" updatable="true">
SELECT id, u.name, email, mail, c.user_id, c.default_address
FROM user_view u
LEFT JOIN customer_view c
ON u.id = c.user_id
</db-model>
</db-form>
<db-model id="addresses" updatable="true">
SELECT a.id, a.consignee, p.name province, a.zip_code, a.city, a.name, a.active, c.Pais country
FROM address_view a
LEFT JOIN vn2008.province p ON a.province_id = p.province_id
JOIN vn2008.Paises c ON c.Id = p.Paises_Id
WHERE active != FALSE
</db-model>
</vn-group>
<div id="form" class="conf">
<div class="box">
<div class="header">
<h1><t>Configuration</t></h1>
<div class="action-bar">
<button on-click="onAddressesClick">
<img src="image/dark/shipping.svg" alt=""/>
<t>Addresses</t>
</button>
</div>
<div class="clear"/>
</div>
<div class="form">
<div class="form-group">
<label for="user-name"><t>UserName</t></label>
<htk-text column="name" form="user-form"/>
</div>
<div class="form-group">
<label for="user-pass"><t>Password</t></label>
<input
id="new-password"
type="password"
placeholder="_NewPassword"
on-change="onPasswordChange"/>
<input
id="repeat-password"
type="password"
placeholder="_RepeatPassword"
on-change="onPasswordChange"/>
</div>
<div class="form-group">
<label for="email"><t>Email</t></label>
<htk-entry column="email" form="user-form"></htk-entry>
</div>
<div class="form-group">
<label for="mail"><t>ReceiveInvoicesByEmail</t></label>
<htk-check column="mail" form="user-form"/>
</div>
</div>
</div>
</div>
</vn>

View File

@ -1,6 +0,0 @@
Vn.AccessLog = new Class
({
Extends: Vn.Module
});

View File

@ -1,15 +0,0 @@
.access-log
{
padding: 1em;
min-width: 35em;
}
.access-log .box
{
max-width: 50em;
margin: 0 auto;
}
.access-log .htk-grid tbody tr
{
height: 3.4em;
}

View File

@ -1,81 +0,0 @@
<vn>
<vn-group>
<vn-param id="user">
<vn-hash-param key="user"/>
</vn-param>
<db-form id="user-form">
<db-model>
SELECT Id_Cliente, Cliente, Telefono, movil
FROM vn2008.Clientes WHERE Id_Cliente = #user
<sql-batch property="batch">
<item name="user" param="user"/>
</sql-batch>
</db-model>
</db-form>
</vn-group>
<div id="form" class="access-log">
<div class="box">
<div class="header">
<h1><t>AccessLog</t></h1>
</div>
<table class="form">
<tbody>
<tr>
<td class="label">
<label><t>UserNumber:</t></label>
</td>
<td>
<htk-text column="Id_Cliente" form="user-form"/>
</td>
</tr>
<tr>
<td class="label">
<label><t>User:</t></label>
</td>
<td>
<htk-text column="Cliente" form="user-form"/>
</td>
</tr>
<tr>
<td class="label">
<label><t>Phone:</t></label>
</td>
<td>
<htk-text column="Telefono" form="user-form"/>
</td>
</tr>
<tr>
<td class="label">
<label><t>Mobile:</t></label>
</td>
<td>
<htk-text column="movil" form="user-form"/>
</td>
</tr>
</tbody>
</table>
<div>
<htk-grid>
<db-model>
SELECT u.date_time, a.platform, a.browser, a.version, a.javascript, a.cookies
FROM visit_user u
JOIN visit_access c ON u.access_id = c.id
JOIN visit_agent a ON c.agent_id = a.id
WHERE u.user_id = #user
ORDER BY u.date_time DESC
LIMIT 30
<sql-batch property="batch">
<item name="user" param="user"/>
</sql-batch>
</db-model>
<htk-column-date title="_Access" column="date_time" format="_%a, %e %b %Y at %T"/>
<htk-column-text title="_SO" column="platform"/>
<htk-column-text title="_Browser" column="browser"/>
<htk-column-text title="_Version" column="version"/>
<htk-column-check title="_Javascript" column="javascript"/>
<htk-column-check title="_Cookies" column="cookies"/>
</htk-grid>
</div>
</div>
</div>
</vn>

View File

@ -1,16 +0,0 @@
Vn.Links = new Class
({
Extends: Vn.Module
,activate: function ()
{
this.$('column-link').renderer = this.linkRenderer;
}
,linkRenderer: function (column, form)
{
column.href = form.get ('link');
}
});

View File

@ -1,18 +0,0 @@
.cpanel
{
padding: 1em;
}
.cpanel .box
{
max-width: 60em;
min-width: 25em;
}
.cpanel tbody tr
{
height: 3.5em;
}
.cpanel tbody td img
{
min-height: 1.6em;
}

View File

@ -1,18 +0,0 @@
<vn>
<div id="form" class="cpanel">
<div class="box">
<div class="header">
<h1><t>ControlPanel</t></h1>
</div>
<htk-grid show-header="false">
<db-model>
SELECT image, name, description, link FROM link
ORDER BY name
</db-model>
<htk-column-image directory="link" subdir="full" column="image"/>
<htk-column-link column="name" target="\_blank" id="column-link"/>
<htk-column-text column="description"/>
</htk-grid>
</div>
</div>
</vn>

View File

@ -1,43 +0,0 @@
Vn.Photos = new Class
({
Extends: Vn.Module
,activate: function ()
{
this.$('schema').value = 'catalog';
this.$('photo-size').value = 10 /* MB */ * 1048576;
this.$('photo-id').focus ();
this.$('html-form').action =
'//'+ Vn.Config['image_host'] +'/rest.php?action=image';
}
,onFormSubmit: function ()
{
this.$('schema-field').value = this.$('schema').value;
this.$('submit').disabled = true;
this.gui.loaderPush ();
}
,onImageUpload: function ()
{
this.gui.loaderPop ();
this.$('submit').disabled = false;
try {
var responseText = this.$('iframe').contentDocument.body.textContent;
var response = eval ('('+ responseText +')');
if (response.data)
{
this.$('photo-id').value = '';
this.$('photo-id').focus ();
Htk.Toast.showMessage (_('ImageUploaded'));
}
else
Htk.Toast.showError (response.error.message +' ('+ response.error.code +')');
}
catch (e) {}
}
});

View File

@ -1,42 +0,0 @@
<?php
session_start ();
$params = array
(
'name'
,'surname'
,'email'
,'message'
,'address'
,'pc'
,'city'
,'phone'
,'captcha'
);
$paramsOk = TRUE;
foreach ($params as $param)
if (!isset ($_POST[$param]) || $_POST[$param] == '')
{
$paramsOk = FALSE;
break;
}
header ('Content-Type: application/json');
if ($paramsOk && isset ($_SESSION['captcha'])
&& $_POST['captcha'] == $_SESSION['captcha'])
{
mail ('nuria@verdnatura.es', 'Verdnatura', print_r ($_POST, TRUE),
'From: Verdnatura <www-data@verdnatura.es>');
echo json_encode (TRUE);
}
else
echo json_encode (FALSE);
unset ($_SESSION['captcha']);
?>

View File

@ -1,44 +0,0 @@
.photos
{
padding: 1em;
}
.photos .box
{
max-width: 40em;
}
.photos form
{
margin: 0 auto;
max-width: 25em;
}
div.form-group
{
padding: 0.4em;
}
.photos form label
{
display: block;
margin-bottom: 0.5em;
}
.photos input,
.photos select
{
margin: 0;
width: 100%;
}
.photos iframe
{
display: none;
}
/* Footer */
.photos button
{
display: block;
margin: 0 auto;
padding: 0.6em;
margin-top: 1.5em;
}

View File

@ -1,47 +0,0 @@
<vn>
<div id="form" class="photos">
<div class="box">
<div class="header">
<h1><t>Photos</t></h1>
</div>
<div class="body">
<form
id="html-form"
method="post"
enctype="multipart/form-data"
target="photos-iframe"
on-submit="onFormSubmit">
<div class="form-group">
<label><t>Id</t></label>
<input type="number" name="id" id="photo-id"/>
</div>
<div class="form-group">
<label><t>ImageName</t></label>
<input type="text" name="name"/>
</div>
<div class="form-group">
<label><t>Schema</t></label>
<input type="hidden" name="schema" id="schema-field"/>
<htk-combo id="schema">
<db-model property="model">
SELECT name, `desc` FROM image_schema ORDER BY `desc`
</db-model>
</htk-combo>
</div>
<div class="form-group">
<label><t>ImageFile</t></label>
<input type="file" name="image"/>
<input type="hidden" name="MAX_FILE_SIZE" id="photo-size"/>
</div>
<button class="flat" id="submit">
<t>Upload</t>
</button>
</form>
<iframe
id="iframe"
name="photos-iframe"
on-load="onImageUpload"/>
</div>
</div>
</div>
</vn>

View File

@ -1,307 +0,0 @@
Vn.Shelves = new Class
({
Extends: Vn.Module
,activate: function ()
{
this.$('report-title').value = 'Anthuriums';
this.$('warehouse').value = 44;
this.$('date').value = new Date ();
this.$('shelf').value = 1;
this.$('reign').value = 1;
this.$('family').value = 2;
this.$('filter').value = 'Ant %';
this.$('max-amount').value = 50;
}
,onPreviewClick: function ()
{
var report = new Vn.ShelvesReport ({conn: this.conn});
report.setParams (
this.$('report-title').value,
this.$('warehouse').value,
this.$('date').value,
this.$('family').value,
this.$('filter').value,
this.$('max-amount').value,
this.$('shelf').value
);
report.open ();
}
});
Vn.ShelvesReport = new Class
({
Extends: Vn.Report
,nItem: -1
,nColors: 4
,setParams: function (title, warehouse, date, type, filter, maxAmount, shelf)
{
this.title = title;
this.maxAmount = maxAmount;
var batch = new Sql.Batch ();
batch.addValue ('shelf', shelf);
batch.addValue ('wh', warehouse);
batch.addValue ('date', date);
batch.addValue ('type', type);
batch.addValue ('filter', filter);
this.batch = batch;
}
,open: function ()
{
var query =
'SELECT id, name, width, height, max_height, tray_height, '+
'first_tray_elevation, tray_density, vspacing, hspacing '+
'FROM vn2008.shelf WHERE id = #shelf; '+
'CALL item_organizer (#wh, #date, #type, #filter)';
this.conn.execQuery (query, this.onQueryExec.bind (this), this.batch);
}
,onQueryExec: function (resultSet)
{
// Fetch query data
var res = resultSet.fetchResult ();
res.next ();
var scale = 0.08;
var shelf = this.shelf =
{
width: res.get ('width') * scale
,height: res.get ('height') * scale
,maxHeight: res.get ('max_height') * scale
,trayHeight: res.get ('tray_height') * scale
,firstTrayElevation: res.get ('first_tray_elevation') * scale
,trayDensity: res.get ('tray_density') * scale
,vspacing: res.get ('vspacing') * scale
,hspacing: res.get ('hspacing') * scale
};
var items = [];
var res = resultSet.fetchResult ();
while (res.next ())
items.push ({
name: res.get ('Article') +' x'+ res.get ('Medida')
,boxHeight: res.get ('z') * 10 * scale
,boxWidth: res.get ('x') * 10 * scale
,amount: res.get ('etiquetas')
});
// Intializes the allocator
alloc = new Vn.Allocator ();
alloc.items = items;
alloc.maxAmount = this.maxAmount;
alloc.shelfFunc = this.drawShelf.bind (this);
alloc.boxFunc = this.drawBox.bind (this);
alloc.nTrays = Math.ceil (
(shelf.height - shelf.firstTrayElevation) /
(shelf.trayHeight + shelf.trayDensity)
);
alloc.trayWidth = shelf.width - shelf.hspacing * 2;
alloc.trayHeight = shelf.trayHeight - shelf.vspacing;
alloc.topTrayHeight = shelf.maxHeight - shelf.vspacing
- shelf.firstTrayElevation - (alloc.nTrays - 1) * shelf.trayHeight;
// Opens the report
this.createWindow ('shelves');
alloc.run ();
}
,drawShelf: function (allocator)
{
var shelf = this.shelf;
var sheet = this.doc.createElement ('div');
sheet.className = 'sheet';
/* sheet.style.top = (allocator.currentShelf * 297) +'mm';
*/ this.doc.body.appendChild (sheet);
// Draws the title
var title = this.doc.createElement ('h1');
title.className = 'title';
title.appendChild (this.doc.createTextNode (this.title));
sheet.appendChild (title);
var pageNumber = this.doc.createElement ('h1');
pageNumber.className = 'page-number';
pageNumber.appendChild (this.doc.createTextNode (allocator.currentShelf + 1));
sheet.appendChild (pageNumber);
// Draws the shelf
var shelfDiv = this.shelfDiv = this.doc.createElement ('div');
shelfDiv.className = 'shelf';
shelfDiv.style.width = this.shelf.width +'mm';
shelfDiv.style.height = this.shelf.maxHeight +'mm';
sheet.appendChild (shelfDiv);
this.drawEdge ().style.left = 0;
this.drawEdge ().style.right = 0;
// Draws trays
var lastTrayY = shelf.firstTrayElevation;
if (shelf.trayHeight > 0)
while (lastTrayY + shelf.trayDensity < shelf.height)
{
var tray = this.doc.createElement ('div');
tray.className = 'tray';
tray.style.width = this.shelf.width +'mm';
tray.style.height = '1mm';
tray.style.bottom = lastTrayY +'mm';
shelfDiv.appendChild (tray);
lastTrayY += shelf.trayHeight + shelf.trayDensity;
}
}
,drawEdge: function (shelfDiv)
{
var edge = this.doc.createElement ('div');
edge.className = 'edge';
edge.style.width = '1mm';
edge.style.height = this.shelf.height +'mm';
edge.style.bottom = 0;
this.shelfDiv.appendChild (edge);
return edge;
}
,drawBox: function (allocator, item, amount)
{
if (item.boxWidth == 0 || item.boxHeight == 0)
return;
var shelf = this.shelf;
var x = allocator.trayX + shelf.hspacing;
var y = allocator.trayY
+ shelf.firstTrayElevation + shelf.trayDensity
+ allocator.currentTray * (shelf.trayHeight + shelf.trayDensity);
var box = this.doc.createElement ('div');
box.className = 'box';
this.shelfDiv.appendChild (box);
box.style.left = x +'mm';
box.style.bottom = y +'mm';
box.style.width = item.boxWidth +'mm';
box.style.height = item.boxHeight +'mm';
if (amount == 0)
this.nItem++;
var nColor = this.nItem % this.nColors;
Vn.Node.addClass (box, 'color'+ nColor);
if (amount == 0 || allocator.firstShelfBox)
{
var boxLabel = this.doc.createElement ('span');
box.appendChild (boxLabel);
var text = this.doc.createTextNode (item.name);
boxLabel.appendChild (text);
}
}
});
Vn.Allocator = new Class
({
addShelf: function ()
{
this.currentShelf++;
this.firstShelfBox = true;
if (this.shelfFunc)
this.shelfFunc (this);
}
,addTray: function ()
{
if (this.currentTray <= 0)
{
this.addShelf ();
this.currentTray = this.nTrays - 1;
}
else
this.currentTray--;
this.trayX = 0;
}
,addColumn: function (width)
{
if (this.trayX + this.columnWidth + width > this.trayWidth
|| this.currentTray == -1)
this.addTray ();
else
this.trayX += this.columnWidth;
this.trayY = 0;
this.columnWidth = width;
this.lastBoxWidth = width;
}
,addBox: function (item, amount)
{
var trayHeight = this.trayHeight;
if (this.currentTray == this.nTrays - 1)
trayHeight = this.topTrayHeight;
if (this.trayY + item.boxHeight > trayHeight
|| item.boxWidth > this.lastBoxWidth)
this.addColumn (item.boxWidth);
if (this.boxFunc)
this.boxFunc (this, item, amount);
this.trayY += item.boxHeight;
if (item.boxWidth < this.lastBoxWidth)
this.lastBoxWidth = item.boxWidth;
}
,run: function ()
{
this.firstShelfBox = false;
this.currentShelf = -1;
this.currentTray = -1;
this.columnWidth = 0;
this.lastBoxWidth = 0;
this.trayX = 0;
this.trayY = 0;
for (var i = 0; i < this.items.length; i++)
{
var item = this.items[i];
for (var amount = 0; amount < item.amount; amount++)
{
if (amount == 0
&& this.maxAmount > 0
&& item.amount > this.maxAmount)
break;
this.addBox (item, amount);
this.firstShelfBox = false;
}
}
return this.currentShelf + 1;
}
});

View File

@ -1,44 +0,0 @@
.shelves
{
padding: 1em;
}
.shelves .box
{
max-width: 40em;
padding: 2em;
}
.shelves .body
{
max-width: 20em;
margin: auto;
padding: 0;
}
.shelves .form-group
{
padding: 0.4em;
}
.shelves form label
{
display: block;
margin-bottom: 0.5em;
}
.shelves input,
.shelves select
{
margin: 0;
width: 100%;
}
/* Footer */
.shelves .footer
{
text-align: center;
margin-top: 1.5em;
}
.shelves .footer > button
{
margin: 0 .2em;
}

View File

@ -1,70 +0,0 @@
<vn>
<div id="title">
<h1><t>Shelves</t></h1>
</div>
<div id="form" class="shelves">
<div class="box">
<div class="body">
<div class="form-group">
<label><t>Title</t></label>
<htk-entry id="report-title"/>
</div>
<div class="form-group">
<label><t>Store</t></label>
<htk-combo id="warehouse">
<db-model property="model" id="warehouses">
SELECT id, name FROM vn2008.warehouse
WHERE reserve ORDER BY name
</db-model>
</htk-combo>
</div>
<div class="form-group">
<label><t>Date</t></label>
<htk-date-chooser id="date"/>
</div>
<div class="form-group">
<label><t>Shelf</t></label>
<htk-combo id="shelf">
<db-model property="model" id="shelves">
SELECT id, name FROM vn2008.shelf
</db-model>
</htk-combo>
</div>
<div class="form-group">
<label><t>Reign</t></label>
<htk-combo id="reign">
<db-model property="model" id="reigns">
SELECT id, reino FROM vn2008.reinos
WHERE display != FALSE ORDER BY reino
</db-model>
</htk-combo>
</div>
<div class="form-group">
<label><t>Family</t></label>
<htk-combo id="family">
<db-model property="model">
SELECT tipo_id, Tipo FROM vn2008.Tipos
WHERE reino_id = #reign ORDER BY Tipo
<sql-batch property="batch">
<item name="reign" param="reign"/>
</sql-batch>
</db-model>
</htk-combo>
</div>
<div class="form-group">
<label><t>Name filter</t></label>
<input type="text" id="filter"/>
</div>
<div class="form-group">
<label><t>Max amount</t></label>
<htk-entry id="max-amount"/>
</div>
</div>
<div class="footer">
<button class="thin" on-click="onPreviewClick">
<t>Preview</t>
</button>
</div>
</div>
</div>
</vn>

View File

@ -1,15 +0,0 @@
.users
{
padding: 1em;
min-width: 35em;
}
.users .box
{
max-width: 50em;
margin: 0 auto;
}
.users tbody tr
{
height: 3.4em;
}

View File

@ -1,52 +0,0 @@
<vn>
<div id="form" class="users">
<div class="box">
<div class="header">
<h1><t>UserManagement</t></h1>
</div>
<table class="form">
<tbody>
<tr>
<td class="label">
<label><t>UserName:</t></label>
</td>
<td>
<htk-entry>
<vn-param id="user-name"/>
</htk-entry>
</td>
</tr>
</tbody>
</table>
<div>
<htk-grid>
<db-model>
SELECT u.id, u.name, c.Cliente
FROM account.user u
INNER JOIN vn2008.Clientes c ON u.id = c.Id_Cliente
WHERE u.name LIKE CONCAT('%', #user, '%')
OR c.Cliente LIKE CONCAT('%', #user, '%')
OR u.id = #user
ORDER BY u.name LIMIT 200
<sql-batch property="batch">
<item name="user" param="user-name"/>
</sql-batch>
</db-model>
<htk-column-button
column="id"
image="image/supplant.png"
tip="_AccessAsUser"
on-clicked="onChangeUserClick"/>
<htk-column-button
column="id"
image="image/access-log.svg"
tip="_AccessLog"
on-clicked="onAccessLogClick"/>
<htk-column-spin title="_UserNumber" column="id"/>
<htk-column-text title="_UserName" column="name"/>
<htk-column-text title="_Alias" column="Cliente"/>
</htk-grid>
</div>
</div>
</div>
</vn>

View File

@ -1,28 +0,0 @@
Vn.Users = new Class
({
Extends: Vn.Module
,onChangeUserClick: function (column, value)
{
var batch = new Sql.Batch ();
batch.addValue ('user', value);
var query = 'UPDATE user_session_view SET user_id = #user';
this.conn.execQuery (query, this.userChanged.bind (this), batch);
}
,onAccessLogClick: function (column, value)
{
this.hash.set ({
'form': 'admin/access-log'
,'user': value
});
}
,userChanged: function ()
{
this.hash.set ({'form': 'ecomerce/orders'});
}
});

View File

@ -1,18 +0,0 @@
.visits
{
padding: 1em;
min-width: 50em;
}
.visits .box
{
max-width: 80em;
margin: 0 auto;
}
/* Steps */
div.step
{
display: none;
}

View File

@ -1,147 +0,0 @@
<vn>
<div id="form" class="visits">
<div class="box">
<div class="header">
<h1><t>VisitsManagement</t></h1>
<div class="action-bar">
<button on-click="onRefreshClick">
<img src="image/dark/refresh.svg" alt=""/>
<t>Refresh</t>
</button>
<button on-click="onSessionsClick">
<img src="image/dark/user-info.svg" alt=""/>
<t>ActiveSessions</t>
</button>
<button on-click="onVisitsClick">
<img src="image/dark/graph.svg" alt=""/>
<t>VisitsQuery</t>
</button>
</div>
</div>
<div class="step" id="sessions-step">
<table class="form">
<tbody>
<tr>
<td class="label">
<label><t>ActiveSessions:</t></label>
</td>
<td>
<htk-label>
<db-calc-sum model="sessions" id="num-sessions"/>
</htk-label>
</td>
</tr>
<tr>
<td class="label">
<label><t>NewVisitsTotal:</t></label>
</td>
<td>
<htk-label>
<db-calc-sum model="sessions" column-name="is_new"/>
</htk-label>
</td>
</tr>
</tbody>
</table>
<div>
<htk-grid>
<db-model id="sessions">
SELECT s.id, c.Cliente, e.date_time login, is_new,
s.date_time last_activity, a.platform, a.browser, a.version
FROM user_session s
JOIN visit_user e ON s.visit_user_id = e.id
JOIN visit_access c ON e.access_id = c.id
JOIN visit_agent a ON c.agent_id = a.id
JOIN visit v ON a.visit_id = v.id
JOIN account.user u ON e.user_id = u.id
JOIN vn2008.Clientes c ON e.user_id = c.Id_cliente
ORDER BY last_activity DESC
</db-model>
<htk-column-spin title="_SessionNumber" column="id"/>
<htk-column-text title="_User" column="Cliente"/>
<htk-column-date title="_Login" column="login" format="%a, %T"/>
<htk-column-date title="_LastActivity" column="last_activity" format="%a, %T"/>
<htk-column-text title="_SO" column="platform"/>
<htk-column-text title="_Browser" column="browser"/>
<htk-column-text title="_Version" column="version"/>
<htk-column-check title="_NewVisit" column="is_new"/>
</htk-grid>
</div>
</div>
<div class="step" id="visits-step">
<table class="form">
<tbody>
<tr>
<td class="label">
<label><t>FromDate:</t></label>
</td>
<td>
<htk-date-chooser>
<vn-param id="date-from"/>
</htk-date-chooser>
</td>
</tr>
<tr>
<td class="label">
<label><t>ToDate:</t></label>
</td>
<td>
<htk-date-chooser>
<vn-param id="date-to"/>
</htk-date-chooser>
</td>
</tr>
<tr>
<td class="label">
<label><t>VisitsTotal:</t></label>
</td>
<td>
<htk-label>
<db-calc-sum model="visits" column-name="visits"/>
</htk-label>
</td>
</tr>
<tr>
<td class="label">
<label><t>NewVisitsTotal:</t></label>
</td>
<td>
<htk-label>
<db-calc-sum model="visits" column-name="new_visits"/>
</htk-label>
</td>
</tr>
</tbody>
</table>
<div>
<htk-grid empty-message="SelectDateInterval">
<db-model id="visits">
SELECT browser
,MIN(CAST(version AS DECIMAL(4,1))) min_version
,MAX(CAST(version AS DECIMAL(4,1))) max_version
,MAX(e.date_time) last_visit
,COUNT(DISTINCT c.id) visits
,SUM(is_new) new_visits
FROM visit_user e
JOIN visit_access c ON e.access_id = c.id
JOIN visit_agent a ON c.agent_id = a.id
JOIN visit v ON a.visit_id = v.id
WHERE e.date_time BETWEEN TIMESTAMP(#from,'00:00:00') AND TIMESTAMP(#to,'23:59:59')
GROUP BY browser ORDER BY visits DESC
<sql-batch property="batch">
<item name="from" param="date-from"/>
<item name="to" param="date-to"/>
</sql-batch>
</db-model>
<htk-column-text title="_Browser" column="browser"/>
<htk-column-spin title="_MinVersion" column="min_version" digits="1"/>
<htk-column-spin title="_MaxVersion" column="max_version" digits="1"/>
<htk-column-date title="_LastVisit" column="last_visit" format="_%a, %e %b %Y at %T"/>
<htk-column-spin title="_Visits" column="visits"/>
<htk-column-spin title="_NewVisits" column="new_visits"/>
</htk-grid>
</div>
</div>
</div>
</div>
</vn>

View File

@ -1,44 +0,0 @@
Vn.Visits = new Class
({
Extends: Vn.Module
,activate: function ()
{
this.$('date-to').value = new Date ();
this.$('num-sessions').func = this.sessionsFunc;
this.onSessionsClick ();
}
,showStep: function (stepId)
{
if (this.currentStep)
this.currentStep.style.display = 'none';
this.currentStep = this.$(stepId);
this.currentStep.style.display = 'inline';
}
,onRefreshClick: function ()
{
this.model.refresh ();
}
,onSessionsClick: function ()
{
this.showStep ('sessions-step');
this.model = this.$('sessions');
}
,onVisitsClick: function ()
{
this.showStep ('visits-step');
this.model = this.$('visits');
}
,sessionsFunc: function ()
{
return 1;
}
});

View File

@ -1,14 +0,0 @@
Vn.Packages = new Class
({
Extends: Vn.Module
,onShowClick: function (column, agencyId)
{
this.hash.set ({
'form': 'agencies/provinces',
'agency': agencyId
});
}
});

View File

@ -1,9 +0,0 @@
.packages
{
padding: 1em;
}
.packages .box
{
max-width: 40em;
margin: 0 auto;
}

View File

@ -1,23 +0,0 @@
<vn>
<div id="form" class="packages">
<div class="box">
<div class="header">
<h1><t>ListByAgency</t></h1>
</div>
<htk-grid>
<db-model property="model">
CALL vn2008.agencia_volume ()
</db-model>
<htk-column-button
column="agency_id"
image="image/show.svg"
tip="_ShowByProvince"
on-clicked="onShowClick"/>
<htk-column-text title="_Agency" column="Agencia"/>
<htk-column-spin title="_Exps" column="expediciones"/>
<htk-column-spin title="_Bundles" column="Bultos"/>
<htk-column-spin title="_Prevision" column="Faltan"/>
</htk-grid>
</div>
</div>
</vn>

View File

@ -1,11 +0,0 @@
Vn.Provinces = new Class
({
Extends: Vn.Module
,onReturnClick: function ()
{
window.history.back();
}
});

View File

@ -1,9 +0,0 @@
.provinces
{
padding: 1em;
}
.provinces .box
{
max-width: 40em;
margin: 0 auto;
}

View File

@ -1,33 +0,0 @@
<vn>
<vn-group>
<vn-param id="agency">
<vn-hash-param key="agency"/>
</vn-param>
</vn-group>
<div id="form" class="provinces">
<div class="box">
<div class="header">
<h1><t>ByProvince</t></h1>
<div class="action-bar">
<button on-click="onReturnClick">
<img src="image/dark/go-previous.svg" alt=""/>
<t>Return</t>
</button>
</div>
<div class="clear"/>
</div>
<htk-grid>
<db-model>
CALL vn2008.desglose_volume (#agency)
<sql-batch property="batch">
<item name="agency" param="agency"/>
</sql-batch>
</db-model>
<htk-column-text title="_Province" column="Provincia"/>
<htk-column-spin title="_Expeditions" column="expediciones"/>
<htk-column-spin title="_Bundles" column="Bultos"/>
<htk-column-spin title="_Left" column="Prevision"/>
</htk-grid>
</div>
</div>
</vn>

View File

@ -1,6 +0,0 @@
Vn.About = new Class
({
Extends: Vn.Module
});

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 298 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 285 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 426 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 192 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 129 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 297 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 KiB

View File

@ -1,75 +0,0 @@
.about
{
padding: 1em;
}
.about .box
{
max-width: 50em;
margin: 0 auto;
}
.about h2
{
text-align: center;
font-size: 1.2em;
font-weight: normal;
margin: 1em;
}
.about h3
{
text-align: center;
font-size: 1.2em;
font-weight: normal;
margin: 1em;
color: #4A1;
}
.about p
{
width: 90%;
display: block;
margin: 1em auto;
}
.summary
{
padding-bottom: 1em;
}
.summary p
{
max-width: 30em;
text-align: center;
background-color: #FF8;
padding: 1em;
border-radius: 0.1em;
box-shadow: 0 0.2em 0.2em #AAA;
margin: 2em auto;
}
/* Images */
.about img
{
max-width: 90%;
text-align: center;
padding: 1em;
display: block;
margin: 0 auto;
}
.about img[alt="producers"],
.about img[alt="4_control"],
.about img[alt="dealer"],
.about img[alt="goods_transport"]
{
float: right;
}
.about img[alt="2_control"]
{
float: left;
}
.about img[alt="glass"]
{
display: inline;
padding: 0;
padding-left: 0.9em;
vertical-align: middle;
}

View File

@ -1,97 +0,0 @@
<vn>
<div id="form" class="about">
<div class="box">
<div>
<div class="header">
<h1><t>QualityAndVariety</t></h1>
</div>
<p><t>MaximumFreshness</t></p>
<h3><t>SquareMeters</t></h3>
<img src="forms/cms/about/image/store.png" alt="store"/>
<h3><t>AboutRealms</t></h3>
<p><t>AboutLocation</t></p>
<img src="forms/cms/about/image/trailer.png" alt="trailer"/>
<p>
<img src="forms/cms/about/image/dealer.png" alt="dealer"/>
<t>PurchaseThroughWeb</t>
</p>
<img src="forms/cms/about/image/palletizing.png" alt="palletizing"/>
</div>
<div>
<div class="header">
<h1><t>WhatMakeUsDifferent</t></h1>
</div>
<p><t>DesignVariety</t></p>
<img src="forms/cms/about/image/differentiates_us.png" alt="differentiates_us"/>
<p><t>AdaptToYourNeeds</t></p>
<h3><t>TheBestQuality</t></h3>
</div>
<div>
<div class="header">
<h1><t>AtYourService</t></h1>
</div>
<h2><t>BuyersAndTraders</t></h2>
<img src="forms/cms/about/image/commercial.png" alt="commercial"/>
</div>
<div>
<div class="header">
<h1><t>Training</t></h1>
</div>
<p><t>GoodTraining</t></p>
<img src="forms/cms/about/image/training.png" alt="training"/>
<p><t>SpecialTrainingPrices</t></p>
<img src="forms/cms/about/image/courses.png" alt="courses"/>
<h2><t>YoutubeChannel</t></h2>
<img src="forms/cms/about/image/youtube.png" alt="youtube"/>
</div>
<div>
<div class="header">
<h1><t>HowWeWork</t></h1>
</div>
<p><t>AalsmeerAuction</t></p>
<img src="forms/cms/about/image/auction.png" alt="auction"/>
<p><t>BeforeAuction</t></p>
<img src="forms/cms/about/image/producers.png" alt="producers"/>
<p><t>DirectlyFromProviders</t></p>
<p><t>GoodsDischarge</t></p>
<img src="forms/cms/about/image/goods_transport.png" alt="goods_transport"/>
<h2>
<t>FirstQualityControl</t>
<img src="forms/cms/about/image/glass.png" alt="glass"/>
</h2>
<img src="forms/cms/about/image/goods_receive.png" alt="goods_receive"/>
<p><t>GoodsTravel</t></p>
<img src="forms/cms/about/image/2_control.png" alt="2_control"/>
<p><t>GoodsReception</t></p>
<h2>
<t>SecondQualityControl</t>
<img src="forms/cms/about/image/glass.png" alt="glass"/>
</h2>
<p><t>CustomerOrders</t></p>
<img src="forms/cms/about/image/web.png" alt="web"/>
<p><t>AfterOrder</t></p>
<img src="forms/cms/about/image/4_control.png" alt="4_control"/>
<h2>
<t>ThirdQualityControl</t>
<img src="forms/cms/about/image/glass.png" alt="glass"/>
</h2>
<p><t>BuyerControl</t></p>
<h2>
<t>FourthQualityControl</t>
<img src="forms/cms/about/image/glass.png" alt="glass"/>
</h2>
<p><t>EmbeddedSection</t></p>
<img src="forms/cms/about/image/fit.png" alt="fit"/>
<p><t>AfterEmbedAgency</t></p>
<img src="forms/cms/about/image/agencies.png" alt="agencies"/>
<p><t>FreshnessGuaranteed</t></p>
</div>
<div class="summary">
<p>
<t>AboutSummary</t>
<img src="image/logo.svg" alt="Verdnatura"/>
</p>
</div>
</div>
</div>
</vn>

View File

@ -1,47 +0,0 @@
<?php
require_once ('Text/CAPTCHA.php');
session_start ();
$options = array
(
'width' => 200
,'height' => 60
,'output' => 'png'
,'imageOptions' => array
(
'font_size' => 20
,'font_path' => './'
,'font_file' => 'IndieFlower.ttf'
,'text_color' => '#559955'
,'lines_color' => '#559955'
,'background_color' => '#DDDDDD'
,'antialias' => true
)
);
$captcha = Text_CAPTCHA::factory ('Image');
$retval = $captcha->init ($options);
if (PEAR::isError ($retval))
{
printf ('Error initializing CAPTCHA: %s!', $retval->getMessage());
exit;
}
$png = $captcha->getCAPTCHA ();
if (PEAR::isError ($png))
{
printf ('Error generating CAPTCHA: %s!', $png->getMessage ());
exit;
}
// Get secret passphrase
$_SESSION['captcha'] = $captcha->getPhrase ();
header ('Content-Type: image/png');
echo $png;
?>

View File

@ -1,76 +0,0 @@
Vn.Contact = new Class
({
Extends: Vn.Module
,activate: function ()
{
var self = this;
var form = this.$('contact-form').onsubmit = function ()
{ self.onSubmit (); return false; };
this.refreshCaptcha ();
}
,refreshCaptcha: function ()
{
var url = 'forms/cms/contact/captcha.php';
this.$('captcha-img').src = url +'?'+ new Date ().getTime ();
}
,onSubmit: function ()
{
var form = this.$('contact-form');
var request = new Vn.FormRequest ();
request.send (form, this.onResponse.bind (this));
}
,onResponse: function (response)
{
var form = this.$('contact-form');
if (response)
{
form.reset ();
Htk.Toast.showMessage (_('DataSentSuccess'));
}
else
Htk.Toast.showError (_('ErrorSendingData'));
form['captcha'].value = '';
this.refreshCaptcha ();
}
});
Vn.FormRequest = new Class
({
send: function (form, callback)
{
var formData = '';
var elements = form.elements;
for (var i = 0; i < elements.length; i++)
if (elements[i].name)
formData += elements[i].name +'='+
encodeURIComponent (elements[i].value) +'&';
var request = new XMLHttpRequest ();
request.open (form.method, form.action, true);
request.setRequestHeader ('Content-Type', 'application/x-www-form-urlencoded');
request.onreadystatechange = this.onSend.bind (this, request, callback);
request.send (formData);
}
,onSend: function (request, callback)
{
if (request.readyState != 4)
return;
if (request.status == 200)
callback (eval (request.responseText));
else
callback (null);
}
});

View File

@ -1,39 +0,0 @@
<?php
session_start ();
$params = array
(
'name'
,'pc'
,'phone'
,'email'
,'message'
,'captcha'
);
$paramsOk = TRUE;
foreach ($params as $param)
if (!isset ($_POST[$param]) || $_POST[$param] == '')
{
$paramsOk = FALSE;
break;
}
header ('Content-Type: application/json');
if ($paramsOk && isset ($_SESSION['captcha'])
&& $_POST['captcha'] == $_SESSION['captcha'])
{
mail ('nuria@verdnatura.es', 'Verdnatura', print_r ($_POST, TRUE),
'From: Verdnatura <www-data@verdnatura.es>');
echo json_encode (TRUE);
}
else
echo json_encode (FALSE);
unset ($_SESSION['captcha']);
?>

View File

@ -1,66 +0,0 @@
.contact
{
padding: 1em;
}
.contact .box
{
max-width: 40em;
}
.contact p
{
position: relative;
text-align: center;
max-width: 25em;
margin: 1em auto;
}
.contact form
{
margin: 0 auto;
max-width: 25em;
}
.contact form p
{
margin: 1em auto;
display: block;
margin-top: 2em;
}
div.form-group
{
padding: 0.4em;
}
.contact form label
{
display: block;
margin-bottom: 0.5em;
}
.contact input,
.contact textarea
{
margin: 0;
width: 100%;
}
.contact textarea
{
height: 5em;
}
.contact button
{
display: block;
margin: 0 auto;
margin-top: 1em;
padding: 0.6em;
}
/* Captcha */
.captcha img
{
vertical-align: middle;
}
.captcha input
{
margin-left: 1em;
max-width: 8em;
}

View File

@ -1,54 +0,0 @@
<vn>
<div id="form" class="contact">
<div class="box">
<div class="header">
<h1><t>IWantCustomer</t></h1>
</div>
<div class="body">
<p>
<t>FillFormData</t>
</p>
<p>
<t>OrCallUs</t>
</p>
<form action="forms/cms/contact/send-data.php" method="post" id="contact-form">
<div class="form-group">
<label><t>Name</t></label>
<input type="text" name="name"/>
</div>
<div class="form-group">
<label><t>City</t></label>
<input type="text" name="city"/>
</div>
<div class="form-group">
<label><t>PC</t></label>
<input type="text" name="pc"/>
</div>
<div class="form-group">
<label><t>Phone</t></label>
<input type="text" name="phone"/>
</div>
<div class="form-group">
<label><t>EMail</t></label>
<input type="text" name="email"/>
</div>
<div class="form-group">
<label><t>Message</t></label>
<textarea name="message"/>
</div>
<div class="form-group captcha">
<label><t>Anti-Spam</t></label>
<img alt="Captcha" id="captcha-img"/>
<input type="text" name="captcha"/>
</div>
<p>
<t>AllFieldsMandatory</t>
</p>
<button class="flat">
<t>Send</t>
</button>
</form>
</div>
</div>
</div>
</vn>

View File

@ -1,6 +0,0 @@
Vn.Home = new Class
({
Extends: Vn.Module
});

View File

@ -1,81 +0,0 @@
/* News panel */
.home
{
margin: .5em;
}
.column
{
max-width: 120em;
}
/* New */
.new
{
text-align: left;
background-color: white;
color: #222;
border: none;
border-radius: 0.1em;
box-shadow: 0 0.2em 0.2em #CCC;
margin: .5em;
}
.new .top
{
padding: 1.5em;
padding-bottom: 1em;
}
.new h2
{
font-size: 1.6em;
color: black;
font-weight: normal;
}
.new-info
{
font-size: 0.9em;
color: #444;
text-align: right;
margin: 0.8em 0;
}
.new-text
{
margin-top: 2em;
}
.new-text li
{
margin: 0.4em 0;
}
.new img
{
display: block;
margin: auto;
width: 100%;
}
/* Survey */
.survey
{
position: absolute;
right: 0;
width: 6em;
top: 0;
}
.question, .survey-votes
{
text-align: center;
margin: 1em;
}
.answers .radio
{
text-align: right;
}
.survey button
{
display: block;
margin: auto;
}

View File

@ -1,29 +0,0 @@
<vn>
<div id="form" class="home">
<div class="column mansonry" id="news-column">
<htk-repeater form-id="new">
<db-model>
SELECT title, date_time, text, image, id FROM news
WHERE tag != 'course'
ORDER BY priority, date_time DESC
</db-model>
<template>
<div class="masonry-box">
<div class="new">
<div class="top">
<h2><htk-text form="new" column="title"/></h2>
<p class="new-info">
<htk-text format="_%a, %e %b %Y" form="new" column="date_time"/>
</p>
<div class="new-text">
<htk-html form="new" column="text"/>
</div>
</div>
<htk-image directory="news/full" form="new" column="image"/>
</div>
</div>
</template>
</htk-repeater>
</div>
</div>
</vn>

View File

@ -1,116 +0,0 @@
var gmapsIsLoaded = false;
Vn.Location = new Class
({
Extends: Vn.Module
,locations: null
,activate: function ()
{
this.gui.loaderPush ();
var sql = 'SELECT lat, lng, title, address, postcode, city, province, phone, language FROM location';
this.conn.execQuery (sql, this.onLocationsDone.bind (this));
if (!gmapsIsLoaded)
{
gmapsLoadedCallback = this.gmapsLoaded.bind (this);
Vn.includeJs ('https://maps.google.com/maps/api/js'+
'?sensor=false&callback=gmapsLoadedCallback', null, true);
}
else
this.gmapsLoaded ();
}
,onLocationsDone: function (resultSet)
{
this.locations = resultSet.fetchResult ();
this.allLoaded ();
}
,gmapsLoaded: function ()
{
this.gui.loaderPop ();
gmapsIsLoaded = true;
this.allLoaded ();
}
,allLoaded: function ()
{
if (!this.locations || !gmapsIsLoaded)
return;
var options = {
zoom: 4
,mapTypeId: google.maps.MapTypeId.ROADMAP
,center: new google.maps.LatLng (46.0, 4.0)
};
var div = this.$('form');
var gmap = new google.maps.Map (div, options);
if (this.locations)
while (this.locations.next ())
this.createMarker (this.locations, gmap);
}
,createMarker: function (location, gmap)
{
var div = document.createElement ('div');
div.className = 'marker';
var h = document.createElement ('h3');
h.appendChild (document.createTextNode (location.get ('title')));
div.appendChild (h);
var p = document.createElement ('p');
p.appendChild (document.createTextNode (location.get ('address')));
div.appendChild (p);
var p = document.createElement ('p');
p.appendChild (document.createTextNode (location.get ('postcode') +' '+ location.get ('city')));
div.appendChild (p);
var p = document.createElement ('p');
p.appendChild (document.createTextNode (location.get ('province')));
div.appendChild (p);
var p = document.createElement ('p');
p.appendChild (document.createTextNode (location.get ('phone')));
div.appendChild (p);
var lat = new google.maps.LatLng (
location.get ('lat'),
location.get ('lng')
);
var marker = new google.maps.Marker ({
position: lat
,tilte: location.title
,map: gmap
});
var infoWindow = new google.maps.InfoWindow ({
content: div
});
google.maps.event.addListener (marker, 'click',
this.openInfoWindow.bind (this, infoWindow, gmap, marker));
if (Vn.Locale.language
&& Vn.Locale.language == location.get ('language'))
this.openInfoWindow (infoWindow, gmap, marker);
}
,openInfoWindow: function (infoWindow, gmap, marker)
{
if (this.openedWindow)
this.openedWindow.close ();
infoWindow.open (gmap, marker);
this.openedWindow = infoWindow;
}
});

View File

@ -1,16 +0,0 @@
.location
{
position: relative;
height: 100%;
width: 100%;
}
div.marker h3
{
font-size: 1.3em;
}
div.marker p
{
padding: 0;
margin: 0;
}

View File

@ -1,3 +0,0 @@
<vn>
<div id="form" class="location"/>
</vn>

View File

@ -1,57 +0,0 @@
/* News panel */
.training
{
margin: .5em;
}
.column
{
max-width: 120em;
}
/* New */
.new
{
text-align: left;
background-color: white;
color: #222;
border: none;
border-radius: 0.1em;
box-shadow: 0 0.2em 0.2em #CCC;
margin: .5em;
}
.new .top
{
padding: 1.5em;
padding-bottom: 1em;
}
.new h2
{
font-size: 1.6em;
color: black;
font-weight: normal;
}
.new-info
{
font-size: 0.9em;
color: #444;
text-align: right;
margin: 0.8em 0;
}
.new-text
{
margin-top: 2em;
}
.new-text li
{
margin: 0.4em 0;
}
.new img
{
display: block;
margin: auto;
width: 100%;
}

View File

@ -1,5 +0,0 @@
Vn.Training = new Class
({
Extends: Vn.Module
});

View File

@ -1,29 +0,0 @@
<vn>
<div id="form" class="training">
<div class="column masonry" id="news-column">
<htk-repeater form-id="new">
<db-model id="news">
SELECT title, date_time, text, image, id FROM news
WHERE tag = 'course'
ORDER BY priority, date_time DESC
</db-model>
<template>
<div class="masonry-box">
<div class="new">
<div class="top">
<h2><htk-text form="new" column="title"/></h2>
<p class="new-info">
<htk-text format="_%a, %e %b %Y" form="new" column="date_time"/>
</p>
<div class="new-text">
<htk-html form="new" column="text"/>
</div>
</div>
<htk-image directory="news/full" form="new" column="image"/>
</div>
</div>
</template>
</htk-repeater>
</div>
</div>
</vn>

View File

@ -1,28 +0,0 @@
.why
{
padding: 1em;
}
.why .box
{
max-width: 40em;
margin: 0 auto;
}
.why ul
{
list-style-type: none;
padding: 0 1em;
padding-bottom: 1em;
max-width: 36em;
margin: 0 auto;
}
.why li
{
padding: 0.5em 0;
}
.why img
{
display: block;
margin: 0 auto;
max-width: 95%;
}

View File

@ -1,22 +0,0 @@
<vn>
<div id="form" class="why">
<div class="box">
<div class="header">
<h1><t>AboutCompany</t></h1>
</div>
<div class="body">
<ul>
<li><t>BecauseOurBigCatalog</t></li>
<li><t>BecauseThisWeb</t></li>
<li><t>BecauseOurShoppingDep</t></li>
<li><t>BecauseOrderIsEasy</t></li>
<li><t>BecauseOurPlant</t></li>
<li><t>BecauseOurSalesDep</t></li>
<li><t>BecauseOurWorkShop</t></li>
<li><t>BecauseWeHaveWhatYouNeed</t></li>
</ul>
<img src="image/store.png" alt="Store photo"/>
</div>
</div>
</div>
</vn>

View File

@ -1,6 +0,0 @@
Vn.Why = new Class
({
Extends: Vn.Module
});

View File

@ -1,95 +0,0 @@
Vn.Basket = new Class
({
Extends: Vn.Module
,open: function ()
{
if (this.basketChecked)
this.parent ();
}
,activate: function ()
{
Vn.BasketChecker.check (this.conn,
this.onBasketCheck.bind (this));
}
,onBasketCheck: function (isOk)
{
if (!isOk)
return;
this.basketChecked = true;
this.open ();
}
,onConfigureClick: function ()
{
Htk.Toast.showWarning (_('RememberReconfiguringImpact'));
this.hash.set ({'form': 'ecomerce/checkout'});
}
,onCatalogClick: function ()
{
this.hash.set ({'form': 'ecomerce/catalog'});
}
,onCheckoutClick: function ()
{
this.hash.set ({'form': 'ecomerce/confirm'});
}
,amountRender: function (renderer, form)
{
var amount = form.get ('amount');
var grouping = form.get ('grouping');
if (amount && grouping)
renderer.value = amount / grouping;
else
renderer.value = null;
}
,onAmountChange: function (renderer, row, newValue)
{
var model = this.$('items');
model.set (row, 'amount', newValue * model.get (row, 'grouping'));
}
,featuresRender: function (renderer, form)
{
renderer.value = form.get ('Medida') +' '+ form.get ('Categoria') +' '+ form.get ('Color');
}
,stemsRender: function (renderer, form)
{
renderer.value = Vn.Value.format (form.get ('price'), '%.2d€') +' x '+ form.get ('amount');
if (form.get ('amount') > form.get ('available'))
renderer.td.className = 'available-exceeded';
else
renderer.td.className = '';
}
,subtotalRender: function (renderer, form)
{
renderer.value = this.subtotal (form);
}
,subtotal: function (form)
{
return form.get ('amount') * form.get ('price');
}
,availableRender: function (renderer, form)
{
if (form.get ('amount') > form.get ('avail'))
renderer.value = 'unavailable';
else
renderer.value = 'invisible';
}
});

View File

@ -1,39 +0,0 @@
.basket
{
padding: 1em;
min-width: 25em;
}
.basket .box
{
max-width: 45em;
margin: 0 auto;
}
.basket .form
{
padding: 1em;
margin: 0;
background-color: #009688;
}
.basket .form > p
{
margin: 0;
font-size: 1.4em;
color: white;
text-align: right;
}
.basket .config
{
margin: 0;
}
/* Rows */
.basket td.available-exceeded input
{
background-color: #FCC;
}
.basket .icon > img
{
border-radius: 50%;
}

View File

@ -1,54 +0,0 @@
<vn>
<div id="form" class="basket">
<div class="box">
<div class="header">
<h1><t>Basket</t></h1>
<div class="action-bar">
<button on-click="onConfigureClick" title="_ConfigureOrder">
<img class="config" src="image/dark/preferences.svg" alt=""/>
<t>ConfigureOrder</t>
</button>
<button on-click="onCatalogClick">
<img src="image/dark/menu.svg" alt=""/>
<t>Catalog</t>
</button>
<button on-click="onCheckoutClick">
<img src="image/dark/ok.svg" alt=""/>
<t>Checkout</t>
</button>
</div>
<div class="clear"/>
</div>
<div>
<htk-grid show-header="false">
<db-model id="items" updatable="true">
SELECT i.id, i.amount, i.price, a.Article, a.Categoria,
a.Medida, a.Tallos, a.Color, o.Abreviatura, a.Foto
FROM basket_item i
INNER JOIN vn2008.Articles a ON a.Id_Article = i.item_id
LEFT JOIN vn2008.Origen o ON a.id_origen = o.id;
</db-model>
<htk-column-image
column="Foto"
directory="catalog"
subdir="50x50"
show-full="true"
full-dir="900x900"
class="icon"/>
<htk-column-text title="_Item" column="Article"/>
<htk-column-text renderer="featuresRender"/>
<htk-column-text title="_Amount" column="amount" renderer="stemsRender"/>
<htk-column-spin unit="€" digits="2" renderer="subtotalRender"/>
</htk-grid>
<div class="form">
<p>
<t>OrderTotal</t>
<htk-text format="%.2d€">
<db-calc-sum func="subtotal" model="items"/>
</htk-text>
</p>
</div>
</div>
</div>
</div>
</vn>

View File

@ -1,339 +0,0 @@
Vn.Catalog = new Class
({
Extends: Vn.Module
,open: function ()
{
if (this.basketChecked)
this.parent ();
}
,activate: function ()
{
if (!Vn.Url.getQuery ('guest'))
{
Vn.BasketChecker.check (this.conn,
this.onBasketCheck.bind (this));
}
else
{
var query = 'CALL basket_configure_for_guest ()';
this.conn.execQuery (query, this.onBasketForGuest.bind (this));
}
}
,onBasketForGuest: function ()
{
this.onBasketCheck (true);
}
,onBasketCheck: function (isOk)
{
if (!isOk)
return;
this.basketChecked = true;
this.open ();
this.popup = new Htk.Popup ();
this.popup.setChildNode (this.$('lots-popup'));
this.$('items-model').setInfo ('a', 'Articles', 'vn2008', ['item_id']);
}
,onBasketReady: function (form)
{
if (form.get ('method') != 'PICKUP')
Vn.Node.setText (this.$('method'), _('Agency'));
else
Vn.Node.setText (this.$('method'), _('Warehouse'));
}
,typeRenderer: function (builder, form)
{
var link = builder.$('link');
link.href = this.hash.make ({'type': form.get ('tipo_id')}, true);
}
,realmRenderer: function (builder, form)
{
var link = builder.$('link');
link.href = this.hash.make ({
'form': this.hash.get ('form'),
'realm': form.get ('id')
});
var img = builder.$('image');
img.src = 'image/family/'+ form.get ('id') +'.svg';
img.title = form.get ('reino');
img.alt = img.title;
}
,onTypeChange: function ()
{
if (Vn.isMobile () && this.$('type').value)
this.hideMenu ();
var realms = this.$('realms-model');
if (!realms.ready)
return;
this.refreshTitle ();
var color = null;
if (this.$('type').value)
{
var row = realms.search ('id', this.$('realm').value);
if (row != -1)
color = '#'+ realms.get (row, 'color');
}
this.$('header').style.backgroundColor = color;
var tr = this.$('items-grid').getNode ()
.getElementsByTagName ('thead')[0]
.getElementsByTagName ('tr')[0];
//.querySelector ('thead tr');
tr.style.backgroundColor = color;
}
,refreshTitle: function (title)
{
var types = this.$('types-model');
if (!types.ready)
return;
var title = _('Catalog');
if (this.$('type').value)
{
var row = types.search ('tipo_id', this.$('type').value);
if (row != -1)
title = types.get (row, 'Tipo');
}
else if (this.$('search-entry').value)
title = _('SearchResults');
Vn.Node.setText (this.$('title'), title);
}
,onSearch: function (event)
{
var searchTags = this.$('search-entry').value;
searchTags = searchTags != '' ? searchTags : undefined;
var batch = this.$('batch');
batch.block ();
this.$('search').value = searchTags;
if (searchTags)
{
this.$('type').value = undefined;
this.$('realm').value = undefined;
}
batch.unblock ();
batch.changed ();
}
,onMenuClick: function (event)
{
event.stopPropagation ();
}
,onShowMenuClick: function (event)
{
event.stopPropagation ();
this.gui.showBackground ();
this.$('menu').style.display = 'block';
this.hideMenuCallback = this.hideMenu.bind (this);
document.addEventListener ('click', this.hideMenuCallback);
}
,hideMenu: function ()
{
this.gui.hideBackground ();
this.$('menu').style.display = 'none';
document.removeEventListener ('click', this.hideMenuCallback);
this.hideMenuCallback = null;
}
,onBasketClick: function ()
{
if (!Vn.Url.getQuery ('guest'))
this.hash.set ({'form': 'ecomerce/basket'});
else
Htk.Toast.showError (_('YouMustBeLoggedIn'));
}
,onConfigClick: function ()
{
if (!Vn.Url.getQuery ('guest'))
this.hash.set ({'form': 'ecomerce/checkout'});
else
Htk.Toast.showError (_('YouMustBeLoggedIn'));
}
,nameRenderer: function (renderer, form)
{
renderer.subtitle = form.get ('producer');
}
,featuresRender: function (renderer, form)
{
renderer.value = form.get ('Medida') +' '+ form.get ('Categoria') +' '+ form.get ('Color');
}
,amountRender: function (renderer, form)
{
var amount = form.get ('amount');
var grouping = form.get ('grouping');
if (amount && grouping)
renderer.value = amount / grouping;
else
renderer.value = null;
}
,amountChanged: function (renderer, row, newValue)
{
var model = this.$('items-model');
model.set (row, 'amount', newValue * model.get (row, 'grouping'));
}
,catRenderer: function (column, form)
{
switch (form.get ('Categoria'))
{
case 'A2':
column.td.className = 'second-category';
break;
case 'B1':
column.td.className = 'third-category';
break;
default:
column.td.className = '';
}
}
,onAddItemClick: function (column, value, row, button)
{
if (Vn.Url.getQuery ('guest'))
{
Htk.Toast.showError (_('YouMustBeLoggedIn'));
return;
}
var itemId = this.$('items-model').get (row, 'item_id')
this.$('lots-batch').addValue ('item', itemId);
this.itemRow = row;
this.onEraseClick ();
this.popup.show (button);
}
,onAddLotClick: function (column, value, row, button)
{
var model = this.$('item-lots');
var grouping = model.get (row, 'grouping');
var warehouse = model.get (row, 'warehouse_id');
var available = model.get (row, 'available');
var lotAmount = this.items[warehouse];
if (lotAmount === undefined)
lotAmount = 0;
if (lotAmount < available)
{
var newAmount = lotAmount + grouping;
if (newAmount > available)
newAmount = available;
this.items[warehouse] = newAmount;
this.$('amount').value += newAmount - lotAmount;
}
else
Htk.Toast.showError (_('NoMoreAmountAvailable'));
}
,onEraseClick: function ()
{
this.$('amount').value = 0;
this.items = {};
}
,onConfirmClick: function ()
{
var model = this.$('items-model');
var sql = '';
var batch = new Sql.Batch ();
var query = new Sql.String ({query: 'CALL basket_item_add (#warehouse, #item, #amount);'});
var amountSum = 0;
for (var warehouse in this.items)
{
var amount = this.items[warehouse];
amountSum += amount;
batch.addValue ('warehouse', warehouse);
batch.addValue ('item', model.get (this.itemRow, 'item_id'));
batch.addValue ('amount', amount);
sql += query.render (batch);
}
if (amountSum > 0)
{
this.conn.execQuery (sql);
var itemName = model.get (this.itemRow, 'Article');
Htk.Toast.showMessage (
sprintf (_('Added%dOf%s'), amountSum, itemName));
}
this.popup.hide ();
}
,onStatusChange: function (model)
{
if (this.popup)
this.popup.reset ();
}
});
Vn.ColumnItem = new Class
({
Extends: Htk.Column
,Tag: 'vn-column-item'
,render: function (tr)
{
var td = this.parent (tr);
td.style.textAlign = 'left';
if (this.value)
{
var node = document.createTextNode (
Vn.Value.format (this.value, this._format));
td.appendChild (node);
}
if (this.subtitle)
{
td.appendChild (document.createElement ('br'));
td.appendChild (document.createTextNode (this.subtitle));
}
return td;
}
});

View File

@ -1,13 +0,0 @@
.catalog button.menu
{
display: block;
}
.catalog div.center
{
right: 0;
}
.right-panel
{
display: none;
}

View File

@ -1,288 +0,0 @@
.catalog
{
position: relative;
width: 100%;
height: 100%;
min-height: 25em;
}
.catalog div.center
{
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 17em;
}
/* Main */
.catalog div.main
{
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
overflow: auto;
padding: 1em;
}
.catalog div.main .box
{
margin: 0 auto;
max-width: 50em;
min-width: 25em;
}
.catalog .footer-message
{
padding-bottom: 1em;
text-align: center;
}
/* Topbar */
.catalog .action-bar
{
max-width: 15em;
}
.catalog .search
{
float: left;
display: block;
background-color: white;
height: 2.2em;
padding: 0;
}
.catalog .search > input
{
margin: 0;
border: none;
width: 10em;
box-shadow: none;
}
.catalog .search > input:focus
{
background-color: initial;
}
.catalog .search > img
{
margin: 0.4em;
margin-top: 0;
vertical-align: middle;
}
.catalog button.menu
{
float: left;
display: none;
border: none;
background-color: transparent;
box-shadow: none;
padding: 0.3em;
padding-left: 0;
margin-left: 0;
}
.catalog button.menu > img
{
height: 1.8em;
}
/* Right panel */
.right-panel
{
position: absolute;
z-index: 20;
top: 0;
bottom: 0;
right: 0;
width: 17em;
background-color: white;
box-shadow: 0 0.2em 0.2em #AAA;
}
.right-panel button.basket,
.right-panel button.configure
{
width: 100%;
height: 3em;
font-size: 1.1em;
text-align: center;
background-color: #00BCD4;
border-radius: 0;
display: inline-block;
width: 50%;
margin: 0;
padding: 0;
}
.right-panel button.basket:hover
{
background-color: #0AB;
}
.right-panel button.configure
{
background-color: #0097A7;
}
.right-panel button.configure:hover
{
background-color: #00838F;
}
.right-panel .basket-info > p
{
margin: 1em 1.2em;
color: #555;
font-size: 1.2em;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.right-panel .basket-info span
{
font-size: 1em;
}
.right-panel .realms-box
{
box-shadow: 0 0 0.4em #AAA;
background-color: rgba(1, 1, 1, .1);
}
.right-panel .realms-box a
{
display: block;
float: left;
line-height: 0;
width: 33.3%;
}
.right-panel .realms-box a > img
{
width: 100%;
border: 0;
padding: 0;
cursor: pointer;
}
.right-panel .realms-box img:hover
{
opacity: 0.85;
}
.right-panel .types-box
{
position: absolute;
top: 21.6em;
bottom: 0;
right: 0;
left: 0;
overflow: auto;
}
.right-panel .types-box a
{
padding: .5em 1.5em;
display: block;
}
.right-panel .types-box a:hover
{
background-color: rgba(1, 1, 1, .1);
}
/* Grid view */
.item-box
{
padding: 1em;
border-bottom: 1px solid #DDD;
min-height: 14em;
}
.item-box > .image
{
width: 8em;
height: 14em;
float: left;
margin-right: 1em;
}
.item-box img
{
max-width: 8em;
max-height: 8em;
display: block;
margin: 0 auto;
}
.item-box p
{
margin: 0;
padding: 0.6em;
}
.item-box h2
{
font-weight: normal;
}
.item-box .amount
{
width: 3em;
}
.amount-p
{
text-align: right;
}
/* Lots popup*/
div.amount
{
text-align: center;
background-color: #009688;
color: white;
line-height: 2.5em;
padding: 0.2em;
}
button.erase
{
float: left;
}
button.confirm
{
float: right;
}
button.erase > img,
button.confirm > img
{
height: 1em;
}
/* List view */
.items
{
width: 100%;
}
.catalog div.box div.header,
.items > thead > tr,
.realms-bar
{
background-color: #777;
}
.items > tbody > tr
{
height: 6em;
}
.items .icon
{
width: 6em;
padding: .2em;
padding-right: .5em;
}
.items .icon > img
{
max-height: 6em;
max-width: 6em;
}
td.second-category
{
font-weight: bold;
color: orange;
}
td.third-category
{
font-weight: bold;
color: red;
}
td.price
{
color: green;
}

View File

@ -1,222 +0,0 @@
<vn>
<vn-group>
<vn-param id="realm" on-changed="onTypeChange">
<vn-hash-param key="realm"/>
</vn-param>
<vn-param id="type" on-changed="onTypeChange">
<vn-hash-param key="type"/>
</vn-param>
<vn-param id="search"/>
<sql-filter type="AND" id="filter">
<sql-filter-item type="EQUAL" id="sql-type">
<sql-field name="tipo_id"/>
<sql-value param="type"/>
</sql-filter-item>
<sql-filter-item type="LIKE">
<sql-field name="Article"/>
<sql-search-tags param="search"/>
</sql-filter-item>
</sql-filter>
<db-query id="basket-lines">
SELECT item_id, warehouse_id, SUM(amount) amount
FROM basket_item
GROUP BY warehouse_id
</db-query>
<db-model result-index="2" id="items-model">
CREATE TEMPORARY TABLE tmp.bionic_calc
(INDEX (item_id))
ENGINE=MEMORY
SELECT Id_Article item_id FROM vn2008.Articles
WHERE #filter;
CALL bionic_calc ();
SELECT a.Id_Article item_id, t.available, t.price, p.producer,
a.Foto, a.Article, a.Categoria, a.Medida, a.Tallos, a.Color, o.Abreviatura
FROM tmp.bionic_item t
JOIN vn2008.Articles a ON a.Id_Article = t.item_id
LEFT JOIN vn2008.Articles_producer p ON p.Id_Article = a.Id_Article
LEFT JOIN vn2008.Origen o ON a.id_origen = o.id
WHERE t.available > 0
ORDER BY a.Article, a.Medida
LIMIT 400;
<sql-batch property="batch" id="batch">
<item name="filter" object="filter"/>
</sql-batch>
</db-model>
<db-model id="item-lots" result-index="1" on-status-changed-after="onStatusChange">
CALL bionic_from_item (#item);
SELECT p.warehouse_id, p.grouping, p.price, p.rate, l.available
FROM tmp.bionic_lot l
JOIN tmp.bionic_price p
ON p.warehouse_id = l.warehouse_id
ORDER BY warehouse_id, grouping;
<sql-batch property="batch" id="lots-batch"/>
</db-model>
<db-form id="basket" on-ready="onBasketReady">
<db-model>
SELECT o.id, o.date_send, ag.description agency, v.code method
FROM basket o
JOIN vn2008.Agencias ag ON ag.Id_Agencia = o.agency_id
JOIN vn2008.Vistas v ON v.vista_id = o.delivery_method_id
</db-model>
</db-form>
</vn-group>
<div id="form" class="catalog">
<div class="center">
<div class="main">
<div class="box">
<div id="header" class="header">
<button class="menu" on-click="onShowMenuClick">
<img src="image/dark/menu.svg" alt="_Menu"/>
</button>
<h1 id="title"><t>Catalog</t></h1>
<div class="action-bar">
<div class="search">
<img src="image/search.svg" alt="_Search" class="icon"/>
<input type="text" id="search-entry" on-change="onSearch"/>
</div>
</div>
<div class="clear"/>
</div>
<htk-grid empty-message="_SelectSubtype" id="items-grid" class="items" model="items-model">
<htk-column-image
title="*"
class="icon"
column="Foto"
directory="catalog"
subdir="200x200"
show-full="true"
full-dir="900x900"
editable="true"/>
<vn-column-item title="_Name" column="Article" renderer="nameRenderer"/>
<htk-column-text title="_Cat" renderer="featuresRender"/>
<htk-column-spin title="_Aval" column="available"/>
<htk-column-text
title="_Price"
column="price"
format="_from %.2d€"
class="price"/>
<htk-column-button
column="id"
image="image/add.svg"
tip="_AddToBasket"
on-clicked="onAddItemClick"/>
</htk-grid>
<p class="footer-message">
<t>IndicativePhotos</t>
</p>
</div>
</div>
</div>
<div id="menu" class="right-panel" on-click="onMenuClick">
<button class="basket" on-click="onBasketClick" title="Shopping basket">
<t>Basket</t>
</button><button class="configure" on-click="onConfigClick" title="_Configure shopping basket">
<t>Configure</t>
</button>
<div class="basket-info">
<p>
<htk-text form="basket" column="date_send" format="_%A, %e of %B"/>
</p>
<p>
<span id="method"/>
<htk-text form="basket" column="agency"/>
</p>
</div>
<htk-repeater
model="realms-model"
form-id="realm-form"
renderer="realmRenderer"
class="realms-box">
<db-model id="realms-model" on-status-changed="onTypeChange">
SELECT id, reino, color FROM vn2008.reinos
WHERE display != FALSE ORDER BY reino
</db-model>
<template>
<a id="link">
<img id="image"/>
</a>
</template>
</htk-repeater>
<htk-repeater
model="types-model"
form-id="type-form"
renderer="typeRenderer"
empty-message="_SelectFamily"
class="types-box">
<db-model id="types-model" on-status-changed="refreshTitle">
CALL type_list (#realm)
<sql-batch property="batch">
<item name="realm" param="realm"/>
</sql-batch>
</db-model>
<template>
<a id="link">
<htk-text form="type-form" column="Tipo"/>
</a>
</template>
</htk-repeater>
</div>
</div>
<div id="lots-popup" class="lots-popup">
<htk-grid class="lots-grid" model="item-lots" show-header="false">
<htk-column-spin title="_Price" column="price" unit="€" digits="2"/>
<htk-column-text title="_Pack" column="grouping" format="x%.0d"/>
<htk-column-button
column="id"
image="image/add.svg"
tip="_Add"
on-clicked="onAddLotClick"/>
</htk-grid>
<div class="amount">
<button on-click="onEraseClick" title="_Erase" class="erase">
<img
src="image/dark/delete.svg"
alt="_Erase"/>
</button>
<htk-text id="amount"/>
<button on-click="onConfirmClick" title="_Confirm" class="confirm">
<img
src="image/dark/ok.svg"
alt="_Confirm"/>
</button>
<div class="clear"/>
</div>
</div>
<!--
<htk-repeater id="grid-view" form-id="item">
<template>
<div class="item-box">
<div class="image">
<div>
<htk-image form="item" column="Foto" directory="catalog/200x200"/>
</div>
</div>
<h2>
<htk-text form="item" column="Article"/>
</h2>
<p>
<htk-text form="item" column="Medida"/> /
<htk-text form="item" column="Categoria"/> /
<htk-text form="item" column="Color"/> /
<htk-text form="item" column="Tallos"/> /
<htk-text form="item" column="Abreviatura"/>
</p>
<p>
<t>Available:</t>
<htk-text form="item" column="available"/>
</p>
<p>
<t>Price:</t>
<htk-text form="item" column="price" format="%.2d€"/>
</p>
<p class="amount-p">
<htk-entry id="stems" class="amount"/>
<htk-text form="item" column="grouping" format="x%.0d"/>
<htk-entry form="item" column="amount" class="amount"/>
</p>
<div class="clear"/>
</div>
</template>
</htk-repeater>
-->
</vn>

View File

@ -1,191 +0,0 @@
Vn.Checkout = new Class
({
Extends: Vn.Module
,activate: function ()
{
this.autoStepLocked = true;
this.today = new Date ();
this.today.setHours (0,0,0,0);
}
,onValuesReady: function ()
{
var orderForm = this.$('order-form');
var defaultsForm = this.$('defaults');
if (!(orderForm.ready && defaultsForm.ready))
return;
var date;
if (orderForm.numRows > 0)
{
var i = orderForm;
date = i.get ('date_send');
}
else
var i = defaultsForm;
if (!date || date.getTime () < (new Date ()).getTime ())
{
date = new Date ();
if (i.get('delivery_method') != 'PICKUP')
date.setTime (date.getTime () + 86400000);
}
this.$('date').value = date;
this.$('method').value = i.get ('delivery_method');
this.$('agency').value = i.get ('agency_id');
this.$('address').value = i.get ('address_id');
this.autoStepLocked = false;
}
,onConfirmClick: function ()
{
var query = 'CALL basket_configure (#date, #method, #agency, #address)';
var batch = new Sql.Batch ();
batch.addParam ('method', this.$('method'));
batch.addParam ('date', this.$('date'));
batch.addParam ('agency', this.$('agency'));
batch.addParam ('address', this.$('address'));
this.conn.execQuery (query,
this.onBasketConfigured.bind (this), batch);
}
,onBasketConfigured: function (resultSet)
{
if (!resultSet.fetchResult ())
return;
if (this.$('order-form').numRows > 0)
Htk.Toast.showMessage (_('OrderUpdated'));
else
Htk.Toast.showMessage (_('OrderStarted'));
this.hash.set ({'form': 'ecomerce/catalog'});
}
,onCancelClick: function ()
{
if (this.$('order-form').numRows > 0)
window.history.back();
else
this.hash.set ({'form': 'ecomerce/orders'});
}
,agencySteps: ['method', 'date', 'address', 'agency', 'confirm-agency']
,deliverySteps: ['method', 'date', 'address', null, 'confirm-delivery']
,pickupSteps: ['method', 'date', 'pickup', null, 'confirm-pickup']
,stepFunc: function (stepIndex)
{
var steps;
var isDelivery;
switch (this.$('rg-method').value)
{
case 'AGENCY':
steps = this.agencySteps;
isDelivery = true;
break;
case 'DELIVERY':
steps = this.deliverySteps;
isDelivery = true;
break;
case 'PICKUP':
default:
steps = this.pickupSteps;
isDelivery = false;
break;
}
var stepId = steps[stepIndex];
if (!stepId)
return null;
switch (stepId)
{
case 'date':
Vn.Node.setText (this.$('date-question'), isDelivery ?
_('OrderDateDeliveryQuestion'):
_('OrderDatePickupQuestion'));
this.$('calendar').goToSelectedMonth ();
break;
case 'agency':
this.$('agencies').refresh ();
break;
case 'pickup':
this.$('warehouses').refresh ();
break;
}
return this.$(stepId +'-step');
}
,onFieldChange: function ()
{
if (!this.autoStepLocked)
setTimeout (this.goNextStep.bind (this), 75);
}
,goNextStep: function ()
{
this.$('assistant').moveNext ();
}
,addressRenderer: function (builder, form)
{
builder.$('address').addEventListener ('click',
this.onAddressClick.bind (this, form.get ('id')));
}
,onAddressClick: function (addressId)
{
this.$('address').value = addressId;
this.goNextStep ();
}
,onAddressChange: function ()
{
if (this.selectedNode)
Vn.Node.removeClass (this.selectedNode, 'selected');
var row = this.$('addresses').search ('id', this.$('address').value);
if (row != -1)
{
var builder = this.$('repeater').getBuilder (row);
this.selectedNode = builder.$('address');
Vn.Node.addClass (this.selectedNode, 'selected');
}
this.$('address-form').row = row;
}
,onAgenciesReady: function (model)
{
if (model.ready && model.numRows == 0)
Htk.Toast.showError (_('NoAgeciesAvailableForDate'));
}
,onWarehousesReady: function (model)
{
if (model.ready && model.numRows == 0)
Htk.Toast.showError (_('NoWarehousesAvailableForDate'));
}
,calendarRestrict: function (date)
{
return date.getTime () >= this.today.getTime ();
}
});

View File

@ -1,85 +0,0 @@
.checkout
{
padding: 1em;
max-width: 40em;
margin: 0 auto;
}
.checkout .form
{
max-width: 40em;
padding: 3em;
}
/* Step */
.answers button,
.answers p,
.radio > div
{
font-size: 1.4em;
}
.answers select
{
min-width: 8em;
display: block;
margin: 0 auto;
font-size: 1.6em;
height: 1.8em;
}
.answers p
{
margin: 0.3em 0;
}
.target
{
max-width: 28em;
margin: 0 auto;
}
.address
{
border-radius: 0.1em;
padding: 0.6em 1.4em;
}
.address.selected
{
background-color: rgba(1, 1, 1, .1);
}
.address:hover
{
cursor: pointer;
background-color: rgba(1, 1, 1, .05);
}
.address p.consignee
{
font-weight: bold;
}
.radio
{
max-width: 20em;
margin: 0 auto;
}
.radio > div
{
padding: 0.5em;
border-top: 1px solid #AAA;
}
.radio > div:first-child
{
border-top: none;
}
.thin-calendar
{
width: inherit;
max-width: 24em;
margin: 0 auto;
box-shadow: 0 0.1em 0.3em #ccc;
}
.thin-calendar tr > th
{
color: white;
}
.htk-assistant button
{
float: right;
}

Some files were not shown because too many files have changed in this diff Show More