Commit 348dc301 authored by Simon's avatar Simon

in progess

parent 493d608a

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

3HbgZEzRBWc76KfwTUhTPJCYp6SquoEtcPo5wI1C_rs.RnimafUUxVXJ9ttTJ-JB-5-xtc2fihvNCw0ZTtW9H6g
\ No newline at end of file
3HbgZEzRBWc76KfwTUhTPJCYp6SquoEtcPo5wI1C_rs.RnimafUUxVXJ9ttTJ-JB-5-xtc2fihvNCw0ZTtW9H6g
\ No newline at end of file
b4xnQZralkAYbQzXMk1pqtjTSCkE051E1sXuYqU4vNw.RnimafUUxVXJ9ttTJ-JB-5-xtc2fihvNCw0ZTtW9H6g
\ No newline at end of file
iVPL-j1vSceNX30hLAyVAQZVlJe7Twf9QEbGYvI4NZU.RnimafUUxVXJ9ttTJ-JB-5-xtc2fihvNCw0ZTtW9H6g
\ No newline at end of file
k2_nVXI_WSxag6SyZyngS8MDIw7BGMmYA1J3XezO734.RnimafUUxVXJ9ttTJ-JB-5-xtc2fihvNCw0ZTtW9H6g
\ No newline at end of file
k2_nVXI_WSxag6SyZyngS8MDIw7BGMmYA1J3XezO734.RnimafUUxVXJ9ttTJ-JB-5-xtc2fihvNCw0ZTtW9H6g
\ No newline at end of file
<?php
/**
* @package Hello_Dolly
* @version 1.7.2
*/
/*
Plugin Name: Hello Dolly
Plugin URI: http://wordpress.org/plugins/hello-dolly/
Description: This is not just a plugin, it symbolizes the hope and enthusiasm of an entire generation summed up in two words sung most famously by Louis Armstrong: Hello, Dolly. When activated you will randomly see a lyric from <cite>Hello, Dolly</cite> in the upper right of your admin screen on every page.
Author: Matt Mullenweg
Version: 1.7.2
Author URI: http://ma.tt/
*/
function hello_dolly_get_lyric() {
/** These are the lyrics to Hello Dolly */
$lyrics = "Hello, Dolly
Well, hello, Dolly
It's so nice to have you back where you belong
You're lookin' swell, Dolly
I can tell, Dolly
You're still glowin', you're still crowin'
You're still goin' strong
I feel the room swayin'
While the band's playin'
One of our old favorite songs from way back when
So, take her wrap, fellas
Dolly, never go away again
Hello, Dolly
Well, hello, Dolly
It's so nice to have you back where you belong
You're lookin' swell, Dolly
I can tell, Dolly
You're still glowin', you're still crowin'
You're still goin' strong
I feel the room swayin'
While the band's playin'
One of our old favorite songs from way back when
So, golly, gee, fellas
Have a little faith in me, fellas
Dolly, never go away
Promise, you'll never go away
Dolly'll never go away again";
// Here we split it into lines.
$lyrics = explode( "\n", $lyrics );
// And then randomly choose a line.
return wptexturize( $lyrics[ mt_rand( 0, count( $lyrics ) - 1 ) ] );
}
// This just echoes the chosen line, we'll position it later.
function hello_dolly() {
$chosen = hello_dolly_get_lyric();
$lang = '';
if ( 'en_' !== substr( get_user_locale(), 0, 3 ) ) {
$lang = ' lang="en"';
}
printf(
'<p id="dolly"><span class="screen-reader-text">%s </span><span dir="ltr"%s>%s</span></p>',
__( 'Quote from Hello Dolly song, by Jerry Herman:' ),
$lang,
$chosen
);
}
// Now we set that function up to execute when the admin_notices action is called.
add_action( 'admin_notices', 'hello_dolly' );
// We need some CSS to position the paragraph.
function dolly_css() {
echo "
<style type='text/css'>
#dolly {
float: right;
padding: 5px 10px;
margin: 0;
font-size: 12px;
line-height: 1.6666;
}
.rtl #dolly {
float: left;
}
.block-editor-page #dolly {
display: none;
}
@media screen and (max-width: 782px) {
#dolly,
.rtl #dolly {
float: none;
padding-left: 0;
padding-right: 0;
}
}
</style>
";
}
add_action( 'admin_head', 'dolly_css' );
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
<?php
/**
* @package Pods
*/
class PodsArray implements ArrayAccess {
/**
* @var array|mixed
*/
private $__container = array();
/**
* Alternative to get_object_vars to access an object as an array with simple functionality and accepts arrays to
* add additional functionality. Additional functionality includes validation and setting default data.
*
* @param mixed $container Object (or existing Array).
*
* @return \PodsArray
*
* @license http://www.gnu.org/licenses/gpl-2.0.html
* @since 2.0.0
*/
public function __construct( $container ) {
if ( is_array( $container ) || is_object( $container ) ) {
$this->__container = &$container;
}
}
/**
* Set value from array usage $object['offset'] = 'value';
*
* @param mixed $offset Used to set index of Array or Variable name on Object.
* @param mixed $value Value to be set.
*
* @return mixed
* @since 2.0.0
*/
public function offsetSet( $offset, $value ) {
if ( is_array( $this->__container ) ) {
$this->__container[ $offset ] = $value;
} else {
$this->__container->{$offset} = $value;
}
return $value;
}
/**
* Get value from array usage $object['offset'];
*
* @param mixed $offset Used to get value of Array or Variable on Object.
*
* @return mixed|null
* @since 2.0.0
*/
public function offsetGet( $offset ) {
if ( is_array( $this->__container ) ) {
if ( isset( $this->__container[ $offset ] ) ) {
return $this->__container[ $offset ];
}
} elseif ( isset( $this->__container->$offset ) ) {
return $this->__container->$offset;
}
return null;
}
/**
* Get value from array usage $object['offset'];
*
* @param mixed $offset Used to get value of Array or Variable on Object.
*
* @return bool
* @since 2.0.0
*/
public function offsetExists( $offset ) {
if ( is_array( $this->__container ) ) {
return isset( $this->__container[ $offset ] );
}
return isset( $this->__container->$offset );
}
/**
* Get value from array usage $object['offset'];
*
* @param mixed $offset Used to unset index of Array or Variable on Object.
*
* @since 2.0.0
*/
public function offsetUnset( $offset ) {
if ( is_array( $this->__container ) ) {
unset( $this->__container[ $offset ] );
} else {
unset( $this->__container->$offset );
}
}
/**
* Validate value on a specific type and set default (if empty)
*
* @param mixed $offset Used to get value of Array or Variable on Object.
* @param mixed|null $default Used to set default value if it doesn't exist.
* @param string|null $type Used to force a specific type of variable (allowed: array, object, integer, absint,
* boolean).
* @param mixed|null $extra Used in advanced types of variables.
*
* @return array|bool|int|mixed|null|number|object
* @since 2.0.0
*/
public function validate( $offset, $default = null, $type = null, $extra = null ) {
if ( ! $this->offsetExists( $offset ) ) {
$this->offsetSet( $offset, $default );
}
$value = $this->offsetGet( $offset );
if ( empty( $value ) && null !== $default && false !== $value ) {
$value = $default;
}
if ( 'array' === $type || 'array_merge' === $type ) {
if ( ! is_array( $value ) ) {
$value = explode( ',', $value );
}
if ( 'array_merge' === $type && $value !== $default ) {
$value = array_merge( $default, $value );
}
} elseif ( 'object' === $type || 'object_merge' === $type ) {
if ( ! is_object( $value ) ) {
if ( ! is_array( $value ) ) {
$value = explode( ',', $value );
}
$value = (object) $value;
}
if ( 'object_merge' === $type && $value !== $default ) {
$value = (object) array_merge( (array) $default, (array) $value );
}
} elseif ( 'integer' === $type || 'int' === $type || 'absint' === $type ) {
if ( ! is_numeric( trim( $value ) ) ) {
$value = 0;
} else {
$value = intval( $value );
}
if ( 'absint' === $type ) {
$value = abs( $value );
}
} elseif ( 'boolean' === $type || 'bool' === $type ) {
$value = (boolean) $value;
} elseif ( 'in_array' === $type && is_array( $default ) ) {
if ( is_array( $value ) ) {
foreach ( $value as $k => $v ) {
if ( ! in_array( $v, $extra, true ) ) {
unset( $value[ $k ] );
}
}
} elseif ( ! in_array( $value, $extra, true ) ) {
$value = $default;
}
} elseif ( 'isset' === $type && is_array( $default ) ) {
if ( is_array( $value ) ) {
foreach ( $value as $k => $v ) {
if ( ! isset( $extra[ $v ] ) ) {
unset( $value[ $k ] );
}
}
} elseif ( ! isset( $extra[ $value ] ) ) {
$value = $default;
}
}//end if
$this->offsetSet( $offset, $value );
return $value;
}
/**
* Dump the PodsArray object to array
*
* @return array Array version of the object
*
* @since 2.0.0
*/
public function dump() {
if ( is_array( $this->__container ) ) {
return $this->__container;
}
return get_object_vars( $this->__container );
}
/**
* Mapping >> offsetSet
*
* @param mixed $offset Property name.
* @param mixed $value Property value.
*
* @return mixed
* @since 2.0.0
*/
public function __set( $offset, $value ) {
return $this->offsetSet( $offset, $value );
}
/**
* Mapping >> offsetGet
*
* @param mixed $offset Property name.
*
* @return mixed|null
* @since 2.0.0
*/
public function __get( $offset ) {
return $this->offsetGet( $offset );
}
/**
* Mapping >> offsetExists
*
* @param mixed $offset Property name.
*
* @return bool
* @since 2.0.0
*/
public function __isset( $offset ) {
return $this->offsetExists( $offset );
}
/**
* Mapping >> offsetUnset
*
* @param mixed $offset Property name.
*
* @since 2.0.0
*/
public function __unset( $offset ) {
$this->offsetUnset( $offset );
}
}
<?php
/**
* The base component class, all components should extend this.
*
* @package Pods
*/
class PodsComponent {
/**
* Setup initial component class.
*
* @since 2.0.0
*/
public function __construct() {
$this->init();
}
/**
* Do things like register/enqueue scripts and stylesheets.
*
* @since 2.7.2
*/
public function init() {
}
/**
* Add options and set defaults for component settings, shows in admin area
*
* @return array $options
*
* @since 2.0.0
* public function options () {
* $options = array(
* 'option_name' => array(
* 'label' => 'Option Label',
* 'depends-on' => array( 'another_option' => 'specific-value' ),
* 'default' => 'default-value',
* 'type' => 'field_type',
* 'data' => array(
* 'value1' => 'Label 1',
*
* // Group your options together
* 'Option Group' => array(
* 'gvalue1' => 'Option Label 1',
* 'gvalue2' => 'Option Label 2'
* ),
*
* // below is only if the option_name above is the "{$fieldtype}_format_type"
* 'value2' => array(
* 'label' => 'Label 2',
* 'regex' => '[a-zA-Z]' // Uses JS regex validation for the value saved if this option selected
* )
* ),
*
* // below is only for a boolean group
* 'group' => array(
* 'option_boolean1' => array(
* 'label' => 'Option boolean 1?',
* 'default' => 1,
* 'type' => 'boolean'
* ),
* 'option_boolean2' => array(
* 'label' => 'Option boolean 2?',
* 'default' => 0,
* 'type' => 'boolean'
* )
* )
* )
* );
*
* return $options;
* }
*/
/**
* Handler to run code based on $options
*
* @param array $options Component options.
*
* @since 2.0.0
*/
public function handler( $options ) {
// run code based on $options set
}
/**
* Build admin area
*
* @param array $options Component options.
*
* @since 2.0.0
* public function admin ( $options ) {
* // run code based on $options set
* }
*/
}
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<?php
/**
* Class PodsRESTFields
*
* Creates an object that adds read/write handlers for Pods fields in default responses.
*
* @package Pods
* @since 2.5.6
*/
class PodsRESTFields {
/**
* Pods object
*
* @since 2.5.6
*
* @access protected
*
* @var Pods
*/
protected $pod;
/**
* Constructor for class
*
* @since 2.5.6
*
* @param string|object|Pods $pod Pods object
*/
public function __construct( $pod ) {
if ( ! function_exists( 'register_rest_field' ) ) {
return;
}
$this->set_pod( $pod );
if ( $this->pod ) {
$this->add_fields();
}
}
/**
* Set the Pods object
*
* @since 2.5.6
*
* @access protected
*
* @param string|Pods $pod Pods object or name of Pods object
*/
private function set_pod( $pod ) {
if ( is_string( $pod ) ) {
$pod = pods( $pod, null, true );
$this->set_pod( $pod );
} else {
$type = $pod->pod_data['type'];
$supported_pod_types = array(
'post_type',
'taxonomy',
'media',
'user',
'comment',
);
if ( in_array( $type, $supported_pod_types, true ) ) {
$this->pod = $pod;
} else {
$this->pod = false;
}
}//end if
}
/**
* Add fields, based on options to REST read/write requests
*
* @since 2.5.6
*
* @access protected
*/
protected function add_fields() {
$fields = $this->pod->fields();
$rest_hook_name = $this->pod->pod_data['name'];
if ( 'media' === $rest_hook_name ) {
$rest_hook_name = 'attachment';
} elseif ( 'comment' === $this->pod->pod_data['type'] ) {
$rest_hook_name = 'comment';
}
$rest_hook_name = 'rest_insert_' . $rest_hook_name;
if ( ! has_action( $rest_hook_name, array( 'PodsRESTHandlers', 'save_handler' ) ) ) {
add_action( $rest_hook_name, array( 'PodsRESTHandlers', 'save_handler' ), 10, 3 );
}
foreach ( $fields as $field_name => $field ) {
$read = self::field_allowed_to_extend( $field_name, $this->pod, 'read' );
$write = self::field_allowed_to_extend( $field_name, $this->pod, 'write' );
$this->register( $field_name, $read, $write );
}
}
/**
* Register fields and their callbacks for read/write via REST
*
* @since 2.5.6
*
* @access protected
*
* @param string $field_name Name of field
* @param bool $read Field allows REST API read access
* @param bool $write Field allows REST API write access
*/
protected function register( $field_name, $read, $write ) {
$args = array();
if ( $read ) {
$args['get_callback'] = array( 'PodsRESTHandlers', 'get_handler' );
}
if ( $write ) {
$args['pods_update'] = true;
}
$object_type = $this->pod->pod;
if ( 'media' === $object_type ) {
$object_type = 'attachment';
}
if ( $read || $write ) {
register_rest_field( $object_type, $field_name, $args );
}
}
/**
* Check if a field supports read or write via the REST API.
*
* @since 2.5.6
*
* @param string $field_name The field name.
* @param Pods $pod Pods object.
* @param string $mode Are we checking read or write?
*
* @return bool If supports, true, else false.
*/
public static function field_allowed_to_extend( $field_name, $pod, $mode = 'read' ) {
$allowed = false;
if ( is_object( $pod ) ) {
$field = $pod->fields( $field_name );
if ( $field ) {
$pod_options = $pod->pod_data['options'];
$read_all = (int) pods_v( 'read_all', $pod_options, 0 );
$write_all = (int) pods_v( 'write_all', $pod_options, 0 );
if ( 'read' === $mode && 1 === $read_all ) {
$allowed = true;
} elseif ( 'write' === $mode && 1 === $write_all ) {
$allowed = true;
} else {
$rest_read = (int) $pod->fields( $field_name, 'rest_read' );
$rest_write = (int) $pod->fields( $field_name, 'rest_write' );
if ( 'read' === $mode && 1 === $rest_read ) {
$allowed = true;
} elseif ( 'write' === $mode && 1 === $rest_write ) {
$allowed = true;
}
}
}//end if
}//end if
return $allowed;
}
}
<?php
/**
* Class PodsRESTHandlers
*
* Handlers for reading and writing Pods fields via REST API
*
* @package Pods
* @since 2.5.6
*/
class PodsRESTHandlers {
/**
* Holds a Pods object to avoid extra DB queries
*
* @since 2.5.6
*
* @var Pods
*/
private static $pod;
/**
* Get Pod object
*
* @since 2.5.6
*
* @param $pod_name
* @param $id
*
* @return bool|Pods
*/
protected static function get_pod( $pod_name, $id ) {
if ( ! self::$pod || self::$pod->pod !== $pod_name ) {
self::$pod = pods( $pod_name, $id, true );
}
if ( self::$pod && (int) self::$pod->id !== (int) $id ) {
self::$pod->fetch( $id );
}
return self::$pod;
}
/**
* Handler for getting custom field data.
*
* @since 2.5.6
*
* @param array $object The object from the response
* @param string $field_name Name of field
* @param WP_REST_Request $request Current request
* @param string $object_type Type of object
*
* @return mixed
*/
public static function get_handler( $object, $field_name, $request, $object_type ) {
$pod_name = pods_v( 'type', $object );
/**
* If $pod_name in the line above is empty then the route invoked
* may be for a taxonomy, so lets try and check for that
*/
if ( empty( $pod_name ) ) {
$pod_name = pods_v( 'taxonomy', $object );
}
/**
* $pod_name is still empty, so check lets check $object_type
*/
if ( empty( $pod_name ) ) {
if ( 'attachment' === $object_type ) {
$pod_name = 'media';
} else {
$pod_name = $object_type;
}
}
/**
* Filter the pod name
*
* @since 2.6.7
*
* @param array $pod_name Pod name
* @param Pods $object Rest object
* @param string $field_name Name of the field
* @param WP_REST_Request $request Current request
* @param string $object_type Rest Object type
*/
$pod_name = apply_filters( 'pods_rest_api_pod_name', $pod_name, $object, $field_name, $request, $object_type );
$id = pods_v( 'id', $object );
if ( empty( $id ) ) {
$id = pods_v( 'ID', $object );
}
$pod = self::get_pod( $pod_name, $id );
$value = false;
if ( $pod && PodsRESTFields::field_allowed_to_extend( $field_name, $pod, 'read' ) ) {
$params = null;
$field_data = $pod->fields( $field_name );
if ( 'pick' === pods_v( 'type', $field_data ) ) {
$output_type = pods_v( 'rest_pick_response', $field_data['options'], 'array' );
/**
* What output type to use for a related field REST response.
*
* @since 2.7.0
*
* @param string $output_type The pick response output type.
* @param string $field_name The name of the field
* @param array $field_data The field data
* @param object|Pods $pod The Pods object for Pod relationship is from.
* @param int $id Current item ID
* @param object|WP_REST_Request Current request object.
*/
$output_type = apply_filters( 'pods_rest_api_output_type_for_relationship_response', $output_type, $field_name, $field_data, $pod, $id, $request );
if ( 'array' === $output_type ) {
$related_pod_items = $pod->field( $field_name, array( 'output' => 'pod' ) );
if ( $related_pod_items ) {
$fields = false;
$items = array();
$depth = pods_v( 'rest_pick_depth', $field_data['options'], 2 );
if ( ! is_array( $related_pod_items ) ) {
$related_pod_items = array( $related_pod_items );
}
/**
* @var $related_pod Pods
*/
foreach ( $related_pod_items as $related_pod ) {
if ( ! is_object( $related_pod ) || ! is_a( $related_pod, 'Pods' ) ) {
$items = $related_pod_items;
break;
}
if ( false === $fields ) {
$fields = $related_pod->fields();
$fields = array_keys( $fields );
if ( isset( $related_pod->pod_data['object_fields'] ) && ! empty( $related_pod->pod_data['object_fields'] ) ) {
$fields = array_merge( $fields, array_keys( $related_pod->pod_data['object_fields'] ) );
}
/**
* What fields to show in a related field REST response.
*
* @since 0.0.1
*
* @param array $fields The fields to show
* @param string $field_name The name of the field
* @param object|Pods $pod The Pods object for Pod relationship is from.
* @param object|Pods $pod The Pods object for Pod relationship is to.
* @param int $id Current item ID
* @param object|WP_REST_Request Current request object.
*/
$fields = apply_filters( 'pods_rest_api_fields_for_relationship_response', $fields, $field_name, $pod, $related_pod, $id, $request );
}//end if
/**
* What depth to use for a related field REST response.
*
* @since 0.0.1
*
* @param array $depth The depth.
* @param string $field_name The name of the field
* @param object|Pods $pod The Pods object for Pod relationship is from.
* @param object|Pods $pod The Pods object for Pod relationship is to.
* @param int $id Current item ID
* @param object|WP_REST_Request Current request object.
*/
$depth = apply_filters( 'pods_rest_api_depth_for_relationship_response', $depth, $field_name, $pod, $related_pod, $id, $request );
$params = array(
'fields' => $fields,
'depth' => $depth,
'context' => 'rest',
);
$items[] = $related_pod->export( $params );
}//end foreach
$value = $items;
}//end if
}//end if
$params = array(
'output' => $output_type,
);
}//end if
// If no value set yet, get normal field value
if ( ! $value && ! is_array( $value ) ) {
$value = $pod->field( $field_name, $params );
}
}//end if
return $value;
}
/**
* Handle saving of Pod fields from REST API write requests.
*
* @param WP_Post|WP_Term|WP_User|WP_Comment $object Inserted or updated object.
* @param WP_REST_Request $request Request object.
* @param bool $creating True when creating an item, false when updating.
*/
public static function save_handler( $object, $request, $creating ) {
if ( is_a( $object, 'WP_Post' ) ) {
$pod_name = $object->post_type;
if ( 'attachment' === $pod_name ) {
$pod_name = 'media';
}
$id = $object->ID;
} elseif ( is_a( $object, 'WP_Term' ) ) {
$pod_name = $object->taxonomy;
$id = $object->term_id;
} elseif ( is_a( $object, 'WP_User' ) ) {
$pod_name = 'user';
$id = $object->ID;
} elseif ( is_a( $object, 'WP_Comment' ) ) {
$pod_name = 'comment';
$id = $object->comment_ID;
} else {
// Not a supported object
return;
}//end if
$pod = self::get_pod( $pod_name, $id );
global $wp_rest_additional_fields;
$rest_enable = (boolean) pods_v( 'rest_enable', $pod->pod_data['options'], false );
if ( $pod && $rest_enable && ! empty( $wp_rest_additional_fields[ $pod_name ] ) ) {
$fields = $pod->fields();
$save_fields = array();
$params = array(
'is_new_item' => $creating,
);
foreach ( $fields as $field_name => $field ) {
if ( empty( $wp_rest_additional_fields[ $pod_name ][ $field_name ]['pods_update'] ) ) {
continue;
} elseif ( ! isset( $request[ $field_name ] ) ) {
continue;
} elseif ( ! PodsRESTFields::field_allowed_to_extend( $field_name, $pod, 'write' ) ) {
continue;
}
$save_fields[ $field_name ] = $request[ $field_name ];
}
if ( ! empty( $save_fields ) || $creating ) {
$pod->save( $save_fields, null, null, $params );
}
}//end if
}
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<?php
require_once PODS_DIR . 'classes/fields/pick.php';
/**
* Create a faux pick field type for comment traversal.
*
* @package Pods\Fields
*/
class PodsField_Comment extends PodsField_Pick {
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<?php
require_once PODS_DIR . 'classes/fields/pick.php';
/**
* Create a faux pick field type for comment traversal.
*
* @package Pods\Fields
*/
class PodsField_Taxonomy extends PodsField_Pick {
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<?php
/**
* @package Pods\Widgets
*/
class PodsWidgetField extends WP_Widget {
/**
* {@inheritdoc}
*/
public function __construct( $id_base = '', $name = '', $widget_options = array(), $control_options = array() ) {
parent::__construct( 'pods_widget_field', __( 'Pods - Field Value', 'pods' ), array(
'classname' => 'pods_widget_field',
'description' => __( "Display a single Pod item's field value", 'pods' ),
), array( 'width' => 200 ) );
}
/**
* {@inheritdoc}
*/
public function widget( $args, $instance ) {
// Setup basic widget parameters.
$before_widget = pods_v( 'before_widget', $args );
$after_widget = pods_v( 'after_widget', $args );
$before_title = pods_v( 'before_title', $args );
$title = apply_filters( 'widget_title', pods_v( 'title', $instance ) );
$after_title = pods_v( 'after_title', $args );
$before_content = pods_v( 'before_content', $instance );
$after_content = pods_v( 'after_content', $instance );
$args = array(
'name' => trim( pods_v( 'pod_type', $instance, '' ) ),
'slug' => trim( pods_v( 'slug', $instance, '' ) ),
'field' => trim( pods_v( 'field', $instance, '' ) ),
);
if ( 0 < strlen( $args['name'] ) && 0 < strlen( $args['slug'] ) && 0 < strlen( $args['field'] ) ) {
require PODS_DIR . 'ui/front/widgets.php';
}
}
/**
* {@inheritdoc}
*/
public function update( $new_instance, $old_instance ) {
$instance = $old_instance;
$instance['title'] = pods_v( 'title', $new_instance, '' );
$instance['pod_type'] = pods_v( 'pod_type', $new_instance, '' );
$instance['slug'] = pods_v( 'slug', $new_instance, '' );
$instance['field'] = pods_v( 'field', $new_instance, '' );
return $instance;
}
/**
* {@inheritdoc}
*/
public function form( $instance ) {
$title = pods_v( 'title', $instance, '' );
$pod_type = pods_v( 'pod_type', $instance, '' );
$slug = pods_v( 'slug', $instance, '' );
$field = pods_v( 'field', $instance, '' );
require PODS_DIR . 'ui/admin/widgets/field.php';
}
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment