Content Egg - Version 2.0.1

Version Description

  • New: Related Keywords module.
  • New: RSS Fetcher module.
  • New: Post Types option.
  • New: Filter bots option.
  • New: Amazon module: lowestNewPrice & lowestUsedPrice.
  • Improvement: Module templates.
  • Fix: Update prices for products on single page.
  • Fix: Amazon last update date display.
  • Removed: Amazon customer reviews parser has become unstable and is no longer available.
Download this release

Release Info

Developer keywordrush
Plugin Icon 128x128 Content Egg
Version 2.0.1
Comparing to
See all releases

Code changes from version 1.9.0 to 2.0.1

Files changed (39) hide show
  1. application/ModuleUpdater.php +20 -9
  2. application/ModuleViewer.php +1 -1
  3. application/Plugin.php +1 -1
  4. application/admin/EggMetabox.php +1 -1
  5. application/admin/GeneralConfig.php +20 -0
  6. application/admin/views/_promo_box.php +1 -0
  7. application/admin/views/autoblog_edit.php +1 -1
  8. application/components/Config.php +44 -10
  9. application/helpers/TemplateHelper.php +23 -6
  10. application/libs/RestClient.php +1 -1
  11. application/libs/amazon/AmazonProduct.php +0 -22
  12. application/libs/bing/BingSearch.php +143 -0
  13. application/libs/rss/RssParser.php +57 -0
  14. application/modules/Amazon/AmazonConfig.php +14 -6
  15. application/modules/Amazon/AmazonModule.php +82 -46
  16. application/modules/Amazon/ExtraDataAmazon.php +8 -0
  17. application/modules/Amazon/templates/data_compare.php +20 -8
  18. application/modules/Amazon/templates/data_grid.php +6 -1
  19. application/modules/Amazon/templates/data_item.php +20 -10
  20. application/modules/Amazon/templates/data_list.php +5 -0
  21. application/modules/GoogleImages/GoogleImagesConfig.php +1 -1
  22. application/modules/RelatedKeywords/RelatedKeywordsConfig.php +72 -0
  23. application/modules/RelatedKeywords/RelatedKeywordsModule.php +87 -0
  24. application/modules/RelatedKeywords/index.php +1 -0
  25. application/modules/RelatedKeywords/templates/data_simple.php +18 -0
  26. application/modules/RssFetcher/ExtraDataRssFetcher.php +18 -0
  27. application/modules/RssFetcher/RssFetcherConfig.php +82 -0
  28. application/modules/RssFetcher/RssFetcherModule.php +160 -0
  29. application/modules/RssFetcher/index.php +1 -0
  30. application/modules/RssFetcher/templates/data_simple.php +24 -0
  31. application/vendor/CrawlerDetect.php +538 -0
  32. content-egg.php +1 -1
  33. languages/content-egg-en_US.mo +0 -0
  34. languages/content-egg-en_US.po +223 -94
  35. languages/content-egg.pot +167 -82
  36. languages/tpl/content-egg-tpl-RU.mo +0 -0
  37. languages/tpl/content-egg-tpl-RU.po +102 -44
  38. languages/tpl/content-egg-tpl.pot +98 -35
  39. readme.txt +15 -4
application/ModuleUpdater.php CHANGED
@@ -4,7 +4,7 @@ namespace ContentEgg\application;
4
 
5
  use ContentEgg\application\components\ModuleManager;
6
  use ContentEgg\application\components\ContentManager;
7
- use ContentEgg\application\admin\EggMetabox;
8
 
9
  /**
10
  * ModuleUpdater class file
@@ -32,6 +32,18 @@ class ModuleUpdater {
32
 
33
  public function init()
34
  {
 
 
 
 
 
 
 
 
 
 
 
 
35
  // priority = 10 because ModuleViewer added with a priority of 12
36
  // & do_shortcode() is registered as a default filter on 'the_content' with a priority of 11.
37
  \add_filter('the_content', array($this, 'update'), 10);
@@ -39,7 +51,7 @@ class ModuleUpdater {
39
 
40
  public function update($content)
41
  {
42
- if (!is_single())
43
  return $content;
44
 
45
  $this->updateByKeyword();
@@ -65,7 +77,7 @@ class ModuleUpdater {
65
  continue;
66
 
67
  $last_update = (int) \get_post_meta($post->ID, ContentManager::META_PREFIX_LAST_BYKEYWORD_UPDATE . $module->getId(), true);
68
-
69
  if ($last_update && time() - $last_update < $ttl)
70
  continue;
71
 
@@ -89,7 +101,7 @@ class ModuleUpdater {
89
  ContentManager::saveData($data, $module->getId(), $post->ID);
90
  }
91
  }
92
-
93
  private function updateItems()
94
  {
95
  global $post;
@@ -104,14 +116,14 @@ class ModuleUpdater {
104
  continue;
105
 
106
  $last_items_update = (int) \get_post_meta($post->ID, ContentManager::META_PREFIX_LAST_ITEMS_UPDATE . $module->getId(), true);
107
-
108
  if (!$last_items_update || time() - $last_items_update < $ttl_items)
109
  continue;
110
-
111
  $items = \get_post_meta($post->ID, ContentManager::META_PREFIX_DATA . $module->getId(), true);
112
  if (!$items)
113
  continue;
114
-
115
  try
116
  {
117
  $updated_data = $module->doRequestItems($items);
@@ -124,10 +136,9 @@ class ModuleUpdater {
124
 
125
  // save & update time
126
  ContentManager::saveData($updated_data, $module->getId(), $post->ID);
127
- ContentManager::touchUpdateItemsTime($post->ID, $module->getId());
128
  }
129
  }
130
-
131
 
132
  /**
133
  * Full depth recursive conversion to array
4
 
5
  use ContentEgg\application\components\ModuleManager;
6
  use ContentEgg\application\components\ContentManager;
7
+ use ContentEgg\application\admin\GeneralConfig;
8
 
9
  /**
10
  * ModuleUpdater class file
32
 
33
  public function init()
34
  {
35
+ require_once \ContentEgg\PLUGIN_PATH . 'application/vendor/CrawlerDetect.php';
36
+ if (GeneralConfig::getInstance()->option('filter_bots'))
37
+ {
38
+ $CrawlerDetect = new \Jaybizzle\CrawlerDetect\CrawlerDetect();
39
+ // Check the user agent of the current 'visitor'
40
+ if ($CrawlerDetect->isCrawler())
41
+ {
42
+ // true if crawler user agent detected
43
+ return;
44
+ }
45
+ }
46
+
47
  // priority = 10 because ModuleViewer added with a priority of 12
48
  // & do_shortcode() is registered as a default filter on 'the_content' with a priority of 11.
49
  \add_filter('the_content', array($this, 'update'), 10);
51
 
52
  public function update($content)
53
  {
54
+ if (!is_single() && !is_page())
55
  return $content;
56
 
57
  $this->updateByKeyword();
77
  continue;
78
 
79
  $last_update = (int) \get_post_meta($post->ID, ContentManager::META_PREFIX_LAST_BYKEYWORD_UPDATE . $module->getId(), true);
80
+
81
  if ($last_update && time() - $last_update < $ttl)
82
  continue;
83
 
101
  ContentManager::saveData($data, $module->getId(), $post->ID);
102
  }
103
  }
104
+
105
  private function updateItems()
106
  {
107
  global $post;
116
  continue;
117
 
118
  $last_items_update = (int) \get_post_meta($post->ID, ContentManager::META_PREFIX_LAST_ITEMS_UPDATE . $module->getId(), true);
119
+
120
  if (!$last_items_update || time() - $last_items_update < $ttl_items)
121
  continue;
122
+
123
  $items = \get_post_meta($post->ID, ContentManager::META_PREFIX_DATA . $module->getId(), true);
124
  if (!$items)
125
  continue;
126
+
127
  try
128
  {
129
  $updated_data = $module->doRequestItems($items);
136
 
137
  // save & update time
138
  ContentManager::saveData($updated_data, $module->getId(), $post->ID);
139
+ ContentManager::touchUpdateItemsTime($post->ID, $module->getId());
140
  }
141
  }
 
142
 
143
  /**
144
  * Full depth recursive conversion to array
application/ModuleViewer.php CHANGED
@@ -43,7 +43,7 @@ class ModuleViewer {
43
  {
44
  global $post;
45
  /*
46
- if (!is_single())
47
  return $content;
48
  *
49
  */
43
  {
44
  global $post;
45
  /*
46
+ if (!is_single() && !is_page)
47
  return $content;
48
  *
49
  */
application/Plugin.php CHANGED
@@ -13,7 +13,7 @@ use ContentEgg\application\admin\GeneralConfig;
13
  */
14
  class Plugin {
15
 
16
- const version = '1.9.0';
17
  const db_version = 9;
18
  const wp_requires = '4.2.2';
19
  const slug = 'content-egg';
13
  */
14
  class Plugin {
15
 
16
+ const version = '2.0.1';
17
  const db_version = 9;
18
  const wp_requires = '4.2.2';
19
  const slug = 'content-egg';
application/admin/EggMetabox.php CHANGED
@@ -36,7 +36,7 @@ class EggMetabox {
36
 
37
  public function addMetabox($post_type)
38
  {
39
- if (!in_array($post_type, array('post', 'page')))
40
  return;
41
 
42
  if (!ModuleManager::getInstance()->getModules(true))
36
 
37
  public function addMetabox($post_type)
38
  {
39
+ if (!in_array($post_type, GeneralConfig::getInstance()->option('post_types')))
40
  return;
41
 
42
  if (!ModuleManager::getInstance()->getModules(true))
application/admin/GeneralConfig.php CHANGED
@@ -81,6 +81,9 @@ class GeneralConfig extends Config {
81
 
82
  protected function options()
83
  {
 
 
 
84
  return array(
85
  'lang' => array(
86
  'title' => __('Язык сайта', 'content-egg'),
@@ -90,6 +93,23 @@ class GeneralConfig extends Config {
90
  'default' => self::getDefaultLang(),
91
  'section' => 'default',
92
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
93
  );
94
  }
95
 
81
 
82
  protected function options()
83
  {
84
+ $post_types = get_post_types( array( 'public' => true ), 'names' );
85
+ if (isset($post_types['attachment']))
86
+ unset($post_types['attachment']);
87
  return array(
88
  'lang' => array(
89
  'title' => __('Язык сайта', 'content-egg'),
93
  'default' => self::getDefaultLang(),
94
  'section' => 'default',
95
  ),
96
+ 'post_types' => array(
97
+ 'title' => 'Post Types',
98
+ 'description' => __('К каким типам постов добавить Content Egg metabox?', 'content-egg'),
99
+ 'checkbox_options' => $post_types,
100
+ 'callback' => array($this, 'render_checkbox_list'),
101
+ 'default' => array('post', 'page'),
102
+ 'section' => 'default',
103
+ ),
104
+ 'filter_bots' => array(
105
+ 'title' => __('Фильтровать ботов', 'content-egg'),
106
+ 'description' => __('Боты не могут запускать парсеры.', 'content-egg') .
107
+ '<p class="description">' . __('Обновление цены, а также обновление выдачи по ключевому слову происходит при открытии страницы поста. Если мы определим по useragent, что на страницу зашел один из известных ботов, никакие парсеры запускаться не будут.', 'content-egg') . '</p>',
108
+ 'checkbox_options' => $post_types,
109
+ 'callback' => array($this, 'render_checkbox'),
110
+ 'default' => true,
111
+ 'section' => 'default',
112
+ ),
113
  );
114
  }
115
 
application/admin/views/_promo_box.php CHANGED
@@ -19,6 +19,7 @@
19
  <li>Affilinet Products</li>
20
  <li>Linkshare</li>
21
  <li>Zanox</li>
 
22
  <li>...</li>
23
  </ul>
24
 
19
  <li>Affilinet Products</li>
20
  <li>Linkshare</li>
21
  <li>Zanox</li>
22
+ <li>ClickBank</li>
23
  <li>...</li>
24
  </ul>
25
 
application/admin/views/autoblog_edit.php CHANGED
@@ -30,7 +30,7 @@
30
  <div id="post-body">
31
  <div id="post-body-content">
32
  <?php do_meta_boxes('person', 'normal', $item); ?>
33
- <input type="submit" value="Сохранить" id="autoblog_submit" class="button-primary" name="submit">
34
  </div>
35
  </div>
36
  </div>
30
  <div id="post-body">
31
  <div id="post-body-content">
32
  <?php do_meta_boxes('person', 'normal', $item); ?>
33
+ <input type="submit" value="<?php _e('Сохранить', 'content-egg');?>" id="autoblog_submit" class="button-primary" name="submit">
34
  </div>
35
  </div>
36
  </div>
application/components/Config.php CHANGED
@@ -43,11 +43,11 @@ abstract class Config {
43
  public function adminInit()
44
  {
45
  global $pagenow;
46
- add_action('admin_menu', array($this, 'add_admin_menu'));
47
 
48
  if ($pagenow == 'options.php' || (!empty($_GET['page']) && $_GET['page'] == $this->page_slug))
49
  {
50
- add_action('admin_init', array($this, 'register_settings'));
51
  }
52
  }
53
 
@@ -93,12 +93,15 @@ abstract class Config {
93
 
94
  public function register_settings()
95
  {
96
- register_setting(
97
  $this->page_slug, // group, used for settings_fields()
98
  $this->option_name, // option name, used as key in database
99
  array($this, 'validate') // validation callback
100
  );
101
 
 
 
 
102
  foreach ($this->options as $id => $field)
103
  {
104
  $params = array(
@@ -111,12 +114,14 @@ abstract class Config {
111
  );
112
  if (!empty($field['dropdown_options']))
113
  $params['dropdown_options'] = $field['dropdown_options'];
 
 
114
 
115
  if (!empty($field['render_after']))
116
  $params['render_after'] = $field['render_after'];
117
  if (empty($field['section']))
118
  $field['section'] = 'default';
119
- add_settings_field(
120
  $id, $field['title'], $field['callback'], $this->page_slug, // menu slug
121
  $field['section'], $params
122
  );
@@ -179,6 +184,34 @@ abstract class Config {
179
  }
180
  }
181
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
182
  public function option_exists($option)
183
  {
184
  if (array_key_exists($option, $this->options))
@@ -197,7 +230,8 @@ abstract class Config {
197
  if (!$this->option_exists($option))
198
  continue;
199
 
200
- $value = trim($value);
 
201
 
202
  if ($validator = $this->get_validator($option))
203
  {
@@ -235,12 +269,12 @@ abstract class Config {
235
  {
236
  add_settings_error($option, $option, $v['message']);
237
  $value = $this->get_current($option);
238
-
239
  if (!empty($v['when']))
240
  {
241
  $out[$v['when']] = $this->get_current($v['when']);
242
  }
243
-
244
  break;
245
  }
246
  }
@@ -278,12 +312,12 @@ abstract class Config {
278
  else
279
  return $input[$option];
280
  }
281
-
282
  public function getOptionsList()
283
  {
284
  return array_keys($this->options());
285
  }
286
-
287
  public function getOptionValues()
288
  {
289
  $result = array();
@@ -292,6 +326,6 @@ abstract class Config {
292
  $result[$option_name] = $this->get_current($option_name);
293
  }
294
  return $result;
295
- }
296
 
297
  }
43
  public function adminInit()
44
  {
45
  global $pagenow;
46
+ \add_action('admin_menu', array($this, 'add_admin_menu'));
47
 
48
  if ($pagenow == 'options.php' || (!empty($_GET['page']) && $_GET['page'] == $this->page_slug))
49
  {
50
+ \add_action('admin_init', array($this, 'register_settings'));
51
  }
52
  }
53
 
93
 
94
  public function register_settings()
95
  {
96
+ \register_setting(
97
  $this->page_slug, // group, used for settings_fields()
98
  $this->option_name, // option name, used as key in database
99
  array($this, 'validate') // validation callback
100
  );
101
 
102
+ // reinit options for later plugin binding
103
+ $this->options = $this->options();
104
+
105
  foreach ($this->options as $id => $field)
106
  {
107
  $params = array(
114
  );
115
  if (!empty($field['dropdown_options']))
116
  $params['dropdown_options'] = $field['dropdown_options'];
117
+ if (!empty($field['checkbox_options']))
118
+ $params['checkbox_options'] = $field['checkbox_options'];
119
 
120
  if (!empty($field['render_after']))
121
  $params['render_after'] = $field['render_after'];
122
  if (empty($field['section']))
123
  $field['section'] = 'default';
124
+ \add_settings_field(
125
  $id, $field['title'], $field['callback'], $this->page_slug, // menu slug
126
  $field['section'], $params
127
  );
184
  }
185
  }
186
 
187
+ public function render_checkbox_list($args)
188
+ {
189
+
190
+ echo '<div class="cegg-checkboxgroup">';
191
+ foreach ($args['checkbox_options'] as $value => $name)
192
+ {
193
+ if (in_array($value, $args['value']))
194
+ $checked = ' checked="checked" ';
195
+ else
196
+ $checked = '';
197
+
198
+ echo '<div class="cegg-checkbox">';
199
+ echo '<label for="' . esc_attr($args['label_for'] . '-' . $value) . '">';
200
+ echo '<input type="checkbox" name="' . esc_attr($args['option_name']) . '['
201
+ . esc_attr($args['name']) . '][' . esc_attr($value) . ']" id="'
202
+ . esc_attr($args['label_for'] . '-' . $value), '"'
203
+ . $checked . ' value="' . esc_attr($value) . '" />';
204
+ echo $name;
205
+ echo '</label>';
206
+ echo '</div>';
207
+ }
208
+ echo '</div>';
209
+ if ($args['description'])
210
+ {
211
+ echo '<p class="description">' . $args['description'] . '</p>';
212
+ }
213
+ }
214
+
215
  public function option_exists($option)
216
  {
217
  if (array_key_exists($option, $this->options))
230
  if (!$this->option_exists($option))
231
  continue;
232
 
233
+ if (!is_array($value))
234
+ $value = trim($value);
235
 
236
  if ($validator = $this->get_validator($option))
237
  {
269
  {
270
  add_settings_error($option, $option, $v['message']);
271
  $value = $this->get_current($option);
272
+
273
  if (!empty($v['when']))
274
  {
275
  $out[$v['when']] = $this->get_current($v['when']);
276
  }
277
+
278
  break;
279
  }
280
  }
312
  else
313
  return $input[$option];
314
  }
315
+
316
  public function getOptionsList()
317
  {
318
  return array_keys($this->options());
319
  }
320
+
321
  public function getOptionValues()
322
  {
323
  $result = array();
326
  $result[$option_name] = $this->get_current($option_name);
327
  }
328
  return $result;
329
+ }
330
 
331
  }
application/helpers/TemplateHelper.php CHANGED
@@ -2,6 +2,8 @@
2
 
3
  namespace ContentEgg\application\helpers;
4
 
 
 
5
  /**
6
  * TemplateHelper class file
7
  *
@@ -14,7 +16,7 @@ class TemplateHelper {
14
 
15
  static public function currencyTyping($c)
16
  {
17
- $types = array("RUB" => "руб.", "UAH" => "грн.", "USD" => "$", "CAD" => "C$", "GBP" => "&pound;", "EUR" => "&euro;", "JPY" => "&yen;", "CNY" => "&yen;", "INR" => "Rs.", "AUD" => "AU $", "RUR"=>'руб.');
18
  if (key_exists($c, $types))
19
  return $types[$c];
20
  else
@@ -121,7 +123,7 @@ class TemplateHelper {
121
  }
122
  if (!is_array($field_values))
123
  $field_values = array($field_values);
124
-
125
  if (!$inverse && in_array($value, $field_values))
126
  $results[$key] = $d;
127
  elseif ($inverse && !in_array($value, $field_values))
@@ -129,7 +131,7 @@ class TemplateHelper {
129
  }
130
  return $results;
131
  }
132
-
133
  public static function formatDatetime($datetime, $type = 'mysql', $separator = ' ')
134
  {
135
  if ('mysql' == $type)
@@ -139,13 +141,13 @@ class TemplateHelper {
139
  {
140
  return date_i18n(get_option('date_format'), $datetime) . $separator . date_i18n(get_option('time_format'), $datetime);
141
  }
142
- }
143
-
144
  public static function splitAttributeName($attribute)
145
  {
146
  return trim(preg_replace('/([A-Z])/', ' $1', $attribute));
147
  }
148
-
149
  public static function getAmazonLink(array $itemLinks, $description)
150
  {
151
  foreach ($itemLinks as $link)
@@ -156,4 +158,19 @@ class TemplateHelper {
156
  return false;
157
  }
158
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
159
  }
2
 
3
  namespace ContentEgg\application\helpers;
4
 
5
+ use ContentEgg\application\components\ContentManager;
6
+
7
  /**
8
  * TemplateHelper class file
9
  *
16
 
17
  static public function currencyTyping($c)
18
  {
19
+ $types = array("RUB" => "руб.", "UAH" => "грн.", "USD" => "$", "CAD" => "C$", "GBP" => "&pound;", "EUR" => "&euro;", "JPY" => "&yen;", "CNY" => "&yen;", "INR" => "Rs.", "AUD" => "AU $", "RUR" => 'руб.');
20
  if (key_exists($c, $types))
21
  return $types[$c];
22
  else
123
  }
124
  if (!is_array($field_values))
125
  $field_values = array($field_values);
126
+
127
  if (!$inverse && in_array($value, $field_values))
128
  $results[$key] = $d;
129
  elseif ($inverse && !in_array($value, $field_values))
131
  }
132
  return $results;
133
  }
134
+
135
  public static function formatDatetime($datetime, $type = 'mysql', $separator = ' ')
136
  {
137
  if ('mysql' == $type)
141
  {
142
  return date_i18n(get_option('date_format'), $datetime) . $separator . date_i18n(get_option('time_format'), $datetime);
143
  }
144
+ }
145
+
146
  public static function splitAttributeName($attribute)
147
  {
148
  return trim(preg_replace('/([A-Z])/', ' $1', $attribute));
149
  }
150
+
151
  public static function getAmazonLink(array $itemLinks, $description)
152
  {
153
  foreach ($itemLinks as $link)
158
  return false;
159
  }
160
 
161
+ public static function getLastUpdate($module_id)
162
+ {
163
+ global $post;
164
+ return \get_post_meta($post->ID, ContentManager::META_PREFIX_LAST_ITEMS_UPDATE . $module_id, true);
165
+ }
166
+
167
+ public static function getLastUpdateFormatted($module_id, $timezone = true)
168
+ {
169
+ $format = get_option('date_format') . ' ' . get_option('time_format');
170
+ if ($timezone)
171
+ $format .= ' T';
172
+ // local time
173
+ return get_date_from_gmt(date('Y-m-d H:i:s', self::getLastUpdate($module_id)), $format);
174
+ }
175
+
176
  }
application/libs/RestClient.php CHANGED
@@ -194,7 +194,7 @@ class RestClient {
194
 
195
  $response_code = (int) \wp_remote_retrieve_response_code($response);
196
 
197
- if ($response_code != 200)
198
  {
199
  $response_message = \wp_remote_retrieve_response_message($response);
200
  $error_mess = "HTTP request status fails: " . $response_code . " - " . $response_message . '.';
194
 
195
  $response_code = (int) \wp_remote_retrieve_response_code($response);
196
 
197
+ if ($response_code != 200 && $response_code != 206)
198
  {
199
  $response_message = \wp_remote_retrieve_response_message($response);
200
  $error_mess = "HTTP request status fails: " . $response_code . " - " . $response_message . '.';
application/libs/amazon/AmazonProduct.php CHANGED
@@ -293,28 +293,6 @@ class AmazonProduct extends RestClient {
293
  return $data;
294
  }
295
 
296
- /**
297
- * Parses error from XML result
298
- *
299
- * @param string $raw_result
300
- * @return string Error message.
301
- */
302
- /*
303
- private function _parseRawError($raw_result)
304
- {
305
-
306
- $data = Helper::unserialize_xml($raw_result);
307
- $error = '';
308
- if (isset($data['Error']['Code']))
309
- $error = $data['Error']['Code'];
310
-
311
- if (isset($data['Error']['Message']))
312
- $error .= ' : ' . $data['Error']['Message'];
313
- return $error;
314
- }
315
- *
316
- */
317
-
318
  /**
319
  * Amazon customer reviews parser
320
  * @param string $url iframe reviews url
293
  return $data;
294
  }
295
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
296
  /**
297
  * Amazon customer reviews parser
298
  * @param string $url iframe reviews url
application/libs/bing/BingSearch.php ADDED
@@ -0,0 +1,143 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace ContentEgg\application\libs\bing;
4
+
5
+ use ContentEgg\application\libs\RestClient;
6
+
7
+ /**
8
+ * BingSearch class file
9
+ *
10
+ * @author keywordrush.com <support@keywordrush.com>
11
+ * @link http://www.keywordrush.com/
12
+ * @copyright Copyright &copy; 2015 keywordrush.com
13
+ *
14
+ * @link: https://msdn.microsoft.com/en-us/library/dd251056.aspx
15
+ * @link: https://onedrive.live.com/view.aspx?resid=9C9479871FBFA822!112&app=Word&authkey=!ANNnJQREB0kDC04
16
+ *
17
+ */
18
+ require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'RestClient.php';
19
+
20
+ class BingSearch extends RestClient {
21
+
22
+ const API_URI_BASE = 'https://api.datamarket.azure.com';
23
+
24
+ private $accountKey = null;
25
+ private $serviceOperation = 'Web';
26
+
27
+ /**
28
+ * @var array Response Format Types
29
+ */
30
+ protected $_responseTypes = array(
31
+ //'xml', //@todo: требуется доработка
32
+ 'json'
33
+ );
34
+
35
+ /**
36
+ * Constructor
37
+ */
38
+ public function __construct($accountKey, $responseType = 'json')
39
+ {
40
+ $this->setAccountKey($accountKey);
41
+ $this->setResponseType($responseType);
42
+ $this->setUri(self::API_URI_BASE);
43
+ }
44
+
45
+ public function setAccountKey($accountKey)
46
+ {
47
+ $this->accountKey = $accountKey;
48
+ }
49
+
50
+ public function getAccountKey()
51
+ {
52
+ return $this->accountKey;
53
+ }
54
+
55
+ public function setServiceOperation($serviceOperation = 'Web')
56
+ {
57
+ //@todo: Composite Service Operation
58
+ if (!in_array($serviceOperation, array('Web', 'Image', 'News', 'RelatedSearch',
59
+ 'SpellingSuggestion', 'Video')))
60
+ throw new \Exception('Wrong Service Operation param.');
61
+ $this->serviceOperation = $serviceOperation;
62
+ }
63
+
64
+ public function getServiceOperation()
65
+ {
66
+ return $this->serviceOperation;
67
+ }
68
+
69
+ public function search($query, $source = 'Web', array $params = array())
70
+ {
71
+ $this->setServiceOperation($source);
72
+
73
+ $_query = array();
74
+ $_query['Query'] = $query;
75
+ // Specifies the format of the OData response. Current options are Atom (for XML) or JSON.
76
+ $_query['$format'] = $this->getResponseType();
77
+ foreach ($params as $key => $param)
78
+ {
79
+ switch ($key)
80
+ {
81
+ case '$top': // Specifies the number of results to return.
82
+ $_query[$key] = ((int) $param > 50) ? 50 : (int) $param;
83
+ break;
84
+ case '$skip': // Specifies the offset requested for the starting point of results returned.
85
+ $_query[$key] = ((int) $param > 1000) ? 1000 : (int) $param;
86
+ break;
87
+
88
+ case 'Market':
89
+ $_query[$key] = $param;
90
+ break;
91
+ case 'Adult':
92
+ $_query[$key] = (!in_array($param, array('Off', 'Moderate', 'Strict'))) ? 'Moderate' : $param;
93
+ break;
94
+ case 'ImageFilters':
95
+ // format: &Image.Filters=Color:Monochrome&Image.Filters=Style:Photo
96
+ $_query[$key] = $param;
97
+ break;
98
+ case 'NewsSortBy': //for News
99
+ case 'NewsCategory': //for News
100
+ case 'WebFileType': //for Web
101
+ $_query[$key] = $param;
102
+ break;
103
+ }
104
+ }
105
+
106
+ $add_url = '';
107
+ /*
108
+ * В новом API не удалось передать массив фильтров
109
+ * Работает только один фильтр
110
+ *
111
+ // fucking microsoft query format for filters
112
+ // ...&Image.Filters=Size:Small&Image.Filters=Color:Monochrome
113
+ if (isset($_query['ImageFilters']) && $_query['ImageFilters'])
114
+ {
115
+ foreach ($_query['ImageFilters'] as $name => $value)
116
+ {
117
+ if (!$add_url)
118
+ $add_url .= '?';
119
+ else
120
+ $add_url .= '&';
121
+ $add_url .= "ImageFilters=" . "'" . $name . ':' . $value . "'";
122
+ }
123
+ unset($_query['ImageFilters']);
124
+ }
125
+ *
126
+ */
127
+
128
+ // Все параметры (кроме начинающихся с $) заключим в одинарные кавычки
129
+ foreach ($_query as $k => $q)
130
+ {
131
+ if (!strstr($k, '$'))
132
+ $_query[$k] = "'" . $q . "'";
133
+ }
134
+
135
+ //$add_url = "?ImageFilters='Style:Photo'&ImageFilters='Size:Small'";
136
+ // Bing API Basic Authorization
137
+ $this->setCustomHeaders(array('Authorization' => 'Basic ' . base64_encode($this->getAccountKey() . ":" . $this->getAccountKey())));
138
+
139
+ $response = $this->restGet('/Bing/Search/' . $this->getServiceOperation() . $add_url, $_query);
140
+ return $this->_decodeResponse($response);
141
+ }
142
+
143
+ }
application/libs/rss/RssParser.php ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace ContentEgg\application\libs\rss;
4
+
5
+ use ContentEgg\application\libs\RestClient;
6
+
7
+ /**
8
+ * RssParser class file
9
+ *
10
+ * @author keywordrush.com <support@keywordrush.com>
11
+ * @link http://www.keywordrush.com/
12
+ * @copyright Copyright &copy; 2015 keywordrush.com
13
+ *
14
+ */
15
+ require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'RestClient.php';
16
+
17
+ class RssParser extends RestClient {
18
+
19
+ /**
20
+ * @var array Response Format Types
21
+ */
22
+ protected $_responseTypes = array(
23
+ 'xml'
24
+ );
25
+
26
+ /**
27
+ * Constructor
28
+ * @param string $responseType
29
+ */
30
+ public function __construct()
31
+ {
32
+ $this->setResponseType('xml');
33
+ }
34
+
35
+ public function search($query, $uri)
36
+ {
37
+ $uri = str_replace('%KEYWORD%', urlencode($query), $uri);
38
+
39
+ $url_parts = @parse_url($uri);
40
+ if (isset($url_parts['scheme']) && isset($url_parts['host']))
41
+ {
42
+ $uri = $url_parts['scheme'] . '://' . $url_parts['host'];
43
+ $this->setUri($uri);
44
+ } else
45
+ throw new \Exception('No valid URI scheme was provided. ');
46
+
47
+ $path = '';
48
+ if (isset($url_parts['path']))
49
+ $path = $url_parts['path'];
50
+ if (isset($url_parts['query']))
51
+ $path .= '?' . $url_parts['query'];
52
+
53
+ $response = $this->restGet($path);
54
+ return $this->_decodeResponse($response);
55
+ }
56
+
57
+ }
application/modules/Amazon/AmazonConfig.php CHANGED
@@ -201,14 +201,15 @@ class AmazonConfig extends AffiliateParserModuleConfig {
201
  'default' => '',
202
  'section' => 'default',
203
  'metaboxInit' => true,
204
- ),
205
  'customer_reviews' => array(
206
- 'title' => __('Парсить отзывы', 'content-egg'),
207
- 'description' => __('Парсить отзывы покупателей по товарам. Это замедляет получение данных.', 'content-egg'),
208
  'callback' => array($this, 'render_checkbox'),
209
  'default' => false,
210
  'section' => 'default',
211
  ),
 
212
  'customer_reviews_iframe' => array(
213
  'title' => __('Отзывы в iframe.', 'content-egg'),
214
  'description' => __('Показывать отзывы покупателей в iframe с amazon (отключение этой опции, возможно, нарушает правила партнерской программы amazon).', 'content-egg'),
@@ -216,20 +217,22 @@ class AmazonConfig extends AffiliateParserModuleConfig {
216
  'default' => true,
217
  'section' => 'default',
218
  ),
 
219
  'truncate_reviews_at' => array(
220
  'title' => __('Обрезать отзывы', 'content-egg'),
221
  'description' => __('Количество символов для одного отзыва. 0 - максимально возможная длина текста.', 'content-egg'),
222
  'callback' => array($this, 'render_input'),
223
- 'default' => 250,
224
  'validator' => array(
225
  'trim',
226
  'absint',
227
  ),
228
  'section' => 'default',
229
  ),
 
230
  'review_products_number' => array(
231
  'title' => __('Товар с отзывами', 'content-egg'),
232
- 'description' => __('Парсить отзывы только для заданного количества товаров.', 'content-egg'),
233
  'callback' => array($this, 'render_input'),
234
  'default' => 1,
235
  'validator' => array(
@@ -238,6 +241,8 @@ class AmazonConfig extends AffiliateParserModuleConfig {
238
  ),
239
  'section' => 'default',
240
  ),
 
 
241
  'editorial_reviews' => array(
242
  'title' => __('Парсить отписание', 'content-egg'),
243
  'description' => __('Парсить описание товаров от продавца.', 'content-egg'),
@@ -270,7 +275,10 @@ class AmazonConfig extends AffiliateParserModuleConfig {
270
  'section' => 'default',
271
  ),
272
  );
273
- return array_merge(parent::options(), $optiosn);
 
 
 
274
  }
275
 
276
  public static function getLocalesList()
201
  'default' => '',
202
  'section' => 'default',
203
  'metaboxInit' => true,
204
+ ),
205
  'customer_reviews' => array(
206
+ 'title' => __('Отзывы покупателей', 'content-egg'),
207
+ 'description' => __('Получить отзывы покупателей. Отзывы будут показаны в iframe. iframe URL валидный 24 часа, используйте функцию автообноления, чтобы держать URL в актуальном состоянии.', 'content-egg'),
208
  'callback' => array($this, 'render_checkbox'),
209
  'default' => false,
210
  'section' => 'default',
211
  ),
212
+ /*
213
  'customer_reviews_iframe' => array(
214
  'title' => __('Отзывы в iframe.', 'content-egg'),
215
  'description' => __('Показывать отзывы покупателей в iframe с amazon (отключение этой опции, возможно, нарушает правила партнерской программы amazon).', 'content-egg'),
217
  'default' => true,
218
  'section' => 'default',
219
  ),
220
+ */
221
  'truncate_reviews_at' => array(
222
  'title' => __('Обрезать отзывы', 'content-egg'),
223
  'description' => __('Количество символов для одного отзыва. 0 - максимально возможная длина текста.', 'content-egg'),
224
  'callback' => array($this, 'render_input'),
225
+ 'default' => 500,
226
  'validator' => array(
227
  'trim',
228
  'absint',
229
  ),
230
  'section' => 'default',
231
  ),
232
+ /*
233
  'review_products_number' => array(
234
  'title' => __('Товар с отзывами', 'content-egg'),
235
+ 'description' => __('Отзывы только для заданного количества товаров.', 'content-egg'),
236
  'callback' => array($this, 'render_input'),
237
  'default' => 1,
238
  'validator' => array(
241
  ),
242
  'section' => 'default',
243
  ),
244
+ *
245
+ */
246
  'editorial_reviews' => array(
247
  'title' => __('Парсить отписание', 'content-egg'),
248
  'description' => __('Парсить описание товаров от продавца.', 'content-egg'),
275
  'section' => 'default',
276
  ),
277
  );
278
+
279
+ $parent = parent::options();
280
+ $parent['ttl_items']['default'] = 86400;
281
+ return array_merge($parent, $optiosn);
282
  }
283
 
284
  public static function getLocalesList()
application/modules/Amazon/AmazonModule.php CHANGED
@@ -123,14 +123,14 @@ class AmazonModule extends AffiliateParserModule {
123
  $options['ResponseGroup'] = 'Offers';
124
 
125
  // update iframe url for customer reviews
126
- if ($this->config('customer_reviews') && $this->config('customer_reviews_iframe'))
 
127
  {
128
  $options['ResponseGroup'] .= ',Reviews';
129
  $options['TruncateReviewsAt'] = $this->config('truncate_reviews_at');
130
  $options['IncludeReviewsSummary'] = true;
131
  }
132
 
133
-
134
  $results = $this->getAmazonClient()->ItemLookup($item_ids, $options);
135
 
136
  if (!isset($results['Items']))
@@ -220,33 +220,44 @@ class AmazonModule extends AffiliateParserModule {
220
  // Offers
221
  self::fillOfferVars($r, $content, $extra);
222
 
223
- // Customer Reviews
224
- if (isset($r['CustomerReviews']) && $key < $this->config('review_products_number'))
225
  {
226
  $extra->customerReviews = new ExtraAmazonCustomerReviews;
227
  ExtraData::fillAttributes($extra->customerReviews, $r['CustomerReviews']);
228
- if ($this->config('customer_reviews') &&
229
- !$this->config('customer_reviews_iframe') &&
230
- $key < $this->config('review_products_number'))
231
- {
232
- $customer_reviews = $this->getAmazonClient()->parseCustomerReviews($r['CustomerReviews']['IFrameURL'], $this->config('locale'));
233
- ExtraData::fillAttributes($extra->customerReviews, $customer_reviews);
234
-
235
- if (isset($customer_reviews['Reviews']) && $customer_reviews['Reviews'])
236
- {
237
- foreach ($customer_reviews['Reviews'] as $review)
238
- {
239
- $customer_review = new ExtraAmazonCustomerReview;
240
- ExtraData::fillAttributes($customer_review, $review);
241
- $extra->customerReviews->reviews[] = $customer_review;
242
- }
243
- }
244
- }
245
-
246
- if ($extra->customerReviews->AverageRating)
247
- $content->rating = round($extra->customerReviews->AverageRating);
248
  }
249
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
250
 
251
  // Editorial Reviews
252
  if (isset($r['EditorialReviews']['EditorialReview']))
@@ -273,7 +284,6 @@ class AmazonModule extends AffiliateParserModule {
273
 
274
  // Заполняем стандартные поля: title, description, url, price
275
  // все остальные данные в extra
276
-
277
  $content->url = $r['DetailPageURL'];
278
 
279
  if (isset($r['ItemAttributes']['Title']))
@@ -340,6 +350,23 @@ class AmazonModule extends AffiliateParserModule {
340
  $extra = json_decode(json_encode($extra), FALSE);
341
  }
342
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
343
  // Offers
344
  if (isset($r['Offers']) &&
345
  isset($r['Offers']['Offer']) &&
@@ -401,53 +428,62 @@ class AmazonModule extends AffiliateParserModule {
401
  }
402
  }
403
 
404
- /**
405
- * Add to shopping cart url
406
- * @link: http://docs.amazonwebservices.com/AWSECommerceService/latest/DG/AddToCartForm.html
407
- * @link: https://affiliate-program.amazon.com/gp/associates/help/t1/a10?ie=UTF8&pf_rd_i=assoc_help_t6_a1&pf_rd_m=ATVPDKIKX0DER&pf_rd_p=&pf_rd_r=&pf_rd_s=assoc-center-1&pf_rd_t=501&ref_=amb_link_177735_1
408
- * @link: https://affiliate-program.amazon.com/gp/associates/help/operating
409
- * @link: https://affiliate-program.amazon.com/gp/associates/help/t2/a11
410
- */
411
- private function getAmazonAddToCartUrl()
412
  {
413
- switch ($this->config('locale'))
414
  {
415
  case 'uk':
416
- return 'http://www.amazon.co.uk/gp/aws/cart/add.html';
417
- break;
418
  case 'de':
419
- return 'http://www.amazon.de/gp/aws/cart/add.html';
420
  break;
421
  case 'fr':
422
- return 'http://www.amazon.fr/gp/aws/cart/add.html';
423
  break;
424
  case 'jp':
425
- return 'http://www.amazon.co.jp/gp/aws/cart/add.html';
426
  break;
427
  case 'cn':
428
- return 'http://www.amazon.cn/gp/aws/cart/add.html';
429
  break;
430
  case 'it':
431
- return 'http://www.amazon.it/gp/aws/cart/add.html';
432
  break;
433
  case 'es':
434
- return 'http://www.amazon.es/gp/aws/cart/add.html';
435
  break;
436
  case 'ca':
437
- return 'http://www.amazon.ca/gp/aws/cart/add.html';
438
  break;
439
  case 'br':
440
- return 'http://www.amazon.br/gp/aws/cart/add.html';
441
  break;
442
  case 'in':
443
- return 'http://www.amazon.in/gp/aws/cart/add.html';
444
  break;
445
  default: //'us'
446
- return 'http://www.amazon.com/gp/aws/cart/add.html';
447
  break;
448
  }
449
  }
450
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
451
  public function renderResults()
452
  {
453
  PluginAdmin::render('_metabox_results', array('module_id' => $this->getId()));
123
  $options['ResponseGroup'] = 'Offers';
124
 
125
  // update iframe url for customer reviews
126
+ //if ($this->config('customer_reviews') && $this->config('customer_reviews_iframe'))
127
+ if ($this->config('customer_reviews'))
128
  {
129
  $options['ResponseGroup'] .= ',Reviews';
130
  $options['TruncateReviewsAt'] = $this->config('truncate_reviews_at');
131
  $options['IncludeReviewsSummary'] = true;
132
  }
133
 
 
134
  $results = $this->getAmazonClient()->ItemLookup($item_ids, $options);
135
 
136
  if (!isset($results['Items']))
220
  // Offers
221
  self::fillOfferVars($r, $content, $extra);
222
 
223
+ if (isset($r['CustomerReviews']))
 
224
  {
225
  $extra->customerReviews = new ExtraAmazonCustomerReviews;
226
  ExtraData::fillAttributes($extra->customerReviews, $r['CustomerReviews']);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
227
  }
228
 
229
+ // Customer Reviews
230
+ /*
231
+ if (isset($r['CustomerReviews']) && $key < $this->config('review_products_number'))
232
+ {
233
+ $extra->customerReviews = new ExtraAmazonCustomerReviews;
234
+ ExtraData::fillAttributes($extra->customerReviews, $r['CustomerReviews']);
235
+ if ($this->config('customer_reviews') &&
236
+ !$this->config('customer_reviews_iframe') &&
237
+ $key < $this->config('review_products_number'))
238
+ {
239
+ //$ruri = $r['CustomerReviews']['IFrameURL'];
240
+ $ruri = $this->getCustomerReviewsUri($extra->ASIN);
241
+ $customer_reviews = $this->getAmazonClient()->parseCustomerReviews($ruri, $this->config('locale'));
242
+ ExtraData::fillAttributes($extra->customerReviews, $customer_reviews);
243
+
244
+ if (isset($customer_reviews['Reviews']) && $customer_reviews['Reviews'])
245
+ {
246
+ foreach ($customer_reviews['Reviews'] as $review)
247
+ {
248
+ $customer_review = new ExtraAmazonCustomerReview;
249
+ ExtraData::fillAttributes($customer_review, $review);
250
+ $extra->customerReviews->reviews[] = $customer_review;
251
+ }
252
+ }
253
+ }
254
+
255
+ if ($extra->customerReviews->AverageRating)
256
+ $content->rating = round($extra->customerReviews->AverageRating);
257
+ }
258
+ *
259
+ */
260
+
261
 
262
  // Editorial Reviews
263
  if (isset($r['EditorialReviews']['EditorialReview']))
284
 
285
  // Заполняем стандартные поля: title, description, url, price
286
  // все остальные данные в extra
 
287
  $content->url = $r['DetailPageURL'];
288
 
289
  if (isset($r['ItemAttributes']['Title']))
350
  $extra = json_decode(json_encode($extra), FALSE);
351
  }
352
 
353
+ // OfferSummary
354
+ if (isset($r['OfferSummary']))
355
+ {
356
+ if (!empty($r['OfferSummary']['LowestNewPrice']) && isset($r['OfferSummary']['LowestNewPrice']['Amount']))
357
+ $extra->lowestNewPrice = TextHelper::pricePenniesDenomination($r['OfferSummary']['LowestNewPrice']['Amount'], false);
358
+ if (!empty($r['OfferSummary']['LowestUsedPrice']) && isset($r['OfferSummary']['LowestUsedPrice']['Amount']))
359
+ $extra->lowestUsedPrice = TextHelper::pricePenniesDenomination($r['OfferSummary']['LowestUsedPrice']['Amount'], false);
360
+ if (!empty($r['OfferSummary']['LowestCollectiblePrice']) && isset($r['OfferSummary']['LowestCollectiblePrice']['Amount']))
361
+ $extra->lowestCollectiblePrice = TextHelper::pricePenniesDenomination($r['OfferSummary']['LowestCollectiblePrice']['Amount'], false);
362
+ if (!empty($r['OfferSummary']['LowestRefurbishedPrice']) && isset($r['OfferSummary']['LowestRefurbishedPrice']['Amount']))
363
+ $extra->lowestRefurbishedPrice = TextHelper::pricePenniesDenomination($r['OfferSummary']['LowestRefurbishedPrice']['Amount'], false);
364
+ $extra->totalNew = (int) $r['OfferSummary']['TotalNew'];
365
+ $extra->totalUsed = (int) $r['OfferSummary']['TotalUsed'];
366
+ $extra->totalCollectible = (int) $r['OfferSummary']['TotalCollectible'];
367
+ $extra->totalRefurbished = (int) $r['OfferSummary']['TotalRefurbished'];
368
+ }
369
+
370
  // Offers
371
  if (isset($r['Offers']) &&
372
  isset($r['Offers']['Offer']) &&
428
  }
429
  }
430
 
431
+ private function getLocaleSite($locale)
 
 
 
 
 
 
 
432
  {
433
+ switch ($locale)
434
  {
435
  case 'uk':
436
+ return 'http://www.amazon.co.uk';
 
437
  case 'de':
438
+ return 'http://www.amazon.de';
439
  break;
440
  case 'fr':
441
+ return 'http://www.amazon.fr';
442
  break;
443
  case 'jp':
444
+ return 'http://www.amazon.co.jp';
445
  break;
446
  case 'cn':
447
+ return 'http://www.amazon.cn';
448
  break;
449
  case 'it':
450
+ return 'http://www.amazon.it';
451
  break;
452
  case 'es':
453
+ return 'http://www.amazon.es';
454
  break;
455
  case 'ca':
456
+ return 'http://www.amazon.ca';
457
  break;
458
  case 'br':
459
+ return 'http://www.amazon.br';
460
  break;
461
  case 'in':
462
+ return 'http://www.amazon.in';
463
  break;
464
  default: //'us'
465
+ return 'http://www.amazon.com';
466
  break;
467
  }
468
  }
469
 
470
+ private function getCustomerReviewsUri($asin)
471
+ {
472
+ return $this->getLocaleSite($this->config('locale')) . '/product-reviews/' . $asin;
473
+ }
474
+
475
+ /**
476
+ * Add to shopping cart url
477
+ * @link: http://docs.amazonwebservices.com/AWSECommerceService/latest/DG/AddToCartForm.html
478
+ * @link: https://affiliate-program.amazon.com/gp/associates/help/t1/a10?ie=UTF8&pf_rd_i=assoc_help_t6_a1&pf_rd_m=ATVPDKIKX0DER&pf_rd_p=&pf_rd_r=&pf_rd_s=assoc-center-1&pf_rd_t=501&ref_=amb_link_177735_1
479
+ * @link: https://affiliate-program.amazon.com/gp/associates/help/operating
480
+ * @link: https://affiliate-program.amazon.com/gp/associates/help/t2/a11
481
+ */
482
+ private function getAmazonAddToCartUrl()
483
+ {
484
+ return $this->getLocaleSite($this->config('locale')) . '/gp/aws/cart/add.html';
485
+ }
486
+
487
  public function renderResults()
488
  {
489
  PluginAdmin::render('_metabox_results', array('module_id' => $this->getId()));
application/modules/Amazon/ExtraDataAmazon.php CHANGED
@@ -28,6 +28,14 @@ class ExtraDataAmazon extends ExtraData {
28
  public $itemAttributes;
29
  public $toLowToDisplay;
30
  public $availability;
 
 
 
 
 
 
 
 
31
  }
32
 
33
  class ExtraAmazonItemLinks {
28
  public $itemAttributes;
29
  public $toLowToDisplay;
30
  public $availability;
31
+ public $lowestNewPrice;
32
+ public $lowestUsedPrice;
33
+ public $lowestCollectiblePrice;
34
+ public $lowestRefurbishedPrice;
35
+ public $totalNew;
36
+ public $totalUsed;
37
+ public $totalCollectible;
38
+ public $totalRefurbished;
39
  }
40
 
41
  class ExtraAmazonItemLinks {
application/modules/Amazon/templates/data_compare.php CHANGED
@@ -37,7 +37,7 @@ $barcodes = array(
37
  <?php $first = reset($current_items); ?>
38
  <div class="row">
39
  <div class="col-sm-12 col-md-2 text-info">
40
- <h4><?php _e('Compare', 'content-egg-tpl'); ?></h4>
41
  </div>
42
  <?php foreach ($current_items as $item): ?>
43
  <div class="col-sm-6 col-md-5">
@@ -89,13 +89,29 @@ $barcodes = array(
89
  <?php if ((bool) $item['extra']['IsEligibleForSuperSaverShipping']): ?>
90
  <p class="text-muted"><small><?php _e('Free shipping', 'content-egg-tpl'); ?></small></p>
91
  <?php endif; ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
92
  </div>
93
  <?php endforeach; ?>
94
  </div>
95
 
96
  <div class="row">
97
  <div class="col-sm-12 col-md-2 text-info">
98
- <h4><?php _e('Shop Now', 'content-egg-tpl'); ?></h4>
99
  </div>
100
  <?php foreach ($current_items as $item): ?>
101
  <div class="col-sm-6 col-md-5 text-center">
@@ -216,7 +232,7 @@ $barcodes = array(
216
 
217
  <div class="row">
218
  <div class="col-sm-12 col-md-2 text-info">
219
- <h4><?php _e('Shop Now', 'content-egg-tpl'); ?></h4>
220
  </div>
221
  <?php foreach ($current_items as $item): ?>
222
  <div class="col-sm-6 col-md-5 text-center">
@@ -227,7 +243,7 @@ $barcodes = array(
227
 
228
  <div class="row">
229
  <div class="col-sm-12 col-md-2 text-info">
230
- <h4><?php _e('Images', 'content-egg-tpl'); ?></h4>
231
  </div>
232
  <?php foreach ($current_items as $item): ?>
233
  <div class="col-sm-6 col-md-5">
@@ -238,9 +254,5 @@ $barcodes = array(
238
  </div>
239
  <?php endforeach; ?>
240
  </div>
241
- <div class="text-right text-muted">
242
- <small><?php _e('as of', 'content-egg-tpl');?> <?php echo date(get_option('date_format'), $first['last_update']); ?></small>
243
- </div>
244
- <br>
245
  <?php endfor; ?>
246
  </div>
37
  <?php $first = reset($current_items); ?>
38
  <div class="row">
39
  <div class="col-sm-12 col-md-2 text-info">
40
+ <?php _e('Compare', 'content-egg-tpl'); ?>
41
  </div>
42
  <?php foreach ($current_items as $item): ?>
43
  <div class="col-sm-6 col-md-5">
89
  <?php if ((bool) $item['extra']['IsEligibleForSuperSaverShipping']): ?>
90
  <p class="text-muted"><small><?php _e('Free shipping', 'content-egg-tpl'); ?></small></p>
91
  <?php endif; ?>
92
+
93
+ <span class="text-muted">
94
+ <?php if ($item['extra']['totalNew']): ?>
95
+ <?php echo $item['extra']['totalNew']; ?>
96
+ <?php _e('new', 'content-egg-tpl'); ?> <?php _e('from', 'content-egg-tpl'); ?>
97
+ <?php echo $item['currency']; ?><?php echo TemplateHelper::price_format_i18n($item['extra']['lowestNewPrice']); ?>
98
+ <?php endif; ?>
99
+ <?php if ($item['extra']['totalUsed']): ?>
100
+ <br><?php echo $item['extra']['totalUsed']; ?>
101
+ <?php _e('used', 'content-egg-tpl'); ?> <?php _e('from', 'content-egg-tpl'); ?>
102
+ <?php echo $item['currency']; ?><?php echo TemplateHelper::price_format_i18n($item['extra']['lowestUsedPrice']); ?>
103
+ <?php endif; ?>
104
+ </span>
105
+ <span class="text-muted">
106
+ <br><?php _e('as of', 'content-egg-tpl'); ?> <?php echo TemplateHelper::getLastUpdateFormatted('Amazon'); ?>
107
+ </span>
108
  </div>
109
  <?php endforeach; ?>
110
  </div>
111
 
112
  <div class="row">
113
  <div class="col-sm-12 col-md-2 text-info">
114
+ <?php _e('Shop Now', 'content-egg-tpl'); ?>
115
  </div>
116
  <?php foreach ($current_items as $item): ?>
117
  <div class="col-sm-6 col-md-5 text-center">
232
 
233
  <div class="row">
234
  <div class="col-sm-12 col-md-2 text-info">
235
+ <?php _e('Shop Now', 'content-egg-tpl'); ?>
236
  </div>
237
  <?php foreach ($current_items as $item): ?>
238
  <div class="col-sm-6 col-md-5 text-center">
243
 
244
  <div class="row">
245
  <div class="col-sm-12 col-md-2 text-info">
246
+ <?php _e('Images', 'content-egg-tpl'); ?>
247
  </div>
248
  <?php foreach ($current_items as $item): ?>
249
  <div class="col-sm-6 col-md-5">
254
  </div>
255
  <?php endforeach; ?>
256
  </div>
 
 
 
 
257
  <?php endfor; ?>
258
  </div>
application/modules/Amazon/templates/data_grid.php CHANGED
@@ -59,6 +59,11 @@ use ContentEgg\application\helpers\TemplateHelper;
59
  if ($i % 3 == 0): ?>
60
  <div class="clearfix"></div>
61
  <?php endif; ?>
62
- <?php endforeach; ?>
 
 
 
 
 
63
  </div>
64
  </div>
59
  if ($i % 3 == 0): ?>
60
  <div class="clearfix"></div>
61
  <?php endif; ?>
62
+ <?php endforeach; ?>
63
+ <div class="row">
64
+ <div class="col-md-12 text-right text-muted">
65
+ <small><?php _e('Last updated on', 'content-egg-tpl'); ?> <?php echo TemplateHelper::getLastUpdateFormatted('Amazon'); ?></small>
66
+ </div>
67
+ </div>
68
  </div>
69
  </div>
application/modules/Amazon/templates/data_item.php CHANGED
@@ -42,7 +42,7 @@ use ContentEgg\application\helpers\TemplateHelper;
42
  <div class="row">
43
  <div class="col-md-6">
44
  <?php if ($item['priceOld']): ?>
45
- <span class="text-muted"><strike><small><?php echo $item['currency']; ?></small><?php echo TemplateHelper::price_format_i18n($item['priceOld']); ?></strike></span><br>
46
  <?php endif; ?>
47
 
48
  <?php if ($item['price']): ?>
@@ -50,11 +50,26 @@ use ContentEgg\application\helpers\TemplateHelper;
50
  <?php elseif ($item['extra']['toLowToDisplay']): ?>
51
  <span class="text-muted"><?php _e('Too low to display', 'content-egg-tpl'); ?></span>
52
  <?php endif; ?>
53
-
54
-
55
  <?php if ((bool) $item['extra']['IsEligibleForSuperSaverShipping']): ?>
56
- <p class="text-muted"><small><?php _e('Free shipping', 'content-egg-tpl'); ?></small></p>
57
  <?php endif; ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
  </div>
59
  <div class="col-md-6 text-center text-muted">
60
  <a rel="nofollow" target="_blank" href="<?php echo $item['url']; ?>" class="btn btn-success"><?php _e('BUY THIS ITEM', 'content-egg-tpl'); ?></a>
@@ -120,9 +135,4 @@ use ContentEgg\application\helpers\TemplateHelper;
120
  </div>
121
  <?php endforeach; ?>
122
  </div>
123
- <div class="row">
124
- <div class="col-sm-12 text-right text-muted">
125
- <small><?php _e('as of:', 'content-egg-tpl'); ?> <?php echo date(get_option('date_format'), $item['last_update']); ?></small>
126
- </div>
127
- </div>
128
- </div>
42
  <div class="row">
43
  <div class="col-md-6">
44
  <?php if ($item['priceOld']): ?>
45
+ <span class="text-muted"><strike><small><?php echo $item['currency']; ?></small><?php echo TemplateHelper::price_format_i18n($item['priceOld']); ?></strike></span><br>
46
  <?php endif; ?>
47
 
48
  <?php if ($item['price']): ?>
50
  <?php elseif ($item['extra']['toLowToDisplay']): ?>
51
  <span class="text-muted"><?php _e('Too low to display', 'content-egg-tpl'); ?></span>
52
  <?php endif; ?>
53
+
 
54
  <?php if ((bool) $item['extra']['IsEligibleForSuperSaverShipping']): ?>
55
+ <br><small class="text-muted"><?php _e('Free shipping', 'content-egg-tpl'); ?></small>
56
  <?php endif; ?>
57
+
58
+ <span class="text-muted">
59
+ <?php if ($item['extra']['totalNew']): ?>
60
+ <br><?php echo $item['extra']['totalNew']; ?>
61
+ <?php _e('new', 'content-egg-tpl'); ?> <?php _e('from', 'content-egg-tpl'); ?>
62
+ <?php echo $item['currency']; ?><?php echo TemplateHelper::price_format_i18n($item['extra']['lowestNewPrice']); ?>
63
+ <?php endif; ?>
64
+ <?php if ($item['extra']['totalUsed']): ?>
65
+ <br><?php echo $item['extra']['totalUsed']; ?>
66
+ <?php _e('used', 'content-egg-tpl'); ?> <?php _e('from', 'content-egg-tpl'); ?>
67
+ <?php echo $item['currency']; ?><?php echo TemplateHelper::price_format_i18n($item['extra']['lowestUsedPrice']); ?>
68
+ <?php endif; ?>
69
+ </span>
70
+ <span class="text-muted">
71
+ <br><small><?php _e('as of', 'content-egg-tpl'); ?> <?php echo TemplateHelper::getLastUpdateFormatted('Amazon'); ?></small>
72
+ </span>
73
  </div>
74
  <div class="col-md-6 text-center text-muted">
75
  <a rel="nofollow" target="_blank" href="<?php echo $item['url']; ?>" class="btn btn-success"><?php _e('BUY THIS ITEM', 'content-egg-tpl'); ?></a>
135
  </div>
136
  <?php endforeach; ?>
137
  </div>
138
+ </div>
 
 
 
 
 
application/modules/Amazon/templates/data_list.php CHANGED
@@ -51,5 +51,10 @@ use ContentEgg\application\helpers\TemplateHelper;
51
  </div>
52
  </div>
53
  <?php endforeach; ?>
 
 
 
 
 
54
  </div>
55
  </div>
51
  </div>
52
  </div>
53
  <?php endforeach; ?>
54
+ </div>
55
+ <div class="row">
56
+ <div class="col-md-12 text-right text-muted">
57
+ <small><?php _e('Last updated on', 'content-egg-tpl'); ?> <?php echo TemplateHelper::getLastUpdateFormatted('Amazon'); ?></small>
58
+ </div>
59
  </div>
60
  </div>
application/modules/GoogleImages/GoogleImagesConfig.php CHANGED
@@ -157,7 +157,7 @@ class GoogleImagesConfig extends ParserModuleConfig {
157
  'section' => 'default',
158
  ),
159
  'as_sitesearch' => array(
160
- 'title' => 'Поиск по сайту',
161
  'description' => __('Ограничить поиск только этим доменом. Например, задайте: photobucket.com', 'content-egg'),
162
  'callback' => array($this, 'render_input'),
163
  'default' => '',
157
  'section' => 'default',
158
  ),
159
  'as_sitesearch' => array(
160
+ 'title' => __('Поиск по сайту', 'content-egg'),
161
  'description' => __('Ограничить поиск только этим доменом. Например, задайте: photobucket.com', 'content-egg'),
162
  'callback' => array($this, 'render_input'),
163
  'default' => '',
application/modules/RelatedKeywords/RelatedKeywordsConfig.php ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace ContentEgg\application\modules\RelatedKeywords;
4
+
5
+ use ContentEgg\application\components\ParserModuleConfig;
6
+
7
+ /**
8
+ * RelatedKeywordsConfig class file
9
+ *
10
+ * @author keywordrush.com <support@keywordrush.com>
11
+ * @link http://www.keywordrush.com/
12
+ * @copyright Copyright &copy; 2015 keywordrush.com
13
+ */
14
+ class RelatedKeywordsConfig extends ParserModuleConfig {
15
+
16
+ public function options()
17
+ {
18
+ $optiosn = array(
19
+ 'account_key' => array(
20
+ 'title' => 'Account Key <span class="cegg_required">*</span>',
21
+ 'description' => __('Ключ доступа к Bing API. Получить можно <a href="https://datamarket.azure.com/account/keys">здесь</a> (потребуется аккаунт в bing).', 'content-egg'),
22
+ 'callback' => array($this, 'render_input'),
23
+ 'default' => '',
24
+ 'validator' => array(
25
+ 'trim',
26
+ array(
27
+ 'call' => array('\ContentEgg\application\helpers\FormValidator', 'required'),
28
+ 'when' => 'is_active',
29
+ 'message' => __('Поле "Account Key" не может быть пустым.', 'content-egg'),
30
+ ),
31
+ ),
32
+ 'section' => 'default',
33
+ ),
34
+ 'entries_per_page' => array(
35
+ 'title' => __('Результатов', 'content-egg'),
36
+ 'description' => __('Количество результатов для одного запроса', 'content-egg'),
37
+ 'callback' => array($this, 'render_input'),
38
+ 'default' => 10,
39
+ 'validator' => array(
40
+ 'trim',
41
+ 'absint',
42
+ array(
43
+ 'call' => array('\ContentEgg\application\helpers\FormValidator', 'less_than_equal_to'),
44
+ 'arg' => 50,
45
+ 'message' => __('Поле "Результатов" не может быть больше 5ы0.', 'content-egg'),
46
+ ),
47
+ ),
48
+ 'section' => 'default',
49
+ ),
50
+ 'entries_per_page_update' => array(
51
+ 'title' => __('Результатов для автоблоггинга', 'content-egg'),
52
+ 'description' => __('Количество результатов для автоблоггинга.', 'content-egg'),
53
+ 'callback' => array($this, 'render_input'),
54
+ 'default' => 6,
55
+ 'validator' => array(
56
+ 'trim',
57
+ 'absint',
58
+ array(
59
+ 'call' => array('\ContentEgg\application\helpers\FormValidator', 'less_than_equal_to'),
60
+ 'arg' => 50,
61
+ 'message' => __('Поле "Результатов для автоблоггинга" не может быть больше 50.', 'content-egg'),
62
+ ),
63
+ ),
64
+ 'section' => 'default',
65
+ ),
66
+ );
67
+ $parent = parent::options();
68
+ unset($parent['featured_image']);
69
+ return array_merge($parent, $optiosn);
70
+ }
71
+
72
+ }
application/modules/RelatedKeywords/RelatedKeywordsModule.php ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace ContentEgg\application\modules\RelatedKeywords;
4
+
5
+ use ContentEgg\application\components\ParserModule;
6
+ use ContentEgg\application\libs\bing\BingSearch;
7
+ use ContentEgg\application\components\Content;
8
+ use ContentEgg\application\helpers\TextHelper;
9
+ use ContentEgg\application\admin\PluginAdmin;
10
+ use ContentEgg\application\admin\GeneralConfig;
11
+
12
+ /**
13
+ * RelatedKeywords class file
14
+ *
15
+ * @author keywordrush.com <support@keywordrush.com>
16
+ * @link http://www.keywordrush.com/
17
+ * @copyright Copyright &copy; 2015 keywordrush.com
18
+ */
19
+ class RelatedKeywordsModule extends ParserModule {
20
+
21
+ public function info()
22
+ {
23
+ return array(
24
+ 'name' => 'Related Keywords',
25
+ 'api_agreement' => 'https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44',
26
+ 'description' => __('Находит родственные ключевые слова и выводит их в посте.', 'content-egg'),
27
+ );
28
+ }
29
+
30
+ public function getParserType()
31
+ {
32
+ return self::PARSER_TYPE_CONTENT;
33
+ }
34
+
35
+ public function isFree()
36
+ {
37
+ return true;
38
+ }
39
+
40
+ public function doRequest($keyword, $query_params = array(), $is_autoupdate = false)
41
+ {
42
+ $options = array();
43
+
44
+ if ($is_autoupdate)
45
+ $entries_per_page = $this->config('entries_per_page_update');
46
+ else
47
+ $entries_per_page = $this->config('entries_per_page');
48
+ $options['$top'] = $entries_per_page;
49
+
50
+ try
51
+ {
52
+ $api_client = new BingSearch($this->config('account_key'), 'json');
53
+ $results = $api_client->search($keyword, 'RelatedSearch', $options);
54
+ } catch (Exception $e)
55
+ {
56
+ throw new \Exception(strip_tags($e->getMessage()));
57
+ }
58
+
59
+ if (!isset($results['d']) || !isset($results['d']['results']) || !isset($results['d']['results'][0]))
60
+ return array();
61
+
62
+ $results = $results['d']['results'];
63
+ $results = array_slice($results, 0, $entries_per_page);
64
+
65
+ $data = array();
66
+ foreach ($results as $r)
67
+ {
68
+ $content = new Content;
69
+ $content->title = strip_tags($r['Title']);
70
+ $content->unique_id = $content->title;
71
+ $content->url = $r['BingUrl'];
72
+ $data[] = $content;
73
+ }
74
+ return $data;
75
+ }
76
+
77
+ public function renderResults()
78
+ {
79
+ PluginAdmin::render('_metabox_results', array('module_id' => $this->getId()));
80
+ }
81
+
82
+ public function renderSearchResults()
83
+ {
84
+ PluginAdmin::render('_metabox_search_results', array('module_id' => $this->getId()));
85
+ }
86
+
87
+ }
application/modules/RelatedKeywords/index.php ADDED
@@ -0,0 +1 @@
 
1
+ <?php // Silence is golden.
application/modules/RelatedKeywords/templates/data_simple.php ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Name: Simple
4
+ */
5
+ __('Simple', 'content-egg-simple');
6
+ ?>
7
+ <?php \wp_enqueue_style('egg-bootstrap'); ?>
8
+
9
+ <?php foreach ($items as $item): ?>
10
+ <?php $keywords[] = $item['title']; ?>
11
+ <?php endforeach; ?>
12
+
13
+ <div class="egg-container">
14
+ <?php if ($title): ?>
15
+ <h3><?php echo esc_html($title); ?></h3>
16
+ <?php endif; ?>
17
+ <?php echo join(', ', $keywords); ?>.
18
+ </div>
application/modules/RssFetcher/ExtraDataRssFetcher.php ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace ContentEgg\application\modules\RssFetcher;
4
+
5
+ use ContentEgg\application\components\ExtraData;
6
+
7
+ /**
8
+ * ExtraDataRssFetcher class file
9
+ *
10
+ * @author keywordrush.com <support@keywordrush.com>
11
+ * @link http://www.keywordrush.com/
12
+ * @copyright Copyright &copy; 2015 keywordrush.com
13
+ */
14
+ class ExtraDataRssFetcher extends ExtraData {
15
+
16
+ public $allData = array();
17
+
18
+ }
application/modules/RssFetcher/RssFetcherConfig.php ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace ContentEgg\application\modules\RssFetcher;
4
+
5
+ use ContentEgg\application\components\ParserModuleConfig;
6
+
7
+ /**
8
+ * RssFetcherConfig class file
9
+ *
10
+ * @author keywordrush.com <support@keywordrush.com>
11
+ * @link http://www.keywordrush.com/
12
+ * @copyright Copyright &copy; 2015 keywordrush.com
13
+ */
14
+ class RssFetcherConfig extends ParserModuleConfig {
15
+
16
+ public function options()
17
+ {
18
+ $optiosn = array(
19
+ 'uri' => array(
20
+ 'title' => 'RSS URL <span class="cegg_required">*</span>',
21
+ 'description' => __('Для подстановки текущего ключевого слова используйте <em>%KEYWORD%</em>.', 'content-egg'),
22
+ 'callback' => array($this, 'render_input'),
23
+ 'default' => 'http://www.bing.com/search?format=rss&FORM=RSRE&q=%KEYWORD%',
24
+ 'validator' => array(
25
+ 'trim',
26
+ array(
27
+ 'call' => array('\ContentEgg\application\helpers\FormValidator', 'required'),
28
+ 'when' => 'is_active',
29
+ 'message' => __('Поле "RSS URL" не может быть пустым.', 'content-egg'),
30
+ ),
31
+ ),
32
+ 'section' => 'default',
33
+ ),
34
+ 'entries_per_page' => array(
35
+ 'title' => __('Результатов', 'content-egg'),
36
+ 'description' => __('Количество результатов для одного запроса', 'content-egg'),
37
+ 'callback' => array($this, 'render_input'),
38
+ 'default' => 10,
39
+ 'validator' => array(
40
+ 'trim',
41
+ 'absint',
42
+ array(
43
+ 'call' => array('\ContentEgg\application\helpers\FormValidator', 'less_than_equal_to'),
44
+ 'arg' => 50,
45
+ 'message' => __('Поле "Результатов" не может быть больше 50.', 'content-egg'),
46
+ ),
47
+ ),
48
+ 'section' => 'default',
49
+ ),
50
+ 'entries_per_page_update' => array(
51
+ 'title' => __('Результатов для автоблоггинга', 'content-egg'),
52
+ 'description' => __('Количество результатов для автоблоггинга.', 'content-egg'),
53
+ 'callback' => array($this, 'render_input'),
54
+ 'default' => 5,
55
+ 'validator' => array(
56
+ 'trim',
57
+ 'absint',
58
+ array(
59
+ 'call' => array('\ContentEgg\application\helpers\FormValidator', 'less_than_equal_to'),
60
+ 'arg' => 50,
61
+ 'message' => __('Поле "Результатов для автоблоггинга" не может быть больше 50.', 'content-egg'),
62
+ ),
63
+ ),
64
+ 'section' => 'default',
65
+ ),
66
+ 'allowed_tags' => array(
67
+ 'title' => __('Разрешенные теги', 'content-egg'),
68
+ 'description' => __('Теги, которые разрешены в title и description.', 'content-egg'),
69
+ 'callback' => array($this, 'render_input'),
70
+ 'default' => '<p><br><img>',
71
+ 'validator' => array(
72
+ 'trim',
73
+ ),
74
+ 'section' => 'default',
75
+ ),
76
+ );
77
+ $parent = parent::options();
78
+ unset($parent['featured_image']);
79
+ return array_merge($parent, $optiosn);
80
+ }
81
+
82
+ }
application/modules/RssFetcher/RssFetcherModule.php ADDED
@@ -0,0 +1,160 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace ContentEgg\application\modules\RssFetcher;
4
+
5
+ use ContentEgg\application\components\ParserModule;
6
+ use ContentEgg\application\libs\rss\RssParser;
7
+ use ContentEgg\application\components\Content;
8
+ use ContentEgg\application\helpers\TextHelper;
9
+ use ContentEgg\application\admin\PluginAdmin;
10
+ use ContentEgg\application\admin\GeneralConfig;
11
+
12
+ /**
13
+ * RssFetcher class file
14
+ *
15
+ * @author keywordrush.com <support@keywordrush.com>
16
+ * @link http://www.keywordrush.com/
17
+ * @copyright Copyright &copy; 2015 keywordrush.com
18
+ */
19
+ class RssFetcherModule extends ParserModule {
20
+
21
+ public function info()
22
+ {
23
+ return array(
24
+ 'name' => 'RSS Fetcher',
25
+ 'description' => __('Парсит любую RSS-ленту.', 'content-egg') . ' ' .
26
+ __('Важно, чтобы в URL была возможность использовать ключевое слово, т.е. лента должна содержать результаты поиска по ключевому слову.', 'content-egg')
27
+ );
28
+ }
29
+
30
+ public function getParserType()
31
+ {
32
+ return self::PARSER_TYPE_CONTENT;
33
+ }
34
+
35
+ public function isFree()
36
+ {
37
+ return true;
38
+ }
39
+
40
+ public function doRequest($keyword, $query_params = array(), $is_autoupdate = false)
41
+ {
42
+ $options = array();
43
+
44
+ if ($is_autoupdate)
45
+ $entries_per_page = $this->config('entries_per_page_update');
46
+ else
47
+ $entries_per_page = $this->config('entries_per_page');
48
+
49
+ try
50
+ {
51
+ $client = new RssParser();
52
+ $results = $client->search($keyword, $this->config('uri'));
53
+ } catch (Exception $e)
54
+ {
55
+ throw new \Exception(strip_tags($e->getMessage()));
56
+ }
57
+
58
+ $results = $this->normaliseResults($results);
59
+ $data = array();
60
+ foreach ($results as $r)
61
+ {
62
+ if (empty($r['title']))
63
+ throw new \Exception('Can\'t parse RSS feed.');
64
+
65
+ $content = new Content;
66
+ $content->title = strip_tags($r['title'], $this->config('allowed_tags'));
67
+ $content->description = strip_tags($r['description'], $this->config('allowed_tags'));
68
+ $content->url = $r['url'];
69
+ if ($content->url)
70
+ $content->unique_id = md5($content->url);
71
+ else
72
+ $content->title = md5($content->title);
73
+ $content->extra = new ExtraDataRssFetcher;
74
+ unset($r['title']);
75
+ unset($r['description']);
76
+ unset($r['url']);
77
+ $content->extra->allData = $r;
78
+
79
+ $data[] = $content;
80
+ }
81
+ return $data;
82
+ }
83
+
84
+ private function normaliseResults($feed)
85
+ {
86
+ $results = array();
87
+ if (isset($feed['items']))
88
+ $results = $feed['items'];
89
+ elseif (isset($feed['channel']['item']))
90
+ {//rss 2.0
91
+ if (isset($feed['channel']['item'][0]) && is_array($feed['channel']['item'][0]))
92
+ $results = $feed['channel']['item'];
93
+ else
94
+ $results[] = $feed['channel']['item'];
95
+ }elseif (isset($feed['entry']))
96
+ { //atom
97
+ if (isset($feed['entry'][0]) && is_array($feed['entry'][0]))
98
+ $results = $feed['entry'];
99
+ else
100
+ $results[] = $feed['entry'];
101
+ }
102
+
103
+ foreach ($results as $key => $res)
104
+ {
105
+ //получаем title
106
+ $results[$key]['title'] = (isset($res['title']) && $res['title']) ? $res['title'] : '';
107
+
108
+ //получаем description
109
+ if (isset($res['content:encoded']) && $res['content:encoded'])
110
+ {
111
+ $results[$key]['description'] = $res['content:encoded'];
112
+ unset($results[$key]['content:encoded']);
113
+ } elseif (isset($res['content']) && $res['content'])
114
+ {
115
+ $results[$key]['description'] = $res['content'];
116
+ unset($results[$key]['content']);
117
+ } elseif (isset($res['description']) && $res['description'])
118
+ $results[$key]['description'] = $res['description'];
119
+ else
120
+ $results[$key]['description'] = '';
121
+
122
+ //получаем url
123
+ $results[$key]['url'] = '';
124
+ if (isset($res['link']) && !is_array($res['link']))
125
+ $results[$key]['url'] = $res['link'];
126
+ elseif (isset($res['link']['@attributes']['href']))
127
+ $results[$key]['url'] = $res['link']['@attributes']['href'];
128
+ elseif (isset($res['link'][0]))
129
+ {
130
+ foreach ($res['link'] as $lnk)
131
+ {
132
+ if (isset($lnk['@attributes']['rel']) && $lnk['@attributes']['rel'] == 'alternate')
133
+ $results[$key]['url'] = $lnk['@attributes']['href'];
134
+ }
135
+ }
136
+ }
137
+
138
+ return $results;
139
+ }
140
+
141
+ /*
142
+ {
143
+ $content->title = strip_tags($this->config('allowed_tags'));
144
+ $content->unique_id = $r['ID'];
145
+ $content->url = $r['BingUrl'];
146
+ }
147
+ *
148
+ */
149
+
150
+ public function renderResults()
151
+ {
152
+ PluginAdmin::render('_metabox_results', array('module_id' => $this->getId()));
153
+ }
154
+
155
+ public function renderSearchResults()
156
+ {
157
+ PluginAdmin::render('_metabox_search_results', array('module_id' => $this->getId()));
158
+ }
159
+
160
+ }
application/modules/RssFetcher/index.php ADDED
@@ -0,0 +1 @@
 
1
+ <?php // Silence is golden.
application/modules/RssFetcher/templates/data_simple.php ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Name: Simple
4
+ */
5
+ __('Simple', 'content-egg-simple');
6
+ ?>
7
+ <?php \wp_enqueue_style('egg-bootstrap'); ?>
8
+
9
+ <div class="egg-container egg-media">
10
+ <?php if ($title): ?>
11
+ <h3><?php echo esc_html($title); ?></h3>
12
+ <?php endif; ?>
13
+
14
+ <?php foreach ($items as $item): ?>
15
+ <div class="media">
16
+ <div class="media-body">
17
+ <h4 class="media-heading">
18
+ <a target="_blank" rel="nofollow" href="<?php echo $item['url']; ?>"><?php echo esc_html($item['title']); ?></a>
19
+ </h4>
20
+ <p><?php echo $item['description']; ?></p>
21
+ </div>
22
+ </div>
23
+ <?php endforeach; ?>
24
+ </div>
application/vendor/CrawlerDetect.php ADDED
@@ -0,0 +1,538 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * CrawlerDetect is a PHP class for detecting bots/crawlers/spiders via the user agent.
5
+ *
6
+ * @link: https://github.com/JayBizzle/Crawler-Detect
7
+ *
8
+ */
9
+ /*
10
+ The MIT License (MIT)
11
+
12
+ Copyright (c) 2015 Mark Beech
13
+
14
+ Permission is hereby granted, free of charge, to any person obtaining a copy
15
+ of this software and associated documentation files (the "Software"), to deal
16
+ in the Software without restriction, including without limitation the rights
17
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
18
+ copies of the Software, and to permit persons to whom the Software is
19
+ furnished to do so, subject to the following conditions:
20
+
21
+ The above copyright notice and this permission notice shall be included in all
22
+ copies or substantial portions of the Software.
23
+
24
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
25
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
26
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
27
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
28
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
29
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
30
+ SOFTWARE.
31
+ */
32
+
33
+ namespace Jaybizzle\CrawlerDetect;
34
+
35
+ class CrawlerDetect {
36
+
37
+ protected $userAgent = null;
38
+ protected $httpHeaders = array();
39
+ protected $matches = array();
40
+ protected static $crawlers = array(
41
+ '007ac9 Crawler',
42
+ '008\\/',
43
+ '360Spider',
44
+ 'A6-Indexer',
45
+ 'ABACHOBot',
46
+ 'AbiLogicBot',
47
+ 'Aboundex',
48
+ 'Accoona-AI-Agent',
49
+ 'acoon',
50
+ 'AddSugarSpiderBot',
51
+ 'AddThis',
52
+ 'Adidxbot',
53
+ 'ADmantX',
54
+ 'AdvBot',
55
+ 'ahrefsbot',
56
+ 'aihitbot',
57
+ 'Airmail',
58
+ 'AISearchBot',
59
+ 'Anemone',
60
+ 'antibot',
61
+ 'AnyApexBot',
62
+ 'Applebot',
63
+ 'arabot',
64
+ 'Arachmo',
65
+ 'archive-com',
66
+ 'archive.org_bot',
67
+ 'B-l-i-t-z-B-O-T',
68
+ 'backlinkcrawler',
69
+ 'baiduspider',
70
+ 'BecomeBot',
71
+ 'BeslistBot',
72
+ 'bibnum\.bnf',
73
+ 'biglotron',
74
+ 'BillyBobBot',
75
+ 'Bimbot',
76
+ 'bingbot',
77
+ 'binlar',
78
+ 'blekkobot',
79
+ 'blexbot',
80
+ 'BlitzBOT',
81
+ 'bl\.uk_lddc_bot',
82
+ 'bnf\.fr_bot',
83
+ 'boitho\.com-dc',
84
+ 'boitho\.com-robot',
85
+ 'brainobot',
86
+ 'btbot',
87
+ 'BUbiNG',
88
+ 'Butterfly\/',
89
+ 'buzzbot',
90
+ 'careerbot',
91
+ 'CatchBot',
92
+ 'CC Metadata Scaper',
93
+ 'ccbot',
94
+ 'Cerberian Drtrs',
95
+ 'changedetection',
96
+ 'Charlotte',
97
+ 'CloudFlare-AlwaysOnline',
98
+ 'citeseerxbot',
99
+ 'coccoc',
100
+ 'classbot',
101
+ 'Commons-HttpClient',
102
+ 'content crawler spider',
103
+ 'Content Crawler',
104
+ 'convera',
105
+ 'ConveraCrawler',
106
+ 'CoPubbot',
107
+ 'cosmos',
108
+ 'Covario-IDS',
109
+ 'CrawlBot',
110
+ 'crawler4j',
111
+ 'CrystalSemanticsBot',
112
+ 'curl',
113
+ 'cXensebot',
114
+ 'CyberPatrol',
115
+ 'DataparkSearch',
116
+ 'dataprovider',
117
+ 'DiamondBot',
118
+ 'Digg',
119
+ 'discobot',
120
+ 'DomainAppender',
121
+ 'domaincrawler',
122
+ 'Domain Re-Animator Bot',
123
+ 'dotbot',
124
+ 'drupact',
125
+ 'DuckDuckBot',
126
+ 'EARTHCOM',
127
+ 'EasouSpider',
128
+ 'ec2linkfinder',
129
+ 'edisterbot',
130
+ 'ElectricMonk',
131
+ 'elisabot',
132
+ 'emailmarketingrobot',
133
+ 'EmeraldShield\.com WebBot',
134
+ 'envolk\[ITS\]spider',
135
+ 'EsperanzaBot',
136
+ 'europarchive\.org',
137
+ 'exabot',
138
+ 'ezooms',
139
+ 'facebookexternalhit',
140
+ 'Facebot',
141
+ 'FAST Enteprise Crawler',
142
+ 'FAST Enterprise Crawler',
143
+ 'FAST-WebCrawler',
144
+ 'FDSE robot',
145
+ 'Feedfetcher-Google',
146
+ 'FindLinks',
147
+ 'findlink',
148
+ 'findthatfile',
149
+ 'findxbot',
150
+ 'Flamingo_SearchEngine',
151
+ 'fluffy',
152
+ 'fr-crawler',
153
+ 'FRCrawler',
154
+ 'FurlBot',
155
+ 'FyberSpider',
156
+ 'g00g1e\.net',
157
+ 'GigablastOpenSource',
158
+ 'grub-client',
159
+ 'g2crawler',
160
+ 'Gaisbot',
161
+ 'GalaxyBot',
162
+ 'genieBot',
163
+ 'Genieo',
164
+ 'GermCrawler',
165
+ 'gigabot',
166
+ 'GingerCrawler',
167
+ 'Girafabot',
168
+ 'Gluten Free Crawler',
169
+ 'gnam gnam spider',
170
+ 'Googlebot-Image',
171
+ 'Googlebot-Mobile',
172
+ 'Googlebot',
173
+ 'GrapeshotCrawler',
174
+ 'gslfbot',
175
+ 'GurujiBot',
176
+ 'HappyFunBot',
177
+ 'Healthbot',
178
+ 'heritrix',
179
+ 'hl_ftien_spider',
180
+ 'Holmes',
181
+ 'htdig',
182
+ 'httpunit',
183
+ 'httrack',
184
+ 'ia_archiver',
185
+ 'iaskspider',
186
+ 'iCCrawler',
187
+ 'ichiro',
188
+ 'igdeSpyder',
189
+ 'iisbot',
190
+ 'InAGist',
191
+ 'InfoWizards Reciprocal Link System PRO',
192
+ 'Insitesbot',
193
+ 'integromedb',
194
+ 'intelium_bot',
195
+ 'InterfaxScanBot',
196
+ 'IODC',
197
+ 'IOI',
198
+ 'ip-web-crawler\.com',
199
+ 'ips-agent',
200
+ 'IRLbot',
201
+ 'IssueCrawler',
202
+ 'IstellaBot',
203
+ 'it2media-domain-crawler',
204
+ 'iZSearch',
205
+ 'Jaxified Bot',
206
+ 'JOC Web Spider',
207
+ 'jyxobot',
208
+ 'KoepaBot',
209
+ 'L\.webis',
210
+ 'LapozzBot',
211
+ 'Larbin',
212
+ 'lb-spider',
213
+ 'LDSpider',
214
+ 'LexxeBot',
215
+ 'libwww',
216
+ 'Linguee Bot',
217
+ 'Link Valet',
218
+ 'linkdex',
219
+ 'LinkExaminer',
220
+ 'LinksManager\.com_bot',
221
+ 'LinkpadBot',
222
+ 'LinksCrawler',
223
+ 'LinkWalker',
224
+ 'Lipperhey Link Explorer',
225
+ 'Lipperhey SEO Service',
226
+ 'Livelapbot',
227
+ 'lmspider',
228
+ 'lssbot',
229
+ 'lssrocketcrawler',
230
+ 'ltx71',
231
+ 'lufsbot',
232
+ 'lwp-trivial',
233
+ 'Mail\.RU_Bot',
234
+ 'MegaIndex\.ru',
235
+ 'mabontland',
236
+ 'magpie-crawler',
237
+ 'Mediapartners-Google',
238
+ 'memorybot',
239
+ 'MetaURI',
240
+ 'MJ12bot',
241
+ 'mlbot',
242
+ 'Mnogosearch',
243
+ 'mogimogi',
244
+ 'MojeekBot',
245
+ 'Moreoverbot',
246
+ 'Morning Paper',
247
+ 'Mrcgiguy',
248
+ 'MSIECrawler',
249
+ 'msnbot',
250
+ 'msrbot',
251
+ 'MVAClient',
252
+ 'mxbot',
253
+ 'NerdByNature\.Bot',
254
+ 'NerdyBot',
255
+ 'netEstate NE Crawler',
256
+ 'netresearchserver',
257
+ 'NetSeer Crawler',
258
+ 'NewsGator',
259
+ 'NextGenSearchBot',
260
+ 'NG-Search',
261
+ 'ngbot',
262
+ 'nicebot',
263
+ 'niki-bot',
264
+ 'Notifixious',
265
+ 'noxtrumbot',
266
+ 'Nusearch Spider',
267
+ 'nutch',
268
+ 'NutchCVS',
269
+ 'Nymesis',
270
+ 'obot',
271
+ 'oegp',
272
+ 'ocrawler',
273
+ 'omgilibot',
274
+ 'OmniExplorer_Bot',
275
+ 'online link validator',
276
+ 'Online Website Link Checker',
277
+ 'OOZBOT',
278
+ 'openindexspider',
279
+ 'OpenWebSpider',
280
+ 'OrangeBot',
281
+ 'Orbiter',
282
+ 'ow\.ly',
283
+ 'PaperLiBot',
284
+ 'Pingdom\.com_bot',
285
+ 'Ploetz \+ Zeller',
286
+ 'page2rss',
287
+ 'PageBitesHyperBot',
288
+ 'panscient',
289
+ 'Peew',
290
+ 'PercolateCrawler',
291
+ 'phpcrawl',
292
+ 'Pizilla',
293
+ 'Plukkie',
294
+ 'polybot',
295
+ 'Pompos',
296
+ 'PostPost',
297
+ 'postrank',
298
+ 'proximic',
299
+ 'psbot',
300
+ 'purebot',
301
+ 'PycURL',
302
+ 'python-requests',
303
+ 'Python-urllib',
304
+ 'Qseero',
305
+ 'QuerySeekerSpider',
306
+ 'Qwantify',
307
+ 'Radian6',
308
+ 'RAMPyBot',
309
+ 'REL Link Checker',
310
+ 'RetrevoPageAnalyzer',
311
+ 'Riddler',
312
+ 'Robosourcer',
313
+ 'rogerbot',
314
+ 'RufusBot',
315
+ 'SandCrawler',
316
+ 'SBIder',
317
+ 'ScoutJet',
318
+ 'Scrapy',
319
+ 'ScreenerBot',
320
+ 'scribdbot',
321
+ 'Scrubby',
322
+ 'SearchmetricsBot',
323
+ 'SearchSight',
324
+ 'seekbot',
325
+ 'semanticdiscovery',
326
+ 'SemrushBot',
327
+ 'Sensis Web Crawler',
328
+ 'SEOChat::Bot',
329
+ 'seokicks-robot',
330
+ 'SEOstats',
331
+ 'Seznam screenshot-generator',
332
+ 'seznambot',
333
+ 'Shim-Crawler',
334
+ 'ShopWiki',
335
+ 'Shoula robot',
336
+ 'ShowyouBot',
337
+ 'SimpleCrawler',
338
+ 'sistrix crawler',
339
+ 'SiteBar',
340
+ 'sitebot',
341
+ 'siteexplorer\.info',
342
+ 'SklikBot',
343
+ 'slider\.com',
344
+ 'slurp',
345
+ 'smtbot',
346
+ 'Snappy',
347
+ 'sogou spider',
348
+ 'sogou',
349
+ 'Sosospider',
350
+ 'spbot',
351
+ 'Speedy Spider',
352
+ 'speedy',
353
+ 'SpiderMan',
354
+ 'Sqworm',
355
+ 'SSL-Crawler',
356
+ 'StackRambler',
357
+ 'suggybot',
358
+ 'summify',
359
+ 'SurdotlyBot',
360
+ 'SurveyBot',
361
+ 'SynooBot',
362
+ 'tagoobot',
363
+ 'teoma',
364
+ 'TerrawizBot',
365
+ 'TheSuBot',
366
+ 'Thumbnail\.CZ robot',
367
+ 'TinEye',
368
+ 'toplistbot',
369
+ 'trendictionbot',
370
+ 'TrueBot',
371
+ 'truwoGPS',
372
+ 'turnitinbot',
373
+ 'TweetedTimes Bot',
374
+ 'TweetmemeBot',
375
+ 'twengabot',
376
+ 'Twitterbot',
377
+ 'uMBot',
378
+ 'UnisterBot',
379
+ 'UnwindFetchor',
380
+ 'updated',
381
+ 'urlappendbot',
382
+ 'Urlfilebot',
383
+ 'urlresolver',
384
+ 'UsineNouvelleCrawler',
385
+ 'Vagabondo',
386
+ 'Vivante Link Checker',
387
+ 'voilabot',
388
+ 'Vortex',
389
+ 'voyager\\/',
390
+ 'VYU2',
391
+ 'web-archive-net\.com\.bot',
392
+ 'Websquash\.com',
393
+ 'WeSEE:Ads\/PageBot',
394
+ 'wbsearchbot',
395
+ 'webcollage',
396
+ 'webcompanycrawler',
397
+ 'webcrawler',
398
+ 'webmon ',
399
+ 'WeSEE:Search',
400
+ 'wf84',
401
+ 'wget',
402
+ 'wocbot',
403
+ 'WoFindeIch Robot',
404
+ 'WomlpeFactory',
405
+ 'woriobot',
406
+ 'wotbox',
407
+ 'Xaldon_WebSpider',
408
+ 'Xenu Link Sleuth',
409
+ 'xintellibot',
410
+ 'XML Sitemaps Generator',
411
+ 'XoviBot',
412
+ 'Y!J-ASR',
413
+ 'yacy',
414
+ 'yacybot',
415
+ 'Yahoo Link Preview',
416
+ 'Yahoo! Slurp China',
417
+ 'Yahoo! Slurp',
418
+ 'YahooSeeker',
419
+ 'YahooSeeker-Testing',
420
+ 'YandexBot',
421
+ 'YandexImages',
422
+ 'YandexMetrika',
423
+ 'yandex',
424
+ 'yanga',
425
+ 'Yasaklibot',
426
+ 'yeti',
427
+ 'YioopBot',
428
+ 'YisouSpider',
429
+ 'YodaoBot',
430
+ 'yoogliFetchAgent',
431
+ 'yoozBot',
432
+ 'YoudaoBot',
433
+ 'Zao',
434
+ 'Zealbot',
435
+ 'zspider',
436
+ 'ZyBorg',
437
+ '[a-z0-9\\-_]*((?<!cu)bot|crawler|archiver|transcoder|spider)',
438
+ );
439
+
440
+ /**
441
+ * All possible HTTP headers that represent the
442
+ * User-Agent string.
443
+ *
444
+ * @var array
445
+ */
446
+ protected static $uaHttpHeaders = array(
447
+ // The default User-Agent string.
448
+ 'HTTP_USER_AGENT',
449
+ // Header can occur on devices using Opera Mini.
450
+ 'HTTP_X_OPERAMINI_PHONE_UA',
451
+ // Vodafone specific header: http://www.seoprinciple.com/mobile-web-community-still-angry-at-vodafone/24/
452
+ 'HTTP_X_DEVICE_USER_AGENT',
453
+ 'HTTP_X_ORIGINAL_USER_AGENT',
454
+ 'HTTP_X_SKYFIRE_PHONE',
455
+ 'HTTP_X_BOLT_PHONE_UA',
456
+ 'HTTP_DEVICE_STOCK_UA',
457
+ 'HTTP_X_UCBROWSER_DEVICE_UA',
458
+ );
459
+
460
+ /**
461
+ * Class constructor.
462
+ */
463
+ public function __construct(array $headers = null, $userAgent = null)
464
+ {
465
+ $this->setHttpHeaders($headers);
466
+ $this->setUserAgent($userAgent);
467
+ }
468
+
469
+ public function setHttpHeaders($httpHeaders = null)
470
+ {
471
+ // use global _SERVER if $httpHeaders aren't defined
472
+ if (!is_array($httpHeaders) || !count($httpHeaders))
473
+ {
474
+ $httpHeaders = $_SERVER;
475
+ }
476
+ // clear existing headers
477
+ $this->httpHeaders = array();
478
+ // Only save HTTP headers. In PHP land, that means only _SERVER vars that
479
+ // start with HTTP_.
480
+ foreach ($httpHeaders as $key => $value)
481
+ {
482
+ if (substr($key, 0, 5) === 'HTTP_')
483
+ {
484
+ $this->httpHeaders[$key] = $value;
485
+ }
486
+ }
487
+ }
488
+
489
+ public function getUaHttpHeaders()
490
+ {
491
+ return self::$uaHttpHeaders;
492
+ }
493
+
494
+ public function setUserAgent($userAgent = null)
495
+ {
496
+ if (false === empty($userAgent))
497
+ {
498
+ return $this->userAgent = $userAgent;
499
+ } else
500
+ {
501
+ $this->userAgent = null;
502
+ foreach ($this->getUaHttpHeaders() as $altHeader)
503
+ {
504
+ if (false === empty($this->httpHeaders[$altHeader]))
505
+ { // @todo: should use getHttpHeader(), but it would be slow. (Serban)
506
+ $this->userAgent .= $this->httpHeaders[$altHeader] . ' ';
507
+ }
508
+ }
509
+
510
+ return $this->userAgent = (!empty($this->userAgent) ? trim($this->userAgent) : null);
511
+ }
512
+ }
513
+
514
+ public function getRegex()
515
+ {
516
+ return '(' . implode('|', self::$crawlers) . ')';
517
+ }
518
+
519
+ public function isCrawler($userAgent = null)
520
+ {
521
+ $agent = is_null($userAgent) ? $this->userAgent : $userAgent;
522
+
523
+ $result = preg_match('/' . $this->getRegex() . '/i', $agent, $matches);
524
+
525
+ if ($matches)
526
+ {
527
+ $this->matches = $matches;
528
+ }
529
+
530
+ return (bool) $result;
531
+ }
532
+
533
+ public function getMatches()
534
+ {
535
+ return $this->matches[0];
536
+ }
537
+
538
+ }
content-egg.php CHANGED
@@ -6,7 +6,7 @@ namespace ContentEgg;
6
  Plugin Name: Content Egg
7
  Plugin URI: http://www.keywordrush.com/contentegg
8
  Description: Easily adding auto updating products from affiliate systems and additional content to posts.
9
- Version: 1.9.0
10
  Author: keywordrush.com
11
  Author URI: http://www.keywordrush.com
12
  Text Domain: content-egg
6
  Plugin Name: Content Egg
7
  Plugin URI: http://www.keywordrush.com/contentegg
8
  Description: Easily adding auto updating products from affiliate systems and additional content to posts.
9
+ Version: 2.0.1
10
  Author: keywordrush.com
11
  Author URI: http://www.keywordrush.com
12
  Text Domain: content-egg
languages/content-egg-en_US.mo CHANGED
Binary file
languages/content-egg-en_US.po CHANGED
@@ -4,15 +4,15 @@ msgid ""
4
  msgstr ""
5
  "Project-Id-Version: Content Egg 1.1.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/content-egg\n"
7
- "POT-Creation-Date: 2015-10-07 13:23:03+00:00\n"
8
- "PO-Revision-Date: 2015-10-08 16:51+0200\n"
9
  "Last-Translator: Sizam themes <sizamtheme@gmail.com>\n"
10
  "Language-Team: \n"
11
  "Language: en_EN\n"
12
  "MIME-Version: 1.0\n"
13
  "Content-Type: text/plain; charset=UTF-8\n"
14
  "Content-Transfer-Encoding: 8bit\n"
15
- "X-Generator: Poedit 1.6.10\n"
16
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
 
18
  #: application/Autoupdate.php:83
@@ -20,13 +20,13 @@ msgid "Новая версия"
20
  msgstr "New version"
21
 
22
  #: application/admin/AutoblogController.php:28
23
- #: application/admin/views/autoblog_index.php:33
24
  msgid "Автоблоггинг"
25
  msgstr "Autoblogging"
26
 
27
  #: application/admin/AutoblogController.php:29
28
- #: application/admin/views/autoblog_edit.php:6
29
- #: application/admin/views/autoblog_index.php:34
30
  msgid "Добавить автоблоггинг"
31
  msgstr "Add autoblogging"
32
 
@@ -92,11 +92,11 @@ msgstr "Configure and activate modules of Content Egg plugin"
92
  msgid "Настройки"
93
  msgstr "Settings"
94
 
95
- #: application/admin/GeneralConfig.php:86
96
  msgid "Язык сайта"
97
  msgstr "Website language"
98
 
99
- #: application/admin/GeneralConfig.php:87
100
  msgid ""
101
  "Модули, которые имеют поддержку мультиязычности, будут отдавать предпочтение "
102
  "контенту на этом языке. Также эта настройка указывает на язык для "
@@ -105,6 +105,28 @@ msgstr ""
105
  "Modules, which have Multilanguage support, will have priority for this "
106
  "language. Also, this setting will point on language of output templates"
107
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
108
  #: application/admin/LicConfig.php:32
109
  msgid "Лицензия"
110
  msgstr "License"
@@ -171,14 +193,58 @@ msgstr "Go to "
171
  msgid "Код купона:"
172
  msgstr "Coupon code:"
173
 
174
- #: application/admin/views/autoblog_edit.php:4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
175
  msgid "Редактировать автоблоггинг"
176
  msgstr "Edit autoblogging"
177
 
178
- #: application/admin/views/autoblog_edit.php:8
179
  msgid "Назад к списку"
180
  msgstr "Back to list"
181
 
 
 
 
 
182
  #: application/admin/views/autoblog_index.php:2
183
  msgid "Работа автоблоггинга"
184
  msgstr "Work of autoblogging"
@@ -195,7 +261,7 @@ msgstr "Deleted tasks for autoblogging: "
195
  msgid "Автоблоггинг закончил работу"
196
  msgstr "Autoblogging finished tasks"
197
 
198
- #: application/admin/views/autoblog_index.php:40
199
  msgid ""
200
  "С помощью автоблоггинга вы можете настроить автоматическое создание постов."
201
  msgstr "You can create automatic creating of posts with autoblogging"
@@ -360,6 +426,7 @@ msgstr "This user will be author of posts."
360
  #: application/admin/views/autoblog_metabox.php:171
361
  #: application/modules/Aliexpress/AliexpressConfig.php:89
362
  #: application/modules/CjLinks/CjLinksConfig.php:125
 
363
  #: application/modules/Linkshare/LinkshareConfig.php:104
364
  msgid "Категория"
365
  msgstr "Category "
@@ -476,46 +543,6 @@ msgstr "General settings"
476
  msgid "Условия"
477
  msgstr "Conditions"
478
 
479
- #: application/admin/views/settings.php:89
480
- msgid "Работай, как профи"
481
- msgstr "Maximum profit with minimum efforts"
482
-
483
- #: application/admin/views/settings.php:91
484
- msgid "Все включено: контент + монетизация."
485
- msgstr "Many additional modules and extended functions."
486
-
487
- #: application/admin/views/settings.php:93
488
- msgid "Монетизация:"
489
- msgstr "Monetization"
490
-
491
- #: application/admin/views/settings.php:107
492
- msgid "Контент модули:"
493
- msgstr "Content modules"
494
-
495
- #: application/admin/views/settings.php:109
496
- msgid "Bing картинки"
497
- msgstr "Bing images"
498
-
499
- #: application/admin/views/settings.php:110
500
- msgid "Flickr фотографии"
501
- msgstr "Flickr Photo"
502
-
503
- #: application/admin/views/settings.php:111
504
- msgid "Google книги"
505
- msgstr "Google Books"
506
-
507
- #: application/admin/views/settings.php:112
508
- msgid "Google новости"
509
- msgstr "Google news"
510
-
511
- #: application/admin/views/settings.php:113
512
- msgid "Яндекс.Маркет"
513
- msgstr "Yandex.Market"
514
-
515
- #: application/admin/views/settings.php:115
516
- msgid "ВКонтакте новости"
517
- msgstr "Vkontakte news"
518
-
519
  #: application/components/AffiliateParserModuleConfig.php:19
520
  msgid ""
521
  "Время жини кэша в секундах, через которое необходимо обновить товары, если "
@@ -683,6 +710,7 @@ msgstr "The field \"Publisher Webservice Password\" can not be empty."
683
  #: application/modules/BingImages/BingImagesConfig.php:35
684
  #: application/modules/CjLinks/CjLinksConfig.php:50
685
  #: application/modules/CjProducts/CjProductsConfig.php:50
 
686
  #: application/modules/Ebay/EbayConfig.php:87
687
  #: application/modules/Flickr/FlickrConfig.php:35
688
  #: application/modules/Freebase/FreebaseConfig.php:35
@@ -692,6 +720,8 @@ msgstr "The field \"Publisher Webservice Password\" can not be empty."
692
  #: application/modules/GoogleNews/GoogleNewsConfig.php:20
693
  #: application/modules/Linkshare/LinkshareConfig.php:35
694
  #: application/modules/Market/MarketConfig.php:48
 
 
695
  #: application/modules/Twitter/TwitterConfig.php:80
696
  #: application/modules/VkNews/VkNewsConfig.php:20
697
  #: application/modules/Youtube/YoutubeConfig.php:35
@@ -705,6 +735,7 @@ msgstr "Results"
705
  #: application/modules/Amazon/AmazonConfig.php:67
706
  #: application/modules/CjLinks/CjLinksConfig.php:51
707
  #: application/modules/CjProducts/CjProductsConfig.php:51
 
708
  #: application/modules/Ebay/EbayConfig.php:88
709
  #: application/modules/GdeSlon/GdeSlonConfig.php:46
710
  #: application/modules/Linkshare/LinkshareConfig.php:36
@@ -718,6 +749,7 @@ msgstr "Number of results for one search query."
718
  #: application/modules/Amazon/AmazonConfig.php:82
719
  #: application/modules/CjLinks/CjLinksConfig.php:61
720
  #: application/modules/CjProducts/CjProductsConfig.php:61
 
721
  #: application/modules/Ebay/EbayConfig.php:103
722
  #: application/modules/GdeSlon/GdeSlonConfig.php:61
723
  #: application/modules/Linkshare/LinkshareConfig.php:46
@@ -731,6 +763,7 @@ msgstr "Results for updates "
731
  #: application/modules/Amazon/AmazonConfig.php:83
732
  #: application/modules/CjLinks/CjLinksConfig.php:62
733
  #: application/modules/CjProducts/CjProductsConfig.php:62
 
734
  #: application/modules/Ebay/EbayConfig.php:104
735
  #: application/modules/GdeSlon/GdeSlonConfig.php:62
736
  #: application/modules/Linkshare/LinkshareConfig.php:47
@@ -798,6 +831,7 @@ msgstr "Save images on server"
798
 
799
  #: application/modules/AffilinetProducts/AffilinetProductsConfig.php:172
800
  #: application/modules/CjProducts/CjProductsConfig.php:223
 
801
  #: application/modules/Flickr/FlickrConfig.php:111
802
  #: application/modules/Freebase/FreebaseConfig.php:74
803
  #: application/modules/GdeSlon/GdeSlonConfig.php:117
@@ -813,6 +847,7 @@ msgstr "Trim description"
813
 
814
  #: application/modules/AffilinetProducts/AffilinetProductsConfig.php:173
815
  #: application/modules/CjProducts/CjProductsConfig.php:224
 
816
  #: application/modules/Flickr/FlickrConfig.php:112
817
  #: application/modules/Freebase/FreebaseConfig.php:75
818
  #: application/modules/GdeSlon/GdeSlonConfig.php:118
@@ -938,6 +973,7 @@ msgstr "Max number of partner sales for last month. Example, 456"
938
 
939
  #: application/modules/Aliexpress/AliexpressConfig.php:178
940
  #: application/modules/CjProducts/CjProductsConfig.php:156
 
941
  #: application/modules/Ebay/EbayConfig.php:119
942
  #: application/modules/Flickr/FlickrConfig.php:57
943
  #: application/modules/GdeSlon/GdeSlonConfig.php:77
@@ -1148,79 +1184,65 @@ msgid "Неважно"
1148
  msgstr "Any"
1149
 
1150
  #: application/modules/Amazon/AmazonConfig.php:206
1151
- msgid "Парсить отзывы"
1152
- msgstr "Parse reviews"
1153
 
1154
  #: application/modules/Amazon/AmazonConfig.php:207
1155
- msgid "Парсить отзывы покупателей по товарам. Это замедляет получение данных."
1156
- msgstr "Parse customers reviews of products. This slows the receiving of data."
1157
-
1158
- #: application/modules/Amazon/AmazonConfig.php:213
1159
- msgid "Отзывы в iframe."
1160
- msgstr "Reviews in iframe."
1161
-
1162
- #: application/modules/Amazon/AmazonConfig.php:214
1163
  msgid ""
1164
- "Показывать отзывы покупателей в iframe с amazon (отключение этой опции, "
1165
- "возможно, нарушает правила партнерской программы amazon)."
 
1166
  msgstr ""
1167
- "Show customer reviews in iframe with amazon (disabling this option possibly "
1168
- "violates the rules of the affiliate program of amazon)."
 
1169
 
1170
- #: application/modules/Amazon/AmazonConfig.php:220
1171
  #: application/modules/Market/MarketConfig.php:138
1172
  msgid "Обрезать отзывы"
1173
  msgstr "Cut reviews"
1174
 
1175
- #: application/modules/Amazon/AmazonConfig.php:221
1176
  msgid ""
1177
  "Количество символов для одного отзыва. 0 - максимально возможная длина "
1178
  "текста."
1179
  msgstr ""
1180
  "Number of characters for one review. 0 - the maximal length of the text."
1181
 
1182
- #: application/modules/Amazon/AmazonConfig.php:231
1183
- msgid "Товар с отзывами"
1184
- msgstr "Products with reviews"
1185
-
1186
- #: application/modules/Amazon/AmazonConfig.php:232
1187
- msgid "Парсить отзывы только для заданного количества товаров."
1188
- msgstr "Parse reviews only for a certain amount of products."
1189
-
1190
- #: application/modules/Amazon/AmazonConfig.php:242
1191
  msgid "Парсить отписание"
1192
  msgstr "Parse description"
1193
 
1194
- #: application/modules/Amazon/AmazonConfig.php:243
1195
  msgid "Парсить описание товаров от продавца."
1196
  msgstr "Parse description of products from seller"
1197
 
1198
- #: application/modules/Amazon/AmazonConfig.php:249
1199
  msgid "Вид описания"
1200
  msgstr "Type of description"
1201
 
1202
- #: application/modules/Amazon/AmazonConfig.php:253
1203
  msgid "Как на Amazon"
1204
  msgstr "Like on Amazon"
1205
 
1206
- #: application/modules/Amazon/AmazonConfig.php:254
1207
  msgid "Безопасный HTML"
1208
  msgstr "Safe HTML"
1209
 
1210
- #: application/modules/Amazon/AmazonConfig.php:255
1211
  msgid "Только разрешенные теги HTML"
1212
  msgstr "Only allowed HTML tags"
1213
 
1214
- #: application/modules/Amazon/AmazonConfig.php:256
1215
  msgid "Только текст"
1216
  msgstr "Text only"
1217
 
1218
- #: application/modules/Amazon/AmazonConfig.php:262
1219
  #: application/modules/Ebay/EbayConfig.php:323
1220
  msgid "Размер описания"
1221
  msgstr "Size of description"
1222
 
1223
- #: application/modules/Amazon/AmazonConfig.php:263
1224
  #: application/modules/Ebay/EbayConfig.php:324
1225
  msgid "Максимальный размер описания товара. 0 - не обрезать."
1226
  msgstr "The maximum size of the item description. 0 - do not cut."
@@ -1286,6 +1308,7 @@ msgid "90%"
1286
  msgstr "90%"
1287
 
1288
  #: application/modules/BingImages/BingImagesConfig.php:21
 
1289
  msgid ""
1290
  "Ключ доступа к Bing API. Получить можно <a href=\"https://datamarket.azure."
1291
  "com/account/keys\">здесь</a> (потребуется аккаунт в bing)."
@@ -1294,6 +1317,7 @@ msgstr ""
1294
  "account/keys\">here</a> (need bing account)."
1295
 
1296
  #: application/modules/BingImages/BingImagesConfig.php:29
 
1297
  #: application/modules/Twitter/TwitterConfig.php:29
1298
  #: application/modules/Twitter/TwitterConfig.php:44
1299
  #: application/modules/Twitter/TwitterConfig.php:59
@@ -1306,6 +1330,9 @@ msgid "Количество результатов для одного запр
1306
  msgstr "Number of results for a single query."
1307
 
1308
  #: application/modules/BingImages/BingImagesConfig.php:45
 
 
 
1309
  #: application/modules/Zanox/ZanoxConfig.php:56
1310
  #: application/modules/Zanox/ZanoxConfig.php:72
1311
  msgid "Поле \"Результатов\" не может быть больше 50."
@@ -1318,6 +1345,8 @@ msgstr "The field \"Results\" can not be more than 50."
1318
  #: application/modules/GoogleImages/GoogleImagesConfig.php:51
1319
  #: application/modules/GoogleNews/GoogleNewsConfig.php:36
1320
  #: application/modules/Market/MarketConfig.php:64
 
 
1321
  #: application/modules/Twitter/TwitterConfig.php:96
1322
  #: application/modules/VkNews/VkNewsConfig.php:31
1323
  #: application/modules/Youtube/YoutubeConfig.php:46
@@ -1331,6 +1360,8 @@ msgstr "Results for autoblogging "
1331
  #: application/modules/GoogleImages/GoogleImagesConfig.php:52
1332
  #: application/modules/GoogleNews/GoogleNewsConfig.php:37
1333
  #: application/modules/Market/MarketConfig.php:65
 
 
1334
  #: application/modules/Twitter/TwitterConfig.php:97
1335
  #: application/modules/VkNews/VkNewsConfig.php:32
1336
  #: application/modules/Youtube/YoutubeConfig.php:47
@@ -1338,6 +1369,8 @@ msgid "Количество результатов для автоблоггин
1338
  msgstr "Number of results for autoblogging."
1339
 
1340
  #: application/modules/BingImages/BingImagesConfig.php:61
 
 
1341
  msgid "Поле \"Результатов для автоблоггинга\" не может быть больше 50."
1342
  msgstr "Field \"Results for autoblogging\" can not be more than 50."
1343
 
@@ -1403,6 +1436,11 @@ msgstr "Portraits"
1403
  msgid "Не содержит лиц"
1404
  msgstr "Does not contain faces"
1405
 
 
 
 
 
 
1406
  #: application/modules/BingImages/BingImagesConfig.php:96
1407
  msgid "Ограничить поиск только этим доменом. Например, задайте: wikimedia.org"
1408
  msgstr "Limit the search to only that domain. For example ask: wikimedia.org"
@@ -1442,6 +1480,7 @@ msgstr "Advertisers"
1442
 
1443
  #: application/modules/CjLinks/CjLinksConfig.php:86
1444
  #: application/modules/CjLinks/CjLinksConfig.php:111
 
1445
  msgid "Любой"
1446
  msgstr "Any"
1447
 
@@ -1490,6 +1529,30 @@ msgstr ""
1490
  "Adds products from CJ.com. You must have approval from each program "
1491
  "separately."
1492
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1493
  #: application/modules/Ebay/EbayConfig.php:22
1494
  msgid ""
1495
  "Ваш ID для доступа к eBay API. Поучить ключ вы можете в <a href=\"http://"
@@ -1761,6 +1824,8 @@ msgstr ""
1761
  #: application/modules/GoogleBooks/GoogleBooksConfig.php:36
1762
  #: application/modules/GoogleNews/GoogleNewsConfig.php:21
1763
  #: application/modules/Market/MarketConfig.php:49
 
 
1764
  #: application/modules/Twitter/TwitterConfig.php:81
1765
  #: application/modules/VkNews/VkNewsConfig.php:21
1766
  #: application/modules/Youtube/YoutubeConfig.php:36
@@ -2282,9 +2347,42 @@ msgstr "Size of reviews in characters (0 - do not cut)"
2282
  msgid "Добавляет товары из русскоязычного каталога Яндекс.Маркет"
2283
  msgstr "Add products from the Russian-speaking catalog of Yandex.Market"
2284
 
2285
- #: application/modules/Market/templates/data_item.php:130
2286
- msgid "All reviews on Yandex.Market"
2287
- msgstr "All reviews on Yandex.Market"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2288
 
2289
  #: application/modules/Twitter/TwitterConfig.php:21
2290
  #: application/modules/Twitter/TwitterConfig.php:36
@@ -2453,11 +2551,11 @@ msgstr "http://www.keywordrush.com/en/contentegg"
2453
 
2454
  #. Description of the plugin/theme
2455
  msgid ""
2456
- "Plugin for adding additional content for your posts. Let you to earn money "
2457
- "from affiliate programs."
2458
  msgstr ""
2459
- "Plugin for adding additional content for your posts. Let you to earn money "
2460
- "from affiliate programs."
2461
 
2462
  #. Author of the plugin/theme
2463
  msgid "keywordrush.com"
@@ -2467,6 +2565,40 @@ msgstr "keywordrush.com"
2467
  msgid "http://www.keywordrush.com"
2468
  msgstr "http://www.keywordrush.com/en"
2469
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2470
  #~ msgid ""
2471
  #~ "Вы используете Wordpress %s. <em>%s</em> требует минимум "
2472
  #~ "<strong>Wordpress %s</strong>."
@@ -2529,9 +2661,6 @@ msgstr "http://www.keywordrush.com/en"
2529
  #~ msgid "бесплатно"
2530
  #~ msgstr "free"
2531
 
2532
- #~ msgid "Отзывы покупателей"
2533
- #~ msgstr "Customer reviews"
2534
-
2535
  #~ msgid "Достоинства:"
2536
  #~ msgstr "Positives:"
2537
 
4
  msgstr ""
5
  "Project-Id-Version: Content Egg 1.1.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/content-egg\n"
7
+ "POT-Creation-Date: 2015-10-31 06:43:29+00:00\n"
8
+ "PO-Revision-Date: 2015-10-31 08:46+0200\n"
9
  "Last-Translator: Sizam themes <sizamtheme@gmail.com>\n"
10
  "Language-Team: \n"
11
  "Language: en_EN\n"
12
  "MIME-Version: 1.0\n"
13
  "Content-Type: text/plain; charset=UTF-8\n"
14
  "Content-Transfer-Encoding: 8bit\n"
15
+ "X-Generator: Poedit 1.6.5\n"
16
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
 
18
  #: application/Autoupdate.php:83
20
  msgstr "New version"
21
 
22
  #: application/admin/AutoblogController.php:28
23
+ #: application/admin/views/autoblog_index.php:37
24
  msgid "Автоблоггинг"
25
  msgstr "Autoblogging"
26
 
27
  #: application/admin/AutoblogController.php:29
28
+ #: application/admin/views/autoblog_edit.php:9
29
+ #: application/admin/views/autoblog_index.php:38
30
  msgid "Добавить автоблоггинг"
31
  msgstr "Add autoblogging"
32
 
92
  msgid "Настройки"
93
  msgstr "Settings"
94
 
95
+ #: application/admin/GeneralConfig.php:89
96
  msgid "Язык сайта"
97
  msgstr "Website language"
98
 
99
+ #: application/admin/GeneralConfig.php:90
100
  msgid ""
101
  "Модули, которые имеют поддержку мультиязычности, будут отдавать предпочтение "
102
  "контенту на этом языке. Также эта настройка указывает на язык для "
105
  "Modules, which have Multilanguage support, will have priority for this "
106
  "language. Also, this setting will point on language of output templates"
107
 
108
+ #: application/admin/GeneralConfig.php:98
109
+ msgid "К каким типам постов добавить Content Egg metabox?"
110
+ msgstr "What post types do you want to use for Content Egg?"
111
+
112
+ #: application/admin/GeneralConfig.php:105
113
+ msgid "Фильтровать ботов"
114
+ msgstr "Filter bots"
115
+
116
+ #: application/admin/GeneralConfig.php:106
117
+ msgid "Боты не могут запускать парсеры."
118
+ msgstr "Bots can't activate parsers."
119
+
120
+ #: application/admin/GeneralConfig.php:107
121
+ msgid ""
122
+ "Обновление цены, а также обновление выдачи по ключевому слову происходит при "
123
+ "открытии страницы поста. Если мы определим по useragent, что на страницу "
124
+ "зашел один из известных ботов, никакие парсеры запускаться не будут."
125
+ msgstr ""
126
+ "Updating price and keyword updating is made with page opening. If we "
127
+ "determine by useragent, that page is opened one of known bot, no parsers "
128
+ "will not work in this case."
129
+
130
  #: application/admin/LicConfig.php:32
131
  msgid "Лицензия"
132
  msgstr "License"
193
  msgid "Код купона:"
194
  msgstr "Coupon code:"
195
 
196
+ #: application/admin/views/_promo_box.php:3
197
+ msgid "Работай, как профи"
198
+ msgstr "Maximum profit with minimum efforts"
199
+
200
+ #: application/admin/views/_promo_box.php:9
201
+ msgid "Все включено: контент + монетизация."
202
+ msgstr "Many additional modules and extended functions."
203
+
204
+ #: application/admin/views/_promo_box.php:11
205
+ msgid "Монетизация:"
206
+ msgstr "Monetization"
207
+
208
+ #: application/admin/views/_promo_box.php:26
209
+ msgid "Контент модули:"
210
+ msgstr "Content modules"
211
+
212
+ #: application/admin/views/_promo_box.php:28
213
+ msgid "Bing картинки"
214
+ msgstr "Bing images"
215
+
216
+ #: application/admin/views/_promo_box.php:29
217
+ msgid "Flickr фотографии"
218
+ msgstr "Flickr Photo"
219
+
220
+ #: application/admin/views/_promo_box.php:30
221
+ msgid "Google книги"
222
+ msgstr "Google Books"
223
+
224
+ #: application/admin/views/_promo_box.php:31
225
+ msgid "Google новости"
226
+ msgstr "Google news"
227
+
228
+ #: application/admin/views/_promo_box.php:32
229
+ msgid "Яндекс.Маркет"
230
+ msgstr "Yandex.Market"
231
+
232
+ #: application/admin/views/_promo_box.php:34
233
+ msgid "ВКонтакте новости"
234
+ msgstr "Vkontakte news"
235
+
236
+ #: application/admin/views/autoblog_edit.php:7
237
  msgid "Редактировать автоблоггинг"
238
  msgstr "Edit autoblogging"
239
 
240
+ #: application/admin/views/autoblog_edit.php:11
241
  msgid "Назад к списку"
242
  msgstr "Back to list"
243
 
244
+ #: application/admin/views/autoblog_edit.php:33
245
+ msgid "Сохранить"
246
+ msgstr "Save"
247
+
248
  #: application/admin/views/autoblog_index.php:2
249
  msgid "Работа автоблоггинга"
250
  msgstr "Work of autoblogging"
261
  msgid "Автоблоггинг закончил работу"
262
  msgstr "Autoblogging finished tasks"
263
 
264
+ #: application/admin/views/autoblog_index.php:44
265
  msgid ""
266
  "С помощью автоблоггинга вы можете настроить автоматическое создание постов."
267
  msgstr "You can create automatic creating of posts with autoblogging"
426
  #: application/admin/views/autoblog_metabox.php:171
427
  #: application/modules/Aliexpress/AliexpressConfig.php:89
428
  #: application/modules/CjLinks/CjLinksConfig.php:125
429
+ #: application/modules/Clickbank/ClickbankConfig.php:67
430
  #: application/modules/Linkshare/LinkshareConfig.php:104
431
  msgid "Категория"
432
  msgstr "Category "
543
  msgid "Условия"
544
  msgstr "Conditions"
545
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
546
  #: application/components/AffiliateParserModuleConfig.php:19
547
  msgid ""
548
  "Время жини кэша в секундах, через которое необходимо обновить товары, если "
710
  #: application/modules/BingImages/BingImagesConfig.php:35
711
  #: application/modules/CjLinks/CjLinksConfig.php:50
712
  #: application/modules/CjProducts/CjProductsConfig.php:50
713
+ #: application/modules/Clickbank/ClickbankConfig.php:35
714
  #: application/modules/Ebay/EbayConfig.php:87
715
  #: application/modules/Flickr/FlickrConfig.php:35
716
  #: application/modules/Freebase/FreebaseConfig.php:35
720
  #: application/modules/GoogleNews/GoogleNewsConfig.php:20
721
  #: application/modules/Linkshare/LinkshareConfig.php:35
722
  #: application/modules/Market/MarketConfig.php:48
723
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:35
724
+ #: application/modules/RssFetcher/RssFetcherConfig.php:35
725
  #: application/modules/Twitter/TwitterConfig.php:80
726
  #: application/modules/VkNews/VkNewsConfig.php:20
727
  #: application/modules/Youtube/YoutubeConfig.php:35
735
  #: application/modules/Amazon/AmazonConfig.php:67
736
  #: application/modules/CjLinks/CjLinksConfig.php:51
737
  #: application/modules/CjProducts/CjProductsConfig.php:51
738
+ #: application/modules/Clickbank/ClickbankConfig.php:36
739
  #: application/modules/Ebay/EbayConfig.php:88
740
  #: application/modules/GdeSlon/GdeSlonConfig.php:46
741
  #: application/modules/Linkshare/LinkshareConfig.php:36
749
  #: application/modules/Amazon/AmazonConfig.php:82
750
  #: application/modules/CjLinks/CjLinksConfig.php:61
751
  #: application/modules/CjProducts/CjProductsConfig.php:61
752
+ #: application/modules/Clickbank/ClickbankConfig.php:51
753
  #: application/modules/Ebay/EbayConfig.php:103
754
  #: application/modules/GdeSlon/GdeSlonConfig.php:61
755
  #: application/modules/Linkshare/LinkshareConfig.php:46
763
  #: application/modules/Amazon/AmazonConfig.php:83
764
  #: application/modules/CjLinks/CjLinksConfig.php:62
765
  #: application/modules/CjProducts/CjProductsConfig.php:62
766
+ #: application/modules/Clickbank/ClickbankConfig.php:52
767
  #: application/modules/Ebay/EbayConfig.php:104
768
  #: application/modules/GdeSlon/GdeSlonConfig.php:62
769
  #: application/modules/Linkshare/LinkshareConfig.php:47
831
 
832
  #: application/modules/AffilinetProducts/AffilinetProductsConfig.php:172
833
  #: application/modules/CjProducts/CjProductsConfig.php:223
834
+ #: application/modules/Clickbank/ClickbankConfig.php:158
835
  #: application/modules/Flickr/FlickrConfig.php:111
836
  #: application/modules/Freebase/FreebaseConfig.php:74
837
  #: application/modules/GdeSlon/GdeSlonConfig.php:117
847
 
848
  #: application/modules/AffilinetProducts/AffilinetProductsConfig.php:173
849
  #: application/modules/CjProducts/CjProductsConfig.php:224
850
+ #: application/modules/Clickbank/ClickbankConfig.php:159
851
  #: application/modules/Flickr/FlickrConfig.php:112
852
  #: application/modules/Freebase/FreebaseConfig.php:75
853
  #: application/modules/GdeSlon/GdeSlonConfig.php:118
973
 
974
  #: application/modules/Aliexpress/AliexpressConfig.php:178
975
  #: application/modules/CjProducts/CjProductsConfig.php:156
976
+ #: application/modules/Clickbank/ClickbankConfig.php:100
977
  #: application/modules/Ebay/EbayConfig.php:119
978
  #: application/modules/Flickr/FlickrConfig.php:57
979
  #: application/modules/GdeSlon/GdeSlonConfig.php:77
1184
  msgstr "Any"
1185
 
1186
  #: application/modules/Amazon/AmazonConfig.php:206
1187
+ msgid "Отзывы покупателей"
1188
+ msgstr "Customer reviews"
1189
 
1190
  #: application/modules/Amazon/AmazonConfig.php:207
 
 
 
 
 
 
 
 
1191
  msgid ""
1192
+ "Получить отзывы покупателей. Отзывы будут показаны в iframe. iframe URL "
1193
+ "валидный 24 часа, используйте функцию автообноления, чтобы держать URL в "
1194
+ "актуальном состоянии."
1195
  msgstr ""
1196
+ "Get user reviews. Reviews will be in iframe. Iframe url is valid only 24 "
1197
+ "hours, please, use autoupdating function with less than 24 hour to keep "
1198
+ "actual url."
1199
 
1200
+ #: application/modules/Amazon/AmazonConfig.php:222
1201
  #: application/modules/Market/MarketConfig.php:138
1202
  msgid "Обрезать отзывы"
1203
  msgstr "Cut reviews"
1204
 
1205
+ #: application/modules/Amazon/AmazonConfig.php:223
1206
  msgid ""
1207
  "Количество символов для одного отзыва. 0 - максимально возможная длина "
1208
  "текста."
1209
  msgstr ""
1210
  "Number of characters for one review. 0 - the maximal length of the text."
1211
 
1212
+ #: application/modules/Amazon/AmazonConfig.php:247
 
 
 
 
 
 
 
 
1213
  msgid "Парсить отписание"
1214
  msgstr "Parse description"
1215
 
1216
+ #: application/modules/Amazon/AmazonConfig.php:248
1217
  msgid "Парсить описание товаров от продавца."
1218
  msgstr "Parse description of products from seller"
1219
 
1220
+ #: application/modules/Amazon/AmazonConfig.php:254
1221
  msgid "Вид описания"
1222
  msgstr "Type of description"
1223
 
1224
+ #: application/modules/Amazon/AmazonConfig.php:258
1225
  msgid "Как на Amazon"
1226
  msgstr "Like on Amazon"
1227
 
1228
+ #: application/modules/Amazon/AmazonConfig.php:259
1229
  msgid "Безопасный HTML"
1230
  msgstr "Safe HTML"
1231
 
1232
+ #: application/modules/Amazon/AmazonConfig.php:260
1233
  msgid "Только разрешенные теги HTML"
1234
  msgstr "Only allowed HTML tags"
1235
 
1236
+ #: application/modules/Amazon/AmazonConfig.php:261
1237
  msgid "Только текст"
1238
  msgstr "Text only"
1239
 
1240
+ #: application/modules/Amazon/AmazonConfig.php:267
1241
  #: application/modules/Ebay/EbayConfig.php:323
1242
  msgid "Размер описания"
1243
  msgstr "Size of description"
1244
 
1245
+ #: application/modules/Amazon/AmazonConfig.php:268
1246
  #: application/modules/Ebay/EbayConfig.php:324
1247
  msgid "Максимальный размер описания товара. 0 - не обрезать."
1248
  msgstr "The maximum size of the item description. 0 - do not cut."
1308
  msgstr "90%"
1309
 
1310
  #: application/modules/BingImages/BingImagesConfig.php:21
1311
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:21
1312
  msgid ""
1313
  "Ключ доступа к Bing API. Получить можно <a href=\"https://datamarket.azure."
1314
  "com/account/keys\">здесь</a> (потребуется аккаунт в bing)."
1317
  "account/keys\">here</a> (need bing account)."
1318
 
1319
  #: application/modules/BingImages/BingImagesConfig.php:29
1320
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:29
1321
  #: application/modules/Twitter/TwitterConfig.php:29
1322
  #: application/modules/Twitter/TwitterConfig.php:44
1323
  #: application/modules/Twitter/TwitterConfig.php:59
1330
  msgstr "Number of results for a single query."
1331
 
1332
  #: application/modules/BingImages/BingImagesConfig.php:45
1333
+ #: application/modules/Clickbank/ClickbankConfig.php:45
1334
+ #: application/modules/Clickbank/ClickbankConfig.php:61
1335
+ #: application/modules/RssFetcher/RssFetcherConfig.php:45
1336
  #: application/modules/Zanox/ZanoxConfig.php:56
1337
  #: application/modules/Zanox/ZanoxConfig.php:72
1338
  msgid "Поле \"Результатов\" не может быть больше 50."
1345
  #: application/modules/GoogleImages/GoogleImagesConfig.php:51
1346
  #: application/modules/GoogleNews/GoogleNewsConfig.php:36
1347
  #: application/modules/Market/MarketConfig.php:64
1348
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:51
1349
+ #: application/modules/RssFetcher/RssFetcherConfig.php:51
1350
  #: application/modules/Twitter/TwitterConfig.php:96
1351
  #: application/modules/VkNews/VkNewsConfig.php:31
1352
  #: application/modules/Youtube/YoutubeConfig.php:46
1360
  #: application/modules/GoogleImages/GoogleImagesConfig.php:52
1361
  #: application/modules/GoogleNews/GoogleNewsConfig.php:37
1362
  #: application/modules/Market/MarketConfig.php:65
1363
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:52
1364
+ #: application/modules/RssFetcher/RssFetcherConfig.php:52
1365
  #: application/modules/Twitter/TwitterConfig.php:97
1366
  #: application/modules/VkNews/VkNewsConfig.php:32
1367
  #: application/modules/Youtube/YoutubeConfig.php:47
1369
  msgstr "Number of results for autoblogging."
1370
 
1371
  #: application/modules/BingImages/BingImagesConfig.php:61
1372
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:61
1373
+ #: application/modules/RssFetcher/RssFetcherConfig.php:61
1374
  msgid "Поле \"Результатов для автоблоггинга\" не может быть больше 50."
1375
  msgstr "Field \"Results for autoblogging\" can not be more than 50."
1376
 
1436
  msgid "Не содержит лиц"
1437
  msgstr "Does not contain faces"
1438
 
1439
+ #: application/modules/BingImages/BingImagesConfig.php:95
1440
+ #: application/modules/GoogleImages/GoogleImagesConfig.php:160
1441
+ msgid "Поиск по сайту"
1442
+ msgstr "Search"
1443
+
1444
  #: application/modules/BingImages/BingImagesConfig.php:96
1445
  msgid "Ограничить поиск только этим доменом. Например, задайте: wikimedia.org"
1446
  msgstr "Limit the search to only that domain. For example ask: wikimedia.org"
1480
 
1481
  #: application/modules/CjLinks/CjLinksConfig.php:86
1482
  #: application/modules/CjLinks/CjLinksConfig.php:111
1483
+ #: application/modules/Clickbank/ClickbankConfig.php:131
1484
  msgid "Любой"
1485
  msgstr "Any"
1486
 
1529
  "Adds products from CJ.com. You must have approval from each program "
1530
  "separately."
1531
 
1532
+ #: application/modules/Clickbank/ClickbankConfig.php:21
1533
+ msgid "Ваш nickname на ClickBank."
1534
+ msgstr "Your nickname on ClickBank."
1535
+
1536
+ #: application/modules/Clickbank/ClickbankConfig.php:29
1537
+ msgid "Поле \"ClickBank nickname\" не может быть пустым."
1538
+ msgstr "The field \"ClickBank nickname\" can not be empty."
1539
+
1540
+ #: application/modules/Clickbank/ClickbankConfig.php:117
1541
+ msgid "Минимум Gravity"
1542
+ msgstr "Minimum Gravity"
1543
+
1544
+ #: application/modules/Clickbank/ClickbankConfig.php:127
1545
+ msgid "Язык"
1546
+ msgstr "Language"
1547
+
1548
+ #: application/modules/Clickbank/ClickbankModule.php:26
1549
+ msgid "Добавляет офферы партнерской сети clickbank.com."
1550
+ msgstr "Adds goods from clickbank.com."
1551
+
1552
+ #: application/modules/Clickbank/ClickbankModule.php:26
1553
+ msgid "Модуль работает в тестовом режиме."
1554
+ msgstr "Module is in test mode."
1555
+
1556
  #: application/modules/Ebay/EbayConfig.php:22
1557
  msgid ""
1558
  "Ваш ID для доступа к eBay API. Поучить ключ вы можете в <a href=\"http://"
1824
  #: application/modules/GoogleBooks/GoogleBooksConfig.php:36
1825
  #: application/modules/GoogleNews/GoogleNewsConfig.php:21
1826
  #: application/modules/Market/MarketConfig.php:49
1827
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:36
1828
+ #: application/modules/RssFetcher/RssFetcherConfig.php:36
1829
  #: application/modules/Twitter/TwitterConfig.php:81
1830
  #: application/modules/VkNews/VkNewsConfig.php:21
1831
  #: application/modules/Youtube/YoutubeConfig.php:36
2347
  msgid "Добавляет товары из русскоязычного каталога Яндекс.Маркет"
2348
  msgstr "Add products from the Russian-speaking catalog of Yandex.Market"
2349
 
2350
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:45
2351
+ msgid "Поле \"Результатов\" не может быть больше 5ы0."
2352
+ msgstr "The field \"Results\" can not be more than 50."
2353
+
2354
+ #: application/modules/RelatedKeywords/RelatedKeywordsModule.php:26
2355
+ msgid "Находит родственные ключевые слова и выводит их в посте."
2356
+ msgstr "Finds relative keywords and shows them in post."
2357
+
2358
+ #: application/modules/RssFetcher/RssFetcherConfig.php:21
2359
+ msgid ""
2360
+ "Для подстановки текущего ключевого слова используйте <em>%KEYWORD%</em>."
2361
+ msgstr "For getting current keyword use <em>%KEYWORD%</em>."
2362
+
2363
+ #: application/modules/RssFetcher/RssFetcherConfig.php:29
2364
+ msgid "Поле \"RSS URL\" не может быть пустым."
2365
+ msgstr "Field \"RSS URL\" can not be empty"
2366
+
2367
+ #: application/modules/RssFetcher/RssFetcherConfig.php:67
2368
+ msgid "Разрешенные теги"
2369
+ msgstr "Allowed tags"
2370
+
2371
+ #: application/modules/RssFetcher/RssFetcherConfig.php:68
2372
+ msgid "Теги, которые разрешены в title и description."
2373
+ msgstr "Tags, which are allowed in title and description"
2374
+
2375
+ #: application/modules/RssFetcher/RssFetcherModule.php:25
2376
+ msgid "Парсит любую RSS-ленту."
2377
+ msgstr "Parse any RSS"
2378
+
2379
+ #: application/modules/RssFetcher/RssFetcherModule.php:26
2380
+ msgid ""
2381
+ "Важно, чтобы в URL была возможность использовать ключевое слово, т.е. лента "
2382
+ "должна содержать результаты поиска по ключевому слову."
2383
+ msgstr ""
2384
+ "It's important, that you can have keyword in URL. So rss string must have "
2385
+ "results by keyword searching."
2386
 
2387
  #: application/modules/Twitter/TwitterConfig.php:21
2388
  #: application/modules/Twitter/TwitterConfig.php:36
2551
 
2552
  #. Description of the plugin/theme
2553
  msgid ""
2554
+ "Easily adding auto updating products from affiliate systems and additional "
2555
+ "content to posts."
2556
  msgstr ""
2557
+ "Easily adding auto updating products from affiliate systems and additional "
2558
+ "content to posts."
2559
 
2560
  #. Author of the plugin/theme
2561
  msgid "keywordrush.com"
2565
  msgid "http://www.keywordrush.com"
2566
  msgstr "http://www.keywordrush.com/en"
2567
 
2568
+ #~ msgid "Парсить отзывы"
2569
+ #~ msgstr "Parse reviews"
2570
+
2571
+ #~ msgid ""
2572
+ #~ "Парсить отзывы покупателей по товарам. Это замедляет получение данных."
2573
+ #~ msgstr ""
2574
+ #~ "Parse customers reviews of products. This slows the receiving of data."
2575
+
2576
+ #~ msgid "Отзывы в iframe."
2577
+ #~ msgstr "Reviews in iframe."
2578
+
2579
+ #~ msgid ""
2580
+ #~ "Показывать отзывы покупателей в iframe с amazon (отключение этой опции, "
2581
+ #~ "возможно, нарушает правила партнерской программы amazon)."
2582
+ #~ msgstr ""
2583
+ #~ "Show customer reviews in iframe with amazon (disabling this option "
2584
+ #~ "possibly violates the rules of the affiliate program of amazon)."
2585
+
2586
+ #~ msgid "Товар с отзывами"
2587
+ #~ msgstr "Products with reviews"
2588
+
2589
+ #~ msgid "Парсить отзывы только для заданного количества товаров."
2590
+ #~ msgstr "Parse reviews only for a certain amount of products."
2591
+
2592
+ #~ msgid "All reviews on Yandex.Market"
2593
+ #~ msgstr "All reviews on Yandex.Market"
2594
+
2595
+ #~ msgid ""
2596
+ #~ "Plugin for adding additional content for your posts. Let you to earn "
2597
+ #~ "money from affiliate programs."
2598
+ #~ msgstr ""
2599
+ #~ "Plugin for adding additional content for your posts. Let you to earn "
2600
+ #~ "money from affiliate programs."
2601
+
2602
  #~ msgid ""
2603
  #~ "Вы используете Wordpress %s. <em>%s</em> требует минимум "
2604
  #~ "<strong>Wordpress %s</strong>."
2661
  #~ msgid "бесплатно"
2662
  #~ msgstr "free"
2663
 
 
 
 
2664
  #~ msgid "Достоинства:"
2665
  #~ msgstr "Positives:"
2666
 
languages/content-egg.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the Content Egg package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Content Egg 1.9.0\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/content-egg\n"
7
- "POT-Creation-Date: 2015-10-07 13:23:03+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -17,13 +17,13 @@ msgid "Новая версия"
17
  msgstr ""
18
 
19
  #: application/admin/AutoblogController.php:28
20
- #: application/admin/views/autoblog_index.php:33
21
  msgid "Автоблоггинг"
22
  msgstr ""
23
 
24
  #: application/admin/AutoblogController.php:29
25
- #: application/admin/views/autoblog_edit.php:6
26
- #: application/admin/views/autoblog_index.php:34
27
  msgid "Добавить автоблоггинг"
28
  msgstr ""
29
 
@@ -88,14 +88,30 @@ msgstr ""
88
  msgid "Настройки"
89
  msgstr ""
90
 
91
- #: application/admin/GeneralConfig.php:86
92
  msgid "Язык сайта"
93
  msgstr ""
94
 
95
- #: application/admin/GeneralConfig.php:87
96
  msgid "Модули, которые имеют поддержку мультиязычности, будут отдавать предпочтение контенту на этом языке. Также эта настройка указывает на язык для локализации шаблонов."
97
  msgstr ""
98
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
99
  #: application/admin/LicConfig.php:32
100
  msgid "Лицензия"
101
  msgstr ""
@@ -148,14 +164,58 @@ msgstr ""
148
  msgid "Код купона:"
149
  msgstr ""
150
 
151
- #: application/admin/views/autoblog_edit.php:4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
152
  msgid "Редактировать автоблоггинг"
153
  msgstr ""
154
 
155
- #: application/admin/views/autoblog_edit.php:8
156
  msgid "Назад к списку"
157
  msgstr ""
158
 
 
 
 
 
159
  #: application/admin/views/autoblog_index.php:2
160
  msgid "Работа автоблоггинга"
161
  msgstr ""
@@ -172,7 +232,7 @@ msgstr ""
172
  msgid "Автоблоггинг закончил работу"
173
  msgstr ""
174
 
175
- #: application/admin/views/autoblog_index.php:40
176
  msgid "С помощью автоблоггинга вы можете настроить автоматическое создание постов."
177
  msgstr ""
178
 
@@ -321,6 +381,7 @@ msgstr ""
321
  #: application/admin/views/autoblog_metabox.php:171
322
  #: application/modules/Aliexpress/AliexpressConfig.php:89
323
  #: application/modules/CjLinks/CjLinksConfig.php:125
 
324
  #: application/modules/Linkshare/LinkshareConfig.php:104
325
  msgid "Категория"
326
  msgstr ""
@@ -429,46 +490,6 @@ msgstr ""
429
  msgid "Условия"
430
  msgstr ""
431
 
432
- #: application/admin/views/settings.php:89
433
- msgid "Работай, как профи"
434
- msgstr ""
435
-
436
- #: application/admin/views/settings.php:91
437
- msgid "Все включено: контент + монетизация."
438
- msgstr ""
439
-
440
- #: application/admin/views/settings.php:93
441
- msgid "Монетизация:"
442
- msgstr ""
443
-
444
- #: application/admin/views/settings.php:107
445
- msgid "Контент модули:"
446
- msgstr ""
447
-
448
- #: application/admin/views/settings.php:109
449
- msgid "Bing картинки"
450
- msgstr ""
451
-
452
- #: application/admin/views/settings.php:110
453
- msgid "Flickr фотографии"
454
- msgstr ""
455
-
456
- #: application/admin/views/settings.php:111
457
- msgid "Google книги"
458
- msgstr ""
459
-
460
- #: application/admin/views/settings.php:112
461
- msgid "Google новости"
462
- msgstr ""
463
-
464
- #: application/admin/views/settings.php:113
465
- msgid "Яндекс.Маркет"
466
- msgstr ""
467
-
468
- #: application/admin/views/settings.php:115
469
- msgid "ВКонтакте новости"
470
- msgstr ""
471
-
472
  #: application/components/AffiliateParserModuleConfig.php:19
473
  msgid "Время жини кэша в секундах, через которое необходимо обновить товары, если задано ключевое слово для обновления. 0 - никогда не обновлять."
474
  msgstr ""
@@ -614,6 +635,7 @@ msgstr ""
614
  #: application/modules/BingImages/BingImagesConfig.php:35
615
  #: application/modules/CjLinks/CjLinksConfig.php:50
616
  #: application/modules/CjProducts/CjProductsConfig.php:50
 
617
  #: application/modules/Ebay/EbayConfig.php:87
618
  #: application/modules/Flickr/FlickrConfig.php:35
619
  #: application/modules/Freebase/FreebaseConfig.php:35
@@ -623,6 +645,8 @@ msgstr ""
623
  #: application/modules/GoogleNews/GoogleNewsConfig.php:20
624
  #: application/modules/Linkshare/LinkshareConfig.php:35
625
  #: application/modules/Market/MarketConfig.php:48
 
 
626
  #: application/modules/Twitter/TwitterConfig.php:80
627
  #: application/modules/VkNews/VkNewsConfig.php:20
628
  #: application/modules/Youtube/YoutubeConfig.php:35
@@ -636,6 +660,7 @@ msgstr ""
636
  #: application/modules/Amazon/AmazonConfig.php:67
637
  #: application/modules/CjLinks/CjLinksConfig.php:51
638
  #: application/modules/CjProducts/CjProductsConfig.php:51
 
639
  #: application/modules/Ebay/EbayConfig.php:88
640
  #: application/modules/GdeSlon/GdeSlonConfig.php:46
641
  #: application/modules/Linkshare/LinkshareConfig.php:36
@@ -649,6 +674,7 @@ msgstr ""
649
  #: application/modules/Amazon/AmazonConfig.php:82
650
  #: application/modules/CjLinks/CjLinksConfig.php:61
651
  #: application/modules/CjProducts/CjProductsConfig.php:61
 
652
  #: application/modules/Ebay/EbayConfig.php:103
653
  #: application/modules/GdeSlon/GdeSlonConfig.php:61
654
  #: application/modules/Linkshare/LinkshareConfig.php:46
@@ -662,6 +688,7 @@ msgstr ""
662
  #: application/modules/Amazon/AmazonConfig.php:83
663
  #: application/modules/CjLinks/CjLinksConfig.php:62
664
  #: application/modules/CjProducts/CjProductsConfig.php:62
 
665
  #: application/modules/Ebay/EbayConfig.php:104
666
  #: application/modules/GdeSlon/GdeSlonConfig.php:62
667
  #: application/modules/Linkshare/LinkshareConfig.php:47
@@ -721,6 +748,7 @@ msgstr ""
721
 
722
  #: application/modules/AffilinetProducts/AffilinetProductsConfig.php:172
723
  #: application/modules/CjProducts/CjProductsConfig.php:223
 
724
  #: application/modules/Flickr/FlickrConfig.php:111
725
  #: application/modules/Freebase/FreebaseConfig.php:74
726
  #: application/modules/GdeSlon/GdeSlonConfig.php:117
@@ -736,6 +764,7 @@ msgstr ""
736
 
737
  #: application/modules/AffilinetProducts/AffilinetProductsConfig.php:173
738
  #: application/modules/CjProducts/CjProductsConfig.php:224
 
739
  #: application/modules/Flickr/FlickrConfig.php:112
740
  #: application/modules/Freebase/FreebaseConfig.php:75
741
  #: application/modules/GdeSlon/GdeSlonConfig.php:118
@@ -838,6 +867,7 @@ msgstr ""
838
 
839
  #: application/modules/Aliexpress/AliexpressConfig.php:178
840
  #: application/modules/CjProducts/CjProductsConfig.php:156
 
841
  #: application/modules/Ebay/EbayConfig.php:119
842
  #: application/modules/Flickr/FlickrConfig.php:57
843
  #: application/modules/GdeSlon/GdeSlonConfig.php:77
@@ -1007,72 +1037,56 @@ msgid "Неважно"
1007
  msgstr ""
1008
 
1009
  #: application/modules/Amazon/AmazonConfig.php:206
1010
- msgid "Парсить отзывы"
1011
  msgstr ""
1012
 
1013
  #: application/modules/Amazon/AmazonConfig.php:207
1014
- msgid "Парсить отзывы покупателей по товарам. Это замедляет получение данных."
1015
- msgstr ""
1016
-
1017
- #: application/modules/Amazon/AmazonConfig.php:213
1018
- msgid "Отзывы в iframe."
1019
  msgstr ""
1020
 
1021
- #: application/modules/Amazon/AmazonConfig.php:214
1022
- msgid "Показывать отзывы покупателей в iframe с amazon (отключение этой опции, возможно, нарушает правила партнерской программы amazon)."
1023
- msgstr ""
1024
-
1025
- #: application/modules/Amazon/AmazonConfig.php:220
1026
  #: application/modules/Market/MarketConfig.php:138
1027
  msgid "Обрезать отзывы"
1028
  msgstr ""
1029
 
1030
- #: application/modules/Amazon/AmazonConfig.php:221
1031
  msgid "Количество символов для одного отзыва. 0 - максимально возможная длина текста."
1032
  msgstr ""
1033
 
1034
- #: application/modules/Amazon/AmazonConfig.php:231
1035
- msgid "Товар с отзывами"
1036
- msgstr ""
1037
-
1038
- #: application/modules/Amazon/AmazonConfig.php:232
1039
- msgid "Парсить отзывы только для заданного количества товаров."
1040
- msgstr ""
1041
-
1042
- #: application/modules/Amazon/AmazonConfig.php:242
1043
  msgid "Парсить отписание"
1044
  msgstr ""
1045
 
1046
- #: application/modules/Amazon/AmazonConfig.php:243
1047
  msgid "Парсить описание товаров от продавца."
1048
  msgstr ""
1049
 
1050
- #: application/modules/Amazon/AmazonConfig.php:249
1051
  msgid "Вид описания"
1052
  msgstr ""
1053
 
1054
- #: application/modules/Amazon/AmazonConfig.php:253
1055
  msgid "Как на Amazon"
1056
  msgstr ""
1057
 
1058
- #: application/modules/Amazon/AmazonConfig.php:254
1059
  msgid "Безопасный HTML"
1060
  msgstr ""
1061
 
1062
- #: application/modules/Amazon/AmazonConfig.php:255
1063
  msgid "Только разрешенные теги HTML"
1064
  msgstr ""
1065
 
1066
- #: application/modules/Amazon/AmazonConfig.php:256
1067
  msgid "Только текст"
1068
  msgstr ""
1069
 
1070
- #: application/modules/Amazon/AmazonConfig.php:262
1071
  #: application/modules/Ebay/EbayConfig.php:323
1072
  msgid "Размер описания"
1073
  msgstr ""
1074
 
1075
- #: application/modules/Amazon/AmazonConfig.php:263
1076
  #: application/modules/Ebay/EbayConfig.php:324
1077
  msgid "Максимальный размер описания товара. 0 - не обрезать."
1078
  msgstr ""
@@ -1138,10 +1152,12 @@ msgid "90%"
1138
  msgstr ""
1139
 
1140
  #: application/modules/BingImages/BingImagesConfig.php:21
 
1141
  msgid "Ключ доступа к Bing API. Получить можно <a href=\"https://datamarket.azure.com/account/keys\">здесь</a> (потребуется аккаунт в bing)."
1142
  msgstr ""
1143
 
1144
  #: application/modules/BingImages/BingImagesConfig.php:29
 
1145
  #: application/modules/Twitter/TwitterConfig.php:29
1146
  #: application/modules/Twitter/TwitterConfig.php:44
1147
  #: application/modules/Twitter/TwitterConfig.php:59
@@ -1154,6 +1170,9 @@ msgid "Количество результатов для одного запр
1154
  msgstr ""
1155
 
1156
  #: application/modules/BingImages/BingImagesConfig.php:45
 
 
 
1157
  #: application/modules/Zanox/ZanoxConfig.php:56
1158
  #: application/modules/Zanox/ZanoxConfig.php:72
1159
  msgid "Поле \"Результатов\" не может быть больше 50."
@@ -1166,6 +1185,8 @@ msgstr ""
1166
  #: application/modules/GoogleImages/GoogleImagesConfig.php:51
1167
  #: application/modules/GoogleNews/GoogleNewsConfig.php:36
1168
  #: application/modules/Market/MarketConfig.php:64
 
 
1169
  #: application/modules/Twitter/TwitterConfig.php:96
1170
  #: application/modules/VkNews/VkNewsConfig.php:31
1171
  #: application/modules/Youtube/YoutubeConfig.php:46
@@ -1179,6 +1200,8 @@ msgstr ""
1179
  #: application/modules/GoogleImages/GoogleImagesConfig.php:52
1180
  #: application/modules/GoogleNews/GoogleNewsConfig.php:37
1181
  #: application/modules/Market/MarketConfig.php:65
 
 
1182
  #: application/modules/Twitter/TwitterConfig.php:97
1183
  #: application/modules/VkNews/VkNewsConfig.php:32
1184
  #: application/modules/Youtube/YoutubeConfig.php:47
@@ -1186,6 +1209,8 @@ msgid "Количество результатов для автоблоггин
1186
  msgstr ""
1187
 
1188
  #: application/modules/BingImages/BingImagesConfig.php:61
 
 
1189
  msgid "Поле \"Результатов для автоблоггинга\" не может быть больше 50."
1190
  msgstr ""
1191
 
@@ -1251,6 +1276,11 @@ msgstr ""
1251
  msgid "Не содержит лиц"
1252
  msgstr ""
1253
 
 
 
 
 
 
1254
  #: application/modules/BingImages/BingImagesConfig.php:96
1255
  msgid "Ограничить поиск только этим доменом. Например, задайте: wikimedia.org"
1256
  msgstr ""
@@ -1286,6 +1316,7 @@ msgstr ""
1286
 
1287
  #: application/modules/CjLinks/CjLinksConfig.php:86
1288
  #: application/modules/CjLinks/CjLinksConfig.php:111
 
1289
  msgid "Любой"
1290
  msgstr ""
1291
 
@@ -1317,6 +1348,30 @@ msgstr ""
1317
  msgid "Добавляет товары партнерской сети Commission Junction. Вы должны получить аппрув в каждой программы отдельно."
1318
  msgstr ""
1319
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1320
  #: application/modules/Ebay/EbayConfig.php:22
1321
  msgid "Ваш ID для доступа к eBay API. Поучить ключ вы можете в <a href=\"http://developer.ebay.com/join\">eBay Developers Program</a>."
1322
  msgstr ""
@@ -1521,6 +1576,8 @@ msgstr ""
1521
  #: application/modules/GoogleBooks/GoogleBooksConfig.php:36
1522
  #: application/modules/GoogleNews/GoogleNewsConfig.php:21
1523
  #: application/modules/Market/MarketConfig.php:49
 
 
1524
  #: application/modules/Twitter/TwitterConfig.php:81
1525
  #: application/modules/VkNews/VkNewsConfig.php:21
1526
  #: application/modules/Youtube/YoutubeConfig.php:36
@@ -1992,8 +2049,36 @@ msgstr ""
1992
  msgid "Добавляет товары из русскоязычного каталога Яндекс.Маркет"
1993
  msgstr ""
1994
 
1995
- #: application/modules/Market/templates/data_item.php:130
1996
- msgid "All reviews on Yandex.Market"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1997
  msgstr ""
1998
 
1999
  #: application/modules/Twitter/TwitterConfig.php:21
@@ -2134,7 +2219,7 @@ msgid "http://www.keywordrush.com/contentegg"
2134
  msgstr ""
2135
 
2136
  #. Description of the plugin/theme
2137
- msgid "Plugin for adding additional content for your posts. Let you to earn money from affiliate programs."
2138
  msgstr ""
2139
 
2140
  #. Author of the plugin/theme
2
  # This file is distributed under the same license as the Content Egg package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Content Egg 2.0.0\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/content-egg\n"
7
+ "POT-Creation-Date: 2015-10-31 06:43:29+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
17
  msgstr ""
18
 
19
  #: application/admin/AutoblogController.php:28
20
+ #: application/admin/views/autoblog_index.php:37
21
  msgid "Автоблоггинг"
22
  msgstr ""
23
 
24
  #: application/admin/AutoblogController.php:29
25
+ #: application/admin/views/autoblog_edit.php:9
26
+ #: application/admin/views/autoblog_index.php:38
27
  msgid "Добавить автоблоггинг"
28
  msgstr ""
29
 
88
  msgid "Настройки"
89
  msgstr ""
90
 
91
+ #: application/admin/GeneralConfig.php:89
92
  msgid "Язык сайта"
93
  msgstr ""
94
 
95
+ #: application/admin/GeneralConfig.php:90
96
  msgid "Модули, которые имеют поддержку мультиязычности, будут отдавать предпочтение контенту на этом языке. Также эта настройка указывает на язык для локализации шаблонов."
97
  msgstr ""
98
 
99
+ #: application/admin/GeneralConfig.php:98
100
+ msgid "К каким типам постов добавить Content Egg metabox?"
101
+ msgstr ""
102
+
103
+ #: application/admin/GeneralConfig.php:105
104
+ msgid "Фильтровать ботов"
105
+ msgstr ""
106
+
107
+ #: application/admin/GeneralConfig.php:106
108
+ msgid "Боты не могут запускать парсеры."
109
+ msgstr ""
110
+
111
+ #: application/admin/GeneralConfig.php:107
112
+ msgid "Обновление цены, а также обновление выдачи по ключевому слову происходит при открытии страницы поста. Если мы определим по useragent, что на страницу зашел один из известных ботов, никакие парсеры запускаться не будут."
113
+ msgstr ""
114
+
115
  #: application/admin/LicConfig.php:32
116
  msgid "Лицензия"
117
  msgstr ""
164
  msgid "Код купона:"
165
  msgstr ""
166
 
167
+ #: application/admin/views/_promo_box.php:3
168
+ msgid "Работай, как профи"
169
+ msgstr ""
170
+
171
+ #: application/admin/views/_promo_box.php:9
172
+ msgid "Все включено: контент + монетизация."
173
+ msgstr ""
174
+
175
+ #: application/admin/views/_promo_box.php:11
176
+ msgid "Монетизация:"
177
+ msgstr ""
178
+
179
+ #: application/admin/views/_promo_box.php:26
180
+ msgid "Контент модули:"
181
+ msgstr ""
182
+
183
+ #: application/admin/views/_promo_box.php:28
184
+ msgid "Bing картинки"
185
+ msgstr ""
186
+
187
+ #: application/admin/views/_promo_box.php:29
188
+ msgid "Flickr фотографии"
189
+ msgstr ""
190
+
191
+ #: application/admin/views/_promo_box.php:30
192
+ msgid "Google книги"
193
+ msgstr ""
194
+
195
+ #: application/admin/views/_promo_box.php:31
196
+ msgid "Google новости"
197
+ msgstr ""
198
+
199
+ #: application/admin/views/_promo_box.php:32
200
+ msgid "Яндекс.Маркет"
201
+ msgstr ""
202
+
203
+ #: application/admin/views/_promo_box.php:34
204
+ msgid "ВКонтакте новости"
205
+ msgstr ""
206
+
207
+ #: application/admin/views/autoblog_edit.php:7
208
  msgid "Редактировать автоблоггинг"
209
  msgstr ""
210
 
211
+ #: application/admin/views/autoblog_edit.php:11
212
  msgid "Назад к списку"
213
  msgstr ""
214
 
215
+ #: application/admin/views/autoblog_edit.php:33
216
+ msgid "Сохранить"
217
+ msgstr ""
218
+
219
  #: application/admin/views/autoblog_index.php:2
220
  msgid "Работа автоблоггинга"
221
  msgstr ""
232
  msgid "Автоблоггинг закончил работу"
233
  msgstr ""
234
 
235
+ #: application/admin/views/autoblog_index.php:44
236
  msgid "С помощью автоблоггинга вы можете настроить автоматическое создание постов."
237
  msgstr ""
238
 
381
  #: application/admin/views/autoblog_metabox.php:171
382
  #: application/modules/Aliexpress/AliexpressConfig.php:89
383
  #: application/modules/CjLinks/CjLinksConfig.php:125
384
+ #: application/modules/Clickbank/ClickbankConfig.php:67
385
  #: application/modules/Linkshare/LinkshareConfig.php:104
386
  msgid "Категория"
387
  msgstr ""
490
  msgid "Условия"
491
  msgstr ""
492
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
493
  #: application/components/AffiliateParserModuleConfig.php:19
494
  msgid "Время жини кэша в секундах, через которое необходимо обновить товары, если задано ключевое слово для обновления. 0 - никогда не обновлять."
495
  msgstr ""
635
  #: application/modules/BingImages/BingImagesConfig.php:35
636
  #: application/modules/CjLinks/CjLinksConfig.php:50
637
  #: application/modules/CjProducts/CjProductsConfig.php:50
638
+ #: application/modules/Clickbank/ClickbankConfig.php:35
639
  #: application/modules/Ebay/EbayConfig.php:87
640
  #: application/modules/Flickr/FlickrConfig.php:35
641
  #: application/modules/Freebase/FreebaseConfig.php:35
645
  #: application/modules/GoogleNews/GoogleNewsConfig.php:20
646
  #: application/modules/Linkshare/LinkshareConfig.php:35
647
  #: application/modules/Market/MarketConfig.php:48
648
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:35
649
+ #: application/modules/RssFetcher/RssFetcherConfig.php:35
650
  #: application/modules/Twitter/TwitterConfig.php:80
651
  #: application/modules/VkNews/VkNewsConfig.php:20
652
  #: application/modules/Youtube/YoutubeConfig.php:35
660
  #: application/modules/Amazon/AmazonConfig.php:67
661
  #: application/modules/CjLinks/CjLinksConfig.php:51
662
  #: application/modules/CjProducts/CjProductsConfig.php:51
663
+ #: application/modules/Clickbank/ClickbankConfig.php:36
664
  #: application/modules/Ebay/EbayConfig.php:88
665
  #: application/modules/GdeSlon/GdeSlonConfig.php:46
666
  #: application/modules/Linkshare/LinkshareConfig.php:36
674
  #: application/modules/Amazon/AmazonConfig.php:82
675
  #: application/modules/CjLinks/CjLinksConfig.php:61
676
  #: application/modules/CjProducts/CjProductsConfig.php:61
677
+ #: application/modules/Clickbank/ClickbankConfig.php:51
678
  #: application/modules/Ebay/EbayConfig.php:103
679
  #: application/modules/GdeSlon/GdeSlonConfig.php:61
680
  #: application/modules/Linkshare/LinkshareConfig.php:46
688
  #: application/modules/Amazon/AmazonConfig.php:83
689
  #: application/modules/CjLinks/CjLinksConfig.php:62
690
  #: application/modules/CjProducts/CjProductsConfig.php:62
691
+ #: application/modules/Clickbank/ClickbankConfig.php:52
692
  #: application/modules/Ebay/EbayConfig.php:104
693
  #: application/modules/GdeSlon/GdeSlonConfig.php:62
694
  #: application/modules/Linkshare/LinkshareConfig.php:47
748
 
749
  #: application/modules/AffilinetProducts/AffilinetProductsConfig.php:172
750
  #: application/modules/CjProducts/CjProductsConfig.php:223
751
+ #: application/modules/Clickbank/ClickbankConfig.php:158
752
  #: application/modules/Flickr/FlickrConfig.php:111
753
  #: application/modules/Freebase/FreebaseConfig.php:74
754
  #: application/modules/GdeSlon/GdeSlonConfig.php:117
764
 
765
  #: application/modules/AffilinetProducts/AffilinetProductsConfig.php:173
766
  #: application/modules/CjProducts/CjProductsConfig.php:224
767
+ #: application/modules/Clickbank/ClickbankConfig.php:159
768
  #: application/modules/Flickr/FlickrConfig.php:112
769
  #: application/modules/Freebase/FreebaseConfig.php:75
770
  #: application/modules/GdeSlon/GdeSlonConfig.php:118
867
 
868
  #: application/modules/Aliexpress/AliexpressConfig.php:178
869
  #: application/modules/CjProducts/CjProductsConfig.php:156
870
+ #: application/modules/Clickbank/ClickbankConfig.php:100
871
  #: application/modules/Ebay/EbayConfig.php:119
872
  #: application/modules/Flickr/FlickrConfig.php:57
873
  #: application/modules/GdeSlon/GdeSlonConfig.php:77
1037
  msgstr ""
1038
 
1039
  #: application/modules/Amazon/AmazonConfig.php:206
1040
+ msgid "Отзывы покупателей"
1041
  msgstr ""
1042
 
1043
  #: application/modules/Amazon/AmazonConfig.php:207
1044
+ msgid "Получить отзывы покупателей. Отзывы будут показаны в iframe. iframe URL валидный 24 часа, используйте функцию автообноления, чтобы держать URL в актуальном состоянии."
 
 
 
 
1045
  msgstr ""
1046
 
1047
+ #: application/modules/Amazon/AmazonConfig.php:222
 
 
 
 
1048
  #: application/modules/Market/MarketConfig.php:138
1049
  msgid "Обрезать отзывы"
1050
  msgstr ""
1051
 
1052
+ #: application/modules/Amazon/AmazonConfig.php:223
1053
  msgid "Количество символов для одного отзыва. 0 - максимально возможная длина текста."
1054
  msgstr ""
1055
 
1056
+ #: application/modules/Amazon/AmazonConfig.php:247
 
 
 
 
 
 
 
 
1057
  msgid "Парсить отписание"
1058
  msgstr ""
1059
 
1060
+ #: application/modules/Amazon/AmazonConfig.php:248
1061
  msgid "Парсить описание товаров от продавца."
1062
  msgstr ""
1063
 
1064
+ #: application/modules/Amazon/AmazonConfig.php:254
1065
  msgid "Вид описания"
1066
  msgstr ""
1067
 
1068
+ #: application/modules/Amazon/AmazonConfig.php:258
1069
  msgid "Как на Amazon"
1070
  msgstr ""
1071
 
1072
+ #: application/modules/Amazon/AmazonConfig.php:259
1073
  msgid "Безопасный HTML"
1074
  msgstr ""
1075
 
1076
+ #: application/modules/Amazon/AmazonConfig.php:260
1077
  msgid "Только разрешенные теги HTML"
1078
  msgstr ""
1079
 
1080
+ #: application/modules/Amazon/AmazonConfig.php:261
1081
  msgid "Только текст"
1082
  msgstr ""
1083
 
1084
+ #: application/modules/Amazon/AmazonConfig.php:267
1085
  #: application/modules/Ebay/EbayConfig.php:323
1086
  msgid "Размер описания"
1087
  msgstr ""
1088
 
1089
+ #: application/modules/Amazon/AmazonConfig.php:268
1090
  #: application/modules/Ebay/EbayConfig.php:324
1091
  msgid "Максимальный размер описания товара. 0 - не обрезать."
1092
  msgstr ""
1152
  msgstr ""
1153
 
1154
  #: application/modules/BingImages/BingImagesConfig.php:21
1155
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:21
1156
  msgid "Ключ доступа к Bing API. Получить можно <a href=\"https://datamarket.azure.com/account/keys\">здесь</a> (потребуется аккаунт в bing)."
1157
  msgstr ""
1158
 
1159
  #: application/modules/BingImages/BingImagesConfig.php:29
1160
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:29
1161
  #: application/modules/Twitter/TwitterConfig.php:29
1162
  #: application/modules/Twitter/TwitterConfig.php:44
1163
  #: application/modules/Twitter/TwitterConfig.php:59
1170
  msgstr ""
1171
 
1172
  #: application/modules/BingImages/BingImagesConfig.php:45
1173
+ #: application/modules/Clickbank/ClickbankConfig.php:45
1174
+ #: application/modules/Clickbank/ClickbankConfig.php:61
1175
+ #: application/modules/RssFetcher/RssFetcherConfig.php:45
1176
  #: application/modules/Zanox/ZanoxConfig.php:56
1177
  #: application/modules/Zanox/ZanoxConfig.php:72
1178
  msgid "Поле \"Результатов\" не может быть больше 50."
1185
  #: application/modules/GoogleImages/GoogleImagesConfig.php:51
1186
  #: application/modules/GoogleNews/GoogleNewsConfig.php:36
1187
  #: application/modules/Market/MarketConfig.php:64
1188
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:51
1189
+ #: application/modules/RssFetcher/RssFetcherConfig.php:51
1190
  #: application/modules/Twitter/TwitterConfig.php:96
1191
  #: application/modules/VkNews/VkNewsConfig.php:31
1192
  #: application/modules/Youtube/YoutubeConfig.php:46
1200
  #: application/modules/GoogleImages/GoogleImagesConfig.php:52
1201
  #: application/modules/GoogleNews/GoogleNewsConfig.php:37
1202
  #: application/modules/Market/MarketConfig.php:65
1203
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:52
1204
+ #: application/modules/RssFetcher/RssFetcherConfig.php:52
1205
  #: application/modules/Twitter/TwitterConfig.php:97
1206
  #: application/modules/VkNews/VkNewsConfig.php:32
1207
  #: application/modules/Youtube/YoutubeConfig.php:47
1209
  msgstr ""
1210
 
1211
  #: application/modules/BingImages/BingImagesConfig.php:61
1212
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:61
1213
+ #: application/modules/RssFetcher/RssFetcherConfig.php:61
1214
  msgid "Поле \"Результатов для автоблоггинга\" не может быть больше 50."
1215
  msgstr ""
1216
 
1276
  msgid "Не содержит лиц"
1277
  msgstr ""
1278
 
1279
+ #: application/modules/BingImages/BingImagesConfig.php:95
1280
+ #: application/modules/GoogleImages/GoogleImagesConfig.php:160
1281
+ msgid "Поиск по сайту"
1282
+ msgstr ""
1283
+
1284
  #: application/modules/BingImages/BingImagesConfig.php:96
1285
  msgid "Ограничить поиск только этим доменом. Например, задайте: wikimedia.org"
1286
  msgstr ""
1316
 
1317
  #: application/modules/CjLinks/CjLinksConfig.php:86
1318
  #: application/modules/CjLinks/CjLinksConfig.php:111
1319
+ #: application/modules/Clickbank/ClickbankConfig.php:131
1320
  msgid "Любой"
1321
  msgstr ""
1322
 
1348
  msgid "Добавляет товары партнерской сети Commission Junction. Вы должны получить аппрув в каждой программы отдельно."
1349
  msgstr ""
1350
 
1351
+ #: application/modules/Clickbank/ClickbankConfig.php:21
1352
+ msgid "Ваш nickname на ClickBank."
1353
+ msgstr ""
1354
+
1355
+ #: application/modules/Clickbank/ClickbankConfig.php:29
1356
+ msgid "Поле \"ClickBank nickname\" не может быть пустым."
1357
+ msgstr ""
1358
+
1359
+ #: application/modules/Clickbank/ClickbankConfig.php:117
1360
+ msgid "Минимум Gravity"
1361
+ msgstr ""
1362
+
1363
+ #: application/modules/Clickbank/ClickbankConfig.php:127
1364
+ msgid "Язык"
1365
+ msgstr ""
1366
+
1367
+ #: application/modules/Clickbank/ClickbankModule.php:26
1368
+ msgid "Добавляет офферы партнерской сети clickbank.com."
1369
+ msgstr ""
1370
+
1371
+ #: application/modules/Clickbank/ClickbankModule.php:26
1372
+ msgid "Модуль работает в тестовом режиме."
1373
+ msgstr ""
1374
+
1375
  #: application/modules/Ebay/EbayConfig.php:22
1376
  msgid "Ваш ID для доступа к eBay API. Поучить ключ вы можете в <a href=\"http://developer.ebay.com/join\">eBay Developers Program</a>."
1377
  msgstr ""
1576
  #: application/modules/GoogleBooks/GoogleBooksConfig.php:36
1577
  #: application/modules/GoogleNews/GoogleNewsConfig.php:21
1578
  #: application/modules/Market/MarketConfig.php:49
1579
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:36
1580
+ #: application/modules/RssFetcher/RssFetcherConfig.php:36
1581
  #: application/modules/Twitter/TwitterConfig.php:81
1582
  #: application/modules/VkNews/VkNewsConfig.php:21
1583
  #: application/modules/Youtube/YoutubeConfig.php:36
2049
  msgid "Добавляет товары из русскоязычного каталога Яндекс.Маркет"
2050
  msgstr ""
2051
 
2052
+ #: application/modules/RelatedKeywords/RelatedKeywordsConfig.php:45
2053
+ msgid "Поле \"Результатов\" не может быть больше 5ы0."
2054
+ msgstr ""
2055
+
2056
+ #: application/modules/RelatedKeywords/RelatedKeywordsModule.php:26
2057
+ msgid "Находит родственные ключевые слова и выводит их в посте."
2058
+ msgstr ""
2059
+
2060
+ #: application/modules/RssFetcher/RssFetcherConfig.php:21
2061
+ msgid "Для подстановки текущего ключевого слова используйте <em>%KEYWORD%</em>."
2062
+ msgstr ""
2063
+
2064
+ #: application/modules/RssFetcher/RssFetcherConfig.php:29
2065
+ msgid "Поле \"RSS URL\" не может быть пустым."
2066
+ msgstr ""
2067
+
2068
+ #: application/modules/RssFetcher/RssFetcherConfig.php:67
2069
+ msgid "Разрешенные теги"
2070
+ msgstr ""
2071
+
2072
+ #: application/modules/RssFetcher/RssFetcherConfig.php:68
2073
+ msgid "Теги, которые разрешены в title и description."
2074
+ msgstr ""
2075
+
2076
+ #: application/modules/RssFetcher/RssFetcherModule.php:25
2077
+ msgid "Парсит любую RSS-ленту."
2078
+ msgstr ""
2079
+
2080
+ #: application/modules/RssFetcher/RssFetcherModule.php:26
2081
+ msgid "Важно, чтобы в URL была возможность использовать ключевое слово, т.е. лента должна содержать результаты поиска по ключевому слову."
2082
  msgstr ""
2083
 
2084
  #: application/modules/Twitter/TwitterConfig.php:21
2219
  msgstr ""
2220
 
2221
  #. Description of the plugin/theme
2222
+ msgid "Easily adding auto updating products from affiliate systems and additional content to posts."
2223
  msgstr ""
2224
 
2225
  #. Author of the plugin/theme
languages/tpl/content-egg-tpl-RU.mo CHANGED
Binary file
languages/tpl/content-egg-tpl-RU.po CHANGED
@@ -4,8 +4,8 @@ msgid ""
4
  msgstr ""
5
  "Project-Id-Version: Content Egg 1.1.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/content-egg-tpl\n"
7
- "POT-Creation-Date: 2015-10-07 13:23:08+00:00\n"
8
- "PO-Revision-Date: 2015-10-10 09:18+0200\n"
9
  "Last-Translator: \n"
10
  "Language-Team: LANGUAGE <LL@li.org>\n"
11
  "Language: ru\n"
@@ -16,24 +16,24 @@ msgstr ""
16
  "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
17
  "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
18
 
19
- #: application/helpers/TemplateHelper.php:26
20
  msgid "number_format_decimal_point"
21
  msgstr ","
22
 
23
- #: application/helpers/TemplateHelper.php:27
24
  msgid "number_format_thousands_sep"
25
  msgstr " "
26
 
27
- #: application/helpers/TemplateHelper.php:97
28
  msgid "d"
29
  msgstr "д"
30
 
31
- #: application/helpers/TemplateHelper.php:99
32
  msgid "h"
33
  msgstr "ч"
34
 
35
- #: application/helpers/TemplateHelper.php:101
36
  #: application/helpers/TemplateHelper.php:103
 
37
  #: application/modules/Ebay/templates/data_item.php:90
38
  #: application/modules/Ebay/templates/data_list.php:42
39
  msgid "m"
@@ -83,7 +83,9 @@ msgstr "Карточка товара"
83
 
84
  #: application/modules/AffilinetProducts/templates/data_item.php:50
85
  #: application/modules/Aliexpress/templates/data_item.php:50
86
- #: application/modules/Amazon/templates/data_item.php:60
 
 
87
  #: application/modules/CjProducts/templates/data_item.php:46
88
  #: application/modules/Ebay/templates/data_item.php:68
89
  #: application/modules/GdeSlon/templates/data_item.php:46
@@ -104,35 +106,104 @@ msgid "List"
104
  msgstr "Список"
105
 
106
  #: application/modules/Amazon/templates/data_compare.php:6
107
- #: application/modules/Amazon/templates/data_compare.php:26
108
  msgid "Compare"
109
  msgstr "Сравнить"
110
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
111
  #: application/modules/Amazon/templates/data_item.php:51
112
  #: application/modules/Amazon/templates/data_list.php:45
113
  msgid "Too low to display"
114
  msgstr "Уточните на сайте"
115
 
116
- #: application/modules/Amazon/templates/data_item.php:56
117
- #: application/modules/Amazon/templates/data_list.php:50
 
118
  #: application/modules/Ebay/templates/data_item.php:99
119
  #: application/modules/Ebay/templates/data_list.php:69
120
  msgid "Free shipping"
121
  msgstr "Бесплатная доставка"
122
 
123
- #: application/modules/Amazon/templates/data_item.php:75
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
124
  msgid "Features"
125
  msgstr "Характеристики"
126
 
127
- #: application/modules/Amazon/templates/data_item.php:87
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  #: application/modules/Market/templates/data_item.php:106
129
  msgid "Customer reviews"
130
  msgstr "Отзывы покупателей"
131
 
132
- #: application/modules/Amazon/templates/data_item.php:90
133
- #, fuzzy
134
  msgid "customer reviews"
135
- msgstr "Отзывы покупателей"
136
 
137
  #: application/modules/BingImages/templates/data_image.php:5
138
  #: application/modules/GoogleImages/templates/data_image.php:5
@@ -149,6 +220,17 @@ msgstr "Галерея"
149
  msgid "Universal"
150
  msgstr "Универсальный"
151
 
 
 
 
 
 
 
 
 
 
 
 
152
  #: application/modules/Ebay/templates/data_grid.php:51
153
  #: application/modules/Ebay/templates/data_item.php:45
154
  #: application/modules/Ebay/templates/data_item.php:52
@@ -188,16 +270,6 @@ msgstr "Завершен:"
188
  msgid "EEK:"
189
  msgstr "EEK:"
190
 
191
- #: application/modules/Flickr/templates/data_simple.php:5
192
- #: application/modules/Freebase/templates/data_simple.php:5
193
- #: application/modules/GoogleBooks/templates/data_simple.php:5
194
- #: application/modules/GoogleImages/templates/data_simple.php:5
195
- #: application/modules/Twitter/templates/data_simple.php:5
196
- #: application/modules/VkNews/templates/data_simple.php:5
197
- #: application/modules/Youtube/templates/data_simple.php:5
198
- msgid "Simple"
199
- msgstr "Простой"
200
-
201
  #: application/modules/Flickr/templates/data_simple.php:20
202
  msgid "Photo %s on Flickr"
203
  msgstr "Фото %s на Flickr"
@@ -206,20 +278,6 @@ msgstr "Фото %s на Flickr"
206
  msgid "Source:"
207
  msgstr "Источник:"
208
 
209
- #: application/modules/GdeSlon/GdeSlonConfig.php:91
210
- msgid ""
211
- "Ограничить поиск задаными категориями. Найти ID категорий можно Найти ID "
212
- "магазинов можно <a target=\"_blank\" href=\"http://api.gdeslon.ru/merchants"
213
- "\">здесь</a>. Можно задать несколько ID через запятую."
214
- msgstr ""
215
-
216
- #: application/modules/GdeSlon/GdeSlonConfig.php:101
217
- msgid ""
218
- "Ограничить поиск по выбранному магазину. Найти ID магазинов можно <a target="
219
- "\"_blank\" href=\"http://api.gdeslon.ru/merchants\">здесь</a>. Можно задать "
220
- "несколько ID через запятую."
221
- msgstr ""
222
-
223
  #: application/modules/Market/templates/data_item.php:32
224
  msgid "Customer reviews:"
225
  msgstr "Отзывы покупателей:"
@@ -264,6 +322,10 @@ msgstr "Минусы:"
264
  msgid "Comment:"
265
  msgstr "Комментарий:"
266
 
 
 
 
 
267
  #: application/modules/Youtube/templates/data_responsive_embed.php:5
268
  msgid "Large"
269
  msgstr "Широкий"
@@ -276,10 +338,6 @@ msgstr "Плитка"
276
  msgid "All offers list"
277
  msgstr "Все предложения"
278
 
279
- #. Plugin Name of the plugin/theme
280
- msgid "Content Egg"
281
- msgstr ""
282
-
283
  #~ msgid "Source: %s"
284
  #~ msgstr "Источник: %s"
285
 
4
  msgstr ""
5
  "Project-Id-Version: Content Egg 1.1.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/content-egg-tpl\n"
7
+ "POT-Creation-Date: 2015-10-31 06:34:38+00:00\n"
8
+ "PO-Revision-Date: 2015-10-31 08:46+0200\n"
9
  "Last-Translator: \n"
10
  "Language-Team: LANGUAGE <LL@li.org>\n"
11
  "Language: ru\n"
16
  "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
17
  "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
18
 
19
+ #: application/helpers/TemplateHelper.php:28
20
  msgid "number_format_decimal_point"
21
  msgstr ","
22
 
23
+ #: application/helpers/TemplateHelper.php:29
24
  msgid "number_format_thousands_sep"
25
  msgstr " "
26
 
27
+ #: application/helpers/TemplateHelper.php:99
28
  msgid "d"
29
  msgstr "д"
30
 
31
+ #: application/helpers/TemplateHelper.php:101
32
  msgid "h"
33
  msgstr "ч"
34
 
 
35
  #: application/helpers/TemplateHelper.php:103
36
+ #: application/helpers/TemplateHelper.php:105
37
  #: application/modules/Ebay/templates/data_item.php:90
38
  #: application/modules/Ebay/templates/data_list.php:42
39
  msgid "m"
83
 
84
  #: application/modules/AffilinetProducts/templates/data_item.php:50
85
  #: application/modules/Aliexpress/templates/data_item.php:50
86
+ #: application/modules/Amazon/templates/data_compare.php:118
87
+ #: application/modules/Amazon/templates/data_compare.php:239
88
+ #: application/modules/Amazon/templates/data_item.php:75
89
  #: application/modules/CjProducts/templates/data_item.php:46
90
  #: application/modules/Ebay/templates/data_item.php:68
91
  #: application/modules/GdeSlon/templates/data_item.php:46
106
  msgstr "Список"
107
 
108
  #: application/modules/Amazon/templates/data_compare.php:6
109
+ #: application/modules/Amazon/templates/data_compare.php:40
110
  msgid "Compare"
111
  msgstr "Сравнить"
112
 
113
+ #: application/modules/Amazon/templates/data_compare.php:58
114
+ msgid "User Rating"
115
+ msgstr "Рейтинг"
116
+
117
+ #: application/modules/Amazon/templates/data_compare.php:67
118
+ msgid "ratings"
119
+ msgstr "рейтинг"
120
+
121
+ #: application/modules/Amazon/templates/data_compare.php:71
122
+ msgid "See all reviews"
123
+ msgstr "Все отзывы"
124
+
125
+ #: application/modules/Amazon/templates/data_compare.php:79
126
+ msgid "Price"
127
+ msgstr "Цена"
128
+
129
+ #: application/modules/Amazon/templates/data_compare.php:87
130
  #: application/modules/Amazon/templates/data_item.php:51
131
  #: application/modules/Amazon/templates/data_list.php:45
132
  msgid "Too low to display"
133
  msgstr "Уточните на сайте"
134
 
135
+ #: application/modules/Amazon/templates/data_compare.php:90
136
+ #: application/modules/Amazon/templates/data_item.php:55
137
+ #: application/modules/Amazon/templates/data_list.php:49
138
  #: application/modules/Ebay/templates/data_item.php:99
139
  #: application/modules/Ebay/templates/data_list.php:69
140
  msgid "Free shipping"
141
  msgstr "Бесплатная доставка"
142
 
143
+ #: application/modules/Amazon/templates/data_compare.php:96
144
+ #: application/modules/Amazon/templates/data_item.php:61
145
+ msgid "new"
146
+ msgstr "новый"
147
+
148
+ #: application/modules/Amazon/templates/data_compare.php:96
149
+ #: application/modules/Amazon/templates/data_compare.php:101
150
+ #: application/modules/Amazon/templates/data_item.php:61
151
+ #: application/modules/Amazon/templates/data_item.php:66
152
+ msgid "from"
153
+ msgstr "от"
154
+
155
+ #: application/modules/Amazon/templates/data_compare.php:101
156
+ #: application/modules/Amazon/templates/data_item.php:66
157
+ msgid "used"
158
+ msgstr "б.у."
159
+
160
+ #: application/modules/Amazon/templates/data_compare.php:106
161
+ #: application/modules/Amazon/templates/data_item.php:71
162
+ msgid "as of"
163
+ msgstr ""
164
+
165
+ #: application/modules/Amazon/templates/data_compare.php:114
166
+ #: application/modules/Amazon/templates/data_compare.php:235
167
+ msgid "Shop Now"
168
+ msgstr "Купить"
169
+
170
+ #: application/modules/Amazon/templates/data_compare.php:127
171
+ #: application/modules/Amazon/templates/data_item.php:90
172
  msgid "Features"
173
  msgstr "Характеристики"
174
 
175
+ #: application/modules/Amazon/templates/data_compare.php:177
176
+ #, fuzzy
177
+ msgid "User Reviews"
178
+ msgstr "Отзывы покупателей"
179
+
180
+ #: application/modules/Amazon/templates/data_compare.php:202
181
+ #, fuzzy
182
+ msgid "Expert Reviews"
183
+ msgstr "Отзывы покупателей"
184
+
185
+ #: application/modules/Amazon/templates/data_compare.php:218
186
+ msgid "Barcodes"
187
+ msgstr "Код"
188
+
189
+ #: application/modules/Amazon/templates/data_compare.php:246
190
+ #, fuzzy
191
+ msgid "Images"
192
+ msgstr "Картинка"
193
+
194
+ #: application/modules/Amazon/templates/data_grid.php:65
195
+ #: application/modules/Amazon/templates/data_list.php:57
196
+ msgid "Last updated on"
197
+ msgstr "Последнее обновление:"
198
+
199
+ #: application/modules/Amazon/templates/data_item.php:102
200
  #: application/modules/Market/templates/data_item.php:106
201
  msgid "Customer reviews"
202
  msgstr "Отзывы покупателей"
203
 
204
+ #: application/modules/Amazon/templates/data_item.php:107
 
205
  msgid "customer reviews"
206
+ msgstr "отзывы покупателей"
207
 
208
  #: application/modules/BingImages/templates/data_image.php:5
209
  #: application/modules/GoogleImages/templates/data_image.php:5
220
  msgid "Universal"
221
  msgstr "Универсальный"
222
 
223
+ #: application/modules/Clickbank/templates/data_simple.php:6
224
+ #: application/modules/Flickr/templates/data_simple.php:5
225
+ #: application/modules/Freebase/templates/data_simple.php:5
226
+ #: application/modules/GoogleBooks/templates/data_simple.php:5
227
+ #: application/modules/GoogleImages/templates/data_simple.php:5
228
+ #: application/modules/Twitter/templates/data_simple.php:5
229
+ #: application/modules/VkNews/templates/data_simple.php:5
230
+ #: application/modules/Youtube/templates/data_simple.php:5
231
+ msgid "Simple"
232
+ msgstr "Простой"
233
+
234
  #: application/modules/Ebay/templates/data_grid.php:51
235
  #: application/modules/Ebay/templates/data_item.php:45
236
  #: application/modules/Ebay/templates/data_item.php:52
270
  msgid "EEK:"
271
  msgstr "EEK:"
272
 
 
 
 
 
 
 
 
 
 
 
273
  #: application/modules/Flickr/templates/data_simple.php:20
274
  msgid "Photo %s on Flickr"
275
  msgstr "Фото %s на Flickr"
278
  msgid "Source:"
279
  msgstr "Источник:"
280
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
281
  #: application/modules/Market/templates/data_item.php:32
282
  msgid "Customer reviews:"
283
  msgstr "Отзывы покупателей:"
322
  msgid "Comment:"
323
  msgstr "Комментарий:"
324
 
325
+ #: application/modules/Market/templates/data_item.php:130
326
+ msgid "All reviews on Yandex.Market"
327
+ msgstr "Все отзывы на Яндекс.Маркет"
328
+
329
  #: application/modules/Youtube/templates/data_responsive_embed.php:5
330
  msgid "Large"
331
  msgstr "Широкий"
338
  msgid "All offers list"
339
  msgstr "Все предложения"
340
 
 
 
 
 
341
  #~ msgid "Source: %s"
342
  #~ msgstr "Источник: %s"
343
 
languages/tpl/content-egg-tpl.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the Content Egg package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Content Egg 1.9.0\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/content-egg-tpl\n"
7
- "POT-Creation-Date: 2015-10-07 13:23:08+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -12,24 +12,24 @@ msgstr ""
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
 
15
- #: application/helpers/TemplateHelper.php:26
16
  msgid "number_format_decimal_point"
17
  msgstr ""
18
 
19
- #: application/helpers/TemplateHelper.php:27
20
  msgid "number_format_thousands_sep"
21
  msgstr ""
22
 
23
- #: application/helpers/TemplateHelper.php:97
24
  msgid "d"
25
  msgstr ""
26
 
27
- #: application/helpers/TemplateHelper.php:99
28
  msgid "h"
29
  msgstr ""
30
 
31
- #: application/helpers/TemplateHelper.php:101
32
  #: application/helpers/TemplateHelper.php:103
 
33
  #: application/modules/Ebay/templates/data_item.php:90
34
  #: application/modules/Ebay/templates/data_list.php:42
35
  msgid "m"
@@ -79,7 +79,9 @@ msgstr ""
79
 
80
  #: application/modules/AffilinetProducts/templates/data_item.php:50
81
  #: application/modules/Aliexpress/templates/data_item.php:50
82
- #: application/modules/Amazon/templates/data_item.php:60
 
 
83
  #: application/modules/CjProducts/templates/data_item.php:46
84
  #: application/modules/Ebay/templates/data_item.php:68
85
  #: application/modules/GdeSlon/templates/data_item.php:46
@@ -100,32 +102,99 @@ msgid "List"
100
  msgstr ""
101
 
102
  #: application/modules/Amazon/templates/data_compare.php:6
103
- #: application/modules/Amazon/templates/data_compare.php:26
104
  msgid "Compare"
105
  msgstr ""
106
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
107
  #: application/modules/Amazon/templates/data_item.php:51
108
  #: application/modules/Amazon/templates/data_list.php:45
109
  msgid "Too low to display"
110
  msgstr ""
111
 
112
- #: application/modules/Amazon/templates/data_item.php:56
113
- #: application/modules/Amazon/templates/data_list.php:50
 
114
  #: application/modules/Ebay/templates/data_item.php:99
115
  #: application/modules/Ebay/templates/data_list.php:69
116
  msgid "Free shipping"
117
  msgstr ""
118
 
119
- #: application/modules/Amazon/templates/data_item.php:75
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
120
  msgid "Features"
121
  msgstr ""
122
 
123
- #: application/modules/Amazon/templates/data_item.php:87
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
124
  #: application/modules/Market/templates/data_item.php:106
125
  msgid "Customer reviews"
126
  msgstr ""
127
 
128
- #: application/modules/Amazon/templates/data_item.php:90
129
  msgid "customer reviews"
130
  msgstr ""
131
 
@@ -144,6 +213,17 @@ msgstr ""
144
  msgid "Universal"
145
  msgstr ""
146
 
 
 
 
 
 
 
 
 
 
 
 
147
  #: application/modules/Ebay/templates/data_grid.php:51
148
  #: application/modules/Ebay/templates/data_item.php:45
149
  #: application/modules/Ebay/templates/data_item.php:52
@@ -183,16 +263,6 @@ msgstr ""
183
  msgid "EEK:"
184
  msgstr ""
185
 
186
- #: application/modules/Flickr/templates/data_simple.php:5
187
- #: application/modules/Freebase/templates/data_simple.php:5
188
- #: application/modules/GoogleBooks/templates/data_simple.php:5
189
- #: application/modules/GoogleImages/templates/data_simple.php:5
190
- #: application/modules/Twitter/templates/data_simple.php:5
191
- #: application/modules/VkNews/templates/data_simple.php:5
192
- #: application/modules/Youtube/templates/data_simple.php:5
193
- msgid "Simple"
194
- msgstr ""
195
-
196
  #: application/modules/Flickr/templates/data_simple.php:20
197
  msgid "Photo %s on Flickr"
198
  msgstr ""
@@ -201,14 +271,6 @@ msgstr ""
201
  msgid "Source:"
202
  msgstr ""
203
 
204
- #: application/modules/GdeSlon/GdeSlonConfig.php:91
205
- msgid "Ограничить поиск задаными категориями. Найти ID категорий можно Найти ID магазинов можно <a target=\"_blank\" href=\"http://api.gdeslon.ru/merchants\">здесь</a>. Можно задать несколько ID через запятую."
206
- msgstr ""
207
-
208
- #: application/modules/GdeSlon/GdeSlonConfig.php:101
209
- msgid "Ограничить поиск по выбранному магазину. Найти ID магазинов можно <a target=\"_blank\" href=\"http://api.gdeslon.ru/merchants\">здесь</a>. Можно задать несколько ID через запятую."
210
- msgstr ""
211
-
212
  #: application/modules/Market/templates/data_item.php:32
213
  msgid "Customer reviews:"
214
  msgstr ""
@@ -253,6 +315,10 @@ msgstr ""
253
  msgid "Comment:"
254
  msgstr ""
255
 
 
 
 
 
256
  #: application/modules/Youtube/templates/data_responsive_embed.php:5
257
  msgid "Large"
258
  msgstr ""
@@ -263,7 +329,4 @@ msgstr ""
263
 
264
  #: templates/block_offers_list.php:9
265
  msgid "All offers list"
266
- msgstr ""
267
- #. Plugin Name of the plugin/theme
268
- msgid "Content Egg"
269
  msgstr ""
2
  # This file is distributed under the same license as the Content Egg package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Content Egg 2.0.0\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/content-egg-tpl\n"
7
+ "POT-Creation-Date: 2015-10-31 06:34:38+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
 
15
+ #: application/helpers/TemplateHelper.php:28
16
  msgid "number_format_decimal_point"
17
  msgstr ""
18
 
19
+ #: application/helpers/TemplateHelper.php:29
20
  msgid "number_format_thousands_sep"
21
  msgstr ""
22
 
23
+ #: application/helpers/TemplateHelper.php:99
24
  msgid "d"
25
  msgstr ""
26
 
27
+ #: application/helpers/TemplateHelper.php:101
28
  msgid "h"
29
  msgstr ""
30
 
 
31
  #: application/helpers/TemplateHelper.php:103
32
+ #: application/helpers/TemplateHelper.php:105
33
  #: application/modules/Ebay/templates/data_item.php:90
34
  #: application/modules/Ebay/templates/data_list.php:42
35
  msgid "m"
79
 
80
  #: application/modules/AffilinetProducts/templates/data_item.php:50
81
  #: application/modules/Aliexpress/templates/data_item.php:50
82
+ #: application/modules/Amazon/templates/data_compare.php:118
83
+ #: application/modules/Amazon/templates/data_compare.php:239
84
+ #: application/modules/Amazon/templates/data_item.php:75
85
  #: application/modules/CjProducts/templates/data_item.php:46
86
  #: application/modules/Ebay/templates/data_item.php:68
87
  #: application/modules/GdeSlon/templates/data_item.php:46
102
  msgstr ""
103
 
104
  #: application/modules/Amazon/templates/data_compare.php:6
105
+ #: application/modules/Amazon/templates/data_compare.php:40
106
  msgid "Compare"
107
  msgstr ""
108
 
109
+ #: application/modules/Amazon/templates/data_compare.php:58
110
+ msgid "User Rating"
111
+ msgstr ""
112
+
113
+ #: application/modules/Amazon/templates/data_compare.php:67
114
+ msgid "ratings"
115
+ msgstr ""
116
+
117
+ #: application/modules/Amazon/templates/data_compare.php:71
118
+ msgid "See all reviews"
119
+ msgstr ""
120
+
121
+ #: application/modules/Amazon/templates/data_compare.php:79
122
+ msgid "Price"
123
+ msgstr ""
124
+
125
+ #: application/modules/Amazon/templates/data_compare.php:87
126
  #: application/modules/Amazon/templates/data_item.php:51
127
  #: application/modules/Amazon/templates/data_list.php:45
128
  msgid "Too low to display"
129
  msgstr ""
130
 
131
+ #: application/modules/Amazon/templates/data_compare.php:90
132
+ #: application/modules/Amazon/templates/data_item.php:55
133
+ #: application/modules/Amazon/templates/data_list.php:49
134
  #: application/modules/Ebay/templates/data_item.php:99
135
  #: application/modules/Ebay/templates/data_list.php:69
136
  msgid "Free shipping"
137
  msgstr ""
138
 
139
+ #: application/modules/Amazon/templates/data_compare.php:96
140
+ #: application/modules/Amazon/templates/data_item.php:61
141
+ msgid "new"
142
+ msgstr ""
143
+
144
+ #: application/modules/Amazon/templates/data_compare.php:96
145
+ #: application/modules/Amazon/templates/data_compare.php:101
146
+ #: application/modules/Amazon/templates/data_item.php:61
147
+ #: application/modules/Amazon/templates/data_item.php:66
148
+ msgid "from"
149
+ msgstr ""
150
+
151
+ #: application/modules/Amazon/templates/data_compare.php:101
152
+ #: application/modules/Amazon/templates/data_item.php:66
153
+ msgid "used"
154
+ msgstr ""
155
+
156
+ #: application/modules/Amazon/templates/data_compare.php:106
157
+ #: application/modules/Amazon/templates/data_item.php:71
158
+ msgid "as of"
159
+ msgstr ""
160
+
161
+ #: application/modules/Amazon/templates/data_compare.php:114
162
+ #: application/modules/Amazon/templates/data_compare.php:235
163
+ msgid "Shop Now"
164
+ msgstr ""
165
+
166
+ #: application/modules/Amazon/templates/data_compare.php:127
167
+ #: application/modules/Amazon/templates/data_item.php:90
168
  msgid "Features"
169
  msgstr ""
170
 
171
+ #: application/modules/Amazon/templates/data_compare.php:177
172
+ msgid "User Reviews"
173
+ msgstr ""
174
+
175
+ #: application/modules/Amazon/templates/data_compare.php:202
176
+ msgid "Expert Reviews"
177
+ msgstr ""
178
+
179
+ #: application/modules/Amazon/templates/data_compare.php:218
180
+ msgid "Barcodes"
181
+ msgstr ""
182
+
183
+ #: application/modules/Amazon/templates/data_compare.php:246
184
+ msgid "Images"
185
+ msgstr ""
186
+
187
+ #: application/modules/Amazon/templates/data_grid.php:65
188
+ #: application/modules/Amazon/templates/data_list.php:57
189
+ msgid "Last updated on"
190
+ msgstr ""
191
+
192
+ #: application/modules/Amazon/templates/data_item.php:102
193
  #: application/modules/Market/templates/data_item.php:106
194
  msgid "Customer reviews"
195
  msgstr ""
196
 
197
+ #: application/modules/Amazon/templates/data_item.php:107
198
  msgid "customer reviews"
199
  msgstr ""
200
 
213
  msgid "Universal"
214
  msgstr ""
215
 
216
+ #: application/modules/Clickbank/templates/data_simple.php:6
217
+ #: application/modules/Flickr/templates/data_simple.php:5
218
+ #: application/modules/Freebase/templates/data_simple.php:5
219
+ #: application/modules/GoogleBooks/templates/data_simple.php:5
220
+ #: application/modules/GoogleImages/templates/data_simple.php:5
221
+ #: application/modules/Twitter/templates/data_simple.php:5
222
+ #: application/modules/VkNews/templates/data_simple.php:5
223
+ #: application/modules/Youtube/templates/data_simple.php:5
224
+ msgid "Simple"
225
+ msgstr ""
226
+
227
  #: application/modules/Ebay/templates/data_grid.php:51
228
  #: application/modules/Ebay/templates/data_item.php:45
229
  #: application/modules/Ebay/templates/data_item.php:52
263
  msgid "EEK:"
264
  msgstr ""
265
 
 
 
 
 
 
 
 
 
 
 
266
  #: application/modules/Flickr/templates/data_simple.php:20
267
  msgid "Photo %s on Flickr"
268
  msgstr ""
271
  msgid "Source:"
272
  msgstr ""
273
 
 
 
 
 
 
 
 
 
274
  #: application/modules/Market/templates/data_item.php:32
275
  msgid "Customer reviews:"
276
  msgstr ""
315
  msgid "Comment:"
316
  msgstr ""
317
 
318
+ #: application/modules/Market/templates/data_item.php:130
319
+ msgid "All reviews on Yandex.Market"
320
+ msgstr ""
321
+
322
  #: application/modules/Youtube/templates/data_responsive_embed.php:5
323
  msgid "Large"
324
  msgstr ""
329
 
330
  #: templates/block_offers_list.php:9
331
  msgid "All offers list"
 
 
 
332
  msgstr ""
readme.txt CHANGED
@@ -1,9 +1,9 @@
1
  === Content Egg ===
2
  Contributors: keywordrush,koleksii,wpsoul
3
- Tags: content, affiliate, autoblogging, amazon, affilinet, coupons, flickr, youtube, commission junction, cj, images, wikipedia, freebase, ecommerce, links, shortcode, monetize, search engine optimization, moneymaking, price comparison, google images, timesaving
4
  Requires at least: 4.2.2
5
  Tested up to: 4.3
6
- Stable tag: 1.9.0
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
@@ -40,9 +40,9 @@ Easily adding auto updating products from affiliate systems and additional conte
40
  > <strong>PRO version</strong><br>
41
  >Do you want to get even more? Pro version offers tons of additional modules and extended functions.
42
  >
43
- >Modules of free version: Amazon, Google Images, Youtube, Commission Junction Links, Freebase, Affili.net Coupons.
44
  >
45
- >Additional modules of PRO version: Ebay, Zanox, Aliexpress, CJ Products, Affili.net Products, Linkshare, Flickr, Bing Images, Google Books, Google News, Twitter, VK news, Yandex Market...
46
  >
47
  >And we don't stop on these modules. All buyers of pro version can suggest us new module.
48
  >
@@ -107,6 +107,17 @@ If you can do any Wordpress page templates – you can do also templates for Con
107
 
108
  == Changelog ==
109
 
 
 
 
 
 
 
 
 
 
 
 
110
  = 1.9.0 =
111
  * New: Autoblogging!
112
  * New: Priority option for modules.
1
  === Content Egg ===
2
  Contributors: keywordrush,koleksii,wpsoul
3
+ Tags: content, affiliate, autoblogging, amazon, affilinet, coupons, flickr, youtube, commission junction, cj, images, wikipedia, freebase, ecommerce, links, shortcode, monetize, search engine optimization, moneymaking, price comparison, google images, timesaving, clickbank, parser, rss, api
4
  Requires at least: 4.2.2
5
  Tested up to: 4.3
6
+ Stable tag: 2.0.1
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
40
  > <strong>PRO version</strong><br>
41
  >Do you want to get even more? Pro version offers tons of additional modules and extended functions.
42
  >
43
+ >Modules of free version: Amazon, Google Images, Youtube, Commission Junction Links, Freebase, Affili.net Coupons, Related Keywords, RSS Fetcher.
44
  >
45
+ >Additional modules of PRO version: Ebay, Zanox, Aliexpress, CJ Products, ClickBank, Affili.net Products, Linkshare, Flickr, Bing Images, Google Books, Google News, Twitter, VK news, Yandex Market...
46
  >
47
  >And we don't stop on these modules. All buyers of pro version can suggest us new module.
48
  >
107
 
108
  == Changelog ==
109
 
110
+ = 2.0.1 =
111
+ * New: Related Keywords module.
112
+ * New: RSS Fetcher module.
113
+ * New: Post Types option.
114
+ * New: Filter bots option.
115
+ * New: Amazon module: lowestNewPrice & lowestUsedPrice.
116
+ * Improvement: Module templates.
117
+ * Fix: Update prices for products on single page.
118
+ * Fix: Amazon last update date display.
119
+ * Removed: Amazon customer reviews parser has become unstable and is no longer available.
120
+
121
  = 1.9.0 =
122
  * New: Autoblogging!
123
  * New: Priority option for modules.