Initial commit
This commit is contained in:
39
includes/class-ramais-frontend.php
Normal file
39
includes/class-ramais-frontend.php
Normal file
@@ -0,0 +1,39 @@
|
||||
<?php
|
||||
if (!defined('ABSPATH')) {
|
||||
exit;
|
||||
}
|
||||
|
||||
class Ramais_Frontend {
|
||||
private $database;
|
||||
|
||||
public function __construct($database) {
|
||||
$this->database = $database;
|
||||
$this->init_hooks();
|
||||
}
|
||||
|
||||
private function init_hooks() {
|
||||
add_shortcode('lista_ramais', array($this, 'render_ramais_list'));
|
||||
}
|
||||
|
||||
public function render_ramais_list($atts) {
|
||||
$atts = shortcode_atts(array(
|
||||
'per_page' => RAMAIS_TELEFONICOS_PER_PAGE
|
||||
), $atts);
|
||||
|
||||
$page = isset($_GET['ramais_page']) ? absint($_GET['ramais_page']) : 1;
|
||||
$filters = array(
|
||||
'search' => isset($_GET['ramais_search']) ? sanitize_text_field($_GET['ramais_search']) : '',
|
||||
'secretaria' => isset($_GET['ramais_secretaria']) ? sanitize_text_field($_GET['ramais_secretaria']) : '',
|
||||
'setor' => isset($_GET['ramais_setor']) ? sanitize_text_field($_GET['ramais_setor']) : ''
|
||||
);
|
||||
|
||||
$data = $this->database->get_filtered_ramais($filters, $page, $atts['per_page']);
|
||||
$ramais = $data['data'];
|
||||
$total_pages = $data['pages'];
|
||||
$current_page = $data['current_page'];
|
||||
|
||||
ob_start();
|
||||
include RAMAIS_TELEFONICOS_PLUGIN_DIR . 'templates/lista-ramais.php';
|
||||
return ob_get_clean();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user