diff --git a/admin/resubmitRejectedApps.php b/admin/resubmitRejectedApps.php index 3097ff8..ed29941 100644 --- a/admin/resubmitRejectedApps.php +++ b/admin/resubmitRejectedApps.php @@ -4,365 +4,10 @@ /*************************************/ include("path.php"); -require(BASE."include/incl.php"); -require(BASE."include/tableve.php"); -require(BASE."include/application.php"); -require(BASE."include/mail.php"); +require_once(BASE."include/incl.php"); -function get_vendor_from_keywords($sKeywords) -{ - $aKeywords = explode(" *** ",$sKeywords); - $iLastElt = (sizeOf($aKeywords)-1); - return($aKeywords[$iLastElt]); -} + redirect(BASE."appsubmit.php"); -if ($_REQUEST['sub']) -{ - if(is_numeric($_REQUEST['appId'])) - { - $oApp = new Application($_REQUEST['appId']); - // if we are processing a queued application there MUST be an implicitly queued - // version to go along with it. Find this version so we can display its information - // during application processing so the admin can make a better choice about - // whether to accept or reject the overall application - $sQuery = "Select versionId from appVersion where appId='".$_REQUEST['appId']."';"; - $hResult = query_appdb($sQuery); - $oRow = mysql_fetch_object($hResult); - - // make sure the user has permission to view this version - if(!$_SESSION['current']->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"; - echo '',"\n"; - - echo html_back_link(1,$_SERVER['PHP_SELF']); - - if (!$oApp) //app version - { - echo html_frame_start("Potential duplicate versions in the database","90%","",0); - $oAppForVersion = new Application($oVersion->iAppId); - display_versions($oAppForVersion->iAppId, $oAppForVersion->aVersionsIds); - echo html_frame_end(" "); - - //help - echo "
\n\n"; - echo "

This is the full view of the application version that has been Rejected. \n"; - - echo "App Version This type of application will be nested under the selected application parent.\n"; - echo "

Click delete to remove the selected item from the queue an email will automatically be sent to the\n"; - echo "submitter to let him know the item was deleted.

\n\n"; - echo "
\n\n"; - } else // application - { - echo html_frame_start("Potential duplicate applications in the database","90%","",0); - perform_search_and_output_results($oApp->sName); - echo html_frame_end(" "); - - //help - echo "
\n\n"; - echo "

This is the full view of the rejected application. \n"; - echo "You need to pick a category before submitting \n"; - echo "it into the database.\n"; - echo "

Click delete to remove the selected item from the queue. An email will automatically be sent to the\n"; - echo "submitter to let them know the item was deleted.

\n\n"; - echo "
\n\n"; - - // vendor/alt vendor fields - // if user selected a predefined vendorId: - $iVendorId = $oApp->iVendorId; - - // If not, try for an exact match - // Use the first match if we found one and clear out the vendor field, - // otherwise don't pick a vendor - // N.B. The vendor string is the last word of the keywords field ! - if(!$iVendorId) - { - $sVendor = get_vendor_from_keywords($oApp->sKeywords); - $sQuery = "SELECT vendorId FROM vendor WHERE vendorname = '".$sVendor."';"; - $hResult = query_appdb($sQuery); - if($hResult) - { - $oRow = mysql_fetch_object($hResult); - $iVendorId = $oRow->vendorId; - } - } - - // try for a partial match - if(!$iVendorId) - { - $sQuery = "select * from vendor where vendorname like '%".$sVendor."%';"; - $hResult = query_appdb($sQuery); - if($hResult) - { - $oRow = mysql_fetch_object($hResult); - $iVendorId = $oRow->vendorId; - } - } - - //vendor field - if($iVendorId) - $sVendor = ""; - } - - if($oApp) - { - $oApp->OutputEditor($sVendor); - $oVersion->OutputEditor(false, false); - } else - { - $oVersion->OutputEditor(false, false); - } - - echo "\n"; - - if($oApp) // application - { - echo ''; - echo '',"\n"; - echo '
' ,"\n"; - echo ' ',"\n"; - echo '',"\n"; - 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 '

The Resubmit Application Queue is empty.

',"\n"; - echo html_frame_end(" "); - } - else - { - //help - echo "
\n\n"; - echo "

This is the list of applications waiting for re-submition, or to be deleted.

\n"; - echo "

To view a submission, click on its name. From that page you can delete or edit and\n"; - echo "re-submit it into the AppDB .
\n"; - echo "

\n\n"; - - //show applist - echo html_frame_start("","90%","",0); - echo " - - - - - - - "; - - $c = 1; - while($oRow = mysql_fetch_object($hResult)) - { - $oApp = new Application($oRow->appId); - $oSubmitter = new User($oApp->iSubmitterId); - if($oApp->iVendorId) - { - $oVendor = new Vendor($oApp->iVendorId); - $sVendor = $oVendor->sName; - } else - { - $sVendor = get_vendor_from_keywords($oApp->sKeywords); - } - if ($c % 2 == 1) { $bgcolor = 'color0'; } else { $bgcolor = 'color1'; } - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "\n\n"; - $c++; - } - echo "
Submission DateSubmitterVendorApplicationAction
".print_date(mysqltimestamp_to_unixtimestamp($oApp->sSubmitTime))."\n"; - echo $oSubmitter->sEmail ? "sEmail."\">":""; - echo $oSubmitter->sRealname; - echo $oSubmitter->sEmail ? "":""; - echo " ".$sVendor."".$oApp->sName."[iAppId.">process]
\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 '

The Resubmit Version Queue is empty.

',"\n"; - echo html_frame_end(" "); - } - else - { - //help - echo "
\n\n"; - echo "

This is the list of versions waiting for re-submition or deletion.

\n"; - echo "

To view a submission, click on its name. From that page you can delete or edit and re-submit it into \n"; - echo "the AppDB .
\n"; - echo "

Note that versions linked to application that have not been yet approved are not displayed in this list.

\n"; - echo "the AppDB.
\n"; - echo "
\n\n"; - - //show applist - echo html_frame_start("","90%","",0); - echo " - - - - - - - - "; - - $c = 1; - while($oRow = mysql_fetch_object($hResult)) - { - $oVersion = new Version($oRow->versionId); - $oApp = new Application($oVersion->iAppId); - $oSubmitter = new User($oVersion->iSubmitterId); - $oVendor = new Vendor($oApp->iVendorId); - $sVendor = $oVendor->sName; - if ($c % 2 == 1) { $bgcolor = 'color0'; } else { $bgcolor = 'color1'; } - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "\n\n"; - $c++; - } - echo "
Submission DateSubmitterVendorApplicationVersionAction
".print_date(mysqltimestamp_to_unixtimestamp($oVersion->sSubmitTime))."\n"; - echo $oSubmitter->sEmail ? "sEmail."\">":""; - echo $oSubmitter->sRealname; - echo $oSubmitter->sEmail ? "":""; - echo " ".$sVendor."".$oApp->sName."".$oVersion->sName."[iVersionId.">process]
\n\n"; - echo html_frame_end(" "); - - } -} -apidb_footer(); ?>