]> git.mxchange.org Git - friendica.git/blobdiff - view/theme/frost/js/theme.js
Merge pull request #2949 from silke/vagrant-1604
[friendica.git] / view / theme / frost / js / theme.js
index 197f85f1f0cbf52b5c2741b940456e1d0423fedd..57124bce09a8d0c084f5895c7f6f725798d18456 100644 (file)
@@ -1,4 +1,4 @@
-$j(document).ready(function() {
+$(document).ready(function() {
 
        window.navMenuTimeout = {
                '#network-menu-list-timeout': null,
@@ -12,82 +12,144 @@ $j(document).ready(function() {
                '#system-menu-list-closing': false
        };
 
-/*    $j.ajaxSetup({ 
+/*    $.ajaxSetup({ 
         cache: false 
     });*/
 
 
-       if(typeof window.aclInit !="undefined" && typeof acl=="undefined"){
-               acl = new ACL(
-                       baseurl+"/acl",
-                       [ window.allowCID,window.allowGID,window.denyCID,window.denyGID ]
-               );
-       }
-
        /* enable tinymce on focus and click */
-       $j("#profile-jot-text").focus(enableOnUser);
-       $j("#profile-jot-text").click(enableOnUser);
-
+       $("#profile-jot-text").focus(enableOnUser);
+       $("#profile-jot-text").click(enableOnUser);
 
-       $j('.nav-menu-link').hover(function() {
-               showNavMenu($j(this).attr('rel'));
+       $('.nav-menu-list, .nav-menu-icon').hover(function() {
+               showNavMenu($(this).attr('point'));
        }, function() {
-               hideNavMenu($j(this).attr('rel'));
+               hideNavMenu($(this).attr('point'));
        });
 
-/*     $j('html').click(function() { $j("#nav-notifications-menu" ).hide(); });*/
+/*     $('html').click(function() { $("#nav-notifications-menu" ).hide(); });*/
 
-       $j('.group-edit-icon').hover(
+       $('.group-edit-icon').hover(
                function() {
-                       $j(this).addClass('icon'); $j(this).removeClass('iconspacer');},
+                       $(this).addClass('icon'); $(this).removeClass('iconspacer');},
                function() {
-                       $j(this).removeClass('icon'); $j(this).addClass('iconspacer');}
+                       $(this).removeClass('icon'); $(this).addClass('iconspacer');}
                );
 
-       $j('.sidebar-group-element').hover(
+       $('.sidebar-group-element').hover(
                function() {
-                       id = $j(this).attr('id');
-                       $j('#edit-' + id).addClass('icon'); $j('#edit-' + id).removeClass('iconspacer');},
+                       id = $(this).attr('id');
+                       $('#edit-' + id).addClass('icon'); $('#edit-' + id).removeClass('iconspacer');},
 
                function() {
-                       id = $j(this).attr('id');
-                       $j('#edit-' + id).removeClass('icon');$j('#edit-' + id).addClass('iconspacer');}
+                       id = $(this).attr('id');
+                       $('#edit-' + id).removeClass('icon');$('#edit-' + id).addClass('iconspacer');}
                );
 
 
-       $j('.savedsearchdrop').hover(
+       $('.savedsearchdrop').hover(
                function() {
-                       $j(this).addClass('drop'); $j(this).addClass('icon'); $j(this).removeClass('iconspacer');},
+                       $(this).addClass('drop'); $(this).addClass('icon'); $(this).removeClass('iconspacer');},
                function() {
-                       $j(this).removeClass('drop'); $j(this).removeClass('icon'); $j(this).addClass('iconspacer');}
+                       $(this).removeClass('drop'); $(this).removeClass('icon'); $(this).addClass('iconspacer');}
        );
 
-       $j('.savedsearchterm').hover(
+       $('.savedsearchterm').hover(
                function() {
-                       id = $j(this).attr('id');
-                       $j('#drop-' + id).addClass('icon');     $j('#drop-' + id).addClass('drophide'); $j('#drop-' + id).removeClass('iconspacer');},
+                       id = $(this).attr('id');
+                       $('#drop-' + id).addClass('icon');      $('#drop-' + id).addClass('drophide'); $('#drop-' + id).removeClass('iconspacer');},
 
                function() {
-                       id = $j(this).attr('id');
-                       $j('#drop-' + id).removeClass('icon');$j('#drop-' + id).removeClass('drophide'); $j('#drop-' + id).addClass('iconspacer');}
+                       id = $(this).attr('id');
+                       $('#drop-' + id).removeClass('icon');$('#drop-' + id).removeClass('drophide'); $('#drop-' + id).addClass('iconspacer');}
        );
 
-/*     $j('.nav-load-page-link').click(function() {
-               getPageContent( $j(this).attr('href') );
-               hideNavMenu( '#' + $j(this).closest('ul').attr('id') );
+/*     $('.nav-load-page-link').click(function() {
+               getPageContent( $(this).attr('href') );
+               hideNavMenu( '#' + $(this).closest('ul').attr('id') );
                return false;
        });*/
 
-       if(window.autoCompleteType == "display-head") {
-               //$j(".comment-edit-wrapper textarea").contact_autocomplete(baseurl+"/acl");
-               // make auto-complete work in more places
-               //$j(".wall-item-comment-wrapper textarea").contact_autocomplete(baseurl+"/acl");
-               $j(".comment-wwedit-wrapper textarea").contact_autocomplete(baseurl+"/acl");
+       $('#id_share').change(function() {
+
+               if ($('#id_share').is(':checked')) { 
+                       $('#acl-wrapper').show();
+               }
+               else {
+                       $('#acl-wrapper').hide();
+               }
+       }).trigger('change');
+
+// For event_end.tpl
+/*             $('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
+                       var selstr;
+                       $('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
+                               selstr = $(this).text();
+                               $('#jot-public').hide();
+                       });
+                       if(selstr == null) {
+                               $('#jot-public').show();
+                       }
+
+               }).trigger('change');*/
+
+
+       if(typeof window.AjaxUpload != "undefined") {
+               var uploader = new window.AjaxUpload(
+                       window.imageUploadButton,
+                       { action: 'wall_upload/'+window.nickname,
+                               name: 'userfile',
+                               onSubmit: function(file,ext) { $('#profile-rotator').show(); },
+                               onComplete: function(file,response) {
+                                       addeditortext(window.jotId, response);
+                                       $('#profile-rotator').hide();
+                               }                                
+                       }
+               );
+
+               if($('#wall-file-upload').length) {
+                       var file_uploader = new window.AjaxUpload(
+                               'wall-file-upload',
+                               { action: 'wall_attach/'+window.nickname,
+                                       name: 'userfile',
+                                       onSubmit: function(file,ext) { $('#profile-rotator').show(); },
+                                       onComplete: function(file,response) {
+                                               addeditortext(window.jotId, response);
+                                               $('#profile-rotator').hide();
+                                       }                                
+                               }
+                       );
+               }
+       }
+
+
+       if(typeof window.aclInit !="undefined" && typeof acl=="undefined"){
+               acl = new ACL(
+                       baseurl+"/acl",
+                       [ window.allowCID,window.allowGID,window.denyCID,window.denyGID ]
+               );
+       }
+
+
+       if(window.aclType == "settings-head" || window.aclType == "photos_head" || window.aclType == "event_head") {
+               $('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
+                       var selstr;
+                       $('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
+                               selstr = $(this).text();
+                               $('#jot-perms-icon').removeClass('unlock').addClass('lock');
+                               $('#jot-public').hide();
+                       });
+                       if(selstr == null) { 
+                               $('#jot-perms-icon').removeClass('lock').addClass('unlock');
+                               $('#jot-public').show();
+                       }
+
+               }).trigger('change');
        }
 
        if(window.aclType == "event_head") {
-               $j('#events-calendar').fullCalendar({
-                       events: baseurl + '/events/json/',
+               $('#events-calendar').fullCalendar({
+                       events: baseurl + window.eventModuleUrl +'/json/',
                        header: {
                                left: 'prev,next today',
                                center: 'title',
@@ -97,13 +159,18 @@ $j(document).ready(function() {
                        eventClick: function(calEvent, jsEvent, view) {
                                showEvent(calEvent.id);
                        },
+                       loading: function(isLoading, view) {
+                               if(!isLoading) {
+                                       $('td.fc-day').dblclick(function() { window.location.href='/events/new?start='+$(this).data('date'); });
+                               }
+                       },
                        
                        eventRender: function(event, element, view) {
                                //console.log(view.name);
                                if (event.item['author-name']==null) return;
                                switch(view.name){
                                        case "month":
-                                       element.find(".fc-event-title").html(
+                                       element.find(".fc-title").html(
                                                "<img src='{0}' style='height:10px;width:10px'>{1} : {2}".format(
                                                        event.item['author-avatar'],
                                                        event.item['author-name'],
@@ -111,7 +178,7 @@ $j(document).ready(function() {
                                        ));
                                        break;
                                        case "agendaWeek":
-                                       element.find(".fc-event-title").html(
+                                       element.find(".fc-title").html(
                                                "<img src='{0}' style='height:12px; width:12px'>{1}<p>{2}</p><p>{3}</p>".format(
                                                        event.item['author-avatar'],
                                                        event.item['author-name'],
@@ -120,7 +187,7 @@ $j(document).ready(function() {
                                        ));
                                        break;
                                        case "agendaDay":
-                                       element.find(".fc-event-title").html(
+                                       element.find(".fc-title").html(
                                                "<img src='{0}' style='height:24px;width:24px'>{1}<p>{2}</p><p>{3}</p>".format(
                                                        event.item['author-avatar'],
                                                        event.item['author-name'],
@@ -135,179 +202,149 @@ $j(document).ready(function() {
                
                // center on date
                var args=location.href.replace(baseurl,"").split("/");
-               if (args.length>=4) {
-                       $j("#events-calendar").fullCalendar('gotoDate',args[2] , args[3]-1);
-               } 
-               
+               if (args.length>=5 && window.eventModeParams == 2) {
+                       $("#events-calendar").fullCalendar('gotoDate',args[3] , args[4]-1);
+               } else if (args.length>=4 && window.eventModeParams == 1) {
+                       $("#events-calendar").fullCalendar('gotoDate',args[2] , args[3]-1);
+               }
+
                // show event popup
                var hash = location.hash.split("-")
                if (hash.length==2 && hash[0]=="#link") showEvent(hash[1]);
        }       
 
-       $j('#event-share-checkbox').change(function() {
-
-               if ($j('#event-share-checkbox').is(':checked')) { 
-                       $j('#acl-wrapper').show();
-               }
-               else {
-                       $j('#acl-wrapper').hide();
-               }
-       }).trigger('change');
-
-
-       if(window.aclType == "settings-head" || window.aclType == "photos_head" || window.aclType == "event_head") {
-               $j('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
-                       var selstr;
-                       $j('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
-                               selstr = $j(this).text();
-                               $j('#jot-perms-icon').removeClass('unlock').addClass('lock');
-                               $j('#jot-public').hide();
-                       });
-                       if(selstr == null) { 
-                               $j('#jot-perms-icon').removeClass('lock').addClass('unlock');
-                               $j('#jot-public').show();
-                       }
-
-               }).trigger('change');
-       }
-// For event_end.tpl
-/*             $j('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
-                       var selstr;
-                       $j('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
-                               selstr = $j(this).text();
-                               $j('#jot-public').hide();
-                       });
-                       if(selstr == null) {
-                               $j('#jot-public').show();
-                       }
-
-               }).trigger('change');*/
-
 
        switch(window.autocompleteType) {
                case 'msg-header':
-                       var a = $j("#recip").autocomplete({ 
-                               serviceUrl: baseurl + '/acl',
-                               minChars: 2,
-                               width: 350,
-                               onSelect: function(value,data) {
-                                       $j("#recip-complete").val(data);
-                               }                       
+                       $("#recip").name_autocomplete(baseurl + '/acl', '', false, function(data) {
+                                       $("#recip-complete").val(data.id);
                        });
                        break;
                case 'contacts-head':
-                       var a = $j("#contacts-search").autocomplete({ 
-                               serviceUrl: baseurl + '/acl',
-                               minChars: 2,
-                               width: 350,
+                       $("#contacts-search").contact_autocomplete(baseurl + '/acl', 'a', true);
+
+
+                       $("#contacts-search").keyup(function(event){
+                               if(event.keyCode == 13){
+                                       $("#contacts-search").click();
+                               }
+                       });
+                       $(".autocomplete-w1 .selected").keyup(function(event){
+                               if(event.keyCode == 13){
+                                       $("#contacts-search").click();
+                               }
                        });
-                       a.setOptions({ params: { type: 'a' }});
+                       break;
+               case 'display-head':
+                       $(".comment-wwedit-wrapper textarea").editor_autocomplete(baseurl+"/acl");
                        break;
                default:
                        break;
        }
 
+/*     if(window.autoCompleteType == "display-head") {
+               //$(".comment-edit-wrapper textarea").contact_autocomplete(baseurl+"/acl");
+               // make auto-complete work in more places
+               //$(".wall-item-comment-wrapper textarea").contact_autocomplete(baseurl+"/acl");
+               $(".comment-wwedit-wrapper textarea").contact_autocomplete(baseurl+"/acl");
+       }*/
 
-       if(typeof window.AjaxUpload != "undefined") {
-               switch(window.ajaxType) {
-                       case 'jot-header':
-                               var uploader = new window.AjaxUpload(
-                                       'wall-image-upload',
-                                       { action: 'wall_upload/'+window.nickname,
-                                               name: 'userfile',
-                                               onSubmit: function(file,ext) { $j('#profile-rotator').show(); },
-                                               onComplete: function(file,response) {
-                                                       addeditortext(response);
-                                                       $j('#profile-rotator').hide();
-                                               }                                
-                                       }
-                               );
-
-                               var file_uploader = new window.AjaxUpload(
-                                       'wall-file-upload',
-                                       { action: 'wall_attach/'+window.nickname,
-                                               name: 'userfile',
-                                               onSubmit: function(file,ext) { $j('#profile-rotator').show(); },
-                                               onComplete: function(file,response) {
-                                                       addeditortext(response);
-                                                       $j('#profile-rotator').hide();
-                                               }                                
-                                       }
-                               );
-                               break;
-                       case 'msg-header':
-                               var uploader = new window.AjaxUpload(
-                                       'prvmail-upload',
-                                       { action: 'wall_upload/' + window.nickname,
-                                               name: 'userfile',
-                                               onSubmit: function(file,ext) { $j('#profile-rotator').show(); },
-                                               onComplete: function(file,response) {
-                                                       tinyMCE.execCommand('mceInsertRawHTML',false,response);
-                                                       $j('#profile-rotator').hide();
-                                               }                                
-                                       }
-                               );
-                               break;
-                       default:
-                               break;
+       // Add Colorbox for viewing Network page images
+       //var cBoxClasses = new Array();
+       $(".wall-item-body a img").each(function(){
+               var aElem = $(this).parent();
+               var imgHref = aElem.attr("href");
+
+               // We need to make sure we only put a Colorbox on links to Friendica images
+               // We'll try to do this by looking for links of the form
+               // .../photo/ab803d8eg08daf85023adfec08 (with nothing more following), in hopes
+               // that that will be unique enough
+               if(imgHref.match(/\/photo\/[a-fA-F0-9]+(-[0-9]\.[\w]+?)?$/)) {
+
+                       // Add a unique class to all the images of a certain post, to allow scrolling through
+                       var cBoxClass = $(this).closest(".wall-item-body").attr("id") + "-lightbox";
+                       $(this).addClass(cBoxClass);
+
+//                     if( $.inArray(cBoxClass, cBoxClasses) < 0 ) {
+//                             cBoxClasses.push(cBoxClass);
+//                     }
+
+                       aElem.colorbox({
+                               maxHeight: '90%',
+                               photo: true, // Colorbox doesn't recognize a URL that don't end in .jpg, etc. as a photo
+                               rel: cBoxClass //$(this).attr("class").match(/wall-item-body-[\d]+-lightbox/)[0]
+                       });
                }
-       }
+       });
+       /*$.each(cBoxClasses, function(){
+               $('.'+this).colorbox({
+                       maxHeight: '90%',
+                       photo: true,
+                       rel: this
+               });
+       });*/
 
 });
 
 
 // update pending count //
-$j(function(){
+$(function(){
 
-       $j("nav").bind('nav-update',  function(e,data){
-               var elm = $j('#pending-update');
-               var register = $j(data).find('register').text();
+       $("nav").bind('nav-update',  function(e,data){
+               var elm = $('#pending-update');
+               var register = $(data).find('register').text();
                if (register=="0") { register=""; elm.hide();} else { elm.show(); }
                elm.html(register);
        });
 });
 
 
-$j(function(){
+$(function(){
        
-       $j("#cnftheme").fancybox({
-               width: 800,
-               autoDimensions: false,
-               onStart: function(){
-                       var theme = $j("#id_theme :selected").val();
-                       var theme_mobile = $j("#id_theme_mobile :selected").val();
-                       $j("#cnftheme").attr('href', baseurl + "/admin/themes/"+theme);
-               }, 
-               onComplete: function(){
-                       $j("div#fancybox-content form").submit(function(e){
-                               var url = $j(this).attr('action');
-                               // can't get .serialize() to work...
-                               var data={};
-                               $j(this).find("input").each(function(){
-                                       data[$j(this).attr('name')] = $j(this).val();
-                               });
-                               $j(this).find("select").each(function(){
-                                       data[$j(this).attr('name')] = $j(this).children(":selected").val();
-                               });
-                               console.log(":)", url, data);
+       $("#cnftheme").click(function(){
+               $.colorbox({
+                       width: 800,
+                       height: '90%',
+                       href: baseurl + "/admin/themes/" + $("#id_theme :selected").val(),
+                       onComplete: function(){
+                               $("div#fancybox-content form").submit(function(e){
+                                       var url = $(this).attr('action');
+                                       // can't get .serialize() to work...
+                                       var data={};
+                                       $(this).find("input").each(function(){
+                                               data[$(this).attr('name')] = $(this).val();
+                                       });
+                                       $(this).find("select").each(function(){
+                                               data[$(this).attr('name')] = $(this).children(":selected").val();
+                                       });
+                                       console.log(":)", url, data);
                                
-                               $j.post(url, data, function(data) {
-                                       if(timer) clearTimeout(timer);
-                                       NavUpdate();
-                                       $j.fancybox.close();
-                               })
+                                       $.post(url, data, function(data) {
+                                               if(timer) clearTimeout(timer);
+                                               NavUpdate();
+                                               $.colorbox.close();
+                                       })
                                
-                               return false;
-                       });
+                                       return false;
+                               });
                        
-               }
+                       }
+               });
+               return false;
        });
 });
 
 
+function homeRedirect() {
+       $('html').fadeOut('slow', function(){
+               window.location = baseurl + "/login";
+       });
+}
+
+
 if(typeof window.photoEdit != 'undefined') {
 
-       $j(document).keydown(function(event) {
+       $(document).keydown(function(event) {
 
                        if(window.prevLink != '') { if(event.ctrlKey && event.keyCode == 37) { event.preventDefault(); window.location.href = window.prevLink; }}
                        if(window.nextLink != '') { if(event.ctrlKey && event.keyCode == 39) { event.preventDefault(); window.location.href = window.nextLink; }}
@@ -315,86 +352,32 @@ if(typeof window.photoEdit != 'undefined') {
        });
 }
 
-switch(window.ajaxType) {
-       case 'jot-header':
-               function jotGetLink() {
-                       reply = prompt(window.linkURL);
-                       if(reply && reply.length) {
-                               reply = bin2hex(reply);
-                               $j('#profile-rotator').show();
-                               $j.get('parse_url?binurl=' + reply, function(data) {
-                                       addeditortext(data);
-                                       $j('#profile-rotator').hide();
-                               });
-                       }
-               }
-
-               function linkdrop(event) {
-                       var reply = event.dataTransfer.getData("text/uri-list");
-                       event.target.textContent = reply;
-                       event.preventDefault();
-                       if(reply && reply.length) {
-                               reply = bin2hex(reply);
-                               $j('#profile-rotator').show();
-                               $j.get('parse_url?binurl=' + reply, function(data) {
-                                       if (!editor) $j("#profile-jot-text").val("");
-                                       initEditor(function(){
-                                               addeditortext(data);
-                                               $j('#profile-rotator').hide();
-                                       });
-                               });
-                       }
-               }
-               break;
-       case 'msg-header':
-       case 'wallmsg-header':
-               function jotGetLink() {
-                       reply = prompt(window.linkURL);
-                       if(reply && reply.length) {
-                               $j('#profile-rotator').show();
-                               $j.get('parse_url?url=' + reply, function(data) {
-                                       tinyMCE.execCommand('mceInsertRawHTML',false,data);
-                                       $j('#profile-rotator').hide();
-                               });
-                       }
-               }
-
-               function linkdrop(event) {
-                       var reply = event.dataTransfer.getData("text/uri-list");
-                       event.target.textContent = reply;
-                       event.preventDefault();
-                       if(reply && reply.length) {
-                               $j('#profile-rotator').show();
-                               $j.get('parse_url?url=' + reply, function(data) {
-                                       tinyMCE.execCommand('mceInsertRawHTML',false,data);
-                                       $j('#profile-rotator').hide();
-                               });
-                       }
-               }
-
-               break;
-       default:
-               break;
-}
-
-
 function showEvent(eventid) {
-       $j.get(
-               baseurl + '/events/?id='+eventid,
+       $.get(
+               baseurl + window.eventModuleUrl + '/?id=' + eventid,
                function(data){
-                       $j.fancybox(data);
+                       $.colorbox({html:data});
+                       $.colorbox.resize();
                }
        );                      
 }
 
+function doEventPreview() {
+        $('#event-edit-preview').val(1);
+        $.post('events',$('#event-edit-form').serialize(), function(data) {
+                $.colorbox({ html: data });
+        });
+        $('#event-edit-preview').val(0);
+}
+
 function initCrop() {
        function onEndCrop( coords, dimensions ) {
-               $( 'x1' ).value = coords.x1;
-               $( 'y1' ).value = coords.y1;
-               $( 'x2' ).value = coords.x2;
-               $( 'y2' ).value = coords.y2;
-               $( 'width' ).value = dimensions.width;
-               $( 'height' ).value = dimensions.height;
+               $PR( 'x1' ).value = coords.x1;
+               $PR( 'y1' ).value = coords.y1;
+               $PR( 'x2' ).value = coords.x2;
+               $PR( 'y2' ).value = coords.y2;
+               $PR( 'width' ).value = dimensions.width;
+               $PR( 'height' ).value = dimensions.height;
        }
 
        Event.observe( window, 'load', function() {
@@ -415,14 +398,14 @@ function initCrop() {
 
 
 /*
-$j(document).mouseup(function (clickPos) {
+$(document).mouseup(function (clickPos) {
 
-       var sysMenu = $j("#system-menu-list");
-       var sysMenuLink = $j(".system-menu-link");
-       var contactsMenu = $j("#contacts-menu-list");
-       var contactsMenuLink = $j(".contacts-menu-link");
-       var networkMenu = $j("#network-menu-list");
-       var networkMenuLink = $j(".network-menu-link");
+       var sysMenu = $("#system-menu-list");
+       var sysMenuLink = $(".system-menu-link");
+       var contactsMenu = $("#contacts-menu-list");
+       var contactsMenuLink = $(".contacts-menu-link");
+       var networkMenu = $("#network-menu-list");
+       var networkMenuLink = $(".network-menu-link");
 
        if( !sysMenu.is(clickPos.target) && !sysMenuLink.is(clickPos.target) && sysMenu.has(clickPos.target).length === 0) {
                hideNavMenu("#system-menu-list");
@@ -438,20 +421,20 @@ $j(document).mouseup(function (clickPos) {
 
 function getPageContent(url) {
 
-       var pos = $j('.main-container').position();
+       var pos = $('.main-container').position();
 
-       $j('.main-container').css('margin-left', pos.left);     
-       $j('.main-content-container').hide(0, function () {
-               $j('.main-content-loading').show(0);
+       $('.main-container').css('margin-left', pos.left);      
+       $('.main-content-container').hide(0, function () {
+               $('.main-content-loading').show(0);
        });
 
-       $j.get(url, function(html) {
-               console.log($j('.main-content-container').html());
-               $j('.main-content-container').html( $j('.main-content-container', html).html() );
-               console.log($j('.main-content-container').html());
-               $j('.main-content-loading').hide(function() {
-                       $j('.main-content-container').fadeIn(800,function() {
-                               $j('.main-container').css('margin-left', 'auto'); // This sucks -- if the CSS specification changes, this will be wrong
+       $.get(url, function(html) {
+               console.log($('.main-content-container').html());
+               $('.main-content-container').html( $('.main-content-container', html).html() );
+               console.log($('.main-content-container').html());
+               $('.main-content-loading').hide(function() {
+                       $('.main-content-container').fadeIn(800,function() {
+                               $('.main-container').css('margin-left', 'auto'); // This sucks -- if the CSS specification changes, this will be wrong
                        });
                });
        });
@@ -468,7 +451,7 @@ function showNavMenu(menuID) {
                window.navMenuTimeout[menuID + '-opening'] = true;
                
                window.navMenuTimeout[menuID + '-timeout'] = setTimeout( function () {
-                       $j(menuID).slideDown('fast').show();
+                       $(menuID).slideDown('fast').show();
                        window.navMenuTimeout[menuID + '-opening'] = false;
                }, 200);
        }
@@ -484,7 +467,7 @@ function hideNavMenu(menuID) {
                window.navMenuTimeout[menuID + '-closing'] = true;
                
                window.navMenuTimeout[menuID + '-timeout'] = setTimeout( function () {
-                       $j(menuID).slideUp('fast');
+                       $(menuID).slideUp('fast');
                        window.navMenuTimeout[menuID + '-closing'] = false;
                }, 500);
        }
@@ -492,161 +475,62 @@ function hideNavMenu(menuID) {
 
 
 
-function insertFormatting(comment,BBcode,id) {
-       
-               var tmpStr = $j("#comment-edit-text-" + id).val();
-               if(tmpStr == comment) {
-                       tmpStr = "";
-                       $j("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-                       $j("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-                       openMenu("comment-edit-submit-wrapper-" + id);
-                       $j("#comment-edit-text-" + id).val(tmpStr);
-               }
-
-       textarea = document.getElementById("comment-edit-text-" +id);
-       if (document.selection) {
-               textarea.focus();
-               selected = document.selection.createRange();
-               if (BBcode == "url"){
-                       selected.text = "["+BBcode+"]" + "http://" +  selected.text + "[/"+BBcode+"]";
-                       } else                  
-               selected.text = "["+BBcode+"]" + selected.text + "[/"+BBcode+"]";
-       } else if (textarea.selectionStart || textarea.selectionStart == "0") {
-               var start = textarea.selectionStart;
-               var end = textarea.selectionEnd;
-               if (BBcode == "url"){
-                       textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + "http://" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
-                       } else
-               textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
-       }
-       return true;
-}
-
-function cmtBbOpen(id) {
-       $j("#comment-edit-bb-" + id).show();
-}
-function cmtBbClose(id) {
-       $j("#comment-edit-bb-" + id).hide();
-}
-
-function confirmDelete() { return confirm(window.delItem); }
-
-function commentOpen(obj,id) {
-       if(obj.value == window.commentEmptyText) {
-               obj.value = "";
-               $j("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-               $j("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-               $j("#mod-cmnt-wrap-" + id).show();
-               openMenu("comment-edit-submit-wrapper-" + id);
-       }
-}
-function commentClose(obj,id) {
-       if(obj.value == "") {
-               obj.value = window.commentEmptyText;
-               $j("#comment-edit-text-" + id).removeClass("comment-edit-text-full");
-               $j("#comment-edit-text-" + id).addClass("comment-edit-text-empty");
-               $j("#mod-cmnt-wrap-" + id).hide();
-               closeMenu("comment-edit-submit-wrapper-" + id);
-       }
-}
-
-
-function commentInsert(obj,id) {
-       var tmpStr = $j("#comment-edit-text-" + id).val();
-       if(tmpStr == window.commentEmptyText) {
-               tmpStr = "";
-               $j("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-               $j("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-               openMenu("comment-edit-submit-wrapper-" + id);
-       }
-       var ins = $j(obj).html();
-       ins = ins.replace("&lt;","<");
-       ins = ins.replace("&gt;",">");
-       ins = ins.replace("&amp;","&");
-       ins = ins.replace("&quot;",'"');
-       $j("#comment-edit-text-" + id).val(tmpStr + ins);
-}
+/*
+ * TinyMCE/Editor
+ */
 
-function qCommentInsert(obj,id) {
-       var tmpStr = $j("#comment-edit-text-" + id).val();
-       if(tmpStr == window.commentEmptyText) {
-               tmpStr = "";
-               $j("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-               $j("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-               openMenu("comment-edit-submit-wrapper-" + id);
-       }
-       var ins = $j(obj).val();
-       ins = ins.replace("&lt;","<");
-       ins = ins.replace("&gt;",">");
-       ins = ins.replace("&amp;","&");
-       ins = ins.replace("&quot;",'"');
-       $j("#comment-edit-text-" + id).val(tmpStr + ins);
-       $j(obj).val("");
-}
+function InitMCEEditor(editorData) {
+       var tinyMCEInitConfig = {
+               theme : "advanced",
+               //mode : // SPECIFIC
+               //editor_selector: // SPECIFIC
+               //elements: // SPECIFIC
+               plugins : "bbcode,paste,autoresize,inlinepopups",
+               theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
+               theme_advanced_buttons2 : "",
+               theme_advanced_buttons3 : "",
+               theme_advanced_toolbar_location : "top",
+               theme_advanced_toolbar_align : "center",
+               theme_advanced_blockformats : "blockquote,code",
+               gecko_spellcheck : true,
+               paste_text_sticky : true, // COUPLED WITH paste PLUGIN
+               entity_encoding : "raw",
+               add_unload_trigger : false,
+               remove_linebreaks : false,
+               //force_p_newlines : false,
+               //force_br_newlines : true,
+               forced_root_block : 'div',
+               //convert_urls: false, //SPECIFIC?
+               content_css: baseurl + "/view/custom_tinymce.css",
+               theme_advanced_path : false,
+               file_browser_callback : "fcFileBrowser",
+               //setup : // SPECIFIC
+       };
 
-/*function showHideCommentBox(id) {
-       if( $j('#comment-edit-form-' + id).is(':visible')) {
-               $j('#comment-edit-form-' + id).hide();
+       if(window.editSelect != 'none') {
+               $.extend(tinyMCEInitConfig, editorData);
+               tinyMCE.init(tinyMCEInitConfig);
        }
-       else {
-               $j('#comment-edit-form-' + id).show();
+       else if(typeof editorData.plaintextFn == 'function') {
+               (editorData.plaintextFn)();
        }
-}*/
-
-
-
-function enableOnUser(){
-       if (editor) return;
-       $j(this).val("");
-       initEditor();
 }
 
-
-var editor=false;
+var editor = false;
 var textlen = 0;
-var plaintext = window.editSelect;
-var ispublic = window.isPublic;
 
 function initEditor(cb){
-       if (editor==false){
-               $j("#profile-jot-text-loading").show();
-               if(plaintext == 'none') {
-                       $j("#profile-jot-text-loading").hide();
-                       $j("#profile-jot-text").css({ 'height': 200, 'color': '#000' });
-                       $j("#profile-jot-text").contact_autocomplete(baseurl+"/acl");
-                       editor = true;
-                       $j("a#jot-perms-icon").fancybox({
-                               'transitionIn' : 'elastic',
-                               'transitionOut' : 'elastic'
-                       });
-                       $j(".jothidden").show();
-                       if (typeof cb!="undefined") cb();
-                       return;
-               }
-               tinyMCE.init({
-                       theme : "advanced",
+       if(editor==false) {
+               editor = true;
+               $("#profile-jot-text-loading").show();
+
+               var editorData = {
                        mode : "specific_textareas",
-                       editor_selector: window.editSelect,
-                       auto_focus: "profile-jot-text",
-                       plugins : "bbcode,paste,autoresize, inlinepopups",
-                       theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
-                       theme_advanced_buttons2 : "",
-                       theme_advanced_buttons3 : "",
-                       theme_advanced_toolbar_location : "top",
-                       theme_advanced_toolbar_align : "center",
-                       theme_advanced_blockformats : "blockquote,code",
-                       gecko_spellcheck : true,
-                       paste_text_sticky : true,
-                       entity_encoding : "raw",
-                       add_unload_trigger : false,
-                       remove_linebreaks : false,
-                       force_p_newlines : false,
-                       force_br_newlines : true,
-                       forced_root_block : '',
-                       convert_urls: false,
-                       content_css: window.baseURL + "/view/custom_tinymce.css",
-                       theme_advanced_path : false,
-                       file_browser_callback : "fcFileBrowser",
+                       editor_selector : "profile-jot-text",
+                       auto_focus : "profile-jot-text",
+                       //plugins : "bbcode,paste,autoresize,inlinepopups",
+                       //paste_text_sticky : true,
+                       convert_urls : false,
                        setup : function(ed) {
                                cPopup = null;
                                ed.onKeyDown.add(function(ed,e) {
@@ -669,260 +553,190 @@ function initEditor(cb){
                                        }
 
                                        textlen = txt.length;
-                                       if(textlen != 0 && $j('#jot-perms-icon').is('.unlock')) {
-                                               $j('#profile-jot-desc').html(ispublic);
+                                       if(textlen != 0 && $('#jot-perms-icon').is('.unlock')) {
+                                               $('#profile-jot-desc').html(window.isPublic);
                                        }
                                        else {
-                                               $j('#profile-jot-desc').html('&nbsp;');
+                                               $('#profile-jot-desc').html('&nbsp;');
                                        }        
 
                                 //Character count
 
                                        if(textlen <= 140) {
-                                               $j('#character-counter').removeClass('red');
-                                               $j('#character-counter').removeClass('orange');
-                                               $j('#character-counter').addClass('grey');
+                                               $('#character-counter').removeClass('red');
+                                               $('#character-counter').removeClass('orange');
+                                               $('#character-counter').addClass('grey');
                                        }
                                        if((textlen > 140) && (textlen <= 420)) {
-                                               $j('#character-counter').removeClass('grey');
-                                               $j('#character-counter').removeClass('red');
-                                               $j('#character-counter').addClass('orange');
+                                               $('#character-counter').removeClass('grey');
+                                               $('#character-counter').removeClass('red');
+                                               $('#character-counter').addClass('orange');
                                        }
                                        if(textlen > 420) {
-                                               $j('#character-counter').removeClass('grey');
-                                               $j('#character-counter').removeClass('orange');
-                                               $j('#character-counter').addClass('red');
+                                               $('#character-counter').removeClass('grey');
+                                               $('#character-counter').removeClass('orange');
+                                               $('#character-counter').addClass('red');
                                        }
-                                       $j('#character-counter').text(textlen);
+                                       $('#character-counter').text(textlen);
                                });
 
                                ed.onInit.add(function(ed) {
                                        ed.pasteAsPlainText = true;
-                                       $j("#profile-jot-text-loading").hide();
-                                       $j(".jothidden").show();
+                                       $("#profile-jot-text-loading").hide();
+                                       $(".jothidden").show();
                                        if (typeof cb!="undefined") cb();
                                });
 
+                       },
+                       plaintextFn : function() {
+                               $("#profile-jot-text-loading").hide();
+                               $("#profile-jot-text").css({ 'height': 200, 'color': '#000' });
+                               $("#profile-jot-text").editor_autocomplete(baseurl+"/acl");
+                               $(".jothidden").show();
+                               if (typeof cb!="undefined") cb();
                        }
-               });
-               editor = true;
+               };
+               InitMCEEditor(editorData);
+
                // setup acl popup
-               $j("a#jot-perms-icon").fancybox({
-                       'transitionIn' : 'none',
-                       'transitionOut' : 'none'
+               $("a#jot-perms-icon").colorbox({
+                       'inline' : true,
+                       'transition' : 'elastic'
                }); 
        } else {
                if (typeof cb!="undefined") cb();
        }
 }
 
+function enableOnUser(){
+       if (editor) return;
+       $(this).val("");
+       initEditor();
+}
+
 
 function msgInitEditor() {
-       if(plaintext != 'none') {
-               tinyMCE.init({
-                       theme : "advanced",
-                       mode : "specific_textareas",
-                       editor_selector: /(profile-jot-text|prvmail-text)/,
-                       plugins : "bbcode,paste",
-                       theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor",
-                       theme_advanced_buttons2 : "",
-                       theme_advanced_buttons3 : "",
-                       theme_advanced_toolbar_location : "top",
-                       theme_advanced_toolbar_align : "center",
-                       theme_advanced_blockformats : "blockquote,code",
-                       gecko_spellcheck : true,
-                       paste_text_sticky : true,
-                       entity_encoding : "raw",
-                       add_unload_trigger : false,
-                       remove_linebreaks : false,
-                       force_p_newlines : false,
-                       force_br_newlines : true,
-                       forced_root_block : '',
-                       convert_urls: false,
-                       content_css: baseurl + "/view/custom_tinymce.css",
-                            //Character count
-                       theme_advanced_path : false,
-                       setup : function(ed) {
-                               ed.onInit.add(function(ed) {
-                                       ed.pasteAsPlainText = true;
-                                       var editorId = ed.editorId;
-                                       var textarea = $j('#'+editorId);
-                                       if (typeof(textarea.attr('tabindex')) != "undefined") {
-                                               $j('#'+editorId+'_ifr').attr('tabindex', textarea.attr('tabindex'));
-                                               textarea.attr('tabindex', null);
+       var editorData = {
+               mode : "specific_textareas",
+               editor_selector : "prvmail-text",
+               //plugins : "bbcode,paste",
+               //paste_text_sticky : true,
+               convert_urls : false,
+               //theme_advanced_path : false,
+               setup : function(ed) {
+                       cPopup = null;
+                       ed.onKeyDown.add(function(ed,e) {
+                               if(cPopup !== null)
+                                       cPopup.onkey(e);
+                       });
+
+                       ed.onKeyUp.add(function(ed, e) {
+                               var txt = tinyMCE.activeEditor.getContent();
+                               match = txt.match(/@([^ \n]+)$/);
+                               if(match!==null) {
+                                       if(cPopup === null) {
+                                               cPopup = new ACPopup(this,baseurl+"/acl");
                                        }
-                               });
-                       }
-               });
-       }
-       else
-               $j("#prvmail-text").contact_autocomplete(baseurl+"/acl");
-}
+                                       if(cPopup.ready && match[1]!==cPopup.searchText) cPopup.search(match[1]);
+                                       if(! cPopup.ready) cPopup = null;
+                               }
+                               else {
+                                       if(cPopup !== null) { cPopup.close(); cPopup = null; }
+                               }
 
+                               textlen = txt.length;
+                               if(textlen != 0 && $('#jot-perms-icon').is('.unlock')) {
+                                       $('#profile-jot-desc').html(window.isPublic);
+                               }
+                               else {
+                                       $('#profile-jot-desc').html('&nbsp;');
+                               }        
+                       });
 
-function profInitEditor() {
-       tinyMCE.init({
-               theme : "advanced",
-               mode : window.editSelect,
-               plugins : "bbcode,paste",
-               theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
-               theme_advanced_buttons2 : "",
-               theme_advanced_buttons3 : "",
-               theme_advanced_toolbar_location : "top",
-               theme_advanced_toolbar_align : "center",
-               theme_advanced_blockformats : "blockquote,code",
-               gecko_spellcheck : true,
-               paste_text_sticky : true,
-               entity_encoding : "raw",
-               add_unload_trigger : false,
-               remove_linebreaks : false,
-               force_p_newlines : false,
-               force_br_newlines : true,
-               forced_root_block : '',
-               content_css: baseurl + "/view/custom_tinymce.css",
-               theme_advanced_path : false,
-               setup : function(ed) {
                        ed.onInit.add(function(ed) {
-                       ed.pasteAsPlainText = true;
-                   });
+                               ed.pasteAsPlainText = true;
+                               var editorId = ed.editorId;
+                               var textarea = $('#'+editorId);
+                               if (typeof(textarea.attr('tabindex')) != "undefined") {
+                                       $('#'+editorId+'_ifr').attr('tabindex', textarea.attr('tabindex'));
+                                       textarea.attr('tabindex', null);
+                               }
+                       });
+               },
+               plaintextFn : function() {
+                       $("#prvmail-text").editor_autocomplete(baseurl+"/acl");
                }
+       }
+       InitMCEEditor(editorData);
+}
 
-       });
+
+function contactInitEditor() {
+       var editorData = {
+               mode : "exact",
+               elements : "contact-edit-info",
+               //plugins : "bbcode"
+       }
+       InitMCEEditor(editorData);
 }
 
+
 function eventInitEditor() {
-       tinyMCE.init({
-               theme : "advanced",
+       var editorData = {
                mode : "textareas",
-               plugins : "bbcode,paste",
-               theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
-               theme_advanced_buttons2 : "",
-               theme_advanced_buttons3 : "",
-               theme_advanced_toolbar_location : "top",
-               theme_advanced_toolbar_align : "center",
-               theme_advanced_blockformats : "blockquote,code",
-               gecko_spellcheck : true,
-               paste_text_sticky : true,
-               entity_encoding : "raw",
-               add_unload_trigger : false,
-               remove_linebreaks : false,
-               force_p_newlines : false,
-               force_br_newlines : true,
-               forced_root_block : '',
-               content_css: baseurl + "/view/custom_tinymce.css",
-               theme_advanced_path : false,
+               //plugins : "bbcode,paste",
+               //paste_text_sticky : true,
+               //theme_advanced_path : false,
                setup : function(ed) {
                        ed.onInit.add(function(ed) {
                                ed.pasteAsPlainText = true;
                        });
                }
-
-       });
-}
-
-function contactInitEditor () {
-       tinyMCE.init({
-               theme : "advanced",
-               mode : window.editSelect,
-               elements: "contact-edit-info",
-               plugins : "bbcode",
-               theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor",
-               theme_advanced_buttons2 : "",
-               theme_advanced_buttons3 : "",
-               theme_advanced_toolbar_location : "top",
-               theme_advanced_toolbar_align : "center",
-               theme_advanced_styles : "blockquote,code",
-               gecko_spellcheck : true,
-               entity_encoding : "raw",
-               add_unload_trigger : false,
-               remove_linebreaks : false,
-               force_p_newlines : false,
-               force_br_newlines : true,
-               forced_root_block : '',
-               content_css: baseurl + "/view/custom_tinymce.css"
-
-
-       });
+       }
+       InitMCEEditor(editorData);
 }
 
-function wallInitEditor() {
-       var plaintext = window.editSelect;
 
-       if(plaintext != 'none') {
-               tinyMCE.init({
-                       theme : "advanced",
-                       mode : "specific_textareas",
-                       editor_selector: /(profile-jot-text|prvmail-text)/,
-                       plugins : "bbcode,paste",
-                       theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor",
-                       theme_advanced_buttons2 : "",
-                       theme_advanced_buttons3 : "",
-                       theme_advanced_toolbar_location : "top",
-                       theme_advanced_toolbar_align : "center",
-                       theme_advanced_blockformats : "blockquote,code",
-                       gecko_spellcheck : true,
-                       paste_text_sticky : true,
-                       entity_encoding : "raw",
-                       add_unload_trigger : false,
-                       remove_linebreaks : false,
-                       force_p_newlines : false,
-                       force_br_newlines : true,
-                       forced_root_block : '',
-                       convert_urls: false,
-                       content_css: baseurl + "/view/custom_tinymce.css",
-                                //Character count
-                       theme_advanced_path : false,
-                       setup : function(ed) {
-                               ed.onInit.add(function(ed) {
-                                       ed.pasteAsPlainText = true;
-                                       var editorId = ed.editorId;
-                                       var textarea = $j('#'+editorId);
-                                       if (typeof(textarea.attr('tabindex')) != "undefined") {
-                                               $j('#'+editorId+'_ifr').attr('tabindex', textarea.attr('tabindex'));
-                                               textarea.attr('tabindex', null);
-                                       }
-                               });
-                       }
-               });
+function profInitEditor() {
+       var editorData = {
+               mode : "textareas",
+               //plugins : "bbcode,paste",
+               //paste_text_sticky : true,
+               //theme_advanced_path : false,
+               setup : function(ed) {
+                       ed.onInit.add(function(ed) {
+                               ed.pasteAsPlainText = true;
+                       });
+               }
        }
-       else
-               $j("#prvmail-text").contact_autocomplete(baseurl+"/acl");
+       InitMCEEditor(editorData);
 }
 
-function deleteCheckedItems(delID) {
-       if(confirm(window.delItems)) {
-               var checkedstr = '';
 
-               $j(delID).hide();
-               $j(delID + '-rotator').show();
-               $j('.item-select').each( function() {
-                       if($j(this).is(':checked')) {
-                               if(checkedstr.length != 0) {
-                                       checkedstr = checkedstr + ',' + $j(this).val();
-                               }
-                               else {
-                                       checkedstr = $j(this).val();
-                               }
-                       }       
-               });
-               $j.post('item', { dropitems: checkedstr }, function(data) {
-                       window.location.reload();
-               });
+/*
+ * Jot
+ */
+
+function addeditortext(textElem, data) {
+       if(window.editSelect == 'none') {
+               var currentText = $(textElem).val();
+               $(textElem).val(currentText + data);
        }
+       else
+               tinyMCE.execCommand('mceInsertRawHTML',false,data);
 }
 
-
 function jotVideoURL() {
        reply = prompt(window.vidURL);
        if(reply && reply.length) {
-               addeditortext('[video]' + reply + '[/video]');
+               addeditortext("#profile-jot-text", '[video]' + reply + '[/video]');
        }
 }
 
 function jotAudioURL() {
        reply = prompt(window.audURL);
        if(reply && reply.length) {
-               addeditortext('[audio]' + reply + '[/audio]');
+               addeditortext("#profile-jot-text", '[audio]' + reply + '[/audio]');
        }
 }
 
@@ -935,7 +749,7 @@ function jotGetLocation() {
                        var lat = position.coords.latitude;
                        var lng = position.coords.longitude;
 
-                       $j.ajax({
+                       $.ajax({
                                type: 'GET',
                                url: 'http://nominatim.openstreetmap.org/reverse?format=json&lat='+lat+'&lon='+lng,
                                jsonp: 'json_callback',
@@ -944,48 +758,123 @@ function jotGetLocation() {
                                success: function(json) {
                                        console.log(json);
                                        var locationDisplay = json.address.building+', '+json.address.city+', '+json.address.state;
-                                       $j('#jot-location').val(locationDisplay);
-                                       $j('#jot-display-location').html('Location: '+locationDisplay);
-                                       $j('#jot-display-location').show();
+                                       $('#jot-location').val(locationDisplay);
+                                       $('#jot-display-location').html('Location: '+locationDisplay);
+                                       $('#jot-display-location').show();
                                }
                        });
                });
 
        }
        else {
-               reply = prompt(window.whereAreU, $j('#jot-location').val());
+               reply = prompt(window.whereAreU, $('#jot-location').val());
                if(reply && reply.length) {
-                       $j('#jot-location').val(reply);
+                       $('#jot-location').val(reply);
                }
        }*/
 
-       reply = prompt(window.whereAreU, $j('#jot-location').val());
+       reply = prompt(window.whereAreU, $('#jot-location').val());
        if(reply && reply.length) {
-               $j('#jot-location').val(reply);
+               $('#jot-location').val(reply);
        }
 }
 
 function jotShare(id) {
-       if ($j('#jot-popup').length != 0) $j('#jot-popup').show();
+       if ($('#jot-popup').length != 0) $('#jot-popup').show();
 
-       $j('#like-rotator-' + id).show();
-       $j.get('share/' + id, function(data) {
-               if (!editor) $j("#profile-jot-text").val("");
+       $('#like-rotator-' + id).show();
+       $.get('share/' + id, function(data) {
+               if (!editor) $("#profile-jot-text").val("");
                initEditor(function(){
-                       addeditortext(data);
-                       $j('#like-rotator-' + id).hide();
-                       $j(window).scrollTop(0);
+                       addeditortext("#profile-jot-text", data);
+                       $('#like-rotator-' + id).hide();
+                       $(window).scrollTop(0);
                });
 
        });
 }
 
+function jotClearLocation() {
+       $('#jot-coord').val('');
+       $('#profile-nolocation-wrapper').hide();
+}
+
+
+function jotGetLink() {
+       reply = prompt(window.linkURL);
+       if(reply && reply.length) {
+               reply = bin2hex(reply);
+               $('#profile-rotator').show();
+               $.get('parse_url?binurl=' + reply, function(data) {
+                       addeditortext(window.jotId, data);
+                       $('#profile-rotator').hide();
+               });
+       }
+}
+
+
 function linkdropper(event) {
        var linkFound = event.dataTransfer.types.contains("text/uri-list");
        if(linkFound)
                event.preventDefault();
 }
 
+
+function linkdrop(event) {
+       var reply = event.dataTransfer.getData("text/uri-list");
+       //event.target.textContent = reply;
+       event.preventDefault();
+       if(reply && reply.length) {
+               reply = bin2hex(reply);
+               $('#profile-rotator').show();
+               $.get('parse_url?binurl=' + reply, function(data) {
+/*                     if(window.jotId == "#profile-jot-text") {
+                               if (!editor) $("#profile-jot-text").val("");
+                               initEditor(function(){
+                                       addeditortext(window.jotId, data);
+                                       $('#profile-rotator').hide();
+                               });
+                       }
+                       else {*/
+                       addeditortext(window.jotId, data);
+                       $('#profile-rotator').hide();
+//                     }
+               });
+       }
+}
+
+
+if(typeof window.geoTag === 'function') window.geoTag();
+
+
+/*
+ * Items
+ */
+
+function confirmDelete() { return confirm(window.delItem); }
+
+function deleteCheckedItems(delID) {
+       if(confirm(window.delItems)) {
+               var checkedstr = '';
+
+               $(delID).hide();
+               $(delID + '-rotator').show();
+               $('.item-select').each( function() {
+                       if($(this).is(':checked')) {
+                               if(checkedstr.length != 0) {
+                                       checkedstr = checkedstr + ',' + $(this).val();
+                               }
+                               else {
+                                       checkedstr = $(this).val();
+                               }
+                       }       
+               });
+               $.post('item', { dropitems: checkedstr }, function(data) {
+                       window.location.reload();
+               });
+       }
+}
+
 function itemTag(id) {
        reply = prompt(window.term);
        if(reply && reply.length) {
@@ -993,9 +882,9 @@ function itemTag(id) {
                if(reply.length) {
 
                        commentBusy = true;
-                       $j('body').css('cursor', 'wait');
+                       $('body').css('cursor', 'wait');
 
-                       $j.get('tagger/' + id + '?term=' + reply, NavUpdate);
+                       $.get('tagger/' + id + '?term=' + reply, NavUpdate);
                        /*if(timer) clearTimeout(timer);
                        timer = setTimeout(NavUpdate,3000);*/
                        liking = 1;
@@ -1005,30 +894,31 @@ function itemTag(id) {
 
 function itemFiler(id) {
        
-       var bordercolor = $j("input").css("border-color");
+       var bordercolor = $("input").css("border-color");
        
-       $j.get('filer/', function(data){
-               $j.fancybox(data);
-               $j("#id_term").keypress(function(){
-                       $j(this).css("border-color",bordercolor);
+       $.get('filer/', function(data){
+               $.colorbox({html:data});
+               $.colorbox.resize();
+               $("#id_term").keypress(function(){
+                       $(this).css("border-color",bordercolor);
                })
-               $j("#select_term").change(function(){
-                       $j("#id_term").css("border-color",bordercolor);
+               $("#select_term").change(function(){
+                       $("#id_term").css("border-color",bordercolor);
                })
                
-               $j("#filer_save").click(function(e){
+               $("#filer_save").click(function(e){
                        e.preventDefault();
-                       reply = $j("#id_term").val();
+                       reply = $("#id_term").val();
                        if(reply && reply.length) {
                                commentBusy = true;
-                               $j('body').css('cursor', 'wait');
-                               $j.get('filer/' + id + '?term=' + reply, NavUpdate);
+                               $('body').css('cursor', 'wait');
+                               $.get('filer/' + id + '?term=' + reply, NavUpdate);
 /*                                     if(timer) clearTimeout(timer);
                                timer = setTimeout(NavUpdate,3000);*/
                                liking = 1;
-                               $j.fancybox.close();
+                               $.colorbox.close();
                        } else {
-                               $j("#id_term").css("border-color","#FF0000");
+                               $("#id_term").css("border-color","#FF0000");
                        }
                        return false;
                });
@@ -1036,20 +926,107 @@ function itemFiler(id) {
        
 }
 
-function jotClearLocation() {
-       $j('#jot-coord').val('');
-       $j('#profile-nolocation-wrapper').hide();
+
+/*
+ * Comments
+ */
+
+function insertFormatting(comment,BBcode,id) {
+       
+       var tmpStr = $("#comment-edit-text-" + id).val();
+       if(tmpStr == comment) {
+               tmpStr = "";
+               $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
+               $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
+               openMenu("comment-edit-submit-wrapper-" + id);
+               $("#comment-edit-text-" + id).val(tmpStr);
+       }
+
+       textarea = document.getElementById("comment-edit-text-" +id);
+       if (document.selection) {
+               textarea.focus();
+               selected = document.selection.createRange();
+               if (BBcode == "url"){
+                       selected.text = "["+BBcode+"=http://]" +  selected.text + "[/"+BBcode+"]";
+                       } else                  
+               selected.text = "["+BBcode+"]" + selected.text + "[/"+BBcode+"]";
+       } else if (textarea.selectionStart || textarea.selectionStart == "0") {
+               var start = textarea.selectionStart;
+               var end = textarea.selectionEnd;
+               if (BBcode == "url"){
+                       textarea.value = textarea.value.substring(0, start) + "["+BBcode+"=http://]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
+                       } else
+               textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
+       }
+       return true;
+}
+
+function cmtBbOpen(id) {
+       $("#comment-edit-bb-" + id).show();
+}
+function cmtBbClose(id) {
+       $("#comment-edit-bb-" + id).hide();
 }
 
-function addeditortext(data) {
-       if(plaintext == 'none') {
-               var currentText = $j("#profile-jot-text").val();
-               $j("#profile-jot-text").val(currentText + data);
+function commentOpen(obj,id) {
+       if(obj.value == window.commentEmptyText) {
+               obj.value = "";
+               $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
+               $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
+               $("#mod-cmnt-wrap-" + id).show();
+               openMenu("comment-edit-submit-wrapper-" + id);
+       }
+}
+function commentClose(obj,id) {
+       if(obj.value == "") {
+               obj.value = window.commentEmptyText;
+               $("#comment-edit-text-" + id).removeClass("comment-edit-text-full");
+               $("#comment-edit-text-" + id).addClass("comment-edit-text-empty");
+               $("#mod-cmnt-wrap-" + id).hide();
+               closeMenu("comment-edit-submit-wrapper-" + id);
        }
-       else
-               tinyMCE.execCommand('mceInsertRawHTML',false,data);
 }
 
-if(typeof window.geoTag === 'function') window.geoTag();
 
+function commentInsert(obj,id) {
+       var tmpStr = $("#comment-edit-text-" + id).val();
+       if(tmpStr == window.commentEmptyText) {
+               tmpStr = "";
+               $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
+               $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
+               openMenu("comment-edit-submit-wrapper-" + id);
+       }
+       var ins = $(obj).html();
+       ins = ins.replace("&lt;","<");
+       ins = ins.replace("&gt;",">");
+       ins = ins.replace("&amp;","&");
+       ins = ins.replace("&quot;",'"');
+       $("#comment-edit-text-" + id).val(tmpStr + ins);
+}
+
+function qCommentInsert(obj,id) {
+       var tmpStr = $("#comment-edit-text-" + id).val();
+       if(tmpStr == window.commentEmptyText) {
+               tmpStr = "";
+               $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
+               $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
+               openMenu("comment-edit-submit-wrapper-" + id);
+       }
+       var ins = $(obj).val();
+       ins = ins.replace("&lt;","<");
+       ins = ins.replace("&gt;",">");
+       ins = ins.replace("&amp;","&");
+       ins = ins.replace("&quot;",'"');
+       $("#comment-edit-text-" + id).val(tmpStr + ins);
+       $(obj).val("");
+}
+
+/*function showHideCommentBox(id) {
+       if( $('#comment-edit-form-' + id).is(':visible')) {
+               $('#comment-edit-form-' + id).hide();
+       }
+       else {
+               $('#comment-edit-form-' + id).show();
+       }
+}*/