Search Everything - Version 7.0.3

Version Description

  • Fixed vulnerability issue in se_search_default and started escaping terms
  • Refactored code, extracted html from PHP code
  • Added support for ajax call
Download this release

Release Info

Developer sparkica
Plugin Icon wp plugin Search Everything
Version 7.0.3
Comparing to
See all releases

Code changes from version 7.0.2 to 7.0.3

README.markdown CHANGED
@@ -1,27 +1,3 @@
1
- Notice
2
- ======
3
-
4
- Well, we tried...
5
- -----------------
6
-
7
- It took a few years of kick-starting the Search Everything Plus project and it being subverted by new full-time projects at Sprout Venture before realizing it had to stop. Our goal of fixing WordPress search with SE+ needed too much focus, something we couldn't sacrifice because of growing client projects. After a year of trying and nothing awesome to show we decided to cease all planning and development on the Search Everything Plus plugin/service. </p>
8
-
9
- But our goal of fixing WordPress search isn't lost and we have <strong>two</strong> recomendations for you:</p>
10
-
11
- [SearchWP](http://s-v.me/RgIu)
12
- They claim it's the best search plugin around and we can't agree more. It's seriously close to what we had planned for SE+, in many ways it's much better than what we counted on accomplishing.</p>
13
-
14
- [Swiftype Search plugin](http://s-v.me/Q8wb)
15
- It replaces the standard WordPress search with a better, more relevant search engine, and in doing so offloads the performance burden of search queries from your database to theirs.</p>
16
-
17
-
18
- The advantages of both should be clear but if you're undecided we recomend [SearchWP](http://s-v.me/RgIu) becuase of how it doesn't require a subscription.
19
-
20
- Sincerely,
21
- Dan Cameron
22
- Principal and Janitor, Sprout Venture Inc.
23
-
24
-
25
  Description
26
  ===========
27
 
@@ -100,4 +76,5 @@ What Translations are included?
100
  * Spanish
101
  * Swedish
102
  * Turkish
103
- * Taiwan / Chinese
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  Description
2
  ===========
3
 
76
  * Spanish
77
  * Swedish
78
  * Turkish
79
+ * Taiwan / Chinese
80
+
config.php CHANGED
@@ -87,6 +87,17 @@ function se_upgrade() {
87
  }
88
 
89
 
 
 
 
 
 
 
 
 
 
 
 
90
  function se_migrate_7_0_1() {
91
  $se_meta = array(
92
  'blog_id' => false,
@@ -193,5 +204,3 @@ function se_get_default_options() {
193
 
194
  return $se_options;
195
  }
196
-
197
- ?>
87
  }
88
 
89
 
90
+ function se_migrate_7_0_2() {
91
+
92
+ $se_meta = get_option('se_meta', false);
93
+
94
+ if ($se_meta) {
95
+ $se_meta['version'] = '7.0.3';
96
+ }
97
+ update_option('se_meta',$se_meta);
98
+ }
99
+
100
+
101
  function se_migrate_7_0_1() {
102
  $se_meta = array(
103
  'blog_id' => false,
204
 
205
  return $se_options;
206
  }
 
 
options.php CHANGED
@@ -22,42 +22,47 @@ Class se_admin {
22
  }
23
  }
24
 
25
- // Register style sheet
 
 
26
  function se_register_plugin_styles() {
27
  wp_register_style( 'search-everything', SE_PLUGIN_URL . '/css/admin.css' );
28
  wp_enqueue_style( 'search-everything' );
29
  }
30
 
 
 
31
  function se_add_options_panel() {
32
  add_options_page('Search', 'Search Everything', 'manage_options', 'extend_search', array(&$this, 'se_option_page'));
33
  }
34
 
 
35
  //build admin interface
36
  function se_option_page() {
37
  global $wpdb, $table_prefix, $wp_version;
38
 
39
- $new_options = array(
40
- 'se_exclude_categories' => (isset($_POST['exclude_categories']) && !empty($_POST['exclude_categories'])) ? $_POST['exclude_categories'] : '',
41
- 'se_exclude_categories_list' => (isset($_POST['exclude_categories_list']) && !empty($_POST['exclude_categories_list'])) ? $_POST['exclude_categories_list'] : '',
42
- 'se_exclude_posts' => (isset($_POST['exclude_posts'])) ? $_POST['exclude_posts'] : '',
43
- 'se_exclude_posts_list' => (isset($_POST['exclude_posts_list']) && !empty($_POST['exclude_posts_list'])) ? $_POST['exclude_posts_list'] : '',
44
- 'se_use_page_search' => (isset($_POST['search_pages']) && $_POST['search_pages']) ,
45
- 'se_use_comment_search' => (isset($_POST['search_comments']) && $_POST['search_comments']) ,
46
- 'se_use_tag_search' => (isset($_POST['search_tags']) && $_POST['search_tags'] ),
47
- 'se_use_tax_search' => (isset($_POST['search_taxonomies']) && $_POST['search_taxonomies']),
48
- 'se_use_category_search' => (isset($_POST['search_categories']) && $_POST['search_categories']),
49
- 'se_approved_comments_only' => (isset($_POST['appvd_comments']) && $_POST['appvd_comments'] ),
50
- 'se_approved_pages_only' => (isset($_POST['appvd_pages']) && $_POST['appvd_pages']),
51
- 'se_use_excerpt_search' => (isset($_POST['search_excerpt']) && $_POST['search_excerpt']),
52
- 'se_use_draft_search' => (isset($_POST['search_drafts']) && $_POST['search_drafts']),
53
- 'se_use_attachment_search' => (isset($_POST['search_attachments']) && $_POST['search_attachments']),
54
- 'se_use_authors' => (isset($_POST['search_authors']) && $_POST['search_authors']),
55
- 'se_use_cmt_authors' => (isset($_POST['search_cmt_authors']) && $_POST['search_cmt_authors']),
56
- 'se_use_metadata_search' => (isset($_POST['search_metadata']) && $_POST['search_metadata']),
57
- 'se_use_highlight' => (isset($_POST['search_highlight']) && $_POST['search_highlight']),
58
- 'se_highlight_color' => (isset($_POST['highlight_color'])) ? $_POST['highlight_color'] : '',
59
- 'se_highlight_style' => (isset($_POST['highlight_style'])) ? $_POST['highlight_style'] : ''
60
- );
61
 
62
  if(isset($_POST['action']) && $_POST['action'] == "save") {
63
  echo "<div class=\"updated fade\" id=\"limitcatsupdatenotice\"><p>" . __('Your default search settings have been <strong>updated</strong> by Search Everything. </p><p> What are you waiting for? Go check out the new search results!', 'SearchEverything') . "</p></div>";
@@ -67,228 +72,26 @@ Class se_admin {
67
  if(isset($_POST['action']) && $_POST['action'] == "reset") {
68
  echo "<div class=\"updated fade\" id=\"limitcatsupdatenotice\"><p>" . __('Your default search settings have been <strong>updated</strong> by Search Everything. </p><p> What are you waiting for? Go check out the new search results!', 'SearchEverything') . "</p></div>";
69
  $default_options = se_get_default_options();
 
70
  se_update_options($default_options);
71
  }
72
 
73
  $options = se_get_options();
74
  $meta = se_get_meta();
75
 
76
- ?>
77
 
78
- <div class="wrap">
79
- <h2><?php _e('Search Everything', 'SearchEverything'); ?> <?php echo $meta['version']; ?> - <?php _e('settings','SearchEverything');?></h2>
80
- <p><?php _e('Customize your search by checking one or more options below.','SearchEverything'); ?></p>
81
- <form method="post">
82
- <table id="se-basic-settings" class="widefat">
83
- <thead>
84
- <tr class="title">
85
- <th scope="col" class="manage-column se-col"><?php _e('Basic Configuration', 'SearchEverything'); ?></th>
86
- <th scope="col" class="manage-column"></th>
87
- </tr>
88
- </thead>
89
- <tbody> <?php
90
- // Show options for 2.5 and below
91
- if ($wp_version <= '2.5') : ?>
92
- <tr valign="middle">
93
- <th class="titledesc"><?php _e('Search every page','SearchEverything'); ?>:<br/><small></small></td>
94
- <td><input type="checkbox" id="search_pages" name="search_pages" value="yes" <?php checked($options['se_use_page_search']); ?>);</td>
95
- </tr>
96
- <tr valign="middle">
97
- <th scope="row" class="se-suboption"><label for="appvd_pages"><?php _e('Search approved pages only','SearchEverything'); ?>:</label></th>
98
- <td><input type="checkbox" id="appvd_pages" name="appvd_pages" value="yes" <?php checked($options['se_approved_pages_only']); ?></td>
99
- </tr><?php endif; ?> <?php
100
- // Show tags only for WP 2.3+
101
- if ($wp_version >= '2.3') : ?>
102
- <tr valign="middle">
103
- <th scope="row"><label for="search_tags"><?php _e('Search every tag name','SearchEverything'); ?>:</label></th>
104
- <td><input type="checkbox" id="search_tags" name="search_tags" value="yes" <?php checked($options['se_use_tag_search']); ?></td>
105
- </tr><?php endif; ?> <?php
106
- // Show taxonomies only for WP 2.3+
107
- if ($wp_version >= '2.3') : ?>
108
- <tr valign="middle">
109
- <th scope="row"><label for="search_tags"><?php _e('Search custom taxonomies','SearchEverything'); ?>:</label></th>
110
- <td><input type="checkbox" id="search_tags" name="search_taxonomies" value="yes" <?php checked($options['se_use_tax_search']); ?></td>
111
- </tr><?php endif; ?>
112
- <?php
113
- if ($wp_version >= '2.5') : ?>
114
- <tr valign="middle">
115
- <th scope="row"><label for="search_categories"><?php _e('Search every category name and description','SearchEverything'); ?>:</label></th>
116
- <td><input type="checkbox" id="search_categories" name="search_categories" value="yes" <?php checked($options['se_use_category_search']); ?></td>
117
- </tr><?php endif; ?>
118
- <tr valign="middle">
119
- <th scope="row"><label for="search_comments"><?php _e('Search every comment','SearchEverything'); ?>:</label></th>
120
- <td><input type="checkbox" name="search_comments" id="search_comments" value="yes" <?php checked($options['se_use_comment_search']); ?></td>
121
- </tr>
122
- <tr valign="middle">
123
- <th scope="row" class="se-suboption"><label for="search_cmt_authors"><?php _e('Search comment authors','SearchEverything'); ?>:</label></th>
124
- <td><input type="checkbox" id="search_cmt_authors" name="search_cmt_authors" value="yes" <?php checked($options['se_use_cmt_authors']); ?></td>
125
- </tr>
126
- <tr valign="middle">
127
- <th scope="row" class="se-suboption"><label for="appvd_comments"><?php _e('Search approved comments only','SearchEverything'); ?>:</label></th>
128
- <td><input type="checkbox" id="appvd_comments" name="appvd_comments" value="yes" <?php checked($options['se_approved_comments_only']); ?></td>
129
- </tr>
130
- <tr valign="middle">
131
- <th scope="row"><label for="search_excerpt"><?php _e('Search every excerpt','SearchEverything'); ?>:</label></th>
132
- <td><input type="checkbox" id="search_excerpt" name="search_excerpt" value="yes" <?php checked($options['se_use_excerpt_search']); ?></td>
133
- </tr>
134
- <?php
135
- // Show categories only for WP 2.5+
136
- if ($wp_version >= '2.5') : ?>
137
- <tr valign="middle">
138
- <th scope="row"><label for="search_drafts"><?php _e('Search every draft','SearchEverything'); ?></label></th>
139
- <td><input type="checkbox" id="search_drafts" name="search_drafts" value="yes" <?php checked($options['se_use_draft_search']); ?></td>
140
- </tr>
141
- <?php endif; ?>
142
- <tr valign="middle">
143
- <th><label for="search_attachments"><?php _e('Search every attachment','SearchEverything'); ?></label>:
144
- <br/><small><?php _e('(post type = attachment)','SearchEverything'); ?></small></td>
145
- <td><input type="checkbox" id="search_attachments" name="search_attachments" value="yes" <?php checked($options['se_use_attachment_search']); ?></td>
146
- </tr>
147
- <tr valign="middle">
148
- <th scope="row"><label for="search_metadata"><?php _e('Search every custom field','SearchEverything'); ?>:</label><br/>
149
- <small><?php _e('(metadata)','SearchEverything'); ?></small></tth>
150
- <td><input type="checkbox" id="search_metadata" name="search_metadata" value="yes" <?php checked($options['se_use_metadata_search']); ?></td>
151
- </tr>
152
- <tr valign="middle">
153
- <th scope="row"><label for="search_authors"><?php _e('Search every author','SearchEverything'); ?>:</label></th>
154
- <td><input type="checkbox" id="search_authors" name="search_authors" value="yes" <?php checked($options['se_use_authors']); ?></td>
155
- </tr>
156
- <tr valign="middle">
157
- <th scope="row"><label for="search_highlight"><?php _e('Highlight Search Terms','SearchEverything'); ?>:</label></th>
158
- <td><input type="checkbox" id="search_highlight" name="search_highlight" value="yes" <?php checked($options['se_use_highlight']); ?></td>
159
- </tr>
160
- <tr valign="top">
161
- <th scope="row" class="se-suboption"><label for="highlight_color"><?php _e('Highlight Background Color','SearchEverything'); ?>:</label></th>
162
- <td>
163
- <input type="text" id="highlight_color" name="highlight_color" value="<?php echo $options['se_highlight_color'];?>" /><br/>
164
- <small> <?php _e('Examples:\'#FFF984\' or \'red\'','SearchEverything'); ?></small>
165
- </td>
166
- </tr>
167
- </tbody>
168
- </table>
169
- <table id="se-advanced-settings" class="widefat">
170
- <thead>
171
- <tr class="title">
172
- <th scope="col" class="manage-column se-col"><?php _e('Advanced Configuration - Exclusion', 'SearchEverything'); ?></th>
173
- <th scope="col" class="manage-column"></th>
174
- </tr>
175
- </thead>
176
- <tbody>
177
- <tr valign="middle">
178
- <th scope="row"><label for="exclude_posts_list"><?php _e('Exclude some post or page IDs','SearchEverything'); ?>:</label></th>
179
- <td class="forminp">
180
- <input type="text" id="exclude_posts_list" name="exclude_posts_list" value="<?php echo $options['se_exclude_posts_list'];?>" />
181
- <br/><small><?php _e('Comma separated Post IDs (example: 1, 5, 9)','SearchEverything'); ?></small>
182
- </td>
183
- </tr>
184
- <tr valign="middle">
185
- <th scope="row"><label for="exclude_categories_list"><?php _e('Exclude Categories','SearchEverything'); ?>:</label></th>
186
- <td class="forminp">
187
- <input type="text" id="exclude_categories_list" name="exclude_categories_list" value="<?php echo $options['se_exclude_categories_list'];?>" />
188
- <br/><small><?php _e('Comma separated category IDs (example: 1, 4)','SearchEverything'); ?></small>
189
- </td>
190
- </tr>
191
- <tr valign="middle">
192
- <th scope="row"><label for="highlight_style"><?php _e('Full Highlight Style','SearchEverything'); ?>:</label></th>
193
- <td class="forminp">
194
- <input type="text" id="highlight_style" name="highlight_style" value="<?php echo $options['se_highlight_style'];?>" /> <br/>
195
- <small><?php _e('Important: \'Highlight Background Color\' must be blank to use this advanced styling.', 'SearchEverything') ?></small><br/>
196
- <small><?php _e('Example: background-color: #FFF984; font-weight: bold; color: #000; padding: 0 1px;','SearchEverything'); ?></small>
197
- </td>
198
- </tr>
199
- </tbody>
200
- </table>
201
- <p class="submit">
202
- <input type="hidden" name="action" value="save" />
203
- <input type="submit" class="button button-primary" value="<?php _e('Save Changes', 'SearchEverything') ?>" />
204
- </p>
205
- </form>
206
- <table id="se-test-search" class="widefat">
207
- <thead>
208
- <tr class="title">
209
- <th scope="col" class="manage-column se-col"><?php _e('Test Search Form', 'SearchEverything'); ?></th>
210
- <th scope="col" class="manage-column"></th>
211
- </tr>
212
- </thead>
213
- <tbody>
214
- <tr valign="middle">
215
- <th >
216
- <?php _e('Use this search form to run a live search test.', 'SearchEverything'); ?>
217
- </th>
218
- <td>
219
- <form method="get" id="searchform" action="<?php bloginfo($cap = version_compare('2.2', $wp_version, '<') ? 'url' : 'home'); ?>">
220
- <p class="srch submit">
221
- <input type="text" class="srch-txt" value="<?php echo (isset($S)) ? wp_specialchars($s, 1) : ''; ?>" name="s" id="s" size="30" />
222
- <input type="submit" class="button"class="SE5_btn" id="searchsubmit" value="<?php _e('Run Test Search', 'SearchEverything'); ?>" />
223
- </p>
224
- </form>
225
- </td>
226
- </tr>
227
- </tbody>
228
- </table>
229
- <table id="se-info" class="widefat">
230
- <thead>
231
- <tr class="title">
232
- <th scope="col" class="manage-column se-col"><?php _e('News', 'SearchEverything'); ?></th>
233
- <th scope="col" class="manage-column"><?php _e('Development Support', 'SearchEverything'); ?></th>
234
- <th scope="col" class="manage-column"><?php _e('Localization Support', 'SearchEverything'); ?></th>
235
- </tr>
236
- </thead>
237
- <tr valign="middle">
238
- <td class="thanks">
239
- <p><strong><?php _e('LOCALIZATION SUPPORT:', 'SearchEverything'); ?></strong><br/><?php _e('Version 6 was a major update and a few areas need new localization support. If you can help send us your translations by posting them as a new issue, ', 'SearchEverything') ?><a href="https://github.com/Zemanta/search-everything-wordpress-plugin/issues?sort=created&direction=desc&state=open&page=1" target="blank"><strong><?php _e('here','SearchEverything')?></strong></a>.</p>
240
- <p><strong><?php _e('Thank You!', 'SearchEverything'); ?></strong><br/><?php _e('The development of Search Everything since Version one has primarily come from the WordPress community, We&#8217;m grateful for their dedicated and continued support.', 'SearchEverything'); ?></p>
241
- </td>
242
- <td>
243
- <ul class="SE_lists">
244
- <li><a href="https://github.com/ninnypants"><strong>Tyrel Kelsey</strong></a></li>
245
- </ul>
246
- </td>
247
- <td>
248
- <ul class="SE_lists">
249
- <li><a href="#" target="blank">minjae kim (KR) - v.6</a></li>
250
- <li><a href="http://www.r-sn.com/wp" target="blank">Anonymous (AR) - v.6</a></li>
251
- <li><a href="http://www.doctorley.pl" target="blank">Karol Manikowski (PL) - v.6</a></li>
252
- <li><a href="http://www.paulwicking.com" target="blank">Paul Wicking (NO)- v.6</a></li>
253
- <li><a href="#">Bilei Radu (RO)- v.6</a></li>
254
- <li><a href="http://www.fatcow.com" target="blank">Fat Cow (BY) - v.6</a></li>
255
- <li><a href="http://gidibao.net/" target="blank">Gianni Diurno (IT) - v.6</a></li>
256
- <li><a href="#">Maris Svirksts (LV) - v.6</a></li>
257
- <li><a href="#">Simon Hansen (NN) - v.6</a></li>
258
- <li><a href="http://beyn.org/" target="blank">jean Pierre Gavoille (FR) - v.6</a></li>
259
- <li><a href="#">hit1205 (CN and TW)</a></li>
260
- <li><a href="http://www.alohastone.com" target="blank">alohastone (DE)</a></li>
261
- <li><a href="http://gidibao.net/" target="blank">Gianni Diurno (ES)</a></li>
262
- <li><a href="#">János Csárdi-Braunstein (HU)</a></li>
263
- <li><a href="http://idimensie.nl" target="blank">Joeke-Remkus de Vries (NL)</a></li>
264
- <li><a href="#">Silver Ghost (RU)</a></li>
265
- <li><a href="http://mishkin.se" target="blank">Mikael Jorhult (RU)</a></li>
266
- <li><a href="#">Baris Unver (TR)</a></li>
267
- </ul>
268
- </td>
269
- </tr>
270
- </table>
271
- </div>
272
-
273
- <?php
274
  } //end se_option_page
275
 
276
- function se_options_page_notice() {
277
- $screen = get_current_screen();
278
- if ( 'settings_page_extend_search' == $screen->id ):
279
  $close_url = admin_url( $screen->parent_file );
280
  $close_url = add_query_arg( array(
281
- 'page' => 'extend_search',
282
- 'se_notice' => 0,
283
  ), $close_url );
284
- ?>
285
- <div class="updated" id="se-top-notice" >
286
- <a href="<?php echo $close_url; ?>" style="position: absolute; right: 30px; top: 20px;">Dismiss</a>
287
- <h3>Good news everyone!</h3>
288
- <p class="about-description">This plugin is <strong>alive</strong> again and we have great plans for it. Stay tuned.</p>
289
- </div>
290
- <?php
291
- endif;
292
- } //end page notice
293
- } //end class
294
- ?>
22
  }
23
  }
24
 
25
+ /**
26
+ * Register style sheet.
27
+ */
28
  function se_register_plugin_styles() {
29
  wp_register_style( 'search-everything', SE_PLUGIN_URL . '/css/admin.css' );
30
  wp_enqueue_style( 'search-everything' );
31
  }
32
 
33
+
34
+
35
  function se_add_options_panel() {
36
  add_options_page('Search', 'Search Everything', 'manage_options', 'extend_search', array(&$this, 'se_option_page'));
37
  }
38
 
39
+
40
  //build admin interface
41
  function se_option_page() {
42
  global $wpdb, $table_prefix, $wp_version;
43
 
44
+ $new_options = array(
45
+ 'se_exclude_categories' => (isset($_POST['exclude_categories']) && !empty($_POST['exclude_categories'])) ? $_POST['exclude_categories'] : '',
46
+ 'se_exclude_categories_list' => (isset($_POST['exclude_categories_list']) && !empty($_POST['exclude_categories_list'])) ? $_POST['exclude_categories_list'] : '',
47
+ 'se_exclude_posts' => (isset($_POST['exclude_posts'])) ? $_POST['exclude_posts'] : '',
48
+ 'se_exclude_posts_list' => (isset($_POST['exclude_posts_list']) && !empty($_POST['exclude_posts_list'])) ? $_POST['exclude_posts_list'] : '',
49
+ 'se_use_page_search' => (isset($_POST['search_pages']) && $_POST['search_pages']) ,
50
+ 'se_use_comment_search' => (isset($_POST['search_comments']) && $_POST['search_comments']) ,
51
+ 'se_use_tag_search' => (isset($_POST['search_tags']) && $_POST['search_tags'] ),
52
+ 'se_use_tax_search' => (isset($_POST['search_taxonomies']) && $_POST['search_taxonomies']),
53
+ 'se_use_category_search' => (isset($_POST['search_categories']) && $_POST['search_categories']),
54
+ 'se_approved_comments_only' => (isset($_POST['appvd_comments']) && $_POST['appvd_comments'] ),
55
+ 'se_approved_pages_only' => (isset($_POST['appvd_pages']) && $_POST['appvd_pages']),
56
+ 'se_use_excerpt_search' => (isset($_POST['search_excerpt']) && $_POST['search_excerpt']),
57
+ 'se_use_draft_search' => (isset($_POST['search_drafts']) && $_POST['search_drafts']),
58
+ 'se_use_attachment_search' => (isset($_POST['search_attachments']) && $_POST['search_attachments']),
59
+ 'se_use_authors' => (isset($_POST['search_authors']) && $_POST['search_authors']),
60
+ 'se_use_cmt_authors' => (isset($_POST['search_cmt_authors']) && $_POST['search_cmt_authors']),
61
+ 'se_use_metadata_search' => (isset($_POST['search_metadata']) && $_POST['search_metadata']),
62
+ 'se_use_highlight' => (isset($_POST['search_highlight']) && $_POST['search_highlight']),
63
+ 'se_highlight_color' => (isset($_POST['highlight_color'])) ? $_POST['highlight_color'] : '',
64
+ 'se_highlight_style' => (isset($_POST['highlight_style'])) ? $_POST['highlight_style'] : ''
65
+ );
66
 
67
  if(isset($_POST['action']) && $_POST['action'] == "save") {
68
  echo "<div class=\"updated fade\" id=\"limitcatsupdatenotice\"><p>" . __('Your default search settings have been <strong>updated</strong> by Search Everything. </p><p> What are you waiting for? Go check out the new search results!', 'SearchEverything') . "</p></div>";
72
  if(isset($_POST['action']) && $_POST['action'] == "reset") {
73
  echo "<div class=\"updated fade\" id=\"limitcatsupdatenotice\"><p>" . __('Your default search settings have been <strong>updated</strong> by Search Everything. </p><p> What are you waiting for? Go check out the new search results!', 'SearchEverything') . "</p></div>";
74
  $default_options = se_get_default_options();
75
+
76
  se_update_options($default_options);
77
  }
78
 
79
  $options = se_get_options();
80
  $meta = se_get_meta();
81
 
82
+ include(se_get_view('options_page'));
83
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
84
  } //end se_option_page
85
 
86
+ function se_options_page_notice() {
87
+ $screen = get_current_screen();
88
+ if ( 'settings_page_extend_search' == $screen->id ) {
89
  $close_url = admin_url( $screen->parent_file );
90
  $close_url = add_query_arg( array(
91
+ 'page' => 'extend_search',
92
+ 'se_notice' => 0,
93
  ), $close_url );
94
+ include(se_get_view('options_page_notice'));
95
+ }
96
+ }
97
+ }
 
 
 
 
 
 
 
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: zemanta
3
  Tags: search, search highlight, tag search, category search, category exclusion, comment search, page search, admin, seo, post filter
4
  Requires at least: 3
5
- Tested up to: 3.8
6
- Stable tag: 7.0.2
7
 
8
  Search Everything increases WordPress' default search functionality in three easy steps.
9
 
@@ -22,7 +22,6 @@ Search Everything improves WordPress default search functionality without modify
22
  * Configure options
23
  * Search!
24
 
25
-
26
  = What it does: =
27
 
28
  Search Everything increases the ability of the default Wordpress Search, options include:
@@ -93,10 +92,14 @@ Please open a new issue at [github Issues](https://github.com/zemanta/search-eve
93
 
94
  == Changelog ==
95
 
 
 
 
 
 
 
96
  = 7.0.2 =
97
  * Added config file with installation and migration functions
98
  * Refactored code, removed Yes options
99
  * Replaced deprecated functions
100
 
101
-
102
- [github Issues](https://github.com/sproutventure/search-everything-wordpress-plugin/issues "Github Issues")
2
  Contributors: zemanta
3
  Tags: search, search highlight, tag search, category search, category exclusion, comment search, page search, admin, seo, post filter
4
  Requires at least: 3
5
+ Tested up to: 3.8.1
6
+ Stable tag: 7.0.3
7
 
8
  Search Everything increases WordPress' default search functionality in three easy steps.
9
 
22
  * Configure options
23
  * Search!
24
 
 
25
  = What it does: =
26
 
27
  Search Everything increases the ability of the default Wordpress Search, options include:
92
 
93
  == Changelog ==
94
 
95
+ = 7.0.3 =
96
+ * Fixed vulnerability issue in se_search_default and started escaping terms
97
+ * Refactored code, extracted html from PHP code
98
+ * Added support for ajax call
99
+
100
+
101
  = 7.0.2 =
102
  * Added config file with installation and migration functions
103
  * Refactored code, removed Yes options
104
  * Replaced deprecated functions
105
 
 
 
search-everything.php CHANGED
@@ -3,12 +3,12 @@
3
  Plugin Name: Search Everything
4
  Plugin URI: https://github.com/Zemanta/search-everything-wordpress-plugin/
5
  Description: Adds search functionality without modifying any template pages: Activate, Configure and Search. Options Include: search highlight, search pages, excerpts, attachments, drafts, comments, tags and custom fields (metadata). Also offers the ability to exclude specific pages and posts. Does not search password-protected content.
6
- Version: 7.0.2
7
  Author: Zemanta
8
  Author URI: http://www.zemanta.com
9
  */
10
 
11
- define('SE_VERSION', '7.0.2');
12
 
13
  if (!defined('SE_PLUGIN_FILE'))
14
  define('SE_PLUGIN_FILE', plugin_basename(__FILE__));
@@ -28,8 +28,12 @@ include_once(SE_PLUGIN_DIR . '/options.php');
28
  add_action('wp_loaded','se_initialize_plugin');
29
 
30
  function se_initialize_plugin() {
31
- $SE = new SearchEverything();
32
- //add filters based upon option settings
 
 
 
 
33
  }
34
 
35
  class SearchEverything {
@@ -39,23 +43,51 @@ class SearchEverything {
39
  var $wp_ver23;
40
  var $wp_ver25;
41
  var $wp_ver28;
 
42
  private $query_instance;
43
 
44
- function SearchEverything() {
45
  global $wp_version;
46
  $this->wp_ver23 = ( $wp_version >= '2.3' );
47
  $this->wp_ver25 = ( $wp_version >= '2.5' );
48
  $this->wp_ver28 = ( $wp_version >= '2.8' );
 
49
  $this->options = se_get_options();
50
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
51
  if ( current_user_can('manage_options') ) {
52
  $SEAdmin = new se_admin();
53
  // Disable Search-Everything, because posts_join is not working properly in Wordpress-backend's Ajax functions
54
- if ( basename( $_SERVER["SCRIPT_NAME"] ) == "admin-ajax.php" ) {
55
  return true;
56
  }
57
  }
58
 
 
 
 
 
 
 
 
 
 
 
 
59
  //add filters based upon option settings
60
  if ( $this->options['se_use_tag_search'] || $this->options['se_use_category_search'] || $this->options['se_use_tax_search'] ) {
61
  add_filter( 'posts_join', array( &$this, 'se_terms_join' ) );
@@ -129,16 +161,8 @@ class SearchEverything {
129
  add_filter( 'posts_where', array( &$this, 'se_no_future' ) );
130
 
131
  add_filter( 'posts_request', array( &$this, 'se_log_query' ), 10, 2 );
132
-
133
- // Highlight content
134
- if ( $this->options['se_use_highlight'] ) {
135
- add_filter( 'the_content', array( &$this, 'se_postfilter' ), 11 );
136
- add_filter( 'the_title', array( &$this, 'se_postfilter' ), 11 );
137
- add_filter( 'the_excerpt', array( &$this, 'se_postfilter' ), 11 );
138
- }
139
  }
140
 
141
-
142
  // creates the list of search keywords from the 's' parameters.
143
  function se_get_search_terms() {
144
  global $wpdb;
@@ -162,7 +186,7 @@ class SearchEverything {
162
  // add where clause to the search query
163
  function se_search_where( $where, $wp_query ) {
164
 
165
- if ( !$wp_query->is_search() )
166
  return $where;
167
 
168
  $this->query_instance = &$wp_query;
@@ -206,29 +230,35 @@ class SearchEverything {
206
  // search for terms in default locations like title and content
207
  // replacing the old search terms seems to be the best way to
208
  // avoid issue with multiple terms
209
- function se_search_default() {
210
 
211
  global $wpdb;
212
 
213
- $n = ( isset( $this->query_instance->query_vars['exact'] ) && $this->query_instance->query_vars['exact'] ) ? '' : '%';
214
- $search = '';
215
  $seperator = '';
216
  $terms = $this->se_get_search_terms();
217
 
218
  // if it's not a sentance add other terms
219
- $search .= '(';
220
  foreach ( $terms as $term ) {
221
- $search .= $seperator;
222
 
 
 
 
 
223
 
224
- $search .= sprintf( "((%s.post_title LIKE '%s%s%s') OR (%s.post_content LIKE '%s%s%s'))", $wpdb->posts, $n, $term, $n, $wpdb->posts, $n, $term, $n );
225
-
 
 
226
 
227
  $seperator = ' AND ';
228
  }
229
 
230
- $search .= ')';
231
- return $search;
232
  }
233
 
234
  // Exclude post revisions
@@ -505,7 +535,7 @@ class SearchEverything {
505
  function se_build_search_tag() {
506
  global $wpdb;
507
  $vars = $this->query_instance->query_vars;
508
-
509
  $s = $vars['s'];
510
  $search_terms = $this->se_get_search_terms();
511
  $exact = isset( $vars['exact'] ) ? $vars['exact'] : '';
@@ -704,7 +734,7 @@ class SearchEverything {
704
  foreach ( $all_taxonomies as $taxonomy ) {
705
  if ( in_array( $taxonomy, $filter_taxonomies ) )
706
  continue;
707
- $on[] = "ttax.taxonomy = '".addslashes( $taxonomy )."'";
708
  }
709
  }
710
  // build our final string
@@ -755,4 +785,32 @@ class SearchEverything {
755
  }// se_log_query
756
  } // END
757
 
758
- ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  Plugin Name: Search Everything
4
  Plugin URI: https://github.com/Zemanta/search-everything-wordpress-plugin/
5
  Description: Adds search functionality without modifying any template pages: Activate, Configure and Search. Options Include: search highlight, search pages, excerpts, attachments, drafts, comments, tags and custom fields (metadata). Also offers the ability to exclude specific pages and posts. Does not search password-protected content.
6
+ Version: 7.0.3
7
  Author: Zemanta
8
  Author URI: http://www.zemanta.com
9
  */
10
 
11
+ define('SE_VERSION', '7.0.3');
12
 
13
  if (!defined('SE_PLUGIN_FILE'))
14
  define('SE_PLUGIN_FILE', plugin_basename(__FILE__));
28
  add_action('wp_loaded','se_initialize_plugin');
29
 
30
  function se_initialize_plugin() {
31
+ $SE = new SearchEverything();
32
+ //add filters based upon option settings
33
+ }
34
+
35
+ function se_get_view($view) {
36
+ return SE_PLUGIN_DIR . "/views/$view.php";
37
  }
38
 
39
  class SearchEverything {
43
  var $wp_ver23;
44
  var $wp_ver25;
45
  var $wp_ver28;
46
+ var $ajax_request;
47
  private $query_instance;
48
 
49
+ function SearchEverything($ajax_query=false) {
50
  global $wp_version;
51
  $this->wp_ver23 = ( $wp_version >= '2.3' );
52
  $this->wp_ver25 = ( $wp_version >= '2.5' );
53
  $this->wp_ver28 = ( $wp_version >= '2.8' );
54
+ $this->ajax_request = $ajax_query ? true : false;
55
  $this->options = se_get_options();
56
 
57
+ if ($this->ajax_request) {
58
+ $this->init_ajax($ajax_query);
59
+ }
60
+ else {
61
+ $this->init();
62
+ }
63
+ }
64
+
65
+ function init_ajax($query) {
66
+
67
+
68
+ $this->search_hooks();
69
+ }
70
+
71
+ function init() {
72
  if ( current_user_can('manage_options') ) {
73
  $SEAdmin = new se_admin();
74
  // Disable Search-Everything, because posts_join is not working properly in Wordpress-backend's Ajax functions
75
+ if (basename( $_SERVER["SCRIPT_NAME"] ) == "admin-ajax.php") {
76
  return true;
77
  }
78
  }
79
 
80
+ $this->search_hooks();
81
+
82
+ // Highlight content
83
+ if ( $this->options['se_use_highlight'] ) {
84
+ add_filter( 'the_content', array( &$this, 'se_postfilter' ), 11 );
85
+ add_filter( 'the_title', array( &$this, 'se_postfilter' ), 11 );
86
+ add_filter( 'the_excerpt', array( &$this, 'se_postfilter' ), 11 );
87
+ }
88
+ }
89
+
90
+ function search_hooks() {
91
  //add filters based upon option settings
92
  if ( $this->options['se_use_tag_search'] || $this->options['se_use_category_search'] || $this->options['se_use_tax_search'] ) {
93
  add_filter( 'posts_join', array( &$this, 'se_terms_join' ) );
161
  add_filter( 'posts_where', array( &$this, 'se_no_future' ) );
162
 
163
  add_filter( 'posts_request', array( &$this, 'se_log_query' ), 10, 2 );
 
 
 
 
 
 
 
164
  }
165
 
 
166
  // creates the list of search keywords from the 's' parameters.
167
  function se_get_search_terms() {
168
  global $wpdb;
186
  // add where clause to the search query
187
  function se_search_where( $where, $wp_query ) {
188
 
189
+ if ( !$wp_query->is_search() && !$this->ajax_request)
190
  return $where;
191
 
192
  $this->query_instance = &$wp_query;
230
  // search for terms in default locations like title and content
231
  // replacing the old search terms seems to be the best way to
232
  // avoid issue with multiple terms
233
+ function se_search_default(){
234
 
235
  global $wpdb;
236
 
237
+ $not_exact = empty($this->query_instance->query_vars['exact']);
238
+ $search_sql_query = '';
239
  $seperator = '';
240
  $terms = $this->se_get_search_terms();
241
 
242
  // if it's not a sentance add other terms
243
+ $search_sql_query .= '(';
244
  foreach ( $terms as $term ) {
245
+ $search_sql_query .= $seperator;
246
 
247
+ $esc_term = esc_sql($term);
248
+ if ($not_exact) {
249
+ $esc_term = "%$esc_term%";
250
+ }
251
 
252
+ $like_title = "($wpdb->posts.post_title LIKE '$esc_term')";
253
+ $like_post = "($wpdb->posts.post_content LIKE '$esc_term')";
254
+
255
+ $search_sql_query .= "($like_title OR $like_post)";
256
 
257
  $seperator = ' AND ';
258
  }
259
 
260
+ $search_sql_query .= ')';
261
+ return $search_sql_query;
262
  }
263
 
264
  // Exclude post revisions
535
  function se_build_search_tag() {
536
  global $wpdb;
537
  $vars = $this->query_instance->query_vars;
538
+
539
  $s = $vars['s'];
540
  $search_terms = $this->se_get_search_terms();
541
  $exact = isset( $vars['exact'] ) ? $vars['exact'] : '';
734
  foreach ( $all_taxonomies as $taxonomy ) {
735
  if ( in_array( $taxonomy, $filter_taxonomies ) )
736
  continue;
737
+ $on[] = "ttax.taxonomy = '" . addslashes( $taxonomy )."'";
738
  }
739
  }
740
  // build our final string
785
  }// se_log_query
786
  } // END
787
 
788
+ add_action('wp_ajax_search_everything', 'search_everything_callback');
789
+
790
+ function search_everything_callback() {
791
+ $is_query = !empty($_GET['s']);
792
+
793
+ $result = array();
794
+ if ($is_query) {
795
+ $SE = new SearchEverything(true);
796
+
797
+ $params = array(
798
+ 's' => $_GET['s']
799
+ );
800
+ if (!empty($_GET['exact'])) {
801
+ $params['exact'] = true;
802
+ }
803
+
804
+ $post_query = new WP_query($params);
805
+
806
+ while ( $post_query->have_posts() ) {
807
+ $post_query->the_post();
808
+
809
+ $result[] = get_post();
810
+ }
811
+ $post_query->reset_postdata();
812
+
813
+ }
814
+ print json_encode($result);
815
+ die();
816
+ }
views/options_page.php ADDED
@@ -0,0 +1,256 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="wrap">
2
+ <h2><?php _e('Search Everything', 'SearchEverything'); ?> <?php echo $meta['version']; ?> - <?php _e('settings','SearchEverything');?></h2>
3
+ <p><?php _e('Customize your search by checking one or more options below.','SearchEverything'); ?></p>
4
+ <form method="post">
5
+ <table id="se-basic-settings" class="widefat">
6
+ <thead>
7
+ <tr class="title">
8
+ <th scope="col" class="manage-column se-col"><?php _e('Basic Configuration', 'SearchEverything'); ?></th>
9
+ <th scope="col" class="manage-column"></th>
10
+ </tr>
11
+ </thead>
12
+ <tbody>
13
+ <?php if ($wp_version <= '2.5'): ?>
14
+ <tr valign="middle">
15
+ <th class="titledesc">
16
+ <?php _e('Search every page','SearchEverything'); ?>:<br/><small></small>
17
+ </th>
18
+ <td>
19
+ <input type="checkbox" id="search_pages" name="search_pages" value="yes" <?php checked($options['se_use_page_search']); ?> />
20
+ </td>
21
+ </tr>
22
+ <tr valign="middle">
23
+ <th scope="row" class="se-suboption">
24
+ <label for="appvd_pages"><?php _e('Search approved pages only','SearchEverything'); ?>:</label>
25
+ </th>
26
+ <td>
27
+ <input type="checkbox" id="appvd_pages" name="appvd_pages" value="yes" <?php checked($options['se_approved_pages_only']); ?> />
28
+ </td>
29
+ </tr><?php endif; ?> <?php
30
+ // Show tags only for WP 2.3+
31
+ if ($wp_version >= '2.3') : ?>
32
+ <tr valign="middle">
33
+ <th scope="row">
34
+ <label for="search_tags"><?php _e('Search every tag name','SearchEverything'); ?>:</label>
35
+ </th>
36
+ <td>
37
+ <input type="checkbox" id="search_tags" name="search_tags" value="yes" <?php checked($options['se_use_tag_search']); ?> />
38
+ </td>
39
+ </tr><?php endif; ?> <?php
40
+ // Show taxonomies only for WP 2.3+
41
+ if ($wp_version >= '2.3') : ?>
42
+ <tr valign="middle">
43
+ <th scope="row">
44
+ <label for="search_tags"><?php _e('Search custom taxonomies','SearchEverything'); ?>:</label>
45
+ </th>
46
+ <td>
47
+ <input type="checkbox" id="search_tags" name="search_taxonomies" value="yes" <?php checked($options['se_use_tax_search']); ?> />
48
+ </td>
49
+ </tr>
50
+ <?php endif; ?>
51
+ <?php if ($wp_version >= '2.5'): ?>
52
+ <tr valign="middle">
53
+ <th scope="row">
54
+ <label for="search_categories">
55
+ <?php _e('Search every category name and description','SearchEverything'); ?>:</label>
56
+ </th>
57
+ <td>
58
+ <input type="checkbox" id="search_categories" name="search_categories" value="yes" <?php checked($options['se_use_category_search']); ?> />
59
+ </td>
60
+ </tr><?php endif; ?>
61
+ <tr valign="middle">
62
+ <th scope="row">
63
+ <label for="search_comments"><?php _e('Search every comment','SearchEverything'); ?>:</label>
64
+ </th>
65
+ <td>
66
+ <input type="checkbox" name="search_comments" id="search_comments" value="yes" <?php checked($options['se_use_comment_search']); ?> />
67
+ </td>
68
+ </tr>
69
+ <tr valign="middle">
70
+ <th scope="row" class="se-suboption">
71
+ <label for="search_cmt_authors"><?php _e('Search comment authors','SearchEverything'); ?>:</label>
72
+ </th>
73
+ <td>
74
+ <input type="checkbox" id="search_cmt_authors" name="search_cmt_authors" value="yes" <?php checked($options['se_use_cmt_authors']); ?> />
75
+ </td>
76
+ </tr>
77
+ <tr valign="middle">
78
+ <th scope="row" class="se-suboption">
79
+ <label for="appvd_comments"><?php _e('Search approved comments only','SearchEverything'); ?>:</label>
80
+ </th>
81
+ <td>
82
+ <input type="checkbox" id="appvd_comments" name="appvd_comments" value="yes" <?php checked($options['se_approved_comments_only']); ?> />
83
+ </td>
84
+ </tr>
85
+ <tr valign="middle">
86
+ <th scope="row">
87
+ <label for="search_excerpt"><?php _e('Search every excerpt','SearchEverything'); ?>:</label>
88
+ </th>
89
+ <td>
90
+ <input type="checkbox" id="search_excerpt" name="search_excerpt" value="yes" <?php checked($options['se_use_excerpt_search']); ?> />
91
+ </td>
92
+ </tr>
93
+ <?php if ($wp_version >= '2.5'): ?>
94
+ <tr valign="middle">
95
+ <th scope="row">
96
+ <label for="search_drafts"><?php _e('Search every draft','SearchEverything'); ?></label>
97
+ </th>
98
+ <td>
99
+ <input type="checkbox" id="search_drafts" name="search_drafts" value="yes" <?php checked($options['se_use_draft_search']); ?> />
100
+ </td>
101
+ </tr>
102
+ <?php endif; ?>
103
+ <tr valign="middle">
104
+ <th>
105
+ <label for="search_attachments"><?php _e('Search every attachment','SearchEverything'); ?></label>:<br/><small><?php _e('(post type = attachment)','SearchEverything'); ?></small>
106
+ </th>
107
+ <td>
108
+ <input type="checkbox" id="search_attachments" name="search_attachments" value="yes" <?php checked($options['se_use_attachment_search']); ?> />
109
+ </td>
110
+ </tr>
111
+ <tr valign="middle">
112
+ <th scope="row">
113
+ <label for="search_metadata"><?php _e('Search every custom field','SearchEverything'); ?>:</label><br />
114
+ <small><?php _e('(metadata)','SearchEverything'); ?></small>
115
+ </th>
116
+ <td>
117
+ <input type="checkbox" id="search_metadata" name="search_metadata" value="yes" <?php checked($options['se_use_metadata_search']); ?> />
118
+ </td>
119
+ </tr>
120
+ <tr valign="middle">
121
+ <th scope="row">
122
+ <label for="search_authors"><?php _e('Search every author','SearchEverything'); ?>:</label>
123
+ </th>
124
+ <td>
125
+ <input type="checkbox" id="search_authors" name="search_authors" value="yes" <?php checked($options['se_use_authors']); ?> />
126
+ </td>
127
+ </tr>
128
+ <tr valign="middle">
129
+ <th scope="row">
130
+ <label for="search_highlight"><?php _e('Highlight Search Terms','SearchEverything'); ?>:</label>
131
+ </th>
132
+ <td>
133
+ <input type="checkbox" id="search_highlight" name="search_highlight" value="yes" <?php checked($options['se_use_highlight']); ?> />
134
+ </td>
135
+ </tr>
136
+ <tr valign="top">
137
+ <th scope="row" class="se-suboption">
138
+ <label for="highlight_color"><?php _e('Highlight Background Color','SearchEverything'); ?>:</label>
139
+ </th>
140
+ <td>
141
+ <input type="text" id="highlight_color" name="highlight_color" value="<?php echo $options['se_highlight_color'];?>" /><br/>
142
+ <small> <?php _e('Examples:\'#FFF984\' or \'red\'','SearchEverything'); ?></small>
143
+ </td>
144
+ </tr>
145
+ </tbody>
146
+ </table>
147
+ <table id="se-advanced-settings" class="widefat">
148
+ <thead>
149
+ <tr class="title">
150
+ <th scope="col" class="manage-column se-col"><?php _e('Advanced Configuration - Exclusion', 'SearchEverything'); ?></th>
151
+ <th scope="col" class="manage-column"></th>
152
+ </tr>
153
+ </thead>
154
+ <tbody>
155
+ <tr valign="middle">
156
+ <th scope="row"><label for="exclude_posts_list"><?php _e('Exclude some post or page IDs','SearchEverything'); ?>:</label></th>
157
+ <td class="forminp">
158
+ <input type="text" id="exclude_posts_list" name="exclude_posts_list" value="<?php echo $options['se_exclude_posts_list'];?>" />
159
+ <br/><small><?php _e('Comma separated Post IDs (example: 1, 5, 9)','SearchEverything'); ?></small>
160
+ </td>
161
+ </tr>
162
+ <tr valign="middle">
163
+ <th scope="row"><label for="exclude_categories_list"><?php _e('Exclude Categories','SearchEverything'); ?>:</label></th>
164
+ <td class="forminp">
165
+ <input type="text" id="exclude_categories_list" name="exclude_categories_list" value="<?php echo $options['se_exclude_categories_list'];?>" />
166
+ <br/><small><?php _e('Comma separated category IDs (example: 1, 4)','SearchEverything'); ?></small>
167
+ </td>
168
+ </tr>
169
+ <tr valign="middle">
170
+ <th scope="row"><label for="highlight_style"><?php _e('Full Highlight Style','SearchEverything'); ?>:</label></th>
171
+ <td class="forminp">
172
+ <input type="text" id="highlight_style" name="highlight_style" value="<?php echo $options['se_highlight_style'];?>" /><br />
173
+ <small><?php _e('Important: \'Highlight Background Color\' must be blank to use this advanced styling.', 'SearchEverything') ?></small><br />
174
+ <small><?php _e('Example: background-color: #FFF984; font-weight: bold; color: #000; padding: 0 1px;','SearchEverything'); ?></small>
175
+ </td>
176
+ </tr>
177
+ </tbody>
178
+ </table>
179
+ <p class="submit">
180
+ <input type="hidden" name="action" value="save" />
181
+ <input type="submit" class="button button-primary" value="<?php _e('Save Changes', 'SearchEverything') ?>" />
182
+ </p>
183
+ </form>
184
+ <table id="se-test-search" class="widefat">
185
+ <thead>
186
+ <tr class="title">
187
+ <th scope="col" class="manage-column se-col"><?php _e('Test Search Form', 'SearchEverything'); ?></th>
188
+ <th scope="col" class="manage-column"></th>
189
+ </tr>
190
+ </thead>
191
+ <tbody>
192
+ <tr valign="middle">
193
+ <th >
194
+ <?php _e('Use this search form to run a live search test.', 'SearchEverything'); ?>
195
+ </th>
196
+ <td>
197
+ <form method="get" id="searchform" action="<?php bloginfo($cap = version_compare('2.2', $wp_version, '<') ? 'url' : 'home'); ?>">
198
+ <p class="srch submit">
199
+ <input type="text" class="srch-txt" value="<?php echo (isset($S)) ? wp_specialchars($s, 1) : ''; ?>" name="s" id="s" size="30" />
200
+ <input type="submit" class="button"class="SE5_btn" id="searchsubmit" value="<?php _e('Run Test Search', 'SearchEverything'); ?>" />
201
+ </p>
202
+ </form>
203
+ </td>
204
+ </tr>
205
+ </tbody>
206
+ </table>
207
+ <table id="se-info" class="widefat">
208
+ <thead>
209
+ <tr class="title">
210
+ <th scope="col" class="manage-column se-col"><?php _e('News', 'SearchEverything'); ?></th>
211
+ <th scope="col" class="manage-column"><?php _e('Development Support', 'SearchEverything'); ?></th>
212
+ <th scope="col" class="manage-column"><?php _e('Localization Support', 'SearchEverything'); ?></th>
213
+ </tr>
214
+ </thead>
215
+ <tr valign="middle">
216
+ <td class="thanks">
217
+ <p>
218
+ <strong><?php _e('LOCALIZATION SUPPORT:', 'SearchEverything'); ?></strong><br />
219
+ <?php _e('Version 6 was a major update and a few areas need new localization support. If you can help send us your translations by posting them as a new issue, ', 'SearchEverything') ?>
220
+ <a href="https://github.com/Zemanta/search-everything-wordpress-plugin/issues?sort=created&direction=desc&state=open&page=1" target="blank"><strong><?php _e('here','SearchEverything')?></strong></a>.
221
+ </p>
222
+ <p>
223
+ <strong><?php _e('Thank You!', 'SearchEverything'); ?></strong><br />
224
+ <?php _e('The development of Search Everything since Version one has primarily come from the WordPress community, We&#8217;m grateful for their dedicated and continued support.', 'SearchEverything'); ?>
225
+ </p>
226
+ </td>
227
+ <td>
228
+ <ul class="SE_lists">
229
+ <li><a href="https://github.com/ninnypants"><strong>Tyrel Kelsey</strong></a></li>
230
+ </ul>
231
+ </td>
232
+ <td>
233
+ <ul class="SE_lists">
234
+ <li><a href="#" target="blank">minjae kim (KR) - v.6</a></li>
235
+ <li><a href="http://www.r-sn.com/wp" target="blank">Anonymous (AR) - v.6</a></li>
236
+ <li><a href="http://www.doctorley.pl" target="blank">Karol Manikowski (PL) - v.6</a></li>
237
+ <li><a href="http://www.paulwicking.com" target="blank">Paul Wicking (NO)- v.6</a></li>
238
+ <li><a href="#">Bilei Radu (RO)- v.6</a></li>
239
+ <li><a href="http://www.fatcow.com" target="blank">Fat Cow (BY) - v.6</a></li>
240
+ <li><a href="http://gidibao.net/" target="blank">Gianni Diurno (IT) - v.6</a></li>
241
+ <li><a href="#">Maris Svirksts (LV) - v.6</a></li>
242
+ <li><a href="#">Simon Hansen (NN) - v.6</a></li>
243
+ <li><a href="http://beyn.org/" target="blank">jean Pierre Gavoille (FR) - v.6</a></li>
244
+ <li><a href="#">hit1205 (CN and TW)</a></li>
245
+ <li><a href="http://www.alohastone.com" target="blank">alohastone (DE)</a></li>
246
+ <li><a href="http://gidibao.net/" target="blank">Gianni Diurno (ES)</a></li>
247
+ <li><a href="#">János Csárdi-Braunstein (HU)</a></li>
248
+ <li><a href="http://idimensie.nl" target="blank">Joeke-Remkus de Vries (NL)</a></li>
249
+ <li><a href="#">Silver Ghost (RU)</a></li>
250
+ <li><a href="http://mishkin.se" target="blank">Mikael Jorhult (RU)</a></li>
251
+ <li><a href="#">Baris Unver (TR)</a></li>
252
+ </ul>
253
+ </td>
254
+ </tr>
255
+ </table>
256
+ </div>
views/options_page_notice.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <div class="updated" id="se-top-notice" >
2
+ <a href="<?php echo $close_url; ?>" style="position: absolute; right: 30px; top: 20px;">Dismiss</a>
3
+ <h3>Good news everyone!</h3>
4
+ <p class="about-description">This plugin is <strong>alive</strong> again and we have great plans for it. Stay tuned.</p>
5
+ </div>
6
+