Files
CHIEFSOFT\ameye da795223c9 new blog location
2024-09-14 13:52:14 -04:00

147 lines
5.0 KiB
PHP

<?php
namespace App\Controllers;
/**
* Class BaseController
*
* BaseController provides a convenient place for loading components
* and performing functions that are needed by all your controllers.
* Extend this class in any new controllers:
* class Home extends BaseController
*
* For security be sure to declare any new methods as protected or private.
*
* @package CodeIgniter
*/
use CodeIgniter\Controller;
use App\Services\WpContentsClient;
class BaseController extends Controller {
/**
* An array of helpers to be loaded automatically upon
* class instantiation. These helpers will be available
* to all other controllers that extend BaseController.
*
* @var array
*/
protected $helpers = [];
/**
* Constructor.
*/
public function initController(\CodeIgniter\HTTP\RequestInterface $request, \CodeIgniter\HTTP\ResponseInterface $response, \Psr\Log\LoggerInterface $logger) {
// Do Not Edit This Line
parent::initController($request, $response, $logger);
//--------------------------------------------------------------------
// Preload any models, libraries, etc, here.
//--------------------------------------------------------------------
// E.g.:
// $this->session = \Config\Services::session();
$this->session = \Config\Services::session();
}
protected function renderExtPage($page, $data) {
echo view('header');
echo view($page, $data);
echo view('footer');
}
protected function getBlogItems() {
$apiEndpointsConfig = config('ApiEndpoints');
$wpData = WpContentsClient::serviceGetBlogItems($apiEndpointsConfig->baseUrl);
$blog_post = array();
$blog_cnt =0;
foreach ($wpData as $item) {
$itemA = array(
'title' => $item->post_title,
'desc' => substr($item->post_content,0,400),
'link' => $item->guid,
'date' => date_format(date_create( $item->post_date),'Y-m-d'),
'image' => "https://blog.mermsemr.com/wp-content/uploads/".$item->meta_value,
);
if ($blog_cnt == 0){
$this->session->blogItem = $itemA ;
}
$blog_cnt++;
array_push($blog_post, $itemA);
}
// var_dump($blog_post);
return $blog_post;
}
protected function getBlogItems2() {
$apiEndpointsConfig = config('ApiEndpoints');
$wpData = WpContentsClient::serviceGetBlogItems($apiEndpointsConfig->baseUrl);
$blog_post = array();
$blog_cnt =0;
foreach ($wpData[0]->payload as $item) {
$itemA = array(
'title' => $item->post_title,
'desc' => substr($item->post_content,0,400),
'link' => $item->guid,
'date' => date_format(date_create( $item->post_date),'Y-m-d'),
'image' => "https://blog.mermsemr.com/wp-content/uploads/".$item->meta_value,
);
if ($blog_cnt == 0){
$this->session->blogItem = $itemA ;
}
$blog_cnt++;
array_push($blog_post, $itemA);
}
return $blog_post;
}
public function APIcall($method, $url, $data) {
// $curl = curl_init();
$curl = curl_init($url);
switch ($method) {
case "GET":
$params2 = '';
foreach($data as $key2=>$value2)
$params2 .= $key2.'='.$value2.'&';
$params2 = trim($params2, '&');
$url = $url.'?'.$params2;// add param to URL
log_message('critical', "API URL FINAL =>".$url );
//curl_setopt($curl, CURLOPT_FRESH_CONNECT, true);
//curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
break;
case "POST":
curl_setopt($curl, CURLOPT_POST, 1);
if ($data)
// curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
// curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));
break;
case "PUT":
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
if ($data)
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
break;
}
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
'APIKEY: RegisteredAPIkey',
'Content-Type: application/json',
));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
$result = curl_exec($curl);
if(!$result) {
echo("Connection failure!");
}
curl_close($curl);
return json_decode($result, true);
}
}