Code Duplication    Length = 61-65 lines in 2 locations

include/functions.php 2 locations

@@ 1358-1418 (lines=61) @@
1355
 *
1356
 * @return null|string
1357
 */
1358
function xtubeGetBannerFromBannerId($banner_id)
1359
{
1360
###### Hack by www.stefanosilvestrini.com ######
1361
    global $xoopsConfig;
1362
    $db      =& XoopsDatabaseFactory::getDatabaseConnection();
1363
    $bresult = $db->query('SELECT COUNT(*) FROM ' . $db->prefix('banner') . ' WHERE bid=' . $banner_id);
1364
    list ($numrows) = $db->fetchRow($bresult);
1365
    if ($numrows > 1) {
1366
        $numrows = $numrows - 1;
1367
        mt_srand((double)microtime() * 1000000);
1368
        $bannum = mt_rand(0, $numrows);
1369
    } else {
1370
        $bannum = 0;
1371
    }
1372
    if ($numrows > 0) {
1373
        $bresult = $db->query('SELECT * FROM ' . $db->prefix('banner') . ' WHERE bid=' . $banner_id, 1, $bannum);
1374
        list ($bid, $cid, $imptotal, $impmade, $clicks, $imageurl, $clickurl, $date, $htmlbanner, $htmlcode) = $db->fetchRow(
1375
            $bresult
1376
        );
1377
        if ($xoopsConfig['my_ip'] == xoops_getenv('REMOTE_ADDR')) {
1378
            // EMPTY
1379
        } else {
1380
            $db->queryF(sprintf('UPDATE %s SET impmade = impmade+1 WHERE bid = %u', $db->prefix('banner'), $bid));
1381
        }
1382
        /* Check if this impression is the last one and print the banner */
1383
        if ($imptotal == $impmade) {
1384
            $newid = $db->genId($db->prefix('bannerfinish') . '_bid_seq');
1385
            $sql   = sprintf(
1386
                'INSERT INTO %s (bid, cid, impressions, clicks, datestart, dateend) VALUES (%u, %u, %u, %u, %u, %u)',
1387
                $db->prefix('bannerfinish'),
1388
                $newid,
1389
                $cid,
1390
                $impmade,
1391
                $clicks,
1392
                $date,
1393
                time()
1394
            );
1395
            $db->queryF($sql);
1396
            $db->queryF(sprintf('DELETE FROM %s WHERE bid = %u', $db->prefix('banner'), $bid));
1397
        }
1398
        if ($htmlbanner) {
1399
            $bannerobject = $htmlcode;
1400
        } else {
1401
            $bannerobject = '<div align="center"><a href="' . XOOPS_URL . '/banners.php?op=click&bid=' . $bid . '" target="_blank">';
1402
            if (stristr($imageurl, '.swf')) {
1403
                $bannerobject = $bannerobject
1404
                    . '<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">'
1405
                    . '<param name="movie" value="' . $imageurl . '"></param>' . '<param name="quality" value="high"></param>' . '<embed src="' . $imageurl
1406
                    . '" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="468" height="60">'
1407
                    . '</embed>' . '</object>';
1408
            } else {
1409
                $bannerobject = $bannerobject . '<img src="' . $imageurl . '" alt="" />';
1410
            }
1411
            $bannerobject = $bannerobject . '</a></div>';
1412
        }
1413
1414
        return $bannerobject;
1415
    }
1416
1417
    return null;
1418
}
1419
1420
/**
1421
 * @param $client_id
@@ 1425-1489 (lines=65) @@
1422
 *
1423
 * @return null|string
1424
 */
1425
function xtubeGetBannerFromClientId($client_id)
1426
{
1427
###### Hack by www.stefanosilvestrini.com ######
1428
    global $xoopsConfig;
1429
    $db      =& XoopsDatabaseFactory::getDatabaseConnection();
1430
    $bresult = $db->query('SELECT COUNT(*) FROM ' . $db->prefix('banner') . ' WHERE cid=' . $client_id);
1431
    list ($numrows) = $db->fetchRow($bresult);
1432
    if ($numrows > 1) {
1433
        $numrows = $numrows - 1;
1434
        mt_srand((double)microtime() * 1000000);
1435
        $bannum = mt_rand(0, $numrows);
1436
    } else {
1437
        $bannum = 0;
1438
    }
1439
    if ($numrows > 0) {
1440
        $bresult = $db->query(
1441
            'SELECT * FROM ' . $db->prefix('banner') . ' WHERE cid=' . $client_id . ' ORDER BY rand()',
1442
            1,
1443
            $bannum
1444
        );
1445
        list ($bid, $cid, $imptotal, $impmade, $clicks, $imageurl, $clickurl, $date, $htmlbanner, $htmlcode) = $db->fetchRow(
1446
            $bresult
1447
        );
1448
        if ($xoopsConfig['my_ip'] == xoops_getenv('REMOTE_ADDR')) {
1449
            // EMPTY
1450
        } else {
1451
            $db->queryF(sprintf('UPDATE %s SET impmade = impmade+1 WHERE bid = %u', $db->prefix('banner'), $bid));
1452
        }
1453
        /* Check if this impression is the last one and print the banner */
1454
        if ($imptotal == $impmade) {
1455
            $newid = $db->genId($db->prefix('bannerfinish') . '_bid_seq');
1456
            $sql   = sprintf(
1457
                'INSERT INTO %s (bid, cid, impressions, clicks, datestart, dateend) VALUES (%u, %u, %u, %u, %u, %u)',
1458
                $db->prefix('bannerfinish'),
1459
                $newid,
1460
                $cid,
1461
                $impmade,
1462
                $clicks,
1463
                $date,
1464
                time()
1465
            );
1466
            $db->queryF($sql);
1467
            $db->queryF(sprintf('DELETE FROM %s WHERE bid = %u', $db->prefix('banner'), $bid));
1468
        }
1469
        if ($htmlbanner) {
1470
            $bannerobject = $htmlcode;
1471
        } else {
1472
            $bannerobject = '<div align="center"><a href="' . XOOPS_URL . '/banners.php?op=click&bid=' . $bid . '" target="_blank">';
1473
            if (stristr($imageurl, '.swf')) {
1474
                $bannerobject = $bannerobject
1475
                    . '<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">'
1476
                    . '<param name="movie" value="' . $imageurl . '"></param>' . '<param name="quality" value="high"></param>' . '<embed src="' . $imageurl
1477
                    . '" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="468" height="60">'
1478
                    . '</embed>' . '</object>';
1479
            } else {
1480
                $bannerobject = $bannerobject . '<img src="' . $imageurl . '" alt="" />';
1481
            }
1482
            $bannerobject = $bannerobject . '</a></div>';
1483
        }
1484
1485
        return $bannerobject;
1486
    }
1487
1488
    return null;
1489
}
1490
1491
/**
1492
 *