Added default storage to vessel and some other fixes
This commit is contained in:
+36
-1
@@ -128,6 +128,7 @@ $g_doc_mimetypes = ['image/png', 'image/jpeg', 'image/svg+xml', 'application/pdf
|
||||
// form option lists
|
||||
$g_opt_all = array(-2 => _('― all ―'));
|
||||
$g_opt_none = array(-1 => _('― none ―'));
|
||||
$g_opt_empty = array('' => _('― none ―'));
|
||||
$g_opt_unknown = array(-1 => _('― unknown ―'));
|
||||
|
||||
// Initialize message system
|
||||
@@ -392,6 +393,7 @@ function db_exec_insert($table, $params) {
|
||||
$g_error->Add('SQL-Error: '. $e->getMessage());
|
||||
$g_error->Add($sql);
|
||||
$g_error->Add(print_r($params, true));
|
||||
return false;
|
||||
}
|
||||
return $pdo->LastInsertId();
|
||||
}
|
||||
@@ -772,7 +774,6 @@ function db_get_opt_vessel() {
|
||||
return $list;
|
||||
}
|
||||
|
||||
|
||||
function db_get_opt_storage($vid) {
|
||||
global $pdo;
|
||||
global $g_error;
|
||||
@@ -927,6 +928,40 @@ function db_get_filter($user, $sno, $fields = []) {
|
||||
return $flt;
|
||||
}
|
||||
|
||||
function db_get_default_storage($vesselid, $fallback=true) {
|
||||
global $pdo;
|
||||
global $g_error, $g_warning;
|
||||
$sql = "SELECT sid_default FROM vessel WHERE vid=?";
|
||||
$sth = $pdo->prepare($sql);
|
||||
try {
|
||||
$sth->execute([$vesselid]);
|
||||
} catch(PDOException $e) {
|
||||
$g_error->Add($e->getMessage());
|
||||
return false;
|
||||
}
|
||||
$sid = $sth->fetchColumn();
|
||||
if ($sid == NULL && $fallback) {
|
||||
// try to get another storage as last fallback
|
||||
$g_warning->Add(_('No default storage defined for current vessel'));
|
||||
$sql = "SELECT MIN(sid), sname FROM storage WHERE vid=?";
|
||||
$sth = $pdo->prepare($sql);
|
||||
try {
|
||||
$sth->execute([$vesselid]);
|
||||
} catch(PDOException $e) {
|
||||
$g_error->Add($e->getMessage());
|
||||
return false;
|
||||
}
|
||||
$row = $sth->fetch(PDO::FETCH_NUM);
|
||||
if ($row[0] == NULL) {
|
||||
$g_error->Add('Error: No storage defined for current vessel');
|
||||
return false;
|
||||
}
|
||||
$sid = $row[0];
|
||||
$g_warning->Add(sprintf(_("Selected fallback storage '%s'"), $row[1]));
|
||||
}
|
||||
return $sid;
|
||||
}
|
||||
|
||||
function date_to_sql($var) {
|
||||
if (!isset($var) || $var == '') {
|
||||
return NULL;
|
||||
|
||||
Reference in New Issue
Block a user