mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
Vertragsdatum im FAS editierbar
This commit is contained in:
@@ -582,6 +582,37 @@ if(!$error)
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='vertragsstatusupdate')
|
||||
{
|
||||
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");
|
||||
$datum = filter_input(INPUT_POST, "datum");
|
||||
|
||||
$vertrag = new vertrag($vertrag_id);
|
||||
$vertrag->getStatus($vertrag_id,$status);
|
||||
|
||||
$vertrag->datum = $datum;
|
||||
$vertrag->updatevon = $user;
|
||||
$vertrag->updateamum = date('Y-m-d H:i:s');
|
||||
|
||||
if($vertrag->saveVertragsstatus(false))
|
||||
{
|
||||
$return=true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = $vertrag->errormsg;
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='vertragsdetaildelete')
|
||||
{
|
||||
if(!$rechte->isBerechtigt('vertrag/mitarbeiter',null,'suid'))
|
||||
|
||||
@@ -23,7 +23,8 @@ require_once('../../include/functions.inc.php');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
?>
|
||||
if(false): ?> <script type="text/javascript"><?php endif; ?>
|
||||
|
||||
var MitarbeiterVertragLoadedPerson=null
|
||||
// ****************** FUNKTIONEN ************************** //
|
||||
|
||||
@@ -354,3 +355,96 @@ function MitarbeiterVertragDetailDelete()
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
function MitarbeiterVertragSelectVertragsstatus()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
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);
|
||||
|
||||
// *** Zugeordnete Vertragselemente laden
|
||||
|
||||
vertragstatustree = document.getElementById('mitarbeiter-vertrag-tree-vertragsstatus');
|
||||
url='<?php echo APP_ROOT;?>rdf/vertragsstatus.rdf.php?vertrag_id='+vertrag_id+'&vertragsstatus_kurzbz='+vertrag_status+'&'+gettimestamp();
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
|
||||
var dsource = rdfService.GetDataSourceBlocking(url);
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/vertragsstatus/"+vertrag_status +"/"+ vertrag_id);
|
||||
|
||||
var predicateNS = "http://www.technikum-wien.at/vertragsstatus/rdf";
|
||||
|
||||
//Daten holen
|
||||
vertragsdatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum" ));
|
||||
|
||||
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(){
|
||||
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 vertrag_datum = document.getElementById("mitarbeiter-vertrag-vertragsstatus-textbox-vertragsdatum").iso;
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/mitarbeiter/mitarbeiterDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'vertragsstatusupdate');
|
||||
req.add('vertrag_id',vertrag_id);
|
||||
req.add('status',vertrag_status);
|
||||
req.add('datum',vertrag_datum);
|
||||
|
||||
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
|
||||
{
|
||||
// *** Status laden
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var vertragsstatustree = document.getElementById('mitarbeiter-vertrag-tree-vertragsstatus');
|
||||
url='<?php echo APP_ROOT;?>rdf/vertragsstatus.rdf.php?vertrag_id='+vertrag_id+"&"+gettimestamp();
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = vertragsstatustree.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
vertragsstatustree.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
//Refresh damit die entfernten DS auch wirklich entfernt werden
|
||||
vertragsstatustree.builder.rebuild();
|
||||
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,8 @@ require_once('../../include/functions.inc.php');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
?>
|
||||
if(false): ?> <script type="text/javascript"><?php endif; ?>
|
||||
|
||||
var MitarbeiterVertragNeuBetragOld=0;
|
||||
var addon = Array();
|
||||
|
||||
|
||||
@@ -55,7 +55,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<menuitem label="Entfernen" oncommand="MitarbeiterVertragDetailDelete()" />
|
||||
</menupopup>
|
||||
</popupset>
|
||||
<vbox flex="1">
|
||||
<vbox flex="3">
|
||||
<vbox flex="1">
|
||||
<hbox>
|
||||
<toolbox flex="1">
|
||||
@@ -135,8 +135,8 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
</tree>
|
||||
</vbox>
|
||||
</vbox>
|
||||
<hbox flex="1" id="mitarbeiter-vertrag-vbox-vertragsdetails">
|
||||
<vbox flex="1">
|
||||
<hbox flex="2" id="mitarbeiter-vertrag-vbox-vertragsdetails">
|
||||
<vbox flex="2">
|
||||
<description>Vertragsdetails</description>
|
||||
<tree id="mitarbeiter-vertrag-tree-zugeordnet" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/vertragdetails"
|
||||
@@ -203,13 +203,15 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
</template>
|
||||
</tree>
|
||||
</vbox>
|
||||
<vbox flex="1">
|
||||
<vbox flex="2">
|
||||
<vbox flex="1">
|
||||
<description>Vertragsstatus</description>
|
||||
<tree id="mitarbeiter-vertrag-tree-vertragsstatus" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/vertragsstatus"
|
||||
enableColumnDrag="true"
|
||||
context="mitarbeiter-vertrag-tree-vertragsstatus-popup"
|
||||
flags="dont-build-content"
|
||||
onselect="MitarbeiterVertragSelectVertragsstatus();"
|
||||
>
|
||||
<treecols>
|
||||
<treecol id="mitarbeiter-vertrag-tree-vertragsstatus-vertragsstatus_bezeichnung" label="Status" flex="2" hidden="false" primary="true"
|
||||
@@ -270,6 +272,31 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
</vbox>
|
||||
<vbox flex="1">
|
||||
<groupbox id='groupbox-vertragsdatum'>
|
||||
<caption label="Vertragsdatum" />
|
||||
<grid align="end" flex="1"
|
||||
flags="dont-build-content"
|
||||
enableColumnDrag="true"
|
||||
style="margin:4px;"
|
||||
>
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="Vertragsdatum" control="mitarbeiter-vertrag-vertragsstatus-textbox-vertragsdatum"/>
|
||||
<hbox>
|
||||
<box class="Datum" id="mitarbeiter-vertrag-vertragsstatus-textbox-vertragsdatum" disabled="true" oninput="alert('test');"/>
|
||||
<button id="mitarbeiter-vertrag-vertragsstatus-datum-speichern" label="Speichern" oncommand="MitarbeiterVertragVertragsstatusUpdate()" />
|
||||
</hbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
</vbox>
|
||||
</hbox>
|
||||
</vbox>
|
||||
|
||||
@@ -38,7 +38,7 @@ class vertrag extends basis_db
|
||||
public $updatevon; // varchar(32)
|
||||
public $ext_id; // bigint
|
||||
public $anmerkung; // text
|
||||
public $vertragsdatu; // date
|
||||
public $vertragsdatum; // date
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
@@ -632,6 +632,58 @@ class vertrag extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Stati eines Vertrags
|
||||
*
|
||||
* @param $vertrag_id
|
||||
* @return boolean
|
||||
*/
|
||||
public function getStatus($vertrag_id, $status=NULL)
|
||||
{
|
||||
$qry="SELECT
|
||||
*
|
||||
FROM
|
||||
lehre.tbl_vertrag_vertragsstatus
|
||||
JOIN lehre.tbl_vertragsstatus USING(vertragsstatus_kurzbz)
|
||||
WHERE
|
||||
tbl_vertrag_vertragsstatus.vertrag_id=".$this->db_add_param($vertrag_id);
|
||||
|
||||
if(!is_null($status))
|
||||
{
|
||||
$qry .= " AND tbl_vertrag_vertragsstatus.vertragsstatus_kurzbz=".$this->db_add_param($status);
|
||||
}
|
||||
|
||||
$qry .= " ORDER BY datum DESC;";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->vertrag_id = $row->vertrag_id;
|
||||
$this->vertragsstatus_kurzbz = $row->vertragsstatus_kurzbz;
|
||||
$this->vertragsstatus_bezeichnung = $row->bezeichnung;
|
||||
$this->datum = $row->datum;
|
||||
$this->uid = $row->uid;
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->insertamum = $row->insertamum;
|
||||
$this->updatevon = $row->updatevon;
|
||||
$this->updateamum = $row->updateamum;
|
||||
$this->new=false;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Eintrag wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function saveVertragsstatus($new=null)
|
||||
{
|
||||
@@ -651,9 +703,15 @@ class vertrag extends basis_db
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Update not implemented';
|
||||
return false;
|
||||
$qry = "UPDATE lehre.tbl_vertrag_vertragsstatus"
|
||||
. " SET updatevon=".$this->db_add_param($this->updatevon).','
|
||||
. " updateamum=".$this->db_add_param($this->updateamum).','
|
||||
. " datum=".$this->db_add_param($this->datum)
|
||||
. " WHERE vertrag_id=".$this->db_add_param($this->vertrag_id)
|
||||
. " AND vertragsstatus_kurzbz=".$this->db_add_param($this->vertragsstatus_kurzbz).";";
|
||||
}
|
||||
|
||||
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
@@ -662,6 +720,7 @@ class vertrag extends basis_db
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der Daten';
|
||||
$this->errormsg = $qry;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
+47
-19
@@ -39,32 +39,60 @@ if(isset($_GET['vertrag_id']))
|
||||
else
|
||||
die('Falsche Parameterübergabe');
|
||||
|
||||
$vertragsstatus_kurzbz = filter_input(INPUT_GET, "vertragsstatus_kurzbz");
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
$vertrag = new vertrag();
|
||||
if(!$vertrag->getAllStatus($vertrag_id))
|
||||
die('Fehlgeschlagen:'.$vertrag->errormsg);
|
||||
|
||||
$oRdf = new rdf('VER','http://www.technikum-wien.at/vertragsstatus');
|
||||
$oRdf->sendHeader();
|
||||
if(is_bool($vertragsstatus_kurzbz) || is_null($vertragsstatus_kurzbz))
|
||||
{
|
||||
if(!$vertrag->getAllStatus($vertrag_id))
|
||||
die('Fehlgeschlagen:'.$vertrag->errormsg);
|
||||
|
||||
foreach($vertrag->result as $row)
|
||||
{
|
||||
$key = $row->vertragsstatus_kurzbz.'/'.$row->vertrag_id;
|
||||
$i=$oRdf->newObjekt($key);
|
||||
$oRdf->obj[$i]->setAttribut('vertrag_id',$row->vertrag_id,true);
|
||||
$oRdf->obj[$i]->setAttribut('vertragsstatus_kurzbz',$row->vertragsstatus_kurzbz,true);
|
||||
$oRdf->obj[$i]->setAttribut('vertragsstatus_bezeichnung',$row->vertragsstatus_bezeichnung,true);
|
||||
$oRdf->obj[$i]->setAttribut('datum',$datum_obj->formatDatum($row->datum,'d.m.Y H:i'),true);
|
||||
$oRdf->obj[$i]->setAttribut('datum_iso',$row->datum,true);
|
||||
$oRdf->obj[$i]->setAttribut('uid',$row->uid,true);
|
||||
$oRdf->obj[$i]->setAttribut('insertvon', $row->insertvon, true);
|
||||
$oRdf->obj[$i]->setAttribut('insertamum', $row->insertamum, true);
|
||||
$oRdf->obj[$i]->setAttribut('updatevon', $row->updatevon, true);
|
||||
$oRdf->obj[$i]->setAttribut('updateamum', $row->updateamum, true);
|
||||
$oRdf = new rdf('VER','http://www.technikum-wien.at/vertragsstatus');
|
||||
$oRdf->sendHeader();
|
||||
|
||||
$oRdf->addSequence($key);
|
||||
foreach($vertrag->result as $row)
|
||||
{
|
||||
$key = $row->vertragsstatus_kurzbz.'/'.$row->vertrag_id;
|
||||
$i=$oRdf->newObjekt($key);
|
||||
$oRdf->obj[$i]->setAttribut('vertrag_id',$row->vertrag_id,true);
|
||||
$oRdf->obj[$i]->setAttribut('vertragsstatus_kurzbz',$row->vertragsstatus_kurzbz,true);
|
||||
$oRdf->obj[$i]->setAttribut('vertragsstatus_bezeichnung',$row->vertragsstatus_bezeichnung,true);
|
||||
$oRdf->obj[$i]->setAttribut('datum',$datum_obj->formatDatum($row->datum,'d.m.Y H:i'),true);
|
||||
$oRdf->obj[$i]->setAttribut('datum_iso',$row->datum,true);
|
||||
$oRdf->obj[$i]->setAttribut('uid',$row->uid,true);
|
||||
$oRdf->obj[$i]->setAttribut('insertvon', $row->insertvon, true);
|
||||
$oRdf->obj[$i]->setAttribut('insertamum', $row->insertamum, true);
|
||||
$oRdf->obj[$i]->setAttribut('updatevon', $row->updatevon, true);
|
||||
$oRdf->obj[$i]->setAttribut('updateamum', $row->updateamum, true);
|
||||
|
||||
$oRdf->addSequence($key);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!$vertrag->getStatus($vertrag_id, $vertragsstatus_kurzbz))
|
||||
die('Fehlgeschlagen:'.$vertrag->errormsg);
|
||||
|
||||
$oRdf = new rdf('VER','http://www.technikum-wien.at/vertragsstatus');
|
||||
$oRdf->sendHeader();
|
||||
|
||||
$key = $vertrag->vertragsstatus_kurzbz.'/'.$vertrag->vertrag_id;
|
||||
$i=$oRdf->newObjekt($key);
|
||||
$oRdf->obj[$i]->setAttribut('vertrag_id',$vertrag->vertrag_id,true);
|
||||
$oRdf->obj[$i]->setAttribut('vertragsstatus_kurzbz',$vertrag->vertragsstatus_kurzbz,true);
|
||||
$oRdf->obj[$i]->setAttribut('vertragsstatus_bezeichnung',$vertrag->vertragsstatus_bezeichnung,true);
|
||||
$oRdf->obj[$i]->setAttribut('datum',$datum_obj->formatDatum($vertrag->datum,'d.m.Y H:i'),true);
|
||||
$oRdf->obj[$i]->setAttribut('datum_iso',$vertrag->datum,true);
|
||||
$oRdf->obj[$i]->setAttribut('uid',$vertrag->uid,true);
|
||||
$oRdf->obj[$i]->setAttribut('insertvon', $vertrag->insertvon, true);
|
||||
$oRdf->obj[$i]->setAttribut('insertamum', $vertrag->insertamum, true);
|
||||
$oRdf->obj[$i]->setAttribut('updatevon', $vertrag->updatevon, true);
|
||||
$oRdf->obj[$i]->setAttribut('updateamum', $vertrag->updateamum, true);
|
||||
|
||||
$oRdf->addSequence($key);
|
||||
}
|
||||
$oRdf->sendRdfText();
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user