Index: /branches/testa-single-bookmark/php/content3.php
===================================================================
--- /branches/testa-single-bookmark/php/content3.php	(revision 62)
+++ /branches/testa-single-bookmark/php/content3.php	(revision 63)
@@ -86,17 +86,19 @@
     $cmd_line = implode(" " , $cmd_line_items);
 
-    $array = array();
-    $handle = popen( $cmd_line , "r");
-    while (( $buffer = fgets($handle, 4096)) !== false){
-        $line = trim($buffer);
-        $data = explode($top_path,  $line)[1];
-        array_push($array , $data);
-    }
-    if (!feof($handle)) {
-	    echo "Error: unexpected fgets() fail\n";
-    }
-    pclose($handle);
+    exec($cmd_line, $results, $ret_code);
     
-    return array( "top_path" => $top_path, "file_list" => $array);
+    if( $ret_code === 0 ){
+        $array = array();
+        foreach($results as $buffer){
+            $line = trim($buffer);
+            $data = explode($top_path,  $line)[1];
+            array_push($array , $data);
+        }
+        $array_x = array( "top_path" => $top_path, "file_list" => $array);
+   }
+    else{
+        $array_x = array( );
+    }
+    return $array_x;
 }
 
@@ -138,5 +140,4 @@
     mkdir($dir);
     $path = implode( "/" , array( $dir , $filename) );
-#    echo "path=$path";
     ensure_dir( $dir );
 
@@ -159,6 +160,4 @@
     $list = get_site_tsv( $num );
 
-    debug_vd( $list );
-
     $t = $list[$base]["t"];
     $s = $list[$base]["s"];
@@ -174,24 +173,18 @@
     $cmd_line = implode(" " , $cmd_line_items);
 
-    $array = array();
-    $handle = popen( $cmd_line , "r");
-
-    while (( $buffer = fgets($handle, 4096)) !== false){
-        $line = trim($buffer);
-        array_push($array , $line);
-    }
-    if (!feof($handle)) {
-	    echo "Error: unexpected fgets() fail\n";
-    }
-    pclose($handle);
-
-    $full_download_url = implode( "/" , array( $output_url , $output_html ) );
-
-    $html_fname_tmp = $output_html  . ".tmp";
-    $partial_download_url = implode( "/" , array( $output_url , $html_fname_tmp) );
-
-    $info = array( "full_download_url" => $full_download_url,
+    
+    exec($cmd_line, $results, $ret_code);
+    if( $ret_code === 0 ){
+        $full_download_url = implode( "/" , array( $output_url , $output_html ) );
+
+        $html_fname_tmp = $output_html  . ".tmp";
+        $partial_download_url = implode( "/" , array( $output_url , $html_fname_tmp) );
+
+        $info = array( "full_download_url" => $full_download_url,
                    "partial_download_url" => $partial_download_url );
-
+    }
+    else{
+        $info = array();
+    }
     return $info;
 }
@@ -269,5 +262,5 @@
                     }
                     else{
-                        output_file( dirname(__FILE__) . "/debug-F.txt" , "ABCDEFG" );
+#                        output_file( dirname(__FILE__) . "/debug-F.txt" , "ABCDEFG" );
                         $ret = "P-UPLOAD_CONTENT-NO-PATH";
                     }
@@ -290,5 +283,5 @@
                     
                 default:
-                    debug_x("P-DEFAULT");
+#                    debug_x("P-DEFAULT");
                     /* $content = "P-DEFAULT";*/
                     break;
@@ -302,5 +295,5 @@
     }
     else{
-        debug_x('DEFAULT');
+#        debug_x('DEFAULT');
     }
 
@@ -428,5 +421,17 @@
 }
 
+function do_exec(){
+    $cmd = "ls -l /z";
+
+    exec($cmd, $opt, $ret);
+
+#    print_r($opt);
+#    echo "ret=" . $ret . "\n";
+}
+
 cmdx();
+/*
+do_exec();
+*/
 /*
 $num = 0;
Index: anches/testa-single-bookmark/php/x.php
===================================================================
--- /branches/testa-single-bookmark/php/x.php	(revision 62)
+++ 	(revision )
@@ -1,446 +1,0 @@
-#ini_set('display_errors', 0);
-#int error_reporting ([ int $レベル ] )
-#error_reporting ( ~E_ALL );
-#error_reporting ( ~E_ERROR );
-
-$settings_yml_path = "/../settings-devconf.yml";
-
-header("Access-Control-Allow-Origin: *");
-#namespace ns;
-
-require_once( dirname(__FILE__) . '/func.php');
-require_once( dirname(__FILE__) . '/NorthernCross/ns/PathItem.php');
-require_once( dirname(__FILE__) . '/NorthernCross/ns/PathInfo.php');
-require_once( dirname(__FILE__) . "/spyc-0.5/spyc.php"); // ★の部分にはspyc.phpを置いたパスを入れます
-
-$exec_path = dirname(__FILE__) . "/..";
-
-function get_url_data_array()
-{
-    global $settings_yml_path;
-
-    $yaml= spyc_load_file( dirname(__FILE__) . $settings_yml_path);// ☆の部分にはyamlファイルがあるパスを入れます
-    return $yaml;
-}
-
-function get_url_data_array0()
-{
-	$array = array(
-        array('url' => 'https://toppers.jp', 'path' =>	'/var/www/vhosts/devconf.northern-cross.info/httpdocs/a/tmp/devconf-guest-4/tmp/md2site-x/_xtest/wtjx/t12/src') );
-
-	return $array;
-}
-
-function get_url_data( $num ){
-    $array = get_url_data_array();
-    return $array[$num];
-}
-
-function dump_url_data( $num ){
-    print_r( get_url_data( $num ));	 
-}
-
-function get_path_from_url_data( $num , $part){
-    switch($part){
-    case 'data':
-        $ret = get_url_data( $num )['path'];
-        break;
-    case 'conf':
-        $ret = get_url_data( $num )['conf_path'];
-        break;
-    case 'output':
-        $ret = get_url_data( $num )['output_path'];
-        break;
-    default:
-        //exit(200);
-        echo "get_path_from_url_data " . $part . "<br>";
-    }
-
-    return $ret;
-}
-
-function get_path_list_by_url( $num , $part){
-    $top_path = get_path_from_url_data($num, $part);
-
-    switch($part){
-    case 'data':
-#        $pattern = "*.md";
-        $regexp = '".*\(md\|yml\)"';
-#        $regexp = '".*\(yml\)"';
- #       $cmd_line_items = array("find" , $top_path , "-name", $pattern);
-        $cmd_line_items = array("find" , $top_path , "-regex", $regexp);
-        break;
-    case 'conf':
-        $regexp = '".*[^~]"';
-        $cmd_line_items = array("find" , $top_path , "-type", "f", "-regex" , $regexp);
-        break;
-    case 'output':
-        $regexp = '".*htm[^~]"';
-        $cmd_line_items = array("find" , $top_path , "-type", "f", "-regex" , $regexp);
-        break;
-    default:
-        echo "get_path_list_by_url=" . $part . "<br>";
-        exit(100);
-    }
-    $cmd_line = implode(" " , $cmd_line_items);
-
-    $array = array();
-    $handle = popen( $cmd_line , "r");
-    while (( $buffer = fgets($handle, 4096)) !== false){
-        $line = trim($buffer);
-        $data = explode($top_path,  $line)[1];
-        array_push($array , $data);
-    }
-    if (!feof($handle)) {
-	    echo "Error: unexpected fgets() fail\n";
-    }
-    pclose($handle);
-    
-    return array( "top_path" => $top_path, "file_list" => $array);
-}
-
-function restrict_filelist( $num, $path_info , $part ) {
-    if( $part === "conf" ){
-        $pathinfox = new ns\PathInfo($part, $path_info["top_path"]);
-    }
-    else{
-        $output_htmls = get_restrict_basenames( $num );
-        $pathinfox = new ns\PathInfo($part, $path_info["top_path"] , $output_htmls);
-
-        foreach($path_info["file_list"] as $path){
-            $pathinfox->scan($path);
-        }
-    }
-
-    foreach($path_info["file_list"] as $path){
-        $pathinfox->register($path);
-    }
-
-    return $pathinfox->pathinfo_list_in_json();
-}
-
-
-function get_path_info( $num , $part){
-    $path_info = get_path_list_by_url( $num , $part);
-
-    return restrict_filelist( $num, $path_info , $part);
- }
-
-function ensure_dir( $dir ) {
-    if( !file_exists( $dir ) ){
-        mkdir( $dir );
-    }
-}
-
-function ensure_storage_dir( $storage_dir , $num, $filename ) {
-    $dir = implode( "/" , array( $storage_dir , $num) );
-    mkdir($dir);
-    $path = implode( "/" , array( $dir , $filename) );
-#    echo "path=$path";
-    ensure_dir( $dir );
-
-    return $path;
-}
-
-function get_content( $num , $path , $part) {
-    $top_dir = get_path_from_url_data( $num , $part);
-    $full_path = implode( '/', [$top_dir, $path]);
-    $result = input_file( $full_path );
-    return $result;
-}
-
-function build_one_html( $exec_path, $num , $md_path , $part) {
-    $pathinfo = pathinfo( $md_path );
-    $md_fname = $pathinfo['basename'];
-    
-    $base = $pathinfo['filename'];
-
-    $list = get_site_tsv( $num );
-
-    debug_vd( $list );
-
-    $t = $list[$base]["t"];
-    $s = $list[$base]["s"];
-    $output_html = $list[$base]["output_html"];
-
-    $url_data = get_url_data( $num );
-    $bundle_path = $url_data["bundle_path"];
-    $conf_path = $url_data["conf_path"];
-    $output_url = $url_data["output_url"];
-
-    $cmd_line_items = array( $exec_path . "/bin/build.sh" , $bundle_path , $t, $s, $conf_path);
-
-    $cmd_line = implode(" " , $cmd_line_items);
-
-    $array = array();
-    $handle = popen( $cmd_line , "r");
-
-    while (( $buffer = fgets($handle, 4096)) !== false){
-        $line = trim($buffer);
-        array_push($array , $line);
-    }
-    if (!feof($handle)) {
-	    echo "Error: unexpected fgets() fail\n";
-    }
-    pclose($handle);
-
-    $full_download_url = implode( "/" , array( $output_url , $output_html ) );
-
-    $html_fname_tmp = $output_html  . ".tmp";
-    $partial_download_url = implode( "/" , array( $output_url , $html_fname_tmp) );
-
-    $info = array( "full_download_url" => $full_download_url,
-                   "partial_download_url" => $partial_download_url );
-
-    return $info;
-}
-
-function cmdx(){
-    global $exec_path;
-
-    $filelist_filename = array("data"=> "filelist.json", "conf"=> "conf-filelist.json", "output" => "output-filelist.json");
-    #    $storage_dir = dirname(__FILE__) . '/../storage';
-    $storage_dir = dirname(__FILE__) . '/../storage-devconf';
-
-    $content = NULL;
-    if (isset($_GET['cmd'])) {
-        $cmd = $_GET['cmd'];
-        if (isset($_GET['num'])) {
-            $num = $_GET['num'];
-            if (isset($_GET['part'])) {
-                $part = $_GET['part'];
-
-                switch ($cmd) {
-                case 'get_content':
-                    if (isset($_GET['path'])) {
-                        $path = $_GET['path'];
-                        $content = get_content( $num , $path , $part );
-                    }
-                    break;
-                case 'update_filelistx':
-                    $path = ensure_storage_dir( $storage_dir , $num, $filelist_filename[$part] );
-                    $content = get_path_info( $num , $part);
-                    output_file( $path , $content );
-                    break;
-                case 'get_filelistx':
-                    $path = ensure_storage_dir( $storage_dir , $num, $filelist_filename[$part] );
-                    if( file_exists($path) ){
-                        $content = input_file( $path );
-                    }
-                    else {
-                        $content = get_path_info( $num , $part);
-                        output_file( $path , $content );
-                    }
-                    break;
-                default:
-                    break;
-                }
-            }
-            else{
-                switch ($cmd) {
-                case 'get_output_url':
-                    $info = array('output_url' => get_output_url($num));
-                    $content = json_encode($info);
-                    break;
-                default:
-                    break;
-                }
-            }
-        }
-    }
-
-    elseif (isset($_POST['cmd'])) {
-        $cmd = $_POST['cmd'];
-        if (isset($_POST['num'])) {
-            $num = $_POST['num'];
-            if (isset($_POST['part'])) {
-                $part = $_POST['part'];
-
-                switch ($cmd) {
-                case 'build_one_html':
-                    $array = get_lines_from_formdata( "mytext" );
-                    $upload_content = implode( "\n" , $array );
-                    if (isset($_POST['path'])) {
-                        $path = $_POST['path'];
-                        $top_path = get_path_from_url_data( $num , $part);
-                        $filename_abs_path = $top_path . DIRECTORY_SEPARATOR . $path;
-                        $ret = build_one_html( $exec_path , $num, $path, $part );
-                    }
-                    else{
-                        output_file( dirname(__FILE__) . "/debug-F.txt" , "ABCDEFG" );
-                        $ret = "P-UPLOAD_CONTENT-NO-PATH";
-                    }
-                    $content = json_encode( $ret );
-                    break;
-                case 'upload_content':
-                    $array = get_lines_from_formdata( "mytext" );
-                    $upload_content = implode( "\n" , $array );
-                    if (isset($_POST['path'])) {
-                        $path = $_POST['path'];
-                        $top_path = get_path_from_url_data( $num , $part);
-                        $filename_abs_path = $top_path . DIRECTORY_SEPARATOR . $path;
-                        
-                        output_file( $filename_abs_path , $upload_content );
-                        $content = $upload_content;
-                    }
-                    else{
-                        $content = json_encode("P-UPLOAD_CONTENT-NO-PATH");
-                    }
-                    
-                default:
-                    debug_x("P-DEFAULT");
-                    /* $content = "P-DEFAULT";*/
-                    break;
-                }
-            }
-        }
-        else{
-            $content = json_encode("P-NO_NUM");
-#            $content = json_encode("{pxyz:123}");
-        }
-    }
-    else{
-        debug_x('DEFAULT');
-    }
-
-    if(!is_null($content)){
-#        $content = "PABCEDFG";
-        echo($content);
-#        debug_x("CONTENT");
-    }
-    else{
-        echo($content);
-    }
-}
-
-function debug_x($mes, $fname = null) {
-    ob_start();
-    echo $mes . "\n";
-    /*    var_dump($_GET);*/
-    /*    var_dump($_POST);*/
-    ob_end_clean();
-    $contentx = ob_get_contents();
-    if( $fname === null ){
-        $fname = './debug.txt';
-    }
-
-    error_log($contentx, 3, $fname );
-}
-
-function debug_vd($var) {
-    ob_start();
-    var_dump( $var );
-    ob_end_clean();
-    $content = ob_get_contents();
-    output_file( "debug.txt" , $content );
-}
-
-function get_full_path($num, $key, $fname){
-    $array = get_url_data_array();
-    return $array[$num][$key] . "/" . $fname;
-}
-
-function get_restrict_from_settings_yml() {
-    $settings = get_url_data_array();
-    $array = $settings[0]['restrict'];
-
-    $r_keys = array_keys( $array );
-    $restrict_array = array();
-    foreach( $array as $k => $v ){
-        $restrict_array[$k] = array();
-        foreach( $v as $k2 => $v2 ){
-            $restrict_array[$k][$k2] = array();
-            foreach( $v2 as $k3 => $v3 ){
-                foreach( $v3 as $k4 => $v4 ){
-                    $restrict_array[$k][$k2][$v4] = "";
-                }
-            }
-        }
-    }
-
-    return $restrict_array;
-}
-
-function get_restrict_basenames( $num ) {
-    $output_htmls = array();
-
-    $list = get_site_tsv($num );
-
-    $restrict_array = get_restrict_from_settings_yml();
-
-    foreach( $list as $k => $v ){
-        if( isset( $restrict_array[ $v['category'] ][ $v['t'] ][ $v['s'] ] ) ) {
-            $output_htmls[$k] = $v['output_html'];
-        }
-    }
-
-    return $output_htmls;
-}
-
-function get_site_tsv($num){
-    $list = array();
-
-    $fname = get_full_path( $num, 'conf_path' , 'site.tsv');
-    if (($f = fopen( $fname , "r" )) !== FALSE) {
-        while (($data = fgetcsv($f, 1000, "\t")) !== FALSE) {
-            if( !preg_match("/^#/" , $data[0]) ){
-                $t = $data[0];
-                $s = $data[1];
-                $category = $data[2];
-                $output_html = $data[3];
-                if( count($data) > 4 ){
-                    $alias_html = $data[4];
-                }
-                else{
-                    $alias_html = "";
-                }
-                $basename = basename( $output_html , ".html");
-                $list[$basename] = array( 't'=> $t, 's'=> $s, 'category'=>$category, 'output_html' => $output_html, 'alias_html'=> $alias_html );
-            }
-        }
-        fclose($f);
-    }
-
-    return $list;
-}
-
-function get_output_url($num){
-    $settings = get_url_data_array();
-    return $settings[$num]['output_url'];
-}
-
-function get_restrict($num){
-    $settings = get_url_data_array();
-    return $settings[$num]['restrict'];
-}
-
-function get_item($num, $name){
-    $settings = get_url_data_array();
-    return $settings[$num][$name];
-}
-
-function get_settings_file( $name ){
-    $dir = get_item( 0 , "conf_path" );
-    $path = implode( "/" , [$dir, $name] );
-
-    return $path;
-}
-
-cmdx();
-/*
-$num = 0;
-$path = "/attempt/devconf2018/data/devconf2018.md";
-$part = "data";
-$lines = build_one_html( $exec_path, $num , $path , $part );
-
-var_dump( $lines );
-
-foreach( $lines as $k => $v ){
-    if( is_array( $v )){
-        echo implode( "\n" , $v );
-    }
-    else{
-        echo $v . "\n";
-    }
-}
-*/
Index: /branches/testa-single-bookmark/settings-devconf.yml
===================================================================
--- /branches/testa-single-bookmark/settings-devconf.yml	(revision 62)
+++ /branches/testa-single-bookmark/settings-devconf.yml	(revision 63)
@@ -1,10 +1,10 @@
 -
   url:          https://toppers.jp
-  path:         /var/www/vhosts/devconf.northern-cross.info/httpdocs/c/md2site/_xtest/wtjx/t12/src
-  conf_path:    /var/www/vhosts/devconf.northern-cross.info/httpdocs/c/md2site/_xtest/wtjx/t12/conf
-  output_path:  /var/www/vhosts/devconf.northern-cross.info/httpdocs/c/md2site/_xtest/wtjx/t12/output
-  bundle_path:  /var/www/vhosts/devconf.northern-cross.info/httpdocs/c/md2site
+  path:         /var/www/vhosts/devconf.northern-cross.info/httpdocs/a/c/md2site/_xtest/wtjx/t12/src
+  conf_path:    /var/www/vhosts/devconf.northern-cross.info/httpdocs/a/c/md2site/_xtest/wtjx/t12/conf
+  output_path:  /var/www/vhosts/devconf.northern-cross.info/httpdocs/a/c/md2site/_xtest/wtjx/t12/output
+  bundle_path:  /var/www/vhosts/devconf.northern-cross.info/httpdocs/a/c/md2site
   storage_dir:  storage-devconf
-  output_url:           https://devconf.northern-cross.info/c/md2site/_xtest/wtjx/t12/output
+  output_url:           https://devconf.northern-cross.info/a/c/md2site/_xtest/wtjx/t12/output
 #  full_download_url:    https://devconf.northern-cross.info/c/md2site-web/_xtest/wtjx/t12/output/devconf2018.html
 #  partial_download_url: https://devconf.northern-cross.info/c/md2site-web/_xtest/wtjx/t12/output/devconf2018.html.tmp
