function usage() {
    this.help = help;
    this.authKey = "";
    this.authHash = "";
    this.getLastPowerReading = getLastPowerReading;
}

function help() {
    alert("This will display help. ToDo");
}

function getLastPowerReading() {
    var authDoc = makeAuthDoc(this.authKey, this.authHash);
    var params = new postParam();
    params.addParam("action", "getLastPowerReading");

    var postParams = new postParam();
    postParams.addParam("auth", authDoc);
    postParams.addParam("doc", params.getListAsDoc());
    var xml = talkPost_sync("http://www.powometer.co.uk/PMOnline/xmlHandler.php", postParams);
    if (xml == null)
        return null;
        //return { 'logTime': null, 'power': null };

    var unit = xml.getElementsByTagName("unit");

    if (unit.length != 1) {
        return null;
        return { 'logTime': null, 'power': null };
    }
    var oPower = unit[0].getAttribute("power")
    var oLogTime = unit[0].getAttribute("logTime");
    
    var oMax = unit[0].getAttribute("maxPower")
    var oMin = unit[0].getAttribute("minPower");
    
    var logTime = new Date(getDateFromFormat(oLogTime, "yyyy-MM-dd HH:mm:ss"));
    var power = parseFloat(oPower);
    var maxPower = parseFloat(oMax);
    var minPower = parseFloat(oMin);

    return { 'logTime': logTime, 'power': power, 'maxPower' : maxPower, 'minPower' : minPower}
    
}

function getGlobalPowerWatts() {
    var params = new postParam()
    params.addParam("function", 'getWattsByScreenName');

    var xml = talkPost_sync("http://www.powometer.co.uk/PMOnline/GetGlobalPower.php", params)
    if (xml == null)
        return null;

    var usage = xml.getElementsByTagName("usage");
    var limits = xml.getElementsByTagName("limits");
    var users = new Array();
    var minPower = 0;
    var maxPower = 1000;
    
    if (limits.length == 1) {
        minPower = parseInt(limits[0].getAttribute("minPower"));
        maxPower = parseInt(limits[0].getAttribute("maxPower"));
    }
    
//    if (usage.length != 1 || limits.length != 1) {
//        return { 'minPower': minPower, 'maxPower': maxPower, 'usage': users };
//    }
//    
    for (var i = 0; i <= usage.length - 1; i++) {
        users[users.length] = { 'user': usage[i].getAttribute("screenName"), 'usage': parseFloat(usage[i].getAttribute("power")) };
    }
    
    return { 'minPower': minPower, 'maxPower': maxPower, 'usage': users };
}

function getGlobalUnitsLast60() {
    var params = new postParam()
    params.addParam("function", 'getUnitsUsedInLast60');

    var xml = talkPost_sync("http://www.powometer.co.uk/PMOnline/GetGlobalPower.php", params)
    if (xml == null)
        return null;

    var usage = xml.getElementsByTagName("response");

    if (usage.length != 1) {
        return null;
    }
    var minPower = parseInt(usage[0].getAttribute("minPower"));
    var maxPower = parseInt(usage[0].getAttribute("maxPower"));
    var units = parseFloat(usage[0].getAttribute("power"));

    return { 'minPower': minPower, 'maxPower': maxPower, 'units': units};
}


