Slight reorganization
This commit is contained in:
parent
3efa1a15e2
commit
88beb191c9
@ -411,7 +411,7 @@ a
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#filterHead, #filterWrapper .sectionTitle {
|
||||
.openable {
|
||||
font-weight: 200;
|
||||
padding: 0;
|
||||
|
||||
@ -423,24 +423,31 @@ a
|
||||
transition: background-color 0.4s ease;
|
||||
}
|
||||
|
||||
#filterHead:hover, #filterWrapper .sectionTitle:hover {
|
||||
.openable:hover {
|
||||
background-color: rgba(255,255,255,0.2);
|
||||
}
|
||||
|
||||
#filterHead h3:first-child, #filterWrapper .sectionTitle h3:first-child {
|
||||
.openable h3:first-child {
|
||||
font-weight: 200;
|
||||
padding: 5%;
|
||||
display: inline-block;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
#filterHead .fa, #filterWrapper .sectionTitle .fa {
|
||||
.openable .fa {
|
||||
padding: 5%;
|
||||
float: right;
|
||||
display: inline-block;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
#filterHead h3:first-child, #filterWrapper .sectionTitle h3:first-child {
|
||||
font-weight: 200;
|
||||
padding: 5%;
|
||||
display: inline-block;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
#disableFilter {
|
||||
font-weight: 200;
|
||||
font-size: 90%;
|
||||
@ -497,7 +504,7 @@ a
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.sectionTitle.option {
|
||||
.sectionTitle.downOffset {
|
||||
margin-top: 6vh;
|
||||
}
|
||||
|
||||
|
||||
@ -155,127 +155,6 @@
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template name="sidebarMenuPlate">
|
||||
<div id="modes">
|
||||
<h3 class="sectionTitle">Main</h3>
|
||||
<div class="mode classes">
|
||||
<div class="status" style="background-color:{{modeStatus 'classes'}}"></div>
|
||||
<i class="fa fa-university" aria-hidden="true"></i>
|
||||
<h4>Classes</h4>
|
||||
</div>
|
||||
<div class="mode calendar">
|
||||
<div class="status" style="background-color:{{modeStatus 'calendar'}}"></div>
|
||||
<i class="fa fa-calendar" aria-hidden="true"></i>
|
||||
<h4>Calendar</h4>
|
||||
</div>
|
||||
<div class="mode manageClass" onclick="window.location='/profile'">
|
||||
<div class="status"></div>
|
||||
<i class="fa fa-tasks" aria-hidden="true"></i>
|
||||
<h4>Manage Classes</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div id="filters">
|
||||
<div id="filterHead" class="sectionTitle">
|
||||
<h3>Filters</h3>
|
||||
{{#if filterOn}}
|
||||
<h3 id="disableFilter">Disable All</h3>
|
||||
{{/if}}
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
<div id="filterWrapper">
|
||||
<div id="typeFilterWrapper" class="sectionTitle">
|
||||
<h3>By Type</h3>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
<div id="classFilterHolder">
|
||||
{{#each types}}
|
||||
{{> sideTypeFilter}}
|
||||
{{/each}}
|
||||
</div>
|
||||
<div id="classFilterWrapper" class="sectionTitle">
|
||||
<h3>By Class</h3>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
<div id="classListHolder">
|
||||
{{#each myClasses}}
|
||||
{{> sidebarClasses}}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="exportDiv" class="mode">
|
||||
<i class="fa fa-download" aria-hidden="true"></i>
|
||||
<h4>Export</h4>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template name="sidebarOptionPlate">
|
||||
<h3 class="sectionTitle option">Preferences</h3>
|
||||
<div id="prefCont">
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Theme:</h3>
|
||||
<div id="theme" class="clickModify dropdown" tabindex="1">
|
||||
<span>{{pref 'theme'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="theme"}}
|
||||
</div>
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Default Mode:</h3>
|
||||
<div id="mode" class="clickModify dropdown" tabindex="2">
|
||||
<span>{{pref 'mode'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="mode"}}
|
||||
</div>
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Hide Homework:</h3>
|
||||
<div id="timeHide" class="clickModify dropdown" tabindex="3">
|
||||
<span>{{pref 'timeHide'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="timeHide"}}
|
||||
</div>
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Hide Done:</h3>
|
||||
<div id="done" class="clickModify dropdown" tabindex="4">
|
||||
<span>{{pref 'done'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="done"}}
|
||||
</div>
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Hide Reported:</h3>
|
||||
<div id="hideReport" class="clickModify dropdown" tabindex="5">
|
||||
<span>{{pref 'hideReport'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="hideReport"}}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template name="sidebarRequestPlate">
|
||||
<h3 class="sectionTitle option">Requests</h3>
|
||||
<p class="sidebarDesc">Ask for help, submit a bug, or request a feature! We won't bite.</p>
|
||||
<textarea id="requestArea" class="restrict" rows="4" cols="50" maxlength="500" placeholder="Enter request here..."></textarea><br>
|
||||
<span id="requestRes" class="resText">{{restrict 'requestArea'}}</span>
|
||||
<span style="opacity:0">.</span>
|
||||
<div id="requestSubmit">
|
||||
<span>Send</span>
|
||||
<span style="display:none">Request sent!</span>
|
||||
<i class="fa fa-paper-plane" aria-hidden="true"></i>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template name="sidebarCreatePlate">
|
||||
<h3 class="sectionTitle option">Classes</h3>
|
||||
<p class="sidebarDesc">Pick a class to create work for.</p>
|
||||
{{#each myClasses}}
|
||||
{{> sidebarClasses}}
|
||||
{{/each}}
|
||||
</template>
|
||||
|
||||
<template name="sidebarClasses">
|
||||
<div class="sideClass" classid="{{_id}}">
|
||||
<div class="status" style="background-color:{{selected}}"></div>
|
||||
|
||||
@ -10,24 +10,8 @@ var calWorkOpen = null;
|
||||
var calWorkDate = null;
|
||||
modifyingInput = null;
|
||||
var clickDisabled = false;
|
||||
var filterOpen = [false,true,true];
|
||||
var sidebarMode = [null,null];
|
||||
var optionOpen = false;
|
||||
|
||||
|
||||
var openValues = {
|
||||
"requests": "-235px"
|
||||
};
|
||||
|
||||
// Sets colors for different assignment statuses
|
||||
var workColors = {
|
||||
"normal": "#2E4F74",
|
||||
"quiz": "#409333",
|
||||
"test": "#AD3C44",
|
||||
"project": "#D8831A",
|
||||
"other": "#852E6D"
|
||||
};
|
||||
|
||||
var defaultWork = {
|
||||
name: "Name | Click here to edit...",
|
||||
dueDate: "Click here to edit...",
|
||||
@ -83,40 +67,6 @@ Template.selectOptionMenu.rendered = function() {
|
||||
);
|
||||
}
|
||||
|
||||
Template.sidebarMenuPlate.rendered = function() {
|
||||
$(".menuWrapper").slideDown(300);
|
||||
}
|
||||
|
||||
Template.sidebarMenuPlate.helpers({
|
||||
modeStatus(status) { // Color status of display modes.
|
||||
return (Session.equals("mode", status)) ? Session.get("user").preferences.theme.modeHighlight : "rgba(0,0,0,0)";
|
||||
},
|
||||
types() {
|
||||
var types = Object.keys(workColors);
|
||||
var array = [];
|
||||
for (var i = 0; i < types.length; i++) {
|
||||
array.push({
|
||||
"type": types[i],
|
||||
"typeName": types[i][0].toUpperCase() + types[i].slice(1),
|
||||
"selected": (_.contains(Session.get("typeFilter"), types[i])) ? Session.get("user").preferences.theme.modeHighlight : "rgba(0,0,0,0)"
|
||||
});
|
||||
}
|
||||
return array;
|
||||
}
|
||||
});
|
||||
|
||||
Template.sidebarOptionPlate.rendered = function() {
|
||||
$(".menuWrapper").slideDown(300);
|
||||
}
|
||||
|
||||
Template.sidebarRequestPlate.rendered = function() {
|
||||
$(".menuWrapper").slideDown(300);
|
||||
}
|
||||
|
||||
Template.sidebarCreatePlate.rendered = function() {
|
||||
$(".menuWrapper").slideDown(300);
|
||||
}
|
||||
|
||||
// Global Helpers
|
||||
|
||||
Template.registerHelper('adminPage', () => {
|
||||
@ -338,7 +288,7 @@ Template.main.helpers({
|
||||
return Session.get("user").name;
|
||||
},
|
||||
defaultMode() { //Loads the default display mode for user.
|
||||
if (load) Session.set("mode", Session.get("user").preferences.mode);
|
||||
if (load)
|
||||
load = false;
|
||||
return;
|
||||
},
|
||||
@ -536,37 +486,9 @@ Template.main.events({
|
||||
'click .fa-cog' (event) { // Click settings button.
|
||||
toggleToSidebar("option");
|
||||
},
|
||||
'click .fa-question' (event) {
|
||||
'click .fa-question' (event) { // Click requests button.
|
||||
toggleToSidebar("requests");
|
||||
},
|
||||
'click #filterHead' (event) {
|
||||
if(event.target.id === "disableFilter") return;
|
||||
if(!filterOpen[0]) {
|
||||
$("#filterWrapper").slideDown(300);
|
||||
} else {
|
||||
$("#filterWrapper").slideUp(300);
|
||||
}
|
||||
filterOpen[0] = !filterOpen[0];
|
||||
},
|
||||
'click #typeFilterWrapper' () {
|
||||
if(!filterOpen[1]) {
|
||||
$("#classFilterHolder").slideDown(300);
|
||||
} else {
|
||||
$("#classFilterHolder").slideUp(300);
|
||||
}
|
||||
filterOpen[1] = !filterOpen[1];
|
||||
},
|
||||
'click #classFilterWrapper' () {
|
||||
if(!filterOpen[2]) {
|
||||
$("#classListHolder").slideDown(300);
|
||||
} else {
|
||||
$("#classListHolder").slideUp(300);
|
||||
}
|
||||
filterOpen[2] = !filterOpen[2];
|
||||
},
|
||||
'click #requests .fa-question' () {
|
||||
Session.set("requests", !Session.get("requests"));
|
||||
},
|
||||
'click .classes' () { // Click classes mode button.
|
||||
if (Session.equals("mode", "classes")) return;
|
||||
var modeHolder = document.getElementById("mainBody");
|
||||
|
||||
123
hourglass/client/menus/menus.html
Normal file
123
hourglass/client/menus/menus.html
Normal file
@ -0,0 +1,123 @@
|
||||
<template name="sidebarMenuPlate">
|
||||
<div id="modes">
|
||||
<h3 class="sectionTitle">Main</h3>
|
||||
<div class="mode classes">
|
||||
<div class="status" style="background-color:{{modeStatus 'classes'}}"></div>
|
||||
<i class="fa fa-university" aria-hidden="true"></i>
|
||||
<h4>Classes</h4>
|
||||
</div>
|
||||
<div class="mode calendar">
|
||||
<div class="status" style="background-color:{{modeStatus 'calendar'}}"></div>
|
||||
<i class="fa fa-calendar" aria-hidden="true"></i>
|
||||
<h4>Calendar</h4>
|
||||
</div>
|
||||
<div class="mode manageClass" onclick="window.location='/profile'">
|
||||
<div class="status"></div>
|
||||
<i class="fa fa-tasks" aria-hidden="true"></i>
|
||||
<h4>Manage Classes</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div id="filters">
|
||||
<div id="filterHead" class="sectionTitle openable">
|
||||
<h3>Filters</h3>
|
||||
{{#if filterOn}}
|
||||
<h3 id="disableFilter">Disable All</h3>
|
||||
{{/if}}
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
<div id="filterWrapper">
|
||||
<div id="typeFilterWrapper" class="sectionTitle openable">
|
||||
<h3>By Type</h3>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
<div id="classFilterHolder">
|
||||
{{#each types}}
|
||||
{{> sideTypeFilter}}
|
||||
{{/each}}
|
||||
</div>
|
||||
<div id="classFilterWrapper" class="sectionTitle openable">
|
||||
<h3>By Class</h3>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
<div id="classListHolder">
|
||||
{{#each myClasses}}
|
||||
{{> sidebarClasses}}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="exportDiv" class="mode">
|
||||
<i class="fa fa-download" aria-hidden="true"></i>
|
||||
<h4>Export</h4>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template name="sidebarOptionPlate">
|
||||
<div id="preferencesWrapper" class="sectionTitle openable downOffset">
|
||||
<h3>Preferences</h3>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
<div id="prefCont">
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Theme:</h3>
|
||||
<div id="theme" class="clickModify dropdown" tabindex="1">
|
||||
<span>{{pref 'theme'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="theme"}}
|
||||
</div>
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Default Mode:</h3>
|
||||
<div id="mode" class="clickModify dropdown" tabindex="2">
|
||||
<span>{{pref 'mode'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="mode"}}
|
||||
</div>
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Hide Homework:</h3>
|
||||
<div id="timeHide" class="clickModify dropdown" tabindex="3">
|
||||
<span>{{pref 'timeHide'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="timeHide"}}
|
||||
</div>
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Hide Done:</h3>
|
||||
<div id="done" class="clickModify dropdown" tabindex="4">
|
||||
<span>{{pref 'done'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="done"}}
|
||||
</div>
|
||||
<div class="prefWrapper">
|
||||
<h3 class="sectionTitle prefText">Hide Reported:</h3>
|
||||
<div id="hideReport" class="clickModify dropdown" tabindex="5">
|
||||
<span>{{pref 'hideReport'}}</span>
|
||||
<i class="fa fa-angle-down" aria-hidden="true"></i>
|
||||
</div>
|
||||
{{> selectOptionMenu optionName="hideReport"}}
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template name="sidebarRequestPlate">
|
||||
<h3 class="sectionTitle downOffset">Requests</h3>
|
||||
<p class="sidebarDesc">Ask for help, submit a bug, or request a feature! We won't bite.</p>
|
||||
<textarea id="requestArea" class="restrict" rows="4" cols="50" maxlength="500" placeholder="Enter request here..."></textarea><br>
|
||||
<span id="requestRes" class="resText">{{restrict 'requestArea'}}</span>
|
||||
<span style="opacity:0">.</span>
|
||||
<div id="requestSubmit">
|
||||
<span>Send</span>
|
||||
<span style="display:none">Request sent!</span>
|
||||
<i class="fa fa-paper-plane" aria-hidden="true"></i>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template name="sidebarCreatePlate">
|
||||
<h3 class="sectionTitle downOffset">Classes</h3>
|
||||
<p class="sidebarDesc">Pick a class to create work for.</p>
|
||||
{{#each myClasses}}
|
||||
{{> sidebarClasses}}
|
||||
{{/each}}
|
||||
</template>
|
||||
57
hourglass/client/menus/menus.js
Normal file
57
hourglass/client/menus/menus.js
Normal file
@ -0,0 +1,57 @@
|
||||
var filterOpen = [false,true,true];
|
||||
var sidebarMode = [null,null];
|
||||
|
||||
Template.sidebarMenuPlate.rendered = function(){$(".menuWrapper").slideDown(300);}
|
||||
Template.sidebarOptionPlate.rendered = function(){$(".menuWrapper").slideDown(300);}
|
||||
Template.sidebarRequestPlate.rendered = function(){$(".menuWrapper").slideDown(300);}
|
||||
Template.sidebarCreatePlate.rendered = function(){$(".menuWrapper").slideDown(300);}
|
||||
|
||||
Template.sidebarMenuPlate.helpers({
|
||||
modeStatus(status) { // Color status of display modes.
|
||||
return (Session.equals("mode", status)) ? Session.get("user").preferences.theme.modeHighlight : "rgba(0,0,0,0)";
|
||||
},
|
||||
types() {
|
||||
var types = Object.keys(workColors);
|
||||
var array = [];
|
||||
for (var i = 0; i < types.length; i++) {
|
||||
array.push({
|
||||
"type": types[i],
|
||||
"typeName": types[i][0].toUpperCase() + types[i].slice(1),
|
||||
"selected": (_.contains(Session.get("typeFilter"), types[i])) ? Session.get("user").preferences.theme.modeHighlight : "rgba(0,0,0,0)"
|
||||
});
|
||||
}
|
||||
return array;
|
||||
}
|
||||
});
|
||||
|
||||
Template.sidebarMenuPlate.events({
|
||||
'click #filterHead' (event) {
|
||||
if(event.target.id === "disableFilter") return;
|
||||
if(!filterOpen[0]) {
|
||||
$("#filterWrapper").slideDown(300);
|
||||
} else {
|
||||
$("#filterWrapper").slideUp(300);
|
||||
}
|
||||
filterOpen[0] = !filterOpen[0];
|
||||
},
|
||||
'click #typeFilterWrapper' () {
|
||||
if(!filterOpen[1]) {
|
||||
$("#classFilterHolder").slideDown(300);
|
||||
} else {
|
||||
$("#classFilterHolder").slideUp(300);
|
||||
}
|
||||
filterOpen[1] = !filterOpen[1];
|
||||
},
|
||||
'click #classFilterWrapper' () {
|
||||
if(!filterOpen[2]) {
|
||||
$("#classListHolder").slideDown(300);
|
||||
} else {
|
||||
$("#classListHolder").slideUp(300);
|
||||
}
|
||||
filterOpen[2] = !filterOpen[2];
|
||||
}
|
||||
});
|
||||
|
||||
Template.sidebarOptionPlate.events({
|
||||
|
||||
});
|
||||
@ -67,6 +67,14 @@ themeColors = {
|
||||
}
|
||||
};
|
||||
|
||||
workColors = {
|
||||
"normal": "#2E4F74",
|
||||
"quiz": "#409333",
|
||||
"test": "#AD3C44",
|
||||
"project": "#D8831A",
|
||||
"other": "#852E6D"
|
||||
};
|
||||
|
||||
options = {
|
||||
"theme": [
|
||||
{"val": "lux", "alias": "Lux"},
|
||||
|
||||
@ -14,7 +14,6 @@ Router.route('/', {
|
||||
},
|
||||
action: function() {
|
||||
if(_.contains([null, undefined, ""], Meteor.user().profile.school)) {
|
||||
Session.set("user", Meteor.user().profile);
|
||||
this.redirect('/login');
|
||||
} else {
|
||||
Session.set("user", Meteor.user().profile);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user