includes as $inner_path => $user) { if (strtolower($user->user_name) == strtolower($user_name)) { header("HTTP/1.0 400 Bad Request"); die("Username $user_name already exits."); } if (strpos($inner_path, $auth_address) !== false) { header("HTTP/1.0 400 Bad Request"); die("Address $auth_address already exits."); } } logtext("Creating user dir..."); $user_dir = str_replace("content.json", "", $users_json).$auth_address; mkdir($user_dir, 0777); chmod($user_dir, 0777); $f = fopen($user_dir."/data.json", "w"); fwrite($f, '{ "next_topic_id": 1, "topics": [], "next_message_id": 1, "comments": {} }'); fclose($f); chmod($user_dir."/data.json", 0666); logtext("Adding user..."); $data->includes->{$auth_address."/content.json"} = array( "user_name" => $user_name, "user_id" => $data->next_user_id, "added" => time(), "files_allowed" => "data.json", "includes_allowed" => false, "max_size" => 20000, "signers" => array($auth_address), "signers_required" => 1 ); $data->next_user_id += 1; $out = json_encode($data, JSON_PRETTY_PRINT); $f = fopen($users_json, "w"); fwrite($f, $out); fclose($f); logtext("Signing users..."); chdir($zeronet_dir); $out = array(); exec("python zeronet.py --debug siteSign $site $private_key --inner_path data/users/content.json 2>&1", $out); $out = implode("\n", $out); logtext($out); if (strpos($out, "content.json signed!") === false) { header("HTTP/1.0 500 Internal Server Error"); die("Users signing error"); } logtext("Signing user dir..."); chdir($zeronet_dir); exec("python zeronet.py --debug siteSign $site $private_key --inner_path data/users/$auth_address/content.json 2>&1", $out); $out = implode("\n", $out); logtext($out); if (strpos($out, "content.json signed!") === false) { header("HTTP/1.0 500 Internal Server Error"); die("User signing error"); } chmod($user_dir."/content.json", 0666); logtext("Publishing content..."); $out = array(); $server_ip = $_SERVER['SERVER_ADDR']; exec("python zeronet.py --debug --ip_external $server_ip sitePublish $site --inner_path data/users/content.json 2>&1", $out); $out = implode("\n", $out); logtext($out); if (strpos($out, "Successfuly published") === false) { header("HTTP/1.0 500 Internal Server Error"); die("Publish error"); } echo "OK"; ?>