WP Editor - Version 1.1.0.3

Version Description

  • Added Ambiance, Blackboard, Lesser Dark, Vibrant Ink and XQ-Dark themes
  • Fixed text selection in all editors
  • Fixed post editor highlighter not loading when visual editor is disabled
Download this release

Release Info

Developer benjaminprojas
Plugin Icon 128x128 WP Editor
Version 1.1.0.3
Comparing to
See all releases

Code changes from version 1.1.0.2 to 1.1.0.3

classes/WPEditorPosts.php CHANGED
@@ -4,7 +4,7 @@ class WPEditorPosts {
4
  public function addPostsJquery($editor) {
5
  if(WPEditorSetting::getValue('enable_post_editor')) {
6
  $theme = WPEditorSetting::getValue('post_editor_theme') ? WPEditorSetting::getValue('post_editor_theme') : 'default';
7
- $activeLine = WPEditorSetting::getValue('enable_post_active_line') == 1 ? 'activeline-' . $theme : '';
8
  $post_editor_settings = array(
9
  'mode' => 'text/html',
10
  'theme' => $theme,
4
  public function addPostsJquery($editor) {
5
  if(WPEditorSetting::getValue('enable_post_editor')) {
6
  $theme = WPEditorSetting::getValue('post_editor_theme') ? WPEditorSetting::getValue('post_editor_theme') : 'default';
7
+ $activeLine = WPEditorSetting::getValue('enable_post_active_line') == 1 ? 'activeline-' . $theme : false;
8
  $post_editor_settings = array(
9
  'mode' => 'text/html',
10
  'theme' => $theme,
extensions/codemirror/codemirror.css CHANGED
@@ -1,37 +1,3 @@
1
- .wpe-quicktags-toolbar {
2
- -webkit-border-top-right-radius: 3px;
3
- -webkit-border-top-left-radius: 3px;
4
- border-top-right-radius: 3px;
5
- border-top-left-radius: 3px;
6
- min-height: 29px;
7
- border-bottom: 1px solid #CCC;
8
- padding: 2px 8px 0;
9
- background-color: #E9E9E9;
10
- color: #333;
11
- background-image: -ms-linear-gradient(bottom,#DDD,#E9E9E9);
12
- background-image: -moz-linear-gradient(bottom,#DDD,#E9E9E9);
13
- background-image: -o-linear-gradient(bottom,#DDD,#E9E9E9);
14
- background-image: -webkit-linear-gradient(bottom,#DDD,#E9E9E9);
15
- background-image: linear-gradient(bottom,#DDD,#E9E9E9);
16
- }
17
- .wpe-quicktags-toolbar input {
18
- margin: 2px 1px 4px;
19
- line-height: 18px;
20
- display: inline-block;
21
- min-width: 26px;
22
- padding: 2px 4px;
23
- font: 12px/18px Arial,Helvetica,sans-serif normal;
24
- color: #464646;
25
- border: 1px solid #C3C3C3;
26
- -webkit-border-radius: 3px;
27
- border-radius: 3px;
28
- background-color: #EEE;
29
- background-image: -ms-linear-gradient(bottom,#E3E3E3,white);
30
- background-image: -moz-linear-gradient(bottom,#E3E3E3,white);
31
- background-image: -o-linear-gradient(bottom,#E3E3E3,white);
32
- background-image: -webkit-linear-gradient(bottom,#E3E3E3,white);
33
- background-image: linear-gradient(bottom,#E3E3E3,white);
34
- }
35
  .CodeMirror {
36
  line-height: 1em;
37
  font-family: monospace;
@@ -140,8 +106,8 @@ background-image: linear-gradient(bottom,#E3E3E3,white);
140
  visibility: visible;
141
  }
142
 
143
- span.CodeMirror-selected { background: #d9d9d9; }
144
- .CodeMirror-focused span.CodeMirror-selected { background: #d2dcf8; }
145
 
146
  .CodeMirror-searching {background: #ffa;}
147
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  .CodeMirror {
2
  line-height: 1em;
3
  font-family: monospace;
106
  visibility: visible;
107
  }
108
 
109
+ div.CodeMirror-selected { background: #d9d9d9; }
110
+ .CodeMirror-focused div.CodeMirror-selected { background: #d7d4f0; }
111
 
112
  .CodeMirror-searching {background: #ffa;}
113
 
extensions/codemirror/themes/themes.css CHANGED
@@ -26,11 +26,78 @@
26
  .cm-s-default span.cm-link {color: #00c;}
27
  /*.cm-mustache {color: #611;font-weight:bold;}*/
28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  /************************************************************
30
  * Cobalt
31
  ************************************************************/
32
  .cm-s-cobalt { background: #002240; color: white; }
33
- .cm-s-cobalt span.CodeMirror-selected { background: #b36539 !important; }
34
  .cm-s-cobalt .CodeMirror-gutter { background: #002240; border-right: 1px solid #aaa; }
35
  .cm-s-cobalt .CodeMirror-gutter-text { color: #d0d0d0; }
36
  .cm-s-cobalt .CodeMirror-cursor { border-left: 1px solid white !important; }
@@ -86,11 +153,47 @@
86
  .cm-s-elegant span.cm-error {background-color: #fdd;}
87
  .cm-s-elegant span.cm-link {color: #762;}
88
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
89
  /************************************************************
90
  * Monokai
91
  ************************************************************/
92
  .cm-s-monokai {background: #272822; color: #f8f8f2;}
93
- .cm-s-monokai span.CodeMirror-selected {background: #ffe792 !important;color:#00F !important;}
94
  .cm-s-monokai .CodeMirror-gutter {background: #272822; border-right: 0px;}
95
  .cm-s-monokai .CodeMirror-gutter-text {color: #d0d0d0;}
96
  .cm-s-monokai .CodeMirror-cursor {border-left: 1px solid #f8f8f0 !important;}
@@ -126,7 +229,7 @@
126
  * Night
127
  ************************************************************/
128
  .cm-s-night { background: #0a001f; color: #f8f8f8; }
129
- .cm-s-night span.CodeMirror-selected { background: #a8f !important; }
130
  .cm-s-night .CodeMirror-gutter { background: #0a001f; border-right: 1px solid #aaa; }
131
  .cm-s-night .CodeMirror-gutter-text { color: #f8f8f8; }
132
  .cm-s-night .CodeMirror-cursor { border-left: 1px solid white !important; }
@@ -149,7 +252,7 @@
149
  ************************************************************/
150
  .cm-s-rubyblue { font:13px/1.4em Trebuchet, Verdana, sans-serif; }
151
  .cm-s-rubyblue { background: #112435; color: white; }
152
- .cm-s-rubyblue span.CodeMirror-selected { background: #FFE792 !important;color:#00F !important; }
153
  .cm-s-rubyblue .CodeMirror-gutter { background: #1F4661; border-right: 7px solid #3E7087; min-width:2.5em; }
154
  .cm-s-rubyblue .CodeMirror-gutter-text { color: white; }
155
  .cm-s-rubyblue .CodeMirror-cursor { border-left: 1px solid white !important; }
@@ -165,4 +268,81 @@
165
  .cm-s-rubyblue span.cm-bracket { color: #F0F; }
166
  .cm-s-rubyblue span.cm-link { color: #F4C20B; }
167
  .cm-s-rubyblue span.CodeMirror-matchingbracket { color:#F0F !important; }
168
- .cm-s-rubyblue span.cm-builtin, .cm-s-rubyblue span.cm-special { color: #FF9D00; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26
  .cm-s-default span.cm-link {color: #00c;}
27
  /*.cm-mustache {color: #611;font-weight:bold;}*/
28
 
29
+ /************************************************************
30
+ * Ambiance
31
+ ************************************************************/
32
+ .cm-s-ambiance .cm-keyword { color: #cda869; }
33
+ .cm-s-ambiance .cm-atom { color: #CF7EA9; }
34
+ .cm-s-ambiance .cm-number { color: #78CF8A; }
35
+ .cm-s-ambiance .cm-def { color: #aac6e3; }
36
+ .cm-s-ambiance .cm-variable { color: #ffb795; }
37
+ .cm-s-ambiance .cm-variable-2 { color: #eed1b3; }
38
+ .cm-s-ambiance .cm-variable-3 { color: #faded3; }
39
+ .cm-s-ambiance .cm-property { color: #eed1b3; }
40
+ .cm-s-ambiance .cm-operator {color: #fa8d6a;}
41
+ .cm-s-ambiance .cm-comment { color: #555; font-style:italic; }
42
+ .cm-s-ambiance .cm-string { color: #8f9d6a; }
43
+ .cm-s-ambiance .cm-string-2 { color: #9d937c; }
44
+ .cm-s-ambiance .cm-meta { color: #D2A8A1; }
45
+ .cm-s-ambiance .cm-error { color: #AF2018; }
46
+ .cm-s-ambiance .cm-qualifier { color: yellow; }
47
+ .cm-s-ambiance .cm-builtin { color: #9999cc; }
48
+ .cm-s-ambiance .cm-bracket { color: #24C2C7; }
49
+ .cm-s-ambiance .cm-tag { color: #fee4ff }
50
+ .cm-s-ambiance .cm-attribute { color: #9B859D; }
51
+ .cm-s-ambiance .cm-header {color: blue;}
52
+ .cm-s-ambiance .cm-quote { color: #24C2C7; }
53
+ .cm-s-ambiance .cm-hr { color: pink; }
54
+ .cm-s-ambiance .cm-link { color: #F4C20B; }
55
+ .cm-s-ambiance .cm-special { color: #FF9D00; }
56
+ .cm-s-ambiance .CodeMirror-matchingbracket { color: #0f0; }
57
+ .cm-s-ambiance .CodeMirror-nonmatchingbracket { color: #f22; }
58
+ .cm-s-ambiance .CodeMirror-selected {background: rgba(255, 255, 255, 0.15);}
59
+ .CodeMirror-focused .cm-s-ambiance .CodeMirror-selected {background: rgba(255, 255, 255, 0.10);}
60
+ /* Editor styling */
61
+ .cm-s-ambiance {line-height: 1.40em;font-family: Monaco, Menlo,"Andale Mono","lucida console","Courier New",monospace !important;color: #E6E1DC;background-color: #202020;-webkit-box-shadow: inset 0 0 10px black;-moz-box-shadow: inset 0 0 10px black;-o-box-shadow: inset 0 0 10px black;box-shadow: inset 0 0 10px black;}
62
+ .cm-s-ambiance .CodeMirror-gutter {background: #3D3D3D;padding: 0 5px;text-shadow: #333 1px 1px;border-right: 1px solid #4D4D4D;box-shadow: 0 10px 20px black;}
63
+ .cm-s-ambiance .CodeMirror-gutter .CodeMirror-gutter-text {text-shadow: 0px 1px 1px #4d4d4d;color: #222;}
64
+ .cm-s-ambiance .CodeMirror-lines {}
65
+ .cm-s-ambiance .CodeMirror-lines .CodeMirror-cursor {border-left: 1px solid #7991E8;}
66
+ .cm-s-ambiance .activeline {background: none repeat scroll 0% 0% rgba(255, 255, 255, 0.031);}
67
+ .cm-s-ambiance, .cm-s-ambiance .CodeMirror-gutter {background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAQAAAAHUWYVAABFFUlEQVQYGbzBCeDVU/74/6fj9HIcx/FRHx9JCFmzMyGRURhLZIkUsoeRfUjS2FNDtr6WkMhO9sm+S8maJfu+Jcsg+/o/c+Z4z/t97/vezy3z+z8ekGlnYICG/o7gdk+wmSHZ1z4pJItqapjoKXWahm8NmV6eOTbWUOp6/6a/XIg6GQqmenJ2lDHyvCFZ2cBDbmtHA043VFhHwXxClWmeYAdLhV00Bd85go8VmaFCkbVkzlQENzfBDZ5gtN7HwF0KDrTwJ0dypSOzpaKCMwQHKTIreYIxlmhXTzTWkVm+LTynZhiSBT3RZQ7aGfjGEd3qyXQ1FDymqbKxpspERQN2MiRjNZlFFQXfCNFm9nM1zpAsoYjmtRTc5ajwuaXc5xrWskT97RaKzAGe5ARHhVUsDbjKklziiX5WROcJwSNCNI+9w1Jwv4Zb2r7lCMZ4oq5C0EdTx+2GzNuKpJ+iFf38JEWkHJn9DNF7mmBDITrWEg0VWL3pHU20tSZnuqWu+R3BtYa8XxV1HO7GyD32UkOpL/yDloINFTmvtId+nmAjxRw40VMwVKiwrKLE4bK5UOVntYwhOcSSXKrJHKPJedocpGjVz/ZMIbnYUPB10/eKCrs5apqpgVmWzBYWpmtKHecJPjaUuEgRDDaU0oZghCJ6zNMQ5ZhDYx05r5v2muQdM0EILtXUsaKiQX9WMEUotagQzFbUNN6NUPC2nm5pxEWGCjMc3GdJHjSU2kORLK/JGSrkfGEIjncU/CYUnOipoYemwj8tST9NsJmB7TUVXtbUtXATJVZXBMvYeTXJfobgJUPmGMP/yFaWonaa6BcFO3nqcIqCozSZoZoSr1g4zJOzuyGnxTEX3lUEJ7WcZgme8ddaWvWJo2AJR9DZU3CUIbhCSG6ybSwN6qtJVnCU2svDTP2ZInOw2cBTrqtQahtNZn9NcJ4l2NaSmSkkP1noZWnVwkLmdUPOwLZEwy2Z3S3R+4rIG9hcbpPXHFVWcQdZkn2FOta3cKWQnNRC5g1LsJah4GCzSVsKnCOY5OAFRTBekyyryeyilhFKva75r4Mc0aWanGEaThcy31s439KKxTzJYY5WTHPU1FtIHjQU3Oip4xlNzj/lBw23dYZVliQa7WAXf4shetcQfatI+jWRDBPmyNeW6A1P5kdDgyYJlba0BIM8BZu1JfrFwItyjcAMR3K0BWOIrtMEXyhyrlVEx3ui5dUBjmB/Q3CXW85R4mBD0s7B+4q5tKUjOlb9qqmhi5AZ6GFIC5HXtOobdYGlVdMVbNJ8toNTFcHxnoL+muBagcctjWnbNMuR00uI7nQESwg5q2qqrKWIfrNUmeQocY6HuyxJV02wj36w00yhpmUFenv4p6fUkZYqLyuinx2RGOjhCXYyJF84oiU00YMOOhhquNdfbOB7gU88pY4xJO8LVdp6/q2voeB4R04vIdhSE40xZObx1HGGJ/ja0LBthFInKaLPPFzuCaYaoj8JjPME8yoyxo6zlBqkiUZYgq00OYMswbWO5NGmq+xhipxHLRW29ARjNKXO0wRnear8XSg4XFPLKEPUS1GqvyLwiuBUoa7zpZ0l5xxFwWmWZC1H5h5FwU8eQ7K+g8UcVY6TMQreVQT/8uQ8Z+ALIXnSEa2pYZQneE9RZbSBNYXfWYJzW/h/4j4Dp1tYVcFIC5019Vyi4ThPqSFCzjGWaHQTBU8q6vrVwgxP9Lkm840imWKpcLCjYTtrKuwvsKSnrvHCXGkSMk9p6lhckfRpIeis+N2PiszT+mFLspyGleUhDwcLrZqmyeylxwjBcKHEapqkmyangyLZRVOijwOtCY5SsG5zL0OwlCJ4y5KznF3EUNDDrinwiyLZRzOXtlBbK5ITHFGLp8Q0R6ab6mS7enI2cFrxOyHvOCFaT1HThS1krjCwqWeurCkk+willhCC+RSZnRXBiZaC5RXRIZYKp2lyfrHwiKPKR0JDzrdU2EFgpidawlFDR6FgXUMNa+g1FY3bUQh2cLCwosRdnuQTS/S+JVrGLeWIvtQUvONJxlqSQYYKpwoN2kaocLjdVsis4Mk80ESF2YpSkzwldjHkjFCUutI/r+EHDU8oCs6yzL3PhWiEooZdFMkymlas4AcI3KmoMMNSQ3tHzjGWCrcJJdYyZC7QFGwjRL9p+MrRkAGWzIaWCn9W0F3TsK01c2ZvQw0byvxuQU0r1lM0qJO7wW0kRIMdDTtXEdzi4VIh+EoIHm0mWtAtpCixlabgn83fKTI7anJe9ST7WIK1DMGpQmYeA58ImV6ezOGOzK2Kgq01pd60cKWiUi9Lievb/0vIDPHQ05Kzt4ddPckQBQtoaurjyHnek/nKzpQLrVgKPjIkh2v4uyezpv+Xoo7fPFXaGFp1vaLKxQ4uUpQQS5VuQs7BCq4xRJv7fwpVvvFEB3j+620haOuocqMhWd6TTPAEx+mdFNGHdranFe95WrWmIvlY4F1Dle2ECgc6cto7SryuqGGGha0tFQ5V53migUKmg6XKAo4qS3mik+0OZpAhOLeZKicacgaYcyx5hypYQE02ZA4xi/pNhOQxR4klNKyqacj+mpxnLTnnGSo85++3ZCZq6lrZkXlGEX3o+C9FieccJbZWVFjC0Yo1FZnJhoYMFoI1hEZ9r6hwg75HwzBNhbZCdJEfJwTPGzJvaKImw1yYX1HDAmpXR+ZJQ/SmgqMNVQb5vgamGwLtt7VwvP7Qk1xpiM5x5Cyv93E06MZmgs0Nya2azIKOYKCGBQQW97RmhKNKF02JZqHEJ4o58qp7X5EcZmc56trXEqzjCBZ1MFGR87Ql2tSTs6CGxS05PTzRQorkbw7aKoKXFDXsYW42VJih/q+FP2BdTzDTwVqOYB13liM50vG7wy28qagyuIXMeQI/Oqq8bcn5wJI50xH00CRntyfpL1T4hydYpoXgNiFzoIUTDZnLNRzh4TBHwbYGDvZkxmlyJloyr6tRihpeUG94GnKtIznREF0tzJG/OOr73JBcrSh1k6WuTprgLU+mnSGnv6Zge0NNz+kTDdH8nuAuTdJDCNb21LCiIuqlYbqGzT3RAoZofQfjFazkqeNWdYaGvYTM001EW2oKPvVk1ldUGSgUtHFwjKM1h9jnFcmy5lChoLNaQMGGDsYbKixlaMBmmsx1QjCfflwTfO/gckW0ruZ3jugKR3R5W9hGUWqCgxuFgsuaCHorotGKzGaeZB9DMsaTnKCpMtwTvOzhYk0rdrArKCqcaWmVk1+F372ur1YkKxgatI8Qfe1gIX9wE9FgS8ESmuABIXnRUbCapcKe+nO7slClSZFzpV/LkLncEb1qiO42fS3R855Su2mCLh62t1SYZZYVmKwIHjREF2uihTzB20JOkz7dkxzYQnK0UOU494wh+VWRc6Un2kpTaVgLDFEkJ/uhzRcI0YKGgpGWOlocBU/a4fKoJ/pEaNV6jip3+Es9VXY078rGnmAdf7t9ylPXS34RBSuYPs1UecZTU78WanhBCHpZ5sAoTz0LGZKjPf9TRypqWEiTvOFglL1fCEY3wY/++rbk7C8bWebA6p6om6PgOL2kp44TFJlVNBXae2rqqdZztOJpT87GQsE9jqCPIe9VReZuQ/CIgacsyZdCpIScSYqcZk8r+nsyCzhyfhOqHGOIvrLknC8wTpFcaYiGC/RU1NRbUeUpocQOnkRpGOrIOcNRx+1uA0UrzhSSt+VyS3SJpnFWkzNDqOFGIWcfR86DnmARTQ1HKIL33ExPiemeOhYSSjzlSUZZuE4TveoJLnBUOFof6KiysCbnAEcZgcUNTDOwkqWu3RWtmGpZwlHhJENdZ3miGz0lJlsKnjbwqSHQjpxnFDlTLLwqJPMZMjd7KrzkSG7VsxXBZE+F8YZkb01Oe00yyRK9psh5SYh29ySPKBo2ylNht7ZkZnsKenjKNJu9PNEyZpaCHv4Kt6RQsLvAVp7M9kIimmCUwGeWqLMmGuIotYMmWNpSahkhZw9FqZsVnKJhsjAHvtHMsTM9fCI06Dx/u3vfUXCqfsKRc4oFY2jMsoo/7DJDwZ1CsIKnJu+J9ldkpmiCxQx1rWjI+T9FwcWWzOuaYH0Hj7klNRVWEQpmaqosakiGNTFHdjS/qnUdmf0NJW5xsL0HhimCCZZSRzmSPTXJQ4aaztAwtZnoabebJ+htCaZ7Cm535ByoqXKbX1WRc4Eh2MkRXWzImVc96Cj4VdOKVxR84VdQsIUM8Psoou2byVHyZFuq7O8otbSQ2UAoeEWTudATLGSpZzVLlXVkPU2Jc+27lsw2jmg5T5VhbeE3BT083K9WsTTkFU/Osi0rC5lRlpwRHUiesNS0sOvmqGML1aRbPAxTJD9ZKtxuob+hhl8cwYGWpJ8nub7t5p6coYbMovZ1BTdaKn1jYD6h4GFDNFyT/Kqe1XCXphXHOKLZmuRSRdBPEfVUXQzJm5YGPGGJdvAEr7hHNdGZnuBvrpciGmopOLf5N0uVMy0FfYToJk90uUCbJupaVpO53UJXR2bVpoU00V2KOo4zMFrBd0Jtz2pa0clT5Q5L8IpQ177mWQejPMEJhuQjS10ref6HHjdEhy1P1EYR7GtO0uSsKJQYLiTnG1rVScj5lyazpqWGl5uBbRWl7m6ixGOOnEsMJR7z8J0n6KMnCdxhiNYQCoZ6CmYLnO8omC3MkW3bktlPmEt/VQQHejL3+dOE5FlPdK/Mq8hZxxJtLyRrepLThYKbLZxkSb5W52vYxNOaOxUF0yxMUPwBTYqCzy01XayYK0sJyWBLqX0MwU5CzoymRzV0EjjeUeLgDpTo6ij42ZAzvD01dHUUTPLU96MdLbBME8nFBn7zJCMtJcZokn8YoqU0FS5WFKyniHobguMcmW8N0XkWZjkyN3hqOMtS08r+/xTBwpZSZ3qiVRX8SzMHHjfUNFjgHEPmY9PL3ykEzxkSre/1ZD6z/NuznuB0RcE1TWTm9zRgfUWVJiG6yrzgmWPXC8EAR4Wxhlad0ZbgQyEz3pG5RVEwwDJH2mgKpjcTiCOzn1lfUWANFbZ2BA8balnEweJC9J0iuaeZoI+ippFCztEKVvckR2iice1JvhVytrQwUAZpgsubCPaU7xUe9vWnaOpaSBEspalykhC9bUlOMpT42ZHca6hyrqKmw/wMR8H5ZmdFoBVJb03O4UL0tSNnvIeRmkrLWqrs78gcrEn2tpcboh0UPOW3UUR9PMk4T4nnNKWmCjlrefhCwxRNztfmIQVdDElvS4m1/WuOujoZCs5XVOjtKPGokJzsYCtFYoWonSPT21DheU/wWhM19FcElwqNGOsp9Q8N/cwXaiND1MmeL1Q5XROtYYgGeFq1aTMsoMmcrKjQrOFQTQ1fmBYhmW6o8Jkjc7iDJRTBIo5kgJD5yMEYA3srCg7VFKwiVJkmRCc5ohGOKhsYMn/XBLdo5taZjlb9YAlGWRimqbCsoY7HFAXLa5I1HPRxMMsQDHFkWtRNniqT9UEeNjcE7RUlrCJ4R2CSJuqlKHWvJXjAUNcITYkenuBRB84TbeepcqTj3zZyFJzgYQdHnqfgI0ddUwS6GqWpsKWhjq9cV0vBAEMN2znq+EBfIWT+pClYw5xsTlJU6GeIBsjGmmANTzJZiIYpgrM0Oa8ZMjd7NP87jxhqGOhJlnQtjuQpB+8aEE00wZFznSJPyHxgH3HkPOsJFvYk8zqCHzTs1BYOa4J3PFU+UVRZxlHDM4YavlNUuMoRveiZA2d7grMNc2g+RbSCEKzmgYsUmWmazFJyoiOZ4KnyhKOGRzWJa0+moyV4TVHDzn51Awtqaphfk/lRQ08FX1iiqxTB/kLwd0VynKfEvI6cd4XMV5bMhZ7gZUWVzYQ6Nm2BYzxJbw3bGthEUUMfgbGeorae6DxHtJoZ6alhZ0+ytiVoK1R4z5PTrOECT/SugseEOlb1MMNR4VRNcJy+V1Hg9ONClSZFZjdHlc6W6FBLdJja2MC5hhpu0DBYEY1TFGwiFAxRRCsYkiM9JRb0JNMVkW6CZYT/2EiTGWmo8k+h4FhDNE7BvppoTSFnmCV5xZKzvcCdDo7VVPnIU+I+Rc68juApC90MwcFCsJ5hDqxgScYKreruyQwTqrzoqDCmhWi4IbhB0Yrt3RGa6GfDv52rKXWhh28dyZaWUvcZeMTBaZoSGyiCtRU5J8iviioHaErs7Jkj61syVzTTgOcUOQ8buFBTYWdL5g3T4qlpe0+wvD63heAXRfCCIed9RbCsp2CiI7raUOYOTU13N8PNHvpaGvayo4a3LLT1lDrVEPT2zLUlheB1R+ZTRfKWJ+dcocLJfi11vyJ51lLqJ0WD7tRwryezjiV5W28uJO9qykzX8JDe2lHl/9oyBwa2UMfOngpXCixvKdXTk3wrsKmiVYdZIqsoWEERjbcUNDuiaQomGoIbFdEHmsyWnuR+IeriKDVLnlawlyNHKwKlSU631PKep8J4Q+ayjkSLKYLhalNHlYvttb6fHm0p6OApsZ4l2VfdqZkjuysy6ysKLlckf1KUutCTs39bmCgEyyoasIWlVaMF7mgmWtBT8Kol5xpH9IGllo8cJdopcvZ2sImlDmMIbtDk3KIpeNiS08lQw11NFPTwVFlPP6pJ2gvRfI7gQUfmNAtf6Gs0wQxDsKGlVBdF8rCa3jzdwMaGHOsItrZk7hAyOzpK9VS06j5F49b0VNGOOfKs3lDToMsMBe9ZWtHFEgxTJLs7qrygKZjUnmCYoeAqeU6jqWuLJup4WghOdvCYJnrSkSzoyRkm5M2StQwVltPkfCAk58tET/CSg+8MUecmotMEnhBKfWBIZsg2ihruMJQaoIm+tkTLKEqspMh00w95gvFCQRtDwTT1gVDDSEVdlwqZfxoQRbK0g+tbiBZxzKlpnpypejdDwTaeOvorMk/IJE10h9CqRe28hhLbe0pMsdSwv4ZbhKivo2BjDWfL8UKJgeavwlwb5KlwhyE4u4XkGE2ytZCznKLCDZZq42VzT8HLCrpruFbIfOIINmh/qCdZ1ZBc65kLHR1Bkyf5zn6pN3SvGKIlFNGplhrO9QSXanLOMQTLCa0YJCRrCZm/CZmrLTm7WzCK4GJDiWUdFeYx1LCFg3NMd0XmCuF3Y5rITLDUsYS9zoHVzwnJoYpSTQoObyEzr4cFBNqYTopoaU/wkyLZ2lPhX/5Y95ulxGTV7KjhWrOZgl8MyUUafjYraNjNU1N3IWcjT5WzWqjwtoarHSUObGYO3GCJZpsBlnJGPd6ZYLyl1GdCA2625IwwJDP8GUKymbzuyPlZlvTUsaUh5zFDhRWFzPKKZLAlWdcQbObgF9tOqOsmB1dqcqYJmWstFbZRRI9poolmqiLnU0POvxScpah2iSL5UJNzgScY5+AuIbpO0YD3NCW+dLMszFSdFCWGqG6eVq2uYVNDdICGD6W7EPRWZEY5gpsE9rUkS3mijzzJnm6UpUFXG1hCUeVoS5WfNcFpblELL2qqrCvMvRfd45oalvKU2tiQ6ePJOVMRXase9iTtLJztPxJKLWpo2CRDcJwn2sWSLKIO1WQWNTCvpVUvOZhgSC40JD0dOctaSqzkCRbXsKlb11Oip6PCJ0IwSJM31j3akRxlP7Rwn6aGaUL0qiLnJkvB3xWZ2+Q1TfCwpQH3G0o92UzmX4o/oJNQMMSQc547wVHhdk+VCw01DFYEnTxzZKAm74QmeNNR1w6WzEhNK15VJzuCdxQ53dRUDws5KvwgBMOEgpcVNe0hZI6RXT1Jd0cyj5nsaEAHgVmGaJIlWdsc5Ui2ElrRR6jrRAttNMEAIWrTDFubkZaok7/AkzfIwfuWVq0jHzuCK4QabtLUMVPB3kJ0oyHTSVFlqMALilJf2Rf8k5aaHtMfayocLBS8L89oKoxpJvnAkDPa0qp5DAUTHKWmCcnthlou8iCKaFFLHWcINd1nyIwXqrSxMNmSs6KmoL2QrKuWtlQ5V0120xQ5vRyZS1rgFkWwhiOwiuQbR0OOVhQM9iS3tiXp4RawRPMp5tDletOOBL95MpM01dZTBM9pkn5qF010rIeHFcFZhmSGpYpTsI6nwhqe5C9ynhlpp5ophuRb6WcJFldkVnVEwwxVfrVkvnWUuNLCg5bgboFHPDlDPDmnK7hUrWiIbjadDclujlZcaokOFup4Ri1kacV6jmrrK1hN9bGwpKEBQ4Q6DvIUXOmo6U5LqQM6EPyiKNjVkPnJkDPNEaxhiFay5ExW1NXVUGqcpYYdPcGiCq7z/TSlbhL4pplWXKd7NZO5QQFrefhRQW/NHOsqcIglc4UhWklR8K0QzbAw08CBDnpbgqXdeD/QUsM4RZXDFBW6WJKe/mFPdH0LtBgiq57wFLzlyQzz82qYx5D5WJP5yVJDW01BfyHnS6HKO/reZqId1WGa4Hkh2kWodJ8i6KoIPlAj2hPt76CzXsVR6koPRzWTfKqIentatYpQw2me4AA3y1Kind3SwoOKZDcFXTwl9tWU6mfgRk9d71sKtlNwrjnYw5tC5n5LdKiGry3JKNlHEd3oaMCFHrazBPMp/uNJ+V7IudcSbeOIdjUEdwl0VHCOZo5t6YluEuaC9mQeMgSfOyKnYGFHcIeQ84yQWbuJYJpZw5CzglDH7gKnWqqM9ZTaXcN0TeYhR84eQtJT76JJ1lREe7WnnvsMmRc9FQ7SBBM9mV3lCUdmHk/S2RAMt0QjFNFqQpWjDPQ01DXWUdDBkXziKPjGEP3VP+zIWU2t7im41FOloyWzn/L6dkUy3VLDaZ6appgDLHPjJEsyvJngWEPUyVBiAaHCTEXwrLvSEbV1e1gKJniicWorC1MUrVjB3uDhJE/wgSOzk1DXpk0k73qCM8xw2UvD5kJmDUfOomqMpWCkJRlvKXGmoeBm18USjVIk04SClxTB6YrgLAPLWYK9HLUt5cmc0vYES8GnTeRc6skZbQkWdxRsIcyBRzx1DbTk9FbU0caTPOgJHhJKnOGIVhQqvKmo0llRw9sabrZkDtdg3PqaKi9oatjY8B+G371paMg6+mZFNNtQ04mWBq3rYLOmtWWQp8KJnpy9DdFensyjdqZ+yY40VJlH8wcdLzC8PZnvHMFUTZUrDTkLyQaGus5X5LzpYAf3i+e/ZlhqGqWhh6Ou6xTR9Z6oi5AZZtp7Mj2EEm8oSpxiYZCHU/1fbGdNNNRRoZMhmilEb2gqHOEJDtXkHK/JnG6IrvbPCwV3NhONVdS1thBMs1T4QOBcTWa2IzhMk2nW5Kyn9tXUtpv9RsG2msxk+ZsQzRQacJncpgke0+T8y5Fzj8BiGo7XlJjaTIlpQs7KFjpqGnKuoyEPeIKnFMkZHvopgh81ySxNFWvJWcKRs70j2FOT012IllEEO1n4pD1513Yg2ssQPOThOkvyrqHUdEXOSEsihmBbTbKX1kLBPWqWkLOqJbjB3GBIZmoa8qWl4CG/iZ7oiA72ZL7TJNeZUY7kFQftDcHHluBzRbCegzMtrRjVQpX2lgoPKKLJAkcbMl01XK2p7yhL8pCBbQ3BN2avJgKvttcrWDK3CiUOVxQ8ZP+pqXKyIxnmBymCg5vJjNfkPK4+c8cIfK8ocVt7kmfd/I5SR1hKvCzUtb+lhgc00ZaO6CyhIQP1Uv4yIZjload72PXX0OIJvnFU+0Zf6MhsJwTfW0r0UwQfW4LNLZl5HK261JCZ4qnBaAreVAS3WrjV0LBnNDUNNDToCEeFfwgcb4gOEqLRhirWkexrCEYKVV711DLYEE1XBEsp5tpTGjorkomKYF9FDXv7fR3BGwbettSxnyL53MBPjsxDZjMh+VUW9NRxq1DhVk+FSxQcaGjV9Pawv6eGByw5qzoy7xk4RsOShqjJwWKe/1pEEfzkobeD/dQJmpqedcyBTy2sr4nGNRH0c0SPWTLrqAc0OQcb/gemKgqucQT7ySWKCn2EUotoCvpZct7RO2sy/QW0IWcXd7pQRQyZVwT2USRO87uhjioTLKV2brpMUcMQRbKH/N2T+UlTpaMls6cmc6CCNy3JdYYSUzzJQ4oSD3oKLncULOiJvjBEC2oqnCJkJluCYy2ZQ5so9YYlZ1VLlQU1mXEW1jZERwj/MUSRc24TdexlqLKfQBtDTScJUV8FszXBEY5ktpD5Ur9hYB4Nb1iikw3JoYpkKX+RodRKFt53MMuRnKSpY31PwYaGaILh3wxJGz9TkTPEETxoCWZrgvOlmyMzxFEwVJE5xZKzvyJ4WxEc16Gd4Xe3Weq4XH2jKRikqOkGQ87hQnC7wBmGYLAnesX3M+S87eFATauuN+Qcrh7xIxXJbUIdMw3JGE3ylCWzrieaqCn4zhGM19TQ3z1oH1AX+pWEqIc7wNGAkULBo/ZxRaV9NNyh4Br3rCHZzbzmSfawBL0dNRwpW1kK9mxPXR9povcdrGSZK9c2k0xwFGzjuniCtRSZCZ6ccZ7gaktmgAOtKbG/JnOkJrjcQTdFMsxRQ2cLY3WTIrlCw1eWKn8R6pvt4GFDso3QoL4a3nLk3G6JrtME3dSenpx7PNFTmga0EaJTLQ061sEeQoWXhSo9LTXsaSjoJQRXeZLtDclbCrYzfzHHeaKjHCVOUkQHO3JeEepr56mhiyaYYKjjNU+Fed1wS5VlhWSqI/hYUdDOkaxiKehoyOnrCV5yBHtbWFqTHCCwtpDcYolesVR5yUzTZBb3RNMd0d6WP+SvhuBmRcGxnuQzT95IC285cr41cLGQ6aJJhmi4TMGempxeimBRQw1tFKV+8jd6KuzoSTqqDxzRtpZkurvKEHxlqXKRIjjfUNNXQsNOsRScoWFLT+YeRZVD3GRN0MdQcKqQjHDMrdGGVu3iYJpQx3WGUvfbmxwFfR20WBq0oYY7LMFhhgYtr8jpaEnaOzjawWWaTP8mMr0t/EPDPoqcnxTBI5o58L7uoWnMrpoqPwgVrlAUWE+V+TQl9rawoyP6QGAlQw2TPRX+YSkxyBC8Z6jhHkXBgQL7WII3DVFnRfCrBfxewv9D6xsyjys4VkhWb9pUU627JllV0YDNHMku/ldNMMXDEo4aFnAkk4U6frNEU4XgZUPmEKHUl44KrzmYamjAbh0JFvGnaTLPu1s9jPCwjFpYiN7z1DTOk/nc07CfDFzmCf7i+bfNHXhDtLeBXzTBT5rkMvWOIxpl4EMh2LGJBu2syDnAEx2naEhHDWMMzPZEhygyS1mS5RTJr5ZkoKbEUoYqr2kqdDUE8ztK7OaIntJkFrIECwv8LJTaVx5XJE86go8dFeZ3FN3rjabCAYpoYEeC9zzJVULBbmZhDyd7ko09ydpNZ3nm2Kee4FPPXHnYEF1nqOFEC08LUVcDvYXkJHW8gTaKCk9YGOeIJhqiE4ToPEepdp7IWFjdwnWaufGMwJJCMtUTTBBK9BGCOy2tGGrJTHIwyEOzp6aPzNMOtlZkDvcEWpP5SVNhfkvDxhmSazTJXYrM9U1E0xwFVwqZQwzJxw6+kGGGUj2FglGGmnb1/G51udRSMNlTw6GGnCcUwVcOpmsqTHa06o72sw1RL02p9z0VbnMLOaIX3QKaYKSCFQzBKEUNHTSc48k53RH9wxGMtpQa5KjjW0W0n6XCCCG4yxNNdhQ4R4l1Ff+2sSd6UFHiIEOyqqFgT01mEUMD+joy75jPhOA+oVVLm309FR4yVOlp4RhLiScNmSmaYF5Pw0STrOIoWMSR2UkRXOMp+M4SHW8o8Zoi6OZgjKOaFar8zZDzkWzvKOjkKBjmCXby8JahhjXULY4KlzgKLvAwxVGhvyd4zxB1d9T0piazmKLCVZY5sKiD0y2ZSYrkUEPUbIk+dlQ4SJHTR50k1DPaUWIdTZW9NJwnJMOECgd7ou/MnppMJ02O1VT4Wsh85MnZzcFTngpXGKo84qmwgKbCL/orR/SzJ2crA+t6Mp94KvxJUeIbT3CQu1uIdlQEOzlKfS3UMcrTiFmOuroocrZrT2AcmamOKg8YomeEKm/rlT2sociMaybaUlFhuqHCM2qIJ+rg4EcDFymiDSxzaHdPcpE62pD5kyM5SBMoA1PaUtfIthS85ig1VPiPPYXgYEMNk4Qq7TXBgo7oT57gPUdwgCHzhIVFPFU6OYJzHAX9m5oNrVjeE61miDrqQ4VSa1oiURTsKHC0IfjNwU2WzK6eqK8jWln4g15TVBnqmDteCJ501PGAocJhhqjZdtBEB6lnhLreFJKxmlKbeGrqLiSThVIbCdGzloasa6lpMQXHCME2boLpJgT7yWaemu6wBONbqGNVRS0PKIL7LckbjmQtR7K8I5qtqel+T/ChJTNIKLjdUMNIRyvOEko9YYl2cwQveBikCNawJKcLBbc7+JM92mysNvd/Fqp8a0k6CNEe7cnZrxlW0wQXaXjaktnRwNOGZKYiONwS7a1JVheq3WgJHlQUGKHKmp4KAxXR/ULURcNgoa4zhKSLpZR3kxRRb0NmD0OFn+UCS7CzI1nbP6+o4x47QZE5xRCt3ZagnYcvmpYQktXdk5YKXTzBC57kKEe0VVuiSYqapssMS3C9p2CKkHOg8B8Pa8p5atrIw3qezIWanMGa5HRDNF6RM9wcacl0N+Q8Z8hsIkSnaIIdHRUOEebAPy1zbCkhM062FCJtif7PU+UtoVXzWKqM1PxXO8cfdruhFQ/a6x3JKYagvVDhQEtNiyiiSQ7OsuRsZUku0CRNDs4Sog6KKjsZgk2bYJqijgsEenoKeniinRXBn/U3lgpPdyDZynQx8IiioMnCep5Ky8mjGs6Wty0l1hUQTcNWswS3WRp2kCNZwJG8omG8JphPUaFbC8lEfabwP7VtM9yoaNCAjpR41VNhrD9LkbN722v0CoZMByFzhaW+MyzRYEWFDQwN2M4/JiT76PuljT3VU/A36eaIThb+R9oZGOAJ9tewkgGvqOMNRWYjT/Cwu99Q8LqDE4TgbLWxJ1jaDDAERsFOFrobgjUsBScaguXU8kKm2RL19tRypSHnHNlHiIZqgufs4opgQdVdwxBNNFBR6kVFqb8ogimOzB6a6HTzrlDHEpYaxjiiA4TMQobkDg2vejjfwJGWmnbVFAw3H3hq2NyQfG7hz4aC+w3BbwbesG0swYayvpAs6++Ri1Vfzx93mFChvyN5xVHTS+0p9aqCAxyZ6ZacZyw5+7uuQkFPR9DDk9NOiE7X1PCYJVjVUqq7JlrHwWALF5nfHNGjApdpqgzx5OwilDhCiDYTgnc9waGW4BdLNNUQvOtpzDOWHDH8D7TR/A/85KljEQu3NREc4Pl/6B1Hhc8Umb5CsKMmGC9EPcxoT2amwHNCmeOEnOPbklnMkbOgIvO5UMOpQrS9UGVdt6iH/fURjhI/WOpaW9OKLYRod6HCUEdOX000wpDZQ6hwg6LgZfOqo1RfT/CrJzjekXOGhpc1VW71ZLbXyyp+93ILbC1kPtIEYx0FIx1VDrLoVzXRKRYWk809yYlC9ImcrinxtabKnzRJk3lAU1OLEN1j2zrYzr2myHRXJFf4h4QKT1qSTzTB5+ZNTzTRkAxX8FcLV2uS8eoQQ2aAkFzvCM72sJIcJET3WPjRk5wi32uSS9rfZajpWEvj9hW42F4o5NytSXYy8IKHay10VYdrcl4SkqscrXpMwyGOgtkajheSxdQqmpxP1L3t4R5PqasFnrQEjytq6qgp9Y09Qx9o4S1FzhUCn1kyHSzBWLemoSGvOqLNhZyBjmCaAUYpMgt4Ck7wBBMMwWKWgjsUwTaGVsxWC1mYoKiyqqeGKYqonSIRQ3KIkHO0pmAxTdBHkbOvfllfr+AA+7gnc50huVKYK393FOyg7rbPO/izI7hE4CnHHHnJ0ogNPRUGeUpsrZZTBJcrovUcJe51BPsr6GkJdhCCsZ6aTtMEb2pqWkqeVtDXE/QVggsU/Nl86d9RMF3DxvZTA58agu810RWawCiSzzXBeU3MMW9oyJUedvNEvQyNu1f10BSMddR1vaLCYpYa/mGocLSiYDcLbQz8aMn5iyF4xBNMs1P0QEOV7o5gaWGuzSeLue4tt3ro7y4Tgm4G/mopdZgl6q0o6KzJWE3mMksNr3r+a6CbT8g5wZNzT9O7fi/zpaOmnz3BRoqos+tv9zMbdpxsqDBOEewtJLt7cg5wtKKbvldpSzRRCD43VFheCI7yZLppggMVBS/KMAdHODJvOwq2NQSbKKKPLdFWQs7Fqo+mpl01JXYRgq8dnGLhTiFzqmWsUMdpllZdbKlyvSdYxhI9YghOtxR8LgSLWHK62mGGVoxzBE8LNWzqH9CUesQzFy5RQzTc56mhi6fgXEWwpKfE5Z7M05ZgZUPmo6auiv8YKzDYwWBLMErIbKHJvOwIrvEdhOBcQ9JdU1NHQ7CXn2XIDFBKU2WAgcX9UAUzDXWd5alwuyJ41Z9rjKLCL4aCp4WarhPm2rH+SaHUYE001JDZ2ZAzXPjdMpZWvC9wmqIB2lLhQ01D5jO06hghWMndbM7yRJMsoCj1vYbnFQVrW9jak3OlEJ3s/96+p33dEPRV5GxiqaGjIthUU6FFEZyqCa5qJrpBdzSw95IUnOPIrCUUjRZQFrbw5PR0R1qiYx3cb6nrWUMrBmmiBQxVHtTew5ICP/ip6g4hed/Akob/32wvBHsIOX83cI8hGeNeNPCIkPmXe8fPKx84OMSRM1MTdXSwjCZ4S30jVGhvqTRak/OVhgGazHuOCud5onEO1lJr6ecVyaOK6H7zqlBlIaHE0oroCgfvGJIdPcmfLNGLjpz7hZwZQpUbFME0A1cIJa7VNORkgfsMBatbKgwwJM9bSvQXeNOvbIjelg6WWvo5kvbKaJJNHexkKNHL9xRyFlH8Ti2riB5wVPhUk7nGkJnoCe428LR/wRGdYIlmWebCyxou1rCk4g/ShugBDX0V0ZQWkh0dOVsagkM0yV6OoLd5ye+pRlsCr0n+KiQrGuq5yJDzrTAXHtLUMduTDBVKrSm3eHL+6ijxhFDX9Z5gVU/wliHYTMiMFpKLNMEywu80wd3meoFmt6VbRMPenhrOc6DVe4pgXU8DnnHakLOIIrlF4FZPIw6R+zxBP0dyq6OOZ4Q5sLKCcz084ok+VsMMyQhNZmmBgX5xIXOEJTmi7VsGTvMTNdHHhpzdbE8Du2oKxgvBqQKdDDnTFOylCFaxR1syz2iqrOI/FEpNc3C6f11/7+ASS6l2inq2ciTrCCzgyemrCL5SVPjQkdPZUmGy2c9Sw9FtR1sS30RmsKPCS4rkIC/2U0MduwucYolGaPjKEyhzmiPYXagyWbYz8LWBDdzRimAXzxx4z8K9hpzlhLq+NiQ97HuKorMUfK/OVvC2JfiHUPCQI/q7J2gjK+tTDNxkCc4TMssqCs4TGtLVwQihyoAWgj9bosU80XGW6Ac9TJGziaUh5+hnFcHOnlaM1iRn29NaqGENTTTSUHCH2tWTeV0osUhH6psuVLjRUmGWhm6OZEshGeNowABHcJ2Bpy2ZszRcKkRXd2QuKVEeXnbfaEq825FguqfgfE2whlChSRMdron+LATTPQ2Z369t4B9C5gs/ylzv+CMmepIDPclFQl13W0rspPd1JOcbghGOEutqCv5qacURQl3dDKyvyJlqKXGPgcM9FfawJAMVmdcspcYKOZc4GjDYkFlK05olNMHyHn4zFNykyOxt99RkHlfwmiHo60l2EKI+mhreEKp080Tbug08BVPcgoqC5zWt+NLDTZ7oNSF51N1qie7Va3uCCwyZbkINf/NED6jzOsBdZjFN8oqG3wxVunqCSYYKf3EdhJyf9YWGf7tRU2oH3VHgPr1fe5J9hOgHd7xQ0y7qBwXr23aGErP0cm64JVjZwsOGqL+mhNgZmhJLW2oY4UhedsyBgzrCKrq7BmcpNVhR6jBPq64Vgi+kn6XE68pp8J5/+0wRHGOpsKenQn9DZntPzjRLZpDAdD2fnSgkG9tmIXnUwQ6WVighs7Yi2MxQ0N3CqYaCXkJ0oyOztMDJjmSSpcpvlrk0RMMOjmArQ04PRV1DO1FwhCVaUVPpKUM03JK5SxPsIWRu8/CGHi8UHChiqGFDTbSRJWeYUDDcH6vJWUxR4k1FXbMUwV6e4AJFXS8oMqsZKqzvYQ9DDQdZckY4aGsIhtlubbd2r3j4QBMoTamdPZk7O/Bf62lacZwneNjQoGcdVU7zJOd7ghsUHOkosagic6cnWc8+4gg285R6zZP5s1/LUbCKIznTwK36PkdwlOrl4U1LwfdCCa+IrvFkmgw1PCAUXKWo0sURXWcI2muKJlgyFzhynCY4RBOsqCjoI1R5zREco0n2Vt09BQtYSizgKNHfUmUrQ5UOCh51BFcLmY7umhYqXKQomOop8bUnWNNQcIiBcYaC6xzMNOS8JQQfeqKBmmglB+97ok/lfk3ygaHSyZaCRTzRxQo6GzLfa2jWBPepw+UmT7SQEJyiyRkhBLMVOfcoMjcK0eZChfUNzFAUzCsEN5vP/X1uP/n/aoMX+K+nw/Hjr/9xOo7j7Pju61tLcgvJpTWXNbfN5jLpi6VfCOviTktKlFusQixdEKWmEBUKNaIpjZRSSOXSgzaaKLdabrm1/9nZ+/f+vd/vz/v9+Xy+zZ7PRorYoZqyLrCwQdEAixxVOEXNNnjX2nUSRlkqGmWowk8lxR50JPy9Bo6qJXaXwNvREBvnThPEPrewryLhcAnj5WE15Fqi8W7R1sAuEu86S4ENikItFN4xkv9Af4nXSnUVcLiA9xzesFpivRRVeFKtsMRaKBhuSbjOELnAUtlSQUpXgdfB4Z1oSbnFEetbQ0IrAe+Y+pqnDcEJFj6S8LDZzZHwY4e3XONNlARraomNEt2bkvGsosA3ioyHm+6jCMbI59wqt4eeara28IzEmyPgoRaUOEDhTVdEJhmCoTWfC0p8aNkCp0oYqih2iqGi4yXeMkOsn4LdLLnmKfh/YogjNsPebeFGR4m9BJHLzB61XQ3BtpISfS2FugsK9FAtLWX1dCRcrCnUp44CNzuCowUZmxSRgYaE6Za0W2u/E7CVXCiI/UOR8aAm1+OSyE3mOUcwyc1zBBeoX1kiKy0Zfxck1Gsyulti11i83QTBF5Kg3pDQThFMVHiPSlK+0cSedng/VaS8bOZbtsBcTcZAR8JP5KeqQ1OYKAi20njdNNRpgnsU//K+JnaXJaGTomr7aYIphoRn9aeShJWKEq9LcozSF7QleEfDI5LYm5bgVkFkRwVDBCVu0DDIkGupo8TZBq+/pMQURYErJQmPKGKjNDkWOLx7Jd5QizdUweIaKrlP7SwJDhZvONjLkOsBBX9UpGxnydhXkfBLQ8IxgojQbLFnJf81JytSljclYYyEFyx0kVBvKWOFJmONpshGAcsduQY5giVNCV51eOdJYo/pLhbvM0uDHSevNKRcrKZIqnCtJeEsO95RoqcgGK4ocZcho1tTYtcZvH41pNQ7vA0WrhIfOSraIIntIAi+NXWCErdbkvrWwjRLrt0NKUdL6KSOscTOdMSOUtBHwL6OLA0vNSdynaWQEnCpIvKaIrJJEbvHkmuNhn6OjM8VkSGSqn1uYJCGHnq9I3aLhNME3t6GjIkO7xrNFumpyTNX/NrwX7CrIRiqqWijI9JO4d1iieykyfiposQIQ8YjjsjlBh6oHWbwRjgYJQn2NgSnNycmJAk3NiXhx44Sxykihxm8ybUwT1OVKySc7vi3OXVkdBJ4AyXBeksDXG0IhgtYY0lY5ahCD0ehborIk5aUWRJviMA7Xt5kyRjonrXENkm8yYqgs8VzgrJmClK20uMM3jRJ0FiQICQF9hdETlLQWRIb5ki6WDfWRPobvO6a4GP5mcOrNzDFELtTkONLh9dXE8xypEg7z8A9jkhrQ6Fhjlg/QVktJXxt4WXzT/03Q8IaQWSqIuEvloQ2mqC9Jfi7wRul4RX3pSPlzpoVlmCtI2jvKHCFhjcM3sN6lqF6HxnKelLjXWbwrpR4xzuCrTUZx2qq9oAh8p6ixCUGr78g8oyjRAtB5CZFwi80VerVpI0h+IeBxa6Zg6kWvpDHaioYYuEsRbDC3eOmC2JvGYLeioxGknL2UATNJN6hmtj1DlpLvDVmocYbrGCVJKOrg4X6DgddLA203BKMFngdJJFtFd7vJLm6KEpc5yjQrkk7M80SGe34X24nSex1Ra5Omgb71JKyg8SrU3i/kARKwWpH0kOGhKkObyfd0ZGjvyXlAkVZ4xRbYJ2irFMkFY1SwyWxr2oo4zlNiV+7zmaweFpT4kR3kaDAFW6xpSqzJay05FtYR4HmZhc9UxKbbfF2V8RG1MBmSaE+kmC6JnaRXK9gsiXhJHl/U0qM0WTcbyhwkYIvFGwjSbjfwhiJt8ZSQU+Bd5+marPMOkVkD0muxYLIfEuhh60x/J92itguihJSEMySVPQnTewnEm+620rTQEMsOfo4/kP/0ARvWjitlpSX7GxBgcMEsd3EEeYWvdytd+Saawi6aCIj1CkGb6Aj9rwhx16Cf3vAwFy5pyLhVonXzy51FDpdEblbkdJbUcEPDEFzQ8qNmhzzLTmmKWKbFCXeEuRabp6rxbvAtLF442QjQ+wEA9eL1xSR7Q0JXzlSHjJ4exq89yR0laScJ/FW6z4a73pFMEfDiRZvuvijIt86RaSFOl01riV2mD1UEvxGk/Geg5aWwGki1zgKPG9J2U8PEg8qYvMsZeytiTRXBMslCU8JSlxi8EabjwUldlDNLfzTUmCgxWsjqWCOHavYAqsknKFIO0yQ61VL5AVFxk6WhEaCAkdJgt9aSkzXlKNX2jEa79waYuc7gq0N3GDJGCBhoiTXUEPsdknCUE1CK0fwsiaylSF2uiDyO4XX3pFhNd7R4itFGc0k/ElBZwWvq+GC6szVeEoS/MZ+qylwpKNKv9Z469UOjqCjwlusicyTxG6VpNxcQ8IncoR4RhLbR+NdpGGmJWOcIzJGUuKPGpQg8rrG21dOMqQssJQ4RxH5jaUqnZuQ0F4Q+cjxLwPtpZbIAk3QTJHQWBE5S1BokoVtDd6lhqr9UpHSUxMcIYl9pojsb8h4SBOsMQcqvOWC2E8EVehqiJ1hrrAEbQxeK0NGZ0Gkq+guSRgniM23bIHVkqwx4hiHd7smaOyglyIyQuM978j4VS08J/A2G1KeMBRo4fBaSNhKUEZfQewVQ/C1I+MgfbEleEzCUw7mKXI0M3hd1EESVji8x5uQ41nxs1q4RMJCCXs7Iq9acpxn22oSDnQ/sJTxsCbHIYZiLyhY05TY0ZLIOQrGaSJDDN4t8pVaIrsqqFdEegtizc1iTew5Q4ayBDMUsQMkXocaYkc0hZua412siZ1rSXlR460zRJ5SlHGe5j801RLMlJTxtaOM3Q1pvxJ45zUlWFD7rsAbpfEm1JHxG0eh8w2R7QQVzBUw28FhFp5QZzq8t2rx2joqulYTWSuJdTYfWwqMFMcovFmSyJPNyLhE4E10pHzYjOC3huArRa571ZsGajQpQx38SBP5pyZB6lMU3khDnp0MBV51BE9o2E+TY5Ml2E8S7C0o6w1xvCZjf0HkVEHCzFoyNmqC+9wdcqN+Tp7jSDheE9ws8Y5V0NJCn2bk2tqSY4okdrEhx1iDN8cSudwepWmAGXKcJXK65H9to8jYQRH7SBF01ESUJdd0TayVInaWhLkOjlXE5irKGOnI6GSWGCJa482zBI9rCr0jyTVcEuzriC1vcr6mwFGSiqy5zMwxBH/TJHwjSPhL8+01kaaSUuMFKTcLEvaUePcrSmwn8DZrgikWb7CGPxkSjhQwrRk57tctmxLsb9sZvL9LSlyuSLlWkqOjwduo8b6Uv1DkmudIeFF2dHCgxVtk8dpIvHpBxhEOdhKk7OLIUSdJ+cSRY57B+0DgGUUlNfpthTfGkauzxrvTsUUaCVhlKeteTXCoJDCa2NOKhOmC4G1H8JBd4OBZReSRGkqcb/CO1PyLJTLB4j1q8JYaIutEjSLX8YKM+a6phdMsdLFUoV5RTm9JSkuDN8WcIon0NZMNZWh1q8C7SJEwV5HxrmnnTrf3KoJBlmCYI2ilSLlfEvlE4011NNgjgthzEua0oKK7JLE7HZHlEl60BLMVFewg4EWNt0ThrVNEVkkiTwpKXSWJzdRENgvKGq4IhjsiezgSFtsfCUq8qki5S1LRQeYQQ4nemmCkImWMw3tFUoUBZk4NOeZYEp4XRKTGa6wJjrWNHBVJR4m3FCnbuD6aak2WsMTh3SZImGCIPKNgsDpVwnsa70K31lCFJZYcwwSMFcQulGTsZuEaSdBXkPGZhu0FsdUO73RHjq8MPGGIfaGIbVTk6iuI3GFgucHrIQkmWSJdBd7BBu+uOryWAhY7+Lki9rK5wtEQzWwvtbqGhIMFwWRJsElsY4m9IIg9L6lCX0VklaPAYkfkZEGDnOWowlBJjtMUkcGK4Lg6EtoZInMUBVYLgn0UsdmCyCz7gIGHFfk+k1QwTh5We7A9x+IdJ6CvIkEagms0hR50eH9UnTQJ+2oiKyVlLFUE+8gBGu8MQ3CppUHesnjTHN4QB/UGPhCTHLFPHMFrCqa73gqObUJGa03wgbhHkrCfpEpzNLE7JDS25FMKhlhKKWKfCgqstLCPu1zBXy0J2ztwjtixBu8UTRn9LVtkmCN2iyFhtME70JHRQ1KVZXqKI/KNIKYMCYs1GUMEKbM1bKOI9LDXC7zbHS+bt+1MTWS9odA9DtrYtpbImQJ2VHh/lisEwaHqUk1kjKTAKknkBEXkbkdMGwq0dnhzLJF3NJH3JVwrqOB4Sca2hti75nmJN0WzxS6UxDYoEpxpa4htVlRjkYE7DZGzJVU72uC9IyhQL4i8YfGWSYLLNcHXloyz7QhNifmKSE9JgfGmuyLhc403Xm9vqcp6gXe3xuuv8F6VJNxkyTHEkHG2g0aKXL0MsXc1bGfgas2//dCONXiNLCX+5mB7eZIl1kHh7ajwpikyzlUUWOVOsjSQlsS+M0R+pPje/dzBXRZGO0rMtgQrLLG9VSu9n6CMXS3BhwYmSoIBhsjNBmZbgusE9BCPCP5triU4VhNbJfE+swSP27aayE8tuTpYYjtrYjMVGZdp2NpS1s6aBnKSHDsbKuplKbHM4a0wMFd/5/DmGyKrJSUaW4IBrqUhx0vyfzTBBLPIUcnZdrAkNsKR0sWRspumSns6Ch0v/qqIbBYUWKvPU/CFoyrDJGwSNFhbA/MlzKqjrO80hRbpKx0Jewsi/STftwGSlKc1JZyAzx05dhLEdnfQvhZOqiHWWEAHC7+30FuRcZUgaO5gpaIK+xsiHRUsqaPElTV40xQZQ107Q9BZE1nryDVGU9ZSQ47bmhBpLcYpUt7S+xuK/FiT8qKjwXYw5ypS2iuCv7q1gtgjhuBuB8LCFY5cUuCNtsQOFcT+4Ih9JX+k8Ea6v0iCIRZOtCT0Et00JW5UeC85Cg0ScK0k411HcG1zKtre3SeITBRk7WfwDhEvaYLTHP9le0m8By0JDwn4TlLW/aJOvGHxdjYUes+ScZigCkYQdNdEOhkiezgShqkx8ueKjI8lDfK2oNiOFvrZH1hS+tk7NV7nOmLHicGWEgubkXKdwdtZknCLJXaCpkrjZBtLZFsDP9CdxWsSr05Sxl6CMmoFbCOgryX40uDtamB7SVmXW4Ihlgpmq+00tBKUUa83WbjLUNkzDmY7cow1JDygyPGlhgGKYKz4vcV7QBNbJIgM11TUqZaMdwTeSguH6rOaw1JRKzaaGyxVm2EJ/uCIrVWUcZUkcp2grMsEjK+DMwS59jQk3Kd6SEq1d0S6uVmO4Bc1lDXTUcHjluCXEq+1OlBDj1pi9zgiXxnKuE0SqTXwhqbETW6RggMEnGl/q49UT2iCzgJvRwVXS2K/d6+ZkyUl7jawSVLit46EwxVljDZwoSQ20sDBihztHfk2yA8NVZghiXwrYHQdfKAOtzsayjhY9bY0yE2CWEeJ9xfzO423xhL5syS2TFJofO2pboHob0nY4GiAgRrvGQEDa/FWSsoaaYl0syRsEt3kWoH3B01shCXhTUWe9w3Bt44SC9QCh3eShQctwbaK2ApLroGCMlZrYqvlY3qYhM0aXpFkPOuoqJ3Dm6fxXrGwVF9gCWZagjPqznfkuMKQ8DPTQRO8ZqG1hPGKEm9IgpGW4DZDgTNriTxvFiq+Lz+0cKfp4wj6OCK9JSnzNSn9LFU7UhKZZMnYwcJ8s8yRsECScK4j5UOB95HFO0CzhY4xJxuCix0lDlEUeMdS6EZBkTsUkZ4K74dugyTXS7aNgL8aqjDfkCE0ZbwkCXpaWCKhl8P7VD5jxykivSyxyZrYERbe168LYu9ZYh86IkscgVLE7tWPKmJv11CgoyJltMEbrohtVAQfO4ImltiHEroYEs7RxAarVpY8AwXMcMReFOTYWe5iiLRQxJ5Q8DtJ8LQhWOhIeFESPGsILhbNDRljNbHzNRlTFbk2S3L0NOS6V1KFJYKUbSTcIIhM0wQ/s2TM0SRMNcQmSap3jCH4yhJZKSkwyRHpYYgsFeQ4U7xoCB7VVOExhXepo9ABBsYbvGWKXPME3lyH95YioZ0gssQRWWbI+FaSMkXijZXwgiTlYdPdkNLaETxlyDVIwqeaEus0aTcYcg0RVOkpR3CSJqIddK+90JCxzsDVloyrFd5ZAr4TBKfaWa6boEA7C7s6EpYaeFPjveooY72mjIccLHJ9HUwVlDhKkmutJDJBwnp1rvulJZggKDRfbXAkvC/4l3ozQOG9a8lxjx0i7nV4jSXc7vhe3OwIxjgSHjdEhhsif9YkPGlus3iLFDnWOFhtCZbJg0UbQcIaR67JjthoCyMEZRwhiXWyxO5QxI6w5NhT4U1WsJvDO60J34fW9hwzwlKij6ZAW9ne4L0s8C6XeBMEkd/LQy1VucBRot6QMlbivaBhoBgjqGiCJNhsqVp/S2SsG6DIONCR0dXhvWbJ+MRRZJkkuEjgDXJjFQW6SSL7GXK8Z2CZg7cVsbWGoKmEpzQ5elpiy8Ryg7dMkLLUEauzeO86CuwlSOlgYLojZWeJ9xM3S1PWfEfKl5ISLQ0MEKR8YOB2QfCxJBjrKPCN4f9MkaSsqoVXJBmP7EpFZ9UQfOoOFwSzBN4MQ8LsGrymlipcJQhmy0GaQjPqCHaXRwuCZwRbqK2Fg9wlClZqYicrIgMdZfxTQ0c7TBIbrChxmuzoKG8XRaSrIhhiyNFJkrC7oIAWMEOQa5aBekPCRknCo4IKPrYkvCDI8aYmY7WFtprgekcJZ3oLIqssCSMtFbQTJKwXYy3BY5oCh2iKPCpJOE+zRdpYgi6O2KmOAgvVCYaU4ySRek1sgyFhJ403QFHiVEmJHwtybO1gs8Hr5+BETQX3War0qZngYGgtVZtoqd6vFSk/UwdZElYqyjrF4HXUeFspIi9IGKf4j92pKGAdCYMVsbcV3kRF0N+R8LUd5PCsIGWoxDtBkCI0nKofdJQxT+LtZflvuc8Q3CjwWkq8KwUpHzkK/NmSsclCL0nseQdj5FRH5CNHSgtLiW80Of5HU9Hhlsga9bnBq3fEVltKfO5IaSTmGjjc4J0otcP7QsJUSQM8pEj5/wCuUuC2DWz8AAAAAElFTkSuQmCC");
68
+ }
69
+
70
+ /************************************************************
71
+ * Blackboard
72
+ ************************************************************/
73
+ .cm-s-blackboard { background: #0C1021; color: #F8F8F8; }
74
+ .cm-s-blackboard .CodeMirror-selected { background: #253B76 !important; }
75
+ .cm-s-blackboard .CodeMirror-gutter { background: #0C1021; border-right: 0; }
76
+ .cm-s-blackboard .CodeMirror-gutter-text { color: #888; }
77
+ .cm-s-blackboard .CodeMirror-cursor { border-left: 1px solid #A7A7A7 !important; }
78
+ .cm-s-blackboard .cm-keyword { color: #FBDE2D; }
79
+ .cm-s-blackboard .cm-atom { color: #D8FA3C; }
80
+ .cm-s-blackboard .cm-number { color: #D8FA3C; }
81
+ .cm-s-blackboard .cm-def { color: #8DA6CE; }
82
+ .cm-s-blackboard .cm-variable { color: #FF6400; }
83
+ .cm-s-blackboard .cm-operator { color: #FBDE2D;}
84
+ .cm-s-blackboard .cm-comment { color: #AEAEAE; }
85
+ .cm-s-blackboard .cm-string { color: #61CE3C; }
86
+ .cm-s-blackboard .cm-string-2 { color: #61CE3C; }
87
+ .cm-s-blackboard .cm-meta { color: #D8FA3C; }
88
+ .cm-s-blackboard .cm-error { background: #9D1E15; color: #F8F8F8; }
89
+ .cm-s-blackboard .cm-builtin { color: #8DA6CE; }
90
+ .cm-s-blackboard .cm-tag { color: #8DA6CE; }
91
+ .cm-s-blackboard .cm-attribute { color: #8DA6CE; }
92
+ .cm-s-blackboard .cm-header { color: #FF6400; }
93
+ .cm-s-blackboard .cm-hr { color: #AEAEAE; }
94
+ .cm-s-blackboard .cm-link { color: #8DA6CE; }
95
+
96
  /************************************************************
97
  * Cobalt
98
  ************************************************************/
99
  .cm-s-cobalt { background: #002240; color: white; }
100
+ .cm-s-cobalt div.CodeMirror-selected { background: #b36539 !important; }
101
  .cm-s-cobalt .CodeMirror-gutter { background: #002240; border-right: 1px solid #aaa; }
102
  .cm-s-cobalt .CodeMirror-gutter-text { color: #d0d0d0; }
103
  .cm-s-cobalt .CodeMirror-cursor { border-left: 1px solid white !important; }
153
  .cm-s-elegant span.cm-error {background-color: #fdd;}
154
  .cm-s-elegant span.cm-link {color: #762;}
155
 
156
+ /************************************************************
157
+ * Lesser Dark
158
+ ************************************************************/
159
+ .cm-s-lesser-dark {line-height: 1.3em;}
160
+ .cm-s-lesser-dark {font-family: 'Bitstream Vera Sans Mono', 'DejaVu Sans Mono', 'Monaco', Courier, monospace !important;}
161
+ .cm-s-lesser-dark { background: #262626; color: #EBEFE7; text-shadow: 0 -1px 1px #262626; }
162
+ .cm-s-lesser-dark div.CodeMirror-selected {background: #45443B !important;} /* 33322B*/
163
+ .cm-s-lesser-dark .CodeMirror-cursor { border-left: 1px solid white !important; }
164
+ .cm-s-lesser-dark .CodeMirror-lines { margin-left:3px; margin-right:3px; }/*editable code holder*/
165
+ div.CodeMirror span.CodeMirror-matchingbracket { color: #7EFC7E; }/*65FC65*/
166
+ .cm-s-lesser-dark .CodeMirror-gutter { background: #262626; border-right:1px solid #aaa; padding-right:3px; min-width:2.5em; }
167
+ .cm-s-lesser-dark .CodeMirror-gutter-text { color: #777; }
168
+ .cm-s-lesser-dark span.cm-keyword { color: #599eff; }
169
+ .cm-s-lesser-dark span.cm-atom { color: #C2B470; }
170
+ .cm-s-lesser-dark span.cm-number { color: #B35E4D; }
171
+ .cm-s-lesser-dark span.cm-def {color: white;}
172
+ .cm-s-lesser-dark span.cm-variable { color:#D9BF8C; }
173
+ .cm-s-lesser-dark span.cm-variable-2 { color: #669199; }
174
+ .cm-s-lesser-dark span.cm-variable-3 { color: white; }
175
+ .cm-s-lesser-dark span.cm-property {color: #92A75C;}
176
+ .cm-s-lesser-dark span.cm-operator {color: #92A75C;}
177
+ .cm-s-lesser-dark span.cm-comment { color: #666; }
178
+ .cm-s-lesser-dark span.cm-string { color: #BCD279; }
179
+ .cm-s-lesser-dark span.cm-string-2 {color: #f50;}
180
+ .cm-s-lesser-dark span.cm-meta { color: #738C73; }
181
+ .cm-s-lesser-dark span.cm-error { color: #9d1e15; }
182
+ .cm-s-lesser-dark span.cm-qualifier {color: #555;}
183
+ .cm-s-lesser-dark span.cm-builtin { color: #ff9e59; }
184
+ .cm-s-lesser-dark span.cm-bracket { color: #EBEFE7; }
185
+ .cm-s-lesser-dark span.cm-tag { color: #669199; }
186
+ .cm-s-lesser-dark span.cm-attribute {color: #00c;}
187
+ .cm-s-lesser-dark span.cm-header {color: #a0a;}
188
+ .cm-s-lesser-dark span.cm-quote {color: #090;}
189
+ .cm-s-lesser-dark span.cm-hr {color: #999;}
190
+ .cm-s-lesser-dark span.cm-link {color: #00c;}
191
+
192
  /************************************************************
193
  * Monokai
194
  ************************************************************/
195
  .cm-s-monokai {background: #272822; color: #f8f8f2;}
196
+ .cm-s-monokai div.CodeMirror-selected {background: #ffe792 !important;color:#00F !important;}
197
  .cm-s-monokai .CodeMirror-gutter {background: #272822; border-right: 0px;}
198
  .cm-s-monokai .CodeMirror-gutter-text {color: #d0d0d0;}
199
  .cm-s-monokai .CodeMirror-cursor {border-left: 1px solid #f8f8f0 !important;}
229
  * Night
230
  ************************************************************/
231
  .cm-s-night { background: #0a001f; color: #f8f8f8; }
232
+ .cm-s-night div.CodeMirror-selected { background: #a8f !important; }
233
  .cm-s-night .CodeMirror-gutter { background: #0a001f; border-right: 1px solid #aaa; }
234
  .cm-s-night .CodeMirror-gutter-text { color: #f8f8f8; }
235
  .cm-s-night .CodeMirror-cursor { border-left: 1px solid white !important; }
252
  ************************************************************/
253
  .cm-s-rubyblue { font:13px/1.4em Trebuchet, Verdana, sans-serif; }
254
  .cm-s-rubyblue { background: #112435; color: white; }
255
+ .cm-s-rubyblue div.CodeMirror-selected { background: #FFE792 !important;color:#00F !important; }
256
  .cm-s-rubyblue .CodeMirror-gutter { background: #1F4661; border-right: 7px solid #3E7087; min-width:2.5em; }
257
  .cm-s-rubyblue .CodeMirror-gutter-text { color: white; }
258
  .cm-s-rubyblue .CodeMirror-cursor { border-left: 1px solid white !important; }
268
  .cm-s-rubyblue span.cm-bracket { color: #F0F; }
269
  .cm-s-rubyblue span.cm-link { color: #F4C20B; }
270
  .cm-s-rubyblue span.CodeMirror-matchingbracket { color:#F0F !important; }
271
+ .cm-s-rubyblue span.cm-builtin, .cm-s-rubyblue span.cm-special { color: #FF9D00; }
272
+
273
+ /************************************************************
274
+ * Vibrant Ink
275
+ ************************************************************/
276
+ .cm-s-vibrant-ink { background: black; color: white; }
277
+ .cm-s-vibrant-ink .CodeMirror-selected { background: #35493c !important; }
278
+ .cm-s-vibrant-ink .CodeMirror-gutter { background: #002240; border-right: 1px solid #aaa; }
279
+ .cm-s-vibrant-ink .CodeMirror-gutter-text { color: #d0d0d0; }
280
+ .cm-s-vibrant-ink .CodeMirror-cursor { border-left: 1px solid white !important; }
281
+ .cm-s-vibrant-ink .cm-keyword { color: #CC7832; }
282
+ .cm-s-vibrant-ink .cm-atom { color: #FC0; }
283
+ .cm-s-vibrant-ink .cm-number { color: #FFEE98; }
284
+ .cm-s-vibrant-ink .cm-def { color: #8DA6CE; }
285
+ .cm-s-vibrant-ink span.cm-variable-2, .cm-s-cobalt span.cm-tag { color: #FFC66D }
286
+ .cm-s-vibrant-ink span.cm-variable-3, .cm-s-cobalt span.cm-def { color: #FFC66D }
287
+ .cm-s-vibrant-ink .cm-operator { color: #888; }
288
+ .cm-s-vibrant-ink .cm-comment { color: gray; font-weight: bold; }
289
+ .cm-s-vibrant-ink .cm-string { color: #A5C25C }
290
+ .cm-s-vibrant-ink .cm-string-2 { color: red }
291
+ .cm-s-vibrant-ink .cm-meta { color: #D8FA3C; }
292
+ .cm-s-vibrant-ink .cm-error { border-bottom: 1px solid red; }
293
+ .cm-s-vibrant-ink .cm-builtin { color: #8DA6CE; }
294
+ .cm-s-vibrant-ink .cm-tag { color: #8DA6CE; }
295
+ .cm-s-vibrant-ink .cm-attribute { color: #8DA6CE; }
296
+ .cm-s-vibrant-ink .cm-header { color: #FF6400; }
297
+ .cm-s-vibrant-ink .cm-hr { color: #AEAEAE; }
298
+ .cm-s-vibrant-ink .cm-link { color: blue; }
299
+
300
+ /************************************************************
301
+ * XQ-Dark
302
+ ************************************************************/
303
+ /*
304
+ Copyright (C) 2011 by MarkLogic Corporation
305
+ Author: Mike Brevoort <mike@brevoort.com>
306
+
307
+ Permission is hereby granted, free of charge, to any person obtaining a copy
308
+ of this software and associated documentation files (the "Software"), to deal
309
+ in the Software without restriction, including without limitation the rights
310
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
311
+ copies of the Software, and to permit persons to whom the Software is
312
+ furnished to do so, subject to the following conditions:
313
+
314
+ The above copyright notice and this permission notice shall be included in
315
+ all copies or substantial portions of the Software.
316
+
317
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
318
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
319
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
320
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
321
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
322
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
323
+ THE SOFTWARE.
324
+ */
325
+ .cm-s-xq-dark { background: #0a001f; color: #f8f8f8; }
326
+ .cm-s-xq-dark span.CodeMirror-selected { background: #a8f !important; }
327
+ .cm-s-xq-dark .CodeMirror-gutter { background: #0a001f; border-right: 1px solid #aaa; }
328
+ .cm-s-xq-dark .CodeMirror-gutter-text { color: #f8f8f8; }
329
+ .cm-s-xq-dark .CodeMirror-cursor { border-left: 1px solid white !important; }
330
+
331
+ .cm-s-xq-dark span.cm-keyword {color: #FFBD40;}
332
+ .cm-s-xq-dark span.cm-atom {color: #6C8CD5;}
333
+ .cm-s-xq-dark span.cm-number {color: #164;}
334
+ .cm-s-xq-dark span.cm-def {color: #FFF; text-decoration:underline;}
335
+ .cm-s-xq-dark span.cm-variable {color: #FFF;}
336
+ .cm-s-xq-dark span.cm-variable-2 {color: #EEE;}
337
+ .cm-s-xq-dark span.cm-variable-3 {color: #DDD;}
338
+ .cm-s-xq-dark span.cm-property {}
339
+ .cm-s-xq-dark span.cm-operator {}
340
+ .cm-s-xq-dark span.cm-comment {color: gray;}
341
+ .cm-s-xq-dark span.cm-string {color: #9FEE00;}
342
+ .cm-s-xq-dark span.cm-meta {color: yellow;}
343
+ .cm-s-xq-dark span.cm-error {color: #f00;}
344
+ .cm-s-xq-dark span.cm-qualifier {color: #FFF700;}
345
+ .cm-s-xq-dark span.cm-builtin {color: #30a;}
346
+ .cm-s-xq-dark span.cm-bracket {color: #cc7;}
347
+ .cm-s-xq-dark span.cm-tag {color: #FFBD40;}
348
+ .cm-s-xq-dark span.cm-attribute {color: #FFF700;}
js/posts-jquery.js CHANGED
@@ -194,11 +194,14 @@ tags = {};
194
  }
195
  function isTinyMCE() {
196
  is_tinyMCE_active = true;
197
- if (typeof(tinyMCE) != "undefined") {
198
  if (tinyMCE.activeEditor == null || tinyMCE.activeEditor.isHidden() != false) {
199
  is_tinyMCE_active = false;
200
  }
201
  }
 
 
 
202
  return is_tinyMCE_active;
203
  }
204
  $.fn.setContentCursor = function(start, end) {
@@ -249,8 +252,10 @@ tags = {};
249
  indentWithTabs: WPEPosts.indentWithTabs,
250
  tabSize: WPEPosts.tabSize,
251
  onCursorActivity: function() {
252
- editor.setLineClass(hlLine, null);
253
- hlLine = editor.setLineClass(editor.getCursor().line, activeLine);
 
 
254
  },
255
  onChange: function() {
256
  changeTrue();
@@ -281,11 +286,16 @@ tags = {};
281
  'Esc': toggleFullscreenEditing
282
  }
283
  });
284
- var hlLine = editor.setLineClass(0, activeLine);
 
 
285
  if(WPEPosts.editorHeight) {
286
  $('.CodeMirror-scroll, .CodeMirror, .CodeMirror-gutter').height(WPEPosts.editorHeight + 'px');
287
  var scrollDivHeight = $('.CodeMirror-scroll div:first-child').height();
288
- $('.CodeMirror-gutter').height(scrollDivHeight);
 
 
 
289
  }
290
  if(!$('.CodeMirror .quicktags-toolbar').length) {
291
  $('.CodeMirror').prepend('<div class="quicktags-toolbar">' +
194
  }
195
  function isTinyMCE() {
196
  is_tinyMCE_active = true;
197
+ if(typeof(tinyMCE) != "undefined") {
198
  if (tinyMCE.activeEditor == null || tinyMCE.activeEditor.isHidden() != false) {
199
  is_tinyMCE_active = false;
200
  }
201
  }
202
+ else {
203
+ is_tinyMCE_active = false;
204
+ }
205
  return is_tinyMCE_active;
206
  }
207
  $.fn.setContentCursor = function(start, end) {
252
  indentWithTabs: WPEPosts.indentWithTabs,
253
  tabSize: WPEPosts.tabSize,
254
  onCursorActivity: function() {
255
+ if(activeLine) {
256
+ editor.setLineClass(hlLine, null, null);
257
+ hlLine = editor.setLineClass(editor.getCursor().line, null, activeLine);
258
+ }
259
  },
260
  onChange: function() {
261
  changeTrue();
286
  'Esc': toggleFullscreenEditing
287
  }
288
  });
289
+ if(activeLine) {
290
+ var hlLine = editor.setLineClass(0, activeLine);
291
+ }
292
  if(WPEPosts.editorHeight) {
293
  $('.CodeMirror-scroll, .CodeMirror, .CodeMirror-gutter').height(WPEPosts.editorHeight + 'px');
294
  var scrollDivHeight = $('.CodeMirror-scroll div:first-child').height();
295
+ var editorDivHeight = $('.CodeMirror').height();
296
+ if(scrollDivHeight > editorDivHeight) {
297
+ $('.CodeMirror-gutter').height(scrollDivHeight);
298
+ }
299
  }
300
  if(!$('.CodeMirror .quicktags-toolbar').length) {
301
  $('.CodeMirror').prepend('<div class="quicktags-toolbar">' +
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://wpeditor.net/
4
  Tags: plugin editor, theme editor, page editor, post editor, pages, posts, html, codemirror, plugins, themes, editor, fancybox, post.php, post-new.php, ajax, syntax highlighting, html syntax highlighting
5
  Requires at least: 3.0
6
  Tested up to: 3.4.1
7
- Stable tag: 1.1.0.2
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -69,6 +69,11 @@ Yes! While we don't have a need for further developers at this time, any financi
69
 
70
  == Changelog ==
71
 
 
 
 
 
 
72
  = 1.1.0.2 =
73
  * Added ability to customize tab characters and size for all editors
74
  * Added ability to set custom editor heights for all editors
@@ -111,6 +116,10 @@ Yes! While we don't have a need for further developers at this time, any financi
111
 
112
  == Upgrade Notice ==
113
 
 
 
 
 
114
  = 1.1.0.2 =
115
  CodeMirror 2.33
116
  Fixed issue with media button toolbar not inserting shortcodes/content when in visual mode
4
  Tags: plugin editor, theme editor, page editor, post editor, pages, posts, html, codemirror, plugins, themes, editor, fancybox, post.php, post-new.php, ajax, syntax highlighting, html syntax highlighting
5
  Requires at least: 3.0
6
  Tested up to: 3.4.1
7
+ Stable tag: 1.1.0.3
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
69
 
70
  == Changelog ==
71
 
72
+ = 1.1.0.3 =
73
+ * Added Ambiance, Blackboard, Lesser Dark, Vibrant Ink and XQ-Dark themes
74
+ * Fixed text selection in all editors
75
+ * Fixed post editor highlighter not loading when visual editor is disabled
76
+
77
  = 1.1.0.2 =
78
  * Added ability to customize tab characters and size for all editors
79
  * Added ability to set custom editor heights for all editors
116
 
117
  == Upgrade Notice ==
118
 
119
+ = 1.1.0.3 =
120
+ Fixed text selection in all editors
121
+ Fixed post editor highlighter not loading when visual editor is disabled
122
+
123
  = 1.1.0.2 =
124
  CodeMirror 2.33
125
  Fixed issue with media button toolbar not inserting shortcodes/content when in visual mode
views/plugin-editor.php CHANGED
@@ -171,7 +171,10 @@
171
  <?php if(WPEditorSetting::getValue('enable_plugin_editor_height')) { ?>
172
  $('.CodeMirror-scroll, .CodeMirror').height('<?php echo WPEditorSetting::getValue("enable_plugin_editor_height"); ?>px');
173
  var scrollDivHeight = $('.CodeMirror-scroll div:first-child').height();
174
- $('.CodeMirror-gutter').height(scrollDivHeight);
 
 
 
175
  <?php } ?>
176
  })
177
  })(jQuery);
@@ -197,8 +200,9 @@
197
  <?php }
198
  else { ?>
199
  var theme = 'default';
200
- <?php }
201
- if(WPEditorSetting::getValue('enable_plugin_active_line')) { ?>
 
202
  var activeLine = 'activeline-' + theme;
203
  <?php } ?>
204
  editor = CodeMirror.fromTextArea(document.getElementById('new-content'), {
@@ -220,8 +224,10 @@
220
  tabSize: 2,
221
  <?php } ?>
222
  onCursorActivity: function() {
223
- editor.setLineClass(hlLine, null);
224
- hlLine = editor.setLineClass(editor.getCursor().line, activeLine);
 
 
225
  },
226
  onChange: function() {
227
  changeTrue();
@@ -231,7 +237,9 @@
231
  'Esc': toggleFullscreenEditing
232
  } // set fullscreen options here
233
  });
234
- var hlLine = editor.setLineClass(0, activeLine);
 
 
235
  }
236
  </script>
237
  </div>
171
  <?php if(WPEditorSetting::getValue('enable_plugin_editor_height')) { ?>
172
  $('.CodeMirror-scroll, .CodeMirror').height('<?php echo WPEditorSetting::getValue("enable_plugin_editor_height"); ?>px');
173
  var scrollDivHeight = $('.CodeMirror-scroll div:first-child').height();
174
+ var editorDivHeight = $('.CodeMirror').height();
175
+ if(scrollDivHeight > editorDivHeight) {
176
+ $('.CodeMirror-gutter').height(scrollDivHeight);
177
+ }
178
  <?php } ?>
179
  })
180
  })(jQuery);
200
  <?php }
201
  else { ?>
202
  var theme = 'default';
203
+ <?php } ?>
204
+ var activeLine = false;
205
+ <?php if(WPEditorSetting::getValue('enable_plugin_active_line')) { ?>
206
  var activeLine = 'activeline-' + theme;
207
  <?php } ?>
208
  editor = CodeMirror.fromTextArea(document.getElementById('new-content'), {
224
  tabSize: 2,
225
  <?php } ?>
226
  onCursorActivity: function() {
227
+ if(activeLine) {
228
+ editor.setLineClass(hlLine, null, null);
229
+ hlLine = editor.setLineClass(editor.getCursor().line, null, activeLine);
230
+ }
231
  },
232
  onChange: function() {
233
  changeTrue();
237
  'Esc': toggleFullscreenEditing
238
  } // set fullscreen options here
239
  });
240
+ if(activeLine) {
241
+ var hlLine = editor.setLineClass(0, activeLine);
242
+ }
243
  }
244
  </script>
245
  </div>
views/settings.php CHANGED
@@ -132,13 +132,18 @@
132
  }
133
  ?>
134
  <option value="default" <?php echo ($theme == 'default') ? 'selected="selected"' : '' ?>><?php _e('Default', 'wpeditor'); ?></option>
 
 
135
  <option value="cobalt" <?php echo ($theme == 'cobalt') ? 'selected="selected"' : '' ?>><?php _e('Cobalt', 'wpeditor'); ?></option>
136
  <option value="eclipse" <?php echo ($theme == 'eclipse') ? 'selected="selected"' : '' ?>><?php _e('Eclipse', 'wpeditor'); ?></option>
137
  <option value="elegant" <?php echo ($theme == 'elegant') ? 'selected="selected"' : '' ?>><?php _e('Elegant', 'wpeditor'); ?></option>
 
138
  <option value="monokai" <?php echo ($theme == 'monokai') ? 'selected="selected"' : '' ?>><?php _e('Monokai', 'wpeditor'); ?></option>
139
  <option value="neat" <?php echo ($theme == 'neat') ? 'selected="selected"' : '' ?>><?php _e('Neat', 'wpeditor'); ?></option>
140
  <option value="night" <?php echo ($theme == 'night') ? 'selected="selected"' : '' ?>><?php _e('Night', 'wpeditor'); ?></option>
141
  <option value="rubyblue" <?php echo ($theme == 'rubyblue') ? 'selected="selected"' : '' ?>><?php _e('Ruby Blue', 'wpeditor'); ?></option>
 
 
142
  </select>
143
  </li>
144
  <li class="indent description">
@@ -353,13 +358,18 @@
353
  }
354
  ?>
355
  <option value="default" <?php echo ($theme == 'default') ? 'selected="selected"' : '' ?>><?php _e('Default', 'wpeditor'); ?></option>
 
 
356
  <option value="cobalt" <?php echo ($theme == 'cobalt') ? 'selected="selected"' : '' ?>><?php _e('Cobalt', 'wpeditor'); ?></option>
357
  <option value="eclipse" <?php echo ($theme == 'eclipse') ? 'selected="selected"' : '' ?>><?php _e('Eclipse', 'wpeditor'); ?></option>
358
  <option value="elegant" <?php echo ($theme == 'elegant') ? 'selected="selected"' : '' ?>><?php _e('Elegant', 'wpeditor'); ?></option>
 
359
  <option value="monokai" <?php echo ($theme == 'monokai') ? 'selected="selected"' : '' ?>><?php _e('Monokai', 'wpeditor'); ?></option>
360
  <option value="neat" <?php echo ($theme == 'neat') ? 'selected="selected"' : '' ?>><?php _e('Neat', 'wpeditor'); ?></option>
361
  <option value="night" <?php echo ($theme == 'night') ? 'selected="selected"' : '' ?>><?php _e('Night', 'wpeditor'); ?></option>
362
  <option value="rubyblue" <?php echo ($theme == 'rubyblue') ? 'selected="selected"' : '' ?>><?php _e('Ruby Blue', 'wpeditor'); ?></option>
 
 
363
  </select>
364
  </li>
365
  <li class="indent description">
@@ -593,13 +603,18 @@
593
  }
594
  ?>
595
  <option value="default" <?php echo ($theme == 'default') ? 'selected="selected"' : '' ?>><?php _e('Default', 'wpeditor'); ?></option>
 
 
596
  <option value="cobalt" <?php echo ($theme == 'cobalt') ? 'selected="selected"' : '' ?>><?php _e('Cobalt', 'wpeditor'); ?></option>
597
  <option value="eclipse" <?php echo ($theme == 'eclipse') ? 'selected="selected"' : '' ?>><?php _e('Eclipse', 'wpeditor'); ?></option>
598
  <option value="elegant" <?php echo ($theme == 'elegant') ? 'selected="selected"' : '' ?>><?php _e('Elegant', 'wpeditor'); ?></option>
 
599
  <option value="monokai" <?php echo ($theme == 'monokai') ? 'selected="selected"' : '' ?>><?php _e('Monokai', 'wpeditor'); ?></option>
600
  <option value="neat" <?php echo ($theme == 'neat') ? 'selected="selected"' : '' ?>><?php _e('Neat', 'wpeditor'); ?></option>
601
  <option value="night" <?php echo ($theme == 'night') ? 'selected="selected"' : '' ?>><?php _e('Night', 'wpeditor'); ?></option>
602
  <option value="rubyblue" <?php echo ($theme == 'rubyblue') ? 'selected="selected"' : '' ?>><?php _e('Ruby Blue', 'wpeditor'); ?></option>
 
 
603
  </select>
604
  </li>
605
  <li class="indent description">
132
  }
133
  ?>
134
  <option value="default" <?php echo ($theme == 'default') ? 'selected="selected"' : '' ?>><?php _e('Default', 'wpeditor'); ?></option>
135
+ <option value="ambiance" <?php echo ($theme == 'ambiance') ? 'selected="selected"' : '' ?>><?php _e('Ambiance', 'wpeditor'); ?></option>
136
+ <option value="blackboard" <?php echo ($theme == 'blackboard') ? 'selected="selected"' : '' ?>><?php _e('Blackboard', 'wpeditor'); ?></option>
137
  <option value="cobalt" <?php echo ($theme == 'cobalt') ? 'selected="selected"' : '' ?>><?php _e('Cobalt', 'wpeditor'); ?></option>
138
  <option value="eclipse" <?php echo ($theme == 'eclipse') ? 'selected="selected"' : '' ?>><?php _e('Eclipse', 'wpeditor'); ?></option>
139
  <option value="elegant" <?php echo ($theme == 'elegant') ? 'selected="selected"' : '' ?>><?php _e('Elegant', 'wpeditor'); ?></option>
140
+ <option value="lesser-dark" <?php echo ($theme == 'lesser-dark') ? 'selected="selected"' : '' ?>><?php _e('Lesser Dark', 'wpeditor'); ?></option>
141
  <option value="monokai" <?php echo ($theme == 'monokai') ? 'selected="selected"' : '' ?>><?php _e('Monokai', 'wpeditor'); ?></option>
142
  <option value="neat" <?php echo ($theme == 'neat') ? 'selected="selected"' : '' ?>><?php _e('Neat', 'wpeditor'); ?></option>
143
  <option value="night" <?php echo ($theme == 'night') ? 'selected="selected"' : '' ?>><?php _e('Night', 'wpeditor'); ?></option>
144
  <option value="rubyblue" <?php echo ($theme == 'rubyblue') ? 'selected="selected"' : '' ?>><?php _e('Ruby Blue', 'wpeditor'); ?></option>
145
+ <option value="vibrant-ink" <?php echo ($theme == 'vibrant-ink') ? 'selected="selected"' : '' ?>><?php _e('Vibrant Ink', 'wpeditor'); ?></option>
146
+ <option value="xq-dark" <?php echo ($theme == 'xq-dark') ? 'selected="selected"' : '' ?>><?php _e('XQ-Dark', 'wpeditor'); ?></option>
147
  </select>
148
  </li>
149
  <li class="indent description">
358
  }
359
  ?>
360
  <option value="default" <?php echo ($theme == 'default') ? 'selected="selected"' : '' ?>><?php _e('Default', 'wpeditor'); ?></option>
361
+ <option value="ambiance" <?php echo ($theme == 'ambiance') ? 'selected="selected"' : '' ?>><?php _e('Ambiance', 'wpeditor'); ?></option>
362
+ <option value="blackboard" <?php echo ($theme == 'blackboard') ? 'selected="selected"' : '' ?>><?php _e('Blackboard', 'wpeditor'); ?></option>
363
  <option value="cobalt" <?php echo ($theme == 'cobalt') ? 'selected="selected"' : '' ?>><?php _e('Cobalt', 'wpeditor'); ?></option>
364
  <option value="eclipse" <?php echo ($theme == 'eclipse') ? 'selected="selected"' : '' ?>><?php _e('Eclipse', 'wpeditor'); ?></option>
365
  <option value="elegant" <?php echo ($theme == 'elegant') ? 'selected="selected"' : '' ?>><?php _e('Elegant', 'wpeditor'); ?></option>
366
+ <option value="lesser-dark" <?php echo ($theme == 'lesser-dark') ? 'selected="selected"' : '' ?>><?php _e('Lesser Dark', 'wpeditor'); ?></option>
367
  <option value="monokai" <?php echo ($theme == 'monokai') ? 'selected="selected"' : '' ?>><?php _e('Monokai', 'wpeditor'); ?></option>
368
  <option value="neat" <?php echo ($theme == 'neat') ? 'selected="selected"' : '' ?>><?php _e('Neat', 'wpeditor'); ?></option>
369
  <option value="night" <?php echo ($theme == 'night') ? 'selected="selected"' : '' ?>><?php _e('Night', 'wpeditor'); ?></option>
370
  <option value="rubyblue" <?php echo ($theme == 'rubyblue') ? 'selected="selected"' : '' ?>><?php _e('Ruby Blue', 'wpeditor'); ?></option>
371
+ <option value="vibrant-ink" <?php echo ($theme == 'vibrant-ink') ? 'selected="selected"' : '' ?>><?php _e('Vibrant Ink', 'wpeditor'); ?></option>
372
+ <option value="xq-dark" <?php echo ($theme == 'xq-dark') ? 'selected="selected"' : '' ?>><?php _e('XQ-Dark', 'wpeditor'); ?></option>
373
  </select>
374
  </li>
375
  <li class="indent description">
603
  }
604
  ?>
605
  <option value="default" <?php echo ($theme == 'default') ? 'selected="selected"' : '' ?>><?php _e('Default', 'wpeditor'); ?></option>
606
+ <option value="ambiance" <?php echo ($theme == 'ambiance') ? 'selected="selected"' : '' ?>><?php _e('Ambiance', 'wpeditor'); ?></option>
607
+ <option value="blackboard" <?php echo ($theme == 'blackboard') ? 'selected="selected"' : '' ?>><?php _e('Blackboard', 'wpeditor'); ?></option>
608
  <option value="cobalt" <?php echo ($theme == 'cobalt') ? 'selected="selected"' : '' ?>><?php _e('Cobalt', 'wpeditor'); ?></option>
609
  <option value="eclipse" <?php echo ($theme == 'eclipse') ? 'selected="selected"' : '' ?>><?php _e('Eclipse', 'wpeditor'); ?></option>
610
  <option value="elegant" <?php echo ($theme == 'elegant') ? 'selected="selected"' : '' ?>><?php _e('Elegant', 'wpeditor'); ?></option>
611
+ <option value="lesser-dark" <?php echo ($theme == 'lesser-dark') ? 'selected="selected"' : '' ?>><?php _e('Lesser Dark', 'wpeditor'); ?></option>
612
  <option value="monokai" <?php echo ($theme == 'monokai') ? 'selected="selected"' : '' ?>><?php _e('Monokai', 'wpeditor'); ?></option>
613
  <option value="neat" <?php echo ($theme == 'neat') ? 'selected="selected"' : '' ?>><?php _e('Neat', 'wpeditor'); ?></option>
614
  <option value="night" <?php echo ($theme == 'night') ? 'selected="selected"' : '' ?>><?php _e('Night', 'wpeditor'); ?></option>
615
  <option value="rubyblue" <?php echo ($theme == 'rubyblue') ? 'selected="selected"' : '' ?>><?php _e('Ruby Blue', 'wpeditor'); ?></option>
616
+ <option value="vibrant-ink" <?php echo ($theme == 'vibrant-ink') ? 'selected="selected"' : '' ?>><?php _e('Vibrant Ink', 'wpeditor'); ?></option>
617
+ <option value="xq-dark" <?php echo ($theme == 'xq-dark') ? 'selected="selected"' : '' ?>><?php _e('XQ-Dark', 'wpeditor'); ?></option>
618
  </select>
619
  </li>
620
  <li class="indent description">
views/theme-editor.php CHANGED
@@ -178,7 +178,10 @@
178
  <?php if(WPEditorSetting::getValue('enable_theme_editor_height')) { ?>
179
  $('.CodeMirror-scroll, .CodeMirror').height('<?php echo WPEditorSetting::getValue("enable_theme_editor_height"); ?>px');
180
  var scrollDivHeight = $('.CodeMirror-scroll div:first-child').height();
181
- $('.CodeMirror-gutter').height(scrollDivHeight);
 
 
 
182
  <?php } ?>
183
  })
184
  })(jQuery);
@@ -204,8 +207,9 @@
204
  <?php }
205
  else { ?>
206
  var theme = 'default';
207
- <?php }
208
- if(WPEditorSetting::getValue('enable_theme_active_line')) { ?>
 
209
  var activeLine = 'activeline-' + theme;
210
  <?php } ?>
211
  editor = CodeMirror.fromTextArea(document.getElementById('new-content'), {
@@ -227,8 +231,10 @@
227
  tabSize: 2,
228
  <?php } ?>
229
  onCursorActivity: function() {
230
- editor.setLineClass(hlLine, null);
231
- hlLine = editor.setLineClass(editor.getCursor().line, activeLine);
 
 
232
  },
233
  onChange: function() {
234
  changeTrue();
@@ -238,7 +244,9 @@
238
  'Esc': toggleFullscreenEditing
239
  } // set fullscreen options here
240
  });
241
- var hlLine = editor.setLineClass(0, activeLine);
 
 
242
  }
243
  </script>
244
  </div>
178
  <?php if(WPEditorSetting::getValue('enable_theme_editor_height')) { ?>
179
  $('.CodeMirror-scroll, .CodeMirror').height('<?php echo WPEditorSetting::getValue("enable_theme_editor_height"); ?>px');
180
  var scrollDivHeight = $('.CodeMirror-scroll div:first-child').height();
181
+ var editorDivHeight = $('.CodeMirror').height();
182
+ if(scrollDivHeight > editorDivHeight) {
183
+ $('.CodeMirror-gutter').height(scrollDivHeight);
184
+ }
185
  <?php } ?>
186
  })
187
  })(jQuery);
207
  <?php }
208
  else { ?>
209
  var theme = 'default';
210
+ <?php } ?>
211
+ var activeLine = false;
212
+ <?php if(WPEditorSetting::getValue('enable_theme_active_line')) { ?>
213
  var activeLine = 'activeline-' + theme;
214
  <?php } ?>
215
  editor = CodeMirror.fromTextArea(document.getElementById('new-content'), {
231
  tabSize: 2,
232
  <?php } ?>
233
  onCursorActivity: function() {
234
+ if(activeLine) {
235
+ editor.setLineClass(hlLine, null, null);
236
+ hlLine = editor.setLineClass(editor.getCursor().line, null, activeLine);
237
+ }
238
  },
239
  onChange: function() {
240
  changeTrue();
244
  'Esc': toggleFullscreenEditing
245
  } // set fullscreen options here
246
  });
247
+ if(activeLine) {
248
+ var hlLine = editor.setLineClass(0, activeLine);
249
+ }
250
  }
251
  </script>
252
  </div>
wpeditor.css CHANGED
@@ -254,13 +254,10 @@ span.tiny {
254
  .activeline-cobalt {
255
  background:#B36539 !important;
256
  }
257
- .activeline-night {
258
  background:#A8F !important;
259
  }
260
- .activeline-monokai {
261
- background:#00F !important;
262
- }
263
- .activeline-rubyblue {
264
  background:#00F !important;
265
  }
266
  .checkbox_label {
@@ -293,4 +290,38 @@ a.donate, a.support {
293
  -moz-box-shadow:0px 1px 3px rgba(000,000,000,0.5);
294
  -webkit-box-shadow:0px 1px 3px rgba(000,000,000,0.5);
295
  text-shadow:1px 1px 2px rgba(000,000,000,.8);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
296
  }
254
  .activeline-cobalt {
255
  background:#B36539 !important;
256
  }
257
+ .activeline-night, .activeline-ambiance, .activeline-blackboard, .activeline-lesser-dark, .activeline-vibrant-ink, .activeline-xq-dark {
258
  background:#A8F !important;
259
  }
260
+ .activeline-monokai, .activeline-rubyblue {
 
 
 
261
  background:#00F !important;
262
  }
263
  .checkbox_label {
290
  -moz-box-shadow:0px 1px 3px rgba(000,000,000,0.5);
291
  -webkit-box-shadow:0px 1px 3px rgba(000,000,000,0.5);
292
  text-shadow:1px 1px 2px rgba(000,000,000,.8);
293
+ }
294
+ .wpe-quicktags-toolbar {
295
+ -webkit-border-top-right-radius: 3px;
296
+ -webkit-border-top-left-radius: 3px;
297
+ border-top-right-radius: 3px;
298
+ border-top-left-radius: 3px;
299
+ min-height: 29px;
300
+ border-bottom: 1px solid #CCC;
301
+ padding: 2px 8px 0;
302
+ background-color: #E9E9E9;
303
+ color: #333;
304
+ background-image: -ms-linear-gradient(bottom,#DDD,#E9E9E9);
305
+ background-image: -moz-linear-gradient(bottom,#DDD,#E9E9E9);
306
+ background-image: -o-linear-gradient(bottom,#DDD,#E9E9E9);
307
+ background-image: -webkit-linear-gradient(bottom,#DDD,#E9E9E9);
308
+ background-image: linear-gradient(bottom,#DDD,#E9E9E9);
309
+ }
310
+ .wpe-quicktags-toolbar input {
311
+ margin: 2px 1px 4px;
312
+ line-height: 18px;
313
+ display: inline-block;
314
+ min-width: 26px;
315
+ padding: 2px 4px;
316
+ font: 12px/18px Arial,Helvetica,sans-serif normal;
317
+ color: #464646;
318
+ border: 1px solid #C3C3C3;
319
+ -webkit-border-radius: 3px;
320
+ border-radius: 3px;
321
+ background-color: #EEE;
322
+ background-image: -ms-linear-gradient(bottom,#E3E3E3,white);
323
+ background-image: -moz-linear-gradient(bottom,#E3E3E3,white);
324
+ background-image: -o-linear-gradient(bottom,#E3E3E3,white);
325
+ background-image: -webkit-linear-gradient(bottom,#E3E3E3,white);
326
+ background-image: linear-gradient(bottom,#E3E3E3,white);
327
  }
wpeditor.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: WP Editor
4
  Plugin URI: http://wpeditor.net
5
  Description: This plugin modifies the default behavior of the WordPress plugin and theme editors.
6
- Version: 1.1.0.2
7
  Author: Benjamin Rojas
8
  Author URI: http://benjaminrojas.net
9
  Text Domain: wpeditor
@@ -31,7 +31,7 @@ if(!class_exists('WPEditor')) {
31
  ob_start();
32
 
33
  // Define the WP Editor version number
34
- define('WPEDITOR_VERSION_NUMBER', '1.1.0.2');
35
 
36
  $wp_34 = false;
37
  if(version_compare(get_bloginfo('version'), '3.4', '>=')) {
3
  Plugin Name: WP Editor
4
  Plugin URI: http://wpeditor.net
5
  Description: This plugin modifies the default behavior of the WordPress plugin and theme editors.
6
+ Version: 1.1.0.3
7
  Author: Benjamin Rojas
8
  Author URI: http://benjaminrojas.net
9
  Text Domain: wpeditor
31
  ob_start();
32
 
33
  // Define the WP Editor version number
34
+ define('WPEDITOR_VERSION_NUMBER', '1.1.0.3');
35
 
36
  $wp_34 = false;
37
  if(version_compare(get_bloginfo('version'), '3.4', '>=')) {