mypackage_wrt/builds.js
author nithyar
Wed, 12 May 2010 17:17:10 +0100
changeset 52 3f1ce447f91e
parent 44 48bcd0bbc1ab
permissions -rwxr-xr-x
Updated S^4 Key Feature dates
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
42
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     1
var BuildpageAjax = null;
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     2
var startbuild = "<!-- production Builds  -->";
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     3
var endbuild = "<!--START of footer-->";
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     4
var buildtitle = null;
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     5
var builddescription = null;
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     6
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     7
function buildview (aParent) {
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     8
	
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
     9
	this.previousView = aParent;
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    10
	this.setupSoftKeys();
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    11
		
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    12
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    13
	buildtitle = new Label ("title_build","Latest Build Status:",null);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    14
	this.addControl (buildtitle);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    15
	builddescription = new Label ("description_build");
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    16
	this.addControl (builddescription);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    17
	this.show();
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    18
	this.update(true);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    19
}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    20
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    21
buildview.prototype = new ListView("buildview","<img src=logo.png>");
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    22
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    23
buildview.prototype.update = function(myflag){
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    24
	if (myflag) {
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    25
		var mybuf = "<div class=\"FeedItemLink\">";
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    26
		mybuf += "<a href=\"JavaScript:void(0)\" onclick=\"openURL('" + buildresultsUrl + Packageid + "'); return false;\">";
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    27
		mybuf += "(Click here for more details...)";
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    28
		mybuf += "</a>";
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    29
		mybuf += "</div>";
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    30
		if(!Packageid){return;}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    31
		buildtitle.setText(Packageid + " " + mybuf);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    32
		builddescription.setText("");
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    33
		this.loadbuild(buildresultsUrl + Packageid);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    34
	}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    35
	
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    36
}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    37
buildview.prototype.loadbuild =function (url) {
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    38
	uiManager.showNotification(-1, "wait", "Please  wait...", -1);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    39
	BuildpageAjax = new Ajax();
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    40
	BuildpageAjax.onreadystatechange = this.muchbuild;
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    41
	BuildpageAjax.open('GET', nocache(url), true);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    42
	BuildpageAjax.send(null);	
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    43
}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    44
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    45
buildview.prototype.setlabels = function(aTitle, aDescription){
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    46
	this.title.setText(aTitle);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    47
	this.description.setText(aDescription);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    48
	
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    49
}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    50
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    51
buildview.prototype.muchbuild =function () {
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    52
    if (BuildpageAjax.readyState == 4) {
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    53
		
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    54
		var content = BuildpageAjax.responseText;
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    55
		var ind = content.indexOf(startbuild);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    56
		if (ind == -1) {
44
48bcd0bbc1ab My package wiki v0.3 - http://developer.symbian.org/wiki/index.php/My_Package_Widget#Current_version
victorp@symbian.org
parents: 42
diff changeset
    57
			uiManager.showNotification(3000, "Warning", "Build Results - Package Not Found");
48bcd0bbc1ab My package wiki v0.3 - http://developer.symbian.org/wiki/index.php/My_Package_Widget#Current_version
victorp@symbian.org
parents: 42
diff changeset
    58
			debuglog.debug("Build package page with wrong format");
42
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    59
			return;
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    60
		}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    61
	
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    62
		ind += startbuild.length;
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    63
		var ind2 = content.indexOf(endbuild);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    64
		content = content.substring(ind, ind2-1);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    65
		
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    66
		ind2 = content.indexOf("<h4");
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    67
				var ind3 = content.indexOf("</h4>",ind2);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    68
		while (ind2!= -1){
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    69
			builddescription.setText(builddescription.getText() + content.substring(ind2, ind3)+ ":");
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    70
			//find the first RAG
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    71
			ind2=content.indexOf("<tr>",ind3);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    72
			ind3=content.indexOf("<tr>",ind2);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    73
			ind2=content.indexOf("<td>",ind3);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    74
			ind3=content.indexOf("<td>",ind2+4);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    75
			ind2=content.indexOf("<td>",ind3+4);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    76
			ind3=content.indexOf("<td>",ind2+4);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    77
			ind2=content.indexOf("</td>",ind3+4);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    78
			builddescription.setText(builddescription.getText() + content.substring(ind3+4, ind2));
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    79
			
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    80
			ind2 = content.indexOf("<h4",ind3);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    81
			ind3 = content.indexOf("</h4>",ind2);
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    82
		}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    83
				
44
48bcd0bbc1ab My package wiki v0.3 - http://developer.symbian.org/wiki/index.php/My_Package_Widget#Current_version
victorp@symbian.org
parents: 42
diff changeset
    84
		//uiManager.hideNotification();
42
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    85
		
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    86
	}
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    87
	
20be4dd42b12 My package widget code
victorp@symbian.org
parents:
diff changeset
    88
}