-/*
- * Contains Main class and supporting functions for topic ajax course layout
+/**
+ * Contains Main class and supporting functions for ajax course layout
*
* $Id$
*/
//hide content body until done loading (manipulation looks ugly elsewise)
-document.getElementById('content').style.display='none';
+document.getElementById('content').style.display = 'none';
+
//onload object for handling scripts on page load, this insurses they run in my order
function onload_class() {
this.debug = false;
}
+
onload_class.prototype.add = function(script) {
- if(this.debug)YAHOO.log("onload.add - adding "+script,"junk");
+ if(this.debug)YAHOO.log("onload.add - adding "+script, "junk");
this.scripts[this.scripts.length] = script;
}
-onload_class.prototype.load = function(){
+onload_class.prototype.load = function() {
var scriptcount = this.scripts.length;
- if(this.debug)YAHOO.log("onload.load - loading "+scriptcount+" scripts","info");
+ if(this.debug)YAHOO.log("onload.load - loading "+scriptcount+" scripts", "info");
for (i=0;i<scriptcount;i++) {
eval(this.scripts[i]);
}
}
+
var onload = new onload_class();
//main page object
-function main_class(){
+function main_class() {
this.portal = new php_portal_class();
this.blocks = new Array();
}
-main_class.prototype.process_blocks = function(){
-
- //remove unneeded icons (old school position icons and delete/hide although they will be readded)
- var rmIconClasses = ['icon up','icon down','icon right','icon left','icon delete','icon hide'];
- for (var c=0;c<rmIconClasses.length;c++) {
+main_class.prototype.process_blocks = function() {
+ //remove unneeded icons (old school position icons and delete/hide although they will be read)
+ var rmIconClasses = ['icon up', 'icon down', 'icon right', 'icon left', 'icon delete', 'icon hide'];
+ for (var c=0; c<rmIconClasses.length; c++) {
els = YAHOO.util.Dom.getElementsByClassName(rmIconClasses[c]);
- for (var x=0;x<els.length;x++) {
+ for (var x=0; x<els.length; x++) {
els[x].parentNode.removeChild(els[x]);
}
}
-
//process the block ids passed from php
var blockcount = this.portal.blocks.length;
- YAHOO.log("main.processBlocks - processing "+blockcount+" blocks","info");
+ YAHOO.log("main.processBlocks - processing "+blockcount+" blocks", "info");
+
for (i=0;i<blockcount;i++) {
- this.blocks[i] = new block_class(this.portal.blocks[i][1],"blocks");
+ this.blocks[i] = new block_class(this.portal.blocks[i][1], "blocks");
//put in correct side array also
if (this.portal.blocks[i][0] == 'l') {
//hide if called for
if (this.portal.blocks[i][2] == 1) {
- this.blocks[i].toggle_hide(null,null,true);
+ this.blocks[i].toggle_hide(null, null, true);
}
}
}
-main_class.prototype.process_document = function(){
-
+main_class.prototype.process_document = function() {
//process the document to get important containers0
- YAHOO.log("Processing Document","info");
+ YAHOO.log("Processing Document", "info");
+
//process columns for blocks
- this.leftcolumn = new column_class('left-column',"blocks",null,'l');
- this.rightcolumn = new column_class('right-column',"blocks",null,'r');
+ this.leftcolumn = new column_class('left-column', "blocks", null, 'l');
+ this.rightcolumn = new column_class('right-column', "blocks", null, 'r');
//process sections
-
var ct = 0;
while (document.getElementById('section-'+ct) != null) {
- this.sections[ct]=new section_class('section-'+ct,"sections",null,ct!=0?true:false);
+ this.sections[ct]=new section_class('section-'+ct, "sections", null, ct!=0?true:false);
this.sections[ct].addToGroup('resources');
ct++;
}
YAHOO.log("admin - "+this.adminBlock.className);
}
-main_class.prototype.mk_safe_for_transport = function(input){
- return input.replace(/&/i,'_.amp._');
+
+main_class.prototype.mk_safe_for_transport = function(input) {
+ return input.replace(/&/i, '_.amp._');
}
-main_class.prototype.get_block_index = function(el){
- //return block by id
+
+//return block by id
+main_class.prototype.get_block_index = function(el) {
var blockcount = this.blocks.length;
- for (i=0;i<blockcount;i++) {
+ for (i=0; i<blockcount; i++) {
if (this.blocks[i] == el) {
return i;
}
}
}
-main_class.prototype.get_section_index = function(el){
+
+main_class.prototype.get_section_index = function(el) {
var sectioncount = this.sections.length;
- for (i=0;i<sectioncount;i++) {
+ for (i=0; i<sectioncount; i++) {
if (this.sections[i] == el) {
return i;
}
}
-}
+}
-main_class.prototype.mk_button = function(tag,imgSrc,attributes,imgAttributes){
+
+main_class.prototype.mk_button = function(tag, imgSrc, attributes, imgAttributes) {
//create button and return object
var container = document.createElement(tag);
container.style.cursor = 'pointer';
var image = document.createElement('img');
- image.setAttribute('src',main.portal.strings['wwwroot']+imgSrc);
+ image.setAttribute('src', main.portal.strings['wwwroot']+imgSrc);
container.appendChild(image);
if (attributes != null) {
- for (var c=0;c<attributes.length;c++) {
- container.setAttribute(attributes[c][0],attributes[c][1]);
+ for (var c=0; c<attributes.length; c++) {
+ container.setAttribute(attributes[c][0], attributes[c][1]);
}
}
-
if (imgAttributes != null) {
- for (var c=0;c<attributes.length;c++) {
- image.setAttribute(imgAttributes[c][0],imgAttributes[c][1]);
+ for (var c=0; c<attributes.length; c++) {
+ image.setAttribute(imgAttributes[c][0], imgAttributes[c][1]);
}
}
-
return container;
}
-main_class.prototype.connect = function(method,urlStub,callback,body){
- if(this.debug)YAHOO.log("Making "+method+" connection to /course/rest.php?courseId="+main.portal.id+"&"+urlStub);
+main_class.prototype.connect = function(method, urlStub, callback, body) {
+ if(this.debug) {
+ YAHOO.log("Making "+method+" connection to /course/rest.php?courseId="+main.portal.id+"&"+urlStub);
+ }
if (callback == null) {
callback = {}
}
- return YAHOO.util.Connect.asyncRequest(method,this.portal.strings['wwwroot']+"/course/rest.php?courseId="+main.portal.id+"&"+urlStub,callback,body);
-}
+ return YAHOO.util.Connect.asyncRequest(method, this.portal.strings['wwwroot']+"/course/rest.php?courseId="+main.portal.id+"&"+urlStub, callback, body);
+}
+
-main_class.prototype.connectQueue_add = function(method,urlStub,callback,body) {
+main_class.prototype.connectQueue_add = function(method, urlStub, callback, body) {
var Qlength = main.connectQueue.length;
main.connectQueue[Qlength] = [];
main.connectQueue[Qlength]['method'] = method;
if (main.connectQueueConnection == null || !YAHOO.util.Connect.isCallInProgress(main.connectQueueConnection)) {
main.connectQueue_fireNext();
}
-}
+}
-main_class.prototype.connectQueue_fireNext= function(){
+
+main_class.prototype.connectQueue_fireNext = function() {
var head = main.connectQueueHead;
if (head >= main.connectQueue.length) {
return;
}
-
var callback = {
-success: function(){
- main.connectQueue_fireNext();
- }
+ success: function(){
+ main.connectQueue_fireNext();
+ }
}
-
- main.connectQueueConnection = main.connect(main.connectQueue[head]['method'],main.connectQueue[head]['urlStub'],callback,main.connectQueue[head]['body'])
-
+ main.connectQueueConnection = main.connect(main.connectQueue[head]['method'],
+ main.connectQueue[head]['urlStub'],
+ callback,
+ main.connectQueue[head]['body']);
main.connectQueueHead++;
-}
+}
-main_class.prototype.update_marker = function(newMarker){
+
+main_class.prototype.update_marker = function(newMarker) {
if (this.marker != null) {
this.marker.toggle_highlight();
}
this.marker = newMarker;
this.marker.toggle_highlight();
- this.connect('post','class=course&field=marker',null,'value='+this.marker.sectionId);
-}
+ this.connect('post', 'class=course&field=marker', null, 'value='+this.marker.sectionId);
+}
+
+
+main_class.prototype.getString = function(title,variable) {
+ if(this.portal.strings[title]) {
+ return this.portal.strings[title].replace(/_var_/, variable);
+ }
+}
-main_class.prototype.getString = function(title,variable){
- if(this.portal.strings[title])
- return this.portal.strings[title].replace(/_var_/,variable);
- }
var main = new main_class();
-function php_portal_class(){
- //portal to php data
+function php_portal_class() {
+ //portal to php data
this.id = null;
//array of id's of blocks set at end of page load by php
//strings
this.strings = [];
- YAHOO.log("instantiated php_portal_class","info");
+ YAHOO.log("Instantiated php_portal_class", "info");
}