WordPress.org

Making WordPress.org


Ignore:
Timestamp:
05/02/2016 04:16:25 PM (5 years ago)
Author:
ocean90
Message:

Translate: Improve documentation of the jobs endpoint and allow only hooks which are prefixed with wporg_translate_.

See #1636.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sites/trunk/wordpress.org/public_html/wp-content/plugins/wporg-gp-customizations/inc/rest-api/endpoints/class-jobs-controller.php

    r3016 r3059  
    2424                'args'                => [
    2525                    'timestamp'  => [
     26                        'description'       => 'Timestamp for when to run the job.',
    2627                        'required'          => true,
    2728                        'sanitize_callback' => 'absint',
     
    2930                    ],
    3031                    'recurrence' => [
     32                        'description'       => 'How often the job should rerun.',
    3133                        'required'          => true,
     34                        'enum'              => array_merge( [ 'once' ], array_keys( wp_get_schedules() ) ),
    3235                        'sanitize_callback' => 'sanitize_text_field',
    3336                        'validate_callback' => [ $this, 'validate_recurrence' ],
    3437                    ],
    3538                    'hook'       => [
     39                        'description'       => 'Action hook to execute when cron is run. Must be prefixed with `wporg_translate_`.',
    3640                        'required'          => true,
    3741                        'sanitize_callback' => 'sanitize_text_field',
     42                        'validate_callback' => [ $this, 'validate_hook' ],
    3843                    ],
    3944                    'args'       => [
    40                         'default' => [],
     45                        'description'       => 'Arguments to pass to the hook\'s callback function.',
     46                        'default'           => [],
    4147                        'validate_callback' => [ $this, 'validate_args' ],
    4248                    ],
     
    4955                'args'                => [
    5056                    'timestamp'  => [
     57                        'description'       => 'Timestamp for the next run of the job.',
    5158                        'required'          => true,
    5259                        'sanitize_callback' => 'absint',
     
    5461                    ],
    5562                    'hook'       => [
     63                        'description'       => 'Action hook to execute when cron is run. Must be prefixed with `wporg_translate_`.',
    5664                        'required'          => true,
    5765                        'sanitize_callback' => 'sanitize_text_field',
     66                        'validate_callback' => [ $this, 'validate_hook' ],
    5867                    ],
    5968                    'args'       => [
    60                         'default' => [],
     69                        'description'       => 'Arguments to pass to the hook\'s callback function.',
     70                        'default'           => [],
    6171                        'validate_callback' => [ $this, 'validate_args' ],
    6272                    ],
     
    164174
    165175    /**
     176     * Validates an action hook.
     177     *
     178     * @param string $hook The action hook to validate.
     179     * @return bool True if valid, false if not.
     180     */
     181    public function validate_hook( $hook ) {
     182        if ( 0 === strpos( $hook, 'wporg_translate_' ) ) {
     183            return true;
     184        }
     185
     186        return false;
     187    }
     188
     189    /**
    166190     * Validates the args parameter for a job.
    167191     *
Note: See TracChangeset for help on using the changeset viewer.