forked from verdnatura/hedera-web
Backup
This commit is contained in:
parent
5640951c80
commit
a5854290e9
|
@ -3,3 +3,4 @@ rules:
|
||||||
no-undef: 0
|
no-undef: 0
|
||||||
no-redeclare: 0
|
no-redeclare: 0
|
||||||
no-mixed-spaces-and-tabs: 0
|
no-mixed-spaces-and-tabs: 0
|
||||||
|
no-console: 0
|
|
@ -28,7 +28,7 @@
|
||||||
tip="_AddAddress"
|
tip="_AddAddress"
|
||||||
on-click="onAddAddressClick"/>
|
on-click="onAddAddressClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="address-list">
|
<div id="main" class="address-list">
|
||||||
<div class="card list">
|
<div class="card list">
|
||||||
<htk-radio-group
|
<htk-radio-group
|
||||||
id="default-address"
|
id="default-address"
|
||||||
|
|
|
@ -37,7 +37,7 @@
|
||||||
tip="_Return"
|
tip="_Return"
|
||||||
on-click="onReturnClick"/>
|
on-click="onReturnClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="address">
|
<div id="main" class="address">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div>
|
<div>
|
||||||
<label><t>Name</t></label>
|
<label><t>Name</t></label>
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
tip="_Change password"
|
tip="_Change password"
|
||||||
on-click="onPassChangeClick"/>
|
on-click="onPassChangeClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="conf">
|
<div id="main" class="conf">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div>
|
<div>
|
||||||
<label for="user-name"><t>Username</t></label>
|
<label for="user-name"><t>Username</t></label>
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>AccessLog</t>
|
<t>AccessLog</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="access-log">
|
<div id="main" class="access-log">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<p>
|
<p>
|
||||||
<htk-text form="user-form" column="Id_Cliente"/>
|
<htk-text form="user-form" column="Id_Cliente"/>
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
<t>connections</t>
|
<t>connections</t>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="connections">
|
<div id="main" class="connections">
|
||||||
<div class="card list">
|
<div class="card list">
|
||||||
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
||||||
<db-model property="model" id="sessions" on-status-changed="onModelStatusChange">
|
<db-model property="model" id="sessions" on-status-changed="onModelStatusChange">
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
tip="_Preview"
|
tip="_Preview"
|
||||||
on-click="onPreviewClick"/>
|
on-click="onPreviewClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="items">
|
<div id="main" class="items">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div>
|
<div>
|
||||||
<label><t>Store</t></label>
|
<label><t>Store</t></label>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>ControlPanel</t>
|
<t>ControlPanel</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="cpanel">
|
<div id="main" class="cpanel">
|
||||||
<div class="card list">
|
<div class="card list">
|
||||||
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
||||||
<db-model property="model">
|
<db-model property="model">
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>Photos</t>
|
<t>Photos</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="photos">
|
<div id="main" class="photos">
|
||||||
<form
|
<form
|
||||||
id="html-form"
|
id="html-form"
|
||||||
enctype="multipart/form-data">
|
enctype="multipart/form-data">
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
tip="_Clean"
|
tip="_Clean"
|
||||||
on-click="_onCleanClick"/>
|
on-click="_onCleanClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="queries">
|
<div id="main" class="queries">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div>
|
<div>
|
||||||
<label><t>SQL query</t></label>
|
<label><t>SQL query</t></label>
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
tip="_Preview"
|
tip="_Preview"
|
||||||
on-click="onPreviewClick"/>
|
on-click="onPreviewClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="shelves">
|
<div id="main" class="shelves">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div>
|
<div>
|
||||||
<label><t>Configuration</t></label>
|
<label><t>Configuration</t></label>
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
<htk-search-entry
|
<htk-search-entry
|
||||||
param="user-name"/>
|
param="user-name"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="users">
|
<div id="main" class="users">
|
||||||
<div class="card list">
|
<div class="card list">
|
||||||
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
||||||
<db-model property="model">
|
<db-model property="model">
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
tip="_Connections"
|
tip="_Connections"
|
||||||
on-click="onSessionsClick"/>
|
on-click="onSessionsClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="visits">
|
<div id="main" class="visits">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div>
|
<div>
|
||||||
<label><t>From</t></label>
|
<label><t>From</t></label>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>ListByAgency</t>
|
<t>ListByAgency</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="packages">
|
<div id="main" class="packages">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<htk-grid>
|
<htk-grid>
|
||||||
<db-model property="model">
|
<db-model property="model">
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>ByProvince</t>
|
<t>ByProvince</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="provinces">
|
<div id="main" class="provinces">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<htk-grid>
|
<htk-grid>
|
||||||
<db-model property="model">
|
<db-model property="model">
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>About</t>
|
<t>About</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="about">
|
<div id="main" class="about">
|
||||||
<div class="cols">
|
<div class="cols">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<h1>
|
<h1>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>IWantCustomer</t>
|
<t>IWantCustomer</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="contact">
|
<div id="main" class="contact">
|
||||||
<form
|
<form
|
||||||
id="contact-form">
|
id="contact-form">
|
||||||
<input type="hidden" name="srv" value="json:misc/contact"/>
|
<input type="hidden" name="srv" value="json:misc/contact"/>
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
tip="_Start order"
|
tip="_Start order"
|
||||||
on-click="onStartOrderClick"/>
|
on-click="onStartOrderClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="home">
|
<div id="main" class="home">
|
||||||
<div class="column mansonry" id="news-column">
|
<div class="column mansonry" id="news-column">
|
||||||
<htk-repeater form-id="new">
|
<htk-repeater form-id="new">
|
||||||
<db-model property="model">
|
<db-model property="model">
|
||||||
|
|
|
@ -2,5 +2,5 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>Location</t>
|
<t>Location</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="location"/>
|
<div id="main" class="location"/>
|
||||||
</vn>
|
</vn>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>Training</t>
|
<t>Training</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="training">
|
<div id="main" class="training">
|
||||||
<div class="column mansonry" id="news-column">
|
<div class="column mansonry" id="news-column">
|
||||||
<htk-repeater form-id="new">
|
<htk-repeater form-id="new">
|
||||||
<db-model property="model">
|
<db-model property="model">
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>AboutCompany</t>
|
<t>AboutCompany</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="why">
|
<div id="main" class="why">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="body">
|
<div class="body">
|
||||||
<ul>
|
<ul>
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
tip="_ConfigureOrder"
|
tip="_ConfigureOrder"
|
||||||
on-click="onConfigureClick"/>
|
on-click="onConfigureClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="basket">
|
<div id="main" class="basket">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div class="head">
|
<div class="head">
|
||||||
<p>
|
<p>
|
||||||
|
|
|
@ -139,7 +139,7 @@
|
||||||
<htk-search-entry
|
<htk-search-entry
|
||||||
param="search"/>
|
param="search"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="catalog">
|
<div id="main" class="catalog">
|
||||||
<div id="main" class="main">
|
<div id="main" class="main">
|
||||||
<htk-repeater
|
<htk-repeater
|
||||||
id="grid-view"
|
id="grid-view"
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
tip="_Cancel"
|
tip="_Cancel"
|
||||||
on-click="onCancelClick"/>
|
on-click="onCancelClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="checkout">
|
<div id="main" class="checkout">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<htk-assistant
|
<htk-assistant
|
||||||
id="assistant"
|
id="assistant"
|
||||||
|
|
|
@ -32,7 +32,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>Order summary</t>
|
<t>Order summary</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="confirm">
|
<div id="main" class="confirm">
|
||||||
<div class="summary form card">
|
<div class="summary form card">
|
||||||
<div>
|
<div>
|
||||||
<div class="delivery">
|
<div class="delivery">
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<h1 id="title">
|
<h1 id="title">
|
||||||
<t>Invoices</t>
|
<t>Invoices</t>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="form" class="invoices">
|
<div id="main" class="invoices">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div>
|
<div>
|
||||||
<htk-grid show-header="false">
|
<htk-grid show-header="false">
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
|
|
||||||
,"LastOrders": "Últimes comandes"
|
,"LastOrders": "Últimes comandes"
|
||||||
|
|
||||||
|
,"Show orders from": "Mostra comandes desde"
|
||||||
,"Balance:": "Saldo:"
|
,"Balance:": "Saldo:"
|
||||||
,"PaymentInfo": "La quantitat mostrada és el teu saldo pendent (negatiu) o favorable a dia d'avui, no té en compte comandes del futur. Perquè la teva comanda sigui enviat, aquesta quantitat ha de ser igual o més gran que 0. Si vols fer un lliurament a compte, prem el botó de pagament, esborra la quantitat suggerida e introdueix la quantitat que vulguis."
|
,"PaymentInfo": "La quantitat mostrada és el teu saldo pendent (negatiu) o favorable a dia d'avui, no té en compte comandes del futur. Perquè la teva comanda sigui enviat, aquesta quantitat ha de ser igual o més gran que 0. Si vols fer un lliurament a compte, prem el botó de pagament, esborra la quantitat suggerida e introdueix la quantitat que vulguis."
|
||||||
,"MakePayment": "Realitzar pagament"
|
,"MakePayment": "Realitzar pagament"
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
|
|
||||||
,"LastOrders": "Last orders"
|
,"LastOrders": "Last orders"
|
||||||
|
|
||||||
|
,"Show orders from": "Show orders from"
|
||||||
,"Balance:": "Balance:"
|
,"Balance:": "Balance:"
|
||||||
,"PaymentInfo": "The amount shown is your slope (negative) or favorable balance today, it disregards future orders. For get your order shipped, this amount must be equal to or greater than 0. If you want to make a down payment, click the payment button, delete the suggested amount and enter the amount you want."
|
,"PaymentInfo": "The amount shown is your slope (negative) or favorable balance today, it disregards future orders. For get your order shipped, this amount must be equal to or greater than 0. If you want to make a down payment, click the payment button, delete the suggested amount and enter the amount you want."
|
||||||
,"MakePayment": "Make payment"
|
,"MakePayment": "Make payment"
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
|
|
||||||
,"LastOrders": "Últimos pedidos"
|
,"LastOrders": "Últimos pedidos"
|
||||||
|
|
||||||
|
,"Show orders from": "Mostrar pedidos desde"
|
||||||
,"Balance:": "Saldo:"
|
,"Balance:": "Saldo:"
|
||||||
,"PaymentInfo": "La cantidad mostrada es tu saldo pendiente (negativa) o favorable a día de hoy, no tiene en cuenta pedidos del futuro. Para que tu pedido sea enviado, esta cantidad debe ser igual o mayor que 0. Si quieres realizar una entrega a cuenta, pulsa el botón de pago, borra la cantidad sugerida e introduce la cantidad que desees."
|
,"PaymentInfo": "La cantidad mostrada es tu saldo pendiente (negativa) o favorable a día de hoy, no tiene en cuenta pedidos del futuro. Para que tu pedido sea enviado, esta cantidad debe ser igual o mayor que 0. Si quieres realizar una entrega a cuenta, pulsa el botón de pago, borra la cantidad sugerida e introduce la cantidad que desees."
|
||||||
,"MakePayment": "Realizar pago"
|
,"MakePayment": "Realizar pago"
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
|
|
||||||
,"LastOrders": "Les dernières commandes"
|
,"LastOrders": "Les dernières commandes"
|
||||||
|
|
||||||
|
,"Show orders from": "Afficher les commandes de"
|
||||||
,"Balance:": "Balance:"
|
,"Balance:": "Balance:"
|
||||||
,"PaymentInfo": "Le montant indiqué est votre pente (négative) ou balance favorable aujourd'hui, ne tient pas compte pour les commandes futures. Obtenir votre commande est expédiée, ce montant doit être égal ou supérieur à 0. Si vous voulez faire un versement, le montant suggéré effacé et entrez le montant que vous souhaitez."
|
,"PaymentInfo": "Le montant indiqué est votre pente (négative) ou balance favorable aujourd'hui, ne tient pas compte pour les commandes futures. Obtenir votre commande est expédiée, ce montant doit être égal ou supérieur à 0. Si vous voulez faire un versement, le montant suggéré effacé et entrez le montant que vous souhaitez."
|
||||||
,"MakePayment": "Effectuer un paiement"
|
,"MakePayment": "Effectuer un paiement"
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
|
|
||||||
,"LastOrders": "Last orders"
|
,"LastOrders": "Last orders"
|
||||||
|
|
||||||
|
,"Show orders from": "-Аас харуулах захиалга"
|
||||||
,"Balance:": "Balance:"
|
,"Balance:": "Balance:"
|
||||||
,"PaymentInfo": "Үзүүлсэн хэмжээ цаашид захиалга эзэлж биш, таны налуу (сөрөг), эсвэл тааламжтай тэнцвэр нь өнөөдөр юм. Хэрэв та дүн арилгаж гэж хэлж байсан нь доош нь төлбөр хийж, өөрийн хүссэн хэмжээгээр орж хүсэж байгаа бол таны захиалга ирдэг бол авах, энэ хэмжээ тэнцүү буюу 0-ээс их байх ёстой."
|
,"PaymentInfo": "Үзүүлсэн хэмжээ цаашид захиалга эзэлж биш, таны налуу (сөрөг), эсвэл тааламжтай тэнцвэр нь өнөөдөр юм. Хэрэв та дүн арилгаж гэж хэлж байсан нь доош нь төлбөр хийж, өөрийн хүссэн хэмжээгээр орж хүсэж байгаа бол таны захиалга ирдэг бол авах, энэ хэмжээ тэнцүү буюу 0-ээс их байх ёстой."
|
||||||
,"MakePayment": "Make payment"
|
,"MakePayment": "Make payment"
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
|
|
||||||
,"LastOrders": "Últimos pedidos"
|
,"LastOrders": "Últimos pedidos"
|
||||||
|
|
||||||
|
,"Show orders from": "Mostrar ordens de"
|
||||||
,"Balance:": "Saldo:"
|
,"Balance:": "Saldo:"
|
||||||
,"PaymentInfo": "A quantidade mostrada é seu saldo pendente (negativo) ou favorável a dia de hoje, não se vincula a pedidos futuros. Para que seu pedido seja enviado, esta quantidade deve ser igual ou superior a 0. Se queres realizar um depósito à conta, clique no botão de pagamento, apague a quantidade sugerida e introduza a quantidade que deseje."
|
,"PaymentInfo": "A quantidade mostrada é seu saldo pendente (negativo) ou favorável a dia de hoje, não se vincula a pedidos futuros. Para que seu pedido seja enviado, esta quantidade deve ser igual ou superior a 0. Se queres realizar um depósito à conta, clique no botão de pagamento, apague a quantidade sugerida e introduza a quantidade que deseje."
|
||||||
,"MakePayment": "Realizar pagamento"
|
,"MakePayment": "Realizar pagamento"
|
||||||
|
|
|
@ -7,6 +7,10 @@ Hedera.Orders = new Class
|
||||||
{
|
{
|
||||||
this.tpv = new Hedera.Tpv ({conn: this.conn});
|
this.tpv = new Hedera.Tpv ({conn: this.conn});
|
||||||
this.tpv.check (this._onTpvCheck.bind (this));
|
this.tpv.check (this._onTpvCheck.bind (this));
|
||||||
|
|
||||||
|
var from = new Date ();
|
||||||
|
from.setDate (from.getDate () - 25);
|
||||||
|
this.$('from').value = from;
|
||||||
}
|
}
|
||||||
|
|
||||||
,_onTpvCheck: function (tpv, tpvOrder, tpvStatus)
|
,_onTpvCheck: function (tpv, tpvOrder, tpvStatus)
|
||||||
|
|
|
@ -1,4 +1,9 @@
|
||||||
|
|
||||||
|
.orders .card
|
||||||
|
{
|
||||||
|
max-width: 28em;
|
||||||
|
}
|
||||||
|
|
||||||
/* Balance */
|
/* Balance */
|
||||||
|
|
||||||
.balance
|
.balance
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
<vn>
|
<vn>
|
||||||
<vn-group>
|
<vn-group>
|
||||||
|
<vn-param id="from"/>
|
||||||
|
<vn-hash-param type="Date" key="from" param="from"/>
|
||||||
<db-form id="debt">
|
<db-form id="debt">
|
||||||
<db-model property="model">
|
<db-model property="model">
|
||||||
<custom>
|
<custom>
|
||||||
|
@ -37,13 +39,24 @@
|
||||||
alt="Info"/>
|
alt="Info"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="orders">
|
<div id="main" class="orders">
|
||||||
|
<div class="card form">
|
||||||
|
<div>
|
||||||
|
<label><t>Show orders from</t></label>
|
||||||
|
<htk-date-chooser param="from"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="card list">
|
<div class="card list">
|
||||||
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
||||||
<db-model property="model" id="tickets">
|
<db-model property="model" id="tickets">
|
||||||
<custom>
|
<custom>
|
||||||
CALL clientTicketList ()
|
CALL clientTicketList (#from, NULL)
|
||||||
</custom>
|
</custom>
|
||||||
|
<sql-batch property="batch">
|
||||||
|
<custom>
|
||||||
|
<item name="from" param="from"/>
|
||||||
|
</custom>
|
||||||
|
</sql-batch>
|
||||||
</db-model>
|
</db-model>
|
||||||
<custom>
|
<custom>
|
||||||
<a id="link" class="list-row" title="_SeeOrder">
|
<a id="link" class="list-row" title="_SeeOrder">
|
||||||
|
|
|
@ -15,9 +15,8 @@ Hedera.Ticket = new Class
|
||||||
|
|
||||||
,onPrintClick: function ()
|
,onPrintClick: function ()
|
||||||
{
|
{
|
||||||
var batch = new Sql.Batch ();
|
var params = {ticket: this.$('ticket-id').value};
|
||||||
batch.addValue ('ticket', this.$('ticket-id').value);
|
this.gui.openReport ('delivery-note', params);
|
||||||
this.gui.openReport ('delivery-note', batch);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
,subtotalRenderer: function (column, form)
|
,subtotalRenderer: function (column, form)
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
tip="_Delivery note"
|
tip="_Delivery note"
|
||||||
on-click="onPrintClick"/>
|
on-click="onPrintClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="ticket">
|
<div id="main" class="ticket">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div class="head">
|
<div class="head">
|
||||||
<div>
|
<div>
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
tip="_Return"
|
tip="_Return"
|
||||||
on-click="onReturnClick"/>
|
on-click="onReturnClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="new">
|
<div id="main" class="new">
|
||||||
<div class="card form">
|
<div class="card form">
|
||||||
<div>
|
<div>
|
||||||
<label><t>Title</t></label>
|
<label><t>Title</t></label>
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
tip="_AddNew"
|
tip="_AddNew"
|
||||||
on-click="onAddClick"/>
|
on-click="onAddClick"/>
|
||||||
</div>
|
</div>
|
||||||
<div id="form" class="news">
|
<div id="main" class="news">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
<htk-repeater form-id="iter" renderer="repeaterFunc">
|
||||||
<db-model property="model" id="news-model" updatable="true">
|
<db-model property="model" id="news-model" updatable="true">
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"Report": "Informe"
|
||||||
|
,"Preview": "Visualització prèvia"
|
||||||
|
,"Print": "Imprimir"
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"Report": "Report"
|
||||||
|
,"Preview": "Preview"
|
||||||
|
,"Print": "Print"
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"Report": "Informe"
|
||||||
|
,"Preview": "Vista preliminar"
|
||||||
|
,"Print": "Imprimir"
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"Report": "Rapport"
|
||||||
|
,"Preview": "Avant-première"
|
||||||
|
,"Print": "Imprimer"
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"Report": "тайлан"
|
||||||
|
,"Preview": "Урьдчилан харах"
|
||||||
|
,"Print": "хэвлэх"
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"Report": "Relatório"
|
||||||
|
,"Preview": "Vsualização"
|
||||||
|
,"Print": "Impressão"
|
||||||
|
}
|
|
@ -0,0 +1,43 @@
|
||||||
|
|
||||||
|
Hedera.Preview = new Class
|
||||||
|
({
|
||||||
|
Extends: Hedera.Form
|
||||||
|
|
||||||
|
,activate: function ()
|
||||||
|
{
|
||||||
|
var reportName = Vn.Hash.get ('report');
|
||||||
|
|
||||||
|
if (!reportName)
|
||||||
|
{
|
||||||
|
Htk.Toast.showError (_('Report name not set'));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.gui.loaderPush ();
|
||||||
|
|
||||||
|
var module = new Hedera.Module ('reports', reportName);
|
||||||
|
module.load (this._onReportLoad.bind (this));
|
||||||
|
}
|
||||||
|
|
||||||
|
,_onReportLoad: function (module)
|
||||||
|
{
|
||||||
|
this.gui.loaderPop ();
|
||||||
|
|
||||||
|
if (module.error)
|
||||||
|
{
|
||||||
|
Htk.Toast.showError (_('Error loading report'));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var batch = new Sql.Batch ();
|
||||||
|
batch.addValues (Vn.Hash._hashMap);
|
||||||
|
|
||||||
|
var report = new module.klass (module, this.gui);
|
||||||
|
report.open (batch, this.node);
|
||||||
|
}
|
||||||
|
|
||||||
|
,onPrintClick: function ()
|
||||||
|
{
|
||||||
|
this.doc.defaultView.print ();
|
||||||
|
}
|
||||||
|
});
|
|
@ -0,0 +1,12 @@
|
||||||
|
<vn>
|
||||||
|
<h1 id="title">
|
||||||
|
<t>Preview</t>
|
||||||
|
</h1>
|
||||||
|
<div id="actions">
|
||||||
|
<htk-bar-button
|
||||||
|
icon="print"
|
||||||
|
tip="_Print"
|
||||||
|
on-click="onPrintClick"/>
|
||||||
|
</div>
|
||||||
|
<div id="main" class="report"/>
|
||||||
|
</vn>
|
|
@ -1,136 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
||||||
|
|
||||||
<svg
|
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
id="svg7384"
|
|
||||||
sodipodi:docname="print.svg"
|
|
||||||
version="1.1"
|
|
||||||
inkscape:version="0.48.5 r10040"
|
|
||||||
height="16"
|
|
||||||
width="16">
|
|
||||||
<metadata
|
|
||||||
id="metadata90">
|
|
||||||
<rdf:RDF>
|
|
||||||
<cc:Work
|
|
||||||
rdf:about="">
|
|
||||||
<dc:format>image/svg+xml</dc:format>
|
|
||||||
<dc:type
|
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
||||||
<dc:title>Gnome Symbolic Icon Theme</dc:title>
|
|
||||||
</cc:Work>
|
|
||||||
</rdf:RDF>
|
|
||||||
</metadata>
|
|
||||||
<sodipodi:namedview
|
|
||||||
inkscape:cy="72.4546"
|
|
||||||
pagecolor="#555753"
|
|
||||||
borderopacity="1"
|
|
||||||
showborder="false"
|
|
||||||
inkscape:bbox-paths="false"
|
|
||||||
guidetolerance="10"
|
|
||||||
inkscape:window-width="1310"
|
|
||||||
showguides="true"
|
|
||||||
inkscape:snap-bbox="true"
|
|
||||||
inkscape:pageshadow="2"
|
|
||||||
inkscape:guide-bbox="true"
|
|
||||||
inkscape:snap-nodes="true"
|
|
||||||
bordercolor="#666666"
|
|
||||||
objecttolerance="10"
|
|
||||||
id="namedview88"
|
|
||||||
showgrid="false"
|
|
||||||
inkscape:window-maximized="0"
|
|
||||||
inkscape:window-x="54"
|
|
||||||
inkscape:window-y="27"
|
|
||||||
gridtolerance="10"
|
|
||||||
inkscape:window-height="701"
|
|
||||||
inkscape:current-layer="layer10"
|
|
||||||
inkscape:zoom="2.0390625"
|
|
||||||
inkscape:cx="-25.548654"
|
|
||||||
inkscape:pageopacity="1">
|
|
||||||
<inkscape:grid
|
|
||||||
spacingx="1px"
|
|
||||||
spacingy="1px"
|
|
||||||
id="grid4866"
|
|
||||||
empspacing="2"
|
|
||||||
enabled="true"
|
|
||||||
type="xygrid"
|
|
||||||
snapvisiblegridlinesonly="true"
|
|
||||||
visible="true" />
|
|
||||||
</sodipodi:namedview>
|
|
||||||
<title
|
|
||||||
id="title9167">Gnome Symbolic Icon Theme</title>
|
|
||||||
<defs
|
|
||||||
id="defs7386" />
|
|
||||||
<g
|
|
||||||
inkscape:label="status"
|
|
||||||
transform="translate(-142,-338)"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer9"
|
|
||||||
style="display:inline" />
|
|
||||||
<g
|
|
||||||
inkscape:label="devices"
|
|
||||||
transform="translate(-142,-338)"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer10">
|
|
||||||
<g
|
|
||||||
inkscape:label="accessories-calculator"
|
|
||||||
transform="translate(94,-60)"
|
|
||||||
id="g10819"
|
|
||||||
style="fill:#333333;fill-opacity:1" />
|
|
||||||
<g
|
|
||||||
inkscape:label="Layer 1"
|
|
||||||
transform="translate(142,338)"
|
|
||||||
id="layer1-6"
|
|
||||||
style="fill:#333333;fill-opacity:1">
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
d="M 2,4 C 1.5,4 1,4.5 1,5 l 0,4 c 0,0.5 0.5,1 1,1 l 1,0 0,-2 10,0 0,2 1,0 c 0.5,0 1,-0.5 1,-1 L 15,5 C 15,4.5 14.5,4 14,4 L 2,4 z"
|
|
||||||
id="path3520"
|
|
||||||
sodipodi:nodetypes="ccccccccccccc"
|
|
||||||
style="fill:#333333;fill-opacity:1;stroke:none" />
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
d="M 4,1 4,3 12,3 12,1 4,1 z"
|
|
||||||
id="path4804"
|
|
||||||
sodipodi:nodetypes="ccccc"
|
|
||||||
style="fill:#333333;fill-opacity:1;stroke:none" />
|
|
||||||
<path
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
d="M 4,9.0000001 4,14 l 8,0 0,-5 -8,10e-8 z M 5,10 l 6,0 0,1 -6,0 0,-1 z m 0,2 5,0 0,1 -5,0 0,-1 z"
|
|
||||||
id="path4806"
|
|
||||||
sodipodi:nodetypes="ccccccccccccccc"
|
|
||||||
style="fill:#333333;fill-opacity:1;stroke:none" />
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
<g
|
|
||||||
inkscape:label="apps"
|
|
||||||
transform="translate(-142,-338)"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer11" />
|
|
||||||
<g
|
|
||||||
inkscape:label="actions"
|
|
||||||
transform="translate(-142,-338)"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer12" />
|
|
||||||
<g
|
|
||||||
inkscape:label="places"
|
|
||||||
transform="translate(-142,-338)"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer13" />
|
|
||||||
<g
|
|
||||||
inkscape:label="mimetypes"
|
|
||||||
transform="translate(-142,-338)"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer14" />
|
|
||||||
<g
|
|
||||||
inkscape:label="emblems"
|
|
||||||
transform="translate(-142,-338)"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer15" />
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 4.0 KiB |
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
module.exports = new Class
|
module.exports = new Class
|
||||||
({
|
({
|
||||||
Extends: Vn.Object
|
Extends: Htk.Component
|
||||||
|
|
||||||
,isOpen: false
|
,isOpen: false
|
||||||
,uiLoaded: false
|
,uiLoaded: false
|
||||||
|
@ -14,20 +14,6 @@ module.exports = new Class
|
||||||
this.formInfo = formInfo;
|
this.formInfo = formInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Gets an object from the builder associated to this form.
|
|
||||||
*
|
|
||||||
* @param {string} objectId The object identifier
|
|
||||||
* @return {Object} The object, or %null if not found
|
|
||||||
*/
|
|
||||||
,$: function (objectId)
|
|
||||||
{
|
|
||||||
if (this.builder)
|
|
||||||
return this.builder.getById (objectId);
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
,loadUi: function ()
|
,loadUi: function ()
|
||||||
{
|
{
|
||||||
if (!this.isOpen)
|
if (!this.isOpen)
|
||||||
|
@ -38,9 +24,7 @@ module.exports = new Class
|
||||||
builder.add ('conn', this.conn);
|
builder.add ('conn', this.conn);
|
||||||
builder.loadXml ('forms/'+ this.formInfo.path +'/ui.xml');
|
builder.loadXml ('forms/'+ this.formInfo.path +'/ui.xml');
|
||||||
|
|
||||||
var res = this.builder = builder.load ();
|
var res = this.builderResultInit (builder);
|
||||||
this.node = res.$('form');
|
|
||||||
res.link ();
|
|
||||||
|
|
||||||
var models = res.getByTagName ('db-model');
|
var models = res.getByTagName ('db-model');
|
||||||
|
|
||||||
|
|
|
@ -24,7 +24,6 @@ module.exports = new Class
|
||||||
|
|
||||||
,forms: {}
|
,forms: {}
|
||||||
,activeForm: null
|
,activeForm: null
|
||||||
,activeCss: null
|
|
||||||
,requestedForm: null
|
,requestedForm: null
|
||||||
,menuShown: false
|
,menuShown: false
|
||||||
,menuOptions: {}
|
,menuOptions: {}
|
||||||
|
@ -398,9 +397,6 @@ module.exports = new Class
|
||||||
this.choosedOption = newChoosedOption;
|
this.choosedOption = newChoosedOption;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.activeCss = 'forms/'+ formPath +'/style.css';
|
|
||||||
Vn.includeCss (this.activeCss);
|
|
||||||
|
|
||||||
var formInfo = this.forms[formPath];
|
var formInfo = this.forms[formPath];
|
||||||
|
|
||||||
if (!formInfo)
|
if (!formInfo)
|
||||||
|
@ -409,7 +405,7 @@ module.exports = new Class
|
||||||
this.forms[formPath] = formInfo;
|
this.forms[formPath] = formInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
formInfo.addCallback (callback);
|
formInfo.load (callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
,_onFormLoad: function (formInfo)
|
,_onFormLoad: function (formInfo)
|
||||||
|
@ -459,17 +455,12 @@ module.exports = new Class
|
||||||
{
|
{
|
||||||
if (this.activeForm)
|
if (this.activeForm)
|
||||||
{
|
{
|
||||||
|
this.activeForm.formInfo.unload ();
|
||||||
this.activeForm.close ();
|
this.activeForm.close ();
|
||||||
this.activeForm.unref ();
|
this.activeForm.unref ();
|
||||||
this.activeForm = null;
|
this.activeForm = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.activeCss)
|
|
||||||
{
|
|
||||||
Vn.excludeCss (this.activeCss);
|
|
||||||
this.activeCss = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.choosedOption)
|
if (this.choosedOption)
|
||||||
{
|
{
|
||||||
Vn.Node.removeClass (this.choosedOption, 'selected');
|
Vn.Node.removeClass (this.choosedOption, 'selected');
|
||||||
|
@ -477,28 +468,13 @@ module.exports = new Class
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//++++++++++++++++++++++++++++++++++++++++++++++++++++++ Reports
|
,openReport: function (reportName, params)
|
||||||
|
|
||||||
,openReport: function (reportName, batch)
|
|
||||||
{
|
{
|
||||||
this.loaderPush ();
|
var hashParams = {
|
||||||
|
form: 'preview',
|
||||||
var module = new Module ('reports', reportName);
|
report: reportName
|
||||||
module.addCallback (this._onReportLoad.bind (this, batch));
|
};
|
||||||
}
|
Vn.Hash.set (Object.assign (hashParams, params));
|
||||||
|
|
||||||
,_onReportLoad: function (batch, module)
|
|
||||||
{
|
|
||||||
this.loaderPop ();
|
|
||||||
|
|
||||||
if (module.error)
|
|
||||||
{
|
|
||||||
Htk.Toast.showError (_('Error loading report'));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var report = new module.klass (module, this);
|
|
||||||
report.open (batch);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//++++++++++++++++++++++++++++++++++++++++++++++++++++++ Supplant
|
//++++++++++++++++++++++++++++++++++++++++++++++++++++++ Supplant
|
||||||
|
|
|
@ -30,13 +30,31 @@ module.exports = new Class
|
||||||
this.moduleName = moduleName;
|
this.moduleName = moduleName;
|
||||||
}
|
}
|
||||||
|
|
||||||
,addCallback: function (callback)
|
,getCssPath: function ()
|
||||||
{
|
{
|
||||||
if (!this.ready)
|
return this.basePath +'/'+ this.path +'/style.css';
|
||||||
this.callbacks.push (callback);
|
}
|
||||||
else
|
|
||||||
|
,includeCss: function ()
|
||||||
|
{
|
||||||
|
Vn.includeCss (this.getCssPath ());
|
||||||
|
}
|
||||||
|
|
||||||
|
,unload: function ()
|
||||||
|
{
|
||||||
|
Vn.excludeCss (this.getCssPath ());
|
||||||
|
}
|
||||||
|
|
||||||
|
,load: function (callback)
|
||||||
|
{
|
||||||
|
if (this.ready)
|
||||||
|
{
|
||||||
|
this.includeCss ();
|
||||||
callback (this);
|
callback (this);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
this.callbacks.push (callback);
|
||||||
|
}
|
||||||
|
|
||||||
,onLocaleReady: function (success)
|
,onLocaleReady: function (success)
|
||||||
{
|
{
|
||||||
|
@ -78,6 +96,7 @@ module.exports = new Class
|
||||||
|
|
||||||
var callbacks = this.callbacks;
|
var callbacks = this.callbacks;
|
||||||
this.callbacks = null;
|
this.callbacks = null;
|
||||||
|
this.includeCss ();
|
||||||
|
|
||||||
for (var i = 0; i < callbacks.length; i++)
|
for (var i = 0; i < callbacks.length; i++)
|
||||||
callbacks[i] (this);
|
callbacks[i] (this);
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
module.exports = new Class
|
module.exports = new Class
|
||||||
({
|
({
|
||||||
Extends: Vn.Object
|
Extends: Htk.Component
|
||||||
|
|
||||||
,initialize: function (moduleInfo, gui)
|
,initialize: function (moduleInfo, gui)
|
||||||
{
|
{
|
||||||
|
@ -11,23 +11,10 @@ module.exports = new Class
|
||||||
this.parent (null);
|
this.parent (null);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
,open: function (batch, body)
|
||||||
* Gets an object from the builder associated to this report.
|
|
||||||
*
|
|
||||||
* @param {string} objectId The object identifier
|
|
||||||
* @return {Object} The object, or %null if not found
|
|
||||||
*/
|
|
||||||
,$: function (objectId)
|
|
||||||
{
|
|
||||||
if (this.builderResult)
|
|
||||||
return this.builderResult.getById (objectId);
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
,open: function (batch)
|
|
||||||
{
|
{
|
||||||
this.batch = batch;
|
this.batch = batch;
|
||||||
|
this.body = body;
|
||||||
this.createWindow ();
|
this.createWindow ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,53 +23,25 @@ module.exports = new Class
|
||||||
this.window.print ();
|
this.window.print ();
|
||||||
}
|
}
|
||||||
|
|
||||||
,includeCss: function (path)
|
|
||||||
{
|
|
||||||
var basePath = location.protocol +'//'+ location.host;
|
|
||||||
basePath += location.port ? ':'+ location.port : '';
|
|
||||||
basePath += location.pathname.substring (0,
|
|
||||||
location.pathname.lastIndexOf ('/'));
|
|
||||||
|
|
||||||
var link = this.doc.createElement ('link');
|
|
||||||
link.rel = 'stylesheet';
|
|
||||||
link.type = 'text/css';
|
|
||||||
link.href = basePath +'/'+ path + Vn.getVersion ();
|
|
||||||
|
|
||||||
var head = this.doc.getElementsByTagName ('head')[0];
|
|
||||||
head.appendChild (link);
|
|
||||||
}
|
|
||||||
|
|
||||||
,createWindow: function ()
|
,createWindow: function ()
|
||||||
{
|
{
|
||||||
var reportWindow = window.open (
|
var iframe = this.iframe = this.createElement ('iframe');
|
||||||
'js/hedera/report.html', '_blank',
|
iframe.src = 'js/hedera/report.html';
|
||||||
'height=650, width=950, resizable=yes, fullscreen=no,'+
|
iframe.style.display = 'none';
|
||||||
'titlebar=no, menubar=no, toolbar=no, location=no, scrollbars=yes'
|
document.body.appendChild (iframe);
|
||||||
);
|
|
||||||
|
|
||||||
if (!reportWindow)
|
var reportWindow = iframe.contentWindow;
|
||||||
{
|
|
||||||
Htk.Toast.showError (
|
|
||||||
_('Please unlock popups and try again'));
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
reportWindow.addEventListener ('load',
|
reportWindow.addEventListener ('load',
|
||||||
this._onWindowLoad.bind (this));
|
this._onWindowLoad.bind (this));
|
||||||
this.window = reportWindow;
|
this.window = reportWindow;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
,_onWindowLoad: function ()
|
,_onWindowLoad: function ()
|
||||||
{
|
{
|
||||||
this.doc = this.window.document
|
this.doc = this.window.document
|
||||||
|
|
||||||
this.includeCss ('reports/'+ this.info.path +'/style.css');
|
|
||||||
|
|
||||||
var printButton = this.doc.getElementById ('print');
|
|
||||||
printButton.addEventListener ('click', this.print.bind (this));
|
|
||||||
Vn.Node.setText (printButton, _('Print'));
|
|
||||||
|
|
||||||
this.onWindowCreate ();
|
this.onWindowCreate ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -94,9 +53,7 @@ module.exports = new Class
|
||||||
builder.add ('conn', this.conn);
|
builder.add ('conn', this.conn);
|
||||||
builder.loadXml ('reports/'+ this.info.path +'/ui.xml');
|
builder.loadXml ('reports/'+ this.info.path +'/ui.xml');
|
||||||
|
|
||||||
var res = this.builderResult = builder.load ();
|
var res = this.builderResultInit (builder);
|
||||||
res.link ();
|
this.body.appendChild (res.$('report'));
|
||||||
|
|
||||||
this.doc.body.appendChild (res.$('report'));
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -28,8 +28,15 @@ module.exports = new Class
|
||||||
var res = this.builder = builder.load ();
|
var res = this.builder = builder.load ();
|
||||||
this._node = res.$('main');
|
this._node = res.$('main');
|
||||||
res.link ();
|
res.link ();
|
||||||
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets an object from the builder associated to this component.
|
||||||
|
*
|
||||||
|
* @param {string} objectId The object identifier
|
||||||
|
* @return {Object} The object, or %null if not found
|
||||||
|
*/
|
||||||
,$: function (id)
|
,$: function (id)
|
||||||
{
|
{
|
||||||
if (this.builder)
|
if (this.builder)
|
||||||
|
|
|
@ -90,7 +90,7 @@ module.exports = new Class
|
||||||
return token;
|
return token;
|
||||||
}
|
}
|
||||||
|
|
||||||
,render: function (batch)
|
,render: function ()
|
||||||
{
|
{
|
||||||
var v = this._value;
|
var v = this._value;
|
||||||
|
|
||||||
|
@ -105,8 +105,8 @@ module.exports = new Class
|
||||||
case 'object':
|
case 'object':
|
||||||
if (v instanceof Date)
|
if (v instanceof Date)
|
||||||
return Vn.Date.strftime (v, '\'%Y-%m-%d\'');
|
return Vn.Date.strftime (v, '\'%Y-%m-%d\'');
|
||||||
default:
|
}
|
||||||
|
|
||||||
return 'NULL';
|
return 'NULL';
|
||||||
}
|
}
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
|
|
||||||
var Object = require ('./object');
|
var Object = require ('./object');
|
||||||
|
var Type = require ('./type');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a object from a XML specification.
|
* Creates a object from a XML specification.
|
||||||
|
@ -400,6 +401,9 @@ module.exports = new Class
|
||||||
var method = this._getMethod (value);
|
var method = this._getMethod (value);
|
||||||
newValue = method ? method.bind (this.signalData) : null;
|
newValue = method ? method.bind (this.signalData) : null;
|
||||||
break;
|
break;
|
||||||
|
case Type:
|
||||||
|
newValue = window[value];
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
if (propInfo.enumType)
|
if (propInfo.enumType)
|
||||||
newValue = propInfo.enumType[value];
|
newValue = propInfo.enumType[value];
|
||||||
|
@ -521,7 +525,7 @@ module.exports = new Class
|
||||||
for (var i = 1; i < arguments.length; i++)
|
for (var i = 1; i < arguments.length; i++)
|
||||||
logArgs.push (arguments[i]);
|
logArgs.push (arguments[i]);
|
||||||
|
|
||||||
console.warn.apply (null, logArgs);
|
console.warn.apply (console, logArgs);
|
||||||
}
|
}
|
||||||
|
|
||||||
,_addLink: function (context, prop, objectId)
|
,_addLink: function (context, prop, objectId)
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
/**
|
||||||
|
* Base type for ennumerations.
|
||||||
|
*/
|
||||||
|
module.exports = function () {};
|
|
@ -2,6 +2,8 @@
|
||||||
var Object = require ('./object');
|
var Object = require ('./object');
|
||||||
var Param = require ('./param');
|
var Param = require ('./param');
|
||||||
var Hash = require ('./hash');
|
var Hash = require ('./hash');
|
||||||
|
var Type = require ('./type');
|
||||||
|
var VnDate = require ('./date');
|
||||||
|
|
||||||
module.exports = new Class
|
module.exports = new Class
|
||||||
({
|
({
|
||||||
|
@ -50,7 +52,7 @@ module.exports = new Class
|
||||||
},
|
},
|
||||||
type:
|
type:
|
||||||
{
|
{
|
||||||
type: Object
|
type: Type
|
||||||
,set: function (x)
|
,set: function (x)
|
||||||
{
|
{
|
||||||
this._type = x;
|
this._type = x;
|
||||||
|
@ -77,26 +79,47 @@ module.exports = new Class
|
||||||
this._onHashChange ();
|
this._onHashChange ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
,parseHashValue: function (v, type)
|
||||||
|
{
|
||||||
|
if (v === '')
|
||||||
|
return null;
|
||||||
|
|
||||||
|
if (type && v !== undefined && v !== null)
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case Boolean:
|
||||||
|
return (/^(true|1)$/i).test (v);
|
||||||
|
case Number:
|
||||||
|
return 0 + new Number (v);
|
||||||
|
case Date:
|
||||||
|
return new Date(v);
|
||||||
|
}
|
||||||
|
|
||||||
|
return v;
|
||||||
|
}
|
||||||
|
|
||||||
|
,renderHashValue: function (v)
|
||||||
|
{
|
||||||
|
switch (typeof v)
|
||||||
|
{
|
||||||
|
case 'number':
|
||||||
|
return v;
|
||||||
|
case 'boolean':
|
||||||
|
return (v) ? 'true' : 'false';
|
||||||
|
case 'object':
|
||||||
|
if (v instanceof Date)
|
||||||
|
return VnDate.strftime (v, '%Y-%m-%d');
|
||||||
|
}
|
||||||
|
|
||||||
|
return v;
|
||||||
|
}
|
||||||
|
|
||||||
,_onHashChange: function ()
|
,_onHashChange: function ()
|
||||||
{
|
{
|
||||||
if (this._hashLock || !this._key || !this._listener)
|
if (this._hashLock || !this._key || !this._listener)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
var newValue = Hash.get (this._key);
|
var newValue = this.parseHashValue (Hash.get (this._key), this._type);
|
||||||
|
|
||||||
if (newValue === '')
|
|
||||||
newValue = null;
|
|
||||||
|
|
||||||
if (this._type && newValue !== undefined && newValue !== null)
|
|
||||||
switch (this._type)
|
|
||||||
{
|
|
||||||
case Boolean:
|
|
||||||
newValue = (/^(true|1)$/i).test (newValue);
|
|
||||||
break;
|
|
||||||
case Number:
|
|
||||||
newValue = 0 + new Number (newValue);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
this._hashLock = true;
|
this._hashLock = true;
|
||||||
this._setValue (newValue, true);
|
this._setValue (newValue, true);
|
||||||
|
@ -115,7 +138,7 @@ module.exports = new Class
|
||||||
this._hashLock = true;
|
this._hashLock = true;
|
||||||
|
|
||||||
var map = {};
|
var map = {};
|
||||||
map[this._key] = newValue;
|
map[this._key] = this.renderHashValue(newValue);
|
||||||
Hash.add (map);
|
Hash.add (map);
|
||||||
|
|
||||||
this._hashLock = false;
|
this._hashLock = false;
|
||||||
|
|
|
@ -126,7 +126,7 @@ module.exports =
|
||||||
var kvPair = kvPairs[i].split ('=', 2);
|
var kvPair = kvPairs[i].split ('=', 2);
|
||||||
|
|
||||||
if (kvPair[0])
|
if (kvPair[0])
|
||||||
newMap[kvPair[0]] = kvPair[1];
|
newMap[kvPair[0]] = decodeURIComponent(kvPair[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
this._hashMap = newMap;
|
this._hashMap = newMap;
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
/**
|
||||||
|
* Type that references another type.
|
||||||
|
*/
|
||||||
|
module.exports = function () {};
|
|
@ -10,7 +10,7 @@ module.exports =
|
||||||
{
|
{
|
||||||
if (a === b)
|
if (a === b)
|
||||||
return true;
|
return true;
|
||||||
if (typeof a === typeof b && a instanceof Date)
|
if (a instanceof Date && b instanceof Date)
|
||||||
return a.getTime () === b.getTime ();
|
return a.getTime () === b.getTime ();
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -3,7 +3,8 @@ require ('mootools');
|
||||||
|
|
||||||
Vn = module.exports = {
|
Vn = module.exports = {
|
||||||
Locale : require ('./locale')
|
Locale : require ('./locale')
|
||||||
,Enum : function () {}
|
,Enum : require ('./enum')
|
||||||
|
,Type : require ('./type')
|
||||||
,Object : require ('./object')
|
,Object : require ('./object')
|
||||||
,Browser : require ('./browser')
|
,Browser : require ('./browser')
|
||||||
,Cookie : require ('./cookie')
|
,Cookie : require ('./cookie')
|
||||||
|
|
Loading…
Reference in New Issue