mirror of
https://github.com/DoctorMcKay/node-steamcommunity.git
synced 2025-03-04 15:40:20 +08:00
Added scheduleEvent method
This commit is contained in:
parent
b1e31b32fe
commit
b0b8dbbabf
@ -115,3 +115,62 @@ CSteamGroup.prototype.postAnnouncement = function(headline, content, callback) {
|
|||||||
callback(null);
|
callback(null);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
CSteamGroup.prototype.scheduleEvent = function(name, type, description, time, server, callback) {
|
||||||
|
// Event types: ChatEvent - Chat, OtherEvent - A lil somethin somethin, PartyEvent - Party!, MeetingEvent - Important meeting, SpecialCauseEvent - Special cause (charity ball?), MusicAndArtsEvent - Music or Art type thing, SportsEvent - Sporting endeavor, TripEvent - Out of town excursion
|
||||||
|
// Passing a number for type will make it a game event for that appid
|
||||||
|
|
||||||
|
if(typeof server === 'function') {
|
||||||
|
callback = server;
|
||||||
|
server = {"ip": "", "password": ""};
|
||||||
|
} else if(typeof server === 'string') {
|
||||||
|
server = {"ip": server, "password": ""};
|
||||||
|
} else {
|
||||||
|
server = {"ip": "", "password": ""};
|
||||||
|
}
|
||||||
|
|
||||||
|
var form = {
|
||||||
|
"sessionid": this._community.getSessionID(),
|
||||||
|
"action": "newEvent",
|
||||||
|
"tzOffset": new Date().getTimezoneOffset() * -60,
|
||||||
|
"name": name,
|
||||||
|
"type": (typeof type === 'number' || !isNaN(parseInt(type, 10)) ? "GameEvent" : type),
|
||||||
|
"appID": (typeof type === 'number' || !isNaN(parseInt(type, 10)) ? type : ''),
|
||||||
|
"serverIP": server.ip,
|
||||||
|
"serverPassword": server.password,
|
||||||
|
"notes": description,
|
||||||
|
"eventQuickTime": "now"
|
||||||
|
};
|
||||||
|
|
||||||
|
if(time === null) {
|
||||||
|
form.startDate = 'MM/DD/YY';
|
||||||
|
form.startHour = '12';
|
||||||
|
form.startMinute = '00';
|
||||||
|
form.startAMPM = 'PM';
|
||||||
|
form.timeChoice = 'quick';
|
||||||
|
} else {
|
||||||
|
form.startDate = (time.getMonth() + 1 < 10 ? '0' : '') + (time.getMonth() + 1) + '/' + (time.getDate() < 10 ? '0' : '') + time.getDate() + '/' + time.getFullYear().toString().substring(2);
|
||||||
|
form.startHour = (time.getHours() === 0 ? '12' : (time.getHours() > 12 ? time.getHours() - 12 : time.getHours()));
|
||||||
|
form.startMinute = (time.getMinutes() < 10 ? '0' : '') + time.getMinutes();
|
||||||
|
form.startAMPM = (time.getHours() <= 12 ? 'AM' : 'PM');
|
||||||
|
form.timeChoice = 'specific';
|
||||||
|
}
|
||||||
|
|
||||||
|
var self = this;
|
||||||
|
this._community._request.post("https://steamcommunity.com/gid/" + this.steamID.toString() + "/eventEdit", {"form": form}, function(err, response, body) {
|
||||||
|
if(!callback) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(err || response.statusCode >= 400) {
|
||||||
|
callback(err || "HTTP error " + response.statusCode);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(self._community._checkCommunityError(body, callback)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
callback(null);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user