Пример #1
0
    function store()
    {
        JLoader::import('adagencyads', JPATH_SITE . DS . 'components' . DS . 'com_adagency' . DS . 'models');
        $front_ads_model = $this->getInstance('adagencyAds', 'adagencyModel');
        $database = JFactory::getDBO();
        $item = $this->getTable('adagencyAds');
        $_POST["parameters"]["ad_code"] = $_POST['transitioncode'];
        $data = JRequest::get('post');
        $random_number = rand(1, 100);
        $sendmail = $data['sendmail'];
        $data['key'] = '';
        // Prepare the keywords, trim them
        if (isset($data['keywords']) && $data['keywords'] != '') {
            $data['keywords'] = implode(',', array_map('trim', explode(',', $data['keywords'])));
        }
        if ($data['id'] == 0) {
            $data['created'] = date("Y-m-d");
        } else {
            $current_banner = $this->getAdById($data['id']);
        }
        $data['parameters']["ad_code"] = $_POST['transitioncode'];
        /*saving transition ad*/
        $crt = 1;
        $string = 'href="';
        $fisier = $data['parameters']["ad_code"];
        $pos1 = strpos($fisier, $string);
        while ($pos1) {
            $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
            $pos2 = strpos($fisier, '"');
            $url = substr($fisier, 0, $pos2);
            $data['parameters']["linktrack"][$crt] = $url;
            $crt++;
            $pos1 = strpos($fisier, $string);
        }
        $bordercolor = $data['parameters']["border_color"];
        $backcolor = $data['parameters']["bg_color"];
        $html_content = preg_replace("/(href((\\s+)?)=((\\s+)?)\")\\b((http(s?):\\/\\/)|(www\\.)|(ftp:\\/\\/))([\\w\\.]+)([-~\\/\\w+\\.-?\\&\\,\\%\\=]+)\\b/i", "href=\"ad_url", $data['parameters']["ad_code"]);
        $closead = "Close Ad";
        $script = <<<EOD
<script type="text/javascript">
function getAbsoluteLeft(objectId) {
\t// Get an object left position from the upper left viewport corner
\t// Tested with relative and nested objects
\to = document.getElementById(objectId);
\toLeft = o.offsetLeft;           // Get left position from the parent object
\twhile(o.offsetParent!=null) {   // Parse the parent hierarchy up to the document element
\t\toParent = o.offsetParent;    // Get parent object reference
\t\toLeft += oParent.offsetLeft; // Add parent left position
\t\to = oParent;
\t}
\t// Return left postion
\treturn oLeft;
}

function getAbsoluteTop(objectId) {
\t// Get an object top position from the upper left viewport corner
\t// Tested with relative and nested objects
\to = document.getElementById(objectId);
\toTop = o.offsetTop;            // Get top position from the parent object
\twhile(o.offsetParent!=null) { // Parse the parent hierarchy up to the document element
\t\toParent = o.offsetParent;  // Get parent object reference
\t\toTop += oParent.offsetTop; // Add parent top position
\t\to = oParent;
\t}
\t// Return top position
\treturn oTop;
}

function leftposition() {
\tvar left=getAbsoluteLeft("floatvert");
\tdocument.getElementById("floatvert").style.left = (-1) * left + "px";
}

function topposition() {
\tvar top = getAbsoluteTop("floatvert");
\tdocument.getElementById("floatvert").style.top = (-1) * top + "px";
}
function initbox(){
\tdocument.getElementById("floatvert").style.visibility="visible";
\tif (!document.all) {
\tasd = document.getElementById("floatvert");
\tasd.parentNode.removeChild(asd);
\tdocument.body.appendChild(asd); }
\tleftposition();
\ttopposition();
}
function HideVert(number) {
    //document.getElementById("floatvert").style.visibility="hidden";
\t//document.getElementById("floatvert").parentNode.removeChild(document.getElementById("floatvert"));
\t
\tvar divs = document.getElementsByClassName('floatvert'+number);
\tfor(var i=0; i<divs.length; i++){
\t\tdivs[i].parentNode.removeChild(divs[i]);
\t}
}
var screenWidth = screen.width;
var screenHeight = screen.height;
</script>
\t
<div id="floatvert" class="floatvert{$random_number} mod_ijoomlazone" style="z-index:1000; position:absolute; top:1px; left:1px; visibility:hidden; background-color:#{$backcolor}; border-color: #{$bordercolor}; border:{$data['parameters']["border"]}px solid #{$bordercolor};">
    <table cellpadding="5" cellspacing="0" style="border-collapse: collapse" id="continut4" >
        <tr>
        \t<td align="left">
        \t\t<a href="" onClick="HideVert({$random_number});return false;">{$closead}</a>
        \t</td>
        </tr>
        
        <tr>
        \t<td id="continut" class="continut" valign="top" >
        \t\t{$html_content}
        \t</td>
        </tr>
    </table>
    
\t<script type="text/javascript">
        initbox();
        var divs = document.getElementsByClassName('continut');
        for(var i=0; i<divs.length; i++){
            divs[i].width = screen.width;
            divs[i].height = screen.height;
        }
        
        /*document.getElementById("continut").width = screen.width;
        document.getElementById("continut").height = screen.height;
        
        document.getElementById("continut2").width = screen.width;
        document.getElementById("continut2").height = screen.height;
        document.getElementById("continut3").width = screen.width;
        document.getElementById("continut3").height = screen.height;
        document.getElementById("continut4").width = screen.width;
        document.getElementById("continut4").height = screen.height;*/
    </script>
</div>
EOD;
        $adcodu = $script;
        $data['parameters'] = serialize($data['parameters']);
        //$data['location'] = json_encode($data['limitation']);
        if (trim($data['ad_start_date']) != "") {
            $data['ad_start_date'] = date("Y-m-d H:i:s", strtotime($data['ad_start_date']));
        } else {
            $data['ad_start_date'] = date("Y-m-d H:i:s");
        }
        if (trim($data['ad_end_date']) != "Never" && trim($data['ad_end_date']) != "") {
            $data['ad_end_date'] = date("Y-m-d H:i:s", strtotime($data['ad_end_date']));
        }
        if (intval($data["id"]) == 0) {
            $sql = "select max(`ordering`) from #__ad_agency_banners";
            $database->setQuery($sql);
            $database->query();
            $max_ordering = $database->loadColumn();
            $max_ordering = $max_ordering["0"];
            $data["ordering"] = $max_ordering + 1;
        }
        if (!$item->bind($data)) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->check()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->store()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        $configs = $this->getInstance("adagencyConfig", "adagencyAdminModel");
        $configs = $configs->getConfigs();
        $cids = intval($_POST['id']);
        $db = JFactory::getDBO();
        if (isset($_POST['id']) && $_POST['id'] != 0) {
            $where = $_POST['id'];
        } else {
            $where = mysql_insert_id();
        }
        if ($where == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $where = $db->loadResult();
        }
        if (isset($where)) {
            $this->store_geo($where);
            require_once JPATH_BASE . '/components/com_adagency/helpers/jomsocial.php';
            $helper = new JomSocialTargeting();
            $helper->save($where);
        }
        $sql = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id = '" . intval($where) . "'";
        $db->setQuery($sql);
        $db->query();
        $campLimInfo = $front_ads_model->getCampLimInfo($data['advertiser_id']);
        if (isset($data['adv_cmp'])) {
            foreach ($data['adv_cmp'] as $val) {
                if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                    if (isset($data['czones'][$val])) {
                        $query = "INSERT INTO `#__ad_agency_campaign_banner` (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`) VALUES ('" . intval($val) . "', '" . intval($where) . "', '100', NULL, " . $data['czones'][$val] . ");";
                        $db->setQuery($query);
                        $db->query();
                    }
                }
            }
        }
        $sql = "UPDATE #__ad_agency_banners SET `ad_code` = '" . addslashes(trim($adcodu)) . "' WHERE `id`='" . intval($where) . "'";
        $db = JFactory::getDBO();
        $db->setQuery($sql);
        $db->query();
        if ($sendmail && (isset($current_banner) && $current_banner->approved != $data['approved'] && $data['approved'] != 'P')) {
            $this->sendmail($current_banner->id, $data['approved']);
        }
        return true;
    }
Пример #2
0
 function store()
 {
     JLoader::import('adagencyads', JPATH_SITE . DS . 'components' . DS . 'com_adagency' . DS . 'models');
     $front_ads_model = JModelLegacy::getInstance('adagencyAds', 'adagencyModel');
     $database =& JFactory::getDBO();
     $item =& $this->getTable('adagencyAds');
     $data = JRequest::get('post');
     $sendmail = $data['sendmail'];
     $data['key'] = '';
     // Prepare the keywords, trim them
     if (isset($data['keywords']) && $data['keywords'] != '') {
         $data['keywords'] = implode(',', array_map('trim', explode(',', $data['keywords'])));
     }
     if ($data['id'] == 0) {
         $data['created'] = date("Y-m-d");
     } else {
         $current_banner = $this->getAdById($data['id']);
     }
     $data['parameters'] = serialize($data['parameters']);
     $data["linktext"] = str_replace("\r\n", " ", $data["linktext"]);
     $data["parameters"]["alt_text"] = str_replace("\r\n", " ", $data["parameters"]["alt_text"]);
     $res = true;
     if (trim($data['ad_start_date']) != "") {
         $data['ad_start_date'] = date("Y-m-d H:i:s", strtotime($data['ad_start_date']));
     } else {
         $data['ad_start_date'] = date("Y-m-d H:i:s");
     }
     if (trim($data['ad_end_date']) != "Never" && trim($data['ad_end_date']) != "") {
         $data['ad_end_date'] = date("Y-m-d H:i:s", strtotime($data['ad_end_date']));
     }
     if (intval($data["id"]) == 0) {
         $sql = "select max(`ordering`) from #__ad_agency_banners";
         $database->setQuery($sql);
         $database->query();
         $max_ordering = $database->loadColumn();
         $max_ordering = $max_ordering["0"];
         $data["ordering"] = $max_ordering + 1;
     }
     if (!$item->bind($data)) {
         $res = false;
     }
     if (!$item->check()) {
         $res = false;
     }
     if (!$item->store()) {
         $res = false;
     }
     $configs = $this->getInstance("adagencyConfig", "adagencyAdminModel");
     $configs = $configs->getConfigs();
     $cids = intval($_POST['id']);
     $db =& JFactory::getDBO();
     if (!isset($data['id']) || $data['id'] == 0) {
         $data['id'] = mysql_insert_id();
     }
     $idi = $data['id'];
     if ($idi == 0) {
         $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
         $db->setQuery($ask);
         $idi = $db->loadResult();
     }
     if (isset($idi)) {
         $this->store_geo($idi);
         require_once JPATH_BASE . '/components/com_adagency/helpers/jomsocial.php';
         JomSocialTargeting::save($idi);
     }
     require_once JPATH_BASE . "/components/com_adagency/helpers/jomsocial.php";
     JomSocialTargeting::save($idi);
     $sql = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id = '" . intval($idi) . "'";
     $db->setQuery($sql);
     $db->query();
     $JPATH_BASE = str_replace('administrator', '', JPATH_BASE);
     if (isset($data['image_url']) && $data['image_url'] != NULL) {
         $img_url = $JPATH_BASE . 'images' . DS . 'stories' . DS . $configs->imgfolder . DS . $data['advertiser_id'] . DS . $data['image_url'];
         @(list($width_orig, $height_orig, $type, $attr) = @getimagesize($img_url));
     }
     $campLimInfo = $front_ads_model->getCampLimInfo($data['advertiser_id']);
     if (isset($data['adv_cmp'])) {
         foreach ($data['adv_cmp'] as $val) {
             if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                 if (isset($data['czones'][$val])) {
                     $query = "INSERT INTO `#__ad_agency_campaign_banner` (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`) VALUES ('" . intval($val) . "', '" . intval($idi) . "', '100', NULL, " . $data['czones'][$val] . ");";
                     $db->setQuery($query);
                     $db->query();
                 }
                 $query = "SELECT z.adparams,z.textadparams FROM #__ad_agency_zone AS z WHERE z.zoneid = " . intval($data['czones'][$val]);
                 $db->setQuery($query);
                 $result_query = $db->loadObject();
                 $zparams = @unserialize($result_query->adparams);
                 $paramz = @unserialize($result_query->textadparams);
                 if (isset($paramz['mxsize']) && intval($paramz['mxsize']) > 0 && isset($paramz['mxtype'])) {
                     if ($paramz['mxtype'] == 'w' && $paramz['mxsize'] < $zparams['width'] || $zparams['width'] == '') {
                         //$ratio = $zparams['width']/$zparams['height'];$zparams['height'] = $zparams['width']/$ratio;
                         $zparams['width'] = $paramz['mxsize'];
                     } elseif ($paramz['mxtype'] == 'h' && $paramz['mxsize'] < $zparams['height'] || $zparams['height'] == '') {
                         //$ratio = $zparams['width']/$zparams['height'];$zparams['width'] = $ratio * $zparams['height'];
                         $zparams['height'] = $paramz['mxsize'];
                     }
                 }
                 if (isset($zparams['width']) && isset($zparams['height']) && $width_orig != NULL && isset($width_orig) && isset($height_orig) && ($width_orig > $zparams['width'] || $height_orig > $zparams['height'])) {
                     // make the thumb with the maximum size or the zone
                     //echo "<pre>";var_dump($zparams);echo "<br />*** Cid: ".$val."</pre><hr />";
                     $thumb = $this->makeThumb($img_url, $zparams['width'], $zparams['height']);
                     if ($thumb != NULL && $thumb != false) {
                         $sql = "UPDATE `#__ad_agency_campaign_banner` SET `thumb` = '" . $thumb . "' WHERE `campaign_id` =" . $val . " AND `banner_id` =" . intval($idi) . ";";
                     } else {
                         $sql = "UPDATE `#__ad_agency_campaign_banner` SET `thumb` = NULL WHERE `campaign_id` =" . $val . " AND `banner_id` =" . intval($idi) . ";";
                     }
                     $db->setQuery($sql);
                     $db->query();
                     $fls[] = $thumb;
                 }
             }
         }
     }
     if ($sendmail && (isset($current_banner) && $current_banner->approved != $data['approved'] && $data['approved'] != 'P')) {
         $this->sendmail($current_banner->id, $data['approved']);
     }
     return $res;
 }
Пример #3
0
 function store($new_camp = "")
 {
     global $mainframe;
     $item = $this->getTable('adagencyAds');
     $configs = $this->getInstance("adagencyConfig", "adagencyModel");
     $configs = $configs->getConfigs();
     $adsModel = $this->getInstance("adagencyAds", "adagencyModel");
     $notify = JRequest::getInt('id');
     $changed = "new";
     $advid = $this->getCurrentAdvertiser();
     if (isset($advid->aid)) {
         $advid = $advid->aid;
     } else {
         $advid = 0;
     }
     $database = JFactory::getDBO();
     $db = JFactory::getDBO();
     $data = JRequest::get('post');
     $selected_camps = array();
     if (isset($data['adv_cmp']) && is_array($data['adv_cmp'])) {
         foreach ($data['adv_cmp'] as $key => $val) {
             if ($val) {
                 $selected_camps[] = $val;
             }
         }
     }
     // Check settings for auto-approve ads [begin]
     $advertiser = $this->getCurrentAdvertiser();
     if (isset($advertiser->apr_ads) && $advertiser->apr_ads != 'G') {
         $approved = $advertiser->apr_ads;
     } else {
         $sql = "SHOW COLUMNS FROM `#__ad_agency_banners` WHERE field = 'approved'";
         $db->setQuery($sql);
         $res = $db->loadObject();
         $approved = $res->Default;
     }
     if ($approved == 'N') {
         $approved = 'P';
     }
     $data['approved'] = $approved;
     // Check settings for auto-approve ads [end]
     if ($data['id'] == 0) {
         $data['created'] = date("Y-m-d");
         $data['key'] = md5(rand(1000, 9999));
         $data['ad_start_date'] = $data['created'];
     } else {
         $data['key'] = NULL;
     }
     // if the ad is not new then ->
     if (isset($data['id']) && $data['id'] > 0) {
         $ex_ad = $this->getAdById($data['id']);
         $ex_ad->parameters = @unserialize($ex_ad->parameters);
         // if the ad was approved or declined and the new status would be 'pending', make sure changes occured to it!
         if ($ex_ad->approved != 'P' && $data['approved'] == 'P') {
             // if no change has been made, let the status be as it was
             if ($ex_ad->title == $data['title'] && $ex_ad->description == $data['description'] && $ex_ad->target_url == $data['target_url'] && $ex_ad->width == $data['width'] && $ex_ad->height == $data['height'] && $ex_ad->image_url == $data['image_url']) {
                 //&&($ex_ad->parameters['alt_text'] == $data['parameters']['alt_text'])
                 $data['approved'] = $ex_ad->approved;
             } else {
                 //it was changed, and sent email to administrator
                 $notify = "0";
                 $changed = "changed";
             }
         }
     }
     $data['parameters']['alt_text'] = $data['target_url'];
     $data['parameters'] = @serialize($data['parameters']);
     if (!isset($data['adv_cmp'])) {
         $data['adv_cmp'] = NULL;
     }
     $adv_cmp = $data['adv_cmp'];
     $parameters = $data["parameters"];
     $parameters = unserialize($parameters);
     if (!isset($parameters["target_window"])) {
         $parameters["target_window"] = "_blank";
         $data["parameters"] = serialize($parameters);
     }
     $target_url = $data["target_url"];
     if (strpos(" " . $target_url, "http") === FALSE) {
         $data["target_url"] = "http://" . $data["target_url"];
     }
     if (!$item->bind($data)) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!$item->check()) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!$item->store()) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!isset($data['id']) || $data['id'] == 0) {
         $data['id'] = @mysql_insert_id();
     }
     $idi = $data['id'];
     if ($idi == 0) {
         $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
         $db->setQuery($ask);
         $idi = $db->loadResult();
         $data['id'] = $idi;
     }
     if (isset($idi)) {
         $this->store_geo($idi);
     }
     require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
     JomSocialTargeting::save($idi);
     $query = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id=" . intval($idi);
     $db->setQuery($query);
     $db->query();
     $campLimInfo = $adsModel->getCampLimInfo();
     //echo "<pre>";var_dump($campLimInfo);die();
     if (isset($selected_camps)) {
         foreach ($selected_camps as $val) {
             if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                 $query = "INSERT INTO `#__ad_agency_campaign_banner`\n                                (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`)\n                                VALUES\n                                ('" . intval($val) . "', '" . intval($idi) . "', '100', NULL, " . intval(@$data['czones'][$val]) . ");";
                 $db->setQuery($query);
                 $db->query();
             }
         }
     }
     // Send email to administrator
     if ($notify == '0') {
         $sql = "SELECT a.user_id, a.company, a.telephone as phone, u.name, u.username, u.email FROM #__ad_agency_advertis AS a LEFT OUTER JOIN #__users as u on u.id=a.user_id\tWHERE a.aid=" . intval($advid) . " GROUP BY a.aid";
         $db->setQuery($sql);
         $user = $db->loadObject();
         if (isset($user) && $user != NULL) {
             $sql = "select `params` from #__ad_agency_settings";
             $db->setQuery($sql);
             $db->query();
             $email_params = $db->loadColumn();
             $email_params = @$email_params["0"];
             $email_params = unserialize($email_params);
             $ok_send_email = 0;
             $subject = "";
             $message = "";
             if ($changed == "new") {
                 $subject = $configs->sbnewad;
                 $message = $configs->bodynewad;
                 $ok_send_email = $email_params["send_ban_added"];
             } else {
                 $subject = $configs->sbadchanged;
                 $message = $configs->boadchanged;
                 $ok_send_email = $email_params["send_ad_modified"];
             }
             if (!isset($user->company) || $user->company == "") {
                 $user->company = "N/A";
             }
             if (!isset($user->phone) || $user->phone == "") {
                 $user->phone = "N/A";
             }
             $current_ad = $this->getAdById($idi);
             if (isset($current_ad->approved) && $current_ad->approved == "Y") {
                 $status = JText::_("NEWADAPPROVED");
             } else {
                 $status = JText::_("ADAG_PENDING");
             }
             $epreview = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&no_html=1&adid=" . $idi . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&adid=" . $idi . "</a>";
             $eapprove = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $idi . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $idi . "&key=" . $data['key'] . "</a>";
             $edecline = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $idi . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $idi . "&key=" . $data['key'] . "</a>";
             $subject = str_replace('{name}', $user->name, $subject);
             $subject = str_replace('{login}', $user->username, $subject);
             $subject = str_replace('{email}', $user->email, $subject);
             $subject = str_replace('{banner}', $data['title'], $subject);
             $subject = str_replace('{company}', $user->company, $subject);
             $subject = str_replace('{phone}', $user->phone, $subject);
             $subject = str_replace('{approval_status}', $status, $subject);
             $subject = str_replace('{banner_preview_url}', $epreview, $subject);
             $subject = str_replace('{approve_banner_url}', $eapprove, $subject);
             $subject = str_replace('{decline_banner_url}', $edecline, $subject);
             $message = str_replace('{name}', $user->name, $message);
             $message = str_replace('{login}', $user->username, $message);
             $message = str_replace('{email}', $user->email, $message);
             $message = str_replace('{banner}', $data['title'], $message);
             $message = str_replace('{company}', $user->company, $message);
             $message = str_replace('{phone}', $user->phone, $message);
             $message = str_replace('{approval_status}', $status, $message);
             $message = str_replace('{banner_preview_url}', $epreview, $message);
             $message = str_replace('{approve_banner_url}', $eapprove, $message);
             $message = str_replace('{decline_banner_url}', $edecline, $message);
             if ($ok_send_email == 1) {
                 JFactory::getMailer()->sendMail($configs->fromemail, $configs->fromname, $configs->adminemail, $subject, $message, 1);
             }
         }
     }
     $sql = "SELECT approved FROM #__ad_agency_banners WHERE id = " . intval($idi);
     $db->setQuery($sql);
     $approved = $db->loadResult();
     $isWizzard = $this->isWizzard();
     $item_id = JRequest::getInt('Itemid', '0', 'post');
     if ($item_id != 0) {
         $Itemid = "&Itemid=" . $item_id;
     } else {
         $Itemid = NULL;
     }
     $link = "index.php?option=com_adagency&controller=adagencyAds&p=1" . $Itemid;
     $msg = JText::_('AD_BANNERSAVED');
     if (trim($new_camp) == "new_camp") {
         $itemid = JRequest::getVar("Itemid", "0");
         $url = JURI::root() . "index.php?option=com_adagency&controller=adagencyCampaigns&task=edit&cid=0&ad=" . intval($data["id"]) . "&Itemid=" . intval($itemid);
         $mainframe->redirect($url);
     }
     if ($isWizzard && $approved == 'P') {
         $mainframe->redirect($link, $msg);
     }
     return true;
 }
Пример #4
0
    function store()
    {
        JLoader::import('adagencyads', JPATH_SITE . DS . 'components' . DS . 'com_adagency' . DS . 'models');
        $front_ads_model = $this->getInstance('adagencyAds', 'adagencyModel');
        global $mainframe;
        // $livesite = $mainframe->getSiteURL();
        $database = JFactory::getDBO();
        $link_label = 'ad_url';
        $item = $this->getTable('adagencyAds');
        $data = JRequest::get('post');
        $data['parameters']["html"] = addslashes($data['parameters']["html"]);
        $sendmail = $data['sendmail'];
        // Prepare the keywords, trim them
        if (isset($data['keywords']) && $data['keywords'] != '') {
            $data['keywords'] = implode(',', array_map('trim', explode(',', $data['keywords'])));
        }
        if ($data['id'] == 0) {
            $data['created'] = date("Y-m-d");
        } else {
            $current_banner = $this->getAdById($data['id']);
        }
        $data['key'] = '';
        $data['width'] = $data['parameters']['window_width'];
        $data['height'] = $data['parameters']['window_height'];
        $row->parameters['show_on'] = "onload";
        $expday = $data['parameters']['show_ad'] == 0 ? 0 * 24 * 60 * 60 * 1000 : $data['parameters']["show_ad"] * 24 * 60 * 60 * 1000;
        $showon = "window.onload = checkCount();";
        $cookie_name = md5(uniqid(rand(), 1));
        $script = '';
        if (intval($data["id"]) == 0) {
            $sql = "select max(`ordering`) from #__ad_agency_banners";
            $database->setQuery($sql);
            $database->query();
            $max_ordering = $database->loadColumn();
            $max_ordering = $max_ordering["0"];
            $data["ordering"] = $max_ordering + 1;
        }
        $site_url = JURI::root();
        switch ($data['parameters']["popup_type"]) {
            case 'webpage':
                $data['parameters']["preview_script"] = "window.open('" . $data['parameters']["page_url"] . "', 'popupad', 'width=" . $data['parameters']["window_width"] . ",height=" . $data['parameters']["window_height"] . ",toolbar=" . $data['parameters']["toolbar"] . ",status=" . $data['parameters']["status"] . ",menubar=" . $data['parameters']["menubar"] . ",scrollbars=" . $data['parameters']["scrollbars"] . ",location=no,resizable=" . $data['parameters']["resizable"] . "');";
                if ($data['parameters']["window_type"] == 'popup') {
                    $script = <<<EOD
<script language="JavaScript">
var expDays = {$expday};
var page = "{$data['parameters']["page_url"]}";
var windowprops = "width={$data['parameters']["window_width"]},height={$data['parameters']["window_height"]},toolbar={$data['parameters']["toolbar"]},status={$data['parameters']["status"]},menubar={$data['parameters']["menubar"]},scrollbars={$data['parameters']["scrollbars"]},location=no,resizable={$data['parameters']["resizable"]}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\twindow.open(page, "popupad", windowprops);
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                if ($data['parameters']["window_type"] == 'popunder') {
                    $script = <<<EOD
<script language="JavaScript">
var expDays = {$expday};
var page = "{$data['parameters']["page_url"]}";
var windowprops = "width={$data['parameters']["window_width"]},height={$data['parameters']["window_height"]},toolbar={$data['parameters']["toolbar"]},status={$data['parameters']["status"]},menubar={$data['parameters']["menubar"]},scrollbars={$data['parameters']["scrollbars"]},location=no,resizable={$data['parameters']["resizable"]}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\twindow.open(page, "popupad", windowprops).blur();
\t\twindow.focus();
        alert("1");
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
        alert("2");
\t}
}
{$showon}
</script>
EOD;
                }
                break;
            case 'image':
                $mosConfig_live_site = $livesite;
                $data['parameters']['preview_script'] = "var newPopup=window.open('','PopupWindow','width=" . $data['parameters']['window_width'] . ",height=" . $data['parameters']['window_height'] . ",toolbar=" . $data['parameters']['toolbar'] . ",status=" . $data['parameters']['status'] . ",menubar=" . $data['parameters']['menubar'] . ",scrollbars=" . $data['parameters']['scrollbars'] . ",location=no,resizable=" . $data['parameters']['resizable'] . "'); var popContent='';\n                \n                popContent+= '<a target=\\'_blank\\' href=\\'{$data["target_url"]}\\'><img src=\\'{$site_url}images/stories/ad_agency/{$data["advertiser_id"]}/{$data["image_url"]}\\' border=0></a>';\n\t\t\t\tnewPopup.document.write(popContent); newPopup.document.close(); newPopup.focus();";
                if ($data['parameters']['window_type'] == 'popup') {
                    $script = <<<EOD
<script type="text/javascript" language="javascript">

var expDays = {$expday};
var windowprops = "width={$data['parameters']['window_width']},height={$data['parameters']['window_height']},toolbar={$data['parameters']['toolbar']},status={$data['parameters']['status']},menubar={$data['parameters']['menubar']},scrollbars={$data['parameters']['scrollbars']},location=no,resizable={$data['parameters']['resizable']}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
    var count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\tvar newPopup=window.open("","PopupWindow",windowprops);
\t\tvar popContent='';
\t\tpopContent+= '<a target="_blank" href="{$link_label}"><img src="{$site_url}/images/stories/ad_agency/{$data["advertiser_id"]}/{$data["image_url"]}" border=0></a>';
\t\tnewPopup.document.write(popContent);
\t\tnewPopup.document.close();
\t\tnewPopup.focus();
\t}
    else{
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                if ($data['parameters']['window_type'] == 'popunder') {
                    $script = <<<EOD
<script language="javascript">

var expDays = {$expday};
var windowprops = "width={$data['parameters']['window_width']},height={$data['parameters']['window_height']},toolbar={$data['parameters']['toolbar']},status={$data['parameters']['status']},menubar={$data['parameters']['menubar']},scrollbars={$data['parameters']['scrollbars']},location=no,resizable={$data['parameters']['resizable']}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\tvar newPopup=window.open("","PopupWindow",windowprops);
\t\tvar popContent='';
\t\tpopContent+= '<a target="_blank" href="{$link_label}"><img src="{$site_url}/images/stories/ad_agency/{$data["advertiser_id"]}/{$data["image_url"]}" border=0></a>';
\t\tnewPopup.document.write(popContent);
\t\tnewPopup.document.close();
\t\tnewPopup.blur();
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                break;
            case 'html':
                $crt = 1;
                $string = 'href="';
                $fisier = $data['parameters']["html"];
                $pos1 = strpos($fisier, $string);
                while ($pos1) {
                    $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
                    $pos2 = strpos($fisier, '"');
                    $url = substr($fisier, 0, $pos2);
                    if ($url != 'ad_url') {
                        $data['parameters']['linktrack'][$crt] = $url;
                        $pos1 = false;
                    } elseif (isset($data['id'])) {
                        $sql = "SELECT parameters FROM #__ad_agency_banners WHERE id = " . $data['id'];
                        $database->setQuery($sql);
                        $tmp_params = $database->loadResult();
                        $tmp_params = @unserialize($tmp_params);
                        if (isset($tmp_params['linktrack'][1])) {
                            $url = $tmp_params['linktrack'][1];
                            $data['parameters']['linktrack'][1] = $url;
                        }
                        $pos1 = false;
                    }
                    //$crt++;
                    $pos1 = strpos($fisier, $string);
                }
                $html_content = "";
                $data['parameters']["html"] = preg_replace("/href((\\s+)?)=((\\s+)?)\"\\b((http(s?):\\/\\/)|(www\\.)|(ftp:\\/\\/))([\\w\\.]+)([-~\\/\\w+\\.-?]+)\\b/i", "href=\"ad_url", $data['parameters']['html']);
                $LINES = explode("\n", $data['parameters']["html"]);
                foreach ($LINES as $i => $v) {
                    $v = trim($v);
                    $html_content .= "popContent+='" . $v . "\\r\\n';\r\n";
                }
                $preview_content = "";
                $LINES = explode("\n", addslashes($data['parameters']["html"]));
                foreach ($LINES as $i => $v) {
                    $v = trim($v);
                    $preview_content .= "popContent+='" . $v . "\\r\\n';\r\n";
                }
                $data['parameters']['preview_script'] = "var newPopup=window.open('','PopupWindow','width=" . $data['parameters']['window_width'] . ",height=" . $data['parameters']['window_height'] . ",toolbar=" . $data['parameters']['toolbar'] . ",status=" . $data['parameters']['status'] . ",menubar=" . $data['parameters']['menubar'] . ",scrollbars=" . $data['parameters']['scrollbars'] . ",location=no,resizable=" . $data['parameters']['resizable'] . "');\n\t\t\t\t\tvar popContent=''; " . $preview_content . "\n\t\t\t\t\tnewPopup.document.write(popContent); newPopup.document.close(); newPopup.focus(); ";
                if ($data['parameters']['window_type'] == 'popup') {
                    $script = <<<EOD
<script language="javascript">
var expDays = {$expday};
var windowprops = "width={$data['parameters']['window_width']},height={$data['parameters']['window_height']},toolbar={$data['parameters']['toolbar']},status={$data['parameters']['status']},menubar={$data['parameters']['menubar']},scrollbars={$data['parameters']['scrollbars']},location=no,resizable={$data['parameters']['resizable']}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);

\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\tvar newPopup=window.open("","PopupWindow",windowprops);
\t\tvar popContent='';

\t\t{$html_content}

\t\tnewPopup.document.write(popContent);
\t\tnewPopup.document.close();
\t\tnewPopup.focus();
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                if ($data['parameters']['window_type'] == 'popunder') {
                    $script = <<<EOD
<script language="javascript">
var expDays = {$expday};

var windowprops = "width={$data['parameters']['window_width']},height={$data['parameters']['window_height']},toolbar={$data['parameters']['toolbar']},status={$data['parameters']['status']},menubar={$data['parameters']['menubar']},scrollbars={$data['parameters']['scrollbars']},location=no,resizable={$data['parameters']['resizable']}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\tvar newPopup=window.open("","PopupWindow",windowprops);
\t\tvar popContent='';

\t\t{$html_content}

\t\tnewPopup.document.write(popContent);
\t\tnewPopup.document.close();
\t\tnewPopup.blur();
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                break;
            default:
                break;
        }
        $content = $script;
        if ($data['parameters']['popup_type'] != "image") {
            $data['width'] = $data['parameters']['window_width'];
            $data['height'] = $data['parameters']['window_height'];
        }
        $data['parameters'] = serialize($data['parameters']);
        //$data['location'] = json_encode($data['limitation']);
        if (trim($data['ad_start_date']) != "") {
            $data['ad_start_date'] = date("Y-m-d H:i:s", strtotime($data['ad_start_date']));
        } else {
            $data['ad_start_date'] = date("Y-m-d H:i:s");
        }
        if (trim($data['ad_end_date']) != "Never" && trim($data['ad_end_date']) != "") {
            $data['ad_end_date'] = date("Y-m-d H:i:s", strtotime($data['ad_end_date']));
        }
        if (!$item->bind($data)) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->check()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->store()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        $configs = $this->getInstance("adagencyConfig", "adagencyAdminModel");
        $configs = $configs->getConfigs();
        $cids = intval($_POST['id']);
        $db = JFactory::getDBO();
        if (isset($_POST['id']) && $_POST['id'] != 0) {
            $where = $_POST['id'];
        } else {
            $where = mysql_insert_id();
        }
        if ($where == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $where = $db->loadResult();
        }
        if (isset($where)) {
            $this->store_geo($where);
            require_once JPATH_BASE . '/components/com_adagency/helpers/jomsocial.php';
            $helper = new JomSocialTargeting();
            $helper->save($where);
        }
        $sql = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id = '" . intval($where) . "'";
        $db->setQuery($sql);
        $db->query();
        $campLimInfo = $front_ads_model->getCampLimInfo($data['advertiser_id']);
        if (isset($data['adv_cmp'])) {
            foreach ($data['adv_cmp'] as $val) {
                if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                    if (isset($data['czones'][$val])) {
                        $query = "INSERT INTO `#__ad_agency_campaign_banner` (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`) VALUES ('" . intval($val) . "', '" . intval($where) . "', '100', NULL, " . $data['czones'][$val] . ");";
                        $db->setQuery($query);
                        $db->query();
                    }
                }
            }
        }
        $sql = "UPDATE #__ad_agency_banners SET `ad_code` = '" . addslashes(trim($content)) . "' WHERE `id`='" . intval($where) . "'";
        $db->setQuery($sql);
        $db->query();
        if ($sendmail && (isset($current_banner) && $current_banner->approved != $data['approved'] && $data['approved'] != 'P')) {
            $this->sendmail($current_banner->id, $data['approved']);
        }
        return $item->id;
    }
Пример #5
0
    function store()
    {
        $random_number = rand(1, 100);
        JLoader::import('adagencyads', JPATH_SITE . DS . 'components' . DS . 'com_adagency' . DS . 'models');
        $front_ads_model = JModelLegacy::getInstance('adagencyAds', 'adagencyModel');
        $database = JFactory::getDBO();
        $item = $this->getTable('adagencyAds');
        $_POST["parameters"]["ad_code"] = $_POST['transitioncode'];
        $data = JRequest::get('post');
        $sendmail = $data['sendmail'];
        $data['key'] = '';
        // Prepare the keywords, trim them
        if (isset($data['keywords']) && $data['keywords'] != '') {
            $data['keywords'] = implode(',', array_map('trim', explode(',', $data['keywords'])));
        }
        if ($data['id'] == 0) {
            $data['created'] = date("Y-m-d");
        } else {
            $current_banner = $this->getAdById($data['id']);
        }
        $data['parameters']["ad_code"] = $_POST['transitioncode'];
        /*saving floating ad*/
        $crt = 1;
        $string = 'href="';
        $fisier = $data['parameters']["ad_code"];
        $pos1 = strpos($fisier, $string);
        while ($pos1) {
            $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
            $pos2 = strpos($fisier, '"');
            $url = substr($fisier, 0, $pos2);
            $data['parameters']["linktrack"][$crt] = $url;
            $crt++;
            $pos1 = strpos($fisier, $string);
        }
        $bordercolor = $data['parameters']["border_color"];
        $backcolor = $data['parameters']["bg_color"];
        $html_content = preg_replace("/(href((\\s+)?)=((\\s+)?)\")\\b((http(s?):\\/\\/)|(www\\.)|(ftp:\\/\\/))([\\w\\.]+)([-~\\/\\w+\\.-?\\&\\,\\%\\=]+)\\b/i", "href=\"ad_url", $data['parameters']["ad_code"]);
        $closead = JText::_('ADAG_CLOSEAD');
        $script = <<<EOD
<SCRIPT language="JavaScript1.2">
var ie=document.all;
var dom=document.getElementById;
var ns4=document.layers;
var bouncelimit=32;
var direction="up";

function initbox(){
if (!document.all) {
\tfafa = document.getElementById("floatit");
\tfafa.parentNode.removeChild(fafa);
\tdocument.body.appendChild(fafa); }
if (!dom&&!ie&&!ns4)
return;
crossobj=(dom)?document.getElementById("floatit").style : ie? document.all.floatit : document.floatit;
scroll_top=(ie)? document.body.scrollTop : window.pageYOffset;
crossobj.top=scroll_top-250;
crossobj.visibility=(dom||ie)? "visible" : "show";
dropstart=setInterval("floatit()",50);
}

function floatit(){
scroll_top=(ie)? document.body.scrollTop : window.pageYOffset;
if (parseInt(crossobj.top)<100+scroll_top)
crossobj.top=parseInt(crossobj.top)+40;
else{
clearInterval(dropstart);
bouncestart=setInterval("bouncein()",50);
}
}

function bouncein(){
crossobj.top=parseInt(crossobj.top)-bouncelimit;
if (bouncelimit<0)
bouncelimit+=8;
bouncelimit=bouncelimit*-1;
if (bouncelimit==0){
clearInterval(bouncestart);
}
}

function HideVertFloating(number) {
\tvar divs = document.getElementsByClassName('floatit'+number);
\tfor(var i=0; i<divs.length; i++){
\t\tdivs[i].parentNode.removeChild(divs[i]);
\t}
}

var screenWidth = window.innerWidth ? window.innerWidth*.92 : document.body.offsetWidth*.92;
var screenHeight = window.innerHeight ? window.innerHeight : document.body.offsetHeight;

</SCRIPT>
<div id="floatit" class="floatit{$random_number} mod_ijoomlazone" style="height:{$data['height']}px; width:{$data['width']}px; position:absolute; xtopzz xbottzz xleftzz xrightzz z-index:500; background-color: #{$backcolor}; border:{$data['parameters']["border"]}px solid #{$bordercolor};" >
    <table cellpadding="5" cellspacing="0" width="100%" id="AutoNumber2">
    \t<tr>
    \t\t<td width="100%" style="text-align:right;">
    \t\t\t<a href="" onClick="HideVertFloating({$random_number}); return false;">{$closead}</a>
    \t\t</td>
    \t</tr>
    \t<tr>
    \t\t<td width="100%">
\t\t\t\t<!----start---->
\t\t\t\t{$html_content}
\t\t\t\t<!----End---->
\t\t\t</td>
\t\t</tr>
\t</table>

\t<script type="text/javascript">
\t\tinitbox();
\t\tvar xxx;
    </script>
</div>


EOD;
        //$adcodu = $script;
        //var_dump($data["parameters"]);die();
        $adcodu = str_replace("xtopzz", "top: " . $data["parameters"]["toppos"] . "px;", $script);
        $adcodu = str_replace("xleftzz", "left: " . $data["parameters"]["leftpos"] . "px;", $adcodu);
        $adcodu = str_replace("xbottzz", "bottom: " . $data["parameters"]["bottpos"] . "px;", $adcodu);
        $adcodu = str_replace("xrightzz", "right: " . $data["parameters"]["rightpos"] . "px;", $adcodu);
        //var_dump($adcodu);die();
        $data['parameters'] = serialize($data['parameters']);
        //$data['location'] = json_encode($data['limitation']);
        if (trim($data['ad_start_date']) != "") {
            $data['ad_start_date'] = date("Y-m-d H:i:s", strtotime($data['ad_start_date']));
        } else {
            $data['ad_start_date'] = date("Y-m-d H:i:s");
        }
        if (trim($data['ad_end_date']) != "Never" && trim($data['ad_end_date']) != "") {
            $data['ad_end_date'] = date("Y-m-d H:i:s", strtotime($data['ad_end_date']));
        }
        if (intval($data["id"]) == 0) {
            $sql = "select max(`ordering`) from #__ad_agency_banners";
            $database->setQuery($sql);
            $database->query();
            $max_ordering = $database->loadColumn();
            $max_ordering = $max_ordering["0"];
            $data["ordering"] = $max_ordering + 1;
        }
        if (!$item->bind($data)) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->check()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->store()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        $configs = $this->getInstance("adagencyConfig", "adagencyAdminModel");
        $configs = $configs->getConfigs();
        $cids = intval($_POST['id']);
        $db = JFactory::getDBO();
        if (isset($_POST['id']) && $_POST['id'] != 0) {
            $where = $_POST['id'];
        } else {
            $where = mysql_insert_id();
        }
        if ($where == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $where = $db->loadResult();
        }
        if (isset($where)) {
            $this->store_geo($where);
            require_once JPATH_BASE . '/components/com_adagency/helpers/jomsocial.php';
            JomSocialTargeting::save($where);
        }
        $sql = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id = '" . intval($where) . "'";
        $db->setQuery($sql);
        $db->query();
        $campLimInfo = $front_ads_model->getCampLimInfo($data['advertiser_id']);
        if (isset($data['adv_cmp'])) {
            foreach ($data['adv_cmp'] as $val) {
                if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                    if (isset($data['czones'][$val])) {
                        $query = "INSERT INTO `#__ad_agency_campaign_banner` (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`) VALUES ('" . intval($val) . "', '" . intval($where) . "', '100', NULL, " . $data['czones'][$val] . ");";
                        $db->setQuery($query);
                        $db->query();
                    }
                }
            }
        }
        $sql = "UPDATE #__ad_agency_banners SET `ad_code` = '" . addslashes(trim($adcodu)) . "' WHERE `id`='" . intval($where) . "'";
        $db->setQuery($sql);
        $db->query();
        if ($sendmail && (isset($current_banner) && $current_banner->approved != $data['approved'] && $data['approved'] != 'P')) {
            $this->sendmail($current_banner->id, $data['approved']);
        }
        return true;
    }
Пример #6
0
    function store()
    {
        $database = JFactory::getDBO();
        $db = JFactory::getDBO();
        $link_label = 'ad_url';
        $item = $this->getTable('adagencyAds');
        $adsModel = $this->getInstance("adagencyAds", "adagencyModel");
        $configs = $this->getInstance("adagencyConfig", "adagencyModel");
        $configs = $configs->getConfigs();
        $notify = JRequest::getInt('id');
        $changed = "new";
        $advid = $this->getCurrentAdvertiser();
        if (isset($advid->aid)) {
            $advid = $advid->aid;
        } else {
            $advid = 0;
        }
        $data = JRequest::get('post');
        if ($data['id'] == 0) {
            $data['created'] = date("Y-m-d");
            $data['key'] = md5(rand(1000, 9999));
            $data['ad_start_date'] = $data['created'];
        } else {
            $data['key'] = NULL;
        }
        $adv_cmp = $data['adv_cmp'];
        //echo "<pre>";var_dump($adv_cmp);echo "</pre><hr />";//die();
        if ($notify != '0') {
            $data['width'] = $data['parameters']['window_width'];
            $data['height'] = $data['parameters']['window_height'];
        } else {
            $data['parameters']['window_width'] = '';
            $data['parameters']['window_height'] = '';
            $data['parameters']['toolbar'] = '';
            $data['parameters']['scrollbars'] = '';
            $data['parameters']['status'] = '';
            $data['parameters']['menubar'] = '';
            $data['parameters']['resizable'] = '';
            $data['parameters']['window_type'] = '';
        }
        $data['parameters']['show_on'] = $data['show_on'];
        $data['parameters']['show_ad'] = $data['show_ad'];
        $showon = "window.onload = checkCount;";
        /// : "window.onunload = checkCount;";
        $cookie_name = md5(uniqid(rand(), 1));
        $script = '';
        //echo "<pre>";var_dump($data['parameters']);die('123');
        $expday = "9999";
        $data['parameters']["window_type"] = 'popup';
        $data['parameters']["window_width"] = 600;
        $data['parameters']["window_height"] = 600;
        $data['parameters']["status"] = 'no';
        $data['parameters']["toolbar"] = 'no';
        $data['parameters']["resizable"] = 'yes';
        $data['parameters']["scrollbars"] = 'yes';
        switch ($data['parameters']["popup_type"]) {
            case 'webpage':
                $data['parameters']["preview_script"] = "window.open('" . $data['parameters']["page_url"] . "', 'popupad', 'width=" . $data['parameters']["window_width"] . ",height=" . $data['parameters']["window_height"] . ",toolbar=" . $data['parameters']["toolbar"] . ",status=" . $data['parameters']["status"] . ",menubar=" . $data['parameters']["menubar"] . ",scrollbars=" . $data['parameters']["scrollbars"] . ",location=no,resizable=" . $data['parameters']["resizable"] . "');";
                if ($data['parameters']["window_type"] == 'popup') {
                    $script = <<<EOD
<script language="JavaScript">
var expDays = {$expday};
var page = "{$data['parameters']["page_url"]}";
var windowprops = "width={$data['parameters']["window_width"]},height={$data['parameters']["window_height"]},toolbar={$data['parameters']["toolbar"]},status={$data['parameters']["status"]},menubar={$data['parameters']["menubar"]},scrollbars={$data['parameters']["scrollbars"]},location=no,resizable={$data['parameters']["resizable"]}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\twindow.open(page, "popupad", windowprops);
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                if ($data['parameters']["window_type"] == 'popunder') {
                    $script = <<<EOD
<script language="JavaScript">
var expDays = {$expday};
var page = "{$data['parameters']["page_url"]}";
var windowprops = "width={$data['parameters']["window_width"]},height={$data['parameters']["window_height"]},toolbar={$data['parameters']["toolbar"]},status={$data['parameters']["status"]},menubar={$data['parameters']["menubar"]},scrollbars={$data['parameters']["scrollbars"]},location=no,resizable={$data['parameters']["resizable"]}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\twindow.open(page, "popupad", windowprops).blur();
\t\twindow.focus();
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                break;
            case 'image':
                $mosConfig_live_site = JURI::base();
                $data['parameters']['preview_script'] = "var newPopup=window.open('','PopupWindow','width=" . $data['parameters']['window_width'] . ",height=" . $data['parameters']['window_height'] . ",toolbar=" . $data['parameters']['toolbar'] . ",status=" . $data['parameters']['status'] . ",menubar=" . $data['parameters']['menubar'] . ",scrollbars=" . $data['parameters']['scrollbars'] . ",location=no,resizable=" . $data['parameters']['resizable'] . "'); var popContent='<HTML><HEAD><TITLE>Advertisement</TITLE></HEAD><BODY MARGINWIDTH=0 MARGINHEIGHT=0 LEFTMARGIN=0 TOPMARGIN=0 BOTTOMMARGIN=0>';\n\t\t\t\tpopContent+= '<a target=\\'_blank\\' href=\\'{$data["target_url"]}\\'><img src=\\'{$mosConfig_live_site}/images/stories/ad_agency/{$data["advertiser_id"]}/{$data["image_url"]}\\' height=\\'{$data["height"]}\\' width=\\'{$data["width"]}\\' border=0></a>';\n\t\t\t\tpopContent+='</BODY></HTML>';\n\t\t\t\tnewPopup.document.write(popContent); newPopup.document.close(); newPopup.focus();";
                if ($data['parameters']['window_type'] == 'popup') {
                    $script = <<<EOD
<script language="javascript">

var expDays = {$expday};
var windowprops = "width={$data['parameters']['window_width']},height={$data['parameters']['window_height']},toolbar={$data['parameters']['toolbar']},status={$data['parameters']['status']},menubar={$data['parameters']['menubar']},scrollbars={$data['parameters']['scrollbars']},location=no,resizable={$data['parameters']['resizable']}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\tvar newPopup=window.open("","PopupWindow",windowprops);
\t\tvar popContent='<HTML><HEAD><TITLE>Advertisement</TITLE></HEAD><BODY MARGINWIDTH=0 MARGINHEIGHT=0 LEFTMARGIN=0 TOPMARGIN=0 BOTTOMMARGIN=0>';
\t\tpopContent+= '<a target="_blank" href="{$link_label}"><img src="{$mosConfig_live_site}/images/stories/ad_agency/{$data["advertiser_id"]}/{$data["image_url"]}" height="{$data["height"]}" width="{$data["width"]}" border=0></a>';
\t\tpopContent+='</BODY></HTML>';
\t\tnewPopup.document.write(popContent);
\t\tnewPopup.document.close();
\t\tnewPopup.focus();
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                if ($data['parameters']['window_type'] == 'popunder') {
                    $script = <<<EOD
<script language="javascript">

var expDays = {$expday};
var windowprops = "width={$data['parameters']['window_width']},height={$data['parameters']['window_height']},toolbar={$data['parameters']['toolbar']},status={$data['parameters']['status']},menubar={$data['parameters']['menubar']},scrollbars={$data['parameters']['scrollbars']},location=no,resizable={$data['parameters']['resizable']}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\tvar newPopup=window.open("","PopupWindow",windowprops);
\t\tvar popContent='<HTML><HEAD><TITLE>Advertisement</TITLE></HEAD><BODY MARGINWIDTH=0 MARGINHEIGHT=0 LEFTMARGIN=0 TOPMARGIN=0 BOTTOMMARGIN=0>';
\t\tpopContent+= '<a target="_blank" href="{$link_label}"><img src="{$mosConfig_live_site}/images/stories/ad_agency/{$data["advertiser_id"]}/{$data["image_url"]}" height="{$data["height"]}" width="{$data["width"]}" border=0></a>';
\t\tpopContent+='</BODY></HTML>';
\t\tnewPopup.document.write(popContent);
\t\tnewPopup.document.close();
\t\tnewPopup.blur();
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                break;
            case 'html':
                $crt = 1;
                $string = 'href="';
                $fisier = $data['parameters']["html"];
                $pos1 = strpos($fisier, $string);
                while ($pos1) {
                    $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
                    $pos2 = strpos($fisier, '"');
                    $url = substr($fisier, 0, $pos2);
                    $data['parameters']['linktrack'][$crt] = $url;
                    $crt++;
                    $pos1 = strpos($fisier, $string);
                }
                $html_content = "";
                $data['parameters']["html"] = preg_replace("/href((\\s+)?)=((\\s+)?)\"\\b((http(s?):\\/\\/)|(www\\.)|(ftp:\\/\\/))([\\w\\.]+)([-~\\/\\w+\\.-?]+)\\b/i", "href=\"ad_url", $data['parameters']['html']);
                $LINES = explode("\n", $data['parameters']["html"]);
                foreach ($LINES as $i => $v) {
                    $v = trim($v);
                    $html_content .= "popContent+='" . $v . "\\r\\n';\r\n";
                }
                $preview_content = "";
                $LINES = explode("\n", addslashes($data['parameters']["html"]));
                foreach ($LINES as $i => $v) {
                    $v = trim($v);
                    $preview_content .= "popContent+='" . $v . "\\r\\n';\r\n";
                }
                $data['parameters']['preview_script'] = "var newPopup=window.open('','PopupWindow','width=" . $data['parameters']['window_width'] . ",height=" . $data['parameters']['window_height'] . ",toolbar=" . $data['parameters']['toolbar'] . ",status=" . $data['parameters']['status'] . ",menubar=" . $data['parameters']['menubar'] . ",scrollbars=" . $data['parameters']['scrollbars'] . ",location=no,resizable=" . $data['parameters']['resizable'] . "');\n\t\t\t\t\tvar popContent='<HTML><HEAD><TITLE>Advertisement</TITLE></HEAD><BODY MARGINWIDTH=0 MARGINHEIGHT=0 LEFTMARGIN=0 TOPMARGIN=0 BOTTOMMARGIN=0>'; " . $preview_content . " popContent+='</BODY></HTML>';\n\t\t\t\t\tnewPopup.document.write(popContent); newPopup.document.close(); newPopup.focus(); ";
                if ($data['parameters']['window_type'] == 'popup') {
                    $script = <<<EOD
<script language="javascript">
var expDays = {$expday};
var windowprops = "width={$data['parameters']['window_width']},height={$data['parameters']['window_height']},toolbar={$data['parameters']['toolbar']},status={$data['parameters']['status']},menubar={$data['parameters']['menubar']},scrollbars={$data['parameters']['scrollbars']},location=no,resizable={$data['parameters']['resizable']}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\tvar newPopup=window.open("","PopupWindow",windowprops);
\t\tvar popContent='<HTML><HEAD><TITLE>Advertisement</TITLE></HEAD><BODY MARGINWIDTH=0 MARGINHEIGHT=0 LEFTMARGIN=0 TOPMARGIN=0 BOTTOMMARGIN=0>';

\t\t{$html_content}

\t\tpopContent+='</BODY></HTML>';
\t\tnewPopup.document.write(popContent);
\t\tnewPopup.document.close();
\t\tnewPopup.focus();
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                if ($data['parameters']['window_type'] == 'popunder') {
                    $script = <<<EOD
<script language="javascript">
var expDays = {$expday};
var windowprops = "width={$data['parameters']['window_width']},height={$data['parameters']['window_height']},toolbar={$data['parameters']['toolbar']},status={$data['parameters']['status']},menubar={$data['parameters']['menubar']},scrollbars={$data['parameters']['scrollbars']},location=no,resizable={$data['parameters']['resizable']}";
function GetCookie (name) {
\tvar arg = name + "=";
\tvar alen = arg.length;
\tvar clen = document.cookie.length;
\tvar i = 0;
\twhile (i < clen) {
\t\tvar j = i + alen;
\t\tif (document.cookie.substring(i, j) == arg) return getCookieVal (j);
\t\ti = document.cookie.indexOf(" ", i) + 1;
\t\tif (i == 0) break;
\t}
\treturn null;
}
function SetCookie (name, value) {
\tvar argv = SetCookie.arguments;
\tvar argc = SetCookie.arguments.length;
\tvar expires = (argc > 2) ? argv[2] : null;
\tvar path = (argc > 3) ? argv[3] : null;
\tvar domain = (argc > 4) ? argv[4] : null;
\tvar secure = (argc > 5) ? argv[5] : false;
\tdocument.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
\tvar exp = new Date();
\texp.setTime (exp.getTime() - 1);
\tvar cval = GetCookie (name);
\tdocument.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays));
function amt(){
\tvar count = GetCookie("{$cookie_name}");
\tif(count == null) {
\t\tSetCookie("{$cookie_name}","1");
\t\treturn 1;
\t} else {
\t\tvar newcount = parseInt(count) + 1;
\t\tDeleteCookie("{$cookie_name}");
\t\tSetCookie("{$cookie_name}",newcount,exp);
\t\treturn count;
\t}
}
function getCookieVal(offset) {
\tvar endstr = document.cookie.indexOf (";", offset);
\tif (endstr == -1) endstr = document.cookie.length;
\treturn unescape(document.cookie.substring(offset, endstr));
}
function checkCount() {
\tvar count = GetCookie("{$cookie_name}");
\tif (count == null) {
\t\tcount=1;
\t\tSetCookie("{$cookie_name}", count, exp);
\t\tvar newPopup=window.open("","PopupWindow",windowprops);
\t\tvar popContent='<HTML><HEAD><TITLE>Advertisement</TITLE></HEAD><BODY MARGINWIDTH=0 MARGINHEIGHT=0 LEFTMARGIN=0 TOPMARGIN=0 BOTTOMMARGIN=0>';

\t\t{$html_content}

\t\tpopContent+='</BODY></HTML>';
\t\tnewPopup.document.write(popContent);
\t\tnewPopup.document.close();
\t\tnewPopup.blur();
\t} else {
\t\tcount++;
\t\tSetCookie("{$cookie_name}", count, exp);
\t}
}
{$showon}
</script>
EOD;
                }
                break;
            default:
                break;
        }
        $content = $script;
        if ($data['parameters']['popup_type'] != "image") {
            $data['width'] = $data['parameters']['window_width'];
            $data['height'] = $data['parameters']['window_height'];
        }
        // Check settings for auto-approve ads [begin]
        $advertiser = $this->getCurrentAdvertiser();
        if (isset($advertiser->apr_ads) && $advertiser->apr_ads != 'G') {
            $approved = $advertiser->apr_ads;
        } else {
            $sql = "SHOW COLUMNS FROM `#__ad_agency_banners` WHERE field = 'approved'";
            $db->setQuery($sql);
            $res = $db->loadObject();
            $approved = $res->Default;
        }
        if ($approved == 'N') {
            $approved = 'P';
        }
        $data['approved'] = $approved;
        // if the ad is not new then ->
        if (isset($data['id']) && $data['id'] > 0) {
            $ex_ad = $this->getAdById($data['id']);
            $ex_ad->parameters = @unserialize($ex_ad->parameters);
            // if the ad was approved or declined and the new status would be 'pending', make sure changes occured to it!
            if ($ex_ad->approved != 'P' && $data['approved'] == 'P') {
                // if no change has been made, let the status be as it was
                if ($ex_ad->title == $data['title'] && $ex_ad->description == $data['description'] && $ex_ad->parameters['popup_type'] == $data['parameters']['popup_type']) {
                    if ($data['parameters']['popup_type'] == 'html' && $ex_ad->parameters['html'] == $data['parameters']['html']) {
                        $data['approved'] = $ex_ad->approved;
                    } elseif ($data['parameters']['popup_type'] == 'image' && $data['target_url'] == $ex_ad->target_url && $data["image_url"] == $ex_ad->image_url) {
                        $data['approved'] = $ex_ad->approved;
                    } elseif ($data['parameters']['popup_type'] == 'webpage' && $ex_ad->parameters['page_url'] == $data['parameters']['page_url']) {
                        $data['approved'] = $ex_ad->approved;
                    } else {
                        //it was changed, and sent email to administrator
                        $notify = "0";
                        $changed = "changed";
                    }
                } else {
                    //it was changed, and sent email to administrator
                    $notify = "0";
                    $changed = "changed";
                }
            }
        }
        // Check settings for auto-approve ads [end]
        //echo "<pre>";var_dump($data);die();
        $data['parameters'] = serialize($data['parameters']);
        if (!$item->bind($data)) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->check()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->store()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (isset($notify) && $notify != 0) {
            $where = $notify;
        } else {
            $where = mysql_insert_id();
        }
        if ($where == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $where = $db->loadResult();
        }
        if (!isset($data['id']) || $data['id'] == 0) {
            $data['id'] = mysql_insert_id();
        }
        $idi = $data['id'];
        if ($idi == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $idi = $db->loadResult();
        }
        if (isset($idi)) {
            $this->store_geo($idi);
        }
        require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
        JomSocialTargeting::save($idi);
        $campLimInfo = $adsModel->getCampLimInfo();
        if (isset($adv_cmp)) {
            $query = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id=" . intval($idi) . " AND relative_weighting = 100";
            $sqlz[] = $query;
            $db->setQuery($query);
            $db->query();
            foreach ($adv_cmp as $val) {
                if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                    $query = "INSERT INTO `#__ad_agency_campaign_banner`\n                        (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`)\n                        VALUES ('" . intval($val) . "', '" . intval($idi) . "', '100', NULL, " . intval($data['czones'][$val]) . ");";
                    //$query = "INSERT INTO #__ad_agency_campaign_banner VALUES ({$val},{$idi},100)";
                    $db->setQuery($query);
                    $db->query();
                    $sqlz[] = $query;
                }
            }
        }
        //var_dump($content);die('123');
        $sql = "UPDATE #__ad_agency_banners SET `ad_code` = '" . $db->escape($content) . "' WHERE `id`='" . intval($where) . "'";
        $db = JFactory::getDBO();
        $db->setQuery($sql);
        $db->query();
        // Send email to administrator
        if ($notify == '0') {
            $sql = "SELECT a.user_id, a.company, a.telephone as phone, u.name, u.username, u.email FROM #__ad_agency_advertis AS a LEFT OUTER JOIN #__users as u on u.id=a.user_id\tWHERE a.aid=" . intval($advid) . " GROUP BY a.aid";
            $db->setQuery($sql);
            $user = $db->loadObject();
            if (isset($user) && $user != NULL) {
                $sql = "select `params` from #__ad_agency_settings";
                $db->setQuery($sql);
                $db->query();
                $email_params = $db->loadColumn();
                $email_params = @$email_params["0"];
                $email_params = unserialize($email_params);
                $ok_send_email = 0;
                $subject = "";
                $message = "";
                if ($changed == "new") {
                    $subject = $configs->sbnewad;
                    $message = $configs->bodynewad;
                    $ok_send_email = $email_params["send_ban_added"];
                } else {
                    $subject = $configs->sbadchanged;
                    $message = $configs->boadchanged;
                    $ok_send_email = $email_params["send_ad_modified"];
                }
                if (!isset($user->company) || $user->company == "") {
                    $user->company = "N/A";
                }
                if (!isset($user->phone) || $user->phone == "") {
                    $user->phone = "N/A";
                }
                $current_ad = $this->getAdById($where);
                if (isset($current_ad->approved) && $current_ad->approved == "Y") {
                    $status = JText::_("NEWADAPPROVED");
                } else {
                    $status = JText::_("ADAG_PENDING");
                }
                $epreview = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&no_html=1&adid=" . $where . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&adid=" . $where . "</a>";
                $eapprove = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $where . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $where . "&key=" . $data['key'] . "</a>";
                $edecline = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $where . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $where . "&key=" . $data['key'] . "</a>";
                $subject = str_replace('{name}', $user->name, $subject);
                $subject = str_replace('{login}', $user->username, $subject);
                $subject = str_replace('{email}', $user->email, $subject);
                $subject = str_replace('{banner}', $data['title'], $subject);
                $subject = str_replace('{company}', $user->company, $subject);
                $subject = str_replace('{phone}', $user->phone, $subject);
                $subject = str_replace('{approval_status}', $status, $subject);
                $subject = str_replace('{banner_preview_url}', $epreview, $subject);
                $subject = str_replace('{approve_banner_url}', $eapprove, $subject);
                $subject = str_replace('{decline_banner_url}', $edecline, $subject);
                $message = str_replace('{name}', $user->name, $message);
                $message = str_replace('{login}', $user->username, $message);
                $message = str_replace('{email}', $user->email, $message);
                $message = str_replace('{banner}', $data['title'], $message);
                $message = str_replace('{company}', $user->company, $message);
                $message = str_replace('{phone}', $user->phone, $message);
                $message = str_replace('{approval_status}', $status, $message);
                $message = str_replace('{banner_preview_url}', $epreview, $message);
                $message = str_replace('{approve_banner_url}', $eapprove, $message);
                $message = str_replace('{decline_banner_url}', $edecline, $message);
                if ($ok_send_email == 1) {
                    JFactory::getMailer()->sendMail($configs->fromemail, $configs->fromname, $configs->adminemail, $subject, $message, 1);
                }
            }
        }
        // END - Send email to administrator
        $sql = "SELECT approved FROM #__ad_agency_banners WHERE id = " . intval($idi);
        $db->setQuery($sql);
        $approved = $db->loadResult();
        $isWizzard = $this->isWizzard();
        $item_id = JRequest::getInt('Itemid', '0', 'post');
        if ($item_id != 0) {
            $Itemid = "&Itemid=" . $item_id;
        } else {
            $Itemid = NULL;
        }
        $link = "index.php?option=com_adagency&controller=adagencyAds&p=1" . $Itemid;
        $msg = JText::_('AD_BANNERSAVED');
        global $mainframe;
        if ($isWizzard && $approved == 'P') {
            $mainframe->redirect($link, $msg);
        }
        //echo "<pre>";var_dump($sqlz);echo "</pre>";die('-END-');
        return true;
    }
Пример #7
0
    function getParams(&$params)
    {
        //return the feed data structure for the template
        $my = JFactory::getUser();
        $mosConfig_absolute_path = JPATH_BASE;
        $mosConfig_live_site = JURI::base();
        $database = JFactory::getDBO();
        $db = JFactory::getDBO();
        $rotator_content = NULL;
        $script = NULL;
        $http_host = explode(':', $_SERVER['HTTP_HOST']);
        $the_rot_type = '';
        $module = $params;
        $it_id_con = NULL;
        $adv_here_bottom = NULL;
        $JApp = JFactory::getApplication();
        $jnow = JFactory::getDate();
        if (intval(JVERSION) < 3) {
            $jnow->setOffset($JApp->getCfg('offset'));
        }
        $real_ip = iJoomlaGetRealIpAddrModule();
        if ($real_ip == null || $real_ip == "" || $real_ip == " ") {
            $real_ip = "127.0.0.1";
        }
        if (strpos($real_ip, ",") !== FALSE) {
            $real_ip = explode(",", $real_ip);
            $real_ip = $real_ip["0"];
        }
        $offset = JFactory::getApplication()->getCfg('offset');
        $today = JFactory::getDate('now', $offset);
        $time_interval = $today->toSql(true);
        $document = JFactory::getDocument();
        $sql = "select `params` from #__ad_agency_settings";
        $database->setQuery($sql);
        $configs = $database->loadColumn();
        $configs = $configs['0'];
        @($configs = @unserialize($configs));
        if (!isset($configs['jquery_front']) || @$configs['jquery_front'] == "0") {
            $document->addScript(JURI::root() . "components/com_adagency/includes/js/jquery.js");
        }
        JHtml::_('jquery.framework');
        $document->addScript(JURI::root() . 'components/com_adagency/includes/js/domready.js');
        require_once $mosConfig_absolute_path . "/components/com_adagency/helpers/helper.php";
        if ((!empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) != 'off' || isset($http_host[1]) && $http_host[1] == 443) && substr($mosConfig_live_site, 0, 8) != 'https://') {
            $mosConfig_live_site1 = 'https://' . substr($mosConfig_live_site, 7);
        } else {
            $mosConfig_live_site1 = $mosConfig_live_site;
        }
        if (!class_exists('TableadagencyAds')) {
            include_once $mosConfig_absolute_path . "/components/com_adagency/tables/adagencyads.php";
        }
        require_once $mosConfig_absolute_path . "/components/com_adagency/helpers/stats_count.php";
        require_once $mosConfig_absolute_path . "/administrator/components/com_adagency/helpers/jomsocial.php";
        $sql = "SELECT * FROM #__ad_agency_settings LIMIT 1";
        $db->setQuery($sql);
        $globalSettings = $db->loadObject();
        $sql = "SELECT * FROM #__ad_agency_zone WHERE zoneid=" . $module->id . " LIMIT 1";
        $db->setQuery($sql);
        $zoneSettings = $db->loadObject();
        @($zoneSettings->adparams = @unserialize($zoneSettings->adparams));
        @($zoneSettings->textadparams = @unserialize($zoneSettings->textadparams));
        if (!isset($zoneSettings->adparams['width'])) {
            $zoneSettings->adparams['width'] = NULL;
        }
        if (!isset($zoneSettings->adparams['height'])) {
            $zoneSettings->adparams['height'] = NULL;
        }
        $obj = new stdClass();
        $obj->banner_id = $zoneSettings->defaultad;
        $defaultad[0] = $obj;
        $sql = "select `approved` from #__ad_agency_banners where `id`=" . intval($zoneSettings->defaultad);
        $db->setQuery($sql);
        $db->query();
        $approved = $db->loadColumn();
        @($approved = $approved["0"]);
        if ($approved == "N") {
            $defaultad = array();
        }
        $limit_ip = $globalSettings->limit_ip;
        $settings = $globalSettings->lastsend;
        $ad_agency_folder = $globalSettings->imgfolder;
        $default = time();
        if (!isset($settings) || $settings == NULL) {
            $database->setQuery("INSERT INTO #__ad_agency_settings (`email_report`,`lastsend`) VALUES ('','{$default}')");
            $database->query();
        }
        if (!isset($settings) || $settings == NULL) {
            $settings = 0;
        }
        $settings = strtotime(date("Y-m-d", $settings));
        $time = strtotime(date("Y-m-d", time()));
        if ($settings < $time) {
            $database->setQuery("SELECT `aid` FROM #__ad_agency_advertis WHERE `approved`='Y'");
            $aids = $database->loadObjectList();
            if (isset($aids)) {
                foreach ($aids as $aid) {
                    $database->setQuery("SELECT `lastreport`,`user_id`,`email_daily_report`,`email_weekly_report`,`email_month_report`,`email_campaign_expiration`,`weekreport`,`monthreport` FROM #__ad_agency_advertis WHERE `aid`={$aid->aid}");
                    $useradv = $database->loadObjectList();
                    $newtime = time();
                    $database->setQuery("UPDATE #__ad_agency_settings SET `lastsend`='" . $newtime . "'");
                    $database->query();
                    foreach ($useradv as $users) {
                        if ($users->email_daily_report == "Y") {
                            if ($users->lastreport + 3600 * 24 < time()) {
                                $impression = impression($aid->aid, $users->lastreport);
                                $clicks = clicks($aid->aid, $users->lastreport);
                                sendreport($users->user_id, $clicks, $impression, $users->lastreport);
                            }
                        }
                        if ($users->email_weekly_report == "Y") {
                            if ($users->weekreport + 3600 * 24 * 7 < time()) {
                                $impression = impression($aid->aid, $users->weekreport);
                                $clicks = clicks($aid->aid, $users->weekreport);
                                sendreport($users->user_id, $clicks, $impression, $users->weekreport);
                            }
                        }
                        if ($users->email_month_report == "Y") {
                            if ($users->monthreport + 3600 * 24 * 30 < time()) {
                                $impression = impression($aid->aid, $users->monthreport);
                                $clicks = clicks($aid->aid, $users->monthreport);
                                sendreport($users->user_id, $clicks, $impression, $users->monthreport);
                            }
                        }
                        if ($users->email_campaign_expiration == "Y") {
                            exp_notices($users->user_id);
                        } else {
                            exp_notices($users->user_id, false);
                        }
                    }
                    //end foreach
                }
                //end foreach
            }
        }
        if (isset($_SERVER['HTTP_USER_AGENT']) && checkbot($_SERVER['HTTP_USER_AGENT']) != 1) {
            $valid_c = array();
            array_push($valid_c, 0);
            $config = JFactory::getConfig();
            $siteOffset = $config->get('offset');
            $jnow = JFactory::getDate('now', $siteOffset);
            $sql = "SELECT id FROM #__ad_agency_banners WHERE (media_type='Transition' OR media_type='Floating') AND ad_start_date <= '" . $jnow . "' AND (ad_end_date >= '" . $jnow . "' OR ad_end_date = '0000-00-00 00:00:00') AND `approved`='Y'";
            $database->setQuery($sql);
            $ids = $database->loadColumn();
            if ($database->getErrorMsg()) {
                die('SQL error');
            }
            foreach ($ids as $sid) {
                $cookie_name = "spl" . md5($sid);
                if (isset($_COOKIE[$cookie_name])) {
                    array_push($valid_c, $sid);
                }
            }
            $valid_cookie = implode(",", $valid_c);
            ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            $bannernr = $zoneSettings->banners;
            if (isset($_GET['Itemid'])) {
                $the_item_id = intval($_GET['Itemid']);
            } else {
                $the_item_id = NULL;
            }
            if (!isset($the_item_id) || $the_item_id == 0) {
                $the_item_id = NULL;
            } else {
                $it_id_con = "&Itemid=" . intval($the_item_id);
            }
            $bannernr_cols = $zoneSettings->banners_cols;
            $bannernr_rows = $bannernr;
            $rotator_info = $zoneSettings;
            if (isset($rotator_info) && $rotator_info != NULL) {
                // v.1.5.3 - adding "advertise here" link - start
                $target = '';
                if ($rotator_info->link_taketo == 0) {
                    $link = JRoute::_('index.php?option=com_adagency&controller=adagencyPackages' . $it_id_con);
                } elseif ($rotator_info->link_taketo == 1) {
                    $link = JRoute::_('index.php?option=com_adagency&controller=adagencyAdvertisers&task=register' . $it_id_con);
                } elseif ($rotator_info->link_taketo == 3) {
                    $link = JRoute::_('index.php?option=com_adagency&controller=adagencyAdvertisers&task=overview' . $it_id_con);
                } else {
                    $link = $rotator_info->taketo_url;
                    $target = 'target="_blank"';
                }
                $adv_here_top = '';
                $adv_here_bottom = '';
                $keywords = $document->getMetaData('keywords');
                // Check if zone is showing ads by keywords and add sql condition
                $keyws = $zoneSettings->keywords;
                $sql_keywords2 = "";
                if (isset($keyws) && $keyws == 1) {
                    $countkeys = 0;
                    $sql_keywords1 = "b.keywords, ";
                    $sql_keywords2 .= " MATCH (b.`keywords`) AGAINST ('" . trim(addslashes($keywords)) . "' IN BOOLEAN MODE) ";
                } else {
                    $sql_keywords1 = NULL;
                }
                if ($sql_keywords2 != "") {
                    $sql_keywords2 = "AND (" . $sql_keywords2 . ") ";
                }
                if ($rotator_info->show_adv_link == 1) {
                    $adv_here_top = '';
                    $adv_here_bottom = '<div class="adg_row adg_adv_link"><div align="center" class="adv_here"><a class="adv_here_link" href="' . $link . '" ' . $target . '>' . JText::_('ADVERTISE_HERE') . '</a></div></div>';
                } elseif ($rotator_info->show_adv_link == 2) {
                    $adv_here_top = '<div class="adg_row adg_adv_link"><div align="center" class="adv_here"><a class="adv_here_link" href="' . $link . '" ' . $target . '>' . JText::_('ADVERTISE_HERE') . '</a></div></div>';
                    $adv_here_bottom = '';
                } elseif ($rotator_info->show_adv_link == 3) {
                    $adv_here_top = '<div class="adg_row adg_adv_link"><div align="center" class="adv_here"><a class="adv_here_link" href="' . $link . '" ' . $target . '>' . JText::_('ADVERTISE_HERE') . '</a></div></div>';
                    $adv_here_bottom = '<div class="adg_row adg_adv_link"><div align="center" class="adv_here"><a class="adv_here_link" href="' . $link . '" ' . $target . '>' . JText::_('ADVERTISE_HERE') . '</a></div></div>';
                }
                $bannernr = $bannernr > 0 ? $bannernr : 1;
                // v.1.5.3 - adding rows + cols for banners - start
                $bannernr = $bannernr * $bannernr_cols;
                // v.1.5.3 - adding rows + cols for banners - stop
                $offset = JFactory::getApplication()->getCfg('offset');
                $today = JFactory::getDate('now', $offset);
                $dateok = $today->toSql(true);
                $find_add = false;
                if ($rotator_info->rotatebanners == 0) {
                    // we don't have a ROTATOR
                    if ($rotator_info->rotaterandomize == 1) {
                        $order_by_in_static = "rw";
                    } else {
                        $order_by_in_static = "b.ordering";
                    }
                    $config = JFactory::getConfig();
                    $siteOffset = $config->get('offset');
                    $jnow = JFactory::getDate('now', $siteOffset);
                    $sql = "SELECT t0.id, t0.aid, t0.type, b.zone, b.advertiser_id, b.approved,b.channel_id," . $sql_keywords1 . " cb.campaign_id, cb.banner_id, FLOOR(RAND() * relative_weighting) AS rw\n\t\t\t\t\t\t\tFROM #__ad_agency_campaign_banner AS cb\n\t\t\t\t\t\t\tLEFT OUTER JOIN #__ad_agency_banners AS b ON b.id = cb.banner_id\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_campaign AS t0 ON cb.campaign_id = t0.id\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_order_type AS p ON t0.otid = p.tid\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_advertis AS a ON b.advertiser_id = a.aid\n\t\t\t\t\t\t\tWHERE a.approved = 'Y' AND cb.zone='" . intval($module->id) . "' AND b.approved='Y'\n\t\t\t\t\t\t\tAND ((t0.approved='Y') AND (t0.approved='Y' AND ('{$dateok}' > t0.start_date) AND ((t0.type IN ('cpm','pc') AND t0.quantity>0) OR (t0.type='fr' AND '" . $jnow . "' < t0.validity) OR (t0.type='in' AND '" . $jnow . "' < t0.validity) )))\n\t\t\t\t\t\t\tAND b.`approved`='Y'\n\t\t\t\t\t\t\tAND b.ad_start_date <= '" . $jnow . "'\n\t\t\t\t\t\t\tAND (b.ad_end_date >= '" . $jnow . "' OR b.ad_end_date = '0000-00-00 00:00:00')\n\t\t\t\t\t\t\tAND t0.status='1' AND cb.banner_id NOT IN (" . $valid_cookie . ") " . $sql_keywords2 . " ORDER BY " . $order_by_in_static . " ASC";
                    $database->setQuery($sql);
                    $tst = $database->loadObjectList();
                    $tbnrs = diversify($tst);
                    $loaded_banners = getBanners($tbnrs, $database);
                    $geocount = 0;
                    $cids = array();
                    if (isset($tbnrs)) {
                        foreach ($tbnrs as $element) {
                            if (isset($element->channel_id) && $element->channel_id != NULL) {
                                $cids[] = $element->channel_id;
                            }
                        }
                    }
                    $cids = array_unique($cids);
                    $inc = "," . implode(',', $cids);
                    if ($inc == ",") {
                        $inc = "";
                    }
                    $sql = "SELECT `channel_id` AS id,`type`,`logical`,`option`,`data` FROM #__ad_agency_channel_set WHERE channel_id IN (0" . $inc . ") ORDER BY id ASC";
                    $database->setQuery($sql);
                    $loaded_channels = $database->loadObjectList();
                    $numrows = count($tbnrs);
                    $jomSocial = new JomSocialTargeting();
                    if ($numrows || isset($defaultad[0]->banner_id) && $defaultad[0]->banner_id != 0) {
                        if ($numrows) {
                            $banners = $tbnrs;
                            // start check add visibility ---------------------------------------
                            $logged_user = JFactory::getUser();
                            if (intval($logged_user->id) > 0) {
                                if (isset($banners) && count($banners) > 0 && $jomSocial->exists()) {
                                    $temp = array();
                                    foreach ($banners as $key => $value) {
                                        if ($jomSocial->visible($value->banner_id)) {
                                            $temp[] = $banners[$key];
                                        }
                                    }
                                    $banners = $temp;
                                }
                            }
                            // stop check add visibility ----------------------------------------
                        } else {
                            $banners = $defaultad;
                            $dfa_bool = true;
                        }
                        $cellpadding = $zoneSettings->cellpadding;
                        if (count($banners) > $zoneSettings->banners_cols) {
                            $span = floor(12 / $zoneSettings->banners_cols);
                        } else {
                            if (count($banners) == 5) {
                                $span = "Special";
                            } else {
                                $span = 12;
                                if (count($banners) > 0) {
                                    $span = floor(12 / count($banners));
                                }
                            }
                        }
                        $output_this = '<div class="adg_row adg_banners"><div class="avd_display_block adg_table clearfix">';
                        $i = 0;
                        for ($rows_nr = 0; $rows_nr < $zoneSettings->banners; $rows_nr++) {
                            $output_this .= '<div class="adg_row adg_table_row ">';
                            for ($col_nr = 0; $col_nr < $zoneSettings->banners_cols; $col_nr++) {
                                back_for_geo:
                                if (!isset($banners[$i]->banner_id)) {
                                    break;
                                } else {
                                    $output_this .= '<div style="padding:' . $cellpadding . 'px;"  class="adg_cell adg_table_cell span' . $span . ' "><div><div>';
                                    $banner_id = $banners[$i]->banner_id;
                                }
                                if ($banner_id) {
                                    if ($numrows == 0) {
                                        $banner_row = new TableadagencyAds($database);
                                        $banner_row->load($banner_id);
                                    } else {
                                        $banner_row = loadBannerById($banner_id, $loaded_banners);
                                    }
                                    $banner_row->parameters = @unserialize($banner_row->parameters);
                                    if ($banner_row->channel_id != NULL && intval($banner_row->channel_id) > 0 && !isset($dfa_bool)) {
                                        if (!geo(loadChannelById($banner_row->channel_id, $loaded_channels), $globalSettings->cityloc)) {
                                            $i++;
                                            $output_this .= '</div></div></div>';
                                            goto back_for_geo;
                                            continue;
                                        }
                                    }
                                    if (!isset($dfa_bool)) {
                                        ImpressionCalc($banners[$i], $banner_row, $real_ip, $limit_ip);
                                    } else {
                                        $link_dfa = $banner_row->target_url;
                                        $banners[$i]->aid = $banner_row->advertiser_id;
                                        ImpressionCalc($banners[$i], $banner_row, $real_ip, $limit_ip);
                                    }
                                    if ($zoneSettings->adparams['width'] == NULL && $zoneSettings->adparams['height'] == NULL || intval($zoneSettings->adparams['width']) == intval($banner_row->width) && intval($zoneSettings->adparams['height']) == intval($banner_row->height)) {
                                        if (!isset($link_dfa) && !isset($dfa_bool)) {
                                            $track_link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . $banners[$i]->id . '&bid=' . $banner_row->id . '&aid=' . $banners[$i]->aid;
                                        }
                                        switch ($banner_row->media_type) {
                                            case 'Standard':
                                                $max_width = $banner_row->width . 'px';
                                                $max_height = $banner_row->height . 'px';
                                                $imageurl = $mosConfig_live_site . '/images/stories/' . $ad_agency_folder . '/' . $banners[$i]->aid . '/' . $banner_row->image_url;
                                                if (!isset($link_dfa)) {
                                                    $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . $banners[$i]->id . '&bid=' . $banner_row->id . '&aid=' . $banners[$i]->aid;
                                                } else {
                                                    $link = $link_dfa;
                                                }
                                                //border and color
                                                if (isset($banner_row->parameters['border']) && $banner_row->parameters['border'] > 0) {
                                                    $table_style = "border: solid " . $banner_row->parameters['border'] . "px #" . $banner_row->parameters['border_color'] . ";";
                                                } else {
                                                    $table_style = "border: none;";
                                                }
                                                $bg_color = "";
                                                if (isset($banner_row->parameters['bg_color']) && $banner_row->parameters['bg_color'] != "") {
                                                    $bg_color = "background-color: #" . $banner_row->parameters['bg_color'] . ";";
                                                }
                                                //td padding
                                                $padding = "";
                                                if (isset($banner_row->parameters['padding']) && $banner_row->parameters['padding'] > 0) {
                                                    $padding = "padding: " . $banner_row->parameters['padding'] . "px;";
                                                }
                                                if (isset($banner_row->parameters['align'])) {
                                                    if ($banner_row->parameters['align'] !== '0') {
                                                        $banner_row->parameters['align'] = 'align="' . $banner_row->parameters['align'] . '"';
                                                    } elseif ($banner_row->parameters['align'] === '0') {
                                                        $banner_row->parameters['align'] = NULL;
                                                    }
                                                }
                                                if (!isset($banner_row->parameters['target_window'])) {
                                                    $banner_row->parameters['target_window'] = "_blank";
                                                }
                                                if (!isset($banner_row->parameters['alt_text'])) {
                                                    $banner_row->parameters['alt_text'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['align'])) {
                                                    $banner_row->parameters['align'] = NULL;
                                                }
                                                $output_this .= '<div style="' . $padding . '" class="adv_standard_d"><div style="max-width:' . $max_width . '; max-height:' . $max_height . '; ' . $bg_color . '"><div><div><a class="standard_adv_link" href="' . $link . '" target="' . $banner_row->parameters['target_window'] . '"><img style="' . $table_style . '" class="standard_adv_img" src="' . $imageurl . '" border="0" title="' . $banner_row->parameters['alt_text'] . '" alt="' . $banner_row->parameters['alt_text'] . '" /></a></div></div></div></div>';
                                                break;
                                            case 'TextLink':
                                                $max_width = $banner_row->width . 'px';
                                                $max_height = $banner_row->height . 'px';
                                                $thumb = NULL;
                                                if (isset($banners[$i]->id) && isset($banner_row->id)) {
                                                    $sql = "SELECT thumb FROM #__ad_agency_campaign_banner WHERE campaign_id = " . $banners[$i]->id . " AND banner_id = " . $banner_row->id . " LIMIT 1";
                                                    $db->setQuery($sql);
                                                    $thumb = $db->loadColumn();
                                                    $thumb = $thumb["0"];
                                                    if ($thumb != NULL && strlen($thumb) > 4) {
                                                        $banner_row->image_url = $thumb;
                                                    }
                                                }
                                                $img_siz = NULL;
                                                if (isset($banner_row->image_url) && $banner_row->image_url != '') {
                                                    $txtimageurl = $mosConfig_live_site . '/images/stories/' . $ad_agency_folder . '/' . $banners[$i]->aid . '/' . $banner_row->image_url;
                                                    $img_siz = @getimagesize($mosConfig_live_site . '/images/stories/' . $ad_agency_folder . '/' . $banners[$i]->aid . '/' . $banner_row->image_url);
                                                    if (isset($img_siz[0])) {
                                                        $img_siz[0] += 10;
                                                        $img_siz = $img_siz[0] . "px;";
                                                    }
                                                }
                                                if ($zoneSettings->textadparams['mxtype'] == "w") {
                                                    $mindim = 'max-width:' . $zoneSettings->textadparams['mxsize'] . 'px !important;';
                                                } else {
                                                    $mindim = 'max-height:' . $zoneSettings->textadparams['mxsize'] . 'px !important;';
                                                }
                                                $img_style = '';
                                                $br = '';
                                                if (isset($txtimageurl) && $txtimageurl != NULL) {
                                                    if (isset($zoneSettings->textadparams['ia'])) {
                                                        if ($zoneSettings->textadparams['ia'] == 'l') {
                                                            $img_style = "float:left; padding: 5px;";
                                                            $img_siz = "margin-left:" . $img_siz;
                                                        } elseif ($zoneSettings->textadparams['ia'] == 'r') {
                                                            $img_style = "float:right; padding: 5px;";
                                                            $img_siz = "margin-right:" . $img_siz;
                                                        } else {
                                                            $br = "<br />";
                                                        }
                                                    }
                                                    $imagetxtcode = '<img class="standard_adv_img" src="' . $txtimageurl . '" style="' . $mindim . ' ' . $img_style . '" border="0" title="' . $banner_row->parameters['img_alt'] . '" alt="' . $banner_row->parameters['img_alt'] . '" />';
                                                } else {
                                                    $imagetxtcode = '';
                                                }
                                                if (isset($zoneSettings->textadparams["wrap_img"]) && $zoneSettings->textadparams["wrap_img"] == '1') {
                                                    $img_siz = NULL;
                                                }
                                                if (!isset($banner_row->parameters['border'])) {
                                                    $banner_row->parameters['border'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['bg_color'])) {
                                                    $banner_row->parameters['bg_color'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['title_color'])) {
                                                    $banner_row->parameters['title_color'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_weight'])) {
                                                    $banner_row->parameters['font_weight'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_weight_a'])) {
                                                    $banner_row->parameters['font_weight_a'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_weight_b'])) {
                                                    $banner_row->parameters['font_weight_b'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['padding'])) {
                                                    $banner_row->parameters['padding'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['align'])) {
                                                    $banner_row->parameters['align'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['target_window'])) {
                                                    $banner_row->parameters['target_window'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_family'])) {
                                                    $banner_row->parameters['font_family'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_family_a'])) {
                                                    $banner_row->parameters['font_family_a'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_family_b'])) {
                                                    $banner_row->parameters['font_family_b'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_size'])) {
                                                    $banner_row->parameters['font_size'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_size_a'])) {
                                                    $banner_row->parameters['font_size_a'] = NULL;
                                                }
                                                if (!isset($banner_row->parameters['font_size_b'])) {
                                                    $banner_row->parameters['font_size_b'] = NULL;
                                                }
                                                if (!isset($link_dfa)) {
                                                    $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . $banners[$i]->id . '&bid=' . $banner_row->id . '&aid=' . $banners[$i]->aid;
                                                } else {
                                                    $link = $link_dfa;
                                                }
                                                if ($banner_row->parameters['border'] > 0) {
                                                    $table_style = "border: solid " . $banner_row->parameters['border'] . "px #" . $banner_row->parameters['border_color'] . ";";
                                                } else {
                                                    $table_style = "border: none;";
                                                }
                                                $bg_color = "";
                                                if ($banner_row->parameters['bg_color'] != "") {
                                                    $bg_color = "background-color: #" . $banner_row->parameters['bg_color'] . ";";
                                                }
                                                $title_color = "";
                                                if ($banner_row->parameters['title_color'] != "") {
                                                    $title_color = 'style="color: #' . $banner_row->parameters['title_color'] . ';"';
                                                }
                                                $body_color = "";
                                                if (@$banner_row->parameters['body_color'] != "") {
                                                    $body_color = "color: #" . $banner_row->parameters['body_color'];
                                                }
                                                $action_color = "";
                                                if (@$banner_row->parameters['action_color'] != "") {
                                                    $action_color = 'style="color: #' . $banner_row->parameters['action_color'] . ';"';
                                                }
                                                $underlined = "";
                                                $font_weight = "";
                                                $isUnderlined = strstr($banner_row->parameters['font_weight'], 'underlined');
                                                if ($isUnderlined == 'underlined') {
                                                    $str_length = strpos($banner_row->parameters['font_weight'], 'underlined');
                                                    $font_weight = substr($banner_row->parameters['font_weight'], 0, $str_length);
                                                    $underlined = "text-decoration:underline;";
                                                } else {
                                                    $font_weight = $banner_row->parameters['font_weight'];
                                                }
                                                $underlined_a = "";
                                                $font_weight_a = "";
                                                $isUnderlined_a = strstr($banner_row->parameters['font_weight_a'], 'underlined');
                                                if ($isUnderlined_a == 'underlined') {
                                                    $str_length_a = strpos($banner_row->parameters['font_weight_a'], 'underlined');
                                                    $font_weight_a = substr($banner_row->parameters['font_weight_a'], 0, $str_length_a);
                                                    $underlined_a = "text-decoration:underline;";
                                                } else {
                                                    $font_weight_a = $banner_row->parameters['font_weight_a'];
                                                }
                                                $underlined_b = "";
                                                $font_weight_b = "";
                                                $isUnderlined_b = strstr($banner_row->parameters['font_weight_b'], 'underlined');
                                                if ($isUnderlined_b == 'underlined') {
                                                    $str_length_b = strpos($banner_row->parameters['font_weight_b'], 'underlined');
                                                    $font_weight_b = substr($banner_row->parameters['font_weight_b'], 0, $str_length_b);
                                                    $underlined_b = "text-decoration:underline;";
                                                } else {
                                                    $font_weight_b = $banner_row->parameters['font_weight_b'];
                                                }
                                                $padding = "";
                                                if ($banner_row->parameters['padding'] > 0) {
                                                    $padding = "padding: " . $banner_row->parameters['padding'] . "px;";
                                                }
                                                $sizeparam = 'px';
                                                if (isset($zoneSettings->adparams['width']) && $zoneSettings->adparams['width'] != NULL) {
                                                    $banner_row->width = $zoneSettings->adparams['width'];
                                                }
                                                if (isset($zoneSettings->adparams['height']) && $zoneSettings->adparams['height'] != NULL) {
                                                    $banner_row->height = $zoneSettings->adparams['height'];
                                                }
                                                $width = $banner_row->width > 0 ? ' max-width:' . $banner_row->width . 'px;' : '';
                                                $height = $banner_row->height > 0 ? 'max-height:' . $banner_row->height . 'px;' : '';
                                                if (isset($banner_row->parameters['alt_text'])) {
                                                    $banner_row->parameters['alt_text'] = str_replace('<img', '<img onclick="window.location = \'' . $link . '\';"', $banner_row->parameters['alt_text']);
                                                }
                                                $output_this .= '<div class="textlink_adv" align="' . $banner_row->parameters['align'] . '" style="overflow: hidden; text-align:' . $banner_row->parameters['align'] . '; ' . $width . ' ' . $height . ' ' . $table_style . ' ' . $bg_color . ' ' . $padding . '">
														<a target="' . $banner_row->parameters['target_window'] . '" href="' . $link . '" ' . $title_color . '>
															<span style="font-family: ' . $banner_row->parameters['font_family'] . '; font-size: ' . $banner_row->parameters['font_size'] . 'px; font-weight: ' . $font_weight . '; ' . $underlined . '">
																<font face="' . $banner_row->parameters['font_family'] . '">' . @$banner_row->parameters['alt_text_t'] . '</font></span></a>
																<br /><div class="imgdiv2"><a target="' . $banner_row->parameters['target_window'] . '" href="' . $link . '" ' . $title_color . '>' . $imagetxtcode . '</a></div>
														<div class="tbody" style="font-family: ' . $banner_row->parameters['font_family_b'] . '; ' . $img_siz . ' font-size: ' . $banner_row->parameters['font_size_b'] . 'px; font-weight: ' . $font_weight_b . ';' . $underlined_b . " " . $body_color . ';">' . @$banner_row->parameters['alt_text'] . '</div>
															<a class="textlink_adv_link" href="' . $link . '" target="' . $banner_row->parameters['target_window'] . '" ' . $action_color . '>
																<div style="word-break: break-all; font-family: ' . $banner_row->parameters['font_family_a'] . '; font-size: ' . $banner_row->parameters['font_size_a'] . 'px; font-weight: ' . $font_weight_a . ';' . $underlined_a . '">' . @$banner_row->parameters['alt_text_a'] . '</div></a>
														</div>';
                                                $txtimageurl = NULL;
                                                break;
                                            case 'Flash':
                                                $max_width = $banner_row->width . 'px';
                                                $max_height = $banner_row->height . 'px';
                                                if (!isset($link_dfa)) {
                                                    $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . $banners[$i]->id . '&bid=' . $banner_row->id . '&aid=' . $banners[$i]->aid;
                                                } else {
                                                    $link = $link_dfa;
                                                }
                                                if (isset($zoneSettings->adparams['width']) && $zoneSettings->adparams['width'] != NULL) {
                                                    $banner_row->width = $zoneSettings->adparams['width'];
                                                }
                                                if (isset($zoneSettings->adparams['height']) && $zoneSettings->adparams['height'] != NULL) {
                                                    $banner_row->height = $zoneSettings->adparams['height'];
                                                }
                                                //border and color
                                                if ($banner_row->parameters['border'] > 0) {
                                                    $table_style = "border: solid " . $banner_row->parameters['border'] . "px #" . $banner_row->parameters['border_color'] . ";";
                                                } else {
                                                    $table_style = "border: none;";
                                                }
                                                $bg_color = "";
                                                if ($banner_row->parameters['bg_color'] != "") {
                                                    $bg_color = "background-color: #" . $banner_row->parameters['bg_color'] . ";";
                                                }
                                                //td padding
                                                $padding = "";
                                                if ($banner_row->parameters['padding'] > 0) {
                                                    $padding = "padding: " . $banner_row->parameters['padding'] . "px;";
                                                }
                                                ///changes in adding flash objects
                                                $onevent = "onclick";
                                                if (isset($banner_row->parameters['target_window']) && $banner_row->parameters['target_window'] == '_self') {
                                                    $js_open = 'document.location.href=\'' . urldecode($link) . '\';';
                                                    $flash_target = '_self';
                                                } else {
                                                    $flash_target = '_blank';
                                                    $js_open = 'javascript:window.open(\'' . urldecode($link) . '\')';
                                                }
                                                if (isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'], "MSIE") > 1) {
                                                    $onevent = "onmousedown";
                                                }
                                                $flashurl = $mosConfig_live_site . '/images/stories/' . $ad_agency_folder . '/' . $banners[$i]->aid . '/' . $banner_row->swf_url;
                                                /*$adflash = '<EMBED SRC="'.$flashurl.'" width=' . $banner_row->width . ' height='.$banner_row->height.' QUALITY="high" wmode="transparent" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED>';
                                                		$output_this.= '<div class="adv_flash" align="'.$banner_row->parameters['align'].'" style="'.$table_style.' '.$bg_color.' max-width:'.$banner_row->width.'px; max-height:'.$banner_row->height.'px; ">';
                                                		$output_this.= '<div class="adv_flash_t" style="max-width:'.$max_width.'; max-height:'.$max_height.';"><div><div >';
                                                		$output_this.= '<a href="' . $link . '" target="' . $flash_target . '"><img alt="" src="' . JURI::root() . 'components/com_adagency/images/trans.gif" style="height: ' . $banner_row->height . 'px; width: ' . $banner_row->width . 'px; float: left;"></a>';
                                                		$output_this.= '</div></div></div>'.$adflash;
                                                		$output_this.= '</div>';*/
                                                //---------------------------------------------------------------------
                                                $output_this .= '<div style="text-align:center; margin:0 auto; ' . $table_style . ' ' . $bg_color . ' max-width:' . $banner_row->width . 'px; max-height:' . $banner_row->height . 'px; " align="' . $banner_row->parameters['align'] . '"><a href="' . $link . '" target="' . $flash_target . '" style="display:inline-block; width:100%;"><iframe src="' . JURI::root() . 'index.php?option=com_adagency&controller=adagencyAds&task=loadflash&url=' . urlencode($flashurl) . '&width=' . $banner_row->width . '&height=' . $banner_row->height . '&tmp=component&format=raw' . '" style="width:' . intval($banner_row->width) . 'px; height:' . intval($banner_row->height) . 'px; border:none; pointer-events: none;" scrolling="no" seamless="seamless"></iframe></a></div>';
                                                //---------------------------------------------------------------------
                                                break;
                                            case 'Advanced':
                                                $original_width = $zoneSettings->adparams['width'];
                                                $original_height = $zoneSettings->adparams['height'];
                                                $timestamp = mt_rand(10000, mt_getrandmax());
                                                $toreplace = "ord=[timestamp]";
                                                $replacewith = "ord=" . $timestamp;
                                                $max_width = $banner_row->width . 'px';
                                                $max_height = $banner_row->height . 'px';
                                                if (!isset($link_dfa) && !isset($dfa_bool)) {
                                                    $link = JURI::root() . 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . $banners[$i]->id . '&bid=' . $banner_row->id . '&aid=' . $banners[$i]->aid;
                                                } else {
                                                    $link = JURI::root() . $link_dfa;
                                                }
                                                if (isset($zoneSettings->adparams['width']) && isset($zoneSettings->adparams['height']) && $zoneSettings->adparams['width'] != NULL && $zoneSettings->adparams['height'] != NULL) {
                                                    $zoneSettings->adparams['width'] += 5;
                                                    $zoneSettings->adparams['height'] += 5;
                                                    $style_adv = ' style="overflow:hidden; max-width:' . $zoneSettings->adparams['width'] . 'px; max-height:' . $zoneSettings->adparams['height'] . 'px;" ';
                                                } else {
                                                    $style_adv = NULL;
                                                }
                                                if (!isset($banner_row->parameters['target_window'])) {
                                                    $banner_row->parameters['target_window'] = NULL;
                                                }
                                                if (strpos(" " . strtolower($banner_row->ad_code), "<a href") == 1) {
                                                    $banner_row->ad_code = str_replace($toreplace, $replacewith, $banner_row->ad_code);
                                                    $output_this .= '<div class="adv_aff" ' . $style_adv . '><div class="adv_advanced_t" style="max-width:' . $max_width . '; max-height:' . $max_height . ';"><div><div>' . str_replace('ad_url"', $link . '" target="' . $banner_row->parameters['target_window'] . '"', $banner_row->ad_code) . '</div></div></div></div>';
                                                } elseif (strpos(" " . strtolower($banner_row->ad_code), "<iframe") == 1) {
                                                    $banner_row->ad_code = str_replace($toreplace, $replacewith, $banner_row->ad_code);
                                                    $banner_row->ad_code = str_replace('<iframe ', '<iframe style="pointer-events:none;" ', $banner_row->ad_code);
                                                    $output_this .= '<div class="adv_aff" ' . $style_adv . '><div class="adv_advanced_t" style="max-width:' . $max_width . '; max-height:' . $max_height . ';"><div><div><a style="display:block;" href="' . $link . '" target="' . $banner_row->parameters['target_window'] . '">' . $banner_row->ad_code . '</a></div></div></div></div>';
                                                } else {
                                                    $banner_row->ad_code = str_replace($toreplace, $replacewith, $banner_row->ad_code);
                                                    $output_this .= '<div class="adv_aff" ' . $style_adv . '><div class="adv_advanced_t" style="max-width:' . $max_width . '; max-height:' . $max_height . ';"><div><div><div style="float:left; width: 100%; z-index: 10000;" onclick="javascript:countClicks(\'' . $link . '\')">' . $banner_row->ad_code . '</div></div></div></div></div>';
                                                }
                                                $zoneSettings->adparams['width'] = $original_width;
                                                $zoneSettings->adparams['height'] = $original_height;
                                                break;
                                            case 'Popup':
                                                $popupcode = str_replace('ad_url/', 'ad_url', $banner_row->ad_code);
                                                //html
                                                if ($banner_row->parameters["window_type"] == 'popup') {
                                                    $crt = 1;
                                                    $adcontent = "";
                                                    $string = 'ad_url"';
                                                    $fisier = $popupcode;
                                                    $pos1 = strpos($fisier, $string);
                                                    $poz = 0;
                                                    while ($pos1) {
                                                        if (!isset($link_dfa)) {
                                                            $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . intval($banners[$i]->id) . '&bid=' . intval($banner_row->id) . '&aid=' . intval($banners[$i]->aid) . '&lid=' . intval($crt);
                                                        } else {
                                                            $link = $link_dfa;
                                                        }
                                                        $cont = substr($fisier, $poz, $pos1 + strlen($string));
                                                        $adcontent .= str_replace('ad_url"', $link . '" target="_blank"', $cont);
                                                        $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
                                                        $crt++;
                                                        $pos1 = strpos($fisier, $string);
                                                    }
                                                    $adcontent .= $fisier;
                                                    $adcode = str_replace('color="', 'color="#', $adcontent);
                                                    $output_this .= $adcode;
                                                } else {
                                                    $popup = str_replace('ad_url', $banner_row->target_url, $popupcode);
                                                    $output_this .= $popup;
                                                }
                                                break;
                                            case 'Floating':
                                                $crt = 1;
                                                $adcontent = "";
                                                $string = 'ad_url"';
                                                $banner_row->ad_code = stripslashes($banner_row->ad_code);
                                                $fisier = str_replace('ad_url/', 'ad_url', $banner_row->ad_code);
                                                $pos1 = strpos($fisier, $string);
                                                $poz = 0;
                                                while ($pos1) {
                                                    if (!isset($link_dfa)) {
                                                        $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . intval($banners[$i]->id) . '&bid=' . intval($banner_row->id) . '&aid=' . intval($banners[$i]->aid) . '&lid=' . intval($crt);
                                                    } else {
                                                        $link = $link_dfa;
                                                    }
                                                    $cont = substr($fisier, $poz, $pos1 + strlen($string));
                                                    $adcontent .= str_replace('ad_url"', $link . '" target="_blank"', $cont);
                                                    $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
                                                    $crt++;
                                                    $pos1 = strpos($fisier, $string);
                                                }
                                                $cookie_value = ".";
                                                $frequency = $banner_row->frequency;
                                                $cookie_name = "spl" . md5($banner_row->id);
                                                if ($frequency == "1" || $frequency == "7" || $frequency == "30" || $frequency == "365") {
                                                    ?>
													<script type="text/javascript">
														function SetCookie(cookieName,cookieValue,nDays) {
															var today = new Date();
															var expire = new Date();
															if (nDays==null || nDays==0) nDays=1;
															expire.setTime(today.getTime() + 3600000*24*nDays);
															document.cookie = cookieName+"="+escape(cookieValue)
															+ "; path=/; expires="+expire.toGMTString();
														}
													</script>
													<script type="text/javascript">SetCookie('<?php 
                                                    echo $cookie_name;
                                                    ?>
', '<?php 
                                                    echo $cookie_value;
                                                    ?>
','<?php 
                                                    echo $frequency;
                                                    ?>
');</script>
							<?php 
                                                }
                                                $adcontent .= $fisier;
                                                $adcode = str_replace('color="', 'color="#', $adcontent);
                                                $adcode = str_replace("var ie=document.all;", "try{ var ie=document.all; } catch(err){ }", $adcode);
                                                $output_this .= $adcode;
                                                break;
                                            case 'Transition':
                                                $crt = 1;
                                                $adcontent = "";
                                                $string = 'ad_url"';
                                                $banner_row->ad_code = stripslashes($banner_row->ad_code);
                                                $fisier = str_replace('ad_url/', 'ad_url', $banner_row->ad_code);
                                                $pos1 = strpos($fisier, $string);
                                                $poz = 0;
                                                while ($pos1) {
                                                    if (!isset($link_dfa)) {
                                                        $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . intval($banners[$i]->id) . '&bid=' . intval($banner_row->id) . '&aid=' . intval($banners[$i]->aid) . '&lid=' . intval($crt);
                                                    } else {
                                                        $link = $link_dfa;
                                                    }
                                                    $cont = substr($fisier, $poz, $pos1 + strlen($string));
                                                    $adcontent .= str_replace('ad_url"', $link . '" target="_blank"', $cont);
                                                    $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
                                                    $crt++;
                                                    $pos1 = strpos($fisier, $string);
                                                }
                                                $cookie_value = ".";
                                                $frequency = $banner_row->frequency;
                                                $cookie_name = "spl" . md5($banner_row->id);
                                                if ($frequency == "1" || $frequency == "7" || $frequency == "30" || $frequency == "365") {
                                                    ?>
													<script type="text/javascript">
														function SetCookie(cookieName,cookieValue,nDays) {
															var today = new Date();
															var expire = new Date();
															if (nDays==null || nDays==0) nDays=1;
															expire.setTime(today.getTime() + 3600000*24*nDays);
															document.cookie = cookieName+"="+escape(cookieValue)
															+ "; path=/; expires="+expire.toGMTString();
														}
													</script>
													<script type="text/javascript">SetCookie('<?php 
                                                    echo $cookie_name;
                                                    ?>
', '<?php 
                                                    echo $cookie_value;
                                                    ?>
','<?php 
                                                    echo $frequency;
                                                    ?>
');</script>
								<?php 
                                                }
                                                $adcontent .= $fisier;
                                                $adcode = str_replace('color="', 'color="#', $adcontent);
                                                $output_this .= $adcode;
                                                break;
                                        }
                                    }
                                }
                                $output_this .= '</div></div></div>';
                                $i++;
                                $find_add = true;
                            }
                            $output_this .= '</div>';
                        }
                        $output_this .= '</div></div>';
                        if (!$find_add) {
                            //$output_this.= '</div></div>';
                        }
                    }
                    // andif - there are banners
                } else {
                    // we have a rotator
                    if (intval(JVERSION) >= 3) {
                        $dateok = $jnow->toSql(true);
                    } else {
                        $dateok = $jnow->toMySQL(true);
                    }
                    if ($rotator_info->rotaterandomize == 1) {
                        $order_by_in_static = "rw";
                    } else {
                        $order_by_in_static = "b.ordering";
                    }
                    $config = JFactory::getConfig();
                    $siteOffset = $config->get('offset');
                    $jnow = JFactory::getDate('now', $siteOffset);
                    $sql = "SELECT t0.*, b.zone, b.approved, b.ordering, " . $sql_keywords1 . " cb.campaign_id, cb.banner_id, FLOOR(RAND() * relative_weighting) AS rw\n\t\t\t\t\t\t\tFROM #__ad_agency_campaign_banner AS cb\n\t\t\t\t\t\t\tLEFT OUTER JOIN #__ad_agency_banners AS b ON b.id = cb.banner_id\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_campaign AS t0 ON cb.campaign_id = t0.id\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_order_type AS p ON t0.otid = p.tid\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_advertis AS a ON b.advertiser_id = a.aid\n\t\t\t\t\t\t\tWHERE a.approved = 'Y' AND cb.zone='" . $module->id . "' AND b.approved='Y'\n\t\t\t\t\t\t\tAND b.ad_start_date <= '" . $jnow . "'\n\t\t\t\t\t\t\tAND b.`approved`='Y'\n\t\t\t\t\t\t\tAND (b.ad_end_date >= '" . $jnow . "' OR b.ad_end_date = '0000-00-00 00:00:00')\n\t\t\t\t\t\t\tAND ((t0.approved='Y') AND (t0.approved='Y' AND ('{$dateok}' > t0.start_date) AND ((t0.type IN ('cpm','pc') AND t0.quantity>0) OR (t0.type='fr' AND '" . $jnow . "' < t0.validity) OR (t0.type='in' AND '" . $jnow . "' < t0.validity) ))) AND t0.status='1' AND cb.banner_id NOT IN (" . $valid_cookie . ") AND (b.media_type = 'Standard' OR b.media_type = 'TextLink' OR b.media_type = 'Flash' OR b.media_type = 'Advanced' OR b.media_type = 'Transition') " . $sql_keywords2 . "\n\t\t\t\t\t\t\tGROUP BY b.id\n\t\t\t\t\t\t\tORDER BY " . $order_by_in_static . " ASC";
                    $database->setQuery($sql);
                    $banners = diversify($database->loadObjectList());
                    if (is_array($banners) && count($banners) == 0) {
                        if (isset($zoneSettings->defaultad) && intval($zoneSettings->defaultad) != 0) {
                            $sql = "SELECT t0.*, b.zone, b.approved, b.ordering, " . $sql_keywords1 . " cb.campaign_id, cb.banner_id, FLOOR(RAND() * relative_weighting) AS rw\n\t\t\t\t\t\t\tFROM #__ad_agency_campaign_banner AS cb\n\t\t\t\t\t\t\tLEFT OUTER JOIN #__ad_agency_banners AS b ON b.id = cb.banner_id\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_campaign AS t0 ON cb.campaign_id = t0.id\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_order_type AS p ON t0.otid = p.tid\n\t\t\t\t\t\t\tLEFT JOIN #__ad_agency_advertis AS a ON b.advertiser_id = a.aid\n\t\t\t\t\t\t\tWHERE a.approved = 'Y' AND b.approved='Y'\n\t\t\t\t\t\t\tAND b.id = " . intval($zoneSettings->defaultad) . "\n\t\t\t\t\t\t\tAND b.ad_start_date <= '" . $jnow . "'\n\t\t\t\t\t\t\tAND b.`approved`='Y'\n\t\t\t\t\t\t\tAND (b.ad_end_date >= '" . $jnow . "' OR b.ad_end_date = '0000-00-00 00:00:00')\n\t\t\t\t\t\t\tAND ((t0.approved='Y') AND (t0.approved='Y' AND ('{$dateok}' > t0.start_date) AND ((t0.type IN ('cpm','pc') AND t0.quantity>0) OR (t0.type='fr' AND '" . $jnow . "' < t0.validity) OR (t0.type='in' AND '" . $jnow . "' < t0.validity) ))) AND t0.status='1' AND cb.banner_id NOT IN (" . $valid_cookie . ") AND (b.media_type = 'Standard' OR b.media_type = 'TextLink' OR b.media_type = 'Flash' OR b.media_type = 'Advanced' OR b.media_type = 'Transition')\n\t\t\t\t\t\t\tGROUP BY b.id\n\t\t\t\t\t\t\tORDER BY " . $order_by_in_static . " ASC";
                            $database->setQuery($sql);
                            $banners = diversify($database->loadObjectList());
                        }
                    }
                    $no_of_ads_for_rotator = count($banners);
                    $loaded_banners = getBanners($banners, $database);
                    $cids = array();
                    if (isset($loaded_banners)) {
                        foreach ($loaded_banners as $element) {
                            if (isset($element->channel_id) && $element->channel_id != NULL) {
                                $cids[] = $element->channel_id;
                            }
                        }
                    }
                    $cids = array_unique($cids);
                    $inc = "," . implode(',', $cids);
                    if ($inc == ",") {
                        $inc = "";
                    }
                    $sql = "SELECT `channel_id` AS id,`type`,`logical`,`option`,`data` FROM #__ad_agency_channel_set WHERE channel_id IN (0" . $inc . ") ORDER BY id ASC";
                    $database->setQuery($sql);
                    $loaded_channels = $database->loadObjectList();
                    $jomSocial = new JomSocialTargeting();
                    $displayed_ids = array();
                    if ($no_of_ads_for_rotator > 0) {
                        $the_rot_banners = '';
                        $the_rot_advert = '';
                        $the_rot_camp = '';
                        $the_rot_banners_id = '';
                        $geocount = 0;
                        // start check add visibility ---------------------------------------
                        $logged_user = JFactory::getUser();
                        if (intval($logged_user->id) > 0) {
                            if (isset($banners) && count($banners) > 0 && $jomSocial->exists()) {
                                $temp = array();
                                foreach ($banners as $key => $value) {
                                    if ($jomSocial->visible($value->banner_id)) {
                                        $temp[] = $banners[$key];
                                    }
                                }
                                $banners = $temp;
                            }
                        }
                        // stop check add visibility ----------------------------------------
                        for ($i = 0, $n = $no_of_ads_for_rotator; $i < $n; $i++) {
                            $banner_id = $banners[$i]->banner_id;
                            $banner_row = loadBannerById($banner_id, $loaded_banners);
                            $banner_row->parameters = unserialize($banner_row->parameters);
                            if ($banner_row->channel_id != NULL && intval($banner_row->channel_id) > 0) {
                                if (!geo(loadChannelById($banner_row->channel_id, $loaded_channels), $globalSettings->cityloc)) {
                                    $no_of_ads_for_rotator--;
                                    continue;
                                }
                            }
                            $geocount++;
                            $the_advertiser = $banners[$i]->aid;
                            $the_campaign = $banners[$i]->campaign_id;
                            $the_type = $banners[$i]->type;
                            if ($geocount <= intval($bannernr_cols * $bannernr_rows)) {
                                $displayed_ids[] = $banners[$i]->banner_id;
                                ImpressionCalc($banners[$i], $banner_row, $real_ip, $limit_ip);
                            }
                            $track_link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . intval($banners[$i]->id) . '&bid=' . intval($banner_row->id) . '&aid=' . intval($banners[$i]->aid);
                            if ($zoneSettings->adparams['width'] == NULL && $zoneSettings->adparams['height'] == NULL || intval($zoneSettings->adparams['width']) == intval($banner_row->width) && intval($zoneSettings->adparams['height']) == intval($banner_row->height)) {
                                switch ($banner_row->media_type) {
                                    case 'Standard':
                                        $max_width = $banner_row->width . 'px';
                                        $max_height = $banner_row->height . 'px';
                                        $imageurl = $mosConfig_live_site . '/images/stories/' . $ad_agency_folder . '/' . $banners[$i]->aid . '/' . $banner_row->image_url;
                                        $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . intval($banners[$i]->id) . '&bid=' . intval($banner_row->id) . '&aid=' . intval($banners[$i]->aid);
                                        $link = JRoute::_($link);
                                        if (!isset($banner_row->parameters['border'])) {
                                            $banner_row->parameters['border'] = NULL;
                                        }
                                        if (!isset($banner_row->parameters['bg_color'])) {
                                            $banner_row->parameters['bg_color'] = NULL;
                                        }
                                        if (!isset($banner_row->parameters['padding'])) {
                                            $banner_row->parameters['padding'] = NULL;
                                        }
                                        if (!isset($banner_row->parameters['align'])) {
                                            $banner_row->parameters['align'] = NULL;
                                        }
                                        if (!isset($banner_row->parameters['target_window'])) {
                                            $banner_row->parameters['target_window'] = NULL;
                                        }
                                        if (isset($banner_row->parameters['alt_text'])) {
                                            $banner_row->parameters['alt_text'] = str_replace(',', '&#44;', $banner_row->parameters['alt_text']);
                                        }
                                        //border and color
                                        if ($banner_row->parameters['border'] > 0) {
                                            $table_style = "border: solid " . $banner_row->parameters['border'] . "px #" . $banner_row->parameters['border_color'] . ";";
                                        } else {
                                            $table_style = "border: none;";
                                        }
                                        $bg_color = "";
                                        if ($banner_row->parameters['bg_color'] != "") {
                                            $bg_color = "background-color: #" . $banner_row->parameters['bg_color'] . ";";
                                        }
                                        //td padding
                                        $padding = "";
                                        if ($banner_row->parameters['padding'] > 0) {
                                            $padding = "padding: " . $banner_row->parameters['padding'] . "px;";
                                        }
                                        $one_banner = '<div style=\\"' . $padding . '\\" class=\\"adv_standard_d\\"><div style=\\"max-width:' . $max_width . '; max-height:' . $max_height . ';' . $bg_color . '\\"><div><div><a href=\\"' . $link . '\\" target=\\"' . $banner_row->parameters['target_window'] . '\\"><img style=\\"' . $table_style . '\\" src=\\"' . $imageurl . '\\" border=\\"0\\" title=\\"' . $banner_row->parameters['alt_text'] . '\\" alt=\\"' . $banner_row->parameters['alt_text'] . '\\" /></a></div></div></div></div>';
                                        break;
                                    case 'TextLink':
                                        $max_width = $banner_row->width . 'px';
                                        $max_height = $banner_row->height . 'px';
                                        $thumb = NULL;
                                        $sql = "SELECT thumb FROM #__ad_agency_campaign_banner WHERE campaign_id = " . intval($banners[$i]->id) . " AND banner_id = " . intval($banner_row->id) . " LIMIT 1";
                                        $db->setQuery($sql);
                                        $thumb = $db->loadColumn();
                                        $thumb = $thumb["0"];
                                        if ($thumb != NULL && strlen($thumb) > 4) {
                                            $banner_row->image_url = $thumb;
                                        }
                                        if (isset($banner_row->parameters['img_alt'])) {
                                            $banner_row->parameters['img_alt'] = str_replace(',', '&#44;', $banner_row->parameters['img_alt']);
                                        }
                                        $img_siz = NULL;
                                        $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . intval($banners[$i]->id) . '&bid=' . intval($banner_row->id) . '&aid=' . intval($banners[$i]->aid);
                                        if (isset($banner_row->image_url) && $banner_row->image_url != '') {
                                            $txtimageurl = $mosConfig_live_site . '/images/stories/' . $ad_agency_folder . '/' . $banners[$i]->aid . '/' . $banner_row->image_url;
                                        }
                                        $link = JRoute::_($link);
                                        $img_style = '';
                                        $br = '';
                                        if (isset($txtimageurl) && $txtimageurl != NULL) {
                                            if (isset($zoneSettings->textadparams['ia'])) {
                                                $img_siz = @getimagesize($mosConfig_live_site . '/images/stories/' . $ad_agency_folder . '/' . $banners[$i]->aid . '/' . $banner_row->image_url);
                                                if (isset($img_siz[0])) {
                                                    $img_siz[0] += 10;
                                                    $img_siz = $img_siz[0] . "px;";
                                                }
                                                if ($zoneSettings->textadparams['ia'] == 'l') {
                                                    $img_style = "float:left; padding: 5px;";
                                                    $img_siz = "margin-left:" . $img_siz;
                                                } elseif ($zoneSettings->textadparams['ia'] == 'r') {
                                                    $img_style = "float:right; padding: 5px;";
                                                    $img_siz = "margin-right:" . $img_siz;
                                                } else {
                                                    $br = "<br />";
                                                }
                                            }
                                            if ($zoneSettings->textadparams['mxtype'] == "w") {
                                                $mindim = 'width:' . $zoneSettings->textadparams['mxsize'] . 'px !important;';
                                            } else {
                                                $mindim = 'height:' . $zoneSettings->textadparams['mxsize'] . 'px !important;';
                                            }
                                            $imagetxtcode = '<img class=\\"standard_adv_img\\" src=\\"' . $txtimageurl . '\\" style=\\"' . $mindim . ' ' . $img_style . '\\" border=\\"0\\" title=\\"' . $banner_row->parameters['img_alt'] . '\\" alt=\\"' . $banner_row->parameters['img_alt'] . '\\" />';
                                        } else {
                                            $imagetxtcode = '';
                                        }
                                        //border and color
                                        if ($banner_row->parameters['border'] > 0) {
                                            $table_style = "border: solid " . $banner_row->parameters['border'] . "px #" . $banner_row->parameters['border_color'] . ";";
                                        } else {
                                            $table_style = "border: none;";
                                        }
                                        $title_color = "";
                                        if ($banner_row->parameters['title_color'] != "") {
                                            $title_color = "style='color: #" . $banner_row->parameters["title_color"] . ";'";
                                        }
                                        $bg_color = "";
                                        if ($banner_row->parameters['bg_color'] != "") {
                                            $bg_color = "background-color: #" . $banner_row->parameters['bg_color'] . ";";
                                        }
                                        $underlined = "";
                                        $font_weight = "";
                                        $isUnderlined = strstr($banner_row->parameters['font_weight'], 'underlined');
                                        if ($isUnderlined == 'underlined') {
                                            $str_length = strpos($banner_row->parameters['font_weight'], 'underlined');
                                            $font_weight = substr($banner_row->parameters['font_weight'], 0, $str_length);
                                            $underlined = "text-decoration:underline;";
                                        } else {
                                            $font_weight = $banner_row->parameters['font_weight'];
                                        }
                                        $underlined_b = "";
                                        $font_weight_b = "";
                                        $isUnderlined_b = strstr($banner_row->parameters['font_weight_b'], 'underlined');
                                        if ($isUnderlined_b == 'underlined') {
                                            $str_length_b = strpos($banner_row->parameters['font_weight_b'], 'underlined');
                                            $font_weight_b = substr($banner_row->parameters['font_weight_b'], 0, $str_length_b);
                                            $underlined_b = "text-decoration:underline;";
                                        } else {
                                            $font_weight_b = $banner_row->parameters['font_weight_b'];
                                        }
                                        $body_color = "";
                                        if ($banner_row->parameters['body_color'] != "") {
                                            $body_color = "color: #" . $banner_row->parameters['body_color'];
                                        }
                                        $action_color = "";
                                        if ($banner_row->parameters['action_color'] != "") {
                                            $action_color = "style='color: #" . $banner_row->parameters["action_color"] . ";'";
                                        }
                                        $underlined_a = "";
                                        $font_weight_a = "";
                                        $isUnderlined_a = strstr($banner_row->parameters['font_weight_a'], 'underlined');
                                        if ($isUnderlined_a == 'underlined') {
                                            $str_length_a = strpos($banner_row->parameters['font_weight_a'], 'underlined');
                                            $font_weight_a = substr($banner_row->parameters['font_weight_a'], 0, $str_length_a);
                                            $underlined_a = "text-decoration:underline;";
                                        } else {
                                            $font_weight_a = $banner_row->parameters['font_weight_a'];
                                        }
                                        //td padding
                                        $padding = "";
                                        if ($banner_row->parameters['padding'] > 0) {
                                            $padding = "padding: " . $banner_row->parameters['padding'] . "px;";
                                        }
                                        $sizeparam = 'px';
                                        if (isset($zoneSettings->adparams['width']) && $zoneSettings->adparams['width'] != NULL) {
                                            $banner_row->width = $zoneSettings->adparams['width'];
                                        }
                                        if (isset($zoneSettings->adparams['height']) && $zoneSettings->adparams['height'] != NULL) {
                                            $banner_row->height = $zoneSettings->adparams['height'];
                                        }
                                        $width = $banner_row->width > 0 ? 'width:' . $banner_row->width . 'px;' : '';
                                        $height = $banner_row->height > 0 ? 'height:' . $banner_row->height . 'px;' : '';
                                        $banner_row->parameters['alt_text_a'] = addslashes($banner_row->parameters['alt_text_a']);
                                        $banner_row->parameters['alt_text'] = addslashes($banner_row->parameters['alt_text']);
                                        $banner_row->parameters['alt_text'] = str_replace(',', '&#44;', $banner_row->parameters['alt_text']);
                                        if (isset($zoneSettings->textadparams["wrap_img"]) && $zoneSettings->textadparams["wrap_img"] == '1') {
                                            $img_siz = NULL;
                                        }
                                        $banner_row->parameters['alt_text'] = preg_replace("/[\n\r]/", " ", $banner_row->parameters['alt_text']);
                                        $one_banner = '<div class="textlink_adv"  style=\\"overflow: hidden; text-align:' . $banner_row->parameters['align'] . '; ' . $width . ' ' . $height . ' ' . $table_style . ' ' . $bg_color . ' ' . $padding . '\\"><a target=\\"' . $banner_row->parameters['target_window'] . '\\" href=\\"' . $link . '\\" ' . $title_color . '><span style=\\"font-family: ' . $banner_row->parameters['font_family'] . '; font-size: ' . $banner_row->parameters['font_size'] . 'px; font-weight: ' . $font_weight . '; ' . $underlined . '\\"><font face=\\"' . $banner_row->parameters['font_family'] . '\\"> ' . $banner_row->parameters['alt_text_t'] . '</font></span></a><br />' . $imagetxtcode . $br . '<div style=\\"font-family: ' . $banner_row->parameters['font_family_b'] . '; font-size: ' . $banner_row->parameters['font_size_b'] . 'px; font-weight: ' . $font_weight_b . ';' . $underlined_b . ' ' . $body_color . ';' . $img_siz . ';\\">' . $banner_row->parameters['alt_text'] . ' </div><a href=\\"' . $link . '\\" target=\\"' . $banner_row->parameters['target_window'] . '\\" ' . $action_color . '><div style=\\"word-break: break-all; font-family: ' . $banner_row->parameters['font_family_a'] . '; font-size: ' . $banner_row->parameters['font_size_a'] . 'px; font-weight: ' . $font_weight_a . ';' . $underlined_a . ';\\">' . $banner_row->parameters['alt_text_a'] . '</div></a></div>';
                                        $txtimageurl = NULL;
                                        break;
                                    case 'Flash':
                                        $max_width = $banner_row->width . 'px';
                                        $max_height = $banner_row->height . 'px';
                                        $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . intval($banners[$i]->id) . '&bid=' . intval($banner_row->id) . '&aid=' . intval($banners[$i]->aid);
                                        $link = JRoute::_($link);
                                        if (isset($zoneSettings->adparams['width']) && $zoneSettings->adparams['width'] != NULL) {
                                            $banner_row->width = $zoneSettings->adparams['width'];
                                        }
                                        if (isset($zoneSettings->adparams['height']) && $zoneSettings->adparams['height'] != NULL) {
                                            $banner_row->height = $zoneSettings->adparams['height'];
                                        }
                                        //border and color
                                        if ($banner_row->parameters['border'] > 0) {
                                            $table_style = "border: solid " . $banner_row->parameters['border'] . "px #" . $banner_row->parameters['border_color'] . ";";
                                        } else {
                                            $table_style = "border: none;";
                                        }
                                        $bg_color = "";
                                        if ($banner_row->parameters['bg_color'] != "") {
                                            $bg_color = "background-color: #" . $banner_row->parameters['bg_color'] . ";";
                                        }
                                        //td padding
                                        $padding = "";
                                        if ($banner_row->parameters['padding'] > 0) {
                                            $padding = "padding: " . $banner_row->parameters['padding'] . "px;";
                                        }
                                        ///changes in adding flash objects
                                        $flashurl = $mosConfig_live_site . '/images/stories/' . $ad_agency_folder . '/' . $banners[$i]->aid . '/' . $banner_row->swf_url;
                                        $adflash = '<EMBED SRC=\\"' . $flashurl . '\\" width=' . $banner_row->width . ' height=' . $banner_row->height . ' QUALITY=\\"high\\" wmode=\\"transparent\\" TYPE=\\"application/x-shockwave-flash\\" PLUGINSPAGE=\\"http://www.macromedia.com/go/getflashplayer\\"></EMBED>';
                                        $one_banner = '';
                                        $onevent = "onclick";
                                        if (isset($banner_row->parameters['target_window']) && $banner_row->parameters['target_window'] == '_self') {
                                            $js_open = 'document.location.href=\'' . urldecode($link) . '\';';
                                            $flash_target = '_self';
                                        } else {
                                            $js_open = 'javascript:window.open(\'' . urldecode($link) . '\')';
                                            $flash_target = '_blank';
                                        }
                                        if (isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'], "MSIE") > 1) {
                                            $onevent = "onmousedown";
                                        }
                                        /*$one_banner .= '<div style=\"text-align:center; margin:0 auto; '.$table_style.' '.$bg_color.' max-width:'.$banner_row->width.'px; max-height:'.$banner_row->height.'px; \" align=\"'.$banner_row->parameters['align'].'\">  ';
                                        		$one_banner .= '<div style=\"position:fixed; max-width:'.$max_width.'; max-height:'.$max_height.'; background-color:transparent;cursor: pointer;\" cellpadding=\"0\" cellspacing=\"0\" width=\"'.$banner_row->width.'\" height=\"'.$banner_row->height.'\"><div><div valign=\"top\">';
                                        		$one_banner .= '<a href=\"' . $link . '\" target=\"' . $flash_target . '\"><img alt=\"\" src=\"' . JURI::root() . 'components/com_adagency/images/trans.gif\" style=\"height: ' . $banner_row->height .  'px; width: ' . $banner_row->width .  'px; float: left;\"></a>';
                                        		$one_banner .= '</div></div></div>'.$adflash. '</div>';*/
                                        //---------------------------------------------------------------------
                                        $one_banner .= '<div style=\\"text-align:center; margin:0 auto; ' . $table_style . ' ' . $bg_color . ' max-width:' . $banner_row->width . 'px; max-height:' . $banner_row->height . 'px; \\" align=\\"' . $banner_row->parameters['align'] . '\\"><a href=\\"' . $link . '\\" target=\\"' . $flash_target . '\\" style=\\"display:inline-block; width:100%;\\"><iframe src=\\"' . JURI::root() . 'index.php?option=com_adagency&controller=adagencyAds&task=loadflash&url=' . urlencode($flashurl) . '&width=' . $banner_row->width . '&height=' . $banner_row->height . '&tmp=component&format=raw' . '\\" style=\\"width:' . intval($banner_row->width) . 'px; height:' . intval($banner_row->height) . 'px; border:none; pointer-events: none;\\" scrolling=\\"no\\" seamless=\\"seamless\\"></iframe></a></div>';
                                        //---------------------------------------------------------------------
                                        break;
                                    case 'Advanced':
                                        $max_width = $banner_row->width . 'px';
                                        $max_height = $banner_row->height . 'px';
                                        $link = 'index.php?option=com_adagency&controller=adagencyAds&task=click&cid=' . intval($banners[$i]->id) . '&bid=' . intval($banner_row->id) . '&aid=' . intval($banners[$i]->aid);
                                        $link = JRoute::_($link);
                                        $style_adv = NULL;
                                        $original_width = $zoneSettings->adparams['width'];
                                        $original_height = $zoneSettings->adparams['height'];
                                        if (!isset($banner_row->parameters['target_window'])) {
                                            $banner_row->parameters['target_window'] = NULL;
                                        }
                                        if (isset($zoneSettings->adparams['width']) && isset($zoneSettings->adparams['height']) && $zoneSettings->adparams['width'] != NULL && $zoneSettings->adparams['height'] != NULL) {
                                            $zoneSettings->adparams['width'] += 5;
                                            $zoneSettings->adparams['height'] += 5;
                                            $style_adv = ' style=\\"overflow:hidden;margin:0 auto;width:' . $zoneSettings->adparams['width'] . 'px;height:' . $zoneSettings->adparams['height'] . 'px;\\" ';
                                        } else {
                                            $style_adv = NULL;
                                        }
                                        if (preg_match('/ad_url/', $banner_row->ad_code)) {
                                            $one_banner = '<div class=\\"adv_rt\\" ' . $style_adv . '><div><div><div>' . str_replace('ad_url', $link . '\\" target=\\"' . $banner_row->parameters['target_window'] . '\\"', str_replace('"', '\\"', $banner_row->ad_code)) . '</div></div></div></div>';
                                        } else {
                                            $one_banner = '<div class=\\"adv_rt\\" ' . $style_adv . '><div ' . $style_adv . '  style=\\"max-width:' . $max_width . '; max-height:' . $max_height . ';\\"><div><div><a href=\\"' . $link . '\\" target=\\"' . $banner_row->parameters['target_window'] . '\\">' . str_replace('"', '\\"', $banner_row->ad_code) . '</a></div></div></div></div>';
                                        }
                                        $zoneSettings->adparams['width'] = $original_width;
                                        $zoneSettings->adparams['height'] = $original_height;
                                        break;
                                }
                                // endswitch
                            }
                            //end if
                            $the_rot_banners = $the_rot_banners . '"' . $one_banner . '",';
                            $the_rot_banners_id = $the_rot_banners_id . '"' . $banner_id . '",';
                            $the_rot_advert = $the_rot_advert . '"' . $the_advertiser . '",';
                            $the_rot_camp = $the_rot_camp . '"' . $the_campaign . '",';
                            $the_rot_type = $the_rot_type . '"' . $the_type . '",';
                        }
                        $the_rot_banners = substr($the_rot_banners, 0, strlen($the_rot_banners) - 1);
                        $the_rot_banners_id = substr($the_rot_banners_id, 0, strlen($the_rot_banners_id) - 1);
                        $the_rot_advert = substr($the_rot_advert, 0, strlen($the_rot_advert) - 1);
                        $the_rot_camp = substr($the_rot_camp, 0, strlen($the_rot_camp) - 1);
                        $the_rot_type = substr($the_rot_type, 0, strlen($the_rot_type) - 1);
                        if ($rotator_info->rotaterandomize == 1) {
                            $is_random = 'currentAd=Math.floor(Math.random()*' . $no_of_ads_for_rotator . ')';
                        } else {
                            $is_random = '';
                        }
                        $document->addScript(JURI::base() . "components/com_adagency/includes/js/ajax.js");
                        $rotator_content .= '
							function rotator_display_count' . $module->id . '(banner_id, advertiser_id, campaign_id, type){
								var ajaxObjects = new Array();
								var ajaxIndex = ajaxObjects.length;
								ajaxObjects[ajaxIndex] = new sack();

								var url = "' . JURI::root() . "index.php?option=com_adagency&controller=adagencyReports&task=rotator" . '&banner_id=" + banner_id + "&advertiser_id=" +advertiser_id+"&campaign_id=" +campaign_id+"&type=" +type;
								ajaxObjects[ajaxIndex].requestFile = url; // Specifying which file to get
								ajaxObjects[ajaxIndex].onCompletion = function(){};
								ajaxObjects[ajaxIndex].runAJAX(); // Execute AJAX function
							}
							';
                        $rotator_content .= '
							var imgCt' . $module->id . ' = ' . $geocount . ';
							var banners' . $module->id . ' = new Array(' . str_replace('class="textlink_adv"', 'class=\\"textlink_adv\\"', $the_rot_banners) . ');
							var banners_ids' . $module->id . ' = new Array(' . $the_rot_banners_id . ');
							var displayed_ids' . $module->id . ' = new Array("' . implode('", "', $displayed_ids) . '");
							var advertisers' . $module->id . ' = new Array(' . $the_rot_advert . ');
							var campaigns' . $module->id . ' = new Array(' . $the_rot_camp . ');
							var types' . $module->id . ' = new Array(' . $the_rot_type . ');
							
							function cycle' . $module->id . '(position, curent){
								if(curent >= imgCt' . $module->id . '){
									curent=curent%imgCt' . $module->id . ';
								}
								
								var next = curent+1;
								if(next >= imgCt' . $module->id . '){
									next = next % imgCt' . $module->id . ';
								}
								
								document.getElementById("the' . $module->id . '_rotator"+position).innerHTML = banners' . $module->id . '[next];
								document.getElementById("the' . $module->id . '_rotator_aux"+position).innerHTML = banners' . $module->id . '[next];
								
								if(displayed_ids' . $module->id . '.indexOf(banners_ids' . $module->id . '[next]) == -1){
									rotator_display_count' . $module->id . '(banners_ids' . $module->id . '[next], advertisers' . $module->id . '[next], campaigns' . $module->id . '[next], types' . $module->id . '[next]);
									displayed_ids' . $module->id . '.push(banners_ids' . $module->id . '[next]);
								}
								
								curent += ' . intval($zoneSettings->banners * $zoneSettings->banners_cols) . ';
								setTimeout("cycle' . $module->id . '("+position+","+next+")", ' . $rotator_info->rotating_time . ');
							}
							';
                    }
                    JHtml::_('behavior.framework');
                    $to_rotate_now = NULL;
                    if (!isset($document)) {
                        $document = JFactory::getDocument();
                    }
                    if (!isset($geocount)) {
                        $geocount = 0;
                    }
                    // added html comments for the w3c validator
                    $document->addScriptDeclaration("<!--\n\t\t\t\t\t" . $rotator_content . "\n\t\t\t\t\t//-->\n\t\t\t\t\t");
                    $new_rotator = '<div  class="adg_table clearfix">';
                    if (!isset($the_rot_banners_id)) {
                        $the_rot_banners_id = NULL;
                    }
                    if (!isset($is_random)) {
                        $is_random = NULL;
                    }
                    if (!isset($the_rot_banners)) {
                        $the_rot_banners = NULL;
                    }
                    if (!isset($output_this)) {
                        $output_this = NULL;
                    }
                    $total = explode(",", $the_rot_banners_id);
                    $start = 1;
                    $display_banners = explode(",", $the_rot_banners);
                    $displayed = array();
                    if (count($banners) > $zoneSettings->banners_cols) {
                        $span = floor(12 / $zoneSettings->banners_cols);
                    } else {
                        if (count($banners) == 5) {
                            $span = "Special";
                        } else {
                            if (count($banners) != 0) {
                                $span = floor(12 / count($banners));
                            }
                        }
                    }
                    for ($i = 1; $i <= $bannernr_rows; $i++) {
                        $new_rotator .= "<div class=\"adg_row adg_table_row\">";
                        for ($j = 1; $j <= $bannernr_cols; $j++) {
                            if ($start > count($total)) {
                                $start = 1;
                            }
                            if ($start >= $geocount + 1) {
                                break;
                            }
                            if (!in_array($start, $displayed)) {
                                $displayed[] = $start;
                                $new_rotator .= "<div class=\"adg_cell adg_table_cell span" . $span . " \"><div><div><div class=\"rotating_zone\" id=\"the" . $module->id . "_rotator" . $start . "\">" . stripslashes(substr($display_banners[$start - 1], 1, -1)) . "</div><div id=\"the" . $module->id . "_rotator_aux" . $start . "\" style='display:none;'></div></div></div></div>";
                                $to_rotate_now .= 'cycle' . $module->id . '(' . $start . ',' . ($start - 1) . ');';
                            }
                            $start++;
                        }
                        $new_rotator .= "</div>";
                    }
                    $new_rotator .= "</div>";
                    $output_this .= $new_rotator;
                    if (count($loaded_banners) >= 1) {
                        $document->addScriptDeclaration("DomReady.ready(function(){\n\t\t\t\t\t\t\t\twindow.setTimeout(function(){\n\t\t\t\t\t\t\t\t\t" . $to_rotate_now . "\n\t\t\t\t\t\t\t\t}, " . $rotator_info->rotating_time . ");\n\t\t\t\t\t\t\t});");
                    }
                }
            }
            if (!isset($output_this)) {
                $output_this = '';
            }
            // Changed code for MetaMod compatibility
            global $ad_output1, $ad_output2;
            if (!is_array($ad_output1)) {
                $ad_output1 = array();
            }
            if (!is_array($ad_output2)) {
                $ad_output2 = array();
            }
            $ad_output1[$module->id] = $output_this;
            $ad_output2[$module->id] = $adv_here_top . $output_this . $adv_here_bottom;
            return $ad_output2[$module->id];
        }
        return NULL;
    }
Пример #8
0
    function store()
    {
        $database = JFactory::getDBO();
        $db = JFactory::getDBO();
        $item = $this->getTable('adagencyAds');
        $adsModel = $this->getInstance("adagencyAds", "adagencyModel");
        $configs = $this->getInstance("adagencyConfig", "adagencyModel");
        $configs = $configs->getConfigs();
        $notify = JRequest::getInt('id');
        $changed = "new";
        $advid = $this->getCurrentAdvertiser();
        if (isset($advid->aid)) {
            $advid = $advid->aid;
        } else {
            $advid = 0;
        }
        $data = JRequest::get('post');
        //echo "<pre>";var_dump($data);die();
        if (!isset($data['parameters']["align"])) {
            $data['parameters["align"]'] = NULL;
        }
        if (!isset($data['parameters']["border"])) {
            $data['parameters["border"]'] = NULL;
        }
        if (!isset($data['parameters']["border_color"])) {
            $data['parameters["border_color"]'] = '000000;';
        }
        if (!isset($data['parameters']["bg_color"])) {
            $data['parameters["bg_color"]'] = 'FFFFFF';
        }
        $data['parameters']['toppos'] = "288";
        $data['parameters']['leftpos'] = "459";
        $data['parameters']['bottpos'] = "";
        $data['parameters']['rightpos'] = "";
        $selected_camps = array();
        if (isset($data['adv_cmp']) && is_array($data['adv_cmp'])) {
            foreach ($data['adv_cmp'] as $key => $val) {
                if ($val) {
                    $selected_camps[] = $val;
                }
            }
        }
        if ($data['id'] == 0) {
            $data['created'] = date("Y-m-d");
            $data['key'] = md5(rand(1000, 9999));
            $data['ad_start_date'] = $data['created'];
        } else {
            $data['key'] = NULL;
        }
        $data['parameters']['ad_code'] = JRequest::getVar('transitioncode', '', 'POST', 'STRING', JREQUEST_ALLOWHTML);
        /*saving floating ad*/
        $crt = 1;
        $string = 'href="';
        $fisier = $data['parameters']['ad_code'];
        $pos1 = strpos($fisier, $string);
        while ($pos1) {
            $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
            $pos2 = strpos($fisier, '"');
            $url = substr($fisier, 0, $pos2);
            $data['parameters']["linktrack"][$crt] = $url;
            $crt++;
            $pos1 = strpos($fisier, $string);
        }
        $html_content = preg_replace("/(href((\\s+)?)=((\\s+)?)\")\\b((http(s?):\\/\\/)|(www\\.)|(ftp:\\/\\/))([\\w\\.]+)([-~\\/\\w+\\.-?\\&\\,\\%\\=]+)\\b/i", "href=\"ad_url", $data['parameters']['ad_code']);
        $closead = JText::_('ADAG_CLOSEAD');
        $script = <<<EOD
<SCRIPT language="JavaScript1.2">
var ie=document.all;
var dom=document.getElementById;
var ns4=document.layers;
var bouncelimit=32;
var direction="up";

function initbox(){
if (!document.all) {
\tfafa = document.getElementById("floatit");
\tfafa.parentNode.removeChild(fafa);
\tdocument.body.appendChild(fafa); }
if (!dom&&!ie&&!ns4)
return;
crossobj=(dom)?document.getElementById("floatit").style : ie? document.all.floatit : document.floatit;
scroll_top=(ie)? document.body.scrollTop : window.pageYOffset;
crossobj.top=scroll_top-250;
crossobj.visibility=(dom||ie)? "visible" : "show";
dropstart=setInterval("floatit()",50);
}

function floatit(){
scroll_top=(ie)? document.body.scrollTop : window.pageYOffset;
if (parseInt(crossobj.top)<100+scroll_top)
crossobj.top=parseInt(crossobj.top)+40;
else{
clearInterval(dropstart);
bouncestart=setInterval("bouncein()",50);
}
}

function bouncein(){
crossobj.top=parseInt(crossobj.top)-bouncelimit;
if (bouncelimit<0)
bouncelimit+=8;
bouncelimit=bouncelimit*-1;
if (bouncelimit==0){
clearInterval(bouncestart);
}
}

function HideVert(){
if (window.bouncestart) clearInterval(bouncestart);
crossobj.visibility="hidden";
document.getElementById("floatit").style.display = "none";
}

var screenWidth = window.innerWidth ? window.innerWidth*.92 : document.body.offsetWidth*.92;
var screenHeight = window.innerHeight ? window.innerHeight : document.body.offsetHeight;

</SCRIPT>
<div id="floatit" style="VISIBILITY: hidden; position:absolute; xtopzz xbottzz xleftzz xrightzz z-index:500; background-color:#{$data['parameters["bg_color"]']}; border-color: #{$data['parameters["border_color"]']};">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" width="100%" id="AutoNumber1" height="100%">
  <tr>
    <td width="100%" align="{$data['parameters["align"]']}" height="100%" id="containing_td">
    <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" width="{$data['width']}" id="AutoNumber2">
  <tr>
    <td height="{$data['height']}" align="left" valign="top">
    <table border="{$data['parameters["border"]']}" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="{$data['parameters["border_color"]']}" width="100%" id="AutoNumber2" bgcolor="{$data['parameters["bg_color"]']}">
      <tr>
        <td width="100%" align="right">
        <a href="" onClick="HideVert();return false;">{$closead}</a>
\t</td>
      </tr>
      <tr>
        <td width="100%" height="{$data['height']}">

<!----start---->

{$html_content}

<!----End---->
        </td>
      </tr>
    </table>
    </td>
  </tr>
</table>
</td>
  </tr>
</table>
<script type="text/javascript">
initbox();
var xxx;
</script>
</div>

EOD;
        $adcodu = str_replace("xtopzz", "top: " . $data["parameters"]["toppos"] . "px;", $script);
        $adcodu = str_replace("xleftzz", "left: " . $data["parameters"]["leftpos"] . "px;", $adcodu);
        $adcodu = str_replace("xbottzz", "bottom: " . $data["parameters"]["bottpos"] . "px;", $adcodu);
        $adcodu = str_replace("xrightzz", "right: " . $data["parameters"]["rightpos"] . "px;", $adcodu);
        $the_code = $data['parameters']['ad_code'];
        $data['parameters'] = serialize($data['parameters']);
        // Check settings for auto-approve ads [begin]
        $advertiser = $this->getCurrentAdvertiser();
        if (isset($advertiser->apr_ads) && $advertiser->apr_ads != 'G') {
            $approved = $advertiser->apr_ads;
        } else {
            $sql = "SHOW COLUMNS FROM `#__ad_agency_banners` WHERE field = 'approved'";
            $db->setQuery($sql);
            $res = $db->loadObject();
            $approved = $res->Default;
        }
        if ($approved == 'N') {
            $approved = 'P';
        }
        $data['approved'] = $approved;
        // if the ad is not new then ->
        if (isset($data['id']) && $data['id'] > 0) {
            $ex_ad = $this->getAdById($data['id']);
            $ex_ad->parameters = @unserialize($ex_ad->parameters);
            // if the ad was approved or declined and the new status would be 'pending', make sure changes occured to it!
            if ($ex_ad->approved != 'P' && $data['approved'] == 'P') {
                // if no change has been made, let the status be as it was
                if ($ex_ad->title == $data['title'] && $ex_ad->description == $data['description'] && $ex_ad->parameters['ad_code'] == $the_code) {
                    $data['approved'] = $ex_ad->approved;
                } else {
                    //it was changed, and sent email to administrator
                    $notify = "0";
                    $changed = "changed";
                }
            }
        }
        // Check settings for auto-approve ads [end]
        $parameters = $data["parameters"];
        $parameters = unserialize($parameters);
        if (!isset($parameters["target_window"])) {
            $parameters["target_window"] = "_blank";
            $data["parameters"] = serialize($parameters);
        }
        if (!$item->bind($data)) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->check()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->store()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (isset($notify) && $notify != 0) {
            $where = $notify;
        } else {
            $where = mysql_insert_id();
        }
        if ($where == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $where = $db->loadResult();
        }
        if (!isset($data['id']) || $data['id'] == 0) {
            $data['id'] = mysql_insert_id();
        }
        $idi = $data['id'];
        if ($idi == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $idi = $db->loadResult();
        }
        if (isset($idi)) {
            $this->store_geo($idi);
        }
        require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
        JomSocialTargeting::save($idi);
        $query = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id=" . intval($idi);
        $db->setQuery($query);
        $db->query();
        $campLimInfo = $adsModel->getCampLimInfo();
        if (isset($selected_camps)) {
            foreach ($selected_camps as $val) {
                if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                    $query = "INSERT INTO `#__ad_agency_campaign_banner`\n                                (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`)\n                                VALUES\n                                ('" . $val . "', '" . $idi . "', '100', NULL, " . $data['czones'][$val] . ");";
                    //$query = "INSERT INTO #__ad_agency_campaign_banner VALUES ({$val},{$idi},100)";
                    $db->setQuery($query);
                    $db->query();
                }
            }
        }
        $sql = "UPDATE #__ad_agency_banners SET `ad_code` = '" . addslashes(trim($adcodu)) . "' WHERE `id`='" . intval($where) . "'";
        $db->setQuery($sql);
        $db->query();
        // Send email to administrator
        if ($notify == '0') {
            $sql = "SELECT a.user_id, a.company, a.telephone as phone, u.name, u.username, u.email FROM #__ad_agency_advertis AS a LEFT OUTER JOIN #__users as u on u.id=a.user_id\tWHERE a.aid=" . intval($advid) . " GROUP BY a.aid";
            $db->setQuery($sql);
            $user = $db->loadObject();
            if (isset($user) && $user != NULL) {
                $sql = "select `params` from #__ad_agency_settings";
                $db->setQuery($sql);
                $db->query();
                $email_params = $db->loadColumn();
                $email_params = @$email_params["0"];
                $email_params = unserialize($email_params);
                $ok_send_email = 0;
                $subject = "";
                $message = "";
                if ($changed == "new") {
                    $subject = $configs->sbnewad;
                    $message = $configs->bodynewad;
                    $ok_send_email = $email_params["send_ban_added"];
                } else {
                    $subject = $configs->sbadchanged;
                    $message = $configs->boadchanged;
                    $ok_send_email = $email_params["send_ad_modified"];
                }
                if (!isset($user->company) || $user->company == "") {
                    $user->company = "N/A";
                }
                if (!isset($user->phone) || $user->phone == "") {
                    $user->phone = "N/A";
                }
                $current_ad = $this->getAdById($where);
                if (isset($current_ad->approved) && $current_ad->approved == "Y") {
                    $status = JText::_("NEWADAPPROVED");
                } else {
                    $status = JText::_("ADAG_PENDING");
                }
                $epreview = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&no_html=1&adid=" . $where . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&adid=" . $where . "</a>";
                $eapprove = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $where . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $where . "&key=" . $data['key'] . "</a>";
                $edecline = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $where . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $where . "&key=" . $data['key'] . "</a>";
                $subject = str_replace('{name}', $user->name, $subject);
                $subject = str_replace('{login}', $user->username, $subject);
                $subject = str_replace('{email}', $user->email, $subject);
                $subject = str_replace('{banner}', $data['title'], $subject);
                $subject = str_replace('{company}', $user->company, $subject);
                $subject = str_replace('{phone}', $user->phone, $subject);
                $subject = str_replace('{approval_status}', $status, $subject);
                $subject = str_replace('{banner_preview_url}', $epreview, $subject);
                $subject = str_replace('{approve_banner_url}', $eapprove, $subject);
                $subject = str_replace('{decline_banner_url}', $edecline, $subject);
                $message = str_replace('{name}', $user->name, $message);
                $message = str_replace('{login}', $user->username, $message);
                $message = str_replace('{email}', $user->email, $message);
                $message = str_replace('{banner}', $data['title'], $message);
                $message = str_replace('{company}', $user->company, $message);
                $message = str_replace('{phone}', $user->phone, $message);
                $message = str_replace('{approval_status}', $status, $message);
                $message = str_replace('{banner_preview_url}', $epreview, $message);
                $message = str_replace('{approve_banner_url}', $eapprove, $message);
                $message = str_replace('{decline_banner_url}', $edecline, $message);
                if ($ok_send_email == 1) {
                    JFactory::getMailer()->sendMail($configs->fromemail, $configs->fromname, $configs->adminemail, $subject, $message, 1);
                }
            }
        }
        // END - Send email to administrator
        $sql = "SELECT approved FROM #__ad_agency_banners WHERE id = " . intval($idi);
        $db->setQuery($sql);
        $approved = $db->loadResult();
        $item_id = JRequest::getInt('Itemid', '0', 'post');
        if ($item_id != 0) {
            $Itemid = "&Itemid=" . $item_id;
        } else {
            $Itemid = NULL;
        }
        $isWizzard = $this->isWizzard();
        $link = "index.php?option=com_adagency&controller=adagencyAds&p=1" . $Itemid;
        $msg = JText::_('AD_BANNERSAVED');
        global $mainframe;
        if ($isWizzard && $approved == 'P') {
            $mainframe->redirect($link, $msg);
        }
        return true;
    }
Пример #9
0
    <div class="uk-form-row">
      <label for="popup_pageurl" class="uk-form-label"></label>
      <div class="uk-form-controls">
        <div id="imgwait" style="display:none;">
            <img src="<?php 
    echo JURI::root() . "components/com_adagency/images/pleasewait.gif";
    ?>
" />
        </div>
      </div>
    </div>
    <?php 
}
output_geoform($advertiser_id);
require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
$helper = new JomSocialTargeting();
$helper->render_front($_row->id);
if (isset($camps) && count($camps) > 0) {
    $i = 0;
    ?>
    <legend class="uk-margin-large-top"><?php 
    echo JText::_('ADD_NEWADCMPS');
    ?>
</legend>
    <table class="uk-table uk-table-middle">
      <thead>
        <th></th>
        <th><?php 
    echo JText::_("CONFIGCMP");
    ?>
</th>
Пример #10
0
 function store()
 {
     $database = JFactory::getDBO();
     $db = JFactory::getDBO();
     $item = $this->getTable('adagencyAds');
     $adsModel = $this->getInstance("adagencyAds", "adagencyModel");
     $configs = $this->getInstance("adagencyConfig", "adagencyModel");
     $configs = $configs->getConfigs();
     $notify = JRequest::getInt('id');
     $changed = "new";
     $advid = $this->getCurrentAdvertiser();
     if (isset($advid->aid)) {
         $advid = $advid->aid;
     } else {
         $advid = 0;
     }
     $data = JRequest::get('post');
     if (isset($data['width']) && isset($data['height'])) {
         $data['width'] = NULL;
         $data['height'] = NULL;
         unset($data['width']);
         unset($data['height']);
     }
     //echo "<pre>";var_dump($data);die();
     if ($data['id'] == 0) {
         $data['created'] = date("Y-m-d");
         $data['key'] = md5(rand(1000, 9999));
         $data['ad_start_date'] = $data['created'];
     } else {
         $data['key'] = NULL;
     }
     //echo "<pre>";var_dump($data);die();
     if (isset($data['adv_cmp'])) {
         $adv_cmp = $data['adv_cmp'];
     }
     $res = true;
     // Check settings for auto-approve ads [begin]
     $advertiser = $this->getCurrentAdvertiser();
     if (isset($advertiser->apr_ads) && $advertiser->apr_ads != 'G') {
         $approved = $advertiser->apr_ads;
     } else {
         $sql = "SHOW COLUMNS FROM `#__ad_agency_banners` WHERE field = 'approved'";
         $db->setQuery($sql);
         $res = $db->loadObject();
         $approved = $res->Default;
     }
     if ($approved == 'N') {
         $approved = 'P';
     }
     $data['approved'] = $approved;
     // Check settings for auto-approve ads [end]
     // if the ad is not new then ->
     if (isset($data['id']) && $data['id'] > 0) {
         $ex_ad = $this->getAdById($data['id']);
         $ex_ad->parameters = @unserialize($ex_ad->parameters);
         // if the ad was approved or declined and the new status would be 'pending', make sure changes occured to it!
         if ($ex_ad->approved != 'P' && $data['approved'] == 'P') {
             // if no change has been made, let the status be as it was
             if ($ex_ad->title == $data['title'] && $ex_ad->description == $data['description'] && $ex_ad->target_url == $data['target_url'] && $ex_ad->image_url == $data['image_url'] && stripslashes(@$ex_ad->parameters['alt_text_t']) == $data['linktitle'] && stripslashes(@$ex_ad->parameters['alt_text']) == $data['linktext'] && stripslashes(@$ex_ad->parameters['alt_text_a']) == $data['linkaction']) {
                 //&&(stripslashes(@$ex_ad->parameters['img_alt']) == $data['parameters']['img_alt'])
                 $data['approved'] = $ex_ad->approved;
             } else {
                 //it was changed, and sent email to administrator
                 $notify = "0";
                 $changed = "changed";
             }
         }
     }
     if (isset($ex_ad->parameters)) {
         foreach ($data['parameters'] as $key => $value) {
             $ex_ad->parameters[$key] = $value;
         }
         $data['parameters'] = $ex_ad->parameters;
     }
     if (!isset($data['parameters']['img_alt']) || $data['parameters']['img_alt'] == '') {
         $data['parameters']['img_alt'] = $data['target_url'];
     }
     //echo "<pre>";var_dump($data);die();
     $data['parameters'] = serialize($data['parameters']);
     $parameters = $data["parameters"];
     $parameters = unserialize($parameters);
     if (!isset($parameters["target_window"])) {
         $parameters["target_window"] = "_blank";
         $data["parameters"] = serialize($parameters);
     }
     $data["linktext"] = str_replace("\r\n", " ", $data["linktext"]);
     $data["parameters"]["alt_text"] = str_replace("\r\n", " ", $data["parameters"]["alt_text"]);
     if (!$item->bind($data)) {
         $res = false;
     }
     if (!$item->check()) {
         $res = false;
     }
     if (!$item->store()) {
         $res = false;
     }
     if (!isset($data['id']) || $data['id'] == 0) {
         $data['id'] = mysql_insert_id();
     }
     $idi = $data['id'];
     if ($idi == 0) {
         $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
         $db->setQuery($ask);
         $idi = $db->loadResult();
     }
     if (isset($idi)) {
         $this->store_geo($idi);
     }
     require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
     JomSocialTargeting::save($idi);
     $query = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id=" . intval($idi);
     $db->setQuery($query);
     $db->query();
     if (isset($data['image_url']) && $data['image_url'] != NULL) {
         $img_url = JPATH_BASE . DS . 'images' . DS . 'stories' . DS . $configs->imgfolder . DS . $data['advertiser_id'] . DS . $data['image_url'];
         //echo $img_url."<br />";
         @(list($width_orig, $height_orig, $type, $attr) = @getimagesize($img_url));
         /*echo "Width original: ";var_dump($width_orig)."<br />";
         
         			echo "Height original: ".$height_orig."<br />";
         
         			echo "Type: ".$type."<br />";
         
         			echo "Attr: ".$attr."<br />";
         
         			echo "<pre>";var_dump($adv_cmp);echo "<hr />";//die();
         
         			//die();*/
     }
     $fls = array();
     $campLimInfo = $adsModel->getCampLimInfo();
     //echo "<pre>";var_dump($campLimInfo);echo "<hr />";//die();
     if (isset($adv_cmp)) {
         foreach ($adv_cmp as $val) {
             $zparams = NULL;
             $thumb = NULL;
             if (strstr($val, "|no|")) {
                 $yes_no = 0;
             } else {
                 $yes_no = 1;
             }
             $val = str_replace("|yes|", "", $val);
             $val = str_replace("|no|", "", $val);
             if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                 if ($yes_no == 1) {
                     $query = "INSERT INTO `#__ad_agency_campaign_banner` (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`)\n\n                                        VALUES ('" . intval($val) . "', '" . intval($idi) . "', '100', NULL, " . intval($data['czones'][$val]) . ");";
                     //$query = "INSERT INTO #__ad_agency_campaign_banner VALUES ({$val},{$idi},100)";
                     $db->setQuery($query);
                     $db->query();
                     $query = "SELECT z.adparams,z.textadparams FROM #__ad_agency_zone AS z WHERE z.zoneid = " . intval($data['czones'][$val]);
                     $db->setQuery($query);
                     $res = $db->loadObject();
                     $zparams = @unserialize($res->adparams);
                     $ex_ad->parameters = @unserialize($res->textadparams);
                     if (isset($ex_ad->parameters['mxsize']) && intval($ex_ad->parameters['mxsize']) > 0 && isset($ex_ad->parameters['mxtype'])) {
                         if ($ex_ad->parameters['mxtype'] == 'w' && $ex_ad->parameters['mxsize'] < $zparams['width'] || $zparams['width'] == '') {
                             //$ratio = $zparams['width']/$zparams['height'];$zparams['height'] = $zparams['width']/$ratio;
                             $zparams['width'] = $ex_ad->parameters['mxsize'];
                         } elseif ($ex_ad->parameters['mxtype'] == 'h' && $ex_ad->parameters['mxsize'] < $ex_ad->parameters['height'] || $zparams['height'] == '') {
                             //$ratio = $zparams['width']/$zparams['height'];$zparams['width'] = $ratio * $zparams['height'];
                             $zparams['height'] = $ex_ad->parameters['mxsize'];
                         }
                         if (isset($zparams['width']) && isset($zparams['height']) && isset($width_orig) && $width_orig != NULL && isset($height_orig) && ($width_orig > $zparams['width'] || $height_orig > $zparams['height'])) {
                             // make the thumb with the maximum size or the zone
                             //echo "Campaign id: ".$val."<br />";
                             $thumb = $this->makeThumb($img_url, $zparams['width'], $zparams['height']);
                             if ($thumb != NULL && $thumb != false) {
                                 $sql = "UPDATE `#__ad_agency_campaign_banner` SET `thumb` = '" . trim($thumb) . "' WHERE `campaign_id` =" . intval($val) . " AND `banner_id` =" . intval($idi) . ";";
                             } else {
                                 $sql = "UPDATE `#__ad_agency_campaign_banner` SET `thumb` = NULL WHERE `campaign_id` =" . intval($val) . " AND `banner_id` =" . intval($idi) . ";";
                             }
                             $db->setQuery($sql);
                             $db->query();
                             $fls[] = $thumb;
                         }
                     }
                 }
             }
         }
     }
     //echo "<hr />";
     //var_dump($fls);
     //die();
     // Send email to administrator
     if ($notify == '0') {
         $sql = "SELECT a.user_id, a.company, a.telephone AS phone, u.name, u.username, u.email FROM #__ad_agency_advertis AS a LEFT OUTER JOIN #__users AS u ON u.id=a.user_id\tWHERE a.aid=" . intval($advid) . " GROUP BY a.aid";
         $db->setQuery($sql);
         $user = $db->loadObject();
         if (isset($user) && $user != NULL) {
             $sql = "select `params` from #__ad_agency_settings";
             $db->setQuery($sql);
             $db->query();
             $email_params = $db->loadColumn();
             $email_params = @$email_params["0"];
             $email_params = unserialize($email_params);
             $ok_send_email = 0;
             $subject = "";
             $message = "";
             if ($changed == "new") {
                 $subject = $configs->sbnewad;
                 $message = $configs->bodynewad;
                 $ok_send_email = $email_params["send_ban_added"];
             } else {
                 $subject = $configs->sbadchanged;
                 $message = $configs->boadchanged;
                 $ok_send_email = $email_params["send_ad_modified"];
             }
             if (!isset($user->company) || $user->company == "") {
                 $user->company = "N/A";
             }
             if (!isset($user->phone) || $user->phone == "") {
                 $user->phone = "N/A";
             }
             $current_ad = $this->getAdById($idi);
             if (isset($current_ad->approved) && $current_ad->approved == "Y") {
                 $status = JText::_("NEWADAPPROVED");
             } else {
                 $status = JText::_("ADAG_PENDING");
             }
             $epreview = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&no_html=1&adid=" . $idi . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&adid=" . $idi . "</a>";
             $eapprove = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $idi . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $idi . "&key=" . $data['key'] . "</a>";
             $edecline = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $idi . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $idi . "&key=" . $data['key'] . "</a>";
             $subject = str_replace('{name}', $user->name, $subject);
             $subject = str_replace('{login}', $user->username, $subject);
             $subject = str_replace('{email}', $user->email, $subject);
             $subject = str_replace('{banner}', $data['title'], $subject);
             $subject = str_replace('{company}', $user->company, $subject);
             $subject = str_replace('{phone}', $user->phone, $subject);
             $subject = str_replace('{approval_status}', $status, $subject);
             $subject = str_replace('{banner_preview_url}', $epreview, $subject);
             $subject = str_replace('{approve_banner_url}', $eapprove, $subject);
             $subject = str_replace('{decline_banner_url}', $edecline, $subject);
             $message = str_replace('{name}', $user->name, $message);
             $message = str_replace('{login}', $user->username, $message);
             $message = str_replace('{email}', $user->email, $message);
             $message = str_replace('{banner}', $data['title'], $message);
             $message = str_replace('{company}', $user->company, $message);
             $message = str_replace('{phone}', $user->phone, $message);
             $message = str_replace('{approval_status}', $status, $message);
             $message = str_replace('{banner_preview_url}', $epreview, $message);
             $message = str_replace('{approve_banner_url}', $eapprove, $message);
             $message = str_replace('{decline_banner_url}', $edecline, $message);
             if ($ok_send_email == 1) {
                 JFactory::getMailer()->sendMail($configs->fromemail, $configs->fromname, $configs->adminemail, $subject, $message, 1);
             }
         }
     }
     // END - Send email to administrator
     $sql = "SELECT approved FROM #__ad_agency_banners WHERE id = " . intval($idi);
     $db->setQuery($sql);
     $approved = $db->loadResult();
     $isWizzard = $this->isWizzard();
     $item_id = JRequest::getInt('Itemid', '0');
     if ($item_id != 0) {
         $Itemid = "&Itemid=" . intval($item_id);
     } else {
         $Itemid = NULL;
     }
     $link = "index.php?option=com_adagency&controller=adagencyAds&p=1" . $Itemid;
     $msg = JText::_('AD_BANNERSAVED');
     global $mainframe;
     if ($isWizzard && $approved == 'P') {
         $mainframe->redirect($link, $msg);
     }
     return $res;
 }
Пример #11
0
$document->addStyleSheet(JURI::root() . "components/com_adagency/includes/css/adag_tip.css");
include_once "components/com_adagency/helpers/geo_fcs.php";
?>
<script language="JavaScript" type="text/javascript" src="<?php 
echo $livesite;
?>
components/com_adagency/js/jscolor.js"></script>
<?php 
include_once JPATH_BASE . "/components/com_adagency/includes/js/floating.php";
include_once JPATH_SITE . "/components/com_adagency/includes/js/floating_geo.php";
?>

<?php 
echo $no_zone;
require_once JPATH_BASE . "/components/com_adagency/helpers/jomsocial.php";
$helper = new JomSocialTargeting();
?>

<form action="index.php" method="post" name="adminForm" id="adminForm" class="form-horizontal">
	
<div class="row-fluid">
   <div class="span12 pull-right">
        <h2 class="pub-page-title">
			<?php 
if (!isset($_row->id)) {
    echo JText::_('ADAG_NEWAD');
} else {
    echo JText::_('ADAG_EDITAD');
}
?>
		</h2>
Пример #12
0
 function store()
 {
     JLoader::import('adagencyads', JPATH_SITE . DS . 'components' . DS . 'com_adagency' . DS . 'models');
     $front_ads_model = JModelLegacy::getInstance('adagencyAds', 'adagencyModel');
     $db = JFactory::getDBO();
     $database = JFactory::getDBO();
     $item = $this->getTable('adagencyAds');
     $data = JRequest::get('post');
     $sendmail = $data['sendmail'];
     $data['key'] = '';
     // Prepare the keywords, trim them
     if (isset($data['keywords']) && $data['keywords'] != '') {
         $data['keywords'] = implode(',', array_map('trim', explode(',', $data['keywords'])));
     }
     if ($data['id'] == 0) {
         $data['created'] = date("Y-m-d");
     } else {
         $current_banner = $this->getAdById($data['id']);
     }
     if (trim($data['ad_start_date']) != "") {
         $data['ad_start_date'] = date("Y-m-d H:i:s", strtotime($data['ad_start_date']));
     } else {
         $data['ad_start_date'] = date("Y-m-d H:i:s");
     }
     if (trim($data['ad_end_date']) != "Never" && trim($data['ad_end_date']) != "") {
         $data['ad_end_date'] = date("Y-m-d H:i:s", strtotime($data['ad_end_date']));
     }
     if (intval($data["id"]) == 0) {
         $sql = "select max(`ordering`) from #__ad_agency_banners";
         $database->setQuery($sql);
         $database->query();
         $max_ordering = $database->loadColumn();
         $max_ordering = $max_ordering["0"];
         $data["ordering"] = $max_ordering + 1;
     }
     $adcode = stripslashes($data['ad_code']);
     $adcodu = stripslashes($_POST["ad_code"]);
     /* remove break lines */
     $adcodu = preg_replace("/\r|\n/", ' ', $adcodu);
     /*allow only one space */
     $adcodu = preg_replace('/\\s+/', ' ', $adcodu);
     /* transfor HREF into href */
     $adcodu = str_replace('HREF', 'href', $adcodu);
     /* cases of href */
     $adcodu = str_replace('href = "', 'href="', $adcodu);
     $adcodu = str_replace('href ="', 'href="', $adcodu);
     $adcodu = str_replace('href= "', 'href="', $adcodu);
     //$adcodu = str_replace('<!--', '<!--'."\n", $adcodu);
     //$adcodu = str_replace('//-->', "\n".'//-->', $adcodu);
     $adcodu = str_replace('s-cript', 'script', $adcodu);
     $content = $adcodu;
     if (!strpos($adcodu, 'ad_url')) {
         $string = 'href="';
         $fisier = $adcodu;
         $pos1 = strpos($fisier, $string);
         $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
         $pos2 = strpos($fisier, '"');
         $url = substr($fisier, 0, $pos2);
         $data['parameters']['linktrack'] = $url;
         $adcodu = preg_replace('/href="(.*?)"/', 'href="ad_url"', $adcodu);
         $content = $adcodu;
     } else {
         $data['parameters']['linktrack'] = $data['linktrack'];
     }
     $data['parameters'] = serialize($data['parameters']);
     if (!$item->bind($data)) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!$item->check()) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!$item->store()) {
         $db = JFactory::getDBO();
         $this->setError($db->getErrorMsg());
         return false;
     }
     $configs = $this->getInstance("adagencyConfig", "adagencyAdminModel");
     $configs = $configs->getConfigs();
     $cids = intval($_POST['id']);
     if (isset($_POST['id']) && $_POST['id'] != 0) {
         $where = $_POST['id'];
     } else {
         $where = mysql_insert_id();
     }
     if ($where == 0) {
         $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
         $db->setQuery($ask);
         $where = $db->loadResult();
     }
     if (isset($where)) {
         $this->store_geo($where);
         require_once JPATH_BASE . '/components/com_adagency/helpers/jomsocial.php';
         $helper = new JomSocialTargeting();
         $helper->save($where);
     }
     if (!$isNew) {
         $sql = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id = '" . intval($where) . "'";
         $qz[] = $sql;
         $db->setQuery($sql);
         $db->query();
     }
     $campLimInfo = $front_ads_model->getCampLimInfo($data['advertiser_id']);
     if (isset($data['adv_cmp'])) {
         foreach ($data['adv_cmp'] as $val) {
             if ($val) {
                 if (strpos(" " . $val, "no") > 0) {
                 } elseif (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences']) {
                     if (isset($data['czones'][$val])) {
                         $query = "INSERT INTO `#__ad_agency_campaign_banner` (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`) VALUES ('" . intval($val) . "', '" . intval($where) . "', '100', NULL, " . intval($data['czones'][$val]) . ");";
                         $qz[] = $query;
                         $db->setQuery($query);
                         $db->query();
                     }
                 }
             }
         }
     }
     $sql = "UPDATE #__ad_agency_banners SET `ad_code` = '" . addslashes($content) . "' WHERE `id`='" . intval($where) . "'";
     $db = JFactory::getDBO();
     $db->setQuery($sql);
     $db->query();
     if ($sendmail && (isset($current_banner) && $current_banner->approved != $data['approved'] && $data['approved'] != 'P')) {
         $this->sendmail($current_banner->id, $data['approved']);
     }
     return true;
 }
Пример #13
0
$advertiser = $this->advt;
if (isset($advertiser->approved) && $advertiser->approved != 'Y') {
    $advertiser_appr = "<div class=\"clearfix\"></div><br/>\n\t\t\t\t\t\t<div id=\"ajax_adv\">\n\t\t\t\t\t\t\t<div id=\"system-message-container\">\n\t\t\t\t\t\t\t\t<div class=\"alert alert-notice\">\n\t\t\t\t\t\t\t\t\t<p>" . JText::_('ADAG_NOT_APPROVED_AD') . "<br /<br />\n\t\t\t\t\t\t\t\t\t\t- <span id='approve_and_email' style='text-decoration:underline; cursor:pointer; color:#005580;'>" . JText::_('ADAG_NOT_APPR_1') . "</span><br />\n\t\t\t\t\t\t\t\t\t\t- <span id='approve_no_email' style='text-decoration:underline; cursor:pointer; color:#005580;'>" . JText::_('ADAG_NOT_APPR_2') . "</span>\n\t\t\t\t\t\t\t\t\t\t<br /><br />\n\t\t\t\t\t\t\t\t\t\t<span class='close_it' style='font-weight:bold; text-decoration: underline; cursor: pointer; color:#005580;' >" . JText::_('ADAG_CLOSE') . "</span>\n\t\t\t\t\t\t\t\t\t\t<input type='hidden' id='advertiser_aid' value='" . $advertiser->aid . "' />\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>";
} else {
    $advertiser_appr = NULL;
}
include_once JPATH_BASE . "/components/com_adagency/includes/js/adm_adcode.php";
$document = JFactory::getDocument();
$document->addStyleSheet('components/com_adagency/css/joomla16.css');
$document->addStyleSheet(JURI::root() . "components/com_adagency/includes/css/adag_tip.css");
include_once "components/com_adagency/helpers/geo_fcs.php";
require_once 'components/com_adagency/helpers/ijPanes.php';
include_once JPATH_SITE . "/components/com_adagency/includes/js/adcode_geo.php";
echo $no_zone;
require_once JPATH_BASE . "/components/com_adagency/helpers/jomsocial.php";
$helperJomSocial = new JomSocialTargeting();
?>

<form action="index.php" method="post" name="adminForm" id="adminForm" class="form-horizontal">
	<div class="row-fluid">
            <div class="span12 pull-right">
            	<h2 class="pub-page-title">
					<?php 
if (!isset($_row->id)) {
    echo JText::_('ADAG_NEWAD');
} else {
    echo JText::_('ADAG_EDITAD');
}
?>
				</h2>
				<a class="modal adagency-video-manager pull-right" rel="{handler: 'iframe', size: {x: 750, y: 435}}" href="index.php?option=com_adagency&controller=adagencyAbout&task=vimeo&id=69673987">
Пример #14
0
    function store()
    {
        $database = JFactory::getDBO();
        $db = JFactory::getDBO();
        $item = $this->getTable('adagencyAds');
        $adsModel = $this->getInstance("adagencyAds", "adagencyModel");
        $notify = JRequest::getInt('id');
        $changed = "new";
        $advid = $this->getCurrentAdvertiser();
        if (isset($advid->aid)) {
            $advid = $advid->aid;
        } else {
            $advid = 0;
        }
        $configs = $this->getInstance("adagencyConfig", "adagencyModel");
        $configs = $configs->getConfigs();
        $data = JRequest::get('post');
        $selected_camps = array();
        if (isset($data['adv_cmp']) && is_array($data['adv_cmp'])) {
            foreach ($data['adv_cmp'] as $key => $val) {
                if ($val) {
                    $selected_camps[] = $val;
                }
            }
        }
        $random_number = rand(1, 100);
        $data['parameters["bg_color"]'] = "FFFFFF";
        $data['parameters["border_color"]'] = "000000";
        if ($data['id'] == 0) {
            $data['created'] = date("Y-m-d");
            $data['key'] = md5(rand(1000, 9999));
            $data['ad_start_date'] = $data['created'];
        } else {
            $data['key'] = NULL;
        }
        $data['parameters']['ad_code'] = JRequest::getVar('transitioncode', '', 'POST', 'string', JREQUEST_ALLOWRAW);
        //JRequest::getVar('transitioncode');
        $adv_cmp = $data['adv_cmp'];
        /*saving transition ad*/
        $crt = 1;
        $string = 'href="';
        $fisier = $data['parameters']['ad_code'];
        $pos1 = strpos($fisier, $string);
        while ($pos1) {
            $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
            $pos2 = strpos($fisier, '"');
            $url = substr($fisier, 0, $pos2);
            $data['parameters']['linktrack'][$crt] = $url;
            $crt++;
            $pos1 = strpos($fisier, $string);
        }
        $html_content = preg_replace("/(href((\\s+)?)=((\\s+)?)\")\\b((http(s?):\\/\\/)|(www\\.)|(ftp:\\/\\/))([\\w\\.]+)([-~\\/\\w+\\.-?\\&\\,\\%\\=]+)\\b/i", "href=\"ad_url", $data['parameters']['ad_code']);
        $closead = "Close Ad";
        $script = <<<EOD
<script type="text/javascript">
function getAbsoluteLeft(objectId) {
\t// Get an object left position from the upper left viewport corner
\t// Tested with relative and nested objects
\to = document.getElementById(objectId);
\toLeft = o.offsetLeft;           // Get left position from the parent object
\twhile(o.offsetParent!=null) {   // Parse the parent hierarchy up to the document element
\t\toParent = o.offsetParent;    // Get parent object reference
\t\toLeft += oParent.offsetLeft; // Add parent left position
\t\to = oParent;
\t}
\t// Return left postion
\treturn oLeft;
}

function getAbsoluteTop(objectId) {
\t// Get an object top position from the upper left viewport corner
\t// Tested with relative and nested objects
\to = document.getElementById(objectId);
\toTop = o.offsetTop;            // Get top position from the parent object
\twhile(o.offsetParent!=null) { // Parse the parent hierarchy up to the document element
\t\toParent = o.offsetParent;  // Get parent object reference
\t\toTop += oParent.offsetTop; // Add parent top position
\t\to = oParent;
\t}
\t// Return top position
\treturn oTop;
}

function leftposition() {
\tvar left=getAbsoluteLeft("floatvert");
\tdocument.getElementById("floatvert").style.left = (-1) * left + "px";
}

function topposition() {
\tvar top = getAbsoluteTop("floatvert");
\tdocument.getElementById("floatvert").style.top = (-1) * top + "px";
}
function initbox(){
document.getElementById("floatvert").style.visibility="visible";
if (!document.all) {
asd = document.getElementById("floatvert");
asd.parentNode.removeChild(asd);
document.body.appendChild(asd); }
leftposition();
topposition();
}
function HideVert(number) {
    //document.getElementById("floatvert").style.visibility="hidden";
\t//document.getElementById("floatvert").parentNode.removeChild(document.getElementById("floatvert"));
\t
\tvar divs = document.getElementsByClassName('floatvert'+number);
\tfor(var i=0; i<divs.length; i++){
\t\tdivs[i].parentNode.removeChild(divs[i]);
\t}
}
var screenWidth = screen.width;
var screenHeight = screen.height;
</script>
<div id="floatvert" class="floatvert{$random_number}" style="z-index:1000;position:absolute;top:1px;left:1px;visibility:hidden; background-color: #{$data['parameters["bg_color"]']}; border-color: #{$data['parameters["border_color"]']};">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" id="continut2">
<tr>
\t<td bordercolor="{$data['parameters["border_color"]']}" bgcolor="{$data['parameters["bg_color"]']}" align="{$data['parameters["align"]']}" id="containing_td" valign="{$data['parameters["valign"]']}">

\t\t<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" id="continut3">
\t\t<tr>
\t\t\t<td align="left" valign="top">
\t\t\t\t<table border="{$data['parameters["border"]']}" cellpadding="5" cellspacing="0" style="border-collapse: collapse" id="continut4" >
\t\t\t\t<tr>
\t\t\t\t\t<td align="left">
\t\t\t\t\t\t<a href="" onClick="HideVert({$random_number});return false;">{$closead}</a>
\t\t\t\t\t</td>
\t\t\t\t</tr>
\t\t\t\t<tr>
\t\t\t\t\t<td id="continut" class="continut" valign="top" >

\t\t\t\t\t{$html_content}

\t\t\t\t        </td>
\t\t\t\t</tr>
\t\t\t\t</table>
\t\t\t</td>
\t\t</tr>
\t\t</table>
\t</td>
</tr>

</table>
<script type="text/javascript">
initbox();
var divs = document.getElementsByClassName('continut');
for(var i=0; i<divs.length; i++){
\tdivs[i].width = screen.width;
\tdivs[i].height = screen.height;
}

/*document.getElementById("continut").width = screen.width;
document.getElementById("continut").height = screen.height;

document.getElementById("continut2").width = screen.width;
document.getElementById("continut2").height = screen.height;
document.getElementById("continut3").width = screen.width;
document.getElementById("continut3").height = screen.height;
document.getElementById("continut4").width = screen.width;
document.getElementById("continut4").height = screen.height;*/
</script>
</div>
EOD;
        $adcodu = $script;
        $the_code = $data['parameters']['ad_code'];
        $data['parameters'] = serialize($data['parameters']);
        // Check settings for auto-approve ads [begin]
        $advertiser = $this->getCurrentAdvertiser();
        if (isset($advertiser->apr_ads) && $advertiser->apr_ads != 'G') {
            $approved = $advertiser->apr_ads;
        } else {
            $sql = "SHOW COLUMNS FROM `#__ad_agency_banners` WHERE field = 'approved'";
            $db->setQuery($sql);
            $res = $db->loadObject();
            $approved = $res->Default;
        }
        if ($approved == 'N') {
            $approved = 'P';
        }
        $data['approved'] = $approved;
        // if the ad is not new then ->
        if (isset($data['id']) && $data['id'] > 0) {
            $ex_ad = $this->getAdById($data['id']);
            $ex_ad->parameters = @unserialize($ex_ad->parameters);
            // if the ad was approved or declined and the new status would be 'pending', make sure changes occured to it!
            if ($ex_ad->approved != 'P' && $data['approved'] == 'P') {
                // if no change has been made, let the status be as it was
                if ($ex_ad->title == $data['title'] && $ex_ad->description == $data['description'] && $ex_ad->parameters['ad_code'] == $the_code) {
                    $data['approved'] = $ex_ad->approved;
                } else {
                    //it was changed, and sent email to administrator
                    $notify = "0";
                    $changed = "changed";
                }
            }
        }
        // Check settings for auto-approve ads [end]
        $parameters = $data["parameters"];
        $parameters = unserialize($parameters);
        if (!isset($parameters["target_window"])) {
            $parameters["target_window"] = "_blank";
            $data["parameters"] = serialize($parameters);
        }
        if (!$item->bind($data)) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->check()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (!$item->store()) {
            $this->setError($item->getErrorMsg());
            return false;
        }
        if (isset($notify) && $notify != 0) {
            $where = $notify;
        } else {
            $where = mysql_insert_id();
        }
        if ($where == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $where = $db->loadResult();
        }
        if (!isset($data['id']) || $data['id'] == 0) {
            $data['id'] = mysql_insert_id();
        }
        $idi = $data['id'];
        if ($idi == 0) {
            $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
            $db->setQuery($ask);
            $idi = $db->loadResult();
        }
        if (isset($idi)) {
            $this->store_geo($idi);
        }
        require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
        JomSocialTargeting::save($idi);
        $query = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id=" . intval($idi);
        $db->setQuery($query);
        $db->query();
        $campLimInfo = $adsModel->getCampLimInfo();
        //      echo "<pre>";var_dump($campLimInfo);die();
        if (isset($selected_camps)) {
            foreach ($selected_camps as $val) {
                if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                    $query = "INSERT INTO `#__ad_agency_campaign_banner`\n                                (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`)\n                                VALUES\n                                ('" . intval($val) . "', '" . intval($idi) . "', '100', NULL, " . intval($data['czones'][$val]) . ");";
                    //$query = "INSERT INTO #__ad_agency_campaign_banner VALUES ({$val},{$idi},100)";
                    $db->setQuery($query);
                    $db->query();
                }
            }
        }
        //die();
        $sql = "UPDATE #__ad_agency_banners SET `ad_code` = '" . addslashes(trim($adcodu)) . "' WHERE `id`='" . intval($where) . "'";
        $db->setQuery($sql);
        $db->query();
        // Send email to administrator
        if ($notify == '0') {
            $sql = "SELECT a.user_id, a.company, a.telephone as phone, u.name, u.username, u.email FROM #__ad_agency_advertis AS a LEFT OUTER JOIN #__users as u on u.id=a.user_id\tWHERE a.aid=" . intval($advid) . " GROUP BY a.aid";
            $db->setQuery($sql);
            $user = $db->loadObject();
            if (isset($user) && $user != NULL) {
                $sql = "select `params` from #__ad_agency_settings";
                $db->setQuery($sql);
                $db->query();
                $email_params = $db->loadColumn();
                $email_params = @$email_params["0"];
                $email_params = unserialize($email_params);
                $ok_send_email = 0;
                $subject = "";
                $message = "";
                if ($changed == "new") {
                    $subject = $configs->sbnewad;
                    $message = $configs->bodynewad;
                    $ok_send_email = $email_params["send_ban_added"];
                } else {
                    $subject = $configs->sbadchanged;
                    $message = $configs->boadchanged;
                    $ok_send_email = $email_params["send_ad_modified"];
                }
                if (!isset($user->company) || $user->company == "") {
                    $user->company = "N/A";
                }
                if (!isset($user->phone) || $user->phone == "") {
                    $user->phone = "N/A";
                }
                $current_ad = $this->getAdById($where);
                if (isset($current_ad->approved) && $current_ad->approved == "Y") {
                    $status = JText::_("NEWADAPPROVED");
                } else {
                    $status = JText::_("ADAG_PENDING");
                }
                $epreview = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&no_html=1&adid=" . $where . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&adid=" . $where . "</a>";
                $eapprove = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $where . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $where . "&key=" . $data['key'] . "</a>";
                $edecline = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $where . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $where . "&key=" . $data['key'] . "</a>";
                $subject = str_replace('{name}', $user->name, $subject);
                $subject = str_replace('{login}', $user->username, $subject);
                $subject = str_replace('{email}', $user->email, $subject);
                $subject = str_replace('{banner}', $data['title'], $subject);
                $subject = str_replace('{company}', $user->company, $subject);
                $subject = str_replace('{phone}', $user->phone, $subject);
                $subject = str_replace('{approval_status}', $status, $subject);
                $subject = str_replace('{banner_preview_url}', $epreview, $subject);
                $subject = str_replace('{approve_banner_url}', $eapprove, $subject);
                $subject = str_replace('{decline_banner_url}', $edecline, $subject);
                $message = str_replace('{name}', $user->name, $message);
                $message = str_replace('{login}', $user->username, $message);
                $message = str_replace('{email}', $user->email, $message);
                $message = str_replace('{banner}', $data['title'], $message);
                $message = str_replace('{company}', $user->company, $message);
                $message = str_replace('{phone}', $user->phone, $message);
                $message = str_replace('{approval_status}', $status, $message);
                $message = str_replace('{banner_preview_url}', $epreview, $message);
                $message = str_replace('{approve_banner_url}', $eapprove, $message);
                $message = str_replace('{decline_banner_url}', $edecline, $message);
                if ($ok_send_email == 1) {
                    JFactory::getMailer()->sendMail($configs->fromemail, $configs->fromname, $configs->adminemail, $subject, $message, 1);
                }
            }
        }
        // END - Send email to administrator
        $sql = "SELECT approved FROM #__ad_agency_banners WHERE id = " . intval($idi);
        $db->setQuery($sql);
        $approved = $db->loadResult();
        $isWizzard = $this->isWizzard();
        $item_id = JRequest::getInt('Itemid', '0', 'post');
        if ($item_id != 0) {
            $Itemid = "&Itemid=" . intval($item_id);
        } else {
            $Itemid = NULL;
        }
        $link = "index.php?option=com_adagency&controller=adagencyAds&p=1" . $Itemid;
        $msg = JText::_('AD_BANNERSAVED');
        global $mainframe;
        if ($isWizzard && $approved == 'P') {
            $mainframe->redirect($link, $msg);
        }
        return true;
    }
Пример #15
0
    }
    ?>
" >
                    <br/>
                    <span class="ad_small_text">
                    	<?php 
    echo JText::_("ADAG_ENTER_KEYWORDS");
    ?>
                    </span>
                </div>
            </div>
	<?php 
}
output_geoform($advertiser_id);
require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
JomSocialTargeting::render_front($_row->id);
?>
    
    <?php 
if (isset($camps) && count($camps) > 0) {
    $i = 0;
    ?>
			<div class="control-group">
				<div>
					<span class="agency_subtitle"><?php 
    echo JText::_('ADD_NEWADCMPS');
    ?>
</span>
				</div>
			</div>
	<?php 
Пример #16
0
 function store()
 {
     JLoader::import('adagencyads', JPATH_SITE . DS . 'components' . DS . 'com_adagency' . DS . 'models');
     $front_ads_model = JModelLegacy::getInstance('AdagencyAds', 'AdagencyModel');
     $item = $this->getTable('adagencyAds');
     $database = JFactory::getDBO();
     $data = JRequest::get('post');
     $sendmail = $data['sendmail'];
     $data['key'] = '';
     $isNew = false;
     if ($data['id'] == 0) {
         $data['created'] = date("Y-m-d");
         $isNew = true;
     } else {
         $current_banner = $this->getAdById($data['id']);
     }
     // Prepare the keywords, trim them
     if (isset($data['keywords']) && $data['keywords'] != '') {
         $data['keywords'] = implode(',', array_map('trim', explode(',', $data['keywords'])));
     }
     $data['parameters'] = @serialize($data['parameters']);
     if (trim($data['ad_start_date']) != "") {
         $data['ad_start_date'] = date("Y-m-d H:i:s", strtotime($data['ad_start_date']));
     } else {
         $data['ad_start_date'] = date("Y-m-d H:i:s");
     }
     if (trim($data['ad_end_date']) != "Never" && trim($data['ad_end_date']) != "") {
         $data['ad_end_date'] = date("Y-m-d H:i:s", strtotime($data['ad_end_date']));
     }
     if (intval($data["id"]) == 0) {
         $sql = "select max(`ordering`) from #__ad_agency_banners";
         $database->setQuery($sql);
         $database->query();
         $max_ordering = $database->loadColumn();
         $max_ordering = $max_ordering["0"];
         $data["ordering"] = $max_ordering + 1;
     }
     if (!$item->bind($data)) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!$item->check()) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!$item->store()) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     $configs = $this->getInstance("adagencyConfig", "adagencyAdminModel");
     $configs = $configs->getConfigs();
     $cids = intval($data['id']);
     $db = JFactory::getDBO();
     if (!isset($data['id']) || $data['id'] == 0) {
         $data['id'] = mysql_insert_id();
     }
     $idi = $data['id'];
     if ($idi == 0) {
         $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
         $db->setQuery($ask);
         $idi = $db->loadResult();
     }
     if (isset($idi)) {
         $this->store_geo($idi);
         require_once JPATH_BASE . '/components/com_adagency/helpers/jomsocial.php';
         $helper = new JomSocialTargeting();
         $helper->save($idi);
     }
     $sql = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id = '" . intval($idi) . "'";
     $db->setQuery($sql);
     $db->query();
     $campLimInfo = $front_ads_model->getCampLimInfo($data['advertiser_id']);
     if (isset($data['adv_cmp'])) {
         foreach ($data['adv_cmp'] as $val) {
             if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                 if (isset($data['czones'][$val])) {
                     $query = "INSERT INTO `#__ad_agency_campaign_banner` (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`) VALUES ('" . intval($val) . "', '" . intval($idi) . "', '100', NULL, " . $data['czones'][$val] . ");";
                     $db->setQuery($query);
                     $db->query();
                 }
             }
         }
     }
     if ($sendmail && (isset($current_banner) && $current_banner->approved != $data['approved'] && $data['approved'] != 'P')) {
         $this->sendmail($current_banner->id, $data['approved']);
     }
     return true;
 }
Пример #17
0
 function store()
 {
     $db = JFactory::getDBO();
     $database = JFactory::getDBO();
     $adsModel = $this->getInstance("adagencyAds", "adagencyModel");
     $configs = $this->getInstance("adagencyConfig", "adagencyModel");
     $configs = $configs->getConfigs();
     $item = $this->getTable('adagencyAds');
     $data = JRequest::get('post');
     $item_id = JRequest::getInt('Itemid', '0', 'post');
     if ($item_id != 0) {
         $Itemid = "&Itemid=" . intval($item_id);
     } else {
         $Itemid = NULL;
     }
     if ($data['id'] == 0) {
         $data['created'] = date("Y-m-d");
         $data['key'] = md5(rand(1000, 9999));
         $data['ad_start_date'] = $data['created'];
     } else {
         $data['key'] = NULL;
     }
     $post_id = JRequest::getInt('id');
     $notify = $post_id;
     $changed = "new";
     $advid = $this->getCurrentAdvertiser();
     if (isset($advid->aid)) {
         $advid = $advid->aid;
     } else {
         $advid = 0;
     }
     $adcode = JRequest::getVar('ad_code', '', 'POST', 'string', JREQUEST_ALLOWRAW);
     $adcodu = stripslashes($adcode);
     /* remove break lines */
     $adcodu = preg_replace("/\r|\n/", ' ', $adcodu);
     /*allow only one space */
     $adcodu = preg_replace('/\\s+/', ' ', $adcodu);
     /* transfor HREF into href */
     $adcodu = str_replace('HREF', 'href', $adcodu);
     /* cases of href */
     $adcodu = str_replace('href = "', 'href="', $adcodu);
     $adcodu = str_replace('href ="', 'href="', $adcodu);
     $adcodu = str_replace('href= "', 'href="', $adcodu);
     $adcodu = str_replace('<!--', '<!--' . "\n", $adcodu);
     $adcodu = str_replace('//-->', "\n" . '//-->', $adcodu);
     $adcodu = str_replace('s-cript', 'script', $adcodu);
     $content = $adcodu;
     $string = 'href="';
     $fisier = $adcodu;
     $pos1 = strpos($fisier, $string);
     $fisier = substr($fisier, $pos1 + strlen($string), strlen($fisier));
     $pos2 = strpos($fisier, '"');
     $url = substr($fisier, 0, $pos2);
     $data['parameters']['linktrack'] = $url;
     $adcodu = preg_replace('/href="(.*?)"/', 'href="ad_url"', $adcodu);
     $content = $adcodu;
     $data['parameters'] = serialize($data['parameters']);
     // Check settings for auto-approve ads [begin]
     $advertiser = $this->getCurrentAdvertiser();
     if (isset($advertiser->apr_ads) && $advertiser->apr_ads != 'G') {
         $approved = $advertiser->apr_ads;
     } else {
         $sql = "SHOW COLUMNS FROM `#__ad_agency_banners` WHERE field = 'approved'";
         $db->setQuery($sql);
         $res = $db->loadObject();
         $approved = $res->Default;
     }
     if ($approved == 'N') {
         $approved = 'P';
     }
     $data['approved'] = $approved;
     // if the ad is not new then ->
     if (isset($data['id']) && $data['id'] > 0) {
         $ex_ad = $this->getAdById($data['id']);
         // if the ad was approved or declined and the new status would be 'pending', make sure changes occured to it!
         if ($ex_ad->approved != 'P' && $data['approved'] == 'P') {
             // if no change has been made, let the status be as it was
             if ($ex_ad->title == $data['title'] && $ex_ad->description == $data['description'] && $ex_ad->ad_code == $content && $ex_ad->width == $data['width'] && $ex_ad->height == $data['height']) {
                 $data['approved'] = $ex_ad->approved;
             } else {
                 //it was changed, and sent email to administrator
                 $notify = "0";
                 $changed = "changed";
             }
         }
     }
     // Check settings for auto-approve ads [end]
     $parameters = $data["parameters"];
     $parameters = unserialize($parameters);
     if (!isset($parameters["target_window"])) {
         $parameters["target_window"] = "_blank";
         $data["parameters"] = serialize($parameters);
     }
     if (!$item->bind($data)) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!$item->check()) {
         $this->setError($item->getErrorMsg());
         return false;
     }
     if (!$item->store()) {
         $db =& JFactory::getDBO();
         $this->setError($db->getErrorMsg());
         return false;
     }
     if (isset($post_id) && $post_id) {
         $where = $post_id;
     } else {
         $where = mysql_insert_id();
     }
     if ($where == 0) {
         $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
         $db->setQuery($ask);
         $where = $db->loadResult();
     }
     if (!isset($data['id']) || $data['id'] == 0) {
         $data['id'] = mysql_insert_id();
     }
     $idi = $data['id'];
     if ($idi == 0) {
         $ask = "SELECT `id` FROM `#__ad_agency_banners` ORDER BY `id` DESC LIMIT 1 ";
         $db->setQuery($ask);
         $idi = $db->loadResult();
     }
     if (isset($idi)) {
         $this->store_geo($idi);
     }
     require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
     JomSocialTargeting::save($idi);
     $query = "DELETE FROM #__ad_agency_campaign_banner WHERE banner_id=" . intval($idi);
     $db->setQuery($query);
     $db->query();
     $campLimInfo = $adsModel->getCampLimInfo();
     if (isset($data['adv_cmp'])) {
         foreach ($data['adv_cmp'] as $val) {
             if (strstr($val, "|yes|")) {
                 $yes_no = 1;
             } else {
                 $yes_no = 0;
             }
             $val = str_replace("|yes|", "", $val);
             $val = str_replace("|no|", "", $val);
             if ($val && (!isset($campLimInfo[$val]) || $campLimInfo[$val]['adslim'] > $campLimInfo[$val]['occurences'])) {
                 $query = "INSERT INTO `#__ad_agency_campaign_banner` (`campaign_id` ,`banner_id` ,`relative_weighting` ,`thumb`, `zone`) VALUES ('" . intval($val) . "', '" . intval($idi) . "', '100', NULL, " . intval(trim($data['czones'][$val])) . ");";
                 $db->setQuery($query);
                 $db->query();
             }
         }
     }
     $sql = "UPDATE #__ad_agency_banners SET `ad_code` = '" . addslashes($content) . "' WHERE `id`='" . intval($where) . "'";
     $db->setQuery($sql);
     $db->query();
     // Send email to administrator
     if ($notify == '0') {
         $sql = "SELECT a.user_id, a.company, a.telephone as phone, u.name, u.username, u.email FROM #__ad_agency_advertis AS a LEFT OUTER JOIN #__users as u on u.id=a.user_id\tWHERE a.aid=" . intval($advid) . " GROUP BY a.aid";
         $db->setQuery($sql);
         $user = $db->loadObject();
         if (isset($user) && $user != NULL) {
             $sql = "select `params` from #__ad_agency_settings";
             $db->setQuery($sql);
             $db->query();
             $email_params = $db->loadColumn();
             $email_params = @$email_params["0"];
             $email_params = unserialize($email_params);
             $ok_send_email = 0;
             $subject = "";
             $message = "";
             if ($changed == "new") {
                 $subject = $configs->sbnewad;
                 $message = $configs->bodynewad;
                 $ok_send_email = $email_params["send_ban_added"];
             } else {
                 $subject = $configs->sbadchanged;
                 $message = $configs->boadchanged;
                 $ok_send_email = $email_params["send_ad_modified"];
             }
             if (!isset($user->company) || $user->company == "") {
                 $user->company = "N/A";
             }
             if (!isset($user->phone) || $user->phone == "") {
                 $user->phone = "N/A";
             }
             $current_ad = $this->getAdById($where);
             if (isset($current_ad->approved) && $current_ad->approved == "Y") {
                 $status = JText::_("NEWADAPPROVED");
             } else {
                 $status = JText::_("ADAG_PENDING");
             }
             $epreview = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&no_html=1&adid=" . $where . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=preview&tmpl=component&adid=" . $where . "</a>";
             $eapprove = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $where . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=approve&cid=" . $where . "&key=" . $data['key'] . "</a>";
             $edecline = "<a href='" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $where . "&key=" . $data['key'] . "' target='_blank'>" . JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=manage&action=decline&cid=" . $where . "&key=" . $data['key'] . "</a>";
             $subject = str_replace('{name}', $user->name, $subject);
             $subject = str_replace('{login}', $user->username, $subject);
             $subject = str_replace('{email}', $user->email, $subject);
             $subject = str_replace('{banner}', $data['title'], $subject);
             $subject = str_replace('{company}', $user->company, $subject);
             $subject = str_replace('{phone}', $user->phone, $subject);
             $subject = str_replace('{approval_status}', $status, $subject);
             $subject = str_replace('{banner_preview_url}', $epreview, $subject);
             $subject = str_replace('{approve_banner_url}', $eapprove, $subject);
             $subject = str_replace('{decline_banner_url}', $edecline, $subject);
             $message = str_replace('{name}', $user->name, $message);
             $message = str_replace('{login}', $user->username, $message);
             $message = str_replace('{email}', $user->email, $message);
             $message = str_replace('{banner}', $data['title'], $message);
             $message = str_replace('{company}', $user->company, $message);
             $message = str_replace('{phone}', $user->phone, $message);
             $message = str_replace('{approval_status}', $status, $message);
             $message = str_replace('{banner_preview_url}', $epreview, $message);
             $message = str_replace('{approve_banner_url}', $eapprove, $message);
             $message = str_replace('{decline_banner_url}', $edecline, $message);
             if ($ok_send_email == 1) {
                 JFactory::getMailer()->sendMail($configs->fromemail, $configs->fromname, $configs->adminemail, $subject, $message, 1);
             }
         }
     }
     $sql = "SELECT approved FROM #__ad_agency_banners WHERE id = " . intval($idi);
     $db->setQuery($sql);
     $approved = $db->loadResult();
     $isWizzard = $this->isWizzard();
     $link = "index.php?option=com_adagency&controller=adagencyAds&p=1" . $Itemid;
     $msg = JText::_('AD_BANNERSAVED');
     global $mainframe;
     if ($isWizzard && $approved == 'P') {
         $mainframe->redirect($link, $msg);
     }
     // END - Send email to administrator
     return true;
 }
Пример #18
0
 function getJomsocialAds()
 {
     $db = JFactory::getDBO();
     $sql = "select c.`id` as campaign_id, c.`aid` as advertiser_id, c.`name` as campaign_name, c.`type` as campaign_type, c.`quantity` as campaign_quantity, c.`validity` as campaign_validity, c.`otid` as package_id, c.`approved` as campaign_approved, c.`status` as campaign_status, b.`id` as banner_id, b.`title` as banner_name, b.`image_url` as banner_avatar, b.`target_url` as url_to_promote, b.`image_content` as banner_image_content, b.`ad_headline` as banner_headline, b.`ad_text` as banner_text, b.`channel_id` as channel_id\n\t\t\t\tfrom #__ad_agency_campaign c, #__ad_agency_order_type ot, #__ad_agency_campaign_banner cb, #__ad_agency_banners b\n\t\t\t\twhere c.`otid`=ot.`tid` and\n\t\t\t\t\t  c.`start_date` <= now() and\n\t\t\t\t\t  c.`approved`='Y' and\n\t\t\t\t\t  c.`status`='1' and \n\t\t\t\t\t  c.`id`=cb.`campaign_id` and\n\t\t\t\t\t  cb.`banner_id`=b.`id` and\n\t\t\t\t\t  b.`media_type`='Jomsocial' and \n\t\t\t\t\t  b.`approved`='Y'";
     $db->setQuery($sql);
     $db->query();
     $result = $db->loadAssocList();
     $jomsocial_ads_settings = $this->getJomsocialAdSettings();
     $sql = "SELECT * FROM #__ad_agency_settings LIMIT 1";
     $db->setQuery($sql);
     $db->query();
     $globalSettings = $db->loadObject();
     if (isset($result) && count($result) > 0) {
         $temp = array();
         $ad_ids = array();
         foreach ($result as $key => $value) {
             if ($jomsocial_ads_settings["js_ad_location"] == "geolocation") {
                 // check geo location
                 require_once JPATH_SITE . "/components/com_adagency/helpers/stats_count.php";
                 require_once JPATH_SITE . "/administrator/components/com_adagency/helpers/jomsocial.php";
                 $jomSocial = new JomSocialTargeting();
                 $sql = "SELECT `channel_id` AS id, `type`, `logical`, `option`, `data` FROM #__ad_agency_channel_set WHERE channel_id=" . intval($value["channel_id"]) . " ORDER BY id ASC";
                 $db->setQuery($sql);
                 $loaded_channels = $db->loadObjectList();
                 // start check add visibility ---------------------------------------
                 $logged_user = JFactory::getUser();
                 if (intval($logged_user->id) > 0) {
                     if ($jomSocial->exists()) {
                         if (!$jomSocial->visible($value["banner_id"])) {
                             continue;
                         }
                     }
                 }
                 // stop check add visibility ----------------------------------------
                 // start check add geo location -------------------------------------
                 if ($value["channel_id"] != NULL && intval($value["channel_id"]) > 0) {
                     if (!geo(loadChannelById(intval($value["channel_id"]), $loaded_channels), $globalSettings->cityloc)) {
                         continue;
                     }
                 }
                 // stop check add geo location -------------------------------------
             }
             $value["ad_new_ad_language"] = JText::_("ADAG_CREATE_AN_AD");
             if ($value["campaign_type"] == "cpm" || $value["campaign_type"] == "pc") {
                 if ($value["campaign_quantity"] > 0) {
                     if (!in_array($value["banner_id"], $ad_ids)) {
                         if (trim($value["banner_avatar"]) != "") {
                             $value["banner_avatar"] = JURI::root() . "images/stories/ad_agency/" . intval($value["advertiser_id"]) . "/" . $value["banner_avatar"];
                         } else {
                             $value["banner_avatar"] = JURI::root() . "components/com_adagency/images/default_js_ad_avatar.png";
                         }
                         if (trim($value["banner_image_content"]) != "") {
                             $value["banner_image_content"] = JURI::root() . "images/stories/ad_agency/" . intval($value["advertiser_id"]) . "/" . $value["banner_image_content"];
                         }
                         $value["on_click_url"] = JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=click&cid=" . intval($value["campaign_id"]) . "&bid=" . intval($value["banner_id"]) . "&aid=" . intval($value["advertiser_id"]);
                         $url_to_promote = $value["url_to_promote"];
                         $url_parsed = parse_url($url_to_promote);
                         $value["short_url_to_promote"] = $url_parsed["host"];
                         $temp[] = $value;
                         $ad_ids[] = $value["banner_id"];
                     }
                 }
             } elseif ($value["campaign_type"] == "fr" || $value["campaign_type"] == "in") {
                 if (strtotime($value["campaign_validity"]) >= strtotime(date("Y-m-d") . " 23:59:59")) {
                     if (!in_array($value["banner_id"], $ad_ids)) {
                         if (trim($value["banner_avatar"]) != "") {
                             $value["banner_avatar"] = JURI::root() . "images/stories/ad_agency/" . intval($value["advertiser_id"]) . "/" . $value["banner_avatar"];
                         } else {
                             $value["banner_avatar"] = JURI::root() . "components/com_adagency/images/default_js_ad_avatar.png";
                         }
                         if (trim($value["banner_image_content"]) != "") {
                             $value["banner_image_content"] = JURI::root() . "images/stories/ad_agency/" . intval($value["advertiser_id"]) . "/" . $value["banner_image_content"];
                         }
                         $value["on_click_url"] = JURI::root() . "index.php?option=com_adagency&controller=adagencyAds&task=click&cid=" . intval($value["campaign_id"]) . "&bid=" . intval($value["banner_id"]) . "&aid=" . intval($value["advertiser_id"]);
                         $url_to_promote = $value["url_to_promote"];
                         $url_parsed = parse_url($url_to_promote);
                         $value["short_url_to_promote"] = $url_parsed["host"];
                         $temp[] = $value;
                         $ad_ids[] = $value["banner_id"];
                     }
                 }
             }
         }
         $result = $temp;
     }
     return $result;
 }
Пример #19
0
echo JText::_('NEWADADCODEMSG');
?>
</legend>
    <div class="uk-form-row">
      <label for="" class="uk-form-label"></label>
      <div class="uk-form-controls">
        <?php 
echo $editor1->display('transitioncode', '' . stripslashes($_row->parameters['ad_code']), '100%', '300px', '20', '60', false);
?>
      </div>
    </div>

    <?php 
output_geoform($advertiser_id);
require_once JPATH_BASE . "/administrator/components/com_adagency/helpers/jomsocial.php";
$jomsocial = new JomSocialTargeting();
$jomsocial->render_front($_row->id);
if (isset($camps) && count($camps) > 0) {
    $i = 0;
    ?>

    <legend class="uk-margin-large-top"><?php 
    echo JText::_('ADD_NEWADCMPS');
    ?>
</legend>
    <table class="uk-table">
      <thead>
        <th></th>
        <th><?php 
    echo JText::_("CONFIGCMP");
    ?>
Пример #20
0
 function display($tpl = null)
 {
     $db = JFactory::getDBO();
     $configs = $this->get('Configs');
     $configs->params = @unserialize($configs->params);
     $configs->payment = @unserialize($configs->payment);
     require_once JPATH_COMPONENT . DS . 'helpers' . DS . 'sajax.php';
     JToolBarHelper::title(JText::_('Settings'));
     $task2 = JRequest::getVar("task2", "");
     if ($task2 != "" && $task2 != "content" && $task2 != "payments" && $task2 != "email" && $task2 != "overview" && $task2 != "registration" && $task2 != "approvals" && $task2 != "jomsocial") {
         JToolBarHelper::apply('apply', 'Apply');
         JToolBarHelper::save();
     }
     JToolBarHelper::cancel('cancel', 'Cancel');
     global $mainframe;
     $agmailfrom = $mainframe->getCfg('mailfrom');
     $agfromname = $mainframe->getCfg('fromname');
     $agfromemail = $mainframe->getCfg('fromemail');
     $arr[] = JHTML::_('select.option', 999, JText::_('ADAG_UNLIMITED'));
     for ($i = 1; $i <= 100; $i++) {
         $arr[] = JHTML::_('select.option', $i, $i);
     }
     isset($configs->params['adslim']) ? $selected = $configs->params['adslim'] : ($selected = NULL);
     $adslim = JHTML::_('select.genericlist', $arr, 'params[adslim]', '', 'value', 'text', $selected);
     if (isset($configs->show)) {
         $show = explode(";", $configs->show);
     } else {
         $show = NULL;
     }
     if (isset($configs->mandatory)) {
         $mandatory = explode(";", $configs->mandatory);
     } else {
         $mandatory = NULL;
     }
     if (count($show) >= 2) {
         unset($show[count($show) - 1]);
     }
     if (count($mandatory) >= 2) {
         unset($mandatory[count($mandatory) - 1]);
     }
     $configs->show = $show;
     $configs->mandatory = $mandatory;
     if (!isset($configs->params['click_limit'])) {
         $configs->params['click_limit'] = "10";
     }
     if (!isset($configs->params['jquery_front'])) {
         $configs->params['jquery_front'] = "0";
     }
     if (!isset($configs->params['jquery_back'])) {
         $configs->params['jquery_back'] = "0";
     }
     $this->assign("configs", $configs);
     $this->assign("agmailfrom", $agmailfrom);
     $this->assign("agfromname", $agfromname);
     $this->assign("agfromemail", $agfromemail);
     $data = JRequest::get('get');
     if (isset($data['task2'])) {
         if ($data['task2'] == 'general') {
             $startOffset = 0;
         } elseif ($data['task2'] == 'payments') {
             $startOffset = 1;
         } elseif ($data['task2'] == 'email') {
             $startOffset = 2;
         } elseif ($data['task2'] == 'content') {
             $startOffset = 3;
         } elseif ($data['task2'] == 'overview') {
             $startOffset = 4;
         } elseif ($data['task2'] == 'registration') {
             $startOffset = 5;
         } elseif ($data['task2'] == 'approvals') {
             $startOffset = 6;
         } elseif ($data['task2'] == 'jomsocial') {
             $startOffset = 7;
         }
     } else {
         $startOffset = 0;
     }
     $this->assign("startOffset", $startOffset);
     $agmailfrom = str_replace("'", "''", $agmailfrom);
     $agfromname = str_replace("'", "''", $agfromname);
     $agfromemail = str_replace("'", "''", $agfromemail);
     if ($configs->adminemail == "") {
         $query = "UPDATE #__ad_agency_settings SET `adminemail` = '" . $agmailfrom . "'";
         $db->setQuery($query);
         if (!$db->query()) {
             die($db->stderr());
         }
     }
     if ($configs->fromemail == "") {
         $query = "UPDATE #__ad_agency_settings SET `fromemail` = '" . $agmailfrom . "'";
         $db->setQuery($query);
         if (!$db->query()) {
             die($db->stderr());
         }
     }
     if ($configs->fromname == "") {
         $query = "UPDATE #__ad_agency_settings SET `fromname` = '" . $agfromname . "'";
         $db->setQuery($query);
         if (!$db->query()) {
             die($db->stderr());
         }
     }
     $respathfe = JPATH_ROOT . DS . "language" . DS . "en-GB" . DS . "en-GB.com_adagency.ini";
     $respathbe = JPATH_ROOT . DS . "administrator" . DS . "language" . DS . "en-GB" . DS . "en-GB.com_adagency.ini";
     $langfe = implode("", file($respathfe));
     $langbe = implode("", file($respathbe));
     $this->assign("langfe", $langfe);
     $this->assign("langbe", $langbe);
     $configs = $this->_models['adagencyconfig']->getConfigs();
     //var_dump($configs);die();
     $database = JFactory::getDBO();
     $query = "select distinct (currency_name), currency_full from #__ad_agency_currencies";
     $database->setQuery($query);
     $currs = $database->loadObjectList();
     $query = "select distinct (plugname) from #__ad_agency_currencies as dc, #__ad_agency_plugins as dp where dp.published=1 and dp.name=dc.plugname";
     $database->setQuery($query);
     $normal_plugs = $database->loadObjectList();
     $default_currency = $configs->currencydef;
     $plugs = array();
     $currency_list = '<select disabled="disabled" name="currencydef">';
     foreach ($currs as $i => $v) {
         $query = "select dc.plugname from #__ad_agency_currencies as dc, #__ad_agency_plugins as dp where dc.currency_name='" . $v->currency_name . "' and dp.published=1 and dp.name=dc.plugname";
         $database->setQuery($query);
         $plugs[$v->currency_name][] = $database->loadObjectList();
         $currency_list .= '<option  value="' . $v->currency_name . '" ';
         if ($v->currency_name == $default_currency) {
             $currency_list .= 'selected';
         }
         $currency_list .= '>' . $v->currency_full . '</option>';
     }
     $currency_list .= '</select>';
     $query = "select name from #__ad_agency_plugins where `def`='default'";
     $database->setQuery($query);
     $defaultplug = $database->loadResult();
     $this->assign('currency_list', $currency_list);
     $approvals = $this->_models['adagencyconfig']->getApprovals();
     $plugin_data = $this->_models['adagencyplugin']->BackPluginHandler();
     $isJomSocialStreamAd = $this->_models['adagencyconfig']->isJomSocialStreamAd();
     $isJomSocial = $this->_models['adagencyconfig']->isJomSocial();
     if ($isJomSocial) {
         require_once JPATH_BASE . "/components/com_adagency/helpers/jomsocial.php";
         $helperJomSocial = new JomSocialTargeting();
         $jomFields = $helperJomSocial->getFields();
         $jomFields = $helperJomSocial->getOptsParents($jomFields);
     } else {
         $jomFields = NULL;
     }
     $this->assign('isJomSocialStreamAd', $isJomSocialStreamAd);
     $this->assign('isJomSocial', $isJomSocial);
     $this->assign('jomFields', $jomFields);
     $this->assign('adslim', $adslim);
     $this->assign('approvals', $approvals);
     $this->assign('plugin_data', $plugin_data);
     $this->assign('plugs', $plugs);
     $this->assign('default_currency', $default_currency);
     $this->assign('normal_plugs', $normal_plugs);
     $this->assign('defaultplug', $defaultplug);
     parent::display($tpl);
 }