/*
 * Author: CM
 */
(function($) {

  /**
   * @return {CM_View_Abstract}
   */
  $.fn.cmView = function() {
    if (1 != this.length) {
      throw new Error('Can only operate on single jQuery element')
    }
    var $element = this.first();

    var viewId = $element.closest('.CM_View_Abstract').attr('id');
    if (!viewId) {
      throw new Error('Cannot detect view-id');
    }

    var view = cm.views[viewId];
    if (!view) {
      throw new Error('Cannot find view with id `' + viewId + '`.');
    }
    return view;
  };

})(jQuery);

@@ -36,16 +36,49 @@
 %0A%0A  /**%0A
+   * @param %7BString%7D %5BclassName%5D%0A
    * @re
@@ -132,16 +132,25 @@
 unction(
+className
 ) %7B%0A    
@@ -280,16 +280,65 @@
 rst();%0A%0A
+    className = className %7C%7C 'CM_View_Abstract';%0A
     var 
@@ -365,33 +365,29 @@
 osest('.
-CM_View_Abstract'
+' + className
 ).attr('

add optional className param