Let objectManager handle rejected testData

This commit is contained in:
Alexander Nicolaysen Sørnes
2007-03-25 03:56:20 +00:00
committed by WineHQ
parent b57a9f516c
commit 37296b2242
5 changed files with 29 additions and 183 deletions

View File

@@ -1,168 +0,0 @@
<?php
/*************************************/
/* code to View and resubmit Apps */
/*************************************/
require("path.php");
require(BASE."include/incl.php");
require_once(BASE."include/tableve.php");
require_once(BASE."include/application.php");
require_once(BASE."include/version.php");
require_once(BASE."include/testData.php");
require_once(BASE."include/distribution.php");
if ($aClean['sSub'])
{
$oTest = new testData($aClean['iTestingId']);
$oVersion = new Version($oTest->iVersionId);
if(!($_SESSION['current']->hasAppVersionModifyPermission($oVersion)))
util_show_error_page_and_exit("Insufficient privileges.");
if(($aClean['sSub'] == 'Submit') || ($aClean['sSub'] == 'Save') ||
($aClean['sSub'] == 'Reject') || ($aClean['sSub'] == 'Delete'))
{
if(is_numeric($aClean['iTestingId']))
{
$oTest = new testData($aClean['iTestingId']);
$oTest->GetOutputEditorValues($aClean);
if($aClean['sSub'] == 'Submit') // submit the test results
{
$oTest->update(true);
$oTest->unQueue();
} else if($aClean['sSub'] == 'Save') // save the test results
{
$oTest->update();
} else if($aClean['sSub'] == 'Reject') // reject test results
{
$oTest->update(true);
$oTest->Reject();
} else if($aClean['sSub'] == 'Delete') // delete test results
{
$oTest->delete();
}
util_redirect_and_exit($_SERVER['PHP_SELF']);
}
}
if(is_numeric($aClean['iTestingId']))
{
$oTest = new testData($aClean['iTestingId']);
}
$oVersion = new Version($oTest->iVersionId);
$oApp = new Application($oVersion->iAppId);
$sVersionInfo = $oApp->sName." ".$oVersion->sName;
if ($aClean['sSub'] == 'view')
{
switch($oTest->sQueued)
{
case "true":
apidb_header("Edit new test results for ".$sVersionInfo);
break;
case "rejected":
apidb_header("Edit rejected test results for ".$sVersionInfo);
break;
case "false":
apidb_header("Edit test results for ".$sVersionInfo);
break;
}
echo '<form name="sQform" action="'.$_SERVER['PHP_SELF'].'" method="post" enctype="multipart/form-data">',"\n";
// View Test Details
echo "<table width='100%' border=0 cellpadding=2 cellspacing=0>\n";
//help
echo "<div align=center><table width='100%' border=0 cellpadding=3 cellspacing=0><tr><td>\n\n";
switch($oTest->sQueued)
{
case "false":
echo "<p>This Test result has already been verified and accepted into the database. \n";
echo "You can edit the entry and save it back to the database by clicking on save. \n";
break;
case "true":
echo "<p>This Test result has not yet been and accepted into the database. \n";
echo "You can edit the entry and either submit it into the database by clicking on Submit, or you can reject it \n";
echo "for further editing by the submitter by clicking on Reject. \n";
break;
case "rejected":
echo "<p>This Test result has been rejected and is awaiting further information from the submitter. \n";
echo "You can edit the entry and either submit it into the database by clicking on Submit, or you can save it \n";
echo "for further editing by the submitter by clicking on Save. \n";
break;
}
echo "<p>Click delete to remove it entirely from the database. An email will automatically be sent to the\n";
echo "submitter to let them know the item was deleted.</p>\n\n";
echo "</td></tr></table></div>\n\n";
echo html_back_link(1, $_SERVER['PHP_SELF']);
$oTest->outputEditor();
echo html_frame_start("Reply text", "90%", "", 0);
echo "<table width='100%' border=0 cellpadding=2 cellspacing=0>\n";
echo '<tr valign=top><td class="color0"><b>email Text</b></td>',"\n";
echo '<td><textarea name="sReplyText" style="width: 100%" cols="80" rows="10"></textarea></td></tr>',"\n";
echo '<tr valign=top><td class=color3 align=center colspan=2>' ,"\n";
// Submit Buttons
switch($oTest->sQueued)
{
case "false":
echo '<input name="sSub" type="submit" value="Save" class="button" >&nbsp',"\n";
echo '<input name="sSub" type="submit" value="Delete" class="button" >',"\n";
break;
case "true":
echo '<input name="sSub" type="submit" value="Submit" class="button" >&nbsp',"\n";
echo '<input name="sSub" type="submit" value="Reject" class="button" >&nbsp',"\n";
echo '<input name="sSub" type="submit" value="Delete" class="button" >',"\n";
break;
case "rejected":
echo '<input name="sSub" type="submit" value="Submit" class="button" >&nbsp',"\n";
echo '<input name="sSub" type="submit" value="Save" class="button" >&nbsp',"\n";
echo '<input name="sSub" type="submit" value="Delete" class="button" >',"\n";
break;
}
echo '</td></tr>',"\n";
echo '</table>',"\n";
echo '</form>',"\n";
echo html_frame_end();
echo html_back_link(1, $_SERVER['PHP_SELF']);
}
else
{
// error no sub!
addmsg("Internal Routine Not Found!!", "red");
util_redirect_and_exit($_SERVER['PHP_SELF']);
}
}
else // if ($aClean['sSub']) is not defined, display the Test results queue page
{
$oTest = new TestData();
apidb_header("Test Results");
// Get rejected test results.
$hResult = $oTest->getTestingQueue("rejected");
if(!$hResult || !mysql_num_rows($hResult))
{
//no rejected test results in queue
echo html_frame_start("Rejected Test Results","90%");
echo '<p><b>The Rejected Test Results Queue is empty.</b></p>',"\n";
echo html_frame_end("&nbsp;");
}
else
{
//help
echo "<div align=center><table width='90%' border=0 cellpadding=3 cellspacing=0><tr><td>\n\n";
echo "<p>This is the list of test results that have been rejected for some reason.</p>\n";
echo "<p>To view a submission, click on its name. From that page you can Submit it into \n";
echo "the AppDB, edit and save it or delete it.<br>\n";
echo "</td></tr></table></div>\n\n";
$oTest->ShowListofTests($hResult,"Rejected Test Results");
}
}
apidb_footer();
?>

View File

@@ -546,7 +546,7 @@ class distribution {
echo '<td>'.$oTest->sTestedRating.'&nbsp</td>',"\n"; echo '<td>'.$oTest->sTestedRating.'&nbsp</td>',"\n";
if ($_SESSION['current']->hasAppVersionModifyPermission($oVersion)) if ($_SESSION['current']->hasAppVersionModifyPermission($oVersion))
{ {
echo '<td><a href="'.BASE.'admin/adminTestResults.php?sSub=view&iTestingId='.$oTest->iTestingId.'">',"\n"; echo '<td><a href="'.$oTest->objectMakeUrl().'">',"\n";
echo 'Edit</a></td>',"\n"; echo 'Edit</a></td>',"\n";
} }
echo '</tr>',"\n"; echo '</tr>',"\n";

View File

@@ -64,15 +64,24 @@ class ObjectManager
/* We pass in $this->bIsQueue to tell the object */ /* We pass in $this->bIsQueue to tell the object */
/* if we are requesting a list of its queued objects or */ /* if we are requesting a list of its queued objects or */
/* all of its objects */ /* all of its objects */
$hResult = $oObject->objectGetEntries($this->bIsQueue, $this->sIsRejected); $hResult = $oObject->objectGetEntries($this->bIsQueue, $this->bIsRejected);
/* did we get any entries? */ /* did we get any entries? */
if(mysql_num_rows($hResult) == 0) if(mysql_num_rows($hResult) == 0)
{ {
if($this->bIsQueue) switch($this->getQueueString($this->bIsQueue, $this->bIsRejected))
echo "<center>The queue for '$this->sClass' is empty</center>"; {
else case "true":
echo "<center>No entries of '$this->sClass' are present</center>"; echo "<center>The queue for '$this->sClass' is empty</center>";
break;
case "false":
echo "<center>No entries of '$this->sClass' are present</center>";
break;
case "rejected":
echo "<center>No rejected entries of '$this->sClass' are ".
"present</center>";
break;
}
echo "<br /><center><a href=\"".$this->makeUrl("add", false, echo "<br /><center><a href=\"".$this->makeUrl("add", false,
"Add $this->sClass entry")."\">Add an entry?</a></center>"; "Add $this->sClass entry")."\">Add an entry?</a></center>";
@@ -124,7 +133,7 @@ class ObjectManager
echo '<input type="hidden" name="iId" value="'.$this->iId.'" />'; echo '<input type="hidden" name="iId" value="'.$this->iId.'" />';
echo '<input type="hidden" name="bIsQueue" '. echo '<input type="hidden" name="bIsQueue" '.
'value='.($this->bIsQueue ? "true" : "false").' />'; 'value='.($this->bIsQueue ? "true" : "false").' />';
echo '<input type="hidden" name=bIsRejected" '. echo '<input type="hidden" name="bIsRejected" '.
'value='.($this->bIsRejected ? "true" : "false").' />'; 'value='.($this->bIsRejected ? "true" : "false").' />';
$oObject = new $this->sClass($this->iId); $oObject = new $this->sClass($this->iId);
@@ -154,8 +163,13 @@ class ObjectManager
echo '<input name="sSubmit" type="submit" value="Delete" '. echo '<input name="sSubmit" type="submit" value="Delete" '.
'class="button" />',"\n"; 'class="button" />',"\n";
} }
echo '<input name="sSubmit" type="submit" value="Reject" class="button" '.
'/>',"\n"; if(!$this->bIsRejected)
{
echo '<input name="sSubmit" type="submit" value="Reject" class="button" '.
'/>',"\n";
}
echo '<input name="sSubmit" type="submit" value="Cancel" class="button" '. echo '<input name="sSubmit" type="submit" value="Cancel" class="button" '.
'/>',"\n"; '/>',"\n";
echo '</td></tr>',"\n"; echo '</td></tr>',"\n";
@@ -285,8 +299,6 @@ class ObjectManager
$this->delete_entry(); $this->delete_entry();
} }
$sIsQueue = $tihs->bIsQueue ? "true" : "false";
if(!$this->bIsQueue) if(!$this->bIsQueue)
$sAction = "view"; $sAction = "view";
else else

View File

@@ -39,8 +39,10 @@ function global_admin_menu() {
"Distribution%20Queue"); "Distribution%20Queue");
$g->addmisc("&nbsp;"); $g->addmisc("&nbsp;");
$g->add("View Rejected Test Results", $g->add("View Rejected Test Results (".testData::objectGetEntriesCount(true,
BASE."admin/adminTestResults.php"); true).")",
BASE."objectManager.php?sClass=testData&bIsQueue=true&bIsRejected=true&".
"sTitle=Rejected%20Test%20Results");
$g->add("Users Management", BASE."admin/adminUsers.php"); $g->add("Users Management", BASE."admin/adminUsers.php");
$g->add("Comments Management", BASE."admin/adminCommentView.php"); $g->add("Comments Management", BASE."admin/adminCommentView.php");
$g->add("Screenshots Management", BASE."admin/adminScreenshots.php"); $g->add("Screenshots Management", BASE."admin/adminScreenshots.php");

View File

@@ -921,8 +921,8 @@ class testData{
function objectMakeUrl() function objectMakeUrl()
{ {
/* STUB */ $oObject = new objectManager("testData", "Edit Test Results", $this->iTestingId);
return TRUE; return $oObject->makeUrl("edit", $this->iTestingId);
} }
function objectMakeLink() function objectMakeLink()