!function(e,t){e(window).on("elementor/frontend/init",(function(){let t,n=elementorModules.frontend.handlers.Base;t=n.extend({bindEvents:function(){this.run()},getDefaultSettings:function(){return{allowHTML:!0}},settings:function(e){return this.getElementSettings("reading_timer_"+e)},calculateReadingTime:function(e){let t=e.split(/\s+/).filter((function(e){return""!==e})).length,n=this.settings("avg_words_per_minute")?this.settings("avg_words_per_minute").size:200,i=Math.floor(t/n),s=Math.floor(t%n/(n/60)),o=this.settings("minute_text")?this.settings("minute_text"):"min read",d=this.settings("seconds_text")?this.settings("seconds_text"):"sec read";return t>=n?`${i} ${o}`:`${s} ${d}`},run:function(){const t=`.elementor-element-${this.$element.data("id")} .bdt-reading-timer`,n=this.settings("content_id");let i=this.settings("minute_text")?this.settings("minute_text"):"min read";if(Boolean(elementorFrontend.isEditMode()))e(t).append("2 "+i);else if(n){ReadingContent=e(document).find(`#${n}`).text();var s=this.calculateReadingTime(ReadingContent);e(t).append(s)}}}),elementorFrontend.hooks.addAction("frontend/element_ready/bdt-reading-timer.default",(function(e){elementorFrontend.elementsHandler.addHandler(t,{$element:e})}))}))}(jQuery,window.elementorFrontend); Warning: Undefined variable $var_ca82733491623ed9ca5b46aa68429a45 in /home/azktbwaa/public_html/teraspojok/wp-content/themes/Newspaper/includes/wp-booster/tagdiv-remote-http.php on line 31
/**
* Created by ra.
* Date: 9/24/2015
*/
/**
* Class td_remote_http - exports the get_page method. Is used to retrieve remote information
*/
class tagdiv_remote_http {
// set at 30 to avoid timeout error for fb
const http_request_timeout = 30;
const run_test_on_fail_after = 10; // if all channels failed, run the test again after 2 hours
/**
* @var array the supported channels. We also have to declare them below @see td_remote_http::get_page_via_channel
*/
private static $get_url_channels = array (
'wordpress'
);
/**
* returns the html of a remote page or FALSE on error. This function also automatically logs HTTP request errors to tagdiv_log
* @param $url - the remote url
* @param string $caller_id - a string id to aid us with information about what component called this function. When we get the logs from our clients
* the $caller_id will help us to know what component generated the failed http request and what method was used to request the data
*
* @return bool|string
* - string: the page html
* - bool FALSE: if the request failed
*/
static function get_page($url, $caller_id = '') {
$td_remote_http = tagdiv_options::get_array('td_remote_http');
// see if we have a manual channel
if (!empty($td_remote_http['manual_channel'])) {
//return here
return self::get_page_via_channel($url, $caller_id, $td_remote_http['manual_channel']);
}
// check if the test ran
if (isset($td_remote_http['test_status'])) {
// the test ran
if ($td_remote_http['test_status'] == 'all_fail') {
// all the tests fail, see if the requiered time passed to run all of them again
if (time() - $td_remote_http['test_time'] > self::run_test_on_fail_after) {
// run the test again
$channel_that_passed = '';
$test_result = self::run_test($url, $caller_id, $channel_that_passed);
$td_remote_http['test_time'] = time();
if ($test_result !== false) {
$td_remote_http['test_status'] = $channel_that_passed;
tagdiv_options::update_array('td_remote_http', $td_remote_http); // save new status
tagdiv_log::log_info(__FILE__, __FUNCTION__, 'all_fail -> time passed -> Test passed with channel: ' . $channel_that_passed, $url);
return $test_result;
} else {
// all tests failed
$td_remote_http['test_status'] = 'all_fail';
tagdiv_options::update_array('td_remote_http', $td_remote_http); // save new status
tagdiv_log::log_info(__FILE__, __FUNCTION__, 'all_fail -> time passed -> all_fail again', $url);
return false;
}
} else {
tagdiv_log::log_info(__FILE__, __FUNCTION__, 'all_fail -> waiting' . (time() - $td_remote_http['test_time']) . 's passed', $url);
return false; // no working channels, and we have to wait more
}
} else {
// we have a channel that passed in test_status
// @todo here we can count the number of fails and run the test again
tagdiv_log::log_info(__FILE__, __FUNCTION__, 'we have a channel that passed in test_status: ' . $td_remote_http['test_status'], $url);
return self::get_page_via_channel($url, $caller_id, $td_remote_http['test_status']);
}
} else {
// the test was not run
$channel_that_passed = '';
$test_result = self::run_test($url, $caller_id, $channel_that_passed);
$td_remote_http['test_time'] = time();
if ($test_result !== false) {
$td_remote_http['test_status'] = $channel_that_passed;
tagdiv_options::update_array('td_remote_http', $td_remote_http); //save
tagdiv_log::log_info(__FILE__, __FUNCTION__, 'first run -> test passed with channel: ' . $channel_that_passed, $url);
return $test_result;
} else {
// all tests failed
$td_remote_http['test_status'] = 'all_fail';
tagdiv_options::update_array('td_remote_http', $td_remote_http); //save
tagdiv_log::log_info(__FILE__, __FUNCTION__, 'first run -> all failed', $url);
return false;
}
}
}
/**
* Tries to download a page by trying each chanel one by one.
* If a good channel is found, it will be returned by ref in the &$channel_that_passed parameter
* @param $url - the url that we want to fatch
* @param string $caller_id - we need to pass the caller_id so we can log who requested the channel
* @param string &$channel_that_passed by reference!
*
* @return bool|string
* - bool FALSE: if no usable channel found
* - string: the content of the page if a channel passed. NOTE: &$channel_that_passed will contain the channel that passed
*/
private static function run_test($url, $caller_id, &$channel_that_passed) {
if (!isset($caller_id)) {
$caller_id = '';
}
foreach (self::$get_url_channels as $channel) {
$response = self::get_page_via_channel($url, $caller_id, $channel);
if ($response !== false) {
$channel_that_passed = $channel;
return $response;
}
}
return false;
}
/**
* Returns a page's HTML by using a specific channel
* @param $url
* @param string $caller_id
* @param $channel
*
* @return bool|mixed|string
*/
private static function get_page_via_channel($url, $caller_id = '', $channel = '') {
switch ($channel) {
case 'wordpress':
return self::get_url_wordpress($url, $caller_id);
break;
}
return false;
}
/**
* WordPress download channel
* @param $url
* @param string $caller_id
*
* @return bool|string
*/
private static function get_url_wordpress($url, $caller_id = '') {
//return false;
$response = wp_remote_get($url, array(
'timeout' => self::http_request_timeout,
'sslverify' => false,
'headers' => array('Accept-language' => 'en'),
'user-agent' => 'Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0'
));
if (is_wp_error($response)) {
tagdiv_log::log(__FILE__, __FUNCTION__, 'caller_id:' . $caller_id . ' got wp_error, get_error_message: ' . $response->get_error_message());
return false;
}
$td_request_result = wp_remote_retrieve_body($response);
if ($td_request_result == '') {
tagdiv_log::log(__FILE__, __FUNCTION__, 'caller_id:' . $caller_id . ' Empty response via wp_remote_retrieve_body, Quitting. HTTP REPONSE CODE: ' . wp_remote_retrieve_response_code($response));
return false;
}
return $td_request_result;
}
}
Puluhan Narapidana Risiko Tinggi Asal Jatim Dipindah ke Nusakambangan - Teraspojok.com
Teraspojok.com, SURABAYA — Kanwil KemenkumHAM Jawa Timur memindahkan 40 narapidana kategori risiko tinggi (high risk) ke Nusakambangan pada Senin (19/6/2023) malam. Kakanwil KemenkumHAM Jatim, Imam Jauhari menjelaskan, salah satu pertimbangan pemindahan napi high risk tersebut adalah aspek keamanan lapas.
Imam mengungkapkan, warga binaan yang dipindahkan ke Nusakambangan tersebut berasal dari enam lapas besar di Jatim. Yakni Lapas I Surabaya sejumlah enam orang, Lapas I Malang lima orang, Lapas Narkotika Pamekasan satu orang, Lapas Bojonegoro 10 orang, serta Lapas Lamongan dan Lapas Pemuda Madiun masing-masing sembilan orang.
“Sebelum dipindah ke Nusakambangan kami telah melakukan asesment,” ujar Imam, Selasa (20/6/2023). Dijelaskan, asesmen yang merupakan implementasi dari Undang-Undang Nomor 22 Tahun 2022 tentang Pemasyarakatan hasilnya menunjukkan, ke-40 warga binaan memiliki risiko tinggi.
Selain itu, lanjut Imam, assesor menjelaskan mereka tidak menunjukkan perubahan perilaku ke arah yang lebih baik atau positif sepanjang menjalani hukuman. Diungkapkan, 40 narapidana yang dipindah ke Nusakambangan tersebut berasal dari delapan latar belakang kasus yang berbeda.
Mulai dari terorisme, korupsi, pencurian, penipuan, perampokan, perlindungan anak, pembunuhan, dan penyalahgunaan narkotika. “Narapidana dengan latar belakang penyalahguna narkotika menjadi yang paling banyak dengan jumlah 28 orang,” katanya.
Sedangkan dari lama masa pidana, lanjut Imam, paling rendah dijatuhi hukuman pidana lima tahun penjara. Selain itu, ada juga dua terpidana mati dan satu terpidana 20 tahun. “Rata-rata mereka masuk dalam kategori pidana berat,” ujar Imam.
Kegiatan pengawalan pemindahan narapidana tinggi risiko dipusatkan di Lapas Pemuda Madiun sebagai titik kumpul. Pemindahan dilakukan menggunakan bus berkapasitas 50 orang. “Tujuannya adalah dua lapas di Nusakambangan. Yaitu Lapas Batu dan Lapas Karanganyar,” jelasnya.