friendly_postgres 0.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. data/.document +2 -0
  2. data/.gitignore +26 -0
  3. data/APACHE-LICENSE +202 -0
  4. data/CHANGELOG.md +19 -0
  5. data/CONTRIBUTORS.md +7 -0
  6. data/LICENSE +20 -0
  7. data/README.md +265 -0
  8. data/Rakefile +68 -0
  9. data/TODO.md +5 -0
  10. data/VERSION +1 -0
  11. data/examples/friendly.yml +7 -0
  12. data/friendly.gemspec +232 -0
  13. data/lib/friendly.rb +54 -0
  14. data/lib/friendly/associations.rb +7 -0
  15. data/lib/friendly/associations/association.rb +34 -0
  16. data/lib/friendly/associations/set.rb +37 -0
  17. data/lib/friendly/attribute.rb +91 -0
  18. data/lib/friendly/boolean.rb +10 -0
  19. data/lib/friendly/cache.rb +24 -0
  20. data/lib/friendly/cache/by_id.rb +33 -0
  21. data/lib/friendly/config.rb +5 -0
  22. data/lib/friendly/data_store.rb +72 -0
  23. data/lib/friendly/document.rb +257 -0
  24. data/lib/friendly/document_table.rb +56 -0
  25. data/lib/friendly/index.rb +73 -0
  26. data/lib/friendly/memcached.rb +48 -0
  27. data/lib/friendly/named_scope.rb +17 -0
  28. data/lib/friendly/newrelic.rb +6 -0
  29. data/lib/friendly/query.rb +42 -0
  30. data/lib/friendly/scope.rb +100 -0
  31. data/lib/friendly/scope_proxy.rb +45 -0
  32. data/lib/friendly/sequel_monkey_patches.rb +34 -0
  33. data/lib/friendly/storage.rb +31 -0
  34. data/lib/friendly/storage_factory.rb +24 -0
  35. data/lib/friendly/storage_proxy.rb +103 -0
  36. data/lib/friendly/table.rb +15 -0
  37. data/lib/friendly/table_creator.rb +48 -0
  38. data/lib/friendly/time.rb +14 -0
  39. data/lib/friendly/translator.rb +32 -0
  40. data/lib/friendly/uuid.rb +148 -0
  41. data/rails/init.rb +3 -0
  42. data/spec/config.yml.example +7 -0
  43. data/spec/fakes/data_store_fake.rb +29 -0
  44. data/spec/fakes/database_fake.rb +12 -0
  45. data/spec/fakes/dataset_fake.rb +28 -0
  46. data/spec/fakes/document.rb +18 -0
  47. data/spec/fakes/serializer_fake.rb +12 -0
  48. data/spec/fakes/time_fake.rb +12 -0
  49. data/spec/integration/ad_hoc_scopes_spec.rb +42 -0
  50. data/spec/integration/basic_object_lifecycle_spec.rb +114 -0
  51. data/spec/integration/batch_insertion_spec.rb +29 -0
  52. data/spec/integration/convenience_api_spec.rb +25 -0
  53. data/spec/integration/count_spec.rb +12 -0
  54. data/spec/integration/default_value_spec.rb +15 -0
  55. data/spec/integration/find_via_cache_spec.rb +101 -0
  56. data/spec/integration/finder_spec.rb +64 -0
  57. data/spec/integration/has_many_spec.rb +18 -0
  58. data/spec/integration/index_spec.rb +57 -0
  59. data/spec/integration/named_scope_spec.rb +34 -0
  60. data/spec/integration/pagination_spec.rb +63 -0
  61. data/spec/integration/scope_chaining_spec.rb +22 -0
  62. data/spec/integration/table_creator_spec.rb +64 -0
  63. data/spec/integration/write_through_cache_spec.rb +53 -0
  64. data/spec/spec.opts +1 -0
  65. data/spec/spec_helper.rb +103 -0
  66. data/spec/unit/associations/association_spec.rb +57 -0
  67. data/spec/unit/associations/set_spec.rb +43 -0
  68. data/spec/unit/attribute_spec.rb +105 -0
  69. data/spec/unit/cache_by_id_spec.rb +102 -0
  70. data/spec/unit/cache_spec.rb +21 -0
  71. data/spec/unit/config_spec.rb +4 -0
  72. data/spec/unit/data_store_spec.rb +188 -0
  73. data/spec/unit/document_spec.rb +358 -0
  74. data/spec/unit/document_table_spec.rb +126 -0
  75. data/spec/unit/friendly_spec.rb +25 -0
  76. data/spec/unit/index_spec.rb +196 -0
  77. data/spec/unit/memcached_spec.rb +114 -0
  78. data/spec/unit/named_scope_spec.rb +16 -0
  79. data/spec/unit/query_spec.rb +104 -0
  80. data/spec/unit/scope_proxy_spec.rb +44 -0
  81. data/spec/unit/scope_spec.rb +113 -0
  82. data/spec/unit/storage_factory_spec.rb +59 -0
  83. data/spec/unit/storage_proxy_spec.rb +218 -0
  84. data/spec/unit/translator_spec.rb +96 -0
  85. data/website/index.html +210 -0
  86. data/website/scripts/clipboard.swf +0 -0
  87. data/website/scripts/shBrushAS3.js +61 -0
  88. data/website/scripts/shBrushBash.js +66 -0
  89. data/website/scripts/shBrushCSharp.js +67 -0
  90. data/website/scripts/shBrushColdFusion.js +102 -0
  91. data/website/scripts/shBrushCpp.js +99 -0
  92. data/website/scripts/shBrushCss.js +93 -0
  93. data/website/scripts/shBrushDelphi.js +57 -0
  94. data/website/scripts/shBrushDiff.js +43 -0
  95. data/website/scripts/shBrushErlang.js +54 -0
  96. data/website/scripts/shBrushGroovy.js +69 -0
  97. data/website/scripts/shBrushJScript.js +52 -0
  98. data/website/scripts/shBrushJava.js +59 -0
  99. data/website/scripts/shBrushJavaFX.js +60 -0
  100. data/website/scripts/shBrushPerl.js +74 -0
  101. data/website/scripts/shBrushPhp.js +91 -0
  102. data/website/scripts/shBrushPlain.js +35 -0
  103. data/website/scripts/shBrushPowerShell.js +76 -0
  104. data/website/scripts/shBrushPython.js +66 -0
  105. data/website/scripts/shBrushRuby.js +57 -0
  106. data/website/scripts/shBrushScala.js +53 -0
  107. data/website/scripts/shBrushSql.js +68 -0
  108. data/website/scripts/shBrushVb.js +58 -0
  109. data/website/scripts/shBrushXml.js +71 -0
  110. data/website/scripts/shCore.js +30 -0
  111. data/website/scripts/shLegacy.js +30 -0
  112. data/website/styles/friendly.css +103 -0
  113. data/website/styles/help.png +0 -0
  114. data/website/styles/ie.css +35 -0
  115. data/website/styles/magnifier.png +0 -0
  116. data/website/styles/page_white_code.png +0 -0
  117. data/website/styles/page_white_copy.png +0 -0
  118. data/website/styles/print.css +29 -0
  119. data/website/styles/printer.png +0 -0
  120. data/website/styles/screen.css +257 -0
  121. data/website/styles/shCore.css +330 -0
  122. data/website/styles/shThemeDefault.css +173 -0
  123. data/website/styles/shThemeDjango.css +176 -0
  124. data/website/styles/shThemeEclipse.css +190 -0
  125. data/website/styles/shThemeEmacs.css +175 -0
  126. data/website/styles/shThemeFadeToGrey.css +177 -0
  127. data/website/styles/shThemeMidnight.css +175 -0
  128. data/website/styles/shThemeRDark.css +175 -0
  129. metadata +302 -0
Binary file
@@ -0,0 +1,35 @@
1
+ /* -----------------------------------------------------------------------
2
+
3
+
4
+ Blueprint CSS Framework 0.9
5
+ http://blueprintcss.org
6
+
7
+ * Copyright (c) 2007-Present. See LICENSE for more info.
8
+ * See README for instructions on how to use Blueprint.
9
+ * For credits and origins, see AUTHORS.
10
+ * This is a compressed file. See the sources in the 'src' directory.
11
+
12
+ ----------------------------------------------------------------------- */
13
+
14
+ /* ie.css */
15
+ body {text-align:center;}
16
+ .container {text-align:left;}
17
+ * html .column, * html div.span-1, * html div.span-2, * html div.span-3, * html div.span-4, * html div.span-5, * html div.span-6, * html div.span-7, * html div.span-8, * html div.span-9, * html div.span-10, * html div.span-11, * html div.span-12, * html div.span-13, * html div.span-14, * html div.span-15, * html div.span-16, * html div.span-17, * html div.span-18, * html div.span-19, * html div.span-20, * html div.span-21, * html div.span-22, * html div.span-23, * html div.span-24 {display:inline;overflow-x:hidden;}
18
+ * html legend {margin:0px -8px 16px 0;padding:0;}
19
+ sup {vertical-align:text-top;}
20
+ sub {vertical-align:text-bottom;}
21
+ html>body p code {*white-space:normal;}
22
+ hr {margin:-8px auto 11px;}
23
+ img {-ms-interpolation-mode:bicubic;}
24
+ .clearfix, .container {display:inline-block;}
25
+ * html .clearfix, * html .container {height:1%;}
26
+ fieldset {padding-top:0;}
27
+ textarea {overflow:auto;}
28
+ input.text, input.title, textarea {background-color:#fff;border:1px solid #bbb;}
29
+ input.text:focus, input.title:focus {border-color:#666;}
30
+ input.text, input.title, textarea, select {margin:0.5em 0;}
31
+ input.checkbox, input.radio {position:relative;top:.25em;}
32
+ form.inline div, form.inline p {vertical-align:middle;}
33
+ form.inline label {position:relative;top:-0.25em;}
34
+ form.inline input.checkbox, form.inline input.radio, form.inline input.button, form.inline button {margin:0.5em 0;}
35
+ button, input.button {position:relative;top:0.25em;}
@@ -0,0 +1,29 @@
1
+ /* -----------------------------------------------------------------------
2
+
3
+
4
+ Blueprint CSS Framework 0.9
5
+ http://blueprintcss.org
6
+
7
+ * Copyright (c) 2007-Present. See LICENSE for more info.
8
+ * See README for instructions on how to use Blueprint.
9
+ * For credits and origins, see AUTHORS.
10
+ * This is a compressed file. See the sources in the 'src' directory.
11
+
12
+ ----------------------------------------------------------------------- */
13
+
14
+ /* print.css */
15
+ body {line-height:1.5;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;color:#000;background:none;font-size:10pt;}
16
+ .container {background:none;}
17
+ hr {background:#ccc;color:#ccc;width:100%;height:2px;margin:2em 0;padding:0;border:none;}
18
+ hr.space {background:#fff;color:#fff;visibility:hidden;}
19
+ h1, h2, h3, h4, h5, h6 {font-family:"Helvetica Neue", Arial, "Lucida Grande", sans-serif;}
20
+ code {font:.9em "Courier New", Monaco, Courier, monospace;}
21
+ a img {border:none;}
22
+ p img.top {margin-top:0;}
23
+ blockquote {margin:1.5em;padding:1em;font-style:italic;font-size:.9em;}
24
+ .small {font-size:.9em;}
25
+ .large {font-size:1.1em;}
26
+ .quiet {color:#999;}
27
+ .hide {display:none;}
28
+ a:link, a:visited {background:transparent;font-weight:700;text-decoration:underline;}
29
+ a:link:after, a:visited:after {content:" (" attr(href) ")";font-size:90%;}
@@ -0,0 +1,257 @@
1
+ /* -----------------------------------------------------------------------
2
+
3
+
4
+ Blueprint CSS Framework 0.9
5
+ http://blueprintcss.org
6
+
7
+ * Copyright (c) 2007-Present. See LICENSE for more info.
8
+ * See README for instructions on how to use Blueprint.
9
+ * For credits and origins, see AUTHORS.
10
+ * This is a compressed file. See the sources in the 'src' directory.
11
+
12
+ ----------------------------------------------------------------------- */
13
+
14
+ /* reset.css */
15
+ html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
16
+ body {line-height:1.5;}
17
+ table {border-collapse:separate;border-spacing:0;}
18
+ caption, th, td {text-align:left;font-weight:normal;}
19
+ table, td, th {vertical-align:middle;}
20
+ blockquote:before, blockquote:after, q:before, q:after {content:"";}
21
+ blockquote, q {quotes:"" "";}
22
+ a img {border:none;}
23
+
24
+ /* typography.css */
25
+ html {font-size:100.01%;}
26
+ body {font-size:75%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;}
27
+ h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;}
28
+ h1 {font-size:3em;line-height:1;margin-bottom:0.5em;}
29
+ h2 {font-size:2em;margin-bottom:0.75em;}
30
+ h3 {font-size:1.5em;line-height:1;margin-bottom:1em;}
31
+ h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}
32
+ h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
33
+ h6 {font-size:1em;font-weight:bold;}
34
+ h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
35
+ p {margin:0 0 1.5em;}
36
+ p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
37
+ p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
38
+ a:focus, a:hover {color:#000;}
39
+ a {color:#009;text-decoration:underline;}
40
+ blockquote {margin:1.5em;color:#666;font-style:italic;}
41
+ strong {font-weight:bold;}
42
+ em, dfn {font-style:italic;}
43
+ dfn {font-weight:bold;}
44
+ sup, sub {line-height:0;}
45
+ abbr, acronym {border-bottom:1px dotted #666;}
46
+ address {margin:0 0 1.5em;font-style:italic;}
47
+ del {color:#666;}
48
+ pre {margin:1.5em 0;white-space:pre;}
49
+ pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
50
+ li ul, li ol {margin:0;}
51
+ ul, ol {margin:0 1.5em 1.5em 0;padding-left:3.333em;}
52
+ ul {list-style-type:disc;}
53
+ ol {list-style-type:decimal;}
54
+ dl {margin:0 0 1.5em 0;}
55
+ dl dt {font-weight:bold;}
56
+ dd {margin-left:1.5em;}
57
+ table {margin-bottom:1.4em;width:100%;}
58
+ th {font-weight:bold;}
59
+ thead th {background:#c3d9ff;}
60
+ th, td, caption {padding:4px 10px 4px 5px;}
61
+ tr.even td {background:#e5ecf9;}
62
+ tfoot {font-style:italic;}
63
+ caption {background:#eee;}
64
+ .small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
65
+ .large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
66
+ .hide {display:none;}
67
+ .quiet {color:#666;}
68
+ .loud {color:#000;}
69
+ .highlight {background:#ff0;}
70
+ .added {background:#060;color:#fff;}
71
+ .removed {background:#900;color:#fff;}
72
+ .first {margin-left:0;padding-left:0;}
73
+ .last {margin-right:0;padding-right:0;}
74
+ .top {margin-top:0;padding-top:0;}
75
+ .bottom {margin-bottom:0;padding-bottom:0;}
76
+
77
+ /* forms.css */
78
+ label {font-weight:bold;}
79
+ fieldset {padding:1.4em;margin:0 0 1.5em 0;border:1px solid #ccc;}
80
+ legend {font-weight:bold;font-size:1.2em;}
81
+ input[type=text], input[type=password], input.text, input.title, textarea, select {background-color:#fff;border:1px solid #bbb;}
82
+ input[type=text]:focus, input[type=password]:focus, input.text:focus, input.title:focus, textarea:focus, select:focus {border-color:#666;}
83
+ input[type=text], input[type=password], input.text, input.title, textarea, select {margin:0.5em 0;}
84
+ input.text, input.title {width:300px;padding:5px;}
85
+ input.title {font-size:1.5em;}
86
+ textarea {width:390px;height:250px;padding:5px;}
87
+ input[type=checkbox], input[type=radio], input.checkbox, input.radio {position:relative;top:.25em;}
88
+ form.inline {line-height:3;}
89
+ form.inline p {margin-bottom:0;}
90
+ .error, .notice, .success {padding:.8em;margin-bottom:1em;border:2px solid #ddd;}
91
+ .error {background:#FBE3E4;color:#8a1f11;border-color:#FBC2C4;}
92
+ .notice {background:#FFF6BF;color:#514721;border-color:#FFD324;}
93
+ .success {background:#E6EFC2;color:#264409;border-color:#C6D880;}
94
+ .error a {color:#8a1f11;}
95
+ .notice a {color:#514721;}
96
+ .success a {color:#264409;}
97
+
98
+ /* grid.css */
99
+ .container {width:950px;margin:0 auto;}
100
+ .showgrid {background:url(src/grid.png);}
101
+ .column, div.span-1, div.span-2, div.span-3, div.span-4, div.span-5, div.span-6, div.span-7, div.span-8, div.span-9, div.span-10, div.span-11, div.span-12, div.span-13, div.span-14, div.span-15, div.span-16, div.span-17, div.span-18, div.span-19, div.span-20, div.span-21, div.span-22, div.span-23, div.span-24 {float:left;margin-right:10px;}
102
+ .last, div.last {margin-right:0;}
103
+ .span-1 {width:30px;}
104
+ .span-2 {width:70px;}
105
+ .span-3 {width:110px;}
106
+ .span-4 {width:150px;}
107
+ .span-5 {width:190px;}
108
+ .span-6 {width:230px;}
109
+ .span-7 {width:270px;}
110
+ .span-8 {width:310px;}
111
+ .span-9 {width:350px;}
112
+ .span-10 {width:390px;}
113
+ .span-11 {width:430px;}
114
+ .span-12 {width:470px;}
115
+ .span-13 {width:510px;}
116
+ .span-14 {width:550px;}
117
+ .span-15 {width:590px;}
118
+ .span-16 {width:630px;}
119
+ .span-17 {width:670px;}
120
+ .span-18 {width:710px;}
121
+ .span-19 {width:750px;}
122
+ .span-20 {width:790px;}
123
+ .span-21 {width:830px;}
124
+ .span-22 {width:870px;}
125
+ .span-23 {width:910px;}
126
+ .span-24, div.span-24 {width:950px;margin-right:0;}
127
+ input.span-1, textarea.span-1, input.span-2, textarea.span-2, input.span-3, textarea.span-3, input.span-4, textarea.span-4, input.span-5, textarea.span-5, input.span-6, textarea.span-6, input.span-7, textarea.span-7, input.span-8, textarea.span-8, input.span-9, textarea.span-9, input.span-10, textarea.span-10, input.span-11, textarea.span-11, input.span-12, textarea.span-12, input.span-13, textarea.span-13, input.span-14, textarea.span-14, input.span-15, textarea.span-15, input.span-16, textarea.span-16, input.span-17, textarea.span-17, input.span-18, textarea.span-18, input.span-19, textarea.span-19, input.span-20, textarea.span-20, input.span-21, textarea.span-21, input.span-22, textarea.span-22, input.span-23, textarea.span-23, input.span-24, textarea.span-24 {border-left-width:1px!important;border-right-width:1px!important;padding-left:5px!important;padding-right:5px!important;}
128
+ input.span-1, textarea.span-1 {width:18px!important;}
129
+ input.span-2, textarea.span-2 {width:58px!important;}
130
+ input.span-3, textarea.span-3 {width:98px!important;}
131
+ input.span-4, textarea.span-4 {width:138px!important;}
132
+ input.span-5, textarea.span-5 {width:178px!important;}
133
+ input.span-6, textarea.span-6 {width:218px!important;}
134
+ input.span-7, textarea.span-7 {width:258px!important;}
135
+ input.span-8, textarea.span-8 {width:298px!important;}
136
+ input.span-9, textarea.span-9 {width:338px!important;}
137
+ input.span-10, textarea.span-10 {width:378px!important;}
138
+ input.span-11, textarea.span-11 {width:418px!important;}
139
+ input.span-12, textarea.span-12 {width:458px!important;}
140
+ input.span-13, textarea.span-13 {width:498px!important;}
141
+ input.span-14, textarea.span-14 {width:538px!important;}
142
+ input.span-15, textarea.span-15 {width:578px!important;}
143
+ input.span-16, textarea.span-16 {width:618px!important;}
144
+ input.span-17, textarea.span-17 {width:658px!important;}
145
+ input.span-18, textarea.span-18 {width:698px!important;}
146
+ input.span-19, textarea.span-19 {width:738px!important;}
147
+ input.span-20, textarea.span-20 {width:778px!important;}
148
+ input.span-21, textarea.span-21 {width:818px!important;}
149
+ input.span-22, textarea.span-22 {width:858px!important;}
150
+ input.span-23, textarea.span-23 {width:898px!important;}
151
+ input.span-24, textarea.span-24 {width:938px!important;}
152
+ .append-1 {padding-right:40px;}
153
+ .append-2 {padding-right:80px;}
154
+ .append-3 {padding-right:120px;}
155
+ .append-4 {padding-right:160px;}
156
+ .append-5 {padding-right:200px;}
157
+ .append-6 {padding-right:240px;}
158
+ .append-7 {padding-right:280px;}
159
+ .append-8 {padding-right:320px;}
160
+ .append-9 {padding-right:360px;}
161
+ .append-10 {padding-right:400px;}
162
+ .append-11 {padding-right:440px;}
163
+ .append-12 {padding-right:480px;}
164
+ .append-13 {padding-right:520px;}
165
+ .append-14 {padding-right:560px;}
166
+ .append-15 {padding-right:600px;}
167
+ .append-16 {padding-right:640px;}
168
+ .append-17 {padding-right:680px;}
169
+ .append-18 {padding-right:720px;}
170
+ .append-19 {padding-right:760px;}
171
+ .append-20 {padding-right:800px;}
172
+ .append-21 {padding-right:840px;}
173
+ .append-22 {padding-right:880px;}
174
+ .append-23 {padding-right:920px;}
175
+ .prepend-1 {padding-left:40px;}
176
+ .prepend-2 {padding-left:80px;}
177
+ .prepend-3 {padding-left:120px;}
178
+ .prepend-4 {padding-left:160px;}
179
+ .prepend-5 {padding-left:200px;}
180
+ .prepend-6 {padding-left:240px;}
181
+ .prepend-7 {padding-left:280px;}
182
+ .prepend-8 {padding-left:320px;}
183
+ .prepend-9 {padding-left:360px;}
184
+ .prepend-10 {padding-left:400px;}
185
+ .prepend-11 {padding-left:440px;}
186
+ .prepend-12 {padding-left:480px;}
187
+ .prepend-13 {padding-left:520px;}
188
+ .prepend-14 {padding-left:560px;}
189
+ .prepend-15 {padding-left:600px;}
190
+ .prepend-16 {padding-left:640px;}
191
+ .prepend-17 {padding-left:680px;}
192
+ .prepend-18 {padding-left:720px;}
193
+ .prepend-19 {padding-left:760px;}
194
+ .prepend-20 {padding-left:800px;}
195
+ .prepend-21 {padding-left:840px;}
196
+ .prepend-22 {padding-left:880px;}
197
+ .prepend-23 {padding-left:920px;}
198
+ div.border {padding-right:4px;margin-right:5px;border-right:1px solid #eee;}
199
+ div.colborder {padding-right:24px;margin-right:25px;border-right:1px solid #eee;}
200
+ .pull-1 {margin-left:-40px;}
201
+ .pull-2 {margin-left:-80px;}
202
+ .pull-3 {margin-left:-120px;}
203
+ .pull-4 {margin-left:-160px;}
204
+ .pull-5 {margin-left:-200px;}
205
+ .pull-6 {margin-left:-240px;}
206
+ .pull-7 {margin-left:-280px;}
207
+ .pull-8 {margin-left:-320px;}
208
+ .pull-9 {margin-left:-360px;}
209
+ .pull-10 {margin-left:-400px;}
210
+ .pull-11 {margin-left:-440px;}
211
+ .pull-12 {margin-left:-480px;}
212
+ .pull-13 {margin-left:-520px;}
213
+ .pull-14 {margin-left:-560px;}
214
+ .pull-15 {margin-left:-600px;}
215
+ .pull-16 {margin-left:-640px;}
216
+ .pull-17 {margin-left:-680px;}
217
+ .pull-18 {margin-left:-720px;}
218
+ .pull-19 {margin-left:-760px;}
219
+ .pull-20 {margin-left:-800px;}
220
+ .pull-21 {margin-left:-840px;}
221
+ .pull-22 {margin-left:-880px;}
222
+ .pull-23 {margin-left:-920px;}
223
+ .pull-24 {margin-left:-960px;}
224
+ .pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {float:left;position:relative;}
225
+ .push-1 {margin:0 -40px 1.5em 40px;}
226
+ .push-2 {margin:0 -80px 1.5em 80px;}
227
+ .push-3 {margin:0 -120px 1.5em 120px;}
228
+ .push-4 {margin:0 -160px 1.5em 160px;}
229
+ .push-5 {margin:0 -200px 1.5em 200px;}
230
+ .push-6 {margin:0 -240px 1.5em 240px;}
231
+ .push-7 {margin:0 -280px 1.5em 280px;}
232
+ .push-8 {margin:0 -320px 1.5em 320px;}
233
+ .push-9 {margin:0 -360px 1.5em 360px;}
234
+ .push-10 {margin:0 -400px 1.5em 400px;}
235
+ .push-11 {margin:0 -440px 1.5em 440px;}
236
+ .push-12 {margin:0 -480px 1.5em 480px;}
237
+ .push-13 {margin:0 -520px 1.5em 520px;}
238
+ .push-14 {margin:0 -560px 1.5em 560px;}
239
+ .push-15 {margin:0 -600px 1.5em 600px;}
240
+ .push-16 {margin:0 -640px 1.5em 640px;}
241
+ .push-17 {margin:0 -680px 1.5em 680px;}
242
+ .push-18 {margin:0 -720px 1.5em 720px;}
243
+ .push-19 {margin:0 -760px 1.5em 760px;}
244
+ .push-20 {margin:0 -800px 1.5em 800px;}
245
+ .push-21 {margin:0 -840px 1.5em 840px;}
246
+ .push-22 {margin:0 -880px 1.5em 880px;}
247
+ .push-23 {margin:0 -920px 1.5em 920px;}
248
+ .push-24 {margin:0 -960px 1.5em 960px;}
249
+ .push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {float:right;position:relative;}
250
+ .prepend-top {margin-top:1.5em;}
251
+ .append-bottom {margin-bottom:1.5em;}
252
+ .box {padding:1.5em;margin-bottom:1.5em;background:#E5ECF9;}
253
+ hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:.1em;margin:0 0 1.45em;border:none;}
254
+ hr.space {background:#fff;color:#fff;visibility:hidden;}
255
+ .clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;}
256
+ .clearfix, .container {display:block;}
257
+ .clear {clear:both;}
@@ -0,0 +1,330 @@
1
+ /**
2
+ * SyntaxHighlighter
3
+ * http://alexgorbatchev.com/
4
+ *
5
+ * SyntaxHighlighter is donationware. If you are using it, please donate.
6
+ * http://alexgorbatchev.com/wiki/SyntaxHighlighter:Donate
7
+ *
8
+ * @version
9
+ * 2.1.364 (October 15 2009)
10
+ *
11
+ * @copyright
12
+ * Copyright (C) 2004-2009 Alex Gorbatchev.
13
+ *
14
+ * @license
15
+ * This file is part of SyntaxHighlighter.
16
+ *
17
+ * SyntaxHighlighter is free software: you can redistribute it and/or modify
18
+ * it under the terms of the GNU Lesser General Public License as published by
19
+ * the Free Software Foundation, either version 3 of the License, or
20
+ * (at your option) any later version.
21
+ *
22
+ * SyntaxHighlighter is distributed in the hope that it will be useful,
23
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
24
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25
+ * GNU General Public License for more details.
26
+ *
27
+ * You should have received a copy of the GNU General Public License
28
+ * along with SyntaxHighlighter. If not, see <http://www.gnu.org/copyleft/lesser.html>.
29
+ */
30
+ .syntaxhighlighter,
31
+ .syntaxhighlighter div,
32
+ .syntaxhighlighter code,
33
+ .syntaxhighlighter table,
34
+ .syntaxhighlighter table td,
35
+ .syntaxhighlighter table tr,
36
+ .syntaxhighlighter table tbody
37
+ {
38
+ margin: 0 !important;
39
+ padding: 0 !important;
40
+ border: 0 !important;
41
+ outline: 0 !important;
42
+ background: none !important;
43
+ text-align: left !important;
44
+ float: none !important;
45
+ vertical-align: baseline !important;
46
+ position: static !important;
47
+ left: auto !important;
48
+ top: auto !important;
49
+ right: auto !important;
50
+ bottom: auto !important;
51
+ height: auto !important;
52
+ width: auto !important;
53
+ line-height: 1.1em !important;
54
+ font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
55
+ font-weight: normal !important;
56
+ font-style: normal !important;
57
+ font-size: 1em !important;
58
+ min-height: inherit !important; /* For IE8, FF & WebKit */
59
+ min-height: auto !important; /* For IE7 */
60
+ }
61
+
62
+ .syntaxhighlighter
63
+ {
64
+ width: 99% !important; /* 99% fixes IE8 horizontal scrollbar */
65
+ margin: 1em 0 1em 0 !important;
66
+ padding: 1px !important; /* adds a little border on top and bottom */
67
+ position: relative !important;
68
+ }
69
+
70
+ .syntaxhighlighter .bold
71
+ {
72
+ font-weight: bold !important;
73
+ }
74
+
75
+ .syntaxhighlighter .italic
76
+ {
77
+ font-style: italic !important;
78
+ }
79
+
80
+ .syntaxhighlighter .line
81
+ {
82
+ }
83
+
84
+ .syntaxhighlighter .no-wrap .line .content
85
+ {
86
+ white-space: pre !important;
87
+ }
88
+
89
+ .syntaxhighlighter .line table
90
+ {
91
+ border-collapse: collapse !important;
92
+ }
93
+
94
+ .syntaxhighlighter .line td
95
+ {
96
+ vertical-align: top !important;
97
+ }
98
+
99
+ .syntaxhighlighter .line .number
100
+ {
101
+ width: 3em !important;
102
+ }
103
+
104
+ .syntaxhighlighter .line .number code
105
+ {
106
+ width: 2.7em !important;
107
+ padding-right: .3em !important;
108
+ text-align: right !important;
109
+ display: block !important;
110
+ }
111
+
112
+ .syntaxhighlighter .line .content
113
+ {
114
+ padding-left: .5em !important;
115
+ }
116
+
117
+ .syntaxhighlighter .line .spaces
118
+ {
119
+ }
120
+
121
+ /* Disable border and margin on the lines when no gutter option is set */
122
+ .syntaxhighlighter.nogutter .line .content
123
+ {
124
+ border-left: none !important;
125
+ }
126
+
127
+ .syntaxhighlighter .bar
128
+ {
129
+ display: none !important;
130
+ }
131
+
132
+ .syntaxhighlighter .bar.show
133
+ {
134
+ display: block !important;
135
+ }
136
+
137
+ .syntaxhighlighter.collapsed .bar
138
+ {
139
+ display: block !important;
140
+ }
141
+
142
+ /* Adjust some properties when collapsed */
143
+
144
+ .syntaxhighlighter.collapsed .lines
145
+ {
146
+ display: none !important;
147
+ }
148
+
149
+ .syntaxhighlighter .lines.no-wrap
150
+ {
151
+ overflow: auto !important;
152
+ overflow-y: hidden !important;
153
+ }
154
+
155
+ /* Styles for the toolbar */
156
+
157
+ .syntaxhighlighter .toolbar
158
+ {
159
+ position: absolute !important;
160
+ right: 0px !important;
161
+ top: 0px !important;
162
+ font-size: 1px !important;
163
+ padding: 8px 8px 8px 0 !important; /* in px because images don't scale with ems */
164
+ }
165
+
166
+ .syntaxhighlighter.collapsed .toolbar
167
+ {
168
+ font-size: 80% !important;
169
+ padding: .2em 0 .5em .5em !important;
170
+ position: static !important;
171
+ }
172
+
173
+ .syntaxhighlighter .toolbar a.item,
174
+ .syntaxhighlighter .toolbar .item
175
+ {
176
+ display: block !important;
177
+ float: left !important;
178
+ margin-left: 8px !important;
179
+ background-repeat: no-repeat !important;
180
+ overflow: hidden !important;
181
+ text-indent: -5000px !important;
182
+ }
183
+
184
+ .syntaxhighlighter.collapsed .toolbar .item
185
+ {
186
+ display: none !important;
187
+ }
188
+
189
+ .syntaxhighlighter.collapsed .toolbar .item.expandSource
190
+ {
191
+ background-image: url(magnifier.png) !important;
192
+ display: inline !important;
193
+ text-indent: 0 !important;
194
+ width: auto !important;
195
+ float: none !important;
196
+ height: 16px !important;
197
+ padding-left: 20px !important;
198
+ }
199
+
200
+ .syntaxhighlighter .toolbar .item.viewSource
201
+ {
202
+ background-image: url(page_white_code.png) !important;
203
+ }
204
+
205
+ .syntaxhighlighter .toolbar .item.printSource
206
+ {
207
+ background-image: url(printer.png) !important;
208
+ }
209
+
210
+ .syntaxhighlighter .toolbar .item.copyToClipboard
211
+ {
212
+ text-indent: 0 !important;
213
+ background: none !important;
214
+ overflow: visible !important;
215
+ }
216
+
217
+ .syntaxhighlighter .toolbar .item.about
218
+ {
219
+ background-image: url(help.png) !important;
220
+ }
221
+
222
+ /**
223
+ * Print view.
224
+ * Colors are based on the default theme without background.
225
+ */
226
+
227
+ .syntaxhighlighter.printing,
228
+ .syntaxhighlighter.printing .line.alt1 .content,
229
+ .syntaxhighlighter.printing .line.alt2 .content,
230
+ .syntaxhighlighter.printing .line.highlighted .number,
231
+ .syntaxhighlighter.printing .line.highlighted.alt1 .content,
232
+ .syntaxhighlighter.printing .line.highlighted.alt2 .content,
233
+ {
234
+ background: none !important;
235
+ }
236
+
237
+ /* Gutter line numbers */
238
+ .syntaxhighlighter.printing .line .number
239
+ {
240
+ color: #bbb !important;
241
+ }
242
+
243
+ /* Add border to the lines */
244
+ .syntaxhighlighter.printing .line .content
245
+ {
246
+ color: #000 !important;
247
+ }
248
+
249
+ /* Toolbar when visible */
250
+ .syntaxhighlighter.printing .toolbar
251
+ {
252
+ display: none !important;
253
+ }
254
+
255
+ .syntaxhighlighter.printing a
256
+ {
257
+ text-decoration: none !important;
258
+ }
259
+
260
+ .syntaxhighlighter.printing .plain,
261
+ .syntaxhighlighter.printing .plain a
262
+ {
263
+ color: #000 !important;
264
+ }
265
+
266
+ .syntaxhighlighter.printing .comments,
267
+ .syntaxhighlighter.printing .comments a
268
+ {
269
+ color: #008200 !important;
270
+ }
271
+
272
+ .syntaxhighlighter.printing .string,
273
+ .syntaxhighlighter.printing .string a
274
+ {
275
+ color: blue !important;
276
+ }
277
+
278
+ .syntaxhighlighter.printing .keyword
279
+ {
280
+ color: #069 !important;
281
+ font-weight: bold !important;
282
+ }
283
+
284
+ .syntaxhighlighter.printing .preprocessor
285
+ {
286
+ color: gray !important;
287
+ }
288
+
289
+ .syntaxhighlighter.printing .variable
290
+ {
291
+ color: #a70 !important;
292
+ }
293
+
294
+ .syntaxhighlighter.printing .value
295
+ {
296
+ color: #090 !important;
297
+ }
298
+
299
+ .syntaxhighlighter.printing .functions
300
+ {
301
+ color: #ff1493 !important;
302
+ }
303
+
304
+ .syntaxhighlighter.printing .constants
305
+ {
306
+ color: #0066CC !important;
307
+ }
308
+
309
+ .syntaxhighlighter.printing .script
310
+ {
311
+ font-weight: bold !important;
312
+ }
313
+
314
+ .syntaxhighlighter.printing .color1,
315
+ .syntaxhighlighter.printing .color1 a
316
+ {
317
+ color: #808080 !important;
318
+ }
319
+
320
+ .syntaxhighlighter.printing .color2,
321
+ .syntaxhighlighter.printing .color2 a
322
+ {
323
+ color: #ff1493 !important;
324
+ }
325
+
326
+ .syntaxhighlighter.printing .color3,
327
+ .syntaxhighlighter.printing .color3 a
328
+ {
329
+ color: red !important;
330
+ }