All pastes #222461 Raw Edit

Unnamed

public php v1 · immutable
#222461 ·published 2006-10-26 09:10 UTC
rendered paste body
function updateCurrentSelection($db){		$email = getCurrentUserEmail($db);		$filter = GetConfigPerso ($db, $email, $mode="object");		// For chairs and administrators, the data set is ALL the papers		if (minStatus($db, session_id())<3)		{				$paperSet = "Paper p";		}		// On the other hand, the editor should only see HIS papers		elseif (minStatus($db, session_id())==3)		{				$paperSet = "(SELECT * FROM Paper p1, Editor e WHERE p1.id=e.idPaper AND" .						"e.emailEditor='$email') as p";		}			// The id of the paper has the highest priority,		// if set, just return the selected paper		if ($filter->spPaperId != 0)		{				$query = "INSERT INTO CurrentSelection VALUES ('$filter->spPaperId', '$email')";		}		else		{				$query = "SELECT p.id from $paperSet, Author a WHERE p.id=a.id_paper" .						" AND (a.first_name like '%$filter->papersWithAuthor%'" .						" OR a.last_name like '%$filter->papersWithAuthor%')" .						" AND p.title like '%$filter->papersWithTitle%'";				if ($filter->papersUploaded != "A")				{						$query .= " AND p.isUploaded='$filter->papersUploaded'";				}				if ($filter->papersWithStatus != 0)				{						$query .= " AND p.status='$filter->papersWithStatus'";				} 				if ($filter->papersWithTopic != 0)				{						$query .= " AND p.topic='$filter->papersWithTopic'";				}				if ($filter->papersCategory != 0)				{						$query .= " AND p.category='$filter->papersCategory'";				}				if ($filter->papersWithMissingReview != "A")				{						if ($filter->papersWithMissingReview == "Y")						{								$query = "SELECT id FROM ($query) as t1 WHERE t1.id IN" .										" (SELECT idPaper FROM Review WHERE overall IS NULL)";						}						elseif ($filter->papersWithMissingReview == "N")						{								$query = "SELECT id FROM ($query) as t1 WHERE t1.id NOT IN" .										" (SELECT idPaper FROM Review WHERE overall IS NULL)";						}				}				if ($filter->papersWithFilter != 0)				{							// 1 <-> above						if ($filter->papersWithFilter == 1)						{								// TODO: spRate *M U S T* be a numeric value 													$query = "SELECT id FROM ($query) as s WHERE s.id IN (SELECT idPaper " . 										" FROM Review WHERE overall > $filter->papersWithRate)";						}						// 2 <-> below						elseif ($filter->papersWithFilter == 2)						{								$query = "SELECT id FROM ($query) as s WHERE s.id IN (SELECT idPaper " . 										" FROM Review WHERE overall < $filter->papersWithRate)";						}				}				if ($filter->papersWithEditor != "All")				{						if ($filter->papersWithEditor == "None")						{									$query = "SELECT id FROM ($query) AS t2 WHERE t2.id NOT IN" . 										" (SELECT idPaper FROM Editor)";						}						else 						{								$query = "SELECT id FROM ($query) AS t2 WHERE t2.id IN" . 										" (SELECT idPaper FROM Editor WHERE emailEditor='".										"$filter->papersWithEditor')";						}				} 				if ($filter->papersWithReviewer != "All")				{						if ($filter->papersWithReviewer == "None")						{								$query = "SELECT id FROM ($query) AS t3 WHERE t3.id NOT IN" .										" (SELECT idPaper from Review)";						}						else						{								$query = "SELECT id FROM ($query) AS t3 WHERE t3.id IN" . 										" (SELECT id FROM Editor WHERE email='".										"$filter->papersWithReviewer')";						}				}				/* LA REQUETE RECURSIVE FONCTIONNE A MERVEILLE. 				   A UTILISER POUR LES REVIEWQUESTIONS ET LES PAPERQUESTIONS				   $query = "SELECT id_paper FROM PaperAnswer WHERE id_question='$k' AND id_answer='$v'";				   while(list($key,$value)=each($arrayTest))				   {				   $query = "SELECT FROM PaperAnswer WHERE id_question='$key'" . 				   " AND id_answer='$value' AND id_paper IN ($query)";				   }*/		}}