Exemplo n.º 1
0
Henry Margies <*****@*****.**>
Holger Lindemann <*****@*****.**>
*/
function ende($txt)
{
    echo "Abbruch: {$txt}<br>";
    exit(1);
}
if (!$_SESSION["db"]) {
    $conffile = "../config/authentication.pl";
    if (!is_file($conffile)) {
        ende("authentication.pl nicht gefunden oder kein Leserecht.");
    }
}
require "import_lib.php";
if (!anmelden()) {
    ende("Anmeldung fehlgeschlagen.");
}
/* get DB instance */
$db = $_SESSION["db"];
//new myDB($login);
/* just display page or do real import? */
if ($_POST["ok"]) {
    require "parts_import.php";
    /* display help */
    if ($_POST["ok"] == "Hilfe") {
        echo "Importfelder:<br>";
        echo "Feldname => Bedeutung<br>";
        foreach ($parts as $key => $val) {
            echo "{$key} => {$val}<br>";
        }
Exemplo n.º 2
0
						<label for="inputBenutzer" class="sr-only">Benutzername</label>
						<input type="text" id="inputBenutzer" class="form-control" placeholder="Benutzername" name="inputBenutzer" required autofocus>
						<label for="inputPassword" class="sr-only">Passwort</label>
						<input type="password" id="inputPassword" class="form-control" placeholder="Passwort" name="inputPassword"  required>
						<br>
						<button class="btn btn-lg btn-primary btn-block" type="submit" name="anmelden" value="anmelden" style="font-size: 21px;font-weight: 200;">Anmelden</button>
					</form>
				</div>
			</div>
		</div>
		
		<?php 
if (!empty($_POST['anmelden'])) {
    $inputBenutzer = htmlentities(strip_tags($_POST['inputBenutzer']));
    $inputPassword = htmlentities(strip_tags($_POST['inputPassword']));
    anmelden($inputBenutzer, $inputPassword);
}
?>
		
		<br><br><br>
		
		<div style="position:relative; margin-right: 30%; margin-left: 30%; width: 500px;" class="col-sm-4">
			<div class="panel panel-default">
				<div class="panel-heading">
					<h3 class="panel-title" style="font-size: 21px;font-weight: 200;"><center>Registrieren</center></h3>
				</div>
				<div class="panel-body">
					<form class="form-signin" method="POST">
						<label for="inputVorname" class="sr-only">Vorname</label>
						<input type="text" id="inputVorname" class="form-control" name="inputVorname" placeholder="Vorname" required autofocus>
						<label for="inputNachname" class="sr-only">Nachname</label>
Exemplo n.º 3
0
    $_SESSION['ERPNAME'] = $_POST["erpname"];
    $_SESSION['erpConfigFile'] = $_POST['erpConfigFile'];
}
// Beim Setzen von crmpath muss zwingend darauf geachtet werden, dass man sich nicht in einem Unterverzeichnis befindet.
// Bem.: Da am Ende des von getcwd() zurück gegeben Strings kein Slash steht funktioniert dirname() hier.
// aus /root/kivitendo/inc wird /root/kivitendo
if (empty($_SESSION['crmpath'])) {
    $_SESSION['crmpath'] = substr(getcwd(), -3) == "inc" || substr(getcwd(), -6) == "jqhelp" || substr(getcwd(), -6) == "lxcars" || substr(getcwd(), -5) == "crmti" ? dirname(getcwd()) : getcwd();
}
$conffile = $_SESSION['crmpath'] . "/../" . $_SESSION['ERPNAME'] . "/config/" . $_SESSION['erpConfigFile'] . ".conf";
//$conf = array('ERPNAME','erpConfigFile');
//while( list($key,$val) = each($_SESSION) ) {
//    if ( ! in_array($key,$conf) ) unset($_SESSION[$key]);
//};
if (is_file($conffile)) {
    $tmp = anmelden();
    $crm_exist = $_SESSION['db']->getOne("SELECT count(*) FROM information_schema.tables WHERE table_name = 'crm'");
    if ($tmp) {
        //SQL-Fehler vermeiden wenn crm noch nicht existiert (neue DB), besser wäre es die Tabelle crm zuerst erstellen ToDo!
        $crm_exist = $_SESSION['db']->getOne("SELECT count(*) FROM information_schema.tables WHERE table_name = 'crm'");
        if ((bool) $crm_exist['count']) {
            $rs = $_SESSION['db']->getOne('SELECT * FROM crm ORDER BY version DESC LIMIT 1');
        }
        $dbver = $rs['version'];
        // Existiert crm nicht so kann auch ein Fehler-Objekt zurückgegeben werden
        if (is_object($rs) || !$rs || $dbver == "" || $dbver == false) {
            echo "CRM-Tabellen sind nicht (vollst&auml;ndig) installiert";
            flush();
            require "install.php";
            require "inc/update_neu.php";
            echo "<b>Richten Sie nun zun&auml;chst den [<a href='mandant.php'>Mandenten</a>] in der CRM ein,<br>";
Exemplo n.º 4
0
function makeMenu($sess, $token)
{
    if (!function_exists('curl_init')) {
        die('Curl (php5-curl) ist nicht installiert!');
    }
    if (!isset($_SESSION['ERP_BASE_URL']) || $_SESSION['ERP_BASE_URL'] == '') {
        $BaseUrl = empty($_SERVER['HTTPS']) ? 'http://' : 'https://';
        $BaseUrl .= $_SERVER['HTTP_HOST'];
        $BaseUrl .= preg_replace("^crm/.*^", "", $_SERVER['REQUEST_URI']);
    } else {
        $BaseUrl = $_SESSION['ERP_BASE_URL'];
    }
    $_SESSION['baseurl'] = $BaseUrl;
    $Url = $BaseUrl . 'controller.pl?action=Layout/empty&format=json';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $Url);
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate');
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Connection: keep-alive", "Cookie: " . $_SESSION["cookie"] . "=" . $sess . "; " . $_SESSION["cookie"] . "_api_token=" . $token));
    if (curl_errno($ch)) {
        echo 'Curl error: ' . curl_error($ch);
    }
    $result = curl_exec($ch);
    curl_close($ch);
    $objResult = json_decode($result);
    if (!is_object($objResult)) {
        anmelden();
    }
    $_arr = get_object_vars($objResult);
    $rs['javascripts'] = '';
    $rs['stylesheets'] = '';
    $rs['pre_content'] = '';
    $rs['start_content'] = '';
    $rs['end_content'] = '';
    if ($objResult) {
        foreach ($objResult->{'javascripts'} as $js) {
            if (preg_match('/jquery/', $js)) {
                continue;
            }
            $rs['javascripts'] .= '<script type="text/javascript" src="' . $BaseUrl . $js . '"></script>' . "\n" . '   ';
        }
        $rs['javascripts'] .= '<script type="text/javascript">';
        $suche = '^,"([/a-zA-Z_0-9]+)\\.(pl|php)^';
        $ersetze = ',"' . $BaseUrl . '${1}.${2}';
        foreach ($objResult->{'javascripts_inline'} as $js) {
            $js = preg_replace($suche, $ersetze, $js);
            $rs['javascripts'] .= $js;
            //'<script type="text/javascript" src="'.$BaseUrl.$js.'"></script>'."\n".'   ';
        }
        $rs['javascripts'] .= '</script>' . "\n";
        foreach ($objResult->{'stylesheets'} as $style) {
            if ($style) {
                $rs['stylesheets'] .= '<link rel="stylesheet" href="' . $BaseUrl . $style . '" type="text/css">' . "\n" . '   ';
            }
        }
        foreach ($objResult->{'stylesheets_inline'} as $style) {
            if ($style) {
                $rs['stylesheets'] .= '<link rel="stylesheet" href="' . $BaseUrl . $style . '" type="text/css">' . "\n" . '   ';
            }
        }
        $suche = '^([/a-zA-Z_0-9]+)\\.(pl|php)^';
        $ersetze = $BaseUrl . '${1}.${2}';
        $tmp = preg_replace($suche, $ersetze, $objResult->{'pre_content'});
        $tmp = str_replace('itemIcon="', 'itemIcon="' . $BaseUrl, $tmp);
        $rs['pre_content'] = str_replace('src="', 'src="' . $BaseUrl, $tmp);
        $rs['start_content'] = $objResult->{'start_content'};
        $rs['end_content'] = $objResult->{'end_content'};
    }
    return $rs;
}
Exemplo n.º 5
0
function makeMenu($sess, $token)
{
    if (!function_exists('curl_init')) {
        die('Curl (php5-curl) ist nicht installiert!');
    }
    if (!isset($_SESSION['ERP_BASE_URL']) || $_SESSION['ERP_BASE_URL'] == '') {
        $BaseUrl = empty($_SERVER['HTTPS']) ? 'http://' : 'https://';
        $BaseUrl .= $_SERVER['HTTP_HOST'];
        $BaseUrl .= preg_replace("^crm/.*^", "", $_SERVER['REQUEST_URI']);
    } else {
        $BaseUrl = $_SESSION['ERP_BASE_URL'];
    }
    $_SESSION['baseurl'] = $BaseUrl;
    $Url = $BaseUrl . 'controller.pl?action=Layout/empty&format=json';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $Url);
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 1);
    curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate');
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Connection: keep-alive", "Cookie: " . $_SESSION["cookie"] . "=" . $sess . "; " . $_SESSION["cookie"] . "_api_token=" . $token));
    $result = curl_exec($ch);
    if ($result === false || curl_errno($ch)) {
        die('Curl-Error: ' . curl_error($ch) . ' </br> $ERP_BASE_URL in "inc/conf.php" richtig gesetzt??');
    }
    curl_close($ch);
    $objResult = json_decode($result);
    if (!is_object($objResult)) {
        anmelden();
    }
    $_arr = get_object_vars($objResult);
    $rs['javascripts'] = '';
    $rs['stylesheets'] = '';
    $rs['pre_content'] = '';
    $rs['start_content'] = '';
    $rs['end_content'] = '';
    if ($objResult) {
        //echo "<pre>";
        //print_r($objResult->{'javascripts'});
        //echo "</pre";
        foreach ($objResult->{'javascripts'} as $js) {
            //<script type="text/javascript" src="http://localhost/kivitendo-dev/crm/jquery/jquery-ui.min.js"></script>
            //jQuery und UI der ERP benützen
            //$rs['javascripts'] .= '<script type="text/javascript" src="'.$BaseUrl.$js.'"></script>'."\n".'   ';
            //Da die ERP eine veraltete JUI benützt, aktuelle JUI aus CRM laden
            //ToDo: JUI aus ERP laden wenn diese >= Version 11.4 wird
            //Achtung!: JUI wird von der ERP nur geliefert wenn fast alle Module aktiviert sind (Menü)
            if (strpos($js, "jquery-ui") === false) {
                $rs['javascripts'] .= '<script type="text/javascript" src="' . $BaseUrl . $js . '"></script>' . "\n" . '   ';
            }
            $rs['javascripts'] .= '<script type="text/javascript" src="' . $BaseUrl . 'crm/jquery/jquery-ui.min.js"></script>' . "\n" . '   ';
        }
        foreach ($objResult->{'stylesheets'} as $style) {
            if ($style) {
                $rs['stylesheets'] .= '<link rel="stylesheet" href="' . $BaseUrl . $style . '" type="text/css">' . "\n" . '   ';
            }
        }
        foreach ($objResult->{'stylesheets_inline'} as $style) {
            if ($style) {
                $rs['stylesheets'] .= '<link rel="stylesheet" href="' . $BaseUrl . $style . '" type="text/css">' . "\n" . '   ';
            }
        }
        $suche = '^([/a-zA-Z_0-9]+)\\.(pl|php|phtml)^';
        $ersetze = $BaseUrl . '${1}.${2}';
        $tmp = preg_replace($suche, $ersetze, $objResult->{'pre_content'});
        $tmp = str_replace('itemIcon="', 'itemIcon="' . $BaseUrl, $tmp);
        $rs['pre_content'] = str_replace('src="', 'src="' . $BaseUrl, $tmp);
        $rs['start_content'] = $objResult->{'start_content'};
        $rs['start_content_ui'] = '<div class="ui-widget-content">';
        //Begin UI-Look
        $rs['end_content'] = $objResult->{'end_content'};
        $rs['end_content'] .= '<script type="text/javascript">';
        //Inline-JS der ERP in den Footer (nach end_content)
        foreach ($objResult->{'javascripts_inline'} as $js) {
            $js = preg_replace($suche, $ersetze, $js);
            $rs['end_content'] .= $js;
            //'<script type="text/javascript" src="'.$BaseUrl.$js.'"></script>'."\n".'   ';
        }
        $rs['end_content'] .= '</script>' . "\n";
        $rs['end_content_ui'] = '</div>';
        //End UI-Look
    }
    return $rs;
}