]> git.mjollnir.org Git - moodle.git/commitdiff
repository MDL-15404 display instance number into the administration
authorjerome <jerome>
Fri, 1 May 2009 06:55:10 +0000 (06:55 +0000)
committerjerome <jerome>
Fri, 1 May 2009 06:55:10 +0000 (06:55 +0000)
lang/en_utf8/repository.php
lib/adminlib.php

index a1a150069430747172a2cdb0591144dd64394f42..62a4c0213b9e85a406c628e6500f365647a180b7 100644 (file)
@@ -51,6 +51,8 @@ $string['keyword'] = 'Keyword';
 $string['instance'] = 'instance';
 $string['instancedeleted'] = 'Instance deleted';
 $string['instances'] = 'Repository instances';
+$string['instancesforadmin'] = 'common instance(s)';
+$string['instancesforothers'] = 'private instance(s)';
 $string['invalidrepositoryid'] = 'Invalid repository ID';
 $string['invalidplugin'] = 'Invalid repository $a plug-in';
 $string['invalidjson'] = 'Invalid JSON string';
index 78038eda957ffa4efb5f1db2f65df74d33cee5c3..28ab9c3e07cebe610225075dc6c9b998435b0a68 100644 (file)
@@ -4698,9 +4698,24 @@ class admin_setting_managerepository extends admin_setting {
             //display edit link only if you can config the type or if it has multiple instances (e.g. has instance config)
             $typeoptionnames = repository::static_function($i->get_typename(), 'get_type_option_names');
             $instanceoptionnames = repository::static_function($i->get_typename(), 'get_instance_option_names');
+
             if ( !empty($typeoptionnames) || !empty($instanceoptionnames)) {
+                
+                //calculate number of instances in order to display them for the Moodle administrator
+                if (!empty($instanceoptionnames)) {
+                    $admininstancenumber = count(repository::static_function($i->get_typename(), 'get_instances', array(get_context_instance(CONTEXT_SYSTEM)),null,false,$i->get_typename()));
+                    $admininstancenumbertext =   " <br/> ". $admininstancenumber .
+                                        " " . get_string('instancesforadmin', 'repository');
+                    $instancenumber =  count(repository::static_function($i->get_typename(), 'get_instances', array(),null,false,$i->get_typename())) - $admininstancenumber;
+                    $instancenumbertext =  "<br/>" . $instancenumber .
+                                        " " . get_string('instancesforothers', 'repository');
+                } else {
+                    $admininstancenumbertext = "";
+                    $instancenumbertext = "";
+                }
+
                 $settings .= '<a href="' . $this->baseurl . '&amp;edit=' . $i->get_typename() . '">'
-                              . $settingsstr .'</a>' . "\n";
+                              . $settingsstr .'</a>' . $admininstancenumbertext . $instancenumbertext . "\n";
             }
             $delete = '<a href="' . $this->baseurl . '&amp;delete=' .  $i->get_typename() . '">'
                         . $deletestr . '</a>' . "\n";