From ac95e958c2868538b1dec3e431281dc542b9c690 Mon Sep 17 00:00:00 2001 From: kindlm Date: Fri, 15 May 2015 11:35:31 +0200 Subject: [PATCH 1/6] Required permission in errormsg The function isBerechtigt now returns the required permission in its errormsg. --- include/benutzerberechtigung.class.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/benutzerberechtigung.class.php b/include/benutzerberechtigung.class.php index a1ae54738..b4d014c97 100644 --- a/include/benutzerberechtigung.class.php +++ b/include/benutzerberechtigung.class.php @@ -514,7 +514,7 @@ class benutzerberechtigung extends basis_db if($kostenstelle_id!='' && !is_numeric($kostenstelle_id)) { - $this->errormsg = 'Kostenstelle_id ist ungueltig'; + $this->errormsg = 'Kostenstelle_id "'.$kostenstelle_id.'" is invalid'; return false; } @@ -531,6 +531,7 @@ class benutzerberechtigung extends basis_db if (($timestamp>$b->starttimestamp || $b->starttimestamp==null) && ($timestamp<$b->endetimestamp || $b->endetimestamp==null)) { + $this->errormsg='Access denied! You need permission '.strtoupper($berechtigung_kurzbz).' '.($oe_kurzbz!=null?'in '.strtoupper($oe_kurzbz):'').' '.($art!=null?'with '.strtoupper($art):''); return false; } } @@ -560,7 +561,7 @@ class benutzerberechtigung extends basis_db } else { - $this->errormsg='Kostenstelle existiert nicht'; + $this->errormsg='Cost center (ID '.$kostenstelle_id.') does not exist'; return false; } } @@ -568,6 +569,7 @@ class benutzerberechtigung extends basis_db //wenn ein Doppelpunkt vorkommt, pruefen ob das Uebergeordnete vorhanden ist if($pos=mb_strpos($berechtigung_kurzbz,':')===false) { + $this->errormsg='Access denied! You need permission '.strtoupper($berechtigung_kurzbz).' '.($oe_kurzbz!=null?'in '.strtoupper($oe_kurzbz):'').' '.($art!=null?'with '.strtoupper($art):''); return false; } else From 57d0f238e32df90b5722a70b3550fc0875ab98f5 Mon Sep 17 00:00:00 2001 From: Paminger Date: Mon, 18 May 2015 16:00:34 +0200 Subject: [PATCH 2/6] uncoment console.log --- content/projekt/projektphase.overlay.js.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/projekt/projektphase.overlay.js.php b/content/projekt/projektphase.overlay.js.php index 081d0feeb..bfb0a578b 100755 --- a/content/projekt/projektphase.overlay.js.php +++ b/content/projekt/projektphase.overlay.js.php @@ -146,7 +146,7 @@ function onselectTreeProjektphase() var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"]. getService(Components.interfaces.nsIRDFService); var subject = rdfService.GetResource("http://www.technikum-wien.at/projektphase/" + projektphase_id); - console.log(subject); + //console.log(subject); var predicateNS = "http://www.technikum-wien.at/projektphase/rdf"; //Daten holen From 7f0b96307a4e7e55c2ad1f54ac98b77a88d51f15 Mon Sep 17 00:00:00 2001 From: oesi Date: Tue, 19 May 2015 19:33:58 +0200 Subject: [PATCH 3/6] =?UTF-8?q?L=C3=B6schen=20von=20Vertragsstatus=20hinzu?= =?UTF-8?q?gef=C3=BCgt=20Fehler=20beim=20Laden=20von=20Verwendungen=20korr?= =?UTF-8?q?igiert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/mitarbeiter/mitarbeiterDBDML.php | 25 +++++++ content/mitarbeiter/mitarbeitervertrag.js.php | 61 ++++++++++++++--- .../mitarbeitervertragoverlay.xul.php | 13 ++-- include/bisverwendung.class.php | 3 +- include/vertrag.class.php | 66 +++++++++++++++++++ 5 files changed, 148 insertions(+), 20 deletions(-) diff --git a/content/mitarbeiter/mitarbeiterDBDML.php b/content/mitarbeiter/mitarbeiterDBDML.php index 73cc48e19..6609315b7 100644 --- a/content/mitarbeiter/mitarbeiterDBDML.php +++ b/content/mitarbeiter/mitarbeiterDBDML.php @@ -617,6 +617,31 @@ if(!$error) } } } + elseif(isset($_POST['type']) && $_POST['type']=='vertragsstatusdelete') + { + if(!$rechte->isBerechtigt('vertrag/mitarbeiter',null,'suid')) + { + $return = false; + $errormsg = 'Sie haben keine Berechtigung für diesen Vorgang'; + } + else + { + $vertrag_id = filter_input(INPUT_POST, "vertrag_id"); + $status = filter_input(INPUT_POST, "status"); + + $vertrag = new vertrag(); + + if($vertrag->deleteVertragsstatus($vertrag_id, $status)) + { + $return=true; + } + else + { + $return = false; + $errormsg = 'Failed'.$vertrag->errormsg; + } + } + } elseif(isset($_POST['type']) && $_POST['type']=='vertragsdetaildelete') { if(!$rechte->isBerechtigt('vertrag/mitarbeiter',null,'suid')) diff --git a/content/mitarbeiter/mitarbeitervertrag.js.php b/content/mitarbeiter/mitarbeitervertrag.js.php index ec36176cd..ea6000cff 100644 --- a/content/mitarbeiter/mitarbeitervertrag.js.php +++ b/content/mitarbeiter/mitarbeitervertrag.js.php @@ -369,8 +369,6 @@ function MitarbeiterVertragSelectVertragsstatus() var vertrag_id=tree.view.getCellText(tree.currentIndex,col); var vertrag_status=tree.view.getCellText(tree.currentIndex,col_status); - // *** Zugeordnete Vertragselemente laden - vertragstatustree = document.getElementById('mitarbeiter-vertrag-tree-vertragsstatus'); url='rdf/vertragsstatus.rdf.php?vertrag_id='+vertrag_id+'&vertragsstatus_kurzbz='+vertrag_status+'&'+gettimestamp(); @@ -384,16 +382,15 @@ function MitarbeiterVertragSelectVertragsstatus() //Daten holen vertragsdatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum" )); + // Uhrzeit wegschneiden + vertragsdatum = vertragsdatum.substring(0,10); + document.getElementById('mitarbeiter-vertrag-vertragsstatus-textbox-vertragsdatum').value=vertragsdatum; document.getElementById('mitarbeiter-vertrag-vertragsstatus-textbox-vertragsdatum').disabled=false; - - -// var datasource = rdfService.GetDataSource(url); -// vertragstatustree.database.AddDataSource(datasource); - } -function MitarbeiterVertragVertragsstatusUpdate(){ +function MitarbeiterVertragVertragsstatusUpdate() +{ var tree=document.getElementById('mitarbeiter-vertrag-tree-vertragsstatus'); var col = tree.columns ? tree.columns["mitarbeiter-vertrag-tree-vertragsstatus-vertrag_id"] : "mitarbeiter-vertrag-tree-vertragsstatus-vertrag_id"; var col_status = tree.columns ? tree.columns["mitarbeiter-vertrag-tree-vertragsstatus-vertragsstatus_kurzbz"] : "mitarbeiter-vertrag-tree-vertragsstatus-vertragsstatus_kurzbz"; @@ -427,6 +424,50 @@ function MitarbeiterVertragVertragsstatusUpdate(){ } else { + MitarbeiterVertragVertragsstatusReload(vertrag_id); + return true; + } +} + +function MitarbeiterVertragStatusDelete() +{ + var tree=document.getElementById('mitarbeiter-vertrag-tree-vertragsstatus'); + var col = tree.columns ? tree.columns["mitarbeiter-vertrag-tree-vertragsstatus-vertrag_id"] : "mitarbeiter-vertrag-tree-vertragsstatus-vertrag_id"; + var col_status = tree.columns ? tree.columns["mitarbeiter-vertrag-tree-vertragsstatus-vertragsstatus_kurzbz"] : "mitarbeiter-vertrag-tree-vertragsstatus-vertragsstatus_kurzbz"; + + if(tree.currentIndex==-1) + return false; + + var vertrag_id=tree.view.getCellText(tree.currentIndex,col); + var vertrag_status=tree.view.getCellText(tree.currentIndex,col_status); + + var url = 'content/mitarbeiter/mitarbeiterDBDML.php'; + var req = new phpRequest(url,'',''); + + req.add('type', 'vertragsstatusdelete'); + req.add('vertrag_id',vertrag_id); + req.add('status',vertrag_status); + + var response = req.executePOST(); + + var val = new ParseReturnValue(response) + + if (!val.dbdml_return) + { + if(val.dbdml_errormsg=='') + alert(response) + else + alert(val.dbdml_errormsg) + } + else + { + MitarbeiterVertragVertragsstatusReload(vertrag_id); + return true; + } +} + +function MitarbeiterVertragVertragsstatusReload(vertrag_id) +{ // *** Status laden netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); var vertragsstatustree = document.getElementById('mitarbeiter-vertrag-tree-vertragsstatus'); @@ -444,7 +485,7 @@ function MitarbeiterVertragVertragsstatusUpdate(){ var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); var datasource = rdfService.GetDataSource(url); vertragsstatustree.database.AddDataSource(datasource); - + return true; - } + } diff --git a/content/mitarbeiter/mitarbeitervertragoverlay.xul.php b/content/mitarbeiter/mitarbeitervertragoverlay.xul.php index db00fc574..fcdf5fe05 100644 --- a/content/mitarbeiter/mitarbeitervertragoverlay.xul.php +++ b/content/mitarbeiter/mitarbeitervertragoverlay.xul.php @@ -47,6 +47,8 @@ echo ''; echo '