|
@@ 1553-1608 (lines=56) @@
|
| 1550 |
|
* |
| 1551 |
|
* @return null|string |
| 1552 |
|
*/ |
| 1553 |
|
public static function getBannerFromIdBanner($banner_id) |
| 1554 |
|
{ |
| 1555 |
|
###### Hack by www.stefanosilvestrini.com ###### |
| 1556 |
|
global $xoopsConfig; |
| 1557 |
|
$db = XoopsDatabaseFactory::getDatabaseConnection(); |
| 1558 |
|
$bresult = $db->query('SELECT COUNT(*) FROM ' . $db->prefix('banner') . ' WHERE bid=' . $banner_id); |
| 1559 |
|
list($numrows) = $db->fetchRow($bresult); |
| 1560 |
|
if ($numrows > 1) { |
| 1561 |
|
--$numrows; |
| 1562 |
|
mt_srand((double)microtime() * 1000000); |
| 1563 |
|
$bannum = mt_rand(0, $numrows); |
| 1564 |
|
} else { |
| 1565 |
|
$bannum = 0; |
| 1566 |
|
} |
| 1567 |
|
if ($numrows > 0) { |
| 1568 |
|
$bresult = $db->query('SELECT * FROM ' . $db->prefix('banner') . ' WHERE bid=' . $banner_id, 1, $bannum); |
| 1569 |
|
list($bid, $cid, $imptotal, $impmade, $clicks, $imageurl, $clickurl, $date, $htmlbanner, $htmlcode) = $db->fetchRow($bresult); |
| 1570 |
|
if ($xoopsConfig['my_ip'] == xoops_getenv('REMOTE_ADDR')) { |
| 1571 |
|
// EMPTY |
| 1572 |
|
} else { |
| 1573 |
|
$db->queryF(sprintf('UPDATE %s SET impmade = impmade+1 WHERE bid = %u', $db->prefix('banner'), $bid)); |
| 1574 |
|
} |
| 1575 |
|
/* Check if this impression is the last one and print the banner */ |
| 1576 |
|
if ($imptotal == $impmade) { |
| 1577 |
|
$newid = $db->genId($db->prefix('bannerfinish') . '_bid_seq'); |
| 1578 |
|
$sql = sprintf('INSERT INTO %s (bid, cid, impressions, clicks, datestart, dateend) VALUES (%u, %u, %u, %u, %u, %u)', $db->prefix('bannerfinish'), $newid, $cid, $impmade, $clicks, $date, time()); |
| 1579 |
|
$db->queryF($sql); |
| 1580 |
|
$db->queryF(sprintf('DELETE FROM %s WHERE bid = %u', $db->prefix('banner'), $bid)); |
| 1581 |
|
} |
| 1582 |
|
if ($htmlbanner) { |
| 1583 |
|
$bannerobject = $htmlcode; |
| 1584 |
|
} else { |
| 1585 |
|
$bannerobject = '<div align="center"><a href="' . XOOPS_URL . '/banners.php?op=click&bid=' . $bid . '" target="_blank">'; |
| 1586 |
|
if (stristr($imageurl, '.swf')) { |
| 1587 |
|
$bannerobject = $bannerobject |
| 1588 |
|
. '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" width="468" height="60">' |
| 1589 |
|
. '<param name="movie" value="' |
| 1590 |
|
. $imageurl |
| 1591 |
|
. '"></param>' |
| 1592 |
|
. '<param name="quality" value="high"></param>' |
| 1593 |
|
. '<embed src="' |
| 1594 |
|
. $imageurl |
| 1595 |
|
. '" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="468" height="60">' |
| 1596 |
|
. '</embed>' |
| 1597 |
|
. '</object>'; |
| 1598 |
|
} else { |
| 1599 |
|
$bannerobject = $bannerobject . '<img src="' . $imageurl . '" alt="">'; |
| 1600 |
|
} |
| 1601 |
|
$bannerobject .= '</a></div>'; |
| 1602 |
|
} |
| 1603 |
|
|
| 1604 |
|
return $bannerobject; |
| 1605 |
|
} |
| 1606 |
|
|
| 1607 |
|
return null; |
| 1608 |
|
} |
| 1609 |
|
|
| 1610 |
|
/** |
| 1611 |
|
* @param $client_id |
|
@@ 1615-1670 (lines=56) @@
|
| 1612 |
|
* |
| 1613 |
|
* @return string |
| 1614 |
|
*/ |
| 1615 |
|
public static function getBannerFromIdClient($client_id) |
| 1616 |
|
{ |
| 1617 |
|
###### Hack by www.stefanosilvestrini.com ###### |
| 1618 |
|
global $xoopsConfig; |
| 1619 |
|
$db = XoopsDatabaseFactory::getDatabaseConnection(); |
| 1620 |
|
$bresult = $db->query('SELECT COUNT(*) FROM ' . $db->prefix('banner') . ' WHERE cid=' . $client_id); |
| 1621 |
|
list($numrows) = $db->fetchRow($bresult); |
| 1622 |
|
if ($numrows > 1) { |
| 1623 |
|
--$numrows; |
| 1624 |
|
mt_srand((double)microtime() * 1000000); |
| 1625 |
|
$bannum = mt_rand(0, $numrows); |
| 1626 |
|
} else { |
| 1627 |
|
$bannum = 0; |
| 1628 |
|
} |
| 1629 |
|
if ($numrows > 0) { |
| 1630 |
|
$bresult = $db->query('SELECT * FROM ' . $db->prefix('banner') . ' WHERE cid=' . $client_id . ' ORDER BY rand()', 1, $bannum); |
| 1631 |
|
list($bid, $cid, $imptotal, $impmade, $clicks, $imageurl, $clickurl, $date, $htmlbanner, $htmlcode) = $db->fetchRow($bresult); |
| 1632 |
|
if ($xoopsConfig['my_ip'] == xoops_getenv('REMOTE_ADDR')) { |
| 1633 |
|
// EMPTY |
| 1634 |
|
} else { |
| 1635 |
|
$db->queryF(sprintf('UPDATE %s SET impmade = impmade+1 WHERE bid = %u', $db->prefix('banner'), $bid)); |
| 1636 |
|
} |
| 1637 |
|
/* Check if this impression is the last one and print the banner */ |
| 1638 |
|
if ($imptotal == $impmade) { |
| 1639 |
|
$newid = $db->genId($db->prefix('bannerfinish') . '_bid_seq'); |
| 1640 |
|
$sql = sprintf('INSERT INTO %s (bid, cid, impressions, clicks, datestart, dateend) VALUES (%u, %u, %u, %u, %u, %u)', $db->prefix('bannerfinish'), $newid, $cid, $impmade, $clicks, $date, time()); |
| 1641 |
|
$db->queryF($sql); |
| 1642 |
|
$db->queryF(sprintf('DELETE FROM %s WHERE bid = %u', $db->prefix('banner'), $bid)); |
| 1643 |
|
} |
| 1644 |
|
if ($htmlbanner) { |
| 1645 |
|
$bannerobject = $htmlcode; |
| 1646 |
|
} else { |
| 1647 |
|
$bannerobject = '<div align="center"><a href="' . XOOPS_URL . '/banners.php?op=click&bid=' . $bid . '" target="_blank">'; |
| 1648 |
|
if (stristr($imageurl, '.swf')) { |
| 1649 |
|
$bannerobject = $bannerobject |
| 1650 |
|
. '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" width="468" height="60">' |
| 1651 |
|
. '<param name="movie" value="' |
| 1652 |
|
. $imageurl |
| 1653 |
|
. '"></param>' |
| 1654 |
|
. '<param name="quality" value="high"></param>' |
| 1655 |
|
. '<embed src="' |
| 1656 |
|
. $imageurl |
| 1657 |
|
. '" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="468" height="60">' |
| 1658 |
|
. '</embed>' |
| 1659 |
|
. '</object>'; |
| 1660 |
|
} else { |
| 1661 |
|
$bannerobject = $bannerobject . '<img src="' . $imageurl . '" alt="">'; |
| 1662 |
|
} |
| 1663 |
|
$bannerobject .= '</a></div>'; |
| 1664 |
|
} |
| 1665 |
|
|
| 1666 |
|
return $bannerobject; |
| 1667 |
|
} |
| 1668 |
|
|
| 1669 |
|
return null; |
| 1670 |
|
} |
| 1671 |
|
|
| 1672 |
|
/** |
| 1673 |
|
* @param $email |