예제 #1
1
function cleaner()
{
	global $data_filename, $max_entries;
	if ($max_entries == 0) return false;
	$data = array();
	$data_content = get_file_content($data_filename);
	if ($data_content !== NULL) $data = unserialize($data_content);
	while (count($data) >= $max_entries) $data = del_id($data, array(0));
	$data_content = serialize($data);
	put_file_content($data_filename, $data_content);
	return true;
}
예제 #2
0
<?php

require 'api.php';
require 'config.inc.php';
$con = mysqli_connect(DB_IP, DB_USERNAME, DB_PASSWORD);
mysqli_select_db($con, DB_NAMEi);
$version = get_version();
$local_v = mysqli_fetch_array(mysqli_query($con, 'SELECT setting FROM tc_conf WHERE uid=1'))[0];
$file_list = get_update_file();
if (isset($_POST['confirm'])) {
    if (!($version == $local_v)) {
        if ($file_list[0] !== '') {
            $file_content = array();
            for ($i = 0; $i < count($file_list); $i++) {
                $file_content[$i] = get_file_content('https://raw.githubusercontent.com/racaljk/tieba_cloud/master/' . $file_list[$i]);
                $url = dirname(dirname(__FILE__)) . "\\" . str_replace('/', "\\", $file_list[$i]);
                $fp = fopen($url, 'w');
                fwrite($fp, $file_content[$i]);
                fclose($fp);
                $fp_v = fopen('ver.php', 'w');
                $content = '<?php
				define("TC_VER","' . get_version() . '")?>';
                fwrite($fp_v, $content);
                fclose($fp_v);
            }
            header('location:../index.php');
        }
    }
}
?>
<head>	<meta http-equiv="content-type" content="text/html; charset=UTF-8"><meta charset="utf-8">
예제 #3
0
function get_self_image()
{
	global $user, $users_filename;
	$users = array();
	$users_content = get_file_content($users_filename);
	if ($users_content !== NULL) $users = unserialize($users_content);
	foreach ($users as $id => $info) {
		$some_user = unserialize($info);
		if ($user == $some_user['login']) {
			$self_image = ($some_user['self_image']) ? $some_user['self_image'] : NULL;
		}
	}
	return $self_image;
}
예제 #4
0
<?
define("FILE", "log.php");

require "config.php";
require "functions.php";

$data = array();
$data_content = get_file_content($data_filename);
if ($data_content !== NULL) $data = unserialize($data_content);
$entries_num = count($data);

if ($_GET['order'] and preg_match("/^(a|de)sc$/i", $_GET['order'])) $order = $_GET['order'];
	elseif ($_COOKIE['s_order'] and preg_match("/^(a|de)sc$/i", $_COOKIE['s_order'])) $order = $_COOKIE['s_order'];
		else $order = "desc";
setcookie("s_order", $order, time()+7776000);

if ($entries_on_page > 0) {
	$entries_shown = $entries_on_page;
	$pages_num = ceil($entries_num/$entries_on_page);
}
else {
	$entries_shown = $entries_num;
	$pages_num = 1;
}

if ((int)$_GET['page'] < 1) $page = 1;
	elseif ((int)$_GET['page'] > $pages_num) $page = $pages_num;
		else $page = (int)$_GET['page'];
$path = ($page > 1) ? FILE."?page=$page" : FILE;

if ($pages_num > 1) {
예제 #5
0
		case 3: $error_text = "Такой логин уже используется, придумайте другой."; break;
		case 4: $error_text = "Вы ввели некорректный e-mail."; break;
		default: $error_text = ""; break;
	}
}
if ($retrieve and $error) {
	switch ($error) {
		case 1: $error_text = "Такого пользователя нет."; break;
	 	case 2: $error_text = "Нет возможности восстановить пароль: e-mail не&nbsp;был введен при регистрации."; break;
		case 3: $error_text = "На этого пользователя записан другой e-mail адрес."; break;
		default: $error_text = ""; break;
	}
}

$users = array();
$users_content = get_file_content($users_filename);
if ($users_content !== NULL) $users = unserialize($users_content);

if ($retrieve and $_POST['send']) {
	$user = array();
	$user['r_login'] = strtolower($_POST['r_login']);
	$user['r_email'] = trim($_POST['r_email']);
	foreach ($users as $key => $entrie) {
		$some_user = unserialize($entrie);
		if ($user['r_login'] == $some_user['login']) {
			$this_user = unserialize($entrie);
		}
	}
	if (!$this_user['password']) error_message("send", 1);
	if (!$this_user['email']) error_message("send", 2);
	if (strtolower($user['r_email']) == strtolower($this_user['email'])) {
예제 #6
0
 /**
  * @param string $filename
  * @return int userid found in watermark
  */
 static function getfilewm($filename)
 {
     if (file_exists($filename)) {
         return self::getwm(get_file_content($filename));
     }
     return false;
 }
예제 #7
0
function get_css_import($css_file)
{
    global $css_path;
    $css_file = strpos($css_file, '//') === false ? h_parse_url($_SESSION['url']) . '/' . $css_file : $css_file;
    if (substr($css_file, 0, 4) != 'http') {
        $css_file = 'http:' . $css_file;
    }
    $data = file_get_contents($css_file);
    $css_info = pathinfo($css_file);
    $css_dir = $css_info['dirname'];
    $output = array();
    foreach (explode("url(", $data) as $i => $a) {
        // Split string into array of substrings at boundaries of "url(" and loop through it
        if ($i) {
            $a = explode(")", $a);
            // Split substring into array at boundaries of ")"
            $url = trim(str_replace(array('"', "'"), "", $a[0]));
            // Remove " and ' characters
            $url_info = pathinfo($url);
            $save_dir = $css_path . "/" . $url_info['dirname'];
            if (!is_dir($save_dir)) {
                mkdir($save_dir, 0777, true);
            }
            if ($url_info['extension'] == 'css') {
                $css_url = $css_dir . '/' . $url;
                $path_info = pathinfo($stylesheet_url);
                $file_path = $save_dir . '/' . $url_info['filename'] . "." . $url_info['extension'];
                file_put_contents($file_path, get_file_content($css_url));
                array_push($output, $css_url);
            }
        }
    }
    return $output;
}
예제 #8
0
	setcookie("s_style", $current_style, time()+7776000, $matches[1]);

	$files = array(); $styles_error = 0;
	if (!$dir = @opendir("styles")) {
		if (!file_exists("styles")) $styles_error = 1;
			else $styles_error = 2;
	}

	if (!$styles_error) {
		while ($file = readdir($dir)) {
			if (!is_dir("styles/$file") and !($file == "." or $file == "..")) $files[] = $file;
		}
		closedir($dir);

		for ($i=0; $i<count($files); $i++) {
			$style_content = get_file_content("styles/".$files[$i]);
			$style_name = trim(substr($style_content, strpos($style_content, "/*")+3, (strpos($style_content, "*/")-1)-(strpos($style_content, "/*")+3)));
			$style_codename = substr($files[$i], 0, strpos($files[$i], "."));
			$style_href = "?style=".$style_codename;
			$styles_list .= ($current_style != $style_codename) ? "<a href=\"".$style_href."\">".$style_name."</a>" : $style_name;
			if ($i+1 < count($files)) $styles_list .= " &middot; ";
		}
	}
}

if ($entries_on_page > 0) {
	$entries_shown = $entries_on_page;
	$pages_num = ceil($entries_num/$entries_on_page);
}
else {
	$entries_shown = $entries_num;
예제 #9
0
             mkdir($image_path, 0777, true);
         }
         $images_name = $images_info['filename'] . '.' . $images_info['extension'];
         $images_url = $_SESSION['css_url'] . '/' . $bg_images;
         file_put_contents($image_path . '/' . $images_name, get_file_content($images_url));
         $_SESSION['img'] = $imgs;
         echo '<script>location.reload();</script>';
         exit;
     } else {
         show_image_download(false);
     }
 } else {
     if (count($arrayCss) > 0) {
         $css_file = array_pop($arrayCss);
         if ($css_file) {
             $css_content = get_file_content($css_file);
             $re = '/url\\(\\s*[\'"]?(\\S*\\.(?:jpe?g|gif|png|otf|eot|svg|ttf|woff))[\'"]?\\s*\\)[^;}]/i';
             if (preg_match_all($re, $css_content, $matches)) {
                 $imgs = $matches[1];
             }
             $_SESSION['img'] = $imgs;
             $file_info = pathinfo($css_file);
             $_SESSION['css_url'] = $file_info['dirname'];
         }
         $_SESSION['arrayCss'] = $arrayCss;
         echo '<script>location.reload();</script>';
         exit;
     }
 }
 $step++;
 $_SESSION['step'] = $step;
예제 #10
0
 // unknown file, skip it
 if (FALSE !== strpos($fname, ".gz")) {
     $dbg = $dbg . "archive {$fname}\n";
     continue;
 }
 // file is archive (empty? broken?)
 $realfname = $fname;
 $fname = str_replace("/ppreports/outgoing/", "", $realfname);
 //$fname=str_replace(".gz", "", $fname);
 if (is_file_already_loaded($fname, $merchant_cube_id)) {
     continue;
 }
 // file already loaded
 echo "get file {$realfname}\n";
 $stime = get_timer();
 $txn = get_file_content($paypal_sftp_login, $paypal_sftp_password, $realfname, $client_dir, $fname);
 // get file from sftp
 echo " time " . (get_timer() - $stime) / 1 . " sec ";
 if (FALSE !== strpos($fname, "TRR-")) {
     echo " processing TRR file {$fname}:";
     $fid = mark_file_as_processed($fname, $merchant_cube_id, 1);
     $records = process_paypal_txns($txn, $dbconn, $merchant_cube_id, $fid);
     echo " {$records} ";
     $data_modified = true;
 }
 if (FALSE !== strpos($fname, "DDR-")) {
     echo " processing DDR file {$fname}:";
     $fid = mark_file_as_processed($fname, $merchant_cube_id, 2);
     $records = process_paypal_cases($txn, $dbconn, $merchant_cube_id, $fid);
     echo " {$records} ";
     $data_modified = true;
예제 #11
0
	$pages_list .= "</b>";
}

if ($order == "asc") {
	$start_num = ($page-1) * $entries_shown;
	$finish_num = ($page * $entries_shown < $entries_num) ? $page * $entries_shown : $entries_num;
}
elseif ($order == "desc") {
	$start_num = ($page * $entries_shown < $entries_num) ? $entries_num - $page * $entries_shown : 0;
	$finish_num = $entries_num - ($page-1) * $entries_shown;
}
$entries_shown = $finish_num - $start_num;

if ($filters_enabled) {
	$filters = array();
	$filters_content = get_file_content($filters_filename);
	if ($filters_content !== NULL) $filters = unserialize($filters_content);
	$filters_num = count($filters);
}

$hosts = array(); $new_num = 0; $all_new_num = 0;
foreach ($data as $key => $entrie) {
	$sniffed = unserialize($entrie);
	if (!$sniffed['old']) $all_new_num++;
	if ($key < $start_num or $key >= $finish_num) continue;
	if (!$sniffed['old']) $new_num++;
	preg_match("/^https?:\/\/([^\/]+)/i", $sniffed['referer'], $matches);
	$sniffed['host'] = $matches[1];
	if (!empty($sniffed['host']) and !in_array($sniffed['host'], $hosts)) $hosts[] = $sniffed['host'];
	if (empty($sniffed['referer'])) $emptyreferer = true;
	if (empty($sniffed['query'])) $emptyquery = true;