From b25b26fde13ac207697f29886ee7e57153f5b15f Mon Sep 17 00:00:00 2001 From: equippedcoding-master Date: Tue, 30 Sep 2025 13:25:09 -0500 Subject: [PATCH] added builder, bug fixes --- README.md | 3 ++ pages/descriptor.json | 2 +- .../core/api/js/pages/modules/imp_builder.js | 27 ++--------- .../api/js/pages/modules/imp_documents.js | 17 +++---- .../admin/core/api/php/includes/functions.php | 15 +++--- portal/admin/core/db/create-system-tables.sql | 2 +- portal/admin/core/scripts/commands.sh | 6 +-- .../scripts/remote/builder/app_install.sh | 45 +++++++---------- portal/admin/core/scripts/run.sh | 34 ++++++------- .../admin/services/builder/web/v3/index.php | 20 -------- .../admin/services/builder/web/v3/js/init.js | 48 ------------------- .../builder/web/v3/js/pages/index2.js | 1 - 12 files changed, 65 insertions(+), 155 deletions(-) diff --git a/README.md b/README.md index f59fa10c..4ccad3ad 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,6 @@ ### Portal +Appfactory Studio domain website + + diff --git a/pages/descriptor.json b/pages/descriptor.json index ce82fc88..a3b61d0d 100644 --- a/pages/descriptor.json +++ b/pages/descriptor.json @@ -1,3 +1,3 @@ { - "custom": true + "custom": false } \ No newline at end of file diff --git a/portal/admin/core/api/js/pages/modules/imp_builder.js b/portal/admin/core/api/js/pages/modules/imp_builder.js index f1543485..44900693 100644 --- a/portal/admin/core/api/js/pages/modules/imp_builder.js +++ b/portal/admin/core/api/js/pages/modules/imp_builder.js @@ -12,31 +12,14 @@ define([ function _init(app){ - - - $("#enter_builder_btn_id").on("click",function(e){ e.preventDefault(); - - console.log(window.location.host); - console.log(window.location.origin); - console.log(app.extra.config.managed_domain.Address); - console.log(app.extra.config.managed_domain.Address.split("//")[1]); - console.log(app.extra.config.managed_domain.Address2); - console.log(app.extra.config.managed_domain); - - if(app.extra.config.managed_domain.Address!=undefined){ - if(window.location.host.includes(app.extra.config.managed_domain.Address.split("//")[1])){ - window.open(app.extra.config.managed_domain.Address + "/portal/admin/services/builder/web/v3", "appfactory_webbuilder"); - } - }else if(app.extra.config.managed_domain.Address2!=undefined){ - if(window.location.host.includes(app.extra.config.managed_domain.Address2.split("//")[1])){ - window.open(app.extra.config.managed_domain.Address2 + "/portal/admin/services/builder/web/v3", "appfactory_webbuilder"); - } + if(window.location.host.includes(app.extra.config.managed_domain.Domain)){ + window.open(app.extra.config.managed_domain.Address + "/portal/admin/services/builder/web/v3", "appfactory_webbuilder"); + } + if(window.location.host.includes(app.extra.config.managed_domain.Domain2)){ + window.open(app.extra.config.managed_domain.Address2 + "/portal/admin/services/builder/web/v3", "appfactory_webbuilder"); } - - // https://www15.appfactory.studio/portal/admin/services/builder/ - // window.open(app.extra.config.managed_domain.Address2 + "/portal/admin/services/builder/web", "appfactory_webbuilder"); }); } diff --git a/portal/admin/core/api/js/pages/modules/imp_documents.js b/portal/admin/core/api/js/pages/modules/imp_documents.js index c5186c1c..9cfd6e6d 100644 --- a/portal/admin/core/api/js/pages/modules/imp_documents.js +++ b/portal/admin/core/api/js/pages/modules/imp_documents.js @@ -127,9 +127,8 @@ }); - function displayImageEditor(app){ - // Image editor - let url = app.extra.instances.documents.getDocumentUrl(app.extra.current.documents.document.obj, app.extra.config.managed_domain); + function displayImageEditor(url,app){ + // Image editor var imageEditor = new tui.ImageEditor('#tui-image-editor-container2', { includeUI: { loadImage: { @@ -148,20 +147,22 @@ imageEditor.ui.resizeEditor(); }; - $(".tui-image-editor-header-logo").remove(); + $(".tui-image-editor-header-logo").remove(); } - function displayPdfEditor(app){ + function displayPdfEditor(url,app){ } // console.log(app.extra.current.documents); - if(app.utils.imageExists(app.extra.current.documents.document.obj.url)){ + let url = app.extra.instances.documents.getDocumentUrl(app.extra.current.documents.document.obj, app.extra.config.managed_domain); + console.log(url); + if(app.utils.imageExists(url)){ if(app.utils.isFileType("image",app.extra.current.documents.document.obj.generated_name)){ // console.log(imageExists(app.extra.current.documents.document.obj.url)); - displayImageEditor(app); + displayImageEditor(url,app); } if(app.utils.isFileType("pdf",app.extra.current.documents.document.obj.generated_name)){ - displayPdfEditor(app); + displayPdfEditor(url,app); } }else{ $("#document_status_message").text("File missing!"); diff --git a/portal/admin/core/api/php/includes/functions.php b/portal/admin/core/api/php/includes/functions.php index abd51346..d701f162 100644 --- a/portal/admin/core/api/php/includes/functions.php +++ b/portal/admin/core/api/php/includes/functions.php @@ -8895,7 +8895,7 @@ function PublishWebsite($base,$rootDir,$project,$project_config,$member,$setting for ($n=0; $n < count($value["styles"]); $n++) { $link_styles .= ""; } - if($key=="home"){ + if($key=="home" || $key=="index"){ $html = str_replace("\${contents}", $value["html"], $contents); $html = str_replace("\${favicon}", $favicon, $html); $html = str_replace("\${title}", $title, $html); @@ -8904,8 +8904,9 @@ function PublishWebsite($base,$rootDir,$project,$project_config,$member,$setting $html = str_replace("\${scripts}", $value["js"], $html); $html = str_replace("\${styles}", $value["css"], $html); - mkdir("$base/$rootDir/index", 0777, true); - $file = "$base/$rootDir/index/index.php"; + // mkdir("$base/$rootDir/index", 0777, true); + // $base = /home/user/websites/www + $file = "$base/index.php"; $myfile = fopen($file, "w"); fwrite($myfile, $html); fclose($myfile); @@ -8930,13 +8931,15 @@ function PublishWebsite($base,$rootDir,$project,$project_config,$member,$setting "path_dir" => dirname( __DIR__ ) . "/pages_template.php", "contents" => $contents, "make" => $make, + "directory_base" => $base, "directory" => "$base/$rootDir", "settings" => $settings, "project" => $project, "managed_domain" => $managed_domain, "member" => $member, "project_config" => $project_config, - "run_command" => $result + "run_command" => $result, + "website" => $website ]); @@ -8967,9 +8970,9 @@ function webbuilder_publish(){ $txt = "{}"; fwrite($myfile, $txt); fclose($myfile); - EchoJsonResponse("$base/$rootDir/descriptor.json"); + // EchoJsonResponse("$base/$rootDir/descriptor.json"); } - EchoJsonResponse("$base/$rootDir/descriptor.json"); + // EchoJsonResponse("$base/$rootDir/descriptor.json"); if(file_exists("$base/$rootDir/descriptor.json")){ $descriptor = json_decode(file_get_contents("$base/$rootDir/descriptor.json"), true); if($descriptor["custom"]==true){ diff --git a/portal/admin/core/db/create-system-tables.sql b/portal/admin/core/db/create-system-tables.sql index 99730af3..db1aa8ea 100644 --- a/portal/admin/core/db/create-system-tables.sql +++ b/portal/admin/core/db/create-system-tables.sql @@ -133,7 +133,7 @@ CREATE TABLE IF NOT EXISTS documents ( date TIMESTAMP DEFAULT CURRENT_TIMESTAMP() ); --- ALTER TABLE documents CREATE COLUMN url2 VARCHAR(255) NULL; +-- ALTER TABLE documents ADD COLUMN url2 VARCHAR(255) NULL; -- Forms diff --git a/portal/admin/core/scripts/commands.sh b/portal/admin/core/scripts/commands.sh index 8d9d6f4e..2dc3b18c 100644 --- a/portal/admin/core/scripts/commands.sh +++ b/portal/admin/core/scripts/commands.sh @@ -1048,9 +1048,9 @@ if [ "$action" = "--brain-start-remote-server-monitor" ]; then - echo "" &>> $logfile - echo "[Appfactory]${now}: ========================================" &>> $logfile - expect /home/${systemuser}/websites/${subdomain}/portal/admin/core/scripts/commands.expect "brain_start_remote_server_monitor" $systemuser $subdomain $member_ref $member_username $server_ip $username $password + # echo "" &>> $logfile + # echo "[Appfactory]${now}: ========================================" &>> $logfile + # expect /home/${systemuser}/websites/${subdomain}/portal/admin/core/scripts/commands.expect "brain_start_remote_server_monitor" $systemuser $subdomain $member_ref $member_username $server_ip $username $password diff --git a/portal/admin/core/scripts/remote/builder/app_install.sh b/portal/admin/core/scripts/remote/builder/app_install.sh index e454a84e..e0372be6 100644 --- a/portal/admin/core/scripts/remote/builder/app_install.sh +++ b/portal/admin/core/scripts/remote/builder/app_install.sh @@ -167,15 +167,8 @@ function run_http_domain_server() sed -i "s/\${user}/${subdomain}/g" ${base_nginx}/${systemuser}-${subdomain}.conf &>> $LOG_FILE sed -i "s/\${domain}/${member_domain}/g" ${base_nginx}/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # ln -s /mnt/node1/${server_systemuser}/server_configurations/nginx/${systemuser}-${subdomain}.conf /etc/nginx/conf.d/ &>> $LOG_FILE - ln -s /mnt/node1/${systemuser}/server_configurations/nginx/${systemuser}-${subdomain}.conf /etc/nginx/conf.d/ &>> $LOG_FILE + mv /mnt/node1/${systemuser}/server_configurations/nginx/${systemuser}-${subdomain}.conf /etc/nginx/conf.d/ &>> $LOG_FILE - # touch /etc/nginx/conf.d/${systemuser}-${subdomain}.conf - # cp -rf $MAIN_DIR/nginx_zone_template.conf /etc/nginx/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s/\${domain1}/${domain1}/g" /etc/nginx/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s/\${domain2}/${domain2}/g" /etc/nginx/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s#\${proxy_pass}#${domain1}#g" /etc/nginx/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s/\${user}/${subdomain}/g" /etc/nginx/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE else echo "-----------------------------------------------------" &>> $LOG_FILE echo "Skipping nginx config already exist" &>> $LOG_FILE @@ -192,32 +185,13 @@ function run_http_domain_server() sed -i "s#\${serveralias2}#${domain2}#g" ${base_http}/${systemuser}-${subdomain}.conf &>> $LOG_FILE sed -i "s/\${domain}/${member_domain}/g" ${base_http}/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # ln -s /mnt/node1/${server_systemuser}/server_configurations/httpd/${systemuser}-${subdomain}.conf /etc/httpd/conf.d/ - ln -s /mnt/node1/${systemuser}/server_configurations/httpd/${systemuser}-${subdomain}.conf /etc/httpd/conf.d/ - ln -s /mnt/node1/xrnhy4h8dk4rvznmzwfmsiyy/server_configurations/httpd/xrnhy4h8dk4rvznmzwfmsiyy-www.conf /etc/httpd/conf.d/ - - # touch /etc/httpd/conf.d/${systemuser}-${subdomain}.conf - # cp -rf $MAIN_DIR/apache_zone_template.conf /etc/httpd/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s/\${domain1}/${domain1}/g" /etc/httpd/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s/\${domain2}/${domain2}/g" /etc/httpd/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s#\${document_root}#/home/${systemuser}/websites/www#g" /etc/httpd/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s#\${subdomain}#${systemuser}#g" /etc/httpd/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # sed -i "s#\${serveralias2}#${domain2}#g" /etc/httpd/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - # # sed -i "s#\${rewrite_url}#http://www.appfactory.studio#g" /etc/httpd/conf.d/${systemuser}-${subdomain}.conf &>> $LOG_FILE - + mv /mnt/node1/${systemuser}/server_configurations/httpd/${systemuser}-${subdomain}.conf /etc/httpd/conf.d/ else echo "-----------------------------------------------------" &>> $LOG_FILE echo "Skipping httpd config already exist" &>> $LOG_FILE fi if [ ! -f /etc/letsencrypt/live/${domain2}/privkey.pem ]; then - # TODO_1: Remove symbolic links that are broken so that nginx does - # not fail reloading and letsencrypt fails also if letsencypt fails - # for whatever else reason run some kind of fallback and notify of - # non active https - - - # TODO_1: I nolonger do sym links # https://www.google.com/search?client=firefox-b-1-d&q=shell+script+loop+through+directory+and+remove+sys+links # Check if the directory exists if [ -d "/etc/nginx/conf.d/" ]; then @@ -542,6 +516,21 @@ function make_storage_directories mkdir -p /mnt/node1/$systemuser/temp &>> $LOG_FILE mkdir -p /mnt/node1/$systemuser/tmp &>> $LOG_FILE + chown apache.apache -R /mnt/node1/$systemuser/modules + chmod 777 -R /mnt/node1/$systemuser/modules + + chown apache.apache -R /mnt/node1/$systemuser/services + chmod 777 -R /mnt/node1/$systemuser/services + + chown vmail.vmail -R /mnt/node1/$systemuser/mailbox + chmod 777 -R /mnt/node1/$systemuser/mailbox + + chown apache.apache -R /mnt/node1/$systemuser/temp + chmod 777 -R /mnt/node1/$systemuser/temp + + chown apache.apache -R /mnt/node1/$systemuser/tmp + chmod 777 -R /mnt/node1/$systemuser/tmp + echo "==========================================================================" &>> $LOG_FILE echo "============= $systemuser" &>> $LOG_FILE echo "============= $server_systemuser" &>> $LOG_FILE diff --git a/portal/admin/core/scripts/run.sh b/portal/admin/core/scripts/run.sh index ffbf0b55..718f35a4 100644 --- a/portal/admin/core/scripts/run.sh +++ b/portal/admin/core/scripts/run.sh @@ -33,26 +33,26 @@ chown -R $systemuser.apache /home/${systemuser}/websites/$subdomain/portal/admin ### Initialize watcher service -systemctl stop afs-watcher-$systemuser-${subdomain}.service -systemctl disable afs-watcher-$systemuser-${subdomain}.service +# systemctl stop afs-watcher-$systemuser-${subdomain}.service +# systemctl disable afs-watcher-$systemuser-${subdomain}.service -BASE="/home/${systemuser}/websites/$subdomain/portal/admin/core/scripts" -systemdfile2="$BASE/afs-watcher-$systemuser-${subdomain}.service" -if [ -e $systemdfile2 ]; then - rm -rf $systemdfile2 - echo "file removed: $systemdfile2" -fi +# BASE="/home/${systemuser}/websites/$subdomain/portal/admin/core/scripts" +# systemdfile2="$BASE/afs-watcher-$systemuser-${subdomain}.service" +# if [ -e $systemdfile2 ]; then +# rm -rf $systemdfile2 +# echo "file removed: $systemdfile2" +# fi -touch $systemdfile2 -cp -rf "$BASE/afs-watcher.service" $systemdfile2 -sed -i "s/{{systemuser}}/${systemuser}/g" $systemdfile2 -sed -i "s/{{subdomain}}/$subdomain/g" $systemdfile2 -if [ -e "/etc/systemd/system/afs-watcher-$systemuser-${subdomain}.service" ]; then - rm -rf /etc/systemd/system/afs-watcher-$systemuser-${subdomain}.service - echo "file removed: afs-watcher-$systemuser-${subdomain}.service" -fi +# touch $systemdfile2 +# cp -rf "$BASE/afs-watcher.service" $systemdfile2 +# sed -i "s/{{systemuser}}/${systemuser}/g" $systemdfile2 +# sed -i "s/{{subdomain}}/$subdomain/g" $systemdfile2 +# if [ -e "/etc/systemd/system/afs-watcher-$systemuser-${subdomain}.service" ]; then +# rm -rf /etc/systemd/system/afs-watcher-$systemuser-${subdomain}.service +# echo "file removed: afs-watcher-$systemuser-${subdomain}.service" +# fi -cp -rf $systemdfile2 /etc/systemd/system/ +# cp -rf $systemdfile2 /etc/systemd/system/ systemctl daemon-reload systemctl enable afs-watcher-$systemuser-${subdomain}.service diff --git a/portal/admin/services/builder/web/v3/index.php b/portal/admin/services/builder/web/v3/index.php index dab5f8b1..9fa74976 100644 --- a/portal/admin/services/builder/web/v3/index.php +++ b/portal/admin/services/builder/web/v3/index.php @@ -92,26 +92,6 @@ function html($title,$dir){ - - diff --git a/portal/admin/services/builder/web/v3/js/init.js b/portal/admin/services/builder/web/v3/js/init.js index 0773cae4..a13d8078 100644 --- a/portal/admin/services/builder/web/v3/js/init.js +++ b/portal/admin/services/builder/web/v3/js/init.js @@ -205,54 +205,6 @@ }); - // Promise.all(promises).then((m) =>{ - // let app = new ApplicationContextManager(); - // app.extra.url = URL; - // app.extra.config = {}; - // app.extra.current = {}; - // app.extra.views = {}; - // app.extra.extras = afsextras; - // app.extra.instances = {}; - // app.extra.account = {}; - // app.extra.config.configurations = AFS_SCHEMA_DESCRIPTION_INTEGRATION(app.extra.config.configurations); - - // let payments_config_array = app.extra.config.configurations.processors; - // let client = new app.extra.extras.SystemClientMemberManager(payments_config_array, app); - // // client.setupNewMember(app.extra.root.member.access_nameid,"access",app,function(access){}); - - // let domain_settings = app.extra.config.configurations.domain_settings; - // let domain_user_settings = app.extra.config.configurations.domain_user_settings; - // let managed_domain = app.extra.config.managed_domain; - // let member = new afsextras.SystemAccountMemberManager(app.extra.root.member, app.extra.root.access, managed_domain, client, app); - - // app.extra.domain = new afsextras.SystemAccountDomainManager( - // app.extra.root.user, - // app.extra.root.access, - // domain_settings, - // domain_user_settings, - // managed_domain, - // member, - // client, - // app); - - // requirejs.config({ baseUrl: 'js/pages' }); - // let routes = ["index"]; - // require(routes, function(route_func){ - // FullPageLoader(false); - // route_func(app); - // }); - - - // }); - - - - - - - - - })(); diff --git a/portal/admin/services/builder/web/v3/js/pages/index2.js b/portal/admin/services/builder/web/v3/js/pages/index2.js index a6809edb..ddca8b8e 100644 --- a/portal/admin/services/builder/web/v3/js/pages/index2.js +++ b/portal/admin/services/builder/web/v3/js/pages/index2.js @@ -1,7 +1,6 @@ define(['main'], function(main) { - function func_logout_event(app){ $('.log_out_link').on('click',function(e){ e.preventDefault();