function PageClass(){

   this.article_list_ready = function(){
      $('h1.article-title a').livequery(
         function() {
            $(this).hover(function() {
               $(this).find('abbr').css({'display': 'inline'}); // to allow fade out animation
               $(this).find('abbr').css({'left': '-8px'});
               $(this).find('abbr').stop().animate({
                  'opacity': 1,
                  'left': '2px'
               }, {
                  queue: false,
                  duration: 200
               });
               },
               function() {
                  $(this).find('abbr').animate({
                  'opacity': 'toggle'
                     }, {
                  queue: false,
                  duration: 400
                  });
               });
         },
         function() {
         	$(this).unbind('mouseover').unbind('mouseout');
         }
      );
   };

   this.article_images = function(){
      if ($(".list-files .innerbox").size() > 0){
         $(".list-files").toggle();
         return;
      }
      $.post(app_url+"admin/listimages", {}, function(data) {
         if (data.status !== 0){ alert(data.message); return; }
         $(data.images).each(function(){
            var innerbox = $("<div class=\"innerbox mt5\">");           
            innerbox.append("<a class=\"fancybox\" href=\""+app_url+"global/upload/images/"+this.name+"\">"+this.name+"</a> ");
            innerbox.append("<span class=\"fs070\">("+this.width+"x"+this.height+")</span>");
            innerbox.append("<div class=\"mt2 tright\">"+this.light+this.bbcode+this.del+"</div>");
            $(".list-files").append(innerbox);
         });
         $(".list-files").show();
         $("a.fancybox").fancybox();
      },"json");
   };

   this.form_ready = function(){
      $('input[title]').each(function() {
         if($(this).val() === '') {
            $(this).val($(this).attr('title'));
         }
         $(this).focus(function() {
            if($(this).val() === $(this).attr('title')) {
               $(this).val('').addClass('focused');
            }
         });
         $(this).blur(function() {
            if($(this).val() === '') {
               $(this).val($(this).attr('title')).removeClass('focused');
            }
         });
      });
   };

   this.form_clear = function(){
      $('input[title]').each(function() {
         if ($(this).attr('title') !== '' && $(this).val() === $(this).attr('title')){
            $(this).val('');
         }
      });
   };

   this.form_textprev = function(){
      var value = $.trim($("#edittext textarea").val());
      if (value === ""){alert("Bitte einen Text eingeben!");return;}
      $.post(app_url+"admin/previewtext", {text:value}, function(data) {
         if (data.status !== 0){ alert(data.message); return; }
         $("#previewcontent").html(data.text);
         $("#previewtext").show();
         $("a.fancybox").fancybox();
         $("#edittext").hide();
      },"json");
   };

   this.form_textedit = function(){
      $("#previewtext").hide();
      $("#edittext").show();
   };

   this.do_logout = function(){
      if (!confirm("Möchtest Du Dich wirklich abmelden?")){return;}
      window.location.href = app_url+"logout";
   };
    
   this.delete_file = function(link, mode, file){
      if (mode == 'images'){
         if (!confirm("Dieses Bild wirklich löschen?")){ return; }
      }else{
         return;
      }
      $.post(app_url+"admin/delete_file", {mode:'images',file:file}, function(data){
         if (data.status !== 0){ alert(data.message); return; }
         $(link).parents(".innerbox").fadeOut(function(){
            if ($(".files-container .innerbox :visible").size() == 0){
               $(".files-container").fadeOut();
            }
         });
      }, "json");
   };
   
   this.create_lightbox = function(image){
      var parts = image.split(".");
      var result = "[light="+app_url+"global/upload/images/"+image+"]"+app_url+"global/upload/images/"+parts[0]+"_tn."+parts[1]+"[/light]";
      $("#text").val($("#text").val() + result);
   };
   
   this.create_bbcode_image = function(image){
      var result = "[img]"+app_url+"global/upload/images/"+image+"[/img]";
      $("#text").val($("#text").val() + result);
   };
   
   this.tag_ready = function(){
      $("#newtag").keypress(function(event){
         var keycode = (window.event) ? window.event.keyCode : event.which;
         if (keycode == 13){pc.add_tag(); return false;}
      });
      var tags = $("#article_tags").val().split(",");
      $.each(tags,function(){
         $("#tag-"+this).addClass("selected");
      });
   };
   
   this.add_tag = function(){
      var tags = $.trim($("#newtag").val().toLowerCase());
      if (tags == ""){alert("Bitte mindestens ein Schlagwort eingeben");return;}
      var reg = /[\s,;]+/;
      var newtags = Array();
      tags = tags.split(reg);
      $.each(tags,function(){
         var newtag = this;
         var exists = false;
         $("#tags li a").each(function(){
            if (newtag == $(this).html()){
               exists = true;
            }
         });
         if (exists == false){
            newtags.push(newtag);
         }
      });
      if (newtags.length > 0){
         $.post(app_url+"admin/add_tag", {tags:newtags.join(" ")}, function(data){
            if (data.status !== 0){ alert(data.message); return; }
               if ($("#tags ul").size() == 0){
                  $("#tags").prepend("<ul></ul><div class=\"clear\"></div>");
               }
               $.each(data.newtags,function(){
                  var newtag = $("<li><a id=\"tag-"+this.id+"\" href=\"javascript:void(0);\" onclick=\"pc.select_tag(this)\">"+this.name+"</a></li>");
                  $("#tags ul").append(newtag);
               });
            $("#newtag").val("");
         }, "json");
      }
   };

   this.select_tag = function(taglink){
      $(taglink).toggleClass("selected");
      this.collect_tags();
   }

   this.collect_tags = function(){
      $("#article_tags").val("");
      $("#tags ul li a.selected").each(function(){
         $("#article_tags").val($("#article_tags").val() + $(this).attr("id").substr(4) + ",");
      });
   };

   this.contact = function(){
      var error = false;
      $("#footercontact div.error").remove();

      var c_name = $.trim($("#c_name").val());
      if (c_name == ""){
         error = true;
         $("#c_name").after("<div class=\"error mb2\">Bitte einen Namen eingeben</div>");
      }
      var c_email = $.trim($("#c_email").val());
      if (c_email == ""){
         error = true;
         $("#c_email").after("<div class=\"error mb2\">Bitte eine E-Mail Adresse eingeben</div>");
      }
      var c_text = $.trim($("#c_text").val());
      if (c_text == ""){
         error = true;
         $("#c_text").after("<div class=\"error mb2\">Bitte eine Nachricht eingeben</div>");
      }
      if (error == false){
         $.post(app_url+"blog/contact", {name:c_name, email:c_email, text:c_text}, function(data){
            if (data.status !== 0){ alert(data.message); return; }
            window.location.reload();
         }, "json");
      }
   }
   
   this.log = function (val){console.log(val);}
}