




if (typeof(disqus_iframe_css) == 'undefined') {
	disqus_iframe_css = '';
}
if (typeof(disqus_def_name) == 'undefined') {
	disqus_def_name = '';
}
if (typeof(disqus_def_email) == 'undefined') {
	disqus_def_email = '';
}
if (typeof(disqus_skip_auth) == 'undefined') {
	disqus_skip_auth = false;
}
if (typeof(disqus_default_text) == 'undefined') {
	disqus_default_text = 'Type your comment here.';
}

(function(){
	
	var ie = document.uniqueID
		&& document.compatMode
		&& !window.XMLHttpRequest
		&& document.execCommand ;

	try {
		if(!!ie) {
			document.execCommand("BackgroundImageCache", false, true);
		}
	} catch(e) {};
})();

var Dsq = new function() {
	this.container = document.getElementById('dsq-content');
	this.jsonData = {"reactions": [{"body": "RT @PhxREguy Towing Scam in Tempe, AZ... Ridiculous! http://cli.gs/P8SMS8 (via @tweetmeme)", "author_name": "BrendanAiello", "id": 1800765, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/BrendanAiello/statuses/2229667199", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/247377751/BrendanAiello_normal.JPG", "author_url": "", "date_created": "06/18/2009 04:02 PM", "retweets": []}, {"body": "RT @PhxREguy: Towing Scam. The Day After - update on #tempetows New on TPREG: http://bit.ly/towscam2 (the 6 of you should take it to court)", "author_name": "bobeagan", "id": 1800766, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/bobeagan/statuses/2226005797", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/268417906/green_7392_22949915956722f82bf910ea3daad5b0_normal.jpeg", "author_url": "", "date_created": "06/18/2009 11:24 AM", "retweets": [{"url": "http://twitter.com/chrislee/statuses/2225760306", "author_name": "chrislee"}]}, {"body": "RT @phxreguy Towing Scam. The Day After - update on #tempetows New on TPREG: http://bit.ly/towscam2", "author_name": "Kinchie", "id": 1800767, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/Kinchie/statuses/2225964517", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/269557526/iran_avatar_normal.jpg", "author_url": "", "date_created": "06/18/2009 11:21 AM", "retweets": []}, {"body": "Towing Scam. The Day After \u2014 The Phoenix Real Estate Guy: Phoenix Real Estate \u2014 Anything and everything about it. .. http://bit.ly/zS1II", "author_name": "getrealty", "id": 1800769, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/getrealty/statuses/2219922977", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/156238245/Profile_Pic_normal.jpg", "author_url": "", "date_created": "06/18/2009 01:43 AM", "retweets": []}, {"body": "RT @PHXPhoto: Towing Scam. The Day After \u2014 The Phoenix Real Estate Guy: http://tinyurl.com/lry8rm", "author_name": "paulvalach", "id": 1800770, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/paulvalach/statuses/2219278531", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/263631629/Paul_V_normal.JPG", "author_url": "", "date_created": "06/18/2009 12:10 AM", "retweets": []}, {"body": "Towing Scam. The Day After \u2014 The Phoenix Real Estate Guy: http://tinyurl.com/lry8rm", "author_name": "PHXPhoto", "id": 1800771, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/PHXPhoto/statuses/2218677523", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/78171954/IMG_2181_normal.JPG", "author_url": "", "date_created": "06/17/2009 10:56 PM", "retweets": []}, {"body": "Towing scam update on #tempetows http://bit.ly/towscam2 (via @PhxREguy)", "author_name": "erica2point0", "id": 1800772, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/erica2point0/statuses/2218613832", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/194040997/pig_normal.jpg", "author_url": "", "date_created": "06/17/2009 10:48 PM", "retweets": []}, {"body": "Towing Scam. The Day After - update on #tempetows New on TPREG: http://bit.ly/towscam2 (via @PhxREguy) OMG it has been broughted!", "author_name": "halfacat", "id": 1800773, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/halfacat/statuses/2217212460", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/254854884/3608678326_4f53e6077d_o_normal.jpg", "author_url": "", "date_created": "06/17/2009 08:32 PM", "retweets": []}, {"body": "RT @PhxREguyTowing Scam. The Day After - update on #tempetows New on TPREG: http://bit.ly/towscam2 GO GET'EM JAY!!!", "author_name": "QuiGonJinn", "id": 1800774, "get_service_url": "http://twitter.com/", "title": "", "url": "http://twitter.com/QuiGonJinn/statuses/2217078160", "source": "backtype", "get_service_name": "twitter", "avatar_url": "http://s3.amazonaws.com/twitter_production/profile_images/264258117/3626583087_f481280190_b_phixr_normal.jpg", "author_url": "", "date_created": "06/17/2009 08:21 PM", "retweets": []}], "has_more_reactions": true, "users": {"45968e0aa9a2864c58ebeba7a3a47e13": {"username": "Melanie Johnston", "tumblr": "", "display_name": "Melanie Johnston", "url": "http://disqus.com/guest/45968e0aa9a2864c58ebeba7a3a47e13/", "registered": false, "linkedin": "", "blog": "http://www.scottsdaledealfinder.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "edf676461db73337a7cf511de727ab46": {"username": "Nina", "tumblr": "", "display_name": "Nina", "url": "http://disqus.com/guest/edf676461db73337a7cf511de727ab46/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "504aca9a6531ff98c435812a05a6abad": {"username": "Kyle Pearson", "tumblr": "", "display_name": "Kyle Pearson", "url": "http://disqus.com/guest/504aca9a6531ff98c435812a05a6abad/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b9870ef1949bcf25b9330aabe16a9197": {"username": "Kate", "tumblr": "", "display_name": "Kate", "url": "http://disqus.com/guest/b9870ef1949bcf25b9330aabe16a9197/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6e79362fb87a99f8a8e43c69964265ca": {"username": "Heather", "tumblr": "", "display_name": "Heather", "url": "http://disqus.com/guest/6e79362fb87a99f8a8e43c69964265ca/", "registered": false, "linkedin": "", "blog": "http://www.ThePhoenixAgents.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "91b39101125bb9827fa90f1f4e2a92ee": {"username": "Brantford Real Estate", "tumblr": "", "display_name": "Brantford Real Estate", "url": "http://disqus.com/guest/91b39101125bb9827fa90f1f4e2a92ee/", "registered": false, "linkedin": "", "blog": "http://www.brantfordrealestateguy.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "4d60b2e24ba9da6c50c235607a0aa532": {"username": "Gregory Bain", "tumblr": "", "display_name": "Gregory Bain", "url": "http://disqus.com/guest/4d60b2e24ba9da6c50c235607a0aa532/", "registered": false, "linkedin": "", "blog": "http://GregoryBain.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "465a13e43a6de16e859c084d29c50e1c": {"username": "Julia", "tumblr": "", "display_name": "Julia", "url": "http://disqus.com/guest/465a13e43a6de16e859c084d29c50e1c/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c00ab99ed7fe734e109c672a200915dc": {"username": "Jay Thompson", "tumblr": "", "display_name": "Jay Thompson", "url": "http://disqus.com/guest/c00ab99ed7fe734e109c672a200915dc/", "registered": false, "linkedin": "", "blog": "http://www.PhoenixRealEstateGuy.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/8/7420/avatar32.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6126058ca72aa8d1f23641faa7469c3a": {"username": "Derec Shuler@Mile High Urban L", "tumblr": "", "display_name": "Derec Shuler@Mile High Urban L", "url": "http://disqus.com/guest/6126058ca72aa8d1f23641faa7469c3a/", "registered": false, "linkedin": "", "blog": "http://blog.milehighurbanliving.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "240ae370263130906a52157df01b733c": {"username": "Jim Little", "tumblr": "", "display_name": "Jim Little", "url": "http://disqus.com/guest/240ae370263130906a52157df01b733c/", "registered": false, "linkedin": "", "blog": "http://jimlittleaz.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "d1cee34459938de38b978f778ba912c2": {"username": "Joe", "tumblr": "", "display_name": "Joe", "url": "http://disqus.com/guest/d1cee34459938de38b978f778ba912c2/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "22bac44175a8d184f052df428668656d": {"username": "Chuck Reynolds@Phoenix Wordpre", "tumblr": "", "display_name": "Chuck Reynolds@Phoenix Wordpre", "url": "http://disqus.com/guest/22bac44175a8d184f052df428668656d/", "registered": false, "linkedin": "", "blog": "http://chuckreynolds.us/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "2cbd746575d9d26e2215eb2ad78867a5": {"username": "A Real Lawyer", "tumblr": "", "display_name": "A Real Lawyer", "url": "http://disqus.com/guest/2cbd746575d9d26e2215eb2ad78867a5/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "f072a5064fdddf77322e326314ad67aa": {"username": "The Wizard", "tumblr": "", "display_name": "The Wizard", "url": "http://disqus.com/guest/f072a5064fdddf77322e326314ad67aa/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "06d7ab6572c864ec60b684fcb0e5e60b": {"username": "Jim Zirbes", "tumblr": "", "display_name": "Jim Zirbes", "url": "http://disqus.com/guest/06d7ab6572c864ec60b684fcb0e5e60b/", "registered": false, "linkedin": "", "blog": "http://www.RealtyBlogger.info/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ceac811ffa6a3f84f66e7554703abd04": {"username": "Tina@Atlanta Real Estate", "tumblr": "", "display_name": "Tina@Atlanta Real Estate", "url": "http://disqus.com/guest/ceac811ffa6a3f84f66e7554703abd04/", "registered": false, "linkedin": "", "blog": "http://www.tinafountain.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "cf4bb325515ed5abb623b4782cf59e19": {"username": "paulvalach (paul valach)", "tumblr": "", "display_name": "paulvalach (paul valach)", "url": "http://disqus.com/guest/cf4bb325515ed5abb623b4782cf59e19/", "registered": false, "linkedin": "", "blog": "http://twitter.com/paulvalach/statuses/2219278531", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b48e96573c5193aad67b2a7cf3b51169": {"username": "Jason Humpal-Loveland Real Est", "tumblr": "", "display_name": "Jason Humpal-Loveland Real Est", "url": "http://disqus.com/guest/b48e96573c5193aad67b2a7cf3b51169/", "registered": false, "linkedin": "", "blog": "http://www.century21humpal.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "08d14b3e03d46f1942c2f090c7fd7b97": {"username": "Ki@Austin Texas Real Estate", "tumblr": "", "display_name": "Ki@Austin Texas Real Estate", "url": "http://disqus.com/guest/08d14b3e03d46f1942c2f090c7fd7b97/", "registered": false, "linkedin": "", "blog": "http://www.escapesomewhere.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "2e6ce1d22a31f3de62c1e54ccb00c62e": {"username": "Roger Williams", "tumblr": "", "display_name": "Roger Williams", "url": "http://disqus.com/guest/2e6ce1d22a31f3de62c1e54ccb00c62e/", "registered": false, "linkedin": "", "blog": "http://desertstandard.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "ef49d520cfa4e9b60078ab3145a58cf6": {"username": "Phil Wax-Portland Real Estate", "tumblr": "", "display_name": "Phil Wax-Portland Real Estate", "url": "http://disqus.com/guest/ef49d520cfa4e9b60078ab3145a58cf6/", "registered": false, "linkedin": "", "blog": "http://www.portlandhometeam.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "9eba5a84c8a65cdcee8612c7bb6d0417": {"username": "Dan @ Tampa Property Managemen", "tumblr": "", "display_name": "Dan @ Tampa Property Managemen", "url": "http://disqus.com/guest/9eba5a84c8a65cdcee8612c7bb6d0417/", "registered": false, "linkedin": "", "blog": "http://www.brandonre.com/propertymanagement.php", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/70/3740/avatar32.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e7dbdc727c8d4d97a846a4be14e8474e": {"username": "Gregory Bain", "tumblr": "", "display_name": "Gregory Bain", "url": "http://disqus.com/guest/e7dbdc727c8d4d97a846a4be14e8474e/", "registered": false, "linkedin": "", "blog": "http://GregoryBain.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "e956b3b9f658c5ed0841b8e81083d1b6": {"username": "Colleen@Kennewick Homes", "tumblr": "", "display_name": "Colleen@Kennewick Homes", "url": "http://disqus.com/guest/e956b3b9f658c5ed0841b8e81083d1b6/", "registered": false, "linkedin": "", "blog": "http://www.joelane.com/real-estate-blog/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/116/2280/avatar32.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "0e1853137a74bddef111222c0d6db4d1": {"username": "Michael", "tumblr": "", "display_name": "Michael", "url": "http://disqus.com/guest/0e1853137a74bddef111222c0d6db4d1/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "3fa2829e87a5e3d2e5dac028b51a4acf": {"username": "David Lorti - Ahwatukee Real E", "tumblr": "", "display_name": "David Lorti - Ahwatukee Real E", "url": "http://disqus.com/guest/3fa2829e87a5e3d2e5dac028b51a4acf/", "registered": false, "linkedin": "", "blog": "http://www.lortihomesblog.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "jefftd77": {"username": "jefftd77", "tumblr": "", "display_name": "Real Estate Leads", "url": "http://disqus.com/jefftd77/", "registered": true, "linkedin": "", "blog": "http://www.agentstealth.com", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}, "670bd30c26cc02344aea84b98eec0c5b": {"username": "Dan Mitchell @ Best Home Pix", "tumblr": "", "display_name": "Dan Mitchell @ Best Home Pix", "url": "http://disqus.com/guest/670bd30c26cc02344aea84b98eec0c5b/", "registered": false, "linkedin": "", "blog": "http://www.besthomepix.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "c2c3e30a23ba87aa374fa3315c6b4ba1": {"username": "Rick NHS", "tumblr": "", "display_name": "Rick NHS", "url": "http://disqus.com/guest/c2c3e30a23ba87aa374fa3315c6b4ba1/", "registered": false, "linkedin": "", "blog": "http://www.newhomessection.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/22/5709/avatar32.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "255d083f1d2741e62e1325744e6baa64": {"username": "Brewer Caldwell", "tumblr": "", "display_name": "Brewer Caldwell", "url": "http://disqus.com/guest/255d083f1d2741e62e1325744e6baa64/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "1801bb25f636953a6b8cd8bd066463c8": {"username": "Bryan", "tumblr": "", "display_name": "Bryan", "url": "http://disqus.com/guest/1801bb25f636953a6b8cd8bd066463c8/", "registered": false, "linkedin": "", "blog": "http://blog.dodeals.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "6bb75a99c8ac4826c0d965e410ea0da1": {"username": "Halifax Real Estate", "tumblr": "", "display_name": "Halifax Real Estate", "url": "http://disqus.com/guest/6bb75a99c8ac4826c0d965e410ea0da1/", "registered": false, "linkedin": "", "blog": "http://halifaxrealestatebroker.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "5fa90976b0f28e945b3cc61a492ee07f": {"username": "Jana", "tumblr": "", "display_name": "Jana", "url": "http://disqus.com/guest/5fa90976b0f28e945b3cc61a492ee07f/", "registered": false, "linkedin": "", "blog": "http://jvre4you.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "7b5247a797648353e440976627f4c96d": {"username": "PHXPhoto (Dan Mitchell)", "tumblr": "", "display_name": "PHXPhoto (Dan Mitchell)", "url": "http://disqus.com/guest/7b5247a797648353e440976627f4c96d/", "registered": false, "linkedin": "", "blog": "http://twitter.com/PHXPhoto/statuses/2218677523", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "cba2c608bc84fb1db216e87ee5dc4ac3": {"username": "Jay Thompson", "tumblr": "", "display_name": "Jay Thompson", "url": "http://disqus.com/guest/cba2c608bc84fb1db216e87ee5dc4ac3/", "registered": false, "linkedin": "", "blog": "http://www.PhoenixRealEstateGuy.com/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "34b0298b51612ed91f15c32ed2a45aa4": {"username": "Greg Ferguson", "tumblr": "", "display_name": "Greg Ferguson", "url": "http://disqus.com/guest/34b0298b51612ed91f15c32ed2a45aa4/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "044be6fd4ba925a04c200dfc05248be2": {"username": "Ali Bawor", "tumblr": "", "display_name": "Ali Bawor", "url": "http://disqus.com/guest/044be6fd4ba925a04c200dfc05248be2/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "b59721d67fb36777a79d04bfb9225cb1": {"username": "Charles@Las Vegas Real Estate", "tumblr": "", "display_name": "Charles@Las Vegas Real Estate", "url": "http://disqus.com/guest/b59721d67fb36777a79d04bfb9225cb1/", "registered": false, "linkedin": "", "blog": "http://www.lvrealty.net/", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/uploads/anonusers/7/4196/avatar32.jpg", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "f7527d562a86dd90462f0b0db9189aae": {"username": "Paco McDooby", "tumblr": "", "display_name": "Paco McDooby", "url": "http://disqus.com/guest/f7527d562a86dd90462f0b0db9189aae/", "registered": false, "linkedin": "", "blog": "", "remote_domain": null, "points": null, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": false, "flickr": "", "twitter": "", "remote_domain_name": ""}, "realestatetaxi": {"username": "realestatetaxi", "tumblr": "", "display_name": "Staten Island Real Estate", "url": "http://disqus.com/realestatetaxi/", "registered": true, "linkedin": "", "blog": "http://www.realestatetaxi.com", "remote_domain": null, "points": 1, "facebook": "", "avatar": "http://media.disqus.com/images/noavatar32.png", "delicious": "", "is_remote": false, "verified": true, "flickr": "", "twitter": "", "remote_domain_name": ""}}, "forum": {"use_media": true, "name": "The Phoenix Real Estate Guy", "streaming_realtime": false, "url": "tpreg", "allow_anon_post": true, "reactions_enabled": true, "reply_position": 0, "show_avatar": true, "allow_anon_votes": false, "disqus_auth_disabled": false}, "realtime_enabled": false, "request": {"username": "", "is_global_moderator": false, "sharing": {}, "sort": 4, "forum": "tpreg", "is_initial_load": true, "is_authenticated": false, "timestamp": "2009-12-01_08:05:33", "remote_domain": "", "page": 1, "is_moderator": false, "display_username": "", "points": null, "subscribe_on_post": 2, "moderator_can_edit": false, "is_remote": false, "is_verified": false, "missing_perm": null}, "realtime_paused": false, "posts": {"12487936": {"up_voted": false, "ip": "", "has_replies": false, "message": "You are not going to get any help from the Police. You are not going to get any help from city council. It would seem to me your only recourse is to pay the fine, file a complaint with the police department and take the tow company and land owner to small claims court. The judge will most likely agree with you and order them to pay you back the towing charge but he will not give you any compensation for you time and aggrevation. If  you are going to go that route, you may want to have a \"friendly\" mechanic look over your car to find damages done by the towing company and include that in your suit. Good Luck. (I'm not a lawyer and am not giving legal advise to anyone. However, I have been pissed off and stood in front of those who are \"here to help us\" a few times in my life). Good Luck.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_08:30:27", "killed": false, "user_key": "e7dbdc727c8d4d97a846a4be14e8474e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 05:30 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487937": {"up_voted": false, "ip": "", "has_replies": false, "message": "\"They\" don't know who they're messin' with.<br><br>Logic and reason do not account for why things are the way they are, only someone's interpretation of logic and reason.<br><br>Based on the obvious details you've shared - if it were me, I'd let them attack with their \"we'll destroy your credit...BS\".  You'll spend WAY more time trying to prove their logic and reason support changes for future parking perps.<br><br>When all is said and done - the majority of perps who park at this location are college kids anyway, and really...what credit rating do they have to destroy?<br><br>IMHO - changing the world \"one parking lot at a time\" isn't deserving of the principle infusion being attempted.  Just my opinion, my car is in my garage all safe and sound.  :)", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_08:38:41", "killed": false, "user_key": "0e1853137a74bddef111222c0d6db4d1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 05:38 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487938": {"up_voted": false, "ip": "", "has_replies": false, "message": "<blockquote><br><em>&quot;...clearly visible and readable from a distance of fifty (50) feet away and at all points of entry... &quot;</em><br></blockquote><br>Nice work Jay. Apparently, the towing company picked the wrong dude to tow. I would imagine scores (hundreds) of folks are entitled to some towing fee refunds. <br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Colleen&#180;s last blog post..<a href=\"http://www.joelane.com/real-estate-blog/kennewick-wa-homes-for-sale/\" rel=\"nofollow\">Kennewick WA Homes for Sale</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_09:08:30", "killed": false, "user_key": "e956b3b9f658c5ed0841b8e81083d1b6", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 06:08 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487939": {"up_voted": false, "ip": "", "has_replies": false, "message": "I would say go to a City of Tempe Council meeting and present your evidence with scale models (I can help with that).  If you're not a resident, then there is bound to be someone who was towed that is.....", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_10:11:38", "killed": false, "user_key": "044be6fd4ba925a04c200dfc05248be2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 07:11 AM", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 12487926, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487940": {"up_voted": false, "ip": "", "has_replies": true, "message": "Man I would love to say going to court is the way to go, but I did just that and found I was wasting my time. Not only did I waste my time but the tow company counter sued me for REASONABLE attorney fees. let me just say no attorney fee is reasonable. I ended up paying another $1100. for my anguish. And what is even worse is the tow company actually did damage my car, the judge said unless I could prove my car wasn't damaged prior to the tow then I had no case. You are in real estate, why don't you buy the lot and we can all park there for free when we want to go down Mill and get plastered", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_10:30:30", "killed": false, "user_key": "d1cee34459938de38b978f778ba912c2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 07:30 AM", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487941": {"up_voted": false, "ip": "", "has_replies": false, "message": "I am so sorry you (and the others you met who had their cars towed) have been exposed to this unsettling event. It's proof positive - with that towing company as an example - to the saying  \"Some bring joy wherever they go...and others whenever they go\". Hopefully your stand for (&amp; on) principle and decency will prevail!<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Jim Zirbes&#180;s last blog post..<a href=\"http://jimrejournal.blogspot.com/2009/06/getting-it-old.html\" rel=\"nofollow\">Getting it $OLD!</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_11:26:39", "killed": false, "user_key": "06d7ab6572c864ec60b684fcb0e5e60b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 08:26 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487942": {"up_voted": false, "ip": "", "has_replies": false, "message": "Hey Jay , It never ceases to amaze me what tactics companies will do make a buck, just out of principle I hope you do fight it in court. I am sure you will win", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_12:25:42", "killed": false, "user_key": "9eba5a84c8a65cdcee8612c7bb6d0417", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 09:25 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487943": {"up_voted": false, "ip": "", "has_replies": true, "message": "Jay, they know you vote in Gilbert. Why would they care?<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Jim Little&#180;s last blog post..<a href=\"http://jimlittleaz.com/2009/06/06/heros-enough-saiid/\" rel=\"nofollow\">Heros, Enough Said!</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_12:31:00", "killed": false, "user_key": "240ae370263130906a52157df01b733c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 09:31 AM", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487944": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jim - <br><br>An excellent question! <br><br>As you know, a significant portion of Tempe's existence is dependent on \"tourists\" (particularly the Mill Avenue area where this sordid mess took place). \"Tourists\" includes residents of neighboring communities. While it's true I cannot  vote at the ballot box in Tempe, I can certainly vote with my feet and my wallet.<br><br>In other words, they <i>should</i> care. I've had some communication with City of Tempe officials (just got an email from the Mayor in fact) and they do appear to be concerned. Could just be lip service of course, but some do truly express concern and seem to be looking into this and other allegations.<br><br>It's all politics and bureaucracy though so believe me, I'm not holding my breath....", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_12:43:50", "killed": false, "user_key": "c00ab99ed7fe734e109c672a200915dc", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 09:43 AM", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 12487943, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487945": {"up_voted": false, "ip": "", "has_replies": false, "message": "Joe wrote: \"You are in real estate, why don\u2019t you buy the lot and we can all park there for free...\"<br><br>I'd love to buy that lot and just charge a reasonable fee for parking. This would allow me to spend a lot of time on the beach drinking cocktails out of coconuts.<br><br>This is <i>prime</i> real estate. I'm almost afraid to figure out the market value of a lot at Mill & 7th Street. But I don't need to calculate it to know I can't afford it.<br><br>Regarding your legal experience with towing... I can see how proving damage would be difficult. I don't think it's difficult to prove signage doesn't meet very specific requirements outlined in the city code.<br><br>Of course I didn't think it was all that difficult to prove that OJ butchered Ron and Nicole either...", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_12:50:19", "killed": false, "user_key": "c00ab99ed7fe734e109c672a200915dc", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 09:50 AM", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 12487940, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487946": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jay could you possibly put an add in the paper to see how many others have been scammed?  Class action suit!  At the very least the proper signage would go up.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_13:18:48", "killed": false, "user_key": "5fa90976b0f28e945b3cc61a492ee07f", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 10:18 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487947": {"up_voted": false, "ip": "", "has_replies": false, "message": "If you really want to get them back, put up a sign at the entrance to the lot warning others (knowing it will prob get removed). Get a group of friends together and stand at the entrance with signs of warning during peak hours.<br><br>Hit 'em where it hurts...their pocketbook. If no one parks there, they can't tow=no $$$", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_14:14:14", "killed": false, "user_key": "edf676461db73337a7cf511de727ab46", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 11:14 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487948": {"up_voted": false, "ip": "", "has_replies": false, "message": "Good for you! Most people just pay their tickets and move on. It's about time someone took a stand.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_15:00:15", "killed": false, "user_key": "jefftd77", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "06/18/2009 12:00 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487949": {"up_voted": false, "ip": "", "has_replies": false, "message": "Great, most people do just complain and pay. Go get them!!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_18:13:59", "killed": false, "user_key": "255d083f1d2741e62e1325744e6baa64", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 03:13 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487950": {"up_voted": false, "ip": "", "has_replies": false, "message": "&gt;Jay, they know you vote in Gilbert. Why would they care?<br><br>Here is why the should care<br><br><a href=\"http://siteanalytics.compete.com/phoenixrealestateguy.com+tempecvb.com/\" rel=\"nofollow\">http://siteanalytics.compete.com/phoenixrealest...</a><br><br>Jay's site gets 684% more traffic than the official tourism site for the city of Tempe.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Ki&#180;s last blog post..<a href=\"http://www.escapesomewhere.com/austinblog/2009/05/austin_real_estate_april_2009.html\" rel=\"nofollow\">Austin Real Estate Statistics for April 2009</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_19:45:38", "killed": false, "user_key": "08d14b3e03d46f1942c2f090c7fd7b97", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 04:45 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487951": {"up_voted": false, "ip": "", "has_replies": true, "message": "Jay,<br><br>Perhaps phone calls to your local television/radio station(s) are in order.  You've done a great job in presenting the details, and I'm sure your story is great fodder for a news channel or radio station.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_20:36:05", "killed": false, "user_key": "e956b3b9f658c5ed0841b8e81083d1b6", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 05:36 PM", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487952": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jay you realize that when you win, they`re going to make their signs bigger and continue the scam innocent people. I hope you win though because this is just plain stupid.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Brantford Real Estate&#180;s last blog post..<a href=\"http://www.brantfordrealestateguy.com/brantford-real-estate/brantford-home-inspection-part-conditional-offer/\" rel=\"nofollow\">Your Brantford Home Inspection is Part of the Conditional Offer</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_20:55:13", "killed": false, "user_key": "91b39101125bb9827fa90f1f4e2a92ee", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 05:55 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487953": {"up_voted": false, "ip": "", "has_replies": false, "message": "Funny you should mention television Joe. I'm meeting a local CBS reporter at the lot tomorrow....", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_21:44:32", "killed": false, "user_key": "cba2c608bc84fb1db216e87ee5dc4ac3", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 06:44 PM", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 12487951, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487954": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jay, I love you man! You get a bone in your mouth and you just don't let go. <br><br>\"I'm not a lawyer\"  ... Meeting CBS television crew... \"Jay\u2019s site gets 684% more traffic than the official tourism site for the city of Tempe.\"    You. Rock! <br><br>Melanie Johnston - \"Tempe Towing Avenger Guy\" = priceless. Expect a twitter follow from me, I need more laughs like the ones you dish out!<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Heather&#180;s last blog post..<a href=\"http://thephoenixagents.com/several-valley-schools-named-among-nations-best/\" rel=\"nofollow\">Several Valley Schools Named Among Nation\u2019s Best</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_22:50:30", "killed": false, "user_key": "6e79362fb87a99f8a8e43c69964265ca", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 07:50 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487955": {"up_voted": false, "ip": "", "has_replies": false, "message": "They got me there about two years ago... I left my car for 20 mins tops, and sure enough that was enough time for them to haul my car off.<br><br>It is a scam... But what pissed me off the most was their guy who drives around the lot in a pick-up offering to take you to the impound lot. I told him to go F himself! (I was rather pissed-off at the time)<br><br>Good luck exposing these thieves.. it's the biggest con in town.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_23:25:22", "killed": false, "user_key": "c2c3e30a23ba87aa374fa3315c6b4ba1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 08:25 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487956": {"up_voted": false, "ip": "", "has_replies": false, "message": "Hey Jay, I happened to be in Tempe today and made a point to go by that lot. No offence but on that lot I wouldn\"t have ever parked there. There are other signs that say no parking as well as that tow companies signs. I mean I know it feels like a scam but it says restricted parking so im sure anyone who gets away with it has an arrangement or is paying a fee to be allowed there. The spot I was towed from was a much grayer area than this place, and I got no where with it. I'm not sticking up for them I am just saying maybe this one isn't bad enough that you end up with a lawsuit for calling them a scam or something. Remember they could always try and hurt your business in some way. Best of luck.  Joe", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-19_00:47:50", "killed": false, "user_key": "d1cee34459938de38b978f778ba912c2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 09:47 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487957": {"up_voted": false, "ip": "", "has_replies": true, "message": "Well Jay from what i see you put a lot of effort in your investigation,But I am with Joe if there was other signs saying don't park there then why did you park there? I mean you can see the signs in your pictures and if you thought they was towing signs why did you choose to park there?<br>you said yourself that you could not afford to buy a lot there because the real estate in Tempe is to expensive for you, So why would you choose to park on a lot that you did not own? really what gives you the right to park there? why didn't you go and park at the business that you and your friends were going to visit? or maybe a lot where you could pay to park? myself i would choose 1 of those options either that or learn how to read the signs around me before getting towed not waiting till after the fact. myself i live in Ohio and i don't know the parking issues that you might have there. but if it would have been me well i would not have parked there. especially if i would have seen any kind of  signs that said no parking or restricted parking . i would not have taken that chance myself. well good luck Jay", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-19_02:38:30", "killed": false, "user_key": "f072a5064fdddf77322e326314ad67aa", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 11:38 PM", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487958": {"up_voted": false, "ip": "", "has_replies": false, "message": "What a dirty tactic<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Bryan&#180;s last blog post..<a href=\"http://blog.dodeals.com/bank-foreclosed-homes-for-sale/\" rel=\"nofollow\">Bank Foreclosed Homes For Sale</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-19_04:13:59", "killed": false, "user_key": "1801bb25f636953a6b8cd8bd066463c8", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/19/2009 01:13 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487959": {"up_voted": false, "ip": "", "has_replies": false, "message": "Wizard and Joe - <br><br>I parked there because I didn't see any no parking signs. I'm a pretty decent, law-abiding guy. If I had seen a no-parking sign, I wouldn't have parked there.<br><br>That's the point. Despite what Joe says, there are no other signs in that lot other than what I reported in this post. And the signs that are there don't meet city code. The reason there is a code in the first place is so that signs are posted where people can see them. <br><br>Yes, you can see them in the picture. Keep in mind this was taken at 5:30 in the afternoon, not 9:30 at night. They are also highlighted in the photos. Trust me, there were no little red circles around them either time I was there. ;)<br><br>I'm not trying to get out of this because of the money. It's $135, it's not going to kill me (though I feel sorry for the college kids and others that can't afford it).<br><br>I am all for private property rights. I've posted on this very blog before that I'm not a fan of big government or regulation. But city codes for things like this are necessary for exactly this reason -- to prevent people from being taken advantage of and getting ripped off.<br><br>If the property owner doesn't want people parking there, the solution is simple. Put up proper signage that people can see. Put a chain across the entrance. That this isn't done leads to the reasonable conclusion that the owner <i>wants</i> people to park there. <br><br>Had I parked in a lot with legal signage, without a bait car, the most you would have heard from me would have been a \"Crap, got towed, that sucks\". This is  different in my opinion.<br><br>Apparently I am not the only one with this opinion. I've talked to the Mayor of Tempe and a Tempe Councilmember and the Tempe Community Relations Manager. All are frustrated, all have stories about towing operators. The city council in fact recently passed laws to try to help stop these aggressive towing practices (<a href=\"http://blogs.phoenixnewtimes.com/valleyfever/2009/05/tempe_changes_rules_on_towing.php\" rel=\"nofollow\">source</a>).<br><br>I'm a big boy. If I do something wrong or make a mistake, I'll pay my dues and move along. <br><br>But if I see someone deceiving people, ripping people off, setting up bait cars, marking a lot illegally and taking advantage of people, I'm going to call it out and try to get it stopped. <br><br>That's just how I roll.", "is_last_child": true, "can_reply": true, "down_voted": false, "real_date": "2009-06-19_09:34:43", "killed": false, "user_key": "c00ab99ed7fe734e109c672a200915dc", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/19/2009 06:34 AM", "approved": true, "num_replies": 0, "is_first_child": true, "email": "", "parent_post_id": 12487957, "depth": 1, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487960": {"up_voted": false, "ip": "", "has_replies": false, "message": "Does anybody else get the feeling that Wizard and Joe are from the tow company trying to rationalize their junk business?<br><br>But trust me, it's not just those guys. ASU is arguably worse. My friend left their car outside of a dorm in an empty parking spot (had a parking pass, just not the right lot) and it was towed within 10 minutes. You can't park at a meter and have it go over for more than a minute (literally) without a parking cop come up and write up a $100 ticket. That's why I plan to fly a helicopter to school from now on...", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-19_22:38:17", "killed": false, "user_key": "504aca9a6531ff98c435812a05a6abad", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/19/2009 07:38 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487961": {"up_voted": false, "ip": "", "has_replies": false, "message": "I would love to know how the TV interview went. I have a feeling the lot suddenly had a lot of signage or the camera crew was blocked from getting any evidence shots for the viewing public. But, it's just a feeling. Hope it went well.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-20_08:40:02", "killed": false, "user_key": "e7dbdc727c8d4d97a846a4be14e8474e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/20/2009 05:40 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487962": {"up_voted": false, "ip": "", "has_replies": false, "message": "I don't work for any tow company but I am a law student and my thing is we all make mistakes. When I went by that lot I could see a lot of signs. But like Jay said that was during the day. A friend of mine who also is at ASU said that people can buy yearlong permission to park at that lot. So when I saw Jays pic that identified an illegally parked car, which also happened to be at the lot when I went by I checked, it had purchased from the proprietor a yearlong pass to park there. I just don't want to see anyone get sued for their choice of words. A quote bait car probably was allowed permission to park there through their purchase of a permit to do so. As far as I have seen Jay may have been slanderous is his choice of words, and I wouldn't want to see him sued for just trying to do what he feels is right. Having said that sorry to make anyone feel like I am a bad guy by just be rational in the situation people are entitled to their opinions feel free to say anything you want just don't tell the monster people you are doing it in a public forum or it may end up costing a lot more than the impound fee. A lawsuit is a tax write-off for them but for most people it is just a major pain in the butt.   Joe", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-20_11:52:27", "killed": false, "user_key": "d1cee34459938de38b978f778ba912c2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/20/2009 08:52 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487963": {"up_voted": false, "ip": "", "has_replies": false, "message": "Here is the video CBS 5 did:<br><a href=\"http://www.kpho.com/video/19809165/index.html\" rel=\"nofollow\">http://www.kpho.com/video/19809165/index.html</a><br><br>And here is the story:<br><a href=\"http://www.kpho.com/news/19807691/detail.html\" rel=\"nofollow\">http://www.kpho.com/news/19807691/detail.html</a><br><br>Since the night of the incident, the sign that did not meet City Code that the police and tow truck driver repeatedly referred to has been removed.<br><br>Signs meeting city code have been installed.<br><br>If the signage was acceptable the night we were towed, why was a sign removed and two more installed within 48 hours of the incident? To me, that is all but an admission of guilt.<br><br>Joe - I appreciate your thoughts and opinion. Even if the \"bait car\" was authorized to park there, it was a pretty sleazy thing to do. As the Tempe Councilmember said in the video, it doesn't meet the intent of the law and is disingenuous. The two employees at the impound lot were also not too pleased to hear about this aspect of the story.<br><br>By the way, slander is the spoken word, libel is written.<br><br>If the owner, property manager or whoever is in charge of this lot <i>really</i> didn't want people parking there, the solution is simple. Install signs that meet city code. That they didn't do this (until after the fact and quite possibly under pressure from the City of Tempe) speaks volumes.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-20_13:20:28", "killed": false, "user_key": "c00ab99ed7fe734e109c672a200915dc", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/20/2009 10:20 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487964": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jay, I hate to argue but as you said in your own original post there were signs that met the code as well as others that did not, like you also said the Tempe police told you it was properly signed. Maybe someone upset other than yourself tore down the signs who knows. Maybe the tow company had to replace the signs that were torn down, by someone other than yourself of course. The city code does not indicate how many signs are needed just that they be visible at the entrance. one entrance was signed properly and one was missing, however extra signs were visible. That would be considered overkill on the lot. Not to mention the fact that you yourself said you ignored the completely visible NO PARKING sign posted above the very visible orange barricade. The point I see that no one is mentioning is that some people chose to pay for their ability to park on that lot and not be restricted as the signs say. You chose to ignore or disregard the signs and park with your friends in spots that other hard working people had paid for. Do you also eat the sandwich in the company fridge with Betty\"s name on it??? And yes slander and libel are two completely different terms but you run the risk of being guilty of both with these posts and a news, audible broadcast. At first I was on your team about this issue based on what you had told us all, but after doing just a little investigating I see that you are just a sour grapes person with nothing better to do than try to cause others harm for your own mistakes. What is the license plate # of the \"bait car\" what did the tow employee look like? Go identify him at the tow company be more diligent in your accusations. For all anyone knows that was just a poor person who actually paid for their right to park on that lot. Unlike you and your friends of course. For me, checking in on your blog is a thing of the past. I had previously enjoyed some of your posts, but I think you are not the person that at least I had been led to believe you were. In my humble opinion you blame others when you make mistakes, and attempt to use those mistakes to get publicity for yourself. A person like that would not be trusted to sell me a soda at circle K much less a house. Good luck in whatever you do. I just hope some zealot like yourself buys a house from you and then finds some reason to blog about you in a \"real estate scam\". Pay attention people this transparent little man, in my opinion will end up hurting you far more than he could ever help you.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-20_16:58:33", "killed": false, "user_key": "d1cee34459938de38b978f778ba912c2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/20/2009 01:58 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487965": {"up_voted": false, "ip": "", "has_replies": false, "message": "Ya ever notice that the anonymous Joe Blows of the world always accuse the guy who puts his full name, business address and telephone numbers along with countless other pieces of personal data out there of being the one who is untrustworthy?<br><br>great news telecast - thanks for posting. It looks like you have a lot of support, Jay. I just think you are still going to pay and the \"joes\" of the world are going to win. Tempe should fine the owner of the lot and the tow company, or, at least pay the tow of everyone that got scammed that night.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-20_18:37:49", "killed": false, "user_key": "e7dbdc727c8d4d97a846a4be14e8474e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/20/2009 03:37 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487966": {"up_voted": false, "ip": "", "has_replies": false, "message": "Joe - <br><br>You are certainly entitled to your own opinion. However, I'd like to counter a few things you said in your last comment.<br><br>\"as you said in your own original post there were signs that met the code as well as others that did not\"<br><br>Please read with a more critical eye Joe. As a law student, that's a good skill to have. There were not <i>signs</i> (plural) that met code. There was <i>one</i> sign, presented edge on to the entrance and approximately 160 feet from said entrance that met code.<br><br>\"Maybe someone upset other than yourself tore down the signs who knows.\"<br><br>Sure, someone upset could have pulled the sticker off the electrical box. That happening at the same time that new signs meeting code were installed is a quite a remarkable coincidence.<br><br>\"The city code does not indicate how many signs are needed just that they be visible at the entrance. one entrance was signed properly and one was missing, however extra signs were visible. \"<br><br>There was no tow warning sign visible at the entrance Joe. There is now. And again, \"extra signs\" were not visible.<br><br>\"Not to mention the fact that you yourself said you ignored the completely visible NO PARKING sign posted above the very visible orange barricade.\"<br><br>Again, please read before you accuse me of something I never said. I did not say I ignored the no parking sign, please don't put words in my mouth. That sign appeared to me to be referring to no parking along the easement, not the lot. It is also not a tow warning sign. I got towed Joe, not issued a parking ticket as would have been appropriate with that sign.<br><br>\"You chose to ignore or disregard the signs and park with your friends in spots that other hard working people had paid for.\"<br><br>I did not chose to ignore or disregard a sign I never saw.<br><br>\"Do you also eat the sandwich in the company fridge with Betty\u201ds name on it???\"<br><br>What the hell?<br><br>\"And yes slander and libel are two completely different terms but you run the risk of being guilty of both with these posts and a news, audible broadcast.\"<br><br>I slandered the towing company in the CBS video??? I didn't even mention their name. How you could slander someone without mentioning their name is beyond me. If they felt I libeled them in my posts, they are welcome to pursue that.<br><br>\"For all anyone knows that was just a poor person who actually paid for their right to park on that lot.\"<br><br>Whatever Joe. When one of the tow truck drivers gets in and drives away in the last remaining car on the lot, I don't really care if he paid to park there or not. It was an incredibly deceptive practice.<br><br>\"In my humble opinion you blame others when you make mistakes, and attempt to use those mistakes to get publicity for yourself.\"<br><br>You don't know me from Adam. \"Getting publicity\" is a ridiculous statement. I don't need \"publicity\" from writing about getting ripped off.<br><br>\"I just hope some zealot like yourself buys a house from you and then finds some reason to blog about you in a \u201creal estate scam\u201d.\"<br><br>That will never happen Joe. I don't rip people off, I don't deceive people, and I follow every rule and regulation that my local, state and national associations require of me. In fact, I go well beyond those regulations in my ethics and business practices.<br><br>\"Pay attention people this transparent little man, in my opinion will end up hurting you far more than he could ever help you.\"<br><br>So you accuse me of libel and then come here and call me a zealot, say I blame others, try to cause others harm, can't be trusted, and that I'll end up hurting people?<br><br>Do you see the irony in that?<br><br>\"For me, checking in on your blog is a thing of the past.\"<br><br>That's not a problem Joe. You're welcome to read my posts or not. Have a nice life.<br><br>(And thanks Gregory)", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-20_19:14:16", "killed": false, "user_key": "c00ab99ed7fe734e109c672a200915dc", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/20/2009 04:14 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487967": {"up_voted": false, "ip": "", "has_replies": false, "message": "Howdy Joe,<br><br>It's pretty clear that you work for the unnamed towing company.  Oh, and I love the \"law student\" bit, it would be clever, except....why is a law student interested in this blog?  Is it perhaps because you are somehow connected with the towing company who is catching a ton of flack from all angles?<br><br>I've only ever encountered persons who cry \"libel\" and \"slander\" to be those whose reputation is already tarnished to the point where any additional hits just bury them deeper into the rut they got themselves into with their own shady business practices.  Said practices are fantastic for your bottom line in the short term, but as you're now finding out (probably because you're having trouble procuring towing contracts with corps and public entities) that it is VERY troublesome for the long-term financial health of your company.  In short, yes, you can screw people today and fill your pockets with their fresh ATM cash, but you'll find that you catch more bees with honey than vinegar.  People talk, and I'm sure you've probably towed someone's car who is in a position to close doors for you that you haven't even attempted to open yet.<br><br>In this case, its likely that this incident is like throwing a matchstick into a forest fire, with all that I've heard about your company, its only really pulling a magnifying glass to your unethical practices.  <br><br>Btw, if you were really a law student you would know that libel and slander are extremely difficult to prosecute when the offended party has allowed prior negative public statements to go uncontested.  The court assumes that the offending remarks/speech are true if they go uncontested, or if, at the very least, there is no PR effort to combat the claims.  FACT: Posting comments on a blog under a pseudonym is not a PR move, its bad business.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Ali Bawor&#180;s last blog post..<a href=\"http://www.yelp.com/biz/pure-romance-party-yorktown#hrid:LxftwcxMUo6EyLxrGDQaQQ\" rel=\"nofollow\">Pure Romance Party (5/5) on Yelp</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-20_22:42:12", "killed": false, "user_key": "044be6fd4ba925a04c200dfc05248be2", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/20/2009 07:42 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487968": {"up_voted": false, "ip": "", "has_replies": false, "message": "Take them to task for the size of their sign. You obviousally have a case there. They can't continue to get away with this scam.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Halifax Real Estate&#180;s last blog post..<a href=\"http://halifaxrealestatebroker.com/2009/06/15/a-rental-property-horror-story/\" rel=\"nofollow\">A Rental Property Horror Story</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-21_14:59:56", "killed": false, "user_key": "6bb75a99c8ac4826c0d965e410ea0da1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/21/2009 11:59 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487969": {"up_voted": false, "ip": "", "has_replies": false, "message": "Note to self:<br><br>Don't use \"Joe\" for any of my future legal needs.  Surely he'll end up with the annoying ambulance chasers (P to the h - you know who you are).<br><br>Some people must get a lot of exercise jumping to conclusions.  Sorry to hear of their fall.  Oh well - another one bites the dust.<br><br>I'm not a religious man, but the following song came to my head today (choose your artist)...<br><br>\"And the sign said ... everyone welcome come in, kneel down and pray.  When they passed around the plate at the end of it all, I didn't have a penny to pay.  So I got me a pen &amp; a paper, and I made up my own little sign - it said thank you lord for thinkin' about me I'm alive and feelin' fine\".<br><br>Onward to a new day - hope all Father's had a great day today !!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-21_20:40:05", "killed": false, "user_key": "0e1853137a74bddef111222c0d6db4d1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/21/2009 05:40 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487971": {"up_voted": false, "ip": "", "has_replies": false, "message": "Unlike Joe, I'm a real lawyer, and I absolutely hate towing companies.  I've never met an honest one that played fairly.  I'm considering taking a couple cases against Monster pro bono.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-22_13:41:35", "killed": false, "user_key": "2cbd746575d9d26e2215eb2ad78867a5", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/22/2009 10:41 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487972": {"up_voted": false, "ip": "", "has_replies": false, "message": "A Real Lawyer - <br><br>I'd love to talk to you. Call me any time at 480-235-4447 or email me at <a href=\"mailto:jay@thompsonSrealty.com\" rel=\"nofollow\">jay@thompsonSrealty.com</a>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-22_14:07:11", "killed": false, "user_key": "c00ab99ed7fe734e109c672a200915dc", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/22/2009 11:07 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487973": {"up_voted": false, "ip": "", "has_replies": false, "message": "It is great to see you have brought so much attention to this-I can't believe (well, I can, but don't want to) that the tow driver dared you to sue them....go get them, Jay!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-22_16:20:56", "killed": false, "user_key": "b48e96573c5193aad67b2a7cf3b51169", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/22/2009 01:20 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487974": {"up_voted": false, "ip": "", "has_replies": false, "message": "Dollar for donut (about what they cost on today's market) I would bet that the Monster Tow has a contract with the city of Tempe and it's police department for tow services. I am sure if you looked real hard you would find the connection with city council and or the \"management\" of the town and the company. And, it may very well be that the \"lawyer\" that owns the lot has connections with the town and its school district for legal services. It was good that you let everyone know about the scam, but it's just the way things work, Jay. Think bunnies and puppies ;-)", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-22_21:38:10", "killed": false, "user_key": "4d60b2e24ba9da6c50c235607a0aa532", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/22/2009 06:38 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487975": {"up_voted": false, "ip": "", "has_replies": false, "message": "This has been an incredible story and the comments interesting too.<br><br>Even if you take them to small claims court, please do so, and keep<br>us apprised of any new developments!  <br><br>Follow the money....", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-24_16:28:01", "killed": false, "user_key": "b9870ef1949bcf25b9330aabe16a9197", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/24/2009 01:28 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487976": {"up_voted": false, "ip": "", "has_replies": false, "message": "GO GET'EM Jay. Funny how they are using the 'law' to stick you with a ridiculous towing bill but don't adhere to it themselves. I wonder how much money that little lot generates for the towing company and how much of that the land owner gets.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Charles&#180;s last blog post..<a href=\"http://www.lvrealty.net/news/las-vegas-housing-market\" rel=\"nofollow\">Las Vegas Housing Market: Foreclosures Down, Sales Up</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-26_18:50:45", "killed": false, "user_key": "b59721d67fb36777a79d04bfb9225cb1", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/26/2009 03:50 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487977": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jay,<br><br>You still have it!  This has been one of the more entertaining posts in recent memory.  I hope you can change a seemingly rotten system.<br><br>As an aside, in 1984 and 1985, I spent some time at the Motorola Mesa plant working on starting up the 256k DRAM (yep, I am old).  The MOS 5 guys must have told me a dozen times \"be careful when you park anywhere around ASU; they'll tow you in minutes.\"  So, even back then, it was considered to be a \"parking trap\".  <br><br>Regards.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-27_09:21:42", "killed": false, "user_key": "34b0298b51612ed91f15c32ed2a45aa4", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/27/2009 06:21 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487978": {"up_voted": false, "ip": "", "has_replies": false, "message": "Dang, it is interesting to read all the comments-and I'd be \"Joe\" is either part of the tow truck company that scammed everyone in that lot or a tow truck driver somewhere else. Go get them, Jay, and good luck in bringing them down!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-28_15:40:37", "killed": false, "user_key": "ef49d520cfa4e9b60078ab3145a58cf6", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/28/2009 12:40 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487979": {"up_voted": false, "ip": "", "has_replies": false, "message": "People are talking a lot about Tempe municipal law, but they also need to look at Arizona state law.  It is possible to comply with Tempe municipal law while violating Arizona state law (and vice versa).<br><br>-------------------<br><br>ARS 9-499.05 states, in part, that:<br><br>B. The owner or agent of the owner of the private property shall be DEEMED TO HAVE GIVEN CONSENT TO UNRESTRICTED PARKING by the general public in any parking area of the private property UNLESS such parking area is posted with signs as prescribed by this subsection which are CLEARLY VISIBLE and READABLE from ANY POINT within the parking area and at each entrance. <br><br>-------------------<br><br>That means that if there exists any point in the parking lot at which a parking sign is not clearly readable, then the lot owner -- as a matter of law -- is deemed to have granted permission to park there.  Tempe municipal law is wholly irrelevant to whether a lot owner meets the requirements of the state statute.  In other words, even if a lot owner fully complies with the Tempe ordinance, the lot owner might still fail to meet the state statute.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-05_02:12:19", "killed": false, "user_key": "f7527d562a86dd90462f0b0db9189aae", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/04/2009 11:12 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487981": {"up_voted": false, "ip": "", "has_replies": false, "message": "Also, keep in mind that the towing company has the burden of proving that they complies with all the signage requirements.  The Arizona Court of Appeals, commenting on the statute posted above, has explicitly stated that if the signage requirements are not met, there can be NO RECOVERY for the towing company: \"before a legally binding contract is created, the towing company obviously would have to establish that the signs complied with all elements of \u00a7 9-499.05(B), including the requirement that the signs be 'clearly visible and readable from any point within the parking area and at each entrance.' \" Adage Towing &amp; Recovery, Inc. v. City of Tucson, 187 Ariz. 396, 399 n.5, 930 P.2d 473, 476 (App. 1996).", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-05_02:15:06", "killed": false, "user_key": "f7527d562a86dd90462f0b0db9189aae", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/04/2009 11:15 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487982": {"up_voted": false, "ip": "", "has_replies": false, "message": "Another important thing to keep in mind when dealing with towing companies in Arizona is that if you are the owner of the car, they have absolutely no right to hold your car if it was towed without your permission.  They cannot demand payment on the spot as a condition to releasing the vehicle.  If they do, it's theft.  The towing company's can try to sue the person who parked the car for the towing charge, but the towing company cannot use the car itself as leverage.<br><br>The Arizona Court of Appeals has said that IF THE SIGNAGE REQUIREMENTS ARE MET, then the tow company's recovery (if any) is against the PARKING VIOLATOR, as opposed to the vehicle owner. \"A sign that complies with A.R.S. 9-499.05 creates a legally binding contract between the towing company and the PARKING VIOLATOR which would permit a towing company to seek relief for its contractual damages.\" Adage Towing &amp; Recovery, Inc. v. City of Tucson, 187 Ariz. 396, 398, 930 P.2d 473, 475 (App. 1996).<br><br>Regardless of who the alleged parking violator is, the tow company MUST release the car to the owner. When the Arizona Supreme Court addressed this issue, it held that a towing company commits theft when it tows a car that was parked on private property without the property owner's permission  and then refuses to release the car to the car's owner.<br><br>\"According to the undisputed facts, the petitioner [a towing company], without lawful authority, knowingly controlled the property of another with the intent to restore it only upon payment of compensation. We believe the elements of the crime as specified under A.R.S. \u00a7 13-1801(2) and \u00a7 13-1802(A) have been satisfied, and that the petitioner may be charged with theft.\" Capson v. Superior Court of State of Ariz., In and For Maricopa County, 139 Ariz. 113, 116, 677 P.2d 276, 279 (1984).", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-07-05_02:23:17", "killed": false, "user_key": "f7527d562a86dd90462f0b0db9189aae", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "07/04/2009 11:23 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "15129485": {"up_voted": false, "ip": "", "has_replies": false, "message": "I would have been pissed it that happened too me. That small sign is obviously a trap, to bait people into parking. I am sure the owner of the lot gets a cut under the table.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-08-20_10:25:16", "killed": false, "user_key": "realestatetaxi", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": false, "votable": true, "date": "08/20/2009 07:25 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487924": {"up_voted": false, "ip": "", "has_replies": false, "message": "OMG City of Tempe and dodgy landowner at SE Corner of 7th and Mill, you have been SERVED!!!<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Roger Williams&#180;s last blog post..<a href=\"http://desertstandard.com/2009/06/17/positive-customer-experience-true-food-kitchen-and-exec-chef-michael-stebner/\" rel=\"nofollow\">Positive Customer Experience: True Food Kitchen and Exec Chef Michael Stebner</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-17_23:32:27", "killed": false, "user_key": "2e6ce1d22a31f3de62c1e54ccb00c62e", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/17/2009 08:32 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487925": {"up_voted": false, "ip": "", "has_replies": false, "message": "That's lame and it's good you've documented everything.  I'd file a police report for them removing, or would that be stealing, your car since they haven't met the legal requirements per the city code.<br><br>This is something I'd probably tend to spend too much time on to make my point how rotten and crooked these folks are.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_01:00:07", "killed": false, "user_key": "6126058ca72aa8d1f23641faa7469c3a", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/17/2009 10:00 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487926": {"up_voted": false, "ip": "", "has_replies": true, "message": "Jay-<br><br>I think you are laying the case here for why the lot owner should be looked at in terms of what they have been doing.<br><br>Given the detail here and the case you laid out, maybe it's time to call Tempe PD and have them read through the post and tell you one way or the other if they feel you are correct.  <br><br>Perhaps you can file a police report for something to do with wrongful towing or possession of your vehicle?<br><br>David Lorti", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_01:00:38", "killed": false, "user_key": "3fa2829e87a5e3d2e5dac028b51a4acf", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/17/2009 10:00 PM", "approved": true, "num_replies": 1, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487927": {"up_voted": false, "ip": "", "has_replies": false, "message": "I dealth with a towing company when I was in school.  They towed my car from the outside the business I worked at.  Everyone I talked to was incredibly annoying.  Can you post the contact/email for the mayor of temple and the city council.   That way some of us could write and tell them that operating a tow trap is the worst possible approach to getting people to visit their town and spend tourist money.<br><br>And if they have any interest in tourism their cops need to start watching for this abuse activity by tow companies and agressively going after the tow companies.  These guys should get their license revoked.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_01:03:17", "killed": false, "user_key": "08d14b3e03d46f1942c2f090c7fd7b97", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/17/2009 10:03 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487928": {"up_voted": false, "ip": "", "has_replies": false, "message": "This towing company HAS NO IDEA who they are up against. They will rue the day they hooked up your bumper. Go make them pay for all the pain they have caused people, like that nice couple. Were they in the market to buy a home? You are no longer simply Phoenix Real Estate Guy. You are now Tempe Towing Avenger Guy. Your community needs you.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_01:39:40", "killed": false, "user_key": "45968e0aa9a2864c58ebeba7a3a47e13", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/17/2009 10:39 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487930": {"up_voted": false, "ip": "", "has_replies": false, "message": "Go Get 'Em, Jay!<br><br>You say you're not a lawyer... yet you do an excellent job laying out your case.<br><br>The only thing you seem to be missing would be video, possibly a point-of-view as a driver approaches and enters the lot.  But I'm sure you could get that with your ever-present Flip, if you don't have it already!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_01:47:08", "killed": false, "user_key": "670bd30c26cc02344aea84b98eec0c5b", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/17/2009 10:47 PM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487931": {"up_voted": false, "ip": "", "has_replies": false, "message": "Wow, fantastic post! Please, please pursue this in court for the sake of everyone who was ever towed from this lot by these criminals.", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_03:40:55", "killed": false, "user_key": "465a13e43a6de16e859c084d29c50e1c", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 12:40 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487932": {"up_voted": false, "ip": "", "has_replies": false, "message": "Very good post and very detailed I might add.  I'd like to see what Tempe / the mayor / a small claims court says...  Nobody ever fights this stuff... you have a lot of ammo going into this - run with it man!", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_05:02:50", "killed": false, "user_key": "22bac44175a8d184f052df428668656d", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 02:02 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487933": {"up_voted": false, "ip": "", "has_replies": false, "message": "RT <a rel=\"nofollow\" href=\"http://twitter.com/PHXPhoto\">@PHXPhoto</a>: Towing Scam. The Day After \u2014 The Phoenix Real Estate Guy: <a href=\"http://tinyurl.com/lry8rm\" rel=\"nofollow\">http://tinyurl.com/lry8rm</a>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_10:10:55", "killed": false, "user_key": "cf4bb325515ed5abb623b4782cf59e19", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 07:10 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487934": {"up_voted": false, "ip": "", "has_replies": false, "message": "Towing Scam. The Day After \u2014 The Phoenix Real Estate Guy: <a href=\"http://tinyurl.com/lry8rm\" rel=\"nofollow\">http://tinyurl.com/lry8rm</a>", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_08:56:08", "killed": false, "user_key": "7b5247a797648353e440976627f4c96d", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 05:56 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}, "12487935": {"up_voted": false, "ip": "", "has_replies": false, "message": "Jay, take them to court, if I were in a jury and saw your evidence I'd rule in your favor.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Tina&#180;s last blog post..<a href=\"http://www.tinafountain.com/blog/tina-fountain/atlanta-is-now-americas-largest-wireless-hotspot/show/\" rel=\"nofollow\">Atlanta Is Now America's Largest Wireless Hotspot</a></em>&lt;/abbr&gt;", "is_last_child": false, "can_reply": true, "down_voted": false, "real_date": "2009-06-18_08:00:33", "killed": false, "user_key": "ceac811ffa6a3f84f66e7554703abd04", "has_been_anonymized": false, "edited": false, "author_is_moderator": false, "from_request_user": null, "votable": true, "date": "06/18/2009 05:00 AM", "approved": true, "num_replies": 0, "is_first_child": false, "email": "", "parent_post_id": null, "depth": 0, "points": 0, "author_is_creator": false, "is_realtime": false}}, "integration": {"receiver_url": "", "theme": 4, "reply_position": false, "disqus_logo": false}, "timer": {"timer_url": "http://localhost:8005", "thread_id": "25008977", "user_id": "anonymous", "forum_id": "152356", "hash": 8762068062821523705}, "thread": {"days_alive": 0, "slug": "towing_scam_the_day_after", "paginate": false, "num_pages": 1, "num_posts": 57, "per_page": 0, "total_posts": 0, "realtime_paused": true, "id": 25008977, "queued": false}, "reactions_limit": 10, "context": {"show_reply": true, "use_fb_connect": true, "forum_facebook_key": "b7c57e0bf778127562deb90a323ed0ec", "use_yahoo": true, "subscribed": false, "use_twitter_signin": true, "use_openid": true, "realtime_speed": 5000}, "reactions_start": 0, "settings": {"debug": false, "disqus_url": "http://disqus.com", "media_url": "http://media.disqus.com"}, "media_url": "http://media.disqus.com"};
	/* */ this.jsonData.cookie_messages = {"user_created": null, "post_has_profile": null, "post_twitter": null, "post_not_approved": null}; this.jsonData.session = {"url": null, "name": null, "email": null}; /* */

	
	this.curPageId = 'dsq-comments';

	this.frames = {};
};

var disqus_popup_reference = null;

if(typeof DsqLocal == 'undefined') {
	DsqLocal = {};
}



/**
 * Dsq.Strings: UI strings
 */
Dsq.Strings = new function() {
	this.ADD_NEW_COMMENT = "Add New Comment";
	this.LOG_INTO_DISQUS = "Log into DISQUS";
	this.USE_MEDIA = "Use Media";
	this.LOGOUT = "Logout";
	this.SHARING_OPTIONS = "Sharing options";
	this.SHARE_ON = "Share on";
	this.TWEET_THIS_COMMENT = "Tweet this comment";
	this.SHARE_ON_NEWSFEED = "Share on news feed";
	this.SEND_UPDATE_TO_YAHOO = "Send update to Yahoo!";
	this.REBLOG_ON = "Reblog on";
	this.CONFIGURE_OPTIONS = "Configure options";
	this.POST_AS = "Post as";
	this.SORT_BY = "Sort by";
	this.SUBSCRIBE_BY_EMAIL = "Subscribe by email";
	this.SUBSCRIBE_BY_RSS = "Subscribe by RSS";
	this.POPULAR_NOW = "Popular now";
	this.BEST_RATING = "Best Rating";
	this.NEWEST_FIRST = "Newest first";
	this.OLDEST_FIRST = "Oldest first";
	this.HIGHLIGHTED = "Highlighted";
	this.UNSUBSCRIBE = "Unsubscribe";
	this.REQUIRED = "Required";
	this.OPTIONAL = "Optional";
	this.YOU_ARE_COMMENTING_AS_A = "You are commenting as a";
	this.LOGIN_BELOW = "Login below";
	this.PLEASE_LOGIN_BELOW_TO_COMMENT = "Please login below to comment.";
	this.SUBSCRIBE_TO_ALL_COMMENTS_BY_EMAIL = "Subscribe to all comments by email";
	this.DO_NOT_SUBSCRIBE_TO_COMMENTS = "Do not subscribe to comments";
	this.REALTIME_UPDATING_IS = "Real-time updating is";
	this.ENABLED = "enabled";
	this.PAUSED = "paused";
	this.PAUSE = "Pause";
	this.RESUME = "Resume";
	this.SHOW = "Show";
	this.JUST_NOW = "Just now";
	this.REPLY = "Reply";
	this.EDIT = "Edit";
	this.FLAG = "Flag";
	this.MODERATE = "Moderate";
	this.CANCEL = "Cancel";
	this.REPLYING_TO = "Replying to";
	this.REPORT_MISSING_REACTIONS = "Report missing reactions";
	this.POST_A_COMMENT = "Post a comment";
	this.FLAG_INAPPROPRIATE_COMMENT = "Flag inappropriate comment";
	this.FLAGGED = "Flagged";
	this.NO = "No";
	this.YES = "Yes";
	this.NEVER_MIND = "Never mind";
	this.ARE_YOU_SURE_YOU_WOULD_LIKE_TO_REPORT_THIS_COMMENT_TO_A_MODERATOR = "Are you sure you would like to report this comment to a moderator";
	this.THIS_WILL_FLAG_COMMENTS_FOR_MODERATORS_TO_TAKE_ACTION = "This will flag comments for moderators to take action";
	this.TO_RATE_PLEASE_LOG_IN = "To rate, please log in";
	this.JUST_A_MOMENT = "Just a moment...";
	this.GUEST = "Guest";
	this.NAME = "Name";
	this.EMAIL = "Email";
  this.WEBSITE = "Website";
  this.SETTINGS = "Settings";
  this.MODERATOR_OPTIONS = "Moderator options: ";
};
// Dsq.Strings

/**
 * Dsq.FmtStrings: functions that return interpolated UI strings
 */
Dsq.FmtStrings = new function() {
	// Seems we have to use named interpolation for Django to translate. Investigate more.
	this.LOGGED_IN_AS = function(username) {
		return Dsq.Utils.interpolate('Logged in as %(username)s', {username:username});
	};

	this.LOGOUT_FROM = function(disqus) {
		return Dsq.Utils.interpolate('Logout from %(disqus)s', {disqus:disqus});
	};

	this.SHOWING_COMMENTS_FULL = function(total, num) {
		if (num === 1) {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> of <span id='dsq-total-posts'>%(total)s</span> comment", {num:num, total:total});
		} else {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> of <span id='dsq-total-posts'>%(total)s</span> comments", {num:num, total:total});
		}
	};

	this.SHOWING_COMMENTS_WITHOUT_PAGINATION = function(num) {
		if (num === 1) {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> comment", {num:num});
		} else {
			return Dsq.Utils.interpolate("Showing <span id='dsq-num-posts'>%(num)s</span> comments", {num:num});
		}
	};

	this.NUMBER_OF_COMMENTS = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s comment'
				: '%(num)s comments'
			), {num:num});
	};

	this.NUMBER_OF_LIKES = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s like'
				: '%(num)s likes'
			), {num:num});
	};

	this.NUMBER_OF_POINTS = function(num) {
		return Dsq.Utils.interpolate(
			(num == 1
				? '%(num)s point'
				: '%(num)s points'
			), {num:num});
	};
};
// Dsq.FmtStrings





Dsq.CSRF_TOKEN = '4f0bfca82e06c976a1efdd7c783a5fd0';
Dsq.COMMENTS_RE = /(<li.*?id="?dsq-comment-(\d+)"?.*?>)((?:.|\s)*?)(<\/li>)/gim;
Dsq.POST_RE = /(<div.*?id="?dsq-comment-header-(\d+)"?.*?>)((?:.|\s)*?)(<\/div>)\s*(<div.*?class="?dsq-comment-body"?.*?>)((?:.|\s)*)(<\/div>)/gim;
Dsq.POST_BODY_RE = /\s*(<div.*?id="?dsq-comment-message-(\d+)"?.*?>)((?:.|\s)*)(<\/div>)/gim;
// HACK: Safari ends with "-->" while other browsers end with "--&gt;" as expected.
Dsq.MEDIA_POST_RE = /&lt;!--\[(.*?)\]--(?:>|&gt;)/gim;



var FragmentPacket = function(reader, writer, writer_url, is_child, receiveCallback) {
	var that = this;
	this.reader = reader;
	this.writer = writer;
	this.writer_url = writer_url;

	this.is_child = is_child || false;
	this.receiveCallback = receiveCallback;

	this._lastHash = null;

	this._accumMsg = '';

	this._lastSeqno = 0;

	this.MAX_DATA_LEN	= 1024;

	this.WAIT_TIME		= 10;

	this.READY		= 0x1;
	this.WRITING	= 0x2;
	this.FIN		= 0x4;
	this.ACK		= 0x8;

};

FragmentPacket.prototype.createListener = function() {
	var that = this;
	var listener = function() {
		that.recv();
	};
	return window.setInterval(listener, 10);
};

FragmentPacket.prototype.log = function(msg) {



};

FragmentPacket.prototype.recv = function() {
	var hash;
	if (/MSIE/.test(navigator.userAgent)) {

		hash = this.reader.name;
	} else {

		var hashIndex = this.reader.location.href.indexOf('#');
		if (hashIndex == -1) {
			return;
		}
		hash = this.reader.location.href.substring(hashIndex+1);
	}
	var flags = parseInt(hash.substring(0, 4), 10);
	var seqno = parseInt(hash.substring(4, 24), 10);
	var data  = hash.substring(24);

	if (this._lastHash !== hash) {
		this._lastHash = hash;
		this.log('recv: ' + hash);

		this.log(' flags: ' + flags);
		this.log(' seqno: ' + seqno + ' len: ' + hash.substring(4, 24).length + ' (' + hash.substring(4, 24) + ')');
		this.log(' data: ' + data + ' len: ' + data.length);

		this._lastSeqno = seqno;

		if (flags & this.WRITING) {
			this._accumMsg += data;
			this.sendFlag(this.ACK, seqno);
			if (flags & this.FIN) {
				this.log('recv finished: ' + decodeURIComponent(this._accumMsg));
				this.receiveCallback(decodeURIComponent(this._accumMsg));

				this._accumMsg = '';

				this.sendFlag(this.READY | this.ACK, this._lastSeqno);
			}
		}
	}

	return {
		flags: flags,
		seqno: seqno,
		data: data
	};
};

FragmentPacket.prototype.sendRawPacket = function(packet) {
	if (/MSIE/.test(navigator.userAgent)) {
		this.writer.name = packet;
	} else {

		this.writer.location.href = this.writer_url + '#' + packet;
	}

};

FragmentPacket.prototype.sendFlag = function(flag, seqno) {
	this.sendRawPacket(this._zerofill(flag, 4) + this._zerofill(seqno, 20));
};

FragmentPacket.prototype.send = function(msg) {
	this._send(0, encodeURIComponent(msg));
};

FragmentPacket.prototype._send = function(packetNum, msg) {
	var that = this;
	var recvBuf = this.recv();

	if (packetNum === 0) {

		if (!(recvBuf.flags & this.READY)) {
			this.log('client is not ready, waiting...');
			window.setTimeout(function() { that._send(packetNum, msg); }, this.WAIT_TIME);
			return;
		}
	} else {

		if (!( (recvBuf.flags & this.ACK) && (recvBuf.seqno === this._lastSeqno) )) {
			this.log('waiting for ack from client...');
			window.setTimeout(function() { that._send(packetNum, msg); }, this.WAIT_TIME);
			return;
		} else {
			this.log('received ack: ' + this._lastSeqno + ' ' + recvBuf.seqno);
		}
	}

	var flags = this.WRITING;
	var num_packets = Math.ceil(msg.length / this.MAX_DATA_LEN);
	this.log('num_packets: ' + num_packets);

	if (num_packets === packetNum) {

		this.log('message successfully sent!');
		this.sendFlag(this.READY | this.ACK, this._lastSeqno);
		return true;
	}

	this._lastSeqno++;

	if (packetNum == num_packets-1) {
		flags |= this.FIN;
	}

	var data = msg.substring(packetNum * this.MAX_DATA_LEN, (packetNum+1) * this.MAX_DATA_LEN);
	var packet = this._zerofill(flags, 4) + this._zerofill(this._lastSeqno, 20) + data;

	this.log('sending raw packet: ' + packet);
	this.sendRawPacket(packet);

	return this._send(packetNum + 1, msg);
};

FragmentPacket.prototype._zerofill = function(num, width) {
	var retval = num.toString();
	var retval_len = retval.length;
	for (var i = 0; i < width - retval_len; i++) {
		retval = '0' + retval;
	}
	return retval;
};

var PostMessagePacket = function(receiver, receiveCallback, id, receiverId) {
	var that = this;
	this.receiver = receiver;
	this.receiveCallback = receiveCallback;
	this.id = id;


	this.receiverId = receiverId;
};

PostMessagePacket.prototype.createListener = function() {
	var that = this;

	var listener = function(e) {

		if (!that.id) {
			that.id = e.data;
			return;
		}


		var id = e.data.split(';')[0];
		if (id !== that.id) {
			return;
		}
		var data = e.data.substring(e.data.indexOf(';') + 1);

		that.receiveCallback(data);
	};

	if (typeof window.attachEvent == 'function') {
		window.attachEvent('onmessage', listener);
	} else if (typeof window.addEventListener == 'function') {
		window.addEventListener('message', listener, false);
	} else {
		throw new Error('No method found to create event listener for PostMessagePacket.');
	}
};

PostMessagePacket.prototype.send = function(msg) {



	var needs_reget = false;
	try {
		if (typeof this.receiver.id == 'undefined' || typeof this.receiver.postMessage == 'undefined') {
			needs_reget = true;
		}
	} catch(e) {


	}
	if (needs_reget && typeof this.receiverId != 'undefined') {
		this.receiver = document.getElementById(this.receiverId).contentWindow;
	}

	var packet;
	if (!msg) {

		packet = this.id;
	} else {
		packet = this.id + ';' + msg;
	}
	this.receiver.postMessage(packet, '*');
};

PostMessagePacket._last_unique_id = null;
PostMessagePacket._get_unique_id = function() {
	var id = (new Date()).getTime();
	if (id == PostMessagePacket._last_unique_id) {
		id++;
	}
	PostMessagePacket._last_unique_id = id;
	return id.toString();
};

var JsonRpc = function() {

	this.ids = {};

	this.objectToJSON = function(obj) {
		var json = '';
		var results = [];

		if (obj === undefined || obj === null) {
			return 'null';
		}

		switch (obj.constructor) {
			case Object:
				for (var property in obj) {
					if (obj.hasOwnProperty(property)) {
						results.push(this.objectToJSON(property) + ': ' + this.objectToJSON(obj[property]));
					}
				}
				json = '{' + results.join(', ') + '}';
				break;
			case Array:
				for (var i = 0; i < obj.length; i++) {
					results.push(this.objectToJSON(obj[i]));
				}
				json = '[' + results.join(', ') + ']';
				break;
			case Number:
			case Boolean:
				json = obj.toString();
				break;
			case String:

				var specialChars = {'\b': '\\b', '\t': '\\t', '\n': '\\n', '\f': '\\f', '\r': '\\r', '\\': '\\\\'};

				json = obj.replace(/[\x00-\x1f\\]/g, function(match) {
					var ch = specialChars[match];
					return ch ? ch : '\\u00' + match.charCodeAt().toPaddedString(2, 16);
				});

				json = '"' + json.replace(/"/g, '\\"') + '"';
				break;
			default:

				json = 'null';
				break;
		}

		return json;
	};

	this.createHandler = function(send_func, registered_funcs) {
		var that = this;
		var handler = function(message) {

			try {
				var rpc = eval('(' + message + ')');
			} catch(e) {
				alert('bad JSON: ' + message);
				return;
			}
			if (rpc.method) {

				if (!registered_funcs[rpc.method]) {
					return;
				}

				var retval = registered_funcs[rpc.method].apply(null, rpc.params);
				if (rpc.id) {
					var response = {
						result: retval,
						error: null,	// TODO
						id: rpc.id
					};
					send_func(that.objectToJSON(response));
				}
			} else if(rpc.result) {

				if (!that.ids[rpc.id]) {
					return;
				}

				that.ids[rpc.id](rpc.result);
				delete that.ids[rpc.id];
			}
		};
		return handler;
	};

	this.execute = function(send_func, method, params, response_callback) {
		response_callback = response_callback || null;
		var id = (response_callback) ? (new Date()).getTime() : null;

		var request = {
			method: method,
			params: params,
			id: id
		};

		send_func(this.objectToJSON(request));

		if (id) {
			this.ids[id] = response_callback;
		}
	};
};
JsonRpc = new JsonRpc();

var ParentMessenger = function(childUrl, receiverUrl, container, receiveCallback) {


	if (navigator.userAgent.indexOf('Safari') >= 0 && parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf('Version/') + 8), 10) == 3) {
		throw new Error("unsupported.");
	} else if (window.opera) {
		throw new Error("unsupported.");
	}



	if (!receiverUrl &&
		navigator.userAgent.indexOf('Gecko') >= 0 &&
		parseFloat(navigator.userAgent.slice(navigator.userAgent.indexOf('rv:') + 3, navigator.userAgent.indexOf('rv:') + 6)) < 1.9) {
		throw new Error("unsupported.");
	}


	if (/msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent)) {


		if (document.domain == window.location.hostname) {
			receiverUrl = '';
		}
	}

	var that = this;
	this.childUrl = childUrl;
	this.receiverUrl = receiverUrl;
	this.container = container || document.body;

	this.packetHandler = null;


	this._ready = false;
	this._error = false;


	var _createReceiverForFragmentPacket = function() {

		that.receiver = document.createElement('iframe');
		that.receiver.src = receiverUrl;
		that.receiver.id = 'receiver_' + (new Date()).getTime();
		that.receiver.name = that.receiver.id;

		that.receiver.frameBorder = '0';
		that.receiver.frameSpacing = '0';
		that.receiver.style.borderStyle = 'none';

		var receiver_onload = function() {
			var receiver = document.getElementById(that.receiver.id).contentWindow;

			try {
				receiver.document.body.innerHTML = '';
			} catch(e) {

				that._error = true;
			}
			receiver.document.body.style.padding = '0px';
			receiver.document.body.style.margin = '0px';

			var child = receiver.document.createElement('iframe');
			child.id = 'child';
			child.name = 'child';
			child.src = that.childUrl;

			child.frameBorder = '0';
			child.frameSpacing = '0';
			child.style.borderStyle = 'none';
			child.style.width = '100%';
			child.style.height = '100%';
			receiver.document.body.appendChild(child);

			that.child = receiver.document.getElementById('child').contentWindow;
			that.receiver = receiver;

			that.packetHandler = new FragmentPacket(that.receiver, that.child, that.childUrl, false, receiveCallback);

			that._listener = that.packetHandler.createListener();

			that.packetHandler.sendFlag(that.packetHandler.READY, 0);

			that._ready = true;
		};

		that.receiver.onreadystatechange = function() {
			if (this.readyState == 'complete') {
				receiver_onload();
			}
		};

		that.receiver.onload = receiver_onload;







		if (Dsq.Utils.ie) {
			if (that.container.clientWidth === 0) {

				var _waitForWidth = function() {
					if (that.container.clientWidth > 0) {
						Dsq.Utils.fixIframesIE(that.container.id);
					} else {
						window.setTimeout(_waitForWidth, 100);
					}
				};
				_waitForWidth();

				that._once = false;
				that.receiver.onresize = function() {
					if (!that._once) {
						Dsq.Utils.fixIframesIE(that.container.id);
					}
					that._once = true;
				};
			}
		}

		that.container.appendChild(that.receiver);
	};


	var _createReceiverForPostMessage = function() {

		var receiver_onload = function() {

			that.packetHandler.send();
			that._ready = true;
		};

		var id = PostMessagePacket._get_unique_id();
		var receiverId = 'child_' + id;


		ParentMessenger['_receiver_onload_' + receiverId] = receiver_onload;

		that.container.innerHTML += '<iframe ' +
			'src="' + childUrl + '" ' +
			'id="' + receiverId + '" ' +
			'name="' + receiverId + '" ' +
			'onload="ParentMessenger._receiver_onload_' + receiverId +'();" ' +
			'></iframe>';

		that.receiver = document.getElementById(receiverId).contentWindow;
		that.packetHandler = new PostMessagePacket(that.receiver, receiveCallback, id, receiverId);
		that._listener = that.packetHandler.createListener();
	};

	if (typeof window.postMessage == 'function') {
		_createReceiverForPostMessage();
	} else {
		_createReceiverForFragmentPacket();
	}

};

ParentMessenger.prototype.sendMessage = function(message) {
	var that = this;
	if (!this._ready) {

		window.setTimeout(function() { that.sendMessage(message); }, 10);
		return;
	}
	this.packetHandler.send(message);
	return true;
};

Dsq.NewFrames = function(url) {
	this.url = url;
};

Dsq.NewFrames.prototype.init = function(onFailure) {
	var that = this;

	try {
		this.messenger = new ParentMessenger(this.url, Dsq.jsonData.integration.receiver_url, this.container, this.receive_callback);
	} catch(e) {
		if (typeof onFailure == 'function') {
			onFailure();
		}
	}

	if (typeof onFailure == 'function') {
		var iId = window.setInterval(function() {
			if (typeof that.messenger == 'undefined') {
				window.clearInterval(iId);
				return;
			}
			if (that.messenger._ready) {
				window.clearInterval(iId);
			} else if (that.messenger._error) {
				window.clearInterval(iId);
				onFailure();
			}
		}, 10);
	}
};

Dsq.NewFrames.prototype._execute = function(method, args, callback) {
	var that = this;
	if (typeof that.messenger == 'undefined') {
		return false;
	}
	JsonRpc.execute(
		function(msg) { that.messenger.sendMessage(msg); },
		method,
		args || [],
		callback);
	return true;
};

Dsq.ReplyFrame = function(container, parent_post_id) {
	var that = this;
	this.container = container;
	this.parent_post_id = parent_post_id;

	var sendFunc = function(msg) {

		Dsq.Debug.log('Dsq.ReplyFrame.sendFunc');
		that.messenger.sendMessage(msg);
	};


	var postComment_onSuccess = function(response) {
		Dsq.jsonData.posts[response.message.id] = response.message.post_meta;
		if (!Dsq.jsonData.users[response.message.post_meta.user_key]) {
			Dsq.jsonData.users[response.message.post_meta.user_key] = response.message.user_meta;
		}


		var reply_position = (typeof(disqus_insert_wrt_sort) == 'undefined' 
			? (Dsq.jsonData.forum.reply_position ? -1 : null) 
			: (Dsq.jsonData.request.sort == 2 ? null : -1));
		
		if (response.message.post_meta.approved) {
			Dsq.Post.insert(response.message.post_meta.parent_post_id || reply_position, response.message.id, response.message.post_meta.message);
		}

		Dsq.Templates.postComment_onSuccess(response, parent_post_id, response.message.id);
	};

	var postComment_onFailure = function(response) {
		Dsq.Popup.popModal(response.message, 'Error');
		Dsq.Templates.postComment_onFailure(response, parent_post_id, response.message.id);
	};

	var editComment_onSuccess = function(response) {
		var post_id = parent_post_id;
		var message = Dsq.$('dsq-comment-message-' + post_id);
		
		message.innerHTML = response.message;
		Dsq.Templates.toggleEdit(post_id);
		Dsq.Templates.setLoadingButton(false);
	};
	
	var editComment_onFailure = function(response) {
		var post_id = parent_post_id;
		
		Dsq.Popup.popModal('Sorry, there was an error editing this comment.', 'Edit Error');
		Dsq.Templates.toggleEdit(post_id);
		Dsq.Templates.setLoadingButton(false);
	};

	var getUserByEmail_onSuccess = function(response) {
		var msg = response.message;
		var fields = Dsq.Templates.getFormFields(parent_post_id);

		if (msg.username) {

			Dsq.Templates.lightboxAuthenticate(parent_post_id, 'login', {
				'username': msg.username,
				'display_name': msg.display_name,
				'avatar_url': msg.avatar_url,
				'verified': msg.verified,
				'email': fields.email.value
			});
		} else {

			Dsq.Templates.lightboxAuthenticate(parent_post_id, 'register');
		}
	};

	var validateAuth_onSuccess = function(response, auth_choice) {
		Dsq.Templates.postComment(parent_post_id, null, true, auth_choice);
	};

	var validateAuth_onFailure = function(response, auth_choice) {
		var pid = parent_post_id ? '-' + parent_post_id : '';
		var msg = response.message;

		if (auth_choice == 'register') {
			var fields = ['email', 'username', 'password'];

			for (var i = 0; i < fields.length; i++) {
				var field = fields[i];
				var errorDiv = Dsq.$('dsq-' + field + '-errors' + pid);

				if (msg[field]) {
					errorDiv.innerHTML = msg[field];
				} else {
					errorDiv.innerHTML = '';
				}
			}
		} else if (auth_choice == 'login') {
			Dsq.$('dsq-lightbox-errors' + pid).innerHTML = '<p>We couldn\'t log you in. Please verify your login.</p>';
		}
		
		Dsq.Templates.setLoadingButton(false);
	};

	this.receive_callback = JsonRpc.createHandler(sendFunc, {
		'postComment.onSuccess': postComment_onSuccess,
		'postComment.onFailure': postComment_onFailure,
		'editComment.onSuccess': editComment_onSuccess,
		'editComment.onFailure': editComment_onFailure,		
		'getUserByEmail.onSuccess': getUserByEmail_onSuccess,
		'validateAuth.onSuccess': validateAuth_onSuccess,
		'validateAuth.onFailure': validateAuth_onFailure,
		'reload': function() { window.location.reload(); }
	});

	this.url = Dsq.Urls.REPLY +
		'?' + (new Date()).getTime() +
		'&f=tpreg' +
		'&t=towing_scam_the_day_after' +
		'&ff=' + Dsq.Thread.ff +
		'&default_text=' + disqus_default_text +
		'&ifrs=' + encodeURIComponent(disqus_iframe_css);
	if (this.parent_post_id) {
		this.url += '&parent_post=' + this.parent_post_id;
	}
};

Dsq.ReplyFrame.prototype = new Dsq.NewFrames(Dsq.ReplyFrame.url);

Dsq.ReplyFrame.prototype.post = function(author_name, author_email, author_url, authenticate, sharing_services, subscribe) {
	this._execute('postComment', [author_name, author_email, author_url, authenticate, sharing_services, subscribe]);
};

Dsq.ReplyFrame.prototype.edit = function(post_id, message) {
	this._execute('editComment', [post_id, message]);
};

Dsq.ReplyFrame.prototype.setState = function(parent_post_id, depth) {
	this._execute('setState', [parent_post_id, depth]);
};

Dsq.ReplyFrame.prototype.getUserByEmail = function(email) {
	this._execute('getUserByEmail', [email]);
};

Dsq.ReplyFrame.prototype.validateAuth = function(auth_choice, email, username, password) {
	this._execute('validateAuth', [auth_choice, email, username, password]);
};

Dsq.ReplyFrame.prototype.authenticateFacebook = function(session, forum_url) {
	this._execute('authenticateFacebook', [session, forum_url]);
};

	Dsq.Facebook = function() {
	var that = this;

	var handleSessionData = function(session) {

		var forum_url = Dsq.jsonData.forum.url;




		if (typeof disqus_facebook_forum != 'undefined') {
			forum_url = disqus_facebook_forum;
		}
		Dsq.frames.reply_0.authenticateFacebook(session, forum_url);
	};

	var onLogin = function() {
		FB.Connect.getSignedPublicSessionData(handleSessionData);
	};

	this.login = function() {
		FB.Connect.requireSession(onLogin, true);
	};
};
Dsq.Facebook = new Dsq.Facebook();


	






Dsq.Themes = {};

Dsq.Themes.narcissus = new function() {
	this.addPostContainer = 'dsq-form-area';
	this.textareaContainer = 'dsq-textarea-wrapper';



	
	this.header = function() {
		var comments_count, total_posts, num_posts;
		var html = '';
		var missing_perm_tmpl;

		if (Dsq.jsonData.request.missing_perm) {
			missing_perm_tmpl = Dsq.Templates.missingPermissions();
			if (missing_perm_tmpl) {
				html += '<div class="dsq-missing-permissions">' + missing_perm_tmpl + '</div>';
			}
		}

		total_posts = Dsq.jsonData.thread.total_posts;
		num_posts = Dsq.jsonData.thread.num_posts;

		if (total_posts) {
			comments_count = Dsq.FmtStrings.SHOWING_COMMENTS_FULL(total_posts, num_posts);
		} else {
			comments_count = Dsq.FmtStrings.SHOWING_COMMENTS_WITHOUT_PAGINATION(num_posts);
		}

		html += ' \
		<div id="dsq-comments-title"> \
			<h3>' + comments_count + '</h3> \
		</div> \
		';

		html += ' \
		<div class="dsq-options"> \
			<span class="dsq-item-sort">'
				+ Dsq.Strings.SORT_BY + ' \
				<select id="dsq-sort-select" onchange="Dsq.Thread.sortBy(this.value);"> \
					<option value="hot" ' + (Dsq.jsonData.request.sort == 4 ? 'selected="selected"' : '') + '>' + Dsq.Strings.POPULAR_NOW + '</option> \
					<option value="best" ' + (Dsq.jsonData.request.sort == 3 ? 'selected="selected"' : '') + '>' + Dsq.Strings.BEST_RATING + '</option> \
					<option value="newest" ' + (Dsq.jsonData.request.sort == 2 ? 'selected="selected"' : '') + '>' + Dsq.Strings.NEWEST_FIRST + '</option> \
					<option value="oldest" ' + (Dsq.jsonData.request.sort == 1 ? 'selected="selected"' : '') + '>' + Dsq.Strings.OLDEST_FIRST + '</option> \
				</select> \
				&nbsp; \
			</span> \
			<span class="dsq-subscribe-email"> \
				<img src="http://media.disqus.com/images/embed/email.png" style="width:12px;height:12px;vertical-align:middle"> \
				<span id="dsq-subscribe">'
					+ (Dsq.jsonData.context.subscribed
						? '<a href="#" onclick="Dsq.Thread.subscribe(0); return false">' + Dsq.Strings.UNSUBSCRIBE + '</a>'
						: '<a href="#" onclick="Dsq.Thread.subscribe(1); return false">' + Dsq.Strings.SUBSCRIBE_BY_EMAIL + '</a>')
				+ '</span> \
			</span> \
			<span class="dsq-subscribe-rss" style="width:12px;height:12px;vertical-align:middle"> \
				<img src="http://media.disqus.com/images/embed/bullet-feed.png" alt="" /> \
				<a href="http://disqus.com/forums/tpreg/towing_scam_the_day_after/latest.rss">' + Dsq.Strings.SUBSCRIBE_BY_RSS + '</a> \
			</span> \
		</div> \
		';

		
		
			html += Dsq.Templates.realtime();
			html += Dsq.Templates.showThreadSettings();
			html = Dsq.Templates.postBox() + html;

		
		

		return html;

	};
	
	this.footer = function() {
		var html = '';

		html += Dsq.Templates.pagination();


		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		


		if (Dsq.jsonData.request.is_global_moderator) {
 			html += ' \
				<div class="dsq-global-moderator-extras">'
					+ '<strong>shortname:</strong> ' + Dsq.jsonData.forum.url
					+ '<strong>thread id:</strong> ' + Dsq.jsonData.thread.id
					+ '<strong>thread slug:</strong> ' + Dsq.jsonData.thread.slug
				+ '</div> \
			';
		}

		return html;
	};
	
	this.realtime = function() {
		var html = '';
		
		if (Dsq.jsonData.realtime_enabled) {
			html += '<div id="dsq-realtime-options" class="dsq-options">'
					 + Dsq.Strings.REALTIME_UPDATING_IS + ' <strong id="dsq-realtime-status" style="text-transform: lowercase">' + Dsq.Strings.ENABLED + '</strong>. \
					 <a href="#" id="dsq-realtime-toggle" style="text-transform: capitalize"></a> \
					</div>';
		}

		if (!Dsq.jsonData.forum.streaming_realtime) {
			html += ' \
				<div style="display: none" id="dsq-realtime-alert" class="dsq-realtime-alert"><span id="dsq-realtime-queued"></span> <a href="#" id="dsq-realtime-show"></a></div> \
			';
		}
		
		return html;
	};

	this.showThreadSettings = function() {
		if (!Dsq.jsonData.request.is_moderator) {
			return '';
		}

		html = '<div id="dsq-thread-settings" class="dsq-thread-settings">' + Dsq.Strings.MODERATOR_OPTIONS;
		html += '<a href="#" onclick="Dsq.Thread.showSettings(); return false;">' + Dsq.Strings.SETTINGS + '</a>';
		if (Dsq.jsonData.forum.reactions_enabled && Dsq.jsonData.reactions.length === 0) {
			html += '<a href="#" onclick="Dsq.Reaction.reportMissingReactions(); return false;">'
						+ Dsq.Strings.REPORT_MISSING_REACTIONS
						+ '</a>';
		}
		html +='</div>';

		return html;
	};

	this.postBox = function(post_id, use_fallback_iframe) {


		var html;
		var display_sharing_options = Dsq.jsonData.request.is_authenticated;

		if (!Dsq.jsonData.request.is_authenticated && Dsq.jsonData.forum.disqus_auth_disabled && !Dsq.jsonData.forum.allow_anon_post) {
			return '';
		}
		
		if (Dsq.jsonData.request.is_remote) {


			if (!Dsq.jsonData.request.sharing.hasOwnProperty(Dsq.jsonData.request.remote_domain)) {
				display_sharing_options = false;
			}
		}
		
		if (post_id) {
			var _meta = Dsq.jsonData.posts[post_id];
			var userData = Dsq.jsonData['users'][_meta.user_key];				
		}
		
		var pid = post_id ? '-' + post_id : '';

		var _requestUserInfo = function() {
			var html;



			var user_has_email = false;

			html = '<div class="dsq-request-user-info"> <!-- // If authenticated --> \
				<a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.LOGOUT + '?ctkn=' + Dsq.CSRF_TOKEN + '" class="dsq-request-user-logout">' + Dsq.Strings.LOGOUT + '</a> \
				<table> \
					<tr> \
						<td rowspan="2">'
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '<a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE + '">' : '')
								+ '<img src="' + Dsq.Urls.REQUEST_USER_AVATAR + '" width="48" height="48" class="dsq-request-user-avatar">'
							+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '</a>' : '')
						+ '</td> \
						<td class="dsq-request-user-name">'
								+ (Dsq.jsonData.request.is_remote
									 ? '<span class="dsq-badge-small dsq-badge-' + Dsq.jsonData.request.remote_domain + '">' + Dsq.jsonData.request.remote_domain + '</span>'
									 : (Dsq.jsonData.request.is_verified
											? '<span class="dsq-badge-small dsq-badge-verified">Verified</span>'
											: '<span class="dsq-badge-small dsq-badge-registered">Registered</span>'))
							+ ' <a href="' + Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE + '">' + Dsq.jsonData.request.display_username + '</a>'
							+  (Dsq.jsonData.request.is_remote && user_has_email ? ' <small>(<a href="#" onclick="Dsq.Popup.remoteAccountSettings(); return false;">change settings</a>)</small>' : '')
							+  (!Dsq.jsonData.request.is_remote && !Dsq.jsonData.forum.disqus_auth_disabled ? ' <small>(<a href="' + Dsq.jsonData.settings.disqus_url + '/profile/info/" target="_blank">change name</a> or <a href="' + Dsq.jsonData.settings.disqus_url + '/profile/avatar/" target="_blank">picture</a>)</small>' : '')
						+ '</td> \
					</tr> \
					<tr> \
						<td class="dsq-request-user-stats"> \
							<span><big>' + Dsq.jsonData.request.comments_count + '</big> ' + (Dsq.jsonData.request.comments_count == 1 ? 'comment' : 'comments') + '</span> \
							<span><big>' + Dsq.jsonData.request.likes_count + '</big> ' + (Dsq.jsonData.request.likes_count == 1 ? 'like' : 'likes') + '</span> \
							<span><big>' + Dsq.jsonData.request.points + '</big> ' + (Dsq.jsonData.request.points == 1 ? 'point' : 'points') + '</span> \
						</td> \
					</tr> \
				</table> \
			</div> \
			';
			return html;
		};

		var _loginOptions = function() {
			var html;
			html = ' \
			<div class="dsq-authenticate"> \
				<p class="dsq-autheneticate-copy">'
				+ (Dsq.jsonData.forum.allow_anon_post
					? Dsq.Strings.YOU_ARE_COMMENTING_AS_A + ' <a class="dsq-help" title="Click for more information" href="#" onclick="Dsq.Popup.helpBadges(); return false">Guest</a>. ' + Dsq.Strings.OPTIONAL + ': ' + Dsq.Strings.LOGIN_BELOW + '.'
					: Dsq.Strings.REQUIRED + ': ' + Dsq.Strings.PLEASE_LOGIN_BELOW_TO_COMMENT + '.')
				+ '</p> \
				<ul class="dsq-login-buttons">'
					+ (!Dsq.jsonData.forum.disqus_auth_disabled ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Popup.login(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-disqus.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_fb_connect ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Facebook.login(); return false;"><img src="http://media.disqus.com/images/themes/narcissus/login-facebook.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_twitter_signin ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Twitter.startTwitterConnect(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-twitter.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_openid ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.OpenID.requestURL(); return false" ><img src="http://media.disqus.com/images/themes/narcissus/login-openid.gif" /></a></li>' : '')
					+ (Dsq.jsonData.context.use_yahoo ? '<li class="dsq-login-button"><a href="#" onclick="Dsq.Yahoo.startYahooConnect(); return false"><img src="http://media.disqus.com/images/themes/narcissus/login-yahoo.gif" /></a></li>' : '')
				+ '</ul> \
			</div> \
			';
			return html;
		};

		if (!Dsq.jsonData.context.show_reply) {


			if (!Dsq.jsonData.request.is_authenticated) {



				return '<div id="dsq-form-area" style="display:none"><div id="dsq-textarea-wrapper"></div></div>' + _loginOptions();
			} else {
				return '';
			}
		}

		html = ' \
		<div id="' + (post_id 
			? 'dsq-reply-post-' + post_id
			: 'dsq-new-post')
		 	+ '" class="dsq-post-area"> \
			<div class="dsq-dc-logo"> \
				<a href="http://disqus.com/comments" target="_blank"><img src="http://media.disqus.com/images/themes/narcissus/disqus-logo.png"></a> \
			</div>'
			+ (post_id 
				? '<h3>' + Dsq.Strings.REPLYING_TO + ' ' + userData.display_name + '</h3>'
				: '<h3>' + Dsq.Strings.ADD_NEW_COMMENT + '</h3>')
			+ (Dsq.jsonData.request.is_authenticated 
				? _requestUserInfo()
				: _loginOptions() )
			+ '<div id="dsq-form-area' + pid + '">'
			+ '<div class="dsq-textarea"> \
				<div class="dsq-textarea-wrapper" id="dsq-textarea-wrapper' + pid + '"></div> \
			</div>'
			+ (!Dsq.jsonData.request.is_authenticated
			? ' \
			<div class="dsq-post-fields"> \
				<form action="." method="GET" onsubmit="Dsq.Templates.postComment(' + post_id + ', this, false); return false;"> \
				<table> \
					<tr> \
						<td class="dsq-post-fields-left"><div class="dsq-input-wrapper"><input id="dsq-field-name' + pid + '" type="text" value="' + (disqus_def_name ? disqus_def_name : (Dsq.jsonData.session.name ? Dsq.jsonData.session.name : Dsq.Strings.NAME + '" class="dsq-placeholder')) + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'name\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'name\')" /></div></td> \
						<td class="dsq-post-fields-right"><div class="dsq-input-wrapper"><input id="dsq-field-website' + pid + '" type="text" value="' + (Dsq.jsonData.session.url ? Dsq.jsonData.session.url : Dsq.Strings.WEBSITE + ' (' + Dsq.Strings.OPTIONAL.toLowerCase() + ')" class="dsq-placeholder') + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'website\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'website\')" /></div></td> \
					</tr> \
					<tr> \
						<td class="dsq-post-fields-left"><div class="dsq-input-wrapper"><input id="dsq-field-email' + pid + '" type="text" value="' + (disqus_def_email ? disqus_def_email : (Dsq.jsonData.session.email ? Dsq.jsonData.session.email : Dsq.Strings.EMAIL + '" class="dsq-placeholder')) + '" onfocus="Dsq.Templates.handlePlaceholder(event, this, \'email\')" onblur="Dsq.Templates.handlePlaceholder(event, this, \'email\')" /></div></td> \
						<td class="dsq-post-fields-right"> \
							<div class="dsq-subscribe"> \
								<a href="#" onclick="Dsq.Templates.chooseSubscribe(' + post_id + '); return false" class="dsq-subscribe-menu"><span id="dsq-subscribe-select' + pid + '">' + (Dsq.jsonData.request.subscribe_on_post ? Dsq.Strings.SUBSCRIBE_TO_ALL_COMMENTS_BY_EMAIL : Dsq.Strings.DO_NOT_SUBSCRIBE_TO_COMMENTS) + '</span> <small>&#9660;</small></a> \
								<ul class="dsq-panel" id="dsq-subscribe-menu' + pid + '"> \
									<li><a href="#" onclick="Dsq.Templates.setSubscribe(2, this, ' + post_id + '); return false">Subscribe to all comments by email</a></li> \
									<li><a href="#" onclick="Dsq.Templates.setSubscribe(0, this, ' + post_id + '); return false">Do not subscribe to comments</a></li> \
								</ul> \
								<input id="dsq-subscribe-on-post' + pid + '" type="hidden" value="' + Dsq.jsonData.request.subscribe_on_post + '" /> \
							</div> \
						</td> \
					</tr> \
				</table> \
				</form> \
			</div>'
			: '')
			+ '<div class="dsq-post-footer"> \
				<div class="dsq-sharing-options" ' + (!display_sharing_options ? 'style="display:none;"' : '') + '> \
					<button class="dsq-button-small" onfocus="document.getElementById(\'dsq-post-button' + pid + '\').focus();"><span>' + Dsq.Strings.SHARING_OPTIONS + ' <small>&#9660;</small></span></button> \
					<div class="dsq-panel"> '
						+ (Dsq.jsonData.request.sharing.twitter !== undefined
								&& Dsq.jsonData.request.sharing.twitter.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-twitter' + pid + '"'
								  + (Dsq.jsonData.request.sharing.twitter.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-twitter' + pid + '">' + Dsq.Strings.SHARE_ON + ' Twitter</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.facebook
								&& (Dsq.jsonData.request.sharing.facebook.enabled === true ||
										(Dsq.jsonData.request.is_remote && Dsq.jsonData.request.remote_domain == 'facebook'))
							? '<div><input type="checkbox" id="dsq-sharing-facebook' + pid + '"'
									+ (Dsq.jsonData.request.sharing.facebook.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-facebook' + pid + '">' + Dsq.Strings.SHARE_ON + ' Facebook</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.yahoo !== undefined
								&& Dsq.jsonData.request.sharing.yahoo.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-yahoo' + pid + '"'
									+ (Dsq.jsonData.request.sharing.yahoo.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-yahoo' + pid + '">' + Dsq.Strings.SHARE_ON + ' Yahoo!</label> \
								</div>'
							: '')
						+ (Dsq.jsonData.request.sharing.tumblr !== undefined
								&& Dsq.jsonData.request.sharing.tumblr.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-tumblr' + pid + '"'
									+ (Dsq.jsonData.request.sharing.tumblr.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-tumblr' + pid + '">' + Dsq.Strings.SHARE_ON + ' Tumblr</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.wordpress !== undefined
								&& Dsq.jsonData.request.sharing.wordpress.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-wordpress' + pid + '"'
									+ (Dsq.jsonData.request.sharing.wordpress.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-wordpress' + pid + '">' + Dsq.Strings.SHARE_ON + ' Wordpress</label> \
								 </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.movabletype !== undefined
							  && Dsq.jsonData.request.sharing.movabletype.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-movabletype' + pid + '"'
									+ (Dsq.jsonData.request.sharing.movabletype.auto === true ? 'checked=true' : '') + '/> \
									<label for="dsq-sharing-movabletype' + pid + '">' + Dsq.Strings.SHARE_ON + ' Movable Type</label> \
							   </div>'
							: '')
						+ (Dsq.jsonData.request.sharing.typepad !== undefined
							  && Dsq.jsonData.request.sharing.typepad.enabled === true
							? '<div><input type="checkbox" id="dsq-sharing-typepad' + pid + '"'
									+ (Dsq.jsonData.request.sharing.typepad.auto === true ? 'checked=true' : '') + '/> \
								  <label for="dsq-sharing-typepad' + pid + '">' + Dsq.Strings.SHARE_ON + ' TypePad</label> \
							   </div>'
							: '')
						+ '<div><a href="' + Dsq.jsonData.settings.disqus_url + '/profile/connections/" target="_blank" class="dsq-configure-options">' + Dsq.Strings.CONFIGURE_OPTIONS + '</a></div>'
					+ '</div> \
				</div>'
				+ '<button class="dsq-button" id="dsq-post-button' + pid + '" onclick="Dsq.Templates.postComment(' + post_id + ', this, false)"><span>' + Dsq.Strings.POST_AS + ' '
				+ (Dsq.jsonData.request.display_username
					? Dsq.jsonData.request.display_username
					: Dsq.Strings.GUEST)
				+ '</span></button>'
				+ (post_id
					? '<button class="dsq-button" id="dsq-cancel-button' + pid + '" onclick="Dsq.Post.toggleReply(' + post_id +', this)"><span>' + Dsq.Strings.CANCEL + '</span></button>'
					: '')
			+ '</div>'
			+ '</div>' // end dsq-form-area
		+ '</div> \
		';
		
		return html;
	};




	this.appendPost = function(post_id) {
		var html = '<div id="dsq-append-post-' + post_id + '"></div>';
		return html;
	};

	this.postPrependHeader = function(post_id) {
		var html;
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		
		html = ' \
		<table> \
			<tr> \
				<td id="dsq-header-avatar-' + post_id + '" class="dsq-header-avatar" onmouseover="Dsq.Post.dropProfile(' + post_id + ')"> \
					<a id="dsq-avatar-' + post_id + '" class="dsq-avatar" href="' + userData.url + '" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">'
					+ (Dsq.jsonData.forum.show_avatar
					? '<img src="' + Dsq.jsonData.users[_meta.user_key].avatar + '" alt="" />'
					: '')
				+ '</a> \
				</td> \
				<td class="dsq-comment-header-meta"> \
		';

		
		return html;
	};
	
	this.postAppendHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var html;
		var parent_display_name = '';
		
		if(_meta.parent_post_id) {

			var _parent_meta = Dsq.jsonData.posts[_meta.parent_post_id];

			if (_parent_meta) {
				var parentUserData = Dsq.jsonData['users'][_parent_meta.user_key];
				parent_display_name = parentUserData.display_name;
			}
		}

		html = ' \
		<img src="http://media.disqus.com/images/themes/narcissus/moderator.png" class="dsq-moderator-star" title="Moderator" /> \
		<span class="dsq-comment-header-time"><a href="#comment-' + post_id + '" onclick="Dsq.Popup.permalink(' + post_id + ')" title="Permalink">' + (_meta.is_realtime ? Dsq.Strings.JUST_NOW : _meta.date) + '</a></span> '
		+ (_meta.parent_post_id && parent_display_name
			? '<a href="#comment-' + _meta.parent_post_id + '" title="Jump to comment">in reply to ' + parent_display_name + '</a>'
			: '')
		+ '</td> \
		<td id="dsq-like-pts-' + post_id + '" class="dsq-comment-header-likes">'
		+ (_meta.points
			? _meta.points + Dsq.Utils.pluralize(_meta.points, ' person', ' people') + ' liked this.'
			: '')
		+ '</td> \
		</tr> \
		</table> \
		';
		return html;
	};

	this.preBody = function(post_id) {
		var html = '';
		return html;
	};

	this.postFooter = function(post_id) {
		var html;
		var _meta = Dsq.jsonData.posts[post_id];
		if(_meta.killed || !_meta.approved) { return ''; }
		
		html = ' \
		<div class="dsq-comment-footer" id="dsq-comment-footer-' + post_id + '"> \
			<div class="dsq-comment-footer-left">'
				+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator
					? '<a href="#" onclick="Dsq.Templates.moderateOptions(' + post_id+ '); return false">' + Dsq.Strings.MODERATE + '</a>'
					: '')
				+ '<a href="#" id="dsq-post-report-' + post_id + '" class="dsq-post-report" onclick="Dsq.Post.report(' + post_id + ', false); return false;">' + Dsq.Strings.FLAG + '</a> \
			</div> \
			<div class="dsq-comment-footer-right">'
				+ (_meta.votable 
					? '<span id="dsq-like-' + post_id + '" class="dsq-like">'
					+ (!_meta.up_voted
						? '<button class="dsq-button-small" onclick="Dsq.Post.rate(this, ' + post_id + ', 1)" >Like</button>'
						: 'You liked this.&nbsp;&nbsp;')
					+ '</span>'
					: '')
				+ (_meta.can_reply && !_meta.has_replies && _meta.from_request_user
					? '<button class="dsq-button-small dsq-post-edit" onclick="Dsq.Post.edit(this, ' + post_id + ')" >' + Dsq.Strings.EDIT + '</button>'
					: '')
				+ (_meta.can_reply
					? '<span class="dsq-comment-footer-reply" id="dsq-comment-footer-reply-' + post_id + '" onclick="Dsq.Post.toggleReply(' + post_id +', this)"> \
						<button class="dsq-button-small">' + Dsq.Strings.REPLY + '</button> \
						<button class="dsq-comment-footer-reply-tab">' + Dsq.Strings.REPLY + '</button><span></span> \
					</span>'
					: '')
			+ '</div> \
		</div> \
		';
		
		return html;
	};



	
	this.showRetweets = function(id, limit, element_id /* Optional */) {
		var source, html = '';

		for (var i = 0, reaction; reaction = Dsq.jsonData.reactions[i]; i++) {
			if (reaction.id === id) {
				source = reaction.retweets;
			}
		}

		if (source) {
			if (limit === 0) {
				limit = source.length;
			}

			for (var j = 0; j < limit; j++) {
				var rt = source[j];
				html += '<a href="' + rt.url + '">' + rt.author_name + '</a>'	+ ((j === (limit - 1)) ? '.' : ', ');
			}
		}

		if (element_id === undefined) {
			return html;
		}

		var element = document.getElementById(element_id);
		element.innerHTML = html;
		return element;
	};

	this.showMoreReactions = function(reactions, has_more, start, limit) {
		var link = document.getElementById('dsq-show-more-reactions');
		var container = link.parentNode;
		container.removeChild(link);

		for (var i = 0, reaction; reaction = reactions[i]; i++) {
			var el = Dsq.Templates.generateReactionHTML(reaction);
			if (el) {
				container.innerHTML += el;
			}
		}

		if (has_more) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = start;
			var l = limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			container.innerHTML += '<li id="dsq-show-more-reactions" class="dsq-show-more-reactions"><button class="dsq-button-small" onclick="' + handler + '">Show more reactions</button></li>';
		}
	};

	this.generateReactionHTML = function(reaction) {
		if (reaction.body === null || reaction.body == '') {
			return;
		}

		if (reaction.author_name === '') {
			reaction.author_name = '&nbsp;';
		}

		if (reaction.url === '') {
			reaction.url = reaction.get_service_url;
		}

		var item = '<li class="dsq-comment dsq-reaction" id="dsq-reaction-' + reaction.id + '">'
			+ '<div class="dsq-comment-header"> \
			<table> \
			<tr> \
			<td class="dsq-header-avatar"> \
			';

		if (reaction.author_url && reaction.author_url !== '') {
			item += '<a target="_blank" href="' + reaction.author_url +'" class="dsq-avatar">';
		}

		if (reaction.avatar_url && reaction.avatar_url !== '') {
			item += '<img src="' + reaction.avatar_url + '"/>';
		} else {

			item += '<img src="' + Dsq.jsonData.media_url + '/images/noavatar92.png"/>';
		}

		var service_icon = (reaction.get_service_name == 'trackback' || reaction.get_service_name == 'pingback' ? 'rss' : reaction.get_service_name.replace(' ', ''));
		item += (reaction.author_url && reaction.author_url !== ''
				? '</a>'
				: '')
			+ '</td>'
			+ '<td><cite class="dsq-comment-cite">' + reaction.author_name + '</cite> <span class="dsq-comment-header-time">' + reaction.date_created + '</span></td>'
			+ '<td class="dsq-comment-header-likes"></td>'
			+ '</tr></table></div>' // end dsq-comment-header
			+ '<div class="dsq-reaction-header" \
				<table> \
					<tr> \
						<td class="dsq-reaction-header-left">'
							+ '<img class="dsq-service-icon" src="' + Dsq.jsonData.media_url + '/images/reactions/services/' + service_icon + '.png" />'
							+ ' From <a class="dsq-service-name" target="_blank" href="' + reaction.url + '">' + reaction.get_service_name + '</a> '
							+ 'via ' + (reaction.source == 'backtype' ? '<a href="http://backtype.com/">BackType</a>' : '<a href="' + reaction.source_url + '">UberVU</a>')
						+ '</td>'
						+ '<td class="dsq-reaction-header-right">';
			
			if(reaction.retweets) {
				var num_retweets = reaction.retweets.length;
				if (num_retweets > 0) {
					if (num_retweets == 1) {
						item += 'One more retweet from <a href="' + reaction.retweets[0].url + '">'  + reaction.retweets[0].author_name + '</a>';
					} else {
						item += (num_retweets + ' more retweets from ');
						item += '<span id="dsq-reaction-retweets-' + reaction.id + '">';
						var n_tweets = (num_retweets > 3) ? 3 : num_retweets;
						item += Dsq.Templates.showRetweets(reaction.id, n_tweets);
						if (n_tweets != num_retweets) {
							item += '</span> <a onclick="Dsq.Templates.showRetweets(' + reaction.id + ', 0, \'dsq-reaction-retweets-' + reaction.id + '\');'
								+ 'this.parentNode.removeChild(this); return false;" href="#">Show all</a>';
						}
					}
				}
			}	
			item += '</td></tr> \
			</table> \
			</div>' // end dsq-reaction-header
			+ '<div class="dsq-comment-body"> \
				<div class="dsq-comment-message">' + reaction.body + '</div>'
			+ '</div> \
			<div class="dsq-comment-footer"> \
				<div class="dsq-comment-footer-left"> \
				</div>'
				+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator 
					? ' \
					<div class="dsq-comment-footer-right"> \
						<button class="dsq-button-small dsq-hide-reaction" onclick="Dsq.Reaction.hide(' + reaction.id + ')">Hide</button> \
					</div>'
					: '')
			+ '</div>'
		item += '</li>'; /* Reaction HTML ends */
		return item;
	};

	this.reactions = function() {
		var html, reaction;

		if (Dsq.jsonData.reactions === undefined || Dsq.jsonData.reactions.length === 0) {
			return '';
		}

		html = '';
		for (var i = 0; reaction = Dsq.jsonData.reactions[i]; i++) {
			var item = Dsq.Templates.generateReactionHTML(reaction);
			if (item) {
				html += item;
			}
		}

		if (Dsq.jsonData.has_more_reactions) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = Dsq.jsonData.reactions_start;
			var l = Dsq.jsonData.reactions_limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			html += '<li id="dsq-show-more-reactions" class="dsq-show-more-reactions"><button class="dsq-button-small" onclick="' + handler + '">Show more reactions</button></li>';
		}

		return '<h3 id="dsq-reactions-title" class="dsq-h3-reactions">Reactions</h3><ul id="dsq-reactions" class="dsq-reactions">' + html + '</ul>';
	};
	
	this._popupGeneric = function(content) {
		return ' \
		<div class="dsq-popup-container"> \
			<table> \
				<tbody> \
					<tr> \
						<td class="dsq-popup-tl"></td><td class="dsq-popup-b"></td><td class="dsq-popup-tr"></td> \
					</tr> \
					<tr> \
						<td class="dsq-popup-b"></td> \
						<td class="dsq-popup-body"> \
							<div class="dsq-popup-content"> \
								<div class="dsq-popup-title"> \
									<button class="dsq-button-small" style="float:right" onclick="Dsq.Popup._closePopup(null, true)">Close</button>' 
									+ content['header'] 
								+ '</div>'
								+ content['body']
							+ '</div> \
							<div class="powered-by"><a href="http://disqus.com/comments/">Powered by <img src="http://media.disqus.com/images/embed/disqus-logo.png" alt="Disqus Comments" style="margin-bottom:-5px" /></a></div> \
						</td> \
						<td class="dsq-popup-b"></td> \
					</tr> \
					<tr> \
						<td class="dsq-popup-bl"></td><td class="dsq-popup-b"></td><td class="dsq-popup-br"></td> \
					</tr> \
				</tbody> \
			</table> \
		</div> \
		';
	};



	
	this.chooseSubscribe = function(post_id) {

		var pid = post_id ? '-' + post_id : '';
		var menu = Dsq.$('dsq-subscribe-menu' + pid);
		
		menu.style.display = menu.style.display == 'block' ? 'none' : 'block';
		
	};
	
	this.setSubscribe = function(value, el, post_id) {

		var pid = post_id ? '-' + post_id : '';
		var input = Dsq.$('dsq-subscribe-on-post' + pid);
		var select = Dsq.$('dsq-subscribe-select' + pid);
		var menu = Dsq.$('dsq-subscribe-menu' + pid);
		
		select.innerHTML = el.innerHTML;
		input.value = value;
		this.chooseSubscribe(post_id);
	};
	
	this.getFormFields = function(post_id) {

		var fields = {};
		var pid = post_id ? '-' + post_id : '';
		var name = Dsq.$('dsq-field-name' + pid);
		var email = Dsq.$('dsq-field-email' + pid);
		var website = Dsq.$('dsq-field-website' + pid);
		var username = Dsq.$('dsq-field-username' + pid);
		var password = Dsq.$('dsq-field-password' + pid);

		fields = {
			'name': name,
			'email': email,
			'website': website,
			'username': username,
			'password': password
		}
		
		return fields;
	}
	
	this.validateFields = function(post_id) {
		
		if(Dsq.jsonData.request.is_authenticated) { return true; }
		
		var fields = Dsq.Templates.getFormFields(post_id);
		
		var nameField = fields.name;
		var websiteField = fields.website;
		var emailField = fields.email;
		
		websiteField.value = (websiteField.value == Dsq.Templates.placeholder['website']) ? '' : websiteField.value;
		
		var v = [{

			validator: Dsq.Validators.name,
			value: nameField.value
		}, {

			validator: Dsq.Validators.email,
			value: emailField.value
		}, {

			validator: Dsq.Validators.url,
			value: websiteField.value
		}];
		
		return Dsq.Validators.validate(v, function(e) { Dsq.Popup.popModal(e, 'Oops...') } );
	};
	
	this.checkExistingUser = function(post_id) {
		var fields = Dsq.Templates.getFormFields(post_id);		
		Dsq.Popup.loading(post_id);
		
		if (post_id) {
			Dsq.frames['reply_' + post_id].getUserByEmail(fields.email.value);
		} else {
			Dsq.frames['reply_0'].getUserByEmail(fields.email.value);
		}
	};

	this.validateAuth = function(el_clicked, post_id, auth_choice) {
		var fields = Dsq.Templates.getFormFields(post_id);
		var email = fields.email ? fields.email.value : '';
		var username = fields.username ? fields.username.value : '';
		var password = fields.password ? fields.password.value : '';
		
		Dsq.Templates.setLoadingButton(el_clicked, post_id);
		
		if (post_id) {
			Dsq.frames['reply_' + post_id].validateAuth(auth_choice, email, username, password);
		} else {
			Dsq.frames['reply_0'].validateAuth(auth_choice, email, username, password);
		}
	};

	this.lightboxUpdateEmail = function(post_id, new_email) {
		var fields = Dsq.Templates.getFormFields(post_id);
		fields.email.value = new_email;
	};

	this.lightboxAuthenticate = function(post_id, auth_choice, auth_data) {
		var title, body;
		var pid = post_id ? '-' + post_id : '';

		if(typeof(auth_data) == 'undefined') {
			var auth_data = Dsq.Templates.getFormFields(post_id);
		}

		d = auth_data;

		switch(auth_choice) {
			case 'register':
				var suggestedUsername = d.name.value.replace(/[^a-zA-Z0-9-]/g,'').toLowerCase();
			
				title = Dsq.jsonData.forum.allow_anon_post ? 'Optional:' : 'Required:';
				title += ' Register a <img src="http://media.disqus.com/images/embed/disqus-profile.png" alt=Disqus Profile" />';

				body = ' \
				<ul class="dsq-lightbox-register-reasons"> \
				<li>Verify your comments</li> \
				<li>Edit and delete comments</li> \
				<li>Manage comments and replies</li> \
				</ul> \
				';

				body += ' \
				<div class="dsq-lightbox-auth-fields"> \
					<table> \
						<tr> \
							<td>Email</td> \
							<td><input type="text" value="' + d.email.value + '" onchange="Dsq.Templates.lightboxUpdateEmail(' + post_id + ', this.value)" /><div id="dsq-email-errors' + pid + '"></div></td> \
						</tr> \
						<tr> \
							<td>Username</td> \
							<td><input id="dsq-field-username' + pid + '" type="text" value="' + suggestedUsername + '"/><div id="dsq-username-errors' + pid + '"></div></td> \
						</tr> \
						<tr> \
							<td>Password</td> \
							<td><input id="dsq-field-password' + pid + '" type="password" /><div id="dsq-password-errors' + pid + '"></div></td> \
						</tr> \
					</table> \
					<div class="dsq-lightbox-switch-auth"><a href="#" onclick="Dsq.Templates.lightboxAuthenticate(' + post_id + ',\'login\'); return false">Login instead</a></div> \
				</div> \
				<div id="dsq-lightbox-errors' + pid + '" class="dsq-lightbox-errors"></div> \
				<div class="dsq-lightbox-submit"> \
					<div class="dsq-lightbox-auth-post"><button class="dsq-button" onclick="Dsq.Templates.validateAuth(this, ' + post_id + ',\'' + auth_choice + '\')">Register and Post comment</button></div>'
					+ (Dsq.jsonData.forum.allow_anon_post
						? '<div class="dsq-lightbox-auth-skip"><button class="dsq-button-small" onclick="Dsq.Templates.postComment(' + post_id + ', this, true)">Just post as a Guest</button></div>'
						: '')
				+ '</div> \
				';
				break;
			case 'login':
				title = Dsq.jsonData.forum.allow_anon_post ? 'Optional:' : 'Required:';
				title += ' Login to your <img src="http://media.disqus.com/images/embed/disqus-profile.png" alt=Disqus Profile" />';
				body = '';
				
				if(d.avatar_url) {
					body += '<div class="dsq-lightbox-recognized"><table><tr>';
					body += '<td><img src="' + d.avatar_url + '" alt="" /></td>';
					body += '<td><span class="dsq-badge ' + (d.verified ? 'dsq-badge-verified' : 'dsq-badge-registered') + '">' + (d.verified ? 'Verified' : 'Registered') + '</span></td>';
					body += '<td>Hey <strong>' + d.display_name + '</strong>, is that you? Login below to claim this comment.';
					body += '</tr></table></div>';
				}

				body += ' \
				<div class="dsq-lightbox-auth-fields"> \
					<table> \
						<tr> \
							<td>Username or Email</td> \
							<td><input id="dsq-field-username' + pid + '" type="text" value="' + (d.avatar_url ? d.username : '') + '" /></td> \
						</tr> \
						<tr> \
							<td>Password <a href="http://disqus.com/forgot" target="_blank">(cannot log in?)</a></td> \
							<td><input id="dsq-field-password' + pid + '" type="password" /></td> \
						</tr> \
					</table> \
					<div class="dsq-lightbox-switch-auth"><a href="#" onclick="Dsq.Templates.lightboxAuthenticate(' + post_id + ',\'register\'); return false">Register instead</a></div> \
				</div> \
				<div id="dsq-lightbox-errors' + pid + '" class="dsq-lightbox-errors"></div> \
				<div class="dsq-lightbox-submit"> \
					<div class="dsq-lightbox-auth-post"><button class="dsq-button" onclick="Dsq.Templates.validateAuth(this, ' + post_id + ',\'' + auth_choice + '\')">Login and Post comment</button></div>'
					+ (Dsq.jsonData.forum.allow_anon_post
						? '<div class="dsq-lightbox-auth-skip"><button class="dsq-button-small" onclick="Dsq.Templates.postComment(' + post_id + ', this, true)">Just post as a Guest</button></div>'
						: '')
				+ '</div> \
				';
				break;
			default:
				break;
		}
		Dsq.Popup.lightbox(body, title, post_id);
		Dsq.$('dsq-field-username' + pid).focus();
	};
	
	this.buttonsToRestore = [];
	this.setLoadingButton = function(btn, post_id) {
		var pid = post_id ? '-' + post_id : '';
		if (btn) {

			var loadingBtn = document.createElement('button');
			loadingBtn.id = btn.id + '-loading';
			loadingBtn.innerHTML = '<img src="http://media.disqus.com/images/loading-lite.gif" alt="" /> Just a moment...';
			loadingBtn.className = btn.className + ' dsq-post-loading';
			btn.parentNode.appendChild(loadingBtn);
			btn.style.display = 'none';
			var cancelBtn = Dsq.$('dsq-cancel-button' + pid);
			if(cancelBtn) { cancelBtn.style.display = 'none'; this.buttonsToRestore.push(cancelBtn); }
			this.buttonsToRestore.push(btn);
		} else {

			var buttons = this.buttonsToRestore;
			for(var i = 0; i < buttons.length; i++) {
				buttons[i].style.display = 'inline';
				Dsq.Utils.deleteNode(Dsq.$(buttons[i].id + '-loading'));
			}
		}
		
	};

	this.postComment = function(post_id, el_clicked, force, auth_choice) {
		var append_id = post_id ? '-' + post_id : '';
		var fields = Dsq.Templates.getFormFields(post_id);

		if (Dsq.Templates.validateFields(post_id)) {

			if (!Dsq.jsonData.request.is_authenticated && !force &&
				((!Dsq.Utils.readCookie('skipped_auth') && !disqus_skip_auth && !Dsq.jsonData.forum.disqus_auth_disabled) || !Dsq.jsonData.forum.allow_anon_post)) {
				Dsq.Templates.checkExistingUser(post_id);
				return false;
			}
			var params = [];
			if (!Dsq.jsonData.request.is_authenticated) {
				params.push(fields.name.value,
					fields.email.value,
					fields.website.value);

				if (auth_choice == 'login' || auth_choice == 'register') {
					params.push({
						auth_choice: auth_choice,
						username: fields.username.value,
						password: fields.password.value,
						email: fields.email.value
					});
				} else {
					params.push(null);
				}

				params.push(null /* sharing options */, Dsq.$('dsq-subscribe-on-post' + append_id).value);
			} else {
				var service_checked = function(name) {
					var el = Dsq.$('dsq-sharing-' + name + append_id);
					return (el !== null && el.checked === true) ? '1' : '0';
				};
				params.push(null, null, null, null, {
					tw: service_checked('twitter'),
					fb: service_checked('facebook'),
					tr: service_checked('tumblr'),
					wp: service_checked('wordpress'),
					mt: service_checked('movabletype'),
					tp: service_checked('typepad'),
					yh: service_checked('yahoo')
				});
			}

			var frame = Dsq.frames['reply_' + (post_id ? post_id : 0)];
			frame.post.apply(frame, params);

			if (el_clicked) {
				Dsq.Templates.setLoadingButton(el_clicked, post_id);
			}
			
			if (force) {
				Dsq.Utils.createCookie('skipped_auth', true);	
			}
			
		} else {
			return false;
		}
	};

	this.editComment = function(el_clicked, post_id) {
		var edited_message = Dsq.$('dsq-edit-textarea-' + post_id).value;

		Dsq.Templates.setLoadingButton(el_clicked, post_id);
		Dsq.frames['edit_' + post_id].edit(post_id, edited_message);
	};

	this.toggleEdit = function(post_id) {
		var body = Dsq.$('dsq-comment-body-' + post_id);
		var message = Dsq.$('dsq-comment-message-' + post_id);

		if (!Dsq.Post.stateEditToggled[post_id]) {


			message.style.display = 'none';
			if (Dsq.$('dsq-edit-' + post_id)) {
				Dsq.$('dsq-edit-' + post_id).style.display = 'block';
			} else {

				var edit_area = document.createElement('div');
				edit_area.id = 'dsq-edit-' + post_id;
				edit_area.className = 'dsq-edit dsq-textarea';
				edit_area.innerHTML = ' \
				<div class="dsq-textarea-wrapper"> \
					<textarea class="dsq-edit-textarea" id="dsq-edit-textarea-' + post_id + '">' + message.innerHTML + '</textarea> \
				</div> \
				<div class="dsq-save-edit"> \
					<button onclick="Dsq.Templates.editComment(this, ' + post_id + ')" class="dsq-button-small">Save Edit</button> \
				</div> \
				<div id="dsq-edit-iframe-' + post_id + '" style="display: none"></div> \
				';

				body.appendChild(edit_area);

				if (!Dsq.frames['edit_' + post_id]) {
					var _meta = Dsq.jsonData.posts[post_id];
					Dsq.frames['edit_' + post_id] = new Dsq.ReplyFrame(Dsq.$('dsq-edit-iframe-' + post_id), post_id);
					Dsq.frames['edit_' + post_id].init();
					Dsq.frames['edit_' + post_id].setState(post_id, _meta.depth);
				}
			}
		} else {

			message.style.display = 'block';
			Dsq.$('dsq-edit-' + post_id).style.display = 'none';
		}
		
		Dsq.Post.stateEditToggled[post_id] = !Dsq.Post.stateEditToggled[post_id];
	};
	
	this.edit = function(el, post_id) {

		Dsq.Templates.toggleEdit(post_id);
	};

	this.toggleReply = function(post_id, button) {
		
		if(!this.stateReplyToggled[post_id]) {

			if (Dsq.$('dsq-reply-post-' + post_id)) {
				Dsq.$('dsq-append-post-' + post_id).style.display = 'block';
			} else {
				Dsq.$('dsq-append-post-' + post_id).innerHTML = Dsq.Templates.postBox(post_id);
				var container = Dsq.$('dsq-textarea-wrapper-' + post_id);
				if (!Dsq.frames['reply_' + post_id] && container) {
					var _meta = Dsq.jsonData.posts[post_id];
					Dsq.frames['reply_' + post_id] = new Dsq.ReplyFrame(container, post_id);
					Dsq.frames['reply_' + post_id].init(function() {

						Dsq.$('dsq-append-post-' + post_id).innerHTML = Dsq.Templates.postBox(post_id, true);
						Dsq.$('dsq-form-area-' + post_id).innerHTML = '';

						var theme = (typeof disqus_frame_theme == 'undefined') ? 'default' : disqus_frame_theme;
						Dsq.Iframes.showReplyIframeInContainer(Dsq.$('dsq-form-area-' + post_id), post_id, {theme: theme});

					});
					Dsq.frames['reply_' + post_id].setState(post_id, _meta.depth);
				}
			}
			Dsq.$('dsq-append-post-' + post_id).className = 'dsq-append-post';
			Dsq.$('dsq-comment-footer-reply-' + post_id).className = 'dsq-comment-footer-reply-active';
			
		} else {

			Dsq.$('dsq-append-post-' + post_id).style.display = 'none';
			Dsq.$('dsq-append-post-' + post_id).className = '';
			Dsq.$('dsq-comment-footer-reply-' + post_id).className = 'dsq-comment-footer-reply';
		}
		
		this.stateReplyToggled[post_id] = !this.stateReplyToggled[post_id];

		if(Dsq.Utils.ie && this.stateReplyToggled[post_id]) {

		}

		Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_TOGGLED, {
			postId: post_id,
			opened: this.stateReplyToggled[post_id]
		});
	};
	
	this.moderateOptions = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		
		if(!Dsq.jsonData.request.is_moderator && !Dsq.jsonData.request.is_global_moderator) { return false; }

		var html;
		
		html = ' \
		<div class="dsq-moderate-options"> \
		<table>'
		+ (_meta.email ? '<tr><td>Email</td><td>' + _meta.email + '</td></tr>' : '')
		+ (_meta.ip ? '<tr><td>IP address</td><td>' + _meta.ip + '</td></tr>' : '')
		+ '<tr> \
			<td>Actions</td> \
			<td><ul>'
			+ (Dsq.jsonData.request.moderator_can_edit
				? '<li><a href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); Dsq.Popup._closePopup(null, true); return false;">Edit Comment</a></li>'
				: '')
			+ '<li><a href="#" onclick="Dsq.Post.removePost(' + post_id + ', 1); Dsq.Popup._closePopup(null, true); return false;">Delete Comment</a></li> \
			<li><a href="#" onclick="Dsq.Post.reportSpam(' + post_id + '); Dsq.Popup._closePopup(null, true); return false;">Mark Spam</a></li> \
			<li><a href="#" onclick="Dsq.Popup.blacklist(' + post_id + '); return false">Block User</a></li> \
			</ul></td> \
			</table> \
		</div> \
		';
		
		html += '<p>Go to the full <a href="http://disqus.com/comments/moderate/" target="_blank">moderate panel</a> for more options.</p>';
		
		return Dsq.Popup.popModal(html, 'Moderate Options', post_id);
	};
	
	this.placeholder = {
		'class': 'dsq-placeholder',
		'name': Dsq.Strings.NAME,
		'email': Dsq.Strings.EMAIL,
		'website': Dsq.Strings.WEBSITE + ' (' + Dsq.Strings.OPTIONAL.toLowerCase() + ')'
	};
	
	this.handlePlaceholder = function(evt, el, key) {
		var placeholder = Dsq.Templates.placeholder[key];
		var className = Dsq.Templates.placeholder['class'];
		
		switch(evt.type) {
			case 'focus':
				if(el.value == placeholder) {
					el.value = '';
					el.className = '';
				}
				break;

			case 'blur':
				if(el.value == '') {
					el.value = placeholder;
					el.className = className;
				}
				break;
			default:
				break;
		}
	};
	
	this.paginate = function(page, el_clicked) {

		var extra_params = '';

		if(typeof disqus_per_page != 'undefined') {
			extra_params += '&per_page=' + disqus_per_page;
		}
		if(typeof disqus_sort != 'undefined') {
			extra_params += '&sort=' + disqus_sort;
		}

		Dsq.$('dsq-pagination').innerHTML += '<img src="http://media.disqus.com/images/loading-small.gif">';
		
		if(el_clicked) {
			Dsq.Templates.setLoadingButton(el_clicked);
		}
		
		Dsq.Utils.execScript('http://disqus.com/forums/tpreg/thread.js'
			+ '?slug='	+ 'towing_scam_the_day_after'
			+ '&p='		+ page
			+ extra_params);
	};
	
	
	this.rate = function(el, id, vote) {


		if(Dsq.jsonData.request.is_authenticated || Dsq.jsonData.forum.allow_anon_votes) {
			if(vote == 1) {
				Dsq.$('dsq-like-' + id).innerHTML = '<img src="http://media.disqus.com/images/loading-small.gif">';
			}
			Dsq.Utils.execScript('http://disqus.com/forums/tpreg/vote.js'
				+ '?post_id='    + id
				+ '&vote='        + vote);
		} else {
			Dsq.Popup.login('To rate, please log in');
		}
	};

	this.voted = function(post_id, points, vote) {

		Dsq.$('dsq-like-pts-' + post_id).innerHTML = points + Dsq.Utils.pluralize(points, ' person', ' people') + ' liked this.';

		if(vote) {
			Dsq.$('dsq-like-' + post_id).innerHTML = 'You liked this.&nbsp;&nbsp;';
		}
	};




	this.postComment_onSuccess = function(response, parent_post_id, post_id) {
		var approved = response.message.post_meta.approved;

		if (parent_post_id) {
			Dsq.Post.toggleReply(parent_post_id);
		}

		Dsq.Popup._closePopup(null, true);
		
		if (approved) {
			Dsq.Post.incrementPostCount();
			Dsq.Post.outlineComment(post_id);
		} else {			
			var unapproved_msg = 'Thanks for posting!\
	 Your comment must be approved by a moderator before appearing here.\
			';
			Dsq.Popup.popModal(unapproved_msg, 'Comment awaiting approval', post_id);
		}

		var sharing_results = response.message.sharing_results;
		var sharing_errors = '';
		for (var service in sharing_results) {
			if (sharing_results.hasOwnProperty(service) === true) {
				if (sharing_results[service].error === true) {
					sharing_errors += service + ', ';
				}
			}
		}

		if (sharing_results.facebook && sharing_results.facebook.callback) {
			FB.ensureInit(function() {
				FB.Connect.streamPublish('', sharing_results.facebook.attachment);
			});
		}

		if (sharing_errors !== '') {
			var message = 'Your comment was posted, but there were errors sharing with the following connections: ';
			message += sharing_errors.replace(/,\s$/, '');
			message += '<p><a href="' + Dsq.jsonData.settings.disqus_url + '/profile/connections" target="_blank">Configure your connections here</a></p>'
			Dsq.Popup.popModal(message, 'Sharing options');
		}

		Dsq.Templates.setLoadingButton(false);
	};

	this.postComment_onFailure = function(response, parent_post_id, post_id) {

		Dsq.Templates.setLoadingButton(false);
	};
};




// TODO: It might be faster to use string methods to find all <li (...) </li> blocks and pass to Dsq.PostHandler manually.
Dsq.CommentsHandler = function(str, head, post_id, content, tail, offset, s) {
	var prepend_post = Dsq.Templates.prependPost(post_id);
	var append_post = Dsq.Templates.appendPost(post_id);

	content = content.replace(Dsq.POST_RE, Dsq.PostHandler);
	Dsq.Templates.postLoopCounter++;
	head = Dsq.Templates.Filters.commentContainer(post_id, head);
	return prepend_post + head + content + tail + append_post;
};

Dsq.PostHandler = function(str, h_head, post_id, h_content, h_tail, b_head, b_content, b_tail, offset, s) {
	var prepend_header = Dsq.Templates.postPrependHeader(post_id);
	var append_header = Dsq.Templates.postAppendHeader(post_id);
	var prepend_body = Dsq.Templates.preBody(post_id);
	var append_body = Dsq.Templates.postBody(post_id);
	var append_footer = Dsq.Templates.postFooter(post_id);

	b_content = b_content.replace(Dsq.POST_BODY_RE, Dsq.PostBodyHandler);
	return h_head + prepend_header + h_content + append_header + h_tail + b_head + prepend_body + b_content + append_body + b_tail + append_footer;
};

Dsq.PostBodyHandler = function(str, head, post_id, content, tail, offset, s) {
	content = Dsq.Templates.Filters.commentContent(post_id, content);
	return head + content + tail;
};

Dsq.MediaPostHandler = function(str, args, offset, s) {
	args = args.split(' ');
	if(args[0] == 'seesmic') {
		return '<br />' + Dsq.Templates.mediaSeesmic(args[1], args[2]);
	}
	return '';
};


/**
 * Shorcuts
 */
Dsq.$ = function(element) { return document.getElementById(element); };
Dsq.$b = document.body || document.getElementsByTagName('body')[0];


/**
 * Dsq.Debug: Logging functions.
 */

Dsq.Debug = new function() {this.log=function(s){};this.profile=function(f){if(typeof f == 'function')return f();else return eval(f);};};


/**
 * Dsq.Urls: URL paths
 */
Dsq.Urls = new function() {
	this.LOGIN = '/profile/login/';
	this.LOGOUT = '/logout/';
	this.REPLY = 'http://disqus.com/forums/tpreg/towing_scam_the_day_after/reply.html';
	this.REQUEST_USER_PROFILE = '/AnonymousUser/';
	this.REQUEST_USER_AVATAR = 'http://media.disqus.com/images/noavatar92.png';
};
// Dsq.Urls

/**
 * Dsq.Validators: Validation for form fields
 */
Dsq.Validators = new function() {
	this.VALID_EMAIL_RE = /^[a-z0-9\-\_\+]+(\.[a-z0-9\-\_\+]+)*\@(([a-z0-9\-\_\+]+(\.[a-z0-9\-\_\+]+)*)+\.[a-z]{2,}|([0-9]+\.){3}[0-9]+)$/i;
	this.name = function(name) {
		var error = false;

		if(typeof Dsq.Templates.placeholder !== 'undefined' &&
		   name == Dsq.Templates.placeholder.name) {
			error = true;
		}
		if(name.length <= 1) {
			error = true;
		}

		if(error) {
			return "Please enter a name to comment.";
		} else {
			return true;
		}
	};
	this.email = function(addr) {
		if(Dsq.Validators.VALID_EMAIL_RE.test(addr)) {
			return true;
		} else {
			return "Please enter a valid email to comment.";
		}
	};
	this.url = function(addr) {
		if(!addr || addr.indexOf('.') != -1) {
			return true;
		} else {
			return "Please check your website URL (this field is optional).";
		}
	};

	this.validate = function(bulk_validation, failure_callback) {
		failure_callback = failure_callback || function(e){ alert(e); };

		for(var i = 0; i < bulk_validation.length; i++) {
			v = bulk_validation[i];
			ret = v.validator(v.value);
			if(ret !== true) {
				failure_callback(ret);
				return false;
			}
		}
		return true;
	};
};

/**
 * Dsq.Utils: Generic utility functions.
 */
Dsq.Utils = new function() {
	this.ie = /msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent);
	this.ie7 = (document.all && !window.opera && window.XMLHttpRequest) ? true : false;
	this.ie6 = (!window.XMLHttpRequest) ? true: false;
	this.webkit = navigator.userAgent.indexOf('AppleWebKit/') >= 0;
	this.gebiFromElementCollectionCache = {};
	this._styleSheet = null;

	this.gebiFromElement = function(el, id, tag) {
		// This only method only helps IE.
		if(!this.ie) {
			return Dsq.$(id);
		} else {
			var cacheKey = el.id + '-' + tag;
			tag = tag || 'div';
			if(typeof this.gebiFromElementCollectionCache[cacheKey] != 'undefined') {
				collection = this.gebiFromElementCollectionCache[cacheKey];
			} else {
				collection = el.getElementsByTagName(tag);
				this.gebiFromElementCollectionCache[cacheKey] = collection;
			}

			for(var i = 0; i < collection.length; i++) {
				if(collection[i].id == id) {
					return collection[i];
				}
			}
			return null;
		}
	};

	this.execOnReady = function(func) {
		var node = document.createElement('document:ready');
		try {
			node.doScroll('left');
			func();
			node = null;
		} catch(err) {
			setTimeout(function() { Dsq.Utils.execOnReady(func); }, 10);
		}
	};


	// Courtesy of http://www.quirksmode.org/js/cookies.html
	this.createCookie = function(name,value,days) {
		if (days) {
			var date = new Date();
			date.setTime(date.getTime()+(days*24*60*60*1000));
			var expires = "; expires="+date.toGMTString();
		}
		else var expires = "";
		document.cookie = name+"="+value+expires+"; path=/";
	};

	this.readCookie = function(name) {
		var nameEQ = name + "=";
		var ca = document.cookie.split(';');
		for(var i=0;i < ca.length;i++) {
			var c = ca[i];
			while (c.charAt(0)==' ') c = c.substring(1,c.length);
			if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
		}
		return null;
	};

	this.eraseCookie = function(name) {
		Dsq.Utils.createCookie(name,"",-1);
	};

	this.deleteNode = function(node) {
		if(node) {
			this.deleteChildren(node);
			if(typeof node.outerHTML != 'undefined') { node.outerHTML = ''; }
			else if(node.parentNode) { node.parentNode.removeChild(node); }
			delete node;
		}
	};

	this.deleteChildren = function(node) {
		if(node) {
			for(var x = node.childNodes.length-1; x >= 0; x--) {
				var childNode = node.childNodes[x];
				if(childNode.hasChildNodes()) { this.deleteChildren(childNode); }
				if(typeof childNode.outerHTML != 'undefined') { childNode.outerHTML = ''; }
				else node.removeChild(childNode);
				delete childNode;
			}
		}
	};

	this.findPos = function(obj) {
		var curleft = 0;
		var curtop = 0;
		if (obj.offsetParent) {
			do {
				curleft += obj.offsetLeft;
				curtop += obj.offsetTop;
			} while (obj = obj.offsetParent);
		}
		return [curleft,curtop];
	};

	this.getWindowSize = function() {
		var windowWidth = -1;
		var windowHeight = -1;

		if(typeof(window.innerWidth) == 'number') { //Non-IE
			windowWidth = window.innerWidth;
			windowHeight = window.innerHeight;
		} else if(document.documentElement) { // IE 6+ in 'standards compliant mode'
			windowWidth = document.documentElement.clientWidth || document.body.clientWidth;
			windowHeight = document.documentElement.clientHeight || document.body.clientHeight;
		}

		return [windowWidth, windowHeight];
	}

	this.getScrollPos = function() {
		var scrollWidth, scrollTop;

		if(document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollWidth)) {
			scrollWidth = document.documentElement.scrollWidth;
			// IE is weird here.  If no doctype is provided, document.body.scrollTop is 0,
			// otherwise document.documentElement.scrollTop is 0.
			scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
		} else if(document.body.scrollTop && document.body.scrollWidth) {
			scrollWidth = document.body.scrollWidth;
			scrollTop = document.body.scrollTop;
		}

		return [scrollWidth, scrollTop];
	}

	this.addEventListener = function(instance, eventName, listener) {
		var listenerFn = listener;
		if (instance.addEventListener) {
			instance.addEventListener(eventName, listenerFn, false);
		} else if (instance.attachEvent) {
			listenerFn = function() {
				listener(window.event);
			};
			instance.attachEvent("on" + eventName, listenerFn);
		} else {
			throw new Error("Event registration not supported");
		}
		return {
			instance: instance,
			name: eventName,
			listener: listenerFn
		};
	};

	this.removeEventListener = function(event) {
		var instance = event.instance;
		if (instance.removeEventListener) {
			instance.removeEventListener(event.name, event.listener, false);
		} else if (instance.detachEvent) {
			instance.detachEvent("on" + event.name, event.listener);
		}
	};

	this.fixIframesIE = function(id) {
		var disqusThread = Dsq.$(disqus_container_id);
		var iframes = disqusThread.getElementsByTagName('iframe');

		if(id) {
			var container = Dsq.$(id);
		} else {
			var container = Dsq.$('dsq-content');
		}

		for(i = 0; i < iframes.length; i++) {
			if (container) {
				iframes[i].style.width = container.offsetWidth;
			}
		}
	};

	this.getElementsByClassName = function(oElm, strTagName, strClassName) {
	/* Credit: Jonathan Snook [http://www.snook.ca/jonathan], Robert Nyman [http://www.robertnyman.com] */
		var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
		var arrReturnElements = new Array();
		strClassName = strClassName.replace(/\-/g, "\\-");
		var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
		var oElement;
		for(var i = 0; i < arrElements.length; i++) {
			oElement = arrElements[i];
			if(oRegExp.test(oElement.className)) {
				arrReturnElements.push(oElement);
			}
		}
		return (arrReturnElements);
	};

	this.postToUrl = function(url, post_data, opt_redirect) {
		var form = document.createElement('form');
		var iframe_container = document.createElement('div');
		var id = 'dsq-temp-iframe-' + (new Date()).getTime();

		form.method = 'POST';
		form.action = url;
		if (!opt_redirect) {
			form.target = id;
		}
		iframe_container.innerHTML = '<iframe style="display:none" name="' + id + '" id="' + id + '"></iframe>';

		for(var key in post_data) {
			if(post_data.hasOwnProperty(key)) {
				var input = document.createElement('input');
				input.name = key;
				input.type = 'hidden';
				input.value = post_data[key];

				form.appendChild(input);
			}
		}

		Dsq.$b.appendChild(iframe_container);
		Dsq.$b.appendChild(form);
		form.submit();
	};

	// Strips integer id from id of element in the form ('some-id-###')
	this.extractId = function(e) {
		var chunks = e.id.split('-');
		if(chunks.length <= 1) {
			return 0;
		} else {
			return parseInt(chunks[chunks.length-1]);
		}
	};

	this.getStyle = function(el, styleProp) {
		if(el.currentStyle) {
			var y = el.currentStyle[styleProp];
		} else if(window.getComputedStyle) {
			var y = document.defaultView.getComputedStyle(el, null).getPropertyValue(styleProp);
		}

		if(y == 'transparent' || y == '') {
			this.getStyle(el.parentNode, styleProp);
		} else {
			return y;
		}
	};

	this.execScript = function(url, append_qs, container) {
		var script = document.createElement('script');
		append_qs = typeof append_qs == 'undefined' ? true : append_qs;
		container = container || Dsq.container;

		if(append_qs) {
			var j = (url.indexOf('?') >= 0) ? '&' : '?';
			url += j + (new Date()).getTime();
		}
		script.type = 'text/javascript';
		script.charset = 'UTF-8';
		script.src = url;
		container.appendChild(script);
		return script;
	};

	this.pluralize = function(num, singular, plural) {
		return (num != 1) ? plural || 's' : singular || '';
	};

	this.getRequestParams = function(queryString /* optional */) {
		var pairs, tuple;
		var params = {};

		queryString = queryString || window.location.search.substring(1);
		pairs = queryString.split('&');

		for (var i = 0, pair; pair = pairs[i]; i++) {
			tuple = pair.split('=');
			params[tuple[0]] = (tuple[1] || true);
		}

		return params;
	};

	this.addCssRule = function(selector, styleText, index) {
		var stylesheet;
		index = index || 0;

		if(!this._styleSheet) {
			var styleEl = document.createElement('style');
			document.getElementsByTagName('head')[0].appendChild(styleEl);
			this._styleSheet = styleEl.sheet;
			if(!this._styleSheet) {
				// IE does not like our newly created stylesheet.
				this._styleSheet = document.styleSheets[document.styleSheets.length-1];
			}
		}
		stylesheet = this._styleSheet;

		if(stylesheet.insertRule) {
			var ruleText = selector + ' { ' + styleText + ' }';
			if(index == -1) {
				index = stylesheet.cssRules.length;
			}
			stylesheet.insertRule(ruleText, index);
		} else if(stylesheet.addRule) {
			stylesheet.addRule(selector, styleText, index);
		}
	};

	this.forEachIn = function(obj, callback) {
		for(var key in obj) {
			if(obj.hasOwnProperty(key)) {
				callback(key, obj[key]);
			}
		}
	};

	this._interpolateGlobalContext = {
		// values that get used a lot and are global to the request
		'profile_url': Dsq.Urls.REQUEST_USER_PROFILE,

		'disqus_url': Dsq.jsonData.settings.disqus_url,
		'media_url': Dsq.jsonData.settings.media_url,
		'request_username': Dsq.jsonData.request.username,
		'request_display_username': Dsq.jsonData.request.display_username,
		'forum_name': Dsq.jsonData.forum.name
	};

	this.renderFromContextStack = function(key, contexts) {
		// Returns the first instance of `key` in the array of objects `contexts` or else ''
		for (var i=0; i<contexts.length; i++) {
			if (contexts[i][key] !== undefined) {
				return String(contexts[i][key]);
			}
		}
		throw new Error('key ' + key + ' not found in context');
	};

	var that = this;
	this.interpolate = function(fmt, opt_localContext) {
		// Interpolate `fmt` named-format string with an assumed global context.
		// Based on `interpolate` in django.views.i18n
		var contextStack = [opt_localContext || {}, that._interpolateGlobalContext];
		return fmt.replace(/%\(\w+\)s/g, function(match){
			return that.renderFromContextStack(match.slice(2,-2), contextStack);
		});
	};

	this.stripTags = function(s) {
		// Removes HTML tags from `s`
		return s.replace(/(<([^>]+)>)/g,"");

	};

	this.assert = function(b) {
		if (!b) {
			throw new Error('Assertion error.');
		}
	};

};
// Dsq.Utils

/**
 * Dsq.Popup: Popup helper functions.
 */
Dsq.Popup = new function() {
	this.timeHide = new Array();
	this.timeShow = new Array();
	this.activePopup = {};
	this.profileCache = {};
	this.statusCache = {};

	this.showTimer = function(post_id) {
		// clear the hide timer
		clearTimeout(this.timeHide[post_id]);

		// start the timer
		if(!Dsq.Popup.profileIsOn && !Dsq.Thread.adminIsOn) {
			this.timeShow[post_id] = setTimeout("Dsq.Popup.popProfile(\"" + post_id + "\")", 400);
		}
	};

	this.hideTimer = function(post_id) {
		// clear the show timer
		clearTimeout(this.timeShow[post_id]);
	};

	this.updateProfile = function(username) {
		// Callback from /embed/profile.js
		if (this.statusCache[username]) {
			var statusEl = Dsq.$('dsq-profile-status-' + username);
			statusEl.innerHTML = this.statusCache[username];
			statusEl.style.display = 'block';
		}

		if (this.profileCache[username]) {
			var _cache = this.profileCache[username];

			var _genhtml = function(text) { return '<span><big>' + text + '</big></span>'; };
			var _no_comments = _genhtml(Dsq.FmtStrings.NUMBER_OF_COMMENTS(_cache.comments_count));
			var _no_likes = _genhtml(Dsq.FmtStrings.NUMBER_OF_LIKES(_cache.likes_count));
			var _no_points = _genhtml(Dsq.FmtStrings.NUMBER_OF_POINTS(_cache.points));

			var statsEl = Dsq.$('dsq-popup-profile-user-stats-' + username);
			statsEl.innerHTML = '';

			if (Dsq.jsonData.users[username].registered) {
				statsEl.innerHTML = _no_comments + _no_likes;
			}
			statsEl.innerHTML += _no_points;

			var activeSites = '';
			for (var i = 0; i < _cache.active_sites.length; i++) {
				var site = _cache.active_sites[i];
				activeSites += '<li><a href="' + site.url + '"> \
					<img src="' + site.favicon + '"/ width="16" height="16"/></a>\
					<a href="' + site.url + '">' + site.name + '</a></li>';
			}
			if (activeSites !== '') {
				Dsq.$('dsq-popup-profile-active-sites-' + username).innerHTML = activeSites;
			} else {
				Dsq.$('dsq-popup-profile-active-sites-' + username).innerHTML = 'This site.';
			}

			var moderatedSites = '';
			for (var i = 0; i < _cache.moderated_sites.length; i++) {
				var site = _cache.moderated_sites[i];
				moderatedSites += '<li><a href="' + site.url + '"> \
					<img src="' + site.favicon + '"/ width="16" height="16"/></a>\
					<a href="' + site.url + '">' + site.name + '</a></li>';
			}
			if (moderatedSites !== '') {
				Dsq.$('dsq-popup-profile-moderated-' + username).innerHTML = moderatedSites;
			} else {
				Dsq.$('dsq-popup-profile-moderated-wrapper-' + username).innerHTML = '';
			}
		}

		// Reposition popup after full HTML is rendered
		if(Dsq.Popup.activePopup && Dsq.Popup.activePopup.el) {
			Dsq.Popup.initPopup(Dsq.Popup.activePopup.el, Dsq.Popup.activePopup.id, Dsq.Popup.activePopup.type);
		}

	};

	this.showCookieMsgs = function() {
		var title = '';
		var message = '';
		var numAlerts = 0;

		Dsq.Utils.forEachIn(Dsq.jsonData.cookie_messages, function(k, v) {
			if (!v) return;

			switch(k) {
				// Cookie: Twitter
				case 'post_twitter':
					if (v === 'error') {
						title = 'Twitter Error!';
						message += '<li id="dsq-msg-twitter-error">Oops, we couldn\'t tweet this comment. Please check your <a href="http://disqus.com/account/services">account settings</a>.</li>';
					} else {
						var _msg = v.split(':');
						title = 'Tweeted!';
						message += '<li id="dsq-msg-twitter-success">Your comment was successfully tweeted. <a href="http://twitter.com/' + _msg[0] + '/status/' + _msg[1] + '">Click here to view the tweet</a>.</li>';
					}
					break;
				// Cookie: Unapproved Post
				case 'post_not_approved':
					title = 'Comment awaiting approval by a moderator';
					message += '<li id="dsq-msg-post-not-approved">Your comment must be approved by a moderator before appearing here.</li>';
					break;
				// Cookie: Profile Found
				case 'post_has_profile':
					title = 'Use your existing commenter profile';
					message += '<li id="dsq-msg-post-has-profile">You have just posted your commment as a <span class="dsq-badge-guest">Guest</span>, but you may already have a <span class="logo-disqus">Disqus</span> Profile.<br /><br /><a href="http://disqus.com/claim">Log in and claim this comment!</a></li>';
					break;
				case 'user_created':
					var _data = v.split(':');
					title = 'Profile created!';
					message += '<li id="dsq-msg-user-created">You have just created a <span class="logo-disqus">Disqus</span> Profile, the best way to claim, manage, and track your comments all over the web. \
					<br /><br />A confirmation is being sent to <strong>' + _data[1] + '</strong>. Please check for this email in order to verify your profile. \
					<ul class="dsq-list-tick"> \
						<li>Your username is <strong>' + _data[0] +'</strong>. <a href="http://disqus.com/people/' + _data[0] + '/" target="_blank">Click here to view your public profile</a>.</li> \
						<li>Be sure to set your profile picture, as well as connect your <span class="dsq-badge-facebook">Facebook</span> and <span class="dsq-badge-twitter">Twitter</span> accounts. <a href="http://disqus.com/account/" target="_blank">Click here for account settings</a>.</li> \
					</ul> \
					</li>'
					break;
				default:
					break;
			}
			numAlerts++;
		});

		if(numAlerts > 1) {
			message = '<ul class="dsq-list-bluebullet">' + message;
			message += '</ul>';
			title = 'Thanks for posting!';
		}
		if(numAlerts > 0) {
			if(typeof(disqus_cookie_msgs) == 'function') {
				disqus_cookie_msgs(message, title);
			} else {
				Dsq.Popup.popModal(message, title);
			}
		}
	};

	this.helpBadges = function(post_id) {
		var html = ' \
			<ul class="dsq-popup-help"> \
				<li><span class="dsq-badge dsq-badge-verified">Verified</span> has a <span class="logo-disqus">Disqus</span> Profile with a confirmed email address.</li> \
				<li><span class="dsq-badge dsq-badge-registered">Registered</span> has a <span class="logo-disqus">Disqus</span> Profile, but has not yet confirmed his or her email address.</li> \
				<li><span class="dsq-badge dsq-badge-guest">Guest</span> is not logged in with any account and has not claimed his or her comments.</li> \
				<li class="dsq-help-otheraccts">Other accounts</li> \
				<li><span class="dsq-badge dsq-badge-facebook">Facebook</span> is using his or her Facebook profile via Facebook Connect.</li> \
				<li><span class="dsq-badge dsq-badge-twitter">Twitter</span> is using his or her Twitter profile via Twitter Sign-in.</li> \
				<li><span class="dsq-badge dsq-badge-openid">OpenID</span> is using his or her OpenID.</li> \
			</ul> \
		';

		this.popModal(html, 'Help: Types of Commenters', post_id);
		return;
	};

	this.permalink = function(post_id) {
		var header = 'Link to this comment';
		var body = '<strong>You are anchored to</strong>:<br />' + document.location.protocol + '//' + document.location.host + document.location.pathname + document.location.search + '#comment-' + post_id;

		this.popModal(body, header, post_id);
	};

	this.login = function(header, body) {
		var h = header || 'Login or Register';
		var b = body || '';
		b += Dsq.Templates.frameLogin({id: 'dsq-popup-login'});
		b += '</iframe>'; // HACK: Sometimes there is something funky with the IFRAME SRC that causes no end tag
		this.popModal(b, h, null, true, 'dsq-popup-login');
	};

	this.blacklist = function(id) {
		var _meta = Dsq.jsonData.posts[id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		var title = 'Add to Blacklist';
		var message = ' \
		Adding this person to the blacklist will block him or her from commenting on this site. Check the following types that you would like to add to the blacklist:'
		+ (userData['registered'] ?
			'<div class="dsq-blacklist-option"> \
				<input id="dsq-blacklist-username" type="checkbox" checked> \
				<label for="dsq-blacklist-username"><strong>Username</strong>: ' + userData['username'] + '</label> \
			</div>'
			: '')
		+ (_meta.email ?
			'<div class="dsq-blacklist-option"> \
				<input id="dsq-blacklist-email" type="checkbox" checked> \
				<label for="dsq-blacklist-email"><strong>Email address</strong>: ' + _meta.email + '</label> \
			</div>'
			: '')
		+ '<div class="dsq-blacklist-option"> \
			<input id="dsq-blacklist-ip" type="checkbox" onclick="Dsq.$(\'dsq-blacklist-ip-warning\').style.display=\'block\'"> \
			<label for="dsq-blacklist-ip"><strong>IP address</strong>: ' + _meta.ip + '</label> \
		</div> \
		';

		message += ' \
			<p id="dsq-blacklist-ip-warning" style="display:none">	\
				Note: Blocking this person\'s IP address may also unintentionally prevent others, who share his/her IP address, from commenting on this site. \
				This may include people who are sharing the same computer, living in the same house, or using the same Internet provider. Only block an IP address as a last resort. \
			</p> \
		';

		message += ' \
			<p style="text-align:center"><button onclick="Dsq.Post.blockUser(' + id + '); this.disabled=true; this.innerHTML=\'Just one moment...\'">Add to Blacklist</button></p> \
		';

		Dsq.Popup.popModal(message, title);
	};

	this.remoteAccountSettings = function() {
		var body = '';
		// Set up IFrame.
		var params = {};
		var base_url = 'http://disqus.com/forums/tpreg/_auth/embed/remote_settings/';
		var attributes = {id: 'dsq-popup-account-settings'};
		if (typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}

		body = Dsq.Templates._frameGeneric(base_url, params, attributes);
		this.popModal(body, 'Account Settings', null, true, 'dsq-popup-account-settings');
	};

	this.popModal = function(message, title, post_id, use_listener, extra_classes) {
		var container = document.createElement('div');
		var header, body;

		Dsq.Popup._closePopup(null, true);

		if(typeof(title) == 'undefined') { title = ''; }
		if(typeof(use_listener) == 'undefined') { use_listener = true; }

		if(post_id) {
			container.id = 'dsq-popup-message-' + post_id;
		} else {
			container.id = 'dsq-popup-message';
		}

		header = title;
		body = message;

		container.innerHTML = Dsq.Templates.popupModal(header, body);
		Dsq.Popup.initPopup(container, post_id, 'message', extra_classes);
		if(use_listener) {
			Dsq.Popup.popupListener = Dsq.Utils.addEventListener(document, 'mouseup', Dsq.Popup._closePopup);
		}
	};

	this.popAlert = this.popModal;

	this.loading = function(post_id) {
		var title = Dsq.Strings.JUST_A_MOMENT;
		var body = '<div style="text-align:center; padding: 5px 0 10px 0"><img src="http://media.disqus.com/images/loading.gif" alt="" /></div>'
		Dsq.Popup.lightbox(body, title, post_id);
	};

	this.lightbox = function(message, title, post_id) {
		// Wraps Dsq.Popup.popModal

		var overlay = document.createElement('div');
		overlay.id = 'dsq-overlay';
		overlay.className = 'dsq-overlay';
		Dsq.$b.appendChild(overlay);
		
		Dsq.Popup.popModal(message, title, post_id, false, 'dsq-lightbox');
	};

	this.popProfile = function(post_id, userKey) {
		var post = Dsq.jsonData['posts'][post_id];
		if (post && post.has_been_anonymized) {
			Dsq.Popup.popModal('This message was anonymized by its previous owner.', 'Anonymized', post_id);
			return;
		}

		if(post_id) {
			userKey = Dsq.jsonData['posts'][post_id].user_key;	
		}
		var userData = Dsq.jsonData['users'][userKey];
		var elId = 'dsq-popup-profile-' + userKey;
		var container = document.createElement('div');

		if(this.activePopup.el) {
			this._closePopup(null, true);
			if(this.activePopup.linkClicked) {
				this.activePopup.linkClicked = false;
				return;
			}
		}

		container.id = elId;
		container.innerHTML = Dsq.Templates.popupProfile(userKey);

		this.initPopup(container, post_id, 'profile');
		this.popupListener = Dsq.Utils.addEventListener(document, 'mouseup', this._closePopup);

		if(!this.profileCache[userKey]) {
			Dsq.Utils.execScript('http://disqus.com/embed/profile.js'
				+ '?username=' + userKey
				+ '&anon=' + (userData['registered'] ? 0 : 1)
				+ '&f=' + Dsq.jsonData['request'].forum);
		} else {
			this.updateProfile(userKey);
		}
	};

	this._closePopup = function(e, force) {
		var activePopup = Dsq.Popup.activePopup.el;
		var id = Dsq.Popup.activePopup.id;
		var link = 'dsq-avatar-' + id; // HACK: Specific to profile toggle target

		// HACK: This event should be gone if there is no active popup.
		if(!activePopup) {
			return;
		}
		if(force || !Dsq.Popup.isClicked(e, activePopup.id)) {
			// TODO: This is breaking iE?
			if(Dsq.Popup.popupListener) {
				Dsq.Utils.removeEventListener(Dsq.Popup.popupListener);
			}
			
			// Kill overlay
			var overlay = Dsq.$('dsq-overlay');
			if(overlay) { Dsq.Utils.deleteNode(overlay); }
			
			try {
				Dsq.Utils.deleteNode(activePopup);
			} catch(e) {
				// HACK: IE6 throws an error when using deleteNode() with a node containing a <table> in the html.
				activePopup.parentNode.removeChild(activePopup);
			}
			Dsq.Popup.activePopup = {};
		}

		if(!force && Dsq.Popup.isClicked(e, link)) {
 			Dsq.Popup.activePopup.linkClicked = true;
		}

	};

	this.initPopup = function(popup, post_id, type, extra_classes) {
		popup.className = 'dsq-popup dsq-popup-' + type + ' ' + (extra_classes ? extra_classes : '');
		if(Dsq.Utils.ie6 || Dsq.Utils.ie7) {
			// HACK: We can't modify the body before it's ready, so we need
			//       to use an IE-safe "DOMReady" workaround before loading
			//       our popup.
			Dsq.Utils.execOnReady(function() {Dsq.$b.appendChild(popup); });
		} else {
			Dsq.$b.appendChild(popup);
		}

		popup.style.display = 'block';

		var xPos = (Dsq.Utils.getWindowSize()[0] - popup.offsetWidth) / 2;
		var yPos = (Dsq.Utils.getWindowSize()[1] - popup.offsetHeight) / 2;

		if(Dsq.Utils.ie6) {
			yPos += Dsq.Utils.getScrollPos()[1];
		}

		popup.style.left = xPos + 'px';
		popup.style.top = yPos + 'px';

		Dsq.Popup.activePopup = {
			'el' : popup,
			'id' : post_id,
			'type': type,
			'linkClicked' : false
		};
	};

	this.isClicked = function(e, id) {
		var t = e.target || e.srcElement;
		while(t && t.parentNode) {
			if(t.id == id) {
				return true;
			}

			t = t.parentNode;
		}
		return false;
	};
};
// Dsq.Popup

/**
 * Dsq.Templates
 */
Dsq.Templates = new function() {
	/*
	 * Counter keeping track of the number of posts iterated over.
	 */
	this.postLoopCounter = 0;
	this.filters = {};
	this.addPostContainer = 'dsq-post-add';
	this.textareaContainer = 'dsq-post-add';

	this.registerTemplate = function(name, func) {
		this['$$_' + name] = func;

		if(typeof DsqLocal.Filters != 'undefined'
		&& typeof DsqLocal.Filters[name] == 'function') {
			// Push filters to this.filters to unify code.
			this.filters[name] = this.filters[name] || [];
			this.filters[name].push(DsqLocal.Filters[name]);
		}

		this[name] = function() {
			var ret;

			if(typeof DsqLocal.Templates != 'undefined'
			&& typeof DsqLocal.Templates[name] == 'function') {
				ret = DsqLocal.Templates[name].apply(this, arguments);
			}

			if(ret === undefined) {
				ret = this['$$_' + name].apply(this, arguments);
			}

			if(this.filters[name]) {
				var args = [ret];

				args.push.apply(args, arguments);
				for(var i = 0; i < this.filters[name].length; i++) {
					ret = this.filters[name][i].apply(this, args);
				}
			}

			return ret;
		};
	};

	this.registerFilter = function(name, func) {
		this.filters[name] = this.filters[name] || [];
		this.filters[name].push(func);
	};

	/**
	 * Dsq.Templates.Filters
	 */
	this.Filters = new function() {
		this.commentContainer = function(post_id, s) {
			var _meta = Dsq.jsonData.posts[post_id];
			var classes = [];
			if(Dsq.jsonData.request.page > 1) {
				classes.push('dsq-append');
			}

			//
			// Extra classes used for custom themes
			//

			if(_meta.depth) {
				classes.push('dsq-comment-child', 'dsq-depth-' + _meta.depth, 'dsq-parent-is-' + _meta.parent_post_id);
			}


			//

			if(_meta.author_is_creator) {
				// TODO: We need to deprecate the "special" class since it is not properly prefixed.
				classes.push('special', 'dsq-special');
			}
			if(_meta.author_is_moderator) {
				classes.push('dsq-moderator');
			}
			classes.push(['dsq-odd', 'dsq-even'][Dsq.Templates.postLoopCounter % 2]);

			s = s.substring(0, s.lastIndexOf('>'));
			return s + ' class="dsq-comment ' + classes.join(' ') + '" style="margin-left:' + _meta.depth*30 + 'px">';
		};

		this.commentContent = function(post_id, s) {
			var _meta = Dsq.jsonData.posts[post_id];
			if (_meta.killed) {
				return '<em>Comment removed.</em>';
			} else if (!_meta.approved) {
				return '<em>This comment was flagged for review.</em>';
			}

			s = s.replace(Dsq.MEDIA_POST_RE, Dsq.MediaPostHandler);
			return s;
		};
	};

	//
	// Thread
	//
	// TODO: These need to be stripped of all Django template tags.

	this.authPost = function() {
		if (!Dsq.jsonData.context.show_reply) {
			return '';
		}
		var result = [];
		result = result.concat([
				'<div id="dsq-auth"',
						Dsq.jsonData.integration.reply_position ? 'class="dsq-auth-bottom"' : '',
						'>',
					'<div class="dsq-by">',
						'<a href="http://disqus.com" target="_blank">',
							(Dsq.jsonData.integration.disqus_logo ?
								Dsq.Utils.interpolate('<img src="%(media_url)s/images/embed/by-disqus.png" alt="discussion by DISQUS">') :
								Dsq.Utils.interpolate('<img src="%(media_url)s/images/embed/dsq-button-120x19.png" alt="discussion by DISQUS">')
							),
						'</a>',
					'</div>',
					'<div class="dsq-auth-header">',
						'<h3 id="dsq-add-new-comment" class="dsq-h3-addcomment">',
								Dsq.Strings.ADD_NEW_COMMENT,
						'</h3>',
						'<div id="dsq-login">',
						(!Dsq.jsonData.request.is_authenticated && Dsq.jsonData.forum.allow_anon_post
								? '<p class="dsq-login-message" id="dsq-login-message">You are commenting as a <a class="dsq-help" title="Click for more information" href="#" onclick="Dsq.Popup.helpBadges(); return false">Guest</a>. You may select one to log into:</p>'
								: '')
		]);
		if (!Dsq.jsonData.request.is_authenticated) {
			result = result.concat([
							Dsq.Utils.interpolate(
								'<a id="dsq-login-toggle" href="%(disqus_url)s%(login_url)s?next=article:%(thread_id)s" onclick="Dsq.Popup.login(); return false"><img class="dsq-login-icon" src="%(media_url)s/images/dsq-profile-btn.png" title="%(log_into)s" alt="%(log_into)s"/></a>',
								{login_url: Dsq.Urls.LOGIN, thread_id: Dsq.jsonData.thread.id, log_into: Dsq.Strings.LOG_INTO_DISQUS}
								),
							'&nbsp; ',
							(Dsq.jsonData.context.use_fb_connect ?
								'<div id="dsq-fbc-login" onlogin="DisqusFbcParentController.onLogin()" size="medium" background="light" length="short" style="display:inline; margin-right:7px"></div>' :
								''
							),
							(Dsq.jsonData.context.use_twitter_signin ?
								Dsq.Utils.interpolate(
									'<div id="dsq-twitter-login" class="dsq-twitter-login" onclick="Dsq.Twitter.startTwitterConnect();" style="display:inline; cursor: pointer"><img src="%(media_url)s/images/twitter-signin-short.png" style="margin-right:7px" /></div>', {}) : ''),
							(Dsq.jsonData.context.use_openid ?
								Dsq.Utils.interpolate(
									'<div id="dsq-openid-login" class="dsq-openid-login" onclick="Dsq.OpenID.requestURL();" style="display:inline; cursor:pointer;"><img src="%(media_url)s/images/openid-login-button.png"/></div>', {}
								) : '')
			]);
		}
		result = result.concat([
						'</div>', // dsq-login
					'</div>', // dsq-auth-header
					'<div id="dsq-authenticated" class="dsq-authenticated" ',
						Dsq.jsonData.request.is_authenticated ? 'style="display:block"' : '',
						'>',
						'<div class="dsq-authenticated-pic">',
								Dsq.Utils.interpolate('<a href="%(url)s" title="%(request_display_username)s">' +
																			'<img class="dsq-post-avatar" src="%(avatar_url)s" alt="" /></a>',
																			{avatar_url: Dsq.Urls.REQUEST_USER_AVATAR,
																			url: (Dsq.jsonData.request.is_remote
																					 ? Dsq.jsonData.request.url
																					 : Dsq.jsonData.settings.disqus_url + Dsq.Urls.REQUEST_USER_PROFILE) }),
						'</div>',
						'<div class="dsq-authenticated-info">',
							'<ul>',
								'<li>',
									(Dsq.jsonData.request.is_remote
										? Dsq.FmtStrings.LOGGED_IN_AS(
												Dsq.Utils.interpolate('<a href="%(url)s" title="%(request_display_username)s">%(request_display_username)s</a>', {url:Dsq.jsonData.request.url})
										  )
										: Dsq.FmtStrings.LOGGED_IN_AS(
												Dsq.Utils.interpolate('<a href="%(disqus_url)s%(profile_url)s" title="%(request_display_username)s">%(request_display_username)s</a>')
											)
									),
								'</li>',
								'<li class="logout">',
									(!Dsq.jsonData.request.is_remote
										? Dsq.Utils.interpolate('<img class="dsq-login-icon" src="%(media_url)s/images/dsqicon12.png" alt="%(logged_in_as)s"/>&nbsp',
											{logged_in_as: Dsq.FmtStrings.LOGGED_IN_AS(Dsq.jsonData.request.display_username)})
										: ''),

									(!Dsq.jsonData.request.is_remote
										? Dsq.Utils.interpolate('<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="%(logout_from_disqus)s">',
											{logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN, logout_from_disqus: Dsq.FmtStrings.LOGOUT_FROM('DISQUS')})
										: ((Dsq.jsonData.request.remote_domain == 'twitter')
												? Dsq.Utils.interpolate('using Twitter (<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="Logout">Logout</a>)',
												 {logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN})
												: ((Dsq.jsonData.request.remote_domain == 'openid')
													 ? Dsq.Utils.interpolate('using OpenID (<a href="%(disqus_url)s%(logout_url)s?ctkn=%(csrf_token)s" title="Logout">Logout</a>)',
													 {logout_url: Dsq.Urls.LOGOUT, csrf_token: Dsq.CSRF_TOKEN})
													 : ''
													)
											)
									),

									(!Dsq.jsonData.request.is_remote ? Dsq.FmtStrings.LOGOUT_FROM('<span class="logo-disqus">DISQUS</span>') : ''),
									'</a>',
								'</li>',
							'</ul>',
						'</div>',
					'</div>'
		]);
		if (Dsq.jsonData.context.use_fb_connect) {
			result = result.concat([
					'<div id="dsq-fbc-authenticated" class="dsq-authenticated">',
						'<div id="dsq-fbc-profilepic" class="dsq-authenticated-pic" uid="loggedinuser" type="FB.XFBML.ProfilePic" size="square" facebook-logo="true"></div>',
						'<div class="dsq-authenticated-info">',
							'<ul>',
								'<li>',
									'Logged in as <span id="dsq-fbc-name" uid="loggedinuser" type="FB.XFBML.Name" linked="true" useyou="false"></span>',
								'</li>',
								'<li class="logout">using Facebook Connect <a href="#" onclick="javascript:DisqusFbcParentController.logout();return false;">(Logout)</a></li>',
							'</ul>',
						'</div>',
					'</div>'
			]);
		}
		result = result.concat([
				'</div>', // dsq-auth
				'<div id="dsq-toolbar-items">',
				'</div>'
		]);
		result = result.concat([
					//
					//
					//
				((!Dsq.jsonData.forum.allow_anon_post && !Dsq.jsonData.request.is_authenticated) ?
					// Needs to be translated:
					('<p id="dsq-no-anon-msg">Required: Please log into <span class="logo-disqus">Disqus</span> ' +
					(Dsq.jsonData.context.use_fb_connect ? 'or connect with Facebook ' : '') +
					(Dsq.jsonData.context.use_twitter_signin ? 'or sign in with Twitter ' : '') +
					(Dsq.jsonData.context.use_openid ? 'or sign in using OpenID ' : '') +
					Dsq.Utils.interpolate('to comment on <strong>%(forum_name)s</strong>.</p>')) :
					''
				),
				'<div id="dsq-post-add"></div>',
				'<div style="margin:10px 0">',
				((Dsq.jsonData.forum.use_media) ?
						'<a href="#" id="dsq-media-link" onclick="Dsq.Post.showMenu(this, false, \'media\'); return false">' + Dsq.Strings.USE_MEDIA + ' <small>&#9660;</small></a>' :
						''),
				'</div>'
		]);
		return result.join('');
	};


	this.header = function() {

		var html = '\<h3 id="dsq-comments-count" class="dsq-h3-commentcount">\
	 <span id="dsq-num-posts">57</span> Comments\
	 &nbsp;\
	 <span class="dsq-item-feed">\
	 <a href="http://disqus.com/forums/tpreg/towing_scam_the_day_after/latest.rss"><img src="http://media.disqus.com/images/embed/bullet-feed.png"></a>\
	 </span>\
	 </h3>\
	 <div id="dsq-options" style="margin:15px 0">\
	 <span class="dsq-item-sort">\
	 Sort by\
	 <select id="dsq-sort-select" onchange="Dsq.Thread.sortBy(this.value);">\
	 <option value="hot" selected="selected">Popular now</option>\
	 <option value="best" >Best Rating</option>\
	 <option value="newest" >Newest first</option>\
	 <option value="oldest" >Oldest first</option>\
	 </select>\
	 &nbsp;\
	 </span>\
	 <span class="dsq-item-cp"><a href="http://disqus.com/forums/tpreg/towing_scam_the_day_after/">Community Page</a>&nbsp;&nbsp;&nbsp;</span>\
	 <span class="dsq-item-subscribe">\
	 <img src="http://media.disqus.com/images/embed/email.png" style="width:12px;height:12px;vertical-align:middle">\
	 <span id="dsq-subscribe">\
	 <a href="#" onclick="Dsq.Thread.subscribe(1); return false">Subscribe by email</a>\
	 </span>\
	 </span>\
	 </div>\
	 <div id="dsq-alerts">\
	 </div>\
		';

		
			html = Dsq.Templates.authPost() + html;
		

		
		if (Dsq.jsonData.request.is_moderator) { 
			html = ' \
			<div class="dsq-alert-message dsq-upgrade-message"> \
				<strong>Disqus upgrade available.</strong> Hi ' + Dsq.jsonData.request.display_username + ', this message is being displayed to you because you are a moderator of this site. <a href="#" onclick="Dsq.$(\'dsq-upgrade-message\').style.display=\'block\';this.style.display=\'none\';return false">Click here for details.</a> \
				<div style="display:none; margin-top:10px;" id="dsq-upgrade-message"> \
					A new theme is available with added features. <a href="http://disqus.com/comments/settings/' + Dsq.jsonData.forum.url + '/?p=customize">To change your theme, click here</a> and choose the theme Narcissus. \
					If you do not upgrade, you are missing out on features such as: real-time commenting, new sign-in integrations, and an upgrade interface. \
					<strong>This message will automatically go away in one week.</strong> \
				</div> \
			</div> \
			' + html; 
		}
		return html;
	};

	this.footer = function() {
		var html = Dsq.Templates.pagination();

		

		html += Dsq.Templates.reactions();

		
			html += Dsq.Templates.trackbacks();
		

		return html;
	};

	this.pagination = function() {
		var html = '';
		
		if (Dsq.$('dsq-pagination')) { Dsq.$('dsq-pagination').innerHTML = ''; }
		if (!Dsq.jsonData.thread.paginate) { return ''; }

		//
		// TODO: num_paginator still uses the template tag for pagination, 
		// 		while append_paginator does it all in JavaScript.
		//		This should all be in JavaScript.
		//

		if (Dsq.jsonData.thread.num_pages > 1 && Dsq.jsonData.request.page < Dsq.jsonData.thread.num_pages) {
			html = ' \<a class="dsq-paginate-append-text" href="#" onclick="Dsq.Thread.paginate(Dsq.jsonData.request.page + 1, this); return false">Show more comments...</a>\
	 <button class="dsq-button-small dsq-paginate-append-button" onclick="Dsq.Thread.paginate(Dsq.jsonData.request.page + 1, this);">Load more comments</button>\
			';
		}
		
		if (Dsq.$('dsq-pagination')) {
			Dsq.$('dsq-pagination').innerHTML = html;
			return '';
		} else {
			return '<div id="dsq-pagination" class="dsq-pagination">' + html + '</div>';
		}
	};

	this.trackbacks = function() {
		var html = '';

		if(typeof DsqLocal != 'undefined' && DsqLocal.trackback_url && DsqLocal.trackbacks) {
			var trackbacks = DsqLocal.trackbacks;
			var trackback_url = DsqLocal.trackback_url;
		} else {
			var trackbacks = [
			
			
			];
			var trackback_url = 'http://disqus.com/forums/tpreg/towing_scam_the_day_after/trackback/';
		}

		html += '<div class="dsq-item-trackback">Trackback URL&nbsp;&nbsp;<input class="dsq-trackback-url" onclick="this.select()" readonly="true" value="' + trackback_url + '"></div>';

		if(trackbacks.length) {
			html += '<ul id="dsq-references">'
			for(var i = 0; i < trackbacks.length; i++) {
				var trackback = trackbacks[i];
				html += '<li><cite><a href="' + trackback.author_url + '" rel="nofollow">' + trackback.author_name + '</a></cite> \
						<p class="dsq-meta">' + trackback.date + '</p> \
						<p class="dsq-content">' + trackback.excerpt + '</p></li>';
			}
			html += '</ul>';
			html = '<h3 class="dsq-h3-trackbacks">Trackbacks</h3>' + html;
		}

		return html;
	}

	this.showRetweets = function(id, limit, element_id /* Optional */) {
		var source, html = '';

		for (var i = 0, reaction; reaction = Dsq.jsonData.reactions[i]; i++) {
			if (reaction.id === id) {
				source = reaction.retweets;
			}
		}

		if (source) {
			if (limit === 0) {
				limit = source.length;
			}

			for (var j = 0; j < limit; j++) {
				var rt = source[j];
				html += '<a href="' + rt.url + '">' + rt.author_name + '</a>'	+ ((j === (limit - 1)) ? '.' : ', ');
			}
		}

		if (element_id === undefined) {
			return html;
		}

		var element = document.getElementById(element_id);
		element.innerHTML = html;
		return element;
	};

	this.showMoreReactions = function(reactions, has_more, start, limit) {
		var link = document.getElementById('dsq-show-more-reactions');
		var container = link.parentNode;
		container.removeChild(link);

		for (var i = 0, reaction; reaction = reactions[i]; i++) {
			var el = Dsq.Templates.generateReactionHTML(reaction);
			if (el) {
				container.innerHTML += el;
			}
		}

		if (has_more) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = start;
			var l = limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			container.innerHTML += '<li id="dsq-show-more-reactions"><a href="#" onclick="' + handler + '">Show more reactions</a></li>';
		}
	};

	this.generateReactionHTML = function(reaction) {
		if (reaction.body === null || reaction.body == '') {
			return;
		}

		if (reaction.author_name === '') {
			reaction.author_name = '&nbsp;';
		}

		if (reaction.url === '') {
			reaction.url = reaction.get_service_url;
		}

		/* Reaction HTML begins */
		var item = '<li class="dsq-reaction" id="dsq-reaction-' + reaction.id + '">'
			+ '<div class="dsq-reaction-header">'
			+ '<div class="dsq-header-avatar">';

		if (reaction.author_url && reaction.author_url !== '') {
			item += '<a target="_blank" href="' + reaction.author_url +'">';
		} else {
			item += '<a target="_blank" href="#" onclick="return false;">';
		}

		if (reaction.avatar_url && reaction.avatar_url !== '') {
			item += '<img src="' + reaction.avatar_url + '"/>';
		} else {
			item += '<img src="' + Dsq.jsonData.media_url + '/images/noavatar32.png"/>';
		}

		var service_icon = (reaction.get_service_name == 'trackback' || reaction.get_service_name == 'pingback' ? 'rss' : reaction.get_service_name.replace(' ', ''));
		item += '<img class="dsq-service-icon" src="' + Dsq.jsonData.media_url + '/images/reactions/services/' + service_icon + '.png"/>'
			+ '</a></div>'
			+ '<cite><span>' + reaction.author_name + '</span></cite>'
			+ '<span class="dsq-header-meta"><a class="dsq-header-time">' + reaction.date_created + '</a></span>'
			+ '</div><div class="dsq-reaction-body">'
			+ '<div class="dsq-reaction-message">' + reaction.body + '</div>'
			+ '<div class="dsq-reaction-footer">From <a class="dsq-service-name" target="_blank" href="' + reaction.url + '">' + reaction.get_service_name + '</a> '
			+ 'via ' + (reaction.source == 'backtype' ? '<a href="http://backtype.com/">BackType</a>' : '<a href="' + reaction.source_url + '">UberVU</a>')
			+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator ? '&nbsp;&bull;&nbsp;<a class="dsq-hide-reaction" href="#" onclick="Dsq.Reaction.hide(' + reaction.id + '); return false;">Hide</a>' : '') + '</div></div>';

		if(reaction.retweets) {
			var num_retweets = reaction.retweets.length;
			if (num_retweets > 0) {
				item += '<div class="dsq-reaction-retweets">';
				if (num_retweets == 1) {
					item += 'One more retweet from <a href="' + reaction.retweets[0].url + '">'  + reaction.retweets[0].author_name + '</a>';
				} else {
					item += (num_retweets + ' more retweets from ');

					item += '<span id="dsq-reaction-retweets-' + reaction.id + '">';
					var n_tweets = (num_retweets > 15) ? 15 : num_retweets;
					item += Dsq.Templates.showRetweets(reaction.id, n_tweets);

					if (n_tweets != num_retweets) {
						item += '</span> <a onclick="Dsq.Templates.showRetweets(' + reaction.id + ', 0, \'dsq-reaction-retweets-' + reaction.id + '\');'
							+ 'this.parentNode.removeChild(this); return false;" href="#">Show all</a>';
					}
				}
				item += '</div>';
			}
		}

		item += '</li>'; /* Reaction HTML ends */
		return item;
	};

	this.reactions = function() {
		var html, reaction;

		if (Dsq.jsonData.reactions === undefined || Dsq.jsonData.reactions.length === 0) {
			return '';
		}

		html = '';
		for (var i = 0; reaction = Dsq.jsonData.reactions[i]; i++) {
			var item = Dsq.Templates.generateReactionHTML(reaction);
			if (item) {
				html += item;
			}
		}

		if (Dsq.jsonData.has_more_reactions) {
			var d = Dsq.jsonData.settings.disqus_url;
			var f = Dsq.jsonData.forum.url;
			var t = Dsq.jsonData.thread.id;
			var s = Dsq.jsonData.reactions_start;
			var l = Dsq.jsonData.reactions_limit;

			var handler = 'Dsq.Utils.execScript(\'' + d + '/forums/' + f + '/more_reactions.js?t=' + t + '&s=' + s + '&l=' + l + '\', true); return false;';
			html += '<li id="dsq-show-more-reactions"><a href="#" onclick="' + handler + '">Show more reactions</a></li>';
		}

		return '<h3 class="dsq-h3-reactions">Reactions</h3><ul id="dsq-reactions" class="dsq-reactions">' + html + '</ul>';
	};
	
	this.missingPermissions = function() {
		return '';
	};

	//
	// Post
	//

	this.prependPost = function(post_id) {
		var html = '<div id="comment-' + post_id + '"></div>';
		return html;
	};

	this.appendPost = function(post_id) {
		var html = '<div id="dsq-comment-reply-' + post_id + '"></div>';
		return html;
	};

	this.postPrependHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];

		var _includeServices = function() {
			var userServices = Dsq.Post.getUserServices(null, post_id);
			var html = '';
			var hiddenThreshold = 3; // Define # of services to show before stuffing them in hidden div

			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == hiddenThreshold
					? '<li id="dsq-drop-hidden-' + post_id +'" class="dsq-drop-hidden"><ul>'
					: '')
				+ '<li class="dsq-drop-services"> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank"> \
						<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '">'
					+ userServices[i].name
					+ '</a> \
				</li>';
			}

			if(i >= hiddenThreshold) {
				html += '</ul></li> \
				<li id="dsq-drop-more-' + post_id + '" class="dsq-drop-more"><a href="#" onclick="Dsq.Post.dropProfileMore(this, '+ post_id + '); return false"><small>&#9660;</small></a></li> \
				';
			}
			return html;
		};

		return ' \
			<div class="dsq-header-avatar" id="dsq-header-avatar-' + post_id + '" onmouseover="Dsq.Post.dropProfile(' + post_id + ')"> \
				<a id="dsq-avatar-' + post_id + '" class="dsq-avatar" href="' + userData.url + '" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">'
			+ (Dsq.jsonData.forum.show_avatar
				? '<img src="' + Dsq.jsonData.users[_meta.user_key].avatar + '" alt="" />'
				: '')
			+ '</a>'
			+ '</div> \
		';
	};

	this.postAppendHeader = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];

		return ''
			+ (_meta.author_is_moderator
				? '<img class="dsq-mod-star" src="http://media.disqus.com/images/bullet-star.png" title="Moderator" alt="" />'
				: '')
			+ '<span class="dsq-header-meta"> \
				<a id="dsq-time-' + post_id + '" class="dsq-header-time" href="#comment-' + post_id + '" title="Permalink">' + _meta.date + '</a> \
			</span>';
	};

	this.preBody = function(post_id) {
		return '';
	}

	this.postBody = function(post_id) {
		// TODO: Deprecate flagging conditional
		var _meta = Dsq.jsonData.posts[post_id];
		return ''
			+ (_meta.edited
				? '<p class="dsq-editedtxt">(Edited by a moderator)</p>'
				: '')
			;
	};

	this.postFooter = function(post_id) {
		// TODO: Use media should be conditional
		var _meta = Dsq.jsonData.posts[post_id];
		if(_meta.killed) { return ''; }

		return ' \
			<div class="dsq-comment-footer" id="dsq-comment-footer-' + post_id + '"> \
				<div id="dsq-points-' + post_id + '" class="dsq-likedtxt">'
				+ (_meta.points
					? _meta.points + Dsq.Utils.pluralize(_meta.points, ' person', ' people') + ' liked this comment.'
					: '')
				+ '</div>'
				+ '<ul class="dsq-comment-options dsq-list-style">'
				+ (_meta.votable
					? '<li class="dsq-list-first dsq-rate" id="dsq-rate-cont-' + post_id + '">'
					+ (!_meta.up_voted
						? '<a href="#" onclick="Dsq.Post.rate(this, ' + post_id + ', 1); return false;">Like</a>'
						: 'You liked this.') + '</li>'
					: '')
				+ '<li class="dsq-report' + (!_meta.votable ? ' dsq-list-first' : '') + '" id="dsq-post-report-' + post_id + '"><a href="#" class="dsq-post-report" onclick="Dsq.Post.report(' + post_id + ', false); return false;">Report</a></li> \
				</ul> \
				<ul class="dsq-list-style">'
				+ (_meta.can_reply
					? '<li class="dsq-list-first"><a href="#" id="dsq-reply-link-' + post_id +'" onclick="Dsq.Post.toggleReply(this, ' + post_id +'); return false;">Reply</a></li>'
					: '')
				+ (_meta.can_reply && !_meta.has_replies && _meta.from_request_user
					? '<li id="dsq-edit-el-' + post_id + '"><a id="dsq-edit-link-' + post_id + '" href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); return false;">Edit</a></li>'
					: '')
				+ '<li class="' + (!_meta.can_reply ? 'dsq-list-first' : '') + '" id="dsq-more-el-' + post_id + '"><a id="dsq-more-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'more\'); return false">More <small>&#9660;</small></a></li>'
				+ (Dsq.jsonData.forum.use_media
					? '<li id="dsq-media-el-' + post_id +'" style="display:none"><a id="dsq-media-link-' + post_id + '" href="#" onclick="Dsq.Post.showMenu(this, ' + post_id + ', \'media\'); return false">Use Media <small>&#9660;</small></a></li>'
					: '')
				+ '</ul>'
				+ '<div id="dsq-reply-bar-' + post_id + '" class="dsq-reply-bar" style="display:none"> \
						<div id="dsq-reply-bar-items-' + post_id + '" class="dsq-reply-bar-items"> \
						</div> \
						<div id="dsq-reply-bar-auth-' + post_id + '" class="dsq-reply-bar-auth"> \
							 \
								 \
								 	<a href="#" class="dsq-help dsq-reply-req-opt" title="You are commenting as a Guest. You may choose to log into an existing DISQUS Profile, your Facebook, Twitter or OpenID account to comment on The Phoenix Real Estate Guy" onclick="Dsq.Popup.helpBadges(); return false">Optional:</a> \
								 \
								<img class="dsq-login-icon" src="http://media.disqus.com/images/dsq-favicon-16x16.png" alt="" /> \
								<a id="dsq-reply-login-' + post_id + '" href="http://disqus.com/profile/login/?next=article:25008977" onclick="Dsq.Popup.login(); return false">Login</a> \
								 \
									&nbsp;or&nbsp; \
									<img class="fb_login_image" src="http://static.ak.fbcdn.net/images/fbconnect/login-buttons/connect_light_small_short.gif" alt="Facebook Connect"/> \
									<a href="#" onclick="FB.Connect.requireSession(DisqusFbcParentController.onLogin); return false;">Connect</a> \
								 \
								&nbsp;or&nbsp; \
									<img src="http://media.disqus.com/images/twitter-signin-icon.png" alt="" /> \
									<a href="#" onclick="Dsq.Twitter.startTwitterConnect(); return false">Sign-in</a> \
								 \
								&nbsp;or&nbsp; \
									 <img src="http://media.disqus.com/images/openid-login-icon.png" alt="" /> \
									 <a href="#" onclick="Dsq.OpenID.requestURL(); return false">OpenID</a> \
								 \
							 \
						</div> \
					</div> \
					<div id="dsq-reply-' + post_id + '"></div> \
			</div> \
		';
	};

	//
	// Iframes
	//

	this._makeAttributes = function(attributes) {
		// Makes a tag attributes string out of an object.
		// Caller is responsible for making sure nothing needs to be escaped.
		var result = [];
		for (key in attributes) {
			result.push(' ' + key + '="' + attributes[key] + '"');
		}
		result = result.join('');
		return result;
	};

	this._frameGeneric = function(base_url, params, attributes) {
		if(typeof(disqus_callback_params) == 'undefined') {
			disqus_callback_params = '';
		}

		var default_params = {
			// TODO: These should be moved to Dsq.jsonData.
			'f'				: 'tpreg',
			't'				: 'towing_scam_the_day_after',
			// Do we need encodeURIComponent here?
			'ifrs'			: encodeURIComponent(disqus_iframe_css),
			'to_redirect'	: encodeURIComponent(window.location),
			'cbp'			: disqus_callback_params,
			'ff'			: Dsq.Thread.ff,
			'fc'			: Dsq.Thread.fc,
			'ac'			: Dsq.Thread.ac,
			'default_text'	: disqus_default_text
		};

		base_url += '?' + (new Date()).getTime();
		// Add params to default_params.
		if(params) {
			for(var key in params) {
				if(params.hasOwnProperty(key)) {
					default_params[key] = encodeURIComponent(params[key]);
				}
			}
		}
		// Build querystring.
		for(var key in default_params) {
			if(default_params[key] && default_params.hasOwnProperty(key)) {
				base_url += '&' + key + '=' + default_params[key];
			}
		}

		return [
			'<iframe marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0"',
			(' allowtransparency="true" src="' + base_url + '"'),
			this._makeAttributes(attributes),
			'</iframe>'].join('');
	};

	this.frameLogin = function(opt_attributes) {
		var params = {};
		var base_url = 'http://disqus.com/embed/login.html';
		var attributes = opt_attributes || {};
		attributes['class'] = 'dsq-post-login';

		if(typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}
		return this._frameGeneric(base_url, params, attributes);
	};

	this.frameReply = function(post_id, extra_params, attributes) {
		// Returns the HTML for a reply iframe. Called by Dsq.Iframes.setReplyIframeToContainer
		var _meta = (typeof post_id != 'undefined') ? Dsq.jsonData.posts[post_id] : false;
		var base_url = Dsq.Urls.REPLY;
		var params = {
			'def_email'		: disqus_def_email,
			'def_name'		: disqus_def_name
		};
		if(extra_params) {
			for(var key in extra_params) {
				if(extra_params.hasOwnProperty(key)) {
					params[key] = extra_params[key];
				}
			}
		}
		if(_meta) {
			params['parent_post'] = post_id;
		}
		if(typeof disqus_per_page != 'undefined') {
			params['per_page'] = disqus_per_page;
		}
		if(typeof disqus_frame_theme != 'undefined') {
			params['theme'] = disqus_frame_theme;
		}
		if(Dsq.jsonData.request.is_authenticated) {
			attributes['class'] += '-authenticated';
		}
		return this._frameGeneric(base_url, params, attributes);
	};

	this.frameEdit = function(post_id) {
		var _meta = (typeof post_id != 'undefined') ? Dsq.jsonData.posts[post_id] : false;
		var base_url = 'http://disqus.com/embed/edit.html';
		var params = {
			'p' : post_id
		};
		return this._frameGeneric(base_url, params, {'class': 'dsq-post-edit', 'name': 'dsq-edit_' + post_id + '-frame'});
	};

	//
	// Menus
	//

	this.menuMore = function(post_id) {
		// TODO: "Remove post" button should hide menu.
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];
		return ' \
			<li><a href="#comment-' + post_id + '" onclick="Dsq.Popup.permalink(' + post_id + ')">Link</a></li> \
			<li><a href="#" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">Profile</a></li>'
	+ (Dsq.jsonData.request.is_moderator || Dsq.jsonData.request.is_global_moderator
		? '	<li class="dsq-menu-sep"></li>' + (_meta.email ? '<li class="dsq-admin-email">' + _meta.email + '</li>' : '')
		+ '	<li class="dsq-admin-ip">' + _meta.ip + '</li> \
			<li class="dsq-menu-sep"></li>'
		+ (Dsq.jsonData.request.moderator_can_edit
			? ' <li class="dsq-admin-edit"><a href="#" onclick="Dsq.Post.edit(this, ' + post_id + '); return false;">Edit Comment</a></li>'
			: '')
		+ ' <li class="dsq-remove"><a href="#" onclick="Dsq.Post.removePost(' + post_id + ', 1); return false;">Remove Comment</a></li> \
			<li class="dsq-report-spam"><a href="#" onclick="Dsq.Post.reportSpam(' + post_id + '); return false;">Mark Spam</a></li> \
			<li class="dsq-block-user"><a href="#" onclick="Dsq.Popup.blacklist(' + post_id + '); return false">Block User</a></li>'
		: '');
	};

	this.menuMedia = function(post_id) {
		return ' \
			<li><a href="#" onclick="Dsq.Post.toggleMediaReply(this, ' + post_id + ', \'seesmic\'); return false;">Record video</a></li> \
		';
	};

	this.dropProfile = function(post_id) {
		var _meta = Dsq.jsonData.posts[post_id];
		var userData = Dsq.jsonData['users'][_meta.user_key];

		var _includeServices = function() {
			var userServices = Dsq.Post.getUserServices(null, post_id);
			var html = '';
			var hiddenThreshold = 3; // Define # of services to show before stuffing them in hidden div

			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == hiddenThreshold
					? '<li id="dsq-drop-hidden-' + post_id +'" class="dsq-drop-hidden"><ul>'
					: '')
				+ '<li class="dsq-drop-services"> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank"> \
						<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '">'
					+ userServices[i].name
					+ '</a> \
				</li>';
			}

			if(i >= hiddenThreshold) {
				html += '</ul></li> \
				<li id="dsq-drop-more-' + post_id + '" class="dsq-drop-more"><a href="#" onclick="Dsq.Post.dropProfileMore(this, '+ post_id + '); return false"><small>&#9660;</small></a></li> \
				';
			}
			return html;
		};


		var menu = '<li class="dsq-drop-showlnk"><a href="#" onclick="Dsq.Popup.popProfile(' + post_id + '); return false;">Expand &#8663;</a></li>';
		var pointsMessage = '';
		if (userData['registered']) {
			pointsMessage = 'with ' + userData['points'] + ' points (more points are better).';
		}

		if (userData['is_remote']) {
			var domain = userData['remote_domain_name'];
			menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' is a ' + domain + ' user ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
			menu += '<span class="dsq-badge-' + domain.toLowerCase() + '">' + domain + '</span></li>';
		} else if (userData['registered']) {
			if (userData['verified']) {
				menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has a verified commenter profile ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
				menu += '<span class="dsq-badge-verified">Verified</span></li>';
			} else {
				menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has a registered, but unverified, commenter profile ' + pointsMessage + '" onclick="Dsq.Popup.helpBadges()">';
				menu += '<span class="dsq-badge-registered">Registered</span></li>';
			}
		} else {
			menu += '<li class="dsq-drop-badge" title="' + userData['display_name'] + ' has not claimed this commenter profile." onclick="Dsq.Popup.helpBadges()"><span class="dsq-badge-guest">Guest</span></li>';
		}

		menu += _includeServices();
		return menu;
	};

	//
	// Popups
	//

	this._popupGeneric = function(content) {
		return ' \
		<div class="dsq-popup-content"> \
			<div class="dsq-popup-top"></div> \
			<div class="dsq-popup-body" class="clearfix"> \
				<div class="dsq-popup-body-padding"> \
					<div class="dsq-popup-header"> \
						<a class="dsq-close-link" href="#" onclick="Dsq.Popup._closePopup(null, true); return false"><img src="http://media.disqus.com/images/modal-close.png" alt="" /></a>'
						+ content['header']
					+ '</div>'
					+ content['body']
					+ '<div class="powered-by"><a href="http://disqus.com/comments/">Powered by <img src="http://media.disqus.com/images/embed/disqus-logo.png" alt="Disqus Comments" style="margin-bottom:-5px" /></a></div> \
				</div> <!-- padding --> \
			</div> <!-- body --> \
			<div class="dsq-popup-bottom"></div> \
		</div> \
		';
	};

	this.popupProfile = function(user_key) {
		var userServices = Dsq.Post.getUserServices(user_key, null);
		var userData = Dsq.jsonData['users'][user_key];
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		var _includeServices = function() {
			var html = '';
			for(var i = 0; i < userServices.length; i++) {
				html +=
				(i == 0
					? '<h4>Connections</h4><ul>'
					: '')
				+ '<li> \
					<img src="' + Dsq.jsonData.media_url + '/images/embed/services/' + userServices[i].name.toLowerCase() + '.png" alt="' + userServices[i].name.toLowerCase() + '" title="' + userServices[i].name.toLowerCase() + '" /> \
					<a class="dsq-service-' + userServices[i].name.toLowerCase() + '" href="' + userServices[i].url + '" target="_blank">'
					+ userServices[i].name
					+ '</a> \
				</li>'
				+ (i+1 == userServices.length ? '</ul>' : '');
			}
			return html;
		};

		headerHtml = ' \
			<table> \
				<tr> \
					<td> \
						<a class="dsq-profile-userurl" href="' + userData.url + '"><img class="dsq-popup-profile-avatar" src="' + userData['avatar'] + '" alt="" /></a> \
					</td> \
					<td> \
						<div class="dsq-popup-profile-user"> \
							<h3>' + userData['display_name'] + '</h3> \
							<div class="dsq-popup-profile-user-stats" id="dsq-popup-profile-user-stats-' + user_key + '">Loading...</div> \
						</div> \
					</td> \
				</tr> \
			</table> \
		';

		bodyHtml = ' \
			<div class="dsq-popup-profile-state"> \
				This is a&nbsp;<span class="'
					+ (userData['registered']
						? (userData['verified']
							? ' dsq-badge-verified'
							: (userData['is_remote']
								? ' dsq-badge-' + userData['remote_domain_name'].toLowerCase()
								: ' dsq-badge-registered')
							)
							: ' dsq-badge-guest') + '">'
			+ (userData['registered']
				? (userData['verified']
					? 'Verified'
					: (userData['is_remote']
						 ? userData['remote_domain_name']
						 : 'Registered')
					)
				: 'Guest')
			+ '</span>&nbsp;commenter profile.'
			+ '&nbsp;<a class="dsq-profile-userurl" href="' + userData.url + '"><strong>View more comments </strong></a>'
			+ (!userData['points']
				? '<p class="dsq-popup-notice">If this is you, <a href="http://disqus.com/profile" target="_blank">claim it now</a> to manage your comments.</p>'
				: '')
			+ ((userData['registered'] && !userData['verified'] && (Dsq.jsonData.request.username && (Dsq.jsonData.request.username == userData['username'])) && !userData['is_remote'])
				? '<p class="dsq-popup-notice"><strong>Alert</strong>: You have not verified this account. <a href="http://disqus.com/verify">Verify it now.</a></p>'
				: '')
			+ '</div> \
			<div id="dsq-profile-status-' + user_key + '" class="dsq-popup-profile-status" style="display:none"></div> \
			<div class="dsq-popup-profile-snapshot"> \
				<table> \
					<tr> \
						<td> \
							<div id="dsq-popup-profile-active-sites-wrapper-' + user_key + '"> \
								<h4>Most active sites</h4> \
								<ul id="dsq-popup-profile-active-sites-' + user_key + '"> \
									<li>Loading...</li> \
								</ul> \
							</div> \
						</td> \
						<td>'
							+ _includeServices()
							+ '<div id="dsq-popup-profile-moderated-wrapper-' + user_key + '"> \
								<h4>Moderator of</h4> \
								<ul id="dsq-popup-profile-moderated-' + user_key + '"> \
									<li>Loading...</li> \
								</ul> \
							</div> \
						</td> \
					</tr> \
				</table> \
			</div> \
			';

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.popupReblog = function() {
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		headerHtml = ' \
			<cite><span>Reblog this comment</span></cite> \
		';

		bodyHtml = ' \
			<div id="dsq-reblog-form" class="dsq-reblog-form"> \
			</div> \
		';

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.popupModal = function(title, message) {
		var headerHtml = '';
		var bodyHtml = '';
		var content = {};

		headerHtml = ' \
			<h3>' + title + '</h3> \
		';

		bodyHtml = message;

		content = {
			'header': headerHtml,
			'body': bodyHtml
		};

		return this._popupGeneric(content);
	};

	this.alertContent = function(name, post_id) {
		var alert = {
			'post_not_approved': {
				'title': 'Comment awaiting approval by a moderator',
				'message': 'Thanks for posting. Your comment must be approved by a moderator before appearing here.'
			},
			'post_has_profile': {
				'title': 'Use your existing commenter profile',
				'message': 'You have just posted your commment as a <span class="dsq-badge dsq-badge-guest">Guest</span>, but you may already have a <span class="dsq-badge dsq-badge-registered">Registered</span> commenter profile.<br /><br /><a href="http://disqus.com/claim">Log in and claim this comment!</a>'
			}
		};
		return alert[name] || false;
	};

	//
	// Actions
	//

	this.voted = function(post_id, points, vote) {
		// Update number of points
		Dsq.$('dsq-points-' + post_id).innerHTML = points + Dsq.Utils.pluralize(points, ' person', ' people') + ' liked this comment.';

		// Update link text
		if(vote) {
			Dsq.$('dsq-rate-cont-' + post_id).innerHTML = 'You liked this.';
		}
	};

	this.subscribed = function(status) {
		var title, message;

		if(status) {
			title = 'Subscribed!';
			message = 'You have subscribed to this comment thread. New comments will be sent directly to your email inbox, where you may read and respond by email.';
			Dsq.$('dsq-subscribe').innerHTML = ' \
				<a href="#" onclick="Dsq.Thread.subscribe(0); return false">Unsubscribe</a> \
			';
		} else {
			title = 'Unsubscribed';
			message = 'You have unsubscribed to this comment thread. New comments will no longer be sent to your email inbox.';
			Dsq.$('dsq-subscribe').innerHTML = ' \
				<a href="#" onclick="Dsq.Thread.subscribe(1); return false">Subscribe by email</a> \
			';
		}

		Dsq.Popup.popModal(message, title);

	};
	
	this.highlighted = function() {
		Dsq.Popup.popModal('This comment has been highlighted.', 'Highlighted comment');
	};

	//
	// Media
	//

	this.mediaSeesmic = function(id, thumb) {
		return ' \
			<div id="dsq-seesmic-' + id + '_preview" class="dsq-seesmic-preview"><a href="http://www.seesmic.com/video/' + id + '" target="_blank" class="see_link">&nbsp;</a> \
				<div style="display:block;width:160px; height:120px; border:none; background-image:url(http://t.seesmic.com/thumbnail/' + thumb + ')"> \
					<div id="dsq-seesmic-' + id + '_hide" class="seePlayOverlay" style="display:none;"><img onclick="see_play_video(\'' + id + '\',false)" src="http://media.disqus.com/images/seesmic/stopOverlay.png" width="50" height="50" style="cursor:pointer; cursor:hand; padding-top: 30px; padding-left: 50px" alt="" /></div> \
					<div id="dsq-seesmic-' + id + '_show" class="seePlayOverlay"><img onclick="see_play_video(\'' + id + '\',true)" src="http://media.disqus.com/images/seesmic/playOverlay.png" width="50" height="50" style="cursor:pointer; cursor:hand; border:none; padding-top: 30px; padding-left: 50px" alt="" /></div> \
				</div> \
			</div> \
			<div id="' + id + '_content" style="display:block; width:100%; padding-top:5px"></div> \
		';
	};

	//
	// Callbacks
	//

	this.postComment_onSuccess = function(parent_post_id) {
		// Increment post count
		var num_posts = Dsq.$('dsq-num-posts');
		var total_posts = Dsq.$('dsq-total-posts');
		
		if (num_posts) { 
			num_posts.innerHTML = parseInt(num_posts.innerHTML) + 1;
		}
		if (total_posts) { 
			total_posts.innerHTML = parseInt(total_posts.innerHTML) + 1;
		}
	};
};
// Dsq.Templates


/**
 * Dsq.Post
 */
Dsq.Post = new function() {
	this.openedMenu = {};
	this.menuEventListener = null;
	this.stateReplyToggled = {};
	this.stateEditToggled = {};
	this.stateRecordLink = {};

	/**
	 * Inserts a new post into the document.
	 *
	 * @param after_id {Number}	Insert a post before specified id.  If after_id
	 *							evaluates to false, then post in the front.  If
	 *							after_id is -1, post at the end.
	 */
	this.insert = function(after_id, id, message, author) {
		// Skeleton template from thread_posts.html.
		var skeleton = ' \
			<li id="dsq-comment-%(id)s"> \
				<div id="dsq-comment-header-%(id)s" class="dsq-comment-header"> \
					<cite id="dsq-cite-%(id)s" class="dsq-comment-cite"> \
						<a id="dsq-author-user-%(id)s" href="%(author_url)s" target="_blank" rel="nofollow">%(author_name)s</a> \
					</cite> \
				</div> \
				<div id="dsq-comment-body-%(id)s" class="dsq-comment-body"> \
					<div id="dsq-comment-message-%(id)s" class="dsq-comment-message">%(message)s</div> \
				</div> \
			</li> \
		';
		var _meta = Dsq.jsonData.posts[id];
		var _user_meta = Dsq.jsonData.users[_meta.user_key];
		var markup = Dsq.Utils.interpolate(skeleton, {
			id: id,
			message: message,
			author_url: _user_meta.blog,
			author_name: _user_meta.display_name
		});
		var div = document.createElement('div');
		markup = markup.replace(Dsq.COMMENTS_RE, Dsq.CommentsHandler);
		div.innerHTML = markup;

		if (after_id === -1) {
			Dsq.$('dsq-comments').appendChild(div);
		} else if (!after_id) {
			Dsq.$('dsq-comments').insertBefore(div, Dsq.$('dsq-comments').firstChild);
		} else if (Dsq.$('dsq-comment-' + after_id)) {
			// Get next node after "after_id", so we can insert before it.
			// If "after_id" is the last comment, the target node is the
			// last node.
			
			// var append_post_id = Dsq.Templates.appendPost(after_id).replace('<div id="','').replace('"></div>', '');
			var append_post_id = 'dsq-append-post-' + after_id;
			var node = Dsq.$(append_post_id);
			while (node = node.nextSibling) {
				if (!node || node.nodeType == 1) { // 1 == Node.ELEMENT_NODE
					break;
				}
			}
			if (!node) {
				node = Dsq.$(append_post_id);
			}
			node.parentNode.insertBefore(div, node);
		}
	};

	this.incrementPostCount = function() {
		
		var num_posts = Dsq.$('dsq-num-posts');
		var total_posts = Dsq.$('dsq-total-posts');

		if (num_posts) {
			num_posts.innerHTML = parseInt(num_posts.innerHTML, 10) + 1;
		}
		if (total_posts) {
			total_posts.innerHTML = parseInt(total_posts.innerHTML, 10) + 1;
		}
	}
	
	this.outlineComment = function(post_id) {
		Dsq.$('dsq-comment-' + post_id).className += ' dsq-comment-outline';
		setTimeout("(function () { Dsq.Post.clearOutlineComment(" + post_id + ") })()", 3000);
	};
	
	this.clearOutlineComment = function(post_id) {
		Dsq.$('dsq-comment-' + post_id).className = Dsq.$('dsq-comment-' + post_id).className.replace('dsq-comment-outline', '');
	};

	this.showMenu = function(el, id, name) {
		var anchorPos = Dsq.Utils.findPos(el);
		var menu = document.createElement('ul');

		if(this.openedMenu) {
			if(this.openedMenu.linkClicked) {
				this.openedMenu.linkClicked = false;
				return;
			}
		}

		switch(name) {
			case 'more':
				menu.innerHTML = Dsq.Templates.menuMore(id);
				break;
			case 'media':
				menu.innerHTML = Dsq.Templates.menuMedia(id);
				break;
			default:
				break;
		}

		// Add menu to document body
		menu.id = 'dsq-menu-' + id;
		menu.className = 'dsq-menu';
		Dsq.$b.appendChild(menu);

		// Position and show
		anchorPos[1] += 15;
		menu.style.left = anchorPos[0] + 'px';
		menu.style.top = anchorPos[1] + 'px';
		menu.style.display = 'block';

		// Set global reference
		this.openedMenu = {
			'el' : menu,
			'id' : id,
			'name' : name,
			'linkClicked' : false
		};

		// Set listener
		this.menuEventListener = Dsq.Utils.addEventListener(document, 'mouseup', this._hideMenu);
	};

	this._hideMenu = function(e) {
		var el = e.target || e.srcElement;
		var openedMenu = Dsq.Post.openedMenu.el;
		var id = Dsq.Post.openedMenu.id;

		if(!id) {
			var link = 'dsq-' + Dsq.Post.openedMenu.name + '-link';
		} else {
			var link = 'dsq-' + Dsq.Post.openedMenu.name + '-link-' + id;
		}

		if(!openedMenu) {
			return;
		}

		if(!Dsq.Popup.isClicked(e, openedMenu.id)) {
			openedMenu.style.display = 'none';
			Dsq.Utils.removeEventListener(Dsq.Post.menuEventListener);
			Dsq.Utils.deleteNode(openedMenu);

		} else {
			// Hide the menu if a link was clicked inside the menu.  We can't
			// completely remove the menu until the onclick event on the link
			// fires, but the menuEventListener will prevent multiple menus
			// from polluting the DOM.
			if(el && typeof el.href != 'undefined') {
				openedMenu.style.display = 'none';
				Dsq.Post.openedMenu.el = null;
			}
		}

		if(Dsq.Popup.isClicked(e, link)) {
 			Dsq.Post.openedMenu.linkClicked = true;
		}
	};


	this.getUserServices = function(user_key, id) {
		if(!user_key && id) {
			var _meta = Dsq.jsonData.posts[id];
			user_key = _meta.user_key;
		}
		var userData = Dsq.jsonData['users'][user_key];
		var userServices = [];

		// Keep a full list of supported services. This is the order they will display in the drop-profile.
		// Each service must have a corresponding case in _buildServiceUrl()
		var supportedServices = ['blog', 'twitter', 'facebook', 'tumblr'];

		function _buildServiceUrl(serviceName) {
			var data = userData[serviceName];
			var services = {
				blog:		function(d) { return d; },
				twitter:	function(d) { return d; },
				facebook:	function(d) { return d; },
				tumblr:		function(d) { return 'http://' + d + '.tumblr.com'; }
			};
			return services[serviceName](data);
		}

		for(var i = 0; i < supportedServices.length; i++) {
			if(userData[supportedServices[i]]) {
				var serviceUrl = _buildServiceUrl(supportedServices[i]);
				userServices.push({'name' : supportedServices[i], 'url' : serviceUrl});
			}
		}
		return userServices;
	}

	this.dropProfile = function(id) {
		var dp = Dsq.$('dsq-drop-profile-' + id);

		// IE6 needs JS to display/hide. All other browsers use CSS.
		if(dp) {
			if(Dsq.Utils.ie6) dp.style.display = (dp.style.display == 'inline') ? 'none' : 'inline';
			return false;
		} else {
			dp = document.createElement('ul');
		}

		dp.id = 'dsq-drop-profile-' + id;
		dp.className = 'dsq-drop-profile';

		if(Dsq.Utils.ie6) { dp.style.display = 'inline'; }

		var container = Dsq.$('dsq-header-avatar-' + id);
		dp.innerHTML = Dsq.Templates.dropProfile(id);
		container.appendChild(dp);
	};

	this.dropProfileMore = function(el, id) {
		var hiddenItems = Dsq.$('dsq-drop-hidden-' + id);

		hiddenItems.style.display = 'inline';
		el.parentNode.style.display = 'none';
	};

	this._updateReplyLinks = function(el, id) {
		// Update "reply / cancel" links based on state.
		var displayDict = {};

		if(id) {
			if(this.stateReplyToggled[id]) {
				el.innerHTML = 'Cancel';
				displayDict['media'] = 'inline';
				displayDict['edit'] = 'none';
			} else {
				el.innerHTML = 'Reply';
				displayDict['media'] = 'none';
				displayDict['edit'] = 'inline';
			}
		}

		for(var key in displayDict) {
			if(displayDict.hasOwnProperty(key)) {
				var	linkEl = Dsq.$('dsq-' + key + '-el-' + id),
					spacer = Dsq.$('dsq-' + key + '-spacer-' + id);

				if(linkEl) {
					linkEl.style.display = displayDict[key];
					if(spacer) spacer.style.display = displayDict[key];
				}
			}
		}
	};

	this._updateMediaLinks = function(el, id) {
		// Update "use media / cancel" links based on state.
		var appendId = (id) ? ('-' + id) : '';
		var link = Dsq.$('dsq-media-link' + appendId);

		if(this.stateRecordLink[id]) {
			link.innerHTML = 'Cancel Media';
			link.onclick = function() { Dsq.Post.toggleMediaReply(link, id); return false; };
		} else {
			link.innerHTML = 'Use Media <small>&#9660;</small>';
			link.onclick = function() { Dsq.Post.showMenu(link, id, 'media'); return false; };
		}
	};

	this.toggleReply = function(el, id) {
		// Create reply IFrame
		if (window.disqus_use_postmessage) {
			if (!this.stateReplyToggled[id]) {
				Dsq.$('dsq-reply-' + id).style.display = 'block';
				Dsq.$('dsq-reply-bar-' + id).style.display = 'block';
				// Create IFrame if it doesn't exist.
				if (!Dsq.frames['reply_' + id]) {
					var _meta = Dsq.jsonData.posts[id];
					Dsq.frames['reply_' + id] = new Dsq.ReplyFrame(Dsq.$('dsq-reply-frame-' + id), id);
					Dsq.frames['reply_' + id].init();
					Dsq.frames['reply_' + id].setState(id, _meta.depth);
				}
			} else {
				Dsq.$('dsq-reply-' + id).style.display = 'none';
				Dsq.$('dsq-reply-bar-' + id).style.display = 'none';
			}
		} else {
			// DEPRECATED
			if(!this.stateReplyToggled[id]) {
				// Reply toolbar
				Dsq.$('dsq-reply-bar-' + id).style.display = 'block';
				Dsq.Iframes.showReplyIframeInContainerIfAllowed(Dsq.$('dsq-reply-' + id), id);
			} else {
				Dsq.$('dsq-reply-bar-' + id).style.display = 'none';
				Dsq.Iframes.hideAllInContainer(Dsq.$('dsq-reply-' + id));
				if(this.stateRecordLink[id]) {
					// HACK: Cancel media before canceling self.
					this.toggleMediaReply(Dsq.$('dsq-media-link-' + id), id);
				}
			}
		}

		this.stateReplyToggled[id] = !this.stateReplyToggled[id];
		this._updateReplyLinks(el, id);

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE('dsq-reply-' + id); }

		Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_TOGGLED, {
			postId: id,
			opened: this.stateReplyToggled[id]
		});
	};

	this.toggleMediaReply = function(el, id, xtype) {
		id = id || 0;
		if(id) {
			var container = Dsq.$('dsq-reply-' + id);
		} else {
			var container = Dsq.$('dsq-post-add');
		}

		if(!this.stateRecordLink[id]) {
			Dsq.Iframes.showReplyIframeInContainer(container, id, {xtype:xtype}, 'dsq-post-video');
		} else {
			Dsq.Iframes.showReplyIframeInContainer(container, id);
		}
		this.stateRecordLink[id] = !this.stateRecordLink[id];
		this._updateMediaLinks(el, id);

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
	};

	this.edit = function(el, id) {
		Dsq.$('dsq-comment-message-' + id).innerHTML = Dsq.Templates.frameEdit(id);
		el.parentNode.style.display = 'none';
		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE('dsq-comment-message-' + id); }
	};

    this.rate = function(el, id, vote) {
		if(Dsq.jsonData.request.is_authenticated || Dsq.jsonData.forum.allow_anon_votes) {
			if(vote == 1) {
                Dsq.$('dsq-rate-cont-' + id).innerHTML = '<img src="http://media.disqus.com/images/loading-small.gif">';
            }

            Dsq.Utils.execScript('http://disqus.com/forums/tpreg/vote.js'
                + '?post_id='    + id
                + '&vote='        + vote);

		} else {
			Dsq.Popup.login(Dsq.Strings.TO_RATE_PLEASE_LOG_IN);
		}
    };

	this.report = function(id, confirmed) {
		if(confirmed) {
			Dsq.Utils.postToUrl('http://disqus.com/forums/tpreg/towing_scam_the_day_after/post_report/', {'post_id': id});
			Dsq.Popup.popModal('Thank you. This comment has been flagged for moderator attention.', 'Successfully flagged');
			Dsq.Utils.deleteNode(Dsq.$('dsq-post-report-' + id));
		} else {
			var title = Dsq.Strings.FLAG_INAPPROPRIATE_COMMENT;
			var message = Dsq.Strings.ARE_YOU_SURE_YOU_WOULD_LIKE_TO_REPORT_THIS_COMMENT_TO_A_MODERATOR + '? \
			<br /><br /> \
			<button onclick="Dsq.Popup._closePopup(null, true)"><strong>' + Dsq.Strings.NO + '</strong>, ' + Dsq.Strings.NEVER_MIND + '</button>&nbsp;&nbsp;&nbsp;<button onclick="Dsq.Post.report(' + id + ', true);"><strong>' + Dsq.Strings.YES + '</strong>, ' + Dsq.Strings.FLAG_INAPPROPRIATE_COMMENT + '</button><br /><br />'
			+ Dsq.Strings.THIS_WILL_FLAG_COMMENTS_FOR_MODERATORS_TO_TAKE_ACTION + '. \
			';

			Dsq.Popup.popModal(message, title, id);
		}
	};



	this.showAlert = function(id, msg) {
		var msgEl = Dsq.$('dsq-comment-message-' + id);
		var alert = '<div class="dsq-comment-alert">' + msg + '</div>';

		msgEl.innerHTML = alert + msgEl.innerHTML;
	};

};
// Dsq.Post


/**
 * Dsq.Thread
 */
Dsq.Thread = new function() {
	this.fc = null;
	this.ff = null;
	this.ac = null;

	
	this.adminIsOn = false;

	
	
	

	this.hlComment = null;
	this.hlCommentClass = null;

	this.getNextComment = function(el) {
		var start_id = el.id;
		while(el = el.nextSibling) {
			if(el.id && el.id.indexOf('dsq-comment-') != -1 && el.id != start_id) {
				return el;
			}
		}
		return null;
	};

	this.getActiveCommentId = function() {
		if (document.URL.indexOf('#comment-') >= 0) {
			var anchor = document.URL.slice(document.URL.indexOf('#') + 1);
			return anchor.replace('comment-', '');
		}
		return null;
	};

	this.highlightAnchor = function() {
		var i = this.getActiveCommentId();
		if (i == null) return false;
		var id = 'dsq-comment-' + i;
		var hash = window.location.hash;

		// Toggle the hash incase the comment isn't available when the page loads
		// for WebKit-based browsers.
		if (Dsq.Utils.webkit) {
			window.location.hash = '';
			window.location.hash = hash;
		}

		this.hlComment = Dsq.$(id);
		// Adding this conditional guard pending #289
		if (!this.hlComment) {
			return;
		}
		this.hlCommentClass = this.hlComment.className;
		this.hlComment.className += ' dsq-hl-anchor';

		setTimeout("Dsq.Thread.highlightClear()", 3000);
	};

	this.highlightClear = function() {
		if (!this.hlComment) {
			return;
		}
		this.hlComment.className = this.hlCommentClass;
	};

	this.login = function(toggle) {
		// toggle id is #dsq-reply-login-[id]
		var postId;
		if(toggle.id.indexOf('dsq-reply-login') != -1) {
			postId = toggle.id.slice(16);
			var container = Dsq.$('dsq-reply-' + postId);
		} else {
			var container = Dsq.$('dsq-post-add');
		}

		if(toggle) {
			if(toggle.className == 'dsq-login-active') {
				Dsq.Iframes.showReplyIframeInContainerIfAllowed(container, postId);
				toggle.className = '';
			} else {
				Dsq.Iframes.showLoginIframeInContainer(container, postId);
				toggle.className = 'dsq-login-active';
			}
		} else {
			Dsq.Iframes.showLoginIframeInContainer(container, postId);
		}

		if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
	};


	this.paginate = function(page, el_clicked, per_page) {
		// Use extra_params to pass any override parameters that we need to persist.
		var extra_params = '';

		// "Per page" can either be overriden by providing it as an argument
		// (per-call) or setting the disqus_per_page override variable (global).
		if(typeof per_page == 'undefined') {
			per_page = null;
		}
		if(typeof disqus_per_page != 'undefined' && per_page === null) {
			per_page = disqus_per_page;
		}

		if(typeof disqus_sort != 'undefined') {
			extra_params += '&sort=' + disqus_sort;
		}
		if(per_page !== null) {
			extra_params += '&per_page=' + per_page;
		}

		Dsq.$('dsq-pagination').innerHTML += '<img src="http://media.disqus.com/images/loading-small.gif">';
		
		if(el_clicked) {
			el_clicked.style.display = 'none';
		}
		
		Dsq.Utils.execScript('http://disqus.com/forums/tpreg/thread.js'
			+ '?slug='	+ 'towing_scam_the_day_after'
			+ '&p='		+ page
			+ extra_params);
	};

	this.sortBy = function(sort) {
		var disqus_script = document.createElement('script');
		var disqus_date = new Date();

		if (location.hash != '') {
			location.hash = '#disqus_thread';
		}

		if(typeof(disqus_url) == 'undefined') {
			disqus_url = disqus_href;
		}
		disqus_script.type = 'text/javascript';
		disqus_script.src = 'http://disqus.com/forums/tpreg/thread.js'
			+ '?slug='	+ 'towing_scam_the_day_after'
			+ '&sort='	+ sort
			+ '&title='
			+ '&'		+ disqus_date.getTime();

		Dsq.$('dsq-comments').innerHTML = '<img src="http://media.disqus.com/images/loading.gif">';
		Dsq.container.appendChild(disqus_script);
	};

	this.subscribe = function(status, email) {
		// `status` is an int -- 1 to subscribe, 0 to unsubscribe
		if(Dsq.jsonData.request.is_authenticated || email) {
			// If authenticated user OR anonymous email provided

			if(email) {
				Dsq.Popup._closePopup(null, true);
			}

			Dsq.Utils.execScript('http://disqus.com/forums/tpreg/subscribe.js'
				+'?status=' 	+ status
				+ '&slug='		+ 'towing_scam_the_day_after'
				+ '&email=' 	+ encodeURIComponent(email));

		} else if(!email) {
			// If anonymous user and no email has been provided yet, prompt for email

			var title = 'Subscribe to this comment thread';
			var message = ' \
				New comments will be sent directly to your email inbox! \
				<div class="dsq-subscribe-submit"> \
					<p><strong>Enter your email address below.</strong></p> \
					<input type="text" id="dsq-subscribe-email"> \
					<button onclick="Dsq.Thread.subscribe(1, Dsq.$(\'dsq-subscribe-email\').value)">Subscribe</button> \
				</div> \
			';

			Dsq.Popup.popModal(message, title);
		}
	};

	this.showSettings = function() {
		if (!Dsq.jsonData.request.is_moderator) {
			return;
		}

		/* The form has to be re-designed when more options will come out. */
		var html = 'Automatically close comments after <input size="3" id="dsq-thread-days-alive" value="' + Dsq.jsonData.thread.days_alive + '" type="text" /> days. Existing comments will still be displayed.<br /><br />(Using 0 days will disable this feature)<br /><br />'
								 + '<button onclick="Dsq.Thread.updateDaysAlive();" class="dsq-button-small"><span>Save</span></button>'
								 + '<span id="dsq-thread-settings-status" class="dsq-options-status"></span>';
		Dsq.Popup.popModal(html, 'Settings');
	};

	this.updateDaysAlive = function() {
		var days = Dsq.$('dsq-thread-days-alive').value;
		var status = Dsq.$('dsq-thread-settings-status');
		Dsq.Utils.postToUrl('http://disqus.com/forums/tpreg/update_days_alive.js', {days:days,thread:Dsq.jsonData.thread.id});
		status.innerHTML = 'Saved!';
		window.setTimeout(function() { status.innerHTML = ''; }, 1000);
	};
};
// Dsq.Thread

Dsq.Events = function() {
	var obj = {};

	// Private
	var handlers = {};
	var getHandlers = function(event) {
		if (handlers[event] === undefined) {
			handlers[event] = [];
		}
		return handlers[event];
	};

	// Public
	// Value keys : postId, node, xtype
	obj.REPLY_IFRAME_CREATED = 1;
	// Value keys : postId, opened
	obj.REPLY_IFRAME_TOGGLED = 2;
	obj.fire = function(event, opt_value) {
		if (!event) {
			throw new Error('Unknown event');
		}
		var value = opt_value || {};
		for (var i=0; i<getHandlers(event).length; i++) {
			getHandlers(event)[i](value);
		}
	};
	obj.addHandler = function(event, callback) {
		getHandlers(event).push(callback);
	};

	return obj;
}();

/**
 * Dsq.Realtime
 */
Dsq.Realtime = new function() {
	var initialized = false;
	var interval = null;
	var last_checked = Dsq.jsonData.request.timestamp;
	var new_posts = [];
	var ongoing_request = false;
	var prev_script = null;

	function updateNewPostCount() {
		Dsq.$('dsq-realtime-alert').style.display = new_posts.length ? 'block' : 'none';

		Dsq.$('dsq-realtime-queued').innerHTML = new_posts.length
		+ ' new '
		+ Dsq.Utils.pluralize(new_posts.length, 'comment', 'comments')
		+ Dsq.Utils.pluralize(new_posts.length, ' was', ' were')
		+ ' just posted.';

		Dsq.$('dsq-realtime-show').innerHTML = '(' + Dsq.Strings.SHOW + ')';
	}

	function insertNewPosts() {
		var post_id = null;
		var after_id = Dsq.$('dsq-sort-select').value === 'oldest' ? -1 : null;

		for (var i=0; i<new_posts.length; i++) {
			post_id = new_posts[i];
			Dsq.Post.insert(after_id, post_id, Dsq.jsonData.posts[post_id].message);
			Dsq.Post.incrementPostCount();
			Dsq.Post.outlineComment(post_id);
		}
		new_posts = [];
	}

	this.enableInterval = function() {
		interval = setInterval(Dsq.Realtime.check, Dsq.jsonData.context.realtime_speed);
		Dsq.$('dsq-realtime-status').innerHTML = Dsq.Strings.ENABLED;
		Dsq.$('dsq-realtime-toggle').innerHTML = '(' + Dsq.Strings.PAUSE + ')';
	}

	this.disableInterval = function() {
		if (interval) {
			clearInterval(interval);
			interval = null;
		}
		Dsq.$('dsq-realtime-status').innerHTML = Dsq.Strings.PAUSED;
		Dsq.$('dsq-realtime-toggle').innerHTML = '(' + Dsq.Strings.RESUME + ')';
	}

	this.toggleInterval = function() {
		if (!interval) {
			Dsq.Realtime.enableInterval();
		} else {
			Dsq.Realtime.disableInterval();
		}
		return false;
	}

	this.initialize = function() {
		if (!initialized) {
			initialized = true;
			Dsq.$('dsq-realtime-toggle').onclick = this.toggleInterval;
			if (!Dsq.jsonData.forum.streaming_realtime) {
				Dsq.$('dsq-realtime-show').onclick = this.show;
				updateNewPostCount();
			}
			if (Dsq.jsonData.thread.realtime_paused) {
				Dsq.Realtime.disableInterval();
			} else {
				Dsq.Realtime.enableInterval();
			}
		}
	}

	this.show = function() {
		insertNewPosts();
		updateNewPostCount();
		return false;
	}

	this.check = function() {
		if (!ongoing_request && Dsq.jsonData.realtime_enabled) {
			if (prev_script) {
				prev_script.parentNode.removeChild(prev_script);
			}
			ongoing_request = true;
			prev_script = Dsq.Utils.execScript('http://disqus.com/forums/25008977/realtime.js?timestamp=' + last_checked);
		}
	};

	this.update = function(timestamp, posts, users) {
		ongoing_request = false;
		last_checked = timestamp;

		if (users) {
			for (var user_id in users) {
				if (users.hasOwnProperty(user_id)) {
					if (!Dsq.jsonData.users[user_id]) {
						Dsq.jsonData.users[user_id] = users[user_id];
					}
				}
			}
		}

		if (posts) {
			for (var post_id in posts) {
				if (posts.hasOwnProperty(post_id)) {
					if (!Dsq.jsonData.posts[post_id]) {
						Dsq.jsonData.posts[post_id] = posts[post_id];
						new_posts.push(post_id);
					}
				}
			}

			if (Dsq.jsonData.forum.streaming_realtime) {
				insertNewPosts();
			} else {
				updateNewPostCount();
			}
		}
	};

}();

// DEPRECATED
Dsq.Iframes = function() {
	// Different style of object from the above. Hoping to switch to this for some reason.
	var obj = {};

	// Private
	var showIframeInContainer = function(container, id, markup) {
		// Look through container for iframes, hiding them, except show one that matches id
		// If none of them matched id, create a new iframe using markup and insert it.
		// Returns the iframe node if and only if it was newly created.
		var found = false;
		for (var i=0; i<container.childNodes.length; i++) {
			var child = container.childNodes[i];
			if (child.nodeName == 'IFRAME') {
				if (child.id == id) {
					child.style.display = 'block';
					found = true;
				} else {
					child.style.display = 'none';
				}
			}
		}
		if (found) {
			return;
		}
		// The iframe wasn't found, so construct it and add it to the container.
		// Don't use innerHTML because it might reload iframes
		var div = document.createElement('div');
		div.innerHTML = markup;
		var iframe = div.childNodes[0];
		div.removeChild(iframe);
		container.appendChild(iframe);
		return iframe;
	};

	// Public
	obj.makeReplyIframeId = function(opt_postId, opt_xtype) {
		var id = 'dsq-post-add-iframe';
		if (opt_xtype) {
			id += '-' + opt_xtype;
		}
		if (opt_postId) {
			id += '-' + opt_postId;
		}
		return id;
	};
	obj.makeLoginIframeId = function(opt_postId) {
		if (!opt_postId) {
			return 'dsq-login-iframe';
		}
		return 'dsq-login-iframe-' + opt_postId;
	};
	obj.makeReplyIframeName = function(opt_postId, opt_xtype) {
		var name = 'dsq-reply-frame';
		if (opt_xtype) {
			name += '-' + opt_xtype;
		}
		if (opt_postId) {
			name += '-' + opt_postId;
		}
		return name;
	};
	obj.showReplyIframeInContainer = function(container, opt_postId, opt_extraParams, opt_className) {
		// Construct the id so we can check if it's already present.
		// Hide any other iframes we find, and show this one if it's found.
		var params = opt_extraParams || {};
		// use xtype in the id and name so we can distinguish media replies from text replies:
		var id = Dsq.Iframes.makeReplyIframeId(opt_postId, params.xtype);
		var name = Dsq.Iframes.makeReplyIframeName(opt_postId, params.xtype);
		var attributes = {
			'id': id,
			'name': name,
			'class': opt_className || 'dsq-post-reply'
			};
		var markup = Dsq.Templates.frameReply(opt_postId, opt_extraParams, attributes);
		var iframe = showIframeInContainer(container, id, markup);
		// It was newly created
		if (iframe) {
			Dsq.Events.fire(Dsq.Events.REPLY_IFRAME_CREATED, {
				postId: opt_postId,
				node: iframe,
				xtype: params.xtype
			});
		}
	};
	obj.showLoginIframeInContainer = function(container, opt_postId) {
		var id = Dsq.Iframes.makeLoginIframeId(opt_postId);
		var markup = Dsq.Templates.frameLogin({id: id});
		showIframeInContainer(container, id, markup);
	};
	obj.showReplyIframeInContainerIfAllowed = function(container, opt_postId) {
		if (Dsq.jsonData.context.show_reply) {
			obj.showReplyIframeInContainer(container, opt_postId);
		} else {
			obj.hideAllInContainer(container);
		}
	};
	obj.hideAllInContainer = function(container) {
		for (var i=0; i<container.childNodes.length; i++) {
			var child = container.childNodes[i];
			if (child.nodeName == 'IFRAME') {
				child.style.display = 'none';
			}
		}
	};

	return obj;
}();

Dsq.Twitter = new function() {
	var that = this;

	this.startTwitterConnect = function() {
		var popupParams = 'location=0,status=0,width=800,height=400';
		that._twitterWindow = window.open(Dsq.jsonData.settings.disqus_url + '/_ax/twitter/begin/', 'twitterWindow', popupParams);
		that._twitterInterval = window.setInterval(that.completeTwitterConnect, 1000);
	};

	this.completeTwitterConnect = function() {
		if (that._twitterWindow.closed) {
			window.clearInterval(that._twitterInterval);
			window.location.reload();
		}
	};
};

Dsq.Yahoo = new function() {
	var that = this;

	this.startYahooConnect = function() {
		var popupParams = 'location=0,status=0,width=800,height=400';
		that._yahooWindow = window.open(Dsq.jsonData.settings.disqus_url + '/_ax/yahoo/begin/', 'yahooWindow', popupParams);
		that._yahooInterval = window.setInterval(that.completeYahooConnect, 1000);
	};

	this.completeYahooConnect = function() {
		if (that._yahooWindow.closed) {
			window.clearInterval(that._yahooInterval);
			window.location.reload();
		}
	};
};

Dsq.OpenID = new function() {
	var that = this;

	this.requestURL = function() {
		var message = '<table class="dsq-openid-form"><tr><td style="vertical-align:top;" rowspan="2"><img src="' + Dsq.jsonData.settings.media_url + '/images/openid-icon-100x100.png" /></td>';
		message += '<td><label for="dsq-openid-url">OpenID URL:</label></td><td><input type="text" id="dsq-openid-url" /></td></tr>';
		message += '<tr><td><label for="dsq-openid-username">Display name:</label></td><td><input type="text" id="dsq-openid-username" /></td></tr>';
		message += '<tr><td class="dsq-openid-submit" colspan="3"><input type="button" value="Sign in" onclick="Dsq.OpenID.startConnect();" /></td></tr>';
		message += "</table>";

		Dsq.Popup.popModal(message, 'Sign in using OpenID');
	};

	this.startConnect = function() {
		var isblank = function(str) {
			return /^\s*$/.test(str);
		};

		var openid_url = Dsq.$('dsq-openid-url').value;
		var username = Dsq.$('dsq-openid-username').value;

		if (isblank(openid_url)) {
			return;
		}

		var popupParams = 'location=0,status=0,width=800,height=500';
		var url = Dsq.jsonData.settings.disqus_url + '/_ax/openid/begin/' + '?url=' + encodeURIComponent(openid_url) + '&username=' + encodeURIComponent(username);
		that._openidWindow = window.open(url, 'openidWindow', popupParams);
		that._openidInterval = window.setInterval(that.completeConnect, 1000);
	};

	this.completeConnect = function() {
		if (that._openidWindow.closed) {
			window.clearInterval(that._openidInterval);
			window.location.reload();
		}
	};
};

Dsq.Reaction = new function() {
	var that = this;

	this.hide = function(id) {
		Dsq.Utils.execScript('http://disqus.com/forums/tpreg/hidereaction.js?' + 'reaction_id=' + id);
	};

	this.reportMissingReactions = function() {
		if (!Dsq.jsonData.request.is_moderator || !Dsq.jsonData.forum.reactions_enabled) {
			return;
		}

		if (Dsq.jsonData.thread.queued) {
			Dsq.Popup.popModal('Your report has been received. The system will automatically search for new reactions; if any are found, they will be displayed on this comment thread.<br/><br/>Thank&nbsp;you.',
												 'Reported missing reactions');
			return;
		}

		Dsq.Utils.execScript(Dsq.jsonData.settings.disqus_url + '/forums/tpreg/queueurl.js');
	};
};

Dsq.CNN = function() {
	var obj = {};

	obj.authenticate = function() {
		var url = Dsq.jsonData.settings.disqus_url + "/saml/cnn/try/";
		Dsq.Utils.postToUrl(url, {'target': document.location}, true);
	};

	return obj;
}();


if(Dsq.Utils.ie6) {
	(function() {
		DSQ_HEADER_AVATAR_RE = /<div class="dsq-header-avatar"(.*?)>/gim;
		Dsq.Templates.registerFilter('postPrependHeader', function(html, post_id) {
			// Add "onmouseout" for dsq-header-avatar for dropProfile
			// functionality since IE6 cannot use :hover.
			function _headerAvatarReplace(content, inner, _unused, html) {
				return '<div class="dsq-header-avatar" '
					+ inner
					+ ' onmouseout="Dsq.Post.dropProfile(' + post_id + ')">';
			}
			html = html.replace(DSQ_HEADER_AVATAR_RE, _headerAvatarReplace);
			return html;
		});
	})();
}





	// TODO: Move Seesmic code outside of the main script.  Don't let this script clobber the global namespace.
	if(typeof seesmic == 'undefined') { var seesmic = {}; }
	seesmic.widget = new function () {
		this.callback = function (data) {
			playerVersion = data.disqusplayer;
		};
	};

	
	var scriptEl = document.createElement('script');
	scriptEl.setAttribute('type', 'text/javascript');
	scriptEl.setAttribute('src', 'http://seesmic.com/version.js?callback=seesmic.widget.callback');
	document.getElementsByTagName('head')[0].appendChild(scriptEl);

	
	var scriptEl = document.createElement('script');
	scriptEl.setAttribute('type', 'text/javascript');
	scriptEl.setAttribute('src', 'http://media.disqus.com/javascript/library/swfobject.js');
	document.getElementsByTagName('head')[0].appendChild(scriptEl);

	function see_play_video(_videoUri, _add) {
		var swf = !!playerVersion ? playerVersion : 'http://seesmic.com/embeds/StandalonePlayer.swf';

		flashcontentDiv = Dsq.$(_videoUri + '_content');
		previewDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_preview');
		hideDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_hide');
		showDiv = Dsq.$('dsq-seesmic-' + _videoUri + '_show');
		if(_add) {
			// push flash widget
			var so = new SWFObject(swf, 'sotester', '300', '270', '9', '#000000');
			so.addVariable('video', _videoUri);
			so.addParam('allowFullScreen', 'true');
			so.addParam('allowScriptAccess','always');
			so.useExpressInstall('swfobject/expressinstall.swf');
			so.write(_videoUri + '_content');

			previewDiv.style.display = 'none';
			hideDiv.style.display = 'block';
			showDiv.style.display = 'none';
		}
		else {
			flashcontentDiv.innerHTML = '';
			previewDiv.style.display = 'block';
			hideDiv.style.display = 'none';
			showDiv.style.display = 'block';
		}
	};





(function() {
	//
	// Load theme.  This overrides the base templates with template functions
	// from the respective themes.
	//
	if (Dsq.jsonData.integration.theme == 4) {
		var theme = 'narcissus';
		// HACK: Set variable on window to use post message.
		window.disqus_use_postmessage = true;

		
		for(var prop in Dsq.Themes[theme]) {
			if(Dsq.Themes[theme] && Dsq.Themes[theme].hasOwnProperty(prop)) {
				Dsq.Templates[prop] = Dsq.Themes[theme][prop];
			}
		}
		
		for(var prop in Dsq.Post) {
			if(Dsq.Themes[theme] && Dsq.Themes[theme].hasOwnProperty(prop)) {
				Dsq.Post[prop] = Dsq.Themes[theme][prop];
			}
		}
	}

	//
	// Register templates.  This must be done after all themes are loaded.
	//
	Dsq.Templates.registerTemplate('authPost', Dsq.Templates.authPost);
	Dsq.Templates.registerTemplate('header', Dsq.Templates.header);
	Dsq.Templates.registerTemplate('footer', Dsq.Templates.footer);
	Dsq.Templates.registerTemplate('trackbacks', Dsq.Templates.trackbacks);
	Dsq.Templates.registerTemplate('reactions', Dsq.Templates.reactions);
	Dsq.Templates.registerTemplate('prependPost', Dsq.Templates.prependPost);
	Dsq.Templates.registerTemplate('appendPost', Dsq.Templates.appendPost);
	Dsq.Templates.registerTemplate('postPrependHeader', Dsq.Templates.postPrependHeader);
	Dsq.Templates.registerTemplate('postAppendHeader', Dsq.Templates.postAppendHeader);
	Dsq.Templates.registerTemplate('preBody', Dsq.Templates.preBody);
	Dsq.Templates.registerTemplate('postBody', Dsq.Templates.postBody);
	Dsq.Templates.registerTemplate('postFooter', Dsq.Templates.postFooter);
	Dsq.Templates.registerTemplate('_popupGeneric', Dsq.Templates._popupGeneric);
	Dsq.Templates.registerTemplate('voted', Dsq.Templates.voted);
	Dsq.Templates.registerTemplate('popupProfile', Dsq.Templates.popupProfile);
	Dsq.Templates.registerTemplate('postBox', Dsq.Templates.postBox);
	Dsq.Templates.registerTemplate('pagination', Dsq.Templates.pagination);
	Dsq.Templates.registerTemplate('postComment_onSuccess', Dsq.Templates.postComment_onSuccess);

})();

Dsq.container.className = "clearfix";
Dsq.container.innerHTML = ' \
<ul id="dsq-comments">\
	 <li id="dsq-comment-12487924">\
	 <div id="dsq-comment-header-12487924" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487924" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487924" href="http://desertstandard.com/" target="_blank" rel="nofollow">Roger Williams</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487924" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487924" class="dsq-comment-message">OMG City of Tempe and dodgy landowner at SE Corner of 7th and Mill, you have been SERVED!!!<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Roger Williams&#180;s last blog post..<a href="http://desertstandard.com/2009/06/17/positive-customer-experience-true-food-kitchen-and-exec-chef-michael-stebner/" rel="nofollow">Positive Customer Experience: True Food Kitchen and Exec Chef Michael Stebner</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487925">\
	 <div id="dsq-comment-header-12487925" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487925" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487925" href="http://blog.milehighurbanliving.com/" target="_blank" rel="nofollow">Derec Shuler@Mile High Urban L</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487925" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487925" class="dsq-comment-message">That\'s lame and it\'s good you\'ve documented everything.  I\'d file a police report for them removing, or would that be stealing, your car since they haven\'t met the legal requirements per the city code.<br><br>This is something I\'d probably tend to spend too much time on to make my point how rotten and crooked these folks are.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487926">\
	 <div id="dsq-comment-header-12487926" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487926" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487926" href="http://www.lortihomesblog.com/" target="_blank" rel="nofollow">David Lorti - Ahwatukee Real E</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487926" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487926" class="dsq-comment-message">Jay-<br><br>I think you are laying the case here for why the lot owner should be looked at in terms of what they have been doing.<br><br>Given the detail here and the case you laid out, maybe it\'s time to call Tempe PD and have them read through the post and tell you one way or the other if they feel you are correct.  <br><br>Perhaps you can file a police report for something to do with wrongful towing or possession of your vehicle?<br><br>David Lorti</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487939">\
	 <div id="dsq-comment-header-12487939" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487939" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487939">Ali Bawor</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487939" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487939" class="dsq-comment-message">I would say go to a City of Tempe Council meeting and present your evidence with scale models (I can help with that).  If you\'re not a resident, then there is bound to be someone who was towed that is.....</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487927">\
	 <div id="dsq-comment-header-12487927" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487927" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487927" href="http://www.escapesomewhere.com/" target="_blank" rel="nofollow">Ki@Austin Texas Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487927" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487927" class="dsq-comment-message">I dealth with a towing company when I was in school.  They towed my car from the outside the business I worked at.  Everyone I talked to was incredibly annoying.  Can you post the contact/email for the mayor of temple and the city council.   That way some of us could write and tell them that operating a tow trap is the worst possible approach to getting people to visit their town and spend tourist money.<br><br>And if they have any interest in tourism their cops need to start watching for this abuse activity by tow companies and agressively going after the tow companies.  These guys should get their license revoked.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487928">\
	 <div id="dsq-comment-header-12487928" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487928" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487928" href="http://www.scottsdaledealfinder.com/" target="_blank" rel="nofollow">Melanie Johnston</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487928" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487928" class="dsq-comment-message">This towing company HAS NO IDEA who they are up against. They will rue the day they hooked up your bumper. Go make them pay for all the pain they have caused people, like that nice couple. Were they in the market to buy a home? You are no longer simply Phoenix Real Estate Guy. You are now Tempe Towing Avenger Guy. Your community needs you.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487930">\
	 <div id="dsq-comment-header-12487930" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487930" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487930" href="http://www.besthomepix.com/" target="_blank" rel="nofollow">Dan Mitchell @ Best Home Pix</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487930" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487930" class="dsq-comment-message">Go Get \'Em, Jay!<br><br>You say you\'re not a lawyer... yet you do an excellent job laying out your case.<br><br>The only thing you seem to be missing would be video, possibly a point-of-view as a driver approaches and enters the lot.  But I\'m sure you could get that with your ever-present Flip, if you don\'t have it already!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487931">\
	 <div id="dsq-comment-header-12487931" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487931" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487931">Julia</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487931" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487931" class="dsq-comment-message">Wow, fantastic post! Please, please pursue this in court for the sake of everyone who was ever towed from this lot by these criminals.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487932">\
	 <div id="dsq-comment-header-12487932" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487932" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487932" href="http://chuckreynolds.us/" target="_blank" rel="nofollow">Chuck Reynolds@Phoenix Wordpre</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487932" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487932" class="dsq-comment-message">Very good post and very detailed I might add.  I\'d like to see what Tempe / the mayor / a small claims court says...  Nobody ever fights this stuff... you have a lot of ammo going into this - run with it man!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487935">\
	 <div id="dsq-comment-header-12487935" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487935" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487935" href="http://www.tinafountain.com/" target="_blank" rel="nofollow">Tina@Atlanta Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487935" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487935" class="dsq-comment-message">Jay, take them to court, if I were in a jury and saw your evidence I\'d rule in your favor.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Tina&#180;s last blog post..<a href="http://www.tinafountain.com/blog/tina-fountain/atlanta-is-now-americas-largest-wireless-hotspot/show/" rel="nofollow">Atlanta Is Now America\'s Largest Wireless Hotspot</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487936">\
	 <div id="dsq-comment-header-12487936" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487936" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487936" href="http://GregoryBain.com/" target="_blank" rel="nofollow">Gregory Bain</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487936" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487936" class="dsq-comment-message">You are not going to get any help from the Police. You are not going to get any help from city council. It would seem to me your only recourse is to pay the fine, file a complaint with the police department and take the tow company and land owner to small claims court. The judge will most likely agree with you and order them to pay you back the towing charge but he will not give you any compensation for you time and aggrevation. If  you are going to go that route, you may want to have a "friendly" mechanic look over your car to find damages done by the towing company and include that in your suit. Good Luck. (I\'m not a lawyer and am not giving legal advise to anyone. However, I have been pissed off and stood in front of those who are "here to help us" a few times in my life). Good Luck.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487937">\
	 <div id="dsq-comment-header-12487937" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487937" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487937">Michael</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487937" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487937" class="dsq-comment-message">"They" don\'t know who they\'re messin\' with.<br><br>Logic and reason do not account for why things are the way they are, only someone\'s interpretation of logic and reason.<br><br>Based on the obvious details you\'ve shared - if it were me, I\'d let them attack with their "we\'ll destroy your credit...BS".  You\'ll spend WAY more time trying to prove their logic and reason support changes for future parking perps.<br><br>When all is said and done - the majority of perps who park at this location are college kids anyway, and really...what credit rating do they have to destroy?<br><br>IMHO - changing the world "one parking lot at a time" isn\'t deserving of the principle infusion being attempted.  Just my opinion, my car is in my garage all safe and sound.  :)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487934">\
	 <div id="dsq-comment-header-12487934" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487934" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487934" href="http://twitter.com/PHXPhoto/statuses/2218677523" target="_blank" rel="nofollow">PHXPhoto (Dan Mitchell)</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487934" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487934" class="dsq-comment-message">Towing Scam. The Day After — The Phoenix Real Estate Guy: <a href="http://tinyurl.com/lry8rm" rel="nofollow">http://tinyurl.com/lry8rm</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487938">\
	 <div id="dsq-comment-header-12487938" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487938" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487938" href="http://www.joelane.com/real-estate-blog/" target="_blank" rel="nofollow">Colleen@Kennewick Homes</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487938" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487938" class="dsq-comment-message"><blockquote><br><em>&quot;...clearly visible and readable from a distance of fifty (50) feet away and at all points of entry... &quot;</em><br></blockquote><br>Nice work Jay. Apparently, the towing company picked the wrong dude to tow. I would imagine scores (hundreds) of folks are entitled to some towing fee refunds. <br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Colleen&#180;s last blog post..<a href="http://www.joelane.com/real-estate-blog/kennewick-wa-homes-for-sale/" rel="nofollow">Kennewick WA Homes for Sale</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487933">\
	 <div id="dsq-comment-header-12487933" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487933" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487933" href="http://twitter.com/paulvalach/statuses/2219278531" target="_blank" rel="nofollow">paulvalach (paul valach)</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487933" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487933" class="dsq-comment-message">RT <a rel="nofollow" href="http://twitter.com/PHXPhoto">@PHXPhoto</a>: Towing Scam. The Day After — The Phoenix Real Estate Guy: <a href="http://tinyurl.com/lry8rm" rel="nofollow">http://tinyurl.com/lry8rm</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487940">\
	 <div id="dsq-comment-header-12487940" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487940" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487940">Joe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487940" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487940" class="dsq-comment-message">Man I would love to say going to court is the way to go, but I did just that and found I was wasting my time. Not only did I waste my time but the tow company counter sued me for REASONABLE attorney fees. let me just say no attorney fee is reasonable. I ended up paying another $1100. for my anguish. And what is even worse is the tow company actually did damage my car, the judge said unless I could prove my car wasn\'t damaged prior to the tow then I had no case. You are in real estate, why don\'t you buy the lot and we can all park there for free when we want to go down Mill and get plastered</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487945">\
	 <div id="dsq-comment-header-12487945" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487945" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487945" href="http://www.PhoenixRealEstateGuy.com/" target="_blank" rel="nofollow">Jay Thompson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487945" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487945" class="dsq-comment-message">Joe wrote: "You are in real estate, why don’t you buy the lot and we can all park there for free..."<br><br>I\'d love to buy that lot and just charge a reasonable fee for parking. This would allow me to spend a lot of time on the beach drinking cocktails out of coconuts.<br><br>This is <i>prime</i> real estate. I\'m almost afraid to figure out the market value of a lot at Mill & 7th Street. But I don\'t need to calculate it to know I can\'t afford it.<br><br>Regarding your legal experience with towing... I can see how proving damage would be difficult. I don\'t think it\'s difficult to prove signage doesn\'t meet very specific requirements outlined in the city code.<br><br>Of course I didn\'t think it was all that difficult to prove that OJ butchered Ron and Nicole either...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487941">\
	 <div id="dsq-comment-header-12487941" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487941" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487941" href="http://www.RealtyBlogger.info/" target="_blank" rel="nofollow">Jim Zirbes</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487941" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487941" class="dsq-comment-message">I am so sorry you (and the others you met who had their cars towed) have been exposed to this unsettling event. It\'s proof positive - with that towing company as an example - to the saying  "Some bring joy wherever they go...and others whenever they go". Hopefully your stand for (&amp; on) principle and decency will prevail!<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Jim Zirbes&#180;s last blog post..<a href="http://jimrejournal.blogspot.com/2009/06/getting-it-old.html" rel="nofollow">Getting it $OLD!</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487942">\
	 <div id="dsq-comment-header-12487942" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487942" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487942" href="http://www.brandonre.com/propertymanagement.php" target="_blank" rel="nofollow">Dan @ Tampa Property Managemen</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487942" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487942" class="dsq-comment-message">Hey Jay , It never ceases to amaze me what tactics companies will do make a buck, just out of principle I hope you do fight it in court. I am sure you will win</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487943">\
	 <div id="dsq-comment-header-12487943" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487943" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487943" href="http://jimlittleaz.com/" target="_blank" rel="nofollow">Jim Little</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487943" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487943" class="dsq-comment-message">Jay, they know you vote in Gilbert. Why would they care?<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Jim Little&#180;s last blog post..<a href="http://jimlittleaz.com/2009/06/06/heros-enough-saiid/" rel="nofollow">Heros, Enough Said!</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487944">\
	 <div id="dsq-comment-header-12487944" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487944" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487944" href="http://www.PhoenixRealEstateGuy.com/" target="_blank" rel="nofollow">Jay Thompson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487944" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487944" class="dsq-comment-message">Jim - <br><br>An excellent question! <br><br>As you know, a significant portion of Tempe\'s existence is dependent on "tourists" (particularly the Mill Avenue area where this sordid mess took place). "Tourists" includes residents of neighboring communities. While it\'s true I cannot  vote at the ballot box in Tempe, I can certainly vote with my feet and my wallet.<br><br>In other words, they <i>should</i> care. I\'ve had some communication with City of Tempe officials (just got an email from the Mayor in fact) and they do appear to be concerned. Could just be lip service of course, but some do truly express concern and seem to be looking into this and other allegations.<br><br>It\'s all politics and bureaucracy though so believe me, I\'m not holding my breath....</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487946">\
	 <div id="dsq-comment-header-12487946" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487946" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487946" href="http://jvre4you.com/" target="_blank" rel="nofollow">Jana</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487946" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487946" class="dsq-comment-message">Jay could you possibly put an add in the paper to see how many others have been scammed?  Class action suit!  At the very least the proper signage would go up.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487947">\
	 <div id="dsq-comment-header-12487947" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487947" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487947">Nina</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487947" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487947" class="dsq-comment-message">If you really want to get them back, put up a sign at the entrance to the lot warning others (knowing it will prob get removed). Get a group of friends together and stand at the entrance with signs of warning during peak hours.<br><br>Hit \'em where it hurts...their pocketbook. If no one parks there, they can\'t tow=no $$$</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487948">\
	 <div id="dsq-comment-header-12487948" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487948" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487948" href="http://www.agentstealth.com" target="_blank" rel="nofollow">Real Estate Leads</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487948" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487948" class="dsq-comment-message">Good for you! Most people just pay their tickets and move on. It\'s about time someone took a stand.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487949">\
	 <div id="dsq-comment-header-12487949" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487949" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487949">Brewer Caldwell</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487949" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487949" class="dsq-comment-message">Great, most people do just complain and pay. Go get them!!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487950">\
	 <div id="dsq-comment-header-12487950" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487950" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487950" href="http://www.escapesomewhere.com/austinblog/" target="_blank" rel="nofollow">Ki@Austin Texas Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487950" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487950" class="dsq-comment-message">&gt;Jay, they know you vote in Gilbert. Why would they care?<br><br>Here is why the should care<br><br><a href="http://siteanalytics.compete.com/phoenixrealestateguy.com+tempecvb.com/" rel="nofollow">http://siteanalytics.compete.com/phoenixrealest...</a><br><br>Jay\'s site gets 684% more traffic than the official tourism site for the city of Tempe.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Ki&#180;s last blog post..<a href="http://www.escapesomewhere.com/austinblog/2009/05/austin_real_estate_april_2009.html" rel="nofollow">Austin Real Estate Statistics for April 2009</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487951">\
	 <div id="dsq-comment-header-12487951" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487951" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487951">Joe Lane</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487951" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487951" class="dsq-comment-message">Jay,<br><br>Perhaps phone calls to your local television/radio station(s) are in order.  You\'ve done a great job in presenting the details, and I\'m sure your story is great fodder for a news channel or radio station.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487953">\
	 <div id="dsq-comment-header-12487953" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487953" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487953" href="http://www.PhoenixRealEstateGuy.com/" target="_blank" rel="nofollow">Jay Thompson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487953" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487953" class="dsq-comment-message">Funny you should mention television Joe. I\'m meeting a local CBS reporter at the lot tomorrow....</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487952">\
	 <div id="dsq-comment-header-12487952" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487952" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487952" href="http://www.brantfordrealestateguy.com/" target="_blank" rel="nofollow">Brantford Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487952" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487952" class="dsq-comment-message">Jay you realize that when you win, they`re going to make their signs bigger and continue the scam innocent people. I hope you win though because this is just plain stupid.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Brantford Real Estate&#180;s last blog post..<a href="http://www.brantfordrealestateguy.com/brantford-real-estate/brantford-home-inspection-part-conditional-offer/" rel="nofollow">Your Brantford Home Inspection is Part of the Conditional Offer</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487954">\
	 <div id="dsq-comment-header-12487954" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487954" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487954" href="http://www.ThePhoenixAgents.com/" target="_blank" rel="nofollow">Heather</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487954" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487954" class="dsq-comment-message">Jay, I love you man! You get a bone in your mouth and you just don\'t let go. <br><br>"I\'m not a lawyer"  ... Meeting CBS television crew... "Jay’s site gets 684% more traffic than the official tourism site for the city of Tempe."    You. Rock! <br><br>Melanie Johnston - "Tempe Towing Avenger Guy" = priceless. Expect a twitter follow from me, I need more laughs like the ones you dish out!<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Heather&#180;s last blog post..<a href="http://thephoenixagents.com/several-valley-schools-named-among-nations-best/" rel="nofollow">Several Valley Schools Named Among Nation’s Best</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487955">\
	 <div id="dsq-comment-header-12487955" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487955" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487955" href="http://www.newhomessection.com/" target="_blank" rel="nofollow">Rick NHS</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487955" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487955" class="dsq-comment-message">They got me there about two years ago... I left my car for 20 mins tops, and sure enough that was enough time for them to haul my car off.<br><br>It is a scam... But what pissed me off the most was their guy who drives around the lot in a pick-up offering to take you to the impound lot. I told him to go F himself! (I was rather pissed-off at the time)<br><br>Good luck exposing these thieves.. it\'s the biggest con in town.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487956">\
	 <div id="dsq-comment-header-12487956" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487956" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487956">Joe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487956" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487956" class="dsq-comment-message">Hey Jay, I happened to be in Tempe today and made a point to go by that lot. No offence but on that lot I wouldn"t have ever parked there. There are other signs that say no parking as well as that tow companies signs. I mean I know it feels like a scam but it says restricted parking so im sure anyone who gets away with it has an arrangement or is paying a fee to be allowed there. The spot I was towed from was a much grayer area than this place, and I got no where with it. I\'m not sticking up for them I am just saying maybe this one isn\'t bad enough that you end up with a lawsuit for calling them a scam or something. Remember they could always try and hurt your business in some way. Best of luck.  Joe</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487957">\
	 <div id="dsq-comment-header-12487957" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487957" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487957">The Wizard</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487957" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487957" class="dsq-comment-message">Well Jay from what i see you put a lot of effort in your investigation,But I am with Joe if there was other signs saying don\'t park there then why did you park there? I mean you can see the signs in your pictures and if you thought they was towing signs why did you choose to park there?<br>you said yourself that you could not afford to buy a lot there because the real estate in Tempe is to expensive for you, So why would you choose to park on a lot that you did not own? really what gives you the right to park there? why didn\'t you go and park at the business that you and your friends were going to visit? or maybe a lot where you could pay to park? myself i would choose 1 of those options either that or learn how to read the signs around me before getting towed not waiting till after the fact. myself i live in Ohio and i don\'t know the parking issues that you might have there. but if it would have been me well i would not have parked there. especially if i would have seen any kind of  signs that said no parking or restricted parking . i would not have taken that chance myself. well good luck Jay</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487959">\
	 <div id="dsq-comment-header-12487959" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487959" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487959" href="http://www.PhoenixRealEstateGuy.com/" target="_blank" rel="nofollow">Jay Thompson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487959" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487959" class="dsq-comment-message">Wizard and Joe - <br><br>I parked there because I didn\'t see any no parking signs. I\'m a pretty decent, law-abiding guy. If I had seen a no-parking sign, I wouldn\'t have parked there.<br><br>That\'s the point. Despite what Joe says, there are no other signs in that lot other than what I reported in this post. And the signs that are there don\'t meet city code. The reason there is a code in the first place is so that signs are posted where people can see them. <br><br>Yes, you can see them in the picture. Keep in mind this was taken at 5:30 in the afternoon, not 9:30 at night. They are also highlighted in the photos. Trust me, there were no little red circles around them either time I was there. ;)<br><br>I\'m not trying to get out of this because of the money. It\'s $135, it\'s not going to kill me (though I feel sorry for the college kids and others that can\'t afford it).<br><br>I am all for private property rights. I\'ve posted on this very blog before that I\'m not a fan of big government or regulation. But city codes for things like this are necessary for exactly this reason -- to prevent people from being taken advantage of and getting ripped off.<br><br>If the property owner doesn\'t want people parking there, the solution is simple. Put up proper signage that people can see. Put a chain across the entrance. That this isn\'t done leads to the reasonable conclusion that the owner <i>wants</i> people to park there. <br><br>Had I parked in a lot with legal signage, without a bait car, the most you would have heard from me would have been a "Crap, got towed, that sucks". This is  different in my opinion.<br><br>Apparently I am not the only one with this opinion. I\'ve talked to the Mayor of Tempe and a Tempe Councilmember and the Tempe Community Relations Manager. All are frustrated, all have stories about towing operators. The city council in fact recently passed laws to try to help stop these aggressive towing practices (<a href="http://blogs.phoenixnewtimes.com/valleyfever/2009/05/tempe_changes_rules_on_towing.php" rel="nofollow">source</a>).<br><br>I\'m a big boy. If I do something wrong or make a mistake, I\'ll pay my dues and move along. <br><br>But if I see someone deceiving people, ripping people off, setting up bait cars, marking a lot illegally and taking advantage of people, I\'m going to call it out and try to get it stopped. <br><br>That\'s just how I roll.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487958">\
	 <div id="dsq-comment-header-12487958" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487958" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487958" href="http://blog.dodeals.com/" target="_blank" rel="nofollow">Bryan</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487958" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487958" class="dsq-comment-message">What a dirty tactic<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Bryan&#180;s last blog post..<a href="http://blog.dodeals.com/bank-foreclosed-homes-for-sale/" rel="nofollow">Bank Foreclosed Homes For Sale</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487960">\
	 <div id="dsq-comment-header-12487960" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487960" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487960">Kyle Pearson</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487960" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487960" class="dsq-comment-message">Does anybody else get the feeling that Wizard and Joe are from the tow company trying to rationalize their junk business?<br><br>But trust me, it\'s not just those guys. ASU is arguably worse. My friend left their car outside of a dorm in an empty parking spot (had a parking pass, just not the right lot) and it was towed within 10 minutes. You can\'t park at a meter and have it go over for more than a minute (literally) without a parking cop come up and write up a $100 ticket. That\'s why I plan to fly a helicopter to school from now on...</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487961">\
	 <div id="dsq-comment-header-12487961" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487961" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487961" href="http://GregoryBain.com/" target="_blank" rel="nofollow">Gregory Bain</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487961" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487961" class="dsq-comment-message">I would love to know how the TV interview went. I have a feeling the lot suddenly had a lot of signage or the camera crew was blocked from getting any evidence shots for the viewing public. But, it\'s just a feeling. Hope it went well.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487962">\
	 <div id="dsq-comment-header-12487962" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487962" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487962">Joe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487962" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487962" class="dsq-comment-message">I don\'t work for any tow company but I am a law student and my thing is we all make mistakes. When I went by that lot I could see a lot of signs. But like Jay said that was during the day. A friend of mine who also is at ASU said that people can buy yearlong permission to park at that lot. So when I saw Jays pic that identified an illegally parked car, which also happened to be at the lot when I went by I checked, it had purchased from the proprietor a yearlong pass to park there. I just don\'t want to see anyone get sued for their choice of words. A quote bait car probably was allowed permission to park there through their purchase of a permit to do so. As far as I have seen Jay may have been slanderous is his choice of words, and I wouldn\'t want to see him sued for just trying to do what he feels is right. Having said that sorry to make anyone feel like I am a bad guy by just be rational in the situation people are entitled to their opinions feel free to say anything you want just don\'t tell the monster people you are doing it in a public forum or it may end up costing a lot more than the impound fee. A lawsuit is a tax write-off for them but for most people it is just a major pain in the butt.   Joe</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487963">\
	 <div id="dsq-comment-header-12487963" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487963" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487963" href="http://www.PhoenixRealEstateGuy.com/" target="_blank" rel="nofollow">Jay Thompson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487963" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487963" class="dsq-comment-message">Here is the video CBS 5 did:<br><a href="http://www.kpho.com/video/19809165/index.html" rel="nofollow">http://www.kpho.com/video/19809165/index.html</a><br><br>And here is the story:<br><a href="http://www.kpho.com/news/19807691/detail.html" rel="nofollow">http://www.kpho.com/news/19807691/detail.html</a><br><br>Since the night of the incident, the sign that did not meet City Code that the police and tow truck driver repeatedly referred to has been removed.<br><br>Signs meeting city code have been installed.<br><br>If the signage was acceptable the night we were towed, why was a sign removed and two more installed within 48 hours of the incident? To me, that is all but an admission of guilt.<br><br>Joe - I appreciate your thoughts and opinion. Even if the "bait car" was authorized to park there, it was a pretty sleazy thing to do. As the Tempe Councilmember said in the video, it doesn\'t meet the intent of the law and is disingenuous. The two employees at the impound lot were also not too pleased to hear about this aspect of the story.<br><br>By the way, slander is the spoken word, libel is written.<br><br>If the owner, property manager or whoever is in charge of this lot <i>really</i> didn\'t want people parking there, the solution is simple. Install signs that meet city code. That they didn\'t do this (until after the fact and quite possibly under pressure from the City of Tempe) speaks volumes.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487964">\
	 <div id="dsq-comment-header-12487964" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487964" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487964">Joe</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487964" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487964" class="dsq-comment-message">Jay, I hate to argue but as you said in your own original post there were signs that met the code as well as others that did not, like you also said the Tempe police told you it was properly signed. Maybe someone upset other than yourself tore down the signs who knows. Maybe the tow company had to replace the signs that were torn down, by someone other than yourself of course. The city code does not indicate how many signs are needed just that they be visible at the entrance. one entrance was signed properly and one was missing, however extra signs were visible. That would be considered overkill on the lot. Not to mention the fact that you yourself said you ignored the completely visible NO PARKING sign posted above the very visible orange barricade. The point I see that no one is mentioning is that some people chose to pay for their ability to park on that lot and not be restricted as the signs say. You chose to ignore or disregard the signs and park with your friends in spots that other hard working people had paid for. Do you also eat the sandwich in the company fridge with Betty"s name on it??? And yes slander and libel are two completely different terms but you run the risk of being guilty of both with these posts and a news, audible broadcast. At first I was on your team about this issue based on what you had told us all, but after doing just a little investigating I see that you are just a sour grapes person with nothing better to do than try to cause others harm for your own mistakes. What is the license plate # of the "bait car" what did the tow employee look like? Go identify him at the tow company be more diligent in your accusations. For all anyone knows that was just a poor person who actually paid for their right to park on that lot. Unlike you and your friends of course. For me, checking in on your blog is a thing of the past. I had previously enjoyed some of your posts, but I think you are not the person that at least I had been led to believe you were. In my humble opinion you blame others when you make mistakes, and attempt to use those mistakes to get publicity for yourself. A person like that would not be trusted to sell me a soda at circle K much less a house. Good luck in whatever you do. I just hope some zealot like yourself buys a house from you and then finds some reason to blog about you in a "real estate scam". Pay attention people this transparent little man, in my opinion will end up hurting you far more than he could ever help you.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487965">\
	 <div id="dsq-comment-header-12487965" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487965" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487965" href="http://GregoryBain.com/" target="_blank" rel="nofollow">Gregory Bain</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487965" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487965" class="dsq-comment-message">Ya ever notice that the anonymous Joe Blows of the world always accuse the guy who puts his full name, business address and telephone numbers along with countless other pieces of personal data out there of being the one who is untrustworthy?<br><br>great news telecast - thanks for posting. It looks like you have a lot of support, Jay. I just think you are still going to pay and the "joes" of the world are going to win. Tempe should fine the owner of the lot and the tow company, or, at least pay the tow of everyone that got scammed that night.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487966">\
	 <div id="dsq-comment-header-12487966" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487966" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487966" href="http://www.PhoenixRealEstateGuy.com/" target="_blank" rel="nofollow">Jay Thompson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487966" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487966" class="dsq-comment-message">Joe - <br><br>You are certainly entitled to your own opinion. However, I\'d like to counter a few things you said in your last comment.<br><br>"as you said in your own original post there were signs that met the code as well as others that did not"<br><br>Please read with a more critical eye Joe. As a law student, that\'s a good skill to have. There were not <i>signs</i> (plural) that met code. There was <i>one</i> sign, presented edge on to the entrance and approximately 160 feet from said entrance that met code.<br><br>"Maybe someone upset other than yourself tore down the signs who knows."<br><br>Sure, someone upset could have pulled the sticker off the electrical box. That happening at the same time that new signs meeting code were installed is a quite a remarkable coincidence.<br><br>"The city code does not indicate how many signs are needed just that they be visible at the entrance. one entrance was signed properly and one was missing, however extra signs were visible. "<br><br>There was no tow warning sign visible at the entrance Joe. There is now. And again, "extra signs" were not visible.<br><br>"Not to mention the fact that you yourself said you ignored the completely visible NO PARKING sign posted above the very visible orange barricade."<br><br>Again, please read before you accuse me of something I never said. I did not say I ignored the no parking sign, please don\'t put words in my mouth. That sign appeared to me to be referring to no parking along the easement, not the lot. It is also not a tow warning sign. I got towed Joe, not issued a parking ticket as would have been appropriate with that sign.<br><br>"You chose to ignore or disregard the signs and park with your friends in spots that other hard working people had paid for."<br><br>I did not chose to ignore or disregard a sign I never saw.<br><br>"Do you also eat the sandwich in the company fridge with Betty”s name on it???"<br><br>What the hell?<br><br>"And yes slander and libel are two completely different terms but you run the risk of being guilty of both with these posts and a news, audible broadcast."<br><br>I slandered the towing company in the CBS video??? I didn\'t even mention their name. How you could slander someone without mentioning their name is beyond me. If they felt I libeled them in my posts, they are welcome to pursue that.<br><br>"For all anyone knows that was just a poor person who actually paid for their right to park on that lot."<br><br>Whatever Joe. When one of the tow truck drivers gets in and drives away in the last remaining car on the lot, I don\'t really care if he paid to park there or not. It was an incredibly deceptive practice.<br><br>"In my humble opinion you blame others when you make mistakes, and attempt to use those mistakes to get publicity for yourself."<br><br>You don\'t know me from Adam. "Getting publicity" is a ridiculous statement. I don\'t need "publicity" from writing about getting ripped off.<br><br>"I just hope some zealot like yourself buys a house from you and then finds some reason to blog about you in a “real estate scam”."<br><br>That will never happen Joe. I don\'t rip people off, I don\'t deceive people, and I follow every rule and regulation that my local, state and national associations require of me. In fact, I go well beyond those regulations in my ethics and business practices.<br><br>"Pay attention people this transparent little man, in my opinion will end up hurting you far more than he could ever help you."<br><br>So you accuse me of libel and then come here and call me a zealot, say I blame others, try to cause others harm, can\'t be trusted, and that I\'ll end up hurting people?<br><br>Do you see the irony in that?<br><br>"For me, checking in on your blog is a thing of the past."<br><br>That\'s not a problem Joe. You\'re welcome to read my posts or not. Have a nice life.<br><br>(And thanks Gregory)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487967">\
	 <div id="dsq-comment-header-12487967" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487967" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487967" href="http://ali5756.yelp.com/" target="_blank" rel="nofollow">Ali Bawor</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487967" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487967" class="dsq-comment-message">Howdy Joe,<br><br>It\'s pretty clear that you work for the unnamed towing company.  Oh, and I love the "law student" bit, it would be clever, except....why is a law student interested in this blog?  Is it perhaps because you are somehow connected with the towing company who is catching a ton of flack from all angles?<br><br>I\'ve only ever encountered persons who cry "libel" and "slander" to be those whose reputation is already tarnished to the point where any additional hits just bury them deeper into the rut they got themselves into with their own shady business practices.  Said practices are fantastic for your bottom line in the short term, but as you\'re now finding out (probably because you\'re having trouble procuring towing contracts with corps and public entities) that it is VERY troublesome for the long-term financial health of your company.  In short, yes, you can screw people today and fill your pockets with their fresh ATM cash, but you\'ll find that you catch more bees with honey than vinegar.  People talk, and I\'m sure you\'ve probably towed someone\'s car who is in a position to close doors for you that you haven\'t even attempted to open yet.<br><br>In this case, its likely that this incident is like throwing a matchstick into a forest fire, with all that I\'ve heard about your company, its only really pulling a magnifying glass to your unethical practices.  <br><br>Btw, if you were really a law student you would know that libel and slander are extremely difficult to prosecute when the offended party has allowed prior negative public statements to go uncontested.  The court assumes that the offending remarks/speech are true if they go uncontested, or if, at the very least, there is no PR effort to combat the claims.  FACT: Posting comments on a blog under a pseudonym is not a PR move, its bad business.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Ali Bawor&#180;s last blog post..<a href="http://www.yelp.com/biz/pure-romance-party-yorktown#hrid:LxftwcxMUo6EyLxrGDQaQQ" rel="nofollow">Pure Romance Party (5/5) on Yelp</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487968">\
	 <div id="dsq-comment-header-12487968" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487968" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487968" href="http://halifaxrealestatebroker.com/" target="_blank" rel="nofollow">Halifax Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487968" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487968" class="dsq-comment-message">Take them to task for the size of their sign. You obviousally have a case there. They can\'t continue to get away with this scam.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Halifax Real Estate&#180;s last blog post..<a href="http://halifaxrealestatebroker.com/2009/06/15/a-rental-property-horror-story/" rel="nofollow">A Rental Property Horror Story</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487969">\
	 <div id="dsq-comment-header-12487969" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487969" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487969">Michael</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487969" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487969" class="dsq-comment-message">Note to self:<br><br>Don\'t use "Joe" for any of my future legal needs.  Surely he\'ll end up with the annoying ambulance chasers (P to the h - you know who you are).<br><br>Some people must get a lot of exercise jumping to conclusions.  Sorry to hear of their fall.  Oh well - another one bites the dust.<br><br>I\'m not a religious man, but the following song came to my head today (choose your artist)...<br><br>"And the sign said ... everyone welcome come in, kneel down and pray.  When they passed around the plate at the end of it all, I didn\'t have a penny to pay.  So I got me a pen &amp; a paper, and I made up my own little sign - it said thank you lord for thinkin\' about me I\'m alive and feelin\' fine".<br><br>Onward to a new day - hope all Father\'s had a great day today !!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487971">\
	 <div id="dsq-comment-header-12487971" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487971" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487971">A Real Lawyer</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487971" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487971" class="dsq-comment-message">Unlike Joe, I\'m a real lawyer, and I absolutely hate towing companies.  I\'ve never met an honest one that played fairly.  I\'m considering taking a couple cases against Monster pro bono.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487972">\
	 <div id="dsq-comment-header-12487972" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487972" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487972" href="http://www.PhoenixRealEstateGuy.com/" target="_blank" rel="nofollow">Jay Thompson</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487972" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487972" class="dsq-comment-message">A Real Lawyer - <br><br>I\'d love to talk to you. Call me any time at 480-235-4447 or email me at <a href="mailto:jay@thompsonSrealty.com" rel="nofollow">jay@thompsonSrealty.com</a></div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487973">\
	 <div id="dsq-comment-header-12487973" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487973" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487973" href="http://www.century21humpal.com/" target="_blank" rel="nofollow">Jason Humpal-Loveland Real Est</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487973" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487973" class="dsq-comment-message">It is great to see you have brought so much attention to this-I can\'t believe (well, I can, but don\'t want to) that the tow driver dared you to sue them....go get them, Jay!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487974">\
	 <div id="dsq-comment-header-12487974" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487974" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487974" href="http://GregoryBain.com/" target="_blank" rel="nofollow">Gregory Bain</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487974" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487974" class="dsq-comment-message">Dollar for donut (about what they cost on today\'s market) I would bet that the Monster Tow has a contract with the city of Tempe and it\'s police department for tow services. I am sure if you looked real hard you would find the connection with city council and or the "management" of the town and the company. And, it may very well be that the "lawyer" that owns the lot has connections with the town and its school district for legal services. It was good that you let everyone know about the scam, but it\'s just the way things work, Jay. Think bunnies and puppies ;-)</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487975">\
	 <div id="dsq-comment-header-12487975" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487975" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487975">Kate</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487975" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487975" class="dsq-comment-message">This has been an incredible story and the comments interesting too.<br><br>Even if you take them to small claims court, please do so, and keep<br>us apprised of any new developments!  <br><br>Follow the money....</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487976">\
	 <div id="dsq-comment-header-12487976" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487976" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487976" href="http://www.lvrealty.net/" target="_blank" rel="nofollow">Charles@Las Vegas Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487976" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487976" class="dsq-comment-message">GO GET\'EM Jay. Funny how they are using the \'law\' to stick you with a ridiculous towing bill but don\'t adhere to it themselves. I wonder how much money that little lot generates for the towing company and how much of that the land owner gets.<br><br>&lt;abbr&gt;<em></em>&lt;/abbr&gt;&lt;abbr&gt;<em>Charles&#180;s last blog post..<a href="http://www.lvrealty.net/news/las-vegas-housing-market" rel="nofollow">Las Vegas Housing Market: Foreclosures Down, Sales Up</a></em>&lt;/abbr&gt;</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487977">\
	 <div id="dsq-comment-header-12487977" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487977" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487977">Greg Ferguson</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487977" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487977" class="dsq-comment-message">Jay,<br><br>You still have it!  This has been one of the more entertaining posts in recent memory.  I hope you can change a seemingly rotten system.<br><br>As an aside, in 1984 and 1985, I spent some time at the Motorola Mesa plant working on starting up the 256k DRAM (yep, I am old).  The MOS 5 guys must have told me a dozen times "be careful when you park anywhere around ASU; they\'ll tow you in minutes."  So, even back then, it was considered to be a "parking trap".  <br><br>Regards.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487978">\
	 <div id="dsq-comment-header-12487978" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487978" class="dsq-comment-cite">\
	 <a id="dsq-author-user-12487978" href="http://www.portlandhometeam.com/" target="_blank" rel="nofollow">Phil Wax-Portland Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487978" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487978" class="dsq-comment-message">Dang, it is interesting to read all the comments-and I\'d be "Joe" is either part of the tow truck company that scammed everyone in that lot or a tow truck driver somewhere else. Go get them, Jay, and good luck in bringing them down!</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487979">\
	 <div id="dsq-comment-header-12487979" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487979" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487979">Paco McDooby</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487979" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487979" class="dsq-comment-message">People are talking a lot about Tempe municipal law, but they also need to look at Arizona state law.  It is possible to comply with Tempe municipal law while violating Arizona state law (and vice versa).<br><br>-------------------<br><br>ARS 9-499.05 states, in part, that:<br><br>B. The owner or agent of the owner of the private property shall be DEEMED TO HAVE GIVEN CONSENT TO UNRESTRICTED PARKING by the general public in any parking area of the private property UNLESS such parking area is posted with signs as prescribed by this subsection which are CLEARLY VISIBLE and READABLE from ANY POINT within the parking area and at each entrance. <br><br>-------------------<br><br>That means that if there exists any point in the parking lot at which a parking sign is not clearly readable, then the lot owner -- as a matter of law -- is deemed to have granted permission to park there.  Tempe municipal law is wholly irrelevant to whether a lot owner meets the requirements of the state statute.  In other words, even if a lot owner fully complies with the Tempe ordinance, the lot owner might still fail to meet the state statute.</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487981">\
	 <div id="dsq-comment-header-12487981" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487981" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487981">Paco McDooby</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487981" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487981" class="dsq-comment-message">Also, keep in mind that the towing company has the burden of proving that they complies with all the signage requirements.  The Arizona Court of Appeals, commenting on the statute posted above, has explicitly stated that if the signage requirements are not met, there can be NO RECOVERY for the towing company: "before a legally binding contract is created, the towing company obviously would have to establish that the signs complied with all elements of § 9-499.05(B), including the requirement that the signs be \'clearly visible and readable from any point within the parking area and at each entrance.\' " Adage Towing &amp; Recovery, Inc. v. City of Tucson, 187 Ariz. 396, 399 n.5, 930 P.2d 473, 476 (App. 1996).</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-12487982">\
	 <div id="dsq-comment-header-12487982" class="dsq-comment-header">\
	 <cite id="dsq-cite-12487982" class="dsq-comment-cite">\
	 <span id="dsq-author-user-12487982">Paco McDooby</span>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-12487982" class="dsq-comment-body">\
	 <div id="dsq-comment-message-12487982" class="dsq-comment-message">Another important thing to keep in mind when dealing with towing companies in Arizona is that if you are the owner of the car, they have absolutely no right to hold your car if it was towed without your permission.  They cannot demand payment on the spot as a condition to releasing the vehicle.  If they do, it\'s theft.  The towing company\'s can try to sue the person who parked the car for the towing charge, but the towing company cannot use the car itself as leverage.<br><br>The Arizona Court of Appeals has said that IF THE SIGNAGE REQUIREMENTS ARE MET, then the tow company\'s recovery (if any) is against the PARKING VIOLATOR, as opposed to the vehicle owner. "A sign that complies with A.R.S. 9-499.05 creates a legally binding contract between the towing company and the PARKING VIOLATOR which would permit a towing company to seek relief for its contractual damages." Adage Towing &amp; Recovery, Inc. v. City of Tucson, 187 Ariz. 396, 398, 930 P.2d 473, 475 (App. 1996).<br><br>Regardless of who the alleged parking violator is, the tow company MUST release the car to the owner. When the Arizona Supreme Court addressed this issue, it held that a towing company commits theft when it tows a car that was parked on private property without the property owner\'s permission  and then refuses to release the car to the car\'s owner.<br><br>"According to the undisputed facts, the petitioner [a towing company], without lawful authority, knowingly controlled the property of another with the intent to restore it only upon payment of compensation. We believe the elements of the crime as specified under A.R.S. § 13-1801(2) and § 13-1802(A) have been satisfied, and that the petitioner may be charged with theft." Capson v. Superior Court of State of Ariz., In and For Maricopa County, 139 Ariz. 113, 116, 677 P.2d 276, 279 (1984).</div>\
	 </div>\
	 </li>\
	 <li id="dsq-comment-15129485">\
	 <div id="dsq-comment-header-15129485" class="dsq-comment-header">\
	 <cite id="dsq-cite-15129485" class="dsq-comment-cite">\
	 <a id="dsq-author-user-15129485" href="http://www.realestatetaxi.com" target="_blank" rel="nofollow">Staten Island Real Estate</a>\
	 </cite>\
	 </div>\
	 <div id="dsq-comment-body-15129485" class="dsq-comment-body">\
	 <div id="dsq-comment-message-15129485" class="dsq-comment-message">I would have been pissed it that happened too me. That small sign is obviously a trap, to bait people into parking. I am sure the owner of the lot gets a cut under the table.</div>\
	 </div>\
	 </li>\
	 </ul>\
';

(function() {
	
	





Dsq.Debug.profile(function() {
	if(Dsq.jsonData.request.page == 1 && Dsq.jsonData.request.is_initial_load) {
		Dsq.container.innerHTML = Dsq.Templates.header() + Dsq.container.innerHTML + Dsq.Templates.footer();
	}
	Dsq.$(Dsq.curPageId).innerHTML = Dsq.$(Dsq.curPageId).innerHTML.replace(Dsq.COMMENTS_RE, Dsq.CommentsHandler);
}); // Dsq.Debug.Profile

// HACK: Resetting cache because we're done with.
Dsq.Utils.gebiFromElementCollectionCache = null;


	
	
	var dsq_styleEl = document.getElementById(disqus_container_id);
	var dsq_anchorEl = document.getElementsByTagName('a')[0];
	
	Dsq.Thread.fc = Dsq.Utils.getStyle(dsq_styleEl, 'color');
	if(dsq_anchorEl) { Dsq.Thread.ac = Dsq.Utils.getStyle(dsq_anchorEl, 'color'); }
	Dsq.Thread.ff = Dsq.Utils.getStyle(dsq_styleEl, (Dsq.Utils.ie || window.opera ? 'fontFamily' : 'font-family'));
	// For Safari / Opera: strip quotes.
	Dsq.Thread.ff = Dsq.Thread.ff.replace(/['"]/g, '');
	Dsq.Thread.fc = encodeURIComponent(Dsq.Thread.fc);
	Dsq.Thread.ac = encodeURIComponent(Dsq.Thread.ac);
	Dsq.Thread.ff = encodeURIComponent(Dsq.Thread.ff);

	
	
	
	if(Dsq.$(Dsq.Templates.addPostContainer)) {
		// TODO: Check to see if theme uses postmessage.
		if (window.disqus_use_postmessage) {
			Dsq.frames['reply_0'] = new Dsq.ReplyFrame(Dsq.$(Dsq.Templates.textareaContainer));
			Dsq.frames['reply_0'].init(function() {
				// Use fallback iframe
				Dsq.$(Dsq.Templates.addPostContainer).innerHTML = '';
				var theme = (typeof disqus_frame_theme == 'undefined') ? 'default' : disqus_frame_theme;
				Dsq.Iframes.showReplyIframeInContainer(Dsq.$(Dsq.Templates.addPostContainer), null, {theme: theme});
				// if(Dsq.Utils.ie) { Dsq.Utils.fixIframesIE(); }
			});
		} else {
			// DEPRECATED
			Dsq.Iframes.showReplyIframeInContainer(Dsq.$('dsq-post-add'));
		}
	}

	
	

	
	if(document.location.hash != '') {
		document.location.hash = document.location.hash.substring(1);
	}

	Dsq.Popup.showCookieMsgs();

	
	if(document.location.search != '' && location.hash != '#disqus_thread') {
		var reply_id = Dsq.Utils.getRequestParams().dsq;
		if(reply_id) { document.location.hash = 'comment-' + reply_id; }
	}

	
	if((typeof OB_Script != 'undefined') && (typeof OB_versionNum != 'undefined')) {
		if(navigator.userAgent.indexOf("Firefox") != -1) {
			if(window.frames['dsq-reply-frame']) {
				window.frames['dsq-reply-frame'].location = Dsq.Urls.REPLY + (new Date()).getTime() + '&f=tpreg&t=towing_scam_the_day_after&to_redirect=' + encodeURIComponent(window.location) + '&ifrs=' + encodeURIComponent(disqus_iframe_css);
			}
		}
	}

	if (Dsq.jsonData.integration.theme == 4) {
		if (Dsq.jsonData.realtime_enabled) {
			Dsq.Realtime.initialize();
		}
	}

	



	window.ExecuteWhen = (function () {
	var obj = {}
	
	// Private
	var running = false;
	var timer = null;
	var pending = [];
	var startTimer = function() {
		running = true;
		timer = setInterval(obj.heartBeat, 100);
	};
	var stopTimer = function() {
		running = false;
		clearInterval(timer);
	};
	
	// Public
	obj.add = function (condition, code) {
		pending.push([condition,code]);
		this.heartBeat(); //!
		if (!running) {
			startTimer();
		}
	};
	obj.heartBeat = function() {
		if (!pending.length) {
			stopTimer();
		}
		var newPending = [];
		for (var i=0; i<pending.length; i++) {
			var cond = pending[i][0];
			var code = pending[i][1];
			// FIXME: if cond or code throw an error, they never get removed from pending
			if (cond()){
				code();
			}
			else {
				newPending.push([cond, code]);
			}
		}
		pending = newPending;
	};
	return obj;
})();

// also used in embed_thread.js:
window.fbIsReady = function () {return window.FB && FB.init;};
// NOTE: This script gets executed again without threadEl
//       set when we are loaded again as the fbc_receiver.
//       In this case, we don't need the hidden container.

if(!window.FB || !FB.init) {
	if(window.Dsq && Dsq.container) {
		// container is not present when init.js is loaded from an xd-receiver iframe; in this case,
		// we don't need the FB_HiddenContainer anyway.
		var fbDiv = document.createElement('div');
		fbDiv.id = "FB_HiddenContainer";	// Required or else FeatureLoader will execute a document.write.
		fbDiv.style.position = 'absolute';	// This is intentionally not setting display to none as this breaks
		fbDiv.style.top = '-10000px';		// Flash in Safari.
		fbDiv.style.left = '-10000px';
		fbDiv.style.width = '0px';
		fbDiv.style.height = '0px';
		Dsq.container.appendChild(fbDiv);
	}
	var fbJS = document.createElement('script');
	fbJS.type = "text/javascript";
	fbJS.src = "http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php";
	document.getElementsByTagName('head')[0].appendChild(fbJS);

	ExecuteWhen.add(window.fbIsReady,
		function () {
			// HACK: This is a workaround FBC's single domain limitation by
			//		 allowing sites to create multiple forums with different
			//		 Facebook API keys.  This must be used in conjunction with
			//		 disqus_facebook_forum (see authenticateFacebook).
			var facebook_api_key = 'b7c57e0bf778127562deb90a323ed0ec';
			if (typeof disqus_facebook_api_key != 'undefined') {
				facebook_api_key = disqus_facebook_api_key;
			}

			FB.init(facebook_api_key, window.facebookXdReceiverPath || null,
				{fetchSignedPublicSessionData: true});
		});
}


	


if(typeof(disqus_callback) == 'function') {
	var callback_params = Dsq.Utils.getRequestParams()['dsq_cbp'] || null;

	// We don't care about any errors in third-party code
	try {
		disqus_callback(callback_params);
	} catch (x) {
		if (typeof(console) != 'undefined' && typeof(console.log) == 'function') {
			// But it would be nice to let developers know about them
			console.log(x);
		}
		// pass
	}

	// HACK: We don't know if the callback wraps our container, which may
	// possibly result in a new DOM element.
	Dsq.container = document.getElementById('dsq-content');
}

})();




