mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2025-02-18 12:54:27 +01:00
use PlansList component in embedded form
This commit is contained in:
parent
003dd4ce78
commit
57a370bf56
@ -99,7 +99,7 @@ const PlansList: React.FC<PlansListProps> = ({ onError, onPlanSelection, onLogin
|
||||
* Filter the plans to display, depending on the connected/selected user
|
||||
*/
|
||||
const filteredPlans = (): PlansTree => {
|
||||
if (!customer) return plans;
|
||||
if (_.isEmpty(customer)) return plans;
|
||||
|
||||
return new Map([[customer.group_id, plans.get(customer.group_id)]]);
|
||||
}
|
||||
|
@ -452,17 +452,11 @@ Application.Controllers.controller('ReserveMachineController', ['$scope', '$stat
|
||||
// the application global settings
|
||||
$scope.settings = settingsPromise;
|
||||
|
||||
// list of plans, classified by group
|
||||
$scope.groups = groupsPromise;
|
||||
// all plans, used in <cart>
|
||||
$scope.plans = plansPromise;
|
||||
$scope.plansClassifiedByGroup = [];
|
||||
for (let group of Array.from(groupsPromise)) {
|
||||
const groupObj = { id: group.id, name: group.name, plans: [] };
|
||||
for (let plan of Array.from(plansPromise)) {
|
||||
if (plan.group_id === group.id) { groupObj.plans.push(plan); }
|
||||
}
|
||||
$scope.plansClassifiedByGroup.push(groupObj);
|
||||
}
|
||||
|
||||
// all groups, used in <cart>
|
||||
$scope.groups = groupsPromise;
|
||||
|
||||
// the user to deal with, ie. the current user for non-admins
|
||||
$scope.ctrl =
|
||||
|
@ -329,17 +329,11 @@ Application.Controllers.controller('ReserveSpaceController', ['$scope', '$stateP
|
||||
$scope.ctrl =
|
||||
{ member: {} };
|
||||
|
||||
// list of plans, classified by group
|
||||
$scope.plansClassifiedByGroup = [];
|
||||
$scope.groups = groupsPromise;
|
||||
// all plans, used in <cart>
|
||||
$scope.plans = plansPromise;
|
||||
for (let group of Array.from(groupsPromise)) {
|
||||
const groupObj = { id: group.id, name: group.name, plans: [] };
|
||||
for (let plan of Array.from(plansPromise)) {
|
||||
if (plan.group_id === group.id) { groupObj.plans.push(plan); }
|
||||
}
|
||||
$scope.plansClassifiedByGroup.push(groupObj);
|
||||
}
|
||||
|
||||
// all groups, used in <cart>
|
||||
$scope.groups = groupsPromise;
|
||||
|
||||
// mapping of fullCalendar events.
|
||||
$scope.events = {
|
||||
|
@ -110,17 +110,11 @@ Application.Controllers.controller('ReserveTrainingController', ['$scope', '$sta
|
||||
$scope.ctrl =
|
||||
{ member: {} };
|
||||
|
||||
// list of plans, classified by group
|
||||
$scope.groups = groupsPromise;
|
||||
// all plans, used in <cart>
|
||||
$scope.plans = plansPromise;
|
||||
$scope.plansClassifiedByGroup = [];
|
||||
for (let group of Array.from(groupsPromise)) {
|
||||
const groupObj = { id: group.id, name: group.name, plans: [] };
|
||||
for (let plan of Array.from(plansPromise)) {
|
||||
if (plan.group_id === group.id) { groupObj.plans.push(plan); }
|
||||
}
|
||||
$scope.plansClassifiedByGroup.push(groupObj);
|
||||
}
|
||||
|
||||
// all groups, used in <cart>
|
||||
$scope.groups = groupsPromise;
|
||||
|
||||
// mapping of fullCalendar events.
|
||||
$scope.events = {
|
||||
|
@ -1,35 +1,20 @@
|
||||
<div class="row m-t m-b padder list-of-plans" ng-repeat="plansGroup in plansClassifiedByGroup" ng-if="ctrl.member.group_id == plansGroup.id || !ctrl.member" ng-show="plansAreShown">
|
||||
<div class="col-md-12 text-center">
|
||||
<h2 class="text-u-c group-title">{{ plansGroup.name }}</h2>
|
||||
</div>
|
||||
<div ng-show="plansAreShown">
|
||||
|
||||
<div class="row row-centered padder">
|
||||
<plans-list customer="ctrl.member"
|
||||
subscribed-plan-id="ctrl.member.subscribed_plan.id"
|
||||
on-error="onError"
|
||||
on-plan-selection="selectPlan"
|
||||
operator="currentUser">
|
||||
</plans-list>
|
||||
|
||||
<div class="plans-per-group">
|
||||
|
||||
<plan-card ng-repeat="(key, plan) in plansGroup.plans.filter(filterDisabledPlans) | orderBy:'-ui_weight'"
|
||||
plan="plan"
|
||||
user-id="ctrl.member.id"
|
||||
subscribed-plan-id="ctrl.member.subscribed_plan.id"
|
||||
operator="currentUser"
|
||||
on-select-plan="selectPlan"
|
||||
is-selected="isSelected(plan)">
|
||||
</plan-card>
|
||||
<a class="m-t-lg btn btn-small btn-default pull-right" href="#" ng-click="doNotSubscribePlan($event)">{{ 'app.shared.plan_subscribe.do_not_subscribe' | translate }} <i class="fa fa-long-arrow-right"></i></a>
|
||||
|
||||
<div class="row row-centered m-t-lg">
|
||||
<div class="col-xs-12 col-md-12 col-lg-10 col-centered no-gutter">
|
||||
<uib-alert type="warning m">
|
||||
<i class="fa fa-lightbulb-o"></i>
|
||||
<span ng-bind-html="subscriptionExplicationsAlert"></span>
|
||||
</uib-alert>
|
||||
</div>
|
||||
|
||||
<a class="m-t-lg btn btn-small btn-default pull-right" href="#" ng-click="doNotSubscribePlan($event)">{{ 'app.shared.plan_subscribe.do_not_subscribe' | translate }} <i class="fa fa-long-arrow-right"></i></a>
|
||||
|
||||
<div class="row row-centered m-t-lg">
|
||||
<div class="col-xs-12 col-md-12 col-lg-10 col-centered no-gutter">
|
||||
<uib-alert type="warning m">
|
||||
<i class="fa fa-lightbulb-o"></i>
|
||||
<span ng-bind-html="subscriptionExplicationsAlert"></span>
|
||||
</uib-alert>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
@ -28,7 +28,8 @@
|
||||
on-error="onError"
|
||||
on-plan-selection="selectPlan"
|
||||
on-login-request="userLogin"
|
||||
operator="currentUser" />
|
||||
operator="currentUser" >
|
||||
</plans-list>
|
||||
|
||||
</div>
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user