[Mapbender-commits] r7708 - in trunk/mapbender: http/classes
http/javascripts http/php resources/db
resources/db/pgsql/UTF-8/update
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Wed Mar 16 07:09:21 EDT 2011
Author: armin11
Date: 2011-03-16 04:09:21 -0700 (Wed, 16 Mar 2011)
New Revision: 7708
Modified:
trunk/mapbender/http/classes/class_rss.php
trunk/mapbender/http/javascripts/mod_savewmc.js
trunk/mapbender/http/php/mod_showMetadata.php
trunk/mapbender/resources/db/new_role_concept.sql
trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7rc1_to_2.7rc2_pgsql_UTF-8.sql
Log:
Bugfixes and insert new role concept into db.
Modified: trunk/mapbender/http/classes/class_rss.php
===================================================================
--- trunk/mapbender/http/classes/class_rss.php 2011-03-15 14:19:14 UTC (rev 7707)
+++ trunk/mapbender/http/classes/class_rss.php 2011-03-16 11:09:21 UTC (rev 7708)
@@ -23,10 +23,14 @@
var $channel_creator;
var $channel_subject;
var $image_url;
+ //var $maxEntries;
+
+ //$this->maxEntries = 10;
+
protected $items = array();
protected $nritems;
- const MAX_ENTRIES = 10;
+ //const MAX_ENTRIES = 10;
protected function createItem () {
return new RssItem();
@@ -41,6 +45,7 @@
};
$this->items[]= $item;
$this->nritems++;
+ $this->deleteLast(15+3);//offset of 3 for channel: title/link/description
return $item;
}
//function to append item at the top of the item list - maybe most recent !
@@ -53,8 +58,21 @@
}
array_unshift($this->items, $item);
$this->nritems++;
+ $this->deleteLast(15+3);
return $item;
}
+
+ public function deleteLast ($maxEntries) {
+ for ($k=$maxEntries-1; $k<$this->nritems; $k++){
+ $this->items[$k] = null;
+ $e = new mb_notice("delete georss items: items[".$k."]=null");
+ }
+ if ($this->nritems > ($maxEntries-3)){
+ //reduce to maxEntries-3
+ $this->nritems = $maxEntries-3;
+ }
+ return true;
+ }
public function saveAsFile() {
if (func_num_args() === 1) {
@@ -70,6 +88,8 @@
return false;
}
}
+ //delete all entries which are more than MAX_ENTRIES from RSS!
+
return administration::saveFile($pathAndFilename, $this->__toString());
}
Modified: trunk/mapbender/http/javascripts/mod_savewmc.js
===================================================================
--- trunk/mapbender/http/javascripts/mod_savewmc.js 2011-03-15 14:19:14 UTC (rev 7707)
+++ trunk/mapbender/http/javascripts/mod_savewmc.js 2011-03-16 11:09:21 UTC (rev 7708)
@@ -86,7 +86,7 @@
browserCompatibilityMode = 1;
}
//for all save by afterMapRequest
-//browserCompatibilityMode = 1;
+browserCompatibilityMode = 1;
function pausecomp(millis) { //http://www.sean.co.uk/a/webdesign/javascriptdelay.shtm
Modified: trunk/mapbender/http/php/mod_showMetadata.php
===================================================================
--- trunk/mapbender/http/php/mod_showMetadata.php 2011-03-15 14:19:14 UTC (rev 7707)
+++ trunk/mapbender/http/php/mod_showMetadata.php 2011-03-16 11:09:21 UTC (rev 7708)
@@ -457,7 +457,7 @@
if (!isset($resourceMetadata['fkey_mb_group_id']) or isnull($resourceMetadata['fkey_mb_group_id'])){
$e = new mb_notice("mod_showMetadata: fkey_mb_group_id not found!");
//Get information about owning user of the relation mb_user_mb_group - alternatively the defined fkey_mb_group_id from the service must be used!
- $sqlDep = "SELECT mb_group_name as metadatapointofcontactorgname, mb_group_title as metadatapointofcontactorgtitle, mb_group_id, mb_group_logo_path as metadatapointofcontactorglogo, mb_group_address as metadatapointofcontactorgaddress, mb_group_email as metadatapointofcontactorgemail, mb_group_postcode as metadatapointofcontactorgpostcode, mb_group_city as metadatapointofcontactorgcity, mb_group_voicetelephone as metadatapointofcontactorgtelephone, mb_group_facsimiletelephone as metadatapointofcontactorgfax FROM mb_group AS a, mb_user AS b, mb_user_mb_group AS c WHERE b.mb_user_id = $1 AND b.mb_user_id = c.fkey_mb_user_id AND c.fkey_mb_group_id = a.mb_group_id AND c.mb_user_mb_group_type=1 LIMIT 1";
+ $sqlDep = "SELECT mb_group_name as metadatapointofcontactorgname, mb_group_title as metadatapointofcontactorgtitle, mb_group_id, mb_group_logo_path as metadatapointofcontactorglogo, mb_group_address as metadatapointofcontactorgaddress, mb_group_email as metadatapointofcontactorgemail, mb_group_postcode as metadatapointofcontactorgpostcode, mb_group_city as metadatapointofcontactorgcity, mb_group_voicetelephone as metadatapointofcontactorgtelephone, mb_group_facsimiletelephone as metadatapointofcontactorgfax FROM mb_group AS a, mb_user AS b, mb_user_mb_group AS c WHERE b.mb_user_id = $1 AND b.mb_user_id = c.fkey_mb_user_id AND c.fkey_mb_group_id = a.mb_group_id AND c.mb_user_mb_group_type=2 LIMIT 1";
$vDep = array($resourceMetadata['owner']);
$tDep = array('i');
$resDep = db_prep_query($sqlDep, $vDep, $tDep);
Modified: trunk/mapbender/resources/db/new_role_concept.sql
===================================================================
--- trunk/mapbender/resources/db/new_role_concept.sql 2011-03-15 14:19:14 UTC (rev 7707)
+++ trunk/mapbender/resources/db/new_role_concept.sql 2011-03-16 11:09:21 UTC (rev 7708)
@@ -1,4 +1,5 @@
-
+--UPDATE mb_user_mb_group set mb_user_mb_group_type = 2 where mb_user_mb_group_type = 1 ;
+UPDATE mb_user_mb_group set mb_user_mb_group_type = 1 where mb_user_mb_group_type IS NULL;
--***** new role system - should not influence the normal behaviour
-- Table: mb_role
@@ -57,7 +58,13 @@
INSERT INTO gui_element(fkey_gui_id, e_id, e_pos, e_public, e_comment, e_title, e_element, e_src, e_attributes, e_left, e_top, e_width, e_height, e_z_index, e_more_styles, e_content, e_closetag, e_js_file, e_mb_mod, e_target, e_requires, e_url) VALUES('admin1','Group_User_Role',2,1,'allocate groups to user and roles','','a','','href = "../php/mod_group_user_role.php?sessionID&e_id_css=Group_User_Role" target = "AdminFrame" ',10,1234,200,20,NULL ,'font-family: Arial, Helvetica, sans-serif; font-size : 12px; text-decoration : none;color: #808080;','GROUP -> USER -> ROLE','a','','','','AdminFrame','http://www.mapbender.org/index.php/user');
INSERT INTO gui_element_vars(fkey_gui_id, fkey_e_id, var_name, var_value, context, var_type) VALUES('admin1', 'Group_User_Role', 'file css', '../css/administration_alloc.css', 'file css' ,'file/css');
-
+--update the group for the decentral registrating institutions
+-- View: registrating_groups
+CREATE OR REPLACE VIEW registrating_groups AS
+ SELECT f.fkey_mb_group_id, f.fkey_mb_user_id
+ FROM mb_user_mb_group f, mb_user_mb_group s
+ WHERE f.mb_user_mb_group_type = 2 AND s.fkey_mb_group_id = 36 AND f.fkey_mb_user_id = s.fkey_mb_user_id
+ ORDER BY f.fkey_mb_group_id, f.fkey_mb_user_id;
--*****end of role concept****
Modified: trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7rc1_to_2.7rc2_pgsql_UTF-8.sql
===================================================================
--- trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7rc1_to_2.7rc2_pgsql_UTF-8.sql 2011-03-15 14:19:14 UTC (rev 7707)
+++ trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7rc1_to_2.7rc2_pgsql_UTF-8.sql 2011-03-16 11:09:21 UTC (rev 7708)
@@ -1704,3 +1704,77 @@
INSERT INTO gui_element(fkey_gui_id, e_id, e_pos, e_public, e_comment, e_title, e_element, e_src, e_attributes, e_left, e_top, e_width, e_height, e_z_index, e_more_styles, e_content, e_closetag, e_js_file, e_mb_mod, e_target, e_requires, e_url) VALUES('Administration','deleteCategory_icon',2,1,'icon','','img','../img/gnome/deleteCategories.png','',0,0,NULL ,NULL ,2,'','','','','','','','');
+--***** new role system - should not influence the normal behaviour
+--UPDATE mb_user_mb_group set mb_user_mb_group_type = 2 where mb_user_mb_group_type = 1 ;
+UPDATE mb_user_mb_group set mb_user_mb_group_type = 1 where mb_user_mb_group_type IS NULL;
+
+-- Table: mb_role
+
+-- DROP TABLE mb_role;
+
+CREATE TABLE mb_role
+(
+ role_id serial NOT NULL,
+ role_name character varying(50),
+ role_description character varying(255),
+ role_exclude_auth integer NOT NULL DEFAULT 0,
+ CONSTRAINT role_id PRIMARY KEY (role_id)
+)
+WITH (
+ OIDS=FALSE
+);
+ALTER TABLE mb_role OWNER TO postgres;
+
+
+--things to be done for mb_user_mb_group table:
+--drop old constraint
+--Allow to be member in a group with different roles
+ALTER TABLE mb_user_mb_group DROP CONSTRAINT pk_fkey_mb_user_mb_group_id;
+
+UPDATE mb_user_mb_group SET mb_user_mb_group_type = 1 WHERE mb_user_mb_group_type IS NULL OR mb_user_mb_group_type = 0;
+
+--default to standard role
+ALTER TABLE mb_user_mb_group ALTER COLUMN mb_user_mb_group_type SET DEFAULT 1;
+
+-- Constraint: pk_fkey_mb_user_mb_group_id
+
+-- ALTER TABLE mb_user_mb_group DROP CONSTRAINT pk_fkey_mb_user_mb_group_id;
+--create new constraint
+ALTER TABLE mb_user_mb_group
+ ADD CONSTRAINT pk_fkey_mb_user_mb_group_id PRIMARY KEY(fkey_mb_user_id, fkey_mb_group_id, mb_user_mb_group_type);
+
+
+
+--things for the role table
+--standard roles:
+INSERT INTO mb_role (role_name,role_description,role_exclude_auth) VALUES ('standard role','No special role - old behaviour.',0);
+
+INSERT INTO mb_role (role_name,role_description,role_exclude_auth) VALUES ('primary','Primary group for a mapbender user.',0);
+
+INSERT INTO mb_role (role_name,role_description,role_exclude_auth) VALUES ('metadata editor','Group for which the user can edit and publish metadata.',1);
+
+--constraint for new role system
+-- ALTER TABLE mb_user_mb_group DROP CONSTRAINT fkey_mb_user_mb_group_role_id;
+
+ALTER TABLE mb_user_mb_group
+ ADD CONSTRAINT fkey_mb_user_mb_group_role_id FOREIGN KEY (mb_user_mb_group_type)
+ REFERENCES mb_role (role_id) MATCH SIMPLE
+ ON UPDATE CASCADE ON DELETE CASCADE;
+
+--link for admin1
+INSERT INTO gui_element(fkey_gui_id, e_id, e_pos, e_public, e_comment, e_title, e_element, e_src, e_attributes, e_left, e_top, e_width, e_height, e_z_index, e_more_styles, e_content, e_closetag, e_js_file, e_mb_mod, e_target, e_requires, e_url) VALUES('admin1','Group_User_Role',2,1,'allocate groups to user and roles','','a','','href = "../php/mod_group_user_role.php?sessionID&e_id_css=Group_User_Role" target = "AdminFrame" ',10,1234,200,20,NULL ,'font-family: Arial, Helvetica, sans-serif; font-size : 12px; text-decoration : none;color: #808080;','GROUP -> USER -> ROLE','a','','','','AdminFrame','http://www.mapbender.org/index.php/user');
+INSERT INTO gui_element_vars(fkey_gui_id, fkey_e_id, var_name, var_value, context, var_type) VALUES('admin1', 'Group_User_Role', 'file css', '../css/administration_alloc.css', 'file css' ,'file/css');
+
+--update the group for the decentral registrating institutions
+-- View: registrating_groups
+CREATE OR REPLACE VIEW registrating_groups AS
+ SELECT f.fkey_mb_group_id, f.fkey_mb_user_id
+ FROM mb_user_mb_group f, mb_user_mb_group s
+ WHERE f.mb_user_mb_group_type = 2 AND s.fkey_mb_group_id = 36 AND f.fkey_mb_user_id = s.fkey_mb_user_id
+ ORDER BY f.fkey_mb_group_id, f.fkey_mb_user_id;
+--*****end of role concept****
+
+
+
+
+
More information about the Mapbender_commits
mailing list