mirror of
https://github.com/WhatCD/Gazelle.git
synced 2024-12-13 02:46:30 +00:00
Empty commit
This commit is contained in:
parent
d002af2f86
commit
0c3c009079
@ -16,10 +16,10 @@
|
|||||||
as get, but cache_value only takes the key, the value, and the duration
|
as get, but cache_value only takes the key, the value, and the duration
|
||||||
(no zlib).
|
(no zlib).
|
||||||
|
|
||||||
//unix sockets
|
// Unix sockets
|
||||||
memcached -d -m 5120 -s /var/run/memcached.sock -a 0777 -t16 -C -u root
|
memcached -d -m 5120 -s /var/run/memcached.sock -a 0777 -t16 -C -u root
|
||||||
|
|
||||||
//tcp bind
|
// TCP bind
|
||||||
memcached -d -m 8192 -l 10.10.0.1 -t8 -C
|
memcached -d -m 8192 -l 10.10.0.1 -t8 -C
|
||||||
|
|
||||||
|*************************************************************************/
|
|*************************************************************************/
|
||||||
@ -28,8 +28,7 @@
|
|||||||
die('Memcache Extension not loaded.');
|
die('Memcache Extension not loaded.');
|
||||||
}
|
}
|
||||||
|
|
||||||
class CACHE extends Memcache
|
class CACHE extends Memcache {
|
||||||
{
|
|
||||||
/**
|
/**
|
||||||
* Torrent Group cache version
|
* Torrent Group cache version
|
||||||
*/
|
*/
|
||||||
@ -64,51 +63,51 @@ function __construct($Servers) {
|
|||||||
|
|
||||||
// Allows us to set an expiration on otherwise perminantly cache'd values
|
// Allows us to set an expiration on otherwise perminantly cache'd values
|
||||||
// Useful for disabled users, locked threads, basically reducing ram usage
|
// Useful for disabled users, locked threads, basically reducing ram usage
|
||||||
public function expire_value($Key, $Duration=2592000) {
|
public function expire_value($Key, $Duration = 2592000) {
|
||||||
$StartTime=microtime(true);
|
$StartTime = microtime(true);
|
||||||
$this->set($Key, $this->get($Key), $Duration);
|
$this->set($Key, $this->get($Key), $Duration);
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Wrapper for Memcache::set, with the zlib option removed and default duration of 30 days
|
// Wrapper for Memcache::set, with the zlib option removed and default duration of 30 days
|
||||||
public function cache_value($Key, $Value, $Duration=2592000) {
|
public function cache_value($Key, $Value, $Duration = 2592000) {
|
||||||
$StartTime=microtime(true);
|
$StartTime = microtime(true);
|
||||||
if (empty($Key)) {
|
if (empty($Key)) {
|
||||||
trigger_error("Cache insert failed for empty key");
|
trigger_error("Cache insert failed for empty key");
|
||||||
}
|
}
|
||||||
if (!$this->set($Key, $Value, 0, $Duration)) {
|
if (!$this->set($Key, $Value, 0, $Duration)) {
|
||||||
trigger_error("Cache insert failed for key $Key");
|
trigger_error("Cache insert failed for key $Key");
|
||||||
}
|
}
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Wrapper for Memcache::add, with the zlib option removed and default duration of 30 days
|
// Wrapper for Memcache::add, with the zlib option removed and default duration of 30 days
|
||||||
public function add_value($Key, $Value, $Duration=2592000) {
|
public function add_value($Key, $Value, $Duration = 2592000) {
|
||||||
$StartTime=microtime(true);
|
$StartTime = microtime(true);
|
||||||
$Added=$this->add($Key, $Value, 0, $Duration);
|
$Added = $this->add($Key, $Value, 0, $Duration);
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
return $Added;
|
return $Added;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function replace_value($Key, $Value, $Duration=2592000) {
|
public function replace_value($Key, $Value, $Duration = 2592000) {
|
||||||
$StartTime=microtime(true);
|
$StartTime = microtime(true);
|
||||||
$this->replace($Key, $Value, false, $Duration);
|
$this->replace($Key, $Value, false, $Duration);
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function get_value($Key, $NoCache=false) {
|
public function get_value($Key, $NoCache = false) {
|
||||||
if (!$this->InternalCache) {
|
if (!$this->InternalCache) {
|
||||||
$NoCache = true;
|
$NoCache = true;
|
||||||
}
|
}
|
||||||
$StartTime=microtime(true);
|
$StartTime=microtime(true);
|
||||||
if (empty($Key)) {
|
if (empty($Key)) {
|
||||||
trigger_error("Cache retrieval failed for empty key");
|
trigger_error('Cache retrieval failed for empty key');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_GET['clearcache']) && $this->CanClear && !Misc::in_array_partial($Key, $this->PersistentKeys)) {
|
if (isset($_GET['clearcache']) && $this->CanClear && !Misc::in_array_partial($Key, $this->PersistentKeys)) {
|
||||||
if ($_GET['clearcache'] == 1) {
|
if ($_GET['clearcache'] == 1) {
|
||||||
//Because check_perms isn't true until loggeduser is pulled from the cache, we have to remove the entries loaded before the loggeduser data
|
// Because check_perms() isn't true until LoggedUser is pulled from the cache, we have to remove the entries loaded before the LoggedUser data
|
||||||
//Because of this, not user cache data will require a secondary pageload following the clearcache to update
|
// Because of this, not user cache data will require a secondary pageload following the clearcache to update
|
||||||
if (count($this->CacheHits) > 0) {
|
if (count($this->CacheHits) > 0) {
|
||||||
foreach (array_keys($this->CacheHits) as $HitKey) {
|
foreach (array_keys($this->CacheHits) as $HitKey) {
|
||||||
if (!Misc::in_array_partial($HitKey, $this->PersistentKeys)) {
|
if (!Misc::in_array_partial($HitKey, $this->PersistentKeys)) {
|
||||||
@ -118,11 +117,11 @@ public function get_value($Key, $NoCache=false) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
$this->delete($Key);
|
$this->delete($Key);
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
return false;
|
return false;
|
||||||
} elseif ($_GET['clearcache'] == $Key) {
|
} elseif ($_GET['clearcache'] == $Key) {
|
||||||
$this->delete($Key);
|
$this->delete($Key);
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
return false;
|
return false;
|
||||||
} elseif (in_array($_GET['clearcache'], $this->CacheHits)) {
|
} elseif (in_array($_GET['clearcache'], $this->CacheHits)) {
|
||||||
unset($this->CacheHits[$_GET['clearcache']]);
|
unset($this->CacheHits[$_GET['clearcache']]);
|
||||||
@ -130,9 +129,9 @@ public function get_value($Key, $NoCache=false) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//For cases like the forums, if a keys already loaded grab the existing pointer
|
// For cases like the forums, if a key is already loaded, grab the existing pointer
|
||||||
if (isset($this->CacheHits[$Key]) && !$NoCache) {
|
if (isset($this->CacheHits[$Key]) && !$NoCache) {
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
return $this->CacheHits[$Key];
|
return $this->CacheHits[$Key];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -140,26 +139,26 @@ public function get_value($Key, $NoCache=false) {
|
|||||||
if ($Return !== false) {
|
if ($Return !== false) {
|
||||||
$this->CacheHits[$Key] = $NoCache ? null : $Return;
|
$this->CacheHits[$Key] = $NoCache ? null : $Return;
|
||||||
}
|
}
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
return $Return;
|
return $Return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Wrapper for Memcache::delete. For a reason, see above.
|
// Wrapper for Memcache::delete. For a reason, see above.
|
||||||
public function delete_value($Key) {
|
public function delete_value($Key) {
|
||||||
$StartTime=microtime(true);
|
$StartTime = microtime(true);
|
||||||
if (empty($Key)) {
|
if (empty($Key)) {
|
||||||
trigger_error("Cache deletion failed for empty key");
|
trigger_error('Cache deletion failed for empty key');
|
||||||
}
|
}
|
||||||
if (!$this->delete($Key)) {
|
if (!$this->delete($Key)) {
|
||||||
//trigger_error("Cache delete failed for key $Key");
|
//trigger_error("Cache delete failed for key $Key");
|
||||||
}
|
}
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function increment_value($Key,$Value=1) {
|
public function increment_value($Key, $Value = 1) {
|
||||||
$StartTime=microtime(true);
|
$StartTime = microtime(true);
|
||||||
$this->increment($Key,$Value);
|
$this->increment($Key, $Value);
|
||||||
$this->Time+=(microtime(true)-$StartTime)*1000;
|
$this->Time += (microtime(true) - $StartTime) * 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------- memcachedb functions ----------//
|
//---------- memcachedb functions ----------//
|
||||||
@ -184,7 +183,7 @@ public function cancel_transaction() {
|
|||||||
$this->MemcacheDBKey = '';
|
$this->MemcacheDBKey = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
public function commit_transaction($Time=2592000) {
|
public function commit_transaction($Time = 2592000) {
|
||||||
if (!$this->InTransaction) {
|
if (!$this->InTransaction) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -261,10 +260,10 @@ public function increment_row($Row, $Values) {
|
|||||||
}
|
}
|
||||||
foreach ($Values as $Key => $Value) {
|
foreach ($Values as $Key => $Value) {
|
||||||
if (!array_key_exists($Key, $UpdateArray)) {
|
if (!array_key_exists($Key, $UpdateArray)) {
|
||||||
trigger_error('Bad transaction key ('.$Key.') for cache '.$this->MemcacheDBKey);
|
trigger_error("Bad transaction key ($Key) for cache ".$this->MemcacheDBKey);
|
||||||
}
|
}
|
||||||
if (!is_number($Value)) {
|
if (!is_number($Value)) {
|
||||||
trigger_error('Tried to increment with non-number ('.$Key.') for cache '.$this->MemcacheDBKey);
|
trigger_error("Tried to increment with non-number ($Key) for cache ".$this->MemcacheDBKey);
|
||||||
}
|
}
|
||||||
$UpdateArray[$Key] += $Value; // Increment value
|
$UpdateArray[$Key] += $Value; // Increment value
|
||||||
}
|
}
|
||||||
@ -316,12 +315,12 @@ public function delete_row($Row) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (!isset($this->MemcacheDBArray[$Row])) {
|
if (!isset($this->MemcacheDBArray[$Row])) {
|
||||||
trigger_error('Tried to delete non-existent row ('.$Row.') for cache '.$this->MemcacheDBKey);
|
trigger_error("Tried to delete non-existent row ($Row) for cache ".$this->MemcacheDBKey);
|
||||||
}
|
}
|
||||||
unset($this->MemcacheDBArray[$Row]);
|
unset($this->MemcacheDBArray[$Row]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function update($Key, $Rows, $Values, $Time=2592000) {
|
public function update($Key, $Rows, $Values, $Time = 2592000) {
|
||||||
if (!$this->InTransaction) {
|
if (!$this->InTransaction) {
|
||||||
$this->begin_transaction($Key);
|
$this->begin_transaction($Key);
|
||||||
$this->update_transaction($Rows, $Values);
|
$this->update_transaction($Rows, $Values);
|
||||||
@ -329,7 +328,6 @@ public function update($Key, $Rows, $Values, $Time=2592000) {
|
|||||||
} else {
|
} else {
|
||||||
$this->update_transaction($Rows, $Values);
|
$this->update_transaction($Rows, $Values);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -658,7 +658,7 @@ private function to_html ($Array) {
|
|||||||
$Str.='<a href="wiki.php?action=article&name='.urlencode($Block['Val']).'">'.$Block['Val'].'</a>';
|
$Str.='<a href="wiki.php?action=article&name='.urlencode($Block['Val']).'">'.$Block['Val'].'</a>';
|
||||||
break;
|
break;
|
||||||
case 'tex':
|
case 'tex':
|
||||||
$Str.='<img style="vertical-align: middle" src="'.STATIC_SERVER.'blank.gif" onload="if (this.src.substr(this.src.length-9,this.src.length) == \'blank.gif\') { this.src = \'http://chart.apis.google.com/chart?cht=tx&chf=bg,s,FFFFFF00&chl='.urlencode(mb_convert_encoding($Block['Val'],"UTF-8","HTML-ENTITIES")).'&chco=\' + hexify(getComputedStyle(this.parentNode,null).color); }" alt="'.$Block['Val'].'" />';
|
$Str.='<img style="vertical-align: middle;" src="'.STATIC_SERVER.'blank.gif" onload="if (this.src.substr(this.src.length-9,this.src.length) == \'blank.gif\') { this.src = \'http://chart.apis.google.com/chart?cht=tx&chf=bg,s,FFFFFF00&chl='.urlencode(mb_convert_encoding($Block['Val'],"UTF-8","HTML-ENTITIES")).'&chco=\' + hexify(getComputedStyle(this.parentNode,null).color); }" alt="'.$Block['Val'].'" />';
|
||||||
break;
|
break;
|
||||||
case 'plain':
|
case 'plain':
|
||||||
$Str.=$Block['Val'];
|
$Str.=$Block['Val'];
|
||||||
@ -729,7 +729,7 @@ private function to_html ($Array) {
|
|||||||
$Exploded = explode('|', $this->to_html($Block['Attr']));
|
$Exploded = explode('|', $this->to_html($Block['Attr']));
|
||||||
if (isset($Exploded[1]) && is_numeric($Exploded[1])) {
|
if (isset($Exploded[1]) && is_numeric($Exploded[1])) {
|
||||||
$PostID = trim($Exploded[1]);
|
$PostID = trim($Exploded[1]);
|
||||||
$Str.='<a href="forums.php?action=viewthread&postid='.$PostID.'" onclick="QuoteJump(event, '.$PostID.'); return false;"><strong class="quoteheader">'.$Exploded[0].'</strong> wrote: </a>';
|
$Str.='<a href="forums.php?action=viewthread&postid='.$PostID.'" onclick="QuoteJump(event, '.$PostID.'); return false;"><strong class="quoteheader">'.$Exploded[0].'</strong> wrote: </a>';
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$Str.='<strong class="quoteheader">'.$Exploded[0].'</strong> wrote: ';
|
$Str.='<strong class="quoteheader">'.$Exploded[0].'</strong> wrote: ';
|
||||||
|
@ -182,13 +182,13 @@
|
|||||||
$JsonPoll['totalVotes'] = $TotalVotes;
|
$JsonPoll['totalVotes'] = $TotalVotes;
|
||||||
$JsonPollAnswers = array();
|
$JsonPollAnswers = array();
|
||||||
|
|
||||||
foreach($Answers as $i => $Answer) {
|
foreach ($Answers as $i => $Answer) {
|
||||||
if (!empty($Votes[$i]) && $TotalVotes > 0) {
|
if (!empty($Votes[$i]) && $TotalVotes > 0) {
|
||||||
$Ratio = $Votes[$i]/$MaxVotes;
|
$Ratio = $Votes[$i] / $MaxVotes;
|
||||||
$Percent = $Votes[$i]/$TotalVotes;
|
$Percent = $Votes[$i] / $TotalVotes;
|
||||||
} else {
|
} else {
|
||||||
$Ratio=0;
|
$Ratio = 0;
|
||||||
$Percent=0;
|
$Percent = 0;
|
||||||
}
|
}
|
||||||
$JsonPollAnswers[] = array(
|
$JsonPollAnswers[] = array(
|
||||||
'answer' => $Answer,
|
'answer' => $Answer,
|
||||||
|
@ -15,15 +15,16 @@
|
|||||||
$_GET['username'] = trim($_GET['username']);
|
$_GET['username'] = trim($_GET['username']);
|
||||||
|
|
||||||
list($Page,$Limit) = Format::page_limit(USERS_PER_PAGE);
|
list($Page,$Limit) = Format::page_limit(USERS_PER_PAGE);
|
||||||
$DB->query("SELECT SQL_CALC_FOUND_ROWS
|
$DB->query("
|
||||||
ID,
|
SELECT SQL_CALC_FOUND_ROWS
|
||||||
Username,
|
ID,
|
||||||
Enabled,
|
Username,
|
||||||
PermissionID,
|
Enabled,
|
||||||
Donor,
|
PermissionID,
|
||||||
Warned
|
Donor,
|
||||||
|
Warned
|
||||||
FROM users_main AS um
|
FROM users_main AS um
|
||||||
JOIN users_info AS ui ON ui.UserID=um.ID
|
JOIN users_info AS ui ON ui.UserID=um.ID
|
||||||
WHERE Username LIKE '%".db_string($_GET['username'])."%'
|
WHERE Username LIKE '%".db_string($_GET['username'])."%'
|
||||||
ORDER BY Username
|
ORDER BY Username
|
||||||
LIMIT $Limit");
|
LIMIT $Limit");
|
||||||
@ -34,7 +35,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
$JsonUsers = array();
|
$JsonUsers = array();
|
||||||
foreach($Results as $Result) {
|
foreach ($Results as $Result) {
|
||||||
list($UserID, $Username, $Enabled, $PermissionID, $Donor, $Warned) = $Result;
|
list($UserID, $Username, $Enabled, $PermissionID, $Donor, $Warned) = $Result;
|
||||||
|
|
||||||
$JsonUsers[] = array(
|
$JsonUsers[] = array(
|
||||||
|
@ -523,9 +523,7 @@ function compare($X, $Y) {
|
|||||||
|
|
||||||
if ($RevisionID && check_perms('site_edit_wiki')) {
|
if ($RevisionID && check_perms('site_edit_wiki')) {
|
||||||
?>
|
?>
|
||||||
<a href="artist.php?action=revert&artistid=<?=$ArtistID?>&revisionid=<?=$RevisionID?>&auth=<?=$LoggedUser['AuthKey']?>" class="brackets">
|
<a href="artist.php?action=revert&artistid=<?=$ArtistID?>&revisionid=<?=$RevisionID?>&auth=<?=$LoggedUser['AuthKey']?>" class="brackets">Revert to this revision</a>
|
||||||
Revert to this revision
|
|
||||||
</a>
|
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
<?
|
<?
|
||||||
if (!function_exists('imagettftext')) { die('Captcha requires both the GD library and the FreeType library.'); }
|
if (!function_exists('imagettftext')) {
|
||||||
|
die('Captcha requires both the GD library and the FreeType library.');
|
||||||
|
}
|
||||||
|
|
||||||
function get_font() {
|
function get_font() {
|
||||||
global $CaptchaFonts;
|
global $CaptchaFonts;
|
||||||
@ -9,30 +11,32 @@ function get_font() {
|
|||||||
function make_captcha_img() {
|
function make_captcha_img() {
|
||||||
global $CaptchaBGs;
|
global $CaptchaBGs;
|
||||||
|
|
||||||
$Length=6;
|
$Length = 6;
|
||||||
$ImageHeight=75;
|
$ImageHeight = 75;
|
||||||
$ImageWidth=300;
|
$ImageWidth = 300;
|
||||||
|
|
||||||
$Chars='abcdefghjkmprstuvwxyzABCDEFGHJKLMPQRSTUVWXY23456789';
|
$Chars = 'abcdefghjkmprstuvwxyzABCDEFGHJKLMPQRSTUVWXY23456789';
|
||||||
$CaptchaString='';
|
$CaptchaString = '';
|
||||||
|
|
||||||
for($i=0;$i<$Length;$i++) { $CaptchaString.=$Chars[mt_rand(0,strlen($Chars)-1)]; }
|
for ($i = 0; $i < $Length; $i++) {
|
||||||
|
$CaptchaString.=$Chars[mt_rand(0,strlen($Chars) - 1)];
|
||||||
for($x=0;$x<$Length;$x++) {
|
|
||||||
$FontDisplay[$x]['size']=mt_rand(24,32);
|
|
||||||
$FontDisplay[$x]['top']=mt_rand($FontDisplay[$x]['size']+5,$ImageHeight-($FontDisplay[$x]['size']/2));
|
|
||||||
$FontDisplay[$x]['angle']=mt_rand(-30,30);
|
|
||||||
$FontDisplay[$x]['font']=get_font();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$Img=imagecreatetruecolor($ImageWidth,$ImageHeight);
|
for ($x = 0; $x < $Length; $x++) {
|
||||||
$BGImg=imagecreatefrompng(SERVER_ROOT.'/captcha/'.$CaptchaBGs[mt_rand(0,count($CaptchaBGs)-1)]);
|
$FontDisplay[$x]['size'] = mt_rand(24,32);
|
||||||
|
$FontDisplay[$x]['top'] = mt_rand($FontDisplay[$x]['size'] + 5,$ImageHeight - ($FontDisplay[$x]['size'] / 2));
|
||||||
|
$FontDisplay[$x]['angle'] = mt_rand(-30,30);
|
||||||
|
$FontDisplay[$x]['font'] = get_font();
|
||||||
|
}
|
||||||
|
|
||||||
|
$Img = imagecreatetruecolor($ImageWidth,$ImageHeight);
|
||||||
|
$BGImg = imagecreatefrompng(SERVER_ROOT.'/captcha/'.$CaptchaBGs[mt_rand(0,count($CaptchaBGs) - 1)]);
|
||||||
imagecopymerge($Img,$BGImg,0,0,0,0,300,75,50);
|
imagecopymerge($Img,$BGImg,0,0,0,0,300,75,50);
|
||||||
|
|
||||||
$ForeColor=imagecolorallocatealpha($Img,255,255,255,65);
|
$ForeColor = imagecolorallocatealpha($Img,255,255,255,65);
|
||||||
|
|
||||||
for($i=0;$i<strlen($CaptchaString);$i++) {
|
for ($i = 0; $i < strlen($CaptchaString); $i++) {
|
||||||
$CharX=(($ImageWidth/$Length)*($i+1))-(($ImageWidth/$Length)*.75);
|
$CharX = (($ImageWidth / $Length) * ($i + 1)) - (($ImageWidth / $Length) * 0.75);
|
||||||
imagettftext($Img,$FontDisplay[$i]['size'],$FontDisplay[$i]['angle'],$CharX,
|
imagettftext($Img,$FontDisplay[$i]['size'],$FontDisplay[$i]['angle'],$CharX,
|
||||||
$FontDisplay[$i]['top'],$ForeColor,
|
$FontDisplay[$i]['top'],$ForeColor,
|
||||||
$FontDisplay[$i]['font'],$CaptchaString[$i]
|
$FontDisplay[$i]['font'],$CaptchaString[$i]
|
||||||
@ -46,5 +50,5 @@ function make_captcha_img() {
|
|||||||
return $CaptchaString;
|
return $CaptchaString;
|
||||||
}
|
}
|
||||||
|
|
||||||
$_SESSION['captcha']=make_captcha_img();
|
$_SESSION['captcha'] = make_captcha_img();
|
||||||
?>
|
?>
|
@ -73,7 +73,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<?
|
<?
|
||||||
|
|
||||||
while(list($SentDate, $SenderID, $Body, $MessageID) = $DB->next_record()) { ?>
|
while (list($SentDate, $SenderID, $Body, $MessageID) = $DB->next_record()) { ?>
|
||||||
<div class="box vertical_space">
|
<div class="box vertical_space">
|
||||||
<div class="head">
|
<div class="head">
|
||||||
<strong><?=$Users[(int)$SenderID]['UserStr']?></strong> <?=time_diff($SentDate)?> - <a href="#quickpost" onclick="Quote('<?=$MessageID?>','<?=$Users[(int)$SenderID]['Username']?>');" class="brackets">Quote</a>
|
<strong><?=$Users[(int)$SenderID]['UserStr']?></strong> <?=time_diff($SentDate)?> - <a href="#quickpost" onclick="Quote('<?=$MessageID?>','<?=$Users[(int)$SenderID]['Username']?>');" class="brackets">Quote</a>
|
||||||
@ -84,7 +84,12 @@
|
|||||||
</div>
|
</div>
|
||||||
<?
|
<?
|
||||||
}
|
}
|
||||||
$DB->query("SELECT UserID FROM pm_conversations_users WHERE UserID!='$LoggedUser[ID]' AND ConvID='$ConvID' AND (ForwardedTo=0 OR ForwardedTo=UserID)");
|
$DB->query("
|
||||||
|
SELECT UserID
|
||||||
|
FROM pm_conversations_users
|
||||||
|
WHERE UserID!='$LoggedUser[ID]'
|
||||||
|
AND ConvID='$ConvID'
|
||||||
|
AND (ForwardedTo=0 OR ForwardedTo=UserID)");
|
||||||
$ReceiverIDs = $DB->collect('UserID');
|
$ReceiverIDs = $DB->collect('UserID');
|
||||||
|
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@
|
|||||||
<? }
|
<? }
|
||||||
$Row = 'a';
|
$Row = 'a';
|
||||||
$Usernames = array();
|
$Usernames = array();
|
||||||
while(list($ID, $Message, $LogTime) = $DB->next_record()) {
|
while (list($ID, $Message, $LogTime) = $DB->next_record()) {
|
||||||
$MessageParts = explode(" ", $Message);
|
$MessageParts = explode(" ", $Message);
|
||||||
$Message = "";
|
$Message = "";
|
||||||
$Color = $Colon = false;
|
$Color = $Colon = false;
|
||||||
|
@ -90,7 +90,7 @@
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach($Channels as $Channel) {
|
foreach ($Channels as $Channel) {
|
||||||
send_irc("PRIVMSG ".$Channel." :".$ReportID." - ".$LoggedUser['Username']." just reported a ".$Short.": https://".SSL_SITE_URL."/".$Link." : ".strtr($Reason, "\n", " "));
|
send_irc("PRIVMSG ".$Channel." :".$ReportID." - ".$LoggedUser['Username']." just reported a ".$Short.": https://".SSL_SITE_URL."/".$Link." : ".strtr($Reason, "\n", " "));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach($ReportType['report_messages'] as $Message) {
|
foreach ($ReportType['report_messages'] as $Message) {
|
||||||
?>
|
?>
|
||||||
<li><?=$Message?></li>
|
<li><?=$Message?></li>
|
||||||
<?
|
<?
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
* for that (reports.php). If you wanted to add a new view, you'd simply
|
* for that (reports.php). If you wanted to add a new view, you'd simply
|
||||||
* add to the case statement(s) below and add an entry to views.php to
|
* add to the case statement(s) below and add an entry to views.php to
|
||||||
* explain it.
|
* explain it.
|
||||||
* Any changes made to this page within the foreach() should probably be
|
* Any changes made to this page within the foreach loop should probably be
|
||||||
* replicated on the auto page (reports.php).
|
* replicated on the auto page (reports.php).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -532,7 +532,7 @@
|
|||||||
<strong>Warning</strong>
|
<strong>Warning</strong>
|
||||||
<select name="warning" id="warning<?=$ReportID?>">
|
<select name="warning" id="warning<?=$ReportID?>">
|
||||||
<?
|
<?
|
||||||
for($i = 0; $i < 9; $i++) { ?>
|
for ($i = 0; $i < 9; $i++) { ?>
|
||||||
<option value="<?=$i?>"><?=$i?></option>
|
<option value="<?=$i?>"><?=$i?></option>
|
||||||
<?
|
<?
|
||||||
} ?>
|
} ?>
|
||||||
|
@ -44,7 +44,7 @@
|
|||||||
<td class="head colhead_dark">Username</td>
|
<td class="head colhead_dark">Username</td>
|
||||||
<td class="head colhead_dark">Reports</td>
|
<td class="head colhead_dark">Reports</td>
|
||||||
</tr>
|
</tr>
|
||||||
<? foreach($Results as $Result) {
|
<? foreach ($Results as $Result) {
|
||||||
list($UserID, $Username, $Reports) = $Result;
|
list($UserID, $Username, $Reports) = $Result;
|
||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -42,7 +42,7 @@
|
|||||||
$DB->query("DELETE FROM requests_tags WHERE RequestID='$RequestID'");
|
$DB->query("DELETE FROM requests_tags WHERE RequestID='$RequestID'");
|
||||||
$DB->query("SELECT ArtistID FROM requests_artists WHERE RequestID = ".$RequestID);
|
$DB->query("SELECT ArtistID FROM requests_artists WHERE RequestID = ".$RequestID);
|
||||||
$RequestArtists = $DB->to_array();
|
$RequestArtists = $DB->to_array();
|
||||||
foreach($RequestArtists as $RequestArtist) {
|
foreach ($RequestArtists as $RequestArtist) {
|
||||||
$Cache->delete_value('artists_requests_'.$RequestArtist);
|
$Cache->delete_value('artists_requests_'.$RequestArtist);
|
||||||
}
|
}
|
||||||
$DB->query("DELETE FROM requests_artists WHERE RequestID='$RequestID'");
|
$DB->query("DELETE FROM requests_artists WHERE RequestID='$RequestID'");
|
||||||
|
@ -203,7 +203,7 @@
|
|||||||
AND req.TorrentID=$TorrentID");
|
AND req.TorrentID=$TorrentID");
|
||||||
$Requests = ($DB->record_count());
|
$Requests = ($DB->record_count());
|
||||||
if ($Requests > 0) {
|
if ($Requests > 0) {
|
||||||
while(list($RequestID, $FillerID, $FillerName, $FilledTime) = $DB->next_record()) {
|
while (list($RequestID, $FillerID, $FillerName, $FilledTime) = $DB->next_record()) {
|
||||||
?>
|
?>
|
||||||
<div style="text-align: right;">
|
<div style="text-align: right;">
|
||||||
<a href="user.php?id=<?=$FillerID?>"><?=$FillerName?></a> used this torrent to fill <a href="requests.php?action=viewrequest&id=<?=$RequestID?>">this request</a> <?=time_diff($FilledTime)?>
|
<a href="user.php?id=<?=$FillerID?>"><?=$FillerName?></a> used this torrent to fill <a href="requests.php?action=viewrequest&id=<?=$RequestID?>">this request</a> <?=time_diff($FilledTime)?>
|
||||||
@ -244,7 +244,7 @@
|
|||||||
<span title="Warning length in weeks">
|
<span title="Warning length in weeks">
|
||||||
<strong>Warning</strong>
|
<strong>Warning</strong>
|
||||||
<select name="warning" id="warning<?=$ReportID?>">
|
<select name="warning" id="warning<?=$ReportID?>">
|
||||||
<? for($i = 0; $i < 9; $i++) { ?>
|
<? for ($i = 0; $i < 9; $i++) { ?>
|
||||||
<option value="<?=$i?>"<?=(($ReportType['resolve_options']['warn'] == $i) ? ' selected="selected"' : '')?>><?=$i?></option>
|
<option value="<?=$i?>"<?=(($ReportType['resolve_options']['warn'] == $i) ? ' selected="selected"' : '')?>><?=$i?></option>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</select>
|
</select>
|
||||||
|
@ -106,7 +106,7 @@
|
|||||||
|
|
||||||
//Collages
|
//Collages
|
||||||
$DB->query("SELECT CollageID FROM collages_torrents WHERE GroupID='$OldGroupID'"); //Select all collages that contain edited group
|
$DB->query("SELECT CollageID FROM collages_torrents WHERE GroupID='$OldGroupID'"); //Select all collages that contain edited group
|
||||||
while(list($CollageID) = $DB->next_record()) {
|
while (list($CollageID) = $DB->next_record()) {
|
||||||
$DB->query("UPDATE IGNORE collages_torrents SET GroupID='$NewGroupID' WHERE GroupID='$OldGroupID' AND CollageID='$CollageID'"); //Change collage groupid to new ID
|
$DB->query("UPDATE IGNORE collages_torrents SET GroupID='$NewGroupID' WHERE GroupID='$OldGroupID' AND CollageID='$CollageID'"); //Change collage groupid to new ID
|
||||||
$DB->query("DELETE FROM collages_torrents WHERE GroupID='$OldGroupID' AND CollageID='$CollageID'");
|
$DB->query("DELETE FROM collages_torrents WHERE GroupID='$OldGroupID' AND CollageID='$CollageID'");
|
||||||
$Cache->delete_value('collage_'.$CollageID);
|
$Cache->delete_value('collage_'.$CollageID);
|
||||||
@ -121,7 +121,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
$DB->query("SELECT ID FROM torrents WHERE GroupID='$OldGroupID'");
|
$DB->query("SELECT ID FROM torrents WHERE GroupID='$OldGroupID'");
|
||||||
while(list($TorrentID) = $DB->next_record()) {
|
while (list($TorrentID) = $DB->next_record()) {
|
||||||
$Cache->delete_value('torrent_download_'.$TorrentID);
|
$Cache->delete_value('torrent_download_'.$TorrentID);
|
||||||
}
|
}
|
||||||
$Cache->delete_value('torrents_details_'.$GroupID);
|
$Cache->delete_value('torrents_details_'.$GroupID);
|
||||||
|
@ -109,16 +109,19 @@
|
|||||||
$Image = db_string($Image);
|
$Image = db_string($Image);
|
||||||
|
|
||||||
// Update torrents table (technically, we don't need the RevisionID column, but we can use it for a join which is nice and fast)
|
// Update torrents table (technically, we don't need the RevisionID column, but we can use it for a join which is nice and fast)
|
||||||
$DB->query("UPDATE torrents_group SET
|
$DB->query("
|
||||||
RevisionID='$RevisionID',
|
UPDATE torrents_group
|
||||||
".((isset($VanityHouse)) ? "VanityHouse='$VanityHouse'," : '')."
|
SET
|
||||||
WikiBody='$Body',
|
RevisionID='$RevisionID',
|
||||||
WikiImage='$Image'
|
".((isset($VanityHouse)) ? "VanityHouse='$VanityHouse'," : '')."
|
||||||
|
WikiBody='$Body',
|
||||||
|
WikiImage='$Image'
|
||||||
WHERE ID='$GroupID'");
|
WHERE ID='$GroupID'");
|
||||||
// Log VH changes
|
// Log VH changes
|
||||||
if ($OldVH != $VanityHouse && check_perms('torrents_edit_vanityhouse')) {
|
if ($OldVH != $VanityHouse && check_perms('torrents_edit_vanityhouse')) {
|
||||||
$DB->query("INSERT INTO group_log (GroupID, UserID, Time, Info)
|
$DB->query("
|
||||||
VALUES ('$GroupID',".$LoggedUser['ID'].",'".sqltime()."','".db_string('Vanity house status changed to '.($VanityHouse?'true':'false'))."')");
|
INSERT INTO group_log (GroupID, UserID, Time, Info)
|
||||||
|
VALUES ('$GroupID',".$LoggedUser['ID'].",'".sqltime()."','".db_string('Vanity house status changed to '.($VanityHouse ? 'true' : 'false'))."')");
|
||||||
}
|
}
|
||||||
|
|
||||||
// There we go, all done!
|
// There we go, all done!
|
||||||
@ -126,16 +129,17 @@
|
|||||||
$Cache->delete_value('torrents_details_'.$GroupID);
|
$Cache->delete_value('torrents_details_'.$GroupID);
|
||||||
$DB->query("SELECT CollageID FROM collages_torrents WHERE GroupID='$GroupID'");
|
$DB->query("SELECT CollageID FROM collages_torrents WHERE GroupID='$GroupID'");
|
||||||
if ($DB->record_count() > 0) {
|
if ($DB->record_count() > 0) {
|
||||||
while(list($CollageID) = $DB->next_record()) {
|
while (list($CollageID) = $DB->next_record()) {
|
||||||
$Cache->delete_value('collage_'.$CollageID);
|
$Cache->delete_value('collage_'.$CollageID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//Fix Recent Uploads/Downloads for image change
|
//Fix Recent Uploads/Downloads for image change
|
||||||
$DB->query("SELECT DISTINCT UserID
|
$DB->query("
|
||||||
FROM torrents AS t
|
SELECT DISTINCT UserID
|
||||||
LEFT JOIN torrents_group AS tg ON t.GroupID=tg.ID
|
FROM torrents AS t
|
||||||
WHERE tg.ID = $GroupID");
|
LEFT JOIN torrents_group AS tg ON t.GroupID=tg.ID
|
||||||
|
WHERE tg.ID = $GroupID");
|
||||||
|
|
||||||
$UserIDs = $DB->collect('UserID');
|
$UserIDs = $DB->collect('UserID');
|
||||||
foreach ($UserIDs as $UserID) {
|
foreach ($UserIDs as $UserID) {
|
||||||
|
@ -188,18 +188,18 @@ function Newthread_Preview(mode) {
|
|||||||
if (pollanswers && pollanswers.children.length > 4) {
|
if (pollanswers && pollanswers.children.length > 4) {
|
||||||
pollanswers = pollanswers.children;
|
pollanswers = pollanswers.children;
|
||||||
$('#pollquestion').raw().innerHTML = $('#pollquestionfield').raw().value;
|
$('#pollquestion').raw().innerHTML = $('#pollquestionfield').raw().value;
|
||||||
for(var i=0; i<pollanswers.length; i+=2) {
|
for (var i = 0; i < pollanswers.length; i += 2) {
|
||||||
if (!pollanswers[i].value) {
|
if (!pollanswers[i].value) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
var el = document.createElement('input');
|
var el = document.createElement('input');
|
||||||
el.id = 'answer_'+(i+1);
|
el.id = 'answer_' + (i + 1);
|
||||||
el.type = 'radio';
|
el.type = 'radio';
|
||||||
el.name = 'vote';
|
el.name = 'vote';
|
||||||
$('#pollanswers').raw().appendChild(el);
|
$('#pollanswers').raw().appendChild(el);
|
||||||
$('#pollanswers').raw().appendChild(document.createTextNode(' '));
|
$('#pollanswers').raw().appendChild(document.createTextNode(' '));
|
||||||
el = document.createElement('label');
|
el = document.createElement('label');
|
||||||
el.htmlFor = 'answer_'+(i+1);
|
el.htmlFor = 'answer_' + (i + 1);
|
||||||
el.innerHTML = pollanswers[i].value;
|
el.innerHTML = pollanswers[i].value;
|
||||||
$('#pollanswers').raw().appendChild(el);
|
$('#pollanswers').raw().appendChild(el);
|
||||||
$('#pollanswers').raw().appendChild(document.createElement('br'));
|
$('#pollanswers').raw().appendChild(document.createElement('br'));
|
||||||
|
@ -17,7 +17,7 @@ function Remaster() {
|
|||||||
|
|
||||||
function Format() {
|
function Format() {
|
||||||
if ($('#format').raw().options[$('#format').raw().selectedIndex].value == 'FLAC') {
|
if ($('#format').raw().options[$('#format').raw().selectedIndex].value == 'FLAC') {
|
||||||
for (var i = 0; i<$('#bitrate').raw().options.length; i++) {
|
for (var i = 0; i < $('#bitrate').raw().options.length; i++) {
|
||||||
if ($('#bitrate').raw().options[i].value == 'Lossless') {
|
if ($('#bitrate').raw().options[i].value == 'Lossless') {
|
||||||
$('#bitrate').raw()[i].selected = true;
|
$('#bitrate').raw()[i].selected = true;
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,7 @@ Please note that selling invites, trading invites, and giving invites away publi
|
|||||||
|
|
||||||
To confirm your invite, click on the following link:
|
To confirm your invite, click on the following link:
|
||||||
|
|
||||||
http://{{SITE_URL}}/register.php?invite={{InviteKey}}
|
https://{{SITE_URL}}/register.php?invite={{InviteKey}}
|
||||||
|
|
||||||
After you register, you will be able to use your account. Please take note that if you do not use this invite in the next 3 days, it will expire. We urge you to read the RULES and the wiki immediately after you join.
|
After you register, you will be able to use your account. Please take note that if you do not use this invite in the next 3 days, it will expire. We urge you to read the RULES and the wiki immediately after you join.
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@ This email is to confirm the account you just created at {{SITE_NAME}}
|
|||||||
|
|
||||||
You have 24 hours to click the link below and finish the registration process for the account created with the username: {{Username}}
|
You have 24 hours to click the link below and finish the registration process for the account created with the username: {{Username}}
|
||||||
|
|
||||||
http://{{SITE_URL}}/register.php?confirm={{TorrentKey}}
|
https://{{SITE_URL}}/register.php?confirm={{TorrentKey}}
|
||||||
|
|
||||||
Thank you,
|
Thank you,
|
||||||
{{SITE_NAME}} Staff
|
{{SITE_NAME}} Staff
|
||||||
|
@ -2,7 +2,7 @@ A password reset process has been started for the username: {{Username}}
|
|||||||
|
|
||||||
To finish this process please click the link below (you have 1 hour)
|
To finish this process please click the link below (you have 1 hour)
|
||||||
|
|
||||||
http://{{SITE_URL}}/login.php?act=recover&key={{ResetKey}}
|
https://{{SITE_URL}}/login.php?act=recover&key={{ResetKey}}
|
||||||
|
|
||||||
If you did not initiate this password reset then please disregard this email.
|
If you did not initiate this password reset then please disregard this email.
|
||||||
The user who requested the password reset had the IP address {{IP}}.
|
The user who requested the password reset had the IP address {{IP}}.
|
||||||
|
Loading…
Reference in New Issue
Block a user