mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2025-01-18 07:52:23 +01:00
Merge remote-tracking branch 'github/master' into dev
This commit is contained in:
commit
7d54341d98
@ -39,7 +39,7 @@ Some other used libraries/components are licenced under the terms of the
|
||||
|
||||
Errors and omissions excepted, the other external libraries used in this
|
||||
project are licenced under the terms of the [MIT Licence](https://opensource.org/licenses/MIT).
|
||||
Please refer to the libraries documentation for more informations about
|
||||
Please refer to the libraries documentation for more information about
|
||||
their licences.
|
||||
|
||||
Complete lists of used libraries are available in `bower.json` for the
|
||||
|
10
README.md
10
README.md
@ -159,7 +159,7 @@ This value is only used when deploying with Docker, otherwise this is configured
|
||||
POSTGRES_PASSWORD
|
||||
|
||||
Password for the PostgreSQL user, as specified in `database.yml`.
|
||||
Please see [Setup the FabManager database in PostgreSQL](#setup-fabmanager-in-postgresql) for informations on how to create a user and set his password.
|
||||
Please see [Setup the FabManager database in PostgreSQL](#setup-fabmanager-in-postgresql) for information on how to create a user and set his password.
|
||||
This value is only used when deploying with Docker, otherwise this is configured in `config/database.yml`.
|
||||
|
||||
REDIS_HOST
|
||||
@ -222,7 +222,7 @@ Identifier of your Google Analytics account.
|
||||
|
||||
Unique identifier of your [Disqus](http://www.disqus.com) forum.
|
||||
Disqus forums are used to allow visitors to comment on projects.
|
||||
See https://help.disqus.com/customer/portal/articles/466208-what-s-a-shortname- for more informations.
|
||||
See https://help.disqus.com/customer/portal/articles/466208-what-s-a-shortname- for more information.
|
||||
|
||||
TWITTER_NAME
|
||||
|
||||
@ -387,7 +387,7 @@ To create it, please follow these instructions:
|
||||
- `db/migrate/20160915105234_add_transformation_to_o_auth2_mapping.rb` is using [jsonb](https://www.postgresql.org/docs/9.4/static/datatype-json.html), a PostgreSQL 9.4+ datatype.
|
||||
- If you intend to contribute to the project code, you will need to run the test suite with `rake test`.
|
||||
This also requires your user to have the _SUPERUSER_ role.
|
||||
Please see the [known issues](#known-issues) section for more informations about this.
|
||||
Please see the [known issues](#known-issues) section for more information about this.
|
||||
|
||||
<a name="elasticsearch"></a>
|
||||
## ElasticSearch
|
||||
@ -518,7 +518,7 @@ Back-end translations uses the [Ruby on Rails syntax](http://guides.rubyonrails.
|
||||
|
||||
In each cases, some inline comments are included in the localisation files.
|
||||
They can be recognized as they start with the sharp character (#).
|
||||
These comments are not required to be translated, they are intended to help the translator to have some context informations about the sentence to translate.
|
||||
These comments are not required to be translated, they are intended to help the translator to have some context information about the sentence to translate.
|
||||
|
||||
|
||||
<a name="i18n-configuration"></a>
|
||||
@ -652,7 +652,7 @@ Fab-manager can be connected to a [Single Sign-On](https://en.wikipedia.org/wiki
|
||||
Currently OAuth 2 is the only supported protocol for SSO authentication.
|
||||
|
||||
For an example of how to use configure a SSO in Fab-manager, please read [sso_with_github.md](doc/sso_with_github.md).
|
||||
Developers may find informations on how to implement their own authentication protocol in [sso_authentication.md](doc/sso_authentication.md).
|
||||
Developers may find information on how to implement their own authentication protocol in [sso_authentication.md](doc/sso_authentication.md).
|
||||
|
||||
<a name="known-issues"></a>
|
||||
## Known issues
|
||||
|
@ -71,7 +71,7 @@ config(['$httpProvider', 'AuthProvider', "growlProvider", "unsavedWarningsConfig
|
||||
// Angular-xeditable (click-to-edit elements, used in admin backoffice)
|
||||
editableOptions.theme = 'bs3';
|
||||
|
||||
// Alter the UI-Router's $state, registering into some informations concerning the previous $state.
|
||||
// Alter the UI-Router's $state, registering into some information concerning the previous $state.
|
||||
// This is used to allow the user to navigate to the previous state
|
||||
$rootScope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams){
|
||||
$state.prevState = fromState;
|
||||
|
@ -217,7 +217,7 @@ Application.Controllers.controller "GraphsController", ["$scope", "$state", "$ro
|
||||
for it_st in [0.. cur_type.subtypes.length-1] by 1 # when we've found it, iterate over its subtypes ...
|
||||
cur_subtype = cur_type.subtypes[it_st]
|
||||
if subgroup.key == cur_subtype.key # ... which match $SUBTYPE
|
||||
# then we construct NVD3 dataSource according to these informations
|
||||
# then we construct NVD3 dataSource according to these information
|
||||
dataSource =
|
||||
values: []
|
||||
key: cur_subtype.label
|
||||
|
@ -125,7 +125,7 @@ Application.Controllers.controller "InvoicesController", ["$scope", "$state", 'I
|
||||
sample = sample.replace(/y+(?![^\[]*])/g, (match, offset, string) ->
|
||||
padWithZeros(8, match.length)
|
||||
)
|
||||
# date informations
|
||||
# date information
|
||||
sample = sample.replace(/[YMD]+(?![^\[]*])/g, (match, offset, string) ->
|
||||
$scope.today.format(match)
|
||||
)
|
||||
@ -163,7 +163,7 @@ Application.Controllers.controller "InvoicesController", ["$scope", "$state", 'I
|
||||
sample = sample.replace(/d+(?![^\[]*])/g, (match, offset, string) ->
|
||||
padWithZeros(2, match.length)
|
||||
)
|
||||
# date informations
|
||||
# date information
|
||||
sample = sample.replace(/[YMD]+(?![^\[]*])/g, (match, offset, string) ->
|
||||
$scope.today.format(match)
|
||||
)
|
||||
@ -334,7 +334,7 @@ Application.Controllers.controller "InvoicesController", ["$scope", "$state", 'I
|
||||
|
||||
|
||||
##
|
||||
# Callback to save the value of the legal informations zone when editing is done
|
||||
# Callback to save the value of the legal information zone when editing is done
|
||||
##
|
||||
$scope.legalsEditEnd = (event) ->
|
||||
parsed = parseHtml($scope.invoice.legals.content)
|
||||
|
@ -303,7 +303,7 @@ Application.Controllers.controller "ReserveMachineController", ["$scope", "$stat
|
||||
## fullCalendar event. An already booked slot that the user want to modify
|
||||
$scope.slotToModify = null
|
||||
|
||||
## indicates the state of the current view : calendar or plans informations
|
||||
## indicates the state of the current view : calendar or plans information
|
||||
$scope.plansAreShown = false
|
||||
|
||||
## will store the user's plan if he choosed to buy one
|
||||
|
@ -260,7 +260,7 @@ Application.Controllers.controller "EditProfileController", ["$scope", "$rootSco
|
||||
##
|
||||
Application.Controllers.controller "ShowProfileController", ["$scope", 'memberPromise', 'SocialNetworks', ($scope, memberPromise, SocialNetworks) ->
|
||||
|
||||
## Selected user's informations
|
||||
## Selected user's information
|
||||
$scope.user = memberPromise # DEPENDENCY WITH NAVINUM GAMIFICATION PLUGIN !!!!
|
||||
|
||||
## List of social networks associated with this user and toggle 'show all' state
|
||||
|
@ -20,13 +20,13 @@ Application.Controllers.controller "CompleteProfileController", ["$scope", "$roo
|
||||
## name of the current fablab application (eg. "Fablab de la Casemate")
|
||||
$scope.fablabName = settingsPromise.fablab_name
|
||||
|
||||
## informations from the current SSO provider
|
||||
## information from the current SSO provider
|
||||
$scope.activeProvider = activeProviderPromise
|
||||
|
||||
## list of user's groups (student/standard/...)
|
||||
$scope.groups = groupsPromise
|
||||
|
||||
## current user, contains informations retrieved from the SSO
|
||||
## current user, contains information retrieved from the SSO
|
||||
$scope.user = memberPromise
|
||||
|
||||
## disallow the user to change his password as he connect from SSO
|
||||
|
@ -109,7 +109,7 @@ Application.Controllers.controller "ReserveTrainingController", ["$scope", "$sta
|
||||
groupObj.plans.push(plan) if plan.group_id == group.id
|
||||
$scope.plansClassifiedByGroup.push(groupObj)
|
||||
|
||||
## indicates the state of the current view : calendar or plans informations
|
||||
## indicates the state of the current view : calendar or plans information
|
||||
$scope.plansAreShown = false
|
||||
|
||||
## indicates if the selected training was validated (ie. added to the shopping cart)
|
||||
|
@ -1,4 +1,4 @@
|
||||
<h2 translate>{{ 'general_informations' }}</h2>
|
||||
<h2 translate>{{ 'general_information' }}</h2>
|
||||
<input type="hidden" name="_method" value="{{method}}">
|
||||
|
||||
<div class="form-group" ng-class="{'has-error': planForm['plan[base_name]'].$dirty && planForm['plan[base_name]'].$invalid}">
|
||||
|
@ -68,7 +68,7 @@
|
||||
|
||||
<section class="widget panel b-a m m-t-lg">
|
||||
<div class="panel-heading b-b small">
|
||||
<h3 translate>{{ 'informations_and_booking' }}</h3>
|
||||
<h3 translate>{{ 'information_and_booking' }}</h3>
|
||||
</div>
|
||||
|
||||
<div class="panel-content wrapper">
|
||||
|
@ -61,7 +61,7 @@
|
||||
</div>
|
||||
|
||||
<br ng-show="!plan.plan_file_url"> <!-- TODO Refacto with CSS -->
|
||||
<a ng-href="{{ plan.plan_file_url }}" ng-show="plan.plan_file_url" target="_blank" translate>{{ 'more_informations' }}</a>
|
||||
<a ng-href="{{ plan.plan_file_url }}" ng-show="plan.plan_file_url" target="_blank" translate>{{ 'more_information' }}</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@ -313,7 +313,7 @@
|
||||
|
||||
<!-- allow receive newsletter -->
|
||||
<div class="form-group">
|
||||
<label for="allowNewsletter" translate>{{ 'i_accept_to_receive_informations_from_the_fablab' }}</label>
|
||||
<label for="allowNewsletter" translate>{{ 'i_accept_to_receive_information_from_the_fablab' }}</label>
|
||||
<input bs-switch
|
||||
ng-model="user.is_allow_newsletter"
|
||||
id="allowNewsletter"
|
||||
|
@ -213,7 +213,7 @@ class User < ActiveRecord::Base
|
||||
|
||||
where(provider: auth.provider, uid: auth.uid).first_or_create.tap do |user|
|
||||
# execute this regardless of whether record exists or not (-> User#tap)
|
||||
# this will init or update the user thanks to the informations retrieved from the SSO
|
||||
# this will init or update the user thanks to the information retrieved from the SSO
|
||||
user.profile ||= Profile.new
|
||||
auth.info.mapping.each do |key, value|
|
||||
user.set_data_from_sso_mapping(key, value)
|
||||
|
@ -27,7 +27,7 @@ module PDF
|
||||
image StringIO.new( Base64.decode64(img_b64.value) ), :fit => [415,40]
|
||||
move_down 20
|
||||
font('Open-Sans', :size => 10) do
|
||||
# general informations
|
||||
# general information
|
||||
if invoice.is_a?(Avoir)
|
||||
text I18n.t('invoices.refund_invoice_reference', REF:invoice.reference), :leading => 3
|
||||
else
|
||||
@ -47,7 +47,7 @@ module PDF
|
||||
text I18n.t('invoices.invoice_issued_on_DATE', DATE:I18n.l(invoice.created_at.to_date))
|
||||
end
|
||||
|
||||
# user/organization's informations
|
||||
# user/organization's information
|
||||
if invoice&.user&.profile&.organization
|
||||
name = invoice.user.profile.organization.name
|
||||
else
|
||||
@ -261,7 +261,7 @@ module PDF
|
||||
end
|
||||
text payment_verbose
|
||||
|
||||
# important informations
|
||||
# important information
|
||||
move_down 40
|
||||
txt = parse_html(Setting.find_by({name: 'invoice_text'}).value)
|
||||
txt.each_line do |line|
|
||||
@ -269,7 +269,7 @@ module PDF
|
||||
end
|
||||
|
||||
|
||||
# address and legals informations
|
||||
# address and legals information
|
||||
move_down 40
|
||||
txt = parse_html(Setting.find_by({name: 'invoice_legals'}).value)
|
||||
txt.each_line do |line|
|
||||
|
@ -1,5 +1,5 @@
|
||||
json.title notification.notification_type
|
||||
json.description t('.account_imported_from_PROVIDER_(UID)_has_completed_its_informations_html',
|
||||
json.description t('.account_imported_from_PROVIDER_(UID)_has_completed_its_information_html',
|
||||
PROVIDER: notification.attached_object.provider,
|
||||
UID: notification.attached_object.uid)
|
||||
json.url notification_url(notification, format: :json)
|
@ -4,7 +4,7 @@
|
||||
<p><%= t('.body.new_account_imported', ID: @attached_object.id, PROVIDER: provider.name) %><br/>
|
||||
<%= t('.body.provider_uid', UID:@attached_object.uid) %></p>
|
||||
<% if provider.sso_fields.size > 1 %>
|
||||
<p><%= t('.body.known_informations') %></p>
|
||||
<p><%= t('.body.known_information') %></p>
|
||||
<ul>
|
||||
<% for field in provider.sso_fields %>
|
||||
<% value = @attached_object.get_data_from_sso_mapping(field) %>
|
||||
|
@ -80,7 +80,7 @@ en:
|
||||
phone_number: "Phone number"
|
||||
phone_number_is_required: "Phone number is required."
|
||||
i_authorize_Fablab_users_registered_on_the_site_to_contact_me: "I authorize FabLab users, registered on the site, to contact me"
|
||||
i_accept_to_receive_informations_from_the_fablab: "I accept to receive informations from the FabLab"
|
||||
i_accept_to_receive_information_from_the_fablab: "I accept to receive information from the FabLab"
|
||||
i_ve_read_and_i_accept_: "I've read and I accept"
|
||||
_the_fablab_policy: "the FabLab policy"
|
||||
|
||||
@ -200,7 +200,7 @@ en:
|
||||
i_choose_that_plan: "I choose that plan"
|
||||
i_subscribe_online: "I subscribe online"
|
||||
i_already_subscribed: "I already subscribed"
|
||||
more_informations: "More informations"
|
||||
more_information: "More information"
|
||||
your_subscription_expires_on_the_DATE: "Your subscription expires on the {{DATE}}" # angular interpolation
|
||||
my_group: "My group"
|
||||
his_group: "{GENDER, select, male{His} female{Her} other{Its}} group" # messageFormat interpolation
|
||||
|
@ -80,7 +80,7 @@ fr:
|
||||
phone_number: "Numéro de téléphone"
|
||||
phone_number_is_required: "Le numéro de téléphone est requis."
|
||||
i_authorize_Fablab_users_registered_on_the_site_to_contact_me: "J'autorise les utilisateurs du Fab Lab inscrits sur le site à me contacter"
|
||||
i_accept_to_receive_informations_from_the_fablab: "J'accepte de recevoir des informations du Fab Lab"
|
||||
i_accept_to_receive_information_from_the_fablab: "J'accepte de recevoir des informations du Fab Lab"
|
||||
i_ve_read_and_i_accept_: "J'ai lu et j'accepte"
|
||||
_the_fablab_policy: "la charte d'utilisation du Fab Lab"
|
||||
|
||||
@ -201,7 +201,7 @@ fr:
|
||||
i_choose_that_plan: "Je choisis cette formule"
|
||||
i_subscribe_online: "Je m'abonne en ligne"
|
||||
i_already_subscribed: "Je suis déjà abonné"
|
||||
more_informations: "Plus d'infos"
|
||||
more_information: "Plus d'infos"
|
||||
your_subscription_expires_on_the_DATE: "Votre abonnement expire au {{DATE}}" # angular interpolation
|
||||
my_group: "Mon groupe"
|
||||
his_group: "Son groupe" # messageFormat interpolation
|
||||
@ -228,7 +228,7 @@ fr:
|
||||
# détails d'un événement et réservation
|
||||
event_description: "Description de l'évènement"
|
||||
downloadable_documents: "Documents à télécharger"
|
||||
informations_and_booking: "Informations et réservation"
|
||||
information_and_booking: "Informations et réservation"
|
||||
beginning: "Début :"
|
||||
ending: "Fin :"
|
||||
opening_hours: "Horaires :"
|
||||
|
@ -199,7 +199,7 @@ en:
|
||||
|
||||
plan:
|
||||
# subscription plan edition form
|
||||
general_informations: "General informations"
|
||||
general_information: "General information"
|
||||
name_length_must_be_less_than_24_characters: "Name length must be less than 24 characters."
|
||||
type_is_required: "Type is required."
|
||||
group: "Group"
|
||||
|
@ -186,7 +186,7 @@ en:
|
||||
notify_admin_member_create_reservation:
|
||||
a_RESERVABLE_reservation_was_made_by_USER_html: "A <strong><em>%{RESERVABLE}</em></strong> reservation was made by <strong><em>%{USER}</em></strong>."
|
||||
notify_admin_profile_complete:
|
||||
account_imported_from_PROVIDER_(UID)_has_completed_its_informations_html: "Account imported from <strong><em>%{PROVIDER} </strong> (%{UID})</em> has completed its informations."
|
||||
account_imported_from_PROVIDER_(UID)_has_completed_its_information_html: "Account imported from <strong><em>%{PROVIDER} </strong> (%{UID})</em> has completed its information."
|
||||
notify_admin_slot_is_canceled:
|
||||
USER_s_reservation_on_the_DATE_was_cancelled_remember_to_generate_a_refund_invoice_if_applicable_html: "<strong><em>%{USER}</em></strong>'s reservation, on the %{DATE}, was cancelled. Remember to generate a refund invoice if applicable."
|
||||
notify_admin_slot_is_modified:
|
||||
|
@ -198,7 +198,7 @@ en:
|
||||
body:
|
||||
new_account_imported: "A new user account (ID: %{ID}) has been imported to the website via %{PROVIDER}."
|
||||
provider_uid: "its provider ID is: "
|
||||
known_informations: "Here is what we know about this provider:"
|
||||
known_information: "Here is what we know about this provider:"
|
||||
address_already_used: "This address is already associated with another user"
|
||||
no_more_info_available: "No other info about this user can be provided before he completes his profile."
|
||||
|
||||
|
@ -198,7 +198,7 @@ fr:
|
||||
body:
|
||||
new_account_imported: "Un nouveau compte utilisateur (ID: %{ID}) vient d'être importé sur la plate-forme via %{PROVIDER}."
|
||||
provider_uid: "Son identifiant fournisseur est %{UID}."
|
||||
known_informations: "Voici les informations connues à son propos :"
|
||||
known_information: "Voici les informations connues à son propos :"
|
||||
address_already_used: "Cette adresse est déjà associée à un autre utilisateur"
|
||||
no_more_info_available: "Aucune autre information sur cet utilisateur n'est disponible tant que celui-ci n'aura pas complété son profil."
|
||||
|
||||
|
@ -15,7 +15,7 @@ For this guide, we will use [GitHub](https://developer.github.com/v3/oauth/) as
|
||||
It is composed of: **SSO's protocol**, _dash_, **slug of the provider's name**.
|
||||
If you have a doubt about what it will be, start by creating the authentication provider in your fab-manager (see below), then the strategy's name will be shown in the providers list.
|
||||
|
||||
- You'll be redirected to a page displaying two important informations: your **Client ID** and your **Client Secret**.
|
||||
- You'll be redirected to a page displaying two important information: your **Client ID** and your **Client Secret**.
|
||||
|
||||
- Now go to your fab-manager's instance, login as an administrator, go to `Users management` and `Authentication`.
|
||||
Click `Add a new authentication provider`, and select _OAuth 2.0_ in the `Authentication type` drop-down list.
|
||||
|
Loading…
x
Reference in New Issue
Block a user