Advertisement
GfxNull

setup.php

Aug 11th, 2016
432
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.23 KB | None | 0 0
  1. <?php
  2. ini_set('display_errors', 0);
  3. $protocol = stripos($_SERVER['SERVER_PROTOCOL'],'https') === true ? 'https://' : 'http://';
  4. $cur_url = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
  5. $cur_url_arr=explode('/installer',$cur_url);
  6. $basepath = $cur_url_arr[0].'/';
  7.  
  8. /*** Checking STARTS ***/
  9. $ckText = file_get_contents('check_install.txt');
  10. if( trim($ckText) != 'no' ) {
  11. echo '<script>window.location="'.$basepath.'"</script>';
  12. }
  13. /*** Checking ENDS ***/
  14.  
  15. if(isset($_POST['db_submit'])) {
  16. if($_POST['db_name'] != '' && $_POST['db_uname'] != '' && $_POST['db_pwd'] != '' && $_POST['admin_email'] != '' && $_POST['admin_pwd'] != '' && $_POST['db_host'] != '') {
  17. $path=dirname(__FILE__);
  18. $abs_path=explode('/installer',$path);
  19.  
  20. $pathToDBfile = $abs_path[0].'/application/config/';
  21.  
  22. /***** Check DB Details STARTS ******/
  23.  
  24. $testConnection = mysqli_connect($_POST['db_host'], $_POST['db_uname'], $_POST['db_pwd'],$_POST['db_name']);
  25.  
  26. /***** Check DB Details ENDS ******/
  27.  
  28. if ($testConnection) {
  29.  
  30. // Check email
  31. if (filter_var($_POST['admin_email'], FILTER_VALIDATE_EMAIL)) {
  32. // password length
  33. if(strlen($_POST['admin_pwd']) > 7) {
  34.  
  35. /*** DB config STARTS ***/
  36. $dummyDB = file_get_contents('db_dummy.txt');
  37.  
  38. $final_db_text = str_replace('{DB_UNAME}',$_POST['db_uname'],$dummyDB);
  39. $final_db_text = str_replace('{DB_NAME}',$_POST['db_name'],$final_db_text);
  40. $final_db_text = str_replace('{DB_PASSWORD}',$_POST['db_pwd'],$final_db_text);
  41. $final_db_text = str_replace('{DB_HOST}',$_POST['db_host'],$final_db_text);
  42.  
  43. file_put_contents($pathToDBfile.'database.php',$final_db_text);
  44. /*** DB config ENDS ***/
  45.  
  46. /*** Base config STARTS ***/
  47. $dummyConfig = file_get_contents('config_dummy.txt');
  48.  
  49. $final_config_text = str_replace('{BASE_URL}',$basepath,$dummyConfig);
  50. file_put_contents($pathToDBfile.'config.php',$final_config_text);
  51. /*** Base config ENDS ***/
  52.  
  53. /*** Checking Text STARTS ***/
  54. file_put_contents('check_install.txt','yes');
  55. /*** Checking Text ENDS ***/
  56.  
  57. /**** Import SQL file STARTS *******/
  58.  
  59. $default_sqlfile = 'default.sql';
  60.  
  61. mysql_connect($_POST['db_host'], $_POST['db_uname'], $_POST['db_pwd']);
  62. mysql_select_db($_POST['db_name']);
  63.  
  64. // Temporary variable, used to store current query
  65. $templine = '';
  66. // Read in entire file
  67. $lines = file($default_sqlfile);
  68. // Loop through each line
  69. foreach ($lines as $line)
  70. {
  71. // Skip it if it's a comment
  72. if (substr($line, 0, 2) == '--' || $line == '')
  73. continue;
  74.  
  75. // Add this line to the current segment
  76. $templine .= $line;
  77. // If it has a semicolon at the end, it's the end of the query
  78. if (substr(trim($line), -1, 1) == ';')
  79. {
  80. // Perform the query
  81. mysql_query($templine);
  82. // Reset temp variable to empty
  83. $templine = '';
  84. }
  85. }
  86. /**** Import SQL file ENDS *******/
  87.  
  88. /***** Create admin account STARTS ******/
  89.  
  90. $admin_sql = "INSERT INTO ts_user (user_uname,user_email, user_pwd, user_status, user_accesslevel) VALUES ('admin', '".$_POST['admin_email']."', '".md5($_POST['admin_pwd'])."', '1', '1')";
  91.  
  92. mysql_query($admin_sql);
  93.  
  94. /***** Create admin account ENDS ******/
  95.  
  96. /***** Update Image URL STARTS ******/
  97. $logo_url = $basepath.'assets/images/web/logo.png';
  98. $logo_url_sql = "UPDATE ts_settings SET value_text='".$logo_url."' WHERE key_text='logo_url'";
  99.  
  100. mysql_query($logo_url_sql);
  101.  
  102. $favicon_url = $basepath.'assets/images/web/favicon.ico';
  103. $favicon_url_sql = "UPDATE ts_settings SET value_text='".$favicon_url."' WHERE key_text='favicon_url'";
  104.  
  105. mysql_query($favicon_url_sql);
  106.  
  107. $preloader_url = $basepath.'assets/images/web/preloader.gif';
  108. $preloader_url_sql = "UPDATE ts_settings SET value_text='".$preloader_url."' WHERE key_text='preloader_url'";
  109.  
  110. mysql_query($preloader_url_sql);
  111.  
  112. /***** Update Image URL ENDS ******/
  113.  
  114. echo '<script>window.location="'.$basepath.'authenticate/login"</script>';
  115.  
  116. }
  117. else {
  118. $message = '<span style="color:red;">Password should be more than 7 characters.</span>';
  119. }
  120. }
  121. else {
  122. $message = '<span style="color:red;">Email is not correct.</span>';
  123. }
  124.  
  125. }
  126. else {
  127. $message = '<span style="color:red;">Database connection failed.</span>';
  128. }
  129. }
  130. else {
  131. $message = '<span style="color:red;">Fields can not be empty.</span>';
  132. }
  133. }
  134. ?>
  135. <!DOCTYPE html>
  136. <!--
  137. Script Name: Themeportal Script
  138. Version: 1.0
  139. Author: kamleshyadav
  140. Website: http://himanshusofttech.com
  141. -->
  142. <!--[if IE 8]> <html lang="en" class="ie8 no-js"> <![endif]-->
  143. <!--[if IE 9]> <html lang="en" class="ie9 no-js"> <![endif]-->
  144. <!--[if IE 10]> <html lang="en" class="ie10 no-js"> <![endif]-->
  145. <!--[if !IE]><!-->
  146. <html lang="en">
  147. <!--
  148. <![endif]-->
  149. <!-- BEGIN HEAD -->
  150. <head>
  151. <meta charset="utf-8" />
  152. <title> ThemePortal - Installer Page</title>
  153. <meta content="width=device-width, initial-scale=1.0" name="viewport" />
  154. <meta name="author" content="KamleshYadav"/>
  155. <meta name="MobileOptimized" content="320">
  156. <!--srart theme style -->
  157. <link href="<?php echo $basepath;?>adminassets/css/admin_main.css" rel="stylesheet" type="text/css"/>
  158. <!-- end theme style -->
  159. <!-- favicon links -->
  160. <link rel="shortcut icon" type="image/png" href="<?php echo $basepath;?>webimage/favicon.ico" />
  161. </head>
  162. <!-- Header End -->
  163. <!-- Body Start -->
  164. <body>
  165. <!-- add user modal start -->
  166. <!-- wrapper start -->
  167. <div class="th_installer_panel">
  168. <div class="th_form_wrapper">
  169. <div class="th_theme_logo">
  170. <a href="javascript:;"><img src="<?php echo $basepath;?>webimage/logo.png" class="img-responsive" alt="Themeportal"></a>
  171. <h6 id="errText"> <?php echo isset($message) ? $message : 'Welcome to Theme Portal.' ;?> </h6>
  172. </div>
  173. <form action="" method="post">
  174. <div class="th_installer_form">
  175. <h4>database detail</h4>
  176. <div class="form-group">
  177. <div class="col-lg-4 col-md-4 col-sm-4 col-xs-4"><label>Database Host</label></div>
  178. <div class="col-lg-8 col-md-8 col-sm-8 col-xs-8"><input type="text" class="form-control" name="db_host" value="<?php echo isset($_POST['db_host']) ? $_POST['db_host'] : 'localhost';?>" />
  179. <!--<span class="help_text">helping text here</span>-->
  180. </div>
  181. </div>
  182. <div class="form-group">
  183. <div class="col-lg-4 col-md-4 col-sm-4 col-xs-4"><label>Database Name</label></div>
  184. <div class="col-lg-8 col-md-8 col-sm-8 col-xs-8"><input type="text" class="form-control" name="db_name" value="<?php echo isset($_POST) ? $_POST['db_name'] : '';?>" />
  185. <!--<span class="help_text">helping text here</span>-->
  186. </div>
  187. </div>
  188. <div class="form-group">
  189. <div class="col-lg-4 col-md-4 col-sm-4 col-xs-4"><label>Database Username</label></div>
  190. <div class="col-lg-8 col-md-8 col-sm-8 col-xs-8"><input type="text" class="form-control" name="db_uname" value="<?php echo isset($_POST) ? $_POST['db_uname'] : '';?>" />
  191. </div>
  192. </div>
  193. <div class="form-group">
  194. <div class="col-lg-4 col-md-4 col-sm-4 col-xs-4"><label>Database Password</label></div>
  195. <div class="col-lg-8 col-md-8 col-sm-8 col-xs-8"><input type="password" class="form-control" name="db_pwd" value="<?php echo isset($_POST) ? $_POST['db_pwd'] : '';?>" />
  196. </div>
  197. </div>
  198. </div>
  199. <div class="th_installer_form">
  200. <h4>login detail</h4>
  201. <div class="form-group">
  202. <div class="col-lg-4 col-md-4 col-sm-4 col-xs-4"><label>Admin Email</label></div>
  203. <div class="col-lg-8 col-md-8 col-sm-8 col-xs-8"><input type="text" class="form-control" name="admin_email" value="<?php echo isset($_POST) ? $_POST['admin_email'] : '';?>" /></div>
  204. </div>
  205. <div class="form-group">
  206. <div class="col-lg-4 col-md-4 col-sm-4 col-xs-4"><label>Admin Password</label></div>
  207. <div class="col-lg-8 col-md-8 col-sm-8 col-xs-8"><input type="password" class="form-control" name="admin_pwd" value="<?php echo isset($_POST) ? $_POST['admin_pwd'] : '';?>" /></div>
  208. </div>
  209. <div class="col-lg-12 col-md-12">
  210. <input type="submit" class="btn theme_btn" name="db_submit" value="Set up Mysite" />
  211. </div>
  212. </div>
  213. </form>
  214. </div>
  215. </div>
  216.  
  217. <!-- wrapper end -->
  218. <script type="text/javascript" src="<?php echo $basepath;?>adminassets/js/jquery-1.12.3.js"></script>
  219.  
  220. <script type="text/javascript">
  221. jQuery(document).ready(function($) {
  222. var h = $(window).innerHeight();
  223. $(".th_installer_panel").css("height", h);
  224. });
  225. </script>
  226. </body>
  227. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement