/* Plugin Name: Shortcoder Plugin URI: https://www.aakashweb.com/ Description: Shortcoder is a plugin which allows to create a custom shortcode and store HTML, JavaScript and other snippets in it. So if that shortcode is used in any post or pages, then the code stored in the shortcode get executed in that place. You can create a shortcode for Youtube videos, adsense ads, buttons and more. Author: Aakash Chakravarthy Version: 4.1.5 Author URI: https://www.aakashweb.com/ */ define( 'SC_VERSION', '4.1.5' ); define( 'SC_PATH', plugin_dir_path( __FILE__ ) ); // All have trailing slash define( 'SC_URL', plugin_dir_url( __FILE__ ) ); define( 'SC_ADMIN_URL', trailingslashit( plugin_dir_url( __FILE__ ) . 'admin' ) ); define( 'SC_BASE_NAME', plugin_basename( __FILE__ ) ); class Shortcoder{ public static function init(){ add_action( 'plugins_loaded', array( __class__, 'load_text_domain' ) ); register_activation_hook( __FILE__, array( __class__, 'on_activate' ) ); add_filter( 'the_content', array( __class__, 'wp_44_workaround' ), 5 ); // Register the shortcode add_shortcode( 'sc', array( __class__, 'execute_shortcode' ) ); // Include the required self::includes(); } public static function list_all(){ $shortcodes = get_option( 'shortcoder_data' ); return empty( $shortcodes ) ? array() : $shortcodes; } public static function includes(){ include_once( SC_PATH . 'includes/metadata.php' ); include_once( SC_PATH . 'includes/import.php' ); include_once( SC_PATH . 'admin/sc-admin.php' ); } public static function execute_shortcode( $atts, $content ) { $shortcodes = self::list_all(); if( empty( $shortcodes ) ){ return ''; } // Get the Shortcode name if(isset($atts[0])){ $sc_name = str_replace(array('"', "'", ":"), '', $atts[0]); unset($atts[0]); }else{ // Old version with "name" param support if(array_key_exists("name", $atts)){ $tVal = $atts['name']; if(array_key_exists($tVal, $shortcodes)){ $sc_name = $tVal; unset($atts['name']); } } } if(!isset($sc_name)){ return ''; } // Check whether shortcoder can execute if( self::check_conditions( $sc_name ) ){ $sc_content_final = ''; // If SC has parameters, then replace it if( !empty( $atts ) ){ $keys = array(); $values = array(); $i = 0; // Seperate key and value from atts foreach( $atts as $k => $v ){ if( $k !== 0 ){ $keys[$i] = "%%" . $k . "%%"; $values[$i] = $v; } $i++; } // Replace the params $sc_content = $shortcodes[ $sc_name ][ 'content' ]; $sc_content_rep1 = str_ireplace( $keys, $values, $sc_content ); $sc_content_final = preg_replace( '/%%[^%\s]+%%/', '', $sc_content_rep1 ); } else{ // If the SC has no params, then replace the %%vars%% $sc_content = $shortcodes[ $sc_name ][ 'content' ]; $sc_content_final = preg_replace( '/%%[^%\s]+%%/', '', $sc_content ); } $sc_content_final = self::replace_wp_params( $sc_content_final ); return '' . do_shortcode( $sc_content_final ) . ''; }else{ return ''; } } public static function check_conditions( $name ){ $shortcodes = self::list_all(); if( array_key_exists( $name, $shortcodes ) ){ $sc = wp_parse_args( $shortcodes[ $name ], self::defaults() ); $devices = $sc[ 'devices' ]; if( $devices == 'mobile_only' && !wp_is_mobile() ){ return false; } if( $devices == 'desktop_only' && wp_is_mobile() ){ return false; } if( $sc[ 'disabled' ] == 0 ){ if( current_user_can( 'level_10' ) && $sc[ 'hide_admin' ] == 1 ){ return false; }else{ return true; } }else{ return false; } }else{ return false; } } public static function replace_wp_params( $content ){ $params = self::wp_params_list(); $metadata = Shortcoder_Metadata::metadata(); $to_replace = array(); foreach( $params as $id => $name ){ if( array_key_exists( $id, $metadata ) ){ $placeholder = '$$' . $id . '$$'; $to_replace[ $placeholder ] = $metadata[ $id ]; } } $content = strtr( $content, $to_replace ); return $content; } public static function wp_params_list(){ return apply_filters( 'sc_mod_wp_params', array( 'url' => __( 'URL of the post/location', 'shortcoder' ), 'title' => __( 'Title of the post/location', 'shortcoder' ), 'short_url' => __( 'Short URL of the post/location', 'shortcoder' ), 'post_id' => __( 'Post ID', 'shortcoder' ), 'post_image' => __( 'Post featured image URL', 'shortcoder' ), 'post_excerpt' => __( 'Post excerpt', 'shortcoder' ), 'post_author' => __( 'Post author', 'shortcoder' ), 'post_date' => __( 'Post date', 'shortcoder' ), 'post_comments_count' => __( 'Post comments count', 'shortcoder' ), 'site_name' => __( 'Site title', 'shortcoder' ), 'site_description' => __( 'Site description', 'shortcoder' ), 'site_url' => __( 'Site URL', 'shortcoder' ), 'site_wpurl' => __( 'WordPress URL', 'shortcoder' ), 'site_charset' => __( 'Site character set', 'shortcoder' ), 'wp_version' => __( 'WordPress version', 'shortcoder' ), 'stylesheet_url' => __( 'Active theme\'s stylesheet URL', 'shortcoder' ), 'stylesheet_directory' => __( 'Active theme\'s directory', 'shortcoder' ), 'atom_url' => __( 'Atom feed URL', 'shortcoder' ), 'rss_url' => __( 'RSS 2.0 feed URL', 'shortcoder' ) )); } public static function on_activate(){ $shortcodes = self::list_all(); $sc_flags = get_option( 'shortcoder_flags' ); // Move the flag version fix to sc_flags option if( isset( $shortcodes[ '_version_fix' ] ) ){ unset( $shortcodes['_version_fix'] ); update_option( 'shortcoder_data', $shortcodes ); } $sc_flags[ 'version' ] = SC_VERSION; update_option( 'shortcoder_flags', $sc_flags ); } public static function defaults(){ return array( 'content' => '', 'disabled' => 0, 'hide_admin' => 0, 'devices' => 'all' ); } public static function can_edit_sc(){ return current_user_can( 'manage_options' ); } public static function wp_44_workaround( $content ){ return str_replace( '[sc:', '[sc name=', $content ); } public static function load_text_domain(){ load_plugin_textdomain( 'shortcoder', FALSE, basename( dirname( __FILE__ ) ) . '/languages/' ); } } Shortcoder::init(); ?> МЧС информирует | ГУО "Социально педагогический центр" - Part 4

Рубрика: МЧС информирует

Стартует акция «Безопасный Новый год!»

Чтобы предупредить ситуации с неприятными, а порой и трагическими последствиями в период Рождественских и Новогодних праздников, с 4 по 28 декабря в области пройдет республиканская акция МЧС «Безопасный Новый год!». Все мы любим праздники. И особенно здорово, когда они от начала и до конца проходят благополучно. В канун Рождества и Нового года у спасателей, как правило, начинается «жаркая» пора. Наблюдается резкое увеличение количества огненных ЧП и случаев травматизма людей из-за нарушения правил пожарной безопасности при подготовке к...

Читать далее...

Служба 101 сообщает. Анализ пожаров

За 11 месяцев 2017 года в Гродненском районе произошло 52 пожара, погиб 1 человек. 13 ноября в 15-24 произошел пожар в квартире двухквартирного жилого дома в д. Перстунь. Проживающий там мужчина частенько выпивал, собирались сомнительные кампании. Соседи были начеку, неоднократно спасали мужчину из огня, это уже не первый случай загорания дома. Вот и в этот раз, соседка почувствовала запах дыма и позвонила в «101». Как выяснилось, на момент пожара в доме находилось двое мужчин, один самостоятельно вышел,...

Читать далее...

Молодежь Гродненского района говорит курению – НЕТ!

Ни для кого не секрет, что в наше время много курильщиков среди молодежи. Не вызывают удивления молодые люди, спешащие на учебу  с сигаретой в руках. Всем известно, что от этой пагубной привычки трудно избавиться и втягиваясь, уже не замечаешь сколько, когда и где ты куришь. Когда человек закуривает и ложится отдохнуть  перед телевизором, очень часто расслабляясь, засыпает, сигарета выпадает из рук и … огонь делает свое коварное дело. Не всегда погибшие курильщики находились «под градусом». Чтобы обезопасить...

Читать далее...

Курить не только вредно, но и опасно!

Сегодня работники Гродненского районного отдела по чрезвычайным ситуациям провели завершающее мероприятие в рамках 2-го этапа акции «Не прожигай свою жизнь!». С 15 ноября спасатели о вреде курения и его возможных последствиях вели разговор в Скидельской городской больнице и организациях района. Работники РУАП «Гродненская овощная фабрика», ГУО «Квасовская СШ», а также ГЛУ «Гродненский лесхоз» узнали об обстановке с пожарами, сложившейся на территории района, области и проанализировали основные причины их возникновения. Спасатели разъяснили цели проходящей акции, рассказали о вреде...

Читать далее...

Призыв спасателей услышан

В Гродненском районе в рамках первого этапа акции «Не прожигай свою жизнь!» спасатели совместно с активистами белорусской молодежной общественной организации спасателей-пожарных из СШ № 1 г. Скиделя провели беседы с пассажирами в общественном транспорте, который курсировал по всему городу и «рассказывал о безопасности». В автобусе спасатели ознакомили скидельчан с проблемой, которая из года в год уносит сотни жизней: курение в постели. Граждан призвали отказаться от этой пагубной привычки. Ну а тем, кто этого сделать не хочет или...

Читать далее...

Горят автомобили

Автомобили горят каждый день. Неожиданно загореться может как старая отечественная, так и новая иномарка, во время движения и на парковках. Чтобы сгореть автомобилю достаточно и 5 минут. Причем, нередко это происходит на глазах самого автовладельца. В текущем году в Гродненской области произошло 71 загорание транспорта. 3 ноября в г. Гродно горела Газель. В результате пожара поврежден моторный отсек, салон, тентовое покрытие кузова. Предполагаемая причина пожара — поджог. 4 ноября поступило сообщение о пожаре легкового автомобиля Ситроен Ксантия...

Читать далее...

Пожары на балконах тушили и спасатели, и жильцы

В воскресенье 12 ноября почти одновременно произошло два пожара на балконах – в Гродно и Островце. В 16.00 расчёты огнеборцев направились на проспект Я.Купалы в областном центре. Жильцы  многоэтажки обеспокоились запахом дыма и обнаружили пожар на балконе квартиры на четвёртом этаже, в которой проживает пожилая пенсионерка. Дверь никто не открывал, а вскоре прибыли бойцы МЧС. К счастью, женщина самостоятельно вышла из помещения и  не стала жертвой возгорания. На ликвидацию пожара потребовалось около двадцати минут. Огнём повреждена балконная...

Читать далее...