comparison msitegen.inc.php @ 479:86ee2b42a995

Move CLI helper functions to msitegen, again.
author Matti Hamalainen <ccr@tnsp.org>
date Sat, 07 Dec 2013 10:40:22 +0200
parents 4ce10edceedf
children adc788e7b5f4
comparison
equal deleted inserted replaced
478:8dde27202989 479:86ee2b42a995
674 foreach (func_get_args() as $argn => $argv) 674 foreach (func_get_args() as $argn => $argv)
675 $str = preg_replace("/\%".$argn."/", $argv, $str); 675 $str = preg_replace("/\%".$argn."/", $argv, $str);
676 return $str; 676 return $str;
677 } 677 }
678 678
679
680 //
681 // CLI related helper functions
682 //
683
684 // Check if we are running from commandline or not
685 function stCheckCLIExec($fail = TRUE)
686 {
687 if (php_sapi_name() != "cli" || !empty($_SERVER["REMOTE_ADDR"]))
688 {
689 if ($fail)
690 {
691 header("Status: 404 Not Found");
692 die();
693 }
694 else
695 return TRUE;
696 }
697 else
698 return FALSE;
699 }
700
701
702 function stCArg($index)
703 {
704 global $argc, $argv;
705 if ($index < $argc)
706 return $argv[$index];
707 else
708 return FALSE;
709 }
710
711
712 function stCArgLC($index)
713 {
714 global $argc, $argv;
715 if ($index < $argc)
716 return strtolower($argv[$index]);
717 else
718 return FALSE;
719 }
720
721
722 function stCSQLError($sql)
723 {
724 global $db;
725 die("Error executing SQL query: ".implode("; ", $db->errorInfo())." in statement \"".$sql."\"\n");
726 exit;
727 }
728
729
730 function stCLIConnectSQLDB($dbspec)
731 {
732 global $db;
733 try {
734 $db = new PDO($dbspec);
735 }
736 catch (PDOException $e) {
737 error_log("Could not connect to SQL database '".$dbspec."': ".$e->getMessage().".");
738 return FALSE;
739 }
740 return TRUE;
741 }
742
743
744 function stGetDBMeta($name)
745 {
746 global $db;
747
748 if (($item = stFetchSQL("SELECT * FROM dbmeta WHERE key=".$db->quote($name))) === FALSE)
749 return FALSE;
750
751 return stGetSQLSettingData($item);
752 }
753
754
755 function stSetDBMeta($name, $value)
756 {
757 global $db;
758
759 if (($item = stFetchSQL("SELECT * FROM dbmeta WHERE key=".$db->quote($name))) === FALSE)
760 return FALSE;
761
762 $sql = "UPDATE dbmeta SET ".stGetSettingSQL($item, $value)." WHERE key=".$db->quote($name);
763 return stExecSQL($sql);
764 }
765
766
767
679 ?> 768 ?>