Code Duplication    Length = 56-56 lines in 2 locations

class/utility.php 2 locations

@@ 1763-1818 (lines=56) @@
1760
     *
1761
     * @return null|string
1762
     */
1763
    public static function getBannerFromIdBanner($banner_id)
1764
    {
1765
        ###### Hack by www.stefanosilvestrini.com ######
1766
        global $xoopsConfig;
1767
        $db      = XoopsDatabaseFactory::getDatabaseConnection();
1768
        $bresult = $db->query('SELECT COUNT(*) FROM ' . $db->prefix('banner') . ' WHERE bid=' . $banner_id);
1769
        list($numrows) = $db->fetchRow($bresult);
1770
        if ($numrows > 1) {
1771
            --$numrows;
1772
            mt_srand((double)microtime() * 1000000);
1773
            $bannum = mt_rand(0, $numrows);
1774
        } else {
1775
            $bannum = 0;
1776
        }
1777
        if ($numrows > 0) {
1778
            $bresult = $db->query('SELECT * FROM ' . $db->prefix('banner') . ' WHERE bid=' . $banner_id, 1, $bannum);
1779
            list($bid, $cid, $imptotal, $impmade, $clicks, $imageurl, $clickurl, $date, $htmlbanner, $htmlcode) = $db->fetchRow($bresult);
1780
            if ($xoopsConfig['my_ip'] == xoops_getenv('REMOTE_ADDR')) {
1781
                // EMPTY
1782
            } else {
1783
                $db->queryF(sprintf('UPDATE %s SET impmade = impmade+1 WHERE bid = %u', $db->prefix('banner'), $bid));
1784
            }
1785
            /* Check if this impression is the last one and print the banner */
1786
            if ($imptotal == $impmade) {
1787
                $newid = $db->genId($db->prefix('bannerfinish') . '_bid_seq');
1788
                $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());
1789
                $db->queryF($sql);
1790
                $db->queryF(sprintf('DELETE FROM %s WHERE bid = %u', $db->prefix('banner'), $bid));
1791
            }
1792
            if ($htmlbanner) {
1793
                $bannerobject = $htmlcode;
1794
            } else {
1795
                $bannerobject = '<div align="center"><a href="' . XOOPS_URL . '/banners.php?op=click&bid=' . $bid . '" target="_blank">';
1796
                if (stristr($imageurl, '.swf')) {
1797
                    $bannerobject = $bannerobject
1798
                                    . '<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">'
1799
                                    . '<param name="movie" value="'
1800
                                    . $imageurl
1801
                                    . '"></param>'
1802
                                    . '<param name="quality" value="high"></param>'
1803
                                    . '<embed src="'
1804
                                    . $imageurl
1805
                                    . '" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="468" height="60">'
1806
                                    . '</embed>'
1807
                                    . '</object>';
1808
                } else {
1809
                    $bannerobject = $bannerobject . '<img src="' . $imageurl . '" alt="">';
1810
                }
1811
                $bannerobject .= '</a></div>';
1812
            }
1813
1814
            return $bannerobject;
1815
        }
1816
1817
        return null;
1818
    }
1819
1820
    /**
1821
     * @param $client_id
@@ 1825-1880 (lines=56) @@
1822
     *
1823
     * @return string
1824
     */
1825
    public static function getBannerFromIdClient($client_id)
1826
    {
1827
        ###### Hack by www.stefanosilvestrini.com ######
1828
        global $xoopsConfig;
1829
        $db      = XoopsDatabaseFactory::getDatabaseConnection();
1830
        $bresult = $db->query('SELECT COUNT(*) FROM ' . $db->prefix('banner') . ' WHERE cid=' . $client_id);
1831
        list($numrows) = $db->fetchRow($bresult);
1832
        if ($numrows > 1) {
1833
            --$numrows;
1834
            mt_srand((double)microtime() * 1000000);
1835
            $bannum = mt_rand(0, $numrows);
1836
        } else {
1837
            $bannum = 0;
1838
        }
1839
        if ($numrows > 0) {
1840
            $bresult = $db->query('SELECT * FROM ' . $db->prefix('banner') . ' WHERE cid=' . $client_id . ' ORDER BY rand()', 1, $bannum);
1841
            list($bid, $cid, $imptotal, $impmade, $clicks, $imageurl, $clickurl, $date, $htmlbanner, $htmlcode) = $db->fetchRow($bresult);
1842
            if ($xoopsConfig['my_ip'] == xoops_getenv('REMOTE_ADDR')) {
1843
                // EMPTY
1844
            } else {
1845
                $db->queryF(sprintf('UPDATE %s SET impmade = impmade+1 WHERE bid = %u', $db->prefix('banner'), $bid));
1846
            }
1847
            /* Check if this impression is the last one and print the banner */
1848
            if ($imptotal == $impmade) {
1849
                $newid = $db->genId($db->prefix('bannerfinish') . '_bid_seq');
1850
                $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());
1851
                $db->queryF($sql);
1852
                $db->queryF(sprintf('DELETE FROM %s WHERE bid = %u', $db->prefix('banner'), $bid));
1853
            }
1854
            if ($htmlbanner) {
1855
                $bannerobject = $htmlcode;
1856
            } else {
1857
                $bannerobject = '<div align="center"><a href="' . XOOPS_URL . '/banners.php?op=click&bid=' . $bid . '" target="_blank">';
1858
                if (stristr($imageurl, '.swf')) {
1859
                    $bannerobject = $bannerobject
1860
                                    . '<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">'
1861
                                    . '<param name="movie" value="'
1862
                                    . $imageurl
1863
                                    . '"></param>'
1864
                                    . '<param name="quality" value="high"></param>'
1865
                                    . '<embed src="'
1866
                                    . $imageurl
1867
                                    . '" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="468" height="60">'
1868
                                    . '</embed>'
1869
                                    . '</object>';
1870
                } else {
1871
                    $bannerobject = $bannerobject . '<img src="' . $imageurl . '" alt="">';
1872
                }
1873
                $bannerobject .= '</a></div>';
1874
            }
1875
1876
            return $bannerobject;
1877
        }
1878
1879
        return null;
1880
    }
1881
1882
    /**
1883
     * @param $email