Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
limbra
limbra
Commits
bc058cca
Commit
bc058cca
authored
Apr 23, 2017
by
LE GAC Renaud
Browse files
Polish new modules.
parent
35799c60
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
58 additions
and
30 deletions
+58
-30
controllers/admin.py
controllers/admin.py
+3
-0
models/common_settings.py
models/common_settings.py
+2
-0
modules/ui_app.py
modules/ui_app.py
+1
-1
modules/ui_core.py
modules/ui_core.py
+1
-0
modules/ui_selector.py
modules/ui_selector.py
+2
-0
modules/ui_viewport.py
modules/ui_viewport.py
+49
-29
No files found.
controllers/admin.py
View file @
bc058cca
""" Main Controller to run the application with some privileges.
"""
from
gluon
import
current
from
auth
import
ADMIN
,
USER
@
auth
.
requires
(
True
,
requires_login
=
not
request
.
is_local
)
def
index
():
...
...
models/common_settings.py
View file @
bc058cca
...
...
@@ -25,6 +25,7 @@ from model_app import App
from
model_core
import
Core
from
model_harvester
import
Harvester
from
model_report
import
Report
from
model_selector
import
Selector
from
plugin_dbui
import
(
configure_forms
,
configure_grids
,
...
...
@@ -95,6 +96,7 @@ App.define_tables(db, T)
Core
.
define_tables
(
db
,
T
)
Harvester
.
define_tables
(
db
,
T
)
Report
.
define_tables
(
db
,
T
)
Selector
.
define_tables
(
virtdb
,
db
,
T
)
# ............................................................................
#
...
...
modules/ui_app.py
View file @
bc058cca
...
...
@@ -18,7 +18,7 @@ class AppUI(object):
T (gluon.languages.translator): language translator
"""
AppUI
.
preferences
(
db
,
T
)
AppUI
.
preferences
(
db
,
T
)
@
staticmethod
def
preferences
(
db
,
T
):
...
...
modules/ui_core.py
View file @
bc058cca
...
...
@@ -258,6 +258,7 @@ class CoreUI(object):
"pages"
,
fieldLabel
=
T
(
"Volume / pages"
))
session
=
current
.
globalenv
[
"session"
]
if
session
.
role
==
USER
:
mdf
.
configure_field
(
"id_status"
,
hidden
=
True
)
...
...
modules/ui_selector.py
View file @
bc058cca
...
...
@@ -3,6 +3,7 @@
"""
from
auth
import
ADMIN
from
gluon
import
current
from
harvest_tools
import
DRY_RUN
from
plugin_dbui
import
(
FieldsModifier
,
FormModifier
)
...
...
@@ -61,6 +62,7 @@ class SelectorUI(object):
emptyText
=
tr_select
,
xtype
=
"xcomboboxuserreset"
)
session
=
current
.
globalenv
[
"session"
]
if
session
.
role
!=
ADMIN
:
virtdb
.
check_selector
.
mode
.
default
=
T
(
DRY_RUN
)
mdf
.
configure_field
(
"mode"
,
hidden
=
True
)
...
...
modules/ui_viewport.py
View file @
bc058cca
...
...
@@ -9,7 +9,7 @@ from gluon.html import URL
from
plugin_dbui
import
(
Node
,
Panel
,
to_gridPanel
,
P
anelWithUrlSelector
,
to_p
anelWithUrlSelector
,
ViewportModifier
,
Window
)
...
...
@@ -43,16 +43,18 @@ class ViewportUi(object):
virtual database with the definition of selectors
"""
session
=
current
.
globalenv
[
"session"
]
nodes
=
[
ViewportUi
.
help_node
(
db
,
T
),
ViewportUi
.
app_node
(
db
,
T
),
ViewportUi
.
wizard_node
(
db
,
T
,
virtdb
),
ViewportUi
.
configure_harvester_node
(
db
,
T
),
ViewportUi
.
configure_list_node
(
db
,
T
),
ViewportUi
.
configure_metric_node
(
db
,
T
),
ViewportUi
.
data_institute_node
(
db
,
T
),
ViewportUi
.
data_publication_node
(
db
,
T
),
ViewportUi
.
harvester_node
(
db
,
T
,
virtdb
),
ViewportUi
.
help_node
(
db
,
T
,
session
),
ViewportUi
.
app_node
(
db
,
T
,
session
),
ViewportUi
.
wizard_node
(
db
,
T
,
session
,
virtdb
),
ViewportUi
.
configure_harvester_node
(
db
,
T
,
session
),
ViewportUi
.
configure_list_node
(
db
,
T
,
session
),
ViewportUi
.
configure_metric_node
(
db
,
T
,
session
),
ViewportUi
.
data_institute_node
(
db
,
T
,
session
),
ViewportUi
.
data_publication_node
(
db
,
T
,
session
),
ViewportUi
.
harvester_node
(
db
,
T
,
session
,
virtdb
),
ViewportUi
.
report_node
(
db
,
T
,
virtdb
)]
mdf
=
ViewportModifier
()
...
...
@@ -64,6 +66,7 @@ class ViewportUi(object):
if
current
.
auth
is
not
None
:
mdf
.
configure
(
logged
=
False
,
plugins
=
[
"pViewportLogin"
])
session
=
current
.
globalenv
[
"session"
]
if
session
.
role
in
(
ADMIN
,
USER
):
mdf
.
configure
(
logged
=
True
)
mdf
.
default_node
(
T
(
"Data publications"
),
T
(
"publications"
))
...
...
@@ -72,12 +75,13 @@ class ViewportUi(object):
mdf
.
default_node
(
T
(
"Reports"
),
T
(
"dashboard"
))
@
staticmethod
def
app_node
(
db
,
T
):
def
app_node
(
db
,
T
,
session
):
"""To deal with preferences for the application.
Args:
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
session (gluon.storage.Storage):
Returns:
dbui.Node:
...
...
@@ -85,6 +89,7 @@ class ViewportUi(object):
"""
node
=
None
if
session
.
role
==
ADMIN
:
node
=
Node
(
T
(
"Application"
))
...
...
@@ -110,12 +115,13 @@ class ViewportUi(object):
return
node
@
staticmethod
def
configure_harvester_node
(
db
,
T
):
def
configure_harvester_node
(
db
,
T
,
session
):
"""To configure harvesters.
Args:
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
session (gluon.storage.Storage):
Returns:
dbui.Node:
...
...
@@ -123,6 +129,7 @@ class ViewportUi(object):
"""
node
=
None
if
session
.
role
in
(
ADMIN
,
USER
):
node
=
Node
(
T
(
"Configure harvesters"
))
...
...
@@ -139,12 +146,13 @@ class ViewportUi(object):
return
node
@
staticmethod
def
configure_list_node
(
db
,
T
):
def
configure_list_node
(
db
,
T
,
session
):
"""To configure list.
Args:
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
session (gluon.storage.Storage):
Returns:
dbui.Node:
...
...
@@ -152,6 +160,7 @@ class ViewportUi(object):
"""
node
=
None
if
session
.
role
==
ADMIN
:
node
=
Node
(
T
(
"Configure lists"
))
...
...
@@ -166,12 +175,13 @@ class ViewportUi(object):
return
node
@
staticmethod
def
configure_metric_node
(
db
,
T
):
def
configure_metric_node
(
db
,
T
,
session
):
"""To configure metrics.
Args:
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
session (gluon.storage.Storage):
Returns:
dbui.Node:
...
...
@@ -179,6 +189,7 @@ class ViewportUi(object):
"""
node
=
None
if
session
.
role
==
ADMIN
:
node
=
Node
(
T
(
"Configure graphs and metrics"
))
...
...
@@ -190,7 +201,7 @@ class ViewportUi(object):
return
node
@
staticmethod
def
data_institute_node
(
db
,
T
):
def
data_institute_node
(
db
,
T
,
session
):
"""To define data for the institute, affiliation_keys, projects
and teams.
...
...
@@ -198,6 +209,7 @@ class ViewportUi(object):
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
configuration of the selector panel.
session (gluon.storage.Storage):
Returns:
dbui.Node:
...
...
@@ -205,6 +217,7 @@ class ViewportUi(object):
"""
node
=
None
if
session
.
role
==
ADMIN
:
node
=
Node
(
T
(
"Data institute"
))
...
...
@@ -219,12 +232,13 @@ class ViewportUi(object):
return
node
@
staticmethod
def
data_publication_node
(
db
,
T
):
def
data_publication_node
(
db
,
T
,
session
):
"""To define data for publications.
Args:
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
session (gluon.storage.Storage):
Returns:
dbui.Node:
...
...
@@ -232,6 +246,7 @@ class ViewportUi(object):
"""
node
=
None
if
session
.
role
in
(
ADMIN
,
USER
):
node
=
Node
(
T
(
"Data publications"
))
...
...
@@ -254,12 +269,13 @@ class ViewportUi(object):
return
node
@
staticmethod
def
harvester_node
(
db
,
T
,
virtdb
):
def
harvester_node
(
db
,
T
,
session
,
virtdb
):
"""To run harvester.
Args:
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
session (gluon.storage.Storage):
virtdb (pyDAL.DAL):
virtual database with the definition of selectors
...
...
@@ -269,23 +285,24 @@ class ViewportUi(object):
"""
node
=
None
if
session
.
role
in
(
ADMIN
,
USER
):
node
=
Node
(
T
(
"Harvest"
))
free_panel
=
P
anelWithUrlSelector
(
free_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
free_harvester_selector
,
baseUrl
=
URL
(
"harvest"
,
"free_run"
),
selectorTitle
=
"Fill all fields"
,
timeout
=
ONE_HOUR
)
harvester_panel
=
P
anelWithUrlSelector
(
harvester_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
harvester_selector
,
baseUrl
=
URL
(
"harvest"
,
"run"
),
extField
=
"format"
,
timeout
=
ONE_HOUR
)
run_all_panel
=
P
anelWithUrlSelector
(
run_all_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
run_all_harvesters_selector
,
baseUrl
=
URL
(
"harvest"
,
"run_all"
),
extField
=
"format"
,
...
...
@@ -301,12 +318,13 @@ class ViewportUi(object):
return
node
@
staticmethod
def
help_node
(
db
,
T
):
def
help_node
(
db
,
T
,
session
):
"""To deal with documentation and version.
Args:
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
session (gluon.storage.Storage):
Returns:
dbui.Node:
...
...
@@ -394,18 +412,18 @@ class ViewportUi(object):
plugins
=
[
"pPanelLoaderException"
],
autoScroll
=
True
)
graph_panel
=
P
anelWithUrlSelector
(
graph_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
graph_selector
,
baseUrl
=
URL
(
"graphs"
,
"index"
),
extField
=
"format"
)
list_panel
=
P
anelWithUrlSelector
(
list_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
list_selector
,
baseUrl
=
URL
(
"lists"
,
"index"
),
extField
=
"format"
,
plugins
=
[
"pMathJax"
])
metric_panel
=
P
anelWithUrlSelector
(
metric_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
metric_selector
,
baseUrl
=
URL
(
"metrics"
,
"index"
),
extField
=
"format"
)
...
...
@@ -419,12 +437,13 @@ class ViewportUi(object):
return
node
@
staticmethod
def
wizard_node
(
db
,
T
,
virtdb
):
def
wizard_node
(
db
,
T
,
session
,
virtdb
):
"""To run wizards.
Args:
db (pyDAL.DAL): database connection
T (gluon.languages.translator): language translator
session (gluon.storage.Storage):
virtdb (pyDAL.DAL):
virtual database with the definition of selectors
...
...
@@ -434,26 +453,27 @@ class ViewportUi(object):
"""
node
=
None
session
=
current
.
globalenv
[
"session"
]
if
session
.
role
in
(
ADMIN
,
USER
):
node
=
Node
(
T
(
"Wizards"
))
author_panel
=
P
anelWithUrlSelector
(
author_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
authors_selector
,
baseUrl
=
URL
(
"wizards"
,
"extract_authors"
))
check_panel
=
P
anelWithUrlSelector
(
check_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
check_selector
,
baseUrl
=
URL
(
"wizards"
,
"check_validate"
),
extField
=
"format"
,
timeout
=
ONE_HOUR
)
edit_panel
=
P
anelWithUrlSelector
(
edit_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
edit_insert_selector
,
baseUrl
=
URL
(
"harvest"
,
"edit_insert"
),
selectorTitle
=
"Fill all fields"
)
marc12_panel
=
P
anelWithUrlSelector
(
marc12_panel
=
to_p
anelWithUrlSelector
(
virtdb
.
marc12_selector
,
selectorTitle
=
"Fill all fields"
,
baseUrl
=
URL
(
"harvest"
,
"insert_marcxml"
))
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment