private $title = null;
private $description = null;
private $date = 0;
+ private $user = null;
const err_lonlat_invalid = 1;
- function __construct ($id, $lon, $lat, $imgpath, $title, $description, $date) {
+ function __construct ($id, $lon, $lat, $imgpath, $title, $description, $date, $user) {
$this->imgpath = $imgpath;
// id
// date
$this->date = $date;
+ // user
+ $this->user = $user;
+
// longitude
if (!isset ($lon) || !is_numeric ($lon) ||
($lon < -180) || ($lon > 180)) {
*/
public function create_items_table();
+ /*
+ * returns true if $usrname is name of an existing user, false otherwise.
+ */
+ public function user_exists ($usrname);
+
/*
* set password $pwd for user $usrname. If $usrname does not exist, create
* it.
+ * throws an err_query error in case $pwd is null
*/
public function setpwd($usrname, $pwd);
public function getfeature($id);
/*
- * returns an array of available features
+ * returns an array of features managed by $user. If $user is undefined or
+ * if user is "admin", return all available features.
*/
- public function listfeatures();
+ public function listfeatures($user);
/*
* returns the most recent features sorted by date. If $num_features is not
*/
public function imgpath_exists($imgpath);
- /*
- * returns Minimum Bounding Rectangle containing all feature locations.
- * That function must return a result even if database is not functional.
- * Minimum Bounding Rectangle is presented as an Array:
- * [bottom, left, top, right]
- */
- public function mbr();
-
/*
* get name of database backend
*/