gforge-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gforge-commits] gforge/www/export tracker.php, NONE, 1.1 tracker.xsd, N


From: cbayle
Subject: [Gforge-commits] gforge/www/export tracker.php, NONE, 1.1 tracker.xsd, NONE, 1.1 sf_tracker_export.php, 1.2, NONE sf_tracker_export.xsd, 1.1.1.1, NONE
Date: Thu, 29 Apr 2004 13:46:30 -0500

Update of /cvsroot/gforge/gforge/www/export
In directory db.perdue.net:/tmp/cvs-serv23635

Added Files:
        tracker.php tracker.xsd 
Removed Files:
        sf_tracker_export.php sf_tracker_export.xsd 
Log Message:
Tracker export renaming


--- NEW FILE: tracker.php ---
<?php
/**
  * sf_tracker_export.php
  *
  * SourceForge Exports: Export tracker contents in XML
  *
  *
  * SourceForge: Breaking Down the Barriers to Open Source Development
  * Copyright 1999-2001 (c) VA Linux Systems
  * http://sourceforge.net
  *
  * @author             Darrell Brogdon <address@hidden>
  * @version    $Id: tracker.php,v 1.1 2004/04/29 18:46:27 cbayle Exp $
  *
  */

set_time_limit(0);

require_once('pre.php');
require_once('common/tracker/Artifact.class');
require_once('common/tracker/Artifacts.class');
require_once('common/tracker/ArtifactFile.class');
require_once('common/tracker/ArtifactType.class');
require_once('common/tracker/ArtifactGroup.class');
require_once('common/tracker/ArtifactCategory.class');
require_once('common/tracker/ArtifactCanned.class');
require_once('common/tracker/ArtifactResolution.class');

header("Content-Type: text/plain");
?>
<tracker version="1.0" xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"; 
xsi:noNamespaceSchemaLocation="http://<?php echo $sys_default_domain; 
?>/export/tracker.xsd">
<?php

$group_id = $_GET['group_id'];
$atid = $_GET['atid'];

if ($group_id && $atid) {
        //
        //      get the Group object
        //
        $group =& group_get_object($group_id);
        if (!$group || !is_object($group) || $group->isError()) {
                echo("  <error>Could not get the Group object</error>\n");
                $errors = true;
        }

        //
        //      Create the ArtifactType object
        //
        $ath = new ArtifactType($group,$atid);
        if (!$ath || !is_object($ath)) {
                echo("  <error>ArtifactType could not be created</error>\n");
                $errors = true;
        }
        if ($ath->isError()) {
                echo('  <error>' . $ath->getErrorMessage() . "</error>\n");
                $errors = true;
        }

        //
        // Create the Artifacts object
        //
        $artifacts = new Artifacts($ath);       
        if (!$artifacts || !is_object($ath)) {
                echo("  <error>Artifacts could not be created</error>\n");
                $errors = true;
        }
        if ($artifacts->isError()) {
                echo('  <error>' . $artifacts->getErrorMessage() . 
"</error>\n");
                $errors = true;
        }

        //
        // Loop through each artifact object and show the results
        //
        if (!$alist =& $artifacts->getArtifacts($offset)) {
                echo('  <error>' . $artifacts->getErrorMessage() . 
"</error>\n");
                $errors = true;
        }

        if ($errors) {
                echo ('</tracker>');
                exit;
        }

        for ($i=0; $i<count($alist); $i++) {
?>
        <artifact id="<?php echo $alist[$i]->getID(); ?>">
                <submitted_by><?php echo $alist[$i]->getSubmittedUnixName(); 
?></submitted_by>
                <submitted_date><?php echo date( $sys_datefmt, 
$alist[$i]->getOpenDate() ); ?></submitted_date>
                <artifact_type id="<?php echo $ath->getID(); ?>"><?php echo 
$ath->getID(); ?></artifact_type>
                <category id="<?php echo $alist[$i]->getCategoryID(); ?>"><?php 
echo $alist[$i]->getCategoryName(); ?></category>
                <artifact_group id="<?php echo 
$alist[$i]->getArtifactGroupID(); ?>"><?php echo 
$alist[$i]->getArtifactGroupID; ?></artifact_group>
                <assigned_to><?php echo $alist[$i]->getAssignedRealName(); 
?></assigned_to>
                <priority id="<?php echo $alist[$i]->getPriority(); ?>"><?php 
echo $alist[$i]->getPriority(); ?></priority>
                <status><?php echo $alist[$i]->getStatusName(); ?></status>
                <resolution><?php echo $alist[$i]->getResolutionName(); 
?></resolution>
                <summary><?php echo $alist[$i]->getSummary(); ?></summary>
                <detail><?php echo $alist[$i]->getDetails(); ?></detail>
<?php
        $result = $alist[$i]->getMessages();
        $rows = db_numrows($result);
        if ($rows > 0) {
?>
                <follow_ups>
<?php
                for ($x=0; $x<$rows; $x++) {
?>
                        <item>
                                <date><?php echo db_result($result, $x, 
'adddate'); ?></date>
                                <sender><?php echo db_result($result, $x, 
'user_name'); ?></sender>
                                <text><?php echo db_result($result, $x, 
'body'); ?></text>
                        </item>
<?php
                }
?>
                </follow_ups>
<?php
        }

        $file_list =& $alist[$i]->getFiles();
        $count=count($file_list);
        if ($count > 0) {
?>
                <existingfiles>
<?php
                for ($x=0; $x<$count; $x++) {
?>
                        <file>
                                <id><?php echo $file_list[$x]->getID(); ?></id>
                                <name><?php echo $file_list[$x]->getName(); 
?></name>
                                <description><?php echo 
$file_list[$x]->getDescription(); ?></description>
                                <filesize><?php echo $file_list[$x]->getSize(); 
?></filesize>
                                <filetype><?php echo $file_list[$x]->getType(); 
?></filetype>
                                <adddate><?php echo $file_list[$x]->getDate(); 
?></adddate>
                                <submitted_by><?php echo 
$file_list[$x]->getSubmittedBy(); ?></submitted_by>
                        </file>
<?php
                }
?>
                </existingfiles>
<?php
        }

        $result = $alist[$i]->getHistory();
        $rows = db_numrows($result);

        if ($rows > 0) {
?>
                <change_log>
<?php
                for ($x=0; $x<$rows; $x++) {
?>
                        <item>
                                <field><?php echo db_result($result, $x, 
'field_name'); ?></field>
                                <old_value><?php echo db_result($result, $x, 
'old_value'); ?></old_value>
                                <date><?php echo db_result($result, $x, 
'entrydate'); ?></date>
                                <by><?php echo db_result($result, $x, 
'user_name'); ?></by>
                        </item>
<?php
                }
?>
                </change_log>
<?php
        }
?>
        </artifact>
<?php
        }
} else {
        print("    <error>Group ID Not Set</error>\n");
}
?>
</tracker>

--- NEW FILE: tracker.xsd ---
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2000/10/XMLSchema"; 
elementFormDefault="qualified">
        <xsd:element name="adddate" type="xsd:string"/>
        <xsd:element name="artifact">
                <xsd:complexType>
                        <xsd:sequence>
                                <xsd:element ref="submitted_by"/>
                                <xsd:element ref="submitted_date"/>
                                <xsd:element ref="artifact_type"/>
                                <xsd:element ref="category"/>
                                <xsd:element ref="artifact_group"/>
                                <xsd:element ref="assigned_to"/>
                                <xsd:element ref="priority"/>
                                <xsd:element ref="status"/>
                                <xsd:element ref="resolution"/>
                                <xsd:element ref="summary"/>
                                <xsd:element ref="detail" minOccurs="0"/>
                                <xsd:element ref="followups"/>
                                <xsd:element ref="existingfiles"/>
                                <xsd:element ref="changelog"/>
                        </xsd:sequence>
                        <xsd:attribute name="id" use="required">
                                <xsd:simpleType>
                                        <xsd:restriction base="xsd:int"/>
                                </xsd:simpleType>
                        </xsd:attribute>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="artifact_group">
                <xsd:complexType>
                        <xsd:simpleContent>
                                <xsd:restriction base="xsd:string">
                                        <xsd:attribute name="id" use="required">
                                                <xsd:simpleType>
                                                        <xsd:restriction 
base="xsd:int"/>
                                                </xsd:simpleType>
                                        </xsd:attribute>
                                </xsd:restriction>
                        </xsd:simpleContent>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="artifact_type">
                <xsd:complexType>
                        <xsd:simpleContent>
                                <xsd:restriction base="xsd:string">
                                        <xsd:attribute name="id" use="required">
                                                <xsd:simpleType>
                                                        <xsd:restriction 
base="xsd:int"/>
                                                </xsd:simpleType>
                                        </xsd:attribute>
                                </xsd:restriction>
                        </xsd:simpleContent>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="assigned_to">
                <xsd:simpleType>
                        <xsd:restriction base="xsd:string"/>
                </xsd:simpleType>
        </xsd:element>
        <xsd:element name="by">
                <xsd:simpleType>
                        <xsd:restriction base="xsd:string"/>
                </xsd:simpleType>
        </xsd:element>
        <xsd:element name="category">
                <xsd:complexType>
                        <xsd:simpleContent>
                                <xsd:restriction base="xsd:string">
                                        <xsd:attribute name="id" use="required">
                                                <xsd:simpleType>
                                                        <xsd:restriction 
base="xsd:int"/>
                                                </xsd:simpleType>
                                        </xsd:attribute>
                                </xsd:restriction>
                        </xsd:simpleContent>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="changelog">
                <xsd:complexType>
                        <xsd:sequence>
                                <xsd:element ref="field" minOccurs="0"/>
                                <xsd:element ref="old_value" minOccurs="0"/>
                                <xsd:element ref="date" minOccurs="0"/>
                                <xsd:element ref="by" minOccurs="0"/>
                                <xsd:element ref="item" minOccurs="0" 
maxOccurs="unbounded"/>
                        </xsd:sequence>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="date" type="xsd:string"/>
        <xsd:element name="description" type="xsd:string"/>
        <xsd:element name="detail" type="xsd:string"/>
        <xsd:element name="existingfiles">
                <xsd:complexType>
                        <xsd:sequence>
                                <xsd:element ref="file" maxOccurs="unbounded"/>
                        </xsd:sequence>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="field" type="xsd:string"/>
        <xsd:element name="file">
                <xsd:complexType>
                        <xsd:sequence>
                                <xsd:element ref="id"/>
                                <xsd:element ref="name"/>
                                <xsd:element ref="description"/>
                                <xsd:element ref="location"/>
                                <xsd:element ref="filesize"/>
                                <xsd:element ref="filetype"/>
                                <xsd:element ref="adddate"/>
                                <xsd:element ref="submitted_by"/>
                        </xsd:sequence>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="filesize" type="xsd:byte"/>
        <xsd:element name="filetype">
                <xsd:simpleType>
                        <xsd:restriction base="xsd:string"/>
                </xsd:simpleType>
        </xsd:element>
        <xsd:element name="followups">
                <xsd:complexType>
                        <xsd:sequence>
                                <xsd:element ref="item" maxOccurs="unbounded"/>
                        </xsd:sequence>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="id">
                <xsd:simpleType>
                        <xsd:restriction base="xsd:int"/>
                </xsd:simpleType>
        </xsd:element>
        <xsd:element name="item">
                <xsd:complexType>
                        <xsd:sequence>
                                <xsd:element ref="field" minOccurs="0"/>
                                <xsd:element ref="old_value" minOccurs="0"/>
                                <xsd:element ref="date"/>
                                <xsd:element ref="sender" minOccurs="0"/>
                                <xsd:element ref="submitted_by" minOccurs="0"/>
                                <xsd:element ref="text" minOccurs="0"/>
                                <xsd:element ref="by" minOccurs="0"/>
                        </xsd:sequence>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="location" type="xsd:string"/>
        <xsd:element name="name">
                <xsd:simpleType>
                        <xsd:restriction base="xsd:string"/>
                </xsd:simpleType>
        </xsd:element>
        <xsd:element name="old_value" type="xsd:string"/>
        <xsd:element name="priority">
                <xsd:complexType>
                        <xsd:simpleContent>
                                <xsd:restriction base="xsd:string">
                                        <xsd:attribute name="id" use="required">
                                                <xsd:simpleType>
                                                        <xsd:restriction 
base="xsd:int"/>
                                                </xsd:simpleType>
                                        </xsd:attribute>
                                </xsd:restriction>
                        </xsd:simpleContent>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="resolution">
                <xsd:complexType>
                        <xsd:simpleContent>
                                <xsd:restriction base="xsd:string">
                                        <xsd:attribute name="id">
                                                <xsd:simpleType>
                                                        <xsd:restriction 
base="xsd:int"/>
                                                </xsd:simpleType>
                                        </xsd:attribute>
                                </xsd:restriction>
                        </xsd:simpleContent>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="sender" type="xsd:string"/>
        <xsd:element name="status">
                <xsd:complexType>
                        <xsd:simpleContent>
                                <xsd:restriction base="xsd:string">
                                        <xsd:attribute name="id">
                                                <xsd:simpleType>
                                                        <xsd:restriction 
base="xsd:int"/>
                                                </xsd:simpleType>
                                        </xsd:attribute>
                                </xsd:restriction>
                        </xsd:simpleContent>
                </xsd:complexType>
        </xsd:element>
        <xsd:element name="submitted_by">
                <xsd:simpleType>
                        <xsd:restriction base="xsd:string"/>
                </xsd:simpleType>
        </xsd:element>
        <xsd:element name="submitted_date" type="xsd:string"/>
        <xsd:element name="summary" type="xsd:string"/>
        <xsd:element name="text" type="xsd:string"/>
        <xsd:element name="tracker">
                <xsd:complexType>
                        <xsd:sequence>
                                <xsd:element ref="artifact" 
maxOccurs="unbounded"/>
                        </xsd:sequence>
                        <xsd:attribute name="version" use="required">
                                <xsd:simpleType>
                                        <xsd:restriction base="xsd:number"/>
                                </xsd:simpleType>
                        </xsd:attribute>
                </xsd:complexType>
        </xsd:element>
</xsd:schema>

--- sf_tracker_export.php DELETED ---

--- sf_tracker_export.xsd DELETED ---





reply via email to

[Prev in Thread] Current Thread [Next in Thread]