CVE-2014-125102 (published 2023-05-29T23:15Z)

A vulnerability classified as problematic was found in Bestwebsoft Relevant Plugin up to 1.0.7 on WordPress. Affected by this vulnerability is an unknown functionality of the component Thumbnail Handler. The manipulation leads to information disclosure. The attack can be launched remotely. Upgrading to version 1.0.8 is able to address this issue. The identifier of the patch is 860d1891025548cf0f5f97364c1f51a888f523c3. It is recommended to upgrade the affected component. The identifier VDB-230113 was assigned to this vulnerability.

CVSS v3 base score: 7.5, HIGH (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N)

Weakness information:
cwe_id: NVD-CWE-noinfo
cwe_name: Insufficient Information
description: There is insufficient information about the issue to classify it; details are unkown or unspecified.
extended_description: Insufficient Information

Fix information:
repo_url: https://github.com/wp-plugins/relevant
commit_details: repo_url: https://github.com/wp-plugins/relevant
author: bestwebsoft
author_date: 2014-08-08 08:01:09+00:00
msg: V1.0.8 - Security Exploit was fixed. Ability to show posts thumbnails.

git-svn-id: https://plugins.svn.wordpress.org/relevant/trunk@962246 b8457f37-d9ea-0310-8a92-e5e31aec5664
repository: repo_url: https://github.com/wp-plugins/relevant
repo_name: wp-plugins/relevant
description: WordPress.org Plugin Mirror
repo_language: PHP
owner: wp-plugins
file_changes: filename: bws_menu.php
change_type: ModificationType.MODIFY
diff: @@ -1,7 +1,7 @@
 <?php
 /*
 * Function for displaying BestWebSoft menu
-* Version: 1.3.2
+* Version: 1.3.7
 */
 
 if ( ! function_exists( 'bws_add_menu_render' ) ) {
@@ -119,7 +119,7 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 			),
 			'google-one/google-plus-one.php' => array(
 				'name'			=> 'Google +1',
-				'description'	=> 'Allows you to celebrate liked the article.',
+				'description'	=> 'Allows you to see how many times your page has been liked on Google Search Engine as well as who has liked the article.',
 				'link'			=> 'http://bestwebsoft.com/plugin/google-plus-one/?k=ce7a88837f0a857b3a2bb142f470853c&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
 				'download'		=> 'http://bestwebsoft.com/plugin/google-plus-one/?k=ce7a88837f0a857b3a2bb142f470853c&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#download',
 				'wp_install'	=> '/wp-admin/plugin-install.php?tab=search&type=term&s=Google+%2B1+bestwebsoft&plugin-search-input=Search+Plugins',
@@ -248,9 +248,34 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 				'description'	=> 'Allows to change wordpress user role capabilities.',
 				'link'			=> 'http://bestwebsoft.com/plugin/user-role/?k=dfe2244835c6fbf601523964b3f34ccc&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
 				'download'		=> 'http://bestwebsoft.com/plugin/user-role/?k=dfe2244835c6fbf601523964b3f34ccc&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#download',
-				'wp_install'	=> 'http://bestwebsoft.com/plugin/user-role/?k=dfe2244835c6fbf601523964b3f34ccc&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#download',
+				'wp_install'	=> '/wp-admin/plugin-install.php?tab=search&s=User+Role+BestWebSoft&plugin-search-input=Search+Plugins',
 				'settings'		=> 'admin.php?page=user-role.php',
 				'pro_version'	=> 'user-role-pro/user-role-pro.php'
+			),
+			'email-queue/email-queue.php' => array(
+				'name'			=> 'Email Queue',
+				'description'	=> 'Allows to manage email massages sent by BestWebSoft plugins.',
+				'link'			=> 'http://bestwebsoft.com/plugin/email-queue/?k=e345e1b6623f0dca119bc2d9433b130b&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
+				'download'		=> 'http://bestwebsoft.com/plugin/email-queue/?k=e345e1b6623f0dca119bc2d9433b130b&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#download',
+				'wp_install'	=> '/wp-admin/plugin-install.php?tab=search&s=Email+Queue+BestWebSoft&plugin-search-input=Search+Plugins',
+				'settings'		=> 'admin.php?page=mlq_settings'
+			),
+			'limit-attempts/limit-attempts.php' => array(
+				'name'			=> 'Limit Attempts',
+				'description'	=> 'Allows you to limit rate of login attempts by the ip, and create whitelist and blacklist.',
+				'link'			=> 'http://bestwebsoft.com/plugin/limit-attempts/?k=b14e1697ee4d008abcd4bd34d492573a&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
+				'download'		=> 'http://bestwebsoft.com/plugin/limit-attempts/?k=b14e1697ee4d008abcd4bd34d492573a&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#download',
+				'wp_install'	=> '/wp-admin/plugin-install.php?tab=search&s=Limit+Attempts+BestWebSoft&plugin-search-input=Search+Plugins',
+				'settings'		=> 'admin.php?page=limit-attempts.php',
+				'pro_version'	=> 'limit-attempts-pro/limit-attempts-pro.php'
+			),
+			'job-board/job-board.php' => array(
+				'name'			=> 'Job board',
+				'description'	=> 'Allows to create a job-board page on your site.',
+				'link'			=> 'http://bestwebsoft.com/plugin/job-board/?k=b0c504c9ce6edd6692e04222af3fed6f&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
+				'download'		=> 'http://bestwebsoft.com/plugin/job-board/?k=b0c504c9ce6edd6692e04222af3fed6f&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#download',
+				'wp_install'	=> '/wp-admin/plugin-install.php?tab=search&type=term&s=Job+board+BestWebSoft&plugin-search-input=Search+Plugins',
+				'settings'		=> 'admin.php?page=job-board.php'
 			)
 		);
 		$bws_plugins_pro	= array(
@@ -305,7 +330,7 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 			),
 			'google-one-pro/google-plus-one-pro.php' => array(
 				'name'			=> 'Google +1 Pro',
-				'description'	=> 'Allows you to celebrate liked the article.',
+				'description'	=> 'Allows you to see how many times your page has been liked on Google Search Engine as well as who has liked the article.',
 				'link'			=> 'http://bestwebsoft.com/plugin/google-plus-one-pro/?k=f4b0a62d155c9df9601a0531ad5bd832&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
 				'purchase' 		=> 'http://bestwebsoft.com/plugin/google-plus-one-pro?k=f4b0a62d155c9df9601a0531ad5bd832&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#purchase',
 				'settings' 		=> 'admin.php?page=google-plus-one-pro.php'
@@ -351,6 +376,13 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 				'link'			=> 'http://bestwebsoft.com/plugin/sender-pro/?k=dc5d1a87bdc8aeab2de40ffb99b38054&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
 				'purchase' 		=> 'http://bestwebsoft.com/plugin/sender-pro/?k=dc5d1a87bdc8aeab2de40ffb99b38054&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#purchase',
 				'settings'		=> 'admin.php?page=sndrpr_settings'
+			),
+			'limit-attempts-pro/limit-attempts-pro.php' => array(
+				'name'			=> 'Limit Attempts Pro',
+				'description'	=> 'Allows you to limit rate of login attempts by the ip, and create whitelist and blacklist.',
+				'link'			=> 'http://bestwebsoft.com/plugin/limit-attempts-pro/?k=9d42cdf22c7fce2c4b6b447e6a2856e0&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version,
+				'purchase' 		=> 'http://bestwebsoft.com/plugin/limit-attempts-pro/?k=9d42cdf22c7fce2c4b6b447e6a2856e0&pn=' . $bws_plugin_info["id"] . '&v=' . $bws_plugin_info["version"] . '&wp_v=' . $wp_version . '#purchase',
+				'settings'		=> 'admin.php?page=limit-attempts-pro.php',
 			)
 		);
 		
@@ -483,8 +515,8 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 		if ( ( isset( $_REQUEST['bwsmn_form_submit'] ) && check_admin_referer( plugin_basename(__FILE__), 'bwsmn_nonce_submit' ) ) ||
 			 ( isset( $_REQUEST['bwsmn_form_submit_custom_email'] ) && check_admin_referer( plugin_basename(__FILE__), 'bwsmn_nonce_submit_custom_email' ) ) ) {
 			if ( isset( $_REQUEST['bwsmn_form_email'] ) ) {
-				$bwsmn_form_email = trim( $_REQUEST['bwsmn_form_email'] );
-				if ( $bwsmn_form_email == "" || !preg_match( "/^((?:[a-z0-9']+(?:[a-z0-9\-_\.']+)?@[a-z0-9]+(?:[a-z0-9\-\.]+)?\.[a-z]{2,5})[, ]*)+$/i", $bwsmn_form_email ) ) {
+				$bwsmn_form_email = esc_html( trim( $_REQUEST['bwsmn_form_email'] ) );
+				if ( $bwsmn_form_email == "" || ! is_email( $bwsmn_form_email ) ) {
 					$error = __( "Please enter a valid email address.", 'bestwebsoft' );
 				} else {
 					$email = $bwsmn_form_email;
@@ -506,19 +538,24 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 				foreach ( $system_info['system_info'] as $key => $value ) {
 					$message_text .= '<tr><td>'. $key .'</td><td>'. $value .'</td></tr>';	
 				}
-				$message_text .= '</table>
-				<h4>Active Plugins</h4>
-				<table>';
-				foreach ( $system_info['active_plugins'] as $key => $value ) {	
-					$message_text .= '<tr><td scope="row">'. $key .'</td><td scope="row">'. $value .'</td></tr>';	
+				$message_text .= '</table>';
+				if ( ! empty( $system_info['active_plugins'] ) ) {
+					$message_text .= '<h4>Active Plugins</h4>
+					<table>';
+					foreach ( $system_info['active_plugins'] as $key => $value ) {	
+						$message_text .= '<tr><td scope="row">'. $key .'</td><td scope="row">'. $value .'</td></tr>';	
+					}
+					$message_text .= '</table>';
 				}
-				$message_text .= '</table>
-				<h4>Inactive Plugins</h4>
-				<table>';
-				foreach ( $system_info['inactive_plugins'] as $key => $value ) {
-					$message_text .= '<tr><td scope="row">'. $key .'</td><td scope="row">'. $value .'</td></tr>';
+				if ( ! empty( $system_info['inactive_plugins'] ) ) {
+					$message_text .= '<h4>Inactive Plugins</h4>
+					<table>';
+					foreach ( $system_info['inactive_plugins'] as $key => $value ) {
+						$message_text .= '<tr><td scope="row">'. $key .'</td><td scope="row">'. $value .'</td></tr>';
+					}
+					$message_text .= '</table>';
 				}
-				$message_text .= '</table></body></html>';
+				$message_text .= '</body></html>';
 				$result = wp_mail( $email, 'System Info From ' . $home_url, $message_text, $headers );
 				if ( $result != true )
 					$error = __( "Sorry, email message could not be delivered.", 'bestwebsoft' );
@@ -578,8 +615,10 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 									</div>
 									<div class="bws_product_links">								
 										<a href="<?php echo $bws_plugins_pro[ $key_plugin ]["link"]; ?>" target="_blank"><?php _e( "Learn more", 'bestwebsoft' ); ?></a>
-										<span> | </span>
-										<a href="<?php echo $bws_plugins_pro[ $key_plugin ]["settings"]; ?>" target="_blank"><?php _e( "Settings", 'bestwebsoft' ); ?></a>
+										<?php if ( '' != $bws_plugins_pro[ $key_plugin ]["settings"] ) { ?>
+											<span> | </span>
+											<a href="<?php echo $bws_plugins_pro[ $key_plugin ]["settings"]; ?>" target="_blank"><?php _e( "Settings", 'bestwebsoft' ); ?></a>
+										<?php } ?>
 									</div>
 								</div>
 							<?php } elseif ( isset( $bws_plugins[ $key_plugin ] ) ) { ?>
@@ -605,8 +644,10 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 									</div>									
 									<div class="bws_product_links">
 										<a href="<?php echo $bws_plugins[ $key_plugin ]["link"]; ?>" target="_blank"><?php _e( "Learn more", 'bestwebsoft' ); ?></a>
-										<span> | </span>
-										<a href="<?php echo $bws_plugins[ $key_plugin ]["settings"]; ?>" target="_blank"><?php _e( "Settings", 'bestwebsoft' ); ?></a>
+										<?php if ( '' != $bws_plugins[ $key_plugin ]["settings"] ) { ?>
+											<span> | </span>
+											<a href="<?php echo $bws_plugins[ $key_plugin ]["settings"]; ?>" target="_blank"><?php _e( "Settings", 'bestwebsoft' ); ?></a>
+										<?php } ?>
 									</div>
 								</div>
 							<?php }
@@ -862,12 +903,14 @@ if ( ! function_exists( 'bws_add_menu_render' ) ) {
 					<table class="bws_system_info">
 						<thead><tr><th><?php _e( 'Active Plugins', 'bestwebsoft' ); ?></th><th></th></tr></thead>
 						<tbody>
-						<?php foreach ( $system_info['active_plugins'] as $key => $value ) { ?>	
-							<tr>
-								<td scope="row"><?php echo $key; ?></td>
-								<td scope="row"><?php echo $value; ?></td>
-							</tr>	
-						<?php } ?>
+						<?php if ( ! empty( $system_info['active_plugins'] ) ) {
+							foreach ( $system_info['active_plugins'] as $key => $value ) { ?>	
+								<tr>
+									<td scope="row"><?php echo $key; ?></td>
+									<td scope="row"><?php echo $value; ?></td>
+								</tr>	
+							<?php }
+						} ?>
 						</tbody>
 					</table>
 					<table class="bws_system_info">

programming_language: PHP
filename: style.css
change_type: ModificationType.MODIFY
diff: @@ -95,6 +95,7 @@ h4.bws_installed:before {
     margin: -9px auto -10px;
     position: relative;
     width: 46px;
+    line-height: 19px;
 }
 .bws_product_description {
     padding: 0 10px;

programming_language: CSS
filename: related_posts_plugin-ru_RU.po
change_type: ModificationType.MODIFY
diff: @@ -2,9 +2,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Relevant - Related Posts Plugin\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-12-25 19:23+0300\n"
+"POT-Creation-Date: 2014-08-08 10:42+0300\n"
 "PO-Revision-Date: \n"
-"Last-Translator: BestWebSoft <support@bestwebsoft.com>\n"
+"Last-Translator: bestwebsoft.com <plugins@bestwebsoft.com>\n"
 "Language-Team: BestWebSoft <plugin@bestwebsoft.com>\n"
 "Language: ru_RU\n"
 "MIME-Version: 1.0\n"
@@ -16,157 +16,162 @@ msgstr ""
 "X-Generator: Poedit 1.5.4\n"
 "X-Poedit-SearchPath-0: .\n"
 
-#: related-posts-plugin.php:35
-#: related-posts-plugin.php:300
+#: related-posts-plugin.php:75
+#: related-posts-plugin.php:336
 msgid "Related Posts Plugin Settings"
 msgstr "Настройки Плагина Related Posts"
 
-#: related-posts-plugin.php:35
-#: related-posts-plugin.php:180
-#: related-posts-plugin.php:231
-#: related-posts-plugin.php:243
-#: related-posts-plugin.php:262
+#: related-posts-plugin.php:75
+#: related-posts-plugin.php:117
+#: related-posts-plugin.php:214
+#: related-posts-plugin.php:265
+#: related-posts-plugin.php:277
+#: related-posts-plugin.php:296
 msgid "Related Posts Plugin"
 msgstr "Плагин Related Posts"
 
-#: related-posts-plugin.php:56
-msgid "<h2>Related Posts Plugin</h2>"
-msgstr "<h2>Плагин Related Posts</h2>"
-
-#: related-posts-plugin.php:57
-msgid "<p>No related posts found...</p>"
-msgstr "<p>Не найдено похожих записей...</p>"
+#: related-posts-plugin.php:118
+msgid "No related posts found..."
+msgstr "Не найдено похожих записей..."
 
-#: related-posts-plugin.php:109
+#: related-posts-plugin.php:167
 msgid "requires"
 msgstr "требует"
 
-#: related-posts-plugin.php:109
+#: related-posts-plugin.php:167
 msgid "or higher, that is why it has been deactivated! Please upgrade WordPress and try again."
 msgstr "или выше, поэтому он был деактивирован! Пожалуйста обновите WordPress и поробуйте еще раз."
 
-#: related-posts-plugin.php:109
+#: related-posts-plugin.php:167
 msgid "Back to the WordPress"
 msgstr "Вернуться к WordPress на"
 
-#: related-posts-plugin.php:109
+#: related-posts-plugin.php:167
 msgid "Plugins page"
 msgstr "Страницу плагинов"
 
-#: related-posts-plugin.php:157
-#: related-posts-plugin.php:169
+#: related-posts-plugin.php:191
+#: related-posts-plugin.php:203
+#: related-posts-plugin.php:338
 msgid "Settings"
 msgstr "Настройки"
 
-#: related-posts-plugin.php:170
+#: related-posts-plugin.php:204
+#: related-posts-plugin.php:339
 msgid "FAQ"
 msgstr "Часто задаваемые вопросы"
 
-#: related-posts-plugin.php:171
+#: related-posts-plugin.php:205
 msgid "Support"
 msgstr "Поддержка"
 
-#: related-posts-plugin.php:188
+#: related-posts-plugin.php:222
 msgid "Check \"Key\" if you want to display this post with Related Posts Plugin sorted by Meta Key:"
 msgstr "Выберите 'Ключ', если вы хотите показывать этот пост при помощи Плагина Related Posts, отсортированных по Мета Ключу:"
 
-#: related-posts-plugin.php:190
+#: related-posts-plugin.php:224
 msgid "Key"
 msgstr "Ключ"
 
-#: related-posts-plugin.php:191
+#: related-posts-plugin.php:225
 msgid "None"
 msgstr "Ничего"
 
-#: related-posts-plugin.php:234
+#: related-posts-plugin.php:268
 msgid "A widget that displays related posts depending on your choice of sorting criteria"
 msgstr "Виджет, который отображает похожие записи в зависимости от вашего критерия сортировки"
 
-#: related-posts-plugin.php:264
+#: related-posts-plugin.php:298
 msgid "Title:"
 msgstr "Название:"
 
-#: related-posts-plugin.php:283
+#: related-posts-plugin.php:317
 msgid "Settings saved."
 msgstr "Настройки сохранены."
 
-#: related-posts-plugin.php:294
+#: related-posts-plugin.php:330
 msgid "Wrong type of displayed posts, please use number"
 msgstr "Неправильный тип количества выводимых постов, пожалуйста используйте числа"
 
-#: related-posts-plugin.php:302
+#: related-posts-plugin.php:342
 msgid "Notice:"
 msgstr "Внимание:"
 
-#: related-posts-plugin.php:302
+#: related-posts-plugin.php:342
 msgid "The plugin's settings have been changed. In order to save them please don't forget to click the 'Save Changes' button."
 msgstr "Настройки плагина были изменены. Для того, чтобы сохранить их, пожалуйста, не забудьте нажать кнопку \"Сохранить\"."
 
-#: related-posts-plugin.php:306
+#: related-posts-plugin.php:346
 msgid "If you would like to display related posts with widget, you must add widget \"Releted Posts Plugin\" in the tab Widgets"
 msgstr "Если вы желаете показывать похожие записи при помощи виджета вы должны добавить виджет \"Плагин Related Posts\" во вкладке Виджеты"
 
-#: related-posts-plugin.php:307
+#: related-posts-plugin.php:347
 msgid "If you would like to display related posts on the end of your post, just copy and put this shortcode onto your post or page: [bws_related_posts]"
 msgstr "Если вы желаете показывать похожие записи в конце вашей поста, просто скопируйте и вставьте этот шорткод в ваш пост или на вашу страницу: [bws_related_posts]"
 
-#: related-posts-plugin.php:312
+#: related-posts-plugin.php:351
 msgid "Heading the list of related posts:"
 msgstr "Заголовок списка похожих записей:"
 
-#: related-posts-plugin.php:320
+#: related-posts-plugin.php:359
 msgid "How many posts to display:"
 msgstr "Сколько записей отображать:"
 
-#: related-posts-plugin.php:328
+#: related-posts-plugin.php:367
 msgid "Message if do not have related posts:"
 msgstr "Сообщение, если похожих записей нет:"
 
-#: related-posts-plugin.php:336
+#: related-posts-plugin.php:375
 msgid "Select an option on which will be searched for related words in the posts:"
 msgstr "Выберете опцию, по которой будет производится поиск похожих слов в записях:"
 
-#: related-posts-plugin.php:341
+#: related-posts-plugin.php:380
 msgid "Category"
 msgstr "Категория"
 
-#: related-posts-plugin.php:345
+#: related-posts-plugin.php:384
 msgid "Tags"
 msgstr "Тэги"
 
-#: related-posts-plugin.php:349
+#: related-posts-plugin.php:388
 msgid "Title"
 msgstr "Заголовок"
 
-#: related-posts-plugin.php:353
+#: related-posts-plugin.php:392
 msgid "Meta Key"
 msgstr "Мета Ключ"
 
-#: related-posts-plugin.php:356
+#: related-posts-plugin.php:395
 msgid "(If you want to display related posts by meta key you should first check the \"Key\" in meta box \"Related post plugin\" in the post that you want to display)"
 msgstr "(Если Вы желаете показывать похожие записи по мета ключ, вам следует сначала выбрать \"Ключ\" в метабоксе \"Плагин Related Posts\" в постах, которые вы хотите показывать)"
 
-#: related-posts-plugin.php:362
+#: related-posts-plugin.php:401
 msgid "Show Related Posts Widget not only in the post (category/tag/index/home page)"
 msgstr "Отображать виджет Related Posts не только в постах (категориях/тэгах/идексной/домашней странице)"
 
-#: related-posts-plugin.php:368
+#: related-posts-plugin.php:407
 msgid "(By default related posts will be displayed for the first post in the list of posts.)"
 msgstr "(По умолчанию будут выведены похожие записи для первого поста из списка постов)"
 
-#: related-posts-plugin.php:375
+#: related-posts-plugin.php:412
+msgid "Show posts thumbnails"
+msgstr "Отображать эскизы постов"
+
+#: related-posts-plugin.php:424
 msgid "Save Changes"
 msgstr "Сохранить Настройки"
 
-#: related-posts-plugin.php:382
+#: related-posts-plugin.php:430
 msgid "If you enjoy our plugin, please give it 5 stars on WordPress"
 msgstr " Если вам понравился плагин то поставте нам 5 звезд на WordPress"
 
-#: related-posts-plugin.php:383
+#: related-posts-plugin.php:431
 msgid "Rate the plugin"
 msgstr "Оценить плагин"
 
-#: related-posts-plugin.php:386
+#: related-posts-plugin.php:434
 msgid "If there is something wrong about it, please contact us"
 msgstr "Если у вас есть какие-то вопросы, обращайтесь"
 
+#~ msgid "<h2>Related Posts Plugin</h2>"
+#~ msgstr "<h2>Плагин Related Posts</h2>"

programming_language: CoffeeScript
filename: related_posts_plugin-uk.po
change_type: ModificationType.MODIFY
diff: @@ -2,9 +2,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: related_posts_plugin\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-12-25 19:23+0300\n"
+"POT-Creation-Date: 2014-08-08 10:42+0300\n"
 "PO-Revision-Date: \n"
-"Last-Translator: BestWebSoft <support@bestwebsoft.com>\n"
+"Last-Translator: bestwebsoft.com <plugins@bestwebsoft.com>\n"
 "Language-Team: BestWebSoft <plugin@bestwebsoft.com>\n"
 "Language: uk_UA\n"
 "MIME-Version: 1.0\n"
@@ -16,157 +16,162 @@ msgstr ""
 "X-Generator: Poedit 1.5.4\n"
 "X-Poedit-SearchPath-0: .\n"
 
-#: related-posts-plugin.php:35
-#: related-posts-plugin.php:300
+#: related-posts-plugin.php:75
+#: related-posts-plugin.php:336
 msgid "Related Posts Plugin Settings"
 msgstr "Налаштування Плагіну Related Posts"
 
-#: related-posts-plugin.php:35
-#: related-posts-plugin.php:180
-#: related-posts-plugin.php:231
-#: related-posts-plugin.php:243
-#: related-posts-plugin.php:262
+#: related-posts-plugin.php:75
+#: related-posts-plugin.php:117
+#: related-posts-plugin.php:214
+#: related-posts-plugin.php:265
+#: related-posts-plugin.php:277
+#: related-posts-plugin.php:296
 msgid "Related Posts Plugin"
 msgstr "Плагін Related Posts"
 
-#: related-posts-plugin.php:56
-msgid "<h2>Related Posts Plugin</h2>"
-msgstr "<h2>Плагін Related Posts</h2>"
-
-#: related-posts-plugin.php:57
-msgid "<p>No related posts found...</p>"
-msgstr "<p>Не знайдено схожих записів...</p>"
+#: related-posts-plugin.php:118
+msgid "No related posts found..."
+msgstr "Не знайдено схожих записів..."
 
-#: related-posts-plugin.php:109
+#: related-posts-plugin.php:167
 msgid "requires"
 msgstr "потребує"
 
-#: related-posts-plugin.php:109
+#: related-posts-plugin.php:167
 msgid "or higher, that is why it has been deactivated! Please upgrade WordPress and try again."
 msgstr "чи вище, тому він був деактивований! Будь ласка оновіть WordPress та спробуйте ще раз."
 
-#: related-posts-plugin.php:109
+#: related-posts-plugin.php:167
 msgid "Back to the WordPress"
 msgstr "Повернутися до WordPress на"
 
-#: related-posts-plugin.php:109
+#: related-posts-plugin.php:167
 msgid "Plugins page"
 msgstr "Сторінку плагинів"
 
-#: related-posts-plugin.php:157
-#: related-posts-plugin.php:169
+#: related-posts-plugin.php:191
+#: related-posts-plugin.php:203
+#: related-posts-plugin.php:338
 msgid "Settings"
 msgstr "Установки"
 
-#: related-posts-plugin.php:170
+#: related-posts-plugin.php:204
+#: related-posts-plugin.php:339
 msgid "FAQ"
 msgstr "Часті питання"
 
-#: related-posts-plugin.php:171
+#: related-posts-plugin.php:205
 msgid "Support"
 msgstr "Підтримка"
 
-#: related-posts-plugin.php:188
+#: related-posts-plugin.php:222
 msgid "Check \"Key\" if you want to display this post with Related Posts Plugin sorted by Meta Key:"
 msgstr "Оберіть 'Ключ', якщо ви бажаєте показувати цей пост за допомогою Плагіну Related Posts, відсортованих за Мета Ключем:"
 
-#: related-posts-plugin.php:190
+#: related-posts-plugin.php:224
 msgid "Key"
 msgstr "Ключ"
 
-#: related-posts-plugin.php:191
+#: related-posts-plugin.php:225
 msgid "None"
 msgstr "Нічого"
 
-#: related-posts-plugin.php:234
+#: related-posts-plugin.php:268
 msgid "A widget that displays related posts depending on your choice of sorting criteria"
 msgstr "Віджет, який відображає схожі записи в залежності від вашого критерію сортування"
 
-#: related-posts-plugin.php:264
+#: related-posts-plugin.php:298
 msgid "Title:"
 msgstr "Назва:"
 
-#: related-posts-plugin.php:283
+#: related-posts-plugin.php:317
 msgid "Settings saved."
 msgstr "Установки збережені."
 
-#: related-posts-plugin.php:294
+#: related-posts-plugin.php:330
 msgid "Wrong type of displayed posts, please use number"
 msgstr "Неправильний тип кількості записів, що виводяться, будь ласка, використовуйте числа"
 
-#: related-posts-plugin.php:302
+#: related-posts-plugin.php:342
 msgid "Notice:"
 msgstr "Нагадування:"
 
-#: related-posts-plugin.php:302
+#: related-posts-plugin.php:342
 msgid "The plugin's settings have been changed. In order to save them please don't forget to click the 'Save Changes' button."
 msgstr "Налаштування плагіну було змінено. Для того, щоб зберегти ці зміни, не забудьте нажати кнопку \"Зберегти зміни\"."
 
-#: related-posts-plugin.php:306
+#: related-posts-plugin.php:346
 msgid "If you would like to display related posts with widget, you must add widget \"Releted Posts Plugin\" in the tab Widgets"
 msgstr "Якщо ви бажаєте відображати схожі записи за допомогою віджету, ви маєте додати віджет \"Плагін Related Posts\" у вкладці Віджети"
 
-#: related-posts-plugin.php:307
+#: related-posts-plugin.php:347
 msgid "If you would like to display related posts on the end of your post, just copy and put this shortcode onto your post or page: [bws_related_posts]"
 msgstr "Якщо ви бажаєте відображати схожі записи у конці вашого запису, просто скопіюйте та вставте цей шорткод у ваш запис або на вашу сторінку: [bws_related_posts]"
 
-#: related-posts-plugin.php:312
+#: related-posts-plugin.php:351
 msgid "Heading the list of related posts:"
 msgstr "Заголовок списку схожих записів:"
 
-#: related-posts-plugin.php:320
+#: related-posts-plugin.php:359
 msgid "How many posts to display:"
 msgstr "Скільки записів відображати:"
 
-#: related-posts-plugin.php:328
+#: related-posts-plugin.php:367
 msgid "Message if do not have related posts:"
 msgstr "Повідомлення у випадку, якщо схожих записів немає:"
 
-#: related-posts-plugin.php:336
+#: related-posts-plugin.php:375
 msgid "Select an option on which will be searched for related words in the posts:"
 msgstr "Оберіть опцію, за якою буде робитися пошук схожих слів у записах:"
 
-#: related-posts-plugin.php:341
+#: related-posts-plugin.php:380
 msgid "Category"
 msgstr "Категорія"
 
-#: related-posts-plugin.php:345
+#: related-posts-plugin.php:384
 msgid "Tags"
 msgstr "Теги"
 
-#: related-posts-plugin.php:349
+#: related-posts-plugin.php:388
 msgid "Title"
 msgstr "Заголовок"
 
-#: related-posts-plugin.php:353
+#: related-posts-plugin.php:392
 msgid "Meta Key"
 msgstr "Мета Ключ"
 
-#: related-posts-plugin.php:356
+#: related-posts-plugin.php:395
 msgid "(If you want to display related posts by meta key you should first check the \"Key\" in meta box \"Related post plugin\" in the post that you want to display)"
 msgstr "(Якщо Ви бажаєте відображати схожі записи за мета ключем, вам треба спочатку обрати \"Ключ\" у метабоксі \"Плагін Related Posts\" на сторінці записів, які ви бажаєте відображати)"
 
-#: related-posts-plugin.php:362
+#: related-posts-plugin.php:401
 msgid "Show Related Posts Widget not only in the post (category/tag/index/home page)"
 msgstr "Відображати віджет Related Posts не тільки у постах (категоріях/тегах/індексній/домашній сторінці)"
 
-#: related-posts-plugin.php:368
+#: related-posts-plugin.php:407
 msgid "(By default related posts will be displayed for the first post in the list of posts.)"
 msgstr "(За замовчуванням схожі пости будуть відображені для першого поста у списку постів)"
 
-#: related-posts-plugin.php:375
+#: related-posts-plugin.php:412
+msgid "Show posts thumbnails"
+msgstr ""
+
+#: related-posts-plugin.php:424
 msgid "Save Changes"
 msgstr "Зберегти установки"
 
-#: related-posts-plugin.php:382
+#: related-posts-plugin.php:430
 msgid "If you enjoy our plugin, please give it 5 stars on WordPress"
 msgstr "Якщо вам сподобався наш плагін, будь ласка, оцініть його у 5 зірочок на WordPress"
 
-#: related-posts-plugin.php:383
+#: related-posts-plugin.php:431
 msgid "Rate the plugin"
 msgstr "Оцінити плагін"
 
-#: related-posts-plugin.php:386
+#: related-posts-plugin.php:434
 msgid "If there is something wrong about it, please contact us"
 msgstr "Якщо у вас виникли питання, будь ласка, зверніться до нас"
 
+#~ msgid "<h2>Related Posts Plugin</h2>"
+#~ msgstr "<h2>Плагін Related Posts</h2>"

programming_language: CoffeeScript
filename: readme.txt
change_type: ModificationType.MODIFY
diff: @@ -3,8 +3,8 @@ Contributors: bestwebsoft
 Donate link: https://www.2checkout.com/checkout/purchase?sid=1430388&quantity=1&product_id=94
 Tags:  add meta keys for posts, category, display related posts, meta key, plugin, posts, related, releited posts, related category posts, related posts, related posts plugin, related tag posts, related title posts, related words in posts, related posts widget, ralavant, relevant, relevent, relevant plugin, similar words in posts, shortcode, tag, title, widget
 Requires at least: 3.0
-Tested up to: 3.9.1
-Stable tag: 1.0.7
+Tested up to: 3.9.2
+Stable tag: 1.0.8
 License: GPLv2 or later
 License URI: http://www.gnu.org/licenses/gpl-2.0.html
 
@@ -12,7 +12,7 @@ This plugin allows you to display related posts with similar words in category,
 
 == Description ==
 
-Related Posts Plugin allows you to display related posts with similar words in category, tags, title or by adding special meta key for posts, and display list of the titles of these posts by the widget or by the shortcode.
+Related Posts Plugin allows to display a list of post titles by the widget or by the shortcode. It displays related posts with similar words in category, tags, title or by adding special meta key for posts. Related Posts Plugin is simple to use and to customize - this is what you are looking for.
 
 http://www.youtube.com/watch?v=WfTT6xSgrKI
 
@@ -110,13 +110,17 @@ Please make sure that the problem hasn't been discussed yet on our forum (<a hre
 
 == Changelog ==
 
+= V1.0.8 - 07.08.2014 =
+* Bugfix : Security Exploit was fixed.
+* NEW : Ability to show posts thumbnails.
+
 = V1.0.7 - 20.05.2014 =
 * Update : We updated all functionality for wordpress 3.9.1.
 * NEW : The Ukrainian language file is added to the plugin.
 
 = V1.0.6 - 10.04.2014 =
 * Update : BWS plugins section is updated.
-* Budfix : Plugin optimization is done.
+* Bugfix : Plugin optimization is done.
 
 = V1.0.5 - 21.02.2014 =
 * Update : Screenshots are updated.
@@ -147,6 +151,9 @@ Please make sure that the problem hasn't been discussed yet on our forum (<a hre
 
 == Upgrade Notice ==
 
+= V1.0.8 =
+Security Exploit was fixed. Ability to show posts thumbnails.
+
 = V1.0.7 =
 We updated all functionality for wordpress 3.9.1. The Ukrainian language file is added to the plugin.
 

programming_language: Markdown
filename: related-posts-plugin.php
change_type: ModificationType.MODIFY
diff: @@ -4,7 +4,7 @@ Plugin Name: Relevant - Related Posts Plugin
 Plugin URI: http://bestwebsoft.com/plugin/
 Description: Related Posts Plugin intended to display related posts by category, by tag, by title or by meta key. The result can be displayed as a widget and as a shortocode.
 Author: BestWebSoft
-Version: 1.0.7
+Version: 1.0.8
 Author URI: http://bestwebsoft.com/
 License: GPLv2 or later
 */
@@ -111,12 +111,13 @@ if ( ! function_exists( 'rltdpstsplgn_set_options' ) ) {
 		*/
 		$rltdpstsplgn_options = array();
 		$rltdpstsplgn_options_defaults	=	array(
-			'plugin_option_version'	=> $rltdpstsplgn_plugin_info["Version"],
-			'criteria'		=>	'category',
-			'number_post'	=>	'5',
-			'head'			=>	__( '<h2>Related Posts Plugin</h2>', 'related_posts_plugin' ),
-			'no_posts'		=>	__( '<p>No related posts found...</p>', 'related_posts_plugin' ),
-			'index_show'	=>	0
+			'plugin_option_version'	=>	$rltdpstsplgn_plugin_info["Version"],
+			'criteria'				=>	'category',
+			'number_post'			=>	'5',
+			'head'					=>	__( 'Related Posts Plugin', 'related_posts_plugin' ),
+			'no_posts'				=>	__( 'No related posts found...', 'related_posts_plugin' ),
+			'index_show'			=>	0,
+			'show_thumbnail'		=>	0
 		);
 
 		if ( 1 == $wpmu ) {
@@ -247,7 +248,7 @@ if ( ! function_exists( 'rltdpstsplgn_output' ) ) {
 		$rltdpstsplgn_options = get_option( 'rltdpstsplgn_options' );
 		ob_start();
 		if ( ! is_home() ) {
-			echo $rltdpstsplgn_options['head'];
+			echo '<h2>' . strip_tags( $rltdpstsplgn_options['head'] ) . '</h2>';
 			rltdpstsplgn_loop();
 		}
 		$rltdpstsplgn_output_string = ob_get_contents();
@@ -317,12 +318,12 @@ if ( ! function_exists( 'rltdpstsplgn_settings_page' ) ) {
 		/* Save data for settings page */
 		if ( isset( $_REQUEST['rltdpstsplgn_form_submit'] ) && check_admin_referer( plugin_basename( __FILE__ ), 'rltdpstsplgn_nonce_name' ) ) {
 			/* Save checked radio and number of posts */
-			$rltdpstsplgn_options = $_POST['rltdpstsplgn_options'];
-			//$rltdpstsplgn_options['plugin_option_version']	= $rltdpstsplgn_plugin_info["Version"];
+			foreach ( $_POST['rltdpstsplgn_options'] as $key => $value ) {
+				$rltdpstsplgn_options[ $key ] = stripslashes( esc_html( $_POST['rltdpstsplgn_options'][ $key ] ) );
+			}
 			if ( isset( $rltdpstsplgn_options ) && ! empty( $rltdpstsplgn_options['number_post'] ) && preg_match( '|^[\d]*$|', $rltdpstsplgn_options['number_post'] ) ) {
-				if ( ! isset( $_POST['rltdpstsplgn_options']['index_show'] ) ) {
-					$rltdpstsplgn_options['index_show'] = 0;
-				}
+				$rltdpstsplgn_options['index_show'] = isset( $_POST['rltdpstsplgn_options']['index_show'] ) ? 1 : 0;
+				$rltdpstsplgn_options['show_thumbnail'] = isset( $_POST['rltdpstsplgn_options']['show_thumbnail'] ) ? 1 : 0;
 				$rltdpstsplgn_options['plugin_option_version'] = $rltdpstsplgn_plugin_info["Version"];
 				update_option( 'rltdpstsplgn_options', $rltdpstsplgn_options );
 			} else {
@@ -346,33 +347,25 @@ if ( ! function_exists( 'rltdpstsplgn_settings_page' ) ) {
 					<p><?php _e( 'If you would like to display related posts on the end of your post, just copy and put this shortcode onto your post or page: [bws_related_posts]', 'related_posts_plugin' ); ?></p>
 					<table id="rltdpstsplgn_sets">
 						<tr>
-							<th>
-								<label><?php _e( 'Heading the list of related posts:', 'related_posts_plugin' ); ?>&nbsp;</label>
-							</th>
+							<th><?php _e( 'Heading the list of related posts:', 'related_posts_plugin' ); ?></th>
 							<td>
-								<input class="rltdpstsplgn_text" type="text" name="rltdpstsplgn_options[head]" value="<?php echo $rltdpstsplgn_options['head'] ?>" />
+								<input class="rltdpstsplgn_text" type="text" name="rltdpstsplgn_options[head]" value="<?php echo strip_tags( $rltdpstsplgn_options['head'] ); ?>" />
 							</td>
 						</tr>
 						<tr>
-							<th>
-								<label><?php _e( 'How many posts to displa y:', 'related_posts_plugin' ); ?>&nbsp;</label>
-							</th>
+							<th><?php _e( 'How many posts to display:', 'related_posts_plugin' ); ?></th>
 							<td>
-								<input id="rltdpstsplgn_number" type="number" name="rltdpstsplgn_options[number_post]" value="<?php echo $rltdpstsplgn_options['number_post'] ?>"/>
+								<input id="rltdpstsplgn_number" type="number" name="rltdpstsplgn_options[number_post]" value="<?php echo $rltdpstsplgn_options['number_post']; ?>" min="1" />
 							</td>
 						</tr>
 						<tr>
-							<th>
-								<label><?php _e( 'Message if do not have related posts:', 'related_posts_plugin' ); ?></label>
-							</th>
+							<th><?php _e( 'Message if do not have related posts:', 'related_posts_plugin' ); ?></th>
 							<td>
-								<input class="rltdpstsplgn_text" type="text" name="rltdpstsplgn_options[no_posts]" value="<?php echo $rltdpstsplgn_options['no_posts'] ?>" />
+								<input class="rltdpstsplgn_text" type="text" name="rltdpstsplgn_options[no_posts]" value="<?php echo strip_tags( $rltdpstsplgn_options['no_posts'] ); ?>" />
 							</td>
 						</tr>
 						<tr class="rltdpstsplgn_search_block">
-							<th>
-								<?php _e( 'Select an option on which will be searched for related words in the posts:', 'related_posts_plugin' ); ?>
-							</th>
+							<th><?php _e( 'Select an option on which will be searched for related words in the posts:', 'related_posts_plugin' ); ?></th>
 							<td class="rltdpstsplgn_options">
 								<label>
 									<input type="radio" name="rltdpstsplgn_options[criteria]" value="category"<?php checked( $rltdpstsplgn_options['criteria'], 'category' ); ?> />
@@ -396,9 +389,7 @@ if ( ! function_exists( 'rltdpstsplgn_settings_page' ) ) {
 							</td>
 						</tr>
 						<tr>
-							<th>
-								<?php _e( 'Show Related Posts Widget not only in the post (category/tag/index/home page)', 'related_posts_plugin' ); ?>
-							</th>
+							<th><?php _e( 'Show Related Posts Widget not only in the post (category/tag/index/home page)', 'related_posts_plugin' ); ?></th>
 							<td class="rltdpstsplgn_checkbox">
 								<label>
 									<input class="rltdpstsplgn_text" type="checkbox" name="rltdpstsplgn_options[index_show]" value="1" <?php checked( $rltdpstsplgn_options['index_show'], 1 ); ?> />
@@ -406,6 +397,14 @@ if ( ! function_exists( 'rltdpstsplgn_settings_page' ) ) {
 								<span><?php _e( '(By default related posts will be displayed for the first post in the list of posts.)', 'related_posts_plugin' ) ?></span>
 							</td>
 						</tr>
+						<tr>
+							<th><?php _e( 'Show posts thumbnails', 'related_posts_plugin' ); ?></th>
+							<td>
+								<label>
+									<input class="rltdpstsplgn_text" type="checkbox" name="rltdpstsplgn_options[show_thumbnail]" value="1" <?php checked( $rltdpstsplgn_options['show_thumbnail'], 1 ); ?> />
+								</label>
+							</td>
+						</tr>
 					</table>
 				</div>
 				<input type="hidden" name="rltdpstsplgn_form_submit" value="submit" />
@@ -502,18 +501,19 @@ if ( ! function_exists( 'rltdpstsplgn_loop' ) ) {
 			if ( $rltdpstsplgn_query->have_posts() ) {
 				while ( $rltdpstsplgn_query->have_posts() ) {
 					$rltdpstsplgn_query->the_post();
-					echo '<div class="rltdpstsplgn_content">';
-					echo '<h3><a href="' .  get_permalink( get_the_ID() ) . '">';
-					the_title();
-					echo '</a></h3>';
+					echo '<div class="rltdpstsplgn_content">';					
+					echo '<a href="' .  get_permalink( get_the_ID() ) . '"><h3>' . get_the_title() . '</h3>';
+					if ( 1 == $rltdpstsplgn_options['show_thumbnail'] && has_post_thumbnail( get_the_ID() ) )
+						echo get_the_post_thumbnail( get_the_ID(), 'thumbnail' );
+					echo '</a>';
 					echo '</div>';
 				}
 			wp_reset_query();
 			} else {
-				echo $rltdpstsplgn_options['no_posts'];
+				echo '<p>' . strip_tags( $rltdpstsplgn_options['no_posts'] ) . '</p>';
 			}
 		} else {
-			echo $rltdpstsplgn_options['no_posts'];
+			echo '<p>' . strip_tags( $rltdpstsplgn_options['no_posts'] ) . '</p>';
 		}
 	}
 } /* End of the loop */

programming_language: PHP