
	





	
		
			
			/*
* jQuery Templates Plugin 1.0.0pre
* http://github.com/jquery/jquery-tmpl
* Requires jQuery 1.4.2
*
* Copyright Software Freedom Conservancy, Inc.
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*/
(function(a){var r=a.fn.domManip,d="_tmplitem",q=/^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /,b={},f={},e,p={key:0,data:{}},i=0,c=0,l=[];function g(g,d,h,e){var c={data:e||(e===0||e===false)?e:d?d.data:{},_wrap:d?d._wrap:null,tmpl:null,parent:d||null,nodes:[],calls:u,nest:w,wrap:x,html:v,update:t};g&&a.extend(c,g,{nodes:[],parent:d});if(h){c.tmpl=h;c._ctnt=c._ctnt||c.tmpl(a,c);c.key=++i;(l.length?f:b)[i]=c}return c}a.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(f,d){a.fn[f]=function(n){var g=[],i=a(n),k,h,m,l,j=this.length===1&&this[0].parentNode;e=b||{};if(j&&j.nodeType===11&&j.childNodes.length===1&&i.length===1){i[d](this[0]);g=this}else{for(h=0,m=i.length;h<m;h++){c=h;k=(h>0?this.clone(true):this).get();a(i[h])[d](k);g=g.concat(k)}c=0;g=this.pushStack(g,f,i.selector)}l=e;e=null;a.tmpl.complete(l);return g}});a.fn.extend({tmpl:function(d,c,b){return a.tmpl(this[0],d,c,b)},tmplItem:function(){return a.tmplItem(this[0])},template:function(b){return a.template(b,this[0])},domManip:function(d,m,k){if(d[0]&&a.isArray(d[0])){var g=a.makeArray(arguments),h=d[0],j=h.length,i=0,f;while(i<j&&!(f=a.data(h[i++],"tmplItem")));if(f&&c)g[2]=function(b){a.tmpl.afterManip(this,b,k)};r.apply(this,g)}else r.apply(this,arguments);c=0;!e&&a.tmpl.complete(b);return this}});a.extend({tmpl:function(d,h,e,c){var i,k=!c;if(k){c=p;d=a.template[d]||a.template(null,d);f={}}else if(!d){d=c.tmpl;b[c.key]=c;c.nodes=[];c.wrapped&&n(c,c.wrapped);return a(j(c,null,c.tmpl(a,c)))}if(!d)return[];if(typeof h==="function")h=h.call(c||{});e&&e.wrapped&&n(e,e.wrapped);i=a.isArray(h)?a.map(h,function(a){return a?g(e,c,d,a):null}):[g(e,c,d,h)];return k?a(j(c,null,i)):i},tmplItem:function(b){var c;if(b instanceof a)b=b[0];while(b&&b.nodeType===1&&!(c=a.data(b,"tmplItem"))&&(b=b.parentNode));return c||p},template:function(c,b){if(b){if(typeof b==="string")b=o(b);else if(b instanceof a)b=b[0]||{};if(b.nodeType)b=a.data(b,"tmpl")||a.data(b,"tmpl",o(b.innerHTML));return typeof c==="string"?(a.template[c]=b):b}return c?typeof c!=="string"?a.template(null,c):a.template[c]||a.template(null,q.test(c)?c:a(c)):null},encode:function(a){return(""+a).split("<").join("&lt;").split(">").join("&gt;").split('"').join("&#34;").split("'").join("&#39;")}});a.extend(a.tmpl,{tag:{tmpl:{_default:{$2:"null"},open:"if($notnull_1){__=__.concat($item.nest($1,$2));}"},wrap:{_default:{$2:"null"},open:"$item.calls(__,$1,$2);__=[];",close:"call=$item.calls();__=call._.concat($item.wrap(call,__));"},each:{_default:{$2:"$index, $value"},open:"if($notnull_1){$.each($1a,function($2){with(this){",close:"}});}"},"if":{open:"if(($notnull_1) && $1a){",close:"}"},"else":{_default:{$1:"true"},open:"}else if(($notnull_1) && $1a){"},html:{open:"if($notnull_1){__.push($1a);}"},"=":{_default:{$1:"$data"},open:"if($notnull_1){__.push($.encode($1a));}"},"!":{open:""}},complete:function(){b={}},afterManip:function(f,b,d){var e=b.nodeType===11?a.makeArray(b.childNodes):b.nodeType===1?[b]:[];d.call(f,b);m(e);c++}});function j(e,g,f){var b,c=f?a.map(f,function(a){return typeof a==="string"?e.key?a.replace(/(<\w+)(?=[\s>])(?![^>]*_tmplitem)([^>]*)/g,"$1 "+d+'="'+e.key+'" $2'):a:j(a,e,a._ctnt)}):e;if(g)return c;c=c.join("");c.replace(/^\s*([^<\s][^<]*)?(<[\w\W]+>)([^>]*[^>\s])?\s*$/,function(f,c,e,d){b=a(e).get();m(b);if(c)b=k(c).concat(b);if(d)b=b.concat(k(d))});return b?b:k(c)}function k(c){var b=document.createElement("div");b.innerHTML=c;return a.makeArray(b.childNodes)}function o(b){return new Function("jQuery","$item","var $=jQuery,call,__=[],$data=$item.data;with($data){__.push('"+a.trim(b).replace(/([\\'])/g,"\\$1").replace(/[\r\t\n]/g," ").replace(/\$\{([^\}]*)\}/g,"{{= $1}}").replace(/\{\{(\/?)(\w+|.)(?:\(((?:[^\}]|\}(?!\}))*?)?\))?(?:\s+(.*?)?)?(\(((?:[^\}]|\}(?!\}))*?)\))?\s*\}\}/g,function(m,l,k,g,b,c,d){var j=a.tmpl.tag[k],i,e,f;if(!j)throw"Unknown template tag: "+k;i=j._default||[];if(c&&!/\w$/.test(b)){b+=c;c=""}if(b){b=h(b);d=d?","+h(d)+")":c?")":"";e=c?b.indexOf(".")>-1?b+h(c):"("+b+").call($item"+d:b;f=c?e:"(typeof("+b+")==='function'?("+b+").call($item):("+b+"))"}else f=e=i.$1||"null";g=h(g);return"');"+j[l?"close":"open"].split("$notnull_1").join(b?"typeof("+b+")!=='undefined' && ("+b+")!=null":"true").split("$1a").join(f).split("$1").join(e).split("$2").join(g||i.$2||"")+"__.push('"})+"');}return __;")}function n(c,b){c._wrap=j(c,true,a.isArray(b)?b:[q.test(b)?b:a(b).html()]).join("")}function h(a){return a?a.replace(/\\'/g,"'").replace(/\\\\/g,"\\"):null}function s(b){var a=document.createElement("div");a.appendChild(b.cloneNode(true));return a.innerHTML}function m(o){var n="_"+c,k,j,l={},e,p,h;for(e=0,p=o.length;e<p;e++){if((k=o[e]).nodeType!==1)continue;j=k.getElementsByTagName("*");for(h=j.length-1;h>=0;h--)m(j[h]);m(k)}function m(j){var p,h=j,k,e,m;if(m=j.getAttribute(d)){while(h.parentNode&&(h=h.parentNode).nodeType===1&&!(p=h.getAttribute(d)));if(p!==m){h=h.parentNode?h.nodeType===11?0:h.getAttribute(d)||0:0;if(!(e=b[m])){e=f[m];e=g(e,b[h]||f[h]);e.key=++i;b[i]=e}c&&o(m)}j.removeAttribute(d)}else if(c&&(e=a.data(j,"tmplItem"))){o(e.key);b[e.key]=e;h=a.data(j.parentNode,"tmplItem");h=h?h.key:0}if(e){k=e;while(k&&k.key!=h){k.nodes.push(j);k=k.parent}delete e._ctnt;delete e._wrap;a.data(j,"tmplItem",e)}function o(a){a=a+n;e=l[a]=l[a]||g(e,b[e.parent.key+n]||e.parent)}}}function u(a,d,c,b){if(!a)return l.pop();l.push({_:a,tmpl:d,item:this,data:c,options:b})}function w(d,c,b){return a.tmpl(a.template(d),c,b,this)}function x(b,d){var c=b.options||{};c.wrapped=d;return a.tmpl(a.template(b.tmpl),b.data,c,b.item)}function v(d,c){var b=this._wrap;return a.map(a(a.isArray(b)?b.join(""):b).filter(d||"*"),function(a){return c?a.innerText||a.textContent:a.outerHTML||s(a)})}function t(){var b=this.nodes;a.tmpl(null,null,null,this).insertBefore(b[0]);a(b).remove()}})(jQuery);
		
			
			





function nicheGetLastInitial (lname) {
  var initialAndPeriod = lname;
  if (lname.length > 1) {
    initialAndPeriod = lname.charAt(0)+".";
  }
  return initialAndPeriod;
}

(function( $ ){

  var tmpmarkup = '<div class="comment-container-{{= commentLevel}}" id="comment-{{= id}}"><a class="comment-flag" href="#">flag</a><p class="comment-name">{{= name}}</p><p class="comment-subject">{{= subject}}</p><p class="comment-text">{{= commentText}}</p><p class="comment-timestamp">{{= created}}</p></div>';
  
  var tmpmarkup_niche = '<div class="comment-container-{{= commentLevel}}" id="comment-{{= id}}"><a class="comment-flag" href="#">flag</a><p class="comment-name">{{= firstname}} {{= nicheGetLastInitial(lastname)}}</p><p class="comment-subject">{{= subject}}</p><p class="comment-text">{{= commentText}}</p><p class="comment-timestamp">{{= created}}</p></div>';
  
  $.template("dCommentsDefault", tmpmarkup);
  
  $.template("dCommentsNiche", tmpmarkup_niche);
  
  var defaultProfile = '';
  
  var sendBackURL = encodeURIComponent(location.href);

  var methods = {
    init : function (options) {
      var settings = {
        'profile'           : defaultProfile,
        'formPosition'      : 'top',
        'formTemplate'      : 'default',
        'recaptcha'         : true,
        'recaptchaTheme'    : 'clean',
        'resourceid'        : '0',
        'defaultPagination' : true,
        'loginLinkText'     : '<a href="/content/system/modules/com.dispatch.registration/pages/login.jsp?sendback='+sendBackURL+'#comment">Login</a> or <a href="/content/system/modules/com.dispatch.registration/pages/signup.jsp?sendback='+sendBackURL+'#comment">register</a> to post a comment.',
        'commentsPerPage'	: 50,
        'page'            : 1,
        'getLevel'        : 'public', // flagged, deleted, blocked, unapproved
        'templateName'    : 'dCommentsDefault',
        'logintoview'     : false,
        'logintopost'     : true,
        'commentPrompt'   : 'Place comment here',
        'syndicatePrompt' : 'Post to Facebook or Twitter',
        'commentOrder'    : 'newestlast',
        'successCallback' : '',
        'errorCallback'   : 'userReport',
        'updateCallback'  : false, // provides a callback for when the list of comments is updated/displayed
        'disabled'        : '' // true, [false or ''], nowrite
        
      };
      
      if (settings.logintoview && settings.logintopost) {
        settings.loginLinkText = '<a href="/content/system/modules/com.dispatch.registration/pages/login.jsp?sendback='+sendBackURL+'#comment">Login</a> or <a href="/content/system/modules/com.dispatch.registration/pages/signup.jsp?sendback='+sendBackURL+'#comment">register</a> to view and post comments.';
      }
      
      if ( options ) { 
        $.extend( settings, options );
      }
      
      $('a.comment-flag').live('click', function () {
      
        $commetContainer = $(this).parent();
        commentid = $commetContainer.attr('id').substr(8);
        
        $.ajax({
          type: "POST",
          jsonp: null,
            jsonpCallback: null,
          url: '/content/system/modules/com.dispatch.comments/rest/flag',
          data: {
            'c'       : commentid,
            'r'       : 'user'
          },
          dataType: "json",
          success: function(commdata) {
            if ("error" in commdata) {
              $commetContainer.find('.comment-flag').html("<strong>Flag Error</strong>");
            } else {
              $commetContainer.find('.comment-flag').html("<strong>Comment Flagged</strong>");
            }
          }
        });
        
        return false;
        
      });
      
      $('span.dpg-pages a').live('click', function () {
        settings.page = $(this).text();
        $this.dcomments('getComments', settings);
        return false;
      });
      
      return this.each(function() {
        
        if (settings.disabled != 'true') {
        
          $this = $(this);
          
          var $wraps = $('<div class="dcommentswrap"><div class="dcomments"><div id="dcpagination_top" class="dcpagination"></div><div class="comments"></div><div id="dcpagination_bottom" class="dcpagination"></div></div></div>');
          var form_wrap = '<div class="commentForm"></div>';
          
          $this.html($wraps);
          
          if (settings.formPosition == 'top') {
            $('.dcommentswrap').prepend(form_wrap);
          } else {
            $('.dcommentswrap').append(form_wrap);
          }
          
          $this.dcomments('getComments', settings);
          
          commentForm(settings);
        
        }
        
      });
      
    },
    
    getComments : function (options) {
      var settings = {
        'profile'         : defaultProfile,
        'page'            : 1,
        'getLevel'        : 'public', // flagged, deleted, blocked, unapproved
        'resourceid'      : '0',
        'templateName'    : 'dCommentsDefault',
        'commentsPerPage'	: 50,
        'commentOrder'    : 'newestlast',
        'logintoview'     : false
      };
      
      if ( options ) { 
        $.extend( settings, options );
      }
      
      var getAction, cmt_tmpl;
      
      var cmt_tmpl_holder = $('#'+settings.templateName);
      if (cmt_tmpl_holder.length) {
        $.template(settings.templateName, cmt_tmpl_holder);
      }
      
      switch(settings.getLevel) {
        case 'flagged':
          getAction = '/content/system/modules/com.dispatch.comments/rest/getflaggedcomments';
          break;
        case 'deleted':
          getAction = '/content/system/modules/com.dispatch.comments/rest/getdeletedcomments';
          break;
        case 'blocked':
          getAction = '/content/system/modules/com.dispatch.comments/rest/getblockedcomments';
          break;
        case 'unapproved':
          getAction = '/content/system/modules/com.dispatch.comments/rest/getunapprovedcomments';
          break;
        case 'approved':
          getAction = '/content/system/modules/com.dispatch.comments/rest/getapprovedcomments';
          break;
        default:
          getAction = '/content/system/modules/com.dispatch.comments/rest/getcomments';
          break;
      }
      
      return this.each(function() {
        
        $.ajax({
          type: "POST",
          url: getAction,
          jsonp: null,
            jsonpCallback: null,
          data: {
            'profile' : settings.profile,
            'r'       : settings.resourceid,
            'p'       : settings.page
          },
          dataType: "json",
          success: function(commdata) {
            if ("error" in commdata) {
              if (settings.updateCallback != false) {
			settings.updateCallback.call(true);
		}
            } else {
              commdata.Comments.reverse();
              updateComments(commdata.Comments, settings.templateName);
              pagination(settings.page, settings.commentsPerPage, settings.resourceid, settings);
              // use the update callback if defined
              if (settings.updateCallback != false) {
			settings.updateCallback.call(true);
		}
            }
          }
        });
      });
      
    },
    
    moderate : function (options) {
      var settings = {
        
      };
      
      if ( options ) { 
        $.extend( settings, options );
      }
      
      return this.each(function() {
        
        $this = $(this);
        
      });
      
    },
    
    getCommentCount : function (options) {
      var settings = {
        'resourceid'        : '0'
      };
      
      if ( options ) { 
        $.extend( settings, options );
      }
      
      var ccount = 0;
      
      $.ajax({
          type: "POST",
          async: false,
          jsonp: null,
            jsonpCallback: null,
          url: '/content/system/modules/com.dispatch.comments/rest/getcount',
          data: {
            'r'       : settings.resourceid
          },
          dataType: "json",
          success: function(commdata) {
            if ("error" in commdata) {
              //console.log("Comment Load Fail (dcomments): "+commdata.error);
            } else {
              ccount = commdata;
            }
          }
        });
      
      return ccount.count;
      
    }
    
  };
  
  function updateComments (commentDateObject, templateName, loginLink, settings){
  
    var commentHolder = $(".comments");
    commentHolder.html('');
    $.tmpl(templateName, commentDateObject).appendTo('.comments');  
    
  };
  
  function pagination (p, ncpp, rid, settings) {
  	$.ajax({
          type: "POST",
          jsonp: null,
            jsonpCallback: null,
          url: '/content/system/modules/com.dispatch.comments/rest/getcount',
          data: {
            'r'       : rid
          },
          dataType: "json",
          success: function(commdata) {
            if ("error" in commdata) {
              //console.log("Comment Load Fail (dcomments): "+commdata.error);
            } else {
              var np;
              if (commdata.count % ncpp > 0) {
              	np = ((commdata.count - (commdata.count % ncpp)) / ncpp) + 1;
              } else {
              	np = (commdata.count / ncpp);
              }
              
              if (np>1) {
              
                var paginationHTML = '<span class="dc-mc">More comments: </span><a class="dpg-first" href="#">First</a><a class="dpg-prev" href="#">Prev</a><span class="dpg-pages">';
                
                if (np > 10) {
  	              for (tp = 1; tp<=np; tp++) {
  	              	linkclass = "";
  	              	if (tp == p) {
  	              	  linkclass="current-page";
  	              	}
  	                paginationHTML += '<a class="'+linkclass+'" href="#">'+tp+'</a>';
  	              }
                } else {
                	for (tp = 1; tp<=np; tp++) {
  	              	linkclass = "";
  	              	if (tp == p) {
  	              	  linkclass="current-page";
  	              	}
  	              	paginationHTML += '<a class="'+linkclass+'" href="#">'+tp+'</a>';
  	              }
                }
                
                paginationHTML += '</span><a class="dpg-next" href="#">Next</a><a class="dpg-last" href="#">Last</a><div class="clear"></div>';
                
                $('#dcpagination_top').html(paginationHTML);
                $('#dcpagination_bottom').html(paginationHTML);
                
              } else {
                $('.dcpagination').remove();
              }
              
            }
          }
        });
  };
  
  function commentForm (settings) {
  
    var commentformcode = $('<div />').addClass('dpc_comments_form')
              .html('<p id="dcalert">&nbsp;</p><form name="dcomments" class="dcommentForm" action="post" action="#"><ul><li class="commentInstructions"><p class="commentInstructions"></p></li><li class="s"><input type="text" name="s" /><label for="s">Title</label></li><li class="t"><label for="t">Comment</label><br /><textarea name="t"></textarea></li><li class="recaptcha"><div id="recaptcha_div"></div></li><li class="syndicate"><input type="checkbox" name="syndicate" val="yes" /><label for="syndicate">Share your comment</label></li><li class="post"><input type="submit" id="submit-button" name="submit-button" value="Post" /></li><li><a class="dcomments-logout" href="/content/system/modules/com.dispatch.registration/pages/logout.jsp?sendback='+sendBackURL+'">Log Out / Change User</a></li></ul></form>');
    var commentFormHiddenFields = '<input type="hidden" name="profile" value="'+settings.profile+'" /><input type="hidden" name="r" value="'+settings.resourceid+'" /><input type="hidden" name="p" value="" />';
    
    var loginlinkcode = $('<div />').addClass('dpc_comments_form')
              .html(settings.loginLinkText);
              
    var anonhtml = '<li><input type="text" name="s" /><label for="s">Display Name</label></li><li><input type="text" name="e" /><label for="e">Email</label></li>';
    
    if (settings.disabled != 'nowrite') {
      if ($.fn.daccount('isGuest')) {
        $('.commentForm').append(loginlinkcode);
      } else {
        if (settings.formTemplate == 'default') {
          $('.commentForm').append(commentformcode);
        } else {
          $('.commentForm').append('<form name="dcomments" class="dcommentForm" action="post" action="#">'+$('#'+settings.formTemplate).html()+'</form>');
        }
      }
    }
    
    $('.commentForm').find('form').prepend(commentFormHiddenFields);
    $('textarea[name=t]').val(settings.commentPrompt).focus(function(){if($(this).val()==settings.commentPrompt){$(this).val('')}}).blur(function(){if($(this).val()==''){$(this).val(settings.commentPrompt)}});
    $('label[for=syndicate]').text(settings.syndicatePrompt);
    $('a.dcomments-logout').css({
      'text-align':'right',
      'font-size': '11px',
      'font-family': 'arial',
      'color': '#666',
      'text-decoration': 'none',
      'border': 'none',
      'float':'right',
      'margin-top':'-16px'
    });
    //a.dcomments-logout{text-align:right; font-size: 11px; font-family: arial; color: #333; text-decoration: none;}
    
    if (settings.recaptcha) {
      var recaptchaoptions = {
        'theme' : settings.recaptchaTheme,
        'tabindex' : 3
      };
            
      Recaptcha.create('6LdMVsESAAAAAHIkQexP-a3ve5_BJ1exIKON9hT7', "recaptcha_div", recaptchaoptions);
    }
    
    $("form.dcommentForm").submit(function () {
    
      if (($('textarea[name=t]').val() != '') && ($('textarea[name=t]').val() != settings.commentPrompt)) {

        var $form = $('form.dcommentForm');
        
        $('input[type=submit]', $form).attr('disabled', 'disabled');
  
        var commentpost = {};
        commentpost.e = $("input[name=e]", $form).val();
        commentpost.p = $("input[name=p]", $form).val();
        commentpost.m = $("input[name=m]", $form).val();
        commentpost.profile = $("input[name=profile]", $form).val();
        commentpost.r = $("input[name=r]", $form).val();
        commentpost.s = $("input[name=s]", $form).val();
        commentpost.t = $("textarea[name=t]", $form).val();
        if (settings.recaptcha) {
        	commentpost.c = Recaptcha.get_challenge();
        	commentpost.v = Recaptcha.get_response();
        }
        commentpost.m = '';
        
        if ($('input[name=syndicate]').attr('checked')) {
          RPXNOW.init({appId: 'cfockpaeeccahlmhlkmg',
          xdReceiver: '/content/digital/config/rpx_xdcomm.html'});
          
          RPXNOW.loadAndRun(['Social'], function () {
            var activity = new RPXNOW.Social.Activity(
               "Share your comment",
               commentpost.t,
               window.location.href);
            RPXNOW.Social.publishActivity(activity);
          });
        }
        
        $.ajax({
  	        type: "POST",
  	        url: '/content/system/modules/com.dispatch.comments/rest/add',
  	        data: commentpost,
  	        jsonp: null,
            jsonpCallback: null,
  	        dataType: "json",
  	        success: function(commdata) {
  	          if (commdata["error"] || commdata["errors"]) {
  	            
  	            if($.isFunction(settings.errorCallback)){
                  settings.errorCallback.call(commdata);
                }
  	            
  	          } else {
  	            //commdata.Comments.reverse();
  	            //updateComments(commdata.Comments, settings.templateName);
  	            
  	            //<div class="comment-container-{{= commentLevel}}" id="comment-{{= id}}"><a class="comment-flag" href="#">flag</a><p class="comment-name">{{= name}}</p><p class="comment-subject">{{= subject}}</p><p class="comment-text">{{= commentText}}</p><p class="comment-timestamp">{{= created}}</p></div>
  	            var posted = {
  	              'id' : 'new',
  	              'name': 'you',
  	              'firstname' : 'you',
  	              'lastname' : ' ',
  	              'subject' : commentpost.s,
  	              'commentText' : commentpost.t,
  	              'created' : 'just now'
  	            };
  	            
  	            //ccount = $.fn.dcomments('getCommentCount', {'r':commentpost.r});
  	            
  	            //if (ccount <= $('.comments').length) {
                  $.tmpl(settings.templateName, posted).appendTo('.comments');
                //}
                
                userReport('Your comment has been posted.');
  	            
  	            $(".dpc_comments_form form").find(':input').each(function() {
                  switch(this.type) {
                    case 'password':
                    case 'select-multiple':
                    case 'select-one':
                    case 'text':
                    case 'textarea':
                      $(this).val('');
                      break;
                    case 'checkbox':
                    case 'radio':
                      this.checked = false;
                      break;
                  }
                });
                
                $('textarea[name=t]').val(settings.commentPrompt);
                
                if($.isFunction(settings.successCallback)){
                  settings.successCallback.call(commdata);
                }
                
                if (settings.recaptcha) {
                  Recaptcha.create('6LdMVsESAAAAAHIkQexP-a3ve5_BJ1exIKON9hT7', "recaptcha_div", recaptchaoptions);
                }
                
                $('input[type=submit]', $form).removeAttr("disabled");     
                
  	          }
  	        }
  	      });
	      
	    }
      
      return false;
      
    });
    
    function userReport (message) {
      $('#dcalert').css({opacity:0}).text(message).animate({opacity: 1}, 'fast', function () {$('#dcalert').delay(500).animate({opacity: 0}, 'slow'); $('#dcalert').click(function() {$('#dcalert').animate({opacity: 0}, 'fast')})});
    }
    
    return false;
    
  };
  
  $.fn.dcomments = function ( method ) {
    
    if ( methods[method] ) {
      return methods[ method ].apply( this, Array.prototype.slice.call( arguments, 1 ));
    } else if ( typeof method === 'object' || ! method ) {
      return methods.init.apply( this, arguments );
    } else {
      $.error( 'Method ' +  method + ' does not exist.' );
    }
    
  }
  
})( jQuery );
		
	

