<?php
#$GLOBALS['web'] = Db::p('extras')==='0' ? true : false;
-if (empty($DIR_SQLITE) or !file_exists('/opt/www/sem_ui/var/db/semantico.db')) return;
+if (empty($DIR_SQLITE)) return;
+#if (empty($DIR_SQLITE) or !file_exists('/opt/www/sem_ui/var/db/semantico.db')) return;
$GLOBALS['web'] = true;
if (Db::p('noextra')==='1') $GLOBALS['web'] = false;
'order' => (preg_match('/^(dev|isp|ist)/',php_uname('n')) ? 1 : null),
#'order' => 1,
];
+return;
$DBQ['ui-pgsql'] = [
'host' => 'ui.semantico.net',
'type' => 'pgsql',
Template
-----------------------------------------------------------------*/
public function rows_begin_template($fields,&$o) {
- if (empty($id) and !( $id=self::p('table.template.id') ) ) self::bye('Wrong parameter!');
+ $id = self::templateid();
$id = preg_replace('/[^\w\._-]/','',$id);
$file = TABLE_TEMPLATE.'/'.$id.'.php';
if (!is_readable($file)) return false; #self::bye("Wrong id `$id`");
- $o['file'] = $file;
- $HEAD = array_keys($fields);
- $ROWS = [];
- $ROW = [];
- require $o['file'];
+# NB 02.12.16 $o['file'] = $file;
+ $this->__file = $file;
+ $this->__fields = array_keys($fields);
+# NB 02.12.16 $HEAD = array_keys($fields);
+# NB 02.12.16 $ROWS = [];
+# NB 02.12.16 $ROW = [];
+# NB 02.12.16 require $o['file'];
}
public function rows_rec_template($row,&$o) {
- $HEAD = [];
- $ROWS = [$row];
- $ROW = $row;
- require $o['file'];
+ $i = 0;
+ foreach ($row as $k=>$v) {
+ $row[$i] = $v;
+ $i++;
+ }
+ $this->__rows[] = $row;
+# NB 02.12.16 $HEAD = [];
+# NB 02.12.16 $ROWS = [$row];
+# NB 02.12.16 $ROW = $row;
}
public function rows_end_template() {
+ $HEAD = &$this->__fields;
+ $ROWS = &$this->__rows;
+ $ROW = &$ROWS[0];;
+ require $this->__file;
unset($this->__file);
unset($this->__fields);
+ unset($this->__rows);
}
/*-----------------------------------------------------------------
return $this->status;
}
- public function template($id=null) {
+ private static function templateid($id=null) {
if (empty($id)
and !( $id=self::p('table.template.id') )
and !( $id=self::p('idtemplate') )
) self::bye('Wrong parameter!');
+ return $id;
+ }
+
+ public function template($id=null) {
+ $id = self::templateid($id);
$id = preg_replace('/[^\w\._-]/','',$id);
--- /dev/null
+<?php
+# NB 02.12.16: Nginx LB
+if (!isset($ROWS)) continue;
+$lb = [];
+foreach ($ROWS as $r) {
+ $lb[$r[0]][] = $r[1];
+ $name = $r[0];
+ $server = $r[1];
+ continue;
+ foreach ([
+ 'hostname',
+ 'host',
+ 'name',
+ 'id',
+ ] as $k) {
+ if (!isset($r[$k])) continue;
+ break;
+ }
+}
+foreach ($lb as $name => $servers) {
+ echo "upstream $name {\n";
+ foreach ($servers as $server) {
+ echo " server $server;\n";
+ }
+ echo "}\n";
+}