import os
import veb
import config
enum Lang {
en
ru
es
jp
cn
pt
}
const tr_menu_en = ''
const tr_menu_ru = ''
const tr_menu_es = ''
const tr_menu_jp = ''
const tr_menu_cn = ''
const tr_menu_pt = ''
fn get_port(conf config.Config) int {
// Priority: -p flag > GITLY_PORT env > config.json port > 8080
for i, arg in os.args {
if (arg == '-p' || arg == '--port') && i + 1 < os.args.len {
return os.args[i + 1].int()
}
}
env_port := os.getenv_opt('GITLY_PORT') or { '' }
if env_port != '' {
return env_port.int()
}
if conf.port > 0 {
return conf.port
}
return 8080
}
fn main() {
if os.args.contains('ci_run') {
return
}
mut app := new_app()!
app.use(handler: app.before_request)
app.port = get_port(app.config)
veb.run_at[App, Context](mut app,
port: app.port
family: .ip
timeout_in_seconds: 5
) or { panic(err) }
}
fn build_tr_menu(cur_lang Lang) string {
return match cur_lang {
.ru { tr_menu_ru }
.en { tr_menu_en }
.es { tr_menu_es }
.jp { tr_menu_jp }
.cn { tr_menu_cn }
.pt { tr_menu_pt }
}
}