Making WordPress.org

Changeset 7098


Ignore:
Timestamp:
04/12/2018 12:19:34 AM (6 years ago)
Author:
coreymckrill
Message:

WordCamp: Require special caps in order to change a WordCamp's sponsor region

The sponsor region is determined and assigned by a WPCS team member, but
sometimes the camp organizer doesn't know what the field is for and changes it.
This helps prevent unintentional changes.

Location:
sites/trunk/wordcamp.org/public_html/wp-content/plugins
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • sites/trunk/wordcamp.org/public_html/wp-content/plugins/multi-event-sponsors/classes/mes-region.php

    r6727 r7098  
    146146        $site_id         = get_post_meta( $post->ID, '_site_id', true );
    147147        $cb_push_name    = wcpt_key_to_str( 'push-mes-sponsors', 'wcpt_' );
     148        $protected       = WordCamp_Admin::is_protected_field( $key );
    148149
    149150        require( dirname( __DIR__ ) . '/views/template-region-dropdown.php' );
     
    162163        }
    163164
     165        if ( WordCamp_Admin::is_protected_field( $key ) ) {
     166            return;
     167        }
     168
    164169        $post_key = wcpt_key_to_str( $key, 'wcpt_' );
    165170        if ( isset( $_POST[ $post_key ] ) ) {
  • sites/trunk/wordcamp.org/public_html/wp-content/plugins/multi-event-sponsors/views/template-region-dropdown.php

    r6626 r7098  
    44<?php /** @var $cb_push_name    string */ ?>
    55<?php /** @var $site_id         int    */ ?>
     6<?php /** @var $protected       bool   */ ?>
    67
    78<select id="<?php echo esc_attr( $field_name ); ?>" name="<?php echo esc_attr( $field_name ); ?>">
    8     <option value="">None</option>
    9 
    10     <?php foreach ( $regions as $region ) : ?>
    11 
    12         <option value="<?php echo esc_attr( $region->term_id ); ?>" <?php selected( $selected_region, $region->term_id ); ?>>
    13             <?php echo esc_html( $region->name ); ?>
     9    <?php if ( ! $protected ) : ?>
     10        <option value="">None</option>
     11        <?php foreach ( $regions as $region ) : ?>
     12            <option value="<?php echo esc_attr( $region->term_id ); ?>" <?php selected( $selected_region, $region->term_id ); ?>>
     13                <?php echo esc_html( $region->name ); ?>
     14            </option>
     15        <?php endforeach; ?>
     16    <?php else : ?>
     17        <option value="<?php echo esc_attr( $selected_region ); ?>" selected>
     18            <?php echo esc_html( get_term( $selected_region, MES_Region::TAXONOMY_SLUG )->name ); ?>
    1419        </option>
    15 
    16     <?php endforeach; ?>
     20    <?php endif; ?>
    1721</select>
    1822
    19 <?php if ( $site_id ) : ?>
     23<?php if ( $site_id && ! $protected ) : ?>
    2024    <label>
    2125        <input type="checkbox" name="<?php echo esc_attr( $cb_push_name ); ?>" value="1" />
  • sites/trunk/wordcamp.org/public_html/wp-content/plugins/wcpt/wcpt-wordcamp/wordcamp-admin.php

    r6649 r7098  
    973973
    974974        if ( ! current_user_can( 'wordcamp_manage_mentors' ) ) {
    975             $protected_fields += array(
     975            $protected_fields = array_merge( $protected_fields, array(
    976976                'Mentor WordPress.org User Name',
    977977                'Mentor Name',
    978978                'Mentor E-mail Address',
    979             );
     979            ) );
     980        }
     981
     982        if ( ! current_user_can( 'wordcamp_wrangle_wordcamps' ) ) {
     983            $protected_fields = array_merge( $protected_fields, array(
     984                'Multi-Event Sponsor Region',
     985            ) );
    980986        }
    981987
  • sites/trunk/wordcamp.org/public_html/wp-content/plugins/wcpt/wcpt-wordcamp/wordcamp-new-site.php

    r6013 r7098  
    201201
    202202        if ( empty( $_POST[ wcpt_key_to_str( 'push-mes-sponsors', 'wcpt_' ) ] ) ) {
     203            return;
     204        }
     205
     206        if ( WordCamp_Admin::is_protected_field( 'Multi-Event Sponsor Region' ) ) {
    203207            return;
    204208        }
Note: See TracChangeset for help on using the changeset viewer.