Certificates $cfg['custom']['graph']['tenantid'] = '4282fabf-cd8a-477b-8d90-5a3929adb8d2'; $cfg['custom']['graph']['clientid'] = '9a80ec0f-691f-4349-9771-148b0a0c3220'; //$cfg['custom']['graph']['secret'] = 'bfo8Q~E0s41HwdEey8F5NcaxlrhHuNARP1tHpckp'; /// klic ma platnost do 29.01.2025 $cfg['custom']['graph']['secret'] = 'wx88Q~SJAlX~KV-TuNioyYegLR1C3TKh4ra8tb8v'; /// klic ma platnost do 2.4.2028 $cfg['custom']['graph']['default_user'] = 'web.palstat@palstat.cz'; /// prechod na AZURE GRAPH, musi se odesilat pres platneho uzivatele z AD s licenci OFFCIE $cfg['custom']['smtp']['host'] = 'smtp.sendgrid.net'; $cfg['custom']['smtp']['port'] = 587; // pokud je port 456 tak zapnout parametr SSL pokud je 587 tak bez SSL $cfg['custom']['smtp']['user'] = 'azure_39ed07063944d***************'; $cfg['custom']['smtp']['pass'] = 'i1jskiyp'; /// od 2021-02 , zmena v zasade logicky krok, ten username a pass co byl drive tak byl zaroven LOGIN do jejich systemu $cfg['custom']['smtp']['user'] = 'apikey'; $cfg['custom']['smtp']['pass'] = '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'; $cfg['GoogleAds'] = ' '; //$cfg['custom']['smtp']['pass'] = $cfg['custom']['smtp']['user']; //$cfg['custom']['smtp']['ssl'] = false; // true/false /* $cfg['custom']['smtp']['host'] = 'smtp.seznam.cz'; $cfg['custom']['smtp']['port'] = 465; $cfg['custom']['smtp']['user'] = 'apartman692@seznam.cz'; $cfg['custom']['smtp']['pass'] = 'HJs45egvs'; */ $cfg['custom']['analytics']['dir'] = './tmp/customer_analytics/'; //////////////// GENEROVANI PROSPEKTU CZ/EN ////// ///// ADMIN -> STRANKY -> "palstat_caq_prospect" $cfg['prospect']['url']['cz'] = "https://www.palstat.cz/cz/prospekt/"; $cfg['prospect']['tmp']['cz'] = './tmp/prospect.cz.html'; $cfg['prospect']['url']['en'] = "https://www.palstat.cz/en/prospect/"; $cfg['prospect']['tmp']['en'] = './tmp/prospect.en.html'; $cfg['prospect']['day_validity'] = 30; // kolik dnu neni treba prospekt obnovovat ///////////////////// //$cfg['custom']['api']['user'] = 'api.web@palstat.cz'; $cfg['custom']['api']['user'] = 'API.WEB'; $cfg['custom']['api']['pass'] = 'Aghe.jd74f,'; $cfg['custom']['email']['demoserver'] = 'www_demoserver@palstat.onmicrosoft.com'; // kopie email DEMOSERVER $cfg['custom']['email']['upgrade'] = 'www_upgrade@palstat.onmicrosoft.com'; // kopie odeslaneho upgrade $cfg['custom']['email']['newsletter'] = 'www_newsletter@palstat.cz'; // kopie odeslaneho newsletteru $cfg['custom']['email']['purchase_lic'] = 'palstat@palstat.cz'; // kopie objednavka LICENCI $cfg['custom']['email']['licence_download'] = 'www_licence@palstat.onmicrosoft.com'; // kopie do palstat pri odeslani LICence z Intranetu $cfg['custom']['email']['licence_instalace'] = 'www_install@palstat.onmicrosoft.com'; // kopie odeslanehe instalace $cfg['custom']['email']['training_registr'] = 'palstat@jakost.cz'; // upozorneni na novou registraci na skoleni $cfg['custom']['email']['max_file_attach'] = 5000000; // 5000000 = 5MB maximalni velikost prilohy z formulare do emailu $cfg['custom']['collector_cai_separator'] = '–'; // oddelovac ID a nazvu $cfg['custom']['email']['collector_cai'] = 'lukas.havlas@palstat.cz'; // kam zasilat info o probehnuti collectoru ze CAI $cfg['custom']['email']['portal'] = 'www_portal_access@palstat.onmicrosoft.com'; // kam zasilat kopie pozadavku na pristup na PORTAL - pomoc pri ztrate hesla $cfg['custom']['email']['default'] = 'palstat@palstat.cz'; $cfg['custom']['email']['max_per_day'] = 5; // maximalni pocet dotazu za den z portalu $cfg['custom']['email']['pc_status'] = 'www_pc_status@palstat.onmicrosoft.com'; // kam posilat alerty o CRITICAL stavu PC $cfg['custom']['service_validate'] = 28; // pocet dnu po ktere jeste akceptovat prihlaseni na portal nad nastavenou hodnotu //$cfg['custom']['directory']['drivers'] = 'c:/Webs/palstat.cz/update/drivers/'; // kde hledat aktualni DLL driveru //$cfg['custom']['directory']['drivers_download'] = 'c:/Webs/palstat.cz/tmp/download_drivers/'; // kam ukladat balicky se stazenim drivers $cfg['custom']['contact-questions']['cz'] = array( 'none'=>'------ Vyberte ------', 'question0'=>'OBECNÝ DOTAZ - Obchod', 'question3'=>'OBECNÝ DOTAZ - Technický', 'error'=>'PROGRAM - hlásí chybu', 'question2'=>'PROGRAM - dotaz k ovládání', 'update'=>'PROGRAM - nová verze', //'question1'=>'OBCHOD - dotaz', // duplikace s question0 'invoice'=>'OBCHOD - fakturace', 'licence'=>'OBCHOD - licence, nákup a prodloužení', 'training'=>'ŠKOLENÍ - objednat', 'portal'=>'PORTÁL - prístup'); $cfg['custom']['contact-questions']['en'] = array('none'=>'------ Choose ------','question0'=>'GENERAL QUESTION', 'question1'=>'The business question','question2'=>'Question to using of the program','invoice'=>'Invoicing','licence'=>'Licenses, purchase and extension','update'=>'I want new versions','training'=>'I want training','error'=>'The program has an error','portal'=>'Portal access'); /// jake otazky dle predmetu patri k jake sskupine osob, odkazuje na KOD ktery se nastavuje v adminu /// ciselnik OSOB a prvni tri pismena pred jmenem. $cfg['custom']['contact-questions-filter'] = array( 'error'=>'SER', // servis 'update'=>'SER', 'portal'=>'SER', 'question3'=>'SER', 'question2'=>'POR', // skolitele 'question1'=>'MAR', // obchod / marketing 'invoice'=>'MAR', 'licence'=>'MAR', 'training'=>'MAR'); ////// zmeny PALSTAT typy $cfg['chtype'][1]['cz'] = 'Nové'; $cfg['chtype'][1]['en'] = 'New'; $cfg['chtype'][0]['cz'] = 'Zmena'; $cfg['chtype'][0]['en'] = 'Change'; $cfg['chtype'][2]['cz'] = 'Oprava'; $cfg['chtype'][2]['en'] = 'BugFix'; $cfg['chtype'][3]['cz'] = 'Odstraneno'; $cfg['chtype'][3]['en'] = 'Removed'; $cfg['chtype'][4]['cz'] = 'Legislativní'; $cfg['chtype'][4]['en'] = 'Legislative'; //// LICENCE parametry $cfg['lic_par']['web-true']['cz'] = 'Webový'; $cfg['lic_par']['web-true']['en'] = 'Web'; $cfg['lic_par']['web-true-rep']['cz'] = 'Reporting Standard'; $cfg['lic_par']['web-true-rep']['en'] = 'Reporting Standard'; $cfg['lic_par']['insp_only-true']['cz'] = 'Pouze k modulum kontrol'; $cfg['lic_par']['insp_only-true']['en'] = 'Only for control module'; $cfg['lic_par']['cpl-true']['cz'] = 'Kontrolní plány'; $cfg['lic_par']['cpl-true']['en'] = 'Control plan'; $cfg['lic_par']['tpl-true']['cz'] = 'Technologické postupy'; $cfg['lic_par']['tpl-true']['en'] = 'Technologic postupy'; $cfg['lic_par']['light-true']['cz'] = 'Bezplatný, Lite'; $cfg['lic_par']['light-true']['en'] = 'Free, Lite'; $cfg['lic_par']['import-true']['cz'] = 'Import z MS Project'; $cfg['lic_par']['import-true']['en'] = 'Import from MS Project'; $cfg['lic_lng']['cs'] = array('cz'=>'Cesky','en'=>'Czech','flag_img'=>'Czech Republic.png'); $cfg['lic_lng']['en'] = array('cz'=>'Anglicky','en'=>'English','flag_img'=>'United Kingdom(Great Britain).png'); $cfg['lic_lng']['de'] = array('cz'=>'Nemecky','en'=>'German','flag_img'=>'Germany.png'); $cfg['lic_lng']['pl'] = array('cz'=>'Polsky','en'=>'Polish','flag_img'=>'Poland.png'); $cfg['lic_lng']['ru'] = array('cz'=>'Rusky','en'=>'Russian','flag_img'=>'Russian Federation.png'); $cfg['lic_lng']['zh'] = array('cz'=>'Cínsky','en'=>'Chinese','flag_img'=>'China.png'); /// LICENCE LNG pole pro Javascript $i=0; foreach ($cfg['lic_lng'] AS $k=>$v){ $ll .= "lic_lng[$i] = '$k';\n"; $i++; } $cfg['lic_lng_javascript'] = "var lic_lng = new Array();\n$ll"; //// LICENCE CENY $cfg['price_list_ss_discount'] = 20; // kolik procent je sleva pri uzavrene servisni smlouve $cfg['price_list_ss_discount_lng'] = 0; // kolik procent je sleva pri uzavrene servisni smlouve na jazykov0 verze $cfg['price_lng'] = 8000; // cena za jazykovou verzi $cfg['price_list'][0] = array( 'range' => '0-1', 'discount' => 0 ); // zakladni cena 1licence je bez slevy $cfg['price_list'][1] = array( 'range' => '2-10', 'discount' => 60 ); // sleva 60% $cfg['price_list'][2] = array( 'range' => '11-40', 'discount' => 80 ); // sleva 80% $cfg['price_list'][3] = array( 'range' => '41-200', 'discount' => 90 ); // sleva 90% /* kde hledat LICENCE pro zakladani DEMO SERVERU */ //$licence['za'] = 'http://ftp.palstat.cz/servis/www/!demoserver/keys.enc'; //$licence['de'] = 'http://ftp.palstat.cz/servis/www/!demoserver/'.date('Y').'.keys.enc'; $cfg['custom']['licence_demoserver']['customer'] = 'https://ftp.palstat.cz/servis/www/!demoserver/keys.enc'; $cfg['custom']['licence_demoserver']['demo'] = 'https://ftp.palstat.cz/servis/www/!demoserver/'.date('Y').'.keys.enc'; $cfg['custom']['licence_demoserver']['demo_next_year'] = 'https://ftp.palstat.cz/servis/www/!demoserver/'.(date('Y')+1).'.keys.enc'; /* kde hledat LICence pri odeslani nove instalace*/ $cfg['custom']['licence_instalace']['files'][0] = 'https://ftp.palstat.cz/servis/www/!instalace/keys.enc'; $cfg['custom']['licence_instalace']['files'][1] = 'https://ftp.palstat.cz/servis/www/!instalace/licence.enc'; $cfg['custom']['licence_instalace']['files'][2] = 'https://ftp.palstat.cz/servis/www/!instalace/database.pwd'; $cfg['custom']['licence_instalace']['files'][3] = 'https://ftp.palstat.cz/servis/www/!instalace/other.zip'; $cfg['custom']['licence_instalace']['max_size'] = 5000000; // 5MB //// /// logovani $cfg['log']['mailing'] = '../tmp/cron-mailing.txt'; $cfg['download_other']['support_file'] = 'https://ftp.palstat.cz/servis/www/1.www.support.txt'; $cfg['download_other']['manual_extensions'] = 'https://ftp.palstat.cz/servis/www/extensions.xml'; $cfg['download_other']['release_txt'] = 'https://ftp.palstat.cz/servis/www/release.txt'; $cfg['download_other']['release_xml'] = 'https://ftp.palstat.cz/servis/www/release.xml'; $sup_file = 'https://ftp.palstat.cz/servis/www/1.www.support.txt'; $down_manual = 'https://ftp.palstat.cz/servis/www/extensions.xml'; $release1 = 'https://ftp.palstat.cz/servis/www/release.txt'; $release2 = 'https://ftp.palstat.cz/servis/www/release.xml'; /* //// PC_STATUS $pc_status = 'http://ftp.palstat.cz/servis/www/fing.log.xml'; // migrovano do administrace WEB sekce API $pc_status_service = 'http://ftp.palstat.cz/servis/www/fing.log.service.xml'; // migrovano do administrace WEB sekce API $pc_status_ups = 'http://ftp.palstat.cz/servis/www/ups/status-all.txt'; // migrovano do administrace WEB sekce API $pc_status_hyper_host = 'http://ftp.palstat.cz/servis/www/hyper-v/hyper-v-host.txt'; // migrovano do administrace WEB sekce API $pc_status_hyper_vm = 'http://ftp.palstat.cz/servis/www/hyper-v/hyper-v-machines.txt'; // migrovano do administrace WEB sekce API $pc_status_hyper_vm_more = 'http://ftp.palstat.cz/servis/www/hyper-v/hyper-v-machines-more.txt'; // migrovano do administrace WEB sekce API */ $api_url['firm_pc_status_fing']['url'] = 'https://www.palstat.cz/update/monitoring/fing.log.xml'; $api_url['firm_pc_status_fing']['refresh'] = 2; // hodiny - kontrola aktualnosti dat na FTP, po teto konstante vyhodnotit jako neaktualni $api_url['firm_pc_status_fing_service']['url'] = 'https://www.palstat.cz/update/monitoring/fing.log.service.xml'; $api_url['firm_pc_status_fing_service']['refresh'] = 24; // hodiny - kontrola aktualnosti dat na FTP, po teto konstante vyhodnotit jako neaktualni $api_url['firm_ups_status']['url'] = 'https://www.palstat.cz/update/monitoring/ups-status.txt'; $api_url['firm_ups_status']['refresh'] = 1; // hodiny - kontrola aktualnosti dat na FTP, po teto konstante vyhodnotit jako neaktualni $api_url['firm_hyperv_hosts_status']['url'] = 'https://www.palstat.cz/update/monitoring/hyper-v-host.txt'; $api_url['firm_hyperv_hosts_status']['refresh'] = 24; // hodiny - kontrola aktualnosti dat na FTP, po teto konstante vyhodnotit jako neaktualni $api_url['firm_hyperv_machines_more_status']['url'] = 'https://www.palstat.cz/update/monitoring/hyper-v-machines-more.txt'; $api_url['firm_hyperv_machines_more_status']['refresh'] = 24; // hodiny - kontrola aktualnosti dat na FTP, po teto konstante vyhodnotit jako neaktualni $api_url['firm_hyperv_machines_status']['url'] = 'https://www.palstat.cz/update/monitoring/hyper-v-machines.txt'; $api_url['firm_hyperv_machines_status']['refresh'] = 24; // hodiny - kontrola aktualnosti dat na FTP, po teto konstante vyhodnotit jako neaktualni $api_url['firm_clients_more']['url'] = 'https://www.palstat.cz/update/monitoring/clients-more.txt'; $api_url['firm_clients_more']['refresh'] = 24; // hodiny - kontrola aktualnosti dat na FTP, po teto konstante vyhodnotit jako neaktualni /////// TEXTOVE STAVY PRO KONTROLU LICENCE ////////// $cfg['custom']['licence_online_check'] = array ( 'cs' => array( 'LF0'=>'Vychozi stav (pozadavek nebyl vyhodnocen)', 'LT1'=>'Licence je platná.', 'LF1'=>'Licence Expirovala.', 'LF2'=>'Pro požadavek neexistuje LICENCE.', 'IT1'=>'Instalace byla aktivována.', //'IT2'=>'Instalace již byla aktivována dne:', // nakonec se doplni datum 'IT2'=>'Instalace byla aktivována.', // zmena od 01/2020, aby zakazniky nematlo 'IT3'=>'Multi aktivace > pro tuto databázi je aktivace platná.', 'IT4'=>'Multi aktivace > povolen Cluster / Replikace.', 'IF0'=>'ERROR: Výchozi stav.', 'IF1'=>'N/A', 'IF2'=>'Neplatná divize nebo zákazník.', 'IF3'=>'Instalace byla aktivována s jinym ID databáze.', 'IF4'=>'Instalace není aktivovana.', 'IF5'=>'Multi aktivace > Tato kopie systému Palstat není aktivována.', 'IF6'=>'Multi aktivace > Instalace byla aktivována s jinym ID databáze.' ), 'en' => array( 'LF0'=>'Vychozi stav (pozadavek nebyl vyhodnocen)', 'LT1'=>'License is valid.', 'LF1'=>'License expired.', 'LF2'=>'For your request does not exists license.', 'IT1'=>'Installation activated now.', //'IT2'=>'Installation was activated at:', // nakonec se doplni datum 'IT2'=>'Installation activated now.', 'IT3'=>'Multi activation > On this database is installation valid.', 'IT4'=>'Multi activation > Cluster / Replica.', 'IF0'=>'ERROR: Default Status', 'IF1'=>'N/A', 'IF2'=>'Invalid division or custommer ID.', 'IF3'=>'Installation has been activated with different database.', 'IF4'=>'Installation isn\'t activated.', 'IF5'=>'Multi activation > This copy of Palstat CAQ isn\'t activated.', 'IF6'=>'Multi activation > Installation has been activated with different database.' ) ); /* nastavime cookie pro pamatovani uzivatele ve formulariz na interni strance PALSTAT */ if ((!empty($_POST['u_user']) && is_numeric($_POST['u_user'])) || !empty($_POST['data_konzultant']) ) setcookie("SendUser", $_POST['u_user'].$_POST['data_konzultant'],(time()+9999999),"/"); /* // obsolent /// zjistujeme stav sluzby FING na sledovani PC function cus_api_ding_service_state(){ $fing_service_state['date_iso'] = '0000-00-00 00:00:00'; $fing_service_state['code'] = 0; $fing_service_state['text'] = 'unknown'; $fp = @fopen('./update/monitoring/fing.log.xml.service.state.txt','r'); $fing_service_state_data = trim(@fread($fp,1000)); @fclose($fp); if ( strlen($fing_service_state_data) > 10 ){ // mame nejaka data $fing_service_state_data_parse = explode("\n",$fing_service_state_data); unset($fing_service_state); $fing_service_state['date_iso'] = date('Y-m-d H:i:s',strtotime($fing_service_state_data_parse[0])); $fing_service_state['code'] = trim($fing_service_state_data_parse[1]); $fing_service_state['text'] = trim($fing_service_state_data_parse[2]); } return $fing_service_state; } //*/ //// pouzito pod https://www.palstat.cz/api/out_pal_info_channel/ //// odstranuje znaky co se do textu dostavaji pres WORD function cus_data_feed($str){ $return = str_replace('–','-',$str); return $return; } ///// pouzivano pro API procesy, ktere jsou spousteny pres scheduller a mohou byt spusteny i rucne ///// zamek je aktivni po dobu behu procesu function cus_process_lock($lock_name,$action){ global $_PATH; $dir = $_PATH.'./tmp/log/'; $lock_name = $lock_name.'.lck'; $return['status'] = true; $return['text'] = '[I] Zámek procesu ('.$lock_name.') byl AKTIVOVÁN.'; if ( $action == 'create' ){ /// vytvorime zamek if ( file_exists($dir.$lock_name) ){ $return['status'] = false; $return['text'] = '[E] Zámek procesu ('.$lock_name.') je spušten jiný proces, zámek vytvoren: '.date('d.m.Y H:i:s',fileatime($dir.$lock_name)); if ( (fileatime($dir.$lock_name)+(60*120)) $header_email_from, 'address' => $header_email_from); }else{ $mailArgs['replyTo'] = array('name' => 'palstat@palstat.cz', 'address' => 'palstat@palstat.cz'); } $mailArgs['subject'] = iso2utf($predmet); $mailArgs['importance'] = 'normal'; $mailArgs['body'] = iso2utf($text); //$mailArgs['replyTo'] = array('name' => 'Katy', 'address' => 'davidl@palstat.cz'); $mailArgs['toRecipients'][0] = array('name' => '', 'address' => $email); //$mailArgs['toRecipients'][1] = array('name' => 'Someone', 'address' => 'jans@palstat.cz'); if ( !empty($BCC) ){ $mailArgs['ccRecipients'][0] = array('name' => '', 'address' => $BCC); } if ( count($email_attach)>0 ){ // pripojit k emialu prilohy /// detekce zda ma byt priloha ze souboru na konkretni ceste if ( isset($email_attach[0]['path']) ){ foreach($email_attach AS $k=>$v ){ if ( file_exists($email_attach[$k]['path']) ){ //$mail->AddAttachment($email_attach[$k]['path'],$email_attach[$k]['name']); $mailArgs['attachments'][$k] = array('Name' => $email_attach[$k]['name'], 'ContentType' => 'application/image', 'Content' => file_get_contents($email_attach[$k]['path'])); $att_list .= 'EmailAttach Type A / '.$email_attach[$k]['name'].'
'; } } } else if ( isset($email_attach['tmp_name']) && !empty($email_attach['tmp_name']) ) { // pedan jako parametr $_FILES pri odeslani formulare nap5 $_FILES['attach'] a pouze jen jeden soubor //$mail->addStringAttachment($row['photo'], 'YourPhoto.jpg'); // EXAMPLE //$mail->AddAttachment($email_attach['tmp_name'],iso2utf($email_attach['name'])); $mailArgs['attachments'][0] = array('Name' => iso2utf($email_attach['name']), 'ContentType' => 'application/image', 'Content' => file_get_contents($email_attach['tmp_name'])); $att_list .= 'EmailAttach Type B / TMP_NAME: '.$email_attach['tmp_name'].' NAME:'.$email_attach['name'].'
'; } else{ foreach($email_attach AS $k=>$v ){ // pres toto se odesilaji LICence, kdy je licence predana jako String if ( !empty($email_attach[$k]) ){ //$mail->addStringAttachment($email_attach[$k],$k); // klic je nazev souboru $mailArgs['attachments'][] = array('Name' => $k, 'ContentType' => 'application/text', 'Content' => $email_attach[$k]); $att_list .= 'EmailAttach Type C / NAME:'.$k.'
'; } } } // jen pro debug // jde na konec emailu //$text .= '
'.$att_list; } //if($mail->Send()){ $ret = true; }else{ //if ( $graphMailer->sendMail($email, $mailArgs)){ $ret = true; }else{ /// privni parametr je user pod kterym se ma odeslat, user musi byt v AD a v OFFICE365 if ( $graphMailer->sendMail($cfg['custom']['graph']['default_user'], $mailArgs)){ $ret = true; }else{ $ret = false; $ret_error = "AZURE GRAPH\n"; } /* if ($cfg[debug] ){ $ret_error = "email:".$email."\n"; $ret_error .= "Host:".$cfg['custom']['smtp']['host']."\n"; $ret_error .= "Port:".$cfg['custom']['smtp']['port']."\n"; $ret_error .= $mail->ErrorInfo."\n"; $ret_error .= $mail->errorMessage; echo nl2br($ret_error); } */ $fp = @fopen('./tmp/email.smtp.mail.palstat.cz.'.date('Y').'.txt','a+'); //fputs($fp,"\n\n\n-----------------------------".date('d.m.Y H:i:s')."----------------------------------\n"); @fputs($fp,"\n\n\nfunction 'cus_email_pal_azure_graph' ".date('d.m.Y H:i:s')." -- TO: $email -- SUBJECT: $predmet --- ATTLIST: $att_list ".(!empty($ret_error)?"\nMailer Error:\n".$ret_error."\n":'')."------------------------------\n"); @fclose($fp); if ( !empty($f_email) ){ //// pokousime se hledat email v DB zakazniku a priradit pozadavek k firme $sql = "SELECT id_users FROM users_persons WHERE email='$f_email' AND deleted='no' LIMIT 1;"; $id_users = mysql_result(query($sql),0); if ( is_numeric($id_users) ){ $sql = "INSERT INTO special_users_demands (id_users,id_palstat,date,subject,name,email,tel,text,ip,`source`,sender) VALUES ('".$id_users."','',NOW(),'$predmet','$f_name','$f_email','$f_tel','$text','$REMOTE_ADDR','form','".$cfg['sender']."')"; query($sql); } } else if ( !empty($email) ){ // logujeme kazde odeslani kazdeho emailu, pokud je to email v DB /// // pokud se jedna o newsletter tak bez obsahu, pro optimalizaci objemu dat v tabulce //// pokousime se hledat email v DB zakazniku a priradit pozadavek k firme, dle emailu o $sql = "SELECT id_users FROM users_persons WHERE email='$email' AND deleted='no' LIMIT 1;"; $id_users = mysql_result(query($sql),0); if ( is_numeric($id_users) ){ $text = ($cfg['mailing-source']=='newsletter'?'':$text); // pro newsletter neukladat obsah aby se setrila tabulka $text = ($cfg['mailing-source']=='release'?'':$text); // pro release neukladat obsah aby se setrila tabulka $sql = "INSERT INTO special_users_demands (id_users,id_palstat,date,subject,name,email,tel,text,ip,`source`,sender) VALUES ('".$id_users."','',NOW(),'$predmet','$name','$email','$tel','".addslashes($text)."','$REMOTE_ADDR','".$cfg['mailing-source']."','".$cfg['sender']."')"; query($sql); } } return $ret; } /// PARAMETRY u MODULU /// function cus_lic_par($par,$code=""){ global $cfg; foreach ($cfg['lic_par'] AS $k=>$v){ if ( strpos($par,$k) !== false && $code=='RST' ){ $ret .= $cfg['lic_par']['web-true-rep']['cz'].'
'; } else if ( strpos($par,$k) !== false ){ $ret .= $cfg['lic_par'][$k]['cz'].'
'; } } return $ret; } /////// IKONKA MODULU /////// function cus_prg_ico($img="",$bck="",$width=""){ if ( empty($width) ){ $width='30px'; } else if ( !empty($width) && is_numeric($width) ) {$width=$width.'px';} if ( !empty($img) ){// nektere moduly ikonku nemaji return '
'; } } ///// naceneni LICenci ///// ///// vraci cenu za pozadovany nakup LICENCI ///// function cus_lic_price($prg_code,$lic_actual,$lic_buy){ global $lines_counter,$s; //if ( ){ $ret = '
'.(is_numeric($lic_actual)?'-':' ').'
'.(is_numeric($lic_actual)?''.$lic_actual.'':'').'
'.(is_numeric($lic_actual)?'+':' ').'
'; //} return $ret; } /// sledujeme historii sledovanych PC v Palstat function cus_pc_status_hist($PORADI,$STAV,$TXT=""){ global $cfg; $sql = "SELECT id,state,date,UNIX_TIMESTAMP(date) AS ts, DAYOFYEAR(date) AS date_day FROM special_fing_history WHERE id_special_fing='$PORADI' AND date_to IS NULL ORDER BY date DESC LIMIT 1"; $res = query($sql); $id = mysql_result($res,0,'id'); $state = mysql_result($res,0,'state'); $date = mysql_result($res,0,'date'); $date_day = mysql_result($res,0,'date_day'); $ts = mysql_result($res,0,'ts'); $actual_day = (date('z')+1); // PHP 0 - 365 / MYSQL 1-366 //echo "\nUPDATE ".$cfg['tpl_prefix']."pc_status_hist SET date_to=NOW() WHERE id=$id LIMIT 1;"; if ($actual_day != $date_day ){ // kazdy den uzavrit pocty $res=query("REPLACE INTO special_fing_history (id,id_special_fing,date,state,check_count,check_info) VALUES ('','$PORADI',NOW(),'$STAV ',1,'$TXT');"); if ( $id ) query("UPDATE special_fing_history SET date_to=NOW(),date_diff_ts='".(time()-$ts)."',check_count=check_count+1,check_info='$TXT' WHERE id=$id LIMIT 1;"); // do kdy predchozi stav trval } else if ( ( $state == 'down' || $state=="") && $STAV == 'up' ){ $res=query("REPLACE INTO special_fing_history (id,id_special_fing,date,state,check_count,check_info) VALUES ('','$PORADI',NOW(),'up',1,'$TXT');"); if ( $id ) query("UPDATE special_fing_history SET date_to=NOW(),date_diff_ts='".(time()-$ts)."',check_count=check_count+1,check_info='$TXT' WHERE id=$id LIMIT 1;"); // do kdy predchozi stav trval } else if ( ($state == 'up' || $state=="") && $STAV == 'down' ){ $res=query("REPLACE INTO special_fing_history (id,id_special_fing,date,state,check_count,check_info) VALUES ('','$PORADI',NOW(),'down',1,'$TXT');"); if ( $id ) query("UPDATE special_fing_history SET date_to=NOW(),date_diff_ts='".(time()-$ts)."',check_count=check_count+1,check_info='$TXT' WHERE id=$id LIMIT 1;"); // do kdy predchozi stav trval }else{ query("UPDATE special_fing_history SET check_count=check_count+1,check_info='$TXT' WHERE id=$id LIMIT 1;"); } } // END status history function cus_getWmi($str,$ereg){ $e = explode("\r\n",$str); foreach ( $e as $k=>$v ){ $v=trim($v); if ( strpos($v,$ereg) !== false ) { //echo "YES - ".strpos($v,$ereg); $tr = explode($ereg,$v); $tr[1] = trim($tr[1]); //echo $tr[1]; $ret = substr($tr[1],2,strlen($tr[1])); // ostranit ": " break; } } return $ret; } function cus_pc_status_ping($host, $port, $timeout) { $tB = microtime(true); $fP = fSockOpen($host, $port, $errno, $errstr, $timeout); if (!$fP) { return false; } $tA = microtime(true); //return round((($tA - $tB) * 1000), 0)." ms
port:$port
ip:$host
host:".gethostbyaddr($host)."
"; return round((($tA - $tB) * 1000), 0); } function cus_pc_status_ping_icmp($host, $timeout = 1, $verbose = false) { /** * Return vždy vrací False ale pro príchod paketu ECHO_REPLAY * jinak vrací cas odezvy PING. Tento script musí bežet * pod ROOTem, jinak není možné pristupovat k RAW socketu! * @param string hostname or IP address * @param int timeout * @param bool verbose output * @return double */ # vytvorí sítový socket pro RAW zápis, # AF_INET => protokol IPV4 # SOCK_RAW => poskytne možnost manuálne vytvorit libovolnou konstrukci paketu $socket = socket_create(AF_INET, SOCK_RAW, 1); # Nastaví Tmeout a pripojí se k danému "hostu". socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array( 'sec' => $timeout, 'usec' => 0 )); socket_connect($socket, $host, null); # Hlavick ECHO REQUERS v hex \x08 $header = "\x08\x00\x7d\x4b\x00\x00\x00\x00PingHost"; $start = microtime(true); socket_send($socket, $header, strLen($header), 0); if ($result = socket_read($socket, 255)) { // echo $verbose ? substr($result, 0, 1):''; // Je odpoved Echo Replay? (ping odpovedel?) if (substr($result, 0, 1) == "E") { # Verbose? Zobraz víc info echo $verbose ? sprintf('%s bytes from %s time=%s ms', strLen($header), $host, ((100 * (microtime(true) - $start)))) : ''; # Uzavre soket socket_close($socket); # Vrat cas return microtime(true) - $start; } else { //Odpoved prišla, ale né ECHO_REPLAY, tedy napr. DEST UNRECHABLE atp. echo $verbose ? sprintf('ICMP Unrechable %s time=%s ms', $host, ((100 * (microtime(true) - $start)))) : ''; socket_close($socket); return False; } } else { echo $verbose ? sprintf('ICMP Timeout %s time=%s ms', $host, ((100 * (microtime(true) - $start)))) : ''; socket_close($socket); return False; } } //function cus_licence_db_list($id_division,$out_type=""){ function cus_licence_db_list($id_division,$id_users,$user_lng,$out_type=""){ global $cfg,$_SESSION,$_LNG,$_L; if ( empty($out_type) ) $out_type = 'html'; if ( $user_lng == 'en' ) $_LNG='_ln1'; // protoze intranet //if ( is_numeric($id_division) && is_numeric($_SESSION['user_id']) ) { if ( is_numeric($id_division) && is_numeric($id_users) ) { ////// LICENCE ZAKOUPENE ////// $sql = "SELECT l.id_users AS l_id_users,l.pacode,l.paname, l.l_num, l.l_num_record, l.l_valid_to,l.l_valid_from, l.l_attr, l.l_lng ,l.`group`,l.d_index,l.d_name,l.d_default ,DATE_FORMAT(l_valid_to,'%d.%m.%Y') AS val_to, UNIX_TIMESTAMP(l_valid_to) AS ts_to ,s.name".$_LNG." AS sname,s.rewrite".$_LNG." AS rewrite,s.l2,s.info5, s.info6 AS languages ,f.format1 AS prg_ico,s.info4 AS bck_ico ,u.city, u.firm FROM special_users_lic AS l LEFT JOIN users AS u ON u.id=l.id_users LEFT JOIN sekce AS s ON s.info5=l.pacode LEFT JOIN photos AS f ON f.id=s.id_photos WHERE l.id_users='".$id_users."' AND d_index='".$id_division."' ORDER BY d_default DESC, d_index ASC, l.`group`, s.name DESC"; // AND s.info5!='' $res = query($sql); $u_firm = mysql_result($res,0,'firm'); $u_city = mysql_result($res,0,'city'); if ( $out_type == 'txt' ){ $grid_licence.="========================================================================================================\r\n\r\n"; if ( $user_lng == 'en' ){ $grid_licence.="LICENSE CARD for software - PalstatCAQ\r\n"; $grid_licence.="Customer section: https://www.palstat.cz/en/portal-custommers/\r\n"; $grid_licence.="Customer: ".$u_firm." ".$u_city."\r\n"; $grid_licence.="UserID: ".$id_users."\r\n"; $grid_licence.="Division: ".$id_division."\r\n"; $grid_licence.= "\r\n"; $grid_licence.="========================================================================================================\r\n"; $grid_licence.="\t".str_pad('SOFTWARE MODULE',45).''.str_pad('LICENSES',10).''.str_pad('VALIDITY',12); $grid_licence.=str_pad('LANGUAGE',30).''.str_pad('EDITION',50); }else{ $grid_licence.="LICENCNÍ KARTA pro software - PalstatCAQ\r\n"; $grid_licence.="Zákaznická sekce: https://www.palstat.cz/cz/portal-zakaznici/\r\n"; $grid_licence.="Zákazník: ".$u_firm." ".$u_city." \r\n"; $grid_licence.="UzivatelID: ".$id_users."\r\n"; $grid_licence.="Divize: ".$id_division."\r\n"; $grid_licence.= "\r\n"; $grid_licence.="========================================================================================================\r\n"; $grid_licence.="\t".str_pad('SOFTWARE MODUL',45).''.str_pad('LICENCÍ',10).''.str_pad('PLATNOST',12); $grid_licence.=str_pad('JAZYKY',30).''.str_pad('EDICE',50); } $grid_licence.= "\r\n"; $grid_licence.="========================================================================================================\r\n"; } $lines_counter=1; $allow_buy=false; while ( $s=mysql_fetch_array($res) ){ $l_id_users = $s['l_id_users']; $purchased_list[] = "'".$s['info5']."'"; // seznam modulu co jsou koupeny, pouziva se v dalsim dotazu nize pro filtrovani jeste nekoupenych programu $paname=(empty($s['sname'])?$s['paname']:$s['sname']); $s['l_attr']=strtolower($s['l_attr']);$s['l_lng']=strtolower($s['l_lng']); $ln_all = explode(';',$s['languages']); // jazyky dostupne pro modul $ln_buy = explode('<|>',$s['l_lng']); // jazyky zakoupene ////// jen pro firmy s jednou divizí, protože je treba porešit pocítání ceny LICence pro firmy, nekdy je to cena pres všechny divize, nekde pres nejaké ////// toto se nejprve musi systemove poresit v PALSTAT if ( $_SESSION['user_id'] == 6035 && $num['divisions'] == 1 ){ // testovaci firma $allow_buy=true; } ////////////////// LANGUAGE /////////////////// if ( is_array($ln_all) && !empty($s['languages']) ){ foreach ( $ln_all AS $kk=>$vv ){ $opa=';opacity: 0.2'; $title = 'Možno zakoupit jazyk: '.$cfg['lic_lng'][$vv][$_LANG]; $input_value = 0; $style = ';cursor:pointer'; foreach ($ln_buy AS $k=>$v){ $tmp2=explode('-',$v); if ( $tmp2[1] == 'true' && $vv==$tmp2[0] ){ // jake jsou zakoupeny $opa=''; $input_value='purchased'; $style = ''; $title='Zakoupen jazyk: '.$cfg['lic_lng'][$vv][$_LANG]; $tmp['lng_code'] .= $vv.' '; } } //end foreach if ( $allow_buy==true ){ // jen pokud je nakup dovolen tak pridat pozadovane ovladaci prvky $onclick = 'onclick="'."LicenceBuy(".$lines_counter.",'lng','$vv')".'"'; }else{ $style=''; } /* $tmp['lng'] .= ''; $tmp['lng'] .= ''; $tmp['lng'] .= ((is_numeric($input_value) && $allow_buy==true)?'+':''); $tmp['lng'] .= ''; $tmp['lng'] .= "\n"; */ $tmp['lng'] .= '
'; $tmp['lng'] .= ''; $tmp['lng'] .= ((is_numeric($input_value) && $allow_buy==true)?'+':''); $tmp['lng'] .= ''; $tmp['lng'] .= "
\n"; }//end foreach } // end if ////////////////////////////////////////////// if ( !empty($s['rewrite'])){ $tmp['a1']=''; $tmp['a2']=''; } $ready='yes'; if ($s['val_to']!='00.00.0000' && $s['ts_to'] < time()) $ready='no'; $s['l_num'] = ($s['l_num']==0?$_L['c_unlimited']:$s['l_num']); $s['val_to'] = ($s['val_to']=='00.00.0000'?$_L['c_unlimited']:$s['val_to']); if ( $allow_buy == true && strpos($s['l_attr'],'light-true')===false && strpos($s['l_attr'],'insp_only')===false ){ $buy_more=cus_lic_price($s['pacode'],$s['l_num'],1); } if ( $old['group'] != $s['group'] ){ if ( $out_type == 'html' ){ $grid_licence.=' '.$s['group'].''; } else if ( $out_type == 'txt' ){ $grid_licence.="\r\n".'---- '.$s['group'].' ----'."\r\n"; } } if ( $s['pacode'] != '' ){ //$prg_ico = ''.$paname.''; $prg_ico = cus_prg_ico($s['prg_ico'],$s['bck_ico'],28); unset($s['prg_ico']); // aby do sql funkce nelezlo a nevkladal se tam javasdcript if ( $user_lng == 'en' ) $unlimited_license_count = 'unlimited'; if ( $user_lng == 'cz' ) $unlimited_license_count = 'neomezeno'; if ( $out_type == 'html' ){ $grid_licence.=' '.$prg_ico.' '.$tmp['a1'].''.$paname.''.$tmp['a2'].' '.$s['l_num'].' '.($s['l_num_record']>0?$s['l_num_record']:$_L['c_unlimited']).' '.$s['val_to'].' '.$tmp['lng'].' '.cus_lic_par($s['l_attr'],$s['pacode']).' '.($p_right3 == 'ss_adm'?$buy_more:'').' '; } else if ( $out_type == 'txt' ){ $s['l_num'] = (empty($s['l_num'])?$unlimited_license_count:$s['l_num']); $grid_licence.="\t".str_pad($paname,45).''.str_pad($s['l_num'],10).''.str_pad($s['val_to'],12); $grid_licence.=str_pad($tmp['lng_code'],30).''.str_pad(str_replace('
',' ',cus_lic_par($s['l_attr'],$s['pacode'])),50); $grid_licence.= "\r\n"; } } $old['d_index'] = $s['d_index']; $old['group'] = $s['group']; $lines_counter++; unset($tmp,$tmp2,$ln_all); }//end WHILE return iso2utf($grid_licence); } } // konfigurace pro administraci $cfg['admin']['color']['over_line'] = '#edd8dd'; $cfg['admin']['color']['even'] = '#dff8df'; // barva sudých řádků $cfg['admin']['color']['ready_line'] = '#d2d2d2'; // radku ktere nejsou aktivni $cfg['admin']['color']['active_line'] = '#098909';//radek v seznamu co je prave editovan $cfg['admin']['background_color'] = '#E6FFE6'; // pozadi v adminu v tabulkach pouziva se pro pozadi v grafech // konfigurace OVERLINE v klientske casti $cfg['client']['color']['over_line'] = '#dbedfa'; $cfg['client']['color']['even'] = ''; // barva sudých řádků $cfg['client']['color']['ready_line'] = 'silver'; // radku ktere nejsou aktivni $cfg['client']['color']['active_line'] = '#098909';//radek v seznamu co je prave editovan $cfg['client']['background_color'] = '#E6FFE6'; // pozadi v adminu v tabulkach pouziva se pro pozadi v grafech $_COOKIE_LAW = ' '; /* Go UP ON PAGE */ $_UP_ON_PAGE = '
     
'; /*   */ //////////////////////// HEUREKA //////////////////////////////// ///////////////////////////////////////////////////////////////// $_HEUREKA['name'] = array ( 'roll_right'=>'Vyjíždějící statistiky vpravo', 'roll_left'=>'Vyjíždějící statistiky vlevo', 'ban1'=>'Malá pečeť', 'ban2'=>'Střední pečeť', 'ban3'=>'Velkou pečeť', 'ban11'=>'Statistiky', 'ban12'=>'Hodnocení' ); $_HEUREKA['roll_left'] = ' '; $_HEUREKA['roll_left_preview'] = '
'; $_HEUREKA['roll_right'] = ' '; $_HEUREKA['roll_right_preview'] = '
'; $_HEUREKA['ban1'] = '
'; $_HEUREKA['ban2'] = '
'; $_HEUREKA['ban3'] = '
'; $_HEUREKA['ban11'] = '
'; $_HEUREKA['ban12'] = '
'; /*********************** END HEUREKA ***************************/ ?>
Odeslání emailu zavřít
Zadejte emailovou adresu osoby, které chcete zaslat e-mail.
E-mail adresáta:
Váš e-mail:
Váš komentář:
'; //*/ $button_ac = 'overlay_win(400,200,\'overlay_share_email\',\''.$email_text.'\');'; $html = ' '; } $ret = $html.''; return $ret; } /* function overlay_watchdog($email_text="",$width=""){ global $_MAIN_URL,$_SERVER_NAME,$_SESSION,$cfg; //yt.www.watch.sharing.logService('FACEBOOK', 'Qqv6MmZ2G7Y', 'cs_CZ'); //yt.window.popup('http:\/\/www.facebook.com\/sharer.php?u=http%3A\/\/www.youtube.com\/watch%3Fv%3DQqv6MmZ2G7Y&t=National%20Guard%20Success%20Story%3A%20SGT%20Madeline%20Ishmael', {height:440, width:620, scrollbars:true});;return false; $GLOBALS['overlay_content'] = ' '; $button_ac = 'overlay_win(400,200);'; $html = ' '; } // $ret = $html.''; // return $ret; } */ ?>