﻿var scripts = document.getElementsByTagName('script');
var myScript = scripts[ scripts.length - 1 ];
var queryString = myScript.src.replace(/^[^\?]+\??/,'');
var Params = new Object ();
if ( ! queryString ) Params = new Object (); // return empty object
var Pairs = queryString.split(/[;&]/);
for ( var i = 0; i < Pairs.length; i++ ) {
  var KeyVal = Pairs[i].split('=');
  if ( ! KeyVal || KeyVal.length != 2 ) continue;
  var key = unescape( KeyVal[0] );
  var val = unescape( KeyVal[1] );
  val = val.replace(/\+/g, ' ');
  Params[key] = val;
}

function startAdRequest() 
{    
    var APOpenSocialContainer = opensocial.Container.get();
    var dataRequestObject = APOpenSocialContainer.newDataRequest();
        
    var param = {};
    param[opensocial.DataRequest.PeopleRequestFields.PROFILE_DETAILS] =
        [MyOpenSpace.Person.Field.GENDER,
        MyOpenSpace.Person.Field.CITY,
        MyOpenSpace.Person.Field.GENDER,
        MyOpenSpace.Person.Field.MARITAL_STATUS,
        MyOpenSpace.Person.Field.COUNTRY,
        MyOpenSpace.Person.Field.REGION,
        MyOpenSpace.Person.Field.AGE];
           
    var adViewerRequest = APOpenSocialContainer.newFetchPersonRequest(opensocial.DataRequest.PersonId.OWNER, param);
        
    dataRequestObject.add(adViewerRequest);    
    dataRequestObject.send(adViewerResponse);       
}
function adViewerResponse(data) 
{       
    if (data.get(opensocial.DataRequest.PersonId.OWNER).getErrorCode() != null) 
    {    
        var adViewer = data.get(opensocial.DataRequest.PersonId.OWNER).getData();    
        var url = "http://www.adparlor.com/serveAd.aspx";
        var params = {}; 
        params[gadgets.io.RequestParameters.POST_DATA] = { appId : Params['appId'],
                                                           adType : Params['adtype'],
                                                           viewerid : adViewer.getId(),                                                            
                                                           city : adViewer.getField(MyOpenSpace.Person.Field.CITY),
                                                           region : adViewer.getField(MyOpenSpace.Person.Field.REGION),
                                                           country : adViewer.getField(MyOpenSpace.Person.Field.COUNTRY),
                                                           age : adViewer.getField(MyOpenSpace.Person.Field.AGE),
                                                           gender : adViewer.getField(MyOpenSpace.Person.Field.GENDER),
                                                           maritalStatus : adViewer.getField(MyOpenSpace.Person.Field.MARITAL_STATUS)  };
        params[gadgets.io.RequestParameters.METHOD] = gadgets.io.MethodType.POST;
        gadgets.io.makeRequest(url, getAd_callback, params);                
    }    
}    
function getAd_callback(data)
{
    document.getElementById('AdParlorAd').innerHTML = data.text;
}

// Place this call after your last ajax response
startAdRequest();