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