aladdin 0.0.8 → 0.1.0.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. data/LICENSE +1 -1
  2. data/README.md +8 -31
  3. data/lib/aladdin.rb +22 -23
  4. data/lib/aladdin/app.rb +10 -21
  5. data/lib/aladdin/commands/new.rb +2 -2
  6. data/lib/aladdin/config.rb +18 -32
  7. data/lib/aladdin/constants.rb +0 -18
  8. data/lib/aladdin/submission.rb +5 -4
  9. data/lib/aladdin/support.rb +0 -1
  10. data/lib/aladdin/support/weak_comparator.rb +2 -0
  11. data/lib/aladdin/version.rb +1 -2
  12. data/skeleton/manifest.yml +9 -0
  13. metadata +15 -111
  14. data/lib/aladdin/render.rb +0 -9
  15. data/lib/aladdin/render/error.rb +0 -17
  16. data/lib/aladdin/render/html.rb +0 -136
  17. data/lib/aladdin/render/sanitize.rb +0 -90
  18. data/lib/aladdin/render/templates.rb +0 -2
  19. data/lib/aladdin/render/templates/header.rb +0 -52
  20. data/lib/aladdin/render/templates/image.rb +0 -54
  21. data/lib/aladdin/render/templates/multi.rb +0 -40
  22. data/lib/aladdin/render/templates/navigation.rb +0 -34
  23. data/lib/aladdin/render/templates/problem.rb +0 -114
  24. data/lib/aladdin/render/templates/short.rb +0 -30
  25. data/lib/aladdin/render/templates/table.rb +0 -109
  26. data/lib/aladdin/render/templates/template.rb +0 -34
  27. data/lib/aladdin/support/logger.rb +0 -29
  28. data/skeleton/manifest.json +0 -10
  29. data/views/haml/exe.haml +0 -5
  30. data/views/haml/header.haml +0 -5
  31. data/views/haml/img.haml +0 -6
  32. data/views/haml/multi.haml +0 -16
  33. data/views/haml/nav.haml +0 -5
  34. data/views/haml/short.haml +0 -12
  35. data/views/haml/table.haml +0 -28
  36. data/views/scss/_forms.scss +0 -9
  37. data/views/scss/_github.scss +0 -65
  38. data/views/scss/_mathjax.scss +0 -5
  39. data/views/scss/_pygment.scss +0 -15
  40. data/views/scss/_settings.scss +0 -271
  41. data/views/scss/app.scss +0 -75
  42. data/views/scss/general_foundicons.scss +0 -71
  43. data/views/scss/general_foundicons_ie7.scss +0 -56
@@ -1,30 +0,0 @@
1
- # ~*~ encoding: utf-8 ~*~
2
- module Aladdin
3
-
4
- module Render
5
-
6
- # Renders short questions marked up in JSON as HTML.
7
- # @example
8
- # {
9
- # "format": "short",
10
- # "question": "What is the most commonly used word in English?",
11
- # "answer": "the"
12
- # }
13
- class Short < Problem
14
-
15
- # Name of template file for rendering short answer questions.
16
- TEMPLATE = 'short.haml'
17
-
18
- # Checks if the given json contains a valid MCQ.
19
- # @return [Boolean] true iff the json contains a valid MCQ.
20
- def valid?
21
- super and
22
- not @json[ANSWER].nil?
23
- end
24
-
25
- end
26
-
27
- end
28
-
29
- end
30
-
@@ -1,109 +0,0 @@
1
- # ~*~ encoding: utf-8 ~*~
2
- module Aladdin
3
-
4
- module Render
5
-
6
- # Renders table problems marked up in JSON as HTML.
7
- #
8
- # The grid should be given as a 2-dimensional array that represents the
9
- # table to be filled in. +"?"+ is a special token used in the grid to
10
- # indicate cells that require student input.
11
- #
12
- # The answer should also be given as a 2-dimensional array. However, a
13
- # dummy token may be used in cells that do not require student input to
14
- # cut redundancy. In the example below, the +"-"+ token is used.
15
- #
16
- # @example
17
- # {
18
- # "format": "table",
19
- # "question": "fill me in",
20
- # "grid": [[0, "?", 2], [3, "?", 5]],
21
- # "answer": [["-", 1, "-"], ["-", 4, "-"]
22
- # }
23
- class Table < Problem
24
-
25
- # Name of template file for rendering table problems.
26
- TEMPLATE = 'table.haml'
27
-
28
- # Optional headings key.
29
- HEADINGS = 'headings'
30
-
31
- # Required grid key.
32
- GRID = 'grid'
33
-
34
- # Special token indicating that the cell should be filled in.
35
- FILL_ME_IN = '?'
36
-
37
- accessor HEADINGS, GRID
38
-
39
- # Ensures that the +headings+ key exists.
40
- def initialize(json)
41
- json[HEADINGS] ||= nil
42
- super
43
- end
44
-
45
- # Checks if the given json contains a valid table.
46
- # @return [Boolean] true iff the json contains a valid table.
47
- def valid?
48
- super and
49
- valid_grid? and
50
- valid_answer?
51
- end
52
-
53
- # Gets the expected answer, in www-form-urlencoded format.
54
- # @return [Hash] answers, as expected from student's form submission
55
- def answer
56
- return @answer unless @answer.nil?
57
- @answer = encode_answer
58
- end
59
-
60
- # @return [Boolean] true iff the given cell is an input cell
61
- def self.input?(cell)
62
- cell == FILL_ME_IN
63
- end
64
-
65
- private
66
-
67
- # Iterates through each cell in the provided grid to look for answers
68
- # cells that require input and takes the answer from the answers array.
69
- # For example, if the answer for a cell at [0][1] is 6, the returned
70
- # hash will contain
71
- #
72
- # {'0' => {'1' => 6}}
73
- #
74
- # @return [Hash] answers
75
- def encode_answer
76
- encoded, ans = {}, @json[ANSWER]
77
- grid.each_with_index do |row, i|
78
- row.each_with_index do |cell, j|
79
- next unless Table.input? cell
80
- encoded[i.to_s] ||= {}
81
- encoded[i.to_s][j.to_s] = serialize ans[i][j]
82
- end
83
- end
84
- encoded
85
- end
86
-
87
- # @return [Boolean] true iff the json contains a valid grid.
88
- def valid_grid?
89
- @json.has_key? GRID and is_2d_array? grid
90
- end
91
-
92
- # @return [Boolean] true iff +answer+ is a valid 2D array and has the
93
- # same number of rows as +grid+.
94
- def valid_answer?
95
- ans = @json[ANSWER]
96
- is_2d_array? ans and ans.size == grid.size
97
- end
98
-
99
- # @return [Boolean] true iff +t+ is a 2-dimensional array.
100
- def is_2d_array?(t)
101
- t.is_a? Array and t.all? { |row| row.is_a? Array }
102
- end
103
-
104
- end
105
-
106
- end
107
-
108
- end
109
-
@@ -1,34 +0,0 @@
1
- # ~*~ encoding: utf-8 ~*~
2
- module Aladdin
3
-
4
- module Render
5
-
6
- # Base class for all templates. Child classes should provide a +TEMPLATE+
7
- # string constant that contains the path to the relevant HAML file.
8
- class Template
9
-
10
- # Renders the given problem using {#view}.
11
- # @todo TODO should probably show some error message in the preview,
12
- # so that the author doesn't have to read the logs.
13
- # @param [Hash] locals local variables to pass to the template
14
- def render(locals={})
15
- view.render Object.new, locals
16
- end
17
-
18
- private
19
-
20
- # Retrieves the +view+ singleton. If it is nil, initializes it from
21
- # +self.class.TEMPLATE+. Note that this is reloaded with every refresh so
22
- # I can edit the templates without refreshing.
23
- # @return [Haml::Engine] haml engine
24
- def view
25
- return @view unless @view.nil?
26
- file = File.join Aladdin::VIEWS[:haml], self.class::TEMPLATE
27
- @view = Haml::Engine.new(File.read file, format: :html5)
28
- end
29
-
30
- end
31
-
32
- end
33
-
34
- end
@@ -1,29 +0,0 @@
1
- # ~*~ encoding: utf-8 ~*~
2
- require 'active_support/core_ext/logger'
3
-
4
- module Aladdin
5
-
6
- module Support
7
-
8
- # Provides a convenient global logger.
9
- # @example
10
- # class X
11
- # include Logger
12
- # def x; logger.info "hey"; end
13
- # end
14
- # @todo FIXME allow configuration
15
- module Logger
16
-
17
- # Global logger.
18
- LOGGER = ::Logger.new(STDOUT)
19
-
20
- # Retrieves the global logger.
21
- def logger
22
- Logger::LOGGER
23
- end
24
-
25
- end
26
-
27
- end
28
-
29
- end
@@ -1,10 +0,0 @@
1
- {
2
- "title": "A Genie Lesson",
3
- "description": "Hello World! Welcome to your first lesson.",
4
- "categories": [
5
- "ruby",
6
- "programming",
7
- "software"
8
- ],
9
- "static_paths": ["images"]
10
- }
@@ -1,5 +0,0 @@
1
- -# coding: UTF-8
2
- %form{id: id}
3
- %input.ex-raw{type: 'hidden', value: raw}
4
- %input.ex-id{type: 'hidden', value: id}
5
- %a.button.run{href: "#"} Run
@@ -1,5 +0,0 @@
1
- -# coding: UTF-8
2
- -haml_tag ('h%d' % level).to_sym do
3
- %a.anchor{name: name, href: '#' + name, 'data-magellan-destination' => name}
4
- %i.foundicon-paper-clip
5
- =text
@@ -1,6 +0,0 @@
1
- -# coding: UTF-8
2
- .block-image
3
- = img
4
- %p
5
- %strong Figure #{index}:
6
- = caption
@@ -1,16 +0,0 @@
1
- -# coding: UTF-8
2
- %form.problem{action: 'verify/problem/' + id, 'accept-charset' => 'UTF-8', id: "problem_#{id}", method: 'post'}
3
- %fieldset
4
-
5
- %legend Problem #{index}
6
- %p= question
7
-
8
- .row.collapse
9
- .ten.mobile-three.columns
10
- -options.each do |value, label|
11
- %label{for: 'answer'}
12
- %input{name: 'answer', type: 'radio', value: value}
13
- = label
14
- .two.mobile-one.columns
15
- %a.button.submit.small.expand.postfix.radius{href: '#'} Submit
16
-
@@ -1,5 +0,0 @@
1
- -# coding: UTF-8
2
- %dl#sections.sub-nav{'data-magellan-expedition' => 'fixed'}
3
- -sections.each do |name, heading|
4
- %dd{'data-magellan-arrival' => name}
5
- %a{href: '#' + name}= heading
@@ -1,12 +0,0 @@
1
- -# coding: UTF-8
2
- %form.problem{action: 'verify/problem/' + id, 'accept-charset' => 'UTF-8', id: "problem_#{id}", method: 'post'}
3
- %fieldset
4
-
5
- %legend Problem #{index}
6
- %p= question
7
-
8
- .row.collapse
9
- .ten.mobile-three.columns
10
- %input{name: 'answer', type: 'text'}
11
- .two.mobile-one.columns
12
- %a.button.small.submit.expand.postfix.radius{href: '#'} Submit
@@ -1,28 +0,0 @@
1
- -# coding: UTF-8
2
- %form.problem{action: 'verify/problem/' + id, 'accept-charset' => 'UTF-8', id: "problem_#{id}", method: 'post'}
3
- %fieldset
4
-
5
- %legend Problem #{index}
6
- %p= question
7
-
8
- .row
9
- .twelve.columns
10
- %table
11
- %thead
12
- -if headings
13
- %tr
14
- -headings.each do |heading|
15
- %th= heading
16
-
17
- %tbody
18
- -grid.each_with_index do |row, i|
19
- %tr
20
- -row.each_with_index do |cell, j|
21
- %td
22
- - if Aladdin::Render::Table.input? cell
23
- %input{name: "answer[#{i}][#{j}]", type: 'text'}
24
- - else
25
- = cell
26
- .row
27
- .two.columns.mobile-one
28
- %a.button.small.submit.radius{href: '#'} Submit
@@ -1,9 +0,0 @@
1
- @import "settings";
2
-
3
- /* Successes */
4
- .success input, input.success, .success textarea, textarea.success { border-color: $successColor; background-color: rgba($successColor, 0.1); }
5
- .success label, label.success { color: $successColor; }
6
- .success small, small.success { display: block; padding: 6px 4px; margin-top: -($formSpacing) - 1; margin-bottom: $formSpacing; background: $successColor; color: #fff; font-size: ms(0) - 2; font-weight: bold; @include border-corner-radius(bottom, $defaultFloat, $inputBorderRadius); @include border-corner-radius(bottom, $defaultOpposite, $inputBorderRadius); }
7
- .success textarea, textarea.success {
8
- &:focus { background: darken($white, 2%); border-color: darken($white, 30%); }
9
- }
@@ -1,65 +0,0 @@
1
- /*
2
- * Taken from https://github.com/richleland/pygments-css/, but it probably
3
- * belongs to GitHub.
4
- */
5
- .hll { background-color: #ffffcc }
6
- .c { color: #999988; font-style: italic } /* Comment */
7
- .err { color: #a61717; background-color: #e3d2d2 } /* Error */
8
- .k { color: #000000; font-weight: bold } /* Keyword */
9
- .o { color: #000000; font-weight: bold } /* Operator */
10
- .cm { color: #999988; font-style: italic } /* Comment.Multiline */
11
- .cp { color: #999999; font-weight: bold; font-style: italic } /* Comment.Preproc */
12
- .c1 { color: #999988; font-style: italic } /* Comment.Single */
13
- .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
14
- .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
15
- .ge { color: #000000; font-style: italic } /* Generic.Emph */
16
- .gr { color: #aa0000 } /* Generic.Error */
17
- .gh { color: #999999 } /* Generic.Heading */
18
- .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
19
- .go { color: #888888 } /* Generic.Output */
20
- .gp { color: #555555 } /* Generic.Prompt */
21
- .gs { font-weight: bold } /* Generic.Strong */
22
- .gu { color: #aaaaaa } /* Generic.Subheading */
23
- .gt { color: #aa0000 } /* Generic.Traceback */
24
- .kc { color: #000000; font-weight: bold } /* Keyword.Constant */
25
- .kd { color: #000000; font-weight: bold } /* Keyword.Declaration */
26
- .kn { color: #000000; font-weight: bold } /* Keyword.Namespace */
27
- .kp { color: #000000; font-weight: bold } /* Keyword.Pseudo */
28
- .kr { color: #000000; font-weight: bold } /* Keyword.Reserved */
29
- .kt { color: #445588; font-weight: bold } /* Keyword.Type */
30
- .m { color: #009999 } /* Literal.Number */
31
- .s { color: #d01040 } /* Literal.String */
32
- .na { color: #008080 } /* Name.Attribute */
33
- .nb { color: #0086B3 } /* Name.Builtin */
34
- .nc { color: #445588; font-weight: bold } /* Name.Class */
35
- .no { color: #008080 } /* Name.Constant */
36
- .nd { color: #3c5d5d; font-weight: bold } /* Name.Decorator */
37
- .ni { color: #800080 } /* Name.Entity */
38
- .ne { color: #990000; font-weight: bold } /* Name.Exception */
39
- .nf { color: #990000; font-weight: bold } /* Name.Function */
40
- .nl { color: #990000; font-weight: bold } /* Name.Label */
41
- .nn { color: #555555 } /* Name.Namespace */
42
- .nt { color: #000080 } /* Name.Tag */
43
- .nv { color: #008080 } /* Name.Variable */
44
- .ow { color: #000000; font-weight: bold } /* Operator.Word */
45
- .w { color: #bbbbbb } /* Text.Whitespace */
46
- .mf { color: #009999 } /* Literal.Number.Float */
47
- .mh { color: #009999 } /* Literal.Number.Hex */
48
- .mi { color: #009999 } /* Literal.Number.Integer */
49
- .mo { color: #009999 } /* Literal.Number.Oct */
50
- .sb { color: #d01040 } /* Literal.String.Backtick */
51
- .sc { color: #d01040 } /* Literal.String.Char */
52
- .sd { color: #d01040 } /* Literal.String.Doc */
53
- .s2 { color: #d01040 } /* Literal.String.Double */
54
- .se { color: #d01040 } /* Literal.String.Escape */
55
- .sh { color: #d01040 } /* Literal.String.Heredoc */
56
- .si { color: #d01040 } /* Literal.String.Interpol */
57
- .sx { color: #d01040 } /* Literal.String.Other */
58
- .sr { color: #009926 } /* Literal.String.Regex */
59
- .s1 { color: #d01040 } /* Literal.String.Single */
60
- .ss { color: #990073 } /* Literal.String.Symbol */
61
- .bp { color: #999999 } /* Name.Builtin.Pseudo */
62
- .vc { color: #008080 } /* Name.Variable.Class */
63
- .vg { color: #008080 } /* Name.Variable.Global */
64
- .vi { color: #008080 } /* Name.Variable.Instance */
65
- .il { color: #009999 } /* Literal.Number.Integer.Long */
@@ -1,5 +0,0 @@
1
- @import "settings";
2
-
3
- .MathJax {
4
- color: darken($mainColor, 20%);
5
- }
@@ -1,15 +0,0 @@
1
- @import "settings";
2
-
3
- /* code blocks */
4
- pre {
5
- background-color: lighten(#000, 97.5%);
6
- border: 1px solid lighten(#000, 80%);
7
- overflow: auto;
8
- padding: 6px 10px;
9
- border-radius: $tableBorderRadius;
10
- font-size: ms(0) - 1;
11
- line-height: 1.6;
12
- font-family: Consolas, 'Liberation Mono', monospace;
13
- margin-bottom: ms(1);
14
- -webkit-font-smoothing: auto;
15
- }
@@ -1,271 +0,0 @@
1
- @import "foundation/common/ratios";
2
-
3
- // Settings file containing Foundation defaults
4
-
5
- // Grid Settings
6
-
7
- // $rowWidth: 1000px;
8
- // $columnGutter: 30px;
9
- // $totalColumns: 12;
10
- // $mobileTotalColumns: 4;
11
- // $blockGridElements: 12; // Highest number of block grid elements, Maximum of 24 supported
12
-
13
- // Colors Settings
14
-
15
- // $mainColor: #2ba6cb;
16
- // $secondaryColor: #e9e9e9;
17
- // $alertColor: #c60f13;
18
- // $successColor: #5da423;
19
- // $txtColor: #222;
20
- // $highlightColor: #ffff99;
21
- // $black: #000;
22
- // $white: #fff;
23
- // $shinyEdge: rgba(#fff, .5);
24
- // $darkEdge: rgba(#000, .2);
25
-
26
- // Font Settings
27
-
28
- // $headerFontFamily: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
29
- // $headerFontWeight: bold;
30
- // $headerFontStyle: normal;
31
- // $headerFontColor: #222;
32
- // $bodyFontFamily: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
33
- // $bodyFontWeight: normal;
34
- // $bodyFontStyle: normal;
35
- // $bodyFontColor: $txtColor;
36
-
37
- // Text Direction Settings
38
-
39
- // $textDirection: ltr; // Controls default global text direction, 'rtl' or 'ltr'
40
-
41
- // Button Settings
42
-
43
- // $buttonRadius: 3px;
44
- // $btnBase: 10px;
45
-
46
- // $tinyBtnBase: $btnBase - 5;
47
- // $smallBtnBase: $btnBase - 3;
48
- // $largeBtnBase: $btnBase + 5;
49
-
50
- // Form Settings
51
-
52
- // $formSpacing: 12px;
53
- // $labelFontWeight: 500;
54
- // $labelFontColor: lighten(#000, 30%);
55
- // $labelBtmMargin: 3px;
56
- // $inputFontColor: rgba(0,0,0,0.75);
57
- // $inputFontSize: 14px;
58
- // $inputBgColor: #fff;
59
- // $inputFocusBgColor: darken(#fff, 2%);
60
- // $inputBorderColor: darken(#fff, 20%);
61
- // $inputFocusBorderColor: darken(#fff, 30%);
62
- // $inputBorderStyle: solid;
63
- // $inputBorderWidth: 1px;
64
- // $inputBorderRadius: 2px;
65
- // $fieldsetBorderRadius: 3px;
66
-
67
- // Custom Form Settings
68
-
69
- // $custFormBorderColor: #ccc;
70
- // $custFormBgColor: #fff;
71
- // $custCheckColor: #222;
72
- // $custSelectCurrentFontColor: #141414;
73
- // $custSelectBgColor: #fff;
74
- // $custSelectBorderColor: #ddd;
75
- // $custSelectTriangleColor: #aaa;
76
- // $custSelectTriangleColorOpen: #222;
77
- // $custSelectDropHeight: 200px;
78
- // $custDropdownBgColor: #fff;
79
- // $custDropdownBorderColor: darken(#fff, 20%);
80
- // $custDropdownFontColor: #555;
81
- // $custDropdownSelectedBgColor: lighten(#2ba6cb, 40%);
82
- // $custDropdownSelectedFontColor: #000;
83
- // $custFormDisabledBgColor: #ddd;
84
-
85
- // Tab Settings
86
-
87
- // $tabHeight: 40px;
88
- // $tabTermFontSize: 12px;
89
-
90
- // Nav Bar Settings
91
-
92
- // $navBarHeight: 40px;
93
- // $navFlyoutBaseWidth: 250px;
94
-
95
- // Top Bar Settings
96
-
97
- // $topBarBgColor: #222;
98
- // $topBarHeight: 45px;
99
- // $topBarHeightMobile: 45px;
100
- // $topBarBtmMargin: 30px;
101
- // $topBarTitleWeight: bold;
102
- // $topBarTitleSize: 17px;
103
- // $topBarLinkColor: #fff;
104
- // $topBarLinkWeight: bold;
105
- // $topBarLinkSize: 13px;
106
- // $topBarDropBgColor: #222;
107
- // $topBarDropLinkColor: #fff;
108
- // $topBarDropToggleSize: 5px;
109
- // $topBarDropToggleColor: #fff;
110
- // $topBarDropToggleAlpha: 0.5;
111
- // $topBarSearchWidth: 200px;
112
- // $topBarBreakPoint: 940px; // Change to 9999px for always mobile layout
113
- // $topBarNavToggleSize: 8px;
114
-
115
- // UI Settings
116
-
117
- // $thumbRadius: 3px;
118
- // $progBarHeight: 25px;
119
- // $progBarBorderColor: darken(#fff, 20%);
120
- // $progBarBorderSize: 1px;
121
- // $progBarPad: 2px;
122
- // $linkListBottomMargin: 17px -22px;
123
- // $tableBorderRadius: 3px;
124
-
125
- // Tooltip Settings
126
-
127
- // $hasTipBorderBottom: dotted 1px #ccc;
128
- // $hasTipFontWeight: bold;
129
- // $hasTipFontColor: #333;
130
- // $hasTipBorderBottomHover: dotted 1px darken($mainColor, 20%);
131
- // $hasTipFontColorHover: $mainColor;
132
- // $tooltipBackgroundColor: #000;
133
- // $tooltipBackgroundOpacity: 0.85;
134
- // $tooltipFontSize: 12px;
135
- // $tooltipFontWeight: bold;
136
- // $tooltipFontColor: #fff;
137
- // $tapToCloseFontSize: 10;
138
- // $tapToCloseFontWeight: normal;
139
- // $tapToCloseFontColor: #888;
140
- // $tooltipFontSizeScreenSm: 14;
141
- // $tooltipBgOpacityScreenSm: 0.85;
142
- // $tooltipBorderRadius: 4px;
143
-
144
- // Pricing Table Settings
145
-
146
- // $priceTableBorder: solid 1px #ddd;
147
- // $priceTitleBgColor: #ddd;
148
- // $priceTitlePadding: 15px 20px;
149
- // $priceTitleAlign: center;
150
- // $priceTitleColor: #333;
151
- // $priceTitleWeight: bold;
152
- // $priceTitleSize: 16px;
153
-
154
- // $priceMoneyBgColor: #eee;
155
- // $priceMoneyPadding: 15px 20px;
156
- // $priceMoneyAlign: center;
157
- // $priceMoneyColor: #333;
158
- // $priceMoneyWeight: normal;
159
- // $priceMoneySize: 20px;
160
-
161
- // $priceBgColor: #fff;
162
- // $priceDescColor: #777;
163
- // $priceDescPadding: 15px;
164
- // $priceDescAlign: center;
165
- // $priceDescFontSize: 12px;
166
- // $priceDescWeight: normal;
167
- // $priceDescLineHeight: 1.4;
168
- // $priceDescBtmBorder: dotted 1px #ddd;
169
-
170
- // $priceItemColor: #333;
171
- // $priceItemPadding: 15px;
172
- // $priceItemAlign: center;
173
- // $priceItemFontSize: 14px;
174
- // $priceItemWeight: normal;
175
- // $priceItemBtmBorder: dotted 1px #ddd;
176
-
177
- // $priceCtaBgColor: #f5f5f5;
178
- // $priceCtaAlign: center;
179
- // $priceCtaPadding: 20px;
180
-
181
- // Orbit Settings
182
-
183
- // $orbitCaptionBgColorOldBrowser: #000;
184
- // $orbitCaptionBgColor: rgba(0,0,0,.6);
185
- // $orbitCaptionFontColor: #fff;
186
- // $orbitBulletNavColor: #999;
187
- // $orbitBulletNavColorActive: #222;
188
- // $orbitHasThumbBorderColor: #000;
189
- // $orbitHasThumbBorderWidth: 2px;
190
- // $orbitHasThumbBorderStyle: solid;
191
- // $orbitSlideNumBgColor: rgba(0,0,0,0.7);
192
- // $orbitSlideNumFontColor: #fff;
193
- // $orbitSlideNumPadding: 5px;
194
-
195
- // Clearing Settings
196
-
197
- // $clearingBg: rgba(0,0,0,0.8);
198
- // $clearingOldBrowserBg: rgb(0,0,0);
199
- // $clearingCaptionBg: rgba(0,0,0,0.7);
200
- // $clearingCaptionOldBrowserBg: rgb(0,0,0);
201
- // $clearingCaptionFontColor: #fff;
202
- // $clearingCloseColor: #fff;
203
- // $clearingArrowColor: #fff;
204
- // $clearingArrowSize: 16px;
205
- // $clearingCarouselBg: rgba(0,0,0,0.75);
206
- // $clearingCarouselOldBrowserBg: rgb(0,0,0);
207
- // $clearingCarouselHeight: 150px;
208
- // $clearingActiveImgHeight: 75%;
209
- // $clearingCarouselThumbWidth: 175px;
210
- // $clearingCarouselThumbActiveBorder: 4px solid rgb(255,255,255);
211
- // $clearingImgBg: rgba(0,0,0,0.75);
212
- // $clearingImgOldBrowserBg: rgb(0,0,0);
213
-
214
- // Joyride Settings
215
-
216
- // $tipBg: rgba(0,0,0,0.8);
217
- // $tipBgIE8: #000;
218
- // $tipFontColor: #fff;
219
- // $tipHeaderWeight: bold;
220
- // $tipDefaultWidth: 300px;
221
- // $tipBorderRadius: 4px;
222
- // $tipPadding: 18px 20px 24px;
223
- // $tipNubSize: 14px;
224
- // $tipFontSize: 14px;
225
- // $tipTimerWidth: 50px;
226
- // $tipTimerHeight: 3px;
227
- // $tipTimerBorder: solid 1px #555;
228
- // $tipTimerColor: #666;
229
- // $tipCloseColor: #777;
230
- // $tipCloseSize: 20px;
231
- // $tipCloseWeight: normal;
232
- // $tipScreenFill: rgba(0,0,0,0.5);
233
-
234
- // Modular Scale Settings
235
-
236
- // $ratio: $golden; // THIS IS DEFAULT IN MODULAR-SCALE
237
- // $baseFontSize: 14px;
238
- // $importantModNum: 44px;
239
- // $base-size: $baseFontSize $importantModNum;
240
- // Produced the following list of values: 14, 17, 23, 27, 37, 44, 59, 71, 95, 115;
241
- // http://www.modularscale.com by Tim Brown
242
- // https://github.com/scottkellum/modular-scale by scottkellum
243
-
244
- $fontFileName: "/__font/general_foundicons";
245
- $fontName: "GeneralFoundicons";
246
- $classPrefix: "foundicon-";
247
-
248
- @mixin i-class($name,$pua) {
249
- .#{$classPrefix}#{$name}:before {
250
- content: "\f#{$pua}";
251
- }
252
- }
253
-
254
- @mixin ie-class($name,$pua) {
255
- .#{$classPrefix}#{$name} {
256
- *zoom: expression( this.runtimeStyle['zoom'] = "1", this.innerHTML = "&#xf#{$pua};");
257
- }
258
- }
259
-
260
- @mixin face {
261
- @font-face {
262
- font-family: $fontName;
263
- src: url('#{$fontFileName}.eot');
264
- src: url('#{$fontFileName}.eot?#iefix') format('embedded-opentype'),
265
- url('#{$fontFileName}.woff') format('woff'),
266
- url('#{$fontFileName}.ttf') format('truetype'),
267
- url('#{$fontFileName}.svg##{$fontName}') format('svg');
268
- font-weight: normal;
269
- font-style: normal;
270
- }
271
- }