[Mapbender-commits] r1296 - trunk/mapbender/http/classes
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Sat May 5 07:39:52 EDT 2007
Author: marcjansen
Date: 2007-05-05 07:39:52 -0400 (Sat, 05 May 2007)
New Revision: 1296
Modified:
trunk/mapbender/http/classes/class_administration.php
Log:
PHPdoc comments added
Modified: trunk/mapbender/http/classes/class_administration.php
===================================================================
--- trunk/mapbender/http/classes/class_administration.php 2007-05-05 11:04:24 UTC (rev 1295)
+++ trunk/mapbender/http/classes/class_administration.php 2007-05-05 11:39:52 UTC (rev 1296)
@@ -20,77 +20,106 @@
$con = db_connect(DBSERVER,OWNER,PW);
db_select_db(DB,$con);
-require("phpmailer-1.72/class.phpmailer.php");
-
+require("phpmailer-1.72/class.phpmailer.php");
+
+/**
+ * class to wrap administration methods
+ *
+ * @uses phpmailer
+ */
class administration{
-
+ /**
+ * checks whether the passed email-address is valid / following a pattern
+ * @todo is this an exact representation of the RFC 2822?
+ * @todo this should be checked: what about umlaut-domains and tld like '.museum'?
+ * @see http://tools.ietf.org/html/rfc2822
+ *
+ * @param <string> a all lowercase email adress to test
+ * @return <boolean> answer to "is the passed over email valid?""
+ */
function isValidEmail($email) {
- if(eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) {
+ if(eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) {
return true;
- }
+ }
return false;
}
-
+
+ /**
+ * sends an email via php mailer
+ *
+ * @param <string> an email address for the "From"-field
+ * @param <string> the displayed name for the "From"-field
+ * @param <string> an email address for the "To"-field
+ * @param <string> the displayed name for the "From"-field
+ * @param <string> the text to be set as "Subject"
+ * @param <string> the text of the emails body
+ * @param <string> a reference to an error string
+ */
function sendEmail($fromAddr, $fromName, $toAddr, $toName, $subject, $body, &$error_msg ){
-
+
global $mailHost, $mailUsername, $mailPassword;
if($fromAddr == ''){
$fromAddr = MAILADMIN;
}
-
+
if($fromName == ''){
$fromName = MAILADMINNAME;
}
-
+
if ($this->isValidEmail($fromAddr) && $this->isValidEmail($toAddr)) {
$mail = new PHPMailer();
if ($fromName != "" ) {
$mail->FromName = $fromName;
}
-
+
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = $mailHost; // specify main and backup server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = $mailUsername; // SMTP username
$mail->Password = $mailPassword; // SMTP password
-
+
$mail->From = $fromAddr;
$mail->AddAddress($toAddr, $toName);
#$mail->AddReplyTo("info at ccgis.de", "Information");
-
+
$mail->WordWrap = 50; // set word wrap to 50 characters
#$mail->AddAttachment("/var/tmp/file.tar.gz"); // add attachments
#$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); // optional name
$mail->IsHTML(false); // set email format to HTML
-
+
$mail->Subject = "[".$fromName."] ".$subject;
$mail->Body = $body;
#$mail->AltBody = "This is the body in plain text for non-HTML mail clients";
-
+
$error_msg='';
-
+
if(!$mail->Send())
{
$error_msg .= "Mailer Error: " . $mail->ErrorInfo;
return false;
}
-
+
return true;
}
else {
return false;
}
}
-
+
+ /**
+ * returns a random password with numbers and chars both lowercase and uppercase (0-9a-zA-Z)
+ *
+ * @return <string> the new password
+ */
function getRandomPassword() {
// password length
- $max = 16;
-
+ $max = 16;
+
//new password
$newpass = "";
-
+
for ($i=0;$i <= $max;$i++) {
//die ASCII-Zeichen 48 - 57 sind die zahlen 0-9
//die ASCII-Zeichen 65 - 90 sind die buchstaben A-Z (Groß)
@@ -103,9 +132,9 @@
}
return $newpass;
}
-
+
function getOwnerByGui($gui_id){
-
+
$sql = "(SELECT mb_user.mb_user_name";
$sql .= "FROM mb_user ";
$sql .= "JOIN gui_mb_user ON mb_user.mb_user_id = gui_mb_user.fkey_mb_user_id ";
@@ -121,7 +150,7 @@
$sql .= "JOIN gui_mb_user ON mb_user.mb_user_id = gui_mb_user.fkey_mb_user_id ";
$sql .= "WHERE gui_mb_group.mb_group_type = 'owner' ";
$sql .= "AND gui_mb_group.fkey_gui_id = $2 ";
- $sql .= "GROUP BY mb_user.mb_user_name)";
+ $sql .= "GROUP BY mb_user.mb_user_name)";
$owner = array();
$v = array($gui_id,$gui_id);
$t = array('s','s');
@@ -130,49 +159,49 @@
while($row = db_fetch_array($res)){
$owner[$cnt] = $row["mb_user_name"];
$cnt++;
- }
+ }
return $owner;
}
-
+
function getEmailByUserId($userid){
- $sql = "SELECT mb_user_email FROM mb_user ";
+ $sql = "SELECT mb_user_email FROM mb_user ";
$sql .= "WHERE mb_user_id = $1 GROUP by mb_user_email";
$v = array($userid);
- $t = array('i');
+ $t = array('i');
$res = db_prep_query($sql,$v,$t);
$count_g = 0;
$array = array();
- $row = db_fetch_array($res);
+ $row = db_fetch_array($res);
if ($row) {
return $row["mb_user_email"];
}
else {
return false;
- }
- }
+ }
+ }
function getUserNameByUserId($userid){
- $sql = "SELECT mb_user_name FROM mb_user ";
+ $sql = "SELECT mb_user_name FROM mb_user ";
$sql .= "WHERE mb_user_id = $1 GROUP BY mb_user_name";
$v = array($userid);
- $t = array("i");
+ $t = array("i");
$res = db_prep_query($sql,$v,$t);
$count_g = 0;
$array = array();
- $row = db_fetch_array($res);
+ $row = db_fetch_array($res);
if ($row) {
return $row["mb_user_name"];
}
else {
return false;
- }
+ }
}
function getUserIdByEmail($email){
- $sql = "SELECT mb_user_id FROM mb_user ";
+ $sql = "SELECT mb_user_id FROM mb_user ";
$sql .= "WHERE mb_user_email = $1 GROUP BY mb_user_id";
$v = array($email);
- $t = array('s');
+ $t = array('s');
$res = db_prep_query($sql,$v,$t);
$count_g = 0;
$array = array();
@@ -185,8 +214,8 @@
}
else {
return false;
- }
- }
+ }
+ }
function getOwnerByWms($wms_id){
$sql = "SELECT fkey_gui_id FROM gui_wms WHERE fkey_wms_id = $1 GROUP BY fkey_gui_id";
@@ -245,7 +274,7 @@
}
else return false;
}
-
+
function guiExists($id){
$sql = "SELECT * FROM gui WHERE gui_id = $1 ";
$v = array($id);
@@ -257,17 +286,17 @@
}
else {
return false;
- }
- }
+ }
+ }
function deleteWmc($wmc_id, $user_id){
- $sql = "DELETE FROM mb_user_wmc ";
+ $sql = "DELETE FROM mb_user_wmc ";
$sql .= "WHERE fkey_user_id = $1 AND wmc_id = $2";
$v = array($user_id,$wmc_id);
- $t = array('i','s');
+ $t = array('i','s');
$res = db_prep_query($sql,$v,$t);
if ($res) {
- return true;
+ return true;
}
else {
return false;
@@ -282,10 +311,10 @@
$res = db_prep_query($sql,$v,$t);
if ($res) {
return true;
- }
+ }
}
return false;
- }
+ }
function delAllUsersOfGui($guiId) {
$sql = "DELETE FROM gui_mb_user WHERE fkey_gui_id = $1 ";
@@ -297,14 +326,14 @@
}
else {
return true;
- }
+ }
}
function getWmsByOwner($user_id){
$gui_list = $this->getGuisByOwner($user_id,true);
return $this->getWmsByOwnGuis($gui_list);
}
-
+
function getWmsByWmsOwner($user_id){
$sql = "SELECT wms_id FROM wms WHERE wms_owner = $1";
$v = array($user_id);
@@ -316,7 +345,7 @@
}
return $r;
}
-
+
function getUserByWms($wms_id){
$sql = "SELECT fkey_gui_id FROM gui_wms WHERE fkey_wms_id = $1 GROUP BY fkey_gui_id";
$v = array($wms_id);
@@ -343,7 +372,7 @@
}
$sql .= ") GROUP BY mb_user.mb_user_name) UNION";
$sql .= "(SELECT mb_user.mb_user_name FROM gui_mb_group JOIN mb_user_mb_group ON mb_user_mb_group.fkey_mb_group_id = gui_mb_group.fkey_mb_group_id JOIN mb_user ";
- $sql .= "ON mb_user.mb_user_id = mb_user_mb_group.fkey_mb_user_id ";
+ $sql .= "ON mb_user.mb_user_id = mb_user_mb_group.fkey_mb_user_id ";
$sql .= " WHERE gui_mb_group.fkey_gui_id IN (";
for($i=0; $i<count($gui); $i++){
if($i>0){ $sql .= ",";}
@@ -360,10 +389,10 @@
$user[$cnt] = $row["mb_user_name"];
$cnt++;
}
- }
+ }
return $user;
}
-
+
function getWmsTitleByWmsId($id){
$sql = "SELECT wms_title from wms WHERE wms_id = $1 GROUP BY wms_title";
$v = array($id);
@@ -372,7 +401,7 @@
$row = db_fetch_array($res);
if ($row) return $row["wms_title"]; else return false;
}
-
+
function getLayerTitleByLayerId($id){
$sql = "SELECT layer_title from layer WHERE layer_id = $1 GROUP BY layer_title";
$v = array($id);
@@ -381,7 +410,7 @@
$row = db_fetch_array($res);
if ($row) return $row["layer_title"]; else return false;
}
-
+
function getWmcById($id){
$sql = "SELECT wmc FROM mb_user_wmc WHERE wmc_id = $1 ";
$v = array($id);
@@ -393,14 +422,14 @@
}
else {
return false;
- }
+ }
}
-
+
function resetLoginCount($userId) {
$sql = "UPDATE mb_user SET mb_user_login_count = '0' ";
$sql .= "WHERE mb_user_id = $1 ";
$v = array($userId);
- $t = array('i');
+ $t = array('i');
$res = db_prep_query($sql,$v,$t);
if (!$res) {
@@ -408,24 +437,24 @@
}
else {
return true;
- }
- }
-
+ }
+ }
+
function getUserIdByUserName($username){
- $sql = "SELECT mb_user_id FROM mb_user ";
+ $sql = "SELECT mb_user_id FROM mb_user ";
$sql .= "WHERE mb_user_name = $1 GROUP BY mb_user_id";
$v = array($username);
$t = array('s');
$res = db_prep_query($sql,$v,$t);
$row = db_fetch_array($res);
if ($row) return $row["mb_user_id"]; else return false;
- }
+ }
function setUserAsGuiOwner($guiId, $userId) {
$sql = "UPDATE gui_mb_user SET mb_user_type = 'owner' ";
$sql .= "WHERE fkey_gui_id = $1 AND fkey_mb_user_id = $2 ";
$v = array($guiId,$userId);
- $t = array('s','i');
+ $t = array('s','i');
$res = db_prep_query($sql,$v,$t);
if (!$res) {
@@ -433,14 +462,14 @@
}
else {
return true;
- }
- }
-
+ }
+ }
+
function getGuiIdByGuiName($guiTitle){
- $sql = "SELECT gui_id FROM gui ";
+ $sql = "SELECT gui_id FROM gui ";
$sql .= "WHERE gui_name = $1 GROUP BY gui_id";
$v = array($guiTitle);
- $t = array('s');
+ $t = array('s');
$res = db_prep_query($sql,$v,$t);
$count_g = 0;
$array = array();
@@ -453,12 +482,12 @@
}
else {
return false;
- }
- }
-
+ }
+ }
+
function getGuisByOwner($user_id,$ignore_public)
{
- $sql_guis = "SELECT gui.gui_id FROM gui,gui_mb_user ";
+ $sql_guis = "SELECT gui.gui_id FROM gui,gui_mb_user ";
$sql_guis .= "WHERE (gui.gui_id = gui_mb_user.fkey_gui_id AND gui_mb_user.fkey_mb_user_id = $1) ";
if (!isset($ignore_public) OR $ignore_public == false){
$sql_guis .= " AND gui.gui_public = 1 ";
@@ -466,7 +495,7 @@
$sql_guis .= " AND gui_mb_user.mb_user_type = 'owner' GROUP BY gui.gui_id";
$sql_guis .= " ORDER by gui.gui_id";
$v = array($user_id);
- $t = array('i');
+ $t = array('i');
$res_guis = db_prep_query($sql_guis,$v,$t);
$count_g = 0;
$arrayGuis = array();
@@ -474,11 +503,11 @@
$arrayGuis[$count_g] = $row["gui_id"];
$count_g++;
}
- return $arrayGuis;
- }
-
+ return $arrayGuis;
+ }
+
function getWmcByOwner($user_id){
- $sql_wmc = "SELECT wmc_id FROM mb_user_wmc ";
+ $sql_wmc = "SELECT wmc_id FROM mb_user_wmc ";
$sql_wmc .= "WHERE fkey_user_id = $1 GROUP BY wmc_id";
$v = array($user_id);
$t = array('i');
@@ -489,16 +518,16 @@
$arrayWmc[$count_g] = $row["wmc_id"];
$count_g++;
}
- return $arrayWmc;
- }
+ return $arrayWmc;
+ }
function getGuisByPermission($mb_user_id,$ignore_public){
$arrayGuis = array();
- $mb_user_groups = array();
+ $mb_user_groups = array();
$sql_groups = "SELECT fkey_mb_group_id FROM mb_user_mb_group WHERE fkey_mb_user_id = $1 ";
$v = array($mb_user_id);
$t = array("i");
- $res_groups = db_prep_query($sql_groups,$v,$t);
+ $res_groups = db_prep_query($sql_groups,$v,$t);
$cnt_groups = 0;
while($row = db_fetch_array($res_groups)){
$mb_user_groups[$cnt_groups] = $row["fkey_mb_group_id"];
@@ -507,8 +536,8 @@
if($cnt_groups > 0){
$v = array();
$t = array();
- $sql_g = "SELECT gui.gui_id FROM gui JOIN gui_mb_group ";
- $sql_g .= " ON gui.gui_id = gui_mb_group.fkey_gui_id WHERE gui_mb_group.fkey_mb_group_id IN (";
+ $sql_g = "SELECT gui.gui_id FROM gui JOIN gui_mb_group ";
+ $sql_g .= " ON gui.gui_id = gui_mb_group.fkey_gui_id WHERE gui_mb_group.fkey_mb_group_id IN (";
for($i=0; $i<count($mb_user_groups);$i++){
if($i > 0){$sql_g .= ",";}
$sql_g .= "$".strval($i+1);
@@ -519,14 +548,14 @@
$res_g = db_prep_query($sql_g,$v,$t);
while($row = db_fetch_array($res_g)){
array_push($arrayGuis,$row["gui_id"]);
- }
+ }
}
- $sql_guis = "SELECT gui.gui_id FROM gui JOIN gui_mb_user ON gui.gui_id = gui_mb_user.fkey_gui_id";
+ $sql_guis = "SELECT gui.gui_id FROM gui JOIN gui_mb_user ON gui.gui_id = gui_mb_user.fkey_gui_id";
$sql_guis .= " WHERE (gui_mb_user.fkey_mb_user_id = $1) ";
if (!isset($ignore_public) OR $ignore_public== false){
$sql_guis .= " AND gui.gui_public = 1 ";
}
- $sql_guis .= " GROUP BY gui.gui_id";
+ $sql_guis .= " GROUP BY gui.gui_id";
$v = array($mb_user_id);
$t = array("i");
$res_guis = db_prep_query($sql_guis,$v,$t);
@@ -534,12 +563,12 @@
while($row = db_fetch_array($res_guis)){
if(!in_array($row['gui_id'],$arrayGuis)){
array_push($arrayGuis,$row["gui_id"]);
- }
+ }
}
return $arrayGuis;
}
-
- function getWmsByOwnGuis($array_gui_ids){
+
+ function getWmsByOwnGuis($array_gui_ids){
if(count($array_gui_ids)>0){
$v = array();
$t = array();
@@ -556,13 +585,13 @@
$i=0;
while($row = db_fetch_array($res)){
$ownguis[$i] = $row['fkey_wms_id'];
- $i++;
- }
- }
+ $i++;
+ }
+ }
return $ownguis;
}
-
- function getLayerByWms($wms_id){
+
+ function getLayerByWms($wms_id){
$sql = "SELECT layer_id from layer WHERE fkey_wms_id = $1 AND layer_pos NOT IN ('0') GROUP BY layer_id, layer_title ORDER BY layer_title";
$v = array($wms_id);
$t = array('i');
@@ -570,11 +599,11 @@
$layer_id_array = array();
while($row = db_fetch_array($res)){
$layer_id_array[count($layer_id_array)] = $row['layer_id'];
- }
+ }
return $layer_id_array;
}
-
- function getWmsOwner($wms_id){
+
+ function getWmsOwner($wms_id){
$sql = "SELECT fkey_gui_id FROM gui_wms WHERE fkey_wms_id = $1 GROUP BY fkey_gui_id";
$v = array($wms_id);
$t = array('i');
@@ -608,7 +637,7 @@
}
return $wmsowner;
}
-
+
function insertUserAsGuiOwner($guiId, $userId){
$sql = "INSERT INTO gui_mb_user VALUES ($1, $2, 'owner')";
$v = array($guiId,$userId);
@@ -619,9 +648,9 @@
}
else {
return true;
- }
+ }
}
-
+
function checkModulePermission($arrayGuis, $modulePath, $column){
$check = true;
if($check == true){
@@ -636,20 +665,20 @@
array_push($v,$arrayGuis[$i]);
array_push($t,'s');
}
- $sql .= ")";
+ $sql .= ")";
$res = db_prep_query($sql,$v,$t);
$cnt = 0;
while($row = db_fetch_array($res)){
if(strpos(stripslashes($row[$column]),$modulePath) !== false){
$perm = true;
}
- $cnt++;
+ $cnt++;
}
}
return $perm;
}
else{
- return true;
+ return true;
}
}
@@ -662,7 +691,7 @@
return $row["wms_owsproxy"];
}
else{
- return false;
+ return false;
}
}
@@ -674,7 +703,7 @@
$v = array($time,$wms_id);
}
else{
- $v = array("",$wms_id);
+ $v = array("",$wms_id);
}
$res = db_prep_query($sql,$v,$t);
}
@@ -689,7 +718,7 @@
return $url."?";
}
else{
- return $url;
+ return $url;
}
}
function getModulPermission($userID,$guiID,$elementID){
@@ -707,8 +736,8 @@
}
}
else{
- return false;
- }
+ return false;
+ }
}
function getLayerPermission($wms_id, $layer_name, $user_id){
$layer_id = $this->getLayerIdByLayerName($wms_id,$layer_name);
@@ -722,7 +751,7 @@
$sql .= "$".$c;
$c++;
array_push($v, $array_guis[$i]);
- array_push($t, 's');
+ array_push($t, 's');
}
$sql .= ") AND fkey_layer_id = $".$c." AND gui_layer_status = 1";
array_push($v,$layer_id);
@@ -746,7 +775,7 @@
$sql .= "$".$c;
$c++;
array_push($v, $array_guis[$i]);
- array_push($t, 's');
+ array_push($t, 's');
}
$sql .= ") AND fkey_wms_id = $".$c;
array_push($v,$wms_id);
@@ -769,7 +798,7 @@
return $row['layer_id'];
}
else{
- return false;
+ return false;
}
}
function getWmsIdByWmsGetmap($getmap) {
@@ -782,7 +811,7 @@
return $row['wms_id'];
}
else{
- return false;
+ return false;
}
}
}
More information about the Mapbender_commits
mailing list