Google Reviews Widget - Version 1.7.4

Version Description

  • Improve: added auto schedule for refreshing Google reviews
  • Improve: added new locale fi_FI
  • Improve: added new locale he_IL
Download this release

Release Info

Developer widgetpack
Plugin Icon 128x128 Google Reviews Widget
Version 1.7.4
Comparing to
See all releases

Code changes from version 1.7.3 to 1.7.4

grw-finder.php CHANGED
@@ -1,6 +1,6 @@
1
  <div class="form-group">
2
  <div class="col-sm-12">
3
- <h4><?php echo grw_i('Enter Place ID of your Google business. If you don\'t know this, you can simply find it by <a href="https://www.launch2success.com/guide/find-any-google-id/" target="_blank">this instruction</a>.'); ?></h4>
4
  <input type="text" class="grw-place-id form-control" value="" placeholder="Place ID" />
5
  <small class="grw-error"></small>
6
  </div>
@@ -19,8 +19,8 @@
19
  <option value="de"><?php echo grw_i('German'); ?></option>
20
  <option value="el"><?php echo grw_i('Greek'); ?></option>
21
  <option value="en"><?php echo grw_i('English'); ?></option>
22
- <option value="en-AU"><?php echo grw_i('English (Australian)'); ?></option>
23
- <option value="en-GB"><?php echo grw_i('English (Great Britain)'); ?></option>
24
  <option value="es"><?php echo grw_i('Spanish'); ?></option>
25
  <option value="eu"><?php echo grw_i('Basque'); ?></option>
26
  <option value="eu"><?php echo grw_i('Basque'); ?></option>
1
  <div class="form-group">
2
  <div class="col-sm-12">
3
+ <h4><?php echo grw_i('Enter Place ID of your Google location. If you don\'t know this, you can simply find it by <a href="https://www.launch2success.com/guide/find-any-google-id/" target="_blank">this instruction</a>.'); ?></h4>
4
  <input type="text" class="grw-place-id form-control" value="" placeholder="Place ID" />
5
  <small class="grw-error"></small>
6
  </div>
19
  <option value="de"><?php echo grw_i('German'); ?></option>
20
  <option value="el"><?php echo grw_i('Greek'); ?></option>
21
  <option value="en"><?php echo grw_i('English'); ?></option>
22
+ <!--option value="en-AU"><?php echo grw_i('English (Australian)'); ?></option>
23
+ <option value="en-GB"><?php echo grw_i('English (Great Britain)'); ?></option-->
24
  <option value="es"><?php echo grw_i('Spanish'); ?></option>
25
  <option value="eu"><?php echo grw_i('Basque'); ?></option>
26
  <option value="eu"><?php echo grw_i('Basque'); ?></option>
grw-options.php CHANGED
@@ -63,6 +63,19 @@
63
  </div>
64
  </div>
65
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
  <div class="form-group">
67
  <div class="col-sm-12">
68
  <label>
@@ -86,6 +99,10 @@
86
  <label>
87
  <input id="<?php echo $this->get_field_id('reduce_avatars_size'); ?>" name="<?php echo $this->get_field_name('reduce_avatars_size'); ?>" type="checkbox" value="1" <?php checked('1', $reduce_avatars_size); ?> class="form-control" />
88
  <?php echo grw_i('Reduce avatars size'); ?>
 
 
 
 
89
  </label>
90
  </div>
91
  </div>
63
  </div>
64
  </div>
65
 
66
+ <div class="form-group">
67
+ <div class="col-sm-12">
68
+ <label>
69
+ <input id="<?php echo $this->get_field_id('refresh_reviews'); ?>" name="<?php echo $this->get_field_name('refresh_reviews'); ?>" type="checkbox" value="1" <?php checked('1', $refresh_reviews); ?> class="form-control" />
70
+ <?php echo grw_i('Refresh reviews'); ?>
71
+ <span class="rplg-quest rplg-toggle" title="Click to help">?</span>
72
+ <div style="display:none">
73
+ The plugin uses the Google Places API to get your reviews. <b>The API only returns the 5 most helpful reviews (it's a limitation of Google, not the plugin)</b>. This option calls the Places API once in three days (to avoid a Google Billing) to check for a new reviews and if there are, adds to the plugin.<br><br>Also if you see the new reviews on Google map, but after some time it's not added to the plugin, it means that Google does not include these reviews to the API and the plugin can't get this.<br><br>If you need to get all reviews, please use <a href="https://richplugins.com/business-reviews-bundle-wordpress-plugin" target="_blank">the Business plugin</a> which uses a Google My Business API, but this GMB API is available only for verified Google business owner accounts.
74
+ </div>
75
+ </label>
76
+ </div>
77
+ </div>
78
+
79
  <div class="form-group">
80
  <div class="col-sm-12">
81
  <label>
99
  <label>
100
  <input id="<?php echo $this->get_field_id('reduce_avatars_size'); ?>" name="<?php echo $this->get_field_name('reduce_avatars_size'); ?>" type="checkbox" value="1" <?php checked('1', $reduce_avatars_size); ?> class="form-control" />
101
  <?php echo grw_i('Reduce avatars size'); ?>
102
+ <span class="rplg-quest rplg-toggle" title="Click to help">?</span>
103
+ <div style="display:none">
104
+ By default the Google Places API returns the reviewer's avatars of 128px in size, this option reduces the size to 50px.
105
+ </div>
106
  </label>
107
  </div>
108
  </div>
grw-reviews.php CHANGED
@@ -35,9 +35,21 @@ if (is_numeric($max_width)) {
35
  if (is_numeric($max_height)) {
36
  $max_height = $max_height . 'px';
37
  }
38
- ?>
39
 
40
- <?php if ($view_mode != 'list') { ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
41
 
42
  <div class="wp-gr wpac">
43
  <script type="text/javascript">
35
  if (is_numeric($max_height)) {
36
  $max_height = $max_height . 'px';
37
  }
 
38
 
39
+ if ($refresh_reviews) {
40
+ $schedule_step = 60 * 60 * 55;
41
+ $args = array($place_id);
42
+ if (strlen($reviews_lang) > 0) {
43
+ array_push($args, $reviews_lang);
44
+ }
45
+ $schedule_cache_key = 'grw_refresh_reviews_' . join('_', $args);
46
+ if (get_transient($schedule_cache_key) === false) {
47
+ wp_schedule_single_event(time() + $schedule_step, 'grw_refresh_reviews', array($args));
48
+ set_transient($schedule_cache_key, $schedule_cache_key, $schedule_step + 60 * 10);
49
+ }
50
+ }
51
+
52
+ if ($view_mode != 'list') { ?>
53
 
54
  <div class="wp-gr wpac">
55
  <script type="text/javascript">
grw-widget.php CHANGED
@@ -25,6 +25,7 @@ class Goog_Reviews_Widget extends WP_Widget {
25
  'pagination' => '5',
26
  'max_width' => '',
27
  'max_height' => '',
 
28
  'centered' => false,
29
  'reduce_avatars_size' => true,
30
  'open_link' => true,
25
  'pagination' => '5',
26
  'max_width' => '',
27
  'max_height' => '',
28
+ 'refresh_reviews' => true,
29
  'centered' => false,
30
  'reduce_avatars_size' => true,
31
  'open_link' => true,
grw.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Google Reviews Widget
4
  Plugin URI: https://richplugins.com/business-reviews-bundle-wordpress-plugin
5
  Description: Instantly Google Places Reviews on your website to increase user confidence and SEO.
6
  Author: RichPlugins <support@richplugins.com>
7
- Version: 1.7.3
8
  Author URI: https://richplugins.com
9
  */
10
 
@@ -13,7 +13,7 @@ require(ABSPATH . 'wp-includes/version.php');
13
  include_once(dirname(__FILE__) . '/api/urlopen.php');
14
  include_once(dirname(__FILE__) . '/helper/debug.php');
15
 
16
- define('GRW_VERSION', '1.7.3');
17
  define('GRW_GOOGLE_PLACE_API', 'https://maps.googleapis.com/maps/api/place/');
18
  define('GRW_GOOGLE_AVATAR', 'https://lh3.googleusercontent.com/-8hepWJzFXpE/AAAAAAAAAAI/AAAAAAAAAAA/I80WzYfIxCQ/s50-c/114307615494839964028.jpg');
19
  define('GRW_PLUGIN_URL', plugins_url(basename(plugin_dir_path(__FILE__ )), basename(__FILE__)));
@@ -329,8 +329,8 @@ function grw_save_reviews($place, $min_filter = 0) {
329
  'photo' => $place->business_photo,
330
  'icon' => $place->icon,
331
  'address' => $place->formatted_address,
332
- 'rating' => isset($place->rating) ? $place->rating : null,
333
- 'url' => isset($place->url) ? $place->url : null,
334
  'website' => isset($place->website) ? $place->website : null
335
  ));
336
  $google_place_id = $wpdb->insert_id;
@@ -343,7 +343,13 @@ function grw_save_reviews($place, $min_filter = 0) {
343
  continue;
344
  }
345
 
346
- $google_review_id = $wpdb->get_var($wpdb->prepare("SELECT id FROM " . $wpdb->prefix . "grp_google_review WHERE time = %s", $review->time));
 
 
 
 
 
 
347
  if ($google_review_id) {
348
  $update_params = array(
349
  'rating' => $review->rating,
@@ -362,7 +368,7 @@ function grw_save_reviews($place, $min_filter = 0) {
362
  'time' => $review->time,
363
  'language' => $review->language,
364
  'author_name' => $review->author_name,
365
- 'author_url' => isset($review->author_url) ? $review->author_url : null,
366
  'profile_photo_url' => isset($review->profile_photo_url) ? $review->profile_photo_url : null
367
  ));
368
  }
@@ -370,6 +376,33 @@ function grw_save_reviews($place, $min_filter = 0) {
370
  }
371
  }
372
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
373
  function grw_lang_init() {
374
  $plugin_dir = basename(dirname(__FILE__));
375
  load_plugin_textdomain('grw', false, basename( dirname( __FILE__ ) ) . '/languages');
4
  Plugin URI: https://richplugins.com/business-reviews-bundle-wordpress-plugin
5
  Description: Instantly Google Places Reviews on your website to increase user confidence and SEO.
6
  Author: RichPlugins <support@richplugins.com>
7
+ Version: 1.7.4
8
  Author URI: https://richplugins.com
9
  */
10
 
13
  include_once(dirname(__FILE__) . '/api/urlopen.php');
14
  include_once(dirname(__FILE__) . '/helper/debug.php');
15
 
16
+ define('GRW_VERSION', '1.7.4');
17
  define('GRW_GOOGLE_PLACE_API', 'https://maps.googleapis.com/maps/api/place/');
18
  define('GRW_GOOGLE_AVATAR', 'https://lh3.googleusercontent.com/-8hepWJzFXpE/AAAAAAAAAAI/AAAAAAAAAAA/I80WzYfIxCQ/s50-c/114307615494839964028.jpg');
19
  define('GRW_PLUGIN_URL', plugins_url(basename(plugin_dir_path(__FILE__ )), basename(__FILE__)));
329
  'photo' => $place->business_photo,
330
  'icon' => $place->icon,
331
  'address' => $place->formatted_address,
332
+ 'rating' => isset($place->rating) ? $place->rating : null,
333
+ 'url' => isset($place->url) ? $place->url : null,
334
  'website' => isset($place->website) ? $place->website : null
335
  ));
336
  $google_place_id = $wpdb->insert_id;
343
  continue;
344
  }
345
 
346
+ $google_review_id = 0;
347
+ if (isset($review->author_url) && strlen($review->author_url) > 0) {
348
+ $google_review_id = $wpdb->get_var($wpdb->prepare("SELECT id FROM " . $wpdb->prefix . "grp_google_review WHERE author_url = %s", $review->author_url));
349
+ } else {
350
+ $google_review_id = $wpdb->get_var($wpdb->prepare("SELECT id FROM " . $wpdb->prefix . "grp_google_review WHERE time = %s", $review->time));
351
+ }
352
+
353
  if ($google_review_id) {
354
  $update_params = array(
355
  'rating' => $review->rating,
368
  'time' => $review->time,
369
  'language' => $review->language,
370
  'author_name' => $review->author_name,
371
+ 'author_url' => isset($review->author_url) ? $review->author_url : null,
372
  'profile_photo_url' => isset($review->profile_photo_url) ? $review->profile_photo_url : null
373
  ));
374
  }
376
  }
377
  }
378
 
379
+ /*-------------------------------- Refresh Reviews --------------------------------*/
380
+ function grw_refresh_reviews($args) {
381
+ $google_api_key = get_option('grw_google_api_key');
382
+ if (!$google_api_key || strlen($google_api_key) < 1) {
383
+ return;
384
+ }
385
+
386
+ $place_id = $args[0];
387
+ $reviews_lang = $args[1];
388
+
389
+ $url = grw_api_url($place_id, $reviews_lang);
390
+
391
+ $response = rplg_urlopen($url);
392
+
393
+ $response_data = $response['data'];
394
+ $response_json = rplg_json_decode($response_data);
395
+
396
+ if ($response_json && isset($response_json->result)) {
397
+ $response_json->result->business_photo = grw_business_avatar($response_json->result);
398
+ grw_save_reviews($response_json->result);
399
+ }
400
+
401
+ delete_transient('grw_refresh_reviews_' . join('_', $args));
402
+ }
403
+ add_action('grw_refresh_reviews', 'grw_refresh_reviews');
404
+
405
+ /*-------------------------------- Init language --------------------------------*/
406
  function grw_lang_init() {
407
  $plugin_dir = basename(dirname(__FILE__));
408
  load_plugin_textdomain('grw', false, basename( dirname( __FILE__ ) ) . '/languages');
languages/grw-fi_FI.mo ADDED
Binary file
languages/grw-fi_FI.po ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Language: fi\n"
4
+ "MIME-Version: 1.0\n"
5
+ "Content-Type: text/plain; charset=UTF-8\n"
6
+ "Content-Transfer-Encoding: 8bit\n"
7
+ "X-Generator: Poedit 2.2\n"
8
+ "Project-Id-Version: \n"
9
+ "POT-Creation-Date: \n"
10
+ "PO-Revision-Date: \n"
11
+ "Last-Translator: \n"
12
+ "Language-Team: \n"
13
+
14
+ msgid "Google Rating"
15
+ msgstr "Google arvostelut"
16
+
17
+ msgid "See All Reviews"
18
+ msgstr "Katso kaikki arvostelut"
19
+
20
+ msgid "Google User"
21
+ msgstr "Google-käyttäjä"
22
+
23
+ msgid "read more"
24
+ msgstr "lue lisää"
25
+
26
+ msgid "Next Reviews"
27
+ msgstr "Seuraavat arvostelut"
28
+
29
+ msgid "Write a review"
30
+ msgstr "Kirjoita arvostelu"
31
+
32
+ msgid "Based on %s reviews"
33
+ msgstr "Perustuu %s arvioon"
languages/grw-he_IL.mo ADDED
Binary file
languages/grw-he_IL.po ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Language: he_IL\n"
4
+ "MIME-Version: 1.0\n"
5
+ "Content-Type: text/plain; charset=UTF-8\n"
6
+ "Content-Transfer-Encoding: 8bit\n"
7
+ "X-Generator: Poedit 2.2\n"
8
+ "Project-Id-Version: \n"
9
+ "POT-Creation-Date: \n"
10
+ "PO-Revision-Date: \n"
11
+ "Last-Translator: \n"
12
+ "Language-Team: \n"
13
+
14
+ msgid "Google Rating"
15
+ msgstr "דירוג גוגל"
16
+
17
+ msgid "See All Reviews"
18
+ msgstr "לקריאת כל הביקורות"
19
+
20
+ msgid "Google User"
21
+ msgstr "משתמש גוגל"
22
+
23
+ msgid "read more"
24
+ msgstr "קראו עוד"
25
+
26
+ msgid "Next Reviews"
27
+ msgstr "הביקורות הבאות"
28
+
29
+ msgid "Write a review"
30
+ msgstr "כתבו ביקורת"
31
+
32
+ msgid "Based on %s reviews"
33
+ msgstr "מבוסס על %s ביקורות"
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://richplugins.com/business-reviews-bundle-wordpress-plugin
4
  Tags: google, reviews, google reviews, google places, google places reviews, testimonials, google review widget, google business reviews, slider, google review, review, google place review, google map reviews, google reviews pro, facebook reviews, facebook page reviews, yelp reviews, yelp business reviews
5
  Requires at least: 2.8
6
  Tested up to: 5.1
7
- Stable tag: 1.7.3
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -24,8 +24,9 @@ This plugin display Google Business Reviews on your websites in sidebar widget.
24
 
25
  * Free!
26
  * SEO
 
27
  * Trim long reviews with "read more" link
28
- * Display up to 5 Google business reviews per location
29
  * Keep all reviews in WordPress database
30
  * Shows real reviews from G+ users to increase user confidence
31
  * Easy search of place and instantly show reviews
@@ -41,8 +42,8 @@ This plugin display Google Business Reviews on your websites in sidebar widget.
41
 
42
  [Upgrade to Business](https://richplugins.com/business-reviews-bundle-wordpress-plugin)
43
 
 
44
  * Merge reviews between each other from different platforms (Google, Facebook, Yelp) and places
45
- * Trying to get more than 5 Google reviews
46
  * Google Rich Snippets (schema.org)
47
  * Support shortcode, powerful <b>Shortcode Builder</b>
48
  * Slider/Grid themes to show G+ reviews like testimonials
@@ -74,6 +75,11 @@ Why limit your reviews to just Google Reviews? Check out our other free reviews
74
 
75
  == Changelog ==
76
 
 
 
 
 
 
77
  = 1.7.3 =
78
  * Improve: reduce reviewer avatars size
79
  * Improve: added option for image lazy loading
4
  Tags: google, reviews, google reviews, google places, google places reviews, testimonials, google review widget, google business reviews, slider, google review, review, google place review, google map reviews, google reviews pro, facebook reviews, facebook page reviews, yelp reviews, yelp business reviews
5
  Requires at least: 2.8
6
  Tested up to: 5.1
7
+ Stable tag: 1.7.4
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
24
 
25
  * Free!
26
  * SEO
27
+ * Refresh reviews
28
  * Trim long reviews with "read more" link
29
+ * Displays up to 5 Google business reviews per location
30
  * Keep all reviews in WordPress database
31
  * Shows real reviews from G+ users to increase user confidence
32
  * Easy search of place and instantly show reviews
42
 
43
  [Upgrade to Business](https://richplugins.com/business-reviews-bundle-wordpress-plugin)
44
 
45
+ * Displays all Google reviews through Business API
46
  * Merge reviews between each other from different platforms (Google, Facebook, Yelp) and places
 
47
  * Google Rich Snippets (schema.org)
48
  * Support shortcode, powerful <b>Shortcode Builder</b>
49
  * Slider/Grid themes to show G+ reviews like testimonials
75
 
76
  == Changelog ==
77
 
78
+ = 1.7.4 =
79
+ * Improve: added auto schedule for refreshing Google reviews
80
+ * Improve: added new locale fi_FI
81
+ * Improve: added new locale he_IL
82
+
83
  = 1.7.3 =
84
  * Improve: reduce reviewer avatars size
85
  * Improve: added option for image lazy loading
static/css/rplg-wp.css CHANGED
@@ -7,6 +7,10 @@
7
  clear: both;
8
  }
9
 
 
 
 
 
10
  .widget-content .form-group {
11
  margin: 10px 0 0;
12
  }
@@ -28,14 +32,6 @@
28
  margin: 10px 0;
29
  }
30
 
31
- .rplg-options-toggle {
32
- padding: 10px;
33
- margin: 10px 0 0;
34
- cursor: pointer;
35
- border: 1px solid #dbdbdb;
36
- background: #eee url('../img/button-down-black.svg') no-repeat right;
37
- }
38
-
39
  .rplg-options {
40
  padding: 0px 4px;
41
  }
@@ -57,6 +53,27 @@
57
  text-decoration: underline;
58
  }
59
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  /*-------------------------------- google finder --------------------------------*/
61
  .grw-step {
62
  display: inline-block;
7
  clear: both;
8
  }
9
 
10
+ .form-group {
11
+ position: relative;
12
+ }
13
+
14
  .widget-content .form-group {
15
  margin: 10px 0 0;
16
  }
32
  margin: 10px 0;
33
  }
34
 
 
 
 
 
 
 
 
 
35
  .rplg-options {
36
  padding: 0px 4px;
37
  }
53
  text-decoration: underline;
54
  }
55
 
56
+ .rplg-quest {
57
+ position: absolute;
58
+ top: -2px;
59
+ right: 2px;
60
+ width: 16px;
61
+ cursor: pointer;
62
+ font-size: 12px;
63
+ font-weight: bold;
64
+ text-align: center;
65
+ border: 1px solid #ccc;
66
+ border-radius: 50px;
67
+ background: #eee;
68
+ }
69
+
70
+ .rplg-quest + div {
71
+ padding: 6px;
72
+ margin: 5px 0 0;
73
+ border-radius: 2px;
74
+ background: #eee;
75
+ }
76
+
77
  /*-------------------------------- google finder --------------------------------*/
78
  .grw-step {
79
  display: inline-block;
static/js/grw-finder.js CHANGED
@@ -242,9 +242,10 @@ function grw_jquery_init(el, cb) {
242
  return false;
243
  });
244
 
245
- $('.rplg-options-toggle', el).unbind('click').click(function () {
246
  $(this).toggleClass('toggled');
247
  $(this).next().slideToggle();
 
248
  });
249
  });
250
  }
242
  return false;
243
  });
244
 
245
+ $('.rplg-toggle', el).unbind('click').click(function () {
246
  $(this).toggleClass('toggled');
247
  $(this).next().slideToggle();
248
+ return false;
249
  });
250
  });
251
  }
static/js/wpac-time.js CHANGED
@@ -37,4 +37,7 @@ years:function(a){return WPacTime.declineNum(Math.round(a),"\u0433\u043e\u0434 \
37
  Math.round(a)+" minuts"},hour:"fa una hora",hours:function(a){return"fa "+Math.round(a)+" hores"},day:"fa un dia",days:function(a){return"fa "+Math.round(a)+" dies"},month:"fa un mes",months:function(a){return"fa "+Math.round(a/30)+" mesos"},year:"fa un any",years:function(a){return"fa "+Math.round(a)+" anys"}},sv:{second:"just nu",minute:"en minut sen",minutes:function(a){return Math.round(a)+" minuter sen"},hour:"en timme sen",hours:function(a){return Math.round(a)+" timmar sen"},day:"en dag sen",
38
  days:function(a){return Math.round(a)+" dagar sen"},month:"en m\u00e5nad sen",months:function(a){return Math.round(a/30)+" m\u00e5nader sen"},year:"en \u00e5r sen",years:function(a){return Math.round(a)+" \u00e5r sen"}},pl:{second:"w\u0142a\u015bnie teraz",minute:"minut\u0119 temu",minutes:function(a){return Math.round(a)+" minut temu"},hour:"godzin\u0119 temu",hours:function(a){return Math.round(a)+" godzin temu"},day:"wczoraj",days:function(a){return Math.round(a)+" dni temu"},month:"miesi\u0105c temu",
39
  months:function(a){return Math.round(a/30)+" miesi\u0119cy temu"},year:"rok temu",years:function(a){return Math.round(a)+" lat temu"}},pt:{second:"agora",minute:"1 minuto atr\u00e1s",minutes:function(a){return Math.round(a)+" minutos atr\u00e1s"},hour:"1 hora atr\u00e1s",hours:function(a){return Math.round(a)+" horas atr\u00e1s"},day:"1 dia atr\u00e1s",days:function(a){return Math.round(a)+" dias atr\u00e1s"},month:"1 m\u00eas atr\u00e1s",months:function(a){return Math.round(a/30)+" meses atr\u00e1s"},
40
- year:"1 ano atr\u00e1s",years:function(a){return Math.round(a)+" anos atr\u00e1s"}}};
 
 
 
37
  Math.round(a)+" minuts"},hour:"fa una hora",hours:function(a){return"fa "+Math.round(a)+" hores"},day:"fa un dia",days:function(a){return"fa "+Math.round(a)+" dies"},month:"fa un mes",months:function(a){return"fa "+Math.round(a/30)+" mesos"},year:"fa un any",years:function(a){return"fa "+Math.round(a)+" anys"}},sv:{second:"just nu",minute:"en minut sen",minutes:function(a){return Math.round(a)+" minuter sen"},hour:"en timme sen",hours:function(a){return Math.round(a)+" timmar sen"},day:"en dag sen",
38
  days:function(a){return Math.round(a)+" dagar sen"},month:"en m\u00e5nad sen",months:function(a){return Math.round(a/30)+" m\u00e5nader sen"},year:"en \u00e5r sen",years:function(a){return Math.round(a)+" \u00e5r sen"}},pl:{second:"w\u0142a\u015bnie teraz",minute:"minut\u0119 temu",minutes:function(a){return Math.round(a)+" minut temu"},hour:"godzin\u0119 temu",hours:function(a){return Math.round(a)+" godzin temu"},day:"wczoraj",days:function(a){return Math.round(a)+" dni temu"},month:"miesi\u0105c temu",
39
  months:function(a){return Math.round(a/30)+" miesi\u0119cy temu"},year:"rok temu",years:function(a){return Math.round(a)+" lat temu"}},pt:{second:"agora",minute:"1 minuto atr\u00e1s",minutes:function(a){return Math.round(a)+" minutos atr\u00e1s"},hour:"1 hora atr\u00e1s",hours:function(a){return Math.round(a)+" horas atr\u00e1s"},day:"1 dia atr\u00e1s",days:function(a){return Math.round(a)+" dias atr\u00e1s"},month:"1 m\u00eas atr\u00e1s",months:function(a){return Math.round(a/30)+" meses atr\u00e1s"},
40
+ year:"1 ano atr\u00e1s",years:function(a){return Math.round(a)+" anos atr\u00e1s"}},hu:{second:"\u00e9pp az im\u00e9nt",minute:"1 perccel ezel\u0151tt",minutes:function(a){return Math.round(a)+" perccel ezel\u0151tt"},hour:"\u00f3r\u00e1val ezel\u0151tt",hours:function(a){return Math.round(a)+" \u00f3r\u00e1val ezel\u0151tt"},day:"nappal ezel\u0151tt",days:function(a){return Math.round(a)+" nappal ezel\u0151tt"},month:"h\u00f3nappal ezel\u0151tt",months:function(a){return Math.round(a/30)+" h\u00f3nappal ezel\u0151tt"},
41
+ year:"\u00e9vvel ezel\u0151tt",years:function(a){return Math.round(a)+" \u00e9vvel ezel\u0151tt"}},fi:{second:"juuri nyt",minute:"minuutti sitten",minutes:function(a){return Math.round(a)+" minuuttia sitten"},hour:"tunti sitten",hours:function(a){return Math.round(a)+" tuntia sitten"},day:"p\u00e4iv\u00e4 sitten",days:function(a){return Math.round(a)+" p\u00e4iv\u00e4\u00e4 sitten"},month:"kuukausi sitten",months:function(a){return Math.round(a/30)+" kuukautta sitten"},year:"vuosi sitten",years:function(a){return Math.round(a)+
42
+ " vuotta sitten"}},he:{second:"\u05d4\u05e8\u05d2\u05e2",minute:"\u05dc\u05e4\u05e0\u05d9 \u05d3\u05e7\u05d4",minutes:function(a){return"\u05dc\u05e4\u05e0\u05d9 "+Math.round(a)+" \u05d3\u05e7\u05d5\u05ea"},hour:"\u05dc\u05e4\u05e0\u05d9 \u05e9\u05e2\u05d4",hours:function(a){return"\u05dc\u05e4\u05e0\u05d9 "+Math.round(a)+" \u05e9\u05e2\u05d5\u05ea"},day:"\u05dc\u05e4\u05e0\u05d9 \u05d9\u05d5\u05dd",days:function(a){return"\u05dc\u05e4\u05e0\u05d9 "+Math.round(a)+" \u05d9\u05de\u05d9\u05dd"},month:"\u05dc\u05e4\u05e0\u05d9 \u05d7\u05d5\u05d3\u05e9",
43
+ months:function(a){return 2==Math.round(a/30)?"\u05dc\u05e4\u05e0\u05d9 \u05d7\u05d5\u05d3\u05e9\u05d9\u05d9\u05dd":"\u05dc\u05e4\u05e0\u05d9 "+Math.round(a/30)+" \u05d7\u05d5\u05d3\u05e9\u05d9\u05dd"},year:"\u05dc\u05e4\u05e0\u05d9 \u05e9\u05e0\u05d4",years:function(a){return"\u05dc\u05e4\u05e0\u05d9 "+Math.round(a)+" \u05e9\u05e0\u05d9\u05dd"}}};