From 5034dc0e49f73a049d6693ac643a4e60de3be771 Mon Sep 17 00:00:00 2001 From: Moc Date: Mon, 20 May 2013 15:36:08 +0200 Subject: [PATCH] Download request.php - LAN fix and code cleanup --- e107_plugins/download/request.php | 70 +++++++++++++++++-------------- 1 file changed, 38 insertions(+), 32 deletions(-) diff --git a/e107_plugins/download/request.php b/e107_plugins/download/request.php index 873d1c1ae..32a87c2d0 100644 --- a/e107_plugins/download/request.php +++ b/e107_plugins/download/request.php @@ -1,15 +1,15 @@ db_Select('download', 'download_id', "download_url='".$tp -> toDB(e_QUERY)."'")) + if ($sql->select('download', 'download_id', "download_url='".$tp->toDB(e_QUERY)."'")) { - $row = $sql->db_Fetch(); + $row = $sql->fetch(); $type = 'file'; $id = $row['download_id']; } @@ -33,9 +33,9 @@ if(strstr(e_QUERY, "mirror")) $download_id = intval($download_id); $mirror_id = intval($mirror_id); $qry = "SELECT d.*, dc.download_category_class FROM #download as d LEFT JOIN #download_category AS dc ON dc.download_category_id = d.download_category WHERE d.download_id = {$download_id}"; - if ($sql->db_Select_gen($qry)) + if ($sql->gen($qry)) { - $row = $sql->db_Fetch(); + $row = $sql->fetch(); extract($row); if (check_class($download_category_class) && check_class($download_class)) { @@ -61,8 +61,8 @@ if(strstr(e_QUERY, "mirror")) $mstr .= $mid.",".$address.",".$requests.chr(1); } } - $sql->db_Update("download", "download_requested = download_requested + 1, download_mirror = '{$mstr}' WHERE download_id = '".intval($download_id)."'"); - $sql->db_Update("download_mirror", "mirror_count = mirror_count + 1 WHERE mirror_id = '".intval($mirror_id)."'"); + $sql->update("download", "download_requested = download_requested + 1, download_mirror = '{$mstr}' WHERE download_id = '".intval($download_id)."'"); + $sql->update("download_mirror", "mirror_count = mirror_count + 1 WHERE mirror_id = '".intval($mirror_id)."'"); header("Location: {$gaddress}"); exit(); } @@ -79,7 +79,7 @@ if (!$tmp[1] || strstr(e_QUERY, "pub_")) } else { - $table = preg_replace("#\W#", "", $tp -> toDB($tmp[0], true)); + $table = preg_replace("#\W#", "", $tp->toDB($tmp[0], true)); $id = intval($tmp[1]); $type = "image"; } @@ -112,7 +112,7 @@ if ($type == "file") $qry = "SELECT d.*, dc.download_category_class FROM #download as d LEFT JOIN #download_category AS dc ON dc.download_category_id = d.download_category WHERE d.download_id = {$id}"; if ($sql->gen($qry)) { - $row = $sql->db_Fetch(); + $row = $sql->fetch(); $row['download_url'] = $tp->replaceConstants($row['download_url']); @@ -121,7 +121,7 @@ if ($type == "file") if ($row['download_active'] == 0) { // Inactive download - don't allow require_once(HEADERF); - $ns -> tablerender(LAN_dl_61, "
".str_replace('--LINK--',"",LAN_dl_78).'
'); + $ns->tablerender(LAN_dl_61, "
".str_replace('--LINK--',"",LAN_dl_78).'
'); require_once(FOOTERF); exit(); } @@ -161,15 +161,15 @@ if ($type == "file") $mstr .= $mid.",".$address.",".$requests.chr(1); } } - $sql -> db_Update("download", "download_requested = download_requested + 1, download_mirror = '{$mstr}' WHERE download_id = '".intval($download_id)."'"); - $sql -> db_Update("download_mirror", "mirror_count = mirror_count + 1 WHERE mirror_id = '".intval($mirror_id)."'"); + $sql->update("download", "download_requested = download_requested + 1, download_mirror = '{$mstr}' WHERE download_id = '".intval($download_id)."'"); + $sql->update("download_mirror", "mirror_count = mirror_count + 1 WHERE mirror_id = '".intval($mirror_id)."'"); header("Location: ".$gaddress); exit(); } // increment download count - $sql->db_Update("download", "download_requested = download_requested + 1 WHERE download_id = '{$id}'"); + $sql->update("download", "download_requested = download_requested + 1 WHERE download_id = '{$id}'"); $user_id = USER ? USERID : 0; $ip = e107::getIPHandler()->getIP(FALSE); $request_data = "'0', '{$user_id}', '{$ip}', '{$id}', '".time()."'"; @@ -250,8 +250,8 @@ if ($type == "file") exit(); } -$sql->db_Select($table, "*", "{$table}_id = '{$id}'"); -$row = $sql->db_Fetch(); +$sql->select($table, "*", "{$table}_id = '{$id}'"); +$row = $sql->fetch(); extract($row); $image = ($table == "upload" ? $upload_ss : $download_image); if (preg_match("/Binary\s(.*?)\/.*/", $image, $result)) @@ -309,7 +309,7 @@ else else { require_once(HEADERF); - $ns -> tablerender(LAN_dl_61, "
".LAN_dl_65."

".LAN_dl_64."
"); + $ns->tablerender(LAN_dl_61, "
".LAN_dl_65."

".LAN_dl_64."
"); require_once(FOOTERF); exit; } @@ -319,33 +319,33 @@ else - - function check_download_limits() { global $pref, $sql, $ns, $HEADER, $e107, $tp; // Check download count limits $qry = "SELECT gen_intdata, gen_chardata, (gen_intdata/gen_chardata) as count_perday FROM #generic WHERE gen_type = 'download_limit' AND gen_datestamp IN (".USERCLASS_LIST.") AND (gen_chardata >= 0 AND gen_intdata >= 0) ORDER BY count_perday DESC"; - if($sql->db_Select_gen($qry)) + if($sql->gen($qry)) { - $limits = $sql->db_Fetch(); + $limits = $sql->fetch(); $cutoff = time() - (86400 * $limits['gen_chardata']); if(USER) { $where = "dr.download_request_datestamp > {$cutoff} AND dr.download_request_userid = ".USERID; - } else { + } + else + { $ip = e107::getIPHandler()->getIP(FALSE); $where = "dr.download_request_datestamp > {$cutoff} AND dr.download_request_ip = '{$ip}'"; } $qry = "SELECT COUNT(d.download_id) as count FROM #download_requests as dr LEFT JOIN #download as d ON dr.download_request_download_id = d.download_id AND d.download_active = 1 WHERE {$where} GROUP by dr.download_request_userid"; - if($sql->db_Select_gen($qry)) + if($sql->gen($qry)) { - $row=$sql->db_Fetch(); + $row = $sql->fetch(); if($row['count'] >= $limits['gen_intdata']) { // Exceeded download count limit - header("Location: ".e_BASE."download.php?error.{$cutoff}.2"); -/* require_once(HEADERF); + header("Location: ".e_BASE."download.php?error.{$cutoff}.2"); + /* require_once(HEADERF); $ns->tablerender(LAN_dl_61, LAN_dl_62); require(FOOTERF); */ exit(); @@ -354,22 +354,28 @@ function check_download_limits() } // Check download bandwidth limits $qry = "SELECT gen_user_id, gen_ip, (gen_user_id/gen_ip) as bw_perday FROM #generic WHERE gen_type='download_limit' AND gen_datestamp IN (".USERCLASS_LIST.") AND (gen_user_id >= 0 AND gen_ip >= 0) ORDER BY bw_perday DESC"; - if($sql->db_Select_gen($qry)) { - $limit = $sql->db_Fetch(); + if($sql->gen($qry)) + { + $limit = $sql->fetch(); $cutoff = time() - (86400*$limit['gen_ip']); - if(USER) { + if(USER) + { $where = "dr.download_request_datestamp > {$cutoff} AND dr.download_request_userid = ".USERID; - } else { + } + else + { $ip = e107::getIPHandler()->getIP(FALSE); $where = "dr.download_request_datestamp > {$cutoff} AND dr.download_request_ip = '{$ip}'"; } $qry = "SELECT SUM(d.download_filesize) as total_bw FROM #download_requests as dr LEFT JOIN #download as d ON dr.download_request_download_id = d.download_id AND d.download_active = 1 WHERE {$where} GROUP by dr.download_request_userid"; - if($sql->db_Select_gen($qry)) { - $row=$sql->db_Fetch(); + if($sql->gen($qry)) + { + $row = $sql->fetch(); + if($row['total_bw'] / 1024 > $limit['gen_user_id']) { //Exceed bandwith limit header("Location: ".e_BASE."download.php?error.{$cutoff}.2"); -/* require(HEADERF); + /* require(HEADERF); $ns->tablerender(LAN_dl_61, LAN_dl_62); require(FOOTERF); */ exit();