diff --git a/info.textgrid.middleware.tgauth.rbac/rbacSoap/TgExtra.class.php b/info.textgrid.middleware.tgauth.rbac/rbacSoap/TgExtra.class.php
index 846dffed8aca2c2b9d67e02b4f63524f2738ca2c..64efdfcc713a41768d1da6441783384bd7d4e187 100755
--- a/info.textgrid.middleware.tgauth.rbac/rbacSoap/TgExtra.class.php
+++ b/info.textgrid.middleware.tgauth.rbac/rbacSoap/TgExtra.class.php
@@ -2310,29 +2310,33 @@ class TgExtra {
 
 
   // -----------------------------------------------------
-  // Function: hasPublicResources
+  // Function: getNumberOfResources
   // Input: auth / xsd:string
   //        log / xsd:string
   //        project / xsd:string
-  // Output: result / xsd:boolean
+  // Output: allresources / xsd:int
+  //         publicresources / xsd:int
   // Description
   //   Checks if a given project has any public resources.
   // -----------------------------------------------------
-  public function hasPublicResources( $inRequest ) {
+  public function getNumberOfResources ( $inRequest ) {
 
-    $result = new booleanResponse();
-    $strFilter = "";
+    $result = new stdClass();
 
+    // Filter for ALL resources...
+    $strFilter = "(&(objectClass=TextGridResource)(TGProjectId=" . $inRequest->project . "))";
 
-    // Construct a filter that searches for the public
-    // resources of a project.
-    $strFilter .= "(&(objectClass=TextGridResource)(TGisPublic=TRUE)(TGProjectId=" . $inRequest->project . "))";
+    $arrResource = $this->connection['resource']->search( $this->rbac->getConfiguration()->getValue( "resource", "base" ), $strFilter, "sub", array("TGisPublic" ));
 
+    $result->allresources = sizeof( $arrResource );
 
-    $arrResource = $this->connection['resource']->search( $this->rbac->getConfiguration()->getValue( "resource", "base" ), $strFilter, "sub" );
+    // Construct a filter that searches for the public
+    // resources of a project.
+    $strFilter = "(&(objectClass=TextGridResource)(TGisPublic=TRUE)(TGProjectId=" . $inRequest->project . "))";
 
+    $arrResource = $this->connection['resource']->search( $this->rbac->getConfiguration()->getValue( "resource", "base" ), $strFilter, "sub", array("TGisPublic" ) );
 
-    $result->result = ( sizeof( $arrResource ) > 0 );
+    $result->publicresources = sizeof( $arrResource );
 
 
     return $result;
diff --git a/info.textgrid.middleware.tgauth.rbac/rbacSoap/examples/getNumberOfResources.php b/info.textgrid.middleware.tgauth.rbac/rbacSoap/examples/getNumberOfResources.php
new file mode 100755
index 0000000000000000000000000000000000000000..f3204be65fd3c1844cf337461327b1d53f35f33d
--- /dev/null
+++ b/info.textgrid.middleware.tgauth.rbac/rbacSoap/examples/getNumberOfResources.php
@@ -0,0 +1,65 @@
+<?php
+// #######################################################
+// Author: Markus Widmer
+// Creation date: 14.04.2008
+// Modification date: 14.04.2008
+// Version: 0.1.0
+// #######################################################
+
+
+require_once( "../soapTypes.inc.php" );
+
+
+
+// -----------------------------------------------------
+// You'll need these services
+// -----------------------------------------------------
+$soapExtra = new SoapClient( "../wsdl/tgextra.wsdl" );
+
+
+echo "<BODY><HTML>";
+
+
+
+
+if( isset( $_POST['project'] ) ) {
+
+  // -----------------------------------------------------
+  // If this was successfull you can add a the user you
+  // wish to create
+  // -----------------------------------------------------
+  $regReq = new stdClass();
+  $regReq->auth = "";
+  $reqReq->log = "";
+  $regReq->project = $_POST['project'];
+
+
+  echo "<HR/>";
+  echo "Checking for resources...<BR/>";
+
+  try {
+
+    $checkResponse = $soapExtra->getNumberOfResources( $regReq );
+
+    echo "All resources: " . $checkResponse->allresources;	
+    echo "<br/>Public resources: " . $checkResponse->publicresources;	
+
+  }
+  catch( SoapFault $f ) {
+
+    echo "SOAP FAULT!: " . $f->faultcode . " / " . $f->faultstring . " / " . $f->detail;
+
+  }
+
+}
+
+
+echo "<FORM action=\"getNumberOfResources.php\" method=\"post\" enctype=\"multipart/form-data\">\n";
+//echo "Auth: <INPUT type=\"text\" name=\"auth\" value=\"\"><BR>\n";
+echo "Project: <INPUT type=\"text\" name=\"project\" value=\"\"><BR>\n";
+echo "<INPUT type=\"submit\" value=\"Commit...\">\n";
+echo "</FORM>\n";
+
+echo "</BODY></HTML>";
+
+?>
diff --git a/info.textgrid.middleware.tgauth.rbac/rbacSoap/wsdl-8081/tgextra.wsdl b/info.textgrid.middleware.tgauth.rbac/rbacSoap/wsdl-8081/tgextra.wsdl
index c2d36c1ee3b2aa8ad460adb7827497c4b41e62c2..1f06a1f8bb443a19cf727e3aee9baa91957d85fc 100644
--- a/info.textgrid.middleware.tgauth.rbac/rbacSoap/wsdl-8081/tgextra.wsdl
+++ b/info.textgrid.middleware.tgauth.rbac/rbacSoap/wsdl-8081/tgextra.wsdl
@@ -339,8 +339,8 @@
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
-<!-- #### hasPublicResourcesRequest #### //-->
-      <xsd:element name="hasPublicResourcesRequest">
+<!-- #### getNumberOfResourcesRequest #### //-->
+      <xsd:element name="getNumberOfResourcesRequest">
         <xsd:complexType>
           <xsd:sequence>
             <xsd:element name="auth" type="xsd:string" minOccurs="1" maxOccurs="1"/>
@@ -349,6 +349,14 @@
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
+      <xsd:element name="getNumberOfResourcesResponse">
+        <xsd:complexType>
+          <xsd:sequence>
+            <xsd:element name="allresources" type="xsd:int"/>
+            <xsd:element name="publicresources" type="xsd:int"/>
+          </xsd:sequence>
+        </xsd:complexType>
+      </xsd:element>
 <!-- #### setProjectFile #### //-->
       <xsd:element name="setProjectFileRequest">
         <xsd:complexType>
@@ -783,12 +791,12 @@
   <wsdl:message name="isPublicResponse">
     <wsdl:part element="tns:booleanResponse" name="isPublicOutput"/>
   </wsdl:message>
-<!-- #### hasPublicResources #### //-->
-  <wsdl:message name="hasPublicResourcesRequest">
-    <wsdl:part element="tns:hasPublicResourcesRequest" name="hasPublicResourcesInput"/>
+<!-- #### getNumberOfResources #### //-->
+  <wsdl:message name="getNumberOfResourcesRequest">
+    <wsdl:part element="tns:getNumberOfResourcesRequest" name="getNumberOfResourcesInput"/>
   </wsdl:message>
-  <wsdl:message name="hasPublicResourcesResponse">
-    <wsdl:part element="tns:booleanResponse" name="hasPublicResourcesOutput"/>
+  <wsdl:message name="getNumberOfResourcesResponse">
+    <wsdl:part element="tns:getNumberOfResourcesResponse" name="getNumberOfResourcesOutput"/>
   </wsdl:message>
 <!-- #### setProjectFile #### //-->
   <wsdl:message name="setProjectFileRequest">
@@ -1624,21 +1632,22 @@
       <wsdl:input message="tns:isPublicRequest"/>
       <wsdl:output message="tns:isPublicResponse"/>
     </wsdl:operation>
-<!-- #### hasPublicResources #### //-->
-    <wsdl:operation name="hasPublicResources">
+<!-- #### getNumberOfResources #### //-->
+    <wsdl:operation name="getNumberOfResources">
       <wsdl:documentation>
-				Checks if a project has public resources.
+				Returns the total number of resources and the number of public ones in this project. Can be called by anyone.
 				<ul><li><b>Input Parameters</b>
-						hasPublicResourcesRequest, with elements
+						getNumberOfResourcesRequest, with elements
 						<ul><li>auth - String, SessionID of user that wants to
 								query. Can be
 								empty.</li><li>log - String for log information, optional</li><li>project - String</li></ul></li><li><b>Output Parameters</b>
-						booleanResponse, with element
-						<ul><li>result - boolean, true if project has public
-								resources.</li></ul></li></ul>
+						getNumberOfResourcesResponse, with elements
+						<ul><li>allresources - integer</li><li>publicresources - integer</li>
+						</ul>
+					</li></ul>
 			</wsdl:documentation>
-      <wsdl:input message="tns:hasPublicResourcesRequest"/>
-      <wsdl:output message="tns:hasPublicResourcesResponse"/>
+      <wsdl:input message="tns:getNumberOfResourcesRequest"/>
+      <wsdl:output message="tns:getNumberOfResourcesResponse"/>
     </wsdl:operation>
 <!-- #### deactivateProject #### //-->
     <wsdl:operation name="deactivateProject">
@@ -2115,9 +2124,9 @@
         <soap:body use="literal"/>
       </wsdl:output>
     </wsdl:operation>
-<!-- #### hasPublicResources #### //-->
-    <wsdl:operation name="hasPublicResources">
-      <soap:operation soapAction="http://textgrid.info/namespaces/middleware/tgauth/hasPublicResources"/>
+<!-- #### getNumberOfResources #### //-->
+    <wsdl:operation name="getNumberOfResources">
+      <soap:operation soapAction="http://textgrid.info/namespaces/middleware/tgauth/getNumberOfResources"/>
       <wsdl:input>
         <soap:body use="literal"/>
       </wsdl:input>