1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-11-28 09:24:24 +01:00

harmonize Fab-manager trademark syntax

This commit is contained in:
Sylvain 2020-02-26 10:19:43 +01:00
parent 222590ae5e
commit d833f6d812
38 changed files with 116 additions and 116 deletions

View File

@ -1 +1 @@
fab-manager Fab-manager

View File

@ -1,5 +1,5 @@
Fab-Manager uses some external components, which are licenced under the Fab-manager uses some external components, which are licenced under the
terms of the following licences: terms of the following licences:
- [Apache 2 license](http://www.apache.org/licenses/LICENSE-2.0): - [Apache 2 license](http://www.apache.org/licenses/LICENSE-2.0):

View File

@ -223,7 +223,7 @@
- Improved date checks before closing an accounting period - Improved date checks before closing an accounting period
- Paginate list of coupons - Paginate list of coupons
- Allow filtering coupons list - Allow filtering coupons list
- Fix a bug: when VAT has changed during fab-manager's lifecycle, this may not be reflected in archives - Fix a bug: when VAT has changed during Fab-manager's lifecycle, this may not be reflected in archives
- Fix a bug: using a quote in event category's name results in angular $parse:syntax Error - Fix a bug: using a quote in event category's name results in angular $parse:syntax Error
## v3.0.1 2019 April 1st ## v3.0.1 2019 April 1st
@ -256,7 +256,7 @@
- [TODO DEPLOY] `rake fablab:setup:chain_invoices_records` - [TODO DEPLOY] `rake fablab:setup:chain_invoices_records`
- [TODO DEPLOY] `rake fablab:setup:chain_history_values_records` - [TODO DEPLOY] `rake fablab:setup:chain_history_values_records`
- [TODO DEPLOY] add `DISK_SPACE_MB_ALERT` and `SUPERADMIN_EMAIL` environment variables (see [doc/environment.md](doc/environment.md) for configuration details) - [TODO DEPLOY] add `DISK_SPACE_MB_ALERT` and `SUPERADMIN_EMAIL` environment variables (see [doc/environment.md](doc/environment.md) for configuration details)
- [TODO DEPLOY] add the `accounting` volume to the fab-manager's image in [docker-compose.yml](docker/docker-compose.yml) - [TODO DEPLOY] add the `accounting` volume to the Fab-manager's image in [docker-compose.yml](docker/docker-compose.yml)
## v2.8.4 2019 March 18 ## v2.8.4 2019 March 18
@ -395,7 +395,7 @@
- Ability to share trainings on social medias - Ability to share trainings on social medias
- Fix a bug: a reminder notification were sent for canceled reservations - Fix a bug: a reminder notification were sent for canceled reservations
- Fix a bug: sharing an event on facebook has HTML tags in the description - Fix a bug: sharing an event on facebook has HTML tags in the description
- Set Stripe API version, all fab-managers has to use this version because codebase relies on it - Set Stripe API version, all Fab-managers has to use this version because codebase relies on it
- Fix a security issue: OmniAuth < 1.3.2 has a security vulnerability described in [CVE-2017-18076](https://nvd.nist.gov/vuln/detail/CVE-2017-18076) - Fix a security issue: OmniAuth < 1.3.2 has a security vulnerability described in [CVE-2017-18076](https://nvd.nist.gov/vuln/detail/CVE-2017-18076)
- Fix a security issue: rack-protection < 1.5.5 has a security vulnerability described in [CVE-2018-1000119](https://nvd.nist.gov/vuln/detail/CVE-2018-1000119) - Fix a security issue: rack-protection < 1.5.5 has a security vulnerability described in [CVE-2018-1000119](https://nvd.nist.gov/vuln/detail/CVE-2018-1000119)
- Fix a security issue: http gem < 0.7.3 has a security vulnerability described in [CVE-2015-1828](https://nvd.nist.gov/vuln/detail/CVE-2015-1828), updates twitter gem as a dependency - Fix a security issue: http gem < 0.7.3 has a security vulnerability described in [CVE-2015-1828](https://nvd.nist.gov/vuln/detail/CVE-2015-1828), updates twitter gem as a dependency
@ -666,7 +666,7 @@
- Project images will show in full-size on a click - Project images will show in full-size on a click
- Add a checkbox "I accept to receive informations from the FabLab" on Sign-up dialog and user's profile - Add a checkbox "I accept to receive informations from the FabLab" on Sign-up dialog and user's profile
- Share project with Facebook/Twitter - Share project with Facebook/Twitter
- Display fab-manager's version in "Powered by" label, when logged as admin - Display Fab-manager's version in "Powered by" label, when logged as admin
- Load translation locales from subdirectories - Load translation locales from subdirectories
- Add wallet to user, client can pay total/partial reservation or subscription by wallet - Add wallet to user, client can pay total/partial reservation or subscription by wallet
- Public calendar for show all trainings/machines/events - Public calendar for show all trainings/machines/events

View File

@ -1,6 +1,6 @@
# Contributing to FabManager # Contributing to Fab-manager
♥ [FabManager](http://www.fab-manager.com) and want to get involved? ♥ [Fab-manager](http://www.fab-manager.com) and want to get involved?
Thanks! There are plenty of ways you can help! Thanks! There are plenty of ways you can help!
Please take a moment to review this document in order to make the contribution process easy and effective for everyone Please take a moment to review this document in order to make the contribution process easy and effective for everyone

View File

@ -1,6 +1,6 @@
# FabManager # Fab-manager
FabManager is the Fab Lab management solution. It provides a comprehensive, web-based, open-source tool to simplify your administrative tasks and your marker's projects. Fab-manager is the Fab Lab management solution. It provides a comprehensive, web-based, open-source tool to simplify your administrative tasks and your marker's projects.
[![Coverage Status](https://coveralls.io/repos/github/sleede/fab-manager/badge.svg)](https://coveralls.io/github/sleede/fab-manager) [![Coverage Status](https://coveralls.io/repos/github/sleede/fab-manager/badge.svg)](https://coveralls.io/github/sleede/fab-manager)
[![Docker pulls](https://img.shields.io/docker/pulls/sleede/fab-manager.svg)](https://hub.docker.com/r/sleede/fab-manager/) [![Docker pulls](https://img.shields.io/docker/pulls/sleede/fab-manager.svg)](https://hub.docker.com/r/sleede/fab-manager/)
@ -24,7 +24,7 @@ FabManager is the Fab Lab management solution. It provides a comprehensive, web-
<a name="software-stack"></a> <a name="software-stack"></a>
## Software stack ## Software stack
FabManager is a Ruby on Rails / AngularJS web application that runs on the following software: Fab-manager is a Ruby on Rails / AngularJS web application that runs on the following software:
- Ubuntu LTS 14.04+ / Debian 8+ - Ubuntu LTS 14.04+ / Debian 8+
- Ruby 2.3 - Ruby 2.3
@ -41,13 +41,13 @@ Contributions are welcome. Please read [the contribution guidelines](CONTRIBUTIN
<a name="setup-a-production-environment"></a> <a name="setup-a-production-environment"></a>
## Setup a production environment ## Setup a production environment
To run fab-manager as a production application, this is highly recommended to use [Docker-compose](https://docs.docker.com/compose/overview/). To run Fab-manager as a production application, this is highly recommended to use [Docker-compose](https://docs.docker.com/compose/overview/).
The procedure to follow is described in the [docker-compose readme](doc/docker-compose_readme.md). The procedure to follow is described in the [docker-compose readme](doc/docker-compose_readme.md).
<a name="setup-a-development-environment"></a> <a name="setup-a-development-environment"></a>
## Setup a development environment ## Setup a development environment
In you intend to run fab-manager on your local machine to contribute to the project development, you can set it up by following the [development readme](doc/development_readme.md). In you intend to run Fab-manager on your local machine to contribute to the project development, you can set it up by following the [development readme](doc/development_readme.md).
This procedure relies on docker to set-up the dependencies. This procedure relies on docker to set-up the dependencies.
Optionally, you can use a virtual development environment that relies on Vagrant and Virtual Box by following the [virtual machine instructions](virtual-machine.md). Optionally, you can use a virtual development environment that relies on Vagrant and Virtual Box by following the [virtual machine instructions](virtual-machine.md).
@ -55,7 +55,7 @@ Optionally, you can use a virtual development environment that relies on Vagrant
<a name="i18n"></a> <a name="i18n"></a>
## Internationalization (i18n) ## Internationalization (i18n)
The FabManager application can only run in a single language but this language can easily be changed. The Fab-manager application can only run in a single language but this language can easily be changed.
Please refer to the [translation readme](doc/translation_readme.md) for instructions about configuring the language or to contribute to the translation. Please refer to the [translation readme](doc/translation_readme.md) for instructions about configuring the language or to contribute to the translation.
@ -64,17 +64,17 @@ Please refer to the [translation readme](doc/translation_readme.md) for instruct
**This configuration is optional.** **This configuration is optional.**
You can configure your fab-manager to synchronize every project with the [Open Projects platform](https://github.com/sleede/openlab-projects). You can configure your Fab-manager to synchronize every project with the [Open Projects platform](https://github.com/sleede/openlab-projects).
It's very simple and straightforward and in return, your users will be able to search over projects from all fab-manager instances from within your platform. It's very simple and straightforward and in return, your users will be able to search over projects from all Fab-manager instances from within your platform.
The deal is fair, you share your projects and as reward you benefits from projects of the whole community. The deal is fair, you share your projects and as reward you benefits from projects of the whole community.
If you want to try it, you can visit [this fab-manager](https://fablab.lacasemate.fr/#!/projects) and see projects from different fab-managers. If you want to try it, you can visit [this Fab-manager](https://fablab.lacasemate.fr/#!/projects) and see projects from different Fab-managers.
To start using this awesome feature, there are a few steps: To start using this awesome feature, there are a few steps:
- send a mail to **contact@fab-manager.com** asking for your Open Projects client's credentials and giving them the name of your fab-manager, they will give you an `OPENLAB_APP_ID` and an `OPENLAB_APP_SECRET` - send a mail to **contact@fab-manager.com** asking for your Open Projects client's credentials and giving them the name of your Fab-manager, they will give you an `OPENLAB_APP_ID` and an `OPENLAB_APP_SECRET`
- fill in the value of the keys in your environment file - fill in the value of the keys in your environment file
- start your fab-manager app - start your Fab-manager app
- export your projects to open-projects (if you already have projects created on your fab-manager, unless you can skip that part) executing this command: `bundle exec rake fablab:openlab:bulk_export` - export your projects to open-projects (if you already have projects created on your Fab-manager, unless you can skip that part) executing this command: `bundle exec rake fablab:openlab:bulk_export`
**IMPORTANT: please run your server in production mode.** **IMPORTANT: please run your server in production mode.**

View File

@ -37,7 +37,7 @@ Application.Controllers.controller('ApplicationController', ['$rootScope', '$sco
$rootScope.currentUser = user; $rootScope.currentUser = user;
Session.create(user); Session.create(user);
getNotifications(); getNotifications();
// fab-manager's app-version // Fab-manager's app-version
if (user.role === 'admin') { if (user.role === 'admin') {
return $scope.version = Version.get(); return $scope.version = Version.get();
} else { } else {

View File

@ -1,7 +1,7 @@
# frozen_string_literal: true # frozen_string_literal: true
# API Controller for resources of type Stylesheet # API Controller for resources of type Stylesheet
# Stylesheets are used to customize the appearance of fab-manager # Stylesheets are used to customize the appearance of Fab-manager
class API::StylesheetsController < API::ApiController class API::StylesheetsController < API::ApiController
caches_page :show # magic happens here caches_page :show # magic happens here

View File

@ -1,7 +1,7 @@
# frozen_string_literal: true # frozen_string_literal: true
require 'version' require 'version'
# API Controller to get the fab-manager version # API Controller to get the Fab-manager version
class API::VersionController < API::ApiController class API::VersionController < API::ApiController
before_action :authenticate_user! before_action :authenticate_user!

View File

@ -8,7 +8,7 @@ class HealthController < ActionController::Base
require 'version' require 'version'
render json: { render json: {
name: 'Fab-Manager', name: 'Fab-manager',
status: 'running', status: 'running',
dependencies: { dependencies: {
postgresql: HealthService.database?, postgresql: HealthService.database?,

View File

@ -1,6 +1,6 @@
# frozen_string_literal: true # frozen_string_literal: true
# Stylesheet is a cached CSS file that allows to easily customize the interface of Fab-Manager with some configurable colors and # Stylesheet is a cached CSS file that allows to easily customize the interface of Fab-manager with some configurable colors and
# 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 < ActiveRecord::Base class Stylesheet < ActiveRecord::Base

View File

@ -37,7 +37,7 @@ json.totals do
end end
json.software do json.software do
json.name 'Fab-Manager' json.name 'Fab-manager'
json.version software_version json.version software_version
json.code_checksum code_checksum json.code_checksum code_checksum
end end

View File

@ -1000,10 +1000,10 @@ en:
publish_will_notify: "Publish a new version will send a notification to every users." publish_will_notify: "Publish a new version will send a notification to every users."
publish: "Publish" publish: "Publish"
users_notified: "Platform users will be notified of the update." users_notified: "Platform users will be notified of the update."
about_analytics: "I agree to share anonymous data with the development team to help improve Fab-Manager." about_analytics: "I agree to share anonymous data with the development team to help improve Fab-manager."
read_more: "Which data do we collect?" read_more: "Which data do we collect?"
analytics: analytics:
intro_analytics_html: "You'll find below a detailed view of all the data, Fab-Manager will collect <strong>if permission is granted.</strong>" intro_analytics_html: "You'll find below a detailed view of all the data, Fab-manager will collect <strong>if permission is granted.</strong>"
version: "Application version" version: "Application version"
members: "Number of members" members: "Number of members"
admins: "Number of administrators" admins: "Number of administrators"

View File

@ -976,10 +976,10 @@ es:
publish_will_notify: "Publish a new version will send a notification to every users." publish_will_notify: "Publish a new version will send a notification to every users."
publish: "Publish" publish: "Publish"
users_notified: "Platform users will be notified of the update." users_notified: "Platform users will be notified of the update."
about_analytics: "I agree to share anonymous data with the development team to help improve Fab-Manager." about_analytics: "I agree to share anonymous data with the development team to help improve Fab-manager."
read_more: "Which data do we collect?" read_more: "Which data do we collect?"
analytics: analytics:
intro_analytics_html: "You'll find below a detailed view of all the data, Fab-Manager will collect <strong>if permission is granted.</strong>" intro_analytics_html: "You'll find below a detailed view of all the data, Fab-manager will collect <strong>if permission is granted.</strong>"
version: "Application version" version: "Application version"
members: "Number of members" members: "Number of members"
admins: "Number of administrators" admins: "Number of administrators"

View File

@ -1000,10 +1000,10 @@ fr:
publish_will_notify: "Publier une nouvelle version enverra une notification à l'ensemble des utilisateurs." publish_will_notify: "Publier une nouvelle version enverra une notification à l'ensemble des utilisateurs."
publish: "Publier" publish: "Publier"
users_notified: "Les utilisateurs de la plateforme seront notifiés de la mise à jour." users_notified: "Les utilisateurs de la plateforme seront notifiés de la mise à jour."
about_analytics: "J'accepte de partager des données anonymes avec l'équipe de développement pour aider à améliorer Fab-Manager." about_analytics: "J'accepte de partager des données anonymes avec l'équipe de développement pour aider à améliorer Fab-manager."
read_more: "Quelles informations collectons-nous ?" read_more: "Quelles informations collectons-nous ?"
analytics: analytics:
intro_analytics_html: "Vous trouverez ci-dessous une vue détaillée de toutes les données de Fab-Manager collectera <strong>si l'autorisation lui est accordée.</strong>" intro_analytics_html: "Vous trouverez ci-dessous une vue détaillée de toutes les données de Fab-manager collectera <strong>si l'autorisation lui est accordée.</strong>"
version: "Version de l'application" version: "Version de l'application"
members: "Nombre de membres" members: "Nombre de membres"
admins: "Nombre d'administrateurs" admins: "Nombre d'administrateurs"
@ -1059,7 +1059,7 @@ fr:
tour: tour:
conclusion: conclusion:
title: "Merci de votre attention" title: "Merci de votre attention"
content: "Affichez de l'aide en appuyant sur <strong>F1</strong> à n'importe quel moment.<br> Bonne continuation avec Fab-Manager." content: "Affichez de l'aide en appuyant sur <strong>F1</strong> à n'importe quel moment.<br> Bonne continuation avec Fab-manager."
trainings: trainings:
welcome: welcome:
title: "Suivi formations" title: "Suivi formations"
@ -1095,7 +1095,7 @@ fr:
content: "Ici vous pourrez créer, modifier et supprimer des membres et des administrateurs. Vous pourrez également réaliser des imports et des exports avec des fichiers de tableur, ou connecter un logiciel de SSO." content: "Ici vous pourrez créer, modifier et supprimer des membres et des administrateurs. Vous pourrez également réaliser des imports et des exports avec des fichiers de tableur, ou connecter un logiciel de SSO."
list: list:
title: "Liste des membres" title: "Liste des membres"
content: "Par défaut, ce tableau liste l'ensemble des membres de votre Fab-Manager. Vous pouvez trier la liste dans un ordre différent en cliquant sur l'entête de chaque colonne." content: "Par défaut, ce tableau liste l'ensemble des membres de votre Fab-manager. Vous pouvez trier la liste dans un ordre différent en cliquant sur l'entête de chaque colonne."
search: search:
title: "Rechercher un utilisateur" title: "Rechercher un utilisateur"
content: "Ce champ de saisie vous permet de faire une recherche en texte libre sur l'ensemble des colonnes du tableau ci-dessous." content: "Ce champ de saisie vous permet de faire une recherche en texte libre sur l'ensemble des colonnes du tableau ci-dessous."
@ -1110,10 +1110,10 @@ fr:
content: "Chacun de ces boutons lance la génération d'un fichier Excel listant l'ensemble des membres, abonnements ou réservations, actuelles et passées." content: "Chacun de ces boutons lance la génération d'un fichier Excel listant l'ensemble des membres, abonnements ou réservations, actuelles et passées."
import: import:
title: "Importer des membres" title: "Importer des membres"
content: "Permet d'importer une liste de membres à créer dans Fab-Manager, à partir d'un fichier CSV." content: "Permet d'importer une liste de membres à créer dans Fab-manager, à partir d'un fichier CSV."
admins: admins:
title: "Gérer les administrateurs" title: "Gérer les administrateurs"
content: "De la même manière que les membres, gérez ici les administrateurs de votre Fab-Manager.<br>Les administrateurs peuvent prendre des réservations pour n'importe quel membre ainsi que modifier l'ensemble des paramètres du logiciel." content: "De la même manière que les membres, gérez ici les administrateurs de votre Fab-manager.<br>Les administrateurs peuvent prendre des réservations pour n'importe quel membre ainsi que modifier l'ensemble des paramètres du logiciel."
groups: groups:
title: "Gérer les groupes" title: "Gérer les groupes"
content: "Les groupes vous permettent de segmenter finement votre offre tarifaire." content: "Les groupes vous permettent de segmenter finement votre offre tarifaire."
@ -1129,7 +1129,7 @@ fr:
content: "Ici, vous pourrez télécharger des factures émises et gérer tout ce qui a trait à la comptabilité et à la facturation." content: "Ici, vous pourrez télécharger des factures émises et gérer tout ce qui a trait à la comptabilité et à la facturation."
list: list:
title: "Liste des factures" title: "Liste des factures"
content: "Par défaut, ce tableau liste l'ensemble des factures émises via Fab-Manager. Vous pouvez trier la liste dans un ordre différent en cliquant sur l'entête de chaque colonne." content: "Par défaut, ce tableau liste l'ensemble des factures émises via Fab-manager. Vous pouvez trier la liste dans un ordre différent en cliquant sur l'entête de chaque colonne."
chained: chained:
title: "Indicateur de chaînage" title: "Indicateur de chaînage"
content: "Cette icône assure l'inaltérablité des données comptables liées à la facture sur cette ligne. Si une icône rouge apparaît au lieu de cette-ci, merci de contactez immédiatement le support technique." content: "Cette icône assure l'inaltérablité des données comptables liées à la facture sur cette ligne. Si une icône rouge apparaît au lieu de cette-ci, merci de contactez immédiatement le support technique."
@ -1215,7 +1215,7 @@ fr:
settings: settings:
welcome: welcome:
title: "Personnalisation de l'application" title: "Personnalisation de l'application"
content: "D'ici, vous pourrez configurer les réglages généraux de Fab-Manager ainsi que personnaliser différents éléments de l'interface." content: "D'ici, vous pourrez configurer les réglages généraux de Fab-manager ainsi que personnaliser différents éléments de l'interface."
home: home:
title: "Personnaliser la page d'accueil" title: "Personnaliser la page d'accueil"
content: "<p>Cet éditeur WYSIWYG vous permet de personnaliser l'apparence de la page d'accueil tout en utilisant différents composants (dernier tweet, brève, etc.).</p><p><strong>Attention :</strong> Gardez à l'esprit que toute modification non maîtrisée peut casser l'apparence de la page d'accueil.</p>" content: "<p>Cet éditeur WYSIWYG vous permet de personnaliser l'apparence de la page d'accueil tout en utilisant différents composants (dernier tweet, brève, etc.).</p><p><strong>Attention :</strong> Gardez à l'esprit que toute modification non maîtrisée peut casser l'apparence de la page d'accueil.</p>"
@ -1243,7 +1243,7 @@ fr:
open_api: open_api:
welcome: welcome:
title: "OpenAPI" title: "OpenAPI"
content: "Fab-Manager propose une API ouverte permettant à des logiciels tiers de s'interfacer simplement avec ses données. Cet écran vous permet d'accorder des accès à cette API." content: "Fab-manager propose une API ouverte permettant à des logiciels tiers de s'interfacer simplement avec ses données. Cet écran vous permet d'accorder des accès à cette API."
doc: doc:
title: "Documentation" title: "Documentation"
content: "Cliquez ici pour accéder à la documentation en ligne de l'API" content: "Cliquez ici pour accéder à la documentation en ligne de l'API"

View File

@ -1000,10 +1000,10 @@ pt:
publish_will_notify: "Publish a new version will send a notification to every users." publish_will_notify: "Publish a new version will send a notification to every users."
publish: "Publish" publish: "Publish"
users_notified: "Platform users will be notified of the update." users_notified: "Platform users will be notified of the update."
about_analytics: "I agree to share anonymous data with the development team to help improve Fab-Manager." about_analytics: "I agree to share anonymous data with the development team to help improve Fab-manager."
read_more: "Which data do we collect?" read_more: "Which data do we collect?"
analytics: analytics:
intro_analytics_html: "You'll find below a detailed view of all the data, Fab-Manager will collect <strong>if permission is granted.</strong>" intro_analytics_html: "You'll find below a detailed view of all the data, Fab-manager will collect <strong>if permission is granted.</strong>"
version: "Application version" version: "Application version"
members: "Number of members" members: "Number of members"
admins: "Number of administrators" admins: "Number of administrators"

View File

@ -123,8 +123,8 @@ en:
# Fab-manager's version # Fab-manager's version
version: "Version:" version: "Version:"
upgrade_fabmanager: "Upgrade Fab-Manager" upgrade_fabmanager: "Upgrade Fab-manager"
current_version: "You are currently using version {VERSION} of Fab-Manager." current_version: "You are currently using version {VERSION} of Fab-manager."
upgrade_to: "A new release is available. You can upgrade up to version {VERSION}." upgrade_to: "A new release is available. You can upgrade up to version {VERSION}."
read_more: "View the details of this release" read_more: "View the details of this release"
security_version_html: "<strong>Your current version is vulnerable!</strong><br> A later version, currently available, includes security fixes. Upgrade as soon as possible!" security_version_html: "<strong>Your current version is vulnerable!</strong><br> A later version, currently available, includes security fixes. Upgrade as soon as possible!"

View File

@ -111,8 +111,8 @@ es:
you_will_receive_in_a_moment_an_email_with_instructions_to_reset_your_password: "En un momento recibirá las instrucciones para restablecer su contraseña en su mail." you_will_receive_in_a_moment_an_email_with_instructions_to_reset_your_password: "En un momento recibirá las instrucciones para restablecer su contraseña en su mail."
#Fab-manager's version #Fab-manager's version
version: "Version:" version: "Version:"
upgrade_fabmanager: "Upgrade Fab-Manager" upgrade_fabmanager: "Upgrade Fab-manager"
current_version: "You are currently using version {VERSION} of Fab-Manager." current_version: "You are currently using version {VERSION} of Fab-manager."
upgrade_to: "A new release is available. You can upgrade up to version {VERSION}." upgrade_to: "A new release is available. You can upgrade up to version {VERSION}."
read_more: "View the details of this release" read_more: "View the details of this release"
security_version_html: "<strong>Your current version is vulnerable!</strong><br> A later version, currently available, includes security fixes. Upgrade as soon as possible!" security_version_html: "<strong>Your current version is vulnerable!</strong><br> A later version, currently available, includes security fixes. Upgrade as soon as possible!"

View File

@ -123,8 +123,8 @@ fr:
# Fab-manager's version # Fab-manager's version
version: "Version :" version: "Version :"
upgrade_fabmanager: "Mettez à jour Fab-Manager" upgrade_fabmanager: "Mettez à jour Fab-manager"
current_version: "Vous utilisez actuellement la version {VERSION} de Fab-Manager." current_version: "Vous utilisez actuellement la version {VERSION} de Fab-manager."
upgrade_to: "Une nouvelle version est disponible. Vous pouvez mettre à jour vers la version {VERSION}." upgrade_to: "Une nouvelle version est disponible. Vous pouvez mettre à jour vers la version {VERSION}."
read_more: "Voir les détails de cette version" read_more: "Voir les détails de cette version"
security_version_html: "<strong>Votre version actuelle est vulnérable !</strong><br> Une version ultérieure, actuellement disponible, inclut des correctifs de sécurité. Mettez à jour dès que possible !" security_version_html: "<strong>Votre version actuelle est vulnérable !</strong><br> Une version ultérieure, actuellement disponible, inclut des correctifs de sécurité. Mettez à jour dès que possible !"
@ -382,10 +382,10 @@ fr:
tour: tour:
conclusion: conclusion:
title: "Merci de votre attention" title: "Merci de votre attention"
content: "Affichez de l'aide en appuyant sur <strong>F1</strong> à n'importe quel moment.<br> Bonne continuation avec Fab-Manager." content: "Affichez de l'aide en appuyant sur <strong>F1</strong> à n'importe quel moment.<br> Bonne continuation avec Fab-manager."
welcome: welcome:
welcome: welcome:
title: "Bienvenue dans Fab-Manager" title: "Bienvenue dans Fab-manager"
content: "Afin de vous aider à bien prendre en main l'application, nous allons procéder à une rapide visite guidée des fonctionnalités." content: "Afin de vous aider à bien prendre en main l'application, nous allons procéder à une rapide visite guidée des fonctionnalités."
home: home:
title: "Page d'accueil" title: "Page d'accueil"
@ -413,7 +413,7 @@ fr:
content: "Les abonnements offrent un moyen de segmenter vos tarifs et d'accorder des avantages aux utilisateurs réguliers." content: "Les abonnements offrent un moyen de segmenter vos tarifs et d'accorder des avantages aux utilisateurs réguliers."
admin: admin:
title: "Section administrateur" title: "Section administrateur"
content: "L'ensemble des éléments ci-dessous ne sont accessibles qu'aux administrateurs. Ils permettent de gérer et de configurer Fab-Manager. À la fin de cette visite, cliquez sur l'un d'entre eux pour en savoir plus." content: "L'ensemble des éléments ci-dessous ne sont accessibles qu'aux administrateurs. Ils permettent de gérer et de configurer Fab-manager. À la fin de cette visite, cliquez sur l'un d'entre eux pour en savoir plus."
about: about:
title: "À propos" title: "À propos"
content: "Une page que vous pouvez entièrement personnaliser, pour y présenter votre activité." content: "Une page que vous pouvez entièrement personnaliser, pour y présenter votre activité."
@ -422,10 +422,10 @@ fr:
content: "Chaque fois qu'il se passe quelque chose d'important, vous serez notifié ici." content: "Chaque fois qu'il se passe quelque chose d'important, vous serez notifié ici."
profile: profile:
title: "Menu utilisateur" title: "Menu utilisateur"
content: "Retrouvez ici vos informations personnelles ainsi que toute votre activité sur Fab-Manager." content: "Retrouvez ici vos informations personnelles ainsi que toute votre activité sur Fab-manager."
version: version:
title: "Version de l'application" title: "Version de l'application"
content: "Passez votre curseur sur cette icône pour connaître la version de Fab-Manager. Si vous n'êtes pas à jour, cela vous sera signalé ici et vous pourrez alors obtenir des détails en cliquant dessus." content: "Passez votre curseur sur cette icône pour connaître la version de Fab-manager. Si vous n'êtes pas à jour, cela vous sera signalé ici et vous pourrez alors obtenir des détails en cliquant dessus."
machines: machines:
welcome: welcome:
title: "Gérer les machines" title: "Gérer les machines"

View File

@ -123,8 +123,8 @@ pt:
# Fab-manager's version # Fab-manager's version
version: "Versão:" version: "Versão:"
upgrade_fabmanager: "Upgrade Fab-Manager" upgrade_fabmanager: "Upgrade Fab-manager"
current_version: "You are currently using version {VERSION} of Fab-Manager." current_version: "You are currently using version {VERSION} of Fab-manager."
upgrade_to: "A new release is available. You can upgrade up to version {VERSION}." upgrade_to: "A new release is available. You can upgrade up to version {VERSION}."
read_more: "View the details of this release" read_more: "View the details of this release"
security_version_html: "<strong>Your current version is vulnerable!</strong><br> A later version, currently available, includes security fixes. Upgrade as soon as possible!" security_version_html: "<strong>Your current version is vulnerable!</strong><br> A later version, currently available, includes security fixes. Upgrade as soon as possible!"

View File

@ -291,7 +291,7 @@ en:
notify_admin_free_disk_space: notify_admin_free_disk_space:
subject: "Low disk space" subject: "Low disk space"
body: "Warning: available disk space on the server hosting fab-manager is less than %{THRESHOLD} MiB. This can affect its operation and prevent saving some data. Currently, %{AVAILABLE} MiB of free disk space remains available on the mount point." body: "Warning: available disk space on the server hosting Fab-manager is less than %{THRESHOLD} MiB. This can affect its operation and prevent saving some data. Currently, %{AVAILABLE} MiB of free disk space remains available on the mount point."
notify_admin_close_period_reminder: notify_admin_close_period_reminder:
subject: "Remind to close your accounting periods" subject: "Remind to close your accounting periods"

View File

@ -291,7 +291,7 @@ es:
notify_admin_free_disk_space: notify_admin_free_disk_space:
subject: "Low disk space" subject: "Low disk space"
body: "Warning: available disk space on the server hosting fab-manager is less than %{THRESHOLD} MiB. This can affect its operation and prevent saving some data. Currently, %{AVAILABLE} MiB of free disk space remains available on the mount point." body: "Warning: available disk space on the server hosting Fab-manager is less than %{THRESHOLD} MiB. This can affect its operation and prevent saving some data. Currently, %{AVAILABLE} MiB of free disk space remains available on the mount point."
notify_admin_close_period_reminder: notify_admin_close_period_reminder:
subject: "Remind to close your accounting periods" subject: "Remind to close your accounting periods"

View File

@ -291,7 +291,7 @@ fr:
notify_admin_free_disk_space: notify_admin_free_disk_space:
subject: "Espace disque faible" subject: "Espace disque faible"
body: "Attention : l'espace disque disponible sur le serveur hébergeant fab-manager est inférieur à %{THRESHOLD} MiO. Cela peut nuire à son bon fonctionnement et empêcher la sauvegarde de certaines données. Actuellement, il reste %{AVAILABLE} MiO d'espace libre sur le point de montage." body: "Attention : l'espace disque disponible sur le serveur hébergeant Fab-manager est inférieur à %{THRESHOLD} MiO. Cela peut nuire à son bon fonctionnement et empêcher la sauvegarde de certaines données. Actuellement, il reste %{AVAILABLE} MiO d'espace libre sur le point de montage."
notify_admin_close_period_reminder: notify_admin_close_period_reminder:
subject: "Pensez à clôturer vos périodes comptables" subject: "Pensez à clôturer vos périodes comptables"

View File

@ -291,7 +291,7 @@ pt:
notify_admin_free_disk_space: notify_admin_free_disk_space:
subject: "Low disk space" subject: "Low disk space"
body: "Warning: available disk space on the server hosting fab-manager is less than %{THRESHOLD} MiB. This can affect its operation and prevent saving some data. Currently, %{AVAILABLE} MiB of free disk space remains available on the mount point." body: "Warning: available disk space on the server hosting Fab-manager is less than %{THRESHOLD} MiB. This can affect its operation and prevent saving some data. Currently, %{AVAILABLE} MiB of free disk space remains available on the mount point."
notify_admin_close_period_reminder: notify_admin_close_period_reminder:
subject: "Remind to close your accounting periods" subject: "Remind to close your accounting periods"

View File

@ -1,7 +1,7 @@
# frozen_string_literal: true # frozen_string_literal: true
# From this migration, we store URL to iCalendar files and a piece of configuration about them. # From this migration, we store URL to iCalendar files and a piece of configuration about them.
# This allows to display the events of these external calendars in fab-manager # This allows to display the events of these external calendars in Fab-manager
class CreateICalendars < ActiveRecord::Migration class CreateICalendars < ActiveRecord::Migration
def change def change
create_table :i_calendars do |t| create_table :i_calendars do |t|

View File

@ -1,6 +1,6 @@
# Install Fab-Manager in a development environment with Docker # Install Fab-manager in a development environment with Docker
This document will guide you through all the steps needed to set up a development environment for Fab-Manager. This document will guide you through all the steps needed to set up a development environment for Fab-manager.
##### Table of contents ##### Table of contents
@ -42,7 +42,7 @@ This procedure is not easy to follow so if you don't need to write some code for
sudo reboot sudo reboot
``` ```
6. Create a docker network for fab-manager. 6. Create a docker network for Fab-manager.
You may have to change the network address if it is already in use. You may have to change the network address if it is already in use.
> 🍏 If you're using MacOS, this is not required. > 🍏 If you're using MacOS, this is not required.
```bash ```bash
@ -132,7 +132,7 @@ This procedure is not easy to follow so if you don't need to write some code for
foreman s -p 3000 foreman s -p 3000
``` ```
16. You should now be able to access your local development FabManager instance by accessing `http://localhost:3000` in your web browser. 16. You should now be able to access your local development Fab-manager instance by accessing `http://localhost:3000` in your web browser.
17. You can login as the default administrator using the credentials defined previously. 17. You can login as the default administrator using the credentials defined previously.
@ -162,12 +162,12 @@ We will use docker to easily install the required version of PostgreSQL.
postgres:9.6 postgres:9.6
``` ```
3. Configure fab-manager to use it. 3. Configure Fab-manager to use it.
On linux systems, PostgreSQL will be available at 172.18.0.2. On linux systems, PostgreSQL will be available at 172.18.0.2.
On MacOS, you'll have to set the host to 127.0.0.1 (or localhost). On MacOS, you'll have to set the host to 127.0.0.1 (or localhost).
See [environment.md](environment.md) for more details. See [environment.md](environment.md) for more details.
4 . Finally, you may want to have a look at detailed informations about PostgreSQL usage in fab-manager. 4 . Finally, you may want to have a look at detailed informations about PostgreSQL usage in Fab-manager.
Some information about that is available in the [PostgreSQL Readme](postgresql_readme.md). Some information about that is available in the [PostgreSQL Readme](postgresql_readme.md).
<a name="elasticsearch"></a> <a name="elasticsearch"></a>
@ -175,7 +175,7 @@ We will use docker to easily install the required version of PostgreSQL.
ElasticSearch is a powerful search engine based on Apache Lucene combined with a NoSQL database used as a cache to index data and quickly process complex requests on it. ElasticSearch is a powerful search engine based on Apache Lucene combined with a NoSQL database used as a cache to index data and quickly process complex requests on it.
In FabManager, it is used for the admin's statistics module and to perform searches in projects. In Fab-manager, it is used for the admin's statistics module and to perform searches in projects.
<a name="setup-elasticsearch"></a> <a name="setup-elasticsearch"></a>
### Install ElasticSearch ### Install ElasticSearch
@ -205,7 +205,7 @@ In FabManager, it is used for the admin's statistics module and to perform searc
elasticsearch:5.6 elasticsearch:5.6
``` ```
4. Configure fab-manager to use it. 4. Configure Fab-manager to use it.
On linux systems, ElasticSearch will be available at 172.18.0.3. On linux systems, ElasticSearch will be available at 172.18.0.3.
On MacOS, you'll have to set the host to 127.0.0.1 (or localhost). On MacOS, you'll have to set the host to 127.0.0.1 (or localhost).
See [environment.md](environment.md) for more details. See [environment.md](environment.md) for more details.

View File

@ -1,9 +1,9 @@
# Install Fab-Manager in production with docker-compose # Install Fab-manager in production with docker-compose
This document will guide you through all the steps needed to set up your Fab-Manager app on a production server, based on a solution using Docker and Docker-compose. This document will guide you through all the steps needed to set up your Fab-manager app on a production server, based on a solution using Docker and Docker-compose.
We recommend DigitalOcean, but these steps will work on any Docker-compatible cloud provider or local server. We recommend DigitalOcean, but these steps will work on any Docker-compatible cloud provider or local server.
In order to make it work, please use the same directories structure as described in this guide in your Fab-Manager app folder. In order to make it work, please use the same directories structure as described in this guide in your Fab-manager app folder.
You will need to be root through the rest of the setup. You will need to be root through the rest of the setup.
##### Table of contents ##### Table of contents
@ -39,7 +39,7 @@ Here's a non exhaustive list:
Choose one, depending on your budget, on the server's location, on the uptime guarantee, etc. Choose one, depending on your budget, on the server's location, on the uptime guarantee, etc.
You will need at least 2GB of addressable memory (RAM + swap) to install and use FabManager. You will need at least 2GB of addressable memory (RAM + swap) to install and use Fab-manager.
We recommend 4 GB RAM for larger communities. We recommend 4 GB RAM for larger communities.
On DigitalOcean, create a Droplet with One-click apps **"Docker on Ubuntu 16.04 LTS"**. On DigitalOcean, create a Droplet with One-click apps **"Docker on Ubuntu 16.04 LTS"**.
@ -71,7 +71,7 @@ connect to the server with `ssh root@your-domain-name`.
<a name="prepare-the-server"></a> <a name="prepare-the-server"></a>
### Prepare the server ### Prepare the server
Before installing fab-manager, we recommend you to: Before installing Fab-manager, we recommend you to:
- Upgrade your system - Upgrade your system
- Setup the server timezone - Setup the server timezone
- Add at least 2GB of swap memory - Add at least 2GB of swap memory
@ -84,16 +84,16 @@ You can run the following script as root to easily perform all these operations:
``` ```
<a name="install-fab-manager"></a> <a name="install-fab-manager"></a>
## Install Fab-Manager ## Install Fab-manager
Run the following command to install Fab-Manager. Run the following command to install Fab-manager.
This script will guide you through the installation process by checking the requirements and asking you the configuration elements. This script will guide you through the installation process by checking the requirements and asking you the configuration elements.
```bash ```bash
\curl -sSL setup.fab-manager.com | bash \curl -sSL setup.fab-manager.com | bash
``` ```
**OR**, if you don't want to install fab-manager in `/apps/fabmanager`, use the following instead: **OR**, if you don't want to install Fab-manager in `/apps/fabmanager`, use the following instead:
```bash ```bash
\curl -sSL setup.fab-manager.com | bash -s "/my/custom/path" \curl -sSL setup.fab-manager.com | bash -s "/my/custom/path"
``` ```
@ -142,14 +142,14 @@ docker-compose run --rm -e ADMIN_EMAIL=xxx -e ADMIN_PASSWORD=xxx fabmanager bund
<a name="update-fabmanager"></a> <a name="update-fabmanager"></a>
## Update Fab-manager ## Update Fab-manager
*This procedure updates Fab-Manager to the most recent version by default.* *This procedure updates Fab-manager to the most recent version by default.*
> ⚠ If you are upgrading from a very outdated version, you must first upgrade to v2.8.3, then to v3.1.2 and finally to the last version > ⚠ If you are upgrading from a very outdated version, you must first upgrade to v2.8.3, then to v3.1.2 and finally to the last version
<a name="steps"></a> <a name="steps"></a>
### Steps ### Steps
When a new version is available, follow this procedure to update fab-manager app in a production environment, using docker-compose. When a new version is available, follow this procedure to update Fab-manager app in a production environment, using docker-compose.
You can subscribe to [this atom feed](https://github.com/sleede/fab-manager/releases.atom) to get notified when a new release comes out. You can subscribe to [this atom feed](https://github.com/sleede/fab-manager/releases.atom) to get notified when a new release comes out.
1. go to your app folder 1. go to your app folder

View File

@ -3,7 +3,7 @@
## Automatic upgrade ## Automatic upgrade
Fab-manager release 2.6.5 has upgraded its dependency to ElasticSearch from version 1.7 to version 5.6 as the previous was unsupported for months. Fab-manager release 2.6.5 has upgraded its dependency to ElasticSearch from version 1.7 to version 5.6 as the previous was unsupported for months.
To keep using fab-manager you need to upgrade your installation with the new version. To keep using Fab-manager you need to upgrade your installation with the new version.
We've wrote a script to automate the process while keeping your data integrity, but there's some requirements to understand before running it. We've wrote a script to automate the process while keeping your data integrity, but there's some requirements to understand before running it.
- You need to install *curl*, *jq*, *GNU awk* and *sudo* on your system before running the script. - You need to install *curl*, *jq*, *GNU awk* and *sudo* on your system before running the script.
@ -16,7 +16,7 @@ We've wrote a script to automate the process while keeping your data integrity,
Please ensure that you'll have enough space, considering the point above. The script won't run otherwise. Please ensure that you'll have enough space, considering the point above. The script won't run otherwise.
- This script will run on any Linux or Macintoch systems if you installed ElasticSearch using docker or docker-compose. - This script will run on any Linux or Macintoch systems if you installed ElasticSearch using docker or docker-compose.
Otherwise, only Debian compatible OS (like Ubuntu) and MacOS X are supported for classical installations. On any other cases you'll need to perform the upgrade yourself manually. Otherwise, only Debian compatible OS (like Ubuntu) and MacOS X are supported for classical installations. On any other cases you'll need to perform the upgrade yourself manually.
- If your ElasticSearch instance uses replicas shards, you can't use this script and you must perform a manual upgrade (if you have a standard fab-manager installation and you don't understand what this mean, you're probably not concerned). - If your ElasticSearch instance uses replicas shards, you can't use this script and you must perform a manual upgrade (if you have a standard Fab-manager installation and you don't understand what this mean, you're probably not concerned).
Once you've understood all the points above, you can run the migration script with the following: Once you've understood all the points above, you can run the migration script with the following:

View File

@ -3,7 +3,7 @@
## Automatic upgrade ## Automatic upgrade
Fab-manager release 4.2.0 has upgraded its dependency to PostgreSQL from version 9.4 to version 9.6 as the previous won't be maintained from february 2020. Fab-manager release 4.2.0 has upgraded its dependency to PostgreSQL from version 9.4 to version 9.6 as the previous won't be maintained from february 2020.
To keep using fab-manager you need to upgrade your installation with the new version. To keep using Fab-manager you need to upgrade your installation with the new version.
We've wrote a script to automate the process while keeping your data integrity, but there's some requirements to understand before running it. We've wrote a script to automate the process while keeping your data integrity, but there's some requirements to understand before running it.
- You need to install *curl*, *GNU awk* and *sudo* on your system before running the script. - You need to install *curl*, *GNU awk* and *sudo* on your system before running the script.

View File

@ -1,4 +1,4 @@
# Detailed informations about PostgreSQL usage in fab-manager # Detailed informations about PostgreSQL usage in Fab-manager
<a name="run-postgresql-cli"></a> <a name="run-postgresql-cli"></a>
## Run the PostgreSQL command line interface ## Run the PostgreSQL command line interface
@ -51,7 +51,7 @@ psql -U postgres -d fabmanager_production -f fabmanager_production_$(date -I).sq
- While setting up the database, we'll need to activate two PostgreSQL extensions: [unaccent](https://www.postgresql.org/docs/current/static/unaccent.html) and [trigram](https://www.postgresql.org/docs/current/static/pgtrgm.html). - While setting up the database, we'll need to activate two PostgreSQL extensions: [unaccent](https://www.postgresql.org/docs/current/static/unaccent.html) and [trigram](https://www.postgresql.org/docs/current/static/pgtrgm.html).
This can only be achieved if the user, configured in `config/database.yml`, was granted the _SUPERUSER_ role **OR** if these extensions were white-listed. This can only be achieved if the user, configured in `config/database.yml`, was granted the _SUPERUSER_ role **OR** if these extensions were white-listed.
So here's your choices, mainly depending on your security requirements: So here's your choices, mainly depending on your security requirements:
- Use the default PostgreSQL super-user (postgres) as the database user. This is the default behavior in fab-manager. - Use the default PostgreSQL super-user (postgres) as the database user. This is the default behavior in Fab-manager.
- Set your user as _SUPERUSER_; run the following command in `psql` (after replacing `username` with you user name): - Set your user as _SUPERUSER_; run the following command in `psql` (after replacing `username` with you user name):
```sql ```sql

View File

@ -1,6 +1,6 @@
# How to add an authentication method to the Fab-Manager ? # How to add an authentication method to the Fab-manager ?
First, take a look at the [OmniAuth list of strategies](https://github.com/intridea/omniauth/wiki/List-of-Strategies) for the Strategy or Developer Strategy you want to add to the Fab-Manager. First, take a look at the [OmniAuth list of strategies](https://github.com/intridea/omniauth/wiki/List-of-Strategies) for the Strategy or Developer Strategy you want to add to the Fab-manager.
For this guide, we will consider you want to add a generic *developer strategy*, like LDAP. For this guide, we will consider you want to add a generic *developer strategy*, like LDAP.
@ -36,7 +36,7 @@ class LdapProvider < ActiveRecord::Base
has_many :ldap_mappings, dependent: :destroy has_many :ldap_mappings, dependent: :destroy
accepts_nested_attributes_for :ldap_mappings, allow_destroy: true accepts_nested_attributes_for :ldap_mappings, allow_destroy: true
# return the fields you want to protect from being directly managed by the Fab-Manager, typically mapped fields # return the fields you want to protect from being directly managed by the Fab-manager, typically mapped fields
def protected_fields def protected_fields
fields = [] fields = []
ldap_mappings.each do |mapping| ldap_mappings.each do |mapping|
@ -141,4 +141,4 @@ And to include this interface into the existing one ( **app/assets/templates/adm
</form> </form>
``` ```
Do not forget that you can find examples and inspiration in the OAuth 2.0 implementation. Do not forget that you can find examples and inspiration in the OAuth 2.0 implementation.

View File

@ -1,24 +1,24 @@
# How to configure Fab-manager to use a Single Sign-On authentication? # How to configure Fab-manager to use a Single Sign-On authentication?
For this guide, we will use [GitHub](https://developer.github.com/v3/oauth/) as an example authentication provider, because it uses OAuth 2.0 which is currently implemented in fab-manager, it has a standard implementation of the protocol and it is free to use for everyone. For this guide, we will use [GitHub](https://developer.github.com/v3/oauth/) as an example authentication provider, because it uses OAuth 2.0 which is currently implemented in Fab-manager, it has a standard implementation of the protocol and it is free to use for everyone.
- First, you must have a GitHub account. This is free, so create one if you don't have any. - First, you must have a GitHub account. This is free, so create one if you don't have any.
Visit https://github.com/join?source=login to create an account. Visit https://github.com/join?source=login to create an account.
- Secondly, you will need to register your fab-manager instance as an application in GitHub. - Secondly, you will need to register your Fab-manager instance as an application in GitHub.
Visit https://github.com/settings/applications/new to register your instance. Visit https://github.com/settings/applications/new to register your instance.
- In `Application name`, we advise you to set the same name as your fab-manager's instance title. - In `Application name`, we advise you to set the same name as your Fab-manager's instance title.
- In `Homepage URL`, put the public URL where your fab-manager's instance is located (eg. https://example.com). - In `Homepage URL`, put the public URL where your Fab-manager's instance is located (eg. https://example.com).
- In `Authorization callback URL`, you must specify an URL that will match this scheme: https://example.com/users/auth/oauth2-github/callback - In `Authorization callback URL`, you must specify an URL that will match this scheme: https://example.com/users/auth/oauth2-github/callback
- **example.com** is your own fab-manager's address - **example.com** is your own Fab-manager's address
- **oauth2-github** match the provider's "strategy name" in the fab-manager. - **oauth2-github** match the provider's "strategy name" in the Fab-manager.
It is composed of: **SSO's protocol**, _dash_, **slug of the provider's name**. It is composed of: **SSO's protocol**, _dash_, **slug of the provider's name**.
If you have a doubt about what it will be, set any value, create the authentication provider in your fab-manager (see below), then the strategy's name will be shown in the providers list. If you have a doubt about what it will be, set any value, create the authentication provider in your Fab-manager (see below), then the strategy's name will be shown in the providers list.
Afterwards, edit your app on GitHub to set the correct name. Afterwards, edit your app on GitHub to set the correct name.
- You'll be redirected to a page displaying two important information: 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`. - 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. Click `Add a new authentication provider`, and select _OAuth 2.0_ in the `Authentication type` drop-down list.
In `name`, you can set whatever you want, but you must be aware that: In `name`, you can set whatever you want, but you must be aware that:
1. You will need to type this name in a terminal to activate the provider, so prefer avoiding chars that must be escaped. 1. You will need to type this name in a terminal to activate the provider, so prefer avoiding chars that must be escaped.
@ -33,7 +33,7 @@ For this guide, we will use [GitHub](https://developer.github.com/v3/oauth/) as
- **Client identifier**: Your Client ID, collected just before. - **Client identifier**: Your Client ID, collected just before.
- **Client secret**: Your Client Secret, collected just before. - **Client secret**: Your Client Secret, collected just before.
- Then you will need to define the matching of the fields between the fab-manager and what the external SSO can provide. - Then you will need to define the matching of the fields between the Fab-manager and what the external SSO can provide.
Please note that the only mandatory field is `User.uid`. Please note that the only mandatory field is `User.uid`.
To continue with our GitHub example, you will need to look at [this documentation page](https://developer.github.com/v3/users/#get-the-authenticated-user) to know witch field can be mapped and how, and [this one](https://developer.github.com/v3/) to know the root URL of the API. To continue with our GitHub example, you will need to look at [this documentation page](https://developer.github.com/v3/users/#get-the-authenticated-user) to know witch field can be mapped and how, and [this one](https://developer.github.com/v3/) to know the root URL of the API.
- **Model**: `User` - **Model**: `User`

View File

@ -1,6 +1,6 @@
# Fab-Manager translation documentation # Fab-manager translation documentation
This document will explain you what you need to know to contribute to the translation process of Fab-Manager. This document will explain you what you need to know to contribute to the translation process of Fab-manager.
##### Table of contents ##### Table of contents
@ -19,14 +19,14 @@ This document will explain you what you need to know to contribute to the transl
<a name="using-a-tms"></a> <a name="using-a-tms"></a>
### Using a TMS ### Using a TMS
We use [Crowdin](https://www.crowdin.com), a translation management system (TMS) to simplify translator's job in fab-manager. We use [Crowdin](https://www.crowdin.com), a translation management system (TMS) to simplify translator's job in Fab-manager.
You can access it at [translate.fab-manager.com](https://translate.fab-manager.com) and start translating to one of the already configured languages. You can access it at [translate.fab-manager.com](https://translate.fab-manager.com) and start translating to one of the already configured languages.
If you want to translate Fab-Manager to a new language, just send us an email to [contact@fab-manager.com](mailto:contact@fab-manager.com) and we'll add this new language to the TMS. If you want to translate Fab-manager to a new language, just send us an email to [contact@fab-manager.com](mailto:contact@fab-manager.com) and we'll add this new language to the TMS.
<a name="using-in-context-translation"></a> <a name="using-in-context-translation"></a>
### Using In-Context translation ### Using In-Context translation
To translate the front-end application (angularJS client), and the notifications, you can use [Crowdin In-Context](https://crowdin.com/page/in-context-localization). To translate the front-end application (angularJS client), and the notifications, you can use [Crowdin In-Context](https://crowdin.com/page/in-context-localization).
This allows you to use Fab-Manager as normally, but with the addition of small "edit" icons on the top-left corner of each text blocs. This allows you to use Fab-manager as normally, but with the addition of small "edit" icons on the top-left corner of each text blocs.
Clicking on this "edit" icon will open the Crowdin translation interface and you'll be able to translate or modify existing translations directly. Clicking on this "edit" icon will open the Crowdin translation interface and you'll be able to translate or modify existing translations directly.
You can access it at [in-context.translate.fab-manager.com](https://in-context.translate.fab-manager.com/). You can access it at [in-context.translate.fab-manager.com](https://in-context.translate.fab-manager.com/).

View File

@ -1,6 +1,6 @@
# frozen_string_literal: true # frozen_string_literal: true
# Fab-Manager central hub (remote host) # Fab-manager central hub (remote host)
class FabHub class FabHub
def self.version_check_payload def self.version_check_payload
{ {

View File

@ -3,7 +3,7 @@
require 'fileutils' require 'fileutils'
require 'plugin_registry' require 'plugin_registry'
# fab-manager extensible functionalities # Fab-manager extensible functionalities
module Plugin; end module Plugin; end
class Plugin::Instance class Plugin::Instance

View File

@ -1,7 +1,7 @@
{ {
"name": "fab-manager", "name": "fab-manager",
"version": "4.3.0-dev", "version": "4.3.0-dev",
"description": "FabManager is the FabLab management solution. It provides a comprehensive, web-based, open-source tool to simplify your administrative tasks and your marker's projects.", "description": "Fab-manager is the FabLab management solution. It provides a comprehensive, web-based, open-source tool to simplify your administrative tasks and your marker's projects.",
"keywords": [ "keywords": [
"fablab", "fablab",
"reservations", "reservations",

View File

@ -77,7 +77,7 @@ config()
fi fi
FM_PATH=$(pwd) FM_PATH=$(pwd)
TYPE="NOT-FOUND" TYPE="NOT-FOUND"
read -rp "Is fab-manager installed at \"$FM_PATH\"? (y/n) " confirm </dev/tty read -rp "Is Fab-manager installed at \"$FM_PATH\"? (y/n) " confirm </dev/tty
if [ "$confirm" = "y" ] if [ "$confirm" = "y" ]
then then
# checking disk space (minimum required = 1168323KB) # checking disk space (minimum required = 1168323KB)
@ -100,7 +100,7 @@ config()
fi fi
ES_IP=$(getent ahostsv4 "$ES_HOST" | awk '{ print $1 }' | uniq) ES_IP=$(getent ahostsv4 "$ES_HOST" | awk '{ print $1 }' | uniq)
else else
echo "Please run this script from the fab-manager's installation folder" echo "Please run this script from the Fab-manager's installation folder"
exit 1 exit 1
fi fi
} }

View File

@ -34,7 +34,7 @@ config()
fi fi
FM_PATH=$(pwd) FM_PATH=$(pwd)
TYPE="NOT-FOUND" TYPE="NOT-FOUND"
read -rp "Is fab-manager installed at \"$FM_PATH\"? (y/N) " confirm </dev/tty read -rp "Is Fab-manager installed at \"$FM_PATH\"? (y/N) " confirm </dev/tty
if [ "$confirm" = "y" ]; then if [ "$confirm" = "y" ]; then
test_docker_compose test_docker_compose
if [[ "$TYPE" = "NOT-FOUND" ]] if [[ "$TYPE" = "NOT-FOUND" ]]
@ -43,7 +43,7 @@ config()
exit 2 exit 2
fi fi
else else
echo "Please run this script from the fab-manager's installation folder" echo "Please run this script from the Fab-manager's installation folder"
exit 1 exit 1
fi fi
} }

View File

@ -12,9 +12,9 @@ welcome_message()
echo -e "#\e[31m (__) \_/\_/(____/ \_)(_/\_/\_/\_)__)\_/\_/ \___/(____)(__\_) \e[0m#" echo -e "#\e[31m (__) \_/\_/(____/ \_)(_/\_/\_/\_)__)\_/\_/ \___/(____)(__\_) \e[0m#"
echo "# #" echo "# #"
echo "#======================================================================#" echo "#======================================================================#"
printf "\n Welcome to Fab-Manager's setup assistant\n\n\n" printf "\n Welcome to Fab-manager's setup assistant\n\n\n"
echo "Thank you for installing Fab-Manager." echo "Thank you for installing Fab-manager."
printf "This script will guide you through the installation process of Fab-Manager\n\n" printf "This script will guide you through the installation process of Fab-manager\n\n"
echo -e "Please report any \e[1mfeedback or improvement request\e[21m on https://feedback.fab-manager.com/" echo -e "Please report any \e[1mfeedback or improvement request\e[21m on https://feedback.fab-manager.com/"
echo -e "For \e[1mbug reports\e[21m, please open a new issue on https://github.com/sleede/fab-manager/issues" echo -e "For \e[1mbug reports\e[21m, please open a new issue on https://github.com/sleede/fab-manager/issues"
echo -e "You can call for \e[1mcommunity assistance\e[21m on https://forum.fab-manager.com/" echo -e "You can call for \e[1mcommunity assistance\e[21m on https://forum.fab-manager.com/"
@ -66,11 +66,11 @@ read_email()
config() config()
{ {
echo 'We recommend nginx to serve the application over the network (internet). You can use your own solution or let this script install and configure nginx for Fab-Manager.' echo 'We recommend nginx to serve the application over the network (internet). You can use your own solution or let this script install and configure nginx for Fab-manager.'
read -rp 'Do you want install nginx? (Y/n) ' NGINX </dev/tty read -rp 'Do you want install nginx? (Y/n) ' NGINX </dev/tty
if [ "$NGINX" != "n" ]; then if [ "$NGINX" != "n" ]; then
# if the user doesn't want nginx, let him use its own solution for HTTPS # if the user doesn't want nginx, let him use its own solution for HTTPS
printf "\n\nWe recommend let's encrypt to secure the application with HTTPS. You can use your own certificate or let this script install and configure let's encrypt for Fab-Manager.\n" printf "\n\nWe recommend let's encrypt to secure the application with HTTPS. You can use your own certificate or let this script install and configure let's encrypt for Fab-manager.\n"
read -rp "Do you want install let's encrypt? (Y/n) " LETSENCRYPT </dev/tty read -rp "Do you want install let's encrypt? (Y/n) " LETSENCRYPT </dev/tty
if [ "$LETSENCRYPT" != "n" ]; then if [ "$LETSENCRYPT" != "n" ]; then
printf "\n\nLet's encrypt requires an email address to receive notifications about certificate expiration.\n" printf "\n\nLet's encrypt requires an email address to receive notifications about certificate expiration.\n"
@ -109,7 +109,7 @@ prepare_files()
mkdir -p "$FABMANAGER_PATH/elasticsearch/config" mkdir -p "$FABMANAGER_PATH/elasticsearch/config"
# fab-manager environment variables # Fab-manager environment variables
\curl -sSL https://raw.githubusercontent.com/sleede/fab-manager/master/setup/env.example > "$FABMANAGER_PATH/config/env" \curl -sSL https://raw.githubusercontent.com/sleede/fab-manager/master/setup/env.example > "$FABMANAGER_PATH/config/env"
# nginx configuration # nginx configuration
@ -204,7 +204,7 @@ get_md_anchor()
configure_env_file() configure_env_file()
{ {
printf "\n\nWe will now configure the environment variables.\n" printf "\n\nWe will now configure the environment variables.\n"
echo "This allows you to customize Fab-Manager's appearance and behavior." echo "This allows you to customize Fab-manager's appearance and behavior."
read -rp "Proceed? (Y/n) " confirm </dev/tty read -rp "Proceed? (Y/n) " confirm </dev/tty
if [ "$confirm" = "n" ]; then return; fi if [ "$confirm" = "n" ]; then return; fi
@ -258,7 +258,7 @@ setup_assets_and_databases()
cd "$FABMANAGER_PATH" && docker-compose run --rm fabmanager bundle exec rake db:create # create the database cd "$FABMANAGER_PATH" && docker-compose run --rm fabmanager bundle exec rake db:create # create the database
cd "$FABMANAGER_PATH" && docker-compose run --rm fabmanager bundle exec rake db:migrate # run all the migrations cd "$FABMANAGER_PATH" && docker-compose run --rm fabmanager bundle exec rake db:migrate # run all the migrations
# prompt default admin email/password # prompt default admin email/password
printf "\n\nWe will now create the default administrator of Fab-Manager.\n" printf "\n\nWe will now create the default administrator of Fab-manager.\n"
read_email read_email
PASSWORD=$(read_password) PASSWORD=$(read_password)
cd "$FABMANAGER_PATH" && docker-compose run --rm -e ADMIN_EMAIL="$EMAIL" -e ADMIN_PASSWORD="$PASSWORD" fabmanager bundle exec rake db:seed # seed the database cd "$FABMANAGER_PATH" && docker-compose run --rm -e ADMIN_EMAIL="$EMAIL" -e ADMIN_PASSWORD="$PASSWORD" fabmanager bundle exec rake db:seed # seed the database
@ -304,7 +304,7 @@ final_message()
printf "\n\n" printf "\n\n"
echo -e "Please \e[1mkeep track of the logs\e[21m produced by this script and check that everything is running correctly." echo -e "Please \e[1mkeep track of the logs\e[21m produced by this script and check that everything is running correctly."
echo "You can call for the community assistance on https://forum.fab-manager.com" echo "You can call for the community assistance on https://forum.fab-manager.com"
echo -e "We wish you a pleasant use of \e[31mFab-Manager\e[0m" echo -e "We wish you a pleasant use of \e[31mFab-manager\e[0m"
} }
function trap_ctrlc() function trap_ctrlc()