admin page v1
This commit is contained in:
@@ -29,6 +29,10 @@ class Project extends PhpObject {
|
||||
$this->oDb = &$oDb;
|
||||
}
|
||||
|
||||
public function getProjectId() {
|
||||
return $this->iProjectId;
|
||||
}
|
||||
|
||||
public function setProjectId($iProjectId=0) {
|
||||
if($iProjectId > 0) {
|
||||
$this->iProjectId = $iProjectId;
|
||||
@@ -53,25 +57,47 @@ class Project extends PhpObject {
|
||||
return $this->sMode;
|
||||
}
|
||||
|
||||
public function getProjectId() {
|
||||
return $this->iProjectId;
|
||||
}
|
||||
|
||||
public function getProjectCodeName() {
|
||||
return $this->sCodeName;
|
||||
}
|
||||
|
||||
public function setProjectCodeName($sCodeName) {
|
||||
return $this->updateField('codename', $sCodeName);
|
||||
}
|
||||
|
||||
public function getActivePeriod($sFromTo='') {
|
||||
return ($sFromTo=='')?$this->asActive:$this->asActive[$sFromTo];
|
||||
}
|
||||
|
||||
public function setActivePeriod($oValue, $sFromTo='') {
|
||||
if($sFromTo=='') {
|
||||
$this->updateField('active_from', $oValue['from']);
|
||||
return $this->updateField('active_to', $oValue['to']);
|
||||
}
|
||||
else {
|
||||
return $this->updateField('active_'.$sFromTo, $oValue);
|
||||
}
|
||||
}
|
||||
|
||||
public function getTimeZone() {
|
||||
return $this->asGeo['timezone'];
|
||||
}
|
||||
|
||||
public function setTimeZone($sTimeZone) {
|
||||
return $this->updateField('timezone', $sTimeZone);
|
||||
}
|
||||
|
||||
public function getGeoFile() {
|
||||
return $this->asGeo['file'];
|
||||
}
|
||||
|
||||
public function getFeedIds() {
|
||||
return $this->oDb->selectColumn(
|
||||
Feed::FEED_TABLE,
|
||||
Db::getId(Feed::FEED_TABLE),
|
||||
array(Db::getId(self::PROJ_TABLE) => $this->getProjectId())
|
||||
);
|
||||
}
|
||||
|
||||
public function getProjects($iProjectId=0) {
|
||||
$bSpecificProj = ($iProjectId > 0);
|
||||
@@ -109,17 +135,13 @@ class Project extends PhpObject {
|
||||
return $bSpecificProj?$asProject:$asProjects;
|
||||
}
|
||||
|
||||
public function getFeedIds() {
|
||||
return $this->oDb->selectColumn(
|
||||
Feed::FEED_TABLE,
|
||||
Db::getId(Feed::FEED_TABLE),
|
||||
array(Db::getId(self::PROJ_TABLE) => $this->getProjectId())
|
||||
);
|
||||
public function getProject() {
|
||||
return $this->getProjects($this->getProjectId());
|
||||
}
|
||||
|
||||
private function setProjectInfo() {
|
||||
if($this->getProjectId() > 0) {
|
||||
$asProject = $this->getProjects($this->getProjectId());
|
||||
$asProject = $this->getProject();
|
||||
|
||||
$this->sMode = $asProject['mode'];
|
||||
$this->asActive = array('from'=>$asProject['active_from'], 'to'=>$asProject['active_to']);
|
||||
@@ -129,4 +151,11 @@ class Project extends PhpObject {
|
||||
}
|
||||
else $this->addError('Error while setting project: no project ID');
|
||||
}
|
||||
|
||||
private function updateField($sField, $oValue) {
|
||||
$bResult = ($this->oDb->updateRow(self::PROJ_TABLE, $this->getProjectId(), array($sField=>$oValue)) > 0);
|
||||
$this->setProjectInfo();
|
||||
|
||||
return $bResult;
|
||||
}
|
||||
}
|
||||
25
inc/spot.php
25
inc/spot.php
@@ -327,6 +327,31 @@ class Spot extends Main
|
||||
return self::getJsonResult(true, '');
|
||||
}
|
||||
|
||||
public function getAdminSettings() {
|
||||
return self::getJsonResult(true, '', array('projects'=>$this->oProject->getProjects()));
|
||||
}
|
||||
|
||||
public function setAdminSettings($sField, $sValue) {
|
||||
$bSuccess = false;
|
||||
$sDesc = '';
|
||||
|
||||
switch($sField) {
|
||||
case 'codename':
|
||||
$bSuccess = $this->oProject->setProjectCodeName($sValue);
|
||||
break;
|
||||
case 'active_from':
|
||||
case 'active_to':
|
||||
$bSuccess = $this->oProject->setActivePeriod($sValue, mb_substr($sField, 7));
|
||||
break;
|
||||
case 'timezone':
|
||||
$bSuccess = $this->oProject->setTimeZone($sValue);
|
||||
break;
|
||||
}
|
||||
if(!$bSuccess) $sDesc = 'Issue committing to DB';
|
||||
|
||||
return self::getJsonResult($bSuccess, $sDesc, array('values'=>$this->oProject->getProject()));
|
||||
}
|
||||
|
||||
public static function DecToDMS($dValue, $sType='lat') {
|
||||
if($sType=='lat') $sDirection = ($dValue >= 0)?'N':'S';
|
||||
else $sDirection = ($dValue >= 0)?'E':'W';
|
||||
|
||||
Reference in New Issue
Block a user