getSettings(); $theme = $settings['global']['theme']; $themeConfig = json_decode( file_get_contents('../content/themes/' . $theme . '/theme.json'), true ); //check to see if dynamic rendering is active if ( isset($settings['global']['dynamicRender']) && $settings['global']['dynamicRender'] === 'true' ) { $result = [ 'message' => "Dynamic Render Active! You're good!", 'type' => 'RENDER_SUCCESS', ]; } else { $render = new Render(); if (isset($themeConfig['render'])) { //rendering for one page sites if (!$themeConfig['render'] || $themeConfig['render'] === 'false') { $render->renderIndex(); $result = [ 'message' => 'Index Rendered. HAND CLAPS', 'type' => 'RENDER_SUCCESS', ]; } else { $render->renderTags(); $render->renderArchive(); $render->renderPages(); $result = [ 'message' => 'Site Rendered. GOOD EFFORT', 'type' => 'RENDER_SUCCESS', ]; } } else { // just incase the render flag is missing $render->renderTags(); $render->renderArchive(); $render->renderPages(); $result = [ 'message' => 'Site Rendered. GOOD EFFORT', 'type' => 'RENDER_SUCCESS', ]; } } //if render flag is set and false, just render index page for one page sites //otherwise, render all pages according to theme template files break; case 'add-avatar': $result = ImagesAPI::uploadImage($request, 'avatar'); break; case 'add-feature-background': $result = ImagesAPI::uploadImage($request, 'background'); break; case 'sync': Settings::sync($body); $result = [ 'message' => "Settings Synced. You're doing great!", 'type' => 'settingsUpdated', ]; break; case 'nav-sync': Settings::navSync($body); $result = [ 'message' => 'Navigation updated. Very slick!', 'type' => 'menuUpdated', ]; break; default: $result = [ 'message' => "Hm, no task. That's unfortunate", 'type' => 'TASK_NONE', ]; break; } return $result; } public static function getInfo($request, $args) { $task = $args['fourth']; switch ($task) { case 'site': $config = new Settings(); $settings = $config->getSettings(); $data = [ 'title' => $settings['global']['title'], 'base_url' => $settings['global']['base_url'], 'description' => $settings['global']['descriptions'], ]; $result = [ 'message' => 'Settings Found', 'type' => 'GET_SETTINGS', 'data' => $data, ]; break; case 'member': if (Session::active()) { $member = $member = Session::get('member'); $data = ['handle' => $member['handle'], 'email' => $member['email']]; $result = [ 'message' => 'Member Info Found', 'type' => 'GET_MEMBER_INFO', 'data' => $data, ]; } else { $result = [ 'message' => "Not logged in. C'mon, bruh", 'type' => 'TASK_NONE', ]; } break; default: $result = [ 'message' => 'No Settings found. Frowny Face', 'type' => 'TASK_NONE', ]; break; } return $result; } public static function createBackup() { $result = Maintenance::makeBackup(); return $result; } }