diff --git a/src/resources/;Renoj Varghese b/src/resources/;Renoj Varghese new file mode 100644 index 0000000..dc4342c --- /dev/null +++ b/src/resources/;Renoj Varghese @@ -0,0 +1,245 @@ +;Renoj Varghese +;1a. +;Name: Example 3.7 +;checks if number of 0s are a power of 2 + +;Inputs Checked +;"" : halt-reject +;"0" : halt-accept +;"00": halt-accept +;"000": halt-reject +;"000000000": halt-reject +;"0000000000000000": halt-accept +;Machine starts in state q1. + +;q1: check for no 0s +q1 0 _ R q2 +q1 x x R halt-reject +q1 _ _ R halt-reject + + + +;q2 replace 0s with x's +q2 0 x R q3 +q2 x x R q2 +q2 _ _ R halt-accept ;represents accept state + +;q3 move Right of x's +q3 0 0 R q4 +q3 x x R q3 +q3 _ _ L q5 + +;q4 replace 0s with x's +q4 0 x R q3 +q4 x x R q4 +q4 _ _ R halt-reject ;represents reject state + +;q5 move L until beginning of string +q5 0 0 L q5 +q5 x x L q5 +q5 _ _ R q2 + + + + + + + + + +Renoj Varghese +;1b. +;Title: M$ +;Program to move input string over 1 position and add a $ before input + +;Input Tests +;"" : halt-accept, tape: $_, head over _ +;"a" : halt-accept, tape: $a, head over a +;"cab" :halt-accept, tape: $cab, head over c +;"bbbbbb": halt-accept, tape: $bbbbbb, head over first b +;"abccba" : halt-accept, tape: $abccba, head over first a +;"abababababababababac": halt-accept, tape: $abababababababababac, head over first a + +;Initial State q1 +;$q1 represents an initial state that will begin insert a $ and the first char +$q1 a $ R $needA +$q1 b $ R $needB +$q1 c $ R $needC +$q1 _ $ R $moveBack +$q1 $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needA tells machine that the next char should be an a +$needA a a R $needA +$needA b a R $needB +$needA c a R $needC +$needA _ a R $moveBack +$needA $ $ R halt-reject ;should never run into $ again (not part of sigma) + + +;$needB tells machine that the next char should be an b +$needB a b R $needA +$needB b b R $needB +$needB c b R $needC +$needB _ b R $moveBack +$needB $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needC tells machine that the next char should be an a +$needC a c R $needA +$needC b c R $needB +$needC c c R $needC +$needC _ c R $moveBack +$needC $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$moveBack tells machine that a blank has been reached and move back to $ +$moveBack a a L $moveBack +$moveBack b b L $moveBack +$moveBack c c L $moveBack +$moveBack _ _ L $moveBack +$moveBack $ $ R halt-accept + + + + + +;Renoj Varghese +;1c. +;Title: M# +;Program to move input string over 1 position and add a # before input +;initial state is #q1 +;Input Tests +;"" : halt-accept, tape: #_, head over _ +;"a" : halt-accept, tape: #a, head over a +;"cab" :halt-accept, tape: #cab, head over c +;"bbbbbb": halt-accept, tape: #bbbbbb, head over first b +;"abccba" : halt-accept, tape: #abccba, head over first a +;"abababababababababac": halt-accept, tape: #abababababababababac, head over first a + +;#q1 represents an initial state that will begin insert a # and the first char +#q1 a # R #needA +#q1 b # R #needB +#q1 c # R #needC +#q1 _ # R #moveBack +#q1 # # R halt-reject ;should never run into # again (not part of sigma) + +;#needA tells machine that the next char should be an a +#needA a a R #needA +#needA b a R #needB +#needA c a R #needC +#needA _ a R #moveBack +#needA # # R halt-reject ;should never run into # again (not part of sigma) + + +;#needB tells machine that the next char should be an b +#needB a b R #needA +#needB b b R #needB +#needB c b R #needC +#needB _ b R #moveBack +#needB # # R halt-reject ;should never run into # again (not part of sigma) + +;#needC tells machine that the next char should be an a +#needC a c R #needA +#needC b c R #needB +#needC c c R #needC +#needC _ c R #moveBack +#needC # # R halt-reject ;should never run into # again (not part of sigma) + +;#moveBack tells machine that a blank has been reached and move back to # +#moveBack a a L #moveBack +#moveBack b b L #moveBack +#moveBack c c L #moveBack +#moveBack _ _ L #moveBack +#moveBack # # R halt-accept ;accept state for M# + + + + + +;Renoj Varghese +;1d. +;Title: M$# +;Program to move input string over 1 position and add a $# before input +;********Only change is that all transitions to accept state for M$, halt-accept changed to transition to #q1 +;initial state is $q1 + +;Input Tests +;"" : halt-accept, tape: $#_, head over _ +;"a" : halt-accept, tape: $#a, head over a +;"cab" :halt-accept, tape: $#cab, head over c +;"bbbbbb": halt-accept, tape: $#bbbbbb, head over first b +;"abccba" : halt-accept, tape: $#abccba, head over first a +;"abababababababababac": halt-accept, tape: $#abababababababababac, head over first a + +;$q1 represents an initial state that will begin insert a $ and the first char +$q1 a $ R $needA +$q1 b $ R $needB +$q1 c $ R $needC +$q1 _ $ R $moveBack +$q1 $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needA tells machine that the next char should be an a +$needA a a R $needA +$needA b a R $needB +$needA c a R $needC +$needA _ a R $moveBack +$needA $ $ R halt-reject ;should never run into $ again (not part of sigma) + + +;$needB tells machine that the next char should be an b +$needB a b R $needA +$needB b b R $needB +$needB c b R $needC +$needB _ b R $moveBack +$needB $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needC tells machine that the next char should be an a +$needC a c R $needA +$needC b c R $needB +$needC c c R $needC +$needC _ c R $moveBack +$needC $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$moveBack tells machine that a blank has been reached and move back to $ +$moveBack a a L $moveBack +$moveBack b b L $moveBack +$moveBack c c L $moveBack +$moveBack _ _ L $moveBack +$moveBack $ $ R #q1 + + +;#q1 represents an initial state that will begin insert a # and the first char +#q1 a # R #needA +#q1 b # R #needB +#q1 c # R #needC +#q1 _ # R #moveBack +#q1 # # R halt-reject ;should never run into # again (not part of sigma) + +;#needA tells machine that the next char should be an a +#needA a a R #needA +#needA b a R #needB +#needA c a R #needC +#needA _ a R #moveBack +#needA # # R halt-reject ;should never run into # again (not part of sigma) + + +;#needB tells machine that the next char should be an b +#needB a b R #needA +#needB b b R #needB +#needB c b R #needC +#needB _ b R #moveBack +#needB # # R halt-reject ;should never run into # again (not part of sigma) + +;#needC tells machine that the next char should be an a +#needC a c R #needA +#needC b c R #needB +#needC c c R #needC +#needC _ c R #moveBack +#needC # # R halt-reject ;should never run into # again (not part of sigma) + +;#moveBack tells machine that a blank has been reached and move back to # +#moveBack a a L #moveBack +#moveBack b b L #moveBack +#moveBack c c L #moveBack +#moveBack _ _ L #moveBack +#moveBack # # R halt-accept + + diff --git a/src/resources/CSE3502HW6_TM b/src/resources/CSE3502HW6_TM new file mode 100644 index 0000000..dc4342c --- /dev/null +++ b/src/resources/CSE3502HW6_TM @@ -0,0 +1,245 @@ +;Renoj Varghese +;1a. +;Name: Example 3.7 +;checks if number of 0s are a power of 2 + +;Inputs Checked +;"" : halt-reject +;"0" : halt-accept +;"00": halt-accept +;"000": halt-reject +;"000000000": halt-reject +;"0000000000000000": halt-accept +;Machine starts in state q1. + +;q1: check for no 0s +q1 0 _ R q2 +q1 x x R halt-reject +q1 _ _ R halt-reject + + + +;q2 replace 0s with x's +q2 0 x R q3 +q2 x x R q2 +q2 _ _ R halt-accept ;represents accept state + +;q3 move Right of x's +q3 0 0 R q4 +q3 x x R q3 +q3 _ _ L q5 + +;q4 replace 0s with x's +q4 0 x R q3 +q4 x x R q4 +q4 _ _ R halt-reject ;represents reject state + +;q5 move L until beginning of string +q5 0 0 L q5 +q5 x x L q5 +q5 _ _ R q2 + + + + + + + + + +Renoj Varghese +;1b. +;Title: M$ +;Program to move input string over 1 position and add a $ before input + +;Input Tests +;"" : halt-accept, tape: $_, head over _ +;"a" : halt-accept, tape: $a, head over a +;"cab" :halt-accept, tape: $cab, head over c +;"bbbbbb": halt-accept, tape: $bbbbbb, head over first b +;"abccba" : halt-accept, tape: $abccba, head over first a +;"abababababababababac": halt-accept, tape: $abababababababababac, head over first a + +;Initial State q1 +;$q1 represents an initial state that will begin insert a $ and the first char +$q1 a $ R $needA +$q1 b $ R $needB +$q1 c $ R $needC +$q1 _ $ R $moveBack +$q1 $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needA tells machine that the next char should be an a +$needA a a R $needA +$needA b a R $needB +$needA c a R $needC +$needA _ a R $moveBack +$needA $ $ R halt-reject ;should never run into $ again (not part of sigma) + + +;$needB tells machine that the next char should be an b +$needB a b R $needA +$needB b b R $needB +$needB c b R $needC +$needB _ b R $moveBack +$needB $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needC tells machine that the next char should be an a +$needC a c R $needA +$needC b c R $needB +$needC c c R $needC +$needC _ c R $moveBack +$needC $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$moveBack tells machine that a blank has been reached and move back to $ +$moveBack a a L $moveBack +$moveBack b b L $moveBack +$moveBack c c L $moveBack +$moveBack _ _ L $moveBack +$moveBack $ $ R halt-accept + + + + + +;Renoj Varghese +;1c. +;Title: M# +;Program to move input string over 1 position and add a # before input +;initial state is #q1 +;Input Tests +;"" : halt-accept, tape: #_, head over _ +;"a" : halt-accept, tape: #a, head over a +;"cab" :halt-accept, tape: #cab, head over c +;"bbbbbb": halt-accept, tape: #bbbbbb, head over first b +;"abccba" : halt-accept, tape: #abccba, head over first a +;"abababababababababac": halt-accept, tape: #abababababababababac, head over first a + +;#q1 represents an initial state that will begin insert a # and the first char +#q1 a # R #needA +#q1 b # R #needB +#q1 c # R #needC +#q1 _ # R #moveBack +#q1 # # R halt-reject ;should never run into # again (not part of sigma) + +;#needA tells machine that the next char should be an a +#needA a a R #needA +#needA b a R #needB +#needA c a R #needC +#needA _ a R #moveBack +#needA # # R halt-reject ;should never run into # again (not part of sigma) + + +;#needB tells machine that the next char should be an b +#needB a b R #needA +#needB b b R #needB +#needB c b R #needC +#needB _ b R #moveBack +#needB # # R halt-reject ;should never run into # again (not part of sigma) + +;#needC tells machine that the next char should be an a +#needC a c R #needA +#needC b c R #needB +#needC c c R #needC +#needC _ c R #moveBack +#needC # # R halt-reject ;should never run into # again (not part of sigma) + +;#moveBack tells machine that a blank has been reached and move back to # +#moveBack a a L #moveBack +#moveBack b b L #moveBack +#moveBack c c L #moveBack +#moveBack _ _ L #moveBack +#moveBack # # R halt-accept ;accept state for M# + + + + + +;Renoj Varghese +;1d. +;Title: M$# +;Program to move input string over 1 position and add a $# before input +;********Only change is that all transitions to accept state for M$, halt-accept changed to transition to #q1 +;initial state is $q1 + +;Input Tests +;"" : halt-accept, tape: $#_, head over _ +;"a" : halt-accept, tape: $#a, head over a +;"cab" :halt-accept, tape: $#cab, head over c +;"bbbbbb": halt-accept, tape: $#bbbbbb, head over first b +;"abccba" : halt-accept, tape: $#abccba, head over first a +;"abababababababababac": halt-accept, tape: $#abababababababababac, head over first a + +;$q1 represents an initial state that will begin insert a $ and the first char +$q1 a $ R $needA +$q1 b $ R $needB +$q1 c $ R $needC +$q1 _ $ R $moveBack +$q1 $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needA tells machine that the next char should be an a +$needA a a R $needA +$needA b a R $needB +$needA c a R $needC +$needA _ a R $moveBack +$needA $ $ R halt-reject ;should never run into $ again (not part of sigma) + + +;$needB tells machine that the next char should be an b +$needB a b R $needA +$needB b b R $needB +$needB c b R $needC +$needB _ b R $moveBack +$needB $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needC tells machine that the next char should be an a +$needC a c R $needA +$needC b c R $needB +$needC c c R $needC +$needC _ c R $moveBack +$needC $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$moveBack tells machine that a blank has been reached and move back to $ +$moveBack a a L $moveBack +$moveBack b b L $moveBack +$moveBack c c L $moveBack +$moveBack _ _ L $moveBack +$moveBack $ $ R #q1 + + +;#q1 represents an initial state that will begin insert a # and the first char +#q1 a # R #needA +#q1 b # R #needB +#q1 c # R #needC +#q1 _ # R #moveBack +#q1 # # R halt-reject ;should never run into # again (not part of sigma) + +;#needA tells machine that the next char should be an a +#needA a a R #needA +#needA b a R #needB +#needA c a R #needC +#needA _ a R #moveBack +#needA # # R halt-reject ;should never run into # again (not part of sigma) + + +;#needB tells machine that the next char should be an b +#needB a b R #needA +#needB b b R #needB +#needB c b R #needC +#needB _ b R #moveBack +#needB # # R halt-reject ;should never run into # again (not part of sigma) + +;#needC tells machine that the next char should be an a +#needC a c R #needA +#needC b c R #needB +#needC c c R #needC +#needC _ c R #moveBack +#needC # # R halt-reject ;should never run into # again (not part of sigma) + +;#moveBack tells machine that a blank has been reached and move back to # +#moveBack a a L #moveBack +#moveBack b b L #moveBack +#moveBack c c L #moveBack +#moveBack _ _ L #moveBack +#moveBack # # R halt-accept + + diff --git a/src/resources/CSE3502HW6_TM.txt b/src/resources/CSE3502HW6_TM.txt new file mode 100644 index 0000000..dc4342c --- /dev/null +++ b/src/resources/CSE3502HW6_TM.txt @@ -0,0 +1,245 @@ +;Renoj Varghese +;1a. +;Name: Example 3.7 +;checks if number of 0s are a power of 2 + +;Inputs Checked +;"" : halt-reject +;"0" : halt-accept +;"00": halt-accept +;"000": halt-reject +;"000000000": halt-reject +;"0000000000000000": halt-accept +;Machine starts in state q1. + +;q1: check for no 0s +q1 0 _ R q2 +q1 x x R halt-reject +q1 _ _ R halt-reject + + + +;q2 replace 0s with x's +q2 0 x R q3 +q2 x x R q2 +q2 _ _ R halt-accept ;represents accept state + +;q3 move Right of x's +q3 0 0 R q4 +q3 x x R q3 +q3 _ _ L q5 + +;q4 replace 0s with x's +q4 0 x R q3 +q4 x x R q4 +q4 _ _ R halt-reject ;represents reject state + +;q5 move L until beginning of string +q5 0 0 L q5 +q5 x x L q5 +q5 _ _ R q2 + + + + + + + + + +Renoj Varghese +;1b. +;Title: M$ +;Program to move input string over 1 position and add a $ before input + +;Input Tests +;"" : halt-accept, tape: $_, head over _ +;"a" : halt-accept, tape: $a, head over a +;"cab" :halt-accept, tape: $cab, head over c +;"bbbbbb": halt-accept, tape: $bbbbbb, head over first b +;"abccba" : halt-accept, tape: $abccba, head over first a +;"abababababababababac": halt-accept, tape: $abababababababababac, head over first a + +;Initial State q1 +;$q1 represents an initial state that will begin insert a $ and the first char +$q1 a $ R $needA +$q1 b $ R $needB +$q1 c $ R $needC +$q1 _ $ R $moveBack +$q1 $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needA tells machine that the next char should be an a +$needA a a R $needA +$needA b a R $needB +$needA c a R $needC +$needA _ a R $moveBack +$needA $ $ R halt-reject ;should never run into $ again (not part of sigma) + + +;$needB tells machine that the next char should be an b +$needB a b R $needA +$needB b b R $needB +$needB c b R $needC +$needB _ b R $moveBack +$needB $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needC tells machine that the next char should be an a +$needC a c R $needA +$needC b c R $needB +$needC c c R $needC +$needC _ c R $moveBack +$needC $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$moveBack tells machine that a blank has been reached and move back to $ +$moveBack a a L $moveBack +$moveBack b b L $moveBack +$moveBack c c L $moveBack +$moveBack _ _ L $moveBack +$moveBack $ $ R halt-accept + + + + + +;Renoj Varghese +;1c. +;Title: M# +;Program to move input string over 1 position and add a # before input +;initial state is #q1 +;Input Tests +;"" : halt-accept, tape: #_, head over _ +;"a" : halt-accept, tape: #a, head over a +;"cab" :halt-accept, tape: #cab, head over c +;"bbbbbb": halt-accept, tape: #bbbbbb, head over first b +;"abccba" : halt-accept, tape: #abccba, head over first a +;"abababababababababac": halt-accept, tape: #abababababababababac, head over first a + +;#q1 represents an initial state that will begin insert a # and the first char +#q1 a # R #needA +#q1 b # R #needB +#q1 c # R #needC +#q1 _ # R #moveBack +#q1 # # R halt-reject ;should never run into # again (not part of sigma) + +;#needA tells machine that the next char should be an a +#needA a a R #needA +#needA b a R #needB +#needA c a R #needC +#needA _ a R #moveBack +#needA # # R halt-reject ;should never run into # again (not part of sigma) + + +;#needB tells machine that the next char should be an b +#needB a b R #needA +#needB b b R #needB +#needB c b R #needC +#needB _ b R #moveBack +#needB # # R halt-reject ;should never run into # again (not part of sigma) + +;#needC tells machine that the next char should be an a +#needC a c R #needA +#needC b c R #needB +#needC c c R #needC +#needC _ c R #moveBack +#needC # # R halt-reject ;should never run into # again (not part of sigma) + +;#moveBack tells machine that a blank has been reached and move back to # +#moveBack a a L #moveBack +#moveBack b b L #moveBack +#moveBack c c L #moveBack +#moveBack _ _ L #moveBack +#moveBack # # R halt-accept ;accept state for M# + + + + + +;Renoj Varghese +;1d. +;Title: M$# +;Program to move input string over 1 position and add a $# before input +;********Only change is that all transitions to accept state for M$, halt-accept changed to transition to #q1 +;initial state is $q1 + +;Input Tests +;"" : halt-accept, tape: $#_, head over _ +;"a" : halt-accept, tape: $#a, head over a +;"cab" :halt-accept, tape: $#cab, head over c +;"bbbbbb": halt-accept, tape: $#bbbbbb, head over first b +;"abccba" : halt-accept, tape: $#abccba, head over first a +;"abababababababababac": halt-accept, tape: $#abababababababababac, head over first a + +;$q1 represents an initial state that will begin insert a $ and the first char +$q1 a $ R $needA +$q1 b $ R $needB +$q1 c $ R $needC +$q1 _ $ R $moveBack +$q1 $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needA tells machine that the next char should be an a +$needA a a R $needA +$needA b a R $needB +$needA c a R $needC +$needA _ a R $moveBack +$needA $ $ R halt-reject ;should never run into $ again (not part of sigma) + + +;$needB tells machine that the next char should be an b +$needB a b R $needA +$needB b b R $needB +$needB c b R $needC +$needB _ b R $moveBack +$needB $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$needC tells machine that the next char should be an a +$needC a c R $needA +$needC b c R $needB +$needC c c R $needC +$needC _ c R $moveBack +$needC $ $ R halt-reject ;should never run into $ again (not part of sigma) + +;$moveBack tells machine that a blank has been reached and move back to $ +$moveBack a a L $moveBack +$moveBack b b L $moveBack +$moveBack c c L $moveBack +$moveBack _ _ L $moveBack +$moveBack $ $ R #q1 + + +;#q1 represents an initial state that will begin insert a # and the first char +#q1 a # R #needA +#q1 b # R #needB +#q1 c # R #needC +#q1 _ # R #moveBack +#q1 # # R halt-reject ;should never run into # again (not part of sigma) + +;#needA tells machine that the next char should be an a +#needA a a R #needA +#needA b a R #needB +#needA c a R #needC +#needA _ a R #moveBack +#needA # # R halt-reject ;should never run into # again (not part of sigma) + + +;#needB tells machine that the next char should be an b +#needB a b R #needA +#needB b b R #needB +#needB c b R #needC +#needB _ b R #moveBack +#needB # # R halt-reject ;should never run into # again (not part of sigma) + +;#needC tells machine that the next char should be an a +#needC a c R #needA +#needC b c R #needB +#needC c c R #needC +#needC _ c R #moveBack +#needC # # R halt-reject ;should never run into # again (not part of sigma) + +;#moveBack tells machine that a blank has been reached and move back to # +#moveBack a a L #moveBack +#moveBack b b L #moveBack +#moveBack c c L #moveBack +#moveBack _ _ L #moveBack +#moveBack # # R halt-accept + + diff --git a/src/resources/css/main.css b/src/resources/css/main.css index 8b13789..79a9582 100644 --- a/src/resources/css/main.css +++ b/src/resources/css/main.css @@ -1 +1,262 @@ +/*! HTML5 Boilerplate v5.3.0 | MIT License | https://html5boilerplate.com/ */ +/* + * What follows is the result of much research on cross-browser styling. + * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal, + * Kroc Camen, and the H5BP dev community and team. + */ +/* ========================================================================== + Base styles: opinionated defaults + ========================================================================== */ +html { + color: #222; + font-size: 1em; + line-height: 1.4; } +/* + * Remove text-shadow in selection highlight: + * https://twitter.com/miketaylr/status/12228805301 + * + * These selection rule sets have to be separate. + * Customize the background color to match your design. + */ +::-moz-selection { + background: #b3d4fc; + text-shadow: none; } + +::selection { + background: #b3d4fc; + text-shadow: none; } + +/* + * A better looking default horizontal rule + */ +hr { + display: block; + height: 1px; + border: 0; + border-top: 1px solid #ccc; + margin: 1em 0; + padding: 0; } + +/* + * Remove the gap between audio, canvas, iframes, + * images, videos and the bottom of their containers: + * https://github.com/h5bp/html5-boilerplate/issues/440 + */ +audio, +canvas, +iframe, +img, +svg, +video { + vertical-align: middle; } + +/* + * Remove default fieldset styles. + */ +fieldset { + border: 0; + margin: 0; + padding: 0; } + +/* + * Allow only vertical resizing of textareas. + */ +textarea { + resize: vertical; } + +/* ========================================================================== + Browser Upgrade Prompt + ========================================================================== */ +.browserupgrade { + margin: 0.2em 0; + background: #ccc; + color: #000; + padding: 0.2em 0; } + +/* ========================================================================== + Author's custom styles + ========================================================================== */ +* { + box-sizing: border-box; } + +body { + font: "Roboto", sans-serif; + font-weight: 400; } + +.blue-back { + background: #263a75; } + +.item, .item h2 { + margin: 0; + padding: 0; + transition: all .5s linear; } + +.item { + position: relative; } + +.item h2, h3 { + display: inline; + color: #000f40; } + +.item { + background: #ffffff; + color: #000000; + padding: 10px; + border-radius: 5px; } + +.item:hover h2:before { + content: ""; + width: 80%; + height: 2px; + background: #000e2f; + display: block; + position: absolute; + bottom: -2px; + left: 5%; } + +.margin-top-5p { + margin-top: 2.5%; } + +.margin-top-1p { + margin-top: 1%; } + +/* ========================================================================== + Helper classes + ========================================================================== */ +/* + * Hide visually and from screen readers + */ +.hidden { + display: none !important; } + +/* + * Hide only visually, but have it available for screen readers: + * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility + */ +.visuallyhidden { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; } + +/* + * Extends the .visuallyhidden class to allow the element + * to be focusable when navigated to via the keyboard: + * https://www.drupal.org/node/897638 + */ +.visuallyhidden.focusable:active, +.visuallyhidden.focusable:focus { + clip: auto; + height: auto; + margin: 0; + overflow: visible; + position: static; + width: auto; } + +/* + * Hide visually and from screen readers, but maintain layout + */ +.invisible { + visibility: hidden; } + +/* + * Clearfix: contain floats + * + * For modern browsers + * 1. The space content is one way to avoid an Opera bug when the + * `contenteditable` attribute is included anywhere else in the document. + * Otherwise it causes space to appear at the top and bottom of elements + * that receive the `clearfix` class. + * 2. The use of `table` rather than `block` is only necessary if using + * `:before` to contain the top-margins of child elements. + */ +.clearfix:before, +.clearfix:after { + content: " "; + /* 1 */ + display: table; + /* 2 */ } + +.clearfix:after { + clear: both; } + +/* ========================================================================== + EXAMPLE Media Queries for Responsive Design. + These examples override the primary ('mobile first') styles. + Modify as content requires. + ========================================================================== */ +@media only screen and (min-width: 35em) { + /* Style adjustments for viewports that meet the condition */ } +@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) { + /* Style adjustments for high resolution devices */ } +/* ========================================================================== + Print styles. + Inlined to avoid the additional HTTP request: + http://www.phpied.com/delay-loading-your-print-css/ + ========================================================================== */ +@media print { + *, + *:before, + *:after, + *:first-letter, + *:first-line { + background: transparent !important; + color: #000 !important; + /* Black prints faster: + http://www.sanbeiji.com/archives/953 */ + box-shadow: none !important; + text-shadow: none !important; } + + a, + a:visited { + text-decoration: underline; } + + a[href]:after { + content: " (" attr(href) ")"; } + + abbr[title]:after { + content: " (" attr(title) ")"; } + + /* + * Don't show links that are fragment identifiers, + * or use the `javascript:` pseudo protocol + */ + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; } + + pre, + blockquote { + border: 1px solid #999; + page-break-inside: avoid; } + + /* + * Printing Tables: + * http://css-discuss.incutio.com/wiki/Printing_Tables + */ + thead { + display: table-header-group; } + + tr, + img { + page-break-inside: avoid; } + + img { + max-width: 100% !important; } + + p, + h2, + h3 { + orphans: 3; + widows: 3; } + + h2, + h3 { + page-break-after: avoid; } } + +/*# sourceMappingURL=main.css.map */ diff --git a/src/resources/css/main.css.map b/src/resources/css/main.css.map new file mode 100644 index 0000000..a236843 --- /dev/null +++ b/src/resources/css/main.css.map @@ -0,0 +1,7 @@ +{ +"version": 3, +"mappings": "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", +"sources": ["../scss/main.scss"], +"names": [], +"file": "main.css" +} diff --git a/src/resources/index.html b/src/resources/index.html index f676b11..8d8725b 100644 --- a/src/resources/index.html +++ b/src/resources/index.html @@ -8,11 +8,16 @@ + + + + + @@ -29,7 +34,8 @@ - + + diff --git a/src/resources/js/main.js b/src/resources/js/main.js index 312dc4e..00d4650 100644 --- a/src/resources/js/main.js +++ b/src/resources/js/main.js @@ -5,11 +5,13 @@ app.config(function($routeProvider) { $routeProvider .when("/", { templateUrl : "tmpl/homeScreen.html", - controller: 'mainCtrl' + controller: 'mainCtrl', + controllerAs: "ctrl" }) .when("/classSearch", { templateUrl : "tmpl/dynamicClassSearch.html", - controller: "searchCtrl" + controller: "searchCtrl", + controllerAs: "ctrl" }) .otherwise( { redirectTo: '/' @@ -18,4 +20,57 @@ app.config(function($routeProvider) { app.controller('mainCtrl', function() {}); -app.controller('searchCtrl', function() {}); \ No newline at end of file +app.controller('searchCtrl', function() { + var ctrl = this; + ctrl.query = {}; + ctrl.options = { + "terms": [ + "Fall 2016", + "Spring 2017", + "Fall 2017" + ], + "sessions": [ + "Regular Academic", + "ECE Early College Experience", + "Graduate" + ], + "campuses": [ + "Storrs", + "Avery Point", + "Hartford" + ], + "departments" : [ + { "abbr": "CSE", + "full" : "Computer Science and Engineering" + }, + { "abbr": "DMD", + "full" : "Digital Media and Design" + } + ], + "checkboxes" : [ + { + "name": "open", + "value":false, + "label": "Open Only" + }, + { + "name": "honors", + "value":false, + "label": "Honors Only" + }, + { + "name": "quantitative", + "value":false, + "label": "Q Only" + }, + { + "name": "writing", + "value":false, + "label": "W Only" + } + + ] + }; + ctrl.chosen = { "term": false, "session": false, "campus": false}; + ctrl.test = "TEST"; +}); \ No newline at end of file diff --git a/src/resources/scss/main.scss b/src/resources/scss/main.scss index adac155..c2df476 100644 --- a/src/resources/scss/main.scss +++ b/src/resources/scss/main.scss @@ -95,18 +95,75 @@ textarea { Author's custom styles ========================================================================== */ +$font-stack: 'Roboto', sans-serif; +$uconn-blue: #000e2f; +$uconn-gray: #7c878e; +$red: #8a2121; +$purple: #563680; +$gold: #ce952e; +$green: #7c8e31; +$light-blue: #85b3cc; +$blue: #263a75; +$bold-weight: 500; +$medium-weight: 400; +$light-weight: 300; + +* { + box-sizing: border-box; +} +body { + font: $font-stack; + font-weight: $medium-weight; +} +.blue-back { + background:$blue; +} +.item, .item h2 { + margin: 0; + padding: 0; + transition: all .5s linear; +} +.item { + position:relative; +} +.item h2, h3 { + display: inline; + color: #000f40; + } +.item { + background: #ffffff; + color:#000000; + padding: 10px; + border-radius: 5px; +} +.item:hover h2:before { + content:""; + width: 80%; + height: 2px; + background: $uconn-blue; + display: block; + position: absolute; + bottom:-2px; + left:5%; +} +.margin-top-5p { + margin-top:2.5%; +} +.margin-top-1p { + margin-top: 1%; +} diff --git a/src/resources/tmpl/dynamicClassSearch.html b/src/resources/tmpl/dynamicClassSearch.html index dbea6b1..a117f00 100644 --- a/src/resources/tmpl/dynamicClassSearch.html +++ b/src/resources/tmpl/dynamicClassSearch.html @@ -1,3 +1,80 @@ -
-Dynamic Class Search + +
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+ +
+
+
+
+
+

CSE 1729

+

Intro to Principle Programming

+
+
+

Section: 002

+
+
+

Robert McCartney

+
+
+

Class: #12345

+
+
+

Location: CHEM 211

+
+
+
+ +
+
+
Time MWF 10:10 - 11:00 AM
+
Enrollment 32/75
+
Waitlist 0/25
+
+
+
+
+ + + + + + + + + + +