Example #1
0
 /**
  * Initialize all default tpl tags.
  */
 private function initialize()
 {
     $this->tpl = new RainTPL();
     try {
         $version = ApplicationUtils::checkUpdate(shaarli_version, $GLOBALS['config']['UPDATECHECK_FILENAME'], $GLOBALS['config']['UPDATECHECK_INTERVAL'], $GLOBALS['config']['ENABLE_UPDATECHECK'], isLoggedIn(), $GLOBALS['config']['UPDATECHECK_BRANCH']);
         $this->tpl->assign('newVersion', escape($version));
         $this->tpl->assign('versionError', '');
     } catch (Exception $exc) {
         logm($GLOBALS['config']['LOG_FILE'], $_SERVER['REMOTE_ADDR'], $exc->getMessage());
         $this->tpl->assign('newVersion', '');
         $this->tpl->assign('versionError', escape($exc->getMessage()));
     }
     $this->tpl->assign('feedurl', escape(index_url($_SERVER)));
     $searchcrits = '';
     // Search criteria
     if (!empty($_GET['searchtags'])) {
         $searchcrits .= '&searchtags=' . urlencode($_GET['searchtags']);
     }
     if (!empty($_GET['searchterm'])) {
         $searchcrits .= '&searchterm=' . urlencode($_GET['searchterm']);
     }
     $this->tpl->assign('searchcrits', $searchcrits);
     $this->tpl->assign('source', index_url($_SERVER));
     $this->tpl->assign('version', shaarli_version);
     $this->tpl->assign('scripturl', index_url($_SERVER));
     $this->tpl->assign('pagetitle', 'Shaarli');
     $this->tpl->assign('privateonly', !empty($_SESSION['privateonly']));
     // Show only private links?
     if (!empty($GLOBALS['title'])) {
         $this->tpl->assign('pagetitle', $GLOBALS['title']);
     }
     if (!empty($GLOBALS['titleLink'])) {
         $this->tpl->assign('titleLink', $GLOBALS['titleLink']);
     }
     if (!empty($GLOBALS['pagetitle'])) {
         $this->tpl->assign('pagetitle', $GLOBALS['pagetitle']);
     }
     $this->tpl->assign('shaarlititle', empty($GLOBALS['title']) ? 'Shaarli' : $GLOBALS['title']);
     if (!empty($GLOBALS['plugin_errors'])) {
         $this->tpl->assign('plugin_errors', $GLOBALS['plugin_errors']);
     }
 }
Example #2
0
function ban_canLogin()
{
    $ip = $_SERVER["REMOTE_ADDR"];
    $gb = $GLOBALS['IPBANS'];
    if (isset($gb['BANS'][$ip])) {
        // User is banned. Check if the ban has expired:
        if ($gb['BANS'][$ip] <= time()) {
            // Ban expired, user can try to login again.
            logm($GLOBALS['config']['LOG_FILE'], $_SERVER['REMOTE_ADDR'], 'Ban lifted.');
            unset($gb['FAILURES'][$ip]);
            unset($gb['BANS'][$ip]);
            file_put_contents($GLOBALS['config']['IPBANS_FILENAME'], "<?php\n\$GLOBALS['IPBANS']=" . var_export($gb, true) . ";\n?>");
            return true;
            // Ban has expired, user can login.
        }
        return false;
        // User is banned.
    }
    return true;
    // User is not banned.
}