if (!defined('DUPLICATE_PAGE_PLUGIN_DIRNAME')) { define('DUPLICATE_PAGE_PLUGIN_DIRNAME', plugin_basename(dirname(__FILE__))); } if (!defined('DUPLICATE_PAGE_PLUGIN_VERSION')) { define('DUPLICATE_PAGE_PLUGIN_VERSION', '4.5.3'); } if (!class_exists('duplicate_page')): class duplicate_page { /* * AutoLoad Hooks */ public function __construct() { $opt = get_option('duplicate_page_options'); register_activation_hook(__FILE__, array(&$this, 'duplicate_page_install')); add_action('admin_menu', array(&$this, 'duplicate_page_options_page')); add_filter('plugin_action_links', array(&$this, 'duplicate_page_plugin_action_links'), 10, 2); add_action('admin_action_dt_duplicate_post_as_draft', array(&$this, 'dt_duplicate_post_as_draft')); add_filter('post_row_actions', array(&$this, 'dt_duplicate_post_link'), 10, 2); add_filter('page_row_actions', array(&$this, 'dt_duplicate_post_link'), 10, 2); if (isset($opt['duplicate_post_editor']) && $opt['duplicate_post_editor'] == 'gutenberg') { add_action('admin_head', array(&$this, 'duplicate_page_custom_button_guten')); } elseif(isset($opt['duplicate_post_editor']) && $opt['duplicate_post_editor'] == 'all'){ add_action('admin_head', array(&$this, 'duplicate_page_custom_button_guten')); add_action('post_submitbox_misc_actions', array(&$this, 'duplicate_page_custom_button_classic')); } else { add_action('post_submitbox_misc_actions', array(&$this, 'duplicate_page_custom_button_classic')); } add_action('wp_before_admin_bar_render', array(&$this, 'duplicate_page_admin_bar_link')); add_action('init', array(&$this, 'duplicate_page_load_text_domain')); add_action('wp_ajax_mk_dp_close_dp_help', array($this, 'mk_dp_close_dp_help')); } /* * Localization - 19-dec-2016 */ public function duplicate_page_load_text_domain() { load_plugin_textdomain('duplicate-page', false, DUPLICATE_PAGE_PLUGIN_DIRNAME.'/languages'); } /* * Activation Hook */ public function duplicate_page_install() { $defaultsettings = array( 'duplicate_post_status' => 'draft', 'duplicate_post_redirect' => 'to_list', 'duplicate_post_suffix' => '', 'duplicate_post_editor' => 'classic', ); $opt = get_option('duplicate_page_options'); if (!isset($opt['duplicate_post_status'])) { update_option('duplicate_page_options', $defaultsettings); } } /* Action Links */ public function duplicate_page_plugin_action_links($links, $file) { if ($file == plugin_basename(__FILE__)) { $duplicate_page_links = ''.__('Settings', 'duplicate-page').''; $duplicate_page_donate = ''.__('Donate', 'duplicate-page').''; array_unshift($links, $duplicate_page_donate); array_unshift($links, $duplicate_page_links); } return $links; } /* * Admin Menu */ public function duplicate_page_options_page() { add_options_page(__('Duplicate Page', 'duplicate-page'), __('Duplicate Page', 'duplicate-page'), 'manage_options', 'duplicate_page_settings', array(&$this, 'duplicate_page_settings')); } /* * Duplicate Page Admin Settings */ public function duplicate_page_settings() { if (current_user_can('manage_options')) { include 'inc/admin-settings.php'; } } /* * Main function */ public function dt_duplicate_post_as_draft() { /* * get Nonce value */ $nonce = sanitize_text_field($_REQUEST['nonce']); /* * get the original post id */ $post_id = (isset($_GET['post']) ? intval($_GET['post']) : intval($_POST['post'])); $post = get_post($post_id); $current_user_id = get_current_user_id(); if(wp_verify_nonce( $nonce, 'dt-duplicate-page-'.$post_id)) { if (current_user_can('manage_options') || current_user_can('edit_others_posts')) { $this->duplicate_edit_post($post_id); } else if (current_user_can('contributor') && $current_user_id == $post->post_author){ $this->duplicate_edit_post($post_id, 'pending'); } else if (current_user_can('edit_posts') && $current_user_id == $post->post_author ){ $this->duplicate_edit_post($post_id); } else { wp_die(__('Unauthorized Access.','duplicate-page')); } } else { wp_die(__('Security check issue, Please try again.','duplicate-page')); } } /** * Duplicate edit post */ public function duplicate_edit_post($post_id,$post_status_update='') { global $wpdb; $opt = get_option('duplicate_page_options'); $suffix = isset($opt['duplicate_post_suffix']) && !empty($opt['duplicate_post_suffix']) ? ' -- '.esc_attr($opt['duplicate_post_suffix']) : ''; if($post_status_update == ''){ $post_status = !empty($opt['duplicate_post_status']) ? esc_attr($opt['duplicate_post_status']) : 'draft'; }else{ $post_status = $post_status_update; } $redirectit = !empty($opt['duplicate_post_redirect']) ? esc_attr($opt['duplicate_post_redirect']) : 'to_list'; if (!(isset($_GET['post']) || isset($_POST['post']) || (isset($_REQUEST['action']) && 'dt_duplicate_post_as_draft' == sanitize_text_field($_REQUEST['action'])))) { wp_die(__('No post to duplicate has been supplied!','duplicate-page')); } $returnpage = ''; /* * and all the original post data then */ $post = get_post($post_id); /* * if you don't want current user to be the new post author, * then change next couple of lines to this: $new_post_author = $post->post_author; */ $current_user = wp_get_current_user(); $new_post_author = $current_user->ID; /* * if post data exists, create the post duplicate */ if (isset($post) && $post != null) { /* * new post data array */ $args = array( 'comment_status' => $post->comment_status, 'ping_status' => $post->ping_status, 'post_author' => $new_post_author, 'post_content' => (isset($opt['duplicate_post_editor']) && $opt['duplicate_post_editor'] == 'gutenberg') ? wp_slash($post->post_content) : $post->post_content, 'post_excerpt' => $post->post_excerpt, 'post_parent' => $post->post_parent, 'post_password' => $post->post_password, 'post_status' => $post_status, 'post_title' => $post->post_title.$suffix, 'post_type' => $post->post_type, 'to_ping' => $post->to_ping, 'menu_order' => $post->menu_order, ); /* * insert the post by wp_insert_post() function */ $new_post_id = wp_insert_post($args); if(is_wp_error($new_post_id)){ wp_die(__($new_post_id->get_error_message(),'duplicate-page')); } /* * get all current post terms ad set them to the new post draft */ $taxonomies = array_map('sanitize_text_field',get_object_taxonomies($post->post_type)); if (!empty($taxonomies) && is_array($taxonomies)): foreach ($taxonomies as $taxonomy) { $post_terms = wp_get_object_terms($post_id, $taxonomy, array('fields' => 'slugs')); wp_set_object_terms($new_post_id, $post_terms, $taxonomy, false); } endif; /* * duplicate all post meta */ $post_meta_keys = get_post_custom_keys( $post_id ); if(!empty($post_meta_keys)){ foreach ( $post_meta_keys as $meta_key ) { $meta_values = get_post_custom_values( $meta_key, $post_id ); foreach ( $meta_values as $meta_value ) { $meta_value = maybe_unserialize( $meta_value ); update_post_meta( $new_post_id, $meta_key, wp_slash( $meta_value ) ); } } } /** * Elementor compatibility fixes */ if(is_plugin_active( 'elementor/elementor.php' )){ $css = Elementor\Core\Files\CSS\Post::create( $new_post_id ); $css->update(); } /* * finally, redirecting to your choice */ if ($post->post_type != 'post'){ $returnpage = '?post_type='.$post->post_type; } if (!empty($redirectit) && $redirectit == 'to_list'){ wp_redirect(esc_url_raw(admin_url('edit.php'.$returnpage))); } elseif (!empty($redirectit) && $redirectit == 'to_page'){ wp_redirect(esc_url_raw(admin_url('post.php?action=edit&post='.$new_post_id))); } else { wp_redirect(esc_url_raw(admin_url('edit.php'.$returnpage))); } exit; } else { wp_die(__('Error! Post creation failed, could not find original post: ','duplicate-page').$post_id); } } /* * Add the duplicate link to action list for post_row_actions */ public function dt_duplicate_post_link($actions, $post) { // Skip acf-field-group post type if($post->post_type == 'acf-field-group'){ return $actions; } $opt = get_option('duplicate_page_options'); $post_status = !empty($opt['duplicate_post_status']) ? esc_attr($opt['duplicate_post_status']) : 'draft'; if (current_user_can('edit_posts')) { $actions['duplicate'] = isset($post) ? ''.__('Duplicate This', 'duplicate-page').'' : ''; } return $actions; } /* * Add the duplicate link to edit screen - classic editor */ public function duplicate_page_custom_button_classic() { global $post; $opt = get_option('duplicate_page_options'); $post_status = !empty($opt['duplicate_post_status']) ? esc_attr($opt['duplicate_post_status']) : 'draft'; $html = '
Kyslý dážď vzniká ako dôsledok silného znečistenia ovzdušia. Nečistoty sa absorbujú vzdušnou vlhkosťou a prostredníctvom zrážok sa vo vode dostávajú späť na zem.
Dažďová voda, aj keď nie je znečistená, je čiastočne kyslá. To znamená, že jej pH faktor má hodnotu nižšiu ako 7.
Bežná dažďová voda má pH faktor 5,0 až 5,6. Je mierne kyslá, pretože vo vzduchu sa nachádza oxid uhličitý, ktorý sa absorbuje vzdušnou vlhkosťou. Za kyslý dážď sa považuje dažďová voda s pH faktorom od 2,0 do 5,0.
Kyslé dažde sú spôsobené tepelnými elektrárňami, metalurgiou, chemickým priemyslom a dopravou. Oxidy síry a dusíka, ktoré vypúšťajú tieto zdroje sa zlučujú s vodnou parou, v dôsledku čoho vzniká kyselina sírová a dusičná. Kyslé dažde sa často objavujú v značnej vzdialenosti od zdrojov znečistenia. Oxidy síry a dusíka vypúšťané cez vysoké komíny unáša vietor do ovzdušia, ktoré sa dostávajú na zem a do vodných zdrojov v podobe kyslých zrážok.
Dnes napríklad len vo Švédsku zo 100 000 jazier je 20 000 mŕtvych – bez života. V Novom Škótsku oficiálne registrujú 9 kyslých riek, z ktorých úplne vymizli kedysi bežne rozšírené lososy. V severozápadnej časti USA a Kanady asi 8 % všetkých jazier je kyslých.
Najkyslejší dážď, ktorý bol vôbec zaznamenaný, mal pH 1,5 (desaťkrát kyslejší než ocot) a spadol pri búrke roku l980 vo Wheelingu v USA. Nie všetky lokality reagujú na kyslý dážď rovnako. Mnoho závisí od chemického zloženia pôdy a vody. Niektoré miesta znesú veľké dávky kyslého dažďa bez výraznej zmeny celkového pH prostredia, ide o lokality s alkalickou pôdou. Kyslé dažde poškodzujú budovy, umelecké a kultúrne pamiatky.
Kyslé aerosoly škodlivo pôsobia aj na človeka. Dostávajú sa do dýchacích ciest, dráždia sliznice a tak uľahčujú vstup infekciám do pľúc.
V dôsledku globálneho oteplenia stúpla hladina svetových oceánov o 10 až 15 cm, zatiaľ čo hladiny jazier a riek sa znižujú. Pevninské ľadovce a vrcholky horských štítov s večným ľadom sa začnú rýchlejšie topiť a v dôsledku toho môže morská hladina v nasledujúcich 100 rokoch stúpnuť o 50 až 200 cm. Je to dostatok na to, aby boli zaplavené niektoré oblasti pevniny.
Napríklad pod vodou by zmizla veľká časť Holandska a zatopených by bolo takmer 15 % územia Bangladéžu, čím by o strechu nad hlavou by prišlo približne 200 miliónov obyvateľov jedného z najchudobnejších štátov sveta.
Je osmotický filter to najlepšie riešenie pre úpravu mestskej, alebo studničnej vody ? Ako filtruje vodu? Čo dokáže filtrovať ? Ako filtruje vodu ? Čo je to reverzná osmóza? Je naozaj voda po filtrácii bez minerálov?
Vybrali ste si filtráciu alebo úpravu vody? Našli sme pre vás riešenie ako upraviť vašu mestskú, alebo studničnú vodu? To čo sme navrhli, alebo ste si vybrali vám aj nainštalujeme. Je pripravených 8 technikov čo denne inštalujú, servisujú technológie na úpravu vody.
Voda v našich domácnostiach sa používa na veľa účelov, ako na pitie, varenie, kúpanie, pranie, kúrenie. Ale mať dnes kvalitnú vodu je v dnešnej dobe nie otázkou šance, ale voľby. Každý z nás sa môže rozhodnúť akú kvalitnú vodu bude mať na dennodenné používanie.
Ak vo vyhľadávači zadáte, aby vám našlo zmäkčovač vody, nie vždy sa Vám naozaj ukážu skutočné zmäkčovače vody.