[40] | 1 | <?php
|
---|
| 2 |
|
---|
| 3 | // Survey database interface class as intermediate for storing data from the site to the RDF database
|
---|
[45] | 4 | require_once 'rdfConstants.php';
|
---|
[40] | 5 |
|
---|
| 6 | // Include RAP Library to write RDF files
|
---|
| 7 | include(RDFAPI_INCLUDE_DIR . "RDFAPI.php");
|
---|
| 8 |
|
---|
| 9 |
|
---|
| 10 |
|
---|
| 11 | class ApplicationDatabaseInterface
|
---|
| 12 | {
|
---|
[62] | 13 | protected $applicationRDFWriter;
|
---|
| 14 | protected $applicationRDFReader;
|
---|
[40] | 15 |
|
---|
[86] | 16 | protected $applicationID;
|
---|
[62] | 17 |
|
---|
[86] | 18 |
|
---|
[78] | 19 | public function __construct($applicationID)
|
---|
| 20 | {
|
---|
| 21 | if($applicationID == null)
|
---|
[86] | 22 | $this->applicationID = md5( uniqid(rand(), true) );
|
---|
[78] | 23 | else
|
---|
[86] | 24 | $this->applicationID = $applicationID;
|
---|
[78] | 25 |
|
---|
[86] | 26 | $this->applicationRDFWriter = new ApplicationRDFWriter($this->applicationID);
|
---|
[62] | 27 | $this->applicationRDFReader = new ApplicationRDFReader();
|
---|
| 28 | }
|
---|
[86] | 29 |
|
---|
| 30 | public function getApplicationID()
|
---|
| 31 | {
|
---|
| 32 | return $this->applicationID;
|
---|
| 33 | }
|
---|
[62] | 34 |
|
---|
| 35 | public function setApplicationInfo($applicationInfo)
|
---|
[40] | 36 | {
|
---|
[80] | 37 | $appTitle = $applicationInfo['applicationTitle'];
|
---|
| 38 | $appDescription = $applicationInfo['applicationDescription'];
|
---|
| 39 | $appStyle = null;
|
---|
[62] | 40 |
|
---|
| 41 | $this->applicationRDFWriter->setApplicationInfo($appTitle, $appDescription, $appStyle);
|
---|
| 42 |
|
---|
| 43 | $this->applicationRDFWriter->saveApplications();
|
---|
[40] | 44 | }
|
---|
| 45 |
|
---|
[62] | 46 | public function getApplicationInfo($applicationID)
|
---|
| 47 | {
|
---|
| 48 | $applicationInfo = array();
|
---|
| 49 |
|
---|
[87] | 50 | $resultApplication = $this->applicationRDFReader->readApplicationInfo($applicationID);
|
---|
[88] | 51 |
|
---|
| 52 | $applicationInfo['applicationID'] = $applicationID;
|
---|
| 53 | $applicationInfo['applicationTitle'] = $resultApplication[0]['?title']->label;
|
---|
| 54 | $applicationInfo['applicationDescription'] = $resultApplication[0]['?description']->label;
|
---|
| 55 | $applicationInfo['applicationStyle'] = $resultApplication[0]['?style']->label;
|
---|
[62] | 56 |
|
---|
| 57 | return $applicationInfo;
|
---|
| 58 | }
|
---|
| 59 |
|
---|
| 60 | public function getExistingApplications()
|
---|
| 61 | {
|
---|
| 62 | $applicationInfo = array();
|
---|
| 63 |
|
---|
| 64 | $resultApplication = $this->applicationRDFReader->readAllApplications();
|
---|
[80] | 65 |
|
---|
| 66 | for($aNumber = 0;$aNumber<sizeof($resultApplication[0]);$aNumber++)
|
---|
[62] | 67 | {
|
---|
[88] | 68 | $aID = $resultApplication[0][$aNumber]['?uid']->label;
|
---|
| 69 | $aTitle = $resultApplication[1][$aNumber]['?title']->label;
|
---|
[62] | 70 | $applicationInfo[$aID] = $aTitle;
|
---|
| 71 | }
|
---|
| 72 |
|
---|
| 73 | return $applicationInfo;
|
---|
| 74 | }
|
---|
[40] | 75 | }
|
---|
| 76 | ?> |
---|