Version Description
Performance improvement, new Remote API, updated styling and bug fixes.
=
Download this release
Release Info
Developer | designbymerovingi |
Plugin | myCRED |
Version | 1.3 |
Comparing to | |
See all releases |
Code changes from version 1.2.3 to 1.3
- abstracts/mycred-abstract-hook.php +1 -1
- abstracts/mycred-abstract-module.php +31 -25
- addons/banking/myCRED-addon-banking.php +36 -12
- addons/banking/services/mycred-bank-service-interest.php +21 -10
- addons/banking/services/mycred-bank-service-payouts.php +16 -4
- addons/buddypress/hooks/bp-profile.php +21 -3
- addons/buddypress/myCRED-addon-buddypress.php +19 -14
- addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php +3 -4
- addons/buy-creds/myCRED-addon-buy-creds.php +40 -29
- addons/email-notices/myCRED-addon-email-notices.php +2 -2
- addons/gateway/carts/mycred-marketpress.php +86 -45
- addons/gateway/carts/mycred-woocommerce.php +60 -5
- addons/gateway/carts/mycred-wpecommerce.php +399 -0
- addons/gateway/event-booking/mycred-eventespresso3.php +29 -4
- addons/gateway/event-booking/mycred-eventsmanager-pro.php +600 -0
- addons/gateway/event-booking/mycred-eventsmanager.php +29 -4
- addons/gateway/membership/index.php +3 -0
- addons/gateway/myCRED-addon-gateway.php +39 -6
- addons/import/myCRED-addon-import.php +9 -8
- addons/notifications/myCRED-addon-notifications.php +41 -32
- addons/ranks/myCRED-addon-ranks.php +13 -14
- addons/sell-content/myCRED-addon-sell-content.php +16 -7
- addons/transfer/myCRED-addon-transfer.php +11 -11
- assets/css/admin.css +35 -16
- assets/css/inline-edit.css +1 -1
- assets/css/zocial/zocial-regular-webfont.eot +0 -0
- assets/css/zocial/zocial-regular-webfont.svg +0 -151
- assets/css/zocial/zocial-regular-webfont.ttf +0 -0
- assets/css/zocial/zocial-regular-webfont.woff +0 -0
- assets/css/zocial/zocial.css +0 -473
- assets/images/admin-icons.png +0 -0
- assets/images/gateway-icons.png +0 -0
- assets/js/links.js +10 -23
- assets/js/management.js +183 -0
- assets/js/widget.js +0 -5
- assets/libs/index.php +3 -0
- assets/libs/parsecsv.lib.php +695 -0
- includes/mycred-admin.php +5 -4
- includes/mycred-functions.php +243 -45
- includes/mycred-install.php +40 -95
- includes/mycred-log.php +476 -0
- includes/mycred-network.php +97 -53
- includes/mycred-protect.php +4 -4
- includes/mycred-rankings.php +12 -14
- includes/mycred-remote.php +632 -0
- includes/mycred-shortcodes.php +182 -11
- includes/mycred-widgets.php +2 -0
- lang/mycred-en_US.mo +0 -0
- lang/mycred.pot +1960 -1810
- modules/mycred-module-addons.php +21 -16
- modules/mycred-module-general.php +274 -14
- modules/mycred-module-help.php +0 -205
- modules/mycred-module-hooks.php +150 -193
- modules/mycred-module-log.php +48 -539
- modules/mycred-module-plugins.php +0 -1572
- modules/mycred-module-subscriptions.php +0 -508
- mycred.php +480 -640
- plugins/index.php +3 -0
- plugins/mycred-hook-badgeOS.php +287 -0
- plugins/mycred-hook-bbPress.php +529 -0
- plugins/mycred-hook-contact-form7.php +147 -0
- plugins/mycred-hook-events-manager-light.php +171 -0
- plugins/mycred-hook-gd-star-rating.php +130 -0
- plugins/mycred-hook-invite-anyone.php +180 -0
- plugins/mycred-hook-jetpack.php +520 -0
- plugins/mycred-hook-wp-favorite-posts.php +155 -0
- plugins/mycred-hook-wp-polls.php +144 -0
- readme.txt +67 -43
abstracts/mycred-abstract-hook.php
CHANGED
@@ -44,7 +44,7 @@ if ( !class_exists( 'myCRED_Hook' ) ) {
|
|
44 |
|
45 |
// Apply default settings if needed
|
46 |
if ( !empty( $this->defaults ) )
|
47 |
-
$this->prefs =
|
48 |
}
|
49 |
|
50 |
/**
|
44 |
|
45 |
// Apply default settings if needed
|
46 |
if ( !empty( $this->defaults ) )
|
47 |
+
$this->prefs = mycred_apply_defaults( $this->defaults, $this->prefs );
|
48 |
}
|
49 |
|
50 |
/**
|
abstracts/mycred-abstract-module.php
CHANGED
@@ -4,7 +4,7 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
4 |
* myCRED_Module class
|
5 |
* @see http://mycred.me/classes/mycred_module/
|
6 |
* @since 0.1
|
7 |
-
* @version 1.
|
8 |
*/
|
9 |
if ( !class_exists( 'myCRED_Module' ) ) {
|
10 |
abstract class myCRED_Module {
|
@@ -74,7 +74,7 @@ if ( !class_exists( 'myCRED_Module' ) ) {
|
|
74 |
$this->menu_pos = $args['menu_pos'];
|
75 |
|
76 |
$this->set_settings( $args['defaults'] );
|
77 |
-
|
78 |
}
|
79 |
|
80 |
/**
|
@@ -110,10 +110,15 @@ if ( !class_exists( 'myCRED_Module' ) ) {
|
|
110 |
}
|
111 |
// Loop and grab
|
112 |
foreach ( $this->option_id as $option_id => $option_name ) {
|
113 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
$settings = get_option( $option_id );
|
115 |
-
|
116 |
-
$settings = get_blog_option( 1, $option_id );
|
117 |
|
118 |
if ( $settings === false && array_key_exists( $option_id, $defaults ) )
|
119 |
$this->$module[$option_name] = $defaults[$option_id];
|
@@ -133,10 +138,15 @@ if ( !class_exists( 'myCRED_Module' ) ) {
|
|
133 |
}
|
134 |
// Grab the requested option
|
135 |
else {
|
136 |
-
if (
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
$this->$module = get_option( $this->option_id );
|
138 |
-
|
139 |
-
$this->$module = get_blog_option( 1, $this->option_id );
|
140 |
|
141 |
if ( $this->$module === false && !empty( $defaults ) )
|
142 |
$this->$module = $defaults;
|
@@ -295,7 +305,7 @@ if ( !class_exists( 'myCRED_Module' ) ) {
|
|
295 |
*/
|
296 |
function add_menu() {
|
297 |
// Network Setting for Multisites
|
298 |
-
if ( (
|
299 |
|
300 |
if ( !empty( $this->labels ) && !empty( $this->screen_id ) ) {
|
301 |
// Menu Label
|
@@ -347,30 +357,26 @@ if ( !class_exists( 'myCRED_Module' ) ) {
|
|
347 |
* Outputs the "click to open" and "click to close" text to the accordion.
|
348 |
*
|
349 |
* @since 0.1
|
350 |
-
* @version 1.
|
351 |
*/
|
352 |
function settings_header() {
|
353 |
-
if ( $this->accordion === true )
|
|
|
354 |
wp_enqueue_script( 'mycred-admin' );
|
355 |
-
|
356 |
-
wp_enqueue_style( 'mycred-admin' );
|
357 |
-
|
358 |
-
// Load help
|
359 |
-
$help = new myCRED_Help();
|
360 |
-
$help_screen = $this->module_name . '_page';
|
361 |
-
if ( method_exists( $help, $help_screen ) ) {
|
362 |
-
$screen = get_current_screen();
|
363 |
-
$help->$help_screen( $screen );
|
364 |
}
|
365 |
|
366 |
-
|
367 |
-
|
368 |
-
|
|
|
|
|
|
|
|
|
369 |
|
370 |
<style type="text/css">
|
371 |
h4:before { float:right; padding-right: 12px; font-size: 14px; font-weight: normal; color: silver; }
|
372 |
-
h4.ui-accordion-header.ui-state-active:before { content: "<?php
|
373 |
-
h4.ui-accordion-header:before { content: "<?php
|
374 |
</style>
|
375 |
<?php
|
376 |
}
|
4 |
* myCRED_Module class
|
5 |
* @see http://mycred.me/classes/mycred_module/
|
6 |
* @since 0.1
|
7 |
+
* @version 1.3
|
8 |
*/
|
9 |
if ( !class_exists( 'myCRED_Module' ) ) {
|
10 |
abstract class myCRED_Module {
|
74 |
$this->menu_pos = $args['menu_pos'];
|
75 |
|
76 |
$this->set_settings( $args['defaults'] );
|
77 |
+
$args = NULL;
|
78 |
}
|
79 |
|
80 |
/**
|
110 |
}
|
111 |
// Loop and grab
|
112 |
foreach ( $this->option_id as $option_id => $option_name ) {
|
113 |
+
if ( is_multisite() ) {
|
114 |
+
if ( mycred_override_settings() )
|
115 |
+
$settings = get_blog_option( 1, $option_id );
|
116 |
+
else
|
117 |
+
$settings = get_blog_option( $GLOBALS['blog_id'], $option_id );
|
118 |
+
}
|
119 |
+
else {
|
120 |
$settings = get_option( $option_id );
|
121 |
+
}
|
|
|
122 |
|
123 |
if ( $settings === false && array_key_exists( $option_id, $defaults ) )
|
124 |
$this->$module[$option_name] = $defaults[$option_id];
|
138 |
}
|
139 |
// Grab the requested option
|
140 |
else {
|
141 |
+
if ( is_multisite() ) {
|
142 |
+
if ( mycred_override_settings() )
|
143 |
+
$this->$module = get_blog_option( 1, $this->option_id );
|
144 |
+
else
|
145 |
+
$this->$module = get_blog_option( $GLOBALS['blog_id'], $this->option_id );
|
146 |
+
}
|
147 |
+
else {
|
148 |
$this->$module = get_option( $this->option_id );
|
149 |
+
}
|
|
|
150 |
|
151 |
if ( $this->$module === false && !empty( $defaults ) )
|
152 |
$this->$module = $defaults;
|
305 |
*/
|
306 |
function add_menu() {
|
307 |
// Network Setting for Multisites
|
308 |
+
if ( mycred_override_settings() && $GLOBALS['blog_id'] > 1 && $this->screen_id != 'myCRED' ) return;
|
309 |
|
310 |
if ( !empty( $this->labels ) && !empty( $this->screen_id ) ) {
|
311 |
// Menu Label
|
357 |
* Outputs the "click to open" and "click to close" text to the accordion.
|
358 |
*
|
359 |
* @since 0.1
|
360 |
+
* @version 1.2
|
361 |
*/
|
362 |
function settings_header() {
|
363 |
+
if ( $this->accordion === true ) {
|
364 |
+
wp_dequeue_script( 'bpge_admin_js_acc' );
|
365 |
wp_enqueue_script( 'mycred-admin' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
366 |
}
|
367 |
|
368 |
+
wp_enqueue_style( 'mycred-admin' ); ?>
|
369 |
+
|
370 |
+
<style type="text/css">
|
371 |
+
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-image: url(<?php echo apply_filters( 'mycred_icon', plugins_url( 'assets/images/cred-icon32.png', myCRED_THIS ) ); ?>); }
|
372 |
+
</style>
|
373 |
+
<?php
|
374 |
+
if ( $this->accordion === false ) return; ?>
|
375 |
|
376 |
<style type="text/css">
|
377 |
h4:before { float:right; padding-right: 12px; font-size: 14px; font-weight: normal; color: silver; }
|
378 |
+
h4.ui-accordion-header.ui-state-active:before { content: "<?php _e( 'click to close', 'mycred' ); ?>"; }
|
379 |
+
h4.ui-accordion-header:before { content: "<?php _e( 'click to open', 'mycred' ); ?>"; }
|
380 |
</style>
|
381 |
<?php
|
382 |
}
|
addons/banking/myCRED-addon-banking.php
CHANGED
@@ -32,7 +32,7 @@ require_once( myCRED_BANK_SERVICES_DIR . 'mycred-bank-service-payouts.php' );
|
|
32 |
*/
|
33 |
if ( !class_exists( 'myCRED_Banking' ) ) {
|
34 |
class myCRED_Banking extends myCRED_Module {
|
35 |
-
|
36 |
/**
|
37 |
* Constructor
|
38 |
*/
|
@@ -55,7 +55,7 @@ if ( !class_exists( 'myCRED_Banking' ) ) {
|
|
55 |
'menu_pos' => 30
|
56 |
) );
|
57 |
}
|
58 |
-
|
59 |
/**
|
60 |
* Load Services
|
61 |
* @since 1.2
|
@@ -98,7 +98,7 @@ if ( !class_exists( 'myCRED_Banking' ) ) {
|
|
98 |
}
|
99 |
}
|
100 |
}
|
101 |
-
|
102 |
/**
|
103 |
* Get Bank Services
|
104 |
* @since 1.2
|
@@ -132,7 +132,31 @@ if ( !class_exists( 'myCRED_Banking' ) ) {
|
|
132 |
$this->services = $services;
|
133 |
return $services;
|
134 |
}
|
135 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
/**
|
137 |
* Admin Page
|
138 |
* @since 0.1
|
@@ -141,10 +165,10 @@ if ( !class_exists( 'myCRED_Banking' ) ) {
|
|
141 |
public function admin_page() {
|
142 |
// Security
|
143 |
if ( !$this->core->can_edit_plugin( get_current_user_id() ) ) wp_die( __( 'Access Denied', 'mycred' ) );
|
144 |
-
|
145 |
// Get installed
|
146 |
$installed = $this->get( true );
|
147 |
-
|
148 |
// Message
|
149 |
if ( isset( $_GET['settings-updated'] ) && $_GET['settings-updated'] == true ) {
|
150 |
echo '<div class="updated settings-error"><p>' . __( 'Settings Updated', 'mycred' ) . '</p></div>';
|
@@ -155,7 +179,7 @@ if ( !class_exists( 'myCRED_Banking' ) ) {
|
|
155 |
<h2><?php echo apply_filters( 'mycred_label', myCRED_NAME ) . ' ' . __( 'Banking', 'mycred' ); ?></h2>
|
156 |
<p><?php echo $this->core->template_tags_general( __( 'This add-on allows you to setup transaction fees for %_plural% transfers, purchases or payments using the Gateway add-on, along with offering interest on %_plural% balances.', 'mycred' ) ); ?></p>
|
157 |
<?php if ( defined( 'DISABLE_WP_CRON' ) ) : ?>
|
158 |
-
|
159 |
<p><strong><?php _e( 'WP-Cron deactivation detected!', 'mycred' ); ?></strong></p>
|
160 |
<p><?php _e( 'Warning! This add-on requires WP - Cron to work.', 'mycred' ); ?></p>
|
161 |
<?php return; endif; ?>
|
@@ -167,7 +191,7 @@ if ( !class_exists( 'myCRED_Banking' ) ) {
|
|
167 |
<?php if ( !empty( $installed ) ) {
|
168 |
foreach ( $installed as $key => $data ) { ?>
|
169 |
|
170 |
-
<h4 class="<?php if ( $this->is_active( $key ) ) echo 'active'; else echo 'inactive'; ?>"
|
171 |
<div class="body" style="display:none;">
|
172 |
<p><?php echo nl2br( $this->core->template_tags_general( $data['description'] ) ); ?></p>
|
173 |
<label class="subheader"><?php _e( 'Enable', 'mycred' ); ?></label>
|
@@ -183,7 +207,7 @@ if ( !class_exists( 'myCRED_Banking' ) ) {
|
|
183 |
} ?>
|
184 |
|
185 |
</div>
|
186 |
-
<?php submit_button( __( 'Update Changes', 'mycred' ), 'primary large' ); ?>
|
187 |
|
188 |
</form>
|
189 |
</div>
|
@@ -212,17 +236,17 @@ if ( !class_exists( 'myCRED_Banking' ) ) {
|
|
212 |
if ( isset( $data['callback'] ) && isset( $post['service_prefs'][$key] ) ) {
|
213 |
// Old settings
|
214 |
$old_settings = $post['service_prefs'][$key];
|
215 |
-
|
216 |
// New settings
|
217 |
$new_settings = $this->call( 'sanitise_preferences', $data['callback'], $old_settings );
|
218 |
-
|
219 |
// If something went wrong use the old settings
|
220 |
if ( empty( $new_settings ) || $new_settings === NULL || !is_array( $new_settings ) )
|
221 |
$new_post['service_prefs'][$key] = $old_settings;
|
222 |
// Else we got ourselves new settings
|
223 |
else
|
224 |
$new_post['service_prefs'][$key] = $new_settings;
|
225 |
-
|
226 |
// Handle de-activation
|
227 |
if ( isset( $this->active ) && !empty( $this->active ) ) {
|
228 |
foreach ( $this->active as $id ) {
|
32 |
*/
|
33 |
if ( !class_exists( 'myCRED_Banking' ) ) {
|
34 |
class myCRED_Banking extends myCRED_Module {
|
35 |
+
|
36 |
/**
|
37 |
* Constructor
|
38 |
*/
|
55 |
'menu_pos' => 30
|
56 |
) );
|
57 |
}
|
58 |
+
|
59 |
/**
|
60 |
* Load Services
|
61 |
* @since 1.2
|
98 |
}
|
99 |
}
|
100 |
}
|
101 |
+
|
102 |
/**
|
103 |
* Get Bank Services
|
104 |
* @since 1.2
|
132 |
$this->services = $services;
|
133 |
return $services;
|
134 |
}
|
135 |
+
|
136 |
+
/**
|
137 |
+
* Page Header
|
138 |
+
* @since 1.3
|
139 |
+
* @version 1.0
|
140 |
+
*/
|
141 |
+
public function settings_header() {
|
142 |
+
wp_dequeue_script( 'bpge_admin_js_acc' );
|
143 |
+
wp_enqueue_script( 'mycred-admin' );
|
144 |
+
wp_enqueue_style( 'mycred-admin' ); ?>
|
145 |
+
|
146 |
+
<style type="text/css">
|
147 |
+
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-image: url(<?php echo apply_filters( 'mycred_icon', plugins_url( 'assets/images/cred-icon32.png', myCRED_THIS ) ); ?>); }
|
148 |
+
#myCRED-wrap #accordion h4 .gate-icon { display: block; width: 48px; height: 48px; margin: 0 0 0 0; padding: 0; float: left; line-height: 48px; }
|
149 |
+
#myCRED-wrap #accordion h4 .gate-icon { background-repeat: no-repeat; background-image: url(<?php echo plugins_url( 'assets/images/gateway-icons.png', myCRED_THIS ); ?>); background-position: 0 0; }
|
150 |
+
#myCRED-wrap #accordion h4 .gate-icon.inactive { background-position-x: 0; }
|
151 |
+
#myCRED-wrap #accordion h4 .gate-icon.active { background-position-x: -48px; }
|
152 |
+
#myCRED-wrap #accordion h4 .gate-icon.sandbox { background-position-x: -96px; }
|
153 |
+
h4:before { float:right; padding-right: 12px; font-size: 14px; font-weight: normal; color: silver; }
|
154 |
+
h4.ui-accordion-header.ui-state-active:before { content: "<?php _e( 'click to close', 'mycred' ); ?>"; }
|
155 |
+
h4.ui-accordion-header:before { content: "<?php _e( 'click to open', 'mycred' ); ?>"; }
|
156 |
+
</style>
|
157 |
+
<?php
|
158 |
+
}
|
159 |
+
|
160 |
/**
|
161 |
* Admin Page
|
162 |
* @since 0.1
|
165 |
public function admin_page() {
|
166 |
// Security
|
167 |
if ( !$this->core->can_edit_plugin( get_current_user_id() ) ) wp_die( __( 'Access Denied', 'mycred' ) );
|
168 |
+
|
169 |
// Get installed
|
170 |
$installed = $this->get( true );
|
171 |
+
|
172 |
// Message
|
173 |
if ( isset( $_GET['settings-updated'] ) && $_GET['settings-updated'] == true ) {
|
174 |
echo '<div class="updated settings-error"><p>' . __( 'Settings Updated', 'mycred' ) . '</p></div>';
|
179 |
<h2><?php echo apply_filters( 'mycred_label', myCRED_NAME ) . ' ' . __( 'Banking', 'mycred' ); ?></h2>
|
180 |
<p><?php echo $this->core->template_tags_general( __( 'This add-on allows you to setup transaction fees for %_plural% transfers, purchases or payments using the Gateway add-on, along with offering interest on %_plural% balances.', 'mycred' ) ); ?></p>
|
181 |
<?php if ( defined( 'DISABLE_WP_CRON' ) ) : ?>
|
182 |
+
|
183 |
<p><strong><?php _e( 'WP-Cron deactivation detected!', 'mycred' ); ?></strong></p>
|
184 |
<p><?php _e( 'Warning! This add-on requires WP - Cron to work.', 'mycred' ); ?></p>
|
185 |
<?php return; endif; ?>
|
191 |
<?php if ( !empty( $installed ) ) {
|
192 |
foreach ( $installed as $key => $data ) { ?>
|
193 |
|
194 |
+
<h4><div class="gate-icon <?php if ( $this->is_active( $key ) ) echo 'active'; else echo 'inactive'; ?>"></div><?php echo $this->core->template_tags_general( $data['title'] ); ?></h4>
|
195 |
<div class="body" style="display:none;">
|
196 |
<p><?php echo nl2br( $this->core->template_tags_general( $data['description'] ) ); ?></p>
|
197 |
<label class="subheader"><?php _e( 'Enable', 'mycred' ); ?></label>
|
207 |
} ?>
|
208 |
|
209 |
</div>
|
210 |
+
<?php submit_button( __( 'Update Changes', 'mycred' ), 'primary large', 'submit', false ); ?>
|
211 |
|
212 |
</form>
|
213 |
</div>
|
236 |
if ( isset( $data['callback'] ) && isset( $post['service_prefs'][$key] ) ) {
|
237 |
// Old settings
|
238 |
$old_settings = $post['service_prefs'][$key];
|
239 |
+
|
240 |
// New settings
|
241 |
$new_settings = $this->call( 'sanitise_preferences', $data['callback'], $old_settings );
|
242 |
+
|
243 |
// If something went wrong use the old settings
|
244 |
if ( empty( $new_settings ) || $new_settings === NULL || !is_array( $new_settings ) )
|
245 |
$new_post['service_prefs'][$key] = $old_settings;
|
246 |
// Else we got ourselves new settings
|
247 |
else
|
248 |
$new_post['service_prefs'][$key] = $new_settings;
|
249 |
+
|
250 |
// Handle de-activation
|
251 |
if ( isset( $this->active ) && !empty( $this->active ) ) {
|
252 |
foreach ( $this->active as $id ) {
|
addons/banking/services/mycred-bank-service-interest.php
CHANGED
@@ -23,7 +23,8 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
23 |
),
|
24 |
'last_payout' => '',
|
25 |
'log' => __( '%plural% interest rate payment', 'mycred' ),
|
26 |
-
'min_balance' => 1
|
|
|
27 |
)
|
28 |
), $service_prefs );
|
29 |
}
|
@@ -68,7 +69,7 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
68 |
*/
|
69 |
public function process() {
|
70 |
// Unschedule if amount is set to zero
|
71 |
-
if ( $this->prefs['rate']['amount'] == $this->core->
|
72 |
$timestamp = wp_next_scheduled( 'mycred_banking_interest_compound' );
|
73 |
if ( $timestamp !== false )
|
74 |
wp_clear_scheduled_hook( $timestamp, 'mycred_banking_interest_compound' );
|
@@ -81,7 +82,7 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
81 |
|
82 |
$unow = date_i18n( 'U' );
|
83 |
// Cant pay interest on zero
|
84 |
-
if ( $this->prefs['rate']['amount'] == $this->core->
|
85 |
|
86 |
// Should we payout
|
87 |
$payout_now = $this->get_now( $this->prefs['rate']['pay_out'] );
|
@@ -113,7 +114,7 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
113 |
* @version 1.0
|
114 |
*/
|
115 |
public function do_compound() {
|
116 |
-
if ( $this->prefs['rate']['amount'] == $this->core->
|
117 |
// Get users
|
118 |
$users = $this->get_users();
|
119 |
$total = count( $users );
|
@@ -140,12 +141,12 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
140 |
* Do Compound Batch
|
141 |
* Compounds interest for each user ID given in batch.
|
142 |
* @since 1.2
|
143 |
-
* @version 1.2
|
144 |
*/
|
145 |
public function do_compound_batch( $batch ) {
|
146 |
if ( !empty( $batch ) && is_array( $batch ) ) {
|
147 |
|
148 |
-
set_time_limit(
|
149 |
|
150 |
foreach ( $batch as $user_id ) {
|
151 |
$user_id = intval( $user_id );
|
@@ -214,12 +215,12 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
214 |
* Do Payout
|
215 |
* Runs though all user compounded interest and pays.
|
216 |
* @since 1.2
|
217 |
-
* @version 1.2
|
218 |
*/
|
219 |
public function do_interest_batch( $batch ) {
|
220 |
if ( !empty( $batch ) && is_array( $batch ) ) {
|
221 |
|
222 |
-
set_time_limit(
|
223 |
|
224 |
foreach ( $batch as $user_id ) {
|
225 |
$user_id = intval( $user_id );
|
@@ -266,7 +267,7 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
266 |
/**
|
267 |
* Preference for Savings
|
268 |
* @since 1.2
|
269 |
-
* @version 1.
|
270 |
*/
|
271 |
public function preferences() {
|
272 |
$prefs = $this->prefs; ?>
|
@@ -301,6 +302,13 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
301 |
<span class="description"><?php _e( 'Available template tags: General, %timeframe%, %rate%, %base%', 'mycred' ); ?></span>
|
302 |
</li>
|
303 |
</ol>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
304 |
<?php do_action( 'mycred_banking_compound_interest', $this->prefs ); ?>
|
305 |
<?php
|
306 |
}
|
@@ -308,7 +316,7 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
308 |
/**
|
309 |
* Sanitise Preferences
|
310 |
* @since 1.2
|
311 |
-
* @version 1.
|
312 |
*/
|
313 |
function sanitise_preferences( $post ) {
|
314 |
$new_settings = $post;
|
@@ -325,6 +333,9 @@ if ( !class_exists( 'myCRED_Banking_Service_Interest' ) ) {
|
|
325 |
|
326 |
$new_settings['log'] = trim( $post['log'] );
|
327 |
|
|
|
|
|
|
|
328 |
return apply_filters( 'mycred_banking_save_interest', $new_settings, $this->prefs );
|
329 |
}
|
330 |
}
|
23 |
),
|
24 |
'last_payout' => '',
|
25 |
'log' => __( '%plural% interest rate payment', 'mycred' ),
|
26 |
+
'min_balance' => 1,
|
27 |
+
'run_time' => 60
|
28 |
)
|
29 |
), $service_prefs );
|
30 |
}
|
69 |
*/
|
70 |
public function process() {
|
71 |
// Unschedule if amount is set to zero
|
72 |
+
if ( $this->prefs['rate']['amount'] == $this->core->zero() ) {
|
73 |
$timestamp = wp_next_scheduled( 'mycred_banking_interest_compound' );
|
74 |
if ( $timestamp !== false )
|
75 |
wp_clear_scheduled_hook( $timestamp, 'mycred_banking_interest_compound' );
|
82 |
|
83 |
$unow = date_i18n( 'U' );
|
84 |
// Cant pay interest on zero
|
85 |
+
if ( $this->prefs['rate']['amount'] == $this->core->zero() ) return;
|
86 |
|
87 |
// Should we payout
|
88 |
$payout_now = $this->get_now( $this->prefs['rate']['pay_out'] );
|
114 |
* @version 1.0
|
115 |
*/
|
116 |
public function do_compound() {
|
117 |
+
if ( $this->prefs['rate']['amount'] == $this->core->zero() ) return;
|
118 |
// Get users
|
119 |
$users = $this->get_users();
|
120 |
$total = count( $users );
|
141 |
* Do Compound Batch
|
142 |
* Compounds interest for each user ID given in batch.
|
143 |
* @since 1.2
|
144 |
+
* @version 1.2.1
|
145 |
*/
|
146 |
public function do_compound_batch( $batch ) {
|
147 |
if ( !empty( $batch ) && is_array( $batch ) ) {
|
148 |
|
149 |
+
set_time_limit( $this->prefs['run_time'] );
|
150 |
|
151 |
foreach ( $batch as $user_id ) {
|
152 |
$user_id = intval( $user_id );
|
215 |
* Do Payout
|
216 |
* Runs though all user compounded interest and pays.
|
217 |
* @since 1.2
|
218 |
+
* @version 1.2.1
|
219 |
*/
|
220 |
public function do_interest_batch( $batch ) {
|
221 |
if ( !empty( $batch ) && is_array( $batch ) ) {
|
222 |
|
223 |
+
set_time_limit( $this->prefs['run_time'] );
|
224 |
|
225 |
foreach ( $batch as $user_id ) {
|
226 |
$user_id = intval( $user_id );
|
267 |
/**
|
268 |
* Preference for Savings
|
269 |
* @since 1.2
|
270 |
+
* @version 1.2
|
271 |
*/
|
272 |
public function preferences() {
|
273 |
$prefs = $this->prefs; ?>
|
302 |
<span class="description"><?php _e( 'Available template tags: General, %timeframe%, %rate%, %base%', 'mycred' ); ?></span>
|
303 |
</li>
|
304 |
</ol>
|
305 |
+
<label class="subheader" for="<?php echo $this->field_id( 'run_time' ); ?>"><?php _e( 'Run Time', 'mycred' ); ?></label>
|
306 |
+
<ol>
|
307 |
+
<li>
|
308 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( 'run_time' ); ?>" id="<?php echo $this->field_id( 'run_time' ); ?>" value="<?php echo $prefs['run_time']; ?>" size="4" /></div>
|
309 |
+
<span class="description"><?php _e( 'For large websites, if you are running into time out issues during payouts, you can set the number of seconds a process can run. Use zero for unlimited, but be careful especially if you are on a shared server.', 'mycred' ); ?></span>
|
310 |
+
</li>
|
311 |
+
</ol>
|
312 |
<?php do_action( 'mycred_banking_compound_interest', $this->prefs ); ?>
|
313 |
<?php
|
314 |
}
|
316 |
/**
|
317 |
* Sanitise Preferences
|
318 |
* @since 1.2
|
319 |
+
* @version 1.2
|
320 |
*/
|
321 |
function sanitise_preferences( $post ) {
|
322 |
$new_settings = $post;
|
333 |
|
334 |
$new_settings['log'] = trim( $post['log'] );
|
335 |
|
336 |
+
$post['run_time'] = abs( $post['run_time'] );
|
337 |
+
$new_settings['run_time'] = sanitize_text_field( $post['run_time'] );
|
338 |
+
|
339 |
return apply_filters( 'mycred_banking_save_interest', $new_settings, $this->prefs );
|
340 |
}
|
341 |
}
|
addons/banking/services/mycred-bank-service-payouts.php
CHANGED
@@ -21,7 +21,8 @@ if ( !class_exists( 'myCRED_Banking_Service_Payouts' ) ) {
|
|
21 |
'log' => __( 'Daily %_plural%', 'mycred' ),
|
22 |
'excludes' => '',
|
23 |
'cycles' => 0,
|
24 |
-
'last_run' => ''
|
|
|
25 |
)
|
26 |
), $service_prefs );
|
27 |
}
|
@@ -139,7 +140,7 @@ if ( !class_exists( 'myCRED_Banking_Service_Payouts' ) ) {
|
|
139 |
public function do_payout_batch( $batch, $set = NULL, $cycle = NULL ) {
|
140 |
if ( !empty( $batch ) && is_array( $batch ) ) {
|
141 |
|
142 |
-
set_time_limit(
|
143 |
|
144 |
foreach ( $batch as $user_id ) {
|
145 |
$user_id = intval( $user_id );
|
@@ -201,7 +202,7 @@ if ( !class_exists( 'myCRED_Banking_Service_Payouts' ) ) {
|
|
201 |
/**
|
202 |
* Preference for Savings
|
203 |
* @since 1.2
|
204 |
-
* @version 1.
|
205 |
*/
|
206 |
public function preferences() {
|
207 |
$prefs = $this->prefs;
|
@@ -254,6 +255,13 @@ if ( !class_exists( 'myCRED_Banking_Service_Payouts' ) ) {
|
|
254 |
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
255 |
</li>
|
256 |
</ol>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
257 |
<?php do_action( 'mycred_banking_recurring_payouts', $this->prefs ); ?>
|
258 |
<?php
|
259 |
}
|
@@ -261,7 +269,7 @@ if ( !class_exists( 'myCRED_Banking_Service_Payouts' ) ) {
|
|
261 |
/**
|
262 |
* Sanitise Preferences
|
263 |
* @since 1.2
|
264 |
-
* @version 1.
|
265 |
*/
|
266 |
function sanitise_preferences( $post ) {
|
267 |
// Amount
|
@@ -288,6 +296,10 @@ if ( !class_exists( 'myCRED_Banking_Service_Payouts' ) ) {
|
|
288 |
// Log
|
289 |
$new_settings['log'] = trim( $post['log'] );
|
290 |
|
|
|
|
|
|
|
|
|
291 |
return apply_filters( 'mycred_banking_save_recurring', $new_settings, $this->prefs );
|
292 |
}
|
293 |
}
|
21 |
'log' => __( 'Daily %_plural%', 'mycred' ),
|
22 |
'excludes' => '',
|
23 |
'cycles' => 0,
|
24 |
+
'last_run' => '',
|
25 |
+
'run_time' => 60
|
26 |
)
|
27 |
), $service_prefs );
|
28 |
}
|
140 |
public function do_payout_batch( $batch, $set = NULL, $cycle = NULL ) {
|
141 |
if ( !empty( $batch ) && is_array( $batch ) ) {
|
142 |
|
143 |
+
set_time_limit( $this->prefs['run_time'] );
|
144 |
|
145 |
foreach ( $batch as $user_id ) {
|
146 |
$user_id = intval( $user_id );
|
202 |
/**
|
203 |
* Preference for Savings
|
204 |
* @since 1.2
|
205 |
+
* @version 1.1
|
206 |
*/
|
207 |
public function preferences() {
|
208 |
$prefs = $this->prefs;
|
255 |
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
256 |
</li>
|
257 |
</ol>
|
258 |
+
<label class="subheader" for="<?php echo $this->field_id( 'run_time' ); ?>"><?php _e( 'Run Time', 'mycred' ); ?></label>
|
259 |
+
<ol>
|
260 |
+
<li>
|
261 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( 'run_time' ); ?>" id="<?php echo $this->field_id( 'run_time' ); ?>" value="<?php echo $prefs['run_time']; ?>" size="4" /></div>
|
262 |
+
<span class="description"><?php _e( 'For large websites, if you are running into time out issues during payouts, you can set the number of seconds a process can run. Use zero for unlimited, but be careful especially if you are on a shared server.', 'mycred' ); ?></span>
|
263 |
+
</li>
|
264 |
+
</ol>
|
265 |
<?php do_action( 'mycred_banking_recurring_payouts', $this->prefs ); ?>
|
266 |
<?php
|
267 |
}
|
269 |
/**
|
270 |
* Sanitise Preferences
|
271 |
* @since 1.2
|
272 |
+
* @version 1.1
|
273 |
*/
|
274 |
function sanitise_preferences( $post ) {
|
275 |
// Amount
|
296 |
// Log
|
297 |
$new_settings['log'] = trim( $post['log'] );
|
298 |
|
299 |
+
// Run Time
|
300 |
+
$post['run_time'] = abs( $post['run_time'] );
|
301 |
+
$new_settings['run_time'] = sanitize_text_field( $post['run_time'] );
|
302 |
+
|
303 |
return apply_filters( 'mycred_banking_save_recurring', $new_settings, $this->prefs );
|
304 |
}
|
305 |
}
|
addons/buddypress/hooks/bp-profile.php
CHANGED
@@ -5,7 +5,7 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
5 |
*
|
6 |
* Creds for profile updates
|
7 |
* @since 0.1
|
8 |
-
* @version 1.
|
9 |
*/
|
10 |
if ( !class_exists( 'myCRED_BuddyPress_Profile' ) ) {
|
11 |
class myCRED_BuddyPress_Profile extends myCRED_Hook {
|
@@ -19,7 +19,8 @@ if ( !class_exists( 'myCRED_BuddyPress_Profile' ) ) {
|
|
19 |
'defaults' => array(
|
20 |
'update' => array(
|
21 |
'creds' => 1,
|
22 |
-
'log' => '%plural% for updating profile'
|
|
|
23 |
),
|
24 |
'avatar' => array(
|
25 |
'creds' => 1,
|
@@ -87,12 +88,24 @@ if ( !class_exists( 'myCRED_BuddyPress_Profile' ) ) {
|
|
87 |
/**
|
88 |
* New Profile Update
|
89 |
* @since 0.1
|
90 |
-
* @version 1.
|
91 |
*/
|
92 |
public function new_update( $content, $user_id, $activity_id ) {
|
93 |
// Check if user is excluded
|
94 |
if ( $this->core->exclude_user( $user_id ) ) return;
|
95 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
// Make sure this is unique event
|
97 |
if ( $this->core->has_entry( 'new_profile_update', $activity_id, $user_id ) ) return;
|
98 |
|
@@ -313,6 +326,11 @@ if ( !class_exists( 'myCRED_BuddyPress_Profile' ) ) {
|
|
313 |
<li>
|
314 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'update', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'update', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['update']['creds'] ); ?>" size="8" /></div>
|
315 |
</li>
|
|
|
|
|
|
|
|
|
|
|
316 |
<li class="empty"> </li>
|
317 |
<li>
|
318 |
<label for="<?php echo $this->field_id( array( 'update', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
5 |
*
|
6 |
* Creds for profile updates
|
7 |
* @since 0.1
|
8 |
+
* @version 1.1
|
9 |
*/
|
10 |
if ( !class_exists( 'myCRED_BuddyPress_Profile' ) ) {
|
11 |
class myCRED_BuddyPress_Profile extends myCRED_Hook {
|
19 |
'defaults' => array(
|
20 |
'update' => array(
|
21 |
'creds' => 1,
|
22 |
+
'log' => '%plural% for updating profile',
|
23 |
+
'daily_limit' => 2
|
24 |
),
|
25 |
'avatar' => array(
|
26 |
'creds' => 1,
|
88 |
/**
|
89 |
* New Profile Update
|
90 |
* @since 0.1
|
91 |
+
* @version 1.1
|
92 |
*/
|
93 |
public function new_update( $content, $user_id, $activity_id ) {
|
94 |
// Check if user is excluded
|
95 |
if ( $this->core->exclude_user( $user_id ) ) return;
|
96 |
|
97 |
+
// Limit
|
98 |
+
if ( isset( $this->prefs['update']['daily_limit'] ) )
|
99 |
+
$max = $this->prefs['update']['daily_limit'];
|
100 |
+
else
|
101 |
+
$max = 2;
|
102 |
+
|
103 |
+
if ( $max > 0 ) {
|
104 |
+
$max_earning = $this->core->format_number( $max*$this->prefs['update']['creds'] );
|
105 |
+
$earned = mycred_get_total_by_time( 'today', 'now', 'new_profile_update', $user_id );
|
106 |
+
if ( $earned >= $max_earning ) return;
|
107 |
+
}
|
108 |
+
|
109 |
// Make sure this is unique event
|
110 |
if ( $this->core->has_entry( 'new_profile_update', $activity_id, $user_id ) ) return;
|
111 |
|
326 |
<li>
|
327 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'update', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'update', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['update']['creds'] ); ?>" size="8" /></div>
|
328 |
</li>
|
329 |
+
<li>
|
330 |
+
<label for="<?php echo $this->field_id( array( 'update', 'limit' ) ); ?>"><?php _e( 'Daily Limit', 'mycred' ); ?></label>
|
331 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'update', 'daily_limit' ) ); ?>" id="<?php echo $this->field_id( array( 'update', 'daily_limit' ) ); ?>" value="<?php echo abs( $prefs['update']['daily_limit'] ); ?>" size="8" /></div>
|
332 |
+
<span class="description"><?php _e( 'Daily limit. User zero for unlimited.', 'mycred' ); ?></span>
|
333 |
+
</li>
|
334 |
<li class="empty"> </li>
|
335 |
<li>
|
336 |
<label for="<?php echo $this->field_id( array( 'update', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
addons/buddypress/myCRED-addon-buddypress.php
CHANGED
@@ -306,26 +306,31 @@ if ( !class_exists( 'myCRED_BuddyPress' ) ) {
|
|
306 |
</form>
|
307 |
</div>
|
308 |
<?php
|
309 |
-
|
310 |
}
|
311 |
|
312 |
/**
|
313 |
* Register Hooks
|
314 |
* @since 0.1
|
315 |
-
* @version 1.0
|
316 |
*/
|
317 |
public function register_hooks( $installed ) {
|
318 |
-
|
319 |
-
'
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
|
|
|
|
|
|
|
|
|
|
329 |
if ( function_exists( 'bp_links_setup_root_component' ) ) {
|
330 |
$installed['hook_bp_links'] = array(
|
331 |
'title' => __( 'BuddyPress: Links', 'mycred' ),
|
@@ -376,7 +381,7 @@ if ( !class_exists( 'myCRED_BuddyPress' ) ) {
|
|
376 |
}
|
377 |
}?>
|
378 |
|
379 |
-
<h4
|
380 |
<div class="body" style="display:none;">
|
381 |
<label class="subheader" for="<?php echo $this->field_id( 'balance_location' ); ?>"><?php echo $this->core->template_tags_general( __( '%singular% Balance', 'mycred' ) ); ?></label>
|
382 |
<ol>
|
306 |
</form>
|
307 |
</div>
|
308 |
<?php
|
309 |
+
$log->reset_query();
|
310 |
}
|
311 |
|
312 |
/**
|
313 |
* Register Hooks
|
314 |
* @since 0.1
|
315 |
+
* @version 1.0.1
|
316 |
*/
|
317 |
public function register_hooks( $installed ) {
|
318 |
+
if ( bp_is_active( 'groups' ) ) {
|
319 |
+
$installed['hook_bp_groups'] = array(
|
320 |
+
'title' => __( 'BuddyPress: Groups', 'mycred' ),
|
321 |
+
'description' => __( 'Awards %_plural% for group related actions. Use minus to deduct %_plural% or zero to disable a specific hook.', 'mycred' ),
|
322 |
+
'callback' => array( 'myCRED_BuddyPress_Groups' )
|
323 |
+
);
|
324 |
+
}
|
325 |
+
|
326 |
+
if ( bp_is_active( 'xprofile' ) ) {
|
327 |
+
$installed['hook_bp_profile'] = array(
|
328 |
+
'title' => __( 'BuddyPress: Members', 'mycred' ),
|
329 |
+
'description' => __( 'Awards %_plural% for profile related actions.', 'mycred' ),
|
330 |
+
'callback' => array( 'myCRED_BuddyPress_Profile' )
|
331 |
+
);
|
332 |
+
}
|
333 |
+
|
334 |
if ( function_exists( 'bp_links_setup_root_component' ) ) {
|
335 |
$installed['hook_bp_links'] = array(
|
336 |
'title' => __( 'BuddyPress: Links', 'mycred' ),
|
381 |
}
|
382 |
}?>
|
383 |
|
384 |
+
<h4><div class="icon icon-hook icon-active"></div><label><?php _e( 'BuddyPress', 'mycred' ); ?></label></h4>
|
385 |
<div class="body" style="display:none;">
|
386 |
<label class="subheader" for="<?php echo $this->field_id( 'balance_location' ); ?>"><?php echo $this->core->template_tags_general( __( '%singular% Balance', 'mycred' ) ); ?></label>
|
387 |
<ol>
|
addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php
CHANGED
@@ -43,9 +43,8 @@ if ( !class_exists( 'myCRED_Payment_Gateway' ) ) {
|
|
43 |
// Apply defaults (if needed)
|
44 |
if ( empty( $this->prefs ) || $this->prefs === false )
|
45 |
$this->prefs = $this->defaults;
|
46 |
-
|
47 |
-
$this->core = mycred_get_settings();
|
48 |
}
|
|
|
49 |
|
50 |
// Decode Log Entries
|
51 |
add_filter( 'mycred_prep_template_tags', array( $this, 'decode_log_entries' ), 10, 2 );
|
@@ -400,7 +399,7 @@ if ( !class_exists( 'myCRED_Payment_Gateway' ) ) {
|
|
400 |
*
|
401 |
* @returns (bool) true if transaction id is unique or false
|
402 |
* @since 0.1
|
403 |
-
* @version 1.0
|
404 |
*/
|
405 |
public function transaction_id_is_unique( $transaction_id = '' ) {
|
406 |
if ( empty( $transaction_id ) ) return false;
|
@@ -408,7 +407,7 @@ if ( !class_exists( 'myCRED_Payment_Gateway' ) ) {
|
|
408 |
global $wpdb;
|
409 |
|
410 |
// Make sure this is a new transaction
|
411 |
-
$sql = "SELECT * FROM
|
412 |
|
413 |
$gateway = str_replace( '-', '_', $this->id );
|
414 |
$gateway_id = 'buy_creds_with_' . $gateway;
|
43 |
// Apply defaults (if needed)
|
44 |
if ( empty( $this->prefs ) || $this->prefs === false )
|
45 |
$this->prefs = $this->defaults;
|
|
|
|
|
46 |
}
|
47 |
+
$this->core = mycred_get_settings();
|
48 |
|
49 |
// Decode Log Entries
|
50 |
add_filter( 'mycred_prep_template_tags', array( $this, 'decode_log_entries' ), 10, 2 );
|
399 |
*
|
400 |
* @returns (bool) true if transaction id is unique or false
|
401 |
* @since 0.1
|
402 |
+
* @version 1.0.1
|
403 |
*/
|
404 |
public function transaction_id_is_unique( $transaction_id = '' ) {
|
405 |
if ( empty( $transaction_id ) ) return false;
|
407 |
global $wpdb;
|
408 |
|
409 |
// Make sure this is a new transaction
|
410 |
+
$sql = "SELECT * FROM {$this->core->log_table} WHERE ref = %s AND data LIKE %s;";
|
411 |
|
412 |
$gateway = str_replace( '-', '_', $this->id );
|
413 |
$gateway_id = 'buy_creds_with_' . $gateway;
|
addons/buy-creds/myCRED-addon-buy-creds.php
CHANGED
@@ -159,6 +159,30 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
159 |
return $installed;
|
160 |
}
|
161 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
162 |
/**
|
163 |
* Add to General Settings
|
164 |
* @since 0.1
|
@@ -197,7 +221,7 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
197 |
$thankyou_use = $buy_creds['thankyou']['use'];
|
198 |
$cancelled_use = $buy_creds['cancelled']['use']; ?>
|
199 |
|
200 |
-
<h4
|
201 |
<div class="body" style="display:none;">
|
202 |
<label class="subheader"><?php echo $this->core->template_tags_general( __( 'Minimum %plural%', 'mycred' ) ); ?></label>
|
203 |
<ol id="mycred-buy-creds-minimum-amount">
|
@@ -307,7 +331,7 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
307 |
/**
|
308 |
* Payment Gateways Page
|
309 |
* @since 0.1
|
310 |
-
* @version 1.
|
311 |
*/
|
312 |
public function admin_page() {
|
313 |
$installed = $this->get();
|
@@ -331,17 +355,17 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
331 |
if ( !empty( $installed ) ) {
|
332 |
foreach ( $installed as $key => $data ) { ?>
|
333 |
|
334 |
-
<h4 class="<?php
|
335 |
|
336 |
// Mark
|
337 |
if ( $this->is_active( $key ) ) {
|
338 |
if ( isset( $this->gateway_prefs[$key]['sandbox'] ) && $this->gateway_prefs[$key]['sandbox'] == 1 )
|
339 |
-
echo 'sandbox';
|
340 |
else
|
341 |
-
echo 'active';
|
342 |
}
|
343 |
else
|
344 |
-
echo 'inactive'; ?>"
|
345 |
<div class="body" style="display:none;">
|
346 |
<label class="subheader"><?php _e( 'Enable', 'mycred' ); ?></label>
|
347 |
<ol id="">
|
@@ -361,7 +385,7 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
361 |
</div>
|
362 |
<?php do_action( 'mycred_after_buycreds_page', $this ); ?>
|
363 |
|
364 |
-
<?php submit_button( __( 'Update Gateway Settings', 'mycred' ), 'primary large' ); ?>
|
365 |
|
366 |
</form>
|
367 |
<?php do_action( 'mycred_bottom_buycreds_page', $this ); ?>
|
@@ -384,7 +408,7 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
384 |
foreach ( $installed as $id => $gdata ) {
|
385 |
$data['gateway_prefs'][$id] = $this->call( 'sanitise_preferences', $installed[$id]['callback'], $data['gateway_prefs'][$id] );
|
386 |
}
|
387 |
-
|
388 |
unset( $installed );
|
389 |
return $data;
|
390 |
}
|
@@ -402,7 +426,7 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
402 |
* Render Shortcode Basic
|
403 |
* This shortcode returns a link element to a specified payment gateway.
|
404 |
* @since 0.1
|
405 |
-
* @version 1.1
|
406 |
*/
|
407 |
public function render_shortcode_basic( $atts, $title = '' ) {
|
408 |
// Make sure the add-on has been setup
|
@@ -417,6 +441,7 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
417 |
'gateway' => '',
|
418 |
'amount' => '',
|
419 |
'gift_to' => false,
|
|
|
420 |
'login' => $this->core->template_tags_general( $this->core->buy_creds['login'] )
|
421 |
), $atts ) );
|
422 |
|
@@ -478,7 +503,12 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
478 |
'amount' => $this->core->number( $amount ),
|
479 |
'token' => wp_create_nonce( 'mycred-buy-creds' )
|
480 |
);
|
481 |
-
|
|
|
|
|
|
|
|
|
|
|
482 |
|
483 |
if ( $buy_author || $buy_member )
|
484 |
$args = array_merge_recursive( $args, array( 'gift_to' => $user_id ) );
|
@@ -489,25 +519,6 @@ if ( !class_exists( 'myCRED_Buy_CREDs' ) ) {
|
|
489 |
return $element;
|
490 |
}
|
491 |
|
492 |
-
/**
|
493 |
-
* Parse Attributes
|
494 |
-
* @since 0.1
|
495 |
-
* @version 1.0
|
496 |
-
*/
|
497 |
-
public function parse_atts( $atts ) {
|
498 |
-
$defaults = array(
|
499 |
-
'gateway' => '',
|
500 |
-
'amount' => '',
|
501 |
-
'gift_to' => false
|
502 |
-
);
|
503 |
-
$atts = wp_parse_args( $atts, $defaults );
|
504 |
-
$accepted = array();
|
505 |
-
foreach ( $atts as $attribute ) {
|
506 |
-
if ( in_array( $attribute, array( 'gateway', 'amount', 'gift_to', 'select' ) ) ) $accepted[] = $attribute;
|
507 |
-
}
|
508 |
-
return $accepted;
|
509 |
-
}
|
510 |
-
|
511 |
/**
|
512 |
* Render Shortcode Form
|
513 |
* Returns an advanced version allowing for further customizations.
|
159 |
return $installed;
|
160 |
}
|
161 |
|
162 |
+
/**
|
163 |
+
* Page Header
|
164 |
+
* @since 1.3
|
165 |
+
* @version 1.0
|
166 |
+
*/
|
167 |
+
public function settings_header() {
|
168 |
+
wp_dequeue_script( 'bpge_admin_js_acc' );
|
169 |
+
wp_enqueue_script( 'mycred-admin' );
|
170 |
+
wp_enqueue_style( 'mycred-admin' ); ?>
|
171 |
+
|
172 |
+
<style type="text/css">
|
173 |
+
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-image: url(<?php echo apply_filters( 'mycred_icon', plugins_url( 'assets/images/cred-icon32.png', myCRED_THIS ) ); ?>); }
|
174 |
+
#myCRED-wrap #accordion h4 .gate-icon { display: block; width: 48px; height: 48px; margin: 0 0 0 0; padding: 0; float: left; line-height: 48px; }
|
175 |
+
#myCRED-wrap #accordion h4 .gate-icon { background-repeat: no-repeat; background-image: url(<?php echo plugins_url( 'assets/images/gateway-icons.png', myCRED_THIS ); ?>); background-position: 0 0; }
|
176 |
+
#myCRED-wrap #accordion h4 .gate-icon.inactive { background-position-x: 0; }
|
177 |
+
#myCRED-wrap #accordion h4 .gate-icon.active { background-position-x: -48px; }
|
178 |
+
#myCRED-wrap #accordion h4 .gate-icon.sandbox { background-position-x: -96px; }
|
179 |
+
h4:before { float:right; padding-right: 12px; font-size: 14px; font-weight: normal; color: silver; }
|
180 |
+
h4.ui-accordion-header.ui-state-active:before { content: "<?php _e( 'click to close', 'mycred' ); ?>"; }
|
181 |
+
h4.ui-accordion-header:before { content: "<?php _e( 'click to open', 'mycred' ); ?>"; }
|
182 |
+
</style>
|
183 |
+
<?php
|
184 |
+
}
|
185 |
+
|
186 |
/**
|
187 |
* Add to General Settings
|
188 |
* @since 0.1
|
221 |
$thankyou_use = $buy_creds['thankyou']['use'];
|
222 |
$cancelled_use = $buy_creds['cancelled']['use']; ?>
|
223 |
|
224 |
+
<h4><div class="icon icon-active"></div><?php _e( 'buyCRED', 'mycred' ); ?></h4>
|
225 |
<div class="body" style="display:none;">
|
226 |
<label class="subheader"><?php echo $this->core->template_tags_general( __( 'Minimum %plural%', 'mycred' ) ); ?></label>
|
227 |
<ol id="mycred-buy-creds-minimum-amount">
|
331 |
/**
|
332 |
* Payment Gateways Page
|
333 |
* @since 0.1
|
334 |
+
* @version 1.1
|
335 |
*/
|
336 |
public function admin_page() {
|
337 |
$installed = $this->get();
|
355 |
if ( !empty( $installed ) ) {
|
356 |
foreach ( $installed as $key => $data ) { ?>
|
357 |
|
358 |
+
<h4><div class="gate-icon <?php
|
359 |
|
360 |
// Mark
|
361 |
if ( $this->is_active( $key ) ) {
|
362 |
if ( isset( $this->gateway_prefs[$key]['sandbox'] ) && $this->gateway_prefs[$key]['sandbox'] == 1 )
|
363 |
+
echo 'sandbox" title="' . __( 'Test Mode', 'mycred' );
|
364 |
else
|
365 |
+
echo 'active" title="' . __( 'Enabled', 'mycred' );
|
366 |
}
|
367 |
else
|
368 |
+
echo 'inactive" title="' . __( 'Disabled', 'mycred' ); ?>"></div><?php echo $this->core->template_tags_general( $data['title'] ); ?></h4>
|
369 |
<div class="body" style="display:none;">
|
370 |
<label class="subheader"><?php _e( 'Enable', 'mycred' ); ?></label>
|
371 |
<ol id="">
|
385 |
</div>
|
386 |
<?php do_action( 'mycred_after_buycreds_page', $this ); ?>
|
387 |
|
388 |
+
<?php submit_button( __( 'Update Gateway Settings', 'mycred' ), 'primary large', 'submit', false ); ?>
|
389 |
|
390 |
</form>
|
391 |
<?php do_action( 'mycred_bottom_buycreds_page', $this ); ?>
|
408 |
foreach ( $installed as $id => $gdata ) {
|
409 |
$data['gateway_prefs'][$id] = $this->call( 'sanitise_preferences', $installed[$id]['callback'], $data['gateway_prefs'][$id] );
|
410 |
}
|
411 |
+
|
412 |
unset( $installed );
|
413 |
return $data;
|
414 |
}
|
426 |
* Render Shortcode Basic
|
427 |
* This shortcode returns a link element to a specified payment gateway.
|
428 |
* @since 0.1
|
429 |
+
* @version 1.1.1
|
430 |
*/
|
431 |
public function render_shortcode_basic( $atts, $title = '' ) {
|
432 |
// Make sure the add-on has been setup
|
441 |
'gateway' => '',
|
442 |
'amount' => '',
|
443 |
'gift_to' => false,
|
444 |
+
'class' => 'mycred-buy-link button large custom',
|
445 |
'login' => $this->core->template_tags_general( $this->core->buy_creds['login'] )
|
446 |
), $atts ) );
|
447 |
|
503 |
'amount' => $this->core->number( $amount ),
|
504 |
'token' => wp_create_nonce( 'mycred-buy-creds' )
|
505 |
);
|
506 |
+
|
507 |
+
// Classes
|
508 |
+
$classes = explode( ' ', $class );
|
509 |
+
if ( empty( $classes ) )
|
510 |
+
$classes = array( 'mycred-buy-link', 'button large', 'custom' );
|
511 |
+
$classes[] = $gateway;
|
512 |
|
513 |
if ( $buy_author || $buy_member )
|
514 |
$args = array_merge_recursive( $args, array( 'gift_to' => $user_id ) );
|
519 |
return $element;
|
520 |
}
|
521 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
522 |
/**
|
523 |
* Render Shortcode Form
|
524 |
* Returns an advanced version allowing for further customizations.
|
addons/email-notices/myCRED-addon-email-notices.php
CHANGED
@@ -262,7 +262,7 @@ if ( !class_exists( 'myCRED_Email_Notices' ) ) {
|
|
262 |
else
|
263 |
$use_html = 0; ?>
|
264 |
|
265 |
-
<h4
|
266 |
<div class="body" style="display:none;">
|
267 |
<p><?php _e( 'Settings that apply to all email notices and can not be overridden for individual emails.', 'mycred' ); ?></p>
|
268 |
<label class="subheader" for="<?php echo $this->field_id( array( 'use_html' => 'no' ) ); ?>"><?php _e( 'Email Format', 'mycred' ); ?></label>
|
@@ -811,7 +811,7 @@ if ( !class_exists( 'myCRED_Email_Notices' ) ) {
|
|
811 |
<?php do_action( 'mycred_email_settings_box', $this ); ?>
|
812 |
|
813 |
<div class="mycred-save">
|
814 |
-
<?php submit_button( __( 'Save', 'mycred' ), '
|
815 |
</div>
|
816 |
<?php
|
817 |
}
|
262 |
else
|
263 |
$use_html = 0; ?>
|
264 |
|
265 |
+
<h4><div class="icon icon-active"></div><?php _e( 'Email Notices', 'mycred' ); ?></h4>
|
266 |
<div class="body" style="display:none;">
|
267 |
<p><?php _e( 'Settings that apply to all email notices and can not be overridden for individual emails.', 'mycred' ); ?></p>
|
268 |
<label class="subheader" for="<?php echo $this->field_id( array( 'use_html' => 'no' ) ); ?>"><?php _e( 'Email Format', 'mycred' ); ?></label>
|
811 |
<?php do_action( 'mycred_email_settings_box', $this ); ?>
|
812 |
|
813 |
<div class="mycred-save">
|
814 |
+
<?php submit_button( __( 'Save', 'mycred' ), 'primary', 'mycred-save-email', false ); ?>
|
815 |
</div>
|
816 |
<?php
|
817 |
}
|
addons/gateway/carts/mycred-marketpress.php
CHANGED
@@ -1,12 +1,12 @@
|
|
1 |
<?php
|
2 |
-
if ( !defined( '
|
3 |
/**
|
4 |
* MarketPress Payment Gateway
|
5 |
* @since 1.1
|
6 |
-
* @version 1.1
|
7 |
*/
|
8 |
if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
9 |
-
add_action( '
|
10 |
function mycred_init_marketpress_gateway()
|
11 |
{
|
12 |
if ( !function_exists( 'is_plugin_active' ) )
|
@@ -21,7 +21,7 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
21 |
include_once( WP_PLUGIN_DIR . '/wordpress-ecommerce' . $file );
|
22 |
else
|
23 |
return;
|
24 |
-
|
25 |
class MP_Gateway_myCRED extends MP_Gateway_API {
|
26 |
|
27 |
var $plugin_name = 'mycred';
|
@@ -242,6 +242,7 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
242 |
$result = $mp->create_order( $order_id, $cart, $shipping_info, $payment_info, $paid );
|
243 |
|
244 |
$order = get_page_by_title( $result, 'OBJECT', 'mp_order' );
|
|
|
245 |
// Deduct cost
|
246 |
$this->mycred->add_creds(
|
247 |
'marketpress_payment',
|
@@ -251,6 +252,36 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
251 |
$order->ID,
|
252 |
array( 'ref_type' => 'post' )
|
253 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
254 |
}
|
255 |
|
256 |
function order_confirmation( $order ) { }
|
@@ -296,7 +327,7 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
296 |
/**
|
297 |
* myCRED Gateway Settings
|
298 |
* @since 1.1
|
299 |
-
* @version 1.
|
300 |
*/
|
301 |
function gateway_settings_box( $settings ) {
|
302 |
global $mp;
|
@@ -304,35 +335,21 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
304 |
$mycred = mycred_get_settings();
|
305 |
|
306 |
$name = apply_filters( 'mycred_label', myCRED_NAME );
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
$settings['
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
if ( !isset( $settings['gateways']['mycred']['confirmation'] ) )
|
324 |
-
$settings['gateways']['mycred']['confirmation'] = 'TOTAL amount has been deducted from your account. Your current balance is: %balance_f%';
|
325 |
-
|
326 |
-
if ( !isset( $settings['gateways']['mycred']['lowfunds'] ) )
|
327 |
-
$settings['gateways']['mycred']['lowfunds'] = 'Insufficient funds. Please select another form of payment. Your current balance is: %balance_f%';
|
328 |
-
|
329 |
-
if ( !isset( $settings['gateways']['mycred']['visitors'] ) )
|
330 |
-
$settings['gateways']['mycred']['visitors'] = 'You must be logged in to pay with %_plural%. Please <a href="%login_url_here%">login</a>.';
|
331 |
-
|
332 |
-
if ( !isset( $settings['gateways']['mycred']['email'] ) )
|
333 |
-
$settings['gateways']['mycred']['email'] = $settings['email']['new_order_txt']; ?>
|
334 |
-
|
335 |
-
<div id="mp_cubepoints_payments" class="postbox mp-pages-msgs">
|
336 |
<h3 class="handle"><span><?php echo $name . ' ' . __( 'Settings', 'mycred' ); ?></span></h3>
|
337 |
<div class="inside">
|
338 |
<span class="description"><?php echo sprintf( __( 'Let your users pay for items in their shopping cart using their %s Account. Note! This gateway requires your users to be logged in when making a purchase!', 'mycred' ), $name ); ?></span>
|
@@ -371,8 +388,28 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
371 |
<p><input value="<?php echo esc_attr( $settings['gateways']['mycred']['exchange'] ); ?>" size="8" name="mp[gateways][mycred][exchange]" id="mycred-exchange-rate" type="text" /></p>
|
372 |
</td>
|
373 |
</tr>
|
374 |
-
<?php
|
375 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
376 |
<tr>
|
377 |
<th scope="row"><label for="mycred-lowfunds"><?php _e( 'Insufficient Funds', 'mycred' ); ?></label></th>
|
378 |
<td>
|
@@ -422,7 +459,7 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
422 |
/**
|
423 |
* Filter Gateway Settings
|
424 |
* @since 1.1
|
425 |
-
* @version 1.
|
426 |
*/
|
427 |
function process_gateway_settings( $settings ) {
|
428 |
// Name (no html)
|
@@ -444,6 +481,9 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
444 |
else
|
445 |
$settings['gateways']['mycred']['exchange'] = 1;
|
446 |
|
|
|
|
|
|
|
447 |
$settings['gateways']['mycred']['lowfunds'] = stripslashes( wp_filter_post_kses( $settings['gateways']['mycred']['lowfunds'] ) );
|
448 |
$settings['gateways']['mycred']['visitors'] = stripslashes( wp_filter_post_kses( $settings['gateways']['mycred']['visitors'] ) );
|
449 |
$settings['gateways']['mycred']['instructions'] = stripslashes( wp_filter_post_kses( $settings['gateways']['mycred']['instructions'] ) );
|
@@ -455,13 +495,12 @@ if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
|
455 |
return $settings;
|
456 |
}
|
457 |
}
|
|
|
458 |
}
|
459 |
}
|
460 |
|
461 |
-
|
462 |
-
|
463 |
-
mp_register_gateway_plugin( 'MP_Gateway_myCRED', 'mycred', 'myCRED' );
|
464 |
-
}
|
465 |
/**
|
466 |
* Filter the myCRED Log
|
467 |
* Parses the %order_id% and %order_link% template tags.
|
@@ -493,12 +532,14 @@ if ( !function_exists( 'mycred_marketpress_parse_log' ) ) {
|
|
493 |
|
494 |
return $content;
|
495 |
}
|
|
|
496 |
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
|
|
502 |
add_filter( 'mycred_email_before_send', 'mycred_market_parse_email' );
|
503 |
function mycred_market_parse_email( $email )
|
504 |
{
|
1 |
<?php
|
2 |
+
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
/**
|
4 |
* MarketPress Payment Gateway
|
5 |
* @since 1.1
|
6 |
+
* @version 1.1.1
|
7 |
*/
|
8 |
if ( !function_exists( 'mycred_init_marketpress_gateway' ) ) {
|
9 |
+
add_action( 'after_setup_theme', 'mycred_init_marketpress_gateway', 5 );
|
10 |
function mycred_init_marketpress_gateway()
|
11 |
{
|
12 |
if ( !function_exists( 'is_plugin_active' ) )
|
21 |
include_once( WP_PLUGIN_DIR . '/wordpress-ecommerce' . $file );
|
22 |
else
|
23 |
return;
|
24 |
+
|
25 |
class MP_Gateway_myCRED extends MP_Gateway_API {
|
26 |
|
27 |
var $plugin_name = 'mycred';
|
242 |
$result = $mp->create_order( $order_id, $cart, $shipping_info, $payment_info, $paid );
|
243 |
|
244 |
$order = get_page_by_title( $result, 'OBJECT', 'mp_order' );
|
245 |
+
|
246 |
// Deduct cost
|
247 |
$this->mycred->add_creds(
|
248 |
'marketpress_payment',
|
252 |
$order->ID,
|
253 |
array( 'ref_type' => 'post' )
|
254 |
);
|
255 |
+
|
256 |
+
// Profit Sharing
|
257 |
+
if ( $settings['gateways']['mycred']['profit_share_percent'] > 0 ) {
|
258 |
+
foreach ( $cart as $product_id => $variations ) {
|
259 |
+
// Get Product
|
260 |
+
$product = get_post( (int) $product_id );
|
261 |
+
|
262 |
+
// Continue if product has just been deleted or owner is buyer
|
263 |
+
if ( $product === NULL || $product->post_author == $cui ) continue;
|
264 |
+
|
265 |
+
foreach ( $variations as $data ) {
|
266 |
+
$price = $data['price'];
|
267 |
+
$quantity = $data['quantity'];
|
268 |
+
$cost = $price*$quantity;
|
269 |
+
|
270 |
+
// Calculate Share
|
271 |
+
$share = ( $settings['gateways']['mycred']['profit_share_percent'] / 100 ) * $cost;
|
272 |
+
|
273 |
+
// Payout
|
274 |
+
$this->mycred->add_creds(
|
275 |
+
'store_sale',
|
276 |
+
$product->post_author,
|
277 |
+
$share,
|
278 |
+
$settings['gateways']['mycred']['profit_share_log'],
|
279 |
+
$product->ID,
|
280 |
+
array( 'ref_type' => 'post' )
|
281 |
+
);
|
282 |
+
}
|
283 |
+
}
|
284 |
+
}
|
285 |
}
|
286 |
|
287 |
function order_confirmation( $order ) { }
|
327 |
/**
|
328 |
* myCRED Gateway Settings
|
329 |
* @since 1.1
|
330 |
+
* @version 1.2
|
331 |
*/
|
332 |
function gateway_settings_box( $settings ) {
|
333 |
global $mp;
|
335 |
$mycred = mycred_get_settings();
|
336 |
|
337 |
$name = apply_filters( 'mycred_label', myCRED_NAME );
|
338 |
+
$settings['gateways']['mycred'] = shortcode_atts( array(
|
339 |
+
'name' => strip_tags( $name ) . ' ' . $mycred->template_tags_general( __( '%_singular% Balance', 'mycred' ) ),
|
340 |
+
'logo' => $this->method_button_img_url,
|
341 |
+
'log_template' => __( 'Payment for Order: #%order_id%', 'mycred' ),
|
342 |
+
'exchange' => 1,
|
343 |
+
'profit_share_percent' => 0,
|
344 |
+
'profit_share_log' => __( 'Product Sale: %post_title%', 'mycred' ),
|
345 |
+
'instructions' => __( 'Pay using your account balance.', 'mycred' ),
|
346 |
+
'confirmation' => __( 'TOTAL amount has been deducted from your account. Your current balance is: %balance_f%', 'mycred' ),
|
347 |
+
'lowfunds' => __( 'Insufficient funds. Please select another form of payment. Your current balance is: %balance_f%', 'mycred' ),
|
348 |
+
'visitors' => __( 'You must be logged in to pay with %_plural%. Please <a href="%login_url_here%">login</a>.', 'mycred' ),
|
349 |
+
'email' => $settings['email']['new_order_txt']
|
350 |
+
), ( isset( $settings['gateways']['mycred'] ) ) ? $settings['gateways']['mycred'] : array() ); ?>
|
351 |
+
|
352 |
+
<div id="mp_mycred_payments" class="postbox mp-pages-msgs">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
353 |
<h3 class="handle"><span><?php echo $name . ' ' . __( 'Settings', 'mycred' ); ?></span></h3>
|
354 |
<div class="inside">
|
355 |
<span class="description"><?php echo sprintf( __( 'Let your users pay for items in their shopping cart using their %s Account. Note! This gateway requires your users to be logged in when making a purchase!', 'mycred' ), $name ); ?></span>
|
388 |
<p><input value="<?php echo esc_attr( $settings['gateways']['mycred']['exchange'] ); ?>" size="8" name="mp[gateways][mycred][exchange]" id="mycred-exchange-rate" type="text" /></p>
|
389 |
</td>
|
390 |
</tr>
|
391 |
+
<?php endif; ?>
|
392 |
|
393 |
+
<tr>
|
394 |
+
<td colspan="2"><h4><?php _e( 'Profit Sharing', 'mycred' ); ?></h4></td>
|
395 |
+
</tr>
|
396 |
+
<tr>
|
397 |
+
<th scope="row"><label for="mycred-profit-sharing"><?php _e( 'Percentage', 'mycred' ); ?></label></th>
|
398 |
+
<td>
|
399 |
+
<span class="description"><?php _e( 'Option to share sales with the product owner. User zero to disable', 'mycred' ); ?></span>
|
400 |
+
<p><input value="<?php echo esc_attr( $settings['gateways']['mycred']['profit_share_percent'] ); ?>" size="8" name="mp[gateways][mycred][profit_share_percent]" id="mycred-profit-sharing" type="text" /> %</p>
|
401 |
+
</td>
|
402 |
+
</tr>
|
403 |
+
<tr>
|
404 |
+
<th scope="row"><label for="mycred-profit-sharing-log"><?php _e( 'Log Template', 'mycred' ); ?></label></th>
|
405 |
+
<td>
|
406 |
+
<span class="description"><?php _e( 'Log entry template for profit sharing. Available template tags: General and Post related', 'mycred' ); ?></span>
|
407 |
+
<p><input value="<?php echo esc_attr( $settings['gateways']['mycred']['profit_share_log'] ); ?>" style="width: 100%;" name="mp[gateways][mycred][profit_share_log]" id="mycred-profit-sharing-log" type="text" /></p>
|
408 |
+
</td>
|
409 |
+
</tr>
|
410 |
+
<tr>
|
411 |
+
<td colspan="2"><h4><?php _e( 'Messages', 'mycred' ); ?></h4></td>
|
412 |
+
</tr>
|
413 |
<tr>
|
414 |
<th scope="row"><label for="mycred-lowfunds"><?php _e( 'Insufficient Funds', 'mycred' ); ?></label></th>
|
415 |
<td>
|
459 |
/**
|
460 |
* Filter Gateway Settings
|
461 |
* @since 1.1
|
462 |
+
* @version 1.2
|
463 |
*/
|
464 |
function process_gateway_settings( $settings ) {
|
465 |
// Name (no html)
|
481 |
else
|
482 |
$settings['gateways']['mycred']['exchange'] = 1;
|
483 |
|
484 |
+
$settings['gateways']['mycred']['profit_share_percent'] = stripslashes( trim( $settings['gateways']['mycred']['profit_share_percent'] ) );
|
485 |
+
$settings['gateways']['mycred']['profit_share_log'] = stripslashes( wp_filter_nohtml_kses( $settings['gateways']['mycred']['profit_share_log'] ) );
|
486 |
+
|
487 |
$settings['gateways']['mycred']['lowfunds'] = stripslashes( wp_filter_post_kses( $settings['gateways']['mycred']['lowfunds'] ) );
|
488 |
$settings['gateways']['mycred']['visitors'] = stripslashes( wp_filter_post_kses( $settings['gateways']['mycred']['visitors'] ) );
|
489 |
$settings['gateways']['mycred']['instructions'] = stripslashes( wp_filter_post_kses( $settings['gateways']['mycred']['instructions'] ) );
|
495 |
return $settings;
|
496 |
}
|
497 |
}
|
498 |
+
mp_register_gateway_plugin( 'MP_Gateway_myCRED', 'mycred', 'myCRED' );
|
499 |
}
|
500 |
}
|
501 |
|
502 |
+
|
503 |
+
|
|
|
|
|
504 |
/**
|
505 |
* Filter the myCRED Log
|
506 |
* Parses the %order_id% and %order_link% template tags.
|
532 |
|
533 |
return $content;
|
534 |
}
|
535 |
+
}
|
536 |
|
537 |
+
/**
|
538 |
+
* Parse Email Notice
|
539 |
+
* @since 1.2.2
|
540 |
+
* @version 1.0
|
541 |
+
*/
|
542 |
+
if ( !function_exists( 'mycred_market_parse_email' ) ) {
|
543 |
add_filter( 'mycred_email_before_send', 'mycred_market_parse_email' );
|
544 |
function mycred_market_parse_email( $email )
|
545 |
{
|
addons/gateway/carts/mycred-woocommerce.php
CHANGED
@@ -6,7 +6,7 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
6 |
* Custom Payment Gateway for WooCommerce.
|
7 |
* @see http://docs.woothemes.com/document/payment-gateway-api/
|
8 |
* @since 0.1
|
9 |
-
* @version 1.
|
10 |
*/
|
11 |
if ( !function_exists( 'mycred_init_woo_gateway' ) ) {
|
12 |
/**
|
@@ -14,7 +14,7 @@ if ( !function_exists( 'mycred_init_woo_gateway' ) ) {
|
|
14 |
* @since 0.1
|
15 |
* @version 1.0
|
16 |
*/
|
17 |
-
add_action( '
|
18 |
function mycred_init_woo_gateway()
|
19 |
{
|
20 |
if ( !class_exists( 'WC_Payment_Gateway' ) ) return;
|
@@ -60,7 +60,7 @@ if ( !function_exists( 'mycred_init_woo_gateway' ) ) {
|
|
60 |
/**
|
61 |
* Initialise Gateway Settings Form Fields
|
62 |
* @since 0.1
|
63 |
-
* @version 1.
|
64 |
*/
|
65 |
function init_form_fields() {
|
66 |
// Fields
|
@@ -123,6 +123,21 @@ if ( !function_exists( 'mycred_init_woo_gateway' ) ) {
|
|
123 |
);
|
124 |
}
|
125 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
126 |
$this->form_fields = apply_filters( 'mycred_woo_fields', $fields, $this );
|
127 |
}
|
128 |
|
@@ -159,7 +174,7 @@ if ( !function_exists( 'mycred_init_woo_gateway' ) ) {
|
|
159 |
/**
|
160 |
* Process Payment
|
161 |
* @since 0.1
|
162 |
-
* @version 1.
|
163 |
*/
|
164 |
function process_payment( $order_id ) {
|
165 |
global $woocommerce;
|
@@ -190,9 +205,49 @@ if ( !function_exists( 'mycred_init_woo_gateway' ) ) {
|
|
190 |
}
|
191 |
|
192 |
// Charge
|
193 |
-
$this->mycred->add_creds(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
194 |
$order->payment_complete();
|
195 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
196 |
// Let others play
|
197 |
do_action( 'mycred_paid_for_woo', $order, $cui );
|
198 |
|
6 |
* Custom Payment Gateway for WooCommerce.
|
7 |
* @see http://docs.woothemes.com/document/payment-gateway-api/
|
8 |
* @since 0.1
|
9 |
+
* @version 1.2.1
|
10 |
*/
|
11 |
if ( !function_exists( 'mycred_init_woo_gateway' ) ) {
|
12 |
/**
|
14 |
* @since 0.1
|
15 |
* @version 1.0
|
16 |
*/
|
17 |
+
add_action( 'after_setup_theme', 'mycred_init_woo_gateway' );
|
18 |
function mycred_init_woo_gateway()
|
19 |
{
|
20 |
if ( !class_exists( 'WC_Payment_Gateway' ) ) return;
|
60 |
/**
|
61 |
* Initialise Gateway Settings Form Fields
|
62 |
* @since 0.1
|
63 |
+
* @version 1.1
|
64 |
*/
|
65 |
function init_form_fields() {
|
66 |
// Fields
|
123 |
);
|
124 |
}
|
125 |
|
126 |
+
// Profit Sharing added in 1.3
|
127 |
+
$fields['profit_sharing_percent'] = array(
|
128 |
+
'title' => __( 'Profit Sharing', 'mycred' ),
|
129 |
+
'type' => 'text',
|
130 |
+
'description' => __( 'Option to share a percentage of the sale with the product owner.', 'mycred' ),
|
131 |
+
'default' => 0,
|
132 |
+
'desc_tip' => true
|
133 |
+
);
|
134 |
+
$fields['profit_sharing_log'] = array(
|
135 |
+
'title' => __( 'Log Template', 'mycred' ),
|
136 |
+
'type' => 'text',
|
137 |
+
'description' => __( 'Log entry template for profit sharing. Available template tags: General and Post related.', 'mycred' ),
|
138 |
+
'default' => __( 'Sale of %post_title%', 'mycred' )
|
139 |
+
);
|
140 |
+
|
141 |
$this->form_fields = apply_filters( 'mycred_woo_fields', $fields, $this );
|
142 |
}
|
143 |
|
174 |
/**
|
175 |
* Process Payment
|
176 |
* @since 0.1
|
177 |
+
* @version 1.1
|
178 |
*/
|
179 |
function process_payment( $order_id ) {
|
180 |
global $woocommerce;
|
205 |
}
|
206 |
|
207 |
// Charge
|
208 |
+
$this->mycred->add_creds(
|
209 |
+
'woocommerce_payment',
|
210 |
+
$cui,
|
211 |
+
0-$cost,
|
212 |
+
$this->log_template,
|
213 |
+
$order_id,
|
214 |
+
array( 'ref_type' => 'post' )
|
215 |
+
);
|
216 |
$order->payment_complete();
|
217 |
|
218 |
+
// Profit Sharing
|
219 |
+
if ( $this->profit_sharing_percent > 0 ) {
|
220 |
+
// Get Items
|
221 |
+
$items = $order->get_items();
|
222 |
+
|
223 |
+
// Loop though items
|
224 |
+
foreach ( $items as $item ) {
|
225 |
+
// Get Product
|
226 |
+
$product = get_post( (int) $item['product_id'] );
|
227 |
+
|
228 |
+
// Continue if product has just been deleted or owner is buyer
|
229 |
+
if ( $product === NULL || $product->post_author == $cui ) continue;
|
230 |
+
|
231 |
+
// Calculate Cost
|
232 |
+
$price = $item['line_total'];
|
233 |
+
$quantity = $item['qty'];
|
234 |
+
$cost = $price*$quantity;
|
235 |
+
|
236 |
+
// Calculate Share
|
237 |
+
$share = ( $this->profit_sharing_percent / 100 ) * $cost;
|
238 |
+
|
239 |
+
// Payout
|
240 |
+
$this->mycred->add_creds(
|
241 |
+
'store_sale',
|
242 |
+
$product->post_author,
|
243 |
+
$this->mycred->format_number( $share ),
|
244 |
+
$this->profit_sharing_log,
|
245 |
+
$product->ID,
|
246 |
+
array( 'ref_type' => 'post' )
|
247 |
+
);
|
248 |
+
}
|
249 |
+
}
|
250 |
+
|
251 |
// Let others play
|
252 |
do_action( 'mycred_paid_for_woo', $order, $cui );
|
253 |
|
addons/gateway/carts/mycred-wpecommerce.php
ADDED
@@ -0,0 +1,399 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
+
/**
|
4 |
+
* WP E-Commerce Payment Gateway
|
5 |
+
*
|
6 |
+
* Custom Payment Gateway for WP E-Commerce.
|
7 |
+
* @see http://getshopped.org/resources/docs/get-involved/writing-a-new-payment-gateway/
|
8 |
+
* @since 1.3
|
9 |
+
* @version 1.0.1
|
10 |
+
*/
|
11 |
+
if ( !function_exists( 'mycred_init_wpecom_construct_gateway' ) ) {
|
12 |
+
/**
|
13 |
+
* Construct Gateway
|
14 |
+
* @since 1.3
|
15 |
+
* @version 1.0
|
16 |
+
*/
|
17 |
+
add_action( 'after_setup_theme', 'mycred_init_wpecom_construct_gateway' );
|
18 |
+
function mycred_init_wpecom_construct_gateway()
|
19 |
+
{
|
20 |
+
if ( !class_exists( 'wpsc_merchant' ) ) return;
|
21 |
+
|
22 |
+
global $nzshpcrt_gateways, $mycred_wpecom_settings;
|
23 |
+
|
24 |
+
$name = apply_filters( 'mycred_label', myCRED_NAME );
|
25 |
+
$mycred_wpecom_settings = shortcode_atts( array(
|
26 |
+
'log' => __( 'Payment for Order: #%order_id%', 'mycred' ),
|
27 |
+
'share' => 0,
|
28 |
+
'share_log' => __( 'Store sale', 'mycred' ),
|
29 |
+
'rate' => 1,
|
30 |
+
'visitor' => __( 'You must be logged in to use this gateway', 'mycred' ),
|
31 |
+
'low_funds' => __( 'Insufficient Funds.', 'mycred' ),
|
32 |
+
'message' => __( 'Deduct the amount from your balance.', 'mycred' )
|
33 |
+
), (array) get_option( 'mycred_wpecom_settings', '' ) );
|
34 |
+
|
35 |
+
// Add gateway
|
36 |
+
$nzshpcrt_gateways[] = array(
|
37 |
+
'id' => 'mycred',
|
38 |
+
'name' => strip_tags( $name ),
|
39 |
+
'has_recurring_billing' => false,
|
40 |
+
'wp_admin_cannot_cancel' => false,
|
41 |
+
'requirements' => array( 'php_version' => '5.2.4' ),
|
42 |
+
'form' => 'mycred_wpecom_gateway_settings',
|
43 |
+
'submit_function' => 'mycred_wpecom_gateway_settings_save',
|
44 |
+
'payment_type' => 'mycred',
|
45 |
+
// this may be legacy, not yet decided
|
46 |
+
'internalname' => 'mycred'
|
47 |
+
);
|
48 |
+
|
49 |
+
class myCRED_WP_E_Commerce_Gateway {
|
50 |
+
|
51 |
+
public $core = '';
|
52 |
+
public $prefs = array();
|
53 |
+
|
54 |
+
/**
|
55 |
+
* Construct
|
56 |
+
*/
|
57 |
+
function __construct() {
|
58 |
+
global $mycred_wpecom_settings;
|
59 |
+
$this->core = mycred_get_settings();
|
60 |
+
$this->prefs = $mycred_wpecom_settings;
|
61 |
+
|
62 |
+
add_action( 'wpsc_submit_checkout_gateway', array( $this, 'process_gateway' ), 1, 2 );
|
63 |
+
add_filter( 'wpsc_gateway_checkout_form_mycred', array( $this, 'checkout_form' ) );
|
64 |
+
add_filter( 'mycred_parse_log_entry_wpecom_payment', array( $this, 'parse_template_tags' ), 10, 2 );
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* Process Payment
|
69 |
+
* @since 1.3
|
70 |
+
* @version 1.0
|
71 |
+
*/
|
72 |
+
function process_gateway( $gateway, $purchase_log ) {
|
73 |
+
if ( $gateway != 'mycred' ) return;
|
74 |
+
|
75 |
+
// Prep
|
76 |
+
$log_id = $purchase_log->get( 'id' );
|
77 |
+
|
78 |
+
// Load Gateway
|
79 |
+
$merchant_instance = new wpsc_merchant_mycred( $log_id, false, $this->prefs, $this->core );
|
80 |
+
$merchant_instance->construct_value_array();
|
81 |
+
|
82 |
+
// Validate
|
83 |
+
$merchant_instance->validate( $purchase_log );
|
84 |
+
|
85 |
+
// Charge
|
86 |
+
do_action_ref_array( 'wpsc_pre_submit_gateway', array( &$merchant_instance ) );
|
87 |
+
$merchant_instance->submit();
|
88 |
+
}
|
89 |
+
|
90 |
+
/**
|
91 |
+
* Checkout Form
|
92 |
+
* @since 1.3
|
93 |
+
* @version 1.0
|
94 |
+
*/
|
95 |
+
function checkout_form() {
|
96 |
+
$output = '';
|
97 |
+
if ( !is_user_logged_in() ) {
|
98 |
+
$output .= '<tr><td>' . $this->core->template_tags_general( $this->prefs['visitor'] ) . '</td></tr>';
|
99 |
+
return $output;
|
100 |
+
}
|
101 |
+
|
102 |
+
$output .= '<tr><td><table width="100%"><thead><th class="cart-item">' . __( 'Item', 'mycred' ) . '</th><th class="cart-item-qt"></th><th class="cart-item-cost">' . $this->core->plural() . '</th></thead><tbody>';
|
103 |
+
|
104 |
+
$total = 0;
|
105 |
+
while ( wpsc_have_cart_items() ) : wpsc_the_cart_item();
|
106 |
+
$price = wpsc_cart_item_price( false );
|
107 |
+
if ( $this->prefs['rate'] != 1 ) {
|
108 |
+
$price = $this->prefs['rate']*$price;
|
109 |
+
}
|
110 |
+
$total = $total+$price;
|
111 |
+
endwhile;
|
112 |
+
|
113 |
+
$output .= '<tr><td colspan="2">' . __( 'Total Cost', 'mycred' ) . '</td><td class="cart-item-cost">' . $this->core->format_creds( $total ) . '</td></tr>';
|
114 |
+
$balance = $this->core->get_users_cred( get_current_user_id() );
|
115 |
+
|
116 |
+
if ( $balance < $total )
|
117 |
+
$highlight = ' style="color:red;"';
|
118 |
+
else
|
119 |
+
$highlight = '';
|
120 |
+
|
121 |
+
$output .= '<tr><td class="cart-item" colspan="2">' . __( 'Your current balance', 'mycred' ) . '</td><td class="cart-item-cost"' . $highlight . '>' . $this->core->format_creds( $balance ) . '</td></tr></tdody></table></tr>';
|
122 |
+
|
123 |
+
if ( !empty( $this->prefs['message'] ) ) {
|
124 |
+
$output .= '<tr><td>' . $this->core->template_tags_general( $this->prefs['message'] ) . '</td></tr>';
|
125 |
+
}
|
126 |
+
|
127 |
+
return apply_filters( 'mycred_wpecom_form', $output );
|
128 |
+
}
|
129 |
+
|
130 |
+
/**
|
131 |
+
* Parse Custom Template Tags
|
132 |
+
* @since 1.3
|
133 |
+
* @version 1.0
|
134 |
+
*/
|
135 |
+
function parse_template_tags( $content, $log_entry ) {
|
136 |
+
if ( !empty( $log_entry->data ) )
|
137 |
+
$content = str_replace( '%order_id%', $log_entry->data, $content );
|
138 |
+
else
|
139 |
+
$content = str_replace( '%order_id%', 'missing', $content );
|
140 |
+
|
141 |
+
return $content;
|
142 |
+
}
|
143 |
+
}
|
144 |
+
new myCRED_WP_E_Commerce_Gateway();
|
145 |
+
|
146 |
+
class wpsc_merchant_mycred extends wpsc_merchant {
|
147 |
+
|
148 |
+
var $prefs = array();
|
149 |
+
var $core = '';
|
150 |
+
var $cost = 0;
|
151 |
+
var $transaction_id = '';
|
152 |
+
|
153 |
+
/**
|
154 |
+
* Construct
|
155 |
+
*/
|
156 |
+
function __construct( $purchase_id = NULL, $is_receiving = false, $prefs = NULL, $mycred = NULL ) {
|
157 |
+
parent::__construct( $purchase_id, $is_receiving );
|
158 |
+
$name = apply_filters( 'mycred_label', myCRED_NAME );
|
159 |
+
$this->prefs = $prefs;
|
160 |
+
$this->core = $mycred;
|
161 |
+
}
|
162 |
+
|
163 |
+
/**
|
164 |
+
* Validate
|
165 |
+
* Checks to make sure the current user can use this gateway.
|
166 |
+
* @since 1.3
|
167 |
+
* @version 1.0
|
168 |
+
*/
|
169 |
+
function validate( $purchase_log ) {
|
170 |
+
$error = false;
|
171 |
+
$user_id = get_current_user_id();
|
172 |
+
|
173 |
+
// Get cost
|
174 |
+
$cart_total = $this->cart_data['total_price'];
|
175 |
+
if ( $this->prefs['rate'] != 1 ) {
|
176 |
+
$cart_total = $this->prefs['rate']*$cart_total;
|
177 |
+
}
|
178 |
+
$cart_total = $this->core->number( $cart_total );
|
179 |
+
$this->cost = $cart_total;
|
180 |
+
|
181 |
+
// User is not logged in
|
182 |
+
if ( !is_user_logged_in() ) {
|
183 |
+
$error = $this->core->template_tags_general( $this->prefs['visitor'] );
|
184 |
+
}
|
185 |
+
|
186 |
+
// Else if user is excluded
|
187 |
+
elseif ( $this->core->exclude_user( $user_id ) ) {
|
188 |
+
$error = __( 'You can not use this gateway.', 'mycred' );
|
189 |
+
}
|
190 |
+
|
191 |
+
// Else check balance
|
192 |
+
else {
|
193 |
+
// Rate
|
194 |
+
$balance = $this->core->get_users_cred( $user_id );
|
195 |
+
if ( $balance < $this->cost ) {
|
196 |
+
$error = $this->core->template_tags_general( $this->prefs['low_funds'] );
|
197 |
+
}
|
198 |
+
}
|
199 |
+
|
200 |
+
// Exit on errors
|
201 |
+
if ( apply_filters( 'mycred_wpcom_validate', $error ) !== false ) {
|
202 |
+
wpsc_delete_customer_meta( 'selected_gateway' );
|
203 |
+
$this->set_error_message( $error );
|
204 |
+
$purchase_log->delete( $this->purchase_id );
|
205 |
+
unset( $_SESSION['WpscGatewayErrorMessage'] );
|
206 |
+
$this->return_to_checkout();
|
207 |
+
exit;
|
208 |
+
}
|
209 |
+
|
210 |
+
// Prep for payment
|
211 |
+
$this->user_id = $user_id;
|
212 |
+
$this->transaction_id = 'MYCRED' . $user_id . time();
|
213 |
+
}
|
214 |
+
|
215 |
+
/**
|
216 |
+
* Submit
|
217 |
+
* Charges the user for the purchase and if profit sharing is enabled
|
218 |
+
* each product owner.
|
219 |
+
* @since 1.3
|
220 |
+
* @version 1.0
|
221 |
+
*/
|
222 |
+
function submit() {
|
223 |
+
// Since the wpsc_pre_submit_gateway action could change these values, we need to check
|
224 |
+
if ( $this->cost > 0 && $this->user_id != 0 && !empty( $this->transaction_id ) ) {
|
225 |
+
// Let other play before we start
|
226 |
+
do_action_ref_array( 'mycred_wpecom_charg', array( &$this ) );
|
227 |
+
|
228 |
+
// Charge
|
229 |
+
$this->core->add_creds(
|
230 |
+
'wpecom_payment',
|
231 |
+
$this->user_id,
|
232 |
+
0-$this->cost,
|
233 |
+
$this->prefs['log'],
|
234 |
+
'',
|
235 |
+
$this->purchase_id
|
236 |
+
);
|
237 |
+
|
238 |
+
// Update Order
|
239 |
+
$this->set_transaction_details( $this->transaction_id, 3 );
|
240 |
+
transaction_results( $this->cart_data['session_id'], false );
|
241 |
+
|
242 |
+
// Payout Share
|
243 |
+
if ( $this->prefs['share'] > 0 ) {
|
244 |
+
// Loop though items
|
245 |
+
foreach ( (array) $this->cart_items as $item ) {
|
246 |
+
// Get product
|
247 |
+
$product = get_post( (int) $item['product_id'] );
|
248 |
+
|
249 |
+
// Continue if product has just been deleted or owner is buyer
|
250 |
+
if ( $product === NULL || $product->post_author == $this->user_id ) continue;
|
251 |
+
|
252 |
+
// Calculate Cost
|
253 |
+
$price = $item['price'];
|
254 |
+
$quantity = $item['quantity'];
|
255 |
+
$cost = $price*$quantity;
|
256 |
+
|
257 |
+
// Calculate Share
|
258 |
+
$share = ( $this->prefs['share'] / 100 ) * $cost;
|
259 |
+
|
260 |
+
// Payout
|
261 |
+
$this->core->add_creds(
|
262 |
+
'store_sale',
|
263 |
+
$product->post_author,
|
264 |
+
$this->core->format_number( $share ),
|
265 |
+
$this->prefs['share_log'],
|
266 |
+
$product->ID,
|
267 |
+
array( 'ref_type' => 'post' )
|
268 |
+
);
|
269 |
+
}
|
270 |
+
}
|
271 |
+
|
272 |
+
// Let others play before we end
|
273 |
+
do_action_ref_array( 'mycred_wpecom_charged', array( &$this ) );
|
274 |
+
|
275 |
+
// Empty Cart, Redirect & Exit
|
276 |
+
wpsc_empty_cart();
|
277 |
+
$this->go_to_transaction_results( $this->cart_data['session_id'] );
|
278 |
+
exit;
|
279 |
+
}
|
280 |
+
|
281 |
+
// Else save this as pending
|
282 |
+
elseif ( !empty( $this->transaction_id ) ) {
|
283 |
+
$this->set_transaction_details( $this->transaction_id, 2 );
|
284 |
+
}
|
285 |
+
}
|
286 |
+
}
|
287 |
+
}
|
288 |
+
}
|
289 |
+
|
290 |
+
/**
|
291 |
+
* Gateway Settings
|
292 |
+
* @filter mycred_wpecom_settings
|
293 |
+
* @since 1.3
|
294 |
+
* @version 1.0
|
295 |
+
*/
|
296 |
+
if ( !function_exists( 'mycred_wpecom_gateway_settings' ) ) {
|
297 |
+
function mycred_wpecom_gateway_settings() {
|
298 |
+
global $wpdb, $mycred_wpecom_settings;
|
299 |
+
|
300 |
+
$mycred = mycred_get_settings();
|
301 |
+
|
302 |
+
// Get current currency
|
303 |
+
$currency_data = $wpdb->get_results( "SELECT * FROM `" . WPSC_TABLE_CURRENCY_LIST . "` ORDER BY `country` ASC", ARRAY_A );
|
304 |
+
$selected_currency = esc_attr( get_option( 'currency_type' ) );
|
305 |
+
foreach ( $currency_data as $currency ) {
|
306 |
+
if ( $selected_currency != $currency['id'] ) continue;
|
307 |
+
else {
|
308 |
+
if ( !empty( $currency['symbol_html'] ) )
|
309 |
+
$selected_currency = $currency['symbol_html'];
|
310 |
+
else
|
311 |
+
$selected_currency = $currency['code'];
|
312 |
+
|
313 |
+
break;
|
314 |
+
}
|
315 |
+
}
|
316 |
+
|
317 |
+
$output = '
|
318 |
+
<tr>
|
319 |
+
<td colspan="2"><strong>' . __( 'General', 'mycred' ) . '</strong></td>
|
320 |
+
</tr>
|
321 |
+
<tr>
|
322 |
+
<td width="150">' . __( 'Log Template for Payments', 'mycred' ) . '</td>
|
323 |
+
<td><input type="text" name="mycred_gateway[log]" value="' . esc_attr( $mycred_wpecom_settings['log'] ) . '" style="width:50%;" /><br /><span class="description">' . __( 'Log entry template for successful payments. Available template tags: General, %order_id%', 'mycred' ) . '</span></td>
|
324 |
+
</tr>
|
325 |
+
<tr>
|
326 |
+
<td width="150">' . __( 'Exchange Rate', 'mycred' ) . '</td>
|
327 |
+
<td><input type="text" name="mycred_gateway[rate]" value="' . esc_attr( $mycred_wpecom_settings['rate'] ) . '" style="width:50px;" /><br /><span class="description">' . sprintf( __( 'How much is 1 %s worth in %s', 'mycred' ), $selected_currency, $mycred->plural() ) . '</span></td>
|
328 |
+
</tr>
|
329 |
+
<tr>
|
330 |
+
<td colspan="2"><strong>' . __( 'Profit Sharing', 'mycred' ) . '</strong></td>
|
331 |
+
</tr>
|
332 |
+
<tr>
|
333 |
+
<td width="150">' . __( 'Payout', 'mycred' ) . '</td>
|
334 |
+
<td><input type="text" name="mycred_gateway[share]" value="' . esc_attr( $mycred_wpecom_settings['share'] ) . '" style="width:50px;" /> %<br /><span class="description">' . __( 'Option to share a percentage of the sale with the product owner (post author). User zero to disable.', 'mycred' ) . '</span></td>
|
335 |
+
</tr>
|
336 |
+
<tr>
|
337 |
+
<td width="150">' . __( 'Log Template', 'mycred' ) . '</td>
|
338 |
+
<td><input type="text" name="mycred_gateway[share_log]" value="' . esc_attr( $mycred_wpecom_settings['share_log'] ) . '" style="width:50%;" /><br /><span class="description">' . __( 'Log entry template for profit sharing. Available template tags: General and Post related', 'mycred' ) . '</span></td>
|
339 |
+
</tr>
|
340 |
+
<tr>
|
341 |
+
<td colspan="2"><strong>' . __( 'Messages', 'mycred' ) . '</strong></td>
|
342 |
+
</tr>
|
343 |
+
<tr>
|
344 |
+
<td width="150">' . __( 'Instructions', 'mycred' ) . '</td>
|
345 |
+
<td><input type="text" name="mycred_gateway[message]" value="' . esc_attr( $mycred_wpecom_settings['message'] ) . '" style="width:50%;" /><br /><span class="description">' . __( 'Optional instructions to show users when selecting this gateway. Leave empty to hide.', 'mycred' ) . '</span></td>
|
346 |
+
</tr>
|
347 |
+
<tr>
|
348 |
+
<td width="150">' . __( 'Visitors', 'mycred' ) . '</td>
|
349 |
+
<td><input type="text" name="mycred_gateway[visitor]" value="' . esc_attr( $mycred_wpecom_settings['visitor'] ) . '" style="width:50%;" /><br /><span class="description">' . __( 'Message to show visitors who are not logged in.', 'mycred' ) . '</span></td>
|
350 |
+
</tr>
|
351 |
+
<tr>
|
352 |
+
<td width="150">' . __( 'Insufficient Funds', 'mycred' ) . '</td>
|
353 |
+
<td><input type="text" name="mycred_gateway[low_funds]" value="' . esc_attr( $mycred_wpecom_settings['low_funds'] ) . '" style="width:50%;" /><br /><span class="description">' . $mycred->template_tags_general( __( 'Message to show when users does not have enough %plural% to pay using this gateway.', 'mycred' ) ) . '</span></td>
|
354 |
+
</tr>';
|
355 |
+
|
356 |
+
return apply_filters( 'mycred_wpecom_settings', $output );
|
357 |
+
}
|
358 |
+
}
|
359 |
+
|
360 |
+
/**
|
361 |
+
* Save Gateway Settings
|
362 |
+
* @filter mycred_wpecom_save_settings
|
363 |
+
* @since 1.3
|
364 |
+
* @version 1.0
|
365 |
+
*/
|
366 |
+
if ( !function_exists( 'mycred_wpecom_gateway_settings_save' ) ) {
|
367 |
+
function mycred_wpecom_gateway_settings_save() {
|
368 |
+
if ( isset( $_POST['mycred_gateway'] ) ) {
|
369 |
+
$new_settings = apply_filters( 'mycred_wpecom_save_settings', array(
|
370 |
+
'log' => trim( $_POST['mycred_gateway']['log'] ),
|
371 |
+
'share' => abs( $_POST['mycred_gateway']['share'] ),
|
372 |
+
'share_log' => trim( $_POST['mycred_gateway']['share_log'] ),
|
373 |
+
'rate' => trim( $_POST['mycred_gateway']['rate'] ),
|
374 |
+
'visitor' => sanitize_text_field( $_POST['mycred_gateway']['visitor'] ),
|
375 |
+
'low_funds' => sanitize_text_field( $_POST['mycred_gateway']['low_funds'] ),
|
376 |
+
'message' => sanitize_text_field( $_POST['mycred_gateway']['message'] )
|
377 |
+
) );
|
378 |
+
update_option( 'mycred_wpecom_settings', $new_settings );
|
379 |
+
}
|
380 |
+
return true;
|
381 |
+
}
|
382 |
+
}
|
383 |
+
|
384 |
+
/**
|
385 |
+
* Parse Email Notice
|
386 |
+
* @since 1.2.2
|
387 |
+
* @version 1.0
|
388 |
+
*/
|
389 |
+
if ( !function_exists( 'mycred_wpecom_parse_email' ) ) {
|
390 |
+
add_filter( 'mycred_email_before_send', 'mycred_wpecom_parse_email' );
|
391 |
+
function mycred_wpecom_parse_email( $email )
|
392 |
+
{
|
393 |
+
if ( $email['request']['ref'] == 'wpecom_payment' ) {
|
394 |
+
$email['request']['entry'] = str_replace( '%order_id%', $email['request']['data'], $email['request']['entry'] );
|
395 |
+
}
|
396 |
+
return $email;
|
397 |
+
}
|
398 |
+
}
|
399 |
+
?>
|
addons/gateway/event-booking/mycred-eventespresso3.php
CHANGED
@@ -3,7 +3,7 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
3 |
/**
|
4 |
* Event Espresso Payment Gateway
|
5 |
* @since 1.2
|
6 |
-
* @version 1.0
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
9 |
class myCRED_Espresso_Gateway {
|
@@ -25,6 +25,7 @@ if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
|
25 |
'button' => __( 'Pay Now', 'mycred' )
|
26 |
),
|
27 |
'rate' => 100,
|
|
|
28 |
'log' => __( 'Payment for Event Registration', 'mycred' ),
|
29 |
'messages' => array(
|
30 |
'solvent' => 'Click "Pay Now" to pay using your %plural%.',
|
@@ -147,7 +148,7 @@ if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
|
147 |
/**
|
148 |
* Process Payment
|
149 |
* @since 1.2
|
150 |
-
* @version 1.
|
151 |
*/
|
152 |
public function process_payment( $payment_data ) {
|
153 |
if ( !is_user_logged_in() ) return $payment_data;
|
@@ -194,6 +195,22 @@ if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
|
194 |
// Let others play
|
195 |
do_action( 'mycred_espresso_processed', $payment_data, $this->prefs, $this->core );
|
196 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
197 |
return $payment_data;
|
198 |
}
|
199 |
|
@@ -367,7 +384,7 @@ if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
|
367 |
* Gateway Settings
|
368 |
* Included first when the gateway is activated.
|
369 |
* @since 1.2
|
370 |
-
* @version 1.
|
371 |
*/
|
372 |
public function gateway_settings() {
|
373 |
global $org_options;
|
@@ -419,6 +436,11 @@ if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
|
419 |
<li><?php _e( 'Users must be logged in to use this gateway!', 'mycred' ); ?></li>
|
420 |
</ol>
|
421 |
</li>
|
|
|
|
|
|
|
|
|
|
|
422 |
</ul>
|
423 |
<h4><?php _e( 'Log', 'mycred' ); ?></h4>
|
424 |
<ul>
|
@@ -463,7 +485,7 @@ if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
|
463 |
/**
|
464 |
* Update Settings
|
465 |
* @since 1.2
|
466 |
-
* @version 1.
|
467 |
*/
|
468 |
public function update_settings() {
|
469 |
// Apply Whitelabeling
|
@@ -486,6 +508,9 @@ if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
|
486 |
// Exchange Rate
|
487 |
$new_settings['rate'] = sanitize_text_field( $post['rate'] );
|
488 |
|
|
|
|
|
|
|
489 |
// Log
|
490 |
$new_settings['log'] = sanitize_text_field( $post['log'] );
|
491 |
|
3 |
/**
|
4 |
* Event Espresso Payment Gateway
|
5 |
* @since 1.2
|
6 |
+
* @version 1.0.1
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Espresso_Gateway' ) ) {
|
9 |
class myCRED_Espresso_Gateway {
|
25 |
'button' => __( 'Pay Now', 'mycred' )
|
26 |
),
|
27 |
'rate' => 100,
|
28 |
+
'share' => 0,
|
29 |
'log' => __( 'Payment for Event Registration', 'mycred' ),
|
30 |
'messages' => array(
|
31 |
'solvent' => 'Click "Pay Now" to pay using your %plural%.',
|
148 |
/**
|
149 |
* Process Payment
|
150 |
* @since 1.2
|
151 |
+
* @version 1.1
|
152 |
*/
|
153 |
public function process_payment( $payment_data ) {
|
154 |
if ( !is_user_logged_in() ) return $payment_data;
|
195 |
// Let others play
|
196 |
do_action( 'mycred_espresso_processed', $payment_data, $this->prefs, $this->core );
|
197 |
|
198 |
+
// Profit sharing
|
199 |
+
if ( $this->prefs['share'] != 0 ) {
|
200 |
+
$event_post = get_post( (int) $payment_data['event_id'] );
|
201 |
+
if ( $event_post !== NULL ) {
|
202 |
+
$share = ( $this->prefs['share']/100 ) * $price;
|
203 |
+
$this->core->add_creds(
|
204 |
+
'event_sale',
|
205 |
+
$event_post->post_author,
|
206 |
+
$share,
|
207 |
+
$this->prefs['log'],
|
208 |
+
$payment_data['event_id'],
|
209 |
+
$payment_data['registration_id']
|
210 |
+
);
|
211 |
+
}
|
212 |
+
}
|
213 |
+
|
214 |
return $payment_data;
|
215 |
}
|
216 |
|
384 |
* Gateway Settings
|
385 |
* Included first when the gateway is activated.
|
386 |
* @since 1.2
|
387 |
+
* @version 1.1
|
388 |
*/
|
389 |
public function gateway_settings() {
|
390 |
global $org_options;
|
436 |
<li><?php _e( 'Users must be logged in to use this gateway!', 'mycred' ); ?></li>
|
437 |
</ol>
|
438 |
</li>
|
439 |
+
<li id="mycred-event-profit-sharing">
|
440 |
+
<label for="mycred-prefs-profit-share"><?php _e( 'Profit Sharing', 'mycred' ); ?></label>
|
441 |
+
<input type="text" name="mycred_prefs[share]" id="mycred-prefs-profit-share" size="5" value="<?php echo $this->prefs['share']; ?>" /> %<br />
|
442 |
+
<span class="description"><?php _e( 'Option to share sales with the event owner (post author). Use zero to disable.', 'mycred' ); ?></span>
|
443 |
+
</li>
|
444 |
</ul>
|
445 |
<h4><?php _e( 'Log', 'mycred' ); ?></h4>
|
446 |
<ul>
|
485 |
/**
|
486 |
* Update Settings
|
487 |
* @since 1.2
|
488 |
+
* @version 1.1
|
489 |
*/
|
490 |
public function update_settings() {
|
491 |
// Apply Whitelabeling
|
508 |
// Exchange Rate
|
509 |
$new_settings['rate'] = sanitize_text_field( $post['rate'] );
|
510 |
|
511 |
+
// Profit Share
|
512 |
+
$new_settings['share'] = abs( $post['share'] );
|
513 |
+
|
514 |
// Log
|
515 |
$new_settings['log'] = sanitize_text_field( $post['log'] );
|
516 |
|
addons/gateway/event-booking/mycred-eventsmanager-pro.php
ADDED
@@ -0,0 +1,600 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
+
/**
|
4 |
+
* Events Manager Pro Gateway
|
5 |
+
* @since 1.3
|
6 |
+
* @version 1.0.1
|
7 |
+
*/
|
8 |
+
if ( !class_exists( 'EM_Gateway_myCRED' ) ) {
|
9 |
+
class EM_Gateway_myCRED extends EM_Gateway {
|
10 |
+
|
11 |
+
var $gateway = 'mycred';
|
12 |
+
var $title = '';
|
13 |
+
var $status = 1;
|
14 |
+
var $status_txt = '';
|
15 |
+
var $button_enabled = true;
|
16 |
+
var $supports_multiple_bookings = true;
|
17 |
+
|
18 |
+
var $registered_timer = 0;
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Construct
|
22 |
+
*/
|
23 |
+
function __construct() {
|
24 |
+
// Default settings
|
25 |
+
$defaults = array(
|
26 |
+
'setup' => 'off',
|
27 |
+
'rate' => 100,
|
28 |
+
'share' => 0,
|
29 |
+
'log' => array(
|
30 |
+
'purchase' => __( 'Payment for tickets to %link_with_title%', 'mycred' ),
|
31 |
+
'refund' => __( 'Ticket refund for %link_with_title%', 'mycred' )
|
32 |
+
),
|
33 |
+
'refund' => 0,
|
34 |
+
'labels' => array(
|
35 |
+
'header' => __( 'Pay using your %_plural% balance', 'mycred' ),
|
36 |
+
'button' => __( 'Pay Now', 'mycred' ),
|
37 |
+
'link' => __( 'Pay', 'mycred' )
|
38 |
+
),
|
39 |
+
'messages' => array(
|
40 |
+
'success' => __( 'Thank you for your payment!', 'mycred' ),
|
41 |
+
'error' => __( "I'm sorry but you can not pay for these tickets using %_plural%", 'mycred' )
|
42 |
+
)
|
43 |
+
);
|
44 |
+
|
45 |
+
// Settings
|
46 |
+
$settings = get_option( 'mycred_eventsmanager_gateway_prefs' );
|
47 |
+
$this->prefs = mycred_apply_defaults( $defaults, $settings );
|
48 |
+
|
49 |
+
// Load myCRED
|
50 |
+
$this->core = mycred_get_settings();
|
51 |
+
|
52 |
+
// Apply Whitelabeling
|
53 |
+
$this->label = apply_filters( 'mycred_label', myCRED_NAME );
|
54 |
+
$this->title = strip_tags( $this->label );
|
55 |
+
$this->status_txt = 'Paid using ' . strip_tags( $this->label );
|
56 |
+
|
57 |
+
parent::__construct();
|
58 |
+
|
59 |
+
if ( !$this->is_active() ) return;
|
60 |
+
|
61 |
+
// Currency
|
62 |
+
add_filter( 'em_get_currencies', array( $this, 'add_currency' ) );
|
63 |
+
if ( $this->single_currency() )
|
64 |
+
add_filter( 'em_get_currency_formatted', array( $this, 'format_price' ), 10, 4 );
|
65 |
+
|
66 |
+
// Adjust Ticket Columns
|
67 |
+
add_filter( 'em_booking_form_tickets_cols', array( $this, 'ticket_columns' ), 10, 2 );
|
68 |
+
add_action( 'em_booking_form_tickets_col_mycred', array( $this, 'ticket_col' ), 10, 2 );
|
69 |
+
add_filter( 'em_bookings_table_cols_col_action', array( $this, 'bookings_table_actions' ), 10, 2 );
|
70 |
+
|
71 |
+
// Refund
|
72 |
+
if ( $this->prefs['refund'] != 0 )
|
73 |
+
add_filter( 'em_booking_set_status', array( $this, 'refunds' ), 10, 2 );
|
74 |
+
}
|
75 |
+
|
76 |
+
/**
|
77 |
+
* Add Currency
|
78 |
+
* Adds "Points" as a form of currency
|
79 |
+
* @since 1.3
|
80 |
+
* @version 1.0
|
81 |
+
*/
|
82 |
+
public function add_currency( $currencies ) {
|
83 |
+
$currencies->names['XMY'] = $this->core->plural();
|
84 |
+
if ( empty( $this->core->before ) && !empty( $this->core->after ) ) {
|
85 |
+
$currencies->symbols['XMY'] = $this->core->after;
|
86 |
+
$currencies->symbols['XMY'] = $this->core->after;
|
87 |
+
}
|
88 |
+
elseif ( !empty( $this->core->before ) && empty( $this->core->after ) ) {
|
89 |
+
$currencies->true_symbols['XMY'] = $this->core->before;
|
90 |
+
$currencies->true_symbols['XMY'] = $this->core->after;
|
91 |
+
}
|
92 |
+
|
93 |
+
return $currencies;
|
94 |
+
}
|
95 |
+
|
96 |
+
/**
|
97 |
+
* Check if using Single Currency
|
98 |
+
* @since 1.3
|
99 |
+
* @version 1.0
|
100 |
+
*/
|
101 |
+
public function single_currency() {
|
102 |
+
if ( $this->prefs['setup'] == 'single' ) return true;
|
103 |
+
return false;
|
104 |
+
}
|
105 |
+
|
106 |
+
/**
|
107 |
+
* Format Price
|
108 |
+
* @since 1.3
|
109 |
+
* @version 1.0
|
110 |
+
*/
|
111 |
+
public function format_price( $formatted_price, $price, $currency, $format ) {
|
112 |
+
if ( $currency == 'XMY' )
|
113 |
+
return $this->core->format_creds( $price );
|
114 |
+
else
|
115 |
+
return $formatted_price;
|
116 |
+
}
|
117 |
+
|
118 |
+
/**
|
119 |
+
* Adjust Ticket Columns
|
120 |
+
* @since 1.3
|
121 |
+
* @version 1.0
|
122 |
+
*/
|
123 |
+
public function ticket_columns( $columns, $EM_Event ) {
|
124 |
+
if ( !$EM_Event->is_free() ) {
|
125 |
+
unset( $columns['price'] );
|
126 |
+
unset( $columns['type'] );
|
127 |
+
unset( $columns['spaces'] );
|
128 |
+
|
129 |
+
$columns['type'] = __( 'Ticket Type', 'mycred' );
|
130 |
+
|
131 |
+
if ( $this->single_currency() ) {
|
132 |
+
$columns['mycred'] = __( 'Price', 'mycred' );
|
133 |
+
}
|
134 |
+
else {
|
135 |
+
$columns['price'] = __( 'Price', 'mycred' );
|
136 |
+
$columns['mycred'] = $this->core->plural();
|
137 |
+
}
|
138 |
+
$columns['spaces'] = __( 'Spaces', 'mycred' );
|
139 |
+
}
|
140 |
+
|
141 |
+
$this->booking_cols = count( $columns );
|
142 |
+
return $columns;
|
143 |
+
}
|
144 |
+
|
145 |
+
/**
|
146 |
+
* Adjust Ticket Column Content
|
147 |
+
* @since 1.3
|
148 |
+
* @version 1.0
|
149 |
+
*/
|
150 |
+
public function ticket_col( $EM_Ticket, $EM_Event ) {
|
151 |
+
$ticket_price = $EM_Ticket->get_price( false );
|
152 |
+
if ( $this->single_currency() )
|
153 |
+
$price = $ticket_price;
|
154 |
+
else
|
155 |
+
$price = $this->prefs['rate']*$ticket_price;
|
156 |
+
|
157 |
+
if ( empty( $ticket_price ) )
|
158 |
+
$price = 0; ?>
|
159 |
+
|
160 |
+
<td class="em-bookings-ticket-table-points"><?php echo $this->core->format_creds( $price ); ?></td>
|
161 |
+
<?php
|
162 |
+
}
|
163 |
+
|
164 |
+
/**
|
165 |
+
* Shows button, not needed if using the new form display
|
166 |
+
* @since 1.3
|
167 |
+
* @version 1.0
|
168 |
+
*/
|
169 |
+
function booking_form_button() {
|
170 |
+
if ( !is_user_logged_in() ) return;
|
171 |
+
$user_id = get_current_user_id();
|
172 |
+
|
173 |
+
// Check for exclusion
|
174 |
+
if ( $this->core->exclude_user( $user_id ) ) return;
|
175 |
+
|
176 |
+
// Make sure we have points
|
177 |
+
if ( $this->core->get_users_cred( $user_id ) <= $this->core->format_number( 0 ) ) return;
|
178 |
+
|
179 |
+
$button = get_option( 'em_'. $this->gateway . '_button', $this->title );
|
180 |
+
ob_start();
|
181 |
+
if ( preg_match( '/https?:\/\//', $button ) ) { ?>
|
182 |
+
<input type="image" class="em-booking-submit em-gateway-button" id="em-gateway-button-<?php echo $this->gateway; ?>" src="<?php echo $button; ?>" alt="<?php echo $this->title; ?>" />
|
183 |
+
<?php } else { ?>
|
184 |
+
<input type="submit" class="em-booking-submit em-gateway-button" id="em-gateway-button-<?php echo $this->gateway; ?>" value="<?php echo $button; ?>" />
|
185 |
+
<?php }
|
186 |
+
return ob_get_clean();
|
187 |
+
}
|
188 |
+
|
189 |
+
/**
|
190 |
+
* Add Booking
|
191 |
+
* @since 1.3
|
192 |
+
* @version 1.0
|
193 |
+
*/
|
194 |
+
function booking_add( $EM_Event, $EM_Booking, $post_validation = false ) {
|
195 |
+
parent::booking_add( $EM_Event, $EM_Booking, $post_validation );
|
196 |
+
if ( $post_validation && empty( $EM_Booking->booking_id ) ) {
|
197 |
+
if ( get_option( 'dbem_multiple_bookings' ) && get_class( $EM_Booking ) == 'EM_Multiple_Booking' ) {
|
198 |
+
add_filter( 'em_multiple_booking_save', array( &$this, 'booking_payment' ), 2, 2 );
|
199 |
+
} else {
|
200 |
+
add_filter( 'em_booking_save', array( &$this, 'booking_payment' ), 2, 2 );
|
201 |
+
}
|
202 |
+
}
|
203 |
+
}
|
204 |
+
|
205 |
+
/**
|
206 |
+
* Booking Payment
|
207 |
+
* @since 1.3
|
208 |
+
* @version 1.0
|
209 |
+
*/
|
210 |
+
function booking_payment( $result, $EM_Booking ) {
|
211 |
+
global $wpdb, $wp_rewrite, $EM_Notices;
|
212 |
+
//make sure booking save was successful before we try anything
|
213 |
+
if ( $result ) {
|
214 |
+
// Event is not free
|
215 |
+
if ( $EM_Booking->get_price() > 0 ) {
|
216 |
+
$ok = true;
|
217 |
+
|
218 |
+
// User is excluded from using this gateway
|
219 |
+
if ( $this->core->exclude_user( $EM_Booking->person->ID ) ) {
|
220 |
+
$EM_Booking->add_error( __( 'You can not pay using this gateway.', 'mycred' ) );
|
221 |
+
$ok = false;
|
222 |
+
}
|
223 |
+
// User can not afford to pay
|
224 |
+
elseif ( !$this->can_pay( $EM_Booking ) ) {
|
225 |
+
$EM_Booking->add_error( $this->core->template_tags_general( $this->prefs['messages']['error'] ) );
|
226 |
+
$ok = false;
|
227 |
+
}
|
228 |
+
// User has not yet paid (prefered)
|
229 |
+
elseif ( !$this->has_paid( $EM_Booking ) ) {
|
230 |
+
// Price
|
231 |
+
$price = $this->core->number( $EM_Booking->booking_price );
|
232 |
+
if ( !$this->single_currency() ) {
|
233 |
+
$exchange_rate = $this->prefs['rate'];
|
234 |
+
$price = $this->core->number( $exchange_rate*$price );
|
235 |
+
}
|
236 |
+
|
237 |
+
// Charge
|
238 |
+
$this->core->add_creds(
|
239 |
+
'ticket_purchase',
|
240 |
+
$EM_Booking->person->ID,
|
241 |
+
0-$price,
|
242 |
+
$this->prefs['log']['purchase'],
|
243 |
+
$EM_Booking->event->post_id,
|
244 |
+
array( 'ref_type' => 'post', 'bid' => $EM_Booking->booking_id )
|
245 |
+
);
|
246 |
+
|
247 |
+
// Log transaction with EM
|
248 |
+
$transaction_id = time() . $EM_Booking->person->ID;
|
249 |
+
$EM_Booking->booking_meta[ $this->gateway ] = array( 'txn_id' => $transaction_id, 'amount' => $price );
|
250 |
+
$this->record_transaction( $EM_Booking, $EM_Booking->get_price( false, false, true ), get_option( 'dbem_bookings_currency' ), current_time( 'mysql' ), $transaction_id, 'Completed', '' );
|
251 |
+
|
252 |
+
// Profit sharing
|
253 |
+
if ( $this->prefs['share'] != 0 ) {
|
254 |
+
$event_post = get_post( (int) $EM_Booking->event->post_id );
|
255 |
+
if ( $event_post !== NULL ) {
|
256 |
+
$share = ( $this->prefs['share']/100 ) * $price;
|
257 |
+
$this->core->add_creds(
|
258 |
+
'ticket_sale',
|
259 |
+
$event_post->post_author,
|
260 |
+
$share,
|
261 |
+
$this->prefs['log']['purchase'],
|
262 |
+
$event_post->ID,
|
263 |
+
array( 'ref_type' => 'post', 'bid' => $EM_Booking->booking_id )
|
264 |
+
);
|
265 |
+
}
|
266 |
+
}
|
267 |
+
}
|
268 |
+
// Something went horribly wrong
|
269 |
+
else {
|
270 |
+
$ok = false;
|
271 |
+
}
|
272 |
+
|
273 |
+
// Successfull Payment
|
274 |
+
if ( $ok ) {
|
275 |
+
if ( !get_option( 'em_' . $this->gateway . '_manual_approval', false ) || !get_option( 'dbem_bookings_approval' ) ) {
|
276 |
+
$EM_Booking->set_status( 1, false ); //Approve
|
277 |
+
} else {
|
278 |
+
$EM_Booking->set_status( 0, false ); //Set back to normal "pending"
|
279 |
+
}
|
280 |
+
}
|
281 |
+
// Error in payment - delete booking
|
282 |
+
else {
|
283 |
+
// Delete any user that got registered for this event
|
284 |
+
if ( !is_user_logged_in() && get_option( 'dbem_bookings_anonymous' ) && !get_option( 'dbem_bookings_registration_disable' ) && !empty( $EM_Booking->person_id ) ) {
|
285 |
+
$EM_Person = $EM_Booking->get_person();
|
286 |
+
if ( strtotime( $EM_Person->data->user_registered ) >= $this->registered_timer ) {
|
287 |
+
if ( is_multisite() ) {
|
288 |
+
include_once( ABSPATH . '/wp-admin/includes/ms.php' );
|
289 |
+
wpmu_delete_user( $EM_Person->ID );
|
290 |
+
} else {
|
291 |
+
include_once( ABSPATH . '/wp-admin/includes/user.php' );
|
292 |
+
wp_delete_user( $EM_Person->ID );
|
293 |
+
}
|
294 |
+
|
295 |
+
// remove email confirmation
|
296 |
+
global $EM_Notices;
|
297 |
+
$EM_Notices->notices['confirms'] = array();
|
298 |
+
}
|
299 |
+
}
|
300 |
+
|
301 |
+
// Delete booking
|
302 |
+
$EM_Booking->delete();
|
303 |
+
return false;
|
304 |
+
}
|
305 |
+
}
|
306 |
+
}
|
307 |
+
return $result;
|
308 |
+
}
|
309 |
+
|
310 |
+
/**
|
311 |
+
* Refunds
|
312 |
+
* @since 1.3
|
313 |
+
* @version 1.0
|
314 |
+
*/
|
315 |
+
public function refunds( $result, $EM_Booking ) {
|
316 |
+
// Cancellation = refund
|
317 |
+
if ( $EM_Booking->booking_status == 3 && $EM_Booking->previous_status == 1 && $this->prefs['refund'] > 0 ) {
|
318 |
+
// Make sure user has paid for this to refund
|
319 |
+
if ( $this->has_paid( $EM_Booking ) ) {
|
320 |
+
// Price
|
321 |
+
if ( $this->single_currency() )
|
322 |
+
$price = $this->core->number( $EM_Booking->booking_price );
|
323 |
+
else
|
324 |
+
$price = $this->core->number( $this->prefs['rate']*$EM_Booking->booking_price );
|
325 |
+
|
326 |
+
// Refund
|
327 |
+
if ( $this->prefs['refund'] != 100 )
|
328 |
+
$refund = $price * ( $this->prefs['refund'] / 100 );
|
329 |
+
else
|
330 |
+
$refund = $price;
|
331 |
+
|
332 |
+
// Charge
|
333 |
+
$this->core->add_creds(
|
334 |
+
'ticket_purchase_refund',
|
335 |
+
$EM_Booking->person->ID,
|
336 |
+
$refund,
|
337 |
+
$this->prefs['log']['refund'],
|
338 |
+
$EM_Booking->event->post_id,
|
339 |
+
array( 'ref_type' => 'post', 'bid' => $booking_id )
|
340 |
+
);
|
341 |
+
}
|
342 |
+
}
|
343 |
+
return $result;
|
344 |
+
}
|
345 |
+
|
346 |
+
/**
|
347 |
+
* Customize Booking Table Actions
|
348 |
+
* @since 1.3
|
349 |
+
* @version 1.0
|
350 |
+
*/
|
351 |
+
function bookings_table_actions( $actions, $EM_Booking ) {
|
352 |
+
if ( $EM_Booking->booking_status == 1 && $this->uses_gateway( $EM_Booking ) ) {
|
353 |
+
return array(
|
354 |
+
'reject' => '<a class="em-bookings-reject" href="' . em_add_get_params( $url, array(
|
355 |
+
'action' => 'bookings_reject',
|
356 |
+
'booking_id' => $EM_Booking->booking_id
|
357 |
+
) ) . '">' . __( 'Reject', 'mycred' ) . '</a>',
|
358 |
+
'delete' => '<span class="trash"><a class="em-bookings-delete" href="' . em_add_get_params( $url, array(
|
359 |
+
'action' => 'bookings_delete',
|
360 |
+
'booking_id' => $EM_Booking->booking_id
|
361 |
+
) ) . '">' . __( 'Delete', 'mycred' ) . '</a></span>',
|
362 |
+
'edit' => '<a class="em-bookings-edit" href="' . em_add_get_params( $EM_Booking->get_event()->get_bookings_url(), array(
|
363 |
+
'booking_id' => $EM_Booking->booking_id,
|
364 |
+
'em_ajax' => null,
|
365 |
+
'em_obj' => null
|
366 |
+
) ) . '">' . __( 'Edit/View', 'mycred' ) . '</a>'
|
367 |
+
);
|
368 |
+
}
|
369 |
+
|
370 |
+
return $actions;
|
371 |
+
}
|
372 |
+
|
373 |
+
/**
|
374 |
+
* Can Pay Check
|
375 |
+
* Checks if the user can pay for their booking.
|
376 |
+
* @since 1.2
|
377 |
+
* @version 1.0
|
378 |
+
*/
|
379 |
+
public function can_pay( $EM_Booking ) {
|
380 |
+
$EM_Event = $EM_Booking->get_event();
|
381 |
+
// You cant pay for free events
|
382 |
+
if ( $EM_Event->is_free() ) return false;
|
383 |
+
|
384 |
+
$balance = $this->core->get_users_cred( $EM_Booking->person->ID );
|
385 |
+
if ( $balance <= 0 ) return false;
|
386 |
+
|
387 |
+
$price = $this->core->number( $EM_Booking->booking_price );
|
388 |
+
if ( $price == 0 ) return true;
|
389 |
+
if ( !$this->single_currency() ) {
|
390 |
+
$exchange_rate = $this->prefs['rate'];
|
391 |
+
$price = $this->core->number( $exchange_rate*$price );
|
392 |
+
}
|
393 |
+
|
394 |
+
if ( $balance-$price < 0 ) return false;
|
395 |
+
|
396 |
+
return true;
|
397 |
+
}
|
398 |
+
|
399 |
+
/**
|
400 |
+
* Has Paid
|
401 |
+
* Checks if the user has paid for booking
|
402 |
+
* @since 1.3
|
403 |
+
* @version 1.0
|
404 |
+
*/
|
405 |
+
public function has_paid( $EM_Booking ) {
|
406 |
+
if ( $this->core->has_entry( 'ticket_purchase', $EM_Booking->event->post_id, $EM_Booking->person->ID, 's:3:"bid";i:' . $EM_Booking->booking_id . ';' ) ) return true;
|
407 |
+
return false;
|
408 |
+
}
|
409 |
+
|
410 |
+
/**
|
411 |
+
* Getway Settings
|
412 |
+
* @since 1.3
|
413 |
+
* @version 1.1
|
414 |
+
*/
|
415 |
+
function mysettings() {
|
416 |
+
global $page, $action;
|
417 |
+
$gateway_link = admin_url( 'edit.php?post_type=' . EM_POST_TYPE_EVENT . '&page=events-manager-options#bookings' );
|
418 |
+
|
419 |
+
if ( $this->prefs['setup'] == 'multi' )
|
420 |
+
$box = 'display: block;';
|
421 |
+
else
|
422 |
+
$box = 'display: none;';
|
423 |
+
|
424 |
+
$exchange_message = sprintf(
|
425 |
+
__( 'How many %s is 1 %s worth?', 'mycred' ),
|
426 |
+
$this->core->plural(),
|
427 |
+
em_get_currency_symbol()
|
428 |
+
);
|
429 |
+
|
430 |
+
do_action( 'mycred_em_before_settings', $this ); ?>
|
431 |
+
|
432 |
+
<h4><?php _e( 'Setup', 'mycred' ); ?></h4>
|
433 |
+
<table class="form-table">
|
434 |
+
<tr>
|
435 |
+
<th scope="row"><?php _e( 'Payments', 'mycred' ); ?></th>
|
436 |
+
<td>
|
437 |
+
<input type="radio" name="mycred_gateway[setup]" id="mycred-gateway-setup-off" value="off"<?php checked( $this->prefs['setup'], 'off' ); ?> /> <label for="mycred-gateway-setup-off"><?php echo $this->core->template_tags_general( __( 'Disabled - Users CAN NOT pay for tickets using %plural%.', 'mycred' ) ); ?></label><br />
|
438 |
+
<input type="radio" name="mycred_gateway[setup]" id="mycred-gateway-setup-single" value="single"<?php checked( $this->prefs['setup'], 'single' ); ?> /> <label for="mycred-gateway-setup-single"><?php echo $this->core->template_tags_general( __( 'Single - Users can ONLY pay for tickets using %plural%.', 'mycred' ) ); ?></label><br />
|
439 |
+
<input type="radio" name="mycred_gateway[setup]" id="mycred-gateway-setup-multi" value="multi"<?php checked( $this->prefs['setup'], 'multi' ); ?> /> <label for="mycred-gateway-setup-multi"><?php echo $this->core->template_tags_general( __( 'Multi - Users can pay for tickets using other gateways or %plural%.', 'mycred' ) ); ?></label>
|
440 |
+
</td>
|
441 |
+
</tr>
|
442 |
+
<tr>
|
443 |
+
<th scope="row"><?php _e( 'Refunds', 'mycred' ); ?></th>
|
444 |
+
<td>
|
445 |
+
<input name="mycred_gateway[refund]" type="text" id="mycred-gateway-log-refund" value="<?php echo $this->prefs['refund']; ?>" size="5" /> %<br />
|
446 |
+
<span class="description"><?php _e( 'The percentage of the paid amount to refund if a user cancells their booking. Use zero for no refunds. No refunds are given to "Rejected" bookings!', 'mycred' ); ?></span>
|
447 |
+
</td>
|
448 |
+
</tr>
|
449 |
+
<tr>
|
450 |
+
<th scope="row"><?php _e( 'Profit Sharing', 'mycred' ); ?></th>
|
451 |
+
<td>
|
452 |
+
<input name="mycred_gateway[share]" type="text" id="mycred-gateway-profit-sharing" value="<?php echo $this->prefs['share']; ?>" size="5" /> %<br />
|
453 |
+
<span class="description"><?php _e( 'Option to share sales with the event owner (post author). Use zero to disable.', 'mycred' ); ?></span>
|
454 |
+
</td>
|
455 |
+
</tr>
|
456 |
+
</table>
|
457 |
+
<table class="form-table" id="mycred-exchange-rate" style="<?php echo $box; ?>">
|
458 |
+
<tr>
|
459 |
+
<th scope="row"><?php _e( 'Exchange Rate', 'mycred' ); ?></th>
|
460 |
+
<td>
|
461 |
+
<input name="mycred_gateway[rate]" type="text" id="mycred-gateway-rate" size="6" value="<?php echo $this->prefs['rate']; ?>" /><br />
|
462 |
+
<span class="description"><?php echo $exchange_message; ?></span>
|
463 |
+
</td>
|
464 |
+
</tr>
|
465 |
+
</table>
|
466 |
+
<h4><?php _e( 'Log Templates', 'mycred' ); ?></h4>
|
467 |
+
<table class="form-table">
|
468 |
+
<tr>
|
469 |
+
<th scope="row"><?php _e( 'Purchases', 'mycred' ); ?></th>
|
470 |
+
<td>
|
471 |
+
<input name="mycred_gateway[log][purchase]" type="text" id="mycred-gateway-log-purchase" style="width: 95%;" value="<?php echo $this->prefs['log']['purchase']; ?>" size="45" /><br />
|
472 |
+
<span class="description"><?php _e( 'Available template tags: General and Post related.', 'mycred' ); ?></span>
|
473 |
+
</td>
|
474 |
+
</tr>
|
475 |
+
<tr>
|
476 |
+
<th scope="row"><?php _e( 'Refunds', 'mycred' ); ?></th>
|
477 |
+
<td>
|
478 |
+
<input name="mycred_gateway[log][refund]" type="text" id="mycred-gateway-log-refund" style="width: 95%;" value="<?php echo $this->prefs['log']['refund']; ?>" size="45" /><br />
|
479 |
+
<span class="description"><?php _e( 'Available template tags: General and Post related.', 'mycred' ); ?></span>
|
480 |
+
</td>
|
481 |
+
</tr>
|
482 |
+
</table>
|
483 |
+
<script type="text/javascript">
|
484 |
+
jQuery(function($){
|
485 |
+
$('input[name="mycred_gateway[setup]"]').change(function(){
|
486 |
+
if ( $(this).val() == 'multi' ) {
|
487 |
+
$('#mycred-exchange-rate').show();
|
488 |
+
}
|
489 |
+
else {
|
490 |
+
$('#mycred-exchange-rate').hide();
|
491 |
+
}
|
492 |
+
});
|
493 |
+
});
|
494 |
+
</script>
|
495 |
+
<h4><?php _e( 'Labels', 'mycred' ); ?></h4>
|
496 |
+
<table class="form-table">
|
497 |
+
<tr valign="top">
|
498 |
+
<th scope="row"><?php _e( 'Payment Link Label', 'mycred' ); ?></th>
|
499 |
+
<td>
|
500 |
+
<input name="mycred_gateway[labels][link]" type="text" id="mycred-gateway-labels-link" style="width: 95%" value="<?php echo $this->prefs['labels']['link']; ?>" size="45" /><br />
|
501 |
+
<span class="description"><?php _e( 'The payment link shows / hides the payment form under "My Bookings". No HTML allowed.', 'mycred' ); ?></span>
|
502 |
+
</td>
|
503 |
+
</tr>
|
504 |
+
<tr valign="top">
|
505 |
+
<th scope="row"><?php _e( 'Payment Header', 'mycred' ); ?></th>
|
506 |
+
<td>
|
507 |
+
<input name="mycred_gateway[labels][header]" type="text" id="mycred-gateway-labels-header" style="width: 95%" value="<?php echo $this->prefs['labels']['header']; ?>" size="45" /><br />
|
508 |
+
<span class="description"><?php _e( 'Shown on top of the payment form. No HTML allowed.', 'mycred' ); ?></span>
|
509 |
+
</td>
|
510 |
+
</tr>
|
511 |
+
<tr valign="top">
|
512 |
+
<th scope="row"><?php _e( 'Button Label', 'mycred' ); ?></th>
|
513 |
+
<td>
|
514 |
+
<input name="mycred_gateway[labels][button]" type="text" id="mycred-gateway-labels-button" style="width: 95%" value="<?php echo $this->prefs['labels']['button']; ?>" size="45" /><br />
|
515 |
+
<span class="description"><?php _e( 'The button label for payments. No HTML allowed!', 'mycred' ); ?></span>
|
516 |
+
</td>
|
517 |
+
</tr>
|
518 |
+
</table>
|
519 |
+
<h4><?php _e( 'Messages', 'mycred' ); ?></h4>
|
520 |
+
<table class='form-table'>
|
521 |
+
<tr valign="top">
|
522 |
+
<th scope="row"><?php _e( 'Successful Payments', 'mycred' ); ?></th>
|
523 |
+
<td>
|
524 |
+
<input type="text" name="mycred_gateway[messages][success]" id="mycred-gateway-messages-success" style="width: 95%;" value="<?php echo stripslashes( $this->prefs['messages']['success'] ); ?>" /><br />
|
525 |
+
<span class="description"><?php _e( 'No HTML allowed! Available template tags: General', 'mycred' ); ?></span>
|
526 |
+
</td>
|
527 |
+
</tr>
|
528 |
+
<tr valign="top">
|
529 |
+
<th scope="row"><?php _e( 'Insufficient Funds', 'mycred' ); ?></th>
|
530 |
+
<td>
|
531 |
+
<input type="text" name="mycred_gateway[messages][error]" id="mycred-gateway-messages-error" style="width: 95%;" value="<?php echo stripslashes( $this->prefs['messages']['error'] ); ?>" /><br />
|
532 |
+
<span class="description"><?php _e( 'No HTML allowed! Available template tags: General', 'mycred' ); ?></span>
|
533 |
+
</td>
|
534 |
+
</tr>
|
535 |
+
</table>
|
536 |
+
<?php do_action( 'mycred_em_after_settings', $this );
|
537 |
+
}
|
538 |
+
|
539 |
+
/**
|
540 |
+
* Update Getway Settings
|
541 |
+
* @since 1.3
|
542 |
+
* @version 1.1
|
543 |
+
*/
|
544 |
+
function update() {
|
545 |
+
parent::update();
|
546 |
+
if ( !isset( $_POST['mycred_gateway'] ) || !is_array( $_POST['mycred_gateway'] ) ) return;
|
547 |
+
|
548 |
+
// Prep
|
549 |
+
$data = $_POST['mycred_gateway'];
|
550 |
+
$new_settings = array();
|
551 |
+
|
552 |
+
// Setup
|
553 |
+
$new_settings['setup'] = $data['setup'];
|
554 |
+
$new_settings['refund'] = abs( $data['refund'] );
|
555 |
+
$new_settings['share'] = abs( $data['share'] );
|
556 |
+
|
557 |
+
// Logs
|
558 |
+
$new_settings['log']['purchase'] = trim( stripslashes( $data['log']['purchase'] ) );
|
559 |
+
$new_settings['log']['refund'] = trim( stripslashes( $data['log']['refund'] ) );
|
560 |
+
|
561 |
+
if ( $new_settings['setup'] == 'multi' )
|
562 |
+
$new_settings['rate'] = sanitize_text_field( $data['rate'] );
|
563 |
+
else
|
564 |
+
$new_settings['rate'] = $this->prefs['rate'];
|
565 |
+
|
566 |
+
// Override Pricing Options
|
567 |
+
if ( $new_settings['setup'] == 'single' ) {
|
568 |
+
update_option( 'dbem_bookings_currency_decimal_point', $this->core->format['separators']['decimal'] );
|
569 |
+
update_option( 'dbem_bookings_currency_thousands_sep', $this->core->format['separators']['thousand'] );
|
570 |
+
update_option( 'dbem_bookings_currency', 'XMY' );
|
571 |
+
if ( empty( $this->core->before ) && !empty( $this->core->after ) )
|
572 |
+
$format = '@ #';
|
573 |
+
elseif ( !empty( $this->core->before ) && empty( $this->core->after ) )
|
574 |
+
$format = '# @';
|
575 |
+
update_option( 'dbem_bookings_currency_format', $format );
|
576 |
+
}
|
577 |
+
|
578 |
+
// Labels
|
579 |
+
$new_settings['labels']['link'] = sanitize_text_field( stripslashes( $data['labels']['link'] ) );
|
580 |
+
$new_settings['labels']['header'] = sanitize_text_field( stripslashes( $data['labels']['header'] ) );
|
581 |
+
$new_settings['labels']['button'] = sanitize_text_field( stripslashes( $data['labels']['button'] ) );
|
582 |
+
|
583 |
+
// Messages
|
584 |
+
$new_settings['messages']['success'] = sanitize_text_field( stripslashes( $data['messages']['success'] ) );
|
585 |
+
$new_settings['messages']['error'] = sanitize_text_field( stripslashes( $data['messages']['error'] ) );
|
586 |
+
|
587 |
+
// Save Settings
|
588 |
+
$current = $this->prefs;
|
589 |
+
$this->prefs = mycred_apply_defaults( $current, $new_settings );
|
590 |
+
update_option( 'mycred_eventsmanager_gateway_prefs', $this->prefs );
|
591 |
+
|
592 |
+
// Let others play
|
593 |
+
do_action( 'mycred_em_save_settings', $this );
|
594 |
+
|
595 |
+
//default action is to return true
|
596 |
+
return true;
|
597 |
+
}
|
598 |
+
}
|
599 |
+
}
|
600 |
+
?>
|
addons/gateway/event-booking/mycred-eventsmanager.php
CHANGED
@@ -3,7 +3,7 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
3 |
/**
|
4 |
* Events Manager
|
5 |
* @since 1.2
|
6 |
-
* @version 1.0
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Events_Manager_Gateway' ) && defined( 'EM_VERSION' ) ) {
|
9 |
class myCRED_Events_Manager_Gateway {
|
@@ -21,6 +21,7 @@ if ( !class_exists( 'myCRED_Events_Manager_Gateway' ) && defined( 'EM_VERSION' )
|
|
21 |
$defaults = array(
|
22 |
'setup' => 'off',
|
23 |
'rate' => 100,
|
|
|
24 |
'log' => array(
|
25 |
'purchase' => __( 'Payment for tickets to %link_with_title%', 'mycred' ),
|
26 |
'refund' => __( 'Ticket refund for %link_with_title%', 'mycred' )
|
@@ -179,7 +180,7 @@ if ( !class_exists( 'myCRED_Events_Manager_Gateway' ) && defined( 'EM_VERSION' )
|
|
179 |
*/
|
180 |
public function process_payment() {
|
181 |
// Security
|
182 |
-
|
183 |
|
184 |
// Requirements
|
185 |
if ( !isset( $_POST['booking_id'] ) || !is_user_logged_in() ) die( 'ERROR_1' );
|
@@ -227,6 +228,22 @@ if ( !class_exists( 'myCRED_Events_Manager_Gateway' ) && defined( 'EM_VERSION' )
|
|
227 |
|
228 |
// Let others play
|
229 |
do_action( 'mycred_em_booking_paid', $booking, $this );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
230 |
}
|
231 |
else {
|
232 |
$message = '';
|
@@ -454,7 +471,7 @@ jQuery(function($) {
|
|
454 |
/**
|
455 |
* Gateway Settings
|
456 |
* @since 1.2
|
457 |
-
* @version 1.
|
458 |
*/
|
459 |
public function settings_page() {
|
460 |
if ( $this->prefs['setup'] == 'multi' )
|
@@ -490,6 +507,13 @@ jQuery(function($) {
|
|
490 |
<span class="description"><?php _e( 'The percentage of the paid amount to refund if a booking gets cancelled. Use zero for no refunds. No refunds are given to "Rejected" bookings.', 'mycred' ); ?></span>
|
491 |
</td>
|
492 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
493 |
</table>
|
494 |
<table class="form-table" id="mycred-exchange-rate" style="<?php echo $box; ?>">
|
495 |
<tr>
|
@@ -580,7 +604,7 @@ jQuery(function($){
|
|
580 |
/**
|
581 |
* Save Settings
|
582 |
* @since 1.2
|
583 |
-
* @version 1.
|
584 |
*/
|
585 |
public function save_settings() {
|
586 |
if ( !isset( $_POST['mycred_gateway'] ) || !is_array( $_POST['mycred_gateway'] ) ) return;
|
@@ -592,6 +616,7 @@ jQuery(function($){
|
|
592 |
// Setup
|
593 |
$new_settings['setup'] = $data['setup'];
|
594 |
$new_settings['refund'] = abs( $data['refund'] );
|
|
|
595 |
|
596 |
// Logs
|
597 |
$new_settings['log']['purchase'] = trim( stripslashes( $data['log']['purchase'] ) );
|
3 |
/**
|
4 |
* Events Manager
|
5 |
* @since 1.2
|
6 |
+
* @version 1.0.1
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Events_Manager_Gateway' ) && defined( 'EM_VERSION' ) ) {
|
9 |
class myCRED_Events_Manager_Gateway {
|
21 |
$defaults = array(
|
22 |
'setup' => 'off',
|
23 |
'rate' => 100,
|
24 |
+
'share' => 0,
|
25 |
'log' => array(
|
26 |
'purchase' => __( 'Payment for tickets to %link_with_title%', 'mycred' ),
|
27 |
'refund' => __( 'Ticket refund for %link_with_title%', 'mycred' )
|
180 |
*/
|
181 |
public function process_payment() {
|
182 |
// Security
|
183 |
+
check_ajax_referer( 'mycred-pay-em-booking', 'token' );
|
184 |
|
185 |
// Requirements
|
186 |
if ( !isset( $_POST['booking_id'] ) || !is_user_logged_in() ) die( 'ERROR_1' );
|
228 |
|
229 |
// Let others play
|
230 |
do_action( 'mycred_em_booking_paid', $booking, $this );
|
231 |
+
|
232 |
+
// Profit sharing
|
233 |
+
if ( $this->prefs['share'] != 0 ) {
|
234 |
+
$event_post = get_post( (int) $booking->event->post_id );
|
235 |
+
if ( $event_post !== NULL ) {
|
236 |
+
$share = ( $this->prefs['share']/100 ) * $price;
|
237 |
+
$this->core->add_creds(
|
238 |
+
'ticket_sale',
|
239 |
+
$event_post->post_author,
|
240 |
+
$share,
|
241 |
+
$this->prefs['log']['purchase'],
|
242 |
+
$event_post->ID,
|
243 |
+
array( 'ref_type' => 'post', 'bid' => $booking_id )
|
244 |
+
);
|
245 |
+
}
|
246 |
+
}
|
247 |
}
|
248 |
else {
|
249 |
$message = '';
|
471 |
/**
|
472 |
* Gateway Settings
|
473 |
* @since 1.2
|
474 |
+
* @version 1.1
|
475 |
*/
|
476 |
public function settings_page() {
|
477 |
if ( $this->prefs['setup'] == 'multi' )
|
507 |
<span class="description"><?php _e( 'The percentage of the paid amount to refund if a booking gets cancelled. Use zero for no refunds. No refunds are given to "Rejected" bookings.', 'mycred' ); ?></span>
|
508 |
</td>
|
509 |
</tr>
|
510 |
+
<tr>
|
511 |
+
<th scope="row"><?php _e( 'Profit Sharing', 'mycred' ); ?></th>
|
512 |
+
<td>
|
513 |
+
<input name="mycred_gateway[share]" type="text" id="mycred-gateway-profit-sharing" value="<?php echo $this->prefs['share']; ?>" size="5" /> %<br />
|
514 |
+
<span class="description"><?php _e( 'Option to share sales with the event owner (post author). Use zero to disable.', 'mycred' ); ?></span>
|
515 |
+
</td>
|
516 |
+
</tr>
|
517 |
</table>
|
518 |
<table class="form-table" id="mycred-exchange-rate" style="<?php echo $box; ?>">
|
519 |
<tr>
|
604 |
/**
|
605 |
* Save Settings
|
606 |
* @since 1.2
|
607 |
+
* @version 1.1
|
608 |
*/
|
609 |
public function save_settings() {
|
610 |
if ( !isset( $_POST['mycred_gateway'] ) || !is_array( $_POST['mycred_gateway'] ) ) return;
|
616 |
// Setup
|
617 |
$new_settings['setup'] = $data['setup'];
|
618 |
$new_settings['refund'] = abs( $data['refund'] );
|
619 |
+
$new_settings['share'] = abs( $data['share'] );
|
620 |
|
621 |
// Logs
|
622 |
$new_settings['log']['purchase'] = trim( stripslashes( $data['log']['purchase'] ) );
|
addons/gateway/membership/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
?>
|
addons/gateway/myCRED-addon-gateway.php
CHANGED
@@ -2,8 +2,8 @@
|
|
2 |
/**
|
3 |
* Addon: Gateway
|
4 |
* Addon URI: http://mycred.me/add-ons/gateway/
|
5 |
-
* Version: 1.
|
6 |
-
* Description: Let your users pay using their <strong>my</strong>CRED points balance. Supported Carts: WooCommerce, MarketPress. Supported Event Bookings: Event Espresso, Events Manager.
|
7 |
* Author: Gabriel S Merovingi
|
8 |
* Author URI: http://www.merovingi.com
|
9 |
*/
|
@@ -19,17 +19,50 @@ define( 'myCRED_GATE', __FILE__ );
|
|
19 |
define( 'myCRED_GATE_DIR', myCRED_ADDONS_DIR . 'gateway/' );
|
20 |
define( 'myCRED_GATE_ASSETS_DIR', myCRED_GATE_DIR . 'assets/' );
|
21 |
define( 'myCRED_GATE_CART_DIR', myCRED_GATE_DIR . 'carts/' );
|
22 |
-
define( 'myCRED_GATE_EVENT_DIR',
|
|
|
23 |
|
24 |
/**
|
25 |
* Supported Carts
|
26 |
*/
|
27 |
require_once( myCRED_GATE_CART_DIR . 'mycred-woocommerce.php' );
|
28 |
require_once( myCRED_GATE_CART_DIR . 'mycred-marketpress.php' );
|
|
|
29 |
|
30 |
/**
|
31 |
-
*
|
32 |
*/
|
33 |
-
|
34 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
?>
|
2 |
/**
|
3 |
* Addon: Gateway
|
4 |
* Addon URI: http://mycred.me/add-ons/gateway/
|
5 |
+
* Version: 1.3
|
6 |
+
* Description: Let your users pay using their <strong>my</strong>CRED points balance. Supported Carts: WooCommerce, MarketPress. Supported Event Bookings: Event Espresso, Events Manager. Supported Membership Plugins: WPMU DEV Membership
|
7 |
* Author: Gabriel S Merovingi
|
8 |
* Author URI: http://www.merovingi.com
|
9 |
*/
|
19 |
define( 'myCRED_GATE_DIR', myCRED_ADDONS_DIR . 'gateway/' );
|
20 |
define( 'myCRED_GATE_ASSETS_DIR', myCRED_GATE_DIR . 'assets/' );
|
21 |
define( 'myCRED_GATE_CART_DIR', myCRED_GATE_DIR . 'carts/' );
|
22 |
+
define( 'myCRED_GATE_EVENT_DIR', myCRED_GATE_DIR . 'event-booking/' );
|
23 |
+
define( 'myCRED_GATE_MEMBER_DIR', myCRED_GATE_DIR . 'membership/' );
|
24 |
|
25 |
/**
|
26 |
* Supported Carts
|
27 |
*/
|
28 |
require_once( myCRED_GATE_CART_DIR . 'mycred-woocommerce.php' );
|
29 |
require_once( myCRED_GATE_CART_DIR . 'mycred-marketpress.php' );
|
30 |
+
require_once( myCRED_GATE_CART_DIR . 'mycred-wpecommerce.php' );
|
31 |
|
32 |
/**
|
33 |
+
* Event Espresso
|
34 |
*/
|
35 |
+
add_action( 'init', 'mycred_load_event_espresso3' );
|
36 |
+
function mycred_load_event_espresso3() {
|
37 |
+
if ( !defined( 'EVENT_ESPRESSO_VERSION' ) ) return;
|
38 |
+
|
39 |
+
require_once( myCRED_GATE_EVENT_DIR . 'mycred-eventespresso3.php' );
|
40 |
+
$gateway = new myCRED_Espresso_Gateway();
|
41 |
+
$gateway->load();
|
42 |
+
}
|
43 |
+
|
44 |
+
/**
|
45 |
+
* Events Manager
|
46 |
+
*/
|
47 |
+
add_action( 'init', 'mycred_load_events_manager' );
|
48 |
+
function mycred_load_events_manager() {
|
49 |
+
if ( !defined( 'EM_VERSION' ) ) return;
|
50 |
+
|
51 |
+
// Pro
|
52 |
+
if ( defined( 'EMP_VERSION' ) ) {
|
53 |
+
require_once( myCRED_GATE_EVENT_DIR . 'mycred-eventsmanager-pro.php' );
|
54 |
+
EM_Gateways::register_gateway( 'mycred', 'EM_Gateway_myCRED' );
|
55 |
+
}
|
56 |
+
// Free
|
57 |
+
else {
|
58 |
+
require_once( myCRED_GATE_EVENT_DIR . 'mycred-eventsmanager.php' );
|
59 |
+
$events = new myCRED_Events_Manager_Gateway();
|
60 |
+
$events->load();
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
+
/**
|
65 |
+
* Supported Membership Plugins
|
66 |
+
*/
|
67 |
+
|
68 |
?>
|
addons/import/myCRED-addon-import.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Addon: Import
|
4 |
* Addon URI: http://mycred.me/add-ons/import/
|
5 |
-
* Version: 1.0.
|
6 |
* Description: With the Import add-on you can import CSV files, CubePoints or existing points under any custom user meta values.
|
7 |
* Author: Gabriel S Merovingi
|
8 |
* Author URI: http://www.merovingi.com
|
@@ -282,7 +282,7 @@ if ( !class_exists( 'myCRED_Import' ) ) {
|
|
282 |
/**
|
283 |
* Import CubePoints
|
284 |
* @since 0.1
|
285 |
-
* @version 1.
|
286 |
*/
|
287 |
public function import_cubepoints() {
|
288 |
$delete = false;
|
@@ -294,7 +294,7 @@ if ( !class_exists( 'myCRED_Import' ) ) {
|
|
294 |
global $wpdb;
|
295 |
|
296 |
// DB Query
|
297 |
-
$SQL = "SELECT * FROM
|
298 |
$search = $wpdb->get_results( $wpdb->prepare( $SQL, $meta_key ) );
|
299 |
|
300 |
// No results
|
@@ -364,7 +364,7 @@ if ( !class_exists( 'myCRED_Import' ) ) {
|
|
364 |
/**
|
365 |
* Import Custom User Meta
|
366 |
* @since 0.1
|
367 |
-
* @version 1.0
|
368 |
*/
|
369 |
public function import_custom() {
|
370 |
if ( !isset( $_POST['meta_key'] ) || empty( $_POST['meta_key'] ) ) {
|
@@ -382,7 +382,7 @@ if ( !class_exists( 'myCRED_Import' ) ) {
|
|
382 |
global $wpdb;
|
383 |
|
384 |
// DB Query
|
385 |
-
$SQL = "SELECT * FROM
|
386 |
$search = $wpdb->get_results( $wpdb->prepare( $SQL, $meta_key ) );
|
387 |
|
388 |
// No results
|
@@ -502,7 +502,7 @@ if ( !class_exists( 'myCRED_Import' ) ) {
|
|
502 |
$memory_limit = (int) ( ini_get( 'memory_limit' ) );
|
503 |
$upload_mb = min( $max_upload, $max_post, $memory_limit ); ?>
|
504 |
|
505 |
-
<h4 class="active"><label><?php echo $data['title']; ?></label></h4>
|
506 |
<div class="body" style="display:none;">
|
507 |
<form class="add:the-list: validate" method="post" enctype="multipart/form-data">
|
508 |
<input type="hidden" name="selected-import" value="csv" />
|
@@ -575,7 +575,7 @@ if ( !class_exists( 'myCRED_Import' ) ) {
|
|
575 |
) );
|
576 |
$cp_users = count( $quick_check ); ?>
|
577 |
|
578 |
-
<h4 class="
|
579 |
<div class="body" style="display:none;">
|
580 |
<form class="add:the-list: validate" method="post" enctype="multipart/form-data">
|
581 |
<input type="hidden" name="selected-import" value="cubepoints" />
|
@@ -644,7 +644,7 @@ if ( !class_exists( 'myCRED_Import' ) ) {
|
|
644 |
*/
|
645 |
public function custom_form( $data ) { ?>
|
646 |
|
647 |
-
<h4 class="active"><label><?php echo $data['title']; ?></label></h4>
|
648 |
<div class="body" style="display:none;">
|
649 |
<form class="add:the-list: validate" method="post" enctype="multipart/form-data">
|
650 |
<input type="hidden" name="selected-import" value="custom" />
|
@@ -699,6 +699,7 @@ if ( !class_exists( 'myCRED_Import' ) ) {
|
|
699 |
</form>
|
700 |
</div>
|
701 |
<?php
|
|
|
702 |
}
|
703 |
|
704 |
/**
|
2 |
/**
|
3 |
* Addon: Import
|
4 |
* Addon URI: http://mycred.me/add-ons/import/
|
5 |
+
* Version: 1.0.2
|
6 |
* Description: With the Import add-on you can import CSV files, CubePoints or existing points under any custom user meta values.
|
7 |
* Author: Gabriel S Merovingi
|
8 |
* Author URI: http://www.merovingi.com
|
282 |
/**
|
283 |
* Import CubePoints
|
284 |
* @since 0.1
|
285 |
+
* @version 1.2
|
286 |
*/
|
287 |
public function import_cubepoints() {
|
288 |
$delete = false;
|
294 |
global $wpdb;
|
295 |
|
296 |
// DB Query
|
297 |
+
$SQL = "SELECT * FROM {$wpdb->usermeta} WHERE meta_key = %s;";
|
298 |
$search = $wpdb->get_results( $wpdb->prepare( $SQL, $meta_key ) );
|
299 |
|
300 |
// No results
|
364 |
/**
|
365 |
* Import Custom User Meta
|
366 |
* @since 0.1
|
367 |
+
* @version 1.0.1
|
368 |
*/
|
369 |
public function import_custom() {
|
370 |
if ( !isset( $_POST['meta_key'] ) || empty( $_POST['meta_key'] ) ) {
|
382 |
global $wpdb;
|
383 |
|
384 |
// DB Query
|
385 |
+
$SQL = "SELECT * FROM {$pwbd->usermeta} WHERE meta_key = %s;";
|
386 |
$search = $wpdb->get_results( $wpdb->prepare( $SQL, $meta_key ) );
|
387 |
|
388 |
// No results
|
502 |
$memory_limit = (int) ( ini_get( 'memory_limit' ) );
|
503 |
$upload_mb = min( $max_upload, $max_post, $memory_limit ); ?>
|
504 |
|
505 |
+
<h4><div class="icon icon-active"></div><label><?php echo $data['title']; ?></label></h4>
|
506 |
<div class="body" style="display:none;">
|
507 |
<form class="add:the-list: validate" method="post" enctype="multipart/form-data">
|
508 |
<input type="hidden" name="selected-import" value="csv" />
|
575 |
) );
|
576 |
$cp_users = count( $quick_check ); ?>
|
577 |
|
578 |
+
<h4><div class="icon icon-<?php if ( $cp_users > 0 ) echo 'active'; else echo 'inactive'; ?>"></div><label><?php echo $data['title']; ?></label></h4>
|
579 |
<div class="body" style="display:none;">
|
580 |
<form class="add:the-list: validate" method="post" enctype="multipart/form-data">
|
581 |
<input type="hidden" name="selected-import" value="cubepoints" />
|
644 |
*/
|
645 |
public function custom_form( $data ) { ?>
|
646 |
|
647 |
+
<h4><div class="icon icon-active"></div><label><?php echo $data['title']; ?></label></h4>
|
648 |
<div class="body" style="display:none;">
|
649 |
<form class="add:the-list: validate" method="post" enctype="multipart/form-data">
|
650 |
<input type="hidden" name="selected-import" value="custom" />
|
699 |
</form>
|
700 |
</div>
|
701 |
<?php
|
702 |
+
unset( $this );
|
703 |
}
|
704 |
|
705 |
/**
|
addons/notifications/myCRED-addon-notifications.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Addon: Notifications
|
4 |
* Addon URI: http://mycred.me/add-ons/notifications/
|
5 |
-
* Version: 1.0.
|
6 |
* Description: Notify your users when their balances changes.
|
7 |
* Author: Gabriel S Merovingi
|
8 |
* Author URI: http://www.merovingi.com
|
@@ -41,7 +41,7 @@ if ( !class_exists( 'myCRED_Notifications' ) ) {
|
|
41 |
'register' => false,
|
42 |
'add_to_core' => true
|
43 |
) );
|
44 |
-
add_filter( 'mycred_add', array( $this, 'mycred_add' ),
|
45 |
}
|
46 |
|
47 |
/**
|
@@ -60,7 +60,7 @@ if ( !class_exists( 'myCRED_Notifications' ) ) {
|
|
60 |
/**
|
61 |
* Load Notice in Footer
|
62 |
* @since 1.2.3
|
63 |
-
* @version 1.
|
64 |
*/
|
65 |
public function wp_footer() {
|
66 |
$notices = apply_filters( 'mycred_notifications', array() );
|
@@ -70,12 +70,13 @@ if ( !class_exists( 'myCRED_Notifications' ) ) {
|
|
70 |
$stay = 'false';
|
71 |
}
|
72 |
|
73 |
-
|
74 |
-
foreach ( $notices as $notice ) {
|
75 |
$notice = $this->core->template_tags_general( $notice );
|
|
|
76 |
echo '<script type="text/javascript">(function(jQuery){jQuery.noticeAdd({ text: "' . $notice . '",stay: ' . $stay . '});})(jQuery);</script>';
|
77 |
}
|
78 |
-
|
79 |
}
|
80 |
|
81 |
/**
|
@@ -106,9 +107,11 @@ if ( !class_exists( 'myCRED_Notifications' ) ) {
|
|
106 |
/**
|
107 |
* myCRED Add
|
108 |
* @since 1.2.3
|
109 |
-
* @version 1.
|
110 |
*/
|
111 |
public function mycred_add( $reply, $request, $mycred ) {
|
|
|
|
|
112 |
$template = $this->notifications['template'];
|
113 |
$template = str_replace( '%entry%', $request['entry'], $template );
|
114 |
$template = str_replace( '%amount%', $request['amount'], $template );
|
@@ -116,35 +119,16 @@ if ( !class_exists( 'myCRED_Notifications' ) ) {
|
|
116 |
$template = $this->core->parse_template_tags( $template, (object) $request );
|
117 |
$template = apply_filters( 'mycred_notifications_note', $template, $request, $mycred );
|
118 |
|
119 |
-
|
120 |
-
|
121 |
-
}
|
122 |
-
|
123 |
-
/**
|
124 |
-
* Add Notice
|
125 |
-
* @since 1.2.3
|
126 |
-
* @version 1.0
|
127 |
-
*/
|
128 |
-
public function add_notice( $notice ) {
|
129 |
-
// Get transient
|
130 |
-
$data = get_transient( 'mycred_notice_' . $notice['user_id'] );
|
131 |
|
132 |
-
|
133 |
-
if ( $data === false || !is_array( $data ) )
|
134 |
-
$notices = array();
|
135 |
-
else
|
136 |
-
$notices = $data;
|
137 |
-
|
138 |
-
// Add new notice
|
139 |
-
$notices[] = $notice['message'];
|
140 |
-
// Save as a transient
|
141 |
-
set_transient( 'mycred_notice_' . $notice['user_id'], $notices, DAY_IN_SECONDS*$this->notifications['life'] );
|
142 |
}
|
143 |
|
144 |
/**
|
145 |
* Get Notices
|
146 |
* @since 1.2.3
|
147 |
-
* @version 1.0
|
148 |
*/
|
149 |
public function get_notices() {
|
150 |
$user_id = get_current_user_id();
|
@@ -166,7 +150,7 @@ if ( !class_exists( 'myCRED_Notifications' ) ) {
|
|
166 |
);
|
167 |
|
168 |
foreach ( $data as $notice ) {
|
169 |
-
add_filter( 'mycred_notifications', create_function( '$query', '$query[]
|
170 |
}
|
171 |
|
172 |
delete_transient( 'mycred_notice_' . $user_id );
|
@@ -180,7 +164,7 @@ if ( !class_exists( 'myCRED_Notifications' ) ) {
|
|
180 |
public function after_general_settings() {
|
181 |
$settings = $this->notifications; ?>
|
182 |
|
183 |
-
<h4
|
184 |
<div class="body" style="display:none;">
|
185 |
<label class="subheader"><?php _e( 'Styling', 'mycred' ); ?></label>
|
186 |
<ol>
|
@@ -230,4 +214,29 @@ if ( !class_exists( 'myCRED_Notifications' ) ) {
|
|
230 |
$notice = new myCRED_Notifications();
|
231 |
$notice->load();
|
232 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
233 |
?>
|
2 |
/**
|
3 |
* Addon: Notifications
|
4 |
* Addon URI: http://mycred.me/add-ons/notifications/
|
5 |
+
* Version: 1.0.2
|
6 |
* Description: Notify your users when their balances changes.
|
7 |
* Author: Gabriel S Merovingi
|
8 |
* Author URI: http://www.merovingi.com
|
41 |
'register' => false,
|
42 |
'add_to_core' => true
|
43 |
) );
|
44 |
+
add_filter( 'mycred_add', array( $this, 'mycred_add' ), 99, 3 );
|
45 |
}
|
46 |
|
47 |
/**
|
60 |
/**
|
61 |
* Load Notice in Footer
|
62 |
* @since 1.2.3
|
63 |
+
* @version 1.1
|
64 |
*/
|
65 |
public function wp_footer() {
|
66 |
$notices = apply_filters( 'mycred_notifications', array() );
|
70 |
$stay = 'false';
|
71 |
}
|
72 |
|
73 |
+
do_action_ref_array( 'mycred_before_notifications', array( &$notices ) );
|
74 |
+
foreach ( (array) $notices as $notice ) {
|
75 |
$notice = $this->core->template_tags_general( $notice );
|
76 |
+
$notice = str_replace( array( "\r", "\n", "\t" ), '', $notice );
|
77 |
echo '<script type="text/javascript">(function(jQuery){jQuery.noticeAdd({ text: "' . $notice . '",stay: ' . $stay . '});})(jQuery);</script>';
|
78 |
}
|
79 |
+
do_action_ref_array( 'mycred_after_notifications', array( &$notices ) );
|
80 |
}
|
81 |
|
82 |
/**
|
107 |
/**
|
108 |
* myCRED Add
|
109 |
* @since 1.2.3
|
110 |
+
* @version 1.1
|
111 |
*/
|
112 |
public function mycred_add( $reply, $request, $mycred ) {
|
113 |
+
if ( $reply !== true ) return $reply;
|
114 |
+
|
115 |
$template = $this->notifications['template'];
|
116 |
$template = str_replace( '%entry%', $request['entry'], $template );
|
117 |
$template = str_replace( '%amount%', $request['amount'], $template );
|
119 |
$template = $this->core->parse_template_tags( $template, (object) $request );
|
120 |
$template = apply_filters( 'mycred_notifications_note', $template, $request, $mycred );
|
121 |
|
122 |
+
if ( ! empty( $template ) )
|
123 |
+
mycred_add_new_notice( array( 'user_id' => $request['user_id'], 'message' => $template ), $this->notifications['life'] );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
124 |
|
125 |
+
return $reply;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
126 |
}
|
127 |
|
128 |
/**
|
129 |
* Get Notices
|
130 |
* @since 1.2.3
|
131 |
+
* @version 1.0.1
|
132 |
*/
|
133 |
public function get_notices() {
|
134 |
$user_id = get_current_user_id();
|
150 |
);
|
151 |
|
152 |
foreach ( $data as $notice ) {
|
153 |
+
add_filter( 'mycred_notifications', create_function( '$query', '$query[]=\'' . $notice . '\'; return $query;' ) );
|
154 |
}
|
155 |
|
156 |
delete_transient( 'mycred_notice_' . $user_id );
|
164 |
public function after_general_settings() {
|
165 |
$settings = $this->notifications; ?>
|
166 |
|
167 |
+
<h4><div class="icon icon-active"></div><?php _e( 'Notifications', 'mycred' ); ?></h4>
|
168 |
<div class="body" style="display:none;">
|
169 |
<label class="subheader"><?php _e( 'Styling', 'mycred' ); ?></label>
|
170 |
<ol>
|
214 |
$notice = new myCRED_Notifications();
|
215 |
$notice->load();
|
216 |
}
|
217 |
+
|
218 |
+
/**
|
219 |
+
* Add Notice
|
220 |
+
* @since 1.2.3
|
221 |
+
* @version 1.0
|
222 |
+
*/
|
223 |
+
if ( !function_exists( 'mycred_add_new_notice' ) ) {
|
224 |
+
function mycred_add_new_notice( $notice = array(), $life = 1 ) {
|
225 |
+
if ( !isset( $notice['user_id'] ) || !isset( $notice['message'] ) ) return false;
|
226 |
+
|
227 |
+
// Get transient
|
228 |
+
$data = get_transient( 'mycred_notice_' . $notice['user_id'] );
|
229 |
+
|
230 |
+
// If none exists create a new array
|
231 |
+
if ( $data === false || !is_array( $data ) )
|
232 |
+
$notices = array();
|
233 |
+
else
|
234 |
+
$notices = $data;
|
235 |
+
|
236 |
+
// Add new notice
|
237 |
+
$notices[] = addslashes( $notice['message'] );
|
238 |
+
// Save as a transient
|
239 |
+
set_transient( 'mycred_notice_' . $notice['user_id'], $notices, 86400*$life );
|
240 |
+
}
|
241 |
+
}
|
242 |
?>
|
addons/ranks/myCRED-addon-ranks.php
CHANGED
@@ -129,6 +129,16 @@ if ( !class_exists( 'myCRED_Ranks' ) ) {
|
|
129 |
add_action( 'save_post', array( $this, 'save_rank_settings' ) );
|
130 |
}
|
131 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
132 |
/**
|
133 |
* Enqueue Scripts & Styles
|
134 |
* @since 1.1
|
@@ -199,20 +209,10 @@ if ( !class_exists( 'myCRED_Ranks' ) ) {
|
|
199 |
register_post_type( 'mycred_rank', apply_filters( 'mycred_register_ranks', $args ) );
|
200 |
}
|
201 |
|
202 |
-
/**
|
203 |
-
* Exclude Ranks from Publish Content Hook
|
204 |
-
* @since 1.3
|
205 |
-
* @version 1.0
|
206 |
-
*/
|
207 |
-
public function exclude_ranks( $excludes ) {
|
208 |
-
$excludes[] = 'mycred_rank';
|
209 |
-
return $excludes;
|
210 |
-
}
|
211 |
-
|
212 |
/**
|
213 |
* AJAX: Calculate Totals
|
214 |
* @since 1.2
|
215 |
-
* @version 1.0
|
216 |
*/
|
217 |
public function calculate_totals() {
|
218 |
// Security
|
@@ -220,14 +220,13 @@ if ( !class_exists( 'myCRED_Ranks' ) ) {
|
|
220 |
|
221 |
global $wpdb;
|
222 |
|
223 |
-
$db = $wpdb->prefix . 'myCRED_Log';
|
224 |
$sql = "
|
225 |
SELECT
|
226 |
user_id AS ID,
|
227 |
SUM(CASE WHEN creds > 0 THEN creds ELSE 0 END) as positives_sum,
|
228 |
SUM(CASE WHEN creds < 0 THEN creds ELSE 0 END) as negatives_sum
|
229 |
FROM
|
230 |
-
$
|
231 |
GROUP BY
|
232 |
user_id;";
|
233 |
$users = $wpdb->get_results( $sql );
|
@@ -699,7 +698,7 @@ GROUP BY
|
|
699 |
else
|
700 |
$box = 'display: block;'; ?>
|
701 |
|
702 |
-
<h4
|
703 |
<div class="body" style="display:none;">
|
704 |
<label class="subheader" for="<?php echo $this->field_id( 'public' ); ?>"><?php _e( 'Rank Features', 'mycred' ); ?></label>
|
705 |
<ol id="myCRED-rank-supports">
|
129 |
add_action( 'save_post', array( $this, 'save_rank_settings' ) );
|
130 |
}
|
131 |
|
132 |
+
/**
|
133 |
+
* Exclude Ranks from Publish Content Hook
|
134 |
+
* @since 1.3
|
135 |
+
* @version 1.0
|
136 |
+
*/
|
137 |
+
public function exclude_ranks( $excludes ) {
|
138 |
+
$excludes[] = 'mycred_rank';
|
139 |
+
return $excludes;
|
140 |
+
}
|
141 |
+
|
142 |
/**
|
143 |
* Enqueue Scripts & Styles
|
144 |
* @since 1.1
|
209 |
register_post_type( 'mycred_rank', apply_filters( 'mycred_register_ranks', $args ) );
|
210 |
}
|
211 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
212 |
/**
|
213 |
* AJAX: Calculate Totals
|
214 |
* @since 1.2
|
215 |
+
* @version 1.0.1
|
216 |
*/
|
217 |
public function calculate_totals() {
|
218 |
// Security
|
220 |
|
221 |
global $wpdb;
|
222 |
|
|
|
223 |
$sql = "
|
224 |
SELECT
|
225 |
user_id AS ID,
|
226 |
SUM(CASE WHEN creds > 0 THEN creds ELSE 0 END) as positives_sum,
|
227 |
SUM(CASE WHEN creds < 0 THEN creds ELSE 0 END) as negatives_sum
|
228 |
FROM
|
229 |
+
{$this->core->log_table}
|
230 |
GROUP BY
|
231 |
user_id;";
|
232 |
$users = $wpdb->get_results( $sql );
|
698 |
else
|
699 |
$box = 'display: block;'; ?>
|
700 |
|
701 |
+
<h4><div class="icon icon-active"></div><?php _e( 'Ranks', 'mycred' ); ?></h4>
|
702 |
<div class="body" style="display:none;">
|
703 |
<label class="subheader" for="<?php echo $this->field_id( 'public' ); ?>"><?php _e( 'Rank Features', 'mycred' ); ?></label>
|
704 |
<ol id="myCRED-rank-supports">
|
addons/sell-content/myCRED-addon-sell-content.php
CHANGED
@@ -301,7 +301,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
301 |
);
|
302 |
$available_payees = apply_filters( 'mycred_sell_content_payees', $payees, $sell_content ); ?>
|
303 |
|
304 |
-
<h4
|
305 |
<div class="body" style="display:none;">
|
306 |
<label class="subheader" for="<?php echo $this->field_id( 'post_types' ); ?>"><?php _e( 'Post Types', 'mycred' ); ?></label>
|
307 |
<ol id="myCRED-buy-postypes">
|
@@ -623,7 +623,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
623 |
* @param $post_id (int) required post id
|
624 |
* @returns (bool) true or false
|
625 |
* @since 0.1
|
626 |
-
* @version 1.2
|
627 |
*/
|
628 |
public function user_paid( $user_id, $post_id ) {
|
629 |
// Admins can view
|
@@ -636,7 +636,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
636 |
$sell_content = $this->sell_content;
|
637 |
|
638 |
// Search for the latest purchase of this item.
|
639 |
-
$sql = "SELECT * FROM
|
640 |
$purchases = $wpdb->get_results( $wpdb->prepare( $sql, $user_id, 'buy_content', $post_id ) );
|
641 |
update_option( 'mycred_purchase_check', $purchases );
|
642 |
// We have found purchase records
|
@@ -736,7 +736,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
736 |
*
|
737 |
* @returns (string) content
|
738 |
* @since 0.1
|
739 |
-
* @version 1.0.
|
740 |
*/
|
741 |
public function the_content( $content ) {
|
742 |
global $mycred_content_purchase;
|
@@ -754,6 +754,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
754 |
$template = $sell_content['templates']['visitors'];
|
755 |
|
756 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
757 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
758 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
759 |
}
|
@@ -763,6 +764,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
763 |
$template = $sell_content['templates']['members'];
|
764 |
|
765 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
766 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
767 |
$template = $this->get_button( $template, $GLOBALS['post'] );
|
768 |
return '
|
@@ -781,6 +783,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
781 |
$template = $sell_content['templates']['cantafford'];
|
782 |
|
783 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
784 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
785 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
786 |
}
|
@@ -803,7 +806,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
803 |
*
|
804 |
* @returns (string) content
|
805 |
* @since 0.1
|
806 |
-
* @version 1.2
|
807 |
*/
|
808 |
public function render_shortcode( $atts, $content ) {
|
809 |
$post_id = $GLOBALS['post']->ID;
|
@@ -832,6 +835,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
832 |
$template = $sell_content['templates']['visitors'];
|
833 |
|
834 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
835 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
836 |
unset( $content );
|
837 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
@@ -842,6 +846,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
842 |
$template = $sell_content['templates']['members'];
|
843 |
|
844 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
845 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
846 |
$template = $this->get_button( $template, $GLOBALS['post'] );
|
847 |
unset( $content );
|
@@ -862,6 +867,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
862 |
$template = $sell_content['templates']['cantafford'];
|
863 |
|
864 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
865 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
866 |
unset( $content );
|
867 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
@@ -912,6 +918,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
912 |
$template = $sell_content['templates']['visitors'];
|
913 |
|
914 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
915 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
916 |
unset( $content );
|
917 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
@@ -922,6 +929,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
922 |
$template = $sell_content['templates']['members'];
|
923 |
|
924 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
925 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
926 |
|
927 |
if ( isset( $prefs['button_label'] ) )
|
@@ -942,6 +950,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
942 |
$template = $sell_content['templates']['cantafford'];
|
943 |
|
944 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
|
|
945 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
946 |
unset( $content );
|
947 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
@@ -958,7 +967,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
958 |
* Render Sales History Shortcode
|
959 |
* @see http://mycred.me/shortcodes/mycred_sales_history/
|
960 |
* @since 1.0.9
|
961 |
-
* @version 1.0
|
962 |
*/
|
963 |
public function render_sales_history( $atts ) {
|
964 |
extract( shortcode_atts( array(
|
@@ -992,7 +1001,7 @@ if ( !class_exists( 'myCRED_Sell_Content' ) ) {
|
|
992 |
}
|
993 |
|
994 |
// Query
|
995 |
-
$sql = "SELECT * FROM
|
996 |
$results = $wpdb->get_results( $wpdb->prepare( $sql, $user_id, 'buy_content' ) );
|
997 |
$rows = array();
|
998 |
|
301 |
);
|
302 |
$available_payees = apply_filters( 'mycred_sell_content_payees', $payees, $sell_content ); ?>
|
303 |
|
304 |
+
<h4><div class="icon icon-active"></div><?php _e( 'Sell Content', 'mycred' ); ?></h4>
|
305 |
<div class="body" style="display:none;">
|
306 |
<label class="subheader" for="<?php echo $this->field_id( 'post_types' ); ?>"><?php _e( 'Post Types', 'mycred' ); ?></label>
|
307 |
<ol id="myCRED-buy-postypes">
|
623 |
* @param $post_id (int) required post id
|
624 |
* @returns (bool) true or false
|
625 |
* @since 0.1
|
626 |
+
* @version 1.2.1
|
627 |
*/
|
628 |
public function user_paid( $user_id, $post_id ) {
|
629 |
// Admins can view
|
636 |
$sell_content = $this->sell_content;
|
637 |
|
638 |
// Search for the latest purchase of this item.
|
639 |
+
$sql = "SELECT * FROM {$this->core->log_table} WHERE user_id = %d AND ref = %s AND ref_id = %d ORDER BY time DESC LIMIT 0,1;";
|
640 |
$purchases = $wpdb->get_results( $wpdb->prepare( $sql, $user_id, 'buy_content', $post_id ) );
|
641 |
update_option( 'mycred_purchase_check', $purchases );
|
642 |
// We have found purchase records
|
736 |
*
|
737 |
* @returns (string) content
|
738 |
* @since 0.1
|
739 |
+
* @version 1.0.2
|
740 |
*/
|
741 |
public function the_content( $content ) {
|
742 |
global $mycred_content_purchase;
|
754 |
$template = $sell_content['templates']['visitors'];
|
755 |
|
756 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
757 |
+
$template = $this->core->template_tags_general( $template );
|
758 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
759 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
760 |
}
|
764 |
$template = $sell_content['templates']['members'];
|
765 |
|
766 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
767 |
+
$template = $this->core->template_tags_general( $template );
|
768 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
769 |
$template = $this->get_button( $template, $GLOBALS['post'] );
|
770 |
return '
|
783 |
$template = $sell_content['templates']['cantafford'];
|
784 |
|
785 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
786 |
+
$template = $this->core->template_tags_general( $template );
|
787 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
788 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
789 |
}
|
806 |
*
|
807 |
* @returns (string) content
|
808 |
* @since 0.1
|
809 |
+
* @version 1.2.1
|
810 |
*/
|
811 |
public function render_shortcode( $atts, $content ) {
|
812 |
$post_id = $GLOBALS['post']->ID;
|
835 |
$template = $sell_content['templates']['visitors'];
|
836 |
|
837 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
838 |
+
$template = $this->core->template_tags_general( $template );
|
839 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
840 |
unset( $content );
|
841 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
846 |
$template = $sell_content['templates']['members'];
|
847 |
|
848 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
849 |
+
$template = $this->core->template_tags_general( $template );
|
850 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
851 |
$template = $this->get_button( $template, $GLOBALS['post'] );
|
852 |
unset( $content );
|
867 |
$template = $sell_content['templates']['cantafford'];
|
868 |
|
869 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
870 |
+
$template = $this->core->template_tags_general( $template );
|
871 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
872 |
unset( $content );
|
873 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
918 |
$template = $sell_content['templates']['visitors'];
|
919 |
|
920 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
921 |
+
$template = $this->core->template_tags_general( $template );
|
922 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
923 |
unset( $content );
|
924 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
929 |
$template = $sell_content['templates']['members'];
|
930 |
|
931 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
932 |
+
$template = $this->core->template_tags_general( $template );
|
933 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
934 |
|
935 |
if ( isset( $prefs['button_label'] ) )
|
950 |
$template = $sell_content['templates']['cantafford'];
|
951 |
|
952 |
$template = str_replace( '%price%', $this->core->format_creds( $prefs['price'] ), $template );
|
953 |
+
$template = $this->core->template_tags_general( $template );
|
954 |
$template = $this->core->template_tags_post( $template, $GLOBALS['post'] );
|
955 |
unset( $content );
|
956 |
return '<div class="mycred-content-forsale">' . $template . '</div>';
|
967 |
* Render Sales History Shortcode
|
968 |
* @see http://mycred.me/shortcodes/mycred_sales_history/
|
969 |
* @since 1.0.9
|
970 |
+
* @version 1.0.1
|
971 |
*/
|
972 |
public function render_sales_history( $atts ) {
|
973 |
extract( shortcode_atts( array(
|
1001 |
}
|
1002 |
|
1003 |
// Query
|
1004 |
+
$sql = "SELECT * FROM {$this->core->log_table} WHERE user_id = %d AND ref = %s ORDER BY time;";
|
1005 |
$results = $wpdb->get_results( $wpdb->prepare( $sql, $user_id, 'buy_content' ) );
|
1006 |
$rows = array();
|
1007 |
|
addons/transfer/myCRED-addon-transfer.php
CHANGED
@@ -180,7 +180,7 @@ if ( !class_exists( 'myCRED_Transfer_Creds' ) ) {
|
|
180 |
);
|
181 |
$available_limits = apply_filters( 'mycred_transfer_limits', $limits, $settings ); ?>
|
182 |
|
183 |
-
<h4
|
184 |
<div class="body" style="display:none;">
|
185 |
<label class="subheader"><?php _e( 'Log template for sending', 'mycred' ); ?></label>
|
186 |
<ol id="myCRED-transfer-logging-send">
|
@@ -329,7 +329,7 @@ if ( !class_exists( 'myCRED_Transfer_Creds' ) ) {
|
|
329 |
|
330 |
// Check amount
|
331 |
$amount = $this->core->number( $amount );
|
332 |
-
if ( $amount == $this->core->
|
333 |
|
334 |
// Check funds
|
335 |
if ( mycred_user_can_transfer( $from, $amount ) === 'low' ) die( json_encode( 'error_7' ) );
|
@@ -349,7 +349,7 @@ if ( !class_exists( 'myCRED_Transfer_Creds' ) ) {
|
|
349 |
// Add new defaults
|
350 |
$history = array(
|
351 |
'frame' => ( $prefs['limit']['limit'] == 'daily' ) ? $today : $this_week,
|
352 |
-
'amount' => $this->core->
|
353 |
);
|
354 |
update_user_meta( $from, 'mycred_transactions', $history );
|
355 |
}
|
@@ -363,7 +363,7 @@ if ( !class_exists( 'myCRED_Transfer_Creds' ) ) {
|
|
363 |
if ( $today != $history['frame'] ) {
|
364 |
$history = array(
|
365 |
'frame' => $today,
|
366 |
-
'amount' => $this->core->
|
367 |
);
|
368 |
update_user_meta( $from, 'mycred_transactions', $history );
|
369 |
}
|
@@ -378,7 +378,7 @@ if ( !class_exists( 'myCRED_Transfer_Creds' ) ) {
|
|
378 |
if ( $this_week != $history['frame'] ) {
|
379 |
$history = array(
|
380 |
'frame' => $this_week,
|
381 |
-
'amount' => $this->core->
|
382 |
);
|
383 |
update_user_meta( $from, 'mycred_transactions', $history );
|
384 |
}
|
@@ -436,7 +436,7 @@ if ( !class_exists( 'myCRED_Transfer_Creds' ) ) {
|
|
436 |
/**
|
437 |
* AJAX Autocomplete
|
438 |
* @since 0.1
|
439 |
-
* @version 1.0
|
440 |
*/
|
441 |
public function ajax_call_autocomplete() {
|
442 |
$results = array();
|
@@ -446,7 +446,7 @@ if ( !class_exists( 'myCRED_Transfer_Creds' ) ) {
|
|
446 |
global $wpdb;
|
447 |
|
448 |
// prep query
|
449 |
-
$sql = "SELECT user_login, ID FROM
|
450 |
$search = $_REQUEST['string']['term'];
|
451 |
$me = $_REQUEST['me'];
|
452 |
|
@@ -731,7 +731,7 @@ if ( !function_exists( 'mycred_transfer_render' ) ) {
|
|
731 |
</li>
|
732 |
<li class="mycred-send-amount">
|
733 |
<label>' . __( 'Amount:', 'mycred' ) . '</label>
|
734 |
-
<div>' . $before . '<input type="text" class="short" name="mycred-transfer-amount" value="' . $mycred->
|
735 |
<input type="button" class="button large button-large mycred-click" value="' . $pref['templates']['button'] . '" />
|
736 |
</li>
|
737 |
';
|
@@ -817,7 +817,7 @@ if ( !function_exists( 'mycred_user_can_transfer' ) ) {
|
|
817 |
// Apply defaults if not set
|
818 |
$history = array(
|
819 |
'frame' => '',
|
820 |
-
'amount' => $mycred->
|
821 |
);
|
822 |
}
|
823 |
|
@@ -827,7 +827,7 @@ if ( !function_exists( 'mycred_user_can_transfer' ) ) {
|
|
827 |
if ( $today != $history['frame'] ) {
|
828 |
$new_data = array(
|
829 |
'frame' => $today,
|
830 |
-
'amount' => $mycred->
|
831 |
);
|
832 |
update_user_meta( $user_id, 'mycred_transactions', $new_data );
|
833 |
$current = $new_data['amount'];
|
@@ -850,7 +850,7 @@ if ( !function_exists( 'mycred_user_can_transfer' ) ) {
|
|
850 |
if ( $this_week != $history['frame'] ) {
|
851 |
$new_data = array(
|
852 |
'frame' => $this_week,
|
853 |
-
'amount' => $mycred->
|
854 |
);
|
855 |
update_user_meta( $user_id, 'mycred_transactions', $new_data );
|
856 |
$current = $new_data['amount'];
|
180 |
);
|
181 |
$available_limits = apply_filters( 'mycred_transfer_limits', $limits, $settings ); ?>
|
182 |
|
183 |
+
<h4><div class="icon icon-active"></div><?php echo $this->core->template_tags_general( __( 'Transfer %plural%', 'mycred' ) ); ?></h4>
|
184 |
<div class="body" style="display:none;">
|
185 |
<label class="subheader"><?php _e( 'Log template for sending', 'mycred' ); ?></label>
|
186 |
<ol id="myCRED-transfer-logging-send">
|
329 |
|
330 |
// Check amount
|
331 |
$amount = $this->core->number( $amount );
|
332 |
+
if ( $amount == $this->core->zero() ) die( json_encode( 'error_5' ) );
|
333 |
|
334 |
// Check funds
|
335 |
if ( mycred_user_can_transfer( $from, $amount ) === 'low' ) die( json_encode( 'error_7' ) );
|
349 |
// Add new defaults
|
350 |
$history = array(
|
351 |
'frame' => ( $prefs['limit']['limit'] == 'daily' ) ? $today : $this_week,
|
352 |
+
'amount' => $this->core->zero()
|
353 |
);
|
354 |
update_user_meta( $from, 'mycred_transactions', $history );
|
355 |
}
|
363 |
if ( $today != $history['frame'] ) {
|
364 |
$history = array(
|
365 |
'frame' => $today,
|
366 |
+
'amount' => $this->core->zero()
|
367 |
);
|
368 |
update_user_meta( $from, 'mycred_transactions', $history );
|
369 |
}
|
378 |
if ( $this_week != $history['frame'] ) {
|
379 |
$history = array(
|
380 |
'frame' => $this_week,
|
381 |
+
'amount' => $this->core->zero()
|
382 |
);
|
383 |
update_user_meta( $from, 'mycred_transactions', $history );
|
384 |
}
|
436 |
/**
|
437 |
* AJAX Autocomplete
|
438 |
* @since 0.1
|
439 |
+
* @version 1.0.1
|
440 |
*/
|
441 |
public function ajax_call_autocomplete() {
|
442 |
$results = array();
|
446 |
global $wpdb;
|
447 |
|
448 |
// prep query
|
449 |
+
$sql = "SELECT user_login, ID FROM {$wpdb->users} WHERE ID != %d AND user_login LIKE %s;";
|
450 |
$search = $_REQUEST['string']['term'];
|
451 |
$me = $_REQUEST['me'];
|
452 |
|
731 |
</li>
|
732 |
<li class="mycred-send-amount">
|
733 |
<label>' . __( 'Amount:', 'mycred' ) . '</label>
|
734 |
+
<div>' . $before . '<input type="text" class="short" name="mycred-transfer-amount" value="' . $mycred->zero() . '" size="8" />' . $after . '</div>
|
735 |
<input type="button" class="button large button-large mycred-click" value="' . $pref['templates']['button'] . '" />
|
736 |
</li>
|
737 |
';
|
817 |
// Apply defaults if not set
|
818 |
$history = array(
|
819 |
'frame' => '',
|
820 |
+
'amount' => $mycred->zero()
|
821 |
);
|
822 |
}
|
823 |
|
827 |
if ( $today != $history['frame'] ) {
|
828 |
$new_data = array(
|
829 |
'frame' => $today,
|
830 |
+
'amount' => $mycred->zero()
|
831 |
);
|
832 |
update_user_meta( $user_id, 'mycred_transactions', $new_data );
|
833 |
$current = $new_data['amount'];
|
850 |
if ( $this_week != $history['frame'] ) {
|
851 |
$new_data = array(
|
852 |
'frame' => $this_week,
|
853 |
+
'amount' => $mycred->zero()
|
854 |
);
|
855 |
update_user_meta( $user_id, 'mycred_transactions', $new_data );
|
856 |
$current = $new_data['amount'];
|
assets/css/admin.css
CHANGED
@@ -1,10 +1,8 @@
|
|
1 |
/**
|
2 |
* myCRED Admin Styling
|
3 |
* @since 0.1
|
4 |
-
* @version 1.
|
5 |
*/
|
6 |
-
@import url("zocial/zocial.css");
|
7 |
-
|
8 |
#myCRED-wrap table .column-username { width: 190px; }
|
9 |
#myCRED-wrap table .column-creds { width: 80px; }
|
10 |
#myCRED-wrap table .column-time { width: 160px; }
|
@@ -18,32 +16,53 @@
|
|
18 |
.tj { text-align: justify; }
|
19 |
|
20 |
/* Specifics */
|
21 |
-
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-
|
22 |
#myCRED-wrap p.submit { margin-top: 0; padding-top: 0; }
|
23 |
#mycred-social { text-align: right; }
|
24 |
|
25 |
/* General */
|
26 |
#myCRED-wrap .h2 { font-family: "HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif; font-size: 22px; line-height: 29px; font-weight: normal; text-shadow: #fff 0 1px 0; }
|
|
|
|
|
|
|
|
|
27 |
|
28 |
/* Accordion */
|
29 |
-
#myCRED-wrap #accordion { margin: 24px 0; padding: 0; float: none; clear: both;
|
30 |
-
#myCRED-wrap #accordion
|
|
|
|
|
31 |
#myCRED-wrap #accordion>h4:focus { outline: none; }
|
32 |
#myCRED-wrap #accordion>h4:hover { cursor: pointer; }
|
33 |
-
#myCRED-wrap #accordion .ui-accordion-header { padding: 0
|
|
|
|
|
34 |
#myCRED-wrap #accordion .ui-accordion-header input { vertical-align: middle; margin-right: 24px; }
|
35 |
-
#myCRED-wrap #accordion .ui-
|
36 |
-
|
37 |
-
#myCRED-wrap #accordion h4
|
38 |
-
#myCRED-wrap #accordion h4.
|
39 |
-
#myCRED-wrap #accordion h4.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
|
41 |
-
#myCRED-wrap #accordion>div { margin: 0; padding: 24px
|
42 |
#myCRED-wrap #accordion>div>p { margin-top: 0; }
|
43 |
-
#myCRED-wrap #accordion .ui-accordion-content {
|
|
|
|
|
44 |
#myCRED-wrap #accordion .ui-accordion-content .wrapper:after { content: "."; height: 0; visibility: hidden; margin: 0; padding: 0; }
|
45 |
|
46 |
-
.ui-accordion-content { display: none; }
|
47 |
.ui-accordion-content>div.wrapper { display: block; margin: 0; padding: 0; float: none; clear: both; }
|
48 |
.ui-accordion-content>div.wrapper .clear { height: 0; visibility: hidden; display: block; float: none; clear: both; }
|
49 |
.ui-accordion-content>div.wrapper p { margin: 0; padding: 0; }
|
@@ -51,7 +70,7 @@
|
|
51 |
.ui-accordion-content>div.wrapper .links { margin-bottom: 6px; padding-bottom: 4px; }
|
52 |
.ui-accordion-content>form>p { margin: 0 0 24px 0; }
|
53 |
|
54 |
-
.ui-accordion-content .subheader { display: block; width: 20%; float: left; margin: 0; font-size: 14px; }
|
55 |
.ui-accordion-content input[type="file"] { line-height: 26px; }
|
56 |
|
57 |
/* Organized Lists */
|
1 |
/**
|
2 |
* myCRED Admin Styling
|
3 |
* @since 0.1
|
4 |
+
* @version 1.3
|
5 |
*/
|
|
|
|
|
6 |
#myCRED-wrap table .column-username { width: 190px; }
|
7 |
#myCRED-wrap table .column-creds { width: 80px; }
|
8 |
#myCRED-wrap table .column-time { width: 160px; }
|
16 |
.tj { text-align: justify; }
|
17 |
|
18 |
/* Specifics */
|
19 |
+
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-repeat: no-repeat; background-position: 0 0; }
|
20 |
#myCRED-wrap p.submit { margin-top: 0; padding-top: 0; }
|
21 |
#mycred-social { text-align: right; }
|
22 |
|
23 |
/* General */
|
24 |
#myCRED-wrap .h2 { font-family: "HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif; font-size: 22px; line-height: 29px; font-weight: normal; text-shadow: #fff 0 1px 0; }
|
25 |
+
body.mp6 #myCRED-wrap .h2 { line-height: 15px; font-size: 18px; }
|
26 |
+
body.mp6 #myCRED-wrap .h2.description { line-height: 22px; }
|
27 |
+
body.mp6 #myCRED-wrap .h2 input[type="text"] { font-size: 14px; }
|
28 |
+
#myCRED-wrap .h2 input[type="text"] { line-height: inherit; }
|
29 |
|
30 |
/* Accordion */
|
31 |
+
#myCRED-wrap #accordion { margin: 24px 0; padding: 0; float: none; clear: both; }
|
32 |
+
body #myCRED-wrap #accordion { border-top: none; border-bottom: 1px solid #dedede; }
|
33 |
+
body.mp6 #myCRED-wrap #accordion { border-top: 1px solid #dedede; border-bottom: 1px solid #fafafa; }
|
34 |
+
#myCRED-wrap #accordion>h4 { font-size: 18px; line-height: 48px; font-weight: normal; color: #464646; font-family: "Open Sans", sans-serif; letter-spacing: 1px; }
|
35 |
#myCRED-wrap #accordion>h4:focus { outline: none; }
|
36 |
#myCRED-wrap #accordion>h4:hover { cursor: pointer; }
|
37 |
+
#myCRED-wrap #accordion .ui-accordion-header { padding: 0; margin: 0; }
|
38 |
+
body #myCRED-wrap #accordion .ui-accordion-header { border-top: 1px solid #dedede; border-bottom: none; }
|
39 |
+
body.mp6 #myCRED-wrap #accordion .ui-accordion-header { border-top: 1px solid #fafafa; border-bottom: 1px solid #dedede; }
|
40 |
#myCRED-wrap #accordion .ui-accordion-header input { vertical-align: middle; margin-right: 24px; }
|
41 |
+
#myCRED-wrap #accordion .ui-state-active { font-weight: normal; }
|
42 |
+
|
43 |
+
#myCRED-wrap #accordion h4 label { vertical-align: inherit; }
|
44 |
+
#myCRED-wrap #accordion h4 .icon { display: block; width: 48px; height: 48px; margin: 0 0 0 0; padding: 0; float: left; line-height: 48px; }
|
45 |
+
#myCRED-wrap #accordion h4 .icon { background-repeat: no-repeat; background-image: url(../images/admin-icons.png); background-position: 0 0; }
|
46 |
+
|
47 |
+
#myCRED-wrap #accordion h4 .registration { background-position-y: -48px; }
|
48 |
+
#myCRED-wrap #accordion h4 .logging_in { background-position-y: -96px; }
|
49 |
+
#myCRED-wrap #accordion h4 .publishing_content { background-position-y: -144px; }
|
50 |
+
#myCRED-wrap #accordion h4 .comments { background-position-y: -192px; }
|
51 |
+
#myCRED-wrap #accordion h4 .link_click { background-position-y: -240px; }
|
52 |
+
#myCRED-wrap #accordion h4 .video_view { background-position-y: -288px; }
|
53 |
+
#myCRED-wrap #accordion h4 .remote { background-position-y: -336px; }
|
54 |
+
#myCRED-wrap #accordion h4 .core { background-position-y: -384px; }
|
55 |
+
|
56 |
+
#myCRED-wrap #accordion h4 .icon-active { background-position-x: -48px; }
|
57 |
+
#myCRED-wrap #accordion h4 .icon-inactive { background-position-x: 0; }
|
58 |
|
59 |
+
#myCRED-wrap #accordion>div { margin: 0; padding: 24px 48px 12px 48px; }
|
60 |
#myCRED-wrap #accordion>div>p { margin-top: 0; }
|
61 |
+
#myCRED-wrap #accordion .ui-accordion-content { display: none;float: none; clear: both; }
|
62 |
+
body #myCRED-wrap #accordion .ui-accordion-content { border-top: 1px solid #dedede; border-bottom: none; }
|
63 |
+
body.mp6 #myCRED-wrap #accordion .ui-accordion-content { border-top: 1px solid #fafafa; border-bottom: 1px solid #dedede; }
|
64 |
#myCRED-wrap #accordion .ui-accordion-content .wrapper:after { content: "."; height: 0; visibility: hidden; margin: 0; padding: 0; }
|
65 |
|
|
|
66 |
.ui-accordion-content>div.wrapper { display: block; margin: 0; padding: 0; float: none; clear: both; }
|
67 |
.ui-accordion-content>div.wrapper .clear { height: 0; visibility: hidden; display: block; float: none; clear: both; }
|
68 |
.ui-accordion-content>div.wrapper p { margin: 0; padding: 0; }
|
70 |
.ui-accordion-content>div.wrapper .links { margin-bottom: 6px; padding-bottom: 4px; }
|
71 |
.ui-accordion-content>form>p { margin: 0 0 24px 0; }
|
72 |
|
73 |
+
.ui-accordion-content .subheader { display: block; width: 20%; float: left; margin: 0; font-size: 14px; font-weight: bold; }
|
74 |
.ui-accordion-content input[type="file"] { line-height: 26px; }
|
75 |
|
76 |
/* Organized Lists */
|
assets/css/inline-edit.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.mycred-update-balance { background-color:white; }.mycred-update-balance>div { padding:12px; }.mycred-update-balance .ui-dialog-titlebar { line-height:24px; border-bottom: 1px solid #dedede; }.mycred-update-balance .ui-dialog-titlebar:hover { cursor:move; }.mycred-update-balance .ui-dialog-titlebar-close { float:right; }body.users-php .ui-widget-overlay { position:fixed; top:0; left:0; background-
|
1 |
+
.mycred-update-balance { background-color:white; }.mycred-update-balance>div { padding:12px; }.mycred-update-balance .ui-dialog-titlebar { line-height:24px; border-bottom: 1px solid #dedede; }.mycred-update-balance .ui-dialog-titlebar:hover { cursor:move; }.mycred-update-balance .ui-dialog-titlebar-close { float:right; }body.users-php .ui-widget-overlay { position:fixed; top:0; left:0; width:100%; height:100%; background: repeat-x scroll 50% 50% #AAA; opacity:0.3; overflow:hidden; }body.users-php.mp6 .ui-widget-overlay { background: repeat-x scroll 50% 50% #333; }.mycred-adjustment-form { display:block; float:none; clear:both; padding:0; margin:0; }.mycred-adjustment-form .row { line-height:24px; margin:0; padding:0; float:none; margin: 0 0 4px 0; clear:both; }.mycred-adjustment-form .row.inline { float:left; clear:none; }.mycred-adjustment-form .row.inline span { font-size:18px; }.mycred-adjustment-form .row label { display:block; margin-bottom:0; }.mycred-adjustment-form .row input[type="text"] { width:90%; }.mycred-adjustment-form .row input[type="button"] { float:right; }input#mycred-update-users-balance-amount { width:25%; }#edit-mycred-balance #mycred-current.done { color:green; }.mycred-adjustment-form .row input.error { border-color:red; }
|
assets/css/zocial/zocial-regular-webfont.eot
DELETED
Binary file
|
assets/css/zocial/zocial-regular-webfont.svg
DELETED
@@ -1,151 +0,0 @@
|
|
1 |
-
<?xml version="1.0" standalone="no"?>
|
2 |
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
3 |
-
<svg xmlns="http://www.w3.org/2000/svg">
|
4 |
-
<metadata></metadata>
|
5 |
-
<defs>
|
6 |
-
<font id="zocialregular" horiz-adv-x="1000" >
|
7 |
-
<font-face units-per-em="1000" ascent="804" descent="-196" />
|
8 |
-
<missing-glyph horiz-adv-x="250" />
|
9 |
-
<glyph unicode=" " horiz-adv-x="250" />
|
10 |
-
<glyph unicode="	" horiz-adv-x="250" />
|
11 |
-
<glyph unicode=" " horiz-adv-x="250" />
|
12 |
-
<glyph unicode="!" d="M5 308q0 215 140.5 355.5t355.5 140.5t355.5 -140.5t140.5 -355.5q0 -182 -103 -313t-280 -171q-9 17 -33.5 52t-34.5 56q64 -26 86 -26q16 0 16 50q0 93 -17 93q-25 0 -97 -55q0 14 -15 12h-5q-26 69 -26 123q0 15 3 30q92 -45 148 -45q31 0 93.5 18t62.5 39 q0 13 -17 13q-26 0 -75 -7t-75 -7q-27 0 -59.5 14t-32.5 38q0 5 1.5 7.5t4.5 3t6 0t8 -1t9 -0.5q9 0 26 -2.5t25 -2.5q31 0 127 36.5t96 56.5q0 12 -18.5 17t-34.5 5q-14 0 -42 -7.5t-61 -18t-44 -13.5q4 20 4 32q0 47 -25 109.5t-58 92.5q-27 24 -72 33q-28 36 -87.5 65.5 t-105.5 29.5q-9 0 -27.5 -3.5t-23.5 -4.5l-22 -31l6 -1q7 0 21.5 2t21.5 2q34 0 78 -14q-28 -14 -49 -19q-2 -1 -13 -2.5t-18.5 -3t-14 -6t-6.5 -11.5q56 6 84 6q38 0 60 -7q-77 -9 -118.5 -53t-41.5 -121q0 -27 4 -50q19 -120 73 -358q33 -154 37 -170l1 -4 q-160 50 -251 185.5t-91 307.5zM288 432q0 -6 3 -12q-1 16 18 28t36 12q8 0 20 -5q-10 13 -29 13q-17 0 -32.5 -9.5t-15.5 -26.5zM321 357q0 13 10.5 23.5t23.5 10.5t23.5 -10.5t10.5 -23.5t-10.5 -23.5t-23.5 -10.5t-23.5 10.5t-10.5 23.5zM361 368q0 -8 9 -8t9 8q0 9 -9 9 t-9 -9zM529 455q8 13 37 13q13 0 33 -10q-10 22 -35 22q-31 0 -35 -25zM552 377q0 12 9 20.5t20 8.5q12 0 20.5 -8.5t8.5 -20.5q0 -11 -8.5 -20t-20.5 -9q-11 0 -20 9t-9 20zM587 387q0 -8 7 -8q8 0 8 8q0 7 -8 7q-7 0 -7 -7z" />
|
13 |
-
<glyph unicode=""" horiz-adv-x="1294" d="M0 402q0 105 52.5 188t136.5 131.5t180.5 73.5t194.5 25q29 0 43 -1q115 -6 226 -41q87 -28 166 -74.5t146.5 -109t108 -146.5t40.5 -176q0 -13 -1 -19q-11 -152 -120.5 -256t-268.5 -147q-107 -30 -229 -30h-8q-201 0 -315 53q-6 2 -7 6q0 2 3 2q1 0 3.5 -0.5t3.5 -0.5 q50 -12 89 -12q24 0 47 4.5t43.5 20t20.5 39.5q0 12 -6 24q-9 16 -58.5 33.5t-114 33.5t-75.5 20q-80 26 -139 66q0 1 3.5 9.5t6 14.5t7 12t8.5 6h179q9 0 16.5 -21.5t21 -43.5t35.5 -22q18 0 31 11.5t13 29.5q0 11 -84 199t-106 231q-6 15 -16 15q-8 0 -13 -9l-3 -6 q-8 -15 -52 -114l-107 -238l-7 -15q-95 109 -95 234zM218 236q0 10 54 129l5 3q6 0 32.5 -63.5t26.5 -69.5q0 -4 -5 -4h-108q-5 0 -5 5zM525 113q0 -45 47 -45t47 45v388q0 45 -47 45t-47 -45v-388zM710 113q0 -45 47 -45t47 45v181l92 -185q13 -29 41 -29q32 0 46 29 l91 185v-181q0 -45 47 -45q48 0 48 45v388q0 45 -47 45q-35 0 -47 -29l-138 -302l-133 302q-14 29 -48 29q-46 0 -46 -45v-388z" />
|
14 |
-
<glyph unicode="#" horiz-adv-x="1009" d="M0 -180v501h501v-501h-501zM509 319v501h500v-501h-500z" />
|
15 |
-
<glyph unicode="$" horiz-adv-x="974" d="M0 -72l194 891h438q50 0 96.5 -18t84.5 -55.5t52.5 -94.5t-0.5 -135q-29 -136 -128.5 -214t-233.5 -78h-183l-63 -296h-257zM100 -181h257l63 295h184q134 0 233 78t129 214q28 135 -43 219q33 -74 12 -170q-29 -136 -128.5 -214t-233.5 -78h-183l-63 -295h-216zM357 394 h83l42 183h125q2 0 17 -3q-8 29 -31.5 46.5t-55.5 17.5h-125zM482 395q48 2 89.5 37t52.5 84q0 2 1 6t1 6h-114z" />
|
16 |
-
<glyph unicode="%" horiz-adv-x="957" d="M0 -67v514q0 179 84.5 278t259.5 99h288h260q-5 -5 -52.5 -53t-100 -101t-109 -109.5t-95 -93t-41.5 -36.5q-15 0 -15 16v156h-48q-59 0 -94.5 -6.5t-63 -26t-39 -56.5t-11.5 -96v-262zM67 -184q5 5 52.5 53t100 101t109 109.5t95 93t41.5 36.5q15 0 15 -16v-156h48 q116 0 161.5 35.5t45.5 149.5v262l224 223v-514q0 -179 -84.5 -278t-259.5 -99h-288h-260z" />
|
17 |
-
<glyph unicode="&" horiz-adv-x="921" d="M0 221v269q0 26 19 44.5t44 18.5q26 0 44.5 -18.5t18.5 -44.5v-269q0 -26 -18.5 -44.5t-44.5 -18.5t-44.5 18.5t-18.5 44.5zM173 121v418h574v-418q0 -26 -18.5 -44.5t-44.5 -18.5h-448q-26 0 -44.5 18.5t-18.5 44.5zM173 586h574q0 115 -85 189t-202 74t-202 -74 t-85 -189zM274 902q0 8 7 8q3 0 7 -2l49 -89l-15 -8q-48 88 -48 91zM289 95q0 27 19 45t47 18q25 0 44 -19t19 -44v-202q0 -28 -19 -45.5t-47 -17.5q-26 0 -44.5 18.5t-18.5 44.5v202zM294 715q0 16 12 27.5t28 11.5t27.5 -11.5t11.5 -27.5q0 -17 -11.5 -28.5t-28.5 -11.5 q-16 0 -27.5 12t-11.5 28zM502 95q0 27 19.5 45t46.5 18q26 0 44.5 -18.5t18.5 -44.5v-202q0 -28 -19 -45.5t-47 -17.5q-26 0 -44.5 18.5t-18.5 44.5v202zM547 715q0 16 12 27.5t28 11.5t27.5 -11.5t11.5 -27.5q0 -17 -12 -28.5t-28 -11.5t-27.5 12t-11.5 28zM583 819 q2 3 14 28.5t23.5 44t18.5 18.5t7 -9v-2l-48 -89zM794 221v268q0 26 18.5 45t44.5 19t44.5 -19t18.5 -45v-268q0 -26 -18.5 -44.5t-44.5 -18.5t-45 18.5t-18 44.5z" />
|
18 |
-
<glyph unicode="'" horiz-adv-x="824" d="M0 322q0 107 29 202q28 92 83 159q56 67 135 102q81 36 178 36q128 0 217 -61q90 -59 136 -157q46 -95 46 -196q0 -93 -47 -120t-132 -27h-423q0 -85 30 -148q29 -65 76 -96q50 -33 106 -33q41 0 71 10q31 10 62 33q31 22 56 47t66 69q15 16 47 16q34 0 54 -21 q21 -21 21 -58q0 -32 -23 -78q-21 -43 -70 -85q-46 -41 -116 -68q-71 -27 -161 -27q-209 0 -325 135q-116 136 -116 366zM222 400h392q-7 125 -60 188q-51 62 -136 62q-82 0 -133 -63q-52 -63 -63 -187z" />
|
19 |
-
<glyph unicode="(" horiz-adv-x="571" d="M0 -73v786q0 44 31.5 75.5t75.5 31.5h357q44 0 75.5 -31.5t31.5 -75.5v-786q0 -44 -31.5 -75.5t-75.5 -31.5h-357q-44 0 -75.5 31.5t-31.5 75.5zM33 34h503v608h-503v-608zM199 731q0 -10 6.5 -16.5t16.5 -6.5h127q10 0 16.5 6.5t6.5 16.5q0 9 -6.5 15.5t-16.5 6.5h-127 q-10 0 -16.5 -6.5t-6.5 -15.5zM242 -72q0 -19 13.5 -32t32.5 -13t32 13t13 32t-13 32t-32 13t-32.5 -13t-13.5 -32z" />
|
20 |
-
<glyph unicode=")" horiz-adv-x="1106" d="M0 158v478q0 46 14 60t60 14h958q46 0 59.5 -14t13.5 -60v-478q0 -46 -13.5 -59.5t-59.5 -13.5h-406v-37h111v-58h-369v58h111v37h-405q-46 0 -60 13.5t-14 59.5zM37 150h1031v516h-1031v-516z" />
|
21 |
-
<glyph unicode="*" d="M0 582q0 25 16 45.5t41 26.5l197 47q-63 -72 -63 -168q0 -185 253 -283q28 -11 54 -24.5t54.5 -33.5t46 -46.5t17.5 -55.5q0 -43 -35 -67t-80 -24q-58 0 -121 22.5t-105 60.5l-79 -179q56 -31 144 -61q-10 -2 -31.5 -8.5t-38.5 -10t-32 -3.5q-25 0 -45.5 16t-26.5 41 l-164 687q-2 12 -2 18zM419 536q0 38 35 58.5t76 20.5q49 0 110 -17.5t88 -46.5l61 170q-90 48 -186 63q2 0 45 12t71.5 18t42.5 6q25 0 45.5 -16t26.5 -41l164 -687q2 -12 2 -18q0 -25 -16 -45.5t-41 -26.5l-145 -34q47 70 47 152q0 111 -70.5 182.5t-184.5 109.5 q-171 58 -171 140z" />
|
22 |
-
<glyph unicode="+" horiz-adv-x="1184" d="M0 -1q0 87 89 155t215 68h54q-42 40 -42 86q0 29 16 58q-10 -1 -29 -1q-104 0 -170 65t-66 160q0 91 82 159t187 68h310l-69 -50h-98q47 -18 73.5 -68t26.5 -111q0 -93 -88 -162q-37 -29 -48 -46t-11 -42q0 -19 27 -48t54 -49q61 -43 84.5 -88t23.5 -113 q0 -90 -82 -156.5t-222 -66.5q-133 0 -225 50t-92 132zM112 32q0 -69 58.5 -117.5t145.5 -48.5q119 0 172.5 44t53.5 117q0 19 -4 32q-3 11 -7 20.5t-12 19t-14 16t-19.5 16.5t-20.5 15t-25 17.5t-26 17.5q-39 12 -77 12q-90 1 -157.5 -47t-67.5 -114zM178 591 q11 -79 60.5 -136t109.5 -58q59 -2 94 52t25 133t-59.5 134t-109.5 57t-95 -51t-25 -131zM733 567v50h200v200h50v-200h201v-50h-201v-201h-50v201h-200z" />
|
23 |
-
<glyph unicode="," horiz-adv-x="1106" d="M0 673v21l2 2h249l2 -2v-20q0 -8 -10 -8l-26 -1q-33 -1 -33 -20q0 -13 7 -28q50 -122 222 -484l6 -1l111 221q-13 30 -22 49l-76 150l-20 40q-26 51 -34 60.5t-33 13.5q-14 2 -14 7v21l3 2h197l5 -1v-21q0 -8 -10 -8l-15 -2q-13 -2 -19 -5t-5.5 -12t4 -17.5t14.5 -30.5 l73 -150l81 162q16 32 5 43q-6 8 -37 11l-9 1q-4 0 -7 3q-3 1 -3 6v19l3 2q57 1 186 0l2 -2v-20q0 -8 -9 -8q-22 -1 -30.5 -4.5t-16.5 -15.5q-23 -34 -30 -48l-105 -196l-3 -7l128 -262l8 -3l202 481q12 28 -3 41q-13 12 -39 13l-19 1q-3 0 -6 3q-4 2 -4 6v20l3 2h229l2 -2 v-20q0 -7 -9 -9q-46 -2 -66 -19q-20 -16 -34 -49l-250 -567q-10 -23 -22.5 -30.5t-24 1t-22.5 30.5q-38 75 -122 263q-105 -216 -131 -264q-41 -71 -71 -1q-32 75 -130 284.5t-130 286.5q-16 42 -28 52q-11 10 -52 13q-14 2 -14 7z" />
|
24 |
-
<glyph unicode="-" horiz-adv-x="939" d="M-0.5 707q-0.5 11 6 20.5t13.5 16.5t23.5 15.5t27 13t33 14t34.5 14.5q54 22 97 16t54 -35q25 -67 102.5 -319.5t115.5 -361.5q268 88 326 105q16 6 37.5 4t32.5 -23q23 -47 32.5 -98.5t0.5 -74.5q-19 -15 -59.5 -32t-75.5 -29t-89.5 -29t-73.5 -23q-10 -3 -38 -13 t-53 -18.5t-58 -19t-61 -17.5t-54 -11.5t-44.5 -3.5t-25.5 9q-18 18 -32 52t-29 87t-19 66q-42 125 -113 338.5t-104 312.5q-6 13 -6.5 24z" />
|
25 |
-
<glyph unicode="." horiz-adv-x="778" d="M3 -129v775h92q0 29 0.5 39t4 31.5t11.5 30t24.5 16.5t40.5 8t40.5 -8t24 -16t11.5 -30.5t4 -31.5v-39h55v39t4 31.5t11.5 30.5t24 16t40.5 8q18 0 31 -4t21.5 -8.5t14.5 -17t8.5 -18.5t4 -24.5t1.5 -24.5v-28h54v28t1.5 24.5t4 24.5t8.5 18.5t14.5 17t21.5 8.5t31 4 q24 0 40.5 -8t24 -16t11.5 -30.5t4 -31.5v-39h92v-775h-776zM68 48v-112h139v112h-139zM68 70h139v119h-139v-119zM68 211h139v130h-139v-130zM68 362h139v112h-139v-112zM139 565q0 -33 37 -33t37 33v130q0 33 -37 33t-37 -33v-130zM228 48v-112h152v112h-152zM228 70h152 v119h-152v-119zM228 211h152v130h-152v-130zM228 362h152v112h-152v-112zM354 565q0 -33 37 -33q38 0 38 33v130q0 33 -38 33q-37 0 -37 -33v-130zM401 48v-112h152v112h-152zM401 70h152v119h-152v-119zM401 211h152v130h-152v-130zM401 362h152v112h-152v-112zM569 565 q0 -33 38 -33q37 0 37 33v130q0 33 -37 33q-38 0 -38 -33v-130zM574 48v-112h140v112h-140zM574 70h140v119h-140v-119zM574 211h140v130h-140v-130zM574 362h140v112h-140v-112z" />
|
26 |
-
<glyph unicode="/" horiz-adv-x="1309" d="M0 110v181h224v-179q0 -28 20 -48.5t49 -20.5t49.5 20t20.5 49v423q0 117 86.5 199.5t205.5 82.5t205.5 -83t86.5 -201v-92l-134 -40l-89 42v80q0 29 -20 49t-49 20t-49.5 -20t-20.5 -49v-417q0 -120 -86 -204.5t-206 -84.5q-121 0 -207 85.5t-86 207.5zM724 107v183 l89 -42l134 40v-184q0 -29 20 -49.5t49 -20.5t49 20.5t20 49.5v187h224v-181q0 -121 -85.5 -207t-206.5 -86t-207 85t-86 205z" />
|
27 |
-
<glyph unicode="0" horiz-adv-x="1258" d="M-5 196h119q5 -40 29.5 -64t64.5 -24q48 0 76.5 32.5t28.5 81.5q0 48 -28 79t-75 31q-38 0 -65 -24.5t-51 -24.5q-53 0 -80 2q9 52 28.5 160.5t28.5 164.5h330v-98h-243q-14 -71 -24 -134h3q17 21 50.5 32t65.5 11q113 0 160 -103q24 60 72 94t111 34q49 0 91 -19.5 t66 -41.5t63 -66q3 -3 4.5 -5t4 -4.5l4.5 -4.5q35 40 50 55.5t46 40.5t62 34.5t70 9.5q90 0 145 -60.5t55 -151.5q0 -93 -55 -156t-147 -63q-116 0 -226 131q-7 -7 -39 -38.5t-42.5 -39.5t-37 -25.5t-52 -23t-57.5 -5.5q-63 0 -111 33t-74 92q-62 -128 -203 -128 q-95 0 -156.5 47.5t-61.5 138.5zM510 226q0 -42 25.5 -68t67.5 -26q75 0 155 95q-34 35 -48 48.5t-47.5 33t-63.5 19.5q-39 0 -64 -31t-25 -71zM899 226q27 -29 45.5 -45.5t49 -32.5t61.5 -16q43 0 67.5 27.5t24.5 70.5q0 42 -25.5 70t-67.5 28q-25 0 -49 -11.5t-36.5 -21.5 t-37.5 -36t-32 -33z" />
|
28 |
-
<glyph unicode="1" horiz-adv-x="774" d="M0 458q0 63 26.5 125t76 115t130 86t178.5 33q159 0 261 -98t102 -231q0 -171 -86.5 -282.5t-223.5 -111.5q-45 0 -84.5 21t-55.5 51l-40 -158q-5 -19 -13 -38.5t-17.5 -37.5t-19 -34t-19 -30t-16.5 -23.5t-13 -16.5l-6 -8q-3 -4 -8 -3t-6 6q0 1 -1.5 14t-3 27.5t-3 37.5 t-1 44.5t3 47.5t7.5 48q11 47 74 313q-8 16 -13 38.5t-5 36.5l-1 15q0 64 32.5 106.5t78.5 42.5q37 0 57.5 -24.5t20.5 -61.5q0 -23 -8.5 -56.5t-22.5 -77t-20 -70.5q-10 -45 17.5 -78t73.5 -33q79 0 130.5 89.5t51.5 216.5q0 97 -63 158.5t-176 61.5q-126 0 -204.5 -81 t-78.5 -194q0 -67 38 -113q13 -15 8 -32q-2 -5 -6 -23t-6 -23q-2 -11 -10 -14.5t-18 0.5q-59 24 -88.5 82.5t-29.5 136.5z" />
|
29 |
-
<glyph unicode="2" d="M15 438q33 132 125.5 227.5t220.5 132.5t260 4t227.5 -125.5t132.5 -220.5t4 -260t-125.5 -227.5t-220.5 -132.5t-260 -4t-227.5 125.5t-132.5 220.5t-4 260zM243 167l72 -18q7 -1 20 -5t19 -5l-23 -91l55 -14l22 90q6 -2 21 -5.5t23 -5.5l-22 -90l55 -13l22 91 q48 -8 85.5 -7.5t66 20.5t42.5 61q32 90 -51 133q60 13 70 80q13 86 -110 126l23 91l-55 13l-22 -88q-8 2 -23 5.5t-21 5.5l22 88l-55 14l-22 -90q-15 2 -35 8l-76 19l-14 -59l39 -9q28 -7 26 -32l-26 -103q2 0 6 -2q-1 1 -3 1t-3 1l-36 -144q-5 -18 -25 -13l-40 10z M426 190l30 121q1 0 19.5 -4t28 -7t28 -9t28.5 -13t21 -16.5t14.5 -22t-0.5 -27.5q-3 -11 -9 -19t-15 -12t-18.5 -7t-23 -2.5t-23.5 1.5t-24 4t-21.5 4.5t-19.5 4.5t-15 4zM470 366l27 110q3 -1 12.5 -3t16.5 -3.5t18 -5t19 -6.5t18 -8.5t15 -11t11.5 -13.5t6 -16.5 t-1.5 -19.5q-3 -13 -10.5 -21.5t-19 -11.5t-22.5 -4.5t-26.5 1t-24 4t-23 5.5t-16.5 4z" />
|
30 |
-
<glyph unicode="3" horiz-adv-x="1129" d="M0 597h77l107 -363l72 244l-35 119h77l107 -363l107 363h77h213v-36l-109 -188q58 -20 86 -67q30 -50 30 -114q0 -82 -43 -137t-112 -55q-51 0 -90 33q-39 34 -56 89l60 25q13 -34 35 -54q20 -19 51 -19t52 34q22 34 22 84q0 52 -23 83q-27 34 -83 34h-30v36l103 178 h-124l-7 -12l-152 -511h-7l-110 370l-111 -370h-7zM818 180l18 -50q15 -33 33 -58q42 -58 94 -67q45 -9 88 18q19 12 35 31q20 20 28 36q4 7 11 20l-11 59q-8 -16 -16 -28t-12 -17l-4 -4q-34 -37 -61 -49q-33 -15 -68 -11q-27 2 -60 24q-36 31 -43 43q-13 18 -32 53z M845 375q0 84 33 146q16 30 37.5 48t42.5 20q35 4 70 -26q18 -15 37 -50l44 87l12 -76l-44 -85q-8 16 -19 30t-18 20l-8 6q-31 22 -64 15q-24 -5 -47.5 -30t-34.5 -59q-19 -55 -19 -106q-1 -40 5 -63q-12 22 -19 53t-7 51z" />
|
31 |
-
<glyph unicode="4" horiz-adv-x="1169" d="M0 377q0 105 76.5 179.5t184.5 74.5q85 0 152.5 -48t94.5 -124l66 64l158 -152l437 446v-405l-267 -206l34 -36l-363 -353l-316 307q-107 2 -182 76t-75 177zM37 377q0 -90 65 -153t157 -63q33 0 65 9l220 -195l585 460l1 302l-578 -596l-90 146q20 43 20 90 q0 89 -65.5 152.5t-157.5 63.5t-157 -63.5t-65 -152.5zM85 375q0 70 49.5 119.5t119.5 49.5t119.5 -49t49.5 -120q0 -70 -49.5 -119.5t-119.5 -49.5t-119.5 49.5t-49.5 119.5z" />
|
32 |
-
<glyph unicode="5" horiz-adv-x="710" d="M16 619h699l-66 -710l-284 -81l-284 81zM81 679v133h45v-44h40v44h44v-133h-44v44h-40v-44h-45zM146 474l24 -266l1 2h300l-10 -113l-96 -27l-97 28l-6 68h-88l12 -136l179 -51l179 51l25 267h-319l-8 89h335l8 88h-439zM230 767v45h122v-45h-39v-88h-44v88h-39zM371 679 v133h47l27 -46l28 46h47v-133h-43v68l-32 -50v1l-30 47v-66h-44zM543 679v133h44v-88h62v-45h-106z" />
|
33 |
-
<glyph unicode="6" horiz-adv-x="943" d="M0 -32.5q-3 35.5 7 59.5q39 140 92 239q114 216 313 352v14q-59 -25 -118.5 -65.5t-102 -81t-76 -77.5t-50.5 -60l-17 -23q-2 59 16 115t45 94t54.5 67t46.5 43l19 13q4 2 10.5 5.5t27.5 13.5t43.5 18.5t55 17t64 12t70 2t73.5 -11.5q64 47 128.5 73t97.5 29l33 3 q50 5 77.5 -16.5t31 -55t-0.5 -68t-12 -59.5l-9 -24l-5 5q21 57 20.5 93.5t-17.5 56.5t-36.5 29t-36.5 10l-16 2q-4 0 -11.5 -0.5t-32 -5t-49 -12.5t-60.5 -25t-69 -41q69 -11 123 -42t86 -70.5t54.5 -85t31 -88.5t13 -78t3.5 -56l-1 -22h-557q-3 -42 10.5 -73t34 -45.5 t41 -22.5t35.5 -9l15 -1q4 0 11.5 0.5t26.5 5.5t34.5 14t31 28.5t21.5 46.5h292q-16 -59 -47 -107t-68 -77.5t-78 -51t-78.5 -31.5t-68 -16t-48.5 -7h-19q-78 0 -107 6q-60 -47 -126.5 -73.5t-103.5 -29.5l-36 -3q-46 0 -77.5 23.5t-41.5 56t-13 68zM75.5 -27 q-0.5 -24 2.5 -42.5t8 -28.5l4 -9q4 -3 11 -8t33.5 -13.5t57 -8t82 16.5t107.5 50q-8 2 -21.5 5.5t-50.5 18t-69 31.5t-66.5 47.5t-53.5 64.5q-22 -34 -33 -67t-11.5 -57zM358 397h265q1 36 -11.5 63t-32 39t-38.5 19t-33 8l-14 1q-6 0 -15 -1t-33 -8t-42 -19t-32.5 -39 t-13.5 -63z" />
|
34 |
-
<glyph unicode="7" horiz-adv-x="900" d="M42 581q2 17 15 32l120 120q14 12 21 -4l97 -182q8 -16 -5 -31l-44 -44q-12 -12 -14 -31q0 -30 31 -77t61 -80l31 -32q14 -14 36 -34.5t72.5 -54t79.5 -33.5q19 0 32 13l52 52q14 14 30 4l175 -103q7 -4 8 -10.5t-4 -11.5l-120 -120q-15 -13 -32 -15q-49 -7 -110.5 13.5 t-114 54.5t-97.5 69t-72 60l-26 25q-10 10 -26.5 27.5t-57.5 69t-71 100.5t-52 111.5t-15 111.5z" />
|
35 |
-
<glyph unicode="8" d="M0 318q0 136 67 251t182 182t251 67t251 -67t182 -182t67 -251t-67 -251t-182 -182t-251 -67t-251 67t-182 182t-67 251zM129 318q0 -65 36 -77q5 -2 17 -4q42 -1 85 40q41 36 58 90q25 77 10 200q-2 12 -2 17q-3 6 0 9q1 3 13 -1q38 -10 78 -29q46 -21 102 -70 q45 -39 87 -89q33 -39 80 -104q41 -57 88 -77q29 -10 47.5 -7t29 20t15 37t4.5 45q0 48 -12 96q-3 12 -8 28q-14 43 -41 84q-52 79 -135.5 124t-177.5 45q-66 0 -125 -22q-80 -28 -140.5 -89t-88.5 -142q-1 -5 -4 -14.5t-5 -13.5q-12 -50 -11 -96z" />
|
36 |
-
<glyph unicode="9" horiz-adv-x="1220" d="M0 669q-1 5 2.5 9.5t8.5 5.5q11 2 31 6.5t28 6.5q0 17 1 49.5t1 48.5q2 12 13 12q14 0 14 -14q-2 -60 -2 -91q11 2 35 7t35 8q18 4 55 10t56 10q402 69 794 72q6 0 9.5 -4.5t2.5 -10.5q0 -11 -2 -33t-2 -33q42 -3 128 -11q5 0 9 -4.5t3 -9.5q-23 -137 -68 -412t-68 -413 q50 -8 76 -12q8 -1 10.5 -8t-0.5 -13t-10 -6h-3q-13 2 -39 6.5t-39 6.5q-1 -12 -5 -31q-2 -9 -10 -11q-1 -1 -4 -1h-4q-297 75 -600 117q-100 2 -149 2q-55 0 -165 -2v-1q1 -1 1 -2q1 -6 -4 -10.5t-11 -4.5q-11 0 -12 11q0 5 -1.5 15.5t-2.5 16.5h-13q-8 0 -10.5 7t1 13.5 t11.5 6.5h1h7l-6 54q-6 40 -25 194.5t-35.5 251.5t-42.5 191zM30 661q21 -78 43 -201q-3 70 -3 209q-16 -2 -40 -8zM97 570q1 -193 21 -424q3 -40 11 -109q1 -9 2.5 -19t3.5 -22t3 -19q67 -3 192 -13t182 -13q354 -20 483 -35q11 160 32.5 455t29.5 411q-468 -4 -960 -107 q-1 -53 0 -105zM189 407q0 -68 42.5 -111t108.5 -43q69 0 109 43h2q-13 -70 -65 -111q-41 -33 -101 -38q-40 -4 -52 -2v-75q35 0 57 2q107 8 171 68q87 82 87 233q0 94 -47 153.5t-132 59.5q-78 0 -129 -53t-51 -126zM283 413q0 45 22.5 73.5t58.5 28.5h1q43 0 65 -35.5 t21 -90.5q0 -16 -5 -26q-26 -42 -81 -42q-38 0 -60 26t-22 66zM372 -64l96 -10l373 -40q140 -30 209 -48l3 18q-55 9 -165 25q-249 35 -516 55zM564 407q0 -68 43 -111t108 -43q69 0 110 43h1q-13 -70 -64 -111q-42 -33 -102 -38q-40 -4 -52 -2v-75q35 0 57 2q107 8 171 68 q87 80 87 233q0 94 -47 153.5t-131 59.5q-78 0 -129.5 -53t-51.5 -126zM658 413q0 45 23 73.5t58 28.5h1q43 0 65 -35.5t21 -90.5q0 -16 -5 -26q-26 -42 -81 -42q-38 0 -60 26t-22 66zM1015 -111q28 -4 43 -6q20 120 64.5 392t68.5 417q-13 1 -35.5 3t-41.5 3.5t-36 2.5 q-6 -85 -27 -366.5t-31 -435.5q0 -5 -4 -9q-1 0 -1 -1z" />
|
37 |
-
<glyph unicode=":" horiz-adv-x="834" d="M0 -180l417 1000l417 -1000h-369v135l170 85l-13 55l-157 -79v67l98 52l-14 57l-84 -45v87h-92v-157l-86 59l-16 -64l102 -70v-182h-373z" />
|
38 |
-
<glyph unicode=";" horiz-adv-x="1123" d="M-1 52v372q0 13 13 13h176v129q0 14 13 14h98v-514q0 -14 -12 -14h-288zM108 135h67q13 0 13 14v206h-67q-13 0 -13 -14v-206zM333 52v372q0 13 13 13h98v-371q0 -14 -12 -14h-99zM333 497v69q0 14 12 14h99v-69q0 -14 -12 -14h-99zM482 52v372q0 13 13 13h288v-504 q0 -13 -13 -13h-288l1 69q0 14 12 14h176v49h-189zM592 135h67q12 0 12 14v206h-67q-12 0 -12 -14v-206zM821 -11q0 14 13 14h176v49h-189v372q0 13 13 13h287v-504q0 -13 -12 -13h-288v69zM930 135h67q13 0 13 14v206h-67q-13 0 -13 -14v-206z" />
|
39 |
-
<glyph unicode="<" d="M0 329q0 73 51.5 125t124.5 52q63 0 114 -43l358 179q0 2 -0.5 5.5t-0.5 5.5q0 73 52 124.5t125 51.5t124.5 -51.5t51.5 -124.5t-51.5 -125t-124.5 -52q-64 0 -114 42l-358 -179q0 -1 0.5 -4.5t0.5 -5.5q0 -1 -0.5 -5t-0.5 -5l358 -179q50 42 114 42q73 0 124.5 -51.5 t51.5 -124.5t-51.5 -125t-124.5 -52q-74 0 -125.5 51.5t-51.5 125.5q0 1 0.5 4.5t0.5 5.5l-358 179q-50 -42 -114 -42q-73 0 -124.5 51.5t-51.5 124.5z" />
|
40 |
-
<glyph unicode="=" d="M0 319q0 136 67 251t182 182t251 67t251 -67t182 -182t67 -251q0 -101 -38 -192t-107 -160q-60 73 -145.5 114t-182.5 41q-107 0 -199 -49.5t-151 -134.5q-83 71 -130 170t-47 211zM164 463q0 -17 12 -29.5t30 -12.5q6 0 9 1q144 58 298 58t298 -58q1 0 4 -0.5t5 -0.5 q17 0 29.5 12.5t12.5 29.5q0 25 -23 37q-159 63 -326 63q-170 0 -329 -64q-20 -13 -20 -36zM210 314l6 -16q8 -13 23 -13q3 0 9 2q127 55 265 55q139 0 267 -56q4 -2 7 -2q15 0 23 13l5 17q0 13 -10 21q-138 62 -292 62q-153 0 -293 -62q-10 -10 -10 -21zM258 170 q10 -25 31 -16q108 51 224 51q112 0 219 -48q24 -13 35 12q5 13 0 23t-14 15q-106 53 -240 53q-128 0 -244 -55q-19 -10 -11 -35zM319 -147q37 48 91.5 76t116.5 28q114 0 193 -86q-104 -52 -220 -52q-94 0 -181 34z" />
|
41 |
-
<glyph unicode=">" horiz-adv-x="1205" d="M0 323q0 62 49.5 106t112.5 44q62 0 105 -36h5q134 82 335 82l5 4l70 267l242 -36q0 -1 2 -1q1 0 0 1q2 1 11.5 15.5t14.5 18.5q34 32 82 32q49 0 82.5 -32.5t33.5 -81.5t-33.5 -84t-82.5 -35q-57 0 -87 38.5t-30 96.5q-2 -1 -97.5 13t-109.5 17h-3q-2 -2 -16.5 -53.5 t-30 -109t-17.5 -63.5v-3l5 -4q72 0 147.5 -20.5t130.5 -57.5l3 -2q1 1 2 1t2 1q25 18 35.5 25t29.5 13t43 6q68 0 116 -48t48 -117q0 -47 -26.5 -86t-69.5 -60q0 -195 -260 -303q-41 -18 -56 -23q-32 -10 -91 -19t-93 -9q-120 0 -231 35q-2 2 -72 38q-95 51 -152.5 116 t-57.5 156h-5q-33 17 -59 50l-9 12q-15 27 -19 45.5t-4 50.5zM34 311q0 -66 57 -112q5 59 48 116t101 101q-37 26 -82 26q-49 0 -86.5 -40.5t-37.5 -90.5zM136 165q0 -54 31 -104t79.5 -85.5t102.5 -59.5t105 -34q75 -14 146 -14q123 0 233 39.5t185 122.5h-3q30 38 43 68.5 t13 72.5q0 54 -26.5 103t-69.5 84t-92 60.5t-100 38.5q-85 23 -181 23q-74 0 -151.5 -18t-150 -54t-118.5 -99.5t-46 -143.5zM322 238q0 37 22.5 59.5t59.5 22.5t62 -22.5t25 -59.5q0 -36 -25.5 -60t-61.5 -24t-59 24t-23 60zM358 74h44q25 -45 79.5 -68.5t111.5 -23.5 q58 0 110 23.5t84 68.5h41q-25 -62 -93 -96t-142 -34q-72 0 -141.5 34.5t-93.5 95.5zM694 238q0 38 23 60t61 22q34 0 58 -24t24 -58t-24 -59t-58 -25q-37 0 -60.5 23.5t-23.5 60.5zM949 706q0 -35 25 -60t60 -25q36 0 59 24.5t23 60.5q0 34 -24 58t-58 24t-59.5 -24.5 t-25.5 -57.5zM963 425q55 -36 95 -92.5t56 -119.5q59 43 59 96q0 58 -35.5 100t-92.5 42q-45 0 -82 -26z" />
|
42 |
-
<glyph unicode="?" horiz-adv-x="767" d="M2 27q0 22 12 64q23 87 86.5 158t147.5 103q-79 63 -79 161q0 86 62.5 146t148.5 60t148.5 -60t62.5 -146q0 -97 -77 -160q106 -38 177 -127t71 -198q0 -92 -73 -106q-3 -10 -13 -26q-6 -16 -23.5 -28.5t-48.5 -20.5t-49.5 -12t-56.5 -9t-39 -5q-2 0 -7 -1t-7 -1h-120 q-51 0 -129 16.5t-89 44.5q-17 17 -25 42q-25 5 -42 21q-38 15 -38 84z" />
|
43 |
-
<glyph unicode="@" horiz-adv-x="772" d="M4 308v103q0 87 86 200t171 160q78 44 187 44q44 0 88.5 -10t85.5 -31t66.5 -58t25.5 -85q0 -13 -2 -24.5t-7 -24t-9 -21t-14 -21t-14 -18.5t-17.5 -19.5t-16.5 -17t-18.5 -17.5t-17.5 -16h53h115q2 -72 2 -108q0 -253 -42 -326q-35 -61 -94.5 -108t-127.5 -70 q-39 -15 -56 -15h-84q-3 0 -48 17q-120 53 -120 174q0 4 0.5 11t0.5 10q-134 69 -180 215q-13 42 -13 56zM150 438q0 -40 9.5 -81t28.5 -79t52.5 -62t76.5 -24q12 0 39.5 15t49.5 15q14 0 51 -10.5t37 -19.5q0 -21 -26 -21q-130 0 -130 -76q0 -58 42 -87.5t103 -29.5 q47 0 92 16.5t73 49.5q42 50 42 164q0 19 -1 55.5t-1 54.5q0 48 5 80h-193q-1 -8 -1 -23q0 -11 1 -34t1 -35q0 -35 -8 -56q-5 -1 -17 -1q-48 0 -80 32.5t-44 74.5t-12 89q0 45 11.5 91t43 84t77.5 38q10 0 21 -3q-4 -22 -4 -34q0 -35 19 -58t53 -23t57 23t23 58q0 41 -31 70 t-70 40t-79 11q-135 0 -223 -85t-88 -219z" />
|
44 |
-
<glyph unicode="A" horiz-adv-x="860" d="M1 361q-1 -18 -1 -36q0 -68 20 -144q26 -97 83 -184q89 -136 172 -137q30 0 78 21t95 21h4q46 0 91 -20q47 -22 76 -22q49 1 91 41t85 104q31 48 65 121q-50 19 -85 57t-48 85q-10 35 -9 70v24q4 48 33.5 91.5t78.5 70.5q-38 48 -89 75t-103 27q-48 0 -105.5 -21.5 t-85.5 -21.5q-30 0 -90.5 21.5t-101.5 21.5q-58 0 -114.5 -33.5t-95.5 -92.5q-37 -56 -44 -139zM416 619q-3 15 -3 30q0 65 53 129q27 33 69.5 56t82.5 26q2 -15 2 -30q0 -69 -50 -132q-28 -36 -70 -58q-41 -22 -80 -21h-4z" />
|
45 |
-
<glyph unicode="B" horiz-adv-x="996" d="M0 135v369q0 130 93 223t223 93h221q65 -8 138.5 -57t104.5 -115q1 -2 5 -9.5t5 -10t3.5 -9.5t4 -12.5t3.5 -15.5t4 -22t4 -29q9 -70 26 -85q14 -13 71 -14.5t65 -7.5l14 -11l8 -17l3 -14l-2 -256q-1 -130 -93 -222.5t-222 -92.5h-363q-130 0 -223 92.5t-93 222.5z M259 140q0 -25 18 -42.5t43 -17.5h356q25 0 42.5 17.5t17.5 42.5t-17.5 42.5t-42.5 17.5h-356q-25 0 -43 -17.5t-18 -42.5zM259 502q0 -25 18 -43t43 -18h175q25 0 42.5 18t17.5 43t-17.5 42.5t-42.5 17.5h-175q-25 0 -43 -17.5t-18 -42.5z" />
|
46 |
-
<glyph unicode="C" d="M0 320q0 98 38 191q37 90 110 163q144 146 351 146q209 0 357 -146q71 -71 107 -162q37 -89 37 -192q0 -104 -36 -192q-36 -89 -107 -159q-74 -72 -166 -111q-94 -38 -192 -38q-97 0 -190 38q-89 37 -162 110t-110 162t-37 190zM90 320q0 -79 32 -155q31 -75 91 -133 q60 -60 133 -89q72 -31 155 -31q81 0 156 31q74 31 136 90q117 114 117 287q0 85 -31 157q-30 76 -88 132q-120 121 -290 121q-171 0 -288 -120q-59 -59 -91 -134q-32 -76 -32 -156zM215 320q0 71 42 113q41 42 105 42q92 0 133 -72l-67 -35q-11 24 -27 31q-15 9 -29 9 q-67 0 -67 -88q0 -39 17 -64q18 -24 50 -24q44 0 62 42l62 -31q-21 -36 -55 -57q-35 -21 -77 -21q-67 0 -108 41t-41 114zM504 320q0 71 42 113t105 42q93 0 132 -72l-66 -35q-11 23 -26 31q-17 9 -30 9q-67 0 -67 -88q0 -41 17 -64q17 -24 50 -24q43 0 61 42l63 -31 q-22 -37 -56 -57q-35 -21 -75 -21q-69 0 -109 41q-41 41 -41 114z" />
|
47 |
-
<glyph unicode="D" d="M0 320q0 136 67 251t182 182t251 67t251 -67t182 -182t67 -251t-67 -251t-182 -182t-251 -67t-251 67t-182 182t-67 251zM83 320q0 -156 105 -275q48 94 152 179t203 107q-15 35 -29 63q-172 -55 -372 -55q-39 0 -58 1q0 -4 -0.5 -10t-0.5 -10zM96 423q22 -2 65 -2 q167 0 317 45q-76 135 -167 225q-79 -40 -135.5 -111t-79.5 -157zM245 -9q113 -88 255 -88q74 0 147 28q-20 171 -78 331q-92 -20 -185.5 -101t-138.5 -170zM398 723q88 -91 163 -227q136 57 205 145q-116 96 -266 96q-51 0 -102 -14zM597 425q15 -32 34 -81q74 7 161 7 q62 0 123 -3q-8 136 -98 242q-65 -97 -220 -165zM656 274q51 -148 69 -304q79 51 129 131t60 173q-73 5 -133 5q-55 0 -125 -5z" />
|
48 |
-
<glyph unicode="E" horiz-adv-x="837" d="M0 511q0 40 15 58q9 14 26 21q18 9 47 9h94q15 0 26 11t11 26q0 21 -1 44v59q0 25 12 44q15 21 50 31q11 6 53 6h19q59 -2 98 -17q38 -16 45 -62q26 1 48 1q53 0 89 -5q97 -12 129 -24q42 -13 53 -67q10 -55 18 -210q5 -89 5 -147q0 -44 -3 -71q-16 -172 -43 -254 q-14 -42 -28 -68.5t-27.5 -42.5t-36.5 -23t-42.5 -8.5t-58.5 -1.5q-108 0 -145.5 25.5t-37.5 106.5q0 45 9.5 71.5t33 37.5t46.5 13q15 1 40 1h28q4 0 5.5 -1.5t0.5 -5t-2.5 -7.5t-3 -11t-1.5 -13q0 -9 2 -18.5t1 -12t-7 -2.5h-9.5h-10.5t-10 -0.5t-10 -1.5t-8.5 -2.5t-8 -4 t-5.5 -6t-4 -9t-1 -11.5q0 -14 4 -23t7.5 -14t18 -7t22 -2h32.5q57 0 73 13.5t16 63.5q0 76 -18.5 102.5t-56.5 31.5q-88 9 -119 20q-53 20 -53 119q0 2 -2.5 2t-2.5 -2q0 -67 -18 -120l-8 -24q-11 -25 -37 -26h-6q-24 0 -54 8q-127 16 -198 47q-24 11 -37 40 q-17 35 -35.5 128.5t-23.5 133.5q-4 33 -4 51zM6 630v2l183 180q0 1 1 1l-3 -6q-11 -20 -11 -48q0 -22 1 -103q0 -10 -10 -10h-93q-34 0 -59 -11q-5 -3 -9 -5zM574 340q21 3 46 3q45 -1 81 -18q0 85 -61 87h-3q-30 0 -44 -20q-15 -21 -19 -52z" />
|
49 |
-
<glyph unicode="F" horiz-adv-x="1053" d="M0 260q0 104 73 177t177 73t177 -73t73 -177t-73 -177t-177 -73t-177 73t-73 177zM552 260q0 104 73 177t177 73t177 -73t73 -177t-73 -177t-177 -73t-177 73t-73 177z" />
|
50 |
-
<glyph unicode="G" horiz-adv-x="646" d="M0 -1q0 87 89 155t215 68h54q-42 40 -42 86q0 29 16 58q-10 -1 -29 -1q-104 0 -170 65t-66 160q0 91 82 159t187 68h310l-69 -50h-98q47 -18 73.5 -68t26.5 -111q0 -93 -88 -162q-37 -29 -48 -46t-11 -42q0 -19 27 -48t54 -49q61 -43 84.5 -88t23.5 -113 q0 -90 -82 -156.5t-222 -66.5q-133 0 -225 50t-92 132zM112 32q0 -69 58.5 -117.5t145.5 -48.5q119 0 172.5 44t53.5 117q0 19 -4 32q-3 11 -7 20.5t-12 19t-14 16t-19.5 16.5t-20.5 15t-25 17.5t-26 17.5q-39 12 -77 12h-4q-87 0 -153 -47q-68 -48 -68 -114zM178 591 q11 -79 60.5 -136t109.5 -58h4q56 0 90 52q27 42 27 99q0 16 -2 34q-10 79 -59.5 134t-109.5 57h-4q-57 0 -91 -51q-27 -41 -27 -98q0 -16 2 -33z" />
|
51 |
-
<glyph unicode="H" horiz-adv-x="878" d="M0 194q0 -147 101 -257t260 -110q158 0 259 110q101 108 101 257q0 78 -27 146q-40 -25 -85 -34q22 -51 22 -114q0 -76 -36 -142q-37 -66 -99 -101q-62 -36 -135 -36q-75 0 -136 36q-63 37 -98 101q-37 65 -37 142q0 117 80 202q80 83 191 83q51 0 98 -19q4 39 27 86 q-57 21 -125 21q-160 0 -266 -118q-95 -107 -95 -253zM280 -59l56 -4q74 47 124.5 109t72.5 124t31 126q6 41 6 80q0 21 -2 40q-5 55 -12.5 98.5t-15.5 68.5l-9 25q-22 68 -43.5 119t-31.5 67l-11 17q39 -20 63 -48q23 -29 28 -53q4 -20 4 -39v-7q-1 -22 -6 -35l-5 -13 q4 -58 5 -112q0 -52 -5 -102q-9 -100 -30.5 -167t-49.5 -121.5t-57.5 -85.5t-54.5 -51.5t-41 -28.5zM555 578q4 40 23 64l18 25q12 14 39 26.5t48 18.5l21 6q36 8 66.5 35t43.5 51l13 23q41 -57 49 -129q4 -32 3 -57q0 -34 -6 -59l-11 -45q-12 -33 -33.5 -60t-36.5 -37 l-15 -11q-34 -20 -67 -20l-109 53q58 32 101 65t63.5 57.5t33 44.5t14.5 31l2 10q-18 -40 -48.5 -73t-62 -52t-60.5 -32.5t-47 -18.5l-18 -5q-25 44 -25 79q0 5 1 10z" />
|
52 |
-
<glyph unicode="I" horiz-adv-x="487" d="M-2 -148q102 6 130 27q30 21 30 107v666q0 82 -30 106q-28 23 -130 28v28h489v-28q-102 -4 -131 -28q-30 -24 -30 -106v-666q0 -86 30 -107t131 -27v-28h-489v28z" />
|
53 |
-
<glyph unicode="J" horiz-adv-x="1234" d="M0 145q0 161 184 347q117 116 236 162q56 23 97 23q45 0 72 -27q26 -26 26 -72q0 -31 -12 -72q-4 -14 3 -17.5t16 -0.5l10 4q96 40 170 40t106 -42q15 -22 15 -52q0 -31 -16 -71q-7 -10 -2.5 -17t8 -9t14.5 -5q62 -19 106 -62t44 -107q0 -59 -41 -120.5t-111.5 -112.5 t-178 -84t-228.5 -33q-131 0 -247.5 38.5t-193.5 115t-77 174.5zM125 97q10 -101 125 -161q92 -49 209 -49q29 0 60 3q153 15 255 97q92 75 92 165q0 9 -1 18q-10 100 -125 160q-93 49 -210 49q-29 0 -59 -3q-101 -10 -183 -51t-126 -101q-38 -53 -38 -109q0 -9 1 -18z M285 35q-13 29 -13 59q0 35 18 70q31 64 104 96q45 20 91 20q27 0 54 -7q76 -20 109 -82q17 -32 17 -66q0 -32 -15 -65q-31 -71 -109 -104q-44 -19 -88 -19q-34 0 -67 11q-73 23 -101 87zM341 54q6 -25 30 -35q13 -6 27 -6q12 0 24 4q28 9 43 33q10 16 10 32q0 7 -3 15 q-6 24 -30 34q-13 5 -26 5q-12 0 -25 -4q-27 -9 -41 -32q-11 -16 -11 -33q0 -7 2 -13zM482 133q3 -9 13 -13q5 -2 9.5 -2t9.5 2q11 4 16 13t2 18t-12 13q-9 3 -19.5 -0.5t-15.5 -12.5q-3 -6 -3 -12v-6zM803 754q-1 5 -1 10q0 13 8 25q10 16 29 21q34 7 68 7q51 0 100 -15 q83 -27 143 -93t78 -153q7 -35 7 -68q0 -51 -16 -98v-1q-6 -18 -23 -27q-11 -5 -22 -5q-7 0 -15 2q-19 6 -27 23q-5 11 -5 21q0 8 2 15v1q11 34 11 70q0 23 -4 48q-13 62 -56 109t-102 66q-35 10 -70 10q-24 0 -49 -5q-5 -1 -10 -1q-14 0 -26 8q-16 11 -20 30zM843 597 q-1 5 -1 10q0 10 6 21q9 14 26 18q19 4 37 4q67 0 115 -53q29 -33 38 -75q3 -17 3 -33q0 -24 -8 -48q-5 -16 -20 -23q-9 -5 -18 -5q-7 0 -13 2q-16 5 -24 20q-4 9 -4 18q0 7 2 13q4 14 4 26q0 28 -21 50q-22 26 -54 26q-10 0 -20 -2q-5 -1 -9 -1q-11 0 -21 7q-14 9 -18 25z " />
|
54 |
-
<glyph unicode="K" horiz-adv-x="1086" d="M0 -182v1000h257v-371h229q85 123 257 371h286l-328 -477q0 -12 96.5 -143t192.5 -256l96 -124h-343q-47 66 -143 199.5t-143 200.5h-200v-400h-257z" />
|
55 |
-
<glyph unicode="L" horiz-adv-x="1040" d="M-5 699q0 50 35 82.5t91 32.5q55 0 89 -32q35 -33 35 -86q0 -48 -34 -80q-35 -33 -92 -33h-1q-55 0 -89 33t-34 83zM8 -176v668h222v-668h-222zM353 -176h222v373q0 35 8 54q14 34 42.5 57.5t71.5 23.5q112 0 112 -151v-357h222v383q0 148 -70 224.5t-185 76.5 q-129 0 -201 -111v-2h-1l1 2v95h-222q2 -32 2 -199t-2 -469z" />
|
56 |
-
<glyph unicode="M" horiz-adv-x="1348" d="M0 276q0 35 2 105q24 8 48 8h18q17 -23 40 -70t31 -61q2 7 8 36.5t10 42.5t11 36.5t15.5 40.5t19.5 31q28 -5 46 -5q6 0 11 1q24 -54 45.5 -163t38.5 -155q-1 0 -4 1l-3 1q-9 0 -26 -5.5t-22 -6.5q-40 101 -62 203q-15 -26 -15 -89t-11 -88l-5 2q-8 0 -22 -2t-21 -2h-18 q-27 48 -57 89q-3 -6 -3 -15t2.5 -26t2.5 -25l-1 -12q-30 -15 -52 -15q-7 0 -10 1q-17 56 -17 142zM355 200q0 27 8 57.5t28 57t47 26.5q10 0 28 -5t23 -6q9 -40 9 -81q0 -28 -6 -55q-12 4 -38 4.5t-37 3.5q-5 -20 -5 -37q0 -21 10 -37t30 -16q9 0 26 5t26 5q17 0 23 -14 q-42 -16 -82 -16q-46 0 -68 30t-22 78zM413 228l8 1q3 0 8 -2t7 -2l7 3q2 14 2 22q0 18 -5 40q-22 -25 -27 -62zM523 174q0 123 78 182q32 -3 60 -23q-1 -17 -8 -67q-5 -39 -5 -65v-14q-20 -2 -29 -2q-8 0 -43 5q-5 -12 -5 -23q0 -22 17 -37.5t39 -15.5q26 0 41 23 q18 -6 21 -17q-22 -21 -63 -21q-37 0 -70 20t-33 55zM579 217q4 -6 14 -6h9q9 19 9 49q0 13 -6 39q-3 -8 -10 -25t-11.5 -30.5t-4.5 -26.5zM678 236q-2 26 23 26q6 0 18 -1t17 -1q3 15 3 31q0 29 -7.5 86.5t-7.5 86.5q0 43 10 72q5 -3 26.5 -5.5t40.5 -24.5q-6 -26 -6 -67 q0 -20 4 -81q2 -35 2 -61q0 -20 -1 -34h6q7 0 9 6t2 12.5t4 6.5q8 0 18.5 -8.5t22.5 -21.5t15 -16q-9 -7 -40.5 -9t-38.5 -4q-1 -12 -1 -36q0 -16 0.5 -33t1.5 -38t1 -33q-8 -1 -23 -2t-22 -2v10v10q0 21 -3 57q-4 44 -4 61q-6 2 -32 3.5t-38 9.5zM893 244q0 20 2 58 q11 -1 20 -5t21 -10.5t18 -9.5l-1 -27q0 -59 9 -116q19 7 31 23t16.5 41.5t5.5 42t2 44.5v11q3 -1 9 -1q20 -2 49 -25q0 -3 0.5 -9.5t0.5 -9.5q0 -15 -4 -30t-7.5 -22t-14.5 -25t-14 -23q-15 -12 -34 -42q-21 -7 -38 -7q-71 0 -71 142zM1093 136q7 6 24 10q0 3 1 9 q4 35 7 56.5t12.5 59t22 59.5t35.5 39.5t53 17.5q34 0 76 -24q17 -37 17 -75q0 -66 -46.5 -119t-112.5 -68q-2 -32 -2 -48q0 -73 18 -117q-8 2 -37 2q-15 0 -22 2q-9 21 -16.5 96t-29.5 100zM1183 161q39 10 65.5 48t26.5 79q0 30 -15 56q-23 -21 -39.5 -55.5t-23 -60 t-14.5 -67.5z" />
|
57 |
-
<glyph unicode="N" horiz-adv-x="1213" d="M-9 598q10 8 25 12q14 4 25 4h9q10 0 24 -1q22 -1 32 -1q6 0 38 2q16 1 29 0.5t23 -0.5q20 -2 32 -8q6 -3 13 -13t11.5 -19t11.5 -25.5t10 -21.5q38 -82 94 -163q2 -3 7 -11t8.5 -12.5t9 -11.5t10.5 -11t10.5 -8.5t11.5 -5.5t12 0q28 5 31 117q1 19 1 35q0 74 -15 102 q-6 11 -15.5 17.5t-24.5 12t-23 10.5q14 28 49.5 37t96.5 9h25h28t26 -0.5t27 -3l22 -5.5t19.5 -9t12.5 -14q9 -18 11 -42q0 -7 1 -14q0 -20 -3 -52q-4 -42 -4 -52q-3 -23 -3 -46q0 -18 2 -38q4 -44 30 -61q9 1 16.5 4t15.5 11t11 11.5t12.5 16.5t10.5 14q47 62 94 163 l9 22.5t11.5 26.5t12 19.5t15.5 13.5q16 7 38 7h9q20 0 46 -2q32 -2 47 -2q9 0 27.5 1t32.5 1.5t29.5 -0.5t25.5 -6t14 -13q3 -6 3 -13q0 -29 -35 -87q-17 -29 -34.5 -52.5t-45.5 -58t-37 -46.5q-2 -2 -14 -18t-17.5 -24t-11.5 -22.5t-5 -26.5q0 -8 3 -15t9.5 -15t10 -12 t13.5 -13t12 -11q71 -65 112 -117q40 -52 40 -75q0 -33 -51 -41q-26 -4 -53 -4q-21 0 -43 3q-20 2 -37 2q-26 0 -45 -5h-6q-66 11 -139 94q-4 4 -17 20.5t-22 25.5t-23 17t-27 6q-23 -4 -30.5 -29t-9 -59.5t-9.5 -48.5q-13 -24 -79 -24q-28 0 -66 4q-78 8 -141.5 40 t-100.5 67.5t-81 92.5q-104 133 -197 322q-3 6 -11 22.5t-12 25.5t-9.5 23.5t-8 28t-2.5 26.5z" />
|
58 |
-
<glyph unicode="O" horiz-adv-x="852" d="M2 287q-1 19 -2 40q0 33 4 73q6 66 24 123q2 7 6.5 18.5t21.5 44t37.5 62t54.5 64.5t72 59q40 25 94 39q41 11 84 10q15 0 30 -1q107 0 191 -44t133.5 -116t74.5 -155t25 -169q0 -279 -160 -425q-55 -50 -121 -68t-157 -21h-11q-39 0 -83 12q-50 14 -105 44t-103 88 t-75 136q-3 9 -8 25t-14 64.5t-13 96.5zM224 189q4 -55 8 -79.5t7 -31.5q8 -66 30 -112.5t47.5 -66.5t49.5 -30.5t40 -10.5h16q54 1 91.5 22.5t59.5 66t33.5 100.5t17.5 139q2 81 2 143q0 47 -1 84q-3 86 -9 123l-5 37q-8 37 -15.5 62t-22.5 55t-33 48t-47.5 30.5 t-67.5 12.5q-10 1 -19 1q-30 0 -56 -14q-34 -20 -53.5 -51.5t-33 -63.5t-17.5 -55l-5 -24q-6 -46 -10 -110t-5 -105v-41q-3 -44 -3 -80q0 -26 1 -49z" />
|
59 |
-
<glyph unicode="P" horiz-adv-x="1049" d="M0 207q10 139 168 173q12 89 42.5 192t71.5 146q48 49 120 75.5t146 26.5q86 0 164 -39t117 -110q19 -36 41.5 -130.5t30.5 -154.5q15 -6 34 -6q30 0 30 29q0 11 -6 33.5t-5 35.5v4h1q27 0 61 -51q34 -52 34 -81q0 -20 -9.5 -35.5t-19 -24.5t-33 -17.5t-32.5 -10.5 l-36 -8q-5 -1 -8 -2v-26q0 -173 -77 -253l25 -25q4 -2 25 -11.5t35.5 -18.5t18.5 -18q-65 -51 -132 -51q-34 0 -75 17q-88 -37 -180 -37q-118 0 -234 61q-36 -8 -55 -19q-7 -4 -26.5 -18t-36.5 -23.5t-28 -9.5q-3 18 -3 37q0 79 53 126q-60 99 -62 257l-7 1h-3 q-30 1 -76 -17q-48 -18 -64 -19q-4 0 -10 2zM232 114q0 -13 7 -27q27 -96 89 -138q43 -29 106 -46.5t117 -17.5q66 0 145.5 28t119.5 72q68 73 68 257q0 226 -92 379q-12 20 -17.5 27.5t-19 15.5t-32.5 8q-50 0 -107 -61q-76 47 -140 47q-59 0 -104.5 -43t-71 -104.5 t-42 -141t-21.5 -141t-5 -114.5zM413 521q0 22 15.5 37.5t36.5 15.5q22 0 37.5 -15.5t15.5 -37.5t-15.5 -37t-37.5 -15q-21 0 -36.5 15t-15.5 37zM469 539q0 -12 12 -12q5 0 8.5 3.5t3.5 8.5t-3.5 9t-8.5 4q-12 0 -12 -13zM563 479l2 2l-1 -3zM568 484l52 52l51 -52 q-22 -7 -50 -7q-29 0 -53 7zM570 462q27 -5 50 -5q22 0 49 5l-49 -49zM675 478v3l1 -2zM702 521q0 22 15.5 37.5t37.5 15.5t37.5 -15.5t15.5 -37.5t-15.5 -37t-37.5 -15t-37.5 15t-15.5 37zM758 539q0 -5 4 -8.5t8 -3.5q5 0 9 3.5t4 8.5q0 13 -13 13q-5 0 -8.5 -4t-3.5 -9z " />
|
60 |
-
<glyph unicode="Q" horiz-adv-x="869" d="M3 -163v957q121 21 297 21q140 0 235.5 -24t165.5 -77q165 -125 165 -370q0 -260 -161 -395q-148 -126 -451 -126q-143 0 -251 14zM223 -1q19 -4 77 -4h4q153 0 240 85q89 86 89 256q0 154 -81.5 232t-228.5 78q-66 0 -100 -9v-638z" />
|
61 |
-
<glyph unicode="R" d="M0 -46q0 55 39 94t94 39t94 -39t39 -94q0 -56 -39 -94.5t-94 -38.5t-94 39t-39 94zM0 289v191q179 0 331 -88.5t240.5 -240.5t88.5 -331h-192q0 194 -137 331q-138 138 -331 138zM0 628v192q203 0 388 -79.5t319 -213.5t213.5 -319t79.5 -388h-192q0 164 -64 314 t-172.5 258t-258 172t-313.5 64z" />
|
62 |
-
<glyph unicode="S" horiz-adv-x="986" d="M0 547q0 113 80 193t193 80q78 0 145 -42q36 7 80 7q195 0 333 -138t138 -332q0 -49 -11 -101q28 -59 28 -121q0 -113 -80 -193t-193 -80q-68 0 -129 32q-45 -8 -86 -8q-194 0 -332 138t-138 333q0 47 9 94q-37 65 -37 138zM221 181q0 -41 30 -85q71 -104 246 -104 q50 0 96.5 11t87.5 34t66 63.5t25 94.5q0 58 -29.5 98t-73.5 58t-95.5 32.5t-95.5 23t-73.5 26t-29.5 44.5q0 33 36.5 49t74.5 16q40 0 66 -12.5t38 -30t21 -35t24.5 -30t39.5 -12.5q27 0 47.5 19t20.5 46t-15 54q-30 55 -95 80t-138 25q-46 0 -89 -9t-83 -29t-64.5 -56.5 t-24.5 -86.5q0 -66 40 -106.5t97 -57t114.5 -28.5t97.5 -33.5t40 -58.5q0 -29 -23 -49t-50.5 -27t-56.5 -7q-38 0 -64.5 10.5t-38.5 27t-22.5 35t-18 35t-22.5 27t-37 10.5q-28 0 -48.5 -17t-20.5 -45z" />
|
63 |
-
<glyph unicode="T" horiz-adv-x="1230" d="M0 -83q30 -3 60 -3q176 0 314 108q-82 1 -147 50t-89 125q20 -4 47 -4q35 0 67 9q-88 17 -145.5 86.5t-57.5 160.5v3q53 -30 115 -31q-52 34 -82.5 89.5t-30.5 120.5q0 68 35 127q94 -117 229.5 -186.5t290.5 -77.5q-7 33 -7 58q0 104 74 178t179 74q109 0 184 -80 q87 18 160 62q-28 -91 -110 -140q73 9 144 40q-48 -75 -125 -131v-33q0 -101 -29.5 -202.5t-90 -194t-144.5 -164.5t-201.5 -114.5t-252.5 -42.5q-209 0 -387 113z" />
|
64 |
-
<glyph unicode="U" horiz-adv-x="859" d="M-15 103q0 54 6 162q4 53 38 86.5t87 36.5q100 5 301 5t301 -5q53 -3 87 -36.5t38 -86.5q5 -90 5 -162t-5 -162q-4 -53 -38 -86.5t-87 -36.5q-100 -5 -301 -5t-301 5q-53 3 -87 36.5t-38 86.5q-6 108 -6 162zM52 244h61v-326h59v326h61v55h-181v-55zM117 847h60l38 -152 h4l36 152h60l-46 -148q-23 -73 -23 -75v-158h-59v151q-2 14 -5.5 25.5t-9 26.5t-8.5 25zM233 -38q0 -48 36 -48q32 0 61 35v-31h52v281h-52v-214q-21 -21 -31 -21q-14 0 -14 19v216h-52v-237zM312 537v146q0 34 22 52.5t56 18.5q33 0 53.5 -20t20.5 -53v-145 q0 -36 -20 -56.5t-56 -20.5q-35 0 -55.5 21.5t-20.5 56.5zM366 530q0 -23 22 -23q23 0 23 25v153q0 9 -7 15t-16 6t-15.5 -5.5t-6.5 -14.5v-156zM433 -82h53v21q20 -25 50 -25q47 0 47 62v156q0 71 -51 71q-25 0 -46 -27v123h-53v-381zM486 -29v176q11 11 22 11q22 0 22 -28 v-148q0 -24 -19 -24q-14 0 -25 13zM509 510v237h52v-215q0 -19 14 -19q13 0 31 21v213h52v-281h-52v31q-29 -35 -61 -35q-36 0 -36 48zM623 -3q0 -38 19 -62.5t57 -24.5q78 0 78 87v21h-54q0 -2 0.5 -13.5t-0.5 -16.5t-2.5 -13.5t-6.5 -12t-14 -3.5q-23 0 -23 40v53h100v72 q0 38 -18.5 60t-56.5 22q-36 0 -57.5 -23t-21.5 -59v-127zM677 96v30q0 31 23 31t23 -31v-30h-46z" />
|
65 |
-
<glyph unicode="V" horiz-adv-x="1146" d="M0 548q55 65 110 116t95.5 77.5t72.5 43t48 21.5l17 4q12 2 24 2q19 0 35 -6q26 -10 42.5 -34.5t29 -55t21.5 -72t15 -77.5t13.5 -79.5t14.5 -70.5q32 -125 51.5 -177.5t41.5 -52.5q24 0 66.5 55.5t93.5 151.5q26 48 26 91q0 13 -2 23q-9 52 -51 65q-11 4 -24 4 q-35 0 -83 -26q22 130 134 209q85 60 174 60q12 0 24 -1q102 -8 139 -90q18 -38 18 -88q0 -29 -6 -61q-18 -102 -69.5 -208t-113 -187.5t-132.5 -155t-123.5 -117t-90.5 -68.5q-42 -24 -78.5 -24t-69.5 21t-56 48t-38 57q-18 38 -97.5 298.5t-96.5 280.5q-1 2 -4 4 t-13.5 4.5t-24 0t-36.5 -14t-50 -32.5z" />
|
66 |
-
<glyph unicode="W" horiz-adv-x="1233" d="M0 -73l105 371q35 20 85.5 31t83.5 13l34 1q50 0 104 -10q101 -20 144 -61l-104 -370q-36 28 -79.5 45.5t-68.5 20.5l-26 4q-34 3 -65 3q-16 0 -42.5 -1.5t-83.5 -13.5t-87 -33zM126 404l105 371q35 20 86 31.5t84 12.5l33 1q51 0 104 -10q101 -20 144 -61l-104 -371 q-36 28 -79.5 45.5t-68.5 20.5l-26 4q-35 3 -64 3q-16 0 -42.5 -1.5t-84 -13t-87.5 -32.5zM557 -109l104 371q37 -28 80.5 -45.5t68.5 -20.5l25 -4q34 -3 65 -3q16 0 42.5 1.5t84 13t86.5 32.5l-104 -371q-35 -20 -86 -31t-84 -12l-33 -2q-51 0 -104 10q-101 20 -145 61z M677 366l104 370q37 -28 80.5 -45.5t68.5 -20.5l25 -4q34 -3 65 -3q16 0 42.5 1.5t83.5 13t87 32.5l-104 -370q-35 -20 -86 -31.5t-85 -12.5l-33 -2q-52 0 -103 11q-101 19 -145 61z" />
|
67 |
-
<glyph unicode="X" horiz-adv-x="899" d="M-50 120h219l173 286l-130 229h-219l130 -229zM312 210l346 608h232l-345 -608l222 -392h-232z" />
|
68 |
-
<glyph unicode="Y" horiz-adv-x="1379" d="M0 694l6 -19q4 -6 7.5 -10t5.5 -5l2 -2l19 -10h111l287 -344q11 -12 11 -25v-192q0 -8 -2.5 -12t-5.5 -5h-3q-112 0 -142 -3q-10 0 -10 -9v-55h516v57q0 3 -2.5 5t-4.5 2h-2h-144q-9 0 -9 15v202q-1 3 1.5 7t5.5 7l3 3q11 11 264 249h133q9 0 18 7l17 19q6 7 6 18v14 q-1 3 -3 4.5t-3 1.5h-2h-436l-7 -6q-1 -6 1.5 -12.5t5.5 -9.5l2 -4l23 -23l18 -7h115l-207 -195l-228 291h41q13 -1 22 4l68 21q1 0 3 1t4.5 5t2.5 9v14q0 3 -2 5t-4 2h-3h-489q-8 -1 -10 -7v-8zM1190 803l185 -7l-83 -567l-61 3zM1203 40l4 110l110 -4l-4 -110z" />
|
69 |
-
<glyph unicode="Z" horiz-adv-x="870" d="M0 19q0 22 43 51q7 15 16.5 35.5t16 33t6.5 15.5q0 1 2.5 13.5t7 32t9.5 42.5t12.5 52t15.5 54q13 41 31 75t29 47.5t17 18.5q10 8 3 11q-9 6 -22 21.5t-29 60.5q-11 32 -11 70q0 14 2 29q2 16 7 3q3 -8 6 -25q4 -33 26.5 -74.5t60.5 -56.5q1 0 19.5 7t82 19t156.5 19 q1 37 7 76q-7 5 -11 13.5t-5 14.5l-1 6q-8 -14 -20 -13q-8 1 -8 33q0 17 2 43q1 20 18.5 32t32.5 13q2 1 5.5 2.5t13 3.5t17.5 2q14 15 45 19q19 3 35 3q11 0 20 -1l23 -3q11 1 22 1l40 -4q31 -8 47 -17l15 -9h4q27 0 41 -27q10 -17 16 -41q2 -10 3 -20q0 -14 -5 -29h-4 q-5 5 -10 17q-4 -12 -9.5 -21.5t-8.5 -12.5l-4 -4v-6q0 -44 -27 -102q-3 -8 2 -21q7 -16 23 -86q16 -66 15 -95v-3q-1 -31 -14.5 -65.5t-27.5 -48.5q1 -5 0 -10q0 -32 -21 -72q-7 -11 -17.5 -44t-14.5 -53q-5 -26 -5 -42q0 -14 4 -20q1 -1 10 -12.5t14.5 -20.5t4.5 -15 q-1 -9 -16.5 -18.5t-25.5 -9.5q-12 0 -27 7t-20 19q-6 19 -6 38q0 14 3 28q5 19 11 49q6 29 12 87q2 20 2 38q0 31 -7 51q-5 -2 -15 -5.5t-41.5 -9t-65.5 -5.5q-6 -30 -13 -57t-11 -38l-5 -12q-5 -8 -5 -113q0 -41 14 -103q9 -6 13 -14t4 -13v-5q-2 -13 -15.5 -20.5 t-29.5 -7.5t-31 11t-15 28q0 3 2 49q1 28 0 48v23q-4 78 -7 91q-26 97 -27 143q-7 0 -13 5l-53 -56q1 -5 4 -15.5t5 -18.5t2 -11q0 -8 14 -14q12 -5 25.5 -15t12.5 -20q-1 -12 -23 -14h-6q-20 0 -40 9q-2 1 -6.5 11t-9.5 24.5t-9.5 28.5t-8.5 27t-5 15q-5 21 -1 29 q15 41 15 60v4q-1 14 -22.5 32t-39.5 18q-7 0 -16.5 -5t-16 -10.5t-19.5 -16t-16 -13.5q-15 -11 -38 -32t-24 -22q-5 -3 -37 -61t-41 -81q0 -1 -2.5 -9.5t-4.5 -15t-7.5 -16t-11.5 -16t-15.5 -10.5t-21.5 -4q-22 1 -22 19z" />
|
70 |
-
<glyph unicode="[" horiz-adv-x="999" d="M0 297q0 75 23 155.5t62 144.5q62 104 182.5 163.5t248.5 59.5q130 0 249.5 -81.5t182.5 -201.5q50 -86 50 -214q0 -150 -71 -266t-192 -177t-270 -60q20 36 61 109.5t73.5 130.5t64.5 108l1 2q3 5 12 18.5t12.5 19.5t9.5 17t9.5 21t5.5 21q6 24 6 48q0 80 -48 142 l275 81q-285 0 -428 -1q-7 1 -22 1q-99 0 -165.5 -74t-55.5 -173q-2 9 -2 28q0 44 15 77l-204 201l198 -341q19 -72 79.5 -117.5t134.5 -45.5q17 0 33 3l-66 -276q-115 0 -223 71t-175 176q-66 102 -66 230zM312 316q0 -77 54.5 -131.5t130.5 -54.5t130.5 54.5t54.5 131.5 q0 76 -54 130.5t-131 54.5t-131 -54.5t-54 -130.5z" />
|
71 |
-
<glyph unicode="\" horiz-adv-x="831" d="M0 -155q0 27 31 27q12 0 21 0.5t28.5 7t32 17.5t23 35t10.5 57v614q0 127 -92 135q-15 1 -21.5 6.5t-7 10t-0.5 15.5q-2 25 23 25q4 0 62 -1.5t137 -3t135 -1.5q115 0 196.5 5.5t121 10.5t52.5 5q31 0 31 -31q0 -3 -6 -25.5t-6 -41.5q0 -16 3.5 -47t3.5 -44 q0 -18 -12 -27.5t-24 -9.5q-20 0 -21 28q0 4 0.5 14t0 14.5t-3 14.5t-7.5 15t-15 13t-24 12.5t-36 10t-50.5 8.5t-67 5t-85.5 2q-80 0 -115.5 -7.5t-43 -20t-7.5 -42.5q0 -29 0.5 -134.5t0.5 -115.5q0 -19 6.5 -26.5t22.5 -7.5h233q38 0 65.5 21.5t30.5 66.5q1 16 5 24 t8.5 9.5t14.5 1.5q14 0 22.5 -11.5t6.5 -33.5q0 -7 -4.5 -46t-4.5 -65q0 -25 4.5 -67t4.5 -57q0 -26 -22.5 -29.5t-29.5 23.5q-4 17 -6.5 24.5t-11.5 24t-20.5 24.5t-33.5 15.5t-51 7.5h-207q-18 0 -26 -11t-8 -38v-265q0 -43 22 -69t85 -26q5 0 50 -0.5t63 0t60 3t65.5 7.5 t52.5 15.5t47 24.5q24 19 34.5 46.5t19.5 80.5q4 19 26 18q28 0 37 -32q3 -11 2 -24q-1 -12 -16.5 -63.5t-15.5 -74.5q0 -6 0.5 -21.5t0.5 -23t-2 -18t-8 -15t-15 -4.5q-2 0 -33.5 7t-103.5 7q-66 0 -322 -1.5t-285 -1.5q-19 0 -25 5.5t-6 18.5z" />
|
72 |
-
<glyph unicode="]" horiz-adv-x="1040" d="M2 69v576q0 1 3 19l339 -290l-338 -325q-4 14 -4 20zM47 704q7 3 17 3h913q9 0 18 -3l-340 -291l-45 -36l-89 -73l-89 73l-45 36zM48 10l341 327l132 -107l132 107l341 -327q-8 -3 -17 -3h-913q-8 0 -16 3zM698 374l338 290q3 -9 3 -19v-576q0 -9 -3 -20z" />
|
73 |
-
<glyph unicode="^" horiz-adv-x="1106" d="M0 207v151q0 10 7 17.5t18 7.5h265l-115 -201h-150q-11 0 -18 7t-7 18zM122 -37l66 -38zM132 6.5q-3 10.5 2 19.5l304 528q5 9 15 11.5t19 -2.5l65 -37q10 -5 12.5 -15.5t-2.5 -19.5l-303 -528q-5 -9 -15.5 -11.5t-19.5 2.5l-65 38q-9 4 -12 14.5zM440 182l115 201h67 l94 -201h-276zM518 807q1 9 6 12q10 5 35.5 -31t71.5 -116t62 -105q28 -44 75.5 -130.5t91 -169t43.5 -83.5q11 -19 -2 -36t-31 -24q-18 -8 -24 -9t-30 7q-30 15 -190 393q-5 11 -13.5 30.5t-17 38t-18.5 42t-18.5 44t-17 42t-13.5 39t-8 32.5t-2 24zM846 383h235 q10 0 17.5 -7.5t7.5 -17.5v-151q0 -10 -7.5 -17.5t-17.5 -7.5h-133q-4 16 -8 23l-24 46q-64 121 -70 132zM859 66.5q3 10.5 13 15.5l37 19q10 5 21 1.5t16 -13.5l31 -60q12 -24 -10 -39l-27 -16q-10 -5 -21 -2.5t-17 12.5l-40 62q-6 10 -3 20.5zM935.5 -78q0.5 16 4 21 t12.5 14l24 9q61 12 72 -70q3 -32 -1 -76q-4 12 -44 29.5t-55 38.5q-13 18 -12.5 34z" />
|
74 |
-
<glyph unicode="_" horiz-adv-x="1084" d="M-1 2v89v54v207h140v-207h805v207h141v-207v-54v-89h-1086z" />
|
75 |
-
<glyph unicode="`" d="M0 298q0 141 67 260.5t182 189t251 69.5t251 -69.5t182 -189t67 -260.5q0 -4 -0.5 -10t-0.5 -10q-8 208 -152.5 353t-346.5 145t-346.5 -145t-152.5 -353q0 4 -0.5 10t-0.5 10zM183 299q0 136 93 232.5t224 96.5t224 -96.5t93 -232.5q0 -3 -0.5 -10t-0.5 -10 q-8 129 -99 219t-217 90t-217 -90t-99 -219q0 3 -0.5 10t-0.5 10zM349 104q0 33 4.5 59t10.5 43t18.5 29t23 18t28.5 9.5t31 4t35 0.5t35 -0.5t31 -4t28.5 -9.5t23 -18t18.5 -29t10.5 -43t4.5 -59q0 -118 -44.5 -202.5t-106.5 -84.5t-106.5 84.5t-44.5 202.5zM396 384 q0 44 30.5 76t73.5 32t73.5 -32t30.5 -76t-30.5 -76t-73.5 -32t-73.5 32t-30.5 76z" />
|
76 |
-
<glyph unicode="a" horiz-adv-x="1099" d="M1 44q5 8 16 1q250 -145 544 -145q196 0 387 73q5 2 14.5 6t13.5 6q15 6 23.5 -6t-5.5 -22q-18 -13 -46 -30q-86 -51 -192 -79t-207 -28q-156 0 -295 54.5t-249 153.5q-6 5 -6 10q0 3 2 6zM302 329q0 69 34 118t93 74q54 23 133 33q27 3 88 8v17q0 64 -14 86 q-21 30 -66 30h-8q-33 -3 -57 -21t-31 -50q-4 -20 -20 -23l-115 14q-17 4 -17 18q0 3 1 7q17 89 83.5 132t155.5 48h25q114 0 178 -59q10 -10 18.5 -21.5t13.5 -20.5t9 -26t6 -23.5t3 -28t1 -25.5v-30v-28v-184q0 -26 7.5 -47.5t14.5 -31t23 -30.5q6 -9 6 -16q0 -8 -8 -14 q-83 -72 -90 -78q-12 -9 -29 -2q-14 12 -24.5 23t-15 16t-14.5 19.5t-14 19.5q-56 -61 -110 -76q-34 -10 -84 -10q-77 0 -126.5 47.5t-49.5 134.5zM474 349q0 -39 19.5 -62.5t52.5 -23.5q3 0 8.5 1t7.5 1q42 11 65 54q11 19 16.5 41.5t6 36.5t0.5 46v25q-58 0 -88 -8 q-88 -25 -88 -111zM894 27q2 4 6 8q25 17 48 23q38 10 74 11q10 1 19 -1q45 -4 54 -15q4 -6 4 -18v-7q0 -35 -19 -82.5t-53 -76.5q-5 -4 -9 -4q-2 0 -4 1q-6 3 -3 11q37 87 37 121q0 11 -4 16q-10 12 -56 12q-17 0 -40 -2q-25 -3 -46 -6q-6 0 -8 2t-1 4q0 1 1 3z" />
|
77 |
-
<glyph unicode="b" horiz-adv-x="1314" d="M-2 438q0 55 38.5 94t93.5 39q47 0 83.5 -29.5t46.5 -74.5l502 -202q32 19 68 19q2 0 6.5 -0.5t7.5 -0.5l110 159q1 73 53 124.5t125 51.5q74 0 126 -52t52 -126t-52 -126t-126 -52l-170 -124q-5 -51 -43 -85.5t-89 -34.5q-48 0 -84 30t-46 75l-502 201q-32 -19 -68 -19 q-55 0 -93.5 39t-38.5 94zM33 438q0 -40 28.5 -68.5t68.5 -28.5q9 0 21 2l-41 16v1q-28 13 -40 42q-6 14 -6 28q0 15 6 30q12 30 40 42q15 7 31 6q13 0 27 -5v1l49 -20q-29 52 -87 52q-40 0 -68.5 -28.5t-28.5 -69.5zM743 105q29 -52 87 -52q40 0 69 28.5t29 69.5 q0 40 -28.5 68.5t-69.5 28.5q-14 0 -21 -2l40 -16q30 -12 43 -42q7 -15 7 -30q0 -14 -6 -29q-12 -31 -42 -43q-15 -6 -30 -6q-14 0 -29 6q-8 3 -24.5 9.5t-24.5 9.5zM1013 440q0 -49 35 -84t84 -35q50 0 85 35t35 84t-35 84t-85 35q-49 0 -84 -35t-35 -84zM1038 441 q0 -40 27.5 -68t67.5 -28q39 0 67 28t28 68q0 39 -28 67t-67 28q-40 0 -67.5 -28t-27.5 -67z" />
|
78 |
-
<glyph unicode="c" horiz-adv-x="1107" d="M-2 251q0 104 73.5 178t176.5 74l1 -1q0 3 -0.5 7t-0.5 6q0 118 82.5 201t199.5 83q103 0 181 -66t96 -166h17q117 0 199.5 -83t82.5 -201t-82.5 -201t-199.5 -83q-8 0 -12 1v-1h-555h-9h-9h-5v1q-99 5 -167.5 78t-68.5 173z" />
|
79 |
-
<glyph unicode="d" horiz-adv-x="1013" d="M-12 286l214 163l-214 162l311 203l203 -174l208 174l302 -193l-198 -165l198 -170l-307 -185l-203 156l-203 -156zM201 35v57l94 -55l203 155l1 -1v-355zM206 451l294 -185l296 196l-294 169zM499 -164l1 355l2 1l202 -155l100 60v-63z" />
|
80 |
-
<glyph unicode="e" horiz-adv-x="1407" d="M0 181q0 31 5 53.5t21.5 46.5t46.5 38.5t83.5 24t128.5 9.5q88 0 148 -13q39 -8 58 -18v-161h-293q0 -21 2 -33.5t9 -30.5t26.5 -27t49.5 -9q85 0 85 61h63h2h56v-89q-27 -13 -56 -19q-68 -15 -150 -15q-92 0 -151 12.5t-87 39t-37.5 56t-9.5 74.5zM198 215h178 q0 18 -1.5 26.5t-8.5 23.5t-27.5 22t-53.5 7q-31 0 -50.5 -7.5t-26.5 -23t-8.5 -24t-1.5 -24.5zM491 33v89h78q-1 -51 -74 -87q-2 -2 -4 -2zM491 33q2 0 4 2q73 36 74 87h-78v39h81q1 12 1 23q0 45 -13 76q-16 39 -69 62v183h107v-203h2q31 44 88 44q43 0 69 -26 q-40 -29 -40 -102q0 -104 76 -122q-1 -31 -5.5 -54t-15.5 -47t-32.5 -36.5t-53.5 -12.5q-64 0 -91 50h-1v-42h-103v79zM491 161v161q53 -23 69 -62q13 -31 13 -76q0 -11 -1 -23h-81zM598 150q0 -77 8.5 -107.5t35.5 -30.5q28 0 37 30.5t9 107.5v5q0 35 -1 51.5t-5 37 t-13.5 28.5t-26.5 8q-16 0 -25.5 -8.5t-13 -29.5t-4.5 -38t-1 -54zM717 218q0 73 40 102q17 -18 26 -53t10 -55.5t0 -63.5v-52q-76 18 -76 122zM725 377q0 69 40 94q34 26 101 26q4 0 49 -3l107 -218v-102q0 -14 2 -39t2 -34h-100l-5 52h-2q-33 -58 -100 -58q-18 0 -26 1v52 q0 43 -0.5 63.5t-9.5 55.5t-26 53q38 29 135 29h24v31q0 29 -8.5 43t-35.5 14q-26 0 -33 -15.5t-7 -44.5h-107zM822 223q0 -62 41 -62q13 0 22.5 4.5t15.5 14t9.5 18t4.5 24t1.5 23.5t0 24t-0.5 20q-4 0 -17 -0.5t-16.5 -1l-14 -2t-14 -3t-10.5 -5t-9.5 -8t-6.5 -11 t-5 -15.5t-1 -20zM889 546h154l100 -232l109 232h143l-189 -359v-190h-141v190l-43 89v91q0 55 -21.5 86.5t-85.5 40.5zM915 494q64 -9 85.5 -40.5t21.5 -86.5v-91z" />
|
81 |
-
<glyph unicode="f" horiz-adv-x="817" d="M280 283v191h154v96q0 104 67.5 177t163.5 73h153v-191h-153q-15 0 -27 -16.5t-12 -40.5v-98h192v-191h-192v-463h-192v463h-154z" />
|
82 |
-
<glyph unicode="g" horiz-adv-x="939" d="M0 -27q0 -63 62 -108t150 -45t150.5 45t62.5 108q0 64 -62.5 109t-150.5 45q-1 0 -3 -0.5t-3 -0.5q-24 22 -24 47.5t24 53.5q71 4 120 55t49 121q0 28 -7 50q28 5 44 14v115q-48 -32 -109 -32h-7q-46 31 -101 31q-75 0 -128 -52t-53 -126q0 -47 24 -87t64 -64 q-28 -36 -28 -74q0 -36 26 -75q-46 -21 -73 -55t-27 -75zM121 405q0 33 21.5 56.5t50.5 23.5q30 0 51 -23.5t21 -56.5t-21 -56.5t-51 -23.5q-29 0 -50.5 23.5t-21.5 56.5zM124 -27q0 27 25.5 45.5t62.5 18.5t63 -18.5t26 -45.5q0 -26 -26 -45t-63 -19t-62.5 19t-25.5 45z M455 739q0 34 23.5 57.5t57.5 23.5t58 -23.5t24 -57.5t-24 -58t-58 -24t-57.5 24t-23.5 58zM474 92v479h134v-479h-134zM655 469h55v-284v-1q4 -30 19.5 -51.5t34.5 -31.5t37.5 -16t30.5 -7h13h7q27 0 48 8q23 8 30 16l7 9l2 99q-42 -13 -65 -13q-5 0 -9 1q-23 3 -27 16 l-4 13q0 3 -1 4v238h91v102h-91v93h-123v-93h-55v-102z" />
|
83 |
-
<glyph unicode="h" horiz-adv-x="866" d="M0 -196v496v496l501 -496zM0 -196l501 496l134 -133l-202 -117l-433 -250v4zM0 796v4l433 -250l202 -117l-134 -133zM501 300l134 133l231 -133l-231 -133z" />
|
84 |
-
<glyph unicode="i" d="M0 320q0 136 67 251t182 182t251 67t251 -67t182 -182t67 -251t-67 -251t-182 -182t-251 -67t-251 67t-182 182t-67 251zM100 320q0 -166 117 -283t283 -117t283 117t117 283t-117 283t-283 117t-283 -117t-117 -283zM283 144q0 -31 21.5 -52.5t52.5 -21.5q33 0 57 24 t24 57v8v261l200 37v-208q-15 5 -28 5q-33 0 -57 -24t-24 -57q0 -31 21 -52.5t52 -21.5t55.5 23t25.5 54v4v8v382l-290 -50v-300q-15 5 -28 5q-34 0 -58 -24t-24 -57z" />
|
85 |
-
<glyph unicode="j" horiz-adv-x="764" d="M0 -183v1000h764v-817l-571 3v-186h-193zM191 176h399v450h-399v-450z" />
|
86 |
-
<glyph unicode="k" d="M0 253v67v67t2.5 59t7 61.5t14 53t23.5 55.5t35.5 46.5t50.5 47.5q146 110 356 110h11h5v-777h124v208q7 -11 39 -63.5t51 -79.5q29 -40 63.5 -53t91.5 -13h36v118q-45 0 -63 7t-42 41q-14 18 -37 56.5t-26 43.5l171 238h-148l-136 -189v453q135 -22 238 -100 q29 -22 50.5 -47.5t35.5 -46.5t23.5 -55.5t14 -53t7 -61.5t2.5 -59v-67v-67t-2.5 -59t-7 -61.5t-14 -53t-23.5 -55.5t-35.5 -46.5t-50.5 -47.5q-146 -110 -367 -110t-367 110q-29 22 -50.5 47.5t-35.5 46.5t-23.5 55.5t-14 53t-7 61.5t-2.5 59zM81 104q66 -67 192 -67 q80 0 137.5 41t57.5 118q0 51 -18 84.5t-45 45.5t-58.5 19.5t-58.5 9t-45 11.5t-18 30q0 47 70 46q57 0 87 -29l78 78q-60 60 -170 60q-78 0 -131.5 -41.5t-53.5 -117.5q0 -51 20.5 -83.5t51.5 -44.5t62.5 -17t59.5 -9t37 -14q10 -11 10 -30q0 -46 -72 -46q-77 0 -113 36z " />
|
87 |
-
<glyph unicode="l" horiz-adv-x="1332" d="M-1 320q0 164 116 280t280 116q124 0 219.5 -63.5t146.5 -180.5q15 -36 129 -300q21 -48 37.5 -73.5t49 -45t79.5 -21.5h7q67 0 111 36q46 38 47 96q0 27 -8 45t-29.5 32t-40.5 21.5t-59 20.5q-125 41 -180 89.5t-55 135.5q0 91 57.5 145.5t156.5 54.5q127 0 191 -115 l-84 -43q-45 62 -112 62q-46 0 -76.5 -28.5t-30.5 -72.5q0 -13 2 -24.5t8.5 -20.5t12 -16t17.5 -14.5t20 -11.5t25 -10.5t26.5 -9.5t31.5 -10t33 -10q108 -36 154.5 -84t46.5 -140q0 -100 -76 -166q-75 -65 -186 -65h-3q-100 0 -161 46.5t-103 140.5l-14 33l-127 288 q-33 77 -104.5 124t-158.5 47q-119 0 -203.5 -84.5t-84.5 -203.5t84.5 -203.5t203.5 -84.5q82 0 150 42.5t105 112.5l51 -118q-55 -68 -135 -106.5t-171 -38.5q-164 0 -280 116t-116 280z" />
|
88 |
-
<glyph unicode="m" horiz-adv-x="1210" d="M7 -117v897h185l9 -8h825l9 8h174v-900h-171v7h-855v-4h-176zM183 15v-80h855v74l-345 259l-79 -65l-86 70zM183 75l307 229l-307 252v-481zM266 716l348 -298l347 298h-695zM731 299l307 -230v484z" />
|
89 |
-
<glyph unicode="n" d="M0 496l316 323v-123l301 -277l187 46l-195 -208l391 -438l-444 392l-188 -192l30 169l-255 316z" />
|
90 |
-
<glyph unicode="o" horiz-adv-x="1083" d="M0 173q-1 63 24.5 116.5t67 89t92 63t101 43t92.5 25.5t68 13l26 3v-123q-57 -4 -104.5 -19.5t-77.5 -36.5t-53 -45.5t-35 -48t-19 -42.5t-8 -31l-2 -12q-3 -15 -3 -30q0 -22 7 -42q12 -34 38 -58t59 -44.5t68 -33t64 -21.5t47 -13l19 -3v-103q-97 10 -175.5 35 t-126.5 56.5t-83 67.5t-51 70.5t-24.5 62t-9.5 44.5zM510 -180v902l142 98v-922zM686 411h5q38 -1 77 -15q42 -16 64 -31l21 -16l-83 -34l313 -78v245l-107 -61q-40 43 -112.5 69t-125.5 31l-52 5v-115z" />
|
91 |
-
<glyph unicode="p" d="M0 -47v734q0 55 39 94t94 39h734q55 0 94 -39t39 -94v-734q0 -55 -39 -94t-94 -39h-734q-55 0 -94 39t-39 94zM38 -19q0 -51 36 -87t87 -36h678q51 0 87 36t36 87v678q0 51 -36 87t-87 36h-678q-51 0 -87 -36t-36 -87v-678zM239 13v30h49q28 0 44 18.5t18 36.5l1 19v6v29 v377q0 35 -15 54.5t-30 21.5l-15 2h-50v32h349q46 0 80.5 -15t52 -36.5t28 -42.5t13.5 -36l2 -15v-62q0 -31 -9 -55.5t-23.5 -39.5t-32 -26.5t-35.5 -16.5t-32.5 -7.5t-23.5 -2.5l-9 -1h-143v-168q0 -31 17 -48.5t35 -19.5l17 -2h47v-32h-335zM457 338h109q4 0 10 0.5 t21.5 6t27.5 14.5t21.5 28.5t9.5 46.5l-1 61q0 4 -0.5 10t-6 22.5t-14.5 29.5t-29.5 25t-47.5 14h-100v-258z" />
|
92 |
-
<glyph unicode="q" horiz-adv-x="889" d="M0 366q0 122 59.5 226t161.5 164.5t223 60.5q184 0 314.5 -132t130.5 -319q0 -119 -57 -220.5t-154 -162.5q1 -2 3.5 -6.5t11.5 -16t21 -22t33 -21.5t45 -17v-76q-36 -7 -67 -7q-50 0 -85 18q-56 29 -91 94q-48 -13 -105 -13q-120 0 -222.5 60.5t-162 164t-59.5 225.5z M221 307q0 -116 66.5 -198.5t160.5 -82.5q26 0 52 8q-2 3 -5.5 8.5t-14.5 18.5t-23.5 23.5t-31 19.5t-36.5 10v79v9q10 1 20 1q119 0 203 -90q63 81 63 194v116q0 116 -66.5 198.5t-160.5 82.5t-160.5 -82.5t-66.5 -198.5v-116z" />
|
93 |
-
<glyph unicode="r" horiz-adv-x="1201" d="M0 320q0 139 72 254.5t191.5 180.5t257.5 65q86 0 162 -25v-302q-64 35 -132 35q-92 0 -162 -49q-45 -33 -80.5 -82.5t-35.5 -95.5q0 -90 57.5 -141t148.5 -51q78 0 151.5 41.5t108.5 108.5q21 37 21 50q1 67 1 143t-0.5 169t-0.5 144q20 -10 119 -77q135 -92 289 -92 q20 0 26.5 -7.5t6.5 -29.5q0 -51 -53 -100.5t-110 -69.5q4 -31 4 -69q0 -139 -72 -254.5t-191.5 -180.5t-257.5 -65t-257.5 65t-191.5 180.5t-72 254.5z" />
|
94 |
-
<glyph unicode="s" horiz-adv-x="1153" d="M0 141q0 16 3.5 44t9.5 31q6 -3 10.5 -32.5t4.5 -42.5q0 -14 -4.5 -42.5t-10.5 -31.5q-13 7 -13 74zM64 141q0 25 5 74t6 61q0 6 6 6q4 0 6 -6q12 -129 12 -135q0 -24 -5.5 -71t-6.5 -59q-2 -7 -6 -7q-6 0 -6 7q-1 11 -6 58.5t-5 71.5zM145 141q0 24 5 73.5t5 54.5 q0 9 7 9q8 0 8 -9q11 -113 11 -128t-11 -136q0 -8 -8 -8q-7 0 -7 8q0 7 -5 58.5t-5 77.5zM237 141q0 38 1.5 80.5t4 95t3.5 81.5q0 10 9 10q10 0 10 -10q1 -16 5.5 -111.5t4.5 -145.5q0 -26 -5 -77t-5 -58q0 -10 -10 -10q-9 0 -9 10q-9 132 -9 135zM331 141q0 55 3 159.5 t4 128.5q2 12 12 12t12 -12q1 -32 4.5 -133t3.5 -155q0 -25 -3.5 -72t-4.5 -61q-2 -12 -12 -12t-12 12q0 11 -3.5 59t-3.5 74zM426 141q0 40 1 85t2.5 100t2.5 85q2 15 14 15t14 -15q1 -30 2.5 -85t2.5 -100t1 -85q0 -2 -6 -131v1q-2 -15 -14 -15t-14 14q-6 129 -6 131z M521 140q0 3 6 351q2 18 16 18t16 -18q6 -348 6 -351q0 -1 -6 -127q-2 -17 -16 -17t-16 17q-6 126 -6 127zM601 352.5q0 82.5 1 155.5q-1 10 12.5 18t32.5 11.5t34.5 5.5t24.5 2q97 0 169 -72.5t80 -178.5q28 13 55 13q58 0 99.5 -45.5t42 -110.5t-41.5 -110.5t-100 -45.5 h-393q-6 0 -10.5 6t-4.5 13q0 55 -0.5 155.5t-0.5 183z" />
|
95 |
-
<glyph unicode="t" horiz-adv-x="616" d="M0 410v142q60 20 101 55q41 33 67 86q26 51 35 127h143v-253h237v-157h-237v-256q0 -86 9 -112q9 -24 34 -39q34 -20 76 -20q77 0 151 49v-157q-63 -31 -116 -43q-52 -12 -112 -12q-68 0 -122 17q-55 19 -89 50q-36 31 -52 68q-14 34 -14 105v350h-111z" />
|
96 |
-
<glyph unicode="u" horiz-adv-x="916" d="M2 455q4 36 15.5 63t25.5 40t28 21t23 9l9 2h8q43 0 77 -36q38 -40 41 -78q3 -16 3 -33v-6q0 -20 -5.5 -53t-28 -57.5t-59.5 -32.5q-13 -3 -26 -3q-23 0 -43 10q-30 15 -45 43t-21 58q-4 17 -4 32q0 11 2 21zM66 -32q-4 18 -4 36q0 28 10 55q16 44 38.5 68t48.5 45l26 21 q2 2 26.5 22.5t53.5 51.5t49 66q18 31 50 53q33 22 72 28q9 1 17 1q31 0 66 -18q44 -23 79 -77q8 -12 23.5 -31.5t66.5 -72t106 -95.5q26 -20 39.5 -49.5t13.5 -57t-4 -52t-9 -39.5l-6 -15q-2 -6 -7.5 -15t-27.5 -29t-50 -31.5t-79 -11.5t-112 20q-36 12 -79 13h-14 q-33 0 -55 -4l-25 -4q-10 -2 -27 -5q-18 -3 -66 -8q-24 -2 -44 -2.5t-36 2.5h-3q-46 0 -80 33q-35 34 -46 68zM208 72q-2 -14 -2 -27q0 -32 12 -61q22 -43 79 -55h127v307l-57 1v-83h-68q-30 0 -53 -20.5t-30 -41.5zM232 666q0 64 31.5 109t76.5 45t76.5 -45t31.5 -109 t-31.5 -109t-76.5 -45t-76.5 45t-31.5 109zM268 23q-2 8 -2 16q0 14 6 31q10 26 39 35h55v-125h-51q-16 0 -27.5 10.5t-15.5 21.5zM455 -15q0 -18 15 -31.5t30 -18.5l15 -5h146v217h-63v-163h-60q-9 1 -14.5 6t-7.5 9l-1 4v145l-60 -1v-162zM508 657q5 48 49 97q37 41 72 41 q6 0 13 -1q43 -10 74 -58q25 -39 25 -77q0 -9 -1 -18q-9 -55 -48 -101q-34 -39 -80 -40q-7 0 -14 1q-56 8 -76 51q-15 32 -16 75q0 14 2 30zM686 367q0 150 108 150q34 0 59.5 -14.5t38 -36t18.5 -40.5t6 -33v-14v-11v-9q0 -7 -1 -22.5t-4 -25.5t-7.5 -24t-13 -23.5 t-19 -18.5t-26.5 -13.5t-35 -4.5h-6q-38 0 -63 11q-27 12 -38 36.5t-14 44t-3 48.5z" />
|
97 |
-
<glyph unicode="v" horiz-adv-x="1011" d="M0 -21v678q0 66 43 114.5t108 48.5h697q70 0 116.5 -37.5t46.5 -106.5v-59q-74 14 -111 20q-53 7 -54 7q-10 3 -29.5 10t-34 10.5t-32.5 3.5q-62 0 -132 -47q-34 -3 -95.5 -7t-112 -9t-95.5 -14h-1h-1l-1 -1h-1h-1h-1h-1l-1 -1h-1q-72 -14 -87 -26q-18 -15 -20 -71v-39 v-126l-3 -18l526 -13l80 27q-44 -79 -70 -132l-106 -47l-406 -7q-3 -3 -10 -3.5t-11 -4.5q4 -26 7 -39q12 -52 112 -59q206 -13 335 -13q38 0 120 20t127 20q65 0 111 -29v-54q0 -155 -154 -155h-723q-61 0 -97.5 48t-36.5 111zM690 525q0 14 10 24.5t24 10.5t24.5 -10.5 t10.5 -24.5t-10.5 -24t-24.5 -10t-24 10t-10 24z" />
|
98 |
-
<glyph unicode="w" d="M0 319q0 136 67 251t182 182t251 67t251 -67t182 -182t67 -251t-67 -251t-182 -182t-251 -67t-251 67t-182 182t-67 251zM39 319q0 -135 71.5 -247t188.5 -168l-220 603q-40 -89 -40 -188zM114 572h30q48 0 123 6q12 1 17.5 -8t1.5 -19t-16 -11l-53 -5l168 -499l101 302 l-72 197q-24 3 -48 5q-12 1 -16 11t1.5 19t17.5 8l121 -6q49 0 123 6q12 1 17.5 -8t1.5 -19t-16 -11l-52 -5l166 -496l46 154q36 117 36 149q0 64 -39 128q-2 3 -12.5 21t-13.5 23.5t-9 19t-8 23.5t-2 21q0 33 22.5 57.5t55.5 24.5q1 0 3 -0.5t3 -0.5q-131 121 -312 121 q-119 0 -221 -56t-165 -152zM370 -124q62 -18 130 -18q80 0 153 26l-3 6l-142 389zM732 -80q105 61 167 167.5t62 231.5q0 120 -56 221q3 -21 3 -47q0 -63 -35 -165z" />
|
99 |
-
<glyph unicode="x" horiz-adv-x="1002" d="M0 320q0 -176 109 -312q-9 25 -9 56q0 32 10 68q20 72 61.5 139.5t86 127.5t78.5 96l33 36q-147 91 -234 130q-135 -145 -135 -341zM139 -25q23 68 68.5 139t94 124t94 96.5t74.5 65.5l29 23q13 -9 34 -26t77.5 -68t102.5 -102t90.5 -121t59.5 -131q-70 -73 -164 -114 t-198 -41q-105 0 -198.5 41t-163.5 114zM176 700q139 120 325 120q185 0 324 -120q-35 20 -81 20t-87 -14.5t-77 -31.5t-58 -32l-21 -14h-1q-8 6 -22.5 15.5t-55.5 30.5t-79 33.5t-85 12.5q-1 0 -2 1q-46 0 -80 -21zM632 531q148 91 235 130q135 -145 135 -341 q0 -176 -110 -312q9 26 9 56q1 30 -9 68q-20 72 -62 139.5t-86.5 127.5t-77.5 96z" />
|
100 |
-
<glyph unicode="y" horiz-adv-x="749" d="M4 231v-13q0 -43 6 -69q5 -18 19 -25.5t29 -2.5l204 63q22 7 31 26q5 10 5 20t-5 19q-9 19 -32 26l-204 82q-14 3 -27.5 -7.5t-16.5 -30.5q-8 -36 -9 -88zM91 708q-5 8 -5 16q0 9 6 18q12 17 38 27q81 31 171 46h5q45 0 49 -38q25 -313 25 -393q0 -33 -27 -40 q-6 -2 -12 -2q-21 0 -37 25q-148 232 -213 341zM160 -57l139 166q19 21 38 21q8 0 16 -3q25 -11 25 -45q0 -5 -1 -10v-221q-2 -14 -17 -22q-9 -5 -18 -5q-8 0 -16 3q-36 6 -85 25.5t-73 37.5q-18 14 -18 30q0 11 10 23zM454 280q-6 12 -6 23q0 17 15 33l130 179q7 8 20 8 q3 0 7 -1q17 -2 29 -18q25 -26 53 -70.5t37 -73.5q3 -8 3 -15q0 -9 -4 -16q-8 -13 -23 -16l-209 -53q-8 -2 -16 -2q-23 0 -36 22zM466 155q-9 -12 -9 -24q0 -16 13 -32l114 -190q7 -9 24 -9h3q19 1 33 15q27 24 55.5 62.5t41.5 69.5q4 11 4 21q0 7 -3 13q-5 14 -19 19 l-205 70q-10 4 -19 4q-21 0 -33 -19z" />
|
101 |
-
<glyph unicode="z" horiz-adv-x="722" d="M0 46v13v82q0 6 2.5 12t4.5 9l2 2q65 77 195 230.5t195 230.5q-57 -11 -103 -14q-23 -2 -41 -1q-17 0 -31 1q-26 3 -46.5 10t-28.5 13.5t-12 12.5q-1 0 -1 1q-1 2 -2 3q-4 9 -4 24q0 7 1 15q5 49 49 110q2 2 6 6.5t6 7.5q5 5 12 5q6 0 15 -4q18 -10 20 -10 q55 -22 148 -26q22 -1 44 -1q107 0 222 24q9 2 13.5 -1.5t4.5 -8.5v-5q-1 -14 -4 -42.5t-5 -42.5q0 -4 -5 -9l-13 -13l-8 -7q-8 -9 -161 -188q-126 -146 -190 -219q-20 -24 -60 -70q-11 -13 -13 -18.5t-2 -23.5h7q65 0 144 -49q45 -29 86 -51t59 -29l19 -7q45 -12 83 -12 q65 0 110 35q5 -22 5 -45q0 -27 -7 -56q-12 -53 -50 -90q-32 -31 -77 -31q-8 0 -17 1q-64 8 -166 67q-23 13 -72.5 51t-78.5 53q-48 24 -95 31t-117 7h-31q-8 0 -12 17z" />
|
102 |
-
<glyph unicode="{" horiz-adv-x="1233" d="M-63 548q174 33 208 71q27 30 45 91q18 -23 23 -48.5t1 -39.5l-5 -13q-6 -13 -10.5 -21t-7.5 -13.5t-9.5 -11t-10 -8.5t-16 -11t-20.5 -14q-35 -27 -33.5 -62.5t30.5 -54.5q26 -16 50.5 6t52.5 78q12 25 18.5 66t19.5 73t47 59q20 16 45.5 19t50 1t51.5 0t60 23.5 t67 64.5q5 6 14 15.5t38 29t59 28t74 -1t86 -44.5q-48 21 -90 21t-67.5 -15t-43.5 -33t-26 -33l-7 -15q-15 -37 -28.5 -61.5t-23.5 -38.5t-25 -22.5t-24 -11.5t-32 -8.5t-38 -9.5q-43 -13 -50 -54q-6 -36 22 -53q32 -18 82 14q37 24 59.5 49.5t30.5 44t27.5 39.5t51.5 37 q43 21 82 28.5t83 8t67 3.5q197 32 246 114q48 79 49 130q17 -58 11.5 -104t-26.5 -80.5t-44 -57t-41 -33.5l-18 -11q-77 -40 -128.5 -55.5t-83.5 -21t-62 -21.5q-103 -55 -52 -155q21 -41 61.5 -44.5t77.5 29.5q6 5 14 14t22.5 39t15.5 61q20 -56 15.5 -96.5t-20.5 -63.5 l-15 -22q-36 -38 -60.5 -53.5t-63 -18.5t-89.5 15q-86 21 -119.5 20.5t-61.5 -17.5q-28 -16 -43 -42.5t-2 -48.5q14 -25 34 -27.5t64 21.5q39 23 66 29.5t68 8.5q87 2 139 -38q37 -24 74 -57q-40 24 -79 30.5t-66 -1t-48.5 -18t-31.5 -21.5l-10 -10q-45 -51 -75.5 -72 t-53 -20.5t-58.5 14.5q-10 4 -39.5 17t-41.5 16v110q0 121 -92 186q-59 40 -134 40q-76 0 -134 -39q-20 29 -51 33v75q0 31 -21.5 52.5t-52.5 21.5h-18zM64 -16v162q0 65 19 99q40 71 134 71q69 0 110.5 -43.5t41.5 -109.5v-135h-202v-67q0 -48 50 -48q45 0 50 49h102 q0 -62 -41 -105q-43 -43 -111 -43q-94 0 -134 71q-19 34 -19 99zM167 105h100v56q0 56 -50 56t-50 -56v-56zM429 -94q11 36 11 71q0 11 -3 20q24 -4 34 -5q62 -6 85 -46q2 -3 4.5 -9t7 -23t-0.5 -31q-31 24 -65.5 30t-53.5 -1z" />
|
103 |
-
<glyph unicode="|" horiz-adv-x="851" d="M2 -56q3 31 12 66q11 45 72 350.5t71 349.5q12 52 24 72.5t39 29.5t87 9h241q59 0 135 -1t116 -1q41 0 50 -45q10 -48 -23 -92q-30 -40 -81 -40h-401l-50 -233l352 -3q44 0 54 -45t-21 -84q-27 -33 -70 -33h-360l-48 -248h432q64 0 76.5 -43.5t-17 -87.5t-67.5 -44h-553 q-30 0 -47.5 17t-21.5 46t-1 60z" />
|
104 |
-
<glyph unicode="}" horiz-adv-x="868" d="M0 108q0 44 31.5 76t76.5 32q44 0 76 -32t32 -76q0 -46 -34 -78q65 -74 163 -74q69 0 116 41q47 42 47 106q0 39 -25 77q-23 38 -60 64q-34 23 -115 57q-75 30 -122 59q-42 27 -73 64q-30 36 -46 74q-14 39 -14 79q0 101 81 172q82 71 197 71q77 0 155 -33 q66 -28 113 -80q37 -32 37 -80q0 -45 -32 -76.5t-76 -31.5q-45 0 -76.5 31.5t-31.5 76.5q0 21 10 44q-32 16 -88 16q-69 0 -112 -31t-43 -80q0 -43 38 -76q40 -33 128 -71q92 -40 141 -73q51 -34 82 -74q33 -41 48 -85q0 -1 1 -3t1 -3q-75 -62 -75 -158q0 -53 28 -104 q-11 -13 -24 -27q-87 -82 -206 -82t-208 64t-139 194l3 1q-5 15 -5 29zM613 33q0 -52 36 -88.5t88 -36.5t88 36.5t36 88.5q0 51 -36 87.5t-88 36.5t-88 -36.5t-36 -87.5z" />
|
105 |
-
<glyph unicode="~" horiz-adv-x="664" d="M0 805h100l8 -121h10l5 3q79 133 246 133q130 0 212.5 -98.5t82.5 -253.5q0 -93 -27 -166.5t-72.5 -117.5t-101 -67t-116.5 -23q-69 0 -125.5 28.5t-86.5 79.5l-2 3h-11l-3 -7v-378h-113v761q0 88 -6 224zM119 392q0 -31 6 -55q19 -70 74 -113t126 -43q101 0 162 76.5 t61 204.5q0 119 -61 194t-157 75q-72 0 -128 -45.5t-74 -117.5q-9 -33 -9 -53v-123z" />
|
106 |
-
<glyph horiz-adv-x="951" />
|
107 |
-
<glyph horiz-adv-x="973" />
|
108 |
-
<glyph horiz-adv-x="1314" />
|
109 |
-
<glyph unicode="£" horiz-adv-x="669" d="M2 467q-11 151 126 252q63 47 145 70q78 23 175 11t181 -59q-2 -40 0 -76q6 -119 -10 -153q-9 1 -52 14q-36 11 -66 16q-31 6 -61 8q-70 6 -99 -38q8 -44 38 -66q30 -21 82 -37q49 -14 69 -26q113 -70 139 -219v-80v-5q0 -81 -44.5 -142.5t-118.5 -92.5 q-105 -44 -244.5 -38.5t-239.5 59.5q3 41 0 79q-3 42 -2 81q2 43 12 69q18 -3 48 -11q53 -15 74 -19q165 -36 177 40q3 22 -10.5 40.5t-34.5 29.5q-28 14 -48 22q-29 12 -37 17q-44 23 -59 32q-57 34 -80 68q-54 77 -60 154z" />
|
110 |
-
<glyph unicode="­" horiz-adv-x="939" d="M-0.5 707q-0.5 11 6 20.5t13.5 16.5t23.5 15.5t27 13t33 14t34.5 14.5q54 22 97 16t54 -35q25 -67 102.5 -319.5t115.5 -361.5q268 88 326 105q16 6 37.5 4t32.5 -23q23 -47 32.5 -98.5t0.5 -74.5q-19 -15 -59.5 -32t-75.5 -29t-89.5 -29t-73.5 -23q-10 -3 -38 -13 t-53 -18.5t-58 -19t-61 -17.5t-54 -11.5t-44.5 -3.5t-25.5 9q-18 18 -32 52t-29 87t-19 66q-42 125 -113 338.5t-104 312.5q-6 13 -6.5 24z" />
|
111 |
-
<glyph unicode="Ç" horiz-adv-x="1294" d="M13 314v51q0 38 87 65t211 27t211 -27t87 -65v-51q-1 -38 -88 -64.5t-210 -26.5t-210 26.5t-88 64.5zM300 557v27q2 19 64 32.5t149 13.5t148.5 -13.5t63.5 -32.5h1v-27h-1q-2 -20 -63.5 -33.5t-148.5 -13.5t-149 13.5t-64 33.5zM511 63v59v5q4 56 117 94.5t271 38.5 t270.5 -38.5t116.5 -94.5v-4v-56v-4q-3 -55 -116 -94t-271 -39t-271 38.5t-117 94.5zM739 404v1v38v3q2 29 75.5 49t175.5 20t175.5 -20t75.5 -49v-2v-39v-1q0 -29 -73.5 -50t-177.5 -21t-177.5 21t-73.5 50z" />
|
112 |
-
<glyph unicode="É" horiz-adv-x="1129" d="M0 644q0 20 13 33t33 13h235q16 0 28.5 -9.5t16.5 -25.5l24 -98h674l7 21q10 32 43 32q9 0 13 -2q15 -4 24 -16t9 -27q0 -5 -2 -13l-118 -393q-4 -15 -16 -24t-27 -9h-559q-16 0 -28.5 10t-16.5 25l-108 438h-199q-19 0 -32.5 13t-13.5 32zM372 466l62 -248h489l2 9 l72 239h-625zM414 -18q0 38 27.5 65t65.5 27t65 -27t27 -65t-27 -65t-65 -27t-65.5 27t-27.5 65zM479 388h166v-92h-146zM724 296l1 92h162l-24 -92h-139zM761 -18q0 38 27.5 65t65.5 27t65 -27t27 -65t-27 -65t-65 -27t-65.5 27t-27.5 65z" />
|
113 |
-
<glyph unicode="Ñ" horiz-adv-x="937" d="M5 -90v333l116 129h85v-64h-56l-80 -89v-245h795v245l-80 89h-56v64h85l115 -129v-333h-924zM206 229v79v64v187l151 151h372v-338v-64v-79h-523zM266 290h403v360h-252v-151h-151v-209z" />
|
114 |
-
<glyph unicode="Ö" horiz-adv-x="696" d="M-10 86q0 63 28 98q23 31 74 45q-16 40 -16 59q0 33 35 70q37 35 69 35q17 0 40 -9q-48 137 -69 208q-24 81 -24 115q0 48 24 75q25 28 67 28q72 0 173 -295l17 -49q6 15 12 33q100 292 180 292q40 0 63 -27q24 -27 24 -70q0 -28 -24 -113q-21 -73 -66 -200 q57 -14 82 -54q27 -43 27 -133q0 -178 -106 -291q-108 -113 -274 -113q-66 0 -127 24q-59 21 -107 66q-51 48 -76 99q-26 54 -26 107zM55 91q0 -25 14 -59q13 -32 39 -67q41 -53 97 -81q57 -28 129 -28q129 0 217 97q87 96 87 243q0 46 -6 71q-5 22 -19 34q-27 23 -106 40 q-79 18 -168 18q-22 0 -28 -6q-7 -3 -7 -20q0 -41 46 -58q50 -21 165 -21h28q16 0 23 -11q8 -8 11 -31q-17 -17 -55 -31q-36 -13 -53 -26q-40 -29 -64 -69q-23 -39 -23 -74q0 -21 10 -51q11 -33 11 -43v-6l-4 -15q-44 3 -64 41q-17 32 -19 82q-3 -1 -12 -1h-11q1 -5 1 -12 q0 -30 -23 -51t-54 -21q-47 0 -95 45q-48 46 -48 90q0 8 3 16q1 7 16 22q25 -31 34 -43q42 -59 76 -59q9 0 17 6q6 6 6 10q0 8 -12 29q-8 15 -37 53q-28 36 -45 50q-15 14 -22 14q-19 0 -37 -22t-18 -55zM145 282q0 -13 16 -45q14 -27 45 -68q31 -40 56 -62q24 -20 36 -20 q7 0 14 7q7 8 7 16q0 12 -18 58q-21 51 -46 92q-22 35 -39 49q-16 15 -31 15q-11 0 -25 -15q-15 -15 -15 -27zM190 714q0 -34 24 -107q22 -71 66 -190q10 6 28 6q1 0 6.5 -0.5t10.5 -0.5q4 0 26 -2l-69 200q-28 80 -44 104q-13 21 -26 21q-9 0 -15 -8q-7 -9 -7 -23zM356 204 q9 -23 19 -50q20 23 40 38q-5 1 -15 2.5t-15 2.5q-20 4 -29 7zM461 408l67 -12q45 124 69 199q25 81 25 96q0 16 -7 25q-4 7 -15 7q-14 0 -31 -27q-19 -29 -43 -101z" />
|
115 |
-
<glyph unicode="Ü" d="M0 -100v800q0 41 29.5 70.5t70.5 29.5h800q41 0 70.5 -29.5t29.5 -70.5v-800q0 -41 -29.5 -70.5t-70.5 -29.5h-800q-41 0 -70.5 29.5t-29.5 70.5zM200 300q0 -124 88 -212t212 -88t212 88t88 212t-88 212t-212 88t-212 -88t-88 -212zM300 300q0 82 59 141t141 59t141 -59 t59 -141t-59 -141t-141 -59t-141 59t-59 141z" />
|
116 |
-
<glyph unicode="à" horiz-adv-x="617" d="M0 -43q0 76 57 112q29 19 54 29q114 49 122 54q-21 31 -54 68q-51 60 -60 71q-109 132 -94 247q7 55 42 91q13 14 42 32q37 21 45 25q5 2 22.5 9.5t29.5 12.5l47 21l69 30q58 25 86 40q20 11 25 -6q0 -11 -27 -25q-61 -40 -64 -114q-1 -29 5 -57.5t12.5 -47t25.5 -46 t27 -37.5t34.5 -40t31.5 -36q6 -7 29 -32.5t33 -37.5t28 -38t26 -46t15.5 -48.5t7.5 -58.5q0 -38 -13 -68q-12 -32 -28.5 -51.5t-47.5 -39.5q-35 -21 -53 -30q-23 -12 -61 -27q-16 -6 -35.5 -15t-22.5 -10l-89 -39l-36 -18q-32 -16 -50 -21q-85 -21 -133 24t-48 123z" />
|
117 |
-
<glyph unicode="á" horiz-adv-x="1126" d="M0.5 367.5q9.5 158.5 74.5 265.5q49 80 95.5 113.5t138.5 49.5q30 5 57 5.5t50.5 -4t44 -11.5t39 -20t33.5 -25.5t30 -31.5t26.5 -34.5t24 -38.5t21 -39.5t20.5 -40.5q7 -14 14 -30t15 -35.5t13 -30.5q8 48 56.5 188t67.5 145q91 21 145 0q4 -2 9 -8t7 -8 q-1 -18 -6 -38.5t-8.5 -32.5t-13 -36.5t-11.5 -30.5l-160 -439q-7 -34 18.5 -90t67.5 -93t74 -22q10 5 18 21t14 21q18 15 71 15.5t67 -18.5q16 -29 11 -62.5t-31 -66t-59.5 -57t-74 -36.5t-73.5 -5q-29 6 -54 18.5t-41 25.5t-34 36.5t-27.5 38.5t-27 45t-25.5 44 q-4 -2 -6 -4q-24 -58 -81 -106.5t-127 -75t-150 -19.5t-145 54q-85 62 -131 203.5t-36.5 300zM153 380q-13 -108 9 -211t73 -141q28 -21 56 -30.5t51.5 -11.5t49 9.5t43 21t41 35t35.5 39.5t33 46t27.5 43t24.5 42q5 9 8 14q-38 161 -64 223q-73 173 -202 155 q-56 -8 -81 -22t-50 -49q-41 -55 -54 -163z" />
|
118 |
-
<glyph unicode="â" horiz-adv-x="1078" d="M0 386.5q0 121.5 93 209.5q58 55 133.5 75t153 -1.5t137.5 -84.5q44 -46 62.5 -107t15 -115.5t-23.5 -102.5q-19 -41 -3 -93t40 -88.5t50.5 -68.5t26.5 -33l-11 9q-10 10 -21.5 20.5t-31 25.5t-38 27t-42.5 25t-45 18.5t-44.5 7.5t-42.5 -7q-47 -19 -103.5 -20t-117 22 t-102.5 69q-86 91 -86 212.5zM132 406q-9 -69 33.5 -124.5t111.5 -64.5t124 33.5t64 111.5t-33 124t-111 64t-124.5 -33t-64.5 -111zM610 700q21 59 74 87.5t113 8.5q58 -18 86.5 -72t8.5 -116q-24 -72 -114 -104q-31 -11 -55.5 -33.5t-34.5 -38t-23 -40.5q22 94 -24 159 q-55 80 -31 149zM648 205q2 92 63 155t152 63q89 0 152 -61.5t63 -156.5q0 -110 -110 -195q-38 -29 -62 -71t-30.5 -68t-12.5 -67q-4 40 -10 67t-30 69.5t-65 73.5q-111 83 -110 191zM686 677q-11 -27 0.5 -54.5t38.5 -38.5t54 0t38 38q11 28 0 55t-38 38t-54.5 0t-38.5 -38 zM752.5 162.5q18.5 -45.5 65.5 -65.5q46 -19 92 0.5t65 65.5t0 91.5t-65 65.5q-46 19 -92 0t-65 -65q-19 -47 -0.5 -92.5z" />
|
119 |
-
<glyph unicode="ã" horiz-adv-x="999" d="M0 -154q0 51 61 106.5t123 88.5l15 -22q-44 -32 -90.5 -82.5t-58.5 -89.5q87 27 265 379q65 131 103 261q-33 107 -33 202q0 115 47 115q23 0 34 -2t20.5 -13t9.5 -34q0 -15 -3 -28l-27 1q-2 26 -17 41q-12 -20 -12 -69q0 -38 9 -94q3 18 8.5 53.5t9.5 53.5l26 -3 q-2 -152 -14 -218q36 -107 86.5 -174t142.5 -119q68 7 116 7q178 0 178 -70q0 -11 -5 -24l-3 1q-5 -42 -67 -42q-104 0 -240 72q-220 -22 -389 -82q-147 -257 -235 -257q-7 0 -14 2t-12.5 4.5t-13.5 7t-12 6.5q-8 8 -8 22zM318 101q134 54 298 85q-103 73 -164 209 q-36 -121 -134 -294zM804 151q90 -35 142 -35q15 0 22 3q0 32 -145 32h-19z" />
|
120 |
-
<glyph unicode="ä" horiz-adv-x="875" d="M0 236q0 70 21 133t48.5 103t64.5 74.5t57 48t38 23.5q10 5 29.5 15t30.5 16t28.5 17t34.5 25q42 34 50 113q73 -88 106 -110q25 -17 73.5 -39t73.5 -37q19 -11 36 -23.5t54 -48.5t62.5 -76t46.5 -105t21 -137q0 -186 -127.5 -305t-306.5 -119q-116 0 -216.5 55.5 t-162.5 155.5t-62 221zM190 85q-2 -63 42 -93q31 -21 94 -21q41 0 97.5 29.5t105 58.5t70.5 28q23 -1 77.5 -56t70.5 -56q20 -1 33.5 8.5t31.5 35.5q33 49 33 117q0 29 -15 54.5t-47 25.5q-22 0 -92 -47t-94 -48q-22 0 -61 27.5t-88.5 55.5t-98.5 28q-65 -1 -111.5 -45 t-47.5 -102zM395 -95q-12 -10 0 -20q46 -42 165 -31q23 2 47.5 11.5t37 17.5t16.5 12t4 16q-3 12 -14 3q-41 -32 -124 -32q-75 0 -110 28q-3 2 -8 2t-14 -7zM485 -43q7 -8 28 11q2 1 8 6t8 6.5t8 5t10 4.5t11.5 2t15.5 1q16 0 26 -4.5t12.5 -8t7.5 -12.5q5 -10 7.5 -11.5 t7.5 0.5q12 7 7 20q-9 26 -22 34q-12 9 -43 9q-26 0 -41 -6q-17 -7 -44 -32q-15 -12 -7 -25z" />
|
121 |
-
<glyph unicode="å" horiz-adv-x="979" d="M0 42q11 15 31.5 25.5t49 20t40.5 15.5q19 0 33.5 -4.5t33.5 -15t25 -12.5q47 -21 260 -119q19 -4 35.5 0t39.5 17.5t24 14.5q20 9 76.5 34.5t87.5 39.5q4 2 41.5 21t60.5 24q13 2 27.5 -1t23.5 -7.5t23 -13t18 -10.5t15.5 -6t18.5 -8t11 -11q3 -4 4 -14q-10 -13 -31 -24 t-51 -22t-40 -16q-43 -20 -128.5 -61.5t-128.5 -61.5q-7 -3 -21 -11.5t-23.5 -13t-25.5 -11t-27.5 -7t-29.5 1.5l-264 123q-6 3 -32 14t-51.5 22t-53.5 24t-46.5 23.5t-21.5 16.5q-4 4 -4 13zM0 310q11 15 31.5 25t50 20t41.5 15q19 0 34 -4.5t34.5 -15t25.5 -13.5 q42 -19 126.5 -58t127.5 -59q19 -5 37 -0.5t39 17t25 14.5q68 32 160 72q11 5 31.5 16.5t38.5 19.5t36 11q16 3 31.5 -1t37.5 -17t23 -13q5 -3 15.5 -6.5t18 -8t11.5 -10.5q3 -5 4 -14q-10 -14 -31.5 -25.5t-52.5 -22.5t-41 -16q-48 -23 -135.5 -65t-122.5 -59 q-7 -3 -26 -14t-29 -15t-32.5 -10t-35.5 0q-214 101 -260 122q-6 3 -44 19t-69.5 30t-61.5 29.5t-34 22.5q-4 4 -4 14zM0 577q10 15 31.5 26.5t52.5 22.5t41 16l348 162q30 0 53.5 -7t56.5 -26t40 -22q39 -18 117 -54.5t117 -54.5q4 -2 36.5 -15t54.5 -24t27 -20q3 -4 4 -13 q-9 -13 -26 -22.5t-43.5 -19t-34.5 -13.5q-47 -22 -140 -66.5t-139 -66.5q-6 -3 -20 -11t-23 -12.5t-25 -10.5t-27 -6t-28 1q-245 114 -256 119q-4 2 -63 27.5t-102 46.5t-48 30q-4 4 -4 13z" />
|
122 |
-
<glyph unicode="ç" horiz-adv-x="1137" d="M2.5 474q-7.5 215 11.5 270q4 9 9.5 15.5t14 12.5t13.5 9.5t17.5 10t16.5 8.5q136 0 386 2t329 2h40h54t55 -0.5t56.5 -2.5t45 -6t32.5 -10q16 -9 27 -24t16.5 -29.5t7.5 -40t2 -42t-0.5 -50t-0.5 -49.5q0 -207 -23 -327t-96 -213q-70 -88 -164.5 -139.5t-193 -62.5 t-200 11t-186.5 73.5t-151 133t-96 181.5q-15 52 -22.5 267zM234 476q-26 -28 15 -89.5t104 -123.5q2 -2 39.5 -40t53.5 -52t47 -35.5t57 -28.5q11 -3 22.5 -3t19.5 1t19.5 6.5t16 7.5t15.5 11.5t12 10.5t12 11l3 3q9 9 60.5 56t86 80.5t67.5 79t35 75.5q-15 40 -38 56 t-50.5 8.5t-56 -26t-59 -48t-56 -56t-49.5 -51t-37 -32.5q-27 16 -72.5 59.5t-82 82t-73.5 64t-55 14.5q-25 -15 -56 -41z" />
|
123 |
-
<glyph unicode="è" d="M0 326q0 102 40 194q79 186 265 265q92 40 194 40t194 -40q184 -78 265 -265q40 -95 40 -194t-40 -194q-81 -188 -265 -267q-92 -40 -194 -40t-194 40q-186 80 -265 267q-40 92 -40 194zM78 326q0 -141 84 -252q83 -109 217 -155v80q0 60 40 87q-20 1 -47 7q-51 9 -87 32 q-91 55 -91 199q0 75 50 128q-23 59 5 128h20q10 0 25 -5q39 -12 87 -44q61 16 120 16t121 -16q39 26 73 40q32 12 46 10l12 -1q27 -69 5 -128q50 -53 50 -128q0 -112 -55 -169q-30 -32 -79 -50q-41 -15 -91 -19q41 -29 41 -87v-80q129 46 213 157q82 110 82 250 q0 85 -33 164q-32 76 -90 134q-56 56 -134 89q-80 34 -163 34q-82 0 -164 -34q-75 -32 -134 -89q-56 -58 -90 -134q-33 -79 -33 -164z" />
|
124 |
-
<glyph unicode="é" horiz-adv-x="866" d="M0 660q0 60 127 102t306 42q180 0 306.5 -42t126.5 -102q0 -12 -72 -440q-9 -46 -111 -89t-250 -43t-250 43t-110 89q-73 414 -73 440zM107 79v4q0 17 15 17q6 0 12 -5q47 -37 122 -58t126 -23l51 -3q8 0 21.5 0.5t52.5 5t74.5 12.5t78.5 25t73 41l11 5q16 0 16 -17 q0 -2 -1 -4q-22 -121 -30 -161q-11 -49 -96 -81.5t-200 -32.5t-200 32.5t-95 81.5q-19 95 -31 161zM156 675q0 -24 81.5 -41.5t195.5 -17.5q115 0 196.5 17t81.5 41q0 25 -81.5 42.5t-196.5 17.5t-196 -17t-81 -42zM295 322q0 -57 40.5 -97.5t97.5 -40.5t97.5 40.5 t40.5 97.5t-40.5 97.5t-97.5 40.5t-97.5 -40.5t-40.5 -97.5zM364 322q0 -28 20 -48.5t49 -20.5t49 20.5t20 48.5t-20 48.5t-49 20.5t-49 -20.5t-20 -48.5z" />
|
125 |
-
<glyph unicode="ê" horiz-adv-x="1272" d="M0 95h24q-7 14 -7 34q0 65 45.5 185.5t87.5 183.5q32 49 84 49q45 0 45 -34q0 -52 -72 -199h82q20 62 53 126q34 68 73 91t116 23q29 0 56.5 -14t27.5 -40t-13 -42t-37.5 -22.5t-43.5 -8.5t-46 -2h-9q-15 -22 -28 -58q18 3 37 3q64 0 64 -38q0 -9 -3 -18h19h-19 q-16 -59 -88 -59q-23 0 -50 5q-16 -48 -21 -73q52 10 77 10t43 -11.5t18 -35.5q0 -34 -23.5 -57t-53.5 -31t-64 -8q-65 0 -96 41h-19h19q-20 24 -20 62q0 23 3 45q8 50 28 112h-82q-9 -19 -26 -55.5t-25 -54.5h-1l-7 -14q22 2 34 2q59 0 59 -40q0 -51 -39 -73.5t-93 -22.5 q-65 0 -85 39h-24zM538 173q0 38 15.5 95t33.5 99q19 45 36 74t43 56.5t60.5 41t80.5 13.5q50 0 87 -19.5t37 -64.5q0 -38 -21 -68.5t-57 -30.5q-52 0 -52 33q0 6 3.5 17.5t3.5 18.5q0 13 -22 13q-17 0 -32.5 -14t-29 -43.5t-18 -40.5t-14.5 -39h16h-16q-32 -84 -32 -119 q0 -29 28 -29q25 0 44 24.5t26 52.5q-42 2 -42 35q0 37 28 54t66 17q52 0 65 -35h37h-37q4 -11 4 -26q0 -50 -28.5 -106t-68.5 -87h40h-40q-53 -41 -120 -41q-68 0 -100 41h-17h17q-24 29 -24 78zM867 95h42q-18 26 -18 66q0 79 49 204q19 47 32.5 74t37 55.5t57 41.5 t78.5 13q120 0 120 -115q0 -50 -22 -120h36h-36q-15 -51 -41 -110h38h-38q-37 -77 -73 -109h36h-36q-46 -41 -119 -41q-72 0 -101 41h-42zM1011 204h3q-6 -35 22 -35q23 0 43 38h-2q17 36 45 115.5t28 102.5q0 24 -21 24q-20 0 -33 -16q-18 -26 -52 -119h37h-37 q-25 -67 -33 -110z" />
|
126 |
-
<glyph unicode="ë" d="M0 304q0 136 67 251t182 182t251 67t251 -67t182 -182t67 -251t-67 -251t-182 -182t-251 -67t-251 67t-182 182t-67 251zM208 -15q0 -26 26 -26h176q28 0 28 26v48q0 26 -28 26h-29v460h29q28 0 28 26v48q0 26 -28 26h-176q-26 0 -26 -26v-48q0 -26 26 -26h31v-460h-31 q-26 0 -26 -26v-48zM485 -19q0 -24 24 -24h59q22 0 22 24v257q0 103 79 103q42 0 42 -51v-309q0 -24 22 -24h61q21 0 21 24v333q0 122 -110 122q-67 0 -122 -64l-7 36q-4 22 -24 22h-43q-24 0 -24 -25v-424z" />
|
127 |
-
<glyph unicode="ì" horiz-adv-x="784" d="M0 -196v417l76 -1l-3 -335h501v334h79v-415h-653zM123 23h392v-83h-392v83zM124 88l8 85l393 -38l-8 -85zM145 261l23 82l380 -107l-24 -82zM216 462l44 73l338 -204l-45 -73zM383 667l69 50l230 -321l-70 -50zM635 790l84 14l65 -389l-84 -14z" />
|
128 |
-
<glyph unicode="í" horiz-adv-x="917" d="M0 804h161l197 -301q49 -75 102 -170q48 85 109 177l194 294h154l-399 -576v-424h-133v424z" />
|
129 |
-
<glyph unicode="î" horiz-adv-x="1200" d="M0 289v34q0 113 84 197t215 84q136 0 247 -112q21 -20 54 -62l96 -126q39 -52 52 -65q74 -74 147 -74q59 0 96 40q33 33 38 85q1 5 1 14q0 22 -6 41q-9 31 -33 57q0 1 -1 1q-38 40 -95 40q-78 0 -147 -74l-85 111h1h-1q-6 8 -10 13q55 60 113 85.5t134 25.5 q124 0 214 -84h1l1 -1q83 -83 83 -215q0 -30 -5 -63q-16 -89 -79 -153q-61 -62 -150 -79q-33 -5 -62 -5q-140 0 -248 109q-23 23 -56 67l-96 124q-39 52 -52 65q-74 74 -149 74q-22 0 -40 -6q-29 -8 -55 -34q-29 -32 -36 -71q-3 -14 -3 -28q0 -57 37 -97l2 -2q39 -40 97 -40 q79 0 147 75l84 -110l9 -12q-57 -61 -115 -87t-130 -26q-131 0 -216 83v1q-63 63 -78 153q-5 25 -5 47z" />
|
130 |
-
<glyph unicode=" " horiz-adv-x="482" />
|
131 |
-
<glyph unicode=" " horiz-adv-x="964" />
|
132 |
-
<glyph unicode=" " horiz-adv-x="482" />
|
133 |
-
<glyph unicode=" " horiz-adv-x="964" />
|
134 |
-
<glyph unicode=" " horiz-adv-x="321" />
|
135 |
-
<glyph unicode=" " horiz-adv-x="241" />
|
136 |
-
<glyph unicode=" " horiz-adv-x="160" />
|
137 |
-
<glyph unicode=" " horiz-adv-x="160" />
|
138 |
-
<glyph unicode=" " horiz-adv-x="120" />
|
139 |
-
<glyph unicode=" " horiz-adv-x="192" />
|
140 |
-
<glyph unicode=" " horiz-adv-x="53" />
|
141 |
-
<glyph unicode="‐" horiz-adv-x="939" d="M-0.5 707q-0.5 11 6 20.5t13.5 16.5t23.5 15.5t27 13t33 14t34.5 14.5q54 22 97 16t54 -35q25 -67 102.5 -319.5t115.5 -361.5q268 88 326 105q16 6 37.5 4t32.5 -23q23 -47 32.5 -98.5t0.5 -74.5q-19 -15 -59.5 -32t-75.5 -29t-89.5 -29t-73.5 -23q-10 -3 -38 -13 t-53 -18.5t-58 -19t-61 -17.5t-54 -11.5t-44.5 -3.5t-25.5 9q-18 18 -32 52t-29 87t-19 66q-42 125 -113 338.5t-104 312.5q-6 13 -6.5 24z" />
|
142 |
-
<glyph unicode="‑" horiz-adv-x="939" d="M-0.5 707q-0.5 11 6 20.5t13.5 16.5t23.5 15.5t27 13t33 14t34.5 14.5q54 22 97 16t54 -35q25 -67 102.5 -319.5t115.5 -361.5q268 88 326 105q16 6 37.5 4t32.5 -23q23 -47 32.5 -98.5t0.5 -74.5q-19 -15 -59.5 -32t-75.5 -29t-89.5 -29t-73.5 -23q-10 -3 -38 -13 t-53 -18.5t-58 -19t-61 -17.5t-54 -11.5t-44.5 -3.5t-25.5 9q-18 18 -32 52t-29 87t-19 66q-42 125 -113 338.5t-104 312.5q-6 13 -6.5 24z" />
|
143 |
-
<glyph unicode="‒" horiz-adv-x="939" d="M-0.5 707q-0.5 11 6 20.5t13.5 16.5t23.5 15.5t27 13t33 14t34.5 14.5q54 22 97 16t54 -35q25 -67 102.5 -319.5t115.5 -361.5q268 88 326 105q16 6 37.5 4t32.5 -23q23 -47 32.5 -98.5t0.5 -74.5q-19 -15 -59.5 -32t-75.5 -29t-89.5 -29t-73.5 -23q-10 -3 -38 -13 t-53 -18.5t-58 -19t-61 -17.5t-54 -11.5t-44.5 -3.5t-25.5 9q-18 18 -32 52t-29 87t-19 66q-42 125 -113 338.5t-104 312.5q-6 13 -6.5 24z" />
|
144 |
-
<glyph unicode="–" horiz-adv-x="499" d="M0 707q0 11 3.5 20.5t7 16.5t12.5 15.5t14.5 13t17.5 14t18 14.5q29 22 52 16t28 -35q14 -67 55 -319.5t61 -361.5q143 88 174 105q8 6 19.5 4t17.5 -23q12 -47 17 -98.5t1 -74.5q-10 -15 -32 -32t-40.5 -29t-47.5 -29t-39 -23q-5 -3 -20 -13t-28.5 -18.5t-31 -19 t-32 -17.5t-28.5 -11.5t-24 -3.5t-14 9q-9 18 -16.5 52t-15.5 87t-10 66q-22 125 -60 338.5t-56 312.5q-3 13 -3 24z" />
|
145 |
-
<glyph unicode="—" d="M0.5 707q-0.5 11 6 20.5t14 16.5t25 15.5t29 13t35.5 14t36 14.5q58 22 103.5 16t57.5 -35q27 -67 109 -319.5t123 -361.5q285 88 347 105q17 6 40 4t34 -23q25 -47 35 -98.5t0 -74.5q-20 -15 -63 -32t-80.5 -29t-95 -29t-78.5 -23q-10 -3 -40 -13t-56.5 -18.5t-61.5 -19 t-65 -17.5t-57.5 -11.5t-47.5 -3.5t-27 9q-19 18 -34 52t-31 87t-20 66q-45 125 -120.5 338.5t-110.5 312.5q-6 13 -6.5 24z" />
|
146 |
-
<glyph unicode=" " horiz-adv-x="192" />
|
147 |
-
<glyph unicode=" " horiz-adv-x="241" />
|
148 |
-
<glyph unicode="" horiz-adv-x="820" d="M0 0v820h820v-820h-820z" />
|
149 |
-
<glyph horiz-adv-x="664" />
|
150 |
-
</font>
|
151 |
-
</defs></svg>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
assets/css/zocial/zocial-regular-webfont.ttf
DELETED
Binary file
|
assets/css/zocial/zocial-regular-webfont.woff
DELETED
Binary file
|
assets/css/zocial/zocial.css
DELETED
@@ -1,473 +0,0 @@
|
|
1 |
-
@charset "UTF-8";
|
2 |
-
|
3 |
-
/*!
|
4 |
-
Zocial Butons
|
5 |
-
http://zocial.smcllns.com
|
6 |
-
by Sam Collins (@smcllns)
|
7 |
-
License: http://opensource.org/licenses/mit-license.php
|
8 |
-
|
9 |
-
You are free to use and modify, as long as you keep this license comment intact or link back to zocial.smcllns.com on your site.
|
10 |
-
*/
|
11 |
-
|
12 |
-
|
13 |
-
/* Button structure */
|
14 |
-
|
15 |
-
.zocial,
|
16 |
-
a.zocial {
|
17 |
-
border: 1px solid #777;
|
18 |
-
border-color: rgba(0,0,0,0.2);
|
19 |
-
border-bottom-color: #333;
|
20 |
-
border-bottom-color: rgba(0,0,0,0.4);
|
21 |
-
color: #fff;
|
22 |
-
-moz-box-shadow: inset 0 0.08em 0 rgba(255,255,255,0.4), inset 0 0 0.1em rgba(255,255,255,0.9);
|
23 |
-
-webkit-box-shadow: inset 0 0.08em 0 rgba(255,255,255,0.4), inset 0 0 0.1em rgba(255,255,255,0.9);
|
24 |
-
box-shadow: inset 0 0.08em 0 rgba(255,255,255,0.4), inset 0 0 0.1em rgba(255,255,255,0.9);
|
25 |
-
cursor: pointer;
|
26 |
-
display: inline-block;
|
27 |
-
font: bold 100%/2.1 "Lucida Grande", Tahoma, sans-serif;
|
28 |
-
padding: 0 .95em 0 0;
|
29 |
-
text-align: center;
|
30 |
-
text-decoration: none;
|
31 |
-
text-shadow: 0 1px 0 rgba(0,0,0,0.5);
|
32 |
-
white-space: nowrap;
|
33 |
-
|
34 |
-
-moz-user-select: none;
|
35 |
-
-webkit-user-select: none;
|
36 |
-
user-select: none;
|
37 |
-
|
38 |
-
position: relative;
|
39 |
-
|
40 |
-
-moz-border-radius: .3em;
|
41 |
-
-webkit-border-radius: .3em;
|
42 |
-
border-radius: .3em;
|
43 |
-
}
|
44 |
-
|
45 |
-
.zocial:before {
|
46 |
-
content: "";
|
47 |
-
border-right: 0.075em solid rgba(0,0,0,0.1);
|
48 |
-
float: left;
|
49 |
-
font: 120%/1.65 zocial;
|
50 |
-
font-style: normal;
|
51 |
-
font-weight: normal;
|
52 |
-
margin: 0 0.5em 0 0;
|
53 |
-
padding: 0 0.5em;
|
54 |
-
text-align: center;
|
55 |
-
text-decoration: none;
|
56 |
-
text-transform: none;
|
57 |
-
|
58 |
-
-moz-box-shadow: 0.075em 0 0 rgba(255,255,255,0.25);
|
59 |
-
-webkit-box-shadow: 0.075em 0 0 rgba(255,255,255,0.25);
|
60 |
-
box-shadow: 0.075em 0 0 rgba(255,255,255,0.25);
|
61 |
-
|
62 |
-
-moz-font-smoothing: antialiased;
|
63 |
-
-webkit-font-smoothing: antialiased;
|
64 |
-
font-smoothing: antialiased;
|
65 |
-
}
|
66 |
-
|
67 |
-
.zocial:active {
|
68 |
-
outline: none; /* outline is visible on :focus */
|
69 |
-
}
|
70 |
-
|
71 |
-
/* Buttons can be displayed as standalone icons by adding a class of "icon" */
|
72 |
-
|
73 |
-
.zocial.icon {
|
74 |
-
overflow: hidden;
|
75 |
-
max-width: 2.4em;
|
76 |
-
padding-left: 0;
|
77 |
-
padding-right: 0;
|
78 |
-
max-height: 2.15em;
|
79 |
-
white-space: nowrap;
|
80 |
-
}
|
81 |
-
.zocial.icon:before {
|
82 |
-
padding: 0;
|
83 |
-
width: 2em;
|
84 |
-
height: 2em;
|
85 |
-
|
86 |
-
box-shadow: none;
|
87 |
-
border: none;
|
88 |
-
}
|
89 |
-
|
90 |
-
/* Gradients */
|
91 |
-
|
92 |
-
.zocial {
|
93 |
-
background-image: -moz-linear-gradient(rgba(255,255,255,.1), rgba(255,255,255,.05) 49%, rgba(0,0,0,.05) 51%, rgba(0,0,0,.1));
|
94 |
-
background-image: -ms-linear-gradient(rgba(255,255,255,.1), rgba(255,255,255,.05) 49%, rgba(0,0,0,.05) 51%, rgba(0,0,0,.1));
|
95 |
-
background-image: -o-linear-gradient(rgba(255,255,255,.1), rgba(255,255,255,.05) 49%, rgba(0,0,0,.05) 51%, rgba(0,0,0,.1));
|
96 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,.1)), color-stop(49%, rgba(255,255,255,.05)), color-stop(51%, rgba(0,0,0,.05)), to(rgba(0,0,0,.1)));
|
97 |
-
background-image: -webkit-linear-gradient(rgba(255,255,255,.1), rgba(255,255,255,.05) 49%, rgba(0,0,0,.05) 51%, rgba(0,0,0,.1));
|
98 |
-
background-image: linear-gradient(rgba(255,255,255,.1), rgba(255,255,255,.05) 49%, rgba(0,0,0,.05) 51%, rgba(0,0,0,.1));
|
99 |
-
}
|
100 |
-
|
101 |
-
.zocial:hover, .zocial:focus {
|
102 |
-
background-image: -moz-linear-gradient(rgba(255,255,255,.15) 49%, rgba(0,0,0,.1) 51%, rgba(0,0,0,.15));
|
103 |
-
background-image: -ms-linear-gradient(rgba(255,255,255,.15) 49%, rgba(0,0,0,.1) 51%, rgba(0,0,0,.15));
|
104 |
-
background-image: -o-linear-gradient(rgba(255,255,255,.15) 49%, rgba(0,0,0,.1) 51%, rgba(0,0,0,.15));
|
105 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,.15)), color-stop(49%, rgba(255,255,255,.15)), color-stop(51%, rgba(0,0,0,.1)), to(rgba(0,0,0,.15)));
|
106 |
-
background-image: -webkit-linear-gradient(rgba(255,255,255,.15) 49%, rgba(0,0,0,.1) 51%, rgba(0,0,0,.15));
|
107 |
-
background-image: linear-gradient(rgba(255,255,255,.15) 49%, rgba(0,0,0,.1) 51%, rgba(0,0,0,.15));
|
108 |
-
}
|
109 |
-
|
110 |
-
.zocial:active {
|
111 |
-
background-image: -moz-linear-gradient(bottom, rgba(255,255,255,.1), rgba(255,255,255,0) 30%, transparent 50%, rgba(0,0,0,.1));
|
112 |
-
background-image: -ms-linear-gradient(bottom, rgba(255,255,255,.1), rgba(255,255,255,0) 30%, transparent 50%, rgba(0,0,0,.1));
|
113 |
-
background-image: -o-linear-gradient(bottom, rgba(255,255,255,.1), rgba(255,255,255,0) 30%, transparent 50%, rgba(0,0,0,.1));
|
114 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,.1)), color-stop(30%, rgba(255,255,255,0)), color-stop(50%, transparent), to(rgba(0,0,0,.1)));
|
115 |
-
background-image: -webkit-linear-gradient(bottom, rgba(255,255,255,.1), rgba(255,255,255,0) 30%, transparent 50%, rgba(0,0,0,.1));
|
116 |
-
background-image: linear-gradient(bottom, rgba(255,255,255,.1), rgba(255,255,255,0) 30%, transparent 50%, rgba(0,0,0,.1));
|
117 |
-
}
|
118 |
-
|
119 |
-
/* Adjustments for light background buttons */
|
120 |
-
|
121 |
-
.zocial.acrobat,
|
122 |
-
.zocial.bitcoin,
|
123 |
-
.zocial.cloudapp,
|
124 |
-
.zocial.dropbox,
|
125 |
-
.zocial.email,
|
126 |
-
.zocial.eventful,
|
127 |
-
.zocial.github,
|
128 |
-
.zocial.gmail,
|
129 |
-
.zocial.instapaper,
|
130 |
-
.zocial.itunes,
|
131 |
-
.zocial.ninetyninedesigns,
|
132 |
-
.zocial.openid,
|
133 |
-
.zocial.plancast,
|
134 |
-
.zocial.pocket,
|
135 |
-
.zocial.posterous,
|
136 |
-
.zocial.reddit,
|
137 |
-
.zocial.secondary,
|
138 |
-
.zocial.stackoverflow,
|
139 |
-
.zocial.viadeo,
|
140 |
-
.zocial.weibo,
|
141 |
-
.zocial.wikipedia {
|
142 |
-
border: 1px solid #aaa;
|
143 |
-
border-color: rgba(0,0,0,0.3);
|
144 |
-
border-bottom-color: #777;
|
145 |
-
border-bottom-color: rgba(0,0,0,0.5);
|
146 |
-
-moz-box-shadow: inset 0 0.08em 0 rgba(255,255,255,0.7), inset 0 0 0.08em rgba(255,255,255,0.5);
|
147 |
-
-webkit-box-shadow: inset 0 0.08em 0 rgba(255,255,255,0.7), inset 0 0 0.08em rgba(255,255,255,0.5);
|
148 |
-
box-shadow: inset 0 0.08em 0 rgba(255,255,255,0.7), inset 0 0 0.08em rgba(255,255,255,0.5);
|
149 |
-
text-shadow: 0 1px 0 rgba(255,255,255,0.8);
|
150 |
-
}
|
151 |
-
|
152 |
-
/* :hover adjustments for light background buttons */
|
153 |
-
|
154 |
-
.zocial.acrobat:focus,
|
155 |
-
.zocial.acrobat:hover,
|
156 |
-
.zocial.bitcoin:focus,
|
157 |
-
.zocial.bitcoin:hover,
|
158 |
-
.zocial.dropbox:focus,
|
159 |
-
.zocial.dropbox:hover,
|
160 |
-
.zocial.email:focus,
|
161 |
-
.zocial.email:hover,
|
162 |
-
.zocial.eventful:focus,
|
163 |
-
.zocial.eventful:hover,
|
164 |
-
.zocial.github:focus,
|
165 |
-
.zocial.github:hover,
|
166 |
-
.zocial.gmail:focus,
|
167 |
-
.zocial.gmail:hover,
|
168 |
-
.zocial.instapaper:focus,
|
169 |
-
.zocial.instapaper:hover,
|
170 |
-
.zocial.itunes:focus,
|
171 |
-
.zocial.itunes:hover,
|
172 |
-
.zocial.ninetyninedesigns:focus,
|
173 |
-
.zocial.ninetyninedesigns:hover,
|
174 |
-
.zocial.openid:focus,
|
175 |
-
.zocial.openid:hover,
|
176 |
-
.zocial.plancast:focus,
|
177 |
-
.zocial.plancast:hover,
|
178 |
-
.zocial.pocket:focus,
|
179 |
-
.zocial.pocket:hover,
|
180 |
-
.zocial.posterous:focus,
|
181 |
-
.zocial.posterous:hover,
|
182 |
-
.zocial.reddit:focus,
|
183 |
-
.zocial.reddit:hover,
|
184 |
-
.zocial.secondary:focus,
|
185 |
-
.zocial.secondary:hover,
|
186 |
-
.zocial.stackoverflow:focus,
|
187 |
-
.zocial.stackoverflow:hover,
|
188 |
-
.zocial.twitter:focus,
|
189 |
-
.zocial.viadeo:focus,
|
190 |
-
.zocial.viadeo:hover,
|
191 |
-
.zocial.weibo:focus,
|
192 |
-
.zocial.weibo:hover,
|
193 |
-
.zocial.wikipedia:focus,
|
194 |
-
.zocial.wikipedia:hover {
|
195 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0.5)), color-stop(49%, rgba(255,255,255,0.2)), color-stop(51%, rgba(0,0,0,0.05)), to(rgba(0,0,0,0.15)));
|
196 |
-
background-image: -moz-linear-gradient(top, rgba(255,255,255,0.5), rgba(255,255,255,0.2) 49%, rgba(0,0,0,0.05) 51%, rgba(0,0,0,0.15));
|
197 |
-
background-image: -webkit-linear-gradient(top, rgba(255,255,255,0.5), rgba(255,255,255,0.2) 49%, rgba(0,0,0,0.05) 51%, rgba(0,0,0,0.15));
|
198 |
-
background-image: -o-linear-gradient(top, rgba(255,255,255,0.5), rgba(255,255,255,0.2) 49%, rgba(0,0,0,0.05) 51%, rgba(0,0,0,0.15));
|
199 |
-
background-image: -ms-linear-gradient(top, rgba(255,255,255,0.5), rgba(255,255,255,0.2) 49%, rgba(0,0,0,0.05) 51%, rgba(0,0,0,0.15));
|
200 |
-
background-image: linear-gradient(top, rgba(255,255,255,0.5), rgba(255,255,255,0.2) 49%, rgba(0,0,0,0.05) 51%, rgba(0,0,0,0.15));
|
201 |
-
}
|
202 |
-
|
203 |
-
/* :active adjustments for light background buttons */
|
204 |
-
|
205 |
-
.zocial.acrobat:active,
|
206 |
-
.zocial.bitcoin:active,
|
207 |
-
.zocial.dropbox:active,
|
208 |
-
.zocial.email:active,
|
209 |
-
.zocial.eventful:active,
|
210 |
-
.zocial.github:active,
|
211 |
-
.zocial.gmail:active,
|
212 |
-
.zocial.instapaper:active,
|
213 |
-
.zocial.itunes:active,
|
214 |
-
.zocial.ninetyninedesigns:active,
|
215 |
-
.zocial.openid:active,
|
216 |
-
.zocial.plancast:active,
|
217 |
-
.zocial.pocket:active,
|
218 |
-
.zocial.posterous:active,
|
219 |
-
.zocial.reddit:active,
|
220 |
-
.zocial.secondary:active,
|
221 |
-
.zocial.stackoverflow:active,
|
222 |
-
.zocial.viadeo:active,
|
223 |
-
.zocial.weibo:active,
|
224 |
-
.zocial.wikipedia:active {
|
225 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0)), color-stop(30%, rgba(255,255,255,0)), color-stop(50%, rgba(0,0,0,0)), to(rgba(0,0,0,0.1)));
|
226 |
-
background-image: -moz-linear-gradient(bottom, rgba(255,255,255,0), rgba(255,255,255,0) 30%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.1));
|
227 |
-
background-image: -webkit-linear-gradient(bottom, rgba(255,255,255,0), rgba(255,255,255,0) 30%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.1));
|
228 |
-
background-image: -o-linear-gradient(bottom, rgba(255,255,255,0), rgba(255,255,255,0) 30%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.1));
|
229 |
-
background-image: -ms-linear-gradient(bottom, rgba(255,255,255,0), rgba(255,255,255,0) 30%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.1));
|
230 |
-
background-image: linear-gradient(bottom, rgba(255,255,255,0), rgba(255,255,255,0) 30%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.1));
|
231 |
-
}
|
232 |
-
|
233 |
-
/* Button icon and color */
|
234 |
-
/* Icon characters are stored in unicode private area */
|
235 |
-
.zocial.acrobat:before {content: "\00E3"; color: #FB0000;}
|
236 |
-
.zocial.amazon:before {content: "a";}
|
237 |
-
.zocial.android:before {content: "&";}
|
238 |
-
.zocial.angellist:before {content: "\00D6";}
|
239 |
-
.zocial.aol:before {content: "\"";}
|
240 |
-
.zocial.appnet:before {content: "\00E1";}
|
241 |
-
.zocial.appstore:before {content: "A";}
|
242 |
-
.zocial.bitbucket:before {content: "\00E9";}
|
243 |
-
.zocial.bitcoin:before {content: "2"; color: #f7931a;}
|
244 |
-
.zocial.blogger:before {content: "B";}
|
245 |
-
.zocial.buffer:before {content: "\00E5";}
|
246 |
-
.zocial.call:before {content: "7";}
|
247 |
-
.zocial.cal:before {content: ".";}
|
248 |
-
.zocial.cart:before {content: "\00C9";}
|
249 |
-
.zocial.chrome:before {content: "[";}
|
250 |
-
.zocial.cloudapp:before {content: "c";}
|
251 |
-
.zocial.creativecommons:before {content: "C";}
|
252 |
-
.zocial.delicious:before {content: "#";}
|
253 |
-
.zocial.digg:before {content: ";";}
|
254 |
-
.zocial.disqus:before {content: "Q";}
|
255 |
-
.zocial.dribbble:before {content: "D";}
|
256 |
-
.zocial.dropbox:before {content: "d"; color: #1f75cc;}
|
257 |
-
.zocial.drupal:before {content: "\00E4"; color: #fff;}
|
258 |
-
.zocial.dwolla:before {content: "\00E0";}
|
259 |
-
.zocial.email:before {content: "]"; color: #312c2a;}
|
260 |
-
.zocial.eventasaurus:before {content: "v"; color: #9de428;}
|
261 |
-
.zocial.eventbrite:before {content: "|";}
|
262 |
-
.zocial.eventful:before {content: "'"; color: #0066CC;}
|
263 |
-
.zocial.evernote:before {content: "E";}
|
264 |
-
.zocial.facebook:before {content: "f";}
|
265 |
-
.zocial.fivehundredpx:before {content: "0"; color: #29b6ff;}
|
266 |
-
.zocial.flattr:before {content: "%";}
|
267 |
-
.zocial.flickr:before {content: "F";}
|
268 |
-
.zocial.forrst:before {content: ":"; color: #50894f;}
|
269 |
-
.zocial.foursquare:before {content: "4";}
|
270 |
-
.zocial.github:before {content: "\00E8";}
|
271 |
-
.zocial.gmail:before {content: "m"; color: #f00;}
|
272 |
-
.zocial.google:before {content: "G";}
|
273 |
-
.zocial.googleplay:before {content: "h";}
|
274 |
-
.zocial.googleplus:before {content: "+";}
|
275 |
-
.zocial.gowalla:before {content: "@";}
|
276 |
-
.zocial.grooveshark:before {content: "8";}
|
277 |
-
.zocial.guest:before {content: "?";}
|
278 |
-
.zocial.html5:before {content: "5";}
|
279 |
-
.zocial.ie:before {content: "6";}
|
280 |
-
.zocial.instagram:before {content: "\00DC";}
|
281 |
-
.zocial.instapaper:before {content: "I";}
|
282 |
-
.zocial.intensedebate:before {content: "{";}
|
283 |
-
.zocial.itunes:before {content: "i"; color: #1a6dd2;}
|
284 |
-
.zocial.klout:before {content: "K"; }
|
285 |
-
.zocial.lanyrd:before {content: "-";}
|
286 |
-
.zocial.lastfm:before {content: "l";}
|
287 |
-
.zocial.lego:before {content: "\00EA"; color:#fff900;}
|
288 |
-
.zocial.linkedin:before {content: "L";}
|
289 |
-
.zocial.lkdto:before {content: "\00EE";}
|
290 |
-
.zocial.logmein:before {content: "\00EB";}
|
291 |
-
.zocial.macstore:before {content: "^";}
|
292 |
-
.zocial.meetup:before {content: "M";}
|
293 |
-
.zocial.myspace:before {content: "_";}
|
294 |
-
.zocial.ninetyninedesigns:before {content: "9"; color: #f50;}
|
295 |
-
.zocial.openid:before {content: "o"; color: #ff921d;}
|
296 |
-
.zocial.opentable:before {content: "\00C7";}
|
297 |
-
.zocial.paypal:before {content: "$";}
|
298 |
-
.zocial.pinboard:before {content: "n";}
|
299 |
-
.zocial.pinterest:before {content: "1";}
|
300 |
-
.zocial.plancast:before {content: "P";}
|
301 |
-
.zocial.plurk:before {content: "j";}
|
302 |
-
.zocial.pocket:before {content: "\00E7"; color:#ee4056;}
|
303 |
-
.zocial.podcast:before {content: "`";}
|
304 |
-
.zocial.posterous:before {content: "~";}
|
305 |
-
.zocial.print:before {content: "\00D1";}
|
306 |
-
.zocial.quora:before {content: "q";}
|
307 |
-
.zocial.reddit:before {content: ">"; color: red;}
|
308 |
-
.zocial.rss:before {content: "R";}
|
309 |
-
.zocial.scribd:before {content: "}"; color: #00d5ea;}
|
310 |
-
.zocial.skype:before {content: "S";}
|
311 |
-
.zocial.smashing:before {content: "*";}
|
312 |
-
.zocial.songkick:before {content: "k";}
|
313 |
-
.zocial.soundcloud:before {content: "s";}
|
314 |
-
.zocial.spotify:before {content: "=";}
|
315 |
-
.zocial.stackoverflow:before {content: "\00EC"; color: #ff7a15;}
|
316 |
-
.zocial.statusnet:before {content: "\00E2"; color: #fff;}
|
317 |
-
.zocial.steam:before {content: "b";}
|
318 |
-
.zocial.stripe:before {content: "\00A3";}
|
319 |
-
.zocial.stumbleupon:before {content: "/";}
|
320 |
-
.zocial.tumblr:before {content: "t";}
|
321 |
-
.zocial.twitter:before {content: "T";}
|
322 |
-
.zocial.viadeo:before {content: "H"; color: #f59b20;}
|
323 |
-
.zocial.vimeo:before {content: "V";}
|
324 |
-
.zocial.vk:before {content: "N";}
|
325 |
-
.zocial.weibo:before {content: "J"; color: #e6162d;}
|
326 |
-
.zocial.wikipedia:before {content: ",";}
|
327 |
-
.zocial.windows:before {content: "W";}
|
328 |
-
.zocial.wordpress:before {content: "w";}
|
329 |
-
.zocial.xing:before {content: "X"}
|
330 |
-
.zocial.yahoo:before {content: "Y";}
|
331 |
-
.zocial.ycombinator:before {content: "\00ED";}
|
332 |
-
.zocial.yelp:before {content: "y";}
|
333 |
-
.zocial.youtube:before {content: "U";}
|
334 |
-
|
335 |
-
/* Button background and text color */
|
336 |
-
|
337 |
-
.zocial.acrobat {background-color: #fff; color: #000;}
|
338 |
-
.zocial.amazon {background-color: #ffad1d; color: #030037; text-shadow: 0 1px 0 rgba(255,255,255,0.5);}
|
339 |
-
.zocial.android {background-color: #a4c639;}
|
340 |
-
.zocial.angellist {background-color: #000;}
|
341 |
-
.zocial.aol {background-color: #f00;}
|
342 |
-
.zocial.appnet {background-color: #3178bd;}
|
343 |
-
.zocial.appstore {background-color: #000;}
|
344 |
-
.zocial.bitbucket {background-color: #205081;}
|
345 |
-
.zocial.bitcoin {background-color: #efefef; color: #4d4d4d;}
|
346 |
-
.zocial.blogger {background-color: #ee5a22;}
|
347 |
-
.zocial.buffer {background-color: #232323;}
|
348 |
-
.zocial.call {background-color: #008000;}
|
349 |
-
.zocial.cal {background-color: #d63538;}
|
350 |
-
.zocial.cart {background-color: #333;}
|
351 |
-
.zocial.chrome {background-color: #006cd4;}
|
352 |
-
.zocial.cloudapp {background-color: #fff; color: #312c2a;}
|
353 |
-
.zocial.creativecommons {background-color: #000;}
|
354 |
-
.zocial.delicious {background-color: #3271cb;}
|
355 |
-
.zocial.digg {background-color: #164673;}
|
356 |
-
.zocial.disqus {background-color: #5d8aad;}
|
357 |
-
.zocial.dribbble {background-color: #ea4c89;}
|
358 |
-
.zocial.dropbox {background-color: #fff; color: #312c2a;}
|
359 |
-
.zocial.drupal {background-color: #0077c0; color: #fff;}
|
360 |
-
.zocial.dwolla {background-color: #e88c02;}
|
361 |
-
.zocial.email {background-color: #f0f0eb; color: #312c2a;}
|
362 |
-
.zocial.eventasaurus {background-color: #192931; color: #fff;}
|
363 |
-
.zocial.eventbrite {background-color: #ff5616;}
|
364 |
-
.zocial.eventful {background-color: #fff; color: #47ab15;}
|
365 |
-
.zocial.evernote {background-color: #6bb130; color: #fff;}
|
366 |
-
.zocial.facebook {background-color: #4863ae;}
|
367 |
-
.zocial.fivehundredpx {background-color: #333;}
|
368 |
-
.zocial.flattr {background-color: #8aba42;}
|
369 |
-
.zocial.flickr {background-color: #ff0084;}
|
370 |
-
.zocial.forrst {background-color: #1e360d;}
|
371 |
-
.zocial.foursquare {background-color: #44a8e0;}
|
372 |
-
.zocial.github {background-color: #fbfbfb; color: #050505;}
|
373 |
-
.zocial.gmail {background-color: #efefef; color: #222;}
|
374 |
-
.zocial.google {background-color: #4e6cf7;}
|
375 |
-
.zocial.googleplay {background-color: #000;}
|
376 |
-
.zocial.googleplus {background-color: #dd4b39;}
|
377 |
-
.zocial.gowalla {background-color: #ff720a;}
|
378 |
-
.zocial.grooveshark {background-color: #111; color:#eee;}
|
379 |
-
.zocial.guest {background-color: #1b4d6d;}
|
380 |
-
.zocial.html5 {background-color: #ff3617;}
|
381 |
-
.zocial.ie {background-color: #00a1d9;}
|
382 |
-
.zocial.instapaper {background-color: #eee; color: #222;}
|
383 |
-
.zocial.instagram {background-color: #3f729b;}
|
384 |
-
.zocial.intensedebate {background-color: #0099e1;}
|
385 |
-
.zocial.klout {background-color: #e34a25;}
|
386 |
-
.zocial.itunes {background-color: #efefeb; color: #312c2a;}
|
387 |
-
.zocial.lanyrd {background-color: #2e6ac2;}
|
388 |
-
.zocial.lastfm {background-color: #dc1a23;}
|
389 |
-
.zocial.lego {background-color: #fb0000;}
|
390 |
-
.zocial.linkedin {background-color: #0083a8;}
|
391 |
-
.zocial.lkdto {background-color: #7c786f;}
|
392 |
-
.zocial.logmein {background-color: #000;}
|
393 |
-
.zocial.macstore {background-color: #007dcb}
|
394 |
-
.zocial.meetup {background-color: #ff0026;}
|
395 |
-
.zocial.myspace {background-color: #000;}
|
396 |
-
.zocial.ninetyninedesigns {background-color: #fff; color: #072243;}
|
397 |
-
.zocial.openid {background-color: #f5f5f5; color: #333;}
|
398 |
-
.zocial.opentable {background-color: #990000;}
|
399 |
-
.zocial.paypal {background-color: #fff; color: #32689a; text-shadow: 0 1px 0 rgba(255,255,255,0.5);}
|
400 |
-
.zocial.pinboard {background-color: blue;}
|
401 |
-
.zocial.pinterest {background-color: #c91618;}
|
402 |
-
.zocial.plancast {background-color: #e7ebed; color: #333;}
|
403 |
-
.zocial.plurk {background-color: #cf682f;}
|
404 |
-
.zocial.pocket {background-color: #fff; color: #777;}
|
405 |
-
.zocial.podcast {background-color: #9365ce;}
|
406 |
-
.zocial.posterous {background-color: #ffd959; color: #bc7134;}
|
407 |
-
.zocial.print {background-color: #f0f0eb; color: #222; text-shadow: 0 1px 0 rgba(255,255,255,0.8);}
|
408 |
-
.zocial.quora {background-color: #a82400;}
|
409 |
-
.zocial.reddit {background-color: #fff; color: #222;}
|
410 |
-
.zocial.rss {background-color: #ff7f25;}
|
411 |
-
.zocial.scribd {background-color: #231c1a;}
|
412 |
-
.zocial.skype {background-color: #00a2ed;}
|
413 |
-
.zocial.smashing {background-color: #ff4f27;}
|
414 |
-
.zocial.songkick {background-color: #ff0050;}
|
415 |
-
.zocial.soundcloud {background-color: #ff4500;}
|
416 |
-
.zocial.spotify {background-color: #60af00;}
|
417 |
-
.zocial.stackoverflow {background-color: #fff; color: #555;}
|
418 |
-
.zocial.statusnet {background-color: #829d25;}
|
419 |
-
.zocial.steam {background-color: #000;}
|
420 |
-
.zocial.stripe {background-color: #2f7ed6;}
|
421 |
-
.zocial.stumbleupon {background-color: #eb4924;}
|
422 |
-
.zocial.tumblr {background-color: #374a61;}
|
423 |
-
.zocial.twitter {background-color: #46c0fb;}
|
424 |
-
.zocial.viadeo {background-color: #fff; color: #000;}
|
425 |
-
.zocial.vimeo {background-color: #00a2cd;}
|
426 |
-
.zocial.vk {background-color: #45688E;}
|
427 |
-
.zocial.weibo {background-color: #faf6f1; color: #000;}
|
428 |
-
.zocial.wikipedia {background-color: #fff; color: #000;}
|
429 |
-
.zocial.windows {background-color: #0052a4; color: #fff;}
|
430 |
-
.zocial.wordpress {background-color: #464646;}
|
431 |
-
.zocial.xing {background-color: #0a5d5e;}
|
432 |
-
.zocial.yahoo {background-color: #a200c2;}
|
433 |
-
.zocial.ycombinator {background-color: #ff6600;}
|
434 |
-
.zocial.yelp {background-color: #e60010;}
|
435 |
-
.zocial.youtube {background-color: #f00;}
|
436 |
-
|
437 |
-
/*
|
438 |
-
The Miscellaneous Buttons
|
439 |
-
These button have no icons and can be general purpose buttons while ensuring consistent button style
|
440 |
-
Credit to @guillermovs for suggesting
|
441 |
-
*/
|
442 |
-
|
443 |
-
.zocial.primary, .zocial.secondary {margin: 0.1em 0; padding: 0 1em;}
|
444 |
-
.zocial.primary:before, .zocial.secondary:before {display: none;}
|
445 |
-
.zocial.primary {background-color: #333;}
|
446 |
-
.zocial.secondary {background-color: #f0f0eb; color: #222; text-shadow: 0 1px 0 rgba(255,255,255,0.8);}
|
447 |
-
|
448 |
-
/* Any browser-specific adjustments */
|
449 |
-
|
450 |
-
button:-moz-focus-inner {
|
451 |
-
border: 0;
|
452 |
-
padding: 0;
|
453 |
-
}
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
/* Reference icons from font-files
|
458 |
-
** Base 64-encoded version recommended to resolve cross-site font-loading issues
|
459 |
-
*/
|
460 |
-
|
461 |
-
@font-face {
|
462 |
-
font-family: 'zocial';
|
463 |
-
src: url('zocial-regular-webfont.eot');
|
464 |
-
}
|
465 |
-
|
466 |
-
@font-face {
|
467 |
-
font-family: 'zocial';
|
468 |
-
src: url(data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAIg4ABEAAAAAu3QAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABgAAAABwAAAAcYseDo0dERUYAAAGcAAAAHQAAACAAvAAET1MvMgAAAbwAAABGAAAAYIQKX89jbWFwAAACBAAAAQ0AAAG6bljO42N2dCAAAAMUAAAARgAAAEYIsQhqZnBnbQAAA1wAAAGxAAACZVO0L6dnYXNwAAAFEAAAAAgAAAAIAAAAEGdseWYAAAUYAAB84gAAqygVDf1SaGVhZAAAgfwAAAAzAAAANv4qY31oaGVhAACCMAAAACAAAAAkCPsFH2htdHgAAIJQAAABYgAAAjz3pgDkbG9jYQAAg7QAAAEIAAABIHLfoPBtYXhwAACEvAAAAB8AAAAgAbsDM25hbWUAAITcAAABXAAAAthAoGHFcG9zdAAAhjgAAAE4AAAB9BtmgAFwcmVwAACHcAAAAL0AAAF0tHasGHdlYmYAAIgwAAAABgAAAAbfVFC7AAAAAQAAAADMPaLPAAAAAMmoUQAAAAAAzOGP03jaY2BkYGDgA2IJBhBgYmAEwj4gZgHzGAAKZADBAAAAeNpjYGaexjiBgZWBhamLKYKBgcEbQjPGMRgxqTGgAkZkTkFlUTGDA4PCAwZmlf82DAzMRxiewdQwmzAbAykFBkYA+wIKtAAAeNpjYGBgZoBgGQZGBhDYAuQxgvksDDOAtBKDApDFxNDIsIBhMcNahuMMJxkuMlxjuMPwlOGdApeCiIK+QvwDhv//gWoVMNQ8YHiuwKAgAFPz//H/o/8P/9/1f+H/Bf9n/p/6f8L/3v89D6oflD2IeaCr0At1AwHAyMYAV8jIBCSY0BUAvcTCysbOwcnFzcPLxy8gKCQsIiomLiEpJS0jKyevoKikrKKqpq6hqaWto6unb2BoZGxiamZuYWllbWNrZ+/g6OTs4urm7uHp5e3j6+cfEBgUHBIaFh4RGRUdExsXn5CYxMCQkZmVnZOXm19YUFRcWlJWXllRheqKNAaiQCqY7OxiIAkAAEf0TzwAAAAAEgH+AiEAJgC/ADAAOABDAFMAWQBgAGQAbACtABwAJgDeACwANAA7AFoAZABsAI4AqADAABwA+wB9AEkAdAAhAGoAxQBVAAB42l1Ru05bQRDdDQ8DgcTYIDnaFLOZkMZ7oQUJxNWNYmQ7heUIaTdykYtxAR9AgUQN2q8ZoKGkSJsGIRdIfEI+IRIza4iiNDs7s3POmTNLypGqd+lrz1PnJJDC3QbNNv1OSLWzAPek6+uNjLSDB1psZvTKdfv+Cwab0ZQ7agDlPW8pDxlNO4FatKf+0fwKhvv8H/M7GLQ00/TUOgnpIQTmm3FLg+8ZzbrLD/qC1eFiMDCkmKbiLj+mUv63NOdqy7C1kdG8gzMR+ck0QFNrbQSa/tQh1fNxFEuQy6axNpiYsv4kE8GFyXRVU7XM+NrBXbKz6GCDKs2BB9jDVnkMHg4PJhTStyTKLA0R9mKrxAgRkxwKOeXcyf6kQPlIEsa8SUo744a1BsaR18CgNk+z/zybTW1vHcL4WRzBd78ZSzr4yIbaGBFiO2IpgAlEQkZV+YYaz70sBuRS+89AlIDl8Y9/nQi07thEPJe1dQ4xVgh6ftvc8suKu1a5zotCd2+qaqjSKc37Xs6+xwOeHgvDQWPBm8/7/kqB+jwsrjRoDgRDejd6/6K16oirvBc+sifTv7FaAAAAAAEAAf//AA942py8B3wc13kvOmf6bJmdtr33BuwCW7BYgCgECIAgwQaSYO9dLJJIUSRFVVqiaDWrWVYvsWM7snw9s4BkSY5juVzHTnLt+CWRnWLHyYsdb4pv4iQ3V77m8n5nZinL13m/381jmT1tZmfP+cr/K+cQHMFcm6F+RKWIQ8TNxAXiLuJ+4gniOfQi0eIJomioB6rVlh1KrS0kUVzaJhIDdLE1B+UWhRtWOAgXbkBQlkP8CmfRkLl2KyTbiovjoYBQXEr14Va9t2qk2PbS7RfMMbdT7aWnHjOLT4ntpbN34eLSWfPpSw8+a9YetGo3HjdrN5o1/VJl6fIls+Gy2YD058s68a6xU2rrOyXjMCouHQ0QYzDyqGScQUXjNldbv00y7oCOc1bHtop+TjKuQN+T0PekZDyNivq9laVHzG7jBeg4vFNWlsiZ+bnNKW/TOHNUVvQVTf02+Y0ta4/feOCWC9Cq36G0zp4/2Ww2jSvnZOXzqj2QLS733Y27npRft1263PvgY1AhjFQIbvc19T65FY1n4Qb9gvI6QxSqzSE8+HZ5cdnpcwP4i556TFYWz9x65RHcflY2nnwanv7gs3D7zqZ+XF46fPTk3fdCX1+/WiNihFsjuRLKeqqVei2Z4GpcMlOvNaA6gOtsMgHVURRB1YrVlkkmRMThQjaTLSEY4kLeykC14mU5kXLjgojcmtfj9URRhkSaN4Pb4DbWUxuoeDQ20dDguxKNbrO3BgWPW8Nf1dCs12CQH/0X5P+WIfTbxj2S7F/pYgLUzsHoHXJgfyC4nGJZGy0k+Og7aUkcnLDTlXiwN3SuJKQZD8uFuURPyE16XM7BUMazZiOtDsRp9PIbKEihjMw7bKocjbsDbndAVZRP82GnZvNHVcXukGWHXUlyPM+h2neRv/O3332j8/OcPO0OVHY1RHJqwOXqTbmdYsjHMAghZlZz2FxuSnOU74j4hNQwh6KIFkUGUZTAsZywdU3Qe/6nz0p0BblQjmUlH+NUj+EvdvfyvLDWafMcsb5UccOXEjRBXJtjRKpGzBDzxHbiLPBSy4M5KM4AO2AGYsjrl1G4IP3Wsr7yXWOtp62vlYwhoLqNclvfKBkLUNyhtfUdknEDUK3oISQgy3PQOrRWVlqBehwT3cJGWTGYdBMIjAECe12cXr3+6EmTOOTaKAkL5PFGKLfGwZKzRZSAJa9hQgBSGEX1WrZE4pZRchhVMIUAVUBDMuFCrIvMeGtjCC8s3MfAisu1hFvVKiPIC3ePAYlUcRuQnB3BLe5jn/7y/rB45sYtL96/Adn//KXjt/HfPM0iCjGokvWV8qxw4B77+mGOEehFwRX0KIFPe1gbz1B8z3Fuz58NMGydOcGg6u7db+3e6QzFxB3lvnLS8cB9YqKEHj/2yX0VxCZDu+749E4n+/QfFiN1kiaRQ4j6HA4pGaMDOSQ7HMUer2JH54sugXUd+KnrZN52jrqLpW/t7UX39vZ2bu/tff2tcPit1816uPP/oFK4lyAIEq8b9c+wbhTBEcuIFrQVlxBNcLS1WEu0WUY6j+XMEiXhmk5JBg1rw5k1Q0BFoq/fLcdlFf6jf+PRvy6hf+vY0b/gq0kbq6mvU1XCQYSJLFEm/s76Ht1RbcXgO4wy0AjChayzveQKEgjkootpL9kjZjGaq1YNu7ON9D7zJRwSwcPX9oPcGgi8PfrMzz5LuIs2nZB09I7ukPTsO2+Pfuxnv2E2xkqiHnqHMcrUe6IuvsNA/6LdkVWLuigtusQyFELSYjAUgwJ0RcwuaImaLTAmh8dQhCGGSiU07kB20RUMRaKxbK5c+sAffTxgOAigSWcY02Q2BlLLDcToVuOVCAlUWEQUF1eB0hoDWY9VT6rVBhBqCcreUdSoDdSTX0FvVHbNhV3h3738+bEXEBp78/LXI6GZuNts+N7/2Fi4g3Tx5dgd030b7eTpldTF1OrTa6883/neSZR9/sr9m1bthcqfkuLnqXDyX8jpfpKHJbbWeSX1JWqQ8BBF4sPW/LcKeLFjNGGDxY4VsMqKhYViK4OZlMcXCV8yoNxaNNZwkjVUovFQySEAWfSY6scD6scjGSlg0qzUNnrh04Mnw+sHcZ+SDQdMip5VDJ7FkyPB5Bge4F1MNCBD80ikk4kRkMgi6ZapUbpaCZs8KTdkEK7x3/ociiGa2XPs5jWUq294puF9/nrllh0//K3PdX44SZKLX2f23nDzrPS8M7tquPPzzmvd6sxpxP7l1c7i1wkbzMEC9TT1CNChhwgRKaICFL+K2EjsII4Qf0m0ypgmZ6otGv/qYbjo81XDK7RbCdywCV/2kN250MVqK4jnxEtjYlzScuVhUPPjVUOzt/VkGf4h/ahJrryXaADP8JLhBIr1VpYki4l8lcWK5OSLRo+3vbjCLK3ytvVVZWMFfEiSsRNY7IB5s3EMZlRygp4NJ6qDq9dv2ob1ZU8F5jGYBGm4YhWWjAs7sHbdKRtbtuNpzmmgTu22Q4dNqViXLW0FM5rIeIFP8cwmMnK8lkmwDZCNUcRlVHNMGJkqra5grWeqt/+4PdEYJWGlOFU2G8wnZ/yBdLqW/iw5mg50xgNpcvTVv3v1EEfR/a4+Vybkz2RCgTTji3m9svRWNhhI43ov1H0xJ+nzin1fg7vTtcz3kRMeFOj8C1xXod/o7IZP9Pdnnnzymzy5jd/6i78IpjL+3wsl0wEqAw+TZO/V3w6m0oFfaXqUqqYFctvVReQIZDKBzr/CQyxeWEMNUnVY/2HiuLXuht/ZNmneGAQZVFXLPGCsqonukL7MJHIViLxa0VXJqMFqiEDnI/BZU2HqeX8ZT70oGxjhEIbqh5VJQlGvyjrR1AcVXTQ1U2MA/zW1E8wgB0tg4o1qxeqwunAH/psEraXGM1gvcWw41Bhct2Hf3du2l0rl8ubOtki4XBnMR6LRqN+fd8USmtvr7i9Nz2z/zi23/ABd4erVzfPVGpo4vmfn5GQyNTK8f8+hXcHg5rHl0bjN5vX4/T2S252OlYqFfDB4/xVUu2NsdGyMsHQ5OQw6wUWoRJzIg0ZvOfAcpQHa5nFBZtstL54sFVowuxhRDsRzwaR3yUWcA/IGApZhfgRX2yjCpywBNWrBRAaDwi7jxy2qwXTYiMvxhuYBdYwBGiheVtE8lQEgzrEedKhnbKyn81zPWBz9e0f4pNN2l81pXorBTCCQmaUUPOAXP4Xrx8i923Cn4HT+4m9xZ8Bc7/9BbyC/TniJILGOaMn4JyhsWxcr1ssHQde4fTINusbNtXVHBekhc8l9gJB9kuHv/o4wfPp9gI1dsqo5rR9S/5Uf4q664/VqvfuDQiXqd0rBYKlzw42dj9zYOV4KpWnuf733IvpBKRQqdRKlYHpoKB3MkDTxvi7+Ccx7lBghLhKtAH5PqQEWSBJr4mWW9O3FIsi8RK8LI6SPmq/L+tstlsDCmXUKRZ2VjCa8cdXbbjWruLUZE4rGGDQ1WRAltOYJZPO9DROlLwtgMlarzaZJpwNjiAUojBEUZvks5/GKJC5QGcaUBd5GJgtICpdULAtcyALWMf9/HbsaqjWT071DdxbWDW61FRMuf579BIk+Pp3vvy04sn0vudAUzaaY/7Hyw6c/Q05Drbxy71v77cFcPVzs680sRiOkk4v5yc85cpl8Mvxqn8vniPmvbnCwMDYxPX/jRzJDhEWrs/TLVD+RAV6eIjYQ14hWCs9bATDFDJbhq6vGNNPW11RMbabPVg0VlrtJpSRY7iZYX2M2XNTXVZfGROIFzO/zZd357pLHEtNE7F3ZyHrai0EPFtEsAFa2bAQ9WOPpcehc6tWI1TCwt7wUt0qgCteDqF9ZMdYpINArrXXr8fSvWwPKdf06XFw/DSuxEatJLNRpXlGjqanlWKgHYWn0QlPvlQ1fBET7+jjUZVihZgFkChYvOiXr0aZuU1psMILFzpis+5v6NLaygLFqA8MIG0KWAQS0ySUjyATCbg0wMbpur1hGUbbEgnzJsGoE0O1AiWQZIN8qkHHSnay37hwoSDb16L2fOIYGpvaX61vTnoHgSPkTD9335k1nt5w7TlO85AiKKT6b2X7/hP3AsuFp7cD5abL+jco3v1lBW67kSuEwurRnx5WKcnBk11Q44VeHtOL2FdvvO3hmat/WWdVpV1VsxTAOtBf947rTiDzx4in6hsOVb+BHEAgzBj1PvkXcAMixRWKKD1bXVgEQHhPbb/R6Y1xzZmPKCxx7vGycMIGoXG9UvW4tyWEK9qhAqWUS7MTMCOq2i2AURhHgsEwZGwbQPhCFaUliU8FFql71Az34DlMaUyLCdiMUsxlsO8Bf8j3SFohzldfYG53CnBaQ/CL1Xxmby+lAnH12g2RnowJNUVTzHlLwyLyXO0bdzf+ew+UMqBRFUz8ihZKmiT+3+b32zKZjgXwk9rWY5LDnRfIVN0lqPEKq03Vb5yn0/Yj6VK6q0iTjJpGbJ0lWkT1P/UbMzlPYzFBJhPBwzpEQv8Z1fk6hvwrBOyCKpDV4DkeSshS/+k2vS/as/u3v9c1Mr0YfX1Ow2SiSQNeuXVtFfQr4B+S6lBmlGwOgjhRvCn9GENjFnMhkTGuJzCKnGHf3OgYW7P7nMsgxJBXtXlVQN0yfVG2DlYnBWppTQhG68EicfNOjirKgMh5HeLLDndwqs7S7fMTrSvgSLKXJblEgeWXFDc470GcO4CXWCOraXZSdooheop+oE02QgFPELLEGOHozsYc4AAjtOHEjWJV3EPcQ9xEfRl0Ma5RBA83su1ipVCzqcIaKmDpGQJ1vOnUFN2tYxHPpanVpF0WcBTA1eQ5at4LcNMZOw9BNbHupVCE0Z7G16uCdcPNSSSS2g6Sd3nsb3L9UHzD71h69hPvqVt/c4btx31DT7Ft/w724b8jqmz9xGfqQ/oAplMtqu1UZGIIWvSwZJPD8FBi6U5LRh4qL1cYwcH1laSZAXIY7V62dh3GGEwbMSAYYCcYeKO6RjJWo2Fq9biP+yn3W0INHT+BH7pOMHTAsBMNCkrEfhh06dhIPu2gOW7zpzkuX4Qv0i5IRhjHhMi6dhTuKUCtKxu1wx10fuh9/a6/aNh6Enr4pEDQ8B7Jn30pQCtrWXdjgDu0AOeRvGhfD8BlrGmf3w2caa0CvXK2NUmDlaO7qMoRt7whtFQHIm61y2l2tZ6v1ZL37v4GtaWxV/1p7FXck/zM91E7ESfG+uItv8K64TwnIDoYaoBiHHFB80LrzavPB7p+ZVau2Pd39c2c6k0mXr9c+nUmnM8xD3T/3UFxYK8qSJPUqkYjSK0m84HekHR4PXPwCb7b/4j3jpps85zyX3DftiMcvxeNXL/zf1i1dP8uEge/CRIn4GNEKYtujp7rE0oQAq4urS2lL4aeDWGOkEWj0XKXlwFDAbY5CetmkMAqAKVjkPKydTzIBSwS0j1wxEhLGOHpCMrLQVwDECjRn8BSsXLCp+2Td3jQSEVhtRy9GrW5QPW8ILskXjcVNm2EEVd0YhdVNgA9IP1vH1oIJdRKZdN3bMLvNYYD9f5gbyn/2p5+9vA0+Xzt/4TXyj7ddzg3lfviZn7126vXFUD4XRp86+5ufvHVnrrA+nMuFO3vO/9Znzn2+kHsznM+Hv/D6hddexbKAuva/4He3yf3EBLGW2EX8DtEaxrMDrDrtaOsbK61xzPi0DaDnOJ4amIxiS8Fc7ra1l2Jz4wpodts2GB+D8b0VIwg23Jw5i3NObLTuNqcNgQpHksHBlEz62/qk5Xrq87SNPfCJwH5tOV0KVrCcvGRze4Pj2C85qSyqWngUFxfk12O91eGV60wENTcNmpxzhTO5vrrZHZN1PInZatfBlDGdklmw9OPuJMtVMXry4guo3gjpHaWuOxOz2BwGVYPnGKvpRgmgF8tEyPfdmCRzjunP9TUHy5kBXz0oZAW06l9EGyVPxm4u+/aO9W/qy1IUQyYjo6PZ7adO7bzlFDfurldjY3sDow/vuUhS1cLq9YnQZCRbQfcF0yPRYn+14O/zV76W61ve3zfaT9b+dHD/zJjbc2TZimxPD0UzZC5aUS/s2HXnh7gxKWmfGL57z4VCbU8ymB3NheOxRrEw6NVqsH4I0zbFAm3PEm8SrcJ1v58xBCtWwLazvWzU7GAvrDLXYQTWYUQyMjDpvbAOvZLRwFTqbRurux4e+z+txs4cUY9LevIdwxV6T+9/Z1F09avFFlxjD8QeSLKirDSJJdEVT/abHhn0gbI+HkBGZgQskEBkfBIvTq/cYgpDeHEbimGvYfIv1DAEbkx3ITAWZJ7r8FdkXIjNZGslEpZvQC2herbr/MWg4X3/sok4sMtRRFkYc+CV/S/9wWc/3LtOyjGSqqoiy1I2BIgAMYx9jLeh5aV0Xg6xtkZp3ZE7b77zhYyTIUG9S7bhYfR7Y7ffMPG1+z7zl4XIi2o2FQupHA8IAAXCpWLNU0Y2qVd0jW/uT3sntwR7Jxbv2nfxN26eLLlkJsXYOdp31oROhOvaVupPqQRhB426HvToEqHPlZfGTMtWH5OWRh2EDKXB8lLNCjH0lPVMFa5IP1g2DnVXoPhP37JWQJH0wjuGV35PT7/DLGa8abX49mjonx6GXjt0LuaVAiwKXD+4KIo3nS9Yi/I6lDPdirkshDE2CvMeHR7BizEotwY27MWlHmUp2dec32QKIlIZSNEehWTpVKYBuMTLeRvW1YPXI4udao0sjgbAFbAb5/W4UMWbSWQ5toy8jUqEAShTosdQhMPO/hKpTLyFCMR/adXEW9eIzv/80hdWcgEWHsdGeE/D07e6KcY2LrM5L0ITH2GhyaXNidkQGSBpRKMUo+Wej6C0CvzJ0ZRDUYNayOXLBylV9EiazQngy+X1ROUwqnzgS+DzrIJ4tEPcTnLkducOHuXy24vOyYXcDudWaNoKHaw6LHD+I4DpHlUYW+4CzzpE1e+ySzyLSJZijVOIpjjWbpdku1NmKYbiQWaai32I3Er0ECuJQ6hJtBQsJHM9IAWDnOXaeJ1ANMMBWq4aGWhaZ7rhD5s2O9KIcVh7ZPl1GavGmIpkyaUR+6HmkjA1LO01cYVxxCKMr7zwjz+57nzteUeEB+jkO29/5dl//GezlcbUAs/R2XfeHjlgDWV0rmQwLA9topENv8fouXfe/mr2HwomCdHSIkVjEoLrB0mIpNhsl4Q+D2Uumyv0fMD3iuC9QasVm0aEwV4vxZPHXO6SDZsAxHRI0XuBw4MK6LqJFdCQkcftdpfH2zs0PL95+348llf0TZjxq2ojWw2iYeTmTCeN6YbJNqBcaWCDKVNE9UaSo5J2lExj543X03XeZEUEUgIbCPhvo9bAtAn9DS9QZhllzFiEm/WCZFhzfGVyzfHja/7k5FAosjBVzWblZU6PNur2eIODkSO3c09zp27kyHsUl1Ko9RZVSeNpzs5LNJ0IxpPBeIpz8nGp6E4mFbXH0cN7OD4a95XtKgJqITd3Pvqv5zofRcdTv62VK+Pzp+KJhj+hqYlEpRZNpFqODkKnO48sVeL+IUEIOlRN4pzDko+h0w4XTXqiDuXHm0YjKZKOuJJb5jZLIZb1cEwl0ajmvJ5RzaQ3sLsfAxkvEXGiQLxCtJzYo5zG6KRghQ9wgNSIUe2WgDWAeeGwx1TUnAIoaJECDVA0NYDsauuyZCSBvLKW0Z2VDB8oAZurbfRgp3JSVl6nNE80JuKl8snjAss7nF57IBg2la8GVKIHmnpBbtkdHiw/0srnCZa3yT5zhOnTMN0WXiQzXgGVkGkBQ1VF2QET1niuuzWfObH5/uDEi+j1zr8lOh/tfO34U+lLO+OxvyBn0dXf2a596M1LfQceOnDgIXTh2Ef3zo0/jX6nc/xbqc5LqEo+eWT7ncJX0R+g0tXXHi+Wt9111ysPHdg/M42NHJaQrm0if5/qAaksmX61AWIZ2kC0KDxzNL4QePpkJxGA6RvC09dg2kuMI1voAwxveYFYW7E0iFk4wbT1dGXJr1JJZ1FXqoYfxkYjuGZEhfZiVU7yReuK9JGyzrxrSID5uQr2zGFPtFAxHNDgkIwcnmK53crmMEbKpgFO5bK4mEsI5loUYMAAjB2QcNTF6INin6mm9VDFGJLbxjLQ4WTFGLWkwjsTPx+3pEJJ1AMSA9LBkCPvQdGg4UOWFhU5oBYX/fhKEXoA9AJBy4o/8IFgihNWVG3qOXnR64tEsWukkAVF4QlS2BzpHwA2d/eUNNwx1ICOcAwHBsEeUeMUk5axEwP+J+tJt1dtxF3AgEkw+tV4Nt5Adcu/4a1XvQ08hqtn3ZbbQyK/MNH5m87f9OZ6enKaD6Ee29597FbH4qK/82UereM7L9yW7TlcDobKxVjk7p5R8vjVoQ0bKPK+nh749986/4O8ORhacaVaRfZtW1G6t3fr1q33lUr3raig8sR9W3st3pmjPktVia3EDcQ5YjvRWsCyeh/Tbq3HQHe4vHTcgaOeeroM/5B+vqyjd5e2m1LZuAALsB3hSJOIUcv6fTBPu5r6sGwcOAZ0f1zRnUD9sn4aiN6TMQVTXaRcKDNKjqFRxgOQcwwNRBDrAsIvkWWUACM/AvgmzkbIKKqMUo24yHAYhoI4S2QGWE8URTDuKdFZFsWv30Oxtmz99O8On9s8KctkaqChqrSz0Lt8bE1y/J54vNLgeF5g3CiRlSXa1d+/Mj51YrxXFhC6+kdUMJ93uWhXJhplUUoaXTW/ekRR14aX3ZdOlcbqiGVoWqyPHBnkg6vGp1QPqFwB+bMZUWSVvlR4xYzvoQPfuyL6N2xY5fUO3zQ3JDpJTpNljrKVawB8i5NTfh/TnM0piESClPDZR9ftWJh2ewqjYQkhZFOyweG9w0XNgdhynaLKl/rSNoGyySiWILlwYiSRQGtTAz4RIVL0DWBMW7j2VWol+X2QdYQ6ABMYRR4s7DVzcnBYGFoilvzHE1SiC6TzvMjt4509DnI0EhV7DoVVZ02UPseRzHmX3H/x2PZgwBafX9ZDTsmu8w7pDcnV41Aju+MxMT8JI21HaCdzHn5YfsW0329LHtl/h2k3rqJ+QlVMPDdMmP7rpZqJ4UwvMHrXcHhNpi7iAK0Hd5gu36JDVpYowUYvs/zWNWkUxSJIElEsQ2nXtVg2U8+YOuv9v6Mk1nndjAkL2nLs5R8j6ceXL/+4808/BrTpKBTzst9FAq51ZHKlwd5CvJwvh9NuwUExYrD2qd0Tw+svhBBLOt54/77Ll9Gp5Q6SRPnUwJqLDoalKNqmuvuzlezypmZjEzl/X59DKubXbfeEbtvAqHQFZKgAv385/TUKxyS2EieI+4gniOeJ14mvEn9EEHJmoGHFUUHUu1k3lOFfKl3xcBoLmhU+WZLDfi22CAogawZZiiiVxgEWt8ftwaq+lskC4h8Yxh6vDGj9TJ01JwIsNECctHdAadAM6zWVR9V8QtZtRm8sA8CL3a/4C3H4JqN6GdNTDjP8fzUeefDzS2QW3lPjEohj7DmwB+wiae+zK6tU9Di6wnKILiwwPPJu91YCPMNylLPmRDTJI4rufLfznYP9jVNA4qwdUcjJMxwPC8Zm4rTbQ0lFpFF4HJr8eRPtv8de5Ds9HQ3t2jwxlSOdtfyynCPpOT6+ZffmtYd396ZQsQcxgUamZ9tedPahKapx6r3VC8un8shZLbw/dNPaI7tLyfeHokMhl7bN5+zNyGzBRiPyBUZApEDKyyWHuCxK2ijaQU9RAmvvsVMgIT589c8e4GkkOmCMQxVItLoAVIEQK9gZNys6B3Ko/pWFtRenHyT3fflvc1OC5uMojdJcL5Nrb6GP1L+7YqE4nY8zNLma5JfNf2z3uRsme5szDclWqHVW23IRRRGkJPr7Xxm2/plfGRaiyfNk7DEA1mjz1f/2LGPGY5AppyeoGqEA11veRpKrVs1UBfOCdLVsaKhImN4Cg3WYIW0Bxetghpj/k+4s53WjV9ArnY+86nxhv7hp54J0eIn6yS98929urJusNXu3vDA8Pv0GPJ2/du2aTu8jVwBvq0SQSBL9RJOYIdYRi0SrByuG6apR5tv6sooZ+tG5qhHi20uEoycKOr+yEqA+wbdbWmoUOwBp2WwemINmGpq92QnTK7nehFwOjykkXKCw6YohQE2Q8E/BCt0PtVhF95sBfb2nYlSgoWI6LPV6xchDLS9hoaIPVYyVUFsp4VCovrpirPC0jQ2mFz4r14ZRHf7LWjKLfXfYdSdbdQq3u7Uk1KtxqMcbeOz7o3Al+X5XtxU5ded+x+Kkc9L5V1A4AH8rThRzdn6IHPq6Scek40dO/YtOFHV0fngSj6qhW5z3iFc74kbxW2LnL6HWeVhEX5wSp8TOJK7xzimx3+x8Wey3Gr4LNXPdN4OMHSGKxFGiFceuuJAFaR3dLAgoL1IOiX8f6ypmFA5M59S7OltZiloo1lkxUyGiKSAOJWD6GOJQjEDRkEIgjxHBeHImPJUwPPWmazhkg1PNQBIxGkajbgbjVq0bzamnoXBkdqyKDqOjjx85Mjte6TwLzHK4Mj4LtVVHUOdZKCLi8aPFRTAoofHxo4VFxJFgdi4WoHJkFVQWQYsRjJmX8xPAIQqRI0aBzrYSZ4iWhCnNVm1twb97o5XfaGqZtJXp4JzcggOlTqC8uT6zOAfFwLBZDPAA6reVAaAAU0wChDPGp+HH9s0BfueInlpjBOO1wDCAN9UTiV/P18KaCH4rZ2blwVU1xeVAzNtN3bNC4KBycSsOkWOF223Figs3NQa6kXLVdKzBPFlaam5q2Wf2HX9zeOPuT/gUlnoU1R4FTST7vS996tWXtBLLuyj2rgcevJumXDxje+DZZx6y9dncJ2656bjPztiEGy7ffYs6lT45enrd0Vt2o7ErWH9dOfTG1Oz8gc0zXwfG96OhIeSX/Y6xcedrkpNsDJJO2cmPjtqe8wvVPqffqTH1hq3zat/gAvaP8Viu0K+DXFlNbDZjGvcTjxMvEJ9C3yJao1jK7AIkeB8u3AnW01N47v0U8Risgw1LHhzPWHreDFW2eOxOy1SN41R7sZ8/DgT5ye5InLQj4EsS0+yjD45qYCWcrhqPOtv6ucoStRE3GJQI6/Vp0wUw58I36nOSMQU0uwAm2YJk3ATFs762ftbKGH0Eio9IRgigxRMBYjcMf0IyDkJHA4Y3JOMZ6PBaz/FKxsehVjOHGb9lGQYjF386aBoGQgk78xgsdJLR96Bo2KLvvT3y+n+nTS9AUlpMJONqsQXXD3gBjHgC+/UEWzyR/KXlPwXEZUyvAzK7aQGbiezE5MYNVgppa/y2i9gYvKJ8nk9lRncdv/M+3PGI3IrdcwmbEU+EsLdALvTi5oPyuM1f6tf27nvquRc/iQn1GTAs9Ffgix+9E7h1397b7rmEBz4IA2uN6bmphYNrX/k4btmovEGwTG9hw4u4Rsl66brJ6a0OVBuqV6tWsOf3l7zMAs4QSc4NJB5FA5XGdXcjp4FGF5HpdCiBHMyUTVsVJ4iZeEEDIIKZopHEeYwlM2tRJL3XbdeM13I3N6r4GZl07f1vRN2IL1i6ONhr4Y8DY6NF5vI3memf4RiiyiT6+icn+5vLyC+JFBmOkszKjzUowNB+d8a3Ym+92PlF3hW7NXH+RnJ6zxkmHhBcfKLJLAyle/tXHx7dd6K6eubiX6ymIoH6wv7q5r2rnnts59u9qyrVlaVUj/9kc+hoLO+/smrlg2iwlEn09SXSZeJaJZkq9a2oio310vBMsxdNjm5NzdPIngK5FqZjy/dPrxlCIYo8coal6HwaXlQRHXunymvdXz2hMDYlSaaql3bIcUcwrU2Uhk/3BDZ8beDgTJ9NXLcxM1IY2D9ddXpTK+/iwBhLp/r67u4tl3tHV0z9Vaanb0WljN5LVvpT8MM7X0/dPFasD20ydT95bTX5c/LbRJYACz2KjXOT+WymoM+ZHCObUr77scjJBLCfw0qJzANPcIAJ9ERTd8gtQMGYDE2LFnSj5RqyRL1b48zwPCw6DetbBIurG112eO/atO6O1+5Yc8Mjs5SNTY6m5xBpI89Xn7fLvF/OBD2FLY/ExvYvnD+/sG8s0zq5U7RJkl/ibWQ8JPsZyYXjTPS1DRRBlUGXHSP+vavNRi0Pw3b8g1jsZjjCtVv7sJyYdRJuYN5ZyXCz7dasGzsBZucFGIt7m7U4i5MmmLbelJB+g4kkesDc6JGMNPziYW+7NZzG9ww3BLBjJWPBXjR2w4DdkjEN0sBv5kcs2v3TMFUHVCIE33WgvGQ3S8Zx/Ig0TFJ/U98tv8HWmqPz249ghjqgvK64Z9eu34krdtmQV2Jl2hyFsbmmXpON/kmY3lnF8IO20d2y0bMAzL0dm8YHcLo4zDRmvQjp1kSOG0aeDyYGY7WK/XWaGWAxuRDwhsktJkqv1xpJ1q1Z+VoJ4MmapWCs0FjN1Fn0a5vXnuzZNl+lbbzGB9koWT9DFpLnVmTlTVTveXS55HxczUwWHQ2PuCpwadNIeXuoQDJfRiTPOPrGfd6xks1OZ1aURtfm7tdR7ciWvy73aIVVfU4v1ixBLkSuTF2dHdntdcn1C7RITT1eeDQ3P9cXcQvuuaFhsLdPq7NKX4x32UuOpBst31Tu3TlHeRwgKJP5Ic+rVszxFmontZPoBW0PVG3ua6jDwi5m7HX++rWEr0gfK+t97xoNqW2MY/neJyste8aFPSxGxg4V0hPDArReAuGbT2Lgq7JW8ryZU28qaSzwGjj1olGrY/8BstLysY5n03heobGb7ZZNIKQFmts2RvaWSbLUWw73bypGE5Vppw3Rw/2Zw7W+M6HIhfzQzdk0epqqBzfnyEqokM+S6JiirJjbt+UKKmgetH68b1adKyeTDkfflmDfQLE4OTz4OZdr+Xi8RLlcU2Mpjwdd98H8jZlrVSQaxCmiFcackTQxjoV3Biy8Uy6EAdkslc2Qq64Cgh40uT9uZiEDPMbaK4uJ20pLxilXWZy0U2nqftngPXjKygVo8DT1AVmXusmYwwjH/bBxGUFRigJxHU9kUkB2cZz2BhXSSoczs+HevvT95U9EEU8yFE2Tgiye5kWeItGblzofvfQ2olJ+dNCfTPo7z/tTKf/ncPFz/vvRzZfe5vdPkC5GtGs+edrlpFi7LF4jLr311suVZLKSRDOVVKqStHL+zNwzP1El1oKseJFoaRiCJIS2JSNKAgC+KQ0EgL6nasxxbf1wZWlwzGzYVjUGoWG+cl0oBLQ29vbhRMnlUFwuGet+mdaP3Y0OrW3y+7rlsvJ5LVFiB4dWzmGVm9sBGnl+0/7Dpl93bEpWxkVHIFcbIoZnVq7btHnf/i5o/NVEym6+ZIlsWDTYTam0fBcYFQJQrJk3cGYDJlXs/jVvs9Tkf9STzWTSs49++ztPzqTSqdTMqp279+/bte3xVdtj0WXLZldu3LB61ejZaGTo/KufOTsci91RyI/vzE/aJZc4KSuxHmXUnUgWJudRfNPYruyE3SU7J2U5XlTGPIlkbiqXR+P7d22fffzxmR3bjhzdum16Jf7Cx1uH1s2tHloWjkajw6c/u3nl3OCF88Or59bPFAorkz5O2Jr1+wrRlNs9PzuzaWXSywtb815oSWvufJ7g3l9LO6xmAui7SowQ08RHiJbNzOLkuzmbFcDtU4M2jNunuPZSyG0WQxjCz1ieJM00EictS4+DJVuJg+UOWBMXLdgoORBJZnv6aoPDo+ZqTYHwXuIIMW9GygflluwYMHNH3JYvtyK/zqJYqbbMXML/wwOFNSKOeWc1Fm/igYqI1F8WvAMY/+BPvPkmy3KeLiT6gC+qeqzvDw+4xNe+kVWR01P81FNzO9bdfOfNj6ya1YZ2fuHE1tVXpm55qvqkS121ZXSE3758b1VZd9A2u6zx5q+4pZ4/t/tVTzLUQLTjANl7//bcI1d/vjX0mZe13yA/tONKc+vezjdi/Rx15YZ9f/7k89WXdzHX5ckUzPlp4hLxCPFSN6t4k73dWoELQ6Bhg1iqPGgZjA+a6QgPHgXVqmI1bF7O4Ms5LJDPHD3Hd69I/0hZr7xrrNXMnTL3wwqkQc/eb+rZ+wmhaDwKTWsrIJP9u/dhmHG//EZwsLxsy44P4WVIYxBCGA8OAV+lt+++/wPsY2XbZutdXqpixuny1Pt8ZeYiYJVnjqh4RNChHjZZIEXGDRqzYmFKzGX1GvAOdoAmTPCK4StI/nqjVjUz8fBuGo5FA/AttWwCs6RLkJXwbpcHOVxJe0GwDWczXMBTT+2LFex4f4wUFEPBUjZ7YrVa9rr8ThdNkRRFkyzpYkXWzrAkz4Vd/mYsndkarTMKbw9QlC9y14zPKacZmv08ouzItivhZ8ia29+bGkFkRHShazlF5ASPy+0d9qtuGzxNKiHG4XAONJ7bNtQTfG2+UI+JVHVDb91DIorjRVZQGURSDGdnRcVGBytzdUawawdIcrLu8yNeitrDyS/k4h8mlxCrhTwbbHaq8xcUkjeTmhvrXcJGh1AHONNFTBAtCpkW9hJnkgLOQsYt3SrSJdPbz1guBEbC22uWnBaslE3XyjJk7UZLdXelPf6Hjz/+h+gp8+N5fOn+I7pxOvKymR87SmwivviB7FicDmusAyynVJaGrXTYYbG9NGGmwy5NdHNhN+NcWGOjp72Y3YjzXwlPWyfKOCEWb9ZigfRwKmzQTFEzPDCs17MSwJ2VCWtm1LAbgTRthXWYNIPyEs2nhldgwlyJ88l0j7yk+CJR1RQgw1hNxn89w3UCZ7j+/8xtNUkNWzyVqhXABbI029zafya/lSS3TKzAKa4kOZgIkjZcaCaC/7kc13KfmeNaKzQlZd0psppvStYabaRupIZhjdYQtxKftCKChgpyOochGo77GWHQw4NYPpiXk/hyK75sMw2Sc6bW9YOI8Jv2uz5ZMUpgk/dV9JIZ7TOl93mcfOjHuzWpeDKbGzSXoSS3RpefxbPsBIh35IyV8NQSNm02wV5YlZU3OEKIlg6bUDwpG/EzGO7VLR8NTCjIYksFW3xft/SsKa+B4b2jZHfasSVbRl3R4mZdUISlozk0MIZwUAr/hz4OhIgZSU9mR6kxZMau6rXfe+nFQ4eCuV5PKj06Ort6ZCyZXr/+xmqZ9jZXvHzDHuQbXHWoR2BJxsULnqLNnvV5GRox+L9QHByuSIiiVcUx4HanRpzOPE8j1u4oulyJ+MmhhbyfJJWRsSFF8X/lib84deKja1f4herY3MREMpVKjy9fc3bzRjVbdt96vHMzXb799vF81q02tvj9Kw5LshYK+zSVpjxO59BArXLw8snRPE/emvP5RT/L8gM+b3NlzJ/w98YHbHatHpvoz9ltuYlMkGF6kqA70LXOtfXob6kS4SFmursmCbGtaxXT5DQE0dqS4C3r9LuG7Gu3ZHMDluwGG8teadHmZmPaI5ghXZ8pIjiMfWQMfupxN6yMWwb+cMfJw6FIJHQYtQ+HI8sOdbxPsm73AvnsPMxVKET7fPNXDy8U2BBhYohZ+o9MuTFGbCFuJO4iPkf8KUHUax/cpeIZA1FkFTGYBf7DuwRKqPHrAMzMfdC8mfqvATdMNY3/ELG5NSvtYhSnXpt19Mv7ccI6PMD9Qbqrd/nbvB+3/n99n0Wl1x2LuOXNs+cG873BgIMWBdveJ2MuiRM4++jW+Ye/e+FD7WfvsJ3ZeTYcfebwTmQ7s+tsOHLoEz2ZV5xKdLa3FAzOxWVXdG1PTyI+G2J9TtHhCLlsFJScDmdQtH+EsjECY7exguBmKLQc8TY1kaj2bzyvcBIr2+0cr/IMaaedC8PJpM/PMKJDSiFWkFVlsi8sUDzjEgSOlXiapN2emM3G0Hab+Ngrb99S8gYDpWhe5Cg6V/BEojmbSFPqwvjwxcMTa56pHFrWT7nmV28XhINQss0vqw8KM+FIMjke0zhtNJaIxWfiqt270W9jacEnSRzvg4cLXknmZgWaJGlFoSlOYFmKvIFhnA6J4VzBe7ck49UyUgSGhLe38RxKpLz+0d2qjUG8/QGGsdlFmq7HC7Lk80kcQ1qvLzpCngCJOMGKrayiR6kKoRArfrkbFAdVdNb6XKJkvPtziermuqqm1aVYVhdZseIulAwKg29au0+rA4040pQoimfIbFJG6EebX0ORzptf3ru381vld8rfeIP6Sefhi/+zk3R0fn7H7RPIPtm5ycw3vbae5oD/nIRMFIg9REvE76NUrT3+DvMFluJ+kQIVGXdaaSsisKLUXuRFJJobYbHph1NVZJyJQoHg9EOhVQiFsTyNy0uSK5XNW8lstff5ByARJVflYSRjW7hacUOlZkYjk4160iMx04MN0FXJJmo0fnDxB7zYLN70g4fO3LMSoR+Q5IcPLo/F632x+FWBfP7qQXQ2qSbKH+s8h+568pkbSXJPrIMn1oyZvsOMkD6iHyy7bcRZ4m7iDeJ7xL8SVwkCA0HTEh2lTdQNpUQZgYEOEFvjstghhUset8Ul6Zq15we/PY6gWm4Sy92ewZumq5ZGAFvL4zU51o3vs8bhJqyewazFg0SykcFbsrs+Fvhm04EAT4ZH1sy0WEtogFyBQr2G2bUOwgXGkl4OLAaqUat7AE9i34xIWrwN3A5zSVszzFoyBxuGOBZsfinp8ylyiScdvCjbQwrL+Ioy3vaeYHIel53hQ5wSjFAMing4SkYHpFzQlmIE1lGzM5omJASZLeRKPUM8ZSM5kvEcWxsLIY7RBD7JJDwBl0J58umJQdomCCwlCgdIP+tjKJeNKaosTQI6pmne7aOEMQ4hko8A37K13yftio9FguoTAHCyWhjxnIdyqW555hucjGhW9ZciiYK8a4JU+LCLE1wrsnWXN+5EWnKa9+4WueFAOSEyaODPSgjZ0aHDgTv9JN2XZ5UE73ChQVtwpG5DuXwoSCO8/SJmE6Vlc4imRF7x+HdcHIbGSjbAwQ9y2D1RL2t359YCaHIG+ESQDQBCDp8JF8MU4wnktZFkQBMdTjlAcTTp8EmJggORyMYw7lSPTFKSlkG8kwoON7lYNR7iKUR6KSfliogpxhHhEixNscni6p6kL52ZuMEVk2Z7SNL9VMU2l48E3FNV0If/fu0b9BfIe4lnia1E626sDy88XK1am97o+U1VXDZhz3NlPfGuMSa1jabU1j9caSWaWBcmsFX0PDDjWAJ4sLfvYRPJ9N6N80wnL5v5vZRl8VQstYOJKEJhVwzb1UElMguUPkSarWC84MQ9072Ft8g0gPLevxsfMWFSLVCgSHk1846us9BUL0mwhCjcazkosGEExrNLtNOMTfTY2JgUsGkOVhREKjNI2ji7ze5gQxRywQLw4swIm1ESms/FYNoAC4gOCC6JVVG5TIqCi5c8NKMFYi4hHYpqNJWUk4MC6bM7EOvkNHImn6sGgm6PJgdUdmKWDighp9dF8c6JUGbtXat6ju6iJN7OkAs8TQM9IpxhqilxZn4DJQkiD1/J3KRKq0J2p50JKYhhHbzi4zgtVrB5vYrWIyNW4gJo9BCTVNwUR5IkIm08y4WHwuUpBxmTwsBmEq+Qy2s1b5yH12fsG+m4IpF0ZUr00fz4TPO+L7JxJRzs7svdBDZ0lthIrCZaEbzyfVTXUpnC+YKbyjr5rrEeFjw3X6no6yVjEJbZC/XN8LmeBNmbxZ4HPYLdEX1QNY8LyWQxCjCXbsBb8WJHsIQRScJakZKZ2xGhhhFeWCxmcAJP0oQtJAajHF58mB2aVUghkV+RyQ3kATse//SBysuNe3cwbLancmpvkLIpf0bzFN9T7ZOkgdU9XhazM8O7IqnhjE2IBBLZIM2wPKJQVHXHcxNNzrt8eBqAoh2hrY9+cqHTfrySohzislvWCrF9lUY/N7Er50bFbTdt3DBaTi+k0+nKspQfidrYuNdXujuf70kFsIy3mTHFAMzdLHEI0Np54iJxD3E/8QDxOPE8mrN2ULSqeEI3sO3WMaxnH64unTM3LOnPVaytz3ud7dYdeF/UTc8Ai53GZupTVeMU29Yfq+BNE7vLSH+hrC9/d2mV5btfJeFEYOMmta3fZG4r+m3iBAEvhNwE9J6QjIfwMTOqeczMM7j30V/2Pmrtt8gE2npGMhS8iQlMlBfh88gqWTHqB0Fv3iQbx07B51lF39s0HjohK+MOfkN194Xbbr/z0uUrD1inzSzu7H/4cVx8RjEeeQyGPyrr5aa+oBj5nJnra4hF+FSU1yXN7Yn3mqbmqQ3wMIEUtdAqaeES9orop+Vxp+/wCc9tF2+/8+4rH37wUeucG+OWJ+Huc7Jx9gnT7jGTjCw1GDGPBAH91aj3WRpHpEANacD9OGHIVH34P5CReTgN3laYzMCIhFczHb/dGEMW7/DgcCSPUt6P2OEtT9gTnPA2uDGEH8ZhYcU16t6BruU/oF0/7sb2omMk3/foqoXns2ov71IjDoSCiYSqlpUgQ63x04UwvXwykd+689ZbUioodjtVXwYKDEVKfRL911xwtHjnwMRLuRU7HfagWmnOjQ/vqMZtr0fdnmjU4/Y7GI5jHLtJRNeqnlDYE/R6gv0NFIj2RKM9fp5meCfz7QcT275V7K+vnUl9cRkbtvc66WotrEUVmWYRcjo/u95PqopQldMjvJ0OqYq6rnzgRYQUBe1winsL4eRgz+ybf/2M5pJGygsXX7qI5vDTI9MOzsbPkhRbq3EuhulfTpGa2bHaBi/ltPZOU9fWUfupMmC4IPaxmPvVJaBnMwvZj0GbtaVbxHuiJMODt5hI1pZuj4i3QFFYR/ilLp70ygMWzpE4Np7A0MgydrFMoC7oD31p+jdfebLznY/cpA6R5DNbtn38iYnEx6kvuvvqd/xb5xf336nTmxdeffZ5gbjuG8T+WB7QboRY6J4tJfqrVYxuccDB3KOo0u0lm8DjuLyNhheOmk5YQa1UsDeIt7xBLnz2gN/8DQG8Hd3fNmKmyaddDwFT9QqtuJMgxXCJwEUyk1p7ai38W0R9xjsffuDLv49OI8dL79z9p50/OQQdjcE16I+/ZHT+cPErH34AbXznpc6/dh75/U+gnu/dfX1f+p/B+weJTcSrRMttHhtixRABSoDCdctCscWZm9SthBFuGW7mKGgum5p6c1n3vWss95uxAELCPiS8US3kb7dCPvOwrBmwX5dbcUQbtKZt5q63HmhNS+ZpC1haLCesPO+0/AYFMIZrzGMetSm6AwdZYvggIF+gPrj8lynf2KFJAD92M/nhP7ZhM6rp5cfJjSUae5IqEQpzm5nliF2ceOc7jqCXcFD25ZvXTqZ6voo0e+jlm1eM9Oa/0vkHIf39yMznKrvmK8Nbj2wdns3kaj4l6gvmXZFLs6WF9f3rT59ZX2qEM3Wf2xXxhPJk8uaXC1znH77SXxsevfnlGI+0r5bLyzt/nu856iltGBhanwrLyWA8hoM3mYFgo6LkZisTG+K+YjqcE93xdNyduJ6Xtoz+FpUi+gDRm35m6ziXCMZHnkQG46OIOev9ZaOCzaQITk+j/WZ6mrmhzDw2Cz5GkAdvRwC0TntNjxr227Ac/o9lWTIRiegPzF/yacFkbOuZ+mhtJLkbuZ7jnjx2cvWW2dD87EzfmuELn/77+7+zkTqB9s/RgvzgDiqCEjcuXzF89kE+7j/65HqlZ0e/EF09GD/0+289upmwX/vna1PUemod4SWiRJkYI9YAzjtM3AR2yTPES2S/FXnS5aoRsLcXK/Vtu3D2uxmNuldot2q4c0e19QhuGL6xWjUes7VbVzBRPmYlv5zG6u1CtbUCc9UC0zY9aK0SvsSwUktVl559QcPHst1QNZ5l20tM1KwdqhqM0Nb5Cma0p+i2vr+ytH612XVX1VjPAE++XNa974L5uRQwU2uXfCoRAcYMSEYQJ8ar7cV4X5AvGjFQerGyEVdxpryex2cIFKBcKBt5s8mMqq5V2ovNteMwfERu6yNlowkftYrelPQ0viMFQ1NlI62anv8BuGMb3DG/bQDuWKm09W2ScTM03gKNJ2+5GRqPwP1Hysb2gzApJ6F8i7nBVz9fMS7CmHsu3g5j9rja+p6ycQ98XJRw7EB/tmJcgcEvVvQrkvEENFyuLDlVIgwW7Svw+Dg+y6jUNPqCsrKksuFIEsfp8gUzu8FI4+S2ynCzaQyshZaFpr5NXlyxer15dNwtN8vK4v5dN96FuXSPrN/a1O9RDAXvLb7yKNx371NY6D72CABzwtnEoaIXnoVmdBQU7lPy647G4OjYQXwvo7R8/hAesDoK38I29fXyYiF/8Q6T0TPWVpuYqY+tyH4Mu4HUKtjT1XpSrXqrjSrHhlGyDnBPBcXacFflJLZNR1BSrX/weJvuTmO8z1WtgnlpbTvm4Ck4rRgGJRNqvYoPAWvU4Rl1fDyOZg5Lah7s/hpB1e5mQG+9Bje4WHpF/SB6/GB9Bc0wuNw5hcsjI8Mjry9flqFTy0reYZKzU1OpWLhWc9vE2rqeRDyfSyXzAx6vqDgn61qkXPW763W73aOKjproVGq1cCx1OpNZO4BIyiZ4D6YzqeJAqf/EifokxTDUZH37o9uvF1G58zaabpCpp59+cpZ88WOiN2K7mupLRpH/Xbf6PTT/eCKdiz+WyhdDXv8zgsMuXCXc/tHnZ4IXO2/q9tCTPjL3j99V3X/S+dtoslPO9G9xk16bzOXqKzM9pVQoEo1G3s+ZpW8DXbEckGirjplSsyJe/PunSplyKo1z00ZxrCteT/PdK9InyjjcSBhxDcezhpZbmzGxH9j0+TEfwEyWm/CDzj2R5tgEdv9hSA9U0Di1YVySHQ5VCsT9isPFxbIe3+ZqgBQKdmeyz3PT5m0Ox+G0wipHLj5yLFOYnSi5lJfApnEHS0EytfxwHecLs7b+kY0rtwTvOHbj3r6i01Zz0oFL65Yhfj5TCccO//HHn9ji9xUGIhlS0EhYYa+7e4YO/R2YBxWsmWFiHTHSzSC2DYJ09uMZMC8j5sUU1uvLZuqsMUJgZMoIWiSVL1fnTAp3q9g5jn8nZW4lw0cZBtGvtyEVH21hWqUNyty/kc0E0a+3HUseiicqA4eKR1Nb/IFEVKqf3nsseTger9a7bcmwVD+DHjua3uL34/4z4aPd/rn3205HoC0Rr1UPzaIzmodENi3feSSUBDOV8qFvQJsXmW0PW23eq3+HznSL7s7DmgeMRZgydPr9tkfgDtKuEuS1b11bRd1GVQiGsBPpbq4KR3YvSHeUcVSDMDg7yAuKaJobrdUsEDSqIjVZ+fPPXvrzS19E23/S+dQPfnIeRX70o6+Re6++3Dlv7ZWkmD1UklhFrCXmidPdTAeZa+v+yuI6WQMpud7RbpWx+khBa6PSWonLLFhCQ93yKNilq/H7rDYXb2NZX/euMe9pL66ZXwf3r8Uyu2ysUdvGJvyeqfUgCSPNNWstZIJzPsgqMmUOB1ScCKM4PveIBOmRwdtLGuaWkhGED4eLc6wnSlU5quqB9R5FWDpBK8ulvVSWa3g5lgbLW70RRe0MRd0UsQEVkuSjAoKa/ep9giCziEZkZ46DFtKrnPn23+SdwgpEA3FTHS9P0p98a+NIiD5Fk2+oYJ2Sts6nHc53eLBThUaTol2/R/HwpJ9yKmfH+35YJ0V7ua+iJGLcJM+IFI3YQ9zVb1LvnKJPXc+bP0TVu/ECDLLArsZhINM3jz3vpvHjrXQThMqIzXbTgUbJqsnRUeB3fA5npRuO1ri+ZMbckYSNK3NLBphZwON460Q3tmCes4e3a3ed/g3Ly5g0g0m4H4XBlk+YvdkazvnKJrIcTgrDR51YcesSnc3g++oWEOxueNFEOpkpcqqTEWwu3pnysDZOCEh2koQppnszKH3XLsRyPEK8gydR0kVyKi9GVckueO32XFRykWRQtLEkYrAKsFN0kGI4SQIbDXjWzblhKZBiRyhqc0QYlmJYliU5RhtLsCLcIAo8GYxFsAOCCsCb1hFLi44gQh6K0jRSAKMBHgyWgQKvGKBcJcSAAKHtDtXhUT1hV95PIX+2NOTPrwgyPMVGe2MZ0SU5eTm+0SX6uHSWkVkW3iQmB/CeN1hyGp8sQ/OCEJR9NpvoYkCKYh7tGeKd0vREmETRKZFhYjn7hBaQRBZ5FVYAzaSqoqhGwkOaEtVApUUG7A7+WH6UlRjG6fLIVCmkOW1rnftKzCDjliieZTSbgxSQFg4FSDefV0lSTNnsbspeQNQtXiQ7VSePujbIj0GeDhDjxFNEq4JBoKtqpiZdz9oq4vLQWIV1wkc3mL68rOfeXcpYR99mzD2LS8us0PoyK5HZbvnuJ3CWWw6ESaEHwMcy+fNsJJ4s91dcGH6EzOQtO45KE8YQPnav3G8evPQG4bFHCj2Z6/ZG4333uIiy5oY72qTCdIwzs3cx7WVVrMMaFCbUtJVDCGCjlB3957sv/fexyiM/+6g2vzyGKIVzcCTbh9TO//sRznXgPjvp+oOvqxdWydLEme9NTqDBk0+fPPHsCZRf/cr40XMfP79w91M/uQ2lnjhdJZmgw6PZfb71oxsQevKAoPbEv9n5zModVOcfHjl2+Ik1J0+umTt5squvJ6gxqkDcSfyMaN2KpewFLAz3cu3W7eaOF4DPbizw+qFFxgU72+4qMJy1MLxwqx9nDkDv8IKZ+jkpFBdTt/r57hXpd5V1/t2l7SZg1uuVFr8dj+MJMO22m4lh+ljFmAM8O1PB6efYo3QSA+mTR0CQZkCQZkwg3Ypn8H3xoFA07sapY9vxFtD+8T14hebkxenJWfNk4oyiT+GQy6I/cvRW09ezsBfAxNzaozgUMyzrs009peiDZkIBaEUKB0pLZD1TNY+CNeMwmpXwaW4IGyhxWLWaDWZGnpWrzV0fAzIDn1eHQ6zQjCUdMr2MHistwTQjYfFxHk3UoWT97p0uJyL99C0vDp75+Dpn1MH5HBo+lNemhXqaa8rrZ1zIKbUzDQrxgk2USUHo5WhG8faEv61IPWPM9tSm8pDicwu0JyRQCB/d6xDIsZUTHSKsOp4LIqenL04evotHdsHuB8lti1K9qjTqVNQQrQmaTRLsLO3yR8J/ZFNdxV5JouBl1wb8m1wBLii74pLLE+z8e7GG38ktqo26imJ2p+OIl4263IJI4TNdSeAhF/lVgiVkIkDECaIh1xoCyqj4NDwvwvttBeRtIHy6n4Dw8XgcSaGNnf9C93I26jFB6LzWu21bb+ezaPO996LNvPCLG3nyEpqnqClyHCmdH3S+IJL3UFTn+6nZ2VTnJJo5frzzFoVuRAnBdvUdwd7dRzFPVQkBMEIQbEm8W2qBOIDP+NtrZmzjix9fNmJxwZWN0ATeDUW3jfAQ3gt1sKxvfdfY7Wnjow2M3VuBoCbX791vEg23F7P5XNM8B8fKNYEFxMn4gLvwXk8OlEkZpRtVLwmqxjzExe3BufvZDFViUdeiKKIMYDMF63SPtWcU6vjUij6sBXEQTbQj4cxTdvG2iTrLoD5GE5bbGKbzHcYtLEe5M5O7f5dkbNWdUmjPFntAURy+yMuMLGuybEOTf29zuWz30bRvnGZtaZuHiTo8QZuHzc0iTvCNgKKh17u+/TGb65tiOzPjFkhJYJg0PPnqP0Eh8zvf/CZ5VKGYlS/7ez77m0hNcDzJu9Bt9my6nC8mO3e5bHCvxJUudL7mZlSGsy3zuUCU20YfitkEwTEf63Ek3ViOXLtGkPQI2gsrsbJ7ijBlpTfxFavKmKnlVrmb+URXMJDDHn3G28Y2N04nErxtE9oBoBshzeMUQdk8RKUfJrcNfBv+DGy7fu4f9ROqH6gvTtQBXb9BmI6BpbxlbZgiK0x1Mx2dVHupOVKjncVFmysQTXmrS03zcKXuyYlLLktBuCQjCq+QALXQb2X1D/cnQAg1JACBZWMYPvotv5sN7661TkzHu2sTUbyvC0xYvV9+nabcoM6w/TvcAIoqVGvmYRQB2fRSNfExNByheP+PzU/uDBEjuFqmURuImRu/SjgMW8t4a6NMJcL87/a+PM6N675v3tyDcw4Ag/u+FlgAuxgci71v7pK7y/s+xVukSIqkJIoidVMSrcOyRdmyKDu2JUoy7UbGYFeSJcs25UOJLSW244RNmzZx09QWnER2U9u1UxHse2+wJJW0n376X//oHsBcGAAz7/3u3/eLmzvkdtzXqHkEfOtvWre0/oYHr78J2DcB/9qHr/HgJcHicca9nd6402MRNp7eWBhYNzCwDmSe+OVjj/3yCdpC/whEW3/9I9rCnH377bOUjbp/YeF+ynYpUoq6LRwAnMUdLUXuuHgR7NwwPLxhGEOLXL0K59oyqH9VOMP2EY8Tf0k07kIzC4Npov5CFIDBfYn6blOzUcQdY7iLfeHMYakIVfIZjL7WOHMYSnHizFkhu7BmE9qhr7E05zO7i1Bh4EdQfwIHC9e7m/X1or4L6odQUR9yNxtDu5ACGJoQEHIN1gG3y0394/B5vRte/3QOXv9dUkOi12BYRLlRW7YCLd0nvSqY77r70ceMyP8ZXL4OUDRh0xoJa4vdUsM9NoSdTTQtI0UsxF2c0YoTRxYlKBkoHwYECDI5uUWjFXumfmhdOtqpQFTQnqdSRnGxUY6mIbUxYJRAGsYpsmGx/W9UwFyrRuHgS0qAMf8zSH73W4xC2yWb7F/353s+2/rFYRYUxvsqy30DNmeOj3RxtHhcAtJDGz3Hhk2SiadJu01k+dWcRbI5BQfdU4kWZ3f9m1SEMpMZaImC3uAGcIGkPWoybhJyAp2MQh+AZKkEbcpLqsfJ0qCT5z45TfIk6zZZJa3n0C6GoUB4YqdHNVGMNOwKUvGwg7LR0OzfuI7pM6ly1JrlS+TXvFnFKXA8O8UKnMVlCjADdtP2g6kCac4qOX/Yw3ta+2laYk0AkLSZtXCx7QEaUPz6qJmx4MJOQDBXW4TMBMkDcC70EmuIbcQB4ocEluH6wGImcCvbDuv3UM36/mJjP0pZ7aSbC2OCB1UxjsHZ7tyAF51scyEewotxlD88iEPqEXsTFe2jsrh1Cu5zQ4hfezzN+h4DTk+Bbtst8NkaQQ1lnlClb9gA/IJmoL5nO7I7NmwV8Wgag9NZ97vgKBOkOlfT4yg+FajVd0r1ZK2+Xx42E4BVIinr2nWbNl+v/3CpuK9TMwxGaGi0XZcEroBGwdlU+ZojA42JMuYhANeQpriP1DPlAYEHGd7juA5HRc5WC9Mm8NtwnBSow2D/9NL9+5d+mZnRuqZMLVM4Xs3U0oKlw29hWYsfOgS27kBvuka+Ax97ax02Lh20cqwlaLfb7HwEsJPdxcnJYneumk719KTSVXDv4bm+3A8U8Pnpffuf3n9am+jPfV95CJ5BBNaAzWa3B6FAYYCjVGs9Wqp1oB3G2ULwHSkreHDn5OTOyTvSPT3ojIRRC3cV6vQQEYAaHSPgtvuusNcfLCD5jFQDvIZqyYhYu9R2wizljGRJ6LiR5/YB8OLt+z4rS7e/+OLtPH3lLwSB2fWx/7H/aTjcyDteOrP7pX94CVlcTxmy7ddXt1C/pvJQd0mEE75vwcAIrruMCqA6YzyjFBJKGBllRwuCXXG68R2lqqmEWmU4lUnZQVmtqhJgcoBSqmrVabl8GVTf/RHIv/NO60/efXfntndB669AEqRb/54C5A92g+ALz7/7yitvv/jlNz772dFa9TnQ+hy5743vXvzwv4Bd4Ln+IfipiKs/YI6TUWjhZIguOCu2EIeJE8R54hXiLeJt0mSgB+orX4W2DWIfWb5owK9BC918c16VfHy2ntV0l9CsdxYbX0XfqqHh54Wzn1v+VWu2XtX0s1xzwRJGa7qFbdbXFlH1P29tLrBJfMiLGg6BsGJ9PHxZqn9S0w/Adxk/gKTy+DA0y09/VQxfKtS/oenPwDn6zGm045k7EeTet42ucw/uLIdnjcDZZUYYusW6GbeJzWe7K4MICnMDjjzXNxip/TK00/St3mZ9uDi/aWsP1MVrHfCTFfRN8GkrhqTSp+DuI0XUhX7EnNWfg2e9E0XPz7ua80ufOwK/+O1a/TlRvwAVyUNF/T64/1Kxfp+on3E262cKaOk1eJZXod3xHRTutkD1wCo+rB6gRdjIl3JIiWyVGitXra5hNCl9HLWbPjcFR8HkstvOPol0/fk7oSA4+m/g9gtLJXnYdPqeRx/75Lnnv/rWN5DouE9qPPy1N9A5X4Pqp16HksMFB9Fr5crSOx48gxLZ+ufOQrmyddeehwzwwAWid9PC6wYy1bDdNDgyOjm17sjRe598Tv/a2+j48QPwRC/X9NPPwDe+5y2cmy4hFEEVlXribrZyH2nUR+bJqlZCSWYbyZQRDEUMFVvGypoRSEXQNxWjp01FWZ9UzBlDqSEkYdS2PCm3X4/LrzhnUikZcRrkBMVSMTT/UDNcChXGtOPfnAO6U3SyHLVxCkLaoZyxMoKQTHWjUIwp0n9w2Yb+lNL6K9qWCq4dInt8gfFVW+7oUd5pULaOSChlo0BiDkyT8GcazK2EblH5IBmqZb3pGSC4suFhH9hXFq3AK/n8Mskrkqhw5AnoxZNghk9Hx+jcQXo3Q0bGZB7IUvImi0XyeW2mDqsCXWsAaC/n5GwMT46d333oyW88kc0OD2dfDeW6AoqVN33R6YnLAxutrN1T7lsuS0EotqR3NmpxkoxrKYs5F0qpr7/b6Q1M75dD+S5PMfPDL6qpUM5sMc8ODMySVCzSIUqZaGg6IE92ZEsy4CY8Xurf77UVhVIvKGU7JuVAKOAPBc4PCooUEsM0ABTFCVYZ9Lz/fuvZb35z4+bqkCAMVTfj2DpwX52hijimvNLAdzM6swSo+gAho0Ysu6YDulm3QsPaUajLKFOlSx5UP9yQZFw0bIfGE1dsyLhoWEaFUk4sUUEZ3rVKH3DCGxcAmjMmxSTgPv/IjmeftbsvXboEfN/asf+pb0XcO7/V6gY/xHhWKCbzFfh50phJYRxa/gdBvl293ic0G5NIcvvRR+yEJuEwWhi3ws0oblDhKUR/VBEQqlR9JZqwW6Ad6O4ch3YgfgT1Wwr10GU948K4+xlxgTBCCERhPp4JQVFghXsyol5AZZdwsQeBcTPGMZLRxj6lInSKecvUqC2rD0KDcrCgj7qb+iGk3OOI5SiaLPehSVaQXrP5O/nuCmYlgjORUtxeNM2YHkzloY8iWNyhcZSwqvQh8hkCigJemk9OTGE2hi0rURVBHEEXSsMmqzMU7Z5eumn3HiN+NL9334GD6LBJt5HBHke2RFd3u4kUY4PiNBacj9DGhLMpZuBJuoxJCa7XhVDXer2JtjuAakgVTXIGKdWoUxgisU1ZAKUUhsmF0/l0/e67NwAauN1LdnJ+sWuAovPVZQe60n5vvnIyGwhmMsFAWltaKi3VwLLCeFfXuP/hQpUOJRMWK0X7nCrHQRuSoVWaBps3n6r6hjZtGhreBE0SP7130u9ihOPh0P6lhRXueDKeco6DvaOFwmih9QVfIuHzJpPkb8cL8LRX3gV/04qAk62/A0GEv8TzvLDLCiirlQIf7N261fDteqidVJigoI+PanKr7QphXjMwnslrgHJGO7Zc0BWklkkCmmsMa7HaJSNr4gECqXKMVGZUrruqcpiV5jcP/6C1HOg/ePjhn//8u+BX4FctsSWCXz10+z9Tf0f/8+0PwZ8bajYQFks38W/bvXN2c9ujVMzNBbWAGuYWVCsRxoAH9SQagGG8CupFbGpaoY6xYmQV3QvHor+IUsUxuJaGa9liPW2wJHDOpq4ZGAnmC29LCCOBrmfztnrnJT0Q/j1d918i5/2BLMY8BHqgs4194EUcHyabQuHWyRhcEewyjQ3TgooxN0RrDBU86eEkHJ6OIByeijTPAsnyr3rwSNEVrojJMMYqqgwAqepsD8FipQpXGQmt3tBuF/0FmPnFL1oLWjYU6fpjuzXSlRnsBq2/tlujXTd21JGO1sIv0LFXLoWyXREeMIkfMV2RUDYfonlwT7H150xXm/9gmvwQ+vQMIRA9bY4ahIuns9Y2QZCA6mJMi2QHdbqISA4Qgi8FJ7X5Gg9RwklFpAj54ZXvkeDJ1tHXqfc//CH1JtgHvv0RnoV+YjvxbaJRQXEDO67y1tWhogG0ZzyYkYG0wggvI6qi+a0VM59dWLakYobSNqrpywT4gXbgW73a1WysBkisrt4MhexqEceU7fZmY9SOto5OQ2F7EyK6AtCqoPsHjM6m+crQHA5h2uW6Gd63rXZ4oxS4s75EGjYDwhPK5UcnN0j4mGXyaySV7ZyeXY3WVkj1OXgT+ykUZdaKfUDSyrgPow+Uo7j/rhrjJBdyTkmUGw2n8rRqaHNU9QLdiqpxh1HNKup6TzGC4s8GnvozlmFOc8NKYKIWz8Xdtjz1lafPPrIvkPUrAtM+pjX5FF6fGb1nxfF4ZagSn6wF5/oPzx3sGBzqEUxTs/F/DO8Nr0tMZDTX4Q//+4/MN/vS3jtsUXmW+eAb4HuuOZeWmUisu37MYbyhMLZqVhtz2ymHowACc/2rZ7QRt4k3mZV8HOPVLzBd5HvELGCJxgwaHJUeaPdOWLCSw27hsKXZCKCFqKk5H56hoELBj6A+h2/UmAujPaMwTgJOz4RRfVh0NXEsGk7BD/q/fcaAu4WT2nlJ77T8vl649OYvdnznOxieRBXnoYmlZOud4nyus6Bk5/PosQGXr6OV1PO1BjwK4Za8phacrs7cIl4p+BfrxkweQ72zVN807oKWUSetLRCu9KD7XDQSD2HUDA1HBOtNFPsGR6emjeIH0ahUU4Kk0eJWRaggqKjH6Gk2bjCnGigTqB0O6gUK9+IbGAcq8jzB+xdOf0uzH3NGRgo0NdaZB2I2mb778PFd9w6vyY3lB2ir2S1GlU7zLVtnlh0hwe67MrZ7I0+uP3Hx4olVZxNa9QubL3wWTL1/7+3x1u+6tBQZT/b64n67teOm9ZsPHc8O1jqtqgz9SCtro+I7tuweHdm6LQLCs9sufnBx7eQd47MExiTirp6l36AsUO7K0BdzQ2/skFEvVyc0QwZb22xhyC0Di0yMuou9VuJnhrLAohSxZ4FA0W1e6ENwbqPYjzdDsUgyDpfbg8UkIuB4VVacqteHL6cqaWqkigo7Is6yM1IGXAr6clUBUIzEvSFQNeGVr3x4kVrfenn5utbLQGv9yWqwBWz+GdBup+7n+Q9Pc/SZFUsBNTL5zn/58AutyyDT2v4z8HftXIuBt2SCFpPxndiPoImZC7oFo4nxyL7gcOkDcIIqJwCuSoF+kPv6d8AjrfG3gleh3ho71fr7/I9aS8HZSxdBf7vOkEa8PXF4/h6EXYUwDeoJTffBGZFC74MfegDWpXqHBV6ymsFt5G42FMwcowgCAgFDNEcJQ01hcj4FFd7F4PXq8MHPJhQxVrOulbDXkRykh4ATY2SjXCoNnYI8k4IKRFJwU3EIcEwZY+ACbfWePWu83tr2/rzbBkiKs5RGJ3tl5abP7ZgMSwBc+XiUpJKpjMu5GtQOpj9ZLv3h0MEl1ZCDok7RoUx3IWmx2O0uR7SrwyPT1D5TcWhqoiq16tTDOz/cC216m2gXo3O/GciWGIa4AdfADr3nJcR64lkDqVZXqGYjjAkKbc36RLHRhST9eiNEiZfzBsIS1vZ+qrkwPGVF7fHDaJxtwBdNtGOaLgRngFDQhouNKQygOrUEAahOYQDVMLyaeeybIgCEqgvDJKltPqGNKIsFncj60P+SEsnAgihLGA2CdSplOFuHANTEJTiD4fgsIrxOJ8pNczEnAqLUnBTOZ6VKeSoVm6uSf12dm6teiVbnklMa+ZI2NaVd2aRNfb/bHyZB0G4vgq35iZiTIuVALB4QhCejslS4/RBtCbkVAMxyh2934fo55lajE7RPc1cwISvQUTgZS5FkOJjN2O2Doe6gamLAl0IxuAlMwBOkfAO0JeJ1X+Ogm6ZOQv3uI8rEtnaMRdF0kW8aEb6QpW1daWhkVrCw9ouY2QLZ+JzYxNDwBT/Un6qHbneqmkQF93doIbgZEByO4vYDFFgjUAtQkFadRtMfhmQ0EPXp1ACuKKq0S71OvHfya4A5dhNgZHfGHQ8VYz2xrtqdf7L3oW1eL8m5PAnZZDqxZuihtx769a9/dLL1u6+feHeAFFSni53h5MCI9SSw3fYiT5m9ThksF8CmlUdvu+3FF2+7VhOlwzGYJQ4QBumeZGQpvGg64geMOCK0k9aduAPcZtT8GsXKC0kjTZ1r1yvP02xHBmc7Jd0fR19fkKAgg18fmd+Lph38gpLRfHkNz6ZSSpZxsyVuj8KJ6nDyE798dN3M8PiWydyS45vnzsWcADh2PXLeYT1Qoz/xy9Y//PJV4Pr5A57Wn8W6I7vym/auHktYxz7zpmYa22J3abscoeRjP3/ggTa22f+g7yMjUMYhZotRYg2xj7ideBy4jCjuQrpzYGRnXNUaj6C1zNCK3cdQOuYB44Lcja4FfrgFW/ZPGKaeFwWdkH2nO+zNeZ8D2mB1m7agGlkbudhQMZyC6oCzzYFRy/UUPLAzFYQHRrSFtHFgoojAjNFQ6oV7R3oLPGKVWBjwYoDzarHei8Eu9Bm4d9XMGI8QFxeWe4k/RZBIODe9F+5duxGqk13epr5lB9Qxu0R9P9x4RDISEbv2wum8E96OBzwIuUQQqVihd2xm7Y79R+7A5Li3SK8VlyzdtLl8wqDlK1WqBvYdSvwgHr5231osilvdoKmmFZ0uBwetM9RngIAY0BYjZYQ24tdVikb3O8ciBFN8FNpEQpVfZlF2oaTAdRlZAHCtUqomcQ4bFUcHcYo2WS5xLCsIrHXYBFiatJgBSbPAtNLE8WYzz5m2UAwQTPDPJAjbWEA6SMBx6InbTlKAdJOAIln4xG5nST/J4ocVAPiSIeGmT/B+X+9qsKa3dYIVnhB7KKrPaqtR3Jhnp4Vl72fd2ywcZ97udu9iBOFo8CTPc/u8ybU3B0wm8VtF717OZDpDVX/stljCP6h4ttksFvMOb3rTYSjCgoc3pcn7gd12P6DAFlluXaDAPZJ0z4MvTptEjv7kAevmBzZbuOriPCT3w3kYI7a22dUUqwFPrluszTpRvLHCLI57y6wiqgduWKNofFnNULBHrYstZsix46AbxxWQqiSgzdEm/ZTKRooH82hJiwx/1zuVU8my1N/R4fUKT/7jPwqCJ5qZXTpULvWPV6rROPTFzn/cEYuUtZkrn7tKrPO67Y7uz4UsFkkJhRLRJWBbe57NUk9j/KJNxM3EUeIe4uPES8R3wD6iMYW+2YNQqK7GsNLQZZ3AtdNQup5CIvcRbeFOnJlr3HkKfZc7i4IRSVpwGbPwHLoK5xZxBhaOGlsvorDNN9si6ruFehBqQCiRLbZicX6rCGeaHoUXI1rQtxr0lbch+mloX+8uIgbqnXDtXjiP7xXrR1Cw5yC8sAcL+hERbcJ9Qo84mvVHRP1luLgAt55BRw14mvr34IatqJGPd61DIv+ItGDO5GZQJZ1+121we+ctR9H2nZJ+6Fb4fC+GXnpcml/64IUX0ZR7RG5UliBaj/oZqVGdOIeWBuSF3vFnL76FbcA7T0Gbpm8r3PxN6bXevXseevgJzEF9UX7dFsxUd+3+g8+jN2Nd6M1eXsAKRkE1qcXF0lODB+Ta3S0pRmZwCKCqt2sN6BhDGHHl2Sh0ZBTzDeMcY8rATKkaPYaalEJhOG4x3UsZeSA4mKBXp2JNj0I6yKAqc8q/xEEyPkRJKRmAZ8avjYkZzW4krfr9gkDT2WiSosy5hNWqOuBEYulR2iTmoLLr7nXI4UhK4EOxzhgf2lv1+niGJc2dPXsH4lmOi7g8JknucqdFQOajMfODpMVVu7c2Hsxz4tCmoaFNPpI1BaqaqNKvwxM/NdQvmEnQX2Y6EzGWy4Y8QEhF8xzX47CDhVuimsdCsoLkDCsUlfT4XCz4o3jFC88dTydFiaIco908ZbL7/UHJbm7FZNnv6+xyOsmOwVjIBY+W1YoldXPW0Vftht9CTqsOC6BpEtHfACoSjT5qs4YDWQvQwOoOJ2jdt2nTfZtaKs/bJK9wt9Psk30M8+9eACaa/iQAra7uDmDqSiUFoZpPAcBnw1lb64NPB7JJG7CyDEtxIYdfkQWzpTt1LZbw39r1zm+28TsrdLNRGURp7koNTq0JJGCm20yZC0GD4cmoS7C2NxqY/wu51CCyMXNWpLtyPNSWePu8ME3z7UfMmgPtoqQHoXs0kjjgkOQR3F4RFbhB/bWwxCjeX4bAmpJwzCqdCIapvkRqSNk0tpVSOYMtYzoNnztq143PAIJaiOF2NBvJZQGXpbgYGlUBaMNX4dBlUM2lIdHQsIMqKHI9ELluhHxjcuvSRBmYUgF5cDJ6ak8OLP5M2WWSIm0rOr0HWgcoG01Tlt1/en/yQm4kf/5KbmCabDj8TqffSb40etOyiT4b4tzjChRvEqBVb7H3pO6Rrb7l5QJHAdprLXHWdKDy3A5yNXqR4yN4tiiPN0JMEauQtY99xnGqXcUWS2qa7qGaeihTLGKOBeMB344hlCJebUBf2TH0FbQV6gNFfYWz2ShgDscCAjZcIeozyB614+JevYAAsQQEiGWXRyensUjxjKNeRTi7CdHu6yxOTWNx1WtCSMDx2r9Cv3KpFFvFncjwEvsABk+qhEB7g2L0CBqNSi4NufQYGStFKThgjGb+DXG57U/e/h/Sy4Jdyyxm3lL+0p4pt9vCmy0nu5eiDaWX8vEU6WQtdC4CaPDgqyfee3twfMU09fGf3ny6h4q9/hEsrEd+2kNu3ngeTjMHYFpWkP8eRQKHDNj2FvH87eHhYSpuhkZZpBucvPXD92UvCx5qPTvwF3ffucfpHdpLEIt+2C/gPLERYaJEjBH3G/299T7thnBbFT+gpoDOYIzPfp2oXr1KdBJ8ex3Ux7E9SEOtQmPMab0G78wAbvoe6BOyOOY/QOPOTrPV7oskyga9aWcQmsyEmXQisV6V6lakpQ00ElSlCV0DLM+hq4DT8BQGGYuiwuFYHuXDokwFIxVC+xk1DB8STI7VG6ORc+sfeUzdfNPmQMCaObplo33yrf03fz3y2JtvPBbbsmrK5QR8YNUM9Hrz4KWn1z9yWAAmx5qNETBcP+sJheNTj9wZj29OffLKfx7/+IH1LlWI7t37+MD0qlVU8M47HYGo3cYqGQ/4Jjzku/Wz3mAwiV4Bxzl9dQXZpAqEg8jAcb6JOA792kYNRUtR2Mt4mMb2822F+vBlvQzVaazYGC6j6zSswuuEGADLw9BhsIQiqbwZX6PpGrpuUoxNFfMbdx7D5mnVgYujUUF6BbdFIxgWZbG+Gqk/ebHTXbkGC+NcLErAZTPw32jecC1CtrAI2wcDMOG2BA031LbbrlGhJMv47e+5UKBRfc/mo/h1DGvxrtxEUjna42NZp/g0/Zii8LwHkHZB4Pn4TrcMulj7A5yVoiWLp0egaN7+Y55XgWA9xkmAVGy+mpWmGNufmATnzzk265XtzBCnmByCwq2inI44uMjzgiCZQvZk649WRDjS8/6VW19yUuYow/xHG89QbEq2iWaw1WKWxHkekKJ3Y4DnBPiWZXKfxSKK3xSAzT0bMps41sZM0u14D/kTKI92EB2EkYxfSrfZxKPYxrypgOwiQo+ijueZbbjWkETkuxWiikEx0WCLXisEMUDYVIRWYMAWoHp2DhkUGP8QuXlFjIxjIGXfiHeTR4RkWRBlSHIE0CO1vCpLNm+HSEPBTAOmk+RJhmMFmaxudbkOHhcEwJImnuefvWfYkTZDWT2yPLdKVnLJkRzDWZLhHC8M71V3Bbq2TYb4vHUVa6HIWaDNmqF4AJTNyiLiDTvHw+8jUAxtctHATXIMY6vZaBO8bvNPTbvzVrPcHejkOEvMpfoC5UQI8H3WGbvbBkf421cn6Xeo7xKPEs8TXyKgb040LiJ58arW+Dy6kp+BZu15tOEPNZxirA9dcyIRi45BOzd3ja59g4Y7jhY+9cLnE1DDfopvLrz8Cbz4MmKie6NQf+yy/mkoV14o1h9BaRzJ6HD/tKifhzrgQlF/Du48V0SFBBuAIWjehP+ffgzeOdsZqF3PS6/RVvWBT7DYVtzwHJL//vLw3IrEjlvvvufiAp5jn0LtbSfvhIe/IDVOnL4bqeWX5YUD+4/dcSsSTZ+QXt22fefBQzehlQfkhVXK6jMP4wyiVK+2YSuqiGbEBu8WHAWoqAwOC1RPOki52iIL7cO46O2uC/jrwjgGJNwaRD0WVaRVbCQCVbIBvMlgqspj4C3EdAvHS7seLYky9qhHrmo0ycVw65vWnvVVDcH+MWj2GiwZXB5wQ69EfbJsohkW+pOch49RAW+332L1Rh1ad2U0ysi9/RsyXWu0OM/ZfY6gnLdnOdYfLiZyYiqcndugfq+7C0jmTF6WZ/cNB/dpzpUJVgwAhyDa492z2roxaA5abenOVKVjfSmRSM9VsiZTbiAXN/VZtvQtm+l1hLKhQ0p628TqHxRzzN6O7Pi2tLJv927Amim3aVAlGYEJTShkPJIMDqiazWoVzWZWZH1LFLGzx7Nq2Cey0EbOskpKUmLOYNxuT3T7JdZMWzvikhx2a4mM6LQDKrxquda7ZSKH2jzMYnV3Bxdh5P5Qz0rVlQyxshNIYtnlYdyqlSTT7ojbaneaTVoG2GgvdfjkSDoVoJeFslfee34kumT96CNjXd2D2eyS6Js9PT1X4zGzQAM2TVmiNreFa+NSz1IrqTKRJD7XxvILQiOSJNoZUd2xaFI6A3FEs+VEre+pAopSYia/c//0FEZgJ/N1R75Oinow8nsbCpowkd/D1XmKZJQsM0+jp3pQnHcGHUp2PoAeG3DfjWjsDIXZ2BiHMxCk6BuzGURXNwuHnQyHGmI3QTILcd1zzOICtDRx1AGxfNxlsrgr/f+17zPpDsEUCWqtI0Wwo9NkCvmyrc90gfqwpy955d8GY+sHYzlyV2epQyZzXZ3pJpXLpSK/W78hes0O3wrtixliHfGe4QMvmIxmdESqtLDWMLtNKCxLmFBjOsrnLXQZh3ShNnaiqwOVKq1HNkZ9aVFnxea8xkLrQ/ej1G0BMamjOBTi5R2VmvVRUZ+F1vYqERU2zydXzcIjO6Gq7SzoSegYIzGh+VF7Go+LAl4zOZzhruqU0aOwkO8ZHl+CRMWoDdvghL4WWofzttFZ3NPeJemOYaOmx8Ck5hbh9pLXf9tQe4s8dRhios1C2f51uDBuDQoMQfcyyVzrNxnKdQ5HR3ZOFAoeNRFduayQCQVF28pVx2fnRguJ4c7ckCncM7Eumd6wpVsLRezkMr/Zuv6DRhH6VXum9k/Bv1s6h4c78+GlHZnhVDLpVaPBgC8RT6bSe5YsifhL4a7c0FDOqYqD3dlIJJmORNMdnVDZDO4oa1bbqvseAPaB0vR0SZueNu4f+Rl4/9xQV+41UPAMQY5LXOJCs0Fg8rigC0GQ21DaNVOouy7rThdq29MBFM9Oo65McDUR+5HuBBiKqx6RGjRrw35PHNqBDUF2GG2lqC24zeJJ4rRYjJNiUklxqDdQtkI7ZTdvYpa//MCLlc1HBiaOBkkzdfQoqxxesueuu3ZM3SoLVOIk9dD3ntt6bkO+plFc62Hy9xtafx9yT6579r4Tn948FXEQ7bk7QH6OChN9BKFgZi6XCsU0176Z3OI9M4qC46kKqgquthkGb7jrpPljQ6vmvr2GJFlRyMaDoeBkgA8GS92Oo96NS29uNXcjilHSJAfLzhctlA+6RwG+015TK+Anz+wpqKq7kI6fiAIrglBlOztdTtFmmfzUCmblqVCnudKRzKSyXoq30/EZV8Js4y0MNE2jOD/3/wpfOE1Yr74JP/0dGOMYZbtGiUYKzfOQYQOgQuEFN+bFalMD25oYikKv0tB5QBre1AaWqxVQhoswYOKLLqNHEJQHAaosdcbQmjIAoLcG7wyJ3DVlgMQ7AyQqwrG+8rtXwCu/fQUEydOvnEIQSqdeOf1j+m9B/3+iqb9tffdvf0qee+8cee5H50CvlqxUklqyXAYen+KDfw6fr5XsY3pmZ3voHro6NwueAEkKkSPDyxfIIJoWXGf1FL2DbBAhIg69oS7oP/VD49LgBOrT9DSNW1QxhE9YaNbjBku0kRcNCKjqxGCucUc6LXDyuIXmApSgcLHerek5eADqhRko1JOX9YwHl1QhrIFeT3OR0O/ty7/6I6w1/Hlb3XdJ5xy/Z+qRS28OuP6haSTKY2LddEl3CL+vK5eYOgdNZC4C9UYYPSI6j3jMhKj+XuVMisMXa+fBh80cj9b94Ugsnr/+g/j/MqheJddVQ5jp8/lCdxEJxV65ES1pBs2fZDBnhUCkDQcJRWQbRT0FXbYko0aGwGJgQoE3EkEAkO11r+PvRQ/tJp/nTBGBtsvkHbTbfuXHcNstf6T4wG2DoElOXXmjOlOpzJheeuo/gefde/EKecbhVcSdzjAJX8DwrRN22WEHr3k//zvhl1d+i46ogH/asmVL6wt4GfNZE8zVl6gvku8QdijdgtCeNTrBOa5p4L742eaC6EFE8roIF0kGLdZNmk5yBvJnCHu9nNKEFxaXC3kUDPSKKhhUuKgaeW67grFgdImDl46kagh/vk7X6l657qjVVUm3mGuY59QKJaGIDmIFfBDUaAilm4RbAsEaToKjYCPnjJRTsbKmSmCArEakAEhEpJgzxty2tmcF5VvRs/b4ldwz4LZWNzj34TObwOz9wxt/85uNw/e35sHQ8uGvP9N6ZXj5ANj/DBzDV397NU9+m8oQReJjxBeJV4lvQi1NYFiuRS12TZ8paqUqL0IkcjeAqWFa1Rvw3ReVoeFMqqg5T8WwgwZ4KGqvwMKVzYJr58CO1L96Pfu/Oy3CiVFx1KWoXtuGwMgxuLVauaFtw+RXNTGWCEtql9Pt9mSm9kgsu3tFWnW7nbmax3fglpdGB/q6NI93xGb1dvTUpu7fsJ5lbL7lyze6WC5fPO4XOZ6SknEp7VZNZrrTIZGUYAaqGip0dVHA7hEyUYFnLXzAL9k5Jb5JtIVCHmgZcpzs9Lgk0W622XNuV6dJBmaGdk34RatVYLmXBJPDwcDfHWM5t4ejzTZJca8bioVsaSWSiAkfW7Iy2uXzt/5dt10GcZ8v6187fa8tnd3UOHoUfvYurdLriYZjZb//ph3n8h6XRZVklpI6JKeZVyVoOwfSKWgjR0ysnUqGi4Dhgk5nLt/JQ/M+ZOljWZp32pNxm63zD6xhX0fa5eB43pLXOmI2u90OLkSnl5yADuMfr3A7eeHKr1Wfakfdxz+0nF620i4KnC8w1cZR6qHeh/rTjpFj9i5m8ul21lilmwshH8rSt7UAqIcNflkP5pf1QGMtYPT+BkRU9qoLUMQhiyHgwYRUqoydNF8IrkkOp2gUEf6LtLyMTChoQS2Kkr4OKtzR19fx4U87+v64/rt6/Xczd1y4444Lu69v7iPLaHu99QDaccdi3y15MxUihogAAW1c3IWWMwhljCd9xChnM0Itxtg30kqDYAh1HKrYuw/SKmoOwz3wOARgJ+FzshbwHOOdEU04ZOdi1kCCZ2KWwkSv38H4BihgsSbFMsPmHXHRbrVEQjFZTYopamM8LK/dkZ2JK6ZuJpToN585Xo3bZCdN2hln0GM3S2Zbemmglqg6+llOc5fStWAyGE45nILFzsogJYuMc9Nirn+I3k1FiRFiA7xf9anCNV6wru6kbECoBTFKGnQTKig0BG0HijV80UGgumxUKs9g6DT4zWUW+ZaDjHEl0JcVlJHurVuClUJHIhhUPZKFs4kMf5OyuUKbSGDiFPILnLYmbBJZ+YBNNJXGVkYCxXBcifE06T72+BdG1q72dmr+noIWK7gzVpmhkt7p+3uKnh+DgYMrxkQGCDavJxnKR9y2cMrcBdyM00laSLnD3c22pqO3LrUzYcYOlMDYSLebYz3eQrDfRpK9N5VthUGy+Jd/mnQqtKpo/mFXSGC+OPiHMu+PLerzfrpC+Qk/1OclYpJYTmxCeId2pM9HNFDfXKiXLy/0GR2I3X1lHtq9XuLLcExsgYO1uwzNWqlWt0kNsTiFe5rl1/I9mYlZDLpDIDI5FBNAPJdwfJDOVB6Ni2RKhld3EORBYhAYgAc2koM2JuZLawNYIsMNHQaHVx6QiP7TgF7e2vvMc/2dCc6hhLvKZpOaSnRlCkrh6MlMVV776GF5zaNgr/NAf2/N4d4U6nZYXXno+t21eeM9h5NdVpa2dHUcQdnmitnsqsiJQn5LMpnPb1GA8N82VNPZofxdh7o69k8PA8HkDLq9ZlpQSGgf5B49gs/+RF/NId8yOBU250KebSMrWuu23HNq++G1gTWljnRlbWg1uR3KdJfPX3Fd+efNDiW1BT4k822Z0U/9nIoTvcQwsQRlaErX2JZRs2LDjovH+GYjhCyk/FgJkSbmmebCSAovjqB6nykMgu+VMalJCNpErqIe9kKHo9gIh5DnGFaEbD1s1Jx3eJv6NKr3RQzG5lo9JNWHavUw5oKakF5NpPJdAwigrN4h1ztRB1kepRWzfehOjkh6B7J5UrKeQCWgIalhjhp9ic4SLtXjKgpWmShxD+8Z0m5OTJ4B9R6i9ULN61wbdRBhccMbCtCkYRmk20qxuwbtnVst6xsjyUhBdSmUj7RbBMpMe0lLfM+W8a4GQzGD+8/+h4vnNnA2s0jzYPDhC/sG4uDMppKd++R57UjEFd6T8oEdDz5wcPtx2qXarcBrd3Qne+QlMvWZ0YMPl7hJsxVkplz9ras0Ay13YK2Eps+ePBWDstvIBfRTB+E9CUJPaJa4mdjc7mCKWaHxWWxMo+X1lmZjFm9kmw0rulNWdIN2p3xWeFd2c01MNVO4rLu9mEmG0NdPQ7HdMbl8K3Kqd8/Ci7+k3RKD8VqrOP4cpLGnnAfI80LN/jgofY2OlYN7oMWvGtGzctKwGaJVuMZgRGIonyrXAcoz1aVp2ZRyxaQMPx3x3ORRoku1zNX5275/+ptkZ2io4+hNLvWQ6PDJkWDY9bjbNbere2TrexZL/oTa7eEpc8fqZTHKtJKDkoW28HZedDDox8IIVkvIa5d89n+YvGfFhM/EOCwuW3T5BpfUaTd7plY8MPXmB0f+ODgUdPb1AnAYAMXbPR7QtoFqD9jwgcmUMZOKyFssQthP5ngFmBA4q8AJJorkrF4eGgUey7X58RN4LzRiH/FxgigPklX0PfHUN0RxtRJk4HobDIVOJRBGitQ+Dh2KUVxQoBF6zYidbvFQCsWdKePYRPvgj+zHgWk4QM0dNYsSSLKFv1AieeA4GqKXqdaA7OdVG00BU6bflP1KlvMrYVVu/Y4taT0JijZ39FmUYIrNXMwq8Qw9vsXcEZfFUCdgnAi8xJQdNHV9NcYlHTnr5Tw7M9RP02gb2BIsjHKpz6bokU6GAkK0zBfezLN+OeySfmOm71jH0Bm7U2EFJ+ncSfM+IGhQATEoQ01Dc4Y2WV0uxrHaQUmCFXp6lMvlRU2zTjs0sAQnpczBJw8ZTjOqSFG8F0GnM4JNdTHqGoly8RZ2j5MK+0Mcegnc+rwtScnTMul1CbRgVRTatdFFiYIFHGNILSPQhi4lrw7Tt8J7FCOmiQhxfTbU8wWUDkaJXkK35tsjXiYR0m0xjtCLSTVIoTohJOsR8hlr4BwXF1GM88BGc3mKY012hTZLJg99Fvx6OTeaGc/lTKLLTIP89OQ3vvful88Ef+xdNUQuCw96zaqoCi7STAJh38Qoac9XawNal9W3eXqp7IF22ytVOHg5K0kDmmeFYECLjIk//NXWDftcnfte2A2s/lOD5Iw/y1GkmVZIqKyFbWObg+mwPdFX7ubF9bOa2b5oQ6ykfkbVCIVYRTxtMJM2kujLJxF4GIu8+Rl+MWW74MT86CgIhPr3q4b2HK6i/n2PCP2lgj4s4vLLcYT6YvCToPRtNSrJrzF2kfUP4NrrYWgM6tl8DffoaIjvTESJMWByerJ5bXjcgBupd+MqwyquvXIh2DlcfAW1LI6+oUhcO0KXrOIQXQVBKyLa8EW2DA66J5WPehvwN738zS3vbfnaynR65dfgwpvLk2tWP5x2+LT45qLqd5jsqa6BOwZT0bDN4nMVq8HujmLH/WtWRcK9PXMrVq9atayvJ/pT9Lp0eu7r29/Z/hZcWPF1oK594sih/Ip+H2AFtfqJZeW+CcYSFkWvzUKCib7ysltrYdlOB3pX5I8cfnzt8pnenkg0Gq71zuC8ej+1E44/G5ElKsQgtFhOEpiaRHdD29uNi17dsoD69A3QrMFF4NUy11ww96YRcL7Z1FyYHEWLC5M46IpZpoYv6+OqwSs1jvKRhVrvwCCFzXCzG5PB6JOjUK739PVXr4N6witIoUhMilSQJsQZryIuyDE4izCJonKd8HLRZmfbz635hStTwnutv3yPnz5oZ9nCpzWN980tWRc0i8DFm7/8sy+blMQLx46/8MLPnn9s5bGVK49Z0r3pdC/5dP+aNf2W1pr8unV58AdX/oKWmESGpDDJPCOR5Ml098hI93by0+5Y1O2JRVvfQi9eebino6OnA+s+okJfJTPEDPEIcYF4HRwlDFC8tSiH9ZSm7zQ36/Uijlkt+IwqrZ1r0QXeuVlo870+UGhoS5/XEMajpVn/UnEhh6E1FibwZdWzY8UiiviHUBHt1wp16rK+BA78JSKiplsoGFWlBSN2fdDoljso6jvg2ga81tixAZk0O7YKqAu3fgrVYR1zN+vHCvop+LRB1F9BqM6upv4GKn6oSfLrVo8plApkEblvfVZqyIkYMmYOynBORuJnDGzl+f37DmH21FNwMq3deeuJk/fce99ZnCvbIckLt9/5sccuoN2vSAtP/cEXnn8Zj4HcITgXZw/WanoKNT+YRkZvPf/cZ1986ctfQYeGpGHJaukYGNy3/+Zjt5/69DOfWXj1NbTDJ+tbX4Ev2vkANK2ox55Gn0aWdOcGHFDXkm0+SEQ10IZswhHgGMu1t8YMAwo32mEy1phmRA6gccDFjKPQIQkE+UQZxbSoQBNjMUP1piHGSFRw2wZV1WK4qtM4LzwXg0+HXmm82+I/3FvVWGioYXZXLBLgVje3ORMu5aZWOSLRudlA1dud9LGU3Sorw5SiiFOqT2RKxXihPzoSUhQHxTtWCVEecC5L31xlxEGSIVmJlibyxaWZeIlzSSGfYBLFsN+T5DI9yZI1kaBr6XS6PDYeliQ3mM7I3YqvMJa70xWP273JZCIej+enpwJ7KdavOkipx+mwytFEwrPd5hj5r0Pd0dK5weHxvL8UttKuOJUUhD6my2NS3dG82OFOIn2jTMs2Mq3lUnPJY5lcb9WXyiUHIqzKWf19Lv+aWKDbT0YS0ZjZXrw11NERCHjTy+8uVGre48VJrW823NFxKJaMf151i96tY4t2y/tQJpmJFDFG3GPU+SzYcPOdnikXiw0bRhC2dQnt6p4A6h0bL9Sdl/W0s4k776RmXSrUPRpaycEJoBnTQTN6zzlPExv0mhMlDeg+gw/JhsYhKuzJaX0DwyP/qo2u6ugDCDM0CyTNeI4GANwmxaJOBu0rS6iAV2ovwnuM8ESizhsKeJZ6635/IOD3173eUMgLnO4+1/KMa8B5eKzK0Y6s+0s31OgUvN4uL3gPPsC/VslbcrsB2Ke13oXPs3cNx10ewuDz6adEeL04eMXsUKOqCDEJJNuxSAo6QBTu/6AYOO1BEQMu6jzfhvryX6srcaLqHDvBoPZbBnf7K9q8RAT47HwIPbZjLguUkT+nRNTSoouoDQf+Y5h3xDmPAvCcoYNRtXYEx5nrSS/QrZb89wndYs1/H+h2G1q22fPfX9wriWiLKKG9ioyWZeX63lAQbQmG8JY3L/30N7eh6DSDGggC0d9T9QAOLdMUVPi84HCquAeozkm6y4furYQIy10q9rt0rw9RyaLQKYoBqVRE0qRExBkZAgyXqDIcgP9UVeEU+D9Dgd8sv/IBONu6E/DgY3zrcRWcdrfe6wSrcl+e+NmkumZkzXfBF0FLB3Otm/5q9dNrk2t/surgKlCafm8aPFtsfasI3rK1Ttmu4TtTn4L3ykKU28iXKBNW5zScAwN1a6FuvqyboN5E19RkhnqShh+fMBZQYguHKBUNDjrpi9/rLncNfPt86+hDVLz1k2Xb124BySuXWhvAl/B7ETT9VXILsY44QeBMaR3qlWkr6iHH0wa1D/XDVV+xnRnVx6ESGBdRx62edRtpznHUHbQKtZa+SkcT2uwKdFmziIuB0KdXIBG+GoPqLfCBbHUZ2knLjWAqbaThDBGJ0LE+QgJVwgQMKS2WTOFOBu0jTJ+oVuia0bRYSlQNASytUcXMlx48e8QZ2ZGyLp3uS0QYaPe4QbI2N7EWAJau3jZzehMAqxlxaGBjJPD4LSo+cplLDngDHJUgU73Lx9cItdumHlw7ZGdAJHr0S7c6MveUrEvTkRIjuBQ4LdNLj/BMv7YGrD4TjGwcHpSYQ2rnaXgIy3vDKZutlibTyw5bBkqrwdAmz/8zubP//zn+xedAXFTgn9qfo3Ttc1T+V5+D42Szmw3kGdsqx5MhXmUtJtrUmeg1MUFfLOB30IJdJF0z8v/lp8Cfgfo74zPI/6drAaz2mNpl6d1s8V3oAIFBKW/2OEyOdcuOO0395cn+appTgmE690zs//ZiAJywKlElpGG7pYiElj98738CUBwFnQAAeNpjYGRgYADilbsVfsTz23xlkGd+ARRhOPOw/zKM/n/wvx5rMfMRIJeDgQkkCgCqyw98AHjaY2BkYGA+8l+KgYG1/v/B/99YixmAIiigHwCjBAcjeNpNkj0oxVEUwM+7H5TCGxksb7QppIiISRZsTB4ipWxYJLIrikFZZcAgUoqSzStsRilShpfPPDl+//u/g1e/d77vOefev3xL+GX6+EO3T+J9FbIIBTiFTWgRMa0irj/kiNuO+i5UiPV12M9asmUhXu0msVepuZSs3cO3LPWh7gK9C5lXTezgOyRPxVgnzg7je0j9gR7inG1W0KeZ81F/3Q2+dshqyXcjT/XTDiJryRkTG+rusJP5h7To5tGv0Ze04PPIcXiEjuQMMckeri2dx/Wq+hw9BvTXvuubXyCvIVMT9hxJZzI/qfSNqu5EykNda5x3Dv0AFsmbwF6D1xh7xvciziTzX+u5HWDnUXwbxI7gijNz6TuYLWL05C0qk7u0O+LNsX6E/sndsoNrjntMwS32DDVP6ZzuK/bMwjr2Pnd3j37xT3bSi3eW7cgsnEFTfNdIJs4fYsl30ZjO/Af0yHMSAAB42mNggAHGJUwNTJuYS5i/sfxi7WL9xObG9oD9AkcDxxEuG65T3Kt4CnhT+ObwmwlYCYoIRgjeEOYTdhPhEqkTtRLnES+QKJP4I9kilSWtImMkUyDrJOck1yO/R4FJoUjxlNIx5RSVJ6pGqpPUotR2aazQ1NE8o/lLa5X2FZ0G3Tm69/SW6N3Rn2JwwvCEEZNRkEmYyTzTU2Y8ZsfMfpnfsDhhaWaZZvnBapu1kfUKm2+2MfYK9s8ctjhGOek5nXGJcHniesTNDA5nuN1xD/Iw8tjiec3LxmuNt5X3B59dvg1+QX7n/CcFWATeCSoJ9gpuCDHDAatC9oUyhbqEdoDhlNApAFDhX5J42mNgZGBg6Gf4xyDCAAJMDIxALMYAogxBAgAsNAHyAHjafVJLSsRAFKxkxs+guJzVIH0Bh8QfoitxNm4kOKDgLt9JUBOZRMGNB/AErj2NehAP4AmsfumYOIg06a68qvftBrCGZ/Rg9QcAnvjV2MI6/2psY+NH08M2XgzuY4QPg5dwhk+DlzGydg1ewavlGTzA0Poy+A1De9Xgdzj2Jk5Q4A6PmCPDDCkqKOZy4HJXOEZEPkBMPKWqJB/jlqfCKXKEZOf017svXISx+N1wqU7UUv5injHPB6O8omdIjU/1OW0z3BP5VLhkHVlHpr6SqKvfWvDocmqBu5CsJdmCVatf0T12pgQ3VpfWlMpK+stZbeMxxh72/63C4xkTlTIz3XEiuRWjFbKnwvw1d+0TEjVVJjLX1icReyUWPe9I7kJnvaZNz7+SeAGraaPk0knGyHr6Y3br06uuQN9SRkWJS7JBJ0Pd75SRdIyJVKbkbWjuAIdk632nfTHfaRxvmXjabc7HUkJhDIbhNxRBUBGVYu+9nXMQwS4KVuy9IjMiYBfFO3Dtveh4fYryL/1mMs8kiySY+Mv3Fwb/5b1QggkzFqyUYMNOKQ6clFFOBS4qcVNFNTV48OLDTy111NNAI00000IrbbTTQSdddNNDL330M8AgQwyjoRduBxghyCghwowxzgSTTDHNDLNEmGOeKDEWWGSJZVZYJc4a62ywyRbb7LDLHvsccMgRx5xwyhnnJLggKSYxi0WsvEkJl6S4Ik2Ga7LccMct9zzwxCM5nsnzwqvYxC6l4hCnlEm5VIhLKsUtVVItNXzwKR7xik/85mgsbsvfZzUtrCn1ohHVR6K/GpqmKXWloQwoR5RB5agypAwrx5SRorraq+uOq2w6n0tdJp8zxZGxUDT4Z6zwgiVhBEM/9lZQu3jaRc7LDsFQFIVhR/WmpbdTbSUEE4PzGtpITMSoTTyHsYkhz7Jr5O1YkW2brW+N/pd630jdBwfyjm2v1KPrG8e0a4q7A+kTxrVbkGPO7YCsVU2W2dFoVT+tYGi+sIHRDw5g7xku4CwZHuBWDB/wCsYY8HNGAIw1IwSCjDEBwpAxBSYMRRF3xXgjf2h6q7mACRj/mYLJVpiB6UaowawQ5qDWwhmYZ8ICnEXCEixCYQWWgXAOVsKOtPkAmoBkpAAAAAABULvfUwAA) format('woff'),
|
469 |
-
url('zocial-regular-webfont.ttf') format('truetype'),
|
470 |
-
url('zocial-regular-webfont.svg#zocialregular') format('svg');
|
471 |
-
font-weight: normal;
|
472 |
-
font-style: normal;
|
473 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
assets/images/admin-icons.png
ADDED
Binary file
|
assets/images/gateway-icons.png
ADDED
Binary file
|
assets/js/links.js
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
/**
|
2 |
* myCRED Points for Link Clicks jQuery Scripts
|
3 |
* @since 0.1
|
4 |
-
* @version 1.
|
5 |
*/
|
6 |
jQuery(function($) {
|
7 |
-
var mycred_click = function( points, href, id ) {
|
8 |
$.ajax({
|
9 |
type : "POST",
|
10 |
data : {
|
@@ -12,33 +12,20 @@ jQuery(function($) {
|
|
12 |
amount : points,
|
13 |
url : href,
|
14 |
eid : id,
|
15 |
-
token : myCREDgive.token
|
|
|
16 |
},
|
17 |
dataType : "JSON",
|
18 |
-
url : myCREDgive.ajaxurl
|
19 |
-
// Before we start
|
20 |
-
beforeSend : function() {},
|
21 |
-
// On Successful Communication
|
22 |
-
success : function( data ) {
|
23 |
-
setTimeout(function(){ window.location.href = href; }, 1000 );
|
24 |
-
},
|
25 |
-
// Error (sent to console)
|
26 |
-
error : function( jqXHR, textStatus, errorThrown ) {
|
27 |
-
// Debug - uncomment to use
|
28 |
-
//console.log( jqXHR );
|
29 |
-
setTimeout(function(){ window.location.href = href; }, 1000 );
|
30 |
-
}
|
31 |
});
|
32 |
};
|
33 |
|
34 |
$('.mycred-points-link').click(function(){
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
}
|
39 |
-
else {
|
40 |
-
mycred_click( $(this).attr( 'data-amount' ), $(this).attr( 'href' ), '' );
|
41 |
-
return false;
|
42 |
}
|
|
|
|
|
43 |
});
|
44 |
});
|
1 |
/**
|
2 |
* myCRED Points for Link Clicks jQuery Scripts
|
3 |
* @since 0.1
|
4 |
+
* @version 1.2
|
5 |
*/
|
6 |
jQuery(function($) {
|
7 |
+
var mycred_click = function( points, href, id, title ) {
|
8 |
$.ajax({
|
9 |
type : "POST",
|
10 |
data : {
|
12 |
amount : points,
|
13 |
url : href,
|
14 |
eid : id,
|
15 |
+
token : myCREDgive.token,
|
16 |
+
etitle : title
|
17 |
},
|
18 |
dataType : "JSON",
|
19 |
+
url : myCREDgive.ajaxurl
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
});
|
21 |
};
|
22 |
|
23 |
$('.mycred-points-link').click(function(){
|
24 |
+
var id = $(this).attr( 'id' );
|
25 |
+
if ( typeof id === 'undefined' && id === false ) {
|
26 |
+
id = '';
|
|
|
|
|
|
|
|
|
27 |
}
|
28 |
+
|
29 |
+
mycred_click( $(this).attr( 'data-amount' ), $(this).attr( 'href' ), id, $(this).text() );
|
30 |
});
|
31 |
});
|
assets/js/management.js
ADDED
@@ -0,0 +1,183 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* myCRED Management Scripts
|
3 |
+
* @since 1.3
|
4 |
+
* @version 1.0
|
5 |
+
*/
|
6 |
+
jQuery(function($) {
|
7 |
+
|
8 |
+
var mycred_action_empty_log = function( button ) {
|
9 |
+
var label = button.val();
|
10 |
+
$.ajax({
|
11 |
+
type : "POST",
|
12 |
+
data : {
|
13 |
+
action : 'mycred-action-empty-log',
|
14 |
+
token : myCREDmanage.token
|
15 |
+
},
|
16 |
+
dataType : "JSON",
|
17 |
+
url : myCREDmanage.ajaxurl,
|
18 |
+
beforeSend : function() {
|
19 |
+
button.attr( 'value', myCREDmanage.working );
|
20 |
+
button.attr( 'disabled', 'disabled' );
|
21 |
+
},
|
22 |
+
success : function( data ) {
|
23 |
+
console.log( data );
|
24 |
+
|
25 |
+
if ( data.status == 'OK' ) {
|
26 |
+
$( 'input#mycred-manage-table-rows' ).val( data.rows );
|
27 |
+
button.val( myCREDmanage.done );
|
28 |
+
button.removeClass( 'button-primary' );
|
29 |
+
}
|
30 |
+
else {
|
31 |
+
button.val( label );
|
32 |
+
button.removeAttr( 'disabled' );
|
33 |
+
alert( data.rows );
|
34 |
+
}
|
35 |
+
},
|
36 |
+
error : function( jqXHR, textStatus, errorThrown ) {
|
37 |
+
// Debug
|
38 |
+
console.log( textStatus + ':' + errorThrown );
|
39 |
+
button.attr( 'value', label );
|
40 |
+
button.removeAttr( 'disabled' );
|
41 |
+
}
|
42 |
+
});
|
43 |
+
};
|
44 |
+
|
45 |
+
$( 'input#mycred-manage-action-empty-log' ).click(function(){
|
46 |
+
// Confirm action
|
47 |
+
if ( confirm( myCREDmanage.confirm_log ) ) {
|
48 |
+
mycred_action_empty_log( $(this) );
|
49 |
+
}
|
50 |
+
});
|
51 |
+
|
52 |
+
var mycred_action_reset_balance = function( button ) {
|
53 |
+
var label = button.val();
|
54 |
+
$.ajax({
|
55 |
+
type : "POST",
|
56 |
+
data : {
|
57 |
+
action : 'mycred-action-reset-accounts',
|
58 |
+
token : myCREDmanage.token
|
59 |
+
},
|
60 |
+
dataType : "JSON",
|
61 |
+
url : myCREDmanage.ajaxurl,
|
62 |
+
beforeSend : function() {
|
63 |
+
button.attr( 'value', myCREDmanage.working );
|
64 |
+
button.attr( 'disabled', 'disabled' );
|
65 |
+
},
|
66 |
+
success : function( data ) {
|
67 |
+
console.log( data );
|
68 |
+
|
69 |
+
if ( data.status == 'OK' ) {
|
70 |
+
button.val( myCREDmanage.done );
|
71 |
+
button.removeClass( 'button-primary' );
|
72 |
+
}
|
73 |
+
else {
|
74 |
+
button.val( label );
|
75 |
+
button.removeAttr( 'disabled' );
|
76 |
+
alert( data.rows );
|
77 |
+
}
|
78 |
+
},
|
79 |
+
error : function( jqXHR, textStatus, errorThrown ) {
|
80 |
+
// Debug
|
81 |
+
console.log( textStatus + ':' + errorThrown );
|
82 |
+
button.attr( 'value', label );
|
83 |
+
button.removeAttr( 'disabled' );
|
84 |
+
}
|
85 |
+
});
|
86 |
+
};
|
87 |
+
|
88 |
+
$( 'input#mycred-manage-action-reset-accounts' ).click(function(){
|
89 |
+
// Confirm action
|
90 |
+
if ( confirm( myCREDmanage.confirm_reset ) ) {
|
91 |
+
mycred_action_reset_balance( $(this) );
|
92 |
+
}
|
93 |
+
});
|
94 |
+
|
95 |
+
$('#export-points').dialog({ dialogClass: 'mycred-export-points', draggable: false, autoOpen: false, closeText: myCREDmanage.export_close, title: myCREDmanage.export_title, modal: true, width: 500, resizable: false,
|
96 |
+
show: { effect: 'slide', direction: 'up', duration: 250 },
|
97 |
+
hide: { effect: 'slide', direction: 'up', duration: 250 }
|
98 |
+
});
|
99 |
+
|
100 |
+
$( '#mycred-export-users-points' ).click( function() {
|
101 |
+
$( '#export-points' ).dialog( 'open' );
|
102 |
+
});
|
103 |
+
|
104 |
+
var mycred_action_export_balances = function( button ) {
|
105 |
+
var label = button.val();
|
106 |
+
$.ajax({
|
107 |
+
type : "POST",
|
108 |
+
data : {
|
109 |
+
action : 'mycred-action-export-balances',
|
110 |
+
token : myCREDmanage.token,
|
111 |
+
identify : $( '#mycred-export-identify-by' ).val(),
|
112 |
+
log_temp : $( '#mycred-export-log-template' ).val()
|
113 |
+
},
|
114 |
+
dataType : "JSON",
|
115 |
+
url : myCREDmanage.ajaxurl,
|
116 |
+
beforeSend : function() {
|
117 |
+
button.attr( 'value', myCREDmanage.working );
|
118 |
+
button.attr( 'disabled', 'disabled' );
|
119 |
+
},
|
120 |
+
success : function( data ) {
|
121 |
+
console.log( data );
|
122 |
+
|
123 |
+
if ( data.status == 'OK' ) {
|
124 |
+
button.val( myCREDmanage.exporting );
|
125 |
+
setTimeout(function(){
|
126 |
+
window.location.href = data.string;
|
127 |
+
button.val( myCREDmanage.done );
|
128 |
+
}, 2000 );
|
129 |
+
setTimeout(function(){
|
130 |
+
button.removeAttr( 'disabled' );
|
131 |
+
button.val( label );
|
132 |
+
}, 4000 );
|
133 |
+
}
|
134 |
+
else {
|
135 |
+
button.val( label );
|
136 |
+
button.before( data.string );
|
137 |
+
}
|
138 |
+
},
|
139 |
+
error : function( jqXHR, textStatus, errorThrown ) {
|
140 |
+
// Debug
|
141 |
+
console.log( textStatus + ':' + errorThrown );
|
142 |
+
button.attr( 'value', label );
|
143 |
+
button.removeAttr( 'disabled' );
|
144 |
+
}
|
145 |
+
});
|
146 |
+
};
|
147 |
+
|
148 |
+
$( '#mycred-run-exporter' ).click(function(){
|
149 |
+
mycred_action_export_balances( $(this) );
|
150 |
+
});
|
151 |
+
|
152 |
+
var mycred_generate_key = function() {
|
153 |
+
$.ajax({
|
154 |
+
type : "POST",
|
155 |
+
data : {
|
156 |
+
action : 'mycred-action-generate-key',
|
157 |
+
token : myCREDmanage.token
|
158 |
+
},
|
159 |
+
dataType : "JSON",
|
160 |
+
url : myCREDmanage.ajaxurl,
|
161 |
+
success : function( data ) {
|
162 |
+
$( '#myCRED-remote-key' ).val( data );
|
163 |
+
$( '#mycred-length-counter' ).text( data.length );
|
164 |
+
},
|
165 |
+
error : function( jqXHR, textStatus, errorThrown ) {
|
166 |
+
// Debug
|
167 |
+
console.log( textStatus + ':' + errorThrown );
|
168 |
+
}
|
169 |
+
});
|
170 |
+
}
|
171 |
+
|
172 |
+
$( '#mycred-generate-api-key' ).click(function(){
|
173 |
+
mycred_generate_key();
|
174 |
+
});
|
175 |
+
|
176 |
+
$( '#myCRED-remote-key' ).change(function(){
|
177 |
+
$( '#mycred-length-counter' ).text( $(this).val().length );
|
178 |
+
});
|
179 |
+
|
180 |
+
$( '#myCRED-remote-key' ).keyup(function(){
|
181 |
+
$( '#mycred-length-counter' ).text( $(this).val().length );
|
182 |
+
});
|
183 |
+
});
|
assets/js/widget.js
DELETED
@@ -1,5 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* myCRED Widgets jQuery Scripts
|
3 |
-
* @since 0.1
|
4 |
-
* @version 1.0
|
5 |
-
*/
|
|
|
|
|
|
|
|
|
|
assets/libs/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
?>
|
assets/libs/parsecsv.lib.php
ADDED
@@ -0,0 +1,695 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class parseCSV {
|
4 |
+
|
5 |
+
/*
|
6 |
+
|
7 |
+
Class: parseCSV v0.3.2
|
8 |
+
http://code.google.com/p/parsecsv-for-php/
|
9 |
+
|
10 |
+
|
11 |
+
Fully conforms to the specifications lined out on wikipedia:
|
12 |
+
- http://en.wikipedia.org/wiki/Comma-separated_values
|
13 |
+
|
14 |
+
Based on the concept of Ming Hong Ng's CsvFileParser class:
|
15 |
+
- http://minghong.blogspot.com/2006/07/csv-parser-for-php.html
|
16 |
+
|
17 |
+
|
18 |
+
|
19 |
+
Copyright (c) 2007 Jim Myhrberg (jim@zydev.info).
|
20 |
+
|
21 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
22 |
+
of this software and associated documentation files (the "Software"), to deal
|
23 |
+
in the Software without restriction, including without limitation the rights
|
24 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
25 |
+
copies of the Software, and to permit persons to whom the Software is
|
26 |
+
furnished to do so, subject to the following conditions:
|
27 |
+
|
28 |
+
The above copyright notice and this permission notice shall be included in
|
29 |
+
all copies or substantial portions of the Software.
|
30 |
+
|
31 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
32 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
33 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
34 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
35 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
36 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
37 |
+
THE SOFTWARE.
|
38 |
+
|
39 |
+
|
40 |
+
|
41 |
+
Code Examples
|
42 |
+
----------------
|
43 |
+
# general usage
|
44 |
+
$csv = new parseCSV('data.csv');
|
45 |
+
print_r($csv->data);
|
46 |
+
----------------
|
47 |
+
# tab delimited, and encoding conversion
|
48 |
+
$csv = new parseCSV();
|
49 |
+
$csv->encoding('UTF-16', 'UTF-8');
|
50 |
+
$csv->delimiter = "\t";
|
51 |
+
$csv->parse('data.tsv');
|
52 |
+
print_r($csv->data);
|
53 |
+
----------------
|
54 |
+
# auto-detect delimiter character
|
55 |
+
$csv = new parseCSV();
|
56 |
+
$csv->auto('data.csv');
|
57 |
+
print_r($csv->data);
|
58 |
+
----------------
|
59 |
+
# modify data in a csv file
|
60 |
+
$csv = new parseCSV();
|
61 |
+
$csv->sort_by = 'id';
|
62 |
+
$csv->parse('data.csv');
|
63 |
+
# "4" is the value of the "id" column of the CSV row
|
64 |
+
$csv->data[4] = array('firstname' => 'John', 'lastname' => 'Doe', 'email' => 'john@doe.com');
|
65 |
+
$csv->save();
|
66 |
+
----------------
|
67 |
+
# add row/entry to end of CSV file
|
68 |
+
# - only recommended when you know the extact sctructure of the file
|
69 |
+
$csv = new parseCSV();
|
70 |
+
$csv->save('data.csv', array('1986', 'Home', 'Nowhere', ''), true);
|
71 |
+
----------------
|
72 |
+
# convert 2D array to csv data and send headers
|
73 |
+
# to browser to treat output as a file and download it
|
74 |
+
$csv = new parseCSV();
|
75 |
+
$csv->output (true, 'movies.csv', $array);
|
76 |
+
----------------
|
77 |
+
|
78 |
+
|
79 |
+
*/
|
80 |
+
|
81 |
+
|
82 |
+
/**
|
83 |
+
* Configuration
|
84 |
+
* - set these options with $object->var_name = 'value';
|
85 |
+
*/
|
86 |
+
|
87 |
+
# use first line/entry as field names
|
88 |
+
var $heading = true;
|
89 |
+
|
90 |
+
# override field names
|
91 |
+
var $fields = array();
|
92 |
+
|
93 |
+
# sort entries by this field
|
94 |
+
var $sort_by = null;
|
95 |
+
var $sort_reverse = false;
|
96 |
+
|
97 |
+
# delimiter (comma) and enclosure (double quote)
|
98 |
+
var $delimiter = ',';
|
99 |
+
var $enclosure = '"';
|
100 |
+
|
101 |
+
# basic SQL-like conditions for row matching
|
102 |
+
var $conditions = null;
|
103 |
+
|
104 |
+
# number of rows to ignore from beginning of data
|
105 |
+
var $offset = null;
|
106 |
+
|
107 |
+
# limits the number of returned rows to specified amount
|
108 |
+
var $limit = null;
|
109 |
+
|
110 |
+
# number of rows to analyze when attempting to auto-detect delimiter
|
111 |
+
var $auto_depth = 15;
|
112 |
+
|
113 |
+
# characters to ignore when attempting to auto-detect delimiter
|
114 |
+
var $auto_non_chars = "a-zA-Z0-9\n\r";
|
115 |
+
|
116 |
+
# preferred delimiter characters, only used when all filtering method
|
117 |
+
# returns multiple possible delimiters (happens very rarely)
|
118 |
+
var $auto_preferred = ",;\t.:|";
|
119 |
+
|
120 |
+
# character encoding options
|
121 |
+
var $convert_encoding = false;
|
122 |
+
var $input_encoding = 'ISO-8859-1';
|
123 |
+
var $output_encoding = 'ISO-8859-1';
|
124 |
+
|
125 |
+
# used by unparse(), save(), and output() functions
|
126 |
+
var $linefeed = "\r\n";
|
127 |
+
|
128 |
+
# only used by output() function
|
129 |
+
var $output_delimiter = ',';
|
130 |
+
var $output_filename = 'data.csv';
|
131 |
+
|
132 |
+
|
133 |
+
/**
|
134 |
+
* Internal variables
|
135 |
+
*/
|
136 |
+
|
137 |
+
# current file
|
138 |
+
var $file;
|
139 |
+
|
140 |
+
# loaded file contents
|
141 |
+
var $file_data;
|
142 |
+
|
143 |
+
# array of field values in data parsed
|
144 |
+
var $titles = array();
|
145 |
+
|
146 |
+
# two dimentional array of CSV data
|
147 |
+
var $data = array();
|
148 |
+
|
149 |
+
|
150 |
+
/**
|
151 |
+
* Constructor
|
152 |
+
* @param input CSV file or string
|
153 |
+
* @return nothing
|
154 |
+
*/
|
155 |
+
function parseCSV ($input = null, $offset = null, $limit = null, $conditions = null) {
|
156 |
+
if ( $offset !== null ) $this->offset = $offset;
|
157 |
+
if ( $limit !== null ) $this->limit = $limit;
|
158 |
+
if ( count($conditions) > 0 ) $this->conditions = $conditions;
|
159 |
+
if ( !empty($input) ) $this->parse($input);
|
160 |
+
}
|
161 |
+
|
162 |
+
|
163 |
+
// ==============================================
|
164 |
+
// ----- [ Main Functions ] ---------------------
|
165 |
+
// ==============================================
|
166 |
+
|
167 |
+
/**
|
168 |
+
* Parse CSV file or string
|
169 |
+
* @param input CSV file or string
|
170 |
+
* @return nothing
|
171 |
+
*/
|
172 |
+
function parse ($input = null, $offset = null, $limit = null, $conditions = null) {
|
173 |
+
if ( !empty($input) ) {
|
174 |
+
if ( $offset !== null ) $this->offset = $offset;
|
175 |
+
if ( $limit !== null ) $this->limit = $limit;
|
176 |
+
if ( count($conditions) > 0 ) $this->conditions = $conditions;
|
177 |
+
if ( is_readable($input) ) {
|
178 |
+
$this->data = $this->parse_file($input);
|
179 |
+
} else {
|
180 |
+
$this->file_data = &$input;
|
181 |
+
$this->data = $this->parse_string();
|
182 |
+
}
|
183 |
+
if ( $this->data === false ) return false;
|
184 |
+
}
|
185 |
+
return true;
|
186 |
+
}
|
187 |
+
|
188 |
+
/**
|
189 |
+
* Save changes, or new file and/or data
|
190 |
+
* @param file file to save to
|
191 |
+
* @param data 2D array with data
|
192 |
+
* @param append append current data to end of target CSV if exists
|
193 |
+
* @param fields field names
|
194 |
+
* @return true or false
|
195 |
+
*/
|
196 |
+
function save ($file = null, $data = array(), $append = false, $fields = array()) {
|
197 |
+
if ( empty($file) ) $file = &$this->file;
|
198 |
+
$mode = ( $append ) ? 'at' : 'wt' ;
|
199 |
+
$is_php = ( preg_match('/\.php$/i', $file) ) ? true : false ;
|
200 |
+
return $this->_wfile($file, $this->unparse($data, $fields, $append, $is_php), $mode);
|
201 |
+
}
|
202 |
+
|
203 |
+
/**
|
204 |
+
* Generate CSV based string for output
|
205 |
+
* @param output if true, prints headers and strings to browser
|
206 |
+
* @param filename filename sent to browser in headers if output is true
|
207 |
+
* @param data 2D array with data
|
208 |
+
* @param fields field names
|
209 |
+
* @param delimiter delimiter used to separate data
|
210 |
+
* @return CSV data using delimiter of choice, or default
|
211 |
+
*/
|
212 |
+
function output ($output = true, $filename = null, $data = array(), $fields = array(), $delimiter = null) {
|
213 |
+
if ( empty($filename) ) $filename = $this->output_filename;
|
214 |
+
if ( $delimiter === null ) $delimiter = $this->output_delimiter;
|
215 |
+
$data = $this->unparse($data, $fields, null, null, $delimiter);
|
216 |
+
if ( $output ) {
|
217 |
+
header('Content-type: application/csv');
|
218 |
+
header('Content-Disposition: inline; filename="'.$filename.'"');
|
219 |
+
echo $data;
|
220 |
+
}
|
221 |
+
return $data;
|
222 |
+
}
|
223 |
+
|
224 |
+
/**
|
225 |
+
* Convert character encoding
|
226 |
+
* @param input input character encoding, uses default if left blank
|
227 |
+
* @param output output character encoding, uses default if left blank
|
228 |
+
* @return nothing
|
229 |
+
*/
|
230 |
+
function encoding ($input = null, $output = null) {
|
231 |
+
$this->convert_encoding = true;
|
232 |
+
if ( $input !== null ) $this->input_encoding = $input;
|
233 |
+
if ( $output !== null ) $this->output_encoding = $output;
|
234 |
+
}
|
235 |
+
|
236 |
+
/**
|
237 |
+
* Auto-Detect Delimiter: Find delimiter by analyzing a specific number of
|
238 |
+
* rows to determine most probable delimiter character
|
239 |
+
* @param file local CSV file
|
240 |
+
* @param parse true/false parse file directly
|
241 |
+
* @param search_depth number of rows to analyze
|
242 |
+
* @param preferred preferred delimiter characters
|
243 |
+
* @param enclosure enclosure character, default is double quote (").
|
244 |
+
* @return delimiter character
|
245 |
+
*/
|
246 |
+
function auto ($file = null, $parse = true, $search_depth = null, $preferred = null, $enclosure = null) {
|
247 |
+
|
248 |
+
if ( $file === null ) $file = $this->file;
|
249 |
+
if ( empty($search_depth) ) $search_depth = $this->auto_depth;
|
250 |
+
if ( $enclosure === null ) $enclosure = $this->enclosure;
|
251 |
+
|
252 |
+
if ( $preferred === null ) $preferred = $this->auto_preferred;
|
253 |
+
|
254 |
+
if ( empty($this->file_data) ) {
|
255 |
+
if ( $this->_check_data($file) ) {
|
256 |
+
$data = &$this->file_data;
|
257 |
+
} else return false;
|
258 |
+
} else {
|
259 |
+
$data = &$this->file_data;
|
260 |
+
}
|
261 |
+
|
262 |
+
$chars = array();
|
263 |
+
$strlen = strlen($data);
|
264 |
+
$enclosed = false;
|
265 |
+
$n = 1;
|
266 |
+
$to_end = true;
|
267 |
+
|
268 |
+
// walk specific depth finding posssible delimiter characters
|
269 |
+
for ( $i=0; $i < $strlen; $i++ ) {
|
270 |
+
$ch = $data{$i};
|
271 |
+
$nch = ( isset($data{$i+1}) ) ? $data{$i+1} : false ;
|
272 |
+
$pch = ( isset($data{$i-1}) ) ? $data{$i-1} : false ;
|
273 |
+
|
274 |
+
// open and closing quotes
|
275 |
+
if ( $ch == $enclosure && (!$enclosed || $nch != $enclosure) ) {
|
276 |
+
$enclosed = ( $enclosed ) ? false : true ;
|
277 |
+
|
278 |
+
// inline quotes
|
279 |
+
} elseif ( $ch == $enclosure && $enclosed ) {
|
280 |
+
$i++;
|
281 |
+
|
282 |
+
// end of row
|
283 |
+
} elseif ( ($ch == "\n" && $pch != "\r" || $ch == "\r") && !$enclosed ) {
|
284 |
+
if ( $n >= $search_depth ) {
|
285 |
+
$strlen = 0;
|
286 |
+
$to_end = false;
|
287 |
+
} else {
|
288 |
+
$n++;
|
289 |
+
}
|
290 |
+
|
291 |
+
// count character
|
292 |
+
} elseif (!$enclosed) {
|
293 |
+
if ( !preg_match('/['.preg_quote($this->auto_non_chars, '/').']/i', $ch) ) {
|
294 |
+
if ( !isset($chars[$ch][$n]) ) {
|
295 |
+
$chars[$ch][$n] = 1;
|
296 |
+
} else {
|
297 |
+
$chars[$ch][$n]++;
|
298 |
+
}
|
299 |
+
}
|
300 |
+
}
|
301 |
+
}
|
302 |
+
|
303 |
+
// filtering
|
304 |
+
$depth = ( $to_end ) ? $n-1 : $n ;
|
305 |
+
$filtered = array();
|
306 |
+
foreach( $chars as $char => $value ) {
|
307 |
+
if ( $match = $this->_check_count($char, $value, $depth, $preferred) ) {
|
308 |
+
$filtered[$match] = $char;
|
309 |
+
}
|
310 |
+
}
|
311 |
+
|
312 |
+
// capture most probable delimiter
|
313 |
+
ksort($filtered);
|
314 |
+
$delimiter = reset($filtered);
|
315 |
+
$this->delimiter = $delimiter;
|
316 |
+
|
317 |
+
// parse data
|
318 |
+
if ( $parse ) $this->data = $this->parse_string();
|
319 |
+
|
320 |
+
return $delimiter;
|
321 |
+
|
322 |
+
}
|
323 |
+
|
324 |
+
|
325 |
+
// ==============================================
|
326 |
+
// ----- [ Core Functions ] ---------------------
|
327 |
+
// ==============================================
|
328 |
+
|
329 |
+
/**
|
330 |
+
* Read file to string and call parse_string()
|
331 |
+
* @param file local CSV file
|
332 |
+
* @return 2D array with CSV data, or false on failure
|
333 |
+
*/
|
334 |
+
function parse_file ($file = null) {
|
335 |
+
if ( $file === null ) $file = $this->file;
|
336 |
+
if ( empty($this->file_data) ) $this->load_data($file);
|
337 |
+
return ( !empty($this->file_data) ) ? $this->parse_string() : false ;
|
338 |
+
}
|
339 |
+
|
340 |
+
/**
|
341 |
+
* Parse CSV strings to arrays
|
342 |
+
* @param data CSV string
|
343 |
+
* @return 2D array with CSV data, or false on failure
|
344 |
+
*/
|
345 |
+
function parse_string ($data = null) {
|
346 |
+
if ( empty($data) ) {
|
347 |
+
if ( $this->_check_data() ) {
|
348 |
+
$data = &$this->file_data;
|
349 |
+
} else return false;
|
350 |
+
}
|
351 |
+
|
352 |
+
$rows = array();
|
353 |
+
$row = array();
|
354 |
+
$row_count = 0;
|
355 |
+
$current = '';
|
356 |
+
$head = ( !empty($this->fields) ) ? $this->fields : array() ;
|
357 |
+
$col = 0;
|
358 |
+
$enclosed = false;
|
359 |
+
$was_enclosed = false;
|
360 |
+
$strlen = strlen($data);
|
361 |
+
|
362 |
+
// walk through each character
|
363 |
+
for ( $i=0; $i < $strlen; $i++ ) {
|
364 |
+
$ch = $data{$i};
|
365 |
+
$nch = ( isset($data{$i+1}) ) ? $data{$i+1} : false ;
|
366 |
+
$pch = ( isset($data{$i-1}) ) ? $data{$i-1} : false ;
|
367 |
+
|
368 |
+
// open and closing quotes
|
369 |
+
if ( $ch == $this->enclosure && (!$enclosed || $nch != $this->enclosure) ) {
|
370 |
+
$enclosed = ( $enclosed ) ? false : true ;
|
371 |
+
if ( $enclosed ) $was_enclosed = true;
|
372 |
+
|
373 |
+
// inline quotes
|
374 |
+
} elseif ( $ch == $this->enclosure && $enclosed ) {
|
375 |
+
$current .= $ch;
|
376 |
+
$i++;
|
377 |
+
|
378 |
+
// end of field/row
|
379 |
+
} elseif ( ($ch == $this->delimiter || ($ch == "\n" && $pch != "\r") || $ch == "\r") && !$enclosed ) {
|
380 |
+
if ( !$was_enclosed ) $current = trim($current);
|
381 |
+
$key = ( !empty($head[$col]) ) ? $head[$col] : $col ;
|
382 |
+
$row[$key] = $current;
|
383 |
+
$current = '';
|
384 |
+
$col++;
|
385 |
+
|
386 |
+
// end of row
|
387 |
+
if ( $ch == "\n" || $ch == "\r" ) {
|
388 |
+
if ( $this->_validate_offset($row_count) && $this->_validate_row_conditions($row, $this->conditions) ) {
|
389 |
+
if ( $this->heading && empty($head) ) {
|
390 |
+
$head = $row;
|
391 |
+
} elseif ( empty($this->fields) || (!empty($this->fields) && (($this->heading && $row_count > 0) || !$this->heading)) ) {
|
392 |
+
if ( !empty($this->sort_by) && !empty($row[$this->sort_by]) ) {
|
393 |
+
if ( isset($rows[$row[$this->sort_by]]) ) {
|
394 |
+
$rows[$row[$this->sort_by].'_0'] = &$rows[$row[$this->sort_by]];
|
395 |
+
unset($rows[$row[$this->sort_by]]);
|
396 |
+
for ( $sn=1; isset($rows[$row[$this->sort_by].'_'.$sn]); $sn++ ) {}
|
397 |
+
$rows[$row[$this->sort_by].'_'.$sn] = $row;
|
398 |
+
} else $rows[$row[$this->sort_by]] = $row;
|
399 |
+
} else $rows[] = $row;
|
400 |
+
}
|
401 |
+
}
|
402 |
+
$row = array();
|
403 |
+
$col = 0;
|
404 |
+
$row_count++;
|
405 |
+
if ( $this->sort_by === null && $this->limit !== null && count($rows) == $this->limit ) {
|
406 |
+
$i = $strlen;
|
407 |
+
}
|
408 |
+
}
|
409 |
+
|
410 |
+
// append character to current field
|
411 |
+
} else {
|
412 |
+
$current .= $ch;
|
413 |
+
}
|
414 |
+
}
|
415 |
+
$this->titles = $head;
|
416 |
+
if ( !empty($this->sort_by) ) {
|
417 |
+
( $this->sort_reverse ) ? krsort($rows) : ksort($rows) ;
|
418 |
+
if ( $this->offset !== null || $this->limit !== null ) {
|
419 |
+
$rows = array_slice($rows, ($this->offset === null ? 0 : $this->offset) , $this->limit, true);
|
420 |
+
}
|
421 |
+
}
|
422 |
+
return $rows;
|
423 |
+
}
|
424 |
+
|
425 |
+
/**
|
426 |
+
* Create CSV data from array
|
427 |
+
* @param data 2D array with data
|
428 |
+
* @param fields field names
|
429 |
+
* @param append if true, field names will not be output
|
430 |
+
* @param is_php if a php die() call should be put on the first
|
431 |
+
* line of the file, this is later ignored when read.
|
432 |
+
* @param delimiter field delimiter to use
|
433 |
+
* @return CSV data (text string)
|
434 |
+
*/
|
435 |
+
function unparse ( $data = array(), $fields = array(), $append = false , $is_php = false, $delimiter = null) {
|
436 |
+
if ( !is_array($data) || empty($data) ) $data = &$this->data;
|
437 |
+
if ( !is_array($fields) || empty($fields) ) $fields = &$this->titles;
|
438 |
+
if ( $delimiter === null ) $delimiter = $this->delimiter;
|
439 |
+
|
440 |
+
$string = ( $is_php ) ? "<?php header('Status: 403'); die(' '); ?>".$this->linefeed : '' ;
|
441 |
+
$entry = array();
|
442 |
+
|
443 |
+
// create heading
|
444 |
+
if ( $this->heading && !$append ) {
|
445 |
+
foreach( $fields as $key => $value ) {
|
446 |
+
$entry[] = $this->_enclose_value($value);
|
447 |
+
}
|
448 |
+
$string .= implode($delimiter, $entry).$this->linefeed;
|
449 |
+
$entry = array();
|
450 |
+
}
|
451 |
+
|
452 |
+
// create data
|
453 |
+
foreach( $data as $key => $row ) {
|
454 |
+
foreach( $row as $field => $value ) {
|
455 |
+
$entry[] = $this->_enclose_value($value);
|
456 |
+
}
|
457 |
+
$string .= implode($delimiter, $entry).$this->linefeed;
|
458 |
+
$entry = array();
|
459 |
+
}
|
460 |
+
|
461 |
+
return $string;
|
462 |
+
}
|
463 |
+
|
464 |
+
/**
|
465 |
+
* Load local file or string
|
466 |
+
* @param input local CSV file
|
467 |
+
* @return true or false
|
468 |
+
*/
|
469 |
+
function load_data ($input = null) {
|
470 |
+
$data = null;
|
471 |
+
$file = null;
|
472 |
+
if ( $input === null ) {
|
473 |
+
$file = $this->file;
|
474 |
+
} elseif ( file_exists($input) ) {
|
475 |
+
$file = $input;
|
476 |
+
} else {
|
477 |
+
$data = $input;
|
478 |
+
}
|
479 |
+
if ( !empty($data) || $data = $this->_rfile($file) ) {
|
480 |
+
if ( $this->file != $file ) $this->file = $file;
|
481 |
+
if ( preg_match('/\.php$/i', $file) && preg_match('/<\?.*?\?>(.*)/ims', $data, $strip) ) {
|
482 |
+
$data = ltrim($strip[1]);
|
483 |
+
}
|
484 |
+
if ( $this->convert_encoding ) $data = iconv($this->input_encoding, $this->output_encoding, $data);
|
485 |
+
if ( substr($data, -1) != "\n" ) $data .= "\n";
|
486 |
+
$this->file_data = &$data;
|
487 |
+
return true;
|
488 |
+
}
|
489 |
+
return false;
|
490 |
+
}
|
491 |
+
|
492 |
+
|
493 |
+
// ==============================================
|
494 |
+
// ----- [ Internal Functions ] -----------------
|
495 |
+
// ==============================================
|
496 |
+
|
497 |
+
/**
|
498 |
+
* Validate a row against specified conditions
|
499 |
+
* @param row array with values from a row
|
500 |
+
* @param conditions specified conditions that the row must match
|
501 |
+
* @return true of false
|
502 |
+
*/
|
503 |
+
function _validate_row_conditions ($row = array(), $conditions = null) {
|
504 |
+
if ( !empty($row) ) {
|
505 |
+
if ( !empty($conditions) ) {
|
506 |
+
$conditions = (strpos($conditions, ' OR ') !== false) ? explode(' OR ', $conditions) : array($conditions) ;
|
507 |
+
$or = '';
|
508 |
+
foreach( $conditions as $key => $value ) {
|
509 |
+
if ( strpos($value, ' AND ') !== false ) {
|
510 |
+
$value = explode(' AND ', $value);
|
511 |
+
$and = '';
|
512 |
+
foreach( $value as $k => $v ) {
|
513 |
+
$and .= $this->_validate_row_condition($row, $v);
|
514 |
+
}
|
515 |
+
$or .= (strpos($and, '0') !== false) ? '0' : '1' ;
|
516 |
+
} else {
|
517 |
+
$or .= $this->_validate_row_condition($row, $value);
|
518 |
+
}
|
519 |
+
}
|
520 |
+
return (strpos($or, '1') !== false) ? true : false ;
|
521 |
+
}
|
522 |
+
return true;
|
523 |
+
}
|
524 |
+
return false;
|
525 |
+
}
|
526 |
+
|
527 |
+
/**
|
528 |
+
* Validate a row against a single condition
|
529 |
+
* @param row array with values from a row
|
530 |
+
* @param condition specified condition that the row must match
|
531 |
+
* @return true of false
|
532 |
+
*/
|
533 |
+
function _validate_row_condition ($row, $condition) {
|
534 |
+
$operators = array(
|
535 |
+
'=', 'equals', 'is',
|
536 |
+
'!=', 'is not',
|
537 |
+
'<', 'is less than',
|
538 |
+
'>', 'is greater than',
|
539 |
+
'<=', 'is less than or equals',
|
540 |
+
'>=', 'is greater than or equals',
|
541 |
+
'contains',
|
542 |
+
'does not contain',
|
543 |
+
);
|
544 |
+
$operators_regex = array();
|
545 |
+
foreach( $operators as $value ) {
|
546 |
+
$operators_regex[] = preg_quote($value, '/');
|
547 |
+
}
|
548 |
+
$operators_regex = implode('|', $operators_regex);
|
549 |
+
if ( preg_match('/^(.+) ('.$operators_regex.') (.+)$/i', trim($condition), $capture) ) {
|
550 |
+
$field = $capture[1];
|
551 |
+
$op = $capture[2];
|
552 |
+
$value = $capture[3];
|
553 |
+
if ( preg_match('/^([\'\"]{1})(.*)([\'\"]{1})$/i', $value, $capture) ) {
|
554 |
+
if ( $capture[1] == $capture[3] ) {
|
555 |
+
$value = $capture[2];
|
556 |
+
$value = str_replace("\\n", "\n", $value);
|
557 |
+
$value = str_replace("\\r", "\r", $value);
|
558 |
+
$value = str_replace("\\t", "\t", $value);
|
559 |
+
$value = stripslashes($value);
|
560 |
+
}
|
561 |
+
}
|
562 |
+
if ( array_key_exists($field, $row) ) {
|
563 |
+
if ( ($op == '=' || $op == 'equals' || $op == 'is') && $row[$field] == $value ) {
|
564 |
+
return '1';
|
565 |
+
} elseif ( ($op == '!=' || $op == 'is not') && $row[$field] != $value ) {
|
566 |
+
return '1';
|
567 |
+
} elseif ( ($op == '<' || $op == 'is less than' ) && $row[$field] < $value ) {
|
568 |
+
return '1';
|
569 |
+
} elseif ( ($op == '>' || $op == 'is greater than') && $row[$field] > $value ) {
|
570 |
+
return '1';
|
571 |
+
} elseif ( ($op == '<=' || $op == 'is less than or equals' ) && $row[$field] <= $value ) {
|
572 |
+
return '1';
|
573 |
+
} elseif ( ($op == '>=' || $op == 'is greater than or equals') && $row[$field] >= $value ) {
|
574 |
+
return '1';
|
575 |
+
} elseif ( $op == 'contains' && preg_match('/'.preg_quote($value, '/').'/i', $row[$field]) ) {
|
576 |
+
return '1';
|
577 |
+
} elseif ( $op == 'does not contain' && !preg_match('/'.preg_quote($value, '/').'/i', $row[$field]) ) {
|
578 |
+
return '1';
|
579 |
+
} else {
|
580 |
+
return '0';
|
581 |
+
}
|
582 |
+
}
|
583 |
+
}
|
584 |
+
return '1';
|
585 |
+
}
|
586 |
+
|
587 |
+
/**
|
588 |
+
* Validates if the row is within the offset or not if sorting is disabled
|
589 |
+
* @param current_row the current row number being processed
|
590 |
+
* @return true of false
|
591 |
+
*/
|
592 |
+
function _validate_offset ($current_row) {
|
593 |
+
if ( $this->sort_by === null && $this->offset !== null && $current_row < $this->offset ) return false;
|
594 |
+
return true;
|
595 |
+
}
|
596 |
+
|
597 |
+
/**
|
598 |
+
* Enclose values if needed
|
599 |
+
* - only used by unparse()
|
600 |
+
* @param value string to process
|
601 |
+
* @return Processed value
|
602 |
+
*/
|
603 |
+
function _enclose_value ($value = null) {
|
604 |
+
if ( $value !== null && $value != '' ) {
|
605 |
+
$delimiter = preg_quote($this->delimiter, '/');
|
606 |
+
$enclosure = preg_quote($this->enclosure, '/');
|
607 |
+
if ( preg_match("/".$delimiter."|".$enclosure."|\n|\r/i", $value) || ($value{0} == ' ' || substr($value, -1) == ' ') ) {
|
608 |
+
$value = str_replace($this->enclosure, $this->enclosure.$this->enclosure, $value);
|
609 |
+
$value = $this->enclosure.$value.$this->enclosure;
|
610 |
+
}
|
611 |
+
}
|
612 |
+
return $value;
|
613 |
+
}
|
614 |
+
|
615 |
+
/**
|
616 |
+
* Check file data
|
617 |
+
* @param file local filename
|
618 |
+
* @return true or false
|
619 |
+
*/
|
620 |
+
function _check_data ($file = null) {
|
621 |
+
if ( empty($this->file_data) ) {
|
622 |
+
if ( $file === null ) $file = $this->file;
|
623 |
+
return $this->load_data($file);
|
624 |
+
}
|
625 |
+
return true;
|
626 |
+
}
|
627 |
+
|
628 |
+
|
629 |
+
/**
|
630 |
+
* Check if passed info might be delimiter
|
631 |
+
* - only used by find_delimiter()
|
632 |
+
* @return special string used for delimiter selection, or false
|
633 |
+
*/
|
634 |
+
function _check_count ($char, $array, $depth, $preferred) {
|
635 |
+
if ( $depth == count($array) ) {
|
636 |
+
$first = null;
|
637 |
+
$equal = null;
|
638 |
+
$almost = false;
|
639 |
+
foreach( $array as $key => $value ) {
|
640 |
+
if ( $first == null ) {
|
641 |
+
$first = $value;
|
642 |
+
} elseif ( $value == $first && $equal !== false) {
|
643 |
+
$equal = true;
|
644 |
+
} elseif ( $value == $first+1 && $equal !== false ) {
|
645 |
+
$equal = true;
|
646 |
+
$almost = true;
|
647 |
+
} else {
|
648 |
+
$equal = false;
|
649 |
+
}
|
650 |
+
}
|
651 |
+
if ( $equal ) {
|
652 |
+
$match = ( $almost ) ? 2 : 1 ;
|
653 |
+
$pref = strpos($preferred, $char);
|
654 |
+
$pref = ( $pref !== false ) ? str_pad($pref, 3, '0', STR_PAD_LEFT) : '999' ;
|
655 |
+
return $pref.$match.'.'.(99999 - str_pad($first, 5, '0', STR_PAD_LEFT));
|
656 |
+
} else return false;
|
657 |
+
}
|
658 |
+
}
|
659 |
+
|
660 |
+
/**
|
661 |
+
* Read local file
|
662 |
+
* @param file local filename
|
663 |
+
* @return Data from file, or false on failure
|
664 |
+
*/
|
665 |
+
function _rfile ($file = null) {
|
666 |
+
if ( is_readable($file) ) {
|
667 |
+
if ( !($fh = fopen($file, 'r')) ) return false;
|
668 |
+
$data = fread($fh, filesize($file));
|
669 |
+
fclose($fh);
|
670 |
+
return $data;
|
671 |
+
}
|
672 |
+
return false;
|
673 |
+
}
|
674 |
+
|
675 |
+
/**
|
676 |
+
* Write to local file
|
677 |
+
* @param file local filename
|
678 |
+
* @param string data to write to file
|
679 |
+
* @param mode fopen() mode
|
680 |
+
* @param lock flock() mode
|
681 |
+
* @return true or false
|
682 |
+
*/
|
683 |
+
function _wfile ($file, $string = '', $mode = 'wb', $lock = 2) {
|
684 |
+
if ( $fp = fopen($file, $mode) ) {
|
685 |
+
flock($fp, $lock);
|
686 |
+
$re = fwrite($fp, $string);
|
687 |
+
$re2 = fclose($fp);
|
688 |
+
if ( $re != false && $re2 != false ) return true;
|
689 |
+
}
|
690 |
+
return false;
|
691 |
+
}
|
692 |
+
|
693 |
+
}
|
694 |
+
|
695 |
+
?>
|
includes/mycred-admin.php
CHANGED
@@ -97,8 +97,9 @@ if ( !class_exists( 'myCRED_Admin' ) ) {
|
|
97 |
|
98 |
/**
|
99 |
* Admin Header
|
|
|
100 |
* @since 0.1
|
101 |
-
* @version 1.
|
102 |
*/
|
103 |
public function admin_header() {
|
104 |
$screen = get_current_screen();
|
@@ -107,7 +108,7 @@ if ( !class_exists( 'myCRED_Admin' ) ) {
|
|
107 |
wp_enqueue_style( 'mycred-inline-edit' );
|
108 |
}
|
109 |
|
110 |
-
$image = plugins_url( 'assets/images/logo-menu.png', myCRED_THIS );
|
111 |
echo '
|
112 |
<style type="text/css">
|
113 |
#adminmenu .toplevel_page_myCRED div.wp-menu-image { background-image: url(' . $image . '); background-position: 1px -28px; }
|
@@ -269,9 +270,9 @@ if ( !class_exists( 'myCRED_Admin' ) ) {
|
|
269 |
<tr>
|
270 |
<th scope="row"><label for="myCRED-manual-add-points"><?php echo $label; ?></label></th>
|
271 |
<td id="myCRED-adjust-users-points">
|
272 |
-
<?php echo $this->core->plural(); ?>: <input type="text" name="myCRED-manual-add-points" id="myCRED-manual-add-points" value="<?php echo $this->core->
|
273 |
<label for="myCRED-manual-add-description"><?php _e( 'Log description for adjustment', 'mycred' ); ?> <?php echo $req; ?></label><br />
|
274 |
-
<input type="text" name="myCRED-manual-add-description" id="myCRED-manual-add-description" value="" class="regular-text" /> <?php submit_button( __( 'Update', 'mycred' ), 'primary medium', 'myCRED_update',
|
275 |
<?php if ( $mycred_errors ) echo '<p style="color:red;">' . __( 'Description is required!', 'mycred' ) . '</p>'; ?>
|
276 |
</td>
|
277 |
</tr>
|
97 |
|
98 |
/**
|
99 |
* Admin Header
|
100 |
+
* @filter mycred_icon_menu
|
101 |
* @since 0.1
|
102 |
+
* @version 1.2
|
103 |
*/
|
104 |
public function admin_header() {
|
105 |
$screen = get_current_screen();
|
108 |
wp_enqueue_style( 'mycred-inline-edit' );
|
109 |
}
|
110 |
|
111 |
+
$image = apply_filters( 'mycred_icon_menu', plugins_url( 'assets/images/logo-menu.png', myCRED_THIS ) );
|
112 |
echo '
|
113 |
<style type="text/css">
|
114 |
#adminmenu .toplevel_page_myCRED div.wp-menu-image { background-image: url(' . $image . '); background-position: 1px -28px; }
|
270 |
<tr>
|
271 |
<th scope="row"><label for="myCRED-manual-add-points"><?php echo $label; ?></label></th>
|
272 |
<td id="myCRED-adjust-users-points">
|
273 |
+
<?php echo $this->core->plural(); ?>: <input type="text" name="myCRED-manual-add-points" id="myCRED-manual-add-points" value="<?php echo $this->core->zero(); ?>" size="4" /><br /><br />
|
274 |
<label for="myCRED-manual-add-description"><?php _e( 'Log description for adjustment', 'mycred' ); ?> <?php echo $req; ?></label><br />
|
275 |
+
<input type="text" name="myCRED-manual-add-description" id="myCRED-manual-add-description" value="" class="regular-text" /> <?php submit_button( __( 'Update', 'mycred' ), 'primary medium', 'myCRED_update', false ); ?>
|
276 |
<?php if ( $mycred_errors ) echo '<p style="color:red;">' . __( 'Description is required!', 'mycred' ) . '</p>'; ?>
|
277 |
</td>
|
278 |
</tr>
|
includes/mycred-functions.php
CHANGED
@@ -1,32 +1,86 @@
|
|
1 |
<?php
|
2 |
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
|
3 |
/**
|
4 |
* myCRED_Settings class
|
5 |
* @see http://mycred.me/classes/mycred_settings/
|
6 |
* @since 0.1
|
7 |
-
* @version 1.
|
8 |
*/
|
9 |
if ( !class_exists( 'myCRED_Settings' ) ) {
|
10 |
class myCRED_Settings {
|
11 |
|
12 |
public $core;
|
|
|
13 |
|
14 |
/**
|
15 |
* Construct
|
16 |
*/
|
17 |
function __construct() {
|
18 |
-
if (
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
|
|
|
|
|
|
|
|
|
|
23 |
if ( $this->core !== false ) {
|
24 |
foreach ( (array) $this->core as $key => $value ) {
|
25 |
$this->$key = $value;
|
26 |
}
|
27 |
}
|
28 |
|
29 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
}
|
31 |
|
32 |
/**
|
@@ -35,7 +89,10 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
35 |
* @version 1.0
|
36 |
*/
|
37 |
public function singular() {
|
38 |
-
|
|
|
|
|
|
|
39 |
}
|
40 |
|
41 |
/**
|
@@ -44,7 +101,25 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
44 |
* @version 1.0
|
45 |
*/
|
46 |
public function plural() {
|
47 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
}
|
49 |
|
50 |
/**
|
@@ -56,18 +131,18 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
56 |
* @param $number (int|float) the initial number
|
57 |
* @returns the given number formated either as an integer or float
|
58 |
* @since 0.1
|
59 |
-
* @version 1.
|
60 |
*/
|
61 |
public function number( $number = '' ) {
|
62 |
-
if (
|
63 |
|
64 |
if ( !isset( $this->format['decimals'] ) )
|
65 |
-
$decimals = $this->core['format']['decimals'];
|
66 |
else
|
67 |
-
$decimals = $this->format['decimals'];
|
68 |
|
69 |
-
if (
|
70 |
-
return (float) number_format( (float) $number,
|
71 |
}
|
72 |
else {
|
73 |
return (int) $number;
|
@@ -84,10 +159,10 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
84 |
* @returns the given number formated either as an integer or float
|
85 |
* @filter 'mycred_format_number'
|
86 |
* @since 0.1
|
87 |
-
* @version 1.
|
88 |
*/
|
89 |
public function format_number( $number = '' ) {
|
90 |
-
if (
|
91 |
|
92 |
$number = $this->number( $number );
|
93 |
$decimals = $this->format['decimals'];
|
@@ -518,7 +593,7 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
518 |
*/
|
519 |
public function edit_creds_cap() {
|
520 |
if ( !isset( $this->caps['creds'] ) || empty( $this->caps['creds'] ) )
|
521 |
-
$this->caps['creds'] = '
|
522 |
|
523 |
return $this->caps['creds'];
|
524 |
}
|
@@ -683,11 +758,11 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
683 |
* @version 1.2
|
684 |
*/
|
685 |
public function get_users_cred( $user_id = '', $type = '' ) {
|
686 |
-
if ( empty( $user_id ) ) return
|
687 |
|
688 |
if ( empty( $type ) ) $type = $this->get_cred_id();
|
689 |
$balance = get_user_meta( $user_id, $type, true );
|
690 |
-
if ( empty( $balance ) ) $balance =
|
691 |
|
692 |
// Let others play
|
693 |
$balance = apply_filters( 'mycred_get_users_cred', $balance, $this, $user_id, $type );
|
@@ -810,7 +885,7 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
810 |
* @param $ref_id (array), optional array of reference IDs allowing the use of content specific keywords in the log entry
|
811 |
* @param $data (object|array|string|int), optional extra data to save in the log. Note that arrays gets serialized!
|
812 |
* @returns boolean true on success or false on fail
|
813 |
-
* @version 1.0
|
814 |
*/
|
815 |
public function add_to_log( $ref = '', $user_id = '', $amount = '', $entry = '', $ref_id = '', $data = '', $type = 'mycred_default' ) {
|
816 |
// All the reasons we would fail
|
@@ -835,7 +910,7 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
835 |
|
836 |
// Insert into DB
|
837 |
$new_entry = $wpdb->insert(
|
838 |
-
$
|
839 |
array(
|
840 |
'ref' => $ref,
|
841 |
'ref_id' => $ref_id,
|
@@ -860,6 +935,8 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
860 |
|
861 |
// $wpdb->insert returns false on fail
|
862 |
if ( !$new_entry ) return false;
|
|
|
|
|
863 |
return true;
|
864 |
}
|
865 |
|
@@ -900,7 +977,7 @@ if ( !class_exists( 'myCRED_Settings' ) ) {
|
|
900 |
$where = implode( ' AND ', $where );
|
901 |
|
902 |
if ( !empty( $where ) ) {
|
903 |
-
$sql = "SELECT * FROM
|
904 |
$wpdb->get_results( $wpdb->prepare( $sql, $prep ) );
|
905 |
if ( $wpdb->num_rows > 0 ) return true;
|
906 |
}
|
@@ -938,35 +1015,48 @@ if ( !function_exists( 'mycred_get_settings_network' ) ) {
|
|
938 |
{
|
939 |
if ( !is_multisite() ) return false;
|
940 |
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
);
|
948 |
-
$mycred_network = get_site_option( 'mycred_network', $defaults );
|
949 |
-
}
|
950 |
|
951 |
-
return $
|
952 |
}
|
953 |
}
|
954 |
|
955 |
/**
|
956 |
-
*
|
957 |
-
* Checks if master template is used.
|
958 |
-
* Requires Multisite
|
959 |
-
*
|
960 |
* @since 0.1
|
961 |
* @version 1.0
|
962 |
*/
|
963 |
-
if ( !function_exists( '
|
964 |
-
function
|
965 |
// Not a multisite
|
966 |
-
if ( !is_multisite() ) return false;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
967 |
|
968 |
$mycred_network = mycred_get_settings_network();
|
969 |
-
|
|
|
|
|
970 |
}
|
971 |
}
|
972 |
|
@@ -1162,17 +1252,19 @@ if ( !function_exists( 'mycred_count_ref_instances' ) ) {
|
|
1162 |
{
|
1163 |
if ( empty( $reference ) ) return 999999999;
|
1164 |
|
|
|
|
|
1165 |
global $wpdb;
|
1166 |
|
1167 |
if ( $user_id !== NULL ) {
|
1168 |
return $wpdb->get_var( $wpdb->prepare(
|
1169 |
-
"SELECT COUNT(*) FROM
|
1170 |
$reference,
|
1171 |
$user_id
|
1172 |
) );
|
1173 |
}
|
1174 |
|
1175 |
-
return $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM
|
1176 |
}
|
1177 |
}
|
1178 |
|
@@ -1253,9 +1345,8 @@ if ( !function_exists( 'mycred_get_total_by_time' ) ) {
|
|
1253 |
global $wpdb;
|
1254 |
|
1255 |
// Construct
|
1256 |
-
$db = $wpdb->prefix . $mycred->db_name;
|
1257 |
$where = implode( ' AND ', $wheres );
|
1258 |
-
$sql = "SELECT creds FROM {$
|
1259 |
|
1260 |
// Query
|
1261 |
$query = $wpdb->get_results( $wpdb->prepare( $sql, $prep ) );
|
@@ -1351,4 +1442,111 @@ if ( !function_exists( 'mycred_apply_defaults' ) ) {
|
|
1351 |
return $return;
|
1352 |
}
|
1353 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1354 |
?>
|
1 |
<?php
|
2 |
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
+
|
4 |
/**
|
5 |
* myCRED_Settings class
|
6 |
* @see http://mycred.me/classes/mycred_settings/
|
7 |
* @since 0.1
|
8 |
+
* @version 1.3
|
9 |
*/
|
10 |
if ( !class_exists( 'myCRED_Settings' ) ) {
|
11 |
class myCRED_Settings {
|
12 |
|
13 |
public $core;
|
14 |
+
public $log_table;
|
15 |
|
16 |
/**
|
17 |
* Construct
|
18 |
*/
|
19 |
function __construct() {
|
20 |
+
if ( is_multisite() ) {
|
21 |
+
if ( mycred_override_settings() )
|
22 |
+
$this->core = get_blog_option( 1, 'mycred_pref_core', $this->defaults() );
|
23 |
+
else
|
24 |
+
$this->core = get_blog_option( $GLOBALS['blog_id'], 'mycred_pref_core', $this->defaults() );
|
25 |
+
}
|
26 |
+
else {
|
27 |
+
$this->core = get_option( 'mycred_pref_core', $this->defaults() );
|
28 |
+
}
|
29 |
+
|
30 |
if ( $this->core !== false ) {
|
31 |
foreach ( (array) $this->core as $key => $value ) {
|
32 |
$this->$key = $value;
|
33 |
}
|
34 |
}
|
35 |
|
36 |
+
if ( defined( 'MYCRED_LOG_TABLE' ) )
|
37 |
+
$this->log_table = MYCRED_LOG_TABLE;
|
38 |
+
else {
|
39 |
+
global $wpdb;
|
40 |
+
|
41 |
+
if ( mycred_centralize_log() )
|
42 |
+
$this->log_table = $wpdb->base_prefix . 'myCRED_log';
|
43 |
+
else
|
44 |
+
$this->log_table = $wpdb->prefix . 'myCRED_log';
|
45 |
+
}
|
46 |
+
}
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Default Settings
|
50 |
+
* @since 1.3
|
51 |
+
* @version 1.0
|
52 |
+
*/
|
53 |
+
public function defaults() {
|
54 |
+
return array(
|
55 |
+
'cred_id' => 'mycred_default',
|
56 |
+
'format' => array(
|
57 |
+
'type' => '',
|
58 |
+
'decimals' => 0,
|
59 |
+
'separators' => array(
|
60 |
+
'decimal' => '.',
|
61 |
+
'thousand' => ','
|
62 |
+
)
|
63 |
+
),
|
64 |
+
'name' => array(
|
65 |
+
'singular' => __( 'Point', 'mycred' ),
|
66 |
+
'plural' => __( 'Points', 'mycred' )
|
67 |
+
),
|
68 |
+
'before' => '',
|
69 |
+
'after' => '',
|
70 |
+
'caps' => array(
|
71 |
+
'plugin' => 'manage_options',
|
72 |
+
'creds' => 'export'
|
73 |
+
),
|
74 |
+
'exclude' => array(
|
75 |
+
'plugin_editors' => 0,
|
76 |
+
'cred_editors' => 0,
|
77 |
+
'list' => ''
|
78 |
+
),
|
79 |
+
'frequency' => array(
|
80 |
+
'rate' => 'always',
|
81 |
+
'date' => ''
|
82 |
+
)
|
83 |
+
);
|
84 |
}
|
85 |
|
86 |
/**
|
89 |
* @version 1.0
|
90 |
*/
|
91 |
public function singular() {
|
92 |
+
if ( ! isset( $this->core['name']['singular'] ) )
|
93 |
+
return $this->name['singular'];
|
94 |
+
else
|
95 |
+
return $this->core['name']['singular'];
|
96 |
}
|
97 |
|
98 |
/**
|
101 |
* @version 1.0
|
102 |
*/
|
103 |
public function plural() {
|
104 |
+
if ( ! isset( $this->core['name']['plural'] ) )
|
105 |
+
return $this->name['plural'];
|
106 |
+
else
|
107 |
+
return $this->core['name']['plural'];
|
108 |
+
}
|
109 |
+
|
110 |
+
/**
|
111 |
+
* Zero
|
112 |
+
* Returns zero formated with or without decimals.
|
113 |
+
* @since 1.3
|
114 |
+
* @version 1.0
|
115 |
+
*/
|
116 |
+
public function zero() {
|
117 |
+
if ( !isset( $this->format['decimals'] ) )
|
118 |
+
$decimals = $this->core['format']['decimals'];
|
119 |
+
else
|
120 |
+
$decimals = $this->format['decimals'];
|
121 |
+
|
122 |
+
return number_format( 0, $decimals );
|
123 |
}
|
124 |
|
125 |
/**
|
131 |
* @param $number (int|float) the initial number
|
132 |
* @returns the given number formated either as an integer or float
|
133 |
* @since 0.1
|
134 |
+
* @version 1.1
|
135 |
*/
|
136 |
public function number( $number = '' ) {
|
137 |
+
if ( $number === '' ) return $number;
|
138 |
|
139 |
if ( !isset( $this->format['decimals'] ) )
|
140 |
+
$decimals = (int) $this->core['format']['decimals'];
|
141 |
else
|
142 |
+
$decimals = (int) $this->format['decimals'];
|
143 |
|
144 |
+
if ( $decimals > 0 ) {
|
145 |
+
return (float) number_format( (float) $number, $decimals, '.', '' );
|
146 |
}
|
147 |
else {
|
148 |
return (int) $number;
|
159 |
* @returns the given number formated either as an integer or float
|
160 |
* @filter 'mycred_format_number'
|
161 |
* @since 0.1
|
162 |
+
* @version 1.1
|
163 |
*/
|
164 |
public function format_number( $number = '' ) {
|
165 |
+
if ( $number === '' ) return $number;
|
166 |
|
167 |
$number = $this->number( $number );
|
168 |
$decimals = $this->format['decimals'];
|
593 |
*/
|
594 |
public function edit_creds_cap() {
|
595 |
if ( !isset( $this->caps['creds'] ) || empty( $this->caps['creds'] ) )
|
596 |
+
$this->caps['creds'] = 'delete_users';
|
597 |
|
598 |
return $this->caps['creds'];
|
599 |
}
|
758 |
* @version 1.2
|
759 |
*/
|
760 |
public function get_users_cred( $user_id = '', $type = '' ) {
|
761 |
+
if ( empty( $user_id ) ) return $this->zero();
|
762 |
|
763 |
if ( empty( $type ) ) $type = $this->get_cred_id();
|
764 |
$balance = get_user_meta( $user_id, $type, true );
|
765 |
+
if ( empty( $balance ) ) $balance = $this->zero();
|
766 |
|
767 |
// Let others play
|
768 |
$balance = apply_filters( 'mycred_get_users_cred', $balance, $this, $user_id, $type );
|
885 |
* @param $ref_id (array), optional array of reference IDs allowing the use of content specific keywords in the log entry
|
886 |
* @param $data (object|array|string|int), optional extra data to save in the log. Note that arrays gets serialized!
|
887 |
* @returns boolean true on success or false on fail
|
888 |
+
* @version 1.0.1
|
889 |
*/
|
890 |
public function add_to_log( $ref = '', $user_id = '', $amount = '', $entry = '', $ref_id = '', $data = '', $type = 'mycred_default' ) {
|
891 |
// All the reasons we would fail
|
910 |
|
911 |
// Insert into DB
|
912 |
$new_entry = $wpdb->insert(
|
913 |
+
$this->log_table,
|
914 |
array(
|
915 |
'ref' => $ref,
|
916 |
'ref_id' => $ref_id,
|
935 |
|
936 |
// $wpdb->insert returns false on fail
|
937 |
if ( !$new_entry ) return false;
|
938 |
+
|
939 |
+
delete_transient( 'mycred_log_entries' );
|
940 |
return true;
|
941 |
}
|
942 |
|
977 |
$where = implode( ' AND ', $where );
|
978 |
|
979 |
if ( !empty( $where ) ) {
|
980 |
+
$sql = "SELECT * FROM {$this->log_table} WHERE {$where};";
|
981 |
$wpdb->get_results( $wpdb->prepare( $sql, $prep ) );
|
982 |
if ( $wpdb->num_rows > 0 ) return true;
|
983 |
}
|
1015 |
{
|
1016 |
if ( !is_multisite() ) return false;
|
1017 |
|
1018 |
+
$defaults = array(
|
1019 |
+
'master' => 0,
|
1020 |
+
'central' => 0,
|
1021 |
+
'block' => ''
|
1022 |
+
);
|
1023 |
+
$settings = get_blog_option( 1, 'mycred_network', $defaults );
|
|
|
|
|
|
|
1024 |
|
1025 |
+
return $settings;
|
1026 |
}
|
1027 |
}
|
1028 |
|
1029 |
/**
|
1030 |
+
* Override Settings
|
|
|
|
|
|
|
1031 |
* @since 0.1
|
1032 |
* @version 1.0
|
1033 |
*/
|
1034 |
+
if ( !function_exists( 'mycred_override_settings' ) ) {
|
1035 |
+
function mycred_override_settings() {
|
1036 |
// Not a multisite
|
1037 |
+
if ( ! is_multisite() ) return false;
|
1038 |
+
|
1039 |
+
$mycred_network = mycred_get_settings_network();
|
1040 |
+
if ( $mycred_network['master'] ) return true;
|
1041 |
+
|
1042 |
+
return false;
|
1043 |
+
}
|
1044 |
+
}
|
1045 |
+
|
1046 |
+
/**
|
1047 |
+
* Centralize Log
|
1048 |
+
* @since 1.3
|
1049 |
+
* @version 1.0
|
1050 |
+
*/
|
1051 |
+
if ( !function_exists( 'mycred_centralize_log' ) ) {
|
1052 |
+
function mycred_centralize_log() {
|
1053 |
+
// Not a multisite
|
1054 |
+
if ( ! is_multisite() ) return true;
|
1055 |
|
1056 |
$mycred_network = mycred_get_settings_network();
|
1057 |
+
if ( $mycred_network['central'] ) return true;
|
1058 |
+
|
1059 |
+
return false;
|
1060 |
}
|
1061 |
}
|
1062 |
|
1252 |
{
|
1253 |
if ( empty( $reference ) ) return 999999999;
|
1254 |
|
1255 |
+
$mycred = mycred_get_settings();
|
1256 |
+
|
1257 |
global $wpdb;
|
1258 |
|
1259 |
if ( $user_id !== NULL ) {
|
1260 |
return $wpdb->get_var( $wpdb->prepare(
|
1261 |
+
"SELECT COUNT(*) FROM {$mycred->log_table} WHERE ref = %s AND user_id = %d;",
|
1262 |
$reference,
|
1263 |
$user_id
|
1264 |
) );
|
1265 |
}
|
1266 |
|
1267 |
+
return $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM {$mycred->log_table} WHERE ref = %s;", $reference ) );
|
1268 |
}
|
1269 |
}
|
1270 |
|
1345 |
global $wpdb;
|
1346 |
|
1347 |
// Construct
|
|
|
1348 |
$where = implode( ' AND ', $wheres );
|
1349 |
+
$sql = "SELECT creds FROM {$mycred->log_table} WHERE {$where} ORDER BY time;";
|
1350 |
|
1351 |
// Query
|
1352 |
$query = $wpdb->get_results( $wpdb->prepare( $sql, $prep ) );
|
1442 |
return $return;
|
1443 |
}
|
1444 |
}
|
1445 |
+
|
1446 |
+
/**
|
1447 |
+
* Get Remote API Settings
|
1448 |
+
* @since 1.3
|
1449 |
+
* @version 1.0
|
1450 |
+
*/
|
1451 |
+
if ( !function_exists( 'mycred_get_remote' ) ) {
|
1452 |
+
function mycred_get_remote() {
|
1453 |
+
$defaults = apply_filters( 'mycred_remote_defaults', array(
|
1454 |
+
'enabled' => 0,
|
1455 |
+
'key' => '',
|
1456 |
+
'uri' => 'api-dev',
|
1457 |
+
'debug' => 0
|
1458 |
+
) );
|
1459 |
+
return mycred_apply_defaults( $defaults, get_option( 'mycred_pref_remote', array() ) );
|
1460 |
+
}
|
1461 |
+
}
|
1462 |
+
|
1463 |
+
/**
|
1464 |
+
* Is myCRED Ready
|
1465 |
+
* @since 1.3
|
1466 |
+
* @version 1.0
|
1467 |
+
*/
|
1468 |
+
function is_mycred_ready()
|
1469 |
+
{
|
1470 |
+
global $mycred;
|
1471 |
+
$mycred = new myCRED_Settings();
|
1472 |
+
|
1473 |
+
// By default we start with the main sites setup. If it is not a multisite installation
|
1474 |
+
// get_blog_option() will default to get_option() for us.
|
1475 |
+
if ( is_multisite() )
|
1476 |
+
$setup = get_blog_option( 1, 'mycred_setup_completed' );
|
1477 |
+
else
|
1478 |
+
$setup = get_option( 'mycred_setup_completed' );
|
1479 |
+
|
1480 |
+
// If it is a multisite and the master template is not used, check if this site has
|
1481 |
+
// been installed
|
1482 |
+
if ( is_multisite() && $GLOBALS['blog_id'] > 1 && ! mycred_override_settings() )
|
1483 |
+
$setup = get_blog_option( $GLOBALS['blog_id'], 'mycred_setup_completed' );
|
1484 |
+
|
1485 |
+
// Make sure that if we switch from central log to seperate logs, we install this
|
1486 |
+
// log if it does not exists.
|
1487 |
+
if ( is_multisite() && $GLOBALS['blog_id'] > 1 && ! mycred_centralize_log() ) {
|
1488 |
+
mycred_install_log( $mycred->core['format']['decimals'], $mycred->log_table );
|
1489 |
+
}
|
1490 |
+
|
1491 |
+
// If setup is set, we are ready
|
1492 |
+
if ( $setup !== false ) return true;
|
1493 |
+
|
1494 |
+
// If we have come this far we need to load the setup
|
1495 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-install.php' );
|
1496 |
+
$setup = new myCRED_Setup();
|
1497 |
+
return $setup->status();
|
1498 |
+
}
|
1499 |
+
|
1500 |
+
/**
|
1501 |
+
* Install Log
|
1502 |
+
* Installs the log for a site.
|
1503 |
+
* Requires Multisite
|
1504 |
+
* @since 1.3
|
1505 |
+
* @version 1.1
|
1506 |
+
*/
|
1507 |
+
function mycred_install_log( $decimals = 0, $table = NULL )
|
1508 |
+
{
|
1509 |
+
if ( is_multisite() && get_blog_option( $GLOBALS['blog_id'], 'mycred_version_db', false ) !== false ) return true;
|
1510 |
+
elseif ( ! is_multisite() && get_option( 'mycred_version_db', false ) !== false ) return true;
|
1511 |
+
|
1512 |
+
global $wpdb;
|
1513 |
+
|
1514 |
+
if ( $table === NULL ) {
|
1515 |
+
$mycred = mycred_get_settings();
|
1516 |
+
$table = $mycred->log_table;
|
1517 |
+
}
|
1518 |
+
|
1519 |
+
if ( $decimals > 0 ) {
|
1520 |
+
if ( $decimals > 4 )
|
1521 |
+
$cred_format = "decimal(32,$decimals)";
|
1522 |
+
else
|
1523 |
+
$cred_format = "decimal(22,$decimals)";
|
1524 |
+
}
|
1525 |
+
else {
|
1526 |
+
$cred_format = 'bigint(22)';
|
1527 |
+
}
|
1528 |
+
|
1529 |
+
// Log structure
|
1530 |
+
$sql = "id int(11) NOT NULL AUTO_INCREMENT,
|
1531 |
+
ref VARCHAR(256) NOT NULL,
|
1532 |
+
ref_id int(11) DEFAULT NULL,
|
1533 |
+
user_id int(11) DEFAULT NULL,
|
1534 |
+
creds $cred_format DEFAULT NULL,
|
1535 |
+
ctype VARCHAR(64) DEFAULT 'mycred_default',
|
1536 |
+
time bigint(20) DEFAULT NULL,
|
1537 |
+
entry LONGTEXT DEFAULT NULL,
|
1538 |
+
data LONGTEXT DEFAULT NULL,
|
1539 |
+
PRIMARY KEY (id),
|
1540 |
+
UNIQUE KEY id (id)";
|
1541 |
+
|
1542 |
+
// Insert table
|
1543 |
+
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
1544 |
+
dbDelta( "CREATE TABLE IF NOT EXISTS {$table} ( " . $sql . " );" );
|
1545 |
+
if ( is_multisite() )
|
1546 |
+
add_blog_option( $GLOBALS['blog_id'], 'mycred_version_db', '1.0' );
|
1547 |
+
else
|
1548 |
+
add_option( 'mycred_version_db', '1.0' );
|
1549 |
+
|
1550 |
+
return true;
|
1551 |
+
}
|
1552 |
?>
|
includes/mycred-install.php
CHANGED
@@ -5,18 +5,21 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
5 |
* Used when the plugin is activated/de-activated or deleted. Installs core settings and
|
6 |
* base templates, checks compatibility and uninstalls.
|
7 |
* @since 0.1
|
8 |
-
* @version 1.
|
9 |
*/
|
10 |
if ( !class_exists( 'myCRED_Install' ) ) {
|
11 |
class myCRED_Install {
|
12 |
|
|
|
13 |
public $ver;
|
14 |
|
15 |
/**
|
16 |
* Construct
|
17 |
*/
|
18 |
function __construct() {
|
19 |
-
$this->
|
|
|
|
|
20 |
}
|
21 |
|
22 |
/**
|
@@ -54,60 +57,29 @@ if ( !class_exists( 'myCRED_Install' ) ) {
|
|
54 |
/**
|
55 |
* First time activation
|
56 |
* @since 0.1
|
57 |
-
* @version 1.
|
58 |
*/
|
59 |
public function activate() {
|
60 |
// Add general settings
|
61 |
-
|
62 |
-
'cred_id' => 'mycred_default',
|
63 |
-
'format' => array(
|
64 |
-
'type' => '',
|
65 |
-
'decimals' => 0,
|
66 |
-
'separators' => array(
|
67 |
-
'decimal' => '.',
|
68 |
-
'thousand' => ','
|
69 |
-
)
|
70 |
-
),
|
71 |
-
'name' => array(
|
72 |
-
'singular' => '',
|
73 |
-
'plural' => ''
|
74 |
-
),
|
75 |
-
'before' => '',
|
76 |
-
'after' => '',
|
77 |
-
'caps' => array(
|
78 |
-
'plugin' => 'manage_options',
|
79 |
-
'creds' => 'edit_users'
|
80 |
-
),
|
81 |
-
'exclude' => array(
|
82 |
-
'plugin_editors' => false,
|
83 |
-
'cred_editors' => false,
|
84 |
-
'list' => ''
|
85 |
-
),
|
86 |
-
'frequency' => array(
|
87 |
-
'rate' => 'always',
|
88 |
-
'date' => ''
|
89 |
-
)
|
90 |
-
);
|
91 |
-
add_option( 'mycred_pref_core', $general );
|
92 |
|
93 |
// Add add-ons settings
|
94 |
-
|
95 |
'installed' => array(),
|
96 |
'active' => array()
|
97 |
-
);
|
98 |
-
add_option( 'mycred_pref_addons', $addons );
|
99 |
|
100 |
// Add hooks settings
|
101 |
-
|
102 |
'installed' => array(),
|
103 |
'active' => array(),
|
104 |
'hook_prefs' => array()
|
105 |
-
);
|
106 |
-
add_option( 'mycred_pref_hooks', $hooks );
|
107 |
|
108 |
// Add version number making sure we never run this function again
|
109 |
add_option( 'mycred_version', myCRED_VERSION );
|
110 |
-
|
|
|
111 |
}
|
112 |
|
113 |
/**
|
@@ -134,7 +106,7 @@ if ( !class_exists( 'myCRED_Install' ) ) {
|
|
134 |
* settings and data once the core is gone.
|
135 |
* @filter 'mycred_uninstall_this'
|
136 |
* @since 0.1
|
137 |
-
* @version 1.
|
138 |
*/
|
139 |
public function uninstall() {
|
140 |
// Everyone should use this filter to delete everything else they have created before returning the option ids.
|
@@ -143,7 +115,7 @@ if ( !class_exists( 'myCRED_Install' ) ) {
|
|
143 |
|
144 |
// Delete each option
|
145 |
foreach ( $installed as $option_id ) {
|
146 |
-
delete_option( $option_id );
|
147 |
}
|
148 |
|
149 |
// Delete flags
|
@@ -174,8 +146,19 @@ if ( !class_exists( 'myCRED_Install' ) ) {
|
|
174 |
|
175 |
// Delete DB
|
176 |
global $wpdb;
|
177 |
-
|
178 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
179 |
|
180 |
// Multisite
|
181 |
if ( is_multisite() ) {
|
@@ -229,6 +212,7 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
229 |
public $status;
|
230 |
|
231 |
public $core;
|
|
|
232 |
|
233 |
/**
|
234 |
* Construct
|
@@ -238,6 +222,7 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
238 |
$this->status = false;
|
239 |
$mycred = mycred_get_settings();
|
240 |
$this->core = $mycred->core;
|
|
|
241 |
|
242 |
// Setup Step
|
243 |
$this->step = false;
|
@@ -263,7 +248,6 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
263 |
$screen = get_current_screen();
|
264 |
if ( $screen->id == 'plugins_page_myCRED-setup' ) return;
|
265 |
|
266 |
-
$image_url = plugins_url( 'assets/images/cred-icon32.png', myCRED_THIS );
|
267 |
echo '
|
268 |
<div class="updated">
|
269 |
<p>' . __( 'myCRED needs your attention.', 'mycred' ) . ' <a href="' . admin_url( 'plugins.php?page=myCRED-setup' ) . '">' . __( 'Run Setup', 'mycred' ) . '</a></p>
|
@@ -348,7 +332,7 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
348 |
$settings['format']['type'] = 'bigint';
|
349 |
|
350 |
// Install database
|
351 |
-
|
352 |
|
353 |
// Name
|
354 |
$settings['name']['singular'] = sanitize_text_field( $_POST['myCRED-name-singular'] );
|
@@ -366,7 +350,7 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
366 |
elseif ( $step == 3 ) {
|
367 |
// Capabilities
|
368 |
$settings['caps']['plugin'] = ( isset( $_POST['myCRED-cap-plugin'] ) ) ? trim( $_POST['myCRED-cap-plugin'] ) : 'manage_options';
|
369 |
-
$settings['caps']['creds'] = ( isset( $_POST['myCRED-cap-creds'] ) ) ? trim( $_POST['myCRED-cap-creds'] ) : '
|
370 |
|
371 |
// Excludes
|
372 |
$settings['exclude']['plugin_editors'] = ( isset( $_POST['myCRED-exclude-plugin-editors'] ) ) ? true : false;
|
@@ -400,7 +384,12 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
400 |
* @version 1.0
|
401 |
*/
|
402 |
public function settings_header() {
|
403 |
-
wp_enqueue_style( 'mycred-setup' );
|
|
|
|
|
|
|
|
|
|
|
404 |
}
|
405 |
|
406 |
/**
|
@@ -563,7 +552,7 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
563 |
|
564 |
// Capabilities
|
565 |
$edit_plugin = ( isset( $_POST['myCRED-cap-plugin'] ) ) ? sanitize_text_field( $_POST['myCRED-cap-plugin'] ) : 'manage_options';
|
566 |
-
$edit_creds = ( isset( $_POST['myCRED-cap-creds'] ) ) ? sanitize_text_field( $_POST['myCRED-cap-creds'] ) : '
|
567 |
|
568 |
// Excludes
|
569 |
$exclude_plugin_editors = ( isset( $_POST['myCRED-exclude-plugin-editors'] ) ) ? 1 : 0;
|
@@ -620,7 +609,7 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
620 |
<li class="empty"> </li>
|
621 |
<li>
|
622 |
<label for="myCRED-freq-date"><?php _e( 'Date', 'mycred' ); ?></label>
|
623 |
-
<div class="h2"><input type="date" name="myCRED-freq-date" id="myCRED-freq-date" value="" class="medium" /></div>
|
624 |
</li>
|
625 |
</ol>
|
626 |
|
@@ -649,50 +638,6 @@ if ( !class_exists( 'myCRED_Setup' ) ) {
|
|
649 |
</form>
|
650 |
<?php
|
651 |
}
|
652 |
-
|
653 |
-
/**
|
654 |
-
* Install Database
|
655 |
-
* @since 0.1
|
656 |
-
* @version 1.1
|
657 |
-
*/
|
658 |
-
protected function install_database( $decimals = 0 ) {
|
659 |
-
// If DB is already installed bail pretending that everything is fine
|
660 |
-
if ( get_option( 'mycred_version_db' ) !== false ) return true;
|
661 |
-
|
662 |
-
// Format
|
663 |
-
if ( $decimals > 0 ) {
|
664 |
-
if ( $decimals > 4 )
|
665 |
-
$cred_format = "decimal(32,$decimals)";
|
666 |
-
else
|
667 |
-
$cred_format = "decimal(22,$decimals)";
|
668 |
-
}
|
669 |
-
else {
|
670 |
-
$cred_format = 'bigint(22)';
|
671 |
-
}
|
672 |
-
|
673 |
-
global $wpdb;
|
674 |
-
|
675 |
-
// Table Name
|
676 |
-
$table_name = $wpdb->prefix . 'myCRED_log';
|
677 |
-
// Log structure
|
678 |
-
$sql = "id int(11) NOT NULL AUTO_INCREMENT,
|
679 |
-
ref VARCHAR(256) NOT NULL,
|
680 |
-
ref_id int(11) DEFAULT NULL,
|
681 |
-
user_id int(11) DEFAULT NULL,
|
682 |
-
creds $cred_format DEFAULT NULL,
|
683 |
-
ctype VARCHAR(64) DEFAULT 'mycred_default',
|
684 |
-
time bigint(20) DEFAULT NULL,
|
685 |
-
entry LONGTEXT DEFAULT NULL,
|
686 |
-
data LONGTEXT DEFAULT NULL,
|
687 |
-
PRIMARY KEY (id),
|
688 |
-
UNIQUE KEY id (id)";
|
689 |
-
|
690 |
-
// Insert table
|
691 |
-
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
692 |
-
dbDelta( "CREATE TABLE IF NOT EXISTS " . $table_name . " ( " . $sql . " );" );
|
693 |
-
add_option( 'mycred_version_db', '1.0', '', 'no' );
|
694 |
-
return true;
|
695 |
-
}
|
696 |
}
|
697 |
}
|
698 |
?>
|
5 |
* Used when the plugin is activated/de-activated or deleted. Installs core settings and
|
6 |
* base templates, checks compatibility and uninstalls.
|
7 |
* @since 0.1
|
8 |
+
* @version 1.1
|
9 |
*/
|
10 |
if ( !class_exists( 'myCRED_Install' ) ) {
|
11 |
class myCRED_Install {
|
12 |
|
13 |
+
public $core;
|
14 |
public $ver;
|
15 |
|
16 |
/**
|
17 |
* Construct
|
18 |
*/
|
19 |
function __construct() {
|
20 |
+
$this->core = mycred_get_settings();
|
21 |
+
// Get main sites settings
|
22 |
+
$this->ver = get_option( 'mycred_version', false );
|
23 |
}
|
24 |
|
25 |
/**
|
57 |
/**
|
58 |
* First time activation
|
59 |
* @since 0.1
|
60 |
+
* @version 1.2
|
61 |
*/
|
62 |
public function activate() {
|
63 |
// Add general settings
|
64 |
+
add_option( 'mycred_pref_core', $this->core->defaults() );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
|
66 |
// Add add-ons settings
|
67 |
+
add_option( 'mycred_pref_addons', array(
|
68 |
'installed' => array(),
|
69 |
'active' => array()
|
70 |
+
) );
|
|
|
71 |
|
72 |
// Add hooks settings
|
73 |
+
add_option( 'mycred_pref_hooks', array(
|
74 |
'installed' => array(),
|
75 |
'active' => array(),
|
76 |
'hook_prefs' => array()
|
77 |
+
) );
|
|
|
78 |
|
79 |
// Add version number making sure we never run this function again
|
80 |
add_option( 'mycred_version', myCRED_VERSION );
|
81 |
+
$key = wp_generate_password( 12, true, true );
|
82 |
+
add_option( 'mycred_key', $key );
|
83 |
}
|
84 |
|
85 |
/**
|
106 |
* settings and data once the core is gone.
|
107 |
* @filter 'mycred_uninstall_this'
|
108 |
* @since 0.1
|
109 |
+
* @version 1.2
|
110 |
*/
|
111 |
public function uninstall() {
|
112 |
// Everyone should use this filter to delete everything else they have created before returning the option ids.
|
115 |
|
116 |
// Delete each option
|
117 |
foreach ( $installed as $option_id ) {
|
118 |
+
delete_option( $GLOBALS['blog_id'], $option_id );
|
119 |
}
|
120 |
|
121 |
// Delete flags
|
146 |
|
147 |
// Delete DB
|
148 |
global $wpdb;
|
149 |
+
|
150 |
+
if ( defined( 'MYCRED_LOG_TABLE' ) )
|
151 |
+
$table_name = MYCRED_LOG_TABLE;
|
152 |
+
else {
|
153 |
+
global $wpdb;
|
154 |
+
|
155 |
+
if ( mycred_centralize_log() )
|
156 |
+
$table_name = $wpdb->base_prefix . 'myCRED_log';
|
157 |
+
else
|
158 |
+
$table_name = $wpdb->prefix . 'myCRED_log';
|
159 |
+
}
|
160 |
+
|
161 |
+
$wpdb->query( "DROP TABLE IF EXISTS {$table_name};" );
|
162 |
|
163 |
// Multisite
|
164 |
if ( is_multisite() ) {
|
212 |
public $status;
|
213 |
|
214 |
public $core;
|
215 |
+
public $log_table;
|
216 |
|
217 |
/**
|
218 |
* Construct
|
222 |
$this->status = false;
|
223 |
$mycred = mycred_get_settings();
|
224 |
$this->core = $mycred->core;
|
225 |
+
$this->log_table = $mycred->log_table;
|
226 |
|
227 |
// Setup Step
|
228 |
$this->step = false;
|
248 |
$screen = get_current_screen();
|
249 |
if ( $screen->id == 'plugins_page_myCRED-setup' ) return;
|
250 |
|
|
|
251 |
echo '
|
252 |
<div class="updated">
|
253 |
<p>' . __( 'myCRED needs your attention.', 'mycred' ) . ' <a href="' . admin_url( 'plugins.php?page=myCRED-setup' ) . '">' . __( 'Run Setup', 'mycred' ) . '</a></p>
|
332 |
$settings['format']['type'] = 'bigint';
|
333 |
|
334 |
// Install database
|
335 |
+
mycred_install_log( $settings['format']['decimals'], $this->log_table );
|
336 |
|
337 |
// Name
|
338 |
$settings['name']['singular'] = sanitize_text_field( $_POST['myCRED-name-singular'] );
|
350 |
elseif ( $step == 3 ) {
|
351 |
// Capabilities
|
352 |
$settings['caps']['plugin'] = ( isset( $_POST['myCRED-cap-plugin'] ) ) ? trim( $_POST['myCRED-cap-plugin'] ) : 'manage_options';
|
353 |
+
$settings['caps']['creds'] = ( isset( $_POST['myCRED-cap-creds'] ) ) ? trim( $_POST['myCRED-cap-creds'] ) : 'export';
|
354 |
|
355 |
// Excludes
|
356 |
$settings['exclude']['plugin_editors'] = ( isset( $_POST['myCRED-exclude-plugin-editors'] ) ) ? true : false;
|
384 |
* @version 1.0
|
385 |
*/
|
386 |
public function settings_header() {
|
387 |
+
wp_enqueue_style( 'mycred-setup' ); ?>
|
388 |
+
|
389 |
+
<style type="text/css">
|
390 |
+
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-image: url(<?php echo plugins_url( 'assets/images/cred-icon32.png', myCRED_THIS ); ?>); }
|
391 |
+
</style>
|
392 |
+
<?php
|
393 |
}
|
394 |
|
395 |
/**
|
552 |
|
553 |
// Capabilities
|
554 |
$edit_plugin = ( isset( $_POST['myCRED-cap-plugin'] ) ) ? sanitize_text_field( $_POST['myCRED-cap-plugin'] ) : 'manage_options';
|
555 |
+
$edit_creds = ( isset( $_POST['myCRED-cap-creds'] ) ) ? sanitize_text_field( $_POST['myCRED-cap-creds'] ) : 'export';
|
556 |
|
557 |
// Excludes
|
558 |
$exclude_plugin_editors = ( isset( $_POST['myCRED-exclude-plugin-editors'] ) ) ? 1 : 0;
|
609 |
<li class="empty"> </li>
|
610 |
<li>
|
611 |
<label for="myCRED-freq-date"><?php _e( 'Date', 'mycred' ); ?></label>
|
612 |
+
<div class="h2"><input type="date" name="myCRED-freq-date" id="myCRED-freq-date" value="" class="medium" placeholder="YYYY-MM-DD" /></div>
|
613 |
</li>
|
614 |
</ol>
|
615 |
|
638 |
</form>
|
639 |
<?php
|
640 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
641 |
}
|
642 |
}
|
643 |
?>
|
includes/mycred-log.php
ADDED
@@ -0,0 +1,476 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
+
|
4 |
+
/**
|
5 |
+
* Query Log
|
6 |
+
* @see http://mycred.me/classes/mycred_query_log/
|
7 |
+
* @since 0.1
|
8 |
+
* @version 1.2
|
9 |
+
*/
|
10 |
+
if ( !class_exists( 'myCRED_Query_Log' ) ) {
|
11 |
+
class myCRED_Query_Log {
|
12 |
+
|
13 |
+
public $args;
|
14 |
+
public $request;
|
15 |
+
public $prep;
|
16 |
+
public $results;
|
17 |
+
public $num_rows;
|
18 |
+
public $headers;
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Construct
|
22 |
+
*/
|
23 |
+
public function __construct( $args = array() ) {
|
24 |
+
if ( empty( $args ) ) return false;
|
25 |
+
|
26 |
+
global $wpdb;
|
27 |
+
|
28 |
+
$select = $where = $sortby = $limits = '';
|
29 |
+
$prep = $wheres = array();
|
30 |
+
|
31 |
+
// Load General Settings
|
32 |
+
$this->core = mycred_get_settings();
|
33 |
+
if ( $this->core->format['decimals'] > 0 )
|
34 |
+
$format = '%f';
|
35 |
+
else
|
36 |
+
$format = '%d';
|
37 |
+
|
38 |
+
// Prep Defaults
|
39 |
+
$defaults = array(
|
40 |
+
'user_id' => NULL,
|
41 |
+
'ctype' => $this->core->get_cred_id(),
|
42 |
+
'number' => 25,
|
43 |
+
'time' => NULL,
|
44 |
+
'ref' => NULL,
|
45 |
+
'ref_id' => NULL,
|
46 |
+
'amount' => NULL,
|
47 |
+
's' => NULL,
|
48 |
+
'orderby' => 'time',
|
49 |
+
'order' => 'DESC',
|
50 |
+
'ids' => false,
|
51 |
+
'cache' => NULL
|
52 |
+
);
|
53 |
+
$this->args = shortcode_atts( $defaults, $args );
|
54 |
+
|
55 |
+
$data = false;
|
56 |
+
if ( $this->args['cache'] !== NULL ) {
|
57 |
+
$cache_id = substr( $this->args['cache'], 0, 23 );
|
58 |
+
if ( is_multisite() )
|
59 |
+
$data = get_site_transient( 'mycred_log_query_' . $cache_id );
|
60 |
+
else
|
61 |
+
$data = get_transient( 'mycred_log_query_' . $cache_id );
|
62 |
+
}
|
63 |
+
if ( $data === false ) {
|
64 |
+
// Prep return
|
65 |
+
if ( $this->args['ids'] === true )
|
66 |
+
$select = 'SELECT id';
|
67 |
+
else
|
68 |
+
$select = 'SELECT *';
|
69 |
+
|
70 |
+
$wheres[] = 'ctype = %s';
|
71 |
+
$prep[] = $this->args['ctype'];
|
72 |
+
|
73 |
+
// User ID
|
74 |
+
if ( $this->args['user_id'] !== NULL ) {
|
75 |
+
$wheres[] = 'user_id = %d';
|
76 |
+
$prep[] = abs( $this->args['user_id'] );
|
77 |
+
}
|
78 |
+
|
79 |
+
// Reference
|
80 |
+
if ( $this->args['ref'] !== NULL ) {
|
81 |
+
$wheres[] = 'ref = %s';
|
82 |
+
$prep[] = sanitize_text_field( $this->args['ref'] );
|
83 |
+
}
|
84 |
+
|
85 |
+
// Reference ID
|
86 |
+
if ( $this->args['ref_id'] !== NULL ) {
|
87 |
+
$wheres[] = 'ref_id = %d';
|
88 |
+
$prep[] = sanitize_text_field( $this->args['ref_id'] );
|
89 |
+
}
|
90 |
+
|
91 |
+
// Amount
|
92 |
+
if ( $this->args['amount'] !== NULL ) {
|
93 |
+
// Range
|
94 |
+
if ( is_array( $this->args['amount'] ) && array_key_exists( 'start', $this->args['amount'] ) && array_key_exists( 'end', $this->args['amount'] ) ) {
|
95 |
+
$wheres[] = 'creds BETWEEN ' . $format . ' AND ' . $format;
|
96 |
+
$prep[] = $this->core->format_number( sanitize_text_field( $this->args['amount']['start'] ) );
|
97 |
+
$prep[] = $this->core->format_number( sanitize_text_field( $this->args['amount']['end'] ) );
|
98 |
+
}
|
99 |
+
// Compare
|
100 |
+
elseif ( is_array( $this->args['amount'] ) && array_key_exists( 'num', $this->args['amount'] ) && array_key_exists( 'compare', $this->args['amount'] ) ) {
|
101 |
+
$wheres[] = 'creds' . sanitize_text_field( $this->args['amount']['compare'] ) . ' ' . $format;
|
102 |
+
$prep[] = $this->core->format_number( sanitize_text_field( $this->args['amount']['num'] ) );
|
103 |
+
}
|
104 |
+
// Specific amount
|
105 |
+
else {
|
106 |
+
$wheres[] = 'creds = ' . $format;
|
107 |
+
$prep[] = $this->core->format_number( sanitize_text_field( $this->args['amount'] ) );
|
108 |
+
}
|
109 |
+
}
|
110 |
+
|
111 |
+
// Time
|
112 |
+
if ( $this->args['time'] !== NULL ) {
|
113 |
+
$today = strtotime( date_i18n( 'Y/m/d' ) );
|
114 |
+
$todays_date = date_i18n( 'd' );
|
115 |
+
$tomorrow = strtotime( date_i18n( 'Y/m/d', date_i18n( 'U' )+86400 ) );
|
116 |
+
$now = date_i18n( 'U' );
|
117 |
+
|
118 |
+
// Show todays entries
|
119 |
+
if ( $this->args['time'] == 'today' ) {
|
120 |
+
$wheres[] = "time BETWEEN $today AND $now";
|
121 |
+
}
|
122 |
+
// Show yesterdays entries
|
123 |
+
elseif ( $this->args['time'] == 'yesterday' ) {
|
124 |
+
$yesterday = strtotime( date_i18n( 'Y/m/d', date_i18n( 'U' )-86400 ) );
|
125 |
+
$wheres[] = "time BETWEEN $yesterday AND $today";
|
126 |
+
}
|
127 |
+
// Show this weeks entries
|
128 |
+
elseif ( $this->args['time'] == 'thisweek' ) {
|
129 |
+
$start_of_week = get_option( 'start_of_week' );
|
130 |
+
$weekday = date_i18n( 'w' );
|
131 |
+
// New week started today so show only todays
|
132 |
+
if ( $start_of_week == $weekday ) {
|
133 |
+
$wheres[] = "time BETWEEN $today AND $now";
|
134 |
+
}
|
135 |
+
// Show rest of this week
|
136 |
+
else {
|
137 |
+
$no_days_since_start_of_week = $weekday-$start_of_week;
|
138 |
+
$weekstart = $no_days_since_start_of_week*86400;
|
139 |
+
$weekstart = $today-$weekstart;
|
140 |
+
$wheres[] = "time BETWEEN $weekstart AND $now";
|
141 |
+
}
|
142 |
+
}
|
143 |
+
// Show this months entries
|
144 |
+
elseif ( $this->args['time'] == 'thismonth' ) {
|
145 |
+
$start_of_month = strtotime( date_i18n( 'Y/m/01' ) );
|
146 |
+
$wheres[] = "time BETWEEN $start_of_month AND $now";
|
147 |
+
}
|
148 |
+
}
|
149 |
+
|
150 |
+
// Search
|
151 |
+
if ( $this->args['s'] !== NULL ) {
|
152 |
+
$search_query = sanitize_text_field( $this->args['s'] );
|
153 |
+
|
154 |
+
if ( is_int( $search_query ) )
|
155 |
+
$search_query = (string) $search_query;
|
156 |
+
|
157 |
+
$wheres[] = "entry LIKE %s OR data LIKE %s OR ref LIKE %s";
|
158 |
+
$prep[] = "%$search_query%";
|
159 |
+
$prep[] = "%$search_query%";
|
160 |
+
$prep[] = "%$search_query%";
|
161 |
+
|
162 |
+
if ( $this->args['user_id'] !== NULL ) {
|
163 |
+
$wheres[] = 'AND user_id = %d';
|
164 |
+
$prep[] = $user_id;
|
165 |
+
}
|
166 |
+
}
|
167 |
+
|
168 |
+
// Order by
|
169 |
+
if ( !empty( $this->args['orderby'] ) ) {
|
170 |
+
// Make sure $sortby is valid
|
171 |
+
$sortbys = array( 'id', 'ref', 'ref_id', 'user_id', 'creds', 'ctype', 'entry', 'data', 'time' );
|
172 |
+
$allowed = apply_filters( 'mycred_allowed_sortby', $sortbys );
|
173 |
+
if ( in_array( $this->args['orderby'], $allowed ) ) {
|
174 |
+
$sortby = "ORDER BY " . $this->args['orderby'] . " " . $this->args['order'];
|
175 |
+
}
|
176 |
+
}
|
177 |
+
|
178 |
+
// Limits
|
179 |
+
if ( $this->args['number'] == '-1' )
|
180 |
+
$limits = '';
|
181 |
+
elseif ( $this->args['number'] > 0 )
|
182 |
+
$limits = 'LIMIT 0,' . absint( $this->args['number'] );
|
183 |
+
|
184 |
+
// Filter
|
185 |
+
$select = apply_filters( 'mycred_query_log_select', $select, $this->args, $this->core );
|
186 |
+
$sortby = apply_filters( 'mycred_query_log_sortby', $sortby, $this->args, $this->core );
|
187 |
+
$limits = apply_filters( 'mycred_query_log_limits', $limits, $this->args, $this->core );
|
188 |
+
$wheres = apply_filters( 'mycred_query_log_wheres', $wheres, $this->args, $this->core );
|
189 |
+
|
190 |
+
$prep = apply_filters( 'mycred_query_log_prep', $prep, $this->args, $this->core );
|
191 |
+
|
192 |
+
$where = 'WHERE ' . implode( ' AND ', $wheres );
|
193 |
+
|
194 |
+
// Run
|
195 |
+
$this->request = "{$select} FROM {$this->core->log_table} {$where} {$sortby} {$limits};";
|
196 |
+
$this->results = $wpdb->get_results( $wpdb->prepare( $this->request, $prep ) );
|
197 |
+
$this->prep = $prep;
|
198 |
+
|
199 |
+
if ( $this->args['cache'] !== NULL ) {
|
200 |
+
if ( is_multisite() )
|
201 |
+
set_site_transient( 'mycred_log_query_' . $cache_id, $this->results, DAY_IN_SECONDS * 1 );
|
202 |
+
else
|
203 |
+
set_transient( 'mycred_log_query_' . $cache_id, $this->results, DAY_IN_SECONDS * 1 );
|
204 |
+
}
|
205 |
+
|
206 |
+
// Counts
|
207 |
+
$this->num_rows = $wpdb->num_rows;
|
208 |
+
}
|
209 |
+
|
210 |
+
// Return the transient
|
211 |
+
else {
|
212 |
+
$this->request = 'transient';
|
213 |
+
$this->results = $data;
|
214 |
+
$this->prep = '';
|
215 |
+
|
216 |
+
$this->num_rows = count( $data );
|
217 |
+
}
|
218 |
+
|
219 |
+
$this->headers = $this->table_headers();
|
220 |
+
}
|
221 |
+
|
222 |
+
/**
|
223 |
+
* Has Entries
|
224 |
+
* @returns true or false
|
225 |
+
* @since 0.1
|
226 |
+
* @version 1.0
|
227 |
+
*/
|
228 |
+
public function have_entries() {
|
229 |
+
if ( !empty( $this->results ) ) return true;
|
230 |
+
return false;
|
231 |
+
}
|
232 |
+
|
233 |
+
/**
|
234 |
+
* Table Headers
|
235 |
+
* Returns all table column headers.
|
236 |
+
*
|
237 |
+
* @filter mycred_log_column_headers
|
238 |
+
* @since 0.1
|
239 |
+
* @version 1.0
|
240 |
+
*/
|
241 |
+
public function table_headers() {
|
242 |
+
return apply_filters( 'mycred_log_column_headers', array(
|
243 |
+
'column-username' => __( 'User', 'mycred' ),
|
244 |
+
'column-time' => __( 'Date', 'mycred' ),
|
245 |
+
'column-creds' => $this->core->plural(),
|
246 |
+
'column-entry' => __( 'Entry', 'mycred' )
|
247 |
+
), $this );
|
248 |
+
}
|
249 |
+
|
250 |
+
/**
|
251 |
+
* Display
|
252 |
+
* @since 0.1
|
253 |
+
* @version 1.0
|
254 |
+
*/
|
255 |
+
public function display() {
|
256 |
+
echo $this->get_display();
|
257 |
+
}
|
258 |
+
|
259 |
+
/**
|
260 |
+
* Get Display
|
261 |
+
* Generates a table for our results.
|
262 |
+
*
|
263 |
+
* @since 0.1
|
264 |
+
* @version 1.0
|
265 |
+
*/
|
266 |
+
public function get_display() {
|
267 |
+
$output = '
|
268 |
+
<table class="wp-list-table widefat fixed log-entries" cellspacing="0">
|
269 |
+
<thead>
|
270 |
+
<tr>';
|
271 |
+
|
272 |
+
// Table header
|
273 |
+
foreach ( $this->headers as $col_id => $col_title ) {
|
274 |
+
$output .= '<th scope="col" id="' . str_replace( 'column-', '', $col_id ) . '" class="manage-column ' . $col_id . '">' . $col_title . '</th>';
|
275 |
+
}
|
276 |
+
|
277 |
+
$output .= '
|
278 |
+
</tr>
|
279 |
+
</thead>
|
280 |
+
<tfoot>';
|
281 |
+
|
282 |
+
// Table footer
|
283 |
+
foreach ( $this->headers as $col_id => $col_title ) {
|
284 |
+
$output .= '<th scope="col" class="manage-column ' . $col_id . '">' . $col_title . '</th>';
|
285 |
+
}
|
286 |
+
|
287 |
+
$output .= '
|
288 |
+
</tfoot>
|
289 |
+
<tbody id="the-list">';
|
290 |
+
|
291 |
+
// Loop
|
292 |
+
if ( $this->have_entries() ) {
|
293 |
+
$alt = 0;
|
294 |
+
foreach ( $this->results as $log_entry ) {
|
295 |
+
$alt = $alt+1;
|
296 |
+
if ( $alt % 2 == 0 )
|
297 |
+
$class = ' alt';
|
298 |
+
else
|
299 |
+
$class = '';
|
300 |
+
|
301 |
+
$output .= '<tr class="myCRED-log-row' . $class . '">';
|
302 |
+
$output .= $this->get_the_entry( $log_entry );
|
303 |
+
$output .= '</tr>';
|
304 |
+
}
|
305 |
+
}
|
306 |
+
// No log entry
|
307 |
+
else {
|
308 |
+
$output .= '<tr><td colspan="' . count( $this->headers ) . '" class="no-entries">' . $this->get_no_entries() . '</td></tr>';
|
309 |
+
}
|
310 |
+
|
311 |
+
$output .= '
|
312 |
+
</tbody>
|
313 |
+
</table>' . "\n";
|
314 |
+
|
315 |
+
return $output;
|
316 |
+
}
|
317 |
+
|
318 |
+
/**
|
319 |
+
* The Entry
|
320 |
+
* @since 0.1
|
321 |
+
* @version 1.1
|
322 |
+
*/
|
323 |
+
public function the_entry( $log_entry, $wrap = 'td' ) {
|
324 |
+
echo $this->get_the_entry( $log_entry, $wrap );
|
325 |
+
}
|
326 |
+
|
327 |
+
/**
|
328 |
+
* Get The Entry
|
329 |
+
* Generated a single entry row depending on the columns used / requested.
|
330 |
+
* @filter mycred_log_date
|
331 |
+
* @since 0.1
|
332 |
+
* @version 1.2.1
|
333 |
+
*/
|
334 |
+
public function get_the_entry( $log_entry, $wrap = 'td' ) {
|
335 |
+
$date_format = get_option( 'date_format' ) . ' ' . get_option( 'time_format' );
|
336 |
+
$entry_data = '';
|
337 |
+
|
338 |
+
// Run though columns
|
339 |
+
foreach ( $this->headers as $column_id => $column_name ) {
|
340 |
+
switch ( $column_id ) {
|
341 |
+
// Username Column
|
342 |
+
case 'column-username':
|
343 |
+
$user = get_userdata( $log_entry->user_id );
|
344 |
+
|
345 |
+
if ( $user === false )
|
346 |
+
$content = '<span>' . __( 'User Missing', 'mycred' ) . ' (ID: ' . $log_entry->user_id . ')</span>';
|
347 |
+
else
|
348 |
+
$content = '<span>' . $user->display_name . '</span>';
|
349 |
+
|
350 |
+
unset( $user );
|
351 |
+
break;
|
352 |
+
// Date & Time Column
|
353 |
+
case 'column-time' :
|
354 |
+
$content = apply_filters( 'mycred_log_date', date_i18n( $date_format, $log_entry->time ), $log_entry->time );
|
355 |
+
break;
|
356 |
+
// Amount Column
|
357 |
+
case 'column-creds' :
|
358 |
+
$content = $this->core->format_creds( $log_entry->creds );
|
359 |
+
break;
|
360 |
+
// Log Entry Column
|
361 |
+
case 'column-entry' :
|
362 |
+
$content = $this->core->parse_template_tags( $log_entry->entry, $log_entry );
|
363 |
+
break;
|
364 |
+
}
|
365 |
+
$entry_data .= '<' . $wrap . ' class="' . $column_id . '">' . $content . '</' . $wrap . '>';
|
366 |
+
}
|
367 |
+
return $entry_data;
|
368 |
+
}
|
369 |
+
|
370 |
+
/**
|
371 |
+
* No Entries
|
372 |
+
* @since 0.1
|
373 |
+
* @version 1.0
|
374 |
+
*/
|
375 |
+
public function no_entries() {
|
376 |
+
echo $this->get_no_entries();
|
377 |
+
}
|
378 |
+
|
379 |
+
/**
|
380 |
+
* Get No Entries
|
381 |
+
* @since 0.1
|
382 |
+
* @version 1.0
|
383 |
+
*/
|
384 |
+
public function get_no_entries() {
|
385 |
+
return __( 'No log entries found', 'mycred' );
|
386 |
+
}
|
387 |
+
|
388 |
+
/**
|
389 |
+
* Log Search
|
390 |
+
* @since 0.1
|
391 |
+
* @version 1.0.1
|
392 |
+
*/
|
393 |
+
public function search() {
|
394 |
+
if ( isset( $_GET['s'] ) && !empty( $_GET['s'] ) )
|
395 |
+
$serarch_string = $_GET['s'];
|
396 |
+
else
|
397 |
+
$serarch_string = ''; ?>
|
398 |
+
|
399 |
+
<p class="search-box">
|
400 |
+
<label class="screen-reader-text" for=""><?php _e( 'Search Log', 'mycred' ); ?>:</label>
|
401 |
+
<input type="search" name="s" value="<?php echo $serarch_string; ?>" placeholder="<?php _e( 'search log entries', 'mycred' ); ?>" />
|
402 |
+
<input type="submit" name="mycred-search-log" id="search-submit" class="button button-medium button-secondary" value="<?php _e( 'Search Log', 'mycred' ); ?>" />
|
403 |
+
</p>
|
404 |
+
<?php
|
405 |
+
}
|
406 |
+
|
407 |
+
/**
|
408 |
+
* Filter by Dates
|
409 |
+
* @since 0.1
|
410 |
+
* @version 1.0
|
411 |
+
*/
|
412 |
+
public function filter_dates( $url = '' ) {
|
413 |
+
$date_sorting = apply_filters( 'mycred_sort_by_time', array(
|
414 |
+
'' => __( 'All', 'mycred' ),
|
415 |
+
'today' => __( 'Today', 'mycred' ),
|
416 |
+
'yesterday' => __( 'Yesterday', 'mycred' ),
|
417 |
+
'thisweek' => __( 'This Week', 'mycred' ),
|
418 |
+
'thismonth' => __( 'This Month', 'mycred' )
|
419 |
+
) );
|
420 |
+
|
421 |
+
if ( !empty( $date_sorting ) ) {
|
422 |
+
$total = count( $date_sorting );
|
423 |
+
$count = 0;
|
424 |
+
echo '<ul class="subsubsub">';
|
425 |
+
foreach ( $date_sorting as $sorting_id => $sorting_name ) {
|
426 |
+
$count = $count+1;
|
427 |
+
echo '<li class="' . $sorting_id . '"><a href="';
|
428 |
+
|
429 |
+
// Build Query Args
|
430 |
+
$url_args = array();
|
431 |
+
if ( isset( $_GET['user_id'] ) && !empty( $_GET['user_id'] ) )
|
432 |
+
$url_args['user_id'] = $_GET['user_id'];
|
433 |
+
if ( isset( $_GET['ref'] ) && !empty( $_GET['ref'] ) )
|
434 |
+
$url_args['ref'] = $_GET['ref'];
|
435 |
+
if ( isset( $_GET['order'] ) && !empty( $_GET['order'] ) )
|
436 |
+
$url_args['order'] = $_GET['order'];
|
437 |
+
if ( isset( $_GET['s'] ) && !empty( $_GET['s'] ) )
|
438 |
+
$url_args['s'] = $_GET['s'];
|
439 |
+
if ( !empty( $sorting_id ) )
|
440 |
+
$url_args['show'] = $sorting_id;
|
441 |
+
|
442 |
+
// Build URL
|
443 |
+
if ( !empty( $url_args ) )
|
444 |
+
echo add_query_arg( $url_args, $url );
|
445 |
+
else
|
446 |
+
echo $url;
|
447 |
+
|
448 |
+
echo '"';
|
449 |
+
|
450 |
+
if ( isset( $_GET['show'] ) && $_GET['show'] == $sorting_id ) echo ' class="current"';
|
451 |
+
elseif ( !isset( $_GET['show'] ) && empty( $sorting_id ) ) echo ' class="current"';
|
452 |
+
|
453 |
+
echo '>' . $sorting_name . '</a>';
|
454 |
+
if ( $count != $total ) echo ' | ';
|
455 |
+
echo '</li>';
|
456 |
+
}
|
457 |
+
echo '</ul>';
|
458 |
+
}
|
459 |
+
}
|
460 |
+
|
461 |
+
/**
|
462 |
+
* Reset Query
|
463 |
+
* @since 1.3
|
464 |
+
* @version 1.0
|
465 |
+
*/
|
466 |
+
public function reset_query() {
|
467 |
+
$this->args = NULL;
|
468 |
+
$this->request = NULL;
|
469 |
+
$this->prep = NULL;
|
470 |
+
$this->results = NULL;
|
471 |
+
$this->num_rows = NULL;
|
472 |
+
$this->headers = NULL;
|
473 |
+
}
|
474 |
+
}
|
475 |
+
}
|
476 |
+
?>
|
includes/mycred-network.php
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
<?php
|
2 |
-
if ( !defined( 'myCRED_VERSION' )
|
3 |
/**
|
4 |
* myCRED_Network class
|
5 |
* @since 0.1
|
6 |
-
* @version 1.
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Network' ) ) {
|
9 |
class myCRED_Network {
|
@@ -25,8 +25,11 @@ if ( !class_exists( 'myCRED_Network' ) ) {
|
|
25 |
* @version 1.0
|
26 |
*/
|
27 |
public function load() {
|
28 |
-
add_action( '
|
29 |
-
add_action( 'admin_head',
|
|
|
|
|
|
|
30 |
}
|
31 |
|
32 |
/**
|
@@ -34,13 +37,8 @@ if ( !class_exists( 'myCRED_Network' ) ) {
|
|
34 |
* @since 0.1
|
35 |
* @version 1.0
|
36 |
*/
|
37 |
-
public function
|
38 |
-
|
39 |
-
if ( isset( $_POST['mycred_network'] ) && isset( $_POST['mycred-token'] ) )
|
40 |
-
$this->save_network_prefs();
|
41 |
-
|
42 |
-
// Add Menu
|
43 |
-
add_action( 'network_admin_menu', array( &$this, 'add_menu' ) );
|
44 |
}
|
45 |
|
46 |
/**
|
@@ -53,16 +51,16 @@ if ( !class_exists( 'myCRED_Network' ) ) {
|
|
53 |
__( 'myCRED', 'mycred' ),
|
54 |
__( 'myCRED', 'mycred' ),
|
55 |
'manage_network_options',
|
56 |
-
'
|
57 |
'',
|
58 |
''
|
59 |
);
|
60 |
$pages[] = add_submenu_page(
|
61 |
-
'
|
62 |
__( 'Network Settings', 'mycred' ),
|
63 |
__( 'Network Settings', 'mycred' ),
|
64 |
'manage_network_options',
|
65 |
-
'
|
66 |
array( $this, 'admin_page_settings' )
|
67 |
);
|
68 |
|
@@ -70,20 +68,46 @@ if ( !class_exists( 'myCRED_Network' ) ) {
|
|
70 |
add_action( 'admin_print_styles-' . $page, array( $this, 'admin_print_styles' ) );
|
71 |
}
|
72 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
/**
|
74 |
* Add Admin Menu Styling
|
75 |
* @since 0.1
|
76 |
* @version 1.0
|
77 |
*/
|
78 |
public function admin_menu_styling() {
|
79 |
-
$image = plugins_url( 'images/logo-menu.png', myCRED_THIS );
|
80 |
-
|
81 |
<style type="text/css">
|
82 |
-
#
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
|
|
|
|
|
|
|
|
|
|
87 |
}
|
88 |
|
89 |
/**
|
@@ -95,14 +119,24 @@ if ( !class_exists( 'myCRED_Network' ) ) {
|
|
95 |
if ( !wp_style_is( 'mycred-admin', 'registered' ) ) {
|
96 |
wp_register_style(
|
97 |
'mycred-admin',
|
98 |
-
plugins_url( 'css/admin.css', myCRED_THIS ),
|
99 |
false,
|
100 |
myCRED_VERSION . '.1',
|
101 |
'all'
|
102 |
);
|
103 |
}
|
104 |
-
|
105 |
wp_enqueue_style( 'mycred-admin' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
106 |
}
|
107 |
|
108 |
/**
|
@@ -116,44 +150,60 @@ if ( !class_exists( 'myCRED_Network' ) ) {
|
|
116 |
|
117 |
global $mycred_network;
|
118 |
|
119 |
-
$
|
120 |
-
'master' => 0,
|
121 |
-
'block' => ''
|
122 |
-
);
|
123 |
-
$prefs = get_site_option( 'mycred_network', $defaults, false );
|
124 |
$name = apply_filters( 'mycred_label', myCRED_NAME ); ?>
|
125 |
|
126 |
<div class="wrap" id="myCRED-wrap">
|
127 |
<div id="icon-myCRED" class="icon32"><br /></div>
|
128 |
<h2> <?php echo $name . ' ' . __( 'Network', 'mycred' ); ?></h2>
|
129 |
<?php
|
|
|
|
|
|
|
|
|
|
|
130 |
|
131 |
// Settings Updated
|
132 |
-
if ( isset( $
|
133 |
echo '<div class="updated"><p>' . __( 'Network Settings Updated', 'mycred' ) . '</p></div>'; ?>
|
134 |
|
135 |
<p><?php echo sprintf( __( 'Configure network settings for %s.', 'mycred' ), $name ); ?></p>
|
136 |
-
<form method="post" action="" class="">
|
137 |
-
|
|
|
138 |
<div class="list-items expandable-li" id="accordion">
|
139 |
-
<h4
|
140 |
-
<div class="body
|
141 |
<label class="subheader"><?php _e( 'Master Template', 'mycred' ); ?></label>
|
142 |
-
<ol id="myCRED-network-">
|
143 |
<li>
|
144 |
-
<input type="radio" name="mycred_network[master]" id="myCRED-network-overwrite-" <?php checked( $prefs['master'],
|
145 |
<label for="myCRED-network-"><?php _e( 'Yes', 'mycred' ); ?></label>
|
146 |
</li>
|
147 |
<li>
|
148 |
-
<input type="radio" name="mycred_network[master]" id="myCRED-network-overwrite-" <?php checked( $prefs['master'],
|
149 |
<label for="myCRED-network-"><?php _e( 'No', 'mycred' ); ?></label>
|
150 |
</li>
|
151 |
<li>
|
152 |
-
<p class="description"><?php echo sprintf( __(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
153 |
</li>
|
154 |
</ol>
|
155 |
<label class="subheader"><?php _e( 'Site Block', 'mycred' ); ?></label>
|
156 |
-
<ol id="myCRED-network-">
|
157 |
<li>
|
158 |
<div class="h2"><input type="text" name="mycred_network[block]" id="myCRED-network-block" value="<?php echo $prefs['block']; ?>" class="long" /></div>
|
159 |
<span class="description"><?php echo sprintf( __( 'Comma separated list of blog ids where %s is to be disabled.', 'mycred' ), $name ); ?></span>
|
@@ -165,7 +215,7 @@ if ( !class_exists( 'myCRED_Network' ) ) {
|
|
165 |
<?php do_action( 'mycred_after_network_prefs', $this ); ?>
|
166 |
|
167 |
</div>
|
168 |
-
<p><?php submit_button( __( 'Save Network Settings', 'mycred' ) ); ?></p>
|
169 |
</form>
|
170 |
<?php do_action( 'mycred_bottom_network_page', $this ); ?>
|
171 |
|
@@ -176,25 +226,19 @@ if ( !class_exists( 'myCRED_Network' ) ) {
|
|
176 |
/**
|
177 |
* Save Network Settings
|
178 |
* @since 0.1
|
179 |
-
* @version 1.
|
180 |
*/
|
181 |
-
|
182 |
-
if ( !wp_verify_nonce( $_POST['mycred-token'], 'mycred' ) ) return;
|
183 |
-
|
184 |
-
global $mycred_network;
|
185 |
-
|
186 |
-
$new_settings['master'] = ( isset( $_POST['mycred_network']['master'] ) ) ? (bool) $_POST['mycred_network']['master'] : 0;
|
187 |
-
$new_settings['block'] = sanitize_text_field( $_POST['mycred_network']['block'] );
|
188 |
|
189 |
-
$new_settings =
|
|
|
|
|
|
|
190 |
|
191 |
-
|
192 |
-
update_site_option( 'mycred_network', $new_settings );
|
193 |
|
194 |
-
$
|
195 |
}
|
196 |
}
|
197 |
-
$network = new myCRED_Network();
|
198 |
-
$network->load();
|
199 |
}
|
200 |
?>
|
1 |
<?php
|
2 |
+
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
/**
|
4 |
* myCRED_Network class
|
5 |
* @since 0.1
|
6 |
+
* @version 1.1
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Network' ) ) {
|
9 |
class myCRED_Network {
|
25 |
* @version 1.0
|
26 |
*/
|
27 |
public function load() {
|
28 |
+
add_action( 'admin_init', array( $this, 'module_admin_init' ) );
|
29 |
+
add_action( 'admin_head', array( $this, 'admin_menu_styling' ) );
|
30 |
+
add_action( 'network_admin_menu', array( $this, 'add_menu' ) );
|
31 |
+
|
32 |
+
add_filter( 'site_option_active_sitewide_plugins', array( $this, 'network_check' ) );
|
33 |
}
|
34 |
|
35 |
/**
|
37 |
* @since 0.1
|
38 |
* @version 1.0
|
39 |
*/
|
40 |
+
public function module_admin_init() {
|
41 |
+
register_setting( 'mycred_network', 'mycred_network', array( $this, 'save_network_prefs' ) );
|
|
|
|
|
|
|
|
|
|
|
42 |
}
|
43 |
|
44 |
/**
|
51 |
__( 'myCRED', 'mycred' ),
|
52 |
__( 'myCRED', 'mycred' ),
|
53 |
'manage_network_options',
|
54 |
+
'myCRED_Network',
|
55 |
'',
|
56 |
''
|
57 |
);
|
58 |
$pages[] = add_submenu_page(
|
59 |
+
'myCRED_Network',
|
60 |
__( 'Network Settings', 'mycred' ),
|
61 |
__( 'Network Settings', 'mycred' ),
|
62 |
'manage_network_options',
|
63 |
+
'myCRED_Network',
|
64 |
array( $this, 'admin_page_settings' )
|
65 |
);
|
66 |
|
68 |
add_action( 'admin_print_styles-' . $page, array( $this, 'admin_print_styles' ) );
|
69 |
}
|
70 |
|
71 |
+
/**
|
72 |
+
* Network Check
|
73 |
+
* Blocks mycred from being used if the plugin is network wide
|
74 |
+
* enabled.
|
75 |
+
* @since 1.3
|
76 |
+
* @version 1.0
|
77 |
+
*/
|
78 |
+
public function network_check( $value ) {
|
79 |
+
global $current_blog;
|
80 |
+
|
81 |
+
$network = mycred_get_settings_network();
|
82 |
+
if ( empty( $network['block'] ) ) return $value;
|
83 |
+
|
84 |
+
$list = explode( ',', $network['block'] );
|
85 |
+
if ( in_array( $current_blog->blog_id, $list ) ) {
|
86 |
+
unset( $value['mycred/mycred.php'] );
|
87 |
+
}
|
88 |
+
|
89 |
+
return $value;
|
90 |
+
}
|
91 |
+
|
92 |
/**
|
93 |
* Add Admin Menu Styling
|
94 |
* @since 0.1
|
95 |
* @version 1.0
|
96 |
*/
|
97 |
public function admin_menu_styling() {
|
98 |
+
$image = plugins_url( 'assets/images/logo-menu.png', myCRED_THIS ); ?>
|
99 |
+
|
100 |
<style type="text/css">
|
101 |
+
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-image: url(<?php echo apply_filters( 'mycred_icon', plugins_url( 'assets/images/cred-icon32.png', myCRED_THIS ) ); ?>); }
|
102 |
+
h4:before { float:right; padding-right: 12px; font-size: 14px; font-weight: normal; color: silver; }
|
103 |
+
h4.ui-accordion-header.ui-state-active:before { content: "<?php _e( 'click to close', 'mycred' ); ?>"; }
|
104 |
+
h4.ui-accordion-header:before { content: "<?php _e( 'click to open', 'mycred' ); ?>"; }
|
105 |
+
#adminmenu .toplevel_page_myCRED_Network div.wp-menu-image { background-image: url(<?php echo $image; ?>); background-position: 1px -28px; }
|
106 |
+
#adminmenu .toplevel_page_myCRED_Network:hover div.wp-menu-image,
|
107 |
+
#adminmenu .toplevel_page_myCRED_Network.current div.wp-menu-image,
|
108 |
+
#adminmenu .toplevel_page_myCRED_Network .wp-menu-open div.wp-menu-image { background-position: 1px 0; }
|
109 |
+
</style>
|
110 |
+
<?php
|
111 |
}
|
112 |
|
113 |
/**
|
119 |
if ( !wp_style_is( 'mycred-admin', 'registered' ) ) {
|
120 |
wp_register_style(
|
121 |
'mycred-admin',
|
122 |
+
plugins_url( 'assets/css/admin.css', myCRED_THIS ),
|
123 |
false,
|
124 |
myCRED_VERSION . '.1',
|
125 |
'all'
|
126 |
);
|
127 |
}
|
|
|
128 |
wp_enqueue_style( 'mycred-admin' );
|
129 |
+
|
130 |
+
if ( !wp_script_is( 'mycred-admin', 'registered' ) ) {
|
131 |
+
wp_register_script(
|
132 |
+
'mycred-admin',
|
133 |
+
plugins_url( 'assets/js/accordion.js', myCRED_THIS ),
|
134 |
+
array( 'jquery', 'jquery-ui-core', 'jquery-ui-accordion' ),
|
135 |
+
myCRED_VERSION . '.1'
|
136 |
+
);
|
137 |
+
wp_localize_script( 'mycred-admin', 'myCRED', apply_filters( 'mycred_localize_admin', array( 'active' => '-1' ) ) );
|
138 |
+
}
|
139 |
+
wp_enqueue_script( 'mycred-admin' );
|
140 |
}
|
141 |
|
142 |
/**
|
150 |
|
151 |
global $mycred_network;
|
152 |
|
153 |
+
$prefs = mycred_get_settings_network();
|
|
|
|
|
|
|
|
|
154 |
$name = apply_filters( 'mycred_label', myCRED_NAME ); ?>
|
155 |
|
156 |
<div class="wrap" id="myCRED-wrap">
|
157 |
<div id="icon-myCRED" class="icon32"><br /></div>
|
158 |
<h2> <?php echo $name . ' ' . __( 'Network', 'mycred' ); ?></h2>
|
159 |
<?php
|
160 |
+
|
161 |
+
// Inform user that myCRED has not yet been setup
|
162 |
+
$setup = get_blog_option( 1, 'mycred_version', false );
|
163 |
+
if ( $setup !== false )
|
164 |
+
echo '<div class="error"><p>' . sprintf( __( 'Note! %s has not yet been setup.', 'mycred' ), $name ) . '</p></div>';
|
165 |
|
166 |
// Settings Updated
|
167 |
+
if ( isset( $_GET['settings-updated'] ) )
|
168 |
echo '<div class="updated"><p>' . __( 'Network Settings Updated', 'mycred' ) . '</p></div>'; ?>
|
169 |
|
170 |
<p><?php echo sprintf( __( 'Configure network settings for %s.', 'mycred' ), $name ); ?></p>
|
171 |
+
<form method="post" action="<?php echo admin_url( 'options.php' ); ?>" class="">
|
172 |
+
<?php settings_fields( 'mycred_network' ); ?>
|
173 |
+
|
174 |
<div class="list-items expandable-li" id="accordion">
|
175 |
+
<h4><div class="icon icon-inactive core"></div><?php _e( 'Settings', 'mycred' ); ?></h4>
|
176 |
+
<div class="body" style="display:block;">
|
177 |
<label class="subheader"><?php _e( 'Master Template', 'mycred' ); ?></label>
|
178 |
+
<ol id="myCRED-network-settings-enabling">
|
179 |
<li>
|
180 |
+
<input type="radio" name="mycred_network[master]" id="myCRED-network-overwrite-enabled" <?php checked( $prefs['master'], 1 ); ?> value="1" />
|
181 |
<label for="myCRED-network-"><?php _e( 'Yes', 'mycred' ); ?></label>
|
182 |
</li>
|
183 |
<li>
|
184 |
+
<input type="radio" name="mycred_network[master]" id="myCRED-network-overwrite-disabled" <?php checked( $prefs['master'], 0 ); ?> value="0" />
|
185 |
<label for="myCRED-network-"><?php _e( 'No', 'mycred' ); ?></label>
|
186 |
</li>
|
187 |
<li>
|
188 |
+
<p class="description"><?php echo sprintf( __( "If enabled, %s will use your main site's settings for all other sites in your network.", 'mycred' ), $name ); ?></p>
|
189 |
+
</li>
|
190 |
+
</ol>
|
191 |
+
<label class="subheader"><?php _e( 'Central Logging', 'mycred' ); ?></label>
|
192 |
+
<ol id="myCRED-network-log-enabling">
|
193 |
+
<li>
|
194 |
+
<input type="radio" name="mycred_network[central]" id="myCRED-network-overwrite-log-enabled" <?php checked( $prefs['central'], 1 ); ?> value="1" />
|
195 |
+
<label for="myCRED-network-"><?php _e( 'Yes', 'mycred' ); ?></label>
|
196 |
+
</li>
|
197 |
+
<li>
|
198 |
+
<input type="radio" name="mycred_network[central]" id="myCRED-network-overwrite-log-disabled" <?php checked( $prefs['central'], 0 ); ?> value="0" />
|
199 |
+
<label for="myCRED-network-"><?php _e( 'No', 'mycred' ); ?></label>
|
200 |
+
</li>
|
201 |
+
<li>
|
202 |
+
<p class="description"><?php echo sprintf( __( "If enabled, %s will log all site actions in your main site's log.", 'mycred' ), $name ); ?></p>
|
203 |
</li>
|
204 |
</ol>
|
205 |
<label class="subheader"><?php _e( 'Site Block', 'mycred' ); ?></label>
|
206 |
+
<ol id="myCRED-network-site-blocks">
|
207 |
<li>
|
208 |
<div class="h2"><input type="text" name="mycred_network[block]" id="myCRED-network-block" value="<?php echo $prefs['block']; ?>" class="long" /></div>
|
209 |
<span class="description"><?php echo sprintf( __( 'Comma separated list of blog ids where %s is to be disabled.', 'mycred' ), $name ); ?></span>
|
215 |
<?php do_action( 'mycred_after_network_prefs', $this ); ?>
|
216 |
|
217 |
</div>
|
218 |
+
<p><?php submit_button( __( 'Save Network Settings', 'mycred' ), 'primary large', 'submit', false ); ?></p>
|
219 |
</form>
|
220 |
<?php do_action( 'mycred_bottom_network_page', $this ); ?>
|
221 |
|
226 |
/**
|
227 |
* Save Network Settings
|
228 |
* @since 0.1
|
229 |
+
* @version 1.1
|
230 |
*/
|
231 |
+
public function save_network_prefs( $settings ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
232 |
|
233 |
+
$new_settings = array();
|
234 |
+
$new_settings['master'] = ( isset( $settings['master'] ) ) ? $settings['master'] : 0;
|
235 |
+
$new_settings['central'] = ( isset( $settings['central'] ) ) ? $settings['central'] : 0;
|
236 |
+
$new_settings['block'] = sanitize_text_field( $settings['block'] );
|
237 |
|
238 |
+
$new_settings = apply_filters( 'mycred_save_network_prefs', $new_settings, $settings, $this->core );
|
|
|
239 |
|
240 |
+
return $new_settings;
|
241 |
}
|
242 |
}
|
|
|
|
|
243 |
}
|
244 |
?>
|
includes/mycred-protect.php
CHANGED
@@ -13,12 +13,12 @@ class myCRED_Protect {
|
|
13 |
* Construct
|
14 |
*/
|
15 |
public function __construct( $new_key = '' ) {
|
16 |
-
if (
|
17 |
-
$skey = get_option( 'mycred_key' );
|
18 |
-
else
|
19 |
$skey = get_blog_option( 1, 'mycred_key' );
|
|
|
|
|
20 |
|
21 |
-
if ( $skey === false || ( $new_key === true && function_exists( 'current_user_can' ) && current_user_can( '
|
22 |
$skey = $this->reset_key();
|
23 |
}
|
24 |
$this->skey = $skey;
|
13 |
* Construct
|
14 |
*/
|
15 |
public function __construct( $new_key = '' ) {
|
16 |
+
if ( mycred_override_settings() )
|
|
|
|
|
17 |
$skey = get_blog_option( 1, 'mycred_key' );
|
18 |
+
else
|
19 |
+
$skey = get_option( 'mycred_key' );
|
20 |
|
21 |
+
if ( $skey === false || ( $new_key === true && function_exists( 'current_user_can' ) && current_user_can( 'manage_options' ) ) ) {
|
22 |
$skey = $this->reset_key();
|
23 |
}
|
24 |
$this->skey = $skey;
|
includes/mycred-rankings.php
CHANGED
@@ -43,7 +43,7 @@ if ( !class_exists( 'myCRED_Query_Rankings' ) ) {
|
|
43 |
* Get Rankings
|
44 |
* Queries the DB for all users in order of their point balance.
|
45 |
* @since 1.1.2
|
46 |
-
* @version 1.0
|
47 |
*/
|
48 |
public function get_rankings() {
|
49 |
global $wpdb;
|
@@ -78,22 +78,20 @@ if ( !class_exists( 'myCRED_Query_Rankings' ) ) {
|
|
78 |
|
79 |
$prep = array();
|
80 |
|
81 |
-
$wp = $wpdb->prefix;
|
82 |
-
|
83 |
// SELECT
|
84 |
-
$selects = array( $
|
85 |
foreach ( $user_fields as $field ) {
|
86 |
if ( $field == 'ID' ) continue;
|
87 |
-
$selects[] = $
|
88 |
}
|
89 |
-
$selects[] = $
|
90 |
|
91 |
$select = implode( ', ', $selects );
|
92 |
$SQL = "SELECT {$select}
|
93 |
-
FROM {$
|
94 |
-
LEFT JOIN {$
|
95 |
-
ON {$
|
96 |
-
ORDER BY {$
|
97 |
|
98 |
$this->result = $wpdb->get_results( $wpdb->prepare( $SQL, $key ), 'ARRAY_A' );
|
99 |
$this->count = $wpdb->num_rows;
|
@@ -105,7 +103,7 @@ if ( !class_exists( 'myCRED_Query_Rankings' ) ) {
|
|
105 |
* If a frequency is set to something other then 'always', then that
|
106 |
* setting is enforced.
|
107 |
* @since 1.1.2
|
108 |
-
* @version 1.
|
109 |
*/
|
110 |
public function save( $reset = false ) {
|
111 |
// Will not save no results
|
@@ -114,8 +112,7 @@ if ( !class_exists( 'myCRED_Query_Rankings' ) ) {
|
|
114 |
// Prep
|
115 |
$mycred = mycred_get_settings();
|
116 |
$save = $reset;
|
117 |
-
|
118 |
-
$lifespan = 86400;
|
119 |
|
120 |
$history = get_option( 'mycred_transients' );
|
121 |
// If history has never been set
|
@@ -139,13 +136,14 @@ if ( !class_exists( 'myCRED_Query_Rankings' ) ) {
|
|
139 |
elseif ( $mycred->frequency['rate'] == 'weekly' ) {
|
140 |
$today = date_i18n( 'W' );
|
141 |
if ( $today != $history[ $this->args['type'] ] ) $save = true;
|
142 |
-
$lifespan =
|
143 |
}
|
144 |
// Update on specific date
|
145 |
elseif ( $mycred->frequency['rate'] == 'date' ) {
|
146 |
$date = $mycred->frequency['date'];
|
147 |
$today = date_i18n( 'Y-m-d' );
|
148 |
if ( $today == $date ) $save = true;
|
|
|
149 |
}
|
150 |
|
151 |
// Save new transient
|
43 |
* Get Rankings
|
44 |
* Queries the DB for all users in order of their point balance.
|
45 |
* @since 1.1.2
|
46 |
+
* @version 1.0.1
|
47 |
*/
|
48 |
public function get_rankings() {
|
49 |
global $wpdb;
|
78 |
|
79 |
$prep = array();
|
80 |
|
|
|
|
|
81 |
// SELECT
|
82 |
+
$selects = array( "{$wpdb->users}.ID" );
|
83 |
foreach ( $user_fields as $field ) {
|
84 |
if ( $field == 'ID' ) continue;
|
85 |
+
$selects[] = "{$wpdb->users}." . $field;
|
86 |
}
|
87 |
+
$selects[] = "{$wpdb->usermeta}.meta_value AS cred";
|
88 |
|
89 |
$select = implode( ', ', $selects );
|
90 |
$SQL = "SELECT {$select}
|
91 |
+
FROM {$wpdb->users}
|
92 |
+
LEFT JOIN {$wpdb->usermeta}
|
93 |
+
ON {$wpdb->users}.ID = {$wpdb->usermeta}.user_id AND {$wpdb->usermeta}.meta_key = %s
|
94 |
+
ORDER BY {$wpdb->usermeta}.meta_value+1 {$order} {$limit};";
|
95 |
|
96 |
$this->result = $wpdb->get_results( $wpdb->prepare( $SQL, $key ), 'ARRAY_A' );
|
97 |
$this->count = $wpdb->num_rows;
|
103 |
* If a frequency is set to something other then 'always', then that
|
104 |
* setting is enforced.
|
105 |
* @since 1.1.2
|
106 |
+
* @version 1.0
|
107 |
*/
|
108 |
public function save( $reset = false ) {
|
109 |
// Will not save no results
|
112 |
// Prep
|
113 |
$mycred = mycred_get_settings();
|
114 |
$save = $reset;
|
115 |
+
$lifespan = 1 * DAY_IN_SECONDS;
|
|
|
116 |
|
117 |
$history = get_option( 'mycred_transients' );
|
118 |
// If history has never been set
|
136 |
elseif ( $mycred->frequency['rate'] == 'weekly' ) {
|
137 |
$today = date_i18n( 'W' );
|
138 |
if ( $today != $history[ $this->args['type'] ] ) $save = true;
|
139 |
+
$lifespan = 1 * WEEK_IN_SECONDS;
|
140 |
}
|
141 |
// Update on specific date
|
142 |
elseif ( $mycred->frequency['rate'] == 'date' ) {
|
143 |
$date = $mycred->frequency['date'];
|
144 |
$today = date_i18n( 'Y-m-d' );
|
145 |
if ( $today == $date ) $save = true;
|
146 |
+
$lifespan = 12 * HOUR_IN_SECONDS;
|
147 |
}
|
148 |
|
149 |
// Save new transient
|
includes/mycred-remote.php
ADDED
@@ -0,0 +1,632 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
+
|
4 |
+
/**
|
5 |
+
* myCRED Remote API
|
6 |
+
* Allows execution of remote actions such as adding points, removing points,
|
7 |
+
* transfering points between two users and balance checks.
|
8 |
+
* @see http://mycred.me/classes/mycred_remote/
|
9 |
+
* @since 1.3
|
10 |
+
* @version 1.0
|
11 |
+
*/
|
12 |
+
if ( !class_exists( 'myCRED_Remote' ) ) {
|
13 |
+
class myCRED_Remote {
|
14 |
+
|
15 |
+
public $method;
|
16 |
+
public $uri;
|
17 |
+
public $request;
|
18 |
+
public $host;
|
19 |
+
public $format;
|
20 |
+
public $user;
|
21 |
+
public $recipient;
|
22 |
+
public $reply = 'PROCESSING';
|
23 |
+
|
24 |
+
public $core;
|
25 |
+
public $key;
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Construct
|
29 |
+
*/
|
30 |
+
function __construct( $key = NULL ) {
|
31 |
+
$this->handle_magic();
|
32 |
+
|
33 |
+
$this->core = mycred_get_settings();
|
34 |
+
$this->key = $key;
|
35 |
+
|
36 |
+
$this->method = $_SERVER['REQUEST_METHOD'];
|
37 |
+
$this->uri = explode( '/', $_SERVER['REQUEST_URI'] );
|
38 |
+
$this->format = '';
|
39 |
+
|
40 |
+
$this->parse_call();
|
41 |
+
$this->get_host_IP();
|
42 |
+
|
43 |
+
// Let others play
|
44 |
+
do_action_ref_array( 'mycred_remote', array( &$this ) );
|
45 |
+
}
|
46 |
+
|
47 |
+
/**
|
48 |
+
* Handle Magic Quotes
|
49 |
+
* @since 1.3
|
50 |
+
* @version 1.0
|
51 |
+
*/
|
52 |
+
public function handle_magic() {
|
53 |
+
if ( get_magic_quotes_gpc() ) {
|
54 |
+
$process = array( &$_GET, &$_POST, &$_COOKIE, &$_REQUEST );
|
55 |
+
while ( list( $key, $val ) = each( $process ) ) {
|
56 |
+
foreach ( $val as $k => $v ) {
|
57 |
+
unset( $process[ $key ][ $k ] );
|
58 |
+
if ( is_array( $v ) ) {
|
59 |
+
$process[ $key ][ stripslashes( $k ) ] = $v;
|
60 |
+
$process[] = &$process[ $key ][ stripslashes( $k ) ];
|
61 |
+
} else {
|
62 |
+
$process[ $key ][ stripslashes( $k ) ] = stripslashes( $v );
|
63 |
+
}
|
64 |
+
}
|
65 |
+
}
|
66 |
+
unset( $process );
|
67 |
+
}
|
68 |
+
|
69 |
+
// Let others play
|
70 |
+
do_action_ref_array( 'mycred_remote_magic', array( &$this ) );
|
71 |
+
}
|
72 |
+
|
73 |
+
/**
|
74 |
+
* Set Headers
|
75 |
+
* @since 1.3
|
76 |
+
* @version 1.0
|
77 |
+
*/
|
78 |
+
public function set_headers() {
|
79 |
+
header( 'Expires: ' . gmdate( 'D, d M Y H:i:s', mktime( 0, 0, 0, 1, 1, date( 'Y' ) ) - 604800 ) . ' GMT' );
|
80 |
+
header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' );
|
81 |
+
header( 'Cache-Control: no-store, no-cache, must-revalidate' );
|
82 |
+
header( 'Pragma: no-cache' );
|
83 |
+
|
84 |
+
header_remove( 'x-powered-by' );
|
85 |
+
header_remove( 'link' );
|
86 |
+
header_remove( 'set-cookie' );
|
87 |
+
|
88 |
+
// Let others play
|
89 |
+
do_action( 'mycred_remote_headers', $this );
|
90 |
+
}
|
91 |
+
|
92 |
+
/**
|
93 |
+
* Parse Call
|
94 |
+
* @since 1.3
|
95 |
+
* @version 1.0
|
96 |
+
*/
|
97 |
+
public function parse_call() {
|
98 |
+
$parameters = array();
|
99 |
+
|
100 |
+
if ( isset( $_SERVER['QUERY_STRING'] ) ) {
|
101 |
+
parse_str( $_SERVER['QUERY_STRING'], $parameters );
|
102 |
+
}
|
103 |
+
|
104 |
+
$body = file_get_contents( "php://input" );
|
105 |
+
$content_type = false;
|
106 |
+
if ( isset( $_SERVER['CONTENT_TYPE'] ) ) {
|
107 |
+
$content_type = $_SERVER['CONTENT_TYPE'];
|
108 |
+
}
|
109 |
+
|
110 |
+
switch ( $content_type ) {
|
111 |
+
case 'application/json':
|
112 |
+
$body_params = json_decode( $body );
|
113 |
+
if ( $body_params ) {
|
114 |
+
foreach ( $body_params as $param_name => $param_value ) {
|
115 |
+
$parameters[ $param_name ] = $param_value;
|
116 |
+
}
|
117 |
+
}
|
118 |
+
$this->format = 'json';
|
119 |
+
break;
|
120 |
+
case 'application/x-www-form-urlencoded; charset=UTF-8' :
|
121 |
+
case 'application/x-www-form-urlencoded':
|
122 |
+
parse_str( $body, $vars );
|
123 |
+
if ( ! empty( $vars ) ) {
|
124 |
+
foreach ( $vars as $field => $value ) {
|
125 |
+
$parameters[ $field ] = $value;
|
126 |
+
}
|
127 |
+
}
|
128 |
+
$this->format = 'html';
|
129 |
+
break;
|
130 |
+
default:
|
131 |
+
$this->format = 'other';
|
132 |
+
break;
|
133 |
+
}
|
134 |
+
|
135 |
+
$this->request = $parameters;
|
136 |
+
|
137 |
+
if ( isset( $this->request['format'] ) ) {
|
138 |
+
$this->format = $this->request['format'];
|
139 |
+
}
|
140 |
+
elseif ( empty( $this->format ) ) {
|
141 |
+
$this->format = 'unknown';
|
142 |
+
}
|
143 |
+
|
144 |
+
// Let others play
|
145 |
+
do_action_ref_array( 'mycred_remote_parse', array( &$this ) );
|
146 |
+
}
|
147 |
+
|
148 |
+
/**
|
149 |
+
* Get Host IP
|
150 |
+
* @since 1.3
|
151 |
+
* @version 1.0
|
152 |
+
*/
|
153 |
+
public function get_host_IP() {
|
154 |
+
if ( isset( $_SERVER['HTTP_CLIENT_IP'] ) )
|
155 |
+
$this->host = $_SERVER['HTTP_CLIENT_IP'];
|
156 |
+
elseif ( isset( $_SERVER['HTTP_X_FORWARDED_FOR'] ) )
|
157 |
+
$this->host = $_SERVER['HTTP_X_FORWARDED_FOR'];
|
158 |
+
elseif ( isset( $_SERVER['HTTP_X_FORWARDED'] ) )
|
159 |
+
$this->host = $_SERVER['HTTP_X_FORWARDED'];
|
160 |
+
elseif ( isset( $_SERVER['HTTP_FORWARDED_FOR'] ) )
|
161 |
+
$this->host = $_SERVER['HTTP_FORWARDED_FOR'];
|
162 |
+
elseif ( isset( $_SERVER['HTTP_FORWARDED'] ) )
|
163 |
+
$this->host = $_SERVER['HTTP_FORWARDED'];
|
164 |
+
elseif ( isset( $_SERVER['REMOTE_ADDR'] ) )
|
165 |
+
$this->host = $_SERVER['REMOTE_ADDR'];
|
166 |
+
else
|
167 |
+
$this->host = 'UNKNOWN';
|
168 |
+
|
169 |
+
do_action_ref_array( 'mycred_remote_host_IP', array( &$this ) );
|
170 |
+
}
|
171 |
+
|
172 |
+
/**
|
173 |
+
* Validate Call
|
174 |
+
* @since 1.3
|
175 |
+
* @version 1.0
|
176 |
+
*/
|
177 |
+
public function validate_call() {
|
178 |
+
// Let others play first
|
179 |
+
do_action_ref_array( 'mycred_remote_validate', array( &$this ) );
|
180 |
+
|
181 |
+
// Key has not been setup
|
182 |
+
if ( $this->key === NULL )
|
183 |
+
return 'ERROR: 99';
|
184 |
+
|
185 |
+
// Empty Request
|
186 |
+
if ( empty( $this->request ) )
|
187 |
+
return 'ERROR: 101';
|
188 |
+
|
189 |
+
// Missing action
|
190 |
+
if ( ! isset( $this->request['action'] ) || empty( $this->request['action'] ) )
|
191 |
+
return 'ERROR: 102';
|
192 |
+
|
193 |
+
// Missing account
|
194 |
+
elseif ( ! isset( $this->request['account'] ) || empty( $this->request['account'] ) )
|
195 |
+
return 'ERROR: 103';
|
196 |
+
|
197 |
+
// Missing token
|
198 |
+
elseif ( ! isset( $this->request['token'] ) || empty( $this->request['token'] ) )
|
199 |
+
return 'ERROR: 104';
|
200 |
+
|
201 |
+
// Missing Host
|
202 |
+
if ( ! isset( $this->request['host'] ) || empty( $this->request['host'] ) )
|
203 |
+
return 'ERROR: 105';
|
204 |
+
|
205 |
+
// Populate User and check if user exists
|
206 |
+
$this->user = get_user_by( 'email', $this->request['account'] );
|
207 |
+
if ( $this->user === false )
|
208 |
+
return 'ERROR: 201';
|
209 |
+
|
210 |
+
// Check for exclusion
|
211 |
+
if ( $this->core->exclude_user( $this->user->ID ) )
|
212 |
+
return 'ERROR: 202';
|
213 |
+
|
214 |
+
// Action specific validations
|
215 |
+
switch ( $this->request['action'] ) {
|
216 |
+
// Add points
|
217 |
+
case 'CREDIT' :
|
218 |
+
// Pay (deduct)
|
219 |
+
case 'DEBIT' :
|
220 |
+
|
221 |
+
// Reference is required
|
222 |
+
if ( ! isset( $this->request['ref'] ) || empty( $this->request['ref'] ) )
|
223 |
+
return 'ERROR: 401';
|
224 |
+
|
225 |
+
// Entry is required
|
226 |
+
if ( ! isset( $this->request['entry'] ) || empty( $this->request['entry'] ) )
|
227 |
+
return 'ERROR: 402';
|
228 |
+
|
229 |
+
// Amount is required
|
230 |
+
if ( ! isset( $this->request['amount'] ) || empty( $this->request['amount'] ) )
|
231 |
+
return 'ERROR: 403';
|
232 |
+
|
233 |
+
// Validate Token
|
234 |
+
// ( host + acount + amount + api_key )
|
235 |
+
$check = md5( $this->request['host'] . $this->request['action'] . $this->request['amount'] . $this->key );
|
236 |
+
if ( $this->request['token'] != $check )
|
237 |
+
return 'ERROR: 301';
|
238 |
+
|
239 |
+
break;
|
240 |
+
// Get balance
|
241 |
+
case 'GET' :
|
242 |
+
|
243 |
+
// Validate Token
|
244 |
+
// ( host + action + api_key )
|
245 |
+
$check = md5( $this->request['host'] . $this->request['action'] . $this->key );
|
246 |
+
if ( $this->request['token'] != $check )
|
247 |
+
return 'ERROR: 301';
|
248 |
+
|
249 |
+
break;
|
250 |
+
// Transfer
|
251 |
+
case 'PAY' :
|
252 |
+
|
253 |
+
// Reference is required
|
254 |
+
if ( ! isset( $this->request['ref'] ) || empty( $this->request['ref'] ) )
|
255 |
+
return 'ERROR: 501';
|
256 |
+
|
257 |
+
// Entry is required
|
258 |
+
if ( ! isset( $this->request['entry'] ) || empty( $this->request['entry'] ) )
|
259 |
+
return 'ERROR: 502';
|
260 |
+
|
261 |
+
// Amount is required
|
262 |
+
if ( ! isset( $this->request['amount'] ) || empty( $this->request['amount'] ) )
|
263 |
+
return 'ERROR: 503';
|
264 |
+
|
265 |
+
// Make sure the recipient is set
|
266 |
+
if ( ! isset( $this->request['to'] ) || empty( $this->request['to'] ) )
|
267 |
+
return 'ERROR: 504';
|
268 |
+
|
269 |
+
// Data is required
|
270 |
+
if ( ! isset( $this->request['data'] ) || empty( $this->request['data'] ) )
|
271 |
+
return 'ERROR: 505';
|
272 |
+
|
273 |
+
// Validate Token
|
274 |
+
// ( host + action + amount + from + to + api_key )
|
275 |
+
$check = md5( $this->request['host'] . $this->request['action'] . $this->request['amount'] . $this->request['account'] . $this->request['to'] . $this->key );
|
276 |
+
if ( $this->request['token'] != $check )
|
277 |
+
return 'ERROR: 301';
|
278 |
+
|
279 |
+
// Make sure recipient exists
|
280 |
+
$this->recipient = get_user_by( 'email', $this->request['to'] );
|
281 |
+
if ( $this->recipient === false )
|
282 |
+
return 'ERROR: 506';
|
283 |
+
|
284 |
+
// Can not pay yourself
|
285 |
+
if ( $this->recipient->ID == $this->user->ID )
|
286 |
+
return 'ERROR: 507';
|
287 |
+
|
288 |
+
// Check for exclusion
|
289 |
+
if ( $this->core->exclude_user( $this->recipient->ID ) )
|
290 |
+
return 'ERROR: 508';
|
291 |
+
|
292 |
+
break;
|
293 |
+
// Default
|
294 |
+
default :
|
295 |
+
// Unsupported action
|
296 |
+
return 'ERROR: 302';
|
297 |
+
break;
|
298 |
+
}
|
299 |
+
|
300 |
+
return true;
|
301 |
+
}
|
302 |
+
|
303 |
+
/**
|
304 |
+
* Process
|
305 |
+
* @since 1.3
|
306 |
+
* @version 1.0
|
307 |
+
*/
|
308 |
+
public function process() {
|
309 |
+
switch ( $this->request['action'] ) {
|
310 |
+
// Add points
|
311 |
+
case 'CREDIT' :
|
312 |
+
// Pay (deduct)
|
313 |
+
case 'DEBIT' :
|
314 |
+
|
315 |
+
$ref_id = $data = $type = '';
|
316 |
+
|
317 |
+
// Prep Reference ID
|
318 |
+
if ( isset( $this->request['ref_id'] ) && ! empty( $this->request['ref_id'] ) )
|
319 |
+
$ref_id = abs( $this->request['ref_id'] );
|
320 |
+
|
321 |
+
// Prep Data
|
322 |
+
if ( isset( $this->request['data'] ) && ! empty( $this->request['data'] ) )
|
323 |
+
$data = maybe_unserialize( $this->request['data'] );
|
324 |
+
|
325 |
+
// Prep Points Type
|
326 |
+
if ( isset( $this->request['type'] ) && ! empty( $this->request['type'] ) )
|
327 |
+
$type = sanitize_text_field( $this->request['type'] );
|
328 |
+
else
|
329 |
+
$type = $this->core->get_cred_id();
|
330 |
+
|
331 |
+
// Prep Amount
|
332 |
+
$amount = $this->core->format_number( $this->request['amount'] );
|
333 |
+
if ( $this->request['action'] == 'DEBIT' )
|
334 |
+
$amount = 0-$amount;
|
335 |
+
else
|
336 |
+
$amount = abs( $amount );
|
337 |
+
|
338 |
+
// Prevent Duplicate
|
339 |
+
if ( ! empty( $data ) || ! empty( $ref_id ) ) {
|
340 |
+
if ( $this->core->has_entry( $this->request['ref'], $ref_id, $this->user->ID, $data ) ) {
|
341 |
+
$this->reply = 'DUPLICATE';
|
342 |
+
return;
|
343 |
+
}
|
344 |
+
}
|
345 |
+
|
346 |
+
// Check that user has enough points if we are charging
|
347 |
+
if ( $this->request['action'] == 'DEBIT' ) {
|
348 |
+
$balance = $this->core->get_users_cred( $this->user->ID, $type );
|
349 |
+
$min_balance = apply_filters( 'mycred_transfer_acc_limit', 0 );
|
350 |
+
if ( $balance-$amount < $min_balance ) {
|
351 |
+
$this->reply = 'DECLINED';
|
352 |
+
return;
|
353 |
+
}
|
354 |
+
}
|
355 |
+
|
356 |
+
// Add creds
|
357 |
+
if ( $this->core->add_creds(
|
358 |
+
$this->request['ref'],
|
359 |
+
$this->user->ID,
|
360 |
+
$amount,
|
361 |
+
$this->request['entry'],
|
362 |
+
$ref_id,
|
363 |
+
$data,
|
364 |
+
$type
|
365 |
+
) === true ) {
|
366 |
+
$this->reply = 'COMPLETED';
|
367 |
+
|
368 |
+
// Let others play on success
|
369 |
+
do_action( 'mycred_remote_action_' . $this->request['action'], $this );
|
370 |
+
}
|
371 |
+
else {
|
372 |
+
$this->reply = 'FAILED';
|
373 |
+
}
|
374 |
+
|
375 |
+
break;
|
376 |
+
// Get balance
|
377 |
+
case 'GET' :
|
378 |
+
|
379 |
+
// Prep Type
|
380 |
+
if ( isset( $this->request['type'] ) && ! empty( $this->request['type'] ) )
|
381 |
+
$type = sanitize_text_field( $this->request['type'] );
|
382 |
+
else
|
383 |
+
$type = $this->core->get_cred_id();
|
384 |
+
|
385 |
+
// Get balance
|
386 |
+
$balance = $this->core->get_users_cred( $this->user->ID, $type );
|
387 |
+
$this->reply = $this->core->format_number( $balance );
|
388 |
+
|
389 |
+
// Let other splay
|
390 |
+
do_action( 'mycred_remote_action_GET', $this );
|
391 |
+
|
392 |
+
break;
|
393 |
+
// Transfer
|
394 |
+
case 'PAY' :
|
395 |
+
|
396 |
+
// Amount
|
397 |
+
$amount = $this->core->format_number( $this->request['amount'] );
|
398 |
+
|
399 |
+
// Cred Type
|
400 |
+
if ( isset( $this->request['type'] ) && ! empty( $this->request['type'] ) )
|
401 |
+
$type = sanitize_text_field( $this->request['type'] );
|
402 |
+
else
|
403 |
+
$type = $this->core->get_cred_id();
|
404 |
+
|
405 |
+
// Prevent Duplicate
|
406 |
+
if ( $this->core->has_entry( $this->request['ref'], $this->recipient->ID, $this->user->ID, $this->request['data'] ) ) {
|
407 |
+
$this->reply = 'DUPLICATE';
|
408 |
+
return;
|
409 |
+
}
|
410 |
+
|
411 |
+
$balance = $this->core->get_users_cred( $this->user->ID, $type );
|
412 |
+
// Check that user has enough points if we are charging
|
413 |
+
$min_balance = apply_filters( 'mycred_transfer_acc_limit', 0 );
|
414 |
+
if ( $balance-$amount < $min_balance ) {
|
415 |
+
$this->reply = 'DECLINED';
|
416 |
+
return;
|
417 |
+
}
|
418 |
+
|
419 |
+
// Deduct points first from sender
|
420 |
+
if ( $this->core->add_creds(
|
421 |
+
$this->request['ref'],
|
422 |
+
$this->user->ID,
|
423 |
+
0-$amount,
|
424 |
+
$this->request['entry'],
|
425 |
+
$this->recipient->ID,
|
426 |
+
$this->request['data'],
|
427 |
+
$type
|
428 |
+
) === true ) {
|
429 |
+
// Once we have successfully deducted, pay the recipient
|
430 |
+
if ( $this->core->add_creds(
|
431 |
+
$this->request['ref'],
|
432 |
+
$this->recipient->ID,
|
433 |
+
$amount,
|
434 |
+
$this->request['entry'],
|
435 |
+
$this->user->ID,
|
436 |
+
$this->request['data'],
|
437 |
+
$type
|
438 |
+
) === true ) {
|
439 |
+
$this->reply = 'COMPLETED';
|
440 |
+
|
441 |
+
// Let others play
|
442 |
+
do_action( 'mycred_remote_action_PAY', $this );
|
443 |
+
}
|
444 |
+
else {
|
445 |
+
$this->reply = 'FAILED';
|
446 |
+
}
|
447 |
+
}
|
448 |
+
else {
|
449 |
+
$this->reply = 'FAILED';
|
450 |
+
}
|
451 |
+
|
452 |
+
break;
|
453 |
+
// Default
|
454 |
+
default :
|
455 |
+
|
456 |
+
// Let others play
|
457 |
+
do_action_ref_array( 'mycred_remote_process', array( &$this ) );
|
458 |
+
do_action_ref_array( 'mycred_remote_process_' . $this->request['action'], array( &$this ) );
|
459 |
+
|
460 |
+
// If reply is still empty we bail
|
461 |
+
if ( empty( $this->reply ) )
|
462 |
+
$this->reply = 'UNKNOWN';
|
463 |
+
|
464 |
+
break;
|
465 |
+
}
|
466 |
+
}
|
467 |
+
}
|
468 |
+
}
|
469 |
+
|
470 |
+
/**
|
471 |
+
* Remote Init
|
472 |
+
* @since 1.3
|
473 |
+
* @version 1.0
|
474 |
+
*/
|
475 |
+
add_action( 'init', 'mycred_remote_init' );
|
476 |
+
if ( !function_exists( 'mycred_remote_init' ) ) {
|
477 |
+
function mycred_remote_init()
|
478 |
+
{
|
479 |
+
if ( is_admin() && defined( 'DOING_AJAX' ) && DOING_AJAX ) return;
|
480 |
+
|
481 |
+
$prefs = mycred_get_remote();
|
482 |
+
if ( ! $prefs['enabled'] ) return;
|
483 |
+
|
484 |
+
$uri = explode( '/', $_SERVER['REQUEST_URI'] );
|
485 |
+
if ( isset( $uri[1] ) && $uri[1] == $prefs['uri'] ) {
|
486 |
+
// Load
|
487 |
+
$remote = new myCRED_Remote( $prefs['key'] );
|
488 |
+
$remote->set_headers();
|
489 |
+
|
490 |
+
// Validate Call
|
491 |
+
$valid = $remote->validate_call();
|
492 |
+
|
493 |
+
// Request passed validation
|
494 |
+
if ( $valid === true ) {
|
495 |
+
// Run request
|
496 |
+
$remote->process();
|
497 |
+
die( $remote->reply );
|
498 |
+
}
|
499 |
+
|
500 |
+
// Request failed validation
|
501 |
+
else {
|
502 |
+
$reply = ( ! $prefs['debug'] ) ? '' : $valid;
|
503 |
+
die( $reply );
|
504 |
+
}
|
505 |
+
}
|
506 |
+
}
|
507 |
+
}
|
508 |
+
|
509 |
+
/**
|
510 |
+
* Remote Enable / Disable Settings
|
511 |
+
* @since 1.3
|
512 |
+
* @version 1.0
|
513 |
+
*/
|
514 |
+
add_action( 'mycred_management_prefs', 'mycred_remote_activate_row' );
|
515 |
+
function mycred_remote_activate_row( $mycred_general )
|
516 |
+
{
|
517 |
+
$settings = mycred_get_remote();
|
518 |
+
|
519 |
+
$block = '';
|
520 |
+
$disabled_message = '';
|
521 |
+
if ( ! get_option( 'permalink_structure' ) ) {
|
522 |
+
$block = ' disabled="disabled"';
|
523 |
+
$disabled_message = __( 'This feature requires WordPress Permalinks to be setup and enabled!', 'mycred' );
|
524 |
+
}
|
525 |
+
elseif ( ! $settings['enabled'] )
|
526 |
+
$disabled_message = __( 'Click Update Settings to load the Remote API settings.', 'mycred' ); ?>
|
527 |
+
|
528 |
+
<label class="subheader" for=""><?php _e( 'Allow Remote Access', 'mycred' ); ?></label>
|
529 |
+
<ol id="myCRED-actions-cred">
|
530 |
+
<li>
|
531 |
+
<input type="checkbox" name="mycred_pref_core[allow_remote]" id="myCRED-General-remote"<?php if ( $settings['enabled'] ) echo ' checked="checked"'; echo $block; ?> value="1" /> <?php if ( ! empty( $disabled_message ) ) { ?><span class="description"><?php echo $disabled_message; ?></span><?php } ?></li>
|
532 |
+
</ol>
|
533 |
+
<?php
|
534 |
+
}
|
535 |
+
|
536 |
+
/**
|
537 |
+
* Remote API Settings Page
|
538 |
+
* @since 1.3
|
539 |
+
* @version 1.0
|
540 |
+
*/
|
541 |
+
add_action( 'mycred_after_management_prefs', 'mycred_remote_settings_page' );
|
542 |
+
function mycred_remote_settings_page( $mycred_general )
|
543 |
+
{
|
544 |
+
$settings = mycred_get_remote();
|
545 |
+
if ( ! $settings['enabled'] ) return;
|
546 |
+
|
547 |
+
$key_length = strlen( $settings['key'] ); ?>
|
548 |
+
|
549 |
+
<h4><div class="icon icon-<?php if ( empty( $settings['key'] ) ) echo 'inactive'; else echo 'active'; ?> remote"></div><label><?php _e( 'Remote Access', 'mycred' ); ?></label></h4>
|
550 |
+
<div class="body" style="display:none;">
|
551 |
+
<label class="subheader"><?php _e( 'API Key', 'mycred' ); ?></label>
|
552 |
+
<ol id="myCRED-remote-api-key" class="inline">
|
553 |
+
<li>
|
554 |
+
<label><?php _e( 'Key', 'mycred' ); ?></label>
|
555 |
+
<div class="h2"><input type="text" name="mycred_pref_core[remote][key]" id="myCRED-remote-key" value="<?php echo $settings['key']; ?>" style="width:90%;" placeholder="<?php _e( 'min. 12 characters', 'mycred' ); ?>" /></div>
|
556 |
+
<span class="description"><?php _e( 'Required for this feature to work!<br />Minimum 12 characters.', 'mycred' ); ?></span>
|
557 |
+
</li>
|
558 |
+
<li>
|
559 |
+
<label><?php _e( 'Key Length', 'mycred' ); ?></label>
|
560 |
+
<div class="h2" style="line-height: 30px; color:<?php if ( $key_length == 0 ) echo 'gray'; elseif ( $key_length >= 12 ) echo 'green'; ?>">(<span id="mycred-length-counter"><?php echo $key_length; ?></span>)</span></div>
|
561 |
+
</li>
|
562 |
+
<li>
|
563 |
+
<label> </label><br />
|
564 |
+
<input type="button" id="mycred-generate-api-key" value="<?php _e( 'Generate New Key', 'mycred' ); ?>" class="button button-large button-primary" />
|
565 |
+
</li>
|
566 |
+
<li class="block"><p><strong><?php _e( 'Warning!', 'mycred' ); ?></strong> <?php echo $mycred_general->core->template_tags_general( __( 'Keep this key safe! Those you share this key with will be able to remotely deduct / add / transfer %plural%!', 'mycred' ) ); ?></p></li>
|
567 |
+
</ol>
|
568 |
+
<label class="subheader"><?php _e( 'Incoming URI', 'mycred' ); ?></label>
|
569 |
+
<ol id="myCRED-remote-api-uri">
|
570 |
+
<li>
|
571 |
+
<div class="h2"><?php echo site_url() . '/'; ?> <input type="text" name="mycred_pref_core[remote][uri]" id="myCRED-remote-uri" value="<?php echo $settings['uri']; ?>" /> /</div>
|
572 |
+
<span class="description"><?php _e( 'The incoming call address. Remote calls made to any other URL will be ignored.', 'mycred' ); ?></span>
|
573 |
+
</li>
|
574 |
+
</ol>
|
575 |
+
<label class="subheader" for=""><?php _e( 'Debug Mode', 'mycred' ); ?></label>
|
576 |
+
<ol id="myCRED-remote-api-debug-mode">
|
577 |
+
<li>
|
578 |
+
<input type="checkbox" name="mycred_pref_core[remote][debug]" id="myCRED-remote-debug-mode"<?php if ( $settings['debug'] ) echo ' checked="checked"'; ?> value="1" /> <span class="description"><?php _e( 'Remember to disable when not used to prevent mischievous calls from learning about your setup!', 'mycred' ); ?></span></li>
|
579 |
+
</ol>
|
580 |
+
<?php do_action( 'mycred_after_remote_prefs', $mycred_general ); ?>
|
581 |
+
|
582 |
+
</div>
|
583 |
+
<?php
|
584 |
+
}
|
585 |
+
|
586 |
+
/**
|
587 |
+
* Remote API Settings Save
|
588 |
+
* @since 1.3
|
589 |
+
* @version 1.0
|
590 |
+
*/
|
591 |
+
add_filter( 'mycred_save_core_prefs', 'mycred_remote_save_settings', 10, 3 );
|
592 |
+
function mycred_remote_save_settings( $new_data, $post, $mycred_general )
|
593 |
+
{
|
594 |
+
$current = mycred_get_remote();
|
595 |
+
$new_remote = array();
|
596 |
+
|
597 |
+
// Enabled
|
598 |
+
if ( isset( $post['allow_remote'] ) ) {
|
599 |
+
|
600 |
+
$new_remote['enabled'] = 1;
|
601 |
+
|
602 |
+
if ( isset( $post['remote']['key'] ) )
|
603 |
+
$new_remote['key'] = sanitize_text_field( $post['remote']['key'] );
|
604 |
+
else
|
605 |
+
$new_remote['key'] = $current['key'];
|
606 |
+
|
607 |
+
if ( isset( $post['remote']['uri'] ) )
|
608 |
+
$new_remote['uri'] = sanitize_text_field( $post['remote']['uri'] );
|
609 |
+
else
|
610 |
+
$new_remote['uri'] = $current['uri'];
|
611 |
+
|
612 |
+
if ( isset( $post['remote']['debug'] ) )
|
613 |
+
$new_remote['debug'] = 1;
|
614 |
+
else
|
615 |
+
$new_remote['debug'] = 0;
|
616 |
+
|
617 |
+
// Let others play
|
618 |
+
$new_remote = apply_filters( 'mycred_remote_save_prefs', $new_remote, $current, $post, $mycred_general );
|
619 |
+
}
|
620 |
+
// Disabled
|
621 |
+
else {
|
622 |
+
$new_remote['enabled'] = 0;
|
623 |
+
$new_remote['key'] = $current['key'];
|
624 |
+
$new_remote['uri'] = $current['uri'];
|
625 |
+
$new_remote['debug'] = $current['debug'];
|
626 |
+
}
|
627 |
+
|
628 |
+
update_option( 'mycred_pref_remote', $new_remote );
|
629 |
+
|
630 |
+
return $new_data;
|
631 |
+
}
|
632 |
+
?>
|
includes/mycred-shortcodes.php
CHANGED
@@ -4,8 +4,9 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
4 |
* myCRED Shortcode: my_balance
|
5 |
* Returns the current users balance.
|
6 |
* @see http://mycred.me/shortcodes/mycred_my_balance/
|
|
|
7 |
* @since 1.0.9
|
8 |
-
* @version 1.
|
9 |
*/
|
10 |
if ( !function_exists( 'mycred_render_shortcode_my_balance' ) ) {
|
11 |
function mycred_render_shortcode_my_balance( $atts, $content = NULL )
|
@@ -15,40 +16,118 @@ if ( !function_exists( 'mycred_render_shortcode_my_balance' ) ) {
|
|
15 |
'title' => '',
|
16 |
'title_el' => 'h1',
|
17 |
'balance_el' => 'div',
|
|
|
18 |
'type' => ''
|
19 |
), $atts ) );
|
20 |
|
21 |
-
|
22 |
-
if ( !is_user_logged_in() ) {
|
23 |
-
if ( $login != NULL )
|
24 |
-
return '<div class="mycred-not-logged-in">' . $login . '</div>';
|
25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26 |
return;
|
27 |
}
|
28 |
|
29 |
$user_id = get_current_user_id();
|
30 |
$mycred = mycred_get_settings();
|
|
|
31 |
if ( $mycred->exclude_user( $user_id ) ) return;
|
32 |
|
33 |
-
if ( !empty( $type ) )
|
34 |
$mycred->cred_id = $type;
|
35 |
|
36 |
-
|
|
|
37 |
|
38 |
// Title
|
39 |
-
if ( !empty( $title ) ) {
|
40 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
}
|
42 |
|
43 |
// Balance
|
|
|
|
|
|
|
44 |
$balance = $mycred->get_users_cred( $user_id );
|
45 |
-
$output .=
|
46 |
-
|
|
|
|
|
|
|
|
|
|
|
47 |
|
48 |
return $output;
|
49 |
}
|
50 |
}
|
51 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
/**
|
53 |
* myCRED Shortcode: mycred_leaderboard
|
54 |
* @since 0.1
|
@@ -291,6 +370,98 @@ if ( !function_exists( 'mycred_render_shortcode_send' ) ) {
|
|
291 |
}
|
292 |
}
|
293 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
294 |
/**
|
295 |
* myCRED Shortcode: mycred_video
|
296 |
* This shortcode allows points to be given to the current user
|
4 |
* myCRED Shortcode: my_balance
|
5 |
* Returns the current users balance.
|
6 |
* @see http://mycred.me/shortcodes/mycred_my_balance/
|
7 |
+
* @contributor Ian Tasker
|
8 |
* @since 1.0.9
|
9 |
+
* @version 1.1
|
10 |
*/
|
11 |
if ( !function_exists( 'mycred_render_shortcode_my_balance' ) ) {
|
12 |
function mycred_render_shortcode_my_balance( $atts, $content = NULL )
|
16 |
'title' => '',
|
17 |
'title_el' => 'h1',
|
18 |
'balance_el' => 'div',
|
19 |
+
'wrapper' => 1,
|
20 |
'type' => ''
|
21 |
), $atts ) );
|
22 |
|
23 |
+
$output = '';
|
|
|
|
|
|
|
24 |
|
25 |
+
// Not logged in
|
26 |
+
if ( ! is_user_logged_in() ) {
|
27 |
+
if ( $login !== NULL ) {
|
28 |
+
if ( $wrapper )
|
29 |
+
$output .= '<div class="mycred-not-logged-in">';
|
30 |
+
|
31 |
+
$output .= $login;
|
32 |
+
|
33 |
+
if ( $wrapper )
|
34 |
+
$output .= '</div>';
|
35 |
+
|
36 |
+
return $output;
|
37 |
+
}
|
38 |
return;
|
39 |
}
|
40 |
|
41 |
$user_id = get_current_user_id();
|
42 |
$mycred = mycred_get_settings();
|
43 |
+
// Check for exclusion
|
44 |
if ( $mycred->exclude_user( $user_id ) ) return;
|
45 |
|
46 |
+
if ( ! empty( $type ) )
|
47 |
$mycred->cred_id = $type;
|
48 |
|
49 |
+
if ( $wrapper )
|
50 |
+
$output .= '<div class="mycred-my-balance-wrapper">';
|
51 |
|
52 |
// Title
|
53 |
+
if ( ! empty( $title ) ) {
|
54 |
+
if ( ! empty( $title_el ) )
|
55 |
+
$output .= '<' . $title_el . '>';
|
56 |
+
|
57 |
+
$output .= $title;
|
58 |
+
|
59 |
+
if ( ! empty( $title_el ) )
|
60 |
+
$output .= '</' . $title_el . '>';
|
61 |
}
|
62 |
|
63 |
// Balance
|
64 |
+
if ( ! empty( $balance_el ) )
|
65 |
+
$output .= '<' . $balance_el . '>';
|
66 |
+
|
67 |
$balance = $mycred->get_users_cred( $user_id );
|
68 |
+
$output .= $mycred->format_creds( $balance );
|
69 |
+
|
70 |
+
if ( ! empty( $balance_el ) )
|
71 |
+
$output .= '</' . $balance_el . '>';
|
72 |
+
|
73 |
+
if ( $wrapper )
|
74 |
+
$output .= '</div>';
|
75 |
|
76 |
return $output;
|
77 |
}
|
78 |
}
|
79 |
|
80 |
+
/**
|
81 |
+
* myCRED Shortcode: mycred_history
|
82 |
+
* Returns the points history.
|
83 |
+
* @see http://mycred.me/shortcodes/mycred_history/
|
84 |
+
* @since 1.0.9
|
85 |
+
* @version 1.0
|
86 |
+
*/
|
87 |
+
if ( !function_exists( 'mycred_render_shortcode_history' ) ) {
|
88 |
+
function mycred_render_shortcode_history( $atts ) {
|
89 |
+
extract( shortcode_atts( array(
|
90 |
+
'user_id' => NULL,
|
91 |
+
'number' => NULL,
|
92 |
+
'time' => NULL,
|
93 |
+
'ref' => NULL,
|
94 |
+
'order' => NULL,
|
95 |
+
'show_user' => false,
|
96 |
+
'login' => ''
|
97 |
+
), $atts ) );
|
98 |
+
|
99 |
+
// If we are not logged in
|
100 |
+
if ( !is_user_logged_in() && !empty( $login ) ) return '<p class="mycred-history login">' . $login . '</p>';
|
101 |
+
|
102 |
+
if ( $user_id === NULL )
|
103 |
+
$user_id = get_current_user_id();
|
104 |
+
|
105 |
+
$args = array();
|
106 |
+
$args['user_id'] = $user_id;
|
107 |
+
|
108 |
+
if ( $number !== NULL )
|
109 |
+
$args['number'] = $number;
|
110 |
+
|
111 |
+
if ( $time !== NULL )
|
112 |
+
$args['time'] = $time;
|
113 |
+
|
114 |
+
if ( $ref !== NULL )
|
115 |
+
$args['ref'] = $ref;
|
116 |
+
|
117 |
+
if ( $order !== NULL )
|
118 |
+
$args['order'] = $order;
|
119 |
+
|
120 |
+
$log = new myCRED_Query_Log( $args );
|
121 |
+
|
122 |
+
if ( $show_user !== true )
|
123 |
+
unset( $log->headers['column-username'] );
|
124 |
+
|
125 |
+
$result = $log->get_display();
|
126 |
+
$log->reset_query();
|
127 |
+
return $result;
|
128 |
+
}
|
129 |
+
}
|
130 |
+
|
131 |
/**
|
132 |
* myCRED Shortcode: mycred_leaderboard
|
133 |
* @since 0.1
|
370 |
}
|
371 |
}
|
372 |
|
373 |
+
/**
|
374 |
+
* Load myCRED Send Points Footer
|
375 |
+
* @since 0.1
|
376 |
+
* @version 1.2
|
377 |
+
*/
|
378 |
+
if ( !function_exists( 'mycred_send_shortcode_footer' ) ) {
|
379 |
+
add_action( 'wp_footer', 'mycred_send_shortcode_footer' );
|
380 |
+
function mycred_send_shortcode_footer() {
|
381 |
+
global $mycred_sending_points;
|
382 |
+
|
383 |
+
if ( $mycred_sending_points === true ) {
|
384 |
+
$mycred = mycred_get_settings();
|
385 |
+
$base = array(
|
386 |
+
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
387 |
+
'token' => wp_create_nonce( 'mycred-send-points' )
|
388 |
+
);
|
389 |
+
|
390 |
+
$language = apply_filters( 'mycred_send_language', array(
|
391 |
+
'working' => __( 'Processing...', 'mycred' ),
|
392 |
+
'done' => __( 'Sent', 'mycred' ),
|
393 |
+
'error' => __( 'Error - Try Again', 'mycred' )
|
394 |
+
) );
|
395 |
+
wp_localize_script(
|
396 |
+
'mycred-send-points',
|
397 |
+
'myCREDsend',
|
398 |
+
array_merge_recursive( $base, $language )
|
399 |
+
);
|
400 |
+
wp_enqueue_script( 'mycred-send-points' );
|
401 |
+
}
|
402 |
+
}
|
403 |
+
}
|
404 |
+
|
405 |
+
/**
|
406 |
+
* myCRED Send Points Ajax
|
407 |
+
* @since 0.1
|
408 |
+
* @version 1.2
|
409 |
+
*/
|
410 |
+
if ( !function_exists( 'mycred_shortcode_send_points_ajax' ) ) {
|
411 |
+
add_action( 'wp_ajax_mycred-send-points', 'mycred_shortcode_send_points_ajax' );
|
412 |
+
function mycred_shortcode_send_points_ajax() {
|
413 |
+
// We must be logged in
|
414 |
+
if ( !is_user_logged_in() ) die();
|
415 |
+
|
416 |
+
// Security
|
417 |
+
check_ajax_referer( 'mycred-send-points', 'token' );
|
418 |
+
|
419 |
+
$mycred = mycred_get_settings();
|
420 |
+
$user_id = get_current_user_id();
|
421 |
+
|
422 |
+
$account_limit = (int) apply_filters( 'mycred_transfer_acc_limit', 0 );
|
423 |
+
$balance = $mycred->get_users_cred( $user_id );
|
424 |
+
$amount = $mycred->number( $_POST['amount'] );
|
425 |
+
$new_balance = $balance-$amount;
|
426 |
+
|
427 |
+
// Insufficient Funds
|
428 |
+
if ( $new_balance < $account_limit )
|
429 |
+
die();
|
430 |
+
// After this transfer our account will reach zero
|
431 |
+
elseif ( $new_balance == $account_limit )
|
432 |
+
$reply = 'zero';
|
433 |
+
// Check if this is the last time we can do these kinds of amounts
|
434 |
+
elseif ( $new_balance-$amount < $account_limit )
|
435 |
+
$reply = 'minus';
|
436 |
+
// Else everything is fine
|
437 |
+
else
|
438 |
+
$reply = 'done';
|
439 |
+
|
440 |
+
// First deduct points
|
441 |
+
$mycred->add_creds(
|
442 |
+
trim( $_POST['reference'] ),
|
443 |
+
$user_id,
|
444 |
+
0-$amount,
|
445 |
+
trim( $_POST['log'] ),
|
446 |
+
$_POST['recipient'],
|
447 |
+
array( 'ref_type' => 'user' )
|
448 |
+
);
|
449 |
+
|
450 |
+
// Then add to recipient
|
451 |
+
$mycred->add_creds(
|
452 |
+
trim( $_POST['reference'] ),
|
453 |
+
$_POST['recipient'],
|
454 |
+
$amount,
|
455 |
+
trim( $_POST['log'] ),
|
456 |
+
$user_id,
|
457 |
+
array( 'ref_type' => 'user' )
|
458 |
+
);
|
459 |
+
|
460 |
+
// Share the good news
|
461 |
+
die( json_encode( $reply ) );
|
462 |
+
}
|
463 |
+
}
|
464 |
+
|
465 |
/**
|
466 |
* myCRED Shortcode: mycred_video
|
467 |
* This shortcode allows points to be given to the current user
|
includes/mycred-widgets.php
CHANGED
@@ -114,6 +114,8 @@ if ( !class_exists( 'myCRED_Widget_Balance' ) ) {
|
|
114 |
}
|
115 |
echo '</ol>';
|
116 |
}
|
|
|
|
|
117 |
echo '</div>';
|
118 |
}
|
119 |
|
114 |
}
|
115 |
echo '</ol>';
|
116 |
}
|
117 |
+
$log->reset_query();
|
118 |
+
|
119 |
echo '</div>';
|
120 |
}
|
121 |
|
lang/mycred-en_US.mo
CHANGED
Binary file
|
lang/mycred.pot
CHANGED
@@ -4,8 +4,8 @@ msgid ""
|
|
4 |
msgstr ""
|
5 |
"Project-Id-Version: myCRED\n"
|
6 |
"Report-Msgid-Bugs-To: http://mycred.me\n"
|
7 |
-
"POT-Creation-Date: 2013-
|
8 |
-
"PO-Revision-Date: 2013-
|
9 |
"Last-Translator: Gabriel Sebastian Merovingi <support@mycred.me>\n"
|
10 |
"Language-Team: LANGUAGE <support@mycred.me>\n"
|
11 |
"MIME-Version: 1.0\n"
|
@@ -14,146 +14,156 @@ msgstr ""
|
|
14 |
"X-Generator: Poedit 1.5.7\n"
|
15 |
"X-Poedit-Basepath: .\n"
|
16 |
"X-Poedit-KeywordsList: _n;_e;__\n"
|
17 |
-
"X-Poedit-SearchPath-0: /Users/gabriel/Repositories/mycred/
|
18 |
"X-Poedit-SearchPath-1: .\n"
|
19 |
|
20 |
-
#: /Users/gabriel/Repositories/mycred/
|
21 |
-
|
22 |
-
msgid "Cheatin’ huh?"
|
23 |
msgstr ""
|
24 |
|
25 |
-
#: /Users/gabriel/Repositories/mycred/
|
26 |
-
#: /Users/gabriel/Repositories/mycred/
|
27 |
-
#: /Users/gabriel/Repositories/mycred/
|
28 |
-
#: /Users/gabriel/Repositories/mycred/
|
29 |
-
|
|
|
|
|
30 |
msgstr ""
|
31 |
|
32 |
-
#: /Users/gabriel/Repositories/mycred/
|
33 |
-
msgid "
|
|
|
|
|
34 |
msgstr ""
|
35 |
|
36 |
-
#: /Users/gabriel/Repositories/mycred/
|
37 |
-
msgid "
|
38 |
msgstr ""
|
39 |
|
40 |
-
#: /Users/gabriel/Repositories/mycred/
|
41 |
-
msgid "
|
42 |
msgstr ""
|
43 |
|
44 |
-
#: /Users/gabriel/Repositories/mycred/
|
45 |
-
|
46 |
-
|
47 |
-
"for further details."
|
48 |
msgstr ""
|
49 |
|
50 |
-
#: /Users/gabriel/Repositories/mycred/
|
51 |
-
msgid "
|
52 |
msgstr ""
|
53 |
|
54 |
-
#: /Users/gabriel/Repositories/mycred/
|
55 |
#, php-format
|
56 |
msgid "Edit Users %s balance"
|
57 |
msgstr ""
|
58 |
|
59 |
-
#: /Users/gabriel/Repositories/mycred/
|
60 |
-
|
|
|
|
|
|
|
|
|
61 |
msgstr ""
|
62 |
|
63 |
-
#: /Users/gabriel/Repositories/mycred/
|
64 |
-
|
65 |
-
#: /Users/gabriel/Repositories/mycred/trunk/addons/ranks/myCRED-addon-ranks.php:827
|
66 |
-
#: /Users/gabriel/Repositories/mycred/trunk/addons/sell-content/myCRED-addon-sell-content.php:276
|
67 |
-
#: /Users/gabriel/Repositories/mycred/trunk/addons/transfer/myCRED-addon-transfer.php:136
|
68 |
-
msgid "Processing..."
|
69 |
msgstr ""
|
70 |
|
71 |
-
#: /Users/gabriel/Repositories/mycred/
|
72 |
-
msgid "
|
73 |
msgstr ""
|
74 |
|
75 |
-
#: /Users/gabriel/Repositories/mycred/
|
76 |
-
msgid "
|
77 |
msgstr ""
|
78 |
|
79 |
-
#: /Users/gabriel/Repositories/mycred/
|
80 |
msgid "function myCRED_Hook::run() must be over-ridden in a sub-class."
|
81 |
msgstr ""
|
82 |
|
83 |
-
#: /Users/gabriel/Repositories/mycred/
|
84 |
msgid "This Hook has no settings"
|
85 |
msgstr ""
|
86 |
|
87 |
-
#: /Users/gabriel/Repositories/mycred/
|
88 |
-
#: /Users/gabriel/Repositories/mycred/
|
89 |
msgid "No limit"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#: /Users/gabriel/Repositories/mycred/
|
93 |
msgid "Once every 24 hours"
|
94 |
msgstr ""
|
95 |
|
96 |
-
#: /Users/gabriel/Repositories/mycred/
|
97 |
msgid "Once every 12 hours"
|
98 |
msgstr ""
|
99 |
|
100 |
-
#: /Users/gabriel/Repositories/mycred/
|
101 |
msgid "Once every 7 days"
|
102 |
msgstr ""
|
103 |
|
104 |
-
#: /Users/gabriel/Repositories/mycred/
|
105 |
msgid "Once per day (reset at midnight)"
|
106 |
msgstr ""
|
107 |
|
108 |
-
#: /Users/gabriel/Repositories/mycred/
|
109 |
-
#: /Users/gabriel/Repositories/mycred/
|
110 |
-
#: /Users/gabriel/Repositories/mycred/
|
111 |
-
#: /Users/gabriel/Repositories/mycred/
|
112 |
-
#: /Users/gabriel/Repositories/mycred/
|
113 |
-
#: /Users/gabriel/Repositories/mycred/
|
114 |
-
#: /Users/gabriel/Repositories/mycred/
|
115 |
-
#: /Users/gabriel/Repositories/mycred/
|
116 |
-
#: /Users/gabriel/Repositories/mycred/
|
117 |
-
#: /Users/gabriel/Repositories/mycred/
|
118 |
msgid "Select"
|
119 |
msgstr ""
|
120 |
|
121 |
-
#: /Users/gabriel/Repositories/mycred/
|
122 |
msgid "myCRED_Module() Error. A Module ID is required!"
|
123 |
msgstr ""
|
124 |
|
125 |
-
#: /Users/gabriel/Repositories/mycred/
|
126 |
-
#: /Users/gabriel/Repositories/mycred/
|
127 |
msgid "Surprise"
|
128 |
msgstr ""
|
129 |
|
130 |
-
#: /Users/gabriel/Repositories/mycred/
|
131 |
-
|
|
|
|
|
|
|
|
|
132 |
msgstr ""
|
133 |
|
134 |
-
#: /Users/gabriel/Repositories/mycred/
|
135 |
-
|
|
|
|
|
|
|
|
|
136 |
msgstr ""
|
137 |
|
138 |
-
#: /Users/gabriel/Repositories/mycred/
|
139 |
-
#: /Users/gabriel/Repositories/mycred/
|
140 |
-
#: /Users/gabriel/Repositories/mycred/
|
141 |
-
#: /Users/gabriel/Repositories/mycred/
|
142 |
-
#: /Users/gabriel/Repositories/mycred/
|
143 |
msgid "Banking"
|
144 |
msgstr ""
|
145 |
|
146 |
-
#: /Users/gabriel/Repositories/mycred/
|
147 |
msgid ""
|
148 |
"This add-on allows you to offer interest on your users points balances or "
|
149 |
"setup recurring payouts."
|
150 |
msgstr ""
|
151 |
|
152 |
-
#: /Users/gabriel/Repositories/mycred/
|
153 |
msgid "Compound Interest"
|
154 |
msgstr ""
|
155 |
|
156 |
-
#: /Users/gabriel/Repositories/mycred/
|
157 |
msgid ""
|
158 |
"Apply an interest rate on your users %_plural% balances. Interest rate is "
|
159 |
"annual and is compounded daily as long as this service is enabled. Positive "
|
@@ -161,189 +171,205 @@ msgid ""
|
|
161 |
"rate will to users loosing %_plural%."
|
162 |
msgstr ""
|
163 |
|
164 |
-
#: /Users/gabriel/Repositories/mycred/
|
165 |
msgid "Recurring Payouts"
|
166 |
msgstr ""
|
167 |
|
168 |
-
#: /Users/gabriel/Repositories/mycred/
|
169 |
msgid ""
|
170 |
"Give your users %_plural% on a regular basis with the option to set the "
|
171 |
"number of times you want this payout to run (cycles)."
|
172 |
msgstr ""
|
173 |
|
174 |
-
#: /Users/gabriel/Repositories/mycred/
|
175 |
-
#: /Users/gabriel/Repositories/mycred/
|
176 |
-
#: /Users/gabriel/Repositories/mycred/
|
177 |
-
#: /Users/gabriel/Repositories/mycred/
|
178 |
-
#: /Users/gabriel/Repositories/mycred/
|
179 |
-
#: /Users/gabriel/Repositories/mycred/
|
180 |
-
#: /Users/gabriel/Repositories/mycred/
|
181 |
-
#: /Users/gabriel/Repositories/mycred/
|
182 |
msgid "Access Denied"
|
183 |
msgstr ""
|
184 |
|
185 |
-
#: /Users/gabriel/Repositories/mycred/
|
186 |
-
#: /Users/gabriel/Repositories/mycred/
|
187 |
-
#: /Users/gabriel/Repositories/mycred/
|
188 |
-
#: /Users/gabriel/Repositories/mycred/
|
189 |
msgid "Settings Updated"
|
190 |
msgstr ""
|
191 |
|
192 |
-
#: /Users/gabriel/Repositories/mycred/
|
193 |
msgid ""
|
194 |
"This add-on allows you to setup transaction fees for %_plural% transfers, "
|
195 |
"purchases or payments using the Gateway add-on, along with offering interest "
|
196 |
"on %_plural% balances."
|
197 |
msgstr ""
|
198 |
|
199 |
-
#: /Users/gabriel/Repositories/mycred/
|
200 |
msgid "WP-Cron deactivation detected!"
|
201 |
msgstr ""
|
202 |
|
203 |
-
#: /Users/gabriel/Repositories/mycred/
|
204 |
msgid "Warning! This add-on requires WP - Cron to work."
|
205 |
msgstr ""
|
206 |
|
207 |
-
#: /Users/gabriel/Repositories/mycred/
|
208 |
-
#: /Users/gabriel/Repositories/mycred/
|
209 |
-
#: /Users/gabriel/Repositories/mycred/
|
210 |
msgid "Enable"
|
211 |
msgstr ""
|
212 |
|
213 |
-
#: /Users/gabriel/Repositories/mycred/
|
214 |
-
#: /Users/gabriel/Repositories/mycred/
|
215 |
msgid "Update Changes"
|
216 |
msgstr ""
|
217 |
|
218 |
-
#: /Users/gabriel/Repositories/mycred/
|
219 |
msgid "function myCRED_Service::run() must be over-ridden in a sub-class."
|
220 |
msgstr ""
|
221 |
|
222 |
-
#: /Users/gabriel/Repositories/mycred/
|
223 |
msgid "This Service has no settings"
|
224 |
msgstr ""
|
225 |
|
226 |
-
#: /Users/gabriel/Repositories/mycred/
|
227 |
msgid "Hourly"
|
228 |
msgstr ""
|
229 |
|
230 |
-
#: /Users/gabriel/Repositories/mycred/
|
231 |
msgid "Daily"
|
232 |
msgstr ""
|
233 |
|
234 |
-
#: /Users/gabriel/Repositories/mycred/
|
235 |
msgid "Weekly"
|
236 |
msgstr ""
|
237 |
|
238 |
-
#: /Users/gabriel/Repositories/mycred/
|
239 |
msgid "Monthly"
|
240 |
msgstr ""
|
241 |
|
242 |
-
#: /Users/gabriel/Repositories/mycred/
|
243 |
msgid "Quarterly"
|
244 |
msgstr ""
|
245 |
|
246 |
-
#: /Users/gabriel/Repositories/mycred/
|
247 |
msgid "Semiannually"
|
248 |
msgstr ""
|
249 |
|
250 |
-
#: /Users/gabriel/Repositories/mycred/
|
251 |
msgid "Annually"
|
252 |
msgstr ""
|
253 |
|
254 |
-
#: /Users/gabriel/Repositories/mycred/
|
255 |
msgid "%plural% interest rate payment"
|
256 |
msgstr ""
|
257 |
|
258 |
-
#: /Users/gabriel/Repositories/mycred/
|
259 |
msgid "Interest Rate"
|
260 |
msgstr ""
|
261 |
|
262 |
-
#: /Users/gabriel/Repositories/mycred/
|
263 |
msgid "Payed / Charged"
|
264 |
msgstr ""
|
265 |
|
266 |
-
#: /Users/gabriel/Repositories/mycred/
|
267 |
msgid ""
|
268 |
"The interest rate can be either positive or negative and is compounded daily."
|
269 |
msgstr ""
|
270 |
|
271 |
-
#: /Users/gabriel/Repositories/mycred/
|
272 |
msgid "Minimum Balance"
|
273 |
msgstr ""
|
274 |
|
275 |
-
#: /Users/gabriel/Repositories/mycred/
|
276 |
msgid "The minimum requires balance for interest to apply."
|
277 |
msgstr ""
|
278 |
|
279 |
-
#: /Users/gabriel/Repositories/mycred/
|
280 |
-
#: /Users/gabriel/Repositories/mycred/
|
281 |
-
#: /Users/gabriel/Repositories/mycred/
|
282 |
-
#: /Users/gabriel/Repositories/mycred/
|
283 |
-
#: /Users/gabriel/Repositories/mycred/
|
284 |
-
#: /Users/gabriel/Repositories/mycred/
|
285 |
-
#: /Users/gabriel/Repositories/mycred/
|
286 |
-
#: /Users/gabriel/Repositories/mycred/
|
287 |
-
#: /Users/gabriel/Repositories/mycred/
|
288 |
-
#: /Users/gabriel/Repositories/mycred/
|
289 |
-
#: /Users/gabriel/Repositories/mycred/
|
290 |
-
#: /Users/gabriel/Repositories/mycred/
|
291 |
-
#: /Users/gabriel/Repositories/mycred/
|
292 |
-
#: /Users/gabriel/Repositories/mycred/
|
293 |
-
#: /Users/gabriel/Repositories/mycred/
|
294 |
-
#: /Users/gabriel/Repositories/mycred/
|
295 |
-
#: /Users/gabriel/Repositories/mycred/
|
296 |
-
#: /Users/gabriel/Repositories/mycred/
|
297 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
298 |
msgid "Log Template"
|
299 |
msgstr ""
|
300 |
|
301 |
-
#: /Users/gabriel/Repositories/mycred/
|
302 |
msgid "Available template tags: General, %timeframe%, %rate%, %base%"
|
303 |
msgstr ""
|
304 |
|
305 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
306 |
msgid "Daily %_plural%"
|
307 |
msgstr ""
|
308 |
|
309 |
-
#: /Users/gabriel/Repositories/mycred/
|
310 |
msgid "Not yet run"
|
311 |
msgstr ""
|
312 |
|
313 |
-
#: /Users/gabriel/Repositories/mycred/
|
314 |
msgid "Pay Users"
|
315 |
msgstr ""
|
316 |
|
317 |
-
#: /Users/gabriel/Repositories/mycred/
|
318 |
-
#: /Users/gabriel/Repositories/mycred/
|
319 |
-
#: /Users/gabriel/Repositories/mycred/
|
320 |
msgid "Amount"
|
321 |
msgstr ""
|
322 |
|
323 |
-
#: /Users/gabriel/Repositories/mycred/
|
324 |
msgid "Can not be zero."
|
325 |
msgstr ""
|
326 |
|
327 |
-
#: /Users/gabriel/Repositories/mycred/
|
328 |
-
#: /Users/gabriel/Repositories/mycred/
|
329 |
-
#: /Users/gabriel/Repositories/mycred/
|
330 |
msgid "Interval"
|
331 |
msgstr ""
|
332 |
|
333 |
-
#: /Users/gabriel/Repositories/mycred/
|
334 |
-
#: /Users/gabriel/Repositories/mycred/
|
335 |
msgid "Cycles"
|
336 |
msgstr ""
|
337 |
|
338 |
-
#: /Users/gabriel/Repositories/mycred/
|
339 |
msgid "Set to -1 for unlimited"
|
340 |
msgstr ""
|
341 |
|
342 |
-
#: /Users/gabriel/Repositories/mycred/
|
343 |
msgid "Last Run / Activated"
|
344 |
msgstr ""
|
345 |
|
346 |
-
#: /Users/gabriel/Repositories/mycred/
|
347 |
msgid ""
|
348 |
"Select how often you want to award %_plural%. Note that when this service is "
|
349 |
"enabled, the first payout will be in the beginning of the next period. So "
|
@@ -351,625 +377,647 @@ msgid ""
|
|
351 |
"morning."
|
352 |
msgstr ""
|
353 |
|
354 |
-
#: /Users/gabriel/Repositories/mycred/
|
355 |
msgid ""
|
356 |
"Cycles let you choose how many intervals this service should run. Each time "
|
357 |
"a cycle runs, the value will decrease until it hits zero, in which case this "
|
358 |
"service will deactivate itself. Use -1 to run unlimited times."
|
359 |
msgstr ""
|
360 |
|
361 |
-
#: /Users/gabriel/Repositories/mycred/
|
362 |
msgid "Important"
|
363 |
msgstr ""
|
364 |
|
365 |
-
#: /Users/gabriel/Repositories/mycred/
|
366 |
msgid ""
|
367 |
"You can always stop payouts by deactivating this service. Just remember that "
|
368 |
"if you deactivate while there are cycles left, this service will continue on "
|
369 |
"when it gets re-activated. Set cycles to zero to reset."
|
370 |
msgstr ""
|
371 |
|
372 |
-
#: /Users/gabriel/Repositories/mycred/
|
373 |
-
#: /Users/gabriel/Repositories/mycred/
|
374 |
-
#: /Users/gabriel/Repositories/mycred/
|
375 |
msgid "Excludes"
|
376 |
msgstr ""
|
377 |
|
378 |
-
#: /Users/gabriel/Repositories/mycred/
|
379 |
msgid ""
|
380 |
"Comma separated list of user IDs to exclude from this service. No spaces "
|
381 |
"allowed!"
|
382 |
msgstr ""
|
383 |
|
384 |
-
#: /Users/gabriel/Repositories/mycred/
|
385 |
-
#: /Users/gabriel/Repositories/mycred/
|
386 |
-
#: /Users/gabriel/Repositories/mycred/
|
387 |
-
#: /Users/gabriel/Repositories/mycred/
|
388 |
-
#: /Users/gabriel/Repositories/mycred/
|
389 |
-
#: /Users/gabriel/Repositories/mycred/
|
390 |
-
#: /Users/gabriel/Repositories/mycred/
|
391 |
-
#: /Users/gabriel/Repositories/mycred/
|
392 |
-
#: /Users/gabriel/Repositories/mycred/
|
393 |
-
#: /Users/gabriel/Repositories/mycred/
|
394 |
-
#: /Users/gabriel/Repositories/mycred/
|
395 |
-
#: /Users/gabriel/Repositories/mycred/
|
396 |
-
#: /Users/gabriel/Repositories/mycred/
|
397 |
-
#: /Users/gabriel/Repositories/mycred/
|
398 |
-
#: /Users/gabriel/Repositories/mycred/
|
399 |
-
#: /Users/gabriel/Repositories/mycred/
|
400 |
-
#: /Users/gabriel/Repositories/mycred/
|
401 |
-
#: /Users/gabriel/Repositories/mycred/
|
402 |
-
#: /Users/gabriel/Repositories/mycred/
|
403 |
-
#: /Users/gabriel/Repositories/mycred/
|
404 |
-
#: /Users/gabriel/Repositories/mycred/
|
405 |
-
#: /Users/gabriel/Repositories/mycred/
|
406 |
-
#: /Users/gabriel/Repositories/mycred/
|
407 |
-
#: /Users/gabriel/Repositories/mycred/
|
408 |
-
#: /Users/gabriel/Repositories/mycred/
|
409 |
-
#: /Users/gabriel/Repositories/mycred/
|
410 |
-
#: /Users/gabriel/Repositories/mycred/
|
411 |
-
#: /Users/gabriel/Repositories/mycred/
|
412 |
-
#: /Users/gabriel/Repositories/mycred/
|
413 |
-
#: /Users/gabriel/Repositories/mycred/
|
414 |
-
#: /Users/gabriel/Repositories/mycred/
|
415 |
msgid "Available template tags: General"
|
416 |
msgstr ""
|
417 |
|
418 |
-
#: /Users/gabriel/Repositories/mycred/
|
419 |
-
#: /Users/gabriel/Repositories/mycred/
|
420 |
msgid "BuddyPress"
|
421 |
msgstr ""
|
422 |
|
423 |
-
#: /Users/gabriel/Repositories/mycred/
|
424 |
msgid ""
|
425 |
"The BuddyPress add-on extends <strong>my</strong>CRED to work with "
|
426 |
"BuddyPress allowing you to hook into most BuddyPress related actions."
|
427 |
msgstr ""
|
428 |
|
429 |
-
#: /Users/gabriel/Repositories/mycred/
|
430 |
-
#: /Users/gabriel/Repositories/mycred/
|
431 |
-
#: /Users/gabriel/Repositories/mycred/
|
432 |
msgid "My History"
|
433 |
msgstr ""
|
434 |
|
435 |
-
#: /Users/gabriel/Repositories/mycred/
|
436 |
#, php-format
|
437 |
msgid "%s's History"
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: /Users/gabriel/Repositories/mycred/
|
441 |
-
#: /Users/gabriel/Repositories/mycred/
|
442 |
-
#: /Users/gabriel/Repositories/mycred/
|
443 |
msgid "All"
|
444 |
msgstr ""
|
445 |
|
446 |
-
#: /Users/gabriel/Repositories/mycred/
|
447 |
-
#: /Users/gabriel/Repositories/mycred/
|
448 |
msgid "Today"
|
449 |
msgstr ""
|
450 |
|
451 |
-
#: /Users/gabriel/Repositories/mycred/
|
452 |
-
#: /Users/gabriel/Repositories/mycred/
|
453 |
msgid "Yesterday"
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: /Users/gabriel/Repositories/mycred/
|
457 |
-
#: /Users/gabriel/Repositories/mycred/
|
458 |
msgid "This Week"
|
459 |
msgstr ""
|
460 |
|
461 |
-
#: /Users/gabriel/Repositories/mycred/
|
462 |
-
#: /Users/gabriel/Repositories/mycred/
|
463 |
msgid "This Month"
|
464 |
msgstr ""
|
465 |
|
466 |
-
#: /Users/gabriel/Repositories/mycred/
|
467 |
msgid "BuddyPress: Groups"
|
468 |
msgstr ""
|
469 |
|
470 |
-
#: /Users/gabriel/Repositories/mycred/
|
471 |
msgid ""
|
472 |
"Awards %_plural% for group related actions. Use minus to deduct %_plural% or "
|
473 |
"zero to disable a specific hook."
|
474 |
msgstr ""
|
475 |
|
476 |
-
#: /Users/gabriel/Repositories/mycred/
|
477 |
msgid "BuddyPress: Members"
|
478 |
msgstr ""
|
479 |
|
480 |
-
#: /Users/gabriel/Repositories/mycred/
|
481 |
msgid "Awards %_plural% for profile related actions."
|
482 |
msgstr ""
|
483 |
|
484 |
-
#: /Users/gabriel/Repositories/mycred/
|
485 |
msgid "BuddyPress: Links"
|
486 |
msgstr ""
|
487 |
|
488 |
-
#: /Users/gabriel/Repositories/mycred/
|
489 |
msgid "Awards %_plural% for link related actions."
|
490 |
msgstr ""
|
491 |
|
492 |
-
#: /Users/gabriel/Repositories/mycred/
|
493 |
msgid "BuddyPress: Gallery Actions"
|
494 |
msgstr ""
|
495 |
|
496 |
-
#: /Users/gabriel/Repositories/mycred/
|
497 |
msgid ""
|
498 |
"Awards %_plural% for creating a new gallery either using BP Album+ or BP "
|
499 |
"Gallery."
|
500 |
msgstr ""
|
501 |
|
502 |
-
#: /Users/gabriel/Repositories/mycred/
|
503 |
-
#: /Users/gabriel/Repositories/mycred/
|
504 |
-
#: /Users/gabriel/Repositories/mycred/
|
505 |
msgid "Do not show."
|
506 |
msgstr ""
|
507 |
|
508 |
-
#: /Users/gabriel/Repositories/mycred/
|
509 |
-
#: /Users/gabriel/Repositories/mycred/
|
510 |
msgid "Include in Profile Header."
|
511 |
msgstr ""
|
512 |
|
513 |
-
#: /Users/gabriel/Repositories/mycred/
|
514 |
-
#: /Users/gabriel/Repositories/mycred/
|
515 |
msgid "Include under the \"Profile\" tab"
|
516 |
msgstr ""
|
517 |
|
518 |
-
#: /Users/gabriel/Repositories/mycred/
|
519 |
-
#: /Users/gabriel/Repositories/mycred/
|
520 |
msgid "Include under the \"Profile\" tab and Profile Header."
|
521 |
msgstr ""
|
522 |
|
523 |
-
#: /Users/gabriel/Repositories/mycred/
|
524 |
msgid "Show in Profile"
|
525 |
msgstr ""
|
526 |
|
527 |
-
#: /Users/gabriel/Repositories/mycred/
|
528 |
msgid "%singular% Balance"
|
529 |
msgstr ""
|
530 |
|
531 |
-
#: /Users/gabriel/Repositories/mycred/
|
532 |
msgid "Members can view each others %_singular% balance."
|
533 |
msgstr ""
|
534 |
|
535 |
-
#: /Users/gabriel/Repositories/mycred/
|
536 |
-
#: /Users/gabriel/Repositories/mycred/
|
537 |
msgid "Template"
|
538 |
msgstr ""
|
539 |
|
540 |
-
#: /Users/gabriel/Repositories/mycred/
|
541 |
msgid "Available template tags are: %creds%, %number%, %rank%"
|
542 |
msgstr ""
|
543 |
|
544 |
-
#: /Users/gabriel/Repositories/mycred/
|
545 |
msgid ""
|
546 |
"Note that you can also use %rank_logo% to show the feature image of the rank."
|
547 |
msgstr ""
|
548 |
|
549 |
-
#: /Users/gabriel/Repositories/mycred/
|
550 |
-
#: /Users/gabriel/Repositories/mycred/
|
551 |
-
#: /Users/gabriel/Repositories/mycred/
|
552 |
msgid "%plural% History"
|
553 |
msgstr ""
|
554 |
|
555 |
-
#: /Users/gabriel/Repositories/mycred/
|
556 |
msgid "Members can view each others %_plural% history."
|
557 |
msgstr ""
|
558 |
|
559 |
-
#: /Users/gabriel/Repositories/mycred/
|
560 |
msgid "Menu Title"
|
561 |
msgstr ""
|
562 |
|
563 |
-
#: /Users/gabriel/Repositories/mycred/
|
564 |
msgid "Title shown to me"
|
565 |
msgstr ""
|
566 |
|
567 |
-
#: /Users/gabriel/Repositories/mycred/
|
568 |
#, php-format
|
569 |
msgid "Title shown to others. Use %s to show the first name."
|
570 |
msgstr ""
|
571 |
|
572 |
-
#: /Users/gabriel/Repositories/mycred/
|
573 |
msgid "Menu Position"
|
574 |
msgstr ""
|
575 |
|
576 |
-
#: /Users/gabriel/Repositories/mycred/
|
577 |
msgid "Current menu positions:"
|
578 |
msgstr ""
|
579 |
|
580 |
-
#: /Users/gabriel/Repositories/mycred/
|
581 |
msgid "History URL slug"
|
582 |
msgstr ""
|
583 |
|
584 |
-
#: /Users/gabriel/Repositories/mycred/
|
585 |
msgid "Do not use empty spaces!"
|
586 |
msgstr ""
|
587 |
|
588 |
-
#: /Users/gabriel/Repositories/mycred/
|
589 |
msgid "Number of history entries to show"
|
590 |
msgstr ""
|
591 |
|
592 |
-
#: /Users/gabriel/Repositories/mycred/
|
593 |
msgid "%plural% for New Gallery"
|
594 |
msgstr ""
|
595 |
|
596 |
-
#: /Users/gabriel/Repositories/mycred/
|
597 |
-
#: /Users/gabriel/Repositories/mycred/
|
598 |
-
#: /Users/gabriel/Repositories/mycred/
|
599 |
-
#: /Users/gabriel/Repositories/mycred/
|
600 |
-
#: /Users/gabriel/Repositories/mycred/
|
601 |
-
#: /Users/gabriel/Repositories/mycred/
|
602 |
-
#: /Users/gabriel/Repositories/mycred/
|
603 |
-
#: /Users/gabriel/Repositories/mycred/
|
604 |
-
#: /Users/gabriel/Repositories/mycred/
|
605 |
-
#: /Users/gabriel/Repositories/mycred/
|
606 |
-
#: /Users/gabriel/Repositories/mycred/
|
607 |
-
#: /Users/gabriel/Repositories/mycred/
|
608 |
-
#: /Users/gabriel/Repositories/mycred/
|
609 |
-
#: /Users/gabriel/Repositories/mycred/
|
610 |
-
#: /Users/gabriel/Repositories/mycred/
|
611 |
-
#: /Users/gabriel/Repositories/mycred/
|
612 |
-
#: /Users/gabriel/Repositories/mycred/
|
613 |
-
#: /Users/gabriel/Repositories/mycred/
|
614 |
-
#: /Users/gabriel/Repositories/mycred/
|
615 |
-
#: /Users/gabriel/Repositories/mycred/
|
616 |
-
#: /Users/gabriel/Repositories/mycred/
|
617 |
-
#: /Users/gabriel/Repositories/mycred/
|
618 |
-
#: /Users/gabriel/Repositories/mycred/
|
619 |
-
#: /Users/gabriel/Repositories/mycred/
|
620 |
-
#: /Users/gabriel/Repositories/mycred/
|
621 |
-
#: /Users/gabriel/Repositories/mycred/
|
622 |
-
#: /Users/gabriel/Repositories/mycred/
|
623 |
-
#: /Users/gabriel/Repositories/mycred/
|
624 |
-
#: /Users/gabriel/Repositories/mycred/
|
625 |
-
#: /Users/gabriel/Repositories/mycred/
|
626 |
-
#: /Users/gabriel/Repositories/mycred/
|
627 |
-
#: /Users/gabriel/Repositories/mycred/
|
628 |
-
#: /Users/gabriel/Repositories/mycred/
|
629 |
-
#: /Users/gabriel/Repositories/mycred/
|
630 |
-
#: /Users/gabriel/Repositories/mycred/
|
631 |
-
#: /Users/gabriel/Repositories/mycred/
|
632 |
-
#: /Users/gabriel/Repositories/mycred/
|
633 |
-
#: /Users/gabriel/Repositories/mycred/
|
634 |
-
#: /Users/gabriel/Repositories/mycred/
|
635 |
-
#: /Users/gabriel/Repositories/mycred/
|
636 |
-
#: /Users/gabriel/Repositories/mycred/
|
637 |
-
#: /Users/gabriel/Repositories/mycred/
|
638 |
msgid "Log template"
|
639 |
msgstr ""
|
640 |
|
641 |
-
#: /Users/gabriel/Repositories/mycred/
|
642 |
msgid "%plural% for Creating Groups"
|
643 |
msgstr ""
|
644 |
|
645 |
-
#: /Users/gabriel/Repositories/mycred/
|
646 |
msgid ""
|
647 |
"If you use a negative value and the user does not have enough %_plural% the "
|
648 |
"\"Create Group\" button will be disabled."
|
649 |
msgstr ""
|
650 |
|
651 |
-
#: /Users/gabriel/Repositories/mycred/
|
652 |
msgid "Number of members before awarding %_plural%"
|
653 |
msgstr ""
|
654 |
|
655 |
-
#: /Users/gabriel/Repositories/mycred/
|
656 |
msgid "Use zero to award %_plural% when group is created."
|
657 |
msgstr ""
|
658 |
|
659 |
-
#: /Users/gabriel/Repositories/mycred/
|
660 |
msgid "%plural% for Deleting Groups"
|
661 |
msgstr ""
|
662 |
|
663 |
-
#: /Users/gabriel/Repositories/mycred/
|
664 |
msgid "%plural% for New Forum Topic"
|
665 |
msgstr ""
|
666 |
|
667 |
-
#: /Users/gabriel/Repositories/mycred/
|
668 |
msgid "%plural% for Editing Forum Topic"
|
669 |
msgstr ""
|
670 |
|
671 |
-
#: /Users/gabriel/Repositories/mycred/
|
672 |
msgid "%plural% for New Forum Post"
|
673 |
msgstr ""
|
674 |
|
675 |
-
#: /Users/gabriel/Repositories/mycred/
|
676 |
msgid "%plural% for Editing Forum Post"
|
677 |
msgstr ""
|
678 |
|
679 |
-
#: /Users/gabriel/Repositories/mycred/
|
680 |
msgid "%plural% for Joining Groups"
|
681 |
msgstr ""
|
682 |
|
683 |
-
#: /Users/gabriel/Repositories/mycred/
|
684 |
msgid ""
|
685 |
"If you use a negative value and the user does not have enough %_plural% the "
|
686 |
"\"Join Group\" button will be disabled."
|
687 |
msgstr ""
|
688 |
|
689 |
-
#: /Users/gabriel/Repositories/mycred/
|
690 |
msgid "%plural% for Leaving Groups"
|
691 |
msgstr ""
|
692 |
|
693 |
-
#: /Users/gabriel/Repositories/mycred/
|
694 |
msgid "%plural% for New Group Avatar"
|
695 |
msgstr ""
|
696 |
|
697 |
-
#: /Users/gabriel/Repositories/mycred/
|
698 |
msgid "%plural% for New Group Comment"
|
699 |
msgstr ""
|
700 |
|
701 |
-
#: /Users/gabriel/Repositories/mycred/
|
702 |
msgid "%plural% for New Links"
|
703 |
msgstr ""
|
704 |
|
705 |
-
#: /Users/gabriel/Repositories/mycred/
|
706 |
msgid "%plural% for Vote on Link"
|
707 |
msgstr ""
|
708 |
|
709 |
-
#: /Users/gabriel/Repositories/mycred/
|
710 |
msgid "%plural% for Updating Links"
|
711 |
msgstr ""
|
712 |
|
713 |
-
#: /Users/gabriel/Repositories/mycred/
|
714 |
msgid "%plural% for Deleting Links"
|
715 |
msgstr ""
|
716 |
|
717 |
-
#: /Users/gabriel/Repositories/mycred/
|
718 |
msgid "%plural% for Profile Updates"
|
719 |
msgstr ""
|
720 |
|
721 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
722 |
msgid "%plural% for New Avatar"
|
723 |
msgstr ""
|
724 |
|
725 |
-
#: /Users/gabriel/Repositories/mycred/
|
726 |
msgid "%plural% for New Friendships"
|
727 |
msgstr ""
|
728 |
|
729 |
-
#: /Users/gabriel/Repositories/mycred/
|
730 |
-
#: /Users/gabriel/Repositories/mycred/
|
731 |
-
#: /Users/gabriel/Repositories/mycred/
|
732 |
-
#: /Users/gabriel/Repositories/mycred/
|
733 |
-
#: /Users/gabriel/Repositories/mycred/
|
734 |
msgid "Available template tags: General, User"
|
735 |
msgstr ""
|
736 |
|
737 |
-
#: /Users/gabriel/Repositories/mycred/
|
738 |
msgid "%plural% for Leaving Friendship"
|
739 |
msgstr ""
|
740 |
|
741 |
-
#: /Users/gabriel/Repositories/mycred/
|
742 |
msgid "%plural% for New Comment"
|
743 |
msgstr ""
|
744 |
|
745 |
-
#: /Users/gabriel/Repositories/mycred/
|
746 |
msgid "%plural% for Deleting Comment"
|
747 |
msgstr ""
|
748 |
|
749 |
-
#: /Users/gabriel/Repositories/mycred/
|
750 |
msgid "%plural% for New Messages"
|
751 |
msgstr ""
|
752 |
|
753 |
-
#: /Users/gabriel/Repositories/mycred/
|
754 |
msgid "%plural% for Sending Gift"
|
755 |
msgstr ""
|
756 |
|
757 |
-
#: /Users/gabriel/Repositories/mycred/
|
758 |
-
#: /Users/gabriel/Repositories/mycred/
|
759 |
msgid "buyCRED"
|
760 |
msgstr ""
|
761 |
|
762 |
-
#: /Users/gabriel/Repositories/mycred/
|
763 |
msgid ""
|
764 |
"The <strong>buy</strong>CRED Add-on allows your users to buy points using "
|
765 |
"PayPal, Skrill (Moneybookers) or NETbilling. <strong>buy</strong>CRED can "
|
766 |
"also let your users buy points for other members."
|
767 |
msgstr ""
|
768 |
|
769 |
-
#: /Users/gabriel/Repositories/mycred/
|
770 |
-
#: /Users/gabriel/Repositories/mycred/
|
771 |
-
#: /Users/gabriel/Repositories/mycred/
|
772 |
-
#: /Users/gabriel/Repositories/mycred/
|
773 |
msgid "Payment Gateways"
|
774 |
msgstr ""
|
775 |
|
776 |
-
#: /Users/gabriel/Repositories/mycred/
|
777 |
-
#: /Users/gabriel/Repositories/mycred/
|
778 |
msgid "PayPal Payments Standard"
|
779 |
msgstr ""
|
780 |
|
781 |
-
#: /Users/gabriel/Repositories/mycred/
|
782 |
-
#: /Users/gabriel/Repositories/mycred/
|
783 |
msgid "NETbilling"
|
784 |
msgstr ""
|
785 |
|
786 |
-
#: /Users/gabriel/Repositories/mycred/
|
787 |
msgid "Skrill (Moneybookers)"
|
788 |
msgstr ""
|
789 |
|
790 |
-
#: /Users/gabriel/Repositories/mycred/
|
791 |
msgid "Zombaio"
|
792 |
msgstr ""
|
793 |
|
794 |
-
#: /Users/gabriel/Repositories/mycred/
|
795 |
msgid "Please login to purchase %_plural%"
|
796 |
msgstr ""
|
797 |
|
798 |
-
#: /Users/gabriel/Repositories/mycred/
|
799 |
msgid "Gift purchase from %display_name%."
|
800 |
msgstr ""
|
801 |
|
802 |
-
#: /Users/gabriel/Repositories/mycred/
|
803 |
-
#: /Users/gabriel/Repositories/mycred/
|
804 |
msgid "Minimum %plural%"
|
805 |
msgstr ""
|
806 |
|
807 |
-
#: /Users/gabriel/Repositories/mycred/
|
808 |
msgid "Minimum amount of %plural% a user must purchase. Will default to 1."
|
809 |
msgstr ""
|
810 |
|
811 |
-
#: /Users/gabriel/Repositories/mycred/
|
812 |
msgid "Login Template"
|
813 |
msgstr ""
|
814 |
|
815 |
-
#: /Users/gabriel/Repositories/mycred/
|
816 |
msgid "Content to show when a user is not logged in."
|
817 |
msgstr ""
|
818 |
|
819 |
-
#: /Users/gabriel/Repositories/mycred/
|
820 |
msgid ""
|
821 |
"Available template tags: General and %gateway% for the payment gateway used."
|
822 |
msgstr ""
|
823 |
|
824 |
-
#: /Users/gabriel/Repositories/mycred/
|
825 |
msgid "Thank You Page"
|
826 |
msgstr ""
|
827 |
|
828 |
-
#: /Users/gabriel/Repositories/mycred/
|
829 |
-
#: /Users/gabriel/Repositories/mycred/
|
830 |
msgid "Custom URL"
|
831 |
msgstr ""
|
832 |
|
833 |
-
#: /Users/gabriel/Repositories/mycred/
|
834 |
-
#: /Users/gabriel/Repositories/mycred/
|
835 |
msgid "Page"
|
836 |
msgstr ""
|
837 |
|
838 |
-
#: /Users/gabriel/Repositories/mycred/
|
839 |
msgid "Cancellation Page"
|
840 |
msgstr ""
|
841 |
|
842 |
-
#: /Users/gabriel/Repositories/mycred/
|
843 |
msgid "Gifting"
|
844 |
msgstr ""
|
845 |
|
846 |
-
#: /Users/gabriel/Repositories/mycred/
|
847 |
msgid "Allow users to buy %_plural% for other users."
|
848 |
msgstr ""
|
849 |
|
850 |
-
#: /Users/gabriel/Repositories/mycred/
|
851 |
msgid "Allow users to buy %_plural% for content authors."
|
852 |
msgstr ""
|
853 |
|
854 |
-
#: /Users/gabriel/Repositories/mycred/
|
855 |
msgid "Available template tags: %singular%, %plural% and %display_name%"
|
856 |
msgstr ""
|
857 |
|
858 |
-
#: /Users/gabriel/Repositories/mycred/
|
859 |
msgid ""
|
860 |
"Select the payment gateways you want to offer your users to buy %plural%."
|
861 |
msgstr ""
|
862 |
|
863 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
864 |
msgid "Update Gateway Settings"
|
865 |
msgstr ""
|
866 |
|
867 |
-
#: /Users/gabriel/Repositories/mycred/
|
868 |
-
#: /Users/gabriel/Repositories/mycred/
|
869 |
msgid "This Add-on needs to setup before you can use this shortcode."
|
870 |
msgstr ""
|
871 |
|
872 |
-
#: /Users/gabriel/Repositories/mycred/
|
873 |
-
#: /Users/gabriel/Repositories/mycred/
|
874 |
msgid "No gateways installed."
|
875 |
msgstr ""
|
876 |
|
877 |
-
#: /Users/gabriel/Repositories/mycred/
|
878 |
-
#: /Users/gabriel/Repositories/mycred/
|
879 |
msgid "Gateway does not exist."
|
880 |
msgstr ""
|
881 |
|
882 |
-
#: /Users/gabriel/Repositories/mycred/
|
883 |
msgid "Yourself"
|
884 |
msgstr ""
|
885 |
|
886 |
-
#: /Users/gabriel/Repositories/mycred/
|
887 |
msgid "No active gateways found."
|
888 |
msgstr ""
|
889 |
|
890 |
-
#: /Users/gabriel/Repositories/mycred/
|
891 |
msgid "The selected gateway is not active."
|
892 |
msgstr ""
|
893 |
|
894 |
-
#: /Users/gabriel/Repositories/mycred/
|
895 |
msgid "Buy with"
|
896 |
msgstr ""
|
897 |
|
898 |
-
#: /Users/gabriel/Repositories/mycred/
|
899 |
-
#: /Users/gabriel/Repositories/mycred/
|
900 |
msgid "Buy Now"
|
901 |
msgstr ""
|
902 |
|
903 |
-
#: /Users/gabriel/Repositories/mycred/
|
904 |
msgid "No users found"
|
905 |
msgstr ""
|
906 |
|
907 |
-
#: /Users/gabriel/Repositories/mycred/
|
908 |
msgid "To"
|
909 |
msgstr ""
|
910 |
|
911 |
-
#: /Users/gabriel/Repositories/mycred/
|
912 |
msgid "Select Amount"
|
913 |
msgstr ""
|
914 |
|
915 |
-
#: /Users/gabriel/Repositories/mycred/
|
916 |
msgid "min."
|
917 |
msgstr ""
|
918 |
|
919 |
-
#: /Users/gabriel/Repositories/mycred/
|
920 |
msgid "Select Gateway"
|
921 |
msgstr ""
|
922 |
|
923 |
-
#: /Users/gabriel/Repositories/mycred/
|
924 |
msgid "Buy %plural%"
|
925 |
msgstr ""
|
926 |
|
927 |
-
#: /Users/gabriel/Repositories/mycred/
|
928 |
msgid "This add-on lets your users buy %_plural% using a payment gateway."
|
929 |
msgstr ""
|
930 |
|
931 |
-
#: /Users/gabriel/Repositories/mycred/
|
932 |
msgid "Supported Gateways"
|
933 |
msgstr ""
|
934 |
|
935 |
-
#: /Users/gabriel/Repositories/mycred/
|
936 |
msgid ""
|
937 |
"myCRED supports purchases through: PayPal Payments Standard, Skrill "
|
938 |
"(Moneybookers) and NETbilling. Let us know if you want to add other payment "
|
939 |
"gateways."
|
940 |
msgstr ""
|
941 |
|
942 |
-
#: /Users/gabriel/Repositories/mycred/
|
943 |
-
#: /Users/gabriel/Repositories/mycred/
|
944 |
-
#: /Users/gabriel/Repositories/mycred/
|
945 |
msgid "Usage"
|
946 |
msgstr ""
|
947 |
|
948 |
-
#: /Users/gabriel/Repositories/mycred/
|
949 |
msgid "Purchases can be made using one of the following shortcodes:"
|
950 |
msgstr ""
|
951 |
|
952 |
-
#: /Users/gabriel/Repositories/mycred/
|
953 |
msgid ""
|
954 |
"When you want to sell a pre-set amount, sell to a specific user or use a "
|
955 |
"specific gateway.<br />For more information on how to use the shortcode, "
|
956 |
"please visit the"
|
957 |
msgstr ""
|
958 |
|
959 |
-
#: /Users/gabriel/Repositories/mycred/
|
960 |
msgid ""
|
961 |
"When you want to give your users the option to select an amount, gateway or "
|
962 |
"recipient.<br />For more information on how to use the shortcode, please "
|
963 |
"visit the"
|
964 |
msgstr ""
|
965 |
|
966 |
-
#: /Users/gabriel/Repositories/mycred/
|
967 |
-
#: /Users/gabriel/Repositories/mycred/
|
968 |
-
#: /Users/gabriel/Repositories/mycred/
|
969 |
msgid "Currency"
|
970 |
msgstr ""
|
971 |
|
972 |
-
#: /Users/gabriel/Repositories/mycred/
|
973 |
msgid ""
|
974 |
"Make sure you select a currency that your PayPal account supports. Otherwise "
|
975 |
"transactions will not be approved until you login to your PayPal account and "
|
@@ -977,12 +1025,12 @@ msgid ""
|
|
977 |
"will not be applied to the buyer until you have resolved the issue."
|
978 |
msgstr ""
|
979 |
|
980 |
-
#: /Users/gabriel/Repositories/mycred/
|
981 |
msgid "Instant Payment Notifications"
|
982 |
msgstr ""
|
983 |
|
984 |
-
#: /Users/gabriel/Repositories/mycred/
|
985 |
-
#: /Users/gabriel/Repositories/mycred/
|
986 |
msgid ""
|
987 |
"For this gateway to work, you must login to your PayPal account and under "
|
988 |
"\"Profile\" > \"Selling Tools\" enable \"Instant Payment Notifications\". "
|
@@ -990,1017 +1038,1049 @@ msgid ""
|
|
990 |
"have selected \"Receive IPN messages (Enabled)\"."
|
991 |
msgstr ""
|
992 |
|
993 |
-
#: /Users/gabriel/Repositories/mycred/
|
994 |
msgid "Skrill"
|
995 |
msgstr ""
|
996 |
|
997 |
-
#: /Users/gabriel/Repositories/mycred/
|
998 |
-
#: /Users/gabriel/Repositories/mycred/
|
999 |
-
#: /Users/gabriel/Repositories/mycred/
|
1000 |
-
#: /Users/gabriel/Repositories/mycred/
|
1001 |
-
#: /Users/gabriel/Repositories/mycred/
|
1002 |
msgid "Sandbox Mode"
|
1003 |
msgstr ""
|
1004 |
|
1005 |
-
#: /Users/gabriel/Repositories/mycred/
|
1006 |
msgid ""
|
1007 |
"Transactions made while Sandbox mode is active are real transactions! "
|
1008 |
"Remember to use your \"Test Merchant Account\" when Sandbox mode is active!"
|
1009 |
msgstr ""
|
1010 |
|
1011 |
-
#: /Users/gabriel/Repositories/mycred/
|
1012 |
-
#: /Users/gabriel/Repositories/mycred/
|
1013 |
msgid "Checkout Page"
|
1014 |
msgstr ""
|
1015 |
|
1016 |
-
#: /Users/gabriel/Repositories/mycred/
|
1017 |
msgid ""
|
1018 |
"By default all Skrill Merchant account accept payments via Bank Transfers. "
|
1019 |
"When a user selects this option, no points are awarded! You will need to "
|
1020 |
"manually award these once the bank transfer is completed."
|
1021 |
msgstr ""
|
1022 |
|
1023 |
-
#: /Users/gabriel/Repositories/mycred/
|
1024 |
-
#: /Users/gabriel/Repositories/mycred/
|
1025 |
msgid ""
|
1026 |
"By default purchases made using Skrill will result in users having to signup "
|
1027 |
"for a Skrill account (if they do not have one already). You can contact "
|
1028 |
"Skrill Merchant Services and request to disable this feature."
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: /Users/gabriel/Repositories/mycred/
|
1032 |
msgid ""
|
1033 |
"function myCRED_Payment_Gateway::process() must be over-ridden in a sub-"
|
1034 |
"class."
|
1035 |
msgstr ""
|
1036 |
|
1037 |
-
#: /Users/gabriel/Repositories/mycred/
|
1038 |
msgid ""
|
1039 |
"function myCRED_Payment_Gateway::buy() must be over-ridden in a sub-class."
|
1040 |
msgstr ""
|
1041 |
|
1042 |
-
#: /Users/gabriel/Repositories/mycred/
|
1043 |
msgid "This Payment Gateway has no settings"
|
1044 |
msgstr ""
|
1045 |
|
1046 |
-
#: /Users/gabriel/Repositories/mycred/
|
1047 |
msgid "Go to "
|
1048 |
msgstr ""
|
1049 |
|
1050 |
-
#: /Users/gabriel/Repositories/mycred/
|
1051 |
msgid "Payment Gateway Logo"
|
1052 |
msgstr ""
|
1053 |
|
1054 |
-
#: /Users/gabriel/Repositories/mycred/
|
1055 |
msgid "Click here if you are not automatically redirected"
|
1056 |
msgstr ""
|
1057 |
|
1058 |
-
#: /Users/gabriel/Repositories/mycred/
|
1059 |
msgid "Outside US"
|
1060 |
msgstr ""
|
1061 |
|
1062 |
-
#: /Users/gabriel/Repositories/mycred/
|
1063 |
-
#: /Users/gabriel/Repositories/mycred/
|
1064 |
-
#: /Users/gabriel/Repositories/mycred/
|
1065 |
msgid "Purchase of myCRED %plural%"
|
1066 |
msgstr ""
|
1067 |
|
1068 |
-
#: /Users/gabriel/Repositories/mycred/
|
1069 |
-
#: /Users/gabriel/Repositories/mycred/
|
1070 |
msgid "You have tried too many times. Please contact support."
|
1071 |
msgstr ""
|
1072 |
|
1073 |
-
#: /Users/gabriel/Repositories/mycred/
|
1074 |
msgid "This payment gateway has not yet been setup! Exiting."
|
1075 |
msgstr ""
|
1076 |
|
1077 |
-
#: /Users/gabriel/Repositories/mycred/
|
1078 |
msgid "First name can not be empty"
|
1079 |
msgstr ""
|
1080 |
|
1081 |
-
#: /Users/gabriel/Repositories/mycred/
|
1082 |
msgid "Last name can not be empty"
|
1083 |
msgstr ""
|
1084 |
|
1085 |
-
#: /Users/gabriel/Repositories/mycred/
|
1086 |
msgid "Street can not be empty"
|
1087 |
msgstr ""
|
1088 |
|
1089 |
-
#: /Users/gabriel/Repositories/mycred/
|
1090 |
msgid "City can not be empty"
|
1091 |
msgstr ""
|
1092 |
|
1093 |
-
#: /Users/gabriel/Repositories/mycred/
|
1094 |
msgid "Country can not be empty"
|
1095 |
msgstr ""
|
1096 |
|
1097 |
-
#: /Users/gabriel/Repositories/mycred/
|
1098 |
msgid "State can not be empty"
|
1099 |
msgstr ""
|
1100 |
|
1101 |
-
#: /Users/gabriel/Repositories/mycred/
|
1102 |
msgid "Zip / Post Code can not be empty"
|
1103 |
msgstr ""
|
1104 |
|
1105 |
-
#: /Users/gabriel/Repositories/mycred/
|
1106 |
msgid "Email can not be empty"
|
1107 |
msgstr ""
|
1108 |
|
1109 |
-
#: /Users/gabriel/Repositories/mycred/
|
1110 |
msgid "Please enter your credit card number"
|
1111 |
msgstr ""
|
1112 |
|
1113 |
-
#: /Users/gabriel/Repositories/mycred/
|
1114 |
msgid "Card Expiration Month must be selected"
|
1115 |
msgstr ""
|
1116 |
|
1117 |
-
#: /Users/gabriel/Repositories/mycred/
|
1118 |
msgid "Card Expiration Year must be set"
|
1119 |
msgstr ""
|
1120 |
|
1121 |
-
#: /Users/gabriel/Repositories/mycred/
|
1122 |
msgid "Please enter the CVV2 code from the back of your card"
|
1123 |
msgstr ""
|
1124 |
|
1125 |
-
#: /Users/gabriel/Repositories/mycred/
|
1126 |
msgid "Account Routing number missing"
|
1127 |
msgstr ""
|
1128 |
|
1129 |
-
#: /Users/gabriel/Repositories/mycred/
|
1130 |
msgid "Account Number missing"
|
1131 |
msgstr ""
|
1132 |
|
1133 |
-
#: /Users/gabriel/Repositories/mycred/
|
1134 |
msgid "Incorrect Credit Card number"
|
1135 |
msgstr ""
|
1136 |
|
1137 |
-
#: /Users/gabriel/Repositories/mycred/
|
1138 |
msgid "The credit card entered is past its expiration date."
|
1139 |
msgstr ""
|
1140 |
|
1141 |
-
#: /Users/gabriel/Repositories/mycred/
|
1142 |
msgid "The CVV2 number entered is not valid."
|
1143 |
msgstr ""
|
1144 |
|
1145 |
-
#: /Users/gabriel/Repositories/mycred/
|
1146 |
msgid "The bank routing number entered is not valid."
|
1147 |
msgstr ""
|
1148 |
|
1149 |
-
#: /Users/gabriel/Repositories/mycred/
|
1150 |
msgid "The bank account number entered is not valid."
|
1151 |
msgstr ""
|
1152 |
|
1153 |
-
#: /Users/gabriel/Repositories/mycred/
|
1154 |
-
#: /Users/gabriel/Repositories/mycred/
|
1155 |
msgid "Invalid Address"
|
1156 |
msgstr ""
|
1157 |
|
1158 |
-
#: /Users/gabriel/Repositories/mycred/
|
1159 |
msgid "Invalid CVV2"
|
1160 |
msgstr ""
|
1161 |
|
1162 |
-
#: /Users/gabriel/Repositories/mycred/
|
1163 |
-
#: /Users/gabriel/Repositories/mycred/
|
1164 |
msgid "Please contact support."
|
1165 |
msgstr ""
|
1166 |
|
1167 |
-
#: /Users/gabriel/Repositories/mycred/
|
1168 |
msgid "Your email address is invalid."
|
1169 |
msgstr ""
|
1170 |
|
1171 |
-
#: /Users/gabriel/Repositories/mycred/
|
1172 |
msgid "Your information is invalid. Please correct"
|
1173 |
msgstr ""
|
1174 |
|
1175 |
-
#: /Users/gabriel/Repositories/mycred/
|
1176 |
msgid "Your card was declined. Please try again."
|
1177 |
msgstr ""
|
1178 |
|
1179 |
-
#: /Users/gabriel/Repositories/mycred/
|
1180 |
-
#: /Users/gabriel/Repositories/mycred/
|
1181 |
msgid "Duplicate transaction. Please contact support"
|
1182 |
msgstr ""
|
1183 |
|
1184 |
-
#: /Users/gabriel/Repositories/mycred/
|
1185 |
msgid "Your transaction was approved"
|
1186 |
msgstr ""
|
1187 |
|
1188 |
-
#: /Users/gabriel/Repositories/mycred/
|
1189 |
msgid " error: "
|
1190 |
msgstr ""
|
1191 |
|
1192 |
-
#: /Users/gabriel/Repositories/mycred/
|
1193 |
msgid "Debug"
|
1194 |
msgstr ""
|
1195 |
|
1196 |
-
#: /Users/gabriel/Repositories/mycred/
|
1197 |
msgid "Error"
|
1198 |
msgstr ""
|
1199 |
|
1200 |
-
#: /Users/gabriel/Repositories/mycred/
|
1201 |
msgid "The following error/s were found: "
|
1202 |
msgstr ""
|
1203 |
|
1204 |
-
#: /Users/gabriel/Repositories/mycred/
|
1205 |
msgid "Please update and try again."
|
1206 |
msgstr ""
|
1207 |
|
1208 |
-
#: /Users/gabriel/Repositories/mycred/
|
1209 |
msgid "Transaction Approved"
|
1210 |
msgstr ""
|
1211 |
|
1212 |
-
#: /Users/gabriel/Repositories/mycred/
|
1213 |
msgid "Your have successfully purchased "
|
1214 |
msgstr ""
|
1215 |
|
1216 |
-
#: /Users/gabriel/Repositories/mycred/
|
1217 |
-
#: /Users/gabriel/Repositories/mycred/
|
1218 |
msgid "Click here to continue"
|
1219 |
msgstr ""
|
1220 |
|
1221 |
-
#: /Users/gabriel/Repositories/mycred/
|
1222 |
msgid "Transaction Declined"
|
1223 |
msgstr ""
|
1224 |
|
1225 |
-
#: /Users/gabriel/Repositories/mycred/
|
1226 |
msgid ""
|
1227 |
"I am sorry but your transaction could not be completed due to the following "
|
1228 |
msgstr ""
|
1229 |
|
1230 |
-
#: /Users/gabriel/Repositories/mycred/
|
1231 |
msgid "Transaction Error"
|
1232 |
msgstr ""
|
1233 |
|
1234 |
-
#: /Users/gabriel/Repositories/mycred/
|
1235 |
msgid "NETbilling returned the following error: "
|
1236 |
msgstr ""
|
1237 |
|
1238 |
-
#: /Users/gabriel/Repositories/mycred/
|
1239 |
msgid "Please try again."
|
1240 |
msgstr ""
|
1241 |
|
1242 |
-
#: /Users/gabriel/Repositories/mycred/
|
1243 |
msgid "Purchase of"
|
1244 |
msgstr ""
|
1245 |
|
1246 |
-
#: /Users/gabriel/Repositories/mycred/
|
1247 |
msgid "for"
|
1248 |
msgstr ""
|
1249 |
|
1250 |
-
#: /Users/gabriel/Repositories/mycred/
|
1251 |
msgid "Fields marked * are required!"
|
1252 |
msgstr ""
|
1253 |
|
1254 |
-
#: /Users/gabriel/Repositories/mycred/
|
1255 |
msgid "Billing Details"
|
1256 |
msgstr ""
|
1257 |
|
1258 |
-
#: /Users/gabriel/Repositories/mycred/
|
1259 |
msgid "Month"
|
1260 |
msgstr ""
|
1261 |
|
1262 |
-
#: /Users/gabriel/Repositories/mycred/
|
1263 |
msgid "Year"
|
1264 |
msgstr ""
|
1265 |
|
1266 |
-
#: /Users/gabriel/Repositories/mycred/
|
1267 |
msgid "Account ID"
|
1268 |
msgstr ""
|
1269 |
|
1270 |
-
#: /Users/gabriel/Repositories/mycred/
|
1271 |
msgid "Site Tag"
|
1272 |
msgstr ""
|
1273 |
|
1274 |
-
#: /Users/gabriel/Repositories/mycred/
|
1275 |
msgid "Dynamic IP Security Code"
|
1276 |
msgstr ""
|
1277 |
|
1278 |
-
#: /Users/gabriel/Repositories/mycred/
|
1279 |
-
#: /Users/gabriel/Repositories/mycred/
|
1280 |
-
#: /Users/gabriel/Repositories/mycred/
|
1281 |
msgid "Item Name"
|
1282 |
msgstr ""
|
1283 |
|
1284 |
-
#: /Users/gabriel/Repositories/mycred/
|
1285 |
-
#: /Users/gabriel/Repositories/mycred/
|
1286 |
-
#: /Users/gabriel/Repositories/mycred/
|
1287 |
msgid "%plural% Exchange Rate"
|
1288 |
msgstr ""
|
1289 |
|
1290 |
-
#: /Users/gabriel/Repositories/mycred/
|
1291 |
msgid "Allowed Attempts"
|
1292 |
msgstr ""
|
1293 |
|
1294 |
-
#: /Users/gabriel/Repositories/mycred/
|
1295 |
msgid "Maximum number of attempts allowed for purchases."
|
1296 |
msgstr ""
|
1297 |
|
1298 |
-
#: /Users/gabriel/Repositories/mycred/
|
1299 |
msgid "Advanced"
|
1300 |
msgstr ""
|
1301 |
|
1302 |
-
#: /Users/gabriel/Repositories/mycred/
|
1303 |
msgid "Disable AVS (Address Verification System) for credit card transactions."
|
1304 |
msgstr ""
|
1305 |
|
1306 |
-
#: /Users/gabriel/Repositories/mycred/
|
1307 |
msgid "Disable CVV2 (Card Verification Value 2) for credit card transactions."
|
1308 |
msgstr ""
|
1309 |
|
1310 |
-
#: /Users/gabriel/Repositories/mycred/
|
1311 |
msgid ""
|
1312 |
"Disable all fraud protection other than AVS/CVV2. (This implies "
|
1313 |
"disable_negative_db)"
|
1314 |
msgstr ""
|
1315 |
|
1316 |
-
#: /Users/gabriel/Repositories/mycred/
|
1317 |
msgid ""
|
1318 |
"Disable only the negative database component of the fraud protection system."
|
1319 |
msgstr ""
|
1320 |
|
1321 |
-
#: /Users/gabriel/Repositories/mycred/
|
1322 |
msgid "Disable automatic sending of both merchant and customer email receipts."
|
1323 |
msgstr ""
|
1324 |
|
1325 |
-
#: /Users/gabriel/Repositories/mycred/
|
1326 |
msgid "Disable immediate rejection of expired cards."
|
1327 |
msgstr ""
|
1328 |
|
1329 |
-
#: /Users/gabriel/Repositories/mycred/
|
1330 |
-
#: /Users/gabriel/Repositories/mycred/
|
1331 |
msgid "Success"
|
1332 |
msgstr ""
|
1333 |
|
1334 |
-
#: /Users/gabriel/Repositories/mycred/
|
1335 |
-
#: /Users/gabriel/Repositories/mycred/
|
1336 |
msgid "Thank you for your purchase"
|
1337 |
msgstr ""
|
1338 |
|
1339 |
-
#: /Users/gabriel/Repositories/mycred/
|
1340 |
-
#: /Users/gabriel/Repositories/mycred/
|
1341 |
-
#: /Users/gabriel/Repositories/mycred/
|
1342 |
msgid "Please setup this gateway before attempting to make a purchase!"
|
1343 |
msgstr ""
|
1344 |
|
1345 |
-
#: /Users/gabriel/Repositories/mycred/
|
1346 |
-
#: /Users/gabriel/Repositories/mycred/
|
1347 |
msgid "Return to "
|
1348 |
msgstr ""
|
1349 |
|
1350 |
-
#: /Users/gabriel/Repositories/mycred/
|
1351 |
-
#: /Users/gabriel/Repositories/mycred/
|
1352 |
-
#: /Users/gabriel/Repositories/mycred/
|
1353 |
msgid "Processing payment …"
|
1354 |
msgstr ""
|
1355 |
|
1356 |
-
#: /Users/gabriel/Repositories/mycred/
|
1357 |
-
#: /Users/gabriel/Repositories/mycred/
|
1358 |
-
#: /Users/gabriel/Repositories/mycred/
|
1359 |
msgid "Important!"
|
1360 |
msgstr ""
|
1361 |
|
1362 |
-
#: /Users/gabriel/Repositories/mycred/
|
1363 |
msgid ""
|
1364 |
"Make sure you select a currency that your PayPal account supports. Otherwise "
|
1365 |
"transactions will not be approved until you login to your PayPal account and "
|
1366 |
"Accept each transaction!"
|
1367 |
msgstr ""
|
1368 |
|
1369 |
-
#: /Users/gabriel/Repositories/mycred/
|
1370 |
msgid "Account Email"
|
1371 |
msgstr ""
|
1372 |
|
1373 |
-
#: /Users/gabriel/Repositories/mycred/
|
1374 |
-
#: /Users/gabriel/Repositories/mycred/
|
1375 |
msgid "Description of the item being purchased by the user."
|
1376 |
msgstr ""
|
1377 |
|
1378 |
-
#: /Users/gabriel/Repositories/mycred/
|
1379 |
-
#: /Users/gabriel/Repositories/mycred/
|
1380 |
msgid "Your selected currency"
|
1381 |
msgstr ""
|
1382 |
|
1383 |
-
#: /Users/gabriel/Repositories/mycred/
|
1384 |
msgid "IPN Address"
|
1385 |
msgstr ""
|
1386 |
|
1387 |
-
#: /Users/gabriel/Repositories/mycred/
|
1388 |
msgid "Product:"
|
1389 |
msgstr ""
|
1390 |
|
1391 |
-
#: /Users/gabriel/Repositories/mycred/
|
1392 |
msgid "Gift to:"
|
1393 |
msgstr ""
|
1394 |
|
1395 |
-
#: /Users/gabriel/Repositories/mycred/
|
1396 |
msgid "(author)"
|
1397 |
msgstr ""
|
1398 |
|
1399 |
-
#: /Users/gabriel/Repositories/mycred/
|
1400 |
msgid "Remember to use your Test Merchant Account when Sandbox mode is active!"
|
1401 |
msgstr ""
|
1402 |
|
1403 |
-
#: /Users/gabriel/Repositories/mycred/
|
1404 |
msgid "Merchant Account Email"
|
1405 |
msgstr ""
|
1406 |
|
1407 |
-
#: /Users/gabriel/Repositories/mycred/
|
1408 |
msgid "Secret Word"
|
1409 |
msgstr ""
|
1410 |
|
1411 |
-
#: /Users/gabriel/Repositories/mycred/
|
1412 |
msgid ""
|
1413 |
"You can set your secret word under \"Merchant Tools\" in your Skrill Account."
|
1414 |
msgstr ""
|
1415 |
|
1416 |
-
#: /Users/gabriel/Repositories/mycred/
|
1417 |
msgid "Confirmation Email"
|
1418 |
msgstr ""
|
1419 |
|
1420 |
-
#: /Users/gabriel/Repositories/mycred/
|
1421 |
msgid ""
|
1422 |
"Ask Skrill to send me a confirmation email for each successful purchase."
|
1423 |
msgstr ""
|
1424 |
|
1425 |
-
#: /Users/gabriel/Repositories/mycred/
|
1426 |
-
#: /Users/gabriel/Repositories/mycred/
|
1427 |
-
#: /Users/gabriel/Repositories/mycred/
|
1428 |
-
#: /Users/gabriel/Repositories/mycred/
|
1429 |
-
#: /Users/gabriel/Repositories/mycred/
|
1430 |
-
#: /Users/gabriel/Repositories/mycred/
|
1431 |
msgid "Title"
|
1432 |
msgstr ""
|
1433 |
|
1434 |
-
#: /Users/gabriel/Repositories/mycred/
|
1435 |
msgid ""
|
1436 |
"If left empty, your account email is used as title on the Skill Payment Page."
|
1437 |
msgstr ""
|
1438 |
|
1439 |
-
#: /Users/gabriel/Repositories/mycred/
|
1440 |
-
#: /Users/gabriel/Repositories/mycred/
|
1441 |
msgid "Logo URL"
|
1442 |
msgstr ""
|
1443 |
|
1444 |
-
#: /Users/gabriel/Repositories/mycred/
|
1445 |
msgid ""
|
1446 |
"The URL to the image you want to use on the top of the gateway. For best "
|
1447 |
"integration results we recommend you use logos with dimensions up to 200px "
|
1448 |
"in width and 50px in height."
|
1449 |
msgstr ""
|
1450 |
|
1451 |
-
#: /Users/gabriel/Repositories/mycred/
|
1452 |
msgid "Confirmation Note"
|
1453 |
msgstr ""
|
1454 |
|
1455 |
-
#: /Users/gabriel/Repositories/mycred/
|
1456 |
msgid ""
|
1457 |
"Optional text to show user once a transaction has been successfully "
|
1458 |
"completed. This text is shown by Skrill."
|
1459 |
msgstr ""
|
1460 |
|
1461 |
-
#: /Users/gabriel/Repositories/mycred/
|
1462 |
msgid ""
|
1463 |
"By default all Skrill Merchant account accept payments via Bank Transfers. "
|
1464 |
"When a user selects this option, no %_plural% are awarded! You will need to "
|
1465 |
"manually award these once the bank transfer is completed."
|
1466 |
msgstr ""
|
1467 |
|
1468 |
-
#: /Users/gabriel/Repositories/mycred/
|
1469 |
msgid "Site ID"
|
1470 |
msgstr ""
|
1471 |
|
1472 |
-
#: /Users/gabriel/Repositories/mycred/
|
1473 |
msgid "GW Password"
|
1474 |
msgstr ""
|
1475 |
|
1476 |
-
#: /Users/gabriel/Repositories/mycred/
|
1477 |
msgid "Pricing ID"
|
1478 |
msgstr ""
|
1479 |
|
1480 |
-
#: /Users/gabriel/Repositories/mycred/
|
1481 |
msgid "IP Verification"
|
1482 |
msgstr ""
|
1483 |
|
1484 |
-
#: /Users/gabriel/Repositories/mycred/
|
1485 |
msgid "Do not verify that callbacks are coming from Zombaio."
|
1486 |
msgstr ""
|
1487 |
|
1488 |
-
#: /Users/gabriel/Repositories/mycred/
|
1489 |
msgid "Language"
|
1490 |
msgstr ""
|
1491 |
|
1492 |
-
#: /Users/gabriel/Repositories/mycred/
|
1493 |
msgid "Postback URL (ZScript)"
|
1494 |
msgstr ""
|
1495 |
|
1496 |
-
#: /Users/gabriel/Repositories/mycred/
|
1497 |
msgid ""
|
1498 |
"For this gateway to work, login to ZOA and set the Postback URL to the above "
|
1499 |
"address and click validate."
|
1500 |
msgstr ""
|
1501 |
|
1502 |
-
#: /Users/gabriel/Repositories/mycred/
|
1503 |
-
#: /Users/gabriel/Repositories/mycred/
|
1504 |
-
#: /Users/gabriel/Repositories/mycred/
|
1505 |
-
#: /Users/gabriel/Repositories/mycred/
|
1506 |
-
#: /Users/gabriel/Repositories/mycred/
|
1507 |
msgid "Email Notices"
|
1508 |
msgstr ""
|
1509 |
|
1510 |
-
#: /Users/gabriel/Repositories/mycred/
|
1511 |
msgid "Create email notices for any type of myCRED instance."
|
1512 |
msgstr ""
|
1513 |
|
1514 |
-
#: /Users/gabriel/Repositories/mycred/
|
1515 |
msgid "Email Notice"
|
1516 |
msgstr ""
|
1517 |
|
1518 |
-
#: /Users/gabriel/Repositories/mycred/
|
1519 |
-
#: /Users/gabriel/Repositories/mycred/
|
1520 |
msgid "Add New"
|
1521 |
msgstr ""
|
1522 |
|
1523 |
-
#: /Users/gabriel/Repositories/mycred/
|
1524 |
msgid "Add New Notice"
|
1525 |
msgstr ""
|
1526 |
|
1527 |
-
#: /Users/gabriel/Repositories/mycred/
|
1528 |
msgid "Edit Notice"
|
1529 |
msgstr ""
|
1530 |
|
1531 |
-
#: /Users/gabriel/Repositories/mycred/
|
1532 |
msgid "New Notice"
|
1533 |
msgstr ""
|
1534 |
|
1535 |
-
#: /Users/gabriel/Repositories/mycred/
|
1536 |
msgid "View Notice"
|
1537 |
msgstr ""
|
1538 |
|
1539 |
-
#: /Users/gabriel/Repositories/mycred/
|
1540 |
msgid "Search Email Notices"
|
1541 |
msgstr ""
|
1542 |
|
1543 |
-
#: /Users/gabriel/Repositories/mycred/
|
1544 |
msgid "No email notices found"
|
1545 |
msgstr ""
|
1546 |
|
1547 |
-
#: /Users/gabriel/Repositories/mycred/
|
1548 |
msgid "No email notices found in Trash"
|
1549 |
msgstr ""
|
1550 |
|
1551 |
-
#: /Users/gabriel/Repositories/mycred/
|
1552 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
1553 |
msgid "General"
|
1554 |
msgstr ""
|
1555 |
|
1556 |
-
#: /Users/gabriel/Repositories/mycred/
|
1557 |
msgid "users balance changes"
|
1558 |
msgstr ""
|
1559 |
|
1560 |
-
#: /Users/gabriel/Repositories/mycred/
|
1561 |
msgid "user gains %_plural%"
|
1562 |
msgstr ""
|
1563 |
|
1564 |
-
#: /Users/gabriel/Repositories/mycred/
|
1565 |
msgid "user lose %_plural%"
|
1566 |
msgstr ""
|
1567 |
|
1568 |
-
#: /Users/gabriel/Repositories/mycred/
|
1569 |
msgid "users balance reaches zero"
|
1570 |
msgstr ""
|
1571 |
|
1572 |
-
#: /Users/gabriel/Repositories/mycred/
|
1573 |
msgid "users balance goes minus"
|
1574 |
msgstr ""
|
1575 |
|
1576 |
-
#: /Users/gabriel/Repositories/mycred/
|
1577 |
msgid "Sell Content Add-on"
|
1578 |
msgstr ""
|
1579 |
|
1580 |
-
#: /Users/gabriel/Repositories/mycred/
|
1581 |
msgid "user buys content"
|
1582 |
msgstr ""
|
1583 |
|
1584 |
-
#: /Users/gabriel/Repositories/mycred/
|
1585 |
msgid "authors content gets sold"
|
1586 |
msgstr ""
|
1587 |
|
1588 |
-
#: /Users/gabriel/Repositories/mycred/
|
1589 |
msgid "buyCREDs Add-on"
|
1590 |
msgstr ""
|
1591 |
|
1592 |
-
#: /Users/gabriel/Repositories/mycred/
|
1593 |
msgid "user buys %_plural%"
|
1594 |
msgstr ""
|
1595 |
|
1596 |
-
#: /Users/gabriel/Repositories/mycred/
|
1597 |
msgid "Transfer Add-on"
|
1598 |
msgstr ""
|
1599 |
|
1600 |
-
#: /Users/gabriel/Repositories/mycred/
|
1601 |
msgid "user sends %_plural%"
|
1602 |
msgstr ""
|
1603 |
|
1604 |
-
#: /Users/gabriel/Repositories/mycred/
|
1605 |
msgid "user receives %_plural%"
|
1606 |
msgstr ""
|
1607 |
|
1608 |
-
#: /Users/gabriel/Repositories/mycred/
|
1609 |
msgid "Ranks Add-on"
|
1610 |
msgstr ""
|
1611 |
|
1612 |
-
#: /Users/gabriel/Repositories/mycred/
|
1613 |
msgid "user is demoted"
|
1614 |
msgstr ""
|
1615 |
|
1616 |
-
#: /Users/gabriel/Repositories/mycred/
|
1617 |
msgid "user is promoted"
|
1618 |
msgstr ""
|
1619 |
|
1620 |
-
#: /Users/gabriel/Repositories/mycred/
|
1621 |
msgid ""
|
1622 |
"Settings that apply to all email notices and can not be overridden for "
|
1623 |
"individual emails."
|
1624 |
msgstr ""
|
1625 |
|
1626 |
-
#: /Users/gabriel/Repositories/mycred/
|
1627 |
msgid "Email Format"
|
1628 |
msgstr ""
|
1629 |
|
1630 |
-
#: /Users/gabriel/Repositories/mycred/
|
1631 |
msgid "Plain text emails only."
|
1632 |
msgstr ""
|
1633 |
|
1634 |
-
#: /Users/gabriel/Repositories/mycred/
|
1635 |
msgid "HTML or Plain text emails."
|
1636 |
msgstr ""
|
1637 |
|
1638 |
-
#: /Users/gabriel/Repositories/mycred/
|
1639 |
msgid "Filters"
|
1640 |
msgstr ""
|
1641 |
|
1642 |
-
#: /Users/gabriel/Repositories/mycred/
|
1643 |
msgid ""
|
1644 |
"Allow WordPress and Third Party Plugins to filter the email subject before "
|
1645 |
"an email is sent."
|
1646 |
msgstr ""
|
1647 |
|
1648 |
-
#: /Users/gabriel/Repositories/mycred/
|
1649 |
msgid ""
|
1650 |
"Allow WordPress and Third Party Plugins to filter the email content before "
|
1651 |
"an email is sent."
|
1652 |
msgstr ""
|
1653 |
|
1654 |
-
#: /Users/gabriel/Repositories/mycred/
|
1655 |
msgid ""
|
1656 |
"Default email settings. These settings can be individually overridden when "
|
1657 |
"editing emails."
|
1658 |
msgstr ""
|
1659 |
|
1660 |
-
#: /Users/gabriel/Repositories/mycred/
|
1661 |
-
#: /Users/gabriel/Repositories/mycred/
|
1662 |
msgid "Email Settings"
|
1663 |
msgstr ""
|
1664 |
|
1665 |
-
#: /Users/gabriel/Repositories/mycred/
|
1666 |
-
#: /Users/gabriel/Repositories/mycred/
|
1667 |
msgid "Senders Name:"
|
1668 |
msgstr ""
|
1669 |
|
1670 |
-
#: /Users/gabriel/Repositories/mycred/
|
1671 |
-
#: /Users/gabriel/Repositories/mycred/
|
1672 |
msgid "Senders Email:"
|
1673 |
msgstr ""
|
1674 |
|
1675 |
-
#: /Users/gabriel/Repositories/mycred/
|
1676 |
msgid "Reply-To:"
|
1677 |
msgstr ""
|
1678 |
|
1679 |
-
#: /Users/gabriel/Repositories/mycred/
|
1680 |
msgid "Default Email Content"
|
1681 |
msgstr ""
|
1682 |
|
1683 |
-
#: /Users/gabriel/Repositories/mycred/
|
1684 |
msgid "Default email content."
|
1685 |
msgstr ""
|
1686 |
|
1687 |
-
#: /Users/gabriel/Repositories/mycred/
|
1688 |
msgid "Default Email Styling"
|
1689 |
msgstr ""
|
1690 |
|
1691 |
-
#: /Users/gabriel/Repositories/mycred/
|
1692 |
msgid "Ignored if HTML is not allowed in emails."
|
1693 |
msgstr ""
|
1694 |
|
1695 |
-
#: /Users/gabriel/Repositories/mycred/
|
1696 |
-
#: /Users/gabriel/Repositories/mycred/
|
1697 |
msgid "Email Subject"
|
1698 |
msgstr ""
|
1699 |
|
1700 |
-
#: /Users/gabriel/Repositories/mycred/
|
1701 |
msgid "Status"
|
1702 |
msgstr ""
|
1703 |
|
1704 |
-
#: /Users/gabriel/Repositories/mycred/
|
1705 |
msgid "Not Active"
|
1706 |
msgstr ""
|
1707 |
|
1708 |
-
#: /Users/gabriel/Repositories/mycred/
|
1709 |
#, php-format
|
1710 |
msgid "Scheduled:<br /><strong>%1$s</strong>"
|
1711 |
msgstr ""
|
1712 |
|
1713 |
-
#: /Users/gabriel/Repositories/mycred/
|
1714 |
msgid "Active"
|
1715 |
msgstr ""
|
1716 |
|
1717 |
-
#: /Users/gabriel/Repositories/mycred/
|
1718 |
#, php-format
|
1719 |
msgid "Active - Last run:<br /><strong>%1$s</strong>"
|
1720 |
msgstr ""
|
1721 |
|
1722 |
-
#: /Users/gabriel/Repositories/mycred/
|
1723 |
msgid "Email is sent when"
|
1724 |
msgstr ""
|
1725 |
|
1726 |
-
#: /Users/gabriel/Repositories/mycred/
|
1727 |
msgid "Missing instance for this notice!"
|
1728 |
msgstr ""
|
1729 |
|
1730 |
-
#: /Users/gabriel/Repositories/mycred/
|
1731 |
-
#: /Users/gabriel/Repositories/mycred/
|
1732 |
-
#: /Users/gabriel/Repositories/mycred/
|
1733 |
msgid "Sent To"
|
1734 |
msgstr ""
|
1735 |
|
1736 |
-
#: /Users/gabriel/Repositories/mycred/
|
1737 |
-
#: /Users/gabriel/Repositories/mycred/
|
1738 |
-
#: /Users/gabriel/Repositories/mycred/
|
1739 |
-
#: /Users/gabriel/Repositories/mycred/
|
1740 |
msgid "User"
|
1741 |
msgstr ""
|
1742 |
|
1743 |
-
#: /Users/gabriel/Repositories/mycred/
|
1744 |
-
#: /Users/gabriel/Repositories/mycred/
|
1745 |
msgid "Administrator"
|
1746 |
msgstr ""
|
1747 |
|
1748 |
-
#: /Users/gabriel/Repositories/mycred/
|
1749 |
msgid "Both Administrator and User"
|
1750 |
msgstr ""
|
1751 |
|
1752 |
-
#: /Users/gabriel/Repositories/mycred/
|
1753 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:131
|
1754 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:155
|
1755 |
msgid "Available Template Tags"
|
1756 |
msgstr ""
|
1757 |
|
1758 |
-
#: /Users/gabriel/Repositories/mycred/
|
1759 |
msgid "Email Header"
|
1760 |
msgstr ""
|
1761 |
|
1762 |
-
#: /Users/gabriel/Repositories/mycred/
|
1763 |
msgid "Send this email notice when..."
|
1764 |
msgstr ""
|
1765 |
|
1766 |
-
#: /Users/gabriel/Repositories/mycred/
|
1767 |
msgid "Recipient:"
|
1768 |
msgstr ""
|
1769 |
|
1770 |
-
#: /Users/gabriel/Repositories/mycred/
|
1771 |
msgid "Both"
|
1772 |
msgstr ""
|
1773 |
|
1774 |
-
#: /Users/gabriel/Repositories/mycred/
|
1775 |
msgid "Reply-To Email:"
|
1776 |
msgstr ""
|
1777 |
|
1778 |
-
#: /Users/gabriel/Repositories/mycred/
|
1779 |
msgid "Save"
|
1780 |
msgstr ""
|
1781 |
|
1782 |
-
#: /Users/gabriel/Repositories/mycred/
|
1783 |
msgid "CSS Styling"
|
1784 |
msgstr ""
|
1785 |
|
1786 |
-
#: /Users/gabriel/Repositories/mycred/
|
1787 |
msgid "Site Related"
|
1788 |
msgstr ""
|
1789 |
|
1790 |
-
#: /Users/gabriel/Repositories/mycred/
|
1791 |
msgid "Your websites title"
|
1792 |
msgstr ""
|
1793 |
|
1794 |
-
#: /Users/gabriel/Repositories/mycred/
|
1795 |
msgid "Your websites address"
|
1796 |
msgstr ""
|
1797 |
|
1798 |
-
#: /Users/gabriel/Repositories/mycred/
|
1799 |
msgid "Your websites tagline (description)"
|
1800 |
msgstr ""
|
1801 |
|
1802 |
-
#: /Users/gabriel/Repositories/mycred/
|
1803 |
msgid "Your websites admin email"
|
1804 |
msgstr ""
|
1805 |
|
1806 |
-
#: /Users/gabriel/Repositories/mycred/
|
1807 |
msgid "Total number of blog members"
|
1808 |
msgstr ""
|
1809 |
|
1810 |
-
#: /Users/gabriel/Repositories/mycred/
|
1811 |
msgid "Points name in singular format"
|
1812 |
msgstr ""
|
1813 |
|
1814 |
-
#: /Users/gabriel/Repositories/mycred/
|
1815 |
msgid "Points name in plural"
|
1816 |
msgstr ""
|
1817 |
|
1818 |
-
#: /Users/gabriel/Repositories/mycred/
|
1819 |
msgid "Login URL"
|
1820 |
msgstr ""
|
1821 |
|
1822 |
-
#: /Users/gabriel/Repositories/mycred/
|
1823 |
msgid "User Related"
|
1824 |
msgstr ""
|
1825 |
|
1826 |
-
#: /Users/gabriel/Repositories/mycred/
|
1827 |
msgid "The users ID"
|
1828 |
msgstr ""
|
1829 |
|
1830 |
-
#: /Users/gabriel/Repositories/mycred/
|
1831 |
msgid "The users login name (username)"
|
1832 |
msgstr ""
|
1833 |
|
1834 |
-
#: /Users/gabriel/Repositories/mycred/
|
1835 |
msgid "The users display name"
|
1836 |
msgstr ""
|
1837 |
|
1838 |
-
#: /Users/gabriel/Repositories/mycred/
|
1839 |
msgid "The users profile address"
|
1840 |
msgstr ""
|
1841 |
|
1842 |
-
#: /Users/gabriel/Repositories/mycred/
|
1843 |
msgid "Link to the users profile address with their display name as title"
|
1844 |
msgstr ""
|
1845 |
|
1846 |
-
#: /Users/gabriel/Repositories/mycred/
|
1847 |
msgid "The users current balance unformated"
|
1848 |
msgstr ""
|
1849 |
|
1850 |
-
#: /Users/gabriel/Repositories/mycred/
|
1851 |
msgid "The users current balance formated"
|
1852 |
msgstr ""
|
1853 |
|
1854 |
-
#: /Users/gabriel/Repositories/mycred/
|
1855 |
msgid "Post Related"
|
1856 |
msgstr ""
|
1857 |
|
1858 |
-
#: /Users/gabriel/Repositories/mycred/
|
1859 |
msgid "Post Title"
|
1860 |
msgstr ""
|
1861 |
|
1862 |
-
#: /Users/gabriel/Repositories/mycred/
|
1863 |
msgid "Post URL address"
|
1864 |
msgstr ""
|
1865 |
|
1866 |
-
#: /Users/gabriel/Repositories/mycred/
|
1867 |
msgid "Link to post Post title"
|
1868 |
msgstr ""
|
1869 |
|
1870 |
-
#: /Users/gabriel/Repositories/mycred/
|
1871 |
msgid "The post type"
|
1872 |
msgstr ""
|
1873 |
|
1874 |
-
#: /Users/gabriel/Repositories/mycred/
|
1875 |
-
#: /Users/gabriel/Repositories/mycred/
|
1876 |
#, php-format
|
1877 |
msgid "Email Notice Updated. View <a href=\"%1$s\">All Notices</a>."
|
1878 |
msgstr ""
|
1879 |
|
1880 |
-
#: /Users/gabriel/Repositories/mycred/
|
1881 |
-
#: /Users/gabriel/Repositories/mycred/
|
1882 |
msgid "Custom field updated"
|
1883 |
msgstr ""
|
1884 |
|
1885 |
-
#: /Users/gabriel/Repositories/mycred/
|
1886 |
-
#: /Users/gabriel/Repositories/mycred/
|
1887 |
msgid "Custom filed updated"
|
1888 |
msgstr ""
|
1889 |
|
1890 |
-
#: /Users/gabriel/Repositories/mycred/
|
1891 |
msgid "Email Notice Activated"
|
1892 |
msgstr ""
|
1893 |
|
1894 |
-
#: /Users/gabriel/Repositories/mycred/
|
1895 |
msgid "Email Notice Saved"
|
1896 |
msgstr ""
|
1897 |
|
1898 |
-
#: /Users/gabriel/Repositories/mycred/
|
1899 |
#, php-format
|
1900 |
msgid ""
|
1901 |
"Email Notice Submitted for approval. View <a href=\"%1$s\">All Notices</a>."
|
1902 |
msgstr ""
|
1903 |
|
1904 |
-
#: /Users/gabriel/Repositories/mycred/
|
1905 |
#, php-format
|
1906 |
msgid "Email Notice scheduled for: <strong>%1$s</strong>."
|
1907 |
msgstr ""
|
1908 |
|
1909 |
-
#: /Users/gabriel/Repositories/mycred/
|
1910 |
msgid ""
|
1911 |
"Once a notice is \"published\" it becomes active! Select \"Save Draft\" if "
|
1912 |
"you are not yet ready to use this email notice!"
|
1913 |
msgstr ""
|
1914 |
|
1915 |
-
#: /Users/gabriel/Repositories/mycred/
|
1916 |
#, php-format
|
1917 |
msgid "This notice will become active on:<br /><strong>%1$s</strong>"
|
1918 |
msgstr ""
|
1919 |
|
1920 |
-
#: /Users/gabriel/Repositories/mycred/
|
1921 |
msgid "This email notice is active."
|
1922 |
msgstr ""
|
1923 |
|
1924 |
-
#: /Users/gabriel/Repositories/mycred/
|
1925 |
msgid "Gateway"
|
1926 |
msgstr ""
|
1927 |
|
1928 |
-
#: /Users/gabriel/Repositories/mycred/
|
1929 |
msgid ""
|
1930 |
"Let your users pay using their <strong>my</strong>CRED points balance. "
|
1931 |
"Supported Carts: WooCommerce, MarketPress. Supported Event Bookings: Event "
|
1932 |
"Espresso, Events Manager."
|
1933 |
msgstr ""
|
1934 |
|
1935 |
-
#: /Users/gabriel/Repositories/mycred/
|
1936 |
-
#: /Users/gabriel/Repositories/mycred/
|
1937 |
-
#: /Users/gabriel/Repositories/mycred/
|
1938 |
-
#: /Users/gabriel/Repositories/mycred/
|
1939 |
-
#: /Users/gabriel/Repositories/mycred/
|
1940 |
msgid "Current Balance"
|
1941 |
msgstr ""
|
1942 |
|
1943 |
-
#: /Users/gabriel/Repositories/mycred/
|
1944 |
-
#: /Users/gabriel/Repositories/mycred/
|
1945 |
-
#: /Users/gabriel/Repositories/mycred/
|
1946 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
1947 |
msgid "Total Cost"
|
1948 |
msgstr ""
|
1949 |
|
1950 |
-
#: /Users/gabriel/Repositories/mycred/
|
1951 |
-
#: /Users/gabriel/Repositories/mycred/
|
1952 |
-
#: /Users/gabriel/Repositories/mycred/
|
1953 |
msgid "Balance After Purchase"
|
1954 |
msgstr ""
|
1955 |
|
1956 |
-
#: /Users/gabriel/Repositories/mycred/
|
1957 |
msgid "Payment"
|
1958 |
msgstr ""
|
1959 |
|
1960 |
-
#: /Users/gabriel/Repositories/mycred/
|
1961 |
-
#: /Users/gabriel/Repositories/mycred/
|
1962 |
#, php-format
|
1963 |
msgid "<a href=\"%s\">Go Back</a>"
|
1964 |
msgstr ""
|
1965 |
|
1966 |
-
#: /Users/gabriel/Repositories/mycred/
|
1967 |
msgid "will be deducted from your account."
|
1968 |
msgstr ""
|
1969 |
|
1970 |
-
#: /Users/gabriel/Repositories/mycred/
|
1971 |
#, php-format
|
1972 |
msgid ""
|
1973 |
"Sorry, but you can not use this gateway as your account is excluded. Please "
|
1974 |
"<a href=\"%s\">select a different payment method</a>."
|
1975 |
msgstr ""
|
1976 |
|
1977 |
-
#: /Users/gabriel/Repositories/mycred/
|
1978 |
msgid "Paid"
|
1979 |
msgstr ""
|
1980 |
|
1981 |
-
#: /Users/gabriel/Repositories/mycred/
|
1982 |
-
#: /Users/gabriel/Repositories/mycred/
|
1983 |
-
#: /Users/gabriel/Repositories/mycred/
|
1984 |
-
#: /Users/gabriel/Repositories/mycred/
|
1985 |
-
#: /Users/gabriel/Repositories/mycred/
|
1986 |
msgid "myCRED"
|
1987 |
msgstr ""
|
1988 |
|
1989 |
-
#: /Users/gabriel/Repositories/mycred/
|
1990 |
msgid "%_singular% Balance"
|
1991 |
msgstr ""
|
1992 |
|
1993 |
-
#: /Users/gabriel/Repositories/mycred/
|
1994 |
-
#: /Users/gabriel/Repositories/mycred/
|
1995 |
-
#: /Users/gabriel/Repositories/mycred/
|
1996 |
-
|
1997 |
-
|
1998 |
-
|
1999 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2000 |
msgid "Settings"
|
2001 |
msgstr ""
|
2002 |
|
2003 |
-
#: /Users/gabriel/Repositories/mycred/
|
2004 |
#, php-format
|
2005 |
msgid ""
|
2006 |
"Let your users pay for items in their shopping cart using their %s Account. "
|
@@ -2008,98 +2088,134 @@ msgid ""
|
|
2008 |
"purchase!"
|
2009 |
msgstr ""
|
2010 |
|
2011 |
-
#: /Users/gabriel/Repositories/mycred/
|
2012 |
msgid "Method Name"
|
2013 |
msgstr ""
|
2014 |
|
2015 |
-
#: /Users/gabriel/Repositories/mycred/
|
2016 |
msgid ""
|
2017 |
"Enter a public name for this payment method that is displayed to users - No "
|
2018 |
"HTML"
|
2019 |
msgstr ""
|
2020 |
|
2021 |
-
#: /Users/gabriel/Repositories/mycred/
|
2022 |
msgid "Gateway Logo URL"
|
2023 |
msgstr ""
|
2024 |
|
2025 |
-
#: /Users/gabriel/Repositories/mycred/
|
2026 |
-
#: /Users/gabriel/Repositories/mycred/
|
2027 |
msgid ""
|
2028 |
"Log entry template for successful payments. Available template tags: "
|
2029 |
"%order_id%, %order_link%"
|
2030 |
msgstr ""
|
2031 |
|
2032 |
-
#: /Users/gabriel/Repositories/mycred/
|
2033 |
-
#: /Users/gabriel/Repositories/mycred/
|
2034 |
msgid "How much is 1 %_singular% worth in %currency%?"
|
2035 |
msgstr ""
|
2036 |
|
2037 |
-
#: /Users/gabriel/Repositories/mycred/
|
2038 |
-
#: /Users/gabriel/Repositories/mycred/
|
2039 |
-
#: /Users/gabriel/Repositories/mycred/
|
2040 |
-
#: /Users/gabriel/Repositories/mycred/
|
2041 |
-
#: /Users/gabriel/Repositories/mycred/
|
2042 |
-
#: /Users/gabriel/Repositories/mycred/
|
2043 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
2044 |
msgid "Exchange Rate"
|
2045 |
msgstr ""
|
2046 |
|
2047 |
-
#: /Users/gabriel/Repositories/mycred/
|
2048 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2049 |
msgid "Insufficient Funds"
|
2050 |
msgstr ""
|
2051 |
|
2052 |
-
#: /Users/gabriel/Repositories/mycred/
|
2053 |
msgid "Message to show when the user can not use this gateway."
|
2054 |
msgstr ""
|
2055 |
|
2056 |
-
#: /Users/gabriel/Repositories/mycred/
|
2057 |
-
#: /Users/gabriel/Repositories/mycred/
|
2058 |
msgid "Available template tags are: General."
|
2059 |
msgstr ""
|
2060 |
|
2061 |
-
#: /Users/gabriel/Repositories/mycred/
|
2062 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2063 |
msgid "Visitors"
|
2064 |
msgstr ""
|
2065 |
|
2066 |
-
#: /Users/gabriel/Repositories/mycred/
|
2067 |
msgid "Message to show to buyers that are not logged in."
|
2068 |
msgstr ""
|
2069 |
|
2070 |
-
#: /Users/gabriel/Repositories/mycred/
|
2071 |
msgid "User Instructions"
|
2072 |
msgstr ""
|
2073 |
|
2074 |
-
#: /Users/gabriel/Repositories/mycred/
|
2075 |
msgid "Information to show users before payment."
|
2076 |
msgstr ""
|
2077 |
|
2078 |
-
#: /Users/gabriel/Repositories/mycred/
|
2079 |
msgid ""
|
2080 |
"Available template tags are: %balance% and %balance_f% for users current "
|
2081 |
"balance."
|
2082 |
msgstr ""
|
2083 |
|
2084 |
-
#: /Users/gabriel/Repositories/mycred/
|
2085 |
msgid "Confirmation Information"
|
2086 |
msgstr ""
|
2087 |
|
2088 |
-
#: /Users/gabriel/Repositories/mycred/
|
2089 |
msgid "Information to display on the order confirmation page. - HTML allowed"
|
2090 |
msgstr ""
|
2091 |
|
2092 |
-
#: /Users/gabriel/Repositories/mycred/
|
2093 |
msgid ""
|
2094 |
"Available template tags: TOTAL - total cart cost, %balance% and %balance_f% "
|
2095 |
"- users current balance."
|
2096 |
msgstr ""
|
2097 |
|
2098 |
-
#: /Users/gabriel/Repositories/mycred/
|
2099 |
msgid "Order Confirmation Email"
|
2100 |
msgstr ""
|
2101 |
|
2102 |
-
#: /Users/gabriel/Repositories/mycred/
|
2103 |
#, php-format
|
2104 |
msgid ""
|
2105 |
"This is the email text to send to those who have made %s checkouts. It "
|
@@ -2108,635 +2224,773 @@ msgid ""
|
|
2108 |
"PAYMENTINFO, TOTAL, TRACKINGURL. No HTML allowed."
|
2109 |
msgstr ""
|
2110 |
|
2111 |
-
#: /Users/gabriel/Repositories/mycred/
|
2112 |
#, php-format
|
2113 |
msgid "Available template tags: %balance% or %balance_f% for users balance."
|
2114 |
msgstr ""
|
2115 |
|
2116 |
-
#: /Users/gabriel/Repositories/mycred/
|
2117 |
msgid "Let users pay using their myCRED balance."
|
2118 |
msgstr ""
|
2119 |
|
2120 |
-
#: /Users/gabriel/Repositories/mycred/
|
2121 |
msgid "Enable/Disable"
|
2122 |
msgstr ""
|
2123 |
|
2124 |
-
#: /Users/gabriel/Repositories/mycred/
|
2125 |
msgid "Enable myCRED Payment"
|
2126 |
msgstr ""
|
2127 |
|
2128 |
-
#: /Users/gabriel/Repositories/mycred/
|
2129 |
msgid ""
|
2130 |
"Users who are not logged in or excluded from using myCRED will not have "
|
2131 |
"access to this gateway!"
|
2132 |
msgstr ""
|
2133 |
|
2134 |
-
#: /Users/gabriel/Repositories/mycred/
|
2135 |
msgid "Title to show for this payment option."
|
2136 |
msgstr ""
|
2137 |
|
2138 |
-
#: /Users/gabriel/Repositories/mycred/
|
2139 |
msgid "Pay with myCRED"
|
2140 |
msgstr ""
|
2141 |
|
2142 |
-
#: /Users/gabriel/Repositories/mycred/
|
2143 |
msgid "Customer Message"
|
2144 |
msgstr ""
|
2145 |
|
2146 |
-
#: /Users/gabriel/Repositories/mycred/
|
2147 |
msgid "Deduct the amount from your %_plural% balance."
|
2148 |
msgstr ""
|
2149 |
|
2150 |
-
#: /Users/gabriel/Repositories/mycred/
|
2151 |
-
msgid "Payment for Order: #%order_id%"
|
2152 |
-
msgstr ""
|
2153 |
-
|
2154 |
-
#: /Users/gabriel/Repositories/mycred/trunk/addons/gateway/carts/mycred-woocommerce.php:107
|
2155 |
msgid "Show Total"
|
2156 |
msgstr ""
|
2157 |
|
2158 |
-
#: /Users/gabriel/Repositories/mycred/
|
2159 |
msgid "Show the final price in %_plural% ."
|
2160 |
msgstr ""
|
2161 |
|
2162 |
-
#: /Users/gabriel/Repositories/mycred/
|
2163 |
msgid "Do not show"
|
2164 |
msgstr ""
|
2165 |
|
2166 |
-
#: /Users/gabriel/Repositories/mycred/
|
2167 |
msgid "Show in Cart"
|
2168 |
msgstr ""
|
2169 |
|
2170 |
-
#: /Users/gabriel/Repositories/mycred/
|
2171 |
msgid "Show on Checkout Page"
|
2172 |
msgstr ""
|
2173 |
|
2174 |
-
#: /Users/gabriel/Repositories/mycred/
|
2175 |
msgid "Show in Cart and on Checkout Page"
|
2176 |
msgstr ""
|
2177 |
|
2178 |
-
#: /Users/gabriel/Repositories/mycred/
|
2179 |
msgid "Label"
|
2180 |
msgstr ""
|
2181 |
|
2182 |
-
#: /Users/gabriel/Repositories/mycred/
|
2183 |
msgid "Order Total in %_plural%"
|
2184 |
msgstr ""
|
2185 |
|
2186 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2187 |
msgid "myCRED Payment"
|
2188 |
msgstr ""
|
2189 |
|
2190 |
-
#: /Users/gabriel/Repositories/mycred/
|
2191 |
msgid ""
|
2192 |
"Allows users to pay using their myCRED %_singular% balance. Please note that "
|
2193 |
"users with insufficient funds and users who are not logged in will not see "
|
2194 |
"this payment gateway on the checkout page."
|
2195 |
msgstr ""
|
2196 |
|
2197 |
-
#: /Users/gabriel/Repositories/mycred/
|
2198 |
msgid "You must be logged in to pay with %_plural%"
|
2199 |
msgstr ""
|
2200 |
|
2201 |
-
#: /Users/gabriel/Repositories/mycred/
|
2202 |
msgid "You can not use this gateway. Please try a different payment option."
|
2203 |
msgstr ""
|
2204 |
|
2205 |
-
#: /Users/gabriel/Repositories/mycred/
|
2206 |
msgid "Insufficient funds. Please try a different payment option."
|
2207 |
msgstr ""
|
2208 |
|
2209 |
-
#: /Users/gabriel/Repositories/mycred/
|
2210 |
msgid "Your account has successfully been charged."
|
2211 |
msgstr ""
|
2212 |
|
2213 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2214 |
msgid "Your current balance"
|
2215 |
msgstr ""
|
2216 |
|
2217 |
-
#: /Users/gabriel/Repositories/mycred/
|
2218 |
-
|
2219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2220 |
msgid "Payments"
|
2221 |
msgstr ""
|
2222 |
|
2223 |
-
#: /Users/gabriel/Repositories/mycred/
|
2224 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2225 |
msgid "Pay Now"
|
2226 |
msgstr ""
|
2227 |
|
2228 |
-
#: /Users/gabriel/Repositories/mycred/
|
2229 |
msgid "Payment for Event Registration"
|
2230 |
msgstr ""
|
2231 |
|
2232 |
-
#: /Users/gabriel/Repositories/mycred/
|
2233 |
#, php-format
|
2234 |
msgid "Activate %s"
|
2235 |
msgstr ""
|
2236 |
|
2237 |
-
#: /Users/gabriel/Repositories/mycred/
|
2238 |
#, php-format
|
2239 |
msgid "Deactivate %s"
|
2240 |
msgstr ""
|
2241 |
|
2242 |
-
#: /Users/gabriel/Repositories/mycred/
|
2243 |
msgid "Gateway Settings"
|
2244 |
msgstr ""
|
2245 |
|
2246 |
-
#: /Users/gabriel/Repositories/mycred/
|
2247 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2248 |
#, php-format
|
2249 |
msgid "How many %s is 1 %s worth?"
|
2250 |
msgstr ""
|
2251 |
|
2252 |
-
#: /Users/gabriel/Repositories/mycred/
|
2253 |
msgid "Gateways Settings Successfully Updated"
|
2254 |
msgstr ""
|
2255 |
|
2256 |
-
#: /Users/gabriel/Repositories/mycred/
|
2257 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2258 |
msgid "Labels"
|
2259 |
msgstr ""
|
2260 |
|
2261 |
-
#: /Users/gabriel/Repositories/mycred/
|
2262 |
msgid "Gateway Title"
|
2263 |
msgstr ""
|
2264 |
|
2265 |
-
#: /Users/gabriel/Repositories/mycred/
|
2266 |
msgid "Title to show on Payment page"
|
2267 |
msgstr ""
|
2268 |
|
2269 |
-
#: /Users/gabriel/Repositories/mycred/
|
2270 |
msgid "Payment Type"
|
2271 |
msgstr ""
|
2272 |
|
2273 |
-
#: /Users/gabriel/Repositories/mycred/
|
2274 |
msgid "Title to show on receipts and logs"
|
2275 |
msgstr ""
|
2276 |
|
2277 |
-
#: /Users/gabriel/Repositories/mycred/
|
2278 |
-
#: /Users/gabriel/Repositories/mycred/
|
2279 |
-
#: /Users/gabriel/Repositories/mycred/
|
2280 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2281 |
msgid "Button Label"
|
2282 |
msgstr ""
|
2283 |
|
2284 |
-
#: /Users/gabriel/Repositories/mycred/
|
2285 |
msgid "Pay Button"
|
2286 |
msgstr ""
|
2287 |
|
2288 |
-
#: /Users/gabriel/Repositories/mycred/
|
2289 |
-
#: /Users/gabriel/Repositories/mycred/
|
2290 |
-
#: /Users/gabriel/Repositories/mycred/
|
2291 |
-
#: /Users/gabriel/Repositories/mycred/
|
2292 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
2293 |
msgid "Price"
|
2294 |
msgstr ""
|
2295 |
|
2296 |
-
#: /Users/gabriel/Repositories/mycred/
|
2297 |
msgid ""
|
2298 |
"You can disable purchases using this gateway by adding a custom Event Meta: "
|
2299 |
"<code>mycred_no_sale</code>"
|
2300 |
msgstr ""
|
2301 |
|
2302 |
-
#: /Users/gabriel/Repositories/mycred/
|
2303 |
msgid "Users must be logged in to use this gateway!"
|
2304 |
msgstr ""
|
2305 |
|
2306 |
-
#: /Users/gabriel/Repositories/mycred/
|
2307 |
-
#: /Users/gabriel/Repositories/mycred/
|
2308 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2309 |
msgid "Log"
|
2310 |
msgstr ""
|
2311 |
|
2312 |
-
#: /Users/gabriel/Repositories/mycred/
|
2313 |
-
#: /Users/gabriel/Repositories/mycred/
|
2314 |
-
#: /Users/gabriel/Repositories/mycred/
|
2315 |
-
#: /Users/gabriel/Repositories/mycred/
|
2316 |
-
#: /Users/gabriel/Repositories/mycred/
|
2317 |
msgid "Log Entry"
|
2318 |
msgstr ""
|
2319 |
|
2320 |
-
#: /Users/gabriel/Repositories/mycred/
|
2321 |
-
#: /Users/gabriel/Repositories/mycred/
|
2322 |
msgid "Templates"
|
2323 |
msgstr ""
|
2324 |
|
2325 |
-
#: /Users/gabriel/Repositories/mycred/
|
2326 |
msgid "Solvent users"
|
2327 |
msgstr ""
|
2328 |
|
2329 |
-
#: /Users/gabriel/Repositories/mycred/
|
2330 |
msgid ""
|
2331 |
"Message to show users on the payment page before they are charged. Leave "
|
2332 |
"empty to hide.<br />Available template tags: General"
|
2333 |
msgstr ""
|
2334 |
|
2335 |
-
#: /Users/gabriel/Repositories/mycred/
|
2336 |
msgid "Insolvent users"
|
2337 |
msgstr ""
|
2338 |
|
2339 |
-
#: /Users/gabriel/Repositories/mycred/
|
2340 |
msgid ""
|
2341 |
"Message to show users who do not have enough points to pay.<br />Available "
|
2342 |
"template tags: General"
|
2343 |
msgstr ""
|
2344 |
|
2345 |
-
#: /Users/gabriel/Repositories/mycred/
|
2346 |
msgid ""
|
2347 |
"Message to show visitors (users not logged in) on the payment page.<br /"
|
2348 |
">Available template tags: General"
|
2349 |
msgstr ""
|
2350 |
|
2351 |
-
#: /Users/gabriel/Repositories/mycred/
|
2352 |
-
#: /Users/gabriel/Repositories/mycred/
|
2353 |
msgid "Update Settings"
|
2354 |
msgstr ""
|
2355 |
|
2356 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2357 |
msgid "Payment for tickets to %link_with_title%"
|
2358 |
msgstr ""
|
2359 |
|
2360 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2361 |
msgid "Ticket refund for %link_with_title%"
|
2362 |
msgstr ""
|
2363 |
|
2364 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2365 |
msgid "Pay using your %_plural% balance"
|
2366 |
msgstr ""
|
2367 |
|
2368 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2369 |
msgid "Pay"
|
2370 |
msgstr ""
|
2371 |
|
2372 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2373 |
msgid "Thank you for your payment!"
|
2374 |
msgstr ""
|
2375 |
|
2376 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2377 |
msgid "I'm sorry but you can not pay for these tickets using %_plural%"
|
2378 |
msgstr ""
|
2379 |
|
2380 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2381 |
msgid "Ticket Type"
|
2382 |
msgstr ""
|
2383 |
|
2384 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2385 |
msgid "Spaces"
|
2386 |
msgstr ""
|
2387 |
|
2388 |
-
#: /Users/gabriel/Repositories/mycred/
|
2389 |
-
msgid "
|
2390 |
msgstr ""
|
2391 |
|
2392 |
-
#: /Users/gabriel/Repositories/mycred/
|
2393 |
-
msgid "
|
2394 |
msgstr ""
|
2395 |
|
2396 |
-
#: /Users/gabriel/Repositories/mycred/
|
2397 |
-
|
2398 |
-
|
|
|
|
|
|
|
2399 |
msgstr ""
|
2400 |
|
2401 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2402 |
msgid "Disabled - Users CAN NOT pay for tickets using %plural%."
|
2403 |
msgstr ""
|
2404 |
|
2405 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2406 |
msgid "Single - Users can ONLY pay for tickets using %plural%."
|
2407 |
msgstr ""
|
2408 |
|
2409 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2410 |
msgid "Multi - Users can pay for tickets using other gateways or %plural%."
|
2411 |
msgstr ""
|
2412 |
|
2413 |
-
#: /Users/gabriel/Repositories/mycred/
|
2414 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
2415 |
msgid "Refunds"
|
2416 |
msgstr ""
|
2417 |
|
2418 |
-
#: /Users/gabriel/Repositories/mycred/
|
2419 |
msgid ""
|
2420 |
-
"The percentage of the paid amount to refund if a
|
2421 |
-
"zero for no refunds. No refunds are given to \"Rejected\"
|
|
|
2422 |
msgstr ""
|
2423 |
|
2424 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2425 |
msgid "Log Templates"
|
2426 |
msgstr ""
|
2427 |
|
2428 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2429 |
msgid "Purchases"
|
2430 |
msgstr ""
|
2431 |
|
2432 |
-
#: /Users/gabriel/Repositories/mycred/
|
2433 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
2434 |
msgid "Available template tags: General and Post related."
|
2435 |
msgstr ""
|
2436 |
|
2437 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2438 |
msgid "Payment Link Label"
|
2439 |
msgstr ""
|
2440 |
|
2441 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2442 |
msgid ""
|
2443 |
"The payment link shows / hides the payment form under \"My Bookings\". No "
|
2444 |
"HTML allowed."
|
2445 |
msgstr ""
|
2446 |
|
2447 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2448 |
msgid "Payment Header"
|
2449 |
msgstr ""
|
2450 |
|
2451 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2452 |
msgid "Shown on top of the payment form. No HTML allowed."
|
2453 |
msgstr ""
|
2454 |
|
2455 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2456 |
msgid "The button label for payments. No HTML allowed!"
|
2457 |
msgstr ""
|
2458 |
|
2459 |
-
#: /Users/gabriel/Repositories/mycred/
|
2460 |
-
|
2461 |
-
msgstr ""
|
2462 |
-
|
2463 |
-
#: /Users/gabriel/Repositories/mycred/trunk/addons/gateway/event-booking/mycred-eventsmanager.php:559
|
2464 |
msgid "Successful Payments"
|
2465 |
msgstr ""
|
2466 |
|
2467 |
-
#: /Users/gabriel/Repositories/mycred/
|
2468 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
2469 |
msgid "No HTML allowed! Available template tags: General"
|
2470 |
msgstr ""
|
2471 |
|
2472 |
-
#: /Users/gabriel/Repositories/mycred/
|
2473 |
-
|
2474 |
-
|
2475 |
-
|
2476 |
-
#: /Users/gabriel/Repositories/mycred/
|
2477 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2478 |
msgid "Import"
|
2479 |
msgstr ""
|
2480 |
|
2481 |
-
#: /Users/gabriel/Repositories/mycred/
|
2482 |
msgid ""
|
2483 |
"With the Import add-on you can import CSV files, CubePoints or existing "
|
2484 |
"points under any custom user meta values."
|
2485 |
msgstr ""
|
2486 |
|
2487 |
-
#: /Users/gabriel/Repositories/mycred/
|
2488 |
-
#: /Users/gabriel/Repositories/mycred/
|
2489 |
msgid "CSV File"
|
2490 |
msgstr ""
|
2491 |
|
2492 |
-
#: /Users/gabriel/Repositories/mycred/
|
2493 |
msgid "Import %_plural% from a comma-separated values (CSV) file."
|
2494 |
msgstr ""
|
2495 |
|
2496 |
-
#: /Users/gabriel/Repositories/mycred/
|
2497 |
msgid "CubePoints"
|
2498 |
msgstr ""
|
2499 |
|
2500 |
-
#: /Users/gabriel/Repositories/mycred/
|
2501 |
msgid "Import CubePoints"
|
2502 |
msgstr ""
|
2503 |
|
2504 |
-
#: /Users/gabriel/Repositories/mycred/
|
2505 |
-
#: /Users/gabriel/Repositories/mycred/
|
2506 |
msgid "Custom User Meta"
|
2507 |
msgstr ""
|
2508 |
|
2509 |
-
#: /Users/gabriel/Repositories/mycred/
|
2510 |
msgid "Import %_plural% from pre-existing custom user meta."
|
2511 |
msgstr ""
|
2512 |
|
2513 |
-
#: /Users/gabriel/Repositories/mycred/
|
2514 |
msgid "No file selected. Please select your CSV file and try again."
|
2515 |
msgstr ""
|
2516 |
|
2517 |
-
#: /Users/gabriel/Repositories/mycred/
|
2518 |
msgid "Failed to load file."
|
2519 |
msgstr ""
|
2520 |
|
2521 |
-
#: /Users/gabriel/Repositories/mycred/
|
2522 |
-
#: /Users/gabriel/Repositories/mycred/
|
2523 |
#, php-format
|
2524 |
msgid ""
|
2525 |
"Zero rows imported! Skipped %d entries. Import completed in %.2f seconds."
|
2526 |
msgstr ""
|
2527 |
|
2528 |
-
#: /Users/gabriel/Repositories/mycred/
|
2529 |
msgid ""
|
2530 |
"No valid records found in file. Make sure you have selected the correct way "
|
2531 |
"to identify users in the mycred_user column!"
|
2532 |
msgstr ""
|
2533 |
|
2534 |
-
#: /Users/gabriel/Repositories/mycred/
|
2535 |
-
#: /Users/gabriel/Repositories/mycred/
|
2536 |
-
#: /Users/gabriel/Repositories/mycred/
|
2537 |
#, php-format
|
2538 |
msgid ""
|
2539 |
"Import successfully completed. A total of %d users were effected and %d "
|
2540 |
"entires were skipped. Import completed in %.2f seconds."
|
2541 |
msgstr ""
|
2542 |
|
2543 |
-
#: /Users/gabriel/Repositories/mycred/
|
2544 |
-
#: /Users/gabriel/Repositories/mycred/
|
2545 |
msgid "No CubePoints found."
|
2546 |
msgstr ""
|
2547 |
|
2548 |
-
#: /Users/gabriel/Repositories/mycred/
|
2549 |
#, php-format
|
2550 |
msgid ""
|
2551 |
"Zero CubePoints imported! Skipped %d entries. Import completed in %.2f "
|
2552 |
"seconds."
|
2553 |
msgstr ""
|
2554 |
|
2555 |
-
#: /Users/gabriel/Repositories/mycred/
|
2556 |
msgid "No valid CubePoints founds."
|
2557 |
msgstr ""
|
2558 |
|
2559 |
-
#: /Users/gabriel/Repositories/mycred/
|
2560 |
msgid "Missing meta key. Not sure what I should be looking for."
|
2561 |
msgstr ""
|
2562 |
|
2563 |
-
#: /Users/gabriel/Repositories/mycred/
|
2564 |
#, php-format
|
2565 |
msgid "No rows found for the <strong>%s</strong> meta key."
|
2566 |
msgstr ""
|
2567 |
|
2568 |
-
#: /Users/gabriel/Repositories/mycred/
|
2569 |
msgid "No valid records founds."
|
2570 |
msgstr ""
|
2571 |
|
2572 |
-
#: /Users/gabriel/Repositories/mycred/
|
2573 |
msgid "Remember to de-activate this add-on once you are done importing!"
|
2574 |
msgstr ""
|
2575 |
|
2576 |
-
#: /Users/gabriel/Repositories/mycred/
|
2577 |
msgid "File"
|
2578 |
msgstr ""
|
2579 |
|
2580 |
-
#: /Users/gabriel/Repositories/mycred/
|
2581 |
msgid "Maximum allowed upload size is "
|
2582 |
msgstr ""
|
2583 |
|
2584 |
-
#: /Users/gabriel/Repositories/mycred/
|
2585 |
msgid ""
|
2586 |
"Required columns: <code>mycred_user</code> and <code>mycred_amount</code>. "
|
2587 |
"Optional columns: <code>mycred_log</code>."
|
2588 |
msgstr ""
|
2589 |
|
2590 |
-
#: /Users/gabriel/Repositories/mycred/
|
2591 |
msgid "Identify Users By"
|
2592 |
msgstr ""
|
2593 |
|
2594 |
-
#: /Users/gabriel/Repositories/mycred/
|
2595 |
-
#: /Users/gabriel/Repositories/mycred/
|
2596 |
msgid "ID"
|
2597 |
msgstr ""
|
2598 |
|
2599 |
-
#: /Users/gabriel/Repositories/mycred/
|
2600 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-log.php:190
|
2601 |
msgid "Username"
|
2602 |
msgstr ""
|
2603 |
|
2604 |
-
#: /Users/gabriel/Repositories/mycred/
|
2605 |
msgid "Email"
|
2606 |
msgstr ""
|
2607 |
|
2608 |
-
#: /Users/gabriel/Repositories/mycred/
|
2609 |
msgid "How much is 1 imported value worth?"
|
2610 |
msgstr ""
|
2611 |
|
2612 |
-
#: /Users/gabriel/Repositories/mycred/
|
2613 |
-
#: /Users/gabriel/Repositories/mycred/
|
2614 |
-
#: /Users/gabriel/Repositories/mycred/
|
2615 |
msgid "Round"
|
2616 |
msgstr ""
|
2617 |
|
2618 |
-
#: /Users/gabriel/Repositories/mycred/
|
2619 |
msgid "None"
|
2620 |
msgstr ""
|
2621 |
|
2622 |
-
#: /Users/gabriel/Repositories/mycred/
|
2623 |
-
#: /Users/gabriel/Repositories/mycred/
|
2624 |
-
#: /Users/gabriel/Repositories/mycred/
|
2625 |
msgid "Round Up"
|
2626 |
msgstr ""
|
2627 |
|
2628 |
-
#: /Users/gabriel/Repositories/mycred/
|
2629 |
-
#: /Users/gabriel/Repositories/mycred/
|
2630 |
-
#: /Users/gabriel/Repositories/mycred/
|
2631 |
msgid "Round Down"
|
2632 |
msgstr ""
|
2633 |
|
2634 |
-
#: /Users/gabriel/Repositories/mycred/
|
2635 |
-
#: /Users/gabriel/Repositories/mycred/
|
2636 |
-
#: /Users/gabriel/Repositories/mycred/
|
2637 |
msgid "Precision"
|
2638 |
msgstr ""
|
2639 |
|
2640 |
-
#: /Users/gabriel/Repositories/mycred/
|
2641 |
-
#: /Users/gabriel/Repositories/mycred/
|
2642 |
-
#: /Users/gabriel/Repositories/mycred/
|
2643 |
msgid ""
|
2644 |
"The optional number of decimal digits to round to. Use zero to round the "
|
2645 |
"nearest whole number."
|
2646 |
msgstr ""
|
2647 |
|
2648 |
-
#: /Users/gabriel/Repositories/mycred/
|
2649 |
-
#: /Users/gabriel/Repositories/mycred/
|
2650 |
-
#: /Users/gabriel/Repositories/mycred/
|
2651 |
msgid "See the help tab for available template tags. Leave blank to disable."
|
2652 |
msgstr ""
|
2653 |
|
2654 |
-
#: /Users/gabriel/Repositories/mycred/
|
2655 |
-
#: /Users/gabriel/Repositories/mycred/
|
2656 |
-
#: /Users/gabriel/Repositories/mycred/
|
2657 |
msgid "Run Import"
|
2658 |
msgstr ""
|
2659 |
|
2660 |
-
#: /Users/gabriel/Repositories/mycred/
|
2661 |
#, php-format
|
2662 |
msgid "Found %d users with CubePoints."
|
2663 |
msgstr ""
|
2664 |
|
2665 |
-
#: /Users/gabriel/Repositories/mycred/
|
2666 |
-
#: /Users/gabriel/Repositories/mycred/
|
2667 |
msgid "Meta Key"
|
2668 |
msgstr ""
|
2669 |
|
2670 |
-
#: /Users/gabriel/Repositories/mycred/
|
2671 |
-
#: /Users/gabriel/Repositories/mycred/
|
2672 |
msgid "Do not round"
|
2673 |
msgstr ""
|
2674 |
|
2675 |
-
#: /Users/gabriel/Repositories/mycred/
|
2676 |
-
#: /Users/gabriel/Repositories/mycred/
|
2677 |
msgid "After Import"
|
2678 |
msgstr ""
|
2679 |
|
2680 |
-
#: /Users/gabriel/Repositories/mycred/
|
2681 |
msgid "Delete users CubePoints balance."
|
2682 |
msgstr ""
|
2683 |
|
2684 |
-
#: /Users/gabriel/Repositories/mycred/
|
2685 |
msgid "Delete the old value."
|
2686 |
msgstr ""
|
2687 |
|
2688 |
-
#: /Users/gabriel/Repositories/mycred/
|
2689 |
msgid "Failed to get file contents."
|
2690 |
msgstr ""
|
2691 |
|
2692 |
-
#: /Users/gabriel/Repositories/mycred/
|
2693 |
msgid "Failed to put file contents."
|
2694 |
msgstr ""
|
2695 |
|
2696 |
-
#: /Users/gabriel/Repositories/mycred/
|
2697 |
msgid ""
|
2698 |
"This add-on lets you import %_plural% either though a CSV-file or from your "
|
2699 |
"database. Remember that the import can take time depending on your file size "
|
2700 |
"or the number of users being imported."
|
2701 |
msgstr ""
|
2702 |
|
2703 |
-
#: /Users/gabriel/Repositories/mycred/
|
2704 |
msgid "CSV Import"
|
2705 |
msgstr ""
|
2706 |
|
2707 |
-
#: /Users/gabriel/Repositories/mycred/
|
2708 |
msgid ""
|
2709 |
"Imports using a comma-separated values file requires the following columns:"
|
2710 |
msgstr ""
|
2711 |
|
2712 |
-
#: /Users/gabriel/Repositories/mycred/
|
2713 |
msgid ""
|
2714 |
"Column identifing the user. All rows must identify the user the same way, "
|
2715 |
"either using an ID, Username (user_login) or email. Users that can not be "
|
2716 |
"found will be ignored."
|
2717 |
msgstr ""
|
2718 |
|
2719 |
-
#: /Users/gabriel/Repositories/mycred/
|
2720 |
msgid ""
|
2721 |
"Column with the amount to be imported. If set, an exchange rate is applied "
|
2722 |
"to this value before import."
|
2723 |
msgstr ""
|
2724 |
|
2725 |
-
#: /Users/gabriel/Repositories/mycred/
|
2726 |
msgid ""
|
2727 |
"Optionally you can also use the <code>mycred_log</code> column to pre-define "
|
2728 |
"the log entry for each import."
|
2729 |
msgstr ""
|
2730 |
|
2731 |
-
#: /Users/gabriel/Repositories/mycred/
|
2732 |
msgid "Cubepoints"
|
2733 |
msgstr ""
|
2734 |
|
2735 |
-
#: /Users/gabriel/Repositories/mycred/
|
2736 |
msgid "Cubepoints Import"
|
2737 |
msgstr ""
|
2738 |
|
2739 |
-
#: /Users/gabriel/Repositories/mycred/
|
2740 |
msgid ""
|
2741 |
"When this page loads, the importer will automatically check if you have been "
|
2742 |
"using Cubepoints. If you have, you can import these with the option to "
|
@@ -2744,344 +2998,345 @@ msgid ""
|
|
2744 |
"clean."
|
2745 |
msgstr ""
|
2746 |
|
2747 |
-
#: /Users/gabriel/Repositories/mycred/
|
2748 |
-
#: /Users/gabriel/Repositories/mycred/
|
2749 |
msgid ""
|
2750 |
"Before a value is imported, you can apply an exchange rate. To import "
|
2751 |
"without changing the value, use 1 as the exchange rate."
|
2752 |
msgstr ""
|
2753 |
|
2754 |
-
#: /Users/gabriel/Repositories/mycred/
|
2755 |
-
#: /Users/gabriel/Repositories/mycred/
|
2756 |
msgid ""
|
2757 |
"You can select to add a log entry for each import or leave the template "
|
2758 |
"empty to skip."
|
2759 |
msgstr ""
|
2760 |
|
2761 |
-
#: /Users/gabriel/Repositories/mycred/
|
2762 |
msgid ""
|
2763 |
"The Cubepoints importer will automatically disable itself if no Cubepoints "
|
2764 |
"installation exists."
|
2765 |
msgstr ""
|
2766 |
|
2767 |
-
#: /Users/gabriel/Repositories/mycred/
|
2768 |
msgid "Custom User Meta Import"
|
2769 |
msgstr ""
|
2770 |
|
2771 |
-
#: /Users/gabriel/Repositories/mycred/
|
2772 |
msgid ""
|
2773 |
"You can import any type of points that have previously been saved in your "
|
2774 |
"database. All you need is the meta key under which it has been saved."
|
2775 |
msgstr ""
|
2776 |
|
2777 |
-
#: /Users/gabriel/Repositories/mycred/
|
2778 |
msgid ""
|
2779 |
"Please note that the meta key is case sensitive and can not contain "
|
2780 |
"whitespaces!"
|
2781 |
msgstr ""
|
2782 |
|
2783 |
-
#: /Users/gabriel/Repositories/mycred/
|
2784 |
-
#: /Users/gabriel/Repositories/mycred/
|
2785 |
msgid "Notifications"
|
2786 |
msgstr ""
|
2787 |
|
2788 |
-
#: /Users/gabriel/Repositories/mycred/
|
2789 |
msgid "Notify your users when their balances changes."
|
2790 |
msgstr ""
|
2791 |
|
2792 |
-
#: /Users/gabriel/Repositories/mycred/
|
2793 |
msgid "Styling"
|
2794 |
msgstr ""
|
2795 |
|
2796 |
-
#: /Users/gabriel/Repositories/mycred/
|
2797 |
msgid "Use the included CSS Styling for notifications."
|
2798 |
msgstr ""
|
2799 |
|
2800 |
-
#: /Users/gabriel/Repositories/mycred/
|
2801 |
msgid ""
|
2802 |
"Use %entry% to show the log entry in the notice and %amount% for the amount."
|
2803 |
msgstr ""
|
2804 |
|
2805 |
-
#: /Users/gabriel/Repositories/mycred/
|
2806 |
msgid "Transient Lifespan"
|
2807 |
msgstr ""
|
2808 |
|
2809 |
-
#: /Users/gabriel/Repositories/mycred/
|
2810 |
msgid ""
|
2811 |
"The number of days a users notification is saved before being automatically "
|
2812 |
"deleted."
|
2813 |
msgstr ""
|
2814 |
|
2815 |
-
#: /Users/gabriel/Repositories/mycred/
|
2816 |
msgid "Duration"
|
2817 |
msgstr ""
|
2818 |
|
2819 |
-
#: /Users/gabriel/Repositories/mycred/
|
2820 |
msgid ""
|
2821 |
"The number of milliseconds a notice should be visible.<br />Use zero to "
|
2822 |
"require that the user closes the notice manually. 1000 milliseconds = 1 "
|
2823 |
"second."
|
2824 |
msgstr ""
|
2825 |
|
2826 |
-
#: /Users/gabriel/Repositories/mycred/
|
2827 |
-
#: /Users/gabriel/Repositories/mycred/
|
2828 |
-
#: /Users/gabriel/Repositories/mycred/
|
2829 |
-
#: /Users/gabriel/Repositories/mycred/
|
2830 |
-
#: /Users/gabriel/Repositories/mycred/
|
2831 |
-
#: /Users/gabriel/Repositories/mycred/
|
2832 |
msgid "Ranks"
|
2833 |
msgstr ""
|
2834 |
|
2835 |
-
#: /Users/gabriel/Repositories/mycred/
|
2836 |
msgid ""
|
2837 |
"Create ranks for users reaching a certain number of points with the option "
|
2838 |
"to add logos for each rank."
|
2839 |
msgstr ""
|
2840 |
|
2841 |
-
#: /Users/gabriel/Repositories/mycred/
|
2842 |
-
#: /Users/gabriel/Repositories/mycred/
|
2843 |
-
#: /Users/gabriel/Repositories/mycred/
|
2844 |
-
#: /Users/gabriel/Repositories/mycred/
|
2845 |
msgid "Rank"
|
2846 |
msgstr ""
|
2847 |
|
2848 |
-
#: /Users/gabriel/Repositories/mycred/
|
2849 |
msgid "Add New Rank"
|
2850 |
msgstr ""
|
2851 |
|
2852 |
-
#: /Users/gabriel/Repositories/mycred/
|
2853 |
msgid "Edit Rank"
|
2854 |
msgstr ""
|
2855 |
|
2856 |
-
#: /Users/gabriel/Repositories/mycred/
|
2857 |
msgid "New Rank"
|
2858 |
msgstr ""
|
2859 |
|
2860 |
-
#: /Users/gabriel/Repositories/mycred/
|
2861 |
msgid "View Rank"
|
2862 |
msgstr ""
|
2863 |
|
2864 |
-
#: /Users/gabriel/Repositories/mycred/
|
2865 |
msgid "Search Ranks"
|
2866 |
msgstr ""
|
2867 |
|
2868 |
-
#: /Users/gabriel/Repositories/mycred/
|
2869 |
msgid "No ranks found"
|
2870 |
msgstr ""
|
2871 |
|
2872 |
-
#: /Users/gabriel/Repositories/mycred/
|
2873 |
msgid "No ranks found in Trash"
|
2874 |
msgstr ""
|
2875 |
|
2876 |
-
#: /Users/gabriel/Repositories/mycred/
|
2877 |
#, php-format
|
2878 |
msgid "Completed - Total of %d users effected"
|
2879 |
msgstr ""
|
2880 |
|
2881 |
-
#: /Users/gabriel/Repositories/mycred/
|
2882 |
msgid "Log is Empty"
|
2883 |
msgstr ""
|
2884 |
|
2885 |
-
#: /Users/gabriel/Repositories/mycred/
|
2886 |
msgid "Newbie"
|
2887 |
msgstr ""
|
2888 |
|
2889 |
-
#: /Users/gabriel/Repositories/mycred/
|
2890 |
-
#: /Users/gabriel/Repositories/mycred/
|
2891 |
#, php-format
|
2892 |
msgid "Rank Updated. View <a href=\"%1$s\">All Ranks</a>."
|
2893 |
msgstr ""
|
2894 |
|
2895 |
-
#: /Users/gabriel/Repositories/mycred/
|
2896 |
msgid "Rank Activated"
|
2897 |
msgstr ""
|
2898 |
|
2899 |
-
#: /Users/gabriel/Repositories/mycred/
|
2900 |
msgid "Rank Saved"
|
2901 |
msgstr ""
|
2902 |
|
2903 |
-
#: /Users/gabriel/Repositories/mycred/
|
2904 |
#, php-format
|
2905 |
msgid "Rank Submitted for approval. View <a href=\"%1$s\">All Ranks</a>."
|
2906 |
msgstr ""
|
2907 |
|
2908 |
-
#: /Users/gabriel/Repositories/mycred/
|
2909 |
#, php-format
|
2910 |
msgid "Rank scheduled for: <strong>%1$s</strong>."
|
2911 |
msgstr ""
|
2912 |
|
2913 |
-
#: /Users/gabriel/Repositories/mycred/
|
2914 |
-
#: /Users/gabriel/Repositories/mycred/
|
2915 |
msgid "Rank Title"
|
2916 |
msgstr ""
|
2917 |
|
2918 |
-
#: /Users/gabriel/Repositories/mycred/
|
2919 |
msgid "Logo"
|
2920 |
msgstr ""
|
2921 |
|
2922 |
-
#: /Users/gabriel/Repositories/mycred/
|
2923 |
msgid "Requirement"
|
2924 |
msgstr ""
|
2925 |
|
2926 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
2927 |
msgid "Users"
|
2928 |
msgstr ""
|
2929 |
|
2930 |
-
#: /Users/gabriel/Repositories/mycred/
|
2931 |
msgid "No Logo Set"
|
2932 |
msgstr ""
|
2933 |
|
2934 |
-
#: /Users/gabriel/Repositories/mycred/
|
2935 |
-
#: /Users/gabriel/Repositories/mycred/
|
2936 |
msgid "Any Value"
|
2937 |
msgstr ""
|
2938 |
|
2939 |
-
#: /Users/gabriel/Repositories/mycred/
|
2940 |
msgid "Maximum %plural%"
|
2941 |
msgstr ""
|
2942 |
|
2943 |
-
#: /Users/gabriel/Repositories/mycred/
|
2944 |
msgid "Rank Settings"
|
2945 |
msgstr ""
|
2946 |
|
2947 |
-
#: /Users/gabriel/Repositories/mycred/
|
2948 |
msgid "Minimum %plural% to reach this rank"
|
2949 |
msgstr ""
|
2950 |
|
2951 |
-
#: /Users/gabriel/Repositories/mycred/
|
2952 |
msgid "Maximum %plural% to be included in this rank"
|
2953 |
msgstr ""
|
2954 |
|
2955 |
-
#: /Users/gabriel/Repositories/mycred/
|
2956 |
msgid "All Published Ranks"
|
2957 |
msgstr ""
|
2958 |
|
2959 |
-
#: /Users/gabriel/Repositories/mycred/
|
2960 |
-
#: /Users/gabriel/Repositories/mycred/
|
2961 |
msgid "Not Set"
|
2962 |
msgstr ""
|
2963 |
|
2964 |
-
#: /Users/gabriel/Repositories/mycred/
|
2965 |
msgid "No Ranks found"
|
2966 |
msgstr ""
|
2967 |
|
2968 |
-
#: /Users/gabriel/Repositories/mycred/
|
2969 |
msgid "Rank Features"
|
2970 |
msgstr ""
|
2971 |
|
2972 |
-
#: /Users/gabriel/Repositories/mycred/
|
2973 |
msgid "%plural% requirement"
|
2974 |
msgstr ""
|
2975 |
|
2976 |
-
#: /Users/gabriel/Repositories/mycred/
|
2977 |
msgid "Featured Image (Logo)"
|
2978 |
msgstr ""
|
2979 |
|
2980 |
-
#: /Users/gabriel/Repositories/mycred/
|
2981 |
msgid "Content"
|
2982 |
msgstr ""
|
2983 |
|
2984 |
-
#: /Users/gabriel/Repositories/mycred/
|
2985 |
msgid "Excerpt"
|
2986 |
msgstr ""
|
2987 |
|
2988 |
-
#: /Users/gabriel/Repositories/mycred/
|
2989 |
msgid "Comments"
|
2990 |
msgstr ""
|
2991 |
|
2992 |
-
#: /Users/gabriel/Repositories/mycred/
|
2993 |
msgid "Page Attributes"
|
2994 |
msgstr ""
|
2995 |
|
2996 |
-
#: /Users/gabriel/Repositories/mycred/
|
2997 |
msgid "Custom Fields"
|
2998 |
msgstr ""
|
2999 |
|
3000 |
-
#: /Users/gabriel/Repositories/mycred/
|
3001 |
msgid "Public"
|
3002 |
msgstr ""
|
3003 |
|
3004 |
-
#: /Users/gabriel/Repositories/mycred/
|
3005 |
msgid ""
|
3006 |
"If you want to create a template archive for each rank, you must select to "
|
3007 |
"have ranks public. Defaults to disabled."
|
3008 |
msgstr ""
|
3009 |
|
3010 |
-
#: /Users/gabriel/Repositories/mycred/
|
3011 |
-
#: /Users/gabriel/Repositories/mycred/
|
3012 |
msgid "Rank Basis"
|
3013 |
msgstr ""
|
3014 |
|
3015 |
-
#: /Users/gabriel/Repositories/mycred/
|
3016 |
msgid "Users are ranked according to their current balance."
|
3017 |
msgstr ""
|
3018 |
|
3019 |
-
#: /Users/gabriel/Repositories/mycred/
|
3020 |
msgid ""
|
3021 |
"Users are ranked according to the total amount of %_plural% they have "
|
3022 |
"accumulated."
|
3023 |
msgstr ""
|
3024 |
|
3025 |
-
#: /Users/gabriel/Repositories/mycred/
|
3026 |
-
#: /Users/gabriel/Repositories/mycred/
|
3027 |
msgid "Calculate Totals"
|
3028 |
msgstr ""
|
3029 |
|
3030 |
-
#: /Users/gabriel/Repositories/mycred/
|
3031 |
msgid ""
|
3032 |
"Use this button to calculate or re-calcualte your users totals. If not used, "
|
3033 |
"the users current balance will be used as a starting point."
|
3034 |
msgstr ""
|
3035 |
|
3036 |
-
#: /Users/gabriel/Repositories/mycred/
|
3037 |
msgid ""
|
3038 |
"Once a users total has been calculated, they will be assigned to their "
|
3039 |
"appropriate roles. For this reason, it is highly recommended that you first "
|
3040 |
"setup your ranks!"
|
3041 |
msgstr ""
|
3042 |
|
3043 |
-
#: /Users/gabriel/Repositories/mycred/
|
3044 |
msgid ""
|
3045 |
"Depending on your log size and number of users this process may take a "
|
3046 |
"while. Please do not leave, click \"Update Settings\" or re-fresh this page "
|
3047 |
"until this is completed!"
|
3048 |
msgstr ""
|
3049 |
|
3050 |
-
#: /Users/gabriel/Repositories/mycred/
|
3051 |
msgid "Archive URL"
|
3052 |
msgstr ""
|
3053 |
|
3054 |
-
#: /Users/gabriel/Repositories/mycred/
|
3055 |
msgid "Ignored if Ranks are not public"
|
3056 |
msgstr ""
|
3057 |
|
3058 |
-
#: /Users/gabriel/Repositories/mycred/
|
3059 |
msgid "Display Order"
|
3060 |
msgstr ""
|
3061 |
|
3062 |
-
#: /Users/gabriel/Repositories/mycred/
|
3063 |
msgid "Ascending - Lowest rank to highest"
|
3064 |
msgstr ""
|
3065 |
|
3066 |
-
#: /Users/gabriel/Repositories/mycred/
|
3067 |
msgid "Descending - Highest rank to lowest"
|
3068 |
msgstr ""
|
3069 |
|
3070 |
-
#: /Users/gabriel/Repositories/mycred/
|
3071 |
msgid ""
|
3072 |
"Select in what order ranks should be displayed in your admin area and/or "
|
3073 |
"front if ranks are \"Public\""
|
3074 |
msgstr ""
|
3075 |
|
3076 |
-
#: /Users/gabriel/Repositories/mycred/
|
3077 |
msgid "Rank in BuddyPress"
|
3078 |
msgstr ""
|
3079 |
|
3080 |
-
#: /Users/gabriel/Repositories/mycred/
|
3081 |
msgid "Script Communication Error"
|
3082 |
msgstr ""
|
3083 |
|
3084 |
-
#: /Users/gabriel/Repositories/mycred/
|
3085 |
msgid ""
|
3086 |
"You can create ranks according to the amount of points a user has. By "
|
3087 |
"default, ranks are only visible in widgets and shortcodes however it is "
|
@@ -3089,7 +3344,7 @@ msgid ""
|
|
3089 |
"specific ones."
|
3090 |
msgstr ""
|
3091 |
|
3092 |
-
#: /Users/gabriel/Repositories/mycred/
|
3093 |
msgid ""
|
3094 |
"As of version 1.2, you can select to rank users according to their current "
|
3095 |
"balance or the total amount of %_plural% they have accumulated. This is "
|
@@ -3097,29 +3352,29 @@ msgid ""
|
|
3097 |
"%_plural% to pay for items in your store or event tickets."
|
3098 |
msgstr ""
|
3099 |
|
3100 |
-
#: /Users/gabriel/Repositories/mycred/
|
3101 |
msgid ""
|
3102 |
"Ranks are just another custom post type which means that you can, if you "
|
3103 |
"select to make Ranks Public, create custom template files for ranks in your "
|
3104 |
"theme folder."
|
3105 |
msgstr ""
|
3106 |
|
3107 |
-
#: /Users/gabriel/Repositories/mycred/
|
3108 |
#, php-format
|
3109 |
msgid ""
|
3110 |
"For more information on Templates for Custom Post Types visit the <a href="
|
3111 |
"\"%s\">WordPress Codex</a>."
|
3112 |
msgstr ""
|
3113 |
|
3114 |
-
#: /Users/gabriel/Repositories/mycred/
|
3115 |
msgid "Changing URL Slug"
|
3116 |
msgstr ""
|
3117 |
|
3118 |
-
#: /Users/gabriel/Repositories/mycred/
|
3119 |
msgid "You can change the URL slug used for ranks to any URL friendly value."
|
3120 |
msgstr ""
|
3121 |
|
3122 |
-
#: /Users/gabriel/Repositories/mycred/
|
3123 |
msgid ""
|
3124 |
"If you are using a custom permalink structure and you make ranks public or "
|
3125 |
"change the slug, you will need to visit your permalink settings page and "
|
@@ -3127,1831 +3382,1726 @@ msgid ""
|
|
3127 |
"a 404 error message when trying to view a rank archive page."
|
3128 |
msgstr ""
|
3129 |
|
3130 |
-
#: /Users/gabriel/Repositories/mycred/
|
3131 |
-
#: /Users/gabriel/Repositories/mycred/
|
3132 |
msgid "No Rank"
|
3133 |
msgstr ""
|
3134 |
|
3135 |
-
#: /Users/gabriel/Repositories/mycred/
|
3136 |
-
#: /Users/gabriel/Repositories/mycred/
|
3137 |
msgid "No users found with this rank"
|
3138 |
msgstr ""
|
3139 |
|
3140 |
-
#: /Users/gabriel/Repositories/mycred/
|
3141 |
-
#: /Users/gabriel/Repositories/mycred/
|
3142 |
-
#: /Users/gabriel/Repositories/mycred/
|
3143 |
-
#: /Users/gabriel/Repositories/mycred/
|
3144 |
-
#: /Users/gabriel/Repositories/mycred/
|
3145 |
-
#: /Users/gabriel/Repositories/mycred/
|
3146 |
-
#: /Users/gabriel/Repositories/mycred/
|
3147 |
msgid "error"
|
3148 |
msgstr ""
|
3149 |
|
3150 |
-
#: /Users/gabriel/Repositories/mycred/
|
3151 |
msgid "Rank ID is required!"
|
3152 |
msgstr ""
|
3153 |
|
3154 |
-
#: /Users/gabriel/Repositories/mycred/
|
3155 |
-
#: /Users/gabriel/Repositories/mycred/
|
3156 |
-
#: /Users/gabriel/Repositories/mycred/
|
3157 |
msgid "Sell Content"
|
3158 |
msgstr ""
|
3159 |
|
3160 |
-
#: /Users/gabriel/Repositories/mycred/
|
3161 |
msgid ""
|
3162 |
"This add-on allows you to sell posts, pages or any public post types on your "
|
3163 |
"website. You can either sell the entire content or using our shortcode, sell "
|
3164 |
"parts of your content allowing you to offer \"teasers\"."
|
3165 |
msgstr ""
|
3166 |
|
3167 |
-
#: /Users/gabriel/Repositories/mycred/
|
3168 |
msgid "<p>Buy this %post_type% for only %price% %buy_button%</p>"
|
3169 |
msgstr ""
|
3170 |
|
3171 |
-
#: /Users/gabriel/Repositories/mycred/
|
3172 |
msgid ""
|
3173 |
"<p><a href=\"%login_url_here%\">Login</a> to buy access to this %post_type%."
|
3174 |
"</p>"
|
3175 |
msgstr ""
|
3176 |
|
3177 |
-
#: /Users/gabriel/Repositories/mycred/
|
3178 |
msgid ""
|
3179 |
"<p>You do not have enough %plural% to buy access to this %post_type%.</p>\n"
|
3180 |
"<p><strong>Price</strong>: %price%</p>"
|
3181 |
msgstr ""
|
3182 |
|
3183 |
-
#: /Users/gabriel/Repositories/mycred/
|
3184 |
msgid "Purchase of %link_with_title%"
|
3185 |
msgstr ""
|
3186 |
|
3187 |
-
#: /Users/gabriel/Repositories/mycred/
|
3188 |
msgid "Sale of %link_with_title%"
|
3189 |
msgstr ""
|
3190 |
|
3191 |
-
#: /Users/gabriel/Repositories/mycred/
|
3192 |
msgid "Hours"
|
3193 |
msgstr ""
|
3194 |
|
3195 |
-
#: /Users/gabriel/Repositories/mycred/
|
3196 |
msgid "You can not buy this content."
|
3197 |
msgstr ""
|
3198 |
|
3199 |
-
#: /Users/gabriel/Repositories/mycred/
|
3200 |
msgid "Error. Try Again"
|
3201 |
msgstr ""
|
3202 |
|
3203 |
-
#: /Users/gabriel/Repositories/mycred/
|
3204 |
msgid "No Payout. Just charge."
|
3205 |
msgstr ""
|
3206 |
|
3207 |
-
#: /Users/gabriel/Repositories/mycred/
|
3208 |
msgid "Pay Content Author."
|
3209 |
msgstr ""
|
3210 |
|
3211 |
-
#: /Users/gabriel/Repositories/mycred/
|
3212 |
msgid "Post Types"
|
3213 |
msgstr ""
|
3214 |
|
3215 |
-
#: /Users/gabriel/Repositories/mycred/
|
3216 |
msgid "Comma separated list of post types that can be sold."
|
3217 |
msgstr ""
|
3218 |
|
3219 |
-
#: /Users/gabriel/Repositories/mycred/
|
3220 |
msgid "Percentage to pay Author"
|
3221 |
msgstr ""
|
3222 |
|
3223 |
-
#: /Users/gabriel/Repositories/mycred/
|
3224 |
msgid ""
|
3225 |
"Percentage of the price to pay the author. Can not be zero and is ignored if "
|
3226 |
"authors are not paid."
|
3227 |
msgstr ""
|
3228 |
|
3229 |
-
#: /Users/gabriel/Repositories/mycred/
|
3230 |
-
#: /Users/gabriel/Repositories/mycred/
|
3231 |
msgid "Defaults"
|
3232 |
msgstr ""
|
3233 |
|
3234 |
-
#: /Users/gabriel/Repositories/mycred/
|
3235 |
msgid "Allow authors to change price."
|
3236 |
msgstr ""
|
3237 |
|
3238 |
-
#: /Users/gabriel/Repositories/mycred/
|
3239 |
msgid "Allow authors to change button label."
|
3240 |
msgstr ""
|
3241 |
|
3242 |
-
#: /Users/gabriel/Repositories/mycred/
|
3243 |
msgid "Purchases expire after"
|
3244 |
msgstr ""
|
3245 |
|
3246 |
-
#: /Users/gabriel/Repositories/mycred/
|
3247 |
msgid "Use zero for permanent sales."
|
3248 |
msgstr ""
|
3249 |
|
3250 |
-
#: /Users/gabriel/Repositories/mycred/
|
3251 |
msgid "Sale Template for non members"
|
3252 |
msgstr ""
|
3253 |
|
3254 |
-
#: /Users/gabriel/Repositories/mycred/
|
3255 |
msgid ""
|
3256 |
"Do <strong>not</strong> use the %buy_button% in this template as a user must "
|
3257 |
"be logged in to buy content!"
|
3258 |
msgstr ""
|
3259 |
|
3260 |
-
#: /Users/gabriel/Repositories/mycred/
|
3261 |
msgid ""
|
3262 |
"Available template tags are: %singular%, %plural%, %post_title%, %post_url%, "
|
3263 |
"%link_with_title%, %price%"
|
3264 |
msgstr ""
|
3265 |
|
3266 |
-
#: /Users/gabriel/Repositories/mycred/
|
3267 |
msgid "Sale Template for members"
|
3268 |
msgstr ""
|
3269 |
|
3270 |
-
#: /Users/gabriel/Repositories/mycred/
|
3271 |
-
#: /Users/gabriel/Repositories/mycred/
|
3272 |
msgid "Your template must contain the %buy_button% tag for purchases to work!"
|
3273 |
msgstr ""
|
3274 |
|
3275 |
-
#: /Users/gabriel/Repositories/mycred/
|
3276 |
-
#: /Users/gabriel/Repositories/mycred/
|
3277 |
msgid ""
|
3278 |
"Available template tags are: %singular%, %plural%, %post_title%, %post_url%, "
|
3279 |
"%link_with_title%, %buy_button%, %price%"
|
3280 |
msgstr ""
|
3281 |
|
3282 |
-
#: /Users/gabriel/Repositories/mycred/
|
3283 |
msgid "Insufficient funds template"
|
3284 |
msgstr ""
|
3285 |
|
3286 |
-
#: /Users/gabriel/Repositories/mycred/
|
3287 |
msgid "Log template for Purchases"
|
3288 |
msgstr ""
|
3289 |
|
3290 |
-
#: /Users/gabriel/Repositories/mycred/
|
3291 |
-
#: /Users/gabriel/Repositories/mycred/
|
3292 |
msgid ""
|
3293 |
"Available template tags are: %singular%, %plural%, %post_title%, %post_url% "
|
3294 |
"or %link_with_title%"
|
3295 |
msgstr ""
|
3296 |
|
3297 |
-
#: /Users/gabriel/Repositories/mycred/
|
3298 |
msgid "Log template for Sales"
|
3299 |
msgstr ""
|
3300 |
|
3301 |
-
#: /Users/gabriel/Repositories/mycred/
|
3302 |
msgid "Sell This"
|
3303 |
msgstr ""
|
3304 |
|
3305 |
-
#: /Users/gabriel/Repositories/mycred/
|
3306 |
msgid " Sell Content needs to be setup before you can use this feature."
|
3307 |
msgstr ""
|
3308 |
|
3309 |
-
#: /Users/gabriel/Repositories/mycred/
|
3310 |
msgid "Setup add-on"
|
3311 |
msgstr ""
|
3312 |
|
3313 |
-
#: /Users/gabriel/Repositories/mycred/
|
3314 |
msgid "Lets do it"
|
3315 |
msgstr ""
|
3316 |
|
3317 |
-
#: /Users/gabriel/Repositories/mycred/
|
3318 |
msgid "Enable sale of this "
|
3319 |
msgstr ""
|
3320 |
|
3321 |
-
#: /Users/gabriel/Repositories/mycred/
|
3322 |
msgid "Purchase expires after"
|
3323 |
msgstr ""
|
3324 |
|
3325 |
-
#: /Users/gabriel/Repositories/mycred/
|
3326 |
msgid "Thank you for your purchase!"
|
3327 |
msgstr ""
|
3328 |
|
3329 |
-
#: /Users/gabriel/Repositories/mycred/
|
3330 |
-
#: /Users/gabriel/Repositories/mycred/
|
3331 |
msgid "The following content is set for sale:"
|
3332 |
msgstr ""
|
3333 |
|
3334 |
-
#: /Users/gabriel/Repositories/mycred/
|
3335 |
msgid "No purchases found"
|
3336 |
msgstr ""
|
3337 |
|
3338 |
-
#: /Users/gabriel/Repositories/mycred/
|
3339 |
msgid "Purchased"
|
3340 |
msgstr ""
|
3341 |
|
3342 |
-
#: /Users/gabriel/Repositories/mycred/
|
3343 |
msgid ""
|
3344 |
"This add-on lets you sell either entire contents or parts of it. You can "
|
3345 |
"select if you want to just charge users or share a percentage of the sale "
|
3346 |
"with the post author."
|
3347 |
msgstr ""
|
3348 |
|
3349 |
-
#: /Users/gabriel/Repositories/mycred/
|
3350 |
msgid ""
|
3351 |
"The default price and button label is applied to all content that is set for "
|
3352 |
"sale. You can select if you want to enforce these settings or let the "
|
3353 |
"content authors set their own."
|
3354 |
msgstr ""
|
3355 |
|
3356 |
-
#: /Users/gabriel/Repositories/mycred/
|
3357 |
msgid ""
|
3358 |
"You can either sell entire posts via the Sell Content Meta Box or by using "
|
3359 |
"the <code>mycred_sell_this</code> shortcode.<br />For more information on "
|
3360 |
"how to use the shortcode, please visit the"
|
3361 |
msgstr ""
|
3362 |
|
3363 |
-
#: /Users/gabriel/Repositories/mycred/
|
3364 |
-
#: /Users/gabriel/Repositories/mycred/
|
3365 |
-
#: /Users/gabriel/Repositories/mycred/
|
3366 |
msgid "Transfer"
|
3367 |
msgstr ""
|
3368 |
|
3369 |
-
#: /Users/gabriel/Repositories/mycred/
|
3370 |
msgid ""
|
3371 |
"Allow your users to send or \"donate\" points to other members by either "
|
3372 |
"using the mycred_transfer shortcode or the myCRED Transfer widget."
|
3373 |
msgstr ""
|
3374 |
|
3375 |
-
#: /Users/gabriel/Repositories/mycred/
|
3376 |
msgid "You do not have enough %plural% to send."
|
3377 |
msgstr ""
|
3378 |
|
3379 |
-
#: /Users/gabriel/Repositories/mycred/
|
3380 |
msgid "You have exceeded your %limit% transfer limit."
|
3381 |
msgstr ""
|
3382 |
|
3383 |
-
#: /Users/gabriel/Repositories/mycred/
|
3384 |
msgid "Transaction completed."
|
3385 |
msgstr ""
|
3386 |
|
3387 |
-
#: /Users/gabriel/Repositories/mycred/
|
3388 |
msgid ""
|
3389 |
"Security token could not be verified. Please contact your site administrator!"
|
3390 |
msgstr ""
|
3391 |
|
3392 |
-
#: /Users/gabriel/Repositories/mycred/
|
3393 |
msgid "Communications error. Please try again later."
|
3394 |
msgstr ""
|
3395 |
|
3396 |
-
#: /Users/gabriel/Repositories/mycred/
|
3397 |
msgid "Recipient not found. Please try again."
|
3398 |
msgstr ""
|
3399 |
|
3400 |
-
#: /Users/gabriel/Repositories/mycred/
|
3401 |
msgid "Transaction declined by recipient."
|
3402 |
msgstr ""
|
3403 |
|
3404 |
-
#: /Users/gabriel/Repositories/mycred/
|
3405 |
msgid "Incorrect amount. Please try again."
|
3406 |
msgstr ""
|
3407 |
|
3408 |
-
#: /Users/gabriel/Repositories/mycred/
|
3409 |
msgid ""
|
3410 |
"This myCRED Add-on has not yet been setup! No transfers are allowed until "
|
3411 |
"this has been done!"
|
3412 |
msgstr ""
|
3413 |
|
3414 |
-
#: /Users/gabriel/Repositories/mycred/
|
3415 |
msgid "Insufficient funds. Please enter a lower amount."
|
3416 |
msgstr ""
|
3417 |
|
3418 |
-
#: /Users/gabriel/Repositories/mycred/
|
3419 |
msgid "Transfer Limit exceeded."
|
3420 |
msgstr ""
|
3421 |
|
3422 |
-
#: /Users/gabriel/Repositories/mycred/
|
3423 |
msgid ""
|
3424 |
"The request amount will exceed your transfer limit. Please try again with a "
|
3425 |
"lower amount!"
|
3426 |
msgstr ""
|
3427 |
|
3428 |
-
#: /Users/gabriel/Repositories/mycred/
|
3429 |
msgid "No limits."
|
3430 |
msgstr ""
|
3431 |
|
3432 |
-
#: /Users/gabriel/Repositories/mycred/
|
3433 |
msgid "Impose daily limit."
|
3434 |
msgstr ""
|
3435 |
|
3436 |
-
#: /Users/gabriel/Repositories/mycred/
|
3437 |
msgid "Impose weekly limit."
|
3438 |
msgstr ""
|
3439 |
|
3440 |
-
#: /Users/gabriel/Repositories/mycred/
|
3441 |
-
#: /Users/gabriel/Repositories/mycred/
|
3442 |
msgid "Transfer %plural%"
|
3443 |
msgstr ""
|
3444 |
|
3445 |
-
#: /Users/gabriel/Repositories/mycred/
|
3446 |
msgid "Log template for sending"
|
3447 |
msgstr ""
|
3448 |
|
3449 |
-
#: /Users/gabriel/Repositories/mycred/
|
3450 |
msgid "Log template for receiving"
|
3451 |
msgstr ""
|
3452 |
|
3453 |
-
#: /Users/gabriel/Repositories/mycred/
|
3454 |
-
#: /Users/gabriel/Repositories/mycred/
|
3455 |
-
#: /Users/gabriel/Repositories/mycred/
|
3456 |
msgid "Limits"
|
3457 |
msgstr ""
|
3458 |
|
3459 |
-
#: /Users/gabriel/Repositories/mycred/
|
3460 |
msgid "Maximum Amount"
|
3461 |
msgstr ""
|
3462 |
|
3463 |
-
#: /Users/gabriel/Repositories/mycred/
|
3464 |
msgid "This amount is ignored if no limits are imposed."
|
3465 |
msgstr ""
|
3466 |
|
3467 |
-
#: /Users/gabriel/Repositories/mycred/
|
3468 |
msgid "Form Templates"
|
3469 |
msgstr ""
|
3470 |
|
3471 |
-
#: /Users/gabriel/Repositories/mycred/
|
3472 |
msgid "Not logged in Template"
|
3473 |
msgstr ""
|
3474 |
|
3475 |
-
#: /Users/gabriel/Repositories/mycred/
|
3476 |
msgid ""
|
3477 |
"Text to show when users are not logged in. Leave empty to hide. No HTML "
|
3478 |
"elements allowed!"
|
3479 |
msgstr ""
|
3480 |
|
3481 |
-
#: /Users/gabriel/Repositories/mycred/
|
3482 |
msgid "Balance Template"
|
3483 |
msgstr ""
|
3484 |
|
3485 |
-
#: /Users/gabriel/Repositories/mycred/
|
3486 |
msgid ""
|
3487 |
"Template to use when displaying the users balance (if included). No HTML "
|
3488 |
"elements allowed!"
|
3489 |
msgstr ""
|
3490 |
|
3491 |
-
#: /Users/gabriel/Repositories/mycred/
|
3492 |
msgid "Limit Template"
|
3493 |
msgstr ""
|
3494 |
|
3495 |
-
#: /Users/gabriel/Repositories/mycred/
|
3496 |
msgid ""
|
3497 |
"Template to use when displaying limits (if used). No HTML elements allowed!"
|
3498 |
msgstr ""
|
3499 |
|
3500 |
-
#: /Users/gabriel/Repositories/mycred/
|
3501 |
msgid "Button Template"
|
3502 |
msgstr ""
|
3503 |
|
3504 |
-
#: /Users/gabriel/Repositories/mycred/
|
3505 |
msgid "Send Transfer button template. No HTML elements allowed!"
|
3506 |
msgstr ""
|
3507 |
|
3508 |
-
#: /Users/gabriel/Repositories/mycred/
|
3509 |
msgid "Error Messages"
|
3510 |
msgstr ""
|
3511 |
|
3512 |
-
#: /Users/gabriel/Repositories/mycred/
|
3513 |
msgid "Balance to low to send."
|
3514 |
msgstr ""
|
3515 |
|
3516 |
-
#: /Users/gabriel/Repositories/mycred/
|
3517 |
msgid ""
|
3518 |
"Text to show when a users balance is to low for transfers. Leave empty to "
|
3519 |
"hide. No HTML elements allowed!"
|
3520 |
msgstr ""
|
3521 |
|
3522 |
-
#: /Users/gabriel/Repositories/mycred/
|
3523 |
msgid "Transfer Limit Reached."
|
3524 |
msgstr ""
|
3525 |
|
3526 |
-
#: /Users/gabriel/Repositories/mycred/
|
3527 |
msgid ""
|
3528 |
"Text to show when a user has reached their transfer limit (if used). Leave "
|
3529 |
"empty to hide. No HTML elements allowed!"
|
3530 |
msgstr ""
|
3531 |
|
3532 |
-
#: /Users/gabriel/Repositories/mycred/
|
3533 |
msgid ""
|
3534 |
"This add-on lets your users transfer %_plural% to each other. Members who "
|
3535 |
"are set to be excluded can neither send or receive %_plural%."
|
3536 |
msgstr ""
|
3537 |
|
3538 |
-
#: /Users/gabriel/Repositories/mycred/
|
3539 |
msgid "Transfer Limit"
|
3540 |
msgstr ""
|
3541 |
|
3542 |
-
#: /Users/gabriel/Repositories/mycred/
|
3543 |
msgid ""
|
3544 |
"You can impose a daily-, weekly- or monthly transfer limit for each user. "
|
3545 |
"Note, that this transfer limit is imposed on everyone who are not excluded "
|
3546 |
"from using myCRED."
|
3547 |
msgstr ""
|
3548 |
|
3549 |
-
#: /Users/gabriel/Repositories/mycred/
|
3550 |
msgid ""
|
3551 |
"Transfers can be made by either using the <code>mycred_transfer</code> "
|
3552 |
"shortcode or via the myCRED Transfer Widget.<br />For more information on "
|
3553 |
"how to use the shortcode, please visit the"
|
3554 |
msgstr ""
|
3555 |
|
3556 |
-
#: /Users/gabriel/Repositories/mycred/
|
3557 |
msgid "Allow transfers between users."
|
3558 |
msgstr ""
|
3559 |
|
3560 |
-
#: /Users/gabriel/Repositories/mycred/
|
3561 |
#, php-format
|
3562 |
msgid "%s Transfer"
|
3563 |
msgstr ""
|
3564 |
|
3565 |
-
#: /Users/gabriel/Repositories/mycred/
|
3566 |
msgid "The myCRED Transfer add-on has not yet been setup!"
|
3567 |
msgstr ""
|
3568 |
|
3569 |
-
#: /Users/gabriel/Repositories/mycred/
|
3570 |
msgid "Show users balance"
|
3571 |
msgstr ""
|
3572 |
|
3573 |
-
#: /Users/gabriel/Repositories/mycred/
|
3574 |
msgid "Show users limit"
|
3575 |
msgstr ""
|
3576 |
|
3577 |
-
#: /Users/gabriel/Repositories/mycred/
|
3578 |
msgid "To:"
|
3579 |
msgstr ""
|
3580 |
|
3581 |
-
#: /Users/gabriel/Repositories/mycred/
|
3582 |
msgid "Amount:"
|
3583 |
msgstr ""
|
3584 |
|
3585 |
-
#: /Users/gabriel/Repositories/mycred/
|
3586 |
msgid "User is excluded"
|
3587 |
msgstr ""
|
3588 |
|
3589 |
-
#: /Users/gabriel/Repositories/mycred/
|
3590 |
msgid "Log Entry can not be empty"
|
3591 |
msgstr ""
|
3592 |
|
3593 |
-
#: /Users/gabriel/Repositories/mycred/
|
3594 |
msgid "Amount can not be zero"
|
3595 |
msgstr ""
|
3596 |
|
3597 |
-
#: /Users/gabriel/Repositories/mycred/
|
3598 |
msgid "Excluded"
|
3599 |
msgstr ""
|
3600 |
|
3601 |
-
#: /Users/gabriel/Repositories/mycred/
|
3602 |
msgid "History"
|
3603 |
msgstr ""
|
3604 |
|
3605 |
-
#: /Users/gabriel/Repositories/mycred/
|
3606 |
msgid "Adjust"
|
3607 |
msgstr ""
|
3608 |
|
3609 |
-
#: /Users/gabriel/Repositories/mycred/
|
3610 |
#, php-format
|
3611 |
msgid "My current %singular% balance"
|
3612 |
msgstr ""
|
3613 |
|
3614 |
-
#: /Users/gabriel/Repositories/mycred/
|
3615 |
msgid "Adjust Your Balance"
|
3616 |
msgstr ""
|
3617 |
|
3618 |
-
#: /Users/gabriel/Repositories/mycred/
|
3619 |
msgid "Adjust Users Balance"
|
3620 |
msgstr ""
|
3621 |
|
3622 |
-
#: /Users/gabriel/Repositories/mycred/
|
3623 |
-
#: /Users/gabriel/Repositories/mycred/
|
3624 |
msgid "required"
|
3625 |
msgstr ""
|
3626 |
|
3627 |
-
#: /Users/gabriel/Repositories/mycred/
|
3628 |
-
#: /Users/gabriel/Repositories/mycred/
|
3629 |
msgid "optional"
|
3630 |
msgstr ""
|
3631 |
|
3632 |
-
#: /Users/gabriel/Repositories/mycred/
|
3633 |
msgid "Log description for adjustment"
|
3634 |
msgstr ""
|
3635 |
|
3636 |
-
#: /Users/gabriel/Repositories/mycred/
|
3637 |
msgid "Update"
|
3638 |
msgstr ""
|
3639 |
|
3640 |
-
#: /Users/gabriel/Repositories/mycred/
|
3641 |
msgid "Description is required!"
|
3642 |
msgstr ""
|
3643 |
|
3644 |
-
#: /Users/gabriel/Repositories/mycred/
|
3645 |
msgid "Users Current Balance"
|
3646 |
msgstr ""
|
3647 |
|
3648 |
-
#: /Users/gabriel/Repositories/mycred/
|
3649 |
msgid "A positive or negative value"
|
3650 |
msgstr ""
|
3651 |
|
3652 |
-
#: /Users/gabriel/Repositories/mycred/
|
3653 |
msgid "Update Balance"
|
3654 |
msgstr ""
|
3655 |
|
3656 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3657 |
msgid "Deleted"
|
3658 |
msgstr ""
|
3659 |
|
3660 |
-
#: /Users/gabriel/Repositories/mycred/
|
3661 |
msgid "Deleted Item"
|
3662 |
msgstr ""
|
3663 |
|
3664 |
-
#: /Users/gabriel/Repositories/mycred/
|
3665 |
msgid "ref empty"
|
3666 |
msgstr ""
|
3667 |
|
3668 |
-
#: /Users/gabriel/Repositories/mycred/
|
3669 |
msgid "incorrect user id format"
|
3670 |
msgstr ""
|
3671 |
|
3672 |
-
#: /Users/gabriel/Repositories/mycred/
|
3673 |
msgid "incorrect unix timestamp (from):"
|
3674 |
msgstr ""
|
3675 |
|
3676 |
-
#: /Users/gabriel/Repositories/mycred/
|
3677 |
msgid "incorrect unix timestamp (to):"
|
3678 |
msgstr ""
|
3679 |
|
3680 |
-
#: /Users/gabriel/Repositories/mycred/
|
3681 |
msgid "myCRED requires WordPress 3.1 or higher. Version detected:"
|
3682 |
msgstr ""
|
3683 |
|
3684 |
-
#: /Users/gabriel/Repositories/mycred/
|
3685 |
msgid "myCRED requires PHP 5.2.0 or higher. Version detected: "
|
3686 |
msgstr ""
|
3687 |
|
3688 |
-
#: /Users/gabriel/Repositories/mycred/
|
3689 |
msgid "myCRED requires SQL 5.0 or higher. Version detected: "
|
3690 |
msgstr ""
|
3691 |
|
3692 |
-
#: /Users/gabriel/Repositories/mycred/
|
3693 |
msgid ""
|
3694 |
"Sorry but your WordPress installation does not reach the minimum "
|
3695 |
"requirements for running myCRED. The following errors were given:"
|
3696 |
msgstr ""
|
3697 |
|
3698 |
-
#: /Users/gabriel/Repositories/mycred/
|
3699 |
msgid "myCRED needs your attention."
|
3700 |
msgstr ""
|
3701 |
|
3702 |
-
#: /Users/gabriel/Repositories/mycred/
|
3703 |
msgid "Run Setup"
|
3704 |
msgstr ""
|
3705 |
|
3706 |
-
#: /Users/gabriel/Repositories/mycred/
|
3707 |
-
#: /Users/gabriel/Repositories/mycred/
|
3708 |
msgid "myCRED Setup"
|
3709 |
msgstr ""
|
3710 |
|
3711 |
-
#: /Users/gabriel/Repositories/mycred/
|
3712 |
msgid "Step"
|
3713 |
msgstr ""
|
3714 |
|
3715 |
-
#: /Users/gabriel/Repositories/mycred/
|
3716 |
msgid ""
|
3717 |
"Click \"Begin Setup\" to install myCRED. You will be able to select your "
|
3718 |
"points format, layout and security settings."
|
3719 |
msgstr ""
|
3720 |
|
3721 |
-
#: /Users/gabriel/Repositories/mycred/
|
3722 |
msgid "Begin Setup"
|
3723 |
msgstr ""
|
3724 |
|
3725 |
-
#: /Users/gabriel/Repositories/mycred/
|
3726 |
msgid "Select the format you want to use for your points."
|
3727 |
msgstr ""
|
3728 |
|
3729 |
-
#: /Users/gabriel/Repositories/mycred/
|
3730 |
-
#: /Users/gabriel/Repositories/mycred/
|
3731 |
msgid "Format"
|
3732 |
msgstr ""
|
3733 |
|
3734 |
-
#: /Users/gabriel/Repositories/mycred/
|
3735 |
msgid "Separators"
|
3736 |
msgstr ""
|
3737 |
|
3738 |
-
#: /Users/gabriel/Repositories/mycred/
|
3739 |
msgid "Decimals"
|
3740 |
msgstr ""
|
3741 |
|
3742 |
-
#: /Users/gabriel/Repositories/mycred/
|
3743 |
msgid "Use zero for no decimals."
|
3744 |
msgstr ""
|
3745 |
|
3746 |
-
#: /Users/gabriel/Repositories/mycred/
|
3747 |
-
#: /Users/gabriel/Repositories/mycred/
|
3748 |
msgid "Presentation"
|
3749 |
msgstr ""
|
3750 |
|
3751 |
-
#: /Users/gabriel/Repositories/mycred/
|
3752 |
-
#: /Users/gabriel/Repositories/mycred/
|
3753 |
msgid "Name (Singular)"
|
3754 |
msgstr ""
|
3755 |
|
3756 |
-
#: /Users/gabriel/Repositories/mycred/
|
3757 |
-
#: /Users/gabriel/Repositories/mycred/
|
3758 |
msgid "Name (Plural)"
|
3759 |
msgstr ""
|
3760 |
|
3761 |
-
#: /Users/gabriel/Repositories/mycred/
|
3762 |
-
#: /Users/gabriel/Repositories/mycred/
|
3763 |
msgid "Prefix"
|
3764 |
msgstr ""
|
3765 |
|
3766 |
-
#: /Users/gabriel/Repositories/mycred/
|
3767 |
-
#: /Users/gabriel/Repositories/mycred/
|
3768 |
msgid "Suffix"
|
3769 |
msgstr ""
|
3770 |
|
3771 |
-
#: /Users/gabriel/Repositories/mycred/
|
3772 |
msgid "Cancel Setup"
|
3773 |
msgstr ""
|
3774 |
|
3775 |
-
#: /Users/gabriel/Repositories/mycred/
|
3776 |
msgid "Cancel"
|
3777 |
msgstr ""
|
3778 |
|
3779 |
-
#: /Users/gabriel/Repositories/mycred/
|
3780 |
-
#: /Users/gabriel/Repositories/mycred/
|
3781 |
msgid "Next"
|
3782 |
msgstr ""
|
3783 |
|
3784 |
-
#: /Users/gabriel/Repositories/mycred/
|
3785 |
-
#: /Users/gabriel/Repositories/mycred/
|
3786 |
msgid "Security"
|
3787 |
msgstr ""
|
3788 |
|
3789 |
-
#: /Users/gabriel/Repositories/mycred/
|
3790 |
msgid "Edit Settings Capability"
|
3791 |
msgstr ""
|
3792 |
|
3793 |
-
#: /Users/gabriel/Repositories/mycred/
|
3794 |
msgid "Edit Users %plural% Capability"
|
3795 |
msgstr ""
|
3796 |
|
3797 |
-
#: /Users/gabriel/Repositories/mycred/
|
3798 |
-
#: /Users/gabriel/Repositories/mycred/
|
3799 |
msgid "Exclude those who can \"Edit Settings\"."
|
3800 |
msgstr ""
|
3801 |
|
3802 |
-
#: /Users/gabriel/Repositories/mycred/
|
3803 |
-
#: /Users/gabriel/Repositories/mycred/
|
3804 |
msgid "Exclude those who can \"Edit Users %plural%\"."
|
3805 |
msgstr ""
|
3806 |
|
3807 |
-
#: /Users/gabriel/Repositories/mycred/
|
3808 |
-
#: /Users/gabriel/Repositories/mycred/
|
3809 |
msgid "Exclude the following user IDs:"
|
3810 |
msgstr ""
|
3811 |
|
3812 |
-
#: /Users/gabriel/Repositories/mycred/
|
3813 |
-
#: /Users/gabriel/Repositories/mycred/
|
3814 |
msgid "Rankings"
|
3815 |
msgstr ""
|
3816 |
|
3817 |
-
#: /Users/gabriel/Repositories/mycred/
|
3818 |
-
#: /Users/gabriel/Repositories/mycred/
|
3819 |
msgid "Update rankings each time a users balance changes."
|
3820 |
msgstr ""
|
3821 |
|
3822 |
-
#: /Users/gabriel/Repositories/mycred/
|
3823 |
-
#: /Users/gabriel/Repositories/mycred/
|
3824 |
msgid "Update rankings once a day."
|
3825 |
msgstr ""
|
3826 |
|
3827 |
-
#: /Users/gabriel/Repositories/mycred/
|
3828 |
-
#: /Users/gabriel/Repositories/mycred/
|
3829 |
msgid "Update rankings once a week."
|
3830 |
msgstr ""
|
3831 |
|
3832 |
-
#: /Users/gabriel/Repositories/mycred/
|
3833 |
-
#: /Users/gabriel/Repositories/mycred/
|
3834 |
msgid "Update rankings on a specific date."
|
3835 |
msgstr ""
|
3836 |
|
3837 |
-
#: /Users/gabriel/Repositories/mycred/
|
3838 |
-
#: /Users/gabriel/Repositories/mycred/
|
3839 |
-
#: /Users/gabriel/Repositories/mycred/
|
3840 |
msgid "Date"
|
3841 |
msgstr ""
|
3842 |
|
3843 |
-
#: /Users/gabriel/Repositories/mycred/
|
3844 |
msgid "Ready"
|
3845 |
msgstr ""
|
3846 |
|
3847 |
-
#: /Users/gabriel/Repositories/mycred/
|
3848 |
msgid "Almost done! Click the button below to finish this setup."
|
3849 |
msgstr ""
|
3850 |
|
3851 |
-
#: /Users/gabriel/Repositories/mycred/
|
3852 |
msgid "Install & Run"
|
3853 |
msgstr ""
|
3854 |
|
3855 |
-
#: /Users/gabriel/Repositories/mycred/
|
3856 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3857 |
msgid "Network Settings"
|
3858 |
msgstr ""
|
3859 |
|
3860 |
-
#: /Users/gabriel/Repositories/mycred/
|
3861 |
msgid "Network"
|
3862 |
msgstr ""
|
3863 |
|
3864 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
3865 |
msgid "Network Settings Updated"
|
3866 |
msgstr ""
|
3867 |
|
3868 |
-
#: /Users/gabriel/Repositories/mycred/
|
3869 |
#, php-format
|
3870 |
msgid "Configure network settings for %s."
|
3871 |
msgstr ""
|
3872 |
|
3873 |
-
#: /Users/gabriel/Repositories/mycred/
|
3874 |
msgid "Master Template"
|
3875 |
msgstr ""
|
3876 |
|
3877 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
3878 |
msgid "Yes"
|
3879 |
msgstr ""
|
3880 |
|
3881 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
3882 |
msgid "No"
|
3883 |
msgstr ""
|
3884 |
|
3885 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3886 |
#, php-format
|
3887 |
-
msgid "If enabled,
|
3888 |
msgstr ""
|
3889 |
|
3890 |
-
#: /Users/gabriel/Repositories/mycred/
|
3891 |
msgid "Site Block"
|
3892 |
msgstr ""
|
3893 |
|
3894 |
-
#: /Users/gabriel/Repositories/mycred/
|
3895 |
#, php-format
|
3896 |
msgid "Comma separated list of blog ids where %s is to be disabled."
|
3897 |
msgstr ""
|
3898 |
|
3899 |
-
#: /Users/gabriel/Repositories/mycred/
|
3900 |
msgid "Save Network Settings"
|
3901 |
msgstr ""
|
3902 |
|
3903 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3904 |
msgid "Leaderboard is empty."
|
3905 |
msgstr ""
|
3906 |
|
3907 |
-
#: /Users/gabriel/Repositories/mycred/
|
3908 |
-
#: /Users/gabriel/Repositories/mycred/
|
3909 |
msgid "Amount missing!"
|
3910 |
msgstr ""
|
3911 |
|
3912 |
-
#: /Users/gabriel/Repositories/mycred/
|
3913 |
-
#: /Users/gabriel/Repositories/mycred/
|
3914 |
msgid "Log Template Missing!"
|
3915 |
msgstr ""
|
3916 |
|
3917 |
-
#: /Users/gabriel/Repositories/mycred/
|
3918 |
msgid "Anchor missing URL!"
|
3919 |
msgstr ""
|
3920 |
|
3921 |
-
#: /Users/gabriel/Repositories/mycred/
|
3922 |
msgid "User ID missing for recipient."
|
3923 |
msgstr ""
|
3924 |
|
3925 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3926 |
msgid "A video ID is required for this shortcode"
|
3927 |
msgstr ""
|
3928 |
|
3929 |
-
#: /Users/gabriel/Repositories/mycred/
|
3930 |
#, php-format
|
3931 |
msgid "Show the current users %s balance"
|
3932 |
msgstr ""
|
3933 |
|
3934 |
-
#: /Users/gabriel/Repositories/mycred/
|
3935 |
#, php-format
|
3936 |
msgid "%s Balance"
|
3937 |
msgstr ""
|
3938 |
|
3939 |
-
#: /Users/gabriel/Repositories/mycred/
|
3940 |
msgid "My Balance"
|
3941 |
msgstr ""
|
3942 |
|
3943 |
-
#: /Users/gabriel/Repositories/mycred/
|
3944 |
msgid "<a href=\"%login_url_here%\">Login</a> to view your balance."
|
3945 |
msgstr ""
|
3946 |
|
3947 |
-
#: /Users/gabriel/Repositories/mycred/
|
3948 |
msgid "Layout"
|
3949 |
msgstr ""
|
3950 |
|
3951 |
-
#: /Users/gabriel/Repositories/mycred/
|
3952 |
-
#: /Users/gabriel/Repositories/mycred/
|
3953 |
-
#: /Users/gabriel/Repositories/mycred/
|
3954 |
-
#: /Users/gabriel/Repositories/mycred/
|
3955 |
msgid "See the help tab for available template tags."
|
3956 |
msgstr ""
|
3957 |
|
3958 |
-
#: /Users/gabriel/Repositories/mycred/
|
3959 |
msgid "Include users ranking"
|
3960 |
msgstr ""
|
3961 |
|
3962 |
-
#: /Users/gabriel/Repositories/mycred/
|
3963 |
msgid ""
|
3964 |
"This will be appended after the balance. See the help tab for available "
|
3965 |
"template tags."
|
3966 |
msgstr ""
|
3967 |
|
3968 |
-
#: /Users/gabriel/Repositories/mycred/
|
3969 |
msgid "Include history"
|
3970 |
msgstr ""
|
3971 |
|
3972 |
-
#: /Users/gabriel/Repositories/mycred/
|
3973 |
msgid "History Title"
|
3974 |
msgstr ""
|
3975 |
|
3976 |
-
#: /Users/gabriel/Repositories/mycred/
|
3977 |
msgid "Number of entires"
|
3978 |
msgstr ""
|
3979 |
|
3980 |
-
#: /Users/gabriel/Repositories/mycred/
|
3981 |
-
#: /Users/gabriel/Repositories/mycred/
|
3982 |
msgid "Row layout"
|
3983 |
msgstr ""
|
3984 |
|
3985 |
-
#: /Users/gabriel/Repositories/mycred/
|
3986 |
msgid "Show message when not logged in"
|
3987 |
msgstr ""
|
3988 |
|
3989 |
-
#: /Users/gabriel/Repositories/mycred/
|
3990 |
msgid "Message"
|
3991 |
msgstr ""
|
3992 |
|
3993 |
-
#: /Users/gabriel/Repositories/mycred/
|
3994 |
#, php-format
|
3995 |
msgid "Show a list of users sorted by their %s balance"
|
3996 |
msgstr ""
|
3997 |
|
3998 |
-
#: /Users/gabriel/Repositories/mycred/
|
3999 |
#, php-format
|
4000 |
msgid "%s List"
|
4001 |
msgstr ""
|
4002 |
|
4003 |
-
#: /Users/gabriel/Repositories/mycred/
|
4004 |
msgid "Leaderboard"
|
4005 |
msgstr ""
|
4006 |
|
4007 |
-
#: /Users/gabriel/Repositories/mycred/
|
4008 |
msgid "Visible to non-members"
|
4009 |
msgstr ""
|
4010 |
|
4011 |
-
#: /Users/gabriel/Repositories/mycred/
|
4012 |
msgid "Number of users"
|
4013 |
msgstr ""
|
4014 |
|
4015 |
-
#: /Users/gabriel/Repositories/mycred/
|
4016 |
msgid "Offset"
|
4017 |
msgstr ""
|
4018 |
|
4019 |
-
#: /Users/gabriel/Repositories/mycred/
|
4020 |
msgid "Optional offset of order. Use zero to return the first in the list."
|
4021 |
msgstr ""
|
4022 |
|
4023 |
-
#: /Users/gabriel/Repositories/mycred/
|
4024 |
msgid "Order"
|
4025 |
msgstr ""
|
4026 |
|
4027 |
-
#: /Users/gabriel/Repositories/mycred/
|
4028 |
-
#: /Users/gabriel/Repositories/mycred/
|
4029 |
msgid "Ascending"
|
4030 |
msgstr ""
|
4031 |
|
4032 |
-
#: /Users/gabriel/Repositories/mycred/
|
4033 |
-
#: /Users/gabriel/Repositories/mycred/
|
4034 |
msgid "Descending"
|
4035 |
msgstr ""
|
4036 |
|
4037 |
-
#: /Users/gabriel/Repositories/mycred/
|
4038 |
-
#: /Users/gabriel/Repositories/mycred/
|
4039 |
-
#: /Users/gabriel/Repositories/mycred/
|
4040 |
-
#: /Users/gabriel/Repositories/mycred/
|
4041 |
msgid "Add-ons"
|
4042 |
msgstr ""
|
4043 |
|
4044 |
-
#: /Users/gabriel/Repositories/mycred/
|
4045 |
msgid "Add-on Activated"
|
4046 |
msgstr ""
|
4047 |
|
4048 |
-
#: /Users/gabriel/Repositories/mycred/
|
4049 |
msgid "Add-on Deactivated"
|
4050 |
msgstr ""
|
4051 |
|
4052 |
-
#: /Users/gabriel/Repositories/mycred/
|
4053 |
msgid "Add-ons can expand your current installation with further features."
|
4054 |
msgstr ""
|
4055 |
|
4056 |
-
#: /Users/gabriel/Repositories/mycred/
|
4057 |
#, php-format
|
4058 |
msgid "You can find more add-ons in our %s."
|
4059 |
msgstr ""
|
4060 |
|
4061 |
-
#: /Users/gabriel/Repositories/mycred/
|
4062 |
msgid "online store"
|
4063 |
msgstr ""
|
4064 |
|
4065 |
-
#: /Users/gabriel/Repositories/mycred/
|
4066 |
msgid "Deactivate Add-on"
|
4067 |
msgstr ""
|
4068 |
|
4069 |
-
#: /Users/gabriel/Repositories/mycred/
|
4070 |
msgid "Deactivate"
|
4071 |
msgstr ""
|
4072 |
|
4073 |
-
#: /Users/gabriel/Repositories/mycred/
|
4074 |
msgid "Activate Add-on"
|
4075 |
msgstr ""
|
4076 |
|
4077 |
-
#: /Users/gabriel/Repositories/mycred/
|
4078 |
msgid "Activate"
|
4079 |
msgstr ""
|
4080 |
|
4081 |
-
#: /Users/gabriel/Repositories/mycred/
|
4082 |
msgid "Version"
|
4083 |
msgstr ""
|
4084 |
|
4085 |
-
#: /Users/gabriel/Repositories/mycred/
|
4086 |
msgid "By"
|
4087 |
msgstr ""
|
4088 |
|
4089 |
-
#: /Users/gabriel/Repositories/mycred/
|
4090 |
-
msgid "
|
4091 |
msgstr ""
|
4092 |
|
4093 |
-
#: /Users/gabriel/Repositories/mycred/
|
4094 |
-
|
|
|
4095 |
msgstr ""
|
4096 |
|
4097 |
-
#: /Users/gabriel/Repositories/mycred/
|
4098 |
-
msgid "
|
4099 |
msgstr ""
|
4100 |
|
4101 |
-
#: /Users/gabriel/Repositories/mycred/
|
4102 |
-
msgid "
|
4103 |
msgstr ""
|
4104 |
|
4105 |
-
#: /Users/gabriel/Repositories/mycred/
|
4106 |
-
msgid "
|
|
|
|
|
|
|
|
|
4107 |
msgstr ""
|
4108 |
|
4109 |
-
#: /Users/gabriel/Repositories/mycred/
|
4110 |
-
msgid "
|
4111 |
msgstr ""
|
4112 |
|
4113 |
-
#: /Users/gabriel/Repositories/mycred/
|
4114 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:198
|
4115 |
msgid "Core Settings"
|
4116 |
msgstr ""
|
4117 |
|
4118 |
-
#: /Users/gabriel/Repositories/mycred/
|
4119 |
msgid "Name"
|
4120 |
msgstr ""
|
4121 |
|
4122 |
-
#: /Users/gabriel/Repositories/mycred/
|
4123 |
msgid "Accessible though the %singular% template tag."
|
4124 |
msgstr ""
|
4125 |
|
4126 |
-
#: /Users/gabriel/Repositories/mycred/
|
4127 |
msgid "Accessible though the %plural% template tag."
|
4128 |
msgstr ""
|
4129 |
|
4130 |
-
#: /Users/gabriel/Repositories/mycred/
|
4131 |
msgid "Tip"
|
4132 |
msgstr ""
|
4133 |
|
4134 |
-
#: /Users/gabriel/Repositories/mycred/
|
4135 |
msgid ""
|
4136 |
"Adding an underscore at the beginning of template tag for names will return "
|
4137 |
"them in lowercase. i.e. %_singular%"
|
4138 |
msgstr ""
|
4139 |
|
4140 |
-
#: /Users/gabriel/Repositories/mycred/
|
4141 |
msgid "Separator"
|
4142 |
msgstr ""
|
4143 |
|
4144 |
-
#: /Users/gabriel/Repositories/mycred/
|
4145 |
msgid "Edit Settings"
|
4146 |
msgstr ""
|
4147 |
|
4148 |
-
#: /Users/gabriel/Repositories/mycred/
|
4149 |
-
#: /Users/gabriel/Repositories/mycred/
|
4150 |
msgid "Capability to check for."
|
4151 |
msgstr ""
|
4152 |
|
4153 |
-
#: /Users/gabriel/Repositories/mycred/
|
4154 |
msgid "Edit Users %plural%"
|
4155 |
msgstr ""
|
4156 |
|
4157 |
-
#: /Users/gabriel/Repositories/mycred/
|
4158 |
msgid "Comma separated list of user ids to exclude. No spaces allowed!"
|
4159 |
msgstr ""
|
4160 |
|
4161 |
-
#: /Users/gabriel/Repositories/mycred/
|
4162 |
-
msgid "
|
4163 |
msgstr ""
|
4164 |
|
4165 |
-
#: /Users/gabriel/Repositories/mycred/
|
4166 |
-
msgid ""
|
4167 |
-
"myCRED logs everything giving you a complete overview of %_plural% awarded "
|
4168 |
-
"or deducted from your users. The Log page can be filtered by user, date or "
|
4169 |
-
"reference and we have included a search function for you."
|
4170 |
msgstr ""
|
4171 |
|
4172 |
-
#: /Users/gabriel/Repositories/mycred/
|
4173 |
-
msgid ""
|
4174 |
-
"You can select how many log entries you want to show under \"Screen Options"
|
4175 |
-
"\". By default you will be shown 10 entries."
|
4176 |
msgstr ""
|
4177 |
|
4178 |
-
#: /Users/gabriel/Repositories/mycred/
|
4179 |
-
|
|
|
4180 |
msgstr ""
|
4181 |
|
4182 |
-
#: /Users/gabriel/Repositories/mycred/
|
4183 |
-
|
4184 |
-
|
4185 |
-
"Month."
|
4186 |
msgstr ""
|
4187 |
|
4188 |
-
#: /Users/gabriel/Repositories/mycred/
|
4189 |
-
msgid "
|
4190 |
msgstr ""
|
4191 |
|
4192 |
-
#: /Users/gabriel/Repositories/mycred/
|
4193 |
-
msgid ""
|
4194 |
-
"Each time a log entry is made a reference is used to identify where or why "
|
4195 |
-
"points were awarded or deducted."
|
4196 |
msgstr ""
|
4197 |
|
4198 |
-
#: /Users/gabriel/Repositories/mycred/
|
4199 |
-
msgid "
|
4200 |
msgstr ""
|
4201 |
|
4202 |
-
#: /Users/gabriel/Repositories/mycred/
|
4203 |
-
msgid "
|
4204 |
msgstr ""
|
4205 |
|
4206 |
-
#: /Users/gabriel/Repositories/mycred/
|
4207 |
-
|
4208 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:29
|
4209 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:30
|
4210 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:244
|
4211 |
-
msgid "Hooks"
|
4212 |
msgstr ""
|
4213 |
|
4214 |
-
#: /Users/gabriel/Repositories/mycred/
|
4215 |
-
|
4216 |
-
"
|
4217 |
-
"Hooks can relate to WordPress specific actions or any third party plugin "
|
4218 |
-
"action that myCRED supports."
|
4219 |
msgstr ""
|
4220 |
|
4221 |
-
#: /Users/gabriel/Repositories/mycred/
|
4222 |
-
msgid ""
|
4223 |
-
"A hook can relate to a specific instance or several instances. You can "
|
4224 |
-
"disable specific instances in a hook by awarding zero %_plural%."
|
4225 |
msgstr ""
|
4226 |
|
4227 |
-
#: /Users/gabriel/Repositories/mycred/
|
4228 |
-
msgid "
|
4229 |
msgstr ""
|
4230 |
|
4231 |
-
#: /Users/gabriel/Repositories/mycred/
|
4232 |
msgid ""
|
4233 |
-
"
|
4234 |
-
"
|
4235 |
msgstr ""
|
4236 |
|
4237 |
-
#: /Users/gabriel/Repositories/mycred/
|
4238 |
-
msgid "
|
4239 |
msgstr ""
|
4240 |
|
4241 |
-
#: /Users/gabriel/Repositories/mycred/
|
4242 |
-
|
|
|
|
|
|
|
4243 |
msgstr ""
|
4244 |
|
4245 |
-
#: /Users/gabriel/Repositories/mycred/
|
4246 |
-
msgid "
|
4247 |
msgstr ""
|
4248 |
|
4249 |
-
#: /Users/gabriel/Repositories/mycred/
|
4250 |
-
#: /Users/gabriel/Repositories/mycred/
|
4251 |
-
#: /Users/gabriel/Repositories/mycred/
|
4252 |
-
#: /Users/gabriel/Repositories/mycred/
|
4253 |
-
msgid "
|
4254 |
msgstr ""
|
4255 |
|
4256 |
-
#: /Users/gabriel/Repositories/mycred/
|
4257 |
-
msgid "
|
4258 |
msgstr ""
|
4259 |
|
4260 |
-
#: /Users/gabriel/Repositories/mycred/
|
4261 |
-
|
4262 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:144
|
4263 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:161
|
4264 |
-
msgid "Plural %plural% Name."
|
4265 |
msgstr ""
|
4266 |
|
4267 |
-
#: /Users/gabriel/Repositories/mycred/
|
4268 |
-
msgid "
|
4269 |
msgstr ""
|
4270 |
|
4271 |
-
#: /Users/gabriel/Repositories/mycred/
|
4272 |
-
|
4273 |
-
|
|
|
4274 |
msgstr ""
|
4275 |
|
4276 |
-
#: /Users/gabriel/Repositories/mycred/
|
4277 |
-
|
4278 |
-
msgid "The login URL with redirection to current page."
|
4279 |
msgstr ""
|
4280 |
|
4281 |
-
#: /Users/gabriel/Repositories/mycred/
|
4282 |
-
msgid "
|
|
|
|
|
4283 |
msgstr ""
|
4284 |
|
4285 |
-
#: /Users/gabriel/Repositories/mycred/
|
4286 |
-
msgid "
|
4287 |
msgstr ""
|
4288 |
|
4289 |
-
#: /Users/gabriel/Repositories/mycred/
|
4290 |
-
msgid "
|
4291 |
msgstr ""
|
4292 |
|
4293 |
-
#: /Users/gabriel/Repositories/mycred/
|
4294 |
-
msgid "
|
4295 |
msgstr ""
|
4296 |
|
4297 |
-
#: /Users/gabriel/Repositories/mycred/
|
4298 |
-
msgid "
|
|
|
|
|
4299 |
msgstr ""
|
4300 |
|
4301 |
-
#: /Users/gabriel/Repositories/mycred/
|
4302 |
-
msgid "
|
4303 |
msgstr ""
|
4304 |
|
4305 |
-
#: /Users/gabriel/Repositories/mycred/
|
4306 |
-
msgid "
|
|
|
|
|
4307 |
msgstr ""
|
4308 |
|
4309 |
-
#: /Users/gabriel/Repositories/mycred/
|
4310 |
-
msgid "
|
|
|
|
|
4311 |
msgstr ""
|
4312 |
|
4313 |
-
#: /Users/gabriel/Repositories/mycred/
|
4314 |
-
|
|
|
|
|
4315 |
msgstr ""
|
4316 |
|
4317 |
-
#: /Users/gabriel/Repositories/mycred/
|
4318 |
-
msgid "
|
4319 |
msgstr ""
|
4320 |
|
4321 |
-
#: /Users/gabriel/Repositories/mycred/
|
4322 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4323 |
msgstr ""
|
4324 |
|
4325 |
-
#: /Users/gabriel/Repositories/mycred/
|
4326 |
-
msgid "
|
4327 |
msgstr ""
|
4328 |
|
4329 |
-
#: /Users/gabriel/Repositories/mycred/
|
4330 |
-
msgid "
|
4331 |
msgstr ""
|
4332 |
|
4333 |
-
#: /Users/gabriel/Repositories/mycred/
|
4334 |
-
msgid "
|
4335 |
-
msgstr ""
|
4336 |
-
|
4337 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:114
|
4338 |
-
msgid "The post id where the comment was made."
|
4339 |
-
msgstr ""
|
4340 |
-
|
4341 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:115
|
4342 |
-
msgid "The post title where the comment was made."
|
4343 |
-
msgstr ""
|
4344 |
-
|
4345 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:116
|
4346 |
-
msgid "The post URL address where the comment was made."
|
4347 |
-
msgstr ""
|
4348 |
-
|
4349 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:117
|
4350 |
-
msgid "Link to the post where the comment was made."
|
4351 |
-
msgstr ""
|
4352 |
-
|
4353 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:129
|
4354 |
-
msgid "myCRED Balance Template Tags"
|
4355 |
-
msgstr ""
|
4356 |
-
|
4357 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:132
|
4358 |
-
msgid "Layout:"
|
4359 |
-
msgstr ""
|
4360 |
-
|
4361 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:133
|
4362 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:141
|
4363 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:158
|
4364 |
-
msgid "Balance amount in plain format."
|
4365 |
-
msgstr ""
|
4366 |
-
|
4367 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:134
|
4368 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:142
|
4369 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:159
|
4370 |
-
msgid "Balance amount formatted with prefix and/or suffix."
|
4371 |
-
msgstr ""
|
4372 |
-
|
4373 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:135
|
4374 |
-
msgid "Rank Format:"
|
4375 |
-
msgstr ""
|
4376 |
-
|
4377 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:136
|
4378 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:157
|
4379 |
-
msgid "The users ranking. Was \"%rank%\" before version 1.1"
|
4380 |
-
msgstr ""
|
4381 |
-
|
4382 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:137
|
4383 |
-
msgid "History Title:"
|
4384 |
-
msgstr ""
|
4385 |
-
|
4386 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:138
|
4387 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:139
|
4388 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:143
|
4389 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:144
|
4390 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:160
|
4391 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:161
|
4392 |
-
msgid "or"
|
4393 |
-
msgstr ""
|
4394 |
-
|
4395 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:140
|
4396 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:156
|
4397 |
-
msgid "Row Layout:"
|
4398 |
-
msgstr ""
|
4399 |
-
|
4400 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:145
|
4401 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:162
|
4402 |
-
msgid "Log entry date."
|
4403 |
-
msgstr ""
|
4404 |
-
|
4405 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:146
|
4406 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:163
|
4407 |
-
msgid "The log entry."
|
4408 |
-
msgstr ""
|
4409 |
-
|
4410 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:147
|
4411 |
-
msgid "Message:"
|
4412 |
-
msgstr ""
|
4413 |
-
|
4414 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:153
|
4415 |
-
msgid "myCRED List Template Tags"
|
4416 |
-
msgstr ""
|
4417 |
-
|
4418 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:164
|
4419 |
-
msgid "Users display name."
|
4420 |
-
msgstr ""
|
4421 |
-
|
4422 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:165
|
4423 |
-
msgid "Users profile URL."
|
4424 |
-
msgstr ""
|
4425 |
-
|
4426 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:166
|
4427 |
-
msgid "Users \"username\"."
|
4428 |
-
msgstr ""
|
4429 |
-
|
4430 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:167
|
4431 |
-
msgid "Users \"username\" URL encoded."
|
4432 |
-
msgstr ""
|
4433 |
-
|
4434 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:168
|
4435 |
-
msgid "Link to users profile with their display name as title."
|
4436 |
-
msgstr ""
|
4437 |
-
|
4438 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:180
|
4439 |
-
msgid "Editing %plural%"
|
4440 |
-
msgstr ""
|
4441 |
-
|
4442 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:182
|
4443 |
-
msgid ""
|
4444 |
-
"You can adjust this users %_plural% by giving a positive or negative amount "
|
4445 |
-
"and a log description. Remember that plugin and point editors will always be "
|
4446 |
-
"able to adjust their own balance."
|
4447 |
-
msgstr ""
|
4448 |
-
|
4449 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:183
|
4450 |
-
msgid ""
|
4451 |
-
"If the option to edit a users balance is missing the user is set to be "
|
4452 |
-
"excluded from using myCRED."
|
4453 |
-
msgstr ""
|
4454 |
-
|
4455 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:195
|
4456 |
-
msgid "Core"
|
4457 |
-
msgstr ""
|
4458 |
-
|
4459 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:197
|
4460 |
-
msgid "On this page, you can edit all myCRED settings."
|
4461 |
-
msgstr ""
|
4462 |
-
|
4463 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-help.php:199
|
4464 |
-
msgid ""
|
4465 |
-
"Here you can name your installation along with setting your layout and "
|
4466 |
-
"format. You can use any name as long as you set both the singular and plural "
|
4467 |
-
"format and you can change the name at any time."
|
4468 |
-
msgstr ""
|
4469 |
-
|
4470 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:89
|
4471 |
-
msgid "%plural% for registrations"
|
4472 |
-
msgstr ""
|
4473 |
-
|
4474 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:90
|
4475 |
-
msgid "Award %_plural% for users joining your website."
|
4476 |
-
msgstr ""
|
4477 |
-
|
4478 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:96
|
4479 |
-
msgid "%plural% for logins"
|
4480 |
-
msgstr ""
|
4481 |
-
|
4482 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:97
|
4483 |
-
msgid ""
|
4484 |
-
"Award %_plural% for logging in to your website. You can also set an optional "
|
4485 |
-
"limit."
|
4486 |
-
msgstr ""
|
4487 |
-
|
4488 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:103
|
4489 |
-
msgid "%plural% for publishing content"
|
4490 |
-
msgstr ""
|
4491 |
-
|
4492 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:104
|
4493 |
-
msgid ""
|
4494 |
-
"Award %_plural% for publishing content on your website. If your custom post "
|
4495 |
-
"type is not shown bellow, make sure it is set to \"Public\"."
|
4496 |
-
msgstr ""
|
4497 |
-
|
4498 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:110
|
4499 |
-
msgid "%plural% for comments"
|
4500 |
-
msgstr ""
|
4501 |
-
|
4502 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:111
|
4503 |
-
msgid "Award %_plural% for making comments."
|
4504 |
-
msgstr ""
|
4505 |
-
|
4506 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:117
|
4507 |
-
msgid "%plural% for clicking on links"
|
4508 |
-
msgstr ""
|
4509 |
-
|
4510 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:118
|
4511 |
-
msgid ""
|
4512 |
-
"Award %_plural% to users who clicks on links generated by the [mycred_link] "
|
4513 |
-
"shortcode."
|
4514 |
-
msgstr ""
|
4515 |
-
|
4516 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:124
|
4517 |
-
msgid "%plural% for viewing Videos"
|
4518 |
-
msgstr ""
|
4519 |
-
|
4520 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:125
|
4521 |
-
msgid ""
|
4522 |
-
"Award %_plural% to users who watches videos embedded using the "
|
4523 |
-
"[mycred_video] shortcode."
|
4524 |
-
msgstr ""
|
4525 |
-
|
4526 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:132
|
4527 |
-
msgid "bbPress"
|
4528 |
-
msgstr ""
|
4529 |
-
|
4530 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:133
|
4531 |
-
msgid "Awards %_plural% for bbPress actions."
|
4532 |
-
msgstr ""
|
4533 |
-
|
4534 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:141
|
4535 |
-
msgid "Invite Anyone Plugin"
|
4536 |
-
msgstr ""
|
4537 |
-
|
4538 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:142
|
4539 |
-
msgid ""
|
4540 |
-
"Awards %_plural% for sending invitations and/or %_plural% if the invite is "
|
4541 |
-
"accepted."
|
4542 |
-
msgstr ""
|
4543 |
-
|
4544 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:150
|
4545 |
-
msgid "Contact Form 7 Form Submissions"
|
4546 |
-
msgstr ""
|
4547 |
-
|
4548 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:151
|
4549 |
-
msgid "Awards %_plural% for successful form submissions (by logged in users)."
|
4550 |
-
msgstr ""
|
4551 |
-
|
4552 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:159
|
4553 |
-
msgid "Jetpack Subscriptions"
|
4554 |
-
msgstr ""
|
4555 |
-
|
4556 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:160
|
4557 |
-
msgid ""
|
4558 |
-
"Awards %_plural% for users signing up for site or comment updates using "
|
4559 |
-
"Jetpack."
|
4560 |
-
msgstr ""
|
4561 |
-
|
4562 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:168
|
4563 |
-
msgid "BadgeOS"
|
4564 |
-
msgstr ""
|
4565 |
-
|
4566 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:169
|
4567 |
-
msgid ""
|
4568 |
-
"Default settings for each BadgeOS Achievement type. These settings may be "
|
4569 |
-
"overridden for individual achievement type."
|
4570 |
-
msgstr ""
|
4571 |
-
|
4572 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:177
|
4573 |
-
msgid "WP-Polls"
|
4574 |
-
msgstr ""
|
4575 |
-
|
4576 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:178
|
4577 |
-
msgid "Awards %_plural% for users voting in polls."
|
4578 |
-
msgstr ""
|
4579 |
-
|
4580 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:186
|
4581 |
-
msgid "WP Favorite Posts"
|
4582 |
-
msgstr ""
|
4583 |
-
|
4584 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:187
|
4585 |
-
msgid "Awards %_plural% for users adding posts to their favorites."
|
4586 |
-
msgstr ""
|
4587 |
-
|
4588 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:195
|
4589 |
-
msgid "Events Manager"
|
4590 |
-
msgstr ""
|
4591 |
-
|
4592 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:196
|
4593 |
-
msgid "Awards %_plural% for users attending events."
|
4594 |
-
msgstr ""
|
4595 |
-
|
4596 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:204
|
4597 |
-
msgid "GD Star Rating"
|
4598 |
-
msgstr ""
|
4599 |
-
|
4600 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:205
|
4601 |
-
msgid "Awards %_plural% for users rate items using the GD Star Rating plugin."
|
4602 |
-
msgstr ""
|
4603 |
-
|
4604 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:245
|
4605 |
-
msgid ""
|
4606 |
-
"Hooks are instances where %_plural% are awarded or deducted from a user, "
|
4607 |
-
"depending on their actions around your website."
|
4608 |
-
msgstr ""
|
4609 |
-
|
4610 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:526
|
4611 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:642
|
4612 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:663
|
4613 |
-
msgid "Limit"
|
4614 |
-
msgstr ""
|
4615 |
-
|
4616 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:619
|
4617 |
-
msgid "%plural% for Posts"
|
4618 |
-
msgstr ""
|
4619 |
-
|
4620 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:629
|
4621 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:642
|
4622 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:677
|
4623 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:403
|
4624 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:416
|
4625 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:429
|
4626 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:447
|
4627 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:460
|
4628 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:479
|
4629 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:792
|
4630 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:1036
|
4631 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:1046
|
4632 |
-
msgid "Available template tags: General, Post"
|
4633 |
-
msgstr ""
|
4634 |
-
|
4635 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-hooks.php:632
|
4636 |
-
msgid "%plural% for Pages"
|
4637 |
msgstr ""
|
4638 |
|
4639 |
-
#: /Users/gabriel/Repositories/mycred/
|
4640 |
-
|
|
|
|
|
4641 |
msgstr ""
|
4642 |
|
4643 |
-
#: /Users/gabriel/Repositories/mycred/
|
4644 |
-
|
|
|
|
|
4645 |
msgstr ""
|
4646 |
|
4647 |
-
#: /Users/gabriel/Repositories/mycred/
|
4648 |
-
#: /Users/gabriel/Repositories/mycred/
|
4649 |
-
#: /Users/gabriel/Repositories/mycred/
|
4650 |
msgid "Available template tags: General, Comment"
|
4651 |
msgstr ""
|
4652 |
|
4653 |
-
#: /Users/gabriel/Repositories/mycred/
|
4654 |
msgid "Comment Marked SPAM"
|
4655 |
msgstr ""
|
4656 |
|
4657 |
-
#: /Users/gabriel/Repositories/mycred/
|
4658 |
msgid "Trashed / Unapproved Comments"
|
4659 |
msgstr ""
|
4660 |
|
4661 |
-
#: /Users/gabriel/Repositories/mycred/
|
4662 |
msgid "Limit per post"
|
4663 |
msgstr ""
|
4664 |
|
4665 |
-
#: /Users/gabriel/Repositories/mycred/
|
4666 |
msgid ""
|
4667 |
"The number of comments per post that grants %_plural%. Use zero for "
|
4668 |
"unlimited."
|
4669 |
msgstr ""
|
4670 |
|
4671 |
-
#: /Users/gabriel/Repositories/mycred/
|
4672 |
msgid "Limit per day"
|
4673 |
msgstr ""
|
4674 |
|
4675 |
-
#: /Users/gabriel/Repositories/mycred/
|
4676 |
msgid ""
|
4677 |
"Number of comments per day that grants %_plural%. Use zero for unlimited."
|
4678 |
msgstr ""
|
4679 |
|
4680 |
-
#: /Users/gabriel/Repositories/mycred/
|
4681 |
msgid ""
|
4682 |
"%plural% is to be awarded even when comment authors reply to their own "
|
4683 |
"comment."
|
4684 |
msgstr ""
|
4685 |
|
4686 |
-
#: /Users/gabriel/Repositories/mycred/
|
4687 |
msgid "Once for each unique URL"
|
4688 |
msgstr ""
|
4689 |
|
4690 |
-
#: /Users/gabriel/Repositories/mycred/
|
4691 |
msgid "Once for each unique link id"
|
4692 |
msgstr ""
|
4693 |
|
4694 |
-
#: /Users/gabriel/Repositories/mycred/
|
4695 |
msgid ""
|
4696 |
"The default amount to award for clicking on links. You can override this in "
|
4697 |
"the shortcode."
|
4698 |
msgstr ""
|
4699 |
|
4700 |
-
#: /Users/gabriel/Repositories/mycred/
|
4701 |
-
msgid "
|
|
|
4702 |
msgstr ""
|
4703 |
|
4704 |
-
#: /Users/gabriel/Repositories/mycred/
|
4705 |
msgid "Remember!"
|
4706 |
msgstr ""
|
4707 |
|
4708 |
-
#: /Users/gabriel/Repositories/mycred/
|
4709 |
msgid ""
|
4710 |
"If you select to limit by id and you do not include the id attribute in the "
|
4711 |
"shortcode, no %_plural% will be awarded!"
|
4712 |
msgstr ""
|
4713 |
|
4714 |
-
#: /Users/gabriel/Repositories/mycred/
|
4715 |
msgid "Amount to award for viewing videos."
|
4716 |
msgstr ""
|
4717 |
|
4718 |
-
#: /Users/gabriel/Repositories/mycred/
|
4719 |
msgid "Award Logic"
|
4720 |
msgstr ""
|
4721 |
|
4722 |
-
#: /Users/gabriel/Repositories/mycred/
|
4723 |
msgid "Select when %_plural% should be awarded or deducted."
|
4724 |
msgstr ""
|
4725 |
|
4726 |
-
#: /Users/gabriel/Repositories/mycred/
|
4727 |
msgid "Play - As soon as video starts playing."
|
4728 |
msgstr ""
|
4729 |
|
4730 |
-
#: /Users/gabriel/Repositories/mycred/
|
4731 |
msgid "Full - First when the entire video has played."
|
4732 |
msgstr ""
|
4733 |
|
4734 |
-
#: /Users/gabriel/Repositories/mycred/
|
4735 |
msgid "Interval - For each x number of seconds watched."
|
4736 |
msgstr ""
|
4737 |
|
4738 |
-
#: /Users/gabriel/Repositories/mycred/
|
4739 |
msgid "Number of seconds"
|
4740 |
msgstr ""
|
4741 |
|
4742 |
-
#: /Users/gabriel/Repositories/mycred/
|
4743 |
msgid "Leniency"
|
4744 |
msgstr ""
|
4745 |
|
4746 |
-
#: /Users/gabriel/Repositories/mycred/
|
4747 |
msgid ""
|
4748 |
"The maximum percentage a users view of a movie can differ from the actual "
|
4749 |
"length."
|
4750 |
msgstr ""
|
4751 |
|
4752 |
-
#: /Users/gabriel/Repositories/mycred/
|
4753 |
msgid ""
|
4754 |
"Do not set this value to zero! A lot of thing can happen while a user "
|
4755 |
"watches a movie and sometimes a few seconds can drop of the counter due to "
|
4756 |
"buffering or play back errors."
|
4757 |
msgstr ""
|
4758 |
|
4759 |
-
#: /Users/gabriel/Repositories/mycred/
|
4760 |
msgid "Activity Log"
|
4761 |
msgstr ""
|
4762 |
|
4763 |
-
#: /Users/gabriel/Repositories/mycred/
|
4764 |
-
msgid "Entries"
|
4765 |
-
msgstr ""
|
4766 |
-
|
4767 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-log.php:177
|
4768 |
msgid "Show all references"
|
4769 |
msgstr ""
|
4770 |
|
4771 |
-
#: /Users/gabriel/Repositories/mycred/
|
4772 |
msgid "Show in order"
|
4773 |
msgstr ""
|
4774 |
|
4775 |
-
#: /Users/gabriel/Repositories/mycred/
|
4776 |
msgid "Filter"
|
4777 |
msgstr ""
|
4778 |
|
4779 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
4780 |
msgid "entry"
|
4781 |
msgstr ""
|
4782 |
|
4783 |
-
#: /Users/gabriel/Repositories/mycred/
|
4784 |
msgid "Search results for"
|
4785 |
msgstr ""
|
4786 |
|
4787 |
-
#: /Users/gabriel/Repositories/mycred/
|
4788 |
-
msgid "
|
4789 |
msgstr ""
|
4790 |
|
4791 |
-
#: /Users/gabriel/Repositories/mycred/
|
4792 |
-
msgid "
|
|
|
|
|
4793 |
msgstr ""
|
4794 |
|
4795 |
-
#: /Users/gabriel/Repositories/mycred/
|
4796 |
-
|
|
|
|
|
|
|
4797 |
msgstr ""
|
4798 |
|
4799 |
-
#: /Users/gabriel/Repositories/mycred/
|
4800 |
-
#: /Users/gabriel/Repositories/mycred/
|
4801 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4802 |
msgstr ""
|
4803 |
|
4804 |
-
#: /Users/gabriel/Repositories/mycred/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4805 |
msgid "%plural% for New Forum"
|
4806 |
msgstr ""
|
4807 |
|
4808 |
-
#: /Users/gabriel/Repositories/mycred/
|
4809 |
msgid "%plural% for Forum Deletion"
|
4810 |
msgstr ""
|
4811 |
|
4812 |
-
#: /Users/gabriel/Repositories/mycred/
|
4813 |
msgid "%plural% for New Topic"
|
4814 |
msgstr ""
|
4815 |
|
4816 |
-
#: /Users/gabriel/Repositories/mycred/
|
4817 |
msgid "Forum authors can receive %_plural% for creating new topics."
|
4818 |
msgstr ""
|
4819 |
|
4820 |
-
#: /Users/gabriel/Repositories/mycred/
|
4821 |
msgid "%plural% for Topic Deletion"
|
4822 |
msgstr ""
|
4823 |
|
4824 |
-
#: /Users/gabriel/Repositories/mycred/
|
4825 |
msgid "%plural% for Favorited Topic"
|
4826 |
msgstr ""
|
4827 |
|
4828 |
-
#: /Users/gabriel/Repositories/mycred/
|
4829 |
-
#: /Users/gabriel/Repositories/mycred/
|
4830 |
-
msgid "Daily Limit"
|
4831 |
-
msgstr ""
|
4832 |
-
|
4833 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:466
|
4834 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:490
|
4835 |
msgid "Use zero for unlimited"
|
4836 |
msgstr ""
|
4837 |
|
4838 |
-
#: /Users/gabriel/Repositories/mycred/
|
4839 |
msgid "%plural% for New Reply"
|
4840 |
msgstr ""
|
4841 |
|
4842 |
-
#: /Users/gabriel/Repositories/mycred/
|
4843 |
msgid "Topic authors can receive %_plural% for replying to their own Topic"
|
4844 |
msgstr ""
|
4845 |
|
4846 |
-
#: /Users/gabriel/Repositories/mycred/
|
4847 |
msgid "Show users %_plural% balance in replies"
|
4848 |
msgstr ""
|
4849 |
|
4850 |
-
#: /Users/gabriel/Repositories/mycred/
|
4851 |
-
msgid "
|
4852 |
-
msgstr ""
|
4853 |
-
|
4854 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:646
|
4855 |
-
msgid ""
|
4856 |
-
"Maximum number of invites that grants %_plural%. Use zero for unlimited."
|
4857 |
msgstr ""
|
4858 |
|
4859 |
-
#: /Users/gabriel/Repositories/mycred/
|
4860 |
-
msgid "%
|
4861 |
msgstr ""
|
4862 |
|
4863 |
-
#: /Users/gabriel/Repositories/mycred/
|
4864 |
-
msgid "
|
4865 |
msgstr ""
|
4866 |
|
4867 |
-
#: /Users/gabriel/Repositories/mycred/
|
4868 |
-
msgid ""
|
4869 |
-
"Maximum number of accepted invitations that grants %_plural%. Use zero for "
|
4870 |
-
"unlimited."
|
4871 |
msgstr ""
|
4872 |
|
4873 |
-
#: /Users/gabriel/Repositories/mycred/
|
4874 |
-
msgid "
|
4875 |
msgstr ""
|
4876 |
|
4877 |
-
#: /Users/gabriel/Repositories/mycred/
|
4878 |
-
|
4879 |
-
msgid ""
|
4880 |
-
"Please setup your <a href=\"%s\">default settings</a> before using this "
|
4881 |
-
"feature."
|
4882 |
msgstr ""
|
4883 |
|
4884 |
-
#: /Users/gabriel/Repositories/mycred/
|
4885 |
-
#: /Users/gabriel/Repositories/mycred/
|
4886 |
-
|
|
|
|
|
4887 |
msgstr ""
|
4888 |
|
4889 |
-
#: /Users/gabriel/Repositories/mycred/
|
4890 |
-
msgid "
|
4891 |
msgstr ""
|
4892 |
|
4893 |
-
#: /Users/gabriel/Repositories/mycred/
|
4894 |
-
msgid "
|
4895 |
msgstr ""
|
4896 |
|
4897 |
-
#: /Users/gabriel/Repositories/mycred/
|
4898 |
-
|
4899 |
-
msgid "Default %s for %s"
|
4900 |
msgstr ""
|
4901 |
|
4902 |
-
#: /Users/gabriel/Repositories/mycred/
|
4903 |
-
msgid "
|
4904 |
msgstr ""
|
4905 |
|
4906 |
-
#: /Users/gabriel/Repositories/mycred/
|
4907 |
-
msgid "
|
4908 |
msgstr ""
|
4909 |
|
4910 |
-
#: /Users/gabriel/Repositories/mycred/
|
4911 |
-
msgid "
|
4912 |
msgstr ""
|
4913 |
|
4914 |
-
#: /Users/gabriel/Repositories/mycred/
|
4915 |
msgid ""
|
4916 |
-
"
|
4917 |
-
"
|
4918 |
msgstr ""
|
4919 |
|
4920 |
-
#: /Users/gabriel/Repositories/mycred/
|
4921 |
-
msgid "
|
4922 |
msgstr ""
|
4923 |
|
4924 |
-
#: /Users/gabriel/Repositories/mycred/
|
4925 |
-
|
4926 |
-
|
4927 |
-
#: /Users/gabriel/Repositories/mycred/trunk/modules/mycred-module-plugins.php:1456
|
4928 |
-
msgid "Available template tags: General and Post Related"
|
4929 |
msgstr ""
|
4930 |
|
4931 |
-
#: /Users/gabriel/Repositories/mycred/
|
4932 |
-
msgid "
|
4933 |
msgstr ""
|
4934 |
|
4935 |
-
#: /Users/gabriel/Repositories/mycred/
|
4936 |
-
msgid "
|
4937 |
msgstr ""
|
4938 |
|
4939 |
-
#: /Users/gabriel/Repositories/mycred/
|
4940 |
-
msgid "
|
|
|
|
|
4941 |
msgstr ""
|
4942 |
|
4943 |
-
#: /Users/gabriel/Repositories/mycred/
|
4944 |
-
msgid "
|
4945 |
msgstr ""
|
4946 |
|
4947 |
-
#: /Users/gabriel/Repositories/mycred/
|
4948 |
-
msgid "
|
|
|
|
|
4949 |
msgstr ""
|
4950 |
|
4951 |
-
#: /Users/gabriel/Repositories/mycred/
|
4952 |
msgid "Site Subscriptions"
|
4953 |
msgstr ""
|
4954 |
|
4955 |
-
#: /Users/gabriel/Repositories/mycred/
|
4956 |
msgid "Comment Subscriptions"
|
4957 |
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
msgstr ""
|
5 |
"Project-Id-Version: myCRED\n"
|
6 |
"Report-Msgid-Bugs-To: http://mycred.me\n"
|
7 |
+
"POT-Creation-Date: 2013-10-11 23:27+0100\n"
|
8 |
+
"PO-Revision-Date: 2013-10-11 23:29+0100\n"
|
9 |
"Last-Translator: Gabriel Sebastian Merovingi <support@mycred.me>\n"
|
10 |
"Language-Team: LANGUAGE <support@mycred.me>\n"
|
11 |
"MIME-Version: 1.0\n"
|
14 |
"X-Generator: Poedit 1.5.7\n"
|
15 |
"X-Poedit-Basepath: .\n"
|
16 |
"X-Poedit-KeywordsList: _n;_e;__\n"
|
17 |
+
"X-Poedit-SearchPath-0: /Users/gabriel/Repositories/mycred/tags/1.3\n"
|
18 |
"X-Poedit-SearchPath-1: .\n"
|
19 |
|
20 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:366
|
21 |
+
msgid "My Balance: "
|
|
|
22 |
msgstr ""
|
23 |
|
24 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:463
|
25 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:486
|
26 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:837
|
27 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:276
|
28 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:136
|
29 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:391
|
30 |
+
msgid "Processing..."
|
31 |
msgstr ""
|
32 |
|
33 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:464
|
34 |
+
msgid ""
|
35 |
+
"Warning! All entries in your log will be permamenly removed! This can not be "
|
36 |
+
"undone!"
|
37 |
msgstr ""
|
38 |
|
39 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:465
|
40 |
+
msgid "Warning! All user balances will be set to zero! This can not be undone!"
|
41 |
msgstr ""
|
42 |
|
43 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:466
|
44 |
+
msgid "Done!"
|
45 |
msgstr ""
|
46 |
|
47 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:467
|
48 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:485
|
49 |
+
msgid "Close"
|
|
|
50 |
msgstr ""
|
51 |
|
52 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:468
|
53 |
+
msgid "Export users %plural%"
|
54 |
msgstr ""
|
55 |
|
56 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:484
|
57 |
#, php-format
|
58 |
msgid "Edit Users %s balance"
|
59 |
msgstr ""
|
60 |
|
61 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:542
|
62 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:624
|
63 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:432
|
64 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:493
|
65 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:408
|
66 |
+
msgid "Setup"
|
67 |
msgstr ""
|
68 |
|
69 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:546
|
70 |
+
msgid "Tutorials"
|
|
|
|
|
|
|
|
|
71 |
msgstr ""
|
72 |
|
73 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:547
|
74 |
+
msgid "Codex"
|
75 |
msgstr ""
|
76 |
|
77 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/mycred.php:548
|
78 |
+
msgid "Store"
|
79 |
msgstr ""
|
80 |
|
81 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-hook.php:57
|
82 |
msgid "function myCRED_Hook::run() must be over-ridden in a sub-class."
|
83 |
msgstr ""
|
84 |
|
85 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-hook.php:66
|
86 |
msgid "This Hook has no settings"
|
87 |
msgstr ""
|
88 |
|
89 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-hook.php:133
|
90 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1036
|
91 |
msgid "No limit"
|
92 |
msgstr ""
|
93 |
|
94 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-hook.php:134
|
95 |
msgid "Once every 24 hours"
|
96 |
msgstr ""
|
97 |
|
98 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-hook.php:135
|
99 |
msgid "Once every 12 hours"
|
100 |
msgstr ""
|
101 |
|
102 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-hook.php:136
|
103 |
msgid "Once every 7 days"
|
104 |
msgstr ""
|
105 |
|
106 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-hook.php:137
|
107 |
msgid "Once per day (reset at midnight)"
|
108 |
msgstr ""
|
109 |
|
110 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-hook.php:144
|
111 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:342
|
112 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:262
|
113 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:283
|
114 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:514
|
115 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:537
|
116 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:514
|
117 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:382
|
118 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:186
|
119 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:773
|
120 |
msgid "Select"
|
121 |
msgstr ""
|
122 |
|
123 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-module.php:42
|
124 |
msgid "myCRED_Module() Error. A Module ID is required!"
|
125 |
msgstr ""
|
126 |
|
127 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-module.php:313
|
128 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-module.php:321
|
129 |
msgid "Surprise"
|
130 |
msgstr ""
|
131 |
|
132 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-module.php:378
|
133 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:154
|
134 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:180
|
135 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:103
|
136 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:202
|
137 |
+
msgid "click to close"
|
138 |
msgstr ""
|
139 |
|
140 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/abstracts/mycred-abstract-module.php:379
|
141 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:155
|
142 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:181
|
143 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:104
|
144 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:203
|
145 |
+
msgid "click to open"
|
146 |
msgstr ""
|
147 |
|
148 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:12
|
149 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:49
|
150 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:50
|
151 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:51
|
152 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:179
|
153 |
msgid "Banking"
|
154 |
msgstr ""
|
155 |
|
156 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:13
|
157 |
msgid ""
|
158 |
"This add-on allows you to offer interest on your users points balances or "
|
159 |
"setup recurring payouts."
|
160 |
msgstr ""
|
161 |
|
162 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:110
|
163 |
msgid "Compound Interest"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:111
|
167 |
msgid ""
|
168 |
"Apply an interest rate on your users %_plural% balances. Interest rate is "
|
169 |
"annual and is compounded daily as long as this service is enabled. Positive "
|
171 |
"rate will to users loosing %_plural%."
|
172 |
msgstr ""
|
173 |
|
174 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:117
|
175 |
msgid "Recurring Payouts"
|
176 |
msgstr ""
|
177 |
|
178 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:118
|
179 |
msgid ""
|
180 |
"Give your users %_plural% on a regular basis with the option to set the "
|
181 |
"number of times you want this payout to run (cycles)."
|
182 |
msgstr ""
|
183 |
|
184 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:167
|
185 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:458
|
186 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:149
|
187 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:253
|
188 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:215
|
189 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:149
|
190 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:266
|
191 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:346
|
192 |
msgid "Access Denied"
|
193 |
msgstr ""
|
194 |
|
195 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:174
|
196 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:341
|
197 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:228
|
198 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:158
|
199 |
msgid "Settings Updated"
|
200 |
msgstr ""
|
201 |
|
202 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:180
|
203 |
msgid ""
|
204 |
"This add-on allows you to setup transaction fees for %_plural% transfers, "
|
205 |
"purchases or payments using the Gateway add-on, along with offering interest "
|
206 |
"on %_plural% balances."
|
207 |
msgstr ""
|
208 |
|
209 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:183
|
210 |
msgid "WP-Cron deactivation detected!"
|
211 |
msgstr ""
|
212 |
|
213 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:184
|
214 |
msgid "Warning! This add-on requires WP - Cron to work."
|
215 |
msgstr ""
|
216 |
|
217 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:197
|
218 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:370
|
219 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:172
|
220 |
msgid "Enable"
|
221 |
msgstr ""
|
222 |
|
223 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/myCRED-addon-banking.php:210
|
224 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:185
|
225 |
msgid "Update Changes"
|
226 |
msgstr ""
|
227 |
|
228 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:57
|
229 |
msgid "function myCRED_Service::run() must be over-ridden in a sub-class."
|
230 |
msgstr ""
|
231 |
|
232 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:66
|
233 |
msgid "This Service has no settings"
|
234 |
msgstr ""
|
235 |
|
236 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:143
|
237 |
msgid "Hourly"
|
238 |
msgstr ""
|
239 |
|
240 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:147
|
241 |
msgid "Daily"
|
242 |
msgstr ""
|
243 |
|
244 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:151
|
245 |
msgid "Weekly"
|
246 |
msgstr ""
|
247 |
|
248 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:155
|
249 |
msgid "Monthly"
|
250 |
msgstr ""
|
251 |
|
252 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:159
|
253 |
msgid "Quarterly"
|
254 |
msgstr ""
|
255 |
|
256 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:163
|
257 |
msgid "Semiannually"
|
258 |
msgstr ""
|
259 |
|
260 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/abstracts/mycred-abstract-service.php:167
|
261 |
msgid "Annually"
|
262 |
msgstr ""
|
263 |
|
264 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:25
|
265 |
msgid "%plural% interest rate payment"
|
266 |
msgstr ""
|
267 |
|
268 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:275
|
269 |
msgid "Interest Rate"
|
270 |
msgstr ""
|
271 |
|
272 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:282
|
273 |
msgid "Payed / Charged"
|
274 |
msgstr ""
|
275 |
|
276 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:288
|
277 |
msgid ""
|
278 |
"The interest rate can be either positive or negative and is compounded daily."
|
279 |
msgstr ""
|
280 |
|
281 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:291
|
282 |
msgid "Minimum Balance"
|
283 |
msgstr ""
|
284 |
|
285 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:295
|
286 |
msgid "The minimum requires balance for interest to apply."
|
287 |
msgstr ""
|
288 |
|
289 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:298
|
290 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:251
|
291 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:240
|
292 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:295
|
293 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:371
|
294 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:404
|
295 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:87
|
296 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:135
|
297 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:337
|
298 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:440
|
299 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1193
|
300 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1463
|
301 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:110
|
302 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:112
|
303 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:121
|
304 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-events-manager-light.php:146
|
305 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-events-manager-light.php:159
|
306 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-gd-star-rating.php:105
|
307 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-gd-star-rating.php:118
|
308 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-favorite-posts.php:130
|
309 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-favorite-posts.php:143
|
310 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-polls.php:132
|
311 |
msgid "Log Template"
|
312 |
msgstr ""
|
313 |
|
314 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:302
|
315 |
msgid "Available template tags: General, %timeframe%, %rate%, %base%"
|
316 |
msgstr ""
|
317 |
|
318 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:305
|
319 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:258
|
320 |
+
msgid "Run Time"
|
321 |
+
msgstr ""
|
322 |
+
|
323 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-interest.php:309
|
324 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:262
|
325 |
+
msgid ""
|
326 |
+
"For large websites, if you are running into time out issues during payouts, "
|
327 |
+
"you can set the number of seconds a process can run. Use zero for unlimited, "
|
328 |
+
"but be careful especially if you are on a shared server."
|
329 |
+
msgstr ""
|
330 |
+
|
331 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:21
|
332 |
msgid "Daily %_plural%"
|
333 |
msgstr ""
|
334 |
|
335 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:213
|
336 |
msgid "Not yet run"
|
337 |
msgstr ""
|
338 |
|
339 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:218
|
340 |
msgid "Pay Users"
|
341 |
msgstr ""
|
342 |
|
343 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:221
|
344 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:678
|
345 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:348
|
346 |
msgid "Amount"
|
347 |
msgstr ""
|
348 |
|
349 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:223
|
350 |
msgid "Can not be zero."
|
351 |
msgstr ""
|
352 |
|
353 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:227
|
354 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:240
|
355 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1478
|
356 |
msgid "Interval"
|
357 |
msgstr ""
|
358 |
|
359 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:232
|
360 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:241
|
361 |
msgid "Cycles"
|
362 |
msgstr ""
|
363 |
|
364 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:234
|
365 |
msgid "Set to -1 for unlimited"
|
366 |
msgstr ""
|
367 |
|
368 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:237
|
369 |
msgid "Last Run / Activated"
|
370 |
msgstr ""
|
371 |
|
372 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:240
|
373 |
msgid ""
|
374 |
"Select how often you want to award %_plural%. Note that when this service is "
|
375 |
"enabled, the first payout will be in the beginning of the next period. So "
|
377 |
"morning."
|
378 |
msgstr ""
|
379 |
|
380 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:241
|
381 |
msgid ""
|
382 |
"Cycles let you choose how many intervals this service should run. Each time "
|
383 |
"a cycle runs, the value will decrease until it hits zero, in which case this "
|
384 |
"service will deactivate itself. Use -1 to run unlimited times."
|
385 |
msgstr ""
|
386 |
|
387 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:242
|
388 |
msgid "Important"
|
389 |
msgstr ""
|
390 |
|
391 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:242
|
392 |
msgid ""
|
393 |
"You can always stop payouts by deactivating this service. Just remember that "
|
394 |
"if you deactivate while there are cycles left, this service will continue on "
|
395 |
"when it gets re-activated. Set cycles to zero to reset."
|
396 |
msgstr ""
|
397 |
|
398 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:244
|
399 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:576
|
400 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:287
|
401 |
msgid "Excludes"
|
402 |
msgstr ""
|
403 |
|
404 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:248
|
405 |
msgid ""
|
406 |
"Comma separated list of user IDs to exclude from this service. No spaces "
|
407 |
"allowed!"
|
408 |
msgstr ""
|
409 |
|
410 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/banking/services/mycred-bank-service-payouts.php:255
|
411 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-galleries.php:81
|
412 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:435
|
413 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:448
|
414 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:461
|
415 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:474
|
416 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:487
|
417 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:500
|
418 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:514
|
419 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:527
|
420 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:540
|
421 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:553
|
422 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:175
|
423 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:188
|
424 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:201
|
425 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:214
|
426 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:338
|
427 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:351
|
428 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:390
|
429 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:403
|
430 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:416
|
431 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:429
|
432 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:450
|
433 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:444
|
434 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1467
|
435 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-gd-star-rating.php:109
|
436 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-gd-star-rating.php:122
|
437 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:144
|
438 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:165
|
439 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-jetpack.php:499
|
440 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-jetpack.php:512
|
441 |
msgid "Available template tags: General"
|
442 |
msgstr ""
|
443 |
|
444 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:13
|
445 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:384
|
446 |
msgid "BuddyPress"
|
447 |
msgstr ""
|
448 |
|
449 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:14
|
450 |
msgid ""
|
451 |
"The BuddyPress add-on extends <strong>my</strong>CRED to work with "
|
452 |
"BuddyPress allowing you to hook into most BuddyPress related actions."
|
453 |
msgstr ""
|
454 |
|
455 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:56
|
456 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:69
|
457 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:370
|
458 |
msgid "My History"
|
459 |
msgstr ""
|
460 |
|
461 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:57
|
462 |
#, php-format
|
463 |
msgid "%s's History"
|
464 |
msgstr ""
|
465 |
|
466 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:219
|
467 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:227
|
468 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:414
|
469 |
msgid "All"
|
470 |
msgstr ""
|
471 |
|
472 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:220
|
473 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:415
|
474 |
msgid "Today"
|
475 |
msgstr ""
|
476 |
|
477 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:221
|
478 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:416
|
479 |
msgid "Yesterday"
|
480 |
msgstr ""
|
481 |
|
482 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:222
|
483 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:417
|
484 |
msgid "This Week"
|
485 |
msgstr ""
|
486 |
|
487 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:223
|
488 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:418
|
489 |
msgid "This Month"
|
490 |
msgstr ""
|
491 |
|
492 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:320
|
493 |
msgid "BuddyPress: Groups"
|
494 |
msgstr ""
|
495 |
|
496 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:321
|
497 |
msgid ""
|
498 |
"Awards %_plural% for group related actions. Use minus to deduct %_plural% or "
|
499 |
"zero to disable a specific hook."
|
500 |
msgstr ""
|
501 |
|
502 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:328
|
503 |
msgid "BuddyPress: Members"
|
504 |
msgstr ""
|
505 |
|
506 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:329
|
507 |
msgid "Awards %_plural% for profile related actions."
|
508 |
msgstr ""
|
509 |
|
510 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:336
|
511 |
msgid "BuddyPress: Links"
|
512 |
msgstr ""
|
513 |
|
514 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:337
|
515 |
msgid "Awards %_plural% for link related actions."
|
516 |
msgstr ""
|
517 |
|
518 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:344
|
519 |
msgid "BuddyPress: Gallery Actions"
|
520 |
msgstr ""
|
521 |
|
522 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:345
|
523 |
msgid ""
|
524 |
"Awards %_plural% for creating a new gallery either using BP Album+ or BP "
|
525 |
"Gallery."
|
526 |
msgstr ""
|
527 |
|
528 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:365
|
529 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:372
|
530 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:776
|
531 |
msgid "Do not show."
|
532 |
msgstr ""
|
533 |
|
534 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:366
|
535 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:777
|
536 |
msgid "Include in Profile Header."
|
537 |
msgstr ""
|
538 |
|
539 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:367
|
540 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:778
|
541 |
msgid "Include under the \"Profile\" tab"
|
542 |
msgstr ""
|
543 |
|
544 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:368
|
545 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:779
|
546 |
msgid "Include under the \"Profile\" tab and Profile Header."
|
547 |
msgstr ""
|
548 |
|
549 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:373
|
550 |
msgid "Show in Profile"
|
551 |
msgstr ""
|
552 |
|
553 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:386
|
554 |
msgid "%singular% Balance"
|
555 |
msgstr ""
|
556 |
|
557 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:402
|
558 |
msgid "Members can view each others %_singular% balance."
|
559 |
msgstr ""
|
560 |
|
561 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:407
|
562 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:176
|
563 |
msgid "Template"
|
564 |
msgstr ""
|
565 |
|
566 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:409
|
567 |
msgid "Available template tags are: %creds%, %number%, %rank%"
|
568 |
msgstr ""
|
569 |
|
570 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:410
|
571 |
msgid ""
|
572 |
"Note that you can also use %rank_logo% to show the feature image of the rank."
|
573 |
msgstr ""
|
574 |
|
575 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:414
|
576 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:160
|
577 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:70
|
578 |
msgid "%plural% History"
|
579 |
msgstr ""
|
580 |
|
581 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:430
|
582 |
msgid "Members can view each others %_plural% history."
|
583 |
msgstr ""
|
584 |
|
585 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:435
|
586 |
msgid "Menu Title"
|
587 |
msgstr ""
|
588 |
|
589 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:437
|
590 |
msgid "Title shown to me"
|
591 |
msgstr ""
|
592 |
|
593 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:442
|
594 |
#, php-format
|
595 |
msgid "Title shown to others. Use %s to show the first name."
|
596 |
msgstr ""
|
597 |
|
598 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:447
|
599 |
msgid "Menu Position"
|
600 |
msgstr ""
|
601 |
|
602 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:449
|
603 |
msgid "Current menu positions:"
|
604 |
msgstr ""
|
605 |
|
606 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:454
|
607 |
msgid "History URL slug"
|
608 |
msgstr ""
|
609 |
|
610 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:456
|
611 |
msgid "Do not use empty spaces!"
|
612 |
msgstr ""
|
613 |
|
614 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/myCRED-addon-buddypress.php:461
|
615 |
msgid "Number of history entries to show"
|
616 |
msgstr ""
|
617 |
|
618 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-galleries.php:72
|
619 |
msgid "%plural% for New Gallery"
|
620 |
msgstr ""
|
621 |
|
622 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-galleries.php:79
|
623 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:433
|
624 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:446
|
625 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:459
|
626 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:472
|
627 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:485
|
628 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:498
|
629 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:512
|
630 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:525
|
631 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:538
|
632 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:551
|
633 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:173
|
634 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:186
|
635 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:199
|
636 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:212
|
637 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:336
|
638 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:349
|
639 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:362
|
640 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:375
|
641 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:388
|
642 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:401
|
643 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:414
|
644 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:427
|
645 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:303
|
646 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:546
|
647 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:559
|
648 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:594
|
649 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:915
|
650 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:932
|
651 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:949
|
652 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:276
|
653 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:414
|
654 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:427
|
655 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:440
|
656 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:458
|
657 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:471
|
658 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:490
|
659 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-contact-form7.php:136
|
660 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:142
|
661 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:163
|
662 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-jetpack.php:497
|
663 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-jetpack.php:510
|
664 |
msgid "Log template"
|
665 |
msgstr ""
|
666 |
|
667 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:419
|
668 |
msgid "%plural% for Creating Groups"
|
669 |
msgstr ""
|
670 |
|
671 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:423
|
672 |
msgid ""
|
673 |
"If you use a negative value and the user does not have enough %_plural% the "
|
674 |
"\"Create Group\" button will be disabled."
|
675 |
msgstr ""
|
676 |
|
677 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:427
|
678 |
msgid "Number of members before awarding %_plural%"
|
679 |
msgstr ""
|
680 |
|
681 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:429
|
682 |
msgid "Use zero to award %_plural% when group is created."
|
683 |
msgstr ""
|
684 |
|
685 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:439
|
686 |
msgid "%plural% for Deleting Groups"
|
687 |
msgstr ""
|
688 |
|
689 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:452
|
690 |
msgid "%plural% for New Forum Topic"
|
691 |
msgstr ""
|
692 |
|
693 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:465
|
694 |
msgid "%plural% for Editing Forum Topic"
|
695 |
msgstr ""
|
696 |
|
697 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:478
|
698 |
msgid "%plural% for New Forum Post"
|
699 |
msgstr ""
|
700 |
|
701 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:491
|
702 |
msgid "%plural% for Editing Forum Post"
|
703 |
msgstr ""
|
704 |
|
705 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:504
|
706 |
msgid "%plural% for Joining Groups"
|
707 |
msgstr ""
|
708 |
|
709 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:508
|
710 |
msgid ""
|
711 |
"If you use a negative value and the user does not have enough %_plural% the "
|
712 |
"\"Join Group\" button will be disabled."
|
713 |
msgstr ""
|
714 |
|
715 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:518
|
716 |
msgid "%plural% for Leaving Groups"
|
717 |
msgstr ""
|
718 |
|
719 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:531
|
720 |
msgid "%plural% for New Group Avatar"
|
721 |
msgstr ""
|
722 |
|
723 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-groups.php:544
|
724 |
msgid "%plural% for New Group Comment"
|
725 |
msgstr ""
|
726 |
|
727 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:166
|
728 |
msgid "%plural% for New Links"
|
729 |
msgstr ""
|
730 |
|
731 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:179
|
732 |
msgid "%plural% for Vote on Link"
|
733 |
msgstr ""
|
734 |
|
735 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:192
|
736 |
msgid "%plural% for Updating Links"
|
737 |
msgstr ""
|
738 |
|
739 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-links.php:205
|
740 |
msgid "%plural% for Deleting Links"
|
741 |
msgstr ""
|
742 |
|
743 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:324
|
744 |
msgid "%plural% for Profile Updates"
|
745 |
msgstr ""
|
746 |
|
747 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:330
|
748 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:477
|
749 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:501
|
750 |
+
msgid "Daily Limit"
|
751 |
+
msgstr ""
|
752 |
+
|
753 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:332
|
754 |
+
msgid "Daily limit. User zero for unlimited."
|
755 |
+
msgstr ""
|
756 |
+
|
757 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:342
|
758 |
msgid "%plural% for New Avatar"
|
759 |
msgstr ""
|
760 |
|
761 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:355
|
762 |
msgid "%plural% for New Friendships"
|
763 |
msgstr ""
|
764 |
|
765 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:364
|
766 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:377
|
767 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:189
|
768 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:196
|
769 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:307
|
770 |
msgid "Available template tags: General, User"
|
771 |
msgstr ""
|
772 |
|
773 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:368
|
774 |
msgid "%plural% for Leaving Friendship"
|
775 |
msgstr ""
|
776 |
|
777 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:381
|
778 |
msgid "%plural% for New Comment"
|
779 |
msgstr ""
|
780 |
|
781 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:394
|
782 |
msgid "%plural% for Deleting Comment"
|
783 |
msgstr ""
|
784 |
|
785 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:407
|
786 |
msgid "%plural% for New Messages"
|
787 |
msgstr ""
|
788 |
|
789 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buddypress/hooks/bp-profile.php:420
|
790 |
msgid "%plural% for Sending Gift"
|
791 |
msgstr ""
|
792 |
|
793 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:12
|
794 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:224
|
795 |
msgid "buyCRED"
|
796 |
msgstr ""
|
797 |
|
798 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:13
|
799 |
msgid ""
|
800 |
"The <strong>buy</strong>CRED Add-on allows your users to buy points using "
|
801 |
"PayPal, Skrill (Moneybookers) or NETbilling. <strong>buy</strong>CRED can "
|
802 |
"also let your users buy points for other members."
|
803 |
msgstr ""
|
804 |
|
805 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:55
|
806 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:56
|
807 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:57
|
808 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:346
|
809 |
msgid "Payment Gateways"
|
810 |
msgstr ""
|
811 |
|
812 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:141
|
813 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:784
|
814 |
msgid "PayPal Payments Standard"
|
815 |
msgstr ""
|
816 |
|
817 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:145
|
818 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:423
|
819 |
msgid "NETbilling"
|
820 |
msgstr ""
|
821 |
|
822 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:149
|
823 |
msgid "Skrill (Moneybookers)"
|
824 |
msgstr ""
|
825 |
|
826 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:153
|
827 |
msgid "Zombaio"
|
828 |
msgstr ""
|
829 |
|
830 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:199
|
831 |
msgid "Please login to purchase %_plural%"
|
832 |
msgstr ""
|
833 |
|
834 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:213
|
835 |
msgid "Gift purchase from %display_name%."
|
836 |
msgstr ""
|
837 |
|
838 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:226
|
839 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:565
|
840 |
msgid "Minimum %plural%"
|
841 |
msgstr ""
|
842 |
|
843 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:230
|
844 |
msgid "Minimum amount of %plural% a user must purchase. Will default to 1."
|
845 |
msgstr ""
|
846 |
|
847 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:233
|
848 |
msgid "Login Template"
|
849 |
msgstr ""
|
850 |
|
851 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:237
|
852 |
msgid "Content to show when a user is not logged in."
|
853 |
msgstr ""
|
854 |
|
855 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:244
|
856 |
msgid ""
|
857 |
"Available template tags: General and %gateway% for the payment gateway used."
|
858 |
msgstr ""
|
859 |
|
860 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:247
|
861 |
msgid "Thank You Page"
|
862 |
msgstr ""
|
863 |
|
864 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:250
|
865 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:271
|
866 |
msgid "Custom URL"
|
867 |
msgstr ""
|
868 |
|
869 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:255
|
870 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:276
|
871 |
msgid "Page"
|
872 |
msgstr ""
|
873 |
|
874 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:268
|
875 |
msgid "Cancellation Page"
|
876 |
msgstr ""
|
877 |
|
878 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:289
|
879 |
msgid "Gifting"
|
880 |
msgstr ""
|
881 |
|
882 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:291
|
883 |
msgid "Allow users to buy %_plural% for other users."
|
884 |
msgstr ""
|
885 |
|
886 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:292
|
887 |
msgid "Allow users to buy %_plural% for content authors."
|
888 |
msgstr ""
|
889 |
|
890 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:297
|
891 |
msgid "Available template tags: %singular%, %plural% and %display_name%"
|
892 |
msgstr ""
|
893 |
|
894 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:347
|
895 |
msgid ""
|
896 |
"Select the payment gateways you want to offer your users to buy %plural%."
|
897 |
msgstr ""
|
898 |
|
899 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:363
|
900 |
+
msgid "Test Mode"
|
901 |
+
msgstr ""
|
902 |
+
|
903 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:365
|
904 |
+
msgid "Enabled"
|
905 |
+
msgstr ""
|
906 |
+
|
907 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:368
|
908 |
+
msgid "Disabled"
|
909 |
+
msgstr ""
|
910 |
+
|
911 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:388
|
912 |
msgid "Update Gateway Settings"
|
913 |
msgstr ""
|
914 |
|
915 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:435
|
916 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:532
|
917 |
msgid "This Add-on needs to setup before you can use this shortcode."
|
918 |
msgstr ""
|
919 |
|
920 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:453
|
921 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:549
|
922 |
msgid "No gateways installed."
|
923 |
msgstr ""
|
924 |
|
925 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:454
|
926 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:550
|
927 |
msgid "Gateway does not exist."
|
928 |
msgstr ""
|
929 |
|
930 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:490
|
931 |
msgid "Yourself"
|
932 |
msgstr ""
|
933 |
|
934 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:551
|
935 |
msgid "No active gateways found."
|
936 |
msgstr ""
|
937 |
|
938 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:552
|
939 |
msgid "The selected gateway is not active."
|
940 |
msgstr ""
|
941 |
|
942 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:592
|
943 |
msgid "Buy with"
|
944 |
msgstr ""
|
945 |
|
946 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:596
|
947 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:49
|
948 |
msgid "Buy Now"
|
949 |
msgstr ""
|
950 |
|
951 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:629
|
952 |
msgid "No users found"
|
953 |
msgstr ""
|
954 |
|
955 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:639
|
956 |
msgid "To"
|
957 |
msgstr ""
|
958 |
|
959 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:656
|
960 |
msgid "Select Amount"
|
961 |
msgstr ""
|
962 |
|
963 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:680
|
964 |
msgid "min."
|
965 |
msgstr ""
|
966 |
|
967 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:688
|
968 |
msgid "Select Gateway"
|
969 |
msgstr ""
|
970 |
|
971 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:768
|
972 |
msgid "Buy %plural%"
|
973 |
msgstr ""
|
974 |
|
975 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:770
|
976 |
msgid "This add-on lets your users buy %_plural% using a payment gateway."
|
977 |
msgstr ""
|
978 |
|
979 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:771
|
980 |
msgid "Supported Gateways"
|
981 |
msgstr ""
|
982 |
|
983 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:772
|
984 |
msgid ""
|
985 |
"myCRED supports purchases through: PayPal Payments Standard, Skrill "
|
986 |
"(Moneybookers) and NETbilling. Let us know if you want to add other payment "
|
987 |
"gateways."
|
988 |
msgstr ""
|
989 |
|
990 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:773
|
991 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:1066
|
992 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:497
|
993 |
msgid "Usage"
|
994 |
msgstr ""
|
995 |
|
996 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:774
|
997 |
msgid "Purchases can be made using one of the following shortcodes:"
|
998 |
msgstr ""
|
999 |
|
1000 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:776
|
1001 |
msgid ""
|
1002 |
"When you want to sell a pre-set amount, sell to a specific user or use a "
|
1003 |
"specific gateway.<br />For more information on how to use the shortcode, "
|
1004 |
"please visit the"
|
1005 |
msgstr ""
|
1006 |
|
1007 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:777
|
1008 |
msgid ""
|
1009 |
"When you want to give your users the option to select an amount, gateway or "
|
1010 |
"recipient.<br />For more information on how to use the shortcode, please "
|
1011 |
"visit the"
|
1012 |
msgstr ""
|
1013 |
|
1014 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:786
|
1015 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:327
|
1016 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:344
|
1017 |
msgid "Currency"
|
1018 |
msgstr ""
|
1019 |
|
1020 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:787
|
1021 |
msgid ""
|
1022 |
"Make sure you select a currency that your PayPal account supports. Otherwise "
|
1023 |
"transactions will not be approved until you login to your PayPal account and "
|
1025 |
"will not be applied to the buyer until you have resolved the issue."
|
1026 |
msgstr ""
|
1027 |
|
1028 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:788
|
1029 |
msgid "Instant Payment Notifications"
|
1030 |
msgstr ""
|
1031 |
|
1032 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:789
|
1033 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:358
|
1034 |
msgid ""
|
1035 |
"For this gateway to work, you must login to your PayPal account and under "
|
1036 |
"\"Profile\" > \"Selling Tools\" enable \"Instant Payment Notifications\". "
|
1038 |
"have selected \"Receive IPN messages (Enabled)\"."
|
1039 |
msgstr ""
|
1040 |
|
1041 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:793
|
1042 |
msgid "Skrill"
|
1043 |
msgstr ""
|
1044 |
|
1045 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:795
|
1046 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:607
|
1047 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:321
|
1048 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:338
|
1049 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:290
|
1050 |
msgid "Sandbox Mode"
|
1051 |
msgstr ""
|
1052 |
|
1053 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:796
|
1054 |
msgid ""
|
1055 |
"Transactions made while Sandbox mode is active are real transactions! "
|
1056 |
"Remember to use your \"Test Merchant Account\" when Sandbox mode is active!"
|
1057 |
msgstr ""
|
1058 |
|
1059 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:797
|
1060 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:383
|
1061 |
msgid "Checkout Page"
|
1062 |
msgstr ""
|
1063 |
|
1064 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:798
|
1065 |
msgid ""
|
1066 |
"By default all Skrill Merchant account accept payments via Bank Transfers. "
|
1067 |
"When a user selects this option, no points are awarded! You will need to "
|
1068 |
"manually award these once the bank transfer is completed."
|
1069 |
msgstr ""
|
1070 |
|
1071 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/myCRED-addon-buy-creds.php:799
|
1072 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:403
|
1073 |
msgid ""
|
1074 |
"By default purchases made using Skrill will result in users having to signup "
|
1075 |
"for a Skrill account (if they do not have one already). You can contact "
|
1076 |
"Skrill Merchant Services and request to disable this feature."
|
1077 |
msgstr ""
|
1078 |
|
1079 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:60
|
1080 |
msgid ""
|
1081 |
"function myCRED_Payment_Gateway::process() must be over-ridden in a sub-"
|
1082 |
"class."
|
1083 |
msgstr ""
|
1084 |
|
1085 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:69
|
1086 |
msgid ""
|
1087 |
"function myCRED_Payment_Gateway::buy() must be over-ridden in a sub-class."
|
1088 |
msgstr ""
|
1089 |
|
1090 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:85
|
1091 |
msgid "This Payment Gateway has no settings"
|
1092 |
msgstr ""
|
1093 |
|
1094 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:234
|
1095 |
msgid "Go to "
|
1096 |
msgstr ""
|
1097 |
|
1098 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:255
|
1099 |
msgid "Payment Gateway Logo"
|
1100 |
msgstr ""
|
1101 |
|
1102 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:268
|
1103 |
msgid "Click here if you are not automatically redirected"
|
1104 |
msgstr ""
|
1105 |
|
1106 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/abstracts/mycred-abstract-payment-gateway.php:865
|
1107 |
msgid "Outside US"
|
1108 |
msgstr ""
|
1109 |
|
1110 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:26
|
1111 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:23
|
1112 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:28
|
1113 |
msgid "Purchase of myCRED %plural%"
|
1114 |
msgstr ""
|
1115 |
|
1116 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:55
|
1117 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:318
|
1118 |
msgid "You have tried too many times. Please contact support."
|
1119 |
msgstr ""
|
1120 |
|
1121 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:62
|
1122 |
msgid "This payment gateway has not yet been setup! Exiting."
|
1123 |
msgstr ""
|
1124 |
|
1125 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:81
|
1126 |
msgid "First name can not be empty"
|
1127 |
msgstr ""
|
1128 |
|
1129 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:87
|
1130 |
msgid "Last name can not be empty"
|
1131 |
msgstr ""
|
1132 |
|
1133 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:93
|
1134 |
msgid "Street can not be empty"
|
1135 |
msgstr ""
|
1136 |
|
1137 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:99
|
1138 |
msgid "City can not be empty"
|
1139 |
msgstr ""
|
1140 |
|
1141 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:105
|
1142 |
msgid "Country can not be empty"
|
1143 |
msgstr ""
|
1144 |
|
1145 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:113
|
1146 |
msgid "State can not be empty"
|
1147 |
msgstr ""
|
1148 |
|
1149 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:121
|
1150 |
msgid "Zip / Post Code can not be empty"
|
1151 |
msgstr ""
|
1152 |
|
1153 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:127
|
1154 |
msgid "Email can not be empty"
|
1155 |
msgstr ""
|
1156 |
|
1157 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:143
|
1158 |
msgid "Please enter your credit card number"
|
1159 |
msgstr ""
|
1160 |
|
1161 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:149
|
1162 |
msgid "Card Expiration Month must be selected"
|
1163 |
msgstr ""
|
1164 |
|
1165 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:155
|
1166 |
msgid "Card Expiration Year must be set"
|
1167 |
msgstr ""
|
1168 |
|
1169 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:161
|
1170 |
msgid "Please enter the CVV2 code from the back of your card"
|
1171 |
msgstr ""
|
1172 |
|
1173 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:170
|
1174 |
msgid "Account Routing number missing"
|
1175 |
msgstr ""
|
1176 |
|
1177 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:176
|
1178 |
msgid "Account Number missing"
|
1179 |
msgstr ""
|
1180 |
|
1181 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:184
|
1182 |
msgid "Incorrect Credit Card number"
|
1183 |
msgstr ""
|
1184 |
|
1185 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:190
|
1186 |
msgid "The credit card entered is past its expiration date."
|
1187 |
msgstr ""
|
1188 |
|
1189 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:196
|
1190 |
msgid "The CVV2 number entered is not valid."
|
1191 |
msgstr ""
|
1192 |
|
1193 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:202
|
1194 |
msgid "The bank routing number entered is not valid."
|
1195 |
msgstr ""
|
1196 |
|
1197 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:205
|
1198 |
msgid "The bank account number entered is not valid."
|
1199 |
msgstr ""
|
1200 |
|
1201 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:312
|
1202 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:333
|
1203 |
msgid "Invalid Address"
|
1204 |
msgstr ""
|
1205 |
|
1206 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:315
|
1207 |
msgid "Invalid CVV2"
|
1208 |
msgstr ""
|
1209 |
|
1210 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:321
|
1211 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:324
|
1212 |
msgid "Please contact support."
|
1213 |
msgstr ""
|
1214 |
|
1215 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:327
|
1216 |
msgid "Your email address is invalid."
|
1217 |
msgstr ""
|
1218 |
|
1219 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:330
|
1220 |
msgid "Your information is invalid. Please correct"
|
1221 |
msgstr ""
|
1222 |
|
1223 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:336
|
1224 |
msgid "Your card was declined. Please try again."
|
1225 |
msgstr ""
|
1226 |
|
1227 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:340
|
1228 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:358
|
1229 |
msgid "Duplicate transaction. Please contact support"
|
1230 |
msgstr ""
|
1231 |
|
1232 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:343
|
1233 |
msgid "Your transaction was approved"
|
1234 |
msgstr ""
|
1235 |
|
1236 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:350
|
1237 |
msgid " error: "
|
1238 |
msgstr ""
|
1239 |
|
1240 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:430
|
1241 |
msgid "Debug"
|
1242 |
msgstr ""
|
1243 |
|
1244 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:439
|
1245 |
msgid "Error"
|
1246 |
msgstr ""
|
1247 |
|
1248 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:440
|
1249 |
msgid "The following error/s were found: "
|
1250 |
msgstr ""
|
1251 |
|
1252 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:448
|
1253 |
msgid "Please update and try again."
|
1254 |
msgstr ""
|
1255 |
|
1256 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:454
|
1257 |
msgid "Transaction Approved"
|
1258 |
msgstr ""
|
1259 |
|
1260 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:455
|
1261 |
msgid "Your have successfully purchased "
|
1262 |
msgstr ""
|
1263 |
|
1264 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:456
|
1265 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:466
|
1266 |
msgid "Click here to continue"
|
1267 |
msgstr ""
|
1268 |
|
1269 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:464
|
1270 |
msgid "Transaction Declined"
|
1271 |
msgstr ""
|
1272 |
|
1273 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:465
|
1274 |
msgid ""
|
1275 |
"I am sorry but your transaction could not be completed due to the following "
|
1276 |
msgstr ""
|
1277 |
|
1278 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:474
|
1279 |
msgid "Transaction Error"
|
1280 |
msgstr ""
|
1281 |
|
1282 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:475
|
1283 |
msgid "NETbilling returned the following error: "
|
1284 |
msgstr ""
|
1285 |
|
1286 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:476
|
1287 |
msgid "Please try again."
|
1288 |
msgstr ""
|
1289 |
|
1290 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:480
|
1291 |
msgid "Purchase of"
|
1292 |
msgstr ""
|
1293 |
|
1294 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:480
|
1295 |
msgid "for"
|
1296 |
msgstr ""
|
1297 |
|
1298 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:481
|
1299 |
msgid "Fields marked * are required!"
|
1300 |
msgstr ""
|
1301 |
|
1302 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:491
|
1303 |
msgid "Billing Details"
|
1304 |
msgstr ""
|
1305 |
|
1306 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:560
|
1307 |
msgid "Month"
|
1308 |
msgstr ""
|
1309 |
|
1310 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:566
|
1311 |
msgid "Year"
|
1312 |
msgstr ""
|
1313 |
|
1314 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:613
|
1315 |
msgid "Account ID"
|
1316 |
msgstr ""
|
1317 |
|
1318 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:619
|
1319 |
msgid "Site Tag"
|
1320 |
msgstr ""
|
1321 |
|
1322 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:625
|
1323 |
msgid "Dynamic IP Security Code"
|
1324 |
msgstr ""
|
1325 |
|
1326 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:631
|
1327 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:341
|
1328 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:364
|
1329 |
msgid "Item Name"
|
1330 |
msgstr ""
|
1331 |
|
1332 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:637
|
1333 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:348
|
1334 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:371
|
1335 |
msgid "%plural% Exchange Rate"
|
1336 |
msgstr ""
|
1337 |
|
1338 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:643
|
1339 |
msgid "Allowed Attempts"
|
1340 |
msgstr ""
|
1341 |
|
1342 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:647
|
1343 |
msgid "Maximum number of attempts allowed for purchases."
|
1344 |
msgstr ""
|
1345 |
|
1346 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:650
|
1347 |
msgid "Advanced"
|
1348 |
msgstr ""
|
1349 |
|
1350 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:654
|
1351 |
msgid "Disable AVS (Address Verification System) for credit card transactions."
|
1352 |
msgstr ""
|
1353 |
|
1354 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:658
|
1355 |
msgid "Disable CVV2 (Card Verification Value 2) for credit card transactions."
|
1356 |
msgstr ""
|
1357 |
|
1358 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:662
|
1359 |
msgid ""
|
1360 |
"Disable all fraud protection other than AVS/CVV2. (This implies "
|
1361 |
"disable_negative_db)"
|
1362 |
msgstr ""
|
1363 |
|
1364 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:666
|
1365 |
msgid ""
|
1366 |
"Disable only the negative database component of the fraud protection system."
|
1367 |
msgstr ""
|
1368 |
|
1369 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:670
|
1370 |
msgid "Disable automatic sending of both merchant and customer email receipts."
|
1371 |
msgstr ""
|
1372 |
|
1373 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/netbilling.php:674
|
1374 |
msgid "Disable immediate rejection of expired cards."
|
1375 |
msgstr ""
|
1376 |
|
1377 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:225
|
1378 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:211
|
1379 |
msgid "Success"
|
1380 |
msgstr ""
|
1381 |
|
1382 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:226
|
1383 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:212
|
1384 |
msgid "Thank you for your purchase"
|
1385 |
msgstr ""
|
1386 |
|
1387 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:239
|
1388 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:225
|
1389 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:232
|
1390 |
msgid "Please setup this gateway before attempting to make a purchase!"
|
1391 |
msgstr ""
|
1392 |
|
1393 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:299
|
1394 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:266
|
1395 |
msgid "Return to "
|
1396 |
msgstr ""
|
1397 |
|
1398 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:304
|
1399 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:320
|
1400 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:271
|
1401 |
msgid "Processing payment …"
|
1402 |
msgstr ""
|
1403 |
|
1404 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:332
|
1405 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:401
|
1406 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:433
|
1407 |
msgid "Important!"
|
1408 |
msgstr ""
|
1409 |
|
1410 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:332
|
1411 |
msgid ""
|
1412 |
"Make sure you select a currency that your PayPal account supports. Otherwise "
|
1413 |
"transactions will not be approved until you login to your PayPal account and "
|
1414 |
"Accept each transaction!"
|
1415 |
msgstr ""
|
1416 |
|
1417 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:335
|
1418 |
msgid "Account Email"
|
1419 |
msgstr ""
|
1420 |
|
1421 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:345
|
1422 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:368
|
1423 |
msgid "Description of the item being purchased by the user."
|
1424 |
msgstr ""
|
1425 |
|
1426 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:351
|
1427 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:374
|
1428 |
msgid "Your selected currency"
|
1429 |
msgstr ""
|
1430 |
|
1431 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/paypal-standard.php:354
|
1432 |
msgid "IPN Address"
|
1433 |
msgstr ""
|
1434 |
|
1435 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:303
|
1436 |
msgid "Product:"
|
1437 |
msgstr ""
|
1438 |
|
1439 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:312
|
1440 |
msgid "Gift to:"
|
1441 |
msgstr ""
|
1442 |
|
1443 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:313
|
1444 |
msgid "(author)"
|
1445 |
msgstr ""
|
1446 |
|
1447 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:341
|
1448 |
msgid "Remember to use your Test Merchant Account when Sandbox mode is active!"
|
1449 |
msgstr ""
|
1450 |
|
1451 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:351
|
1452 |
msgid "Merchant Account Email"
|
1453 |
msgstr ""
|
1454 |
|
1455 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:357
|
1456 |
msgid "Secret Word"
|
1457 |
msgstr ""
|
1458 |
|
1459 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:361
|
1460 |
msgid ""
|
1461 |
"You can set your secret word under \"Merchant Tools\" in your Skrill Account."
|
1462 |
msgstr ""
|
1463 |
|
1464 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:377
|
1465 |
msgid "Confirmation Email"
|
1466 |
msgstr ""
|
1467 |
|
1468 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:380
|
1469 |
msgid ""
|
1470 |
"Ask Skrill to send me a confirmation email for each successful purchase."
|
1471 |
msgstr ""
|
1472 |
|
1473 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:386
|
1474 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:75
|
1475 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:706
|
1476 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:597
|
1477 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:186
|
1478 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:360
|
1479 |
msgid "Title"
|
1480 |
msgstr ""
|
1481 |
|
1482 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:388
|
1483 |
msgid ""
|
1484 |
"If left empty, your account email is used as title on the Skill Payment Page."
|
1485 |
msgstr ""
|
1486 |
|
1487 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:391
|
1488 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:314
|
1489 |
msgid "Logo URL"
|
1490 |
msgstr ""
|
1491 |
|
1492 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:393
|
1493 |
msgid ""
|
1494 |
"The URL to the image you want to use on the top of the gateway. For best "
|
1495 |
"integration results we recommend you use logos with dimensions up to 200px "
|
1496 |
"in width and 50px in height."
|
1497 |
msgstr ""
|
1498 |
|
1499 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:396
|
1500 |
msgid "Confirmation Note"
|
1501 |
msgstr ""
|
1502 |
|
1503 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:398
|
1504 |
msgid ""
|
1505 |
"Optional text to show user once a transaction has been successfully "
|
1506 |
"completed. This text is shown by Skrill."
|
1507 |
msgstr ""
|
1508 |
|
1509 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/skrill.php:402
|
1510 |
msgid ""
|
1511 |
"By default all Skrill Merchant account accept payments via Bank Transfers. "
|
1512 |
"When a user selects this option, no %_plural% are awarded! You will need to "
|
1513 |
"manually award these once the bank transfer is completed."
|
1514 |
msgstr ""
|
1515 |
|
1516 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:296
|
1517 |
msgid "Site ID"
|
1518 |
msgstr ""
|
1519 |
|
1520 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:302
|
1521 |
msgid "GW Password"
|
1522 |
msgstr ""
|
1523 |
|
1524 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:308
|
1525 |
msgid "Pricing ID"
|
1526 |
msgstr ""
|
1527 |
|
1528 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:320
|
1529 |
msgid "IP Verification"
|
1530 |
msgstr ""
|
1531 |
|
1532 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:323
|
1533 |
msgid "Do not verify that callbacks are coming from Zombaio."
|
1534 |
msgstr ""
|
1535 |
|
1536 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:326
|
1537 |
msgid "Language"
|
1538 |
msgstr ""
|
1539 |
|
1540 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:333
|
1541 |
msgid "Postback URL (ZScript)"
|
1542 |
msgstr ""
|
1543 |
|
1544 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/buy-creds/gateways/zombaio.php:337
|
1545 |
msgid ""
|
1546 |
"For this gateway to work, login to ZOA and set the Postback URL to the above "
|
1547 |
"address and click validate."
|
1548 |
msgstr ""
|
1549 |
|
1550 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:12
|
1551 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:155
|
1552 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:161
|
1553 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:167
|
1554 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:265
|
1555 |
msgid "Email Notices"
|
1556 |
msgstr ""
|
1557 |
|
1558 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:13
|
1559 |
msgid "Create email notices for any type of myCRED instance."
|
1560 |
msgstr ""
|
1561 |
|
1562 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:156
|
1563 |
msgid "Email Notice"
|
1564 |
msgstr ""
|
1565 |
|
1566 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:157
|
1567 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:168
|
1568 |
msgid "Add New"
|
1569 |
msgstr ""
|
1570 |
|
1571 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:158
|
1572 |
msgid "Add New Notice"
|
1573 |
msgstr ""
|
1574 |
|
1575 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:159
|
1576 |
msgid "Edit Notice"
|
1577 |
msgstr ""
|
1578 |
|
1579 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:160
|
1580 |
msgid "New Notice"
|
1581 |
msgstr ""
|
1582 |
|
1583 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:162
|
1584 |
msgid "View Notice"
|
1585 |
msgstr ""
|
1586 |
|
1587 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:163
|
1588 |
msgid "Search Email Notices"
|
1589 |
msgstr ""
|
1590 |
|
1591 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:164
|
1592 |
msgid "No email notices found"
|
1593 |
msgstr ""
|
1594 |
|
1595 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:165
|
1596 |
msgid "No email notices found in Trash"
|
1597 |
msgstr ""
|
1598 |
|
1599 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:188
|
1600 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:848
|
1601 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:319
|
1602 |
msgid "General"
|
1603 |
msgstr ""
|
1604 |
|
1605 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:189
|
1606 |
msgid "users balance changes"
|
1607 |
msgstr ""
|
1608 |
|
1609 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:190
|
1610 |
msgid "user gains %_plural%"
|
1611 |
msgstr ""
|
1612 |
|
1613 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:191
|
1614 |
msgid "user lose %_plural%"
|
1615 |
msgstr ""
|
1616 |
|
1617 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:192
|
1618 |
msgid "users balance reaches zero"
|
1619 |
msgstr ""
|
1620 |
|
1621 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:193
|
1622 |
msgid "users balance goes minus"
|
1623 |
msgstr ""
|
1624 |
|
1625 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:199
|
1626 |
msgid "Sell Content Add-on"
|
1627 |
msgstr ""
|
1628 |
|
1629 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:200
|
1630 |
msgid "user buys content"
|
1631 |
msgstr ""
|
1632 |
|
1633 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:201
|
1634 |
msgid "authors content gets sold"
|
1635 |
msgstr ""
|
1636 |
|
1637 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:208
|
1638 |
msgid "buyCREDs Add-on"
|
1639 |
msgstr ""
|
1640 |
|
1641 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:209
|
1642 |
msgid "user buys %_plural%"
|
1643 |
msgstr ""
|
1644 |
|
1645 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:216
|
1646 |
msgid "Transfer Add-on"
|
1647 |
msgstr ""
|
1648 |
|
1649 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:217
|
1650 |
msgid "user sends %_plural%"
|
1651 |
msgstr ""
|
1652 |
|
1653 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:218
|
1654 |
msgid "user receives %_plural%"
|
1655 |
msgstr ""
|
1656 |
|
1657 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:225
|
1658 |
msgid "Ranks Add-on"
|
1659 |
msgstr ""
|
1660 |
|
1661 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:226
|
1662 |
msgid "user is demoted"
|
1663 |
msgstr ""
|
1664 |
|
1665 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:227
|
1666 |
msgid "user is promoted"
|
1667 |
msgstr ""
|
1668 |
|
1669 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:267
|
1670 |
msgid ""
|
1671 |
"Settings that apply to all email notices and can not be overridden for "
|
1672 |
"individual emails."
|
1673 |
msgstr ""
|
1674 |
|
1675 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:268
|
1676 |
msgid "Email Format"
|
1677 |
msgstr ""
|
1678 |
|
1679 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:272
|
1680 |
msgid "Plain text emails only."
|
1681 |
msgstr ""
|
1682 |
|
1683 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:276
|
1684 |
msgid "HTML or Plain text emails."
|
1685 |
msgstr ""
|
1686 |
|
1687 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:279
|
1688 |
msgid "Filters"
|
1689 |
msgstr ""
|
1690 |
|
1691 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:283
|
1692 |
msgid ""
|
1693 |
"Allow WordPress and Third Party Plugins to filter the email subject before "
|
1694 |
"an email is sent."
|
1695 |
msgstr ""
|
1696 |
|
1697 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:287
|
1698 |
msgid ""
|
1699 |
"Allow WordPress and Third Party Plugins to filter the email content before "
|
1700 |
"an email is sent."
|
1701 |
msgstr ""
|
1702 |
|
1703 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:290
|
1704 |
msgid ""
|
1705 |
"Default email settings. These settings can be individually overridden when "
|
1706 |
"editing emails."
|
1707 |
msgstr ""
|
1708 |
|
1709 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:291
|
1710 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:687
|
1711 |
msgid "Email Settings"
|
1712 |
msgstr ""
|
1713 |
|
1714 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:294
|
1715 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:804
|
1716 |
msgid "Senders Name:"
|
1717 |
msgstr ""
|
1718 |
|
1719 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:298
|
1720 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:806
|
1721 |
msgid "Senders Email:"
|
1722 |
msgstr ""
|
1723 |
|
1724 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:302
|
1725 |
msgid "Reply-To:"
|
1726 |
msgstr ""
|
1727 |
|
1728 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:306
|
1729 |
msgid "Default Email Content"
|
1730 |
msgstr ""
|
1731 |
|
1732 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:310
|
1733 |
msgid "Default email content."
|
1734 |
msgstr ""
|
1735 |
|
1736 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:313
|
1737 |
msgid "Default Email Styling"
|
1738 |
msgstr ""
|
1739 |
|
1740 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:317
|
1741 |
msgid "Ignored if HTML is not allowed in emails."
|
1742 |
msgstr ""
|
1743 |
|
1744 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:622
|
1745 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:736
|
1746 |
msgid "Email Subject"
|
1747 |
msgstr ""
|
1748 |
|
1749 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:623
|
1750 |
msgid "Status"
|
1751 |
msgstr ""
|
1752 |
|
1753 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:643
|
1754 |
msgid "Not Active"
|
1755 |
msgstr ""
|
1756 |
|
1757 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:645
|
1758 |
#, php-format
|
1759 |
msgid "Scheduled:<br /><strong>%1$s</strong>"
|
1760 |
msgstr ""
|
1761 |
|
1762 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:649
|
1763 |
msgid "Active"
|
1764 |
msgstr ""
|
1765 |
|
1766 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:651
|
1767 |
#, php-format
|
1768 |
msgid "Active - Last run:<br /><strong>%1$s</strong>"
|
1769 |
msgstr ""
|
1770 |
|
1771 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:660
|
1772 |
msgid "Email is sent when"
|
1773 |
msgstr ""
|
1774 |
|
1775 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:662
|
1776 |
msgid "Missing instance for this notice!"
|
1777 |
msgstr ""
|
1778 |
|
1779 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:671
|
1780 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:673
|
1781 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:675
|
1782 |
msgid "Sent To"
|
1783 |
msgstr ""
|
1784 |
|
1785 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:671
|
1786 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:798
|
1787 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:344
|
1788 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:243
|
1789 |
msgid "User"
|
1790 |
msgstr ""
|
1791 |
|
1792 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:673
|
1793 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:799
|
1794 |
msgid "Administrator"
|
1795 |
msgstr ""
|
1796 |
|
1797 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:675
|
1798 |
msgid "Both Administrator and User"
|
1799 |
msgstr ""
|
1800 |
|
1801 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:696
|
|
|
|
|
1802 |
msgid "Available Template Tags"
|
1803 |
msgstr ""
|
1804 |
|
1805 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:707
|
1806 |
msgid "Email Header"
|
1807 |
msgstr ""
|
1808 |
|
1809 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:767
|
1810 |
msgid "Send this email notice when..."
|
1811 |
msgstr ""
|
1812 |
|
1813 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:796
|
1814 |
msgid "Recipient:"
|
1815 |
msgstr ""
|
1816 |
|
1817 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:800
|
1818 |
msgid "Both"
|
1819 |
msgstr ""
|
1820 |
|
1821 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:808
|
1822 |
msgid "Reply-To Email:"
|
1823 |
msgstr ""
|
1824 |
|
1825 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:814
|
1826 |
msgid "Save"
|
1827 |
msgstr ""
|
1828 |
|
1829 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:826
|
1830 |
msgid "CSS Styling"
|
1831 |
msgstr ""
|
1832 |
|
1833 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:841
|
1834 |
msgid "Site Related"
|
1835 |
msgstr ""
|
1836 |
|
1837 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:842
|
1838 |
msgid "Your websites title"
|
1839 |
msgstr ""
|
1840 |
|
1841 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:843
|
1842 |
msgid "Your websites address"
|
1843 |
msgstr ""
|
1844 |
|
1845 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:844
|
1846 |
msgid "Your websites tagline (description)"
|
1847 |
msgstr ""
|
1848 |
|
1849 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:845
|
1850 |
msgid "Your websites admin email"
|
1851 |
msgstr ""
|
1852 |
|
1853 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:846
|
1854 |
msgid "Total number of blog members"
|
1855 |
msgstr ""
|
1856 |
|
1857 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:849
|
1858 |
msgid "Points name in singular format"
|
1859 |
msgstr ""
|
1860 |
|
1861 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:850
|
1862 |
msgid "Points name in plural"
|
1863 |
msgstr ""
|
1864 |
|
1865 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:851
|
1866 |
msgid "Login URL"
|
1867 |
msgstr ""
|
1868 |
|
1869 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:854
|
1870 |
msgid "User Related"
|
1871 |
msgstr ""
|
1872 |
|
1873 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:855
|
1874 |
msgid "The users ID"
|
1875 |
msgstr ""
|
1876 |
|
1877 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:856
|
1878 |
msgid "The users login name (username)"
|
1879 |
msgstr ""
|
1880 |
|
1881 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:857
|
1882 |
msgid "The users display name"
|
1883 |
msgstr ""
|
1884 |
|
1885 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:858
|
1886 |
msgid "The users profile address"
|
1887 |
msgstr ""
|
1888 |
|
1889 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:859
|
1890 |
msgid "Link to the users profile address with their display name as title"
|
1891 |
msgstr ""
|
1892 |
|
1893 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:860
|
1894 |
msgid "The users current balance unformated"
|
1895 |
msgstr ""
|
1896 |
|
1897 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:861
|
1898 |
msgid "The users current balance formated"
|
1899 |
msgstr ""
|
1900 |
|
1901 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:863
|
1902 |
msgid "Post Related"
|
1903 |
msgstr ""
|
1904 |
|
1905 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:864
|
1906 |
msgid "Post Title"
|
1907 |
msgstr ""
|
1908 |
|
1909 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:865
|
1910 |
msgid "Post URL address"
|
1911 |
msgstr ""
|
1912 |
|
1913 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:866
|
1914 |
msgid "Link to post Post title"
|
1915 |
msgstr ""
|
1916 |
|
1917 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:867
|
1918 |
msgid "The post type"
|
1919 |
msgstr ""
|
1920 |
|
1921 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:943
|
1922 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:946
|
1923 |
#, php-format
|
1924 |
msgid "Email Notice Updated. View <a href=\"%1$s\">All Notices</a>."
|
1925 |
msgstr ""
|
1926 |
|
1927 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:944
|
1928 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:470
|
1929 |
msgid "Custom field updated"
|
1930 |
msgstr ""
|
1931 |
|
1932 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:945
|
1933 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:471
|
1934 |
msgid "Custom filed updated"
|
1935 |
msgstr ""
|
1936 |
|
1937 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:948
|
1938 |
msgid "Email Notice Activated"
|
1939 |
msgstr ""
|
1940 |
|
1941 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:949
|
1942 |
msgid "Email Notice Saved"
|
1943 |
msgstr ""
|
1944 |
|
1945 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:950
|
1946 |
#, php-format
|
1947 |
msgid ""
|
1948 |
"Email Notice Submitted for approval. View <a href=\"%1$s\">All Notices</a>."
|
1949 |
msgstr ""
|
1950 |
|
1951 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:952
|
1952 |
#, php-format
|
1953 |
msgid "Email Notice scheduled for: <strong>%1$s</strong>."
|
1954 |
msgstr ""
|
1955 |
|
1956 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:971
|
1957 |
msgid ""
|
1958 |
"Once a notice is \"published\" it becomes active! Select \"Save Draft\" if "
|
1959 |
"you are not yet ready to use this email notice!"
|
1960 |
msgstr ""
|
1961 |
|
1962 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:973
|
1963 |
#, php-format
|
1964 |
msgid "This notice will become active on:<br /><strong>%1$s</strong>"
|
1965 |
msgstr ""
|
1966 |
|
1967 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/email-notices/myCRED-addon-email-notices.php:975
|
1968 |
msgid "This email notice is active."
|
1969 |
msgstr ""
|
1970 |
|
1971 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/myCRED-addon-gateway.php:12
|
1972 |
msgid "Gateway"
|
1973 |
msgstr ""
|
1974 |
|
1975 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/myCRED-addon-gateway.php:13
|
1976 |
msgid ""
|
1977 |
"Let your users pay using their <strong>my</strong>CRED points balance. "
|
1978 |
"Supported Carts: WooCommerce, MarketPress. Supported Event Bookings: Event "
|
1979 |
"Espresso, Events Manager."
|
1980 |
msgstr ""
|
1981 |
|
1982 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:143
|
1983 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:271
|
1984 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:295
|
1985 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:374
|
1986 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:345
|
1987 |
msgid "Current Balance"
|
1988 |
msgstr ""
|
1989 |
|
1990 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:147
|
1991 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:113
|
1992 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:275
|
1993 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:299
|
1994 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:378
|
1995 |
msgid "Total Cost"
|
1996 |
msgstr ""
|
1997 |
|
1998 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:151
|
1999 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:279
|
2000 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:303
|
2001 |
msgid "Balance After Purchase"
|
2002 |
msgstr ""
|
2003 |
|
2004 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:175
|
2005 |
msgid "Payment"
|
2006 |
msgstr ""
|
2007 |
|
2008 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:178
|
2009 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:227
|
2010 |
#, php-format
|
2011 |
msgid "<a href=\"%s\">Go Back</a>"
|
2012 |
msgstr ""
|
2013 |
|
2014 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:181
|
2015 |
msgid "will be deducted from your account."
|
2016 |
msgstr ""
|
2017 |
|
2018 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:217
|
2019 |
#, php-format
|
2020 |
msgid ""
|
2021 |
"Sorry, but you can not use this gateway as your account is excluded. Please "
|
2022 |
"<a href=\"%s\">select a different payment method</a>."
|
2023 |
msgstr ""
|
2024 |
|
2025 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:236
|
2026 |
msgid "Paid"
|
2027 |
msgstr ""
|
2028 |
|
2029 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:239
|
2030 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:34
|
2031 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:51
|
2032 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:52
|
2033 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:76
|
2034 |
msgid "myCRED"
|
2035 |
msgstr ""
|
2036 |
|
2037 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:339
|
2038 |
msgid "%_singular% Balance"
|
2039 |
msgstr ""
|
2040 |
|
2041 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:341
|
2042 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:90
|
2043 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:26
|
2044 |
+
msgid "Payment for Order: #%order_id%"
|
2045 |
+
msgstr ""
|
2046 |
+
|
2047 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:344
|
2048 |
+
msgid "Product Sale: %post_title%"
|
2049 |
+
msgstr ""
|
2050 |
+
|
2051 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:345
|
2052 |
+
msgid "Pay using your account balance."
|
2053 |
+
msgstr ""
|
2054 |
+
|
2055 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:346
|
2056 |
+
msgid ""
|
2057 |
+
"TOTAL amount has been deducted from your account. Your current balance is: "
|
2058 |
+
"%balance_f%"
|
2059 |
+
msgstr ""
|
2060 |
+
|
2061 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:347
|
2062 |
+
msgid ""
|
2063 |
+
"Insufficient funds. Please select another form of payment. Your current "
|
2064 |
+
"balance is: %balance_f%"
|
2065 |
+
msgstr ""
|
2066 |
+
|
2067 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:348
|
2068 |
+
msgid ""
|
2069 |
+
"You must be logged in to pay with %_plural%. Please <a href=\"%login_url_here"
|
2070 |
+
"%\">login</a>."
|
2071 |
+
msgstr ""
|
2072 |
+
|
2073 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:353
|
2074 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:175
|
2075 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:19
|
2076 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:20
|
2077 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:21
|
2078 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:224
|
2079 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:246
|
2080 |
msgid "Settings"
|
2081 |
msgstr ""
|
2082 |
|
2083 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:355
|
2084 |
#, php-format
|
2085 |
msgid ""
|
2086 |
"Let your users pay for items in their shopping cart using their %s Account. "
|
2088 |
"purchase!"
|
2089 |
msgstr ""
|
2090 |
|
2091 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:358
|
2092 |
msgid "Method Name"
|
2093 |
msgstr ""
|
2094 |
|
2095 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:360
|
2096 |
msgid ""
|
2097 |
"Enter a public name for this payment method that is displayed to users - No "
|
2098 |
"HTML"
|
2099 |
msgstr ""
|
2100 |
|
2101 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:365
|
2102 |
msgid "Gateway Logo URL"
|
2103 |
msgstr ""
|
2104 |
|
2105 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:373
|
2106 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:89
|
2107 |
msgid ""
|
2108 |
"Log entry template for successful payments. Available template tags: "
|
2109 |
"%order_id%, %order_link%"
|
2110 |
msgstr ""
|
2111 |
|
2112 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:380
|
2113 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:95
|
2114 |
msgid "How much is 1 %_singular% worth in %currency%?"
|
2115 |
msgstr ""
|
2116 |
|
2117 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:385
|
2118 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:100
|
2119 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:326
|
2120 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:428
|
2121 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:459
|
2122 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:520
|
2123 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:525
|
2124 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:594
|
2125 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:658
|
2126 |
msgid "Exchange Rate"
|
2127 |
msgstr ""
|
2128 |
|
2129 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:394
|
2130 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:128
|
2131 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:330
|
2132 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:440
|
2133 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:450
|
2134 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:511
|
2135 |
+
msgid "Profit Sharing"
|
2136 |
+
msgstr ""
|
2137 |
+
|
2138 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:397
|
2139 |
+
msgid "Percentage"
|
2140 |
+
msgstr ""
|
2141 |
+
|
2142 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:399
|
2143 |
+
msgid "Option to share sales with the product owner. User zero to disable"
|
2144 |
+
msgstr ""
|
2145 |
+
|
2146 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:406
|
2147 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:338
|
2148 |
+
msgid ""
|
2149 |
+
"Log entry template for profit sharing. Available template tags: General and "
|
2150 |
+
"Post related"
|
2151 |
+
msgstr ""
|
2152 |
+
|
2153 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:411
|
2154 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:341
|
2155 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:519
|
2156 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:580
|
2157 |
+
msgid "Messages"
|
2158 |
+
msgstr ""
|
2159 |
+
|
2160 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:414
|
2161 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:352
|
2162 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:529
|
2163 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:590
|
2164 |
msgid "Insufficient Funds"
|
2165 |
msgstr ""
|
2166 |
|
2167 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:416
|
2168 |
msgid "Message to show when the user can not use this gateway."
|
2169 |
msgstr ""
|
2170 |
|
2171 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:418
|
2172 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:426
|
2173 |
msgid "Available template tags are: General."
|
2174 |
msgstr ""
|
2175 |
|
2176 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:422
|
2177 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:348
|
2178 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:468
|
2179 |
msgid "Visitors"
|
2180 |
msgstr ""
|
2181 |
|
2182 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:424
|
2183 |
msgid "Message to show to buyers that are not logged in."
|
2184 |
msgstr ""
|
2185 |
|
2186 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:430
|
2187 |
msgid "User Instructions"
|
2188 |
msgstr ""
|
2189 |
|
2190 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:432
|
2191 |
msgid "Information to show users before payment."
|
2192 |
msgstr ""
|
2193 |
|
2194 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:434
|
2195 |
msgid ""
|
2196 |
"Available template tags are: %balance% and %balance_f% for users current "
|
2197 |
"balance."
|
2198 |
msgstr ""
|
2199 |
|
2200 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:438
|
2201 |
msgid "Confirmation Information"
|
2202 |
msgstr ""
|
2203 |
|
2204 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:440
|
2205 |
msgid "Information to display on the order confirmation page. - HTML allowed"
|
2206 |
msgstr ""
|
2207 |
|
2208 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:442
|
2209 |
msgid ""
|
2210 |
"Available template tags: TOTAL - total cart cost, %balance% and %balance_f% "
|
2211 |
"- users current balance."
|
2212 |
msgstr ""
|
2213 |
|
2214 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:446
|
2215 |
msgid "Order Confirmation Email"
|
2216 |
msgstr ""
|
2217 |
|
2218 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:448
|
2219 |
#, php-format
|
2220 |
msgid ""
|
2221 |
"This is the email text to send to those who have made %s checkouts. It "
|
2224 |
"PAYMENTINFO, TOTAL, TRACKINGURL. No HTML allowed."
|
2225 |
msgstr ""
|
2226 |
|
2227 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-marketpress.php:450
|
2228 |
#, php-format
|
2229 |
msgid "Available template tags: %balance% or %balance_f% for users balance."
|
2230 |
msgstr ""
|
2231 |
|
2232 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:35
|
2233 |
msgid "Let users pay using their myCRED balance."
|
2234 |
msgstr ""
|
2235 |
|
2236 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:68
|
2237 |
msgid "Enable/Disable"
|
2238 |
msgstr ""
|
2239 |
|
2240 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:70
|
2241 |
msgid "Enable myCRED Payment"
|
2242 |
msgstr ""
|
2243 |
|
2244 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:72
|
2245 |
msgid ""
|
2246 |
"Users who are not logged in or excluded from using myCRED will not have "
|
2247 |
"access to this gateway!"
|
2248 |
msgstr ""
|
2249 |
|
2250 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:77
|
2251 |
msgid "Title to show for this payment option."
|
2252 |
msgstr ""
|
2253 |
|
2254 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:78
|
2255 |
msgid "Pay with myCRED"
|
2256 |
msgstr ""
|
2257 |
|
2258 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:82
|
2259 |
msgid "Customer Message"
|
2260 |
msgstr ""
|
2261 |
|
2262 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:84
|
2263 |
msgid "Deduct the amount from your %_plural% balance."
|
2264 |
msgstr ""
|
2265 |
|
2266 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:107
|
|
|
|
|
|
|
|
|
2267 |
msgid "Show Total"
|
2268 |
msgstr ""
|
2269 |
|
2270 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:109
|
2271 |
msgid "Show the final price in %_plural% ."
|
2272 |
msgstr ""
|
2273 |
|
2274 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:111
|
2275 |
msgid "Do not show"
|
2276 |
msgstr ""
|
2277 |
|
2278 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:112
|
2279 |
msgid "Show in Cart"
|
2280 |
msgstr ""
|
2281 |
|
2282 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:113
|
2283 |
msgid "Show on Checkout Page"
|
2284 |
msgstr ""
|
2285 |
|
2286 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:114
|
2287 |
msgid "Show in Cart and on Checkout Page"
|
2288 |
msgstr ""
|
2289 |
|
2290 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:119
|
2291 |
msgid "Label"
|
2292 |
msgstr ""
|
2293 |
|
2294 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:121
|
2295 |
msgid "Order Total in %_plural%"
|
2296 |
msgstr ""
|
2297 |
|
2298 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:130
|
2299 |
+
msgid "Option to share a percentage of the sale with the product owner."
|
2300 |
+
msgstr ""
|
2301 |
+
|
2302 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:137
|
2303 |
+
msgid ""
|
2304 |
+
"Log entry template for profit sharing. Available template tags: General and "
|
2305 |
+
"Post related."
|
2306 |
+
msgstr ""
|
2307 |
+
|
2308 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:138
|
2309 |
+
msgid "Sale of %post_title%"
|
2310 |
+
msgstr ""
|
2311 |
+
|
2312 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:163
|
2313 |
msgid "myCRED Payment"
|
2314 |
msgstr ""
|
2315 |
|
2316 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:164
|
2317 |
msgid ""
|
2318 |
"Allows users to pay using their myCRED %_singular% balance. Please note that "
|
2319 |
"users with insufficient funds and users who are not logged in will not see "
|
2320 |
"this payment gateway on the checkout page."
|
2321 |
msgstr ""
|
2322 |
|
2323 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:185
|
2324 |
msgid "You must be logged in to pay with %_plural%"
|
2325 |
msgstr ""
|
2326 |
|
2327 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:191
|
2328 |
msgid "You can not use this gateway. Please try a different payment option."
|
2329 |
msgstr ""
|
2330 |
|
2331 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:203
|
2332 |
msgid "Insufficient funds. Please try a different payment option."
|
2333 |
msgstr ""
|
2334 |
|
2335 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:267
|
2336 |
msgid "Your account has successfully been charged."
|
2337 |
msgstr ""
|
2338 |
|
2339 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-woocommerce.php:477
|
2340 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:121
|
2341 |
msgid "Your current balance"
|
2342 |
msgstr ""
|
2343 |
|
2344 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:28
|
2345 |
+
msgid "Store sale"
|
2346 |
+
msgstr ""
|
2347 |
+
|
2348 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:30
|
2349 |
+
msgid "You must be logged in to use this gateway"
|
2350 |
+
msgstr ""
|
2351 |
+
|
2352 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:31
|
2353 |
+
msgid "Insufficient Funds."
|
2354 |
+
msgstr ""
|
2355 |
+
|
2356 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:32
|
2357 |
+
msgid "Deduct the amount from your balance."
|
2358 |
+
msgstr ""
|
2359 |
+
|
2360 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:102
|
2361 |
+
msgid "Item"
|
2362 |
+
msgstr ""
|
2363 |
+
|
2364 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:188
|
2365 |
+
msgid "You can not use this gateway."
|
2366 |
+
msgstr ""
|
2367 |
+
|
2368 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:322
|
2369 |
+
msgid "Log Template for Payments"
|
2370 |
+
msgstr ""
|
2371 |
+
|
2372 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:323
|
2373 |
+
msgid ""
|
2374 |
+
"Log entry template for successful payments. Available template tags: "
|
2375 |
+
"General, %order_id%"
|
2376 |
+
msgstr ""
|
2377 |
+
|
2378 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:327
|
2379 |
+
#, php-format
|
2380 |
+
msgid "How much is 1 %s worth in %s"
|
2381 |
+
msgstr ""
|
2382 |
+
|
2383 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:333
|
2384 |
+
msgid "Payout"
|
2385 |
+
msgstr ""
|
2386 |
+
|
2387 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:334
|
2388 |
+
msgid ""
|
2389 |
+
"Option to share a percentage of the sale with the product owner (post "
|
2390 |
+
"author). User zero to disable."
|
2391 |
+
msgstr ""
|
2392 |
+
|
2393 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:344
|
2394 |
+
msgid "Instructions"
|
2395 |
+
msgstr ""
|
2396 |
+
|
2397 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:345
|
2398 |
+
msgid ""
|
2399 |
+
"Optional instructions to show users when selecting this gateway. Leave empty "
|
2400 |
+
"to hide."
|
2401 |
+
msgstr ""
|
2402 |
+
|
2403 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:349
|
2404 |
+
msgid "Message to show visitors who are not logged in."
|
2405 |
+
msgstr ""
|
2406 |
+
|
2407 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/carts/mycred-wpecommerce.php:353
|
2408 |
+
msgid ""
|
2409 |
+
"Message to show when users does not have enough %plural% to pay using this "
|
2410 |
+
"gateway."
|
2411 |
+
msgstr ""
|
2412 |
+
|
2413 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:24
|
2414 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:435
|
2415 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:496
|
2416 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:313
|
2417 |
msgid "Payments"
|
2418 |
msgstr ""
|
2419 |
|
2420 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:25
|
2421 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:36
|
2422 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:32
|
2423 |
msgid "Pay Now"
|
2424 |
msgstr ""
|
2425 |
|
2426 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:29
|
2427 |
msgid "Payment for Event Registration"
|
2428 |
msgstr ""
|
2429 |
|
2430 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:337
|
2431 |
#, php-format
|
2432 |
msgid "Activate %s"
|
2433 |
msgstr ""
|
2434 |
|
2435 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:345
|
2436 |
#, php-format
|
2437 |
msgid "Deactivate %s"
|
2438 |
msgstr ""
|
2439 |
|
2440 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:361
|
2441 |
msgid "Gateway Settings"
|
2442 |
msgstr ""
|
2443 |
|
2444 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:393
|
2445 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:425
|
2446 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:483
|
2447 |
#, php-format
|
2448 |
msgid "How many %s is 1 %s worth?"
|
2449 |
msgstr ""
|
2450 |
|
2451 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:399
|
2452 |
msgid "Gateways Settings Successfully Updated"
|
2453 |
msgstr ""
|
2454 |
|
2455 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:407
|
2456 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:495
|
2457 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:556
|
2458 |
msgid "Labels"
|
2459 |
msgstr ""
|
2460 |
|
2461 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:410
|
2462 |
msgid "Gateway Title"
|
2463 |
msgstr ""
|
2464 |
|
2465 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:412
|
2466 |
msgid "Title to show on Payment page"
|
2467 |
msgstr ""
|
2468 |
|
2469 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:415
|
2470 |
msgid "Payment Type"
|
2471 |
msgstr ""
|
2472 |
|
2473 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:417
|
2474 |
msgid "Title to show on receipts and logs"
|
2475 |
msgstr ""
|
2476 |
|
2477 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:420
|
2478 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:512
|
2479 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:573
|
2480 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:349
|
2481 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:541
|
2482 |
msgid "Button Label"
|
2483 |
msgstr ""
|
2484 |
|
2485 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:422
|
2486 |
msgid "Pay Button"
|
2487 |
msgstr ""
|
2488 |
|
2489 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:425
|
2490 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:132
|
2491 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:135
|
2492 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:307
|
2493 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:310
|
2494 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:340
|
2495 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:537
|
2496 |
msgid "Price"
|
2497 |
msgstr ""
|
2498 |
|
2499 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:435
|
2500 |
msgid ""
|
2501 |
"You can disable purchases using this gateway by adding a custom Event Meta: "
|
2502 |
"<code>mycred_no_sale</code>"
|
2503 |
msgstr ""
|
2504 |
|
2505 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:436
|
2506 |
msgid "Users must be logged in to use this gateway!"
|
2507 |
msgstr ""
|
2508 |
|
2509 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:442
|
2510 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:453
|
2511 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:514
|
2512 |
+
msgid ""
|
2513 |
+
"Option to share sales with the event owner (post author). Use zero to "
|
2514 |
+
"disable."
|
2515 |
+
msgstr ""
|
2516 |
+
|
2517 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:445
|
2518 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:22
|
2519 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:23
|
2520 |
msgid "Log"
|
2521 |
msgstr ""
|
2522 |
|
2523 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:448
|
2524 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:549
|
2525 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:623
|
2526 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:681
|
2527 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:349
|
2528 |
msgid "Log Entry"
|
2529 |
msgstr ""
|
2530 |
|
2531 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:455
|
2532 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:898
|
2533 |
msgid "Templates"
|
2534 |
msgstr ""
|
2535 |
|
2536 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:458
|
2537 |
msgid "Solvent users"
|
2538 |
msgstr ""
|
2539 |
|
2540 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:460
|
2541 |
msgid ""
|
2542 |
"Message to show users on the payment page before they are charged. Leave "
|
2543 |
"empty to hide.<br />Available template tags: General"
|
2544 |
msgstr ""
|
2545 |
|
2546 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:463
|
2547 |
msgid "Insolvent users"
|
2548 |
msgstr ""
|
2549 |
|
2550 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:465
|
2551 |
msgid ""
|
2552 |
"Message to show users who do not have enough points to pay.<br />Available "
|
2553 |
"template tags: General"
|
2554 |
msgstr ""
|
2555 |
|
2556 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:470
|
2557 |
msgid ""
|
2558 |
"Message to show visitors (users not logged in) on the payment page.<br /"
|
2559 |
">Available template tags: General"
|
2560 |
msgstr ""
|
2561 |
|
2562 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventespresso3.php:480
|
2563 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:380
|
2564 |
msgid "Update Settings"
|
2565 |
msgstr ""
|
2566 |
|
2567 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:30
|
2568 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:26
|
2569 |
msgid "Payment for tickets to %link_with_title%"
|
2570 |
msgstr ""
|
2571 |
|
2572 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:31
|
2573 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:27
|
2574 |
msgid "Ticket refund for %link_with_title%"
|
2575 |
msgstr ""
|
2576 |
|
2577 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:35
|
2578 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:31
|
2579 |
msgid "Pay using your %_plural% balance"
|
2580 |
msgstr ""
|
2581 |
|
2582 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:37
|
2583 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:33
|
2584 |
msgid "Pay"
|
2585 |
msgstr ""
|
2586 |
|
2587 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:40
|
2588 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:36
|
2589 |
msgid "Thank you for your payment!"
|
2590 |
msgstr ""
|
2591 |
|
2592 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:41
|
2593 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:37
|
2594 |
msgid "I'm sorry but you can not pay for these tickets using %_plural%"
|
2595 |
msgstr ""
|
2596 |
|
2597 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:129
|
2598 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:304
|
2599 |
msgid "Ticket Type"
|
2600 |
msgstr ""
|
2601 |
|
2602 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:138
|
2603 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:313
|
2604 |
msgid "Spaces"
|
2605 |
msgstr ""
|
2606 |
|
2607 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:220
|
2608 |
+
msgid "You can not pay using this gateway."
|
2609 |
msgstr ""
|
2610 |
|
2611 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:357
|
2612 |
+
msgid "Reject"
|
2613 |
msgstr ""
|
2614 |
|
2615 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:361
|
2616 |
+
msgid "Delete"
|
2617 |
+
msgstr ""
|
2618 |
+
|
2619 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:366
|
2620 |
+
msgid "Edit/View"
|
2621 |
msgstr ""
|
2622 |
|
2623 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:437
|
2624 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:498
|
2625 |
msgid "Disabled - Users CAN NOT pay for tickets using %plural%."
|
2626 |
msgstr ""
|
2627 |
|
2628 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:438
|
2629 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:499
|
2630 |
msgid "Single - Users can ONLY pay for tickets using %plural%."
|
2631 |
msgstr ""
|
2632 |
|
2633 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:439
|
2634 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:500
|
2635 |
msgid "Multi - Users can pay for tickets using other gateways or %plural%."
|
2636 |
msgstr ""
|
2637 |
|
2638 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:443
|
2639 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:476
|
2640 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:504
|
2641 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:537
|
2642 |
msgid "Refunds"
|
2643 |
msgstr ""
|
2644 |
|
2645 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:446
|
2646 |
msgid ""
|
2647 |
+
"The percentage of the paid amount to refund if a user cancells their "
|
2648 |
+
"booking. Use zero for no refunds. No refunds are given to \"Rejected\" "
|
2649 |
+
"bookings!"
|
2650 |
msgstr ""
|
2651 |
|
2652 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:466
|
2653 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:527
|
2654 |
msgid "Log Templates"
|
2655 |
msgstr ""
|
2656 |
|
2657 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:469
|
2658 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:530
|
2659 |
msgid "Purchases"
|
2660 |
msgstr ""
|
2661 |
|
2662 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:472
|
2663 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:479
|
2664 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:533
|
2665 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:540
|
2666 |
msgid "Available template tags: General and Post related."
|
2667 |
msgstr ""
|
2668 |
|
2669 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:498
|
2670 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:559
|
2671 |
msgid "Payment Link Label"
|
2672 |
msgstr ""
|
2673 |
|
2674 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:501
|
2675 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:562
|
2676 |
msgid ""
|
2677 |
"The payment link shows / hides the payment form under \"My Bookings\". No "
|
2678 |
"HTML allowed."
|
2679 |
msgstr ""
|
2680 |
|
2681 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:505
|
2682 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:566
|
2683 |
msgid "Payment Header"
|
2684 |
msgstr ""
|
2685 |
|
2686 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:508
|
2687 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:569
|
2688 |
msgid "Shown on top of the payment form. No HTML allowed."
|
2689 |
msgstr ""
|
2690 |
|
2691 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:515
|
2692 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:576
|
2693 |
msgid "The button label for payments. No HTML allowed!"
|
2694 |
msgstr ""
|
2695 |
|
2696 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:522
|
2697 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:583
|
|
|
|
|
|
|
2698 |
msgid "Successful Payments"
|
2699 |
msgstr ""
|
2700 |
|
2701 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:525
|
2702 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager-pro.php:532
|
2703 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:586
|
2704 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:593
|
2705 |
msgid "No HTML allowed! Available template tags: General"
|
2706 |
msgstr ""
|
2707 |
|
2708 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:382
|
2709 |
+
msgid "Balance After Payment"
|
2710 |
+
msgstr ""
|
2711 |
+
|
2712 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:489
|
2713 |
+
msgid "Click to toggle"
|
2714 |
+
msgstr ""
|
2715 |
+
|
2716 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:489
|
2717 |
+
#, php-format
|
2718 |
+
msgid "%s Payments"
|
2719 |
+
msgstr ""
|
2720 |
+
|
2721 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/gateway/event-booking/mycred-eventsmanager.php:507
|
2722 |
+
msgid ""
|
2723 |
+
"The percentage of the paid amount to refund if a booking gets cancelled. Use "
|
2724 |
+
"zero for no refunds. No refunds are given to \"Rejected\" bookings."
|
2725 |
+
msgstr ""
|
2726 |
+
|
2727 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:12
|
2728 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:40
|
2729 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:41
|
2730 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:42
|
2731 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:466
|
2732 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:743
|
2733 |
msgid "Import"
|
2734 |
msgstr ""
|
2735 |
|
2736 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:13
|
2737 |
msgid ""
|
2738 |
"With the Import add-on you can import CSV files, CubePoints or existing "
|
2739 |
"points under any custom user meta values."
|
2740 |
msgstr ""
|
2741 |
|
2742 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:91
|
2743 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:749
|
2744 |
msgid "CSV File"
|
2745 |
msgstr ""
|
2746 |
|
2747 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:92
|
2748 |
msgid "Import %_plural% from a comma-separated values (CSV) file."
|
2749 |
msgstr ""
|
2750 |
|
2751 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:95
|
2752 |
msgid "CubePoints"
|
2753 |
msgstr ""
|
2754 |
|
2755 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:96
|
2756 |
msgid "Import CubePoints"
|
2757 |
msgstr ""
|
2758 |
|
2759 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:99
|
2760 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:769
|
2761 |
msgid "Custom User Meta"
|
2762 |
msgstr ""
|
2763 |
|
2764 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:100
|
2765 |
msgid "Import %_plural% from pre-existing custom user meta."
|
2766 |
msgstr ""
|
2767 |
|
2768 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:217
|
2769 |
msgid "No file selected. Please select your CSV file and try again."
|
2770 |
msgstr ""
|
2771 |
|
2772 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:232
|
2773 |
msgid "Failed to load file."
|
2774 |
msgstr ""
|
2775 |
|
2776 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:253
|
2777 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:423
|
2778 |
#, php-format
|
2779 |
msgid ""
|
2780 |
"Zero rows imported! Skipped %d entries. Import completed in %.2f seconds."
|
2781 |
msgstr ""
|
2782 |
|
2783 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:262
|
2784 |
msgid ""
|
2785 |
"No valid records found in file. Make sure you have selected the correct way "
|
2786 |
"to identify users in the mycred_user column!"
|
2787 |
msgstr ""
|
2788 |
|
2789 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:268
|
2790 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:351
|
2791 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:438
|
2792 |
#, php-format
|
2793 |
msgid ""
|
2794 |
"Import successfully completed. A total of %d users were effected and %d "
|
2795 |
"entires were skipped. Import completed in %.2f seconds."
|
2796 |
msgstr ""
|
2797 |
|
2798 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:302
|
2799 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:587
|
2800 |
msgid "No CubePoints found."
|
2801 |
msgstr ""
|
2802 |
|
2803 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:336
|
2804 |
#, php-format
|
2805 |
msgid ""
|
2806 |
"Zero CubePoints imported! Skipped %d entries. Import completed in %.2f "
|
2807 |
"seconds."
|
2808 |
msgstr ""
|
2809 |
|
2810 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:345
|
2811 |
msgid "No valid CubePoints founds."
|
2812 |
msgstr ""
|
2813 |
|
2814 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:371
|
2815 |
msgid "Missing meta key. Not sure what I should be looking for."
|
2816 |
msgstr ""
|
2817 |
|
2818 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:390
|
2819 |
#, php-format
|
2820 |
msgid "No rows found for the <strong>%s</strong> meta key."
|
2821 |
msgstr ""
|
2822 |
|
2823 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:432
|
2824 |
msgid "No valid records founds."
|
2825 |
msgstr ""
|
2826 |
|
2827 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:478
|
2828 |
msgid "Remember to de-activate this add-on once you are done importing!"
|
2829 |
msgstr ""
|
2830 |
|
2831 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:510
|
2832 |
msgid "File"
|
2833 |
msgstr ""
|
2834 |
|
2835 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:514
|
2836 |
msgid "Maximum allowed upload size is "
|
2837 |
msgstr ""
|
2838 |
|
2839 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:514
|
2840 |
msgid ""
|
2841 |
"Required columns: <code>mycred_user</code> and <code>mycred_amount</code>. "
|
2842 |
"Optional columns: <code>mycred_log</code>."
|
2843 |
msgstr ""
|
2844 |
|
2845 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:517
|
2846 |
msgid "Identify Users By"
|
2847 |
msgstr ""
|
2848 |
|
2849 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:520
|
2850 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:343
|
2851 |
msgid "ID"
|
2852 |
msgstr ""
|
2853 |
|
2854 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:521
|
|
|
2855 |
msgid "Username"
|
2856 |
msgstr ""
|
2857 |
|
2858 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:522
|
2859 |
msgid "Email"
|
2860 |
msgstr ""
|
2861 |
|
2862 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:529
|
2863 |
msgid "How much is 1 imported value worth?"
|
2864 |
msgstr ""
|
2865 |
|
2866 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:534
|
2867 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:602
|
2868 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:666
|
2869 |
msgid "Round"
|
2870 |
msgstr ""
|
2871 |
|
2872 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:535
|
2873 |
msgid "None"
|
2874 |
msgstr ""
|
2875 |
|
2876 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:536
|
2877 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:604
|
2878 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:668
|
2879 |
msgid "Round Up"
|
2880 |
msgstr ""
|
2881 |
|
2882 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:537
|
2883 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:605
|
2884 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:669
|
2885 |
msgid "Round Down"
|
2886 |
msgstr ""
|
2887 |
|
2888 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:542
|
2889 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:610
|
2890 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:674
|
2891 |
msgid "Precision"
|
2892 |
msgstr ""
|
2893 |
|
2894 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:544
|
2895 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:612
|
2896 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:676
|
2897 |
msgid ""
|
2898 |
"The optional number of decimal digits to round to. Use zero to round the "
|
2899 |
"nearest whole number."
|
2900 |
msgstr ""
|
2901 |
|
2902 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:553
|
2903 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:627
|
2904 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:685
|
2905 |
msgid "See the help tab for available template tags. Leave blank to disable."
|
2906 |
msgstr ""
|
2907 |
|
2908 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:558
|
2909 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:632
|
2910 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:696
|
2911 |
msgid "Run Import"
|
2912 |
msgstr ""
|
2913 |
|
2914 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:585
|
2915 |
#, php-format
|
2916 |
msgid "Found %d users with CubePoints."
|
2917 |
msgstr ""
|
2918 |
|
2919 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:588
|
2920 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:652
|
2921 |
msgid "Meta Key"
|
2922 |
msgstr ""
|
2923 |
|
2924 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:603
|
2925 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:667
|
2926 |
msgid "Do not round"
|
2927 |
msgstr ""
|
2928 |
|
2929 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:617
|
2930 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:688
|
2931 |
msgid "After Import"
|
2932 |
msgstr ""
|
2933 |
|
2934 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:620
|
2935 |
msgid "Delete users CubePoints balance."
|
2936 |
msgstr ""
|
2937 |
|
2938 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:691
|
2939 |
msgid "Delete the old value."
|
2940 |
msgstr ""
|
2941 |
|
2942 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:720
|
2943 |
msgid "Failed to get file contents."
|
2944 |
msgstr ""
|
2945 |
|
2946 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:725
|
2947 |
msgid "Failed to put file contents."
|
2948 |
msgstr ""
|
2949 |
|
2950 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:745
|
2951 |
msgid ""
|
2952 |
"This add-on lets you import %_plural% either though a CSV-file or from your "
|
2953 |
"database. Remember that the import can take time depending on your file size "
|
2954 |
"or the number of users being imported."
|
2955 |
msgstr ""
|
2956 |
|
2957 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:751
|
2958 |
msgid "CSV Import"
|
2959 |
msgstr ""
|
2960 |
|
2961 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:752
|
2962 |
msgid ""
|
2963 |
"Imports using a comma-separated values file requires the following columns:"
|
2964 |
msgstr ""
|
2965 |
|
2966 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:753
|
2967 |
msgid ""
|
2968 |
"Column identifing the user. All rows must identify the user the same way, "
|
2969 |
"either using an ID, Username (user_login) or email. Users that can not be "
|
2970 |
"found will be ignored."
|
2971 |
msgstr ""
|
2972 |
|
2973 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:754
|
2974 |
msgid ""
|
2975 |
"Column with the amount to be imported. If set, an exchange rate is applied "
|
2976 |
"to this value before import."
|
2977 |
msgstr ""
|
2978 |
|
2979 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:755
|
2980 |
msgid ""
|
2981 |
"Optionally you can also use the <code>mycred_log</code> column to pre-define "
|
2982 |
"the log entry for each import."
|
2983 |
msgstr ""
|
2984 |
|
2985 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:759
|
2986 |
msgid "Cubepoints"
|
2987 |
msgstr ""
|
2988 |
|
2989 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:761
|
2990 |
msgid "Cubepoints Import"
|
2991 |
msgstr ""
|
2992 |
|
2993 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:762
|
2994 |
msgid ""
|
2995 |
"When this page loads, the importer will automatically check if you have been "
|
2996 |
"using Cubepoints. If you have, you can import these with the option to "
|
2998 |
"clean."
|
2999 |
msgstr ""
|
3000 |
|
3001 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:763
|
3002 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:773
|
3003 |
msgid ""
|
3004 |
"Before a value is imported, you can apply an exchange rate. To import "
|
3005 |
"without changing the value, use 1 as the exchange rate."
|
3006 |
msgstr ""
|
3007 |
|
3008 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:764
|
3009 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:774
|
3010 |
msgid ""
|
3011 |
"You can select to add a log entry for each import or leave the template "
|
3012 |
"empty to skip."
|
3013 |
msgstr ""
|
3014 |
|
3015 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:765
|
3016 |
msgid ""
|
3017 |
"The Cubepoints importer will automatically disable itself if no Cubepoints "
|
3018 |
"installation exists."
|
3019 |
msgstr ""
|
3020 |
|
3021 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:771
|
3022 |
msgid "Custom User Meta Import"
|
3023 |
msgstr ""
|
3024 |
|
3025 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:772
|
3026 |
msgid ""
|
3027 |
"You can import any type of points that have previously been saved in your "
|
3028 |
"database. All you need is the meta key under which it has been saved."
|
3029 |
msgstr ""
|
3030 |
|
3031 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/import/myCRED-addon-import.php:775
|
3032 |
msgid ""
|
3033 |
"Please note that the meta key is case sensitive and can not contain "
|
3034 |
"whitespaces!"
|
3035 |
msgstr ""
|
3036 |
|
3037 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:12
|
3038 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:167
|
3039 |
msgid "Notifications"
|
3040 |
msgstr ""
|
3041 |
|
3042 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:13
|
3043 |
msgid "Notify your users when their balances changes."
|
3044 |
msgstr ""
|
3045 |
|
3046 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:169
|
3047 |
msgid "Styling"
|
3048 |
msgstr ""
|
3049 |
|
3050 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:173
|
3051 |
msgid "Use the included CSS Styling for notifications."
|
3052 |
msgstr ""
|
3053 |
|
3054 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:180
|
3055 |
msgid ""
|
3056 |
"Use %entry% to show the log entry in the notice and %amount% for the amount."
|
3057 |
msgstr ""
|
3058 |
|
3059 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:183
|
3060 |
msgid "Transient Lifespan"
|
3061 |
msgstr ""
|
3062 |
|
3063 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:187
|
3064 |
msgid ""
|
3065 |
"The number of days a users notification is saved before being automatically "
|
3066 |
"deleted."
|
3067 |
msgstr ""
|
3068 |
|
3069 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:190
|
3070 |
msgid "Duration"
|
3071 |
msgstr ""
|
3072 |
|
3073 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/notifications/myCRED-addon-notifications.php:194
|
3074 |
msgid ""
|
3075 |
"The number of milliseconds a notice should be visible.<br />Use zero to "
|
3076 |
"require that the user closes the notice manually. 1000 milliseconds = 1 "
|
3077 |
"second."
|
3078 |
msgstr ""
|
3079 |
|
3080 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:12
|
3081 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:166
|
3082 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:172
|
3083 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:178
|
3084 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:701
|
3085 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:893
|
3086 |
msgid "Ranks"
|
3087 |
msgstr ""
|
3088 |
|
3089 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:13
|
3090 |
msgid ""
|
3091 |
"Create ranks for users reaching a certain number of points with the option "
|
3092 |
"to add logos for each rank."
|
3093 |
msgstr ""
|
3094 |
|
3095 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:167
|
3096 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:396
|
3097 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:413
|
3098 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:509
|
3099 |
msgid "Rank"
|
3100 |
msgstr ""
|
3101 |
|
3102 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:169
|
3103 |
msgid "Add New Rank"
|
3104 |
msgstr ""
|
3105 |
|
3106 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:170
|
3107 |
msgid "Edit Rank"
|
3108 |
msgstr ""
|
3109 |
|
3110 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:171
|
3111 |
msgid "New Rank"
|
3112 |
msgstr ""
|
3113 |
|
3114 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:173
|
3115 |
msgid "View Rank"
|
3116 |
msgstr ""
|
3117 |
|
3118 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:174
|
3119 |
msgid "Search Ranks"
|
3120 |
msgstr ""
|
3121 |
|
3122 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:175
|
3123 |
msgid "No ranks found"
|
3124 |
msgstr ""
|
3125 |
|
3126 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:176
|
3127 |
msgid "No ranks found in Trash"
|
3128 |
msgstr ""
|
3129 |
|
3130 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:242
|
3131 |
#, php-format
|
3132 |
msgid "Completed - Total of %d users effected"
|
3133 |
msgstr ""
|
3134 |
|
3135 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:244
|
3136 |
msgid "Log is Empty"
|
3137 |
msgstr ""
|
3138 |
|
3139 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:438
|
3140 |
msgid "Newbie"
|
3141 |
msgstr ""
|
3142 |
|
3143 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:469
|
3144 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:472
|
3145 |
#, php-format
|
3146 |
msgid "Rank Updated. View <a href=\"%1$s\">All Ranks</a>."
|
3147 |
msgstr ""
|
3148 |
|
3149 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:474
|
3150 |
msgid "Rank Activated"
|
3151 |
msgstr ""
|
3152 |
|
3153 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:475
|
3154 |
msgid "Rank Saved"
|
3155 |
msgstr ""
|
3156 |
|
3157 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:476
|
3158 |
#, php-format
|
3159 |
msgid "Rank Submitted for approval. View <a href=\"%1$s\">All Ranks</a>."
|
3160 |
msgstr ""
|
3161 |
|
3162 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:478
|
3163 |
#, php-format
|
3164 |
msgid "Rank scheduled for: <strong>%1$s</strong>."
|
3165 |
msgstr ""
|
3166 |
|
3167 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:535
|
3168 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:590
|
3169 |
msgid "Rank Title"
|
3170 |
msgstr ""
|
3171 |
|
3172 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:536
|
3173 |
msgid "Logo"
|
3174 |
msgstr ""
|
3175 |
|
3176 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:537
|
3177 |
msgid "Requirement"
|
3178 |
msgstr ""
|
3179 |
|
3180 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:538
|
3181 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:365
|
3182 |
msgid "Users"
|
3183 |
msgstr ""
|
3184 |
|
3185 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:554
|
3186 |
msgid "No Logo Set"
|
3187 |
msgstr ""
|
3188 |
|
3189 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:563
|
3190 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:568
|
3191 |
msgid "Any Value"
|
3192 |
msgstr ""
|
3193 |
|
3194 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:570
|
3195 |
msgid "Maximum %plural%"
|
3196 |
msgstr ""
|
3197 |
|
3198 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:603
|
3199 |
msgid "Rank Settings"
|
3200 |
msgstr ""
|
3201 |
|
3202 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:625
|
3203 |
msgid "Minimum %plural% to reach this rank"
|
3204 |
msgstr ""
|
3205 |
|
3206 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:629
|
3207 |
msgid "Maximum %plural% to be included in this rank"
|
3208 |
msgstr ""
|
3209 |
|
3210 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:634
|
3211 |
msgid "All Published Ranks"
|
3212 |
msgstr ""
|
3213 |
|
3214 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:641
|
3215 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:643
|
3216 |
msgid "Not Set"
|
3217 |
msgstr ""
|
3218 |
|
3219 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:648
|
3220 |
msgid "No Ranks found"
|
3221 |
msgstr ""
|
3222 |
|
3223 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:703
|
3224 |
msgid "Rank Features"
|
3225 |
msgstr ""
|
3226 |
|
3227 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:707
|
3228 |
msgid "%plural% requirement"
|
3229 |
msgstr ""
|
3230 |
|
3231 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:708
|
3232 |
msgid "Featured Image (Logo)"
|
3233 |
msgstr ""
|
3234 |
|
3235 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:709
|
3236 |
msgid "Content"
|
3237 |
msgstr ""
|
3238 |
|
3239 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:710
|
3240 |
msgid "Excerpt"
|
3241 |
msgstr ""
|
3242 |
|
3243 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:711
|
3244 |
msgid "Comments"
|
3245 |
msgstr ""
|
3246 |
|
3247 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:712
|
3248 |
msgid "Page Attributes"
|
3249 |
msgstr ""
|
3250 |
|
3251 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:713
|
3252 |
msgid "Custom Fields"
|
3253 |
msgstr ""
|
3254 |
|
3255 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:716
|
3256 |
msgid "Public"
|
3257 |
msgstr ""
|
3258 |
|
3259 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:720
|
3260 |
msgid ""
|
3261 |
"If you want to create a template archive for each rank, you must select to "
|
3262 |
"have ranks public. Defaults to disabled."
|
3263 |
msgstr ""
|
3264 |
|
3265 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:723
|
3266 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:896
|
3267 |
msgid "Rank Basis"
|
3268 |
msgstr ""
|
3269 |
|
3270 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:726
|
3271 |
msgid "Users are ranked according to their current balance."
|
3272 |
msgstr ""
|
3273 |
|
3274 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:729
|
3275 |
msgid ""
|
3276 |
"Users are ranked according to the total amount of %_plural% they have "
|
3277 |
"accumulated."
|
3278 |
msgstr ""
|
3279 |
|
3280 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:733
|
3281 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:738
|
3282 |
msgid "Calculate Totals"
|
3283 |
msgstr ""
|
3284 |
|
3285 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:736
|
3286 |
msgid ""
|
3287 |
"Use this button to calculate or re-calcualte your users totals. If not used, "
|
3288 |
"the users current balance will be used as a starting point."
|
3289 |
msgstr ""
|
3290 |
|
3291 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:736
|
3292 |
msgid ""
|
3293 |
"Once a users total has been calculated, they will be assigned to their "
|
3294 |
"appropriate roles. For this reason, it is highly recommended that you first "
|
3295 |
"setup your ranks!"
|
3296 |
msgstr ""
|
3297 |
|
3298 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:737
|
3299 |
msgid ""
|
3300 |
"Depending on your log size and number of users this process may take a "
|
3301 |
"while. Please do not leave, click \"Update Settings\" or re-fresh this page "
|
3302 |
"until this is completed!"
|
3303 |
msgstr ""
|
3304 |
|
3305 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:742
|
3306 |
msgid "Archive URL"
|
3307 |
msgstr ""
|
3308 |
|
3309 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:746
|
3310 |
msgid "Ignored if Ranks are not public"
|
3311 |
msgstr ""
|
3312 |
|
3313 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:749
|
3314 |
msgid "Display Order"
|
3315 |
msgstr ""
|
3316 |
|
3317 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:756
|
3318 |
msgid "Ascending - Lowest rank to highest"
|
3319 |
msgstr ""
|
3320 |
|
3321 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:757
|
3322 |
msgid "Descending - Highest rank to lowest"
|
3323 |
msgstr ""
|
3324 |
|
3325 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:766
|
3326 |
msgid ""
|
3327 |
"Select in what order ranks should be displayed in your admin area and/or "
|
3328 |
"front if ranks are \"Public\""
|
3329 |
msgstr ""
|
3330 |
|
3331 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:782
|
3332 |
msgid "Rank in BuddyPress"
|
3333 |
msgstr ""
|
3334 |
|
3335 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:850
|
3336 |
msgid "Script Communication Error"
|
3337 |
msgstr ""
|
3338 |
|
3339 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:895
|
3340 |
msgid ""
|
3341 |
"You can create ranks according to the amount of points a user has. By "
|
3342 |
"default, ranks are only visible in widgets and shortcodes however it is "
|
3344 |
"specific ones."
|
3345 |
msgstr ""
|
3346 |
|
3347 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:897
|
3348 |
msgid ""
|
3349 |
"As of version 1.2, you can select to rank users according to their current "
|
3350 |
"balance or the total amount of %_plural% they have accumulated. This is "
|
3352 |
"%_plural% to pay for items in your store or event tickets."
|
3353 |
msgstr ""
|
3354 |
|
3355 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:899
|
3356 |
msgid ""
|
3357 |
"Ranks are just another custom post type which means that you can, if you "
|
3358 |
"select to make Ranks Public, create custom template files for ranks in your "
|
3359 |
"theme folder."
|
3360 |
msgstr ""
|
3361 |
|
3362 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:900
|
3363 |
#, php-format
|
3364 |
msgid ""
|
3365 |
"For more information on Templates for Custom Post Types visit the <a href="
|
3366 |
"\"%s\">WordPress Codex</a>."
|
3367 |
msgstr ""
|
3368 |
|
3369 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:901
|
3370 |
msgid "Changing URL Slug"
|
3371 |
msgstr ""
|
3372 |
|
3373 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:902
|
3374 |
msgid "You can change the URL slug used for ranks to any URL friendly value."
|
3375 |
msgstr ""
|
3376 |
|
3377 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/myCRED-addon-ranks.php:903
|
3378 |
msgid ""
|
3379 |
"If you are using a custom permalink structure and you make ranks public or "
|
3380 |
"change the slug, you will need to visit your permalink settings page and "
|
3382 |
"a 404 error message when trying to view a rank archive page."
|
3383 |
msgstr ""
|
3384 |
|
3385 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/includes/mycred-rank-functions.php:148
|
3386 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/includes/mycred-rank-functions.php:154
|
3387 |
msgid "No Rank"
|
3388 |
msgstr ""
|
3389 |
|
3390 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/includes/mycred-rank-shortcodes.php:57
|
3391 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/includes/mycred-rank-shortcodes.php:132
|
3392 |
msgid "No users found with this rank"
|
3393 |
msgstr ""
|
3394 |
|
3395 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/includes/mycred-rank-shortcodes.php:62
|
3396 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:223
|
3397 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:226
|
3398 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:285
|
3399 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:334
|
3400 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:338
|
3401 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:342
|
3402 |
msgid "error"
|
3403 |
msgstr ""
|
3404 |
|
3405 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/ranks/includes/mycred-rank-shortcodes.php:62
|
3406 |
msgid "Rank ID is required!"
|
3407 |
msgstr ""
|
3408 |
|
3409 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:12
|
3410 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:304
|
3411 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:1061
|
3412 |
msgid "Sell Content"
|
3413 |
msgstr ""
|
3414 |
|
3415 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:13
|
3416 |
msgid ""
|
3417 |
"This add-on allows you to sell posts, pages or any public post types on your "
|
3418 |
"website. You can either sell the entire content or using our shortcode, sell "
|
3419 |
"parts of your content allowing you to offer \"teasers\"."
|
3420 |
msgstr ""
|
3421 |
|
3422 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:42
|
3423 |
msgid "<p>Buy this %post_type% for only %price% %buy_button%</p>"
|
3424 |
msgstr ""
|
3425 |
|
3426 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:43
|
3427 |
msgid ""
|
3428 |
"<p><a href=\"%login_url_here%\">Login</a> to buy access to this %post_type%."
|
3429 |
"</p>"
|
3430 |
msgstr ""
|
3431 |
|
3432 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:44
|
3433 |
msgid ""
|
3434 |
"<p>You do not have enough %plural% to buy access to this %post_type%.</p>\n"
|
3435 |
"<p><strong>Price</strong>: %price%</p>"
|
3436 |
msgstr ""
|
3437 |
|
3438 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:54
|
3439 |
msgid "Purchase of %link_with_title%"
|
3440 |
msgstr ""
|
3441 |
|
3442 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:55
|
3443 |
msgid "Sale of %link_with_title%"
|
3444 |
msgstr ""
|
3445 |
|
3446 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:72
|
3447 |
msgid "Hours"
|
3448 |
msgstr ""
|
3449 |
|
3450 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:214
|
3451 |
msgid "You can not buy this content."
|
3452 |
msgstr ""
|
3453 |
|
3454 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:277
|
3455 |
msgid "Error. Try Again"
|
3456 |
msgstr ""
|
3457 |
|
3458 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:299
|
3459 |
msgid "No Payout. Just charge."
|
3460 |
msgstr ""
|
3461 |
|
3462 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:300
|
3463 |
msgid "Pay Content Author."
|
3464 |
msgstr ""
|
3465 |
|
3466 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:306
|
3467 |
msgid "Post Types"
|
3468 |
msgstr ""
|
3469 |
|
3470 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:310
|
3471 |
msgid "Comma separated list of post types that can be sold."
|
3472 |
msgstr ""
|
3473 |
|
3474 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:327
|
3475 |
msgid "Percentage to pay Author"
|
3476 |
msgstr ""
|
3477 |
|
3478 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:329
|
3479 |
msgid ""
|
3480 |
"Percentage of the price to pay the author. Can not be zero and is ignored if "
|
3481 |
"authors are not paid."
|
3482 |
msgstr ""
|
3483 |
|
3484 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:337
|
3485 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:1064
|
3486 |
msgid "Defaults"
|
3487 |
msgstr ""
|
3488 |
|
3489 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:345
|
3490 |
msgid "Allow authors to change price."
|
3491 |
msgstr ""
|
3492 |
|
3493 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:354
|
3494 |
msgid "Allow authors to change button label."
|
3495 |
msgstr ""
|
3496 |
|
3497 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:358
|
3498 |
msgid "Purchases expire after"
|
3499 |
msgstr ""
|
3500 |
|
3501 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:360
|
3502 |
msgid "Use zero for permanent sales."
|
3503 |
msgstr ""
|
3504 |
|
3505 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:363
|
3506 |
msgid "Sale Template for non members"
|
3507 |
msgstr ""
|
3508 |
|
3509 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:367
|
3510 |
msgid ""
|
3511 |
"Do <strong>not</strong> use the %buy_button% in this template as a user must "
|
3512 |
"be logged in to buy content!"
|
3513 |
msgstr ""
|
3514 |
|
3515 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:368
|
3516 |
msgid ""
|
3517 |
"Available template tags are: %singular%, %plural%, %post_title%, %post_url%, "
|
3518 |
"%link_with_title%, %price%"
|
3519 |
msgstr ""
|
3520 |
|
3521 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:371
|
3522 |
msgid "Sale Template for members"
|
3523 |
msgstr ""
|
3524 |
|
3525 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:375
|
3526 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:383
|
3527 |
msgid "Your template must contain the %buy_button% tag for purchases to work!"
|
3528 |
msgstr ""
|
3529 |
|
3530 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:376
|
3531 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:384
|
3532 |
msgid ""
|
3533 |
"Available template tags are: %singular%, %plural%, %post_title%, %post_url%, "
|
3534 |
"%link_with_title%, %buy_button%, %price%"
|
3535 |
msgstr ""
|
3536 |
|
3537 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:379
|
3538 |
msgid "Insufficient funds template"
|
3539 |
msgstr ""
|
3540 |
|
3541 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:387
|
3542 |
msgid "Log template for Purchases"
|
3543 |
msgstr ""
|
3544 |
|
3545 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:391
|
3546 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:398
|
3547 |
msgid ""
|
3548 |
"Available template tags are: %singular%, %plural%, %post_title%, %post_url% "
|
3549 |
"or %link_with_title%"
|
3550 |
msgstr ""
|
3551 |
|
3552 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:394
|
3553 |
msgid "Log template for Sales"
|
3554 |
msgstr ""
|
3555 |
|
3556 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:450
|
3557 |
msgid "Sell This"
|
3558 |
msgstr ""
|
3559 |
|
3560 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:499
|
3561 |
msgid " Sell Content needs to be setup before you can use this feature."
|
3562 |
msgstr ""
|
3563 |
|
3564 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:502
|
3565 |
msgid "Setup add-on"
|
3566 |
msgstr ""
|
3567 |
|
3568 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:502
|
3569 |
msgid "Lets do it"
|
3570 |
msgstr ""
|
3571 |
|
3572 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:531
|
3573 |
msgid "Enable sale of this "
|
3574 |
msgstr ""
|
3575 |
|
3576 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:545
|
3577 |
msgid "Purchase expires after"
|
3578 |
msgstr ""
|
3579 |
|
3580 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:794
|
3581 |
msgid "Thank you for your purchase!"
|
3582 |
msgstr ""
|
3583 |
|
3584 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:878
|
3585 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:961
|
3586 |
msgid "The following content is set for sale:"
|
3587 |
msgstr ""
|
3588 |
|
3589 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:979
|
3590 |
msgid "No purchases found"
|
3591 |
msgstr ""
|
3592 |
|
3593 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:1016
|
3594 |
msgid "Purchased"
|
3595 |
msgstr ""
|
3596 |
|
3597 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:1063
|
3598 |
msgid ""
|
3599 |
"This add-on lets you sell either entire contents or parts of it. You can "
|
3600 |
"select if you want to just charge users or share a percentage of the sale "
|
3601 |
"with the post author."
|
3602 |
msgstr ""
|
3603 |
|
3604 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:1065
|
3605 |
msgid ""
|
3606 |
"The default price and button label is applied to all content that is set for "
|
3607 |
"sale. You can select if you want to enforce these settings or let the "
|
3608 |
"content authors set their own."
|
3609 |
msgstr ""
|
3610 |
|
3611 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/sell-content/myCRED-addon-sell-content.php:1067
|
3612 |
msgid ""
|
3613 |
"You can either sell entire posts via the Sell Content Meta Box or by using "
|
3614 |
"the <code>mycred_sell_this</code> shortcode.<br />For more information on "
|
3615 |
"how to use the shortcode, please visit the"
|
3616 |
msgstr ""
|
3617 |
|
3618 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:12
|
3619 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:50
|
3620 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:492
|
3621 |
msgid "Transfer"
|
3622 |
msgstr ""
|
3623 |
|
3624 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:13
|
3625 |
msgid ""
|
3626 |
"Allow your users to send or \"donate\" points to other members by either "
|
3627 |
"using the mycred_transfer shortcode or the myCRED Transfer widget."
|
3628 |
msgstr ""
|
3629 |
|
3630 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:43
|
3631 |
msgid "You do not have enough %plural% to send."
|
3632 |
msgstr ""
|
3633 |
|
3634 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:44
|
3635 |
msgid "You have exceeded your %limit% transfer limit."
|
3636 |
msgstr ""
|
3637 |
|
3638 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:143
|
3639 |
msgid "Transaction completed."
|
3640 |
msgstr ""
|
3641 |
|
3642 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:144
|
3643 |
msgid ""
|
3644 |
"Security token could not be verified. Please contact your site administrator!"
|
3645 |
msgstr ""
|
3646 |
|
3647 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:145
|
3648 |
msgid "Communications error. Please try again later."
|
3649 |
msgstr ""
|
3650 |
|
3651 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:146
|
3652 |
msgid "Recipient not found. Please try again."
|
3653 |
msgstr ""
|
3654 |
|
3655 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:147
|
3656 |
msgid "Transaction declined by recipient."
|
3657 |
msgstr ""
|
3658 |
|
3659 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:148
|
3660 |
msgid "Incorrect amount. Please try again."
|
3661 |
msgstr ""
|
3662 |
|
3663 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:149
|
3664 |
msgid ""
|
3665 |
"This myCRED Add-on has not yet been setup! No transfers are allowed until "
|
3666 |
"this has been done!"
|
3667 |
msgstr ""
|
3668 |
|
3669 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:150
|
3670 |
msgid "Insufficient funds. Please enter a lower amount."
|
3671 |
msgstr ""
|
3672 |
|
3673 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:151
|
3674 |
msgid "Transfer Limit exceeded."
|
3675 |
msgstr ""
|
3676 |
|
3677 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:152
|
3678 |
msgid ""
|
3679 |
"The request amount will exceed your transfer limit. Please try again with a "
|
3680 |
"lower amount!"
|
3681 |
msgstr ""
|
3682 |
|
3683 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:177
|
3684 |
msgid "No limits."
|
3685 |
msgstr ""
|
3686 |
|
3687 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:178
|
3688 |
msgid "Impose daily limit."
|
3689 |
msgstr ""
|
3690 |
|
3691 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:179
|
3692 |
msgid "Impose weekly limit."
|
3693 |
msgstr ""
|
3694 |
|
3695 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:183
|
3696 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:591
|
3697 |
msgid "Transfer %plural%"
|
3698 |
msgstr ""
|
3699 |
|
3700 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:185
|
3701 |
msgid "Log template for sending"
|
3702 |
msgstr ""
|
3703 |
|
3704 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:192
|
3705 |
msgid "Log template for receiving"
|
3706 |
msgstr ""
|
3707 |
|
3708 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:199
|
3709 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:954
|
3710 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1200
|
3711 |
msgid "Limits"
|
3712 |
msgstr ""
|
3713 |
|
3714 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:216
|
3715 |
msgid "Maximum Amount"
|
3716 |
msgstr ""
|
3717 |
|
3718 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:218
|
3719 |
msgid "This amount is ignored if no limits are imposed."
|
3720 |
msgstr ""
|
3721 |
|
3722 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:221
|
3723 |
msgid "Form Templates"
|
3724 |
msgstr ""
|
3725 |
|
3726 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:224
|
3727 |
msgid "Not logged in Template"
|
3728 |
msgstr ""
|
3729 |
|
3730 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:226
|
3731 |
msgid ""
|
3732 |
"Text to show when users are not logged in. Leave empty to hide. No HTML "
|
3733 |
"elements allowed!"
|
3734 |
msgstr ""
|
3735 |
|
3736 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:230
|
3737 |
msgid "Balance Template"
|
3738 |
msgstr ""
|
3739 |
|
3740 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:232
|
3741 |
msgid ""
|
3742 |
"Template to use when displaying the users balance (if included). No HTML "
|
3743 |
"elements allowed!"
|
3744 |
msgstr ""
|
3745 |
|
3746 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:236
|
3747 |
msgid "Limit Template"
|
3748 |
msgstr ""
|
3749 |
|
3750 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:238
|
3751 |
msgid ""
|
3752 |
"Template to use when displaying limits (if used). No HTML elements allowed!"
|
3753 |
msgstr ""
|
3754 |
|
3755 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:242
|
3756 |
msgid "Button Template"
|
3757 |
msgstr ""
|
3758 |
|
3759 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:244
|
3760 |
msgid "Send Transfer button template. No HTML elements allowed!"
|
3761 |
msgstr ""
|
3762 |
|
3763 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:247
|
3764 |
msgid "Error Messages"
|
3765 |
msgstr ""
|
3766 |
|
3767 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:250
|
3768 |
msgid "Balance to low to send."
|
3769 |
msgstr ""
|
3770 |
|
3771 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:252
|
3772 |
msgid ""
|
3773 |
"Text to show when a users balance is to low for transfers. Leave empty to "
|
3774 |
"hide. No HTML elements allowed!"
|
3775 |
msgstr ""
|
3776 |
|
3777 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:256
|
3778 |
msgid "Transfer Limit Reached."
|
3779 |
msgstr ""
|
3780 |
|
3781 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:258
|
3782 |
msgid ""
|
3783 |
"Text to show when a user has reached their transfer limit (if used). Leave "
|
3784 |
"empty to hide. No HTML elements allowed!"
|
3785 |
msgstr ""
|
3786 |
|
3787 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:494
|
3788 |
msgid ""
|
3789 |
"This add-on lets your users transfer %_plural% to each other. Members who "
|
3790 |
"are set to be excluded can neither send or receive %_plural%."
|
3791 |
msgstr ""
|
3792 |
|
3793 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:495
|
3794 |
msgid "Transfer Limit"
|
3795 |
msgstr ""
|
3796 |
|
3797 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:496
|
3798 |
msgid ""
|
3799 |
"You can impose a daily-, weekly- or monthly transfer limit for each user. "
|
3800 |
"Note, that this transfer limit is imposed on everyone who are not excluded "
|
3801 |
"from using myCRED."
|
3802 |
msgstr ""
|
3803 |
|
3804 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:498
|
3805 |
msgid ""
|
3806 |
"Transfers can be made by either using the <code>mycred_transfer</code> "
|
3807 |
"shortcode or via the myCRED Transfer Widget.<br />For more information on "
|
3808 |
"how to use the shortcode, please visit the"
|
3809 |
msgstr ""
|
3810 |
|
3811 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:521
|
3812 |
msgid "Allow transfers between users."
|
3813 |
msgstr ""
|
3814 |
|
3815 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:523
|
3816 |
#, php-format
|
3817 |
msgid "%s Transfer"
|
3818 |
msgstr ""
|
3819 |
|
3820 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:537
|
3821 |
msgid "The myCRED Transfer add-on has not yet been setup!"
|
3822 |
msgstr ""
|
3823 |
|
3824 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:602
|
3825 |
msgid "Show users balance"
|
3826 |
msgstr ""
|
3827 |
|
3828 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:606
|
3829 |
msgid "Show users limit"
|
3830 |
msgstr ""
|
3831 |
|
3832 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:729
|
3833 |
msgid "To:"
|
3834 |
msgstr ""
|
3835 |
|
3836 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/addons/transfer/myCRED-addon-transfer.php:733
|
3837 |
msgid "Amount:"
|
3838 |
msgstr ""
|
3839 |
|
3840 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:68
|
3841 |
msgid "User is excluded"
|
3842 |
msgstr ""
|
3843 |
|
3844 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:73
|
3845 |
msgid "Log Entry can not be empty"
|
3846 |
msgstr ""
|
3847 |
|
3848 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:77
|
3849 |
msgid "Amount can not be zero"
|
3850 |
msgstr ""
|
3851 |
|
3852 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:174
|
3853 |
msgid "Excluded"
|
3854 |
msgstr ""
|
3855 |
|
3856 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:181
|
3857 |
msgid "History"
|
3858 |
msgstr ""
|
3859 |
|
3860 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:183
|
3861 |
msgid "Adjust"
|
3862 |
msgstr ""
|
3863 |
|
3864 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:234
|
3865 |
#, php-format
|
3866 |
msgid "My current %singular% balance"
|
3867 |
msgstr ""
|
3868 |
|
3869 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:257
|
3870 |
msgid "Adjust Your Balance"
|
3871 |
msgstr ""
|
3872 |
|
3873 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:259
|
3874 |
msgid "Adjust Users Balance"
|
3875 |
msgstr ""
|
3876 |
|
3877 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:266
|
3878 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:337
|
3879 |
msgid "required"
|
3880 |
msgstr ""
|
3881 |
|
3882 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:268
|
3883 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:339
|
3884 |
msgid "optional"
|
3885 |
msgstr ""
|
3886 |
|
3887 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:274
|
3888 |
msgid "Log description for adjustment"
|
3889 |
msgstr ""
|
3890 |
|
3891 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:275
|
3892 |
msgid "Update"
|
3893 |
msgstr ""
|
3894 |
|
3895 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:276
|
3896 |
msgid "Description is required!"
|
3897 |
msgstr ""
|
3898 |
|
3899 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:281
|
3900 |
msgid "Users Current Balance"
|
3901 |
msgstr ""
|
3902 |
|
3903 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:348
|
3904 |
msgid "A positive or negative value"
|
3905 |
msgstr ""
|
3906 |
|
3907 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-admin.php:350
|
3908 |
msgid "Update Balance"
|
3909 |
msgstr ""
|
3910 |
|
3911 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-functions.php:65
|
3912 |
+
msgid "Point"
|
3913 |
+
msgstr ""
|
3914 |
+
|
3915 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-functions.php:66
|
3916 |
+
msgid "Points"
|
3917 |
+
msgstr ""
|
3918 |
+
|
3919 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-functions.php:388
|
3920 |
msgid "Deleted"
|
3921 |
msgstr ""
|
3922 |
|
3923 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-functions.php:523
|
3924 |
msgid "Deleted Item"
|
3925 |
msgstr ""
|
3926 |
|
3927 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-functions.php:1304
|
3928 |
msgid "ref empty"
|
3929 |
msgstr ""
|
3930 |
|
3931 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-functions.php:1312
|
3932 |
msgid "incorrect user id format"
|
3933 |
msgstr ""
|
3934 |
|
3935 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-functions.php:1325
|
3936 |
msgid "incorrect unix timestamp (from):"
|
3937 |
msgstr ""
|
3938 |
|
3939 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-functions.php:1334
|
3940 |
msgid "incorrect unix timestamp (to):"
|
3941 |
msgstr ""
|
3942 |
|
3943 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:38
|
3944 |
msgid "myCRED requires WordPress 3.1 or higher. Version detected:"
|
3945 |
msgstr ""
|
3946 |
|
3947 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:43
|
3948 |
msgid "myCRED requires PHP 5.2.0 or higher. Version detected: "
|
3949 |
msgstr ""
|
3950 |
|
3951 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:48
|
3952 |
msgid "myCRED requires SQL 5.0 or higher. Version detected: "
|
3953 |
msgstr ""
|
3954 |
|
3955 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:53
|
3956 |
msgid ""
|
3957 |
"Sorry but your WordPress installation does not reach the minimum "
|
3958 |
"requirements for running myCRED. The following errors were given:"
|
3959 |
msgstr ""
|
3960 |
|
3961 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:253
|
3962 |
msgid "myCRED needs your attention."
|
3963 |
msgstr ""
|
3964 |
|
3965 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:253
|
3966 |
msgid "Run Setup"
|
3967 |
msgstr ""
|
3968 |
|
3969 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:265
|
3970 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:266
|
3971 |
msgid "myCRED Setup"
|
3972 |
msgstr ""
|
3973 |
|
3974 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:410
|
3975 |
msgid "Step"
|
3976 |
msgstr ""
|
3977 |
|
3978 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:433
|
3979 |
msgid ""
|
3980 |
"Click \"Begin Setup\" to install myCRED. You will be able to select your "
|
3981 |
"points format, layout and security settings."
|
3982 |
msgstr ""
|
3983 |
|
3984 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:434
|
3985 |
msgid "Begin Setup"
|
3986 |
msgstr ""
|
3987 |
|
3988 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:491
|
3989 |
msgid "Select the format you want to use for your points."
|
3990 |
msgstr ""
|
3991 |
|
3992 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:492
|
3993 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:200
|
3994 |
msgid "Format"
|
3995 |
msgstr ""
|
3996 |
|
3997 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:495
|
3998 |
msgid "Separators"
|
3999 |
msgstr ""
|
4000 |
|
4001 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:505
|
4002 |
msgid "Decimals"
|
4003 |
msgstr ""
|
4004 |
|
4005 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:507
|
4006 |
msgid "Use zero for no decimals."
|
4007 |
msgstr ""
|
4008 |
|
4009 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:510
|
4010 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:255
|
4011 |
msgid "Presentation"
|
4012 |
msgstr ""
|
4013 |
|
4014 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:513
|
4015 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:242
|
4016 |
msgid "Name (Singular)"
|
4017 |
msgstr ""
|
4018 |
|
4019 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:517
|
4020 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:247
|
4021 |
msgid "Name (Plural)"
|
4022 |
msgstr ""
|
4023 |
|
4024 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:523
|
4025 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:258
|
4026 |
msgid "Prefix"
|
4027 |
msgstr ""
|
4028 |
|
4029 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:531
|
4030 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:266
|
4031 |
msgid "Suffix"
|
4032 |
msgstr ""
|
4033 |
|
4034 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:536
|
4035 |
msgid "Cancel Setup"
|
4036 |
msgstr ""
|
4037 |
|
4038 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:536
|
4039 |
msgid "Cancel"
|
4040 |
msgstr ""
|
4041 |
|
4042 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:536
|
4043 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:616
|
4044 |
msgid "Next"
|
4045 |
msgstr ""
|
4046 |
|
4047 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:565
|
4048 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:274
|
4049 |
msgid "Security"
|
4050 |
msgstr ""
|
4051 |
|
4052 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:568
|
4053 |
msgid "Edit Settings Capability"
|
4054 |
msgstr ""
|
4055 |
|
4056 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:572
|
4057 |
msgid "Edit Users %plural% Capability"
|
4058 |
msgstr ""
|
4059 |
|
4060 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:580
|
4061 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:291
|
4062 |
msgid "Exclude those who can \"Edit Settings\"."
|
4063 |
msgstr ""
|
4064 |
|
4065 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:584
|
4066 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:295
|
4067 |
msgid "Exclude those who can \"Edit Users %plural%\"."
|
4068 |
msgstr ""
|
4069 |
|
4070 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:587
|
4071 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:299
|
4072 |
msgid "Exclude the following user IDs:"
|
4073 |
msgstr ""
|
4074 |
|
4075 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:591
|
4076 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:304
|
4077 |
msgid "Rankings"
|
4078 |
msgstr ""
|
4079 |
|
4080 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:595
|
4081 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:308
|
4082 |
msgid "Update rankings each time a users balance changes."
|
4083 |
msgstr ""
|
4084 |
|
4085 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:599
|
4086 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:312
|
4087 |
msgid "Update rankings once a day."
|
4088 |
msgstr ""
|
4089 |
|
4090 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:603
|
4091 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:316
|
4092 |
msgid "Update rankings once a week."
|
4093 |
msgstr ""
|
4094 |
|
4095 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:607
|
4096 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:320
|
4097 |
msgid "Update rankings on a specific date."
|
4098 |
msgstr ""
|
4099 |
|
4100 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:611
|
4101 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:244
|
4102 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:324
|
4103 |
msgid "Date"
|
4104 |
msgstr ""
|
4105 |
|
4106 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:635
|
4107 |
msgid "Ready"
|
4108 |
msgstr ""
|
4109 |
|
4110 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:636
|
4111 |
msgid "Almost done! Click the button below to finish this setup."
|
4112 |
msgstr ""
|
4113 |
|
4114 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-install.php:637
|
4115 |
msgid "Install & Run"
|
4116 |
msgstr ""
|
4117 |
|
4118 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:246
|
4119 |
+
msgid "Entry"
|
4120 |
+
msgstr ""
|
4121 |
+
|
4122 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:346
|
4123 |
+
msgid "User Missing"
|
4124 |
+
msgstr ""
|
4125 |
+
|
4126 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:385
|
4127 |
+
msgid "No log entries found"
|
4128 |
+
msgstr ""
|
4129 |
+
|
4130 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:400
|
4131 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:402
|
4132 |
+
msgid "Search Log"
|
4133 |
+
msgstr ""
|
4134 |
+
|
4135 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-log.php:401
|
4136 |
+
msgid "search log entries"
|
4137 |
+
msgstr ""
|
4138 |
+
|
4139 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:60
|
4140 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:61
|
4141 |
msgid "Network Settings"
|
4142 |
msgstr ""
|
4143 |
|
4144 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:158
|
4145 |
msgid "Network"
|
4146 |
msgstr ""
|
4147 |
|
4148 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:164
|
4149 |
+
#, php-format
|
4150 |
+
msgid "Note! %s has not yet been setup."
|
4151 |
+
msgstr ""
|
4152 |
+
|
4153 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:168
|
4154 |
msgid "Network Settings Updated"
|
4155 |
msgstr ""
|
4156 |
|
4157 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:170
|
4158 |
#, php-format
|
4159 |
msgid "Configure network settings for %s."
|
4160 |
msgstr ""
|
4161 |
|
4162 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:177
|
4163 |
msgid "Master Template"
|
4164 |
msgstr ""
|
4165 |
|
4166 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:181
|
4167 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:195
|
4168 |
msgid "Yes"
|
4169 |
msgstr ""
|
4170 |
|
4171 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:185
|
4172 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:199
|
4173 |
msgid "No"
|
4174 |
msgstr ""
|
4175 |
|
4176 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:188
|
4177 |
+
#, php-format
|
4178 |
+
msgid ""
|
4179 |
+
"If enabled, %s will use your main site's settings for all other sites in "
|
4180 |
+
"your network."
|
4181 |
+
msgstr ""
|
4182 |
+
|
4183 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:191
|
4184 |
+
msgid "Central Logging"
|
4185 |
+
msgstr ""
|
4186 |
+
|
4187 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:202
|
4188 |
#, php-format
|
4189 |
+
msgid "If enabled, %s will log all site actions in your main site's log."
|
4190 |
msgstr ""
|
4191 |
|
4192 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:205
|
4193 |
msgid "Site Block"
|
4194 |
msgstr ""
|
4195 |
|
4196 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:209
|
4197 |
#, php-format
|
4198 |
msgid "Comma separated list of blog ids where %s is to be disabled."
|
4199 |
msgstr ""
|
4200 |
|
4201 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-network.php:218
|
4202 |
msgid "Save Network Settings"
|
4203 |
msgstr ""
|
4204 |
|
4205 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:523
|
4206 |
+
msgid "This feature requires WordPress Permalinks to be setup and enabled!"
|
4207 |
+
msgstr ""
|
4208 |
+
|
4209 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:526
|
4210 |
+
msgid "Click Update Settings to load the Remote API settings."
|
4211 |
+
msgstr ""
|
4212 |
+
|
4213 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:528
|
4214 |
+
msgid "Allow Remote Access"
|
4215 |
+
msgstr ""
|
4216 |
+
|
4217 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:549
|
4218 |
+
msgid "Remote Access"
|
4219 |
+
msgstr ""
|
4220 |
+
|
4221 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:551
|
4222 |
+
msgid "API Key"
|
4223 |
+
msgstr ""
|
4224 |
+
|
4225 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:554
|
4226 |
+
msgid "Key"
|
4227 |
+
msgstr ""
|
4228 |
+
|
4229 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:555
|
4230 |
+
msgid "min. 12 characters"
|
4231 |
+
msgstr ""
|
4232 |
+
|
4233 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:556
|
4234 |
+
msgid "Required for this feature to work!<br />Minimum 12 characters."
|
4235 |
+
msgstr ""
|
4236 |
+
|
4237 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:559
|
4238 |
+
msgid "Key Length"
|
4239 |
+
msgstr ""
|
4240 |
+
|
4241 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:564
|
4242 |
+
msgid "Generate New Key"
|
4243 |
+
msgstr ""
|
4244 |
+
|
4245 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:566
|
4246 |
+
msgid "Warning!"
|
4247 |
+
msgstr ""
|
4248 |
+
|
4249 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:566
|
4250 |
+
msgid ""
|
4251 |
+
"Keep this key safe! Those you share this key with will be able to remotely "
|
4252 |
+
"deduct / add / transfer %plural%!"
|
4253 |
+
msgstr ""
|
4254 |
+
|
4255 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:568
|
4256 |
+
msgid "Incoming URI"
|
4257 |
+
msgstr ""
|
4258 |
+
|
4259 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:572
|
4260 |
+
msgid ""
|
4261 |
+
"The incoming call address. Remote calls made to any other URL will be "
|
4262 |
+
"ignored."
|
4263 |
+
msgstr ""
|
4264 |
+
|
4265 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:575
|
4266 |
+
msgid "Debug Mode"
|
4267 |
+
msgstr ""
|
4268 |
+
|
4269 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-remote.php:578
|
4270 |
+
msgid ""
|
4271 |
+
"Remember to disable when not used to prevent mischievous calls from learning "
|
4272 |
+
"about your setup!"
|
4273 |
+
msgstr ""
|
4274 |
+
|
4275 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:146
|
4276 |
msgid "Leaderboard is empty."
|
4277 |
msgstr ""
|
4278 |
|
4279 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:223
|
4280 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:334
|
4281 |
msgid "Amount missing!"
|
4282 |
msgstr ""
|
4283 |
|
4284 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:226
|
4285 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:342
|
4286 |
msgid "Log Template Missing!"
|
4287 |
msgstr ""
|
4288 |
|
4289 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:285
|
4290 |
msgid "Anchor missing URL!"
|
4291 |
msgstr ""
|
4292 |
|
4293 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:338
|
4294 |
msgid "User ID missing for recipient."
|
4295 |
msgstr ""
|
4296 |
|
4297 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:392
|
4298 |
+
msgid "Sent"
|
4299 |
+
msgstr ""
|
4300 |
+
|
4301 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:393
|
4302 |
+
msgid "Error - Try Again"
|
4303 |
+
msgstr ""
|
4304 |
+
|
4305 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-shortcodes.php:488
|
4306 |
msgid "A video ID is required for this shortcode"
|
4307 |
msgstr ""
|
4308 |
|
4309 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:19
|
4310 |
#, php-format
|
4311 |
msgid "Show the current users %s balance"
|
4312 |
msgstr ""
|
4313 |
|
4314 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:21
|
4315 |
#, php-format
|
4316 |
msgid "%s Balance"
|
4317 |
msgstr ""
|
4318 |
|
4319 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:156
|
4320 |
msgid "My Balance"
|
4321 |
msgstr ""
|
4322 |
|
4323 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:167
|
4324 |
msgid "<a href=\"%login_url_here%\">Login</a> to view your balance."
|
4325 |
msgstr ""
|
4326 |
|
4327 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:191
|
4328 |
msgid "Layout"
|
4329 |
msgstr ""
|
4330 |
|
4331 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:193
|
4332 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:216
|
4333 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:226
|
4334 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:374
|
4335 |
msgid "See the help tab for available template tags."
|
4336 |
msgstr ""
|
4337 |
|
4338 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:198
|
4339 |
msgid "Include users ranking"
|
4340 |
msgstr ""
|
4341 |
|
4342 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:202
|
4343 |
msgid ""
|
4344 |
"This will be appended after the balance. See the help tab for available "
|
4345 |
"template tags."
|
4346 |
msgstr ""
|
4347 |
|
4348 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:208
|
4349 |
msgid "Include history"
|
4350 |
msgstr ""
|
4351 |
|
4352 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:210
|
4353 |
msgid "History Title"
|
4354 |
msgstr ""
|
4355 |
|
4356 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:212
|
4357 |
msgid "Number of entires"
|
4358 |
msgstr ""
|
4359 |
|
4360 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:214
|
4361 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:372
|
4362 |
msgid "Row layout"
|
4363 |
msgstr ""
|
4364 |
|
4365 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:222
|
4366 |
msgid "Show message when not logged in"
|
4367 |
msgstr ""
|
4368 |
|
4369 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:224
|
4370 |
msgid "Message"
|
4371 |
msgstr ""
|
4372 |
|
4373 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:297
|
4374 |
#, php-format
|
4375 |
msgid "Show a list of users sorted by their %s balance"
|
4376 |
msgstr ""
|
4377 |
|
4378 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:299
|
4379 |
#, php-format
|
4380 |
msgid "%s List"
|
4381 |
msgstr ""
|
4382 |
|
4383 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:352
|
4384 |
msgid "Leaderboard"
|
4385 |
msgstr ""
|
4386 |
|
4387 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:365
|
4388 |
msgid "Visible to non-members"
|
4389 |
msgstr ""
|
4390 |
|
4391 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:368
|
4392 |
msgid "Number of users"
|
4393 |
msgstr ""
|
4394 |
|
4395 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:377
|
4396 |
msgid "Offset"
|
4397 |
msgstr ""
|
4398 |
|
4399 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:379
|
4400 |
msgid "Optional offset of order. Use zero to return the first in the list."
|
4401 |
msgstr ""
|
4402 |
|
4403 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:382
|
4404 |
msgid "Order"
|
4405 |
msgstr ""
|
4406 |
|
4407 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:386
|
4408 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:195
|
4409 |
msgid "Ascending"
|
4410 |
msgstr ""
|
4411 |
|
4412 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/includes/mycred-widgets.php:387
|
4413 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:195
|
4414 |
msgid "Descending"
|
4415 |
msgstr ""
|
4416 |
|
4417 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:23
|
4418 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:24
|
4419 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:25
|
4420 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:260
|
4421 |
msgid "Add-ons"
|
4422 |
msgstr ""
|
4423 |
|
4424 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:265
|
4425 |
msgid "Add-on Activated"
|
4426 |
msgstr ""
|
4427 |
|
4428 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:267
|
4429 |
msgid "Add-on Deactivated"
|
4430 |
msgstr ""
|
4431 |
|
4432 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:270
|
4433 |
msgid "Add-ons can expand your current installation with further features."
|
4434 |
msgstr ""
|
4435 |
|
4436 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:289
|
4437 |
#, php-format
|
4438 |
msgid "You can find more add-ons in our %s."
|
4439 |
msgstr ""
|
4440 |
|
4441 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:289
|
4442 |
msgid "online store"
|
4443 |
msgstr ""
|
4444 |
|
4445 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:309
|
4446 |
msgid "Deactivate Add-on"
|
4447 |
msgstr ""
|
4448 |
|
4449 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:310
|
4450 |
msgid "Deactivate"
|
4451 |
msgstr ""
|
4452 |
|
4453 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:315
|
4454 |
msgid "Activate Add-on"
|
4455 |
msgstr ""
|
4456 |
|
4457 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:316
|
4458 |
msgid "Activate"
|
4459 |
msgstr ""
|
4460 |
|
4461 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:333
|
4462 |
msgid "Version"
|
4463 |
msgstr ""
|
4464 |
|
4465 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:336
|
4466 |
msgid "By"
|
4467 |
msgstr ""
|
4468 |
|
4469 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-addons.php:339
|
4470 |
+
msgid "Documentation"
|
4471 |
msgstr ""
|
4472 |
|
4473 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:56
|
4474 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:76
|
4475 |
+
msgid "Access denied for this action"
|
4476 |
msgstr ""
|
4477 |
|
4478 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:93
|
4479 |
+
msgid "Accounts successfully reset"
|
4480 |
msgstr ""
|
4481 |
|
4482 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:124
|
4483 |
+
msgid "No users found to export"
|
4484 |
msgstr ""
|
4485 |
|
4486 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:231
|
4487 |
+
msgid "Adjust your core or add-on settings. Follow us on:"
|
4488 |
+
msgstr ""
|
4489 |
+
|
4490 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:231
|
4491 |
+
msgid "Facebook"
|
4492 |
msgstr ""
|
4493 |
|
4494 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:231
|
4495 |
+
msgid "Google Plus"
|
4496 |
msgstr ""
|
4497 |
|
4498 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:237
|
|
|
4499 |
msgid "Core Settings"
|
4500 |
msgstr ""
|
4501 |
|
4502 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:239
|
4503 |
msgid "Name"
|
4504 |
msgstr ""
|
4505 |
|
4506 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:244
|
4507 |
msgid "Accessible though the %singular% template tag."
|
4508 |
msgstr ""
|
4509 |
|
4510 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:249
|
4511 |
msgid "Accessible though the %plural% template tag."
|
4512 |
msgstr ""
|
4513 |
|
4514 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:252
|
4515 |
msgid "Tip"
|
4516 |
msgstr ""
|
4517 |
|
4518 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:252
|
4519 |
msgid ""
|
4520 |
"Adding an underscore at the beginning of template tag for names will return "
|
4521 |
"them in lowercase. i.e. %_singular%"
|
4522 |
msgstr ""
|
4523 |
|
4524 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:270
|
4525 |
msgid "Separator"
|
4526 |
msgstr ""
|
4527 |
|
4528 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:277
|
4529 |
msgid "Edit Settings"
|
4530 |
msgstr ""
|
4531 |
|
4532 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:279
|
4533 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:284
|
4534 |
msgid "Capability to check for."
|
4535 |
msgstr ""
|
4536 |
|
4537 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:282
|
4538 |
msgid "Edit Users %plural%"
|
4539 |
msgstr ""
|
4540 |
|
4541 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:301
|
4542 |
msgid "Comma separated list of user ids to exclude. No spaces allowed!"
|
4543 |
msgstr ""
|
4544 |
|
4545 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:341
|
4546 |
+
msgid "Management"
|
4547 |
msgstr ""
|
4548 |
|
4549 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:343
|
4550 |
+
msgid "The Log"
|
|
|
|
|
|
|
4551 |
msgstr ""
|
4552 |
|
4553 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:346
|
4554 |
+
msgid "Table Name"
|
|
|
|
|
4555 |
msgstr ""
|
4556 |
|
4557 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:350
|
4558 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:92
|
4559 |
+
msgid "Entries"
|
4560 |
msgstr ""
|
4561 |
|
4562 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:354
|
4563 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:369
|
4564 |
+
msgid "Actions"
|
|
|
4565 |
msgstr ""
|
4566 |
|
4567 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:355
|
4568 |
+
msgid "Empty Log"
|
4569 |
msgstr ""
|
4570 |
|
4571 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:361
|
4572 |
+
msgid "User Meta Key"
|
|
|
|
|
4573 |
msgstr ""
|
4574 |
|
4575 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:370
|
4576 |
+
msgid "Set all to zero"
|
4577 |
msgstr ""
|
4578 |
|
4579 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:370
|
4580 |
+
msgid "CSV Export"
|
4581 |
msgstr ""
|
4582 |
|
4583 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:388
|
4584 |
+
msgid "Identify users by"
|
|
|
|
|
|
|
|
|
4585 |
msgstr ""
|
4586 |
|
4587 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:393
|
4588 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:188
|
4589 |
+
msgid "User ID"
|
|
|
|
|
4590 |
msgstr ""
|
4591 |
|
4592 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:394
|
4593 |
+
msgid "User Email"
|
|
|
|
|
4594 |
msgstr ""
|
4595 |
|
4596 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:395
|
4597 |
+
msgid "User Login"
|
4598 |
msgstr ""
|
4599 |
|
4600 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:402
|
4601 |
msgid ""
|
4602 |
+
"Use ID if you intend to use this export as a backup of your current site "
|
4603 |
+
"while Email is recommended if you want to export to a different site."
|
4604 |
msgstr ""
|
4605 |
|
4606 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:405
|
4607 |
+
msgid "Import Log Entry"
|
4608 |
msgstr ""
|
4609 |
|
4610 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:407
|
4611 |
+
#, php-format
|
4612 |
+
msgid ""
|
4613 |
+
"Optional log entry to use if you intend to import this file in a different "
|
4614 |
+
"%s installation."
|
4615 |
msgstr ""
|
4616 |
|
4617 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-general.php:410
|
4618 |
+
msgid "Export"
|
4619 |
msgstr ""
|
4620 |
|
4621 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:23
|
4622 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:24
|
4623 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:25
|
4624 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:156
|
4625 |
+
msgid "Hooks"
|
4626 |
msgstr ""
|
4627 |
|
4628 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:85
|
4629 |
+
msgid "%plural% for registrations"
|
4630 |
msgstr ""
|
4631 |
|
4632 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:86
|
4633 |
+
msgid "Award %_plural% for users joining your website."
|
|
|
|
|
|
|
4634 |
msgstr ""
|
4635 |
|
4636 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:92
|
4637 |
+
msgid "%plural% for logins"
|
4638 |
msgstr ""
|
4639 |
|
4640 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:93
|
4641 |
+
msgid ""
|
4642 |
+
"Award %_plural% for logging in to your website. You can also set an optional "
|
4643 |
+
"limit."
|
4644 |
msgstr ""
|
4645 |
|
4646 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:99
|
4647 |
+
msgid "%plural% for publishing content"
|
|
|
4648 |
msgstr ""
|
4649 |
|
4650 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:100
|
4651 |
+
msgid ""
|
4652 |
+
"Award %_plural% for publishing content on your website. If your custom post "
|
4653 |
+
"type is not shown bellow, make sure it is set to \"Public\"."
|
4654 |
msgstr ""
|
4655 |
|
4656 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:106
|
4657 |
+
msgid "%plural% for comments"
|
4658 |
msgstr ""
|
4659 |
|
4660 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:107
|
4661 |
+
msgid "Award %_plural% for making comments."
|
4662 |
msgstr ""
|
4663 |
|
4664 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:113
|
4665 |
+
msgid "%plural% for clicking on links"
|
4666 |
msgstr ""
|
4667 |
|
4668 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:114
|
4669 |
+
msgid ""
|
4670 |
+
"Award %_plural% to users who clicks on links generated by the [mycred_link] "
|
4671 |
+
"shortcode."
|
4672 |
msgstr ""
|
4673 |
|
4674 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:120
|
4675 |
+
msgid "%plural% for viewing Videos"
|
4676 |
msgstr ""
|
4677 |
|
4678 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:121
|
4679 |
+
msgid ""
|
4680 |
+
"Award %_plural% to users who watches videos embedded using the "
|
4681 |
+
"[mycred_video] shortcode."
|
4682 |
msgstr ""
|
4683 |
|
4684 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:160
|
4685 |
+
msgid ""
|
4686 |
+
"Hooks are instances where %_plural% are awarded or deducted from a user, "
|
4687 |
+
"depending on their actions around your website."
|
4688 |
msgstr ""
|
4689 |
|
4690 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:447
|
4691 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:147
|
4692 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:168
|
4693 |
+
msgid "Limit"
|
4694 |
msgstr ""
|
4695 |
|
4696 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:540
|
4697 |
+
msgid "%plural% for Posts"
|
4698 |
msgstr ""
|
4699 |
|
4700 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:550
|
4701 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:563
|
4702 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:598
|
4703 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:268
|
4704 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:278
|
4705 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:416
|
4706 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:429
|
4707 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:442
|
4708 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:460
|
4709 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:473
|
4710 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:492
|
4711 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-contact-form7.php:138
|
4712 |
+
msgid "Available template tags: General, Post"
|
4713 |
msgstr ""
|
4714 |
|
4715 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:553
|
4716 |
+
msgid "%plural% for Pages"
|
4717 |
msgstr ""
|
4718 |
|
4719 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:588
|
4720 |
+
msgid "%plural% for %s"
|
4721 |
msgstr ""
|
4722 |
|
4723 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:903
|
4724 |
+
msgid "Approved Comment"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4725 |
msgstr ""
|
4726 |
|
4727 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:906
|
4728 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:923
|
4729 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:940
|
4730 |
+
msgid "Comment Author"
|
4731 |
msgstr ""
|
4732 |
|
4733 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:910
|
4734 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:927
|
4735 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:944
|
4736 |
+
msgid "Content Author"
|
4737 |
msgstr ""
|
4738 |
|
4739 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:917
|
4740 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:934
|
4741 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:951
|
4742 |
msgid "Available template tags: General, Comment"
|
4743 |
msgstr ""
|
4744 |
|
4745 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:920
|
4746 |
msgid "Comment Marked SPAM"
|
4747 |
msgstr ""
|
4748 |
|
4749 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:937
|
4750 |
msgid "Trashed / Unapproved Comments"
|
4751 |
msgstr ""
|
4752 |
|
4753 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:957
|
4754 |
msgid "Limit per post"
|
4755 |
msgstr ""
|
4756 |
|
4757 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:959
|
4758 |
msgid ""
|
4759 |
"The number of comments per post that grants %_plural%. Use zero for "
|
4760 |
"unlimited."
|
4761 |
msgstr ""
|
4762 |
|
4763 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:963
|
4764 |
msgid "Limit per day"
|
4765 |
msgstr ""
|
4766 |
|
4767 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:965
|
4768 |
msgid ""
|
4769 |
"Number of comments per day that grants %_plural%. Use zero for unlimited."
|
4770 |
msgstr ""
|
4771 |
|
4772 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:970
|
4773 |
msgid ""
|
4774 |
"%plural% is to be awarded even when comment authors reply to their own "
|
4775 |
"comment."
|
4776 |
msgstr ""
|
4777 |
|
4778 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1037
|
4779 |
msgid "Once for each unique URL"
|
4780 |
msgstr ""
|
4781 |
|
4782 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1038
|
4783 |
msgid "Once for each unique link id"
|
4784 |
msgstr ""
|
4785 |
|
4786 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1190
|
4787 |
msgid ""
|
4788 |
"The default amount to award for clicking on links. You can override this in "
|
4789 |
"the shortcode."
|
4790 |
msgstr ""
|
4791 |
|
4792 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1197
|
4793 |
+
msgid ""
|
4794 |
+
"Available template tags: General and custom tags: %url%, %title% or %id%."
|
4795 |
msgstr ""
|
4796 |
|
4797 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1208
|
4798 |
msgid "Remember!"
|
4799 |
msgstr ""
|
4800 |
|
4801 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1208
|
4802 |
msgid ""
|
4803 |
"If you select to limit by id and you do not include the id attribute in the "
|
4804 |
"shortcode, no %_plural% will be awarded!"
|
4805 |
msgstr ""
|
4806 |
|
4807 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1460
|
4808 |
msgid "Amount to award for viewing videos."
|
4809 |
msgstr ""
|
4810 |
|
4811 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1470
|
4812 |
msgid "Award Logic"
|
4813 |
msgstr ""
|
4814 |
|
4815 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1472
|
4816 |
msgid "Select when %_plural% should be awarded or deducted."
|
4817 |
msgstr ""
|
4818 |
|
4819 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1473
|
4820 |
msgid "Play - As soon as video starts playing."
|
4821 |
msgstr ""
|
4822 |
|
4823 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1474
|
4824 |
msgid "Full - First when the entire video has played."
|
4825 |
msgstr ""
|
4826 |
|
4827 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1475
|
4828 |
msgid "Interval - For each x number of seconds watched."
|
4829 |
msgstr ""
|
4830 |
|
4831 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1480
|
4832 |
msgid "Number of seconds"
|
4833 |
msgstr ""
|
4834 |
|
4835 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1487
|
4836 |
msgid "Leniency"
|
4837 |
msgstr ""
|
4838 |
|
4839 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1489
|
4840 |
msgid ""
|
4841 |
"The maximum percentage a users view of a movie can differ from the actual "
|
4842 |
"length."
|
4843 |
msgstr ""
|
4844 |
|
4845 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-hooks.php:1492
|
4846 |
msgid ""
|
4847 |
"Do not set this value to zero! A lot of thing can happen while a user "
|
4848 |
"watches a movie and sometimes a few seconds can drop of the counter due to "
|
4849 |
"buffering or play back errors."
|
4850 |
msgstr ""
|
4851 |
|
4852 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:24
|
4853 |
msgid "Activity Log"
|
4854 |
msgstr ""
|
4855 |
|
4856 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:175
|
|
|
|
|
|
|
|
|
4857 |
msgid "Show all references"
|
4858 |
msgstr ""
|
4859 |
|
4860 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:194
|
4861 |
msgid "Show in order"
|
4862 |
msgstr ""
|
4863 |
|
4864 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:207
|
4865 |
msgid "Filter"
|
4866 |
msgstr ""
|
4867 |
|
4868 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:233
|
4869 |
+
#, php-format
|
4870 |
+
msgid "Showing %d %s"
|
4871 |
+
msgstr ""
|
4872 |
+
|
4873 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:233
|
4874 |
msgid "entry"
|
4875 |
msgstr ""
|
4876 |
|
4877 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/modules/mycred-module-log.php:252
|
4878 |
msgid "Search results for"
|
4879 |
msgstr ""
|
4880 |
|
4881 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:16
|
4882 |
+
msgid "BadgeOS"
|
4883 |
msgstr ""
|
4884 |
|
4885 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:17
|
4886 |
+
msgid ""
|
4887 |
+
"Default settings for each BadgeOS Achievement type. These settings may be "
|
4888 |
+
"overridden for individual achievement type."
|
4889 |
msgstr ""
|
4890 |
|
4891 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:93
|
4892 |
+
#, php-format
|
4893 |
+
msgid ""
|
4894 |
+
"Please setup your <a href=\"%s\">default settings</a> before using this "
|
4895 |
+
"feature."
|
4896 |
msgstr ""
|
4897 |
|
4898 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:104
|
4899 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:106
|
4900 |
+
msgid "%plural% to Award"
|
4901 |
+
msgstr ""
|
4902 |
+
|
4903 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:108
|
4904 |
+
msgid "Use zero to disable"
|
4905 |
+
msgstr ""
|
4906 |
+
|
4907 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:119
|
4908 |
+
msgid "Deduction Log Template"
|
4909 |
+
msgstr ""
|
4910 |
+
|
4911 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:255
|
4912 |
+
#, php-format
|
4913 |
+
msgid "Default %s for %s"
|
4914 |
+
msgstr ""
|
4915 |
+
|
4916 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:262
|
4917 |
+
msgid "Use zero to disable users gaining %_plural%"
|
4918 |
msgstr ""
|
4919 |
|
4920 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:266
|
4921 |
+
msgid "Default Log template"
|
4922 |
+
msgstr ""
|
4923 |
+
|
4924 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-badgeOS.php:272
|
4925 |
+
msgid "Deduct %_plural% if user looses "
|
4926 |
+
msgstr ""
|
4927 |
+
|
4928 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:16
|
4929 |
+
msgid "bbPress"
|
4930 |
+
msgstr ""
|
4931 |
+
|
4932 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:17
|
4933 |
+
msgid "Awards %_plural% for bbPress actions."
|
4934 |
+
msgstr ""
|
4935 |
+
|
4936 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:407
|
4937 |
msgid "%plural% for New Forum"
|
4938 |
msgstr ""
|
4939 |
|
4940 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:420
|
4941 |
msgid "%plural% for Forum Deletion"
|
4942 |
msgstr ""
|
4943 |
|
4944 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:433
|
4945 |
msgid "%plural% for New Topic"
|
4946 |
msgstr ""
|
4947 |
|
4948 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:447
|
4949 |
msgid "Forum authors can receive %_plural% for creating new topics."
|
4950 |
msgstr ""
|
4951 |
|
4952 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:451
|
4953 |
msgid "%plural% for Topic Deletion"
|
4954 |
msgstr ""
|
4955 |
|
4956 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:464
|
4957 |
msgid "%plural% for Favorited Topic"
|
4958 |
msgstr ""
|
4959 |
|
4960 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:479
|
4961 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:503
|
|
|
|
|
|
|
|
|
|
|
4962 |
msgid "Use zero for unlimited"
|
4963 |
msgstr ""
|
4964 |
|
4965 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:483
|
4966 |
msgid "%plural% for New Reply"
|
4967 |
msgstr ""
|
4968 |
|
4969 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:497
|
4970 |
msgid "Topic authors can receive %_plural% for replying to their own Topic"
|
4971 |
msgstr ""
|
4972 |
|
4973 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-bbPress.php:507
|
4974 |
msgid "Show users %_plural% balance in replies"
|
4975 |
msgstr ""
|
4976 |
|
4977 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-contact-form7.php:16
|
4978 |
+
msgid "Contact Form 7 Form Submissions"
|
|
|
|
|
|
|
|
|
|
|
4979 |
msgstr ""
|
4980 |
|
4981 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-contact-form7.php:17
|
4982 |
+
msgid "Awards %_plural% for successful form submissions (by logged in users)."
|
4983 |
msgstr ""
|
4984 |
|
4985 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-contact-form7.php:108
|
4986 |
+
msgid "No forms found."
|
4987 |
msgstr ""
|
4988 |
|
4989 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-events-manager-light.php:16
|
4990 |
+
msgid "Events Manager"
|
|
|
|
|
4991 |
msgstr ""
|
4992 |
|
4993 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-events-manager-light.php:17
|
4994 |
+
msgid "Awards %_plural% for users attending events."
|
4995 |
msgstr ""
|
4996 |
|
4997 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-events-manager-light.php:140
|
4998 |
+
msgid "Attending Event"
|
|
|
|
|
|
|
4999 |
msgstr ""
|
5000 |
|
5001 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-events-manager-light.php:150
|
5002 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-events-manager-light.php:163
|
5003 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-favorite-posts.php:134
|
5004 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-favorite-posts.php:147
|
5005 |
+
msgid "Available template tags: General and Post Related"
|
5006 |
msgstr ""
|
5007 |
|
5008 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-events-manager-light.php:153
|
5009 |
+
msgid "Cancelling Attendance"
|
5010 |
msgstr ""
|
5011 |
|
5012 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-gd-star-rating.php:16
|
5013 |
+
msgid "GD Star Rating"
|
5014 |
msgstr ""
|
5015 |
|
5016 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-gd-star-rating.php:17
|
5017 |
+
msgid "Awards %_plural% for users rate items using the GD Star Rating plugin."
|
|
|
5018 |
msgstr ""
|
5019 |
|
5020 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-gd-star-rating.php:99
|
5021 |
+
msgid "Rating"
|
5022 |
msgstr ""
|
5023 |
|
5024 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-gd-star-rating.php:112
|
5025 |
+
msgid "Up / Down Vote"
|
5026 |
msgstr ""
|
5027 |
|
5028 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:16
|
5029 |
+
msgid "Invite Anyone Plugin"
|
5030 |
msgstr ""
|
5031 |
|
5032 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:17
|
5033 |
msgid ""
|
5034 |
+
"Awards %_plural% for sending invitations and/or %_plural% if the invite is "
|
5035 |
+
"accepted."
|
5036 |
msgstr ""
|
5037 |
|
5038 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:135
|
5039 |
+
msgid "%plural% for Sending An Invite"
|
5040 |
msgstr ""
|
5041 |
|
5042 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:151
|
5043 |
+
msgid ""
|
5044 |
+
"Maximum number of invites that grants %_plural%. Use zero for unlimited."
|
|
|
|
|
5045 |
msgstr ""
|
5046 |
|
5047 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:155
|
5048 |
+
msgid "%plural% for Accepting An Invite"
|
5049 |
msgstr ""
|
5050 |
|
5051 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:159
|
5052 |
+
msgid "%plural% for each invited user that accepts an invitation."
|
5053 |
msgstr ""
|
5054 |
|
5055 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-invite-anyone.php:172
|
5056 |
+
msgid ""
|
5057 |
+
"Maximum number of accepted invitations that grants %_plural%. Use zero for "
|
5058 |
+
"unlimited."
|
5059 |
msgstr ""
|
5060 |
|
5061 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-jetpack.php:16
|
5062 |
+
msgid "Jetpack Subscriptions"
|
5063 |
msgstr ""
|
5064 |
|
5065 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-jetpack.php:17
|
5066 |
+
msgid ""
|
5067 |
+
"Awards %_plural% for users signing up for site or comment updates using "
|
5068 |
+
"Jetpack."
|
5069 |
msgstr ""
|
5070 |
|
5071 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-jetpack.php:490
|
5072 |
msgid "Site Subscriptions"
|
5073 |
msgstr ""
|
5074 |
|
5075 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-jetpack.php:503
|
5076 |
msgid "Comment Subscriptions"
|
5077 |
msgstr ""
|
5078 |
+
|
5079 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-favorite-posts.php:16
|
5080 |
+
msgid "WP Favorite Posts"
|
5081 |
+
msgstr ""
|
5082 |
+
|
5083 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-favorite-posts.php:17
|
5084 |
+
msgid "Awards %_plural% for users adding posts to their favorites."
|
5085 |
+
msgstr ""
|
5086 |
+
|
5087 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-favorite-posts.php:124
|
5088 |
+
msgid "Adding Content to Favorites"
|
5089 |
+
msgstr ""
|
5090 |
+
|
5091 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-favorite-posts.php:137
|
5092 |
+
msgid "Removing Content from Favorites"
|
5093 |
+
msgstr ""
|
5094 |
+
|
5095 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-polls.php:16
|
5096 |
+
msgid "WP-Polls"
|
5097 |
+
msgstr ""
|
5098 |
+
|
5099 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-polls.php:17
|
5100 |
+
msgid "Awards %_plural% for users voting in polls."
|
5101 |
+
msgstr ""
|
5102 |
+
|
5103 |
+
#: /Users/gabriel/Repositories/mycred/tags/1.3/plugins/mycred-hook-wp-polls.php:136
|
5104 |
+
msgid ""
|
5105 |
+
"Available template tags: General. You can also use %poll_id% and "
|
5106 |
+
"%poll_question%."
|
5107 |
+
msgstr ""
|
modules/mycred-module-addons.php
CHANGED
@@ -3,7 +3,7 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
3 |
/**
|
4 |
* myCRED_Addons class
|
5 |
* @since 0.1
|
6 |
-
* @version 1.
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Addons' ) ) {
|
9 |
class myCRED_Addons extends myCRED_Module {
|
@@ -85,8 +85,12 @@ if ( !class_exists( 'myCRED_Addons' ) ) {
|
|
85 |
|
86 |
if ( !function_exists( 'update_option' ) )
|
87 |
include_once( ABSPATH . 'wp-includes/option.php' );
|
88 |
-
|
89 |
-
|
|
|
|
|
|
|
|
|
90 |
$this->addons = $new_settings;
|
91 |
$this->installed = $installed;
|
92 |
$this->active = $active;
|
@@ -242,26 +246,27 @@ if ( !class_exists( 'myCRED_Addons' ) ) {
|
|
242 |
/**
|
243 |
* Admin Page
|
244 |
* @since 0.1
|
245 |
-
* @version 1.
|
246 |
*/
|
247 |
public function admin_page() {
|
248 |
// Security
|
249 |
if ( !$this->core->can_edit_plugin( get_current_user_id() ) ) wp_die( __( 'Access Denied' ) );
|
250 |
|
251 |
// Get installed
|
252 |
-
$installed = $this->get( true );
|
253 |
|
|
|
|
|
|
|
|
|
254 |
// Message
|
255 |
-
if ( isset( $_GET['addon_action'] )
|
256 |
-
if ( $_GET['addon_action'] == 'activate'
|
257 |
echo '<div class="updated"><p>' . __( 'Add-on Activated', 'mycred' ) . '</p></div>';
|
258 |
-
elseif ( $_GET['addon_action'] == 'deactivate'
|
259 |
echo '<div class="error"><p>' . __( 'Add-on Deactivated', 'mycred' ) . '</p></div>';
|
260 |
} ?>
|
261 |
|
262 |
-
<div class="wrap" id="myCRED-wrap">
|
263 |
-
<div id="icon-myCRED" class="icon32"><br /></div>
|
264 |
-
<h2><?php echo apply_filters( 'mycred_label', myCRED_NAME ) . ' ' . __( 'Add-ons', 'mycred' ); ?></h2>
|
265 |
<p><?php _e( 'Add-ons can expand your current installation with further features.', 'mycred' ); ?></p>
|
266 |
<div class="list-items expandable-li" id="accordion">
|
267 |
<?php
|
@@ -269,7 +274,7 @@ if ( !class_exists( 'myCRED_Addons' ) ) {
|
|
269 |
if ( !empty( $installed ) ) {
|
270 |
foreach ( $installed as $key => $data ) { ?>
|
271 |
|
272 |
-
<h4 class="
|
273 |
<div class="body" style="display:none;">
|
274 |
<div class="wrapper">
|
275 |
<?php $this->present_addon( $key ); ?>
|
@@ -280,8 +285,8 @@ if ( !class_exists( 'myCRED_Addons' ) ) {
|
|
280 |
}
|
281 |
} ?>
|
282 |
|
283 |
-
<p style="text-align:right;"><?php echo sprintf( __( 'You can find more add-ons in our %s.', 'mycred' ), sprintf( '<a href="http://mycred.me/store/" target="_blank">%s</a>', __( 'online store', 'mycred' ) ) ); ?></p>
|
284 |
</div>
|
|
|
285 |
</div>
|
286 |
<?php
|
287 |
unset( $this );
|
@@ -317,7 +322,7 @@ if ( !class_exists( 'myCRED_Addons' ) ) {
|
|
317 |
/**
|
318 |
* Add-on Details
|
319 |
* @since 0.1
|
320 |
-
* @version 1.0
|
321 |
*/
|
322 |
public function addon_links( $key ) {
|
323 |
$data = $this->installed[$key];
|
@@ -328,10 +333,10 @@ if ( !class_exists( 'myCRED_Addons' ) ) {
|
|
328 |
$info[] = __( 'Version', 'mycred' ) . ' ' . $data['version'];
|
329 |
|
330 |
if ( isset( $data['author_uri'] ) && !empty( $data['author_uri'] ) && isset( $data['author'] ) && !empty( $data['author'] ) )
|
331 |
-
$info[] = __( 'By', 'mycred' ) . ' <a href="' . $data['author_uri'] . '"
|
332 |
|
333 |
if ( isset( $data['addon_uri'] ) && !empty( $data['addon_uri'] ) )
|
334 |
-
$info[] = ' <a href="' . $data['addon_uri'] . '"
|
335 |
|
336 |
unset( $data );
|
337 |
if ( !empty( $info ) )
|
3 |
/**
|
4 |
* myCRED_Addons class
|
5 |
* @since 0.1
|
6 |
+
* @version 1.1
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Addons' ) ) {
|
9 |
class myCRED_Addons extends myCRED_Module {
|
85 |
|
86 |
if ( !function_exists( 'update_option' ) )
|
87 |
include_once( ABSPATH . 'wp-includes/option.php' );
|
88 |
+
|
89 |
+
if ( mycred_override_settings() )
|
90 |
+
update_site_option( 1, 'mycred_pref_addons', $new_settings );
|
91 |
+
else
|
92 |
+
update_site_option( $GLOBALS['blog_id'], 'mycred_pref_addons', $new_settings );
|
93 |
+
|
94 |
$this->addons = $new_settings;
|
95 |
$this->installed = $installed;
|
96 |
$this->active = $active;
|
246 |
/**
|
247 |
* Admin Page
|
248 |
* @since 0.1
|
249 |
+
* @version 1.1
|
250 |
*/
|
251 |
public function admin_page() {
|
252 |
// Security
|
253 |
if ( !$this->core->can_edit_plugin( get_current_user_id() ) ) wp_die( __( 'Access Denied' ) );
|
254 |
|
255 |
// Get installed
|
256 |
+
$installed = $this->get( true ); ?>
|
257 |
|
258 |
+
<div class="wrap" id="myCRED-wrap">
|
259 |
+
<div id="icon-myCRED" class="icon32"><br /></div>
|
260 |
+
<h2><?php echo apply_filters( 'mycred_label', myCRED_NAME ) . ' ' . __( 'Add-ons', 'mycred' ); ?></h2>
|
261 |
+
<?php
|
262 |
// Message
|
263 |
+
if ( isset( $_GET['addon_action'] ) ) {
|
264 |
+
if ( $_GET['addon_action'] == 'activate' )
|
265 |
echo '<div class="updated"><p>' . __( 'Add-on Activated', 'mycred' ) . '</p></div>';
|
266 |
+
elseif ( $_GET['addon_action'] == 'deactivate' )
|
267 |
echo '<div class="error"><p>' . __( 'Add-on Deactivated', 'mycred' ) . '</p></div>';
|
268 |
} ?>
|
269 |
|
|
|
|
|
|
|
270 |
<p><?php _e( 'Add-ons can expand your current installation with further features.', 'mycred' ); ?></p>
|
271 |
<div class="list-items expandable-li" id="accordion">
|
272 |
<?php
|
274 |
if ( !empty( $installed ) ) {
|
275 |
foreach ( $installed as $key => $data ) { ?>
|
276 |
|
277 |
+
<h4><div class="icon icon-<?php if ( $this->is_active( $key ) ) echo 'active'; else echo 'inactive'; echo ' ' . $key; ?>"></div><label><?php _e( $this->core->template_tags_general( $data['name'] ), 'mycred' ); ?></label></h4>
|
278 |
<div class="body" style="display:none;">
|
279 |
<div class="wrapper">
|
280 |
<?php $this->present_addon( $key ); ?>
|
285 |
}
|
286 |
} ?>
|
287 |
|
|
|
288 |
</div>
|
289 |
+
<p style="text-align:right;"><?php echo sprintf( __( 'You can find more add-ons in our %s.', 'mycred' ), sprintf( '<a href="http://mycred.me/store/" target="_blank">%s</a>', __( 'online store', 'mycred' ) ) ); ?></p>
|
290 |
</div>
|
291 |
<?php
|
292 |
unset( $this );
|
322 |
/**
|
323 |
* Add-on Details
|
324 |
* @since 0.1
|
325 |
+
* @version 1.0.1
|
326 |
*/
|
327 |
public function addon_links( $key ) {
|
328 |
$data = $this->installed[$key];
|
333 |
$info[] = __( 'Version', 'mycred' ) . ' ' . $data['version'];
|
334 |
|
335 |
if ( isset( $data['author_uri'] ) && !empty( $data['author_uri'] ) && isset( $data['author'] ) && !empty( $data['author'] ) )
|
336 |
+
$info[] = __( 'By', 'mycred' ) . ' <a href="' . $data['author_uri'] . '" target="_blank">' . $data['author'] . '</a>';
|
337 |
|
338 |
if ( isset( $data['addon_uri'] ) && !empty( $data['addon_uri'] ) )
|
339 |
+
$info[] = ' <a href="' . $data['addon_uri'] . '" target="_blank">' . __( 'Documentation', 'mycred' ) . '</a>';
|
340 |
|
341 |
unset( $data );
|
342 |
if ( !empty( $info ) )
|
modules/mycred-module-general.php
CHANGED
@@ -3,7 +3,7 @@ if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
3 |
/**
|
4 |
* myCRED_General class
|
5 |
* @since 0.1
|
6 |
-
* @version 1.
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_General' ) ) {
|
9 |
class myCRED_General extends myCRED_Module {
|
@@ -24,12 +24,192 @@ if ( !class_exists( 'myCRED_General' ) ) {
|
|
24 |
'accordion' => true,
|
25 |
'menu_pos' => 99
|
26 |
) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
}
|
28 |
|
29 |
/**
|
30 |
* Admin Page
|
31 |
* @since 0.1
|
32 |
-
* @version 1.
|
33 |
*/
|
34 |
public function admin_page() {
|
35 |
if ( !$this->core->can_edit_plugin( get_current_user_id() ) ) wp_die( __( 'Access Denied', 'mycred' ) );
|
@@ -37,24 +217,24 @@ if ( !class_exists( 'myCRED_General' ) ) {
|
|
37 |
// General Settings
|
38 |
$general = $this->general;
|
39 |
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
// Updated settings
|
41 |
if ( isset( $_GET['settings-updated'] ) && $_GET['settings-updated'] == true ) {
|
42 |
echo '<div class="updated settings-error"><p>' . __( 'Settings Updated', 'mycred' ) . '</p></div>';
|
43 |
} ?>
|
44 |
|
45 |
-
|
46 |
-
<
|
47 |
-
<h2><?php echo apply_filters( 'mycred_label', myCRED_NAME ) . ' ' . __( 'Settings', 'mycred' ); ?> <?php echo myCRED_VERSION; ?></h2>
|
48 |
-
<div id="mycred-social">
|
49 |
-
<a href="https://www.facebook.com/myCRED" class="zocial facebook" target="_blank"><?php _e( 'Facebook', 'mycred' ); ?></a>
|
50 |
-
<a href="https://plus.google.com/b/102981932999764129220/102981932999764129220/posts" class="zocial googleplus" target="_blank"><?php _e( 'Google Plus', 'mycred' ); ?></a>
|
51 |
-
<a href="http://mycred.me/support/forums/" class="zocial wordpress" target="_blank"><?php _e( 'Support Forum', 'mycred' ); ?></a>
|
52 |
-
</div>
|
53 |
<form method="post" action="options.php">
|
54 |
<?php settings_fields( 'myCRED-general' ); ?>
|
55 |
|
56 |
<div class="list-items expandable-li" id="accordion">
|
57 |
-
<h4
|
58 |
<div class="body" style="display:none;">
|
59 |
<label class="subheader"><?php _e( 'Name', 'mycred' ); ?></label>
|
60 |
<ol id="myCRED-settings-name" class="inline">
|
@@ -142,20 +322,96 @@ if ( !class_exists( 'myCRED_General' ) ) {
|
|
142 |
<li class="empty"> </li>
|
143 |
<li>
|
144 |
<label for="<?php echo $this->field_id( array( 'frequency' => 'date' ) ); ?>"><?php _e( 'Date', 'mycred' ); ?></label>
|
145 |
-
<div class="h2"><input type="date" name="<?php echo $this->field_name( array( 'frequency' => 'date' ) ); ?>" id="<?php echo $this->field_id( array( 'frequency' => 'date' ) ); ?>" value="<?php echo $this->core->frequency['date'] ?>" class="medium" /></div>
|
146 |
</li>
|
147 |
</ol>
|
148 |
<?php do_action( 'mycred_core_prefs', $this ); ?>
|
149 |
|
150 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
151 |
<?php do_action( 'mycred_after_core_prefs', $this ); ?>
|
152 |
|
153 |
</div>
|
154 |
-
<?php submit_button( __( 'Update Settings', 'mycred' ), 'primary large' ); ?>
|
155 |
|
156 |
</form>
|
157 |
<?php do_action( 'mycred_bottom_settings_page', $this ); ?>
|
158 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
</div>
|
160 |
<?php
|
161 |
}
|
@@ -178,7 +434,7 @@ if ( !class_exists( 'myCRED_General' ) ) {
|
|
178 |
* Sanititze Settings
|
179 |
* @filter 'mycred_save_core_prefs'
|
180 |
* @since 0.1
|
181 |
-
* @version 1.
|
182 |
*/
|
183 |
public function sanitize_settings( $post ) {
|
184 |
$new_data = array();
|
@@ -206,6 +462,10 @@ if ( !class_exists( 'myCRED_General' ) ) {
|
|
206 |
'creds' => sanitize_text_field( $post['caps']['creds'] )
|
207 |
);
|
208 |
|
|
|
|
|
|
|
|
|
209 |
// Excludes
|
210 |
$new_data['exclude'] = array(
|
211 |
'plugin_editors' => ( isset( $post['exclude']['plugin_editors'] ) ) ? true : false,
|
3 |
/**
|
4 |
* myCRED_General class
|
5 |
* @since 0.1
|
6 |
+
* @version 1.1
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_General' ) ) {
|
9 |
class myCRED_General extends myCRED_Module {
|
24 |
'accordion' => true,
|
25 |
'menu_pos' => 99
|
26 |
) );
|
27 |
+
|
28 |
+
if ( get_transient( 'mycred-accounts-reset' ) !== false )
|
29 |
+
add_filter( 'mycred_add', array( $this, 'action_remove_reset' ), 10, 3 );
|
30 |
+
}
|
31 |
+
|
32 |
+
/**
|
33 |
+
* Admin Init
|
34 |
+
* @since 1.3
|
35 |
+
* @version 1.0
|
36 |
+
*/
|
37 |
+
public function module_admin_init() {
|
38 |
+
if ( isset( $_GET['do'] ) && $_GET['do'] == 'export' )
|
39 |
+
$this->load_export();
|
40 |
+
|
41 |
+
add_action( 'wp_ajax_mycred-action-empty-log', array( $this, 'action_empty_log' ) );
|
42 |
+
add_action( 'wp_ajax_mycred-action-reset-accounts', array( $this, 'action_reset_balance' ) );
|
43 |
+
add_action( 'wp_ajax_mycred-action-export-balances', array( $this, 'action_export_balances' ) );
|
44 |
+
add_action( 'wp_ajax_mycred-action-generate-key', array( $this, 'action_generate_key' ) );
|
45 |
+
}
|
46 |
+
|
47 |
+
/**
|
48 |
+
* Empty Log Action
|
49 |
+
* @since 1.3
|
50 |
+
* @version 1.0
|
51 |
+
*/
|
52 |
+
public function action_empty_log() {
|
53 |
+
check_ajax_referer( 'mycred-management-actions', 'token' );
|
54 |
+
|
55 |
+
if ( !is_user_logged_in() || !$this->core->can_edit_plugin() )
|
56 |
+
die( json_encode( array( 'status' => 'ERROR', 'rows' => __( 'Access denied for this action', 'mycred' ) ) ) );
|
57 |
+
|
58 |
+
global $wpdb;
|
59 |
+
|
60 |
+
$wpdb->query( "TRUNCATE TABLE {$this->core->log_table};" );
|
61 |
+
$total_rows = $wpdb->get_var( "SELECT COUNT(1) FROM {$this->core->log_table};" );
|
62 |
+
$wpdb->flush();
|
63 |
+
|
64 |
+
die( json_encode( array( 'status' => 'OK', 'rows' => $total_rows ) ) );
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* Reset All Balances Action
|
69 |
+
* @since 1.3
|
70 |
+
* @version 1.0
|
71 |
+
*/
|
72 |
+
public function action_reset_balance() {
|
73 |
+
check_ajax_referer( 'mycred-management-actions', 'token' );
|
74 |
+
|
75 |
+
if ( !is_user_logged_in() || !$this->core->can_edit_plugin() )
|
76 |
+
die( json_encode( array( 'status' => 'ERROR', 'rows' => __( 'Access denied for this action', 'mycred' ) ) ) );
|
77 |
+
|
78 |
+
global $wpdb;
|
79 |
+
|
80 |
+
if ( !isset( $this->core->format['decimals'] ) )
|
81 |
+
$decimals = $this->core->core['format']['decimals'];
|
82 |
+
else
|
83 |
+
$decimals = $this->core->format['decimals'];
|
84 |
+
|
85 |
+
if ( $decimals > 0 )
|
86 |
+
$format = '%f';
|
87 |
+
else
|
88 |
+
$format = '%d';
|
89 |
+
|
90 |
+
$wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->usermeta} SET meta_value = {$format} WHERE meta_key = %s;", $this->core->zero(), 'mycred_default' ) );
|
91 |
+
|
92 |
+
set_transient( 'mycred-accounts-reset', time(), (60*60*24) );
|
93 |
+
die( json_encode( array( 'status' => 'OK', 'rows' => __( 'Accounts successfully reset', 'mycred' ) ) ) );
|
94 |
+
}
|
95 |
+
|
96 |
+
/**
|
97 |
+
* Export User Balances
|
98 |
+
* @filter mycred_export_raw
|
99 |
+
* @since 1.3
|
100 |
+
* @version 1.0
|
101 |
+
*/
|
102 |
+
public function action_export_balances() {
|
103 |
+
check_ajax_referer( 'mycred-management-actions', 'token' );
|
104 |
+
|
105 |
+
global $wpdb;
|
106 |
+
|
107 |
+
$log = sanitize_text_field( $_POST['log_temp'] );
|
108 |
+
|
109 |
+
switch ( $_POST['identify'] ) {
|
110 |
+
case 'ID' :
|
111 |
+
$SQL = "SELECT user_id AS user, meta_value AS balance FROM {$wpdb->usermeta} WHERE meta_key = %s;";
|
112 |
+
break;
|
113 |
+
case 'email' :
|
114 |
+
$SQL = "SELECT user_email AS user, meta_value AS balance FROM {$wpdb->usermeta} LEFT JOIN {$wpdb->users} ON {$wpdb->usermeta}.user_id = {$wpdb->users}.ID WHERE {$wpdb->usermeta}.meta_key = %s;";
|
115 |
+
break;
|
116 |
+
case 'login' :
|
117 |
+
$SQL = "SELECT user_login AS user, meta_value AS balance FROM {$wpdb->usermeta} LEFT JOIN {$wpdb->users} ON {$wpdb->usermeta}.user_id = {$wpdb->users}.ID WHERE {$wpdb->usermeta}.meta_key = %s;";
|
118 |
+
break;
|
119 |
+
}
|
120 |
+
|
121 |
+
$query = $wpdb->get_results( $wpdb->prepare( $SQL, 'mycred_default' ) );
|
122 |
+
|
123 |
+
if ( empty( $query ) )
|
124 |
+
die( json_encode( array( 'status' => 'ERROR', 'string' => __( 'No users found to export', 'mycred' ) ) ) );
|
125 |
+
|
126 |
+
$array = array();
|
127 |
+
foreach ( $query as $result ) {
|
128 |
+
$data = array(
|
129 |
+
'mycred_user' => $result->user,
|
130 |
+
'mycred_amount' => $this->core->number( $result->balance )
|
131 |
+
);
|
132 |
+
|
133 |
+
if ( ! empty( $log ) )
|
134 |
+
$data = array_merge_recursive( $data, array( 'mycred_log' => $log ) );
|
135 |
+
|
136 |
+
$array[] = $data;
|
137 |
+
}
|
138 |
+
|
139 |
+
set_transient( 'mycred-export-raw', apply_filters( 'mycred_export_raw', $array ), 3000 );
|
140 |
+
|
141 |
+
die( json_encode( array( 'status' => 'OK', 'string' => admin_url( 'admin.php?page=myCRED_page_settings&do=export' ) ) ) );
|
142 |
+
}
|
143 |
+
|
144 |
+
public function action_generate_key() {
|
145 |
+
check_ajax_referer( 'mycred-management-actions', 'token' );
|
146 |
+
|
147 |
+
die( json_encode( wp_generate_password( 14, true, true ) ) );
|
148 |
+
}
|
149 |
+
|
150 |
+
/**
|
151 |
+
* Load Export
|
152 |
+
* Creates a CSV export file of the 'mycred-export-raw' transient.
|
153 |
+
* @since 1.3
|
154 |
+
* @version 1.0
|
155 |
+
*/
|
156 |
+
public function load_export() {
|
157 |
+
if ( $this->core->can_edit_plugin( get_current_user_id() ) ) {
|
158 |
+
|
159 |
+
$export = get_transient( 'mycred-export-raw' );
|
160 |
+
if ( $export === false ) return;
|
161 |
+
|
162 |
+
if ( isset( $export[0]['mycred_log'] ) )
|
163 |
+
$headers = array( 'mycred_user', 'mycred_amount', 'mycred_log' );
|
164 |
+
else
|
165 |
+
$headers = array( 'mycred_user', 'mycred_amount' );
|
166 |
+
|
167 |
+
require_once( myCRED_ASSETS_DIR . 'libs/parsecsv.lib.php' );
|
168 |
+
$csv = new parseCSV();
|
169 |
+
|
170 |
+
delete_transient( 'mycred-export-raw' );
|
171 |
+
$csv->output( true, 'mycred-balance-export.csv', $export, $headers );
|
172 |
+
die();
|
173 |
+
}
|
174 |
+
}
|
175 |
+
|
176 |
+
/**
|
177 |
+
* Remove Reset Block
|
178 |
+
* @since 1.3
|
179 |
+
* @version 1.0
|
180 |
+
*/
|
181 |
+
public function action_remove_reset( $reply, $request, $mycred ) {
|
182 |
+
delete_transient( 'mycred-accounts-reset' );
|
183 |
+
return $reply;
|
184 |
+
}
|
185 |
+
|
186 |
+
/**
|
187 |
+
* Settings Header
|
188 |
+
* Outputs the "click to open" and "click to close" text to the accordion.
|
189 |
+
*
|
190 |
+
* @since 1.3
|
191 |
+
* @version 1.0
|
192 |
+
*/
|
193 |
+
public function settings_header() {
|
194 |
+
wp_dequeue_script( 'bpge_admin_js_acc' );
|
195 |
+
wp_enqueue_script( 'mycred-manage' );
|
196 |
+
|
197 |
+
wp_enqueue_style( 'mycred-admin' ); ?>
|
198 |
+
|
199 |
+
<style type="text/css">
|
200 |
+
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-image: url(<?php echo apply_filters( 'mycred_icon', plugins_url( 'assets/images/cred-icon32.png', myCRED_THIS ) ); ?>); }
|
201 |
+
h4:before { float:right; padding-right: 12px; font-size: 14px; font-weight: normal; color: silver; }
|
202 |
+
h4.ui-accordion-header.ui-state-active:before { content: "<?php _e( 'click to close', 'mycred' ); ?>"; }
|
203 |
+
h4.ui-accordion-header:before { content: "<?php _e( 'click to open', 'mycred' ); ?>"; }
|
204 |
+
.mycred-export-points { background-color:white; }.mycred-export-points>div { padding:12px; }.mycred-export-points .ui-dialog-titlebar { line-height:24px; border-bottom: 1px solid #dedede; }.mycred-export-points .ui-dialog-titlebar:hover { cursor:move; }.mycred-export-points .ui-dialog-titlebar-close { float:right; }body.mycred_page_myCRED_page_settings .ui-widget-overlay { position:fixed; top:0; left:0; width:100%; height:100%; background: repeat-x scroll 50% 50% #AAA; opacity:0.3; overflow:hidden; }body.mp6 .ui-widget-overlay { background: repeat-x scroll 50% 50% #333; }#export-points ul { display: block; margin: 0; padding: 0; }#export-points ul li { margin: 0 0 6px 0; padding: 0; list-style-type: none; }#export-points .action input { float: right; }
|
205 |
+
</style>
|
206 |
+
<?php
|
207 |
}
|
208 |
|
209 |
/**
|
210 |
* Admin Page
|
211 |
* @since 0.1
|
212 |
+
* @version 1.3
|
213 |
*/
|
214 |
public function admin_page() {
|
215 |
if ( !$this->core->can_edit_plugin( get_current_user_id() ) ) wp_die( __( 'Access Denied', 'mycred' ) );
|
217 |
// General Settings
|
218 |
$general = $this->general;
|
219 |
|
220 |
+
$plugin_name = apply_filters( 'mycred_label', myCRED_NAME ); ?>
|
221 |
+
|
222 |
+
<div class="wrap list" id="myCRED-wrap">
|
223 |
+
<div id="icon-myCRED" class="icon32"><br /></div>
|
224 |
+
<h2><?php echo $plugin_name . ' ' . __( 'Settings', 'mycred' ); ?> <?php echo myCRED_VERSION; ?></h2>
|
225 |
+
<?php
|
226 |
// Updated settings
|
227 |
if ( isset( $_GET['settings-updated'] ) && $_GET['settings-updated'] == true ) {
|
228 |
echo '<div class="updated settings-error"><p>' . __( 'Settings Updated', 'mycred' ) . '</p></div>';
|
229 |
} ?>
|
230 |
|
231 |
+
<p><?php echo __( 'Adjust your core or add-on settings. Follow us on:', 'mycred' ) . ' '; ?><a href="https://www.facebook.com/myCRED" class="facebook" target="_blank"><?php _e( 'Facebook', 'mycred' ); ?></a>, <a href="https://plus.google.com/b/102981932999764129220/102981932999764129220/posts" class="googleplus" target="_blank"><?php _e( 'Google Plus', 'mycred' ); ?></a></p>
|
232 |
+
<pre><?php if ( current_user_can( 'export' ) ) echo 'has cap'; else echo 'does not have cap'; ?></pre>
|
|
|
|
|
|
|
|
|
|
|
|
|
233 |
<form method="post" action="options.php">
|
234 |
<?php settings_fields( 'myCRED-general' ); ?>
|
235 |
|
236 |
<div class="list-items expandable-li" id="accordion">
|
237 |
+
<h4><div class="icon icon-inactive core"></div><label><?php _e( 'Core Settings', 'mycred' ); ?></label></h4>
|
238 |
<div class="body" style="display:none;">
|
239 |
<label class="subheader"><?php _e( 'Name', 'mycred' ); ?></label>
|
240 |
<ol id="myCRED-settings-name" class="inline">
|
322 |
<li class="empty"> </li>
|
323 |
<li>
|
324 |
<label for="<?php echo $this->field_id( array( 'frequency' => 'date' ) ); ?>"><?php _e( 'Date', 'mycred' ); ?></label>
|
325 |
+
<div class="h2"><input type="date" name="<?php echo $this->field_name( array( 'frequency' => 'date' ) ); ?>" id="<?php echo $this->field_id( array( 'frequency' => 'date' ) ); ?>" placeholder="YYYY-MM-DD" value="<?php echo $this->core->frequency['date'] ?>" class="medium" /></div>
|
326 |
</li>
|
327 |
</ol>
|
328 |
<?php do_action( 'mycred_core_prefs', $this ); ?>
|
329 |
|
330 |
</div>
|
331 |
+
<?php
|
332 |
+
|
333 |
+
global $wpdb;
|
334 |
+
|
335 |
+
$total_rows = $wpdb->get_var( "SELECT COUNT(1) FROM {$this->core->log_table};" );
|
336 |
+
|
337 |
+
$reset_block = false;
|
338 |
+
if ( get_transient( 'mycred-accounts-reset' ) !== false )
|
339 |
+
$reset_block = true; ?>
|
340 |
+
|
341 |
+
<h4><div class="icon icon-active core"></div><label><?php _e( 'Management', 'mycred' ); ?></label></h4>
|
342 |
+
<div class="body" style="display:none;">
|
343 |
+
<label class="subheader"><?php _e( 'The Log', 'mycred' ); ?></label>
|
344 |
+
<ol id="myCRED-actions-log" class="inline">
|
345 |
+
<li>
|
346 |
+
<label><?php _e( 'Table Name', 'mycred' ); ?></label>
|
347 |
+
<div class="h2"><input type="text" id="mycred-manage-table-name" disabled="disabled" value="<?php echo $this->core->log_table; ?>" class="readonly" /></div>
|
348 |
+
</li>
|
349 |
+
<li>
|
350 |
+
<label><?php _e( 'Entries', 'mycred' ); ?></label>
|
351 |
+
<div class="h2"><input type="text" id="mycred-manage-table-rows" disabled="disabled" value="<?php echo $total_rows; ?>" class="readonly short" /></div>
|
352 |
+
</li>
|
353 |
+
<li>
|
354 |
+
<label><?php _e( 'Actions', 'mycred' ); ?></label>
|
355 |
+
<div class="h2"><?php if ( ( ! is_multisite() ) || ( is_multisite() && $GLOBALS['blog_id'] == 1 ) ) { ?><input type="button" id="mycred-manage-action-empty-log" value="<?php _e( 'Empty Log', 'mycred' ); ?>" class="button button-large large <?php if ( $total_rows == 0 ) echo '"disabled="disabled'; else echo 'button-primary'; ?>" /><?php } ?></div>
|
356 |
+
</li>
|
357 |
+
</ol>
|
358 |
+
<label class="subheader"><?php echo $this->core->plural(); ?></label>
|
359 |
+
<ol id="myCRED-actions-cred" class="inline">
|
360 |
+
<li>
|
361 |
+
<label><?php _e( 'User Meta Key', 'mycred' ); ?></label>
|
362 |
+
<div class="h2"><input type="text" id="" disabled="disabled" value="<?php echo $this->core->cred_id; ?>" class="readonly" /></div>
|
363 |
+
</li>
|
364 |
+
<li>
|
365 |
+
<label><?php _e( 'Users', 'mycred' ); ?></label>
|
366 |
+
<div class="h2"><input type="text" id="" disabled="disabled" value="<?php echo $this->core->count_members(); ?>" class="readonly short" /></div>
|
367 |
+
</li>
|
368 |
+
<li>
|
369 |
+
<label><?php _e( 'Actions', 'mycred' ); ?></label>
|
370 |
+
<div class="h2"><input type="button" id="mycred-manage-action-reset-accounts" value="<?php _e( 'Set all to zero', 'mycred' ); ?>" class="button button-large large <?php if ( $reset_block ) echo '" disabled="disabled'; else echo 'button-primary'; ?>" /> <input type="button" id="mycred-export-users-points" value="<?php _e( 'CSV Export', 'mycred' ); ?>" class="button button-large large"<?php if ( $reset_block ) echo ' disabled="disabled"'; ?> /></div>
|
371 |
+
</li>
|
372 |
+
</ol>
|
373 |
+
<?php do_action( 'mycred_management_prefs', $this ); ?>
|
374 |
+
|
375 |
+
</div>
|
376 |
+
<?php do_action( 'mycred_after_management_prefs', $this ); ?>
|
377 |
<?php do_action( 'mycred_after_core_prefs', $this ); ?>
|
378 |
|
379 |
</div>
|
380 |
+
<?php submit_button( __( 'Update Settings', 'mycred' ), 'primary large', 'submit', false ); ?>
|
381 |
|
382 |
</form>
|
383 |
<?php do_action( 'mycred_bottom_settings_page', $this ); ?>
|
384 |
|
385 |
+
<div id="export-points" style="display:none;">
|
386 |
+
<ul>
|
387 |
+
<li>
|
388 |
+
<label><?php _e( 'Identify users by', 'mycred' ); ?>:</label><br />
|
389 |
+
<select id="mycred-export-identify-by">
|
390 |
+
<?php
|
391 |
+
|
392 |
+
$identify = apply_filters( 'mycred_export_by', array(
|
393 |
+
'ID' => __( 'User ID', 'mycred' ),
|
394 |
+
'email' => __( 'User Email', 'mycred' ),
|
395 |
+
'login' => __( 'User Login', 'mycred' )
|
396 |
+
) );
|
397 |
+
|
398 |
+
foreach ( $identify as $id => $label ) {
|
399 |
+
echo '<option value="' . $id . '">' . $label . '</option>';
|
400 |
+
} ?>
|
401 |
+
</select><br />
|
402 |
+
<span class="description"><?php _e( 'Use ID if you intend to use this export as a backup of your current site while Email is recommended if you want to export to a different site.', 'mycred' ); ?></span>
|
403 |
+
</li>
|
404 |
+
<li>
|
405 |
+
<label><?php _e( 'Import Log Entry', 'mycred' ); ?>:</label><br />
|
406 |
+
<input type="text" id="mycred-export-log-template" value="" class="regular-text" /><br />
|
407 |
+
<span class="description"><?php echo sprintf( __( 'Optional log entry to use if you intend to import this file in a different %s installation.', 'mycred' ), $plugin_name ); ?></span>
|
408 |
+
</li>
|
409 |
+
<li class="action">
|
410 |
+
<input type="button" id="mycred-run-exporter" value="<?php _e( 'Export', 'mycred' ); ?>" class="button button-large button-primary" />
|
411 |
+
</li>
|
412 |
+
</ul>
|
413 |
+
<div class="clear"></div>
|
414 |
+
</div>
|
415 |
</div>
|
416 |
<?php
|
417 |
}
|
434 |
* Sanititze Settings
|
435 |
* @filter 'mycred_save_core_prefs'
|
436 |
* @since 0.1
|
437 |
+
* @version 1.1
|
438 |
*/
|
439 |
public function sanitize_settings( $post ) {
|
440 |
$new_data = array();
|
462 |
'creds' => sanitize_text_field( $post['caps']['creds'] )
|
463 |
);
|
464 |
|
465 |
+
// Make sure multisites uses capabilities that exists
|
466 |
+
if ( in_array( $new_data['caps']['creds'], array( 'create_users', 'delete_themes', 'edit_plugins', 'edit_themes', 'edit_users' ) ) && is_multisite() )
|
467 |
+
$new_data['caps']['creds'] = 'delete_users';
|
468 |
+
|
469 |
// Excludes
|
470 |
$new_data['exclude'] = array(
|
471 |
'plugin_editors' => ( isset( $post['exclude']['plugin_editors'] ) ) ? true : false,
|
modules/mycred-module-help.php
DELETED
@@ -1,205 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
-
/**
|
4 |
-
* myCRED_Help class
|
5 |
-
* Adds contextual help for myCRED pages and features.
|
6 |
-
* @since 0.1
|
7 |
-
* @version 1.0.1
|
8 |
-
*/
|
9 |
-
if ( !class_exists( 'myCRED_Help' ) ) {
|
10 |
-
class myCRED_Help {
|
11 |
-
|
12 |
-
public $is_admin;
|
13 |
-
public $core;
|
14 |
-
|
15 |
-
/**
|
16 |
-
* Construct
|
17 |
-
*/
|
18 |
-
function __construct() {
|
19 |
-
$this->core = mycred_get_settings();
|
20 |
-
}
|
21 |
-
|
22 |
-
/**
|
23 |
-
* Run Appropriate Help
|
24 |
-
* @since 0.1
|
25 |
-
* @version 1.1
|
26 |
-
*/
|
27 |
-
public function run( $contextual_help, $screen_id, $screen ) {
|
28 |
-
if ( $screen_id == 'toplevel_page_myCRED' )
|
29 |
-
$this->log_page( $screen );
|
30 |
-
elseif ( $screen_id == 'mycred_page_myCRED_page_hooks' )
|
31 |
-
$this->hooks_page( $screen );
|
32 |
-
elseif ( $screen_id == 'widgets' )
|
33 |
-
$this->widgets( $screen );
|
34 |
-
elseif ( $screen_id == 'user-edit' || $screen_id == 'profile' )
|
35 |
-
$this->users( $screen );
|
36 |
-
elseif ( $screen_id == 'mycred_page_myCRED_page_settings' )
|
37 |
-
$this->settings_page( $screen );
|
38 |
-
|
39 |
-
do_action( 'mycred_help', $screen_id, $screen );
|
40 |
-
|
41 |
-
return $contextual_help;
|
42 |
-
}
|
43 |
-
|
44 |
-
/**
|
45 |
-
* Log Page Help
|
46 |
-
* @since 0.1
|
47 |
-
* @version 1.0
|
48 |
-
*/
|
49 |
-
public function log_page( $screen ) {
|
50 |
-
$screen->add_help_tab( array(
|
51 |
-
'id' => 'mycred-log',
|
52 |
-
'title' => __( 'The Log', 'mycred' ),
|
53 |
-
'content' => '
|
54 |
-
<p>' . $this->core->template_tags_general( __( 'myCRED logs everything giving you a complete overview of %_plural% awarded or deducted from your users. The Log page can be filtered by user, date or reference and we have included a search function for you.', 'mycred' ) ) . '</p>
|
55 |
-
<p>' . __( 'You can select how many log entries you want to show under "Screen Options". By default you will be shown 10 entries.', 'mycred' ) . '</p>
|
56 |
-
<p><strong>' . __( 'Filter by Date', 'mycred' ) . '</strong></p>
|
57 |
-
<p>' . __( 'You can select to show log entries for: Today, Yesterday, This Week or This Month.', 'mycred' ) . '</p>
|
58 |
-
<p><strong>' . __( 'Filter by Reference', 'mycred' ) . '</strong></p>
|
59 |
-
<p>' . __( 'Each time a log entry is made a reference is used to identify where or why points were awarded or deducted.', 'mycred' ) . '</p>
|
60 |
-
<p><strong>' . __( 'Filter by User', 'mycred' ) . '</strong></p>
|
61 |
-
<p>' . __( 'Show log entries for a particular username.', 'mycred' ) . '</p>'
|
62 |
-
) );
|
63 |
-
}
|
64 |
-
|
65 |
-
/**
|
66 |
-
* Hook Page Help
|
67 |
-
* @since 0.1
|
68 |
-
* @version 1.0
|
69 |
-
*/
|
70 |
-
public function hooks_page( $screen ) {
|
71 |
-
$screen->add_help_tab( array(
|
72 |
-
'id' => 'mycred-hooks',
|
73 |
-
'title' => __( 'Hooks', 'mycred' ),
|
74 |
-
'content' => '
|
75 |
-
<p>' . $this->core->template_tags_general( __( 'Each instance where users might gain or loose %_plural%, are called hooks. Hooks can relate to WordPress specific actions or any third party plugin action that myCRED supports.', 'mycred' ) ) . '</p>
|
76 |
-
<p>' . $this->core->template_tags_general( __( 'A hook can relate to a specific instance or several instances. You can disable specific instances in a hook by awarding zero %_plural%.', 'mycred' ) ) . '</p>'
|
77 |
-
) );
|
78 |
-
$screen->add_help_tab( array(
|
79 |
-
'id' => 'mycred-hooks-others',
|
80 |
-
'title' => __( 'Third Party Plugins', 'mycred' ),
|
81 |
-
'content' => '
|
82 |
-
<p>' . __( 'myCRED supports several third party plugins by default. These hooks are only available / visible if the plugin has been installed and enabled.', 'mycred' ) . '</p>
|
83 |
-
<p><strong>' . __( 'Supported Plugins:', 'mycred' ) . '</strong></p>
|
84 |
-
<ul>
|
85 |
-
<li><a href="http://wordpress.org/extend/plugins/contact-form-7/" target="_blank">Contact Form 7</a></li>
|
86 |
-
<li><a href="http://wordpress.org/extend/plugins/invite-anyone/" target="_blank">Invite Anyone Plugin</a></li>
|
87 |
-
</ul>'
|
88 |
-
) );
|
89 |
-
$screen->add_help_tab( array(
|
90 |
-
'id' => 'mycred-hooks-template-tags',
|
91 |
-
'title' => __( 'Template Tags', 'mycred' ),
|
92 |
-
'content' => '
|
93 |
-
<p><strong>' . __( 'General:', 'mycred' ) . '</strong></p>
|
94 |
-
<p><code>%singular%</code> ' . $this->core->template_tags_general( __( 'Singular %plural% Name.', 'mycred' ) ) . '<br />
|
95 |
-
<code>%_singular%</code> ' . $this->core->template_tags_general( __( 'Singular %plural% Name in lowercase.', 'mycred' ) ) . '<br />
|
96 |
-
<code>%plural%</code> ' . $this->core->template_tags_general( __( 'Plural %plural% Name.', 'mycred' ) ) . '<br />
|
97 |
-
<code>%_plural%</code> ' . $this->core->template_tags_general( __( 'Plural %plural% Name in lowercase.', 'mycred' ) ) . '<br />
|
98 |
-
<code>%login_url%</code> ' . __( 'The login URL without redirection.', 'mycred' ) . '<br />
|
99 |
-
<code>%login_url_here%</code> ' . __( 'The login URL with redirection to current page.', 'mycred' ) . '</p>
|
100 |
-
<p><strong>' . __( 'Post:', 'mycred' ) . '</strong></p>
|
101 |
-
<p><code>%post_title%</code> ' . __( 'The posts title.', 'mycred' ) . '<br />
|
102 |
-
<code>%post_url%</code> ' . __( 'The posts URL address.', 'mycred' ) . '<br />
|
103 |
-
<code>%post_type%</code> ' . __( 'The post type.', 'mycred' ) . '<br />
|
104 |
-
<code>%link_with_title%</code> ' . __( 'The posts permalink with the post title as title.', 'mycred' ) . '</p>
|
105 |
-
<p><strong>' . __( 'User:', 'mycred' ) . '</strong></p>
|
106 |
-
<p><code>%user_id%</code> ' . __( 'The users ID.', 'mycred' ) . '<br />
|
107 |
-
<code>%user_name%</code> ' . __( 'The users "username".', 'mycred' ) . '<br />
|
108 |
-
<code>%user_name_en%</code> ' . __( 'The users "username" URL encoded.', 'mycred' ) . '<br />
|
109 |
-
<code>%display_name%</code> ' . __( 'The users display name.', 'mycred' ) . '<br />
|
110 |
-
<code>%user_profile_url%</code> ' . __( 'The users profile URL.', 'mycred' ) . '<br />
|
111 |
-
<code>%user_profile_link%</code> ' . __( 'The users profile link with the display name as title.', 'mycred' ) . '</p>
|
112 |
-
<p><strong>' . __( 'Comment:', 'mycred' ) . '</strong></p>
|
113 |
-
<p><code>%comment_id%</code> ' . __( 'The comment ID.', 'mycred' ) . '<br />
|
114 |
-
<code>%c_post_id%</code> ' . __( 'The post id where the comment was made.', 'mycred' ) . '<br />
|
115 |
-
<code>%c_post_title%</code> ' . __( 'The post title where the comment was made.', 'mycred' ) . '<br />
|
116 |
-
<code>%c_post_url%</code> ' . __( 'The post URL address where the comment was made.', 'mycred' ) . '<br />
|
117 |
-
<code>%c_link_with_title%</code> ' . __( 'Link to the post where the comment was made.', 'mycred' ) . '</p>'
|
118 |
-
) );
|
119 |
-
}
|
120 |
-
|
121 |
-
/**
|
122 |
-
* Widgets Help
|
123 |
-
* @since 0.1
|
124 |
-
* @version 1.0
|
125 |
-
*/
|
126 |
-
public function widgets( $screen ) {
|
127 |
-
$screen->add_help_tab( array(
|
128 |
-
'id' => 'mycred-balance',
|
129 |
-
'title' => __( 'myCRED Balance Template Tags', 'mycred' ),
|
130 |
-
'content' => '
|
131 |
-
<h3>' . __( 'Available Template Tags', 'mycred' ) . '</h3>
|
132 |
-
<p><strong>' . __( 'Layout:', 'mycred' ) . '</strong></p>
|
133 |
-
<p><code>%cred%</code> ' . __( 'Balance amount in plain format.', 'mycred' ) . '<br />
|
134 |
-
<code>%cred_f%</code> ' . __( 'Balance amount formatted with prefix and/or suffix.', 'mycred' ) . '</p>
|
135 |
-
<p><strong>' . __( 'Rank Format:', 'mycred' ) . '</strong></p>
|
136 |
-
<p><code>%ranking%</code> ' . __( 'The users ranking. Was "%rank%" before version 1.1', 'mycred' ) . '</p>
|
137 |
-
<p><strong>' . __( 'History Title:', 'mycred' ) . '</strong></p>
|
138 |
-
<p><code>%singular%</code> ' . __( 'or', 'mycred' ) . ' <code>%_singular%</code> ' . $this->core->template_tags_general( __( 'Singular %plural% Name.', 'mycred' ) ) . '<br />
|
139 |
-
<code>%plural%</code> ' . __( 'or', 'mycred' ) . ' <code>%_plural%</code> ' . $this->core->template_tags_general( __( 'Plural %plural% Name.', 'mycred' ) ) . '</p>
|
140 |
-
<p><strong>' . __( 'Row Layout:', 'mycred' ) . '</strong></p>
|
141 |
-
<p><code>%cred%</code> ' . __( 'Balance amount in plain format.', 'mycred' ) . '<br />
|
142 |
-
<code>%cred_f%</code> ' . __( 'Balance amount formatted with prefix and/or suffix.', 'mycred' ) . '<br />
|
143 |
-
<code>%singular%</code> ' . __( 'or', 'mycred' ) . ' <code>%_singular%</code> ' . $this->core->template_tags_general(__( 'Singular %plural% Name.', 'mycred' ) ) . '<br />
|
144 |
-
<code>%plural%</code> ' . __( 'or', 'mycred' ) . ' <code>%_plural%</code> ' . $this->core->template_tags_general(__( 'Plural %plural% Name.', 'mycred' ) ) . '<br />
|
145 |
-
<code>%date%</code> ' . __( 'Log entry date.', 'mycred' ) . '<br />
|
146 |
-
<code>%entry%</code> ' . __( 'The log entry.', 'mycred' ) . '</p>
|
147 |
-
<p><strong>' . __( 'Message:', 'mycred' ) . '</strong></p>
|
148 |
-
<p><code>%login_url%</code> ' . __( 'The login URL without redirection.', 'mycred' ) . '<br />
|
149 |
-
<code>%login_url_here%</code> ' . __( 'The login URL with redirection to current page.', 'mycred' ) . '</p>'
|
150 |
-
) );
|
151 |
-
$screen->add_help_tab( array(
|
152 |
-
'id' => 'mycred-list',
|
153 |
-
'title' => __('myCRED List Template Tags'),
|
154 |
-
'content' => '
|
155 |
-
<h3>' . __( 'Available Template Tags', 'mycred' ) . '</h3>
|
156 |
-
<p><strong>' . __( 'Row Layout:', 'mycred' ) . '</strong></p>
|
157 |
-
<p><code>%ranking%</code> ' . __( 'The users ranking. Was "%rank%" before version 1.1', 'mycred' ) . '<br />
|
158 |
-
<code>%cred%</code> ' . __( 'Balance amount in plain format.', 'mycred' ) . '<br />
|
159 |
-
<code>%cred_f%</code> ' . __( 'Balance amount formatted with prefix and/or suffix.', 'mycred' ) . '<br />
|
160 |
-
<code>%singular%</code> ' . __( 'or', 'mycred' ) . ' <code>%_singular%</code> ' . $this->core->template_tags_general( __( 'Singular %plural% Name.', 'mycred' ) ) . '<br />
|
161 |
-
<code>%plural%</code> ' . __( 'or', 'mycred' ) . ' <code>%_plural%</code> ' . $this->core->template_tags_general( __( 'Plural %plural% Name.', 'mycred' ) ) . '<br />
|
162 |
-
<code>%date%</code> ' . __( 'Log entry date.', 'mycred' ) . '<br />
|
163 |
-
<code>%entry%</code> ' . __( 'The log entry.', 'mycred' ) . '<br />
|
164 |
-
<code>%display_name%</code> ' . __( 'Users display name.', 'mycred' ) . '<br />
|
165 |
-
<code>%user_profile_url%</code> ' . __( 'Users profile URL.', 'mycred' ) . '<br />
|
166 |
-
<code>%user_name%</code> ' . __( 'Users "username".', 'mycred' ) . '<br />
|
167 |
-
<code>%user_name_en%</code> ' . __( 'Users "username" URL encoded.', 'mycred' ) . '<br />
|
168 |
-
<code>%user_profile_link%</code> ' . __( 'Link to users profile with their display name as title.', 'mycred' ) . '</p>'
|
169 |
-
) );
|
170 |
-
}
|
171 |
-
|
172 |
-
/**
|
173 |
-
* Edit Users / Profile Help
|
174 |
-
* @since 0.1
|
175 |
-
* @version 1.0
|
176 |
-
*/
|
177 |
-
public function users( $screen ) {
|
178 |
-
$screen->add_help_tab( array(
|
179 |
-
'id' => 'mycred-users',
|
180 |
-
'title' => $this->core->template_tags_general( __( 'Editing %plural%', 'mycred' ) ),
|
181 |
-
'content' => '
|
182 |
-
<p>' . $this->core->template_tags_general( __( 'You can adjust this users %_plural% by giving a positive or negative amount and a log description. Remember that plugin and point editors will always be able to adjust their own balance.', 'mycred' ) ) . '</p>
|
183 |
-
<p>' . __( 'If the option to edit a users balance is missing the user is set to be excluded from using myCRED.', 'mycred' ) . '</p>'
|
184 |
-
) );
|
185 |
-
}
|
186 |
-
|
187 |
-
/**
|
188 |
-
* myCRED Settings Page Help
|
189 |
-
* @since 0.1
|
190 |
-
* @version 1.0
|
191 |
-
*/
|
192 |
-
public function general_page( $screen ) {
|
193 |
-
$screen->add_help_tab( array(
|
194 |
-
'id' => 'mycred-settings',
|
195 |
-
'title' => __( 'Core', 'mycred' ),
|
196 |
-
'content' => '
|
197 |
-
<p>' . $this->core->template_tags_general( __( 'On this page, you can edit all myCRED settings.', 'mycred' ) ) . '</p>
|
198 |
-
<p><strong>' . __( 'Core Settings', 'mycred' ) . '</strong></p>
|
199 |
-
<p>' . __( 'Here you can name your installation along with setting your layout and format. You can use any name as long as you set both the singular and plural format and you can change the name at any time.', 'mycred' ) . '</p>'
|
200 |
-
) );
|
201 |
-
}
|
202 |
-
}
|
203 |
-
}
|
204 |
-
|
205 |
-
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
modules/mycred-module-hooks.php
CHANGED
@@ -1,17 +1,12 @@
|
|
1 |
<?php
|
2 |
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
-
// Subscription Related Hooks
|
4 |
-
include_once( myCRED_MODULES_DIR . 'mycred-module-subscriptions.php' );
|
5 |
-
// Third-Party Plugin Hooks
|
6 |
-
require_once( myCRED_MODULES_DIR . 'mycred-module-plugins.php' );
|
7 |
/**
|
8 |
* myCRED_Hooks class
|
9 |
* @since 0.1
|
10 |
-
* @version 1.
|
11 |
*/
|
12 |
if ( !class_exists( 'myCRED_Hooks' ) ) {
|
13 |
class myCRED_Hooks extends myCRED_Module {
|
14 |
-
|
15 |
/**
|
16 |
* Construct
|
17 |
*/
|
@@ -84,6 +79,7 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
84 |
* @version 1.1
|
85 |
*/
|
86 |
public function get( $save = false ) {
|
|
|
87 |
// Registrations
|
88 |
$installed['registration'] = array(
|
89 |
'title' => __( '%plural% for registrations', 'mycred' ),
|
@@ -125,88 +121,6 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
125 |
'description' => __( 'Award %_plural% to users who watches videos embedded using the [mycred_video] shortcode.', 'mycred' ),
|
126 |
'callback' => array( 'myCRED_Hook_Video_Views' )
|
127 |
);
|
128 |
-
|
129 |
-
// Prep for bbPress
|
130 |
-
if ( class_exists( 'bbPress' ) ) {
|
131 |
-
$installed['hook_bbpress'] = array(
|
132 |
-
'title' => __( 'bbPress' ),
|
133 |
-
'description' => __( 'Awards %_plural% for bbPress actions.', 'mycred' ),
|
134 |
-
'callback' => array( 'myCRED_bbPress' )
|
135 |
-
);
|
136 |
-
}
|
137 |
-
|
138 |
-
// Prep for Invite Anyone Plugin
|
139 |
-
if ( function_exists( 'invite_anyone_init' ) ) {
|
140 |
-
$installed['invite_anyone'] = array(
|
141 |
-
'title' => __( 'Invite Anyone Plugin', 'mycred' ),
|
142 |
-
'description' => __( 'Awards %_plural% for sending invitations and/or %_plural% if the invite is accepted.', 'mycred' ),
|
143 |
-
'callback' => array( 'myCRED_Invite_Anyone' )
|
144 |
-
);
|
145 |
-
}
|
146 |
-
|
147 |
-
// Prep for Contact Form 7
|
148 |
-
if ( function_exists( 'wpcf7' ) ) {
|
149 |
-
$installed['contact_form7'] = array(
|
150 |
-
'title' => __( 'Contact Form 7 Form Submissions', 'mycred' ),
|
151 |
-
'description' => __( 'Awards %_plural% for successful form submissions (by logged in users).', 'mycred' ),
|
152 |
-
'callback' => array( 'myCRED_Contact_Form7' )
|
153 |
-
);
|
154 |
-
}
|
155 |
-
|
156 |
-
// Prep for Jetpack
|
157 |
-
if ( class_exists( 'Jetpack' ) ) {
|
158 |
-
$installed['jetpack'] = array(
|
159 |
-
'title' => __( 'Jetpack Subscriptions', 'mycred' ),
|
160 |
-
'description' => __( 'Awards %_plural% for users signing up for site or comment updates using Jetpack.', 'mycred' ),
|
161 |
-
'callback' => array( 'myCRED_Hook_Jetpack' )
|
162 |
-
);
|
163 |
-
}
|
164 |
-
|
165 |
-
// Prep for BadgeOS
|
166 |
-
if ( class_exists( 'BadgeOS' ) ) {
|
167 |
-
$installed['badgeos'] = array(
|
168 |
-
'title' => __( 'BadgeOS', 'mycred' ),
|
169 |
-
'description' => __( 'Default settings for each BadgeOS Achievement type. These settings may be overridden for individual achievement type.', 'mycred' ),
|
170 |
-
'callback' => array( 'myCRED_Hook_BadgeOS' )
|
171 |
-
);
|
172 |
-
}
|
173 |
-
|
174 |
-
// Prep for WP-Polls
|
175 |
-
if ( function_exists( 'vote_poll' ) ) {
|
176 |
-
$installed['wppolls'] = array(
|
177 |
-
'title' => __( 'WP-Polls', 'mycred' ),
|
178 |
-
'description' => __( 'Awards %_plural% for users voting in polls.', 'mycred' ),
|
179 |
-
'callback' => array( 'myCRED_Hook_WPPolls' )
|
180 |
-
);
|
181 |
-
}
|
182 |
-
|
183 |
-
// WP Favorite Posts
|
184 |
-
if ( function_exists( 'wp_favorite_posts' ) ) {
|
185 |
-
$installed['wpfavorite'] = array(
|
186 |
-
'title' => __( 'WP Favorite Posts', 'mycred' ),
|
187 |
-
'description' => __( 'Awards %_plural% for users adding posts to their favorites.', 'mycred' ),
|
188 |
-
'callback' => array( 'myCRED_Hook_WPFavorite' )
|
189 |
-
);
|
190 |
-
}
|
191 |
-
|
192 |
-
// Events Manager
|
193 |
-
if ( function_exists( 'bp_em_init' ) ) {
|
194 |
-
$installed['eventsmanager'] = array(
|
195 |
-
'title' => __( 'Events Manager', 'mycred' ),
|
196 |
-
'description' => __( 'Awards %_plural% for users attending events.', 'mycred' ),
|
197 |
-
'callback' => array( 'myCRED_Hook_Events_Manager' )
|
198 |
-
);
|
199 |
-
}
|
200 |
-
|
201 |
-
// GD Star
|
202 |
-
if ( defined( 'STARRATING_DEBUG' ) ) {
|
203 |
-
$installed['gdstars'] = array(
|
204 |
-
'title' => __( 'GD Star Rating', 'mycred' ),
|
205 |
-
'description' => __( 'Awards %_plural% for users rate items using the GD Star Rating plugin.', 'mycred' ),
|
206 |
-
'callback' => array( 'myCRED_Hook_GD_Star_Rating' )
|
207 |
-
);
|
208 |
-
}
|
209 |
-
|
210 |
$installed = apply_filters( 'mycred_setup_hooks', $installed );
|
211 |
|
212 |
if ( $save === true && $this->core->can_edit_plugin() ) {
|
@@ -215,7 +129,10 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
215 |
'installed' => $installed,
|
216 |
'hook_prefs' => $this->hook_prefs
|
217 |
);
|
218 |
-
|
|
|
|
|
|
|
219 |
}
|
220 |
|
221 |
$this->installed = $installed;
|
@@ -232,16 +149,14 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
232 |
if ( !$this->core->can_edit_plugin( get_current_user_id() ) ) wp_die( __( 'Access Denied', 'mycred' ) );
|
233 |
|
234 |
// Get installed
|
235 |
-
$installed = $this->get( true );
|
236 |
-
|
237 |
-
// Message
|
238 |
-
if ( isset( $_GET['settings-updated'] ) && $_GET['settings-updated'] == true ) {
|
239 |
-
echo '<div class="updated settings-error"><p>' . __( 'Settings Updated', 'mycred' ) . '</p></div>';
|
240 |
-
} ?>
|
241 |
|
242 |
<div class="wrap" id="myCRED-wrap">
|
243 |
<div id="icon-myCRED" class="icon32"><br /></div>
|
244 |
<h2><?php echo apply_filters( 'mycred_label', myCRED_NAME ) . ' ' . __( 'Hooks', 'mycred' ); ?></h2>
|
|
|
|
|
|
|
245 |
<p><?php echo $this->core->template_tags_general( __( 'Hooks are instances where %_plural% are awarded or deducted from a user, depending on their actions around your website.', 'mycred' ) ); ?></p>
|
246 |
<form method="post" action="options.php">
|
247 |
<?php settings_fields( 'myCRED-hooks' ); ?>
|
@@ -251,7 +166,7 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
251 |
<?php if ( !empty( $installed ) ) {
|
252 |
foreach ( $installed as $key => $data ) { ?>
|
253 |
|
254 |
-
<h4 class="
|
255 |
<div class="body" style="display:none;">
|
256 |
<p><?php echo nl2br( $this->core->template_tags_general( $data['description'] ) ); ?></p>
|
257 |
<label class="subheader"><?php _e( 'Enable', 'mycred' ); ?></label>
|
@@ -267,7 +182,7 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
267 |
} ?>
|
268 |
|
269 |
</div>
|
270 |
-
<?php submit_button( __( 'Update Changes', 'mycred' ), 'primary large' ); ?>
|
271 |
|
272 |
</form>
|
273 |
</div>
|
@@ -278,7 +193,7 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
278 |
/**
|
279 |
* Sanititze Settings
|
280 |
* @since 0.1
|
281 |
-
* @version 1.
|
282 |
*/
|
283 |
public function sanitize_settings( $post ) {
|
284 |
// Loop though all installed hooks
|
@@ -291,23 +206,31 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
291 |
|
292 |
if ( !empty( $installed ) ) {
|
293 |
foreach ( $installed as $key => $data ) {
|
294 |
-
if ( isset( $data['callback'] ) && isset( $post['hook_prefs'][$key] ) ) {
|
295 |
// Old settings
|
296 |
-
$old_settings = $post['hook_prefs'][$key];
|
297 |
|
298 |
// New settings
|
299 |
$new_settings = $this->call( 'sanitise_preferences', $data['callback'], $old_settings );
|
300 |
|
301 |
// If something went wrong use the old settings
|
302 |
if ( empty( $new_settings ) || $new_settings === NULL || !is_array( $new_settings ) )
|
303 |
-
$new_post['hook_prefs'][$key] = $old_settings;
|
304 |
// Else we got ourselves new settings
|
305 |
else
|
306 |
-
$new_post['hook_prefs'][$key] = $new_settings;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
307 |
}
|
308 |
}
|
309 |
}
|
310 |
-
|
|
|
311 |
return $new_post;
|
312 |
}
|
313 |
}
|
@@ -320,7 +243,6 @@ if ( !class_exists( 'myCRED_Hooks' ) ) {
|
|
320 |
*/
|
321 |
if ( !class_exists( 'myCRED_Hook_Registration' ) ) {
|
322 |
class myCRED_Hook_Registration extends myCRED_Hook {
|
323 |
-
|
324 |
/**
|
325 |
* Construct
|
326 |
*/
|
@@ -397,7 +319,6 @@ if ( !class_exists( 'myCRED_Hook_Registration' ) ) {
|
|
397 |
*/
|
398 |
if ( !class_exists( 'myCRED_Hook_Logging_In' ) ) {
|
399 |
class myCRED_Hook_Logging_In extends myCRED_Hook {
|
400 |
-
|
401 |
/**
|
402 |
* Construct
|
403 |
*/
|
@@ -542,7 +463,6 @@ if ( !class_exists( 'myCRED_Hook_Logging_In' ) ) {
|
|
542 |
*/
|
543 |
if ( !class_exists( 'myCRED_Hook_Publishing_Content' ) ) {
|
544 |
class myCRED_Hook_Publishing_Content extends myCRED_Hook {
|
545 |
-
|
546 |
/**
|
547 |
* Construct
|
548 |
*/
|
@@ -574,7 +494,7 @@ if ( !class_exists( 'myCRED_Hook_Publishing_Content' ) ) {
|
|
574 |
/**
|
575 |
* Publish Content Hook
|
576 |
* @since 0.1
|
577 |
-
* @version 1.0
|
578 |
*/
|
579 |
public function publishing_content( $new_status, $old_status, $post ) {
|
580 |
$user_id = $post->post_author;
|
@@ -691,19 +611,6 @@ if ( !class_exists( 'myCRED_Hook_Publishing_Content' ) ) {
|
|
691 |
protected function include_post_type( $post_type ) {
|
692 |
// Exclude Core
|
693 |
$excludes = array( 'post', 'page' );
|
694 |
-
|
695 |
-
// Prep for bbPress
|
696 |
-
if ( class_exists( 'bbPress' ) ) {
|
697 |
-
$excludes[] = bbp_get_forum_post_type();
|
698 |
-
$excludes[] = bbp_get_topic_post_type();
|
699 |
-
$excludes[] = bbp_get_reply_post_type();
|
700 |
-
}
|
701 |
-
|
702 |
-
// Prep for BadgeOS
|
703 |
-
if ( function_exists( 'badgeos_get_achievement_types_slugs' ) ) {
|
704 |
-
$excludes = array_merge( $excludes, badgeos_get_achievement_types_slugs() );
|
705 |
-
}
|
706 |
-
|
707 |
if ( in_array( $post_type, apply_filters( 'mycred_post_type_excludes', $excludes ) ) ) return false;
|
708 |
return true;
|
709 |
}
|
@@ -713,11 +620,10 @@ if ( !class_exists( 'myCRED_Hook_Publishing_Content' ) ) {
|
|
713 |
/**
|
714 |
* Hook for comments
|
715 |
* @since 0.1
|
716 |
-
* @version 1.
|
717 |
*/
|
718 |
if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
719 |
class myCRED_Hook_Comments extends myCRED_Hook {
|
720 |
-
|
721 |
/**
|
722 |
* Construct
|
723 |
*/
|
@@ -732,15 +638,18 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
732 |
),
|
733 |
'approved' => array(
|
734 |
'creds' => 1,
|
735 |
-
'log' => '%plural% for Approved Comment'
|
|
|
736 |
),
|
737 |
'spam' => array(
|
738 |
'creds' => '-5',
|
739 |
-
'log' => '%plural% deduction for Comment marked as SPAM'
|
|
|
740 |
),
|
741 |
'trash' => array(
|
742 |
'creds' => '-1',
|
743 |
-
'log' => '%plural% deduction for deleted / unapproved Comment'
|
|
|
744 |
)
|
745 |
)
|
746 |
), $hook_prefs );
|
@@ -755,12 +664,11 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
755 |
add_action( 'comment_post', array( $this, 'new_comment' ), 10, 2 );
|
756 |
add_action( 'transition_comment_status', array( $this, 'comment_transitions' ), 10, 3 );
|
757 |
}
|
758 |
-
|
759 |
/**
|
760 |
* New Comment
|
761 |
* If comments are approved without moderation, we apply the corresponding method
|
762 |
* or else we will wait till the appropriate instance.
|
763 |
-
*
|
764 |
* @since 0.1
|
765 |
* @version 1.1
|
766 |
*/
|
@@ -772,11 +680,11 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
772 |
elseif ( $comment_status == '1' && $this->prefs['approved'] != 0 )
|
773 |
$this->comment_transitions( 'approved', 'unapproved', $comment_id );
|
774 |
}
|
775 |
-
|
776 |
/**
|
777 |
* Comment Transitions
|
778 |
* @since 1.1.2
|
779 |
-
* @version 1.1
|
780 |
*/
|
781 |
public function comment_transitions( $new_status, $old_status, $comment ) {
|
782 |
// Passing an integer instead of an object means we need to grab the comment object ourselves
|
@@ -799,17 +707,19 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
799 |
}
|
800 |
|
801 |
$reference = '';
|
|
|
802 |
|
803 |
// Approved comments
|
804 |
if ( $this->prefs['approved']['creds'] != 0 && $new_status == 'approved' ) {
|
805 |
// New approved comment
|
806 |
if ( $old_status == 'unapproved' || $old_status == 'hold' ) {
|
807 |
-
// Enforce limits
|
808 |
-
if ( $this->user_exceeds_limit( $comment->user_id, $comment->comment_post_ID ) ) return;
|
809 |
-
|
810 |
$reference = 'approved_comment';
|
811 |
$points = $this->prefs['approved']['creds'];
|
|
|
812 |
$log = $this->prefs['approved']['log'];
|
|
|
|
|
|
|
813 |
}
|
814 |
|
815 |
// Marked as "Not Spam"
|
@@ -817,10 +727,14 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
817 |
$reference = 'approved_comment';
|
818 |
|
819 |
// Reverse points
|
820 |
-
if ( $this->prefs['spam']['creds'] < 0 )
|
821 |
$points = abs( $this->prefs['spam']['creds'] );
|
822 |
-
|
|
|
|
|
823 |
$points = $this->prefs['spam']['creds'];
|
|
|
|
|
824 |
|
825 |
$log = $this->prefs['approved']['log'];
|
826 |
}
|
@@ -829,11 +743,15 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
829 |
elseif ( $this->prefs['trash']['creds'] != 0 && $old_status == 'trash' ) {
|
830 |
$reference = 'approved_comment';
|
831 |
// Reverse points
|
832 |
-
if ( $this->prefs['trash']['creds'] < 0 )
|
833 |
$points = abs( $this->prefs['trash']['creds'] );
|
834 |
-
|
|
|
|
|
835 |
$points = $this->prefs['trash']['creds'];
|
836 |
-
|
|
|
|
|
837 |
$log = $this->prefs['approved']['log'];
|
838 |
}
|
839 |
}
|
@@ -842,39 +760,67 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
842 |
elseif ( $this->prefs['spam'] != 0 && $new_status == 'spam' ) {
|
843 |
$reference = 'spam_comment';
|
844 |
$points = $this->prefs['spam']['creds'];
|
|
|
845 |
$log = $this->prefs['spam']['log'];
|
|
|
846 |
}
|
847 |
|
848 |
// Trashed comments
|
849 |
elseif ( $this->prefs['trash'] != 0 && $new_status == 'trash' ) {
|
850 |
$reference = 'deleted_comment';
|
851 |
$points = $this->prefs['trash']['creds'];
|
|
|
852 |
$log = $this->prefs['trash']['log'];
|
|
|
853 |
}
|
854 |
|
855 |
// Unapproved comments
|
856 |
elseif ( $new_status == 'unapproved' && $old_status == 'approved' ) {
|
857 |
$reference = 'deleted_comment';
|
858 |
// Reverse points
|
859 |
-
if ( $this->prefs['approved']['creds'] < 0 )
|
860 |
$points = abs( $this->prefs['approved']['creds'] );
|
861 |
-
|
|
|
|
|
862 |
$points = $this->prefs['approved']['creds'];
|
|
|
|
|
863 |
|
864 |
$log = $this->prefs['trash']['log'];
|
|
|
865 |
}
|
866 |
|
867 |
-
if ( empty( $reference ) ) return;
|
868 |
-
|
869 |
// Execute
|
870 |
-
$
|
871 |
-
$
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
|
877 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
878 |
}
|
879 |
|
880 |
/**
|
@@ -954,37 +900,52 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
954 |
'per_day' => 0
|
955 |
); ?>
|
956 |
|
957 |
-
<label class="subheader"
|
958 |
-
<ol>
|
959 |
<li>
|
|
|
960 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'approved' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'approved' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['approved']['creds'] ); ?>" size="8" /></div>
|
961 |
</li>
|
962 |
-
<li class="empty"> </li>
|
963 |
<li>
|
|
|
|
|
|
|
|
|
|
|
964 |
<label for="<?php echo $this->field_id( array( 'approved' => 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
965 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'approved' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'approved' => 'log' ) ); ?>" value="<?php echo $prefs['approved']['log']; ?>" class="long" /></div>
|
966 |
<span class="description"><?php _e( 'Available template tags: General, Comment', 'mycred' ); ?></span>
|
967 |
</li>
|
968 |
</ol>
|
969 |
-
<label class="subheader"
|
970 |
-
<ol>
|
971 |
<li>
|
|
|
972 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'spam' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'spam' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['spam']['creds'] ); ?>" size="8" /></div>
|
973 |
</li>
|
974 |
-
<li class="empty"> </li>
|
975 |
<li>
|
|
|
|
|
|
|
|
|
|
|
976 |
<label for="<?php echo $this->field_id( array( 'spam' => 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
977 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'spam' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'spam' => 'log' ) ); ?>" value="<?php echo $prefs['spam']['log']; ?>" class="long" /></div>
|
978 |
<span class="description"><?php _e( 'Available template tags: General, Comment', 'mycred' ); ?></span>
|
979 |
</li>
|
980 |
</ol>
|
981 |
-
<label class="subheader"
|
982 |
-
<ol>
|
983 |
<li>
|
|
|
984 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'trash' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'trash' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['trash']['creds'] ); ?>" size="8" /></div>
|
985 |
</li>
|
986 |
-
<li class="empty"> </li>
|
987 |
<li>
|
|
|
|
|
|
|
|
|
|
|
988 |
<label for="<?php echo $this->field_id( array( 'trash' => 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
989 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'trash' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'trash' => 'log' ) ); ?>" value="<?php echo $prefs['trash']['log']; ?>" class="long" /></div>
|
990 |
<span class="description"><?php _e( 'Available template tags: General, Comment', 'mycred' ); ?></span>
|
@@ -1028,6 +989,7 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
1028 |
}
|
1029 |
}
|
1030 |
}
|
|
|
1031 |
/**
|
1032 |
* Hooks for Clicking on Links
|
1033 |
* @since 1.1
|
@@ -1035,7 +997,6 @@ if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
|
1035 |
*/
|
1036 |
if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
1037 |
class myCRED_Hook_Click_Links extends myCRED_Hook {
|
1038 |
-
|
1039 |
/**
|
1040 |
* Construct
|
1041 |
*/
|
@@ -1081,12 +1042,14 @@ if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
|
1081 |
/**
|
1082 |
* Parse Custom Tags in Log
|
1083 |
* @since 1.1
|
1084 |
-
* @version 1.
|
1085 |
*/
|
1086 |
public function parse_custom_tags( $content, $log_entry ) {
|
1087 |
$data = unserialize( $log_entry->data );
|
1088 |
$content = str_replace( '%url%', $data['link_url'], $content );
|
1089 |
$content = str_replace( '%id%', $data['link_id'], $content );
|
|
|
|
|
1090 |
|
1091 |
return $content;
|
1092 |
}
|
@@ -1147,7 +1110,7 @@ if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
|
1147 |
}
|
1148 |
else return false;
|
1149 |
|
1150 |
-
$sql = "SELECT id FROM
|
1151 |
$wpdb->get_results( $wpdb->prepare( $sql, $action, $user_id, $string ) );
|
1152 |
if ( $wpdb->num_rows > 0 ) return true;
|
1153 |
|
@@ -1157,7 +1120,7 @@ if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
|
1157 |
/**
|
1158 |
* AJAX Call Handler
|
1159 |
* @since 1.1
|
1160 |
-
* @version 1.
|
1161 |
*/
|
1162 |
public function ajax_call_link_points() {
|
1163 |
// We must be logged in
|
@@ -1201,9 +1164,10 @@ if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
|
1201 |
$this->prefs['log'],
|
1202 |
$ref,
|
1203 |
array(
|
1204 |
-
'ref_type'
|
1205 |
-
'link_url'
|
1206 |
-
'link_id'
|
|
|
1207 |
)
|
1208 |
);
|
1209 |
|
@@ -1214,7 +1178,7 @@ if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
|
1214 |
/**
|
1215 |
* Preference for Link Click Hook
|
1216 |
* @since 1.1
|
1217 |
-
* @version 1.0
|
1218 |
*/
|
1219 |
public function preferences() {
|
1220 |
$prefs = $this->prefs; ?>
|
@@ -1230,7 +1194,7 @@ if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
|
1230 |
<ol>
|
1231 |
<li>
|
1232 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( 'log' ); ?>" id="<?php echo $this->field_id( 'log' ); ?>" value="<?php echo $prefs['log']; ?>" class="long" /></div>
|
1233 |
-
<span class="description"><?php _e( 'Available template tags: General and custom tags: %url% or %id%.', 'mycred' ); ?></span>
|
1234 |
</li>
|
1235 |
</ol>
|
1236 |
<label class="subheader"><?php _e( 'Limits', 'mycred' ); ?></label>
|
@@ -1255,7 +1219,6 @@ if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
|
1255 |
*/
|
1256 |
if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
1257 |
class myCRED_Hook_Video_Views extends myCRED_Hook {
|
1258 |
-
|
1259 |
/**
|
1260 |
* Construct
|
1261 |
*/
|
@@ -1279,7 +1242,6 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1279 |
*/
|
1280 |
public function run() {
|
1281 |
add_action( 'mycred_front_enqueue', array( $this, 'register_script' ) );
|
1282 |
-
|
1283 |
add_shortcode( 'mycred_video', 'mycred_render_shortcode_video' );
|
1284 |
add_action( 'wp_ajax_mycred-video-points', array( $this, 'ajax_call_video_points' ) );
|
1285 |
}
|
@@ -1323,32 +1285,32 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1323 |
|
1324 |
// Security
|
1325 |
check_ajax_referer( 'mycred-video-points', 'token' );
|
1326 |
-
|
1327 |
$award = false;
|
1328 |
$status = 'silence';
|
1329 |
-
|
1330 |
// Check for amount override
|
1331 |
if ( isset( $_POST['amount'] ) && $_POST['amount'] != $this->prefs['creds'] )
|
1332 |
$amount = $this->core->number( $_POST['amount'] );
|
1333 |
else
|
1334 |
$amount = $this->prefs['creds'];
|
1335 |
-
|
1336 |
// Check for logic override
|
1337 |
if ( isset( $_POST['logic'] ) || $_POST['logic'] != $this->prefs['logic'] )
|
1338 |
$logic = $_POST['logic'];
|
1339 |
else
|
1340 |
$logic = $this->prefs['logic'];
|
1341 |
-
|
1342 |
// Check for interval override
|
1343 |
if ( isset( $_POST['interval'] ) && !empty( $_POST['interval'] ) )
|
1344 |
$interval = abs( $_POST['interval']/1000 );
|
1345 |
else
|
1346 |
$interval = abs( $this->prefs['interval'] );
|
1347 |
-
|
1348 |
$video_id = trim( $_POST['video_id'] );
|
1349 |
$state = trim( $_POST['video_state'] );
|
1350 |
$duration = abs( $_POST['video_length'] );
|
1351 |
-
|
1352 |
$user_id = abs( $_POST['user_id'] );
|
1353 |
$watched = abs( $_POST['user_watched'] );
|
1354 |
$actions = trim( $_POST['user_actions'] );
|
@@ -1382,7 +1344,7 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1382 |
if ( !preg_match( '/22/', $actions, $matches ) || $watched >= $duration ) {
|
1383 |
if ( $state == 0 && !$this->has_entry( 'watching_video', '', $user_id, $video_id ) ) {
|
1384 |
$award = true;
|
1385 |
-
|
1386 |
// Execute
|
1387 |
$this->core->add_creds(
|
1388 |
'watching_video',
|
@@ -1392,7 +1354,7 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1392 |
'',
|
1393 |
$video_id
|
1394 |
);
|
1395 |
-
|
1396 |
$status = 'max';
|
1397 |
}
|
1398 |
}
|
@@ -1402,13 +1364,10 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1402 |
// The maximum points a video can earn you
|
1403 |
$num_intervals = floor( $duration / $interval );
|
1404 |
$max = abs( $num_intervals * $amount );
|
1405 |
-
|
1406 |
$users_log = $this->get_users_video_log( $video_id, $user_id );
|
1407 |
-
|
1408 |
// Film is playing and we just started
|
1409 |
if ( $state == 1 && $users_log === NULL ) {
|
1410 |
$award = true;
|
1411 |
-
|
1412 |
// Execute
|
1413 |
$this->core->add_creds(
|
1414 |
'watching_video',
|
@@ -1435,7 +1394,7 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1435 |
$status = 'max';
|
1436 |
}
|
1437 |
}
|
1438 |
-
|
1439 |
$data = array(
|
1440 |
'status' => $status,
|
1441 |
'video_id' => $video_id,
|
@@ -1443,25 +1402,24 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1443 |
);
|
1444 |
die( json_encode( $data ) );
|
1445 |
}
|
1446 |
-
|
1447 |
/**
|
1448 |
* Get Users Video Log
|
1449 |
* Returns the log for a given video id.
|
1450 |
* @since 1.2
|
1451 |
-
* @version 1.0
|
1452 |
*/
|
1453 |
public function get_users_video_log( $video_id, $user_id ) {
|
1454 |
global $wpdb;
|
1455 |
-
|
1456 |
-
$
|
1457 |
-
$sql = "SELECT * FROM $db WHERE user_id = %d AND data = %s";
|
1458 |
return $wpdb->get_row( $wpdb->prepare( $sql, $user_id, $video_id ) );
|
1459 |
}
|
1460 |
-
|
1461 |
/**
|
1462 |
* Update Points
|
1463 |
* @since 1.2
|
1464 |
-
* @version 1.
|
1465 |
*/
|
1466 |
public function update_creds( $row_id, $user_id, $amount ) {
|
1467 |
// Prep format
|
@@ -1469,7 +1427,7 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1469 |
$decimals = $this->core->core['format']['decimals'];
|
1470 |
else
|
1471 |
$decimals = $this->core->format['decimals'];
|
1472 |
-
|
1473 |
if ( $decimals > 0 )
|
1474 |
$format = '%f';
|
1475 |
else
|
@@ -1478,16 +1436,15 @@ if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
|
1478 |
$amount = $this->core->number( $amount );
|
1479 |
|
1480 |
global $wpdb;
|
1481 |
-
|
1482 |
$wpdb->update(
|
1483 |
-
$
|
1484 |
array( 'creds' => $amount ),
|
1485 |
-
array( 'ID'
|
1486 |
array( $format ),
|
1487 |
array( '%d' )
|
1488 |
);
|
1489 |
}
|
1490 |
-
|
1491 |
/**
|
1492 |
* Preference for Viewing Videos
|
1493 |
* @since 1.2
|
1 |
<?php
|
2 |
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
|
|
|
|
|
|
|
3 |
/**
|
4 |
* myCRED_Hooks class
|
5 |
* @since 0.1
|
6 |
+
* @version 1.2
|
7 |
*/
|
8 |
if ( !class_exists( 'myCRED_Hooks' ) ) {
|
9 |
class myCRED_Hooks extends myCRED_Module {
|
|
|
10 |
/**
|
11 |
* Construct
|
12 |
*/
|
79 |
* @version 1.1
|
80 |
*/
|
81 |
public function get( $save = false ) {
|
82 |
+
$installed = array();
|
83 |
// Registrations
|
84 |
$installed['registration'] = array(
|
85 |
'title' => __( '%plural% for registrations', 'mycred' ),
|
121 |
'description' => __( 'Award %_plural% to users who watches videos embedded using the [mycred_video] shortcode.', 'mycred' ),
|
122 |
'callback' => array( 'myCRED_Hook_Video_Views' )
|
123 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
124 |
$installed = apply_filters( 'mycred_setup_hooks', $installed );
|
125 |
|
126 |
if ( $save === true && $this->core->can_edit_plugin() ) {
|
129 |
'installed' => $installed,
|
130 |
'hook_prefs' => $this->hook_prefs
|
131 |
);
|
132 |
+
if ( mycred_override_settings() )
|
133 |
+
update_site_option( 1, 'mycred_pref_hooks', $new_data );
|
134 |
+
else
|
135 |
+
update_site_option( $GLOBALS['blog_id'], 'mycred_pref_hooks', $new_data );
|
136 |
}
|
137 |
|
138 |
$this->installed = $installed;
|
149 |
if ( !$this->core->can_edit_plugin( get_current_user_id() ) ) wp_die( __( 'Access Denied', 'mycred' ) );
|
150 |
|
151 |
// Get installed
|
152 |
+
$installed = $this->get( true ); ?>
|
|
|
|
|
|
|
|
|
|
|
153 |
|
154 |
<div class="wrap" id="myCRED-wrap">
|
155 |
<div id="icon-myCRED" class="icon32"><br /></div>
|
156 |
<h2><?php echo apply_filters( 'mycred_label', myCRED_NAME ) . ' ' . __( 'Hooks', 'mycred' ); ?></h2>
|
157 |
+
<?php if ( isset( $_GET['settings-updated'] ) && $_GET['settings-updated'] == true )
|
158 |
+
echo '<div class="updated settings-error"><p>' . __( 'Settings Updated', 'mycred' ) . '</p></div>'; ?>
|
159 |
+
|
160 |
<p><?php echo $this->core->template_tags_general( __( 'Hooks are instances where %_plural% are awarded or deducted from a user, depending on their actions around your website.', 'mycred' ) ); ?></p>
|
161 |
<form method="post" action="options.php">
|
162 |
<?php settings_fields( 'myCRED-hooks' ); ?>
|
166 |
<?php if ( !empty( $installed ) ) {
|
167 |
foreach ( $installed as $key => $data ) { ?>
|
168 |
|
169 |
+
<h4><div class="icon icon-<?php if ( $this->is_active( $key ) ) echo 'active'; else echo 'inactive'; echo ' ' . $key; ?>"></div><label><?php echo $this->core->template_tags_general( $data['title'] ); ?></label></h4>
|
170 |
<div class="body" style="display:none;">
|
171 |
<p><?php echo nl2br( $this->core->template_tags_general( $data['description'] ) ); ?></p>
|
172 |
<label class="subheader"><?php _e( 'Enable', 'mycred' ); ?></label>
|
182 |
} ?>
|
183 |
|
184 |
</div>
|
185 |
+
<?php submit_button( __( 'Update Changes', 'mycred' ), 'primary large', 'submit', false ); ?>
|
186 |
|
187 |
</form>
|
188 |
</div>
|
193 |
/**
|
194 |
* Sanititze Settings
|
195 |
* @since 0.1
|
196 |
+
* @version 1.2
|
197 |
*/
|
198 |
public function sanitize_settings( $post ) {
|
199 |
// Loop though all installed hooks
|
206 |
|
207 |
if ( !empty( $installed ) ) {
|
208 |
foreach ( $installed as $key => $data ) {
|
209 |
+
if ( isset( $data['callback'] ) && isset( $post['hook_prefs'][ $key ] ) ) {
|
210 |
// Old settings
|
211 |
+
$old_settings = $post['hook_prefs'][ $key ];
|
212 |
|
213 |
// New settings
|
214 |
$new_settings = $this->call( 'sanitise_preferences', $data['callback'], $old_settings );
|
215 |
|
216 |
// If something went wrong use the old settings
|
217 |
if ( empty( $new_settings ) || $new_settings === NULL || !is_array( $new_settings ) )
|
218 |
+
$new_post['hook_prefs'][ $key ] = $old_settings;
|
219 |
// Else we got ourselves new settings
|
220 |
else
|
221 |
+
$new_post['hook_prefs'][ $key ] = $new_settings;
|
222 |
+
|
223 |
+
// Handle de-activation
|
224 |
+
if ( !isset( $this->active ) ) continue;
|
225 |
+
if ( in_array( $key, (array) $this->active ) && !in_array( $key, $new_post['active'] ) )
|
226 |
+
$this->call( 'deactivate', $data['callback'], $new_post['hook_prefs'][ $key ] );
|
227 |
+
|
228 |
+
// Next item
|
229 |
}
|
230 |
}
|
231 |
}
|
232 |
+
|
233 |
+
$installed = NULL;
|
234 |
return $new_post;
|
235 |
}
|
236 |
}
|
243 |
*/
|
244 |
if ( !class_exists( 'myCRED_Hook_Registration' ) ) {
|
245 |
class myCRED_Hook_Registration extends myCRED_Hook {
|
|
|
246 |
/**
|
247 |
* Construct
|
248 |
*/
|
319 |
*/
|
320 |
if ( !class_exists( 'myCRED_Hook_Logging_In' ) ) {
|
321 |
class myCRED_Hook_Logging_In extends myCRED_Hook {
|
|
|
322 |
/**
|
323 |
* Construct
|
324 |
*/
|
463 |
*/
|
464 |
if ( !class_exists( 'myCRED_Hook_Publishing_Content' ) ) {
|
465 |
class myCRED_Hook_Publishing_Content extends myCRED_Hook {
|
|
|
466 |
/**
|
467 |
* Construct
|
468 |
*/
|
494 |
/**
|
495 |
* Publish Content Hook
|
496 |
* @since 0.1
|
497 |
+
* @version 1.0
|
498 |
*/
|
499 |
public function publishing_content( $new_status, $old_status, $post ) {
|
500 |
$user_id = $post->post_author;
|
611 |
protected function include_post_type( $post_type ) {
|
612 |
// Exclude Core
|
613 |
$excludes = array( 'post', 'page' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
614 |
if ( in_array( $post_type, apply_filters( 'mycred_post_type_excludes', $excludes ) ) ) return false;
|
615 |
return true;
|
616 |
}
|
620 |
/**
|
621 |
* Hook for comments
|
622 |
* @since 0.1
|
623 |
+
* @version 1.1
|
624 |
*/
|
625 |
if ( !class_exists( 'myCRED_Hook_Comments' ) ) {
|
626 |
class myCRED_Hook_Comments extends myCRED_Hook {
|
|
|
627 |
/**
|
628 |
* Construct
|
629 |
*/
|
638 |
),
|
639 |
'approved' => array(
|
640 |
'creds' => 1,
|
641 |
+
'log' => '%plural% for Approved Comment',
|
642 |
+
'author' => 0
|
643 |
),
|
644 |
'spam' => array(
|
645 |
'creds' => '-5',
|
646 |
+
'log' => '%plural% deduction for Comment marked as SPAM',
|
647 |
+
'author' => 0
|
648 |
),
|
649 |
'trash' => array(
|
650 |
'creds' => '-1',
|
651 |
+
'log' => '%plural% deduction for deleted / unapproved Comment',
|
652 |
+
'author' => 0
|
653 |
)
|
654 |
)
|
655 |
), $hook_prefs );
|
664 |
add_action( 'comment_post', array( $this, 'new_comment' ), 10, 2 );
|
665 |
add_action( 'transition_comment_status', array( $this, 'comment_transitions' ), 10, 3 );
|
666 |
}
|
667 |
+
|
668 |
/**
|
669 |
* New Comment
|
670 |
* If comments are approved without moderation, we apply the corresponding method
|
671 |
* or else we will wait till the appropriate instance.
|
|
|
672 |
* @since 0.1
|
673 |
* @version 1.1
|
674 |
*/
|
680 |
elseif ( $comment_status == '1' && $this->prefs['approved'] != 0 )
|
681 |
$this->comment_transitions( 'approved', 'unapproved', $comment_id );
|
682 |
}
|
683 |
+
|
684 |
/**
|
685 |
* Comment Transitions
|
686 |
* @since 1.1.2
|
687 |
+
* @version 1.2.1
|
688 |
*/
|
689 |
public function comment_transitions( $new_status, $old_status, $comment ) {
|
690 |
// Passing an integer instead of an object means we need to grab the comment object ourselves
|
707 |
}
|
708 |
|
709 |
$reference = '';
|
710 |
+
$instance = 'approved';
|
711 |
|
712 |
// Approved comments
|
713 |
if ( $this->prefs['approved']['creds'] != 0 && $new_status == 'approved' ) {
|
714 |
// New approved comment
|
715 |
if ( $old_status == 'unapproved' || $old_status == 'hold' ) {
|
|
|
|
|
|
|
716 |
$reference = 'approved_comment';
|
717 |
$points = $this->prefs['approved']['creds'];
|
718 |
+
$points_author = $this->prefs['approved']['author'];
|
719 |
$log = $this->prefs['approved']['log'];
|
720 |
+
|
721 |
+
if ( $this->user_exceeds_limit( $comment->user_id, $comment->comment_post_ID ) )
|
722 |
+
$points = 0;
|
723 |
}
|
724 |
|
725 |
// Marked as "Not Spam"
|
727 |
$reference = 'approved_comment';
|
728 |
|
729 |
// Reverse points
|
730 |
+
if ( $this->prefs['spam']['creds'] < 0 ) {
|
731 |
$points = abs( $this->prefs['spam']['creds'] );
|
732 |
+
$points_author = abs( $this->prefs['spam']['author'] );
|
733 |
+
}
|
734 |
+
else {
|
735 |
$points = $this->prefs['spam']['creds'];
|
736 |
+
$points_author = $this->prefs['spam']['author'];
|
737 |
+
}
|
738 |
|
739 |
$log = $this->prefs['approved']['log'];
|
740 |
}
|
743 |
elseif ( $this->prefs['trash']['creds'] != 0 && $old_status == 'trash' ) {
|
744 |
$reference = 'approved_comment';
|
745 |
// Reverse points
|
746 |
+
if ( $this->prefs['trash']['creds'] < 0 ) {
|
747 |
$points = abs( $this->prefs['trash']['creds'] );
|
748 |
+
$points_author = abs( $this->prefs['trash']['author'] );
|
749 |
+
}
|
750 |
+
else {
|
751 |
$points = $this->prefs['trash']['creds'];
|
752 |
+
$points_author = $this->prefs['trash']['author'];
|
753 |
+
}
|
754 |
+
|
755 |
$log = $this->prefs['approved']['log'];
|
756 |
}
|
757 |
}
|
760 |
elseif ( $this->prefs['spam'] != 0 && $new_status == 'spam' ) {
|
761 |
$reference = 'spam_comment';
|
762 |
$points = $this->prefs['spam']['creds'];
|
763 |
+
$points_author = $this->prefs['spam']['author'];
|
764 |
$log = $this->prefs['spam']['log'];
|
765 |
+
$instance = 'spam';
|
766 |
}
|
767 |
|
768 |
// Trashed comments
|
769 |
elseif ( $this->prefs['trash'] != 0 && $new_status == 'trash' ) {
|
770 |
$reference = 'deleted_comment';
|
771 |
$points = $this->prefs['trash']['creds'];
|
772 |
+
$points_author = $this->prefs['trash']['author'];
|
773 |
$log = $this->prefs['trash']['log'];
|
774 |
+
$instance = 'trash';
|
775 |
}
|
776 |
|
777 |
// Unapproved comments
|
778 |
elseif ( $new_status == 'unapproved' && $old_status == 'approved' ) {
|
779 |
$reference = 'deleted_comment';
|
780 |
// Reverse points
|
781 |
+
if ( $this->prefs['approved']['creds'] < 0 ) {
|
782 |
$points = abs( $this->prefs['approved']['creds'] );
|
783 |
+
$points_author = abs( $this->prefs['approved']['author'] );
|
784 |
+
}
|
785 |
+
else {
|
786 |
$points = $this->prefs['approved']['creds'];
|
787 |
+
$points_author = $this->prefs['approved']['author'];
|
788 |
+
}
|
789 |
|
790 |
$log = $this->prefs['trash']['log'];
|
791 |
+
$instance = 'trash';
|
792 |
}
|
793 |
|
|
|
|
|
794 |
// Execute
|
795 |
+
if ( ! empty( $reference ) ) {
|
796 |
+
if ( $points != 0 ) {
|
797 |
+
$this->core->add_creds(
|
798 |
+
$reference,
|
799 |
+
$comment->user_id,
|
800 |
+
$points,
|
801 |
+
$log,
|
802 |
+
$comment->comment_ID,
|
803 |
+
array( 'ref_type' => 'comment' )
|
804 |
+
);
|
805 |
+
}
|
806 |
+
|
807 |
+
// Content Author
|
808 |
+
if ( $points_author != 0 ) {
|
809 |
+
// Get post author
|
810 |
+
$post = get_post( (int) $comment->comment_post_ID );
|
811 |
+
// Make sure post still exists and author is not the commenter
|
812 |
+
if ( $post !== NULL && $comment->user_id != $post->post_author ) {
|
813 |
+
$this->core->add_creds(
|
814 |
+
$reference,
|
815 |
+
$post->post_author,
|
816 |
+
$points_author,
|
817 |
+
$log,
|
818 |
+
$comment->comment_ID,
|
819 |
+
array( 'ref_type' => 'comment' )
|
820 |
+
);
|
821 |
+
}
|
822 |
+
}
|
823 |
+
}
|
824 |
}
|
825 |
|
826 |
/**
|
900 |
'per_day' => 0
|
901 |
); ?>
|
902 |
|
903 |
+
<label class="subheader"><?php _e( 'Approved Comment', 'mycred' ); ?></label>
|
904 |
+
<ol class="inline">
|
905 |
<li>
|
906 |
+
<label for="<?php echo $this->field_id( array( 'approved' => 'creds' ) ); ?>"><?php _e( 'Comment Author', 'mycred' ); ?></label>
|
907 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'approved' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'approved' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['approved']['creds'] ); ?>" size="8" /></div>
|
908 |
</li>
|
|
|
909 |
<li>
|
910 |
+
<label for="<?php echo $this->field_id( array( 'approved' => 'author' ) ); ?>"><?php _e( 'Content Author', 'mycred' ); ?></label>
|
911 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'approved' => 'author' ) ); ?>" id="<?php echo $this->field_id( array( 'approved' => 'author' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['approved']['author'] ); ?>" size="8" /></div>
|
912 |
+
</li>
|
913 |
+
<li class="block empty"> </li>
|
914 |
+
<li class="block">
|
915 |
<label for="<?php echo $this->field_id( array( 'approved' => 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
916 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'approved' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'approved' => 'log' ) ); ?>" value="<?php echo $prefs['approved']['log']; ?>" class="long" /></div>
|
917 |
<span class="description"><?php _e( 'Available template tags: General, Comment', 'mycred' ); ?></span>
|
918 |
</li>
|
919 |
</ol>
|
920 |
+
<label class="subheader"><?php _e( 'Comment Marked SPAM', 'mycred' ); ?></label>
|
921 |
+
<ol class="inline">
|
922 |
<li>
|
923 |
+
<label for="<?php echo $this->field_id( array( 'spam' => 'creds' ) ); ?>"><?php _e( 'Comment Author', 'mycred' ); ?></label>
|
924 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'spam' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'spam' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['spam']['creds'] ); ?>" size="8" /></div>
|
925 |
</li>
|
|
|
926 |
<li>
|
927 |
+
<label for="<?php echo $this->field_id( array( 'spam' => 'creds' ) ); ?>"><?php _e( 'Content Author', 'mycred' ); ?></label>
|
928 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'spam' => 'author' ) ); ?>" id="<?php echo $this->field_id( array( 'spam' => 'author' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['spam']['author'] ); ?>" size="8" /></div>
|
929 |
+
</li>
|
930 |
+
<li class="block empty"> </li>
|
931 |
+
<li class="block">
|
932 |
<label for="<?php echo $this->field_id( array( 'spam' => 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
933 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'spam' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'spam' => 'log' ) ); ?>" value="<?php echo $prefs['spam']['log']; ?>" class="long" /></div>
|
934 |
<span class="description"><?php _e( 'Available template tags: General, Comment', 'mycred' ); ?></span>
|
935 |
</li>
|
936 |
</ol>
|
937 |
+
<label class="subheader"><?php _e( 'Trashed / Unapproved Comments', 'mycred' ); ?></label>
|
938 |
+
<ol class="inline">
|
939 |
<li>
|
940 |
+
<label for="<?php echo $this->field_id( array( 'trash' => 'creds' ) ); ?>"><?php _e( 'Comment Author', 'mycred' ); ?></label>
|
941 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'trash' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'trash' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['trash']['creds'] ); ?>" size="8" /></div>
|
942 |
</li>
|
|
|
943 |
<li>
|
944 |
+
<label for="<?php echo $this->field_id( array( 'trash' => 'author' ) ); ?>"><?php _e( 'Content Author', 'mycred' ); ?></label>
|
945 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'trash' => 'author' ) ); ?>" id="<?php echo $this->field_id( array( 'trash' => 'author' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['trash']['author'] ); ?>" size="8" /></div>
|
946 |
+
</li>
|
947 |
+
<li class="block empty"> </li>
|
948 |
+
<li class="block">
|
949 |
<label for="<?php echo $this->field_id( array( 'trash' => 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
950 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'trash' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'trash' => 'log' ) ); ?>" value="<?php echo $prefs['trash']['log']; ?>" class="long" /></div>
|
951 |
<span class="description"><?php _e( 'Available template tags: General, Comment', 'mycred' ); ?></span>
|
989 |
}
|
990 |
}
|
991 |
}
|
992 |
+
|
993 |
/**
|
994 |
* Hooks for Clicking on Links
|
995 |
* @since 1.1
|
997 |
*/
|
998 |
if ( !class_exists( 'myCRED_Hook_Click_Links' ) ) {
|
999 |
class myCRED_Hook_Click_Links extends myCRED_Hook {
|
|
|
1000 |
/**
|
1001 |
* Construct
|
1002 |
*/
|
1042 |
/**
|
1043 |
* Parse Custom Tags in Log
|
1044 |
* @since 1.1
|
1045 |
+
* @version 1.1
|
1046 |
*/
|
1047 |
public function parse_custom_tags( $content, $log_entry ) {
|
1048 |
$data = unserialize( $log_entry->data );
|
1049 |
$content = str_replace( '%url%', $data['link_url'], $content );
|
1050 |
$content = str_replace( '%id%', $data['link_id'], $content );
|
1051 |
+
if ( isset( $data['link_title'] ) )
|
1052 |
+
$content = str_replace( '%title%', $data['link_title'], $content );
|
1053 |
|
1054 |
return $content;
|
1055 |
}
|
1110 |
}
|
1111 |
else return false;
|
1112 |
|
1113 |
+
$sql = "SELECT id FROM {$this->core->log_table} WHERE ref = %s AND user_id = %d AND data LIKE %s;";
|
1114 |
$wpdb->get_results( $wpdb->prepare( $sql, $action, $user_id, $string ) );
|
1115 |
if ( $wpdb->num_rows > 0 ) return true;
|
1116 |
|
1120 |
/**
|
1121 |
* AJAX Call Handler
|
1122 |
* @since 1.1
|
1123 |
+
* @version 1.2
|
1124 |
*/
|
1125 |
public function ajax_call_link_points() {
|
1126 |
// We must be logged in
|
1164 |
$this->prefs['log'],
|
1165 |
$ref,
|
1166 |
array(
|
1167 |
+
'ref_type' => 'link',
|
1168 |
+
'link_url' => ( isset( $_POST['url'] ) ) ? $_POST['url'] : '',
|
1169 |
+
'link_id' => ( isset( $_POST['eid'] ) ) ? $_POST['eid'] : '',
|
1170 |
+
'link_title' => ( isset( $_POST['etitle'] ) ) ? $_POST['etitle'] : ''
|
1171 |
)
|
1172 |
);
|
1173 |
|
1178 |
/**
|
1179 |
* Preference for Link Click Hook
|
1180 |
* @since 1.1
|
1181 |
+
* @version 1.0.1
|
1182 |
*/
|
1183 |
public function preferences() {
|
1184 |
$prefs = $this->prefs; ?>
|
1194 |
<ol>
|
1195 |
<li>
|
1196 |
<div class="h2"><input type="text" name="<?php echo $this->field_name( 'log' ); ?>" id="<?php echo $this->field_id( 'log' ); ?>" value="<?php echo $prefs['log']; ?>" class="long" /></div>
|
1197 |
+
<span class="description"><?php _e( 'Available template tags: General and custom tags: %url%, %title% or %id%.', 'mycred' ); ?></span>
|
1198 |
</li>
|
1199 |
</ol>
|
1200 |
<label class="subheader"><?php _e( 'Limits', 'mycred' ); ?></label>
|
1219 |
*/
|
1220 |
if ( !class_exists( 'myCRED_Hook_Video_Views' ) ) {
|
1221 |
class myCRED_Hook_Video_Views extends myCRED_Hook {
|
|
|
1222 |
/**
|
1223 |
* Construct
|
1224 |
*/
|
1242 |
*/
|
1243 |
public function run() {
|
1244 |
add_action( 'mycred_front_enqueue', array( $this, 'register_script' ) );
|
|
|
1245 |
add_shortcode( 'mycred_video', 'mycred_render_shortcode_video' );
|
1246 |
add_action( 'wp_ajax_mycred-video-points', array( $this, 'ajax_call_video_points' ) );
|
1247 |
}
|
1285 |
|
1286 |
// Security
|
1287 |
check_ajax_referer( 'mycred-video-points', 'token' );
|
1288 |
+
|
1289 |
$award = false;
|
1290 |
$status = 'silence';
|
1291 |
+
|
1292 |
// Check for amount override
|
1293 |
if ( isset( $_POST['amount'] ) && $_POST['amount'] != $this->prefs['creds'] )
|
1294 |
$amount = $this->core->number( $_POST['amount'] );
|
1295 |
else
|
1296 |
$amount = $this->prefs['creds'];
|
1297 |
+
|
1298 |
// Check for logic override
|
1299 |
if ( isset( $_POST['logic'] ) || $_POST['logic'] != $this->prefs['logic'] )
|
1300 |
$logic = $_POST['logic'];
|
1301 |
else
|
1302 |
$logic = $this->prefs['logic'];
|
1303 |
+
|
1304 |
// Check for interval override
|
1305 |
if ( isset( $_POST['interval'] ) && !empty( $_POST['interval'] ) )
|
1306 |
$interval = abs( $_POST['interval']/1000 );
|
1307 |
else
|
1308 |
$interval = abs( $this->prefs['interval'] );
|
1309 |
+
|
1310 |
$video_id = trim( $_POST['video_id'] );
|
1311 |
$state = trim( $_POST['video_state'] );
|
1312 |
$duration = abs( $_POST['video_length'] );
|
1313 |
+
|
1314 |
$user_id = abs( $_POST['user_id'] );
|
1315 |
$watched = abs( $_POST['user_watched'] );
|
1316 |
$actions = trim( $_POST['user_actions'] );
|
1344 |
if ( !preg_match( '/22/', $actions, $matches ) || $watched >= $duration ) {
|
1345 |
if ( $state == 0 && !$this->has_entry( 'watching_video', '', $user_id, $video_id ) ) {
|
1346 |
$award = true;
|
1347 |
+
|
1348 |
// Execute
|
1349 |
$this->core->add_creds(
|
1350 |
'watching_video',
|
1354 |
'',
|
1355 |
$video_id
|
1356 |
);
|
1357 |
+
|
1358 |
$status = 'max';
|
1359 |
}
|
1360 |
}
|
1364 |
// The maximum points a video can earn you
|
1365 |
$num_intervals = floor( $duration / $interval );
|
1366 |
$max = abs( $num_intervals * $amount );
|
|
|
1367 |
$users_log = $this->get_users_video_log( $video_id, $user_id );
|
|
|
1368 |
// Film is playing and we just started
|
1369 |
if ( $state == 1 && $users_log === NULL ) {
|
1370 |
$award = true;
|
|
|
1371 |
// Execute
|
1372 |
$this->core->add_creds(
|
1373 |
'watching_video',
|
1394 |
$status = 'max';
|
1395 |
}
|
1396 |
}
|
1397 |
+
|
1398 |
$data = array(
|
1399 |
'status' => $status,
|
1400 |
'video_id' => $video_id,
|
1402 |
);
|
1403 |
die( json_encode( $data ) );
|
1404 |
}
|
1405 |
+
|
1406 |
/**
|
1407 |
* Get Users Video Log
|
1408 |
* Returns the log for a given video id.
|
1409 |
* @since 1.2
|
1410 |
+
* @version 1.0.1
|
1411 |
*/
|
1412 |
public function get_users_video_log( $video_id, $user_id ) {
|
1413 |
global $wpdb;
|
1414 |
+
|
1415 |
+
$sql = "SELECT * FROM {$this->core->log_table} WHERE user_id = %d AND data = %s;";
|
|
|
1416 |
return $wpdb->get_row( $wpdb->prepare( $sql, $user_id, $video_id ) );
|
1417 |
}
|
1418 |
+
|
1419 |
/**
|
1420 |
* Update Points
|
1421 |
* @since 1.2
|
1422 |
+
* @version 1.1
|
1423 |
*/
|
1424 |
public function update_creds( $row_id, $user_id, $amount ) {
|
1425 |
// Prep format
|
1427 |
$decimals = $this->core->core['format']['decimals'];
|
1428 |
else
|
1429 |
$decimals = $this->core->format['decimals'];
|
1430 |
+
|
1431 |
if ( $decimals > 0 )
|
1432 |
$format = '%f';
|
1433 |
else
|
1436 |
$amount = $this->core->number( $amount );
|
1437 |
|
1438 |
global $wpdb;
|
|
|
1439 |
$wpdb->update(
|
1440 |
+
$this->core->log_table,
|
1441 |
array( 'creds' => $amount ),
|
1442 |
+
array( 'ID' => $row_id ),
|
1443 |
array( $format ),
|
1444 |
array( '%d' )
|
1445 |
);
|
1446 |
}
|
1447 |
+
|
1448 |
/**
|
1449 |
* Preference for Viewing Videos
|
1450 |
* @since 1.2
|
modules/mycred-module-log.php
CHANGED
@@ -1,5 +1,6 @@
|
|
1 |
<?php
|
2 |
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
|
|
3 |
/**
|
4 |
* myCRED_Log class
|
5 |
* @since 0.1
|
@@ -38,7 +39,6 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
38 |
public function module_init() {
|
39 |
add_filter( 'set-screen-option', array( $this, 'set_entries_per_page' ), 10, 3 );
|
40 |
add_action( 'mycred_add_menu', array( $this, 'my_history_menu' ) );
|
41 |
-
add_shortcode( 'mycred_history', array( $this, 'render_my_history' ) );
|
42 |
|
43 |
// Handle deletions
|
44 |
add_action( 'before_delete_post', array( $this, 'post_deletions' ) );
|
@@ -79,16 +79,13 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
79 |
/**
|
80 |
* Log Header
|
81 |
* @since 0.1
|
82 |
-
* @version 1.
|
83 |
*/
|
84 |
public function settings_header() {
|
85 |
// Since we are overwriting the myCRED_Module::settings_header() we need to enqueue admin styles
|
|
|
86 |
wp_enqueue_style( 'mycred-admin' );
|
87 |
-
|
88 |
$screen = get_current_screen();
|
89 |
-
|
90 |
-
$help = new myCRED_Help();
|
91 |
-
$help->log_page( $screen );
|
92 |
|
93 |
// Prep Per Page
|
94 |
$args = array(
|
@@ -96,13 +93,15 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
96 |
'default' => 10,
|
97 |
'option' => 'mycred_entries_per_page'
|
98 |
);
|
99 |
-
|
100 |
$per_page = get_user_meta( get_current_user_id(), $args['option'], true );
|
101 |
-
if ( empty( $per_page ) || $per_page < 1 )
|
102 |
-
|
103 |
|
104 |
-
|
105 |
-
|
|
|
|
|
106 |
}
|
107 |
|
108 |
/**
|
@@ -112,31 +111,32 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
112 |
* @version 1.1
|
113 |
*/
|
114 |
public function count_records() {
|
115 |
-
|
116 |
-
|
117 |
-
|
|
|
|
|
|
|
|
|
118 |
}
|
119 |
|
120 |
/**
|
121 |
* Get References
|
122 |
* Returns all available references in the database.
|
123 |
* @since 0.1
|
124 |
-
* @version 1.0
|
125 |
*/
|
126 |
protected function get_refs() {
|
127 |
$refs = wp_cache_get( 'mycred_references' );
|
128 |
if ( false === $refs ) {
|
129 |
global $wpdb;
|
130 |
-
|
131 |
-
$
|
132 |
-
$refs = $wpdb->get_col( $wpdb->prepare( $sql, 'ref' ) );
|
133 |
-
|
134 |
if ( $refs ) {
|
135 |
$refs = array_unique( $refs );
|
136 |
wp_cache_set( 'mycred_references', $refs );
|
137 |
}
|
138 |
}
|
139 |
-
|
140 |
return $refs;
|
141 |
}
|
142 |
|
@@ -157,7 +157,6 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
157 |
}
|
158 |
wp_cache_set( 'mycred_users', $users );
|
159 |
}
|
160 |
-
|
161 |
return $users;
|
162 |
}
|
163 |
|
@@ -219,8 +218,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
219 |
if ( $location == 'top' ) {
|
220 |
$this->filter_options( $is_profile );
|
221 |
$this->item_count( $amount );
|
222 |
-
}
|
223 |
-
else {
|
224 |
$this->item_count( $amount );
|
225 |
}
|
226 |
}
|
@@ -232,7 +230,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
232 |
*/
|
233 |
public function item_count( $amount ) { ?>
|
234 |
<div class="tablenav-pages one-page">
|
235 |
-
<span class="displaying-num"><?php echo
|
236 |
</div>
|
237 |
<?php
|
238 |
}
|
@@ -287,8 +285,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
287 |
if ( isset( $_GET['order'] ) && !empty( $_GET['order'] ) )
|
288 |
$args['order'] = $_GET['order'];
|
289 |
|
290 |
-
$log = new myCRED_Query_Log( $args );
|
291 |
-
$this->results = $log->results; ?>
|
292 |
|
293 |
<div class="wrap" id="myCRED-wrap">
|
294 |
<div id="icon-myCRED" class="icon32"><br /></div>
|
@@ -336,9 +333,8 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
336 |
<?php do_action( 'mycred_bottom_log_page', $this ); ?>
|
337 |
|
338 |
</div>
|
339 |
-
<?php
|
340 |
unset( $log );
|
341 |
-
unset( $this );
|
342 |
}
|
343 |
|
344 |
/**
|
@@ -367,7 +363,6 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
367 |
$args['order'] = $_GET['order'];
|
368 |
|
369 |
$log = new myCRED_Query_Log( $args );
|
370 |
-
$this->results = $log->results;
|
371 |
unset( $log->headers['column-username'] ); ?>
|
372 |
|
373 |
<div class="wrap" id="myCRED-wrap">
|
@@ -378,7 +373,21 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
378 |
<?php do_action( 'mycred_top_my_log_page', $this ); ?>
|
379 |
|
380 |
<form method="get" action="">
|
381 |
-
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
382 |
|
383 |
<input type="hidden" name="page" value="mycred_my_history" />
|
384 |
<?php do_action( 'mycred_above_my_log_table', $this ); ?>
|
@@ -399,56 +408,10 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
399 |
<?php do_action( 'mycred_bottom_my_log_page', $this ); ?>
|
400 |
|
401 |
</div>
|
402 |
-
<?php
|
403 |
unset( $log );
|
404 |
}
|
405 |
|
406 |
-
/**
|
407 |
-
* My History Shortcode render
|
408 |
-
* @since 0.1
|
409 |
-
* @version 1.1
|
410 |
-
*/
|
411 |
-
public function render_my_history( $atts ) {
|
412 |
-
extract( shortcode_atts( array(
|
413 |
-
'user_id' => NULL,
|
414 |
-
'number' => NULL,
|
415 |
-
'time' => NULL,
|
416 |
-
'ref' => NULL,
|
417 |
-
'order' => NULL,
|
418 |
-
'show_user' => false,
|
419 |
-
'login' => ''
|
420 |
-
), $atts ) );
|
421 |
-
|
422 |
-
// If we are not logged in
|
423 |
-
if ( !is_user_logged_in() && !empty( $login ) ) return '<p class="mycred-history login">' . $login . '</p>';
|
424 |
-
|
425 |
-
if ( $user_id === NULL )
|
426 |
-
$user_id = get_current_user_id();
|
427 |
-
|
428 |
-
$args = array();
|
429 |
-
$args['user_id'] = $user_id;
|
430 |
-
|
431 |
-
if ( $number !== NULL )
|
432 |
-
$args['number'] = $number;
|
433 |
-
|
434 |
-
if ( $time !== NULL )
|
435 |
-
$args['time'] = $time;
|
436 |
-
|
437 |
-
if ( $ref !== NULL )
|
438 |
-
$args['ref'] = $ref;
|
439 |
-
|
440 |
-
if ( $order !== NULL )
|
441 |
-
$args['order'] = $order;
|
442 |
-
|
443 |
-
$log = new myCRED_Query_Log( $args );
|
444 |
-
$this->results = $log->results;
|
445 |
-
|
446 |
-
if ( $show_user !== true )
|
447 |
-
unset( $log->headers['column-username'] );
|
448 |
-
|
449 |
-
return $log->get_display();
|
450 |
-
}
|
451 |
-
|
452 |
/**
|
453 |
* Handle Post Deletions
|
454 |
* @since 1.0.9.2
|
@@ -457,7 +420,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
457 |
public function post_deletions( $post_id ) {
|
458 |
global $post_type, $wpdb;
|
459 |
// Check log
|
460 |
-
$sql = "SELECT * FROM
|
461 |
$records = $wpdb->get_results( $wpdb->prepare( $sql, $post_id ) );
|
462 |
// If we have results
|
463 |
if ( $wpdb->num_rows > 0 ) {
|
@@ -484,7 +447,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
484 |
$new_data['post_type'] = $post->post_type;
|
485 |
// Save
|
486 |
$wpdb->update(
|
487 |
-
$
|
488 |
array( 'data' => serialize( $new_data ) ),
|
489 |
array( 'id' => $row->id ),
|
490 |
array( '%s' ),
|
@@ -495,7 +458,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
495 |
}
|
496 |
}
|
497 |
}
|
498 |
-
|
499 |
/**
|
500 |
* Handle User Deletions
|
501 |
* @since 1.0.9.2
|
@@ -504,7 +467,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
504 |
public function user_deletions( $user_id ) {
|
505 |
global $wpdb;
|
506 |
// Check log
|
507 |
-
$sql = "SELECT * FROM
|
508 |
$records = $wpdb->get_results( $wpdb->prepare( $sql, $user_id ) );
|
509 |
// If we have results
|
510 |
if ( $wpdb->num_rows > 0 ) {
|
@@ -519,7 +482,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
519 |
$new_data['display_name'] = $user->display_name;
|
520 |
// Save
|
521 |
$wpdb->update(
|
522 |
-
$
|
523 |
array( 'data' => serialize( $new_data ) ),
|
524 |
array( 'id' => $row->id ),
|
525 |
array( '%s' ),
|
@@ -528,7 +491,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
528 |
}
|
529 |
}
|
530 |
}
|
531 |
-
|
532 |
/**
|
533 |
* Handle Comment Deletions
|
534 |
* @since 1.0.9.2
|
@@ -537,7 +500,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
537 |
public function comment_deletions( $comment_id ) {
|
538 |
global $wpdb;
|
539 |
// Check log
|
540 |
-
$sql = "SELECT * FROM
|
541 |
$records = $wpdb->get_results( $wpdb->prepare( $sql, $comment_id ) );
|
542 |
// If we have results
|
543 |
if ( $wpdb->num_rows > 0 ) {
|
@@ -560,7 +523,7 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
560 |
$new_data['comment_post_ID'] = $comment->comment_post_ID;
|
561 |
// Save
|
562 |
$wpdb->update(
|
563 |
-
$
|
564 |
array( 'data' => serialize( $new_data ) ),
|
565 |
array( 'id' => $row->id ),
|
566 |
array( '%s' ),
|
@@ -573,458 +536,4 @@ if ( !class_exists( 'myCRED_Log' ) ) {
|
|
573 |
}
|
574 |
}
|
575 |
}
|
576 |
-
/**
|
577 |
-
* Query Log
|
578 |
-
* @see http://mycred.me/classes/mycred_query_log/
|
579 |
-
* @since 0.1
|
580 |
-
* @version 1.1
|
581 |
-
*/
|
582 |
-
if ( !class_exists( 'myCRED_Query_Log' ) ) {
|
583 |
-
class myCRED_Query_Log {
|
584 |
-
|
585 |
-
public $args;
|
586 |
-
public $request;
|
587 |
-
public $prep;
|
588 |
-
public $result;
|
589 |
-
public $num_rows;
|
590 |
-
public $headers;
|
591 |
-
|
592 |
-
/**
|
593 |
-
* Construct
|
594 |
-
*/
|
595 |
-
public function __construct( $args = array() ) {
|
596 |
-
if ( empty( $args ) ) return false;
|
597 |
-
|
598 |
-
global $wpdb;
|
599 |
-
|
600 |
-
$select = $where = $sortby = $limits = '';
|
601 |
-
$prep = $wheres = array();
|
602 |
-
|
603 |
-
// Load General Settings
|
604 |
-
$this->core = mycred_get_settings();
|
605 |
-
if ( $this->core->format['decimals'] > 0 )
|
606 |
-
$format = '%f';
|
607 |
-
else
|
608 |
-
$format = '%d';
|
609 |
-
|
610 |
-
// Prep Defaults
|
611 |
-
$defaults = array(
|
612 |
-
'user_id' => NULL,
|
613 |
-
'ctype' => $this->core->get_cred_id(),
|
614 |
-
'number' => 25,
|
615 |
-
'time' => NULL,
|
616 |
-
'ref' => NULL,
|
617 |
-
'ref_id' => NULL,
|
618 |
-
'amount' => NULL,
|
619 |
-
's' => NULL,
|
620 |
-
'orderby' => 'time',
|
621 |
-
'order' => 'DESC',
|
622 |
-
'ids' => false,
|
623 |
-
'cache' => NULL
|
624 |
-
);
|
625 |
-
$this->args = shortcode_atts( $defaults, $args );
|
626 |
-
|
627 |
-
$data = false;
|
628 |
-
if ( $this->args['cache'] !== NULL ) {
|
629 |
-
$cache_id = substr( $this->args['cache'], 0, 23 );
|
630 |
-
if ( is_multisite() )
|
631 |
-
$data = get_site_transient( 'mycred_log_query_' . $cache_id );
|
632 |
-
else
|
633 |
-
$data = get_transient( 'mycred_log_query_' . $cache_id );
|
634 |
-
}
|
635 |
-
if ( $data === false ) {
|
636 |
-
// Prep return
|
637 |
-
if ( $this->args['ids'] === true )
|
638 |
-
$select = 'SELECT id';
|
639 |
-
else
|
640 |
-
$select = 'SELECT *';
|
641 |
-
|
642 |
-
$wheres[] = 'ctype = %s';
|
643 |
-
$prep[] = $this->args['ctype'];
|
644 |
-
|
645 |
-
// User ID
|
646 |
-
if ( $this->args['user_id'] !== NULL ) {
|
647 |
-
$wheres[] = 'user_id = %d';
|
648 |
-
$prep[] = abs( $this->args['user_id'] );
|
649 |
-
}
|
650 |
-
|
651 |
-
// Reference
|
652 |
-
if ( $this->args['ref'] !== NULL ) {
|
653 |
-
$wheres[] = 'ref = %s';
|
654 |
-
$prep[] = sanitize_text_field( $this->args['ref'] );
|
655 |
-
}
|
656 |
-
|
657 |
-
// Reference ID
|
658 |
-
if ( $this->args['ref_id'] !== NULL ) {
|
659 |
-
$wheres[] = 'ref_id = %d';
|
660 |
-
$prep[] = sanitize_text_field( $this->args['ref_id'] );
|
661 |
-
}
|
662 |
-
|
663 |
-
// Amount
|
664 |
-
if ( $this->args['amount'] !== NULL ) {
|
665 |
-
// Range
|
666 |
-
if ( is_array( $this->args['amount'] ) && array_key_exists( 'start', $this->args['amount'] ) && array_key_exists( 'end', $this->args['amount'] ) ) {
|
667 |
-
$wheres[] = 'creds BETWEEN ' . $format . ' AND ' . $format;
|
668 |
-
$prep[] = $this->core->format_number( sanitize_text_field( $this->args['amount']['start'] ) );
|
669 |
-
$prep[] = $this->core->format_number( sanitize_text_field( $this->args['amount']['end'] ) );
|
670 |
-
}
|
671 |
-
// Compare
|
672 |
-
elseif ( is_array( $this->args['amount'] ) && array_key_exists( 'num', $this->args['amount'] ) && array_key_exists( 'compare', $this->args['amount'] ) ) {
|
673 |
-
$wheres[] = 'creds' . sanitize_text_field( $this->args['amount']['compare'] ) . ' ' . $format;
|
674 |
-
$prep[] = $this->core->format_number( sanitize_text_field( $this->args['amount']['num'] ) );
|
675 |
-
}
|
676 |
-
// Specific amount
|
677 |
-
else {
|
678 |
-
$wheres[] = 'creds = ' . $format;
|
679 |
-
$prep[] = $this->core->format_number( sanitize_text_field( $this->args['amount'] ) );
|
680 |
-
}
|
681 |
-
}
|
682 |
-
|
683 |
-
// Time
|
684 |
-
if ( $this->args['time'] !== NULL ) {
|
685 |
-
$today = strtotime( date_i18n( 'Y/m/d' ) );
|
686 |
-
$todays_date = date_i18n( 'd' );
|
687 |
-
$tomorrow = strtotime( date_i18n( 'Y/m/d', date_i18n( 'U' )+86400 ) );
|
688 |
-
$now = date_i18n( 'U' );
|
689 |
-
|
690 |
-
// Show todays entries
|
691 |
-
if ( $this->args['time'] == 'today' ) {
|
692 |
-
$wheres[] = "time BETWEEN $today AND $now";
|
693 |
-
}
|
694 |
-
// Show yesterdays entries
|
695 |
-
elseif ( $this->args['time'] == 'yesterday' ) {
|
696 |
-
$yesterday = strtotime( date_i18n( 'Y/m/d', date_i18n( 'U' )-86400 ) );
|
697 |
-
$wheres[] = "time BETWEEN $yesterday AND $today";
|
698 |
-
}
|
699 |
-
// Show this weeks entries
|
700 |
-
elseif ( $this->args['time'] == 'thisweek' ) {
|
701 |
-
$start_of_week = get_option( 'start_of_week' );
|
702 |
-
$weekday = date_i18n( 'w' );
|
703 |
-
// New week started today so show only todays
|
704 |
-
if ( $start_of_week == $weekday ) {
|
705 |
-
$wheres[] = "time BETWEEN $today AND $now";
|
706 |
-
}
|
707 |
-
// Show rest of this week
|
708 |
-
else {
|
709 |
-
$no_days_since_start_of_week = $weekday-$start_of_week;
|
710 |
-
$weekstart = $no_days_since_start_of_week*86400;
|
711 |
-
$weekstart = $today-$weekstart;
|
712 |
-
$wheres[] = "time BETWEEN $weekstart AND $now";
|
713 |
-
}
|
714 |
-
}
|
715 |
-
// Show this months entries
|
716 |
-
elseif ( $this->args['time'] == 'thismonth' ) {
|
717 |
-
$start_of_month = strtotime( date_i18n( 'Y/m/01' ) );
|
718 |
-
$wheres[] = "time BETWEEN $start_of_month AND $now";
|
719 |
-
}
|
720 |
-
}
|
721 |
-
|
722 |
-
// Search
|
723 |
-
if ( $this->args['s'] !== NULL ) {
|
724 |
-
$search_query = sanitize_text_field( $this->args['s'] );
|
725 |
-
if ( is_int( $search_query ) )
|
726 |
-
$search_query = (string) $search_query;
|
727 |
-
|
728 |
-
if ( $this->args['user_id'] !== NULL ) {
|
729 |
-
$user_id = $this->args['user_id'];
|
730 |
-
$wheres[] = "entry LIKE '%$search_query%' OR user_id = $user_id AND data LIKE '%$search_query%' OR user_id = $user_id AND ref LIKE '%$search_query%'";
|
731 |
-
}
|
732 |
-
else
|
733 |
-
$wheres[] = "entry LIKE '%$search_query%' OR data LIKE '%$search_query%' OR ref LIKE '%$search_query%'";
|
734 |
-
}
|
735 |
-
|
736 |
-
// Order by
|
737 |
-
if ( !empty( $this->args['orderby'] ) ) {
|
738 |
-
// Make sure $sortby is valid
|
739 |
-
$sortbys = array( 'id', 'ref', 'ref_id', 'user_id', 'creds', 'ctype', 'entry', 'data', 'time' );
|
740 |
-
$allowed = apply_filters( 'mycred_allowed_sortby', $sortbys );
|
741 |
-
if ( in_array( $this->args['orderby'], $allowed ) ) {
|
742 |
-
$sortby = "ORDER BY " . $this->args['orderby'] . " " . $this->args['order'];
|
743 |
-
}
|
744 |
-
}
|
745 |
-
|
746 |
-
// Limits
|
747 |
-
if ( $this->args['number'] == '-1' )
|
748 |
-
$limits = '';
|
749 |
-
elseif ( $this->args['number'] > 1 )
|
750 |
-
$limits = 'LIMIT 0,' . absint( $this->args['number'] );
|
751 |
-
|
752 |
-
// Filter
|
753 |
-
$select = apply_filters( 'mycred_query_log_select', $select, $this->args, $this->core );
|
754 |
-
$sortby = apply_filters( 'mycred_query_log_sortby', $sortby, $this->args, $this->core );
|
755 |
-
$limits = apply_filters( 'mycred_query_log_limits', $limits, $this->args, $this->core );
|
756 |
-
$wheres = apply_filters( 'mycred_query_log_wheres', $wheres, $this->args, $this->core );
|
757 |
-
|
758 |
-
$prep = apply_filters( 'mycred_query_log_prep', $prep, $this->args, $this->core );
|
759 |
-
|
760 |
-
$where = 'WHERE ' . implode( ' AND ', $wheres );
|
761 |
-
|
762 |
-
// Run
|
763 |
-
$this->request = "$select FROM " . $wpdb->prefix . 'myCRED_log' . " $where $sortby $limits";
|
764 |
-
$this->results = $wpdb->get_results( $wpdb->prepare( $this->request, $prep ) );
|
765 |
-
$this->prep = $prep;
|
766 |
-
|
767 |
-
if ( $this->args['cache'] !== NULL ) {
|
768 |
-
if ( is_multisite() )
|
769 |
-
set_site_transient( 'mycred_log_query_' . $cache_id, $this->results, DAY_IN_SECONDS * 1 );
|
770 |
-
else
|
771 |
-
set_transient( 'mycred_log_query_' . $cache_id, $this->results, DAY_IN_SECONDS * 1 );
|
772 |
-
}
|
773 |
-
|
774 |
-
// Counts
|
775 |
-
$this->num_rows = $wpdb->num_rows;
|
776 |
-
}
|
777 |
-
|
778 |
-
// Return the transient
|
779 |
-
else {
|
780 |
-
$this->request = 'transient';
|
781 |
-
$this->results = $data;
|
782 |
-
$this->prep = '';
|
783 |
-
|
784 |
-
$this->num_rows = count( $data );
|
785 |
-
}
|
786 |
-
|
787 |
-
$this->headers = $this->table_headers();
|
788 |
-
}
|
789 |
-
|
790 |
-
/**
|
791 |
-
* Has Entries
|
792 |
-
* @returns true or false
|
793 |
-
* @since 0.1
|
794 |
-
* @version 1.0
|
795 |
-
*/
|
796 |
-
public function have_entries() {
|
797 |
-
if ( !empty( $this->results ) ) return true;
|
798 |
-
return false;
|
799 |
-
}
|
800 |
-
|
801 |
-
/**
|
802 |
-
* Table Headers
|
803 |
-
* Returns all table column headers.
|
804 |
-
*
|
805 |
-
* @filter mycred_log_column_headers
|
806 |
-
* @since 0.1
|
807 |
-
* @version 1.0
|
808 |
-
*/
|
809 |
-
public function table_headers() {
|
810 |
-
return apply_filters( 'mycred_log_column_headers', array(
|
811 |
-
'column-username' => __( 'User', 'mycred' ),
|
812 |
-
'column-time' => __( 'Date', 'mycred' ),
|
813 |
-
'column-creds' => $this->core->plural(),
|
814 |
-
'column-entry' => __( 'Entry', 'mycred' )
|
815 |
-
), $this );
|
816 |
-
}
|
817 |
-
|
818 |
-
/**
|
819 |
-
* Display
|
820 |
-
* @since 0.1
|
821 |
-
* @version 1.0
|
822 |
-
*/
|
823 |
-
public function display() {
|
824 |
-
echo $this->get_display();
|
825 |
-
}
|
826 |
-
|
827 |
-
/**
|
828 |
-
* Get Display
|
829 |
-
* Generates a table for our results.
|
830 |
-
*
|
831 |
-
* @since 0.1
|
832 |
-
* @version 1.0
|
833 |
-
*/
|
834 |
-
public function get_display() {
|
835 |
-
$output = '
|
836 |
-
<table class="wp-list-table widefat fixed log-entries" cellspacing="0">
|
837 |
-
<thead>
|
838 |
-
<tr>';
|
839 |
-
|
840 |
-
// Table header
|
841 |
-
foreach ( $this->headers as $col_id => $col_title ) {
|
842 |
-
$output .= '<th scope="col" id="' . str_replace( 'column-', '', $col_id ) . '" class="manage-column ' . $col_id . '">' . $col_title . '</th>';
|
843 |
-
}
|
844 |
-
|
845 |
-
$output .= '
|
846 |
-
</tr>
|
847 |
-
</thead>
|
848 |
-
<tfoot>';
|
849 |
-
|
850 |
-
// Table footer
|
851 |
-
foreach ( $this->headers as $col_id => $col_title ) {
|
852 |
-
$output .= '<th scope="col" class="manage-column ' . $col_id . '">' . $col_title . '</th>';
|
853 |
-
}
|
854 |
-
|
855 |
-
$output .= '
|
856 |
-
</tfoot>
|
857 |
-
<tbody id="the-list">';
|
858 |
-
|
859 |
-
// Loop
|
860 |
-
if ( $this->have_entries() ) {
|
861 |
-
$alt = 0;
|
862 |
-
foreach ( $this->results as $log_entry ) {
|
863 |
-
$alt = $alt+1;
|
864 |
-
if ( $alt % 2 == 0 )
|
865 |
-
$class = ' alternate';
|
866 |
-
else
|
867 |
-
$class = '';
|
868 |
-
|
869 |
-
$output .= '<tr class="myCRED-log-row' . $class . '">';
|
870 |
-
$output .= $this->get_the_entry( $log_entry );
|
871 |
-
$output .= '</tr>';
|
872 |
-
}
|
873 |
-
}
|
874 |
-
// No log entry
|
875 |
-
else {
|
876 |
-
$output .= '<tr><td colspan="' . count( $this->headers ) . '" class="no-entries">' . $this->get_no_entries() . '</td></tr>';
|
877 |
-
}
|
878 |
-
|
879 |
-
$output .= '
|
880 |
-
</tbody>
|
881 |
-
</table>' . "\n";
|
882 |
-
|
883 |
-
return $output;
|
884 |
-
}
|
885 |
-
|
886 |
-
/**
|
887 |
-
* The Entry
|
888 |
-
* @since 0.1
|
889 |
-
* @version 1.1
|
890 |
-
*/
|
891 |
-
public function the_entry( $log_entry, $wrap = 'td' ) {
|
892 |
-
echo $this->get_the_entry( $log_entry, $wrap );
|
893 |
-
}
|
894 |
-
|
895 |
-
/**
|
896 |
-
* Get The Entry
|
897 |
-
* Generated a single entry row depending on the columns used / requested.
|
898 |
-
*
|
899 |
-
* @since 0.1
|
900 |
-
* @version 1.2
|
901 |
-
*/
|
902 |
-
public function get_the_entry( $log_entry, $wrap = 'td' ) {
|
903 |
-
$date_format = get_option( 'date_format' ) . ' ' . get_option( 'time_format' );
|
904 |
-
$entry_data = '';
|
905 |
-
|
906 |
-
// Run though columns
|
907 |
-
foreach ( $this->headers as $column_id => $column_name ) {
|
908 |
-
switch ( $column_id ) {
|
909 |
-
// Username Column
|
910 |
-
case 'column-username':
|
911 |
-
$user = get_userdata( $log_entry->user_id );
|
912 |
-
|
913 |
-
if ( $user === false )
|
914 |
-
$content = '<span>' . __( 'User Missing', 'mycred' ) . ' (ID: ' . $log_entry->user_id . ')</span>';
|
915 |
-
else
|
916 |
-
$content = '<span>' . $user->display_name . '</span>';
|
917 |
-
|
918 |
-
unset( $user );
|
919 |
-
break;
|
920 |
-
// Date & Time Column
|
921 |
-
case 'column-time' :
|
922 |
-
$content = date_i18n( $date_format, $log_entry->time );
|
923 |
-
break;
|
924 |
-
// Amount Column
|
925 |
-
case 'column-creds' :
|
926 |
-
$content = $this->core->format_creds( $log_entry->creds );
|
927 |
-
break;
|
928 |
-
// Log Entry Column
|
929 |
-
case 'column-entry' :
|
930 |
-
$content = $this->core->parse_template_tags( $log_entry->entry, $log_entry );
|
931 |
-
break;
|
932 |
-
}
|
933 |
-
$entry_data .= '<' . $wrap . ' class="' . $column_id . '">' . $content . '</' . $wrap . '>';
|
934 |
-
}
|
935 |
-
return $entry_data;
|
936 |
-
}
|
937 |
-
|
938 |
-
/**
|
939 |
-
* No Entries
|
940 |
-
* @since 0.1
|
941 |
-
* @version 1.0
|
942 |
-
*/
|
943 |
-
public function no_entries() {
|
944 |
-
echo $this->get_no_entries();
|
945 |
-
}
|
946 |
-
|
947 |
-
/**
|
948 |
-
* Get No Entries
|
949 |
-
* @since 0.1
|
950 |
-
* @version 1.0
|
951 |
-
*/
|
952 |
-
public function get_no_entries() {
|
953 |
-
return __( 'No log entries found', 'mycred' );
|
954 |
-
}
|
955 |
-
|
956 |
-
/**
|
957 |
-
* Log Search
|
958 |
-
* @since 0.1
|
959 |
-
* @version 1.0
|
960 |
-
*/
|
961 |
-
public function search() {
|
962 |
-
if ( isset( $_GET['s'] ) && !empty( $_GET['s'] ) )
|
963 |
-
$serarch_string = $_GET['s'];
|
964 |
-
else
|
965 |
-
$serarch_string = ''; ?>
|
966 |
-
|
967 |
-
<p class="search-box">
|
968 |
-
<label class="screen-reader-text" for=""><?php _e( 'Search Log', 'mycred' ); ?>:</label>
|
969 |
-
<input type="search" name="s" value="<?php echo $serarch_string; ?>" />
|
970 |
-
<input type="submit" name="mycred-search-log" id="search-submit" class="button" value="<?php _e( 'Search Log', 'mycred' ); ?>" />
|
971 |
-
</p>
|
972 |
-
<?php
|
973 |
-
}
|
974 |
-
|
975 |
-
/**
|
976 |
-
* Filter by Dates
|
977 |
-
* @since 0.1
|
978 |
-
* @version 1.0
|
979 |
-
*/
|
980 |
-
public function filter_dates( $url = '' ) {
|
981 |
-
$date_sorting = apply_filters( 'mycred_sort_by_time', array(
|
982 |
-
'' => __( 'All', 'mycred' ),
|
983 |
-
'today' => __( 'Today', 'mycred' ),
|
984 |
-
'yesterday' => __( 'Yesterday', 'mycred' ),
|
985 |
-
'thisweek' => __( 'This Week', 'mycred' ),
|
986 |
-
'thismonth' => __( 'This Month', 'mycred' )
|
987 |
-
) );
|
988 |
-
|
989 |
-
if ( !empty( $date_sorting ) ) {
|
990 |
-
$total = count( $date_sorting );
|
991 |
-
$count = 0;
|
992 |
-
echo '<ul class="subsubsub">';
|
993 |
-
foreach ( $date_sorting as $sorting_id => $sorting_name ) {
|
994 |
-
$count = $count+1;
|
995 |
-
echo '<li class="' . $sorting_id . '"><a href="';
|
996 |
-
|
997 |
-
// Build Query Args
|
998 |
-
$url_args = array();
|
999 |
-
if ( isset( $_GET['user_id'] ) && !empty( $_GET['user_id'] ) )
|
1000 |
-
$url_args['user_id'] = $_GET['user_id'];
|
1001 |
-
if ( isset( $_GET['ref'] ) && !empty( $_GET['ref'] ) )
|
1002 |
-
$url_args['ref'] = $_GET['ref'];
|
1003 |
-
if ( isset( $_GET['order'] ) && !empty( $_GET['order'] ) )
|
1004 |
-
$url_args['order'] = $_GET['order'];
|
1005 |
-
if ( isset( $_GET['s'] ) && !empty( $_GET['s'] ) )
|
1006 |
-
$url_args['s'] = $_GET['s'];
|
1007 |
-
if ( !empty( $sorting_id ) )
|
1008 |
-
$url_args['show'] = $sorting_id;
|
1009 |
-
|
1010 |
-
// Build URL
|
1011 |
-
if ( !empty( $url_args ) )
|
1012 |
-
echo add_query_arg( $url_args, $url );
|
1013 |
-
else
|
1014 |
-
echo $url;
|
1015 |
-
|
1016 |
-
echo '"';
|
1017 |
-
|
1018 |
-
if ( isset( $_GET['show'] ) && $_GET['show'] == $sorting_id ) echo ' class="current"';
|
1019 |
-
elseif ( !isset( $_GET['show'] ) && empty( $sorting_id ) ) echo ' class="current"';
|
1020 |
-
|
1021 |
-
echo '>' . $sorting_name . '</a>';
|
1022 |
-
if ( $count != $total ) echo ' | ';
|
1023 |
-
echo '</li>';
|
1024 |
-
}
|
1025 |
-
echo '</ul>';
|
1026 |
-
}
|
1027 |
-
}
|
1028 |
-
}
|
1029 |
-
}
|
1030 |
?>
|
1 |
<?php
|
2 |
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
3 |
+
|
4 |
/**
|
5 |
* myCRED_Log class
|
6 |
* @since 0.1
|
39 |
public function module_init() {
|
40 |
add_filter( 'set-screen-option', array( $this, 'set_entries_per_page' ), 10, 3 );
|
41 |
add_action( 'mycred_add_menu', array( $this, 'my_history_menu' ) );
|
|
|
42 |
|
43 |
// Handle deletions
|
44 |
add_action( 'before_delete_post', array( $this, 'post_deletions' ) );
|
79 |
/**
|
80 |
* Log Header
|
81 |
* @since 0.1
|
82 |
+
* @version 1.2
|
83 |
*/
|
84 |
public function settings_header() {
|
85 |
// Since we are overwriting the myCRED_Module::settings_header() we need to enqueue admin styles
|
86 |
+
wp_dequeue_script( 'bpge_admin_js_acc' );
|
87 |
wp_enqueue_style( 'mycred-admin' );
|
|
|
88 |
$screen = get_current_screen();
|
|
|
|
|
|
|
89 |
|
90 |
// Prep Per Page
|
91 |
$args = array(
|
93 |
'default' => 10,
|
94 |
'option' => 'mycred_entries_per_page'
|
95 |
);
|
96 |
+
add_screen_option( 'per_page', $args );
|
97 |
$per_page = get_user_meta( get_current_user_id(), $args['option'], true );
|
98 |
+
if ( empty( $per_page ) || $per_page < 1 ) $per_page = $args['default'];
|
99 |
+
$this->per_page = $per_page; ?>
|
100 |
|
101 |
+
<style type="text/css">
|
102 |
+
#icon-myCRED, .icon32-posts-mycred_email_notice, .icon32-posts-mycred_rank { background-image: url(<?php echo apply_filters( 'mycred_icon', plugins_url( 'assets/images/cred-icon32.png', myCRED_THIS ) ); ?>); }
|
103 |
+
</style>
|
104 |
+
<?php
|
105 |
}
|
106 |
|
107 |
/**
|
111 |
* @version 1.1
|
112 |
*/
|
113 |
public function count_records() {
|
114 |
+
$count = get_transient( 'mycred_log_entries' );
|
115 |
+
if ( $count === false ) {
|
116 |
+
global $wpdb;
|
117 |
+
$count = $wpdb->get_var( "SELECT COUNT(*) FROM {$this->core->log_table};" );
|
118 |
+
set_transient( 'mycred_log_entries', $count, DAY_IN_SECONDS*1 );
|
119 |
+
}
|
120 |
+
return $count;
|
121 |
}
|
122 |
|
123 |
/**
|
124 |
* Get References
|
125 |
* Returns all available references in the database.
|
126 |
* @since 0.1
|
127 |
+
* @version 1.0.1
|
128 |
*/
|
129 |
protected function get_refs() {
|
130 |
$refs = wp_cache_get( 'mycred_references' );
|
131 |
if ( false === $refs ) {
|
132 |
global $wpdb;
|
133 |
+
$sql = "SELECT log.ref FROM {$this->core->log_table} log WHERE %s <> %s;";
|
134 |
+
$refs = $wpdb->get_col( $wpdb->prepare( $sql, 'ref', '' ) );
|
|
|
|
|
135 |
if ( $refs ) {
|
136 |
$refs = array_unique( $refs );
|
137 |
wp_cache_set( 'mycred_references', $refs );
|
138 |
}
|
139 |
}
|
|
|
140 |
return $refs;
|
141 |
}
|
142 |
|
157 |
}
|
158 |
wp_cache_set( 'mycred_users', $users );
|
159 |
}
|
|
|
160 |
return $users;
|
161 |
}
|
162 |
|
218 |
if ( $location == 'top' ) {
|
219 |
$this->filter_options( $is_profile );
|
220 |
$this->item_count( $amount );
|
221 |
+
} else {
|
|
|
222 |
$this->item_count( $amount );
|
223 |
}
|
224 |
}
|
230 |
*/
|
231 |
public function item_count( $amount ) { ?>
|
232 |
<div class="tablenav-pages one-page">
|
233 |
+
<span class="displaying-num"><?php echo sprintf( __( 'Showing %d %s', 'mycred' ), $amount, _n( 'entry', 'entries', $amount, 'mycred' ) ); ?></span>
|
234 |
</div>
|
235 |
<?php
|
236 |
}
|
285 |
if ( isset( $_GET['order'] ) && !empty( $_GET['order'] ) )
|
286 |
$args['order'] = $_GET['order'];
|
287 |
|
288 |
+
$log = new myCRED_Query_Log( $args ); ?>
|
|
|
289 |
|
290 |
<div class="wrap" id="myCRED-wrap">
|
291 |
<div id="icon-myCRED" class="icon32"><br /></div>
|
333 |
<?php do_action( 'mycred_bottom_log_page', $this ); ?>
|
334 |
|
335 |
</div>
|
336 |
+
<?php $log->reset_query();
|
337 |
unset( $log );
|
|
|
338 |
}
|
339 |
|
340 |
/**
|
363 |
$args['order'] = $_GET['order'];
|
364 |
|
365 |
$log = new myCRED_Query_Log( $args );
|
|
|
366 |
unset( $log->headers['column-username'] ); ?>
|
367 |
|
368 |
<div class="wrap" id="myCRED-wrap">
|
373 |
<?php do_action( 'mycred_top_my_log_page', $this ); ?>
|
374 |
|
375 |
<form method="get" action="">
|
376 |
+
<?php
|
377 |
+
|
378 |
+
if ( isset( $_GET['s'] ) && !empty( $_GET['s'] ) )
|
379 |
+
echo '<input type="hidden" name="s" value="' . $_GET['s'] . '" />';
|
380 |
+
|
381 |
+
if ( isset( $_GET['ref'] ) && !empty( $_GET['ref'] ) )
|
382 |
+
echo '<input type="hidden" name="ref" value="' . $_GET['ref'] . '" />';
|
383 |
+
|
384 |
+
if ( isset( $_GET['show'] ) && !empty( $_GET['show'] ) )
|
385 |
+
echo '<input type="hidden" name="show" value="' . $_GET['show'] . '" />';
|
386 |
+
|
387 |
+
if ( isset( $_GET['order'] ) && !empty( $_GET['order'] ) )
|
388 |
+
echo '<input type="hidden" name="order" value="' . $_GET['order'] . '" />';
|
389 |
+
|
390 |
+
$log->search(); ?>
|
391 |
|
392 |
<input type="hidden" name="page" value="mycred_my_history" />
|
393 |
<?php do_action( 'mycred_above_my_log_table', $this ); ?>
|
408 |
<?php do_action( 'mycred_bottom_my_log_page', $this ); ?>
|
409 |
|
410 |
</div>
|
411 |
+
<?php $log->reset_query();
|
412 |
unset( $log );
|
413 |
}
|
414 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
415 |
/**
|
416 |
* Handle Post Deletions
|
417 |
* @since 1.0.9.2
|
420 |
public function post_deletions( $post_id ) {
|
421 |
global $post_type, $wpdb;
|
422 |
// Check log
|
423 |
+
$sql = "SELECT * FROM {$this->core->log_table} WHERE ref_id = %d;";
|
424 |
$records = $wpdb->get_results( $wpdb->prepare( $sql, $post_id ) );
|
425 |
// If we have results
|
426 |
if ( $wpdb->num_rows > 0 ) {
|
447 |
$new_data['post_type'] = $post->post_type;
|
448 |
// Save
|
449 |
$wpdb->update(
|
450 |
+
$this->core->log_table,
|
451 |
array( 'data' => serialize( $new_data ) ),
|
452 |
array( 'id' => $row->id ),
|
453 |
array( '%s' ),
|
458 |
}
|
459 |
}
|
460 |
}
|
461 |
+
|
462 |
/**
|
463 |
* Handle User Deletions
|
464 |
* @since 1.0.9.2
|
467 |
public function user_deletions( $user_id ) {
|
468 |
global $wpdb;
|
469 |
// Check log
|
470 |
+
$sql = "SELECT * FROM {$this->core->log_table} WHERE user_id = %d;";
|
471 |
$records = $wpdb->get_results( $wpdb->prepare( $sql, $user_id ) );
|
472 |
// If we have results
|
473 |
if ( $wpdb->num_rows > 0 ) {
|
482 |
$new_data['display_name'] = $user->display_name;
|
483 |
// Save
|
484 |
$wpdb->update(
|
485 |
+
$this->core->log_table,
|
486 |
array( 'data' => serialize( $new_data ) ),
|
487 |
array( 'id' => $row->id ),
|
488 |
array( '%s' ),
|
491 |
}
|
492 |
}
|
493 |
}
|
494 |
+
|
495 |
/**
|
496 |
* Handle Comment Deletions
|
497 |
* @since 1.0.9.2
|
500 |
public function comment_deletions( $comment_id ) {
|
501 |
global $wpdb;
|
502 |
// Check log
|
503 |
+
$sql = "SELECT * FROM {$this->core->log_table} WHERE ref_id = %d;";
|
504 |
$records = $wpdb->get_results( $wpdb->prepare( $sql, $comment_id ) );
|
505 |
// If we have results
|
506 |
if ( $wpdb->num_rows > 0 ) {
|
523 |
$new_data['comment_post_ID'] = $comment->comment_post_ID;
|
524 |
// Save
|
525 |
$wpdb->update(
|
526 |
+
$this->core->log_table,
|
527 |
array( 'data' => serialize( $new_data ) ),
|
528 |
array( 'id' => $row->id ),
|
529 |
array( '%s' ),
|
536 |
}
|
537 |
}
|
538 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
539 |
?>
|
modules/mycred-module-plugins.php
DELETED
@@ -1,1572 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Third-Party Plugin Hooks
|
4 |
-
*
|
5 |
-
* @since 1.1
|
6 |
-
* @version 1.0
|
7 |
-
*/
|
8 |
-
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
9 |
-
|
10 |
-
/**
|
11 |
-
* bbPress
|
12 |
-
* @since 0.1
|
13 |
-
* @version 1.2
|
14 |
-
*/
|
15 |
-
if ( class_exists( 'bbPress' ) ) {
|
16 |
-
/**
|
17 |
-
* Insert Points Balance in Profile
|
18 |
-
* @since 1.1.1
|
19 |
-
* @version 1.0
|
20 |
-
*/
|
21 |
-
add_action( 'bbp_template_after_user_profile', 'mycred_bbp_add_balance_in_profile' );
|
22 |
-
function mycred_bbp_add_balance_in_profile() {
|
23 |
-
$user_id = bbp_get_displayed_user_id();
|
24 |
-
$mycred = mycred_get_settings();
|
25 |
-
|
26 |
-
if ( $mycred->exclude_user( $user_id ) ) return;
|
27 |
-
|
28 |
-
$balance = $mycred->get_users_cred( $user_id );
|
29 |
-
echo '<div class="users-mycred-balance">' . $mycred->plural() . ': ' . $mycred->format_creds( $balance ) . '</div>';
|
30 |
-
}
|
31 |
-
|
32 |
-
/**
|
33 |
-
* bbPress Hook
|
34 |
-
* @since 1.1.1
|
35 |
-
* @version 1.2
|
36 |
-
*/
|
37 |
-
if ( !class_exists( 'myCRED_bbPress' ) ) {
|
38 |
-
class myCRED_bbPress extends myCRED_Hook {
|
39 |
-
|
40 |
-
/**
|
41 |
-
* Construct
|
42 |
-
*/
|
43 |
-
function __construct( $hook_prefs ) {
|
44 |
-
parent::__construct( array(
|
45 |
-
'id' => 'hook_bbpress',
|
46 |
-
'defaults' => array(
|
47 |
-
'new_forum' => array(
|
48 |
-
'creds' => 1,
|
49 |
-
'log' => '%plural% for new forum'
|
50 |
-
),
|
51 |
-
'delete_forum' => array(
|
52 |
-
'creds' => 0-1,
|
53 |
-
'log' => '%singular% deduction for deleted forum'
|
54 |
-
),
|
55 |
-
'new_topic' => array(
|
56 |
-
'creds' => 1,
|
57 |
-
'log' => '%plural% for new forum topic',
|
58 |
-
'author' => 0
|
59 |
-
),
|
60 |
-
'delete_topic' => array(
|
61 |
-
'creds' => 0-1,
|
62 |
-
'log' => '%singular% deduction for deleted topic'
|
63 |
-
),
|
64 |
-
'fav_topic' => array(
|
65 |
-
'creds' => 1,
|
66 |
-
'log' => '%plural% for someone favorited your forum topic',
|
67 |
-
'limit' => 1
|
68 |
-
),
|
69 |
-
'new_reply' => array(
|
70 |
-
'creds' => 1,
|
71 |
-
'log' => '%plural% for new forum reply',
|
72 |
-
'author' => 0,
|
73 |
-
'limit' => 10,
|
74 |
-
),
|
75 |
-
'delete_reply' => array(
|
76 |
-
'creds' => 0-1,
|
77 |
-
'log' => '%singular% deduction for deleted reply'
|
78 |
-
),
|
79 |
-
'show_points_in_reply' => 0
|
80 |
-
)
|
81 |
-
), $hook_prefs );
|
82 |
-
}
|
83 |
-
|
84 |
-
/**
|
85 |
-
* Run
|
86 |
-
* @since 0.1
|
87 |
-
* @version 1.2
|
88 |
-
*/
|
89 |
-
public function run() {
|
90 |
-
// Insert Points balance in profile
|
91 |
-
if ( isset( $this->prefs['show_points_in_reply'] ) && $this->prefs['show_points_in_reply'] == 1 )
|
92 |
-
add_action( 'bbp_theme_after_reply_author_details', array( $this, 'insert_balance' ) );
|
93 |
-
|
94 |
-
// New Forum
|
95 |
-
if ( $this->prefs['new_forum']['creds'] != 0 )
|
96 |
-
add_action( 'bbp_new_forum', array( $this, 'new_forum' ), 20 );
|
97 |
-
// Delete Forum
|
98 |
-
if ( $this->prefs['delete_forum']['creds'] != 0 )
|
99 |
-
add_action( 'bbp_delete_forum', array( $this, 'delete_forum' ) );
|
100 |
-
// New Topic
|
101 |
-
if ( $this->prefs['new_topic']['creds'] != 0 )
|
102 |
-
add_action( 'bbp_new_topic', array( $this, 'new_topic' ), 20, 4 );
|
103 |
-
// Delete Topic
|
104 |
-
if ( $this->prefs['delete_topic']['creds'] != 0 )
|
105 |
-
add_action( 'bbp_delete_topic', array( $this, 'delete_topic' ) );
|
106 |
-
// Fave Topic
|
107 |
-
if ( $this->prefs['fav_topic']['creds'] != 0 )
|
108 |
-
add_action( 'bbp_add_user_favorite', array( $this, 'fav_topic' ), 10, 2 );
|
109 |
-
// New Reply
|
110 |
-
if ( $this->prefs['new_reply']['creds'] != 0 )
|
111 |
-
add_action( 'bbp_new_reply', array( $this, 'new_reply' ), 20, 5 );
|
112 |
-
// Delete Reply
|
113 |
-
if ( $this->prefs['delete_reply']['creds'] != 0 )
|
114 |
-
add_action( 'bbp_delete_reply', array( $this, 'delete_reply' ) );
|
115 |
-
}
|
116 |
-
|
117 |
-
/**
|
118 |
-
* New Forum
|
119 |
-
* @since 1.1.1
|
120 |
-
* @version 1.1
|
121 |
-
*/
|
122 |
-
public function new_forum( $forum ) {
|
123 |
-
// Forum id
|
124 |
-
$forum_id = $forum['forum_id'];
|
125 |
-
|
126 |
-
// Forum author
|
127 |
-
$forum_author = $forum['forum_author'];
|
128 |
-
|
129 |
-
// Check if user is excluded
|
130 |
-
if ( $this->core->exclude_user( $forum_author ) ) return;
|
131 |
-
|
132 |
-
// Make sure this is unique event
|
133 |
-
if ( $this->has_entry( 'new_forum', $forum_id, $forum_author ) ) return;
|
134 |
-
|
135 |
-
// Execute
|
136 |
-
$this->core->add_creds(
|
137 |
-
'new_forum',
|
138 |
-
$forum_author,
|
139 |
-
$this->prefs['new_forum']['creds'],
|
140 |
-
$this->prefs['new_forum']['log'],
|
141 |
-
$forum_id,
|
142 |
-
array( 'ref_type' => 'post' )
|
143 |
-
);
|
144 |
-
}
|
145 |
-
|
146 |
-
/**
|
147 |
-
* Delete Forum
|
148 |
-
* @since 1.2
|
149 |
-
* @version 1.0
|
150 |
-
*/
|
151 |
-
public function delete_forum( $forum_id ) {
|
152 |
-
// Get Author
|
153 |
-
$forum_author = bbp_get_forum_author_id( $forum_id );
|
154 |
-
|
155 |
-
// If gained, points, deduct
|
156 |
-
if ( $this->has_entry( 'new_forum', $forum_id, $forum_author ) ) {
|
157 |
-
|
158 |
-
// Execute
|
159 |
-
$this->core->add_creds(
|
160 |
-
'deleted_forum',
|
161 |
-
$forum_author,
|
162 |
-
$this->prefs['delete_forum']['creds'],
|
163 |
-
$this->prefs['delete_forum']['log'],
|
164 |
-
$forum_id,
|
165 |
-
array( 'ref_type' => 'post' )
|
166 |
-
);
|
167 |
-
|
168 |
-
}
|
169 |
-
}
|
170 |
-
|
171 |
-
/**
|
172 |
-
* New Topic
|
173 |
-
* @since 0.1
|
174 |
-
* @version 1.1
|
175 |
-
*/
|
176 |
-
public function new_topic( $topic_id, $forum_id, $anonymous_data, $topic_author ) {
|
177 |
-
// Check if user is excluded
|
178 |
-
if ( $this->core->exclude_user( $topic_author ) ) return;
|
179 |
-
|
180 |
-
// Check if forum author is allowed to get points for their own topics
|
181 |
-
if ( (bool) $this->prefs['new_topic']['author'] == false ) {
|
182 |
-
if ( bbp_get_forum_author_id( $forum_id ) == $topic_author ) return;
|
183 |
-
}
|
184 |
-
|
185 |
-
// Make sure this is unique event
|
186 |
-
if ( $this->has_entry( 'new_forum_topic', $topic_id, $topic_author ) ) return;
|
187 |
-
|
188 |
-
// Execute
|
189 |
-
$this->core->add_creds(
|
190 |
-
'new_forum_topic',
|
191 |
-
$topic_author,
|
192 |
-
$this->prefs['new_topic']['creds'],
|
193 |
-
$this->prefs['new_topic']['log'],
|
194 |
-
$topic_id,
|
195 |
-
array( 'ref_type' => 'post' )
|
196 |
-
);
|
197 |
-
}
|
198 |
-
|
199 |
-
/**
|
200 |
-
* Delete Topic
|
201 |
-
* @since 1.2
|
202 |
-
* @version 1.0
|
203 |
-
*/
|
204 |
-
public function delete_topic( $topic_id ) {
|
205 |
-
// Get Author
|
206 |
-
$topic_author = bbp_get_topic_author_id( $topic_id );
|
207 |
-
|
208 |
-
// If gained, points, deduct
|
209 |
-
if ( $this->has_entry( 'new_forum_topic', $topic_id, $topic_author ) ) {
|
210 |
-
|
211 |
-
// Execute
|
212 |
-
$this->core->add_creds(
|
213 |
-
'deleted_topic',
|
214 |
-
$topic_author,
|
215 |
-
$this->prefs['delete_topic']['creds'],
|
216 |
-
$this->prefs['delete_topic']['log'],
|
217 |
-
$topic_id,
|
218 |
-
array( 'ref_type' => 'post' )
|
219 |
-
);
|
220 |
-
|
221 |
-
}
|
222 |
-
}
|
223 |
-
|
224 |
-
/**
|
225 |
-
* Topic Added to Favorites
|
226 |
-
* @by Fee (http://wordpress.org/support/profile/wdfee)
|
227 |
-
* @since 1.1.1
|
228 |
-
* @version 1.2
|
229 |
-
*/
|
230 |
-
public function fav_topic( $user_id, $topic_id ) {
|
231 |
-
|
232 |
-
// $user_id is loggedin_user, not author, so get topic author
|
233 |
-
$topic_author = get_post_field( 'post_author', $topic_id );
|
234 |
-
|
235 |
-
// Enforce Daily Limit
|
236 |
-
if ( $this->reached_daily_limit( $topic_author, 'fav_topic' ) ) return;
|
237 |
-
|
238 |
-
// Check if user is excluded (required)
|
239 |
-
if ( $this->core->exclude_user( $topic_author ) || $topic_author == $user_id ) return;
|
240 |
-
|
241 |
-
// Make sure this is a unique event (favorite not from same user)
|
242 |
-
if ( $this->has_entry( 'topic_favorited', $topic_id, $topic_author, 's:8:"ref_user";i:' . $user_id . ';' ) ) return;
|
243 |
-
|
244 |
-
// Execute
|
245 |
-
$this->core->add_creds(
|
246 |
-
'topic_favorited',
|
247 |
-
$topic_author,
|
248 |
-
$this->prefs['fav_topic']['creds'],
|
249 |
-
$this->prefs['fav_topic']['log'],
|
250 |
-
$topic_id,
|
251 |
-
array( 'ref_user' => $user_id, 'ref_type' => 'post' )
|
252 |
-
);
|
253 |
-
|
254 |
-
// Update Limit
|
255 |
-
$this->update_daily_limit( $topic_author, 'fav_topic' );
|
256 |
-
}
|
257 |
-
|
258 |
-
/**
|
259 |
-
* New Reply
|
260 |
-
* @since 0.1
|
261 |
-
* @version 1.2
|
262 |
-
*/
|
263 |
-
public function new_reply( $reply_id, $topic_id, $forum_id, $anonymous_data, $reply_author ) {
|
264 |
-
// Check if user is excluded
|
265 |
-
if ( $this->core->exclude_user( $reply_author ) ) return;
|
266 |
-
|
267 |
-
// Check if topic author gets points for their own replies
|
268 |
-
if ( (bool) $this->prefs['new_reply']['author'] === false ) {
|
269 |
-
if ( bbp_get_topic_author_id( $topic_id ) == $reply_author ) return;
|
270 |
-
}
|
271 |
-
|
272 |
-
// Check daily limit
|
273 |
-
if ( $this->reached_daily_limit( $reply_author, 'new_reply' ) ) return;
|
274 |
-
|
275 |
-
// Make sure this is unique event
|
276 |
-
if ( $this->has_entry( 'new_forum_reply', $reply_id, $reply_author ) ) return;
|
277 |
-
|
278 |
-
// Execute
|
279 |
-
$this->core->add_creds(
|
280 |
-
'new_forum_reply',
|
281 |
-
$reply_author,
|
282 |
-
$this->prefs['new_reply']['creds'],
|
283 |
-
$this->prefs['new_reply']['log'],
|
284 |
-
$reply_id,
|
285 |
-
array( 'ref_type' => 'post' )
|
286 |
-
);
|
287 |
-
|
288 |
-
// Update Limit
|
289 |
-
$this->update_daily_limit( $topic_author, 'new_reply' );
|
290 |
-
}
|
291 |
-
|
292 |
-
/**
|
293 |
-
* Delete Reply
|
294 |
-
* @since 1.2
|
295 |
-
* @version 1.0
|
296 |
-
*/
|
297 |
-
public function delete_reply( $reply_id ) {
|
298 |
-
// Get Author
|
299 |
-
$reply_author = bbp_get_reply_author_id( $reply_id );
|
300 |
-
|
301 |
-
// If gained, points, deduct
|
302 |
-
if ( $this->has_entry( 'new_forum_reply', $reply_id, $reply_author ) ) {
|
303 |
-
|
304 |
-
// Execute
|
305 |
-
$this->core->add_creds(
|
306 |
-
'deleted_reply',
|
307 |
-
$reply_author,
|
308 |
-
$this->prefs['delete_reply']['creds'],
|
309 |
-
$this->prefs['delete_reply']['log'],
|
310 |
-
$reply_id,
|
311 |
-
array( 'ref_type' => 'post' )
|
312 |
-
);
|
313 |
-
|
314 |
-
}
|
315 |
-
}
|
316 |
-
|
317 |
-
/**
|
318 |
-
* Insert Balance
|
319 |
-
* @since 0.1
|
320 |
-
* @version 1.1
|
321 |
-
*/
|
322 |
-
public function insert_balance() {
|
323 |
-
$reply_id = bbp_get_reply_id();
|
324 |
-
if ( bbp_is_reply_anonymous( $reply_id ) ) return;
|
325 |
-
|
326 |
-
$balance = $this->core->get_users_cred( bbp_get_reply_author_id( $reply_id ) );
|
327 |
-
echo '<div class="mycred-balance">' . $this->core->plural() . ': ' . $this->core->format_creds( $balance ) . '</div>';
|
328 |
-
}
|
329 |
-
|
330 |
-
/**
|
331 |
-
* Reched Daily Limit
|
332 |
-
* Checks if a user has reached their daily limit.
|
333 |
-
* @since 1.2
|
334 |
-
* @version 1.0
|
335 |
-
*/
|
336 |
-
public function reached_daily_limit( $user_id, $id ) {
|
337 |
-
// No limit used
|
338 |
-
if ( $this->prefs[$id]['limit'] == 0 ) return false;
|
339 |
-
|
340 |
-
$today = date( 'Y-m-d' );
|
341 |
-
$current = get_user_meta( $user_id, 'mycred_bbp_limits_' . $id, true );
|
342 |
-
if ( empty( $current ) || !array_key_exists( $today, (array) $current ) )
|
343 |
-
$current[$today] = 0;
|
344 |
-
|
345 |
-
if ( $current[ $today ] < $this->prefs[$id]['limit'] ) return false;
|
346 |
-
|
347 |
-
return true;
|
348 |
-
}
|
349 |
-
|
350 |
-
/**
|
351 |
-
* Update Daily Limit
|
352 |
-
* Updates a given users daily limit.
|
353 |
-
* @since 1.2
|
354 |
-
* @version 1.0
|
355 |
-
*/
|
356 |
-
public function update_daily_limit( $user_id, $id ) {
|
357 |
-
// No limit used
|
358 |
-
if ( $this->prefs[$id]['limit'] == 0 ) return;
|
359 |
-
|
360 |
-
$today = date( 'Y-m-d' );
|
361 |
-
$current = get_user_meta( $user_id, 'mycred_bbp_limits_' . $id, true );
|
362 |
-
if ( empty( $current ) || !array_key_exists( $today, (array) $current ) )
|
363 |
-
$current[$today] = 0;
|
364 |
-
|
365 |
-
$current[ $today ] = $current[ $today ]+1;
|
366 |
-
|
367 |
-
update_user_meta( $user_id, 'mycred_bbp_limits_' . $id, $current );
|
368 |
-
}
|
369 |
-
|
370 |
-
/**
|
371 |
-
* Preferences
|
372 |
-
* @since 0.1
|
373 |
-
* @version 1.1
|
374 |
-
*/
|
375 |
-
public function preferences() {
|
376 |
-
$prefs = $this->prefs;
|
377 |
-
|
378 |
-
// Update
|
379 |
-
if ( !isset( $prefs['show_points_in_reply'] ) )
|
380 |
-
$prefs['show_points_in_reply'] = 0;
|
381 |
-
if ( !isset( $prefs['new_topic']['author'] ) )
|
382 |
-
$prefs['new_topic']['author'] = 0;
|
383 |
-
if ( !isset( $prefs['fav_topic'] ) )
|
384 |
-
$prefs['fav_topic'] = array( 'creds' => 1, 'log' => '%plural% for someone favorited your forum topic' );
|
385 |
-
if ( !isset( $prefs['new_reply']['author'] ) )
|
386 |
-
$prefs['new_reply']['author'] = 0;
|
387 |
-
|
388 |
-
if ( !isset( $prefs['fav_topic']['limit'] ) )
|
389 |
-
$prefs['fav_topic']['limit'] = 0;
|
390 |
-
if ( !isset( $prefs['new_reply']['limit'] ) )
|
391 |
-
$prefs['new_reply']['limit'] = 0; ?>
|
392 |
-
|
393 |
-
<!-- Creds for New Forums -->
|
394 |
-
<label for="<?php echo $this->field_id( array( 'new_forum', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for New Forum', 'mycred' ) ); ?></label>
|
395 |
-
<ol id="">
|
396 |
-
<li>
|
397 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_forum', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'new_forum', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['new_forum']['creds'] ); ?>" size="8" /></div>
|
398 |
-
</li>
|
399 |
-
<li class="empty"> </li>
|
400 |
-
<li>
|
401 |
-
<label for="<?php echo $this->field_id( array( 'new_forum', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
402 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_forum', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'new_forum', 'log' ) ); ?>" value="<?php echo $prefs['new_forum']['log']; ?>" class="long" /></div>
|
403 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
404 |
-
</li>
|
405 |
-
</ol>
|
406 |
-
<!-- Creds for Deleting Forums -->
|
407 |
-
<label for="<?php echo $this->field_id( array( 'delete_forum', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Forum Deletion', 'mycred' ) ); ?></label>
|
408 |
-
<ol id="">
|
409 |
-
<li>
|
410 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'delete_forum', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'delete_forum', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['delete_forum']['creds'] ); ?>" size="8" /></div>
|
411 |
-
</li>
|
412 |
-
<li class="empty"> </li>
|
413 |
-
<li>
|
414 |
-
<label for="<?php echo $this->field_id( array( 'delete_forum', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
415 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'delete_forum', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'delete_forum', 'log' ) ); ?>" value="<?php echo $prefs['delete_forum']['log']; ?>" class="long" /></div>
|
416 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
417 |
-
</li>
|
418 |
-
</ol>
|
419 |
-
<!-- Creds for New Topic -->
|
420 |
-
<label for="<?php echo $this->field_id( array( 'new_topic', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for New Topic', 'mycred' ) ); ?></label>
|
421 |
-
<ol id="">
|
422 |
-
<li>
|
423 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_topic', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'new_topic', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['new_topic']['creds'] ); ?>" size="8" /></div>
|
424 |
-
</li>
|
425 |
-
<li class="empty"> </li>
|
426 |
-
<li>
|
427 |
-
<label for="<?php echo $this->field_id( array( 'new_topic', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
428 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_topic', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'new_topic', 'log' ) ); ?>" value="<?php echo $prefs['new_topic']['log']; ?>" class="long" /></div>
|
429 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
430 |
-
</li>
|
431 |
-
<li class="empty"> </li>
|
432 |
-
<li>
|
433 |
-
<input type="checkbox" name="<?php echo $this->field_name( array( 'new_topic' => 'author' ) ); ?>" id="<?php echo $this->field_id( array( 'new_topic' => 'author' ) ); ?>" <?php checked( $prefs['new_topic']['author'], 1 ); ?> value="1" />
|
434 |
-
<label for="<?php echo $this->field_id( array( 'new_topic' => 'author' ) ); ?>"><?php echo $this->core->template_tags_general( __( 'Forum authors can receive %_plural% for creating new topics.', 'mycred' ) ); ?></label>
|
435 |
-
</li>
|
436 |
-
</ol>
|
437 |
-
<!-- Creds for Deleting Topic -->
|
438 |
-
<label for="<?php echo $this->field_id( array( 'delete_topic', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Topic Deletion', 'mycred' ) ); ?></label>
|
439 |
-
<ol id="">
|
440 |
-
<li>
|
441 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'delete_topic', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'delete_topic', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['delete_topic']['creds'] ); ?>" size="8" /></div>
|
442 |
-
</li>
|
443 |
-
<li class="empty"> </li>
|
444 |
-
<li>
|
445 |
-
<label for="<?php echo $this->field_id( array( 'delete_topic', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
446 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'delete_topic', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'delete_topic', 'log' ) ); ?>" value="<?php echo $prefs['delete_topic']['log']; ?>" class="long" /></div>
|
447 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
448 |
-
</li>
|
449 |
-
</ol>
|
450 |
-
<!-- Creds for Faved Topic -->
|
451 |
-
<label for="<?php echo $this->field_id( array( 'fav_topic', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Favorited Topic', 'mycred' ) ); ?></label>
|
452 |
-
<ol id="">
|
453 |
-
<li>
|
454 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'fav_topic', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'fav_topic', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['fav_topic']['creds'] ); ?>" size="8" /></div>
|
455 |
-
</li>
|
456 |
-
<li class="empty"> </li>
|
457 |
-
<li>
|
458 |
-
<label for="<?php echo $this->field_id( array( 'fav_topic', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
459 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'fav_topic', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'fav_topic', 'log' ) ); ?>" value="<?php echo $prefs['fav_topic']['log']; ?>" class="long" /></div>
|
460 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
461 |
-
</li>
|
462 |
-
<li class="empty"> </li>
|
463 |
-
<li>
|
464 |
-
<label for="<?php echo $this->field_id( array( 'fav_topic', 'limit' ) ); ?>"><?php _e( 'Daily Limit', 'mycred' ); ?></label>
|
465 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'fav_topic', 'limit' ) ); ?>" id="<?php echo $this->field_id( array( 'fav_topic', 'limit' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['fav_topic']['limit'] ); ?>" size="8" /></div>
|
466 |
-
<span class="description"><?php _e( 'Use zero for unlimited', 'mycred' ); ?></span>
|
467 |
-
</li>
|
468 |
-
</ol>
|
469 |
-
<!-- Creds for New Reply -->
|
470 |
-
<label for="<?php echo $this->field_id( array( 'new_reply', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for New Reply', 'mycred' ) ); ?></label>
|
471 |
-
<ol id="">
|
472 |
-
<li>
|
473 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_reply', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'new_reply', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['new_reply']['creds'] ); ?>" size="8" /></div>
|
474 |
-
</li>
|
475 |
-
<li class="empty"> </li>
|
476 |
-
<li>
|
477 |
-
<label for="<?php echo $this->field_id( array( 'new_reply', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
478 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_reply', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'new_reply', 'log' ) ); ?>" value="<?php echo $prefs['new_reply']['log']; ?>" class="long" /></div>
|
479 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
480 |
-
</li>
|
481 |
-
<li class="empty"> </li>
|
482 |
-
<li>
|
483 |
-
<input type="checkbox" name="<?php echo $this->field_name( array( 'new_reply' => 'author' ) ); ?>" id="<?php echo $this->field_id( array( 'new_reply' => 'author' ) ); ?>" <?php checked( $prefs['new_reply']['author'], 1 ); ?> value="1" />
|
484 |
-
<label for="<?php echo $this->field_id( array( 'new_reply' => 'author' ) ); ?>"><?php echo $this->core->template_tags_general( __( 'Topic authors can receive %_plural% for replying to their own Topic', 'mycred' ) ); ?></label>
|
485 |
-
</li>
|
486 |
-
<li class="empty"> </li>
|
487 |
-
<li>
|
488 |
-
<label for="<?php echo $this->field_id( array( 'new_reply', 'limit' ) ); ?>"><?php _e( 'Daily Limit', 'mycred' ); ?></label>
|
489 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_reply', 'limit' ) ); ?>" id="<?php echo $this->field_id( array( 'new_reply', 'limit' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['new_reply']['limit'] ); ?>" size="8" /></div>
|
490 |
-
<span class="description"><?php _e( 'Use zero for unlimited', 'mycred' ); ?></span>
|
491 |
-
</li>
|
492 |
-
<li class="empty"> </li>
|
493 |
-
<li>
|
494 |
-
<input type="checkbox" name="<?php echo $this->field_name( 'show_points_in_reply' ); ?>" id="<?php echo $this->field_id( 'show_points_in_reply' ); ?>" <?php checked( $prefs['show_points_in_reply'], 1 ); ?> value="1" /> <label for="<?php echo $this->field_id( 'show_points_in_reply' ); ?>"><?php echo $this->core->template_tags_general( __( 'Show users %_plural% balance in replies', 'mycred' ) ); ?>.</label>
|
495 |
-
</li>
|
496 |
-
</ol>
|
497 |
-
<?php unset( $this );
|
498 |
-
}
|
499 |
-
|
500 |
-
/**
|
501 |
-
* Sanitise Preference
|
502 |
-
* @since 1.1.1
|
503 |
-
* @version 1.0
|
504 |
-
*/
|
505 |
-
function sanitise_preferences( $data ) {
|
506 |
-
$new_data = $data;
|
507 |
-
|
508 |
-
$new_data['new_topic']['author'] = ( isset( $data['new_topic']['author'] ) ) ? $data['new_topic']['author'] : 0;
|
509 |
-
$new_data['new_reply']['author'] = ( isset( $data['new_reply']['author'] ) ) ? $data['new_reply']['author'] : 0;
|
510 |
-
|
511 |
-
return $new_data;
|
512 |
-
}
|
513 |
-
}
|
514 |
-
}
|
515 |
-
}
|
516 |
-
|
517 |
-
/**
|
518 |
-
* Hooks for Invite Anyone Plugin
|
519 |
-
* @since 0.1
|
520 |
-
* @version 1.0
|
521 |
-
*/
|
522 |
-
if ( !class_exists( 'myCRED_Invite_Anyone' ) && function_exists( 'invite_anyone_init' ) ) {
|
523 |
-
class myCRED_Invite_Anyone extends myCRED_Hook {
|
524 |
-
|
525 |
-
/**
|
526 |
-
* Construct
|
527 |
-
*/
|
528 |
-
function __construct( $hook_prefs ) {
|
529 |
-
parent::__construct( array(
|
530 |
-
'id' => 'invite_anyone',
|
531 |
-
'defaults' => array(
|
532 |
-
'send_invite' => array(
|
533 |
-
'creds' => 1,
|
534 |
-
'log' => '%plural% for sending an invitation',
|
535 |
-
'limit' => 0
|
536 |
-
),
|
537 |
-
'accept_invite' => array(
|
538 |
-
'creds' => 1,
|
539 |
-
'log' => '%plural% for accepted invitation',
|
540 |
-
'limit' => 0
|
541 |
-
)
|
542 |
-
)
|
543 |
-
), $hook_prefs );
|
544 |
-
}
|
545 |
-
|
546 |
-
/**
|
547 |
-
* Run
|
548 |
-
* @since 0.1
|
549 |
-
* @version 1.0
|
550 |
-
*/
|
551 |
-
public function run() {
|
552 |
-
if ( $this->prefs['send_invite']['creds'] != 0 ) {
|
553 |
-
add_action( 'sent_email_invite', array( $this, 'send_invite' ), 10, 3 );
|
554 |
-
}
|
555 |
-
if ( $this->prefs['accept_invite']['creds'] != 0 ) {
|
556 |
-
add_action( 'accepted_email_invite', array( $this, 'accept_invite' ), 10, 2 );
|
557 |
-
}
|
558 |
-
}
|
559 |
-
|
560 |
-
/**
|
561 |
-
* Sending Invites
|
562 |
-
* @since 0.1
|
563 |
-
* @version 1.0
|
564 |
-
*/
|
565 |
-
public function send_invite( $user_id, $email, $group ) {
|
566 |
-
// Limit Check
|
567 |
-
if ( $this->prefs['send_invite']['limit'] != 0 ) {
|
568 |
-
$user_log = get_user_meta( $user_id, 'mycred_invite_anyone', true );
|
569 |
-
if ( empty( $user_log['sent'] ) ) $user_log['sent'] = 0;
|
570 |
-
// Return if limit is reached
|
571 |
-
if ( $user_log['sent'] >= $this->prefs['send_invite']['limit'] ) return;
|
572 |
-
}
|
573 |
-
|
574 |
-
// Award Points
|
575 |
-
$this->core->add_creds(
|
576 |
-
'sending_an_invite',
|
577 |
-
$user_id,
|
578 |
-
$this->prefs['send_invite']['creds'],
|
579 |
-
$this->prefs['send_invite']['log']
|
580 |
-
);
|
581 |
-
|
582 |
-
// Update limit
|
583 |
-
if ( $this->prefs['send_invite']['limit'] != 0 ) {
|
584 |
-
$user_log['sent'] = $user_log['sent']+1;
|
585 |
-
update_user_meta( $user_id, 'mycred_invite_anyone', $user_log );
|
586 |
-
}
|
587 |
-
}
|
588 |
-
|
589 |
-
/**
|
590 |
-
* Accepting Invites
|
591 |
-
* @since 0.1
|
592 |
-
* @version 1.0
|
593 |
-
*/
|
594 |
-
public function accept_invite( $invited_user_id, $inviters ) {
|
595 |
-
// Invite Anyone will pass on an array of user IDs of those who have invited this user which we need to loop though
|
596 |
-
foreach ( (array) $inviters as $inviter_id ) {
|
597 |
-
// Limit Check
|
598 |
-
if ( $this->prefs['accept_invite']['limit'] != 0 ) {
|
599 |
-
$user_log = get_user_meta( $inviter_id, 'mycred_invite_anyone', true );
|
600 |
-
if ( empty( $user_log['accepted'] ) ) $user_log['accepted'] = 0;
|
601 |
-
// Continue to next inviter if limit is reached
|
602 |
-
if ( $user_log['accepted'] >= $this->prefs['accept_invite']['limit'] ) continue;
|
603 |
-
}
|
604 |
-
|
605 |
-
// Award Points
|
606 |
-
$this->core->add_creds(
|
607 |
-
'accepting_an_invite',
|
608 |
-
$inviter_id,
|
609 |
-
$this->prefs['accept_invite']['creds'],
|
610 |
-
$this->prefs['accept_invite']['log']
|
611 |
-
);
|
612 |
-
|
613 |
-
// Update Limit
|
614 |
-
if ( $this->prefs['accept_invite']['limit'] != 0 ) {
|
615 |
-
$user_log['accepted'] = $user_log['accepted']+1;
|
616 |
-
update_user_meta( $inviter_id, 'mycred_invite_anyone', $user_log );
|
617 |
-
}
|
618 |
-
}
|
619 |
-
}
|
620 |
-
|
621 |
-
/**
|
622 |
-
* Preferences
|
623 |
-
* @since 0.1
|
624 |
-
* @version 1.0
|
625 |
-
*/
|
626 |
-
public function preferences() {
|
627 |
-
$prefs = $this->prefs; ?>
|
628 |
-
|
629 |
-
<!-- Creds for Sending Invites -->
|
630 |
-
<label for="<?php echo $this->field_id( array( 'send_invite', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Sending An Invite', 'mycred' ) ); ?></label>
|
631 |
-
<ol>
|
632 |
-
<li>
|
633 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'send_invite', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'send_invite', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['send_invite']['creds'] ); ?>" size="8" /></div>
|
634 |
-
</li>
|
635 |
-
<li class="empty"> </li>
|
636 |
-
<li>
|
637 |
-
<label for="<?php echo $this->field_id( array( 'send_invite', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
638 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'send_invite', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'send_invite', 'log' ) ); ?>" value="<?php echo $prefs['send_invite']['log']; ?>" class="long" /></div>
|
639 |
-
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
640 |
-
</li>
|
641 |
-
</ol>
|
642 |
-
<label for="<?php echo $this->field_id( array( 'send_invite', 'limit' ) ); ?>" class="subheader"><?php _e( 'Limit', 'mycred' ); ?></label>
|
643 |
-
<ol>
|
644 |
-
<li>
|
645 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'send_invite', 'limit' ) ); ?>" id="<?php echo $this->field_id( array( 'send_invite', 'limit' ) ); ?>" value="<?php echo $prefs['send_invite']['limit']; ?>" size="8" /></div>
|
646 |
-
<span class="description"><?php echo $this->core->template_tags_general( __( 'Maximum number of invites that grants %_plural%. Use zero for unlimited.', 'mycred' ) ); ?></span>
|
647 |
-
</li>
|
648 |
-
</ol>
|
649 |
-
<!-- Creds for Accepting Invites -->
|
650 |
-
<label for="<?php echo $this->field_id( array( 'accept_invite', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Accepting An Invite', 'mycred' ) ); ?></label>
|
651 |
-
<ol>
|
652 |
-
<li>
|
653 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'accept_invite', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'accept_invite', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['accept_invite']['creds'] ); ?>" size="8" /></div>
|
654 |
-
<span class="description"><?php echo $this->core->template_tags_general( __( '%plural% for each invited user that accepts an invitation.', 'mycred' ) ); ?></span>
|
655 |
-
</li>
|
656 |
-
<li class="empty"> </li>
|
657 |
-
<li>
|
658 |
-
<label for="<?php echo $this->field_id( array( 'accept_invite', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
659 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'accept_invite', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'accept_invite', 'log' ) ); ?>" value="<?php echo $prefs['accept_invite']['log']; ?>" class="long" /></div>
|
660 |
-
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
661 |
-
</li>
|
662 |
-
</ol>
|
663 |
-
<label for="<?php echo $this->field_id( array( 'accept_invite', 'limit' ) ); ?>" class="subheader"><?php _e( 'Limit', 'mycred' ); ?></label>
|
664 |
-
<ol>
|
665 |
-
<li>
|
666 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'accept_invite', 'limit' ) ); ?>" id="<?php echo $this->field_id( array( 'accept_invite', 'limit' ) ); ?>" value="<?php echo $prefs['accept_invite']['limit']; ?>" size="8" /></div>
|
667 |
-
<span class="description"><?php echo $this->core->template_tags_general( __( 'Maximum number of accepted invitations that grants %_plural%. Use zero for unlimited.', 'mycred' ) ); ?></span>
|
668 |
-
</li>
|
669 |
-
</ol>
|
670 |
-
<?php unset( $this );
|
671 |
-
}
|
672 |
-
}
|
673 |
-
}
|
674 |
-
|
675 |
-
/**
|
676 |
-
* Hook for Contact Form 7 Plugin
|
677 |
-
* @since 0.1
|
678 |
-
* @version 1.0
|
679 |
-
*/
|
680 |
-
if ( !class_exists( 'myCRED_Contact_Form7' ) && function_exists( 'wpcf7' ) ) {
|
681 |
-
class myCRED_Contact_Form7 extends myCRED_Hook {
|
682 |
-
|
683 |
-
/**
|
684 |
-
* Construct
|
685 |
-
*/
|
686 |
-
function __construct( $hook_prefs ) {
|
687 |
-
parent::__construct( array(
|
688 |
-
'id' => 'contact_form7',
|
689 |
-
'defaults' => ''
|
690 |
-
), $hook_prefs );
|
691 |
-
}
|
692 |
-
|
693 |
-
/**
|
694 |
-
* Run
|
695 |
-
* @since 0.1
|
696 |
-
* @version 1.0
|
697 |
-
*/
|
698 |
-
public function run() {
|
699 |
-
add_action( 'wpcf7_mail_sent', array( $this, 'form_submission' ) );
|
700 |
-
}
|
701 |
-
|
702 |
-
/**
|
703 |
-
* Get Forms
|
704 |
-
* Queries all Contact Form 7 forms.
|
705 |
-
* @uses WP_Query()
|
706 |
-
* @since 0.1
|
707 |
-
* @version 1.1
|
708 |
-
*/
|
709 |
-
public function get_forms() {
|
710 |
-
$forms = new WP_Query( array(
|
711 |
-
'post_type' => 'wpcf7_contact_form',
|
712 |
-
'post_status' => 'any',
|
713 |
-
'posts_per_page' => '-1',
|
714 |
-
'orderby' => 'ID',
|
715 |
-
'order' => 'ASC'
|
716 |
-
) );
|
717 |
-
|
718 |
-
$result = array();
|
719 |
-
if ( $forms->have_posts() ) {
|
720 |
-
while ( $forms->have_posts() ) : $forms->the_post();
|
721 |
-
$result[get_the_ID()] = get_the_title();
|
722 |
-
endwhile;
|
723 |
-
}
|
724 |
-
wp_reset_postdata();
|
725 |
-
|
726 |
-
return $result;
|
727 |
-
}
|
728 |
-
|
729 |
-
/**
|
730 |
-
* Successful Form Submission
|
731 |
-
* @since 0.1
|
732 |
-
* @version 1.0
|
733 |
-
*/
|
734 |
-
public function form_submission( $cf7_form ) {
|
735 |
-
// Login is required
|
736 |
-
if ( !is_user_logged_in() ) return;
|
737 |
-
|
738 |
-
$form_id = $cf7_form->id;
|
739 |
-
if ( isset( $this->prefs[$form_id] ) && $this->prefs[$form_id]['creds'] != 0 ) {
|
740 |
-
$this->core->add_creds(
|
741 |
-
'contact_form_submission',
|
742 |
-
get_current_user_id(),
|
743 |
-
$this->prefs[$form_id]['creds'],
|
744 |
-
$this->prefs[$form_id]['log'],
|
745 |
-
$form_id,
|
746 |
-
array( 'ref_type' => 'post' )
|
747 |
-
);
|
748 |
-
}
|
749 |
-
}
|
750 |
-
|
751 |
-
/**
|
752 |
-
* Preferences for Commenting Hook
|
753 |
-
* @since 0.1
|
754 |
-
* @version 1.0
|
755 |
-
*/
|
756 |
-
public function preferences() {
|
757 |
-
$prefs = $this->prefs;
|
758 |
-
$forms = $this->get_forms();
|
759 |
-
|
760 |
-
// No forms found
|
761 |
-
if ( empty( $forms ) ) {
|
762 |
-
echo '<p>' . __( 'No forms found.', 'mycred' ) . '</p>';
|
763 |
-
return;
|
764 |
-
}
|
765 |
-
|
766 |
-
// Loop though prefs to make sure we always have a default settings (happens when a new form has been created)
|
767 |
-
foreach ( $forms as $form_id => $form_title ) {
|
768 |
-
if ( !isset( $prefs[$form_id] ) ) {
|
769 |
-
$prefs[$form_id] = array(
|
770 |
-
'creds' => 1,
|
771 |
-
'log' => ''
|
772 |
-
);
|
773 |
-
}
|
774 |
-
}
|
775 |
-
|
776 |
-
// Set pref if empty
|
777 |
-
if ( empty( $prefs ) ) $this->prefs = $prefs;
|
778 |
-
|
779 |
-
// Loop for settings
|
780 |
-
foreach ( $forms as $form_id => $form_title ) { ?>
|
781 |
-
|
782 |
-
<!-- Creds for -->
|
783 |
-
<label for="<?php echo $this->field_id( array( $form_id, 'creds' ) ); ?>" class="subheader"><?php echo $form_title; ?></label>
|
784 |
-
<ol>
|
785 |
-
<li>
|
786 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $form_id, 'creds' ) ); ?>" id="<?php echo $this->field_id( array( $form_id, 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs[$form_id]['creds'] ); ?>" size="8" /></div>
|
787 |
-
</li>
|
788 |
-
<li class="empty"> </li>
|
789 |
-
<li>
|
790 |
-
<label for="<?php echo $this->field_id( array( $form_id, 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
791 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $form_id, 'log' ) ); ?>" id="<?php echo $this->field_id( array( $form_id, 'log' ) ); ?>" value="<?php echo $prefs[$form_id]['log']; ?>" class="long" /></div>
|
792 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
793 |
-
</li>
|
794 |
-
</ol>
|
795 |
-
<?php }
|
796 |
-
unset( $this );
|
797 |
-
}
|
798 |
-
}
|
799 |
-
}
|
800 |
-
|
801 |
-
/**
|
802 |
-
* Hook for BadgeOS Plugin
|
803 |
-
* @since 1.0.8
|
804 |
-
* @version 1.0
|
805 |
-
*/
|
806 |
-
if ( !class_exists( 'myCRED_Hook_BadgeOS' ) && class_exists( 'BadgeOS' ) ) {
|
807 |
-
class myCRED_Hook_BadgeOS extends myCRED_Hook {
|
808 |
-
|
809 |
-
/**
|
810 |
-
* Construct
|
811 |
-
*/
|
812 |
-
function __construct( $hook_prefs ) {
|
813 |
-
parent::__construct( array(
|
814 |
-
'id' => 'badgeos',
|
815 |
-
'defaults' => ''
|
816 |
-
), $hook_prefs );
|
817 |
-
}
|
818 |
-
|
819 |
-
/**
|
820 |
-
* Run
|
821 |
-
* @since 1.0.8
|
822 |
-
* @version 1.0
|
823 |
-
*/
|
824 |
-
public function run() {
|
825 |
-
add_action( 'add_meta_boxes', array( $this, 'add_metaboxes' ) );
|
826 |
-
add_action( 'save_post', array( $this, 'save_achivement_data' ) );
|
827 |
-
|
828 |
-
add_action( 'badgeos_award_achievement', array( $this, 'award_achievent' ), 10, 2 );
|
829 |
-
add_action( 'badgeos_revoke_achievement', array( $this, 'revoke_achievement' ), 10, 2 );
|
830 |
-
}
|
831 |
-
|
832 |
-
/**
|
833 |
-
* Add Metaboxes
|
834 |
-
* @since 1.0.8
|
835 |
-
* @version 1.0
|
836 |
-
*/
|
837 |
-
public function add_metaboxes() {
|
838 |
-
// Get all Achievement Types
|
839 |
-
$badge_post_types = badgeos_get_achievement_types_slugs();
|
840 |
-
foreach ( $badge_post_types as $post_type ) {
|
841 |
-
// Add Meta Box
|
842 |
-
add_meta_box(
|
843 |
-
'mycred_badgeos_' . $post_type,
|
844 |
-
__( 'myCRED', 'mycred' ),
|
845 |
-
array( $this, 'render_meta_box' ),
|
846 |
-
$post_type,
|
847 |
-
'side',
|
848 |
-
'core'
|
849 |
-
);
|
850 |
-
}
|
851 |
-
}
|
852 |
-
|
853 |
-
/**
|
854 |
-
* Render Meta Box
|
855 |
-
* @since 1.0.8
|
856 |
-
* @version 1.0
|
857 |
-
*/
|
858 |
-
public function render_meta_box( $post ) {
|
859 |
-
// Setup is needed
|
860 |
-
if ( !isset( $this->prefs[$post->post_type] ) ) {
|
861 |
-
$message = sprintf( __( 'Please setup your <a href="%s">default settings</a> before using this feature.', 'mycred' ), admin_url( 'admin.php?page=myCRED_page_hooks' ) );
|
862 |
-
echo '<p>' . $message . '</p>';
|
863 |
-
}
|
864 |
-
|
865 |
-
// Prep Achievement Data
|
866 |
-
$prefs = $this->prefs;
|
867 |
-
$mycred = mycred_get_settings();
|
868 |
-
$achievement_data = get_post_meta( $post->ID, '_mycred_values', true );
|
869 |
-
if ( empty( $achievement_data ) )
|
870 |
-
$achievement_data = $prefs[$post->post_type]; ?>
|
871 |
-
|
872 |
-
<p><strong><?php echo $mycred->template_tags_general( __( '%plural% to Award', 'mycred' ) ); ?></strong></p>
|
873 |
-
<p>
|
874 |
-
<label class="screen-reader-text" for="mycred-values-creds"><?php echo $mycred->template_tags_general( __( '%plural% to Award', 'mycred' ) ); ?></label>
|
875 |
-
<input type="text" name="mycred_values[creds]" id="mycred-values-creds" value="<?php echo $achievement_data['creds']; ?>" size="8" />
|
876 |
-
<span class="description"><?php _e( 'Use zero to disable', 'mycred' ); ?></span>
|
877 |
-
</p>
|
878 |
-
<p><strong><?php _e( 'Log Template', 'mycred' ); ?></strong></p>
|
879 |
-
<p>
|
880 |
-
<label class="screen-reader-text" for="mycred-values-log"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
881 |
-
<input type="text" name="mycred_values[log]" id="mycred-values-log" value="<?php echo $achievement_data['log']; ?>" style="width:99%;" />
|
882 |
-
</p>
|
883 |
-
<?php
|
884 |
-
// If deduction is enabled
|
885 |
-
if ( $this->prefs[$post->post_type]['deduct'] == 1 ) { ?>
|
886 |
-
|
887 |
-
<p><strong><?php _e( 'Deduction Log Template', 'mycred' ); ?></strong></p>
|
888 |
-
<p>
|
889 |
-
<label class="screen-reader-text" for="mycred-values-log"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
890 |
-
<input type="text" name="mycred_values[deduct_log]" id="mycred-values-deduct-log" value="<?php echo $achievement_data['deduct_log']; ?>" style="width:99%;" />
|
891 |
-
</p>
|
892 |
-
<?php
|
893 |
-
}
|
894 |
-
}
|
895 |
-
|
896 |
-
/**
|
897 |
-
* Save Achievement Data
|
898 |
-
* @since 1.0.8
|
899 |
-
* @version 1.1
|
900 |
-
*/
|
901 |
-
public function save_achivement_data( $post_id ) {
|
902 |
-
// Post Type
|
903 |
-
$post_type = get_post_type( $post_id );
|
904 |
-
|
905 |
-
// Make sure this is a BadgeOS Object
|
906 |
-
if ( !in_array( $post_type, badgeos_get_achievement_types_slugs() ) ) return;
|
907 |
-
|
908 |
-
// Make sure preference is set
|
909 |
-
if ( !isset( $this->prefs[$post_type] ) || !isset( $_POST['mycred_values']['creds'] ) || !isset( $_POST['mycred_values']['log'] ) ) return;
|
910 |
-
|
911 |
-
// Only save if the settings differ, otherwise we default
|
912 |
-
if ( $_POST['mycred_values']['creds'] == $this->prefs[$post_type]['creds'] &&
|
913 |
-
$_POST['mycred_values']['log'] == $this->prefs[$post_type]['log'] ) return;
|
914 |
-
|
915 |
-
$data = array();
|
916 |
-
|
917 |
-
// Creds
|
918 |
-
if ( !empty( $_POST['mycred_values']['creds'] ) && $_POST['mycred_values']['creds'] != $this->prefs[$post_type]['creds'] )
|
919 |
-
$data['creds'] = $this->core->format_number( $_POST['mycred_values']['creds'] );
|
920 |
-
else
|
921 |
-
$data['creds'] = $this->core->format_number( $this->prefs[$post_type]['creds'] );
|
922 |
-
|
923 |
-
// Log template
|
924 |
-
if ( !empty( $_POST['mycred_values']['log'] ) && $_POST['mycred_values']['log'] != $this->prefs[$post_type]['log'] )
|
925 |
-
$data['log'] = strip_tags( $_POST['mycred_values']['log'] );
|
926 |
-
else
|
927 |
-
$data['log'] = strip_tags( $this->prefs[$post_type]['log'] );
|
928 |
-
|
929 |
-
// If deduction is enabled save log template
|
930 |
-
if ( $this->prefs[$post_type]['deduct'] == 1 ) {
|
931 |
-
if ( !empty( $_POST['mycred_values']['deduct_log'] ) && $_POST['mycred_values']['deduct_log'] != $this->prefs[$post_type]['deduct_log'] )
|
932 |
-
$data['deduct_log'] = strip_tags( $_POST['mycred_values']['deduct_log'] );
|
933 |
-
else
|
934 |
-
$data['deduct_log'] = strip_tags( $this->prefs[$post_type]['deduct_log'] );
|
935 |
-
}
|
936 |
-
|
937 |
-
// Update sales values
|
938 |
-
update_post_meta( $post_id, '_mycred_values', $data );
|
939 |
-
}
|
940 |
-
|
941 |
-
/**
|
942 |
-
* Award Achievement
|
943 |
-
* Run by BadgeOS when ever needed, we make sure settings are not zero otherwise
|
944 |
-
* award points whenever this hook fires.
|
945 |
-
* @since 1.0.8
|
946 |
-
* @version 1.0
|
947 |
-
*/
|
948 |
-
public function award_achievent( $user_id, $achievement_id ) {
|
949 |
-
$post_type = get_post_type( $achievement_id );
|
950 |
-
// Settings are not set
|
951 |
-
if ( !isset( $this->prefs[$post_type]['creds'] ) ) return;
|
952 |
-
|
953 |
-
// Get achievemen data
|
954 |
-
$achievement_data = get_post_meta( $achievement_id, '_mycred_values', true );
|
955 |
-
if ( empty( $achievement_data ) )
|
956 |
-
$achievement_data = $this->prefs[$post_type];
|
957 |
-
|
958 |
-
// Make sure its not disabled
|
959 |
-
if ( $achievement_data['creds'] == 0 ) return;
|
960 |
-
|
961 |
-
// Execute
|
962 |
-
$post_type_object = get_post_type_object( $post_type );
|
963 |
-
$this->core->add_creds(
|
964 |
-
$post_type_object->labels->name,
|
965 |
-
$user_id,
|
966 |
-
$achievement_data['creds'],
|
967 |
-
$achievement_data['log'],
|
968 |
-
$achievement_id,
|
969 |
-
array( 'ref_type' => 'post' )
|
970 |
-
);
|
971 |
-
}
|
972 |
-
|
973 |
-
/**
|
974 |
-
* Revoke Achievement
|
975 |
-
* Run by BadgeOS when a users achievement is revoed.
|
976 |
-
* @since 1.0.8
|
977 |
-
* @version 1.1
|
978 |
-
*/
|
979 |
-
public function revoke_achievement( $user_id, $achievement_id ) {
|
980 |
-
$post_type = get_post_type( $achievement_id );
|
981 |
-
// Settings are not set
|
982 |
-
if ( !isset( $this->prefs[$post_type]['creds'] ) ) return;
|
983 |
-
|
984 |
-
// Get achievemen data
|
985 |
-
$achievement_data = get_post_meta( $achievement_id, '_mycred_values', true );
|
986 |
-
if ( empty( $achievement_data ) )
|
987 |
-
$achievement_data = $this->prefs[$post_type];
|
988 |
-
|
989 |
-
// Make sure its not disabled
|
990 |
-
if ( $achievement_data['creds'] == 0 ) return;
|
991 |
-
|
992 |
-
// Execute
|
993 |
-
$post_type_object = get_post_type_object( $post_type );
|
994 |
-
$this->core->add_creds(
|
995 |
-
$post_type_object->labels->name,
|
996 |
-
$user_id,
|
997 |
-
0-$achievement_data['creds'],
|
998 |
-
$achievement_data['deduct_log'],
|
999 |
-
$achievement_id,
|
1000 |
-
array( 'ref_type' => 'post' )
|
1001 |
-
);
|
1002 |
-
}
|
1003 |
-
|
1004 |
-
/**
|
1005 |
-
* Preferences for BadgeOS
|
1006 |
-
* @since 1.0.8
|
1007 |
-
* @version 1.0
|
1008 |
-
*/
|
1009 |
-
public function preferences() {
|
1010 |
-
$prefs = $this->prefs;
|
1011 |
-
$badge_post_types = badgeos_get_achievement_types_slugs();
|
1012 |
-
foreach ( $badge_post_types as $post_type ) {
|
1013 |
-
if ( in_array( $post_type, apply_filters( 'mycred_badgeos_excludes', array( 'step' ) ) ) ) continue;
|
1014 |
-
if ( !isset( $prefs[$post_type] ) )
|
1015 |
-
$prefs[$post_type] = array(
|
1016 |
-
'creds' => 10,
|
1017 |
-
'log' => '',
|
1018 |
-
'deduct' => 1,
|
1019 |
-
'deduct_log' => '%plural% deduction'
|
1020 |
-
);
|
1021 |
-
|
1022 |
-
$post_type_object = get_post_type_object( $post_type );
|
1023 |
-
$title = sprintf( __( 'Default %s for %s', 'mycred' ), $this->core->plural(), $post_type_object->labels->singular_name ); ?>
|
1024 |
-
|
1025 |
-
<!-- Creds for -->
|
1026 |
-
<label for="<?php echo $this->field_id( array( $post_type, 'creds' ) ); ?>" class="subheader"><?php echo $title; ?></label>
|
1027 |
-
<ol>
|
1028 |
-
<li>
|
1029 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $post_type, 'creds' ) ); ?>" id="<?php echo $this->field_id( array( $post_type, 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs[$post_type]['creds'] ); ?>" size="8" /></div>
|
1030 |
-
<span class="description"><?php echo $this->core->template_tags_general( __( 'Use zero to disable users gaining %_plural%', 'mycred' ) ); ?></span>
|
1031 |
-
</li>
|
1032 |
-
<li class="empty"> </li>
|
1033 |
-
<li>
|
1034 |
-
<label for="<?php echo $this->field_id( array( $post_type, 'log' ) ); ?>"><?php _e( 'Default Log template', 'mycred' ); ?></label>
|
1035 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $post_type, 'log' ) ); ?>" id="<?php echo $this->field_id( array( $form_id, 'log' ) ); ?>" value="<?php echo $prefs[$post_type]['log']; ?>" class="long" /></div>
|
1036 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
1037 |
-
</li>
|
1038 |
-
<li>
|
1039 |
-
<input type="checkbox" name="<?php echo $this->field_name( array( $post_type, 'deduct' ) ); ?>" id="<?php echo $this->field_id( array( $post_type, 'deduct' ) ); ?>" <?php checked( $prefs[$post_type]['deduct'], 1 ); ?> value="1" />
|
1040 |
-
<label for="<?php echo $this->field_id( array( $post_type, 'deduct' ) ); ?>"><?php echo $this->core->template_tags_general( __( 'Deduct %_plural% if user looses ' . $post_type_object->labels->singular_name, 'mycred' ) ); ?></label>
|
1041 |
-
</li>
|
1042 |
-
<li class="empty"> </li>
|
1043 |
-
<li>
|
1044 |
-
<label for="<?php echo $this->field_id( array( $post_type, 'deduct_log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
1045 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $post_type, 'deduct_log' ) ); ?>" id="<?php echo $this->field_id( array( $form_id, 'deduct_log' ) ); ?>" value="<?php echo $prefs[$post_type]['deduct_log']; ?>" class="long" /></div>
|
1046 |
-
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
1047 |
-
</li>
|
1048 |
-
</ol>
|
1049 |
-
<?php
|
1050 |
-
}
|
1051 |
-
}
|
1052 |
-
}
|
1053 |
-
}
|
1054 |
-
|
1055 |
-
/**
|
1056 |
-
* Hook for WP-Polls Plugin
|
1057 |
-
* @since 1.1
|
1058 |
-
* @version 1.0
|
1059 |
-
*/
|
1060 |
-
if ( !class_exists( 'myCRED_Hook_WPPolls' ) && function_exists( 'vote_poll' ) ) {
|
1061 |
-
class myCRED_Hook_WPPolls extends myCRED_Hook {
|
1062 |
-
|
1063 |
-
/**
|
1064 |
-
* Construct
|
1065 |
-
*/
|
1066 |
-
function __construct( $hook_prefs ) {
|
1067 |
-
parent::__construct( array(
|
1068 |
-
'id' => 'wppolls',
|
1069 |
-
'defaults' => array(
|
1070 |
-
'creds' => 1,
|
1071 |
-
'log' => '%plural% for voting'
|
1072 |
-
)
|
1073 |
-
), $hook_prefs );
|
1074 |
-
}
|
1075 |
-
|
1076 |
-
/**
|
1077 |
-
* Run
|
1078 |
-
* @since 1.1
|
1079 |
-
* @version 1.0
|
1080 |
-
*/
|
1081 |
-
public function run() {
|
1082 |
-
add_action( 'wp_ajax_polls', array( $this, 'vote_poll' ), 1 );
|
1083 |
-
add_filter( 'mycred_parse_tags_poll', array( $this, 'parse_custom_tags' ), 10, 2 );
|
1084 |
-
}
|
1085 |
-
|
1086 |
-
/**
|
1087 |
-
* Poll Voting
|
1088 |
-
* @since 1.1
|
1089 |
-
* @version 1.0
|
1090 |
-
*/
|
1091 |
-
public function vote_poll() {
|
1092 |
-
if ( isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'polls' && is_user_logged_in() ) {
|
1093 |
-
// Get Poll ID
|
1094 |
-
$poll_id = ( isset( $_REQUEST['poll_id'] ) ? intval( $_REQUEST['poll_id'] ) : 0 );
|
1095 |
-
|
1096 |
-
// Ensure Poll ID Is Valid
|
1097 |
-
if ( $poll_id != 0 ) {
|
1098 |
-
// Verify Referer
|
1099 |
-
if ( check_ajax_referer( 'poll_' . $poll_id . '-nonce', 'poll_' . $poll_id . '_nonce', false ) ) {
|
1100 |
-
// Which View
|
1101 |
-
switch ( $_REQUEST['view'] ) {
|
1102 |
-
case 'process':
|
1103 |
-
$poll_aid = $_POST["poll_$poll_id"];
|
1104 |
-
$poll_aid_array = array_unique( array_map( 'intval', explode( ',', $poll_aid ) ) );
|
1105 |
-
if ( $poll_id > 0 && !empty( $poll_aid_array ) && check_allowtovote() ) {
|
1106 |
-
$check_voted = check_voted( $poll_id );
|
1107 |
-
if ( $check_voted == 0 ) {
|
1108 |
-
$user_id = get_current_user_id();
|
1109 |
-
// Make sure we are not excluded
|
1110 |
-
if ( !$this->core->exclude_user( $user_id ) ) {
|
1111 |
-
$this->core->add_creds(
|
1112 |
-
'poll_voting',
|
1113 |
-
$user_id,
|
1114 |
-
$this->prefs['creds'],
|
1115 |
-
$this->prefs['log'],
|
1116 |
-
$poll_id,
|
1117 |
-
array( 'ref_type' => 'poll' )
|
1118 |
-
);
|
1119 |
-
}
|
1120 |
-
}
|
1121 |
-
}
|
1122 |
-
break;
|
1123 |
-
}
|
1124 |
-
}
|
1125 |
-
}
|
1126 |
-
}
|
1127 |
-
}
|
1128 |
-
|
1129 |
-
/**
|
1130 |
-
* Parse Custom Tags in Log
|
1131 |
-
* @since 1.1
|
1132 |
-
* @version 1.0
|
1133 |
-
*/
|
1134 |
-
public function parse_custom_tags( $content, $log_entry ) {
|
1135 |
-
$poll_id = $log_entry->ref_id;
|
1136 |
-
$content = str_replace( '%poll_id%', $poll_id, $content );
|
1137 |
-
$content = str_replace( '%poll_question%', $this->get_poll_name( $poll_id ), $content );
|
1138 |
-
|
1139 |
-
return $content;
|
1140 |
-
}
|
1141 |
-
|
1142 |
-
/**
|
1143 |
-
* Get Poll Name (Question)
|
1144 |
-
* @since 1.1
|
1145 |
-
* @version 1.0
|
1146 |
-
*/
|
1147 |
-
protected function get_poll_name( $poll_id ) {
|
1148 |
-
global $wpdb;
|
1149 |
-
|
1150 |
-
$sql = "SELECT pollq_question FROM $wpdb->pollsq WHERE pollq_id = %d ";
|
1151 |
-
return $wpdb->get_var( $wpdb->prepare( $sql, $poll_id ) );
|
1152 |
-
}
|
1153 |
-
|
1154 |
-
/**
|
1155 |
-
* Preferences for WP-Polls
|
1156 |
-
* @since 1.1
|
1157 |
-
* @version 1.0
|
1158 |
-
*/
|
1159 |
-
public function preferences() {
|
1160 |
-
$prefs = $this->prefs; ?>
|
1161 |
-
|
1162 |
-
<label class="subheader"><?php echo $this->core->plural(); ?></label>
|
1163 |
-
<ol>
|
1164 |
-
<li>
|
1165 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( 'creds' ); ?>" id="<?php echo $this->field_id( 'creds' ); ?>" value="<?php echo $this->core->format_number( $prefs['creds'] ); ?>" size="8" /></div>
|
1166 |
-
</li>
|
1167 |
-
</ol>
|
1168 |
-
<label class="subheader"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
1169 |
-
<ol>
|
1170 |
-
<li>
|
1171 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( 'log' ); ?>" id="<?php echo $this->field_id( 'log' ); ?>" value="<?php echo $prefs['log']; ?>" class="long" /></div>
|
1172 |
-
<span class="description"><?php _e( 'Available template tags: General. You can also use %poll_id% and %poll_question%.', 'mycred' ); ?></span>
|
1173 |
-
</li>
|
1174 |
-
</ol>
|
1175 |
-
<?php unset( $this );
|
1176 |
-
}
|
1177 |
-
}
|
1178 |
-
}
|
1179 |
-
|
1180 |
-
/**
|
1181 |
-
* Hook for WP Favorite Posts
|
1182 |
-
* @since 1.1
|
1183 |
-
* @version 1.0
|
1184 |
-
*/
|
1185 |
-
if ( !class_exists( 'myCRED_Hook_WPFavorite' ) && function_exists( 'wp_favorite_posts' ) ) {
|
1186 |
-
class myCRED_Hook_WPFavorite extends myCRED_Hook {
|
1187 |
-
|
1188 |
-
/**
|
1189 |
-
* Construct
|
1190 |
-
*/
|
1191 |
-
function __construct( $hook_prefs ) {
|
1192 |
-
parent::__construct( array(
|
1193 |
-
'id' => 'wpfavorite',
|
1194 |
-
'defaults' => array(
|
1195 |
-
'add' => array(
|
1196 |
-
'creds' => 1,
|
1197 |
-
'log' => '%plural% for adding a post as favorite'
|
1198 |
-
),
|
1199 |
-
'remove' => array(
|
1200 |
-
'creds' => 1,
|
1201 |
-
'log' => '%plural% deduction for removing a post from favorites'
|
1202 |
-
)
|
1203 |
-
)
|
1204 |
-
), $hook_prefs );
|
1205 |
-
}
|
1206 |
-
|
1207 |
-
/**
|
1208 |
-
* Run
|
1209 |
-
* @since 1.1
|
1210 |
-
* @version 1.0
|
1211 |
-
*/
|
1212 |
-
public function run() {
|
1213 |
-
if ( $this->prefs['add']['creds'] != 0 )
|
1214 |
-
add_action( 'wpfp_after_add', array( $this, 'add_favorite' ) );
|
1215 |
-
|
1216 |
-
if ( $this->prefs['remove']['creds'] != 0 )
|
1217 |
-
add_action( 'wpfp_after_remove', array( $this, 'remove_favorite' ) );
|
1218 |
-
}
|
1219 |
-
|
1220 |
-
/**
|
1221 |
-
* Add Favorite
|
1222 |
-
* @since 1.1
|
1223 |
-
* @version 1.0
|
1224 |
-
*/
|
1225 |
-
public function add_favorite( $post_id ) {
|
1226 |
-
// Must be logged in
|
1227 |
-
if ( !is_user_logged_in() ) return;
|
1228 |
-
|
1229 |
-
$user_id = get_current_user_id();
|
1230 |
-
// Check for exclusion
|
1231 |
-
if ( $this->core->exclude_user( $user_id ) ) return;
|
1232 |
-
|
1233 |
-
// Make sure this is unique event
|
1234 |
-
if ( $this->core->has_entry( 'add_favorite_post', $post_id, $user_id ) ) return;
|
1235 |
-
|
1236 |
-
// Execute
|
1237 |
-
$this->core->add_creds(
|
1238 |
-
'add_favorite_post',
|
1239 |
-
$user_id,
|
1240 |
-
$this->prefs['add']['creds'],
|
1241 |
-
$this->prefs['add']['log'],
|
1242 |
-
$post_id,
|
1243 |
-
array( 'ref_type' => 'post' )
|
1244 |
-
);
|
1245 |
-
}
|
1246 |
-
|
1247 |
-
/**
|
1248 |
-
* Remove Favorite
|
1249 |
-
* @since 1.1
|
1250 |
-
* @version 1.0
|
1251 |
-
*/
|
1252 |
-
public function remove_favorite( $post_id ) {
|
1253 |
-
// Must be logged in
|
1254 |
-
if ( !is_user_logged_in() ) return;
|
1255 |
-
|
1256 |
-
$user_id = get_current_user_id();
|
1257 |
-
// Check for exclusion
|
1258 |
-
if ( $this->core->exclude_user( $user_id ) ) return;
|
1259 |
-
|
1260 |
-
// Make sure this is unique event
|
1261 |
-
if ( $this->core->has_entry( 'favorite_post_removed', $post_id, $user_id ) ) return;
|
1262 |
-
|
1263 |
-
// Execute
|
1264 |
-
$this->core->add_creds(
|
1265 |
-
'favorite_post_removed',
|
1266 |
-
$user_id,
|
1267 |
-
$this->prefs['remove']['creds'],
|
1268 |
-
$this->prefs['remove']['log'],
|
1269 |
-
$post_id,
|
1270 |
-
array( 'ref_type' => 'post' )
|
1271 |
-
);
|
1272 |
-
}
|
1273 |
-
|
1274 |
-
/**
|
1275 |
-
* Preferences for WP-Polls
|
1276 |
-
* @since 1.1
|
1277 |
-
* @version 1.0
|
1278 |
-
*/
|
1279 |
-
public function preferences() {
|
1280 |
-
$prefs = $this->prefs; ?>
|
1281 |
-
|
1282 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'add' => 'creds' ) ); ?>"><?php _e( 'Adding Content to Favorites', 'mycred' ); ?></label>
|
1283 |
-
<ol>
|
1284 |
-
<li>
|
1285 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'add' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'add' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['add']['creds'] ); ?>" size="8" /></div>
|
1286 |
-
</li>
|
1287 |
-
</ol>
|
1288 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'add' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
1289 |
-
<ol>
|
1290 |
-
<li>
|
1291 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'add' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'add' => 'log' ) ); ?>" value="<?php echo $prefs['add']['log']; ?>" class="long" /></div>
|
1292 |
-
<span class="description"><?php _e( 'Available template tags: General and Post Related', 'mycred' ); ?></span>
|
1293 |
-
</li>
|
1294 |
-
</ol>
|
1295 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'remove' => 'creds' ) ); ?>"><?php _e( 'Removing Content from Favorites', 'mycred' ); ?></label>
|
1296 |
-
<ol>
|
1297 |
-
<li>
|
1298 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'remove' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'remove' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['remove']['creds'] ); ?>" size="8" /></div>
|
1299 |
-
</li>
|
1300 |
-
</ol>
|
1301 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'remove' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
1302 |
-
<ol>
|
1303 |
-
<li>
|
1304 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'remove' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'remove' => 'log' ) ); ?>" value="<?php echo $prefs['remove']['log']; ?>" class="long" /></div>
|
1305 |
-
<span class="description"><?php _e( 'Available template tags: General and Post Related', 'mycred' ); ?></span>
|
1306 |
-
</li>
|
1307 |
-
</ol>
|
1308 |
-
<?php unset( $this );
|
1309 |
-
}
|
1310 |
-
}
|
1311 |
-
}
|
1312 |
-
|
1313 |
-
/**
|
1314 |
-
* Hook for Events Manager
|
1315 |
-
* @since 1.1
|
1316 |
-
* @version 1.0
|
1317 |
-
*/
|
1318 |
-
if ( !class_exists( 'myCRED_Hook_Events_Manager' ) && function_exists( 'bp_em_init' ) ) {
|
1319 |
-
class myCRED_Hook_Events_Manager extends myCRED_Hook {
|
1320 |
-
|
1321 |
-
/**
|
1322 |
-
* Construct
|
1323 |
-
*/
|
1324 |
-
function __construct( $hook_prefs ) {
|
1325 |
-
parent::__construct( array(
|
1326 |
-
'id' => 'eventsmanager',
|
1327 |
-
'defaults' => array(
|
1328 |
-
'attend' => array(
|
1329 |
-
'creds' => 1,
|
1330 |
-
'log' => '%plural% for attending an %link_with_title%'
|
1331 |
-
),
|
1332 |
-
'cancel' => array(
|
1333 |
-
'creds' => 1,
|
1334 |
-
'log' => '%plural% for cancelled attendance at %link_with_title%'
|
1335 |
-
)
|
1336 |
-
)
|
1337 |
-
), $hook_prefs );
|
1338 |
-
}
|
1339 |
-
|
1340 |
-
/**
|
1341 |
-
* Run
|
1342 |
-
* @since 1.1
|
1343 |
-
* @version 1.0
|
1344 |
-
*/
|
1345 |
-
public function run() {
|
1346 |
-
if ( $this->prefs['attend']['creds'] != 0 && get_option( 'dbem_bookings_approval' ) != 0 )
|
1347 |
-
add_filter( 'em_bookings_add', array( $this, 'new_booking' ), 10, 2 );
|
1348 |
-
|
1349 |
-
add_filter( 'em_booking_set_status', array( $this, 'adjust_booking' ), 10, 2 );
|
1350 |
-
}
|
1351 |
-
|
1352 |
-
/**
|
1353 |
-
* New Booking
|
1354 |
-
* When users can make their own bookings.
|
1355 |
-
* @since 1.1
|
1356 |
-
* @version 1.1
|
1357 |
-
*/
|
1358 |
-
public function new_booking( $result, $booking ) {
|
1359 |
-
$user_id = $booking->person->id;
|
1360 |
-
// Check for exclusion
|
1361 |
-
if ( $this->core->exclude_user( $user_id ) ) return $result;
|
1362 |
-
|
1363 |
-
// Successfull Booking
|
1364 |
-
if ( $result === true ) {
|
1365 |
-
// Execute
|
1366 |
-
$this->core->add_creds(
|
1367 |
-
'event_booking',
|
1368 |
-
$user_id,
|
1369 |
-
$this->prefs['attend']['creds'],
|
1370 |
-
$this->prefs['attend']['log'],
|
1371 |
-
$booking->event->post_id,
|
1372 |
-
array( 'ref_type' => 'post' )
|
1373 |
-
);
|
1374 |
-
}
|
1375 |
-
|
1376 |
-
return $result;
|
1377 |
-
}
|
1378 |
-
|
1379 |
-
/**
|
1380 |
-
* Adjust Booking
|
1381 |
-
* Incase an administrator needs to approve bookings first or if booking gets
|
1382 |
-
* cancelled.
|
1383 |
-
* @since 1.1
|
1384 |
-
* @version 1.1
|
1385 |
-
*/
|
1386 |
-
public function adjust_booking( $result, $booking ) {
|
1387 |
-
$user_id = $booking->person->id;
|
1388 |
-
// Check for exclusion
|
1389 |
-
if ( $this->core->exclude_user( $user_id ) ) return $result;
|
1390 |
-
|
1391 |
-
// If the new status is 'approved', add points
|
1392 |
-
if ( $booking->booking_status == 1 && $booking->previous_status != 1 ) {
|
1393 |
-
// If we do not award points for attending an event bail now
|
1394 |
-
if ( $this->prefs['attend']['creds'] == 0 ) return $result;
|
1395 |
-
|
1396 |
-
// Execute
|
1397 |
-
$this->core->add_creds(
|
1398 |
-
'event_attendance',
|
1399 |
-
$user_id,
|
1400 |
-
$this->prefs['attend']['creds'],
|
1401 |
-
$this->prefs['attend']['log'],
|
1402 |
-
$booking->event->post_id,
|
1403 |
-
array( 'ref_type' => 'post' )
|
1404 |
-
);
|
1405 |
-
}
|
1406 |
-
// Else if status got changed from previously 'approved', remove points given
|
1407 |
-
elseif ( $booking->booking_status != 1 && $booking->previous_status == 1 ) {
|
1408 |
-
// If we do not deduct points for cancellation bail now
|
1409 |
-
if ( $this->prefs['cancel']['creds'] == 0 ) return $result;
|
1410 |
-
|
1411 |
-
// Execute
|
1412 |
-
$this->core->add_creds(
|
1413 |
-
'cancelled_event_attendance',
|
1414 |
-
$user_id,
|
1415 |
-
$this->prefs['cancel']['creds'],
|
1416 |
-
$this->prefs['cancel']['log'],
|
1417 |
-
$booking->event->post_id,
|
1418 |
-
array( 'ref_type' => 'post' )
|
1419 |
-
);
|
1420 |
-
}
|
1421 |
-
|
1422 |
-
return $result;
|
1423 |
-
}
|
1424 |
-
|
1425 |
-
/**
|
1426 |
-
* Preferences for Events Manager
|
1427 |
-
* @since 1.1
|
1428 |
-
* @version 1.0
|
1429 |
-
*/
|
1430 |
-
public function preferences() {
|
1431 |
-
$prefs = $this->prefs; ?>
|
1432 |
-
|
1433 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'attend' => 'creds' ) ); ?>"><?php _e( 'Attending Event', 'mycred' ); ?></label>
|
1434 |
-
<ol>
|
1435 |
-
<li>
|
1436 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'attend' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'attend' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['attend']['creds'] ); ?>" size="8" /></div>
|
1437 |
-
</li>
|
1438 |
-
</ol>
|
1439 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'attend' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
1440 |
-
<ol>
|
1441 |
-
<li>
|
1442 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'attend' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'attend' => 'log' ) ); ?>" value="<?php echo $prefs['attend']['log']; ?>" class="long" /></div>
|
1443 |
-
<span class="description"><?php _e( 'Available template tags: General and Post Related', 'mycred' ); ?></span>
|
1444 |
-
</li>
|
1445 |
-
</ol>
|
1446 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'cancel' => 'creds' ) ); ?>"><?php _e( 'Cancelling Attendance', 'mycred' ); ?></label>
|
1447 |
-
<ol>
|
1448 |
-
<li>
|
1449 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'cancel' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'cancel' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['cancel']['creds'] ); ?>" size="8" /></div>
|
1450 |
-
</li>
|
1451 |
-
</ol>
|
1452 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'cancel' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
1453 |
-
<ol>
|
1454 |
-
<li>
|
1455 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'cancel' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'cancel' => 'log' ) ); ?>" value="<?php echo $prefs['cancel']['log']; ?>" class="long" /></div>
|
1456 |
-
<span class="description"><?php _e( 'Available template tags: General and Post Related', 'mycred' ); ?></span>
|
1457 |
-
</li>
|
1458 |
-
</ol>
|
1459 |
-
<?php unset( $this );
|
1460 |
-
}
|
1461 |
-
}
|
1462 |
-
}
|
1463 |
-
|
1464 |
-
/**
|
1465 |
-
* Hook for GD Star Rating
|
1466 |
-
* @since 1.2
|
1467 |
-
* @version 1.0
|
1468 |
-
*/
|
1469 |
-
if ( !class_exists( 'myCRED_Hook_GD_Star_Rating' ) && defined( 'STARRATING_DEBUG' ) ) {
|
1470 |
-
class myCRED_Hook_GD_Star_Rating extends myCRED_Hook {
|
1471 |
-
|
1472 |
-
/**
|
1473 |
-
* Construct
|
1474 |
-
*/
|
1475 |
-
function __construct( $hook_prefs ) {
|
1476 |
-
parent::__construct( array(
|
1477 |
-
'id' => 'gdstars',
|
1478 |
-
'defaults' => array(
|
1479 |
-
'star_rating' => array(
|
1480 |
-
'creds' => 1,
|
1481 |
-
'log' => '%plural% for rating'
|
1482 |
-
),
|
1483 |
-
'up_down' => array(
|
1484 |
-
'creds' => 1,
|
1485 |
-
'log' => '%plural% for rating'
|
1486 |
-
)
|
1487 |
-
)
|
1488 |
-
), $hook_prefs );
|
1489 |
-
}
|
1490 |
-
|
1491 |
-
/**
|
1492 |
-
* Run
|
1493 |
-
* @since 1.2
|
1494 |
-
* @version 1.0
|
1495 |
-
*/
|
1496 |
-
public function run() {
|
1497 |
-
add_action( 'gdsr_vote', array( $this, 'vote' ), 10, 4 );
|
1498 |
-
}
|
1499 |
-
|
1500 |
-
/**
|
1501 |
-
* Vote
|
1502 |
-
* @since 1.2
|
1503 |
-
* @version 1.0
|
1504 |
-
*/
|
1505 |
-
public function vote( $vote_value, $post_id, $vote_tpl, $vote_size ) {
|
1506 |
-
if ( !is_user_logged_in() ) return;
|
1507 |
-
|
1508 |
-
if ( is_string( $vote_value ) && $this->prefs['up_down']['creds'] == 0 ) return;
|
1509 |
-
elseif ( !is_string( $vote_value ) && $this->prefs['star_rating']['creds'] == 0 ) return;
|
1510 |
-
|
1511 |
-
if ( is_string( $vote_value ) ) {
|
1512 |
-
$vote = 'up_down';
|
1513 |
-
$star = false;
|
1514 |
-
}
|
1515 |
-
else {
|
1516 |
-
$vote = 'star_rating';
|
1517 |
-
$star = true;
|
1518 |
-
}
|
1519 |
-
$user_id = get_current_user_id();
|
1520 |
-
|
1521 |
-
if ( $this->core->has_entry( 'rating', $post_id, $user_id, $vote ) ) return;
|
1522 |
-
|
1523 |
-
// Execute
|
1524 |
-
$this->core->add_creds(
|
1525 |
-
'rating',
|
1526 |
-
$user_id,
|
1527 |
-
( $star ) ? $this->prefs['star_rating']['creds'] : $this->prefs['up_down']['creds'],
|
1528 |
-
( $star ) ? $this->prefs['star_rating']['log'] : $this->prefs['up_down']['log'],
|
1529 |
-
$post_id,
|
1530 |
-
$vote
|
1531 |
-
);
|
1532 |
-
}
|
1533 |
-
|
1534 |
-
/**
|
1535 |
-
* Preferences for GD Star Rating
|
1536 |
-
* @since 1.2
|
1537 |
-
* @version 1.0
|
1538 |
-
*/
|
1539 |
-
public function preferences() {
|
1540 |
-
$prefs = $this->prefs; ?>
|
1541 |
-
|
1542 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'star_rating' => 'creds' ) ); ?>"><?php _e( 'Rating', 'mycred' ); ?></label>
|
1543 |
-
<ol>
|
1544 |
-
<li>
|
1545 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'star_rating' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'star_rating' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['star_rating']['creds'] ); ?>" size="8" /></div>
|
1546 |
-
</li>
|
1547 |
-
</ol>
|
1548 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'star_rating' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
1549 |
-
<ol>
|
1550 |
-
<li>
|
1551 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'star_rating' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'star_rating' => 'log' ) ); ?>" value="<?php echo $prefs['star_rating']['log']; ?>" class="long" /></div>
|
1552 |
-
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
1553 |
-
</li>
|
1554 |
-
</ol>
|
1555 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'up_down' => 'creds' ) ); ?>"><?php _e( 'Up / Down Vote', 'mycred' ); ?></label>
|
1556 |
-
<ol>
|
1557 |
-
<li>
|
1558 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'up_down' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'up_down' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['up_down']['creds'] ); ?>" size="8" /></div>
|
1559 |
-
</li>
|
1560 |
-
</ol>
|
1561 |
-
<label class="subheader" for="<?php echo $this->field_id( array( 'up_down' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
1562 |
-
<ol>
|
1563 |
-
<li>
|
1564 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'up_down' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'up_down' => 'log' ) ); ?>" value="<?php echo $prefs['up_down']['log']; ?>" class="long" /></div>
|
1565 |
-
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
1566 |
-
</li>
|
1567 |
-
</ol>
|
1568 |
-
<?php unset( $this );
|
1569 |
-
}
|
1570 |
-
}
|
1571 |
-
}
|
1572 |
-
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
modules/mycred-module-subscriptions.php
DELETED
@@ -1,508 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Subscription related Hooks
|
4 |
-
* Adds support for Jetpack
|
5 |
-
*
|
6 |
-
* @since 1.0.5
|
7 |
-
* @version 1.0
|
8 |
-
*/
|
9 |
-
if ( !defined( 'myCRED_VERSION' ) ) exit;
|
10 |
-
/**
|
11 |
-
* Hooks for Jetpack
|
12 |
-
* Adds support for Jetpack.
|
13 |
-
*
|
14 |
-
* @since 1.0.5
|
15 |
-
* @version 1.0
|
16 |
-
*/
|
17 |
-
if ( !class_exists( 'myCRED_Hook_Jetpack' ) && defined( 'JETPACK__PLUGIN_DIR' ) ) {
|
18 |
-
class myCRED_Hook_Jetpack extends myCRED_Hook {
|
19 |
-
|
20 |
-
/**
|
21 |
-
* Construct
|
22 |
-
*/
|
23 |
-
function __construct( $hook_prefs ) {
|
24 |
-
parent::__construct( array(
|
25 |
-
'id' => 'jetpack',
|
26 |
-
'defaults' => array(
|
27 |
-
'subscribe_site' => array(
|
28 |
-
'creds' => 1,
|
29 |
-
'log' => '%plural% for site subscription'
|
30 |
-
),
|
31 |
-
'subscribe_comment' => array(
|
32 |
-
'creds' => 1,
|
33 |
-
'log' => '%plural% for comment subscription'
|
34 |
-
)
|
35 |
-
)
|
36 |
-
), $hook_prefs );
|
37 |
-
}
|
38 |
-
|
39 |
-
/**
|
40 |
-
* Run
|
41 |
-
* @since 1.0.5
|
42 |
-
* @version 1.0
|
43 |
-
*/
|
44 |
-
public function run() {
|
45 |
-
// Site Subscriptions
|
46 |
-
if ( $this->prefs['subscribe_site']['creds'] != 0 ) {
|
47 |
-
add_filter( 'wp_redirect', array( $this, 'submit_redirect' ), 1 );
|
48 |
-
}
|
49 |
-
|
50 |
-
// Comment Subscriptions
|
51 |
-
if ( $this->prefs['subscribe_comment']['creds'] != 0 ) {
|
52 |
-
add_action( 'comment_post', array( $this, 'comment_subscribe_submit' ), 99, 2 );
|
53 |
-
}
|
54 |
-
|
55 |
-
add_action( 'mycred_admin_init', array( $this, 'admin_init' ) );
|
56 |
-
}
|
57 |
-
|
58 |
-
/**
|
59 |
-
* Admin Init
|
60 |
-
* Check pending emails if they have confirmed their subscription. If it's confirmed
|
61 |
-
* and no previous points have been awarded we do that here. Else if the email is marked
|
62 |
-
* as pending we save it for a later try.
|
63 |
-
*
|
64 |
-
* @since 1.0.5
|
65 |
-
* @version 1.0
|
66 |
-
*/
|
67 |
-
public function admin_init() {
|
68 |
-
$types = array();
|
69 |
-
|
70 |
-
if ( $this->prefs['subscribe_site']['creds'] != 0 )
|
71 |
-
$types[] = 'site';
|
72 |
-
|
73 |
-
if ( $this->prefs['subscribe_comment']['creds'] != 0 )
|
74 |
-
$types[] = 'comment';
|
75 |
-
|
76 |
-
// Not enabled, bail
|
77 |
-
if ( empty( $types ) ) return;
|
78 |
-
|
79 |
-
foreach ( $types as $type ) {
|
80 |
-
// Get list if it exist
|
81 |
-
if ( false === ( $pending = get_option( 'mycred_jetpack_' . $type . '_pendings' ) ) )
|
82 |
-
continue;
|
83 |
-
|
84 |
-
// Make sure list is not empty
|
85 |
-
if ( empty( $pending ) ) {
|
86 |
-
// Clean up before exit
|
87 |
-
delete_option( 'mycred_jetpack_' . $type . '_pendings' );
|
88 |
-
continue;
|
89 |
-
}
|
90 |
-
|
91 |
-
$new = array();
|
92 |
-
foreach ( $pending as $id => $email ) {
|
93 |
-
// Validate
|
94 |
-
if ( trim( $email ) == '' || !is_email( $email ) ) continue;
|
95 |
-
|
96 |
-
// Make sure user exist
|
97 |
-
$user = get_user_by( 'email', $email );
|
98 |
-
if ( $user === false ) continue;
|
99 |
-
|
100 |
-
// Check for exclusion
|
101 |
-
if ( $this->core->exclude_user( $user->ID ) === true ) continue;
|
102 |
-
|
103 |
-
// Make sure this is a unique event
|
104 |
-
if ( $this->core->has_entry( 'site_subscription', '', $user->ID ) ) continue;
|
105 |
-
|
106 |
-
// Site Subscriptions
|
107 |
-
if ( $type == 'site' ) {
|
108 |
-
// Check subscription status
|
109 |
-
$subscription = $this->check_jetpack_subscription( $email );
|
110 |
-
// Active status = award points if not already
|
111 |
-
if ( $subscription == 'active' ) {
|
112 |
-
// Execute
|
113 |
-
$this->core->add_creds(
|
114 |
-
'site_subscription',
|
115 |
-
$user->ID,
|
116 |
-
$this->prefs['subscribe_site']['creds'],
|
117 |
-
$this->prefs['subscribe_site']['log']
|
118 |
-
);
|
119 |
-
}
|
120 |
-
// Pending status = save so we try again later
|
121 |
-
elseif ( $subscription == 'pending' ) {
|
122 |
-
$new[] = $email;
|
123 |
-
continue;
|
124 |
-
}
|
125 |
-
}
|
126 |
-
// Comment Subscriptions
|
127 |
-
else {
|
128 |
-
$comment = get_comment( $id );
|
129 |
-
if ( empty( $comment ) ) continue;
|
130 |
-
|
131 |
-
// If no user id exist, check and see if the authors email is used by someone
|
132 |
-
if ( $comment->user_id == 0 ) {
|
133 |
-
$user = get_user_by( 'email', $email );
|
134 |
-
if ( $user === false ) continue;
|
135 |
-
}
|
136 |
-
// Make sure the user still exist
|
137 |
-
else {
|
138 |
-
$user = get_user_by( 'id', $comment->user_id );
|
139 |
-
if ( $user === false ) continue;
|
140 |
-
}
|
141 |
-
|
142 |
-
// Check for exclusion
|
143 |
-
if ( $this->core->exclude_user( $user->ID ) === true ) continue;
|
144 |
-
|
145 |
-
// Start with making sure this is a unique event
|
146 |
-
if ( $this->core->has_entry( 'comment_subscription', $id, $comment->user_id ) ) continue;
|
147 |
-
|
148 |
-
$post_ids = array();
|
149 |
-
|
150 |
-
if ( isset( $_REQUEST['subscribe_comments'] ) )
|
151 |
-
$post_ids[] = $comment->comment_post_ID;
|
152 |
-
|
153 |
-
// Attempt to subscribe again to get results
|
154 |
-
$subscription = $this->check_jetpack_subscription( $email, array( $comment->comment_post_ID ) );
|
155 |
-
|
156 |
-
// Subscription is active
|
157 |
-
if ( $subscription == 'active' ) {
|
158 |
-
// Execute
|
159 |
-
$this->core->add_creds(
|
160 |
-
'comment_subscription',
|
161 |
-
$user->ID,
|
162 |
-
$this->prefs['subscribe_comment']['creds'],
|
163 |
-
$this->prefs['subscribe_comment']['log'],
|
164 |
-
$id,
|
165 |
-
array( 'ref_type' => 'comment' )
|
166 |
-
);
|
167 |
-
}
|
168 |
-
// Subscription pending
|
169 |
-
elseif ( $subscription == 'pending' ) {
|
170 |
-
$new[$id] = $email;
|
171 |
-
}
|
172 |
-
}
|
173 |
-
}
|
174 |
-
|
175 |
-
// If we still have pending emails save for later
|
176 |
-
if ( !empty( $new ) )
|
177 |
-
update_option( 'mycred_jetpack_' . $type . '_pendings', $new );
|
178 |
-
// Else delete
|
179 |
-
else
|
180 |
-
delete_option( 'mycred_jetpack_' . $type . '_pendings' );
|
181 |
-
}
|
182 |
-
}
|
183 |
-
|
184 |
-
/**
|
185 |
-
* Submit Redirect
|
186 |
-
* Checks if Jetpack signup has been executed by parsing the redirect URL.
|
187 |
-
* @since 1.0.5
|
188 |
-
* @version 1.0
|
189 |
-
*/
|
190 |
-
public function submit_redirect( $location ) {
|
191 |
-
// Make sure we have what we need
|
192 |
-
if ( !isset( $_REQUEST['jetpack_subscriptions_widget'] ) || !isset( $_REQUEST['email'] ) || empty( $_REQUEST['email'] ) )
|
193 |
-
return $location;
|
194 |
-
|
195 |
-
// Make sure Jetpack has executed
|
196 |
-
if ( !isset( $_GET['subscribe'] ) || $_GET['subscribe'] != 'success' )
|
197 |
-
return $location;
|
198 |
-
|
199 |
-
// Make sure user exist
|
200 |
-
$user = get_user_by( 'email', $_REQUEST['email'] );
|
201 |
-
if ( $user === false )
|
202 |
-
return $location;
|
203 |
-
|
204 |
-
// Check for exclusion
|
205 |
-
if ( $this->core->exclude_user( $user->ID ) === true )
|
206 |
-
return $location;
|
207 |
-
|
208 |
-
// Check that this is a unique event
|
209 |
-
if ( $this->core->has_entry( 'site_subscription', '', $user->ID ) )
|
210 |
-
return $location;
|
211 |
-
|
212 |
-
$this->site_subscribe( $_REQUEST['email'], $user->ID );
|
213 |
-
|
214 |
-
return $location;
|
215 |
-
}
|
216 |
-
|
217 |
-
/**
|
218 |
-
* Comment Subscribe Submit
|
219 |
-
* Manage the request to subscribe to comments and/or to the blog
|
220 |
-
* Based on Jetpack Subscriptions
|
221 |
-
* @see jetpack/modules/subscriptions.php
|
222 |
-
* @since 1.0.5
|
223 |
-
* @version 1.0
|
224 |
-
*/
|
225 |
-
public function comment_subscribe_submit( $comment_id, $approved ) {
|
226 |
-
if ( 'spam' === $approved ) {
|
227 |
-
return;
|
228 |
-
}
|
229 |
-
|
230 |
-
if ( !isset( $_REQUEST['subscribe_comments'] ) && !isset( $_REQUEST['subscribe_blog'] ) )
|
231 |
-
return;
|
232 |
-
|
233 |
-
$comment = get_comment( $comment_id );
|
234 |
-
|
235 |
-
// If no user id exist, check and see if the authors email is used by someone
|
236 |
-
if ( $comment->user_id == 0 ) {
|
237 |
-
$user = get_user_by( 'email', $comment->comment_author_email );
|
238 |
-
if ( $user === false ) return;
|
239 |
-
}
|
240 |
-
// Make sure the user still exist
|
241 |
-
else {
|
242 |
-
$user = get_user_by( 'id', $comment->user_id );
|
243 |
-
if ( $user === false ) return;
|
244 |
-
}
|
245 |
-
|
246 |
-
// Check for exclusion
|
247 |
-
if ( $this->core->exclude_user( $user->ID ) === true ) return;
|
248 |
-
|
249 |
-
// Start with making sure this is a unique event
|
250 |
-
if ( $this->core->has_entry( 'comment_subscription', $comment_id, $user->ID ) ) return;
|
251 |
-
|
252 |
-
// Handle comment subscription
|
253 |
-
if ( isset( $_REQUEST['subscribe_comments'] ) )
|
254 |
-
$this->comment_subscribe( $comment->comment_author_email, $comment->comment_post_ID, $user->ID, $comment_id );
|
255 |
-
|
256 |
-
// Handle site subscription
|
257 |
-
if ( isset( $_REQUEST['subscribe_blog'] ) )
|
258 |
-
$this->site_subscribe( $comment->comment_author_email, $user->ID );
|
259 |
-
}
|
260 |
-
|
261 |
-
/**
|
262 |
-
* Comment Subscribe
|
263 |
-
* Awards points for active subscriptions or adds email and comment id to the pending array.
|
264 |
-
* Note! This methods should only be called once the primary checks have been made, including making sure
|
265 |
-
* the user exist, is not excluded and that this is a unique event!
|
266 |
-
* @since 1.0.5
|
267 |
-
* @version 1.0
|
268 |
-
*/
|
269 |
-
protected function comment_subscribe( $email = '', $post_ids = '', $user_id = 0, $comment_id = 0 ) {
|
270 |
-
// Attempt to subscribe again to get results
|
271 |
-
$subscription = $this->check_jetpack_subscription( $email, $post_ids );
|
272 |
-
|
273 |
-
// Subscription is active
|
274 |
-
if ( $subscription == 'active' ) {
|
275 |
-
// Execute
|
276 |
-
$this->core->add_creds(
|
277 |
-
'comment_subscription',
|
278 |
-
$user_id,
|
279 |
-
$this->prefs['subscribe_comment']['creds'],
|
280 |
-
$this->prefs['subscribe_comment']['log'],
|
281 |
-
$comment_id,
|
282 |
-
array( 'ref_type' => 'comment' )
|
283 |
-
);
|
284 |
-
|
285 |
-
// Let others share our success
|
286 |
-
do_action( 'mycred_jetpack_comment', $user_id, $comment_id );
|
287 |
-
}
|
288 |
-
// Subscription pending
|
289 |
-
elseif ( $subscription == 'pending' ) {
|
290 |
-
// Add email to pending list if not in it already
|
291 |
-
if ( !$this->is_pending( $email, $comment_id ) )
|
292 |
-
$this->add_to_pending( $email, $comment_id );
|
293 |
-
}
|
294 |
-
}
|
295 |
-
|
296 |
-
/**
|
297 |
-
* Site Subscription
|
298 |
-
* Awards points for active site subscriptions or adds email to the pending array.
|
299 |
-
* Note! This methods should only be called once the primary checks have been made, including making sure
|
300 |
-
* the user exist, is not excluded and that this is a unique event!
|
301 |
-
* @since 1.0.5
|
302 |
-
* @version 1.0
|
303 |
-
*/
|
304 |
-
protected function site_subscribe( $email = '', $user_id = 0 ) {
|
305 |
-
// Attempt to add this email again to check it's status
|
306 |
-
$subscription = $this->check_jetpack_subscription( $email );
|
307 |
-
|
308 |
-
// Subscription is active
|
309 |
-
if ( $subscription == 'active' ) {
|
310 |
-
// Execute
|
311 |
-
$this->core->add_creds(
|
312 |
-
'site_subscription',
|
313 |
-
$user_id,
|
314 |
-
$this->prefs['subscribe_site']['creds'],
|
315 |
-
$this->prefs['subscribe_site']['log']
|
316 |
-
);
|
317 |
-
|
318 |
-
// Let others share our success
|
319 |
-
do_action( 'mycred_jetpack_site', $user_id, $GLOBALS['blog_id'] );
|
320 |
-
}
|
321 |
-
// Subscription pending
|
322 |
-
elseif ( $subscription == 'pending' ) {
|
323 |
-
// Add email to pending list if not in it already
|
324 |
-
if ( !$this->is_pending( $email ) )
|
325 |
-
$this->add_to_pending( $email );
|
326 |
-
}
|
327 |
-
}
|
328 |
-
|
329 |
-
/**
|
330 |
-
* Check Jetpack Subscription
|
331 |
-
* @since 1.0.5
|
332 |
-
* @version 1.0
|
333 |
-
*/
|
334 |
-
protected function check_jetpack_subscription( $email = NULL, $post_ids = NULL ) {
|
335 |
-
if ( $email === NULL ) return 'missing';
|
336 |
-
|
337 |
-
if ( !class_exists( 'Jetpack' ) && defined( 'JETPACK__PLUGIN_DIR' ) )
|
338 |
-
require_once( JETPACK__PLUGIN_DIR . 'jetpack.php' );
|
339 |
-
if ( !class_exists( 'Jetpack_Subscriptions' ) && defined( 'JETPACK__PLUGIN_DIR' ) )
|
340 |
-
require_once( JETPACK__PLUGIN_DIR . 'modules/subscriptions.php' );
|
341 |
-
|
342 |
-
if ( $post_ids === NULL )
|
343 |
-
$subscribe = Jetpack_Subscriptions::subscribe( $email, 0, false );
|
344 |
-
else
|
345 |
-
$subscribe = Jetpack_Subscriptions::subscribe( $email, $post_ids, false );
|
346 |
-
|
347 |
-
if ( is_wp_error( $subscribe ) ) {
|
348 |
-
$error = $subscribe->get_error_code();
|
349 |
-
} else {
|
350 |
-
$error = false;
|
351 |
-
foreach ( $subscribe as $response ) {
|
352 |
-
if ( is_wp_error( $response ) ) {
|
353 |
-
$error = $response->get_error_code();
|
354 |
-
break;
|
355 |
-
}
|
356 |
-
}
|
357 |
-
}
|
358 |
-
|
359 |
-
if ( $error ) {
|
360 |
-
switch ( $error ) {
|
361 |
-
case 'invalid_email':
|
362 |
-
$return = 'invalid';
|
363 |
-
break;
|
364 |
-
case 'active':
|
365 |
-
$return = 'active';
|
366 |
-
break;
|
367 |
-
case 'pending':
|
368 |
-
$return = 'pending';
|
369 |
-
break;
|
370 |
-
default:
|
371 |
-
$return = '';
|
372 |
-
break;
|
373 |
-
}
|
374 |
-
}
|
375 |
-
else {
|
376 |
-
if ( is_array( $subscribe ) && $subscribe[0] === true )
|
377 |
-
$error = true;
|
378 |
-
$return = 'pending';
|
379 |
-
}
|
380 |
-
|
381 |
-
if ( $error )
|
382 |
-
return $return;
|
383 |
-
|
384 |
-
return 'new';
|
385 |
-
}
|
386 |
-
|
387 |
-
/**
|
388 |
-
* Is Pending
|
389 |
-
* Checks the given email if it's in the pending array.
|
390 |
-
* @param $email (string) required email to check
|
391 |
-
* @param $section (string|int) either 'site' for site subscriptions or comment id, defaults to site
|
392 |
-
* @returns (bool) true or false
|
393 |
-
* @since 1.0.5
|
394 |
-
* @version 1.0
|
395 |
-
*/
|
396 |
-
protected function is_pending( $email = NULL, $section = 'site' ) {
|
397 |
-
if ( $email === NULL || trim( $email ) === '' ) return;
|
398 |
-
|
399 |
-
if ( $section == 'site' )
|
400 |
-
$name = $section;
|
401 |
-
else
|
402 |
-
$name = 'comment';
|
403 |
-
|
404 |
-
// If pending list does not exist, create it and add our email
|
405 |
-
if ( false === ( $pending = get_option( 'mycred_jetpack_' . $name . '_pendings' ) ) ) {
|
406 |
-
if ( $name == 'site' )
|
407 |
-
$pending = array( $email );
|
408 |
-
else
|
409 |
-
$pending = array( $section => $email );
|
410 |
-
|
411 |
-
update_option( 'mycred_jetpack_' . $name . '_pendings', $pending );
|
412 |
-
}
|
413 |
-
|
414 |
-
// Site check
|
415 |
-
if ( $section == 'site' ) {
|
416 |
-
if ( in_array( $email, $pending ) )
|
417 |
-
return true;
|
418 |
-
}
|
419 |
-
// Comment check
|
420 |
-
else {
|
421 |
-
if ( array_key_exists( $section, $pending ) && $pending[$section] == $email )
|
422 |
-
return true;
|
423 |
-
}
|
424 |
-
|
425 |
-
return false;
|
426 |
-
}
|
427 |
-
|
428 |
-
/**
|
429 |
-
* Add to Pending
|
430 |
-
* Adds a given email to the pending array.
|
431 |
-
* @param $email (string) required email to check
|
432 |
-
* @param $section (string|int) either 'site' for site subscriptions or comment id, defaults to site
|
433 |
-
* @since 1.0.5
|
434 |
-
* @version 1.0
|
435 |
-
*/
|
436 |
-
protected function add_to_pending( $email = NULL, $section = 'site' ) {
|
437 |
-
if ( $email === NULL || trim( $email ) === '' ) return;
|
438 |
-
|
439 |
-
if ( $section == 'site' )
|
440 |
-
$name = $section;
|
441 |
-
else
|
442 |
-
$name = 'comment';
|
443 |
-
|
444 |
-
// If pending list does not exist, create it and add our email
|
445 |
-
if ( false === ( $pending = get_option( 'mycred_jetpack_' . $name . '_pendings' ) ) ) {
|
446 |
-
if ( $name == 'site' )
|
447 |
-
$pending = array( $email );
|
448 |
-
else
|
449 |
-
$pending = array( $section => $email );
|
450 |
-
|
451 |
-
update_option( 'mycred_jetpack_' . $name . '_pendings', $pending );
|
452 |
-
}
|
453 |
-
|
454 |
-
// Site pending list
|
455 |
-
if ( $section == 'site' ) {
|
456 |
-
if ( !in_array( $email, $pending ) ) {
|
457 |
-
$pending[] = $email;
|
458 |
-
update_option( 'mycred_jetpack_' . $name . '_pendings', $pending );
|
459 |
-
}
|
460 |
-
}
|
461 |
-
// Comment pending list
|
462 |
-
else {
|
463 |
-
if ( !array_key_exists( $section, $pending ) ) {
|
464 |
-
$pending[$section] = $email;
|
465 |
-
update_option( 'mycred_jetpack_' . $name . '_pendings', $pending );
|
466 |
-
}
|
467 |
-
}
|
468 |
-
}
|
469 |
-
|
470 |
-
/**
|
471 |
-
* Preferences
|
472 |
-
* @since 1.0.5
|
473 |
-
* @version 1.0
|
474 |
-
*/
|
475 |
-
public function preferences() {
|
476 |
-
$prefs = $this->prefs; ?>
|
477 |
-
|
478 |
-
<!-- Creds for Site Subscription -->
|
479 |
-
<label for="<?php echo $this->field_id( array( 'subscribe_site', 'creds' ) ); ?>" class="subheader"><?php _e( 'Site Subscriptions', 'mycred' ); ?></label>
|
480 |
-
<ol>
|
481 |
-
<li>
|
482 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'subscribe_site', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'subscribe_site', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['subscribe_site']['creds'] ); ?>" size="8" /></div>
|
483 |
-
</li>
|
484 |
-
<li class="empty"> </li>
|
485 |
-
<li>
|
486 |
-
<label for="<?php echo $this->field_id( array( 'subscribe_site', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
487 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'subscribe_site', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'subscribe_site', 'log' ) ); ?>" value="<?php echo $prefs['subscribe_site']['log']; ?>" class="long" /></div>
|
488 |
-
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
489 |
-
</li>
|
490 |
-
</ol>
|
491 |
-
<!-- Creds for Comment Subscription -->
|
492 |
-
<label for="<?php echo $this->field_id( array( 'subscribe_comment', 'creds' ) ); ?>" class="subheader"><?php _e( 'Comment Subscriptions', 'mycred' ); ?></label>
|
493 |
-
<ol>
|
494 |
-
<li>
|
495 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'subscribe_comment', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'subscribe_comment', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['subscribe_comment']['creds'] ); ?>" size="8" /></div>
|
496 |
-
</li>
|
497 |
-
<li class="empty"> </li>
|
498 |
-
<li>
|
499 |
-
<label for="<?php echo $this->field_id( array( 'subscribe_comment', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
500 |
-
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'subscribe_comment', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'subscribe_comment', 'log' ) ); ?>" value="<?php echo $prefs['subscribe_comment']['log']; ?>" class="long" /></div>
|
501 |
-
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
502 |
-
</li>
|
503 |
-
</ol>
|
504 |
-
<?php unset( $this );
|
505 |
-
}
|
506 |
-
}
|
507 |
-
}
|
508 |
-
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mycred.php
CHANGED
@@ -1,21 +1,21 @@
|
|
1 |
<?php
|
2 |
-
|
3 |
-
Plugin Name: myCRED
|
4 |
-
Plugin URI: http://mycred.me
|
5 |
-
Description: <strong>my</strong>CRED is an adaptive points management system for WordPress powered websites, giving you full control on how points are gained, used, traded, managed, logged or presented.
|
6 |
-
Version: 1.
|
7 |
-
Tags: points, tokens, credit, management, reward, charge
|
8 |
-
Author: Gabriel S Merovingi
|
9 |
-
Author URI: http://www.merovingi.com
|
10 |
-
Author Email:
|
11 |
-
Requires at least: WP 3.1
|
12 |
-
Tested up to: WP 3.6
|
13 |
-
Text Domain: mycred
|
14 |
-
Domain Path: /lang
|
15 |
-
License: GPLv2 or later
|
16 |
-
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
17 |
-
*/
|
18 |
-
define( 'myCRED_VERSION', '1.
|
19 |
define( 'myCRED_SLUG', 'mycred' );
|
20 |
define( 'myCRED_NAME', '<strong>my</strong>CRED' );
|
21 |
|
@@ -27,11 +27,18 @@ define( 'myCRED_ASSETS_DIR', myCRED_ROOT_DIR . 'assets/' );
|
|
27 |
define( 'myCRED_INCLUDES_DIR', myCRED_ROOT_DIR . 'includes/' );
|
28 |
define( 'myCRED_LANG_DIR', myCRED_ROOT_DIR . 'lang/' );
|
29 |
define( 'myCRED_MODULES_DIR', myCRED_ROOT_DIR . 'modules/' );
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
|
31 |
/**
|
32 |
-
* myCRED_Core
|
33 |
-
*
|
34 |
-
*
|
|
|
35 |
* @version 1.0
|
36 |
*/
|
37 |
if ( !class_exists( 'myCRED_Core' ) ) {
|
@@ -43,670 +50,503 @@ if ( !class_exists( 'myCRED_Core' ) ) {
|
|
43 |
* Construct
|
44 |
*/
|
45 |
function __construct() {
|
46 |
-
// Core functions
|
47 |
-
require_once( myCRED_INCLUDES_DIR . 'mycred-functions.php' );
|
48 |
-
if ( !$this->enabled() ) return;
|
49 |
-
|
50 |
-
// Plugin related
|
51 |
$this->plug = plugin_basename( myCRED_THIS );
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
register_activation_hook( myCRED_THIS, array( $this, 'activate_mycred' ) );
|
57 |
-
register_deactivation_hook( myCRED_THIS, array( $this, 'deactivate_mycred' ) );
|
58 |
-
|
59 |
-
// Network Settings
|
60 |
-
if ( is_multisite() && is_admin() )
|
61 |
-
require_once( myCRED_INCLUDES_DIR . 'mycred-network.php' );
|
62 |
-
|
63 |
-
// Make sure we are ready
|
64 |
-
if ( !$this->ready() ) return;
|
65 |
-
|
66 |
-
// Load
|
67 |
-
$this->load();
|
68 |
|
69 |
-
|
70 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
|
72 |
-
// Init
|
73 |
-
add_action( 'init', array( $this, 'init_mycred' ) );
|
74 |
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
|
79 |
-
|
80 |
-
|
|
|
|
|
|
|
81 |
|
82 |
-
|
83 |
-
|
|
|
|
|
|
|
|
|
84 |
|
85 |
-
|
86 |
-
require_once(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
do_action( 'mycred_ready' );
|
88 |
-
|
89 |
-
|
90 |
-
|
|
|
91 |
}
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
* @version 1.0
|
97 |
-
*/
|
98 |
-
public function __clone() { _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'mycred' ), '1.1.1' ); }
|
99 |
-
|
100 |
-
/**
|
101 |
-
* Prevent myCRED from being unserialized
|
102 |
-
* @since 1.1.1
|
103 |
-
* @version 1.0
|
104 |
-
*/
|
105 |
-
public function __wakeup() { _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'mycred' ), '1.1.1' ); }
|
106 |
|
107 |
-
/**
|
108 |
-
* Plugin Links
|
109 |
-
* @since 0.1
|
110 |
-
* @version 1.3
|
111 |
-
*/
|
112 |
-
function plugin_links( $actions, $plugin_file, $plugin_data, $context ) {
|
113 |
-
// Link to Setup
|
114 |
-
if ( !$this->ready() ) {
|
115 |
-
$actions['setup'] = '<a href="' . admin_url( 'plugins.php?page=myCRED-setup' ) . '">' . __( 'Setup', 'mycred' ) . '</a>';
|
116 |
-
return $actions;
|
117 |
-
}
|
118 |
-
|
119 |
-
$actions['tutorials'] = '<a href="http://mycred.me/support/tutorials/" target="_blank">' . __( 'Tutorials', 'mycred' ) . '</a>';
|
120 |
-
$actions['docs'] = '<a href="http://mycred.me/support/codex/" target="_blank">' . __( 'Codex', 'mycred' ) . '</a>';
|
121 |
-
$actions['store'] = '<a href="http://mycred.me/store/" target="_blank">' . __( 'Store', 'mycred' ) . '</a>';
|
122 |
-
|
123 |
-
return $actions;
|
124 |
-
}
|
125 |
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
wp_schedule_event( date_i18n( 'U' ), $frequency, 'mycred_reset_key' );
|
154 |
-
}
|
155 |
-
|
156 |
-
// Delete stray debug options
|
157 |
-
delete_option( 'mycred_catch_fires' );
|
158 |
-
}
|
159 |
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
* @version 1.2
|
164 |
-
*/
|
165 |
-
function deactivate_mycred() {
|
166 |
-
// Clear Cron
|
167 |
-
wp_clear_scheduled_hook( 'mycred_reset_key' );
|
168 |
-
wp_clear_scheduled_hook( 'mycred_banking_recurring_payout' );
|
169 |
-
wp_clear_scheduled_hook( 'mycred_banking_interest_compound' );
|
170 |
-
wp_clear_scheduled_hook( 'mycred_banking_interest_payout' );
|
171 |
-
|
172 |
-
do_action( 'mycred_deactivation' );
|
173 |
-
}
|
174 |
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
|
|
|
|
|
|
|
|
|
|
185 |
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
|
|
|
|
195 |
|
196 |
-
|
197 |
|
198 |
-
|
199 |
-
|
200 |
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
}
|
231 |
-
|
232 |
-
// Regular Ready Check
|
233 |
-
if ( !is_multisite() ) {
|
234 |
-
$setup = get_option( 'mycred_setup_completed' );
|
235 |
-
if ( $setup !== false ) return true;
|
236 |
-
}
|
237 |
-
|
238 |
-
// If we have come this far we need to load the setup
|
239 |
-
require_once( myCRED_INCLUDES_DIR . 'mycred-install.php' );
|
240 |
-
$setup = new myCRED_Setup();
|
241 |
-
return $setup->status();
|
242 |
}
|
|
|
243 |
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
* @version 2.0
|
248 |
-
*/
|
249 |
-
function load() {
|
250 |
-
// Rankings
|
251 |
-
require_once( myCRED_INCLUDES_DIR . 'mycred-rankings.php' );
|
252 |
-
|
253 |
-
// Shortcodes
|
254 |
-
require_once( myCRED_INCLUDES_DIR . 'mycred-shortcodes.php' );
|
255 |
-
|
256 |
-
// Abstract Classes
|
257 |
-
require_once( myCRED_ABSTRACTS_DIR . 'mycred-abstract-module.php' );
|
258 |
-
require_once( myCRED_ABSTRACTS_DIR . 'mycred-abstract-hook.php' );
|
259 |
-
|
260 |
-
// Start with Add-ons so they can hook in as early as possible
|
261 |
-
require_once( myCRED_MODULES_DIR . 'mycred-module-addons.php' );
|
262 |
-
$addons = new myCRED_Addons();
|
263 |
-
$addons->load();
|
264 |
-
}
|
265 |
|
266 |
-
|
267 |
-
|
268 |
-
* @since 0.1
|
269 |
-
* @version 3.2
|
270 |
-
*/
|
271 |
-
function wp_ready() {
|
272 |
-
load_plugin_textdomain( 'mycred', false, dirname( plugin_basename( __FILE__ ) ) . '/lang/' );
|
273 |
-
|
274 |
-
// Load Modules
|
275 |
-
$modules = apply_filters( 'mycred_modules', array(
|
276 |
-
'general' => array( 'class' => 'myCRED_General' ),
|
277 |
-
'hooks' => array( 'class' => 'myCRED_Hooks' ),
|
278 |
-
'log' => array( 'class' => 'myCRED_Log' )
|
279 |
-
) );
|
280 |
-
|
281 |
-
if ( !empty( $modules ) ) {
|
282 |
-
|
283 |
-
// Include, init and load each module
|
284 |
-
foreach ( $modules as $id => $data ) {
|
285 |
-
// If a file is not specified we assume it is our own and load from the default locaiton
|
286 |
-
if ( !isset( $data['file'] ) )
|
287 |
-
require_once( myCRED_MODULES_DIR . 'mycred-module-' . $id . '.php' );
|
288 |
-
// Load the custom file
|
289 |
-
else
|
290 |
-
require_once( $data['file'] );
|
291 |
-
|
292 |
-
// Load class
|
293 |
-
if ( isset( $data['class'] ) ) {
|
294 |
-
$class = $data['class'];
|
295 |
-
if ( !class_exists( $class ) ) continue;
|
296 |
-
$module = new $class();
|
297 |
-
$module->load();
|
298 |
-
}
|
299 |
-
// Load function
|
300 |
-
elseif ( isset( $data['function'] ) ) {
|
301 |
-
$function = $data['function'];
|
302 |
-
if ( !function_exists( $function ) ) continue;
|
303 |
-
$function( 'load' );
|
304 |
-
}
|
305 |
-
}
|
306 |
-
// Clean up
|
307 |
-
unset( $modules );
|
308 |
-
}
|
309 |
-
|
310 |
-
// First Custom Hook
|
311 |
-
do_action( 'mycred_pre_init' );
|
312 |
-
}
|
313 |
|
314 |
-
|
315 |
-
|
316 |
-
* @since 0.1
|
317 |
-
* @version 2.0
|
318 |
-
*/
|
319 |
-
function init_mycred() {
|
320 |
-
// Enqueue scripts & styles
|
321 |
-
add_action( 'wp_enqueue_scripts', array( $this, 'front_enqueue' ) );
|
322 |
-
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue' ) );
|
323 |
-
|
324 |
-
// Admin Menu
|
325 |
-
add_action( 'admin_menu', array( $this, 'add_menu' ), 9 );
|
326 |
-
|
327 |
-
// Admin Bar / Tool Bar
|
328 |
-
add_action( 'admin_bar_menu', array( $this, 'tool_bar' ) );
|
329 |
-
|
330 |
-
// Shortcodes
|
331 |
-
add_shortcode( 'mycred_leaderboard', 'mycred_render_leaderboard' );
|
332 |
-
add_shortcode( 'mycred_my_ranking', 'mycred_render_my_ranking' );
|
333 |
-
add_shortcode( 'mycred_my_balance', 'mycred_render_shortcode_my_balance' );
|
334 |
-
add_shortcode( 'mycred_give', 'mycred_render_shortcode_give' );
|
335 |
-
add_shortcode( 'mycred_send', 'mycred_render_shortcode_send' );
|
336 |
-
|
337 |
-
add_action( 'wp_footer', array( $this, 'footer' ) );
|
338 |
-
add_action( 'wp_ajax_mycred-send-points', array( $this, 'send_points' ) );
|
339 |
-
// Let others play
|
340 |
-
do_action( 'mycred_init' );
|
341 |
-
}
|
342 |
|
343 |
-
|
344 |
-
|
345 |
-
* @since 0.1
|
346 |
-
* @version 2.0
|
347 |
-
*/
|
348 |
-
function admin_init_mycred() {
|
349 |
-
// Load admin
|
350 |
-
require_once( myCRED_INCLUDES_DIR . 'mycred-admin.php' );
|
351 |
-
$admin = new myCRED_Admin();
|
352 |
-
$admin->load();
|
353 |
-
|
354 |
-
// Let others play
|
355 |
-
do_action( 'mycred_admin_init' );
|
356 |
-
}
|
357 |
|
358 |
-
|
359 |
-
|
360 |
-
* Grabs the plugin widgets and registers them.
|
361 |
-
*
|
362 |
-
* @uses register_widget()
|
363 |
-
* @since 0.1
|
364 |
-
* @version 1.0
|
365 |
-
*/
|
366 |
-
function widgets_init_mycred() {
|
367 |
-
// Load widgets
|
368 |
-
require_once( myCRED_INCLUDES_DIR . 'mycred-widgets.php' );
|
369 |
|
370 |
-
|
371 |
-
|
372 |
-
register_widget( 'myCRED_Widget_List' );
|
373 |
|
374 |
-
|
375 |
-
|
376 |
|
377 |
-
|
378 |
-
|
379 |
-
* @since 0.1
|
380 |
-
* @version 1.0
|
381 |
-
*/
|
382 |
-
function tool_bar( $wp_admin_bar ) {
|
383 |
-
global $bp;
|
384 |
|
385 |
-
|
|
|
386 |
|
387 |
-
|
388 |
-
|
389 |
-
|
|
|
390 |
|
391 |
-
|
392 |
-
|
|
|
|
|
393 |
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
|
|
|
|
|
|
398 |
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
403 |
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
'title' => __( 'My Balance: ', 'mycred' ) . $creds_formated,
|
408 |
-
'href' => admin_url( $url )
|
409 |
-
) );
|
410 |
|
411 |
-
|
412 |
-
|
413 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
414 |
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
''
|
431 |
-
);
|
432 |
-
add_action( 'admin_print_styles-' . $page, array( $this, 'admin_print_styles' ) );
|
433 |
-
|
434 |
-
// Let others play
|
435 |
-
do_action( 'mycred_add_menu', $mycred );
|
436 |
-
}
|
437 |
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
);
|
476 |
-
wp_enqueue_style( 'mycred-widget' );
|
477 |
-
}
|
478 |
-
|
479 |
-
// Let others play
|
480 |
-
do_action( 'mycred_front_enqueue' );
|
481 |
-
}
|
482 |
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
wp_localize_script(
|
507 |
-
'mycred-inline-edit',
|
508 |
-
'myCREDedit',
|
509 |
-
array(
|
510 |
-
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
511 |
-
'title' => sprintf( __( 'Edit Users %s balance', 'mycred' ),$mycred->plural() ),
|
512 |
-
'close' => __( 'Close', 'mycred' ),
|
513 |
-
'working' => __( 'Processing...', 'mycred' )
|
514 |
-
)
|
515 |
-
);
|
516 |
-
|
517 |
-
// Admin Style
|
518 |
-
wp_register_style(
|
519 |
-
'mycred-admin',
|
520 |
-
plugins_url( 'assets/css/admin.css', myCRED_THIS ),
|
521 |
-
false,
|
522 |
-
myCRED_VERSION . '.1',
|
523 |
-
'all'
|
524 |
-
);
|
525 |
-
wp_register_style(
|
526 |
-
'mycred-inline-edit',
|
527 |
-
plugins_url( 'assets/css/inline-edit.css', myCRED_THIS ),
|
528 |
-
false,
|
529 |
-
myCRED_VERSION . '.1',
|
530 |
-
'all'
|
531 |
-
);
|
532 |
-
|
533 |
-
// Let others play
|
534 |
-
do_action( 'mycred_admin_enqueue' );
|
535 |
-
}
|
536 |
-
|
537 |
-
/**
|
538 |
-
* Enqueue Admin Styling
|
539 |
-
* @since 0.1
|
540 |
-
* @version 1.0
|
541 |
-
*/
|
542 |
-
function admin_print_styles() {
|
543 |
-
wp_enqueue_style( 'mycred-admin' );
|
544 |
-
}
|
545 |
-
|
546 |
-
/**
|
547 |
-
* WP Footer
|
548 |
-
* @since 1.1
|
549 |
-
* @version 1.0
|
550 |
-
*/
|
551 |
-
public function footer() {
|
552 |
-
global $mycred_sending_points;
|
553 |
-
if ( $mycred_sending_points === true ) {
|
554 |
-
$mycred = mycred_get_settings();
|
555 |
-
$base = array(
|
556 |
-
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
557 |
-
'token' => wp_create_nonce( 'mycred-send-points' )
|
558 |
-
);
|
559 |
-
|
560 |
-
$language = apply_filters( 'mycred_send_language', array(
|
561 |
-
'working' => __( 'Processing...', 'mycred' ),
|
562 |
-
'done' => __( 'Sent', 'mycred' ),
|
563 |
-
'error' => __( 'Error - Try Again', 'mycred' )
|
564 |
-
) );
|
565 |
-
wp_localize_script(
|
566 |
-
'mycred-send-points',
|
567 |
-
'myCREDsend',
|
568 |
-
array_merge_recursive( $base, $language )
|
569 |
-
);
|
570 |
-
wp_enqueue_script( 'mycred-send-points' );
|
571 |
-
}
|
572 |
-
}
|
573 |
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
582 |
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
* Requires Multisite
|
587 |
-
* @since 0.1
|
588 |
-
* @version 1.0
|
589 |
-
*/
|
590 |
-
private function enabled() {
|
591 |
-
// Not a multisite = enabled
|
592 |
-
if ( !is_multisite() ) return true;
|
593 |
|
594 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
595 |
|
596 |
-
|
597 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
598 |
|
599 |
-
|
600 |
-
|
601 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
602 |
|
603 |
-
|
604 |
-
|
605 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
606 |
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
* Requires Multisite
|
611 |
-
* @since 0.1
|
612 |
-
* @version 1.0
|
613 |
-
*/
|
614 |
-
private function install_log() {
|
615 |
-
if ( get_blog_option( $GLOBALS['blog_id'], 'mycred_version_db', false ) !== false ) return true;
|
616 |
-
|
617 |
-
global $wpdb;
|
618 |
-
|
619 |
-
$mycred = mycred_get_settings();
|
620 |
-
$decimals = (int) $mycred->format['decimals'];
|
621 |
-
if ( $decimals > 0 ) {
|
622 |
-
if ( $decimals > 4 )
|
623 |
-
$cred_format = "decimal(32,$decimals)";
|
624 |
-
else
|
625 |
-
$cred_format = "decimal(22,$decimals)";
|
626 |
-
}
|
627 |
-
else {
|
628 |
-
$cred_format = 'bigint(22)';
|
629 |
-
}
|
630 |
-
|
631 |
-
$table_name = $wpdb->prefix . 'myCRED_log';
|
632 |
-
// Log structure
|
633 |
-
$sql = "id int(11) NOT NULL AUTO_INCREMENT,
|
634 |
-
ref VARCHAR(256) NOT NULL,
|
635 |
-
ref_id int(11) DEFAULT NULL,
|
636 |
-
user_id int(11) DEFAULT NULL,
|
637 |
-
creds $cred_format DEFAULT NULL,
|
638 |
-
ctype VARCHAR(64) DEFAULT 'mycred_default',
|
639 |
-
time bigint(20) DEFAULT NULL,
|
640 |
-
entry LONGTEXT DEFAULT NULL,
|
641 |
-
data LONGTEXT DEFAULT NULL,
|
642 |
-
PRIMARY KEY (id),
|
643 |
-
UNIQUE KEY id (id)";
|
644 |
-
|
645 |
-
// Insert table
|
646 |
-
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
647 |
-
dbDelta( "CREATE TABLE IF NOT EXISTS " . $table_name . " ( " . $sql . " ) DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;" );
|
648 |
-
add_blog_option( 'mycred_version_db', '1.0', '', 'no' );
|
649 |
-
return true;
|
650 |
-
}
|
651 |
-
|
652 |
-
/**
|
653 |
-
* Send Points Ajax Call Handler
|
654 |
-
*
|
655 |
-
* @since 1.1
|
656 |
-
* @version 1.1
|
657 |
-
*/
|
658 |
-
public function send_points() {
|
659 |
-
// We must be logged in
|
660 |
-
if ( !is_user_logged_in() ) die();
|
661 |
|
662 |
-
|
663 |
-
check_ajax_referer( 'mycred-send-points', 'token' );
|
664 |
-
|
665 |
-
$mycred = mycred_get_settings();
|
666 |
-
$user_id = get_current_user_id();
|
667 |
-
|
668 |
-
$account_limit = (int) apply_filters( 'mycred_transfer_acc_limit', 0 );
|
669 |
-
$balance = $mycred->get_users_cred( $user_id );
|
670 |
-
$amount = $mycred->number( $_POST['amount'] );
|
671 |
-
$new_balance = $balance-$amount;
|
672 |
-
|
673 |
-
// Insufficient Funds
|
674 |
-
if ( $new_balance < $account_limit )
|
675 |
-
die();
|
676 |
-
// After this transfer our account will reach zero
|
677 |
-
elseif ( $new_balance == $account_limit )
|
678 |
-
$reply = 'zero';
|
679 |
-
// Check if this is the last time we can do these kinds of amounts
|
680 |
-
elseif ( $new_balance-$amount < $account_limit )
|
681 |
-
$reply = 'minus';
|
682 |
-
// Else everything is fine
|
683 |
-
else
|
684 |
-
$reply = 'done';
|
685 |
-
|
686 |
-
// First deduct points
|
687 |
-
$mycred->add_creds(
|
688 |
-
trim( $_POST['reference'] ),
|
689 |
-
$user_id,
|
690 |
-
0-$amount,
|
691 |
-
trim( $_POST['log'] ),
|
692 |
-
$_POST['recipient'],
|
693 |
-
array( 'ref_type' => 'user' )
|
694 |
-
);
|
695 |
-
|
696 |
-
// Then add to recipient
|
697 |
-
$mycred->add_creds(
|
698 |
-
trim( $_POST['reference'] ),
|
699 |
-
$_POST['recipient'],
|
700 |
-
$amount,
|
701 |
-
trim( $_POST['log'] ),
|
702 |
-
$user_id,
|
703 |
-
array( 'ref_type' => 'user' )
|
704 |
-
);
|
705 |
-
|
706 |
-
// Share the good news
|
707 |
-
die( json_encode( $reply ) );
|
708 |
-
}
|
709 |
-
}
|
710 |
-
new myCRED_Core();
|
711 |
}
|
712 |
?>
|
1 |
<?php
|
2 |
+
/**
|
3 |
+
* Plugin Name: myCRED
|
4 |
+
* Plugin URI: http://mycred.me
|
5 |
+
* Description: <strong>my</strong>CRED is an adaptive points management system for WordPress powered websites, giving you full control on how points are gained, used, traded, managed, logged or presented.
|
6 |
+
* Version: 1.3
|
7 |
+
* Tags: points, tokens, credit, management, reward, charge
|
8 |
+
* Author: Gabriel S Merovingi
|
9 |
+
* Author URI: http://www.merovingi.com
|
10 |
+
* Author Email: info@merovingi.com
|
11 |
+
* Requires at least: WP 3.1
|
12 |
+
* Tested up to: WP 3.6
|
13 |
+
* Text Domain: mycred
|
14 |
+
* Domain Path: /lang
|
15 |
+
* License: GPLv2 or later
|
16 |
+
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
17 |
+
*/
|
18 |
+
define( 'myCRED_VERSION', '1.3' );
|
19 |
define( 'myCRED_SLUG', 'mycred' );
|
20 |
define( 'myCRED_NAME', '<strong>my</strong>CRED' );
|
21 |
|
27 |
define( 'myCRED_INCLUDES_DIR', myCRED_ROOT_DIR . 'includes/' );
|
28 |
define( 'myCRED_LANG_DIR', myCRED_ROOT_DIR . 'lang/' );
|
29 |
define( 'myCRED_MODULES_DIR', myCRED_ROOT_DIR . 'modules/' );
|
30 |
+
define( 'myCRED_PLUGINS_DIR', myCRED_ROOT_DIR . 'plugins/' );
|
31 |
+
|
32 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-functions.php' );
|
33 |
+
|
34 |
+
require_once( myCRED_ABSTRACTS_DIR . 'mycred-abstract-hook.php' );
|
35 |
+
require_once( myCRED_ABSTRACTS_DIR . 'mycred-abstract-module.php' );
|
36 |
|
37 |
/**
|
38 |
+
* myCRED_Core Class
|
39 |
+
* Removed in 1.3 but defined since some customizations
|
40 |
+
* use this to check that myCRED exists or is installed.
|
41 |
+
* @since 1.3
|
42 |
* @version 1.0
|
43 |
*/
|
44 |
if ( !class_exists( 'myCRED_Core' ) ) {
|
50 |
* Construct
|
51 |
*/
|
52 |
function __construct() {
|
|
|
|
|
|
|
|
|
|
|
53 |
$this->plug = plugin_basename( myCRED_THIS );
|
54 |
+
// no longer used
|
55 |
+
}
|
56 |
+
}
|
57 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
|
59 |
+
/**
|
60 |
+
* Required
|
61 |
+
* @since 1.3
|
62 |
+
* @version 1.0
|
63 |
+
*/
|
64 |
+
function mycred_load() {
|
65 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-remote.php' );
|
66 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-log.php' );
|
67 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-network.php' );
|
68 |
+
|
69 |
+
// Bail now if the setup needs to run
|
70 |
+
if ( is_mycred_ready() === false ) return;
|
71 |
+
|
72 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-rankings.php' );
|
73 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-shortcodes.php' );
|
74 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-widgets.php' );
|
75 |
+
|
76 |
+
// Add-ons
|
77 |
+
require_once( myCRED_MODULES_DIR . 'mycred-module-addons.php' );
|
78 |
+
$addons = new myCRED_Addons();
|
79 |
+
$addons->load();
|
80 |
+
|
81 |
+
do_action( 'mycred_ready' );
|
82 |
+
|
83 |
+
add_action( 'init', 'mycred_init' );
|
84 |
+
add_action( 'widgets_init', 'mycred_widgets_init' );
|
85 |
+
add_action( 'admin_init', 'mycred_admin_init' );
|
86 |
+
}
|
87 |
+
mycred_load();
|
88 |
|
|
|
|
|
89 |
|
90 |
+
/*
|
91 |
+
if ( !class_exists( 'myCRED_Core' ) ) {
|
92 |
+
final class myCRED_Core {
|
93 |
|
94 |
+
public $plug;
|
95 |
+
function __construct() {
|
96 |
+
$this->plug = plugin_basename( myCRED_THIS );
|
97 |
+
|
98 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-functions.php' );
|
99 |
|
100 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-remote.php' );
|
101 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-log.php' );
|
102 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-network.php' );
|
103 |
+
|
104 |
+
// Bail now if the setup needs to run
|
105 |
+
if ( is_mycred_ready() === false ) return;
|
106 |
|
107 |
+
require_once( myCRED_ABSTRACTS_DIR . 'mycred-abstract-hook.php' );
|
108 |
+
require_once( myCRED_ABSTRACTS_DIR . 'mycred-abstract-module.php' );
|
109 |
+
|
110 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-rankings.php' );
|
111 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-shortcodes.php' );
|
112 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-widgets.php' );
|
113 |
+
|
114 |
+
// Add-ons
|
115 |
+
require_once( myCRED_MODULES_DIR . 'mycred-module-addons.php' );
|
116 |
+
$addons = new myCRED_Addons();
|
117 |
+
$addons->load();
|
118 |
+
|
119 |
do_action( 'mycred_ready' );
|
120 |
+
|
121 |
+
add_action( 'init', 'mycred_init' );
|
122 |
+
add_action( 'widgets_init', 'mycred_widgets_init' );
|
123 |
+
add_action( 'admin_init', 'mycred_admin_init' );
|
124 |
}
|
125 |
+
}
|
126 |
+
new myCRED_Core();
|
127 |
+
}
|
128 |
+
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
129 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
|
131 |
+
/**
|
132 |
+
* Plugin Activation
|
133 |
+
* @since 1.3
|
134 |
+
* @version 1.0
|
135 |
+
*/
|
136 |
+
register_activation_hook( myCRED_THIS, 'mycred_plugin_activation' );
|
137 |
+
function mycred_plugin_activation()
|
138 |
+
{
|
139 |
+
// Load Installer
|
140 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-install.php' );
|
141 |
+
$install = new myCRED_Install();
|
142 |
+
|
143 |
+
// Compatibility check
|
144 |
+
$install->compat();
|
145 |
+
|
146 |
+
// First time activation
|
147 |
+
if ( $install->ver === false )
|
148 |
+
$install->activate();
|
149 |
+
// Re-activation
|
150 |
+
else
|
151 |
+
$install->reactivate();
|
152 |
+
|
153 |
+
// Add Cron Schedule
|
154 |
+
if ( !wp_next_scheduled( 'mycred_reset_key' ) ) {
|
155 |
+
$frequency = apply_filters( 'mycred_cron_reset_key', 'daily' );
|
156 |
+
wp_schedule_event( date_i18n( 'U' ), $frequency, 'mycred_reset_key' );
|
157 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
158 |
|
159 |
+
// Delete stray debug options
|
160 |
+
delete_option( 'mycred_catch_fires' );
|
161 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
162 |
|
163 |
+
/**
|
164 |
+
* Runs when the plugin is deactivated
|
165 |
+
* @since 1.3
|
166 |
+
* @version 1.0
|
167 |
+
*/
|
168 |
+
register_deactivation_hook( myCRED_THIS, 'mycred_plugin_deactivation' );
|
169 |
+
function mycred_plugin_deactivation() {
|
170 |
+
// Clear Cron
|
171 |
+
wp_clear_scheduled_hook( 'mycred_reset_key' );
|
172 |
+
wp_clear_scheduled_hook( 'mycred_banking_recurring_payout' );
|
173 |
+
wp_clear_scheduled_hook( 'mycred_banking_interest_compound' );
|
174 |
+
wp_clear_scheduled_hook( 'mycred_banking_interest_payout' );
|
175 |
+
|
176 |
+
do_action( 'mycred_deactivation' );
|
177 |
+
}
|
178 |
|
179 |
+
/**
|
180 |
+
* Runs when the plugin is deleted
|
181 |
+
* @since 1.3
|
182 |
+
* @version 1.0
|
183 |
+
*/
|
184 |
+
register_uninstall_hook( myCRED_THIS, 'mycred_plugin_uninstall' );
|
185 |
+
function mycred_plugin_uninstall()
|
186 |
+
{
|
187 |
+
// Load Installer
|
188 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-install.php' );
|
189 |
+
$install = new myCRED_Install();
|
190 |
|
191 |
+
do_action( 'mycred_before_deletion', $install );
|
192 |
|
193 |
+
// Run uninstaller
|
194 |
+
$install->uninstall();
|
195 |
|
196 |
+
do_action( 'mycred_after_deletion', $install );
|
197 |
+
unset( $install );
|
198 |
+
}
|
199 |
|
200 |
+
/**
|
201 |
+
* myCRED Plugin Startup
|
202 |
+
* @since 1.3
|
203 |
+
* @version 1.0
|
204 |
+
*/
|
205 |
+
add_action( 'plugins_loaded', 'mycred_plugin_start_up', 999 );
|
206 |
+
function mycred_plugin_start_up()
|
207 |
+
{
|
208 |
+
global $mycred;
|
209 |
+
$mycred = new myCRED_Settings();
|
210 |
+
|
211 |
+
// Load Translation
|
212 |
+
load_plugin_textdomain( 'mycred', false, dirname( plugin_basename( __FILE__ ) ) . '/lang/' );
|
213 |
+
|
214 |
+
// Adjust the plugin links
|
215 |
+
add_filter( 'plugin_action_links_mycred/mycred.php', 'mycred_plugin_links', 10, 4 );
|
216 |
+
|
217 |
+
// Lets start with Multisite
|
218 |
+
if ( is_multisite() ) {
|
219 |
+
if ( ! function_exists( 'is_plugin_active_for_network' ) )
|
220 |
+
require_once( ABSPATH . '/wp-admin/includes/plugin.php' );
|
221 |
+
|
222 |
+
if ( is_plugin_active_for_network( 'mycred/mycred.php' ) ) {
|
223 |
+
$network = new myCRED_Network();
|
224 |
+
$network->load();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
225 |
}
|
226 |
+
}
|
227 |
|
228 |
+
// Load only hooks that we have use of
|
229 |
+
if ( defined( 'JETPACK__PLUGIN_DIR' ) )
|
230 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-jetpack.php' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
231 |
|
232 |
+
if ( class_exists( 'bbPress' ) )
|
233 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-bbPress.php' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
234 |
|
235 |
+
if ( function_exists( 'invite_anyone_init' ) )
|
236 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-invite-anyone.php' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
237 |
|
238 |
+
if ( function_exists( 'wpcf7' ) )
|
239 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-contact-form7.php' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
240 |
|
241 |
+
if ( class_exists( 'BadgeOS' ) )
|
242 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-badgeOS.php' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
243 |
|
244 |
+
if ( function_exists( 'vote_poll' ) )
|
245 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-wp-polls.php' );
|
|
|
246 |
|
247 |
+
if ( function_exists( 'wp_favorite_posts' ) )
|
248 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-wp-favorite-posts.php' );
|
249 |
|
250 |
+
if ( function_exists( 'bp_em_init' ) )
|
251 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-events-manager-light.php' );
|
|
|
|
|
|
|
|
|
|
|
252 |
|
253 |
+
if ( defined( 'STARRATING_DEBUG' ) )
|
254 |
+
require_once( myCRED_PLUGINS_DIR . 'mycred-hook-gd-star-rating.php' );
|
255 |
|
256 |
+
// Load Settings
|
257 |
+
require_once( myCRED_MODULES_DIR . 'mycred-module-general.php' );
|
258 |
+
$settings = new myCRED_General();
|
259 |
+
$settings->load();
|
260 |
|
261 |
+
// Load hooks
|
262 |
+
require_once( myCRED_MODULES_DIR . 'mycred-module-hooks.php' );
|
263 |
+
$hooks = new myCRED_Hooks();
|
264 |
+
$hooks->load();
|
265 |
|
266 |
+
// Load log
|
267 |
+
require_once( myCRED_MODULES_DIR . 'mycred-module-log.php' );
|
268 |
+
$log = new myCRED_Log();
|
269 |
+
$log->load();
|
270 |
+
|
271 |
+
do_action( 'mycred_pre_init' );
|
272 |
+
}
|
273 |
|
274 |
+
/**
|
275 |
+
* Init
|
276 |
+
* @since 1.3
|
277 |
+
* @version 1.0
|
278 |
+
*/
|
279 |
+
function mycred_init()
|
280 |
+
{
|
281 |
+
// Enqueue scripts & styles
|
282 |
+
add_action( 'wp_enqueue_scripts', 'mycred_enqueue_front' );
|
283 |
+
add_action( 'admin_enqueue_scripts', 'mycred_enqueue_admin' );
|
284 |
+
|
285 |
+
// Admin Menu
|
286 |
+
add_action( 'admin_menu', 'mycred_admin_menu', 9 );
|
287 |
+
|
288 |
+
// Admin Bar / Tool Bar
|
289 |
+
add_action( 'admin_bar_menu', 'mycred_hook_into_toolbar' );
|
290 |
+
|
291 |
+
// Shortcodes
|
292 |
+
if ( !is_admin() ) {
|
293 |
+
add_shortcode( 'mycred_history', 'mycred_render_shortcode_history' );
|
294 |
+
add_shortcode( 'mycred_leaderboard', 'mycred_render_leaderboard' );
|
295 |
+
add_shortcode( 'mycred_my_ranking', 'mycred_render_my_ranking' );
|
296 |
+
add_shortcode( 'mycred_my_balance', 'mycred_render_shortcode_my_balance' );
|
297 |
+
add_shortcode( 'mycred_give', 'mycred_render_shortcode_give' );
|
298 |
+
add_shortcode( 'mycred_send', 'mycred_render_shortcode_send' );
|
299 |
+
}
|
300 |
|
301 |
+
// Let others play
|
302 |
+
do_action( 'mycred_init' );
|
303 |
+
}
|
|
|
|
|
|
|
304 |
|
305 |
+
/**
|
306 |
+
* Widgets Init
|
307 |
+
* @since 1.3
|
308 |
+
* @version 1.0
|
309 |
+
*/
|
310 |
+
function mycred_widgets_init()
|
311 |
+
{
|
312 |
+
// Register Widgets
|
313 |
+
register_widget( 'myCRED_Widget_Balance' );
|
314 |
+
register_widget( 'myCRED_Widget_List' );
|
315 |
+
|
316 |
+
// Let others play
|
317 |
+
do_action( 'mycred_widgets_init' );
|
318 |
+
}
|
319 |
|
320 |
+
/**
|
321 |
+
* Admin Init
|
322 |
+
* @since 1.3
|
323 |
+
* @version 1.0
|
324 |
+
*/
|
325 |
+
function mycred_admin_init()
|
326 |
+
{
|
327 |
+
// Load admin
|
328 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-admin.php' );
|
329 |
+
$admin = new myCRED_Admin();
|
330 |
+
$admin->load();
|
331 |
+
|
332 |
+
// Let others play
|
333 |
+
do_action( 'mycred_admin_init' );
|
334 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
335 |
|
336 |
+
/**
|
337 |
+
* Adjust the Tool Bar
|
338 |
+
* @since 1.3
|
339 |
+
* @version 1.0
|
340 |
+
*/
|
341 |
+
function mycred_hook_into_toolbar( $wp_admin_bar )
|
342 |
+
{
|
343 |
+
global $bp;
|
344 |
+
if ( isset( $bp ) ) return;
|
345 |
+
|
346 |
+
$mycred = mycred_get_settings();
|
347 |
+
$user_id = get_current_user_id();
|
348 |
+
if ( $mycred->exclude_user( $user_id ) ) return;
|
349 |
+
|
350 |
+
$cred = $mycred->get_users_cred( $user_id );
|
351 |
+
$creds_formated = $mycred->format_creds( $cred );
|
352 |
+
|
353 |
+
$wp_admin_bar->add_group( array(
|
354 |
+
'parent' => 'my-account',
|
355 |
+
'id' => 'mycred-actions',
|
356 |
+
) );
|
357 |
+
|
358 |
+
if ( $mycred->can_edit_plugin() )
|
359 |
+
$url = 'users.php?page=mycred_my_history';
|
360 |
+
else
|
361 |
+
$url = 'profile.php?page=mycred_my_history';
|
362 |
+
|
363 |
+
$wp_admin_bar->add_menu( array(
|
364 |
+
'parent' => 'mycred-actions',
|
365 |
+
'id' => 'user-creds',
|
366 |
+
'title' => __( 'My Balance: ', 'mycred' ) . $creds_formated,
|
367 |
+
'href' => add_query_arg( array( 'page' => 'mycred_my_history' ), get_edit_profile_url( $user_id ) )
|
368 |
+
) );
|
369 |
+
|
370 |
+
// Let others play
|
371 |
+
do_action( 'mycred_tool_bar', $mycred );
|
372 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
373 |
|
374 |
+
/**
|
375 |
+
* Add myCRED Admin Menu
|
376 |
+
* @uses add_menu_page()
|
377 |
+
* @since 1.3
|
378 |
+
* @version 1.0
|
379 |
+
*/
|
380 |
+
function mycred_admin_menu()
|
381 |
+
{
|
382 |
+
$mycred = mycred_get_settings();
|
383 |
+
$name = apply_filters( 'mycred_label', myCRED_NAME );
|
384 |
+
$page = add_menu_page(
|
385 |
+
$name,
|
386 |
+
$name,
|
387 |
+
$mycred->edit_creds_cap(),
|
388 |
+
'myCRED',
|
389 |
+
'',
|
390 |
+
''
|
391 |
+
);
|
392 |
+
add_action( 'admin_print_styles-' . $page, 'mycred_admin_page_styles' );
|
393 |
+
|
394 |
+
// Let others play
|
395 |
+
do_action( 'mycred_add_menu', $mycred );
|
396 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
397 |
|
398 |
+
/**
|
399 |
+
* Enqueue Front
|
400 |
+
* @filter 'mycred_remove_widget_css'
|
401 |
+
* @since 1.3
|
402 |
+
* @version 1.0
|
403 |
+
*/
|
404 |
+
function mycred_enqueue_front()
|
405 |
+
{
|
406 |
+
global $mycred_sending_points;
|
407 |
+
|
408 |
+
// Send Points Shortcode
|
409 |
+
wp_register_script(
|
410 |
+
'mycred-send-points',
|
411 |
+
plugins_url( 'assets/js/send.js', myCRED_THIS ),
|
412 |
+
array( 'jquery' ),
|
413 |
+
myCRED_VERSION . '.1',
|
414 |
+
true
|
415 |
+
);
|
416 |
+
|
417 |
+
// Widget Style (can be disabled)
|
418 |
+
if ( apply_filters( 'mycred_remove_widget_css', false ) === false ) {
|
419 |
+
wp_register_style(
|
420 |
+
'mycred-widget',
|
421 |
+
plugins_url( 'assets/css/widget.css', myCRED_THIS ),
|
422 |
+
false,
|
423 |
+
myCRED_VERSION . '.1',
|
424 |
+
'all'
|
425 |
+
);
|
426 |
+
wp_enqueue_style( 'mycred-widget' );
|
427 |
+
}
|
428 |
|
429 |
+
// Let others play
|
430 |
+
do_action( 'mycred_front_enqueue' );
|
431 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
432 |
|
433 |
+
/**
|
434 |
+
* Enqueue Admin
|
435 |
+
* @since 1.3
|
436 |
+
* @version 1.2
|
437 |
+
*/
|
438 |
+
function mycred_enqueue_admin()
|
439 |
+
{
|
440 |
+
$mycred = mycred_get_settings();
|
441 |
+
// General Admin Script
|
442 |
+
wp_register_script(
|
443 |
+
'mycred-admin',
|
444 |
+
plugins_url( 'assets/js/accordion.js', myCRED_THIS ),
|
445 |
+
array( 'jquery', 'jquery-ui-core', 'jquery-ui-accordion' ),
|
446 |
+
myCRED_VERSION . '.1'
|
447 |
+
);
|
448 |
+
wp_localize_script( 'mycred-admin', 'myCRED', apply_filters( 'mycred_localize_admin', array( 'active' => '-1' ) ) );
|
449 |
+
|
450 |
+
// Management Admin Script
|
451 |
+
wp_register_script(
|
452 |
+
'mycred-manage',
|
453 |
+
plugins_url( 'assets/js/management.js', myCRED_THIS ),
|
454 |
+
array( 'jquery', 'mycred-admin', 'jquery-ui-core', 'jquery-ui-dialog', 'jquery-effects-core', 'jquery-effects-slide' ),
|
455 |
+
myCRED_VERSION . '.1'
|
456 |
+
);
|
457 |
+
wp_localize_script(
|
458 |
+
'mycred-manage',
|
459 |
+
'myCREDmanage',
|
460 |
+
array(
|
461 |
+
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
462 |
+
'token' => wp_create_nonce( 'mycred-management-actions' ),
|
463 |
+
'working' => __( 'Processing...', 'mycred' ),
|
464 |
+
'confirm_log' => __( 'Warning! All entries in your log will be permamenly removed! This can not be undone!', 'mycred' ),
|
465 |
+
'confirm_reset' => __( 'Warning! All user balances will be set to zero! This can not be undone!', 'mycred' ),
|
466 |
+
'done' => __( 'Done!', 'mycred' ),
|
467 |
+
'export_close' => __( 'Close', 'mycred' ),
|
468 |
+
'export_title' => $mycred->template_tags_general( __( 'Export users %plural%', 'mycred' ) )
|
469 |
+
)
|
470 |
+
);
|
471 |
+
|
472 |
+
// Inline Editing Script
|
473 |
+
wp_register_script(
|
474 |
+
'mycred-inline-edit',
|
475 |
+
plugins_url( 'assets/js/inline-edit.js', myCRED_THIS ),
|
476 |
+
array( 'jquery', 'jquery-ui-core', 'jquery-ui-dialog', 'jquery-effects-core', 'jquery-effects-slide' ),
|
477 |
+
myCRED_VERSION . '.1'
|
478 |
+
);
|
479 |
+
wp_localize_script(
|
480 |
+
'mycred-inline-edit',
|
481 |
+
'myCREDedit',
|
482 |
+
array(
|
483 |
+
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
484 |
+
'title' => sprintf( __( 'Edit Users %s balance', 'mycred' ),$mycred->plural() ),
|
485 |
+
'close' => __( 'Close', 'mycred' ),
|
486 |
+
'working' => __( 'Processing...', 'mycred' )
|
487 |
+
)
|
488 |
+
);
|
489 |
+
|
490 |
+
// Admin Style
|
491 |
+
wp_register_style(
|
492 |
+
'mycred-admin',
|
493 |
+
plugins_url( 'assets/css/admin.css', myCRED_THIS ),
|
494 |
+
false,
|
495 |
+
myCRED_VERSION . '.1',
|
496 |
+
'all'
|
497 |
+
);
|
498 |
+
wp_register_style(
|
499 |
+
'mycred-inline-edit',
|
500 |
+
plugins_url( 'assets/css/inline-edit.css', myCRED_THIS ),
|
501 |
+
false,
|
502 |
+
myCRED_VERSION . '.1',
|
503 |
+
'all'
|
504 |
+
);
|
505 |
+
|
506 |
+
// Let others play
|
507 |
+
do_action( 'mycred_admin_enqueue' );
|
508 |
+
}
|
509 |
|
510 |
+
/**
|
511 |
+
* Enqueue Admin Styling
|
512 |
+
* @since 1.3
|
513 |
+
* @version 1.0
|
514 |
+
*/
|
515 |
+
function mycred_admin_page_styles()
|
516 |
+
{
|
517 |
+
wp_enqueue_style( 'mycred-admin' );
|
518 |
+
}
|
519 |
|
520 |
+
/**
|
521 |
+
* Reset Key
|
522 |
+
* @since 1.3
|
523 |
+
* @version 1.0
|
524 |
+
*/
|
525 |
+
add_action( 'mycred_reset_key', 'mycred_reset_key' );
|
526 |
+
function mycred_reset_key()
|
527 |
+
{
|
528 |
+
require_once( myCRED_INCLUDES_DIR . 'mycred-protect.php' );
|
529 |
+
$protect = new myCRED_Protect();
|
530 |
+
$protect->reset_key();
|
531 |
+
}
|
532 |
|
533 |
+
/**
|
534 |
+
* myCRED Plugin Links
|
535 |
+
* @since 1.3
|
536 |
+
* @version 1.0
|
537 |
+
*/
|
538 |
+
function mycred_plugin_links( $actions, $plugin_file, $plugin_data, $context )
|
539 |
+
{
|
540 |
+
// Link to Setup
|
541 |
+
if ( !is_mycred_ready() ) {
|
542 |
+
$actions['setup'] = '<a href="' . admin_url( 'plugins.php?page=myCRED-setup' ) . '">' . __( 'Setup', 'mycred' ) . '</a>';
|
543 |
+
return $actions;
|
544 |
+
}
|
545 |
|
546 |
+
$actions['tutorials'] = '<a href="http://mycred.me/support/tutorials/" target="_blank">' . __( 'Tutorials', 'mycred' ) . '</a>';
|
547 |
+
$actions['docs'] = '<a href="http://mycred.me/support/codex/" target="_blank">' . __( 'Codex', 'mycred' ) . '</a>';
|
548 |
+
$actions['store'] = '<a href="http://mycred.me/store/" target="_blank">' . __( 'Store', 'mycred' ) . '</a>';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
549 |
|
550 |
+
return $actions;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
551 |
}
|
552 |
?>
|
plugins/index.php
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
// Silence is golden.
|
3 |
+
?>
|
plugins/mycred-hook-badgeOS.php
ADDED
@@ -0,0 +1,287 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* BadgeOS
|
4 |
+
* @since 1.0.8
|
5 |
+
* @version 1.0
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 1.0.8
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'badgeOS_myCRED_Hook' );
|
14 |
+
function badgeOS_myCRED_Hook( $installed ) {
|
15 |
+
$installed['badgeos'] = array(
|
16 |
+
'title' => __( 'BadgeOS', 'mycred' ),
|
17 |
+
'description' => __( 'Default settings for each BadgeOS Achievement type. These settings may be overridden for individual achievement type.', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_Hook_BadgeOS' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Exclude BadgeOS Post Types
|
25 |
+
* @since 1.0.8
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
add_filter( 'mycred_post_type_excludes', 'mycred_exclude_post_type_badgeOS' );
|
29 |
+
function mycred_exclude_post_type_badgeOS( $excludes ) {
|
30 |
+
$excludes = array_merge( $excludes, badgeos_get_achievement_types_slugs() );
|
31 |
+
return $excludes;
|
32 |
+
}
|
33 |
+
|
34 |
+
/**
|
35 |
+
* BadgeOS Hook
|
36 |
+
* @since 1.0.8
|
37 |
+
* @version 1.0
|
38 |
+
*/
|
39 |
+
if ( !class_exists( 'myCRED_Hook_BadgeOS' ) ) {
|
40 |
+
class myCRED_Hook_BadgeOS extends myCRED_Hook {
|
41 |
+
/**
|
42 |
+
* Construct
|
43 |
+
*/
|
44 |
+
function __construct( $hook_prefs ) {
|
45 |
+
parent::__construct( array(
|
46 |
+
'id' => 'badgeos',
|
47 |
+
'defaults' => ''
|
48 |
+
), $hook_prefs );
|
49 |
+
}
|
50 |
+
|
51 |
+
/**
|
52 |
+
* Run
|
53 |
+
* @since 1.0.8
|
54 |
+
* @version 1.0
|
55 |
+
*/
|
56 |
+
public function run() {
|
57 |
+
add_action( 'add_meta_boxes', array( $this, 'add_metaboxes' ) );
|
58 |
+
add_action( 'save_post', array( $this, 'save_achivement_data' ) );
|
59 |
+
|
60 |
+
add_action( 'badgeos_award_achievement', array( $this, 'award_achievent' ), 10, 2 );
|
61 |
+
add_action( 'badgeos_revoke_achievement', array( $this, 'revoke_achievement' ), 10, 2 );
|
62 |
+
}
|
63 |
+
|
64 |
+
/**
|
65 |
+
* Add Metaboxes
|
66 |
+
* @since 1.0.8
|
67 |
+
* @version 1.0
|
68 |
+
*/
|
69 |
+
public function add_metaboxes() {
|
70 |
+
// Get all Achievement Types
|
71 |
+
$badge_post_types = badgeos_get_achievement_types_slugs();
|
72 |
+
foreach ( $badge_post_types as $post_type ) {
|
73 |
+
// Add Meta Box
|
74 |
+
add_meta_box(
|
75 |
+
'mycred_badgeos_' . $post_type,
|
76 |
+
__( 'myCRED', 'mycred' ),
|
77 |
+
array( $this, 'render_meta_box' ),
|
78 |
+
$post_type,
|
79 |
+
'side',
|
80 |
+
'core'
|
81 |
+
);
|
82 |
+
}
|
83 |
+
}
|
84 |
+
|
85 |
+
/**
|
86 |
+
* Render Meta Box
|
87 |
+
* @since 1.0.8
|
88 |
+
* @version 1.0
|
89 |
+
*/
|
90 |
+
public function render_meta_box( $post ) {
|
91 |
+
// Setup is needed
|
92 |
+
if ( !isset( $this->prefs[$post->post_type] ) ) {
|
93 |
+
$message = sprintf( __( 'Please setup your <a href="%s">default settings</a> before using this feature.', 'mycred' ), admin_url( 'admin.php?page=myCRED_page_hooks' ) );
|
94 |
+
echo '<p>' . $message . '</p>';
|
95 |
+
}
|
96 |
+
|
97 |
+
// Prep Achievement Data
|
98 |
+
$prefs = $this->prefs;
|
99 |
+
$mycred = mycred_get_settings();
|
100 |
+
$achievement_data = get_post_meta( $post->ID, '_mycred_values', true );
|
101 |
+
if ( empty( $achievement_data ) )
|
102 |
+
$achievement_data = $prefs[$post->post_type]; ?>
|
103 |
+
|
104 |
+
<p><strong><?php echo $mycred->template_tags_general( __( '%plural% to Award', 'mycred' ) ); ?></strong></p>
|
105 |
+
<p>
|
106 |
+
<label class="screen-reader-text" for="mycred-values-creds"><?php echo $mycred->template_tags_general( __( '%plural% to Award', 'mycred' ) ); ?></label>
|
107 |
+
<input type="text" name="mycred_values[creds]" id="mycred-values-creds" value="<?php echo $achievement_data['creds']; ?>" size="8" />
|
108 |
+
<span class="description"><?php _e( 'Use zero to disable', 'mycred' ); ?></span>
|
109 |
+
</p>
|
110 |
+
<p><strong><?php _e( 'Log Template', 'mycred' ); ?></strong></p>
|
111 |
+
<p>
|
112 |
+
<label class="screen-reader-text" for="mycred-values-log"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
113 |
+
<input type="text" name="mycred_values[log]" id="mycred-values-log" value="<?php echo $achievement_data['log']; ?>" style="width:99%;" />
|
114 |
+
</p>
|
115 |
+
<?php
|
116 |
+
// If deduction is enabled
|
117 |
+
if ( $this->prefs[$post->post_type]['deduct'] == 1 ) { ?>
|
118 |
+
|
119 |
+
<p><strong><?php _e( 'Deduction Log Template', 'mycred' ); ?></strong></p>
|
120 |
+
<p>
|
121 |
+
<label class="screen-reader-text" for="mycred-values-log"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
122 |
+
<input type="text" name="mycred_values[deduct_log]" id="mycred-values-deduct-log" value="<?php echo $achievement_data['deduct_log']; ?>" style="width:99%;" />
|
123 |
+
</p>
|
124 |
+
<?php
|
125 |
+
}
|
126 |
+
}
|
127 |
+
|
128 |
+
/**
|
129 |
+
* Save Achievement Data
|
130 |
+
* @since 1.0.8
|
131 |
+
* @version 1.1
|
132 |
+
*/
|
133 |
+
public function save_achivement_data( $post_id ) {
|
134 |
+
// Post Type
|
135 |
+
$post_type = get_post_type( $post_id );
|
136 |
+
|
137 |
+
// Make sure this is a BadgeOS Object
|
138 |
+
if ( !in_array( $post_type, badgeos_get_achievement_types_slugs() ) ) return;
|
139 |
+
|
140 |
+
// Make sure preference is set
|
141 |
+
if ( !isset( $this->prefs[$post_type] ) || !isset( $_POST['mycred_values']['creds'] ) || !isset( $_POST['mycred_values']['log'] ) ) return;
|
142 |
+
|
143 |
+
// Only save if the settings differ, otherwise we default
|
144 |
+
if ( $_POST['mycred_values']['creds'] == $this->prefs[$post_type]['creds'] &&
|
145 |
+
$_POST['mycred_values']['log'] == $this->prefs[$post_type]['log'] ) return;
|
146 |
+
|
147 |
+
$data = array();
|
148 |
+
|
149 |
+
// Creds
|
150 |
+
if ( !empty( $_POST['mycred_values']['creds'] ) && $_POST['mycred_values']['creds'] != $this->prefs[$post_type]['creds'] )
|
151 |
+
$data['creds'] = $this->core->format_number( $_POST['mycred_values']['creds'] );
|
152 |
+
else
|
153 |
+
$data['creds'] = $this->core->format_number( $this->prefs[$post_type]['creds'] );
|
154 |
+
|
155 |
+
// Log template
|
156 |
+
if ( !empty( $_POST['mycred_values']['log'] ) && $_POST['mycred_values']['log'] != $this->prefs[$post_type]['log'] )
|
157 |
+
$data['log'] = strip_tags( $_POST['mycred_values']['log'] );
|
158 |
+
else
|
159 |
+
$data['log'] = strip_tags( $this->prefs[$post_type]['log'] );
|
160 |
+
|
161 |
+
// If deduction is enabled save log template
|
162 |
+
if ( $this->prefs[$post_type]['deduct'] == 1 ) {
|
163 |
+
if ( !empty( $_POST['mycred_values']['deduct_log'] ) && $_POST['mycred_values']['deduct_log'] != $this->prefs[$post_type]['deduct_log'] )
|
164 |
+
$data['deduct_log'] = strip_tags( $_POST['mycred_values']['deduct_log'] );
|
165 |
+
else
|
166 |
+
$data['deduct_log'] = strip_tags( $this->prefs[$post_type]['deduct_log'] );
|
167 |
+
}
|
168 |
+
|
169 |
+
// Update sales values
|
170 |
+
update_post_meta( $post_id, '_mycred_values', $data );
|
171 |
+
}
|
172 |
+
|
173 |
+
/**
|
174 |
+
* Award Achievement
|
175 |
+
* Run by BadgeOS when ever needed, we make sure settings are not zero otherwise
|
176 |
+
* award points whenever this hook fires.
|
177 |
+
* @since 1.0.8
|
178 |
+
* @version 1.0
|
179 |
+
*/
|
180 |
+
public function award_achievent( $user_id, $achievement_id ) {
|
181 |
+
$post_type = get_post_type( $achievement_id );
|
182 |
+
// Settings are not set
|
183 |
+
if ( !isset( $this->prefs[$post_type]['creds'] ) ) return;
|
184 |
+
|
185 |
+
// Get achievemen data
|
186 |
+
$achievement_data = get_post_meta( $achievement_id, '_mycred_values', true );
|
187 |
+
if ( empty( $achievement_data ) )
|
188 |
+
$achievement_data = $this->prefs[$post_type];
|
189 |
+
|
190 |
+
// Make sure its not disabled
|
191 |
+
if ( $achievement_data['creds'] == 0 ) return;
|
192 |
+
|
193 |
+
// Execute
|
194 |
+
$post_type_object = get_post_type_object( $post_type );
|
195 |
+
$this->core->add_creds(
|
196 |
+
$post_type_object->labels->name,
|
197 |
+
$user_id,
|
198 |
+
$achievement_data['creds'],
|
199 |
+
$achievement_data['log'],
|
200 |
+
$achievement_id,
|
201 |
+
array( 'ref_type' => 'post' )
|
202 |
+
);
|
203 |
+
}
|
204 |
+
|
205 |
+
/**
|
206 |
+
* Revoke Achievement
|
207 |
+
* Run by BadgeOS when a users achievement is revoed.
|
208 |
+
* @since 1.0.8
|
209 |
+
* @version 1.1
|
210 |
+
*/
|
211 |
+
public function revoke_achievement( $user_id, $achievement_id ) {
|
212 |
+
$post_type = get_post_type( $achievement_id );
|
213 |
+
// Settings are not set
|
214 |
+
if ( !isset( $this->prefs[$post_type]['creds'] ) ) return;
|
215 |
+
|
216 |
+
// Get achievemen data
|
217 |
+
$achievement_data = get_post_meta( $achievement_id, '_mycred_values', true );
|
218 |
+
if ( empty( $achievement_data ) )
|
219 |
+
$achievement_data = $this->prefs[$post_type];
|
220 |
+
|
221 |
+
// Make sure its not disabled
|
222 |
+
if ( $achievement_data['creds'] == 0 ) return;
|
223 |
+
|
224 |
+
// Execute
|
225 |
+
$post_type_object = get_post_type_object( $post_type );
|
226 |
+
$this->core->add_creds(
|
227 |
+
$post_type_object->labels->name,
|
228 |
+
$user_id,
|
229 |
+
0-$achievement_data['creds'],
|
230 |
+
$achievement_data['deduct_log'],
|
231 |
+
$achievement_id,
|
232 |
+
array( 'ref_type' => 'post' )
|
233 |
+
);
|
234 |
+
}
|
235 |
+
|
236 |
+
/**
|
237 |
+
* Preferences for BadgeOS
|
238 |
+
* @since 1.0.8
|
239 |
+
* @version 1.0
|
240 |
+
*/
|
241 |
+
public function preferences() {
|
242 |
+
$prefs = $this->prefs;
|
243 |
+
$badge_post_types = badgeos_get_achievement_types_slugs();
|
244 |
+
foreach ( $badge_post_types as $post_type ) {
|
245 |
+
if ( in_array( $post_type, apply_filters( 'mycred_badgeos_excludes', array( 'step' ) ) ) ) continue;
|
246 |
+
if ( !isset( $prefs[$post_type] ) )
|
247 |
+
$prefs[$post_type] = array(
|
248 |
+
'creds' => 10,
|
249 |
+
'log' => '',
|
250 |
+
'deduct' => 1,
|
251 |
+
'deduct_log' => '%plural% deduction'
|
252 |
+
);
|
253 |
+
|
254 |
+
$post_type_object = get_post_type_object( $post_type );
|
255 |
+
$title = sprintf( __( 'Default %s for %s', 'mycred' ), $this->core->plural(), $post_type_object->labels->singular_name ); ?>
|
256 |
+
|
257 |
+
<!-- Creds for -->
|
258 |
+
<label for="<?php echo $this->field_id( array( $post_type, 'creds' ) ); ?>" class="subheader"><?php echo $title; ?></label>
|
259 |
+
<ol>
|
260 |
+
<li>
|
261 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $post_type, 'creds' ) ); ?>" id="<?php echo $this->field_id( array( $post_type, 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs[$post_type]['creds'] ); ?>" size="8" /></div>
|
262 |
+
<span class="description"><?php echo $this->core->template_tags_general( __( 'Use zero to disable users gaining %_plural%', 'mycred' ) ); ?></span>
|
263 |
+
</li>
|
264 |
+
<li class="empty"> </li>
|
265 |
+
<li>
|
266 |
+
<label for="<?php echo $this->field_id( array( $post_type, 'log' ) ); ?>"><?php _e( 'Default Log template', 'mycred' ); ?></label>
|
267 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $post_type, 'log' ) ); ?>" id="<?php echo $this->field_id( array( $form_id, 'log' ) ); ?>" value="<?php echo $prefs[$post_type]['log']; ?>" class="long" /></div>
|
268 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
269 |
+
</li>
|
270 |
+
<li>
|
271 |
+
<input type="checkbox" name="<?php echo $this->field_name( array( $post_type, 'deduct' ) ); ?>" id="<?php echo $this->field_id( array( $post_type, 'deduct' ) ); ?>" <?php checked( $prefs[$post_type]['deduct'], 1 ); ?> value="1" />
|
272 |
+
<label for="<?php echo $this->field_id( array( $post_type, 'deduct' ) ); ?>"><?php echo $this->core->template_tags_general( __( 'Deduct %_plural% if user looses ' . $post_type_object->labels->singular_name, 'mycred' ) ); ?></label>
|
273 |
+
</li>
|
274 |
+
<li class="empty"> </li>
|
275 |
+
<li>
|
276 |
+
<label for="<?php echo $this->field_id( array( $post_type, 'deduct_log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
277 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $post_type, 'deduct_log' ) ); ?>" id="<?php echo $this->field_id( array( $form_id, 'deduct_log' ) ); ?>" value="<?php echo $prefs[$post_type]['deduct_log']; ?>" class="long" /></div>
|
278 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
279 |
+
</li>
|
280 |
+
</ol>
|
281 |
+
<?php }
|
282 |
+
unset( $this );
|
283 |
+
}
|
284 |
+
}
|
285 |
+
}
|
286 |
+
}
|
287 |
+
?>
|
plugins/mycred-hook-bbPress.php
ADDED
@@ -0,0 +1,529 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* bbPress
|
4 |
+
* @since 0.1
|
5 |
+
* @version 1.2
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 0.1
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'bbPress_myCRED_Hook' );
|
14 |
+
function bbPress_myCRED_Hook( $installed ) {
|
15 |
+
$installed['hook_bbpress'] = array(
|
16 |
+
'title' => __( 'bbPress' ),
|
17 |
+
'description' => __( 'Awards %_plural% for bbPress actions.', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_bbPress' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Exclude bbPress Post Types
|
25 |
+
* @since 0.1
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
add_filter( 'mycred_post_type_excludes', 'mycred_exclude_post_type_bbPress' );
|
29 |
+
function mycred_exclude_post_type_bbPress( $excludes ) {
|
30 |
+
$excludes[] = bbp_get_forum_post_type();
|
31 |
+
$excludes[] = bbp_get_topic_post_type();
|
32 |
+
$excludes[] = bbp_get_reply_post_type();
|
33 |
+
return $excludes;
|
34 |
+
}
|
35 |
+
|
36 |
+
/**
|
37 |
+
* Insert Points Balance in Profile
|
38 |
+
* @since 0.1
|
39 |
+
* @version 1.0
|
40 |
+
*/
|
41 |
+
add_action( 'bbp_template_after_user_profile', 'mycred_bbp_add_balance_in_profile' );
|
42 |
+
function mycred_bbp_add_balance_in_profile() {
|
43 |
+
$user_id = bbp_get_displayed_user_id();
|
44 |
+
$mycred = mycred_get_settings();
|
45 |
+
|
46 |
+
if ( $mycred->exclude_user( $user_id ) ) return;
|
47 |
+
|
48 |
+
$balance = $mycred->get_users_cred( $user_id );
|
49 |
+
echo '<div class="users-mycred-balance">' . $mycred->plural() . ': ' . $mycred->format_creds( $balance ) . '</div>';
|
50 |
+
}
|
51 |
+
|
52 |
+
/**
|
53 |
+
* bbPress Hook
|
54 |
+
* @since 0.1
|
55 |
+
* @version 1.2
|
56 |
+
*/
|
57 |
+
if ( !class_exists( 'myCRED_bbPress' ) ) {
|
58 |
+
class myCRED_bbPress extends myCRED_Hook {
|
59 |
+
/**
|
60 |
+
* Construct
|
61 |
+
*/
|
62 |
+
function __construct( $hook_prefs ) {
|
63 |
+
parent::__construct( array(
|
64 |
+
'id' => 'hook_bbpress',
|
65 |
+
'defaults' => array(
|
66 |
+
'new_forum' => array(
|
67 |
+
'creds' => 1,
|
68 |
+
'log' => '%plural% for new forum'
|
69 |
+
),
|
70 |
+
'delete_forum' => array(
|
71 |
+
'creds' => 0-1,
|
72 |
+
'log' => '%singular% deduction for deleted forum'
|
73 |
+
),
|
74 |
+
'new_topic' => array(
|
75 |
+
'creds' => 1,
|
76 |
+
'log' => '%plural% for new forum topic',
|
77 |
+
'author' => 0
|
78 |
+
),
|
79 |
+
'delete_topic' => array(
|
80 |
+
'creds' => 0-1,
|
81 |
+
'log' => '%singular% deduction for deleted topic'
|
82 |
+
),
|
83 |
+
'fav_topic' => array(
|
84 |
+
'creds' => 1,
|
85 |
+
'log' => '%plural% for someone favorited your forum topic',
|
86 |
+
'limit' => 1
|
87 |
+
),
|
88 |
+
'new_reply' => array(
|
89 |
+
'creds' => 1,
|
90 |
+
'log' => '%plural% for new forum reply',
|
91 |
+
'author' => 0,
|
92 |
+
'limit' => 10,
|
93 |
+
),
|
94 |
+
'delete_reply' => array(
|
95 |
+
'creds' => 0-1,
|
96 |
+
'log' => '%singular% deduction for deleted reply'
|
97 |
+
),
|
98 |
+
'show_points_in_reply' => 0
|
99 |
+
)
|
100 |
+
), $hook_prefs );
|
101 |
+
}
|
102 |
+
|
103 |
+
/**
|
104 |
+
* Run
|
105 |
+
* @since 0.1
|
106 |
+
* @version 1.2
|
107 |
+
*/
|
108 |
+
public function run() {
|
109 |
+
// Insert Points balance in profile
|
110 |
+
if ( isset( $this->prefs['show_points_in_reply'] ) && $this->prefs['show_points_in_reply'] == 1 )
|
111 |
+
add_action( 'bbp_theme_after_reply_author_details', array( $this, 'insert_balance' ) );
|
112 |
+
|
113 |
+
// New Forum
|
114 |
+
if ( $this->prefs['new_forum']['creds'] != 0 )
|
115 |
+
add_action( 'bbp_new_forum', array( $this, 'new_forum' ), 20 );
|
116 |
+
// Delete Forum
|
117 |
+
if ( $this->prefs['delete_forum']['creds'] != 0 )
|
118 |
+
add_action( 'bbp_delete_forum', array( $this, 'delete_forum' ) );
|
119 |
+
// New Topic
|
120 |
+
if ( $this->prefs['new_topic']['creds'] != 0 )
|
121 |
+
add_action( 'bbp_new_topic', array( $this, 'new_topic' ), 20, 4 );
|
122 |
+
// Delete Topic
|
123 |
+
if ( $this->prefs['delete_topic']['creds'] != 0 )
|
124 |
+
add_action( 'bbp_delete_topic', array( $this, 'delete_topic' ) );
|
125 |
+
// Fave Topic
|
126 |
+
if ( $this->prefs['fav_topic']['creds'] != 0 )
|
127 |
+
add_action( 'bbp_add_user_favorite', array( $this, 'fav_topic' ), 10, 2 );
|
128 |
+
// New Reply
|
129 |
+
if ( $this->prefs['new_reply']['creds'] != 0 )
|
130 |
+
add_action( 'bbp_new_reply', array( $this, 'new_reply' ), 20, 5 );
|
131 |
+
// Delete Reply
|
132 |
+
if ( $this->prefs['delete_reply']['creds'] != 0 )
|
133 |
+
add_action( 'bbp_delete_reply', array( $this, 'delete_reply' ) );
|
134 |
+
}
|
135 |
+
|
136 |
+
/**
|
137 |
+
* New Forum
|
138 |
+
* @since 1.1.1
|
139 |
+
* @version 1.1
|
140 |
+
*/
|
141 |
+
public function new_forum( $forum ) {
|
142 |
+
// Forum id
|
143 |
+
$forum_id = $forum['forum_id'];
|
144 |
+
|
145 |
+
// Forum author
|
146 |
+
$forum_author = $forum['forum_author'];
|
147 |
+
|
148 |
+
// Check if user is excluded
|
149 |
+
if ( $this->core->exclude_user( $forum_author ) ) return;
|
150 |
+
|
151 |
+
// Make sure this is unique event
|
152 |
+
if ( $this->has_entry( 'new_forum', $forum_id, $forum_author ) ) return;
|
153 |
+
|
154 |
+
// Execute
|
155 |
+
$this->core->add_creds(
|
156 |
+
'new_forum',
|
157 |
+
$forum_author,
|
158 |
+
$this->prefs['new_forum']['creds'],
|
159 |
+
$this->prefs['new_forum']['log'],
|
160 |
+
$forum_id,
|
161 |
+
array( 'ref_type' => 'post' )
|
162 |
+
);
|
163 |
+
}
|
164 |
+
|
165 |
+
/**
|
166 |
+
* Delete Forum
|
167 |
+
* @since 1.2
|
168 |
+
* @version 1.0
|
169 |
+
*/
|
170 |
+
public function delete_forum( $forum_id ) {
|
171 |
+
// Get Author
|
172 |
+
$forum_author = bbp_get_forum_author_id( $forum_id );
|
173 |
+
|
174 |
+
// If gained, points, deduct
|
175 |
+
if ( $this->has_entry( 'new_forum', $forum_id, $forum_author ) ) {
|
176 |
+
|
177 |
+
// Execute
|
178 |
+
$this->core->add_creds(
|
179 |
+
'deleted_forum',
|
180 |
+
$forum_author,
|
181 |
+
$this->prefs['delete_forum']['creds'],
|
182 |
+
$this->prefs['delete_forum']['log'],
|
183 |
+
$forum_id,
|
184 |
+
array( 'ref_type' => 'post' )
|
185 |
+
);
|
186 |
+
|
187 |
+
}
|
188 |
+
}
|
189 |
+
|
190 |
+
/**
|
191 |
+
* New Topic
|
192 |
+
* @since 0.1
|
193 |
+
* @version 1.1
|
194 |
+
*/
|
195 |
+
public function new_topic( $topic_id, $forum_id, $anonymous_data, $topic_author ) {
|
196 |
+
// Check if user is excluded
|
197 |
+
if ( $this->core->exclude_user( $topic_author ) ) return;
|
198 |
+
|
199 |
+
// Check if forum author is allowed to get points for their own topics
|
200 |
+
if ( (bool) $this->prefs['new_topic']['author'] == false ) {
|
201 |
+
if ( bbp_get_forum_author_id( $forum_id ) == $topic_author ) return;
|
202 |
+
}
|
203 |
+
|
204 |
+
// Make sure this is unique event
|
205 |
+
if ( $this->has_entry( 'new_forum_topic', $topic_id, $topic_author ) ) return;
|
206 |
+
|
207 |
+
// Execute
|
208 |
+
$this->core->add_creds(
|
209 |
+
'new_forum_topic',
|
210 |
+
$topic_author,
|
211 |
+
$this->prefs['new_topic']['creds'],
|
212 |
+
$this->prefs['new_topic']['log'],
|
213 |
+
$topic_id,
|
214 |
+
array( 'ref_type' => 'post' )
|
215 |
+
);
|
216 |
+
}
|
217 |
+
|
218 |
+
/**
|
219 |
+
* Delete Topic
|
220 |
+
* @since 1.2
|
221 |
+
* @version 1.0
|
222 |
+
*/
|
223 |
+
public function delete_topic( $topic_id ) {
|
224 |
+
// Get Author
|
225 |
+
$topic_author = bbp_get_topic_author_id( $topic_id );
|
226 |
+
|
227 |
+
// If gained, points, deduct
|
228 |
+
if ( $this->has_entry( 'new_forum_topic', $topic_id, $topic_author ) ) {
|
229 |
+
|
230 |
+
// Execute
|
231 |
+
$this->core->add_creds(
|
232 |
+
'deleted_topic',
|
233 |
+
$topic_author,
|
234 |
+
$this->prefs['delete_topic']['creds'],
|
235 |
+
$this->prefs['delete_topic']['log'],
|
236 |
+
$topic_id,
|
237 |
+
array( 'ref_type' => 'post' )
|
238 |
+
);
|
239 |
+
|
240 |
+
}
|
241 |
+
}
|
242 |
+
|
243 |
+
/**
|
244 |
+
* Topic Added to Favorites
|
245 |
+
* @by Fee (http://wordpress.org/support/profile/wdfee)
|
246 |
+
* @since 1.1.1
|
247 |
+
* @version 1.2
|
248 |
+
*/
|
249 |
+
public function fav_topic( $user_id, $topic_id ) {
|
250 |
+
// $user_id is loggedin_user, not author, so get topic author
|
251 |
+
$topic_author = get_post_field( 'post_author', $topic_id );
|
252 |
+
|
253 |
+
// Enforce Daily Limit
|
254 |
+
if ( $this->reached_daily_limit( $topic_author, 'fav_topic' ) ) return;
|
255 |
+
|
256 |
+
// Check if user is excluded (required)
|
257 |
+
if ( $this->core->exclude_user( $topic_author ) || $topic_author == $user_id ) return;
|
258 |
+
|
259 |
+
// Make sure this is a unique event (favorite not from same user)
|
260 |
+
if ( $this->has_entry( 'topic_favorited', $topic_id, $topic_author, 's:8:"ref_user";i:' . $user_id . ';' ) ) return;
|
261 |
+
|
262 |
+
// Execute
|
263 |
+
$this->core->add_creds(
|
264 |
+
'topic_favorited',
|
265 |
+
$topic_author,
|
266 |
+
$this->prefs['fav_topic']['creds'],
|
267 |
+
$this->prefs['fav_topic']['log'],
|
268 |
+
$topic_id,
|
269 |
+
array( 'ref_user' => $user_id, 'ref_type' => 'post' )
|
270 |
+
);
|
271 |
+
|
272 |
+
// Update Limit
|
273 |
+
$this->update_daily_limit( $topic_author, 'fav_topic' );
|
274 |
+
}
|
275 |
+
|
276 |
+
/**
|
277 |
+
* New Reply
|
278 |
+
* @since 0.1
|
279 |
+
* @version 1.2
|
280 |
+
*/
|
281 |
+
public function new_reply( $reply_id, $topic_id, $forum_id, $anonymous_data, $reply_author ) {
|
282 |
+
// Check if user is excluded
|
283 |
+
if ( $this->core->exclude_user( $reply_author ) ) return;
|
284 |
+
|
285 |
+
// Check if topic author gets points for their own replies
|
286 |
+
if ( (bool) $this->prefs['new_reply']['author'] === false ) {
|
287 |
+
if ( bbp_get_topic_author_id( $topic_id ) == $reply_author ) return;
|
288 |
+
}
|
289 |
+
|
290 |
+
// Check daily limit
|
291 |
+
if ( $this->reached_daily_limit( $reply_author, 'new_reply' ) ) return;
|
292 |
+
|
293 |
+
// Make sure this is unique event
|
294 |
+
if ( $this->has_entry( 'new_forum_reply', $reply_id, $reply_author ) ) return;
|
295 |
+
|
296 |
+
// Execute
|
297 |
+
$this->core->add_creds(
|
298 |
+
'new_forum_reply',
|
299 |
+
$reply_author,
|
300 |
+
$this->prefs['new_reply']['creds'],
|
301 |
+
$this->prefs['new_reply']['log'],
|
302 |
+
$reply_id,
|
303 |
+
array( 'ref_type' => 'post' )
|
304 |
+
);
|
305 |
+
|
306 |
+
// Update Limit
|
307 |
+
$this->update_daily_limit( $topic_author, 'new_reply' );
|
308 |
+
}
|
309 |
+
|
310 |
+
/**
|
311 |
+
* Delete Reply
|
312 |
+
* @since 1.2
|
313 |
+
* @version 1.0
|
314 |
+
*/
|
315 |
+
public function delete_reply( $reply_id ) {
|
316 |
+
// Get Author
|
317 |
+
$reply_author = bbp_get_reply_author_id( $reply_id );
|
318 |
+
|
319 |
+
// If gained, points, deduct
|
320 |
+
if ( $this->has_entry( 'new_forum_reply', $reply_id, $reply_author ) ) {
|
321 |
+
|
322 |
+
// Execute
|
323 |
+
$this->core->add_creds(
|
324 |
+
'deleted_reply',
|
325 |
+
$reply_author,
|
326 |
+
$this->prefs['delete_reply']['creds'],
|
327 |
+
$this->prefs['delete_reply']['log'],
|
328 |
+
$reply_id,
|
329 |
+
array( 'ref_type' => 'post' )
|
330 |
+
);
|
331 |
+
|
332 |
+
}
|
333 |
+
}
|
334 |
+
|
335 |
+
/**
|
336 |
+
* Insert Balance
|
337 |
+
* @since 0.1
|
338 |
+
* @version 1.1
|
339 |
+
*/
|
340 |
+
public function insert_balance() {
|
341 |
+
$reply_id = bbp_get_reply_id();
|
342 |
+
if ( bbp_is_reply_anonymous( $reply_id ) ) return;
|
343 |
+
|
344 |
+
$balance = $this->core->get_users_cred( bbp_get_reply_author_id( $reply_id ) );
|
345 |
+
echo '<div class="mycred-balance">' . $this->core->plural() . ': ' . $this->core->format_creds( $balance ) . '</div>';
|
346 |
+
}
|
347 |
+
|
348 |
+
/**
|
349 |
+
* Reched Daily Limit
|
350 |
+
* Checks if a user has reached their daily limit.
|
351 |
+
* @since 1.2
|
352 |
+
* @version 1.0
|
353 |
+
*/
|
354 |
+
public function reached_daily_limit( $user_id, $id ) {
|
355 |
+
// No limit used
|
356 |
+
if ( $this->prefs[$id]['limit'] == 0 ) return false;
|
357 |
+
$today = date( 'Y-m-d' );
|
358 |
+
$current = get_user_meta( $user_id, 'mycred_bbp_limits_' . $id, true );
|
359 |
+
if ( empty( $current ) || !array_key_exists( $today, (array) $current ) ) $current[$today] = 0;
|
360 |
+
if ( $current[ $today ] < $this->prefs[$id]['limit'] ) return false;
|
361 |
+
return true;
|
362 |
+
}
|
363 |
+
|
364 |
+
/**
|
365 |
+
* Update Daily Limit
|
366 |
+
* Updates a given users daily limit.
|
367 |
+
* @since 1.2
|
368 |
+
* @version 1.0
|
369 |
+
*/
|
370 |
+
public function update_daily_limit( $user_id, $id ) {
|
371 |
+
// No limit used
|
372 |
+
if ( $this->prefs[$id]['limit'] == 0 ) return;
|
373 |
+
|
374 |
+
$today = date( 'Y-m-d' );
|
375 |
+
$current = get_user_meta( $user_id, 'mycred_bbp_limits_' . $id, true );
|
376 |
+
if ( empty( $current ) || !array_key_exists( $today, (array) $current ) )
|
377 |
+
$current[$today] = 0;
|
378 |
+
|
379 |
+
$current[ $today ] = $current[ $today ]+1;
|
380 |
+
|
381 |
+
update_user_meta( $user_id, 'mycred_bbp_limits_' . $id, $current );
|
382 |
+
}
|
383 |
+
|
384 |
+
/**
|
385 |
+
* Preferences
|
386 |
+
* @since 0.1
|
387 |
+
* @version 1.1
|
388 |
+
*/
|
389 |
+
public function preferences() {
|
390 |
+
$prefs = $this->prefs;
|
391 |
+
|
392 |
+
// Update
|
393 |
+
if ( !isset( $prefs['show_points_in_reply'] ) )
|
394 |
+
$prefs['show_points_in_reply'] = 0;
|
395 |
+
if ( !isset( $prefs['new_topic']['author'] ) )
|
396 |
+
$prefs['new_topic']['author'] = 0;
|
397 |
+
if ( !isset( $prefs['fav_topic'] ) )
|
398 |
+
$prefs['fav_topic'] = array( 'creds' => 1, 'log' => '%plural% for someone favorited your forum topic' );
|
399 |
+
if ( !isset( $prefs['new_reply']['author'] ) )
|
400 |
+
$prefs['new_reply']['author'] = 0;
|
401 |
+
if ( !isset( $prefs['fav_topic']['limit'] ) )
|
402 |
+
$prefs['fav_topic']['limit'] = 0;
|
403 |
+
if ( !isset( $prefs['new_reply']['limit'] ) )
|
404 |
+
$prefs['new_reply']['limit'] = 0; ?>
|
405 |
+
|
406 |
+
<!-- Creds for New Forums -->
|
407 |
+
<label for="<?php echo $this->field_id( array( 'new_forum', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for New Forum', 'mycred' ) ); ?></label>
|
408 |
+
<ol id="">
|
409 |
+
<li>
|
410 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_forum', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'new_forum', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['new_forum']['creds'] ); ?>" size="8" /></div>
|
411 |
+
</li>
|
412 |
+
<li class="empty"> </li>
|
413 |
+
<li>
|
414 |
+
<label for="<?php echo $this->field_id( array( 'new_forum', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
415 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_forum', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'new_forum', 'log' ) ); ?>" value="<?php echo $prefs['new_forum']['log']; ?>" class="long" /></div>
|
416 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
417 |
+
</li>
|
418 |
+
</ol>
|
419 |
+
<!-- Creds for Deleting Forums -->
|
420 |
+
<label for="<?php echo $this->field_id( array( 'delete_forum', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Forum Deletion', 'mycred' ) ); ?></label>
|
421 |
+
<ol id="">
|
422 |
+
<li>
|
423 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'delete_forum', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'delete_forum', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['delete_forum']['creds'] ); ?>" size="8" /></div>
|
424 |
+
</li>
|
425 |
+
<li class="empty"> </li>
|
426 |
+
<li>
|
427 |
+
<label for="<?php echo $this->field_id( array( 'delete_forum', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
428 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'delete_forum', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'delete_forum', 'log' ) ); ?>" value="<?php echo $prefs['delete_forum']['log']; ?>" class="long" /></div>
|
429 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
430 |
+
</li>
|
431 |
+
</ol>
|
432 |
+
<!-- Creds for New Topic -->
|
433 |
+
<label for="<?php echo $this->field_id( array( 'new_topic', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for New Topic', 'mycred' ) ); ?></label>
|
434 |
+
<ol id="">
|
435 |
+
<li>
|
436 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_topic', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'new_topic', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['new_topic']['creds'] ); ?>" size="8" /></div>
|
437 |
+
</li>
|
438 |
+
<li class="empty"> </li>
|
439 |
+
<li>
|
440 |
+
<label for="<?php echo $this->field_id( array( 'new_topic', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
441 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_topic', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'new_topic', 'log' ) ); ?>" value="<?php echo $prefs['new_topic']['log']; ?>" class="long" /></div>
|
442 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
443 |
+
</li>
|
444 |
+
<li class="empty"> </li>
|
445 |
+
<li>
|
446 |
+
<input type="checkbox" name="<?php echo $this->field_name( array( 'new_topic' => 'author' ) ); ?>" id="<?php echo $this->field_id( array( 'new_topic' => 'author' ) ); ?>" <?php checked( $prefs['new_topic']['author'], 1 ); ?> value="1" />
|
447 |
+
<label for="<?php echo $this->field_id( array( 'new_topic' => 'author' ) ); ?>"><?php echo $this->core->template_tags_general( __( 'Forum authors can receive %_plural% for creating new topics.', 'mycred' ) ); ?></label>
|
448 |
+
</li>
|
449 |
+
</ol>
|
450 |
+
<!-- Creds for Deleting Topic -->
|
451 |
+
<label for="<?php echo $this->field_id( array( 'delete_topic', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Topic Deletion', 'mycred' ) ); ?></label>
|
452 |
+
<ol id="">
|
453 |
+
<li>
|
454 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'delete_topic', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'delete_topic', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['delete_topic']['creds'] ); ?>" size="8" /></div>
|
455 |
+
</li>
|
456 |
+
<li class="empty"> </li>
|
457 |
+
<li>
|
458 |
+
<label for="<?php echo $this->field_id( array( 'delete_topic', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
459 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'delete_topic', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'delete_topic', 'log' ) ); ?>" value="<?php echo $prefs['delete_topic']['log']; ?>" class="long" /></div>
|
460 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
461 |
+
</li>
|
462 |
+
</ol>
|
463 |
+
<!-- Creds for Faved Topic -->
|
464 |
+
<label for="<?php echo $this->field_id( array( 'fav_topic', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Favorited Topic', 'mycred' ) ); ?></label>
|
465 |
+
<ol id="">
|
466 |
+
<li>
|
467 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'fav_topic', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'fav_topic', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['fav_topic']['creds'] ); ?>" size="8" /></div>
|
468 |
+
</li>
|
469 |
+
<li class="empty"> </li>
|
470 |
+
<li>
|
471 |
+
<label for="<?php echo $this->field_id( array( 'fav_topic', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
472 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'fav_topic', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'fav_topic', 'log' ) ); ?>" value="<?php echo $prefs['fav_topic']['log']; ?>" class="long" /></div>
|
473 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
474 |
+
</li>
|
475 |
+
<li class="empty"> </li>
|
476 |
+
<li>
|
477 |
+
<label for="<?php echo $this->field_id( array( 'fav_topic', 'limit' ) ); ?>"><?php _e( 'Daily Limit', 'mycred' ); ?></label>
|
478 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'fav_topic', 'limit' ) ); ?>" id="<?php echo $this->field_id( array( 'fav_topic', 'limit' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['fav_topic']['limit'] ); ?>" size="8" /></div>
|
479 |
+
<span class="description"><?php _e( 'Use zero for unlimited', 'mycred' ); ?></span>
|
480 |
+
</li>
|
481 |
+
</ol>
|
482 |
+
<!-- Creds for New Reply -->
|
483 |
+
<label for="<?php echo $this->field_id( array( 'new_reply', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for New Reply', 'mycred' ) ); ?></label>
|
484 |
+
<ol id="">
|
485 |
+
<li>
|
486 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_reply', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'new_reply', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['new_reply']['creds'] ); ?>" size="8" /></div>
|
487 |
+
</li>
|
488 |
+
<li class="empty"> </li>
|
489 |
+
<li>
|
490 |
+
<label for="<?php echo $this->field_id( array( 'new_reply', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
491 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_reply', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'new_reply', 'log' ) ); ?>" value="<?php echo $prefs['new_reply']['log']; ?>" class="long" /></div>
|
492 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
493 |
+
</li>
|
494 |
+
<li class="empty"> </li>
|
495 |
+
<li>
|
496 |
+
<input type="checkbox" name="<?php echo $this->field_name( array( 'new_reply' => 'author' ) ); ?>" id="<?php echo $this->field_id( array( 'new_reply' => 'author' ) ); ?>" <?php checked( $prefs['new_reply']['author'], 1 ); ?> value="1" />
|
497 |
+
<label for="<?php echo $this->field_id( array( 'new_reply' => 'author' ) ); ?>"><?php echo $this->core->template_tags_general( __( 'Topic authors can receive %_plural% for replying to their own Topic', 'mycred' ) ); ?></label>
|
498 |
+
</li>
|
499 |
+
<li class="empty"> </li>
|
500 |
+
<li>
|
501 |
+
<label for="<?php echo $this->field_id( array( 'new_reply', 'limit' ) ); ?>"><?php _e( 'Daily Limit', 'mycred' ); ?></label>
|
502 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'new_reply', 'limit' ) ); ?>" id="<?php echo $this->field_id( array( 'new_reply', 'limit' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['new_reply']['limit'] ); ?>" size="8" /></div>
|
503 |
+
<span class="description"><?php _e( 'Use zero for unlimited', 'mycred' ); ?></span>
|
504 |
+
</li>
|
505 |
+
<li class="empty"> </li>
|
506 |
+
<li>
|
507 |
+
<input type="checkbox" name="<?php echo $this->field_name( 'show_points_in_reply' ); ?>" id="<?php echo $this->field_id( 'show_points_in_reply' ); ?>" <?php checked( $prefs['show_points_in_reply'], 1 ); ?> value="1" /> <label for="<?php echo $this->field_id( 'show_points_in_reply' ); ?>"><?php echo $this->core->template_tags_general( __( 'Show users %_plural% balance in replies', 'mycred' ) ); ?>.</label>
|
508 |
+
</li>
|
509 |
+
</ol>
|
510 |
+
<?php unset( $this );
|
511 |
+
}
|
512 |
+
|
513 |
+
/**
|
514 |
+
* Sanitise Preference
|
515 |
+
* @since 1.1.1
|
516 |
+
* @version 1.0
|
517 |
+
*/
|
518 |
+
function sanitise_preferences( $data ) {
|
519 |
+
$new_data = $data;
|
520 |
+
|
521 |
+
$new_data['new_topic']['author'] = ( isset( $data['new_topic']['author'] ) ) ? $data['new_topic']['author'] : 0;
|
522 |
+
$new_data['new_reply']['author'] = ( isset( $data['new_reply']['author'] ) ) ? $data['new_reply']['author'] : 0;
|
523 |
+
|
524 |
+
return $new_data;
|
525 |
+
}
|
526 |
+
}
|
527 |
+
}
|
528 |
+
}
|
529 |
+
?>
|
plugins/mycred-hook-contact-form7.php
ADDED
@@ -0,0 +1,147 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Contact Form 7 Plugin
|
4 |
+
* @since 0.1
|
5 |
+
* @version 1.0
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 0.1
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'contact_form_seven_myCRED_Hook' );
|
14 |
+
function contact_form_seven_myCRED_Hook( $installed ) {
|
15 |
+
$installed['contact_form7'] = array(
|
16 |
+
'title' => __( 'Contact Form 7 Form Submissions', 'mycred' ),
|
17 |
+
'description' => __( 'Awards %_plural% for successful form submissions (by logged in users).', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_Contact_Form7' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Contact Form 7 Hook
|
25 |
+
* @since 0.1
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
if ( !class_exists( 'myCRED_Contact_Form7' ) ) {
|
29 |
+
class myCRED_Contact_Form7 extends myCRED_Hook {
|
30 |
+
/**
|
31 |
+
* Construct
|
32 |
+
*/
|
33 |
+
function __construct( $hook_prefs ) {
|
34 |
+
parent::__construct( array(
|
35 |
+
'id' => 'contact_form7',
|
36 |
+
'defaults' => ''
|
37 |
+
), $hook_prefs );
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Run
|
42 |
+
* @since 0.1
|
43 |
+
* @version 1.0
|
44 |
+
*/
|
45 |
+
public function run() {
|
46 |
+
add_action( 'wpcf7_mail_sent', array( $this, 'form_submission' ) );
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Get Forms
|
51 |
+
* Queries all Contact Form 7 forms.
|
52 |
+
* @uses WP_Query()
|
53 |
+
* @since 0.1
|
54 |
+
* @version 1.1
|
55 |
+
*/
|
56 |
+
public function get_forms() {
|
57 |
+
$forms = new WP_Query( array(
|
58 |
+
'post_type' => 'wpcf7_contact_form',
|
59 |
+
'post_status' => 'any',
|
60 |
+
'posts_per_page' => '-1',
|
61 |
+
'orderby' => 'ID',
|
62 |
+
'order' => 'ASC'
|
63 |
+
) );
|
64 |
+
|
65 |
+
$result = array();
|
66 |
+
if ( $forms->have_posts() ) {
|
67 |
+
while ( $forms->have_posts() ) : $forms->the_post();
|
68 |
+
$result[get_the_ID()] = get_the_title();
|
69 |
+
endwhile;
|
70 |
+
}
|
71 |
+
wp_reset_postdata();
|
72 |
+
return $result;
|
73 |
+
}
|
74 |
+
|
75 |
+
/**
|
76 |
+
* Successful Form Submission
|
77 |
+
* @since 0.1
|
78 |
+
* @version 1.0
|
79 |
+
*/
|
80 |
+
public function form_submission( $cf7_form ) {
|
81 |
+
// Login is required
|
82 |
+
if ( !is_user_logged_in() ) return;
|
83 |
+
|
84 |
+
$form_id = $cf7_form->id;
|
85 |
+
if ( isset( $this->prefs[$form_id] ) && $this->prefs[$form_id]['creds'] != 0 ) {
|
86 |
+
$this->core->add_creds(
|
87 |
+
'contact_form_submission',
|
88 |
+
get_current_user_id(),
|
89 |
+
$this->prefs[$form_id]['creds'],
|
90 |
+
$this->prefs[$form_id]['log'],
|
91 |
+
$form_id,
|
92 |
+
array( 'ref_type' => 'post' )
|
93 |
+
);
|
94 |
+
}
|
95 |
+
}
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Preferences for Commenting Hook
|
99 |
+
* @since 0.1
|
100 |
+
* @version 1.0
|
101 |
+
*/
|
102 |
+
public function preferences() {
|
103 |
+
$prefs = $this->prefs;
|
104 |
+
$forms = $this->get_forms();
|
105 |
+
|
106 |
+
// No forms found
|
107 |
+
if ( empty( $forms ) ) {
|
108 |
+
echo '<p>' . __( 'No forms found.', 'mycred' ) . '</p>';
|
109 |
+
return;
|
110 |
+
}
|
111 |
+
|
112 |
+
// Loop though prefs to make sure we always have a default settings (happens when a new form has been created)
|
113 |
+
foreach ( $forms as $form_id => $form_title ) {
|
114 |
+
if ( !isset( $prefs[$form_id] ) ) {
|
115 |
+
$prefs[$form_id] = array(
|
116 |
+
'creds' => 1,
|
117 |
+
'log' => ''
|
118 |
+
);
|
119 |
+
}
|
120 |
+
}
|
121 |
+
|
122 |
+
// Set pref if empty
|
123 |
+
if ( empty( $prefs ) ) $this->prefs = $prefs;
|
124 |
+
|
125 |
+
// Loop for settings
|
126 |
+
foreach ( $forms as $form_id => $form_title ) { ?>
|
127 |
+
|
128 |
+
<!-- Creds for -->
|
129 |
+
<label for="<?php echo $this->field_id( array( $form_id, 'creds' ) ); ?>" class="subheader"><?php echo $form_title; ?></label>
|
130 |
+
<ol>
|
131 |
+
<li>
|
132 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $form_id, 'creds' ) ); ?>" id="<?php echo $this->field_id( array( $form_id, 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs[$form_id]['creds'] ); ?>" size="8" /></div>
|
133 |
+
</li>
|
134 |
+
<li class="empty"> </li>
|
135 |
+
<li>
|
136 |
+
<label for="<?php echo $this->field_id( array( $form_id, 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
137 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( $form_id, 'log' ) ); ?>" id="<?php echo $this->field_id( array( $form_id, 'log' ) ); ?>" value="<?php echo $prefs[$form_id]['log']; ?>" class="long" /></div>
|
138 |
+
<span class="description"><?php _e( 'Available template tags: General, Post', 'mycred' ); ?></span>
|
139 |
+
</li>
|
140 |
+
</ol>
|
141 |
+
<?php }
|
142 |
+
unset( $this );
|
143 |
+
}
|
144 |
+
}
|
145 |
+
}
|
146 |
+
}
|
147 |
+
?>
|
plugins/mycred-hook-events-manager-light.php
ADDED
@@ -0,0 +1,171 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Events Manager
|
4 |
+
* @since 1.1
|
5 |
+
* @version 1.0
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 1.1
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'Events_Manager_myCRED_Hook' );
|
14 |
+
function Events_Manager_myCRED_Hook( $installed ) {
|
15 |
+
$installed['eventsmanager'] = array(
|
16 |
+
'title' => __( 'Events Manager', 'mycred' ),
|
17 |
+
'description' => __( 'Awards %_plural% for users attending events.', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_Hook_Events_Manager' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Events Manager Hook
|
25 |
+
* @since 1.1
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
if ( !class_exists( 'myCRED_Hook_Events_Manager' ) ) {
|
29 |
+
class myCRED_Hook_Events_Manager extends myCRED_Hook {
|
30 |
+
/**
|
31 |
+
* Construct
|
32 |
+
*/
|
33 |
+
function __construct( $hook_prefs ) {
|
34 |
+
parent::__construct( array(
|
35 |
+
'id' => 'eventsmanager',
|
36 |
+
'defaults' => array(
|
37 |
+
'attend' => array(
|
38 |
+
'creds' => 1,
|
39 |
+
'log' => '%plural% for attending an %link_with_title%'
|
40 |
+
),
|
41 |
+
'cancel' => array(
|
42 |
+
'creds' => 1,
|
43 |
+
'log' => '%plural% for cancelled attendance at %link_with_title%'
|
44 |
+
)
|
45 |
+
)
|
46 |
+
), $hook_prefs );
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Run
|
51 |
+
* @since 1.1
|
52 |
+
* @version 1.0
|
53 |
+
*/
|
54 |
+
public function run() {
|
55 |
+
if ( $this->prefs['attend']['creds'] != 0 && get_option( 'dbem_bookings_approval' ) != 0 )
|
56 |
+
add_filter( 'em_bookings_add', array( $this, 'new_booking' ), 10, 2 );
|
57 |
+
|
58 |
+
add_filter( 'em_booking_set_status', array( $this, 'adjust_booking' ), 10, 2 );
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* New Booking
|
63 |
+
* When users can make their own bookings.
|
64 |
+
* @since 1.1
|
65 |
+
* @version 1.1
|
66 |
+
*/
|
67 |
+
public function new_booking( $result, $booking ) {
|
68 |
+
$user_id = $booking->person->id;
|
69 |
+
// Check for exclusion
|
70 |
+
if ( $this->core->exclude_user( $user_id ) ) return $result;
|
71 |
+
|
72 |
+
// Successfull Booking
|
73 |
+
if ( $result === true ) {
|
74 |
+
// Execute
|
75 |
+
$this->core->add_creds(
|
76 |
+
'event_booking',
|
77 |
+
$user_id,
|
78 |
+
$this->prefs['attend']['creds'],
|
79 |
+
$this->prefs['attend']['log'],
|
80 |
+
$booking->event->post_id,
|
81 |
+
array( 'ref_type' => 'post' )
|
82 |
+
);
|
83 |
+
}
|
84 |
+
return $result;
|
85 |
+
}
|
86 |
+
|
87 |
+
/**
|
88 |
+
* Adjust Booking
|
89 |
+
* Incase an administrator needs to approve bookings first or if booking gets
|
90 |
+
* cancelled.
|
91 |
+
* @since 1.1
|
92 |
+
* @version 1.1
|
93 |
+
*/
|
94 |
+
public function adjust_booking( $result, $booking ) {
|
95 |
+
$user_id = $booking->person->id;
|
96 |
+
// Check for exclusion
|
97 |
+
if ( $this->core->exclude_user( $user_id ) ) return $result;
|
98 |
+
|
99 |
+
// If the new status is 'approved', add points
|
100 |
+
if ( $booking->booking_status == 1 && $booking->previous_status != 1 ) {
|
101 |
+
// If we do not award points for attending an event bail now
|
102 |
+
if ( $this->prefs['attend']['creds'] == 0 ) return $result;
|
103 |
+
|
104 |
+
// Execute
|
105 |
+
$this->core->add_creds(
|
106 |
+
'event_attendance',
|
107 |
+
$user_id,
|
108 |
+
$this->prefs['attend']['creds'],
|
109 |
+
$this->prefs['attend']['log'],
|
110 |
+
$booking->event->post_id,
|
111 |
+
array( 'ref_type' => 'post' )
|
112 |
+
);
|
113 |
+
}
|
114 |
+
// Else if status got changed from previously 'approved', remove points given
|
115 |
+
elseif ( $booking->booking_status != 1 && $booking->previous_status == 1 ) {
|
116 |
+
// If we do not deduct points for cancellation bail now
|
117 |
+
if ( $this->prefs['cancel']['creds'] == 0 ) return $result;
|
118 |
+
|
119 |
+
// Execute
|
120 |
+
$this->core->add_creds(
|
121 |
+
'cancelled_event_attendance',
|
122 |
+
$user_id,
|
123 |
+
$this->prefs['cancel']['creds'],
|
124 |
+
$this->prefs['cancel']['log'],
|
125 |
+
$booking->event->post_id,
|
126 |
+
array( 'ref_type' => 'post' )
|
127 |
+
);
|
128 |
+
}
|
129 |
+
return $result;
|
130 |
+
}
|
131 |
+
|
132 |
+
/**
|
133 |
+
* Preferences for Events Manager
|
134 |
+
* @since 1.1
|
135 |
+
* @version 1.0
|
136 |
+
*/
|
137 |
+
public function preferences() {
|
138 |
+
$prefs = $this->prefs; ?>
|
139 |
+
|
140 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'attend' => 'creds' ) ); ?>"><?php _e( 'Attending Event', 'mycred' ); ?></label>
|
141 |
+
<ol>
|
142 |
+
<li>
|
143 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'attend' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'attend' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['attend']['creds'] ); ?>" size="8" /></div>
|
144 |
+
</li>
|
145 |
+
</ol>
|
146 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'attend' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
147 |
+
<ol>
|
148 |
+
<li>
|
149 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'attend' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'attend' => 'log' ) ); ?>" value="<?php echo $prefs['attend']['log']; ?>" class="long" /></div>
|
150 |
+
<span class="description"><?php _e( 'Available template tags: General and Post Related', 'mycred' ); ?></span>
|
151 |
+
</li>
|
152 |
+
</ol>
|
153 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'cancel' => 'creds' ) ); ?>"><?php _e( 'Cancelling Attendance', 'mycred' ); ?></label>
|
154 |
+
<ol>
|
155 |
+
<li>
|
156 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'cancel' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'cancel' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['cancel']['creds'] ); ?>" size="8" /></div>
|
157 |
+
</li>
|
158 |
+
</ol>
|
159 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'cancel' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
160 |
+
<ol>
|
161 |
+
<li>
|
162 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'cancel' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'cancel' => 'log' ) ); ?>" value="<?php echo $prefs['cancel']['log']; ?>" class="long" /></div>
|
163 |
+
<span class="description"><?php _e( 'Available template tags: General and Post Related', 'mycred' ); ?></span>
|
164 |
+
</li>
|
165 |
+
</ol>
|
166 |
+
<?php unset( $this );
|
167 |
+
}
|
168 |
+
}
|
169 |
+
}
|
170 |
+
}
|
171 |
+
?>
|
plugins/mycred-hook-gd-star-rating.php
ADDED
@@ -0,0 +1,130 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* GD Star Rating
|
4 |
+
* @since 1.2
|
5 |
+
* @version 1.0
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 1.2
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'GD_Star_myCRED_Hook' );
|
14 |
+
function GD_Star_myCRED_Hook( $installed ) {
|
15 |
+
$installed['gdstars'] = array(
|
16 |
+
'title' => __( 'GD Star Rating', 'mycred' ),
|
17 |
+
'description' => __( 'Awards %_plural% for users rate items using the GD Star Rating plugin.', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_Hook_GD_Star_Rating' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* GD Star Rating Hook
|
25 |
+
* @since 1.2
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
if ( !class_exists( 'myCRED_Hook_GD_Star_Rating' ) ) {
|
29 |
+
class myCRED_Hook_GD_Star_Rating extends myCRED_Hook {
|
30 |
+
/**
|
31 |
+
* Construct
|
32 |
+
*/
|
33 |
+
function __construct( $hook_prefs ) {
|
34 |
+
parent::__construct( array(
|
35 |
+
'id' => 'gdstars',
|
36 |
+
'defaults' => array(
|
37 |
+
'star_rating' => array(
|
38 |
+
'creds' => 1,
|
39 |
+
'log' => '%plural% for rating'
|
40 |
+
),
|
41 |
+
'up_down' => array(
|
42 |
+
'creds' => 1,
|
43 |
+
'log' => '%plural% for rating'
|
44 |
+
)
|
45 |
+
)
|
46 |
+
), $hook_prefs );
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Run
|
51 |
+
* @since 1.2
|
52 |
+
* @version 1.0
|
53 |
+
*/
|
54 |
+
public function run() {
|
55 |
+
add_action( 'gdsr_vote', array( $this, 'vote' ), 10, 4 );
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Vote
|
60 |
+
* @since 1.2
|
61 |
+
* @version 1.0
|
62 |
+
*/
|
63 |
+
public function vote( $vote_value, $post_id, $vote_tpl, $vote_size ) {
|
64 |
+
if ( !is_user_logged_in() ) return;
|
65 |
+
|
66 |
+
if ( is_string( $vote_value ) && $this->prefs['up_down']['creds'] == 0 ) return;
|
67 |
+
elseif ( !is_string( $vote_value ) && $this->prefs['star_rating']['creds'] == 0 ) return;
|
68 |
+
|
69 |
+
if ( is_string( $vote_value ) ) {
|
70 |
+
$vote = 'up_down';
|
71 |
+
$star = false;
|
72 |
+
} else {
|
73 |
+
$vote = 'star_rating';
|
74 |
+
$star = true;
|
75 |
+
}
|
76 |
+
$user_id = get_current_user_id();
|
77 |
+
|
78 |
+
if ( $this->core->has_entry( 'rating', $post_id, $user_id, $vote ) ) return;
|
79 |
+
|
80 |
+
// Execute
|
81 |
+
$this->core->add_creds(
|
82 |
+
'rating',
|
83 |
+
$user_id,
|
84 |
+
( $star ) ? $this->prefs['star_rating']['creds'] : $this->prefs['up_down']['creds'],
|
85 |
+
( $star ) ? $this->prefs['star_rating']['log'] : $this->prefs['up_down']['log'],
|
86 |
+
$post_id,
|
87 |
+
$vote
|
88 |
+
);
|
89 |
+
}
|
90 |
+
|
91 |
+
/**
|
92 |
+
* Preferences for GD Star Rating
|
93 |
+
* @since 1.2
|
94 |
+
* @version 1.0
|
95 |
+
*/
|
96 |
+
public function preferences() {
|
97 |
+
$prefs = $this->prefs; ?>
|
98 |
+
|
99 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'star_rating' => 'creds' ) ); ?>"><?php _e( 'Rating', 'mycred' ); ?></label>
|
100 |
+
<ol>
|
101 |
+
<li>
|
102 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'star_rating' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'star_rating' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['star_rating']['creds'] ); ?>" size="8" /></div>
|
103 |
+
</li>
|
104 |
+
</ol>
|
105 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'star_rating' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
106 |
+
<ol>
|
107 |
+
<li>
|
108 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'star_rating' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'star_rating' => 'log' ) ); ?>" value="<?php echo $prefs['star_rating']['log']; ?>" class="long" /></div>
|
109 |
+
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
110 |
+
</li>
|
111 |
+
</ol>
|
112 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'up_down' => 'creds' ) ); ?>"><?php _e( 'Up / Down Vote', 'mycred' ); ?></label>
|
113 |
+
<ol>
|
114 |
+
<li>
|
115 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'up_down' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'up_down' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['up_down']['creds'] ); ?>" size="8" /></div>
|
116 |
+
</li>
|
117 |
+
</ol>
|
118 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'up_down' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
119 |
+
<ol>
|
120 |
+
<li>
|
121 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'up_down' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'up_down' => 'log' ) ); ?>" value="<?php echo $prefs['up_down']['log']; ?>" class="long" /></div>
|
122 |
+
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
123 |
+
</li>
|
124 |
+
</ol>
|
125 |
+
<?php unset( $this );
|
126 |
+
}
|
127 |
+
}
|
128 |
+
}
|
129 |
+
}
|
130 |
+
?>
|
plugins/mycred-hook-invite-anyone.php
ADDED
@@ -0,0 +1,180 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Invite Anyone Plugin
|
4 |
+
* @since 0.1
|
5 |
+
* @version 1.0
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 0.1
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'invite_anyone_myCRED_Hook' );
|
14 |
+
function invite_anyone_myCRED_Hook( $installed ) {
|
15 |
+
$installed['invite_anyone'] = array(
|
16 |
+
'title' => __( 'Invite Anyone Plugin', 'mycred' ),
|
17 |
+
'description' => __( 'Awards %_plural% for sending invitations and/or %_plural% if the invite is accepted.', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_Invite_Anyone' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Invite Anyone Hook
|
25 |
+
* @since 0.1
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
if ( !class_exists( 'myCRED_Invite_Anyone' ) ) {
|
29 |
+
class myCRED_Invite_Anyone extends myCRED_Hook {
|
30 |
+
/**
|
31 |
+
* Construct
|
32 |
+
*/
|
33 |
+
function __construct( $hook_prefs ) {
|
34 |
+
parent::__construct( array(
|
35 |
+
'id' => 'invite_anyone',
|
36 |
+
'defaults' => array(
|
37 |
+
'send_invite' => array(
|
38 |
+
'creds' => 1,
|
39 |
+
'log' => '%plural% for sending an invitation',
|
40 |
+
'limit' => 0
|
41 |
+
),
|
42 |
+
'accept_invite' => array(
|
43 |
+
'creds' => 1,
|
44 |
+
'log' => '%plural% for accepted invitation',
|
45 |
+
'limit' => 0
|
46 |
+
)
|
47 |
+
)
|
48 |
+
), $hook_prefs );
|
49 |
+
}
|
50 |
+
|
51 |
+
/**
|
52 |
+
* Run
|
53 |
+
* @since 0.1
|
54 |
+
* @version 1.0
|
55 |
+
*/
|
56 |
+
public function run() {
|
57 |
+
if ( $this->prefs['send_invite']['creds'] != 0 ) {
|
58 |
+
add_action( 'sent_email_invite', array( $this, 'send_invite' ), 10, 3 );
|
59 |
+
}
|
60 |
+
if ( $this->prefs['accept_invite']['creds'] != 0 ) {
|
61 |
+
add_action( 'accepted_email_invite', array( $this, 'accept_invite' ), 10, 2 );
|
62 |
+
}
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Sending Invites
|
67 |
+
* @since 0.1
|
68 |
+
* @version 1.0
|
69 |
+
*/
|
70 |
+
public function send_invite( $user_id, $email, $group ) {
|
71 |
+
// Limit Check
|
72 |
+
if ( $this->prefs['send_invite']['limit'] != 0 ) {
|
73 |
+
$user_log = get_user_meta( $user_id, 'mycred_invite_anyone', true );
|
74 |
+
if ( empty( $user_log['sent'] ) ) $user_log['sent'] = 0;
|
75 |
+
// Return if limit is reached
|
76 |
+
if ( $user_log['sent'] >= $this->prefs['send_invite']['limit'] ) return;
|
77 |
+
}
|
78 |
+
|
79 |
+
// Award Points
|
80 |
+
$this->core->add_creds(
|
81 |
+
'sending_an_invite',
|
82 |
+
$user_id,
|
83 |
+
$this->prefs['send_invite']['creds'],
|
84 |
+
$this->prefs['send_invite']['log']
|
85 |
+
);
|
86 |
+
|
87 |
+
// Update limit
|
88 |
+
if ( $this->prefs['send_invite']['limit'] != 0 ) {
|
89 |
+
$user_log['sent'] = $user_log['sent']+1;
|
90 |
+
update_user_meta( $user_id, 'mycred_invite_anyone', $user_log );
|
91 |
+
}
|
92 |
+
}
|
93 |
+
|
94 |
+
/**
|
95 |
+
* Accepting Invites
|
96 |
+
* @since 0.1
|
97 |
+
* @version 1.0
|
98 |
+
*/
|
99 |
+
public function accept_invite( $invited_user_id, $inviters ) {
|
100 |
+
// Invite Anyone will pass on an array of user IDs of those who have invited this user which we need to loop though
|
101 |
+
foreach ( (array) $inviters as $inviter_id ) {
|
102 |
+
// Limit Check
|
103 |
+
if ( $this->prefs['accept_invite']['limit'] != 0 ) {
|
104 |
+
$user_log = get_user_meta( $inviter_id, 'mycred_invite_anyone', true );
|
105 |
+
if ( empty( $user_log['accepted'] ) ) $user_log['accepted'] = 0;
|
106 |
+
// Continue to next inviter if limit is reached
|
107 |
+
if ( $user_log['accepted'] >= $this->prefs['accept_invite']['limit'] ) continue;
|
108 |
+
}
|
109 |
+
|
110 |
+
// Award Points
|
111 |
+
$this->core->add_creds(
|
112 |
+
'accepting_an_invite',
|
113 |
+
$inviter_id,
|
114 |
+
$this->prefs['accept_invite']['creds'],
|
115 |
+
$this->prefs['accept_invite']['log']
|
116 |
+
);
|
117 |
+
|
118 |
+
// Update Limit
|
119 |
+
if ( $this->prefs['accept_invite']['limit'] != 0 ) {
|
120 |
+
$user_log['accepted'] = $user_log['accepted']+1;
|
121 |
+
update_user_meta( $inviter_id, 'mycred_invite_anyone', $user_log );
|
122 |
+
}
|
123 |
+
}
|
124 |
+
}
|
125 |
+
|
126 |
+
/**
|
127 |
+
* Preferences
|
128 |
+
* @since 0.1
|
129 |
+
* @version 1.0
|
130 |
+
*/
|
131 |
+
public function preferences() {
|
132 |
+
$prefs = $this->prefs; ?>
|
133 |
+
|
134 |
+
<!-- Creds for Sending Invites -->
|
135 |
+
<label for="<?php echo $this->field_id( array( 'send_invite', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Sending An Invite', 'mycred' ) ); ?></label>
|
136 |
+
<ol>
|
137 |
+
<li>
|
138 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'send_invite', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'send_invite', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['send_invite']['creds'] ); ?>" size="8" /></div>
|
139 |
+
</li>
|
140 |
+
<li class="empty"> </li>
|
141 |
+
<li>
|
142 |
+
<label for="<?php echo $this->field_id( array( 'send_invite', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
143 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'send_invite', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'send_invite', 'log' ) ); ?>" value="<?php echo $prefs['send_invite']['log']; ?>" class="long" /></div>
|
144 |
+
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
145 |
+
</li>
|
146 |
+
</ol>
|
147 |
+
<label for="<?php echo $this->field_id( array( 'send_invite', 'limit' ) ); ?>" class="subheader"><?php _e( 'Limit', 'mycred' ); ?></label>
|
148 |
+
<ol>
|
149 |
+
<li>
|
150 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'send_invite', 'limit' ) ); ?>" id="<?php echo $this->field_id( array( 'send_invite', 'limit' ) ); ?>" value="<?php echo $prefs['send_invite']['limit']; ?>" size="8" /></div>
|
151 |
+
<span class="description"><?php echo $this->core->template_tags_general( __( 'Maximum number of invites that grants %_plural%. Use zero for unlimited.', 'mycred' ) ); ?></span>
|
152 |
+
</li>
|
153 |
+
</ol>
|
154 |
+
<!-- Creds for Accepting Invites -->
|
155 |
+
<label for="<?php echo $this->field_id( array( 'accept_invite', 'creds' ) ); ?>" class="subheader"><?php echo $this->core->template_tags_general( __( '%plural% for Accepting An Invite', 'mycred' ) ); ?></label>
|
156 |
+
<ol>
|
157 |
+
<li>
|
158 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'accept_invite', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'accept_invite', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['accept_invite']['creds'] ); ?>" size="8" /></div>
|
159 |
+
<span class="description"><?php echo $this->core->template_tags_general( __( '%plural% for each invited user that accepts an invitation.', 'mycred' ) ); ?></span>
|
160 |
+
</li>
|
161 |
+
<li class="empty"> </li>
|
162 |
+
<li>
|
163 |
+
<label for="<?php echo $this->field_id( array( 'accept_invite', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
164 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'accept_invite', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'accept_invite', 'log' ) ); ?>" value="<?php echo $prefs['accept_invite']['log']; ?>" class="long" /></div>
|
165 |
+
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
166 |
+
</li>
|
167 |
+
</ol>
|
168 |
+
<label for="<?php echo $this->field_id( array( 'accept_invite', 'limit' ) ); ?>" class="subheader"><?php _e( 'Limit', 'mycred' ); ?></label>
|
169 |
+
<ol>
|
170 |
+
<li>
|
171 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'accept_invite', 'limit' ) ); ?>" id="<?php echo $this->field_id( array( 'accept_invite', 'limit' ) ); ?>" value="<?php echo $prefs['accept_invite']['limit']; ?>" size="8" /></div>
|
172 |
+
<span class="description"><?php echo $this->core->template_tags_general( __( 'Maximum number of accepted invitations that grants %_plural%. Use zero for unlimited.', 'mycred' ) ); ?></span>
|
173 |
+
</li>
|
174 |
+
</ol>
|
175 |
+
<?php unset( $this );
|
176 |
+
}
|
177 |
+
}
|
178 |
+
}
|
179 |
+
}
|
180 |
+
?>
|
plugins/mycred-hook-jetpack.php
ADDED
@@ -0,0 +1,520 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Jetpack
|
4 |
+
* @since 1.0.5
|
5 |
+
* @version 1.0
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 1.0.5
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'jetpack_myCRED_Hook' );
|
14 |
+
function jetpack_myCRED_Hook( $installed ) {
|
15 |
+
$installed['jetpack'] = array(
|
16 |
+
'title' => __( 'Jetpack Subscriptions', 'mycred' ),
|
17 |
+
'description' => __( 'Awards %_plural% for users signing up for site or comment updates using Jetpack.', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_Hook_Jetpack' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Jetpack Hook
|
25 |
+
* @since 1.0.5
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
if ( !class_exists( 'myCRED_Hook_Jetpack' ) ) {
|
29 |
+
class myCRED_Hook_Jetpack extends myCRED_Hook {
|
30 |
+
|
31 |
+
/**
|
32 |
+
* Construct
|
33 |
+
*/
|
34 |
+
function __construct( $hook_prefs ) {
|
35 |
+
parent::__construct( array(
|
36 |
+
'id' => 'jetpack',
|
37 |
+
'defaults' => array(
|
38 |
+
'subscribe_site' => array(
|
39 |
+
'creds' => 1,
|
40 |
+
'log' => '%plural% for site subscription'
|
41 |
+
),
|
42 |
+
'subscribe_comment' => array(
|
43 |
+
'creds' => 1,
|
44 |
+
'log' => '%plural% for comment subscription'
|
45 |
+
)
|
46 |
+
)
|
47 |
+
), $hook_prefs );
|
48 |
+
}
|
49 |
+
|
50 |
+
/**
|
51 |
+
* Run
|
52 |
+
* @since 1.0.5
|
53 |
+
* @version 1.0
|
54 |
+
*/
|
55 |
+
public function run() {
|
56 |
+
// Site Subscriptions
|
57 |
+
if ( $this->prefs['subscribe_site']['creds'] != 0 ) {
|
58 |
+
add_filter( 'wp_redirect', array( $this, 'submit_redirect' ), 1 );
|
59 |
+
}
|
60 |
+
|
61 |
+
// Comment Subscriptions
|
62 |
+
if ( $this->prefs['subscribe_comment']['creds'] != 0 ) {
|
63 |
+
add_action( 'comment_post', array( $this, 'comment_subscribe_submit' ), 99, 2 );
|
64 |
+
}
|
65 |
+
|
66 |
+
add_action( 'mycred_admin_init', array( $this, 'admin_init' ) );
|
67 |
+
}
|
68 |
+
|
69 |
+
/**
|
70 |
+
* Admin Init
|
71 |
+
* Check pending emails if they have confirmed their subscription. If it's confirmed
|
72 |
+
* and no previous points have been awarded we do that here. Else if the email is marked
|
73 |
+
* as pending we save it for a later try.
|
74 |
+
*
|
75 |
+
* @since 1.0.5
|
76 |
+
* @version 1.0
|
77 |
+
*/
|
78 |
+
public function admin_init() {
|
79 |
+
$types = array();
|
80 |
+
|
81 |
+
if ( $this->prefs['subscribe_site']['creds'] != 0 )
|
82 |
+
$types[] = 'site';
|
83 |
+
|
84 |
+
if ( $this->prefs['subscribe_comment']['creds'] != 0 )
|
85 |
+
$types[] = 'comment';
|
86 |
+
|
87 |
+
// Not enabled, bail
|
88 |
+
if ( empty( $types ) ) return;
|
89 |
+
|
90 |
+
foreach ( $types as $type ) {
|
91 |
+
// Get list if it exist
|
92 |
+
if ( false === ( $pending = get_option( 'mycred_jetpack_' . $type . '_pendings' ) ) )
|
93 |
+
continue;
|
94 |
+
|
95 |
+
// Make sure list is not empty
|
96 |
+
if ( empty( $pending ) ) {
|
97 |
+
// Clean up before exit
|
98 |
+
delete_option( 'mycred_jetpack_' . $type . '_pendings' );
|
99 |
+
continue;
|
100 |
+
}
|
101 |
+
|
102 |
+
$new = array();
|
103 |
+
foreach ( $pending as $id => $email ) {
|
104 |
+
// Validate
|
105 |
+
if ( trim( $email ) == '' || !is_email( $email ) ) continue;
|
106 |
+
|
107 |
+
// Make sure user exist
|
108 |
+
$user = get_user_by( 'email', $email );
|
109 |
+
if ( $user === false ) continue;
|
110 |
+
|
111 |
+
// Check for exclusion
|
112 |
+
if ( $this->core->exclude_user( $user->ID ) === true ) continue;
|
113 |
+
|
114 |
+
// Make sure this is a unique event
|
115 |
+
if ( $this->core->has_entry( 'site_subscription', '', $user->ID ) ) continue;
|
116 |
+
|
117 |
+
// Site Subscriptions
|
118 |
+
if ( $type == 'site' ) {
|
119 |
+
// Check subscription status
|
120 |
+
$subscription = $this->check_jetpack_subscription( $email );
|
121 |
+
// Active status = award points if not already
|
122 |
+
if ( $subscription == 'active' ) {
|
123 |
+
// Execute
|
124 |
+
$this->core->add_creds(
|
125 |
+
'site_subscription',
|
126 |
+
$user->ID,
|
127 |
+
$this->prefs['subscribe_site']['creds'],
|
128 |
+
$this->prefs['subscribe_site']['log']
|
129 |
+
);
|
130 |
+
}
|
131 |
+
// Pending status = save so we try again later
|
132 |
+
elseif ( $subscription == 'pending' ) {
|
133 |
+
$new[] = $email;
|
134 |
+
continue;
|
135 |
+
}
|
136 |
+
}
|
137 |
+
// Comment Subscriptions
|
138 |
+
else {
|
139 |
+
$comment = get_comment( $id );
|
140 |
+
if ( empty( $comment ) ) continue;
|
141 |
+
|
142 |
+
// If no user id exist, check and see if the authors email is used by someone
|
143 |
+
if ( $comment->user_id == 0 ) {
|
144 |
+
$user = get_user_by( 'email', $email );
|
145 |
+
if ( $user === false ) continue;
|
146 |
+
}
|
147 |
+
// Make sure the user still exist
|
148 |
+
else {
|
149 |
+
$user = get_user_by( 'id', $comment->user_id );
|
150 |
+
if ( $user === false ) continue;
|
151 |
+
}
|
152 |
+
|
153 |
+
// Check for exclusion
|
154 |
+
if ( $this->core->exclude_user( $user->ID ) === true ) continue;
|
155 |
+
|
156 |
+
// Start with making sure this is a unique event
|
157 |
+
if ( $this->core->has_entry( 'comment_subscription', $id, $comment->user_id ) ) continue;
|
158 |
+
|
159 |
+
$post_ids = array();
|
160 |
+
|
161 |
+
if ( isset( $_REQUEST['subscribe_comments'] ) )
|
162 |
+
$post_ids[] = $comment->comment_post_ID;
|
163 |
+
|
164 |
+
// Attempt to subscribe again to get results
|
165 |
+
$subscription = $this->check_jetpack_subscription( $email, array( $comment->comment_post_ID ) );
|
166 |
+
|
167 |
+
// Subscription is active
|
168 |
+
if ( $subscription == 'active' ) {
|
169 |
+
// Execute
|
170 |
+
$this->core->add_creds(
|
171 |
+
'comment_subscription',
|
172 |
+
$user->ID,
|
173 |
+
$this->prefs['subscribe_comment']['creds'],
|
174 |
+
$this->prefs['subscribe_comment']['log'],
|
175 |
+
$id,
|
176 |
+
array( 'ref_type' => 'comment' )
|
177 |
+
);
|
178 |
+
}
|
179 |
+
// Subscription pending
|
180 |
+
elseif ( $subscription == 'pending' ) {
|
181 |
+
$new[$id] = $email;
|
182 |
+
}
|
183 |
+
}
|
184 |
+
}
|
185 |
+
|
186 |
+
// If we still have pending emails save for later
|
187 |
+
if ( !empty( $new ) )
|
188 |
+
update_option( 'mycred_jetpack_' . $type . '_pendings', $new );
|
189 |
+
// Else delete
|
190 |
+
else
|
191 |
+
delete_option( 'mycred_jetpack_' . $type . '_pendings' );
|
192 |
+
}
|
193 |
+
}
|
194 |
+
|
195 |
+
/**
|
196 |
+
* Submit Redirect
|
197 |
+
* Checks if Jetpack signup has been executed by parsing the redirect URL.
|
198 |
+
* @since 1.0.5
|
199 |
+
* @version 1.0
|
200 |
+
*/
|
201 |
+
public function submit_redirect( $location ) {
|
202 |
+
// Make sure we have what we need
|
203 |
+
if ( !isset( $_REQUEST['jetpack_subscriptions_widget'] ) || !isset( $_REQUEST['email'] ) || empty( $_REQUEST['email'] ) )
|
204 |
+
return $location;
|
205 |
+
|
206 |
+
// Make sure Jetpack has executed
|
207 |
+
if ( !isset( $_GET['subscribe'] ) || $_GET['subscribe'] != 'success' )
|
208 |
+
return $location;
|
209 |
+
|
210 |
+
// Make sure user exist
|
211 |
+
$user = get_user_by( 'email', $_REQUEST['email'] );
|
212 |
+
if ( $user === false )
|
213 |
+
return $location;
|
214 |
+
|
215 |
+
// Check for exclusion
|
216 |
+
if ( $this->core->exclude_user( $user->ID ) === true )
|
217 |
+
return $location;
|
218 |
+
|
219 |
+
// Check that this is a unique event
|
220 |
+
if ( $this->core->has_entry( 'site_subscription', '', $user->ID ) )
|
221 |
+
return $location;
|
222 |
+
|
223 |
+
$this->site_subscribe( $_REQUEST['email'], $user->ID );
|
224 |
+
|
225 |
+
return $location;
|
226 |
+
}
|
227 |
+
|
228 |
+
/**
|
229 |
+
* Comment Subscribe Submit
|
230 |
+
* Manage the request to subscribe to comments and/or to the blog
|
231 |
+
* Based on Jetpack Subscriptions
|
232 |
+
* @see jetpack/modules/subscriptions.php
|
233 |
+
* @since 1.0.5
|
234 |
+
* @version 1.0
|
235 |
+
*/
|
236 |
+
public function comment_subscribe_submit( $comment_id, $approved ) {
|
237 |
+
if ( 'spam' === $approved ) {
|
238 |
+
return;
|
239 |
+
}
|
240 |
+
|
241 |
+
if ( !isset( $_REQUEST['subscribe_comments'] ) && !isset( $_REQUEST['subscribe_blog'] ) )
|
242 |
+
return;
|
243 |
+
|
244 |
+
$comment = get_comment( $comment_id );
|
245 |
+
|
246 |
+
// If no user id exist, check and see if the authors email is used by someone
|
247 |
+
if ( $comment->user_id == 0 ) {
|
248 |
+
$user = get_user_by( 'email', $comment->comment_author_email );
|
249 |
+
if ( $user === false ) return;
|
250 |
+
}
|
251 |
+
// Make sure the user still exist
|
252 |
+
else {
|
253 |
+
$user = get_user_by( 'id', $comment->user_id );
|
254 |
+
if ( $user === false ) return;
|
255 |
+
}
|
256 |
+
|
257 |
+
// Check for exclusion
|
258 |
+
if ( $this->core->exclude_user( $user->ID ) === true ) return;
|
259 |
+
|
260 |
+
// Start with making sure this is a unique event
|
261 |
+
if ( $this->core->has_entry( 'comment_subscription', $comment_id, $user->ID ) ) return;
|
262 |
+
|
263 |
+
// Handle comment subscription
|
264 |
+
if ( isset( $_REQUEST['subscribe_comments'] ) )
|
265 |
+
$this->comment_subscribe( $comment->comment_author_email, $comment->comment_post_ID, $user->ID, $comment_id );
|
266 |
+
|
267 |
+
// Handle site subscription
|
268 |
+
if ( isset( $_REQUEST['subscribe_blog'] ) )
|
269 |
+
$this->site_subscribe( $comment->comment_author_email, $user->ID );
|
270 |
+
}
|
271 |
+
|
272 |
+
/**
|
273 |
+
* Comment Subscribe
|
274 |
+
* Awards points for active subscriptions or adds email and comment id to the pending array.
|
275 |
+
* Note! This methods should only be called once the primary checks have been made, including making sure
|
276 |
+
* the user exist, is not excluded and that this is a unique event!
|
277 |
+
* @since 1.0.5
|
278 |
+
* @version 1.0
|
279 |
+
*/
|
280 |
+
protected function comment_subscribe( $email = '', $post_ids = '', $user_id = 0, $comment_id = 0 ) {
|
281 |
+
// Attempt to subscribe again to get results
|
282 |
+
$subscription = $this->check_jetpack_subscription( $email, $post_ids );
|
283 |
+
|
284 |
+
// Subscription is active
|
285 |
+
if ( $subscription == 'active' ) {
|
286 |
+
// Execute
|
287 |
+
$this->core->add_creds(
|
288 |
+
'comment_subscription',
|
289 |
+
$user_id,
|
290 |
+
$this->prefs['subscribe_comment']['creds'],
|
291 |
+
$this->prefs['subscribe_comment']['log'],
|
292 |
+
$comment_id,
|
293 |
+
array( 'ref_type' => 'comment' )
|
294 |
+
);
|
295 |
+
|
296 |
+
// Let others share our success
|
297 |
+
do_action( 'mycred_jetpack_comment', $user_id, $comment_id );
|
298 |
+
}
|
299 |
+
// Subscription pending
|
300 |
+
elseif ( $subscription == 'pending' ) {
|
301 |
+
// Add email to pending list if not in it already
|
302 |
+
if ( !$this->is_pending( $email, $comment_id ) )
|
303 |
+
$this->add_to_pending( $email, $comment_id );
|
304 |
+
}
|
305 |
+
}
|
306 |
+
|
307 |
+
/**
|
308 |
+
* Site Subscription
|
309 |
+
* Awards points for active site subscriptions or adds email to the pending array.
|
310 |
+
* Note! This methods should only be called once the primary checks have been made, including making sure
|
311 |
+
* the user exist, is not excluded and that this is a unique event!
|
312 |
+
* @since 1.0.5
|
313 |
+
* @version 1.0
|
314 |
+
*/
|
315 |
+
protected function site_subscribe( $email = '', $user_id = 0 ) {
|
316 |
+
// Attempt to add this email again to check it's status
|
317 |
+
$subscription = $this->check_jetpack_subscription( $email );
|
318 |
+
|
319 |
+
// Subscription is active
|
320 |
+
if ( $subscription == 'active' ) {
|
321 |
+
// Execute
|
322 |
+
$this->core->add_creds(
|
323 |
+
'site_subscription',
|
324 |
+
$user_id,
|
325 |
+
$this->prefs['subscribe_site']['creds'],
|
326 |
+
$this->prefs['subscribe_site']['log']
|
327 |
+
);
|
328 |
+
|
329 |
+
// Let others share our success
|
330 |
+
do_action( 'mycred_jetpack_site', $user_id, $GLOBALS['blog_id'] );
|
331 |
+
}
|
332 |
+
// Subscription pending
|
333 |
+
elseif ( $subscription == 'pending' ) {
|
334 |
+
// Add email to pending list if not in it already
|
335 |
+
if ( !$this->is_pending( $email ) )
|
336 |
+
$this->add_to_pending( $email );
|
337 |
+
}
|
338 |
+
}
|
339 |
+
|
340 |
+
/**
|
341 |
+
* Check Jetpack Subscription
|
342 |
+
* @since 1.0.5
|
343 |
+
* @version 1.0
|
344 |
+
*/
|
345 |
+
protected function check_jetpack_subscription( $email = NULL, $post_ids = NULL ) {
|
346 |
+
if ( $email === NULL ) return 'missing';
|
347 |
+
|
348 |
+
if ( !class_exists( 'Jetpack' ) && defined( 'JETPACK__PLUGIN_DIR' ) )
|
349 |
+
require_once( JETPACK__PLUGIN_DIR . 'jetpack.php' );
|
350 |
+
if ( !class_exists( 'Jetpack_Subscriptions' ) && defined( 'JETPACK__PLUGIN_DIR' ) )
|
351 |
+
require_once( JETPACK__PLUGIN_DIR . 'modules/subscriptions.php' );
|
352 |
+
|
353 |
+
if ( $post_ids === NULL )
|
354 |
+
$subscribe = Jetpack_Subscriptions::subscribe( $email, 0, false );
|
355 |
+
else
|
356 |
+
$subscribe = Jetpack_Subscriptions::subscribe( $email, $post_ids, false );
|
357 |
+
|
358 |
+
if ( is_wp_error( $subscribe ) ) {
|
359 |
+
$error = $subscribe->get_error_code();
|
360 |
+
} else {
|
361 |
+
$error = false;
|
362 |
+
foreach ( $subscribe as $response ) {
|
363 |
+
if ( is_wp_error( $response ) ) {
|
364 |
+
$error = $response->get_error_code();
|
365 |
+
break;
|
366 |
+
}
|
367 |
+
}
|
368 |
+
}
|
369 |
+
|
370 |
+
if ( $error ) {
|
371 |
+
switch ( $error ) {
|
372 |
+
case 'invalid_email':
|
373 |
+
$return = 'invalid';
|
374 |
+
break;
|
375 |
+
case 'active':
|
376 |
+
$return = 'active';
|
377 |
+
break;
|
378 |
+
case 'pending':
|
379 |
+
$return = 'pending';
|
380 |
+
break;
|
381 |
+
default:
|
382 |
+
$return = '';
|
383 |
+
break;
|
384 |
+
}
|
385 |
+
}
|
386 |
+
else {
|
387 |
+
if ( is_array( $subscribe ) && $subscribe[0] === true )
|
388 |
+
$error = true;
|
389 |
+
$return = 'pending';
|
390 |
+
}
|
391 |
+
|
392 |
+
if ( $error )
|
393 |
+
return $return;
|
394 |
+
|
395 |
+
return 'new';
|
396 |
+
}
|
397 |
+
|
398 |
+
/**
|
399 |
+
* Is Pending
|
400 |
+
* Checks the given email if it's in the pending array.
|
401 |
+
* @param $email (string) required email to check
|
402 |
+
* @param $section (string|int) either 'site' for site subscriptions or comment id, defaults to site
|
403 |
+
* @returns (bool) true or false
|
404 |
+
* @since 1.0.5
|
405 |
+
* @version 1.0
|
406 |
+
*/
|
407 |
+
protected function is_pending( $email = NULL, $section = 'site' ) {
|
408 |
+
if ( $email === NULL || trim( $email ) === '' ) return;
|
409 |
+
|
410 |
+
if ( $section == 'site' )
|
411 |
+
$name = $section;
|
412 |
+
else
|
413 |
+
$name = 'comment';
|
414 |
+
|
415 |
+
// If pending list does not exist, create it and add our email
|
416 |
+
if ( false === ( $pending = get_option( 'mycred_jetpack_' . $name . '_pendings' ) ) ) {
|
417 |
+
if ( $name == 'site' )
|
418 |
+
$pending = array( $email );
|
419 |
+
else
|
420 |
+
$pending = array( $section => $email );
|
421 |
+
|
422 |
+
update_option( 'mycred_jetpack_' . $name . '_pendings', $pending );
|
423 |
+
}
|
424 |
+
|
425 |
+
// Site check
|
426 |
+
if ( $section == 'site' ) {
|
427 |
+
if ( in_array( $email, $pending ) )
|
428 |
+
return true;
|
429 |
+
}
|
430 |
+
// Comment check
|
431 |
+
else {
|
432 |
+
if ( array_key_exists( $section, $pending ) && $pending[$section] == $email )
|
433 |
+
return true;
|
434 |
+
}
|
435 |
+
|
436 |
+
return false;
|
437 |
+
}
|
438 |
+
|
439 |
+
/**
|
440 |
+
* Add to Pending
|
441 |
+
* Adds a given email to the pending array.
|
442 |
+
* @param $email (string) required email to check
|
443 |
+
* @param $section (string|int) either 'site' for site subscriptions or comment id, defaults to site
|
444 |
+
* @since 1.0.5
|
445 |
+
* @version 1.0
|
446 |
+
*/
|
447 |
+
protected function add_to_pending( $email = NULL, $section = 'site' ) {
|
448 |
+
if ( $email === NULL || trim( $email ) === '' ) return;
|
449 |
+
|
450 |
+
if ( $section == 'site' )
|
451 |
+
$name = $section;
|
452 |
+
else
|
453 |
+
$name = 'comment';
|
454 |
+
|
455 |
+
// If pending list does not exist, create it and add our email
|
456 |
+
if ( false === ( $pending = get_option( 'mycred_jetpack_' . $name . '_pendings' ) ) ) {
|
457 |
+
if ( $name == 'site' )
|
458 |
+
$pending = array( $email );
|
459 |
+
else
|
460 |
+
$pending = array( $section => $email );
|
461 |
+
|
462 |
+
update_option( 'mycred_jetpack_' . $name . '_pendings', $pending );
|
463 |
+
}
|
464 |
+
|
465 |
+
// Site pending list
|
466 |
+
if ( $section == 'site' ) {
|
467 |
+
if ( !in_array( $email, $pending ) ) {
|
468 |
+
$pending[] = $email;
|
469 |
+
update_option( 'mycred_jetpack_' . $name . '_pendings', $pending );
|
470 |
+
}
|
471 |
+
}
|
472 |
+
// Comment pending list
|
473 |
+
else {
|
474 |
+
if ( !array_key_exists( $section, $pending ) ) {
|
475 |
+
$pending[$section] = $email;
|
476 |
+
update_option( 'mycred_jetpack_' . $name . '_pendings', $pending );
|
477 |
+
}
|
478 |
+
}
|
479 |
+
}
|
480 |
+
|
481 |
+
/**
|
482 |
+
* Preferences
|
483 |
+
* @since 1.0.5
|
484 |
+
* @version 1.0
|
485 |
+
*/
|
486 |
+
public function preferences() {
|
487 |
+
$prefs = $this->prefs; ?>
|
488 |
+
|
489 |
+
<!-- Creds for Site Subscription -->
|
490 |
+
<label for="<?php echo $this->field_id( array( 'subscribe_site', 'creds' ) ); ?>" class="subheader"><?php _e( 'Site Subscriptions', 'mycred' ); ?></label>
|
491 |
+
<ol>
|
492 |
+
<li>
|
493 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'subscribe_site', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'subscribe_site', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['subscribe_site']['creds'] ); ?>" size="8" /></div>
|
494 |
+
</li>
|
495 |
+
<li class="empty"> </li>
|
496 |
+
<li>
|
497 |
+
<label for="<?php echo $this->field_id( array( 'subscribe_site', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
498 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'subscribe_site', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'subscribe_site', 'log' ) ); ?>" value="<?php echo $prefs['subscribe_site']['log']; ?>" class="long" /></div>
|
499 |
+
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
500 |
+
</li>
|
501 |
+
</ol>
|
502 |
+
<!-- Creds for Comment Subscription -->
|
503 |
+
<label for="<?php echo $this->field_id( array( 'subscribe_comment', 'creds' ) ); ?>" class="subheader"><?php _e( 'Comment Subscriptions', 'mycred' ); ?></label>
|
504 |
+
<ol>
|
505 |
+
<li>
|
506 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'subscribe_comment', 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'subscribe_comment', 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['subscribe_comment']['creds'] ); ?>" size="8" /></div>
|
507 |
+
</li>
|
508 |
+
<li class="empty"> </li>
|
509 |
+
<li>
|
510 |
+
<label for="<?php echo $this->field_id( array( 'subscribe_comment', 'log' ) ); ?>"><?php _e( 'Log template', 'mycred' ); ?></label>
|
511 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'subscribe_comment', 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'subscribe_comment', 'log' ) ); ?>" value="<?php echo $prefs['subscribe_comment']['log']; ?>" class="long" /></div>
|
512 |
+
<span class="description"><?php _e( 'Available template tags: General', 'mycred' ); ?></span>
|
513 |
+
</li>
|
514 |
+
</ol>
|
515 |
+
<?php unset( $this );
|
516 |
+
}
|
517 |
+
}
|
518 |
+
}
|
519 |
+
}
|
520 |
+
?>
|
plugins/mycred-hook-wp-favorite-posts.php
ADDED
@@ -0,0 +1,155 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* WP Favorite Posts
|
4 |
+
* @since 1.1
|
5 |
+
* @version 1.0
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 1.1
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'WP_Favorite_myCRED_Hook' );
|
14 |
+
function WP_Favorite_myCRED_Hook( $installed ) {
|
15 |
+
$installed['wpfavorite'] = array(
|
16 |
+
'title' => __( 'WP Favorite Posts', 'mycred' ),
|
17 |
+
'description' => __( 'Awards %_plural% for users adding posts to their favorites.', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_Hook_WPFavorite' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* WP Favorite Hook
|
25 |
+
* @since 1.1
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
if ( !class_exists( 'myCRED_Hook_WPFavorite' ) ) {
|
29 |
+
class myCRED_Hook_WPFavorite extends myCRED_Hook {
|
30 |
+
/**
|
31 |
+
* Construct
|
32 |
+
*/
|
33 |
+
function __construct( $hook_prefs ) {
|
34 |
+
parent::__construct( array(
|
35 |
+
'id' => 'wpfavorite',
|
36 |
+
'defaults' => array(
|
37 |
+
'add' => array(
|
38 |
+
'creds' => 1,
|
39 |
+
'log' => '%plural% for adding a post as favorite'
|
40 |
+
),
|
41 |
+
'remove' => array(
|
42 |
+
'creds' => 1,
|
43 |
+
'log' => '%plural% deduction for removing a post from favorites'
|
44 |
+
)
|
45 |
+
)
|
46 |
+
), $hook_prefs );
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Run
|
51 |
+
* @since 1.1
|
52 |
+
* @version 1.0
|
53 |
+
*/
|
54 |
+
public function run() {
|
55 |
+
if ( $this->prefs['add']['creds'] != 0 )
|
56 |
+
add_action( 'wpfp_after_add', array( $this, 'add_favorite' ) );
|
57 |
+
|
58 |
+
if ( $this->prefs['remove']['creds'] != 0 )
|
59 |
+
add_action( 'wpfp_after_remove', array( $this, 'remove_favorite' ) );
|
60 |
+
}
|
61 |
+
|
62 |
+
/**
|
63 |
+
* Add Favorite
|
64 |
+
* @since 1.1
|
65 |
+
* @version 1.0
|
66 |
+
*/
|
67 |
+
public function add_favorite( $post_id ) {
|
68 |
+
// Must be logged in
|
69 |
+
if ( !is_user_logged_in() ) return;
|
70 |
+
|
71 |
+
$user_id = get_current_user_id();
|
72 |
+
// Check for exclusion
|
73 |
+
if ( $this->core->exclude_user( $user_id ) ) return;
|
74 |
+
|
75 |
+
// Make sure this is unique event
|
76 |
+
if ( $this->core->has_entry( 'add_favorite_post', $post_id, $user_id ) ) return;
|
77 |
+
|
78 |
+
// Execute
|
79 |
+
$this->core->add_creds(
|
80 |
+
'add_favorite_post',
|
81 |
+
$user_id,
|
82 |
+
$this->prefs['add']['creds'],
|
83 |
+
$this->prefs['add']['log'],
|
84 |
+
$post_id,
|
85 |
+
array( 'ref_type' => 'post' )
|
86 |
+
);
|
87 |
+
}
|
88 |
+
|
89 |
+
/**
|
90 |
+
* Remove Favorite
|
91 |
+
* @since 1.1
|
92 |
+
* @version 1.0
|
93 |
+
*/
|
94 |
+
public function remove_favorite( $post_id ) {
|
95 |
+
// Must be logged in
|
96 |
+
if ( !is_user_logged_in() ) return;
|
97 |
+
|
98 |
+
$user_id = get_current_user_id();
|
99 |
+
// Check for exclusion
|
100 |
+
if ( $this->core->exclude_user( $user_id ) ) return;
|
101 |
+
|
102 |
+
// Make sure this is unique event
|
103 |
+
if ( $this->core->has_entry( 'favorite_post_removed', $post_id, $user_id ) ) return;
|
104 |
+
|
105 |
+
// Execute
|
106 |
+
$this->core->add_creds(
|
107 |
+
'favorite_post_removed',
|
108 |
+
$user_id,
|
109 |
+
$this->prefs['remove']['creds'],
|
110 |
+
$this->prefs['remove']['log'],
|
111 |
+
$post_id,
|
112 |
+
array( 'ref_type' => 'post' )
|
113 |
+
);
|
114 |
+
}
|
115 |
+
|
116 |
+
/**
|
117 |
+
* Preferences for WP-Polls
|
118 |
+
* @since 1.1
|
119 |
+
* @version 1.0
|
120 |
+
*/
|
121 |
+
public function preferences() {
|
122 |
+
$prefs = $this->prefs; ?>
|
123 |
+
|
124 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'add' => 'creds' ) ); ?>"><?php _e( 'Adding Content to Favorites', 'mycred' ); ?></label>
|
125 |
+
<ol>
|
126 |
+
<li>
|
127 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'add' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'add' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['add']['creds'] ); ?>" size="8" /></div>
|
128 |
+
</li>
|
129 |
+
</ol>
|
130 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'add' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
131 |
+
<ol>
|
132 |
+
<li>
|
133 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'add' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'add' => 'log' ) ); ?>" value="<?php echo $prefs['add']['log']; ?>" class="long" /></div>
|
134 |
+
<span class="description"><?php _e( 'Available template tags: General and Post Related', 'mycred' ); ?></span>
|
135 |
+
</li>
|
136 |
+
</ol>
|
137 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'remove' => 'creds' ) ); ?>"><?php _e( 'Removing Content from Favorites', 'mycred' ); ?></label>
|
138 |
+
<ol>
|
139 |
+
<li>
|
140 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'remove' => 'creds' ) ); ?>" id="<?php echo $this->field_id( array( 'remove' => 'creds' ) ); ?>" value="<?php echo $this->core->format_number( $prefs['remove']['creds'] ); ?>" size="8" /></div>
|
141 |
+
</li>
|
142 |
+
</ol>
|
143 |
+
<label class="subheader" for="<?php echo $this->field_id( array( 'remove' => 'log' ) ); ?>"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
144 |
+
<ol>
|
145 |
+
<li>
|
146 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( array( 'remove' => 'log' ) ); ?>" id="<?php echo $this->field_id( array( 'remove' => 'log' ) ); ?>" value="<?php echo $prefs['remove']['log']; ?>" class="long" /></div>
|
147 |
+
<span class="description"><?php _e( 'Available template tags: General and Post Related', 'mycred' ); ?></span>
|
148 |
+
</li>
|
149 |
+
</ol>
|
150 |
+
<?php unset( $this );
|
151 |
+
}
|
152 |
+
}
|
153 |
+
}
|
154 |
+
}
|
155 |
+
?>
|
plugins/mycred-hook-wp-polls.php
ADDED
@@ -0,0 +1,144 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* WP-Polls Plugin
|
4 |
+
* @since 1.1
|
5 |
+
* @version 1.0
|
6 |
+
*/
|
7 |
+
if ( defined( 'myCRED_VERSION' ) ) {
|
8 |
+
/**
|
9 |
+
* Register Hook
|
10 |
+
* @since 1.1
|
11 |
+
* @version 1.0
|
12 |
+
*/
|
13 |
+
add_filter( 'mycred_setup_hooks', 'WP_Polls_myCRED_Hook' );
|
14 |
+
function WP_Polls_myCRED_Hook( $installed ) {
|
15 |
+
$installed['wppolls'] = array(
|
16 |
+
'title' => __( 'WP-Polls', 'mycred' ),
|
17 |
+
'description' => __( 'Awards %_plural% for users voting in polls.', 'mycred' ),
|
18 |
+
'callback' => array( 'myCRED_Hook_WPPolls' )
|
19 |
+
);
|
20 |
+
return $installed;
|
21 |
+
}
|
22 |
+
|
23 |
+
/**
|
24 |
+
* WP-Polls Hook
|
25 |
+
* @since 1.1
|
26 |
+
* @version 1.0
|
27 |
+
*/
|
28 |
+
if ( !class_exists( 'myCRED_Hook_WPPolls' ) ) {
|
29 |
+
class myCRED_Hook_WPPolls extends myCRED_Hook {
|
30 |
+
/**
|
31 |
+
* Construct
|
32 |
+
*/
|
33 |
+
function __construct( $hook_prefs ) {
|
34 |
+
parent::__construct( array(
|
35 |
+
'id' => 'wppolls',
|
36 |
+
'defaults' => array(
|
37 |
+
'creds' => 1,
|
38 |
+
'log' => '%plural% for voting'
|
39 |
+
)
|
40 |
+
), $hook_prefs );
|
41 |
+
}
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Run
|
45 |
+
* @since 1.1
|
46 |
+
* @version 1.0
|
47 |
+
*/
|
48 |
+
public function run() {
|
49 |
+
add_action( 'wp_ajax_polls', array( $this, 'vote_poll' ), 1 );
|
50 |
+
add_filter( 'mycred_parse_tags_poll', array( $this, 'parse_custom_tags' ), 10, 2 );
|
51 |
+
}
|
52 |
+
|
53 |
+
/**
|
54 |
+
* Poll Voting
|
55 |
+
* @since 1.1
|
56 |
+
* @version 1.0
|
57 |
+
*/
|
58 |
+
public function vote_poll() {
|
59 |
+
if ( isset( $_REQUEST['action'] ) && $_REQUEST['action'] == 'polls' && is_user_logged_in() ) {
|
60 |
+
// Get Poll ID
|
61 |
+
$poll_id = ( isset( $_REQUEST['poll_id'] ) ? intval( $_REQUEST['poll_id'] ) : 0 );
|
62 |
+
// Ensure Poll ID Is Valid
|
63 |
+
if ( $poll_id != 0 ) {
|
64 |
+
// Verify Referer
|
65 |
+
if ( check_ajax_referer( 'poll_' . $poll_id . '-nonce', 'poll_' . $poll_id . '_nonce', false ) ) {
|
66 |
+
// Which View
|
67 |
+
switch ( $_REQUEST['view'] ) {
|
68 |
+
case 'process':
|
69 |
+
$poll_aid = $_POST["poll_$poll_id"];
|
70 |
+
$poll_aid_array = array_unique( array_map( 'intval', explode( ',', $poll_aid ) ) );
|
71 |
+
if ( $poll_id > 0 && !empty( $poll_aid_array ) && check_allowtovote() ) {
|
72 |
+
$check_voted = check_voted( $poll_id );
|
73 |
+
if ( $check_voted == 0 ) {
|
74 |
+
$user_id = get_current_user_id();
|
75 |
+
// Make sure we are not excluded
|
76 |
+
if ( !$this->core->exclude_user( $user_id ) ) {
|
77 |
+
$this->core->add_creds(
|
78 |
+
'poll_voting',
|
79 |
+
$user_id,
|
80 |
+
$this->prefs['creds'],
|
81 |
+
$this->prefs['log'],
|
82 |
+
$poll_id,
|
83 |
+
array( 'ref_type' => 'poll' )
|
84 |
+
);
|
85 |
+
}
|
86 |
+
}
|
87 |
+
}
|
88 |
+
break;
|
89 |
+
}
|
90 |
+
}
|
91 |
+
}
|
92 |
+
}
|
93 |
+
}
|
94 |
+
|
95 |
+
/**
|
96 |
+
* Parse Custom Tags in Log
|
97 |
+
* @since 1.1
|
98 |
+
* @version 1.0
|
99 |
+
*/
|
100 |
+
public function parse_custom_tags( $content, $log_entry ) {
|
101 |
+
$poll_id = $log_entry->ref_id;
|
102 |
+
$content = str_replace( '%poll_id%', $poll_id, $content );
|
103 |
+
$content = str_replace( '%poll_question%', $this->get_poll_name( $poll_id ), $content );
|
104 |
+
return $content;
|
105 |
+
}
|
106 |
+
|
107 |
+
/**
|
108 |
+
* Get Poll Name (Question)
|
109 |
+
* @since 1.1
|
110 |
+
* @version 1.0
|
111 |
+
*/
|
112 |
+
protected function get_poll_name( $poll_id ) {
|
113 |
+
global $wpdb;
|
114 |
+
$sql = "SELECT pollq_question FROM $wpdb->pollsq WHERE pollq_id = %d ";
|
115 |
+
return $wpdb->get_var( $wpdb->prepare( $sql, $poll_id ) );
|
116 |
+
}
|
117 |
+
|
118 |
+
/**
|
119 |
+
* Preferences for WP-Polls
|
120 |
+
* @since 1.1
|
121 |
+
* @version 1.0
|
122 |
+
*/
|
123 |
+
public function preferences() {
|
124 |
+
$prefs = $this->prefs; ?>
|
125 |
+
|
126 |
+
<label class="subheader"><?php echo $this->core->plural(); ?></label>
|
127 |
+
<ol>
|
128 |
+
<li>
|
129 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( 'creds' ); ?>" id="<?php echo $this->field_id( 'creds' ); ?>" value="<?php echo $this->core->format_number( $prefs['creds'] ); ?>" size="8" /></div>
|
130 |
+
</li>
|
131 |
+
</ol>
|
132 |
+
<label class="subheader"><?php _e( 'Log Template', 'mycred' ); ?></label>
|
133 |
+
<ol>
|
134 |
+
<li>
|
135 |
+
<div class="h2"><input type="text" name="<?php echo $this->field_name( 'log' ); ?>" id="<?php echo $this->field_id( 'log' ); ?>" value="<?php echo $prefs['log']; ?>" class="long" /></div>
|
136 |
+
<span class="description"><?php _e( 'Available template tags: General. You can also use %poll_id% and %poll_question%.', 'mycred' ); ?></span>
|
137 |
+
</li>
|
138 |
+
</ol>
|
139 |
+
<?php unset( $this );
|
140 |
+
}
|
141 |
+
}
|
142 |
+
}
|
143 |
+
}
|
144 |
+
?>
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: designbymerovingi
|
|
3 |
Tags:points, tokens, credit, management, reward, charge, community, contest, BuddyPress, Jetpack, bbPress
|
4 |
Requires at least: 3.1
|
5 |
Tested up to: 3.6.1
|
6 |
-
Stable tag: 1.
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
@@ -11,40 +11,31 @@ myCRED is an adaptive points management system that lets you award / charge your
|
|
11 |
|
12 |
== Description ==
|
13 |
|
14 |
-
|
15 |
|
16 |
-
|
17 |
|
18 |
-
**my**CRED
|
19 |
-
|
20 |
-
**Your online currency**
|
21 |
-
|
22 |
-
Reward returning customers in your [online store](http://mycred.me/add-ons/gateway/) with points or let your members pay for products, [content](http://mycred.me/add-ons/sell-content/) or events using points.
|
23 |
-
|
24 |
-
**my**CRED also supports points [transfers](http://mycred.me/add-ons/transfer/) and [points purchases](http://mycred.me/add-ons/buycred/) using popular online payment gateways.
|
25 |
-
|
26 |
-
**Manage, Edit, Adjust**
|
27 |
-
|
28 |
-
**my**CRED was built to be flexible and supports point systems with or without decimals. All transactions / changes are [logged](http://mycred.me/about/features/the-log/) and you can always [adjust](http://mycred.me/about/features/edit-users-points/) any users point balance directly from your user list in the admin area.
|
29 |
-
|
30 |
-
Don't let **my**CREDs' adaptive nature fool you. It was built to keep things simple, showing you only what your site [supports](http://mycred.me/add-ons/buddypress/).
|
31 |
|
32 |
**Core Features:**
|
33 |
|
34 |
* Logging of all events
|
35 |
* Log entry templates and template tags
|
36 |
-
*
|
37 |
* Easy to manage Hooks for each instance where users gain/loose points
|
38 |
* Supports any point format
|
39 |
-
*
|
40 |
* Custom My Balance Widget
|
41 |
* Custom Leader board Widget
|
42 |
* Minimum CSS Styling
|
|
|
|
|
|
|
43 |
|
44 |
|
45 |
**Built-in Add-ons:**
|
46 |
|
47 |
-
Your
|
48 |
|
49 |
* *Email Notices* - Setup email notices for your users and/or admins when a users points balance changes or on specific events, for example when they purchase content set for sale.
|
50 |
* *Transfer* - Allows your users to send points to other members with an option to impose a daily-, weekly- or monthly transfer limit.
|
@@ -63,13 +54,17 @@ Your **my**CRED installation comes packed with optional add-ons, adding further
|
|
63 |
**my**CRED supports Multisite installations and offers you the following features:
|
64 |
|
65 |
* *Master Template* - Force your main sites **my**CRED installation upon all other sites. Each site will have it's own log but have no access to any settings, hooks or add-ons.
|
|
|
66 |
* *Block List* - Allows you to block specific sites from using **my**CRED.
|
67 |
|
|
|
|
|
68 |
**Supported Third-party Plugins:**
|
69 |
|
70 |
The following third party plugins are supported by default:
|
71 |
|
72 |
-
* [
|
|
|
73 |
* [Invite Anyone Plugin](http://wordpress.org/extend/plugins/invite-anyone/) - Award users for sending invitations and for each time an invited user accepts and signs up.
|
74 |
* [Jetpack](http://wordpress.org/extend/plugins/jetpack/) - Award users for subscribing to comments or your site. Requires users to be logged in or subscribe using the email saved in their profile.
|
75 |
* [BadgeOS](http://wordpress.org/extend/plugins/badgeos/) - Award points for any BadgeOS achievement type.
|
@@ -101,6 +96,8 @@ The following third party plugins are supported by default:
|
|
101 |
|
102 |
For a comprehensive guide on how to install myCRED or how this plugin works, consider visiting our [Online Tutorial](http://mycred.me/support/tutorials/how-to-install-and-setup-mycred/).
|
103 |
|
|
|
|
|
104 |
1. Upload `mycred` to the `/wp-content/plugins/` directory
|
105 |
2. Activate the plugin through the 'Plugins' menu in WordPress
|
106 |
3. Run the myCRED Setup which will allow you to configure your **my**CRED installation
|
@@ -108,6 +105,26 @@ For a comprehensive guide on how to install myCRED or how this plugin works, con
|
|
108 |
5. Configure and Enable the hooks you wish to use though the 'Hooks' sub menu in WordPress
|
109 |
6. Configure any other Add-on settings you might be using i.e. BuddyPress though the 'Settings' sub menu in WordPress
|
110 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
|
112 |
== Frequently Asked Questions ==
|
113 |
|
@@ -143,34 +160,14 @@ Yes but if one of them is bought, all is shown. The mycred_sell_this shortcode w
|
|
143 |
|
144 |
== Upgrade Notice ==
|
145 |
|
146 |
-
= 1.
|
147 |
-
|
148 |
-
|
149 |
-
= 1.2.2 =
|
150 |
-
Improved performance, better handling of websites with large user base and several bug fixes.
|
151 |
-
|
152 |
-
= 1.2.1 =
|
153 |
-
See http://mycred.me/download/changelog/
|
154 |
-
|
155 |
-
= 1.2 =
|
156 |
-
See http://mycred.me/download/changelog/
|
157 |
-
|
158 |
-
= 1.1.2 =
|
159 |
-
See: http://mycred.me/download/changelog/
|
160 |
-
|
161 |
-
= 1.1.1 =
|
162 |
-
See: http://mycred.me/download/changelog/
|
163 |
-
|
164 |
-
= 1.1 =
|
165 |
-
See: http://mycred.me/download/changelog/
|
166 |
-
|
167 |
-
= 1.0.9.3 =
|
168 |
-
See: http://mycred.me/download/changelog/2/
|
169 |
|
170 |
|
171 |
== Other Notes ==
|
172 |
|
173 |
= Requirements =
|
|
|
174 |
* PHP version 5.2.4 or greater
|
175 |
* MySQL version 5.0 or greater
|
176 |
|
@@ -180,6 +177,33 @@ See: http://mycred.me/download/changelog/2/
|
|
180 |
|
181 |
== Changelog ==
|
182 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
183 |
= 1.2.3 =
|
184 |
* Moved .POT file to correct location in /lang
|
185 |
* Cart support for Email notices has incorrect function name.
|
3 |
Tags:points, tokens, credit, management, reward, charge, community, contest, BuddyPress, Jetpack, bbPress
|
4 |
Requires at least: 3.1
|
5 |
Tested up to: 3.6.1
|
6 |
+
Stable tag: 1.3
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
11 |
|
12 |
== Description ==
|
13 |
|
14 |
+
We feel that todays WordPress community lacks a flexible points management system. Existing system often feel restrictive, stale or lack support for popular plugins.
|
15 |
|
16 |
+
So we built an adaptive plugin which gives it’s users full control on how points are awarded, used, traded, managed, logged and presented.
|
17 |
|
18 |
+
**my**CRED is an adaptive points management system for WordPress powered websites, giving you full control on how points are gained, used, traded, managed, logged or presented.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
|
20 |
**Core Features:**
|
21 |
|
22 |
* Logging of all events
|
23 |
* Log entry templates and template tags
|
24 |
+
* Easy User Points editing
|
25 |
* Easy to manage Hooks for each instance where users gain/loose points
|
26 |
* Supports any point format
|
27 |
+
* Ranking
|
28 |
* Custom My Balance Widget
|
29 |
* Custom Leader board Widget
|
30 |
* Minimum CSS Styling
|
31 |
+
* Built-in log and balance reset
|
32 |
+
* Export of users balances to CSV files
|
33 |
+
* Setup points to be used as a virtual currency or store credit
|
34 |
|
35 |
|
36 |
**Built-in Add-ons:**
|
37 |
|
38 |
+
Your myCRED installation comes packed with optional add-ons, adding further features and third-party plugin support.
|
39 |
|
40 |
* *Email Notices* - Setup email notices for your users and/or admins when a users points balance changes or on specific events, for example when they purchase content set for sale.
|
41 |
* *Transfer* - Allows your users to send points to other members with an option to impose a daily-, weekly- or monthly transfer limit.
|
54 |
**my**CRED supports Multisite installations and offers you the following features:
|
55 |
|
56 |
* *Master Template* - Force your main sites **my**CRED installation upon all other sites. Each site will have it's own log but have no access to any settings, hooks or add-ons.
|
57 |
+
* *Centralized Log* - All sites uses your main sites log instead of individual logs for each site.
|
58 |
* *Block List* - Allows you to block specific sites from using **my**CRED.
|
59 |
|
60 |
+
**Important!** The above features requires you to enable **my**CRED network wide!
|
61 |
+
|
62 |
**Supported Third-party Plugins:**
|
63 |
|
64 |
The following third party plugins are supported by default:
|
65 |
|
66 |
+
* [BuddyPress](http://buddypress.org)
|
67 |
+
* [Contact Form 7](http://wordpress.org/plugins/contact-form-7/) - Award users points for submitting forms.
|
68 |
* [Invite Anyone Plugin](http://wordpress.org/extend/plugins/invite-anyone/) - Award users for sending invitations and for each time an invited user accepts and signs up.
|
69 |
* [Jetpack](http://wordpress.org/extend/plugins/jetpack/) - Award users for subscribing to comments or your site. Requires users to be logged in or subscribe using the email saved in their profile.
|
70 |
* [BadgeOS](http://wordpress.org/extend/plugins/badgeos/) - Award points for any BadgeOS achievement type.
|
96 |
|
97 |
For a comprehensive guide on how to install myCRED or how this plugin works, consider visiting our [Online Tutorial](http://mycred.me/support/tutorials/how-to-install-and-setup-mycred/).
|
98 |
|
99 |
+
**Single Site**
|
100 |
+
|
101 |
1. Upload `mycred` to the `/wp-content/plugins/` directory
|
102 |
2. Activate the plugin through the 'Plugins' menu in WordPress
|
103 |
3. Run the myCRED Setup which will allow you to configure your **my**CRED installation
|
105 |
5. Configure and Enable the hooks you wish to use though the 'Hooks' sub menu in WordPress
|
106 |
6. Configure any other Add-on settings you might be using i.e. BuddyPress though the 'Settings' sub menu in WordPress
|
107 |
|
108 |
+
**Multisite with one myCRED installation on all sites**
|
109 |
+
|
110 |
+
1. Upload `mycred` to the `/wp-content/plugins/` directory
|
111 |
+
2. Enable myCRED Network Wide though your WordPress Network page
|
112 |
+
3. While in your Network area, visit the new myCRED menu and select your setup and save.
|
113 |
+
4. Visit your main sites admin area
|
114 |
+
5. Run the myCRED Setup which will allow you to configure your **my**CRED installation
|
115 |
+
6. Activate the Add-ons you wish to use under the 'myCRED' menu in WordPress
|
116 |
+
7. Configure and Enable the hooks you wish to use though the 'Hooks' sub menu in WordPress
|
117 |
+
8. Configure any other Add-on settings you might be using i.e. BuddyPress though the 'Settings' sub menu in WordPress
|
118 |
+
|
119 |
+
**Multisite with individual myCRED installation for each site**
|
120 |
+
|
121 |
+
1. Upload `mycred` to the `/wp-content/plugins/` directory
|
122 |
+
2. Activate the plugin through the 'Plugins' menu in WordPress
|
123 |
+
3. Run the myCRED Setup which will allow you to configure your **my**CRED installation
|
124 |
+
4. Activate the Add-ons you wish to use under the 'myCRED' menu in WordPress
|
125 |
+
5. Configure and Enable the hooks you wish to use though the 'Hooks' sub menu in WordPress
|
126 |
+
6. Configure any other Add-on settings you might be using i.e. BuddyPress though the 'Settings' sub menu in WordPress
|
127 |
+
7. Repeat the process on each site you want to run myCRED
|
128 |
|
129 |
== Frequently Asked Questions ==
|
130 |
|
160 |
|
161 |
== Upgrade Notice ==
|
162 |
|
163 |
+
= 1.3 =
|
164 |
+
Performance improvement, new Remote API, updated styling and bug fixes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
165 |
|
166 |
|
167 |
== Other Notes ==
|
168 |
|
169 |
= Requirements =
|
170 |
+
* WordPress 3.1 or greater
|
171 |
* PHP version 5.2.4 or greater
|
172 |
* MySQL version 5.0 or greater
|
173 |
|
177 |
|
178 |
== Changelog ==
|
179 |
|
180 |
+
= 1.3 =
|
181 |
+
* Improved myCRED's module management lowering memory usage.
|
182 |
+
* Re-designed hooks, add-ons and settings accordion.
|
183 |
+
* Moved Log Query to mycred-log.php in the includes/ folder.
|
184 |
+
* Removed mycred_modules hook.
|
185 |
+
* Improved Hooks management and re-structured hooks in new plugins/ folder.
|
186 |
+
* Adjusted styling for MP6 users.
|
187 |
+
* Added %title% as new template tag for mycred_link.
|
188 |
+
* Added class attribute to mycred_buy shortcode.
|
189 |
+
* Added support for profit sharing to Supported Shopping Carts and Event Booking plugins.
|
190 |
+
* Added support for WP E-Commerce Shopping cart.
|
191 |
+
* Added new constant MYCRED_LOG_TABLE to allow custom table names for the log.
|
192 |
+
* Added new Management to settings page allowing to empty the log, reset all user points to zero or export all user balances to a CSV file.
|
193 |
+
* Added myCRED Remote API to allow remote actions for sites.
|
194 |
+
* Rewritten myCRED Network for Multisite installations.
|
195 |
+
* Updated the mycred_my_balance shortcode to allow stripping off html wrappers.
|
196 |
+
* Added new mycred_log_date filter allowing to customise the log dates.
|
197 |
+
* Added daily limit for points for profile updates (Activities) in Buddypress.
|
198 |
+
* Added option to award points to content authors for comments made by others.
|
199 |
+
* Fixed Bug #52 - Notifications add-on does not parse post related template tags.
|
200 |
+
* Fixed Bug #53 - General template tags are not parsed in sell content templates.
|
201 |
+
* Fixed Bug #54 - mycred_link shortcode does not support target attribute.
|
202 |
+
* Fixed Bug #55 - Users can transfer points to themselves.
|
203 |
+
* Fixed Bug #56 - Incorrect use of ob_start() in myCRED widgets.
|
204 |
+
* Fixed Bug #57 - Incorrect capability check on Multisites as edit_users is not available.
|
205 |
+
|
206 |
+
|
207 |
= 1.2.3 =
|
208 |
* Moved .POT file to correct location in /lang
|
209 |
* Cart support for Email notices has incorrect function name.
|