I Need away to show two per page, and have a pagination at the bottom of the page.
Here is how I am currently doing it.
As you can see we dont do any pagination at the moment.
PHP code which returns the JSON data
public function realcashoffers($state,$count)
{
$this->state = $state;
$this->number = $count;
$result = $this->JSONselect("approved_business, business_stores, Real_Cash_Offers"," *, group_concat(offer ORDER BY offer ASC SEPARATOR ',') as offers"," approved_business.id = business_stores.business_id AND Real_Cash_Offers.business_id = approved_business.id AND Real_Cash_Offers.storeid = business_stores.storeid AND business_stores.state = '{$this->state}'","GROUP BY id ORDER BY RAND(), approved_business.id DESC LIMIT {$this->number} ");
$remaining = $count - count($result);
if ($remaining) {
$this->type = 'G';
$result = array_merge($result, $this->JSONselect("iNcard_Products","*, productname as tradingname, CONCAT_WS('|', id,'{$this->type}') AS id, CONCAT_WS('|', spend, cashback) AS offer, group_concat(CONCAT_WS('|', spend, cashback) ORDER BY spend ASC SEPARATOR ',') as offers ,picurl as pictureurl","picurl != 'NULL'","GROUP BY productname ORDER BY RAND() LIMIT {$remaining} "));
}
print $this->JSONprint($result);
}
The the jQuery Code
function fetch(e,formstring)
{
var a = 1;
var b = 1;
var rc="";
var spendoffer="";
$.ajax({
type: 'POST',
url: 'http://www.incard.com.au/newsite/system/classes/core.php',
data: formstring,
dataType: 'json',
contentType: "application/x-www-form-urlencoded;charset=utf-8",
beforeSend: function() {
switch (e) {
},
success: function(data){
$.each(data, function(i, obj) {
switch (e) {
//300 OFFERS
case 300:
if(a != 9)
{
$("#title"+a).html(obj.tradingname.toUpperCase());
if(!obj.discription)
{
obj.discription = 'We make sure that all of our customers leave with what they expected and are happy.';
}
if(!obj.pictureurl)
{
obj.pictureurl = 'http://www.incard.com.au/newsite/template/categoryimages/iStock_000008235598Small.jpg';
}
$("#pic"+a).html("<img style='width:180px;' src='"+obj.pictureurl+"'/>");
$("#spend"+a+"_0").html("Spend $"+obj.offers.split('|')[0].replace('.00', '').replace(' $', '')+"<br/><span>Get $"+obj.offers.split('|')[1].split(',')[0].replace(' $', '')+"</span>");
if(obj.offers.split(',')[b])
{
rc = obj.offers.split(',')[b];
spendoffer = rc.split('|');
$("#spend"+a+"_1").append("Spend $"+spendoffer[0].replace('.00', '').replace(' $', '')+" <span>Get $"+spendoffer[1].replace(' $ ', '')+"</span><br/>");
b++;
if(obj.offers.split(',')[b])
{
rc = obj.offers.split(',')[b];
spendoffer = rc.split('|');
$("#spend"+a+"_1").append("Spend $"+spendoffer[0].replace('.00', '').replace(' $', '')+" <span>Get $"+spendoffer[1].replace(' $', '')+"</span><br/>");
}
b++;
if(obj.offers.split(',')[b])
{
rc = obj.offers.split(',')[b];
spendoffer = rc.split('|');
$("#spend"+a+"_1").append("Spend $"+spendoffer[0].replace('.00', '').replace(' $ ', '')+" <span>Get $"+spendoffer[1].replace(' $', '')+"</span><br/>");
}
}
else
{
b = 1;
//$("#spend"+a+"_1").html("More to Come");
}
if(obj.id.split('|')[1] != "G")
{
$("a#link"+a).attr("href", "?page=BusinessOffer&id="+obj.id);
}
else
{
obj.discription = 'Looking for that perfect gift for someone special or for yourself get your '+obj.tradingname+' giftcard.';
$("a#link"+a).attr("href", "?page=GiftCardOffer&id="+obj.id.split('|')[0]);
}
$("#description"+a).html(obj.discription);
national = obj.suburb;
if(!national)
{
national = "National";
}
$("#sub"+a).html(national.toUpperCase());
a++;
}
break;
}
});
},
error: function(data){
$.each(data,function(i,myinfo){
});
},
complete: function(){
switch (e)
{
case 3:
lava();
break;
case 700:
showAddress(businessaddress);
break;
}
},
"text json": jQuery.parseJSON
});
return false;
}
No comments:
Post a Comment