diff --git a/lang/en/repository.php b/lang/en/repository.php
index 49050f045da97..3ce42b4b8e199 100644
--- a/lang/en/repository.php
+++ b/lang/en/repository.php
@@ -103,8 +103,9 @@
$string['instance'] = 'instance';
$string['instancedeleted'] = 'Instance deleted';
$string['instances'] = 'Repository instances';
-$string['instancesforadmin'] = 'common instance(s)';
-$string['instancesforothers'] = 'private instance(s)';
+$string['instancesforsite'] = '{$a} Site-wide common instance(s)';
+$string['instancesforcourses'] = '{$a} Course-wide common instance(s)';
+$string['instancesforusers'] = '{$a} User private instance(s)';
$string['invalidjson'] = 'Invalid JSON string';
$string['invalidplugin'] = 'Invalid repository {$a} plug-in';
$string['invalidfiletype'] = '{$a} filetype cannot be accepted.';
diff --git a/lib/adminlib.php b/lib/adminlib.php
index 9ae4d2eec43dc..ef89fd6a99b99 100644
--- a/lib/adminlib.php
+++ b/lib/adminlib.php
@@ -6303,16 +6303,43 @@ public function output_html($data, $query='') {
$params['onlyvisible'] = false;
$params['type'] = $typename;
$admininstancenumber = count(repository::static_function($typename, 'get_instances', $params));
- $admininstancenumbertext = "
". $admininstancenumber . " " . get_string('instancesforadmin', 'repository');
+ // site instances
+ $admininstancenumbertext = get_string('instancesforsite', 'repository', $admininstancenumber);
$params['context'] = array();
- $instancenumber = count(repository::static_function($typename, 'get_instances', $params)) - $admininstancenumber;
- $instancenumbertext = "
" . $instancenumber . " " . get_string('instancesforothers', 'repository');
+ $instances = repository::static_function($typename, 'get_instances', $params);
+ $courseinstances = array();
+ $userinstances = array();
+
+ foreach ($instances as $instance) {
+ if ($instance->context->contextlevel == CONTEXT_COURSE) {
+ $courseinstances[] = $instance;
+ } else if ($instance->context->contextlevel == CONTEXT_USER) {
+ $userinstances[] = $instance;
+ }
+ }
+ // course instances
+ $instancenumber = count($courseinstances);
+ $courseinstancenumbertext = get_string('instancesforcourses', 'repository', $instancenumber);
+
+ // user private instances
+ $instancenumber = count($userinstances);
+ $userinstancenumbertext = get_string('instancesforusers', 'repository', $instancenumber);
} else {
$admininstancenumbertext = "";
- $instancenumbertext = "";
+ $courseinstancenumbertext = "";
+ $userinstancenumbertext = "";
}
- $settings .= '' . $settingsstr .'' . $admininstancenumbertext . $instancenumbertext . "\n";
+ $settings .= '' . $settingsstr .'';
+
+ $settings .= $OUTPUT->container_start('mdl-left');
+ $settings .= '
';
+ $settings .= $admininstancenumbertext;
+ $settings .= '
';
+ $settings .= $courseinstancenumbertext;
+ $settings .= '
';
+ $settings .= $userinstancenumbertext;
+ $settings .= $OUTPUT->container_end();
}
// Get the current visibility
if ($i->get_visible()) {