hasAppVersionModifyPermission($oRow->versionId) &&
(($oRow->queued=="false")?true:false) &&
!$_SESSION['current']->isVersionSubmitter($oRow->versionId))
{
errorpage("Insufficient privileges.");
exit;
}
$oVersion = new Version($oRow->versionId);
} elseif(is_numeric($_REQUEST['versionId']))
{
// make sure the user has permission to view this version
if(!$_SESSION['current']->hasAppVersionModifyPermission($_REQUEST['versionId'])&&
(($oRow->queued=="false")?true:false) &&
!$_SESSION['current']->isVersionSubmitter($oRow->versionId))
{
errorpage("Insufficient privileges.");
exit;
}
$oVersion = new Version($_REQUEST['versionId']);
} else
{
//error no Id!
addmsg("Application Not Found!", "red");
redirect($_SERVER['PHP_SELF']);
}
//process according to sub flag
if ($_REQUEST['sub'] == 'view')
{
$x = new TableVE("view");
apidb_header("Admin Rejected App Queue");
echo '
',"\n";
} else // version
{
echo '';
echo '
' ,"\n";
echo ' ',"\n";
echo '
',"\n";
echo '',"\n";
}
echo html_frame_end(" ");
echo html_back_link(1, $_SERVER['PHP_SELF']);
}
else if ($_REQUEST['sub'] == 'ReQueue')
{
if (($_REQUEST['apptype'] == "application") && is_numeric($_REQUEST['appId'])) // application
{
// get the queued versions that refers to the application entry we just removed
// and delete them as we implicitly added a version entry when adding a new application
$sQuery = "SELECT versionId FROM appVersion WHERE appVersion.appId = '".$_REQUEST['appId']."' AND appVersion.queued = 'rejected';";
$hResult = query_appdb($sQuery);
if($hResult)
{
while($oRow = mysql_fetch_object($hResult))
{
$oVersion = new Version($oRow->versionId);
$oVersion->GetOutputEditorValues();
$oVersion->update();
$oVersion->ReQueue();
}
}
$oApp = new Application($_REQUEST['appId']);
$oApp->GetOutputEditorValues();
$oApp->update();
$oApp->ReQueue();
} else if(($_REQUEST['apptype'] == "version") && is_numeric($_REQUEST['versionId'])) // version
{
$oVersion = new Version($_REQUEST['versionId']);
$oVersion->GetOutputEditorValues();
$oVersion->update();
$oVersion->ReQueue();
}
redirect($_SERVER['PHP_SELF']);
}
else if ($_REQUEST['sub'] == 'Delete')
{
if (($_REQUEST['apptype'] == "application") && is_numeric($_REQUEST['appId'])) // application
{
// get the queued versions that refers to the application entry we just removed
// and delete them as we implicitly added a version entry when adding a new application
$sQuery = "SELECT versionId FROM appVersion WHERE appVersion.appId = '".$_REQUEST['appId']."' AND appVersion.queued = 'rejected';";
$hResult = query_appdb($sQuery);
if($hResult)
{
while($oRow = mysql_fetch_object($hResult))
{
$oVersion = new Version($oRow->versionId);
$oVersion->delete();
}
}
// delete the application entry
$oApp = new Application($_REQUEST['appId']);
$oApp->delete();
} else if(($_REQUEST['apptype'] == "version") && is_numeric($_REQUEST['versionId'])) // version
{
$oVersion = new Version($_REQUEST['versionId']);
$oVersion->delete();
}
redirect($_SERVER['PHP_SELF']);
}
else
{
// error no sub!
addmsg("Internal Routine Not Found!!", "red");
redirect($_SERVER['PHP_SELF']);
}
}
else // if ($_REQUEST['sub']) is not defined, display the main app queue page
{
apidb_header("Resubmit application");
// get queued apps that the current user should see
$hResult = $_SESSION['current']->getAppRejectQueueQuery(true); // query for the app family
if(!$hResult || !mysql_num_rows($hResult))
{
//no apps in queue
echo html_frame_start("Application Queue","90%");
echo '
\n\n";
echo html_frame_end(" ");
}
// get queued versions (only versions where application are not queued already)
$hResult = $_SESSION['current']->getAppRejectQueueQuery(false); // query for the app version
if(!$hResult || !mysql_num_rows($hResult))
{
//no apps in queue
echo html_frame_start("Version Queue","90%");
echo '