Initial xentral_oss_20.3.c9ffacf
This commit is contained in:
@@ -0,0 +1,144 @@
|
||||
<?php
|
||||
/*
|
||||
**** COPYRIGHT & LICENSE NOTICE *** DO NOT REMOVE ****
|
||||
*
|
||||
* Xentral (c) Xentral ERP Sorftware GmbH, Fuggerstrasse 11, D-86150 Augsburg, * Germany 2019
|
||||
*
|
||||
* This file is licensed under the Embedded Projects General Public License *Version 3.1.
|
||||
*
|
||||
* You should have received a copy of this license from your vendor and/or *along with this file; If not, please visit www.wawision.de/Lizenzhinweis
|
||||
* to obtain the text of the corresponding license version.
|
||||
*
|
||||
**** END OF COPYRIGHT & LICENSE NOTICE *** DO NOT REMOVE ****
|
||||
*/
|
||||
?>
|
||||
<?php
|
||||
|
||||
|
||||
/// special layer for webapplications
|
||||
class phpWFAPI
|
||||
{
|
||||
function __construct(&$app)
|
||||
{
|
||||
$this->app=&$app;
|
||||
}
|
||||
|
||||
function ReBuildPageFrame()
|
||||
{
|
||||
$this->app->Tpl->ResetParser();
|
||||
$this->BuildPageFrame();
|
||||
}
|
||||
|
||||
|
||||
function BuildPageFrame()
|
||||
{
|
||||
$this->app->Tpl->ReadTemplatesFromPath(__DIR__."/../defaulttemplates/");
|
||||
|
||||
// build template tree
|
||||
$this->app->Page->LoadTheme($this->app->WFconf['defaulttheme']);
|
||||
|
||||
if($this->app->User->GetType()=="")
|
||||
$this->app->Page->CreateNavigation($this->app->WFconf['menu'][$this->app->WFconf['defaultgroup']]);
|
||||
else
|
||||
$this->app->Page->CreateNavigation($this->app->WFconf['menu'][$this->app->User->GetType()]);
|
||||
|
||||
// start acutally application instance
|
||||
$this->app->Tpl->ReadTemplatesFromPath("pages/content/_gen");
|
||||
$this->app->Tpl->ReadTemplatesFromPath("pages/content/");
|
||||
}
|
||||
|
||||
|
||||
function StartRequestedCommand()
|
||||
{
|
||||
$defaultpage = $this->app->WFconf['defaultpage'];
|
||||
$defaultpageaction = $this->app->WFconf['defaultpageaction'];
|
||||
|
||||
$module = $this->app->Secure->GetGET('module','alpha');
|
||||
$action = $this->app->Secure->GetGET('action','alpha');
|
||||
|
||||
if(!file_exists("pages/".$module.".php"))
|
||||
$module = $defaultpage;
|
||||
|
||||
if($action=="")
|
||||
$action = $defaultpageaction;
|
||||
|
||||
if(!$this->app->acl->Check($this->app->User->GetType(),$module,$action))
|
||||
return;
|
||||
|
||||
|
||||
// start module
|
||||
if(file_exists("pages/".$module.".php"))
|
||||
{
|
||||
include("pages/".$module.".php");
|
||||
//create dynamical an object
|
||||
$constr=strtoupper($module[0]).substr($module, 1);
|
||||
$myApp = new $constr($this->app);
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $this->app->WFM->Error("Module <b>$module</b> doesn't exists in pages/");
|
||||
|
||||
}
|
||||
$this->app->acl->CheckTimeOut();
|
||||
}
|
||||
|
||||
/// mit dem "erstellen Formular" einfach bearbeiten liste + formular anzeigen
|
||||
function EasyTableList($tablename,$cols,$parsetarget,$pkname,$delmsg,$delmsgcol)
|
||||
{
|
||||
// show list
|
||||
|
||||
// create html table
|
||||
$table = new HTMLTable("0","100%");
|
||||
$table->AddRowAsHeading($cols);
|
||||
|
||||
$all = $this->app->DB->SelectTable($tablename,$cols);
|
||||
|
||||
$table->AddField($all);
|
||||
|
||||
$action = $this->app->Secure->GetGET("action","alpha");
|
||||
$module = $this->app->Secure->GetGET("module","alpha");
|
||||
|
||||
$table->AddCompleteCol(0,
|
||||
"<a href=\"index.php?module=$module&action=$action&id=%col%\">bearbeiten</a>");
|
||||
|
||||
$table->AddCompleteCol(0,
|
||||
"<a href=\"#\" onclick=\"str = confirm('{$delmsg}');
|
||||
if(str!='' & str!=null)
|
||||
window.document.location.href='index.php?module=$module&action=$action&id=%col%&formaction=delete';\">
|
||||
loeschen</a>",$delmsgcol);
|
||||
|
||||
$table->ChangingRowColors('#ffffff','#dddddd');
|
||||
|
||||
$this->app->Tpl->Set($parsetarget,$table->Get());
|
||||
}
|
||||
|
||||
function Message($msg,$parsetarget='MSGBOX')
|
||||
{
|
||||
$this->app->Tpl->Add('MSGBOXTEXT',$msg);
|
||||
$this->app->Tpl->Parse($parsetarget,"messagebox.tpl");
|
||||
}
|
||||
// emailvorlage aus db senden
|
||||
|
||||
function EmailFromTemplate($template,$to,$values)
|
||||
{
|
||||
$betreff = $this->app->DB->Select("SELECT betreff
|
||||
FROM emailvorlagen WHERE name='$template' LIMIT 1");
|
||||
|
||||
$nachricht = $this->app->DB->Select("SELECT nachricht
|
||||
FROM emailvorlagen WHERE name='$template' LIMIT 1");
|
||||
|
||||
if(count($values) > 0)
|
||||
{
|
||||
foreach($values as $key=>$value)
|
||||
{
|
||||
$nachricht = str_replace("%".$key."%",$value,$nachricht);
|
||||
$betreff = str_replace("%".$key."%",$value,$betreff);
|
||||
}
|
||||
}
|
||||
|
||||
$nachricht = str_replace('#BR#',"\n",$nachricht);
|
||||
mail($to,$betreff,$nachricht,"From: ActConnect Team <info@actconnect.de>");
|
||||
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user