blob: e75981e45001028fbfa14b9e91282b57bb543d67 [file] [log] [blame]
<?php
/*******************************************************************************
* Copyright (c) 2007 Eclipse Foundation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Nathan Gervais (Eclipse Foundation)- initial API and implementation
* Karl Matthias (Eclipse Foundation) - initial API and implementation
*******************************************************************************/
require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/smartconnection.class.php");
require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/classes/projects/projectInfoData.class.php");
class projectInfoList {
var $list = array();
function alphaSortList(){
if (!function_exists("cmp_obj"))
{
function cmp_obj($a, $b)
{
$al = trim(strtolower($a->projectname));
$bl = trim(strtolower($b->projectname));
if ($al == $bl) {
return 0;
}
return ($al > $bl) ? +1 : -1;
}
}
usort($this->list, "cmp_obj");
}
function getList() {
return $this->$list;
}
function setList($_list) {
$this->list = $_list;
}
function add($_project) {
$this->list[count($this->list)] = $_project;
}
function getCount() {
return count($this->list);
}
function getItemAt($_pos) {
if($_pos < $this->getCount()) {
return $this->list[$_pos];
}
}
function selectProjectInfoList($_projectID = NULL, $_mainKey = NULL, $_subKey = NULL, $_value = NULL, $_projectInfoID = NULL , $_order_by = NULL) {
$dbc = new DBConnection();
$dbh = $dbc->Connect();
$sql = "SELECT DISTINCT ProjectID
FROM ProjectInfo, ProjectInfoValues";
if ($_projectID) {
$wheresql .= " ProjectID like '$_projectID%'";
}
if ($_mainKey) {
$wheresql = $this->addAndIfNotNull($wheresql);
$wheresql .= " MainKey = '$_mainKey'";
}
if ($_subKey) {
$wheresql = $this->addAndIfNotNull($wheresql);
$wheresql .= " SubKey = '$_subKey'";
}
if ($_value) {
$wheresql = $this->addAndIfNotNull($wheresql);
$wheresql .= " Value = '$_value'";
}
if ($_projectInfoID) {
$wheresql = $this->addAndIfNotNull($wheresql);
$wheresql .= " ProjectInfo.ProjectInfoID = '$_projectInfoID'";
}
if($wheresql != "") {
$wheresql = " WHERE " . $wheresql. " AND ProjectInfo.ProjectInfoID = ProjectInfoValues.ProjectInfoID";
}
if($_order_by == "") {
$_order_by = "MainKey";
}
$_order_by = " ORDER BY " . $_order_by;
$sql = $sql . $wheresql . $_order_by;
$result = mysql_query($sql, $dbh) or die ("ProjectInfoList.selectProjectInfoList: ". mysql_error());
while ($sqlIterator = mysql_fetch_array($result))
{
$projectID = $sqlIterator['ProjectID'];
$ProjectInfoData = new ProjectInfoData($projectID);
$this->add($ProjectInfoData);
}
}
function addAndIfNotNull($_String) {
# Accept: String - String to be AND'ed
# return: string - AND'ed String
if($_String != "") {
$_String = $_String . " AND ";
}
return $_String;
}
}
?>