return $am->getID();
}
}
-
-//*****************************
-//By Remo on 24-03-2005
-//for getProjectTrackers() function
-
-$server->wsdl->addComplexType(
- 'ArtifactTypeData',
- 'complexType',
- 'struct',
- 'sequence',
- '',
- array(
- 'ArtifactType' => array('name'=>'ArtifactType', 'type' => 'tns:ArtifactType'),
- 'technicians' => array('name'=>'technicians', 'type' => 'tns:ArrayOfUser')
-// 'artifacts' => array('name'=>'artifacts', 'type' => 'tns:ArrayOfArtifact')
- )
-);
-
-$server->wsdl->addComplexType(
- 'ArrayOfArtifactTypeData',
- 'complexType',
- 'array',
- '',
- 'SOAP-ENC:Array',
- array(),
- array(array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'tns:ArtifactTypeData[]')),
- 'tns:ArtifactTypeData'
-);
-
-$server->wsdl->addComplexType(
- 'ProjectTrackers',
- 'complexType',
- 'struct',
- 'sequence',
- '',
- array(
- 'group' => array('name'=>'groups', 'type' => 'tns:Group'),
- 'artifacttypes' => array('name'=>'artifacttypes', 'type' => 'tns:ArrayOfArtifactTypeData')
- )
-);
-
-/*
-$server->wsdl->addComplexType(
- 'ProjectTrackers',
- 'complexType',
- 'array',
- '',
- 'SOAP-ENC:Array',
- array(),
- array(array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'tns:GroupData[]')),
- 'tns:GroupData'
-);
-*/
-
-$server->register(
- 'getProjectTrackers',
- array('session_ser'=>'xsd:string','group_id'=>'xsd:int'),
- //array('getProjectTrackersResponse'=>'tns:ProjectTrackers'),
- array('getProjectTrackersResponse'=>'tns:ArrayOfArtifactTypeData'),
- $uri,$uri.'#getProjectTrackers','rpc','encoded');
-
-
-//********************************************************************
-//
-// getProjectTrackers function is used to retrieve the information like
-// Group details and their related Artifact details, and extra field
-// data and element details which is related to the artifact
-//
-//*******************************************************************
-
-function getProjectTrackers($session_ser,$group_id) {
- continue_session($session_ser);
- $grpobj =& group_get_object($group_id);
- if (!$grpobj || !is_object($grpobj)) {
- return new soap_fault ('','getProjectTrackers','Could Not Get Group','Could Not Get Group');
- } elseif ($grpobj->isError()) {
- return new soap_fault ('','getProjectTrackers',$grp->getErrorMessage(),$grp->getErrorMessage());
- }
-
- $returnGroup=array();
- $atobjs=array();
- $atfobj = new ArtifactTypeFactory($grpobj); //Initialize the ArtifactTypeFactory object from group object
- if (!$atfobj || !is_object($atfobj)) {
- return new soap_fault ('','getProjectTrackers','Could Not Get ArtifactTypeFactory','Could Not Get ArtifactTypeFactory');
- } elseif ($atfobj->isError()) {
- return new soap_fault ('','getProjectTrackers',$atfobj->getErrorMessage(),$atf->getErrorMessage());
- }
- //********
- // Retreive the ArtifactType object from the ArtifactTypeFactory object
- $atobjs=$atfobj->getArtifactTypes();
-
- $j=0;
- reset($atobjs);
- $returnATdata=array();
- while(list($atky1, )=each($atobjs)) {
- $returnTechnicians=array();
- $tmpartifactlist=array();
- $i=$atky1;
- if ($atobjs[$i]->isError()) {
- return new soap_fault('','getProjectTrackers',$atobjs[$i]->getErrorMessage(),$atobjs[$i]->getErrorMessage());
- } else {
-/* $afobj = new ArtifactFactory($atobjs[$i]);
- if (!$afobj || !is_object($afobj)) {
- return new soap_fault ('','getProjectTrackers','Could Not Get ArtifactFactory','Could Not Get ArtifactFactory');
- } elseif ($afobj->isError()) {
- return new soap_fault ('','getProjectTrackers',$afobj->getErrorMessage(),$afobj->getErrorMessage());
- }
- $afobj->setup(0,'','',0,'custom',false,false);
- $tmpartifactlist=$afobj->getArtifacts();
- //$returnArtifacts=array();
-*/
- $returnTechnicians=users_to_soap($atobjs[$i]->getTechnicianObjects());
-// $returnArtifacts=artifacts_to_soap($tmpartifactlist);
-
- // Get list of extra fields for this artifact
- $extrafields = array();
- $tmpextrafields = $atobjs[$i]->getExtraFields();
- foreach ($tmpextrafields as $extrafield) {
- $aefobj = new ArtifactExtraField($atobjs[$i], $extrafield["extra_field_id"]);
-
- // array of available values
- $avtmp = $aefobj->getAvailableValues();
- $avs = array();
- for ($j=0; $j < count($avtmp); $j++) {
- $avs[$j]["element_id"] = $avtmp[$j]["element_id"];
- $avs[$j]["element_name"] = $avtmp[$j]["element_name"];
- $avs[$j]["status_id"] = $avtmp[$j]["status_id"];
- }
-
- $extrafields[] = array(
- "extra_field_id"=> $aefobj->getID(),
- "field_name" => $aefobj->getName(),
- "field_type" => $aefobj->getType(),
- "is_required" => $aefobj->isRequired(),
- "alias" => $aefobj->getAlias(),
- "available_values" => $avs
- );
- }
-
- $returnArtifactType=array(
- 'group_artifact_id'=>$atobjs[$i]->data_array['group_artifact_id'],
- 'group_id'=>$atobjs[$i]->data_array['group_id'],
- 'name'=>$atobjs[$i]->data_array['name'],
- 'description'=>$atobjs[$i]->data_array['description'],
- 'is_public'=>$atobjs[$i]->data_array['is_public'],
- 'allow_anon'=>$atobjs[$i]->data_array['allow_anon'],
- 'due_period'=>$atobjs[$i]->data_array['due_period'],
- 'datatype'=>$atobjs[$i]->data_array['datatype'],
- 'status_timeout'=>$atobjs[$i]->data_array['status_timeout'],
- 'extra_fields' => $extrafields
- );
- $returnATdata[] = array(
- 'ArtifactType' => $returnArtifactType,
- 'technicians' => $returnTechnicians
- );
- }
- }
-
- return $returnATdata;
-}
-
?>