lato_core 1.1.1 → 1.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +0 -12
  3. data/app/controllers/lato_core/api/v1/api_controller.rb +2 -3
  4. data/app/controllers/lato_core/application_controller.rb +1 -1
  5. data/app/controllers/lato_core/back/authentication_controller.rb +12 -11
  6. data/app/controllers/lato_core/back/back_controller.rb +13 -19
  7. data/app/controllers/lato_core/back/superusers_controller.rb +123 -148
  8. data/app/mailers/lato_core/application_mailer.rb +3 -4
  9. data/app/mailers/lato_core/superusers_mailer.rb +5 -7
  10. data/app/models/lato_core/superuser.rb +27 -19
  11. data/app/views/lato_core/back/authentication/login.html.erb +12 -9
  12. data/app/views/lato_core/back/authentication/password_edit.html.erb +9 -14
  13. data/app/views/lato_core/back/authentication/password_forget.html.erb +26 -27
  14. data/app/views/lato_core/back/back/home.html.erb +5 -5
  15. data/app/views/lato_core/back/superusers/edit.html.erb +12 -3
  16. data/app/views/lato_core/back/superusers/index.html.erb +23 -13
  17. data/app/views/lato_core/back/superusers/new.html.erb +12 -3
  18. data/app/views/lato_core/back/superusers/shared/_form.html.erb +3 -6
  19. data/config/config.yml +1 -1
  20. data/config/example.yml +3 -3
  21. data/config/initializers/init.rb +4 -5
  22. data/{test/dummy/log/test.log → config/initializers/lists.rb} +0 -0
  23. data/config/initializers/ram.rb +1 -37
  24. data/config/routes.rb +4 -5
  25. data/lib/lato_core.rb +2 -6
  26. data/lib/lato_core/engine.rb +6 -6
  27. data/lib/lato_core/interface.rb +12 -15
  28. data/lib/lato_core/interface/authentication.rb +19 -27
  29. data/lib/lato_core/interface/cache.rb +17 -23
  30. data/lib/lato_core/interface/communication.rb +68 -85
  31. data/lib/lato_core/interface/languages.rb +38 -47
  32. data/lib/lato_core/interface/navigation.rb +79 -93
  33. data/lib/lato_core/interface/session.rb +47 -61
  34. data/lib/lato_core/interface/superusers.rb +113 -122
  35. data/lib/tasks/lato_core_tasks.rake +2 -5
  36. metadata +4 -99
  37. data/test/controllers/lato_core/api/v1/api_controller_test.rb +0 -9
  38. data/test/controllers/lato_core/application_controller_test.rb +0 -9
  39. data/test/controllers/lato_core/back/authentication_controller_test.rb +0 -13
  40. data/test/controllers/lato_core/back/back_controller_test.rb +0 -9
  41. data/test/controllers/lato_core/back/session_controller_test.rb +0 -13
  42. data/test/controllers/lato_core/back/superusers_controller_test.rb +0 -13
  43. data/test/dummy/README.rdoc +0 -28
  44. data/test/dummy/Rakefile +0 -6
  45. data/test/dummy/app/assets/javascripts/application.js +0 -13
  46. data/test/dummy/app/assets/stylesheets/application.css +0 -15
  47. data/test/dummy/app/controllers/application_controller.rb +0 -5
  48. data/test/dummy/app/helpers/application_helper.rb +0 -2
  49. data/test/dummy/app/views/layouts/application.html.erb +0 -14
  50. data/test/dummy/bin/bundle +0 -3
  51. data/test/dummy/bin/rails +0 -4
  52. data/test/dummy/bin/rake +0 -4
  53. data/test/dummy/bin/setup +0 -29
  54. data/test/dummy/config.ru +0 -4
  55. data/test/dummy/config/application.rb +0 -25
  56. data/test/dummy/config/boot.rb +0 -5
  57. data/test/dummy/config/database.yml +0 -25
  58. data/test/dummy/config/environment.rb +0 -5
  59. data/test/dummy/config/environments/development.rb +0 -41
  60. data/test/dummy/config/environments/production.rb +0 -79
  61. data/test/dummy/config/environments/test.rb +0 -42
  62. data/test/dummy/config/initializers/assets.rb +0 -11
  63. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
  64. data/test/dummy/config/initializers/cookies_serializer.rb +0 -3
  65. data/test/dummy/config/initializers/filter_parameter_logging.rb +0 -4
  66. data/test/dummy/config/initializers/inflections.rb +0 -16
  67. data/test/dummy/config/initializers/mime_types.rb +0 -4
  68. data/test/dummy/config/initializers/session_store.rb +0 -3
  69. data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
  70. data/test/dummy/config/locales/en.yml +0 -23
  71. data/test/dummy/config/routes.rb +0 -4
  72. data/test/dummy/config/secrets.yml +0 -22
  73. data/test/dummy/public/404.html +0 -67
  74. data/test/dummy/public/422.html +0 -67
  75. data/test/dummy/public/500.html +0 -66
  76. data/test/dummy/public/favicon.ico +0 -0
  77. data/test/fixtures/lato_core/superusers.yml +0 -11
  78. data/test/integration/navigation_test.rb +0 -8
  79. data/test/lato_core_test.rb +0 -7
  80. data/test/mailers/lato_core/lato_core_mailer_test.rb +0 -9
  81. data/test/mailers/previews/lato_core/lato_core_mailer_preview.rb +0 -6
  82. data/test/models/lato_core/superuser_test.rb +0 -9
  83. data/test/test_helper.rb +0 -21
@@ -1,108 +1,94 @@
1
1
  module LatoCore
2
- module Interface
3
- # Insieme di funzioni che determinano e gestiscono le informazioni
4
- # riguardo alla navigazione tra le sezioni offerte dai moduli lato
5
- module Navigation
6
-
7
- # Ritorna un array contenente le voci che andranno a formare il menu
8
- # di navigazione del backoffice.
9
- # * *Returns* :
10
- # - array di hash contenenti i dati delle voci di menu
11
- def core_getNavbarItems
12
- return CORE_NAVIGATION if defined? CORE_NAVIGATION
13
- getApplicationNavbarItems + getLatoNavbarItems
14
- end
2
+ # This module contains funtions used for the navigation inside the application.
3
+ module Interface::Navigation
4
+
5
+ # This function return an array with navbar voices.
6
+ def core_getNavbarItems
7
+ return CORE_NAVIGATION if defined? CORE_NAVIGATION
8
+ getApplicationNavbarItems + getLatoNavbarItems
9
+ end
15
10
 
16
- # Ritorna un array contenente le voci delle gemme lato che andranno
17
- # a formare il menu di navigazione del backoffice.
18
- # * *Returns* :
19
- # - array di hash contenenti i dati delle voci di menu
20
- private def getLatoNavbarItems
21
- # inizializzo la lista delle voci della navbar
22
- navbar_items = []
23
- # identifico la lista di gemme del progetto Lato usate dalla
24
- # applicazione
25
- gems = core_getLatoGems
26
- # per ogni gemma estraggo i dati necessari a riempire la navbar
27
- gems.each do |name|
28
- module_name = name.camelize
29
- module_root = module_name.constantize::Engine.root
11
+ # This function return an array with lato navbar voices.
12
+ private def getLatoNavbarItems
13
+ # inizializzo la lista delle voci della navbar
14
+ navbar_items = []
15
+ # identifico la lista di gemme del progetto Lato usate dalla
16
+ # applicazione
17
+ gems = core_getLatoGems
18
+ # per ogni gemma estraggo i dati necessari a riempire la navbar
19
+ gems.each do |name|
20
+ module_name = name.camelize
21
+ module_root = module_name.constantize::Engine.root
30
22
 
31
- next unless File.exist? "#{module_root}/config/config.yml"
32
- # accedo al config.yml
33
- config = YAML.load(
34
- File.read(File.expand_path("#{module_root}/config/config.yml",
35
- __FILE__))
36
- )
37
- # estraggo i dati dallo yaml
38
- data = getConfigNavbarData(config)
39
- # aggiungo i dati nella risposta
40
- data.each do |single_voice|
41
- navbar_items.push(single_voice)
42
- end
23
+ next unless File.exist? "#{module_root}/config/config.yml"
24
+ # accedo al config.yml
25
+ config = YAML.load(
26
+ File.read(File.expand_path("#{module_root}/config/config.yml",
27
+ __FILE__))
28
+ )
29
+ # estraggo i dati dallo yaml
30
+ data = getConfigNavbarData(config)
31
+ # aggiungo i dati nella risposta
32
+ data.each do |single_voice|
33
+ navbar_items.push(single_voice)
43
34
  end
44
- # ritorno il risultato
45
- navbar_items
46
35
  end
36
+ # ritorno il risultato
37
+ navbar_items
38
+ end
47
39
 
48
- # Ritorna un array contenente le voci della applicazione principale
49
- # che andranno a formare il menu di navigazione del backoffice.
50
- # * *Returns* :
51
- # - array di hash contenenti i dati delle voci di menu
52
- private def getApplicationNavbarItems
53
- directory = core_getCacheDirectory
54
- # inizializzo la lista delle voci della navbar
55
- navbar_items = []
40
+ # This function return an array with application navbar voices.
41
+ private def getApplicationNavbarItems
42
+ directory = core_getCacheDirectory
43
+ # inizializzo la lista delle voci della navbar
44
+ navbar_items = []
56
45
 
57
- if File.exist? "#{directory}/config.yml"
58
- # accedo al config.yml
59
- directory = core_getCacheDirectory
60
- config = YAML.load(
61
- File.read(File.expand_path("#{directory}/config.yml", __FILE__))
62
- )
63
- # estraggo i dati dallo yaml
64
- data = getConfigNavbarData(config)
65
- # aggiungo i dati nella risposta
66
- data.each do |single_voice|
67
- navbar_items.push(single_voice)
68
- end
46
+ if File.exist? "#{directory}/config.yml"
47
+ # accedo al config.yml
48
+ directory = core_getCacheDirectory
49
+ config = YAML.load(
50
+ File.read(File.expand_path("#{directory}/config.yml", __FILE__))
51
+ )
52
+ # estraggo i dati dallo yaml
53
+ data = getConfigNavbarData(config)
54
+ # aggiungo i dati nella risposta
55
+ data.each do |single_voice|
56
+ navbar_items.push(single_voice)
69
57
  end
70
- # ritorno il risultato
71
- navbar_items
72
58
  end
59
+ # ritorno il risultato
60
+ navbar_items
61
+ end
73
62
 
74
- # Estrae i dati relativi alla navbar dal file config.yml di una
75
- # applicazione controllando che la struttura del file sia corretta
76
- private def getConfigNavbarData(config)
77
- # inizializzo la lista di dati
78
- results = []
79
- # se il file e' formattato correttamente esamino ogni sua voce
80
- if config and config['menu']
81
- config['menu'].each do |voice|
82
- # estraggo i dati
83
- unique_name = voice[0]
84
- name = voice[1]['name'].capitalize
85
- url = voice[1]['url'].downcase
86
- icon = voice[1]['icon'].downcase
87
- position = voice[1]['position']
88
- permission = voice[1]['permission']
89
- # genero l'oggetto con le informazioni di output
90
- output_voice = {
91
- unique_name: unique_name,
92
- name: name,
93
- url: url,
94
- icon: icon,
95
- position: position,
96
- permission: permission
97
- }
98
- # aggiungo la voce al risultato
99
- results.push(output_voice)
100
- end
63
+ # This function read and return config datas about navbar from a config file.
64
+ private def getConfigNavbarData(config)
65
+ # inizializzo la lista di dati
66
+ results = []
67
+ # se il file e' formattato correttamente esamino ogni sua voce
68
+ if config and config['menu']
69
+ config['menu'].each do |voice|
70
+ # estraggo i dati
71
+ unique_name = voice[0]
72
+ name = voice[1]['name'].capitalize
73
+ url = voice[1]['url'].downcase
74
+ icon = voice[1]['icon'].downcase
75
+ position = voice[1]['position']
76
+ permission = voice[1]['permission']
77
+ # genero l'oggetto con le informazioni di output
78
+ output_voice = {
79
+ unique_name: unique_name,
80
+ name: name,
81
+ url: url,
82
+ icon: icon,
83
+ position: position,
84
+ permission: permission
85
+ }
86
+ # aggiungo la voce al risultato
87
+ results.push(output_voice)
101
88
  end
102
- # ritorno il risultato
103
- results
104
89
  end
105
-
90
+ # ritorno il risultato
91
+ results
106
92
  end
107
93
 
108
94
  end
@@ -1,71 +1,57 @@
1
1
  module LatoCore
2
- module Interface
3
- # Insieme di funzioni che permettono alla applicazione di gestire
4
- # le sessioni di utenze per l'accesso al backoffice.
5
- module Session
6
-
7
- # Funzione che crea una nuova sessione per permettere di accedere
8
- # alle funzionalita' del backoffice.
9
- # * *Args* :
10
- # - +username+ -> username dell'utente
11
- # - +password+ -> password dell'utente
12
- # * *Returns* :
13
- # - true se l'utente se la sessione e' stata creata correttamente
14
- # - false se i dati ricevuti come parametro non sono corretti
15
- def core_createSession(username, password)
16
- user = LatoCore::Superuser.find_by(username: username)
17
- if user && user.authenticate(password)
18
- # genero un session_code
19
- code = SecureRandom.urlsafe_base64
20
- # memorizzo il session_code sul db
21
- user.update_attribute('session_code', code)
22
- # genero le sessioni
23
- session[:user] = user.id
24
- session[:session_code] = code
25
- # ritorno true
26
- return true
27
- else
28
- # ritorno false
29
- return false
30
- end
2
+ # This module contains functions used to get information about user session.
3
+ module Interface::Session
4
+
5
+ # This function create a new session for user with username and
6
+ # password received as params.
7
+ def core_createSession(username, password)
8
+ user = LatoCore::Superuser.find_by(username: username)
9
+ if user && user.authenticate(password)
10
+ # genero un session_code
11
+ code = SecureRandom.urlsafe_base64
12
+ # memorizzo il session_code sul db
13
+ user.update_attribute('session_code', code)
14
+ # genero le sessioni
15
+ session[:user] = user.id
16
+ session[:session_code] = code
17
+ # ritorno true
18
+ return true
19
+ else
20
+ # ritorno false
21
+ return false
31
22
  end
23
+ end
32
24
 
33
- # Funzione che elimina una sessione di accesso al backoffice se presente
34
- # * *Returns* :
35
- # - true se la sessione e' stata eliminata
36
- # - false se la sessione e' ancora attiva
37
- def core_destroySession
38
- if session[:user] && session[:session_code]
39
- # determino l'utente della sessione
40
- user = LatoCore::Superuser.find(session[:user])
41
- # se l'utente esiste elimino il suo session_code dal db
42
- user.update_attribute('session_code', nil) if user
43
- # elimino le sessioni
44
- session[:user] = nil
45
- session[:session_code] = nil
46
- # ritorno true
47
- return true
48
- else
49
- # ritorno false
50
- return false
51
- end
25
+ # This function destroy the current user session.
26
+ def core_destroySession
27
+ if session[:user] && session[:session_code]
28
+ # determino l'utente della sessione
29
+ user = LatoCore::Superuser.find(session[:user])
30
+ # se l'utente esiste elimino il suo session_code dal db
31
+ user.update_attribute('session_code', nil) if user
32
+ # elimino le sessioni
33
+ session[:user] = nil
34
+ session[:session_code] = nil
35
+ # ritorno true
36
+ return true
37
+ else
38
+ # ritorno false
39
+ return false
52
40
  end
41
+ end
53
42
 
54
- # Funzione che controlla se l'utente ha una sessione valida.
55
- # * *Returns* :
56
- # - true se la sessione dell'utente risulta valida
57
- # - false se la sessione non esiste o non e' valida
58
- def core_controlSession
59
- user = LatoCore::Superuser.find(session[:user]) if session[:user]
43
+ # This function check if user session is valid.
44
+ def core_controlSession
45
+ user = LatoCore::Superuser.find(session[:user]) if session[:user]
60
46
 
61
- if user && session[:session_code] &&
62
- user.session_code === session[:session_code] &&
63
- !user.session_code.nil?
64
- return true
65
- else
66
- return false
67
- end
47
+ if user && session[:session_code] &&
48
+ user.session_code === session[:session_code] &&
49
+ !user.session_code.nil?
50
+ return true
51
+ else
52
+ return false
68
53
  end
69
54
  end
55
+
70
56
  end
71
57
  end
@@ -1,143 +1,134 @@
1
1
  module LatoCore
2
- module Interface
3
- # Insieme di funzioni che gestiscono varie impostazioni sulla gestione
4
- # e visualizzazione dei superusers
5
- module Superusers
2
+ # This module contains function used to manage superusers.
3
+ module Interface::Superusers
6
4
 
7
- # Funzione che richiede come parametri un utente, un titolo e un messaggio
8
- # e invia tale contenuto come notifica email all'utente
9
- def core_notifyUser(user, title, message)
10
- # richiamo mailer corretto
11
- LatoCore::SuperusersMailer.notify(user, title, message).deliver
12
- end
5
+ # This function send a notification email to user with title and
6
+ # description.
7
+ def core_notifyUser(user, title, message)
8
+ # richiamo mailer corretto
9
+ LatoCore::SuperusersMailer.notify(user, title, message).deliver
10
+ end
13
11
 
14
- # Funzione che ritorna una lista dei possibili permessi per gli utenti
15
- # utilizzando la seguente struttura: [[1, 'Nome'], [2, 'Nome']].
16
- # Il risultato della funzione e' compatibile con la componente input select
17
- # di lato_view
18
- def core_getUsersPermissions
19
- # definisco permessi iniziali
20
- initial_permissions = (1...11).to_a
12
+ # This function return a list of possible permissions for superusers with
13
+ # the string name for every permission.
14
+ def core_getUsersPermissions
15
+ # definisco permessi iniziali
16
+ initial_permissions = (1...11).to_a
21
17
 
22
- unpermitted = core_getHideUsersPermissionsSettings
23
- return initial_permissions if !unpermitted
24
- permitted_permissions = initial_permissions - unpermitted
18
+ unpermitted = core_getHideUsersPermissionsSettings
19
+ permitted_permissions = initial_permissions
20
+ permitted_permissions = initial_permissions - unpermitted if unpermitted
25
21
 
26
- permissions = []
27
- names = core_getUsersPermissionsNamesSettings
28
- return permitted_permissions if !names
22
+ permissions = []
23
+ names = core_getUsersPermissionsNamesSettings
24
+ return permitted_permissions if !names
29
25
 
30
- permitted_permissions.each do |permission|
31
- names.each do |name|
32
- permissions.push([permission, name.last]) if permission === name.first.to_i
33
- end
26
+ permitted_permissions.each do |permission|
27
+ names.each do |name|
28
+ permissions.push([permission, name.last]) if permission === name.first.to_i
34
29
  end
35
-
36
- return permissions
37
30
  end
38
31
 
39
- # Funzione che legge il file di cache e, se e' stato impostato per nascondere
40
- # determinati utenti ad altri utenti, ritorna tali informazione attraverso
41
- # un array con la seguente struttura: [[1,4], [1,3]]
42
- def core_getHideUsersSettings
43
- return CORE_SUPERUSERSHIDESETTINGS if defined? CORE_SUPERUSERSHIDESETTINGS
44
- # accedo al config.yml
45
- directory = core_getCacheDirectory
46
- config = YAML.load(
47
- File.read(File.expand_path("#{directory}/config.yml", __FILE__))
48
- )
49
- # controllo che il file di configurazione esista e abbia i dati necessari
50
- return false if !config['hide_users'] || config['hide_users'].nil?
51
- # estraggo lista impostazioni utenti da nascondere
52
- settings = config['hide_users'].split(',')
53
- # definisco output
54
- output = []
55
- # riempio file di output
56
- settings.each do |setting|
57
- setting.slice! ' '
58
- if setting
59
- values = setting.split('to')
60
- raise 'Permission value not correct on hide_users config' unless (1..11).to_a.include? values.first.to_i
61
- raise 'Permission value not correct on hide_users config' unless (1..11).to_a.include? values.last.to_i
62
- output.push([values.first, values.last])
63
- end
64
- end
65
- # ritorno l'output
66
- return output
67
- end
32
+ return permissions
33
+ end
68
34
 
69
- # Funzione che legge il file di configurazione e, se e' stato impostato di
70
- # nascondere determinati permessi di utenze dall'interfaccia, ritorna i
71
- # valori da nascondere in un array
72
- def core_getHideUsersPermissionsSettings
73
- return CORE_SUPERUSERSPERMISSIONSHIDESETTINGS if defined? CORE_SUPERUSERSPERMISSIONSHIDESETTINGS
74
- # accedo al config.yml
75
- directory = core_getCacheDirectory
76
- config = YAML.load(
77
- File.read(File.expand_path("#{directory}/config.yml", __FILE__))
78
- )
79
- # controllo che il file di configurazione esista e abbia i dati necessari
80
- return false if !config['hide_users_permissions'] || config['hide_users_permissions'].nil?
81
- # estraggo lista impostazioni utenti da nascondere
82
- settings = config['hide_users_permissions'].to_s.split(',')
83
- # definisco output
84
- output = []
85
- # riempio file di output
86
- settings.each do |setting|
87
- setting.slice! ' '
88
- if setting
89
- raise 'Permission value not correct on hide_users_permissions config' unless (1..11).to_a.include? setting.to_i
90
- output.push(setting.to_i)
91
- end
35
+ # This function return an array that tells how some users can't see
36
+ # other users with a specific permission value.
37
+ def core_getHideUsersSettings
38
+ return CORE_SUPERUSERSHIDESETTINGS if defined? CORE_SUPERUSERSHIDESETTINGS
39
+ # accedo al config.yml
40
+ directory = core_getCacheDirectory
41
+ config = YAML.load(
42
+ File.read(File.expand_path("#{directory}/config.yml", __FILE__))
43
+ )
44
+ # controllo che il file di configurazione esista e abbia i dati necessari
45
+ return false if !config['hide_users'] || config['hide_users'].nil?
46
+ # estraggo lista impostazioni utenti da nascondere
47
+ settings = config['hide_users'].split(',')
48
+ # definisco output
49
+ output = []
50
+ # riempio file di output
51
+ settings.each do |setting|
52
+ setting.slice! ' '
53
+ if setting
54
+ values = setting.split('to')
55
+ raise 'Permission value not correct on hide_users config' unless (1..11).to_a.include? values.first.to_i
56
+ raise 'Permission value not correct on hide_users config' unless (1..11).to_a.include? values.last.to_i
57
+ output.push([values.first, values.last])
92
58
  end
93
- # ritorno l'output
94
- return output
95
59
  end
60
+ # ritorno l'output
61
+ return output
62
+ end
96
63
 
97
- # Funzione che legge il file di configurazione e, se e' stato impostato di rinominare
98
- # dei valori di permessi degli utenti, ritorna tali valori in un array con la seguente
99
- # struttura: [[1,'nome'], [4,'nome']]
100
- def core_getUsersPermissionsNamesSettings
101
- return CORE_SUPERUSERSPERMISSIONSNAMESSETTINGS if defined? CORE_SUPERUSERSPERMISSIONSNAMESSETTINGS
102
- # accedo al config.yml
103
- directory = core_getCacheDirectory
104
- config = YAML.load(
105
- File.read(File.expand_path("#{directory}/config.yml", __FILE__))
106
- )
107
- # controllo che il file di configurazione esista e abbia i dati necessari
108
- return false if !config['rename_users_permissions'] || config['rename_users_permissions'].nil?
109
- # estraggo lista impostazioni utenti da nascondere
110
- settings = config['rename_users_permissions'].split(',')
111
- # definisco output
112
- output = []
113
- # riempio file di output
114
- settings.each do |setting|
115
- setting.slice! ' '
116
- if setting
117
- values = setting.split('-')
118
- raise 'Permission value not correct on rename_users_permissions config' unless (1..11).to_a.include? values.first.to_i
119
- output.push([values.first, values.last])
120
- end
64
+ # This function return an array of permissions value that must be hidden
65
+ # from the user interface.
66
+ def core_getHideUsersPermissionsSettings
67
+ return CORE_SUPERUSERSPERMISSIONSHIDESETTINGS if defined? CORE_SUPERUSERSPERMISSIONSHIDESETTINGS
68
+ # accedo al config.yml
69
+ directory = core_getCacheDirectory
70
+ config = YAML.load(
71
+ File.read(File.expand_path("#{directory}/config.yml", __FILE__))
72
+ )
73
+ # controllo che il file di configurazione esista e abbia i dati necessari
74
+ return false if !config['hide_users_permissions'] || config['hide_users_permissions'].nil?
75
+ # estraggo lista impostazioni utenti da nascondere
76
+ settings = config['hide_users_permissions'].to_s.split(',')
77
+ # definisco output
78
+ output = []
79
+ # riempio file di output
80
+ settings.each do |setting|
81
+ setting.slice! ' '
82
+ if setting
83
+ raise 'Permission value not correct on hide_users_permissions config' unless (1..11).to_a.include? setting.to_i
84
+ output.push(setting.to_i)
121
85
  end
122
- # ritorno l'output
123
- return output
124
86
  end
87
+ # ritorno l'output
88
+ return output
89
+ end
125
90
 
126
- # Funzione che controlla se e' permesso il servizio di recupero password
127
- # per gli utenti. Ritorna true se è permesso, false altrimenti.
128
- def core_getRecoveryPasswordPermission
129
- return CORE_RECOVERYPASSWORDPERMISSION if defined? CORE_RECOVERYPASSWORDPERMISSION
130
- # accedo al config.yml
131
- directory = core_getCacheDirectory
132
- config = YAML.load(
133
- File.read(File.expand_path("#{directory}/config.yml", __FILE__))
134
- )
135
- # controllo che il file di configurazione esista e abbia i dati necessari
136
- return false if !config['recovery_password'] || config['recovery_password'].nil?
137
- # ritorno valore letto
138
- return config['recovery_password']
91
+ # This function return an array with correct name fr every permission
92
+ # if name is set on config file.
93
+ def core_getUsersPermissionsNamesSettings
94
+ return CORE_SUPERUSERSPERMISSIONSNAMESSETTINGS if defined? CORE_SUPERUSERSPERMISSIONSNAMESSETTINGS
95
+ # accedo al config.yml
96
+ directory = core_getCacheDirectory
97
+ config = YAML.load(
98
+ File.read(File.expand_path("#{directory}/config.yml", __FILE__))
99
+ )
100
+ # controllo che il file di configurazione esista e abbia i dati necessari
101
+ return false if !config['rename_users_permissions'] || config['rename_users_permissions'].nil?
102
+ # estraggo lista impostazioni utenti da nascondere
103
+ settings = config['rename_users_permissions'].split(',')
104
+ # definisco output
105
+ output = []
106
+ # riempio file di output
107
+ settings.each do |setting|
108
+ setting.slice! ' '
109
+ if setting
110
+ values = setting.split('-')
111
+ raise 'Permission value not correct on rename_users_permissions config' unless (1..11).to_a.include? values.first.to_i
112
+ output.push([values.first, values.last])
113
+ end
139
114
  end
115
+ # ritorno l'output
116
+ return output
117
+ end
140
118
 
119
+ # This function tells if is possible for user to recover his password.
120
+ def core_getRecoveryPasswordPermission
121
+ return CORE_RECOVERYPASSWORDPERMISSION if defined? CORE_RECOVERYPASSWORDPERMISSION
122
+ # accedo al config.yml
123
+ directory = core_getCacheDirectory
124
+ config = YAML.load(
125
+ File.read(File.expand_path("#{directory}/config.yml", __FILE__))
126
+ )
127
+ # controllo che il file di configurazione esista e abbia i dati necessari
128
+ return false if !config['recovery_password'] || config['recovery_password'].nil?
129
+ # ritorno valore letto
130
+ return config['recovery_password']
141
131
  end
132
+
142
133
  end
143
134
  end