On avance sur LivraisonParSecteurs
This commit is contained in:
@@ -76,6 +76,11 @@ class BackOfficeController extends BaseAdminController
|
||||
$error_msg = $this->createStandardFormValidationErrorMessage($ex);
|
||||
}
|
||||
|
||||
return $this->render("deliveryarea-edit", Array($error_msg));
|
||||
/* Laurent : à faire --> changer le redirect si "Enregistrer et fermer" */
|
||||
|
||||
if ($this->getRequest()->get('save_mode') == 'stay')
|
||||
return $this->render("deliveryarea-edit");
|
||||
|
||||
return $this->render("deliveryarea-list");
|
||||
}
|
||||
}
|
||||
@@ -19,14 +19,18 @@ class CitiesForm extends BaseForm
|
||||
{
|
||||
$this->formBuilder
|
||||
->add(
|
||||
'price',
|
||||
'number',
|
||||
"area_id",
|
||||
"integer",
|
||||
[
|
||||
"required" => true,
|
||||
"constraints" => [new Constraints\NotBlank()]
|
||||
])
|
||||
->add(
|
||||
'zipcode',
|
||||
'integer',
|
||||
[
|
||||
'constraints' => [new Constraints\NotBlank()],
|
||||
'required' => true,
|
||||
'label' => $this->translator->trans('Delivery price', [], LivraisonParSecteurs::DOMAIN_NAME),
|
||||
'label_attr' => ['for' => 'price'],
|
||||
'attr' => array()
|
||||
'label' => $this->translator->trans('Delivery price', [], LivraisonParSecteurs::DOMAIN_NAME)
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -35,6 +39,6 @@ class CitiesForm extends BaseForm
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
return "lps-area-cities.update";
|
||||
return "lps-area-cities-update";
|
||||
}
|
||||
}
|
||||
|
||||
65
local/modules/LivraisonParSecteurs/Loop/AreaCitiesLoop.php
Normal file
65
local/modules/LivraisonParSecteurs/Loop/AreaCitiesLoop.php
Normal file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
namespace LivraisonParSecteurs\Loop;
|
||||
|
||||
use LivraisonParSecteurs\Model\LpsAreaCityQuery;
|
||||
use Thelia\Core\Template\Element\BaseLoop;
|
||||
use Thelia\Core\Template\Element\LoopResult;
|
||||
use Thelia\Core\Template\Element\LoopResultRow;
|
||||
use Thelia\Core\Template\Element\PropelSearchLoopInterface;
|
||||
use Thelia\Core\Template\Loop\Argument\Argument;
|
||||
use Thelia\Core\Template\Loop\Argument\ArgumentCollection;
|
||||
|
||||
/**
|
||||
* Class AreaCitiesLoop
|
||||
* @package LivraisonParSecteurs\Loop
|
||||
*/
|
||||
class AreaCitiesLoop extends BaseLoop implements PropelSearchLoopInterface
|
||||
{
|
||||
public $countable = false;
|
||||
public $timestampable = false;
|
||||
public $versionable = false;
|
||||
|
||||
/**
|
||||
* @param LoopResult $loopResult
|
||||
*
|
||||
* @return LoopResult
|
||||
*/
|
||||
public function parseResults(LoopResult $loopResult)
|
||||
{
|
||||
foreach ($loopResult->getResultDataCollection() as $lps_area_cities) {
|
||||
|
||||
$loopResultRow = new LoopResultRow($lps_area_cities);
|
||||
$loopResultRow
|
||||
->set("ID", $lps_area_cities->getId())
|
||||
->set("ZIPCODE", $lps_area_cities->getZipcode())
|
||||
;
|
||||
$loopResult->addRow($loopResultRow);
|
||||
}
|
||||
return $loopResult;
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritdoc
|
||||
*/
|
||||
protected function getArgDefinitions()
|
||||
{
|
||||
return new ArgumentCollection(
|
||||
Argument::createIntListTypeArgument('area_id')
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritdoc
|
||||
*/
|
||||
public function buildModelCriteria()
|
||||
{
|
||||
$query = LpsAreaCityQuery::create();
|
||||
if (null != $id = $this->getAreaId()) {
|
||||
$query->filterByIdArea($id);
|
||||
}
|
||||
|
||||
return $query->orderByZipcode();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -35,12 +35,12 @@
|
||||
{/loop}
|
||||
{loop name="auth-schedule-tab" type="auth" role="ADMIN" resource="admin.schedule" access="VIEW" module="LivraisonParSecteurs"}
|
||||
<div class="tab-pane fade" id="schedule">
|
||||
{* {include file="includes/area-schedule.html"} *}
|
||||
{include file="includes/area-schedule.html"}
|
||||
</div>
|
||||
{/loop}
|
||||
{loop name="auth-cities-tab" type="auth" role="ADMIN" resource="admin.cities" access="VIEW" module="LivraisonParSecteurs"}
|
||||
<div class="tab-pane fade" id="cities">
|
||||
{* {include file="includes/area-cities.html"} *}
|
||||
{include file="includes/area-cities.html"}
|
||||
</div>
|
||||
{/loop}
|
||||
</div>
|
||||
|
||||
@@ -1,88 +1,37 @@
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption class="clearfix">
|
||||
{loop name="auth-create" type="auth" role="ADMIN" resource="admin.livraisonparsecteurs.schedules" access="CREATE" module="LivraisonParSecteurs"}
|
||||
<div class="pull-right">
|
||||
<a class="btn btn-default btn-primary dealer-schedules-default"
|
||||
title="{intl l='Create a new Default Schedules' d='livraisonparsecteurs'}"
|
||||
data-target="#dealer-schedules-create" data-toggle="modal">
|
||||
<i class="glyphicon glyphicon-plus-sign"></i>
|
||||
</a>
|
||||
</div>
|
||||
{/loop}
|
||||
<h4>{intl l="Default Schedules" d="livraisonparsecteurs"}</h4>
|
||||
</caption>
|
||||
{form name='lps-area-cities-update'}
|
||||
<div class="form-container">
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
{intl l="Day" d="livraisonparsecteurs"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Begin" d="livraisonparsecteurs"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="End" d="livraisonparsecteurs"}
|
||||
</th>
|
||||
<th>
|
||||
{intl l="Actions" d="livraisonparsecteurs"}
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
{if $form_error}
|
||||
<div class="alert alert-danger">{$form_error_message}</div>
|
||||
{/if}
|
||||
|
||||
<tbody>
|
||||
{loop name="dealer-schedules-defaults" type="dealer_schedules" dealer_id=$smarty.get.dealer_id default_period=true order="day,begin"}
|
||||
<tr>
|
||||
<td>
|
||||
{$DAY_LABEL}
|
||||
</td>
|
||||
<td>
|
||||
{format_date date=$BEGIN format="H:i"}
|
||||
</td>
|
||||
<td>
|
||||
{format_date date=$END format="H:i"}
|
||||
</td>
|
||||
{* Actions *}
|
||||
<td>
|
||||
<div class="btn-group">
|
||||
{loop name="auth-edit" type="auth" role="ADMIN" resource="admin.dealer.schedules" access="UPDATE" module="Dealer"}
|
||||
<a class="btn btn-default btn-xs dealer-schedules-update-default"
|
||||
title="{intl l='Modify this Schedule' d='livraisonparsecteurs'}"
|
||||
data-target="#dealer-schedules-update" data-toggle="modal" data-id="{$ID}"
|
||||
data-day="{$DAY}" data-begin="{format_date date=$BEGIN format="H:i"}"
|
||||
data-end="{format_date date=$END format="H:i"}">
|
||||
<i class="glyphicon glyphicon-edit"></i>
|
||||
</a>
|
||||
{/loop}
|
||||
{loop name="auth-edit" type="auth" role="ADMIN" resource="admin.dealer.schedules" access="CREATE" module="Dealer"}
|
||||
<a class="btn btn-default btn-xs dealer-schedules-clone"
|
||||
title="{intl l='Clone this Schedule' d='livraisonparsecteurs'}"
|
||||
data-target="#dealer-schedules-clone" data-toggle="modal" data-id="{$ID}">
|
||||
<i class="glyphicon glyphicon-plus-sign"></i>
|
||||
</a>
|
||||
{/loop}
|
||||
{loop name="auth-delete" type="auth" role="ADMIN" resource="admin.dealer.schedules" access="DELETE" module="Dealer"}
|
||||
<a class="btn btn-default btn-xs dealer-schedules-delete"
|
||||
title="{intl l='Delete this Schedule' d='livraisonparsecteurs'}"
|
||||
data-target="#dealer-schedules-delete" data-toggle="modal" data-id="{$ID}">
|
||||
<i class="glyphicon glyphicon-trash"></i>
|
||||
</a>
|
||||
{/loop}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{/loop}
|
||||
{elseloop rel="dealer-schedules-defaults"}
|
||||
<tr>
|
||||
<td colspan="1000">
|
||||
<div class="alert alert-info">
|
||||
{intl l="There is no Default Schedules" d="livraisonparsecteurs"}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{/elseloop}
|
||||
</tbody>
|
||||
</table>
|
||||
{loop name="area" type="lps_area" id="$area_id"}
|
||||
<form action="{url path='/admin/module/LivraisonParSecteurs/edit' area_id={$area_id}}" method="POST" class="clearfix" {form_enctype form=$form}>
|
||||
{form_hidden_fields form=$form}
|
||||
|
||||
{include
|
||||
file = "includes/inner-form-toolbar.html"
|
||||
hide_flags = true
|
||||
hide_submit_buttons = false
|
||||
page_url = "{url path='/admin/module/LivraisonParSecteurs/edit' area_id=$area_id}"
|
||||
close_url = "{url path='/admin/module/LivraisonParSecteurs'}"
|
||||
current_tab = "general"
|
||||
}
|
||||
|
||||
{form_field form=$form field="area_id"}
|
||||
<input type="hidden" name="{$name}" value="{$area_id}"/>
|
||||
{/form_field}
|
||||
|
||||
<table>
|
||||
<thead></thead>
|
||||
<tbody>
|
||||
{loop name="cities" type="lps_area_cities" area_id="$area_id"}
|
||||
<tr><td>{$ZIPCODE}</td></tr>
|
||||
{/loop}
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</form>
|
||||
{/loop}
|
||||
</div>
|
||||
</div>
|
||||
{/form}
|
||||
|
||||
@@ -1,20 +1,17 @@
|
||||
<link rel="stylesheet"
|
||||
href="{stylesheet file='assets/js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.css'}">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<table class="table table-striped table-condensed">
|
||||
<caption class="clearfix">
|
||||
{loop name="auth-create" type="auth" role="ADMIN" resource="admin.livraisonparsecteurs.schedules" access="CREATE" module="LivraisonParSecteurs"}
|
||||
{loop name="auth-create" type="auth" role="ADMIN" resource="admin.dealer.schedules" access="CREATE" module="Dealer"}
|
||||
<div class="pull-right">
|
||||
<a class="btn btn-default btn-primary dealer-schedules-default"
|
||||
title="{intl l='Create a new Default Schedules' d='livraisonparsecteurs'}"
|
||||
title="{intl l='Create a new Default Schedules' d='dealer.bo.default'}"
|
||||
data-target="#dealer-schedules-create" data-toggle="modal">
|
||||
<i class="glyphicon glyphicon-plus-sign"></i>
|
||||
</a>
|
||||
</div>
|
||||
{/loop}
|
||||
<h4>{intl l="Default Schedules" d="livraisonparsecteurs"}</h4>
|
||||
<h4>{intl l="Delivery days" d="livraisonparsecteurs"}</h4>
|
||||
</caption>
|
||||
|
||||
<thead>
|
||||
@@ -35,7 +32,7 @@
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
{loop name="dealer-schedules-defaults" type="dealer_schedules" dealer_id=$smarty.get.dealer_id default_period=true order="day,begin"}
|
||||
{loop name="dealer-schedules-defaults" type="lap_area_schedule" area_id=$area_id}
|
||||
<tr>
|
||||
<td>
|
||||
{$DAY_LABEL}
|
||||
@@ -51,7 +48,7 @@
|
||||
<div class="btn-group">
|
||||
{loop name="auth-edit" type="auth" role="ADMIN" resource="admin.dealer.schedules" access="UPDATE" module="Dealer"}
|
||||
<a class="btn btn-default btn-xs dealer-schedules-update-default"
|
||||
title="{intl l='Modify this Schedule' d='livraisonparsecteurs'}"
|
||||
title="{intl l='Modify this Schedule' d='dealer.bo.default'}"
|
||||
data-target="#dealer-schedules-update" data-toggle="modal" data-id="{$ID}"
|
||||
data-day="{$DAY}" data-begin="{format_date date=$BEGIN format="H:i"}"
|
||||
data-end="{format_date date=$END format="H:i"}">
|
||||
@@ -60,14 +57,14 @@
|
||||
{/loop}
|
||||
{loop name="auth-edit" type="auth" role="ADMIN" resource="admin.dealer.schedules" access="CREATE" module="Dealer"}
|
||||
<a class="btn btn-default btn-xs dealer-schedules-clone"
|
||||
title="{intl l='Clone this Schedule' d='livraisonparsecteurs'}"
|
||||
title="{intl l='Clone this Schedule' d='dealer.bo.default'}"
|
||||
data-target="#dealer-schedules-clone" data-toggle="modal" data-id="{$ID}">
|
||||
<i class="glyphicon glyphicon-plus-sign"></i>
|
||||
</a>
|
||||
{/loop}
|
||||
{loop name="auth-delete" type="auth" role="ADMIN" resource="admin.dealer.schedules" access="DELETE" module="Dealer"}
|
||||
<a class="btn btn-default btn-xs dealer-schedules-delete"
|
||||
title="{intl l='Delete this Schedule' d='livraisonparsecteurs'}"
|
||||
title="{intl l='Delete this Schedule' d='dealer.bo.default'}"
|
||||
data-target="#dealer-schedules-delete" data-toggle="modal" data-id="{$ID}">
|
||||
<i class="glyphicon glyphicon-trash"></i>
|
||||
</a>
|
||||
@@ -86,6 +83,8 @@
|
||||
</tr>
|
||||
{/elseloop}
|
||||
</tbody>
|
||||
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user