Ejemplo n.º 1
0
 public function donation_status_changed($new, $old, WP_Post $donation)
 {
     if ($new == $old || $donation->post_type != self::$post_type) {
         return;
     }
     if ($old == 'new' && $new != 'trash') {
         $this->new_donation_added($donation);
     } elseif ($new == 'funded' || $old == 'funded') {
         $donation = new Leyka_Donation($donation);
         $campaign = new Leyka_Campaign($donation->campaign_id);
         if ($campaign->target) {
             $collected_amount = $campaign->get_collected_amount();
             if ($collected_amount >= $campaign->target) {
                 $campaign->target_state = 'is_reached';
             } elseif ($campaign->target_state != 'in_process') {
                 $campaign->target_state = 'in_process';
             }
         }
     }
 }
Ejemplo n.º 2
0
function leyka_fake_scale_ultra($campaign)
{
    if (!is_a($campaign, 'Leyka_Campaign')) {
        $campaign = new Leyka_Campaign($campaign);
    }
    $curr_label = leyka_get_currency_label('rur');
    $collected = number_format(intval($campaign->get_collected_amount()), 0, '.', ' ');
    ?>


<div class="leyka-scale-ultra-fake">
    <div class="leyka-scale-scale">
        <div class="target"> </div>
    </div>
    <div class="leyka-scale-label"><span>
        <?php 
    printf(_x('Collected: %s', 'Label on ultra-compact fake scale', 'leyka'), "<b>{$collected}</b> {$curr_label}");
    ?>

    </span></div>
</div>
<?php 
}
    public function data_meta_box($post)
    {
        $campaign = new Leyka_Campaign($post);
        $cur_template = $campaign->template;
        if (empty($cur_template)) {
            $cur_template = 'default';
        }
        ?>

        <fieldset id="payment-title" class="metabox-field campaign-field campaign-purpose">
            <label for="payment_title">
                <?php 
        _e('Campaign title meant for payment system', 'leyka');
        ?>
                <br />
                <small><?php 
        echo __('If empty, main campaign title will be used', 'leyka');
        ?>
</small>
            </label>

            <input type="text" class="widefat" name="payment_title" id="payment_title" value="<?php 
        echo $campaign->payment_title ? $campaign->payment_title : $campaign->title;
        ?>
">
        </fieldset>
		
		<h4 class="metabox-field-title campaign-template"><?php 
        _e('Template settings', 'leyka');
        ?>
</h4>

		<fieldset id="campaign-template" class="metabox-field campaign-field campaign-template">
			<label for="campaign_template"><?php 
        _e('Template for payment form', 'leyka');
        ?>
</label>
			<select id="campaign_template" name="campaign_template">
				<option value="default" <?php 
        selected($cur_template, 'default');
        ?>
>
                    <?php 
        _e('Default template', 'leyka');
        ?>
                </option>

            <?php 
        $templates = leyka()->get_templates();
        if ($templates) {
            foreach ($templates as $template) {
                ?>
                <option value="<?php 
                echo esc_attr($template['id']);
                ?>
" <?php 
                selected($cur_template, $template['id']);
                ?>
>
                    <?php 
                echo esc_attr($template['name']);
                ?>
                </option>
                <?php 
            }
        }
        ?>

			</select>
		</fieldset>
		
		<fieldset id="ignore-global-template" class="metabox-field campaign-field campaign-ignorance">
			<label for="ignore_global_template">
			<input type="checkbox" name="ignore_global_template" id="ignore_global_template" value="1" <?php 
        checked($campaign->ignore_global_template_settings, 1);
        ?>
>&nbsp;
			<?php 
        _e('Ignore global template settings', 'leyka');
        ?>
</label>
		</fieldset>

		<h4 class="metabox-field-title campaign-target"><?php 
        _e('Campaign target', 'leyka');
        ?>
</h4>

		<fieldset id="target-amount" class="metabox-field campaign-field campaign-target">
			<label for="campaign_target">
                <?php 
        echo sprintf(__('Target (%s)', 'leyka'), leyka_options()->opt('currency_rur_label'));
        ?>
            </label>
			<input type="text" name="campaign_target" id="campaign_target" value="<?php 
        echo $campaign->target;
        ?>
" class="widefat">
		</fieldset>
		
		<fieldset id="collected-amount" class="metabox-field campaign-field campaign-target-collected">
		<?php 
        $collected = $campaign->get_collected_amount();
        ?>
			<label for="collected_target">
                <?php 
        echo sprintf(__('Collected (%s)', 'leyka'), leyka_get_currency_label('rur'));
        ?>
            </label>			
			<input type="text" id="collected_target" disabled="disabled" value="<?php 
        echo $collected;
        ?>
" class="widefat">
		</fieldset>

		<fieldset id="d-scale-demo" class="metabox-field campaign-field campaign-target-scale">
		<?php 
        if ($campaign->target > 0) {
            $percentage = round(100 * $collected / $campaign->target);
            $percentage = $percentage > 100 ? 100 : $percentage;
            ?>

			<div class="d-scale-scale">
				<div class="target">
					<div style="width:<?php 
            echo $percentage;
            ?>
%" class="collected">&nbsp;</div>
				</div>
			</div>
			
			<?php 
            if ($campaign->target_state == 'is_reached') {
                ?>
        
			<p>
				<?php 
                printf(__('Reached at: %s', 'leyka'), '<b>' . $campaign->date_target_reached . '</b>');
                ?>
			</p>            
			<?php 
            }
            ?>

		<?php 
        }
        ?>
		</fieldset>

        <?php 
        $curr_page = get_current_screen();
        if ($curr_page->action != 'add') {
            ?>

        <fieldset id="campaign-finished" class="metabox-field campaign-field campaign-finished">
            <label for="is-finished">
                <input type="checkbox" id="is-finished" name="is_finished" value="1" <?php 
            echo $campaign->is_finished ? 'checked' : '';
            ?>
 /> <?php 
            _e('Campaign is finished, donations collection is stopped', 'leyka');
            ?>
            </label>
        </fieldset>
	<?php 
        }
    }