Professional Documents
Culture Documents
PUG Signup by Proxen1705
PUG Signup by Proxen1705
PUG Signup by Proxen1705
by Proxen
disc: robertpalm#0401
Contents
1 The Architecture 1
1.1 The Google Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 The Google Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 respbwl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 BWLroster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
A Multi-select script 14
A.1 multi-select.gs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Disclaimer
This PUG sign up is made by Proxen with visuals for roster helped by Mysticas. The Roster
sheet is sensitive to user errors and if you do not know what you are doing when editing
reserves or roster DON’T. More than likely you can mess up the coding if editing in the
wrong place which is why the sheets are mostly locked for everyone and all responses are
handled in Forms as that is impossible to mess up.
PUG Sign Up Proxen
1 The Architecture
1.1 The Google Form
The first part of the sign up is the Google Form, here and only here is where the Pugs enter
their response for each specific raid. The same form is used every week and it is not limited
to any amount of responses per person. This Form is connected to the response sheet called
resp.
1
PUG Sign Up Proxen
1.2.1 respbwl
This is where all responses are automatically added and the information from here is sub-
tracted and added through Google API with normal Excel formulas and SQL coding in the
Roster Sheet BWLroster. Here classes and attendance gets automatically colour-coordinated
and multiple responses of the same reserve or same character name will be marked with a
specific colour, more on how to change reservation or remove based on attendance later.
2
PUG Sign Up Proxen
1.2.2 BWLroster
The roster page is the main page where all the roster, reserves and assignments should be
viewed. This is thusly the page and this page only that the PUGs and master-looter should
view. The SQL coding takes all responses in respbwl, checks first if they are marked ”Yes”,
then what class they are, and followingly what spec. It then positions the player in the
appropriate box on the roster. The first 40 ”Yes” sign ups will appear normally while the
41+ will be benched automatically and appear yellow and with cursive red text.
3
PUG Sign Up Proxen
As we can see here in Figure 5, the player Proxen first signed up as ”Yes” but now wants
to change their attendance to ”No”. Both names gets marked red to indicate a duplicate in
the response. The easiest way to remove the players attendance is either to right click the
number of the row and Remove row or change the ”Yes” in the first response to a ”No”.
4
PUG Sign Up Proxen
5
PUG Sign Up Proxen
6
PUG Sign Up Proxen
7
PUG Sign Up Proxen
8
PUG Sign Up Proxen
The same thing needs to be done for Column ”U” for items to get marked yellow. Change
this from ”U3:xxx” to ”U2:xxx”, otherwise the first appearance of the item will not appear
yellow as shown in Figure 11
9
PUG Sign Up Proxen
10
PUG Sign Up Proxen
11
PUG Sign Up Proxen
12
PUG Sign Up Proxen
13
PUG Sign Up Proxen
A Multi-select script
14
PUG Sign Up Proxen
A.1 multi-select.gs
function onOpen(e) {
SpreadsheetApp.getUi()
.createMenu(’Scripts’)
.addItem(’Multi-select for this cell...’, ’showDialog’)
.addToUi();
}
function showDialog() {
var html = HtmlService.createTemplateFromFile(’dialog’).evaluate();
SpreadsheetApp.getUi()
.showSidebar(html);
}
var valid = function(){
try{
return SpreadsheetApp.getActiveRange().getDataValidation().getCriteriaValues()[0].ge
}catch(e){
return null
}
}
function fillCell(e){
var s = [];
for(var i in e){
if(i.substr(0, 2) == ’ch’) s.push(e[i]);
}
if(s.length) SpreadsheetApp.getActiveRange().setValue(s.join(’, ’));
}
15