/* my code */


var domus = {
    morph : function() {
    /* fx morph */
        Fx.Morph = Fx.Styles.extend({
            start: function(className){
                var to = {};
                $each(document.styleSheets, function(style){
                    var rules = style.rules || style.cssRules;
                    $each(rules, function(rule){
                        if (!rule.selectorText.test('\.' + className + '$')) return;
                        Fx.CSS.Styles.each(function(style){
                                if (!rule.style || !rule.style[style]) return;
                                var ruleStyle = rule.style[style];
                                to[style] = (style.test(/color/i) && ruleStyle.test(/^rgb/)) ? ruleStyle.rgbToHex() : ruleStyle;
                        });
                    });
                });
                return this.parent(to);
            }
    });
    Fx.CSS.Styles = ["backgroundColor", "backgroundPosition", "color", "width", "height", "left", "top", "bottom", "right", "fontSize", "letterSpacing", "lineHeight", "textIndent", "opacity"];
    Fx.CSS.Styles.extend(Element.Styles.padding);
    Fx.CSS.Styles.extend(Element.Styles.margin);
    Element.Styles.border.each(function(border){
        ['Width', 'Color'].each(function(property){
            Fx.CSS.Styles.push(border + property);
        });
    });    
    },
    
    
    doEdit : function() {
        var eip = new Class({
        /**
         * Initialize
         * @param elements els An array of elements.
         * @param string action the path to the file to target with form.
         * @param object params (optional) Any extra parameters you would like to send with the AJAX call.
         * @param object options (optional) Override the default classes with this.
         */
	initialize: function(els, action, params, options) {
            // Handle array of elements or single element
            if ($type(els) == 'array') {
                    els.each(function(el){
                            this.prepForm(el);
                    }.bind(this));
            } else if ($type(els) == 'element') {
                    this.prepForm(els);
            } else {
                    return;
            }
    
            // Store the action (path to file) and params
            this.action = action;
            this.params = params;
    
            // Default options
            this.options = Object.extend({
                    overCl: 'over',
                    hiddenCl: 'hidden',
                    editableCl: 'edittextarea',
                    textareaCl: 'textarea'
            }, options || {} );
	},
        
        /**
         * Add events to element
         * @param element el Your target element.
         */
	prepForm: function(el) {
            var obj = this;
            el.addEvents({
                    'mouseover': function(){this.addClass(obj.options.overCl);this.setProperty('title','Double click here to edit')},
                    'mouseout': function(){this.removeClass(obj.options.overCl);},
                    'dblclick': function(){obj.showForm(this);}
            });
	},


	/**
        * Build and/or show form
        * Need to imrpove this function to opinally reqeust from server
        * every time form is invoked
        * @param element el Your target element.
        */
	showForm: function(el) {
            //form.remove();
            var classes = el.getProperty('class').split(" ");
            for (i=classes.length-1;i>=0;i--) {
                if (classes[i].contains('type:')) {
		    var target = classes[i].split(":")[1];
                }
                else if (classes[i].contains('id:')) {
                    var id = classes[i].split(":")[1];
                }
            }
            var height = el.getStyle('height').toInt();
            height = height + 38 + 'px';
            
            
            // Hide target element
            el.addClass(this.options.hiddenCl);

            // If the form exists already, let's show that
            if (el.form) {
                el.form.removeClass(this.options.hiddenCl);
                //el.form[target].focus();
                //form.focus();
                return;
            }

            // Create new form
            var form = new Element('form', {
                'id': 'form_' + id,
                'action': this.action,
                'class': this.options.editableCl
            });

            // Store new form in the element
            el.form = form;
            
            // Need this to pass to the buttons
            var obj = this;

            var divholder = new Element('div', {
                'style': 'display:block;',
                'class': 'editboxholder'
            }).injectInside(form);

            // Add a submit button
            new Element('input', {
                'type': 'submit',
                'value': 'save',
                'class': 'submitbutton',
                'style': 'font-weight: bold',
                'events': {
                    'click': function(evt){
                        (new Event(evt)).stop();
                        el.empty();
                        el.appendText('saving...');
                        obj.hideForm(form, el);
                        form.send({update: el});
                    }
                }
            }).injectInside(divholder);
            

            // Add a cancel button
            new Element('input', {
                'type': 'button',
                'value': 'cancel',
                'class': 'submitbutton',
                'style': 'margin-left:4px;',
                'events': {
                    'click': function(form, el){
                        obj.hideForm(form, el);
                        //alert("form: "+form+" el: "+el);
                        //(new Event(form,el)).stop();
                    }.pass([form, el])
                }
            }).injectInside(divholder);
            
            var big = 0;
            var oldstyles;
            new Element('input', {
                'type': 'button',
                'value': '<->',
                'class': 'submitbutton',
                'style': 'margin-left:4px;',
                //'style': 'margin:0;margin: 0 0 0 305px; padding: 0',
                'title': 'Expand/Contract width of EditBox',
                'events': {
                    'click': function(form, el){
                        (new Event(form,el)).stop();
                        if (big == 0) {
                            // change to big
                            var neww = $('main').getStyle('width').toInt();
                            input.setStyles({
                            'position': 'absolute',
                            'display': 'block',
                            'left': '0px',
                            'width': neww +"px",
                            'overflow': 'visible',
                            'z-index': '5000'
                            });
                            big = 1;
                            return 0;
                        }
                        else if (big == 1) {
                            //change to normal
                            input.setStyles(oldstyles);
                            big = 0;
                            return 0;
                        }
                        return 0; // will never get here
                    }
                }}).injectInside(divholder);
            
            
            /*new Element('a', {
            'href' : '#',
            'id': 'helplink',
            'style': 'margin:0;float:left;display:inline;padding-left:20px;width:80px;background:url(/images/icons/lightbulb.png) no-repeat 0% 0%;',
            'events': {
                'click': function(link) {
                    (new Event(link)).stop();
                    if ($('helpbox') && $('helpbox').getStyle('display') != 'none') {
                        $('helplink').setHTML('Show Help');
                        $('helpbox').setStyle('display', 'none');
                    }
                    else if ( $('helpbox') && $('helpbox').getStyle('display') == 'none') {
                        $('helpbox').setStyle('display', 'block');
                        $('helplink').setHTML('Hide Help');
                    }
                    else {
                        $('helplink').setHTML('Hide Help');
                        new Element('div', {
                            'id' : 'helpbox',
                            'style': 'position: relative;width:540px;height:auto;'
                        }).setHTML('<style type="text/css">table.help { background-color:#F8F2D1;width:100%; border:1px solid #E0CA7C}table.help th {font-size:14px;font-style:italic;color:#888; background-color:#F7EDBD }table.help td { padding: 10px;background: #fff; }</style><table class="help"><tr><th>You Type:</th><th>You See:</th></tr>  <tr><td>===Sub Title===</td><td><div class="subtitle">Sub Title</div></td></tr><tr><td>***Mini Title***</td><td><div class="minititle">Mini Title</div></td></tr><tr><td>[Click here to visit the About Us Page](/About_Us)</td><td><a href="/About_Us">Click here to visit the About Page</a></td></tr><tr><td>&lt;b&gt;This is important&lt/b&gt;</td><td><b>This is important</b></td></tr><tr><td>&lt;i&gt;"Difficulties mastered are opportunities won." - Winston Churchill&lt;/i&gt;</td><td><i>"Difficulties mastered are opportunities won." - Winston Churchill</i></td></tr><tr><td>He\'s &lt;u&gt;NOT&lt;/u&gt; the Messiah, He\'s a &lt;u&gt;very&lt;/u&gt; naughty boy!</td><td>He\'s <u>NOT</u> the Messiah, He\'s a <u>very</u> naughty boy!</td></tr></table>').injectAfter(divholder);
                    }
                }
            }
        }).setText('Show Help').injectInside(divholder);*/
            
            new Element('input', {
                'type': 'button',
                'value': '-',
                'class': 'submitbutton',
                'style': 'margin:0;float:right;margin-right:4px;padding: 0',
                'title': 'Decrease EditBox Size',
                'events': {
                    'click': function(form, el){
                        (new Event(form,el)).stop();
                        var h = input.getStyle('height').toInt();
                        var nh = h - 60;
                        if (nh <17) { nh = 17; }
                        var myH = new Fx.Style(input, 'height', {duration: 250}).start(h, nh);
                    }
                }
            }).injectInside(divholder);
            
            new Element('input', {
                'type': 'button',
                'value': '+',
                'class': 'submitbutton',
                'style': 'padding: 0;margin:0;float:right;',
                'title': 'Increase EditBox Size',
                'events': {
                    'click': function(form, el){
                        (new Event(form,el)).stop();
                        var h = input.getStyle('height').toInt();
                        var nh = h + 60;
                        var myH = new Fx.Style(input, 'height', {duration: 250}).start(h, nh);
                    }
                }
            }).injectInside(divholder);

            // For every param, add a hidden input
            for (param in this.params) {
                new Element('input', {
                    'type': 'hidden',
                    'name': param,
                    'value': this.params[param]
                }).injectInside(form);
            }

            //
            new Element('input', {
                'type': 'hidden',
                'name': 'id',
                'value': id
            }).injectInside(form);
            
            // inject our target
            new Element('input', {'type': 'hidden','name': 'target','value': target }).injectInside(form);

            // Add the form after the target element
            form.injectAfter(el);

            // Create a textarea or input for user
            var input = new Element('textarea', {
                'name': 'content',
                'style': 'height: '+height,
                'class': 'editbox',
                'id' : 'textbox-'+id
            }).appendText('Getting content from server...').injectInside(form);
            
            this.ajaxGet(id,input,target);
            
            oldstyles = input.getStyles('position','display','width','overflow','z-index');

            // Focus on the input
            //input.focus();
	},
        
        /**
         * Ajax Get
         * @param id to pass to php script
         * @param element to update with content
         */
        ajaxGet: function(id, el, target) {
            $$('form input.submitbutton').each(function(i, c) { i.setProperty('disabled', 'true'); });
            el.setProperty('disabled', 'true');
            if (!el) { el = $('textbox'); }
            url = "?getcontent=1&id="+id+"&target="+target;
            var rq = new Ajax("/update.php"+url, {
                method: 'get',
                onComplete:function(resp){
                    var content = resp;
                    el.setText(resp);
                    $$('form input.submitbutton').each(function(i, c) { i.setProperty('disabled', ''); });
                    el.setProperty('disabled', '');
                }
            }).request();
        },

        /**
         * Hide form
         * @param element form Your target form.
         * @param element el Your target element.
         */
	hideForm: function(form, el) {
		form.addClass(this.options.hiddenCl);
		el.removeClass(this.options.hiddenCl);
	}

        });
        new eip( $$('#middlerightholder .textholder'), '/update.php', {update: '1', updatecontent: '1'});
    },
    
    createForms : function() {
        var ajaxForms = $$('.ajaxform');
	ajaxForms.each(function(forms, i){
            if (!window.ie6) {
                new FormValidator(forms, {onFormValidate: function(isPassed, form) {
                //alert("isPassed:"+isPassed+" form:"+form);
                if (isPassed == true) {
                    var sz = form.getProperty('action');
                    //var cFH = form.getParent().empty().addClass('ajax-loading');
                    var cFH = form.getParent().addClass('ajax-loading');
                    //var cFH = form.getParent();
                    //alert(cFH);
                    new Ajax(sz,{
                        postBody: form,
                        update: cFH,
                        onComplete: function(resp) {
                            cFH.removeClass('ajax-loading');
                            //$('cFH').setHTML(resp);
                        }
                    }).request();
                }
                //new Event(isPassed).stop();
            }});
            }
            else {
                /*forms.addEvent('submit', function(e) {
                    var options = {};
                    forms.getFormElements().each(function(el){
                        var name = el.name;
                        var value = el.getValue();
                        options[name] = value;
                    });
                    var sz = forms.getProperty('action');
                    var cFH = forms.getParent().empty().addClass('ajax-loading');
                    //alert(options);
                    //forms.send(options);
                    cFH.removeClass('ajax-loading');
                    // get id
                    //var formid = forms.getProperty('id');
                    /*new Ajax(sz,{
                        postBody: forms,
                        update: cFH,
                        onComplete: function(resp) {
                            cFH.removeClass('ajax-loading');
                        }
                    }).request();*/
                    
                //});
            }
        });
    },
    
    fontChanger: function() {
        /* fx morph */
        Fx.Morph = Fx.Styles.extend({
            start: function(className){
                var to = {};
                $each(document.styleSheets, function(style){
                    var rules = style.rules || style.cssRules;
                    $each(rules, function(rule){
                        if (!rule.selectorText.test('\.' + className + '$')) return;
                        Fx.CSS.Styles.each(function(style){
                                if (!rule.style || !rule.style[style]) return;
                                var ruleStyle = rule.style[style];
                                to[style] = (style.test(/color/i) && ruleStyle.test(/^rgb/)) ? ruleStyle.rgbToHex() : ruleStyle;
                        });
                    });
                });
                return this.parent(to);
            }
    });
    Fx.CSS.Styles = ["backgroundColor", "backgroundPosition", "color", "width", "height", "left", "top", "bottom", "right", "fontSize", "letterSpacing", "lineHeight", "textIndent", "opacity"];
    Fx.CSS.Styles.extend(Element.Styles.padding);
    Fx.CSS.Styles.extend(Element.Styles.margin);
    Element.Styles.border.each(function(border){
        ['Width', 'Color'].each(function(property){
            Fx.CSS.Styles.push(border + property);
        });
    });
    var myMorph = new Fx.Morph('middleright', {wait: false});
    var fontsize = new Hash.Cookie('fs',{duration: 60});
    fs = fontsize.get('class');
    if (fs == 'fontbiggest') { myMorph.start('fontbiggestclass'); $('fontbiggest').addClass('sel'); }
    else if (fs == 'fontnormal') { myMorph.start('fontnormalclass');$('fontnormal').addClass('sel');}
    else if(fs == 'fontsmallest') { myMorph.start('fontsmallestclass');$('fontsmallest').addClass('sel');}
    else { $('fontsmallest').addClass('sel'); }
    if ($('fontbiggest') && $('fontnormal') && $('fontsmallest')) {
        $('fontbiggest').addEvent('click', function(e){
                fontsize.set('class','fontbiggest');
                fontsize.save();
                myMorph.start('fontbiggestclass');
                $('fontbiggest').addClass('sel');$('fontnormal').removeClass('sel');$('fontsmallest').removeClass('sel');
                new Event(e).stop();
        });
        $('fontnormal').addEvent('click', function(e){
                fontsize.set('class','fontnormal');
                fontsize.save();
                myMorph.start('fontnormalclass');
                $('fontnormal').addClass('sel');$('fontbiggest').removeClass('sel');$('fontsmallest').removeClass('sel');
                new Event(e).stop();
        }); 
        $('fontsmallest').addEvent('click', function(e){
                fontsize.set('class','fontsmallest');
                fontsize.save();
                myMorph.start('fontsmallestclass');
                $('fontsmallest').addClass('sel');$('fontnormal').removeClass('sel');$('fontbiggest').removeClass('sel');
                new Event(e).stop();
        });
    }
    },
    
    fixElement : function() {
        simulateFixed = new Class({
            options : {
                    duration:500,
                    transition: Fx.Transitions.Cubic.easeInOut
            },
            initialize : function(id,options){
                    this.fixed = $(id);
                    this.options = options ? options : this.options;
     
                    this.offset = this.fixed.getStyle('top').toInt();
                    //this.offset = this.fixed.getPosition().y;
                    this.fx = new Fx.Style(this.fixed, 'top', this.options);
     
                    window.addEvent('scroll',this.scrolled.bind(this));
            },
            scrolled : function(){
                    this.fx.stop();
                    // first try to get the height of the id we are scrolling
                    var idheight = this.fixed.getStyle('height').toInt();
                    var curr = this.offset + idheight + window.getScrollTop();
                    var max = (document.height || document.body.offsetHeight);
                    if (curr <= max)
                        this.fx.start(this.offset + window.getScrollTop());
            }
        });
	if ($('drag-palette')) { new simulateFixed('drag-palette'); }
        else if ($('drag-technical')) { new simulateFixed('drag-technical'); }
    },
    
    dragger : function() {
        if ($('drag-palette')) {
        var drop = $('drag-palette');
        var dropFx = drop.effect('background-color', {wait: false}); // wait is needed so that to toggle the effect,
 
        $$('.item').each(function(item){
            item.addEvent('mousedown', function(e) {
                e = new Event(e).stop();
        
                var clone = this.clone()
                        .setStyles(this.getCoordinates()) // this returns an object with left/top/bottom/right, so its perfect
                        .setStyles({'opacity': 0.7, 'position': 'absolute'})
                        .addEvent('emptydrop', function() {
                                this.remove();
                                drop.removeEvents();
                        }).inject(document.body);
        
                drop.addEvents({
                        'drop': function() {
                                drop.removeEvents();
                                clone.remove();
                                var hashCookie = new Hash.Cookie('dragCookie', {duration:99999,path:'/'});
                                var id = item.getProperty('id');
                                var url = item.getStyle('background-image');
                                hashCookie.set(id, url);
                                item.clone().inject(drop).setStyle('display','none');
                                dropFx.start('7389AE').chain(dropFx.start.pass('ffffff', dropFx));
                        },
                        'over': function() {
                                dropFx.start('98B5C1');
                        },
                        'leave': function() {
                                dropFx.start('ffffff');
                        }
                });
        
                var drag = clone.makeDraggable({
                        droppables: [drop]
                }); // this returns the dragged element
        
                drag.start(e); // start the event manual
            });
        });
        }
    },
    
    getHash : function() {
        if ($('myHash')) {
            myh = $('myHash');
            var div = new Element('div').addClass('item');
            var span = new Element('span');
            var hashCookie = new Hash.Cookie('dragCookie', {duration:99999});
            hashCookie.each(function(value,key) {
                //inj.clone().setHTML("key: "+key+" value: "+value).injectInside(myh);
                //var dc = div.clone().setStyle('id', key).setStyle('background', value).injectInside(myh);
                var dc = new Element('div',{id: key}).addClass('item1').setStyle('background', value + ' no-repeat').injectInside($('middleright'));
                new Element('span').setHTML(key).injectInside(dc);
                //var sc = span.clone().setHTML(key).injectInside(dc);
                //var sc = span.clone().setHTML("key: "+key+" value: "+value).injectInside($('middleright'));
                //dc.injectTop(myh);
            });
        }
    },
    
    flashPage : function() {
        var delay =0;
        $$('.f').each(function(link,index) {
            if (index == 0) { index = 1; }
            delay += (250 - index * 20);
            link.setStyle('opacity', '0');
            var myeffect = new Fx.Style(link, 'opacity', {duration:750});
            myeffect.start.delay(delay, myeffect, [0,1]);
        });
    },
    
    externalLinks : function() {
        $$('a.external').each(function(link) {
            link.target = '_blank';
        });
    },
    
    toolTips : function() {
        var myTips = new Tips($$('.toolTip'), {
            //offsets: {'x': 75, 'y': 0}
        });
    },
    
    bgChanger : function() {
        if ($('bg-1') && $('bg-2')) {
            
            var bgCookie = new Hash.Cookie('bg',{duration: 30, path: '/'});
            var cBg = bgCookie.get('num');
            var safeUrl;
            if (cBg == 1 || cBg == 2 || cBg == 3 || cBg == 4) {
                $("background").setStyle("background-image", "url(/images/background"+cBg+".png)");
                $('bg-'+cBg).setStyle('border', '1px solid #999');
            } else { }
            
            $('bg-1').addEvent('click', function(e){
                new Event(e).stop();
                bgCookie.set('num', '1');
                bgCookie.save();
                $("background").setStyle("background-image", "url(/images/background1.png)");
                $('bg-1').setStyle('border', '1px solid #999'); $('bg-2').setStyle('border', 'none');$('bg-3').setStyle('border', 'none');$('bg-4').setStyle('border', 'none');
                var slider2 = new Fx.Style('main', 'opacity', {duration: 500});
                var slider = new Fx.Style('main', 'opacity', {duration: 500}).addEvent('onComplete', function() {
                    slider2.start.delay(500, slider2, [0,1]);
                }).start(1,0);
            });
            
            $('bg-2').addEvent('click', function(e){
                new Event(e).stop();
                $("background").setStyle("background-image", "url(/images/background2.png)");
                $('bg-2').setStyle('border', '1px solid #999'); $('bg-1').setStyle('border', 'none');$('bg-3').setStyle('border', 'none');$('bg-4').setStyle('border', 'none');
                bgCookie.set('num','2');
                bgCookie.save();
                var slider2 = new Fx.Style('main', 'opacity', {duration: 500});
                var slider = new Fx.Style('main', 'opacity', {duration: 500}).addEvent('onComplete', function() {
                    slider2.start.delay(500, slider2, [0,1]);
                }).start(1,0);
            });
            $('bg-3').addEvent('click', function(e){
                new Event(e).stop();
                $("background").setStyle("background-image", "url(/images/background3.png)");
                $('bg-3').setStyle('border', '1px solid #999'); $('bg-1').setStyle('border', 'none');$('bg-2').setStyle('border', 'none');$('bg-4').setStyle('border', 'none');
                bgCookie.set('num','3');
                bgCookie.save();
                var slider2 = new Fx.Style('main', 'opacity', {duration: 500});
                var slider = new Fx.Style('main', 'opacity', {duration: 500}).addEvent('onComplete', function() {
                    slider2.start.delay(500, slider2, [0,1]);
                }).start(1,0);
            });
            $('bg-4').addEvent('click', function(e){
                new Event(e).stop();
                $("background").setStyle("background-image", "url(/images/background4.png)");
                $('bg-4').setStyle('border', '1px solid #999'); $('bg-1').setStyle('border', 'none');$('bg-3').setStyle('border', 'none');$('bg-2').setStyle('border', 'none');
                bgCookie.set('num','4');
                bgCookie.save();
                var slider2 = new Fx.Style('main', 'opacity', {duration: 500});
                var slider = new Fx.Style('main', 'opacity', {duration: 500}).addEvent('onComplete', function() {
                    slider2.start.delay(500, slider2, [0,1]);
                }).start(1,0);
            });
        }
    },
    
    pageConf : function() {
        if ($chk($('pageConf'))) {
        $('pageConf').addEvent('click', function(e) {
            // get id
            var tid = $('pageConf').getProperty('class');
            var id = tid.substring(2);
            
            var myDiv = new Element('div', {
                'name': 'content',
                'id' : 'pageConfig',
                'style': 'margin-left:250px'
            }).injectBefore($('header'));
            
            var form = new Element('form', {
                'id': 'form_config',
                'method' : 'post',
                'action': '/update.php'
            });
            
            el = myDiv;
            target = 'headline';

            // Store new form in the element
            el.form = form;
            
            // Need this to pass to the buttons
            var obj = this;
            
            new Element('label', {
                'for' : 'pagetitleage'
            }).appendText('Page Title:').injectInside(form);
            
            // Create a textarea or input for user
            var input1 = new Element('textarea', {
                'name': 'title',
                'style': 'height: 15px;width: 750px;',
                'id' : 'pagetitleage'
            }).appendText('Getting content from server...').injectInside(form);
            
            new Element('label', {
                'for' : 'headline'
            }).appendText('Page Description:').injectInside(form);
            
            // Create a textarea or input for user
            var input = new Element('textarea', {
                'name': 'content',
                'style': 'height: 15px;width: 750px;',
                'id' : 'headline'
            }).appendText('Getting content from server...').injectInside(form);
            
            new Element('label', {
                'for' : 'keywords'
            }).appendText('Page Keywords:').injectInside(form);
            
            // Create a textarea or input for user
            var input2 = new Element('textarea', {
                'name': 'keywords',
                'style': 'height: 15px;width: 750px;',
                'id' : 'keywords'
            }).appendText('Getting content from server...').injectInside(form);
            
            new Element('label', {
                'for' : 'weight'
            }).appendText('Page Weight:').injectInside(form);
            
            // Create a textarea or input for user
            var input3 = new Element('textarea', {
                'name': 'weight',
                'style': 'height: 15px;width: 750px;',
                'id' : 'weight'
            }).appendText('Getting content from server...').injectInside(form);
            
            
            // Add a submit button
            new Element('input', {
                'type': 'submit',
                'value': 'save',
                'class': 'submitbutton',
                'style': 'font-weight: bold;margin-top:-20px;float:right',
                'events': {
                    'click': function(evt){
                        (new Event(evt)).stop();
                        form.send({update: el});
                        //setTimeout(function(){$('settings').remove();},4000);
                    }
                }
            }).injectInside(form);
            
            
            new Element('input', {
                'type': 'hidden',
                'name': 'id',
                'value': id
            }).injectInside(form);
            new Element('input', { 'type': 'hidden', 'name': 'update', 'value': 1}).injectInside(form);
            new Element('input', { 'type': 'hidden', 'name': 'updatecontent', 'value': 1 }).injectInside(form);
            
            // inject our target
            new Element('input', {'type': 'hidden','name': 'target','value': target }).injectInside(form);

            // Add the form after the target element
            form.injectInside(el);
            
            // now populate our ajax request
            url = "?getcontent=1&id="+id+"&target="+target;
            var rq = new Ajax("/update.php"+url, {
                method: 'get',
                onComplete:function(resp){
                    var content = resp;
                    input.setText(resp);
                    $$('form input.submitbutton').each(function(i, c) { i.setProperty('disabled', ''); });
                    el.setProperty('disabled', '');
                }
            }).request();
            
            // now populate our ajax request
            url = "?getcontent=1&id="+id+"&target=title";
            var rq = new Ajax("/update.php"+url, {
                method: 'get',
                onComplete:function(resp){
                    var content = resp;
                    input1.setText(resp);
                    $$('form input.submitbutton').each(function(i, c) { i.setProperty('disabled', ''); });
                    el.setProperty('disabled', '');
                }
            }).request();
            
            url = "?getcontent=1&id="+id+"&target=keywords";
            var rq = new Ajax("/update.php"+url, {
                method: 'get',
                onComplete:function(resp){
                    var content = resp;
                    input2.setText(resp);
                    $$('form input.submitbutton').each(function(i, c) { i.setProperty('disabled', ''); });
                    el.setProperty('disabled', '');
                }
            }).request();
            
            url = "?getcontent=1&id="+id+"&target=weight";
            var rq = new Ajax("/update.php"+url, {
                method: 'get',
                onComplete:function(resp){
                    var content = resp;
                    input3.setText(resp);
                    $$('form input.submitbutton').each(function(i, c) { i.setProperty('disabled', ''); });
                    el.setProperty('disabled', '');
                }
            }).request();
        });
        }
        
    },

    init : function() {
        this.morph();
        this.doEdit();
        this.createForms();
        this.fontChanger();
        this.fixElement();
        this.dragger();
        if ($('flashpage')) this.flashPage();
        this.getHash();
        this.externalLinks();
        this.toolTips();
        this.bgChanger();
        this.pageConf();
    }
};


window.onDomReady(domus.init.bind(domus));
