Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
mahara
mahara
Commits
61b1cf22
Commit
61b1cf22
authored
Dec 11, 2007
by
Richard Mansfield
Browse files
Make institution admins/staff pages work if user has >1 institution
parent
89ba3f0c
Changes
5
Hide whitespace changes
Inline
Side-by-side
htdocs/admin/users/institutionadmins.php
View file @
61b1cf22
...
...
@@ -38,8 +38,8 @@ require_once('pieforms/pieform.php');
$smarty
=
smarty
();
require_once
(
'institution.php'
);
$institution
element
=
get
_institution_selector
();
$institution
=
empty
(
$institutionelement
[
'value'
])
?
$institutionelement
[
'defaultvalue'
]
:
$institutionelement
[
'value'
]
;
$institution
=
add
_institution_selector
_to_page
(
&
$smarty
,
param_alphanum
(
'institution'
,
false
),
get_config
(
'wwwroot'
)
.
'admin/users/institutionadmins.php'
)
;
// Get users who are currently admins
$adminusers
=
get_column
(
'usr_institution'
,
'usr'
,
'admin'
,
1
,
'institution'
,
$institution
);
...
...
@@ -58,7 +58,10 @@ $form = array(
'institution'
=>
$institution
),
'searchscript'
=>
'admin/users/search.json.php'
,
),
'institution'
=>
$institutionelement
,
'institution'
=>
array
(
'type'
=>
'hidden'
,
'value'
=>
$institution
,
),
'submit'
=>
array
(
'type'
=>
'submit'
,
'value'
=>
get_string
(
'submit'
)
...
...
@@ -86,7 +89,7 @@ function adminusers_submit(Pieform $form, $values) {
}
db_commit
();
$SESSION
->
add_ok_msg
(
get_string
(
'adminusersupdated'
,
'admin'
));
redirect
(
'/admin/users/institutionadmins.php
'
);
redirect
(
'/admin/users/institutionadmins.php
?institution='
.
$inst
);
}
$smarty
->
assign
(
'adminusersform'
,
pieform
(
$form
));
...
...
htdocs/admin/users/institutionstaff.php
View file @
61b1cf22
...
...
@@ -38,8 +38,8 @@ require_once('pieforms/pieform.php');
$smarty
=
smarty
();
require_once
(
'institution.php'
);
$institution
element
=
get
_institution_selector
();
$institution
=
empty
(
$institutionelement
[
'value'
])
?
$institutionelement
[
'defaultvalue'
]
:
$institutionelement
[
'value'
]
;
$institution
=
add
_institution_selector
_to_page
(
&
$smarty
,
param_alphanum
(
'institution'
,
false
),
get_config
(
'wwwroot'
)
.
'admin/users/institutionstaff.php'
)
;
// Get users who are currently staff
$staffusers
=
get_column
(
'usr_institution'
,
'usr'
,
'staff'
,
1
,
'institution'
,
$institution
);
...
...
@@ -58,7 +58,10 @@ $form = array(
'institution'
=>
$institution
),
'searchscript'
=>
'admin/users/search.json.php'
,
),
'institution'
=>
$institutionelement
,
'institution'
=>
array
(
'type'
=>
'hidden'
,
'value'
=>
$institution
,
),
'submit'
=>
array
(
'type'
=>
'submit'
,
'value'
=>
get_string
(
'submit'
)
...
...
@@ -86,7 +89,7 @@ function staffusers_submit(Pieform $form, $values) {
}
db_commit
();
$SESSION
->
add_ok_msg
(
get_string
(
'staffusersupdated'
,
'admin'
));
redirect
(
'/admin/users/institutionstaff.php
'
);
redirect
(
'/admin/users/institutionstaff.php
?institution='
.
$inst
);
}
$smarty
->
assign
(
'staffusersform'
,
pieform
(
$form
));
...
...
htdocs/lib/institution.php
View file @
61b1cf22
...
...
@@ -360,4 +360,47 @@ function get_institution_selector($includedefault = true) {
return
$institutionelement
;
}
/* The institution selector does exactly the same thing in both
institutionadmins.php and institutionstaff.php (in /admin/users/).
This function creates the form for the page, setting
$institutionselector and $INLINEJAVASCRIPT in the smarty object. */
function
add_institution_selector_to_page
(
$smarty
,
$institution
,
$page
)
{
require_once
(
'pieforms/pieform.php'
);
$institutionelement
=
get_institution_selector
(
false
);
global
$USER
;
if
(
empty
(
$institution
)
||
!
$USER
->
can_edit_institution
(
$institution
))
{
$institution
=
empty
(
$institutionelement
[
'value'
])
?
$institutionelement
[
'defaultvalue'
]
:
$institutionelement
[
'value'
];
}
else
{
$institutionelement
[
'defaultvalue'
]
=
$institution
;
}
$institutionselector
=
pieform
(
array
(
'name'
=>
'institutionselect'
,
'elements'
=>
array
(
'institution'
=>
$institutionelement
,
)
));
$js
=
<<<
EOF
function
reloadUsers
()
{
var
inst
=
''
;
if
(
$
(
'institutionselect_institution'
))
{
inst
=
'?institution='
+
$
(
'institutionselect_institution'
)
.
value
;
}
window
.
location
.
href
=
'{$page}'
+
inst
;
}
addLoadEvent
(
function
()
{
if
(
$
(
'institutionselect_institution'
))
{
connect
(
$
(
'institutionselect_institution'
),
'onchange'
,
reloadUsers
);
}
});
EOF
;
$smarty
->
assign
(
'institutionselector'
,
$institutionselector
);
$smarty
->
assign
(
'INLINEJAVASCRIPT'
,
$js
);
return
$institution
;
}
?>
htdocs/theme/default/templates/admin/users/institutionadmins.tpl
View file @
61b1cf22
...
...
@@ -5,6 +5,7 @@
<p>
{
str
tag
=
"institutionadminuserspagedescription"
section
=
"admin"
}
</p>
{
$institutionselector
}
{
$adminusersform
}
{
include
file
=
"columnfullend.tpl"
}
...
...
htdocs/theme/default/templates/admin/users/institutionstaff.tpl
View file @
61b1cf22
...
...
@@ -5,6 +5,7 @@
<p>
{
str
tag
=
"institutionstaffuserspagedescription"
section
=
"admin"
}
</p>
{
$institutionselector
}
{
$staffusersform
}
{
include
file
=
"columnfullend.tpl"
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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