Edit File: new_ai_site_theme.php
<?php ////////////////////////////////////////////////////////////// //=========================================================== // hf_theme.php //=========================================================== // SOFTACULOUS // Version : 1.1 // Inspired by the DESIRE to be the BEST OF ALL // ---------------------------------------------------------- // Started by: Alons // Date: 10th Jan 2009 // Time: 21:00 hrs // Site: http://www.softaculous.com/ (SOFTACULOUS) // ---------------------------------------------------------- // Please Read the Terms of use at http://www.softaculous.com // ---------------------------------------------------------- //=========================================================== // (c)Softaculous Inc. //=========================================================== ////////////////////////////////////////////////////////////// if(!defined('SITEPAD') && !defined('SITEMUSH')){ die('Hacking Attempt'); } function new_ai_site_theme(){ global $globals, $softaculous_pro, $l, $theme, $nupanel, $error, $user, $themes, $done, $langs, $categories, $setup_fields; softheader($l['title_new_site']); $steps = array( 'start' => 'Let\'s start', 'contact' => 'Contact', 'features' => 'Goals', 'images' => 'Images', 'import_theme' => 'Template', ); // Option table values $setup_info = softaculous_pro_get_option_setup_info(); // // pagelayer_print($setup_info); $setup_info = empty($setup_info) ? [] : $setup_info; $business_type = !empty($setup_info['business_type']) ? $setup_info['business_type'] : ''; $business_descriptions = isset($setup_info['business_description']) && is_array($setup_info['business_description']) ? $setup_info['business_description'] : ['']; $active_desc_index = isset($setup_info['active_desc']) ? $setup_info['active_desc'] : 0; $total_descriptions = count($business_descriptions); $selected_images = !empty($setup_info) && !empty($setup_info['selected_images']) ? $setup_info['selected_images'] : []; $selected_images_count = !empty($setup_info) && !empty($setup_info['selected_images']) ? count($selected_images) : 0; $suggested_tags = !empty($setup_info) && !empty($setup_info['image_suggestions']) ? $setup_info['image_suggestions'] : (!empty($business_type) ? [$business_type] : ''); $template_mode = !empty($setup_info['mode']) ? $setup_info['mode']: 'manual'; $business_lang = !empty($setup_info) && !empty($setup_info['business_lang']) ? $setup_info['business_lang'] : 'en'; $active_step = isset($_GET['step']) && array_key_exists($_GET['step'], $steps) ? $_GET['step'] : 'start'; $business_email = !empty($setup_info['business_email']) ? $setup_info['business_email'] : ''; $business_phone = !empty($setup_info['business_phone']) ? $setup_info['business_phone'] : ''; $business_address = !empty($setup_info['business_address']) ? $setup_info['business_address'] : ''; // Social accounts $social_facebook = !empty($setup_info['business_social_facebook']) ? $setup_info['business_social_facebook'] : ''; $social_twitter = !empty($setup_info['business_social_twitter']) ? $setup_info['business_social_twitter'] : ''; $social_instagram = !empty($setup_info['business_social_instagram']) ? $setup_info['business_social_instagram'] : ''; $social_linkedin = !empty($setup_info['business_social_linkedin']) ? $setup_info['business_social_linkedin'] : ''; $social_youtube = !empty($setup_info['business_social_youtube']) ? $setup_info['business_social_youtube'] : ''; if (empty($business_descriptions)) { $active_step = 'start'; } $softaculous_pro['templates'] = softaculous_pro_get_templates_list(); echo ' <script id="softaculous-ai-config"> var softaculous_ai_config = {}; softaculous_ai_config.descriptions = '.json_encode($business_descriptions).'; softaculous_ai_config.desc_active = "'.$active_desc_index.'"; softaculous_ai_config.selected_images = '.json_encode($selected_images).'; softaculous_ai_config.selected_images_count= '.json_encode($selected_images_count).'; softaculous_ai_config.suggested_tags = '.json_encode($suggested_tags).'; softaculous_ai_config.template_mode = '.json_encode($template_mode).'; </script> '; if(!empty($softaculous_pro['branding']['default_hf_bg'])){ echo ' <style> .softaculous-pro-wizard-sidebar { background-color:'.$softaculous_pro['branding']['default_hf_bg'].' !important; } .softaculous-pro-add-social>span{ background-color: '.$softaculous_pro['branding']['default_hf_bg'].' !important; } </style>'; } if(!empty($softaculous_pro['branding']['default_hf_text'])){ echo ' <style> .softaculous-pro-wizard-steps li, .softaculous-pro-wizard-steps li::before { color:'.$softaculous_pro['branding']['default_hf_text'].' !important; border-color:'.$softaculous_pro['branding']['default_hf_text'].' !important; } .softaculous_pro_return_btn span, .dashicons-exit::before { color:'.$softaculous_pro['branding']['default_hf_text'].' !important; } .softaculous-pro-add-social>span{ color: '.$softaculous_pro['branding']['default_hf_text'].' !important; } </style>'; } ?> <style> *, *::before, *::after { box-sizing: content-box; } </style> <div class="softaculous-pro-wizard softaculous-pro-ai-wizard"> <div class="softaculous-pro-wizard-sidebar"> <div class="softaculous-pro-setup-logo"> <a href="<?php echo $globals['ind']; ?>" style="white-space: nowrap;"><img src="<?php echo (empty($globals['logo_url']) ? $theme['images'].'sitepad_48.png' : $globals['logo_url']); ?>" alt="" height="<?php echo (!empty($nupanel->leftpanel_resize) ? '55' : '40'); ?>" class="header_logo"/><span style="vertical-align: middle;font-size:30px;color:#fff;font-weight: normal;margin-left: 5px;"><?php echo (!empty($globals['sm_brand']) ? $globals['sm_brand'] : 'SitePad' ); ?></span></a> </div> <div class="softaculous-pro-steps-holder"> <ol class="softaculous-pro-wizard-steps"> <?php foreach ($steps as $key => $name) : ?> <a href="<?php echo $globals["index"];?>act=new_ai_site&step=<?php echo $key; ?>"> <li class="<?php echo ($key == $active_step ? 'active_step' : ''); ?>"> <span data-step="<?php echo $key; ?>"><?php echo $name; ?></span> </li> </a> <?php endforeach; ?> </ol> </div> <a class="softaculous_pro_return_btn" style="cursor:pointer;" onclick="return softaculous_pro_onboarding_dismiss(event);"> <span class="dashicons dashicons-exit"></span><span><?php echo 'Exit'; ?></span></a> </div> <div class="softaculous-pro-wizard-content" data-active-panel="<?php echo $active_step; ?>"> <!-- Step Start section --> <div class="softaculous-pro-wizard-inner" data-panel="start"> <div class="softaculous-pro-wizard-inner-content"> <h1><?php echo 'Welcome to the Onboarding process !'; ?></h1> <p><?php echo 'This process will help you choose a professional template for your website and install plugins that you might need to achieve your goal for creating this website'; ?></p> </div> <div class="softaculous-form-container"> <div class='softaculous-container-full'> <div class='softaculous-content'> <label for="softaculous-site-address"><?php echo $l['site_address'] ; ?></label> <div class="row no-gutters softaculous-address"> <div class="col-sm-3"> <select name="protocol" id="softproto" class="form-control">'; <?php foreach($globals['protocols'] as $k => $v): ?> <option value="<?php echo $k;?>"><?php echo $v; ?></option> <?php endforeach; ?> </select> </div> <div class="col-sm-5"> <select name="domain" id="softdomain" class="form-control" onchange="checkhttps(this)">'; <?php foreach($nupanel->domainroots as $k => $v): ?> <option value="<?php echo $k?>"><?php echo $k; ?></option> <?php endforeach; ?> </select> </div> <div class="col-sm-4"> <input type="text" id="subdir" style="height:100%;" name="subdir" value="<?php echo POSTval('subdir', $site['subdir']); ?>" class="form-control" placeholder="<?php echo $l['subdir']; ?>"> </div> </div> </div> </div> <div class='softaculous-container-full'> <div class='softaculous-content'> <label for="softaculous-site-name"><?php echo 'Name of the website:' ; ?></label> <input type="text" name='site_name' id="softaculous-site-name" class="softaculous_pro_input" placeholder="<?php echo 'Enter a name for your website' ; ?>" value="<?php echo $l['site_title_def']; ?>" autocomplete="off"/> </div> </div> <div class='softaculous-container-half'> <div class="softaculous-content"> <label for="softaculous-business-type"><?php echo 'Choose a Category:'; ?></label> <div class="softaculous-dropdown"> <div class="softaculous-dropdown-selected"> <input type="text" class="softaculous_input" value="<?php echo $business_type; ?>" name="business_type" id="softaculous-business-type" placeholder="<?php echo 'Explore Options'; ?>" autocomplete="off"/> <span class="clear-btn" style="display: <?php echo !empty($business_type) ? 'block' : 'none'; ?>">✖</span> </div> <div class="softaculous-category-holder"> <div class="softaculous-pro-categories-dropdownlist"></div> <div class="softaculous-pro-categories-default-dropdownlist" style='display:none'> <?php foreach ($softaculous_pro['templates']['categories'] as $cslug => $cdata) : ?> <div class="softaculous-category_btn" data-target="<?php echo $cslug; ?>"> <?php echo $cdata['en']; ?> </div> <?php endforeach; ?> </div> </div> </div> </div> <div class='softaculous-content'> <label><?php echo $l['choose_lang'].':'; ?></label> <select name="language" id="language" class="form-control"> <?php foreach ($langs as $k => $v): ?> <option value="<?php echo $k; ?>" <?php echo (empty($_POST['language']) && (empty($user['language']) ? $globals['language'] : $user['language']) == $v ? 'selected="selected"' : (trim($_POST['language']) == $k ? 'selected="selected"' : '')); ?>><?php echo _ucfirst($v); ?></option> <?php endforeach; ?> </select> </div> </div> </div> <div class="softaculous-ai-description softaculous-content"> <table> <tr> <td width="1px"> <input type="checkbox" name="mode" id="softaculous-ai-mode" onclick="softaculous_pro_set_mode()" <?php echo ($setup_info['mode'] == 'ai' ? 'checked' : '');?> /> </td> <td><label for="softaculous-business-desc"><?php echo 'Use AI Builder to generate content ?'; ?></label></td> </tr> </table> <div id="softaculous-ai-description-field" style="<?php echo $template_mode == 'manual' ? 'display:none' : 'display:block'?>"> <label for="softaculous-business-desc"><?php echo 'What\'s your website about ?'; ?></label> <div class='softaculous-pro-active-desc' data-active="<?php echo $active_desc_index; ?>"> <p class='softaculous-pro-description-error' style='display:none'><?php echo 'It seems that the description is insufficient. Please provide a brief overview of your site before proceeding further. You can write your own description, or let AI generate one for you.';?></p> <textarea rows="4" cols="50" id="softaculous-business-desc" placeholder="<?php echo 'E.g. Quorvio is a next-gen tech startup based in Austin, Texas. The company is focused on building intuitive tools that simplify software deployment, automation, and infrastructure management. Founded by Morgan Hale, a product architect with 12+ years in the tech space, Quorvio brings together simplicity, power, and developer-first thinking. With a clear mission to streamline digital operations, the team is dedicated to shaping the future of web and app development.';?>"><?php echo ( isset($business_descriptions[$active_desc_index]) ? $business_descriptions[$active_desc_index] : ''); ?></textarea> <div class="softaculous-ai-description-creation"> <div class="softaculous-ai-svg"> <svg width="24px" height="24px" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path d="m11 4-.5-1-.5 1-1 .125.834.708L9.5 6l1-.666 1 .666-.334-1.167.834-.708zm8.334 10.666L18.5 13l-.834 1.666-1.666.209 1.389 1.181L16.834 18l1.666-1.111L20.166 18l-.555-1.944L21 14.875zM6.667 6.333 6 5l-.667 1.333L4 6.5l1.111.944L4.667 9 6 8.111 7.333 9l-.444-1.556L8 6.5zM3.414 17c0 .534.208 1.036.586 1.414L5.586 20c.378.378.88.586 1.414.586s1.036-.208 1.414-.586L20 8.414c.378-.378.586-.88.586-1.414S20.378 5.964 20 5.586L18.414 4c-.756-.756-2.072-.756-2.828 0L4 15.586c-.378.378-.586.88-.586 1.414zM17 5.414 18.586 7 15 10.586 13.414 9 17 5.414z"/> </svg> <span class="softaculous-ai-loader"></span> <p><?php echo 'Create description using AI';?></p> </div> <div class="softaculous-ai-pagination" data-current="<?php echo $active_desc_index; ?>"> <span class="active-prev-handler"> <i class="fa sai-leftarrow"></i> </span> <span class="currently_active"> <?php echo $active_desc_index+1; ?> / <?php echo max(1, $total_descriptions); ?> </span> <span class="active-next-handler"> <i class="fa sai-rightarrow"></i> </span> </div> </div> </div> </div> </div> <br /> <br /> <div class="softaculous-pro-wizard-buttons"> <button class="step_btn step_next_btn" data-step="contact" onclick="softaculous_pro_next_handler(this)"><?php echo 'Get Started'; ?><span class="dashicons dashicons-arrow-right-alt next-handler-icon"></span><span class="softaculous-next-loading" style="display:none"></span></button> </div> </div> <!-- Step Contact section --> <div class="softaculous-pro-wizard-inner" data-panel="contact"> <div class="softaculous-pro-wizard-inner-content"> <h1><?php echo 'What are the preferred methods for communication?'; ?></h1> <p><?php echo 'Please provide the necessary contact information to be displayed on the website'; ?> <br /> <?php echo'Note: This information is for displaying on your website only and is not saved on external servers'; ?></p> </div> <div class="softaculous-ai-contact"> <div class='softaculous-container-half'> <div class='softaculous-content softaculous-contact-email'> <label for="softaculous-site-email"><?php echo 'Email:'; ?></label> <input type="email" name='site_email' id="softaculous-site-email" class="softaculous_pro_input" placeholder="<?php echo 'Your email'; ?>" value="<?php echo $business_email; ?>" autocomplete="off"/> </div> <div class='softaculous-content softaculous-contact-number'> <label for="softaculous-site-phone"><?php echo 'Phone number:'; ?></label> <input type="tel" name='site_phone' id="softaculous-site-phone" class="softaculous_pro_input" placeholder="<?php echo 'Your phone number'; ?>" value="<?php echo $business_phone ; ?>" autocomplete="off"/> </div> </div> <div class='softaculous-container-full'> <div class='softaculous-content softaculous-contact-address'> <label for="softaculous-site-address"><?php echo 'Address' ;?></label> <textarea rows="4" cols="30" name='site_address' id="softaculous-site-address" placeholder="<?php echo 'Your full address'; ?>"><?php echo $business_address; ?></textarea> </div> </div> <div class='softaculous-pro-social-profiles'> <h3 class='softaculous-pro-add-social'> <span>+</span> <?php echo 'More social media profiles'; ?> </h3> <div class='softaculous-pro-social-links-profile'> <div class='softaculous-container-half'> <div class='softaculous-content softaculous-social-facebook'> <label for="softaculous-site-social-facebook"><?php echo 'Facebook:'; ?></label> <input type="email" name='social_facebook' id="softaculous-site-social-facebook" class="softaculous_pro_input" placeholder="<?php echo 'Facebook account (Optional)'; ?>" value="<?php echo $social_facebook; ?>" autocomplete="off"/> </div> <div class='softaculous-content softaculous-social-twitter'> <label for="softaculous-site-social-twitter"><?php echo 'Twitter:'; ?></label> <input type="tel" name='social_twitter' id="softaculous-site-social-twitter" class="softaculous_pro_input" placeholder="<?php echo 'Twitter account (Optional)'; ?>" value="<?php echo $social_twitter; ?>" autocomplete="off"/> </div> </div> <div class='softaculous-container-half'> <div class='softaculous-content softaculous-social-instagram'> <label for="softaculous-site-social-instagram"><?php echo 'Instagram:'; ?></label> <input type="email" name='social_instagram' id="softaculous-site-social-instagram" class="softaculous_pro_input" placeholder="<?php echo 'Instagram account (Optional)'; ?>" value="<?php echo $social_instagram; ?>" autocomplete="off"/> </div> <div class='softaculous-content softaculous-social-linkedin'> <label for="softaculous-site-social-twitter"><?php echo 'linkedin:'; ?></label> <input type="tel" name='social_linkedin' id="softaculous-site-social-linkedin" class="softaculous_pro_input" placeholder="<?php echo 'Linkedin account (Optional)'; ?>" value="<?php echo $social_linkedin; ?>" autocomplete="off"/> </div> </div> <div class='softaculous-container-half'> <div class='softaculous-content softaculous-social-youtube'> <label for="softaculous-site-social-youtube"><?php echo 'Youtube:'; ?></label> <input type="email" name='social_youtube' id="softaculous-site-social-youtube" class="softaculous_pro_input" placeholder="<?php echo 'Youtube account (Optional)'; ?>" value="<?php echo $social_youtube; ?>" autocomplete="off"/> </div> <div class='softaculous-content softaculous-social-gplus'> <label for="softaculous-site-social-gplus"><?php echo 'Google Plus:'; ?></label> <input type="tel" name='social_gplus' id="softaculous-site-social-gplus" class="softaculous_pro_input" placeholder="<?php echo 'Google plus account (Optional)'; ?>" value="<?php echo $social_gplus; ?>" autocomplete="off"/> </div> </div> </div> </div> </div> <div class="softaculous-pro-wizard-buttons"> <button onclick="softaculous_pro_prev_handler(this)" data-step="start" class="step_btn step_prev_btn"><?php echo 'Previous Step'; ?></button> <button class="step_btn step_next_btn" data-step="features" onclick="softaculous_pro_next_handler(this)"><?php echo 'Continue' ; ?><span class="dashicons dashicons-arrow-right-alt next-handler-icon"></span><span class="softaculous-next-loading" style="display:none"></span></button> </div> </div> <div class="softaculous-pro-wizard-inner" data-panel="features"> <div class="softaculous-pro-wizard-inner-content"> <h1><?php echo 'What are you looking to achieve with your new website ?'; ?></h1> <p><?php echo 'We will install the appropriate plugins that will add the required functionality to your website'; ?></p> </div> <div class="softaculous-pro-features-container"> <?php foreach(spro_get_features_list() as $slug => $feature):?> <label for="<?php echo $slug;?>_input" style="cursor:pointer;"> <div class="softaculous-pro-features" data-slug="<?php echo $slug; ?>"> <div class="softaculous-pro-features-icon"> <span class="<?php echo $feature['icon']; ?>"></span> </div> <div class="softaculous-pro-features-text"> <h3><?php echo $feature['name']; ?></h3> <p><?php echo $feature['info']; ?></p> </div> <div class="softaculous-pro-features-input"> <input type="checkbox" onclick="softaculous_pro_selected_features(this)" id="<?php echo $slug;?>_input" <?php echo (!empty($spro_setup_info) && !empty($spro_setup_info['features']) && in_array($slug, $spro_setup_info['features']) ? 'checked="checked"' : '') ; foreach($feature['plugin'] as $info){ if (!empty($info['requires_php']) && version_compare(PHP_VERSION, $info['requires_php'], '<')) { echo ' disabled'; echo ' spro-erro="'.sprintf(__('Requires PHP version %1$s or higher', 'softaculous-pro'), $info['requires_php']).'"'; break; } echo (!empty($installed_plugins[$info['plugin_init']]) ? ' checked="checked"' : ''); echo (empty($spro_setup_info['features']) && !empty($info['selected']) ? ' checked="checked"' : ''); } ?>/> </div> </div> </label> <?php endforeach; ?> </div> <div class="softaculous-pro-wizard-buttons"> <button onclick="softaculous_pro_prev_handler(this)" data-step="contact" class="step_btn step_prev_btn"><?php echo 'Previous Step'; ?> </button> <button class="step_btn step_next_btn" data-step="images" onclick="softaculous_pro_next_handler(this)"><?php echo 'Continue'; ?> <span class="dashicons dashicons-arrow-right-alt next-handler-icon"></span><span class="softaculous-next-loading" style="display:none"></span></button> </div> </div> <!-- Step Image section --> <div class="softaculous-pro-wizard-inner" data-panel="images"> <div class="softaculous-pro-wizard-inner-content"> <h1><?php echo 'Select Your Website Images'; ?></h1> <p><?php echo 'These images will be featured throughout your website'; ?></p> </div> <div class="softaculous-ai-warning" style="<?php echo empty($business_descriptions) ? 'display:block' : 'display:none'; ?>"><?php echo 'It looks like the description is empty. Please ensure that a description is provided before proceeding further.'; ?></div> <div class='softaculous-ai-images'> <div class="softaculous-ai-image-search"> <div class='softaculous-ai-image-search-input'> <input type="text" placeholder="Search image" class='softaculous-search-images'/> </div> <div class='softaculous-ai-image-suggestion-list' style="display:none"> <div class='softaculous-ai-image-suggestion-header'> <hr> <h3><?php echo 'Suggestions';?></h3> </div> <div class='softaculous-ai-image-suggestions'> <?php if(!empty($suggested_tags)): ?> <?php foreach($suggested_tags as $image_suggestion):?> <span class='softaculous_pro_suggestion'><?php echo $image_suggestion;?></span> <?php endforeach; ?> <?php endif; ?> </div> </div> </div > <div class="softaculous-ai-images-section"> <div class="softaculous-ai-images-suggestions"> <div class='softaculous-pro-image-buttons'> <button class="softaculous-suggested-images active" data-slug='suggested_image'><?php echo 'Search Results';?></button> <button class="softaculous-upload-image" data-slug='upload_image'><?php echo 'Upload your Images';?></button> <button class="softaculous-selected-image" data-slug='selected_image'> <?php echo 'Selected Images';?> </button> <span class='softaculous-pro-selected-image-count'><?php echo $selected_images_count; ?></span> </div> <br /> <p style="display: inline-block;background-color: #fff3cd;color: #856404;padding: 8px 16px;border-radius: 4px;border: 1px solid #ffeeba;max-width: 100%;white-space: nowrap;"> <?php echo 'Select <b>10–15</b> images from the collection below, or upload your own.';?> </p> <!-- <span class='softaculous-pro-selected-image-count'><?php echo $selected_images_count; ?></span> --> </div> <div class="softaculous-ai-images-all"> <div class='softaculous-ai-images-rows softaculous-active-section'></div> <div class='softaculous-upload-placeholder'> <div class="softaculous-pro-image-success softaculous-pro-alert softaculous-pro-alert-success" style='text-align:left; display:none; '> <p style='margin: 0px; font-size:14px;'><?php echo 'Image(s) selected successfully'; ?></p> <span class="softaculous-alert-dismissable dashicons dashicons-no" style='cursor: pointer;'></span> </div> <div class="softaculous-upload-box"> <h2><?php echo 'Upload File' ;?></h2> <div class="softaculous-upload-area"> <p id="upload_area"><?php echo '<strong>Click here to upload images</strong>' ;?></p> <input type="file" id="file_input"> </div> </div> </div> <div class='softaculous-selected-images-rows'> <p class='softaculous-placeholder' style="<?php echo empty($selected_images) ? 'display:block' : 'display:none'; ?>"><?php echo 'You have not selected any image.'; ?></p> <?php if(!empty($selected_images)):?> <?php foreach ($selected_images as $image): if(!empty($image['image_id'])) $softaculous_pro_wp_img = []; ?> <div class="softaculous-selected-image"> <?php if (!empty($softaculous_pro_wp_img)): ?> <img src="<?php echo $softaculous_pro_wp_img; ?>" data-selected-id="<?php echo $image['image_id']; ?>" alt="<?php echo 'image' ?>"> <?php else: ?> <img src="<?php echo esc_url_php($image['image_url']); ?>" data-selected-id="<?php echo $image['image_id']; ?>" alt="Selected Image" loading="lazy"> <?php endif; ?> <div class="softaculous-remove-selected"> <span>✖</span> </div> </div> <?php endforeach;?> <?php endif; ?> </div> </div> </div> </div> <div class="softaculous-pro-wizard-buttons"> <button onclick="softaculous_pro_prev_handler(this)" data-step="contact" class="step_btn step_prev_btn"><?php echo 'Previous Step'; ?> </button> <button class="step_btn step_next_btn" data-step="import_theme" onclick="softaculous_pro_next_handler(this)"><?php echo 'Continue'; ?> <span class="dashicons dashicons-arrow-right-alt next-handler-icon"></span><span class="softaculous-next-loading" style="display:none"></span> </button> </div> </div> <!-- Step Import theme --> <div class="softaculous-pro-wizard-inner" data-panel="import_theme"> <?php softaculous_pro_templates(); ?> </div> </div> </div> <?php } ?>