Sample Sign Up Sheet With Time Slots
- Sample Sign Up Sheet With Time Slots Game
- Sample Sign Up Sheet With Time Slots Vegas World
- Sample Sign Up Sheet With Time Slots No Deposit
- Sample Sign Up Sheet With Time Slots Free Play
There have been many times when a client wanted to use SharePoint in order to allow employees to register for classes or other events. Typically the requirement is to have a certain number of spots before registration is automatically closed. This is how I created a registration system for a client.
Administrators can create new classes/events just by adding them to the calendar and specifying the number of spots available.
The user goes to a page with a list of available classes:
Upon clicking the class name, the user will see an event from a calendar like this:
- This daily planner is a daily appointment sheet that provides space for your timely task starting at eight am to eight thirty pm, today’s date notes area for your easy daily task organizing. Print this and gather your thought on what the important things you need to accomplish in a day.
- Personal financial statement is a form or document which reveals the detailing of a person’s or a business’s financial state in a particular period of time. All the details of the financial. Continue Reading.
- New depositing players only. Min deposit £10. Max bonus Sign Up Sheets With Time Slots Sample £50. Offer valid on first deposit. Offer only applies to new players. Games are given as follows: 20 games and Sign Up Sheets With Time Slots Sample 100% bonus upon Sign Up Sheets With Time Slots Sample first deposit.
For that you can use this conference sign up sheet that has been made just for that purpose. Also check out our time slot sign up sheet, if you feel you can make use of it. We also have some open house sign up sheet that you might want to use. Sign Up Sheet Template.
When they click on Register, the form will look like this:
Confirm Registration will automatically set the Seats Remaining to 1 less (24 in the example above).
NOTE: I am still working on a workflow that will allow a user to cancel their registration and add one back to the Seats Remaining as well as remove them from the Attendees list.
Once all seats have been taken, the Register link will be removed with the text Class is Full. If the class is closed for registration, it will state Closed for registration.
Create the Lists
- Calendar – Just use the out of the box Calendar app and add the following columns
- Required columns
- Seats – Number
- FilledSeats – Number – hidden column
- RemainingSeats – Calculated Column with Formula[code]=Seats-FilledSeats[/code]and data type returned Number
- SeatsIncrement – Calculated Column with Formula[code]=FilledSeats+1[/code]and data type returned Number
- Closed – Yes/No with default value of No
- StaticID – Number – Hidden column NOTE: This is a hack that allows the ID to be used in calculated columns. A workflow will set this field.
- Register – Calculated Column with Formula =IF(Closed=TRUE,”Closed for registration”,IF(RemainingSeats>0,”Register”,”Class is Full”)) and data type returned Single Line of Text
- Optional columns used for stylizing the display form as shown above:
- SeatsRemaining – Calculated Column with Formula
=CONCATENATE([Remaining Seats],” Seats Remaining”) and data type returned Single Line of Text NOTE: This will show how many seats remaining. If you choose not to hide the labels on the display form, then you can leave this column out. - CourseDescription – Multiple Lines of Text with Enhanced rich text. NOTE: In order to stylize the form I had to create a new Multiple lines of text column. The default Description column would not work with the JavaScript used to style the form. I hid the Description column.
- SeatsRemaining – Calculated Column with Formula
- Required columns
- Attendees List – Custom SharePoint list with the following column added
- Meeting – Lookup. Get information from the calendar list created earlier using the Title field
Create the workflows
- SetStaticClassID Workflow
- Open the site in SharePoint Designer
- Select the Calendar list created earlier and create a list workflow
- Add an action – “Set Field in Current Item”
- Click the “field” link and choose StaticID
- Click the Value link and the the fx button. Data source is current item and field from source is ID
- Go to the Settings page for the workflow. Set the Start Options for “Start Workflow automatically when an item is created”
- Save and Publish
The workflow will look like this:
- Registration Workflow – NOTE: This workflow does not add the user to the attendees list of the event. I will update this post later with the info on how to do this.
- Open the site in SharePoint Designer
- Select the Attendees List created earlier and create a list workflow
- Add an Action – “Update List Item”
- Click the “this list” link in the action
- Change the list to the Calendar created earlier
- Click the “Add” button
- Choose “Filled Seats”
- Click the fx button
- Data Source: Calendar
- Field from source: SeatIncrement
- Field: ID
- Value – click the fx button
- Data source: Current Item
- Filed from source: Meeting
- In the Find the list item section
- Field: ID
- Value – click the fx button
- Data Source: Current item
- Field from source: Meeting
- Go to the Settings page for the workflow. Set the Start Options for “Start Workflow automatically when an item is created”
- Save and Publish
Your workflow should look like this:
Sample Sign Up Sheet With Time Slots Game
Nintex Form
- Go to the Attendees list
- In the List ribbon, click Nintex Forms > Customize the Item Form
- Click on Form Variables
- Click Add
- Name: CurrentUser
- Type: Generic
- Connected to: Not connected
- Recalculate formula on view mode: Yes
- Recalculate formula on new mode: Yes
- Recalculate formula on new mode: Yes
- Formula:[code]userProfileLookup({Common:CurrentUser}, “Display name”)[/code]
- Save
- Click on Settings
- Expand Custom JavaScript and enter:
2 4 | varmeetingID=NWF$('#'+ddltxtMeetingID).val(); }); |
will store the meeting ID from the URL parameter used later on.
Sample Sign Up Sheet With Time Slots Vegas World
- Name: txtMeetingID
- Connected to MeetingID
- Default value source: Specify the default value
- Default value: fn-GetQueryString(MeetingID)
- Advanced
- Store Client ID in JavaScript variable: Yes
- Client ID JavaScript variable name: ddltxtMeetingID
- Add a List Lookup control – This is used in the form JavaScript and automatically chooses the correct class/meeting
- Name: Meeting
- ID connected to: Meeting
- Display format: Drop down list
- Filtering:
- Filter available selections: By a control’s value
- Where filed: ID
- Filtered by control: txtMeetingID
- Action when no filter applied: Show None
- Advanced
- Store Client ID in JavaScript variable: Yes
- Client ID JavaScript variable name: ddlMeetingTitle
- Add a Calculate Value form control – This is used to set the title of the item in the Attendees list.
- Enter the formula you would like to use to create a title for the item. The formula below will give the title of: DisplayName-<Class Title> on <Class Date> at <Class Time> in the <Class location>
- userProfileLookup(Current User,”PreferredName”) + “-” + lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “Title”) + ” on ” + formatDate(lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “Start Time”), “D”)+ ” at ” + formatDate(lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “Start Time”), “t”)+”-“+formatDate(lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “End Time”), “t”)+” in the “+lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “Location”)
The following controls will display a message to the user. The meeting/class is selected using a URL Parameter which will be created in the registration link later on using JavaScript.
Sample Sign Up Sheet With Time Slots No Deposit
- Add a Calculate Value form control
- Formula:
userProfileLookup(Current User,”FirstName”) +”,”
- Formula:
- Add a Calculate Value form control – This is the text the user will see when registering (Please confirm your registration for <Class Name> on <Class Date> at <Class Time> in the <Class Location>.)
- Formula:
“Please confirm your registration for ” + lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “Title”) + ” on ” + formatDate(lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “Start Time”), “D”)+ ” at ” + formatDate(lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “Start Time”), “t”)+”-“+formatDate(lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “End Time”), “t”)+” in the “+lookup(“Class Registration Calendar”, “ID”, txtMeetingID, “Location”)+”.”
- Formula:
- Change the Save button label to Confirm Registration
- Change the Cancel button label to Cancel Registration
JavaScript
The JavaScript turns the calculated column into html and changes the look of the Calendar Item form.
- Go to the Calendar list created earlier.
- Click on the List Ribbon. Then Form Web Parts > Default Display Form
- Add a snippet to the bottom of the form. Add the following code:
Sample Sign Up Sheet With Time Slots Free Play
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 | <style><span id='ms-rterangecursor-start'></span><span></span> .ms-formbody { BACKGROUND:nonetransparentscrollrepeat0%0%; }</style> <script src='https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js'></script><script type='text/javascript'> functionOpenLandLRegistration(MeetingID) varoptions={ url:'/Lists/ClassAttendees/NewForm.aspx?MeetingID='+MeetingID, height:600, dialogReturnValueCallback:RefreshOnDialogClose {} // Reformat the url in the calculated column to hyperlink // Format link font size and weight $('td.ms-formlabel:contains('Register')').siblings('.ms-formbody').css('font-size','18px'); $('td.ms-formlabel:contains('Register')').siblings('.ms-formbody').css('font-weight','bold'); $('td.ms-formlabel:contains('Title')').siblings('.ms-formbody').css('font-size','18px'); $('td.ms-formlabel:contains('Title')').siblings('.ms-formbody').css('font-weight','bold'); $('td.ms-formlabel:contains('Location')').siblings('.ms-formbody').css('font-size','16px'); $('td.ms-formlabel:contains('Start')').siblings('.ms-formbody').css('font-size','16px'); $('td.ms-formlabel:contains('End')').siblings('.ms-formbody').css('font-size','16px'); $('td.ms-formlabel:contains('Seats')').siblings('.ms-formbody').css('font-size','16px'); $('td.ms-formlabel:contains('Description')').siblings('.ms-formbody').css('font-size','16px'); $('td.ms-formlabel:contains('Attendees')').siblings('.ms-formbody').css('font-size','16px'); functionreformatCalculatedColumnUrl(){ $('td.ms-formlabel:contains('Register')').siblings('.ms-formbody').each(function(){ }); }); $(function(){ $('a[name$='SeatsIncrement']').closest('tr').hide(); $('a[name$='WorkspaceLink']').closest('tr').hide(); $('a[name$='Closed']').closest('tr').hide(); $('a[name$='RemainingSeats']').closest('tr').hide(); $('a[name$='Title']').closest('td').hide(); $('a[name$='EventDate']').closest('td').hide(); $('a[name$='CourseDescription']').closest('td').hide(); $('a[name$='Register']').closest('td').hide(); $('a[name$='ParticipantsPicker']').closest('td').hide(); $('a[name$='SeatsRemaining']').closest('td').hide(); |
Now just create a page with links to the calendar items.