Example #1
0
function save_contents($outputs, $output_file, $contents)
{
    $tmp_file = $output_file . '.tmp';
    file_put_contents($tmp_file, $contents);
    copy_files($outputs, $tmp_file, $output_file);
    echo "Saving to <b>{$output_file}.</b></br></br>\n\n";
    unlink($tmp_file);
}
/**
 * The main function of the script.
 */
function main()
{
    global $db, $claspages, $pages, $thissite, $claspages_to_sites_slugs, $pages_to_sites_slugs;
    create_sites();
    store_blogs_information();
    store_users_information();
    populate_main_site_tables();
    populate_main_blog_tables();
    populate_plugin_site_tables();
    populate_plugin_blog_tables();
    find_and_replace();
    copy_files();
    disconnect_sites();
}
Example #3
0
 function index()
 {
     if (!IS_POST) {
         $this->display('index.html');
     } else {
         $seller_name = empty($_POST['seller']) ? '' : trim($_POST['seller']);
         $buyer_name = empty($_POST['buyer']) ? '' : trim($_POST['buyer']);
         if (!$seller_name || !$buyer_name) {
             $this->show_message('请填写卖家用户名和买家用户名');
             return;
         }
         /* 检查用户名 */
         $ms =& ms();
         if (!$ms->user->check_username($seller_name)) {
             $error_msg = array('user_exists' => '卖家用户名已存在,请您换一个', 'invalid_user_name' => '卖家用户名不符合要求,请您换一个', 'blocked_user_name' => '卖家用户名不符合要求,请您换一个', 'unknow_error' => '卖家用户名不符合要求,请您换一个');
             $error = $ms->user->get_error();
             $this->show_message($error_msg[$error[0]['msg']]);
             return;
         }
         if (!$ms->user->check_username($buyer_name)) {
             $error_msg = array('user_exists' => '买家用户名已存在,请您换一个', 'invalid_user_name' => '买家用户名不符合要求,请您换一个', 'blocked_user_name' => '买家用户名不符合要求,请您换一个', 'unknow_error' => '买家用户名不符合要求,请您换一个');
             $error = $ms->user->get_error();
             $this->show_message($error_msg[$error[0]['msg']]);
             return;
         }
         /* 注册用户 */
         $this->_seller_id = $ms->user->register($seller_name, '123456', '*****@*****.**', array('real_name' => '超级卖家'));
         $this->_buyer_id = $ms->user->register($buyer_name, '123456', '*****@*****.**', array('real_name' => '超级买家'));
         /* 复制文件 */
         copy_files(APP_ROOT . '/data', ROOT_PATH . '/data');
         /* 运行sql */
         $mod =& m('privilege');
         $sqls = get_sql(APP_ROOT . '/initdata.sql');
         foreach ($sqls as $sql) {
             $sql = str_replace('{seller_id}', $this->_seller_id, $sql);
             $sql = str_replace('{buyer_id}', $this->_buyer_id, $sql);
             $mod->db->query($sql);
         }
         /* 清除缓存 */
         $cache_server =& cache_server();
         $cache_server->clear();
         /* 锁定文件 */
         touch(LOCK_FILE);
         /* 运行成功 */
         $this->show_message('恭喜!测试数据安装成功!');
     }
 }
Example #4
0
/**
 * 其它设置
 *
 * @access  public
 * @param   string      $system_lang            系统语言
 * @param   string      $disable_captcha        是否开启验证码
 * @param   array       $goods_types            预选商品类型
 * @param   string      $install_demo           是否安装测试数据
 * @param   string      $integrate_code         用户接口
 * @return  boolean     成功返回true,失败返回false
 */
function do_others($system_lang, $captcha, $goods_types, $install_demo, $integrate_code)
{
    global $err, $_LANG;

    /* 安装预选商品类型 */
    if (!install_goods_types($goods_types, $system_lang))
    {
        $err->add(implode('', $err->last_message()));
        return false;
    }

    /* 安装测试数据 */
    if (intval($install_demo))
    {
        if (file_exists(ROOT_PATH . 'demo/'. $system_lang . '.sql'))
        {
            $sql_files = array(ROOT_PATH . 'demo/'. $system_lang . '.sql');
        }
        else
        {
            $sql_files = array(ROOT_PATH . 'demo/zh_cn.sql');
        }
        if (!install_data($sql_files))
        {
            $err->add(implode('', $err->last_message()));
            return false;
        }
        if (!copy_files(ROOT_PATH . 'demo/brandlogo/', ROOT_PATH . 'data/brandlogo/'))
        {
            $err->add(implode('', $err->last_message()));
            return false;
        }
        if (!copy_files(ROOT_PATH . 'demo/200905/goods_img/', ROOT_PATH . 'images/200905/goods_img/'))
        {
            $err->add(implode('', $err->last_message()));
            return false;
        }
        if (!copy_files(ROOT_PATH . 'demo/200905/thumb_img/', ROOT_PATH . 'images/200905/thumb_img/'))
        {
            $err->add(implode('', $err->last_message()));
            return false;
        }
        if (!copy_files(ROOT_PATH . 'demo/200905/source_img/', ROOT_PATH . 'images/200905/source_img/'))
        {
            $err->add(implode('', $err->last_message()));
            return false;
        }
        if (!copy_files(ROOT_PATH . 'demo/afficheimg/', ROOT_PATH . 'data/afficheimg/'))
        {
            $err->add(implode('', $err->last_message()));
            return false;
        }
        if (!copy_files(ROOT_PATH . 'demo/packimg/', ROOT_PATH . 'data/packimg/'))
        {
            $err->add(implode('', $err->last_message()));
            return false;
        }
        if (!copy_files(ROOT_PATH . 'demo/cardimg/', ROOT_PATH . 'data/cardimg/'))
        {
            $err->add(implode('', $err->last_message()));
            return false;
        }
    }

    include(ROOT_PATH . 'data/config.php');
    include_once(ROOT_PATH . 'includes/cls_mysql.php');
    $db = new cls_mysql($db_host, $db_user, $db_pass, $db_name);

    /* 更新 ECSHOP 语言 */
    $sql = "UPDATE $prefix"."shop_config SET value='" . $system_lang . "' WHERE code='lang'";
    if (!$db->query($sql, 'SILENT'))
    {
        $err->add($db->errno() .' '. $db->error());
        return false;
    }

    /* 更新用户接口 */
    if (!empty($integrate_code))
    {
        $sql = "UPDATE $prefix"."shop_config SET value='" . $integrate_code . "' WHERE code='integrate_code'";
        if (!$db->query($sql, 'SILENT'))
        {
            $err->add($db->errno() .' '. $db->error());
            return false;
        }
    }

    /* 处理验证码 */
    if (!empty($captcha))
    {
        $sql = "UPDATE $prefix" . "shop_config SET value = '12' WHERE code = 'captcha'";
        if (!$db->query($sql, 'SILENT'))
        {
            $err->add($db->errno() .' '. $db->error());
            return false;
        }
    }

    /* 更新用户接口配置 */
    if (file_exists(ROOT_PATH .'data/config_temp.php'))
    {
        include(ROOT_PATH .'data/config_temp.php');
        $sql = "UPDATE $prefix" . "shop_config SET value = '".serialize($cfg)."' WHERE code = 'integrate_config'";
        if (!$db->query($sql, 'SILENT'))
        {
            $err->add($db->errno() .' '. $db->error());
            return false;
        }
    }

    return true;
}
Example #5
0
                echo "cannot copy: {$from_file} to {$to_file}!\n";
                continue;
            } else {
                echo "\tcreate {$to_file}\n";
            }
        }
    }
}
$app_name = isset($argv[1]) ? $argv[1] : exit("No Application Location Specified.\n");
$x = explode(DIRECTORY_SEPARATOR, $app_name);
$short_name = end($x);
$app_location = getcwd() . DIRECTORY_SEPARATOR . $app_name;
echo "Creating application: {$short_name}\n";
echo "Location: {$app_location}\n\n";
mk_dir($app_location);
$folders = array('app' => 'app', 'models' => 'app' . DIRECTORY_SEPARATOR . 'models', 'controllers' => 'app' . DIRECTORY_SEPARATOR . 'controllers', 'helpers' => 'app' . DIRECTORY_SEPARATOR . 'helpers', 'views' => 'app' . DIRECTORY_SEPARATOR . 'views', 'layouts' => 'app' . DIRECTORY_SEPARATOR . 'views' . DIRECTORY_SEPARATOR . 'layouts', 'conf' => 'conf', 'scripts' => 'scripts', 'db' => 'db', 'libs' => 'libs', 'doc' => 'doc', 'log' => 'log', 'public' => 'public', 'js' => 'public' . DIRECTORY_SEPARATOR . 'javascript', 'css' => 'public' . DIRECTORY_SEPARATOR . 'stylesheet', 'img' => 'public' . DIRECTORY_SEPARATOR . 'images');
foreach ($folders as $folder) {
    mk_dir($app_location . DIRECTORY_SEPARATOR . $folder);
}
copy_files($medick_core . DIRECTORY_SEPARATOR . 'skel' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'javascript' . DIRECTORY_SEPARATOR, $app_location . DIRECTORY_SEPARATOR . $folders['js']);
$files = array('skel' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'index.php' => 'public' . DIRECTORY_SEPARATOR . 'index.php', 'skel' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'default.htaccess' => 'public' . DIRECTORY_SEPARATOR . '.htaccess', 'skel' . DIRECTORY_SEPARATOR . 'scripts' . DIRECTORY_SEPARATOR . 'generator.php' => 'scripts' . DIRECTORY_SEPARATOR . 'generator.php', 'skel' . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'application.xml' => 'conf' . DIRECTORY_SEPARATOR . $short_name . '.xml', 'skel' . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'database.ini' => 'conf' . DIRECTORY_SEPARATOR . 'database.ini', 'skel' . DIRECTORY_SEPARATOR . 'db' . DIRECTORY_SEPARATOR . 'schema.sql' => 'db' . DIRECTORY_SEPARATOR . 'schema.sql', 'skel' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'index.html' => 'public' . DIRECTORY_SEPARATOR . 'index.html', 'skel' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'stylesheet' . DIRECTORY_SEPARATOR . 'medick.css' => 'public' . DIRECTORY_SEPARATOR . 'stylesheet' . DIRECTORY_SEPARATOR . $short_name . '.css', 'skel' . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'app_controller.php' => 'app' . DIRECTORY_SEPARATOR . 'controllers' . DIRECTORY_SEPARATOR . 'application.php', 'skel' . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'application.routes.php' => 'conf' . DIRECTORY_SEPARATOR . $short_name . '.routes.php');
$search = array('${medick.core}', '${app.path}', '${app.name}', '${ds}', '${medick.version}', '${date}');
$replace = array($medick_core, $app_location, $short_name, DIRECTORY_SEPARATOR, $medick_version, date('Y M d H:i:s'));
foreach ($files as $from => $file) {
    $contents = str_replace($search, $replace, file_get_contents($medick_core . DIRECTORY_SEPARATOR . $from));
    list($to, $orig) = explode(DIRECTORY_SEPARATOR, $file, 2);
    write_file($contents, $app_location . DIRECTORY_SEPARATOR . $folders[$to] . DIRECTORY_SEPARATOR . $orig);
}
// plain file
write_file(' ', $app_location . DIRECTORY_SEPARATOR . $folders['log'] . DIRECTORY_SEPARATOR . $short_name . '.log', 0777);
echo "\nMedick (\$v: {$medick_version}) [ DONE ].\n";
Example #6
0
     if (!copy_files(ROOT_PATH . 'demo/200905/goods_img/', ROOT_PATH . 'images/200905/goods_img/')) {
         die(implode(',', $err->last_message()));
     }
     if (!copy_files(ROOT_PATH . 'demo/200905/thumb_img/', ROOT_PATH . 'images/200905/thumb_img/')) {
         die(implode(',', $err->last_message()));
     }
     if (!copy_files(ROOT_PATH . 'demo/200905/source_img/', ROOT_PATH . 'images/200905/source_img/')) {
         die(implode(',', $err->last_message()));
     }
     if (!copy_files(ROOT_PATH . 'demo/afficheimg/', ROOT_PATH . 'data/afficheimg/')) {
         die(implode(',', $err->last_message()));
     }
     if (!copy_files(ROOT_PATH . 'demo/packimg/', ROOT_PATH . 'data/packimg/')) {
         die(implode(',', $err->last_message()));
     }
     if (!copy_files(ROOT_PATH . 'demo/cardimg/', ROOT_PATH . 'data/cardimg/')) {
         die(implode(',', $err->last_message()));
     }
     $result = array('msg' => 'OK', 'cur_ver' => $cur_ver, 'needup_ver_list' => $needup_ver_list);
     echo $json->encode($result);
     break;
     /* 获得某个SQL文件的SQL语句数 */
 /* 获得某个SQL文件的SQL语句数 */
 case 'get_record_number':
     include_once ROOT_PATH . 'includes/cls_json.php';
     $json = new JSON();
     $next_ver = isset($_REQUEST['next_ver']) ? $_REQUEST['next_ver'] : '';
     $type = isset($_REQUEST['type']) ? $_REQUEST['type'] : '';
     if ($next_ver === '' || $type === '') {
         die('EMPTY');
     }
Example #7
0
    /**
     * 复制文件
     * @return  成功返回true,失败返回错误信息
     */
    function process_file()
    {
        /* 复制品牌图片 */
        $from = $this->sroot . '/syssite/home/shop/1/pictures/brandimg/';
        $to   = $this->troot . '/data/brandlogo/';
        copy_files($from, $to);

        /* 复制 html 编辑器的图片 */
        $from = $this->sroot . '/syssite/home/shop/1/pictures/newsimg/';
        $to   = $this->troot . '/images/upload/Image/';
        copy_files($from, $to);

        /* 复制商品图片 */
        $to   = $this->troot . '/images/' . date('Ym') . '/';

        $from = $this->sroot . '/syssite/home/shop/1/pictures/productsimg/big/';
        copy_files($from, $to, 'big_');

        $from = $this->sroot . '/syssite/home/shop/1/pictures/productsimg/small/';
        copy_files($from, $to, 'small_');

        $from = $this->sroot . '/syssite/home/shop/1/pictures/productsimg/big/';
        copy_files($from, $to, 'original_');

        /* 复制友情链接图片 */
        $from = $this->sroot . '/syssite/home/shop/1/pictures/linkimg/';
        $to   = $this->troot . '/data/afficheimg/';
        copy_files($from, $to);

        /* 复制证书 */
        $from = $this->sroot . '/cert/';
        $to   = $this->troot . '/cert/';
        copy_files($from, $to);

        return TRUE;
    }
Example #8
0
/**
 * Copy directories
 *
 * @param string $dir
 * @param array  &$errorLog
 * @param bool   $createDest
 *
 * @return bool|void
 */
function copy_directories($dir, &$errorLog, $createDest = true)
{
    // Ensure the destination directory exists
    $exists = file_exists(MAUTIC_ROOT . $dir);
    if ($createDest && !$exists) {
        mkdir(MAUTIC_ROOT . $dir, 0755, true);
    } elseif (!$exists) {
        $errorLog[] = sprintf('%s does not exist.', MAUTIC_ROOT . $dir);
        return false;
    }
    // Copy root level files first
    copy_files($dir, $errorLog);
    $iterator = new DirectoryIterator(MAUTIC_UPGRADE_ROOT . $dir);
    /** @var DirectoryIterator $directory */
    foreach ($iterator as $directory) {
        // Sanity checks
        if (!$directory->isDot() && $directory->isDir()) {
            $src = $directory->getPath() . '/' . $directory->getFilename();
            $dest = str_replace(MAUTIC_UPGRADE_ROOT, MAUTIC_ROOT, $src);
            $result = copy_directory($src, $dest);
            if ($result !== true) {
                if (is_array($result)) {
                    $errorLog += $result;
                } else {
                    $errorLog[] = $result;
                }
            }
            $deleteDir = recursive_remove_directory($src);
            if (!$deleteDir) {
                $errorLog[] = sprintf('Failed to remove the upgrade directory %s folder', str_replace(MAUTIC_UPGRADE_ROOT, '', $src));
            }
        }
    }
}
Example #9
0
/**
 * Function to copy directory tree from skins_original to skins
 *
 * @param string $source_dir      Source directory name
 * @param string $parent_dir      Parent directory name
 * @param string $destination_dir Destination directory name
 *
 * @return bool
 */
function copy_files($source_dir, $parent_dir, $destination_dir, &$failedList)
{
    $result = true;
    $dir_permission = 0777;
    if (constant('LC_SUPHP_MODE') != 0) {
        $data = parse_config();
        $dir_permission = isset($data['privileged_permission_dir']) ? base_convert($data['privileged_permission_dir'], 8, 10) : 0711;
    }
    if ($handle = @opendir(constant('LC_DIR_ROOT') . $source_dir)) {
        while (($file = readdir($handle)) !== false) {
            $sourceFile = constant('LC_DIR_ROOT') . $source_dir . '/' . $file;
            $destinationFile = constant('LC_DIR_ROOT') . $destination_dir . '/' . $parent_dir . '/' . $file;
            // .htaccess files must be already presented in the destination directory and they should't have writable permissions for web server user
            if (@is_file($sourceFile) && $file != '.htaccess') {
                if (!@copy($sourceFile, $destinationFile)) {
                    echo xtr('Copying: [:source_dir:parent_dir/:file] to [:destination_dir:parent_dir/:file]... ', array(':source_dir' => $source_dir, ':parent_dir' => $parent_dir, ':file' => $file, ':destination_dir' => $destination_dir)) . status(false) . "<BR>\n";
                    $result = false;
                    $failedList[] = sprintf('copy(%s, %s)', $sourceFile, $destinationFile);
                }
                flush();
            } elseif (@is_dir($sourceFile) && $file != '.' && $file != '..') {
                echo xtr('Creating directory: [:destination_dir:parent_dir/:file]... ', array(':destination_dir' => $destination_dir, ':parent_dir' => $parent_dir, ':file' => $file));
                if (!@file_exists($destinationFile)) {
                    if (!@mkdir($destinationFile, $dir_permission)) {
                        echo status(false);
                        $result = false;
                        $failedList[] = sprintf('mkdir(%s)', $destinationFile);
                    } else {
                        echo status(true);
                    }
                } else {
                    echo '<span class="status-already-exists">' . xtr('Already exists') . '</span>';
                }
                echo "<br />\n";
                flush();
                $result &= copy_files($source_dir . '/' . $file, $parent_dir . '/' . $file, $destination_dir, $failedList);
            }
        }
        closedir($handle);
    } else {
        echo status(false) . "<br />\n";
        $result = false;
        $failedList[] = sprintf('opendir(%s)', constant('LC_DIR_ROOT') . $source_dir);
    }
    return $result;
}
Example #10
0
        if (is_file($library . $lib)) {
            $lib_files[] = $library . $lib;
            $all_files[] = $library . $lib;
        } else {
            echo '<b>File not found ' . $library . $lib . '</b>';
        }
    }
    $output_file = $output_dir . $filename;
    echo '<pre>';
    if (count($lib_files) > 0) {
        $compressor = str_replace(array('OUTPUT', 'INPUTS'), array($output_file, implode(' ', $lib_files)), $script_builder);
        $command = str_replace('/', '\\', $compressor);
        system($command);
        echo $command;
        post_process($output_file);
        copy_files($additional_outputs, $output_file, $filename);
    }
    echo '</pre>';
}
//do docs
/*echo '<pre>';
$docs = str_replace('INPUTS', implode(' ', $all_files),  $doc_builder);
$command = str_replace('/','\\', $docs);
system($command);
echo '</pre>';
*/
//*** post processing, ESC does strange things to try{} catch{} finally{} blocks, and a few others.
function post_process($file)
{
    $contents = file_get_contents($file);
    $contents = str_replace('};catch{', '}catch{', $contents);
Example #11
0
function file_query($file)
{
    $src = "/storage/hurricanearchive/SouthernOralHist_USM";
    $src1 = "/storage/hurricanearchive/SouthernOralHist_USM/Transcripts";
    $q = "INSERT INTO katrina_update.omeka_files (";
    foreach ($file as $k => $v) {
        $q .= $k . ",";
    }
    $q .= ") VALUES (";
    foreach ($file as $k => $v) {
        if ($k != 'added') {
            $q .= "'" . $v . "',";
        }
    }
    $q .= "CURRENT_TIMESTAMP,CURRENT_TIMESTAMP";
    $q .= ")";
    $ext = array_reverse(explode('.', $file['archive_filename']));
    if ($ext[0] == 'mp3' | $ext[0] == 'MP3') {
        copy_files($src, '', $file);
    } else {
        copy_files($src1, '', $file);
    }
    return $q;
}
Example #12
0
/**
 * Build output
 *
 * @param $path_src
 * @param $path_out
 */
function build($path_src, $path_out, $is_fast = false)
{
    $template_file = $path_src . '/template.html';
    $index_file = $path_out . '/index.html';
    $dirs = array('/css', '/js', '/files', '/fonts');
    foreach ($dirs as $dir) {
        copy_files($path_src . $dir, $path_out . $dir);
    }
    create_dir("{$path_out}/session");
    if (!$is_fast) {
        create_session_files("{$path_out}/session");
    }
    create_dir("{$path_out}/audio");
    create_dir("{$path_out}/images/thumbs");
    copy_file($path_src, $path_out, 'images/background.png');
    $template = file_get_contents($template_file);
    $html = preg_replace_callback('/\\{\\{([^}]+)\\}\\}/', "template_callback", $template);
    file_put_contents($index_file, $html);
}
Example #13
0
    // copy('root.txt', $projDir.'php\cbm\root.txt');
    copy('index.php', $projDir . 'scripts\\cbm\\index.php');
    copy('inflector.php', $projDir . 'scripts\\cbm\\inflector.php');
    copy('php_utils.php', $projDir . 'scripts\\cbm\\php_utils.php');
    copy('cpp.php', $projDir . 'scripts\\cbm\\cpp.php');
    copy('thrift.php', $projDir . 'scripts\\cbm\\thrift.php');
    copy('sql.php', $projDir . 'scripts\\cbm\\sql.php');
    //将thrift接口文件复制到cbm项目
    copy('cbm.thrift', $projDir . 'thrift\\cbm.thrift');
    // copy('ctrl.thrift', $projDir.'thrift\ctrl.thrift');
    copy('SQLServerHelper.py', $projDir . 'thrift\\SQLServerHelper.py');
    copy('SQLClientHelper.py', $projDir . 'thrift\\SQLClientHelper.py');
    copy('CbmRtti.py', $projDir . 'thrift\\CbmRtti.py');
    copy('SQLClientHelper.h', $projDir . 'thrift\\SQLClientHelper.h');
    copy('SQLClientHelper.cpp', $projDir . 'thrift\\SQLClientHelper.cpp');
    copy('SQLClientHelper.php', $projDir . 'thrift\\SQLClientHelper.php');
}
//生成
$tables = build_cbm_tables();
//建立表关系映射
$relations = build_cbm_relations($tables);
//生成Entity.h和Entity.cpp文件
make_cpp_files($tables, $relations);
//生成cbm.thrift
make_thrift_files($tables, $relations);
merge_thrift_files();
//生成cbm_data.sql文件
// make_sql_files();
//复制文件到cbm/php目录下
copy_files();