Fix hide reception cart

- add property user_cart_on
- add property product_sale_default_focus
- add property ticket_create-price_editable
- add discount product/ticket enabled
This commit is contained in:
2016-02-28 15:48:30 +01:00
parent b476febb10
commit 2e3a8d53ca
18 changed files with 175 additions and 143 deletions

View File

@@ -95,7 +95,7 @@ class ProductController extends Controller {
$accounts = Account::read ();
$discounts = Discount::read ();
$discounts = Discount::readProductDiscounts();
$user = User::findOne ( Yii::$app->user->id );

View File

@@ -104,7 +104,7 @@ class TicketController extends FrontendController
$model = new TicketCreate();
$discounts = Discount::read();
$discounts = Discount::readTicketDiscounts();
$ticketTypes = TicketType::read(null, null);

View File

@@ -20,7 +20,7 @@ use common\models\Discount;
$types = TicketType::findAll(['status' => TicketType::STATUS_ACTIVE ,'installment_enabled' => '1']);
$types = HtmlHelper::mkTicketTypeOptions($types);
$discounts = Discount::read();
$discounts = Discount::readTicketDiscounts();
$discounts = ['' => ''] + HtmlHelper::mkDiscountOptions($discounts);
?>

View File

@@ -3,6 +3,7 @@ use yii\helpers\Html;
use yii\bootstrap\ActiveForm;
use yii\helpers\ArrayHelper;
use common\models\Transfer;
use common\components\Helper;
/* @var $this yii\web\View */
/* @var $model frontend\models\ProductSaleForm */
@@ -110,7 +111,9 @@ $discountOptions = mkOptions( ArrayHelper::map($discounts, 'id_discount', 'name'
<?php echo Html::a(Yii::t("frontend/product","Sell"),null,['class' => 'btn btn-danger btn-block', 'id' => 'btn_sell'] );?>
</div>
<div class='col-md-4'>
<?php if ( Helper::isUserCartOn()){ ?>
<?php echo Html::a(Yii::t("frontend/product","To cart"),null,['class' => 'btn btn-success btn-block', 'id' => 'btn_sell_append'] );?>
<?php }?>
</div>
<div class='col-md-4'>
<?php

View File

@@ -7,6 +7,7 @@ use frontend\components\ReceptionWidget;
use yii\bootstrap\ActiveForm;
use yii\helpers\Url;
use yii\helpers\ArrayHelper;
use common\components\Helper;
/* @var $this yii\web\View */
/* @var $form yii\bootstrap\ActiveForm */
@@ -30,6 +31,9 @@ if ( isset($model->card) ){
$options['discounts'] = Discount::modelsToArray($discounts);
$options['id_account'] = Account::readDefault();
$options['product_sale_default_focus'] = Helper::getProductSaleDefaultFocus();
$options['user_cart_on'] = Helper::isUserCartOn();
$this->registerJs ( 'new ProductSell( '. json_encode($options).');' );
@@ -97,7 +101,9 @@ $this->params['breadcrumbs'][] = Yii::t('frontend/product', 'Sale');
<?php if ( $receptionForm->isCardWithCustomer() ){ ?>
<?php echo $this->render('_customer_cart' , ['model' => $model]) ?>
<?php }?>
<?php if ( Helper::isUserCartOn()) {?>
<?php echo $this->render('_user_cart' ) ?>
<?php }?>
</div>
</div>

View File

@@ -6,6 +6,7 @@ use frontend\components\HtmlHelper;
use kartik\widgets\DatePicker;
use common\models\Account;
use common\models\Transfer;
use common\components\Helper;
/* @var $this yii\web\View */
/* @var $model common\models\Ticket */
@@ -65,7 +66,15 @@ use common\models\Transfer;
<?= $form->field($model, 'max_usage_count')->input('number') ?>
<?= $form->field($model, 'price_brutto')->input('number') ?>
<?php
if ( Helper::isTicketCreatePriceEditable()){
echo $form->field($model, 'price_brutto')->input('number' );
}else{
echo $form->field($model, 'price_brutto')->input('number' ,['readonly' => true] );
}
?>
<?= $form->field($model, 'comment')->textarea(['maxlength' => true]) ?>
@@ -74,7 +83,12 @@ use common\models\Transfer;
<?php echo Html::a(Yii::t("frontend/ticket","Fizetve"),null,['class' => 'btn btn-danger btn-block', 'id' => 'btn_sell'] );?>
</div>
<div class='col-md-4'>
<?php echo Html::a(Yii::t("frontend/ticket","To cart"),null,['class' => 'btn btn-success btn-block', 'id' => 'btn_add_to_user_cart'] );?>
<?php
if ( Helper::isUserCartOn()){
echo Html::a(Yii::t("frontend/ticket","To cart"),null,['class' => 'btn btn-success btn-block', 'id' => 'btn_add_to_user_cart'] );
}
?>
</div>
<div class='col-md-4'>
<?php

View File

@@ -7,6 +7,7 @@ use frontend\assets\TicketSellAsset;
use common\models\TicketType;
use yii\helpers\Url;
use frontend\components\ReceptionWidget;
use common\components\Helper;
/* @var $this yii\web\View */
@@ -68,7 +69,11 @@ $this->registerJs ( 'new TicketSell( '. json_encode($options).');' );
<?php if ( $receptionForm->isCardWithCustomer() ){ ?>
<?php echo $this->render('_customer_cart' ,['model' => $receptionForm]) ?>
<?php }?>
<?php echo $this->render('_user_cart' ) ?>
<?php
if ( Helper::isUserCartOn() ) {
echo $this->render('_user_cart' ) ;
}
?>
</div>
</div>
</div>

View File

@@ -34,6 +34,12 @@ function ProductSell(o){
url_pay_transaction : '',
value_number: '',
name_number: '',
user_cart_on: true,
//if enter pressed in count field, what to submet: 'paid' or 'add_to_user_cart' action
product_count_enter_action: 'user_cart',
//barcode or autocomplete
product_sale_default_focus: 'barcode',
};
@@ -53,10 +59,7 @@ function ProductSell(o){
createCarts();
addPayoutButtons();
productChanged();
// addDocumentKeypressedListener();
initAutocomplete();
disalbeMousewheelSpinOnNumberInput();
@@ -68,13 +71,6 @@ function ProductSell(o){
});
}
/**
* payout out user or customer cart
* */
function addPayoutButtons(){
// addBehaviourPayoutUserCart();
// addBehaviourPayoutCustomerCart();
}
/**
* display user and customer cart on page load
* */
@@ -111,41 +107,6 @@ function ProductSell(o){
$("#productsaleform-id_discount").change(refreshCalculatedValues);
}
function addDocumentKeypressedListener(){
$( document ).keypress(function( event ) {
var tag = event.target.tagName.toLowerCase();
if ( tag != 'input' && tag != 'textarea') {
resetSequenceIfToMuchTimePassedOrEnterWasPressed(event);
if ( event.which == 13 ) {
app.enterPressed = 1;
$( document ).trigger( "wordtyped", [ { originalEvent: event, 'word': app.seq } ] );
}else {
appendCharToSeq(event);
}
}
});
$( document ).on( "wordtyped", function( event, data ) {
var word;
word = data.word;
if ( word.length > 0){
if ( word.length >= 6 && word.length <= 9 ){
//lookupuser
}else{
$("#filter_text").val(data.word);
_lookupProduct(data.word);
}
}
});
}
function resetSequenceIfToMuchTimePassedOrEnterWasPressed(){
var prevDate, timePassed;
prevDate= app.keyDate;
@@ -181,7 +142,11 @@ function ProductSell(o){
* set the focus for text input #filter_text
* */
function setFocus(){
$("#filter_text").focus();
if ( app.defaults.product_sale_default_focus == 'barcode'){
$("#filter_text").focus();
}else{
$("#product_search").focus();
}
}
@@ -210,7 +175,18 @@ function ProductSell(o){
if ( event.which == 13 ) {
event.preventDefault();
event.stopImmediatePropagation();
submitSellAndAppend();
if ( app.defaults.user_cart_on ){
if ( app.defaults.product_count_enter_action == 'user_cart'){
submitSellAndAppend();
}else{
submitSell();
}
}else{
submitSell();
}
}
});
}
@@ -445,44 +421,6 @@ function ProductSell(o){
$(app.defaults.selector_customer_cart ).transferList( 'option', 'transfers' , app.defaults.customer_cart );
}
function addBehaviourPayoutUserCart( ){
$( app.defaults.selector_btn_pay_user_cart ).on('click',function(){
$.ajax({
url: app.defaults.url_pay_user_cart,
type: 'post',
data: {},
success: function (response) {
if ( response.code == 'success'){
app.defaults.user_cart = response.transfers;
refreshUserCart();
$.notify(app.defaults.message_paid, { 'type' : 'success' });
}
}
}
);
});
}
function addBehaviourPayoutCustomerCart( ){
$( app.defaults.selector_btn_pay_customer_cart ).on('click',function(){
$.ajax({
url: app.defaults.url_pay_customer_card,
type: 'post',
data: {},
success: function (response) {
if ( response.code == 'success'){
app.defaults.customer_cart = response.customer_cart;
refreshCustomerCart();
}
$.notify(response.message, { 'type' : response.code });
},
error: function(){
alert('Hiba történt');
}
}
);
});
}
function createUserCartTable(){
$(app.defaults.selector_user_cart).transferList({

View File

@@ -50,6 +50,8 @@ function TicketSell(o){
url_pay_transaction: '',
discounts : [],
discount: null,
//if user cart module is on or off
user_cart_on: true
};
@@ -61,7 +63,7 @@ function TicketSell(o){
addBehaviourDiscountChangedListener();
useDefaults();
createCarts();
addPayoutButtons();
// addPayoutButtons();
addSellButtons();
// addBehaviourBtnCartPaid();
}
@@ -82,16 +84,19 @@ function TicketSell(o){
/**
* payout out user or customer cart
* */
/*
function addPayoutButtons(){
// addBehaviourPayoutUserCart();
// addBehaviourPayoutCustomerCart();
}
*/
/**
* display user and customer cart on page load
* */
function createCarts(){
createUserCartTable();
if ( app.defaults.user_cart_on ){
createUserCartTable();
}
createCustomerCartTable();
}
@@ -117,7 +122,9 @@ function TicketSell(o){
}
function addSellButtons(){
addBehaviourBtnSellAndAppendToUserCart();
if ( app.defaults.user_cart_on ){
addBehaviourBtnSellAndAppendToUserCart();
}
addBehaviourBtnAddToCustomerCart();
addBehaviourBtnSell();
}
@@ -148,44 +155,6 @@ function TicketSell(o){
$('#btn_sell').on('click',submitSell);
}
function addBehaviourPayoutUserCart( ){
// $( app.defaults.selector_btn_pay_user_cart ).on('click',function(){
//
// $.ajax({
// url: app.defaults.url_pay_user_cart,
// type: 'post',
// data: {},
// success: function (response) {
// if ( response.code == 'success'){
// app.defaults.user_cart = response.transfers;
// refreshUserCart();
// $.notify(app.defaults.message_paid, { 'type' : 'success' });
// }
// }
// }
// );
// });
}
function addBehaviourPayoutCustomerCart( ){
// $( app.defaults.selector_btn_pay_customer_cart ).on('click',function(){
// $.ajax({
// url: app.defaults.url_pay_customer_card,
// type: 'post',
// data: {},
// success: function (response) {
// if ( response.code == 'success'){
// app.defaults.customer_cart = response.customer_cart;
// refreshCustomerCart();
// }
// $.notify(response.message, { 'type' : response.code });
// },
// error: function(){
// alert('Hiba történt');
// }
// }
// );
// });
}
function addBehaviourTypeChangedListener(){