| Server IP : 213.136.93.164 / Your IP : 216.73.217.47 Web Server : Apache System : Linux m14200.contabo.net 5.14.0-611.54.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 6 18:03:03 EDT 2026 x86_64 User : ki692510 ( 1047) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/ki692510/www/wp-content/plugins/wpforms-lite/src/Admin/Base/Tables/Facades/ |
Upload File : |
<?php
namespace WPForms\Admin\Base\Tables\Facades;
/**
* Column facade class.
*
* Hides the complexity of columns' collection behind a simple interface.
*
* @since 1.8.6
*/
abstract class ColumnsBase {
/**
* Get columns.
*
* Returns all possible columns.
*
* @since 1.8.6
*
* @return array Array of columns as objects.
*/
protected static function get_all(): array {
return [];
}
/**
* Get columns' keys for the columns which user selected to be displayed.
*
* It returns an array of keys in the order they should be displayed.
* It returns draggable and non-draggable columns.
*
* @since 1.8.6
*
* @return array
*/
public static function get_selected_columns_keys(): array {
return [];
}
/**
* Check if the form has selected columns.
*
* @since 1.8.6
*
* @return bool
*/
public static function has_selected_columns(): bool {
return ! empty( static::get_selected_columns_keys() );
}
/**
* Get columns' keys for the columns which the user has not selected to be displayed.
*
* It returns draggable and non-draggable columns.
*
* @since 1.8.6
*
* @return array
*/
public static function get_not_selected_columns_keys(): array {
$selected = static::get_selected_columns_keys();
$all = array_keys( static::get_all() );
return array_diff( $all, $selected );
}
/**
* Validate column key.
*
* @since 1.8.6
*
* @param string|int $key Column key.
*
* @return bool
*/
public static function validate_column_key( $key ): bool {
return isset( static::get_all()[ $key ] );
}
}