;(function($){
/*
**
 * jqGrid extension
 * Paul Tiseo ptiseo@wasteconsultants.com
 * 
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
**/ 

$.fn.extend({
	getPostData : function(){
        var $t = this[0];
        if(!$t.grid) return;
		return $t.p.postData;
	},
	setPostData : function( newdata ) {
        var $t = this[0];
        if(!$t.grid) return;
		// check if newdata is correct type
		if ( typeof(newdata) === 'object' ) {
			$t.p.postData = newdata;
		}
		else {
			alert("Error: cannot add a non-object postData value. postData unchanged.");
		}
	},
	appendPostData : function( newdata ) { 
        var $t = this[0];
        if(!$t.grid) return;
		// check if newdata is correct type
		if ( typeof(newdata) === 'object' ) {
			$.extend($t.p.postData, newdata);
		}
		else {
			alert("Error: cannot append a non-object postData value. postData unchanged.");
		}
	},
	setPostDataItem : function( key, val ) {
        var $t = this[0];
        if(!$t.grid) return;
		$t.p.postData[key] = val;
	},
	getPostDataItem : function( key ) {
        var $t = this[0];
        if(!$t.grid) return;
		return $t.p.postData[key];
	},
	removePostDataItem : function( key ) {
        var $t = this[0];
        if(!$t.grid) return;
		delete $t.p.postData[key];
	},
	getUserData : function(){
        var $t = this[0];
        if(!$t.grid) return;
		return $t.p.userData;
	},
	getUserDataItem : function( key ) {
        var $t = this[0];
        if(!$t.grid) return;
		return $t.p.userData[key];
	}	
});
})(jQuery);