<?php
/*
 * 3words configuration file
 */

$MYSQL_SERVER   = "localhost";
$MYSQL_DATABASE = "";
$MYSQL_USERNAME = "";
$MYSQL_PASSWORD = "";

// Please comment or delete the next line.
die('Please edit config.php!');

// Don't touch anything below here.

$sql = new mysqli($MYSQL_SERVER,
                  $MYSQL_USERNAME,
                  $MYSQL_PASSWORD,
                  $MYSQL_DATABASE);

if ($sql->connect_errno) {
  echo '<!-- Failed to connect to MySQL server: ' . $sql->connect_error . ' ('
        . $sql->connect_errno . ') --><style>*{background:red !important;}'
        . '</style>';
}

// some useful functions
function gen_salt($length, $charset='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789') {
  $str = '';
  $count = strlen($charset);
  while ($length--) {
    $str .= $charset[mt_rand(0, $count-1)];
  }
  return $str;
}

function crypt_password ($pass, $salt) {
  return crypt($pass, "$2y$08$" . $salt);
}

// the
session_start();

if (!isset($_SESSION['logged_in'])) {
  $_SESSION['logged_in'] = false;
}

if (!isset($notemplate)) {
  require_once 'ext/rain.tpl.class.php';
  
  raintpl::configure("path_replace", false);
  raintpl::configure("tpl_dir", "views/");
  
  $tpl = new RainTPL;
  
  // new words counter
  $new_words_count = -1;
  if ($_SESSION['logged_in'] === true) {
    $res = $sql->query("SELECT `id` FROM `words` WHERE `new` = 1;");
    $new_words_count = $res->num_rows;
  }
  
  // total words count
  $res = $sql->query("SELECT `id` FROM `words`;");
  $words_total_count = $res->num_rows * 3;
  
  // site name
  $res = $sql->query("SELECT `value` FROM `config` WHERE `key` = \"sitename\";")->fetch_assoc();
  $site_name = htmlspecialchars($res['value']);
  
  // user name
  $res = $sql->query("SELECT `value` FROM `config` WHERE `key` = \"username\";")->fetch_assoc();
  $user_name = htmlspecialchars($res['value']);
  
  // the flash
  $message = null;
  if (isset($_SESSION['flash'])) {
    $message = $_SESSION['flash'];
    unset($_SESSION['flash']);
  }
  
  $tpl->assign("logged_in", $_SESSION['logged_in']);
  $tpl->assign("site_name", $site_name);
  $tpl->assign("user_name", $user_name);
  $tpl->assign("words_total", $words_total_count);
  $tpl->assign("inbox_count", $new_words_count);
  $tpl->assign("message", $message);
}