1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2025-01-18 07:52:23 +01:00

Merge branch 'dev' of git.sleede.com:projets/fab-manager into dev

This commit is contained in:
Nicolas Florentin 2023-12-01 16:07:31 +01:00
commit 038c7d8efc
101 changed files with 311 additions and 297 deletions

View File

@ -6,11 +6,14 @@
- fix a bug: avoids crash if invoicing_profile has no address associated to it - fix a bug: avoids crash if invoicing_profile has no address associated to it
- improvement: improves how pay_zen transactions are matched with payment_schedule_items - improvement: improves how pay_zen transactions are matched with payment_schedule_items
- improvement: improves rrule of pay_zen subscriptions - improvement: improves rrule of pay_zen subscriptions
- improvement: better text contrast on customizable colors. Good for accessibility.
- Improvement: set the number of new attempts available in case the payment is rejected to 1 for PayZen
## v6.3.4 2023 November 23 ## v6.3.4 2023 November 23
- fix a bug: wrong amount when pay a reservation with payment schedule - fix a bug: wrong amount when pay a reservation with payment schedule
- fix regresion on PaymentScheduleItemWorker from v6.3.2 - fix a bug: regression on PaymentScheduleItemWorker from v6.3.2
- fix a bug: event.pre_registration_end_date (was set to beginning_of_day instead of end_of_day)
## v6.3.3 2023 November 14 ## v6.3.3 2023 November 14
@ -36,7 +39,7 @@
- Fix a bug: fix all failing tasks of rake task file chain.rake - Fix a bug: fix all failing tasks of rake task file chain.rake
- Fix a bug: file_size_validator.rb was broken since ruby v3, see https://github.com/rails/rails/issues/41270 - Fix a bug: file_size_validator.rb was broken since ruby v3, see https://github.com/rails/rails/issues/41270
- improvement: pre-registration event reservations ilimit places - improvement: pre-registration event reservations limit places
- improvement: add including_deleted_users param for open api users - improvement: add including_deleted_users param for open api users
- decreases sidekiq concurrency from 25 to 5, 25 is too much and consumes memory for nothing - decreases sidekiq concurrency from 25 to 5, 25 is too much and consumes memory for nothing
- do not log Notifications#polling action anymore, by default, can be enable via env variable ENABLE_NOTIFICATIONS_POLLING_LOGGING=true - do not log Notifications#polling action anymore, by default, can be enable via env variable ENABLE_NOTIFICATIONS_POLLING_LOGGING=true
@ -59,7 +62,7 @@
## v6.1.2 2023 October 2 ## v6.1.2 2023 October 2
- Fix a bug: minor pb (exception raised) when bot hit api/projects#search without beeing authenticated - Fix a bug: minor pb (exception raised) when bot hit api/projects#search without being authenticated
- Fix a bug: minor pb (exception raised) when a bot or unauthenticated user hit api/auth_providers actions - Fix a bug: minor pb (exception raised) when a bot or unauthenticated user hit api/auth_providers actions
- Fix a bug: when calling .to_json on an "avoir", there was a bug because order_number delegates on invoice which can be nil, it was causing errors in notifications rendering - Fix a bug: when calling .to_json on an "avoir", there was a bug because order_number delegates on invoice which can be nil, it was causing errors in notifications rendering
- Fix a bug: when getting status of users/subscriptions export - Fix a bug: when getting status of users/subscriptions export
@ -85,9 +88,9 @@
- Cancel payment schedule subscription after update the payment mean - Cancel payment schedule subscription after update the payment mean
- admin can see reservations of a member - admin can see reservations of a member
- Fix a bug: unable to update card for payment schedule - Fix a bug: unable to update card for payment schedule
- Fix a bug: user is_allow_contact is actived by default - Fix a bug: user is_allow_contact is active by default
- Fix a bug: unbale to export projects - Fix a bug: unable to export projects
- Fix a bug: unbale to update card bank of payment schedule - Fix a bug: unable to update card bank of payment schedule
- Feature: family compte for event - Feature: family compte for event
- Feature: pre-registration event - Feature: pre-registration event
- [TODO DEPLOY] `rails db:seed` - [TODO DEPLOY] `rails db:seed`
@ -152,7 +155,7 @@
- Improved projects list filter - Improved projects list filter
- Fix a bug: unable to refresh machine/space/training calender after pay an reservation - Fix a bug: unable to refresh machine/space/training calender after pay an reservation
- Fix a bug: Accouning Line in duplicate - Fix a bug: Accounting Line in duplicate
- Fix a bug: displays "my orders" link only if store module is active - Fix a bug: displays "my orders" link only if store module is active
- [TODO DEPLOY] `rails fablab:setup:build_accounting_lines` - [TODO DEPLOY] `rails fablab:setup:build_accounting_lines`
@ -161,7 +164,7 @@
- Fix a bug: OpenAPI accounting gateway_object_id missing error - Fix a bug: OpenAPI accounting gateway_object_id missing error
- Fix a bug: unable to modify the price of prepaid pack - Fix a bug: unable to modify the price of prepaid pack
- Fix a bug: notification type missing - Fix a bug: notification type missing
- Fix critical bug: Incorrect amount calculation when paying monthly subcription with a wallet for PayZen - Fix critical bug: Incorrect amount calculation when paying monthly subscription with a wallet for PayZen
## v6.0.6 2023 May 4 ## v6.0.6 2023 May 4
@ -252,7 +255,7 @@
- Ability to restrict machine availabilities per plan - Ability to restrict machine availabilities per plan
- Ability to configure a prior period for each reservation type to prevent booking (#440) - Ability to configure a prior period for each reservation type to prevent booking (#440)
- Admins cannot select the date when creating a refund invoice anymore - Admins cannot select the date when creating a refund invoice anymore
- Fix a bug: JS date is initalialized 1 day before in negative timezones (#445) - Fix a bug: JS date is initialized 1 day before in negative timezones (#445)
- Fix a bug: user's profile field gender is now marked as required - Fix a bug: user's profile field gender is now marked as required
- Fix a bug: logical sequence of invoices references is broken, when using the store module or the payments schedules - Fix a bug: logical sequence of invoices references is broken, when using the store module or the payments schedules
- Fix a bug: refund invoices may generate duplicates in invoices references - Fix a bug: refund invoices may generate duplicates in invoices references
@ -288,11 +291,11 @@
- OpenAPI reservation endpoint will return details for the reserved slots - OpenAPI reservation endpoint will return details for the reserved slots
- Display info messages if the user cannot buy prepaid packs - Display info messages if the user cannot buy prepaid packs
- Fix a bug: some OpenAPI endpoints struggle and expire with timeout - Fix a bug: some OpenAPI endpoints struggle and expire with timeout
- Fix a bug: OpenAPI events endpoint documentation does not refect the returned data - Fix a bug: OpenAPI events endpoint documentation does not reflect the returned data
- Fix a bug: members can't change/cancel their reservations - Fix a bug: members can't change/cancel their reservations
- Fix a bug: admin events view should default to the list tab - Fix a bug: admin events view should default to the list tab
- Fix a bug: event creation form should not allow setting multiple times the same price category - Fix a bug: event creation form should not allow setting multiple times the same price category
- Fix a bug: MAX_SIZE env varibles should not be quoted (#438) - Fix a bug: MAX_SIZE env variables should not be quoted (#438)
- Fix a bug: unable to add OIDC scopes without discovery - Fix a bug: unable to add OIDC scopes without discovery
- [BREAKING CHANGE] GET `open_api/v1/events` will necessarily be paginated - [BREAKING CHANGE] GET `open_api/v1/events` will necessarily be paginated
- [BREAKING CHANGE] GET `open_api/v1/invoices` will necessarily be paginated - [BREAKING CHANGE] GET `open_api/v1/invoices` will necessarily be paginated
@ -331,7 +334,7 @@
- Automatically cancel trainings with insufficient attendees - Automatically cancel trainings with insufficient attendees
- Check SCSS syntax before saving home page style - Check SCSS syntax before saving home page style
- Use Time instead of DateTime objects - Use Time instead of DateTime objects
- Fix a bug: missing statististics subtypes - Fix a bug: missing statistics subtypes
- Fix a bug: wrong times in admin/event monitoring - Fix a bug: wrong times in admin/event monitoring
- Fix a bug: daylight saving time is ignored and result in wrong dates and/or times when dealing around the DST day - Fix a bug: daylight saving time is ignored and result in wrong dates and/or times when dealing around the DST day
- Fix a bug: date shift in event creation/update - Fix a bug: date shift in event creation/update
@ -366,7 +369,7 @@
- Fix a bug: invalid duration for machine/spaces reservations in statistics, when using slots of not 1 hour - Fix a bug: invalid duration for machine/spaces reservations in statistics, when using slots of not 1 hour
- Fix a bug: invalid month in date format - Fix a bug: invalid month in date format
- Fix a bug: do not show theme and age-range fields in event form if no options were set - Fix a bug: do not show theme and age-range fields in event form if no options were set
- Fix a bug: do not show catgory select in plan form if no options were set - Fix a bug: do not show category select in plan form if no options were set
- Fix a bug: new setups doesn't log - Fix a bug: new setups doesn't log
- [TODO DEPLOY] `rails db:seed` - [TODO DEPLOY] `rails db:seed`
- [TODO DEPLOY] `rails fablab:es:build_stats` THEN `rails fablab:maintenance:regenerate_statistics[2014,1]` - [TODO DEPLOY] `rails fablab:es:build_stats` THEN `rails fablab:maintenance:regenerate_statistics[2014,1]`
@ -405,7 +408,7 @@
## v5.6.3 2023 January 9 ## v5.6.3 2023 January 9
- Fix a bug: unable to build the docker image (yarn error extracting tar content of undefined failed) - Fix a bug: unable to build the docker image (yarn error extracting tar content of undefined failed)
- Fix a security issue: logged users but non-admins can access to analytics data throught the API - Fix a security issue: logged users but non-admins can access to analytics data through the API
## v5.6.2 2023 January 9 ## v5.6.2 2023 January 9
@ -447,7 +450,7 @@
- OpenAPI endpoint to fetch accounting data - OpenAPI endpoint to fetch accounting data
- Add reservation deadline parameter (#414) - Add reservation deadline parameter (#414)
- Verify current password at server side when changing password - Verify current password at server side when changing password
- Password strengh indicator - Password strength indicator
- Updated OpenAPI documentation - Updated OpenAPI documentation
- Updated OpenID Connect documentation - Updated OpenID Connect documentation
- OpenAPI users endpoint offer ability to filter by created_after - OpenAPI users endpoint offer ability to filter by created_after
@ -455,7 +458,7 @@
- Default accounting codes and labels if not set - Default accounting codes and labels if not set
- Active serving static files from the `/public` folder by default from rails - Active serving static files from the `/public` folder by default from rails
- Display custom error message if the PDF invoice is not found - Display custom error message if the PDF invoice is not found
- Report subsription mismatch with user's group - Report subscription mismatch with user's group
- Added sentry for error reporting - Added sentry for error reporting
- Report details of the due for invoices related to a payment schedule - Report details of the due for invoices related to a payment schedule
- Migrated plan/machine/space/event forms to react - Migrated plan/machine/space/event forms to react

View File

@ -67,11 +67,10 @@ export const FormInput = <TFieldValues extends FieldValues, TInputType>({ id, re
return num; return num;
} }
if (type === 'date') { if (type === 'date') {
const date: Date = new Date(value + 'T00:00:00'); if (Number.isNaN(value) && nullable) {
if (Number.isNaN(date) && nullable) {
return null; return null;
} }
return date; return value;
} }
setCharacterCount(value?.length || 0); setCharacterCount(value?.length || 0);
return value; return value;

View File

@ -204,13 +204,13 @@ const SupportingDocumentsTypesList: React.FC<SupportingDocumentsTypesListProps>
<p>{t('app.admin.settings.account.supporting_documents_types_list.supporting_documents_type_info')}</p> <p>{t('app.admin.settings.account.supporting_documents_types_list.supporting_documents_type_info')}</p>
<FabAlert level="warning"> <FabAlert level="warning">
<HtmlTranslate trKey="app.admin.settings.account.supporting_documents_types_list.no_groups_info" /> <HtmlTranslate trKey="app.admin.settings.account.supporting_documents_types_list.no_groups_info" />
<FabButton onClick={addGroup}>{t('app.admin.settings.account.supporting_documents_types_list.create_groups')}</FabButton> <FabButton onClick={addGroup} className="is-secondary">{t('app.admin.settings.account.supporting_documents_types_list.create_groups')}</FabButton>
</FabAlert> </FabAlert>
</div> </div>
<div className="title"> <div className="title">
<h3>{t('app.admin.settings.account.supporting_documents_types_list.supporting_documents_type_title')}</h3> <h3>{t('app.admin.settings.account.supporting_documents_types_list.supporting_documents_type_title')}</h3>
<FabButton onClick={addType}>{t('app.admin.settings.account.supporting_documents_types_list.add_type')}</FabButton> <FabButton onClick={addType} className="is-secondary">{t('app.admin.settings.account.supporting_documents_types_list.add_type')}</FabButton>
</div> </div>
<SupportingDocumentsTypeModal isOpen={modalIsOpen} <SupportingDocumentsTypeModal isOpen={modalIsOpen}
@ -279,7 +279,7 @@ const SupportingDocumentsTypesList: React.FC<SupportingDocumentsTypesListProps>
<div className="types-list"> <div className="types-list">
<div className="title"> <div className="title">
<h3>{t('app.admin.settings.account.supporting_documents_types_list.supporting_documents_type_title')}</h3> <h3>{t('app.admin.settings.account.supporting_documents_types_list.supporting_documents_type_title')}</h3>
<FabButton onClick={addType}>{t('app.admin.settings.account.supporting_documents_types_list.add_type')}</FabButton> <FabButton onClick={addType} className='is-secondary'>{t('app.admin.settings.account.supporting_documents_types_list.add_type')}</FabButton>
</div> </div>
<SupportingDocumentsTypeModal isOpen={modalIsOpen} <SupportingDocumentsTypeModal isOpen={modalIsOpen}

View File

@ -824,11 +824,12 @@ Application.Controllers.controller('InvoicesController', ['$scope', '$state', 'I
* @param [concat] {boolean} if true, the result will be append to $scope.invoices instead of being affected * @param [concat] {boolean} if true, the result will be append to $scope.invoices instead of being affected
*/ */
const invoiceSearch = function (concat) { const invoiceSearch = function (concat) {
const date = $scope.searchInvoice.date ? $scope.searchInvoice.date.toISOString().slice(0, 10) : null;
Invoice.list({ Invoice.list({
query: { query: {
number: $scope.searchInvoice.reference, number: $scope.searchInvoice.reference,
customer: $scope.searchInvoice.name, customer: $scope.searchInvoice.name,
date: $scope.searchInvoice.date, date,
order_by: $scope.orderInvoice, order_by: $scope.orderInvoice,
page: $scope.page, page: $scope.page,
size: INVOICES_PER_PAGE size: INVOICES_PER_PAGE

View File

@ -15,8 +15,6 @@
outline: 0; outline: 0;
text-transform: uppercase; text-transform: uppercase;
//border: 3px solid $yellow;
//background-color: $yellow;
&:hover { &:hover {
background-color: white; background-color: white;
} }

View File

@ -2,8 +2,8 @@
background-color: $brand-light; background-color: $brand-light;
} }
//.bg-red { background-color: $red; color: white; } .bg-red { background-color: var(--main); color: var(--main-text-color); }
//.bg-red-dark { background-color: $red-dark; } .bg-red-dark { background-color: var(--main-dark); color: var(--main-text-color); }
//.bg-yellow { background-color: $yellow !important; } //.bg-yellow { background-color: $yellow !important; }
.bg-token { .bg-token {
background-color: rgba(230, 208, 137, 0.49); background-color: rgba(230, 208, 137, 0.49);

View File

@ -396,8 +396,13 @@
vertical-align: bottom; vertical-align: bottom;
&.label-icon { &.label-icon {
width: 2.8rem;
height: 2.8rem;
display: inline-flex;
justify-content: center;
align-items: center;
font-size: rem-calc(22); font-size: rem-calc(22);
padding: 4px 9px 1px 10px; color: var(--main-text-color);
} }
} }
} }
@ -702,3 +707,7 @@ input[type=date].form-control {
margin-bottom: 0; margin-bottom: 0;
} }
} }
.medium-editor-anchor-preview a:hover {
color: #ffffff;
}

View File

@ -501,26 +501,15 @@
} }
#nav { #nav {
// border-right: 1px solid $red-dark;
.nav { .nav {
//background-color: $red;
> li { > li {
> a { > a {
padding: 13px 17px; padding: 13px 17px;
font-weight: 600; font-weight: 600;
color: white; color: var(--main-text-color);
&:hover,
&:focus, &.active {
//background-color: $red-light;
color: white;
}
&.active { &.active {
border-left: 3px solid; border-left: 3px solid;
// #870003;
} }
} }
} }

View File

@ -1,9 +1,9 @@
.fab-button { .fab-button {
min-height: 38px; min-height: 38px;
margin-bottom: 0;
padding: 6px 12px; padding: 6px 12px;
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
gap: 0 4px;
border: 1px solid #c9c9c9; border: 1px solid #c9c9c9;
border-radius: 4px; border-radius: 4px;
background-color: #fbfbfb; background-color: #fbfbfb;
@ -35,12 +35,11 @@
} }
&[disabled] { &[disabled],
color: #3a3a3a;
}
&[disabled]:hover { &[disabled]:hover {
color: #3a3a3a; color: inherit;
opacity: 0.65;
cursor: not-allowed;
} }
&--icon { &--icon {
@ -60,12 +59,15 @@
border-color: $color; border-color: $color;
background-color: $color; background-color: $color;
color: $textColor; color: $textColor;
opacity: 0.75; opacity: 0.65;
} }
} }
&.is-info { &.is-info {
@include colorVariant(var(--information), var(--gray-soft-lightest)); @include colorVariant(var(--information), var(--gray-soft-lightest));
} }
&.is-alert {
@include colorVariant(var(--alert), var(--gray-soft-lightest));
}
&.is-secondary { &.is-secondary {
@include colorVariant(var(--secondary), var(--secondary-text-color)); @include colorVariant(var(--secondary), var(--secondary-text-color));
} }
@ -75,4 +77,25 @@
&.is-main { &.is-main {
@include colorVariant(var(--main), var(--main-text-color)); @include colorVariant(var(--main), var(--main-text-color));
} }
// sizes
&.button-full {
width: 100%;
justify-content: center;
}
&.button-xs {
min-height: auto;
padding: 2px 4px;
font-size: 12px;
}
&.button-s {
min-height: auto;
padding: 4px 8px;
font-size: 14px;
}
} }
label.fab-button {
margin-bottom: 0;
}

View File

@ -29,9 +29,6 @@
margin-top: 15px; margin-top: 15px;
margin-right: 20px; margin-right: 20px;
max-width: 200px; max-width: 200px;
background-color: var(--secondary-dark);
border-color: var(--secondary-dark);
color: var(--secondary-text-color);
} }
} }
} }
@ -49,9 +46,6 @@
.fab-button { .fab-button {
margin-top: 15px; margin-top: 15px;
margin-right: 20px; margin-right: 20px;
background-color: var(--secondary-dark);
border-color: var(--secondary-dark);
color: var(--secondary-text-color);
} }
} }

View File

@ -25,7 +25,7 @@
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<input type="submit" value="{{ 'app.shared.buttons.save' | translate}}" class="r-b btn-valid btn btn-warning btn-block p-lg btn-lg text-u-c" ng-click="saveAdmin()" ng-disabled="adminForm.$invalid"/> <input type="submit" value="{{ 'app.shared.buttons.save' | translate}}" class="fab-button is-secondary button-full" ng-click="saveAdmin()" ng-disabled="adminForm.$invalid"/>
</div> </div>
</section> </section>
</form> </form>

View File

@ -7,7 +7,7 @@
</div> </div>
</div> </div>
<div class="col-md-12"> <div class="col-md-12">
<button type="button" class="btn btn-warning m-t m-b" ui-sref="app.admin.authentication_new" translate>{{ 'app.admin.members.authentication_form.add_a_new_authentication_provider' }}</button> <button type="button" class="fab-button is-secondary m-t m-b" ui-sref="app.admin.authentication_new" translate>{{ 'app.admin.members.authentication_form.add_a_new_authentication_provider' }}</button>
<table class="table"> <table class="table">
<thead> <thead>

View File

@ -93,7 +93,7 @@
<span translate ng-if="!r.user.name">{{ 'app.admin.calendar.deleted_user' }}</span> <span translate ng-if="!r.user.name">{{ 'app.admin.calendar.deleted_user' }}</span>
- <span class="label reservation-time">{{ r.start_at | amDateFormat:'LLL' }} - {{ r.end_at | amDateFormat:'LT' }}</span> - <span class="label reservation-time">{{ r.start_at | amDateFormat:'LLL' }} - {{ r.end_at | amDateFormat:'LT' }}</span>
- <span class="label label-success text-white">{{r.reservable.name}}</span> - <span class="label label-success text-white">{{r.reservable.name}}</span>
<span class="btn btn-warning btn-xs" ng-click="cancelBooking(r)" ng-if="!r.canceled_at"><i class="fa fa-times red"></i></span> <span class="fab-button is-secondary button-xs" ng-click="cancelBooking(r)" ng-if="!r.canceled_at"><i class="fa fa-times red"></i></span>
</li> </li>
</ul> </ul>
<div ng-show="reservations.length == 0" translate>{{ 'app.admin.calendar.without_reservation' }}</div> <div ng-show="reservations.length == 0" translate>{{ 'app.admin.calendar.without_reservation' }}</div>
@ -109,7 +109,7 @@
<ul class="list-unstyled"> <ul class="list-unstyled">
<li ng-repeat="m in machines" class="m-b-xs" ng-show="availability.machine_ids.indexOf(m.id) > -1"> <li ng-repeat="m in machines" class="m-b-xs" ng-show="availability.machine_ids.indexOf(m.id) > -1">
{{m.name}} {{m.name}}
<span class="btn btn-warning btn-xs" ng-click="removeMachine(m)" ng-if="availability.machine_ids.length > 1"><i class="fa fa-times red"></i></span> <span class="fab-button is-secondary button-xs" ng-click="removeMachine(m)" ng-if="availability.machine_ids.length > 1"><i class="fa fa-times red"></i></span>
</li> </li>
</ul> </ul>
</div> </div>
@ -126,7 +126,7 @@
<ul class="m-n" ng-repeat="plan in g.plans"> <ul class="m-n" ng-repeat="plan in g.plans">
<li> <li>
{{::plan.base_name}} {{::plan.base_name}}
<span class="btn btn-warning btn-xs" ng-click="removePlan(plan)" ><i class="fa fa-times red"></i></span> <span class="fab-button is-secondary button-xs" ng-click="removePlan(plan)" ><i class="fa fa-times red"></i></span>
</li> </li>
</ul> </ul>
</li> </li>

View File

@ -246,12 +246,12 @@
</div> </div>
</div> </div>
<div class="modal-footer" ng-show="step < 6"> <div class="modal-footer" ng-show="step < 6">
<button class="btn btn-info" ng-click="previous()" ng-disabled="step === 1" translate>{{ 'app.admin.calendar.previous' }}</button> <button class="fab-button is-info" ng-click="previous()" ng-disabled="step === 1" translate>{{ 'app.admin.calendar.previous' }}</button>
<button class="btn btn-info" ng-click="next()" translate>{{ 'app.admin.calendar.next' }}</button> <button class="fab-button is-info" ng-click="next()" translate>{{ 'app.admin.calendar.next' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>
<div class="modal-footer" ng-show="step === 6"> <div class="modal-footer" ng-show="step === 6">
<button class="btn btn-info" ng-click="previous()" translate>{{ 'app.admin.calendar.previous' }}</button> <button class="fab-button is-info" ng-click="previous()" translate>{{ 'app.admin.calendar.previous' }}</button>
<button class="btn btn-warning" ng-click="ok()" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -86,7 +86,7 @@
switch-animate="true"/> switch-animate="true"/>
</div> </div>
<div class="m-t text-right"> <div class="m-t text-right">
<button role="button" class="btn btn-warning" ng-click="save()" ng-disabled="newImportForm.$invalid" translate> <button role="button" class="fab-button is-secondary" ng-click="save()" ng-disabled="newImportForm.$invalid" translate>
{{ 'app.shared.buttons.confirm' }} {{ 'app.shared.buttons.confirm' }}
</button> </button>
</div> </div>

View File

@ -31,7 +31,7 @@
<ng-include src="'/admin/coupons/_form.html'"></ng-include> <ng-include src="'/admin/coupons/_form.html'"></ng-include>
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<input type="button" value="{{ 'app.shared.buttons.confirm_changes' | translate }}" class="r-b btn-valid btn btn-warning btn-block p-lg btn-lg text-u-c" ng-disabled="couponForm.$invalid" ng-click="updateCoupon()"/> <input type="button" value="{{ 'app.shared.buttons.confirm_changes' | translate }}" class="p-lg fab-button is-secondary button-full" ng-disabled="couponForm.$invalid" ng-click="updateCoupon()"/>
</div> </div>
</form> </form>
</div> </div>

View File

@ -23,7 +23,7 @@
<ng-include src="'/admin/coupons/_form.html'"></ng-include> <ng-include src="'/admin/coupons/_form.html'"></ng-include>
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<input type="button" value="{{ 'app.shared.buttons.save' | translate }}" class="r-b btn-valid btn btn-warning btn-block p-lg btn-lg text-u-c" ng-disabled="couponForm.$invalid" ng-click="saveCoupon()"/> <input type="button" value="{{ 'app.shared.buttons.save' | translate }}" class="p-lg fab-button is-secondary button-full" ng-disabled="couponForm.$invalid" ng-click="saveCoupon()"/>
</div> </div>
</form> </form>

View File

@ -1,7 +1,7 @@
<div class="m-t"> <div class="m-t">
<h3 class="events-categories" translate>{{ 'app.admin.events.categories' }}</h3> <h3 class="events-categories" translate>{{ 'app.admin.events.categories' }}</h3>
<p translate>{{ 'app.admin.events.at_least_one_category_is_required' }}</p> <p translate>{{ 'app.admin.events.at_least_one_category_is_required' }}</p>
<button type="button" class="btn btn-warning m-b m-t" ng-click="addElement('category')" translate>{{ 'app.admin.events.add_a_category' }}</button> <button type="button" class="fab-button is-secondary m-b m-t" ng-click="addElement('category')" translate>{{ 'app.admin.events.add_a_category' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
<tr> <tr>
@ -19,10 +19,10 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveElement('category', $data, category.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted.category == category"> <form editable-form name="rowform" onbeforesave="saveElement('category', $data, category.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted.category == category">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelElement('category', rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelElement('category', rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
@ -40,7 +40,7 @@
</table> </table>
<h3 class="events-themes" translate>{{ 'app.admin.events.themes' }}</h3> <h3 class="events-themes" translate>{{ 'app.admin.events.themes' }}</h3>
<button type="button" class="btn btn-warning m-b m-t" ng-click="addElement('theme')" translate>{{ 'app.admin.events.add_a_theme' }}</button> <button type="button" class="fab-button is-secondary m-b m-t" ng-click="addElement('theme')" translate>{{ 'app.admin.events.add_a_theme' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
<tr> <tr>
@ -58,10 +58,10 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveElement('theme', $data, theme.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted.theme == theme"> <form editable-form name="rowform" onbeforesave="saveElement('theme', $data, theme.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted.theme == theme">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelElement('theme', rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelElement('theme', rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
@ -79,7 +79,7 @@
</table> </table>
<h3 class="events-age-ranges" translate>{{ 'app.admin.events.age_ranges' }}</h3> <h3 class="events-age-ranges" translate>{{ 'app.admin.events.age_ranges' }}</h3>
<button type="button" class="btn btn-warning m-b m-t" ng-click="addElement('age_range')" translate>{{ 'app.admin.events.add_a_range' }}</button> <button type="button" class="fab-button is-secondary m-b m-t" ng-click="addElement('age_range')" translate>{{ 'app.admin.events.add_a_range' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
<tr> <tr>
@ -97,10 +97,10 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveElement('age_range', $data, range.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted.age_range == range"> <form editable-form name="rowform" onbeforesave="saveElement('age_range', $data, range.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted.age_range == range">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelElement('age_range', rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelElement('age_range', rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>

View File

@ -13,7 +13,7 @@
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized(['admin', 'manager'])"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized(['admin', 'manager'])">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a class="btn btn-lg btn-warning bg-white b-2x rounded m-t-sm upper text-sm" ui-sref="app.admin.events_new" role="button" translate>{{ 'app.admin.events.add_an_event' }}</a> <a class="fab-button is-secondary b-2x m-t-sm" ui-sref="app.admin.events_new" role="button" translate>{{ 'app.admin.events.add_an_event' }}</a>
</section> </section>
</div> </div>
</div> </div>

View File

@ -79,6 +79,6 @@
<div class="row"> <div class="row">
<div class="col-lg-12 text-center"> <div class="col-lg-12 text-center">
<a class="btn btn-warning" ng-click="loadMoreEvents()" ng-if="paginateActive" translate>{{ 'app.admin.events.load_the_next_events' }}</a> <a class="fab-button is-secondary" ng-click="loadMoreEvents()" ng-if="paginateActive" translate>{{ 'app.admin.events.load_the_next_events' }}</a>
</div> </div>
</div> </div>

View File

@ -1,7 +1,7 @@
<div class="m-t"> <div class="m-t">
<h3 translate>{{ 'app.admin.events.prices_categories' }}</h3> <h3 translate>{{ 'app.admin.events.prices_categories' }}</h3>
<button type="button" class="btn btn-warning m-b m-t" ng-click="newPriceCategory()" translate>{{ 'app.admin.events.add_a_price_category' }}</button> <button type="button" class="fab-button is-secondary m-b m-t" ng-click="newPriceCategory()" translate>{{ 'app.admin.events.add_a_price_category' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
<tr> <tr>

View File

@ -85,7 +85,7 @@
</table> </table>
<p ng-if="reservations.length == 0" translate>{{ 'app.admin.event_reservations.no_reservations_for_now' }}</p> <p ng-if="reservations.length == 0" translate>{{ 'app.admin.event_reservations.no_reservations_for_now' }}</p>
<button type="button" class="btn btn-warning m-t m-b" ui-sref="app.admin.events" translate>{{ 'app.admin.event_reservations.back_to_monitoring' }}</button> <button type="button" class="fab-button is-secondary m-t m-b" ui-sref="app.admin.events" translate>{{ 'app.admin.event_reservations.back_to_monitoring' }}</button>
</div> </div>
</div> </div>
</section> </section>

View File

@ -1,7 +1,6 @@
<div class="m-t-lg m-b"> <div class="m-t-lg m-b">
<button type="button" class="btn btn-warning" ng-click="addGroup()"> <button type="button" class="fab-button is-secondary" ng-click="addGroup()" translate>
<i class="fa fa-plus m-r"></i> {{ 'app.admin.members.group_form.add_a_group' }}
<span translate>{{ 'app.admin.members.group_form.add_a_group' }}</span>
</button> </button>
<div class="form-group pull-right"> <div class="form-group pull-right">
<div class="input-group"> <div class="input-group">
@ -30,10 +29,10 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveGroup($data, group.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == group"> <form editable-form name="rowform" onbeforesave="saveGroup($data, group.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == group">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelGroup(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelGroup(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>

View File

@ -95,7 +95,7 @@
<input name="type" type="hidden" ng-value="exportTarget.software"/> <input name="type" type="hidden" ng-value="exportTarget.software"/>
<input name="key" type="hidden" ng-value="query.key"/> <input name="key" type="hidden" ng-value="query.key"/>
<input name="query" type="hidden" ng-value="query.query"/> <input name="query" type="hidden" ng-value="query.query"/>
<input type="submit" class="btn btn-warning" value="{{ 'app.shared.buttons.confirm' | translate }}" formtarget="export-frame"/> <input type="submit" class="fab-button is-secondary" value="{{ 'app.shared.buttons.confirm' | translate }}" formtarget="export-frame"/>
</form> </form>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -38,6 +38,6 @@
</form> </form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="ok()" ng-disabled="avoirForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" ng-disabled="avoirForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -76,6 +76,6 @@
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="ok()" ng-disabled="closePeriodForm.$invalid || pendingCreation" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" ng-disabled="closePeriodForm.$invalid || pendingCreation" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="cancel()" ng-disabled="pendingCreation" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" ng-disabled="pendingCreation" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -83,7 +83,7 @@
</tbody> </tbody>
</table> </table>
<div class="text-center"> <div class="text-center">
<button class="btn btn-warning" ng-click="showNextInvoices()" ng-hide="noMoreResults"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.admin.invoices.display_more_invoices' | translate }}</button> <button class="fab-button is-secondary" ng-click="showNextInvoices()" ng-hide="noMoreResults"><i class="fa fa-search-plus m-r" aria-hidden="true"></i> {{ 'app.admin.invoices.display_more_invoices' | translate }}</button>
</div> </div>
<p ng-if="invoices.length == 0" translate>{{ 'app.admin.invoices.no_invoices_for_now' }}</p> <p ng-if="invoices.length == 0" translate>{{ 'app.admin.invoices.no_invoices_for_now' }}</p>

View File

@ -21,7 +21,7 @@
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="ok()" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>
</div> </div>

View File

@ -25,7 +25,7 @@
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="ok()" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>
</div> </div>

View File

@ -29,7 +29,7 @@
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="ok()" ng-disabled="model.trim() === ''" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" ng-disabled="model.trim() === ''" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>
</div> </div>

View File

@ -42,7 +42,7 @@
</form> </form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="ok()" ng-disabled="stripeKeysForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" ng-disabled="stripeKeysForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>
</div> </div>

View File

@ -25,7 +25,7 @@
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<input type="submit" value="{{ 'app.shared.buttons.save' | translate}}" class="r-b btn-valid btn btn-warning btn-block p-lg btn-lg text-u-c" ng-click="saveManager()" ng-disabled="managerForm.$invalid"/> <input type="submit" value="{{ 'app.shared.buttons.save' | translate}}" class="fab-button is-secondary button-full p-lg" ng-click="saveManager()" ng-disabled="managerForm.$invalid"/>
</div> </div>
</section> </section>
</form> </form>

View File

@ -7,7 +7,7 @@
</div> </div>
</div> </div>
<div class="col-md-12"> <div class="col-md-12">
<button type="button" class="btn btn-warning m-t m-b" ui-sref="app.admin.admins_new" ng-show="isAuthorized('admin')" translate> <button type="button" class="fab-button is-secondary m-t m-b" ui-sref="app.admin.admins_new" ng-show="isAuthorized('admin')" translate>
{{ 'app.admin.members.add_a_new_administrator' }} {{ 'app.admin.members.add_a_new_administrator' }}
</button> </button>

View File

@ -280,7 +280,7 @@
<div class="clearfix"></div> <div class="clearfix"></div>
<div class="col-sm-4 text-center" ng-hide="user.id === currentUser.id"> <div class="col-sm-4 text-center" ng-hide="user.id === currentUser.id">
<button type="button" class="btn btn-warning m-t m-b" ng-click="createWalletCreditModal(user, wallet)" translate>{{ 'app.admin.members_edit.to_credit' }}</button> <button type="button" class="fab-button is-secondary m-t m-b" ng-click="createWalletCreditModal(user, wallet)" translate>{{ 'app.admin.members_edit.to_credit' }}</button>
</div> </div>
<p class="col-sm-4 alert alert-info" ng-show="user.id === currentUser.id" translate> <p class="col-sm-4 alert alert-info" ng-show="user.id === currentUser.id" translate>
{{ 'app.admin.members_edit.cannot_credit_own_wallet' }} {{ 'app.admin.members_edit.cannot_credit_own_wallet' }}

View File

@ -163,7 +163,7 @@
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<input type="submit" value="{{ 'app.admin.members_import.import' | translate }}" class="r-b btn-valid btn btn-warning btn-block p-lg btn-lg text-u-c" ng-disabled="importForm.$invalid"/> <input type="submit" value="{{ 'app.admin.members_import.import' | translate }}" class="p-lg fab-button is-secondary button-full" ng-disabled="importForm.$invalid"/>
</div> </div>
</section> </section>

View File

@ -11,7 +11,7 @@
</div> </div>
</div> </div>
<div class="col-md-12"> <div class="col-md-12">
<button type="button" class="btn btn-warning m-t m-b" ui-sref="app.admin.managers_new" ng-show="isAuthorized('admin')" translate> <button type="button" class="fab-button is-secondary m-t m-b" ui-sref="app.admin.managers_new" ng-show="isAuthorized('admin')" translate>
{{ 'app.admin.members.add_a_new_manager' }} {{ 'app.admin.members.add_a_new_manager' }}
</button> </button>

View File

@ -19,7 +19,7 @@
</div> </div>
<div class="col-md-12"> <div class="col-md-12">
<button type="button" class="btn btn-warning m-b" ui-sref="app.admin.members_new" translate> <button type="button" class="fab-button is-secondary m-b" ui-sref="app.admin.members_new" translate>
{{ 'app.admin.members.add_a_new_member' }} {{ 'app.admin.members.add_a_new_member' }}
</button> </button>
<div class="pull-right exports-buttons m-b" ng-show="isAuthorized('admin')"> <div class="pull-right exports-buttons m-b" ng-show="isAuthorized('admin')">
@ -40,6 +40,6 @@
</div> </div>
<div class="text-center"> <div class="text-center">
<button class="btn btn-warning show-more" ng-click="showNextMembers()" ng-hide="member.noMore"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.admin.members.display_more_users' | translate }}</button> <button class="fab-button is-secondary show-more" ng-click="showNextMembers()" ng-hide="member.noMore"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.admin.members.display_more_users' | translate }}</button>
</div> </div>
</div> </div>

View File

@ -11,7 +11,7 @@
</div> </div>
</div> </div>
<div class="col-md-12"> <div class="col-md-12">
<button type="button" class="btn btn-warning m-t m-b" ng-click="openPartnerNewModal()" translate>{{ 'app.admin.members.add_a_new_partner' }}</button> <button type="button" class="fab-button is-secondary m-t m-b" ng-click="openPartnerNewModal()" translate>{{ 'app.admin.members.add_a_new_partner' }}</button>
<table class="table"> <table class="table">
<thead> <thead>

View File

@ -15,7 +15,7 @@
<div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a href="<%= apipie_apipie_path({version: 'v1'}) %>" target="_blank" class="btn btn-info b-2x rounded m-t-sm documentation-button"> <a href="<%= apipie_apipie_path({version: 'v1'}) %>" target="_blank" class="fab-button is-info m-t-sm documentation-button">
<i class="fa fa-book" aria-hidden="true"></i>&nbsp; <i class="fa fa-book" aria-hidden="true"></i>&nbsp;
<span translate>{{ 'app.admin.open_api_clients.api_documentation' }}</span>&nbsp; <span translate>{{ 'app.admin.open_api_clients.api_documentation' }}</span>&nbsp;
<span class="exponent"><i class="fa fa-external-link" aria-hidden="true"></i></span> <span class="exponent"><i class="fa fa-external-link" aria-hidden="true"></i></span>
@ -36,15 +36,15 @@
<div class="col-md-12"> <div class="col-md-12">
<div class="col-md-12"> <div class="col-md-12">
<button type="button" class="btn btn-warning m-t m-b" ng-click="createClient()" ng-show="!clientFormVisible" translate>{{ 'app.admin.open_api_clients.add_new_client' | translate }}</button> <button type="button" class="fab-button is-secondary m-t m-b" ng-click="createClient()" ng-show="!clientFormVisible" translate>{{ 'app.admin.open_api_clients.add_new_client' | translate }}</button>
<form role="form" id="clientForm" ng-show="clientFormVisible" name="clientForm" class="form-inline m-b m-t" novalidate> <form role="form" id="clientForm" ng-show="clientFormVisible" name="clientForm" class="form-inline m-b m-t" novalidate>
<div class="form-group" ng-class="{'has-error': clientForm['client[name]'].$dirty && clientForm['client[name]'].$invalid}"> <div class="form-group" ng-class="{'has-error': clientForm['client[name]'].$dirty && clientForm['client[name]'].$invalid}">
<input class="form-control" type="text" name="client[name]" ng-model="client.name" value="" placeholder="{{ 'app.admin.open_api_clients.client_name' | translate }}" required> <input class="form-control" type="text" name="client[name]" ng-model="client.name" value="" placeholder="{{ 'app.admin.open_api_clients.client_name' | translate }}" required>
</div> </div>
<button class="btn btn-default" ng-click="cancelEdit()" name="button">{{ 'app.shared.buttons.cancel' | translate }}</button> <button class="fab-button" ng-click="cancelEdit()" name="button">{{ 'app.shared.buttons.cancel' | translate }}</button>
<input type="submit" class="btn btn-warning" ng-disabled="!client.name || client.name.length == 0" ng-click="saveClient(client)" value="{{ 'app.shared.buttons.save' | translate }}"> <input type="submit" class="fab-button is-secondary" ng-disabled="!client.name || client.name.length == 0" ng-click="saveClient(client)" value="{{ 'app.shared.buttons.save' | translate }}">
</form> </form>
<table class="table"> <table class="table">

View File

@ -1,7 +1,7 @@
<h2 translate>{{ 'app.admin.pricing.list_of_the_coupons' }}</h2> <h2 translate>{{ 'app.admin.pricing.list_of_the_coupons' }}</h2>
<div class="m-t-lg m-b"> <div class="m-t-lg m-b">
<button type="button" class="btn btn-warning" ui-sref="app.admin.coupons_new"> <button type="button" class="fab-button is-secondary" ui-sref="app.admin.coupons_new">
<i class="fa fa-plus m-r"></i> <i class="fa fa-plus m-r"></i>
<span translate>{{ 'app.admin.pricing.add_a_new_coupon' }}</span> <span translate>{{ 'app.admin.pricing.add_a_new_coupon' }}</span>
</button> </button>
@ -44,5 +44,5 @@
</table> </table>
<div class="text-center"> <div class="text-center">
<button class="btn btn-warning" ng-click="loadMore()" ng-hide="coupons.length === 0 || coupons.length >= coupons[0].total"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.admin.pricing.display_more_coupons' | translate }}</button> <button class="fab-button is-secondary" ng-click="loadMore()" ng-hide="coupons.length === 0 || coupons.length >= coupons[0].total"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.admin.pricing.display_more_coupons' | translate }}</button>
</div> </div>

View File

@ -27,15 +27,15 @@
</td> </td>
<td> <td>
<form editable-form name="rowform" onbeforesave="saveTrainingCredits($data, planId)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == trainingIds"> <form editable-form name="rowform" onbeforesave="saveTrainingCredits($data, planId)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == trainingIds">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelTrainingCredit(rowform)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelTrainingCredit(rowform)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }} <i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}
</button> </button>
</div> </div>
@ -48,7 +48,7 @@
<div ng-show="$root.modules.machines"> <div ng-show="$root.modules.machines">
<h2 class="m-t-lg" translate>{{ 'app.admin.pricing.machines' }}</h2> <h2 class="m-t-lg" translate>{{ 'app.admin.pricing.machines' }}</h2>
<div class="btn-group m-t-md m-b-md"> <div class="btn-group m-t-md m-b-md">
<button type="button" class="btn btn-warning" ng-click="addMachineCredit($event)" translate>{{ 'app.admin.pricing.add_a_machine_credit' }}</button> <button type="button" class="fab-button is-secondary" ng-click="addMachineCredit($event)" translate>{{ 'app.admin.pricing.add_a_machine_credit' }}</button>
</div> </div>
<table class="table"> <table class="table">
@ -79,18 +79,18 @@
</td> </td>
<td> <td>
<form editable-form name="rowform" onbeforesave="saveMachineCredit($data, mc.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == mc"> <form editable-form name="rowform" onbeforesave="saveMachineCredit($data, mc.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == mc">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelMachineCredit(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelMachineCredit(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }} <i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}
</button> </button>
<button class="btn btn-danger" ng-click="removeMachineCredit($index)"> <button class="fab-button is-alert" ng-click="removeMachineCredit($index)">
<i class="fa fa-trash-o"></i> {{ 'app.shared.buttons.delete' | translate }} <i class="fa fa-trash-o"></i> {{ 'app.shared.buttons.delete' | translate }}
</button> </button>
</div> </div>
@ -103,7 +103,7 @@
<div ng-show="$root.modules.spaces"> <div ng-show="$root.modules.spaces">
<h2 class="m-t-lg" translate>{{ 'app.admin.pricing.spaces' }}</h2> <h2 class="m-t-lg" translate>{{ 'app.admin.pricing.spaces' }}</h2>
<div class="btn-group m-t-md m-b-md"> <div class="btn-group m-t-md m-b-md">
<button type="button" class="btn btn-warning" ng-click="addSpaceCredit($event)" translate>{{ 'app.admin.pricing.add_a_space_credit' }}</button> <button type="button" class="fab-button is-secondary" ng-click="addSpaceCredit($event)" translate>{{ 'app.admin.pricing.add_a_space_credit' }}</button>
</div> </div>
<table class="table"> <table class="table">
<thead> <thead>
@ -133,18 +133,18 @@
</td> </td>
<td> <td>
<form editable-form name="rowform" onbeforesave="saveSpaceCredit($data, sc.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == sc"> <form editable-form name="rowform" onbeforesave="saveSpaceCredit($data, sc.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == sc">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelSpaceCredit(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelSpaceCredit(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }} <i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}
</button> </button>
<button class="btn btn-danger" ng-click="removeSpaceCredit($index)"> <button class="fab-button is-alert" ng-click="removeSpaceCredit($index)">
<i class="fa fa-trash-o"></i> {{ 'app.shared.buttons.delete' | translate }} <i class="fa fa-trash-o"></i> {{ 'app.shared.buttons.delete' | translate }}
</button> </button>
</div> </div>

View File

@ -25,6 +25,6 @@
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="ok()" ng-disabled="ctrl.member == null" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" ng-disabled="ctrl.member == null" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -6,7 +6,7 @@
</div> </div>
<div class="m-t-lg"> <div class="m-t-lg">
<button type="button" class="btn btn-warning new-plan-button" ui-sref="app.admin.plans.new"> <button type="button" class="fab-button is-secondary new-plan-button" ui-sref="app.admin.plans.new">
<i class="fa fa-plus m-r"></i> <i class="fa fa-plus m-r"></i>
<span translate>{{ 'app.admin.pricing.add_a_new_subscription_plan' }}</span> <span translate>{{ 'app.admin.pricing.add_a_new_subscription_plan' }}</span>
</button> </button>

View File

@ -12,7 +12,7 @@
</div> </div>
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a class="btn btn-ng btn-warning b-2x rounded m-t-sm upper text-sm abuses-button" ui-sref="app.admin.manage_abuses" role="button" translate>{{ 'app.admin.projects.manage_abuses' }}</a> <a class="m-t-sm fab-button is-secondary abuses-button" ui-sref="app.admin.manage_abuses" role="button" translate>{{ 'app.admin.projects.manage_abuses' }}</a>
</section> </section>
</div> </div>
</div> </div>

View File

@ -1,4 +1,4 @@
<button type="button" class="btn btn-warning m-t m-b" ng-click="addLicence()" translate>{{ 'app.admin.projects.add_a_new_licence' }}</button> <button type="button" class="fab-button is-secondary m-t m-b" ng-click="addLicence()" translate>{{ 'app.admin.projects.add_a_new_licence' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
@ -23,18 +23,18 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveLicence($data, licence.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == licence"> <form editable-form name="rowform" onbeforesave="saveLicence($data, licence.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == licence">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelLicence(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelLicence(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span> <i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span>
</button> </button>
<button class="btn btn-danger" ng-click="removeLicence($index)"> <button class="fab-button is-alert" ng-click="removeLicence($index)">
<i class="fa fa-trash-o"></i> <i class="fa fa-trash-o"></i>
</button> </button>
</div> </div>

View File

@ -1,4 +1,4 @@
<button type="button" class="btn btn-warning m-b m-t" ng-click="addComponent()" translate>{{ 'app.admin.projects.add_a_material' }}</button> <button type="button" class="fab-button is-secondary m-b m-t" ng-click="addComponent()" translate>{{ 'app.admin.projects.add_a_material' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
@ -17,18 +17,18 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveComponent($data, component.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == component"> <form editable-form name="rowform" onbeforesave="saveComponent($data, component.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == component">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelComponent(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelComponent(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span> <i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span>
</button> </button>
<button class="btn btn-danger" ng-click="removeComponent($index)"> <button class="fab-button is-alert" ng-click="removeComponent($index)">
<i class="fa fa-trash-o"></i> <i class="fa fa-trash-o"></i>
</button> </button>
</div> </div>

View File

@ -1,4 +1,4 @@
<button type="button" class="btn btn-warning m-t m-b" ng-click="addProjectCategory()" translate>{{ 'app.admin.projects.add_a_new_project_category' }}</button> <button type="button" class="fab-button is-secondary m-t m-b" ng-click="addProjectCategory()" translate>{{ 'app.admin.projects.add_a_new_project_category' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
@ -16,18 +16,18 @@
</td> </td>
<td> <td>
<form editable-form name="rowform" onbeforesave="saveProjectCategory($data, projectCategory.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == projectCategory"> <form editable-form name="rowform" onbeforesave="saveProjectCategory($data, projectCategory.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == projectCategory">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelProjectCategory(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelProjectCategory(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span> <i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span>
</button> </button>
<button class="btn btn-danger" ng-click="removeProjectCategory($index)"> <button class="fab-button is-alert" ng-click="removeProjectCategory($index)">
<i class="fa fa-trash-o"></i> <i class="fa fa-trash-o"></i>
</button> </button>
</div> </div>

View File

@ -56,7 +56,7 @@
<input type="file" id="testFile" name="attachment" accept="*/*" required> <input type="file" id="testFile" name="attachment" accept="*/*" required>
</span> </span>
</div> </div>
<input type="submit" class="btn btn-warning" ng-disabled="mimeTestForm.$invalid || $isUploading" value="{{ 'app.shared.buttons.save' | translate}}"> <input type="submit" class="fab-button is-secondary" ng-disabled="mimeTestForm.$invalid || $isUploading" value="{{ 'app.shared.buttons.save' | translate}}">
</form> </form>
</div> </div>
</div> </div>

View File

@ -1,4 +1,4 @@
<button type="button" class="btn btn-warning m-t m-b" ng-click="addTheme()" translate>{{ 'app.admin.projects.add_a_new_theme' }}</button> <button type="button" class="fab-button is-secondary m-t m-b" ng-click="addTheme()" translate>{{ 'app.admin.projects.add_a_new_theme' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
@ -17,18 +17,18 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveTheme($data, theme.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == theme"> <form editable-form name="rowform" onbeforesave="saveTheme($data, theme.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == theme">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelTheme(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelTheme(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span> <i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span>
</button> </button>
<button class="btn btn-danger" ng-click="removeTheme($index)"> <button class="fab-button is-alert" ng-click="removeTheme($index)">
<i class="fa fa-trash-o"></i> <i class="fa fa-trash-o"></i>
</button> </button>
</div> </div>

View File

@ -23,7 +23,7 @@
<div class="col-sm-offset-4 col-sm-4"> <div class="col-sm-offset-4 col-sm-4">
<h1 ng-model="aboutTitleSetting.value" medium-editor options='{"placeholder": "{{ "app.admin.settings.title_of_the_about_page" | translate }}", "disableToolbar": true, "disableReturn": false}' class="text-u-c"></h1> <h1 ng-model="aboutTitleSetting.value" medium-editor options='{"placeholder": "{{ "app.admin.settings.title_of_the_about_page" | translate }}", "disableToolbar": true, "disableReturn": false}' class="text-u-c"></h1>
<span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.shift_enter_to_force_carriage_return' | translate }}</span> <span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.shift_enter_to_force_carriage_return' | translate }}</span>
<button name="button" class="btn btn-warning" ng-click="save(aboutTitleSetting)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(aboutTitleSetting)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
</div> </div>
@ -41,7 +41,7 @@
</div> </div>
<span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.drag_and_drop_to_insert_images' | translate }} (max. 1200px)</span> <span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.drag_and_drop_to_insert_images' | translate }} (max. 1200px)</span>
<button name="button" class="btn btn-warning" ng-click="save(aboutBodySetting)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(aboutBodySetting)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-4 col-md-offset-2"> <div class="col-md-4 col-md-offset-2">
<div ng-model="aboutContactsSetting.value" <div ng-model="aboutContactsSetting.value"
@ -54,7 +54,7 @@
</div> </div>
<span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.shift_enter_to_force_carriage_return' | translate }}</span> <span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.shift_enter_to_force_carriage_return' | translate }}</span>
<button name="button" class="btn btn-warning" ng-click="save(aboutContactsSetting)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(aboutContactsSetting)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-4 col-md-offset-2 m-t-xl"> <div class="col-md-4 col-md-offset-2 m-t-xl">
<h2 translate>{{ 'app.admin.settings.about_follow_us' }}</h2> <h2 translate>{{ 'app.admin.settings.about_follow_us' }}</h2>

View File

@ -30,5 +30,5 @@
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="close()" translate>{{ 'app.shared.buttons.close' }}</button> <button class="fab-button is-secondary" ng-click="close()" translate>{{ 'app.shared.buttons.close' }}</button>
</div> </div>

View File

@ -31,7 +31,7 @@
{{ 'app.admin.settings.general.neutral' | translate }} <span style="font-weight: normal">{{ 'app.admin.settings.general.eg' | translate }} <cite>{{ 'app.admin.settings.general.the_team' | translate }} <strong translate>{{ 'app.admin.settings.general.neutral_preposition' }}</strong> {{allSettings.fablab_name}}</cite></span> {{ 'app.admin.settings.general.neutral' | translate }} <span style="font-weight: normal">{{ 'app.admin.settings.general.eg' | translate }} <cite>{{ 'app.admin.settings.general.the_team' | translate }} <strong translate>{{ 'app.admin.settings.general.neutral_preposition' }}</strong> {{allSettings.fablab_name}}</cite></span>
</label> </label>
</div> </div>
<button name="button" class="btn btn-warning" ng-click="save(nameGenre)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(nameGenre)" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>
</div> </div>
</div> </div>
@ -57,7 +57,7 @@
}'> }'>
</div> </div>
<button name="button" class="btn btn-warning" ng-click="save(machineExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(machineExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-3" ng-show="$root.modules.trainings"> <div class="col-md-3" ng-show="$root.modules.trainings">
<h4 translate>{{ 'app.admin.settings.warning_message_of_the_training_booking_page'}}</h4> <h4 translate>{{ 'app.admin.settings.warning_message_of_the_training_booking_page'}}</h4>
@ -70,7 +70,7 @@
}'> }'>
</div> </div>
<button name="button" class="btn btn-warning" ng-click="save(trainingExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(trainingExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-3" ng-show="$root.modules.trainings"> <div class="col-md-3" ng-show="$root.modules.trainings">
<h4 translate>{{ 'app.admin.settings.information_message_of_the_training_reservation_page'}}</h4> <h4 translate>{{ 'app.admin.settings.information_message_of_the_training_reservation_page'}}</h4>
@ -83,7 +83,7 @@
}'> }'>
</div> </div>
<button name="button" class="btn btn-warning" ng-click="save(trainingInformationMessage)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(trainingInformationMessage)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-3" ng-show="$root.modules.plans"> <div class="col-md-3" ng-show="$root.modules.plans">
<h4 translate>{{ 'app.admin.settings.message_of_the_subscriptions_page' }}</h4> <h4 translate>{{ 'app.admin.settings.message_of_the_subscriptions_page' }}</h4>
@ -95,7 +95,7 @@
"targetBlank": true "targetBlank": true
}'> }'>
</div> </div>
<button name="button" class="btn btn-warning" ng-click="save(subscriptionExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(subscriptionExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-3"> <div class="col-md-3">
<h4 translate>{{ 'app.admin.settings.message_of_the_events_page' }}</h4> <h4 translate>{{ 'app.admin.settings.message_of_the_events_page' }}</h4>
@ -107,7 +107,7 @@
"targetBlank": true "targetBlank": true
}'> }'>
</div> </div>
<button name="button" class="btn btn-warning" ng-click="save(eventExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(eventExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-3" ng-show="$root.modules.spaces" ng-show="$root.modules.spaces"> <div class="col-md-3" ng-show="$root.modules.spaces" ng-show="$root.modules.spaces">
<h4 translate>{{ 'app.admin.settings.message_of_the_spaces_page' }}</h4> <h4 translate>{{ 'app.admin.settings.message_of_the_spaces_page' }}</h4>
@ -119,7 +119,7 @@
"targetBlank": true "targetBlank": true
}'> }'>
</div> </div>
<button name="button" class="btn btn-warning" ng-click="save(spaceExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(spaceExplicationsAlert)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
</div> </div>
</div> </div>
@ -154,7 +154,7 @@
</span> </span>
</div> </div>
</div> </div>
<button name="button" type="submit" ng-class="{'btn-loading':loader.cgv}" ng-disabled="cgvForm.$invalid" class="btn btn-warning" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" type="submit" ng-class="{'btn-loading':loader.cgv}" ng-disabled="cgvForm.$invalid" class="fab-button is-secondary" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>
</div> </div>
<div class="row m-t-xl"> <div class="row m-t-xl">
@ -178,7 +178,7 @@
</span> </span>
</div> </div>
</div> </div>
<button name="button" type="submit" ng-class="{'btn-loading':loader.cgu}" ng-disabled="cguForm.$invalid" class="btn btn-warning" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" type="submit" ng-class="{'btn-loading':loader.cgu}" ng-disabled="cguForm.$invalid" class="fab-button is-secondary" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>
</div> </div>
</div> </div>
@ -219,7 +219,7 @@
</div> </div>
</div> </div>
</div> </div>
<button name="button" type="submit" class="btn btn-warning m-t m-l" ng-disabled="logoForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" type="submit" class="fab-button is-secondary m-t m-l" ng-disabled="logoForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
@ -245,7 +245,7 @@
</div> </div>
</div> </div>
</div> </div>
<button name="button" type="submit" class="btn btn-warning m-t m-l" ng-disabled="logoBlackForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" type="submit" class="fab-button is-secondary m-t m-l" ng-disabled="logoBlackForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
@ -271,7 +271,7 @@
</div> </div>
</div> </div>
</div> </div>
<button name="button" type="submit" class="btn btn-warning m-t m-l" ng-disabled="faviconForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" type="submit" class="fab-button is-secondary m-t m-l" ng-disabled="faviconForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>
</div> </div>
</div> </div>
@ -288,7 +288,7 @@
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<button name="button" class="btn btn-warning" ng-click="save(mainColorSetting)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(mainColorSetting)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
</form> </form>
</div> </div>
@ -304,7 +304,7 @@
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<button name="button" class="btn btn-warning" ng-click="save(secondColorSetting)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(secondColorSetting)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
</form> </form>
</div> </div>
@ -334,7 +334,7 @@
</div> </div>
</div> </div>
<span class="block m-t-xs m-l text-gray text-sm" translate>{{ 'app.admin.settings.background_picture_recommendation' }}</span> <span class="block m-t-xs m-l text-gray text-sm" translate>{{ 'app.admin.settings.background_picture_recommendation' }}</span>
<button name="button" type="submit" class="btn btn-warning m-t m-l" ng-disabled="profileImageForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" type="submit" class="fab-button is-secondary m-t m-l" ng-disabled="profileImageForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>
</div> </div>
</div> </div>

View File

@ -3,12 +3,12 @@
<div class="row"> <div class="row">
<div class="col-md-12 home-page-content"> <div class="col-md-12 home-page-content">
<h4 translate>{{ 'app.admin.settings.customize_home_page' }}</h4> <h4 translate>{{ 'app.admin.settings.customize_home_page' }}</h4>
<button class="btn btn-default pull-right m-t-n-xl reset-button" ng-click="resetHomePage()" title="{{ 'app.admin.settings.reset_home_page' | translate }}"><i class="fa fa-undo"></i></button> <button class="fab-button pull-right m-t-n-xl reset-button" ng-click="resetHomePage()" title="{{ 'app.admin.settings.reset_home_page' | translate }}"><i class="fa fa-undo"></i></button>
<summernote ng-model="homeContent.value" <summernote ng-model="homeContent.value"
id="home_content" id="home_content"
config="summernoteOptsHomePage"> config="summernoteOptsHomePage">
</summernote> </summernote>
<button name="button" class="btn btn-warning" ng-click="save(homeContent)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(homeContent)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
</div> </div>
<div class="row m-t-lg"> <div class="row m-t-lg">
@ -24,7 +24,7 @@
}'> }'>
</div> </div>
<span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.leave_it_empty_to_not_bring_up_any_news_on_the_home_page' | translate }}</span> <span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.leave_it_empty_to_not_bring_up_any_news_on_the_home_page' | translate }}</span>
<button name="button" class="btn btn-warning" ng-click="save(homeBlogpostSetting)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(homeBlogpostSetting)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-6"> <div class="col-md-6">
<text-setting name="twitter_name" <text-setting name="twitter_name"
@ -64,7 +64,7 @@
<span translate>{{ 'app.admin.settings.home_css_notice_html' }}</span> <span translate>{{ 'app.admin.settings.home_css_notice_html' }}</span>
</p> </p>
</uib-alert> </uib-alert>
<button name="button" class="btn btn-warning" ng-click="save(homeCss)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(homeCss)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
</uib-accordion-group> </uib-accordion-group>
</uib-accordion> </uib-accordion>

View File

@ -9,7 +9,7 @@
</form> </form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-disabled="newSelectOptionForm.$invalid" ng-click="ok()" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-disabled="newSelectOptionForm.$invalid" ng-click="ok()" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-default" ng-click="dismiss()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="dismiss()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>
</div> </div>

View File

@ -11,5 +11,5 @@
<i class="fa fa-lightbulb-o"></i> {{ helperText | translate }} <i class="fa fa-lightbulb-o"></i> {{ helperText | translate }}
</span> </span>
</div> </div>
<button name="button" class="btn btn-warning" ng-click="save(setting)" ng-disabled="settingNumberForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(setting)" ng-disabled="settingNumberForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>

View File

@ -15,7 +15,7 @@
</div> </div>
<span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.drag_and_drop_to_insert_images' | translate }}</span> <span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.drag_and_drop_to_insert_images' | translate }}</span>
<button name="button" class="btn btn-warning" ng-click="savePrivacyPolicy()" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="savePrivacyPolicy()" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-3"> <div class="col-md-3">
<div ng-model="privacyDpoSetting.value" medium-editor options='{"placeholder": "{{ "app.admin.settings.privacy.input_the_dpo" | translate }}", <div ng-model="privacyDpoSetting.value" medium-editor options='{"placeholder": "{{ "app.admin.settings.privacy.input_the_dpo" | translate }}",
@ -24,7 +24,7 @@
</div> </div>
<span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.shift_enter_to_force_carriage_return' | translate }}</span> <span class="help-block text-info text-xs"><i class="fa fa-lightbulb-o"></i> {{ 'app.admin.settings.shift_enter_to_force_carriage_return' | translate }}</span>
<button name="button" class="btn btn-warning" ng-click="save(privacyDpoSetting)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary" ng-click="save(privacyDpoSetting)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
</div> </div>

View File

@ -11,14 +11,14 @@
<uib-timepicker ng-model="windowStart.value" hour-step="timepicker.hstep" minute-step="timepicker.mstep" show-meridian="false"></uib-timepicker> <uib-timepicker ng-model="windowStart.value" hour-step="timepicker.hstep" minute-step="timepicker.mstep" show-meridian="false"></uib-timepicker>
</div> </div>
<div class="col-md-4 m-t"> <div class="col-md-4 m-t">
<button name="button" class="btn btn-warning m-l" ng-click="save(windowStart)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary m-l" ng-click="save(windowStart)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
<div class="col-md-2"> <div class="col-md-2">
<h4 translate>{{ 'app.admin.settings.closing_time' }}</h4> <h4 translate>{{ 'app.admin.settings.closing_time' }}</h4>
<uib-timepicker ng-model="windowEnd.value" hour-step="timepicker.hstep" minute-step="timepicker.mstep" show-meridian="false"></uib-timepicker> <uib-timepicker ng-model="windowEnd.value" hour-step="timepicker.hstep" minute-step="timepicker.mstep" show-meridian="false"></uib-timepicker>
</div> </div>
<div class="col-md-4 m-t"> <div class="col-md-4 m-t">
<button name="button" class="btn btn-warning m-l" ng-click="save(windowEnd)" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary m-l" ng-click="save(windowEnd)" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>
</div> </div>
<div class="section-separator"></div> <div class="section-separator"></div>
@ -269,7 +269,7 @@
<div class="row p-l p-r" ng-if="reservationContextFeature.value === 'true'"> <div class="row p-l p-r" ng-if="reservationContextFeature.value === 'true'">
<h3 class="" translate>{{ 'app.admin.settings.reservation_context_options' }}</h3> <h3 class="" translate>{{ 'app.admin.settings.reservation_context_options' }}</h3>
<button type="button" class="btn btn-warning m-b m-t" ng-click="addReservationContext()" translate>{{ 'app.admin.settings.add_a_reservation_context' }}</button> <button type="button" class="fab-button is-secondary m-b m-t" ng-click="addReservationContext()" translate>{{ 'app.admin.settings.add_a_reservation_context' }}</button>
<table class="table"> <table class="table">
<thead> <thead>
<tr> <tr>
@ -299,18 +299,18 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveReservationContext($data, reservationContext.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="newReservationContext == reservationContext"> <form editable-form name="rowform" onbeforesave="saveReservationContext($data, reservationContext.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="newReservationContext == reservationContext">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelReservationContext(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelReservationContext(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span> <i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span>
</button> </button>
<button class="btn btn-danger" ng-click="removeReservationContext($index)"> <button class="fab-button is-alert" ng-click="removeReservationContext($index)">
<i class="fa fa-trash-o"></i> <i class="fa fa-trash-o"></i>
</button> </button>
</div> </div>

View File

@ -6,7 +6,7 @@
<p translate>{{ 'app.admin.settings.privacy.publish_will_notify' }}</p> <p translate>{{ 'app.admin.settings.privacy.publish_will_notify' }}</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-info" ng-click="save()" translate>{{ 'app.shared.buttons.save' }}</button> <button class="fab-button is-info" ng-click="save()" translate>{{ 'app.shared.buttons.save' }}</button>
<button class="btn btn-warning" ng-click="publish()" translate>{{ 'app.admin.settings.privacy.publish' }}</button> <button class="fab-button is-secondary" ng-click="publish()" translate>{{ 'app.admin.settings.privacy.publish' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -13,5 +13,5 @@
<button ng-click="removeItem()" class="btn btn-default"><i class="fa fa-trash"></i></button> <button ng-click="removeItem()" class="btn btn-default"><i class="fa fa-trash"></i></button>
<button ng-click="addItem()" class="btn btn-default"><i class="fa fa-plus"></i></button> <button ng-click="addItem()" class="btn btn-default"><i class="fa fa-plus"></i></button>
</div> </div>
<button name="button" class="btn btn-warning m-t" ng-click="save(setting)" ng-disabled="settingSelectMultipleForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary m-t" ng-click="save(setting)" ng-disabled="settingSelectMultipleForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>

View File

@ -12,5 +12,5 @@
<option ng-if="option5" ng-value="option5[0]" translate>{{ option5[1] }}</option> <option ng-if="option5" ng-value="option5[0]" translate>{{ option5[1] }}</option>
</select> </select>
</div> </div>
<button name="button" class="btn btn-warning m-t" ng-click="save(setting)" ng-disabled="settingSelectForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary m-t" ng-click="save(setting)" ng-disabled="settingSelectForm.$invalid" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>

View File

@ -17,5 +17,5 @@
ng-readonly="readOnly"> ng-readonly="readOnly">
</div> </div>
</div> </div>
<button name="button" class="btn btn-warning m-t" ng-click="save(setting)" ng-disabled="settingTextForm.$invalid || readOnly" translate>{{ 'app.shared.buttons.save' }}</button> <button name="button" class="fab-button is-secondary m-t" ng-click="save(setting)" ng-disabled="settingTextForm.$invalid || readOnly" translate>{{ 'app.shared.buttons.save' }}</button>
</form> </form>

View File

@ -12,7 +12,7 @@
</div> </div>
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a class="btn btn-lg btn-warning bg-white b-2x rounded m-t-sm upper text-sm" ui-sref="app.admin.statistics" role="button"><i class="fa fa-table"></i> {{ 'app.admin.stats_graphs.data' | translate }}</a> <a class="fab-button is-secondary m-t-sm" ui-sref="app.admin.statistics" role="button"><i class="fa fa-table"></i> {{ 'app.admin.stats_graphs.data' | translate }}</a>
</section> </section>
</div> </div>
</div> </div>

View File

@ -12,9 +12,9 @@
</div> </div>
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a class="btn btn-lg btn-default rounded m-t-sm text-sm export-button" ng-click="exportToExcel()"><i class="fa fa-file-excel-o"></i></a> <a class="fab-button m-t-sm export-button" ng-click="exportToExcel()"><i class="fa fa-file-excel-o"></i></a>
<iframe name="export-frame" height="0" width="0" class="none" id="stats-export-frame"></iframe> <iframe name="export-frame" height="0" width="0" class="none" id="stats-export-frame"></iframe>
<a class="btn btn-lg btn-warning bg-white b-2x rounded m-t-sm upper text-sm charts-button" ui-sref="app.admin.stats_graphs" role="button"><i class="fa fa-line-chart"></i> {{ 'app.admin.statistics.evolution' | translate }}</a> <a class="fab-button is-secondary m-t-sm charts-button" ui-sref="app.admin.stats_graphs" role="button"><i class="fa fa-line-chart"></i> {{ 'app.admin.statistics.evolution' | translate }}</a>
</section> </section>
</div> </div>
</div> </div>
@ -299,7 +299,7 @@
</tbody> </tbody>
</table> </table>
<div class="text-center"> <div class="text-center">
<button class="btn btn-warning" ng-click="showMoreResults()" ng-hide="data && data.length >= totalHits"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.admin.statistics.display_more_results' | translate }}</button> <button class="fab-button is-secondary" ng-click="showMoreResults()" ng-hide="data && data.length >= totalHits"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.admin.statistics.display_more_results' | translate }}</button>
</div> </div>
</uib-tab> </uib-tab>
</uib-tabset> </uib-tabset>

View File

@ -1,4 +1,4 @@
<button type="button" class="btn btn-warning m-b m-t-lg" ng-click="addTag()" translate>{{ 'app.admin.members.tag_form.add_a_tag'}}</button> <button type="button" class="fab-button is-secondary m-b m-t-lg" ng-click="addTag()" translate>{{ 'app.admin.members.tag_form.add_a_tag'}}</button>
<table class="table"> <table class="table">
<thead> <thead>
<tr> <tr>
@ -16,18 +16,18 @@
<td> <td>
<!-- form --> <!-- form -->
<form editable-form name="rowform" onbeforesave="saveTag($data, tag.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == tag"> <form editable-form name="rowform" onbeforesave="saveTag($data, tag.id)" ng-show="rowform.$visible" class="form-buttons form-inline" shown="inserted == tag">
<button type="submit" ng-disabled="rowform.$waiting" class="btn btn-warning"> <button type="submit" ng-disabled="rowform.$waiting" class="fab-button is-secondary">
<i class="fa fa-check"></i> <i class="fa fa-check"></i>
</button> </button>
<button type="button" ng-disabled="rowform.$waiting" ng-click="cancelTag(rowform, $index)" class="btn btn-default"> <button type="button" ng-disabled="rowform.$waiting" ng-click="cancelTag(rowform, $index)" class="fab-button">
<i class="fa fa-times"></i> <i class="fa fa-times"></i>
</button> </button>
</form> </form>
<div class="buttons" ng-show="!rowform.$visible"> <div class="buttons" ng-show="!rowform.$visible">
<button class="btn btn-default" ng-click="rowform.$show()"> <button class="fab-button" ng-click="rowform.$show()">
<i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span> <i class="fa fa-edit"></i> <span class="hidden-xs hidden-sm" translate>{{ 'app.shared.buttons.edit' }}</span>
</button> </button>
<button class="btn btn-danger" ng-click="removeTag($index)"> <button class="fab-button is-alert" ng-click="removeTag($index)">
<i class="fa fa-trash-o"></i> <i class="fa fa-trash-o"></i>
</button> </button>
</div> </div>

View File

@ -10,5 +10,5 @@
</form> </form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-disabled="trainingForm.$invalid" ng-click="save()" translate>{{ 'app.shared.buttons.save' }}</button> <button class="fab-button is-secondary" ng-disabled="trainingForm.$invalid" ng-click="save()" translate>{{ 'app.shared.buttons.save' }}</button>
</div> </div>

View File

@ -16,6 +16,6 @@
<p ng-if="availability.reservation_users.length == 0" translate>{{ 'app.admin.trainings.no_reservation' }}</p> <p ng-if="availability.reservation_users.length == 0" translate>{{ 'app.admin.trainings.no_reservation' }}</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="ok()" ng-disabled="usersToValid.length == 0" translate>{{ 'app.admin.trainings.validate_the_trainings' }}</button> <button class="fab-button is-secondary" ng-click="ok()" ng-disabled="usersToValid.length == 0" translate>{{ 'app.admin.trainings.validate_the_trainings' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -15,5 +15,5 @@
</p> </p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-warning" ng-click="close()" translate>{{ 'app.shared.buttons.close' }}</button> <button class="fab-button is-secondary" ng-click="close()" translate>{{ 'app.shared.buttons.close' }}</button>
</div> </div>

View File

@ -10,7 +10,7 @@
<div class="row no-gutter"> <div class="row no-gutter">
<div class="row m-t-md"> <div class="row m-t-md">
<a class="btn btn-lg btn-warning bg-white b-2x rounded m-t-sm upper text-sm col-lg-offset-10" ui-sref="app.logged.projects_new" role="button" translate>{{ 'app.logged.dashboard.projects.add_a_project' }}</a> <a class="fab-button is-secondary m-t-sm col-lg-offset-10" ui-sref="app.logged.projects_new" role="button" translate>{{ 'app.logged.dashboard.projects.add_a_project' }}</a>
</div> </div>
<div class="wrapper" ng-if="user.all_projects.length == 0" translate>{{ 'app.logged.dashboard.projects.you_dont_have_any_projects' }}</div> <div class="wrapper" ng-if="user.all_projects.length == 0" translate>{{ 'app.logged.dashboard.projects.you_dont_have_any_projects' }}</div>
@ -20,7 +20,7 @@
<span class="m-l-sm label label-success text-white">{{project.author_id == currentUser.id ? 'app.logged.dashboard.projects.author' : 'app.logged.dashboard.projects.collaborator' | translate}}</span> <span class="m-l-sm label label-success text-white">{{project.author_id == currentUser.id ? 'app.logged.dashboard.projects.author' : 'app.logged.dashboard.projects.collaborator' | translate}}</span>
<span class="badge" ng-if="project.state == 'draft'" translate>{{ 'app.logged.dashboard.projects.rough_draft' }}</span> <span class="badge" ng-if="project.state == 'draft'" translate>{{ 'app.logged.dashboard.projects.rough_draft' }}</span>
<div class="pull-right"> <div class="pull-right">
<a class="btn btn-warning bg-white b-2x rounded upper text-sm text-black" ui-sref="app.public.projects_show({id:project.slug})" role="button" translate>{{ 'app.shared.buttons.consult' }}</a> <a class="fab-button is-secondary" ui-sref="app.public.projects_show({id:project.slug})" role="button" translate>{{ 'app.shared.buttons.consult' }}</a>
</div> </div>
</div> </div>
<div class="widget-content bg-light clearfix"> <div class="widget-content bg-light clearfix">

View File

@ -31,7 +31,7 @@
</uib-alert> </uib-alert>
</div> </div>
<div ng-show="!user.subscribed_plan.name">{{ 'app.logged.dashboard.settings.no_subscriptions' | translate }} <br><a class="btn text-black btn-warning-full btn-sm m-t-xs" ui-sref="app.public.plans" translate>{{ 'app.logged.dashboard.settings.i_want_to_subscribe' }}</a></div> <div ng-show="!user.subscribed_plan.name">{{ 'app.logged.dashboard.settings.no_subscriptions' | translate }} <br><a class="fab-button is-secondary button-s m-t-xs" ui-sref="app.public.plans" translate>{{ 'app.logged.dashboard.settings.i_want_to_subscribe' }}</a></div>
</div> </div>
<div class="m-t"> <div class="m-t">
@ -70,10 +70,10 @@
<div ng-show="cookiesStatus === 'accept'" translate>{{ 'app.logged.dashboard.settings.cookies_accepted' }}</div> <div ng-show="cookiesStatus === 'accept'" translate>{{ 'app.logged.dashboard.settings.cookies_accepted' }}</div>
<div ng-show="cookiesStatus === 'decline'" translate>{{ 'app.logged.dashboard.settings.cookies_declined' }}</div> <div ng-show="cookiesStatus === 'decline'" translate>{{ 'app.logged.dashboard.settings.cookies_declined' }}</div>
<div ng-hide="cookiesStatus" translate>{{ 'app.logged.dashboard.settings.cookies_unset' }}</div> <div ng-hide="cookiesStatus" translate>{{ 'app.logged.dashboard.settings.cookies_unset' }}</div>
<button ng-click="resetCookies()" ng-show="cookiesStatus" class="btn text-black btn-warning-full btn-sm m-t-xs" translate>{{ 'app.logged.dashboard.settings.reset_cookies' }}</button> <button ng-click="resetCookies()" ng-show="cookiesStatus" class="fab-button is-secondary button-s m-t-xs" translate>{{ 'app.logged.dashboard.settings.reset_cookies' }}</button>
</div> </div>
<div class="widget-content no-bg text-center auto wrapper" ng-hide="isAdminSys"> <div class="widget-content no-bg text-center auto wrapper" ng-hide="isAdminSys">
<button class="btn text-white btn-danger btn-sm" ng-click="deleteUser(user)"><i class="fa fa-warning m-r-xs"></i> {{ 'app.logged.dashboard.settings.delete_my_account' | translate }}</button> <button class="fab-button is-alert button-s" ng-click="deleteUser(user)"><i class="fa fa-warning m-r-xs"></i> {{ 'app.logged.dashboard.settings.delete_my_account' | translate }}</button>
</div> </div>
</div> </div>
@ -94,13 +94,13 @@
</div> </div>
<div class="panel-body row"> <div class="panel-body row">
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<a class="btn btn-default" ng-href="{{activeProvider.link_to_sso_profile}}" target="_blank"> <a class="fab-button" ng-href="{{activeProvider.link_to_sso_profile}}" target="_blank">
<i class="fa fa-edit"></i> {{ 'app.logged.dashboard.settings.change_my_data' | translate }} <i class="fa fa-edit"></i> {{ 'app.logged.dashboard.settings.change_my_data' | translate }}
</a> </a>
<p>{{ 'app.logged.dashboard.settings.once_your_data_are_up_to_date_' | translate }} <strong translate>{{ 'app.logged.dashboard.settings._click_on_the_synchronization_button_opposite_' }}</strong> {{ 'app.logged.dashboard.settings.or' | translate}} <strong translate>{{ 'app.logged.dashboard.settings._disconnect_then_reconnect_' }}</strong> {{ 'app.logged.dashboard.settings._for_your_changes_to_take_effect' | translate }}</p> <p>{{ 'app.logged.dashboard.settings.once_your_data_are_up_to_date_' | translate }} <strong translate>{{ 'app.logged.dashboard.settings._click_on_the_synchronization_button_opposite_' }}</strong> {{ 'app.logged.dashboard.settings.or' | translate}} <strong translate>{{ 'app.logged.dashboard.settings._disconnect_then_reconnect_' }}</strong> {{ 'app.logged.dashboard.settings._for_your_changes_to_take_effect' | translate }}</p>
</div> </div>
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12"> <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<a class="btn btn-default" ng-click="syncProfile()"> <a class="fab-button" ng-click="syncProfile()">
<i class="fa fa-refresh"></i> {{ 'app.logged.dashboard.settings.sync_my_profile' | translate }} <i class="fa fa-refresh"></i> {{ 'app.logged.dashboard.settings.sync_my_profile' | translate }}
</a> </a>
</div> </div>

View File

@ -13,7 +13,7 @@
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized(['admin'])"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized(['admin'])">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a class="btn btn-lg btn-warning bg-white b-2x rounded m-t-sm upper text-sm" ui-sref="app.admin.events_new" role="button" translate>{{ 'app.public.events_list.add_an_event' }}</a> <a class="fab-button is-secondary m-t-sm" ui-sref="app.admin.events_new" role="button" translate>{{ 'app.public.events_list.add_an_event' }}</a>
</section> </section>
</div> </div>
</div> </div>
@ -69,7 +69,7 @@
<div class="row"> <div class="row">
<div class="col-lg-12 text-center m-t-md"> <div class="col-lg-12 text-center m-t-md">
<a class="btn btn-warning" ng-click="loadMoreEvents()" ng-hide="noMoreResults" translate>{{ 'app.public.events_list.load_the_next_events' }}</a> <a class="fab-button is-secondary" ng-click="loadMoreEvents()" ng-hide="noMoreResults" translate>{{ 'app.public.events_list.load_the_next_events' }}</a>
</div> </div>
</div> </div>

View File

@ -17,8 +17,8 @@
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized(['admin', 'manager'])"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized(['admin', 'manager'])">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a ui-sref="app.admin.events_edit({id: event.id})" class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs text-u-c text-sm"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a> <a ui-sref="app.admin.events_edit({id: event.id})" class="fab-button is-secondary m-t-xs"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a>
<a ng-click="deleteEvent(event)" class="btn btn-lg btn-danger b-2x rounded no-b m-t-xs"><i class="fa fa-trash-o"></i></a> <a ng-click="deleteEvent(event)" class="fab-button is-alert no-b m-t-xs"><i class="fa fa-trash-o"></i></a>
</section> </section>
</div> </div>
@ -250,7 +250,7 @@
<span ng-show="reservations.length > 0" translate>{{ 'app.public.events_show.thanks_for_coming' }}</span> <span ng-show="reservations.length > 0" translate>{{ 'app.public.events_show.thanks_for_coming' }}</span>
<a ui-sref="app.public.events_list" translate>{{ 'app.public.events_show.view_event_list' }}</a> <a ui-sref="app.public.events_list" translate>{{ 'app.public.events_show.view_event_list' }}</a>
</div> </div>
<button class="btn btn-warning-full rounded btn-block text-sm" ng-click="reserveEvent()" ng-show="isShowReserveEventButton()"> <button class="fab-button is-secondary" ng-click="reserveEvent()" ng-show="isShowReserveEventButton()">
<span ng-if="event.pre_registration">{{ 'app.public.events_show.pre_book' | translate }}</span> <span ng-if="event.pre_registration">{{ 'app.public.events_show.pre_book' | translate }}</span>
<span ng-if="!event.pre_registration">{{ 'app.public.events_show.book' | translate }}</span> <span ng-if="!event.pre_registration">{{ 'app.public.events_show.book' | translate }}</span>
</button> </button>
@ -266,11 +266,11 @@
</div> </div>
<div class="panel-footer no-padder ng-scope" ng-if="!event.pre_registration && event.amount && reservationIsValid()"> <div class="panel-footer no-padder ng-scope" ng-if="!event.pre_registration && event.amount && reservationIsValid()">
<button class="btn btn-valid btn-info btn-block p-l btn-lg text-u-c r-b text-base" ng-click="payEvent()" ng-if="reserve.totalSeats > 0">{{ 'app.public.events_show.confirm_and_pay' | translate }} {{reserve.amountTotal | currency}}</button> <button class="fab-button is-info button-full" ng-click="payEvent()" ng-if="reserve.totalSeats > 0">{{ 'app.public.events_show.confirm_and_pay' | translate }} {{reserve.amountTotal | currency}}</button>
</div> </div>
<div class="panel-footer no-padder ng-scope" ng-if="(event.pre_registration || event.amount == 0) && reservationIsValid()"> <div class="panel-footer no-padder ng-scope" ng-if="(event.pre_registration || event.amount == 0) && reservationIsValid()">
<button class="btn btn-valid btn-info btn-block p-l btn-lg text-u-c r-b text-base" ng-click="validReserveEvent()" ng-if="reserve.totalSeats > 0" ng-disabled="attempting">{{ 'app.shared.buttons.confirm' | translate }}</button> <button class="fab-button is-info button-full" ng-click="validReserveEvent()" ng-if="reserve.totalSeats > 0" ng-disabled="attempting">{{ 'app.shared.buttons.confirm' | translate }}</button>
</div> </div>
</section> </section>

View File

@ -18,10 +18,10 @@
</div> </div>
<div class="m-t-sm m-b-sm text-center" ng-if="!isAuthenticated()" ng-show="publicRegistrations"> <div class="m-t-sm m-b-sm text-center" ng-if="!isAuthenticated()" ng-show="publicRegistrations">
<button ng-click="signup($event)" class="btn btn-warning-full width-70 font-sbold rounded text-sm" translate>{{ 'app.public.home.create_an_account' }}</button> <button ng-click="signup($event)" class="fab-button is-secondary" translate>{{ 'app.public.home.create_an_account' }}</button>
</div> </div>
<div class="m-t-sm m-b-sm text-center" ng-if="isAuthenticated()"> <div class="m-t-sm m-b-sm text-center" ng-if="isAuthenticated()">
<button ui-sref="app.logged.members" class="btn btn-warning-full width-70 font-sbold rounded text-sm" translate>{{ 'app.public.home.discover_members' }}</button> <button ui-sref="app.logged.members" class="fab-button is-secondary" translate>{{ 'app.public.home.discover_members' }}</button>
</div> </div>
</section> </section>

View File

@ -16,7 +16,7 @@
<div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<reserve-button ng-hide="machine.disabled || !machine.reservable" <reserve-button ng-hide="machine.disabled || !machine.reservable"
class-name="'btn btn-lg btn-warning bg-white b-2x rounded m-t-xs'" class-name="'fab-button is-secondary m-t-xs'"
current-user="currentUser" current-user="currentUser"
machine-id="machine.id" machine-id="machine.id"
on-error="onError" on-error="onError"
@ -26,8 +26,8 @@
on-enroll-requested="onEnrollRequest"> on-enroll-requested="onEnrollRequest">
</reserve-button> </reserve-button>
<a ui-sref="app.admin.machines_edit({id: machine.id})" ng-if="isAuthorized('admin')" class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a> <a ui-sref="app.admin.machines_edit({id: machine.id})" ng-if="isAuthorized('admin')" class="fab-button is-secondary m-t-xs"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a>
<a ng-click="delete(machine)" ng-if="isAuthorized('admin')" class="btn btn-lg btn-danger b-2x rounded no-b m-t-xs"><i class="fa fa-trash-o"></i></a> <a ng-click="delete(machine)" ng-if="isAuthorized('admin')" class="fab-button is-alert m-t-xs"><i class="fa fa-trash-o"></i></a>
</section> </section>
</div> </div>

View File

@ -40,7 +40,7 @@
<td>{{ member.email }}</td> <td>{{ member.email }}</td>
<td> <td>
<div class="buttons"> <div class="buttons">
<button class="btn btn-default" ui-sref="app.logged.members_show({id: member.slug})"> <button class="fab-button" ui-sref="app.logged.members_show({id: member.slug})">
<i class="fa fa-eye"></i> {{ 'app.shared.buttons.consult' | translate }} <i class="fa fa-eye"></i> {{ 'app.shared.buttons.consult' | translate }}
</button> </button>
</div> </div>
@ -49,7 +49,7 @@
</tbody> </tbody>
</table> </table>
<div class="text-center"> <div class="text-center">
<button class="btn btn-warning" ng-click="showNextMembers()" ng-hide="noMoreResults"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.logged.members.display_more_members' | translate }}</button> <button class="fab-button is-secondary" ng-click="showNextMembers()" ng-hide="noMoreResults"><i class="fa fa-search-plus" aria-hidden="true"></i> {{ 'app.logged.members.display_more_members' | translate }}</button>
</div> </div>
<p ng-if="members.length == 0" translate>{{ 'app.logged.members.no_members_for_now' }}</p> <p ng-if="members.length == 0" translate>{{ 'app.logged.members.no_members_for_now' }}</p>
</div> </div>

View File

@ -15,7 +15,7 @@
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a ui-sref="app.logged.members" class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs" translate>{{ 'app.logged.members_show.members_list' }}</a> <a ui-sref="app.logged.members" class="fab-button is-secondary m-t-xs" translate>{{ 'app.logged.members_show.members_list' }}</a>
</section> </section>
</div> </div>

View File

@ -23,7 +23,7 @@
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<input type="button" <input type="button"
value="{{ 'app.logged.profile_completion.confirm_my_code' | translate }}" value="{{ 'app.logged.profile_completion.confirm_my_code' | translate }}"
class="r-b btn-valid btn btn-warning btn-block p-lg btn-lg text-u-c" class="fab-button is-primary upper"
ng-hide="!user.auth_token" ng-hide="!user.auth_token"
ng-click="registerAuthToken()"/> ng-click="registerAuthToken()"/>
</div> </div>

View File

@ -30,11 +30,11 @@
</div> </div>
<span class="help-block text-sm" translate>{{ 'app.shared.project.illustration_recommendation' }}</span> <span class="help-block text-sm" translate>{{ 'app.shared.project.illustration_recommendation' }}</span>
<div> <div>
<span class="btn btn-default btn-file"><span class="fileinput-new">{{ 'app.shared.project.add_an_illustration' | translate }} <i class="fa fa-upload fa-fw"></i></span><span class="fileinput-exists" translate>{{ 'app.shared.buttons.change' }}</span> <span class="fab-button btn-file"><span class="fileinput-new">{{ 'app.shared.project.add_an_illustration' | translate }} <i class="fa fa-upload fa-fw"></i></span><span class="fileinput-exists" translate>{{ 'app.shared.buttons.change' }}</span>
<input type="file" <input type="file"
name="project[project_image_attributes][attachment]" name="project[project_image_attributes][attachment]"
accept="image/jpeg,image/gif,image/png"></span> accept="image/jpeg,image/gif,image/png"></span>
<a class="btn btn-danger fileinput-exists" data-dismiss="fileinput" translate>{{ 'app.shared.buttons.delete' }}</a> <a class="fab-button is-alert fileinput-exists" data-dismiss="fileinput" translate>{{ 'app.shared.buttons.delete' }}</a>
</div> </div>
</div> </div>
</div> </div>
@ -64,7 +64,7 @@
<i class="fa fa-info-circle" aria-hidden="true" uib-tooltip="{{ 'app.shared.project.allowed_extensions' | translate }} {{allowedExtensions.join(', ')}}" tooltip-placement="bottom" tooltip-class="media-lg"></i> <i class="fa fa-info-circle" aria-hidden="true" uib-tooltip="{{ 'app.shared.project.allowed_extensions' | translate }} {{allowedExtensions.join(', ')}}" tooltip-placement="bottom" tooltip-class="media-lg"></i>
</div> </div>
</div> </div>
<a class="btn btn-default" ng-click="addFile()" role="button">{{ 'app.shared.project.add_a_new_file' | translate }} <i class="fa fa-file-o fa-fw"></i></a> <a class="fab-button" ng-click="addFile()" role="button">{{ 'app.shared.project.add_a_new_file' | translate }} <i class="fa fa-file-o fa-fw"></i></a>
</div> </div>
</div> </div>
@ -84,7 +84,7 @@
<div ng-repeat="step in project.project_steps_attributes | orderBy:'step_nb'" ng-hide="step._destroy"> <div ng-repeat="step in project.project_steps_attributes | orderBy:'step_nb'" ng-hide="step._destroy">
<div class="m-t-xs m-b-lg"> <div class="m-t-xs m-b-lg">
<div class="btn-group" uib-dropdown is-open="status.isopen"> <div class="btn-group" uib-dropdown is-open="status.isopen">
<button id="single-button" type="button" class="btn btn-warning" uib-dropdown-toggle> <button id="single-button" type="button" class="fab-button is-secondary" uib-dropdown-toggle>
{{ 'app.shared.project.step_N' | translate:{ INDEX:step.step_nb } }}/{{totalSteps}} <i class="fa fa-caret-down" aria-hidden="true"></i> {{ 'app.shared.project.step_N' | translate:{ INDEX:step.step_nb } }}/{{totalSteps}} <i class="fa fa-caret-down" aria-hidden="true"></i>
</button> </button>
<ul class="dropdown-menu" uib-dropdown-menu role="menu" aria-labelledby="single-button"> <ul class="dropdown-menu" uib-dropdown-menu role="menu" aria-labelledby="single-button">
@ -119,26 +119,26 @@
<img ng-src="{{ image.attachment_url }}" alt="{{image.attachment}}" /> <img ng-src="{{ image.attachment_url }}" alt="{{image.attachment}}" />
</div> </div>
<div> <div>
<span class="btn btn-default btn-file"><span class="fileinput-new">{{ 'app.shared.buttons.browse' | translate }} <i class="fa fa-upload fa-fw"></i></span><span class="fileinput-exists" translate>{{ 'app.shared.buttons.change' }}</span> <span class="fab-button btn-file"><span class="fileinput-new">{{ 'app.shared.buttons.browse' | translate }} <i class="fa fa-upload fa-fw"></i></span><span class="fileinput-exists" translate>{{ 'app.shared.buttons.change' }}</span>
<input type="file" <input type="file"
name="project[project_steps_attributes][][project_step_images_attributes][][attachment]" name="project[project_steps_attributes][][project_step_images_attributes][][attachment]"
accept="image/jpeg,image/gif,image/png"> accept="image/jpeg,image/gif,image/png">
</span> </span>
<a class="btn btn-danger fileinput-exists" data-dismiss="fileinput" ng-click="deleteProjectStepImage(step, image)" translate>{{ 'app.shared.buttons.delete' }}</a> <a class="fab-button is-alert fileinput-exists" data-dismiss="fileinput" ng-click="deleteProjectStepImage(step, image)" translate>{{ 'app.shared.buttons.delete' }}</a>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div> <div>
<a class="btn btn-default" ng-click="addProjectStepImage(step)" role="button">{{ 'app.shared.project.add_a_picture' | translate }} <i class="fa fa-file-o fa-fw"></i></a> <a class="fab-button" ng-click="addProjectStepImage(step)" role="button">{{ 'app.shared.project.add_a_picture' | translate }} <i class="fa fa-file-o fa-fw"></i></a>
</div> </div>
<div class="m-t"> <div class="m-t">
<a class="btn btn-sm btn-danger" ng-click="deleteStep(step)" role="button"><i class="fa fa-trash-o m-r-xs"></i> {{ 'app.shared.project.delete_the_step' | translate }}</a> <a class="fab-button is-alert" ng-click="deleteStep(step)" role="button"><i class="fa fa-trash-o m-r-xs"></i> {{ 'app.shared.project.delete_the_step' | translate }}</a>
</div> </div>
</div> </div>
</div> </div>
<a class="btn btn-default m-b" ng-click="addStep()" role="button"> <a class="fab-button m-b" ng-click="addStep()" role="button">
<i class="fa fa-plus m-r-sm" aria-hidden="true"></i> <i class="fa fa-plus m-r-sm" aria-hidden="true"></i>
<span translate>{{ 'app.shared.project.add_a_new_step' }}</span></a> <span translate>{{ 'app.shared.project.add_a_new_step' }}</span></a>
</div> </div>
@ -149,12 +149,12 @@
</div> <!-- ./panel-body --> </div> <!-- ./panel-body -->
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<div ng-show="project.state != 'published'"> <div ng-show="project.state != 'published'">
<div class="btn btn-lg btn-block btn-valid btn-success text-u-c r-n" publish-project ng-disabled="projectForm.$invalid" translate>{{ 'app.shared.project.publish_your_project' }}</div> <div class="fab-button is-info button-full" publish-project ng-disabled="projectForm.$invalid" translate>{{ 'app.shared.project.publish_your_project' }}</div>
<div class="text-center font-bold text-u-c" translate>{{ 'app.shared.project.or' }}</div> <div class="text-center font-bold text-u-c" translate>{{ 'app.shared.project.or' }}</div>
</div> </div>
<input type="submit" <input type="submit"
ng-value="saveButtonValue()" ng-value="saveButtonValue()"
class="r-b btn-valid btn btn-warning btn-block p-lg btn-lg text-u-c" class="fab-button is-secondary button-full"
ng-disabled="projectForm.$invalid"/> ng-disabled="projectForm.$invalid"/>
</div> </div>
</section> </section>

View File

@ -18,9 +18,9 @@
<div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<input type="submit" ng-value="saveButtonValue()" class="btn btn-lg btn-warning m-t-xs text-u-c" <input type="submit" ng-value="saveButtonValue()" class="fab-button is-secondary m-t-xs"
ng-disabled="projectForm.$invalid"/> ng-disabled="projectForm.$invalid"/>
<div class="btn btn-lg btn-valid btn-success m-t-xs text-u-c" publish-project ng-if="project.state == 'draft'" ng-disabled="projectForm.$invalid" translate>{{ 'app.logged.projects_edit.publish' }}</div> <div class="fab-button is-info m-t-xs" publish-project ng-if="project.state == 'draft'" ng-disabled="projectForm.$invalid" translate>{{ 'app.logged.projects_edit.publish' }}</div>
</section> </section>
</div> </div>

View File

@ -13,7 +13,7 @@
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized(['admin','member', 'manager'])"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized(['admin','member', 'manager'])">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a class="btn btn-lg btn-warning bg-white b-2x rounded m-t-sm upper text-sm" ui-sref="app.logged.projects_new" role="button" translate>{{ 'app.public.projects_list.add_a_project' }}</a> <a class="fab-button is-secondary m-t-sm" ui-sref="app.logged.projects_new" role="button" translate>{{ 'app.public.projects_list.add_a_project' }}</a>
</section> </section>
</div> </div>
</div> </div>
@ -42,7 +42,7 @@
<div class="keywords"> <div class="keywords">
<input type="search" class="form-control" placeholder="{{ 'app.public.projects_list.keywords' | translate }}" ng-model="search.q"/> <input type="search" class="form-control" placeholder="{{ 'app.public.projects_list.keywords' | translate }}" ng-model="search.q"/>
<button type="submit" class="fab-button fab-button--icon-only is-secondary"><i class="fas fa-search"></i></button> <button type="submit" class="fab-button fab-button--icon-only is-secondary"><i class="fas fa-search"></i></button>
<!--<button type="submit" class="btn btn-warning" translate>{{ 'app.public.projects_list.search' }}</button>--> <!--<button type="submit" class="fab-button is-secondary" translate>{{ 'app.public.projects_list.search' }}</button>-->
</div> </div>
</form> </form>
@ -108,7 +108,7 @@
</div> </div>
<div class="text-center m m-b-lg" ng-if="!openlab.searchOverWholeNetwork && (projects.length != 0) && (isAuthorized('admin') || isAuthorized('manager'))"> <div class="text-center m m-b-lg" ng-if="!openlab.searchOverWholeNetwork && (projects.length != 0) && (isAuthorized('admin') || isAuthorized('manager'))">
<a class="btn bg-light text-black" ng-href="{{ zipUrl }}" target="_blank"> <a class="fab-button" ng-href="{{ zipUrl }}" target="_blank">
<i class="fa fa-download"></i> {{ 'app.public.projects_list.download_archive' | translate }} <i class="fa fa-download"></i> {{ 'app.public.projects_list.download_archive' | translate }}
</a> </a>
</div> </div>

View File

@ -16,8 +16,8 @@
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a ui-sref="app.logged.projects_edit({id: project.id})" ng-if="projectEditableBy(currentUser) || isAuthorized('admin')" class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs text-u-c text-sm"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a> <a ui-sref="app.logged.projects_edit({id: project.id})" ng-if="projectEditableBy(currentUser) || isAuthorized('admin')" class="fab-button is-secondary m-t-xs"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a>
<a ng-click="deleteProject(event)" ng-if="projectDeletableBy(currentUser) || isAuthorized('admin')" class="btn btn-lg btn-danger b-2x rounded no-b m-t-xs"><i class="fa fa-trash-o"></i></a> <a ng-click="deleteProject(event)" ng-if="projectDeletableBy(currentUser) || isAuthorized('admin')" class="fab-button is-alert m-t-xs"><i class="fa fa-trash-o"></i></a>
</section> </section>
</div> </div>

View File

@ -27,7 +27,7 @@
</div> </div>
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<button class="btn btn-valid btn-warning btn-block p-l btn-lg text-u-c r-b" ng-click="submitConfirmationNewForm()" ng-disabled="confirmationNewForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-primary upper" ng-click="submitConfirmationNewForm()" ng-disabled="confirmationNewForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button>
</div> </div>
</div> </div>
</div> </div>

View File

@ -57,7 +57,7 @@
</div> </div>
</div> </div>
<div ng-hide="slot.plan_ids.length > 0 && slot.plansGrouped.length === 0"> <div ng-hide="slot.plan_ids.length > 0 && slot.plansGrouped.length === 0">
<button class="btn btn-valid btn-warning btn-block text-u-c r-b" ng-click="validateSlot(slot)" ng-if="!slot.isValid" translate>{{ 'app.shared.cart.confirm_this_slot' }}</button> <button class="fab-button is-secondary button-full upper" ng-click="validateSlot(slot)" ng-if="!slot.isValid" translate>{{ 'app.shared.cart.confirm_this_slot' }}</button>
</div> </div>
<div class="clear"><a class="pull-right m-b-sm text-u-l ng-scope m-r-sm pointer" ng-click="removeSlot(slot, $index, $event)" ng-if="slot.isValid" translate>{{ 'app.shared.cart.remove_this_slot' }}</a></div> <div class="clear"><a class="pull-right m-b-sm text-u-l ng-scope m-r-sm pointer" ng-click="removeSlot(slot, $index, $event)" ng-if="slot.isValid" translate>{{ 'app.shared.cart.remove_this_slot' }}</a></div>
@ -68,7 +68,7 @@
<div ng-show="$root.modules.plans && isUserValidatedByType('subscription')"> <div ng-show="$root.modules.plans && isUserValidatedByType('subscription')">
<div ng-if="isSlotsValid() && !user.subscribed_plan" ng-show="!modePlans"> <div ng-if="isSlotsValid() && !user.subscribed_plan" ng-show="!modePlans">
<p class="font-sbold text-base l-h-2x" translate>{{ 'app.shared.cart.to_benefit_from_attractive_prices' }}</p> <p class="font-sbold text-base l-h-2x" translate>{{ 'app.shared.cart.to_benefit_from_attractive_prices' }}</p>
<div><button class="btn btn-warning-full rounded btn-block text-xs" ng-click="showPlans()" translate>{{ 'app.shared.cart.view_our_subscriptions' }}</button></div> <div><button class="fab-button is-secondary button-full button-s" ng-click="showPlans()" translate>{{ 'app.shared.cart.view_our_subscriptions' }}</button></div>
<p class="font-bold text-base text-u-c text-center m-b-xs" translate>{{ 'app.shared.cart.or' }}</p> <p class="font-bold text-base text-u-c text-center m-b-xs" translate>{{ 'app.shared.cart.or' }}</p>
</div> </div>
@ -103,7 +103,7 @@
</div> </div>
<div class="widget-footer no-padder" ng-if="events.reserved.length > 0 || (selectedPlan && !events.reserved)"> <div class="widget-footer no-padder" ng-if="events.reserved.length > 0 || (selectedPlan && !events.reserved)">
<button class="btn btn-valid btn-info btn-block p-l btn-lg text-u-c r-b text-base" ng-click="payCart()" ng-if="isSlotsValid() && (!modePlans || selectedPlan)">{{ 'app.shared.cart.confirm_and_pay' | translate }} {{amountTotal | currency}}</button> <button class="fab-button is-info button-full upper" ng-click="payCart()" ng-if="isSlotsValid() && (!modePlans || selectedPlan)">{{ 'app.shared.cart.confirm_and_pay' | translate }} {{amountTotal | currency}}</button>
</div> </div>
<div class="widget-content no-bg auto wrapper" ng-show="events.paid && events.paid.length > 0"> <div class="widget-content no-bg auto wrapper" ng-show="events.paid && events.paid.length > 0">

View File

@ -1,35 +1,35 @@
<div class="modal-header"> <div class="modal-header">
<h3 class="modal-title" translate>{{ 'app.shared.plan.new_partner' }}</h3> <h3 class="modal-title" translate>{{ 'app.admin.partner_modal.title' }}</h3>
</div> </div>
<div class="modal-body m-lg"> <div class="modal-body m-lg">
<form name="partnerForm"> <form name="partnerForm">
<div class="form-group" ng-class="{'has-error': partnerForm['partner[first_name]'].$dirty && partnerForm['partner[first_name]'].$invalid}"> <div class="form-group" ng-class="{'has-error': partnerForm['partner[first_name]'].$dirty && partnerForm['partner[first_name]'].$invalid}">
<label for="partner[first_name]" translate>{{ 'app.shared.plan.first_name' }}</label> <label for="partner[first_name]" translate>{{ 'app.admin.partner_modal.first_name' }}</label>
<div class="input-group"> <div class="input-group">
<span class="input-group-addon"><i class="fa fa-user"></i></span> <span class="input-group-addon"><i class="fa fa-user"></i></span>
<input type="text" class="form-control" required="true" ng-model="partner.first_name" id="partner[first_name]" name="partner[first_name]" /> <input type="text" class="form-control" required="true" ng-model="partner.first_name" id="partner[first_name]" name="partner[first_name]" />
</div> </div>
<span class="help-block" ng-show="partnerForm['partner[first_name]'].$dirty && partnerForm['partner[first_name]'].$error.required" translate>{{ 'app.shared.plan.first_name_is_required' }}</span> <span class="help-block" ng-show="partnerForm['partner[first_name]'].$dirty && partnerForm['partner[first_name]'].$error.required" translate>{{ 'app.admin.partner_modal.field_is_required' }}</span>
</div> </div>
<div class="form-group" ng-class="{'has-error': partnerForm['partner[last_name]'].$dirty && partnerForm['partner[last_name]'].$invalid}"> <div class="form-group" ng-class="{'has-error': partnerForm['partner[last_name]'].$dirty && partnerForm['partner[last_name]'].$invalid}">
<label for="partner[last_name]" translate>{{ 'app.shared.plan.surname' }}</label> <label for="partner[last_name]" translate>{{ 'app.admin.partner_modal.surname' }}</label>
<div class="input-group"> <div class="input-group">
<span class="input-group-addon"><i class="fa fa-user"></i></span> <span class="input-group-addon"><i class="fa fa-user"></i></span>
<input type="text" class="form-control" required="true" ng-model="partner.last_name" id="partner[last_name]" name="partner[last_name]" /> <input type="text" class="form-control" required="true" ng-model="partner.last_name" id="partner[last_name]" name="partner[last_name]" />
</div> </div>
<span class="help-block" ng-show="partnerForm['partner[last_name]'].$dirty && partnerForm['partner[last_name]'].$error.required" translate>{{ 'app.shared.plan.surname_is_required' }}</span> <span class="help-block" ng-show="partnerForm['partner[last_name]'].$dirty && partnerForm['partner[last_name]'].$error.required" translate>{{ 'app.admin.partner_modal.field_is_required' }}</span>
</div> </div>
<div class="form-group" ng-class="{'has-error': partnerForm['partner[email]'].$dirty && partnerForm['partner[email]'].$invalid}"> <div class="form-group" ng-class="{'has-error': partnerForm['partner[email]'].$dirty && partnerForm['partner[email]'].$invalid}">
<label for="partner[email]" translate>{{ 'app.shared.plan.email_address' }}</label> <label for="partner[email]" translate>{{ 'app.admin.partner_modal.email' }}</label>
<div class="input-group"> <div class="input-group">
<span class="input-group-addon"><i class="fa fa-envelope"></i></span> <span class="input-group-addon"><i class="fa fa-envelope"></i></span>
<input type="email" class="form-control" required="true" ng-model="partner.email" id="partner[email]" name="partner[email]" /> <input type="email" class="form-control" required="true" ng-model="partner.email" id="partner[email]" name="partner[email]" />
</div> </div>
<span class="help-block" ng-show="partnerForm['partner[email]'].$dirty && partnerForm['partner[email]'].$error.required" translate>{{ 'app.shared.plan.email_address_is_required' }}</span> <span class="help-block" ng-show="partnerForm['partner[email]'].$dirty && partnerForm['partner[email]'].$error.required" translate>{{ 'app.admin.partner_modal.field_is_required' }}</span>
</div> </div>
</form> </form>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button class="btn btn-primary" ng-click="ok()" ng-disabled="!partnerForm.$valid" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary" ng-click="ok()" ng-disabled="!partnerForm.$valid" translate>{{ 'app.shared.buttons.confirm' }}</button>
<button class="btn btn-warning" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -8,7 +8,7 @@
<p><strong>{{object.start | amDateFormat: 'LL'}} : {{object.start | amDateFormat:'LT'}} - {{object.end | amDateFormat:'LT'}}</strong></p> <p><strong>{{object.start | amDateFormat: 'LL'}} : {{object.start | amDateFormat:'LT'}} - {{object.end | amDateFormat:'LT'}}</strong></p>
</div> </div>
<div class="modal-footer btn-stack"> <div class="modal-footer btn-stack">
<button class="btn btn-warning" ng-class="{'m-b':object.cancelable&&object.movable}" ng-click="ok('cancel')" ng-show="object.cancelable" translate>{{ 'app.shared.confirm_modify_slot_modal.cancel_this_reservation' }}</button> <button class="fab-button is-secondary button-full" ng-class="{'m-b':object.cancelable&&object.movable}" ng-click="ok('cancel')" ng-show="object.cancelable" translate>{{ 'app.shared.confirm_modify_slot_modal.cancel_this_reservation' }}</button>
<button class="btn btn-info" ng-click="ok('move')" ng-show="object.movable" translate>{{ 'app.shared.confirm_modify_slot_modal.i_want_to_change_date' }}</button> <button class="fab-button is-info button-full" ng-click="ok('move')" ng-show="object.movable" translate>{{ 'app.shared.confirm_modify_slot_modal.i_want_to_change_date' }}</button>
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button> <button class="fab-button button-full" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
</div> </div>

View File

@ -57,7 +57,7 @@
</div> </div>
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<button class="btn btn-valid btn-warning btn-block p-l btn-lg text-u-c r-b" ng-click="login()" ng-disabled="loginForm.$invalid" translate translate-default="OK">{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary button-full" ng-click="login()" ng-disabled="loginForm.$invalid" translate translate-default="OK">{{ 'app.shared.buttons.confirm' }}</button>
</div> </div>
</div> </div>
<p class="text-center font-sbold" ng-show="publicRegistrations"> <p class="text-center font-sbold" ng-show="publicRegistrations">

View File

@ -15,11 +15,11 @@
<ul class="nav navbar-nav hidden-xs"> <ul class="nav navbar-nav hidden-xs">
<li class="about-page-link"> <li class="about-page-link">
<a href class="about-link font-sbold text-sm" ui-sref="app.public.about" ng-show="!aboutPage"> <a href class="about-link font-sbold text-sm" ui-sref="app.public.about" ng-show="!aboutPage">
<span class="label label-theme rounded text-lg text-white m-r-sm font-ebold">?</span> <span class="label label-theme label-icon rounded text-lg m-r-sm font-ebold">?</span>
{{ linkName }} {{ linkName }}
</a> </a>
<a href class="about-link font-sbold text-sm" ui-sref="app.public.home" ng-show="aboutPage"> <a href class="about-link font-sbold text-sm" ui-sref="app.public.home" ng-show="aboutPage">
<span class="label label-theme label-icon rounded text-lg text-white m-r-sm font-ebold"><i class="fa fa-caret-up" ng-show="aboutPage"></i></span> <span class="label label-theme label-icon rounded text-lg m-r-sm font-ebold"><i class="fa fa-caret-up" ng-show="aboutPage"></i></span>
{{ 'app.public.common.return' | translate }} {{ 'app.public.common.return' | translate }}
</a> </a>
</li> </li>

View File

@ -46,7 +46,7 @@
</div> </div>
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<button class="btn btn-valid btn-warning btn-block p-l btn-lg text-u-c r-b" ng-click="changePassword()" ng-disabled="passwordEditForm.$invalid" translate>{{ 'app.shared.buttons.confirm'}}</button> <button class="fab-button is-secondary button-full" ng-click="changePassword()" ng-disabled="passwordEditForm.$invalid" translate>{{ 'app.shared.buttons.confirm'}}</button>
</div> </div>
</div> </div>
</div> </div>

View File

@ -26,7 +26,7 @@
</div> </div>
<div class="panel-footer no-padder"> <div class="panel-footer no-padder">
<button class="btn btn-valid btn-warning btn-block p-l btn-lg text-u-c r-b" ng-click="sendReset()" ng-disabled="passwordNewForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-primary upper" ng-click="sendReset()" ng-disabled="passwordNewForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button>
</div> </div>
</div> </div>
</div> </div>

View File

@ -322,5 +322,5 @@
</div> </div>
</div> </div>
<div class="modal-footer no-padder"> <div class="modal-footer no-padder">
<button class="btn btn-valid btn-warning btn-block p-l btn-lg text-u-c r-b" ng-click="ok()" ng-disabled="signupForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button> <button class="fab-button is-secondary button-full" ng-click="ok()" ng-disabled="signupForm.$invalid" translate>{{ 'app.shared.buttons.confirm' }}</button>
</div> </div>

View File

@ -13,7 +13,7 @@
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized('admin')"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md" ng-if="isAuthorized('admin')">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs" ui-sref="app.admin.space_new" role="button" translate>{{ 'app.public.spaces_list.add_a_space' }}</a> <a class="fab-button is-secondary m-t-xs" ui-sref="app.admin.space_new" role="button" translate>{{ 'app.public.spaces_list.add_a_space' }}</a>
</section> </section>
</div> </div>
</div> </div>
@ -39,7 +39,7 @@
</div> </div>
</div> </div>
<div class="col-md-3 col-md-offset-6 m-t-n row-centered" ng-if="isAuthorized(['admin', 'manager'])"> <div class="col-md-3 col-md-offset-6 m-t-n row-centered" ng-if="isAuthorized(['admin', 'manager'])">
<a role="button" ui-sref="app.admin.calendar" class="btn btn-lg btn-default rounded m-t-sm text-sm"> <a role="button" ui-sref="app.admin.calendar" class="fab-button m-t-sm">
<i class="fa fa-calendar-check-o m-r" aria-hidden="true"></i><span translate>{{ 'app.public.spaces_list.new_availability' }}</span> <i class="fa fa-calendar-check-o m-r" aria-hidden="true"></i><span translate>{{ 'app.public.spaces_list.new_availability' }}</span>
</a> </a>
</div> </div>

View File

@ -15,10 +15,10 @@
<div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a ng-click="reserveSpace($event)" class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs" ng-if="!isAuthorized('admin')" translate>{{ 'app.public.space_show.book_this_space' }}</a> <a ng-click="reserveSpace($event)" class="fab-button is-secondary m-t-xs" ng-if="!isAuthorized('admin')" translate>{{ 'app.public.space_show.book_this_space' }}</a>
<a ui-sref="app.admin.space_edit({id:space.slug})" ng-if="isAuthorized('admin')" class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a> <a ui-sref="app.admin.space_edit({id:space.slug})" ng-if="isAuthorized('admin')" class="fab-button is-secondary m-t-xs"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a>
<a ng-click="deleteSpace($event)" ng-if="isAuthorized('admin')" class="btn btn-lg btn-danger b-2x rounded no-b m-t-xs"><i class="fa fa-trash-o"></i></a> <a ng-click="deleteSpace($event)" ng-if="isAuthorized('admin')" class="fab-button is-alert m-t-xs"><i class="fa fa-trash-o"></i></a>
</section> </section>
</div> </div>

View File

@ -13,7 +13,7 @@
</div> </div>
<div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-3 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs" <a class="fab-button is-secondary m-t-xs"
ui-sref="app.logged.trainings_reserve({id:'all'})" ui-sref="app.logged.trainings_reserve({id:'all'})"
ng-hide="mode == 'all'" ng-hide="mode == 'all'"
role="button" role="button"

View File

@ -15,10 +15,10 @@
<div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md"> <div class="col-xs-12 col-sm-12 col-md-4 b-t hide-b-md">
<section class="heading-actions wrapper"> <section class="heading-actions wrapper">
<a ng-click="reserveTraining(training, $event)" class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs" ng-if="!isAuthorized('admin')" translate>{{ 'app.public.training_show.book_this_training' }}</a> <a ng-click="reserveTraining(training, $event)" class="fab-button is-secondary m-t-xs" ng-if="!isAuthorized('admin')" translate>{{ 'app.public.training_show.book_this_training' }}</a>
<a ui-sref="app.admin.trainings_edit({id: training.id})" ng-if="isAuthorized('admin')" class="btn btn-lg btn-warning bg-white b-2x rounded m-t-xs"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a> <a ui-sref="app.admin.trainings_edit({id: training.id})" ng-if="isAuthorized('admin')" class="fab-button is-secondary m-t-xs"><i class="fa fa-edit"></i> {{ 'app.shared.buttons.edit' | translate }}</a>
<a ng-click="delete(training)" ng-if="isAuthorized('admin')" class="btn btn-lg btn-danger b-2x rounded no-b m-t-xs"><i class="fa fa-trash-o"></i></a> <a ng-click="delete(training)" ng-if="isAuthorized('admin')" class="fab-button is-alert m-t-xs"><i class="fa fa-trash-o"></i></a>
</section> </section>
</div> </div>
</div> </div>

View File

@ -4,10 +4,6 @@
# a picture for the background of the user's profile. # a picture for the background of the user's profile.
# There's only one stylesheet record in the database, which is updated on each colour change. # There's only one stylesheet record in the database, which is updated on each colour change.
class Stylesheet < ApplicationRecord class Stylesheet < ApplicationRecord
# brightness limits to change the font color to black or white
BRIGHTNESS_HIGH_LIMIT = 160
BRIGHTNESS_LOW_LIMIT = 40
validates :contents, presence: true validates :contents, presence: true
## ===== COMMON ===== ## ===== COMMON =====
@ -81,15 +77,15 @@ class Stylesheet < ApplicationRecord
end end
def self.primary_text_color def self.primary_text_color
Stylesheet.primary.paint.brightness >= BRIGHTNESS_HIGH_LIMIT ? 'black' : 'white' Stylesheet.primary.paint.brightness > 100 ? 'black' : 'white'
end end
def self.primary_decoration_color def self.primary_decoration_color
Stylesheet.primary.paint.brightness <= BRIGHTNESS_LOW_LIMIT ? 'white' : 'black' Stylesheet.primary.paint.brightness > 100 ? 'black' : 'white'
end end
def self.secondary_text_color def self.secondary_text_color
Stylesheet.secondary.paint.brightness <= BRIGHTNESS_LOW_LIMIT ? 'white' : 'black' Stylesheet.secondary.paint.brightness > 100 ? 'black' : 'white'
end end
def self.theme_css def self.theme_css

View File

@ -28,6 +28,7 @@ class EventService
price_cat[:amount] = to_centimes(price_cat[:amount]) price_cat[:amount] = to_centimes(price_cat[:amount])
end end
end end
params[:pre_registration_end_date] = Date.parse(params[:pre_registration_end_date]).end_of_day if params[:pre_registration_end_date]
# return the resulting params object # return the resulting params object
params params
end end

View File

@ -29,10 +29,9 @@ class InvoicesService
) )
end end
unless filters[:date].nil? unless filters[:date].nil?
invoices = invoices.where( start_at = Date.parse(filters[:date]).in_time_zone
"date_trunc('day', invoices.created_at) = :search", end_at = start_at.end_of_day
search: "%#{Time.iso8601(filters[:date]).in_time_zone.to_date}%" invoices = invoices.where(created_at: (start_at..end_at))
)
end end
invoices invoices

View File

@ -127,7 +127,7 @@ class Orders::OrderService
def filter_by_period(orders, filters) def filter_by_period(orders, filters)
return orders unless filters[:period_from].present? && filters[:period_to].present? return orders unless filters[:period_from].present? && filters[:period_to].present?
orders.where(created_at: Time.zone.parse(filters[:period_from])..Time.zone.parse(filters[:period_to]).end_of_day) orders.where(created_at: Date.parse(filters[:period_from]).in_time_zone..Date.parse(filters[:period_to]).in_time_zone.end_of_day)
end end
def orders_ordering(orders, filters) def orders_ordering(orders, filters)

View File

@ -146,10 +146,9 @@ class PaymentScheduleService
) )
end end
unless filters[:date].nil? unless filters[:date].nil?
ps = ps.where( start_at = Date.parse(filters[:date]).in_time_zone
"date_trunc('day', payment_schedules.created_at) = :search OR date_trunc('day', payment_schedule_items.due_date) = :search", end_at = start_at.end_of_day
search: "%#{Time.zone.iso8601(filters[:date]).to_date}%" ps = ps.where("(payment_schedules.created_at BETWEEN :start_at AND :end_at) OR (payment_schedule_items.due_date BETWEEN :start_at AND :end_at)", start_at: start_at, end_at: end_at).references(:payment_schedule_items)
)
end end
ps ps

View File

@ -32,8 +32,8 @@ class ProjectService
end end
end end
created_from = Time.zone.parse(query_params['from_date']).beginning_of_day if query_params['from_date'].present? created_from = Date.parse(query_params['from_date']).in_time_zone.beginning_of_day if query_params['from_date'].present?
created_to = Time.zone.parse(query_params['to_date']).end_of_day if query_params['to_date'].present? created_to = Date.parse(query_params['to_date']).in_time_zone.end_of_day if query_params['to_date'].present?
if created_from || created_to if created_from || created_to
records = records.where(created_at: created_from..created_to) records = records.where(created_at: created_from..created_to)
end end

View File

@ -247,6 +247,7 @@ en:
first_name: "First name" first_name: "First name"
surname: "Last name" surname: "Last name"
email: "Email address" email: "Email address"
field_is_required: "This field is required"
plan_pricing_form: plan_pricing_form:
prices: "Prices" prices: "Prices"
about_prices: "The prices defined here will apply to members subscribing to this plan, for machines and spaces. All prices are per hour." about_prices: "The prices defined here will apply to members subscribing to this plan, for machines and spaces. All prices are per hour."

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