lato_core 1.1.1 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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