Plugin Directory

Changeset 1110271


Ignore:
Timestamp:
03/11/2015 11:21:59 AM (11 years ago)
Author:
phuisman
Message:

Added feature to limit the maximum selectable amount of sets/photos

Location:
flickr-field-for-advanced-custom-fields/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • flickr-field-for-advanced-custom-fields/trunk/acf-flickr-v4.php

    r1083026 r1110271  
    2929            'flickr_content_type'   => 'sets',
    3030            'flickr_sets_amount'    => '9999',
     31            'flickr_max_selected'   => '0',
    3132            'flickr_thumb_size'     => 'square',
    3233            'flickr_large_size'     => 'large_1024',
     
    147148                ?>
    148149           </td>
     150        </tr>       
     151        <tr class="field_option field_option_<?php echo $this->name; ?>">
     152            <td class="label">
     153                <label><?php _e( 'Max selectable amount', 'acf-flickr' );?></label>
     154                <p class="description"><?php _e('What\'s the maximum amount to be attached to a post? Using 0 is default (and unlimited).', 'acf-flickr');?></p>
     155            </td>
     156            <td>
     157                <?php
     158                do_action('acf/create_field', array(
     159                    'type'  =>  'text',
     160                    'name'  =>  'fields['.$key.'][flickr_max_selected]',
     161                    'value' =>  $field['flickr_max_selected'],
     162                ));
     163                ?>
     164           </td>
    149165        </tr>
    150166        <tr class="field_option field_option_<?php echo $this->name; ?>">
     
    193209        </tr>
    194210
     211
    195212        <tr class="field_option field_option_<?php echo $this->name; ?>">
    196213            <td class="label">
     
    269286            $f->enableCache('fs', $cache_dir, $duration);       
    270287        }       
    271 
    272         // Include fields.css from the ACF plugin for some more styling
    273         wp_register_style('fields-css',get_bloginfo('wpurl'). '/wp-content/plugins/advanced-custom-fields/css/fields.css');
    274         wp_enqueue_style('fields-css');
    275288       
    276289        $field['choices'] = array();
     
    305318                            foreach($data as $key => $flickr) {
    306319                                ?>
    307                                 <tr class="field_label flickr_row <?php if (in_array($flickr['id'], $items)) echo 'active-row'; ?>" data-flickr-id="<?php echo $flickr['id']; ?>">
     320                                <tr class="field_label flickr_row <?php if (isset($flickr['id']) && in_array($flickr['id'], $items)) echo 'active-row'; ?>" data-flickr-id="<?php echo $flickr['id']; ?>">
    308321                                    <td class="label set_image">
    309322                                        <?php if ($field['flickr_content_type'] == 'sets'): ?>
     
    395408        // html
    396409        if (!isset($multiple)) { $multiple = ''; }
    397         echo '<select id="' . $field['name'] . '" class="' . $field['class'] . '" name="' . $field['name'] . '" ' . $multiple . ' >';   
     410        echo '<select id="' . $field['name'] . '" class="' . $field['class'] . '" name="' . $field['name'] . '" ' . $multiple . ' data-max-selectable="'. $field['flickr_max_selected'] .'" data-flickr-type="'. $field['flickr_content_type'] .'">';   
    398411       
    399412        // null
  • flickr-field-for-advanced-custom-fields/trunk/acf-flickr-v5.php

    r1083026 r1110271  
    4848            'flickr_content_type'   => 'sets',
    4949            'flickr_sets_amount'    => '9999',
     50            'flickr_max_selected'   => '0',
    5051            'flickr_thumb_size'     => 'square',
    5152            'flickr_large_size'     => 'large_1024',
     
    120121        ));
    121122
     123        acf_render_field_setting( $field, array(
     124            'label'        => __('Max selectable amount','acf-flickr'),
     125            'instructions' => __('What\'s the maximum amount to be attached to a post? Using 0 is default (and unlimited).','acf-flickr'),
     126            'type'         => 'text',
     127            'name'         => 'flickr_max_selected',
     128        ));
     129
    122130        $cache_dir = dirname(__FILE__) . '/cache';
    123131        if (!   is_writeable($cache_dir)) {
     
    211219            $f->enableCache('fs', $cache_dir, $duration);       
    212220        }       
    213 
    214         // Include fields.css from the ACF plugin for some more styling
    215         wp_register_style('fields-css',get_bloginfo('wpurl'). '/wp-content/plugins/advanced-custom-fields/css/fields.css');
    216         wp_enqueue_style('fields-css');
    217221       
    218222        $field['choices'] = array();
     
    247251                            foreach($data as $key => $flickr) {
    248252                                ?>
    249                                 <tr class="field_label flickr_row <?php if (in_array($flickr['id'], $items)) echo 'active-row'; ?>" data-flickr-id="<?php echo $flickr['id']; ?>">
     253                                <tr class="field_label flickr_row <?php if (isset($flickr['id']) && in_array($flickr['id'], $items)) echo 'active-row'; ?>" data-flickr-id="<?php echo $flickr['id']; ?>">
    250254                                    <td class="label set_image">
    251255                                        <?php if ($field['flickr_content_type'] == 'sets'): ?>
     
    336340        // html
    337341        if (!isset($multiple)) { $multiple = ''; }
    338         echo '<select id="' . $field['name'] . '" class="' . $field['class'] . '" name="' . $field['name'] . '" ' . $multiple . ' >';   
     342        echo '<select id="' . $field['name'] . '" class="' . $field['class'] . '" name="' . $field['name'] . '" ' . $multiple . '  data-max-selectable="'. $field['flickr_max_selected'] .'" data-flickr-type="'. $field['flickr_content_type'] .'" >';
    339343       
    340344        // null
  • flickr-field-for-advanced-custom-fields/trunk/js/flickr-acf4.js

    r1083027 r1110271  
    22
    33    function initialize_flickrfield( $el ) {
     4        var max_selected_amount = $('select', $el).data('max-selectable');
     5        if(max_selected_amount == '') {
     6            max_selected_amount = 0;
     7        }
     8        var flickr_type = $('select', $el).data('flickr-type');
    49
    510        function fill_input_value() {
     
    3843        $('.flickr_row', $el).click(function(e) {
    3944            e.preventDefault();
     45
    4046            // Deselect if active
    4147            if ($(this).hasClass('active-row')) {
     
    4349            }
    4450            else {
     51                // Check if the maximum selectable amount of items has been passed
     52                if(max_selected_amount != 0 && $('.active-row', $el).length >= max_selected_amount) {
     53                    alert('The maximum selectable amount of ' + flickr_type + ' is ' + max_selected_amount + '.');
     54                    return;
     55                }
    4556                $(this).addClass('active-row');
    4657            }
  • flickr-field-for-advanced-custom-fields/trunk/js/flickr-acf5.js

    r1083026 r1110271  
    22
    33    function initialize_flickrfield( $el ) {
     4        var max_selected_amount = $('select', $el).data('max-selectable');
     5        if(max_selected_amount == '') {
     6            max_selected_amount = 0;
     7        }
     8        var flickr_type = $('select', $el).data('flickr-type');
    49
    510        function fill_input_value() {
     
    1318                        secret: $(this).attr('data-flickr-secret'),
    1419                        farm: $(this).attr('data-flickr-farm'),
    15                         title: $(this).attr('data-flickr-title'),   
     20                        title: $(this).attr('data-flickr-title'),
    1621                        original_url: $(this).attr('data-flickr-original-url')
    1722                    });
     
    3843        $('.flickr_row', $el).click(function(e) {
    3944            e.preventDefault();
     45           
    4046            // Deselect if active
    4147            if ($(this).hasClass('active-row')) {
     
    4349            }
    4450            else {
     51                // Check if the maximum selectable amount of items has been passed
     52                if(max_selected_amount != 0 && $('.active-row', $el).length >= max_selected_amount) {
     53                    alert('The maximum selectable amount of ' + flickr_type + ' is ' + max_selected_amount + '.');
     54                    return;
     55                }
    4556                $(this).addClass('active-row');
    4657            }
  • flickr-field-for-advanced-custom-fields/trunk/readme.txt

    r1087014 r1110271  
    33Tags: flickr, acf, custom, fields, photostream, photosets
    44Requires at least: 3.0.1
    5 Tested up to: 4.1
    6 Stable tag: 1.0.4
     5Tested up to: 4.1.1
     6Stable tag: 1.0.5
    77License: GPLv2 or later
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    5656== Changelog ==
    5757
     58= 1.0.5 =
     59* Added feature to limit the maximum selectable amount of sets/photos
     60
    5861= 1.0.4 =
    5962* Added possibility to display original format of the photo
Note: See TracChangeset for help on using the changeset viewer.