Example #1
0
function get_confs_cached($db_name = null, $table_name = null, $force_update = false)
{
    FORCE_CONF_UPDATE && ($force_update = true);
    $key = $db_name . '|config|' . $table_name;
    $key_valid = $db_name . '|config.valid|' . $table_name;
    $mem = api_open_mmc();
    if ($force_update === false) {
        //如果还有效,直接获取返回
        if ($is_valid = $mem->get($key_valid)) {
            if ($result = $mem->get($key)) {
                return $result;
            }
            //如果已经失效
        } else {
            //看看旧的在否?有则先设置标记,让其他人先获取
            if ($result = $mem->get($key)) {
                $mem->set($key_valid, 'true', GET_CONF_EXPIRE);
                sync_job('get_confs', [$db_name, $table_name]);
                return $result;
            }
        }
    }
    $result = get_confs($db_name, $table_name, '名称');
    $config = $result['push-settings'];
    $popup_confs = make_popup_list($config);
    $replace_confs = make_replace_list($config);
    $confs = ['popup' => $popup_confs, 'replace' => $replace_confs];
    $confs = fields_mapper($confs);
    $confs['system'] = get_system_confs();
    $mem->set($key, $confs);
    $mem->set($key_valid, 'true', GET_CONF_EXPIRE);
    return $confs;
}
Example #2
0
function update_loader_js()
{
    $settings = get_settings();
    $posi_list = get_positions();
    $accnt_ident_list = $settings['accounts'];
    $kword_ident_list = array_merge($settings['carts'], $settings['favorites'], $settings['interests']);
    $submt_ident_list = $settings['searchs'];
    $conf_arr = [];
    $conf_arr['posi_configs'] = makeconf_posi($posi_list);
    $conf_arr['accnt_ident_configs'] = makeconf_default($accnt_ident_list);
    $conf_arr['kword_ident_configs'] = makeconf_default($kword_ident_list);
    $conf_arr['submt_ident_configs'] = makeconf_default($submt_ident_list);
    $system = get_system_confs();
    append_configs($conf_arr, $system);
}